@charset "UTF-8";

.page_faq .common_page_wrap {
	/* padding: 70px 0 120px; */
	padding: 0 0 120px;
}

.faq_cont_sec .list dl {
	background: #F5F5F5;
}

.faq_cont_sec .list dl:nth-child(even) {
	background: #E3E3E3;
}

.faq_cont_sec .list dl+dl {
	margin-top: 0.6em;
}

.faq_cont_sec .list dl dt {
	display: flex;
	align-items: center;
	gap: 0 0.8em;
	padding: 20px 40px;
}

.faq_cont_sec .list dl dt .en {
	font-size: 28px;
	letter-spacing: .08em;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}

.faq_cont_sec .list dl dt .text {
	width: 100%;
	font-size: 18px;
	letter-spacing: .08em;
	font-weight: 700;
}

.faq_cont_sec .list dl dt .mark {
	width: 36px;
	aspect-ratio: 1;
	background: #fff;
	border-radius: 50%;
	display: block;
	flex-shrink: 0;
	position: relative;
}

.faq_cont_sec .list dl dt .mark::before,
.faq_cont_sec .list dl dt .mark::after {
	content: "";
	width: 2px;
	height: 41%;
	background: #3E3E3E;
	border-radius: 3px;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	transition: .4s;
}

.faq_cont_sec .list dl dt .mark::after {
	rotate: 90deg;
}

.faq_cont_sec .list dl dt.nowOpen .mark::before {
	rotate: 90deg;
}

.faq_cont_sec .list dl dd {
	border-top: 1px dotted #3E3E3E;
	margin: 0 30px;
	padding: 25px 75px 30px 55px;
}


.faq_cont_sec .list dl dd .text {
	font-size: 16px;
	letter-spacing: .08em;
	line-height: 1.6;
}

.faq_cont_sec .list dl dd .closeBtnHat {
	display: none;
}

.page_faq .faq_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	justify-content: center;
	gap: .3em;
}

.page_faq .faq_list>.faq_item {
    width: 22%;
    border-right: 1px solid #fff;
    padding: 0;
    background: transparent;
}

.page_faq .faq_list>.faq_item>a {
    width: 100%;
	padding: .6em .5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
	background-color: #27255C;
	cursor: pointer;
}

.page_faq .faq_list>.faq_item>a>span {
    display: flex;
    align-items: center;
    gap: 15px;
}

.page_faq .faq_list>.faq_item>a>span:after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    transform: rotate(-135deg);
}

.page_faq .list {
    padding-top: 70px;
}

.page_faq .cont_title {
    margin-bottom: 30px;
    font-size: 24px;
}

@media (max-width: 750px) {
	.wrap {
		max-width: 95%;
	}

	.page_faq .common_page_wrap {
		padding: 0 0 20vw;
	}

	.faq_cont_sec .list dl+dl {
		margin-top: 0.7em;
	}

	.faq_cont_sec .list dl dt {
		padding: 5vw 3vw;
	}

	.faq_cont_sec .list dl dt .en {
		font-size: 6.1vw;
	}

	.faq_cont_sec .list dl dt .text {
		font-size: 3.6vw;
		line-height: 1.5;
	}

	.faq_cont_sec .list dl dt .mark {
		width: 8.2vw;
	}

	.faq_cont_sec .list dl dd {
		margin: 0 3vw;
		padding: 4vw 0 6vw;
	}

	.faq_cont_sec .list dl dd .text {
		font-size: 3.6vw;
		letter-spacing: .06em;
	}

    .page_faq .faq_list>.faq_item {
        width: 100%;
        border-right: none;
    }

    .page_faq .faq_list>.faq_item:first-of-type {
        border-left: none;
    }

    .page_faq .list {
        padding-top: 12vw;
    }

    .page_faq .cont_title {
        margin-bottom: 5vw;
        font-size: 5vw;
    }
}