@charset "utf-8";
/* CSS Document */
/* faq.css */

.faq_category {
  display: block;
  margin: calc(80 / 750 * 100%) auto;
}
.faq_category__item {
  display: block;
  box-sizing: border-box;
  padding: calc(30 / 670 * 100%) calc(100 / 670 * 100%) calc(30 / 670 * 100%) calc(30 / 670 * 100%);
  background: url(../shared/img/ic_ar_bl.svg) no-repeat calc(100% - (30 / 670 * 100%)) 50%;
  -webkit-background-size: auto calc(24 / 30 * 1em);
  background-size: auto calc(24 / 30 * 1em);
  color: var(--c-bl01);
  font-family: var(--font-ja-b);
  font-weight: 500;
  font-size: var(--fs-30);
  line-height: var(--lh-30);
  letter-spacing: 0.04em;
}
.faq_section__title {
  color: var(--c-bl01);
  font-family: var(--font-ja-b);
  font-weight: 500;
  font-size: var(--fs-36);
  line-height: var(--lh-36);
  text-align: center;
  letter-spacing: 0.04em;
  margin: calc(40 / 670 * 100%) auto  calc(40 / 670 * 100%);
}


.faq__item {
  border-bottom: 1px solid var(--c-bl02);
  padding: calc(10 / 610 * 100%) 0;
}
.faq__item:first-of-type {
  border-top: 1px solid var(--c-bl02);
}
.faq__item .faq__item--q {
  box-sizing: border-box;
  padding: calc(20 / 610 * 100%) calc(60 / 610 * 100%) calc(20 / 610 * 100%) calc(30 / 610 * 100%);
  display: block;
  cursor: pointer;
  font-size: var(--fs-30);
  line-height: calc(40 / 30 * 1em);
  color: var(--c-bl02);
  font-weight: 500;
  position: relative;
  z-index: 2;
}
.faq__item .faq__item--q:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  font-size: var(--fs-20);
  right: 1.5em;
  width: 1em;
  height: 1px;
  background: var(--c-bk);
  transform: rotate(0deg);
  transition: all .5s ease;
  opacity: 1;
}
.faq__item .faq__item--q:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  font-size: var(--fs-20);
  right: 1.5em;
  width: 1em;
  height: 1px;
  background: var(--c-bk);
  transform: rotate(90deg);
  transition: all .5s ease;
  opacity: 1;
}
.faq__item .faq--open:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  font-size: var(--fs-20);
  right: 1.5em;
  width: 1em;
  height: 1px;
  background: var(--c-bk);
  transform: rotate(90deg);
  transition: all .5s ease;
  opacity: 0;
}
.faq__item .faq--open:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  font-size: var(--fs-20);
  right: 1.5em;
  width: 1em;
  height: 1px;
  background: var(--c-bk);
  transform: rotate(180deg);
  transition: all .5s ease;
  opacity: 1;
}
.faq__item .faq__itemtext--q {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding-left: calc(50 / 520 * 100%);
  
}
.faq__item .faq__itemtext--q:before {
  content: "Q";
  font-family: var(--font-en-b);
  font-size: clamp(23px,calc(46 / 750 * 100vw),46px);
  color: var(--c-bl02);
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  
}


.faq__item .faq__itemtext--a {
  box-sizing: border-box;
  padding: 0 calc(30 / 610 * 100%) calc(20 / 610 * 100%);
  display: block;
  position: relative;
  font-size: var(--fs-26);
  line-height: var(--lh-26);
  color: var(--c-bk);
white-space: pre-line;  
}
.faq__item .faq__itemtext--a p:first-child {
  margin-top: 0;
}
.faq__item .att {
  font-size: var(--fs-20);
  line-height: var(--lh-20);
}


.faq_section {
  display: block;
  box-sizing: border-box;
  background: var(--c-wh);
  padding: calc(30 / 670 * 100%);
  margin: calc(40 / 670 * 100%) auto;
}

@media screen and (min-width:750px){
  .faq_category {
    margin: 80px auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-align-items: stretch;
      align-items: stretch;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: flex-start;
    gap: 0 30px;
    max-width: 790px;
    margin: 0 auto;
}
.faq_category__item {
  padding: 20px 80px 20px 30px;
  background: url(../shared/img/ic_ar_bl.svg) no-repeat calc(100% - (30 / 670 * 100%)) 50%;
  -webkit-background-size: auto 12px;
  background-size: auto 12px;
  font-size: var(--fs-20);
  line-height: var(--lh-20);
  letter-spacing: 0.04em;
  width: calc((100% - 30px) / 2);
  margin: 0;
}
  
.faq_section {
  display: block;
  box-sizing: border-box;
  background: var(--c-wh);
  padding: 20px 20px 50px;
  margin: 40px auto;
}
  .faq__item {
    padding: 10px 0;
    max-width: 760px;
    margin: 0 auto;
  }
.faq__item .faq__item--q {
  padding: 20px 30px;
  font-size: var(--fs-18);
}
.faq__item .faq__itemtext--a {
  padding: 0 30px 20px;
  font-size: var(--fs-16);
  line-height: var(--lh-16);
  position: relative;
}
.faq__item .att {
  font-size: var(--fs-14);
  line-height: var(--lh-14);
}
.faq__item .faq__itemtext--q {
  padding-left: 50px;
  font-size: var(--fs-20);
  line-height: var(--lh-20);
  
  
}
.faq__item .faq__itemtext--q:before {
  content: "Q";
  font-family: var(--font-en-b);
  font-size: var(--fs-26);
  color: var(--c-bl02);
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  
}
  
.faq_section__title {
  color: var(--c-bl01);
  font-family: var(--font-ja-b);
  font-weight: 500;
  font-size: var(--fs-26);
  line-height: var(--lh-26);
  text-align: center;
  letter-spacing: 0.04em;
  margin: 50px auto;
}

}
