.contact {
  color: #4d4d4d;
}
.contact.contact--thanks .section-1 {
  background-image: url("../images/contact-thanks-bg.png");
  background-repeat: no-repeat;
  background-position: center 380px;
  background-size: 110% 390px;
}
.contact.contact--thanks .section-1 .inner {
  padding-bottom: 360px;
}
.contact.contact--thanks .section-1 .inner > h1 {
  margin-bottom: 0;
}
.contact.contact--thanks .thanks-message {
  margin: 205px 0 0;
  text-align: center;
  line-height: 52px;
  font-size: 16px;
  font-weight: 500;
  color: #4d4d4d;
}
.contact.contact--thanks .thanks-actions {
  margin-top: 96px;
  text-align: center;
}
.contact.contact--thanks .thanks-actions > a {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  width: 160px;
  height: 104px;
  padding: 0 28px 0 0;
  border: none;
  border-radius: 50%;
  background-color: transparent;
  color: #4d4d4d;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.04em;
  white-space: nowrap;
  overflow: visible;
  box-sizing: border-box;
}
.contact.contact--thanks .thanks-actions > a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 50%;
  background-color: #ff8b48;
  transition: transform 0.2s ease;
}
.contact.contact--thanks .thanks-actions > a > svg {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.contact.contact--thanks .thanks-actions > a:hover::before,
.contact.contact--thanks .thanks-actions > a:hover > svg {
  transform: translateX(16px);
}
.contact .section-1 {
  background-image: url("../images/how-bg.png");
  background-repeat: no-repeat;
  background-size: 110% 665px;
  background-position: center 380px;
}
.contact .section-1 .inner {
  max-width: 976px;
  margin: 0 auto;
  padding: 250px 0 300px;
}
.contact .section-1 .inner > h1 {
  font-size: 63px;
  color: #ff8b48;
  font-family: var(--font-en);
  font-weight: bold;
  text-align: center;
}
.contact .section-1 .inner > h2 {
  margin-top: 205px;
  text-align: center;
  line-height: 32px;
  font-size: 16px;
  font-weight: 500;
}
.contact .section-1 .inner .wpcf7 {
  max-width: 976px;
  margin: 96px auto 0;
}
.contact .section-1 .inner .wpcf7 form,
.contact .section-1 .inner > form {
  max-width: 976px;
  margin: 96px auto 0;
}
.contact .section-1 .inner .wpcf7 form > .inner,
.contact .section-1 .inner > form > .inner {
  border: 1px solid #f2a0a0;
  border-radius: 10px;
  background-color: #fff;
  padding: 80px 116px;
}
.contact .section-1 .inner .wpcf7 form > .inner > p,
.contact .section-1 .inner > form > .inner > p {
  line-height: 30px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul,
.contact .section-1 .inner > form > .inner > ul {
  display: flex;
  gap: 40px;
  flex-direction: column;
  margin-top: 80px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li > label,
.contact .section-1 .inner > form > .inner > ul > li > label {
  display: block;
  font-size: 18px;
  margin-bottom: 12px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li > label > span,
.contact .section-1 .inner > form > .inner > ul > li > label > span {
  font-size: 14px;
  color: #ff0000;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li .wpcf7-form-control-wrap,
.contact .section-1 .inner > form > .inner > ul > li .wpcf7-form-control-wrap {
  display: block;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li input[type=text],
.contact .section-1 .inner .wpcf7 form > .inner > ul > li input[type=email],
.contact .section-1 .inner .wpcf7 form > .inner > ul > li input[type=tel],
.contact .section-1 .inner .wpcf7 form > .inner > ul > li select,
.contact .section-1 .inner .wpcf7 form > .inner > ul > li textarea,
.contact .section-1 .inner > form > .inner > ul > li input[type=text],
.contact .section-1 .inner > form > .inner > ul > li input[type=email],
.contact .section-1 .inner > form > .inner > ul > li input[type=tel],
.contact .section-1 .inner > form > .inner > ul > li select,
.contact .section-1 .inner > form > .inner > ul > li textarea {
  display: block;
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 12px 16px;
  font-size: 16px;
  font-family: inherit;
  color: #4d4d4d;
  background-color: #fff;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li select,
.contact .section-1 .inner > form > .inner > ul > li select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234d4d4d' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li textarea,
.contact .section-1 .inner > form > .inner > ul > li textarea {
  resize: vertical;
  min-height: 320px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree > p,
.contact .section-1 .inner > form > .inner > ul > li.agree > p {
  margin: 0 0 12px;
  font-size: 18px;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree > p > span,
.contact .section-1 .inner > form > .inner > ul > li.agree > p > span {
  font-size: 14px;
  color: #ff0000;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree .wpcf7-list-item,
.contact .section-1 .inner > form > .inner > ul > li.agree .wpcf7-list-item {
  margin: 0;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree .wpcf7-list-item label,
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree > label,
.contact .section-1 .inner > form > .inner > ul > li.agree .wpcf7-list-item label,
.contact .section-1 .inner > form > .inner > ul > li.agree > label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
  padding-left: 16px;
  font-size: 16px;
  color: #808080;
  cursor: pointer;
}
.contact .section-1 .inner .wpcf7 form > .inner > ul > li.agree input[type=checkbox],
.contact .section-1 .inner > form > .inner > ul > li.agree input[type=checkbox] {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  cursor: pointer;
}
.contact .section-1 .inner .wpcf7 form button[type=submit],
.contact .section-1 .inner > form button[type=submit] {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 160px;
  height: 104px;
  margin: 48px auto 0;
  padding: 0;
  border: none;
  border-radius: 50%;
  background-color: transparent;
  color: #4d4d4d;
  font-size: 18px;
  font-family: inherit;
  font-weight: 500;
  letter-spacing: 0.04em;
  cursor: pointer;
}
.contact .section-1 .inner .wpcf7 form button[type=submit]::before,
.contact .section-1 .inner > form button[type=submit]::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 50%;
  background-color: #ff8b48;
  transition: transform 0.2s ease;
}
.contact .section-1 .inner .wpcf7 form button[type=submit] > svg,
.contact .section-1 .inner > form button[type=submit] > svg {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.contact .section-1 .inner .wpcf7 form button[type=submit]:hover::before,
.contact .section-1 .inner .wpcf7 form button[type=submit]:hover > svg,
.contact .section-1 .inner > form button[type=submit]:hover::before,
.contact .section-1 .inner > form button[type=submit]:hover > svg {
  transform: translateX(16px);
}
.contact .section-1 .inner .wpcf7 form {
  margin: 0;
}
.contact .section-1 .inner .wpcf7-response-output {
  margin: 24px auto 0;
  max-width: 976px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .contact.contact--thanks .section-1 {
    background-image: url("../images/contact-thanks-bg-sp.png");
    background-size: 110% 190px;
    background-position: center 264px;
  }
  .contact.contact--thanks .section-1 .inner {
    padding-bottom: 240px;
  }
  .contact.contact--thanks .thanks-message {
    margin-top: 88px;
    padding: 0 14px;
    text-align: left;
    line-height: 30px;
    font-size: 16px;
  }
  .contact.contact--thanks .thanks-actions {
    margin-top: 133px;
  }
  .contact.contact--thanks .thanks-actions > a {
    width: 140px;
    height: 90px;
    padding-right: 20px;
    font-size: 16px;
    gap: 12px;
  }
  .contact .section-1 {
    background-position: center 265px;
    background-image: url("../images/contact-bg-sp.png");
  }
  .contact .section-1 .inner {
    padding: 180px 14px 200px;
  }
  .contact .section-1 .inner > h1 {
    font-size: 40px;
  }
  .contact .section-1 .inner > h2 {
    margin-top: 88px;
    text-align: left;
    padding: 0 14px;
  }
  .contact .section-1 .inner .wpcf7 {
    margin-top: 80px;
  }
  .contact .section-1 .inner .wpcf7 form > .inner,
  .contact .section-1 .inner > form > .inner {
    padding: 56px 30px;
  }
  .contact .section-1 .inner .wpcf7 form > .inner > ul,
  .contact .section-1 .inner > form > .inner > ul {
    margin-top: 56px;
  }
}/*# sourceMappingURL=contact.css.map */