@charset "UTF-8";
/* SPORTS */
.parking__txt {
  padding: 6.66% 0;
  background: url("../img/common/bg_wa.jpg") 50% 50% no-repeat;
  background-size: cover;
}

/* COMPANY */
.madori {
  padding: 6.66% 0 8%;
  background: url("../img/common/bg_wa.jpg") 50% 50% no-repeat;
  background-size: cover;
}

/* KYOTO */
/* 上部アニメーション（右→左） */
@-webkit-keyframes revealLeftClip {
  0% {
    clip-path: inset(0 0 0 100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealLeftClip {
  0% {
    clip-path: inset(0 0 0 100%);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
/* 下部アニメーション（左→右） */
@-webkit-keyframes revealRightClip {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealRightClip {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
.kyoto-head__bg {
  position: relative;
  z-index: 1;
  margin-bottom: 12vw;
  overflow: hidden;
}
.kyoto-head__bg::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
}
.kyoto-head__bg1::before {
  right: 0;
  top: 4.53vw;
  width: 91.6vw;
  height: 73.6vw;
  background: url("../img/kyoto/head_bg_01.png") 100% 0 no-repeat;
  background-size: contain;
}
.scroll-active .kyoto-head__bg1::before {
  clip-path: inset(0 0 0 100%);
}
.scroll-active.is-active .kyoto-head__bg1::before {
  -webkit-animation: revealLeftClip 1.5s ease forwards;
          animation: revealLeftClip 1.5s ease forwards;
}
.kyoto-head__bg2::before {
  left: 0;
  top: 21.33vw;
  width: 100vw;
  height: 99.47vw;
  background: url("../img/kyoto/head_bg_02.png") 0 0 no-repeat;
  background-size: contain;
}
.scroll-active .kyoto-head__bg2::before {
  clip-path: inset(0 100% 0 0);
}
.scroll-active.is-active .kyoto-head__bg2::before {
  -webkit-animation: revealRightClip 1.5s ease forwards;
          animation: revealRightClip 1.5s ease forwards;
}
.kyoto-head__img img {
  width: 100%;
}
.scroll-active .kyoto-head__img {
  opacity: 0;
}
.scroll-active.is-active .kyoto-head__img {
  opacity: 1;
  -webkit-transition: opacity 3s;
  transition: opacity 3s;
}
.kyoto-head__img1 {
  padding: 0 33.33% 8% 5.33%;
}
.kyoto-head__img2 {
  padding: 0 9.2% 28% 40.4%;
}
.kyoto-head__img3 {
  padding: 0 17.33% 14.66%;
}
.kyoto-head__img4 {
  padding: 0 40.133% 15.466% 9.33%;
}
.kyoto-head__txt {
  position: absolute;
  bottom: 0;
  font-size: 4.27vw;
  letter-spacing: 0.02em;
  line-height: 1.5;
}
.scroll-active .kyoto-head__txt {
  opacity: 0;
}
.scroll-active.is-active .kyoto-head__txt {
  opacity: 1;
  -webkit-transition: opacity 3.5s;
  transition: opacity 3.5s;
}
.kyoto-head__txt1 {
  left: 21.33%;
}
.kyoto-head__txt2 {
  right: 19.733%;
}
.kyoto-head.scroll-active.is-active .anime-order2 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.kyoto-head.scroll-active.is-active .anime-order2::before {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.kyoto-head.scroll-active.is-active .anime-order3 {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.kyoto-head.scroll-active.is-active .anime-order3::before {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
.kyoto-head.scroll-active.is-active .anime-order4 {
  -webkit-transition-delay: 1.4s;
          transition-delay: 1.4s;
}
.kyoto-head.scroll-active.is-active .anime-order4::before {
  -webkit-animation-delay: 1.4s;
          animation-delay: 1.4s;
}
.kyoto-head.scroll-active.is-active .anime-order5 {
  -webkit-transition-delay: 2.9s;
          transition-delay: 2.9s;
}
.kyoto-head.scroll-active.is-active .anime-order5::before {
  -webkit-animation-delay: 2.9s;
          animation-delay: 2.9s;
}
.kyoto-head.scroll-active.is-active .anime-order6 {
  -webkit-transition-delay: 3.1s;
          transition-delay: 3.1s;
}
.kyoto-head.scroll-active.is-active .anime-order6::before {
  -webkit-animation-delay: 3.1s;
          animation-delay: 3.1s;
}
.kyoto-head.scroll-active.is-active .anime-order7 {
  -webkit-transition-delay: 3.7s;
          transition-delay: 3.7s;
}
.kyoto-head.scroll-active.is-active .anime-order7::before {
  -webkit-animation-delay: 3.7s;
          animation-delay: 3.7s;
}
.kyoto-head.scroll-active.is-active .anime-order8 {
  -webkit-transition-delay: 4.3s;
          transition-delay: 4.3s;
}
.kyoto-head.scroll-active.is-active .anime-order8::before {
  -webkit-animation-delay: 4.3s;
          animation-delay: 4.3s;
}

.kyoto-catch {
  position: relative;
}
.kyoto-catch__txt {
  position: absolute;
  z-index: 1;
  left: 22.66%; /*85px*/
  top: 28.57%; /*80px*/
  color: #fff;
  font-size: 4.27vw;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-shadow: 0 0 0 rgba(0, 0, 0, 0.18), 0 0 1px rgba(0, 0, 0, 0.14), 0 0 2px rgba(0, 0, 0, 0.12), 0 0 3px rgba(0, 0, 0, 0.1), 0 0 4px rgba(0, 0, 0, 0.09), 0 0 6px rgba(0, 0, 0, 0.07), 0 0 8px rgba(0, 0, 0, 0.06), 0 0 10px rgba(0, 0, 0, 0.05);
}
.kyoto-catch__img img {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .kyoto-head__bg {
    margin-bottom: 45px;
  }
  .kyoto-head__bg1::before {
    top: 17px;
    width: 343.5px;
    height: 276px;
  }
  .kyoto-head__bg2::before {
    top: 80px;
    width: 375px;
    height: 373px;
  }
  .kyoto-head__txt {
    font-size: 16px;
  }
  .kyoto-catch__txt {
    font-size: 16px;
  }
}
/* FAQ */
.faq-list__item {
  padding: 10px 0;
  border-top: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
}
.faq-list__item + .faq-list__item {
  margin-top: -1px;
}
.faq-list__q {
  position: relative;
  min-height: 4.6em;
  padding: 1.563em 2.188em 1.563em 3.438em; /*25px 35px 25px 55px*/
  font-size: 1.143em; /*16px*/
  font-weight: 700;
  line-height: 1.5;
}
.faq-list__q::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 1.125em; /*18px*/
  width: 2.375em;
  height: 2.375em; /*38px*/
  background: url("../img/common/icon_q.svg") 50% 50% no-repeat;
  background-size: contain;
}
.faq-list__q::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  width: 1.188em; /*19px*/
  height: 0.688em; /*11px*/
  margin-top: -0.188em; /*-3px*/
  background: url("../img/common/icon_toggle_t.svg") 50% 50% no-repeat;
  background-size: contain;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.faq-list__q.is-active::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.faq-list__a {
  position: relative;
  height: 0;
  padding: 0;
  letter-spacing: 0.02em;
  line-height: 1.714;
  text-align: justify;
  overflow: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.faq-list__a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  background: url("../img/common/line_gray.png") 0 0 repeat-x;
  background-size: 3.5px;
}
.faq-list__a.is-open {
  height: auto;
  padding: 1.786em 0 1.071em; /*25px 0 15px*/
}

/* Contact & Reserve お問い合わせ */
.contact-tel {
  font-size: 1.286em; /*18px*/
  font-weight: 500;
  line-height: 1;
}
.contact-tel .tel-num {
  font-size: 1.444em; /*26px*/
}

.contact-time {
  margin-top: 0.357em; /*5px*/
  line-height: 1;
}

.form-input > div > dt {
  margin-bottom: 0.714em; /*10px*/
}
.form-input > div > dd {
  margin-bottom: 1.429em; /*20px*/
}
.form-input input[type=text],
.form-input input[type=email],
.form-input input[type=tel],
.form-input input[type=url],
.form-input select,
.form-input textarea {
  border-radius: 0;
  border: none;
  background: #eee;
  font-size: 1em;
  line-height: 1.4;
  padding: 1em 0.714em; /*14px 10px*/
}
.form-input textarea {
  vertical-align: top;
  height: 14.286em; /*200px*/
  resize: vertical;
}
.form-input input[type=text]::-webkit-input-placeholder, .form-input input[type=email]::-webkit-input-placeholder, .form-input input[type=tel]::-webkit-input-placeholder, .form-input textarea::-webkit-input-placeholder {
  color: #999;
}
.form-input input[type=text]::-moz-placeholder, .form-input input[type=email]::-moz-placeholder, .form-input input[type=tel]::-moz-placeholder, .form-input textarea::-moz-placeholder {
  color: #999;
}
.form-input input[type=text]:-ms-input-placeholder, .form-input input[type=email]:-ms-input-placeholder, .form-input input[type=tel]:-ms-input-placeholder, .form-input textarea:-ms-input-placeholder {
  color: #999;
}
.form-input input[type=text]::-ms-input-placeholder, .form-input input[type=email]::-ms-input-placeholder, .form-input input[type=tel]::-ms-input-placeholder, .form-input textarea::-ms-input-placeholder {
  color: #999;
}
.form-input input[type=text]::placeholder,
.form-input input[type=email]::placeholder,
.form-input input[type=tel]::placeholder,
.form-input textarea::placeholder {
  color: #999;
}
.form-input input[type=text]::-webkit-input-placeholder,
.form-input input[type=email]::-webkit-input-placeholder,
.form-input input[type=tel]::-webkit-input-placeholder,
.form-input textarea::-webkit-input-placeholder {
  color: #999;
}
.form-input input[type=text]:-ms-input-placeholder,
.form-input input[type=email]:-ms-input-placeholder,
.form-input input[type=tel]:-ms-input-placeholder,
.form-input textarea:-ms-input-placeholder {
  color: #999;
}
.form-input input[type=text]::-moz-placeholder,
.form-input input[type=email]::-moz-placeholder,
.form-input input[type=tel]::-moz-placeholder,
.form-input textarea::-moz-placeholder {
  color: #999;
}
.form-input label {
  cursor: pointer;
}

.form-button input,
.form-button button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 4.286em; /*60px*/
  padding: 0;
  border-radius: 0;
  border: none;
  background: #000;
  color: #fff;
  font-size: 1em;
  font-weight: 400;
  text-align: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  cursor: pointer;
}
.form-button input:hover,
.form-button button:hover {
  opacity: 0.7;
}

.form-button {
  position: relative;
  text-align: center;
  margin-top: 3.571em; /*50px*/
}
.form-button .back,
.form-button .submit {
  width: 46%;
  margin: 0 1%;
}
.form-button .back {
  background: #ccc;
  color: inherit;
}

.mw_wp_form_input .form-input .email-row {
  margin-bottom: 0.714em; /*10px*/
}

.mw_wp_form_confirm .form-input dt.noblock + dd {
  display: none;
}

/*.wpcf7-select,
.wpcf7-list-item-label {
    font-size: .85em !important;
}

.wpcf7 form .wpcf7-response-output {
    margin-left: 0;
    margin-right: 0;
}

.wpcf7-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -12px 0 0 -12px;
}

.wpcf7-not-valid-tip {
    font-size: .8em;
}

#wpcf7cpcnf {
    table {
        border-collapse: collapse;
        border: solid 1px #000;
        font-size: 20px;
        font-weight: 500;
        line-height: 1.556;

        tr:first-child th,
        tr:first-child td {
            padding-top: 50px;
        }

        tr:last-child th,
        tr:last-child td {
            padding-bottom: 50px;
        }

        th,
        td {
            vertical-align: middle;
            border: none;
            padding: 25px 25px 25px 90px;
        }

        th {
            width: 315px;
            text-align: left;
        }
    }

    button,
    input[type="submit"] {
        @extend %form-button-item;
        max-width: 46%;
        margin: 0 1%;
    }

    .wpcf7-spinner {
        margin-left: 73px;
    }

    .wpcf7cp-btns {
        position: relative;
        margin-top: 35px;
        text-align: center;
    }

    .wpcf7cp-cfm-edit-btn {
        background: #aaa;
    }
}*/
/* PRIVACY POLICY 個人情報保護方針 */
.policy_sec {
  margin-bottom: 50px;
}
.policy_sec:last-child {
  margin-bottom: 0;
}

.policy_lb {
  padding: 1.125em 0;
  margin-bottom: 1.125em;
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
  font-size: 1.143em;
  font-weight: 500;
  line-height: 1.688;
}