/* AOBA CLEAN（架空）の設計の値。カンプの実測（utsushi comp → tokens.from-comp.css・site_fidelity）から起こした値。
   書体はカンプと同じ Noto Sans JP だけ（ほかの書体は足さない）。
   Google Fonts: <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;800;900&display=swap" rel="stylesheet">
   大きさは「スマホ 375px のとき → PC 1440px のとき（カンプの値）」をなめらかにつなぐ */
:root {
  --color-brand: #0558f7;
  --color-brand-strong: #0444c4;
  --color-brand-button: #0558f7;
  --color-on-brand: #ffffff;
  --color-cta: #e42228;
  --color-cta-strong: #c5141a;
  --color-price: #f21d22;
  --color-heading: #031c4a;
  --color-text: #1f3456;
  --color-text-sub: #3d4d66;
  --color-text-muted: #66738a;
  --color-nav: #5f6d84;
  --color-surface: #ffffff;
  --color-surface2: #eaf6fe;
  --color-surface3: #f4f9ff;
  --color-border: #dfe7f1;
  --color-border-strong: #b9c6d8;
  --color-star: #f8b500;
  --color-danger: #c62828;
  --color-focus: #ff9e1b;

  --font-body: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --font-heading: var(--font-body);
  --fw-body: 500;
  --fw-heading: 700;
  --fw-strong: 700;

  /* 375px → 1440px（1065px の間で直線につなぐ） */
  --fl: (100vw - 375px) / 1065;
  --fs-body: clamp(15px, calc(15px + 2 * var(--fl)), 17px);
  --fs-small: 13px;
  --fs-h1: clamp(33px, calc(33px + 30 * var(--fl)), 63px);
  --fs-h2: clamp(24px, calc(24px + 10.5 * var(--fl)), 34.5px);
  --fs-h3: clamp(20px, calc(20px + 9 * var(--fl)), 29px);
  --fs-lead: clamp(17px, calc(17px + 13.8 * var(--fl)), 30.8px);
  --lh-body: 1.75;
  --lh-heading: 1.3;
  --ls-body: 0.04em;
  --ls-heading: 0.04em;

  --container: 1344px;
  --container-narrow: 1192px;
  --gutter: clamp(16px, 3.4vw, 48px);
  --section-tight: clamp(28px, 2.6vw, 38px);
  --section-normal: clamp(44px, 3.4vw, 48px);

  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 14px;
  --radius-button: 999px;
  --shadow-card: 0 1px 3px rgb(3 28 74 / 0.05), 0 6px 22px rgb(3 28 74 / 0.06);
  --shadow-cta: 0 6px 16px rgb(228 34 40 / 0.26);

  --dur-fast: 0.18s;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
}
