@charset "UTF-8";
@media screen and (min-width: 801px) {
  .sp-only {
    display: none;
  }
}

.responsive-small {
  display: none;
}
@media screen and (min-width: 1001px) {
  .responsive-small {
    display: unset;
  }
}

.responsive-mid {
  display: none;
}
@media screen and (min-width: 1201px) {
  .responsive-mid {
    display: unset;
  }
}

.responsive-wide {
  display: none;
}
@media screen and (min-width: 1501px) {
  .responsive-wide {
    display: unset;
  }
}

.responsive-xl {
  display: none;
}
@media screen and (min-width: 1921px) {
  .responsive-xl {
    display: unset;
  }
}

.no-sp {
  display: none;
}
@media screen and (min-width: 801px) {
  .no-sp {
    display: unset;
  }
}

.no-sp-small {
  display: none;
}
@media screen and (min-width: 1001px) {
  .no-sp-small {
    display: unset;
  }
}

.no-sp-small-mid {
  display: none;
}
@media screen and (min-width: 1201px) {
  .no-sp-small-mid {
    display: unset;
  }
}

.no-sp-small-mid-wide {
  display: none;
}
@media screen and (min-width: 1501px) {
  .no-sp-small-mid-wide {
    display: unset;
  }
}

.xl-only {
  display: none;
}
@media screen and (min-width: 1921px) {
  .xl-only {
    display: unset;
  }
}

.gre-disclaimer {
  color: #707070;
  text-align: center;
  max-width: 500px;
  margin: 0 auto;
}
.gre-disclaimer a {
  text-decoration: underline !important;
}

section.contact-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: clamp(90px, 15vw, 200px) auto clamp(80px, 20vw, 180px) auto;
}
section.contact-area .title-group {
  margin-bottom: clamp(36px, 10vw, 120px);
  width: 82%;
  max-width: 500px;
  text-align: center;
}
section.contact-area .title-group h3 {
  width: 100%;
  max-width: 440px;
  margin: 0 auto;
  border-bottom: 2px solid #3A9366;
  line-height: 180%;
}
section.contact-area .title-group p {
  color: #565656;
  display: block;
  margin: 2em auto 0 auto;
}
section.contact-area .contact-form {
  width: 68%;
  max-width: 800px;
}
section.contact-area .contact-form .form-row {
  width: 100%;
  font-size: clamp(16px, 2vw, 20px);
  padding: 0.5em 0;
  font-weight: 500;
  color: #5D5D5D;
}
section.contact-area .contact-form .form-row .form-title p {
  color: #121212;
  width: 100%;
  margin-bottom: 0.6em;
}
section.contact-area .contact-form .form-row .form-title.required p:after {
  content: "※";
  color: #CB0C0C;
}
section.contact-area .contact-form .form-row .form-input {
  width: 100%;
}
section.contact-area .contact-form .form-row .form-input p {
  width: 100%;
}
section.contact-area .contact-form .form-row .form-input p input[type=text],
section.contact-area .contact-form .form-row .form-input p input[type=email],
section.contact-area .contact-form .form-row .form-input p input[type=tel],
section.contact-area .contact-form .form-row .form-input p textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 0.5em;
  color: #5D5D5D;
  background-color: #EDEDED;
  border: unset;
  font-size: clamp(13px, 2vw, 20px);
}
section.contact-area .contact-form .form-row .form-input p input[type=text]:focus,
section.contact-area .contact-form .form-row .form-input p input[type=email]:focus,
section.contact-area .contact-form .form-row .form-input p input[type=tel]:focus,
section.contact-area .contact-form .form-row .form-input p textarea:focus {
  outline: 1px solid #3A9366;
  border: unset;
}
section.contact-area .contact-form .form-row .form-input p textarea {
  height: clamp(250px, 40vw, 450px);
}
@media screen and (min-width: 801px) {
  section.contact-area .contact-form .form-row {
    display: flex;
  }
  section.contact-area .contact-form .form-row .form-title {
    min-width: 32%;
    width: 32%;
    margin: 0;
    box-sizing: border-box;
    padding: 1em 1em 1em 0;
    vertical-align: top;
    line-height: 100%;
  }
}

.submit-container {
  display: flex;
  align-items: center;
  text-align: center;
  margin: clamp(32px, 8vw, 120px) auto 0;
}
.submit-container p {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: fit-content;
  margin: 0 auto;
}

.submit-btn {
  appearance: unset;
  background-color: #3A9366;
  color: #ffffff;
  border: unset;
  text-align: center;
  padding: 1em 3em;
  line-height: 100%;
  font-size: clamp(16px, 2vw, 20px);
  cursor: pointer;
}
.submit-btn:hover {
  opacity: 0.7;
}

@media screen and (min-width: 801px) {
  .submit-container {
    margin-left: 32%;
  }
  .submit-container p {
    margin-left: 0;
  }
}
section.contact-tel {
  width: 82%;
  max-width: 800px;
  margin: 0 auto clamp(70px, 10vw, 180px) auto;
}
section.contact-tel .phone-details {
  width: 100%;
  box-sizing: border-box;
  padding: 16px;
  background-color: #ffffff;
  font-weight: bold;
  margin: 0 auto 20px;
}
section.contact-tel .phone-details p {
  font-size: clamp(14px, 1.5vw, 16px);
  line-height: 180%;
}
section.contact-tel .phone-details a.highlight {
  appearance: none;
  font-size: clamp(40px, 5vw, 50px);
  line-height: 140%;
}
@media screen and (min-width: 801px) {
  section.contact-tel .phone-details {
    width: fit-content;
    text-align: start;
    margin-bottom: 0;
    margin-left: 32%;
  }
}

/*# sourceMappingURL=contact.css.map */
