@charset "utf-8";
/* 打消し */
.mv_box,
.mv_box img{
	height: auto;
	max-height: none;
}
.mv_box img{
	position: static;
	transform: none;
}
/* button */
.content .cv_area{
	width: auto;
}
.content .txt_wrap .cv_area{
	padding-right: 0;
	padding-left: 0;
}
.content .cv_btn {
	display: block;
	position: relative;
	text-decoration: none;
	line-height: 1;
	margin: 0 auto 10px;
	padding: 20px 16px;
	border-radius: 50px;
	background: #FC6C0C;
	box-shadow: 0 3px 6px #00000029;
	width: 100%;
	max-width: 500px;
	border: 4px solid #fff;
}
.content .cv_btn .balloon{
	position: absolute;
	color: #121212;
	font-weight: bold;
	background: #fff;
	border: 1px solid #FC6C0C;
	border-radius: 50px;
	white-space: nowrap;
	padding: 4px 20px;
	top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
}
.content .cv_btn p{
	color: #fff;
	font-weight: bold;
    font-size: min(5.86vw, 30px);
    line-height: 1.2;
    text-align: center;
	margin: 0;
}
.content .col_ye {
	color: #EEF51A;
}
/*コラム個別css*/
article em {
	font-weight: bold;
}
article img {
	display: block;
	width: 100%;
	height: auto;
	margin: auto;
}
/* article
----------------------------------------------- */
article .txt_box {
	margin: 0 0 16px;
}
article .txt_box > p:not([class]) {
	line-height: 2;
	margin: 0 0 8px;
}
article figure{
	margin: 20px auto;
}
.content .introduction,
article .sub_ttl {
	font-weight: bold;
	font-size: 18px;
	margin: 16px 0;
}
article .disc_list {
	background-color: #E2E9FB;
	padding: 20px min(4.26vw, 100px);
	border-radius: 20px;
}
article .disc_list li {
	position: relative;
	padding-left: 18px;
	line-height: 1.5;
	margin-bottom: 8px;
}
article .disc_list li::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 100%;
	position: absolute;
	left: 0;
	top: 8px;
	background: #0A297E;
}
/*目次*/
article .outline_wrap {
	padding: 0 16px;
	max-width: 538px;
	margin: auto;
}
dl.outline {
	background: #f4f4f4;
	border-radius: 20px;
	padding: min(4.26vw, 30px);
	margin: 0 0 28px;
}
dl.outline>* {
	margin: 0 0 5px;
}
dl.outline a {
	color: #333;
}
dl.outline dt {
	font-weight: bold;
}
.sec01,
.sec02,
.sec03,
.sec04 {
	margin-bottom: 30px;
}


@media screen and (min-width: 768px) {
	.sp_br {
		display: none;
	}
	.sec01,
	.sec02,
	.sec03,
	.sec04 {
		margin-bottom: 50px;
	}
	article .inr_wrap{
		display: flex;
		align-items: center;
	}
	article .inr_wrap > *{
		flex:1;
	}
	article .inr_wrap .txt_box{
		padding-left: 20px;
	}
	article figure{
		margin: 32px auto;
		border: 1px solid #d1d1d1;
		border-radius: 16px;
		padding: 20px;
	}
}