@charset "UTF-8";
.contact-head {
  border-top: 1px solid rgba(4, 37, 95, 0.4);
  border-bottom: 1px solid rgba(4, 37, 95, 0.4);
  text-align: center;
  font-weight: bold;
  color: #4e4b3f;
  font-size: 2.1rem;
  padding: 6rem 0;
}
@media screen and (min-width: 768px) {
  .contact-head {
    margin: 12.5rem 0;
  }
}
.contact-head a {
  color: inherit;
}

.recaptcha {
  margin-top: 4rem;
}

#form {
  width: 88rem;
  max-width: 100%;
  margin: 0 auto;
  margin-top: 12.5rem;
  color: #4e4b3f;
}
@media screen and (max-width: 767px) {
  #form {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
    margin-top: 5.6rem;
  }
}
#form input[type=text],
#form input[type=tel],
#form input[type=email],
#form input[type=date],
#form textarea,
#form select {
  display: block;
  font: inherit;
  width: 100%;
  border: none;
  padding: 1.7rem 1.2rem;
  line-height: 1.5;
  font-size: 1.6rem;
  min-height: 7rem;
  background-color: #fff;
  letter-spacing: 0.025em;
  font-family: "Noto Serif JP", sans-serif;
}
#form input[type=text]::-moz-placeholder, #form input[type=tel]::-moz-placeholder, #form input[type=email]::-moz-placeholder, #form input[type=date]::-moz-placeholder, #form textarea::-moz-placeholder, #form select::-moz-placeholder {
  color: rgba(78, 75, 63, 0.4);
  font: inherit;
  font-size: 1.5rem;
}
#form input[type=text]::placeholder,
#form input[type=tel]::placeholder,
#form input[type=email]::placeholder,
#form input[type=date]::placeholder,
#form textarea::placeholder,
#form select::placeholder {
  color: rgba(78, 75, 63, 0.4);
  font: inherit;
  font-size: 1.5rem;
}
#form textarea {
  resize: vertical;
  min-height: 15rem;
}
@media screen and (min-width: 768px) {
  #form textarea {
    min-height: 10rem;
  }
}
#form input[type=radio] {
  display: inline-block;
  transform: scale(1.4);
  margin-right: 1.2rem;
}
#form .radio-group {
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
  margin-bottom: 1rem;
}
#form dl {
  display: flex;
  margin: 3rem 0;
}
@media screen and (max-width: 767px) {
  #form dl {
    flex-direction: column;
    gap: 0.5rem;
    margin: 1.5rem 0;
  }
}
@media screen and (min-width: 768px) {
  #form dl dt {
    width: 24.7rem;
  }
}
@media screen and (min-width: 768px) {
  #form dl dt label:not(.auto-height) {
    line-height: 7rem;
  }
}
#form dl dt label.required::after {
  content: "（必須）";
  display: inline-block;
  margin-left: 0.5rem;
}
#form dl dd {
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 768px) {
  #form dl dd {
    width: calc(100% - 25rem);
    max-width: 63rem;
  }
}
#form .application-note {
  margin-top: 4rem;
}
#form .application-note ul {
  margin: 1rem 0;
}
#form .application-note ul li {
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  #form .application-note ul li {
    text-indent: -2em;
    padding-left: 2.2em;
  }
}
#form .application-note ul li::before {
  content: "•";
  margin-right: 0.5em;
}
@media screen and (min-width: 768px) {
  #form .application-note ul li::before {
    margin-right: 1.53em;
  }
}
#form .application-note p {
  margin-bottom: 3rem;
}