/* -------------------- PC ----------------------- */
/* --------------------
   common
----------------------- */

/* ---------- header ---------- */
header{
  width: 100%;
  padding: 16px 0;
  background: #ffffff;
}
.header__wrap{
  width: 1000px;
  margin: 0 auto;
}

.header__logo img{
  width: 252px;
  height: auto;
}


/* ---------- footer ---------- */
footer{
  width: 100%;
  font-family: 'Yu Gothic','Hiragino Sans',sans-serif;
}

footer a{
  color: #333333;
}

.footer__cont{
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0 40px;
}

/* ご利用規約 | 個人情報保護に関する事項 */
.footer__link{
  margin-bottom: 30px;
  font-size: 14px;
  line-height: calc(26 / 14);
  display: flex;
}
.footer__link li + li{
  margin-left: 0.5em;
}
.footer__link li + li::before{
  margin-right: 0.5em;
  content: "｜";
}

.footer__link a{ text-decoration: underline;}
.footer__link a:hover{ text-decoration: none;}

/* footer__txt */
.footer__txt{
  margin-bottom: 44px;
  font-size: 14px;
  line-height: calc(26 / 14);
}

/* footer__wrap */
.footer__wrap{
  width: 1000px;
  padding-bottom: 26px;
  border-bottom: 1px solid #E2E2E2;
  font-size: 12px;
  line-height: 1;
  display: grid;
  grid-template-columns: 144px 428px 428px;
}

.footer__wrap .footer__jp{
  grid-row: 1 / 2;
  grid-column: 1 / 2;
}
  .footer__wrap .footer__jp img{
    width: 144px;
    height: auto;
  }

.footer__wrap .copyright{
  padding-left: 10px;
  grid-row: 1 / 2;
  grid-column: 2 / 3;
}

.footer__update{
  font-size: 14px;
  text-align: right;
  grid-row: 1 / 2;
  grid-column: 3 / 4;
}

/* footer__logo--jj */
.footer__logo--jj{
  padding-top: 26px;
}
.footer__logo--jj img{
  width: auto;
  height: 29px;
}


/* ---------- main ---------- */
main{
  padding-bottom: 16px;
  background-image: url(/common/image/parts/footer_line.png);
  background-size: 100% 16px;
  background-repeat: no-repeat;
  background-position: 50% bottom;
}

.main__wrap{
  width: 100%;
  padding: 56px 0 80px;
  background: #F9F8F7;
}

.main__cont{
  width: 1000px;
  margin: 0 auto;
}


/* ---------- heading ---------- */
h1{
  margin: 0;
  padding: 0;
}


/* ---------- btn ---------- */
.btn__select{
  margin: 32px auto 10px;
  display: flex;
  justify-content: center;
}
.btn__select li + li{
  margin-left: 44px;
}
.btn__select li a{
  display: block;
  width: 340px;
  padding: 18px 0 20px 0;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 700;
  line-height: calc(26 / 18);
  text-align: center;
  text-decoration: none;
}
.btn__select li:nth-of-type(1) a{
  background-color: #ffffff;
  background-image: url(/common/image/parts/arrow_icon_yes.png);
  background-position: 94% 51%;
  background-repeat: no-repeat;
  background-size: 9px auto;
  border: 2px solid rgba(216, 38, 99, 0.5);
  color: var(--clr-pt1);
}
  .btn__select li:nth-of-type(1) a:hover{
    background-color: var(--clr-pt1);
    background-image: url(/common/image/parts/icon_arrow_w9_2.png);
    background-position: 94% 51%;
    background-repeat: no-repeat;
    background-size: 9px auto;
    border: 2px solid rgba(216, 38, 99, 0.5);
    color: #ffffff;
  }
.btn__select li:nth-of-type(2) a{
  background-color: #ffffff;
  background-image: url(/common/image/parts/arrow_icon_no.png);
  background-position: 94% 51%;
  background-repeat: no-repeat;
  background-size: 9px auto;
  border: 2px solid #aaaaaa;
  color: #333333;
}
  .btn__select li:nth-of-type(2) a:hover{
    background-color: #aaaaaa;
    background-image: url(/common/image/parts/icon_arrow_w9_2.png);
    background-position: 94% 51%;
    background-repeat: no-repeat;
    background-size: 9px auto;
    border: 2px solid #aaaaaa;
    color: #ffffff;
  }

.txt__btn--no{
  width: 730px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
}

.txt__btn--no p{
  width: 50%;
  font-size: 12px;
  line-height: calc(18 / 12);
  text-align: right;
}


/* ---- pagetop --- */
#scroll-top{
  display: none;
  width: 48px;
  height: 48px;
  position: fixed;
  bottom: 40px;
  right: 40px;
  cursor: pointer;
  z-index: 999;
}
/* #scroll-top a:hover{

} */
  /* .is-stop{
    position: absolute !important;
    bottom: 1200px !important;
  } */


/* --------------------
   modalArea
----------------------- */
.modalArea{
  display: none;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow-y: auto;
}

.modal__overlay{
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(000, 000, 000, 0.8);
}

.modalArea .modal__content{
  width: 1000px;
  padding: 60px 0;
  background: #ffffff;
  border-radius: 8px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.modalArea .modal__content p{
  text-align: center;
}

.modalArea .modal__content p + p{
  margin-top: 16px;
}

/* modal__txt--q */
.modalArea .modal__content .modal__txt--q{
  margin: 28px 0 32px;
  font-size: 28px;
  line-height: calc(42 / 28);
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--clr-key1);
}

/* modal__txt--caution */
.modalArea .modal__content .modal__txt--caution{
  width: 750px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
.modalArea .modal__content .modal__txt--caution dt{
  font-weight: 700;
  flex-shrink: 0;
}


/* --------------------
   個別parts
----------------------- */
/* ---------- /index.html ---------- */
/* lead */
.ima_index .lead{
  text-align: center;
  margin-bottom: 56px;
}

/* comfirmbox */
.ima_index .comfirm__box{
  width: 1000px;
  background: #ffffff;
  box-shadow: 0 0 8px #D7D2CB;
  border-radius: 8px;
  border: 1px solid var(--clr-key1);
  overflow: hidden;
}
  .ima_index .comfirmArea + .comfirm__box{
    margin-top: 40px;
  }

.ima_index .comfirm__box h2{
  padding: 17px 0;
  background: var(--clr-key1);
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #ffffff;
}

.ima_index .comfirm__box .confirm__cont01{
  width: 880px;
  margin: 0 auto;
  padding: 40px 0 60px;
}

.ima_index .comfirm__box .confirm__cont01 .cont01__txt--01{
  text-align: center;
  margin-bottom: 40px;
}

.ima_index .comfirm__box .confirm__cont01 h3{
  margin-bottom: 24px;
  padding-bottom: 12px;
  font-size: 24px;
  font-weight: 700;
  line-height: calc(28.8 / 24);
  color: var(--clr-key1);
  text-align: center;
  border-bottom: 1px solid var(--clr-key1);
}

.ima_index .comfirm__box .confirm__cont01 .cont01__txt--02{
  text-align: center;
  margin-bottom: 32px;
}

.ima_index .comfirm__box .confirm__cont02{
  width: 880px;
  margin: 0 auto;
  padding: 54px 0 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}


/* ---------- /404.html ---------- */
.notfound .notfound__box{
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0 72px;
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 0 8px #D7D2CB;
  text-align: center;
}

.notfound .notfound__box h1{
  margin-bottom: 40px;
  font-size: 40px;
  font-weight: 700;
  line-height: calc(42 / 40);
}

.notfound .notfound__box p:nth-of-type(1){
  margin-bottom: 30px;
}
