@charset "utf-8";
/*コラム個別css*/

article em{
    font-weight: bold;
}
article img{
    display: block;
    width: 100%;
    height: auto;
    margin: auto;
}
.check_list li {
	background: url(images/ico_check.svg) no-repeat left top;
	background-size: 23px auto;
	padding-left: 30px;
	margin: 0 0 5px;
}
/* reccomend
----------------------------------------------- */
.content .reccomend {
	position: relative;
	background: #0A297E;
	margin: 0 0 40px;
}
.content .reccomend::after {
	width: 68px;
	height: 37px;
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translate(-50%, 0);
	background: url(images/arrow.svg) no-repeat;
}
.content .reccomend .inner {
	max-width: 780px;
	margin: auto;
	padding: 16px 16px min(4.26vw, 30px);
}
.reccomend .ttl {
	color: #fff;
	text-align: center;
	margin: 0 0 5px;
	font-size: min(5.33vw, 22px);
}
.reccomend ul {
	background: #E2E9FB;
	border-radius: 20px;
	padding: min(4vw, 30px);
	font-weight: bold;
	max-width: 500px;
	margin: auto;
	font-size: min(4.8vw, 20px);
}
/* article
----------------------------------------------- */
article .txt_box{
	margin: 0 0 16px;
}
article .txt_box p:not([class]){
	line-height: 2;
	margin: 0 0 8px;
}
article .article_ttl{
	font-weight: bold;
	font-size: 24px;
	margin: 0 0 10px;
}
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;
}
.outline_wrap + .cv_area,
.sec02 .disc_list,
.sec02 + .campaign_area,
article .middle_img,
.sec03,
.sec04,
.sec04 dl{
	margin-bottom: 30px;
}
.sec04 dl{
	display: flex;
	flex-direction: column;
	gap:16px;
}
.sec04 dl > div{
	background-color: #E2E9FB;
	padding: 20px;
	border-radius: 20px;
}
.sec04 dl dt{
	font-weight: bold;
	font-size: 1.25em;
	margin: 0 0 5px;
}
.sec04 dl figure{
	margin: 0 0 5px;
}
@media screen and (min-width: 768px) {
    .sp_br{
        display: none;
    }
    .sec01,
	.outline_wrap + .cv_area,
	.sec02 .disc_list,
	.sec02 + .campaign_area,
	article .middle_img,
	.sec03,
	.sec03 + .cv_area,
	.sec04,
	.sec04 dl,
	.sec04 + .cv_area,
	.sec05{
		margin-bottom: 50px;
	}
	.sec04 dl{
		flex-direction: row;
	}
	.sec04 dl > div{
		width: 50%;
	}
}