/* FAQ (lp/faq/**) 専用の CV スタイル。
   FAQ は他の LP ページと違い style.css を読まない自己完結ページなので、フッター CV
   (sticky footer CTA = .movie-detail-fixed-cta) の描画に必要な規則だけをここに切り出して
   10 ページから読ませる (インラインで 10 箇所に複製すると二重管理が 10 倍になるため)。
   中身は lp/style.css の該当ブロックをそのまま持ってきたもの (2026-08-23)。
   ⚠️ style.css 側の .movie-detail-fixed-cta* / .pw-fixedcv-page / 下の変数を変えたら
   このファイルも同時に直すこと。 */

/* style.css の :root から、下の規則が参照する変数だけを再定義 (FAQ の inline :root には無い)。 */
:root {
  --cv-btn-shadow: 0 4px 0 #be4559, 0 8px 16px rgba(0, 0, 0, 0.2);
  --cv-btn-shadow-sp: 0 2px 0 #be4559, 0 6px 10px rgba(0, 0, 0, 0.2);
  --font-sans:
    "Helvetica Neue", Arial,
    "Hiragino Kaku Gothic ProN", "Hiragino Sans",
    "Yu Gothic", YuGothic,
    "Noto Sans CJK JP", "Noto Sans JP",
    Meiryo, sans-serif;
}

/* 【削除済】狭幅時の会員アイコン段階的非表示を **固定 breakpoint** (max-width 430/390/350/320) で
   行う dead ブロックがここにあったが撤去した。狭幅フィットは固定 px ではなく <pw-header> の実測
   `_fit` (getBoundingClientRect ベース、優先度順に落とす) が唯一の権威 (SPEC §2「レスポンシブ
   実測フィット契約」)。固定 breakpoint は「余裕があるのにチケットが消える」誤検知を生むため復活禁止。 */

/* member 時はページ埋め込み CV / voice 固定 CTA を全ページ非表示にする
   (SPEC §2「認証状態による LP ページ内 CV の出し分け」: ログイン済ユーザーに過剰な signup CV を出さない)。 */
.lp-auth-member .hero-btn,
.lp-auth-member .pgw-cv-button,
.lp-auth-member .fast-section-cta,
.lp-auth-member .movie-detail-spec-cv,
.lp-auth-member .pgw-cv-wrap,
.lp-auth-member .movie-detail-fixed-cta,
/* .popular-movies__footer は guest 向け登録 CV (.popular-movies__cv, from_signup=1) を含む
   promo footer なのに member 非表示リストから漏れていた (Fable5 発見)。footer ごと非表示にする。
   active 会員は下の swapActiveBanners が赤帯へ **要素置換** するため、置換後要素は
   .popular-movies__footer class を持たず、この display:none の影響を受けない (= 赤帯は表示される)。
   none/prepaid の会員は置換されず footer 非表示 = 他 CV と整合。 */
.lp-auth-member .popular-movies__footer { display: none !important; }

/* ── LP トップの画面下固定 CTA (guest 向け) ─────────────────────────────────────
   movie 詳細 / voice と同じ .movie-detail-fixed-cta markup/style を index.html に置く。
   index.html は page CSS (voice-page.css / movie-detail-page.css) を読まないため、共有 style.css
   に base style をここへ複製する (値は voice-page.css と一致)。voice/movie 詳細は後読み page CSS が
   同値で上書きするので無害。member は上の .lp-auth-member .movie-detail-fixed-cta{display:none}

で非表示。 */
.movie-detail-fixed-cta {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  z-index: 150;
  width: 90%;
  padding: 14px 16px;
  background-color: var(--cta-pink, #ed4e71);
  box-sizing: border-box;
  border-radius: 67px;
  box-shadow: var(--cv-btn-shadow);
}

@media (max-width: 767px) {
  .movie-detail-fixed-cta {
    border-radius: 38px;
    box-shadow: var(--cv-btn-shadow-sp);
  }
}

@media (min-width: 769px) {
  .movie-detail-fixed-cta {
    width: 500px;
  }
}

.movie-detail-fixed-cta__link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
  font-family: var(--font-sans);
}

.movie-detail-fixed-cta__link:active {
  filter: brightness(0.96);
}

.movie-detail-fixed-cta__link:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
  border-radius: 4px;
}

.movie-detail-fixed-cta__line1 {
  font-size: clamp(15px, 4.1vw, 18px);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.02em;
}

.movie-detail-fixed-cta__line2 {
  font-size: clamp(12px, 3.2vw, 14px);
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.02em;
  opacity: 0.98;
}

/* CV ボタン: 背景ピンク → teal、下辺のピンク影(#be4559) → teal-dark(#039aa5)。 */
.pw-topcv-t .hero-btn__inner,
.pw-topcv-t .fast-section-cta__btn,
.pw-topcv-t .pgw-cv-button,
.pw-topcv-t .popular-movies__cv,
.pw-topcv-t .movie-detail-fixed-cta {
  background: #00afbf !important;
  background-color: #00afbf !important;
  box-shadow: 0 4px 0 #039aa5, 0 8px 16px rgba(0, 0, 0, 0.2) !important;
}

/* treatment: LPトップの固定CTA(.lp-top-fixed-cta = index 専用クラス)を非表示。
   voice / 動画詳細の .movie-detail-fixed-cta は index 専用クラスが付かないので影響なし。 */
.pw-topcv-t .lp-top-fixed-cta {
  display: none !important;
}
