.expArea {
	padding: 1.0em;
	font-size: 1.2em!important;
	font-weight: 600;
}
.expArea a { color: #00479d; }
.expArea a:hover { color: #ff5e00; }
.exp_area_ttl {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 1.0em;
	font-size: 1.4em;
	font-weight: 600;
}
.exp_toc {
	display: flex;
	justify-content: center;
	margin-bottom: 2.0em;
}
.exp_toc_wrap {
	padding: 1.0em 1.6em;
	background-color: #f8f4e6;
}
.exp_toc_ttl {
	display: flex;
	justify-content: center;
	padding-bottom: 5px;
}
.exp_toc_list {
	padding: 5px 0;
	border-radius: 10px;
	background-color: rgba(255, 255, 255, .9);
}
.exp_toc_list > li > ul { padding-left: 30px; }
.exp_toc_list a {
	position: relative;
	display: block;
	padding: 5px 15px 5px 35px;
}
.exp_toc_list a::before {
	content: "";
	position: absolute;
	top: .75em;
	left: 12px;
	width: 10px;
	height: 10px;
}
.exp_toc_list > li > a::before {
	border-top: 3px solid #5d5d5d;
	border-right: 3px solid #5d5d5d;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.exp_toc_list > li > ul> li> a::before {
	top: .55em;
	border-bottom: 3px solid #5d5d5d;
	border-left: 3px solid #5d5d5d;
}

.exp_cont a { text-decoration: underline; }
.exp_cont:not(:last-of-type) { padding-bottom: 3.0em; }
.exp_cont_ttl {
	position: relative;
	margin-bottom: 1.0em;
	padding: 0 10px;
	font-size: 1.4em;
	font-weight: 600;
}
.exp_cont_ttl::before,
.exp_cont_ttl::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
	height: 4px;
	z-index: 1;
}
.exp_cont_ttl::before {
	width: 30%;
	background-color: #444;
	z-index: 2;
}
.exp_cont_ttl::after {
	width: 100%;
	background: -webkit-repeating-linear-gradient(45deg, #fff, #fff 2px, #aaa 2px, #aaa 4px);
	background: repeating-linear-gradient(45deg, #fff, #fff 2px, #aaa 2px, #aaa 4px);
}
.exp_cont_subttl {
	display: flex;
	justify-content: center;
	margin-bottom: 1.0em;
}
.exp_cont_subttl > span {
	padding: 0.3em 1.0em;
	background-color: #f8f4e6;
	font-size: 1.1em;
	font-weight: 600;
}
.exp_txt {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 2.0em;
}
.exp_txt > * { padding-bottom: .3em; }
.exp_img {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 15px;
	padding-bottom: 2.0em;
}
.exp_btn {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.exp_btn > a {
	display: flex;
	justify-content: center;
	padding: 5px 20px;
	margin: auto;
	border-radius: 5px;
	background-color: #ba000e;
	font-size: 1.2rem!important;
	color: #fff;
}
.exp_btn > a:hover { color: #fff; }
