@charset "utf-8";

.sp_br,.faq_ttl_wrap_sp{
	display: none;
}

.subpage_main_container a.txt_green{
	color: #008E72;
	text-decoration: underline;
}

.subpage_main_container a:hover {
	text-decoration: none;
}

.subpage_main_container{
	max-width: 1110px;
	margin: 0 auto 120px auto;
}

.faq_ttl_wrap{
	display: flex;
	margin: 80px auto 40px auto;
	padding-bottom: 14px;
	border-bottom: 1px solid #008E72;
}

.faq_ttl_wrap img{
	width: 3.5%;
	height: 100%;
	margin-right: 10px;
	padding-top: 2px;
}

.faq_ttl_wrap .flow_ttl p{
	font-weight: bold;
	color: #008E72;
}

.faq_cnt_wrap{
	padding: 0px 20px;
	border: #E6E6E6 1px solid;
	margin: -1px 40px;
}

p.faq_icon{
	font-weight: bold;
	color: #008E72;
	padding-right: 10px;
	font-size: 1.2rem;
}

.faq_quest{
	font-weight: bold;
}

.faq_cnt_wrap input {
    display: none;
}

.faq_cnt_wrap label {
    display: block;
    position: relative;
    padding: 1rem 2.5rem 1rem 0.5rem;
    cursor: pointer;
	display: flex;
	align-items: center;
	position: relative;
   }
   
.faq_cnt_wrap label:after {
    content: '';
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border-right: solid 2px #008E72;
    border-bottom: solid 2px #008E72;
    transform: rotate(45deg) translate(100%, 100%);
    position: absolute;
    top: -0.2rem;
    right: 0;
    margin-top: 0.5rem;
    margin-right: 1rem;
}

.faq_cnt_wrap input:checked ~ label:after {
    transform: rotate(-135deg) translate(-100%, -100%);
    margin-top: 0.75rem;
 }

.faq_cnt_wrap .faq_answer{
	font-size: 1rem;
	height: 0px;
    opacity: 0;
	padding: 0 40px 0 30px;
}

.faq_cnt_wrap  input:checked ~ p {
    height: auto;
    opacity: 1;
	padding: 0 40px 0 30px;
	margin-bottom: 30px;
}

.faq_cnt_wrap  .faq_btn a{
	background-color: #008E72;
	padding: 8px 0 8px 0;
	margin-top: 10px;
	display: block;
	width: 30%;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	letter-spacing: 0.1rem;
	border-radius: 0.4rem;
}

/*------------------------ SPサイズ------------------------*/
@media screen and (max-width:768px){

.sp_br,.faq_ttl_wrap_sp{
	display: block;
}

.faq_wrap{
	margin-bottom: 60px;
}

.faq_cnt_wrap{
	padding: 0 10px;
	margin: -1px 20px;
}

.faq_ttl_wrap_sp{
	display: flex;
	margin: 0 20px 40px 20px;
	padding-bottom: 14px;
	border-bottom: 1px solid #008E72;
}

.faq_ttl_wrap_sp img{
	width: 40px;
	height: 100%;
	margin-right: 10px;
	padding-top: 2px;
}

.flow_ttl p{
	font-weight: bold;
	font-size: 1.2rem;
	color: #008E72;
}

.faq_cnt_wrap label {
	align-items: flex-start;
	padding-right: 40px;
}

.faq_cnt_wrap .faq_icon{
	margin-top: -6px;
	font-size: 1.6em;
}

.faq_cnt_wrap  .faq_btn a{
	background-color: #008E72;
	padding: 8px 40px;
	margin-top: 10px;
	display: block;
	width: 100%;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	letter-spacing: 0.1rem;
	border-radius: 0.4rem;
}

}