@charset "UTF-8";
/******************
* faq共通
******************/
.inner_wrap {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
/******************
* リード文
******************/
.faq_page .lead_txt {
	padding: 70px 0;
}
.faq_page .lead_txt .about_title__type02 {
	font-size: 28px;
}
.faq_page .lead_txt .cta-area {
	margin-top: 40px;
}
.faq_page .lead_txt .parts_lead {
	padding: 0;
	margin: 2.5rem auto 0;
}
@media (max-width: 767px) {
	.faq_page .lead_txt .about_title__type02 {
		font-size: 1.25rem;
	}
	.faq_page .lead_txt {
		padding: 2rem 0;
	}
}
/******************
* 人気のご質問
******************/
.faq_page .popular_q {
	background-color: #cbece8;
	padding: 60px 0 100px;
}
@media (max-width: 767px) {
	.faq_page .popular_q {
		padding: 2rem 0;
	}
}
/******************
* QA タブ
******************/
.tab_btn_wrap {
	background-color: #cbece8;
	border-bottom: 6px solid #006900;
	padding-top: 20px;
}
.tab_btn_wrap .about_title__type02{
	color: #006900;
}
.tab_wrap {
	display: flex;
	justify-content: space-between;
}
.tab_wrap li {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 22px 20px;
	cursor: pointer;
	background: #fff;
	border: 1px solid #ADADAD;
	color: #ADADAD;
	font-weight: 500;
	border-radius: 10px 10px 0 0;
	margin-left: -1px;
	width: calc(25% + 1px);
	text-align: center;
	font-size: 24px;
}
.tab_wrap li.active {
	cursor: pointer;
	background: #006900;
	border: 1px solid #006900;
	color: #fff;
}
.tab_inner {
	display: none;
}
.tab_inner.show {
	display: block;
}
.tab_inner_wrap {
	background-color: #F2F5F6;
	padding: 60px 0;
}
@media (max-width: 768px) {
	.tab_btn_wrap .inner_wrap {
		padding-left: 10px;
padding-right: 10px;
}
	.tab_wrap {
		align-items: flex-end;
	}
	.tab_wrap li {
		padding: 5px 8px;
		font-size: 11px;
		height: 60px;
		min-height: 60px;
		flex: initial;
	}
	.tab_inner_wrap {
		padding: 2rem 0;
	}
}
/******************
* QA アコーディオン
******************/
.ac_box {
	background: #fff;
	overflow: hidden;
	border-radius: 20px;
	box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.2);
	margin-bottom: 40px;
}
.ac_box:last-child {
	margin-bottom: 0;
}
.ac_box .ac_open {
	padding: 50px;
	cursor: pointer;
}
.ac_box .ac_open .flex_box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 30px;
	width: 100%;
}
.ac_box .ac_open .plus-btn {
	border: 1px solid #01a291;
	width: 200px;
	padding: 20px;
	font-size: 20px;
	text-align: center;
	background-color: #01a291;
	border-radius: 10px;
	color: #fff;
	position: relative;
}
.ac_box .ac_open.active .plus-btn {
	background-color: #fff;
	color: #01a291;
}
.ac_box .ac_open .plus-btn::before, .ac_box .ac_open .plus-btn::after {
	position: absolute;
	content: "";
	display: block;
	transition: all 0.4s;
	background: #fff;
	right: 10px;
	top: 50%;
	width: 15px;
	height: 2px;
	transform: translate(-50%, -50%);
}
.ac_box .ac_open .plus-btn::before {
	transform: translate(-50%, -50%) rotate(90deg);
}
.ac_box .ac_open.active .plus-btn:before, .ac_box .ac_open.active .plus-btn:after {
	transform: translate(-50%, -50%) rotate(0deg);
	background: #01a291;
}
.ac_box .ac_open.active .plus-btn:before {
	transform: translate(-50%, -50%) rotate(0deg);
}
.ac_box .ac_open .ttl_area {
	font-size: 28px;
	flex: 1;
}
.ac_box .ac_open .ttl_area .q_ttl, .ac_box .ac_open .ttl_area .a_ttl {
	position: relative;
	padding-left: 70px;
	font-weight: bold;
}
.ac_box .ac_open .ttl_area .q_ttl {
	color: #01a291;
	margin-bottom: 30px;
}
.ac_box .ac_open .ttl_area .a_ttl {
	color: #ff9933;
}
.ac_box .ac_open .ttl_area .q_ttl::before, .ac_box .ac_open .ttl_area .a_ttl::before {
	content: "";
	position: absolute;
	background-size: contain;
	width: 50px;
	height: 50px;
	left: 0;
}
.ac_box .ac_open .ttl_area .q_ttl::before {
	background-image: url("../images/faq/ac_icon_Q.svg");
}
.ac_box .ac_open .ttl_area .a_ttl::before {
	background-image: url("../images/faq/ac_icon_A.svg");
}
.ac_box .a_txt {
	display: none;
	padding: 0 50px 50px 50px;
}
.ac_box .a_txt .answer_top {
	padding-top: 30px;
	border-top: 1px solid #cdcdcd;
	display: flex;
	flex-direction: row;
	gap: 30px;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}
.ac_box .a_txt .answer_top .img_area {
	width: 140px;
}
.ac_box .a_txt .answer_top p {
	flex: 1;
	font-size: 20px;
	overflow-wrap: break-word;
}
.ac_box .a_txt p a {
	color: #01a291;
	text-decoration: underline;
	word-wrap: break-word !important;
}
.ac_box .a_txt .answer_bottom {
	padding-top: 30px;
}
.ac_box .a_txt .answer_bottom .ttl {
	font-size: 25px;
	font-weight: bold;
	position: relative;
	padding-left: 30px;
	margin-bottom: 30px;
}
.ac_box .a_txt .answer_bottom .ttl::before {
	content: "";
	background-color: #01a291;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 0;
	top: 12px;
}
.ac_box .a_txt .answer_bottom .table_style {
	border-radius: 20px;
	overflow: hidden;
}
.ac_box .a_txt .answer_bottom .table_style table {
	width: 100%;
	table-layout: fixed;
}
.ac_box .a_txt .answer_bottom .table_style table th, .ac_box .a_txt .answer_bottom .table_style table td {
	font-size: 20px;
	padding: 15px 30px;
	border: 1px solid #fff;
}
.ac_box .a_txt .answer_bottom .table_style table th {
	color: #fff;
	background-color: #01a291;
}
.ac_box .a_txt .answer_bottom .table_style table td {
	background-color: #f2f5f6;
	font-weight: normal;
}
.ac_box .a_txt .answer_bottom .table_style table td.bg {
	background-color: #cbece8;
	font-weight: bold;
}
.ac_box .a_txt .answer_bottom .table_style table .w40 {
	width: 40%;
}
.ac_box .a_txt .answer_bottom .table_style table .w60 {
	width: 60%;
}
.ac_box .a_txt .answer_bottom .table_style table td span {
	color: #d03100;
	font-weight: bold;
}
@media (max-width: 768px) {
	.ac_box .ac_open {
		padding: 20px;
	}
	.ac_box .ac_open .flex_box {
		display: block;
	}
	.ac_box .ac_open .ttl_area {
		font-size: 18px;
	}
	.ac_box .ac_open .ttl_area .q_ttl, .ac_box .ac_open .ttl_area .a_ttl {
		margin-bottom: 20px;
		padding-left: 53px;
	}
	.ac_box .ac_open .ttl_area .q_ttl::before, .ac_box .ac_open .ttl_area .a_ttl::before {
	width: 40px;
	height: 40px;
}
	.ac_box .ac_open .plus-btn {
		display: block;
		width: 165px;
		padding: 11px;
		font-size: 14px;
		margin-left: auto;
		margin-right: 0;
	}
	.ac_box .ac_open .plus-btn::before, .ac_box .ac_open .plus-btn::after {
width: 12px;
}
	.ac_box .a_txt {
		padding: 0 20px 20px 20px;
	}
	.ac_box .a_txt .answer_top {
		padding-top: 20px;
		gap: 20px;
	}
	.ac_box .a_txt .answer_top .img_area {
		width: 85px;
	}
	.ac_box .a_txt .answer_top p {
		font-size: 16px;
	}
	.ac_box .a_txt .answer_bottom .scroll_wrap {
		overflow: scroll;
	}
	.ac_box .a_txt .answer_bottom .scroll_wrap img, .ac_box .a_txt .answer_bottom .scroll_wrap .table_style {
		width: 568px;
		max-width: initial;
	}
	.ac_box .a_txt .answer_bottom .table_style table th, .ac_box .a_txt .answer_bottom .table_style table td {
		font-size: 14px;
		padding: 15px;
	}
	.ac_box .a_txt .answer_bottom .ttl {
		font-size: 18px;
		padding-left: 27px;
		margin-bottom: 20px;
	}
	.ac_box .a_txt .answer_bottom .ttl::before {
		width: 15px;
		height: 15px;
		top: 8px;
	}
}