/*
 * ホームステイ同行サポート（料金について）（/homestay_price/、page ID 665）専用。
 *
 * 旧Snow Monkey Blocks（pricing-table／pricing-table-item×4、buttons／btn×3）を
 * WordPress標準ブロック（core/columns・core/group・core/heading・core/paragraph・
 * core/list・core/buttons）へ置き換えた際の見た目補完用。
 *
 * 各プランを独立した枠線ボックス（カード）として扱う初版から、静かな
 * 「料金比較表」に近い見た目へ調整済み。3列（または単一プラン）を1枚の表と
 * みなし、列を分けるのは細い罫線のみで、背景色による塗り分けは行わない。
 * 価格の強調は色ではなく太字・サイズのみで表現し、アクセントカラー
 * （--accent、青系）は使わない。
 *
 * PC/スマホの横並び・縦積み切り替えはcore/columnsの標準レスポンシブ挙動
 * （782px未満で自動的に縦積みになる）をそのまま利用し、追加のJS・独自
 * ブレークポイント制御は行わない。列間の区切り線だけ、その同じ782pxを
 * 境に「縦積み時は上罫線」「横並び時は左罫線」に出し分けている。
 * 新しい色・spacing systemは増やさず既存tokens.cssの値のみを使う。
 *
 * ---- ページ全体の幅統一（entry-title／entry-content） ----
 * タイトル・本文・料金表・ボタンの幅がそれぞれ1280px/960pxで混在し統一感が
 * ないという指摘を受け、ID665専用のmax-width:960px個別指定は削除した
 * （2026-09-16）。通常固定ページの共通ルール（style.css側の
 * body:not(.home) .entry-content／body.page:not(.home) .entry-title）が
 * Footer会社情報（footer.css の .footer__top）と同じ基準
 * （var(--width-content)＝1180px、padding-left/right: clamp(1.2rem, 4vw,
 * 3rem)）に統一されたため、ID665もこのファイルで個別に幅を持たず、共通
 * ルールへそのまま追従する。
 *
 * これに伴い、料金表（.homestay-price-table）自体が個別に持っていた
 * max-width:960px/margin-inline:autoも同時に削除し、entry-content（1180px）
 * の幅にそのまま追従させる。
 *
 * ---- 単一料金表（現地支払い）の罫線不整合の修正 ----
 * 3列料金表ではhomestay-price-table（親=wp-block-columns）と
 * homestay-price-table__item（子=各wp-block-column）が別要素のため
 * :first-childが列の判定として機能するが、単一料金表（wp-block-group）は
 * homestay-price-tableとhomestay-price-table__itemが同じ1要素に付いており、
 * :first-childは「entry-content内で何番目の子か」を見てしまい意図どおりに
 * 働かない（親側border-top/bottomと重複したborder-topや、不要なborder-left
 * が出ていた）。DOM/post_contentは変更せず、既存のhomestay-price-table--single
 * 修飾クラスをセレクタに使って明示的に上書きする。
 *
 * ---- ボタンと料金表の間隔 ----
 * 現地支払い料金表（core/group、下marginなし）と直後のcore/buttons
 * （上marginなし）の間に隙間がなく、ボタンが料金表へ食い込んで見えていた。
 * 「料金表直後のbuttons」だけに限定して上marginを追加する（隣接セレクタで
 * 限定するため、他ページ・他のbuttonsブロックには影響しない）。
 *
 * ---- 強調文字色 ----
 * post_content内の既存インライン強調（見出し中の数字・キャッチコピーに
 * 使われているsme-text-color、色は#fcb900固定・6箇所）について、CSS側から
 * 単色で上書きする。post_content・HTML・文言は一切変更しない。値は
 * ユーザー指定の#ea9c00（鮮やかすぎず、明確にオレンジと認識できる色）。
 * インラインstyle属性はCSSの詳細度に関わらず常に優先されるため、外部
 * スタイルシートから上書きするには!importantが技術的に必須（このプロパティ
 * に限り使用）。対象は.homestay-price-table配下の.sme-text-colorのみに
 * 限定し、ID665の他の要素・他ページには影響しない。
 *
 * buttons/btnの置換先（core/buttons・core/button）は標準スタイルのみで
 * 足りるため、間隔以外は対象外。他ページには一切影響しない。
 *
 * ---- 現地支払いセクションの2カラム化 ----
 * 「ホストファミリーへの支払い」段落＋単一料金表(group)を、core/columns
 * (62%/38%)で左（既存の段落・groupをそのまま移設。文言・金額は無変更）／
 * 右（装飾用の家アイコン、空のcore/column＋CSS背景画像）に分割した
 * （2026-09-16）。3列料金表と視覚的に区別するための構成で、post_content側は
 * 段落・groupの中身は一切変更せず、groupのclassNameから外側の枠線用
 * 「homestay-price-table」トークンだけを外し（二重枠線を避けるため）、
 * 新設した外側columnsへ付け替えている（--single/--itemの罫線修正ロジックは
 * class名ベースのため、ネスト位置が変わっても影響を受けない）。
 * アイコンはSVGをCSSのbackground-imageとしてdata URIで埋め込む（外部画像・
 * 外部ライブラリ不使用）。空のdivに背景画像を置くだけで、alt/aria-hiddenの
 * ような装飾用ARIA属性は付与していない（<img>/<svg>要素ではなく、CSS
 * 背景画像は元々支援技術に一切露出しないため、装飾目的の隠蔽としてARIA属性
 * を追加する必要がない。追加すると、そのブロックのattributesがcore/column
 * のsave()と一致せずGutenberg側で「無効なコンテンツ」警告が出るため、
 * あえて付与していない）。色は既存の--text-mutedの1色のみ（線画、塗りなし）。
 * PCでは左右中央揃え、スマホ(782px未満)ではcore/columnsの標準挙動で
 * 縦積みになり、料金・説明が先・アイコンがその下に小さめに表示される
 * （表示順はDOM順そのまま、追加の並び替えCSSは使用していない）。
 *
 * アイコンには、家の右横に立つ人物を追加した（2026-09-16）。家の線画
 * （座標は無変更）はそのままに、viewBoxの横幅だけ120→170に拡張して
 * 人物（頭=円、胴体・腕・脚=直線のみ、顔・服・髪などの装飾なし）を右側に
 * 配置している。線色・線の太さ（--text-muted相当、stroke-width:4）・塗り
 * なしは家と共通。viewBox拡張分だけbackground-sizeの幅も同じ比率
 * （120→170で約1.417倍、72px→102px／112px→159px）で拡大し、家の見た目の
 * 大きさそのものは変えていない（高さはautoのため、拡張後の縦横比170:120に
 * 応じて自動計算される）。
 *
 * 左カラム（現地支払い情報）は、カラムの左端いっぱいに文字を広げるのではなく
 * 「情報ブロック」自体をカラム内で中央配置し、ブロック内部の文字は左揃えに
 * 統一した（2026-09-16）。対象は.homestay-price-table--single（＝現地支払い
 * のgroup）のみに限定しており、上段3列料金表側の.homestay-price-table__title
 * 等（text-align:centerのまま）には影響しない。あわせて見出し・補足・
 * リストの上下margin/paddingを詰め、縦方向の空白を整理した。「合計700C＄」
 * の文字サイズ・太さ・区切り線の位置（100%幅のまま）は変更していない。
 */

.page-id-665 .homestay-price-table {
	border-top: 1px solid var(--border-color);
	border-bottom: 1px solid var(--border-color);
}

.page-id-665 .homestay-price-table + .wp-block-buttons {
	margin-top: var(--space-l);
}

.page-id-665 .homestay-price-table__section-title {
	/* 「料金情報＋家と人物」全体に対するセクション見出し。中央揃えで
	   主見出し（既存のstrong+sme-font-size span、無変更）と、続く
	   補足文（このpだけ新設したspanで囲んだ）を2行に分けて表示する。 */
	text-align: center;
	margin: 0 0 var(--space-s);
}

.page-id-665 .homestay-price-table__section-title-note {
	display: block;
	margin-top: var(--space-xs);
	font-size: var(--wp--preset--font-size--small);
	color: var(--text-muted);
}

.page-id-665 .homestay-price-table .sme-text-color {
	/* インラインstyle="color:#fcb900"を打ち消すため!importantが必須 */
	color: #ea9c00 !important;
}

.page-id-665 .homestay-price-table__item {
	padding: var(--space-m) var(--space-s);
	border-top: 1px solid var(--border-color);
	background-color: #fdfcf9;
}

.page-id-665 .homestay-price-table__item:first-child {
	border-top: none;
}

.page-id-665 .homestay-price-table--single.homestay-price-table__item {
	border-top: none;
}

@media (min-width: 782px) {
	.page-id-665 .homestay-price-table__item {
		padding: var(--space-l) var(--space-m);
		border-top: none;
		border-left: 1px solid var(--border-color);
	}

	.page-id-665 .homestay-price-table__item:first-child {
		border-left: none;
	}

	.page-id-665 .homestay-price-table--single.homestay-price-table__item {
		border-left: none;
	}
}

.page-id-665 .homestay-price-table__title {
	margin: 0 0 var(--space-s);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 400;
	text-align: center;
}

.page-id-665 .homestay-price-table__price {
	margin: 0 0 var(--space-xs);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
	text-align: center;
	color: var(--text);
}

.page-id-665 .homestay-price-table__lede {
	margin: 0 0 var(--space-s);
	font-size: var(--wp--preset--font-size--small);
	text-align: center;
	color: var(--text-muted);
}

.page-id-665 .homestay-price-table--single {
	/* 「現地にて現金でお支払いください」〜内訳までを1つの情報ブロックとして
	   左カラム内で中央配置する。内容に対して不自然に広くならず、かつ
	   最長行（送迎代の行）が折り返さない幅として20remを採用。max-width
	   なのでスマホ等、利用可能幅が20remより狭い場面では自然に縮む
	   （固定幅ではないため横スクロールは発生しない）。 */
	max-width: 20rem;
	margin-inline: auto;
}

.page-id-665 .homestay-price-table--single .homestay-price-table__title,
.page-id-665 .homestay-price-table--single .homestay-price-table__price,
.page-id-665 .homestay-price-table--single .homestay-price-table__lede {
	/* ブロック自体は中央配置のまま、内部の文字は左揃えにする */
	text-align: left;
}

.page-id-665 .homestay-price-table--single .homestay-price-table__title {
	margin-bottom: var(--space-xs);
}

.page-id-665 .homestay-price-table--single .homestay-price-table__lede {
	margin-bottom: var(--space-xs);
}

.page-id-665 .homestay-price-table--single .homestay-price-table__list {
	margin-top: var(--space-xs);
	padding-top: var(--space-xs);
}

.page-id-665 .homestay-price-table__list {
	margin: var(--space-s) 0 0;
	padding: var(--space-s) 0 0;
	list-style: none;
	border-top: 1px solid var(--border-color);
}

.page-id-665 .homestay-price-table__list li {
	padding: var(--space-xs) 0;
}

.page-id-665 .homestay-price-table__list li + li {
	border-top: 1px solid var(--border-color);
}

.page-id-665 .homestay-price-table--split {
	/* 共通の.homestay-price-tableルール（border-top/border-bottom）が、
	   上段3列料金表とこのsplitセクション両方に効いていた。上段の
	   border-bottomは残したまま、splitセクション側のborder-topだけ
	   打ち消す（見出し直下の線を無くし、見出し～料金＋イラストを
	   ひとつのまとまりに見せるため）。border-bottom（buttons直前の
	   線）はそのまま残す。 */
	border-top: none;
	align-items: center;
}

.page-id-665 .homestay-price-table__icon {
	min-height: 64px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 120' fill='none' stroke='%235b6169' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 58 L60 22 L102 58'/%3E%3Crect x='30' y='58' width='60' height='42' rx='2'/%3E%3Crect x='52' y='80' width='16' height='20' rx='1'/%3E%3Crect x='70' y='66' width='12' height='12' rx='1'/%3E%3Ccircle cx='135' cy='48' r='8'/%3E%3Cpath d='M135 56 L135 84'/%3E%3Cpath d='M135 64 L124 74 M135 64 L146 74'/%3E%3Cpath d='M135 84 L127 100 M135 84 L143 100'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 102px auto;
}

@media (min-width: 782px) {
	.page-id-665 .homestay-price-table__icon {
		min-height: 120px;
		background-size: 159px auto;
		background-position: calc(50% - 80px) center;
	}
}
