@charset "UTF-8";

/* ====================================
	事業所アクセスマップページのスタイル

	対象 : /corporate/info/outline/base/map/ 配下の全12ページ
 ==================================== */

/* ====================================
	地図
 ==================================== */
.map-figure {
	max-inline-size: 550px;
	margin: 0 auto;
}

.map-figure__link {
	margin-block-start: 1rem;
	text-align: end;
}

/* ====================================
	本文
 ==================================== */
.map-body {
	max-inline-size: 100rem;
	margin: 5rem auto 0;
}

.map-title {
	margin-block-start: 6rem;
	padding-block-end: .8rem;
	border-block-end: 1px dashed var(--gray-500);
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
}

.map-body>.map-title:first-child {
	margin-block-start: 0;
}

.map-text,
.map-list,
.map-steps,
.map-note {
	margin-block-start: 2rem;
	font-size: 1.4rem;
	line-height: 1.8;
}

.map-list>li {
	padding-inline-start: 1em;
	text-indent: -1em;
}

.map-list>li::before {
	content: '・';
}

.map-list>li+li {
	margin-block-start: 1.4rem;
}

.map-steps {
	counter-reset: map-step;
}

.map-steps>li {
	counter-increment: map-step;
	padding-inline-start: 1.8em;
	text-indent: -1.8em;
}

.map-steps>li::before {
	content: counter(map-step) ') ';
}

.map-steps>li+li {
	margin-block-start: 2rem;
}

.map-steps .map-list {
	margin-block-start: .8rem;
	text-indent: 0;
}

/* ====================================
	事業所情報
 ==================================== */
.map-info {
	margin: 2rem 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.map-info__item {
	display: flex;
	gap: .4rem;
}

.map-info__item+.map-info__item {
	margin-block-start: .5rem;
}

.map-info__term {
	flex: none;
	inline-size: 8rem;
	font-weight: 400;
}

.map-info__data {
	flex: 1;
	min-inline-size: 0;
	margin: 0;
}

.map-info__data::before {
	content: ': ';
}

/* ====================================
	ボタン
 ==================================== */
/* 折り返しても高さが揃うよう、PDFアイコンを収める高さを両ボタンに与える */
.map-buttons {
	--map-button-height: 5rem;
	display: flex;
	flex-wrap: wrap;
	gap: 2rem 3rem;
	margin-block-start: 6rem;
}

.map-buttons .button-link {
	block-size: 100%;
	min-block-size: var(--map-button-height);
	padding-block: .5rem;
}

.map-buttons__pdf-icon {
	flex: none;
	inline-size: 4rem;
}

@media print,
screen and (width >=768px) {

	.map-title {
		margin-block-start: 8rem;
		padding-block-end: 1rem;
		font-size: 2.2rem;
	}

	.map-text,
	.map-list,
	.map-steps,
	.map-note,
	.map-info {
		font-size: 1.8rem;
		line-height: 1.6;
	}

	.map-list>li+li {
		margin-block-start: 1.6rem;
	}

	.map-info__item+.map-info__item {
		margin-block-start: 1rem;
	}

	.map-info__term {
		inline-size: 12rem;
	}

	.map-buttons {
		--map-button-height: calc(1.8rem * 1.2 + 4rem + 2px);
		margin-block-start: 8rem;
	}

	.map-buttons .button-link {
		padding-block: 1.2rem;
	}
}

/* ====================================
	第4階層へのリンクを持たない小さいページタイトル
 ==================================== */
.page-title--compact {
	padding-block: 3rem 2rem;
}

.page-title--compact .page-title__heading {
	font-size: 1.8rem;
}

@media print,
screen and (width >=768px) {

	.page-title--compact {
		padding-block: 4rem 2rem;
	}

	.page-title--compact .page-title__heading {
		font-size: 2.6rem;
	}
}
