/* 全6ページ共通の書体設定：2026-10-02 */
:root {
  --font-body: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  --font-heading: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif CJK JP", serif;
}
body { font-family: var(--font-body); font-size: 16px; line-height: 1.9; }
h1, h2 {
  font-family: var(--font-heading);
  font-weight: 600;
  letter-spacing: .035em;
  line-height: 1.55;
  overflow-wrap: anywhere;
  word-break: normal;
}
h1 em, h2 em { font-family: inherit; font-style: normal; }
h3, h4, nav, button, input, select, textarea, .btn, .button,
.brand, .amount, .yen, .price-row, .payment, .free {
  font-family: var(--font-body);
}
button, input, select, textarea { font-size: inherit; }
.gentle-title { white-space: normal; }
main p { line-height: 1.9; }
@media (max-width: 640px) {
  h1, h2 { letter-spacing: .015em; }
}

/* 特徴の見出しを広い画面で1行に表示 */
@media (min-width: 900px) {
  .treatment-heading { max-width: 1080px; }
  .treatment-heading h2 { font-size: clamp(28px, 3.5vw, 40px); white-space: nowrap; }
}

/* ご相談の見出しを広い画面で1行に表示 */
@media (min-width: 900px) {
  .consultation-heading { max-width: 1080px; }
  .consultation-heading h2 { font-size: clamp(28px, 3.5vw, 40px); white-space: nowrap; }
}

/* 2026-10-02 見出しの折り返し修正：画面幅ではなく見出し領域に合わせる */
.treatment-heading, .consultation-heading { max-width:1080px; container-type:inline-size; }
@media (min-width:600px) {
  .treatment-heading h2, .consultation-heading h2 {
    font-size: min(40px, 3.8vw);
    font-size: min(40px, 4.3cqi);
    letter-spacing: .015em;
    white-space: nowrap;
  }
}
