@charset "utf-8";
/* ===================================================
	Faq CSS
====================================================== */

#contents_wrap {
	color: var(--color-06);
}
#main_img .main_tit .garamond {
	text-transform: uppercase;
}
.c_nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
}
.c_nav li {
	width: 100%;
}
.c_nav li a {
	position: relative;
	display: block;
	border: 1px solid #aaa;
	padding: 15px 15px 20px;
	background-color: rgba(255,255,255,0.5);
	text-align: center;
	overflow: hidden;
}
.c_nav li a::after {
	position: absolute;
	left: calc(50% - 3px);
	bottom: 10px;
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	border-right: 1px solid;
	border-bottom: 1px solid;
	transform: rotate(45deg);
	transition: bottom 0.4s, opacity 0.2s;
}
#sec_lead .c_nav {
	margin-top: 90px;
}

@media screen and (min-width: 601px) {
	.c_nav {
		gap: 20px 1.6%;
	}
	.c_nav li {
		width: 23.8%;
	}
	.c_nav li a {
		padding: 22px 15px;
		font-size: 18px;
	}
}
@media screen and (hover: hover) and (min-width: 601px) {
	.c_nav li a:hover::after {
		bottom: 0;
		opacity: 0;
	}
}
@media screen and (max-width: 600px) {
	#sec_lead .c_nav {
		margin-top: 50px;
	}
	.lead_type_1 {
		background-position: center 5%;
	}
	[class^="lead_type_"] .tit {
		font-size: 20px;
		text-align: left;
	}
}


/* ---------------------------------------------------
	.faq_list
------------------------------------------------------ */
[id^="about_"] {
	padding-top: 80px;
}
[id^="about_"]:last-of-type {
	padding-bottom: 80px;
}
#about_stay {
	margin-top: -80px;
}
.faq_list h2 {
	margin-bottom: 25px;
	font-size: 26px;
}
.faq_list h2::first-letter {
	color: var(--color-02);
}
.faq_list>dl {
	border: 1px solid #aaa;
	background-color: rgba(255,255,255,0.5);
	transition: background-color 0.5s;
}
.faq_list>dl+dl {
	margin-top: 20px;
}
.faq_list .acc_tit {
	position: relative;
	padding: 35px 75px 35px 100px;
	font-size: 18px;
}
.faq_list .acc_tit::before {
	position: absolute;
	top: 30px;
	left: 40px;
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	padding-top: 2px;
	box-sizing: border-box;
	content: 'Q';
	font-size: 22px;
	font-family: "Cormorant Garamond", serif;
	background-color: var(--color-02);
	color: #fff;
	text-align: center;
}
.faq_list .acc_tit::after {
	position: absolute;
	top: calc(50% - 11px);
	right: 35px;
	content: '';
	display: block;
	width: 22px;
	aspect-ratio: 1/1;
	background: url(../../faq/img/faq_arrow.svg)no-repeat center/contain;
}
.faq_list .acc_tit.active::after {
	transform: scale(1, -1);
}
.faq_list .acc_contents {
	padding: 0 75px 35px 100px;
	color: #000;
}
.faq_list .acc_contents a {
	color: var(--color-02);
}

@media screen and (hover: hover) and (min-width: 601px) {
	.faq_list>dl:has(.acc_tit:hover) {
		cursor: pointer;
		background-color: rgba(239,225,226,0.5);
	}
}
@media screen and (max-width: 600px) {
	[id^="about_"] {
		padding-top: 50px;
	}
	[id^="about_"]:last-of-type {
		padding-bottom: 50px;
	}
	#about_stay {
		margin-top: -40px;
	}
	.faq_list h2 {
		margin-bottom: 15px;
		font-size: 20px;
	}
	.faq_list .acc_tit {
		padding: 18px 30px 18px 50px;
		font-size: 16px;
	}
	.faq_list .acc_tit::before {
		top: 15px;
		left: 10px;
		width: 30px;
		height: 30px;
		padding: 0;
		font-size: 19px;
	}
	.faq_list .acc_tit::after {
		top: 23px;
		right: 12px;
		width: 13px;
	}
	.faq_list .acc_contents {
		padding: 0 30px 20px 50px;
	}
}

