@charset "UTF-8";
@-webkit-keyframes blink_animation {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blink_animation {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.kv-title-main__inner > div:nth-child(8) {
  padding: 0 1.3vw;
}

.box1 {
  padding-bottom: 16.6vw;
}

.box1.box-confirm {
  padding-top: 12.4vw;
}

.box1.box-confirm .box-title {
  font-size: 2.12vw;
  font-weight: bold;
  text-align: justify;
  line-height: 1.47;
  letter-spacing: 0.05em;
  margin-bottom: 5.9vw;
  -webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  -o-transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1), -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  -webkit-transform: translateY(5em);
      -ms-transform: translateY(5em);
          transform: translateY(5em);
  opacity: 0;
}

.box1.box-confirm .box-title.show {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.box-content {
  width: 83.33%;
}

.box-textarea p span {
  color: #ff3636;
}

.form-area {
  -webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  -o-transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1), -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  -webkit-transform: translateY(5em);
      -ms-transform: translateY(5em);
          transform: translateY(5em);
  opacity: 0;
}

.form-area.show {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.form-area.confirm .contact-input:nth-child(6) .contact-input__text {
  padding: 2.7vw 0 1.3vw;
}

.form-area.confirm .contact-input:nth-child(7) {
  margin-bottom: 5.6vw;
}

.form-area.confirm .contact-input__text {
  font-size: 1vw;
  padding: 2.7vw 0 1.3vw;
  line-height: 2.12;
}

.contact-input {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 100%;
}

.contact-input:nth-child(6) {
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.contact-input:nth-child(6) .contact-input__text {
  padding: 3.3vw 0 2vw;
}

.contact-input:nth-child(6) .error-message {
  top: 4.5vw;
  right: 5vw;
}

.contact-input:nth-child(7) .contact-input__text {
  padding: 2.6vw 0 1.3vw;
}

.contact-input:nth-child(7) .error-message {
  top: 2.8vw;
}

.contact-input:nth-child(8) {
  margin-bottom: 3.12vw;
}

.contact-input:nth-child(8) .contact-input__text {
  padding-top: 3.3vw;
  padding-bottom: 0;
}

.contact-input:nth-child(8):before, .contact-input:nth-child(8):after {
  display: none;
}

.contact-input:before {
  content: " ";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #d8d8d8;
  position: absolute;
  left: 0;
  bottom: 0;
}

.contact-input:after {
  content: " ";
  display: block;
  width: 22%;
  height: 1px;
  background-color: #000;
  position: absolute;
  left: 0;
  bottom: 0;
}

.contact-input.error .error-message {
  display: block;
}

.contact-input__title {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 22%;
      -ms-flex: 0 0 22%;
          flex: 0 0 22%;
  font-size: 1vw;
  font-weight: bold;
  line-height: 2.12;
  padding-top: 2.5vw;
}

.contact-input__title span.red {
  color: #ff3636;
  padding-left: 0.3vw;
}

.contact-input__text {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 78%;
      -ms-flex: 0 0 78%;
          flex: 0 0 78%;
  line-height: 1;
  padding: 2.7vw 0 1.4vw;
}

.contact-input__text p {
  font-size: 1vw;
  line-height: 2.12;
  margin-bottom: 1.2vw;
}

.contact-input__text input {
  width: 100%;
  height: 1vw;
  font-size: 1vw;
  line-height: 1;
  padding: 1vw 0;
  border: none;
  background-color: transparent;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.contact-input__text input.email {
  font-family: "Inter", sans-serif;
}

.contact-input__text input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text input::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text input::placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text input:-webkit-autofill, .contact-input__text input:-internal-autofill-selected {
  background-color: transparent !important;
}

.contact-input__text select {
  width: 100%;
  height: 3.76vw;
  line-height: 3.76vw;
  border-radius: 3.76vw;
  padding-left: 2.6vw;
  font-size: 1vw;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  background-color: #fff;
  border: none;
  background-image: url(/contact/img/contact-pulldown-arrow.png);
  background-repeat: no-repeat;
  background-size: 1vw auto;
  background-position: 95% center;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000;
}

.contact-input__text textarea {
  width: 100%;
  height: 16.9vw;
  font-size: 1vw;
  padding: 0;
  border: none;
  background-color: transparent;
  outline: none;
  resize: none;
  line-height: 2.12;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.contact-input__text textarea::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text textarea::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text textarea:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text textarea::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.contact-input__text .contact-input-policy {
  background-color: #fff;
  padding: 2vw 2.6vw;
  height: 13.3vw;
}

.contact-input__text .contact-input-policy .contact-input-policy__inner {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  height: 100%;
}

.contact-input__text .contact-input-policy p {
  font-size: 0.875vw;
  line-height: 1.71;
}

.contact-input__text .contact-input-policy p:last-child {
  margin-bottom: 0;
}

.contact-input__text .contact-input-policy p.contact-input-policy__title {
  font-weight: bold;
  margin-bottom: 0;
}

.contact-input__text .contact-input-policy p.contact-input-policy__indent {
  text-indent: -1.7em;
  padding-left: 1.7em;
  margin-bottom: 0;
}

.contact-input__text .contact-input-policy p.contact-input-policy__bottom {
  text-indent: -1.7em;
  padding-left: 1.7em;
}

.contact-input__text .contact-input-policy p.contact-input-policy__double-indent {
  padding-left: 2em;
  text-indent: -0.9em;
  margin-bottom: 0;
}

.contact-input__text .contact-input-policy p.contact-input-policy__double-bottom {
  padding-left: 2em;
  text-indent: -0.9em;
}

.error-message {
  font-size: 1vw;
  position: absolute;
  right: 0;
  top: 3.2vw;
  pointer-events: none;
  color: #ff3636;
  display: none;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.contact-checkarea {
  display: inline-block;
  cursor: pointer;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  margin-bottom: 5.1vw;
}

.contact-checkarea.active .contact-checkarea__box:before {
  visibility: visible;
}

.contact-checkarea.error .error-message {
  display: block;
}

.contact-checkarea .error-message {
  font-size: 1.25vw;
  right: -0.7vw;
  top: 2.5vw;
}

.contact-checkarea__box {
  width: 2.13vw;
  height: 2.13vw;
  display: inline-block;
  background-color: #fff;
  margin-right: 1vw;
}

.contact-checkarea__box:before {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-image: url(/contact/img/contact-check.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  visibility: hidden;
}

.contact-checkarea__text {
  font-size: 1.25vw;
  line-height: 2.13vw;
  display: inline-block;
  vertical-align: top;
}

.contact-send__btn {
  width: 48.75vw;
  height: 9.38vw;
  line-height: 9.38vw;
  text-align: center;
  border-radius: 9.38vw;
  cursor: pointer;
  background-color: #000;
  margin: 0 auto;
  overflow: hidden;
  -webkit-transition: background-color 0.3s cubic-bezier(0.63, 0, 0.45, 1), opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: background-color 0.3s cubic-bezier(0.63, 0, 0.45, 1), opacity 0.5s ease-out, -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  -o-transition: background-color 0.3s cubic-bezier(0.63, 0, 0.45, 1), opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: background-color 0.3s cubic-bezier(0.63, 0, 0.45, 1), opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
  transition: background-color 0.3s cubic-bezier(0.63, 0, 0.45, 1), opacity 0.5s ease-out, transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1), -webkit-transform 0.5s cubic-bezier(0.13, 0.38, 0.12, 1);
}

.contact-send__btn:before {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 9.38vw;
  background-color: #FF6B35;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.63, 0, 0.45, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.63, 0, 0.45, 1);
  -o-transition: transform 0.5s cubic-bezier(0.63, 0, 0.45, 1);
  transition: transform 0.5s cubic-bezier(0.63, 0, 0.45, 1);
  transition: transform 0.5s cubic-bezier(0.63, 0, 0.45, 1), -webkit-transform 0.5s cubic-bezier(0.63, 0, 0.45, 1);
  -webkit-transform: translateY(102%);
      -ms-transform: translateY(102%);
          transform: translateY(102%);
}

.contact-send__btn.hide {
  pointer-events: none;
  opacity: 0.5;
}

.contact-send__tex {
  font-size: 1.87vw;
  color: #fff;
  line-height: 9.38vw;
  -webkit-transition: color 0.5s ease-out;
  -o-transition: color 0.5s ease-out;
  transition: color 0.5s ease-out;
}

.contact-send__arrow {
  width: 1.07vw;
  position: absolute;
  left: 91.5%;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  overflow: hidden;
}

.contact-send-arrow__inner {
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44);
  transition: -webkit-transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44);
  -o-transition: transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44);
  transition: transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44);
  transition: transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44), -webkit-transform 0.6s cubic-bezier(0.29, 0.9, 0, 1.44);
}

.contact-send-arrow__inner:nth-child(2) {
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transform: translate(-130%, -130%);
      -ms-transform: translate(-130%, -130%);
          transform: translate(-130%, -130%);
}

.contact-send-arrow__inner img {
  -webkit-transition: opacity 0.5s ease-out;
  -o-transition: opacity 0.5s ease-out;
  transition: opacity 0.5s ease-out;
  display: block;
}

.contact-send-arrow__inner img.rev {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}

.contact-input__textarea {
  padding: 1.6vw 5.4vw;
  background-color: #fff;
}

.contact-input__textarea .contact-input-policy {
  overflow: hidden scroll;
  height: 10.6vw;
  -webkit-overflow-scrolling: touch;
}

@media screen and (min-width: 769px) {
  .contact-send__btn:hover {
    -webkit-transition: background-color 0.5s cubic-bezier(0.63, 0, 0.45, 1) 0.2s;
    -o-transition: background-color 0.5s cubic-bezier(0.63, 0, 0.45, 1) 0.2s;
    transition: background-color 0.5s cubic-bezier(0.63, 0, 0.45, 1) 0.2s;
    background-color: #FF6B35;
  }
  .contact-send__btn:hover:before {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .contact-send__btn:hover .contact-send__tex {
    color: #000;
  }
  .contact-send__btn:hover .contact-send-arrow__inner {
    -webkit-transform: translate(100%, 100%);
        -ms-transform: translate(100%, 100%);
            transform: translate(100%, 100%);
  }
  .contact-send__btn:hover .contact-send-arrow__inner:nth-child(2) {
    -webkit-transition: -webkit-transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s;
    transition: -webkit-transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s;
    -o-transition: transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s;
    transition: transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s;
    transition: transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s, -webkit-transform 0.7s cubic-bezier(0.29, 0.9, 0, 1.44) 0.2s;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .contact-send__btn:hover .contact-send-arrow__inner img {
    opacity: 0;
  }
  .contact-send__btn:hover .contact-send-arrow__inner img.rev {
    opacity: 1;
  }
}

@media screen and (max-width: 768px) {
  .kv-inner {
    padding: 24.1vw 5.33% 12.7vw;
  }
  .kv-title__main {
    font-size: 21.1vw;
    left: -1vw;
    margin-bottom: 2.2vw;
  }
  .box-title__main {
    font-size: 6.64vw;
    letter-spacing: -0.015em;
  }
  .box-title__sub {
    font-size: 2.94vw;
  }
  .kv-title-main__inner > div > div {
    line-height: 1;
  }
  .kv-title-main__inner > div:nth-child(8) {
    padding: 0;
    display: block;
  }
  .kv-title-main__inner > div:nth-child(9), .kv-title-main__inner > div:nth-child(10) {
    top: -1vw;
  }
  .box1 {
    padding-bottom: 26.6vw;
  }
  .box1.box-confirm {
    padding-top: 26.6vw;
  }
  .box1.box-confirm .box-title {
    font-size: 5.87vw;
    line-height: 1.36;
    letter-spacing: 0.01em;
    margin-bottom: 8vw;
  }
  .box-content {
    width: 100%;
  }
  .form-area.confirm .contact-input:nth-child(6) .contact-input__text {
    padding: 3.4vw 0 4.7vw;
  }
  .form-area.confirm .contact-input:nth-child(7) {
    margin-bottom: 13.1vw;
  }
  .form-area.confirm .contact-input:nth-child(7) .contact-input__text {
    padding: 3.4vw 0 4.7vw;
  }
  .form-area.confirm .contact-input__text {
    font-size: 3.47vw;
    line-height: 1.3;
    padding: 3.4vw 0 4.7vw;
  }
  .contact-input:first-child .contact-input__title {
    padding-top: 0;
  }
  .contact-input:nth-child(6) .contact-input__text {
    padding: 4.5vw 0 5.5vw;
  }
  .contact-input:nth-child(6) .error-message {
    text-align: right;
    line-height: 1.4;
    right: 12vw;
    top: 5.5vw;
  }
  .contact-input:nth-child(7) .contact-input__text {
    padding: 0;
    padding-top: 4.3vw;
  }
  .contact-input:nth-child(7) .error-message {
    top: 10.8vw;
  }
  .contact-input:nth-child(8) {
    margin-bottom: 6.5vw;
  }
  .contact-input:nth-child(8) .contact-input__text {
    padding-top: 5.1vw;
    padding-bottom: 0;
  }
  .contact-input:before {
    display: none;
  }
  .contact-input:after {
    width: 100%;
  }
  .contact-input__title {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    font-size: 3.47vw;
    line-height: 1;
    padding-top: 7.3vw;
  }
  .contact-input__text {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    padding: 0;
  }
  .contact-input__text input {
    font-size: 3.47vw;
    height: 13.34vw;
    padding: 0;
  }
  .contact-input__text select {
    font-size: 3.25vw;
    height: 12vw;
    border-radius: 12vw;
    line-height: 12vw;
    padding-left: 5.3vw;
    background-size: 2.5vw auto;
    background-position: 94% center;
  }
  .contact-input__text textarea {
    font-size: 3.47vw;
    line-height: 1.53;
    height: 65.5vw;
  }
  .contact-input__text textarea::-webkit-input-placeholder {
    font-weight: normal;
  }
  .contact-input__text textarea::-moz-placeholder {
    font-weight: normal;
  }
  .contact-input__text textarea:-ms-input-placeholder {
    font-weight: normal;
  }
  .contact-input__text textarea::-ms-input-placeholder {
    font-weight: normal;
  }
  .contact-input__text textarea::placeholder {
    font-weight: normal;
  }
  .contact-input__text .contact-input-policy {
    height: 30.6vw;
    padding: 4.6vw 5.4vw;
  }
  .contact-input__text .contact-input-policy p {
    font-size: 3.2vw;
    line-height: 1.41;
  }
  .error-message {
    font-size: 3.47vw;
    top: 4.1vw;
  }
  .contact-checkarea {
    margin-bottom: 11.7vw;
  }
  .contact-checkarea .error-message {
    font-size: 4vw;
    right: -2vw;
    top: 7vw;
  }
  .contact-checkarea__box {
    width: 6.4vw;
    height: 6.4vw;
  }
  .contact-checkarea__text {
    font-size: 4vw;
    line-height: 6.4vw;
  }
  .contact-send__btn {
    width: 100%;
    height: 19.9vw;
    line-height: 19.9vw;
    border-radius: 19.9vw;
  }
  .contact-send__tex {
    font-size: 6.7vw;
    line-height: 19.9vw;
  }
  .contact-send__tex.send {
    font-size: 4.7vw;
  }
  .contact-send__arrow {
    width: 2.94vw;
    left: 88%;
  }
}
/*# sourceMappingURL=contact.css.map */
