@charset "UTF-8";

.p-flow{
  width:600px;
  margin:0 auto;
  padding:40px 0;
}

.p-flow__list{
  display:flex;
}

.p-flow__item{
  position:relative;
  flex-basis:33.33%;
  text-align:center;
  font-family:"M PLUS Rounded 1c";
  font-size:min(1.953125vw,15px);
}

.p-flow__item:not(:first-of-type)::before{
  display:block;
  position:absolute;
  content:"";
  width:100%;
  height:3px;
  background-color:#ddd;
  bottom:8px;
  right:50%;
}

.p-flow__item::after{
  display:block;
  position:relative;
  z-index:1;
  content:"";
  width:20px;
  height:20px;
  border-radius:20px;
  background-color:#ddd;
  left:50%;
  transform:translateX(-50%);
  margin-top:10px;
}

.p-flow__item--progress::after{
  background-color:#ff7f10;
}

.p-flow__item--progress:not(:first-of-type)::before{
  background-color:#ff7f10;
}

.p-flow__item--current{
  color:#ff7f10;
}

.p-contact-description p{
  margin-bottom:min(3.90625vw,30px);
}

.p-form{
  margin:0 0 min(6.5104166667vw,50px);
}

.p-formCheck{
  padding:20px 0;
}

.p-form-error{
  background-color:#ffdee3;
  border:#e60000 solid 2px;
  border-radius:4px;
  margin:0 0 min(1.3020833333vw,10px);
  padding:min(0.6510416667vw,5px);
}

.p-form-error p{
  color:#e60000;
  text-align:center;
  font-size:min(2.34375vw,18px);
  font-family:"M PLUS Rounded 1c";
}

.p-contact-section{
  margin-bottom:min(6.5104166667vw,50px);
}

.p-contact-section__heading{
  font-weight:600;
  margin-bottom:min(1.3020833333vw,10px);
  font-size:min(2.34375vw,18px);
}

.p-required{
  color:#ff7f10;
  font-weight:600;
  font-size:min(1.8229166667vw,14px);
  padding-left:min(1.3020833333vw,10px);
}

.p-contact-block{
  border:2px solid #f4f3ec;
  border-top:0;
  font-size:min(1.953125vw,15px);
}

.p-contact-block--inquery{
  text-align:center;
}

.p-contact-block__heading{
  background-color:#f4f3ec;
  font-size:min(2.0833333333vw,16px);
  padding:min(1.0416666667vw,8px) min(2.6041666667vw,20px);
}

.p-contact-block__col{
  display:flex;
  flex-wrap:wrap;
  width:94%;
  margin:0 auto;
  padding:min(2.6041666667vw,20px) 0;
}

.p-contact-block__col .p-contact-block__item{
  width:47%;
}

.p-contact-block__row{
  width:94%;
  margin:0 auto;
  padding:min(2.6041666667vw,20px) 0;
}

.p-contact-block__item--full{
  width:100%;
  margin-bottom:min(2.6041666667vw,20px);
}

.p-contact-block__item--fit{
  display:flex;
  align-items:center;
}

.p-contact-block__list{
  margin:0 min(1.3020833333vw,10px);
}

.p-contact-block__list__item{
  margin:0 0 min(1.3020833333vw,10px);
}

.p-contact-block__list__item:last-child{
  margin-bottom:0;
}

.p-contact-block__list__caution{
  font-size:min(1.6927083333vw,13px);
  margin:min(1.0416666667vw,8px) 0;
  margin-left:min(3.90625vw,30px);
  letter-spacing:0;
}

.p-contact-block__error{
  width:100%;
}

.p-contact-annotation{
  font-size:min(1.6927083333vw,13px);
  margin-top:min(1.953125vw,15px);
}

.p-input{
  background:#fef0da;
  border:#fcd291 solid 1px;
  border-radius:4px;
  margin:0 min(1.0416666667vw,8px);
  padding:min(1.0416666667vw,8px) min(1.6927083333vw,13px);
  font-size:min(2.0833333333vw,16px);
  line-height:1.3;
}

.p-input--ss{
  width:25%;
}

.p-input--s{
  width:80%;
}

.p-input--m{
  width:80%;
  margin:0;
}

.p-input--l{
  width:80%;
}

.p-input--full{
  width:100%;
  margin:0;
}

.p-contact-address{
  display:flex;
  margin:0 0 min(1.3020833333vw,10px);
}

.p-contact-address__label{
  width:min(18.2291666667vw,140px);
}

.p-contact-address__input{
  flex-grow:1;
}

.p-select{
  display:inline-block;
  position:relative;
  background:#fef0da;
  border:#fcd291 solid 1px;
  border-radius:4px;
  margin:0 min(1.0416666667vw,8px);
  font-size:min(2.0833333333vw,16px);
}

.p-select select{
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
  background:transparent;
  color:#444;
  padding:min(0.78125vw,6px) min(4.4270833333vw,34px) min(0.78125vw,6px) min(1.6927083333vw,13px);
}

.p-select::after{
  content:"▼";
  color:#ff7f10;
  margin-left:max(-4.4270833333vw,-34px);
}

.p-radio{
  -webkit-appearance:none;
  -moz-appearance:none;
       appearance:none;
  background-color:#fff;
  margin:0 min(1.3020833333vw,10px) 0 0;
  color:#ff7f10;
  width:1.15em;
  height:1.15em;
  border:1px solid #999;
  border-radius:50%;
  vertical-align:max(-0.390625vw,-3px);
  transition:0.1s border-color ease-in-out;
}

.p-radio::before{
  content:"";
  display:block;
  background-color:#ff7f10;
  width:100%;
  height:100%;
  border-radius:50%;
  transform:scale(0);
  transition:0.2s transform ease-in-out;
}

.p-radio:checked{
  border-color:transparent;
}

.p-radio:checked::before{
  transform:scale(1.1);
}

.p-checkbox{
  position:relative;
  height:18px;
  width:18px;
  display:inline-block;
  border-radius:0;
  border:1px solid #444;
  background:#fff;
  -webkit-appearance:none;
  -moz-appearance:none;
       appearance:none;
  vertical-align:-3px;
  margin-right:min(0.390625vw,3px);
}

.p-checkbox:checked{
  border:none;
  background-image:url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' width='16' height='16'><rect fill='%23FF6633' width='16' height='16'/><path fill='none' stroke='%23fff' stroke-width='2' d='M12.6,5.17l-5.66,5.66L3.4,7.29'/></svg>");
  background-repeat:no-repeat;
  background-size:cover;
}

.p-input-error{
  background:#fed9df;
  border:#de0617 solid 1px;
}

.p-error{
  width:100%;
  color:#de0617;
  font-weight:600;
}

.p-error:first-of-type{
  margin-top:min(2.6041666667vw,20px);
}

.p-error-min{
  color:#de0617;
  font-size:min(1.6927083333vw,13px);
}

.p-error-school, .p-error-tel, .p-error-zenkaku{
  display:none;
}

.p-error-school.active, .p-error-tel.active, .p-error-zenkaku.active{
  display:block;
}

.p-contact-check p{
  font-size:min(2.0833333333vw,16px);
  text-align:center;
}

.p-contact-check__list{
  margin:min(1.3020833333vw,10px) 0 0;
}

.p-contact-check__item{
  font-size:min(2.0833333333vw,16px);
  background:#fef0da;
  border:#fcd291 solid 1px;
  border-radius:4px;
  margin:0 0 min(1.3020833333vw,10px);
  padding:min(1.3020833333vw,10px) min(1.6927083333vw,13px) min(1.3020833333vw,10px) min(3.90625vw,30px);
  text-indent:-1em;
}

.p-contact-check__item:first-of-type{
  font-weight:600;
}

.p-contact-conform{
  border:#e60000 solid 2px;
  padding:min(1.3020833333vw,10px) min(2.6041666667vw,20px);
}

.p-contact-conform p{
  text-align:center;
  text-decoration:underline;
  color:#e60000;
  font-size:min(2.0833333333vw,16px);
  font-weight:600;
}

.p-btn-wrap{
  text-align:center;
  margin:min(6.5104166667vw,50px) 0;
}

.p-btn-wrap--col{
  display:flex;
  justify-content:space-between;
}

.p-btn-wrap--col form{
  width:50%;
}

.p-btn-wrap--col form:first-child{
  text-align:left;
}

.p-btn-wrap--col form:last-child{
  text-align:right;
}

.p-btn-wrap--col form .c-btn{
  width:97%;
}

.c-btn{
  cursor:pointer;
  display:inline-block;
  line-height:1;
  width:min(90%, 300px);
  font-family:"M PLUS Rounded 1c";
  color:#fff;
  background-color:#ff7f10;
  border:#ff7f10 solid 1px;
  border-radius:40px;
  padding:20px 40px;
}

.c-btn--off{
  color:#d1d1d1;
  border-color:#d1d1d1;
  background-color:#fff;
  pointer-events:none;
}

.c-btn--modify{
  color:#444;
  border-color:transparent;
  background-color:#edeceb;
}

.p-contact-complete{
  margin:min(1.3020833333vw,10px) 0 min(3.90625vw,30px);
}

.p-contact-complete p{
  font-family:"M PLUS Rounded 1c";
  color:#ff7f10;
  text-align:center;
  font-size:min(2.8645833333vw,22px);
  font-weight:600;
}

.p-contact-testfee{
  margin:min(6.5104166667vw,50px) 0;
}

.p-contact-testfee__heading{
  font-size:min(2.0833333333vw,16px);
  font-weight:600;
}

.p-contact-testfee em{
  font-weight:600;
}

.p-download-section{
  margin:min(7.8125vw,60px) 0;
}

.p-download-section form{
  margin:min(2.6041666667vw,20px) 0;
  text-align:center;
}
@media screen and (max-width: 640px){

  .p-flow{
    width:75vw;
    margin-top:-16vw;
    padding:8vw 0;
  }

  .p-flow__item{
    font-size:3.7333333333vw;
  }

  .p-contact-description p{
    margin-bottom:5.3333333333vw;
  }

  .p-form{
    margin:0 0 10.6666666667vw;
  }

  .p-formCheck{
    padding:5.3333333333vw 0;
  }

  .p-form-error{
    margin:0 0 5.3333333333vw;
    padding:1.3333333333vw;
  }

  .p-form-error p{
    font-size:3.7333333333vw;
  }

  .p-contact-section{
    margin-bottom:6.6666666667vw;
  }

  .p-contact-section__heading{
    font-size:4.2666666667vw;
    margin-bottom:2.6666666667vw;
  }

  .p-required{
    font-size:3.2vw;
    padding-left:2.6666666667vw;
  }

  .p-contact-block{
    font-size:3.7333333333vw;
  }

  .p-contact-block--inquery{
    font-size:4.2666666667vw;
  }

  .p-contact-block--inquery .p-contact-block__heading{
    font-size:4.2666666667vw;
  }

  .p-contact-block__heading{
    font-size:3.7333333333vw;
    padding:0.8vw 2.6666666667vw;
  }

  .p-contact-block__col{
    justify-content:space-between;
    padding:3.4666666667vw 0;
  }

  .p-contact-block__row{
    padding:3.4666666667vw 0;
  }

  .p-contact-block__item--full{
    margin-bottom:2.6666666667vw;
  }

  .p-contact-block__list{
    margin:0 1.3333333333vw;
  }

  .p-contact-block__list__item{
    margin:0 0 2.1333333333vw;
  }

  .p-contact-block__list__caution{
    font-size:3.2vw;
    margin:2.6666666667vw 0;
    margin-left:6.6666666667vw;
  }

  .p-contact-annotation{
    font-size:3.2vw;
    margin-top:2.1333333333vw;
  }

  .p-input{
    margin:0;
    padding:1.6vw 2.1333333333vw;
    font-size:3.7333333333vw;
  }

  .p-input--ss{
    width:25%;
  }

  .p-input--s{
    width:70%;
  }

  .p-input--m{
    width:25vw;
  }

  .p-input--l{
    width:70vw;
  }

  .p-contact-address{
    margin:0 0 2.1333333333vw;
  }

  .p-contact-address__label{
    width:24vw;
    flex-shrink:0;
  }

  .p-select{
    margin:0 1.0666666667vw;
    padding-right:1.3333333333vw;
    font-size:3.7333333333vw;
  }

  .p-select select{
    padding:2.1333333333vw 6.4vw 2.1333333333vw 2.1333333333vw;
  }

  .p-select::after{
    margin-left:-5.3333333333vw;
  }

  .p-radio{
    margin:0 1.6vw 0 0;
    vertical-align:-0.8vw;
  }

  .p-checkbox{
    vertical-align:-1.3333333333vw;
    margin-right:4.8vw;
  }

  .p-error:first-of-type{
    margin-top:2.6666666667vw;
  }

  .p-error-min{
    font-size:3.2vw;
  }

  .p-contact-check p{
    font-size:3.7333333333vw;
  }

  .p-contact-check__list{
    margin:2.6666666667vw 0 0;
  }

  .p-contact-check__item{
    margin:0 0 2.6666666667vw;
    padding:1.6vw 2.1333333333vw 1.6vw 14.6666666667vw;
    text-indent:-10.4vw;
    font-size:3.7333333333vw;
  }

  .p-contact-conform{
    padding:2.6666666667vw 5.3333333333vw;
  }

  .p-contact-conform p{
    font-size:3.7333333333vw;
  }

  .p-btn-wrap{
    margin:13.3333333333vw 0;
  }

  .c-btn{
    padding:5.3333333333vw 10.6666666667vw;
  }

  .p-contact-complete{
    margin:8vw 0;
  }

  .p-contact-complete p{
    font-size:5.6vw;
  }

  .p-contact-testfee{
    margin:13.3333333333vw 0;
  }

  .p-contact-testfee__heading{
    font-size:4.2666666667vw;
  }
}
@media screen and (min-width: 641px){

  .c-btn{
    transition:opacity 0.3s;
  }

  .c-btn:hover{
    opacity:0.7;
  }
}