/* ===== 色（サイト全体の色はここだけで決める） ===== */
:root{
  --ls-green:           #2b8a62; /* メインの緑 */
  --ls-green-strong:    #1f7a52; /* ボタン・強調の緑 */
  --ls-green-deep:      #2b6f50; /* 濃い緑の見出し */
  --ls-green-soft:      #6fb394; /* やわらかい緑 */
  --ls-green-pale:      #7cc4a0; /* 淡い緑 */
  --ls-green-mist:      #9fd3b8; /* ごく淡い緑 */
  --ls-line:            #cfe9db; /* 緑の枠線 */
  --ls-line-gray:       #e3ece7; /* うすい区切り線 */
  --ls-bg:              #e9f8f0; /* 薄い緑の背景 */
  --ls-bg-2:            #f2faf6; /* さらに薄い緑の背景 */
  --ls-bg-3:            #f6faf7; /* ほぼ白の緑の背景 */
  --ls-line-brand:      #06c755; /* LINEの緑 */
  --ls-line-brand-dark: #04a045; /* LINEの緑（濃い） */
  --ls-cta:             #16a352; /* 追従バーの緑 */
  --ls-cta-light:       #22c167; /* 追従バーの緑（明るい） */
  --ls-ink:             #2b3a33; /* 見出しの文字 */
  --ls-ink-2:           #3a4a42; /* 本文の文字 */
  --ls-ink-sub:         #5f7067; /* 補足の文字 */
  --ls-ink-sub-2:       #6b7f75; /* 補足の文字（うすめ） */
  --ls-ink-mute:        #8a958f; /* 注記の文字 */
  --ls-ink-mute-2:      #a7b0ab; /* 注記の文字（うすめ） */
  --ls-beige:           #fbf7f0; /* ベージュの背景 */
  --ls-beige-line:      #eadfcf; /* ベージュの枠線 */
  --ls-beige-line-2:    #efe6d8; /* ベージュの枠線（うすめ） */
  --ls-beige-accent:    #f6dfb8; /* ベージュの強調 */
  --ls-gold:            #b08a5a; /* 金茶 */
  --ls-gold-light:      #e9b872; /* 金茶（明るい） */
  --ls-warm-ink:        #3d3a35; /* ベージュ欄の文字 */
  --ls-warm-ink-sub:    #6b665e; /* ベージュ欄の補足の文字 */
  --ls-warm-ink-mute:   #7a6f62; /* ベージュ欄の注記の文字 */
  --ls-red:             #e53935; /* 価格などの赤 */
  --ls-marker:          #fff2a8; /* 黄色マーカー */
  --ls-marker-2:        #fff59d; /* 黄色（追従バーの価格） */
  --ls-gray-900:        #222222; /* 濃いグレーの文字 */
  --ls-gray-800:        #333333; /* グレーの文字 */
  --ls-gray-600:        #666666; /* 補足のグレー */
  --ls-gray-500:        #888888; /* うすいグレー */
  --ls-gray-400:        #999999; /* さらにうすいグレー */
  --ls-gray-line:       #d9dedb; /* グレーの枠線 */
  --ls-gray-line-2:     #cfd6d2; /* グレーの枠線（濃いめ） */
  --ls-gray-bg:         #f4f5f4; /* グレーの背景 */
  --ls-gray-bg-2:       #f2f2f2; /* グレーの背景（うすめ） */
  --ls-gray-700:        #555555; /* 本文の補足の文字 */
  --ls-gray-550:        #777777; /* 注記の文字（グレー） */
  --ls-gray-300:        #bdbdbd; /* 引用の線 */
  --ls-gray-250:        #cccccc; /* グレーの枠線（記事） */
  --ls-gray-line-3:     #e5e5e5; /* うすいグレーの枠線 */
  --ls-gray-line-4:     #eeeeee; /* ごくうすいグレーの枠線 */
  --ls-gray-bg-3:       #fafafa; /* ほぼ白のグレーの背景 */
  --ls-gray-bg-4:       #f7f7f5; /* 引用の背景 */
  --ls-gold-box-bg:     #fffaf3; /* 注意の囲みの背景 */
  --ls-gold-box:        #d9a441; /* 注意の囲みの線 */
  --ls-gold-box-ink:    #b07d1a; /* 注意の囲みの見出し */
  --ls-note-bg:         #f7f9fb; /* 研究の囲みの背景 */
  --ls-note:            #6b8fb0; /* 研究の囲みの線 */
  --ls-note-ink:        #3d5f80; /* 研究の囲みの見出し */
  --ls-text-red:        #ff0000; /* 本文の赤字 */
  --ls-text-blue:       #0000ff; /* 本文の青字 */
  --ls-text-blue-2:     #3366ff; /* 本文の青字（明るい） */
  --ls-cream:           #fbf8f1; /* クリームの背景 */
  --ls-cream-line:      #e6dfd0; /* クリームの点線 */
  --ls-green-white:     #f7fbf9; /* ほぼ白の緑（推薦の欄） */
  --ls-green-rgb:        43,138,98; /* メインの緑 rgba(var(--ls-green-rgb),.9) の形で使う */
  --ls-shadow-rgb:      40,90,70; /* 緑みの影 rgba(var(--ls-shadow-rgb),.1) の形で使う */
  --ls-shadow-warm-rgb: 120,90,50; /* ベージュ欄の影 rgba(var(--ls-shadow-warm-rgb),.1) の形で使う */
  --ls-shadow-dark-rgb: 0,0,0; /* 黒い影 rgba(var(--ls-shadow-dark-rgb),.1) の形で使う */
}

/* ----- スマホの追従予約バー ----- */
.ls-fixed-cta{display:none}
@media screen and (max-width:767px){
  body{padding-bottom:84px}
  .l-main-line-button_a{display:none!important}
  .ls-fixed-cta{display:flex;align-items:center;gap:10px;position:fixed;left:8px;right:8px;bottom:8px;z-index:9999;background:linear-gradient(180deg,var(--ls-cta-light),var(--ls-cta));border-radius:14px;padding:9px 12px;color:#fff;text-decoration:none;box-shadow:0 4px 14px rgba(var(--ls-shadow-dark-rgb),.25);font-family:"Noto Sans JP",sans-serif;line-height:1.3;transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .35s ease,opacity .35s ease}
  .ls-fixed-cta.is-show{transform:none;opacity:1;pointer-events:auto}
  .ls-fixed-cta__line-badge{flex:none;background:#fff;color:var(--ls-line-brand);font-weight:900;font-size:12px;border-radius:8px;padding:6px 7px;letter-spacing:.02em}
  .ls-fixed-cta__body{flex:1;min-width:0}
  .ls-fixed-cta__regular{display:block;font-size:11px;font-weight:bold;opacity:.95}
  .ls-fixed-cta__regular s{opacity:.85}
  .ls-fixed-cta__price{display:block;font-size:15px;font-weight:900;white-space:nowrap}
  .ls-fixed-cta__price b{font-size:22px;color:var(--ls-marker-2);margin:0 1px}
  .ls-fixed-cta__button{flex:none;background:#fff;color:var(--ls-cta);font-weight:900;font-size:13px;border-radius:999px;padding:8px 11px;white-space:nowrap}
}

/* ----- ヘッダー ----- */
.l-pc-header-h1--lp.l-pc-header-h1--lp{font-size: 34px}
.l-pc-header-h1__name.l-pc-header-h1__name{font-size: 50px}
.l-pc-header-cta-top--stacked.l-pc-header-cta-top--stacked{flex-direction: column; align-items: center; gap: 0; line-height: 1.45; font-size: 1.4rem}
.l-pc-header-cta-line-button--box.l-pc-header-cta-line-button--box{display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0 auto 8px; padding: 7px 10px; width: 382px; max-width: 100%; box-sizing: border-box; background: #fff; border-radius: 4px; color: var(--ls-line-brand); font-weight: bold; font-size: 16px; line-height: 1.3; text-decoration: none; box-shadow: 0 2px 0 rgba(var(--ls-shadow-dark-rgb),.15)}
.l-pc-header-cta-line-button__badge.l-pc-header-cta-line-button__badge{display: inline-block; padding: 2px 7px; background: var(--ls-line-brand); color: #fff; border-radius: 6px; font-size: 12px; font-weight: 900}
.l-pc-header-cta-line-button__accent.l-pc-header-cta-line-button__accent{color: var(--ls-red)}
.l-pc-header-cta-line-button__arrow.l-pc-header-cta-line-button__arrow{font-size: 18px}
.p-pc-nav_ul--9col.p-pc-nav_ul--9col{grid-template-columns: repeat(9, 1fr)}
