/* =================================================================
   beige.css ―― クリーム×パステル「上品ポップ」テーマ（見本用）
   設計：色彩学ベース
     ・トーン統一  … パステル群は明度≈86% / 彩度≈45% に揃える
     ・60-30-10    … 背景(クリーム)60 / カード地(オフ白)30 / アクセント(コーラル)10
     ・アナロガス＋補色 … 暖色の流れ(コーラル→ピーチ→レモン)に
                          寒色(ミント・ラベンダー)を補色アクセントで添える
     ・文字は純黒を避けたディープモカ（全体の柔らかさを保つ）
   body に class="theme-beige" を付けたページにだけ適用。
   ================================================================= */

.theme-beige {
  /* --- ベース（土台60%） --- */
  --cream:      #FBF4E4;   /* 背景：暖色・高明度のクリーム */
  --cream-2:    #F5ECD8;   /* 一段濃いクリーム（セクション差） */
  --card:       #FFFCF7;   /* カード地（オフホワイト・30%） */
  --line:       #EFE3CC;   /* 罫線・境界 */

  /* --- 文字 --- */
  --ink-b:      #4A3B30;   /* 主文字：ディープモカ */
  --ink-b-soft: #8A7B69;   /* 補助文字 */
  --ink-pop:    #4A3B30;   /* パステル面上の文字（共通でモカ） */

  /* --- パステル群（同一トーン：淡く・明るく揃える） --- */
  --coral:      #F4A088;   /* アクセント主役（CTA）：コーラル */
  --coral-d:    #EC8A6C;   /* コーラル・ホバー */
  --peach:      #FBC9A4;   /* ピーチ */
  --lemon:      #FBE2A0;   /* レモン */
  --mint:       #B6E3CE;   /* ミント（補色アクセント） */
  --lavender:   #D8CBEC;   /* ラベンダー（補色アクセント） */
  --sky:        #BFE0EC;   /* スカイ（予備） */

  /* やわらかい影（おしゃれな浮遊感） */
  --shadow-pop:   0 10px 24px rgba(74,59,48,.10);
  --shadow-pop-h: 0 16px 36px rgba(74,59,48,.16);
  --radius-soft:  20px;
}

/* 全体の地色 */
.theme-beige body,
body.theme-beige { background: var(--cream); color: var(--ink-b); overflow-x: hidden; }

/* 下層ページの見出し帯（page-hero）をベージュ調に */
.theme-beige .page-hero { color: var(--ink-b); }
.theme-beige .page-hero__bg {
  background:
    radial-gradient(60% 80% at 80% 20%, rgba(244,160,136,.18), transparent 60%),
    radial-gradient(70% 80% at 15% 90%, rgba(216,203,236,.20), transparent 60%),
    linear-gradient(160deg, var(--cream) 0%, var(--cream-2) 100%);
}
.theme-beige .page-hero__bg::after { opacity: .04; }
.theme-beige .page-hero .en { color: var(--coral-d); }
.theme-beige .page-hero h1 { color: var(--ink-b); }
.theme-beige .page-hero .lead { color: var(--ink-b-soft) !important; }
.theme-beige .breadcrumb { color: var(--ink-b-soft); }
.theme-beige .breadcrumb a:hover { color: var(--coral-d); }

/* メニュー料金表（menu/datsumo）をベージュ調に */
.theme-beige .menu-card-wrap { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); }
.theme-beige .menu-block__title::before { background: linear-gradient(var(--coral), var(--peach)); }
.theme-beige .price-row { border-bottom-color: var(--line); }
.theme-beige .price-row__price { color: var(--coral-d); }
.theme-beige .price-row--rank1 { background: linear-gradient(120deg, rgba(244,160,136,.14), transparent); border-radius: var(--radius); padding-left: 12px; padding-right: 12px; }
.theme-beige .price-row--rank1 .price-row__rank { background: var(--coral); color: #fff; }
.theme-beige .price-row--rank2 .price-row__rank { background: var(--lavender); color: var(--ink-b); }
.theme-beige .price-row--rank3 .price-row__rank { background: var(--sky); color: var(--ink-b); }
.theme-beige .price-was { color: var(--ink-b-soft); }
.theme-beige .process-q { color: var(--coral-d); }
.theme-beige .process-q .ico::before, .theme-beige .process-q .ico::after { background: var(--coral); }
.theme-beige .process-a__total { border-bottom-color: var(--line); }
.theme-beige .process-a__total strong { color: var(--coral-d); }
.theme-beige .process-timeline::before { background: var(--line); }
.theme-beige .process-step::before { background: var(--coral); }
.theme-beige .process-step__no { color: var(--coral-d); }
.theme-beige .process-step__time { background: var(--cream-2); color: var(--coral-d); }
.theme-beige .process-step__menu { color: var(--coral-d); }
.theme-beige .plan-table thead th { background: var(--cream-2); color: var(--coral-d); }
.theme-beige .plan-table td { border-bottom-color: var(--line); }
.theme-beige .plan-table .yen { color: var(--coral-d); }
.theme-beige .photo-figure { box-shadow: var(--shadow-pop); }
.theme-beige .photo-figure figcaption { background: var(--card); color: var(--ink-b); }
.theme-beige .ba-figure .ba-labels .after { background: var(--coral); color: #fff; }

/* セクション背景 */
.theme-beige .section--tint { background: var(--card); }
.theme-beige .section--teal { background: var(--cream-2); }
.theme-beige .section-head .en { color: var(--coral-d); letter-spacing: .35em; }
.theme-beige .deco-line { background: linear-gradient(90deg, var(--coral), var(--peach)); }
.theme-beige .section-head .lead { color: var(--ink-b-soft); }

/* ---- ヒーロー（クリーム地・パステルの光） ---- */
.theme-beige .hero.hero--pop { color: var(--ink-b); }
.theme-beige .hero--pop .hero__bg {
  background:
    radial-gradient(48% 42% at 12% 14%, rgba(244,160,136,.20), transparent 62%),
    radial-gradient(46% 42% at 88% 16%, rgba(216,203,236,.22), transparent 62%),
    radial-gradient(60% 55% at 82% 100%, rgba(182,227,206,.20), transparent 64%),
    var(--cream);
}
.theme-beige .hero--pop .hero__bg::after {
  opacity: .03;
  background: repeating-linear-gradient(45deg, var(--coral) 0 14px, transparent 14px 48px);
}
/* =================================================================
   ヒーロー：紳士を背景に「うっすら浮かび上がる」上質デザイン
   写真は右に大きく、左→右へクリームのグラデで溶かして文字を守る。
   ================================================================= */
.theme-beige .hero.hero--pop { position: relative; min-height: 88svh; }

/* 背景の人物写真（右寄せ・ほどよい存在感）
   ※hero-man.jpg は人物が画面中央〜やや左。PCでは右側に人物が来るよう位置調整 */
.theme-beige .hero-bg-photo {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: 22% 26%;
  z-index: 0; opacity: .85;
}
/* クリームのグラデ・オーバーレイ（左ほど濃く＝文字くっきり／右は写真が見える） */
.theme-beige .hero.hero--pop::before {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    linear-gradient(90deg, var(--cream) 0%, rgba(251,244,228,.92) 30%, rgba(251,244,228,.55) 52%, rgba(251,244,228,.12) 72%, transparent 100%),
    linear-gradient(0deg, var(--cream) 0%, transparent 22%);
}
/* 文字コンテナは最前面。左寄せで読ませる */
.theme-beige .hero--pop .hero__inner {
  position: relative; z-index: 2; background: none;
  max-width: var(--container);
}
.theme-beige .hero-col-text,
.theme-beige .hero--pop .hero__inner > * { position: relative; }
.theme-beige .hero--pop .hero__badge {
  display: inline-flex; background: rgba(255,253,248,.92); box-shadow: var(--shadow-pop);
}

/* PC：左右分割（左＝文字ブロック／右＝男性写真をくっきり） */
@media (min-width: 880px) {
  .theme-beige .hero.hero--pop { min-height: 80svh; }
  /* 写真は右半分。四角い輪郭を消し、四辺をクリームへソフトに溶かす（プロの馴染ませ） */
  .theme-beige .hero-bg-photo {
    left: auto; right: 0; width: 54%; height: 100%;
    object-position: 42% 16%; opacity: 1;
    /* 上下左を羽のようにフェード＋全体を楕円ビネットで囲む → 四角さが消える */
    -webkit-mask-image:
      linear-gradient(90deg, transparent 0%, #000 34%),
      linear-gradient(180deg, transparent 0%, #000 20%, #000 80%, transparent 100%),
      radial-gradient(120% 92% at 62% 44%, #000 52%, transparent 88%);
    -webkit-mask-composite: source-in;
    mask-image:
      linear-gradient(90deg, transparent 0%, #000 34%),
      linear-gradient(180deg, transparent 0%, #000 20%, #000 80%, transparent 100%),
      radial-gradient(120% 92% at 62% 44%, #000 52%, transparent 88%);
    mask-composite: intersect;
  }
  /* 左の文字エリアはクリーム無地で読ませる（下端もなじませる） */
  .theme-beige .hero.hero--pop::before {
    background: linear-gradient(0deg, var(--cream) 0%, transparent 16%);
  }
  /* 文字は左半分に配置 */
  .theme-beige .hero--pop .hero__inner { text-align: left; }
  .theme-beige .hero--pop .hero__badge,
  .theme-beige .hero--pop h1,
  .theme-beige .hero--pop .hero__sub,
  .theme-beige .hero--pop .hero__actions,
  .theme-beige .hero--pop .pop-stats { margin-left: 0; margin-right: auto; max-width: 480px; }
}

/* 中間幅・スマホ（〜879px）：PC同様「うっすら背景から紳士が浮かぶ」繊細さを保つ
   写真は薄く全面に。文字側は強めのクリームベールでしっかり読ませる。 */
@media (max-width: 879px) {
  .theme-beige .hero.hero--pop { min-height: 86svh; padding-top: calc(var(--header-h) + 20px); padding-bottom: 44px; }
  /* 写真は全面・うっすら（濃さ62%）。横=30%（中央寄りに）/縦=16% */
  .theme-beige .hero-bg-photo {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: cover; object-position: 30% 16%; opacity: .62;
  }
  /* 縦方向のクリームベール：上は写真を見せ、中〜下を濃くして文字をくっきり */
  .theme-beige .hero.hero--pop::before {
    display: block;
    background:
      linear-gradient(180deg, rgba(251,244,228,.12) 0%, rgba(251,244,228,.5) 42%, rgba(251,244,228,.85) 68%, var(--cream) 100%);
  }
  .theme-beige .hero--pop .hero__inner {
    position: relative; z-index: 2;
    display: flex; flex-direction: column; justify-content: flex-start; min-height: 0;
    text-align: center;
    align-items: center;
    /* 文字ブロックは上寄り。中央揃いの形のまま、全体をもう少し左へ */
    padding-top: 3svh;
    padding-right: 12%;
  }
  .theme-beige .hero--pop .hero__badge { margin: 0 auto 14px; }
  .theme-beige .hero--pop h1 { font-size: clamp(2rem, 8.5vw, 2.7rem); }
  .theme-beige .hero--pop .hero__sub { margin-left: auto; margin-right: auto; }
  .theme-beige .hero__actions { display: flex; justify-content: center; }
  .theme-beige .hero__actions .btn { flex: 1; }
  .theme-beige .pop-stats { max-width: 100%; margin-left: auto; margin-right: auto; }
  /* 長い文言のボタンが画面からはみ出さないよう、折り返し＆幅を抑える */
  .theme-beige .menu__more .btn,
  .theme-beige .btn--outline.btn--lg {
    white-space: normal; max-width: 100%; line-height: 1.5;
  }
}
/* 背景のパステル光（大きくぼかして上品に） */
.theme-beige .pop-blob { filter: blur(40px); opacity: .5; }
.theme-beige .pop-blob.b1 { background: var(--coral); }
.theme-beige .pop-blob.b2 { background: var(--lavender); }
.theme-beige .pop-blob.b3 { background: var(--mint); }

/* バッジ（やわらかい白カプセル＋淡い影。トゲのある黒フチはやめて上質に） */
.theme-beige .hero--pop .hero__badge {
  background: var(--card); color: var(--ink-b); border: 1px solid var(--line);
  box-shadow: var(--shadow-pop); transform: none; animation: none;
}
.theme-beige .hero--pop .hero__badge b { color: var(--coral-d); }

/* 見出し＋ピーチのマーカー（透過で上品に） */
.theme-beige .hero--pop h1 { color: var(--ink-b); text-shadow: none; }
.theme-beige .hero--pop h1 .accent { color: var(--coral-d); text-shadow: none; }
.theme-beige .hero--pop h1 .hl { color: var(--ink-b); }
.theme-beige .hero--pop h1 .hl::after {
  background: linear-gradient(120deg, var(--peach), var(--lemon));
  box-shadow: none; height: .38em; bottom: .06em; border-radius: 6px; opacity: .9;
}
.theme-beige .hero--pop .hero__sub { color: var(--ink-b-soft); font-weight: 500; }

/* ボタン（ピル型・コーラル塗り。影は色なじみのやわらか影で高級感） */
.theme-beige .btn--pop {
  background: var(--coral); color: #fff; border-radius: var(--radius-pill);
  box-shadow: 0 8px 20px rgba(244,160,136,.45);
}
.theme-beige .btn--pop:hover { background: var(--coral-d); transform: translateY(-2px); box-shadow: 0 12px 26px rgba(244,160,136,.55); }
.theme-beige .btn--pop:active { transform: translateY(0); box-shadow: 0 6px 14px rgba(244,160,136,.45); }
/* サブボタン：白地＋コーラル文字の上品ゴースト */
.theme-beige .btn--pop-line {
  background: var(--card); color: var(--coral-d); border: 1.5px solid var(--coral);
  border-radius: var(--radius-pill); box-shadow: var(--shadow-pop);
}
.theme-beige .btn--pop-line:hover { background: #fff; color: var(--coral-d); border-color: var(--coral-d); transform: translateY(-2px); box-shadow: var(--shadow-pop-h); }
.theme-beige .btn--pop-line:active { transform: translateY(0); }

.theme-beige .btn--primary { background: var(--coral); color: #fff; box-shadow: 0 8px 20px rgba(244,160,136,.42); }
.theme-beige .btn--primary:hover { background: var(--coral-d); color: #fff; }
.theme-beige .btn--outline { color: var(--coral-d); border-color: var(--coral); background: var(--card); }
.theme-beige .btn--outline:hover { background: var(--cream-2); }
.theme-beige .btn--gold { background: var(--lavender); color: #4a3a63; box-shadow: 0 8px 20px rgba(216,203,236,.5); }
.theme-beige .btn--gold:hover { background: #cbb9e6; }

/* 数字カード（パステル3色・同トーン／やわらか角丸＋淡い影。傾けず端正に） */
.theme-beige .pop-stat {
  border: none; box-shadow: var(--shadow-pop); border-radius: var(--radius-soft);
  backdrop-filter: none; transform: none !important;
}
.theme-beige .pop-stat.s1 { background: var(--peach); }
.theme-beige .pop-stat.s2 { background: var(--mint); }
.theme-beige .pop-stat.s3 { background: var(--lavender); }
.theme-beige .pop-stat b, .theme-beige .pop-stat span { color: var(--ink-pop); }

/* ヘッダー（明るい背景なので文字は濃いモカ） */
.theme-beige.has-pop-hero .header:not(.scrolled) .logo__text b,
.theme-beige.has-pop-hero .header:not(.scrolled) .logo__text small,
.theme-beige.has-pop-hero .header:not(.scrolled) .nav > a { color: var(--ink-b); }
.theme-beige.has-pop-hero .header:not(.scrolled) .hamburger span { background: var(--ink-b); }
.theme-beige .nav a:hover { color: var(--coral-d); }
.theme-beige .nav a::after { background: var(--coral); }
.theme-beige .header.scrolled { background: rgba(251,244,228,.92); }

/* 施術の様子（実写真2枚） */
.theme-beige .treatment__grid {
  display: grid; gap: 20px; grid-template-columns: 1fr;
}
.theme-beige .treatment__grid .photo-figure { box-shadow: var(--shadow-pop); border-radius: var(--radius-soft); }
.theme-beige .treatment__grid .photo-figure img { aspect-ratio: 4 / 3; }
.theme-beige .treatment__grid figcaption {
  background: var(--card); color: var(--ink-b); font-weight: 700; font-size: .9rem;
}
@media (min-width: 720px) {
  .theme-beige .treatment__grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}

/* コンセプト */
.theme-beige .concept__copy h2 .mark { background: linear-gradient(transparent 62%, var(--lemon) 62%); }
.theme-beige .concept__copy .sign { color: var(--coral-d); }
.theme-beige .concept__visual { background: linear-gradient(150deg, var(--coral) 0%, var(--coral-d) 100%); }
.theme-beige .concept__visual .badge-circle { background: var(--card); color: var(--coral-d); }
.theme-beige .concept__visual .badge-circle span { color: var(--ink-b-soft); }
/* コンセプトに実写真を使う場合 */
.theme-beige .concept__visual--photo { background: none; padding: 0; overflow: visible; }
.theme-beige .concept__visual--photo img {
  width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius-lg);
  box-shadow: var(--shadow-pop-h); min-height: 300px;
}
.theme-beige .concept__visual--photo .concept__visual-badge {
  position: absolute; left: -14px; bottom: -14px;
  background: var(--card); border-radius: 16px; padding: 12px 18px; text-align: center;
  box-shadow: var(--shadow-pop); border: 2px solid var(--coral);
}
.theme-beige .concept__visual--photo .concept__visual-badge b {
  display: block; font-family: var(--serif); font-size: 1.6rem; font-weight: 800; color: var(--coral-d); line-height: 1;
}
.theme-beige .concept__visual--photo .concept__visual-badge small { font-size: .68rem; color: var(--ink-b-soft); }

/* 各カード（オフ白地＋繊細な罫線＋やわらか影） */
.theme-beige .feature,
.theme-beige .menu-card,
.theme-beige .voice-card,
.theme-beige .staff-card,
.theme-beige .ehon-card,
.theme-beige .faq-item { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); }
.theme-beige .feature__icon { background: linear-gradient(140deg, var(--peach), var(--lemon)); color: #fff; }
.theme-beige .feature:hover .feature__icon { background: var(--coral); color: #fff; box-shadow: 0 10px 20px rgba(244,160,136,.4); }
.theme-beige .feature__no { color: var(--coral-d); }
.theme-beige .feature:hover, .theme-beige .menu-card:hover, .theme-beige .ehon-card:hover { box-shadow: var(--shadow-pop-h); }

/* 絵本カード（一覧） */
.theme-beige .ehon-card__no { background: rgba(74,59,48,.72); }
.theme-beige .ehon-card__date { color: var(--ink-b-soft); }
.theme-beige .ehon-card__hook { color: var(--ink-b-soft); }
.theme-beige .ehon-card__guest { background: var(--peach); color: #6a4326; }

/* こだわりカードに淡いパステルの上ボーダーでリズムを付ける（同トーンで統一感） */
.theme-beige .features__grid .feature { border-top: 4px solid var(--peach); }
.theme-beige .features__grid .feature:nth-child(2) { border-top-color: var(--mint); }
.theme-beige .features__grid .feature:nth-child(3) { border-top-color: var(--lavender); }
.theme-beige .features__grid .feature:nth-child(4) { border-top-color: var(--coral); }
.theme-beige .features__grid .feature:nth-child(5) { border-top-color: var(--lemon); }
.theme-beige .features__grid .feature:nth-child(6) { border-top-color: var(--sky); }

/* メニューカード見出し帯（パステルのグラデ） */
.theme-beige .menu-card__top { background: linear-gradient(120deg, var(--coral), var(--peach)); color: #fff; }
.theme-beige .menu-card--gold .menu-card__top { background: linear-gradient(120deg, var(--lavender), #b9a6da); color: #fff; }
.theme-beige .menu-card--entry .menu-card__top { background: linear-gradient(120deg, var(--sky), #9dd0e0); color: var(--ink-b); }
.theme-beige .menu-card__price { color: var(--coral-d); }
/* 看板メニュー（人気No.1）：他カードよりくっきり目立つ縁取りと濃いコーラルのリボン */
.theme-beige .menu-card--flagship { border-color: var(--coral); box-shadow: var(--shadow-pop-h); }
.theme-beige .menu-card--flagship .menu-card__top { background: linear-gradient(120deg, var(--coral-d), var(--coral)); }

/* お客様の声 */
.theme-beige .voice-card::before { color: var(--cream-2); }
.theme-beige .voice-card__stars { color: var(--coral); }

/* FAQ */
.theme-beige .faq-q .q { color: var(--coral-d); }
.theme-beige .faq-q .ico::before, .theme-beige .faq-q .ico::after { background: var(--coral); }

/* アクセス */
.theme-beige .info-table th { color: var(--coral-d); }
.theme-beige .info-table td .hours { color: var(--ink-b); }

/* 予約CTA（モカの帯で締めて、白文字をしっかり読ませる） */
.theme-beige .cta__bg { background: linear-gradient(150deg, #5C4A3C, #4A3B30 92%); }
.theme-beige .cta__bg::after { opacity: .05; }
.theme-beige .cta p { color: #efe6d6; }
.theme-beige .cta .btn--primary { background: var(--coral); color: #fff; }
.theme-beige .cta .btn--primary:hover { background: var(--coral-d); }
.theme-beige .cta .exit-link a { color: #efe6d6; }
.theme-beige .cta .exit-link a:hover { color: #fff; }

/* 暗色セクション */
.theme-beige .section--ink { background: #3a2f26; }

/* バーバーポール風ライン（パステルで軽やかに） */
.theme-beige .barber-line {
  background: repeating-linear-gradient(45deg,
    var(--coral) 0 12px, #fff 12px 24px, var(--lavender) 24px 36px, #fff 36px 48px);
}

/* モバイル下部バー（2026-07-14 LINE合流型：中央=LINEで予約は常に緑のまま・WEBは控えめ） */
.theme-beige .mobile-bar a.is-web { color: var(--coral-d); }
.theme-beige .mobile-bar a.is-tel { color: var(--coral-d); }

/* トップへ戻る */
.theme-beige .to-top { background: var(--coral); box-shadow: 0 8px 20px rgba(244,160,136,.45); }
.theme-beige .to-top:hover { background: var(--coral-d); }

/* スクロール進捗バー（パステルのグラデ） */
.theme-beige .scroll-progress {
  background: linear-gradient(90deg, var(--coral), var(--lavender), var(--mint));
  box-shadow: none;
}

/* === 「男なのに脱毛？」問いかけバンド === */
.theme-beige .ask-band { background: linear-gradient(160deg, #4A3B30, #3E3424); color: #f3ece0; }
.theme-beige .ask-band__inner { max-width: 760px; margin-inline: auto; text-align: center; }
.theme-beige .ask-band__q {
  font-family: var(--serif); font-size: clamp(1.4rem,5vw,2rem); font-weight: 700; color: #e9dcc8;
}
.theme-beige .ask-band__a {
  font-family: var(--serif); font-size: clamp(2.2rem,8vw,3.4rem); font-weight: 800; line-height: 1.2; margin-top: 6px;
}
.theme-beige .ask-band__a span { color: var(--coral); }
.theme-beige .ask-band__lead { margin: 20px auto 28px; color: #d8ccbb; font-size: .98rem; line-height: 2; }
.theme-beige .ask-band .btn--pop { background: var(--coral); color: #fff; }
.theme-beige .ask-band .btn--pop:hover { background: var(--coral-d); }
.theme-beige .ask-band__photo { margin: 28px auto 0; max-width: 320px; }
.theme-beige .ask-band__photo img {
  width: 100%; display: block; border-radius: var(--radius-soft); box-shadow: var(--shadow-pop);
  aspect-ratio: 4 / 3; object-fit: cover;
}
.theme-beige .ask-band__photo span { display: block; margin-top: 10px; font-size: .82rem; color: #d8ccbb; }

/* === お知らせ・キャンペーン === */
.theme-beige .news-list { max-width: 820px; margin: 0 auto; display: grid; gap: 12px; }
.theme-beige .news-item {
  display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
  background: var(--card); border: 1px solid var(--line); border-radius: 14px;
  padding: 16px 20px; box-shadow: var(--shadow-pop);
}
.theme-beige .news-date { font-family: var(--serif); font-weight: 800; color: var(--coral-d); font-size: .9rem; white-space: nowrap; }
.theme-beige .news-tag {
  background: var(--mint); color: #2f4a3c; font-size: .72rem; font-weight: 700;
  padding: 4px 12px; border-radius: 999px; white-space: nowrap;
}
.theme-beige .news-item:nth-child(2) .news-tag { background: var(--lavender); color: #463a63; }
.theme-beige .news-item:nth-child(3) .news-tag { background: var(--peach); color: #6a4326; }
.theme-beige .news-text { flex: 1; min-width: 200px; font-size: .92rem; color: var(--ink-b); }
@media (max-width: 560px) {
  .theme-beige .news-item { gap: 8px; }
  .theme-beige .news-text { min-width: 100%; }
}

/* 絵本 本編ページ（picture-book/<話ID>/） */
.theme-beige .story-body p { color: var(--ink-b); }
.theme-beige .story-img { box-shadow: var(--shadow-pop); background: var(--cream-2); }
.theme-beige .story-nav { border-top-color: var(--line); }
.theme-beige .story-nav a { color: var(--ink-b-soft); }
.theme-beige .story-nav a:hover { color: var(--coral-d); }

/* === クーポン（coupon.html） === */
.theme-beige .coupon-card { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); }
.theme-beige .coupon-card:hover { box-shadow: var(--shadow-pop-h); }
.theme-beige .coupon-card__badge { background: var(--coral); color: #fff; }
.theme-beige .coupon-card--any .coupon-card__badge { background: var(--mint); color: #2f4a3c; }
.theme-beige .coupon-card--always .coupon-card__badge { background: var(--lavender); color: #463a63; }
.theme-beige .coupon-card__price b { color: var(--coral-d); }
.theme-beige .coupon-card__off { background: var(--peach); color: #6a4326; }
.theme-beige .coupon-note { background: var(--cream-2); color: var(--ink-b-soft); }

/* === スタイル・施術例（menu.html） === */
.theme-beige .style-grid__item { box-shadow: var(--shadow-pop); }

/* === 30秒おすすめ診断（shindan.html・2026-07-12） === */
.theme-beige .shindan-dot { background: var(--line); }
.theme-beige .shindan-dot.is-active,
.theme-beige .shindan-dot.is-done { background: var(--coral); }
.theme-beige .shindan-back { color: var(--ink-b-soft); }
.theme-beige .shindan-back:hover { color: var(--coral-d); }
.theme-beige .shindan-opt { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); color: var(--ink-b); }
.theme-beige .shindan-opt:hover, .theme-beige .shindan-opt:focus-visible { box-shadow: var(--shadow-pop-h); border-color: var(--coral); }
.theme-beige .shindan-result__primary { background: var(--card); box-shadow: var(--shadow-pop); }
.theme-beige .shindan-result__badge { background: var(--coral); }
.theme-beige .shindan-result__price { color: var(--coral-d); }
.theme-beige .shindan-result__meta,
.theme-beige .shindan-result__reason,
.theme-beige .shindan-result__note { color: var(--ink-b-soft); }
.theme-beige .shindan-result__secondary { background: var(--cream-2); }
.theme-beige .shindan-result__link { color: var(--coral-d); }

/* === 脱毛料金シミュレーター（datsumo.html #datsumo-simulator・2026-07-12） === */
.theme-beige .sim-plan-btn { background: var(--cream-2); color: var(--ink-b-soft); }
.theme-beige .sim-plan-btn.is-active { background: var(--coral); color: #fff; }
.theme-beige .sim-part { border-color: var(--line); }
.theme-beige .sim-part:has(input:checked) { border-color: var(--coral); background: rgba(244,160,136,.12); }
.theme-beige .sim-part input { accent-color: var(--coral); }
.theme-beige .sim-part b { color: var(--ink-b-soft); }
.theme-beige .sim-result { background: var(--cream-2); }
.theme-beige .sim-result__label,
.theme-beige .sim-result__empty,
.theme-beige .sim-result__note-only,
.theme-beige .sim-note { color: var(--ink-b-soft); }
.theme-beige .sim-result__total { color: var(--coral-d); }
.theme-beige .sim-result__sub { border-top-color: var(--line); }
.theme-beige .sim-result__sub p:last-child { color: var(--coral-d); }

/* === 導線バンド差分（shindan-band・index.html） === */
.theme-beige #shindan-band { background: linear-gradient(160deg, #5C4A3C, #4A3B30 92%); }

/* === 時間帯・季節のひとこと（living-line・index.html・2026-07-12） === */
.theme-beige .living-line { background: var(--cream-2); border-color: var(--line); }
.theme-beige .living-line p { color: var(--ink-b); }
.theme-beige .living-line a { color: var(--coral-d); }

/* === 今週のおはなし（ehon-weekly・index.html・2026-07-12） === */
.theme-beige .ehon-weekly-card { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); }
.theme-beige .ehon-weekly-card:hover { box-shadow: var(--shadow-pop-h); }
.theme-beige .ehon-weekly-card__no { background: var(--coral); }
.theme-beige .ehon-weekly-card__hook { color: var(--ink-b-soft); }
.theme-beige .ehon-weekly-card__cta { color: var(--coral-d); }
.theme-beige .ehon-weekly-more a { color: var(--ink-b-soft); }
.theme-beige .ehon-weekly-more a:hover { color: var(--coral-d); }

/* === 美肌極みLP（kiwami.html・2026-07-11） === */
.theme-beige .kiwami-chip { background: var(--cream-2); color: var(--coral-d); border: 1px solid var(--line); }
.theme-beige .kiwami-value-total { border-top-color: var(--line); }
.theme-beige .kiwami-value-total__final b { color: var(--coral-d); }
.theme-beige .kiwami-situ { background: var(--card); border-color: var(--line); box-shadow: var(--shadow-pop); }
