@charset "UTF-8";
.contact {
  width: 100%;
  max-width: 880px;
  margin: 3rem auto auto;
}
.contact h1 {
  font-size: 2.4rem;
  font-weight: normal;
  text-align: center;
}
.contact .form-area {
  margin: 2rem auto;
  padding: 3rem;
  background: #eee;
  min-height: 50vh;
}
.contact .form-area form {
  margin-top: 6rem;
}
.contact .form-area p {
  line-height: 1.4;
  text-align: center;
  margin-bottom: 1.4rem;
}
.contact .form-area dl {
  display: flex;
  margin: 1.6rem;
  align-items: center;
}
@media (max-width: 767px) {
  .contact .form-area dl {
    display: flex;
    flex-direction: column;
    align-items: normal;
  }
}
.contact .form-area dl dt {
  width: 30%;
}
.contact .form-area dl dt.req::after {
  content: "※必須";
  color: #f33;
  margin-left: 4px;
  font-size: 1rem;
  font-weight: 600;
}
@media (max-width: 767px) {
  .contact .form-area dl dt {
    width: 100%;
    line-height: 2;
  }
}
.contact .form-area dl dd {
  width: 70%;
}
@media (max-width: 767px) {
  .contact .form-area dl dd {
    width: 100%;
  }
}
.contact .form-area dl dd input, .contact .form-area dl dd textarea {
  width: calc(100% - 16px);
  padding: 6px;
  font-size: 1.6rem;
}
.contact .form-area input[type=submit], .contact .form-area button {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  padding: 10px 30px;
  background: #222;
  color: #fff;
  border: none;
}
.contact .form-area input[type=submit]:hover, .contact .form-area button:hover {
  cursor: pointer;
}

.grecaptcha-badge {
  position: fixed;
  top: 50vh;
}
@media (max-width: 767px) {
  .grecaptcha-badge {
    top: auto;
    bottom: 6rem !important;
  }
}
.grecaptcha-badge iframe {
  margin: auto;
}/*# sourceMappingURL=contact.css.map */