@charset "UTF-8";

/* ------------------------------
	.faq-content
------------------------------ */
/*#main_visual .content__title {
	top: 45%;
}*/

#faq .title {
	font-size: 3.0rem;
	line-height: 1.4;
}

.faq-content{
	position: relative;
	padding: 57px 0 120px;
}

.faq_txt{
	position: absolute;
	bottom: -25px;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 14.0rem;
	line-height: 1;
	text-align: center;
	font-weight: bold;
	color: #f0f0f0;
	pointer-events: none;
}

.faq-content .btn_list{
	display: flex;
	flex-wrap: wrap;
	margin-top: 25px;
}

.faq-content .btn_list .btn{
	padding: 0;
	max-width: 100%;
	width: 300px;
	margin-left: 0;
	margin-top: 25px;
	background: #81bf00;
}
.faq-content .btn_list .btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 23px 0;
	font-weight: bold;
	color: #fff;
	font-size: 1.8rem;
}

.faq-content .btn_list .btn:not(:nth-child(3n - 2)){
	margin-left: 50px;
}

.faq-content .btn_list .btn:nth-child(3n - 1){
	background: #f5a101;
}
.faq-content .btn_list .btn:nth-child(3n){
	background: #009ce1;
}


@media screen and (max-width: 767px) {
	.faq-content{
		padding: 8vw 0 18vw;
	}

	#faq .title{
		font-size: 3.8rem;
	}

	.faq_txt{
		bottom: -4vw;
	}

	.faq-content .btn_list{
		margin-top: 4vw;
	}

	.faq-content .btn_list .btn{
		width: 80%;
		margin: 3vw auto 0;
	}
	.faq-content .btn_list .btn a{
		padding: 4vw 0;
		font-size: 3.0rem;
	}

	.faq-content .btn_list .btn:not(:nth-child(3n - 2)){
		margin-left: auto;
	}
}



/* ------------------------------
	.faq_wrap
------------------------------ */
.faq_wrap{
	padding: 50px 0 90px;
	background: #f8f8f8;
}

.faq_wrap .faq_sec + .faq_sec{
	margin-top: 30px;
}

.faq_wrap .faq_ttl{
	margin-bottom: 15px;
	font-size: 2.3rem;
	text-align: center;
	font-weight: bold;
	line-height: 1.6;
	color: #81bf00;
}
.faq_wrap .faq_sec:nth-child(3n - 1) .faq_ttl{
	color: #f5a101;
}
.faq_wrap .faq_sec:nth-child(3n) .faq_ttl{
	color: #009ce1;
}

.faq_wrap .faq_box_wrap{
	padding: 0 40px;
	background: #fff;
	border-top: 2px solid #81bf00;
	border-bottom: 2px solid #81bf00;
}
.faq_wrap .faq_sec:nth-child(3n - 1) .faq_box_wrap{
	border-color: #f5a101;
}
.faq_wrap .faq_sec:nth-child(3n) .faq_box_wrap{
	border-color: #009ce1;
}

.faq_wrap .faq_box{
	display: flex;
	align-items: flex-start;
	padding: 30px 0 35px;
}
.faq_wrap .faq_box + .faq_box{
	border-top: 1px solid #d9d8dd;
}

.faq_wrap .faq_box .q_box{
	flex-shrink: 0;
	width: 33px;
	height: 45px;
	margin-right: 20px;
	background: url(../img/faq/faq_ico01.png) no-repeat center center;
	background-size: 100%;
}
.faq_wrap .faq_sec:nth-child(3n - 1) .faq_box .q_box{
	background: url(../img/faq/faq_ico02.png) no-repeat center center;
	background-size: 100%;
}
.faq_wrap .faq_sec:nth-child(3n) .faq_box .q_box{
	background: url(../img/faq/faq_ico03.png) no-repeat center center;
	background-size: 100%;
}

.faq_wrap .faq_box .txt_box{
	width: 100%;
}

.faq_wrap .faq_box .txt_box .ttl{
	margin-top: 0.2em;
	margin-bottom: 0.3em;
	font-size: 1.9rem;
	font-weight: bold;
	line-height: 1.6;
}

.faq_wrap .faq_box .txt_box .txt{
	font-size: 1.5rem;
	line-height: 1.6;
}


@media screen and (max-width: 767px) {
	.faq_wrap{
		padding: 8vw 0 10vw;
	}

	.faq_wrap .faq_box_wrap{
		padding: 0 4%;
	}

	.faq_wrap .faq_sec + .faq_sec{
		margin-top: 8vw;
	}

	.faq_wrap .faq_box .q_box{
		width: 8vw;
		height: 11vw;
		margin-right: 4%;
	}

	.faq_wrap .faq_box{
		padding: 5vw 0;
	}

	.faq_wrap .faq_ttl{
		margin-bottom: 0.5em;
		font-size: 4.0rem;
	}

	.faq_wrap .faq_box .txt_box .ttl{
		font-size: 3.4rem;
	}

	.faq_wrap .faq_box .txt_box .txt{
		font-size: 3.0rem;
	}
}