@charset "UTF-8";
input[type="date"]:in-range::-webkit-datetime-edit-year-field, input[type="date"]:in-range::-webkit-datetime-edit-month-field, input[type="date"]:in-range::-webkit-datetime-edit-day-field, input[type="date"]:in-range::-webkit-datetime-edit-text {
  color: transparent;
}

input[type="date"] {
  position: relative;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  background: transparent;
  bottom: 0;
  color: transparent;
  cursor: pointer;
  height: auto;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: auto;
}

.fc-confirm .note.step1 {
  display: none;
}
.fc-confirm .note.step2 {
  display: block !important;
}

#form {
  padding: 0 0 87px;
}
#form .note {
  text-align: center;
  margin: 25px 0 15px;
  font-size: 11.5px;
  line-height: 2;
}
#form .note.step2 {
  display: none;
}
#form .form-row {
  margin: 0 6.7vw;
  border-bottom: 1px solid;
  padding: 15px 0;
  width: auto;
}
#form .confirm-hide {
  text-align: center;
  padding: 30px 0 0;
  margin: 0 5vw;
  font-weight: 500;
  line-height: 2.3;
}
#form .confirm-hide .privacy-share a {
  color: #002fdf;
  text-decoration: underline;
  text-underline-offset: 4px;
}
#form .confirm-hide .privacy-share a:hover {
  text-decoration: none;
}
#form .confirm-hide #privacy_checkbox_box {
  margin: 30px 0 0;
}
#form .confirm-hide #privacy_checkbox_box .i-custom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0.05em;
}
#form .confirm-hide #privacy_checkbox_box .i-custom input {
  margin-right: 10px;
  width: 16px;
  height: 16px;
  border-color: #8d8d8d;
}

#form .form-row .caption {
  font-weight: bold;
}

#form .form-row .caption-require::before {
  content: '必須';
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  margin-right: 15px;
  background: #c31111;
  font-size: 9.5px;
  font-weight: 500;
  width: 35px;
  text-align: center;
  line-height: 20px;
}

#form .form-row .form-value {
  margin-top: 10px;
}
#form .form-row .form-value .noted {
  margin: 10px 0 0;
  background: #eeeeee;
  font-size: 9px;
  font-weight: bold;
  color: #a1a1a1;
  padding: 3.5px 0 3.5px 10px;
  line-height: 2;
}

#form .form-row .form-value input {
  border: 1px solid #8d8d8d;
  background: transparent;
  outline: 0;
  width: 100%;
  padding: 13px 0 13px 4px;
}
#form .form-row .form-value input.readonly {
  border: 0;
}

.btn-link {
  width: 66.6vw;
  margin: 40px auto 0;
  text-decoration: none;
  display: block;
  text-align: center;
  font-size: 16px;
  line-height: 1.5;
  padding: 18px 0;
  color: #fff;
  background: #c31111;
  position: relative;
}
.btn-link::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  background: url("../img/entry/arrow_off.png") no-repeat center right/100% auto;
  width: 5px;
  right: 15px;
}

#form .form-row .i-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 20px;
  font-weight: 500;
}
#form .form-row .i-list .i-custom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#form .form-row .i-list .i-custom input[type="radio"] {
  width: 19px;
  height: 19px;
  margin-right: 10px;
}
#form .form-row .i-list.i-list2 {
  gap: 10px 0;
}
#form .form-row .i-list.i-list2 .i-custom {
  width: 45%;
}

@media screen and (min-width: 768px) {
  #form {
    padding: 0 0 220px;
  }
  #form .note {
    margin: 99px 0 79px;
    font-size: 16px;
    line-height: 1.875;
  }
  #form .form-row {
    width: 1000px;
    margin: 0 auto;
    max-width: calc(100% - 40px);
    border-top: 1px solid;
    border-bottom: 0;
    padding: 30px 0 30px 30px;
  }
  #form .form-row .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #form .form-row .error {
    margin: 0 0 0 auto;
    width: calc(100% - 260px);
  }
  #form .confirm-hide {
    border-top: 1px solid;
    padding: 51px 0 0;
    width: 1000px;
    margin: 0 auto;
    max-width: calc(100% - 40px);
    font-size: 15px;
    line-height: 2;
  }
  #form .confirm-hide #privacy_checkbox_box {
    margin: 41px 0 0;
  }
  #form .confirm-hide #privacy_checkbox_box .i-custom input {
    width: 19px;
    height: 19px;
  }

  #form .form-row .caption {
    width: 260px;
  }

  #form .form-row .caption-require::before {
    margin-right: 5px;
    font-size: 12px;
    width: 33px;
  }

  #form .form-row .form-value {
    margin-top: 0;
    width: calc(100% - 260px);
  }
  #form .form-row .form-value .noted {
    font-size: 13px;
  }

  .btn-link {
    margin: 65px auto 0;
    width: 500px;
    font-size: 24px;
    padding: 32px 0;
  }
  .btn-link::before {
    width: 10px;
    right: 30px;
  }
  .btn-link:hover {
    opacity: 0.8;
  }

  #form .form-row .i-list {
    gap: 0 20px;
  }
  #form .form-row .i-list .i-custom {
    cursor: pointer;
  }
  #form .form-row .i-list .i-custom input[type="radio"] {
    width: 24px;
    height: 24px;
  }
  #form .form-row .i-list.i-list2 {
    font-size: 14px;
    gap: 0 20px;
  }
  #form .form-row .i-list.i-list2 .i-custom {
    width: auto;
  }
}
