/* =========================================================
   急騰銘柄5選 LP  /  style.css
   ========================================================= */
:root{
  --ink:#070b14; --ink2:#0f1626; --ink3:#18213a;
  --gold:#d4af37; --gold-l:#f3dd92; --gold-d:#9c7c16;
  --red:#e0342a; --red-d:#b51d15;
  --green:#12a05c;
  --paper:#ffffff; --paper2:#f4f5f8; --paper3:#eceef3;
  --tx:#14181f; --tx2:#4a5261; --muted:#7a8394;
  --line:#dfe3ea;
  --sans:'Noto Sans JP',-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  --serif:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho',serif;
  --wrap:720px;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-text-size-adjust:100%}
[hidden]{display:none !important}  /* display指定に hidden 属性が負けないように */
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--tx);background:var(--paper);line-height:1.85;font-size:16px;overflow-x:hidden;
  font-feature-settings:"palt";
  /* 日本語の折り返しをスマホで読みやすく */
  word-break:auto-phrase;      /* 文節単位で折り返す（Chrome/Edge・Android） */
  line-break:strict;           /* 行頭禁則を厳格に */
  text-wrap:pretty;            /* 行末に1文字だけ残るのを防ぐ */
  letter-spacing:.01em}
/* 文節を途中で割らせないためのユーティリティ（全ブラウザ対応） */
.nb{display:inline-block}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}

/* ===== layout ===== */
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sec{padding:50px 0}
.sec-tight{padding:34px 0}
.dark{background:var(--ink);color:#fff}
.dark .lead{color:#c8cfdd}
.ink2{background:linear-gradient(180deg,#0f1626 0%,#070b14 100%);color:#fff}
.ink2 .lead{color:#c8cfdd}

/* 最終CTAセクション：背景写真（ChatGPT生成） */
#entry{position:relative;overflow:hidden;background:#070b14}
#entry::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
   linear-gradient(180deg,#070b14 0%,rgba(7,11,20,.82) 22%,rgba(7,11,20,.7) 50%,rgba(7,11,20,.9) 82%,#070b14 100%),
   url("../img/cta-bg.jpg") center 30% / cover no-repeat;}
#entry > .wrap{position:relative;z-index:1}
.gray{background:var(--paper2)}

/* ===== type ===== */
.lead{font-size:16px;line-height:2.1;color:var(--tx2)}
.lead.big{font-size:17px}
.center{text-align:center}
.mb8{margin-bottom:8px}.mb16{margin-bottom:16px}.mb24{margin-bottom:24px}
.mb32{margin-bottom:32px}.mb40{margin-bottom:40px}.mb48{margin-bottom:48px}
.gold{color:var(--gold)}
.mk{background:linear-gradient(transparent 62%,rgba(224,52,42,.28) 0);font-weight:700}
.mk-g{background:linear-gradient(transparent 62%,rgba(212,175,55,.38) 0);font-weight:700}
.big-red{color:var(--red);font-weight:900}
.serif{font-family:var(--serif)}
.num{font-family:'Helvetica Neue',Arial,sans-serif;font-weight:700;letter-spacing:-.02em}

/* ===== header ===== */
.hd{position:sticky;top:0;z-index:90;background:rgba(7,11,20,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(212,175,55,.3)}
.hd-in{max-width:var(--wrap);margin:0 auto;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.hd-logo{color:#fff;font-weight:900;font-size:13px;letter-spacing:.01em;line-height:1.35;
  display:flex;align-items:center;gap:7px}
.hd-logo .mk{flex:none;width:30px;height:30px}
@media (max-width:359px){.hd-logo{gap:5px}.hd-logo .mk{width:26px;height:26px}}
.hd-cta{background:linear-gradient(180deg,#06c755,#04a344);color:#fff;font-weight:900;font-size:13px;padding:9px 16px;border-radius:100px;white-space:nowrap;box-shadow:0 2px 0 #037a33}

/* ===== hero ===== */
.hero{position:relative;color:#fff;padding:22px 0 0;overflow:hidden;background:#070b14}
/* 背景写真レイヤー（ChatGPT生成） */
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:
   linear-gradient(180deg,rgba(7,11,20,.44) 0%,rgba(7,11,20,.22) 32%,rgba(7,11,20,.72) 80%,#070b14 100%),
   radial-gradient(700px 400px at 50% 25%,rgba(7,11,20,.52),transparent 72%),
   url("../img/hero-bg.jpg") center 18% / cover no-repeat;}
/* 上部のゴールドグロー */
.hero::after{content:"";position:absolute;left:0;right:0;top:0;height:340px;pointer-events:none;z-index:1;
  background:radial-gradient(760px 300px at 50% -12%,rgba(212,175,55,.26),transparent 65%);}
.hero-in{position:relative;z-index:2}

/* ===== buttons ===== */
.cta-zone{padding:26px 0 6px}
.btn{display:block;width:100%;max-width:520px;margin:0 auto;text-align:center;
  background:linear-gradient(180deg,#0ad35f 0%,#06c755 45%,#04a846 100%);
  color:#fff;font-weight:900;font-size:21px;line-height:1.35;padding:20px 16px 18px;border-radius:14px;
  box-shadow:0 6px 0 #037a33,0 14px 30px rgba(6,199,85,.35);position:relative;overflow:hidden;
  animation:pulse 2.2s ease-in-out infinite}
.btn small{display:block;font-size:12px;font-weight:700;opacity:.95;letter-spacing:.06em;margin-bottom:4px}
.btn .fee{display:block;width:-moz-fit-content;width:fit-content;background:#fff;color:#04a344;font-size:11px;font-weight:900;padding:3px 12px;border-radius:100px;margin:9px auto 0;letter-spacing:.04em}
.btn::after{content:"";position:absolute;top:-60%;left:-60%;width:40%;height:220%;transform:rotate(22deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:shine 3.4s ease-in-out infinite}
@keyframes shine{0%{left:-60%}55%{left:130%}100%{left:130%}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.022)}}
.btn-note{text-align:center;font-size:12px;color:var(--muted);margin-top:12px;line-height:1.7}
.dark .btn-note,.ink2 .btn-note,.hero .btn-note{color:#8d97a8}
.arrows{text-align:center;color:var(--gold);font-size:22px;line-height:1;letter-spacing:.3em;animation:bob 1.4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

/* ===== 登録フォーム ===== */
/* #entry は背景写真の上に重なるので、カードを前面に出す */
.eform{position:relative;z-index:1;max-width:520px;margin:0 auto;
  background:#fff;border-radius:14px;padding:20px 16px 18px;
  box-shadow:0 14px 34px rgba(0,0,0,.45)}
.eform .row{margin-bottom:15px}
.eform label{display:block;font-size:14px;font-weight:700;color:var(--tx);margin-bottom:6px}
/* iOSは16px未満の入力欄でページを勝手に拡大するので、16pxを下回らせない */
.eform input{display:block;width:100%;font-family:inherit;font-size:16px;line-height:1.5;
  color:var(--tx);padding:13px 12px;border:1px solid var(--line);border-radius:9px;
  background:#fff;-webkit-appearance:none;appearance:none}
.eform input::placeholder{color:#b4bcc8}
.eform input:focus{outline:2px solid var(--gold-d);outline-offset:1px;border-color:var(--gold-d)}
.eform input[aria-invalid="true"]{border-color:#c62828;background:#fff8f8}
.eform .err{margin-top:6px;font-size:13px;line-height:1.6;font-weight:700;color:#c62828}
.eform .btn{border:0;cursor:pointer;font-family:inherit;max-width:none}

/* fixed footer cta */
.fixcta{position:fixed;left:0;right:0;bottom:0;z-index:95;padding:9px 14px calc(9px + env(safe-area-inset-bottom));
  background:rgba(7,11,20,.94);backdrop-filter:blur(8px);border-top:1px solid rgba(212,175,55,.35);
  transform:translateY(130%);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.fixcta.on{transform:translateY(0)}
.fixcta .btn{font-size:17px;padding:13px 12px 12px;box-shadow:0 4px 0 #037a33;animation:none}
.fixcta .btn small{font-size:10px;margin-bottom:2px}
.fixcta .btn .fee{display:none}

/* ===== problem checklist ===== */
.check{list-style:none;display:grid;gap:12px}
.check li{position:relative;background:#fff;border:2px solid var(--line);border-radius:12px;
  padding:16px 18px 16px 56px;font-size:16px;font-weight:700;line-height:1.7;box-shadow:0 2px 0 rgba(0,0,0,.03)}
.check li::before{content:"\2714";position:absolute;left:16px;top:50%;transform:translateY(-50%);
  width:28px;height:28px;border-radius:7px;background:var(--red);color:#fff;font-size:15px;
  display:flex;align-items:center;justify-content:center;font-weight:900}


/* ===== 開発者ストーリー（原体験） ===== */
.st-blk{margin:30px 0;padding:26px 18px 24px;border-radius:12px;
  background:linear-gradient(180deg,rgba(212,175,55,.11),rgba(255,255,255,.03));
  border-top:1px solid rgba(212,175,55,.55);border-bottom:1px solid rgba(212,175,55,.55)}
.st-hd{font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.7;color:var(--gold-l);
  text-align:center;letter-spacing:.02em;margin-bottom:24px;padding-bottom:18px;
  border-bottom:1px dashed rgba(212,175,55,.35)}
.st-blk p{font-size:15.5px;line-height:2.1;color:#d6dce7;margin-bottom:18px}
.st-blk p:last-child{margin-bottom:0}
.st-lead{font-size:17.5px !important;font-weight:700;color:#fff !important}
.st-lead b{color:var(--gold-l)}
.st-key{font-size:17.5px !important;font-weight:700;color:#fff !important;line-height:1.95 !important}
.st-key b{color:var(--gold-l)}
.st-turn{margin:24px 0 !important;padding:18px 14px;text-align:center;border-radius:10px;
  background:rgba(224,52,42,.14);border-left:3px solid var(--red);
  font-size:17px !important;font-weight:700;line-height:1.95 !important;color:#fff !important}
.st-turn b{color:#ff8a7a;font-size:19px}
@media(max-width:400px){ .st-hd{font-size:21px} .st-lead,.st-key{font-size:16.5px !important} }

/* ===== 急騰までのタイムライン ===== */
.tl{background:var(--ink);border-radius:14px;padding:26px 18px 24px;margin-bottom:28px;
  border:1px solid rgba(212,175,55,.3)}
.tl-hd{text-align:center;font-size:19px;font-weight:900;line-height:1.7;color:#fff}
.tl-lead{text-align:center;margin-top:10px;font-size:14.5px;line-height:1.95;color:#a9b3c4}
.tl-l{list-style:none;counter-reset:tl;margin-top:26px;position:relative;padding-left:26px}
.tl-l::before{content:"";position:absolute;left:7px;top:8px;bottom:26px;width:2px;
  background:linear-gradient(180deg,rgba(212,175,55,.25),rgba(224,52,42,.9))}
.tl-l li{counter-increment:tl;position:relative;padding-bottom:26px}
.tl-l li:last-child{padding-bottom:0}
.tl-l li::before{content:counter(tl);position:absolute;left:-26px;top:2px;width:17px;height:17px;
  border-radius:50%;background:var(--ink);border:2px solid rgba(212,175,55,.75);color:var(--gold-l);
  font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center}
.tl-l li.tl-fire::before{background:var(--red);border-color:var(--red);color:#fff}
.tl-t{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.06em;color:var(--gold);
  background:rgba(212,175,55,.12);border-radius:3px;padding:2px 9px;margin-bottom:7px}
.tl-fire .tl-t{color:#ff8a7a;background:rgba(224,52,42,.18)}
.tl-n{display:block;font-size:17px;font-weight:900;line-height:1.55;color:#fff}
.tl-fire .tl-n{color:#ff8a7a}
.tl-d{display:block;margin-top:6px;font-size:13.5px;line-height:1.95;color:#a9b3c4}
.tl-ft{margin-top:24px;padding-top:20px;border-top:1px dashed rgba(212,175,55,.35);
  text-align:center;font-size:16px;font-weight:700;line-height:1.95;color:#fff}
.tl-ft b{color:#ff8a7a;font-weight:900}
.tl-ft2{display:inline-block;margin-top:12px;font-size:14.5px;font-weight:500;color:#c0c8d4}
.tl-ans{margin-top:18px;text-align:center;font-size:17px;font-weight:900;line-height:1.9;
  color:var(--gold-l);background:rgba(212,175,55,.1);border-radius:10px;padding:16px 12px}
.tl-ans b{color:#fff;font-size:20px}

/* 惜しかったパターン */
.miss{list-style:none;display:grid;gap:9px;margin-bottom:26px}
.miss li{position:relative;background:#fff6f5;border:1px solid #f3c9c5;border-radius:10px;
  padding:14px 14px 14px 44px}
.miss li::before{content:"\D7";position:absolute;left:15px;top:13px;width:20px;height:20px;
  border-radius:50%;background:var(--red);color:#fff;font-size:13px;font-weight:900;
  display:flex;align-items:center;justify-content:center}
.miss li b{display:block;font-size:15.5px;font-weight:900;color:var(--tx);line-height:1.5}
.miss li span{display:block;margin-top:3px;font-size:13.5px;color:var(--tx2);line-height:1.75}


/* 解決パート：4つ→1つ */
.solved{list-style:none;display:grid;gap:9px;margin:22px 0 24px}
.solved li{display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--paper2);border-radius:10px;padding:13px 15px}
.solved li s{font-size:15.5px;font-weight:700;color:var(--muted);text-decoration-thickness:2px}
.solved li em{font-style:normal;font-size:13.5px;font-weight:900;color:var(--green)}
.solved li.left{background:#fff;border:2px solid var(--gold)}
.solved li.left b{font-size:15.5px;font-weight:900;color:var(--tx)}
.solved li.left em{color:var(--gold-d)}

/* ===== speech / affinity ===== */
.bubble{position:relative;background:#fff;border:2px solid var(--ink);border-radius:16px;padding:22px;font-size:17px;font-weight:700;line-height:1.9}
.bubble::after{content:"";position:absolute;bottom:-14px;left:44px;border-width:14px 12px 0;border-style:solid;border-color:var(--ink) transparent}
.bubble::before{content:"";position:absolute;bottom:-11px;left:46px;z-index:2;border-width:12px 10px 0;border-style:solid;border-color:#fff transparent}

/* ===== enemy cards ===== */

/* ===== results ===== */
.rank{display:grid;gap:11px}
.rc{background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:0 6px 18px rgba(10,20,40,.07)}
.rc-hd{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(90deg,#0f1626,#1c2740)}
.rc-no{flex:none;width:30px;height:30px;border-radius:8px;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#221a00;font-weight:900;font-size:15px;display:flex;align-items:center;justify-content:center}
.rc-nm{color:#fff;font-weight:900;font-size:16px;line-height:1.3;flex:1}
.rc-nm span{display:block;font-size:11px;color:var(--gold-l);font-weight:500;letter-spacing:.05em}
.rc-chart{padding:10px 12px 0;background:#fff}
.rc-chart svg{width:100%;height:78px;display:block}
.rc-bd{display:flex;align-items:center;padding:8px 14px 12px;gap:6px}
.rc-p{flex:1;text-align:center}
.rc-p .d{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.04em}
.rc-p .v{font-size:19px;font-weight:900;color:var(--tx);line-height:1.35}
.rc-p.to .v{color:var(--red)}
.rc-ar{flex:none;color:var(--red);font-size:19px;font-weight:900;line-height:1}
.rc-ft{background:linear-gradient(90deg,#fff6f5,#ffeceb);border-top:1px dashed #f0b6b2;padding:9px 14px;display:flex;align-items:baseline;justify-content:center;gap:9px;flex-wrap:wrap}
.rc-ft b{color:var(--red);font-size:25px;font-weight:900;line-height:1.1}
.rc-ft i{font-style:normal;background:var(--red);color:#fff;font-size:12px;font-weight:900;padding:3px 10px;border-radius:100px}
.rc-sim{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;
  padding:9px 12px;background:linear-gradient(90deg,#0f1626,#1c2740);border-top:1px solid rgba(212,175,55,.3)}
.rc-sim .k{font-size:12px;font-weight:700;color:var(--gold-l);letter-spacing:.04em}
.rc-sim .v{font-size:20px;font-weight:900;color:#8d97a8;line-height:1.2}
.rc-sim .v i{font-style:normal;font-size:13px;font-weight:700}
/* 到達額は、このカードで一番見せたい数字。大きく・黄色で立てる */
.rc-sim .v.to{color:#ffe14d;font-size:36px;letter-spacing:-.01em;
  text-shadow:0 2px 10px rgba(255,214,0,.35)}
.rc-sim .v.to i{color:#ffe14d;font-size:19px}
@media (max-width:359px){.rc-sim .v.to{font-size:31px}.rc-sim .v.to i{font-size:17px}}
.rc-sim .ar{color:var(--red);font-size:17px;font-weight:900;line-height:1}
.rc-bar{height:7px;background:var(--paper3)}
.rc-bar i{display:block;height:100%;background:linear-gradient(90deg,#ff8a5c,var(--red))}

.more-wrap{display:grid;gap:11px;margin-top:11px}
.more-btn{display:block;width:100%;margin-top:14px;cursor:pointer;font-family:inherit;
  background:rgba(255,255,255,.05);border:1px solid rgba(212,175,55,.5);border-radius:10px;
  color:var(--gold-l);font-size:15px;font-weight:700;letter-spacing:.03em;padding:15px 12px;
  display:flex;align-items:center;justify-content:center;gap:9px}
.more-btn b{color:#fff;font-size:18px;font-weight:900;margin:0 1px}
.more-btn .more-ic{width:19px;height:19px;display:block}
.more-btn .more-ic svg{width:100%;height:100%}
.more-btn:hover{background:rgba(212,175,55,.12)}

/* ===== cards / charts ===== */
.card{background:#fff;border-radius:16px;padding:20px 16px;box-shadow:0 8px 26px rgba(10,20,40,.09);border:1px solid var(--line)}
.dark .card,.ink2 .card{background:rgba(255,255,255,.045);border:1px solid rgba(212,175,55,.26);box-shadow:none}
.cap{font-size:11px;color:var(--muted);line-height:1.7;margin-top:10px}
.dark .cap,.ink2 .cap{color:#8d97a8}
.ph{display:inline-block;background:#fff3cd;border:1px dashed #c8a415;color:#8a6d00;font-size:10px;font-weight:700;padding:1px 7px;border-radius:4px;margin-right:6px}

/* ===== heading image ===== */
.h-img{margin:0 auto 28px;max-width:660px}

/* ===== 写真＋焼き入れ文字の合成ブロック ===== */
.shot{position:relative;margin:0;border-radius:10px;overflow:hidden;background:#070b14;line-height:0;
  aspect-ratio:16/10}
.shot img{width:100%;height:100%;object-fit:cover;display:block}
.shot-tx{position:absolute;inset:0;width:100%;height:100%}
.shot-cap{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 10px;line-height:1.6;
  background:linear-gradient(transparent,rgba(7,11,20,.85));color:#fff;font-size:13px;font-weight:700;text-align:center}

/* ===== 届けるもの（3つの強み）===== */
.dv-lead{text-align:center;font-size:16px;line-height:2.05;color:var(--tx2);margin-bottom:28px}
.dv-lead b{color:var(--tx);font-weight:900}
/* カードの直後に置くため正の余白にする（旧:-12px はリード文直下用で、カードに食い込んでいた） */
.free{list-style:none;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:24px 0 26px}
.free li{background:#fff;border:1px solid var(--gold);border-radius:100px;padding:7px 15px;
  font-size:12.5px;font-weight:700;color:var(--tx2);white-space:nowrap}
.free li b{color:var(--gold-d);font-weight:900;margin-left:3px}

.dv{list-style:none;display:grid;gap:18px}
.dv li{background:#fff;border-radius:14px;overflow:hidden;position:relative;
  box-shadow:0 10px 30px rgba(10,20,40,.12);border:1px solid var(--line)}
.dv li::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:2;
  background:linear-gradient(90deg,#f3dd92,var(--gold),#b0873a)}
.dv-img{margin:0;line-height:0;background:#070b14;aspect-ratio:16/9;overflow:hidden}
.dv-img img{width:100%;height:100%;object-fit:cover;display:block}
.dv-bd{padding:20px 18px 22px;text-align:center}
.dv-ic{display:block;width:40px;height:40px;margin:-42px auto 12px;color:var(--gold-d);
  background:#fff;border-radius:50%;padding:7px;box-shadow:0 4px 14px rgba(10,20,40,.18);
  position:relative;z-index:2;box-sizing:content-box}
.dv-ic svg{width:100%;height:100%;display:block}
.dv li b{display:block;font-size:19px;font-weight:900;line-height:1.55;color:var(--tx);margin-bottom:10px}
.dv li p{font-size:14.5px;line-height:2;color:var(--tx2);text-align:left}
/* 620px以上は3カラムにせず横並びカードにする。
   720pxのセンターカラムを3分割すると1列217pxになり、
   .nb（改行保護）と相まって1行6文字まで落ちるため。 */
@media(min-width:620px){
  .dv{grid-template-columns:1fr;gap:16px}
  .dv li{display:grid;grid-template-columns:286px 1fr;align-items:stretch}
  .dv-img{aspect-ratio:auto;height:100%;min-height:186px}
  .dv-bd{padding:26px 28px 26px 26px;text-align:left;display:flex;
    flex-direction:column;justify-content:center}
  .dv-ic{margin:0 0 12px;box-shadow:none;padding:0;width:34px;height:34px}
  .dv li b{font-size:20px;margin-bottom:8px}
  .dv li p{font-size:15px;line-height:1.95}
  /* 本文中の<br>はスマホ幅用。PC幅では文が細切れになるので無効化する */
  .dv li p br{display:none}
}
@media(max-width:400px){
  .dv li b{font-size:18px}
}

/* ===== 損失提示（動いた人 / 動かなかった人） ===== */
.vs{display:grid;gap:10px;position:relative}
.vs-c{border-radius:16px;padding:22px 16px 20px;text-align:center;position:relative;overflow:hidden}
.vs-c.no{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
  border:1px solid #39414f;filter:saturate(.5)}
.vs-c.yes{background:linear-gradient(170deg,rgba(224,52,42,.26),rgba(212,175,55,.12) 60%,rgba(212,175,55,.05));
  border:2px solid var(--gold);box-shadow:0 0 0 1px rgba(212,175,55,.25),0 14px 36px rgba(224,52,42,.22)}
.vs-t{display:inline-block;font-size:13px;font-weight:900;letter-spacing:.06em;margin-bottom:14px;
  padding:4px 14px;border-radius:100px;background:rgba(255,255,255,.07)}
.vs-c.no .vs-t{color:#8d97a8}
.vs-c.yes .vs-t{color:#221a00;background:linear-gradient(160deg,var(--gold-l),var(--gold-d))}
.vs-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.vs-row span{font-size:22px;font-weight:900;color:#9aa5b6;line-height:1.25}
.vs-row span.hi{font-size:38px;color:#fff;letter-spacing:-.01em;
  text-shadow:0 2px 18px rgba(255,160,120,.45)}
.vs-row i{font-style:normal;font-size:16px;font-weight:900;color:#6f7a8c}
.vs-c.yes .vs-row i{color:var(--red)}
.vs-d{margin-top:12px;display:inline-block;font-size:19px;font-weight:900;padding:5px 18px;border-radius:100px;
  background:rgba(255,255,255,.08);color:#8d97a8}
.vs-d.up{background:linear-gradient(135deg,#ff6a52,var(--red));color:#fff;font-size:25px;
  padding:7px 22px;box-shadow:0 8px 20px rgba(224,52,42,.4)}
.vs-n{margin-top:11px;font-size:13px;line-height:1.8;color:#a9b3c4}
.vs-c.yes .vs-n strong{color:#fff}
.vs-x{text-align:center;font-size:12px;font-weight:900;letter-spacing:.16em;color:#221a00;
  padding:0;margin:2px auto;width:46px;line-height:26px;border-radius:100px;
  background:linear-gradient(160deg,var(--gold-l),var(--gold-d))}
.vs-sum{margin-top:22px;text-align:center;border-top:1px dashed rgba(212,175,55,.4);padding-top:22px}
.vs-sum .k{font-size:17px;font-weight:700;color:#c8cfdd}
.vs-sum b{display:inline-block;font-size:56px;font-weight:900;line-height:1.15;margin:0 4px;
  background:linear-gradient(180deg,#ffb199,#ff6a52 55%,#e0342a);-webkit-background-clip:text;
  background-clip:text;color:transparent;text-shadow:0 10px 30px rgba(224,52,42,.3)}
.vs-sum p{margin-top:12px;font-size:15px;line-height:1.95;color:#c8cfdd}

/* ===== 監修者メッセージ ===== */
.fdr{margin:0 0 28px;text-align:center}
.fdr-ph{position:relative;width:186px;height:186px;margin:0 auto;border-radius:50%;overflow:hidden;
  border:3px solid var(--gold);box-shadow:0 10px 30px rgba(0,0,0,.5)}
.fdr-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 34%}
.fdr-tmp{position:absolute;left:0;right:0;bottom:0;padding:5px 4px;font-size:10px;font-weight:700;
  background:rgba(224,52,42,.9);color:#fff;letter-spacing:.02em}
.fdr-cap{margin-top:16px;display:block}
.fdr-role{display:block;font-size:12.5px;font-weight:700;line-height:1.75;color:var(--gold-l);letter-spacing:.04em}
.fdr-name{display:block;margin-top:6px;font-size:22px;font-weight:900;color:#fff}

.letter{position:relative;border-left:3px solid rgba(212,175,55,.5);padding:4px 0 4px 18px}
.letter p{font-size:15.5px;line-height:2.15;color:#d6dce7;margin-bottom:20px}
.letter p:last-child{margin-bottom:0}
.letter strong{color:#fff;font-weight:900}
.letter .l-lead{font-size:20px;font-weight:900;line-height:1.85;color:#fff}
.letter .l-items{font-size:17px;font-weight:700;color:var(--gold-l);letter-spacing:.02em}
.letter .l-strong{font-size:18px;font-weight:900;line-height:1.9;color:#fff}
.letter .l-last{font-size:19px;font-weight:900;line-height:1.85;color:#fff}
.l-quote{margin:26px 0;padding:22px 16px;border:none;border-radius:14px;text-align:center;
  background:linear-gradient(180deg,rgba(212,175,55,.16),rgba(212,175,55,.04));
  border-top:1px solid rgba(212,175,55,.5);border-bottom:1px solid rgba(212,175,55,.5);
  font-size:24px;font-weight:900;line-height:1.8;color:var(--gold-l)}
.l-sign{text-align:right;font-family:var(--serif);font-size:19px;font-weight:600;color:#fff;
  margin-top:26px;padding-top:16px;border-top:1px dashed rgba(212,175,55,.35)}

@media(max-width:400px){
  .letter .l-lead{font-size:18px}
  .l-quote{font-size:21px}
}

/* ===== 根拠セクション ===== */
.why{display:grid;gap:14px}
.why-c{position:relative;background:#fff;border-radius:14px;padding:22px 18px 20px;box-shadow:0 6px 18px rgba(10,20,40,.08);border:1px solid var(--line)}
.why-n{position:absolute;top:-10px;left:16px;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#221a00;font-size:13px;font-weight:900;letter-spacing:.06em;padding:3px 12px;border-radius:100px}
.why-c h4{margin:8px 0 10px;font-size:18px;font-weight:900;line-height:1.6}
.why-c p{font-size:14.5px;line-height:1.95;color:var(--tx2)}
.why-c strong{color:var(--tx)}

/* ===== 危機感クロージング ===== */
.alarm{margin-top:36px;border:1px solid rgba(224,52,42,.55);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,rgba(224,52,42,.12),rgba(7,11,20,.2));padding:26px 18px;text-align:center}
.alarm .a1{font-size:15px;line-height:1.95;color:#c8cfdd}
.alarm .a1 u{text-decoration-color:rgba(212,175,55,.7);text-underline-offset:4px}
.alarm .a2{margin-top:16px;font-size:20px;font-weight:900;line-height:1.8;color:#fff}
.alarm .a2 strong{color:#ff6a52;font-size:23px}
.alarm .a3{margin:22px auto 0;max-width:420px;background:rgba(7,11,20,.55);border:1px solid rgba(212,175,55,.35);
  border-radius:12px;padding:18px 14px;line-height:1.9}
.alarm .a3 span{display:block;font-size:13px;color:#b9c2d1}
.alarm .a3 b{display:block;font-size:32px;font-weight:900;color:#fff;line-height:1.3}
.alarm .a3 b.dn{color:#ff6a52}
.alarm .a4{margin-top:20px;font-size:15px;line-height:1.95;color:#c8cfdd}
.alarm .a4 .big-red{color:#ff6a52;font-size:17px;display:inline-block;margin-top:2px}

/* ===== trio ===== */
.trio{display:grid;gap:12px}
.trio-c{background:#fff;border:2px solid var(--ink);border-radius:14px;padding:18px}
.trio-c h4{font-size:17px;font-weight:900;margin-bottom:6px;display:flex;align-items:center;gap:9px}
.trio-c h4 em{font-style:normal;width:30px;height:30px;flex:none;border-radius:50%;background:var(--ink);color:var(--gold-l);font-size:14px;display:flex;align-items:center;justify-content:center}
.trio-c p{font-size:14px;color:var(--tx2);line-height:1.85}

/* ===== benefits ===== */
.ben{display:grid;gap:12px}
.ben li{list-style:none;background:#fff;border-radius:12px;padding:18px 18px 18px 20px;border-left:5px solid var(--gold);box-shadow:0 4px 14px rgba(10,20,40,.07)}
.ben li b{display:block;font-size:17px;font-weight:900;margin-bottom:6px;line-height:1.5}
.ben li span{font-size:14px;color:var(--tx2);line-height:1.85}

/* ===== narrow down ===== */
.nd{display:grid;gap:10px;list-style:none}
.nd li{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 14px 13px 44px;position:relative;font-size:15px;font-weight:700;line-height:1.7}
.nd li::before{content:"\25CB";position:absolute;left:14px;top:12px;color:var(--green);font-weight:900;font-size:17px}
.nd.ng li::before{content:"\00D7";color:var(--muted)}
.nd.ng li{font-weight:500;color:var(--tx2);font-size:14px}

/* ===== limit box ===== */
/* ===== 残り枠カウンター ===== */
.slots{margin:4px 0 0}
.slots-k{font-size:14px;font-weight:700;color:var(--tx2);line-height:1.7}
.slots-k b{color:var(--tx);font-size:19px;font-weight:900;margin:0 3px}
.slots-v{font-size:16px;font-weight:700;color:var(--tx2);line-height:1.25;margin-top:6px}
.slots-v .slots-n{display:inline-block;min-width:1.4em;font-size:54px;font-weight:900;color:var(--red);
  letter-spacing:-.02em;font-family:'Helvetica Neue',Arial,sans-serif;vertical-align:-3px}
.slots-v small{font-size:18px;font-weight:900;color:var(--red)}
.slots-few{display:none;margin-top:10px;font-size:13px;font-weight:900;letter-spacing:.06em;color:var(--red)}
.slots.few .slots-few{display:block;animation:blink 1.1s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
.slots.bump .slots-n{animation:bump .6s cubic-bezier(.22,1,.36,1)}
@keyframes bump{
  0%{transform:translateY(-14px) scale(1.18);opacity:0}
  45%{transform:translateY(0) scale(1.08);opacity:1}
  100%{transform:translateY(0) scale(1)}
}
/* 濃色背景に直接置く場合 */
.dark .slots-k,.ink2 .slots-k,.dark .slots-v,.ink2 .slots-v{color:#c8cfdd}
.dark .slots-k b,.ink2 .slots-k b{color:#fff}
/* .limit（白いカード）の中では必ず濃色文字に戻す */
.limit .slots-k,.limit .slots-v,.limit .lead{color:var(--tx2)}
.limit .slots-k b{color:var(--tx)}

.limit{border:3px solid var(--red);border-radius:16px;background:#fff;overflow:hidden}
.limit-hd{background:var(--red);color:#fff;text-align:center;font-weight:900;font-size:16px;padding:9px;letter-spacing:.08em}
.limit-bd{padding:22px 18px;text-align:center}
.limit-bd .k{font-size:14px;font-weight:700;color:var(--tx2)}
.limit-bd .v{font-size:38px;font-weight:900;color:var(--red);line-height:1.2;margin:2px 0 14px}
.limit-bd .v small{font-size:17px}

/* ===== steps ===== */
.step{display:grid;gap:0;counter-reset:s}
.step li{list-style:none;position:relative;padding:0 0 26px 54px}
.step li:last-child{padding-bottom:0}
.step li::before{counter-increment:s;content:"STEP" counter(s);position:absolute;left:0;top:2px;
  width:38px;height:38px;border-radius:50%;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#221a00;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center;line-height:1.1;text-align:center}
.step li:not(:last-child)::after{content:"";position:absolute;left:18px;top:44px;bottom:6px;width:2px;background:rgba(212,175,55,.45)}
.step b{display:block;font-size:17px;font-weight:900;margin-bottom:4px}
.step p{font-size:14px;line-height:1.85;color:#c8cfdd}

/* ===== faq ===== */
.faq{display:grid;gap:10px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:16px 46px 16px 46px;font-size:15px;font-weight:700;position:relative;line-height:1.7}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q";position:absolute;left:14px;top:14px;width:24px;height:24px;border-radius:6px;background:var(--ink);color:var(--gold-l);font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center}
.faq summary::after{content:"\FF0B";position:absolute;right:16px;top:16px;color:var(--gold-d);font-weight:900}
.faq details[open] summary::after{content:"\FF0D"}
.faq .a{padding:0 18px 18px 46px;font-size:14px;line-height:1.9;color:var(--tx2);position:relative}
.faq .a::before{content:"A";position:absolute;left:14px;top:0;width:24px;height:24px;border-radius:6px;background:var(--paper3);color:var(--tx2);font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center}

/* ===== voice ===== */
.voice{display:grid;gap:12px}
.voice-c{background:#fff;border-radius:14px;padding:18px;box-shadow:0 4px 14px rgba(10,20,40,.07)}
.voice-c{border:1px solid var(--line);position:relative}
.voice-c .st{color:var(--gold);font-size:13px;letter-spacing:.14em;margin-bottom:8px}
.voice-c .v-tag{display:inline-block;background:var(--paper2);border:1px solid var(--line);
  color:var(--tx2);font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:100px;margin-bottom:10px}
.voice-c .tt{font-size:16.5px;font-weight:900;line-height:1.65;margin-bottom:12px;
  padding-left:13px;border-left:4px solid var(--gold)}
.voice-c .tx{font-size:14px;color:var(--tx2);line-height:1.95}
.voice-c .tx strong{color:var(--tx);font-weight:900;
  background:linear-gradient(transparent 64%,rgba(212,175,55,.35) 0)}
.voice-c .nm{font-size:12.5px;color:var(--muted);margin-top:14px;text-align:right;
  padding-top:10px;border-top:1px dashed var(--line)}

/* =========================================================
   thanks.html 用
   ========================================================= */
:root{
  --brass:#c9a227;  --brass-l:#e8d08a;  --brass-d:#8a6c16;
  --ox:#8f1d16;     --ox-l:#c8362a;     /* オックスブラッド（深い赤） */
  --slate:#0b0f18;  --slate2:#141a26;
}

/* ヘッダー：緑をやめ真鍮の細枠に */
.hd-t{background:rgba(11,15,24,.9);border-bottom:1px solid rgba(201,162,39,.35)}
.hd-cta-g{background:none;border:1px solid var(--brass);color:var(--brass-l);
  box-shadow:none;font-weight:700;letter-spacing:.04em;padding:8px 15px}

/* ── ヒーロー（金庫背景） ───────────────────────── */
.tv{position:relative;overflow:hidden;background:var(--slate);color:#fff;
  padding:44px 0 52px;text-align:center}
.tv-bg{position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(11,15,24,.86) 0%,rgba(11,15,24,.6) 40%,rgba(11,15,24,.95) 100%),
    url("../img/vault-bg.jpg") center 42% / cover no-repeat;}
/* フィルムグレイン（テンプレ感を消す） */
.tv::after,.once::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/><feColorMatrix type='saturate' values='0'/></filter><rect width='120' height='120' filter='url(%23n)' opacity='.055'/></svg>");}
.tv-in{position:relative;z-index:2}
.tv-kicker{font-size:10.5px;font-weight:700;letter-spacing:.42em;color:var(--brass);margin-bottom:22px;
  text-indent:.42em}
.tv-ic{width:62px;margin:0 auto 20px;color:var(--brass-l)}
.tv-ic svg{width:100%;height:100%}
.tv-t{font-family:var(--serif);font-size:27px;font-weight:600;line-height:1.55;letter-spacing:.03em}
.tv-s{margin-top:14px;font-size:14.5px;line-height:1.95;color:#aab3c2}
.tv-rule{display:flex;align-items:center;gap:14px;margin:30px auto 22px;max-width:300px}
.tv-rule::before,.tv-rule::after{content:"";flex:1;height:1px;background:rgba(201,162,39,.4)}
.tv-rule span{font-family:var(--serif);font-size:13px;letter-spacing:.3em;color:var(--brass);text-indent:.3em}
.tv-lead{font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.75;color:#fff;letter-spacing:.02em}

/* ── 一度きりの警告 ─────────────────────────── */
.once{position:relative;background:var(--slate2);padding:0 0 26px;overflow:hidden}
.once .wrap{position:relative;z-index:2}
.once-bar{display:flex;align-items:center;gap:11px;justify-content:center;
  background:linear-gradient(90deg,rgba(143,29,22,.25),rgba(143,29,22,.55),rgba(143,29,22,.25));
  border-top:1px solid rgba(200,54,42,.6);border-bottom:1px solid rgba(200,54,42,.6);
  margin:0 -20px;padding:15px 18px;text-align:center}
.once-ic{flex:none;width:21px;height:21px;color:var(--ox-l)}
.once-ic svg{width:100%;height:100%}
.once-tx{font-size:15px;font-weight:700;color:#f0e2e0;line-height:1.6}
.once-tx b{color:#ff7a6a;font-weight:900;font-size:17px}
.once-note{margin-top:16px;text-align:center;font-size:12.5px;line-height:2;color:#8891a1}

/* ── なぜ全員に出せないのか ───────────────────── */
.reason{border:none;border-radius:2px;overflow:hidden;background:rgba(255,255,255,.035);
  border-left:3px solid var(--ox-l);box-shadow:0 12px 34px rgba(0,0,0,.45)}
.reason-hd{background:none;color:var(--brass-l);text-align:left;font-size:13px;font-weight:700;
  letter-spacing:.16em;padding:18px 20px 0}
.reason-bd{padding:10px 20px 24px}
.reason-bd .r1{font-size:14px;color:#98a1b0;text-align:left}
.reason-bd .r2{margin-top:10px;text-align:left;font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.7;color:#fff}
.reason-bd .r2 strong{color:#ff7a6a;font-weight:600}
.reason-bd .r3{margin-top:18px;font-size:14.5px;line-height:2.05;color:#c0c8d4;text-align:left}
.reason-bd .r4{margin-top:22px;text-align:left;font-size:15px;line-height:1.9;color:#c0c8d4;
  padding-top:18px;border-top:1px solid rgba(201,162,39,.25)}
.reason-bd .r4 b{display:block;margin-top:6px;font-size:29px;font-weight:900;color:var(--brass-l);letter-spacing:.02em}

/* 残り枠ゲージ */
.gauge{margin:14px auto 0;max-width:340px;height:12px;border-radius:100px;background:var(--paper3);overflow:hidden}
.gauge i{display:block;height:100%;border-radius:100px;background:linear-gradient(90deg,#ff8a5c,var(--red));
  width:0;transition:width .9s cubic-bezier(.22,1,.36,1)}

/* フォーム */
.fm{display:grid;gap:18px;max-width:560px;margin:0 auto}
.fm-row{display:grid;gap:6px}
.fm-row label{font-size:15px;font-weight:900;display:flex;align-items:center;gap:8px}
.req{background:var(--ox);color:#fff;font-size:10px;font-weight:900;padding:2px 8px;border-radius:3px;letter-spacing:.04em}
.opt{background:var(--paper3);color:var(--muted);font-size:10px;font-weight:900;padding:2px 8px;border-radius:3px}
.fm input[type=text],.fm input[type=tel],.fm select{
  width:100%;font-family:inherit;font-size:16px;font-weight:500;color:var(--tx);
  padding:15px 14px;border:1px solid var(--line);border-bottom:2px solid #c3cad6;border-radius:6px;background:#fff;appearance:none}
.fm select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.fm input:focus,.fm select:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px rgba(201,162,39,.18)}
.fm .hint{font-size:12px;color:var(--muted);line-height:1.7}
.fm .err{display:none;font-size:13px;font-weight:700;color:var(--ox-l);line-height:1.6}
.fm-row.ng input,.fm-row.ng select{border-color:var(--ox-l);background:#fdf6f5}
.fm-agree{background:var(--paper2);border-radius:6px;padding:16px 14px}
.fm-agree label{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:700;line-height:1.7;cursor:pointer}
.fm-agree input{flex:none;width:22px;height:22px;margin-top:1px;accent-color:var(--brass-d)}
.fm-agree a{text-decoration:underline}
.fm-agree .req{margin-left:6px;vertical-align:middle}
.fm-agree.ng{background:#fdf6f5;box-shadow:0 0 0 2px var(--ox-l) inset}
.fm button.btn{border:none;cursor:pointer;font-family:inherit;margin-top:6px}

/* 送信完了 */
.sent{max-width:560px;margin:0 auto;text-align:center;border:1px solid var(--brass);border-radius:6px;padding:34px 20px;background:#fffdf6}
.sent .s1{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--brass-d)}
.sent .s2{margin-top:14px;font-size:15px;line-height:2;color:var(--tx2)}

/* オファー導入部のタイポ */
.ofr-kicker{text-align:center;font-family:var(--serif);font-size:14px;font-weight:600;
  letter-spacing:.24em;color:var(--brass);margin-bottom:24px;text-indent:.24em}
.mb28{margin-bottom:28px}
.ofr-lead{text-align:center;font-size:16px;line-height:2.05;color:#c0c8d4;margin-bottom:20px}
.ofr-strike{text-align:center;font-family:var(--serif);font-size:20px;font-weight:600;
  line-height:1.9;color:#fff;letter-spacing:.02em;margin-bottom:32px;
  padding:18px 14px;border-top:1px solid rgba(201,162,39,.3);border-bottom:1px solid rgba(201,162,39,.3)}
.ofr-note{text-align:center;font-size:15.5px;line-height:2.05;color:#c0c8d4;margin-bottom:32px;
  padding:18px 14px;background:rgba(143,29,22,.16);border-left:3px solid var(--ox-l);border-radius:2px}
.ofr-note b{color:#fff;font-size:19px;font-weight:900}
.ofr-cri{text-align:center;font-size:13px;font-weight:700;letter-spacing:.16em;color:var(--brass);
  margin-bottom:14px}

.ofr-h2{text-align:center;font-family:var(--serif);font-size:23px;font-weight:600;
  line-height:1.8;color:#fff;letter-spacing:.02em;margin-bottom:14px}
.ofr-sub{text-align:center;font-size:14.5px;line-height:1.95;color:#98a1b0;margin-bottom:26px}
.last-call{text-align:center;font-size:15.5px;font-weight:700;line-height:1.9;color:var(--ox);
  background:#fdf6f5;border:1px solid rgba(143,29,22,.3);border-radius:6px;padding:16px 14px}

/* 「一度きり表示」の ON/OFF で出し分ける要素 */
html[data-once="off"] .once-only{display:none !important}
html[data-once="on"]  .once-off{display:none !important}
.once-off{display:inline}

/* 受付終了（2回目のアクセス） */
.expired{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  background:var(--slate);color:#fff;text-align:center;padding:40px 24px;overflow-y:auto}
.expired .e1{font-family:var(--serif);font-size:26px;font-weight:600;line-height:1.7;letter-spacing:.03em}
.expired .e2{margin-top:18px;font-size:14.5px;line-height:2.05;color:#8891a1}
.expired .e-ic{width:54px;margin:0 auto 24px;color:#4a5261}

@media(max-width:400px){
  .tv-t{font-size:24px}
  .tv-lead{font-size:20px}
  .once-tx{font-size:14px}
}

/* ===== USP宣言 ===== */
.usp{background:var(--ink);border-radius:14px;padding:24px 18px;margin-bottom:28px;text-align:center;
  border:1px solid rgba(212,175,55,.4)}
.usp-k{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--gold);margin-bottom:14px}
.usp-m{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.85;color:#fff;letter-spacing:.02em}
.usp-m b{color:var(--gold-l);font-weight:600}
.usp-s{margin-top:16px;padding-top:16px;border-top:1px dashed rgba(212,175,55,.35);
  font-size:14px;line-height:2;color:#b9c2d1}

/* ===== なぜ今日なのか ===== */
.wnow{background:#fff;border:2px solid var(--red);border-radius:14px;padding:24px 18px;
  margin-bottom:26px;text-align:center;box-shadow:0 8px 24px rgba(224,52,42,.14)}
.wnow-k{display:inline-block;background:var(--red);color:#fff;font-size:12px;font-weight:900;
  letter-spacing:.12em;padding:4px 16px;border-radius:100px;margin-bottom:16px}
.wnow-m{font-size:17px;font-weight:700;line-height:1.95;color:var(--tx)}
.wnow-m b{color:var(--red);font-size:19px;font-weight:900}
.wnow-s{margin-top:14px;font-size:14.5px;line-height:2;color:var(--tx2)}
.wnow-s b{color:var(--tx);font-weight:900}
.wnow-e{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);
  font-size:15px;line-height:1.95;color:var(--tx2)}
.wnow-e b{display:inline-block;margin-top:4px;font-size:19px;font-weight:900;color:var(--red)}

/* ===== 追伸 ===== */
.ps{background:var(--paper2);border-top:3px solid var(--gold)}
.ps .wrap{max-width:600px}
.ps-h{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:.2em;color:var(--gold-d);
  text-align:center;margin-bottom:24px;text-indent:.2em}
.ps p{font-size:15.5px;line-height:2.1;color:var(--tx2);margin-bottom:18px}
.ps-1{font-size:17px !important;font-weight:700;color:var(--tx) !important}
.ps-key{font-size:18.5px !important;font-weight:900;line-height:1.9 !important;color:var(--tx) !important;
  padding:16px 14px;background:#fff;border-left:4px solid var(--red);border-radius:6px}
.ps-link{color:var(--red);font-weight:900;text-decoration:underline;text-underline-offset:3px}
.ps-last{font-size:17px !important;line-height:2 !important;color:var(--tx) !important}
.ps-last b{font-size:21px;font-weight:900;color:var(--red)}

/* ===== footer ===== */
.ft{background:#04070d;color:#8d97a8;font-size:11.5px;line-height:1.95;padding:40px 0 100px}
.ft h5{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.1em;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid rgba(212,175,55,.25)}
.ft .blk{margin-bottom:26px}
.ft a{color:#b9c2d1;text-decoration:underline}
.ft dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px}
.ft dt{color:#6f7a8c;white-space:nowrap}
.ft .copy{text-align:center;color:#5b6576;font-size:10.5px;margin-top:22px}

@media(max-width:400px){
  body{font-size:15px}
  .btn{font-size:19px}
  .check li{font-size:15px;padding-left:50px}
      .limit-bd .v{font-size:32px}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none !important}
}


/* ===== 個別相談（有料オプション） ===== */
.adv{background:var(--ink);border-radius:14px;padding:26px 18px;text-align:center;
  border:1px solid rgba(212,175,55,.4)}
.adv-k{display:inline-block;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#221a00;font-size:12px;font-weight:900;letter-spacing:.1em;
  padding:5px 16px;border-radius:100px;margin-bottom:16px}
.adv-m{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1.85;color:#fff}
.adv-m b{color:var(--gold-l);font-weight:600}
.adv-l{list-style:none;display:grid;gap:10px;margin:20px 0 0;text-align:left}
.adv-l li{background:rgba(255,255,255,.05);border:1px solid rgba(212,175,55,.25);
  border-radius:11px;padding:14px 15px}
.adv-l b{display:block;font-size:15.5px;font-weight:900;color:var(--gold-l);
  margin-bottom:6px;line-height:1.55}
.adv-l span{display:block;font-size:13.5px;line-height:1.85;color:#b9c2d1}
.adv-n{margin-top:18px;padding-top:16px;border-top:1px dashed rgba(212,175,55,.35);
  font-size:13.5px;line-height:1.95;color:#9aa5b6}
.adv-n b{color:var(--gold-l);font-weight:900}
.adv-free{display:inline-block;margin-top:8px;color:#e8ecf3;font-weight:700}

/* ===== 同調：疑っている方へのお願い ===== */
.ask{background:#fff;border:2px solid var(--gold);border-radius:14px;padding:26px 20px;
  text-align:center;box-shadow:0 8px 24px rgba(212,175,55,.18)}
.ask-k{display:inline-block;background:var(--gold-d);color:#fff;font-size:12px;font-weight:900;
  letter-spacing:.1em;padding:5px 16px;border-radius:100px;margin-bottom:18px}
.ask-m{font-size:22px;font-weight:900;line-height:1.8;color:var(--tx)}
.ask-m b{color:var(--red)}
.ask-s{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);
  font-size:15.5px;line-height:2;color:var(--tx2);font-weight:700}
.ask-s b{display:inline-block;margin-top:8px;font-size:18px;color:var(--tx);font-weight:900}
.ask-e{margin-top:16px;padding-top:16px;border-top:1px dashed var(--line);
  font-size:15px;line-height:1.95;color:var(--tx2)}
.ask-e b{display:inline-block;margin-top:6px;color:var(--tx);font-weight:900}


/* 小見出し（解決パート内） */
.dec-hd{text-align:center;font-size:18px;font-weight:700;line-height:1.85;color:var(--tx2);margin-bottom:18px}
.dec-hd b{display:inline-block;font-size:24px;font-weight:900;color:var(--tx)}

.mt20{margin-top:20px}

/* ===== 実績の締め：今回の5銘柄も同じ段階 ===== */
.turn{position:relative;margin-top:36px;padding:30px 20px 28px;border-radius:16px;text-align:center;
  background:linear-gradient(165deg,rgba(212,175,55,.2),rgba(224,52,42,.14) 55%,rgba(212,175,55,.06));
  border:2px solid var(--gold);
  box-shadow:0 0 0 1px rgba(212,175,55,.25),0 18px 44px rgba(212,175,55,.2)}
.turn-k{display:inline-block;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#221a00;font-size:12.5px;font-weight:900;letter-spacing:.1em;
  padding:5px 18px;border-radius:100px;margin-bottom:18px}
.turn-m{font-size:19px;font-weight:700;line-height:1.95;color:#e8ecf3}
.turn-m b{display:inline-block;margin-top:6px;font-size:23px;font-weight:900;color:var(--gold-l);
  line-height:1.75}
.turn-e{margin-top:20px;padding-top:20px;border-top:1px dashed rgba(212,175,55,.45);
  font-size:24px;font-weight:900;line-height:1.7;color:#fff}
.turn-e em{font-style:normal;color:#ff8a7a;
  background:linear-gradient(transparent 62%,rgba(224,52,42,.45) 62%)}
@media(max-width:400px){
  .turn-m{font-size:17px} .turn-m b{font-size:21px} .turn-e{font-size:21px}
}

/* ===== 無料であることの安心（解決パート） ===== */
.safe{background:#fff;border:2px solid var(--green);border-radius:16px;padding:24px 18px 22px;
  text-align:center;box-shadow:0 10px 30px rgba(18,160,92,.14)}
.safe-k{display:inline-block;background:var(--green);color:#fff;font-size:12.5px;font-weight:900;
  letter-spacing:.1em;padding:5px 18px;border-radius:100px;margin-bottom:16px}
.safe-m{font-size:18px;font-weight:700;line-height:1.85;color:var(--tx2)}
.safe-m b{display:inline-block;margin-top:4px;font-size:22px;font-weight:900;color:var(--tx);
  line-height:1.7}
.safe-l{list-style:none;display:grid;gap:8px;margin:18px 0 0;text-align:left}
.safe-l li{position:relative;background:var(--paper2);border-radius:10px;
  padding:12px 14px 12px 42px;font-size:14.5px;font-weight:700;color:var(--tx2);line-height:1.7}
.safe-l li::before{content:"\2714";position:absolute;left:14px;top:50%;transform:translateY(-50%);
  width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;font-size:11px;
  display:flex;align-items:center;justify-content:center;font-weight:900}
.safe-l li b{color:var(--green);font-weight:900}
.safe-e{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);
  font-size:14.5px;line-height:1.95;color:var(--tx2)}
@media(max-width:400px){ .safe-m{font-size:16.5px} .safe-m b{font-size:20px} }


/* ===== 締切カウントダウン（thanks.html / 緊急性） ===== */
.cd-bar{display:flex;align-items:center;justify-content:center;gap:9px;
  background:linear-gradient(90deg,#8d1208,#c3190c 55%,#8d1208);
  padding:7px 12px;border-radius:9px 9px 0 0;margin-bottom:-1px}
.cd-bar .cd-k{font-size:11px;font-weight:900;color:#ffd9d4;letter-spacing:.08em;white-space:nowrap}
.cd-bar .cd-v{font-size:19px;font-weight:900;color:#fff;line-height:1;letter-spacing:.04em;
  font-variant-numeric:tabular-nums;text-shadow:0 1px 0 rgba(0,0,0,.35)}
.cd-bar .cd-v i{font-style:normal;font-size:12px;font-weight:700;color:#ffd9d4;margin:0 1px 0 2px}
.cd-bar .cd-dot{width:7px;height:7px;border-radius:50%;background:#ff6a52;flex:none;
  box-shadow:0 0 0 0 rgba(255,106,82,.75);animation:cdPulse 1.4s ease-out infinite}
@keyframes cdPulse{70%{box-shadow:0 0 0 9px rgba(255,106,82,0)}100%{box-shadow:0 0 0 0 rgba(255,106,82,0)}}
@media (prefers-reduced-motion: reduce){.cd-bar .cd-dot{animation:none}}

/* 追従バーの中に入れたとき */
.fixcta .cd-bar{border-radius:9px;margin:0 0 7px}

/* 残枠カードの締切行 */
.limit-dl{display:flex;align-items:center;justify-content:center;gap:7px;
  margin-top:14px;padding-top:13px;border-top:1px dashed #f0b6b2}
.limit-dl .k{font-size:12px;font-weight:900;color:var(--tx2);letter-spacing:.06em}
.limit-dl .v{font-size:21px;font-weight:900;color:var(--red);line-height:1;font-variant-numeric:tabular-nums}


/* ===== 3倍の試算（thanks.html） ===== */
.x3{background:linear-gradient(180deg,#121a2b,#0b1220);border:1px solid rgba(212,175,55,.42);
  border-radius:14px;padding:20px 16px 18px;text-align:center}
.x3-k{font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--gold-l);margin-bottom:10px}
.x3-row{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.x3-a{font-size:26px;font-weight:900;color:#8d97a8;line-height:1.1}
.x3-a i{font-style:normal;font-size:14px;font-weight:700}
.x3-ar{font-size:22px;font-weight:900;color:var(--red);line-height:1}
.x3-b{font-size:54px;font-weight:900;color:#ffe14d;line-height:1.05;letter-spacing:-.01em;
  text-shadow:0 2px 14px rgba(255,214,0,.4)}
.x3-b i{font-style:normal;font-size:24px;font-weight:700;color:#ffe14d}
@media (max-width:359px){.x3-b{font-size:46px}.x3-b i{font-size:21px}}
.x3-n{margin-top:13px;padding-top:12px;border-top:1px dashed rgba(212,175,55,.3);
  font-size:14px;line-height:1.9;color:#c0c8d4}


/* 白カードの中は濃色文字（.ink2 / .dark の白を継承させない） */
.ben li{color:var(--tx)}


/* ===== サンキューページのヘッダー画像（文字は画像に焼き込み済み） ===== */
.tvhero{margin:0;line-height:0;background:#05070d}
.tvhero img{width:100%;height:auto;display:block}
.tvhero + .tv{padding-top:26px}
/* PCでは画像だけを720pxに。帯は全幅のまま暗色なので左右に白が出ない */
@media (min-width:760px){.tvhero img{max-width:var(--wrap);margin:0 auto}}
