@media print, screen and (min-width: 768px) {
  .l-section {
    margin-top: 70px;
  }
}
@media screen and (max-width: 767px) {
  .l-section {
    margin-top: 30px;
  }
}

.gs21-FormTextInputUnit, .gs21-FormAnnotation, .gs21-FormSelectButtonUnit, .gs21-FormBox, .gs21-FormTextAreaUnit {
  margin-top: 15px;
}

.gs21-HeadingLv3 {
  margin: 30px 0 0;
}

.gs21-FormSelectButtonUnit:after {
  pointer-events: none;
}
.c-alert-txt {
  font-weight: 700;
  color: #cc0000;
  letter-spacing: 1px;
  font-size: 1.1235em;
  margin-bottom: 60px;
}
.c-alert-txt span {
  margin-right: 10px;
}
@media screen and (max-width: 767px) {
  .c-alert-txt {
    font-size: 1em;
  }
}

.step-wrap {
  position: relative;
  max-width: 980px;
  margin: 0 auto 70px;
  display: flex;
  justify-content: space-between;
}
.step {
  position: relative;
  width: 33.333%;
  text-align: center;
  padding-bottom: 32px;
}
.step .num {
  display: block;
  font-size: 1.25em;
  font-weight: 500;
  color: #000;
  line-height: normal;
}
.step .label {
  font-size: 1.25em;
  font-weight: 500;
  color: #000;
}
.step::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #000;
  z-index: 2;
}
.step.is-active .num,
.step.is-active .label {
  color: #cc0000;
}
.step.is-active::after {
  background: #cc0000;
}
.step-line {
  position: absolute;
  bottom: 8px;
  transform: translateY(-50%);
  left: 16.666%;
  right: 16.666%;
  border: 1px solid #000;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .step-wrap {
    margin-bottom: 50px;
  }
  .step {
    padding-bottom: 25px;
  }
  .step .num {
    font-size: 4vw;
  }
  .step .label {
    font-size: 3.2vw;
  }
  .step::after {
    width: 14px;
    height: 14px;
  }
  .step-line {
    bottom: 5px;
  }
}

.heading-img {
  margin-top: 60px;
}
@media print, screen and (min-width: 768px) {
  .heading-img {
    max-width: 269px;
  }
}
@media screen and (max-width: 767px) {
  .heading-img {
    max-width: 185px;
  }
}
.heading-img img {
  width: 100%;
  height: auto;
  display: block;
}

.gs21-FormAlert {
  margin: 20px 0 0;
  color: #c40001;
}
.gs21-FormAlert img {
  padding-right: 5px;
  vertical-align: -3px;
}

.gs21-FormAlert {
  display: none;
}

.address {
  height: 41px;
}

.c-footer::after {
  z-index: -1;
}

.form-column {
  display: flex;
  justify-content: space-between;
}
.form-column .form-cell {
  width: 49%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.form-column .gs21-HeadingLv3 {
  margin-top: 30px !important;
}

