:root{
  --gold:#C9A961; --gold-light:#E8D5A3; --gold-dark:#8B6F3C;
  --dark:#0D0D0D; --dark2:#141414; --dark3:#1C1C1C; --dark4:#242424;
  --text:#E8E0D0; --text-muted:#9A9080; --red:#B33A3A; --red-light:#D86B6B;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{background:var(--dark);}
body{
  color:var(--text); font-family:'Noto Sans JP',sans-serif;
  min-height:100vh; overflow-x:hidden; position:relative; -webkit-text-size-adjust:100%;
  line-height:1.95; word-break:normal; overflow-wrap:anywhere; line-break:strict;
}
body::before{
  content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
}
.container{max-width:640px;margin:0 auto;padding:0 22px;position:relative;z-index:1;}
.hidden{display:none !important;}
strong{color:var(--gold-light);font-weight:500;}

.brand-badge{font-family:'Cinzel',serif;font-size:11px;letter-spacing:4px;color:var(--gold);
  text-transform:uppercase;opacity:.85;text-align:center;}
.gold-divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:26px auto;}
.btn-gold{
  background:linear-gradient(135deg,var(--gold-dark),var(--gold)); color:#1a1206; border:none;
  padding:19px 24px; width:100%; font-family:'Noto Serif JP',serif; font-size:17px; font-weight:600;
  letter-spacing:.08em; cursor:pointer; transition:.25s; min-height:58px; line-height:1.5;
  clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,169,97,.35);}
.btn-gold:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none;}
.back-link{background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;
  font-family:inherit;padding:12px;margin-top:12px;letter-spacing:.05em;width:100%;}

/* ===== 画面0：冒頭 ===== */
#screen-intro{min-height:100vh;display:flex;flex-direction:column;justify-content:center;
  padding:50px 0;text-align:center;animation:fade .8s ease;}
.splash-eyebrow{font-size:13px;color:var(--text-muted);letter-spacing:.14em;margin:22px 0 14px;}
.splash-title{font-family:'Noto Serif JP',serif;font-size:clamp(25px,6.6vw,36px);font-weight:300;
  line-height:1.6;letter-spacing:.05em;}
.splash-title span{color:var(--gold);font-weight:600;}
.splash-lead{font-size:15.5px;line-height:2.1;color:var(--text);margin:28px auto 8px;max-width:480px;text-align:left;}
.pills{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:28px 0 30px;}
.pill{background:var(--dark3);border:1px solid var(--gold-dark);border-radius:20px;padding:6px 16px;
  font-size:12px;color:var(--gold);letter-spacing:.05em;}
.disclaimer{font-size:11.5px;color:var(--text-muted);opacity:.65;margin-top:20px;line-height:1.85;}

/* ===== 進捗バー ===== */
.progress-wrapper{padding:28px 0 0;}
.progress-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;}
.progress-label{font-size:11px;color:var(--gold);letter-spacing:.1em;}
.progress-count{font-family:'Cinzel',serif;font-size:12px;color:var(--text-muted);}
.progress-bar{height:2px;background:var(--dark3);border-radius:1px;overflow:hidden;}
.progress-fill{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold));transition:width .5s ease;}

/* ===== 設問 ===== */
#screen-quiz{padding:0 0 70px;animation:slideUp .45s ease;}
.q-card{margin:34px 0 26px;animation:qin .4s ease;}
.q-number{font-family:'Cinzel',serif;font-size:11px;color:var(--gold-dark);letter-spacing:.2em;margin-bottom:14px;}
.q-text{font-family:'Noto Serif JP',serif;font-size:clamp(18px,4.6vw,23px);font-weight:400;
  line-height:1.75;letter-spacing:.03em;margin-bottom:10px;}
.q-hint{font-size:12.5px;color:var(--text-muted);line-height:1.8;margin-bottom:22px;padding-left:12px;
  border-left:2px solid var(--gold-dark);opacity:.85;}
.options{display:flex;flex-direction:column;gap:11px;}
.opt{background:var(--dark3);border:1px solid rgba(201,169,97,.18);border-radius:4px;padding:16px 18px;
  text-align:left;cursor:pointer;transition:.2s;display:flex;align-items:center;gap:14px;
  color:var(--text);font-size:15.5px;line-height:1.7;min-height:58px;width:100%;font-family:inherit;}
.opt:hover{background:var(--dark4);border-color:var(--gold-dark);}
.opt.checked{background:rgba(201,169,97,.1);border-color:var(--gold);color:var(--gold-light);}
.opt .mark{width:26px;height:26px;border-radius:50%;border:1px solid var(--gold-dark);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--gold);transition:.2s;}
.opt.checked .mark{background:var(--gold);color:var(--dark);border-color:var(--gold);}

/* ===== 画面2：結果を見せる直前 ===== */
#screen-track{padding:46px 0 80px;animation:fade .6s ease;}
.gate-eyebrow{font-family:'Cinzel',serif;font-size:10px;letter-spacing:.25em;color:var(--gold);text-align:center;margin-bottom:14px;}
.gate-title{font-family:'Noto Serif JP',serif;font-size:clamp(21px,5.2vw,28px);font-weight:400;
  line-height:1.65;text-align:center;}
.gate-title span{color:var(--gold);}
.gate-lead{font-size:15px;line-height:2.05;color:var(--text);margin:24px 0 6px;}
.form-card{background:var(--dark2);border:1px solid rgba(201,169,97,.22);border-radius:4px;
  padding:26px 22px;margin:14px 0 0;text-align:left;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:12px;color:var(--text-muted);letter-spacing:.08em;margin-bottom:7px;}
.field input{width:100%;background:var(--dark);border:1px solid rgba(201,169,97,.25);border-radius:3px;
  color:var(--text);font-size:16px;padding:15px;font-family:inherit;}
.field input:focus{outline:none;border-color:var(--gold);}
.privacy{font-size:11.5px;color:var(--text-muted);opacity:.75;margin-top:6px;line-height:1.75;}
.form-error{color:var(--red-light);font-size:13px;margin:0 0 12px;line-height:1.7;}

/* ===== 100円オファー ===== */
.offer{background:linear-gradient(180deg,var(--dark2),var(--dark3));border:1px solid var(--gold);
  border-radius:4px;padding:30px 22px;margin:34px 0 10px;}
.offer h3{font-family:'Noto Serif JP',serif;font-size:clamp(18px,4.6vw,22px);color:var(--gold);
  line-height:1.7;margin-bottom:18px;text-align:center;}
.offer ul{list-style:none;margin:14px 0 20px;}
.offer li{font-size:14.5px;color:var(--text);line-height:1.9;padding:9px 0 9px 20px;position:relative;
  border-bottom:1px solid rgba(255,255,255,.05);}
.offer li:last-child{border-bottom:none;}
.offer li::before{content:'—';position:absolute;left:0;color:var(--gold-dark);}
.offer-price{font-family:'Noto Serif JP',serif;text-align:center;color:var(--gold-light);font-size:20px;
  letter-spacing:.08em;margin:6px 0 18px;}
.offer-deadline{font-size:12.5px;color:var(--text-muted);text-align:center;margin-top:14px;line-height:1.85;}
.offer-closed{font-family:'Noto Serif JP',serif;font-size:16px;color:var(--text-muted);text-align:center;
  padding:14px 0;line-height:1.9;}

/* ===== 結果 ===== */
#screen-result{padding:46px 0 80px;animation:fade .8s ease;}
.result-eyebrow{font-family:'Cinzel',serif;font-size:11px;letter-spacing:4px;color:var(--gold);text-align:center;margin-bottom:16px;}
.result-title{font-family:'Noto Serif JP',serif;font-size:clamp(23px,5.6vw,32px);font-weight:400;
  line-height:1.6;text-align:center;color:var(--gold);}
.result-sub{font-family:'Noto Serif JP',serif;font-size:clamp(16px,4.2vw,19px);text-align:center;
  color:var(--gold-light);line-height:1.8;margin-top:14px;}
.quotes{background:var(--dark2);border-left:2px solid var(--gold-dark);border-radius:0 4px 4px 0;
  padding:20px 20px;margin:26px 0 18px;}
.quotes p{font-size:14.5px;color:var(--text-muted);line-height:2;margin-bottom:8px;}
.quotes p:last-child{margin-bottom:0;}
.lead-line{font-size:15px;line-height:2.05;margin:0 0 30px;}
.sec{margin:30px 0;}
.sec h3{font-family:'Noto Serif JP',serif;font-size:clamp(17px,4.4vw,20px);color:var(--gold);
  line-height:1.65;margin-bottom:12px;letter-spacing:.03em;}
.sec p{font-size:15px;line-height:2.05;margin-bottom:12px;}
.sec p:last-child{margin-bottom:0;}
.hee{background:linear-gradient(180deg,rgba(201,169,97,.08),transparent);
  border:1px solid rgba(201,169,97,.3);border-radius:4px;padding:24px 20px;margin:30px 0;}
.hee .hee-tag{font-family:'Cinzel',serif;font-size:10px;letter-spacing:.22em;color:var(--gold);margin-bottom:10px;}
.hee h3{font-family:'Noto Serif JP',serif;font-size:clamp(16px,4.2vw,19px);color:var(--gold-light);
  line-height:1.7;margin-bottom:14px;}
.hee p{font-size:14.5px;line-height:2.05;color:var(--text);margin-bottom:12px;}
.hee p:last-child{margin-bottom:0;}
.video-sec .video-frame{position:relative;width:100%;padding-top:56.25%;background:#000;
  border:1px solid rgba(201,169,97,.3);border-radius:4px;overflow:hidden;}
.video-sec .video-frame iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}
.list-card{background:var(--dark3);border:1px solid rgba(201,169,97,.2);border-radius:4px;
  padding:22px 20px;margin:22px 0;}
.list-card h3{font-family:'Noto Serif JP',serif;font-size:17px;color:var(--gold);margin-bottom:10px;line-height:1.6;}
.list-card ul{list-style:none;}
.list-card li{font-size:14.5px;color:var(--text-muted);line-height:1.9;padding:9px 0 9px 20px;position:relative;
  border-bottom:1px solid rgba(255,255,255,.05);}
.list-card li:last-child{border-bottom:none;}
.list-card li::before{content:'—';position:absolute;left:0;color:var(--gold-dark);}
.closing{font-family:'Noto Serif JP',serif;font-size:clamp(16px,4.2vw,19px);line-height:1.95;
  margin:30px 0;letter-spacing:.02em;}
.cta{background:linear-gradient(180deg,var(--dark2),var(--dark3));border:1px solid var(--gold);
  border-radius:4px;padding:30px 22px;margin:28px 0 10px;}
.cta h3{font-family:'Noto Serif JP',serif;font-size:clamp(18px,4.6vw,22px);color:var(--gold);
  line-height:1.65;margin-bottom:12px;text-align:center;}
.cta p{font-size:14.5px;line-height:2.05;color:var(--text);margin-bottom:16px;}
.cta-btn{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;
  background:linear-gradient(135deg,var(--gold-dark),var(--gold));color:#1a1206;
  font-family:'Noto Serif JP',serif;font-size:17px;font-weight:600;letter-spacing:.06em;
  padding:19px 20px;min-height:58px;line-height:1.5;
  clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);transition:.25s;}
.cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,169,97,.35);}
.cta-note{font-size:12.5px;color:var(--text-muted);opacity:.85;margin-top:14px;line-height:1.85;}
.inline-cta{margin:26px 0;}
.authority{font-size:11.5px;color:var(--text-muted);opacity:.62;text-align:center;margin-top:36px;line-height:1.9;}

@keyframes fade{from{opacity:0;}to{opacity:1;}}
@keyframes slideUp{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
@keyframes qin{from{opacity:0;transform:translateX(12px);}to{opacity:1;transform:none;}}

/* ===== v3.0追加：「意外な事実」の見出しタグ（日本語） ===== */
.hee .hee-tag.jp{font-family:'Noto Serif JP',serif;font-size:12px;letter-spacing:.14em;}
.result-title .rt-pre{display:block;font-size:.62em;color:var(--gold-light);letter-spacing:.06em;margin-bottom:4px;}
