@charset "UTF-8";
main{
  padding-bottom: 8rem;
  margin-bottom: 0;
  background: #f5f6f5;
}
.form-wrap{
  width: min(108rem, 100%);
  padding: 12rem 3.2rem 20rem;
  margin-inline: auto;

  background: #fff;
  border-radius: 1.6rem;
}
.form-wrap .textContent{

  text-align: center;
  line-height: 3;
}
.form-wrap .textContent .heading{
  margin-bottom: 4rem;

  font-size: 3rem;
  font-weight: 600;
  line-height: 1;
}
form{
  width: min(80rem, 100%);
  margin-inline: auto;
}
div.status{
  display: flex;
  margin-bottom: 10.4rem;
}
div.status .indi-item{
  display: flex;
  align-items: center;
  margin-right: .8rem;
}
div.status .indi-item .indi-block{
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 7.2rem;
  height: 7.2rem;
  margin-right: .8rem;

  font-size: 1.7rem;
  line-height: 1;

  color: #fff;
  background: #B5B5B5;
}
div.status .indi-item.active .indi-block{
  background: #6EBCFF !important;
}
div.status .indi-item .indi-block .number{
  margin-bottom: 0.4rem;
  font-size: 2.4rem;
}
div.status .indi-item .indi-arrow{
  font-size: 1.6rem;
  font-weight: 700;
}
div.status .indi-item.active .indi-arrow{
  color: #6EBCFF !important;
}
.inputContainer{
  padding-top: 2.4rem;
  margin-bottom: 9.6rem;
}
#confirm .inputContainer{
  border-top: solid 1px #DEDEDE;
}
.inputContainer > *+*{
  margin-block-start: 3.2rem;
}
.input-wrap{
  display: grid;
  grid-template-columns: repeat(2,1fr);
}
#confirm .input-wrap{
  border-bottom: solid 1px #DEDEDE;
}
.input-wrap .title{
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.6;
}
.input-wrap .text{
  line-height: 1.6;
  white-space: pre-wrap;
}
.input-wrap:has(*[aria-required="true"]) .title::after{
  content: '必須';

  display: inline-block;
  padding: .2rem .4rem;
  margin-left: 1.6rem;

  font-size: 1.3rem;
  color: #fff;

  background: #D52E2E;
}
input[type="text"],
input[type="search"],
input[type="number"],
input[type="email"],
input[type="date"],
textarea,
select{
  width: 100%;
  padding: .4em 1.6rem;

  font-size: 16px;
  word-break: normal;

  border: solid 2px #d1d1d1;
  border-radius: 2px;

  background-clip: padding-box;

  transition: 0.3s all linear;
}
input[type="text"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="date"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus{
  border: solid 2px #3e64ff;
  outline: 0;
}
input[type="text"],
input[type="search"],
input[type="number"],
input[type="email"],
input[type="password"],
textarea,
select{
  /*----dateにinheritは×----*/
  line-height: inherit;
}
textarea{
  padding: 1.6rem;
}
#submitBtn{
  display: none;
}
label.btn{
  width: 28rem;
  margin-inline: auto;
}

@media (max-width : 1080px){
  .form-wrap{
    padding: 12rem 4vw 20rem;
    border-radius: 0;
  }
  form{
    padding: 2.4rem 3vw;
  }
}
@media (max-width : 599px){
.input-wrap{
    display: grid;
    grid-template-columns: 1fr;
    row-gap: .8rem;
  }
}