
/* ----------------------------------------------- 共通 */
html {
  scroll-behavior: smooth;
}

.l-contents__inner {
  padding-bottom: 0!important;
}

/* アイコンの色 */
.icon-color {
  color: var(--accent-color);
}

/* aタグに付与されるtext-decorationの指定し直し */
.no-underline a {
  text-decoration-color: #0a66c2;
  opacity: 1;
  transition: all ease 0.3s;
}

.no-underline a:hover {
  opacity: 0.7;
}

/* テキストにアンダーラインをひく */
.u-text-decoration--red {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-decoration-color: #CF2E2F;
}

.u-text-decoration--black {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-decoration-color: #333;
}

/* 固定ページタイトル */
.c-entry__title {
  display: none;
  margin: 0!important;
}

/* 固定ページ上部の余白 */
.l-contents__inner {
  margin-top: 0;
}

/* ボタン */

/* ボタン - ホバーアクション */
/* アクセントカラーボタン｜下地が紺色から白へ｜文字が白から紺色へ*/
.btn-accent a {
  filter: none!important;
  border: 2px solid transparent;
  transition: all ease 0.3s;
}

.btn-accent:hover a {
  background-color: #fff;
  border: 2px solid var(--accent-color);
}

.btn-accent span  {
  transition: all ease 0.3s;
}

.btn-accent:hover span {
  color: var(--accent-color);
}

/* サブアクセントカラーボタン｜下地が金色から白へ｜文字が白から金色へ*/
.btn-sub-accent a {
  filter: none!important;
  border: 2px solid transparent;
  transition: all ease 0.3s;
}

.btn-sub-accent:hover a {
  background-color: #fff;
  border: 2px solid var(--sub-accent-color);
}

.btn-sub-accent span  {
  transition: all ease 0.3s;
}

.btn-sub-accent:hover span {
  color: var(--sub-accent-color);
}

/* ファーストビューのボタン */
.btn-fv a {
  filter: none!important;
  transition: all ease 0.3s;
}

.btn-fv:hover a {
  background-color: #fff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.btn-fv span {
  transition: all ease 0.3s;
}

.btn-fv:hover span {
  color: #015C91;
}

/* 白枠ボタン｜下地が紺色から白へ｜文字が白から紺色へ*/
.btn-outline-light a {
  filter: none!important;
  transition: all ease 0.3s;
}

.btn-outline-light {
  transition: all ease 0.3s;
  border-radius: 5px;
}

.btn-outline-light:hover {
  background-color: #fff!important;
}

.btn-outline-light span  {
  transition: all ease 0.3s;
}

.btn-outline-light:hover span {
  color: var(--accent-color);
}

/* お問い合わせセクションのボタン */
.btn-contact a {
  filter: none!important;
  border: 2px solid #fff;
  transition: all ease 0.3s;
}

.btn-contact:hover a {
  background-color: var(--accent-color);
}

.btn-contact span {
  transition: all ease 0.3s;
}

.btn-contact:hover span {
  color: #fff;
}

/* ----------------------------------------------- ヘッダー */
/* ホバーしたらサブアクセントカラーへ */
.l-header .menu-item a:hover{
  color: #006633;
}

/* ゴルフ予約メニューアイテム */
.menu-item-215 small {
  color: #fff;
  font-weight: 700!important;
  background-color: #006633;
  padding-left: 5px;
  padding-right: 5px;
  border-radius: 5px;
}

/* 電話番号メニューアイテム */
.global-menu__tel-icon {
  padding-right: 5px;
}

.menu-item-219 span {
  font-size: 1rem;
  padding: 0.4rem 0.5rem!important;
  border: 2px solid var(--accent-color);
  border-radius: 50px;
  transition: all ease 0.3s;
}

.menu-item-219 a:hover span {
  color: #fff;
  background-color: var(--accent-color);
}

@media screen and (min-width: 768px) {
  .menu-item-219 a {
    pointer-events: none;
    cursor: default;
    color: inherit; /* 青くなるのを防ぎたいとき */
  }
}
/* ----------------------------------------------- サービスセクション */
.service__icon {
  color: #D00001;
}

/* ゴルフカードの枠線 - 銀色グラデーション */
.service__item-golf .wp-block-group  {
  position: relative;
  background: #fff;
  border-radius: 5px;
  z-index: 1;
}

.service__item-golf .wp-block-group::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 5px; /* 枠の太さを調整 */
  border-radius: 3px;

  /* 強めのシルバー感 */
  background: linear-gradient(
    135deg,
    #cfd1d4 0%,
    #f7f7f7 20%,
    #ffffff 40%,
    #b8b8b8 60%,
    #e5e5e5 80%,
    #9fa4a8 100%
  );

  -webkit-mask: 
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  z-index: -1;
}

/* ゴルフカードのバッジ */
.service__item-golf-box {
  position: relative;
}

.service__item-golf-badge {
  position: absolute;
  z-index: 5;
  top: -70px;
  left: -20px;
  transform: rotate(-10deg);
}

/* ----------------------------------------------- お問い合わせ*/
.contact__icon-tel {
  color: #1F3A5F;
}

/* ----------------------------------------------- フッターセクション */
.c-copyright {
  background-color: var(--accent-color);
}

/* ----------------------------------------------- 下層ページ */
/* ----------------------------------------------- 電話・秘書代行サービス */
.p-service__card-icon {
  color: var(--accent-color);
}

.p-service__flow-column {
  position: relative;
}

.p-service__flow-arrow {
  position: absolute;
  top: 50px;
  left: 0;
  transform: translate(-50%, -50%);
}

/* ----------------------------------------------- レンタルオフィスサービス */
.rental__feature-icon {
  color: var(--accent-color);
}

.rental__map {
  filter: grayscale(0.7);
}


/* ===== 下部固定CTA（2分割・高さ抑え版）===== */
:root{
  --fixed-cta-h-pc: 96px;   /* PCの高さ（抑えめ） */
  --fixed-cta-h-sp: 88px;   /* SPの高さ（抑えめ） */
}

.fixed-cta{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  box-shadow: 0 -10px 24px rgba(0,0,0,.12);
  padding-bottom: env(safe-area-inset-bottom);
}

/* 2分割 */
.fixed-cta__inner{
  width: 100%;
  display: flex;
  align-items: stretch;
  min-height: var(--fixed-cta-h-pc);
}

/* 共通：押しやすい面 */
.fixed-cta__tel,
.fixed-cta__contact{
  flex: 0 0 50%;
  width: 50%;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 5px 18px; /* ← 高さ圧縮の要 */
}

/* 左（電話） */
.fixed-cta__tel{
  background: #003399;
  color: #ffd966;
  align-items: center;
  text-align: center;
  gap: 4px; /* 行間も詰める */
}

.fixed-cta__tel-number{
  display:block;
  font-size: 48px;   /* 少し落として高さを抑える */
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: .02em;
}

.fixed-cta__tel-time{
  display:block;
  font-size: 24px;   /* ← “平日〜”を大きくして見やすく */
  font-weight: 800;
  color: rgba(255,255,255,.95);
  line-height: 1.2;
}

/* 右（問い合わせ） */
.fixed-cta__contact{
  background:#d40000;
  color:#fff;
  text-align: center;
  gap: 4px;
  border-left: 1px solid rgba(255,255,255,.18);
}

.fixed-cta__contact-label{
  font-size: 48px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: .02em;
}

.fixed-cta__contact-sub{
  font-size: 24px;
  font-weight: 800;
  opacity: .95;
  line-height: 1.2;
}

/* hover / focus */
.fixed-cta__tel:hover,
.fixed-cta__contact:hover{ filter: brightness(1.05); }

.fixed-cta__tel:focus-visible,
.fixed-cta__contact:focus-visible{
  outline: 3px solid rgba(255,255,255,.9);
  outline-offset: -3px;
}

/* SP */
@media screen and (max-width: 767px){
  .fixed-cta__inner{ min-height: var(--fixed-cta-h-sp); }

  .fixed-cta__tel,
  .fixed-cta__contact{
    padding: 8px 10px; /* さらに圧縮 */
  }

  .fixed-cta__tel-number{ font-size: 26px; }
  .fixed-cta__tel-time{ font-size: 13px; } /* SPでも読みやすく */
  .fixed-cta__contact-label{ font-size: 16px; }
  .fixed-cta__contact-sub{ font-size: 12px; }
}

/* フッター被り防止 */
body{
  padding-bottom: calc(var(--fixed-cta-h-pc) + env(safe-area-inset-bottom));
}
@media screen and (max-width: 767px){
  body{
    padding-bottom: calc(var(--fixed-cta-h-sp) + env(safe-area-inset-bottom));
  }
}




/* ------------------------------------ゴルフページ */
.problem-icon {
  color: #CF2E2F;
}

/* サービス内容のカードの高さを揃える・文字を左寄せにする */
/* ① 行（c-row）で高さを揃える：ストレッチ */
.p-golf__service-cards > .c-row {
  align-items: stretch;
}

/* ② 各カラム自体を flex にして、中のカードが100%伸びるようにする */
.p-golf__service-cards > .c-row > .c-row__col {
  display: flex;
}

/* ③ Snow Monkey Itemsのカード本体を縦flex化して高さ100% */
.p-golf__service-cards .smb-items__item {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

/* ④ カードの“本文エリア”を伸ばす（ここが効く） */
.p-golf__service-cards .smb-items__item__body {
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* ⑤ 本文内の一番外側の group（画像＋テキストを包んでる白カード）も伸ばす */
.p-golf__service-cards .smb-items__item__body > .wp-block-group {
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* ⑥ リスト（チェック項目）を下に揃えたい場合：最後の要素を押し下げる */
.p-golf__service-cards .smb-items__item__body > .wp-block-group > :last-child {
  margin-top: auto;
}


/* 1) is-layout-constrained の “中央寄せ(margin:auto)” を解除 */
.p-golf__service-cards .wp-block-group.is-layout-constrained {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 2) グループが max-width で狭くなって中央に見えるのを解除 */
.p-golf__service-cards .wp-block-group.is-layout-constrained {
  max-width: none !important;
  width: 100%;
}

/* 3) 念のため文字は左揃えに固定 */
.p-golf__service-cards .wp-block-group.is-layout-constrained,
.p-golf__service-cards .wp-block-group.is-layout-constrained * {
  text-align: left !important;
}

/* 4) “左に寄せたい”見た目用：カード本文の左右paddingを最適化（好みで調整） */
.p-golf__service-cards .smb-items__item__body .wp-block-group {
  /* padding-left: 28px !important; */
  /* padding-right: 24px !important; */
}



/* ------------------------------------ゴルフページ */
/* 料金 */
.p-golf__price-item-head {
  min-height: 240px;
}

.p-golf__price-item-body {
  min-height: 170px;
}

.p-golf__price-recommend {
  position: relative;
}

.p-golf__price-badge {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}


.p-golf__merit-banner .smb-items__banner__body-inner {
  background-color: rgba(0, 0, 0, 0.7);
  padding: 10px;
}


/* ーーーーーーーーーーーーーーーーーーーーーーーーー ゴルフページのヘッダー */

.menu-item a[aria-current="page"] span,
.menu-item a[aria-current="page"] small {
  color: #00FF00!important;
}

.menu-item-215 a[aria-current="page"] small {
  color: #fff!important;
}




.global-menu__tel-icon {
  padding-right: 5px;
}

.menu-item-219 span {
  font-size: 1rem;
  padding: 0.4rem 0.5rem!important;
  border: 2px solid #00FF00;
  border-radius: 50px;
  transition: all ease 0.3s;
}

.menu-item-219 a:hover span {
  color: #fff;
  background-color: #00FF00;
}

/* ーーーーーーーーーーーーーーーーーーーーーーーーー ゴルフページのサービスセクション */
.p-golf__service-icon {
  color: #00FF00;
  font-size: 2rem;
  opacity: 0.7;
}

.p-golf__service-icon--red {
  color: #CF2E2F;
  opacity: 1;
}

/* ーーーーーーーーーーーーーーーーーーーーーーーーー ゴルフページの悩みセクション */




/* ーーーーーーーーーーーーーーーーーーーーーーーーー ゴルフ詳細ページ*/
.strong-box {
  min-height: 150px;
}




/* ===== FEATURE05：送客2行 “常時ビヨンビヨン” ===== */
@keyframes bounce-soft {
  0%   { transform: translateY(0) scale(1); }
  20%  { transform: translateY(-6px) scale(1.02); }
  40%  { transform: translateY(0) scale(1); }
  60%  { transform: translateY(-3px) scale(1.01); }
  80%  { transform: translateY(0) scale(1); }
  100% { transform: translateY(0) scale(1); }
}

@keyframes pulse-red {
  0%,100% { color: #d40000; }
  50%     { color: #ff2a2a; }
}

/* 2行だけを対象に（pタグ想定。liでも動くように両対応） */
.p-golf__cost-bounce,
.p-golf__cost-bounce {
  animation: bounce-soft 1.2s ease-in-out infinite;
  will-change: transform;
}

/* 2行の中で「強調したい部分」だけ赤脈動させたいなら span を使う */
.p-golf__cost-bounce .is-pulse{
  animation: pulse-red .8s ease-in-out infinite;
  font-weight: 800;
}










