@charset "utf-8";
/* ===================================================
	Other CSS
	スタイルが極端に少なくなるページ等、このCSSにまとめて記述する。
====================================================== */
/* ---------------------------------------------------
	Policy
------------------------------------------------------ */

#policy #main_img .main_cap .cap_en { font-size: clamp(1.5rem, calc(0.773rem + 3.636vw), 2.25rem);; }

#policy section[id^=sec0] { padding: clamp(55px, 9.091vw, 100px) 0 clamp(75px, 10.909vw, 120px); }
#policy section[id^=sec0] .cmn_tit01 { margin-bottom: clamp(40px, 5.909vw, 65px); }
#policy section[id^=sec0] .tit01 { margin: 0 0 10px; font-size: 16px; line-height: 1.6; }
#policy section[id^=sec0] p + .tit01,
#policy section[id^=sec0] ul + .tit01,
#policy section[id^=sec0] ol + .tit01 {
	margin-top: clamp(40px, 5.455vw, 60px);
	padding-top: clamp(40px, 5.455vw, 60px);
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}
#policy section[id^=sec0] p + p,
#policy section[id^=sec0] p + ul,
#policy section[id^=sec0] p + ol,
#policy section[id^=sec0] ul + p,
#policy section[id^=sec0] ol + p {
	margin: 15px 0 0;
}
#policy section[id^=sec0] section[id^=sec] :where(p, ul, ol) a { text-decoration: underline; }
#policy section[id^=sec0] .dot_list {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 5px;
}
#policy section[id^=sec0] .dot_list > li {
	display: grid;
	grid-template-columns: subgrid;
	grid-column: span 2;
}
#policy section[id^=sec0] .dot_list > li::before { content: '・';}

#policy section[id^=sec0] :where(ol, ul) > li + li { margin-top: 0.5em; }
#policy section[id^=sec0] :where(ol, ul) :where(ol, ul) { margin-top: 10px; }
#policy section[id^=sec0] .num_list01 > li { padding-left: 2.6em; text-indent: -2.6em; }
#policy section[id^=sec0] .num_list02 > li { padding-left: 1.12em; text-indent: -1.12em; }
#policy section[id^=sec0] .num_list03 > li { padding-left: 2.04em; text-indent: -2.04em; }
#policy section[id^=sec0] .indent { padding-left: 1.12em; text-indent: -1.12em; }
#policy section[id^=sec0] .indent + ol { padding-left: 1.12em; text-indent: -1.12em; }

#policy #sec01 { counter-reset: tit_number 0; }
#policy #sec01 .tit01 { display: flex; gap: 5px; counter-increment: tit_number 1;}
#policy #sec01 .tit01::before { content: counter(tit_number) ". "; }

#policy .faq_list {
	margin-top: clamp(40px, 5.455vw, 60px);
	padding-top: clamp(40px, 5.455vw, 60px);
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}
#policy .faq_list .cmn_accordion .acc_con { display: flex; gap: 5px; align-items: flex-start; padding: 10px 15px 20px;}
#policy .faq_list .cmn_accordion .acc_tit span:not(.icon) { margin: 0 auto 0 5px;}
#policy .faq_list dt:before,
#policy .faq_list dd:before { display: flex; align-items: center; justify-content: center; }
#policy .faq_list dt::before { content: 'Q.'; color: #fff; }
#policy .faq_list dd::before { content: 'A.'; }

@media screen and (min-width: 651px) {
	#policy #main_img .main_cap .cap_en { font-size: clamp(1.5rem, calc(0.773rem + 3.636vw), 2.25rem);; }

	#policy section[id^=sec0] .tit01 {font-size: 25px; margin: 0 0 20px;}
	#policy section[id^=sec0] p + p,
	#policy section[id^=sec0] p + ul,
	#policy section[id^=sec0] p + ol,
	#policy section[id^=sec0] ul + p,
	#policy section[id^=sec0] ol + p {
		margin: 20px 0 0;
	}
}


/* ---------------------------------------------------
404
------------------------------------------------------ */
#error section { }

@media screen and (min-width: 651px) {
}
