@charset "UTF-8";

/*page_ttl
----------------------------------------*/
main:has(.page_ttl) {
	background-image: none;
}

/*faq_inner
----------------------------------------*/
.faq {
	padding: 5.4rem 0 13rem;
}
.faq_inner {
	max-width: 110rem;
	margin: 0 auto;
}

@media only screen and (max-width: 768px) {
	.faq {
		padding: 4.4rem 0 10.4rem;
	}
}

/*faq_category
----------------------------------------*/
.faq_category {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 5.8rem;
}
.faq_category a {
	flex: 1;
	min-width: 17.5rem;
	height: 5rem;
	border-radius: .5rem;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: .05em;
	color: #A6995A;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: .5rem 1rem;
}
.faq_category a.current {
	background: rgba(166, 153, 90, .6);
	color: #fff;
}

@media only screen and (max-width: 768px) {
	.faq_category {
		margin-bottom: 5.6rem;
		margin-inline: 2rem;
	}
	.faq_category a {
		min-width: 17rem;
		height: 4.3rem;
		font-size: 1.3rem;
		padding: .3rem 1rem;
	}
}

/*faq_list
----------------------------------------*/
.faq_list {
	max-width: 100rem;
	margin-inline: auto;
}
.faq_list_ttl {
	font-size: 1.8rem;
	letter-spacing: .15em;
	color: #004124;
	margin-bottom: 4.4rem;
	text-align: center;
	font-weight: 400;
}
.faq_list_item + .faq_list_item {
	margin-top: 1.9rem;
}
.faq_list_item_q {
	display: flex;
	align-items: center;
	gap: 2.2rem;
	width: 100%;
	padding-inline: 2.5rem;
	padding-bottom: 2.3rem;
	border-bottom: .1rem solid #C9C9C3;
	background: none;
	border-left: none;
	border-right: none;
	border-top: none;
	text-align: left;
}
.faq_list_item_q img {
	width: 2.4rem;
	height: auto;
	flex-shrink: 0;
	padding-top: .8rem;
}
.faq_list_item_q_txt {
	flex: 1;
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: .15em;
	color: #333;
}
.faq_list_item_q_icon {
	position: relative;
	width: 1.6rem;
	height: 1.6rem;
	flex-shrink: 0;
}
.faq_list_item_q_icon::before,
.faq_list_item_q_icon::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	background: #004124;
	transition: transform .3s;
}
.faq_list_item_q_icon::before {
	width: 2rem;
	height: .1rem;
	transform: translate(-50%, -50%);
}
.faq_list_item_q_icon::after {
	width: .1rem;
	height: 2rem;
	transform: translate(-50%, -50%);
}
.faq_list_item_q.open .faq_list_item_q_icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}
.faq_list_item_a {
	display: flex;
	align-items: flex-start;
	gap: 3rem;
	padding: 2rem 2.1rem 3.2rem;
}
.faq_list_item_a img {
	width: 2rem;
	height: 2.8rem;
	flex-shrink: 0;
	padding-top: .2rem;
}
.faq_list_item_a p {
	flex: 1;
	font-size: 1.3rem;
	line-height: 2.1;
	letter-spacing: .05em;
	color: #333;
}

@media only screen and (max-width: 768px) {
	.faq_list_ttl {
		font-size: 1.8rem;
		margin-bottom: 4rem;
	}
	.faq_list_item + .faq_list_item {
		margin-top: 2rem;
	}
	.faq_list_item_q {
		align-items: flex-start;
		gap: 1rem;
		padding-bottom: 1.9rem;
		padding-inline: 2.4rem 2.2rem;
	}
	.faq_list_item_q_txt {
		font-size: 1.4rem;
	}
	.faq_list_item_a {
		gap: 1.8rem;
		padding-top: 1.6rem;
	}
	.faq_list_item_a p {
		font-size: 1.3rem;
	}
	.faq_list_item_q img {
		width: 2.6rem;
		padding-top: .7rem;
	}
	.faq_list_item_q_icon {
		top: .5rem;
	}
	.faq_list_item_a {
		padding-top: 2.2rem;
	}
	.faq_list_item_a img {
		padding-top: 0;
	}
}
