.article-title {
	position: relative;
	line-height: 1.4117;
	margin-top: 2em;
	margin-bottom: 1em;
	padding-bottom: .2em;
	border-bottom: 2px solid #dfdfdf;
	font-size: 2rem;
	font-weight: normal;
	letter-spacing: 0;
}
.article-title:after {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 3em;
	height: 2px;
	background: #2b237f;
}
@media (min-width:48em) {
	.article-title {
		font-size: 2.4rem;
	}
}

/* -------------------------------- *\
    積み上げパーツ
\* -------------------------------- */
/*
  unit-text … 記事文面
  unit-heading … 見出し
  unit-img-text … 左文右画/左画右文
  unit-img … 画像
  unit-file … ファイル
  unit-video … 動画
  unit-map … 地図
*/
.unit-text,
.unit-img-text,
.unit-img,
.unit-file,
.unit-video,
.unit-map {
	margin-bottom: 32px;
}
.unit-heading {
	margin-bottom: 24px;
}
.unit-heading__h2 {
	line-height: 1.416;
	margin-bottom: .5em;
	color: #2b237f;
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0;
}
.unit-heading__h3 {
	line-height: 1.416;
	font-size: 1.7rem;
	font-weight: bold;
	letter-spacing: 0;
}
.unit-img-text,
.unit-img {
	margin-top: -32px;

}
.unit-img-text figure,
.unit-img figure {
	margin: 0;
}
.unit-img-text figcaption,
.unit-img figcaption {
	margin-top: .5em;
	color: var(--gray-40);
	font-size: 0.866em;
}
.unit-img-text figcaption:empty,
.unit-img figcaption:empty {
	display: none;
}
.unit-img-text img,
.unit-img img {
	width: 100%;
}
.unit-img-text__text,
.unit-img-text__img,
.unit-img__col {
	padding-top: 32px;
}
.unit-file p {
	line-height: 1.5;
}
.unit-file p::before {
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	margin-right: .25em;
	background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJtMTQuODI5IDcuNzU3LTUuNjU3IDUuNjU3YTEgMSAwIDEgMCAxLjQxNCAxLjQxNGw1LjY1Ny01LjY1NkEzIDMgMCAwIDAgMTIgNC45MjlsLTUuNjU3IDUuNjU3YTUgNSAwIDAgMCA3LjA3MSA3LjA3TDE5LjA3MSAxMmwxLjQxNCAxLjQxNC01LjY1NiA1LjY1N2E3IDcgMCAwIDEtOS45LTkuOWw1LjY1Ny01LjY1NmE1IDUgMCAwIDEgNy4wNzEgNy4wN0wxMiAxNi4yNDRBMyAzIDAgMCAxIDcuNzU4IDEybDUuNjU2LTUuNjU3IDEuNDE1IDEuNDE0WiIvPjwvc3ZnPg==") no-repeat 50% / contain;
	content: "";
	vertical-align: -.2em;
}
.unit-file + .unit-file {
	margin-top: -16px;
}
.unit-video__inner {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}
.unit-video__inner iframe {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	outline: 0;
}
.unit-map iframe {
	height: 450px;
}

@media (min-width:48em) {
	.unit-text,
	.unit-img-text,
	.unit-img,
	.unit-file,
	.unit-video,
	.unit-map {
		margin-bottom: 48px;
	}
	.unit-heading {
		margin-bottom: 32px;
	}
	.unit-heading__h2 {
		font-size: 2.4rem;
	}
	.unit-heading__h3 {
		font-size: 2rem;
	}
	.unit-img-text,
	.unit-img {
		display: flex;
		margin-right: -16px;
		margin-left: -16px;
	}
	.unit-img-text[data-direction="reverse"] {
		flex-direction: row-reverse;
	}
	.unit-img-text__text,
	.unit-img-text__img,
	.unit-img__col {
		padding-right: 16px;
		padding-left: 16px;
	}
	.unit-img-text__text {
		flex-basis: 60%;
	}
	.unit-img-text__img {
		flex-basis: 40%;
	}
	.unit-img__col {
		flex: 1;
	}
	.unit-img__col:only-child {
		flex-grow: 0;
		flex-basis: auto;
		margin-right: auto;
		margin-left: auto;
	}
	.unit-file + .unit-file {
		margin-top: -32px;
	}
	.unit-video {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
	}
}
