@charset "UTF-8";
/* *****************************************************************

Stylesheet: 変数の設定

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

Stylesheet: mixinの設定

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

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

******************************************************************/
html,
body {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

body {
  font-family: 'M PLUS Rounded 1c', sans-serif !important;
}

.c-meta__item--author {
  display: none;
}

.c-entry-summary__meta {
  color: #4CAC62;
  text-align: left !important;
}

.p-section-front-page-content {
  padding-bottom: 0 !important;
}

.wp-block-snow-monkey-blocks-section {
  padding-top: 20px !important;
  padding-bottom: 50px !important;
}

.smb-taxonomy-terms {
  margin-top: 0 !important;
}

.wp-block-button__link {
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease;
}

.wp-block-button__link:hover {
  background-color: #FDDB7F !important;
  -webkit-filter: none !important;
          filter: none !important;
}

.c-entries__item a {
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
}

.c-entries__item a:hover {
  color: #4CAC62;
}

i {
  padding: 4px;
}

@media screen and (max-width: 1023px) {
  .p-breadcrumbs-wrapper {
    margin-top: 150px;
  }
}

@media screen and (max-width: 599px) {
  .p-breadcrumbs-wrapper {
    margin-top: 100px;
  }
}

.new-txt {
  background-color: #ce2121;
  color: #fff;
  padding: 1px 10px;
  border-radius: 2px;
  font-size: 13px;
}

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

Stylesheet: ヘッダーに適応

******************************************************************/
.custom-logo {
  width: 150px !important;
  padding: 15px 0 30px;
}

@media screen and (max-width: 1023px) {
  .custom-logo {
    width: 80px !important;
    padding: 30px 0 0;
  }
}

@media screen and (max-width: 599px) {
  .custom-logo {
    padding: 0;
  }
}

.fa-solid {
  color: #4CAC62;
}

.btn-icon-color {
  color: #fff;
}

.p-global-nav .c-navbar__item.sm-nav-menu-item-highlight {
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease;
}

.p-global-nav .c-navbar__item.sm-nav-menu-item-highlight:hover {
  background-color: #FDDB7F;
}

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

ドロワーナビゲーション

******************************************************************/
@media screen and (max-width: 1023px) {
  header {
    width: 100% !important;
    background-color: rgba(255, 255, 255, 0) !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
  }
}

@media screen and (max-width: 1023px) {
  .l-header--sticky-sm {
    position: fixed;
  }
}

.c-hamburger-btn__bars {
  width: 30px;
}

.c-hamburger-btn__bar {
  height: 3px;
  background-color: white !important;
  -webkit-box-shadow: 1px 2px 3px #808080;
          box-shadow: 1px 2px 3px #808080;
}

.c-hamburger-btn__bar:nth-child(2) {
  display: none;
}

.c-hamburger-btn__label {
  padding-top: 3px;
  color: #fff !important;
  text-shadow: 1px 2px 3px #808080;
}

.c-drawer__menu .fa-solid {
  color: #fff;
}

.c-drawer__menu .sm-nav-menu-item-highlight {
  background-color: #FCB900 !important;
}

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

Stylesheet: スライダーに適応

******************************************************************/
.swiper-slide {
  position: relative;
  height: 100vh;
  overflow: hidden;
}

@media screen and (max-width: 1023px) {
  .swiper-slide {
    height: 60vh;
  }
}

@media screen and (max-width: 599px) {
  .swiper-slide {
    height: 100vh;
  }
}

.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);
}

.hero {
  position: relative;
  overflow: hidden;
}

.hero__title {
  display: none;
  position: absolute;
  top: 65%;
  left: 10%;
  z-index: 2;
  color: #fff;
}

@media screen and (max-width: 1023px) {
  .hero__title {
    top: 60%;
    left: 10%;
  }
}

@media screen and (max-width: 599px) {
  .hero__title {
    top: 70%;
    left: 7%;
  }
}

.hero h2 {
  font-size: 36px;
  text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.8);
  line-height: 2em;
}

@media screen and (max-width: 599px) {
  .hero h2 {
    font-size: 28px;
  }
}

.hero span {
  display: block;
}

@media screen and (max-width: 599px) {
  .pc-top-img {
    display: none;
  }
}

.sp-top-img {
  display: none;
}

@media screen and (max-width: 599px) {
  .sp-top-img {
    display: block;
  }
}

.object-position {
  -o-object-position: top;
     object-position: top;
}

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

Stylesheet: セクションaboutに適応

******************************************************************/
.has-text-align-center {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.wp-block-separator {
  margin-top: 0 !important;
}

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

Stylesheet: セクションprintに適応

******************************************************************/
@media screen and (max-width: 1023px) {
  .c-entries {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .c-entries__item {
    max-width: 33%;
  }
}

@media screen and (max-width: 599px) {
  .c-entries {
    max-width: 100%;
  }
}

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

Stylesheet: セクションcontactに適応

******************************************************************/
@media screen and (max-width: 1023px) {
  .tab-line-btn-padding {
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 599px) {
  .tab-line-btn-padding {
    padding-bottom: 0;
  }
}

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

Stylesheet: お問い合わせページに適応

******************************************************************/
.smf-form--business .smf-item__col--label {
  background-color: #4CAC62;
  color: #fff;
}

.smf-item__description {
  display: inline-block;
  padding: 0 5px;
  background-color: #FCB900;
  border-radius: 3px;
  color: #fff !important;
}

input {
  width: 100%;
}

button {
  font-family: 'M PLUS Rounded 1c', sans-serif !important;
  color: #6d6d6d !important;
  -webkit-transition: color .3s !important;
  transition: color .3s !important;
}

button:hover {
  color: #4CAC62 !important;
}

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

Stylesheet: フッターに適応

******************************************************************/
.c-copyright--inverse {
  background-color: #4CAC62;
}

.c-copyright {
  color: #fff !important;
}
/*# sourceMappingURL=style.css.map */

/* A: 一般的に効く書き方（トップページの該当セクションだけ） */
body.home .l-contents__main > .c-section.p-section-front-page-content {
  padding-top: 0 !important;
}

/* もしセクションの直前がヒーローなら、保険で margin も 0 に */
body.home .hero + .c-section.p-section-front-page-content {
  margin-top: 0 !important;
}


.page-id-293 {
  background-image: url("https://niconicokyoshitsu.spawn.jp/niconico_new/wp-content/uploads/2025/10/26192346-scaled.jpg");
  background-size: cover;       /* 画面いっぱいに広げる */
  background-repeat: no-repeat; /* 繰り返しなし */
  background-position: center;  /* 位置中央 */
  background-attachment: fixed; /* スクロールしても固定 */
}

/* スマホでも見出しを必ず1行で表示する */
.nowrap-title {
  white-space: nowrap !important;   /* 改行を許可しない */
  word-break: normal !important;     /* 途中での文字折りを無効化 */
  overflow-wrap: normal !important;  /* 同上（旧称: word-wrap） */
  line-break: strict;                /* CJK の行分割を厳しめに */
  display: inline-block;             /* 1行化の安定性UP */
}

/* もし横幅が足りずハミ出す場合はスマホだけ文字を少し縮める */
@media (max-width: 480px) {
  .nowrap-title {
    font-size: clamp(18px, 5.2vw, 27px);
  }
}

.sns-icons {
  display: flex;
  justify-content: center;
  gap: 12px;
  align-items: center; /* ←これがポイント */
}

.sns-icons img {
  width: 40px;
  height: 40px;
  display: block;
  border-radius: 50%;
  transition: opacity .2s;
  object-fit: contain; /* ←アイコン画像の縦横比を整える */
}

.sns-icons a:hover img {
  opacity: 0.8;
}


