/**
 * グローバルスタイル・デザイントークン
 * DESIGN_TOKENS.md / CODING_RULES.md に準拠
 */

:root {
  /* Primary green */
  --senmon-color-primary: #009966;
  --senmon-color-primary-90: #005834;
  --senmon-color-primary-80: #007849;
  --senmon-color-primary-70: #008955;
  --senmon-color-primary-60: #009862;
  --senmon-color-primary-50: #09AA6D;
  --senmon-color-primary-40: #44B782;
  --senmon-color-primary-30: #69C397;
  --senmon-color-primary-20: #96D3B4;
  --senmon-color-primary-10: #BFE5D1;
  --senmon-color-primary-5: #E5F4EC;

  /* Secondary yellow */
  --senmon-color-secondary-90: #FF790A;
  --senmon-color-secondary-80: #FF9712;
  --senmon-color-secondary-70: #FFA816;
  --senmon-color-secondary-60: #FFBB1A;
  --senmon-color-secondary-50: #FFC921;
  --senmon-color-secondary-40: #FFD136;
  --senmon-color-secondary-30: #FFDB58;
  --senmon-color-secondary-20: #FFE488;
  --senmon-color-secondary-10: #FEEFB6;
  --senmon-color-secondary-5: #FFF9E2;

  /* Gray */
  --senmon-color-gray-90: #1B1B1B;
  --senmon-color-gray-80: #3B3B3B;
  --senmon-color-gray-70: #5A5A5A;
  --senmon-color-gray-60: #6D6D6D;
  --senmon-color-gray-50: #959595;
  --senmon-color-gray-40: #B5B5B5;
  --senmon-color-gray-30: #D9D9D9;
  --senmon-color-gray-20: #E9E9E9;
  --senmon-color-gray-10: #F2F2F2;
  --senmon-color-gray-5: #F9F9F9;

  /* Black / White */
  --senmon-color-black: #000000;
  --senmon-color-white: #ffffff;

  /* Caution */
  --senmon-color-caution-red-100: #EF0000;
  --senmon-color-caution-red-10: #FFF6F6;
  --senmon-color-caution-blue-100: #1E90FF;

  /* シャドウ（Secondary/70 の 20% 透明度・固定ボタン用） */
  --senmon-shadow-secondary-70-20: rgba(255, 168, 22, 0.2);

  /* レスポンシブ */
  --senmon-content-max-width: 960px;
  --senmon-bp-tb: 959px;
  --senmon-bp-sp: 600px;
  /* ページ左右ガター（student-benefits 基準・コンテンツと画面端の間） */
  --senmon-page-gutter-x: 24px;
  /* サブページヒーロー PC 左右インセット Figma 1355-10284 等（px-[120px]） */
  --senmon-hero-pc-padding-x: 120px;
  /* サブページヒーロー TB 左右インセット Figma 1573-32120 等（px-[24px]） */
  --senmon-hero-tb-padding-x: 24px;
  /* サブページヒーロー SP 左右インセット Figma 1573-32123 等（px-[24px]） */
  --senmon-hero-sp-padding-x: 24px;

  /* トランジション */
  --senmon-transition-duration: 300ms;
  --senmon-transition-timing: ease-out;
  --senmon-transition: 300ms ease-out;

  /* ヘッダードロワー（ハンバーガー）開閉：やや長め・イージングでスムーズに */
  --senmon-drawer-transition-duration: 620ms;
  --senmon-drawer-transition-timing: cubic-bezier(0.32, 0.72, 0, 1);
  --senmon-drawer-transition: 620ms cubic-bezier(0.32, 0.72, 0, 1);

  /* フォント */
  --senmon-font-nav: 'Quicksand', sans-serif;
  --senmon-font-hero: 'Barlow', sans-serif;
  --senmon-font-badge: 'Zen Maru Gothic', sans-serif;

  /* ヒーローグラデーション（緑→黄・左→右） */
  --senmon-hero-gradient: linear-gradient(90deg, #07BD7B 0%, #F5FB5A 100%);
  /* Courses ページヒーロー見出し（黄→緑・右→左）Figma -90deg, 0% #F5FB5A, 100% #07BD7B */
  --senmon-courses-hero-title-gradient: linear-gradient(-90deg, rgba(245, 251, 90, 1) 0%, rgba(7, 189, 123, 1) 100%);
  /* Courses ヒーロー背景オーバーレイ（Gray/90 30%）Figma */
  --senmon-courses-hero-overlay: rgba(27, 27, 27, 0.3);
  /* Courses ページコンテンツセクション背景（黄→緑 縦 10%）Figma 840-5546 gradation/10 */
  --senmon-courses-section-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);
  /* その他のコースセクション背景（黄→緑 縦 10%）Figma 1045-7917 */
  --senmon-courses-other-courses-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);
  /* 3D プログラムの特徴セクション背景（黄→緑 縦 10%）Figma 966-6366 gradation/10 */
  --senmon-courses-3d-program-features-bg: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);
  /* PCヘッダー　アコーディオン展開背景 */
  --senmon-courses-header-accordion-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);

  /* ヒーロー下セクション背景（薄いクリーム緑ベース） */
  --senmon-below-hero-bg: #F9FAF4;
  /* 黄→緑・縦グラデーション ごく控えめ */
  --senmon-below-hero-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.08) 0%, rgba(7, 189, 123, 0.08) 100%);

  /* ヒーロー下セクション グリッド画像（60px 間隔・白線） */
  --senmon-below-hero-pattern-image: url('../images/common/方眼背景.svg');

  /* キャリアサポートカード（黄→緑・縦グラデーション 10％） */
  --senmon-career-card-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);
  /* キャリアサポート／オープンキャンパス（ヒーロー下）カードのホバー背景（同一） */
  --senmon-career-card-hover-bg: linear-gradient(180deg, rgba(245, 251, 90, 0.4) 0%, rgba(7, 189, 123, 0.4) 100%);
  /* ヒーロー下 View More ホバー（白ピル＋オレンジ）のトランジション */
  --senmon-below-hero-hover-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --senmon-below-hero-hover-duration: 400ms;

  /* NEWS セクション背景（パターン + 黄→緑グラデーション 10％） */
  --senmon-news-bg-gradient: linear-gradient(180deg, rgba(245, 251, 90, 0.1) 0%, rgba(7, 189, 123, 0.1) 100%);
}

/* ベース */
.senmon-school-body {
  margin: 0;
  padding-top: 90px;
  font-family: sans-serif;
  color: var(--senmon-color-gray-90);
  background-color: var(--senmon-color-white);
}

.senmon-school-container {
  max-width: var(--senmon-content-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--senmon-page-gutter-x);
  padding-right: var(--senmon-page-gutter-x);
}



@media (max-width: 959px) {
  :root {
    --senmon-page-gutter-x: 16px;
  }
}

@media (max-width: 600px) {
  .senmon-school-body {
    padding-top: 60px;
    padding-bottom: 87px;
  }
}