/**
 * ブランドストーリー積みカード（template-brand-story-stacked.php）
 * 参考: https://codepen.io/HugoSalazar/pen/QWomQem
 */

.bss-page-main {
	overflow-x: clip;
}

/* GSAP ScrollTrigger が各カード用に挿入するスペーサー（インライン height と競合しないよう min-height のみ） */
.bss-stacked .pin-spacer {
	min-height: 60vh;
}

.bss-stacked {
	--bss-color-dark: #edf2f3;
	--bss-color-white: #fff;
	width: 100%;
	min-height: 100vh;
	background: var(--bss-color-dark);
	padding-bottom: 2rem;
}

.bss-stacked__intro {
	max-width: 1024px;
	margin: 0 auto;
	padding: 2.5rem 1.25rem 4rem;
	text-align: center;
}

.bss-stacked__intro-kicker {
	margin: 0 0 0.5rem;
	padding-bottom: 2rem;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.bss-stacked__intro-heading {
	font-size: clamp(1.75rem, 5vw, 6.75rem);
	font-weight: 700;
	line-height: 1.25;
}

.bss-stacked__intro-lead {
	margin: 0 auto;
	max-width: 42rem;
	font-size: 1rem;
	line-height: 1.75;
}

/* リード内 br.sp-only: PC では改行なし、iPad/SP（1024px 以下）で改行 */
.bss-stacked__intro-lead br.sp-only {
	display: none;
}

.bss-stacked .l-cards {
	width: 100%;
	max-width: 95%;
	margin: 0 auto;
	padding: 0 1rem;
}

.bss-stacked .c-card {
	display: grid;
	/* 左=画像 / 右=本文+タグライン（本文列をやや広め） */
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
	column-gap: 0;
	row-gap: 0;
	margin-top: 1.25rem;
	width: 100%;
	height: 60vh;
	min-height: 449px;
	background-color: var(--bss-color-white);
	border: 1px solid #dddddd;
	will-change: transform;
}

/* 画像列の右：本文 + 右端タグライン（縦書き） */
.bss-stacked .c-card__content {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	min-width: 0;
	min-height: 0;
}

.bss-stacked .c-card__description {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 1 1 auto;
	min-width: 0;
	padding: 2.5rem 1.5rem 2.5rem 2.5rem;
	text-align: left;
}

/* 右上寄せの縦ラベル列（本文との間は点線） */
.bss-stacked .c-card__tagline-rail,
.bss-stacked .bss-card__tagline-rail {
	flex: 0 0 auto;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	align-self: stretch;
	padding: 1rem 0.5rem 1.5rem 0.5rem;
	border-left: 1px dashed #c8c8c8;
	font-family: 'Manrope', sans-serif;
	font-weight: 700;
}

.bss-stacked .c-card__tagline,
.bss-stacked .bss-card__tagline {
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-weight: 700;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0.18em;
	color: #22781f;
	/* 右端に沿って上から下へ（参考画像に近い縦ラベル） */
	writing-mode: vertical-rl;
	text-orientation: mixed;
	white-space: nowrap;
}

@supports (text-orientation: sideways) {

	.bss-stacked .c-card__tagline,
	.bss-stacked .bss-card__tagline {
		text-orientation: sideways;
	}
}

.bss-stacked .c-card__title {
	margin: 0 0 1rem;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	font-weight: 700;
	line-height: 1.3;
}

.bss-stacked .c-card__excerpt {
	margin: 0;
	font-size: 1rem;
	line-height: 1.6;
	color: #333;
}

.bss-stacked .c-card__cta {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: 2rem;
}

.bss-stacked .c-card__cta a {
	width: max-content;
	padding: 0.75rem 1.5rem;
	border: 1px solid #231815;
	color: #231815;
	font-size: 1rem;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.bss-stacked .c-card__cta a:hover,
.bss-stacked .c-card__cta a:focus-visible {
	background-color: #22781f;
	border-color: #22781f;
	color: #fff;
}

.bss-stacked .c-card__figure {
	position: relative;
	overflow: hidden;
	margin: 0;
	min-height: 12rem;
	border-right: 1px solid #dddddd;
}

.bss-stacked .c-card__figure img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ベース画像（Story.04 の地図ピンより下） */
.bss-stacked .bss-card__figure-base {
	z-index: 1;
}

/* オーバーレイ画像（フィルター等で card に追加した場合のみ出力） */
.bss-stacked .bss-card__figure-overlay {
	z-index: 2;
	opacity: 1;
	pointer-events: none;
	will-change: opacity;
}

/* Story.04: 地図上のピン表示 */
.bss-stacked .bss-map-pins {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
}

/* Story.04: 地図 figure をコンテナにし、ピン位置を % ではなく cqw/cqh で指定（画面幅ではなく地図エリアに追従） */
.bss-stacked .bss-card--story-04 .c-card__figure.bss-card__figure {
	container-type: size;
	container-name: bss-story04-map;
}

/* 地図ピンは figure 内の img 共通指定（全幅 cover）より詳細度を上げて上書き */
.bss-stacked .c-card__figure img.bss-map-pin {
	position: absolute;
	inset: auto;
	right: auto;
	bottom: auto;
	height: auto;
	max-height: none;
	object-fit: contain;
	opacity: 0;
	transform: translateY(8px) scale(0.6);
	transform-origin: center bottom;
	will-change: transform, opacity;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin {
	width: 1.25cqw;
	min-width: 10px;
	max-width: 32px;
}

/* 添付見本に寄せた配置（Story.04 地図上）— cqw=コンテナ幅基準、cqh=コンテナ高さ基準 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--1 {
	top: 14cqh;
	left: 14cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--2 {
	top: 23cqh;
	left: 23cqw;
}

/* pin--2 の左下軸にもう 2 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--36 {
	top: 32cqh;
	left: 19cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--37 {
	top: 39cqh;
	left: 13cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--3 {
	top: 24cqh;
	left: 38cqw;
}

/* pin--3 の左下付近 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--20 {
	top: 34cqh;
	left: 36cqw;
}

/* pin--20 の左下に 1 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--21 {
	top: 38cqh;
	left: 32cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--4 {
	top: 35cqh;
	left: 17cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--5 {
	top: 51cqh;
	left: 24cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--6 {
	top: 61cqh;
	left: 14cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--7 {
	top: 48cqh;
	left: 31cqw;
}

/* pin--7 の左上付近に 2 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--22 {
	top: 41cqh;
	left: 29cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--23 {
	top: 44cqh;
	left: 30cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--8 {
	top: 61cqh;
	left: 21cqw;
}

/* pin--8 の左下付近に 1 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--25 {
	top: 68cqh;
	left: 19cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--9 {
	top: 63cqh;
	left: 29cqw;
}

/* pin--9 の左に 3 列（同じ高さで左へ 3 個） */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--26 {
	top: 64cqh;
	left: 24cqw;
}

/* pin--26 の上：2 列×2 行（周囲のピンと重ならない位置） */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--32 {
	top: 60cqh;
	left: 27cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--33 {
	top: 59cqh;
	left: 28cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--34 {
	top: 58cqh;
	left: 26.5cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--35 {
	top: 57cqh;
	left: 28cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--27 {
	top: 60cqh;
	left: 23.5cqw;
}

/* pin--27 の少し右下に 1 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--31 {
	top: 63cqh;
	left: 26cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--28 {
	top: 51cqh;
	left: 28cqw;
}

/* pin--28 の上に 2 個（横並び） */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--29 {
	top: 49cqh;
	left: 26cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--30 {
	top: 51cqh;
	left: 25cqw;
}

/* pin--9 の下（同じ軸）に 1 個 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--24 {
	top: 67cqh;
	left: 29cqw;
}

/* pin--4 の下付近に 5 個を横並びで追加 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--10 {
	top: 44cqh;
	left: 8cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--11 {
	top: 44cqh;
	left: 12cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--12 {
	top: 47cqh;
	left: 15cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--13 {
	top: 46cqh;
	left: 17cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--14 {
	top: 46cqh;
	left: 19cqw;
}

/* pin--5 の左右に追加 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--15 {
	top: 47cqh;
	left: 21cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--16 {
	top: 48cqh;
	left: 23cqw;
}

/* pin--8 / pin--9 の下方向、同じ軸に追加 */
.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--17 {
	top: 88cqh;
	left: 22cqw;
}

.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--18 {
	top: 85cqh;
	left: 31cqw;
}



/* Story.21 の次: ロゴのみカード（同サイズ・同じ親幅） */
.bss-stacked .bss-card--image-only {
	grid-template-columns: 1fr;
}

/* ロゴのみ＋右端 Story.22 タグライン（左は可変、右はタグライン幅に合わせる） */
.bss-stacked .bss-card--image-only.bss-card--image-only-with-tagline {
	grid-template-columns: 1fr auto;
}

.bss-stacked .bss-card__content--tagline-only {
	justify-content: flex-end;
}

.bss-stacked .bss-card--image-only .c-card__figure {
	border-right: none;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-height: 0;
}

.bss-stacked .bss-card--image-only .c-card__figure img {
	position: relative;
	inset: auto;
	width: auto;
	max-width: 100%;
	height: 70%;
	margin: auto;
	object-fit: contain;
	padding: 1.5rem;
	background-color: #fff;
}

/* Story.12（シーン13）: 左テキスト列は可変、右はタグライン幅に合わせる（ロゴ最終カードと同様） */
.bss-stacked .bss-card--text-hero {
	grid-template-columns: 1fr auto;
}

/* Story.12: イラストなし・左は中央寄せテキスト、右はタグラインのみ */
.bss-stacked .bss-card--text-hero .c-card__figure {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	padding: 2rem 1.5rem;
	min-height: 0;
}

.bss-stacked .bss-card__hero-text {
	margin: 0;
	font-size: clamp(1.25rem, 2.8vw, 1.75rem);
	font-weight: 700;
	line-height: 1.45;
	color: #22781f;
	text-align: center;
	font-family: 'Manrope', sans-serif;
}

.bss-stacked .bss-card--text-hero .c-card__content {
	justify-content: flex-end;
	align-items: stretch;
}

.bss-stacked__spacer.spacer {
	width: 100%;
	height: 6rem;
	min-height: 0;
	pointer-events: none;
}

/* ---------- iPad・タブレット以下（～1024px：カード本文＋タグライン縦積み／PC は 1025px ～） ---------- */
@media (max-width: 1024px) {
	.bss-page-main {
		overflow-x: clip;
	}

	.bss-stacked {
		position: relative;
		min-height: 0;
		/* 最終カード直後のスクロール余白（積み演出の終端で前カードが画面上に残りにくくする） */
		padding-bottom: clamp(4rem, 18vh, 8rem);
		padding-left: 0.75rem;
		padding-right: 0.75rem;
		overflow: hidden;
		isolation: isolate;
	}

	.bss-stacked__intro {
		padding: 1.75rem 0.75rem 0.75rem;
	}

	.bss-stacked__intro-heading {
		font-size: clamp(1.35rem, 5vw, 2rem);
	}

	.bss-stacked__intro-lead {
		font-size: 0.9375rem;
		line-height: 1.65;
	}

	.bss-stacked__intro-lead br.sp-only {
		display: block;
	}

	/* カード列をビュー内で中央に（PC と同様 max-width + 自動マージン） */
	.bss-stacked .l-cards {
		width: 100%;
		max-width: 95%;
		margin-left: auto;
		margin-right: auto;
		padding: 0 1rem;
		box-sizing: border-box;
	}

	/* SP: ピンスペーサー高さを確保して積みカード演出を維持（mt は iPad/iPhone 共通で 21.9431px 相当） */
	.bss-stacked .pin-spacer {
		min-height: max(220px, 60vh);
		margin-top: 1.37144rem;
		/* 21.9431px @ 16px */
	}

	.bss-stacked .c-card {
		/* SP/iPad: 左＝上から画像→本文（縦）、右＝Story番号 */
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-rows: auto minmax(0, 1fr);
		height: auto;
		min-height: clamp(520px, 58vh, 720px);
		margin-top: 1rem;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		max-width: 100%;
		transform-origin: center center;
	}

	/* Story.12（text-hero）: 左にヒーロー文、右に番号（1行） */
	.bss-stacked .c-card.bss-card.bss-card--text-hero {
		grid-template-rows: 1fr;
	}

	.bss-stacked .bss-card--text-hero .c-card__tagline-rail,
	.bss-stacked .bss-card--text-hero .bss-card__tagline-rail {
		grid-row: 1;
	}

	/* ロゴのみ＋タグライン: 1行 */
	.bss-stacked .bss-card--image-only-with-tagline {
		grid-template-rows: 1fr;
	}

	.bss-stacked .bss-card--image-only-with-tagline .c-card__tagline-rail,
	.bss-stacked .bss-card--image-only-with-tagline .bss-card__tagline-rail {
		grid-row: 1;
	}

	/* SP: 番号をカード右列に通すため content の箱を消す */
	.bss-stacked .c-card__content {
		display: contents;
	}

	.bss-stacked .bss-card--text-hero .c-card__content {
		justify-content: stretch;
	}

	/* Story.12（text-hero）: figure を中央・幅100%（place-items は grid 前提） */
	.bss-stacked .bss-card--text-hero .c-card__figure.bss-card__figure {
		display: grid;
		place-items: center;
		width: 100%;
		margin: 0 auto;
		max-height: -webkit-fill-available;
		min-height: 0;
		aspect-ratio: auto;
		height: 100%;
		border-bottom: none;
		padding: 1.5rem 1rem;
	}

	.bss-stacked .c-card__description {
		grid-column: 1;
		grid-row: 2;
		flex: 1 1 auto;
		padding: 1.25rem 1rem 1rem;
		justify-content: flex-start;
		min-width: 0;
		place-content: center;
	}

	.bss-stacked .c-card__tagline-rail,
	.bss-stacked .bss-card__tagline-rail {
		grid-column: 2;
		grid-row: 1 / span 2;
		flex: 0 0 auto;
		display: flex;
		align-items: flex-start;
		justify-content: center;
		align-self: stretch;
		width: clamp(2.25rem, 8.5vw, 3rem);
		min-height: 100%;
		padding: 1rem 0.35rem 1.25rem;
		border-left: 1px dashed #c8c8c8;
		border-right: none;
		border-top: none;
		box-sizing: border-box;
		font-family: 'Manrope', sans-serif;
		font-weight: 700;
	}

	.bss-stacked .c-card__tagline,
	.bss-stacked .bss-card__tagline {
		writing-mode: vertical-rl;
		text-orientation: mixed;
		letter-spacing: 0.16em;
		text-align: center;
		line-height: 1.3;
		white-space: nowrap;
		max-width: 100%;
		font-weight: 700;
	}

	.bss-stacked .c-card__figure {
		grid-column: 1;
		grid-row: 1;
		min-height: auto;
		max-height: min(42vw, 42vh);
		height: auto;
		aspect-ratio: 16 / 9;
		border-right: none;
		border-bottom: 1px solid #dddddd;
	}

	/* iPad/SP: 画像列は親（グリッドセル）内で横幅いっぱい */
	.bss-stacked .c-card__figure.bss-card__figure {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		justify-self: stretch;
		box-sizing: border-box;
	}

	.bss-stacked .c-card__figure img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: auto;
		object-fit: contain;
		object-position: center;
	}

	/* Story.22（最終ロゴ・data-bss-index="22"）: 親内フル幅のまま中身を中央 */
	.bss-stacked .c-card[data-bss-index="22"] .c-card__figure.bss-card__figure {
		display: grid;
		place-items: center;
		width: 100%;
		max-width: 100%;
		margin: 0;
		max-height: -webkit-fill-available;
		min-height: 0;
		aspect-ratio: auto;
		height: 100%;
		border-bottom: none;
	}

	.bss-stacked .c-card[data-bss-index="22"] .c-card__figure img {
		position: relative;
		inset: auto;
	}

	.bss-stacked .c-card__title {
		font-size: clamp(1.125rem, 4.2vw, 1.5rem);
	}

	.bss-stacked .c-card__excerpt {
		font-size: 0.9375rem;
		line-height: 1.65;
	}

	.bss-stacked__spacer.spacer {
		height: 6rem;
		min-height: 0;
	}
}

/* ---------- iPad 区間（768px〜1024px）Story.04: ピン top をベースより +5cqh ---------- */
@media (min-width: 768px) and (max-width: 1024px) {
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--1 {
		top: 19cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--2 {
		top: 28cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--3 {
		top: 29cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--4 {
		top: 40cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--5 {
		top: 56cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--6 {
		top: 66cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--7 {
		top: 53cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--8 {
		top: 66cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--9 {
		top: 68cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--10 {
		top: 49cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--11 {
		top: 49cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--12 {
		top: 52cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--13 {
		top: 51cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--14 {
		top: 51cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--15 {
		top: 52cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--16 {
		top: 53cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--17 {
		top: 93cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--18 {
		top: 90cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--20 {
		top: 39cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--21 {
		top: 43cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--22 {
		top: 46cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--23 {
		top: 49cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--24 {
		top: 72cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--25 {
		top: 73cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--26 {
		top: 69cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--27 {
		top: 65cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--28 {
		top: 56cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--29 {
		top: 54cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--30 {
		top: 56cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--31 {
		top: 68cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--32 {
		top: 65cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--33 {
		top: 64cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--34 {
		top: 63cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--35 {
		top: 62cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--36 {
		top: 37cqh;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--37 {
		top: 44cqh;
	}
}

/* ---------- iPhone 区間のみ（767px 以下: iPad 縦768px 未満）Story.04 ---------- */
@media (max-width: 767px) {
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-card__figure-base {
		object-fit: contain;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin {
		width: 1cqw;
		min-width: 5px;
		max-width: 32px;
	}

	/* 地図ピン 1〜3（iPad ではベース値のまま） */
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--1 {
		top: 20cqh;
		left: 14cqw;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--2 {
		top: 29cqh;
		left: 23cqw;
	}

	/* pin--2（SP）の左下軸にもう 2 個 */
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--36 {
		top: 38cqh;
		left: 19cqw;
	}

	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--37 {
		top: 47cqh;
		left: 15cqw;
	}

	/* pin--20（SP） */
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--20 {
		top: 45cqh;
		left: 31cqw;
	}

	/* pin--20（SP）の左下に 1 個 */
	.bss-stacked .bss-card--story-04 .c-card__figure img.bss-map-pin--21 {
		top: 49cqh;
		left: 24cqw;
	}
}

/* ---------- 小型スマホ ---------- */
@media (max-width: 480px) {
	.bss-stacked {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	.bss-stacked__intro {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	.bss-stacked .c-card__description {
		padding: 1rem 0.75rem 0.75rem;
	}

	.bss-stacked .c-card__tagline-rail,
	.bss-stacked .bss-card__tagline-rail {
		width: clamp(2rem, 9vw, 2.625rem);
		padding: 0.875rem 0.25rem 1rem;
	}

	.bss-stacked .c-card__tagline,
	.bss-stacked .bss-card__tagline {
		font-size: 11px;
	}


}