/* 患者さんの可読性を優先しつつ、過度に大きくしない共通文字定義です。 */
:where(.bnk-home-v2-page, .bnk-shared-header-active, .bnk-simulation-shared-layout) {
	--bnk-font-body-desktop: 17px;
	--bnk-font-body-mobile: 16px;
	--bnk-font-card: 15px;
	--bnk-font-info: 14px;
	--bnk-font-caption: 13px;
	--bnk-line-body: 1.8;
	--bnk-line-compact: 1.55;
}

/* 共通ヘッダー：大きなロゴ文字は維持し、小さな操作文字だけを補正します。 */
.bnk-site-header.bnk-shared-header-scope .bnk-brand small {
	font-size: 13px !important;
}

.bnk-site-header.bnk-shared-header-scope .bnk-primary-nav__list > li > a,
.bnk-site-header.bnk-shared-header-scope .bnk-primary-nav .sub-menu a,
.bnk-site-header.bnk-shared-header-scope a.bnk-header-cta {
	font-size: 14px !important;
}

/* 新版トップページ：本文は穏やかに、12～14px の患者情報は明確に引き上げます。 */
.bnk-home-v2-page .bnk-home {
	font-size: var(--bnk-font-body-desktop);
}

.bnk-home-v2-page .bnk-hero__lead {
	font-size: 17px;
	line-height: var(--bnk-line-body);
	max-width: 575px;
}

/* セクション内の導線と本文位置を統一します。 */
.bnk-home-v2-page .bnk-about__action {
	position: relative;
	z-index: 1;
}

.bnk-home-v2-page .bnk-who > .bnk-section-link,
.bnk-home-v2-page .bnk-about__action {
	margin-right: auto;
	margin-left: auto;
}

.bnk-home-v2-page .bnk-eyebrow,
.bnk-home-v2-page .bnk-news-feature__body p span {
	font-size: var(--bnk-font-caption);
}

.bnk-home-v2-page .bnk-quick__copy strong {
	font-size: var(--bnk-font-info);
}

.bnk-home-v2-page .bnk-quick__copy small {
	font-size: 13.5px;
	line-height: var(--bnk-line-compact);
}

.bnk-home-v2-page .bnk-news-list time,
.bnk-home-v2-page .bnk-news-feature__body time,
.bnk-home-v2-page .bnk-news-feature__excerpt {
	font-size: var(--bnk-font-info);
}

.bnk-home-v2-page .bnk-news-list h3 {
	font-size: var(--bnk-font-card);
}

.bnk-home-v2-page .bnk-news-feature__excerpt {
	line-height: 1.6;
	-webkit-line-clamp: 3;
}

.bnk-home-v2-page .bnk-who__panel li,
.bnk-home-v2-page .bnk-chip-list li,
.bnk-home-v2-page .bnk-history li p,
.bnk-home-v2-page .bnk-doctor-card__role,
.bnk-home-v2-page .bnk-doctor-card__qualifications,
.bnk-home-v2-page .bnk-social__grid time,
.bnk-home-v2-page .bnk-jobs article > p:first-child span {
	font-size: var(--bnk-font-info);
}

.bnk-home-v2-page .bnk-services__grid article > div,
.bnk-home-v2-page .bnk-flow__list p,
.bnk-home-v2-page .bnk-treatments__grid strong,
.bnk-home-v2-page .bnk-jobs article > p,
.bnk-home-v2-page .bnk-clinic-card__details p,
.bnk-home-v2-page .bnk-social__grid h3 {
	font-size: var(--bnk-font-card);
	line-height: var(--bnk-line-body);
}

/* 手順本文は保存形式に左右されず、四項目すべて同じ配置と文字サイズにします。 */
.bnk-home-v2-page .bnk-flow__list li > div {
	color: var(--bnk-muted);
	font-size: var(--bnk-font-body-desktop);
	line-height: var(--bnk-line-body);
	text-align: left;
}

.bnk-home-v2-page .bnk-flow__list li > div > h3 {
	color: var(--bnk-ink);
	text-align: center;
}

.bnk-home-v2-page .bnk-flow__list li > div > p {
	color: inherit;
	font-size: inherit;
	line-height: inherit;
	text-align: inherit;
}

/* 濃色背景でも白ボタンの文字色が継承されないよう固定します。 */
.bnk-home-v2-page a.bnk-button--light {
	color: var(--bnk-ink);
}

.bnk-home-v2-page .bnk-chairman__bio {
	font-size: 16px;
	line-height: var(--bnk-line-body);
}

.bnk-home-v2-page .bnk-mobile-contact span {
	font-size: 15px;
}

.bnk-home-v2-page .bnk-mobile-contact small {
	font-size: var(--bnk-font-caption);
}

/* 共通フッター：メニュー情報は13.5px以上、権利表記だけを13pxに保ちます。 */
.bnk-shared-footer-scope .bnk-footer-nav__list > li > a {
	font-size: 14px;
}

.bnk-shared-footer-scope .bnk-footer-nav .sub-menu a {
	font-size: 13.5px;
}

.bnk-shared-footer-scope .bnk-footer-brand > div {
	font-size: var(--bnk-font-info);
}

.bnk-shared-footer-scope .bnk-site-footer__bottom small,
.bnk-shared-footer-scope .bnk-site-footer__bottom a {
	font-size: var(--bnk-font-caption);
}

/* 旧テンプレート本文：既に十分な見出しは変更せず、長文だけを一段階補正します。 */
.bnk-shared-header-active .single-page .article p,
.bnk-shared-header-active .single-page .article li {
	font-size: var(--bnk-font-body-desktop);
	line-height: 1.85;
}

.bnk-shared-header-active .single-page .article td,
.bnk-shared-header-active .single-page .article th {
	font-size: var(--bnk-font-info);
}

@media (max-width: 1080px) {
	.bnk-site-header.bnk-shared-header-scope .bnk-mobile-nav__list > li > a {
		font-size: 16px !important;
	}

	.bnk-site-header.bnk-shared-header-scope .bnk-mobile-nav .sub-menu a {
		font-size: 14px !important;
	}
}

@media (max-width: 767px) {
	.bnk-home-v2-page .bnk-home {
		font-size: var(--bnk-font-body-mobile);
	}

	.bnk-home-v2-page .bnk-hero__lead {
		font-size: var(--bnk-font-body-mobile);
		line-height: 1.75;
	}

	.bnk-home-v2-page .bnk-news-feature__excerpt {
		line-height: var(--bnk-line-compact);
		-webkit-line-clamp: 4;
	}

	.bnk-home-v2-page .bnk-flow__list li > div {
		font-size: var(--bnk-font-body-mobile);
	}

	.bnk-home-v2-page .bnk-flow__list li > div > h3 {
		text-align: left;
	}

	.bnk-shared-header-active .single-page .article p,
	.bnk-shared-header-active .single-page .article li {
		font-size: var(--bnk-font-body-mobile);
		line-height: var(--bnk-line-body);
	}
}
