/* ===== 劇場型"裏"コーチング CENTER ===== 本体トークン継承＋劇場ドラマ */
:root{
  --c-black:#14110f; --c-ink-dk:#1b1b27; --c-stage:#0e0d14;
  --c-red:#c0392b; --c-red-soft:#e0574a; --c-blue:#4a6fb0;
  --c-gold:#a98c4f; --c-gold-lt:#cbb583;
}

/* ===== HERO ===== */
.c-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:#0a0a0f}
.c-hero-media{position:absolute;inset:0;z-index:0}
.c-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.c-hero::after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 70% 60% at 50% 42%,rgba(10,10,15,.15) 0%,rgba(10,10,15,.72) 70%,rgba(10,10,15,.95) 100%)}
.c-hero-inner{position:relative;z-index:2;color:#fff;padding:0 28px;max-width:840px}
.c-hero-eyebrow{font-family:"Shippori Mincho",serif;font-size:clamp(.9rem,2.2vw,1.15rem);letter-spacing:.42em;color:var(--c-gold-lt);margin-bottom:18px;padding-left:.42em}
.c-hero-title{font-family:"Cormorant Garamond",serif;font-weight:600;font-size:clamp(4.2rem,17vw,9rem);line-height:1;letter-spacing:.08em;margin-bottom:26px;text-shadow:0 4px 40px rgba(0,0,0,.6)}
.c-hero-sub{font-family:"Shippori Mincho",serif;font-size:clamp(1.05rem,2.4vw,1.4rem);line-height:2.1;margin-bottom:40px;color:#f1efe6;font-weight:500}
.c-scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.6);font-family:"Cormorant Garamond",serif;font-size:.78rem;letter-spacing:.3em;writing-mode:vertical-rl;animation:cfloat 2.2s ease-in-out infinite}
@keyframes cfloat{0%,100%{transform:translateX(-50%) translateY(0);opacity:.6}50%{transform:translateX(-50%) translateY(8px);opacity:1}}

/* ===== ボタン ===== */
/* 日本語の禁則処理：助詞や記号が行頭/行末で不自然に折れないように */
.center-page{line-break:strict;word-break:normal;overflow-wrap:break-word}
.center-page h1,.center-page h2,.center-page h3,.center-page h4,.c-btn,.c-hero-sub,.c-spot-text,.c-pill-card h3,.c-redcarpet-cap,.c-offer-text{line-break:strict}
.c-btn{display:inline-block;text-align:center;text-decoration:none;font-family:"Shippori Mincho",serif;font-weight:700;font-size:1rem;letter-spacing:.06em;padding:16px 38px;border-radius:44px;transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer;white-space:nowrap}
.c-btn-gold{background:linear-gradient(135deg,var(--c-gold-lt),var(--c-gold));color:#fff;box-shadow:0 12px 30px rgba(169,140,79,.4)}
.c-btn-gold:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(169,140,79,.55)}
.c-btn-outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6)}
.c-btn-outline:hover{background:rgba(255,255,255,.12);transform:translateY(-3px)}

/* 共通 */
.center-page .label.center,.center-page .label.gold-light{text-align:center}
.center-page .title.center,.title.center{text-align:center}
.c-lead-mincho{font-family:"Shippori Mincho",serif;font-size:1.18rem;color:var(--green);line-height:2;text-align:center;margin-bottom:24px}
.c-lead-mincho strong{color:var(--c-gold);font-weight:700}
.c-body{color:var(--ink-soft);font-size:1rem;line-height:2.15}
.c-body strong{color:var(--green);font-weight:700}
.c-body.center-text,.center-text{text-align:center}

/* ===== 嘆き共感 ===== */
.c-pain{background:var(--cream)}
.c-pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
.c-pain-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-align:center;transition:transform .25s,box-shadow .25s}
.c-pain-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(28,58,44,.12)}
.c-pain-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.c-pain-card h3{font-family:"Shippori Mincho",serif;font-size:1.12rem;color:var(--green);margin:20px 22px 10px}
.c-pain-card p{font-size:.9rem;color:var(--ink-soft);line-height:1.85;margin:0 22px 24px}
.c-pain-lead{font-family:"Shippori Mincho",serif;font-size:1.1rem;color:var(--green);line-height:2.1;text-align:center;margin-top:46px}
.c-pain-lead strong{color:var(--c-red);font-weight:700}

/* ===== 魂の声 ===== */
.c-why-soul{background:#fff}

/* ===== スポットライト（黒背景） ===== */
.c-spotlight{position:relative;background-size:cover;background-position:center;color:#fff;text-align:center}
.c-spotlight::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 50% 35%,rgba(14,13,20,.4),rgba(14,13,20,.9))}
.c-spotlight>.wrap{position:relative;z-index:2}
.c-spot-title{font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(1.7rem,4.4vw,2.7rem);line-height:1.6;margin-bottom:34px;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.c-spot-text{font-family:"Shippori Mincho",serif;font-size:clamp(1rem,2vw,1.16rem);line-height:2.1;margin-bottom:18px;color:#ece9df}
.c-spot-text.strong{color:var(--c-gold-lt);font-weight:700;margin-top:30px;font-size:clamp(1.05rem,2.2vw,1.3rem)}

/* ===== CENTERとは：3カード ===== */
.c-about{background:var(--cream)}
.c-three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}
.c-three-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:0 8px 26px rgba(28,58,44,.06)}
.c-three-card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.c-three-card h3{font-family:"Shippori Mincho",serif;font-size:1.18rem;color:var(--green);line-height:1.6;margin:24px 26px 12px;border-bottom:1px solid var(--line);padding-bottom:14px}
.c-three-card h3 span{display:block;font-size:.86rem;color:var(--c-gold);font-weight:500;margin-top:6px}
.c-three-card p{font-size:.92rem;color:var(--ink-soft);line-height:1.95;margin:0 26px 28px}

/* ===== セッションの流れ：4幕（黒ステージ） ===== */
.c-flow{background:var(--c-ink-dk);color:#fff}
.c-flow .title.light{color:#fff}
.c-flow .label.gold-light{color:var(--c-gold-lt)}
.c-flow .rule{background:var(--c-gold)}
.c-flow-meta{font-family:"Shippori Mincho",serif;color:var(--c-gold-lt);font-size:1.02rem;letter-spacing:.04em}
.c-acts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:50px}
.c-act{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(203,181,131,.28);border-radius:16px;padding:38px 34px;transition:border-color .25s,background .25s}
.c-act:hover{border-color:var(--c-gold);background:rgba(255,255,255,.06)}
.c-act-no{display:inline-block;font-family:"Shippori Mincho",serif;font-size:1rem;letter-spacing:.1em;color:var(--c-gold-lt);margin-bottom:14px}
.c-act-no b{font-family:"Cormorant Garamond",serif;font-size:2.2rem;font-style:italic;font-weight:600;color:var(--c-gold);vertical-align:-4px;margin:0 2px}
.c-act h3{font-family:"Shippori Mincho",serif;font-size:1.3rem;color:#fff;margin-bottom:16px;line-height:1.5}
.c-act p{font-size:.94rem;color:rgba(255,255,255,.8);line-height:1.95;margin-bottom:14px}
.c-act-key{font-family:"Shippori Mincho",serif;font-size:.96rem!important;color:var(--c-gold-lt)!important;font-weight:600;border-top:1px dashed rgba(203,181,131,.3);padding-top:14px;margin-top:6px;margin-bottom:0!important}

/* ===== 受けると何が起こる ===== */
.c-result{background:#fff}
.c-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:46px}
.c-result-card{text-align:center}
.c-result-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;box-shadow:0 10px 28px rgba(28,58,44,.12);margin-bottom:18px}
.c-result-card h4{font-family:"Shippori Mincho",serif;font-size:1.08rem;color:var(--green);margin-bottom:10px}
.c-result-card p{font-size:.9rem;color:var(--ink-soft);line-height:1.85;padding:0 6px}
.c-result-note{font-family:"Shippori Mincho",serif;font-size:1.04rem;color:var(--green);line-height:2.1;margin-top:50px;max-width:760px;margin-left:auto;margin-right:auto}
.c-result-note strong{color:var(--c-gold);font-size:1.18rem}

/* ===== 赤青ピル ===== */
.c-pill{background:var(--c-stage);color:#fff}
.c-pill-title{font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(1.8rem,4.6vw,2.6rem);text-align:center;margin-bottom:18px}
.c-pill-lead{text-align:center;font-family:"Shippori Mincho",serif;font-size:1.05rem;line-height:2;color:rgba(255,255,255,.82);margin-bottom:8px}
.c-pill-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:42px}
.c-pill-card{border-radius:18px;padding:44px 38px;text-align:center;position:relative;overflow:hidden}
.c-pill-red{background:linear-gradient(160deg,rgba(192,57,43,.22),rgba(192,57,43,.06));border:1.5px solid rgba(224,87,74,.5)}
.c-pill-blue{background:linear-gradient(160deg,rgba(74,111,176,.2),rgba(74,111,176,.05));border:1.5px solid rgba(74,111,176,.45)}
.c-pill-label{display:inline-block;font-family:"Shippori Mincho",serif;font-weight:700;font-size:.9rem;letter-spacing:.1em;padding:6px 20px;border-radius:30px;margin-bottom:20px}
.c-pill-red .c-pill-label{background:var(--c-red);color:#fff}
.c-pill-blue .c-pill-label{background:var(--c-blue);color:#fff}
.c-pill-card h3{font-family:"Shippori Mincho",serif;font-size:1.4rem;color:#fff;margin-bottom:16px}
.c-pill-card p{font-size:.96rem;color:rgba(255,255,255,.82);line-height:2}
.c-pill-foot{text-align:center;font-family:"Shippori Mincho",serif;font-size:1.1rem;line-height:2.1;margin-top:42px;color:#fff}
.c-pill-foot .red{color:var(--c-red-soft);font-weight:700}

/* ===== さゆりプロフィール ===== */
.c-sayuri{background:var(--cream)}
.c-sayuri-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:50px;align-items:center}
.c-sayuri-photo img{width:100%;border-radius:16px;box-shadow:0 16px 38px rgba(28,58,44,.18)}
.c-sayuri-body p{color:var(--ink-soft);font-size:.98rem;line-height:2.1;margin-bottom:16px}
.c-sayuri-body strong{color:var(--green);font-weight:700}
.c-sayuri-shout{background:var(--c-ink-dk);color:#fff;text-align:center;padding:64px 28px;margin:72px 0}
.c-sayuri-shout .big{font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(1.7rem,5vw,2.6rem);color:#fff;letter-spacing:.04em;margin-bottom:14px}
.c-sayuri-shout .small{font-family:"Shippori Mincho",serif;font-size:1.05rem;color:var(--c-gold-lt)}
.c-sayuri-story p{color:var(--ink-soft);font-size:.99rem;line-height:2.15;margin-bottom:18px}
.c-sayuri-story strong{color:var(--green);font-weight:700}
.c-sayuri-list{list-style:none;margin:24px 0;padding:26px 30px;background:#fff;border-left:3px solid var(--c-gold);border-radius:8px}
.c-sayuri-list li{position:relative;padding-left:22px;font-size:.96rem;color:var(--ink-soft);line-height:1.9;margin-bottom:8px}
.c-sayuri-list li::before{content:"●";position:absolute;left:0;color:var(--c-gold);font-size:.6rem;top:.5em}
.c-sayuri-q{font-family:"Shippori Mincho",serif!important;font-size:1.4rem!important;font-weight:700;color:var(--c-red)!important;line-height:1.8;text-align:center;margin:34px 0!important}

/* ===== お客様の声 ===== */
.c-voice{background:#fff}
.c-voice-card{background:var(--cream);border-radius:18px;padding:42px 44px;border:1px solid var(--line)}
.c-voice-card + .c-voice-card{margin-top:30px}
.c-voice-head{display:flex;align-items:center;gap:24px;margin-bottom:26px}
.c-voice-head img{width:120px;height:120px;object-fit:cover;border-radius:50%;box-shadow:0 8px 22px rgba(28,58,44,.18);flex-shrink:0}
.c-voice-ini{flex-shrink:0;width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Cormorant Garamond",serif;font-size:2.1rem;font-weight:600;letter-spacing:.04em;color:#fff;background:linear-gradient(140deg,var(--c-gold-lt),var(--c-gold));box-shadow:0 8px 22px rgba(169,140,79,.32)}
.c-voice-head h3{font-family:"Shippori Mincho",serif;font-size:1.3rem;color:var(--green);line-height:1.55;margin-bottom:8px}
.c-voice-name{font-size:.92rem;color:var(--c-gold);font-weight:700}
.c-voice-theme{font-size:.78rem;color:var(--ink-soft);margin-top:5px;letter-spacing:.02em}
.c-voice-card p{font-size:.96rem;color:var(--ink-soft);line-height:2.1;margin-bottom:16px}
.c-voice-card strong{color:var(--green);font-weight:700}
.c-voice-big{font-family:"Shippori Mincho",serif!important;font-size:1.5rem!important;font-weight:800;color:var(--c-gold)!important;text-align:center;margin:24px 0!important}
.c-voice-soon{text-align:center;color:var(--ink-soft);font-size:.9rem;margin-top:26px;font-style:italic}

/* ===== 募集（クロージング） ===== */
.c-offer{position:relative;color:#fff;overflow:hidden}
.c-offer-media{position:absolute;inset:0;z-index:0}
.c-offer-media img{width:100%;height:100%;object-fit:cover}
.c-offer-overlay{position:relative;z-index:2;background:linear-gradient(180deg,rgba(14,13,20,.82),rgba(14,13,20,.92));padding:100px 0}
.c-offer-eyebrow{font-family:"Shippori Mincho",serif;letter-spacing:.36em;font-size:1rem;color:var(--c-gold-lt);margin-bottom:14px;display:block;padding-left:.36em}
.c-offer-title{font-family:"Cormorant Garamond",serif;font-weight:600;font-size:clamp(3.4rem,12vw,6rem);line-height:1;letter-spacing:.08em;margin-bottom:22px}
.c-offer-recruit{display:inline-block;font-family:"Shippori Mincho",serif;font-weight:700;font-size:1.06rem;letter-spacing:.08em;color:#fff;border:1px solid var(--c-gold);border-radius:40px;padding:9px 30px;margin-bottom:34px}
.c-offer-text{font-family:"Shippori Mincho",serif;font-size:1.08rem;line-height:2.1;margin-bottom:20px;color:#ece9df}
.c-offer-text strong{color:var(--c-gold-lt)}
.c-offer-spec{max-width:560px;margin:40px auto;border-top:1px solid rgba(203,181,131,.3)}
.c-spec-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 6px;border-bottom:1px solid rgba(203,181,131,.3);text-align:left}
.c-spec-row span{font-family:"Shippori Mincho",serif;color:var(--c-gold-lt);font-size:.92rem;letter-spacing:.08em;flex-shrink:0}
.c-spec-row b{font-family:"Shippori Mincho",serif;color:#fff;font-size:1rem;text-align:right}
.c-cta-group{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:40px 0 24px}
.c-offer-note{font-size:.9rem;color:rgba(255,255,255,.7);line-height:1.9;max-width:600px;margin:0 auto}

/* ===== 光と闇（私はポジティブ？） ===== */
.c-shadow{background:#fff}
.c-shadow-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:48px;align-items:center;margin-top:14px}
.c-shadow-img img{width:100%;border-radius:14px;box-shadow:0 14px 32px rgba(28,58,44,.14)}
.c-shadow-cap{text-align:center;font-family:"Shippori Mincho",serif;font-size:.96rem;color:var(--ink-soft);margin-top:14px;font-style:italic}
.c-shadow-text p{color:var(--ink-soft);font-size:.99rem;line-height:2.1;margin-bottom:16px}
.c-shadow-text strong{color:var(--green);font-weight:700}

/* ===== 人生の答合わせ（50過ぎたら） ===== */
.c-answer{background:var(--cream)}
.c-answer-grid{display:grid;grid-template-columns:0.95fr 1.05fr;gap:50px;align-items:center}
.c-answer-img img{width:100%;border-radius:16px;box-shadow:0 16px 38px rgba(28,58,44,.18)}
.c-answer-small{font-family:"Shippori Mincho",serif;font-size:1.06rem;color:var(--c-gold);font-weight:700;margin-bottom:8px;letter-spacing:.02em}
.c-answer-big{font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(1.7rem,3.6vw,2.3rem);color:var(--green);line-height:1.55;margin-bottom:22px}
.c-answer-body p{color:var(--ink-soft);font-size:.99rem;line-height:2.1;margin-bottom:16px}
.c-answer-body strong{color:var(--green);font-weight:700}
.c-answer-punch{font-family:"Shippori Mincho",serif!important;margin-top:24px!important}
.c-answer-punch{font-size:1.5rem!important;font-weight:800;color:var(--c-red)!important;line-height:1.6}
.c-answer-punch span{display:block;font-size:.98rem;font-weight:500;color:var(--ink-soft);margin-top:10px;line-height:1.9}

/* ===== レッドカーペット（4幕への導入） ===== */
.c-redcarpet{max-width:720px;margin:46px auto 8px;text-align:center}
.c-redcarpet img{width:100%;border-radius:16px;box-shadow:0 18px 44px rgba(0,0,0,.4)}
.c-redcarpet-cap{font-family:"Shippori Mincho",serif;font-size:1.12rem;line-height:1.9;color:#ece9df;margin-top:24px}
.c-redcarpet-cap strong{color:var(--c-gold-lt);font-weight:700}

/* ===== 申込・問い合わせフォーム ===== */
.c-form-sec{background:var(--c-ink-dk);color:#fff}
.c-form-head{margin-bottom:40px}
.c-form-eyebrow{font-family:"Cormorant Garamond",serif;font-style:italic;letter-spacing:.14em;font-size:1.15rem;color:var(--c-gold-lt);display:block;margin-bottom:10px}
.c-form-title{font-family:"Shippori Mincho",serif;font-weight:800;font-size:clamp(1.5rem,3.6vw,2.1rem);color:#fff;line-height:1.5;margin-bottom:16px}
.c-form-lead{font-size:.98rem;line-height:1.95;color:rgba(255,255,255,.78)}
.c-form{max-width:600px;margin:0 auto}
.c-row{margin-bottom:20px;display:flex;flex-direction:column}
.c-row label{font-family:"Shippori Mincho",serif;font-weight:700;font-size:.92rem;margin-bottom:8px;color:var(--c-gold-lt)}
.c-req{display:inline-block;background:var(--c-red);color:#fff;font-size:.66rem;padding:2px 8px;border-radius:4px;margin-left:8px;font-weight:500;vertical-align:middle}
.c-form input,.c-form select,.c-form textarea{font-family:inherit;font-size:1rem;padding:14px 16px;border:1px solid rgba(203,181,131,.3);border-radius:9px;background:rgba(255,255,255,.05);color:#fff}
.c-form input::placeholder,.c-form textarea::placeholder{color:rgba(255,255,255,.4)}
.c-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23cbb583' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.c-form select option{background:var(--c-ink-dk);color:#fff}
.c-form textarea{resize:vertical;min-height:120px}
.c-form input:focus,.c-form select:focus,.c-form textarea:focus{outline:none;border-color:var(--c-gold)}
.c-hp{position:absolute;left:-9999px}
.c-form-submit{display:block;width:100%;border:none;cursor:pointer;margin-top:10px;text-align:center}
.c-form-note{font-size:.84rem;color:rgba(255,255,255,.6);line-height:1.8;margin-top:18px;text-align:center}

/* フッターのプロダクション表記 */
.center-page .foot-logo small{font-family:"Shippori Mincho",serif;font-size:.8rem;font-weight:500;letter-spacing:.04em;opacity:.82}

/* ===== RESPONSIVE ===== */
@media(max-width:880px){
  .c-pain-grid,.c-three,.c-result-grid{grid-template-columns:1fr;gap:22px}
  .c-acts,.c-pill-grid{grid-template-columns:1fr;gap:18px}
  .c-sayuri-grid{grid-template-columns:1fr;gap:30px}
  .c-sayuri-photo{max-width:380px;margin:0 auto}
  .c-sayuri-shout{margin:54px 0;padding:48px 24px}
  .c-voice-head{flex-direction:column;text-align:center;gap:16px}
  .c-voice-card{padding:32px 26px}
  .c-shadow-grid,.c-answer-grid{grid-template-columns:1fr;gap:28px}
  .c-shadow-img,.c-answer-img{max-width:420px;margin:0 auto}
  .c-redcarpet{margin:34px auto 4px}
  .c-three-card img,.c-pain-card img{aspect-ratio:16/10}
  .c-result-card img{aspect-ratio:4/3;max-width:340px;margin-left:auto;margin-right:auto}
  .c-offer-overlay{padding:72px 0}
}
