@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
}
body.overflow-hidden {
  overflow: hidden;
}

main *,
main *::before,
main *::after, header *,
header *::before,
header *::after, footer *,
footer *::before,
footer *::after {
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  font-weight: bold;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
	background: #000;
}
main article, main aside, main details, main figcaption, main figure, main footer, main header, main hgroup, main menu, main nav, main section, main main, header article, header aside, header details, header figcaption, header figure, header footer, header header, header hgroup, header menu, header nav, header section, header main, footer article, footer aside, footer details, footer figcaption, footer figure, footer footer, footer header, footer hgroup, footer menu, footer nav, footer section, footer main {
  display: block;
}
main ul, main li, header ul, header li, footer ul, footer li {
  list-style: none;
}
main blockquote, main q, header blockquote, header q, footer blockquote, footer q {
  quotes: none;
}
main blockquote::before, main blockquote::after, main q::before, main q::after, header blockquote::before, header blockquote::after, header q::before, header q::after, footer blockquote::before, footer blockquote::after, footer q::before, footer q::after {
  content: "";
  content: none;
}
main address, header address, footer address {
  font-style: normal;
}
main ins, header ins, footer ins {
  color: #000;
  text-decoration: none;
}
main mark, header mark, footer mark {
  color: #000;
  font-style: italic;
  font-weight: bold;
}
main del, header del, footer del {
  text-decoration: line-through;
}
main table, header table, footer table {
  border-collapse: collapse;
  border-spacing: 0;
}
main hr, header hr, footer hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #444;
  margin: 1em 0;
  padding: 0;
}
main input, main select, header input, header select, footer input, footer select {
  vertical-align: middle;
}
main button, header button, footer button {
  margin: 0;
}
main a,
main a:link,
main a:visited, header a,
header a:link,
header a:visited, footer a,
footer a:link,
footer a:visited {
  text-decoration: none;
}
main img, header img, footer img {
  max-width: 100%;
  height: auto;
}




/*==================================
*
* main
*
===================================*/
main {
}
main h2 {
  font-size: 24px;
  font-weight: 700;
	margin-top: 70px;
}
main .wrap {
  max-width: 960px;
  margin: auto;
}


/*==================================
*
* FAQ
*
===================================*/
#faq {
	background: #000;
	color: #fff;
}
#faq h1 {
	padding-top: 70px;
	text-align: center;
}
#faq h2 {
	color: #D1A326;
	border-bottom: 1px solid #767676;
	padding-bottom: 24px;
	margin-top: 70px;
}
#faq h2:first-child {
	margin-top: 36px;
}
#faq h3 {
	border-bottom: 1px solid #767676;
	padding-bottom: 24px;
	margin-top: 20px;
	margin-left: 4px;
}

@media screen and (max-width: 767px) {
	#faq h1 {
		padding-top: 28px;
	}
	#faq h1 img {
		width: 138px;
		height: auto;
	}
#faq h2 {
	padding-left: 0.7em;
}	
}
#faq details {
	border-bottom: 1px solid #767676;
	font-size: 18px;
}
details {
  --arrow-size: 18px;
}

details summary {
  box-sizing: border-box;
  position: relative;
  display: block;
  font-weight: 700;
  padding: 1em;
  cursor: pointer;
}

details summary::-webkit-details-marker {
  /* iOSで表示されるデフォルトの三角形アイコンを消す */
  display: none;
}


.qst::before {
  content: "Q.";
  position: absolute;
  top: 0;
  left: 0;
	color: #D1A326;
}
.ans::before {
  content: "A.";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
}
details summary::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0.8em;
  bottom: 0;
  display: block;
  width: var(--arrow-size);
  height: calc(var(--arrow-size) * 0.6);
  margin: auto;
  background: #fff;
  clip-path: polygon(100% 13%, 50% 100%, 0 13%, 8% 0, 50% 73%, 92% 0);
}
details[open] summary::after {
  transform: rotate(180deg);
}

details div {
  position: relative;
	font-weight: normal;
	line-height: 1.5;
}
details div.qa {
	border-bottom: none;
}
details div.qst {
  padding: 0 0 0 1.5em;
  margin: 1em 1em 0.5em 1em;
}
details div.qst:first-child {
  margin: 0em 1em 0.5em 1em;
}
details div.ans {
  margin: 0 1em 1.5em 1em;
  border-bottom: 1px solid #767676;
  padding: 0 0 1.5em 1.5em;
}
details div div:last-child .ans {
	border-bottom: none;
  padding: 0 0 1em 1.5em;
}

@media screen and (max-width: 767px) {
	details summary {
		padding: 20px 36px 20px 1em;
	}
	details summary::before {
	  top: 20px;
	  left: 12px;
	}
	details div::before {
	  top: 12px;
	  left: 12px;
	}
	details div {
	font-size: 16px;
	}
}



summary::-webkit-details-marker { display: none; }

summary::marker { display: none; }

#faq a {
	color: #fff;
	text-decoration: underline;
	word-break: break-all;
	font-weight: normal;
}
#faq .btn {
	text-align: center;
}
#faq .btn a {
	display: inline-block;
	width: 300px;
	height: 70px;
	line-height: 70px;
	background: #fff;
	border-radius: 50px;
	color: #000;
	text-align: center;
	margin: 30px auto;
	text-decoration: none;
}






