/* =========================================================
   NovaBox 無料特典サイト 共通デザイン
   デザインのトーンを変えるときは、まずこの「デザインの設定」だけを書き換える。
   ページの中身（設問・結果文など）は shindan-data.js にあり、このファイルとは独立している。
   ========================================================= */

/* ---- デザインの設定（色・フォント・角の丸み） ---- */
:root{
  color-scheme: light;
  /* 下地：撮影スタジオの壁・椅子のグレーと、机の白 */
  --bg:        #F2F1F0;
  --paper:     #FFFFFF;
  --ink:       #231F20;
  --muted:     #6B6466;
  --line:      #DEDAD9;
  /* メイン：トレードマークのボルドー */
  --main:      #6B1E34;
  --main-deep: #4E1526;
  --main-soft: #F1E5E8;
  --main-mid:  #C99AA7;
  /* 差し色：金（細部にだけ使う） */
  --gold:      #A88445;
  /* 本棚の背表紙（結果グラフ）に使う、ボルドーの濃淡 */
  --spine-1:   #6B1E34;
  --spine-2:   #8E3A50;
  --spine-rest:#D9CBCF;

  --font-display: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --font-body:    "Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;
  --radius: 10px;
}

/* ---- ここから下は、ふだん触らない部分 ---- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.8;letter-spacing:.02em}
img{max-width:100%}
a{color:var(--main)}
:focus-visible{outline:3px solid var(--main-mid);outline-offset:2px}
.wrap{max-width:560px;margin:0 auto;padding-inline:20px;padding-block:28px 64px}

/* ブランドの帯 */
.brand{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:4px 20px;border-bottom:1px solid var(--line);margin-bottom:28px}
.brand-name{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:.08em;color:var(--main)}
.brand-tag{font-size:12px;color:var(--muted);letter-spacing:.06em}

.eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--gold);margin-bottom:6px}
h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.45;text-wrap:balance;margin:0}
h1{font-size:27px}
h2{font-size:21px}
h3{font-size:17px}
p{margin:0}
.lead{font-size:16px;color:var(--ink)}
.muted{color:var(--muted)}
.small{font-size:13px;line-height:1.7}
.stack{display:flex;flex-direction:column;gap:16px}
.stack-lg{display:flex;flex-direction:column;gap:36px}

/* ボタン */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:12px 24px;border-radius:999px;border:none;font-family:var(--font-body);font-size:16px;font-weight:700;letter-spacing:.06em;cursor:pointer;text-decoration:none;transition:background-color .15s,transform .1s}
.btn:active{transform:scale(.98)}
.btn-main{background:var(--main);color:#fff}
.btn-main:hover{background:var(--main-deep)}
.btn-sub{background:var(--paper);color:var(--main);border:1.5px solid var(--main)}
.btn-sub:hover{background:var(--main-soft)}
.btn-line{background:#06C755;color:#fff}
.btn[disabled],.btn.is-disabled{background:var(--line);color:var(--muted);border:none;cursor:not-allowed;transform:none}
.btn-block{width:100%}

/* カード */
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.note-box{background:var(--main-soft);border-radius:var(--radius);padding:14px 16px;font-size:14px;line-height:1.75}

/* 注意書き・フッター */
.disclaimer{font-size:12.5px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}
.footer{margin-top:40px;font-size:12px;color:var(--muted);text-align:center;letter-spacing:.08em}

@media (prefers-reduced-motion: reduce){
  *{transition:none!important;animation:none!important}
}
