@charset "utf-8";
/* faq_wrap
---------------------------------------- */
.faq_wrap {
  padding: 0 50px;
}

.faq_wrap .inner {
  padding: 43px 0 130px;
}

.faq_wrap .d_list {
  padding: 40px 30px;
  border-bottom: 1px dotted #ccc;
}

.faq_wrap .d_list:first-of-type {
  border-top: 1px dotted #ccc;
}

.faq_wrap .d_term,
.faq_wrap .d_des {
  display: flex;
}

.faq_wrap .d_term {
  margin-bottom: 15.5px;
}

.faq_wrap .question,
.faq_wrap .answer {
  font-size: 2.8rem;
  line-height: 1.25;
  color: #EA1F27;
  display: inline-block;
  margin-right: 20px;
  width: 1em;
}

.faq_wrap .question_txt,
.faq_wrap .answer_txt {
  letter-spacing: .05em;
  width: calc(100% - 1em);
}

.faq_wrap .question_txt {
  font-size: 2.2rem;
  line-height: 1.59;
}

.faq_wrap .answer_txt {
  font-size: 1.5rem;
  line-height: 2.333;
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
  .faq_wrap {
    padding: 0 1.563vw;
  }

  .faq_wrap .inner {
    padding: 3.359vw 0 10.156vw;
  }

  .faq_wrap .d_list {
    padding: 3.125vw 2.344vw;
  }

  .faq_wrap .d_term {
    margin-bottom: 1.211vw;
  }

  .faq_wrap .question,
  .faq_wrap .answer {
    margin-right: 1.563vw;
  }
}

@media screen and (max-width: 540px) {
  .faq_wrap {
    padding: 0;
  }

  .faq_wrap .inner {
    padding: 8% 0 10%;
  }

  .faq_wrap .d_list {
    padding: 6% 4%;
    border-bottom: 1px dotted #ccc;
  }

  .faq_wrap .d_term,
  .faq_wrap .d_des {
    display: flex;
  }

  .faq_wrap .d_term {
    margin-bottom: 15.5px;
  }

  .faq_wrap .question,
  .faq_wrap .answer {
    font-size: 2.4rem;
    line-height: 1.2;
    margin-right: 4%;
  }

  .faq_wrap .question_txt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
    .faq_wrap .answer_txt {
        font-size: 1.3rem;
        line-height: 2;
    }
}
