#main {
	max-width: 1140px;
	margin: auto;
}

.anchor-nav {
	margin-bottom: 2rem;
}

.white_box {
	background: #fff;
	padding: 45px 60px;
	border-radius: 20px;
	margin-bottom: 40px;

	& h2 {
		color: var(--main-color);
		margin-bottom: 30px;
		font-size: 2.5rem;
		text-align: center;
	}

	dl {
		margin-bottom: 50px;

		dt {
			cursor: pointer;
			position: relative;
			font-weight: 600;
			font-size: 1.4rem;
			padding: 2.1875rem 4.6875rem 2.1875rem 5.125rem;
			background: var(--gradient4);
			border-radius: 20px;
















			&.on {
				border-radius: 20px 20px 0 0;
			}

			&:before {
				position: absolute;
				content: "";
				top: 0;
				bottom: 0;
				left: 1.6875rem;
				width: 2.3125rem;
				height: 2.0625rem;
				margin: auto;
				background: url(../img/faq/icon_q2.svg) center / 100% 100%;
				background-size: cover;
			}

			&:after {
				position: absolute;
				content: "";
				top: 0;
				bottom: 0;
				right: 25px;
				width: 29px;
				height: 29px;
				margin: auto;
				background: url(../img/faq/ico_open.svg) center / 100% 100%;
				background-size: cover;
			}

			&.on:after {
				position: absolute;
				content: "";
				top: 0;
				bottom: 0;
				right: 25px;
				width: 29px;
				height: 29px;
				margin: auto;
				background: url(../img/faq/ico_close.svg) center / 100% 100%;
				background-size: cover;
			}
		}

		dd {
			padding: 1.25rem 4.6875rem 1.25rem 5.125rem;
			border-radius: 0 0 20px 20px;
			position: relative;
			display: none;















			&:before {
				position: absolute;
				content: "";
				top: 1.875rem;
				bottom: auto;
				left: 1.6875rem;
				width: 2.3125rem;
				height: 2.0625rem;
				margin: auto;
				background: url(../img/faq/icon_a2.svg) center / 100% 100%;
				background-size: cover;
			}

			& p {
				margin-bottom: 1rem;
			}

			& p:last-of-type {
				margin-bottom: 1rem;
			}

			& .a_ul {
				text-decoration: underline;
				color: var(--main-color);
			}

			& .tel {
				font-size: 1.6rem;
				color: var(--main-color);
				font-weight: 600;
			}
		}
	}

	dl:last-of-type {
		margin-bottom: 0px;
	}
}


@media (max-width:767px) {
	#faq .fv {
		padding-top: 16vw;
	}

	#faq header.overlay-heading.white.page-title {
		margin-bottom: 25vw;
	}

	#faq h2 {
		font-size: 1.4rem;
	}

	#faq .white_box {
		padding: 4vw 4vw;
	}

	#faq dt {
		font-size: 1rem;
		padding: 2rem 3rem 2rem 3.5rem;

		&:before {
			/*
                text-align: center;
font-family: "A-OTF UD Shin Go Pro";
font-size: 42px;
font-style: normal;
font-weight: 400;
line-height: 120%;
text-transform: uppercase;
                content: "Q";
                    background: var(--gradation, linear-gradient(83deg, #AF90E5 2.91%, #65BEFF 103.49%));
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
                    transform:skew(-15deg);
                    */
			left: 1.25rem;
			width: 1.5625rem;
			height: 1.4375rem;
		}
		&::after {
			right: 0.75rem;
			width: 1.8125rem;
			height: 1.8125rem;
		}
	}
	#faq dd {
		padding: 2rem 3rem 2rem 3.5rem;
	}
	#faq dd::before {
		left: 1.25rem;
		width: 1.5625rem;
		height: 1.4375rem;
	}
}
