@charset "utf-8";

/*--------------------------------------------------
	FAQアーカイブ ヘッダーボタン
--------------------------------------------------*/
.faq-archive .archive__header-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 27px;
	margin-top: 40px;
}

.faq-archive .archive__header-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 80px;
	max-width: 160px;
	max-height: 55px;
	padding: 12px 16px 12px;
	border-radius: var(--radius-full);
	color: var(--color-white);
	font-weight: bold;
	font-size: 1rem;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

.faq-archive .archive__header-button::before {
	position: absolute;
	left: 50%;
	bottom: -9px;
	width: 18px;
	height: 18px;
	content: '';
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transform: translateX(-50%);
}

.faq-archive .archive__header-button:nth-child(1) {
	background: #F4A127;
}

.faq-archive .archive__header-button:nth-child(1)::before {
	background-image: url(../images/icon_faq_tourist.svg);
}

.faq-archive .archive__header-button:nth-child(2) {
	background: #1071B8;
}

.faq-archive .archive__header-button:nth-child(2)::before {
	background-image: url(../images/icon_faq_agency.svg);
}

.faq-archive .archive__header-button:nth-child(3) {
	background: #1CAF7B;
}

.faq-archive .archive__header-button:nth-child(3)::before {
	background-image: url(../images/icon_faq_local.svg);
}

@media (max-width: 767px) {
	.faq-archive .archive__header-buttons {
		flex-wrap: wrap;
		width: 100%;
		max-width: 100%;
		margin-inline: calc(var(--container-padding) * -1);
		padding-inline: var(--container-padding);
		box-sizing: border-box;
		gap: clamp(6px, 2vw, 12px);
		padding: 0;
	}

	.faq-archive .archive__header-button {
		flex: 0 1 auto;
		max-width: 100%;
		font-size: 12px;
	}
}

/*--------------------------------------------------
	FAQアーカイブ セクションタイトル（h2）
--------------------------------------------------*/
.faq-archive__content .faq-archive__item {
	position: relative;
	overflow: visible;
	max-width: 1061px;
	margin: 72px auto 24px;
	padding: 24px var(--container-padding) 0;
	background: #FDECD3;
	border-radius: 36px;
}

.faq-archive__content .faq-archive__item:first-child {
	padding-top: 24px;
}

.faq-archive__content .faq-archive__item:nth-child(2) {
	background: #CFE2F1;
}

.faq-archive__content .faq-archive__item:nth-child(3) {
	background: #D0EFE4;
}

.faq-archive__content .faq-archive__item-title {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 12px 48px;
	border-radius: var(--radius-full);
	color: var(--color-white);
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 16px;
}

.faq-archive__content .faq-archive__item-content {
	background: #FFFFFF;
	border-radius: 0 0 36px 36px;
	margin: 0 calc(var(--container-padding) * -1);
	padding: 24px var(--container-padding);
}

.faq-archive__content .faq-archive__item-title::before {
	position: absolute;
	top: -50px;
	content: '';
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* 観光客 タイトル文字から左に195px（PC） */
.faq-archive__content .faq-archive__item:nth-child(1) .faq-archive__item-title {
	background: #F4A127;
}

.faq-archive__content .faq-archive__item:nth-child(1) .faq-archive__item-title::before {
	width: 138px;
	height: 82px;
	right: calc(50% + 195px);
	left: auto;
	background-image: url(../images/icon_faq_ryokousya.svg);
}

/* 旅行事業者 タイトル文字から右に45px（PC） */
.faq-archive__content .faq-archive__item:nth-child(2) .faq-archive__item-title {
	background: #1071B8;
}

.faq-archive__content .faq-archive__item:nth-child(2) .faq-archive__item-title::before {
	width: 101px;
	height: 109px;
	left: calc(50% + 105px);
	right: auto;
	background-image: url(../images/icon_faq_jigyousya.svg);
}

/* 登山者 タイトル文字から左に131.8px（PC） */
.faq-archive__content .faq-archive__item:nth-child(3) .faq-archive__item-title {
	background: #1CAF7B;
}

.faq-archive__content .faq-archive__item:nth-child(3) .faq-archive__item-title::before {
	width: 231.25px;
	height: 109.07px;
	right: calc(50% + 131.8px);
	left: auto;
	background-image: url(../images/icon_faq_tozansya.svg);
}

/* SP: アイコンを画面幅に合わせて縮小（文字に重ならないように） */
@media (max-width: 959px) {
	.faq-archive__content .faq-archive__item:nth-child(1) .faq-archive__item-title::before {
		width: min(90px, 25vw);
		height: auto;
		aspect-ratio: 138 / 82;
		right: calc(50% + 8vw);
	}

	.faq-archive__content .faq-archive__item:nth-child(2) .faq-archive__item-title::before {
		width: min(65px, 18vw);
		height: auto;
		aspect-ratio: 101 / 109;
		left: calc(50% + 4vw);
	}

	.faq-archive__content .faq-archive__item:nth-child(3) .faq-archive__item-title::before {
		width: min(120px, 32vw);
		height: auto;
		aspect-ratio: 231.25 / 109.07;
		right: calc(50% + 5vw);
	}
}

/*--------------------------------------------------
	FAQアーカイブ アコーディオン Q/A アイコン
--------------------------------------------------*/
.faq-archive__item-content .wp-block-accordion-item {
	position: relative;
	border-bottom: 1px solid #E5E5E5;
}

.faq-archive__item-content .wp-block-accordion-item:last-child {
	border-bottom: none;
}

.faq-archive__item-content .wp-block-accordion-heading {
	margin: 0;
}

.faq-archive__item-content .wp-block-accordion-heading__toggle {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 16px 0;
	padding-left: 0;
	text-align: left;
	background: none;
	border: none;
	border-bottom: 1px solid #E0E1E3;
	cursor: pointer;
	gap: 12px;
}

.faq-archive__item-content .wp-block-accordion-heading__toggle::before {
	box-sizing: border-box;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding-top: 2px;
	padding-left: 3px;
	content: 'Q.';
	font-family: var(--font-montserrat);
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	background: none;
	background-image: none;
	border-radius: 50%;
}

/* セクションごとのQマーカー背景色 */
.faq-archive__item:nth-child(1) .wp-block-accordion-heading__toggle::before {
	background-color: #F4A127;
}

.faq-archive__item:nth-child(2) .wp-block-accordion-heading__toggle::before {
	background-color: #1071B8;
}

.faq-archive__item:nth-child(3) .wp-block-accordion-heading__toggle::before {
	background-color: #1CAF7B;
}

.faq-archive__item-content .wp-block-accordion-heading__toggle-title {
	flex: 1;
	font-family: var(--font-noto-sans-jp);
	font-weight: bold;
	font-size: 18px;
	line-height: 1.5;
}

.faq-archive__item-content .wp-block-accordion-heading__toggle-icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	text-indent: 100%;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 28px 28px;
	transition: transform 0.3s ease;
}

.faq-archive__item:nth-child(1) .wp-block-accordion-heading__toggle-icon {
	background-image: url(../images/icon_faq_tourist.svg);
}

.faq-archive__item:nth-child(2) .wp-block-accordion-heading__toggle-icon {
	background-image: url(../images/icon_faq_agency.svg);
}

.faq-archive__item:nth-child(3) .wp-block-accordion-heading__toggle-icon {
	background-image: url(../images/icon_faq_local.svg);
}

/* トグルアイコン 展開時に180°回転 */
.faq-archive__item-content .wp-block-accordion-heading__toggle[aria-expanded="true"] .wp-block-accordion-heading__toggle-icon {
	transform: rotate(180deg);
}

.faq-archive__item-content .wp-block-accordion-panel {
	position: relative;
	padding: 8px 40px 16px 48px;
	font-family: var(--font-noto-sans-jp);
	font-weight: normal;
	font-size: 16px;
	line-height: 26px;
}

.faq-archive__item-content .wp-block-accordion-panel::before {
	box-sizing: border-box;
	position: absolute;
	top: 16px;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding-top: 2px;
	padding-left: 3px;
	content: 'A.';
	font-family: var(--font-montserrat);
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	background: none;
	background-image: none;
	background-color: transparent;
	border-radius: 50%;
	border: 1px solid;
}

/* セクションごとのAマーカー（枠線・文字を同色で） */
.faq-archive__item:nth-child(1) .wp-block-accordion-panel::before {
	color: #F4A127;
	border-color: #F4A127;
}

.faq-archive__item:nth-child(2) .wp-block-accordion-panel::before {
	color: #1071B8;
	border-color: #1071B8;
}

.faq-archive__item:nth-child(3) .wp-block-accordion-panel::before {
	color: #1CAF7B;
	border-color: #1CAF7B;
}

/*--------------------------------------------------
	FAQアーカイブ ボタン（もっと見る）
--------------------------------------------------*/
.faq-archive__item-content .wp-block-button__link {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-width: 282px;
	min-height: 48px;
	padding: 12px 48px 12px 16px;
	margin: 0.25rem auto;
	color: #1A1A1A;
	background: #FFFFFF;
	border: 1px solid #1A1A1A;
	border-radius: 24px;
	font-size: 15px;
	font-weight: 600;
	text-align: left;
	text-decoration: none;
}

.faq-archive__item-content .wp-block-button__link::after {
	position: absolute;
	top: 50%;
	right: 14px;
	width: 20px;
	height: 20px;
	content: '';
	background: url(../images/icon_faq_circle_arrow_right.svg) no-repeat center;
	background-size: 20px 20px;
	transform: translateY(-50%);
}

/*--------------------------------------------------
	観光お得&便利情報 アーカイブ
--------------------------------------------------*/
.great-deals-archive .archive__header {
	padding-bottom: 8px;
	padding-top: 20px;
}

.great-deals-archive .archive__title {
	width: 100%;
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 14px 24px;
	border-radius: var(--radius-full);
	background: #f4a127;
	color: var(--color-white);
	font-weight: bold;
	font-size: clamp(1rem, 0.92rem + 0.25vw, 1.25rem);
	line-height: 1.4;
}

.great-deals-archive__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 20px;
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 169px var(--container-padding) 48px;
}

.great-deals-archive__item {
	min-width: 0;
	margin: 0;
}

.great-deals-archive__item-link {
	position: relative;
	display: block;
	min-height: 72px;
	padding: 20px 52px 20px 20px;
	border: 1px solid #f5e6d0;
	border-radius: 12px;
	background: var(--color-white);
	color: var(--color-black);
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.great-deals-archive__item-link:hover {
	background: #fdecd3;
	border-color: #f0d9b8;
	box-shadow: 0 4px 12px rgb(244 161 39 / 0.12);
}

.great-deals-archive__item-link:focus-visible {
	outline: 2px solid #f4a127;
	outline-offset: 2px;
}

/* 内部リンク：右上に黄橙の丸＋「>」（テキスト） */
.great-deals-archive__item-link:not(:has(.great-deals-archive__item-external-icon))::after {
	position: absolute;
	top: 16px;
	right: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	content: '>';
	border-radius: 50%;
	background: #f4a127;
	color: var(--color-white);
	font-family: var(--font-montserrat);
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
}

.great-deals-archive__item-title {
	margin: 0 0 8px;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.5;
}

.great-deals-archive__item-title:last-child {
	margin-bottom: 0;
}

.great-deals-archive__item-text {
	margin: 0;
	color: var(--gray-700);
	font-weight: normal;
	font-size: 0.875rem;
	line-height: 1.65;
}

.great-deals-archive__item-external-icon {
	position: absolute;
	top: 16px;
	right: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: url(../images/icon_blank_bk.svg) no-repeat center;
	background-size: 18px auto;
	pointer-events: none;
}

.great-deals-archive__item-external-icon svg {
	display: none;
}

@media (max-width: 767px) {
	.great-deals-archive .archive__header {
		margin-bottom: 24px;
	}

	.great-deals-archive__list {
		grid-template-columns: 1fr;
		gap: 12px;
		padding-top: 16px;
		padding-bottom: 40px;
	}

	.great-deals-archive__item-link {
		min-height: 64px;
		padding: 16px 48px 16px 16px;
	}

	.great-deals-archive__item-link:not(:has(.great-deals-archive__item-external-icon))::after {
		top: 14px;
		right: 14px;
	}

	.great-deals-archive__item-external-icon {
		top: 14px;
		right: 14px;
	}

	.great-deals-archive__item-title {
		font-size: 0.9375rem;
	}

	.great-deals-archive__item-text {
		font-size: 0.8125rem;
	}
}

/*--------------------------------------------------
	セクションハブ配下（page.php）：固定ラベル H1 ＋ グレー帯サブタイトル
--------------------------------------------------*/
.page__header--section-hub {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	padding-top: 20px;
}

.page__header--section-hub .page__title {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--max-content-width);
	margin: 0;
	padding: 14px 24px;
	border-radius: var(--radius-full);
	font-weight: bold;
	font-size: clamp(1rem, 0.92rem + 0.25vw, 1.25rem);
	line-height: 1.4;
	text-align: center;
}

.page__header--theme-enterpriser .page__title {
	background: #1071b8;
	color: var(--color-white);
}

.page__header--theme-great-deals .page__title {
	background: #f4a127;
	color: var(--color-white);
}

.page__header--theme-climber .page__title {
	background: #1caf7b;
	color: var(--color-white);
}

.page__subtitle {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--max-content-width);
	margin: 0;
	padding: 12px 24px;
	border-radius: var(--radius-full);
	background: #e8e8e8;
	color: var(--color-black);
	font-weight: normal;
	font-size: clamp(0.9375rem, 0.9rem + 0.15vw, 1.0625rem);
	line-height: 1.45;
	text-align: center;
}

/*--------------------------------------------------
	旅行事業者向け（固定ページ・ブロック）
	enterpriser.html の .clickable-card 2列グリッド
--------------------------------------------------*/
.page-enterpriser .page__header {
	padding-top: 20px;
}

.page-enterpriser .page__header:not(.page__header--section-hub) .page__title {
	background: #1071b8;
	color: var(--color-white);
	padding: 14px 24px;
	font-weight: bold;
	font-size: clamp(1rem, 0.92rem + 0.25vw, 1.25rem);
	line-height: 1.4;
}

.page-enterpriser .page__content,
.page-great-deals-section .page__content {
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 145px var(--container-padding) 48px;
}

/* 行：直下に .clickable-card を並べるグループ（コアの flex 縦中央を打ち消し、観光お得のグリッドと同様に上辺・行高を揃える） */
.page-enterpriser .page__content .wp-block-group.is-layout-flex:has(> .clickable-card),
.page-enterpriser .page__content .wp-block-group:has(> .clickable-card) {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 20px;
	align-items: stretch;
	margin-block: 0 20px;
}

.page-enterpriser .page__content .wp-block-group:has(> .clickable-card):last-child {
	margin-bottom: 0;
}

.page-enterpriser .clickable-card {
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: 72px;
	height: 100%;
	margin: 0;
	padding: 20px 52px 20px 20px;
	border: 1px solid #cfe2f1;
	border-radius: 12px;
	background: var(--color-white);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.page-enterpriser .clickable-card.wp-block-group {
	margin-top: 0;
	margin-bottom: 0;
}

.page-enterpriser .clickable-card:has(.wp-block-heading a:hover) {
	background: #cfe2f1;
	border-color: #9ec8e8;
	box-shadow: 0 4px 12px rgb(16 113 184 / 0.08);
}

.page-enterpriser .clickable-card .wp-block-heading {
	margin: 0 0 8px;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.5;
}

.page-enterpriser .clickable-card .wp-block-heading:last-child {
	margin-bottom: 0;
}

.page-enterpriser .clickable-card .wp-block-heading a {
	color: var(--color-black);
	text-decoration: none;
}

.page-enterpriser .clickable-card .wp-block-heading a:focus-visible {
	outline: 2px solid #1071b8;
	outline-offset: 2px;
}

.page-enterpriser .clickable-card > p {
	margin: 0;
	color: var(--gray-700);
	font-weight: normal;
	font-size: 0.875rem;
	line-height: 1.65;
}

.page-enterpriser .clickable-card > p:empty {
	display: none;
}

/* 内部リンク：右上に青丸＋「>」（観光お得と同じ構成） */
.page-enterpriser .clickable-card:not(:has(a[target="_blank"]))::after {
	position: absolute;
	top: 16px;
	right: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	content: '>';
	border-radius: 50%;
	background: #1071b8;
	color: var(--color-white);
	font-family: var(--font-montserrat);
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	pointer-events: none;
}

/* 外部リンク：右上に別タブアイコン（観光お得の .item-external-icon と同様の枠・位置） */
.page-enterpriser .clickable-card:has(a[target="_blank"])::after {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 28px;
	height: 28px;
	content: '';
	background: url(../images/icon_blank_bk.svg) no-repeat center;
	background-size: 18px auto;
	pointer-events: none;
}

@media (max-width: 767px) {
	/* デスクトップと同セレクタで詳細度を揃え、2列指定を確実に上書き（観光お得の .great-deals-archive__list と同様に1列） */
	.page-enterpriser .page__content .wp-block-group.is-layout-flex:has(> .clickable-card),
	.page-enterpriser .page__content .wp-block-group:has(> .clickable-card) {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-block: 0 12px;
	}

	.page-enterpriser .page__content .wp-block-group:has(> .clickable-card):last-child {
		margin-bottom: 0;
	}

	.page-enterpriser .page__content {
		padding-top: 16px;
		padding-bottom: 40px;
	}

	.page-enterpriser .clickable-card {
		min-height: 64px;
		height: auto;
		padding: 16px 48px 16px 16px;
	}

	.page-enterpriser .clickable-card:not(:has(a[target="_blank"]))::after,
	.page-enterpriser .clickable-card:has(a[target="_blank"])::after {
		top: 14px;
		right: 14px;
	}

	.page-enterpriser .clickable-card .wp-block-heading {
		font-size: 0.9375rem;
	}

	.page-enterpriser .clickable-card > p {
		font-size: 0.8125rem;
	}
}

/*--------------------------------------------------
	登山者の方へ（固定ページ・ブロック）
	旅行事業者向けと同構成・配色は緑系
--------------------------------------------------*/
.page-climber .page__header {
	padding-top: 20px;
}

.page-climber .page__header:not(.page__header--section-hub) .page__title {
	background: #1caf7b;
	color: var(--color-white);
	padding: 14px 24px;
	font-weight: bold;
	font-size: clamp(1rem, 0.92rem + 0.25vw, 1.25rem);
	line-height: 1.4;
}

.page-climber .page__content {
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 145px var(--container-padding) 48px;
}

.page-climber .page__content .wp-block-group.is-layout-flex:has(> .clickable-card),
.page-climber .page__content .wp-block-group:has(> .clickable-card) {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 20px;
	align-items: stretch;
	margin-block: 0 20px;
}

.page-climber .page__content .wp-block-group:has(> .clickable-card):last-child {
	margin-bottom: 0;
}

.page-climber .clickable-card {
	position: relative;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: 72px;
	height: 100%;
	margin: 0;
	padding: 20px 52px 20px 20px;
	border: 1px solid #d0efe4;
	border-radius: 12px;
	background: var(--color-white);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.page-climber .clickable-card.wp-block-group {
	margin-top: 0;
	margin-bottom: 0;
}

.page-climber .clickable-card:has(.wp-block-heading a:hover) {
	background: #d0efe4;
	border-color: #9dd9bf;
	box-shadow: 0 4px 12px rgb(28 175 123 / 0.08);
}

.page-climber .clickable-card .wp-block-heading {
	margin: 0 0 8px;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.5;
}

.page-climber .clickable-card .wp-block-heading:last-child {
	margin-bottom: 0;
}

.page-climber .clickable-card .wp-block-heading a {
	color: var(--color-black);
	text-decoration: none;
}

.page-climber .clickable-card .wp-block-heading a:focus-visible {
	outline: 2px solid #1caf7b;
	outline-offset: 2px;
}

.page-climber .clickable-card > p {
	margin: 0;
	color: var(--gray-700);
	font-weight: normal;
	font-size: 0.875rem;
	line-height: 1.65;
}

.page-climber .clickable-card > p:empty {
	display: none;
}

.page-climber .clickable-card:not(:has(a[target="_blank"]))::after {
	position: absolute;
	top: 16px;
	right: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	content: '>';
	border-radius: 50%;
	background: #1caf7b;
	color: var(--color-white);
	font-family: var(--font-montserrat);
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	pointer-events: none;
}

.page-climber .clickable-card:has(a[target="_blank"])::after {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 28px;
	height: 28px;
	content: '';
	background: url(../images/icon_blank_bk.svg) no-repeat center;
	background-size: 18px auto;
	pointer-events: none;
}

@media (max-width: 767px) {
	.page-climber .page__content .wp-block-group.is-layout-flex:has(> .clickable-card),
	.page-climber .page__content .wp-block-group:has(> .clickable-card) {
		grid-template-columns: 1fr;
		gap: 12px;
		margin-block: 0 12px;
	}

	.page-climber .page__content .wp-block-group:has(> .clickable-card):last-child {
		margin-bottom: 0;
	}

	.page-climber .page__content {
		padding-top: 16px;
		padding-bottom: 40px;
	}

	.page-climber .clickable-card {
		min-height: 64px;
		height: auto;
		padding: 16px 48px 16px 16px;
	}

	.page-climber .clickable-card:not(:has(a[target="_blank"]))::after,
	.page-climber .clickable-card:has(a[target="_blank"])::after {
		top: 14px;
		right: 14px;
	}

	.page-climber .clickable-card .wp-block-heading {
		font-size: 0.9375rem;
	}

	.page-climber .clickable-card > p {
		font-size: 0.8125rem;
	}
}

/*--------------------------------------------------
	Gutenberg 本文共通
	:is(.page__content,.single__content,.access-content__inner,.pamphlet-archive).wp-block
	page__content／single__content／access-content__inner／pamphlet-archive（セクションに .wp-block 併記）のベース。
	テーブル内の p / li は :not(:is(.wp-block-table *)) で限定。
	詳細度を上げるため .page .page__content.wp-block / .single .single__content.wp-block 併記（コア .wp-block-* と競合しにくくする）
--------------------------------------------------*/
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block {
	font-size: clamp(0.875rem, 0.875rem + 0.1875vw, 1.0625rem);
	line-height: 1.8;
}

:is(.page__content, .single__content, .access-content__inner).wp-block > .wp-block-columns,
:is(.page__content, .single__content, .access-content__inner).wp-block > .wp-block-buttons,
:is(.page__content, .single__content, .access-content__inner).wp-block > *:not(.wp-block-columns) {
	margin-top: 2em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block :where(h1, h2, h3, h4, h5, h6, .wp-block-heading) {
	margin: 0;
	font-weight: 700;
	line-height: 1.45;
	color: var(--color-black);
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h1 {
	font-size: 1.75em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h2 {
	font-size: 1.5em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h3 {
	font-size: 1.25em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h4 {
	font-size: 1.125em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h5 {
	font-size: 1.0625em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h6 {
	font-size: 1em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block > :where(h1, h2, h3, h4, h5, h6, .wp-block-heading):not(:first-child) {
	margin-block-start: 1.25em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block p:not(:is(.wp-block-table *)) + p:not(:is(.wp-block-table *)) {
	margin-top: 1.8em !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(ul, ol):not(:is(.wp-block-table *)):not(.pamphlet-archive__grid):not(.pamphlet-archive__tabs) {
	margin-top: 1.8em !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(ul, ol):not(:is(.wp-block-table *)):not(.pamphlet-archive__grid):not(.pamphlet-archive__tabs) li {
	padding-left: 1em;
	text-indent: -1em;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	ul:not(:is(.wp-block-table *)):not(.pamphlet-archive__grid):not(.pamphlet-archive__tabs) li::before {
	font-weight: 700;
	content: '・';
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	ol:not(:is(.wp-block-table *)):not(.pamphlet-archive__grid):not(.pamphlet-archive__tabs) li::before {
	font-weight: 700;
	content: counter(list-item) ". ";
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-column {
	min-width: 0;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	figure:not(.wp-block-table):not(.wp-block-embed) {
	max-width: 100%;
	margin: 0;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block figure.wp-block-image,
.page .page__content.wp-block figure.wp-block-image,
.page .access-content__inner.wp-block figure.wp-block-image,
.single .single__content.wp-block figure.wp-block-image {
	border-radius: var(--radius-m);
	overflow: hidden;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-image img,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-gallery img,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block figure:not(.wp-block-table) img,
.page .page__content.wp-block figure.wp-block-image img,
.page .page__content.wp-block .wp-block-gallery img,
.page .page__content.wp-block figure:not(.wp-block-table) img,
.page .access-content__inner.wp-block figure.wp-block-image img,
.page .access-content__inner.wp-block .wp-block-gallery img,
.page .access-content__inner.wp-block figure:not(.wp-block-table) img,
.single .single__content.wp-block figure.wp-block-image img,
.single .single__content.wp-block .wp-block-gallery img,
.single .single__content.wp-block figure:not(.wp-block-table) img {
	display: block;
	box-sizing: border-box;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	border-radius: var(--radius-m);
}

/* 画像ブロックの追加 CSS クラス nomal＝角丸オフ（ロゴ・角が要素の画像向け） */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block figure.wp-block-image.nomal,
.page .page__content.wp-block figure.wp-block-image.nomal,
.page .access-content__inner.wp-block figure.wp-block-image.nomal,
.single .single__content.wp-block figure.wp-block-image.nomal {
	border-radius: 0;
	overflow: visible;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block figure.wp-block-image.nomal img,
.page .page__content.wp-block figure.wp-block-image.nomal img,
.page .access-content__inner.wp-block figure.wp-block-image.nomal img,
.single .single__content.wp-block figure.wp-block-image.nomal img {
	border-radius: 0;
}

/* Google 地図 embed: カスタム HTML／直下 iframe／info-embed ラッパー（HTML ブロック内の div.info-embed 想定） */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-html iframe[src*="google.com/maps"],
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block > iframe[src*="google.com/maps"],
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .info-embed iframe[src*="google.com/maps"] {
	display: block;
	box-sizing: border-box;
	width: 85%;
	max-width: 768px;
	height: auto;
	aspect-ratio: 600 / 450;
	margin-inline: auto;
	border: 0 !important;
	border-radius: 0;
}

@media (max-width: 767px) {
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-html iframe[src*="google.com/maps"],
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block > iframe[src*="google.com/maps"],
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .info-embed iframe[src*="google.com/maps"] {
		width: 100%;
		max-width: 768px;
	}
}

/* 特集シングル single-feature.php：本文 .single__content 配下の iframe 全般（地図ブロックと同系） */
.feature-single .single__content iframe {
	display: block;
	box-sizing: border-box;
	width: 85%;
	max-width: 768px;
	height: auto;
	aspect-ratio: 600 / 450;
	margin-inline: auto;
	border: 0 !important;
	border-radius: 0;
	margin: 42px auto;
}

@media (max-width: 767px) {
	.feature-single .single__content iframe {
		width: 100%;
		max-width: 768px;
	}
}

/* 特集シングル：本文内テーブル（.wp-block の有無に依存させない。下記は wp-block 内デフォルト表と同系） */
.feature-single .single__content .wp-block-table,
.feature-single .single__content figure.wp-block-table {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.feature-single .single__content .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) {
	margin: 0 0 1.5em;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table):last-child {
	margin-bottom: 0;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table {
	border-top: 1px solid #e0e0e0;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--color-black);
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) caption {
	caption-side: bottom;
	padding-top: 0.5em;
	font-size: 0.8125rem;
	color: var(--gray-700);
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead,
.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody,
.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot {
	border: none !important;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tr {
	border: none !important;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead th {
	box-sizing: border-box;
	padding: 12px 16px;
	border: none !important;
	border-bottom: 2px solid var(--gray-200) !important;
	background: var(--gray-50);
	font-weight: 700;
	text-align: left;
	vertical-align: middle;
	box-shadow: none !important;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody td,
.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody th {
	box-sizing: border-box;
	padding: 14px 16px;
	border: none !important;
	border-bottom: 1px solid #e0e0e0 !important;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	box-shadow: none !important;
}

.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot td,
.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot th {
	box-sizing: border-box;
	padding: 12px 16px;
	border: none !important;
	border-top: 1px solid var(--gray-200) !important;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
}

.feature-single .single__content
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table:not(:has(thead)) tbody > tr:first-child > th {
	padding: 12px 16px;
	border: none !important;
	border-bottom: 2px solid var(--gray-200) !important;
	background: var(--gray-50);
	font-weight: 700;
	vertical-align: middle;
	box-shadow: none !important;
}

@media (max-width: 767px) {
	.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead th,
	.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody td,
	.feature-single .single__content :is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody th {
		padding: 12px 8px;
		font-size: 0.875rem;
	}

	.feature-single .single__content
		:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table:not(:has(thead)) tbody > tr:first-child > th {
		padding: 12px 8px;
	}
}

/*--------------------------------------------------
	埋め込みブロック（X / Instagram 等）：ラッパー内コンテンツを中央揃え
	.is-type-video は.aspect ラッパー用のため flex を解除
--------------------------------------------------*/
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-embed {
	display: block;
	float: none;
	margin-inline: auto;
	max-width: 100%;
	clear: both;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed .wp-block-embed__wrapper {
	display: flex;
	justify-content: center;
	width: 100%;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.is-type-video .wp-block-embed__wrapper {
	display: block;
}

.feature-single .single__content .wp-block-embed {
	display: block;
	float: none;
	margin-inline: auto;
	max-width: 100%;
	clear: both;
}

.feature-single .single__content .wp-block-embed .wp-block-embed__wrapper {
	display: flex;
	justify-content: center;
	width: 100%;
}

.feature-single .single__content .wp-block-embed.is-type-video .wp-block-embed__wrapper {
	display: block;
}

/*--------------------------------------------------
	YouTube 白枠カード：埋め込みブロックに「追加CSSクラス」で youtube を付与した場合のみ
	（コアの provider セレクタとの競合を避け、白枠内のズレは aspect-ratio ＋ flex で統一）
	付与例: class="wp-block-embed ... wp-block-embed-youtube ... youtube"
--------------------------------------------------*/
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-embed.youtube,
.single__content .wp-block-embed.youtube {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	box-sizing: border-box;
	float: none !important;
	clear: both !important;
	width: min(100%, 481px);
	max-width: 481px;
	margin-block: 42px;
	margin-inline: auto !important;
	/* 路面電車のよもやま話.png：白フレームを厚めに、角は大きなスカーピル寄り */
	padding: clamp(32px, 8vw, 56px);
	background: var(--color-white);
	border-radius: clamp(80px, 22vw, 160px);
	overflow: hidden;
	position: relative;
	left: auto;
	right: auto;
	transform: none;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube.alignleft,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube.alignright,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube.aligncenter,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube.alignwide,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube.alignfull,
.single__content .wp-block-embed.youtube.alignleft,
.single__content .wp-block-embed.youtube.alignright,
.single__content .wp-block-embed.youtube.aligncenter,
.single__content .wp-block-embed.youtube.alignwide,
.single__content .wp-block-embed.youtube.alignfull {
	float: none !important;
	margin-block: 42px;
	margin-inline: auto !important;
	width: min(100%, 481px);
	max-width: 481px;
	left: auto;
	transform: none;
}

/* 16:9 は padding-bottom 方式を使わず aspect-ratio でラップ（白枠内で中央に収まる） */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-embed.youtube .wp-block-embed__wrapper,
.single__content .wp-block-embed.youtube .wp-block-embed__wrapper {
	display: block !important;
	position: relative;
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	padding-bottom: 0 !important;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	flex: 0 0 auto;
	align-self: stretch;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-embed.youtube .wp-block-embed__wrapper iframe,
.single__content .wp-block-embed.youtube .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border: 0 !important;
}

/* 特集本文の地図向け iframe 指定が X 等の埋め込みに掛からないよう上書き（動画は除外・比率ラッパー維持） */
.feature-single .single__content .wp-block-embed:not(.is-type-video) iframe {
	display: block;
	box-sizing: border-box;
	width: auto;
	height: auto;
	margin-inline: 0;
	border: 0 !important;
	border-radius: 0;
	aspect-ratio: unset;
	max-width: 100%;
}

/*--------------------------------------------------
	wp-block 内・グループブロック既定のカード
	追加クラスなしのグループ化に角丸・白背景（content-card と同系トークン）。
	common.css の --max-content-width / --container-padding / --radius-m を使用。
	content-card・clickable-card・spinnie-toc は除外。入れ子グループは二重枠にならないよう内側をフラット化（内側が content-card のときは除外しない）。
--------------------------------------------------*/
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-group:not(.content-card):not(.clickable-card):not(:has(> .clickable-card)):not(.spinnie-toc) {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--max-content-width);
	margin-inline: auto;
	margin-bottom: var(--space-fluid-m);
	padding: clamp(20px, 5vw, 28px) clamp(16px, var(--container-padding), 24px);
	background: var(--color-white);
	border-radius: var(--radius-m);
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-group:not(.content-card):not(.clickable-card):not(:has(> .clickable-card)):not(.spinnie-toc):last-child {
	margin-bottom: 0;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-group
	.wp-block-group:not(.content-card):not(.clickable-card):not(:has(> .clickable-card)):not(.spinnie-toc) {
	margin-bottom: 0;
	padding: 0;
	background: transparent;
	border-radius: 0;
	max-width: none;
	margin-inline: 0;
	box-shadow: none;
}

@media (max-width: 767px) {
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		.wp-block-group:not(.content-card):not(.clickable-card):not(:has(> .clickable-card)):not(.spinnie-toc) {
		margin-bottom: var(--space-fluid-s);
		padding: 20px clamp(12px, var(--container-padding), 20px);
		border-radius: 16px;
	}
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-table,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block figure.wp-block-table {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-table table {
	width: 100%;
	border-collapse: collapse;
}

/* wp-block 内・テーブルブロックのデフォルト＝列見出しは上段（thead）。info-table＝左列 th／sub-table＝カード風は除外 */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) {
		margin: 0 auto 1.5em;
    max-width: var(--max-content-width);
}


:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table):last-child {
	margin-bottom: 0;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table {
	border-top: 1px solid #e0e0e0;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--color-black);
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) caption {
	caption-side: bottom;
	padding-top: 0.5em;
	font-size: 0.8125rem;
	color: var(--gray-700);
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot {
	border: none !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tr {
	border: none !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead th {
	box-sizing: border-box;
	padding: 12px 16px;
	border: none !important;
	border-bottom: 2px solid var(--gray-200) !important;
	background: var(--gray-50);
	font-weight: 700;
	text-align: left;
	vertical-align: middle;
	box-shadow: none !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody td,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody th {
	box-sizing: border-box;
	padding: 14px 16px;
	border: none !important;
	border-bottom: 1px solid #e0e0e0 !important;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	box-shadow: none !important;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot td,
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tfoot th {
	box-sizing: border-box;
	padding: 12px 16px;
	border: none !important;
	border-top: 1px solid var(--gray-200) !important;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
}

/* ブロックで「ヘッダー列」を付けず tbody 先頭行だけ th のとき（上段見出し扱い） */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table:not(:has(thead))
	tbody > tr:first-child > th {
	padding: 12px 16px;
	border: none !important;
	border-bottom: 1px solid var(--gray-200) !important;
	/* background: var(--gray-50); */
	font-weight: 700;
	vertical-align: middle;
	box-shadow: none !important;
}

@media (max-width: 767px) {
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) thead th,
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody td,
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) tbody th {
		padding: 12px 8px;
		font-size: 0.875rem;
	}

	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		:is(figure, div).wp-block-table:not(.info-table):not(.sub-table) table:not(:has(thead))
		tbody > tr:first-child > th {
		padding: 12px 8px;
	}
}

@media (min-width: 768px) {
	:is(.page__content, .single__content, .access-content__inner).wp-block > *:not(.wp-block-columns) {
		max-width: 780px;
		margin-right: auto;
		margin-left: auto;
	}

	:is(.page__content, .single__content, .access-content__inner).wp-block .wp-block-columns,
	:is(.page__content, .single__content, .access-content__inner).wp-block .wp-block-buttons,
	:is(.page__content, .single__content, .access-content__inner).wp-block > *:not(.wp-block-columns) {
		margin-top: 78px;
	}

	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block h2.wp-block-heading {
		font-size: 1.75rem;
		line-height: 65px;
		align-items: center;
	}

	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-columns {
		max-width: var(--max-content-width);
		margin: 40px auto;
	}

	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block .wp-block-columns:last-of-type {
		margin-bottom: 0;
	}
}

/* flex nowrap グループ＋複数 .wp-block-buttons（案内所 #center / #station 等）：上マージンなし */
:is(.page__content, .single__content, .access-content__inner).wp-block
	> .wp-block-group.is-nowrap.is-layout-flex {
	margin-top: 0;
}

:is(.page__content, .single__content, .access-content__inner).wp-block
	.wp-block-group.is-nowrap.is-layout-flex > .wp-block-buttons {
	margin-top: 0;
}

/*--------------------------------------------------
	wp-block 内ボタン共通（既定）
	通常: 526x67 相当の黒ボタン
	カラム内: 492x63 相当に切替
	SP はみ出し防止のため width:100% + max-width で制御
--------------------------------------------------*/
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-buttons {
	justify-content: center;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-button {
	width: 100%;
	max-width: 526px;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-button .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 526px;
	min-height: 67px;
	padding: 12px 52px 12px 26px;
	border-radius: var(--radius-full);
	background: var(--color-black);
	color: var(--color-white);
	font-weight: 700;
	line-height: 1.35;
	text-decoration: none;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-button .wp-block-button__link::after {
	display: block;
	flex: 0 0 auto;
	position: absolute;
	right: 22px;
	top: calc(50% - 0.5625rem);
	width: 1.125rem;
	height: 1.125rem;
	background: url(../images/icon_arrow_white.svg) no-repeat center center / contain;
	content: '';
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-button .wp-block-button__link:hover {
	opacity: 0.9;
	color: var(--color-white);
}

/* カラムブロック内ボタン（幅・高さを一段小さく） */
:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-column .wp-block-button {
	max-width: 492px;
}

:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
	.wp-block-column .wp-block-button .wp-block-button__link {
	max-width: 492px;
	min-height: 63px;
}

@media (max-width: 767px) {
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		.wp-block-button,
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		.wp-block-button .wp-block-button__link,
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		.wp-block-column .wp-block-button,
	:is(.page__content, .single__content, .access-content__inner, .pamphlet-archive).wp-block
		.wp-block-column .wp-block-button .wp-block-button__link {
		max-width: 100%;
		min-height: 56px;
	}
}

/*--------------------------------------------------
	ブロック「追加CSSクラス」付き：最大幅・中央寄せ
	（.page__content / .single__content / .archive__content / .faq-archive__item-content 内）
	新規パターンは .content-max を付与するか下へセレクタ追加
	※ 縦マージンは各コンポーネントの指定を維持するため margin-inline のみ指定
--------------------------------------------------*/
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.sub-table,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.sub-table + p,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.sub-table ~ p.sub-table,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.sub-table + p.sub-table + p,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) p.sub-table + p,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) p.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table),
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table),
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-table.sub-table,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-table.sub-table + p.sub-table-text,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-table.info-table,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) p.info,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) h2.wp-block-heading.info,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-group.content-card,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-group:has(> .clickable-card),
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .wp-block-group.clickable-card,
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) .content-max {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--max-content-width);
	margin-inline: auto;
}

/*--------------------------------------------------
	ブロックエディタ：カード風テーブル（追加 CSS クラスはすべて sub-table で統一）
	h2 … カード見出し／p.sub-table … 日付など（任意）／補足 p … テーブル直前（任意）
	figure.wp-block-table.sub-table … テーブル本体／p.sub-table-text … テーブル直後の注釈（任意・下端角丸）
	要素種別でスタイルを分ける（post.html と同じ付け方）
	PC：見出し・日付・補足の左右 padding は 140px。SP：767px 以下は 12px。
--------------------------------------------------*/
h2.wp-block-heading.sub-table {
	box-sizing: border-box;
	margin: 28px 0 0;
	padding: clamp(24px, 5vw, 40px) 140px 12px;
	background: var(--color-white);
	border-radius: 20px 20px 0 0;
	color: var(--color-black);
	font-weight: 700;
	font-size: clamp(1.0625rem, 1rem + 0.25vw, 1.25rem);
	line-height: 1.45;
	text-align: center;
}

.page__content > h2.wp-block-heading.sub-table:first-child {
	margin-top: 0;
}

/* 日付用段落（追加クラス sub-table・右寄せ・グレー）
   ブロック出力では h2 と p の間に改行テキストノードが入り + が効かないことがあるため ~ も併用 */
h2.wp-block-heading.sub-table + p.sub-table,
h2.wp-block-heading.sub-table ~ p.sub-table {
	box-sizing: border-box;
	margin: 0;
	padding: 0 140px 8px;
	background: var(--color-white);
	color: var(--gray-700);
	font-size: 0.8125rem;
	line-height: 1.5;
	text-align: right;
}

/* エディタの has-text-align-right 付きはブロックコアの :where 段落スタイルと順序・詳細度で左寄せに負けることがある */
:is(.page__content, .single__content, .archive__content, .faq-archive__item-content) p.sub-table {
	text-align: right !important;
}

/* 見出し → 1段落（補足）→ テーブル（日付なし） */
h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text),
h2.wp-block-heading.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table) {
	box-sizing: border-box;
	margin: 0;
	padding: 0 140px 14px;
	background: var(--color-white);
	color: var(--color-black);
	font-size: 0.875rem;
	line-height: 1.65;
	text-align: left;
}

/* 見出し → 日付 → 補足 → テーブル（+ が効かない場合は :has(+ figure) で補足） */
h2.wp-block-heading.sub-table + p.sub-table + p,
p.sub-table + p,
p.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table) {
	box-sizing: border-box;
	margin: 0;
	padding: 0 140px 16px;
	background: var(--color-white);
	color: var(--color-black);
	font-size: 0.875rem;
	line-height: 1.65;
	text-align: left;
}

/* カード下端をテーブルに接続（パターン別） */
h2.wp-block-heading.sub-table + .wp-block-table.sub-table {
	margin-top: 0;
	border-radius: 0 0 20px 20px;
}

h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text) + .wp-block-table.sub-table {
	margin-top: 0;
	border-radius: 0 0 20px 20px;
}

h2.wp-block-heading.sub-table + p.sub-table + .wp-block-table.sub-table {
	margin-top: 0;
	border-radius: 0 0 20px 20px;
}

h2.wp-block-heading.sub-table + p.sub-table + p:not(.sub-table-text) + .wp-block-table.sub-table {
	margin-top: 0;
	border-radius: 0 0 20px 20px;
}

/* テーブル直下の注釈（sub-table-text）：テーブル下辺の角丸を注釈側に移しカードとして接続 */
h2.wp-block-heading.sub-table + .wp-block-table.sub-table:has(+ p.sub-table-text),
h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text) + .wp-block-table.sub-table:has(+ p.sub-table-text),
h2.wp-block-heading.sub-table + p.sub-table + .wp-block-table.sub-table:has(+ p.sub-table-text),
h2.wp-block-heading.sub-table + p.sub-table + p:not(.sub-table-text) + .wp-block-table.sub-table:has(+ p.sub-table-text) {
	margin-bottom: 0;
	border-radius: 0;
	padding-bottom: 28px;
}

.wp-block-table.sub-table + p.sub-table-text {
	box-sizing: border-box;
	margin: 0 0 28px;
	padding: 0 140px 40px;
	background: var(--color-white);
	border-radius: 0 0 20px 20px;
	color: var(--color-black);
	font-size: 0.875rem;
	line-height: 1.65;
	text-align: left;
}

.wp-block-table.sub-table {
	box-sizing: border-box;
	margin: 0 0 28px;
	padding: 48px 140px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border-radius: 20px;
	background: var(--color-white);
}

.wp-block-table.sub-table:last-child {
	margin-bottom: 0;
}

.wp-block-table.sub-table table {
	width: 100%;
	/* 4列の min-width 合計に合わせる（business_detail01.png の列幅バランス想定） */
	min-width: 46.5rem;
	margin: 0;
	border: none !important;
	border-collapse: collapse;
	font-size: 0.875rem;
	line-height: 1.65;
}

/*
	4列（事業所名／内容／所要時間／問い合わせ先）
	business_detail01.png 準拠の比率 約 24% / 42% / 12% / 22% を width で、
	読みやすい下限を min-width（rem）で指定。狭いビューは figure の overflow-x で横スクロール
*/
.wp-block-table.sub-table thead th:nth-child(1),
.wp-block-table.sub-table tbody td:nth-child(1),
.wp-block-table.sub-table tfoot td:nth-child(1) {
	width: 24%;
	min-width: 11rem;
}

.wp-block-table.sub-table thead th:nth-child(2),
.wp-block-table.sub-table tbody td:nth-child(2),
.wp-block-table.sub-table tfoot td:nth-child(2) {
	width: 42%;
	min-width: 19.5rem;
}

.wp-block-table.sub-table thead th:nth-child(3),
.wp-block-table.sub-table tbody td:nth-child(3),
.wp-block-table.sub-table tfoot td:nth-child(3) {
	width: 12%;
	min-width: 5.5rem;
}

.wp-block-table.sub-table thead th:nth-child(4),
.wp-block-table.sub-table tbody td:nth-child(4),
.wp-block-table.sub-table tfoot td:nth-child(4) {
	width: 22%;
	min-width: 10.25rem;
}

/* コア .wp-block-table thead の太線を打ち消し。tbody はグリッド、thead th は横線のみ（縦線なし） */
.wp-block-table.sub-table thead,
.wp-block-table.sub-table tbody,
.wp-block-table.sub-table tfoot {
	border: none !important;
	border-width: 0 !important;
}

.wp-block-table.sub-table thead {
	border-bottom: none !important;
}

.wp-block-table.sub-table tr {
	border: none !important;
}

.wp-block-table.sub-table thead th,
.wp-block-table.sub-table tbody td {
	box-shadow: none !important;
	vertical-align: top;
	text-align: left;
	padding: 15px 10px;
}

.wp-block-table.sub-table tbody td {
	border: 1px solid #eeeeee !important;
}

.wp-block-table.sub-table thead th {
	background: transparent !important;
	color: var(--gray-700);
	font-weight: 600;
	font-size: 0.8125rem;
	border: none !important;
	border-bottom: 1px solid #eeeeee !important;
}

/* 外周の左・右のみ枠なし（tbody の列間の縦線は維持） */
.wp-block-table.sub-table tbody td:first-child {
	border-left: none !important;
}

.wp-block-table.sub-table tbody td:last-child {
	border-right: none !important;
}

.wp-block-table.sub-table tbody td {
	color: var(--color-black);
	font-size: inherit;
	line-height: inherit;
}

/* 画像どおりセルは左揃え（ブロック側の中央指定を上書き） */
.wp-block-table.sub-table thead th.has-text-align-center,
.wp-block-table.sub-table tbody td.has-text-align-center {
	text-align: left;
}

.wp-block-table.sub-table a {
	color: #1071b8;
	text-decoration: underline;
}

.wp-block-table.sub-table a:hover {
	text-decoration: none;
}

@media (max-width: 767px) {
	h2.wp-block-heading.sub-table {
		margin-top: 20px;
		padding: 20px 12px 10px;
		border-radius: 16px 16px 0 0;
		font-size: 1rem;
	}

	h2.wp-block-heading.sub-table + p.sub-table,
	h2.wp-block-heading.sub-table ~ p.sub-table {
		padding-left: 12px;
		padding-right: 12px;
	}

	h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text),
	h2.wp-block-heading.sub-table + p.sub-table + p,
	h2.wp-block-heading.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table),
	p.sub-table + p,
	p.sub-table ~ p:not(.sub-table):not(.sub-table-text):has(+ .wp-block-table.sub-table) {
		padding-left: 12px;
		padding-right: 12px;
	}

	h2.wp-block-heading.sub-table + .wp-block-table.sub-table,
	h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text) + .wp-block-table.sub-table,
	h2.wp-block-heading.sub-table + p.sub-table + .wp-block-table.sub-table,
	h2.wp-block-heading.sub-table + p.sub-table + p:not(.sub-table-text) + .wp-block-table.sub-table {
		border-radius: 0 0 16px 16px;
	}

	h2.wp-block-heading.sub-table + .wp-block-table.sub-table:has(+ p.sub-table-text),
	h2.wp-block-heading.sub-table + p:not(.sub-table):not(.sub-table-text) + .wp-block-table.sub-table:has(+ p.sub-table-text),
	h2.wp-block-heading.sub-table + p.sub-table + .wp-block-table.sub-table:has(+ p.sub-table-text),
	h2.wp-block-heading.sub-table + p.sub-table + p:not(.sub-table-text) + .wp-block-table.sub-table:has(+ p.sub-table-text) {
		margin-bottom: 0;
		border-radius: 0;
		padding-bottom: 20px;
	}

	.wp-block-table.sub-table + p.sub-table-text {
		margin-bottom: 20px;
		padding: 0 12px 28px;
		border-radius: 0 0 16px 16px;
		font-size: 0.8125rem;
	}

	.wp-block-table.sub-table {
		margin-bottom: 20px;
		padding: 16px 12px;
		border-radius: 16px;
	}

	.wp-block-table.sub-table table {
		min-width: 46.5rem;
		font-size: 0.8125rem;
	}

	.wp-block-table.sub-table thead th,
	.wp-block-table.sub-table tbody td {
		padding: 12px 8px;
	}
}

/*--------------------------------------------------
	ブロック：情報テーブル（追加 CSS クラス info-table）
	デフォルトの表（wp-block 内・info-table なし）は thead＝上段の列見出し。
	本クラス付与時のみ「左列 th（ラベル）／右列 td（値）」の 2 列レイアウト（幅 30% / 70%）。
	交通アクセス参考（access – detail3.png）。縦線なし・横罫線のみ。
--------------------------------------------------*/
.wp-block-table.info-table {
	box-sizing: border-box;
	margin: 0 0 28px;
}

.wp-block-table.info-table:last-child {
	margin-bottom: 0;
}

.wp-block-table.info-table table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	border-left: none !important;
	border-right: none !important;
	border-bottom: none !important;
	border-top: 1px solid #e0e0e0 !important;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--color-black);
	background: transparent;
}

.wp-block-table.info-table thead,
.wp-block-table.info-table tbody,
.wp-block-table.info-table tfoot {
	border: none !important;
}

.wp-block-table.info-table tr {
	border: none !important;
	border-bottom: 1px solid #e0e0e0 !important;
}

.wp-block-table.info-table th,
.wp-block-table.info-table td {
	box-sizing: border-box;
	padding: 16px 8px;
	vertical-align: middle;
	text-align: left;
	border: none !important;
	box-shadow: none !important;
}

.wp-block-table.info-table th {
	width: 30%;
	font-weight: 700;
}

.wp-block-table.info-table td {
	width: 70%;
	font-weight: 400;
}

.wp-block-table.info-table th a,
.wp-block-table.info-table td a {
	color: #1071b8;
	text-decoration: underline;
}

.wp-block-table.info-table th a:hover,
.wp-block-table.info-table td a:hover {
	text-decoration: none;
}

@media (max-width: 767px) {
	.wp-block-table.info-table {
		margin-bottom: 20px;
	}

	.wp-block-table.info-table table {
		font-size: 0.875rem;
	}

	.wp-block-table.info-table th,
	.wp-block-table.info-table td {
		padding: 14px 8px;
	}
}

/*--------------------------------------------------
	固定ページ本文：info リード（段落・見出しに個別付与）
	段落／見出しブロックの追加 CSS クラス info（グループ不要）
	common.css の --max-content-width / --text-body / --space-* を使用
	※ the_content 内ラッパー（.wp-block-post-content 等）配下でも中央になるよう子孫セレクタにする
--------------------------------------------------*/
.page .page__content p.info {
	display: block;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	font-size: var(--text-body);
	line-height: 1.75;
	color: var(--color-black);
	text-align: center !important;
}

.page .page__content p.info:has(+ h2.wp-block-heading.info) {
	margin-bottom: var(--space-m);
}

.page .page__content p.info:not(:has(+ h2.wp-block-heading.info)) {
	margin-bottom: var(--space-fluid-m);
}

.page .page__content h2.wp-block-heading.info {
	display: block;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: var(--space-fluid-m);
	margin-left: auto;
	padding: 0;
	font-size: clamp(1.0625rem, 1rem + 0.35vw, 1.25rem);
	font-weight: 700;
	line-height: 1.45;
	color: var(--color-black);
	text-align: center !important;
}

.page .page__content p.info + h2.wp-block-heading.info {
	margin-top: 0;
}

.page .page__content h2.wp-block-heading.info strong {
	font-weight: inherit;
}

@media (max-width: 767px) {
	.page .page__content p.info:has(+ h2.wp-block-heading.info) {
		margin-bottom: var(--space-s);
	}

	.page .page__content p.info:not(:has(+ h2.wp-block-heading.info)) {
		margin-bottom: var(--space-fluid-s);
	}

	.page .page__content h2.wp-block-heading.info {
		margin-right: auto;
		margin-left: auto;
		margin-bottom: var(--space-fluid-s);
	}
}

/*--------------------------------------------------
	固定ページ本文：単一画像・画像横並びカラム
	info.html（単一画像／画像横並び縦版）・volunteer.png 想定
	・単一画像：画像ブロックに追加 CSS クラス info-image（角丸・やや小さめ・中央）
	・横並び：カラムブロックに追加 CSS クラス info-columns
--------------------------------------------------*/
.page .page__content > .wp-block-image.info-image {
	box-sizing: border-box;
	width: 100%;
	max-width: min(100%, 40rem);
	margin: 1.5em auto 0;
}

.page .page__content > .wp-block-image.info-image:first-child {
	margin-top: 0;
}

.page .page__content > .wp-block-image.info-image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: var(--radius-m);
}

.page .page__content > .wp-block-image.info-image .wp-element-caption {
	margin: 0.75em 0 0;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--gray-700);
	text-align: center;
}

.page .page__content .wp-block-columns.info-columns {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--max-content-width);
	margin: 1.75em auto 0;
	gap: clamp(12px, 2.5vw, 24px);
}

.page .page__content .wp-block-columns.info-columns .wp-block-column {
	min-width: 0;
}

.page .page__content .wp-block-columns.info-columns .wp-block-image {
	margin: 0;
}

.page .page__content .wp-block-columns.info-columns .wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--radius-m);
}

.page .page__content .wp-block-columns.info-columns .wp-element-caption {
	margin: 0.5em 0 0;
	font-size: 0.875rem;
	line-height: 1.55;
	text-align: left;
}

@media (max-width: 767px) {
	.page .page__content > .wp-block-image.info-image {
		margin-top: 1.25em;
		max-width: min(100%, 22rem);
	}

	.page .page__content > .wp-block-image.info-image img {
		border-radius: 16px;
	}

	.page .page__content .wp-block-columns.info-columns {
		margin-top: 1.25em;
		margin-left: auto;
		margin-right: auto;
		flex-direction: column !important;
		align-items: center !important;
		gap: 20px;
	}

	.page .page__content .wp-block-columns.info-columns .wp-block-column {
		flex-basis: auto !important;
		align-self: center !important;
		width: 100%;
		max-width: min(100%, 20rem);
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.page .page__content .wp-block-columns.info-columns .wp-block-image {
		float: none !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100%;
		max-width: 100%;
	}

	.page .page__content .wp-block-columns.info-columns .wp-block-image.alignleft,
	.page .page__content .wp-block-columns.info-columns .wp-block-image.alignright {
		float: none !important;
	}

	.page .page__content .wp-block-columns.info-columns .wp-block-image img {
		border-radius: 16px;
		margin-left: auto;
		margin-right: auto;
	}
}

/*--------------------------------------------------
	白カード型グループ（追加 CSS クラス content-card）
	まちなか案内所（center.png）想定 — var(--max-content-width) 内に収め、角丸・白背景・余白
	グループブロックに付与。ボタン行タブ切替やセクションラッパーに使用可
--------------------------------------------------*/
.wp-block-group.content-card {
	box-sizing: border-box;
	margin-bottom: var(--space-fluid-m);
	padding: clamp(20px, 5vw, 28px) clamp(16px, var(--container-padding), 24px);
	background: var(--color-white);
	border-radius: var(--radius-m);
}

.wp-block-group.content-card:last-child {
	margin-bottom: 0;
}

/* flex レイアウト：ボタンを中央に寄せ、狭い幅では折り返し */
.wp-block-group.content-card.is-layout-flex {
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: clamp(8px, 2vw, 16px);
}

.wp-block-group.content-card .wp-block-buttons {
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	max-width: 100%;
}

.wp-block-group.content-card .wp-block-button {
	flex-grow: 0;
}

@media (max-width: 767px) {
	.wp-block-group.content-card {
		margin-bottom: var(--space-fluid-s);
		padding: 20px clamp(12px, var(--container-padding), 20px);
		border-radius: 16px;
	}
}

/*--------------------------------------------------
	パンフレットアーカイブ（archive-pamphlet.php／.pamphlet-archive.wp-block）
	グリッド：SP 1 列（縦並び）・768px 以上 3 列
--------------------------------------------------*/
.pamphlet-archive.wp-block {
	box-sizing: border-box;
	max-width: var(--max-content-width);
	margin-inline: auto;
	padding-inline: var(--container-padding);
	padding-block: clamp(24px, 4vw, 40px) clamp(40px, 6vw, 72px);
}

.pamphlet-archive__header {
	margin-bottom: clamp(20px, 3vw, 32px);
}

.pamphlet-archive__title {
	margin: 0;
}

.pamphlet-archive__nav {
	margin-bottom: clamp(28px, 4vw, 40px);
}

.pamphlet-archive__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pamphlet-archive__tab-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 20px;
	border-radius: var(--radius-full);
	background: var(--gray-700);
	color: var(--color-white);
	font-size: clamp(0.8125rem, 0.8rem + 0.15vw, 0.9375rem);
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}

.pamphlet-archive__tab-link:hover {
	opacity: 0.92;
	color: var(--color-white);
}

.pamphlet-archive__tab-link.is-active {
	background: var(--color-black);
}

.pamphlet-archive__body {
	width: 100%;
}

.pamphlet-archive__section {
	margin: 0 0 clamp(48px, 7vw, 80px);
}

.pamphlet-archive__section:last-child {
	margin-bottom: 0;
}

.pamphlet-archive__section-title {
	margin: 0 0 clamp(18px, 2.5vw, 28px);
	font-size: clamp(1.125rem, 1rem + 0.4vw, 1.375rem);
	font-weight: 700;
	line-height: 1.4;
	color: var(--color-black);
}

.pamphlet-archive__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(14px, 2.5vw, 24px);
	margin: 0;
	padding: 0;
	list-style: none;
	max-width: var(--max-content-width);
	margin-inline: auto;
	padding-inline: var(--container-padding);
}

@media (min-width: 768px) {
	.pamphlet-archive__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(18px, 2vw, 28px);
	}
}

.pamphlet-archive__item {
	display: flex;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	box-sizing: border-box;
	padding: clamp(14px, 2vw, 20px);
	background: var(--color-white);
	border-radius: var(--radius-m);
}

.pamphlet-archive__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 12px;
	overflow: hidden;
	border-radius: var(--radius-s);
	aspect-ratio: 3 / 4;
}

.pamphlet-archive.wp-block .pamphlet-archive__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: scale-down;
	border-radius: 0;
}

.pamphlet-archive__item-title {
	margin: 0 0 8px;
	font-size: clamp(0.875rem, 0.82rem + 0.2vw, 1rem);
	font-weight: 700;
	line-height: 1.45;
	color: var(--color-black);
}

.pamphlet-archive__item-description {
	margin: 0 0 14px;
	flex-grow: 1;
	font-size: 0.8125rem;
	line-height: 1.6;
	color: var(--gray-700);
}

.pamphlet-archive__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: stretch;
	margin-top: auto;
}

.pamphlet-archive__download,
.pamphlet-archive__list-toggle {
	flex: 1 1 calc(50% - 4px);
	box-sizing: border-box;
	min-width: 0;
	min-height: 44px;
	padding: 10px 12px;
	border: none;
	border-radius: var(--radius-s);
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.2s ease, background-color 0.2s ease;
}

.pamphlet-archive__download {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	background: var(--gray-200);
	color: var(--color-black);
}

.pamphlet-archive__download:hover {
	opacity: 0.9;
	color: var(--color-black);
}

.pamphlet-archive__list-toggle {
	background: var(--color-black);
	color: var(--color-white);
}

.pamphlet-archive__list-toggle:hover {
	opacity: 0.92;
}

.pamphlet-archive__list-toggle.is-in-list {
	background: var(--gray-700);
}

.pamphlet-archive__out-of-stock {
	display: flex;
	align-items: center;
	flex: 1 1 100%;
	min-height: 44px;
	padding: 10px 12px;
	border-radius: var(--radius-s);
	background: var(--gray-50);
	font-size: 0.8125rem;
	color: var(--gray-700);
}

.pamphlet-archive__footer {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	margin-top: clamp(40px, 6vw, 64px);
	padding-top: clamp(24px, 4vw, 40px);
}

.pamphlet-archive__apply-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	max-width: min(100%, 28rem);
	min-height: 52px;
	padding: 14px 24px;
	border-radius: var(--radius-s);
	background: var(--color-black);
	color: var(--color-white);
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.pamphlet-archive__apply-button:hover {
	opacity: 0.9;
	color: var(--color-white);
}

.pamphlet-archive__to-top {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--color-black);
	text-decoration: underline;
}

.pamphlet-archive__to-top:hover {
	text-decoration: none;
}

/* --------------------------------------------------------------------------
   フォトライブラリ archive（page.css 非改修方針のため page-sub に集約）
   -------------------------------------------------------------------------- */
.photo-archive .photo-archive__intro {
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 0 var(--container-padding) clamp(28px, 5vw, 48px);
}
.photo-archive .photo-archive__intro p {
	margin: 0 0 1em;
	line-height: 1.8;
	font-size: clamp(0.875rem, 0.85rem + 0.12vw, 1rem);
	color: var(--gray-700);
}
.photo-archive .photo-archive__intro-actions {
	margin: 0 0 1.25em;
}
.photo-archive .photo-archive__intro-actions .button {
	margin-top: 4px;
}
.photo-archive .photo-archive__intro .archive__filters {
	margin-top: clamp(4px, 1vw, 8px);
	margin-left: calc(-1 * var(--container-padding));
	margin-right: calc(-1 * var(--container-padding));
	padding: clamp(18px, 3.5vw, 26px) var(--container-padding) clamp(22px, 4vw, 32px);
	/* background: #F0FFF3; */
	border-radius: clamp(14px, 3vw, 28px);
	box-sizing: border-box;
}
.photo-archive .archive-filter-form__field > label,
.photo-archive .archive-filter-form__field.is-open .archive-filter-form__checkboxes {
	/* border-color: var(--color-stay); */
	border-color: var(--gray-200);
}
.photo-archive .archive-filter-form__field.is-open > label {
	/* background: var(--color-stay); */
	background: var(--gray-200);
}
.photo-archive .archive-filter-form__field--keyword {
	/* border-color: var(--color-stay); */
	border-color: var(--gray-200);
}
.photo-archive .archive-filter-form__row .archive-filter-form__field > label {
	width: calc((100% - 8px) / 2);
}
.photo-archive .archive-filter-form__row .archive-filter-form__field:nth-child(2) > label {
	left: calc((100% - 8px) / 2 + 8px);
}
.photo-archive .archive-filter-form__row.-keyword {
	max-width: 100%;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 10px 12px;
}
.photo-archive .archive-filter-form__field--keyword {
	width: 100%;
	max-width: 100%;
	margin-right: 0;
}
.photo-archive .archive-filter-form__view-list {
	display: inline-block;
	flex-shrink: 0;
	padding: 12px 24px;
	border-radius: var(--radius-full);
	background: var(--color-white);
	border: 2px solid var(--gray-200);
	color: var(--gray-700);
	font-weight: 700;
	font-size: 0.8125rem;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s, border-color 0.2s;
}
.photo-archive .archive-filter-form__view-list:hover {
	background: #D0D0D0;
	border-color: #A0A0A0;
}
@media (min-width: 768px) {
	/* 開いたドロップダウンが margin-right:-100% で右列へはみ出し、「貸出リストを見る」と重なるのを防ぐ */
	.photo-archive .archive-filter-form__checkboxes {
		margin-right: 0;
	}
	.photo-archive .archive-filter-form__row .archive-filter-form__field > label {
		width: calc((100% - 8px) / 2);
		padding: 12px 16px;
	}
	.photo-archive .archive-filter-form__row .archive-filter-form__field:nth-child(2) > label {
		left: calc((100% - 8px) / 2 + 8px);
	}
	.photo-archive .archive-filter-form__row.-keyword {
		flex-wrap: wrap;
		align-items: center;
		width: auto;
		flex: 1 1 360px;
		max-width: calc(100% - 16px);
		min-width: 0;
	}
	.photo-archive .archive-filter-form__field--keyword {
		flex: 1 1 200px;
		width: auto;
		max-width: 330px;
		margin-right: 0;
	}
}

/* --------------------------------------------------------------------------
   会員情報 archive（member – detail.png：灰背景・白カード表・公式サイトは別タブアイコン）
   -------------------------------------------------------------------------- */
.member-archive {
	background: var(--gray-100);
}

.member-archive .member-archive__intro {
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: clamp(16px, 3vw, 24px) var(--container-padding) clamp(20px, 4vw, 32px);
	box-sizing: border-box;
	background: var(--gray-100);
}
.member-archive .member-archive__intro .archive__filters {
	margin-left: calc(-1 * var(--container-padding));
	margin-right: calc(-1 * var(--container-padding));
	padding: clamp(12px, 2.5vw, 20px) var(--container-padding);
	border-radius: 0;
	box-sizing: border-box;
	background: var(--gray-100);
}
.member-archive .archive-filter-form__field--keyword {
	border-color: var(--gray-200);
}
.member-archive .archive-filter-form__field--member-select {
	padding: 0;
	justify-content: center;
}
.member-archive .archive-filter-form__field--member-select .archive-filter-form__select {
	box-sizing: border-box;
	flex: 1 1 auto;
	width: 100%;
	height: 100%;
	min-height: 0;
	padding: 0 2.5rem 0 1rem;
	border: none;
	border-radius: var(--radius-full);
	background-color: transparent;
	background-image: url(../images/icon_arrow_down.svg);
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 12px 7px;
	font-size: 1rem;
	color: var(--color-black);
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
.member-archive .archive-filter-form__field--member-select .archive-filter-form__select:focus {
	outline: none;
}
.member-archive .archive-filter-form__row.-keyword {
	max-width: 100%;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
}
.member-archive .archive-filter-form__field--keyword {
	width: 100%;
	max-width: 100%;
	margin-right: 0;
}
@media (min-width: 768px) {
	.member-archive .archive-filter-form__row.-keyword {
		flex-wrap: wrap;
		align-items: center;
		width: auto;
		flex: 1 1 360px;
		max-width: calc(100% - 16px);
		min-width: 0;
	}
	.member-archive .archive-filter-form__field--keyword {
		flex: 1 1 200px;
		width: auto;
		max-width: 330px;
		margin-right: 0;
	}
}

/* 一覧エリア：page.css の .archive__wrapper 灰背景を打ち消し */
.member-archive .archive__wrapper.member-archive__table-outer {
	margin-top: 0;
	padding: 0 var(--container-padding) clamp(36px, 6vw, 64px);
	background: var(--gray-100);
}

.member-archive .archive__results-info.member-archive__results-info {
	box-sizing: border-box;
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: 0 var(--container-padding);
}

.member-archive h2.member-archive__conditions {
	margin: 0 0 clamp(14px, 2.5vw, 20px);
	padding: 0;
	border: 0;
	background: transparent;
	font-size: clamp(1rem, 0.95rem + 0.2vw, 1.125rem);
	font-weight: 700;
	line-height: 1.4;
	color: var(--color-black);
}

/* 白カード：表は max-width 56rem で中央寄せ（mock のカード内余白） */
.member-archive .member-archive__table-card {
	box-sizing: border-box;
	max-width: var(--max-content-width);
	margin: 0 auto;
	padding: clamp(28px, 5vw, 48px) clamp(18px, 4vw, 40px);
	border-radius: clamp(14px, 2.8vw, 20px);
	background: var(--color-white);
	
}

.member-archive .member-archive__table-card--empty {
	padding: clamp(32px, 5vw, 48px);
}

.member-archive .member-archive__table-card .archive__no-results {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: var(--gray-700);
}

/* 会員一覧 table：ギャラリー用 .archive__list（flex）を打ち消す（.member-archive__list で詳細度確保） */
.member-archive table.archive__list.member-archive__list {
	display: table;
	table-layout: auto;
	box-sizing: border-box;
	width: 100%;
	max-width: 56rem;
	margin: 0 auto;
	border-collapse: collapse;
	border: none;
	font-size: clamp(0.875rem, 0.85rem + 0.12vw, 0.9375rem);
	line-height: 1.65;
	color: var(--color-black);
	background: transparent;
	gap: normal;
	flex-wrap: unset;
	padding: 0;
}

.member-archive table.archive__list.member-archive__list thead,
.member-archive table.archive__list.member-archive__list tbody,
.member-archive table.archive__list.member-archive__list tfoot {
	border: none !important;
}

.member-archive table.archive__list.member-archive__list tr {
	border: none !important;
}

.member-archive table.archive__list.member-archive__list tr.archive__item {
	display: table-row;
	width: auto;
	flex-direction: unset;
	gap: unset;
	position: static;
}

/* thead：小さめ・薄グレー・背景なし（mock） */
.member-archive table.archive__list.member-archive__list thead th {
	box-sizing: border-box;
	padding: clamp(12px, 2vw, 16px) clamp(12px, 2vw, 18px) clamp(14px, 2.2vw, 18px);
	border: none !important;
	border-bottom: 1px solid #e8e8e8 !important;
	background: transparent;
	font-weight: 700;
	font-size: 0.75rem;
	line-height: 1.35;
	letter-spacing: 0.04em;
	color: var(--gray-700);
	text-align: left;
	vertical-align: bottom;
	box-shadow: none !important;
}

.member-archive table.archive__list.member-archive__list .member-archive__th-external {
	text-align: right;
	padding-right: clamp(8px, 1.5vw, 14px);
}

.member-archive table.archive__list.member-archive__list tbody td {
	box-sizing: border-box;
	padding: clamp(18px, 2.8vw, 24px) clamp(12px, 2vw, 18px);
	border: none !important;
	border-bottom: 1px solid #ececec !important;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	box-shadow: none !important;
	color: var(--color-black);
}

.member-archive table.archive__list.member-archive__list tbody tr:last-child td {
	border-bottom: none !important;
}

/* 事業所名：黒＋下線（mock） */
.member-archive table.archive__list.member-archive__list tbody td a:not(.member-archive__external-link) {
	color: var(--color-black);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.member-archive table.archive__list.member-archive__list tbody td a:not(.member-archive__external-link):hover {
	opacity: 0.75;
}

/* 公式サイト列：別タブアイコンを右寄せ */
.member-archive__cell-external {
	width: 1%;
	min-width: 3.25rem;
	white-space: nowrap;
	vertical-align: middle !important;
	text-align: right;
	padding-right: clamp(8px, 1.5vw, 14px) !important;
}

.member-archive__external-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin-left: auto;
	border-radius: 6px;
	background: transparent;
	text-decoration: none;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}

.member-archive__external-link::after {
	display: block;
	width: 1.125rem;
	height: 1.125rem;
	background: url(../images/icon_blank_bk.svg) no-repeat center center / contain;
	content: '';
}

.member-archive__external-link:hover {
	background: var(--gray-100);
}

.member-archive__external-empty {
	display: inline-block;
	min-width: 1.25rem;
	color: var(--gray-500);
	font-size: 0.8125rem;
	text-align: right;
}

.member-archive .archive-filter-form__submit {
	padding-left: clamp(44px, 12vw, 52px);
	padding-right: clamp(20px, 4vw, 28px);
	font-size: clamp(0.875rem, 0.85rem + 0.15vw, 1rem);
}

.member-archive .archive-filter-form__submit::before {
	left: clamp(14px, 3vw, 22px);
}

@media (min-width: 768px) {
	.member-archive .archive-filter-form__submit {
		padding-left: 56px;
		padding-right: 32px;
		font-size: clamp(0.9375rem, 0.9375rem + 0.25vw, 1.125rem);
	}
	.member-archive .archive-filter-form__submit::before {
		left: 24px;
		width: 28px;
		height: 28px;
		top: calc(50% - 14px);
	}
}

@media (max-width: 767px) {
	.member-archive table.archive__list.member-archive__list thead th,
	.member-archive table.archive__list.member-archive__list tbody td {
		padding: 12px 10px;
		font-size: 0.8125rem;
	}
	.member-archive table.archive__list.member-archive__list thead th {
		font-size: 0.6875rem;
	}
}

/*--------------------------------------------------
	会員トップ（page-member-top.php）— NEWS ブロック
	page-climber の toyamashi_news_list（.news-section / .news__*）相当の見た目を
	toyamashi_member_news_list（.news-list / .news-list__*）に適用。
	h2 と h3 がともに .news-list__title なため、直接子 h2 と .news-list__item 内 h3 で分離。
--------------------------------------------------*/
.page-member-top .news-list {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: clamp(12px, 3vw, 24px);
	row-gap: 24px;
	align-items: center;
	width: 100%;
	max-width: none;
	margin: 0 0 1.5em;
	padding: 64px max(var(--container-padding), calc(50% - var(--max-content-width) / 2));
	background: var(--color-white);
}

.page-member-top .news-list > h2.news-list__title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	align-self: start;
	margin: 0;
	font-size: clamp(0.75rem, 0.679rem + 0.36vw, 1rem);
	font-weight: 700;
	line-height: 1.2;
	color: var(--color-black);
}

.page-member-top .news-list > h2.news-list__title::before {
	display: block;
	font-family: var(--font-montserrat);
	font-weight: 700;
	font-size: clamp(1.6875rem, 1.491rem + 0.98vw, 2.375rem);
	line-height: 1;
	content: 'NEWS';
	order: -1;
}

.page-member-top .news-list > a.news-list__more {
	justify-self: end;
	align-self: start;
	margin: 0;
	padding: 4px 0;
	border: 0;
	background: transparent;
	font-size: clamp(0.8125rem, 0.78rem + 0.14vw, 0.9375rem);
	font-weight: 700;
	line-height: 1.4;
	color: var(--color-black);
	text-align: right;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
	white-space: nowrap;
}

.page-member-top .news-list > a.news-list__more:hover {
	opacity: 0.82;
}

.page-member-top .news-list > ul.news-list__list {
	grid-column: 1 / -1;
	align-self: stretch;
	max-width: none;
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--gray-300);
}

.page-member-top .news-list__item {
	border-bottom: 1px solid var(--gray-300);
}

.page-member-top .news-list__item > a {
	display: block;
	padding: 16px 0;
	color: var(--color-black);
	text-decoration: none;
}

.page-member-top .news-list__item > a:hover {
	opacity: 0.85;
}

.page-member-top .news-list__item .news-list__date {
	display: block;
	margin-bottom: 4px;
	font-family: var(--font-montserrat);
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.35;
	color: var(--color-black);
}

.page-member-top .news-list__item h3.news-list__title {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.71;
	color: var(--color-black);
}

/* 会員情報一覧はこちら（page-member-top.php） */
.page-member-top .page__member-link {
	display: flex;
	justify-content: center;
	margin: 0 0 clamp(28px, 5vw, 48px);
	padding: 0 var(--container-padding);
}

.page-member-top .page__member-link .page__more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 44px;
	padding: 10px 24px;
	border-radius: var(--radius-full);
	background: var(--color-black);
	color: var(--color-white);
	font-size: clamp(0.8125rem, 0.79rem + 0.12vw, 0.9375rem);
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.page-member-top .page__member-link .page__more::after {
	display: block;
	flex: 0 0 auto;
	width: 1em;
	height: 1em;
	background: url(../images/icon_arrow_white.svg) no-repeat center center / contain;
	content: '';
}

.page-member-top .page__member-link .page__more:hover {
	opacity: 0.9;
	color: var(--color-white);
}

@media (min-width: 768px) {
	.page-member-top .news-list {
		padding: 80px max(var(--container-padding), calc(50% - var(--max-content-width) / 2));
		row-gap: 24px;
	}

	.page-member-top .news-list > h2.news-list__title {
		flex-direction: row;
		align-items: center;
		gap: 20px;
		line-height: 1;
	}

	.page-member-top .news-list > h2.news-list__title::before {
		order: 0;
	}

	.page-member-top .news-list > ul.news-list__list {
		margin-bottom: 0;
	}

	.page-member-top .news-list__item > a {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		gap: 40px;
	}

	.page-member-top .news-list__item .news-list__date {
		flex-shrink: 0;
		margin-top: 2px;
		margin-bottom: 0;
	}

	.page-member-top .page__member-link {
		margin-bottom: clamp(36px, 4vw, 56px);
	}

	.page-member-top .page__member-link .page__more {
		min-height: 67px;
		padding: 12px 30px;
		min-width: 526px;
	}
}

@media (min-width: 1024px) {
	.page-member-top .news-list {
		row-gap: 60px;
	}
}
