@charset "UTF-8";
.swiper-slide {
  /* 表示させる高さの調整 */
  position: relative;
  height: 88vh;
  overflow: hidden;
}

.swiper-slide .main-visual {
  width: 100%;
  height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 9s ease;
  transition: -webkit-transform 9s ease;
  transition: transform 9s ease;
  transition: transform 9s ease, -webkit-transform 9s ease;
}

.swiper-slide-active .main-visual {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.swiper-slide-active .hero__title {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 1;
}

.swiper-slide-active .hero__btn {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 1;
}

.hero {
  overflow: hidden;
}

.hero__title {
  position: absolute;
  top: 34%;
  left: 50%;
  color: #fff;
  text-align: center;
  width: 95vw;
  -webkit-transform: translate(-50%, 20px);
          transform: translate(-50%, 20px);
  -webkit-transition: opacity 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, transform 1.2s ease 1.5s;
  transition: opacity 1.2s ease 1.5s, transform 1.2s ease 1.5s, -webkit-transform 1.2s ease 1.5s;
  z-index: 1;
  opacity: 0;
}

.hero__title p {
  font-size: 2.5rem;
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8);
  line-height: 2em;
  font-weight: 600;
}

.hero__title span {
  display: block;
}

.hero__btn {
  position: absolute;
  bottom: 42%;
  left: 50%;
  text-align: center;
  color: #fff;
  -webkit-transform: translate(-50%, 20px);
          transform: translate(-50%, 20px);
  -webkit-transition: opacity 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, transform 1.2s ease 2.5s;
  transition: opacity 1.2s ease 2.5s, transform 1.2s ease 2.5s, -webkit-transform 1.2s ease 2.5s;
  opacity: 0;
  z-index: 1;
  width: 95vw;
}

.hero__btn p {
  font-size: 2.5rem;
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8);
  line-height: 2em;
  font-weight: 600;
}

.hero__title span {
  font-size: 2rem;
}

.swiper-slide .top-img {
  -o-object-position: 66% 11%;
     object-position: 66% 11%;
}

.hero__btn br {
  display: none;
}

/* *****************************************************************

Stylesheet: ベーススタイル（全て）に適応

******************************************************************/
h1 {
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8);
}

h3 {
  padding-left: 3% !important;
  padding-top: 7px !important;
  padding-bottom: 7px !important;
}

a {
  text-decoration: none;
}

figure {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

td {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

li {
  list-style: none;
}

.button_section a {
  width: 350px;
}

/*
[data-scrolled="true"] .l-header--sticky-overlay-colored-lg {
    background-color: black !important;
    background-color: var(--_background-color, transparent);
    opacity: 0.9;
    transition: 1s all !important;
}
*/
.c-entry__header {
  display: none;
}

.smb-section__background-text__text {
  letter-spacing: .2rem;
}

.wp-profile-box {
  display: none;
}

.back_color_section span {
  padding: 8px 12px;
}

.padding_top_Section {
  padding-top: 0px;
}

.archive .c-entry-summary__body {
  text-align: center !important;
}

.img_radius_section img {
  border-radius: 8px;
}

.bottom_section a {
  width: 300px;
}

.smb-section__title {
  margin-top: 0px !important;
}

/* 固定ページのアイキャッチ画像 */
.c-page-header__bgimage > img, .c-page-header__bgimage > picture > img {
  -o-object-position: 50% 12% !important;
     object-position: 50% 12% !important;
}

.c-page-header[data-has-image=true] {
  height: clamp(300px, 62.5vw, 400px) !important;
}

/* ヘッダー*/
.l-header__content .c-fluid-container {
  padding-right: 0px;
}

.l-header {
  opacity: .9;
}

.u-invisible-md-down {
  height: 70.5px;
}

.p-global-nav {
  height: 70.5px;
}

.menu-item {
  height: 70.5px;
}

.c-navbar__subitem {
  height: auto !important;
}

/* 実績のスライド*/
.top_gallery_section .c-entries {
  --entries--item-width: 25%!important;
}

.top_gallery_section .c-entry-summary__title {
  text-align: center;
}

/* Loading背景画面設定*/
#splash {
  /*fixedで全面に固定*/
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: #09315c;
  text-align: center;
  color: #fff;
  /* Loading画像中央配置*/
}

#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  /* Loading アイコンの大きさ設定*/
}

#splash_logo img {
  width: 260px;
}

/* fadeUpをするアイコンの動き */
.fadeUp {
  -webkit-animation-name: fadeUpAnime;
          animation-name: fadeUpAnime;
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeUpAnime {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeUpAnime {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.TextTyping {
  font-size: 0px;
}

.TextTyping span {
  display: none;
}

/*文字列後ろの線の設定*/
.TextTyping::after {
  content: "|";
  -webkit-animation: typinganime 3s ease infinite;
          animation: typinganime 3s ease infinite;
}

@-webkit-keyframes typinganime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes typinganime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.TextTyping span {
  font-size: 3rem;
}

/* カーテンアクション */
.animation-target {
  position: relative;
  overflow: hidden;
}

.animation-target > a,
.animation-target > img {
  opacity: 0;
}

@-webkit-keyframes showElements {
  0% {
    opacity: 0%;
  }
  100% {
    opacity: 100%;
  }
}

@keyframes showElements {
  0% {
    opacity: 0%;
  }
  100% {
    opacity: 100%;
  }
}

.animation-target.show > a,
.animation-target.show > img {
  -webkit-animation: showElements 0.01s 0.9s forwards;
          animation: showElements 0.01s 0.9s forwards;
}

.animation-target::before {
  content: "";
  display: block !important;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3 !important;
  width: 100%;
  height: 100%;
  background-color: #2a2828 !important;
  opacity: 1 !important;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

@-webkit-keyframes showMask {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  45%,
  55% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

@keyframes showMask {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  45%,
  55% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

.animation-target.show::before {
  -webkit-animation: showMask 1.8s forwards;
          animation: showMask 1.8s forwards;
}

/* 下から出てくる動き */
.slide-bottom {
  opacity: 0;
  -webkit-transform: translateY(80px);
          transform: translateY(80px);
  -webkit-transition: all 1s 0s ease-out;
  transition: all 1s 0s ease-out;
}

/* 左からフェードイン */
.slide-left {
  opacity: 0;
  -webkit-transform: translate(-80px, 0);
          transform: translate(-80px, 0);
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

/* 右からフェードイン */
.slide-right {
  opacity: 0;
  -webkit-transform: translate(80px, 0);
          transform: translate(80px, 0);
  -webkit-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

.top_service .wp-block-snow-monkey-blocks-items-item-free {
  padding-left: 0px !important;
  padding-right: 0px !important;
  margin-bottom: 0px !important;
}

.top_service .c-container {
  margin: 0px !important;
  max-width: 100%;
  padding: 0px !important;
}

/* 画像をズーム */
.business_section img {
  -webkit-transition: 1s all !important;
  transition: 1s all !important;
  overflow: hidden !important;
}

#business {
  overflow: hidden !important;
}

#business:hover img {
  -webkit-transform: scale(1.1, 1.1) !important;
          transform: scale(1.1, 1.1) !important;
  -webkit-transition: 1s all !important;
  transition: 1s all !important;
  opacity: 0.9 !important;
  background-color: #000000 !important;
}

/* サービスセクション */
.top_page_service_text {
  display: none;
}

.animation-target:hover .top_page_service_text {
  display: block;
}

.top_service_text {
  text-shadow: 1px 2px 3px #808080;
}

/* サービス箇所 */
.top_service .wp-block-cover {
  background-color: #000000 !important;
}

.top_service .wp-block-columns {
  margin-top: 0px;
}

.top_service .wp-block-column {
  margin-left: 0px !important;
}

.top_service .smb-section__inner {
  padding-top: 55px;
}

.top_service .animation-target a {
  display: block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 43px;
  width: 100%;
  color: #f3f3f3;
}

.service_btn_up a {
  padding-top: 112px !important;
  padding-bottom: 38px !important;
}

.service_btn_up a:hover {
  color: #f3f3f3 !important;
}

.service_btn_up span {
  width: 100%;
}

.service_btn_down a {
  padding-bottom: 152px !important;
  padding-top: 30px !important;
}

.service_btn_down a:hover {
  color: #f3f3f3 !important;
}

.service_btn_down {
  margin-top: 0px !important;
}

.service_btn_down span {
  width: 100%;
}

/* サービスページ */
.top_first_title::before {
  position: absolute;
  background: #000;
  content: "";
  width: 50px;
  height: 3px;
  left: 0;
  top: -10px;
  margin: 0;
}

.top_first_title2 h2::before {
  position: absolute;
  background: #000;
  content: "";
  width: 50px;
  height: 3px;
  left: 48%;
  top: -10px;
  margin: 0;
}

.rec_page_banner .smb-items__banner__body {
  padding: 23px 15px;
}

.service_pege_section {
  padding: 0px !important;
}

.service_pege_section .c-container {
  margin: 0px !important;
  padding: 0px !important;
  max-width: 100% !important;
}

.top_first_title {
  margin-top: 1px !important;
}

.service_pege_section p {
  margin-top: 7px !important;
}

.service_page_img_section {
  padding: 0px !important;
}

.wp-block-cover:hover .has-background-dim:not([class*="-background-color"]) {
  opacity: 0;
}

.wp-block-cover:hover .has-background-dim:not([class*="-background-color"]) {
  opacity: 0.7;
}

.top_page_box {
  height: 400px !important;
}

.Seminar_title {
  border-bottom: solid 1px black;
}

.Seminar_sub_title {
  padding-left: 15px;
  border-left: solid 4px #ffa600;
}

.Seminar_table_res {
  display: none;
}

/* フッター */
.l-footer-widget-area {
  background-color: #105494;
  text-align: center;
  -webkit-transition: all .8s;
  transition: all .8s;
  padding-bottom: 0px !important;
}

.l-footer-widget-area a {
  color: #fff;
  -webkit-transition: all .8s;
  transition: all .8s;
}

.l-footer-widget-area a:hover {
  color: #fff;
}

.l-footer-widget-area img {
  text-align: left !important;
}

.c-copyright {
  background-color: #105494 !important;
}

.wp-block-page-list {
  padding-left: 0px;
}

.l-footer-widget-area .has-text-align-left {
  margin-top: 0px !important;
  padding-bottom: 20px;
}

.l-footer-widget-area .has-text-align-left span {
  padding-top: 20px !important;
}

.last_section_button {
  position: fixed;
  bottom: 0;
  width: 100%;
  background-color: #105494;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px !important;
}

.footer_left {
  padding-left: 12%;
}

.l-footer-widget-area p {
  color: #f3f3f3;
}

.footer_link {
  margin-top: 8px !important;
}

.c-row__col--lg-1-1 {
  padding: 0px !important;
}

.footer_contact_section a:hover {
  color: #eee !important;
}

.footer_link {
  margin-top: 8px !important;
}

/* 実績当校 */
.zisseki_point_section .c-row[data-lg-columns="3"] {
  --_item-width: 45%;
}

.zisseki_point_section .zisseki_point_center {
  max-width: 10%;
}

/* 名前消し */
.c-meta__item--author {
  display: none !important;
}

@media (max-width: 1023px) {
  /******************************************************************

Stylesheet: 1023px以下（タブレット）で適用

******************************************************************/
  /* ヘッダー*/
  .l-header__content .c-fluid-container {
    padding-right: 27px;
  }
}

@media (max-width: 639px) {
  /******************************************************************

Stylesheet: 639px以下(スマホ)で適用

******************************************************************/
  .wp-block-heading {
    font-size: 1.4rem !important;
  }
  .top_page_box {
    height: auto !important;
  }
  .hero__btn {
    bottom: 45%;
    width: 100vw;
  }
  .hero__btn p {
    font-size: 22px;
  }
  .hero__title p {
    font-size: 22px;
  }
  .hero__title span {
    font-size: 1.1rem;
  }
  .TextTyping span {
    font-size: 2rem;
  }
  .Seminar_table_res {
    display: block;
  }
  .Seminar_table {
    display: none;
  }
  .page-template .l-contents__container {
    padding: 0px 7px !important;
  }
  .footer_left {
    text-align: center !important;
    padding-left: 0px !important;
  }
  .menu-item {
    height: 45px;
  }
  .c-drawer__item {
    border-bottom: solid 1px #f3f3f3;
  }
  .bottom_section a {
    width: 250px;
  }
  .sp_object {
    -o-object-position: 50% 50% !important;
       object-position: 50% 50% !important;
  }
  .smb-section__title {
    font-size: 1.5rem !important;
  }
  /* 投稿 */
  .c-entry-summary__title {
    font-size: 1rem !important;
  }
  .archive .l-contents__container {
    padding: 0px 7px !important;
  }
  /* 文字サイズ */
  .page-id-92 h1 {
    font-size: 1.4rem !important;
  }
  .wp-block-heading {
    font-size: 1.3rem !important;
  }
}
/*# sourceMappingURL=style.css.map */