@charset "UTF-8";
/* ==========================================================================
   hal-chuo.css — 工程5 中央区下層ページ専用スタイル

   Build ID: v1.0.56_Stage5Chuo1
   根拠: 工程5_中央区_Claude実装指示.md（Instruction Revision 2）§7・§11.3・§12.3

   適用範囲は .hal-chuo 配下へ完全に名前空間化している。
   page-chuo.php でだけ enqueue し、TOP・港区・GUIDE・COST・CASE・8調査項目ページへの
   適用は0件である。body / h1 / h2 / h3 / p / a への無条件グローバル指定は行っていない。

   新色リテラルは追加せず、既存 --hal-* トークンだけを参照する。
   左縦棒（border-left / inset shadow / 疑似要素 / gradient）、角丸カードの量産、
   box-shadowによる浮遊カード、100vw、負margin、新規 !important は使用していない。
   公開コピーをCSS疑似要素で生成していない。
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. ページ基盤
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo__main {
  display: block;
  background: var(--hal-bg);
  min-width: 0;
}

/* 見出しは中央揃え、本文は左揃え（§7.4）。 */
.hal-chuo .hal-chuo__h2 {
  margin: 0 0 clamp(20px, 2.4vw, 28px);
  padding: 0;
  font-family: var(--hal-serif);
  font-size: clamp(21px, 5.2vw, 27px);
  font-weight: 600;
  line-height: 1.62;
  letter-spacing: 0.02em;
  color: var(--hal-ink);
  text-align: center;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}

.hal-chuo .hal-chuo__h3 {
  margin: 0;
  padding: 0;
  font-family: var(--hal-serif);
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--hal-ink);
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.hal-chuo .hal-chuo__p {
  margin: 0 0 18px;
  padding: 0;
  font-family: var(--hal-sans);
  font-size: 15px;
  line-height: 2.0;
  letter-spacing: 0.01em;
  color: var(--hal-body-deep);
  text-align: left;
  max-width: 100%;
  word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}
.hal-chuo .hal-chuo__p:last-child {
  margin-bottom: 0;
}

/* 承認済み改行の再現。空の <br>・空の <p>・連続 &nbsp; を使わず、
   行要素の分割だけで改行を表現する。 */
.hal-chuo .hal-chuo__line {
  display: inline;
}
.hal-chuo .hal-chuo__brk {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
}

/* 本文の読み幅。PCでも長い行幅にせず、おおむね760px以内へ収める（§7.2）。 */
.hal-chuo .hal-chuo__prose {
  min-width: 0;
}
.hal-chuo .hal-chuo__prose > .hal-chuo__p,
.hal-chuo .hal-chuo-gates__intro,
.hal-chuo .hal-chuo-gate__block,
.hal-chuo .hal-chuo-gate__meta {
  max-width: 760px;
  margin-inline: auto;
}

/* セクション縦リズム。 */
.hal-chuo .hal-chuo-gates,
.hal-chuo .hal-chuo-necessity,
.hal-chuo .hal-chuo-services,
.hal-chuo .hal-chuo-cost,
.hal-chuo .hal-chuo-guide,
.hal-chuo .hal-chuo-faq,
.hal-chuo .hal-chuo-cta {
  padding: clamp(46px, 6vw, 78px) 0;
  min-width: 0;
}
/* Stage5ChuoFix1 §7 第3層：ベージュの連続を切るため necessity を黒背景へ反転する。
   セクション本体の通常ブロック幅で全面を黒くしており、100vw・負marginは使用していない。
   新しいタグ・コピー・見出し・英語ラベルは追加していない。 */
.hal-chuo .hal-chuo-necessity {
  background: var(--hal-ink);
  border-top: 1px solid var(--hal-gold-line);
  border-bottom: 1px solid var(--hal-gold-line);
}
.hal-chuo .hal-chuo-necessity .hal-chuo__h2 {
  color: var(--hal-on-ink);
}
.hal-chuo .hal-chuo-necessity .hal-chuo__p {
  color: var(--hal-on-ink-sub);
}
.hal-chuo .hal-chuo-guide {
  background: var(--hal-bg-alt);
}

/* --------------------------------------------------------------------------
   2. パンくず
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-crumb {
  /* 固定ヘッダーの実効高を避ける。既存 .hal-sub__hero の padding-top: 96px と同じ方式で、
     Mobileのヘッダー実効高（約61px）も上回る下限を持たせる。固定px補正・負marginは使わない。 */
  padding: clamp(78px, 9vw, 96px) 0 0;
  background: var(--hal-ink);
}
/* Stage5ChuoFix1 §5：固定ヘッダー直下の細いダーク行。FVの視覚的中心から外す。
   削除やopacityによる不読化はせず、サイズと既存色トークンだけで重要度を下げる。 */
.hal-chuo .hal-chuo-crumb__list {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0 8px;
  margin: 0 auto;
  padding: 0 var(--hal-pad);
  max-width: var(--hal-max);
  list-style: none;
  font-family: var(--hal-sans);
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: var(--hal-on-ink-mut);
  min-width: 0;
}
.hal-chuo .hal-chuo-crumb__item {
  min-width: 0;
}
/* 現在ページは1行表示とし、長い場合はellipsisで省略する。 */
.hal-chuo .hal-chuo-crumb__item[aria-current="page"] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 0 1 auto;
}
.hal-chuo .hal-chuo-crumb__item + .hal-chuo-crumb__item::before {
  content: "／";
  margin-right: 8px;
  color: var(--hal-on-ink-mut);
}
/* Astra側のリンク色・下線に負けないよう、中央区名前空間内で詳細度を上げる。
   グローバルCSSの変更や無差別な !important は使用していない。 */
.hal-chuo .hal-chuo-crumb .hal-chuo-crumb__list .hal-chuo-crumb__link,
.hal-chuo .hal-chuo-crumb .hal-chuo-crumb__list .hal-chuo-crumb__link:visited {
  color: var(--hal-on-ink-mut);
  text-decoration: none;
  border-bottom: 0;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  white-space: nowrap;
  flex: 0 0 auto;
}
.hal-chuo .hal-chuo-crumb .hal-chuo-crumb__list .hal-chuo-crumb__link:hover,
.hal-chuo .hal-chuo-crumb .hal-chuo-crumb__list .hal-chuo-crumb__link:focus-visible {
  color: var(--hal-on-ink);
  text-decoration: underline;
}

/* --------------------------------------------------------------------------
   3. FV（既存の暗色基盤・既存トークンのみ。新規画像なし）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-fv {
  background: var(--hal-ink);
  /* 上余白はパンくず側が担当する。ここで二重に確保しない。 */
  padding: clamp(18px, 2.6vw, 30px) 0 clamp(52px, 6.4vw, 84px);
}
.hal-chuo .hal-chuo-fv__inner {
  text-align: center;
  min-width: 0;
}
.hal-chuo .hal-chuo-fv__eyebrow {
  margin: 0 0 18px;
  font-family: var(--hal-mono);
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: 0.16em;
  color: var(--hal-on-ink-mut);
  word-break: normal;
  overflow-wrap: break-word;
}
/* Stage5ChuoFix1 §4.1：KICKER はデータ・HTML・CSS のいずれからも削除した。
   Stage5ChuoFix1 §10：見出し行分割用のspan。PCではinline、767.98px以下でblockになる。
   white-space: nowrap は使用せず、収まらない端末ではspan内の自然折り返しを許可する。 */
.hal-chuo .hal-chuo__headline-line {
  display: inline;
}

/* Stage5ChuoFix3：FV補助本文の行制御span。
   既定（768px以上）は inline のままとし、PC版の改行・文字サイズ・余白へ影響させない。
   狭幅専用の行は既定で非表示にする。
   Stage5ChuoFix8 §6：FV主文を削除したため .hal-chuo-fv__lead-line の規則は撤去した
   （非表示ではなく規則ごと削除。対応するHTMLとデータも存在しない）。 */
/* Stage5ChuoFix5 §4-1：FV補助文のPC用3行はすべて block + nowrap にする。
   Fix4の display: inline / white-space: normal が原因で3行データが連結され、
   ブラウザ任せの再改行により『テールラン／プ。』が発生していた。 */
.hal-chuo .hal-chuo-fv__copy-line--pc {
  display: block;
  white-space: nowrap;
}
.hal-chuo .hal-chuo-fv__copy-line--sp,
.hal-chuo .hal-chuo-fv__copy-line--narrow {
  display: none;
}

/* Stage5ChuoFix2 §6：PC用とモバイル用の表示切り替え。中央区専用名前空間内で完結する。
   H2は複製せず、Hタグ数も増やさない。JavaScriptによる文言置換もCSS疑似要素による
   本文生成も行わない。100vw・負margin・全角スペース・&nbsp;連続・
   一律の white-space: nowrap はいずれも使用しない。 */
.hal-chuo .hal-chuo__pc-copy {
  display: inline;
}
.hal-chuo .hal-chuo__sp-copy {
  display: none;
}
.hal-chuo .hal-chuo__sp-line {
  display: inline;
}

/* Stage5ChuoFix4 §5-2：Q・AはMobile限定ではなく、PC／Tablet／Mobileの全幅で表示する。 */
.hal-chuo .hal-chuo-faq__mark {
  display: inline-block;
  flex: none;
  margin-right: 0;
  font-family: var(--hal-mono);
  font-size: 13px;
  font-weight: 700;
  line-height: inherit;
  letter-spacing: 0.04em;
  color: var(--hal-gold);
}
.hal-chuo .hal-chuo-faq__q {
  display: flex;
  align-items: baseline;
  gap: 14px;
  text-align: left;
  min-width: 0;
}
.hal-chuo .hal-chuo-faq__emph {
  display: flex;
  align-items: baseline;
  gap: 14px;
}
/* H1とFV主文の主従を崩さない。H1を極端に小さくしない。 */
.hal-chuo .hal-chuo-fv__h1 {
  margin: 0 0 22px;
  padding: 0;
  font-family: var(--hal-serif);
  font-size: clamp(26px, 6.6vw, 40px);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: var(--hal-on-ink);
  word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}
/* Stage5ChuoFix8 §6：FV主文『街の輪郭が消える前に、次の一手を打つ。』を削除したため、
   .hal-chuo-fv__lead の規則を撤去した。H1直下は .hal-chuo-fv__sub が続く。
   H1・EYEBROW・FV補助文・FV画像の指定は変更していない。 */
.hal-chuo .hal-chuo-fv__sub {
  max-width: 640px;
  margin-inline: auto;
}
.hal-chuo .hal-chuo-fv__subp {
  text-align: center;
  font-size: 14.5px;
  line-height: 2.05;
  color: var(--hal-on-ink-sub);
}
.hal-chuo .hal-chuo-fv__subp:last-child {
  margin-bottom: 0;
}

/* Stage5ChuoFix1 §4.4：FV直下の銀座四丁目モノクロ画像。
   Mobileはセクション幅いっぱい、PCは最大1080pxで中央配置。
   100vw・負margin・calc(50% - 50vw) は使用していない。
   角丸・大きな影・装飾枠は付けない。21:9への強制トリミングもしない。 */
.hal-chuo .hal-chuo-fv__figure {
  display: block;
  margin: clamp(28px, 4vw, 44px) 0 0;
  padding: 0;
  width: 100%;
  max-width: 1080px;
  margin-inline: auto;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
}
/* Stage5ChuoFix5 §3：対照実験（通常／visibility:hidden／単色置換）で
   ヘッダー直下のピクセルが完全一致したため、帯は画像由来ではないと確定した。
   実験的に試した container-type: inline-size ＋ round(down, 56.25cqw, 1px) は
   対象ブラウザでの実レンダリング確認ができないため採用しない。
   display:block ＋ width/height属性 ＋ aspect-ratio ＋ object-fit の安定形へ戻す。 */
.hal-chuo .hal-chuo-fv__figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: 50% 48%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
/* FV補助文だけは承認済み改行を実際の行分けとして見せる。 */
.hal-chuo .hal-chuo-fv__subp .hal-chuo__brk,
.hal-chuo .hal-chuo-gates__intro .hal-chuo__brk,
.hal-chuo .hal-chuo-gate__block .hal-chuo__brk,
.hal-chuo .hal-chuo-necessity .hal-chuo__brk,
.hal-chuo .hal-chuo-cost .hal-chuo__brk,
.hal-chuo .hal-chuo-guide .hal-chuo__brk {
  display: block;
  width: auto;
  height: 0;
  overflow: visible;
}

/* --------------------------------------------------------------------------
   4. 2関門（accordionにしない・常時全文表示）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-gates__intro {
  margin-bottom: clamp(32px, 4vw, 52px);
}
.hal-chuo .hal-chuo-gates__intro .hal-chuo__p {
  text-align: left;
}

.hal-chuo .hal-chuo-gate {
  display: block;
  margin: 0 0 clamp(40px, 5vw, 68px);
  padding: 0 0 clamp(34px, 4.2vw, 54px);
  border-bottom: 1px solid var(--hal-line-deep);
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
}
.hal-chuo .hal-chuo-gate:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

/* §7.2：番号＋地域名をH3 1件へ統合した中央揃えの見出し帯。
   左縦棒は禁止。border-left / border-right を 0 で明示する。 */
/* Stage5ChuoFix1 §6.2：ベージュの帯状見出しを廃止する。
   背景 transparent、上下1pxの var(--hal-gold-line) のみ。
   左右の枠線なし・角丸なし・影なし・太いボックス感を出さない。 */
.hal-chuo .hal-chuo-gate__name {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 0;
  width: 100%;
  box-sizing: border-box;
  margin: 0 0 14px;
  padding: 11px 0 12px;
  background: transparent;
  border-top: 1px solid var(--hal-gold-line);
  border-right: 0;
  border-bottom: 1px solid var(--hal-gold-line);
  border-left: 0;
  border-radius: 0;
  box-shadow: none;
  text-align: center;
  font-size: clamp(18px, 4.6vw, 22px);
  line-height: 1.55;
}
.hal-chuo .hal-chuo-gate__no {
  flex: 0 0 auto;
  font-family: var(--hal-mono);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.12em;
  color: var(--hal-gold-deep);
}
.hal-chuo .hal-chuo-gate__sep {
  flex: 0 0 auto;
  padding: 0 2px;
  font-family: var(--hal-sans);
  font-size: 13px;
  color: var(--hal-gold-deep);
}
.hal-chuo .hal-chuo-gate__name-text {
  min-width: 0;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

/* 補助見出しは見出しタグを増やさず、H3直下の強調テキストとして中央表示する。 */
/* Stage5ChuoFix4 §3-3：情景タイトル。「情景」ラベル直下・情景本文の直前。
   左揃え、本文より1段階強いウェイト。ボタン・リンク・帯・ピルにはしない。 */
.hal-chuo .hal-chuo-gate__scene-title {
  margin: 0 0 12px;
  padding: 0;
  font-family: var(--hal-serif);
  font-size: clamp(15px, 3.6vw, 17px);
  line-height: 1.8;
  letter-spacing: 0.02em;
  color: var(--hal-sumi);
  text-align: left;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  word-break: normal;
  overflow-wrap: normal;
  line-break: strict;
}
.hal-chuo .hal-chuo-gate__scene-title strong {
  font-weight: 700;
}

/* Stage5ChuoFix5 §3-2：指定改行のある行は幅ごとの専用行spanとして出力し、
   表示中の系統だけを block + nowrap で1行に固定する。
   ブレークポイントは PC 1024px以上／SP 360〜1023px／狭幅 320〜359px。
   非表示側は display: none とし、同時表示しない。 */
.hal-chuo .hal-chuo__fixed-line {
  display: block;
  white-space: nowrap;
}
/* FV補助文の行spanにも hal-chuo__fixed-line を付与しているため、
   非表示指定は本ブロック（display: block より後方）で一括して行う。
   前方のFV定義だけでは後勝ちで打ち消され、3系統が同時表示になる。 */
.hal-chuo .hal-chuo__fixed-line--pcmid,
.hal-chuo .hal-chuo__fixed-line--sp,
.hal-chuo .hal-chuo__fixed-line--narrow,
.hal-chuo .hal-chuo-fv__copy-line--sp,
.hal-chuo .hal-chuo-fv__copy-line--narrow {
  display: none;
}
.hal-chuo .hal-chuo-fv__copy-line--pc {
  display: block;
  white-space: nowrap;
}

/* Stage5ChuoFix9: FV指定3文（既存出力span）のみ金色。色以外は変更しない */
.hal-chuo .hal-chuo-fv__copy-line {
  color: var(--hal-gold-line);
}

/* 1024〜1279px：導入文の最長指定行（65文字）は 1024px の使用可能幅へ1行で収まらない。
   フォント縮小や字間圧縮で押し込まず、この帯だけ導入文を意味の切れ目で2行へ切り替える。
   pcmid を持つのは導入文のみで、他セクションは 1024px 以上を通してPC系統を表示する。 */
@media (min-width: 1024px) and (max-width: 1279.98px) {
  .hal-chuo .hal-chuo-gates__intro .hal-chuo__fixed-line--pc { display: none; }
  .hal-chuo .hal-chuo-gates__intro .hal-chuo__fixed-line--pcmid { display: block; }
}

/* 360〜1023px：SP系統だけを表示する。 */
@media (max-width: 1023.98px) {
  .hal-chuo .hal-chuo__fixed-line--pc,
  .hal-chuo .hal-chuo__fixed-line--pcmid { display: none; }
  .hal-chuo .hal-chuo__fixed-line--sp { display: block; }
  .hal-chuo .hal-chuo-fv__copy-line--pc { display: none; }
  .hal-chuo .hal-chuo-fv__copy-line--sp { display: block; }
}

/* 320〜359px：狭幅系統だけを表示する。 */
@media (max-width: 359.98px) {
  .hal-chuo .hal-chuo__fixed-line--sp { display: none; }
  .hal-chuo .hal-chuo__fixed-line--narrow { display: block; }
  .hal-chuo .hal-chuo-fv__copy-line--sp { display: none; }
  .hal-chuo .hal-chuo-fv__copy-line--narrow { display: block; }
}

/* Stage5ChuoFix4 §4-2：日本語の単語泣き別れを抑える。
   word-break: break-all と本文への overflow-wrap: anywhere は使用しない。 */
.hal-chuo .hal-chuo__p,
.hal-chuo .hal-chuo-gates__intro,
.hal-chuo .hal-chuo-gate__summary,
.hal-chuo .hal-chuo-gate__block,
.hal-chuo .hal-chuo-gate__scene-title,
.hal-chuo .hal-chuo-necessity,
.hal-chuo .hal-chuo-cost,
.hal-chuo .hal-chuo-guide,
.hal-chuo .hal-chuo-cta {
  word-break: normal;
  line-break: strict;
  overflow-wrap: normal;
  text-wrap: pretty;
}

/* 要約表示・主な分岐は非操作型の情報ブロック。summary・開閉ボタンにしない。 */
.hal-chuo .hal-chuo-gate__meta {
  margin-bottom: clamp(22px, 2.8vw, 32px);
  padding: 0;
}
.hal-chuo .hal-chuo-gate__summary {
  margin: 0 0 6px;
  font-family: var(--hal-sans);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.01em;
  color: var(--hal-body-deep);
  text-align: left;
  word-break: normal;
  overflow-wrap: break-word;
  line-break: strict;
}
.hal-chuo .hal-chuo-gate__spots {
  margin: 0;
  font-family: var(--hal-sans);
  font-size: 13px;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: var(--hal-muted);
  text-align: left;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.hal-chuo .hal-chuo-gate__spots-label {
  color: var(--hal-gold-deep);
  letter-spacing: 0.06em;
}

/* 情景・地域条件・設計：小型背景ボックスの可視ラベル。
   本文左端に揃え、左縦棒・角丸ピル・影を使用しない。 */
.hal-chuo .hal-chuo-gate__block {
  margin-bottom: clamp(22px, 2.8vw, 32px);
}
.hal-chuo .hal-chuo-gate__block:last-child {
  margin-bottom: 0;
}
.hal-chuo .hal-chuo-gate__label {
  display: inline-block;
  margin: 0 0 10px;
  padding: 4px 12px 5px;
  background: var(--hal-bg-alt);
  border: 1px solid var(--hal-line-deep);
  border-radius: 0;
  box-shadow: none;
  font-family: var(--hal-sans);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.12em;
  color: var(--hal-gold-deep);
  text-align: left;
}

/* --------------------------------------------------------------------------
   5. 東京赤坂支店の必然性
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-necessity .hal-chuo__p {
  max-width: 760px;
  margin-inline: auto;
}

/* --------------------------------------------------------------------------
   6. 4調査項目（PC 2列×2行 / Tablet・Mobile 1列）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-services .hal-chuo__prose .hal-chuo__p {
  max-width: 760px;
  margin-inline: auto;
}
.hal-chuo .hal-chuo-svc__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  /* §7.3：4項目間で高さを固定しない。stretchによる高さ均一化も行わない。 */
  align-items: start;
  gap: 18px;
  margin-top: clamp(28px, 3.4vw, 42px);
  min-width: 0;
}
/* 四辺1pxの均一hairline。左縦棒相当の非対称罫線は使用しない。
   4項目間で高さを固定しない。 */
.hal-chuo .hal-chuo-svc__item {
  box-sizing: border-box;
  padding: clamp(20px, 2.6vw, 28px);
  background: var(--hal-bg-box);
  border: 1px solid var(--hal-line-deep);
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
  height: auto;
}
.hal-chuo .hal-chuo-svc__h3 {
  margin: 0 0 14px;
  font-size: clamp(17px, 4.2vw, 19px);
  line-height: 1.6;
  text-align: center;
}
.hal-chuo .hal-chuo-svc__item .hal-chuo__p {
  font-size: 14.5px;
  line-height: 1.95;
}

/* --------------------------------------------------------------------------
   7. 内部リンク（可視文言だけをリンクにする。カード全体をリンクにしない）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo__linkline {
  margin: 18px 0 0;
  padding: 0;
  text-align: left;
}
.hal-chuo .hal-chuo__link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 4px 0;
  font-family: var(--hal-sans);
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.02em;
  color: var(--hal-gold-deep);
  text-decoration: underline;
  text-underline-offset: 4px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  word-break: normal;
  overflow-wrap: break-word;
}
.hal-chuo .hal-chuo__link:hover,
.hal-chuo .hal-chuo__link:focus-visible {
  color: var(--hal-gold-hover);
}
/* Stage5ChuoFix1 §8：リンク認識性のための装飾矢印。既存ゴールドトークンを使用し、
   リンク文字と自然に並べる。aria-hidden により読み上げ対象にしない。 */
.hal-chuo .hal-chuo__link-arrow {
  margin-left: 6px;
  color: var(--hal-gold-deep);
  text-decoration: none;
  font-weight: 600;
}
.hal-chuo .hal-chuo-cost .hal-chuo__linkline,
.hal-chuo .hal-chuo-guide .hal-chuo__linkline {
  max-width: 760px;
  margin-inline: auto;
}

/* --------------------------------------------------------------------------
   8. FAQ（ネイティブ details のみ。JavaScriptを追加しない）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-faq__list {
  max-width: 760px;
  margin-inline: auto;
  border-top: 1px solid var(--hal-line-deep);
  min-width: 0;
}
.hal-chuo .hal-chuo-faq__item {
  display: block;
  border-bottom: 1px solid var(--hal-line-deep);
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
}
/* Stage5ChuoFix4 §5：TOPページFAQの視覚基準へ統一する。
   質問冒頭のQ・回答冒頭のAをゴールドで全幅表示し、summary右端に細い開閉矢印を置く。
   装飾カード化せず、native details/summary のまま。JavaScriptは追加していない。 */
.hal-chuo .hal-chuo-faq__summary {
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 20px 32px 20px 0;
  min-height: 44px;
  list-style: none;
  cursor: pointer;
  min-width: 0;
}
.hal-chuo .hal-chuo-faq__summary::after {
  content: "";
  position: absolute;
  right: 4px;
  top: 50%;
  width: 9px;
  height: 9px;
  border-right: 1px solid var(--hal-gold);
  border-bottom: 1px solid var(--hal-gold);
  transform: translateY(-70%) rotate(45deg);
  transition: transform .25s ease;
}
.hal-chuo .hal-chuo-faq__item[open] .hal-chuo-faq__summary::after {
  transform: translateY(-30%) rotate(-135deg);
}
.hal-chuo .hal-chuo-faq__summary::-webkit-details-marker { display: none; }
.hal-chuo .hal-chuo-faq__summary::marker { content: ""; }
.hal-chuo .hal-chuo-faq__summary:focus-visible {
  outline: 2px solid var(--hal-gold-deep);
  outline-offset: 3px;
}
.hal-chuo .hal-chuo-faq__q {
  font-size: clamp(15.5px, 3.9vw, 18px);
  line-height: 1.7;
  text-align: left;
}
/* Stage5ChuoFix4 §5-2：cue（回答を読む／回答を閉じる）はHTML出力ごと削除したため、
   対応するCSS定義も撤去した。 */
.hal-chuo .hal-chuo-faq__answer {
  padding: 2px 0 24px;
  min-width: 0;
}
.hal-chuo .hal-chuo-faq__emph strong {
  font-family: var(--hal-sans);
  font-weight: 700;
  color: var(--hal-sumi);
}

/* --------------------------------------------------------------------------
   9. 最終CTA（通常フロー。固定表示しない）
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-cta {
  background: var(--hal-ink);
}
.hal-chuo .hal-chuo-cta__label {
  margin: 0 0 14px;
  font-family: var(--hal-mono);
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: 0.18em;
  color: var(--hal-on-ink-mut);
  text-align: center;
}
.hal-chuo .hal-chuo-cta__h2 {
  color: var(--hal-on-ink);
}
.hal-chuo .hal-chuo-cta .hal-chuo__p {
  max-width: 640px;
  margin-inline: auto;
  color: var(--hal-on-ink-sub);
}
.hal-chuo .hal-chuo-cta__actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  max-width: 420px;
  margin: clamp(26px, 3vw, 36px) auto 0;
}
.hal-chuo .hal-chuo-cta__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 56px;
  padding: 12px 18px;
  font-family: var(--hal-sans);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-decoration: none;
  border-radius: 0;
  box-shadow: none;
  word-break: normal;
  overflow-wrap: break-word;
}
/* 主CTA：LINE */
.hal-chuo .hal-chuo-cta__btn--line {
  background: var(--hal-gold);
  border: 1px solid var(--hal-gold);
  color: var(--hal-ink);
}
.hal-chuo .hal-chuo-cta__btn--line:hover,
.hal-chuo .hal-chuo-cta__btn--line:focus-visible {
  background: var(--hal-gold-hover);
  border-color: var(--hal-gold-hover);
}
/* 副CTA：電話・フォーム */
.hal-chuo .hal-chuo-cta__btn--tel,
.hal-chuo .hal-chuo-cta__btn--form {
  background: transparent;
  border: 1px solid var(--hal-on-ink-mut);
  color: var(--hal-on-ink);
  font-weight: 600;
}
.hal-chuo .hal-chuo-cta__btn--tel:hover,
.hal-chuo .hal-chuo-cta__btn--tel:focus-visible,
.hal-chuo .hal-chuo-cta__btn--form:hover,
.hal-chuo .hal-chuo-cta__btn--form:focus-visible {
  border-color: var(--hal-gold-line);
  color: var(--hal-on-ink);
}
.hal-chuo .hal-chuo-cta__note {
  margin: 20px 0 0;
  font-family: var(--hal-sans);
  font-size: 12.5px;
  line-height: 1.85;
  letter-spacing: 0.02em;
  color: var(--hal-on-ink-mut);
  text-align: center;
  word-break: normal;
  overflow-wrap: break-word;
}

/* --------------------------------------------------------------------------
   10. Tablet
   -------------------------------------------------------------------------- */
/* Stage5ChuoFix1 §9.1・§10：Mobileの本文余白・サイズ・行間、見出しの行分割。 */
@media (max-width: 767.98px) {
  .hal-chuo .hal-container { padding-left: 20px; padding-right: 20px; }
  .hal-chuo .hal-chuo__p { font-size: 15px; line-height: 1.95; }
  .hal-chuo .hal-chuo__headline-line { display: block; }
  .hal-chuo .hal-chuo-crumb__list { font-size: 10px; }
  /* FV画像はセクション幅いっぱい。本文用コンテナの外にあるため左右余白に閉じ込めない。 */
  .hal-chuo .hal-chuo-fv__figure { max-width: none; margin-inline: 0; }

  /* Stage5ChuoFix2 §6：モバイルではPC用コピーを隠し、モバイル用コピーを行単位で表示する。 */
  .hal-chuo .hal-chuo__pc-copy { display: none; }
  .hal-chuo .hal-chuo__sp-copy { display: inline; }
  .hal-chuo .hal-chuo__sp-line { display: block; }

  /* Stage5ChuoFix3 §5：EYEBROWから画像上端までを圧縮する。
     既存CSSとの合算で二重marginが残らないよう、FVセクションと内側の余白を明示上書きする。 */
  .hal-chuo .hal-chuo-fv {
    padding-top: 0;
    padding-bottom: 0;
  }
  .hal-chuo .hal-chuo-fv__inner {
    padding-top: 28px;
    padding-bottom: 28px;
  }
  /* Stage5ChuoFix3 §2：H1は390px幅で必ず1行にする。PC版へは適用しない。 */
  .hal-chuo .hal-chuo-fv__h1 {
    white-space: nowrap;
    font-size: clamp(20px, 5.8vw, 24px);
    letter-spacing: 0;
    line-height: 1.35;
    text-align: center;
    margin: 0 0 24px;
  }
  /* Stage5ChuoFix8 §6：FV主文をMobileからも削除したため、
     Fix3 §3 のMobile用 .hal-chuo-fv__lead / __lead-line 規則を撤去した。 */
  /* Stage5ChuoFix3 §4：補助本文は左揃え。390pxで13px基準、行間1.9。
     左右paddingは12pxまで縮小し、文字の横方向変形は行わない。 */
  /* §4：左右paddingは12pxまで縮小可能。FV内側コンテナを12pxへ上書きし、
     補助本文ブロック側では二重paddingを作らない。 */
  .hal-chuo .hal-chuo-fv__inner {
    padding-left: 12px;
    padding-right: 12px;
  }
  .hal-chuo .hal-chuo-fv__copy {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
  }
  /* Stage5ChuoFix4 §4-1：Mobile FV補助文を中央揃えへ変更する。
     全角スペースによる中央調整・text-indent・transform: scaleX() はいずれも使用しない。 */
  .hal-chuo .hal-chuo-fv__subp {
    text-align: center;
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: -0.01em;
    text-indent: 0;
    margin: 0;
  }
  .hal-chuo .hal-chuo-fv__sub,
  .hal-chuo .hal-chuo-fv__copy-line {
    text-align: center;
  }
  .hal-chuo .hal-chuo-fv__copy p + p {
    margin-top: 18px;
  }
  /* 360〜767.98px：SP系統だけを表示する。 */
  /* EYEBROWは1行表示を基本とし、既存のゴールド系スタイルを維持する。 */
  .hal-chuo .hal-chuo-fv__eyebrow {
    letter-spacing: 0.12em;
    margin: 0 0 18px;
  }
  /* Stage5ChuoFix3 §5：画像をスクロール前の画面内へ表示する。
     横幅は画面幅100%、比率16:9、object-fit cover、object-position 50% 48%。 */
  /* Stage5ChuoFix4 §4-4：固定ヘッダー直下に残る画像の切れ端を除去する。
     画像削除・高さ0・ヘッダー透明化・負margin・100vw・ページ全体の overflow-x hidden・
     固定CTAのz-index変更はいずれも行わない。中央区ページ内だけに適用する。 */
  .hal-chuo .hal-chuo-fv {
    overflow: hidden;
  }
  .hal-chuo .hal-chuo-fv__figure {
    margin-top: 0;
    display: block;
    line-height: 0;
    font-size: 0;
    overflow: hidden;
  }
  .hal-chuo .hal-chuo-fv__figure img {
    display: block;
    vertical-align: bottom;
  }
  /* Stage5ChuoFix2 §3・§4：モバイル専用見出しは見出し全体として中央揃えにする。
     行頭へ全角スペース・&nbsp;・text-indent を入れない。 */
  .hal-chuo .hal-chuo__sp-copy .hal-chuo__sp-line {
    text-align: center;
    text-indent: 0;
  }

  /* Stage5ChuoFix4 §5-2：Q・Aは全幅共通の1宣言へ集約したため、Mobile専用の上書きは撤去した。 */

}

/* Stage5ChuoFix3 §4 例外：320〜359pxでのみ補助本文1段落目を3行構成へ切り替える。
   自然折り返しへ任せず専用spanで制御する。360px以上では指定の2行構成へ戻る。 */
@media (max-width: 359.98px) {
  .hal-chuo .hal-chuo-fv__subp { font-size: 11.7px; letter-spacing: -0.03em; }
}

/* Stage5ChuoFix4 §2-3・§3：PC（768px以上）の本文コンテナ規約。
   コンテナ自体を中央配置し、内部の文章は左揃え。本文最大幅760px（最終CTAのみ640px）。
   左右の外側余白を同一にし、本文を見出しの視覚幅より外へ突出させない。 */
@media (min-width: 768px) {
  /* Stage5ChuoFix7 F7-13：Fix5の width: max-content ／ max-width: calc(100% - 48px) は
     後方のFix6／Fix7ブロックで完全に上書きされる死んだ宣言であり、
     同一gutterの二重減算が残っているように読めるため撤去した。
     導入本文の幅制御は後方の @media (min-width: 768px) ブロックへ一本化している。 */
  .hal-chuo .hal-chuo-gates__intro {
    margin-inline: auto;
    text-align: left;
  }
  .hal-chuo .hal-chuo-necessity .hal-chuo__p,
  .hal-chuo .hal-chuo-services .hal-chuo__prose .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline,
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline {
    max-width: 760px;
    margin-inline: auto;
    text-align: left;
  }
  .hal-chuo .hal-chuo-gates__intro .hal-chuo__p {
    max-width: 100%;
    margin-inline: 0;
    text-align: left;
  }
  .hal-chuo .hal-chuo-cta .hal-chuo__p {
    max-width: 640px;
    margin-inline: auto;
    text-align: left;
  }
  .hal-chuo .hal-chuo-cta__label,
  .hal-chuo .hal-chuo-cta__h2 {
    text-align: center;
  }

  /* §3-1：FV主文の視覚中心をH1と一致させる規則は、
     Stage5ChuoFix8 §6 のFV主文削除にともない撤去した。 */
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .hal-chuo .hal-chuo__p { font-size: 15.5px; }
  .hal-chuo .hal-chuo-fv__subp { font-size: 15.5px; }
  .hal-chuo .hal-chuo-gate__summary { font-size: 15.5px; }
  /* 4調査項目はTabletでも1列（§7.3）。 */
  .hal-chuo .hal-chuo-svc__grid { grid-template-columns: minmax(0, 1fr); }
  .hal-chuo .hal-chuo-cta__actions { max-width: 460px; }
}

/* --------------------------------------------------------------------------
   11. PC
   -------------------------------------------------------------------------- */
@media (min-width: 1024px) {
  .hal-chuo .hal-chuo__p { font-size: 16px; line-height: 2.05; }
  .hal-chuo .hal-chuo-fv__subp { font-size: 16px; }
  .hal-chuo .hal-chuo-gate__summary { font-size: 16px; }
  .hal-chuo .hal-chuo-gate__spots { font-size: 13.5px; }
  /* Stage5ChuoFix1 §6.1：2つの関門そのものは横並びにせず、各関門を縦方向に1件ずつ配置する。
     各関門カードの内部だけを2カラムにする。左カラムはstickyにしない。 */
  .hal-chuo .hal-chuo-gate { max-width: 1116px; margin-inline: auto; }
  .hal-chuo .hal-chuo-gate:last-child { margin-inline: auto; }
  .hal-chuo .hal-chuo-gate__grid {
    display: grid;
    grid-template-columns: minmax(280px, 340px) minmax(0, 720px);
    column-gap: clamp(40px, 4vw, 56px);
    align-items: start;
    justify-content: center;
    min-width: 0;
  }
  .hal-chuo .hal-chuo-gate__aside,
  .hal-chuo .hal-chuo-gate__narrative { min-width: 0; }
  .hal-chuo .hal-chuo-gate__subhead { margin-inline: 0; max-width: none; text-align: center; }
  .hal-chuo .hal-chuo-gate__meta { margin-inline: 0; margin-bottom: 0; }
  .hal-chuo .hal-chuo-gate__block { margin-inline: 0; }
  .hal-chuo .hal-chuo-gate__narrative .hal-chuo-gate__block:first-child { margin-top: 0; }
  /* 4調査項目はPCのみ2列×2行。 */
  .hal-chuo .hal-chuo-svc__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    max-width: 900px;
    margin-inline: auto;
  }
  .hal-chuo .hal-chuo-svc__item .hal-chuo__p { font-size: 15px; }
  .hal-chuo .hal-chuo-cta__actions {
    grid-template-columns: minmax(0, 1fr);
    max-width: 460px;
  }
}

/* --------------------------------------------------------------------------
   12. 動きへの配慮
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .hal-chuo .hal-chuo-faq__item,
  .hal-chuo .hal-chuo-faq__answer {
    transition: none;
    animation: none;
  }
}


/* --------------------------------------------------------------------------
   Stage5ChuoFix5 §6：孤立行の抑止。
   1〜2文字だけの行が出やすい短い見出し・ラベル・リンク文言へ text-wrap: balance を与える。
   word-break: break-all、本文への overflow-wrap: anywhere、一律の nowrap は使用しない。
   -------------------------------------------------------------------------- */
.hal-chuo .hal-chuo-faq .hal-chuo__h2,
.hal-chuo .hal-chuo-faq__q,
.hal-chuo .hal-chuo-gate__spots,
.hal-chuo .hal-chuo-gate__summary,
.hal-chuo .hal-chuo-gate__scene-title,
.hal-chuo .hal-chuo-svc__h3,
.hal-chuo .hal-chuo__linkline,
.hal-chuo .hal-chuo__link {
  text-wrap: balance;
}
/* リンク文言と装飾矢印を1つの折返し単位として扱い、末尾1文字だけの行を作らない。
   タップ領域44pxは既存の inline-flex ＋ min-height で確保したまま維持する。 */
.hal-chuo .hal-chuo__link {
  flex-wrap: wrap;
  justify-content: flex-start;
}


/* Stage5ChuoFix5 §3：帯は画像由来ではなかったため、被覆用の擬似要素は採用しない。
   境界処理は次セクションへ明示背景と重ね順を与えるだけの安定形に限定する。
   負margin・大きな重なり・クリック領域の重複はいずれも使用していない。 */
.hal-chuo .hal-chuo-gates {
  position: relative;
  z-index: 1;
  background: var(--hal-bg);
}


/* ==========================================================================
   Stage5ChuoFix6 — 本文の段落化・視認性向上・FAQ同期
   本ブロックは中央区専用名前空間（.hal-chuo）内だけに適用する。
   !important、グローバルセレクタ、text-align: justify、word-break: break-all、
   本文への overflow-wrap: anywhere、段落全体への white-space: nowrap は使用しない。
   ========================================================================== */

/* §4・§24：本文は通常段落。Human Owner指定の意味改行のみ専用行要素で表現する。 */
.hal-chuo .hal-chuo__semantic-line {
  display: block;
  white-space: normal;
}
/* §5：自然折返しと泣き別れ防止の両立。 */
.hal-chuo .hal-chuo__p,
.hal-chuo .hal-chuo-gates__intro,
.hal-chuo .hal-chuo-gate__block,
.hal-chuo .hal-chuo-services__intro,
.hal-chuo .hal-chuo-necessity,
.hal-chuo .hal-chuo-cost,
.hal-chuo .hal-chuo-guide,
.hal-chuo .hal-chuo-cta {
  word-break: normal;
  line-break: strict;
  overflow-wrap: normal;
  text-wrap: pretty;
}
/* 固有名詞・短い文節の保護。必要最小限に用いる。 */
.hal-chuo .hal-chuo__keep {
  white-space: nowrap;
}

/* §7・§18.3・§19：セクションタイトル（英字インジケーター＋ゴールドライン）。
   全viewport共通。H2は複製していない。 */
.hal-chuo .hal-chuo-section-title {
  margin-bottom: 36px;
  text-align: center;
}
.hal-chuo .hal-chuo-section-title .hal-chuo__h2 {
  margin-bottom: 0;
  text-align: center;
}
.hal-chuo .hal-chuo-section-title__kicker {
  display: block;
  margin-bottom: 10px;
  font-family: var(--hal-mono);
  font-size: 10px;
  line-height: 1.6;
  letter-spacing: 0.22em;
  color: var(--hal-gold-deep);
}
.hal-chuo .hal-chuo-section-title__line {
  display: block;
  width: 32px;
  height: 1px;
  margin: 16px auto 0;
  background: var(--hal-gold-deep);
}

/* §8・§19.1：関門を白い作戦調書カードにする。全viewport共通。 */
.hal-chuo .hal-chuo-gate {
  background: var(--hal-bg-box);
  border: 1px solid var(--hal-line-deep);
  border-radius: 1px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  box-sizing: border-box;
}

/* §9・§19：情景・地域条件・設計タグ。左端2pxのゴールドラインを明示許可により採用。 */
.hal-chuo .hal-chuo-gate__label {
  display: inline-block;
  margin: 0 0 12px;
  padding: 3px 8px;
  border: 0;
  border-left: 2px solid var(--hal-gold-deep);
  border-radius: 0;
  background: var(--hal-bg-alt);
  box-shadow: none;
  font-family: var(--hal-mono);
  font-size: 10.5px;
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.14em;
  color: var(--hal-gold-deep);
}

/* §23.3：相談ガイドの3項目。 */
.hal-chuo .hal-chuo-guide__points {
  width: 100%;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}
.hal-chuo .hal-chuo-guide__points li {
  position: relative;
  margin: 0;
  padding-left: 1.15em;
  font-family: var(--hal-sans);
  font-size: 15px;
  line-height: 2.0;
  color: var(--hal-body-deep);
  text-align: left;
  word-break: normal;
  line-break: strict;
  overflow-wrap: normal;
  text-wrap: pretty;
}
.hal-chuo .hal-chuo-guide__points li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

/* §11・§20・Fix6追補§4：FAQをTOPページの計算値へ同期する。
   TOPの構造は summary > .hal-faq__q（Qマーク）＋ 質問テキスト。
   中央区は H3階層を維持したまま Qマークを H3 外へ分離し、
   summary を flex ＋ column-gap 12px として同じ計算結果を再現する。
   TOPのファイル・クラスは変更していない。!important・グローバルセレクタは不使用。 */
.hal-chuo .hal-chuo-faq__list {
  /* TOP の .hal-faq__list は 744px。760pxのままだと summary を620pxへ収めた際の
     左右余白が8px広くなり、回答開始位置がTOPと8pxずれる。 */
  width: min(100%, 744px);
  max-width: none;
  margin-inline: auto;
  border-top: 1px solid var(--hal-line-deep);
}
.hal-chuo .hal-chuo-faq__summary {
  position: relative;
  display: flex;
  align-items: baseline;
  column-gap: 12px;
  width: min(100%, 620px);
  margin-inline: auto;
  padding: 20px 32px 20px 0;
  min-height: 44px;
  box-sizing: border-box;
  font-family: var(--hal-sans);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--hal-sumi);
  list-style: none;
  cursor: pointer;
}
.hal-chuo .hal-chuo-faq__mark {
  flex: none;
  display: block;
  margin: 0;
  padding: 0;
  font-family: var(--hal-serif);
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.6;
  /* TOP の .hal-faq__q は letter-spacing 0.56px を継承しており、
     normal を指定するとQマーク幅が 10.31px → 9.75px となり質問開始位置が0.56pxずれる。 */
  letter-spacing: inherit;
  color: var(--hal-gold);
  text-align: left;
}
/* 質問本文はTOP summary の書体を継承する。中央区H3の独自指定はFAQ質問に限って解除する。 */
.hal-chuo .hal-chuo-faq__q {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  display: block;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  text-align: left;
}
.hal-chuo .hal-chuo-faq__answer {
  width: min(100%, 620px);
  margin-inline: auto;
  box-sizing: border-box;
  padding: 0;
}
.hal-chuo .hal-chuo-faq__answer .hal-chuo__p {
  font-family: var(--hal-sans);
  font-size: 16px;
  font-weight: 400;
  line-height: 32px;
  color: var(--hal-sumi);
  margin: 0 0 20px;
  padding: 0;
}
.hal-chuo .hal-chuo-faq__emph {
  display: flex;
  align-items: baseline;
  column-gap: 12px;
}
.hal-chuo .hal-chuo-faq__mark--a {
  font-size: inherit;
  line-height: inherit;
}
.hal-chuo .hal-chuo-faq__summary::after {
  content: "";
  position: absolute;
  right: 4px;
  top: 50%;
  width: 9px;
  height: 9px;
  border-right: 1px solid var(--hal-gold);
  border-bottom: 1px solid var(--hal-gold);
  transform: translateY(-70%) rotate(45deg);
  transition: transform .25s ease;
}
.hal-chuo .hal-chuo-faq__item[open] .hal-chuo-faq__summary::after {
  transform: translateY(-30%) rotate(-135deg);
}
@media (min-width: 768px) {
  .hal-chuo .hal-chuo-faq__summary { font-weight: 400; }
  .hal-chuo .hal-chuo-faq__mark { font-weight: 400; }
  .hal-chuo .hal-chuo-faq__answer .hal-chuo__p {
    font-size: 15px;
    line-height: 30.75px;
  }
}

/* §6：Mobile本文コンテナの中央軸。枠は画面中央、文章は左揃え。 */
@media (max-width: 767.98px) {
  .hal-chuo .hal-chuo-gates__intro,
  .hal-chuo .hal-chuo-gate,
  .hal-chuo .hal-chuo-services__intro,
  .hal-chuo .hal-chuo-necessity .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline,
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide__points,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline,
  .hal-chuo .hal-chuo-cta .hal-chuo__p {
    /* Stage5ChuoFix7 F7-13：外側gutterは親 .hal-container の左右20pxだけが担う。
       ここで calc(100% - 40px) を重ねると同じ40pxを二重に差し引くことになる。 */
    width: 100%;
    max-width: 580px;
    margin-inline: auto;
    box-sizing: border-box;
  }
  .hal-chuo .hal-chuo-gates__intro .hal-chuo__p,
  .hal-chuo .hal-chuo-services__intro .hal-chuo__p {
    width: 100%;
    margin-inline: 0;
    text-align: left;
  }
  .hal-chuo .hal-chuo-gate {
    margin: 0 auto 32px;
    padding: 28px 20px;
  }
  .hal-chuo .hal-chuo-gate:last-child { margin-bottom: 0; }
  .hal-chuo .hal-chuo-gate__grid { display: block; }
  .hal-chuo .hal-chuo-gates__intro { text-align: left; }
}

/* §18.2・§19.1：PCの本文コンテナ中央配置と関門カード。 */
@media (min-width: 768px) {
  .hal-chuo .hal-chuo-gates__intro,
  .hal-chuo .hal-chuo-services__intro,
  .hal-chuo .hal-chuo-necessity .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline,
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide__points,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline {
    /* Stage5ChuoFix7 F7-13：外側gutterは親 .hal-container の padding-inline だけが担う。 */
    width: 100%;
    max-width: 760px;
    margin-inline: auto;
    box-sizing: border-box;
    text-align: left;
  }
  .hal-chuo .hal-chuo-cta .hal-chuo__p {
    width: 100%;
    max-width: 640px;
    margin-inline: auto;
    text-align: left;
  }
  .hal-chuo .hal-chuo-gates__intro .hal-chuo__p,
  .hal-chuo .hal-chuo-services__intro .hal-chuo__p {
    width: 100%;
    margin-inline: 0;
    text-align: left;
  }
  .hal-chuo .hal-chuo-section-title__kicker {
    font-size: 11px;
    letter-spacing: 0.22em;
  }
  .hal-chuo .hal-chuo-section-title__line {
    width: 36px;
    margin: 18px auto 0;
  }
  .hal-chuo .hal-chuo-gate {
    padding: 32px 28px;
    margin: 0 auto 32px;
  }
}

@media (min-width: 1024px) {
  .hal-chuo .hal-chuo-gate {
    width: 100%;
    max-width: 1116px;
    margin: 0 auto 40px;
    padding: 44px 48px;
  }
  .hal-chuo .hal-chuo-gate:last-child { margin-bottom: 0; }
  .hal-chuo .hal-chuo-gate__grid {
    display: grid;
    grid-template-columns: minmax(280px, 340px) minmax(0, 720px);
    column-gap: clamp(40px, 4vw, 56px);
    align-items: start;
    justify-content: center;
  }
}

/* §5・§13・§1：関門名の孤立行対策。
   white-space: nowrap は関門H3をカード内容幅より広くし、320pxで1pxの横溢れを生じたため撤去した。
   代わりに見出し行の均等割りで孤立行を防ぐ。文字縮小・横方向圧縮は行っていない。 */
.hal-chuo .hal-chuo-gate__name {
  text-wrap: balance;
}


/* ==========================================================================
   Stage5ChuoFix7 — 正式修正指示 v1.1
   本ブロックは中央区専用名前空間（.hal-chuo）内だけに適用する。
   !important、グローバルセレクタ、word-break: break-all、
   本文への overflow-wrap: anywhere、段落全体への white-space: nowrap は使用しない。
   カード背景・border・box-shadow・radius、FAQのcopy／DOM／CSSは一切変更していない。
   ========================================================================== */

/* F7-04・F7-05・F7-06・F7-07：意味行の表示単位を幅別に切り替える。
   非表示化ではなく inline / block の切替なので、可視文字列は常に原稿と一致する。
   white-space: nowrap は使用しないため、収まらない端末では自然折返しへ委ねる。 */
.hal-chuo .hal-chuo__semantic-line--sp,
.hal-chuo .hal-chuo__semantic-line--pc {
  display: inline;
  white-space: normal;
}
@media (max-width: 767.98px) {
  .hal-chuo .hal-chuo__semantic-line--sp { display: block; }
}
@media (min-width: 768px) {
  .hal-chuo .hal-chuo__semantic-line--pc { display: block; }
}

/* F7-03・F7-11：PCとMobileで文言そのものが異なる段落だけを2系統で出力する。
   対象は「確認したい事実」の引用文と最終CTA第2段落の2箇所のみ。 */
.hal-chuo .hal-chuo__p--sp { display: none; }
@media (max-width: 767.98px) {
  .hal-chuo .hal-chuo__p--pc { display: none; }
  .hal-chuo .hal-chuo__p--sp { display: block; }
}

/* F7-12：PCの services／cost／guide／CTA で、本文・list・linkline を
   H2の実表示幅の内側へ収める（Human Owner決定：セクションごとに各H2幅へ合わせる）。

   .hal-chuo__h2 の font-size は clamp(21px, 5.2vw, 27px)。
   768px以上では 5.2vw >= 39.9px となり常に上限27pxへクランプされるため、
   PC帯全域でH2の字幅は一定になる。letter-spacing は 0.02em = 0.54px。
   日本語全角字形の送り幅は1emであり、本テーマは palt / halt を使用していないため、
   N文字の可視幅は N*27 + (N-1)*0.54 で確定する。

     services  N=18  495.18px  -> 495px
     cost      N=21  577.80px  -> 577px
     guide     N=25  687.96px  -> 687px
     CTA       N=19  522.72px  -> 522px

   いずれのH2もPCでは1行で出力される（headline-line / pc-copy が inline のため）。 */
@media (min-width: 768px) {
  .hal-chuo .hal-chuo-services__intro { max-width: 495px; }
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline { max-width: 577px; }
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide__points,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline { max-width: 687px; }
  .hal-chuo .hal-chuo-cta .hal-chuo__p { max-width: 522px; }
}


/* ==========================================================================
   Stage5ChuoFix8 — 限定修正（§6・§8・§9）
   本ブロックは中央区専用名前空間（.hal-chuo）内だけに適用する。
   !important、グローバルセレクタ、text-align: justify、word-break: break-all、
   本文への overflow-wrap: anywhere、段落全体への white-space: nowrap は使用しない。
   カード背景・border・box-shadow・radius、FAQのcopy／DOM／CSS、
   canonical／Schema／SEO title／meta description に関わる指定は一切変更していない。
   ========================================================================== */

/* §8.2：先行ラベル（主な分岐：）と同一行に載せる意味行。
   全幅で inline のままとし、直後の --pc 行だけがPCで block になって改行を作る。
   white-space: nowrap は使用しないため、収まらない端末では自然折返しへ委ねる。 */
.hal-chuo .hal-chuo__semantic-line--inline {
  display: inline;
  white-space: normal;
}

/* §8.6：「東京赤坂支店の必然性」第5段落1行目の強調（Fix12でMobile 3行にも対応）。
   767.98px以下では行が inline へ戻り連結表示になるため、太字も適用しない。
   font-weight だけを変え、色・サイズ・字送り・DOMの意味構造は変更していない。 */
@media (min-width: 768px) {
  .hal-chuo .hal-chuo__semantic-line--emph-pc {
    font-weight: 700;
  }
}

/* §8.7：「確認したい事実から、盤面を設計する。」導入の3項目。
   可視記号は日本語の「・」。既定の丸いlist markerは使用しない。
   §23.3（相談ガイドの3項目）と同じ体裁へ揃え、PC／Mobile共通で適用する。 */
.hal-chuo .hal-chuo-services__points {
  width: 100%;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}
.hal-chuo .hal-chuo-services__points li {
  position: relative;
  margin: 0;
  padding-left: 1.15em;
  font-family: var(--hal-sans);
  font-size: 15px;
  line-height: 2.0;
  color: var(--hal-body-deep);
  text-align: left;
  word-break: normal;
  line-break: strict;
  overflow-wrap: normal;
  text-wrap: pretty;
}
.hal-chuo .hal-chuo-services__points li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}


/* ==========================================================================
   Stage5ChuoFix10 — 実表示限定修正（Human Owner裁定 2026-09-03）
   本ブロックは中央区専用名前空間（.hal-chuo）内だけに適用する。
   !important、グローバルセレクタ、段落・li・summary全体への white-space: nowrap、
   transform: scaleX()、負のletter-spacing、極端なfont-size縮小、100vw、負margin、
   全コンテナpaddingの一括変更は使用しない。保護語句には既存 .hal-chuo__keep だけを用いる。
   ========================================================================== */

/* §4・§5（裁定3-3）：「情景」ラベルと情景タイトルを同一row（dl/dt/dd）に置く。
   折返し時は dd が flex item として本文先頭位置に揃う。地域条件・設計の p ラベルは不変。 */
.hal-chuo .hal-chuo-gate__scene-row {
  display: flex;
  align-items: baseline;
  column-gap: 10px;
  margin: 0 0 10px;
  padding: 0;
  min-width: 0;
}
.hal-chuo .hal-chuo-gate__scene-row .hal-chuo-gate__label {
  flex: none;
  margin: 0;
}
.hal-chuo .hal-chuo-gate__scene-row .hal-chuo-gate__scene-title {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
}

/* §4：関門01「情景」の3項目。§8.7（services__points）と同体裁。項目全体へ nowrap は与えない。 */
.hal-chuo .hal-chuo-gate__points {
  width: 100%;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}
.hal-chuo .hal-chuo-gate__points li {
  position: relative;
  margin: 0;
  padding-left: 1.15em;
  font-family: var(--hal-sans);
  font-size: 15px;
  line-height: 2.0;
  color: var(--hal-body-deep);
  text-align: left;
  word-break: normal;
  line-break: strict;
  overflow-wrap: normal;
  text-wrap: pretty;
}
.hal-chuo .hal-chuo-gate__points li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
@media (min-width: 1024px) {
  .hal-chuo .hal-chuo-gate__points li { font-size: 16px; line-height: 2.05; }
}
@media (min-width: 768px) and (max-width: 1023.98px) {
  .hal-chuo .hal-chuo-gate__points li { font-size: 15.5px; }
}

/* §9・ChatGPT監査（必須修正1）：320〜359pxでは関門カードの左右paddingだけを20px→16pxへ限定調整する。
   外側コンテナ・他セクションのpadding・font-sizeは変更しない。 */
@media (max-width: 359.98px) {
  .hal-chuo .hal-chuo-gate {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* §9：対応ブラウザだけで文節単位の折返しを補助する。中央区本文コンテナに限定し、サイト全体へは適用しない。
   基準（word-break: normal / line-break: strict / overflow-wrap: normal / text-wrap: pretty）は既存定義を維持。 */
@supports (word-break: auto-phrase) {
  .hal-chuo .hal-chuo__p,
  .hal-chuo .hal-chuo-gate__summary,
  .hal-chuo .hal-chuo-gate__scene-title,
  .hal-chuo .hal-chuo-gate__points li,
  .hal-chuo .hal-chuo-services__points li,
  .hal-chuo .hal-chuo-guide__points li {
    word-break: auto-phrase;
  }
}



/* ==========================================================================
   Stage5ChuoFix11 — 関門summary 共通配置（PC／Mobile共通。メディアクエリを持たない）
   2行を一つの文章ブロックとして中央へ置き、内部は左揃え、外側左右余白を同値にする。
   改行位置とコピーは変更しない。nowrap は summary の行spanだけに与える。
   ========================================================================== */
.hal-chuo #hal-chuo-gate-01 .hal-chuo-gate__summary,
.hal-chuo #hal-chuo-gate-02 .hal-chuo-gate__summary {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
}
.hal-chuo #hal-chuo-gate-01 .hal-chuo-gate__summary .hal-chuo__semantic-line,
.hal-chuo #hal-chuo-gate-02 .hal-chuo-gate__summary .hal-chuo__semantic-line {
  white-space: nowrap;
}

/* ==========================================================================
   Stage5ChuoFix11 — Human Owner表示修正
   PC左端5区分（1024px以上）／Mobile中央配置（767.98px以下）／
   Human Owner固定行の保護／safe-wrap（keep-all ＋ 意味単位の wbr）。
   すべて .hal-chuo 配下へ限定する。768〜1023.98px へは1件も宣言を出さない。
   ========================================================================== */

/* --- F11-1 PC 5区分。見出しは中央配置のまま、本文の実文字左端だけを移動する。 --- */
@media (min-width: 1024px) {
  .hal-chuo .hal-chuo-gates__intro {
    width: 100%;
    max-width: 520px;
    margin-left: calc((100% - 372px) / 2);
    margin-right: 0;
  }
  /* Fix12 PC-1：必然性本文の左端を services 本文の左端へ一致させる。
     左端の計算式は本カスタムプロパティ1件だけが持ち、二重の独立数式を作らない。
     100% は使用要素の包含ブロックで解決され、両対象とも
     .hal-container.hal-chuo__prose 直下のため同一値になる。 */
  .hal-chuo {
    --hal-chuo-body-left: calc((100% - 495px) / 2 + 16px);
  }
  .hal-chuo .hal-chuo-necessity .hal-chuo__p {
    width: 100%;
    max-width: 540px;
    margin-left: var(--hal-chuo-body-left);
    margin-right: 0;
  }
  .hal-chuo .hal-chuo-services__intro {
    width: 100%;
    max-width: 495px;
    margin-left: var(--hal-chuo-body-left);
    margin-right: 0;
  }
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline {
    width: 100%;
    max-width: 577px;
    margin-left: calc((100% - 577px) / 2 + 16px);
    margin-right: 0;
  }
  /* P-ALIGN-5：guide本文左端は cost本文左端と同一式で解決する。 */
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide__points,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline {
    width: 100%;
    max-width: 687px;
    margin-left: calc((100% - 577px) / 2 + 16px);
    margin-right: 0;
  }
}

/* --- F11-2 PCでは wbr を描画対象から外し、指定改行へ影響させない。 --- */
@media (min-width: 768px) {
  .hal-chuo wbr { display: none; }
}

/* --- F11-3 Mobile 中央配置・固定行保護・safe-wrap --- */
@media (max-width: 767.98px) {
  .hal-chuo {
    --hal-chuo-h2gates-w: calc(14.28 * clamp(21px, 5.2vw, 27px));
    --hal-chuo-gutter: clamp(10px, 3.2vw, 16px);
  }

  /* G1 gates_intro（360px以上）：H2実文字左端へ揃える対象。 */
  .hal-chuo .hal-chuo-gates__intro {
    width: auto;
    max-width: var(--hal-chuo-h2gates-w);
    margin-inline: auto;
  }

  /* G3 長文5対象：対象ごとに独立した宣言とし、一括で扱わない。 */
  .hal-chuo .hal-chuo-necessity .hal-chuo__p {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }
  .hal-chuo .hal-chuo-services__intro {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }
  .hal-chuo .hal-chuo-cost .hal-chuo__p,
  .hal-chuo .hal-chuo-cost .hal-chuo__linkline {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }
  .hal-chuo .hal-chuo-guide .hal-chuo__p,
  .hal-chuo .hal-chuo-guide__points,
  .hal-chuo .hal-chuo-guide .hal-chuo__linkline {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }
  .hal-chuo .hal-chuo-cta .hal-chuo__p {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }

  /* 太字固定行を含む段落だけはコンテナ利用可能幅まで使用してよい。
     Mobile 8対象全体を全幅にする許可ではない。 */
  .hal-chuo .hal-chuo-necessity .hal-chuo__p--emph {
    max-width: 100%;
  }
  .hal-chuo .hal-chuo-necessity .hal-chuo__semantic-line--emph-pc {
    display: block;
    font-weight: 700;
    font-size: clamp(12.5px, 3.9vw, 15px);
  }

  /* Human Owner固定行だけを保護する。段落全体・ページ全体へは適用しない。 */
  .hal-chuo .hal-chuo-necessity .hal-chuo__p--nb .hal-chuo__semantic-line,
  .hal-chuo .hal-chuo-necessity .hal-chuo__semantic-line--emph-pc,
  .hal-chuo .hal-chuo-cta .hal-chuo__p--sp .hal-chuo__semantic-line {
    white-space: nowrap;
  }

  /* 固定行が収まらない幅だけ、その固定行に限定した最小限の clamp を使う。 */
  .hal-chuo .hal-chuo-necessity .hal-chuo__p--nb .hal-chuo__semantic-line {
    font-size: clamp(13.5px, 4.22vw, 15px);
  }
  .hal-chuo .hal-chuo-cta .hal-chuo__p--sp .hal-chuo__semantic-line {
    font-size: clamp(12.8px, 4vw, 15px);
  }

  /* safe-wrap 第1層：不自然な文字間の既定改行を禁止する。
     テンプレートが safe-wrap を選び、かつ phrase キーを持つ文字列にだけ付く
     .hal-chuo__phrase が対象。CTAボタン・/cost/・/guide/リンク・電話・LINE・
     フォーム・受付時間・FAQ・4調査カード・主な分岐・FV・固定改行行へは適用しない。 */
  .hal-chuo .hal-chuo__phrase {
    word-break: keep-all;
    overflow-wrap: normal;
    line-break: strict;
  }
}

/* --- F11-4 320〜359.98px：gates_intro を G3 方式へフォールバックする。 --- */
@media (max-width: 359.98px) {
  .hal-chuo .hal-chuo-gates__intro {
    width: auto;
    max-width: calc(100% - 2 * var(--hal-chuo-gutter));
    margin-inline: auto;
  }
}
