:root {
  /* ── カラー（ラグジュアリー・フェミニン） ── */
  --color-berry:     #6D2E46;
  --color-rose:      #A26769;
  --color-rosegold:  #C9917B;
  --color-gold:      #B8956A;
  --color-cream:     #FBF5F0;
  --color-dark:      #2D1F2D;
  --color-text:      #3A2A3A;
  --color-muted:     #7A6A7A;
  --color-light:     #F5EEE9;
  --color-white:     #FFFFFF;
  --color-line-green: #06C755;

  /* ── フォント ── */
  --font-heading:  'Shippori Mincho', serif;
  --font-body:     'Noto Sans JP', sans-serif;
  --font-accent:   'Cormorant Garamond', serif;

  /* ── フォントサイズ ── */
  --fs-xs:   0.75rem;
  --fs-sm:   0.875rem;
  --fs-base: 0.9375rem;
  --fs-lg:   1.125rem;
  --fs-xl:   1.25rem;
  --fs-2xl:  1.5rem;
  --fs-3xl:  1.875rem;
  --fs-4xl:  2.25rem;
  --fs-5xl:  3rem;

  /* ── スペーシング ── */
  --section-py:     5rem;
  --section-py-lg:  7rem;
  --container-max:  1100px;
  --container-px:   1.5rem;

  /* ── その他 ── */
  --radius:     16px;
  --radius-lg:  20px;
  --shadow-sm:  0 2px 8px rgba(45,31,45,0.04);
  --shadow-md:  0 8px 24px rgba(45,31,45,0.07);
  --shadow-lg:  0 16px 48px rgba(45,31,45,0.1);
  --transition: 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

@media (min-width: 768px) {
  :root {
    --section-py: var(--section-py-lg);
    --container-px: 2.5rem;
  }
}
