@charset "UTF-8";

/* ===========================================================

  Nano Creative Company - FAQ PC Styles

=========================================================== */

/* -----------------------------------------------------------
  Page Header
----------------------------------------------------------- */
.page-header.sub h3 { width: 150px; }

/* -----------------------------------------------------------
  Section
----------------------------------------------------------- */

/* Intro
----------------------------------------------------------- */
.intro {
  padding: 140px 0 20px;
  text-align: center;
}
.intro h2 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: calc(36 / 16);
  letter-spacing: 0.05em;
}
.intro figure {
  width: 210px;
  height: auto;
  margin: 50px auto 0;
}

/* FAQ
----------------------------------------------------------- */
.faq-unit { margin: 0 0 200px; }
.faq {
  border-radius: 15px;
  padding: 80px 95px;
  background-color: var(--wht);
  -webkit-box-shadow: 0px 0px 8px 8px rgba(0,0,0,0.025);
  -moz-box-shadow: 0px 0px 8px 8px rgba(0,0,0,0.025);
  box-shadow: 0px 0px 8px 8px rgba(0,0,0,0.025);
}
.faq dl:not(:first-of-type) { margin: 45px 0 0; }
.faq dl dt {
  position: relative;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: var(--ncc-green);
  padding: 0 0 0 45px;
  cursor: pointer;
  margin: 0 0 15px;
}
.faq dl dt::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 32px;
  height: 32px;
  background: url(../images/icon_question.svg) no-repeat 0 0;
  background-size: cover;
}
.faq dl dt::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 32px;
  height: 32px;
  background: url(../images/arrow_qa.svg) no-repeat 0 0;
  background-size: cover;
}
.faq dl dt.is-active::after {
  transform: rotate(180deg) translateY(-50%);
  transform-origin: 50% 0;
}
.faq dl dd {
  display: none;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: calc(24 / 16);
  padding: 0 45px;
}
.faq dl dd a {
  color: var(--ncc-green);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--ncc-green);
  text-decoration-color: var(--ncc-green);
  transition: all .3s;
}
.faq dl dd a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.btn-unit {
  text-align: center;
  margin: 80px auto 0;
}
.btn-unit p {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  margin: 0 0 30px;
}
.btn-unit a.bcc-btn {
  width: 300px;
  background-color: var(--wht);
}
.btn-unit a.bcc-btn::before {
  background-color: #fff455;
}