/* ヘブンズドア宮崎 opt LP — 案A/B共通の土台（374px固定カラム） */
:root {
  --col: 374px;
  --gut: 24px;
  --wine: #7a1d45;
  --rose: #c8346f;
  --ink: #3b3035;
  --ink-sub: #6f6266;
  --blush: #fcf6f3;
  --pink: #f9edf1;
  --line: #e8d3db;
  --sans: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  --serif: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: #efe6e3;
  color: var(--ink);
  font-family: var(--sans);
  font-size: 15px;
  line-height: 1.9;
  letter-spacing: .04em;
}
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3, p, ul, ol { margin: 0; padding: 0; }
ul, ol { list-style: none; }
strong { font-weight: 700; }
em { font-style: normal; }

.page {
  width: 100%;
  max-width: var(--col);
  margin: 0 auto;
  background: #fff;
  overflow: hidden;
}
.sr-only {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.fv img { width: 100%; }

section { padding: 48px var(--gut); }

/* 本文：句点ごとに段落、段落間に空行1行相当 */
.body p + p { margin-top: 1.9em; }
.body + .body { margin-top: 1.9em; }
.small { font-size: 12px; line-height: 1.7; color: var(--ink-sub); }
.center { text-align: center; }

/* CTA（非追従・ページカラム全幅で揃える） */
.cta { margin: 36px calc(var(--gut) * -1) 0; padding: 0 var(--gut); text-align: center; }
.cta__btn { display: block; width: 100%; max-width: 326px; margin: 0 auto; }
.cta__btn img { width: 100%; }
.cta__btn:focus-visible { outline: 3px solid var(--rose); outline-offset: 4px; }
.cta__note { margin-top: 8px; font-size: 12px; line-height: 1.6; color: var(--ink-sub); letter-spacing: .02em; }

.foot { padding: 20px var(--gut) 28px; text-align: center; font-size: 11px; color: var(--ink-sub); }

/* 名前・所要時間は行の途中で割らない（2026-11-13） */
.nw { white-space: nowrap; }
