@charset "UTF-8";
/* ================================================================
   80-pages-v2 — Phase A「面」の第2版
   正本: design-review-20260905/ぼきキャリ サイト全体.dc.html (A-1〜A-11)
         + BK Header.dc.html / BK Footer.dc.html
   数値の正本: design-review-20260905/bk-implementation.css

   規約:
     ・全規則を body.bc-pages-v2 の内側に置く(OFF のとき1バイトも効かない)
     ・:root は再定義しない。新規トークンは --bk-v2-* を body に持たせる
     ・@import は使わない。角丸0・影なし・罫で構造
     ・板は 1440 幅。それ以上の画面では版面を 1440 で止める(README §乖離)
   ================================================================ */

body.bc-pages-v2{
  /* 既存 hex はそのまま使う: --bk-bg / --bk-brand / --bk-accent / --bk-r0 /
     --bk-font-sans / --bk-font-mincho / --bk-font-num                        */
  --bk-v2-ink:        #2A2428;   /* 板の本文墨(既存 --bk-ink #241E22 とは別値) */
  --bk-v2-ink-muted:  #6F676B;   /* 補助文・調査日・出所 */
  --bk-v2-rule:       #CBC6C8;   /* 細罫 */
  --bk-v2-rule-faint: #E1DEDC;   /* SP の弱い区切り */
  --bk-v2-slot:       #A29A9E;   /* 点線スロットの地色 */
  --bk-v2-photo-a:    #E6E3E1;
  --bk-v2-photo-b:    #DDD9D6;

  --bk-v2-frame:      1440px;    /* 板の幅 */
  --bk-v2-gutter:     48px;
  --bk-v2-gutter-sp:  20px;
  --bk-v2-inner:      calc(var(--bk-v2-frame) - var(--bk-v2-gutter) * 2);  /* 1344px */
  --bk-v2-side:       320px;     /* 一覧・トップの右カラム */
  --bk-v2-gap:        64px;
  --bk-v2-head-side:  380px;     /* 頭の右カラム */
  --bk-v2-head-gap:   48px;
  --bk-v2-page-w:     880px;     /* 固定ページの版面 */
  --bk-v2-measure:    68ch;      /* 本文行長 */

  /* 板の helmet 逐語。親のリセットに依存させない */
  margin: 0;
  background: var(--bk-bg);
  color: var(--bk-v2-ink);
  font-family: var(--bk-font-sans);
  font-size: 16px;
  line-height: 1.9;
  -webkit-font-smoothing: antialiased;
}

body.bc-pages-v2 a{
  color: var(--bk-brand);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.bc-pages-v2 a:hover{ color: var(--bk-accent); }
body.bc-pages-v2 .bk-mono{ font-family: var(--bk-font-num); }
body.bc-pages-v2 .bk-slot{
  display: inline-block; min-width: 3em;
  border-bottom: 1px dotted var(--bk-brand);
  color: var(--bk-v2-slot);
}
body.bc-pages-v2 .bk-noposts{ color: var(--bk-v2-ink-muted); font-size: 15px; }

/* 版面。板は 1440。それより広い画面では中央で止める */
body.bc-pages-v2 .bc-v2{
  max-width: var(--bk-v2-frame);
  margin: 0 auto;
  padding: 0;
  overflow: visible;
}

/* ================================================================
   ヘッダー(BK Header.dc.html)
   ================================================================ */
body.bc-pages-v2 .bk-header{
  background: var(--bk-bg);
  border-bottom: 2px solid var(--bk-brand);
  padding: 20px var(--bk-v2-gutter) 0;
}
body.bc-pages-v2 .bk-header__mast{
  max-width: var(--bk-v2-inner); margin: 0 auto;
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 24px; padding-bottom: 16px; height: auto;
}
body.bc-pages-v2 .bk-header__brand{
  display: flex; align-items: baseline; gap: 18px; min-width: 0; flex-wrap: wrap;
}
body.bc-pages-v2 .bk-header__title{
  font-family: var(--bk-font-mincho); font-size: 30px; font-weight: 600;
  letter-spacing: .06em; color: var(--bk-brand);
  text-decoration: none; line-height: 1;
}
body.bc-pages-v2 .bk-header__tag{
  font-size: 13px; color: var(--bk-v2-ink-muted); letter-spacing: .02em; line-height: 1.4;
}
body.bc-pages-v2 .bk-header__searchlink{ display: none; }   /* SP だけ出す */
body.bc-pages-v2 .bk-header__nav{
  max-width: var(--bk-v2-inner); margin: 0 auto;
  display: flex; gap: 28px; font-size: 14px; align-items: baseline;
  padding: 0 0 16px;
}
body.bc-pages-v2 .bk-header__nav a{ color: var(--bk-v2-ink); text-decoration: none; }
body.bc-pages-v2 .bk-header__nav a:hover{ color: var(--bk-brand); }
body.bc-pages-v2 .bk-header__nav a[aria-current="page"]{ color: var(--bk-brand); font-weight: 600; }
body.bc-pages-v2 .bk-header__nav .bk-header__nav-about{
  color: var(--bk-v2-ink-muted); border: 0; padding: 0; font-weight: 400;
}
body.bc-pages-v2 .bk-header__search{
  display: flex; justify-content: space-between; gap: 12px; align-items: baseline;
  width: 168px; margin-left: auto;
  border-bottom: 1px solid var(--bk-brand); padding: 0 2px 3px;
}
body.bc-pages-v2 .bk-header__search input{
  flex: 1; min-width: 0; font: inherit; font-size: 13px;
  color: var(--bk-v2-ink-muted); background: transparent;
  border: 0; border-radius: var(--bk-r0); padding: 0; outline: none;
  -webkit-appearance: none; appearance: none;
}
body.bc-pages-v2 .bk-header__search input::placeholder{ color: var(--bk-v2-ink-muted); opacity: 1; }
body.bc-pages-v2 .bk-header__search button{
  font: inherit; font-size: 13px; color: var(--bk-brand);
  background: transparent; border: 0; border-radius: var(--bk-r0);
  padding: 0; cursor: pointer; flex: none;
}

/* ================================================================
   フッター(BK Footer.dc.html) — 板では葡萄の面をやめ、紙のまま上罫で切る
   ================================================================ */
body.bc-pages-v2 .bk-footer{
  background: var(--bk-bg);
  border-top: 1px solid var(--bk-brand);
  padding: 30px var(--bk-v2-gutter) 22px;
  font-size: 13px; color: var(--bk-v2-ink-muted); line-height: 1.8;
}
body.bc-pages-v2 .bk-footer a{ color: var(--bk-v2-ink); text-decoration: none; }
body.bc-pages-v2 .bk-footer a:hover{ color: var(--bk-brand); }
body.bc-pages-v2 .bk-footer__grid{
  max-width: var(--bk-v2-inner); margin: 0 auto;
  display: grid; grid-template-columns: 1fr 1fr 2.2fr; gap: 40px;
}
body.bc-pages-v2 .bk-footer__brand{
  font-family: var(--bk-font-mincho); font-size: 20px; color: var(--bk-brand);
  letter-spacing: .06em; font-weight: 600; line-height: 1.4;
}
body.bc-pages-v2 .bk-footer__tag{ margin-top: 4px; }
body.bc-pages-v2 .bk-footer__links{ display: flex; flex-direction: column; gap: 6px; }
body.bc-pages-v2 .bk-footer__ct{ color: var(--bk-brand); font-weight: 600; margin-bottom: 2px; }
body.bc-pages-v2 .bk-footer__disclosure{ margin: 0; text-wrap: pretty; }
body.bc-pages-v2 .bk-footer__disclosure--std{ margin-top: 6px; }
body.bc-pages-v2 .bk-footer__base{
  max-width: var(--bk-v2-inner); margin: 24px auto 0;
  border-top: 1px solid var(--bk-v2-rule); padding-top: 10px;
  display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
}

/* ================================================================
   パンくず — 板は「ぼきキャリ › 簿記検定」
   ================================================================ */
body.bc-pages-v2 .bk-crumbrow{
  max-width: var(--bk-v2-inner); margin: 0 auto;
  padding: 22px var(--bk-v2-gutter) 0;
}
body.bc-pages-v2 .bk-breadcrumb{ font-size: 13px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs{
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px;
  margin: 0; padding: 0; list-style: none; font-size: 13px; line-height: 1.7;
}
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li{ font-size: 13px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li a{ color: inherit; text-decoration: none; }
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li a:hover{ color: var(--bk-brand); }
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li::before{
  content: "›"; display: inline; border: 0; transform: none;
  margin: 0 10px 0 0; color: var(--bk-v2-ink-muted); width: auto; height: auto;
}
body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li:first-of-type::before{ display: none; }
body.bc-pages-v2 .bk-breadcrumb i,
body.bc-pages-v2 .bk-breadcrumb svg{ display: none; }

/* ================================================================
   A-1 特集ヒーロー — 写真帯のみ。題名は帯の下に1回だけ
   ================================================================ */
body.bc-pages-v2 .bk-hero{ padding: 28px var(--bk-v2-gutter) 0; }
body.bc-pages-v2 .bk-hero__photo{
  display: block; width: 100%; height: 340px;
  object-fit: cover; border-radius: var(--bk-r0); border: 0;
}
body.bc-pages-v2 .bk-hero__photo--placeholder{
  background: repeating-linear-gradient(135deg,
    var(--bk-v2-photo-a) 0 12px, var(--bk-v2-photo-b) 12px 24px);
}
body.bc-pages-v2 .bk-hero__body{
  display: grid; grid-template-columns: minmax(0,1fr) var(--bk-v2-head-side);
  gap: var(--bk-v2-head-gap); padding: 22px 0 30px;
  border-bottom: 1px solid var(--bk-brand);
}
body.bc-pages-v2 .bk-hero__main{ min-width: 0; }
body.bc-pages-v2 .bk-hero__kicker{
  font-size: 13px; color: var(--bk-accent); letter-spacing: .08em; margin: 0 0 6px;
}
body.bc-pages-v2 .bk-hero__title{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 36px; line-height: 1.4; letter-spacing: .02em;
  color: var(--bk-brand); margin: 0 0 14px; text-wrap: pretty;
}
body.bc-pages-v2 .bk-hero__title a{ color: inherit; text-decoration: none; }
body.bc-pages-v2 .bk-hero__title a:hover{ text-decoration: underline; }
body.bc-pages-v2 .bk-hero__lead{
  margin: 0; max-width: var(--bk-v2-measure);
  color: var(--bk-v2-ink); font-size: 16px; text-wrap: pretty;
}
body.bc-pages-v2 .bk-hero__meta{
  align-self: end; font-size: 13px; color: var(--bk-v2-ink-muted);
  border-top: 1px solid var(--bk-v2-rule); padding-top: 10px;
  display: flex; flex-direction: column; gap: 4px;
  font-variant-numeric: tabular-nums; flex-wrap: nowrap;
}
body.bc-pages-v2 .bk-hero__meta > div{ display: flex; justify-content: space-between; gap: 16px; }

/* ================================================================
   A-1 現在地4入口 — 5:3:3:3
   ================================================================ */
body.bc-pages-v2 .bk-entrances{
  display: grid; grid-template-columns: 5fr 3fr 3fr 3fr;
  margin: 0 var(--bk-v2-gutter);
  border-bottom: 1px solid var(--bk-brand);
}
body.bc-pages-v2 .bk-entrances > a{
  display: block; padding: 30px 24px 30px 28px;
  border-left: 1px solid var(--bk-v2-rule);
  text-decoration: none; color: inherit; min-width: 0;
}
body.bc-pages-v2 .bk-entrances > a:first-child{ padding: 30px 40px 30px 0; border-left: 0; }
body.bc-pages-v2 .bk-entrances > a:last-child{ padding-right: 0; }
body.bc-pages-v2 .bk-entrances__num{
  display: block; font: 12px/1 var(--bk-font-num);
  color: var(--bk-accent); letter-spacing: .1em; margin-bottom: 14px;
}
body.bc-pages-v2 .bk-entrances__title{
  display: block; font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 20px; line-height: 1.4; color: var(--bk-brand); margin-bottom: 8px;
}
body.bc-pages-v2 .bk-entrances > a:first-child .bk-entrances__title{
  font-size: 28px; line-height: 1.35; margin-bottom: 12px;
}
body.bc-pages-v2 .bk-entrances p{ margin: 0; font-size: 14px; color: var(--bk-v2-ink-muted); text-wrap: pretty; }
body.bc-pages-v2 .bk-entrances > a:first-child p{
  font-size: 15px; color: var(--bk-v2-ink); max-width: 44ch; margin-bottom: 16px;
}
body.bc-pages-v2 .bk-entrances__links{
  display: flex; flex-direction: column; gap: 6px; font-size: 15px;
}
body.bc-pages-v2 .bk-entrances__links > span{
  display: flex; justify-content: space-between; gap: 16px;
  border-bottom: 1px solid var(--bk-v2-rule); padding-bottom: 5px;
  color: var(--bk-v2-ink);
}
body.bc-pages-v2 .bk-entrances__links > span:last-child{ border-bottom: 0; }
body.bc-pages-v2 .bk-entrances__links > span > span:last-child{ color: var(--bk-v2-ink-muted); flex: none; }

/* ================================================================
   A-1 新着 + 右カラム
   ================================================================ */
body.bc-pages-v2 .bk-front-main{
  padding: 34px var(--bk-v2-gutter) 56px;
  display: grid; grid-template-columns: minmax(0,1fr) var(--bk-v2-side);
  gap: var(--bk-v2-gap); align-items: start;
}
body.bc-pages-v2 .bk-front-main__col{ min-width: 0; }
body.bc-pages-v2 .bk-list-head{
  display: flex; justify-content: space-between; align-items: baseline; gap: 20px;
  border-bottom: 1px solid var(--bk-brand); padding-bottom: 8px;
}
body.bc-pages-v2 .bk-list-head h2{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 22px; color: var(--bk-brand); margin: 0; letter-spacing: .04em; line-height: 1.4;
}
body.bc-pages-v2 .bk-list-head span{ font-size: 13px; color: var(--bk-v2-ink-muted); }

body.bc-pages-v2 .bk-row{
  display: grid; grid-template-columns: 112px 96px minmax(0,1fr) 150px;
  column-gap: 20px; align-items: baseline; padding: 16px 0;
  border-bottom: 1px solid var(--bk-v2-rule); font-variant-numeric: tabular-nums;
}
body.bc-pages-v2 .bk-row__date,
body.bc-pages-v2 .bk-row__asof{ font: 13px/1.9 var(--bk-font-num); color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-row__asof{ text-align: right; }
body.bc-pages-v2 .bk-row__cat{ font-size: 13px; color: var(--bk-accent); }
body.bc-pages-v2 .bk-row__title{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 19px; line-height: 1.5; color: var(--bk-brand);
  text-decoration: none; text-wrap: pretty;
}
body.bc-pages-v2 .bk-row__title:hover{ text-decoration: underline; }
body.bc-pages-v2 .bk-more{ padding-top: 14px; font-size: 14px; margin: 0; }

body.bc-pages-v2 .bk-aside-head{
  border-bottom: 1px solid var(--bk-brand); padding-bottom: 8px;
  font-family: var(--bk-font-mincho); font-size: 18px; color: var(--bk-brand);
  font-weight: 600; letter-spacing: .04em; line-height: 1.4;
}
body.bc-pages-v2 .bk-aside-row{
  display: block; padding: 14px 0; border-bottom: 1px solid var(--bk-v2-rule);
  text-decoration: none; color: inherit;
}
body.bc-pages-v2 .bk-aside-row--plain{ padding: 12px 0; color: var(--bk-brand); font-weight: 600; }
body.bc-pages-v2 .bk-aside-row__name{ display: block; color: var(--bk-brand); font-weight: 600; }
body.bc-pages-v2 .bk-aside-row__note{ display: block; font-size: 13px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-aside-note{
  margin-top: 28px; border-top: 1px solid var(--bk-brand); padding-top: 12px;
  font-size: 14px; line-height: 1.8; color: var(--bk-v2-ink);
}
body.bc-pages-v2 .bk-aside-note__title{
  font-family: var(--bk-font-mincho); font-size: 16px; color: var(--bk-brand);
  font-weight: 600; margin-bottom: 4px;
}
body.bc-pages-v2 .bk-aside-note p{ margin: 0; text-wrap: pretty; }
body.bc-pages-v2 .bk-taglist{
  display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 14px; padding-top: 12px;
}
body.bc-pages-v2 .bk-taglist a{ color: var(--bk-v2-ink); text-decoration: none; }
body.bc-pages-v2 .bk-taglist a:hover{ color: var(--bk-brand); text-decoration: underline; }

/* ================================================================
   A-3 / A-5 一覧の頭と本体
   ================================================================ */
body.bc-pages-v2 .bk-archive-head{
  padding: 26px var(--bk-v2-gutter) 30px;
  border-bottom: 1px solid var(--bk-brand);
  display: grid; grid-template-columns: minmax(0,1fr) var(--bk-v2-head-side);
  gap: var(--bk-v2-head-gap); align-items: end;
}
body.bc-pages-v2 .bk-archive-head__main{ min-width: 0; }
body.bc-pages-v2 .bk-kicker{
  font-size: 13px; color: var(--bk-accent); letter-spacing: .08em; margin: 0 0 6px;
}
body.bc-pages-v2 .bk-archive-head h1{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 44px; line-height: 1.3; color: var(--bk-brand);
  margin: 0 0 12px; letter-spacing: .04em;
}
body.bc-pages-v2 .bk-archive-head__desc{
  margin: 0; max-width: var(--bk-v2-measure); text-wrap: pretty; color: var(--bk-v2-ink);
}
body.bc-pages-v2 .bk-archive-head__count{
  font-size: 13px; color: var(--bk-v2-ink-muted);
  border-top: 1px solid var(--bk-v2-rule); padding-top: 10px;
  display: flex; justify-content: space-between; gap: 16px;
  font-variant-numeric: tabular-nums;
}
/* タグ面は一段小さい頭。板 A-5 は1行の flex */
body.bc-pages-v2 .bk-archive-head--tag{
  display: flex; align-items: baseline; gap: 24px; flex-wrap: wrap;
  padding: 22px var(--bk-v2-gutter);
}
body.bc-pages-v2 .bk-archive-head--tag .bk-archive-head__main{
  display: flex; align-items: baseline; gap: 24px; flex-wrap: wrap; flex: 1;
}
body.bc-pages-v2 .bk-archive-head--tag .bk-kicker{ margin: 0; }
body.bc-pages-v2 .bk-archive-head--tag h1{ font-size: 32px; margin: 0; }
body.bc-pages-v2 .bk-archive-head--tag .bk-archive-head__desc{ font-size: 14px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-archive-head--tag .bk-archive-head__count{
  border-top: 0; padding-top: 0; margin-left: auto; font: 13px/1.9 var(--bk-font-num); gap: 6px;
}

body.bc-pages-v2 .bk-list-main{
  padding: 8px var(--bk-v2-gutter) 56px;
  display: grid; grid-template-columns: minmax(0,1fr) var(--bk-v2-side);
  gap: var(--bk-v2-gap); align-items: start;
}
body.bc-pages-v2 .bk-list-main__col{ min-width: 0; }
body.bc-pages-v2 .bk-list-aside{ padding-top: 24px; }

body.bc-pages-v2 .bk-archive-row{
  display: grid; grid-template-columns: 112px minmax(0,1fr);
  column-gap: 24px; padding: 24px 0;
  border-bottom: 1px solid var(--bk-v2-rule);
  text-decoration: none; color: inherit;
}
body.bc-pages-v2 .bk-archive-row .bk-row__date{ display: block; }
body.bc-pages-v2 .bk-archive-row__body{ display: block; min-width: 0; }
body.bc-pages-v2 .bk-archive-row .bk-row__cat{ display: block; margin-bottom: 2px; }
body.bc-pages-v2 .bk-archive-row .bk-row__title{ display: block; font-size: 22px; line-height: 1.45; }
body.bc-pages-v2 .bk-archive-row:hover .bk-row__title{ text-decoration: underline; }
body.bc-pages-v2 .bk-archive-row p{
  margin: 8px 0 0; font-size: 15px; color: var(--bk-v2-ink);
  max-width: var(--bk-v2-measure); text-wrap: pretty;
}
body.bc-pages-v2 .bk-archive-head--tag ~ .bk-list-main .bk-archive-row{ padding: 22px 0; }
body.bc-pages-v2 .bk-archive-head--tag ~ .bk-list-main .bk-archive-row .bk-row__title{ font-size: 21px; }

/* ページャ(30-components の丸ボタン型を打ち消す) */
body.bc-pages-v2 .bk-pager{
  display: flex; justify-content: space-between; align-items: baseline;
  gap: 16px; padding-top: 20px; font-size: 14px;
}
body.bc-pages-v2 .bk-pager a,
body.bc-pages-v2 .bk-pager span{
  font-family: inherit; font-size: 14px; line-height: 1.5;
  padding: 0; border: 0; background: none; border-radius: var(--bk-r0);
}
body.bc-pages-v2 .bk-pager a{ color: var(--bk-brand); }
body.bc-pages-v2 .bk-pager .bk-pager__off{ color: var(--bk-v2-slot); }
body.bc-pages-v2 .bk-pager .bk-pager__pos{ font: 13px/1.9 var(--bk-font-num); color: var(--bk-v2-ink-muted); }

/* ================================================================
   フォーム(検索 / 問い合わせ) — 下線のみ・角丸0
   ================================================================ */
body.bc-pages-v2 .bk-field{ display: block; padding: 18px 0 0; }
body.bc-pages-v2 .bk-field > span{ display: block; font-size: 13px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-field input,
body.bc-pages-v2 .bk-field select,
body.bc-pages-v2 .bk-field textarea{
  width: 100%; box-sizing: border-box; font: inherit; font-size: 17px;
  color: var(--bk-v2-ink); background: transparent;
  border: 0; border-bottom: 1px solid var(--bk-v2-rule);
  padding: 6px 0 8px; outline: none; border-radius: var(--bk-r0);
  -webkit-appearance: none; appearance: none; min-height: 24px;
}
body.bc-pages-v2 .bk-field input:focus,
body.bc-pages-v2 .bk-field select:focus,
body.bc-pages-v2 .bk-field textarea:focus{ border-bottom-color: var(--bk-brand); }
body.bc-pages-v2 .bk-field--search input{
  font-family: var(--bk-font-mincho); font-size: 30px; color: var(--bk-brand);
  border-bottom-color: var(--bk-brand); padding: 4px 0 8px;
}
body.bc-pages-v2 .bk-field--search-sm input{ font-size: 22px; }
body.bc-pages-v2 .bk-button{
  font: inherit; font-size: 15px; background: var(--bk-brand); color: var(--bk-bg);
  border: 0; border-radius: var(--bk-r0); padding: 12px 28px;
  min-height: 44px; cursor: pointer; flex: none;
}
body.bc-pages-v2 .bk-button:hover{ background: var(--bk-accent); }
body.bc-pages-v2 .bk-searchform{
  display: flex; gap: 16px; align-items: flex-end; margin: 0; max-width: 640px;
}
body.bc-pages-v2 .bk-searchform .bk-field{ flex: 1; padding-top: 0; }

/* ================================================================
   A-6 検索結果
   ================================================================ */
body.bc-pages-v2 .bk-search-head{
  padding: 26px var(--bk-v2-gutter);
  border-bottom: 1px solid var(--bk-brand);
  max-width: calc(var(--bk-v2-page-w) + var(--bk-v2-gutter) * 2);
}
body.bc-pages-v2 .bk-search-head .bk-kicker{ margin-bottom: 8px; }
body.bc-pages-v2 .bk-search-head__meta{
  margin-top: 14px; font-size: 14px; color: var(--bk-v2-ink-muted);
  display: flex; gap: 18px; flex-wrap: wrap;
}
body.bc-pages-v2 .bk-search-list{
  padding: 8px var(--bk-v2-gutter) 56px;
  max-width: calc(var(--bk-v2-page-w) + var(--bk-v2-gutter) * 2);
}
body.bc-pages-v2 .bk-search-list .bk-archive-row{ padding: 22px 0; }
body.bc-pages-v2 .bk-search-list .bk-archive-row .bk-row__title{ font-size: 21px; }
body.bc-pages-v2 .bk-search-list .bk-archive-row p{ margin-top: 6px; }
body.bc-pages-v2 .bk-search-fallback{ padding-top: 22px; font-size: 14px; color: var(--bk-v2-ink-muted); margin: 0; }
body.bc-pages-v2 mark.bk-hit{
  background: transparent; color: var(--bk-brand); border-bottom: 2px solid var(--bk-accent);
}

/* ================================================================
   A-7 404
   ================================================================ */
body.bc-pages-v2 .bk-404{
  padding: 64px var(--bk-v2-gutter) 72px;
  display: grid; grid-template-columns: minmax(0,1fr) var(--bk-v2-head-side);
  gap: var(--bk-v2-gap); align-items: start;
  max-width: none; margin: 0;
}
body.bc-pages-v2 .bk-404__main{ min-width: 0; }
body.bc-pages-v2 .bk-404__code{
  font: 13px/1 var(--bk-font-num); color: var(--bk-v2-ink-muted);
  letter-spacing: .1em; margin: 0 0 18px;
}
body.bc-pages-v2 .bk-404__title{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 40px; line-height: 1.35; color: var(--bk-brand);
  margin: 0 0 16px; letter-spacing: .02em; text-wrap: pretty;
}
body.bc-pages-v2 .bk-404__lead{ margin: 0 0 28px; max-width: 60ch; text-wrap: pretty; }
body.bc-pages-v2 .bk-404__entry{
  display: flex; gap: 14px; align-items: baseline; padding: 12px 0;
  border-bottom: 1px solid var(--bk-v2-rule);
  text-decoration: none; color: var(--bk-brand); font-weight: 600; min-height: 24px;
}
body.bc-pages-v2 .bk-404__num{
  font: 11px/1 var(--bk-font-num); color: var(--bk-accent); width: 20px; flex: none; font-weight: 400;
}

/* ================================================================
   A-8〜A-11 固定ページの器
   ================================================================ */
body.bc-pages-v2 .bk-page{
  max-width: var(--bk-v2-page-w); margin: 0 auto; padding: 22px 0 64px;
  display: block;
}
body.bc-pages-v2 .bk-page__head{ padding: 28px 0 26px; border-bottom: 1px solid var(--bk-brand); }
body.bc-pages-v2 .bk-page:has(.bk-page__lead) .bk-page__head{ border-bottom: 0; padding-bottom: 0; }
body.bc-pages-v2 .bk-page__title{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 40px; line-height: 1.35; color: var(--bk-brand);
  margin: 0; letter-spacing: .03em; text-wrap: pretty;
}
body.bc-pages-v2 .bk-page__lead{
  margin: 14px 0 0; max-width: var(--bk-v2-measure); text-wrap: pretty;
  padding-bottom: 26px; border-bottom: 1px solid var(--bk-brand);
}
body.bc-pages-v2 .bk-page__body{ min-width: 0; }
body.bc-pages-v2 .bk-page__cols{
  display: grid; grid-template-columns: 240px minmax(0,1fr);
  gap: var(--bk-v2-gap); padding-top: 36px;
}
body.bc-pages-v2 .bk-page__cols .bk-page__body{ max-width: var(--bk-v2-measure); }

/* 親の自動目次は固定ページの器では出さない(自前の .bk-toc と二重になる) */
body.bc-pages-v2 .bk-page__body .toc_block{ display: none; }

body.bc-pages-v2 .bk-toc{ font-size: 14px; position: sticky; top: 24px; align-self: start; }
body.bc-pages-v2 .bk-toc__caption{
  color: var(--bk-v2-ink-muted); font-size: 12px; letter-spacing: .06em;
  padding-bottom: 6px; border-bottom: 1px solid var(--bk-brand);
}
body.bc-pages-v2 .bk-toc a{
  display: block; padding: 8px 0; border-bottom: 1px solid var(--bk-v2-rule);
  color: var(--bk-v2-ink); text-decoration: none; font-size: 14px; min-height: 24px;
}
body.bc-pages-v2 .bk-toc a:hover{ color: var(--bk-brand); }

/* 固定ページ本文の組版。Xwrite 親の見出し意匠は .articleBody 配下にしか当たらないが、
   将来 .articleBody が付いた場合でも勝てるよう :not() 連鎖を重ねて 0,8,1 にしておく。 */
body.bc-pages-v2 .bk-page__body h2,
body.bc-pages-v2 .bk-page__body h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion){
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 26px; line-height: 1.4; color: var(--bk-brand);
  letter-spacing: .03em; margin: 56px 0 18px; padding: 18px 0 0;
  border: 0; border-top: 1px solid var(--bk-brand);
  background: none; text-align: left; text-wrap: pretty;
}
body.bc-pages-v2 .bk-page__body h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion)::before,
body.bc-pages-v2 .bk-page__body h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion)::after{
  content: none; display: none;
}
body.bc-pages-v2 .bk-page__body > h2:first-child{ margin-top: 40px; }
body.bc-pages-v2 .bk-page__body h3{
  font-family: var(--bk-font-mincho); font-weight: 600;
  font-size: 20px; line-height: 1.45; color: var(--bk-brand);
  margin: 30px 0 10px; letter-spacing: .03em; border: 0; padding: 0; background: none;
}
body.bc-pages-v2 .bk-page__body p{ margin: 0 0 20px; text-wrap: pretty; }
/* 本文の段落だけを行長で締める(部品の中の p は各部品の規則が持つ) */
body.bc-pages-v2 .bk-page__body > p{ max-width: var(--bk-v2-measure); font-size: 16px; }
body.bc-pages-v2 .bk-page__body ul,
body.bc-pages-v2 .bk-page__body ol{ max-width: var(--bk-v2-measure); margin: 0 0 20px; }
body.bc-pages-v2 .bk-page__body .bk-form-note{
  font-size: 13px; color: var(--bk-v2-ink-muted); max-width: var(--bk-v2-measure); margin: 0 0 14px;
}
body.bc-pages-v2 .bk-page__body img{ max-width: 100%; height: auto; border-radius: var(--bk-r0); }
/* 散文の中のインラインリンクは高さが 16〜18px にしかならず SP のタップ検収で落ちる
   (ないおと 2026-09-06 実測: .crumbs a 16px / 検索案内 19px)。inline-flex にすると
   折り返せなくなるので、上下 padding で当たり判定だけを 24px 以上へ広げる。 */
body.bc-pages-v2 .bk-page__body a,
body.bc-pages-v2 .bk-search-fallback a,
body.bc-pages-v2 .bk-aside-note p a{ padding: 5px 0; }

/* 「編集部の約束」— A-8 の主役 */
body.bc-pages-v2 .bk-promise{ border-top: 1px solid var(--bk-brand); }
body.bc-pages-v2 .bk-promise__row{
  display: grid; grid-template-columns: 56px 300px minmax(0,1fr);
  gap: 24px; padding: 26px 0; border-bottom: 1px solid var(--bk-v2-rule);
  align-items: baseline;
}
body.bc-pages-v2 .bk-promise__row:last-child{ border-bottom-color: var(--bk-brand); }
body.bc-pages-v2 .bk-promise p{ margin: 0; max-width: none; text-wrap: pretty; font-size: 16px; }
/* 要素を添えて 0,3,1 にする。.bk-page__body p(0,2,1)と .bk-promise p(0,2,1)に確実に勝つ */
body.bc-pages-v2 .bk-promise p.bk-promise__num{
  font: 13px/1 var(--bk-font-num); color: var(--bk-accent); letter-spacing: .1em;
}
body.bc-pages-v2 .bk-promise p.bk-promise__title{
  font-family: var(--bk-font-mincho); font-size: 28px; line-height: 1.35;
  color: var(--bk-brand); font-weight: 600;
}

/* 奥付 */
body.bc-pages-v2 .bk-colophon{
  margin: 0; border-top: 1px solid var(--bk-v2-rule);
  display: grid; grid-template-columns: 200px minmax(0,1fr); font-size: 15px;
}
body.bc-pages-v2 .bk-colophon dt,
body.bc-pages-v2 .bk-colophon dd{ margin: 0; padding: 12px 0; border-bottom: 1px solid var(--bk-v2-rule); }
body.bc-pages-v2 .bk-colophon dt{ color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-colophon dt:last-of-type,
body.bc-pages-v2 .bk-colophon dd:last-of-type{ border-bottom-color: var(--bk-brand); }

/* 「答えないこと」/「受け付けること」 */
body.bc-pages-v2 .bk-scope{ border-top: 1px solid var(--bk-brand); }
body.bc-pages-v2 .bk-scope__row{ padding: 14px 0; border-bottom: 1px solid var(--bk-v2-rule); }
body.bc-pages-v2 .bk-scope__row:last-child{ border-bottom-color: var(--bk-brand); }
body.bc-pages-v2 .bk-scope__row strong{ display: block; color: var(--bk-brand); font-weight: 600; }
body.bc-pages-v2 .bk-scope__row small{ display: block; font-size: 14px; color: var(--bk-v2-ink-muted); line-height: 1.8; }
body.bc-pages-v2 .bk-scope-cols{
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: var(--bk-v2-head-gap); padding: 36px 0 8px;
}
/* 2列の見出しは上罫を持たない。本文 h2 の :not() 連鎖(0,7,1)に勝つ形にする */
body.bc-pages-v2 .bk-page__body .bk-scope-cols h2,
body.bc-pages-v2 .bk-page__body .bk-scope-cols h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion){
  margin: 0 0 10px; padding-top: 0; border-top: 0; font-size: 26px;
}

/* Contact Form 7 を板の「下線のみ」へ寄せる(CF7 のテンプレートは触らない) */
body.bc-pages-v2 .bk-page__body .wpcf7-form p{ margin: 0 0 18px; max-width: 680px; }
body.bc-pages-v2 .bk-page__body .wpcf7-form label{ display: block; font-size: 13px; color: var(--bk-v2-ink-muted); }
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="text"],
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="email"],
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="tel"],
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="url"],
body.bc-pages-v2 .bk-page__body .wpcf7-form select,
body.bc-pages-v2 .bk-page__body .wpcf7-form textarea{
  width: 100%; box-sizing: border-box; font: inherit; font-size: 17px;
  color: var(--bk-v2-ink); background: transparent;
  border: 0; border-bottom: 1px solid var(--bk-v2-rule);
  padding: 6px 0 8px; outline: none; border-radius: var(--bk-r0);
  -webkit-appearance: none; appearance: none; min-height: 24px;
}
body.bc-pages-v2 .bk-page__body .wpcf7-form textarea{ border-bottom-color: var(--bk-brand); line-height: 1.8; resize: vertical; }
body.bc-pages-v2 .bk-page__body .wpcf7-form input:focus,
body.bc-pages-v2 .bk-page__body .wpcf7-form select:focus,
body.bc-pages-v2 .bk-page__body .wpcf7-form textarea:focus{ border-bottom-color: var(--bk-brand); }
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="submit"],
body.bc-pages-v2 .bk-page__body .wpcf7-form button[type="submit"]{
  width: auto; font: inherit; font-size: 15px;
  background: var(--bk-brand); color: var(--bk-bg);
  border: 0; border-radius: var(--bk-r0); padding: 12px 28px;
  min-height: 44px; cursor: pointer;
}
body.bc-pages-v2 .bk-page__body .wpcf7-form input[type="submit"]:hover,
body.bc-pages-v2 .bk-page__body .wpcf7-form button[type="submit"]:hover{ background: var(--bk-accent); }

/* ================================================================
   中間幅(768〜1024)— 板に無い幅。右カラムを畳んで横はみ出しを防ぐ
   ================================================================ */
@media (min-width: 768px) and (max-width: 1024px){
  body.bc-pages-v2{ --bk-v2-gutter: 32px; --bk-v2-gap: 40px; --bk-v2-head-side: 300px; --bk-v2-side: 280px; }
  body.bc-pages-v2 .bk-front-main,
  body.bc-pages-v2 .bk-list-main,
  body.bc-pages-v2 .bk-404{ grid-template-columns: minmax(0,1fr); }
  body.bc-pages-v2 .bk-list-aside{ padding-top: 8px; }
  body.bc-pages-v2 .bk-entrances{ grid-template-columns: 1fr 1fr; }
  body.bc-pages-v2 .bk-entrances > a{ padding: 24px 20px; border-left: 1px solid var(--bk-v2-rule); border-bottom: 1px solid var(--bk-v2-rule); }
  body.bc-pages-v2 .bk-entrances > a:first-child{ padding: 24px 20px 24px 0; }
  body.bc-pages-v2 .bk-entrances > a:nth-child(3){ border-left: 0; padding-left: 0; }
  body.bc-pages-v2 .bk-page{ padding-left: var(--bk-v2-gutter); padding-right: var(--bk-v2-gutter); }
  body.bc-pages-v2 .bk-page__cols{ grid-template-columns: 200px minmax(0,1fr); gap: 40px; }
  body.bc-pages-v2 .bk-hero__body,
  body.bc-pages-v2 .bk-archive-head{ grid-template-columns: minmax(0,1fr); gap: 16px; }
  body.bc-pages-v2 .bk-hero__meta{ align-self: start; }
}

/* ================================================================
   SP(板 A-2 / A-4 / A-9 = 390)
   ================================================================ */
@media (max-width: 767px){
  body.bc-pages-v2{ line-height: 1.85; --bk-v2-gutter: var(--bk-v2-gutter-sp); }

  /* ---- ヘッダー ---- */
  body.bc-pages-v2 .bk-header{ padding: 0; }
  body.bc-pages-v2 .bk-header__mast{
    padding: 16px var(--bk-v2-gutter-sp) 10px; align-items: flex-end; gap: 12px;
  }
  body.bc-pages-v2 .bk-header__brand{ display: block; }
  body.bc-pages-v2 .bk-header__title{ font-size: 26px; }
  body.bc-pages-v2 .bk-header__tag{ display: block; font-size: 11px; margin-top: 8px; }
  body.bc-pages-v2 .bk-header__searchlink{
    display: inline-flex; align-items: flex-end; min-height: 24px; flex: none;
    font-size: 13px; color: var(--bk-brand); text-decoration: none;
    border-bottom: 1px solid var(--bk-brand); padding-bottom: 2px;
  }
  body.bc-pages-v2 .bk-header__nav{
    gap: 20px; padding: 9px var(--bk-v2-gutter-sp) 10px;
    border-top: 1px solid var(--bk-v2-rule);
    font-size: 13px; white-space: nowrap; overflow-x: auto; align-items: center;
  }
  body.bc-pages-v2 .bk-header__nav a{ min-height: 24px; display: inline-flex; align-items: center; flex: none; }
  body.bc-pages-v2 .bk-header__search{ display: none; }

  /* ---- フッター ---- */
  body.bc-pages-v2 .bk-footer{ padding: 24px var(--bk-v2-gutter-sp) 18px; font-size: 12px; }
  body.bc-pages-v2 .bk-footer__grid{ grid-template-columns: 1fr; gap: 14px; }
  body.bc-pages-v2 .bk-footer__brand{ font-size: 18px; }
  body.bc-pages-v2 .bk-footer__links{
    flex-direction: row; flex-wrap: wrap; gap: 6px 18px;
    padding-top: 12px; border-top: 1px solid var(--bk-v2-rule);
  }
  body.bc-pages-v2 .bk-footer__links a{ min-height: 24px; display: inline-flex; align-items: center; }
  body.bc-pages-v2 .bk-footer__disclosurecol{ padding-top: 12px; border-top: 1px solid var(--bk-v2-rule); }
  body.bc-pages-v2 .bk-footer__base{ margin-top: 16px; padding-top: 8px; }

  /* ---- パンくず ---- */
  body.bc-pages-v2 .bk-crumbrow{ padding: 14px var(--bk-v2-gutter-sp) 0; }
  body.bc-pages-v2 .bk-breadcrumb .breadcrumbs,
  body.bc-pages-v2 .bk-breadcrumb .breadcrumbs > li{ font-size: 12px; gap: 8px; }

  /* ---- ヒーロー ---- */
  body.bc-pages-v2 .bk-hero{ padding: 16px var(--bk-v2-gutter-sp) 0; }
  body.bc-pages-v2 .bk-hero__photo{ height: 200px; }
  body.bc-pages-v2 .bk-hero__photo--placeholder{
    background: repeating-linear-gradient(135deg,
      var(--bk-v2-photo-a) 0 10px, var(--bk-v2-photo-b) 10px 20px);
  }
  body.bc-pages-v2 .bk-hero__body{ grid-template-columns: 1fr; gap: 10px; padding: 16px 0 20px; }
  body.bc-pages-v2 .bk-hero__kicker{ font-size: 12px; margin-bottom: 4px; }
  body.bc-pages-v2 .bk-hero__title{ font-size: 24px; line-height: 1.45; margin-bottom: 10px; }
  body.bc-pages-v2 .bk-hero__title a{ display: inline-block; min-height: 24px; }
  body.bc-pages-v2 .bk-hero__lead{ font-size: 15px; margin-bottom: 10px; }
  body.bc-pages-v2 .bk-hero__meta{
    border-top: 0; padding-top: 0; font: 12px/1.8 var(--bk-font-num);
    flex-direction: row; flex-wrap: wrap; gap: 4px 14px;
  }
  body.bc-pages-v2 .bk-hero__meta > div{ gap: 6px; justify-content: flex-start; }

  /* ---- 入口 ---- */
  body.bc-pages-v2 .bk-entrances{ grid-template-columns: 1fr; margin: 0 var(--bk-v2-gutter-sp); border-bottom: 0; }
  body.bc-pages-v2 .bk-entrances > a{
    border-left: 0; border-bottom: 1px solid var(--bk-v2-rule);
    padding: 14px 0; display: flex; gap: 14px; align-items: baseline; min-height: 24px;
  }
  body.bc-pages-v2 .bk-entrances > a:first-child{ display: block; padding: 22px 0 20px; }
  body.bc-pages-v2 .bk-entrances > a:last-child{ border-bottom: 1px solid var(--bk-brand); padding-right: 0; }
  body.bc-pages-v2 .bk-entrances > a:first-child .bk-entrances__title{ font-size: 24px; }
  body.bc-pages-v2 .bk-entrances > a:first-child p{ font-size: 14px; margin-bottom: 0; }
  body.bc-pages-v2 .bk-entrances > a:not(:first-child) .bk-entrances__num{ margin: 0; width: 20px; flex: none; font-size: 11px; }
  body.bc-pages-v2 .bk-entrances > a:not(:first-child) .bk-entrances__title{ font-size: 18px; margin: 0; }
  body.bc-pages-v2 .bk-entrances > a:not(:first-child) p,
  body.bc-pages-v2 .bk-entrances > a:not(:first-child) .bk-entrances__links{ display: none; }
  body.bc-pages-v2 .bk-entrances > a:first-child .bk-entrances__links{ display: none; }

  /* ---- 新着 / 一覧 ---- */
  body.bc-pages-v2 .bk-front-main{
    padding: 26px var(--bk-v2-gutter-sp) 40px;
    grid-template-columns: 1fr; gap: 28px;
  }
  body.bc-pages-v2 .bk-list-head h2{ font-size: 20px; }
  body.bc-pages-v2 .bk-list-head span{ display: none; }
  body.bc-pages-v2 .bk-row{ grid-template-columns: 1fr; row-gap: 2px; padding: 14px 0; }
  body.bc-pages-v2 .bk-row__date{ font-size: 12px; }
  body.bc-pages-v2 .bk-row__asof{ text-align: left; font-size: 12px; }
  body.bc-pages-v2 .bk-row__title{ font-size: 17px; display: inline-block; min-height: 24px; }
  body.bc-pages-v2 .bk-more a{ display: inline-flex; align-items: center; min-height: 24px; }

  body.bc-pages-v2 .bk-archive-head{
    padding: 14px var(--bk-v2-gutter-sp) 20px;
    grid-template-columns: 1fr; gap: 8px;
  }
  body.bc-pages-v2 .bk-archive-head h1{ font-size: 32px; }
  body.bc-pages-v2 .bk-archive-head__desc{ font-size: 15px; }
  body.bc-pages-v2 .bk-archive-head__count{ border-top: 0; padding-top: 0; }
  body.bc-pages-v2 .bk-archive-head--tag{ display: block; padding: 14px var(--bk-v2-gutter-sp) 20px; }
  body.bc-pages-v2 .bk-archive-head--tag .bk-archive-head__main{ display: block; }
  body.bc-pages-v2 .bk-archive-head--tag h1{ font-size: 28px; margin: 4px 0 6px; }
  body.bc-pages-v2 .bk-archive-head--tag .bk-archive-head__count{ margin-left: 0; }

  body.bc-pages-v2 .bk-list-main{
    padding: 0 var(--bk-v2-gutter-sp) 32px; grid-template-columns: 1fr; gap: 28px;
  }
  body.bc-pages-v2 .bk-list-aside{ padding-top: 0; }
  body.bc-pages-v2 .bk-archive-row{ grid-template-columns: 1fr; padding: 18px 0; min-height: 24px; }
  body.bc-pages-v2 .bk-archive-row .bk-row__date{ font-size: 12px; }
  body.bc-pages-v2 .bk-archive-row .bk-row__title{ font-size: 19px; }
  body.bc-pages-v2 .bk-archive-row p{ display: none; }
  body.bc-pages-v2 .bk-pager{ padding-top: 16px; min-height: 24px; }
  body.bc-pages-v2 .bk-pager a{ display: inline-flex; align-items: center; min-height: 24px; }
  body.bc-pages-v2 .bk-taglist a{ min-height: 24px; display: inline-flex; align-items: center; }
  body.bc-pages-v2 .bk-aside-row{ min-height: 24px; }

  /* ---- 検索 ---- */
  body.bc-pages-v2 .bk-search-head{ padding: 14px var(--bk-v2-gutter-sp) 20px; max-width: none; }
  body.bc-pages-v2 .bk-search-list{ padding: 0 var(--bk-v2-gutter-sp) 32px; max-width: none; }
  body.bc-pages-v2 .bk-search-list .bk-archive-row p{ display: block; font-size: 15px; }
  body.bc-pages-v2 .bk-searchform{ flex-direction: column; align-items: stretch; gap: 12px; }
  body.bc-pages-v2 .bk-searchform .bk-button{ align-self: flex-start; }
  body.bc-pages-v2 .bk-field--search input{ font-size: 22px; }
  body.bc-pages-v2 .bk-field--search-sm input{ font-size: 19px; }

  /* ---- 404 ---- */
  body.bc-pages-v2 .bk-404{
    padding: 32px var(--bk-v2-gutter-sp) 40px; grid-template-columns: 1fr; gap: 32px;
  }
  body.bc-pages-v2 .bk-404__title{ font-size: 28px; }
  body.bc-pages-v2 .bk-404__lead{ font-size: 15px; margin-bottom: 20px; }

  /* ---- 固定ページ ---- */
  body.bc-pages-v2 .bk-page{
    padding: 14px var(--bk-v2-gutter-sp) 40px; max-width: none;
  }
  body.bc-pages-v2 .bk-page__head{ padding: 16px 0 20px; }
  body.bc-pages-v2 .bk-page__title{ font-size: 30px; }
  body.bc-pages-v2 .bk-page__lead{ font-size: 15px; padding-bottom: 20px; }
  body.bc-pages-v2 .bk-page__cols{ grid-template-columns: 1fr; gap: 24px; padding-top: 20px; }
  body.bc-pages-v2 .bk-toc{ position: static; }
  body.bc-pages-v2 .bk-page__body h2,
  body.bc-pages-v2 .bk-page__body h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion){
    font-size: 22px; margin: 36px 0 10px; padding-top: 14px;
  }
  body.bc-pages-v2 .bk-page__body h3{ font-size: 18px; margin: 22px 0 8px; }
  body.bc-pages-v2 .bk-page__body > p,
  body.bc-pages-v2 .bk-page__body ul,
  body.bc-pages-v2 .bk-page__body ol{ font-size: 15px; }
  body.bc-pages-v2 .bk-page__body .bk-scope-cols h2,
  body.bc-pages-v2 .bk-page__body .bk-scope-cols h2:not(.is-style-default):not(.is-style-normal):not([class*="is-style-heading"]):not(.xw-block-faq__question):not(.xw-block-faq__accordion){
    font-size: 22px;
  }

  body.bc-pages-v2 .bk-promise__row{ grid-template-columns: 1fr; gap: 6px; padding: 18px 0; }
  body.bc-pages-v2 .bk-promise p{ font-size: 15px; }
  body.bc-pages-v2 .bk-promise p.bk-promise__title{ font-size: 23px; }
  body.bc-pages-v2 .bk-promise p.bk-promise__num{ font-size: 11px; }
  body.bc-pages-v2 .bk-colophon{ grid-template-columns: 88px minmax(0,1fr); font-size: 14px; }
  body.bc-pages-v2 .bk-colophon dt,
  body.bc-pages-v2 .bk-colophon dd{ padding: 10px 0; }
  body.bc-pages-v2 .bk-scope-cols{ grid-template-columns: 1fr; gap: 28px; padding: 24px 0 8px; }
  body.bc-pages-v2 .bk-scope__row small{ font-size: 14px; }
}

/* ================================================================
   印刷 — 罫だけの誌面なのでそのまま出す。ナビと検索は落とす
   ================================================================ */
@media print{
  body.bc-pages-v2 .bk-header__nav,
  body.bc-pages-v2 .bk-header__searchlink,
  body.bc-pages-v2 .bk-searchform,
  body.bc-pages-v2 .bk-pager{ display: none; }
}

/* ── 2026-09-06 検収是正(親セッション) ──
 * 検索面の h1(「…」の結果)は meta 行の体裁のまま / SP の入口番号 III が折れないよう nowrap */
body.bc-pages-v2 .bk-search-head__h1{ font: inherit; margin: 0; display: inline; color: inherit; letter-spacing: inherit; }
@media (max-width: 782px){
  body.bc-pages-v2 .bk-entrances > a:not(:first-child) .bk-entrances__num{ width: auto; min-width: 24px; white-space: nowrap; margin-right: 8px; }
}

/* ── 2026-09-06 検証器 v2 で発覚(Opus): 親 Xwrite の body{display:flex;flex-direction:column} の下で
 * .bc-v2(max-width:1440px; margin:0 auto)が flex item として内容幅まで縮む(about 705px・カテゴリ 1380px・検索 963px・404 1162px)。
 * cross 軸の auto margin が stretch を打ち消すため。width:100% で版面を確定させる。 ── */
body.bc-pages-v2 .bc-v2 { width: 100%; }
