@charset "UTF-8";
.apply__bg { padding: .85rem .0 .4rem; background-color: #0066fb; }

.apply__ttl { width: 5.65rem; margin: 0 auto; }

.apply__form-block { margin: .5rem 0 0; }

.apply__step-list { display: flex; justify-content: space-between; }

.apply__step-item { width: 2.1rem; background-color: #efefef; border-radius: .5rem; color: #71abff; font-size: .26rem; font-weight: bold; text-align: center; line-height: .5rem; }

.apply__step-item.active { background-color: #0066fb; color: #fff; }

.apply__step { padding: .4rem .3rem .6rem; background-color: #fff; border-radius: .1rem; }

.apply__tos { margin: .4rem 0 0; }

.apply__tos .lead { font-size: .26rem; font-weight: bold; }

.apply__tos .desc { height: 2.5rem; margin: .1rem 0 0; padding: .1rem; background-color: #efefef; border-radius: .05rem; font-size: .24rem; }

.apply__tos .desc .desc-inner { height: 2.3rem; padding: .1rem; overflow-y: scroll; }

.apply__tos .desc .desc-inner::-webkit-scrollbar { width: .1rem; border-radius: .1rem; }

.apply__tos .desc .desc-inner::-webkit-scrollbar-thumb { background-color: #d8d8d8; border-radius: .1rem; }

.apply__tos .desc .desc-inner::-webkit-scrollbar-track { background-color: #fff; border-radius: .1rem; }

.apply__tos .desc .lead { margin: 0 0 .3rem; font-weight: bold; text-align: left; }

.apply__accept { margin: .4rem 0 0; padding: 0 0 0 1.7rem; font-size: 0; }

.apply__accept .checkbox-label { display: inline-block; height: .5rem; padding: 0 0 0 .75rem; background: url(../img/top/checkbox01.png) no-repeat left top; background-size: .5rem; font-size: .26rem; font-weight: bold; line-height: .5rem; }

.apply__accept .checkbox { display: none; }

.apply__accept .checkbox:checked + .checkbox-label { background-position: left bottom; }

.form-item { margin: .4rem 0 0; font-size: .26rem; letter-spacing: .04em; }

.form-item dt { font-weight: bold; }

.form-item dt.require { position: relative; padding: 0 0 0 .8rem; }

.form-item dt.require::before { content: "必須"; position: absolute; left: 0; top: 50%; transform: translateY(-50%); padding: .05rem; background-color: #ff0000; color: #fff; font-size: .24rem; line-height: 1; }

.form-item dt.confirm::before { content: "確認"; background-color: #3d3d3d; }

.form-item dd { position: relative; margin: .1rem 0 0; line-height: 0; }

.form-item dd.flex { align-items: flex-start; }

.form-item dd .flex-item { position: relative; width: 2.3rem; }

.form-item dd .flex-item:nth-of-type(2) { width: 2.5rem; margin: 0 0 0 .35rem; }

.form-item dd .flex-item .txt01 { position: absolute; top: .2rem; right: .1rem; font-size: .26rem; font-weight: bold; }

.form-item input { padding: .12rem .2rem .12rem .35rem; }

.form-item input, .form-item select { width: 100%; height: .7rem; border: .04rem solid #efefef; border-radius: .05rem; letter-spacing: .04em; }

.form-item.zip dd { width: 3.5rem; }

.form-item.zip dd .note { right: -3rem; }

.form-item.zip input { width: 3.5rem; }

.form-item.address dt { margin: .2rem 0 0; }

.form-item.address dt:nth-of-type(2) { margin: .1rem 0 0; }

.form-item.address dd { margin: 0; }

.form-item.address select { width: 3.5rem; padding: .12rem .2rem .12rem .5rem; background: linear-gradient(to right, transparent 84%, #efefef 84%); }

.form-item.address > dd { width: 3.5rem; }

.form-item.cc-term select { width: 1.6rem; padding: 0 0 0 .2rem; background: linear-gradient(to right, transparent 60%, #efefef 60%); }

.form-item.cc-code dd { width: 2.45rem; }

.form-item.cc-code dd .note { right: -3.7rem; }

.form-item.cc-code input { width: 2.45rem; }

.form-item .select-wrap { position: relative; display: inline-block; box-sizing: border-box; }

.form-item .select-wrap::after { content: ""; position: absolute; width: .15rem; height: .15rem; top: 34%; right: .21rem; transform: rotate(-45deg); border-width: 2px; border-style: solid; border-color: transparent transparent #000 #000; }

.form-item .select-wrap select::-ms-expand { display: none; }

.form-item .note { position: absolute; top: 0; line-height: 1.4; }

button { display: block; outline: none; }

button.next-btn, button.submit-btn { height: 1.45rem; overflow: hidden; }

button.next-btn img, button.submit-btn img { position: relative; }

button.next-btn.true img, button.submit-btn.true img { top: -1.48rem; }

button.submit-btn { margin: .4rem auto 0; }

button[disabled] { cursor: not-allowed; }

.swiper-button-next, .swiper-container-rtl, .swiper-button-prev { position: static; background-image: none; right: auto; }

.swiper-button-next, .swiper-button-prev { top: auto; }

.swiper-button-next { width: 100%; height: 1.45rem; }

.apply__step { position: relative; }

.apply__step.step01 .swiper-button-next { margin: .6rem auto 0; }

.apply__step.step02 .swiper-button-next { margin: .7rem auto 0; }

.apply__step .swiper-button-prev { width: 4.08rem; height: .86rem; margin: .45rem auto 0; }

/* validation message */
.error { background: #ffe8f7; }

.error-msg-balloon { position: relative; margin: .1rem 0 0; padding: .05rem 0; background: #ff8080; color: #fff; font-size: .2rem; text-align: center; }

.error-msg-balloon::before { content: ""; position: absolute; top: -0.2rem; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-width: .1rem; border-style: solid; border-color: transparent transparent #ff8080 transparent; }

.small-block + .error-msg-balloon, .small-width + .error-msg-balloon { padding: 0 0 0 5px; }

/* sp */
@media (max-width: 767px) { .form-item.cc-term .flex-item:nth-of-type(2) select { width: 1.8rem; background: linear-gradient(to right, transparent 65%, #efefef 65%); } }

/* pc */
@media (min-width: 768px) { .apply__bg { padding: 80px 0 70px; }
  .apply__ttl { width: 567px; margin: 0 auto; }
  .apply__form-block { margin: 40px 0 0; }
  .apply__step { padding: 40px 40px 80px; border-radius: 10px; }
  .apply__step-list { width: 520px; margin: 0 auto; padding: 0 0 20px; }
  .apply__step-item { width: 170px; border-radius: 40px; font-size: 21px; line-height: 40px; }
  .apply__tos { margin: 20px 0 0; }
  .apply__tos .lead { font-size: 18px; text-align: center; }
  .apply__tos .desc { height: 190px; margin: 5px 0 0; padding: 10px; border-radius: 5px; font-size: 14px; }
  .apply__tos .desc .lead { margin: 0 0 25px; font-size: 14px; }
  .apply__tos .desc .desc-inner { height: 170px; padding: 10px; }
  .apply__tos .desc .desc-inner::-webkit-scrollbar { width: 10px; border-radius: 10px; }
  .apply__tos .desc .desc-inner::-webkit-scrollbar-thumb { border-radius: 10px; }
  .apply__tos .desc .desc-inner::-webkit-scrollbar-track { border-radius: 10px; }
  .apply__accept { margin: 25px 0 0; padding: 0 0 0 345px; }
  .apply__accept .checkbox-label { height: 25px; padding: 0 0 0 40px; background-size: 25px; font-size: 18px; line-height: 25px; }
  .apply__accept .checkbox { display: none; }
  .apply__accept .checkbox:checked + .checkbox-label { background-position: left bottom; }
  .apply .pc-flex { display: flex; align-items: flex-start; flex-wrap: wrap; }
  .apply .pc-flex .form-item:nth-of-type(2), .apply .pc-flex .pc-flex-item:nth-of-type(2) { margin: 20px 0 0 40px; }
  .apply .pc-flex .pc-flex-item { margin: 20px 0 0; }
  .form-item { margin: 22px 0 0; font-size: 18px; }
  .form-item dt.require { padding: 0 0 0 55px; }
  .form-item dt.require::before { padding: 4px 5px; font-size: 16px; }
  .form-item dd { position: relative; width: 400px; margin: 10px 0 0; font-size: 18px; }
  .form-item dd .flex-item { width: 180px; }
  .form-item dd .flex-item:nth-of-type(2) { width: 180px; margin: 0 0 0 20px; }
  .form-item dd .flex-item .txt01 { top: 12px; font-size: 18px; }
  .form-item input, .form-item select { width: 400px; height: 50px; padding: 9px 20px; border: 2px solid #efefef; border-radius: 5px; }
  .form-item input.half, .form-item select.half { width: 50%; }
  .form-item.zip dd { width: 230px; }
  .form-item.zip dd input { width: 230px; }
  .form-item.zip dd .note { width: 300px; right: -330px; }
  .form-item.address dt { margin: 0; }
  .form-item.address dd { margin: 4px 0 0; }
  .form-item.address > dd { width: 230px; }
  .form-item.address select { width: 230px; padding: 0 0 0 25px; background: linear-gradient(to right, transparent 83%, #efefef 83%); font-size: 16px; }
  .form-item.tel dd, .form-item.email dd, .form-item.password dd { width: 340px; }
  .form-item.tel dd input, .form-item.email dd input, .form-item.password dd input { width: 340px; }
  .form-item.cc-term select { width: 130px; padding: 0 0 0 15px; background: linear-gradient(to right, transparent 70%, #efefef 70%); }
  .form-item.cc-code dd { width: 140px; }
  .form-item.cc-code dd .note { width: 380px; right: -410px; }
  .form-item.cc-code input { width: 140px; }
  .form-item .select-wrap::after { width: 8px; height: 8px; top: 36%; border-width: 1px; right: 15px; }
  .form-item .note { top: 15px; font-size: 16px; }
  button { cursor: pointer; }
  button.next-btn, button.submit-btn { width: 418px; height: 95px; }
  button.next-btn.true img, button.submit-btn.true img { top: -98px; }
  button.submit-btn { margin: 25px auto 0; }
  .swiper-button-next { height: 95px; }
  .apply__step.step01 .swiper-button-next { margin: 45px auto 0; }
  .apply__step.step02 .swiper-button-next { margin: 55px auto 0; }
  .apply__step .swiper-button-prev { width: 249px; height: 52px; margin: 25px auto 0; }
  /* validation message */
  .error-msg-balloon { margin: 7px 0 0; padding: 3px 0; font-size: 14px; }
  .error-msg-balloon::before { top: -16px; border-width: 8px; } }
