@charset "UTF-8";

/* ========================================
  @media screen and (min-width: 768px),print 
======================================== */
@media screen and (min-width: 768px), print {
/* faq
-------------------------------------*/
#faq .p-header__mv {
	margin-bottom: 74px;
}

#faq .p-faq {

}

#faq .p-faq .l-inner.l-faq {
	margin-inline: auto;
	position: relative;
	width: min(95%, 1100px);
}

#faq .p-faq .p-faq__en {
	margin-bottom: 31px;
	text-align: center;
}

#faq .p-faq .p-faq__ttl {
	font-size: 54px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5185185185;
	margin-bottom: 68px;
	text-align: center;
}

#faq .p-faq .p-faq__items {
	border-top: 2px solid #262626;
}

#faq .p-faq .p-faq__item {
	border-bottom: 2px solid #262626;
	padding-block: 24px;
}

#faq .p-faq summary {
	display: block;
	margin-inline: auto;
	width: min(95%, 1340px);
}

#faq .p-faq summary::-webkit-details-marker {
	display: none;
}

#faq .p-faq .p-faq__qu {
	display: block;
	position: relative;
	width: min(100%, 1100px);
  padding-inline: 64px;
}

#faq .p-faq .p-faq__qu::before,
#faq .p-faq .p-faq__qu::after {
	background: #262626;
	content: "";
	position: absolute;
	top: 10px;
}

#faq .p-faq .p-faq__qu::before {
	height: 2px;
	right: 0px;
	width: 24px;
  top: 21px;
}

#faq .p-faq .p-faq__qu::after {
	height: 24px;
	right: 11px;
	transition: rotate 0.3s ease;
	width: 2px;
}

#faq .p-faq details[open] .p-faq__qu::after {
	rotate: 90deg;
}

#faq .p-faq .p-faq__qu-txt {
	color: #016FC6;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 2.4166666667;
	position: relative;
}

#faq .p-faq .p-faq__qu-txt:before {
	background: url(../images/faq/q.svg) no-repeat center center/contain;
	content: "";
	height: 32px;
	left: -62px;
	position: absolute;
  top: 0px;
	width: 16px;
}

#faq .p-faq .p-faq__an {
	margin-block: 24px -35px;
}

#faq .p-faq .p-faq__an-txt {
	display: block;
	margin-inline: auto;
	position: relative;
	width: min(95%, 1340px);
}

#faq .p-faq .p-faq__an-txt p {
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.04em;
	line-height: 2.4166666667;
	width: min(100%, 1100px);
  padding-inline: 64px;
}

#faq .p-faq .p-faq__an-txt:before {
	background: url(../images/faq/a.svg) no-repeat center center/contain;
	content: "";
	height: 32px;
	left: 0;
	position: absolute;
	top: 6px;
	width: 16px;
}

}


/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
/* faq
-------------------------------------*/
#faq .p-header__mv {
	margin-bottom: 4.324vw;
}

#faq .p-header__mv .p-header__mv-contents-left .en img {
  width: 25.6vw;
}

#faq .p-faq {
	margin-bottom: 28.986vw;
}

#faq .p-faq .l-inner.l-faq {
	margin-inline: auto;
	position: static;
	width: min(95%, 89.3vw);
}

#faq .p-faq .p-faq__en {
	margin-bottom: 0.28vw;
	text-align: center;
}

#faq .p-faq .p-faq__en img {
  width: 12vw;
}

#faq .p-faq .p-faq__ttl {
	font-size: 7.246vw;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 2.7333333333;
	margin-bottom: 2.213vw;
	text-align: center;
}

#faq .p-faq .p-faq__items {
	border-top: 2px solid #262626;
	margin-bottom: 10.87vw;
}

#faq .p-faq .p-faq__item {
	border-bottom: 2px solid #262626;
	padding-block: 10.488vw;
}

#faq .p-faq summary {
	display: block;
	width: 100%;
}

#faq .p-faq summary::-webkit-details-marker {
	display: none;
}

#faq .p-faq .p-faq__qu {
	display: block;
	position: relative;
}

#faq .p-faq .p-faq__qu::before,
#faq .p-faq .p-faq__qu::after {
	background: #262626;
	content: "";
	position: absolute;
	top: 4vw;
	translate: none;
}

#faq .p-faq .p-faq__qu::before {
	height: 0.483vw;
	right: 0px;
	width: 4.348vw;
}

#faq .p-faq .p-faq__qu::after {
	height: 4.348vw;
	right: 1.932vw;
	top: 2vw;
	transition: rotate 0.3s ease;
	width: 0.483vw;
}

#faq .p-faq details[open] .p-faq__qu::after {
	rotate: 90deg;
}

#faq .p-faq .p-faq__qu-txt {
	color: #016FC6;
	display: inline-block;
	font-size: 4.348vw;
	font-weight: 500;
	letter-spacing: 0.06em;
	line-height: 1.7777777778;
	padding-inline: 10.386vw 0;
	position: relative;
	width: 79.71vw;
}

#faq .p-faq .p-faq__qu-txt:before {
	background: url(../images/faq/q.svg) no-repeat center center/contain;
	content: "";
	height: 8.213vw;
	left: 0;
	position: absolute;
	top: 0;
	width: 5.797vw;
}

#faq .p-faq .p-faq__an {
	margin-block: 5.87vw -6vw;
}

#faq .p-faq .p-faq__an-txt {
	display: block;
	padding-inline: 10.386vw 0;
	width: 100%;
  position: relative;
}

#faq .p-faq .p-faq__an-txt p {
	font-size: 3.865vw;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 2.25;
	width: 75.362vw;
}

#faq .p-faq .p-faq__an-txt:before {
	background: url(../images/faq/a.svg) no-repeat center center/contain;
	content: "";
	height: 8.213vw;
	left: 0;
	position: absolute;
	top: 1vw;
	width: 5.797vw;
}

}