.faq__section {
  width: 100%;
  max-width: 600px;
  margin: 0 auto 120px;
}
@media screen and (max-width: 640px) {
  .faq__section {
    padding: 0 20px;
  }
}
.faq__section h2 {
  font-size: 17px;
  font-size: 1.0625rem;
  text-align: center;
  color: #b26c53;
  margin-bottom: 25px;
}
.faq__section h2 img {
  width: 9px;
  margin-right: 0.5em;
  vertical-align: middle;
}
.faq__section + aside {
  width: 300px;
  font-size: 18px;
  font-size: 1.125rem;
  color: #b26c53;
  margin: 0 auto 130px;
}
.faq__section + aside > img {
  width: 21px;
  height: auto;
  margin: 0 auto 55px;
  display: block;
}
.faq__accordion {
  border-bottom: 1px solid #e6cfac;
}
.faq__accordion dt {
  font-size: 16px;
  font-size: 1rem;
  padding: 25px 25px 25px 55px;
  border-top: 1px solid #e6cfac;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 575px) {
  .faq__accordion dt {
    padding: 20px 10px 20px 35px;
  }
}
.faq__accordion dt img {
  width: 10px;
  margin-right: 10px;
  vertical-align: middle;
  transform: rotate(-90deg);
  transition: transform 0.3s;
}
.faq__accordion dt.is-open img {
  transform: rotate(0deg);
  transition: transform 0.3s;
}
.faq__accordion dt.is-open + dd {
  max-height: 500px;
  padding: 0 75px 25px;
}
@media screen and (max-width: 575px) {
  .faq__accordion dt.is-open + dd {
    padding: 0 35px 25px;
  }
}
.faq__accordion dd {
  max-height: 0;
  padding: 0 75px;
  overflow: hidden;
  transition: max-height 0.4s ease;
}