:root {
  --body: #000;
  --link: #000;
}

/*--------------------------------------------
FAQ
---------------------------------------------*/

#faq dl > div {
  counter-increment: number;
}

#faq button {
  letter-spacing: 0.11em;
  display: flex;
  text-align: left;
  align-items: flex-start;
}

#faq button:before {
  order: -2;
  content: "";
  display: block;
  background: url("/images/ui/icon/down02.svg") center/contain no-repeat;
  flex-shrink: 0;
  transition: transform 0.1s ease-in;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  will-change: transform;
  line-height: 1;
  font-size: 0;
}

#faq button:after {
  content: counter(number, decimal-leading-zero) ".";
  order: -1;
  flex-shrink: 0;
  line-height: 1;
}

#faq button.is-open:before {
  transform: rotate(180deg);
}

#faq dd {
  letter-spacing: 0.11em;
}

@media screen and (max-width: 799px) {
  #faq .wrap {
    padding-top: calc( 68 * 100vw / 375 );
    padding-bottom: calc( 80 * 100vw / 375 );
  }

  #faq dl > div + div {
    margin-top: calc( ( 31 - 9 ) * 100vw / 375 );
  }

  #faq button {
    font-size: 1.2rem;
    line-height: 2.5;
  }

  #faq button:before {
    width: calc( 8 * 100vw / 375 );
    height: calc( 4 * 100vw / 375 );
    margin-right: calc( 9 * 100vw / 375 );
    margin-top: calc( 13 * 100vw / 375 );
  }

  #faq button:after {
    margin-top: calc( 8 * 100vw / 375 );
  }

  #faq dd {
    font-size: 1.2rem;
    line-height: 1.67;
    padding-top: calc( ( 13 - 4 ) * 100vw / 375 );
    display: none;
  }

  #faq .link01 {
    margin-top: calc( 45px - 9px );
  }
}

@media print, screen and (min-width: 800px) {
  #faq .wrap {
    padding-top: 95px;
    padding-bottom: 130px;
  }

  #faq dl > div + div {
    margin-top: calc( 52px - 10px - 10px );
  }

  #faq button {
    font-size: 1.7rem;
    line-height: 2.18;
  }

  #faq button:before {
    width: 14px;
    height: 8px;
    margin-right: 12px;
    margin-top: 14.5px;
  }

  #faq button:after {
    margin-top: 10px;
  }

  #faq dd {
    font-size: 1.7rem;
    line-height: 2.18;
    padding-top: calc( 28px - 10px - 10px );
    display: none;
  }

  #faq .link01 {
    margin-top: calc( 130px - 10px );
  }
}

