/* =========================================================================
   legacy-override-2026.css
   ----------------------------------------------------------------
   旧 Bootstrap 3 + 旧カスタム class で書かれた本文を 2026 デザインに
   見せかけるためのオーバーライド層。pass 1〜3 で 2026 chrome (枠) を
   全ページ統一済みだが、本文は依然 legacy 装飾のまま。
   このシートを読み込めば、本文も 2026 トーンに変身する。
   ========================================================================= */

/* ---------- modern_design.css 等の :root 変数を 2026 へ上書き ---------- */
:root, body {
  /* SEO ページの :root --primary-color/--secondary-color/--accent-color を 2026 ピンク系に */
  --primary-color: var(--c-primary, #c2185b) !important;
  --secondary-color: var(--c-primary-ink, #6b1638) !important;
  --accent-color: var(--c-primary, #c2185b) !important;
  --danger-color: var(--c-primary, #c2185b) !important;
  --warning-color: var(--c-primary-soft, #f5c9d4) !important;
}

/* hero gradients (modern_design.css の orange→navy gradient) を 2026 pink 系に */
body .modern-hero,
body [class*="hero"],
body [class*="-hero"]:not(.lp-hero):not(.nog-hero):not(.sat-hero) {
  background: linear-gradient(135deg, var(--c-surface-pink, #fff5f8) 0%, #fff 100%) !important;
  color: var(--c-text, #232323) !important;
}
body .modern-hero h1,
body [class*="hero"] h1 {
  color: var(--c-primary-ink, #6b1638) !important;
  text-shadow: none !important;
}
body .modern-hero p,
body [class*="hero"] p { color: var(--c-text, #232323) !important; }

/* gradient テキスト (orange → navy) を pink-ink 単色化 */
body [style*="-webkit-background-clip: text"],
body [style*="background-clip: text"] {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: var(--c-primary-ink, #6b1638) !important;
  color: var(--c-primary-ink, #6b1638) !important;
}

/* SEO modern hero "最も人気" などのバッジ */
body .badge-popular,
body [class*="badge-popular"],
body .featured-badge,
body .ee-pill,
body .badge {
  background: var(--c-primary, #c2185b) !important;
  color: #fff !important;
}

/* hero 内の白文字 → 2026 では背景がピンクパールなので濃ピンクに */
body .modern-hero h1,
body .modern-hero h2,
body .modern-hero p,
body .modern-hero .price-display,
body .modern-hero [class*="price"],
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) h1,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) h2,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) p {
  color: var(--c-primary-ink, #6b1638) !important;
}

/* hero CTA ボタン (もとは白bgの透過 button) → ピンク塗り or 線 */
body .modern-hero .btn,
body .modern-hero a.btn,
body .modern-hero .cta-button,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) .btn,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) a.btn-primary,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) .cta-button {
  background: var(--c-primary, #c2185b) !important;
  color: #fff !important;
  border: 1px solid var(--c-primary, #c2185b) !important;
}
body .modern-hero .btn-outline,
body .modern-hero a.btn-outline,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) .btn-outline,
body [class*="-hero"]:not(.lp-hero):not(.nog-hero) .cta-button-secondary {
  background: #fff !important;
  color: var(--c-primary-ink, #6b1638) !important;
  border: 1.5px solid var(--c-primary, #c2185b) !important;
}

/* SEO ページの ¥価格表示 (white-on-blue で見えなくなる) */
body .price-display,
body [class*="price-display"],
body .price-large,
body .hero-price {
  color: var(--c-primary, #c2185b) !important;
  font-family: var(--font-serif, serif) !important;
}

/* モダン SEO ページの badge (オレンジの「最も人気」) */
body .featured-badge,
body .badge-hot,
body .popular-badge,
body span[class*="badge"][style*="background"] {
  background: var(--c-primary, #c2185b) !important;
  color: #fff !important;
}

/* SEO ページの size-card.featured (ボーダーが青→ピンク) */
body .size-card.featured,
body .card.featured,
body [class*="card"].featured {
  border-color: var(--c-primary, #c2185b) !important;
  background: linear-gradient(135deg, #fff 0%, var(--c-surface-pink, #fff5f8) 100%) !important;
}

/* SEO ページの hero 内 inline-style 強制色 */
body section[class*="hero"] [style*="color: white"],
body section[class*="hero"] [style*="color:white"],
body section[class*="hero"] [style*="color: #fff"],
body section[class*="hero"] [style*="color:#fff"] {
  color: var(--c-primary-ink, #6b1638) !important;
}

/* ---------- カラー上書き (legacy primary をピンク系に統一) ---------- */
body { font-family: var(--font-sans, 'Noto Sans JP', sans-serif); color: var(--c-text); }
body h1, body h2, body h3, body h4, body h5 {
  font-family: var(--font-serif, 'Noto Serif JP', serif);
  color: var(--c-primary-ink, #6b1638);
}

/* レガシーの「重要色」(オレンジ/水色/緑) → 2026 ピンク系に */
body .text-primary,
body .text-pink,
body .text-orange,
body .text-orenge,
body .pink,
body .text-turquoiseblue { color: var(--c-primary, #c2185b) !important; }

body .text-success,
body .text-info,
body .green,
body .turquoiseblue { color: var(--c-text, #232323) !important; }

/* legacy ボタンを 2026 .cta 風にする */
body .btn,
body .btn-default,
body .btn-primary,
body .btn-success,
body .btn-info,
body .btn-orenge,
body .btn-turquoiseblue,
body .btn-warning {
  display: inline-block !important;
  padding: var(--space-3, 12px) var(--space-6, 28px) !important;
  background: var(--c-text, #1a1a20) !important;
  color: #fff !important;
  border: 1px solid var(--c-text, #1a1a20) !important;
  border-radius: var(--radius-md, 6px) !important;
  font-family: var(--font-sans, sans-serif) !important;
  font-size: var(--fz-sm, 14px) !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  letter-spacing: 0.04em !important;
  transition: opacity .15s ease;
}
body .btn:hover,
body .btn-primary:hover,
body .btn-default:hover,
body .btn-orenge:hover,
body .btn-turquoiseblue:hover { opacity: 0.85; }
body .btn-primary,
body .btn-orenge,
body .btn-warning {
  background: var(--c-primary, #c2185b) !important;
  border-color: var(--c-primary, #c2185b) !important;
}
body .btn-success { background: var(--c-text, #1a1a20) !important; border-color: var(--c-text) !important; }

/* nuki (white-bg with border) パターン */
body .btn-orenge-nuki,
body .btn-turquoiseblue-nuki,
body .btn-pink-nuki {
  background: transparent !important;
  color: var(--c-primary-ink, #6b1638) !important;
  border: 1.5px solid var(--c-primary, #c2185b) !important;
}
body .btn-orenge-nuki:hover,
body .btn-turquoiseblue-nuki:hover,
body .btn-pink-nuki:hover {
  background: var(--c-surface-pink, #fff5f8) !important;
}

/* btn-block / btn-lg / btn-sm */
body .btn-block { display: block !important; width: 100% !important; }
body .btn-lg, body .btn-lg2 { padding: var(--space-4) var(--space-7) !important; font-size: var(--fz-base, 15px) !important; }
body .btn-sm { padding: var(--space-2) var(--space-4) !important; font-size: var(--fz-xs, 12px) !important; }

/* ---------- レガシーの ee-pill / ee-label / ee-headline を 2026 化 ---------- */
body .ee-pill {
  display: inline-block;
  padding: 4px 10px;
  background: var(--c-surface-pink, #fff5f8);
  color: var(--c-primary-ink, #6b1638);
  border-radius: 999px;
  font-size: var(--fz-xs, 12px);
  font-weight: 600;
  margin: 2px;
}
body .ee-label {
  font-size: var(--fz-sm, 14px);
  color: var(--c-text-muted, #666);
  margin: 8px 0;
}
body .ee-headline { font-family: var(--font-serif, serif); }
body .ee-display-sm { font-size: var(--fz-lg, 18px); font-weight: 600; }

/* ---------- レガシーのテーブル装飾を 2026 化 ---------- */
body .table,
body table.table,
body .ee-pricetable,
body table.ee-pricetable {
  width: 100% !important;
  margin: var(--space-4, 16px) 0 !important;
  border-collapse: collapse !important;
  font-size: var(--fz-sm, 14px) !important;
}
body .table thead,
body .ee-pricetable thead {
  background: var(--c-surface-alt, #f7f1ec) !important;
  color: var(--c-primary-ink, #6b1638) !important;
}
body .table th,
body .ee-pricetable th {
  padding: var(--space-3, 10px) var(--space-4, 14px) !important;
  font-weight: 600 !important;
  border-bottom: 2px solid var(--c-primary, #c2185b) !important;
  text-align: left !important;
  background: var(--c-surface-alt, #f7f1ec) !important;
}
body .table td,
body .ee-pricetable td {
  padding: var(--space-3, 10px) var(--space-4, 14px) !important;
  border-bottom: 1px solid var(--c-line-soft, #e8e2d4) !important;
}
body .table tbody tr:hover,
body .ee-pricetable tbody tr:hover { background: var(--c-surface-pink, #fff5f8); }

/* ---------- レガシーの margin/padding utility 上書き ---------- */
body .margin_top_2em { margin-top: var(--space-6, 24px) !important; }
body .margin_top_3em { margin-top: var(--space-7, 32px) !important; }
body .margin_top_4em { margin-top: var(--space-8, 48px) !important; }
body .margin_buttom_2em { margin-bottom: var(--space-6, 24px) !important; }
body .margin_buttom_3em { margin-bottom: var(--space-7, 32px) !important; }
body .margin_buttom_4em { margin-bottom: var(--space-8, 48px) !important; }
body .margin-negative-top-20 { margin-top: 0 !important; }
body .padding_top2em { padding-top: var(--space-6, 24px) !important; }

/* ---------- 旧 サイドバー/関連リンクの抑制 ---------- */
body #side_menu_new,
body .side_menu_new_box,
body #ie10_3px,
body #social_box,
body #footer_old,
body #copyright_old { display: none !important; }

/* ---------- レガシーのカード/box を 2026 化 ---------- */
body .top_box,
body .box,
body .panel,
body .info_box {
  background: var(--c-surface, #fff) !important;
  border: 1px solid var(--c-line, #e0d8c8) !important;
  border-radius: var(--radius-lg, 12px) !important;
  padding: var(--space-5, 20px) !important;
  margin: 0 0 var(--space-5, 20px) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.04) !important;
}

/* ---------- レガシー見出し ---------- */
body .midashi_h_midle,
body .basic_h,
body .ee-headline,
body h2.headline,
body h3.subheadline {
  font-family: var(--font-serif, 'Noto Serif JP', serif) !important;
  color: var(--c-primary-ink, #6b1638) !important;
  font-weight: 600 !important;
  margin: var(--space-7, 32px) 0 var(--space-4, 16px) !important;
}
body .midashi_h_midle { font-size: clamp(1.4rem, 2.5vw, 1.9rem) !important; }
body .basic_h { font-size: clamp(1.2rem, 2vw, 1.5rem) !important; }

/* ---------- container の幅を 2026 standard に揃える ---------- */
body > .container,
body main > .container,
body main > div > .container {
  max-width: var(--container-max, 1200px) !important;
  margin: 0 auto !important;
  padding: var(--space-5, 20px) var(--space-4, 16px) !important;
}

/* ---------- レガシーのテキスト揃え ---------- */
body .center { text-align: center; }
body .right { text-align: right; }
body .left { text-align: left; }

/* ---------- レガシーの強調色を統一 ---------- */
body strong,
body b { color: var(--c-text, #232323); font-weight: 700; }
body em,
body i:not([class*="fa-"]):not([class*="icon"]) {
  font-style: normal;
  color: var(--c-primary-ink, #6b1638);
  font-weight: 500;
}

/* ---------- 旧 hover.css 効果無効化 (paginate-jelly 等) ---------- */
body .alpha:hover,
body .hvr-grow:hover,
body a:hover img { transform: none !important; opacity: 0.8 !important; }

/* ---------- legacy chrome の手前に 2026 chrome があるよう margin 調整 ---------- */
body > .site-topbar,
body > .site-header { margin-top: 0 !important; }
body main, body > main { padding-top: var(--space-5, 20px); }

/* ---------- legacy sidebar (250px right) を本文に統合 ---------- */
@media (min-width: 992px) {
  body main { max-width: var(--container-max, 1200px); margin: 0 auto; }
}

/* ---------- レガシーの `_old`/.bak/_rakurinkテーブル無効化 ---------- */
body .legacy_widget,
body .saide_menu_old { display: none !important; }

/* ---------- legacy ナンバリング/特集テーブル ---------- */
body .ee-pricetable td.price-cell {
  font-family: var(--font-serif, serif);
  color: var(--c-primary-ink, #6b1638);
  font-size: var(--fz-base, 15px);
}

/* ---------- text-shadow / text-decoration 余計な装飾を消す ---------- */
body h1, body h2, body h3 { text-shadow: none !important; }
body a { text-decoration: none; }
body a:hover { color: var(--c-primary-ink, #6b1638); text-decoration: underline; }

/* ---------- レガシーの inline-block / 古い grid を flex に矯正 ----------
   注: cart-v2 / checkout-v2 (body.cv2-page) は Bootstrap 5 の
   col-lg-* グリッドを正しく機能させたいので除外する。 */
body:not(.cv2-page) .row {
  display: flex !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  gap: var(--space-4, 16px) !important;
}
body:not(.cv2-page) .row > [class*="col-"] {
  padding: 0 !important;
  flex: 1 1 auto;
  min-width: 0;
}
@media (min-width: 768px) {
  body:not(.cv2-page) .row > .col-sm-12 { flex-basis: 100%; }
  body:not(.cv2-page) .row > .col-sm-6 { flex-basis: calc(50% - 8px); }
  body:not(.cv2-page) .row > .col-sm-4 { flex-basis: calc(33.333% - 11px); }
  body:not(.cv2-page) .row > .col-sm-3 { flex-basis: calc(25% - 12px); }
  body:not(.cv2-page) .row > .col-sm-8 { flex-basis: calc(66.666% - 6px); }
  body:not(.cv2-page) .row > .col-sm-9 { flex-basis: calc(75% - 4px); }
}
@media (max-width: 767px) {
  body:not(.cv2-page) .row > [class*="col-"] { flex-basis: 100%; }
}

/* ---------- 印字ヒーロー風の旧 #header_box 等を div として残しつつスタイル統一 ---------- */
body .top_image_box,
body .top_hero,
body .hero_box {
  margin: 0 !important;
  padding: var(--space-6, 24px) var(--space-5, 20px) !important;
  background: linear-gradient(135deg, var(--c-surface-pink, #fff5f8) 0%, #fff 100%) !important;
  border-radius: var(--radius-lg, 12px) !important;
  text-align: center !important;
}

/* ---------- 「お問い合わせ」「無料で相談」など強い CTA ボタンの 2026 化 ---------- */
body .ee-pricetable + p .btn,
body .cta-row .btn,
body p > a > .btn {
  background: var(--c-primary, #c2185b) !important;
  color: #fff !important;
  border-color: var(--c-primary, #c2185b) !important;
}

/* ---------- 旧 footer の hidden ---------- */
body > footer:not(.site-footer),
body #footer_box_old { display: none !important; }

/* ===== 旧 layout 強制統一 (Bootstrap 3 grid を破壊しない範囲で) ===== */

/* レガシーの 2 カラム (#main + #right_sidebar) を 1 カラムへ
   (cv2-page は Bootstrap 5 グリッドのため除外) */
body:not(.cv2-page) .container > .row > .col-sm-9.col-md-9,
body:not(.cv2-page) .container > .row > .col-md-9 {
  flex: 1 1 100% !important;
  max-width: 100% !important;
}
body:not(.cv2-page) .container > .row > .col-sm-3.col-md-3,
body:not(.cv2-page) .container > .row > .col-md-3,
body:not(.cv2-page) #right_sidebar,
body:not(.cv2-page) .right_sidebar,
body:not(.cv2-page) .saide_menu_box,
body:not(.cv2-page) #saide_menu,
body:not(.cv2-page) #saide_menu2 { display: none !important; }

/* main コンテンツの上下余白統一 */
body main,
body > main,
body > .container,
body > div:not(.site-topbar):not(.mobile-drawer):not(.breadcrumb-nav) > .container {
  padding-top: var(--space-4, 16px) !important;
  padding-bottom: var(--space-7, 32px) !important;
}

/* 旧 H1 や top_box のセンタリング統一 */
body main > h1:first-child,
body > .container > h1:first-of-type {
  text-align: center;
  margin: var(--space-7, 32px) auto var(--space-5, 20px);
  font-family: var(--font-serif);
  color: var(--c-primary-ink, #6b1638);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  font-weight: 600;
}

/* 旧 商品一覧 ul (legacy sidebar 残骸) → 1 カラム pill 風 */
body main > p + ul,
body > h2 + ul,
body main > h2 + ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2, 6px);
}
body main > p + ul > li,
body > h2 + ul > li,
body main > h2 + ul > li {
  list-style: none;
  margin: 0;
}
body main > p + ul > li::before,
body > h2 + ul > li::before { content: none !important; }

/* 旧 リンクテキスト中の <a> を 2026 リンクっぽく */
body main a:not(.btn):not(.cta):not(.site-nav__link):not(.cta--pink):not(.site-header__logo) {
  color: var(--c-primary-ink, #6b1638);
  border-bottom: 1px dotted transparent;
  transition: border-bottom-color .15s;
}
body main a:not(.btn):not(.cta):not(.site-nav__link):not(.cta--pink):not(.site-header__logo):hover {
  border-bottom-color: var(--c-primary, #c2185b);
}

/* レガシーで multiple <h1> がある場合 → 2nd 以降は h2 サイズに */
body main h1 ~ h1 { font-size: clamp(1.3rem, 2.2vw, 1.7rem); }

/* ---------- 旧 breadcrumb (パンくず) を非表示 — 2026 chrome に新版あり ---------- */
body main > nav.breadcrumb-nav:not(.site-2026),
body main > nav[aria-label="パンくず"]:not(:first-of-type),
body main > nav > ol.breadcrumb:not(.site-2026),
body .breadcrumb-old,
body #pankuz,
body #pankuz_box,
body div#breadcrumb_box {
  display: none !important;
}

/* 2026 chrome の直後の旧 ol.breadcrumb (legacy) を hidden */
body .breadcrumb-nav + ol.breadcrumb,
body .breadcrumb-nav ~ ol.breadcrumb,
body main > div > nav > ol.breadcrumb { display: none !important; }

/* 旧 schema.org Breadcrumb の itemListElement style */
body ol.breadcrumb[itemtype*="BreadcrumbList"]:not(.site-2026) {
  display: none !important;
}

/* 2026 chrome の直後に来る旧 nav も hide */
body .breadcrumb-nav + nav:has(> ol.breadcrumb),
body .breadcrumb-nav + nav:has(ol[class*="breadcrumb"]) { display: none !important; }

/* 旧画像ベースの STEP バナー (red gradient PNG) → 透明ラッパーで囲む */
body img[src*="step_label"],
body img[src*="step_banner"],
body img[alt*="STEP"],
body img[src*="setp_"],
body div.step_banner img { opacity: 0.7; max-width: 100%; }

/* 旧 chirashiprice 風の「商品一覧」list (legacy 系の本文ナビ) → 折りたたみ */
body main > h2:first-of-type:has(+ ul) {
  margin: var(--space-7) 0 var(--space-3) !important;
}
body main > h2 + ul,
body main > p + ul {
  background: var(--c-surface-alt, #f7f1ec);
  border-radius: var(--radius-md, 6px);
  padding: var(--space-4) var(--space-5) !important;
  margin: 0 0 var(--space-6, 24px) !important;
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: var(--space-3, 10px) !important;
}
body main > h2 + ul > li,
body main > p + ul > li {
  list-style: none !important;
  padding: 0 !important;
}
body main > h2 + ul > li::before,
body main > p + ul > li::before { content: none !important; }
body main > h2 + ul > li > a,
body main > p + ul > li > a {
  display: inline-block;
  padding: 6px 12px;
  background: #fff;
  border: 1px solid var(--c-line-soft, #e8e2d4);
  border-radius: 999px;
  color: var(--c-primary-ink, #6b1638);
  font-size: var(--fz-xs, 12px);
}

/* レガシーの banner / image 装飾を抑制 */
body .top_image_box img,
body .banner img { max-width: 100%; height: auto; }

/* Form 系 (input/select) を 2026 化 */
body input[type="text"],
body input[type="email"],
body input[type="tel"],
body input[type="number"],
body select:not(.pd-select):not(.tsw-select),
body textarea {
  padding: var(--space-3, 10px) var(--space-4, 14px) !important;
  border: 1px solid var(--c-line, #e0d8c8) !important;
  border-radius: var(--radius-md, 6px) !important;
  font-size: var(--fz-sm, 14px) !important;
  font-family: var(--font-sans, sans-serif) !important;
}
body input:focus, body select:focus, body textarea:focus {
  outline: none !important;
  border-color: var(--c-primary, #c2185b) !important;
}

/* 旧サイト全体の text 要素を default 14px に統一 */
body main p,
body main li,
body main td,
body main dd,
body main dt {
  font-size: var(--fz-sm, 14px);
  line-height: 1.85;
  color: var(--c-text, #232323);
}

/* ---------- Bootstrap 3 visible-* / hidden-* (BS3 helper classes) ---------- */
@media (min-width: 768px) {
  body .visible-xs,
  body .visible-xs-block,
  body .visible-xs-inline,
  body .visible-xs-inline-block { display: none !important; }
  body .hidden-sm,
  body .hidden-md,
  body .hidden-lg { display: none !important; }
}
@media (max-width: 767px) {
  body .visible-md,
  body .visible-lg,
  body .visible-md-block,
  body .visible-lg-block { display: none !important; }
  body .hidden-xs { display: none !important; }
}
@media (min-width: 768px) and (max-width: 991px) {
  body .visible-xs,
  body .visible-lg { display: none !important; }
  body .hidden-sm { display: none !important; }
}

/* col-xs-12 など BS3 12-col grid を本文の 1 カラム化 */
body main .col-xs-12 { flex: 1 1 100%; max-width: 100%; }
body main .col-xs-6 { flex: 0 0 50%; max-width: 50%; }
body main .col-xs-4 { flex: 0 0 33.333%; max-width: 33.333%; }
body main .col-xs-3 { flex: 0 0 25%; max-width: 25%; }
body main .col-xs-8 { flex: 0 0 66.666%; max-width: 66.666%; }
@media (min-width: 768px) {
  body main .col-sm-12 { flex: 1 1 100% !important; max-width: 100% !important; }
  body main .col-sm-6 { flex: 0 0 50% !important; max-width: 50% !important; }
  body main .col-sm-4 { flex: 0 0 33.333% !important; max-width: 33.333% !important; }
  body main .col-sm-3 { flex: 0 0 25% !important; max-width: 25% !important; }
  body main .col-sm-9 { flex: 0 0 75% !important; max-width: 75% !important; }
  body main .col-sm-8 { flex: 0 0 66.666% !important; max-width: 66.666% !important; }
}

/* legacy `.btn-default` (red) を 2026 cta primary に */
body .btn-default {
  background: var(--c-primary, #c2185b) !important;
  color: #fff !important;
  border-color: var(--c-primary, #c2185b) !important;
}
body .btn-default.active,
body .btn-default[disabled] {
  background: var(--c-primary-ink, #6b1638) !important;
  color: #fff !important;
}

/* 2026 へ完全 hidden 不要なレガシー UI 群 */
body #breadcrumb,
body #breadcrumb-old,
body #social_box,
body #toptopaddingbox,
body #footer_box,
body .legacy_topbar,
body .top_logo_box,
body #social_share { display: none !important; }

/* legacy の中央寄せ class */
body .text-center { text-align: center; }

/* legacy の inline 装飾 (color="#xxx") を強制クリア */
body font[color] { color: inherit !important; }
body [color] { color: inherit !important; }

/* ---------- 旧 Library Item (DW) の help.lbi 系 hidden ---------- */
body .help-lbi-old,
body div[id*="library_old"] { display: none !important; }

/* ---------- 旧 PWA / banner 系 ---------- */
body #pwa_banner,
body .legacy_banner,
body #campaign_banner_old { display: none !important; }

/* ---------- 旧サイト全体の base font-family を Noto Sans JP に ---------- */
body, body main, body p, body div, body span, body td, body li {
  font-family: var(--font-sans, 'Noto Sans JP', sans-serif);
}

/* ---------- 旧 .price_red / .red 等の派手な強調を 2026 ピンクに ---------- */
body .price_red,
body .red,
body .price-red,
body .text-red {
  color: var(--c-primary, #c2185b) !important;
}

/* ---------- 旧 .ee-headline 風の見出し (薄い緑線下線等) ---------- */
body .ee-headline {
  border-bottom: 2px solid var(--c-primary-soft, #f5c9d4) !important;
  padding-bottom: var(--space-3, 10px) !important;
  margin-bottom: var(--space-5, 20px) !important;
}

/* ---------- legacy footer 内残存の PRリンク等 hidden ---------- */
body .copyright_legacy,
body #copyright,
body footer.legacy { display: none !important; }
