@charset "utf-8";

/* よくある質問 */
.faq_all{
	background:none;
	border:none;
	font-size:1.6rem;
	letter-spacing:0.8px;
	cursor:pointer;
	font-weight:bold;
	position:relative;
	font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif,"游ゴシック","Yu Gothic",Yu Gothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック";
	padding:0;
	margin:11px 0 10px;
	color:#333 !important;
}
.faq_all span{
	display:inline-block;
	padding:0 0 0 30px;
	text-decoration:none;
}
.faq_all span::before,.faq_all span::after{
	position:absolute;
	content:'';
	width:19px;
	height:3px;
	background:#41A43C;
	top:2px;
	bottom:0;
	left:0;
	margin:auto;
	transition:transform 0.3s;
}
.faq_all span::after{transform:rotate(90deg);}
.faq_all.open span::after{transform:rotate(0);}
.faq_all span:hover{text-decoration:underline;}
.faq_box{
	border-radius:14px;
	background:#fff;
	margin:10px 0 0;
	border:2px solid #ddd;
	transition:border .3s;
}
.faq_box:hover{border-color:#41A43C;}
.faq_h{
	position:relative;
	margin:0 !important;
}
.faq_h::before,.faq_h::after{
	position:absolute;
	content:'';
	width:19px;
	height:3px;
	background:#41A43C;
	top:0;
	bottom:0;
	right:25px;
	margin:auto;
	transition:transform 0.3s;
}
.faq_h::after{transform:rotate(90deg);}
.faq_h.open::after{transform:rotate(0);}
.faq_h button{
	display:block;
	position:relative;
	padding:25px 60px 23px 60px;
	font-size:2rem;
	letter-spacing:1px;
	cursor:pointer;
	border:none;
	background:none;
	text-align:left;
	width:100%;
	color:#333 !important;
	font-weight:bold;
	font-family:YakuHanJP,'Noto Sans CJK JP','Noto Sans JP',sans-serif,"游ゴシック","Yu Gothic",Yu Gothic,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ ゴシック";
}
.faq_h button::before{
	content:'Q.';
	font-family:"Poppins", serif;
	font-size:2.4rem;
	letter-spacing:1.2px;
	color:#41A43C;
	position:absolute;
	font-weight:bold;
	left:23px;
	top:21px;
}
.faq_txt{
	display:none;
	padding:11px 0 23px 34px;
	margin:0 23px;
	border-top:1px dotted #ddd;
	position:relative;
}
.faq_txt::before{
	content:'A.';
	font-family:"Poppins", serif;
	font-size:2.4rem;
	letter-spacing:1.2px;
	color:#41A43C;
	position:absolute;
	font-weight:bold;
	left:0;
	top:5px;
}
.faq_txt p{line-height:1.8;}
.faq_txt *:last-child{margin-bottom:0 !important;}

@media screen and (max-width:1023px){

.faq_all{
	font-size:1.4rem;
	letter-spacing:0.7px;
	margin:11px 0 14px;
}
.faq_all span{padding:0 0 0 27px;}
.faq_box{margin:6px 0 0;}
.faq_h::before,.faq_h::after{right:20px;}
.faq_h button{
	padding:19px 60px 20px 48px;
	font-size:1.8rem;
	letter-spacing:0.9px;
}
.faq_h button::before{
	font-size:2rem;
	letter-spacing:1px;
	left:18px;
	top:18px;
}
.faq_txt{
	padding:15px 0 23px 30px;
	margin:0 18px;
}
.faq_txt::before{
	font-size:2rem;
	letter-spacing:1px;
	top:9px;
}
}
@media screen and (max-width:767px){
.faq_all span{padding:0 0 0 21px;}
.faq_all span::before, .faq_all span::after,.faq_h::before, .faq_h::after{width:15px;}
.faq_h::before, .faq_h::after{right:13px;}
.faq_h button{font-size:1.5rem;letter-spacing:0.75px;padding:18px 45px 18px 41px;}
.faq_h button::before{font-size:1.8rem;letter-spacing: 0.9px;left:15px;top:15px;}
.faq_txt{margin:0 15px;padding:11px 0 18px 26px;}
.faq_txt::before{font-size:1.8rem;letter-spacing: 0.9px;top:5px}
}