@charset "UTF-8"; @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400&display=swap'); html {
  scroll-behavior: smooth;
}

body {
  color: #323232;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  line-height: 1.692;
  word-break: break-word;
}

img {
  width: 100%;
  height: auto;
}

a {
  transition: 0.3s;
}

a:hover {
  opacity: 0.7;
}

.sp-none {
  display: none;
}

.pc-none {
  display: block;
}

.wrapper {
  max-width: 1500px;
  margin: 0 auto;
  background: #fff;
}

.common_btn_container {
  padding: 0 7.3%;
}

.detail_accordion {
  display: none;
}

.detail_accordion_btn {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 62%;
  cursor: pointer;
}

.detail_accordion_btn_container {
  position: relative;
}

.qa {
  padding: 7% 3.7%;
}

.qa_accordion_q {
  cursor: pointer;
  position: relative;
}

.qa_accordion_q_close {
  display: block;
}

.qa_accordion_q_open {
  display: none;
}

.qa_accordion_q::before, .qa_accordion_q::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 4.5%;
  width: min(calc(32 / 750 * 100vw), 32px);
  height: min(calc(5 / 750 * 100vw), 5px);
  display: block;
  background: #7d7d7b;
  transition: 0.3s;
}

.qa_accordion_q::after {
  transform: translateY(-50%) rotate(90deg);
}

.qa_accordion_q.is-open::after {
  transform: translateY(-50%) rotate(180deg);
}

.qa_accordion_a {
  display: none;
}

.footer {
  padding: 11.6% 0 13.5%;
}

.footer_btn_01_container {
  padding: 0 4%;
}

.footer_tel_container {
  position: relative;
}

.footer_tel {
  position: absolute;
  top: 54%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 57%;
}

.footer_btn_02_container {
  position: relative;
}

.footer_btn_02_wrapper {
  position: absolute;
  top: 28.2%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 58%;
}

.footer_btn_02 {
  position: relative;
  margin-bottom: 5.4%;
}

.footer_btn_02:last-of-type {
  margin-bottom: 0;
}

.floating {
  position: fixed;
  bottom: -30vw;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100vw;
  background: rgba(0, 0, 0, .8);
  transition: bottom .3s;
}

.floating.is-shown {
  bottom: 0;
}

.floating__btn-wrapper {
  display: flex;
  justify-content: center;
  padding: 4.7% 4.7% 3.7%;
}

.floating__btn-container {
  width: 45%;
  margin-right: 12%;
}

.floating__btn-container:last-of-type {
  margin-right: 0;
}

.floating__btn-txt {
  width: 68%;
  margin: 0 auto 3%;
}

.floating__btn {
  cursor: pointer;
  transition: 0.3s;
}

.floating__btn:hover {
  opacity: .7;
}

.floating__btn:hover a {
  opacity: 1;
}

.modal {
  display: none;
  position: fixed;
  z-index: 200;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal__bg {
  display: none;
  position: absolute;
  z-index: 201;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  cursor: pointer;
}

.modal__box {
  position: absolute;
  z-index: 210;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  width: 96%;
  left: 0;
  right: 0;
}

.modal__box-btn-close {
  cursor: pointer;
  position: absolute;
  top: 9.1%;
  right: 7%;
  width: 3%;
  transition: .3s;
  line-height: 1;

}

.modal__box-btn-close:hover {
  opacity: .7;
}

.modal__box-btn-container {
  position: absolute;
  bottom: 34%;
  display: flex;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 87%;
}

.modal__box-btn {
  width: 48%;
  margin: 0 5% 0 0;
  cursor: pointer;
  transition: .3s;
}

.modal__box-btn:hover {
  opacity: .7;
}

.modal__box-btn:hover a {
  opacity: 1;
}

.modal__box-btn:last-of-type {
  margin-right: 0;
}

@media (min-width: 751px) {
  .sp-none {
      display: block;
  }

  .pc-none {
      display: none;
  }

  .common_btn_container {
      padding: 0 0;
  }

  .common_btn {
      width: 647px;
      margin: 0 auto;
  }

  .detail_accordion_btn {
      width: 423px;
  }

  .qa {
      padding: 67px 0 0;
      width: 690px;
      margin: 0 auto;
  }

  .qa_accordion_q::before, .qa_accordion_q::after {
      right: 27px;
      width: 32px;
      height: 5px;
  }

  .footer {
      padding: 140px 0 189px;
      width: 752px;
      margin: 0 auto;
  }

  .footer_tel {
      width: 430px;
      top: 369px;
  }

  .footer_btn_02_wrapper {
      width: 430px;
      top: 126px;
  }

  .footer_btn_02_container {
      margin-bottom: 160px;
  }

  .footer_btn_02 {
      margin-bottom: 22px;
  }
  
  .floating__btn-wrapper {
    padding: 33px 0 26px;
    width: 680px;
    margin: 0 auto;
  }
  
  .floating__btn-container {
    width: 300px;
    margin-right: 80px;
  }
    
  .floating__btn-txt {
    width: 203px;
    margin: 0 auto 11px;
  }
  
  .modal__box {
    width: 930px;
  }
  
  .modal__box-btn-close {
    top: 42px;
    right: 50px;
    width: 24px;
  }
  
  .modal__box-btn-container {
    bottom: 168px;
    width: 680px;
  }
  
  .modal__box-btn {
    width: 300px;
    margin: 0 80px 0 0;
  }
  
  .modal__box-qr {
  position: absolute;
  width: 161px;
  bottom: 104px;
  margin: 0 auto;
  left: 0;
  right: 0;
  }
  
  .modal__box-link {
  position: absolute;
  left: 0;
  right: 0;
  width: 180px;
  margin: 0 auto;
  bottom: 56px;
  }
}

@media (min-width: 751px) and (max-width: 1500px) {
  .common_btn {
      width: min(calc(647 / 1500 * 100vw), 647px);
  }

  .detail_accordion_btn {
      width: min(calc(423 / 1500 * 100vw), 423px);
  }

  .qa {
      padding: min(calc(67 / 1500 * 100vw), 67px) 0 0;
      width: min(calc(690 / 1500 * 100vw), 690px);
  }

  .qa_accordion_q::before, .qa_accordion_q::after {
      right: min(calc(27 / 1500 * 100vw), 27px);
      width: min(calc(32 / 1500 * 100vw), 32px);
      height: min(calc(5 / 1500 * 100vw), 5px);
  }

  .footer {
      padding: min(calc(140 / 1500 * 100vw), 140px) 0 min(calc(189 / 1500 * 100vw), 189px);
      width: min(calc(752 / 1500 * 100vw), 752px);
  }

  .footer_tel {
      width: min(calc(430 / 1500 * 100vw), 430px);
      top: min(calc(369 / 1500 * 100vw), 369px);
  }

  .footer_btn_02_wrapper {
      width: min(calc(430 / 1500 * 100vw), 430px);
      top: min(calc(126 / 1500 * 100vw), 126px);
  }

  .footer_btn_02_container {
      margin-bottom: min(calc(160 / 1500 * 100vw), 160px);
  }

  .footer_btn_02 {
      margin-bottom: min(calc(22 / 1500 * 100vw), 22px);
  }

  .floating__btn-wrapper {
    padding: 33px 0 26px;
    width: 680px;
  }
  
  .floating__btn-container {
    width: min(calc(300 / 1500 * 100vw), 300px);
    margin-right: min(calc(80 / 1500 * 100vw), 80px);
  }
    
  .floating__btn-txt {
    width: min(calc(203 / 1500 * 100vw), 203px);
    margin: 0 auto min(calc(11 / 1500 * 100vw), 11px);
  }
  
  .modal__box {
    width: min(calc(930 / 1500 * 100vw), 930px);
  }
  
  .modal__box-btn-close {
    top: min(calc(42 / 1500 * 100vw), 42px);
    right: min(calc(50 / 1500 * 100vw), 50px);
    width: min(calc(24 / 1500 * 100vw), 24px);
  }
  
  .modal__box-btn-container {
    bottom: min(calc(168 / 1500 * 100vw), 168px);
    width: min(calc(680 / 1500 * 100vw), 680px);
  }
  
  .modal__box-btn {
    width: min(calc(300 / 1500 * 100vw), 300px);
    margin: 0 min(calc(80 / 1500 * 100vw), 80px) 0 0;
  }
  
  .modal__box-qr {
  width: min(calc(161 / 1500 * 100vw), 161px);
  bottom: min(calc(104 / 1500 * 100vw), 104px);
  }
  
  .modal__box-link {
  width: min(calc(180 / 1500 * 100vw), 180px);
  bottom: min(calc(56 / 1500 * 100vw), 56px);
  }
}
