/* xconcierge-v6.css — このページ独自の v6 の層（決裁 I-29）。site-v6.css（下層共通の v6）の後に読む。?design=v4 では読まない。
   色は site-v6.css の役割の名前だけを使う（直値は :root の宣言だけ・check_colors.py）。文字の大きさは 11 段の --t-* だけ（check_type.py）。
   =====================================================================================
   型: 「建物の断面」（X Concierge は建物単位の製品。参考: digitalgrid.com の暗い面と明るい面の交互・大きな数字、Apple の製品ページの章立て）
     ・ページ全体を 1 棟の断面図に見立てる。上に行くほど階が上がる（読む順に 8F → 1F へ降りる）。1F は入口＝資料請求
     ・各節の上端が床（スラブの線）。左肩に階のボタン（エレベーターの「点いた」ボタン＝いまここ）と節の名前（英字のラベルは日本語に置き換え・I-8 と同じ）
     ・1240px 以上は建物の外壁（wrap の外側の縦線）が 8F から 1F まで通り、階のボタンは外壁と床の交点にのる
     ・ヒーロー（外観・夜）は暗い面: 銘板にのせたロゴ、建物の写真、館内のフロアガイド（ページ内リンク）
     ・6F → 吹き抜け（GL 帯 floorstack・WebGL はそのまま）→ 5F を暗い面でつなぎ、床の線を引かない＝一続きの断面
     ・8F 部屋の間仕切り／7F アイコンのタイル／6F 大きな数字とタイル／5F・4F 罫の一覧／3F 料金の表／2F 階段（手順が右へ上がる）／1F 入口
   HTML は v6 専用の要素だけ（hidden・class は v6-）: .v6-xc-pill・.v6-dir（フロアガイド）・.v6-floor（階の表示）・.v6-ch-ic（チャネルのアイコン）、
   </body> の直前に v6 のときだけ動く小さなスクリプト（暗い面の節の上でヘッダーを暗い作りに）
   ===================================================================================== */

/* ---------- 値 ---------- */
:root{
  --xc-plate:var(--surface-0);      /* ロゴの銘板の面。:root で白に決まり、暗い面の中でも白のまま（ロゴの「oncierge」の紺は明るい面用の色なので暗い面に直接のせない） */
  --xc-b:56px;                      /* 階のボタンの直径 */
  --xc-wall:calc((100% - var(--max)) / 2);   /* 外壁の位置（節の幅に対する wrap の外側。1240px 以上で使う） */
}
@media(max-width:700px){:root{--xc-b:48px}}

/* ---------- 暗い面（ヒーロー・6F・吹き抜け・5F・1F）: site-v6.css の「暗い面」と同じ入れ替え ----------
   旧トークン（--ink・--muted・--canvas など）も暗い面の値に向け直す（v4 の規則が直接使っているため。値は役割の名前）。
   ヘッダーの明暗は、この入れ替え（--surface-0）を xconcierge-mega.js が見て決める（決裁 I-55。前は --xc-dark:1 の印をページのスクリプトが見ていた） */
:root :is(.sub-hero,#whatwedo,.gl-band,#governance,#flow+section){
  --text-1:var(--d-text-1); --text-2:var(--d-text-2); --text-3:var(--d-text-3);
  --surface-0:var(--d-surface-0); --surface-1:var(--d-surface-1);
  --line:var(--d-line); --line-strong:var(--d-line-strong);
  --fill:var(--d-fill); --fill-hover:var(--d-fill-hover);
  --glass-line:var(--d-glass-line); --glass-line-hover:var(--d-glass-line-hover); --glass-sh:var(--d-glass-sh);
  --raised:var(--d-raised); --raised-sh:var(--d-raised-sh);
  --brand-text:var(--d-brand-text); --brand-text-strong:var(--d-brand-text-strong); --focus:var(--d-brand-text); --ok:var(--d-ok); --ok-line:var(--d-ok-line);
  --ink:var(--text-1); --muted:var(--text-2); --subtle:var(--text-3); --canvas:var(--surface-0); --bg-muted:var(--surface-1); --border:var(--line); --border-strong:var(--line-strong);
  color:var(--text-1);
}
:root :is(.sub-hero,#whatwedo,#governance,#flow+section){background:var(--surface-0)}   /* 地は WebGL の地（#080c16）と同じ。吹き抜け（GL 帯）は透明のまま */
/* 暗いヘッダーの文字: site-v6.css が body.subpage の文字を --text-1（紺）にしたため、色を持たない暗いヘッダーのナビが紺になって読めない
   （v4 は body の白を継いでいた。吹き抜けの上でも起きる）。暗いヘッダーでは役割が暗い面の値に入れ替わっているので --text-1＝白に戻す。
   共通の site-v6.css で直ればこの 1 行は要らない */
:root .header:not(.on-light){color:var(--text-1)}

/* ---------- 断面の骨組み: 床（スラブ）・外壁・階のボタン ---------- */
/* 床: 各階の上端。吹き抜けから 5F へは線を引かない（一続き） */
:root :is(#mechanism,#channels,#whatwedo,#core,#pricing,#flow,#flow+section){border-top:1px solid var(--line-strong)}
:root #governance{border-top:0}
/* フロアガイドから飛んだとき、階のボタン（床の上に半分出る）が固定ヘッダーの下に隠れないように */
:root :is(#mechanism,#channels,#whatwedo,#governance,#core,#pricing,#flow){scroll-margin-top:96px}
:root #v6-entrance{scroll-margin-top:124px}
/* 外壁: wrap の外側の縦線が 8F から 1F まで通る（1240px 以上。狭い幅では画面の端と重なるので引かない） */
@media(min-width:1240px){
  :root :is(#mechanism,#channels,#whatwedo,.gl-band,#governance,#core,#pricing,#flow,#flow+section)::before{
    content:""; position:absolute; z-index:-1; top:0; bottom:0; left:var(--xc-wall); right:var(--xc-wall);
    border-left:1px solid var(--line); border-right:1px solid var(--line); pointer-events:none}
}
/* 階の表示: 床の線の上に「点いた」階のボタン（面を塗って床と外壁の線を隠す）、名前は床の下 */
:root .v6-floor[hidden]{display:flex}
:root .v6-floor{position:absolute; z-index:2; top:calc(var(--xc-b) / -2 - .5px); left:calc(max(0px, var(--xc-wall)) + 24px);
  display:flex; align-items:flex-end; gap:14px; margin:0; text-align:left}
:root .v6-floor b{flex:none; display:grid; place-items:center; width:var(--xc-b); height:var(--xc-b); border-radius:50%;
  background:var(--text-1); color:var(--surface-0); box-shadow:0 0 0 4px var(--surface-0);   /* 縁はこの階の地の色（隣の階が同じ明るさでも丸が欠けない） */
  font-family:var(--disp); font-weight:800; font-size:var(--t-h5); line-height:1; letter-spacing:0; font-variant-numeric:tabular-nums}
:root .v6-floor span{margin-bottom:-.2em; font-family:var(--disp); font-weight:800; font-size:var(--t-h6); line-height:1.2; letter-spacing:.02em; color:var(--text-1);
  font-feature-settings:"palt" 1; white-space:nowrap}
/* ↑ I-31 で h6 が 1440 幅 20px になり、行の箱（1.5＝30px）の上端が床の線にかかっていた（文字の上端が線の上 0.5px）。
   1 行だけのラベルなので行送りを 1.2 に詰め、下へ .2em ずらす＝文字の下端（ベースライン）を丸の下端にそろえ、文字の上端を床の線の下 8px 前後に置く（390 幅の 16px でも同じ） */
@media(min-width:1240px){:root .v6-floor{left:calc(var(--xc-wall) - var(--xc-b) / 2)}}   /* 外壁と床の交点にのせる */
@media(max-width:700px){:root .v6-floor{left:16px}}
/* 英字のラベル（UNIT OF A BUILDING など）は階の名前（日本語）に置き換える（I-8。飾りのラベル） */
:root :is(#mechanism,#channels,#whatwedo,#governance,#core,#pricing,#flow) .idx{display:none}
:root .sub-sec .ed-title{max-width:20em}

/* ---------- ヒーロー（外観・夜）: 銘板のロゴ・建物の写真・フロアガイド ---------- */
:root .sub-hero{padding-bottom:0; overflow-x:clip}           /* 写真を画面の右端まで出すので、横にはみ出た分は切る */
:root .sub-hero .idx{display:none}                          /* [ X CONCIERGE — 建物単位 ] は日本語のピルに（I-8） */
:root .v6-xc-pill[hidden]{display:flex}
:root .v6-xc-pill{width:max-content; max-width:100%; box-sizing:border-box; padding:5px 14px 6px; border:1px solid var(--glass-line); border-radius:8px;
  background:var(--fill); box-shadow:var(--glass-sh); -webkit-backdrop-filter:var(--glass-blur); backdrop-filter:var(--glass-blur);
  font-family:var(--disp); font-weight:800; font-size:var(--t-h6); line-height:1.5; letter-spacing:.02em; color:var(--text-1); font-feature-settings:"palt" 1}
:root .sub-hero .kv2{grid-template-columns:minmax(0,2.35fr) minmax(0,1fr); column-gap:clamp(40px,4.4vw,64px); align-items:center}   /* h1（56px）を 3 行に収める幅 */
/* 銘板: 建物の名前の板。ロゴは色を変えずに明るい板にのせる */
:root .sub-hero .kv2 div:has(>svg.kv-lg){display:flex; width:max-content; max-width:100%; box-sizing:border-box;
  padding:clamp(18px,1.8vw,26px) clamp(22px,2.4vw,34px); border-radius:12px; background:var(--xc-plate); box-shadow:var(--glass-sh)}
:root .sub-hero svg.kv-lg{height:clamp(40px, 26.3px + 2.62vw, 64px); max-width:100%}
:root .sub-hero .kv-sub{margin-top:clamp(28px,3vw,40px)}
/* 建物の写真（決裁 I-29: 建物の写真を大きく）。元の図版（A-06）の上に重ねる。写真が読めないときは元の図版が見える */
:root .sub-hero .kv2 .vis{aspect-ratio:3/4; margin-right:calc(min(0px, (var(--max) - 100vw) / 2) - 24px); border-radius:12px 0 0 12px; border-color:var(--glass-line); border-right:0}   /* 右は画面の端まで（建物が画面の外へ続く） */
:root .sub-hero .kv2 .vis::before{content:""; position:absolute; inset:0;
  background:url("/assets/images/stock_20260731/A-02_不動産管理-2.webp") 50% 40% / cover no-repeat}
:root .sub-hero .kv2 .vis .cd{display:block; z-index:1; right:16px; bottom:14px; font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.06em;
  color:var(--text-2)}                                         /* 図版の番号（v4 と同じ位置。site-v6.css は隠すが、v4 のホバーの規則が当たる要素なので残す） */
/* フロアガイド: 館内の案内板（8F → 1F。押すとその階へ） */
:root .v6-dir[hidden]{display:grid}
:root .v6-dir{grid-template-columns:repeat(8,minmax(0,1fr)); margin-top:clamp(56px,6.4vw,104px); padding-bottom:12px; border-top:1px solid var(--line)}
/* ↑ 下の 8F の階のボタン（床の上に半分＝28px 出る。縁 4px）と案内板の丸の間が 4.5px しかなく、縁が丸に触れていた（701px 以上。700px 以下は下で 36px）。12px 足して 16px 空ける */
:root .v6-dir a{display:flex; align-items:center; gap:10px; min-height:48px; padding:20px 8px 28px 0; box-sizing:content-box;
  font-family:var(--font); font-size:var(--t-small); font-weight:600; line-height:1.4; letter-spacing:.02em; color:var(--text-2); transition:color .2s}
:root .v6-dir b{flex:none; display:grid; place-items:center; width:40px; height:40px; border:1px solid var(--glass-line); border-radius:50%;
  background:var(--fill); box-shadow:var(--glass-sh); font-family:var(--disp); font-weight:800; font-size:var(--t-small); line-height:1; letter-spacing:0; color:var(--text-1);
  font-variant-numeric:tabular-nums; transition:background .2s,border-color .2s,color .2s}
:root .v6-dir a:hover{color:var(--text-1)}
:root .v6-dir a:hover b{background:var(--text-1); border-color:var(--text-1); color:var(--surface-0)}   /* 押すと点く（各階の表示と同じ） */
@media(hover:hover){:root .v6-dir a:hover{color:var(--brand-text)}}   /* I-54 フロアの名前は赤（番号は塗りの丸の上なので今のまま。暗い面なので #FF1500） */

/* ---------- 8F 建物単位: 1 つの階を 3 つの部屋に仕切る ---------- */
:root #mechanism .mech-grid{gap:0; margin-top:clamp(48px,5vw,72px)}
:root #mechanism .mech{border:0; border-left:1px solid var(--line-strong); border-radius:0; background:none; box-shadow:none; padding:4px clamp(20px,2.8vw,40px) 8px}
:root #mechanism .mech:first-child{border-left:0; padding-left:0}
:root #mechanism .mech .mk2{margin-bottom:16px; font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.06em; color:var(--text-3);
  background:none; -webkit-background-clip:border-box; background-clip:border-box}
:root #mechanism .mech b{margin:0; font-size:var(--t-h4); line-height:1.4}
:root #mechanism .mech p{margin-top:12px; font-size:var(--t-body); line-height:1.75}

/* ---------- 7F チャネル: 6 つの入口をアイコンのタイルで ---------- */
:root #channels .ch-row{display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; margin-top:clamp(48px,5vw,72px)}
:root #channels .ch{position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:0; aspect-ratio:1/1; min-width:0; box-sizing:border-box;
  padding:20px; border:1px solid var(--glass-line); border-radius:12px; background:var(--fill); box-shadow:var(--glass-sh);
  font-family:var(--disp); font-weight:800; font-size:var(--t-h5); line-height:1.4; letter-spacing:0; color:var(--text-1); font-feature-settings:"palt" 1}
:root .v6-ch-ic[hidden]{display:block}
:root .v6-ch-ic{position:absolute; top:20px; left:20px; width:36px; height:36px; color:var(--text-1)}
:root .v6-ch-ic svg{display:block; width:100%; height:100%}
:root #channels .ch .ph{position:absolute; top:20px; right:16px; padding:2px 8px 3px; border:1px solid var(--glass-line); border-radius:6px; background:var(--raised);
  font-family:var(--font); font-size:var(--t-caption); font-weight:600; line-height:1.5; letter-spacing:.06em; color:var(--text-2)}   /* 物理チャネルの印（v4 の黄の札を役割の色に） */

/* ---------- 6F 対応範囲（暗い面）: 大きな数字とカテゴリのタイル ---------- */
:root #whatwedo .cnt-band{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:clamp(48px,5vw,80px);
  border:0; border-top:1px solid var(--line); border-radius:0; background:none; overflow:visible}
:root #whatwedo .cnt{min-width:0; padding:28px 24px 8px; border-left:1px solid var(--line); text-align:left}
:root #whatwedo .cnt:first-child{border-left:0; padding-left:0}
:root #whatwedo .cnt .n{font-family:var(--disp); font-weight:800; font-size:var(--t-display); line-height:1; letter-spacing:-.03em; color:var(--text-1); font-variant-numeric:tabular-nums}
:root #whatwedo .cnt .n span{margin-left:4px; font-size:var(--t-h3) !important; letter-spacing:0}   /* 「種」: style 属性の .5em（40px）を段（h3）に。style 属性より強くするため !important */
:root #whatwedo .cnt .l{margin-top:16px; font-family:var(--font); font-size:var(--t-body); font-weight:600; line-height:1.6; letter-spacing:.02em; color:var(--text-2)}
:root #whatwedo .cat-grid{gap:16px; margin-top:clamp(40px,4.4vw,64px)}
:root #whatwedo .cat{border:1px solid var(--glass-line); border-radius:12px; background:var(--fill); box-shadow:var(--glass-sh); padding:28px 24px 24px}
:root #whatwedo .cat .cc{font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.06em; color:var(--text-3);
  background:none; -webkit-background-clip:border-box; background-clip:border-box}   /* I-19: グラデーションの字をやめる */
:root #whatwedo .cat b{margin:12px 0 16px; font-size:var(--t-h4); line-height:1.4; color:var(--text-1)}
:root #whatwedo .cat li{padding:9px 0 9px 16px; border-top:1px solid var(--line); font-size:var(--t-small); line-height:1.6; color:var(--text-2)}
:root #whatwedo .cat li::before{top:calc(9px + .8em); background:var(--text-3)}   /* 短線は単色（I-19） */
:root #whatwedo .sub-ctas{margin-top:48px}

/* ---------- 吹き抜け（GL 帯 floorstack）: WebGL・動きはそのまま、文字を段に ---------- */
:root .gl-band .bl{margin-bottom:24px; font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.2em; color:var(--text-2)}
:root .gl-band .bt{font-family:var(--disp); font-weight:800; font-size:var(--t-h1); line-height:1.3; letter-spacing:.02em; color:var(--text-1); font-feature-settings:"palt" 1}

/* ---------- 5F 統制（暗い面）: 番号・アイコン・名前・説明の罫の一覧 ---------- */
:root #governance .gv4{display:block; margin-top:clamp(48px,5vw,72px); border-top:1px solid var(--line)}
:root #governance .gov-cell{display:grid; grid-template-columns:56px 48px minmax(0,4fr) minmax(0,7fr); column-gap:clamp(16px,2.6vw,40px); align-items:start;
  padding:32px 0; border:0; border-bottom:1px solid var(--line); border-radius:0; background:none; box-shadow:none; color:var(--text-1)}
:root #governance .gov-cell .gc{padding-top:6px; font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.06em; color:var(--text-3);
  background:none; -webkit-background-clip:border-box; background-clip:border-box}
:root #governance .gov-cell .gv-ic{position:static; width:48px; height:48px; margin-top:-8px}
:root #governance .gov-cell .gt{margin:0; padding-right:0; font-size:var(--t-h4); line-height:1.4; letter-spacing:0; color:var(--text-1)}
:root #governance .gov-cell .gd{font-size:var(--t-body); line-height:1.75; color:var(--text-2)}

/* ---------- 4F 基幹連携: 2 列の罫の一覧（名前を大きく） ---------- */
:root #core .core-rows{margin-top:clamp(48px,5vw,72px); border-top:1px solid var(--line-strong)}
:root #core .core-row{display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:clamp(16px,3vw,48px); align-items:baseline; padding:28px 0}
:root #core .core-row .k{width:auto; font-family:var(--disp); font-weight:800; font-size:var(--t-h4); line-height:1.4; letter-spacing:0; color:var(--text-1)}
:root #core .form-note{margin-top:20px}

/* ---------- 3F 料金: 表（左に見出し、右に大きな数字） ---------- */
:root #pricing .bm-grid{max-width:none !important; margin-top:clamp(48px,5vw,72px)}   /* style 属性の max-width:560px を外す（表を全幅に） */
:root #pricing .bm-card{display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); grid-template-rows:auto auto 1fr auto; column-gap:clamp(24px,4vw,64px);
  padding:32px 0 0; border:0; border-top:2px solid var(--text-1); border-radius:0; background:none; box-shadow:none}
:root #pricing .bm-k{grid-column:1; grid-row:1; font-family:var(--font); font-size:var(--t-caption); font-weight:600; letter-spacing:.06em; color:var(--text-3);
  background:none; -webkit-background-clip:border-box; background-clip:border-box}
:root #pricing .bm-t{grid-column:1; grid-row:2; margin-top:12px; font-size:var(--t-h3); line-height:1.35; color:var(--text-1)}
:root #pricing .bm-d{grid-column:1; grid-row:3; margin-top:12px; font-size:var(--t-body); line-height:1.75; color:var(--text-2)}
:root #pricing .bm-rows{grid-column:2; grid-row:1 / span 3; margin-top:0; border-top:0}
:root #pricing .bm-row{display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:24px; padding:28px 0; border-bottom:1px solid var(--line)}
:root #pricing .bm-row:first-child{padding-top:0}
:root #pricing .bm-row span{font-family:var(--font); font-size:var(--t-body); font-weight:700; letter-spacing:.02em; color:var(--text-2)}
:root #pricing .bm-row b{font-family:var(--disp); font-weight:800; font-size:var(--t-h2); line-height:1.15; letter-spacing:-.01em; color:var(--text-1); text-align:right;
  font-variant-numeric:tabular-nums; font-feature-settings:"palt" 1}
:root #pricing .bm-row:nth-child(3) b{font-size:var(--t-h4); line-height:1.4; letter-spacing:0}   /* 数字でない行（手数料）は小さく */
:root #pricing .bm-note{grid-column:2; grid-row:4; margin-top:20px; font-family:var(--font); font-size:var(--t-caption); letter-spacing:.02em; line-height:1.7; color:var(--text-3)}
:root #pricing .bm-note::before{background:var(--text-3); margin-top:10px}   /* I-19 */

/* ---------- 2F 導入フロー: 階段（手順が右へ一段ずつ上がる） ---------- */
:root #flow .bm-flow{grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; align-items:end; margin-top:clamp(56px,6vw,96px)}
:root #flow .bm-step{box-sizing:border-box; padding:24px clamp(20px,2vw,28px) 32px; border:0; border-top:2px solid var(--text-1); border-left:1px solid var(--line-strong);
  border-radius:0; background:var(--surface-1); box-shadow:none}
:root #flow .bm-step:first-child{border-left:0}
:root #flow .bm-step:nth-child(1){min-height:clamp(220px,17vw,248px)}
:root #flow .bm-step:nth-child(2){min-height:clamp(280px,21.2vw,308px)}
:root #flow .bm-step:nth-child(3){min-height:clamp(340px,25.4vw,368px)}
:root #flow .bm-step:nth-child(4){min-height:clamp(400px,29.6vw,428px)}
:root #flow .bm-step .hk{display:block; font-family:var(--disp); font-weight:800; font-size:var(--t-h4); line-height:1.3; letter-spacing:.02em; color:var(--text-3)}
:root #flow .bm-step b{margin-top:16px; font-size:var(--t-h4); line-height:1.4; letter-spacing:0; color:var(--text-1)}
:root #flow .bm-step p{margin-top:10px; font-size:var(--t-body); line-height:1.75; color:var(--text-2)}
:root #flow .bm-step .bm-ic{top:20px; right:20px}

/* ---------- 1F 資料請求（入口・暗い面） ---------- */
:root #flow+section .ed-title{margin:0 auto; max-width:none}
:root #flow+section .sub-ctas{margin-top:40px}

/* ---------- 900px 以下 ---------- */
@media(max-width:1100px){
  :root .v6-dir{grid-template-columns:repeat(4,minmax(0,1fr))}
  :root #channels .ch-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  :root #flow .bm-step .hk{padding-right:48px}
}
@media(max-width:900px){
  :root .sub-hero .kv2{grid-template-columns:1fr; row-gap:48px}
  :root .sub-hero .kv2 .vis{aspect-ratio:4/3; margin:0 -24px; border-radius:0; border-width:1px 0}   /* 写真は画面の幅いっぱい */
  :root #mechanism .mech-grid{grid-template-columns:1fr}
  :root #mechanism .mech,:root #mechanism .mech:first-child{border-left:0; border-top:1px solid var(--line-strong); padding:24px 0 8px}
  :root #mechanism .mech:first-child{border-top:0; padding-top:0}
  :root #whatwedo .cnt-band{grid-template-columns:repeat(2,minmax(0,1fr))}
  :root #whatwedo .cnt:nth-child(3){border-left:0; padding-left:0}
  :root #whatwedo .cnt:nth-child(n+3){border-top:1px solid var(--line); margin-top:24px}
  :root #governance .gov-cell{grid-template-columns:minmax(0,1fr) 48px; row-gap:8px}
  :root #governance .gov-cell .gc{grid-column:1; grid-row:1; padding-top:0}
  :root #governance .gov-cell .gv-ic{grid-column:2; grid-row:1 / span 2; margin-top:0}
  :root #governance .gov-cell .gt{grid-column:1; grid-row:2}
  :root #governance .gov-cell .gd{grid-column:1 / -1; grid-row:3; margin-top:4px}
  :root #core .core-row{grid-template-columns:1fr; gap:8px; padding:24px 0}
  :root #pricing .bm-card{grid-template-columns:1fr; grid-template-rows:none}
  :root #pricing :is(.bm-k,.bm-t,.bm-d,.bm-rows,.bm-note){grid-column:1; grid-row:auto}
  :root #pricing .bm-rows{margin-top:32px; border-top:1px solid var(--line)}
  :root #pricing .bm-row:first-child{padding-top:24px}
  :root #flow .bm-flow{grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:16px}
  :root #flow .bm-step,:root #flow .bm-step:first-child{min-height:0; border-left:0}
  :root #flow .bm-step:nth-child(n){min-height:0}
}
/* ---------- 700px 以下（390 幅） ---------- */
@media(max-width:700px){
  :root .sub-hero .kv2 .vis{aspect-ratio:1/1; margin:0 -16px}
  :root .sub-hero .kv-sub{word-break:normal}   /* 決裁 I-67④（QA 37）: 句の切れ目に任せると 390 幅で「住まいの問い／合わせ」と語の途中で折れた。h1 の句を span.v6-xc-ph（無装飾）で区切り、700px 以下は句の間でだけ折る */
  :root .v6-xc-ph{white-space:nowrap}
  :root .v6-dir{grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:12px; padding-bottom:36px}   /* 下の 8F のボタン（床の上に半分出る）と重ならない */
  :root .v6-dir a{padding:12px 0; border-bottom:1px solid var(--line)}
  :root #channels .ch-row{grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px}
  :root #channels .ch{aspect-ratio:auto; min-height:128px; padding:16px}
  :root .gl-band .bl{letter-spacing:.12em}
  :root .v6-ch-ic{top:16px; left:16px; width:32px; height:32px}
  :root #channels .ch .ph{top:16px; right:12px}
  :root #whatwedo .cnt{padding:20px 12px 4px 16px}
  :root #whatwedo .cnt:nth-child(odd){padding-left:0}
  :root #pricing .bm-row{grid-template-columns:1fr; gap:4px}
  :root #pricing .bm-row b{text-align:left}
  :root #flow .bm-flow{grid-template-columns:1fr; gap:12px}
}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
/* 決裁 I-70②: GL 帯が静的な表示（three.js が無い・WebGL が落ちた）になったとき、下の層の放射グラデーションは前後の 6F・5F の暗い面より明るく、帯の上下に境目が出た。v6 では 6F・5F と同じ地にして一続きの断面を保つ（見出しの背面プレートはそのまま） */
:root:is(.gl-static,.gl-lost) [data-scene="floorstack"]{background:var(--surface-0)}
