@charset 'utf-8';

.c-accItem dd {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: .5s all;
}
.c-accItem.is-opened dd {
  height: auto;
  opacity: 1;
}

.qa__heading--en {
  display: block;
  letter-spacing: .2em;
  text-indent: .25em;
}
.qa__anchor {
  display: flex;
  flex-wrap: wrap;
  gap: 2.564vw 0;
  max-width: 89.744vw;
  margin: 0 auto 20.513vw;
  text-align: center;
}
.qa__anchor li {
  width: 100%;
  color: var(--color-purple);
}
.qa__anchor li a {
  display: block;
  padding: 1.795vw;
  border: solid 2px var(--color-purple);
  border-radius: 7.692vw;
  font-size: var(--fs-13);
  font-weight: bold;
}
.qa__sec {
  max-width: 89.744vw;
  margin-inline: auto;
  scroll-margin-top: 10vw;
}
.qa__sec + .qa__sec {
  margin-top: 25.641vw;
}
.qa__secTitle {
  margin-bottom: 2.564vw;
  padding-bottom: 5.128vw;
  border-bottom: solid 2px var(--color-purple);
  color: var(--color-purple);
  font-size: var(--fs-20);
  font-weight: bold;
}
.qa__secText {
  color: #303030;
  font-size: var(--fs-12);
  line-height: 1.8;
}
.qa__secList {
  margin-top: 11.538vw;
  border-top: solid 1px rgba(0,0,0, .2);
}
.qa__secListItem {
  border-bottom: solid 1px rgba(0,0,0, .2);
}
.qa__secListItem dt button,
.qa__secListItem dd {
  position: relative;
  font-size: var(--fs-14);
}
.qa__secListItem dt button {
  display: block;
  width: 100%;
  padding: 8.205vw 9.231vw 8.205vw 14.103vw;
  line-height: 1.4;
}
.qa__secListItem dt button::before,
.qa__secListItem dd::before {
  position: absolute;
  left: 0;
  align-content: center;
  width: 10.256vw;
  height: 10.256vw;
  border-radius: 50%;
  font-family: var(--font-en);
  font-size: var(--fs-24);
  line-height: 1;
  text-align: center;
}
.qa__secListItem dt button::before {
  content: 'Q';
  top: 6.154vw;
  background-color: var(--color-purple);
  color: #fff;
}
.qa__secListItem dd {
  padding: 0 0 0 14.103vw;
  line-height: 1.8;
}
.qa__secListItem.is-opened dd {
  padding: 1.282vw 0 8.205vw 14.103vw;
}
.qa__secListItem dd::before {
  content: 'A';
  top: 0;
  background-color: var(--color-lime);
  color: #303030;
}
.qa__secListItem dd a {
  text-decoration: underline;
}
.qa__openCloseIcon {
  position: absolute;
  top: 10.879vw;
  right: 2vw;
  display: inline-block;
  width: 1.55em;
  height: 0.1em;
  background: currentColor;
  border-radius: 0.1em;
  color: rgba(0,0,0, .4);
  line-height: 1;
  vertical-align: middle;
}
.qa__openCloseIcon::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  opacity: 1;
  transform: rotate(90deg);
  transition: .25s opacity;
}
.qa__secListItem.is-opened .qa__openCloseIcon::before {
  opacity: 0;
}

@media screen and (min-width: 768px) {
  
  .qa__anchor {
    gap: 20px 30px;
    justify-content: center;
    max-width: 900px;
    margin-bottom: 80px;
  }
  .qa__anchor li {
    width: calc((100% - 30px * 2) / 3);
  }
  .qa__anchor li a {
    padding: 7.5px;
    font-size: var(--fs-14);
  }
  .qa__sec {
    max-width: 900px;
    scroll-margin-top: 40px;
  }
  .qa__sec + .qa__sec {
    margin-top: 100px;
  }
  .qa__secTitle {
    margin-bottom: 10px;
    padding-bottom: 20px;
  }
  .qa__secText {
    font-size: var(--fs-14);
  }
  .qa__secList {
    margin-top: 62px;
  }
  .qa__secListItem dt button,
  .qa__secListItem dd {
    font-size: var(--fs-16);
  }
  .qa__secListItem dt button {
    padding: 37px 40px 37px 72px;
    line-height: 1.5;
  }
  .qa__secListItem dt button::before,
  .qa__secListItem dd::before {
    width: 50px;
    height: 50px;
    font-size: 32px;
  }
  .qa__secListItem dt button::before {
    top: 24px;
  }
  .qa__secListItem dd {
    padding: 0 0 0 72px;
  }
  .qa__secListItem.is-opened dd {
    padding: 22px 0 37px 72px;
  }
  .qa__secListItem dd::before {
    top: 11px;
  }
  .qa__openCloseIcon {
    top: 48px;
    right: 0;
    width: 1.9em;
  }

}