@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  src: url("../assets/fonts/NotoSansJP-VariableFont_wght.woff2") format("woff2 supports variations"), url("../assets/fonts/NotoSansJP-VariableFont_wght.woff2") format("woff2-variations");
  font-weight: 100 900;
}
@font-face {
  font-family: "Shippori";
  src: url("../assets/fonts/Shipporiantique-regular.woff") format("woff"), url("../assets/fonts/Shipporiantique-regular.woff") format("woff");
}
.eng {
  font-family: "p22-nudgewink-pro", "Shippori", "Noto Sans JP", Noto Sans JP, "Shippori", YuGothic, "Yu Gothic", "Yu Gothic Medium", Meiryo, sans-serif;
  letter-spacing: 0.04em;
  font-weight: 500;
}

p.gre-disclaimer {
  text-align: center;
}
p.gre-disclaimer a {
  color: #808080;
}

main.contact-main {
  padding-bottom: clamp(100px, 20vw, 280px);
}

section.contact {
  width: 780px;
  max-width: 84.6%;
  margin: 0 auto;
  font-family: YuGothic, "Yu Gothic", "Shippori", "Yu Gothic Medium", Meiryo, sans-serif;
  font-size: clamp(12px, 1.5vw, 15px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 170%;
}
section.contact .check-label {
  font-size: clamp(14px, 2vw, 18px);
  margin-bottom: 1.5em;
}
section.contact .check-label .small-text {
  font-size: clamp(12px, 1.5vw, 14px);
}
section.contact .check-row {
  margin-bottom: clamp(30px, 6vw, 65px);
}
section.contact .check-row .wpcf7-list-item:first-child {
  margin-left: 0;
}
section.contact .check-row .wpcf7-list-item .wpcf7-list-item-label {
  display: inline-block;
  margin-top: 0.3em;
}
section.contact input[type=text],
section.contact input[type=tel],
section.contact input[type=email],
section.contact textarea {
  box-sizing: border-box;
  width: 100%;
  background-color: #ffffff;
  border: none;
  min-height: clamp(28px, 4vw, 42px);
  font-size: clamp(12px, 1.5vw, 15px);
  padding: 0.5em 0.6em;
  color: #808080;
  letter-spacing: 0.1em;
  font-weight: 500;
  border: 2px solid #000000;
  font-family: YuGothic, "Yu Gothic", "Shippori", "Yu Gothic Medium", Meiryo, sans-serif;
}
section.contact input[type=text]:focus,
section.contact input[type=tel]:focus,
section.contact input[type=email]:focus,
section.contact textarea:focus {
  outline: 2px solid #E57E26;
  color: #000000;
}
section.contact textarea {
  min-height: clamp(280px, 30vw, 400px);
}
section.contact [type=radio],
section.contact [type=checkbox] {
  position: absolute;
  left: -9999px;
}
section.contact [type=radio] + .wpcf7-list-item-label,
section.contact [type=checkbox] + .wpcf7-list-item-label {
  position: relative;
  padding-left: 5rem;
}
section.contact [type=radio] + .wpcf7-list-item-label::before,
section.contact [type=checkbox] + .wpcf7-list-item-label::before,
section.contact [type=radio] + .wpcf7-list-item-label::after,
section.contact [type=checkbox] + .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
}
section.contact [type=radio] + .wpcf7-list-item-label::before,
section.contact [type=checkbox] + .wpcf7-list-item-label::before {
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  border: 2px solid #000000;
  background-color: #ffffff;
}
section.contact [type=radio] + .wpcf7-list-item-label::after,
section.contact [type=checkbox] + .wpcf7-list-item-label::after {
  top: 0.2em;
  left: 0.5em;
  width: 1em;
  height: 1em;
  content: "✔️";
  transition: all 0.2s;
}
section.contact [type=radio]:not(:checked) + .wpcf7-list-item-label::after,
section.contact [type=checkbox]:not(:checked) + .wpcf7-list-item-label::after {
  opacity: 0;
  transform: scale(0.01);
}
section.contact [type=radio]:checked + .wpcf7-list-item-label::after,
section.contact [type=checkbox]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
  transform: scale(1);
}
section.contact .radio-col .wpcf7-radio {
  display: flex;
  flex-direction: column;
}
section.contact .radio-col .wpcf7-list-item {
  margin: 0 0 0 0;
}
section.contact .bd-row {
  width: 100%;
  flex-wrap: wrap;
}
section.contact .bd-row > * {
  margin: 1%;
}
section.contact .cb-col .wpcf7-checkbox {
  display: flex;
  flex-direction: column;
}
section.contact .cb-col .wpcf7-list-item {
  margin: 0 0 0 0;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 651px) {
  section.contact {
    width: 74%;
    margin: 0 5% 0 auto;
  }
  section.contact .check-row {
    margin-bottom: 20px;
  }
  section.contact .check-row .wpcf7-form-control {
    display: flex;
    flex-direction: column;
  }
  section.contact .check-row .wpcf7-form-control .wpcf7-list-item {
    margin-left: 0;
    margin-bottom: 2em;
  }
  section.contact .top-row {
    margin-bottom: 0.5em;
  }
  section.contact .btm-row {
    margin-bottom: 1.5em;
  }
}
@media screen and (min-width: 651px) {
  section.contact .row-wrapper {
    display: flex;
    margin-bottom: clamp(30px, 6vw, 60px);
  }
  section.contact .row-wrapper .top-row {
    width: 30%;
  }
  section.contact .row-wrapper .btm-row {
    width: 70%;
  }
}

.submit-container {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: clamp(40px, 8vw, 80px);
}
.submit-container p {
  display: flex;
  width: fit-content;
  align-items: center;
  flex-direction: column;
}
.submit-container .submit-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em 1em;
  appearance: none;
  border: none;
  box-sizing: border-box;
  margin: 0 5px;
  width: clamp(240px, 40vw, 500px);
  height: clamp(42px, 7vw, 74px);
  background-color: #000000;
  color: #ffffff;
  cursor: pointer;
  font-size: clamp(18px, 2vw, 26px);
  font-weight: 500;
  text-align: center;
  white-space: nowrap;
  letter-spacing: 0;
}
.submit-container .submit-btn:hover {
  opacity: 0.8;
}

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