@charset "UTF-8";
/* ======================================================
message
====================================================== */
.contactForm {
  padding: 14.6666666667vw 0vw 0vw 0vw;
  font-size: 2.4vw;
  line-height: 2.1111111111;
  letter-spacing: 0.3em; }
  @media screen and (min-width: 1000px) {
    .contactForm {
      padding: 110px 0 0;
      font-size: 18px; } }

.contactForm__inr {
  width: 82vw;
  max-width: 100%;
  margin: 0 auto;
  padding: 0; }
  @media screen and (min-width: 1000px) {
    .contactForm__inr {
      max-width: 1090px;
      padding: 0 30px; } }

.contactForm__bg {
  background-image: url("../images/img_contact01.png"), url("../images/img_contact02.png");
  background-position: right 14% top 4.2%, left 13% bottom 11%;
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-color: #FBFBF9;
  padding: 13.3333333333vw 0vw 21.3333333333vw 0vw; }
  @media screen and (min-width: 1000px) {
    .contactForm__bg {
      padding: 100px 0 160px; } }

.contactForm_lead {
  text-align: justify;
  font-weight: bold;
  color: #231815;
  width: 82vw;
  margin: 0 auto;
  margin-bottom: 13.3333333333vw; }
  @media screen and (min-width: 1000px) {
    .contactForm_lead {
      width: auto;
      text-align: center;
      margin-bottom: 100px; } }

.contactForm dl {
  text-align: left;
  margin-bottom: 4.6666666667vw; }
  @media screen and (min-width: 1000px) {
    .contactForm dl {
      margin-bottom: 35px; } }
  .contactForm dl:last-of-type {
    margin-bottom: 9.3333333333vw; }
    @media screen and (min-width: 1000px) {
      .contactForm dl:last-of-type {
        margin-bottom: 70px; } }

.contactForm label {
  color: #000000;
  font-weight: bold;
  margin-bottom: 1.3333333333vw; }
  @media screen and (min-width: 1000px) {
    .contactForm label {
      margin-bottom: 10px; } }

.required {
  display: flex;
  align-items: center; }

.required::after {
  content: "必 須";
  display: block;
  text-align: center;
  font-weight: bold;
  white-space: nowrap;
  padding: 5px 10px;
  color: #943F43;
  border: 1px solid #943F43;
  margin-left: 2.6666666667vw;
  font-size: 2.1333333333vw;
  letter-spacing: 0.1em;
  line-height: 1; }
  @media screen and (min-width: 1000px) {
    .required::after {
      font-size: 16px;
      margin-left: 15px; } }

.contactForm input[type="text"],
.contactForm input[type="email"],
.contactForm input[type="tel"] {
  width: 100%;
  border: 1px solid #CCCCCC;
  background-color: #FFFFFF;
  padding: 15px;
  font-size: 3.7vw; }
  @media screen and (min-width: 1000px) {
    .contactForm input[type="text"],
    .contactForm input[type="email"],
    .contactForm input[type="tel"] {
      font-size: 19px;
      height: 78px;
      line-height: 78px; } }

.contactForm textarea {
  font-size: 3.7vw;
  resize: vertical;
  height: 50vw;
  width: 100%;
  border: 1px solid #CCCCCC;
  background-color: #FFFFFF;
  padding: 5px 15px;
  display: block;
  font-family: YuMincho, "Yu Mincho", 游明朝体, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", 'Noto Serif JP' ,"ＭＳ 明朝", "MS Mincho"; }
  @media screen and (min-width: 1000px) {
    .contactForm textarea {
      font-size: 19px;
      height: 590px; } }

.contactForm select {
  width: 100%;
  border: 1px solid #CCCCCC;
  background-color: #FFFFFF;
  padding: 15px;
  font-size: 3.7vw; }
  @media screen and (min-width: 1000px) {
    .contactForm select {
      font-size: 19px;
      height: 78px;
      line-height: 78px; } }

@media (max-width: 1000px) {
  #mainvisual .mv .catch {
    position: absolute;
    top: 20vw;
    left: 50%;
    margin-left: -30vw;
    width: 60vw; } }

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