@charset "UTF-8";

/* ========================================
   CSS変数（カスタムプロパティ）定義
   サイト全体のデザイントークンを一元管理
   ======================================== */
:root {
  /* ========================================
     カラーパレット
     ======================================== */

  /* プライマリカラー（ブランドカラー: オレンジ） */
  --color-primary: #faa81c;
  --color-primary-light: #fff8e1;
  --color-primary-dark: #f58c00;
  --color-primary-hover: #f8ab00;

  /* セカンダリカラー（アクセント: グリーン） */
  --color-secondary: #8bbf15;
  --color-secondary-dark: #2e7d32;
  --color-secondary-light: #4caf50;

  /* テキストカラー */
  --color-text: #444;
  --color-text-dark: #333;
  --color-text-light: #666;
  --color-text-brown: #55473d;
  --color-text-muted: #888;

  /* 背景カラー */
  --color-bg: #fff;
  --color-bg-cream: #fff8e1;
  --color-bg-gray: #f8f9fa;
  --color-bg-light: #f5f5f5;

  /* ボーダーカラー */
  --color-border: #e7e7e7;
  --color-border-light: #e0e0e0;
  --color-border-dashed: #e0d6cc;

  /* 状態カラー */
  --color-success: #4caf50;
  --color-warning: #ff9800;
  --color-error: #ff6b6b;
  --color-danger: #d32f2f;

  /* ========================================
     シャドウ
     ======================================== */
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
  --shadow-md: 4px 4px 6px #ccc;
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.1);
  --shadow-card: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-hover: 0 6px 20px rgba(0, 0, 0, 0.12);

  /* ========================================
     フォント
     ======================================== */
  --font-primary: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  --font-rounded: "M PLUS Rounded 1c", sans-serif;

  /* フォントサイズ */
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-md: 1.125rem;
  --font-size-lg: 1.25rem;
  --font-size-xl: 1.5rem;
  --font-size-2xl: 2rem;
  --font-size-3xl: 2.5rem;

  /* ========================================
     スペーシング
     ======================================== */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;
  --spacing-3xl: 4rem;

  /* ========================================
     レイアウト
     ======================================== */
  --header-height-pc: 100px;
  --header-height-sp: 80px;
  --content-max-width: 1200px;

  /* ========================================
     ボーダー半径
     ======================================== */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 16px;
  --radius-pill: 50px;
  --radius-circle: 50%;

  /* ========================================
     トランジション
     ======================================== */
  --transition-fast: 0.2s ease;
  --transition-base: 0.3s ease;
  --transition-slow: 0.5s ease;

  /* ========================================
     z-index
     ======================================== */
  --z-dropdown: 100;
  --z-sticky: 1000;
  --z-fixed: 1000;
  --z-modal-backdrop: 99998;
  --z-modal: 99999;
  --z-tooltip: 100000;
}
