@charset "UTF-8";
html, body {
  overflow: visible;
}

@media screen and (max-width: 991px) {
  .main-section {
    margin-bottom: 0 !important;
  }
}

.site-body-container {
  /*全幅背景+sticky要素があるので、.container幅は各要素で設定*/
  max-width: 100dvw;
}

.page-lead {
  font-family: var(--mincho-old);
  line-height: 2.12em;
  margin-block-start: 4.43rem !important;
  margin-block-end: 1rem !important;
}
@media screen and (max-width: 991px) {
  .page-lead {
    font-size: 0.75rem;
    line-height: 2;
    margin-block-start: 2.12rem !important;
  }
}

.mv-buttonArea {
  margin-block-end: 6.31rem !important;
  text-align: right;
}
@media screen and (max-width: 991px) {
  .mv-buttonArea {
    text-align: center;
    margin-top: 3.12rem !important;
  }
}

.tutor-introduction-bg {
  margin-top: 8.1dvw;
  margin-left: -15px;
  margin-right: -15px;
  padding-top: 6.75dvw;
  padding-bottom: 8.1dvw;
}
@media screen and (max-width: 991px) {
  .tutor-introduction-bg {
    padding-top: 13.88dvw;
  }
}

.tutor-h2 {
  text-align: center;
  font-size: 2.25rem;
  line-height: 1.1;
  margin-bottom: 3.75em;
}
@media screen and (max-width: 991px) {
  .tutor-h2 {
    font-size: 1.37rem;
    line-height: 1.1;
    margin-bottom: 24.44dvw !important; /*地図上のテキストを上にずらすための余白を含む*/
  }
}
.tutor-h2:before {
  content: "";
  width: 2.77em;
  height: 0.11em;
  background: var(--purple);
  display: block;
  margin: 0 auto 0.8em;
}
@media screen and (max-width: 991px) {
  .tutor-h2:before {
    width: 3.87em;
    height: 0.83dvw;
  }
}

.tutormap {
  height: 66.08dvw;
  position: relative;
  display: block;
  margin-bottom: 16.25rem !important;
}
@media screen and (max-width: 991px) {
  .tutormap.tutormap-pc {
    display: none;
  }
}
@media screen and (min-width: 992px) {
  .tutormap.tutormap-sp {
    display: none;
  }
}
@media screen and (max-width: 991px) {
  .tutormap {
    margin-left: calc(var(--vk-width-container-padding) * -1);
    margin-right: calc(var(--vk-width-container-padding) * -1);
    max-width: 100dvw;
    height: 240.27dvw;
    overflow: visible;
    margin-bottom: 22.22dvw !important;
  }
}
.tutormap .wp-block-cover__image-background {
  object-fit: contain;
  width: 58.31dvw;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 991px) {
  .tutormap .wp-block-cover__image-background {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin-left: 0;
    margin-right: 0;
  }
}

.tutormap-text {
  position: absolute;
  right: calc(var(--baseW) * 2);
  top: 24.59dvw;
  width: 5.47dvw;
  display: block;
}
@media screen and (max-width: 991px) {
  .tutormap-text {
    position: relative;
    top: -18.06dvw;
    right: 0;
    left: 0;
    width: 50dvw;
    margin-left: auto;
    margin-right: auto;
  }
}

.section-tutormessage {
  margin-block-start: 1.25rem !important;
  align-items: stretch !important;
}
.section-tutormessage .sideMidashiTate2 {
  margin-top: 0 !important;
  position: sticky;
  top: 1em;
  padding-bottom: 8.1dvw;
}
@media screen and (max-width: 991px) {
  .section-tutormessage .sideMidashiTate2 {
    padding-bottom: 19.44dvw;
  }
}
.section-tutormessage h3 {
  font-size: 1.25rem;
  font-family: var(--mincho);
  letter-spacing: 0.1em;
  line-height: 1.1;
  margin-bottom: 1em !important;
}
@media screen and (max-width: 991px) {
  .section-tutormessage h3 {
    font-size: 1.12rem;
    line-height: 1.1;
  }
}
.section-tutormessage p {
  line-height: 2.12em;
  margin-bottom: 4.43em !important;
  padding-right: calc(var(--baseW) * 2);
  padding-left: var(--baseW);
}
@media screen and (max-width: 991px) {
  .section-tutormessage p {
    font-size: 0.75rem;
    line-height: 2;
    padding-left: 5.55dvw;
    padding-right: 0;
    margin-bottom: 4rem !important;
  }
}

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