/* ==========================================================
   biz-nav.css — 非住宅(biz)WF 共通ヘッダー／フッター（カンプ忠実改修 2026-07-17）
   ----------------------------------------------------------
   方針:
   - ヘッダーの寸法・余白・ロゴは【住宅WF global-nav.css の実装値をそのまま流用】
     （シンボル11.25vw / ロゴX 52px(PC)・16px(SP) / VW幅ヘッダー / メニュー右寄せ /
      スクロール縮小[FV通過で高さ半分・上段非表示] / SPボトムシート）。
     クラス名は住宅と同じ .gnav 系を biz ページ内で複製（ページ独立のため衝突なし）。
   - 構成はカンプ design_comp/design-非住宅FV-230330-01.png 準拠の【2段構成】:
       上段=濃グレーのユーティリティバー（会社情報／採用情報／住宅ピル／SNS）※電話はC9改訂で撤去（2026-07-17）
       下段=IDシンボル白・大 ＋ 右上メインナビ（縦棒区切り＋下線）＋ CTA ＋ ロゴタイプ
   - 色は住宅=白基調に対し biz=カンプのミドルグレー基調（biz-base.css の反転トークン）。
   - フッターは既存 biz の .bfoot を維持。
   出典: ディレクター指示 2026-07-17（住宅と同寸・カンプ構成）
   ========================================================== */

:root{
  --gnav-h:56px;                 /* JSで実測上書き（FVのstickyオフセット等が参照） */
  --gnav-ink:var(--c-text);      /* 白（住宅の #1a1a1a に対し反転） */
  --gnav-sub:var(--c-text-sub);
  --gnav-line:var(--c-line-dark);
  /* --- シンボル/ロゴ寸法は住宅 global-nav.css と完全一致（数値流用） --- */
  --gnav-pad-x:16px;
  --gnav-symbol-h:48px;
  --gnav-logo-x:16px;                       /* ビューポート左端からの固定位置（SP） */
  --gnav-type-h:clamp(24px, min(3vw, 4.5vh), 38.5px);
  --gnav-type-right:16px;
  /* カンプ濃グレー（上段バー）実測 #636160 →白文字AA確保のためやや暗く調整＝推定・デザイナー確定待ち */
  --gnav-utilbar-bg:#565554;
}
@media (min-width:960px){
  :root{
    --gnav-pad-x:40px;                      /* カンプ実測: メニュー右端≒1240/1280 */
    --gnav-logo-x:52px;                     /* カンプ実測: シンボル x52（固定・住宅と一致） */
    --gnav-type-right:45px;                 /* カンプ実測: ロゴタイプ右端 1235/1280 */
    --gnav-symbol-h:clamp(84px, min(11.25vw, 15vh), 144px); /* 住宅と完全一致 */
  }
}
html{scrollbar-gutter:stable;}

/* --- ロゴSVG共通（インラインSVG・fill:currentColor） --- */
.gnav-svg{display:block;fill:currentColor;}
.gnav-svg--symbol{height:34px;width:auto;}
.gnav-svg--type{height:22px;width:auto;}

/* ==========================================================
   ヘッダー（住宅 global-nav.css と同構造・biz配色）
   ========================================================== */
.gnav{
  position:sticky;top:0;z-index:120;
  pointer-events:none;
  min-height:var(--gnav-h,0px);
}
.gnav__bar{
  pointer-events:auto;
  background:var(--c-bg);border-bottom:1px solid var(--gnav-line);
  transition:background-color .35s ease;
}

/* --- 上段ユーティリティバー（カンプ準拠・濃グレー・全幅／PCのみ） --- */
.gnav__utilbar{display:none;}
@media (min-width:960px){
  .gnav__utilbar{
    display:block;background:var(--gnav-utilbar-bg);
    max-height:60px;overflow:hidden;
    transition:max-height .35s ease,opacity .25s ease;
  }
  /* 2026-07-17 住宅コンパクト化に追随: gap 22→14・font 12→11・上下pad 7→5（詰め） */
  .gnav__utilbar-in{
    display:flex;align-items:center;justify-content:flex-end;gap:14px;
    padding:5px var(--gnav-pad-x);font-size:11px;color:#f2f1ee;
    letter-spacing:.04em;
  }
  /* 2026-09-17 ディレクター指示:「最上段、会社概要・採用情報・住宅をご検討の方のメニューは文字色を白に」
     旧= #f2f1ee（オフホワイト）。トンマナ側で --gnav-utilbar-bg が #565554→#999999 に
     上書きされており（biz-c1-dark.css）、灰色地にオフホワイトでコントラストが不足していた。
     .gnav-roll__t::after はロールオーバー時の複製テキストなので、そちらにも色が行き渡るよう
     親の <a> に指定して currentColor で継がせる。 */
  .gnav__utilbar-in{color:#fff;}
  .gnav__utilbar-in .gnav-roll{color:#fff;}
  /* 住宅をご検討の方: 白枠ピル（カンプ準拠・idworks.co.jpへ） */
  .gnav__housebtn{
    text-decoration:none;color:#fff;
    border:1px solid #fff;border-radius:999px;
    padding:1px 12px;font-size:11px;letter-spacing:.04em;white-space:nowrap;
    transition:background-color .2s ease,color .2s ease;
  }
  /* 2026-09-17 ディレクター指示:「住宅サイトのボタンはロールオーバーで白背景＋黒文字に」
     旧= color:var(--gnav-utilbar-bg) ＝ トンマナ上書き後は #999999 の灰色文字で、
     指示の「黒文字」になっていなかった。 */
  .gnav__housebtn:hover,
  .gnav__housebtn:focus-visible{background:#fff;color:#000;}
  /* 電話（TEL）はヘッダーに置かない＝住宅C9改訂に追随（2026-07-17）。
     電話はフォーム直前セクション＋フッターに配置。旧 .gnav__tel-top ルールは削除。 */
  /* SNSアイコン枠（Instagram・YouTube／プレースホルダ） */
  /* SNS（2026-09-17 ディレクター支給のSVGアイコンへ差し替え）
     旧= "IG" "YT" の文字プレースホルダを枠線付きの箱に入れていた。アイコンになったので
     枠・地色・箱を外し、アイコンだけが並ぶ形にする。 */
  .gnav__sns{display:flex;align-items:center;gap:10px;margin-left:10px;}
  .gnav__sns-ic{
    display:inline-flex;align-items:center;justify-content:center;
    width:20px;height:20px;color:#fff;text-decoration:none;
    transform-origin:50% 50%;
    will-change:transform;
    transition:opacity .2s ease;
  }
  /* 縦方向の回転（ディレクター指示「ロールオーバーで縦方向にくるっと回転」）。
     2026-09-17 是正:「くるくる回転しすぎ。文字のメニューと同様一回回ればいい」
     旧実装は transition で rotateX(360deg) を当てていたため、
     **カーソルを乗せて1回転＋外して逆回転の1回転＝毎回2回転**していた。
     ホバー中だけ再生する keyframes に変えて、乗せたときに1回だけ回るようにする
     （離すときは何も起きない＝文字メニューの .gnav-roll と同じ「一方向に1回」の体感）。 */
  @keyframes bizSnsFlip{ from{ transform:rotateX(0deg); } to{ transform:rotateX(360deg); } }
  .gnav__sns-ic:hover .bz-sns-svg,
  .gnav__sns-ic:focus-visible .bz-sns-svg{
    animation:bizSnsFlip .55s cubic-bezier(.22,.61,.36,1) 1;
  }
  .gnav__sns-ic:hover,
  .gnav__sns-ic:focus-visible{opacity:.85;}
  .gnav__sns-ic .bz-sns-svg{width:100%;height:100%;display:block;transform-origin:50% 50%;backface-visibility:visible;}
  /* link-anim.css の下線アニメが乗らないようにする（アイコンなので下線は不要） */
  .gnav__sns-ic::after{display:none;}
  @media (prefers-reduced-motion:reduce){
    .gnav__sns-ic:hover .bz-sns-svg,
    .gnav__sns-ic:focus-visible .bz-sns-svg{animation:none;}
    .gnav__sns-ic:hover,
    .gnav__sns-ic:focus-visible{opacity:.7;}
  }
}

/* --- 下段メイン行（VW幅・ロゴ左／右寄せ行・住宅と同寸） --- */
.gnav__inner{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:10px var(--gnav-pad-x) 10px var(--gnav-logo-x);min-height:56px;
}
.gnav__logo{color:var(--gnav-ink);display:block;line-height:0;}
.gnav__logo .gnav-svg--symbol{height:var(--gnav-symbol-h);}
.gnav__rows{display:none;}
.gnav__type{display:none;}
.gnav__dd{display:none;}

/* --- SP: ハンバーガー --- */
.gnav__burger{
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;
  width:44px;height:44px;padding:0;cursor:pointer;
  border:none;background:transparent;   /* 2026-10-10 ディレクター指示：四角い枠は不要（住宅 2026-10-03 と同じ） */
}
.gnav__burger span{
  display:block;width:20px;height:2px;background:var(--gnav-ink);
  transition:transform .3s ease,opacity .3s ease;
}
.gnav__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.gnav__burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.gnav__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* --- ロールオーバー文字アニメーション --- */
.gnav-roll{text-decoration:none;color:inherit;}
.gnav-roll__w{display:inline-block;overflow:hidden;vertical-align:top;}
.gnav-roll__t{
  position:relative;display:inline-block;line-height:1.6;
  transition:transform .38s cubic-bezier(.19,1,.22,1);will-change:transform;
}
.gnav-roll__t::after{content:attr(data-text);position:absolute;left:0;top:100%;white-space:nowrap;}
@media (hover:hover) and (pointer:fine){
  .gnav-roll:hover .gnav-roll__t,
  .gnav-roll:focus-visible .gnav-roll__t{transform:translateY(-100%);}
}
@media (prefers-reduced-motion:reduce){
  html:not(.wf-force-motion) .gnav-roll__t{transition:none;}
  html:not(.wf-force-motion) .gnav-roll:hover .gnav-roll__t{transform:none;text-decoration:underline;}
  html:not(.wf-force-motion) .gnav__dd{transition:none;}
}
.gnav a[aria-current="page"] .gnav-roll__t,
.gnav-sheet a[aria-current="page"] .gnav-roll__t{border-bottom:1px solid currentColor;}

/* ==========================================================
   PCヘッダー（960px〜）: メインメニュー／CTA行／ロゴタイプ
   ========================================================== */
@media (min-width:960px){
  .gnav__burger{display:none;}
  /* 2026-07-17 住宅コンパクト化に追随: 上pad 16→10・下pad 30→20相当（clamp）／rows gap 31→24 */
  .gnav__inner{align-items:flex-end;padding:clamp(6px,1vh,10px) var(--gnav-pad-x) clamp(10px,2vh,20px) var(--gnav-logo-x);}
  .gnav__rows{
    display:flex;flex-direction:column;align-items:flex-end;
    justify-content:flex-start;gap:clamp(10px, min(1.9vw, 2.5vh), 24px);
    flex:1;min-width:0;
  }
  .gnav__type{
    display:block;color:var(--gnav-ink);line-height:0;margin-right:5px;
  }
  .gnav__type .gnav-svg--type{height:var(--gnav-type-h);}
  .gnav__type .gnav__type-sig{
    display:block;text-align:right;font-size:11px;letter-spacing:.14em;
    color:var(--gnav-sub);font-style:italic;margin-top:6px;line-height:1;
  }
  /* メインメニュー（縦罫区切り＋下線＝カンプ準拠） */
  .gnav__main{align-self:stretch;display:flex;justify-content:flex-end;
    border-bottom:1px solid var(--gnav-line);padding-bottom:12px;}
  .gnav__main ul{display:flex;list-style:none;margin:0;padding:0;}
  .gnav__main li{position:relative;padding:0 clamp(12px, 1.875vw, 24px);}
  .gnav__main li:last-child{padding-right:0;}
  .gnav__main li+li::before{
    content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
    width:1px;height:14px;background:var(--gnav-line);
  }
  .gnav__main a{font-size:14px;letter-spacing:.1em;color:var(--gnav-ink);white-space:nowrap;}
  /* CTA行（お問い合わせ／お見積り依頼・アイコン付き） */
  .gnav__cta{display:flex;align-items:center;gap:22px;font-size:12px;}
  .gnav__cta .gnav-roll{color:var(--gnav-ink);}
  .gnav__cta-ic{
    display:inline-block;width:14px;height:11px;margin-right:5px;vertical-align:-1px;
    border:1px solid var(--gnav-ink);
  }
  .gnav__cta-ic--round{border-radius:50%;width:12px;height:12px;}
  /* PCドロップダウン（子階層） */
  .gnav__dd{
    display:block;position:absolute;left:50%;top:100%;
    transform:translateX(-50%) translateY(-4px);
    padding-top:10px;z-index:10;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .22s ease,transform .22s ease,visibility 0s .22s;
  }
  .gnav__main li:hover>.gnav__dd,
  .gnav__main li:focus-within>.gnav__dd{
    opacity:1;visibility:visible;pointer-events:auto;
    transform:translateX(-50%) translateY(0);
    transition:opacity .22s ease,transform .22s ease;
  }
  .gnav__main li.gnav-dd-esc>.gnav__dd{
    opacity:0 !important;visibility:hidden !important;pointer-events:none !important;
  }
  .gnav__main ul.gnav__dd-in{
    display:block;list-style:none;margin:0;padding:6px 0;min-width:220px;
    background:var(--c-bg-sub);border:1px solid var(--gnav-line);
    box-shadow:0 10px 24px rgba(0,0,0,.35);
  }
  .gnav__dd-in li{padding:0;}
  .gnav__dd-in li+li::before{content:none;}
  .gnav__dd-link{
    display:block;padding:9px 18px;text-decoration:none;
    font-size:12.5px;letter-spacing:.06em;color:var(--gnav-ink);white-space:nowrap;
  }
  .gnav__dd-link:hover,.gnav__dd-link:focus-visible{background:var(--c-bg-sub2);}
}

/* ==========================================================
   スクロール縮小ヘッダー（住宅仕様と同一挙動・biz配色）
   - 高さ約1/2 / ロゴ縮小 / 上段バー・ロゴタイプ非表示
   - 背景=biz反転色50%透過（住宅=白50%の反転）
   ========================================================== */
.gnav__inner{transition:padding .35s ease,min-height .35s ease;}
.gnav__logo .gnav-svg--symbol{transition:height .35s ease;}
.gnav--shrunk .gnav__bar{
  background:rgba(110,111,112,.5);      /* biz反転色50%透過（推定・デザイナー確定待ち） */
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.gnav--shrunk .gnav__inner{padding:6px var(--gnav-pad-x) 6px var(--gnav-logo-x);min-height:48px;}
.gnav--shrunk .gnav__logo .gnav-svg--symbol{height:40px;}
@media (min-width:960px){
  .gnav__type{max-height:60px;overflow:hidden;transition:max-height .35s ease,opacity .25s ease;}
  .gnav--shrunk .gnav__inner{padding:8px var(--gnav-pad-x) 8px var(--gnav-logo-x);}
  .gnav__rows{transition:gap .35s ease;}
  .gnav--shrunk .gnav__rows{gap:6px;} /* 住宅と一致（8→6） */
  .gnav--shrunk .gnav__main{padding-bottom:6px;}
  .gnav--shrunk .gnav__logo .gnav-svg--symbol{height:clamp(42px,min(5.625vw,7.5vh),72px);}
  /* 上段バー・ロゴタイプを畳む */
  .gnav--shrunk .gnav__utilbar{max-height:0;opacity:0;pointer-events:none;}
  .gnav--shrunk .gnav__type{max-height:0;opacity:0;pointer-events:none;}
}
.gnav--no-anim,.gnav--no-anim *{transition:none !important;}
@media (prefers-reduced-motion:reduce){
  html:not(.wf-force-motion) :is(.gnav__bar,.gnav__inner,.gnav__logo .gnav-svg--symbol,.gnav__utilbar,.gnav__type){transition:none;}
}

/* ==========================================================
   SPボトムシート（住宅と同一挙動・biz配色）
   ========================================================== */
.gnav-overlay{
  position:fixed;inset:0;z-index:170;background:rgba(0,0,0,.55);
  opacity:0;visibility:hidden;transition:opacity .4s ease,visibility 0s .4s;
}
.gnav-overlay.is-open{opacity:1;visibility:visible;transition:opacity .4s ease;}
.gnav-sheet{
  position:fixed;left:0;right:0;bottom:0;z-index:180;
  background:var(--c-bg-sub);border-radius:18px 18px 0 0;
  box-shadow:0 -10px 40px rgba(0,0,0,.5);
  padding:8px 20px calc(14px + env(safe-area-inset-bottom,0px));
  max-height:92svh;overflow-y:auto;
  transform:translateY(103%);visibility:hidden;
  transition:transform .58s cubic-bezier(.26,1.16,.4,1),visibility 0s .58s;
}
.gnav-sheet.is-open{
  transform:translateY(0);visibility:visible;
  transition:transform .58s cubic-bezier(.26,1.16,.4,1);
}
@media (prefers-reduced-motion:reduce){
  html:not(.wf-force-motion) :is(.gnav-sheet,.gnav-sheet.is-open){transition:none;}
  html:not(.wf-force-motion) :is(.gnav-overlay,.gnav-overlay.is-open){transition:none;}
}
body.gnav-locked{overflow:hidden;}
.gnav-sheet__handle{width:40px;height:4px;border-radius:2px;background:var(--c-line-dark);margin:4px auto 10px;}
.gnav-sheet__grid{
  display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:column;grid-template-rows:repeat(3,auto);
  column-gap:18px;border-top:1px solid var(--c-line);
}
.gnav-sheet__link{
  display:block;padding:12px 2px;font-size:14px;letter-spacing:.03em;
  color:var(--gnav-ink);border-bottom:1px solid var(--c-line);
}
/* [20260821cd] ディレクター指摘「項目の文字の下に白い点々が現れる」（2026-08-24）。
   正体＝ロールオーバー演出の複製テキスト（.gnav-roll__t::after）の上端が露出していたもの。
   複製は「マスクのちょうど1行下」に隠す設計だが、マスクと文字の行高が食い違っていた。
     .gnav-roll__w（マスク・overflow:hidden） = 行高の指定が無く .gnav-sheet__link から継承 → 実測28px
     .gnav-roll__t（文字）                    = 下行で 1.5 に上書き              → 実測21px
     .gnav-roll__t::after（複製）             = top:100% ＝ **文字の高さ**基準     → 21px の位置
   複製は21pxに置かれるのにマスクは28pxまで見えるため、差の**7px＝複製の文字の頭**が出ていた。
   → マスクにも同じ行高を与えて 21px に揃える。はみ出し 7px→0px（シート内6項目すべてで確認）。
   ホバーの入れ替え（translateY(-100%)）は複製の位置と連動しているため動きは変わらない。
   ※PCヘッダーは .gnav-roll__t が 1.6 のままでマスクと一致するので元から症状なし。
     住宅サイトはシート項目にロール演出を使っていない（該当0件）ため biz 専用の不具合。 */
.gnav-sheet__link .gnav-roll__t{line-height:1.5;}
.gnav-sheet__link .gnav-roll__w{line-height:1.5;}
.gnav-sheet__cta{display:flex;gap:8px;margin-top:14px;}
.gnav-sheet__cta a{
  flex:1;text-align:center;text-decoration:none;
  font-size:11.5px;letter-spacing:.02em;padding:12px 2px;
  border:1px solid var(--c-line-dark);color:var(--gnav-ink);white-space:nowrap;
}
.gnav-sheet__cta a:first-child{background:var(--c-primary);color:var(--c-primary-ink);border-color:var(--c-primary);}
.gnav-sheet__small{
  display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;
  margin-top:14px;font-size:11px;color:var(--gnav-sub);
}
.gnav-sheet__small a{color:var(--gnav-sub);text-decoration:none;}
/* 2026-10-10：Instagram／YouTube のロゴ（丸枠なし）をテキストの前に */
.gnav-sheet__small a.gnav-sheet__sns{display:inline-flex;align-items:center;gap:5px;}
.gnav-sheet__sns-ic{width:13px;height:13px;flex:none;display:block;}
.gnav-sheet__house{
  display:block;text-align:center;margin-top:12px;padding:9px;font-size:12px;
  letter-spacing:.04em;color:var(--gnav-ink);border:1px solid var(--gnav-ink);border-radius:999px;text-decoration:none;
}
/* 2026-10-15 P142：SPシートに電話（タップ発信）を復活。旧＝住宅C9改訂に追随して削除（2026-07-17）していたが、
   住宅側も P141 でメニュー内にタップ発信の電話を置いたため、両サイトで揃える。 */
.gnav-sheet__tel{
  display:flex;align-items:baseline;justify-content:center;gap:10px;margin-top:14px;
  color:var(--gnav-ink);text-decoration:none;
}
.gnav-sheet__tel-label{font-size:11px;letter-spacing:.2em;color:var(--gnav-sub);}
.gnav-sheet__tel-num{font-size:20px;letter-spacing:.06em;border-bottom:1px solid currentColor;padding-bottom:1px;}
.gnav-sheet__close{
  display:block;width:100%;margin-top:12px;padding:10px;
  font-size:12px;letter-spacing:.2em;color:var(--gnav-sub);
  background:var(--c-bg-sub2);border:1px solid var(--c-line);cursor:pointer;
}
@media (min-width:960px){
  .gnav-sheet,.gnav-overlay{display:none;}
}

/* ==========================================================
   フッター（既存 biz .bfoot を維持）
   ========================================================== */
.bfoot{background:#0f1012;color:var(--c-text-sub);padding:var(--sp-5) var(--pad-side) 24px;border-top:1px solid var(--c-line);}
.bfoot__inner{max-width:var(--w-content);margin:0 auto;}
.bfoot__brand{margin-bottom:var(--sp-4);}
.bfoot__logo{display:flex;align-items:baseline;gap:8px;color:var(--c-text);margin-bottom:var(--sp-2);}
.bfoot__logo-mark{font-size:18px;letter-spacing:.06em;font-weight:500/* design版移植時の変更: 600→500（太字禁止・design-rules §0/§6-3）*/;}
.bfoot__logo-badge{font-size:10px;letter-spacing:.16em;color:var(--c-primary-ink);background:var(--c-accent);padding:2px 7px;border-radius:2px;}
.bfoot__sig{font-size:11px;letter-spacing:.16em;color:var(--c-text-note);font-style:italic;}
.bfoot__info{font-size:12px;line-height:1.9;color:var(--c-text-note);margin-top:var(--sp-2);}
/* フッター電話（ヘッダーTEL撤去=C9改訂の受け皿。tap-to-callリンク／住宅フッター同様の見せ方） */
.bfoot__tel a{color:var(--c-text);text-decoration:none;letter-spacing:.04em;}
.bfoot__tel a:hover{text-decoration:underline;}

.bfoot__sitemap{
  display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3) var(--grid-gap);
  border-top:1px solid var(--c-line);padding-top:var(--sp-3);margin-bottom:var(--sp-4);
}
.bfoot__col{min-width:0;}
.bfoot__head{font-size:12px;font-weight:500/* design版移植時の変更: 600→500（太字禁止・design-rules §0/§6-3）*/;letter-spacing:.1em;color:var(--c-text);border-bottom:1px solid var(--c-line);padding-bottom:6px;margin-bottom:8px;}
.bfoot__list{list-style:none;font-size:12px;line-height:2.1;}
.bfoot__list a{color:var(--c-text-sub);text-decoration:none;}
.bfoot__list a:hover{color:var(--c-text);text-decoration:underline;}

/* 2026-10-15 P142：住宅サイトへのボタン（会社情報の下）。ヘッダー上段 .gnav__housebtn と同じピル・ホバーで白地黒文字。
   旧 .bfoot__cross（幅いっぱいの1行・高さ80px）は撤去。下の .bfoot__cross 系の定義は未使用。 */
.bfoot__crossbtn{
  display:inline-block;margin-top:12px;padding:5px 16px;
  font-size:12px;letter-spacing:.04em;line-height:1.6;white-space:nowrap;text-decoration:none;
  color:#fff;border:1px solid #fff;border-radius:999px;
  transition:background-color .2s ease,color .2s ease;
}
.bfoot__crossbtn:hover,.bfoot__crossbtn:focus-visible{background:#fff;color:#000;}
.bfoot__cross{
  border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);
  padding:var(--sp-3) 0;margin-bottom:var(--sp-3);
}
.bfoot__cross a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--c-text);font-size:14px;letter-spacing:.04em;}
.bfoot__cross a:hover{color:var(--c-accent);}
.bfoot__cross .arw{color:var(--c-accent);}

.bfoot__copy{font-size:10px;color:var(--c-text-note);text-align:center;padding-top:14px;border-top:1px solid var(--c-line);}
@media(min-width:768px){
  .bfoot__brand{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;}
  .bfoot__sitemap{grid-template-columns:repeat(5,1fr);}  /* 2026-10-01 「お知らせ・イベント」列を追加して4→5列 */
}
