@charset "utf-8";

.bp-faq-list-section-headline {
  margin-bottom: 30px;
}
.bp-faq-list__item-tab {
  color: var(--text-main-color);
  position: relative;
  margin-bottom: 1px;
  width: 100%;
  overflow: hidden;
  border-top: 1px solid var(--text-main-color);
}
.bp-faq-list__item-tab-headline {
  margin: 0;
}
.bp-faq-list__item-tab:last-child {
  border-bottom: 1px solid var(--text-main-color);
}
input.bp-faq-list__input {
  position: absolute;
  opacity: 0;
  z-index: -1;
}
label.bp-faq-list__label {
  position: relative;
  display: block;
  padding: 25px 7% 25px 0;
  margin-bottom: 0;
  cursor: pointer;
}
.bp-faq-list__item-tab-inner {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s;
}
.bp-faq-list__item-tab-inner-text {
  margin: 0;
  padding: 0 0 35px;
}
.bp-faq-list__text-link {
  margin-bottom: 10px;
}
.bp-faq-list__text-link-last {
  margin-bottom: 35px;
}
/* :checked */
input:checked~.bp-faq-list__item-tab-inner {
  max-height: 300vh;
  margin-bottom: 1px;
}
/* Icon */
span.bp-faq-list__icon {
  display: inline-block;
  width: 11px;
  height: 11px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
  cursor: pointer;
  transition: .3s ease-in-out;
}
span.bp-faq-list__icon::before, span.bp-faq-list__icon::after {
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  background: var(--text-main-color);
}
span.bp-faq-list__icon::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
span.bp-faq-list__icon::after {
  transform: rotate(90deg);
}
input[type=checkbox]+label span.bp-faq-list__icon::before, input[type=radio]+label span.bp-faq-list__icon::before {
  content: "";
  transition: .2s ease-in-out;
}
input[type=checkbox]:checked+label span.bp-faq-list__icon::before, input[type=radio]:checked+label span.bp-faq-list__icon::before {
  opacity: 0;
}
@media screen and (max-width: 767px) {
  label.bp-faq-list__label {
    padding: 25px 30px 25px 0;
  }
  .bp-faq-list__item-tab-inner {
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s;
  }
  /* Icon */
  span.bp-faq-list__icon {
    right: 0;
  }
}
@media screen and (min-width: 768px) {
  .bp-faq-list-wrap {
    margin: 0 auto;
    max-width: 900px;
  }
}
