@charset "UTF-8";
/*
* parts-faq.css
* 共通FAQ（section.lp-qa）
* 元データ: /lp-tenhennyu5/css/lp-tenhennyu5.css 「lp-qa」「.lp-link」
*
* ・どのページでも同じ見た目になるよう、各ページのhead内のCSSより後に読み込む
* ・ページ側のCSS（common2.css や各LPの旧 .lp-qa 指定など）に負けないよう、
*   セクション内のセレクタには先頭に .lp-qa を付けている
* ・main.css が無いページ用に、FAQ内だけで効く基本設定を入れている
*/

/* --------------------------------
base（FAQ内だけに適用）
-------------------------------- */
.lp-qa {
  --base-font: 2.6667vw;
  box-sizing: border-box;
  margin: 0;
  color: #333;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 13px;
  line-height: 1.6875;
  letter-spacing: normal;
  text-align: start;
  word-wrap: break-word;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
@media (min-width: 768px) {
  .lp-qa {
    --base-font: 10px;
  }
}
.lp-qa *,
.lp-qa *::before,
.lp-qa *::after {
  box-sizing: border-box;
}
.lp-qa div,
.lp-qa h2,
.lp-qa dl,
.lp-qa dt,
.lp-qa dd,
.lp-qa p,
.lp-qa img {
  margin: 0;
  padding: 0;
  border: 0;
  background-image: none;
  font-size: inherit;
  line-height: inherit;
}
.lp-qa h2::before,
.lp-qa h2::after,
.lp-qa dl::before,
.lp-qa dl::after,
.lp-qa dt::before,
.lp-qa dd::before,
.lp-qa dd::after,
.lp-qa p::before,
.lp-qa p::after {
  content: none;
}
.lp-qa img {
  display: block;
  margin: auto;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
.lp-qa .l-contents {
  position: relative;
}
@media (max-width: 767.98px) {
  .lp-qa .l-contents {
    margin: 0;
    padding: 0 calc(24 * var(--base-font, 1) / 10);
    max-width: none;
  }
}
@media (min-width: 768px) {
  .lp-qa .l-contents {
    margin: 0 auto;
    padding: 0 calc(50 * var(--base-font, 1) / 10);
    max-width: calc(1050 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .u-hidden-up-md {
    display: none !important;
    visibility: hidden;
  }
}

/* --------------------------------
lp-link
-------------------------------- */
.lp-qa .lp-link {
  color: #1f3b9e;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.25em;
  letter-spacing: 0.04em;
  font-feature-settings: "palt";
}
.lp-qa .lp-link:visited,
.lp-qa .lp-link:hover,
.lp-qa .lp-link:active {
  color: #1f3b9e;
}
.lp-qa .lp-link::after {
  content: "＞";
  display: inline-block;
  margin-left: 0.8em;
  font-weight: 400;
  text-decoration: none;
  transition: transform 0.2s ease-out;
}
@media (hover: hover) and (min-width: 768px) {
  .lp-qa .lp-link:hover::after {
    transform: translateX(calc(8 * var(--base-font, 1) / 10));
  }
}

/* --------------------------------
lp-qa
-------------------------------- */
.lp-qa {
  position: relative;
  background-color: #fff;
}
@media (max-width: 767.98px) {
  .lp-qa {
    padding-top: calc(95 * var(--base-font, 1) / 10);
    padding-bottom: calc(60 * var(--base-font, 1) / 10);
  }
  .lp-qa .l-contents {
    padding: 0 calc(16 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa {
    padding-top: calc(118 * var(--base-font, 1) / 10);
    padding-bottom: calc(118 * var(--base-font, 1) / 10);
  }
}

@media (min-width: 768px) {
  .lp-qa .lp-qa_contents {
    margin: 0 auto;
    max-width: calc(840 * var(--base-font, 1) / 10);
  }
}

.lp-qa .lp-qa_heading {
  text-align: center;
  color: #333;
  font-weight: 700;
  letter-spacing: 0.07em;
  font-feature-settings: "palt";
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_heading {
    font-size: calc(24 * var(--base-font, 1) / 10);
    line-height: 1.5;
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_heading {
    font-size: calc(32 * var(--base-font, 1) / 10);
    line-height: 1.5;
  }
}

@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_wrap {
    margin: calc(36 * var(--base-font, 1) / 10) 0 0;
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_wrap {
    margin: calc(36 * var(--base-font, 1) / 10) 0 0;
  }
}

.lp-qa .lp-qa_acc {
  border-bottom: 1px solid #ccc;
}

.lp-qa .lp-qa_acc_question {
  position: relative;
  transition: opacity 0.8s ease;
}
@media (hover: hover) {
  .lp-qa .lp-qa_acc_question:hover {
    cursor: pointer;
  }
}
@media (hover: hover) and (min-width: 768px) {
  .lp-qa .lp-qa_acc_question:hover {
    opacity: 0.6;
  }
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_question {
    padding-top: calc(17 * var(--base-font, 1) / 10);
    padding-bottom: calc(17 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_question {
    padding-top: calc(20 * var(--base-font, 1) / 10);
    padding-bottom: calc(20 * var(--base-font, 1) / 10);
  }
}

.lp-qa .lp-qa_acc_question_inner {
  position: relative;
  color: #333;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_question_inner {
    padding-right: calc(23 * var(--base-font, 1) / 10);
    padding-left: calc(36 * var(--base-font, 1) / 10);
    font-size: calc(14 * var(--base-font, 1) / 10);
    letter-spacing: 0;
    line-height: 1.46;
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_question_inner {
    padding-right: calc(50 * var(--base-font, 1) / 10);
    padding-left: calc(36 * var(--base-font, 1) / 10);
    font-size: calc(18 * var(--base-font, 1) / 10);
    letter-spacing: 0;
    line-height: 1.5;
  }
}
.lp-qa .lp-qa_acc_question_inner::after {
  content: "";
  position: absolute;
  top: 50%;
  border-right: calc(1.5 * var(--base-font, 1) / 10) solid #182e4c;
  border-bottom: calc(1.5 * var(--base-font, 1) / 10) solid #182e4c;
  transition: transform 0.3s ease-out;
  transform: translateY(-70%) rotate(45deg);
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_question_inner::after {
    right: calc(2 * var(--base-font, 1) / 10);
    width: calc(8 * var(--base-font, 1) / 10);
    height: calc(8 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_question_inner::after {
    right: calc(2 * var(--base-font, 1) / 10);
    width: calc(8 * var(--base-font, 1) / 10);
    height: calc(8 * var(--base-font, 1) / 10);
  }
}
.lp-qa .lp-qa_acc_question.active .lp-qa_acc_question_inner::after {
  transform: translateY(-30%) rotate(225deg);
}

.lp-qa .lp-qa_acc_question_icon {
  position: absolute;
  left: 0;
  width: calc(24 * var(--base-font, 1) / 10);
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_question_icon {
    top: calc(-1 * var(--base-font, 1) / 10);
    left: calc(1.5 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_question_icon {
    top: calc(2 * var(--base-font, 1) / 10);
  }
}
.lp-qa .lp-qa_acc_question_icon img {
  width: 100%;
}

.lp-qa .lp-qa_acc_answer {
  display: none;
  background-color: #eef6fd;
}

.lp-qa .lp-qa_acc_answer_inner {
  position: relative;
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_answer_inner {
    padding: calc(18 * var(--base-font, 1) / 10) calc(14 * var(--base-font, 1) / 10) calc(22 * var(--base-font, 1) / 10) calc(47 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_answer_inner {
    padding: calc(24 * var(--base-font, 1) / 10) calc(24 * var(--base-font, 1) / 10) calc(28 * var(--base-font, 1) / 10) calc(52 * var(--base-font, 1) / 10);
  }
}

.lp-qa .lp-qa_acc_answer_icon {
  position: absolute;
  color: #1f3b9e;
  font-size: calc(25 * var(--base-font, 1) / 10);
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_answer_icon {
    top: calc(17 * var(--base-font, 1) / 10);
    left: calc(12 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_answer_icon {
    top: calc(24 * var(--base-font, 1) / 10);
    left: calc(16 * var(--base-font, 1) / 10);
  }
}

.lp-qa .lp-qa_acc_answer_text {
  color: #333;
  font-feature-settings: "palt";
  font-weight: 400;
  letter-spacing: 0.015em;
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_answer_text {
    font-size: calc(13 * var(--base-font, 1) / 10);
  }
  .lp-qa p.lp-qa_acc_answer_text {
    line-height: 1.77;
  }
  .lp-qa .lp-qa_acc_answer_text + .lp-qa_acc_answer_text {
    margin-top: calc(23 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_answer_text {
    font-size: calc(14 * var(--base-font, 1) / 10);
  }
  .lp-qa p.lp-qa_acc_answer_text {
    line-height: 1.786;
  }
  .lp-qa .lp-qa_acc_answer_text + .lp-qa_acc_answer_text {
    margin-top: calc(25 * var(--base-font, 1) / 10);
  }
}

.lp-qa .lp-qa_acc_answer_link {
  line-height: 1.8;
}
@media (max-width: 767.98px) {
  .lp-qa .lp-qa_acc_answer_link {
    margin-top: calc(14 * var(--base-font, 1) / 10);
    font-size: calc(15 * var(--base-font, 1) / 10);
  }
}
@media (min-width: 768px) {
  .lp-qa .lp-qa_acc_answer_link {
    margin-top: calc(14 * var(--base-font, 1) / 10);
    font-size: calc(14 * var(--base-font, 1) / 10);
  }
}

/* トップページ（index系）の「その他のよくあるご質問」リンク */
.lp-qa .lp-qa_acc_wrap + .arrow {
  margin-top: 30px;
}

/* --------------------------------
各ページに残っている旧FAQ用CSSの打ち消し
（lp001 / lp-price2 / lp-tenhennyu / lp-supportschool / lp002-10 / lp003 などの
  .lp-qa 指定が新しいFAQにも当たってしまうため）
-------------------------------- */
.lp-qa.lp-qa {
  margin: 0;
}
.lp-qa.lp-qa .lp-qa_heading {
  display: block;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
}
.lp-qa.lp-qa .lp-qa_acc_wrap {
  max-width: none;
}
.lp-qa.lp-qa .lp-qa_acc,
.lp-qa.lp-qa .lp-qa_acc + .lp-qa_acc {
  margin: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
}
.lp-qa.lp-qa .lp-qa_acc_question::before,
.lp-qa.lp-qa .lp-qa_acc_question::after,
.lp-qa.lp-qa .lp-qa_acc_question.active::before,
.lp-qa.lp-qa .lp-qa_acc_question.active::after,
.lp-qa.lp-qa .lp-qa_acc_question_inner::before {
  content: none;
}
.lp-qa.lp-qa .lp-qa_acc_question_inner {
  margin: 0;
}
.lp-qa.lp-qa .lp-qa_acc_question_inner::after,
.lp-qa.lp-qa .lp-qa_acc_question.active .lp-qa_acc_question_inner::after {
  background-color: transparent;
}
.lp-qa.lp-qa .lp-qa_acc_question_icon {
  transform: none;
}
.lp-qa.lp-qa .lp-qa_acc_answer_inner {
  display: block;
  margin: 0;
}
