/* アクセスページ。地図／住所は access-map ブロック、トピックは .access-section ごとに区切る。 */

.access-main .wp-block-post-content {
	padding-top: 56px;
}
.access-main .sec-head {
	margin-bottom: 0;
}

/* タイトル帯: h1（左）＋ページ内ショートカット（右）の横並び。 */
.access-title-band {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px 32px;
	flex-wrap: wrap;
}
.access-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
}
.access-nav a {
	font-family: var(--wp--custom--brand-ui, var(--wp--custom--brand-body));
	font-size: 14px;
	letter-spacing: 0.02em;
	color: var(--aureate, #b89766);
	text-decoration: none;
}
.access-nav a:hover {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* 地図（hilton/access-map・alignfull）。先頭のときはコンテナ padding と二重にしないよう上余白を消す。 */
:is(.entry-content, [class*="wp-block-post-content"]) .access-map {
	margin-top: clamp(24px, 4vw, 40px);
	margin-bottom: clamp(24px, 4vw, 40px);
}
:is(.entry-content, [class*="wp-block-post-content"]) > .access-map:first-child {
	margin-top: 0;
}
.access-map iframe {
	display: block;
	width: 100%;
	height: clamp(280px, 40vw, 420px);
	border: 0;
}
/* 住所（サイト設定をバインドした3段落: ホテル名／住所／連絡先）。各行は別段落で自然に改行する。 */
.access-info {
	font-size: 14px;
	line-height: 1.9;
	color: var(--text, #111);
}
.access-info .access-name {
	font-weight: 700;
}

/* トピックセクション。区切りの上罫線は h2.alignfull（blocks.css）が担う。 */
.access-section {
	position: relative;
	padding: 0 0 clamp(28px, 4vw, 48px);
}
.access-section > :first-child:not(.alignfull) {
	margin-top: 0;
}
.access-section > :last-child {
	margin-bottom: 0;
}
.access-section:last-child {
	padding-bottom: 0;
}

/* h2 はセクション全幅、それ以外は読みやすい幅（760）に制限。 */
.access-section > :not(h2) {
	max-width: 760px;
}
.access-section > h2 {
	max-width: none;
}

.access-section .wp-block-image {
	margin: 16px auto;
	text-align: center;
}
.access-section .wp-block-image img {
	max-width: min(100%, 600px);
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

/* 言語切替（タイトル帯と地図の間）。地図にくっつかないよう下余白を持たせる。 */
.access-main .access-lang-switcher {
	margin-top: 8px;
	margin-bottom: 20px;
}
