/**
 * 会社概要（/about/company/）
 * 参照: home/info/worso_info_with_bands.pdf
 * 字サイズ・余白・コンテンツ幅はトップ（front-home）と同じ定数を使う。
 */

.worso-info {
	--worso-info-bg: var(--worso-white);
	--worso-info-bg-pmvv: var(--worso-white);
	--worso-info-bg-ceo: var(--worso-green-200);
	--worso-info-line: var(--worso-line);
	background: var(--worso-white);
	color: var(--worso-info-ink);
	padding-bottom: 0;
}

.worso-info .worso-home-section {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 5rem 3rem;
	box-shadow: none;
	border-radius: 0;
}

.worso-info .worso-home-section__inner {
	margin: 0 auto;
	min-width: 0;
	max-width: var(--worso-home-inner-w, 1080px);
}

/* ヒーロー見た目は pages.css の .worso-page-visual-hero / .worso-info-hero 共通ルール */

@media (min-width: 1024px) {
	.worso-page--about .worso-home-section:has(.worso-page__subnav-grid) {
		padding-bottom: 6rem;
	}

	/* 数字セクションは本文が短い。Glance が切れない高さにする。 */
	.worso-page--about .worso-home-section:has(.worso-page__glance) {
		padding-bottom: 13rem;
	}

	/* 本文より縦英字が長いパネルだけ、下で切れない分を足す。 */
	.worso-page--takeno #leader-research {
		padding-bottom: 11rem;
	}

	.worso-page--takeno #leader-message {
		padding-bottom: 17rem;
	}
}

.worso-info .worso-home-section__title {
	color: var(--worso-brand);
}

/* 企業情報：PDF p.2 白地。テーブルは inner 幅いっぱい */
.worso-info-company {
	background: var(--worso-info-bg);
}

.worso-info-company__list {
	margin: 0.4rem 0 0;
	max-width: none;
}

.worso-info-company__row {
	display: grid;
	grid-template-columns: 11rem minmax(0, 1fr);
	gap: 0.75rem 2.2rem;
	padding: 1.05rem 0;
	border-bottom: 1px solid var(--worso-info-line);
	scroll-margin-top: 6rem;
}

.worso-info-company__row:first-child {
	border-top: 1px solid var(--worso-info-line);
}

.worso-info-company__row dt {
	margin: 0;
	font-size: var(--worso-home-fs-body);
	font-weight: 600;
	color: var(--worso-info-ink-navy);
	line-height: 1.45;
}

.worso-info-company__row dd {
	margin: 0;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

.worso-info-company__orgs {
	margin: 0;
	padding: 0 0 0 1.35em;
	list-style: decimal;
}

.worso-info-company__orgs li {
	padding: 0.12rem 0;
}

.worso-info-company__orgs li + li {
	margin-top: 0.15rem;
}

/*
 * 企業理念：PDF p.3
 * タイトルから一段インデント。和ラベル右揃え → 25.9° 斜線 →
 * 英単語は線の先・本文の上。本文はラベル右端から ~43pt 相当右へ。
 */
.worso-info-pmvv {
	--worso-info-pmvv-angle: -25.9deg;
	background: var(--worso-info-bg-pmvv);
}

.worso-info-pmvv__list {
	list-style: none;
	margin: 0.4rem 0 0 4.5rem;
	padding: 0;
	display: grid;
	gap: 3.1rem;
	max-width: 48rem;
}

.worso-info-pmvv__item {
	position: relative;
	padding: 4.5rem 0 0.3rem 14.4rem;
}

.worso-info-pmvv__ja {
	position: absolute;
	left: 0;
	top: 1.45rem;
	width: 9.2rem;
	margin: 0;
	text-align: right;
	font-size: var(--worso-fs-2xl);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.04em;
	color: var(--worso-info-ink);
	white-space: nowrap;
}

.worso-info-pmvv__rail {
	position: absolute;
	left: 8.45rem;
	top: 3.45rem;
	display: flex;
	align-items: flex-end;
	gap: 0.18rem;
	transform: rotate(var(--worso-info-pmvv-angle));
	transform-origin: left center;
	white-space: nowrap;
	pointer-events: none;
}

.worso-info-pmvv__line {
	display: block;
	width: 7.2rem;
	height: 1px;
	margin-bottom: 0.32em;
	background: var(--worso-info-ink);
	flex-shrink: 0;
}

.worso-info-pmvv__en {
	font-family: var(--worso-home-serif);
	font-style: normal;
	font-weight: 600;
	font-size: var(--worso-fs-3xl);
	letter-spacing: 0.02em;
	line-height: 1;
	color: var(--worso-text-strong);
}

.worso-info-pmvv__body p {
	margin: 0;
	font-size: var(--worso-fs-2xl);
	line-height: 1.4;
	font-weight: 600;
	color: var(--worso-info-ink);
}

.worso-info-pmvv__values {
	list-style: none;
	margin: 0;
	padding: 0;
}

.worso-info-pmvv__values li {
	font-size: var(--worso-fs-2xl);
	line-height: 1.45;
	font-weight: 600;
	color: var(--worso-info-ink);
}

.worso-info-pmvv__values li::before {
	content: "○";
	margin-right: 0.45em;
	font-weight: 400;
}

/*
 * SDGs：企業理念の下
 * 参照レイアウト感: https://tmt-universal.com/jp/company-sdgs
 */
.worso-info-sdgs {
	background: var(--worso-info-bg);
}

.worso-info-sdgs__body {
	display: grid;
	gap: 2rem;
	margin-top: 0.35rem;
	max-width: 48rem;
}

.worso-info-sdgs__prose {
	display: grid;
	gap: 1.15rem;
}

.worso-info-sdgs__prose p {
	margin: 0;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

.worso-info-sdgs__icons {
	margin: 0.25rem 0 0;
	padding: 0;
	max-width: 52rem;
}

.worso-info-sdgs__icons img {
	display: block;
	width: 100%;
	height: auto;
}

.worso-info-sdgs__closing {
	margin: 0;
	max-width: 48rem;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

/* 代表：ご挨拶のみミント、略歴・メディアは白パネル */
.worso-info-ceo {
	background: var(--worso-info-bg-ceo);
	color: var(--worso-info-ink);
}

.worso-info-ceo-panel {
	background: var(--worso-info-bg);
	color: var(--worso-info-ink);
}

.worso-info-ceo__bands {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	pointer-events: none;
	z-index: 1;
}

.worso-info-ceo__bands polyline {
	fill: none;
	stroke: var(--worso-green-100);
	stroke-width: 1;
	stroke-linejoin: miter;
	stroke-miterlimit: 12;
}

.worso-info-ceo .worso-home-section__tri {
	z-index: 2;
}

.worso-info-ceo .worso-home-section__inner {
	padding-right: 0;
	max-width: 1080px;
	z-index: 2;
}

.worso-info-ceo__intro {
	display: grid;
	grid-template-columns: 13.5rem minmax(0, 1fr);
	gap: 1.75rem 2.4rem;
	align-items: start;
	margin-top: 0.4rem;
}

.worso-info-ceo__message {
	min-width: 0;
}

.worso-info-ceo__greeting-label {
	margin: 0 0 0.85rem;
	font-size: var(--worso-fs-sm);
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--worso-brand);
}

.worso-info-ceo__photo {
	margin: 0;
}

.worso-info-ceo__photo img {
	display: block;
	width: 100%;
	height: auto;
}

/*
 * iPhone Safari:
 * keep-all + 親 overflow:hidden だと長い日本語が折り返せず右端で切れる。
 * line-break:strict で禁則を守りつつ、anywhere で溢れを防ぐ。
 */
.worso-info-ceo .worso-info-ceo__body,
.worso-info-ceo .worso-info-ceo__body p,
.worso-info-ceo .worso-info-ceo__quote p,
.worso-info-ceo-panel .worso-info-ceo__career-row dt,
.worso-info-ceo-panel .worso-info-ceo__career-row dd,
.worso-info-ceo-panel .worso-info-ceo__media-list p,
.worso-info-ceo-panel .worso-info-ceo__media-list strong {
	word-break: normal;
	overflow-wrap: anywhere;
	word-wrap: break-word;
	line-break: strict;
	max-width: 100%;
}

.worso-info-ceo__body p {
	margin: 0 0 0.85rem;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink);
}

.worso-info-ceo__body p:last-child {
	margin-bottom: 0;
}

.worso-info-ceo__sign {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.2rem;
	margin: 1.35rem 0 0;
	font-size: var(--worso-home-fs-body);
	line-height: 1.6;
	color: var(--worso-info-ink);
}

.worso-info-ceo__sign-company {
	font-weight: 600;
}

.worso-info-ceo__sign-role {
	font-weight: 700;
}

.worso-info-ceo__philosophy {
	margin: 0 0 1.45rem;
	padding: 0 0 1.35rem 1.15rem;
	border-left: 3px solid var(--worso-brand);
	position: relative;
}

.worso-info-ceo__philosophy-label {
	margin: 0 0 0.45rem;
	font-size: var(--worso-fs-xs);
	font-weight: 700;
	letter-spacing: 0.16em;
	color: var(--worso-brand);
}

.worso-info-ceo__quote {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	color: inherit;
}

.worso-info-ceo__quote p {
	margin: 0;
	font-family: var(--worso-font-display-en);
	font-size: clamp(1.45rem, 2.8vw, 2.05rem);
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0.02em;
	color: var(--worso-text-strong);
	text-wrap: balance;
}

.worso-info-ceo__career-list,
.worso-info-ceo__media-list {
	margin: 0.4rem auto 0;
	max-width: 46rem;
}

.worso-info-ceo__career-row {
	display: grid;
	grid-template-columns: 9.5rem minmax(0, 1fr);
	gap: 0.5rem 1.6rem;
	padding: 0.9rem 0;
	border-bottom: 1px solid var(--worso-info-line);
}

.worso-info-ceo__career-row dt {
	margin: 0;
	font-size: var(--worso-home-fs-xs);
	font-weight: 600;
	line-height: 1.65;
	color: var(--worso-info-ink-navy);
}

.worso-info-ceo__career-row dd {
	margin: 0;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

.worso-info-ceo__media-list {
	list-style: none;
	padding: 0;
}

.worso-info-ceo__media-list li {
	display: grid;
	grid-template-columns: 8rem minmax(0, 1fr);
	gap: 0.5rem 1.6rem;
	padding: 1rem 0;
	border-bottom: 1px solid var(--worso-info-line);
}

.worso-info-ceo__media-date {
	font-size: var(--worso-home-fs-xs);
	font-weight: 600;
	color: var(--worso-info-ink-navy);
}

.worso-info-ceo__media-list strong {
	display: block;
	font-size: var(--worso-home-fs-body);
	margin-bottom: 0.2rem;
}

.worso-info-ceo__media-link {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
	transition: opacity 0.2s ease;
}

.worso-info-ceo__media-link:hover,
.worso-info-ceo__media-link:focus-visible {
	opacity: 0.72;
}

.worso-info-ceo__media-list p {
	margin: 0;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink);
}

/* ===== アクセス ===== */
.worso-info-access {
	background: var(--worso-info-bg);
}

.worso-info-access__meta {
	margin: 0.4rem 0 1.4rem;
}

.worso-info-access__address,
.worso-info-access__transit {
	margin: 0 0 0.45rem;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

.worso-info-access__transit {
	color: var(--worso-info-ink);
}

.worso-info-access__map {
	margin: 0;
	border: 1px solid var(--worso-info-line);
	border-radius: 12px;
	overflow: hidden;
	background: var(--worso-white);
}

.worso-info-access__map-frame {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: var(--worso-green-50);
}

.worso-info-access__map-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}

.worso-info-access__map-caption {
	margin: 0;
	padding: 0.85rem 1.1rem;
	border-top: 1px solid var(--worso-info-line);
	display: flex;
	justify-content: flex-end;
}

.worso-info-access__map-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: var(--worso-info-ink-navy);
	font-size: var(--worso-fs-sm);
	font-weight: 600;
	text-decoration: none;
}

.worso-info-access__map-link:hover,
.worso-info-access__map-link:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 1024px) {
	.worso-info .worso-home-section {
		width: 100%;
		margin: 0;
		padding: 4rem 2rem;
		/* iPhone Safari: keep-all 溢れ時に右端クリップしない */
		overflow: visible;
	}

	.worso-info-company__row {
		grid-template-columns: 9.5rem minmax(0, 1fr);
		gap: 0.6rem 1.4rem;
	}

	.worso-info-ceo__intro {
		grid-template-columns: 11rem minmax(0, 1fr);
		gap: 1.4rem 1.8rem;
	}
}

@media (max-width: 860px) {
	.worso-info .worso-home-section {
		width: 100%;
		margin: 0;
		padding: 3.2rem 1.25rem;
		overflow: visible;
	}

	.worso-info .worso-home-section__tri {
		height: 110px;
		top: 1.2rem;
	}

	/* 企業情報：狭い幅ではラベル／値を縦積み */
	.worso-info-company__list {
		margin-top: 0.2rem;
	}

	.worso-info-company__row {
		grid-template-columns: 1fr;
		gap: 0.35rem;
		padding: 0.9rem 0;
	}

	.worso-info-company__row dt {
		font-size: var(--worso-home-fs-xs);
		letter-spacing: 0.04em;
	}

	.worso-info-company__row dd {
		font-size: var(--worso-home-fs-body);
		line-height: 1.75;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	/*
	 * 企業理念（スマホ）:
	 * PDF の「和ラベル → 斜め線 → 英語」をコンパクトに残し、
	 * ミント縦線・番号・セリフ英字で企業情報／代表紹介とトーンを揃える。
	 */
	.worso-info-pmvv__list {
		counter-reset: worso-pmvv;
		gap: 0;
		margin: 0.55rem 0 0;
		padding: 0.15rem 0 0.15rem 0.9rem;
		max-width: none;
		border-left: 2px solid var(--worso-green-150);
	}

	.worso-info-pmvv__item {
		counter-increment: worso-pmvv;
		position: relative;
		display: block;
		padding: 1.7rem 2.8rem 1.7rem 0;
		min-height: 5.4rem;
	}

	.worso-info-pmvv__item:last-child {
		padding-bottom: 0.5rem;
	}

	/* 左ミントの節点 */
	.worso-info-pmvv__item::before {
		content: "";
		position: absolute;
		left: -0.9rem;
		top: 1.95rem;
		width: 0.55rem;
		height: 2px;
		background: var(--worso-green-200);
		transform: translateX(-100%);
	}

	/* 右の薄い番号（空いた余白のバランス用） */
	.worso-info-pmvv__item::after {
		content: counter(worso-pmvv, decimal-leading-zero);
		position: absolute;
		right: 0;
		top: 1.35rem;
		font-family: var(--worso-home-serif);
		font-size: var(--worso-fs-6xl);
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.02em;
		color: var(--worso-brand-a42);
		pointer-events: none;
	}

	.worso-info-pmvv__ja {
		position: absolute;
		left: 0;
		top: 1.45rem;
		display: block;
		width: auto;
		margin: 0;
		text-align: left;
		font-size: var(--worso-fs-xl);
		font-weight: 700;
		letter-spacing: 0.06em;
		line-height: 1.2;
		white-space: nowrap;
		color: var(--worso-info-ink);
		z-index: 1;
	}

	.worso-info-pmvv__rail {
		position: absolute;
		left: 6.4rem;
		top: 2.15rem;
		display: flex;
		align-items: flex-end;
		gap: 0.2rem;
		transform: rotate(-22deg);
		transform-origin: left center;
		margin: 0;
		pointer-events: none;
		white-space: nowrap;
		z-index: 2;
	}

	.worso-info-pmvv__line {
		width: 4.4rem;
		height: 1px;
		margin-bottom: 0.3em;
		background: var(--worso-info-ink);
	}

	.worso-info-pmvv__en {
		font-family: var(--worso-home-serif);
		font-size: var(--worso-fs-2xl);
		font-weight: 600;
		letter-spacing: 0.02em;
		line-height: 1;
		color: var(--worso-text-strong);
	}

	.worso-info-pmvv__body {
		position: relative;
		z-index: 1;
		flex: none;
		width: auto;
		margin: 0;
		padding: 3.05rem 0 0;
	}

	.worso-info-pmvv__body p,
	.worso-info-pmvv__values li {
		font-size: var(--worso-fs-lg);
		line-height: 1.7;
		font-weight: 600;
	}

	.worso-info-pmvv__values {
		display: grid;
		gap: 0.42rem;
	}

	.worso-info-pmvv__values li::before {
		color: var(--worso-brand-mid);
	}

	.worso-info-ceo__intro {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.worso-info-ceo__photo {
		order: 0;
		max-width: 210px;
		width: 56%;
		margin: 0.15rem auto 0;
		text-align: center;
	}

	.worso-info-ceo__sign {
		align-items: flex-start;
	}

	.worso-info-ceo__body p {
		line-height: 1.85;
		letter-spacing: 0.01em;
	}

	.worso-info-ceo__career-row,
	.worso-info-ceo__media-list li {
		grid-template-columns: 1fr;
		gap: 0.3rem;
	}
}

@media (max-width: 640px) {
	.worso-info {
		padding-bottom: 1rem;
	}

	.worso-info .worso-home-section {
		width: 100%;
		margin: 0;
		padding: 2.6rem 1.1rem;
		overflow: visible;
	}

	.worso-info .worso-home-section__tri {
		height: 88px;
		top: 1rem;
		opacity: 0.85;
	}

	.worso-info .worso-home-section__head {
		margin-bottom: 1rem;
	}

	.worso-info .worso-home-section__title {
		font-size: clamp(1.4rem, 5.5vw, 1.75rem);
	}

	.worso-info-company__row {
		padding: 0.8rem 0;
	}

	.worso-info-sdgs__body {
		gap: 1.35rem;
	}

	.worso-info-ceo__photo {
		max-width: 190px;
		width: 52%;
	}

	.worso-info-ceo__intro {
		gap: 1.25rem;
	}

	.worso-info-ceo__body p {
		font-size: var(--worso-fs-md);
		line-height: 1.9;
	}
}

/* ===== Leader CV（/about/team/kanaishi|takeno/）=====
 * overview / ceo と同型の白パネル。旧カード型 CV は廃止。
 */
.worso-page--leader.worso-info .worso-leader-panel {
	background: var(--worso-info-bg);
}

/* 職歴の期間・論文バッジは overview の CEO より長め → 列幅を少し広げる */
.worso-page--leader .worso-info-ceo__career-row {
	grid-template-columns: 11.5rem minmax(0, 1fr);
}

.worso-page--leader .worso-info-ceo__media-list li {
	grid-template-columns: 10rem minmax(0, 1fr);
}

.worso-leader-profile {
	display: grid;
	grid-template-columns: minmax(140px, 220px) minmax(0, 1fr);
	gap: 2rem 2.5rem;
	align-items: start;
	margin-top: 0.4rem;
}

.worso-leader-profile__photo {
	margin: 0;
}

.worso-leader-profile__photo img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: top center;
}

.worso-leader-profile__photo figcaption,
.worso-leader-profile__photo--monogram figcaption {
	margin: 0.75rem 0 0;
	font-size: var(--worso-fs-caption);
	line-height: var(--worso-lh-caption);
	color: var(--worso-info-ink);
	text-align: center;
}

.worso-leader-profile__meta {
	margin-top: 0;
}

.worso-leader-profile__monogram {
	position: relative;
	width: 100%;
	aspect-ratio: 3 / 4;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	color: var(--worso-white);
	background:
		radial-gradient(circle at 30% 25%, rgba(196, 214, 0, 0.22), transparent 55%),
		linear-gradient(160deg, var(--worso-ink-dk) 0%, #1f2330 100%);
	overflow: hidden;
}

.worso-leader-profile__monogram::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(to right, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 28px 28px;
	mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 80%);
	-webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 80%);
	pointer-events: none;
}

.worso-leader-profile__monogram-mark {
	position: relative;
	font-family: var(--worso-font-serif);
	font-size: clamp(3.5rem, 8vw, 4.75rem);
	font-weight: 700;
	line-height: 1;
	color: var(--worso-lime);
	letter-spacing: -0.04em;
}

.worso-leader-profile__monogram-en {
	position: relative;
	font-family: var(--worso-font-display-en);
	font-size: var(--worso-fs-subhead);
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-align: center;
	text-transform: uppercase;
	opacity: 0.92;
}

.worso-leader-row__desc {
	display: block;
	margin-top: 0.2rem;
	font-weight: 400;
	color: var(--worso-info-ink);
}

.worso-info-ceo__career-row dd strong {
	display: block;
	font-weight: 700;
	color: var(--worso-info-ink-navy);
}

.worso-leader-pubs__meta {
	margin-top: 0.25rem !important;
	font-size: var(--worso-fs-caption) !important;
	line-height: var(--worso-lh-caption);
	color: var(--worso-info-ink) !important;
}

.worso-leader-certs {
	list-style: none;
	margin: 0.4rem auto 0;
	padding: 0;
	max-width: 46rem;
}

.worso-leader-certs__item {
	display: grid;
	grid-template-columns: 1.75rem minmax(0, 1fr);
	gap: 0.65rem;
	align-items: start;
	padding: 0.9rem 0;
	border-bottom: 1px solid var(--worso-info-line);
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

.worso-leader-certs__item:first-child {
	border-top: 1px solid var(--worso-info-line);
}

.worso-leader-certs__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	margin-top: 0.1rem;
	border-radius: 50%;
	background: var(--worso-green-200);
	color: var(--worso-text-strong);
}

.worso-leader-quote {
	margin: 0.4rem auto 0;
	padding: 0 0 0 1.25rem;
	max-width: 46rem;
	border-left: 3px solid var(--worso-lime);
}

.worso-leader-quote p {
	margin: 0;
	font-size: var(--worso-home-fs-subhead);
	line-height: var(--worso-home-lh-subhead);
	font-weight: 600;
	color: var(--worso-info-ink-navy);
	text-wrap: balance;
}

.worso-leader-quote cite {
	display: block;
	margin-top: 0.75rem;
	font-size: var(--worso-fs-caption);
	font-style: normal;
	line-height: var(--worso-lh-caption);
	color: var(--worso-info-ink);
}

.worso-leader-message__body {
	margin: 1.25rem auto 0;
	max-width: 46rem;
	font-size: var(--worso-home-fs-body);
	line-height: var(--worso-home-lh-body);
	color: var(--worso-info-ink-navy);
}

@media (max-width: 900px) {
	.worso-leader-profile {
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 1.5rem;
	}

	.worso-leader-profile__photo,
	.worso-leader-profile__photo--monogram {
		max-width: 210px;
		width: 56%;
		margin-inline: auto;
	}

	.worso-leader-profile__meta {
		width: 100%;
	}
}

@media (max-width: 640px) {
	.worso-leader-certs__item {
		grid-template-columns: 1.5rem minmax(0, 1fr);
	}

	.worso-leader-quote {
		padding-left: 1rem;
	}

	.worso-leader-quote p {
		font-size: var(--worso-home-fs-body);
		line-height: var(--worso-home-lh-body);
	}
}

/* 右端の固定ボタン（72px）が本文に重ならないようにする。860px 以下の padding 指定より後に置く。 */
@media (min-width: 641px) and (max-width: 1360px) {
	.worso-info .worso-home-section {
		padding-right: var(--worso-fcta-clear);
	}
}

