@charset "UTF-8";
/* ------------------------------
	レスポンシブ
------------------------------ */
/* ------------------------------
	フォント
------------------------------ */
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
/* ------------------------------
	カラー
------------------------------ */
/* ------------------------------
	.faq
------------------------------ */
.faq {
  padding: 12rem 0;
}
@media screen and (max-width: 768px) {
  .faq {
    padding: 6rem 0 8rem;
  }
}
.faq .str_ttl {
  margin-bottom: 8rem;
}
@media screen and (max-width: 768px) {
  .faq .str_ttl {
    margin-bottom: 4rem;
  }
}
.faq .str_ttl .ttl_txt::before {
  top: 1rem;
  bottom: auto;
}
.faq .faq_btn_box {
  margin-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .faq .faq_btn_box {
    margin-bottom: 8rem;
  }
}
.faq .faq_list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem 4rem;
}
@media screen and (max-width: 768px) {
  .faq .faq_list {
    flex-direction: column;
    gap: 1.6rem;
  }
}
.faq .faq_list .faq_btn {
  width: calc(50% - 2rem);
}
@media screen and (max-width: 768px) {
  .faq .faq_list .faq_btn {
    width: 100%;
  }
}
.faq .faq_list .faq_btn a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 2rem 4rem;
  background: #fff;
  border-radius: 2rem;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .faq .faq_list .faq_btn a {
    padding: 1.6rem 2rem;
    border-radius: 1.2rem;
    font-size: 1.6rem;
  }
}
.faq .faq_list .faq_btn .ico {
  flex-shrink: 0;
  display: block;
  width: 1.6rem;
  height: 1rem;
  background: url(../img/common/ico_arw09.svg) no-repeat center center;
  background-size: 100%;
}
.faq .faq_wrap + .faq_wrap {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .faq .faq_wrap + .faq_wrap {
    margin-top: 8rem;
  }
}
.faq .faq_box {
  background: #fff;
  border-radius: 2rem;
}
@media screen and (max-width: 768px) {
  .faq .faq_box {
    border-radius: 1.2rem;
    font-size: 1.6rem;
  }
}
.faq .faq_box + .faq_box {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .faq .faq_box + .faq_box {
    margin-top: 2rem;
  }
}
.faq .faq_box .faq_ttl {
  position: relative;
  padding: 2rem 8rem 2rem 4rem;
  font-weight: bold;
  line-height: 1.8;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .faq .faq_box .faq_ttl {
    padding: 1.6rem 5rem 1.6rem 2rem;
  }
}
.faq .faq_box .faq_ttl::before {
  position: absolute;
  top: 0;
  right: 4rem;
  bottom: 0;
  margin: auto;
  content: "";
  display: block;
  width: 1.6rem;
  height: 1rem;
  background: url(../img/common/ico_arw09.svg) no-repeat center center;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .faq .faq_box .faq_ttl::before {
    right: 2rem;
  }
}
.faq .faq_box .faq_ttl.open::before {
  transform: rotate(-180deg);
}
.faq .faq_box .faq_txt {
  display: none;
  padding: 2rem 4rem;
  border-top: 1px solid #898989;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .faq .faq_box .faq_txt {
    padding: 1.6rem 2rem;
  }
}
.faq .faq_box a {
  color: #70C7DA;
  text-decoration: underline;
  font-weight: bold;
}
@media screen and (min-width: 769px) {
  .faq .faq_box a:hover {
    text-decoration: none;
  }
}