/* 7th 最終章ティザー用の追加スタイル（styles.css は 6th のコピー。ここは差分だけ） */
.s-fv__logo--plain { margin: 0 0 0 -3%; }
.s-fv__logo--plain img { width: 100%; height: auto; }
.s-fv__catch { margin: 3.5vw 0 0; color: #fff; font-weight: 700; line-height: 1.5; letter-spacing: .06em; }
.s-fv__catch-ttl { font-size: 4.8rem; line-height: 1.2; color: var(--c-yellow); text-shadow: 3px 4px 0 var(--c-navy); margin: 0 0 .5em; }
.s-fv__parts { display: grid; grid-template-columns: auto 1fr; gap: .7em 1em; align-items: center; margin: 0; font-size: 2rem; }
.s-fv__parts dt { background: var(--c-red); color: #fff; font-size: .8em; line-height: 1; padding: .35em .7em .4em; letter-spacing: .1em; }
.s-fv__parts dd { margin: 0; }
@media (max-width: 1279px) { .s-fv__catch-ttl { font-size: 3.8rem; } .s-fv__parts { font-size: 1.7rem; } }
@media (max-width: 959px) { .s-fv__logo--plain { display: block; margin: 0; } .s-fv__catch { margin: 6vw 0 0; } .s-fv__catch-ttl { font-size: 8vw; text-align: center; } .s-fv__parts { width: fit-content; margin: 0 auto; font-size: 4vw; } }
.c-sec--nopic .c-sec__content { margin-top: 0; padding-top: 120px; }
@media (max-width: 959px) { .c-sec--nopic .c-sec__content { padding-top: 15vw; } }
.s-trilogy { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px 4%; }
@media (max-width: 959px) { .s-trilogy { display: block; } .s-trilogy > div + div { margin-top: 10vw; } }
.s-trilogy > div { border: 2px solid var(--c-red); padding: 40px 30px; background: rgba(0, 6, 41, .6); }
.s-trilogy h3 { font-family: futura-pt-bold, "Noto Sans JP", sans-serif; font-weight: 700; font-style: italic; font-size: 3.2rem; line-height: 1; color: var(--c-yellow); text-shadow: 2px 3px 0 var(--c-navy); margin: 0 0 18px; text-align: center; }
.s-trilogy h3 small { display: block; font-style: normal; font-size: 1.4rem; letter-spacing: .2em; color: #fff; text-shadow: none; margin-bottom: 10px; }
.s-trilogy p.s-trilogy__term { font-size: 2rem; font-weight: 700; text-align: center; margin: 0 0 20px; }
.s-trilogy p.s-trilogy__term strong { font-size: 1.4em; color: #fff; }
.s-trilogy p.s-trilogy__text { font-size: 1.5rem; line-height: 1.9; }
.s-sns { max-width: 560px; margin: 0 auto; text-align: center; }
.s-sns__btn { display: block; margin: 30px 0 0; padding: 14px 40px; border: 2px solid #fff; border-radius: 40px; color: #fff; font-weight: 700; font-size: 1.6rem; letter-spacing: .1em; }
.s-sns__btn:hover { background: #fff; color: var(--c-black); }

/* FV: 仮 KV では desc 側の高さが足りず白地が見えるため、FV 全体を紺で埋める */
.s-fv { background: var(--c-black); }
.s-fv__desc { align-self: stretch; }

/* 2026-09-24 FAB 様修正: MENU バー hover は白地＋紺（6th 以前はピンクの帯） */
@media (hover: hover) {
  .l-drawer__btn:before { background: #fff; }
  .l-drawer__btn:hover .l-drawer__btn-mark path { fill: var(--c-navy); }
  .l-drawer__btn:hover .l-drawer__btn-menu span,
  .l-drawer__btn:hover .l-drawer__btn-close span { color: var(--c-navy); }
}
/* ドロワーとフッターの公演ロゴは白（共通 logo.svg は黒） */
.l-drawer__logo img, .l-footer__logo img { filter: brightness(0) invert(1); }

/* SNS ボタン: SP で TikTok の ID が折り返さないよう詰める */
@media (max-width: 959px) { .s-sns__btn { padding: 14px 10px; font-size: 1.3rem; letter-spacing: .04em; } }
