.signup {
  padding-top: 25px;
}
@media (max-width: 767px) {
  .signup {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 768px) {
  .signup {
    padding-left: min(7.2916666667%, 140px);
    padding-right: min(7.2916666667%, 140px);
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .signup {
    padding-left: 75px;
    padding-right: 75px;
  }
}
@media (min-width: 768px) {
  .signup {
    padding-top: 73px;
    padding-bottom: 124px;
  }
}
.signup .page-ttl {
  font-size: 2rem;
  font-family: var(--cinzel);
  letter-spacing: 0.23em;
  margin-bottom: 25px;
}
@media (max-width: 767px) {
  .signup .page-ttl {
    color: var(--colorEB);
  }
}
@media (min-width: 768px) {
  .signup .page-ttl {
    font-size: 2.6rem;
    margin-bottom: 60px;
  }
}
@media (min-width: 1024px) {
  .signup__content {
    display: grid;
    grid-template-columns: min(25vw, 480px) auto;
    gap: min(4.8958333333vw, 94px);
  }
}
.signup .stepListWrapper {
  counter-reset: listnum;
}
@media (max-width: 1023px) {
  .signup .stepListWrapper {
    padding: 0;
    height: 74px;
  }
}
@media (min-width: 1024px) {
  .signup .stepListWrapper {
    margin: 0;
    display: block;
  }
}
.signup .stepListWrapper .stepLabel {
  font-size: 1rem;
}
@media (max-width: 1023px) {
  .signup .stepListWrapper .stepLabel {
    text-align: center;
  }
}
@media (min-width: 1024px) {
  .signup .stepListWrapper .stepLabel {
    height: 145px;
    border-radius: 20px;
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    gap: min(4.1666666667vw, 80px);
  }
  .signup .stepListWrapper .stepLabel:not(:last-child) {
    margin-bottom: 26px;
  }
}
.signup .stepListWrapper .stepLabel:before {
  font-family: var(--cinzel);
  font-size: 1.6rem;
  letter-spacing: 0.23em;
  counter-increment: listnum;
  content: "STEP " counter(listnum);
}
@media (max-width: 1023px) {
  .signup .stepListWrapper .stepLabel:before {
    display: block;
    font-size: 1.1rem;
    margin-bottom: 0.5em;
  }
}
.signup .formTable .inputRow .inputCol input.disabled {
  background: black;
}
.signup .formTable .inputRow .inputCol select.disabled {
  background: black url(../img/icon/ico-down.svg) no-repeat right 15px center;
}
@media (max-width: 1023px) {
  .signup .formTable .form-box {
    padding-bottom: 0;
  }
}
.signup .formTable .inputLabel .require {
  margin-left: 0.5em;
}
@media (max-width: 1023px) {
  .signup .formTable .form-content {
    background: var(--black17);
    padding: 24px 26px 50px;
    border-radius: 20px;
  }
}
@media (max-width: 1366px) {
  .signup .formTable .form-content {
    float: none;
    width: 100%;
  }
  .signup .formTable .inputHead {
    padding: 0;
    float: none;
    width: 100%;
    margin-bottom: 15px;
  }
  .signup .formTable .inputRow .inputColInner {
    margin-left: 0;
  }
}
.signup .formTable .form-ttl {
  color: white;
  font-size: 1.8rem;
}
@media (max-width: 1366px) {
  .signup .formTable .form-ttl {
    float: none;
    width: 100%;
    margin-bottom: 15px;
  }
}
.signup .formTable .form-ttl small {
  color: unset;
  font-size: 1.2rem;
}
@media (max-width: 1366px) {
  .signup .formTable .inputRow .inputHead .inputLabel {
    float: none;
    width: 100%;
  }
}
.signup .formTable .inputLabel {
  color: white;
}
.signup .formTable .birth-wrap .slash {
  color: white;
  font-size: 1.4rem;
}
.signup .formTable .input_attention--pw {
  display: block;
  color: white;
  font-size: 1rem;
  margin-top: 20px;
}
@media (max-width: 1023px) {
  .signup .formTable .input_attention--pw {
    padding-left: 1em;
  }
}
@media (min-width: 1024px) {
  .signup .formTable .input_attention--pw {
    font-size: 1.4rem;
    margin-top: 12px;
  }
}
.signup .formTable .input_attention--pw:not(:last-child) {
  margin-bottom: 16px;
}
@media (min-width: 1024px) {
  .signup .formTable .input_attention--pw:not(:last-child) {
    margin-bottom: 20px;
  }
}
.signup .formTable .password-area {
  position: relative;
}
.signup .formTable .password-area .password--show {
  display: block;
  width: 16px;
  height: 13px;
  background: url(../img/icon/ico-eye.svg) no-repeat center center;
  background-size: contain;
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
}
.signup .formTable .password-area .password--show.on {
  background: url(../img/icon/ico-eye-off.svg) no-repeat center center;
  background-size: contain;
}
.signup .formTable .inputColInner.mb0 {
  margin: 0;
}
.signup .formTable .sex {
  display: flex;
  gap: 31px;
}
@media (max-width: 1023px) {
  .signup .formTable .sex {
    font-size: 1.4rem;
    gap: 1em;
  }
}
.signup .mainContentsInner {
  background: none;
}
@media (max-width: 1023px) {
  .signup .form-box--mail_magazine .form-content {
    padding-bottom: 24px;
  }
  .signup .form-box--mail_magazine label {
    font-size: 1.2rem;
  }
  .signup .form-box--mail_magazine .inputRow:last-child {
    padding: 0;
  }
}
@media (min-width: 1024px) {
  .signup .form-box--mail_magazine {
    padding-top: 74px;
  }
}
.signup .buttonArea {
  padding: 0;
  margin-top: 33px;
}
.buttonArea .form-btn {
  width: auto;
}
@media (max-width: 1023px) {
  .signup .buttonArea .form-btn.single {
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .signup .buttonArea {
    margin-top: 75px;
  }
}
.signup .buttonArea .single .button {
  width: min(310px, 100%);
  height: 40px;
  background: var(--colorB2);
  border-radius: 65px;
  transition: opacity 0.3s ease;
  display: block;
  margin: 0 auto;
}
.signup .buttonArea .button {
  width: min(310px, 100%);
  height: 40px;
  background: var(--colorB2);
  border-radius: 65px;
  transition: opacity 0.3s ease;
  color: rgb(255, 255, 255);
}
.signup .buttonArea .buttonWhite {
  width: min(310px, 100%);
  height: 40px;
  color: var(--black17);
  border-radius: 65px;
  background: rgb(255, 255, 255);
  transition: opacity 0.3s ease;
}
.signup .buttonArea .single .buttonWhite {
  width: min(310px, 100%);
  height: 40px;
  color: var(--black17);
  border-radius: 65px;
  background: rgb(255, 255, 255);
  transition: opacity 0.3s ease;
}
@media (max-width: 1023px) {
  .signup .buttonArea .single .button {
    margin: auto;
  }
  .signup .buttonArea .button {
    margin: auto;
    margin-bottom: 10px;
  }
  .signup .buttonArea .buttonWhite {
    margin: auto;
  }
  .signup .buttonArea .single .buttonWhite {
    margin: auto;
  }
}
@media (min-width: 1024px) {
  .signup .buttonArea .single .button {
    width: 320px;
    height: 50px;
  }
  .signup .buttonArea .button {
    height: 50px;
  }
  .signup .buttonArea .buttonWhite {
    height: 50px;
  }
  .signup .buttonArea .single .buttonWhite {
    height: 50px;
  }
}
