@charset "UTF-8";
:root {
  color: #3D3D3D;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ＭＳ ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
  letter-spacing: 0.1em;
}

body {
  line-height: 1.75;
  background: #F8F8F8;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ＭＳ ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
}

h2 {
  font-family: "Kaisei Opti", serif;
  font-weight: normal;
  color: #025D3B;
  font-size: 60px;
  font-size: 3.75rem;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 641px) {
  h2 {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 1.5;
    letter-spacing: 0;
  }
}
#intro h2 {
  color: #FFF;
}
@media screen and (max-width: 641px) {
  #inquiry h2 {
    margin: 20px auto;
  }
}

h3 {
  font-family: "Kaisei Opti", serif;
  color: #025D3B;
  font-weight: normal;
  font-size: 54px;
  font-size: 3.375rem;
  letter-spacing: 0em;
}
.price h3 {
  width: auto;
}
@media screen and (max-width: 641px) {
  h3 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

.mainVisual {
  position: relative;
  padding: 0 10vw;
  height: auto;
  overflow: hidden;
  z-index: 1;
}
.mainVisual_wrap {
  overflow: hidden;
  height: auto;
  padding: 50px 0;
  background: url(images/bg_main.jpg) top center;
  position: relative;
}
.mainVisual-img {
  position: absolute;
  top: 0;
  left: 50vw;
  z-index: 0;
  height: 100%;
}
.mainVisual-img img {
  height: 100%;
}
.mainVisual li {
  float: none;
  margin: auto;
  width: 100%;
}
@media screen and (max-width: 641px) {
  .mainVisual {
    padding: 0 20px;
  }
  .mainVisual_wrap {
    padding: 20px 0 30vh;
  }
  .mainVisual-img {
    height: auto;
    top: initial;
    left: 0;
    bottom: 0;
  }
}

.que {
  font-weight: bold;
  margin-bottom: 10px;
}

.mustIc {
  display: inline-block;
  padding: 5px 10px;
  background: rgba(217, 0, 58, 0.15);
}

.price {
  text-align: center;
}
.price-wrap {
  margin: 30px auto 0;
}
.price dl {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  margin: 15px auto;
  border-bottom: 1px solid #cfcfcf;
  padding-bottom: 10px;
}
.price dl:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.price dl dt {
  width: 50%;
  text-align: left;
}
.price dl dd {
  padding-left: 20px;
}
@media screen and (max-width: 641px) {
  .price {
    padding: 10px 15px;
  }
  .price-wrap {
    margin: 0 auto;
  }
  .price dl dt {
    width: 70%;
  }
}

.schedule-flex {
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: space-between;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.schedule-flex .schedule01 {
  width: 50%;
}
.schedule-flex .timetable {
  width: 45%;
}
.schedule-flex .timetable img {
  width: 100%;
}
.schedule-flex .timetable-sp {
  display: none;
}
@media screen and (max-width: 641px) {
  .schedule-flex {
    display: block;
  }
  .schedule-flex .schedule01 {
    width: 100%;
  }
  .schedule-flex .timetable {
    width: 100%;
    margin-bottom: 10px;
  }
  .schedule-flex .timetable-sp {
    display: block;
  }
  .schedule-flex .timetable-sp dd {
    line-height: 1.7;
    padding: 5px 0 10px;
  }
}

.sns {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}
.sns img {
  width: 40px;
}
.sns-insta, .sns-twitter {
  display: block;
  width: 40px;
  height: 40px;
}
.sns-insta:hover, .sns-twitter:hover {
  opacity: 0.6;
}
.sns-insta {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' xml:space='preserve'%3E%3Cpath fill='%23fffFFF' d='M358.7 0h-214C64.8 0 0 64.8 0 144.7v222.6C0 447.2 64.8 512 144.7 512h214c79.9 0 144.7-64.8 144.7-144.7V144.7C503.4 64.8 438.7 0 358.7 0zM51.4 144.7c0-51.5 41.9-93.3 93.3-93.3h214c51.5 0 93.3 41.9 93.3 93.3v222.6c0 51.5-41.9 93.3-93.3 93.3h-214c-51.5 0-93.3-41.9-93.3-93.3V144.7zm200.3 243.1c72.7 0 131.9-59.1 131.9-131.9S324.5 124 251.7 124c-72.7 0-131.9 59.2-131.9 131.9S179 387.8 251.7 387.8zm0-222.6c50 0 90.8 40.7 90.8 90.8s-40.7 90.8-90.8 90.8c-50 0-90.8-40.7-90.8-90.8s40.8-90.8 90.8-90.8zm135.7-74.4c16.3 0 29.5 13.2 29.5 29.5s-13.2 29.5-29.5 29.5-29.5-13.2-29.5-29.5 13.2-29.5 29.5-29.5z' /%3E%3C/svg%3E") 50% 50%/100% 100% no-repeat;
}
.sns-twitter {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' viewBox='0 0 512 512'%3E%3Cpath fill='%23fffFFF' d='M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm5.8 222.7h.2c-1-4-1.4-8.2-1.4-12.5 0-30.2 24.6-54.8 54.8-54.8 15.8 0 30 6.6 40 17.4 10.2-2 19.9-5.5 28.9-10.2 1.9-1 3.9-1.9 5.8-3-3.3 10.1-9.5 18.9-17.6 25.5-2.1 1.6-4.2 3.2-6.5 4.5h.3c-.1.1-.2.1-.3.2 8.9-1 17.5-3.2 25.7-6.3 1.9-.7 3.7-1.3 5.6-2.1-7.3 10.9-16.6 20.5-27.2 28.1.2 2.4.2 4.7.2 7.1 0 72.4-55.1 155.9-155.9 155.9-31 0-59.8-9-84-24.6 4.3.5 8.6.8 13.1.8 18.7 0 36.3-4.7 51.7-12.9.3-.2.7-.3 1-.5 1-.5 1.9-1.1 2.9-1.7 4.3-2.5 8.4-5.2 12.4-8.2h-.2c.1 0 .1-.1.2-.1-20.9-.4-39-12.5-47.9-30.1-1.3-2.5-2.3-5.2-3.2-7.9 3.3.6 6.7.9 10.2.9 3.6 0 7.1-.5 10.6-1.1l3.9-.6c-.1 0-.2-.1-.3-.1.1 0 .2 0 .3-.1-25.1-5-44-27.2-44-53.8v-.6a54.3 54.3 0 0 0 19.2 6.3c1.9.3 3.7.5 5.6.6-.1 0-.1-.1-.2-.2h.3c-14.7-9.8-24.4-26.6-24.4-45.6 0-8.6 2.1-16.7 5.7-24 .6-1.2 1.1-2.4 1.8-3.5 26.6 32.7 66.3 54.3 111.2 57 .5.1 1 .2 1.5.2z' /%3E%3C/svg%3E") 50% 50%/100% 100% no-repeat;
}

a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.profile_wrap {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: space-between;
  -webkit-box-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
.profile_wrap:first-child {
  margin-bottom: 50px;
}
.profile_wrap .ph_profile {
  width: 25%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.profile_wrap .ph_profile img {
  width: 100%;
}
@media screen and (max-width: 641px) {
  .profile_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .profile_wrap .ph_profile {
    width: 100%;
  }
}

.btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 30px;
  width: 100%;
  height: 80px;
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
}
.btn-trial {
  background: #025D3B;
}
.btn-trial:hover {
  background: #3da17c;
}
.btn-contact {
  background: #ff9c00;
}
.btn-contact:hover {
  background: #FFC400;
}
.btn:hover {
  color: #FFF;
}
@media screen and (max-width: 641px) {
  .btn {
    height: auto;
    padding: 15px 0;
    font-size: 1.5rem;
  }
}

.l-mainvisual-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 40%;
  margin-top: 10vh;
}
@media screen and (max-width: 641px) {
  .l-mainvisual-btn {
    width: 100%;
    margin-top: 5vh;
  }
}

.thanksImg {
  margin-top: 50px;
}
.thanksImg img {
  width: 100%;
}

.thanksTxt {
  padding: 50px 10px;
  text-align: center;
}

.inquiryForm .select02 label {
  display: block !important;
  margin-bottom: 10px !important;
}

form#mailformpro label.mfp_not_checked {
  border: none;
}

.inquiry-attention {
  margin: 10px 0 30px;
}