@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

 
/* Google Fonts 読み込み */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&display=swap');


/*見出しデザインのリセット*/
.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {
background-color: transparent; /* 背景色を透明に*/
border: none; /*枠線なし*/
border-radius: 0; /*角の丸みなし*/
padding-left: 0px;
padding-right: 0px;
	padding-bottom: 0px;
}

.article h2 {
	font-size: 24px !important;
	color: #333;
	padding-top: 2px;
	padding-bottom: 4px;
  font-weight: 500;
  letter-spacing:  0.1em ;
  line-height: 35px;
}

.article h3{
  font-size: 16px !important;
  font-weight: 400;
  color: #80AD64;
}

.article h4{
  font-size: 18px !important;
  font-weight: 400;
  display: inline-block;
  padding-bottom: 5px;
  border-bottom: 0px solid rgba(128, 173, 100, 0.5);
  letter-spacing: 0.1em;
}

.article h4::before{
  content: "\f4ad";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fff;
  -webkit-text-stroke: 1px #bfc9bb;
  margin-right: 8px;
  font-size: 0.8em;
}

/*pの余白*/
.has-text-align-center {
	margin-bottom: 0px !important;
}

/* 余白削除 */
.has-bottom-margin.is-style-bottom-margin-1em {
  margin-bottom: 0px !important;
}



/* 肩書き */
.well-profile-role{
  font-size: 15px;
  color: #777;
  letter-spacing: 0.08em;
}


/* 全体フォント */
body,
input,
textarea,
select,
button {
  font-family: "Noto Serif JP", sans-serif;
}

/* 見出し・本文・メニューも統一 */
h1, h2, h3, h4, h5, h6,
p,
li,
a,
.menu-item,
.navi,
.widget,
.entry-content {
  font-family: "Noto Serif JP", sans-serif;
}

/* =========================
   アコーディオン（プルダウン）内フォント統一
   ========================= */

.wp-block-accordion,
.wp-block-accordion * {
  font-family: "Noto Serif JP", sans-serif !important;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: inherit;
  color: inherit;
}

/* ラベル文字 */
.wp-block-accordion-heading__toggle-title {
  font-family: "Noto Serif JP", sans-serif !important;
  font-size: 14px;              /* お好みで 13〜15px */
  font-weight: 500;             /* やさしく */
  letter-spacing: 0.08em;       /* VIEW MORE 向け */
  text-transform: uppercase;    /* 英字ならきれい */
}

/* =========================
   Cocoon FAQ：質問（Question）側のフォント統一
   ========================= */

.faq .faq-question-label,
.faq .faq-question-content,
.faq .faq-question-label *,
.faq .faq-question-content *{
  font-family: "Noto Serif JP", sans-serif !important;
  font-weight: 500;           /* 質問は少しだけ強め（お好みで400でもOK） */
  letter-spacing: inherit;
}


/*フォント統一終わり*/



/*字間*/
p, body {
letter-spacing: 1.5px;
}

h1, h2, h3 {
letter-spacing: 1.5px;
}


/*リンクホバー色*/
a:hover {
color: #fff;
transition : 0.5s;
}


/*ヘッダーフッターまわりの調整*/
.breadcrumb,
.article-header,
.article-footer {
display: none;
}

.header-container-in {
padding-top: 10px;
padding-bottom: 10px;
}


/*セクションまわりの細々とした余白の調整*/
.main {
	border: none;
padding-bottom:0!important;
margin-bottom:0!important;
margin-left:0!important;
margin-right:0!important;
}


/*フルワイドと余白の調整*/
.wp-block-cover, .n2-section-smartslider {
margin-bottom:0!important;
margin-top:0!important;
padding-bottom:0!important;
bottom: 0;
}

.wp-block-columns {
margin-bottom:0!important;
}

.entry-content, .content {
padding-top:0!important;
padding-bottom:0!important;
margin-top:0!important;
margin-bottom:0!important;
}

.content-bottom {
margin:0;
}

.article {
padding-bottom:0px!important;
margin-bottom:0px!important;
}


/*フッター*/
.footer {
margin-top:0px;
}


/*SNSシェア非表示*/
.page .sns-share,
.page .sns-follow {
display: none ;
}

.veu_socialSet.veu_socialSet-position-after.veu_contentAddSection {
	display: none;
}


/*水平スクロールバー非表示*/
body {
overflow-x:clip;
font-size: 12px;
}


/*フルワイド*/
.fullwide {
width: 100vw;
margin: 0 calc(50% - 50vw);
padding: 0 calc(50vw - 50%);
}


/*グローバルメニュー*/
/*メニュー項目の左右の余白*/
#navi .navi-in>ul>li>a{
padding: 0 0em;
}

/*ホバー時にメニューの色が薄くなるのをやめる*/
#navi .navi-in a:hover {
background-color: rgb(255 255 255 / 0);
}

/*ホバー時にメニューにアンダーラインを出す*/
#navi .navi-in a:after{
position: absolute;/*線の位置を絶対配置に*/
content: "";/*文字はなし*/
opacity: .5;
left: 0px;/*線の位置*/
bottom: 0;/*線の位置*/
height: 100%;/*線の高さ*/
width: 100%;/*幅いっぱいに線を引く*/
background: #dddddd ;/*線の色*/
transform: scale(0,1);/*ホバー前は線を消す*/
transition: 0.3s;/*線が0→100%になるまでの秒数*/
}

#navi .navi-in a:hover:after{
transform: scale(1);/*マウスオーバー後、線を100%出す*/
}

/*フォントサイズ等変更*/
.navi-in .menu-header .item-label{
letter-spacing: 2px;
font-size: 15px;
font-weight: 600;
}



/*グローバルメニュー終わり*/










/*ヘッダーカスタマイズ*/
/*お問い合わせボタン（ヘッダー）*/


#header-in .header-contact img {
  max-width: none !important;         /* ← 160px上限を解除 */
  width: 80px !important;            /* お好みで 220〜280px などに */
  height: auto !important;
  display: block;
}


	/* 位置を上へ：PC */
@media (min-width: 960px){
  #header-in .header-contact{
  margin-top: 15px !important;  /* ← ここを 0〜12px で微調整 */
  }
}
	
#header-in .header-contact {
  display: flex !important;      /* ← これを追加：子要素を横並びにする */
  flex-direction: row;           /* 横並び（※なくてもOK。rowが初期値） */
  gap: 1px !important;           /* アイコン同士の間隔 */
  align-items: center;           /* 縦位置をそろえる */
}


/* 余白の混入対策（テーマ側の余白をゼロに） */
#header-in .header-contact a {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0;               /* 画像周りの行間を消す */
}
#header-in .header-contact img {
  display: block;
  margin: 0 !important;
}
	
/*リストの余白削除*/
/* チェックリストのli上下余白削除 */
.wp-block-list.is-style-vk-check-square-mark li{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}


/* Q */
.is-style-accordion > .faq > .faq-question{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* A */
.is-style-accordion > .faq > .faq-answer{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* FAQ回答内のpタグの下マージン削除 */
.faq-answer-content p{
  margin-bottom: 0 !important;
}

.toggle-button .fz-14px{
  color: #333 !important;
}

.toggle-button{
  color: #333 !important;
}

.toggle-button::before{
  color: #333 !important;
  opacity: 1 !important;
}

.toggle-checkbox:checked ~ .toggle-content {
  padding: 8px 10px !important;
}

/* =========================================================
   フッターモバイルメニュー：完成版
   - 文字サイズ変更
   - ボタンごとに背景色（Home / お問い合わせ / Facebook / Instagram / LINE）
   - 文字色を白で統一
   - タップ感UP（active）
   - アイコン追加（Font Awesome 5 前提 / CSSのみ）
   ========================================================= */

@media (max-width: 834px){

  /* -----------------------------
     1) 共通：レイアウト・文字
  ----------------------------- */
  .mobile-footer-menu-buttons .menu-button{
    /* 文字 */
    font-size: 16px !important;     /* ← 好みで 11〜14px */
    font-weight: 500;
    letter-spacing: .05em;

    /* 中身を縦並びに（アイコン＋文字） */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0px;

  }


  /* -----------------------------
     2) アイコン（Font Awesome 5）
  ----------------------------- */

  /* 共通：アイコン枠 */
  .mobile-footer-menu-buttons .menu-button::before{
    content: "";
    display: block;
    line-height: 1;
    font-size: 22px;               /* ← アイコンサイズ */
    margin-bottom: 0px;
	  margin-top: 3px;
  }

  /* 1.  */
  .mobile-footer-menu-buttons .menu-button:nth-child(1)::before{
    content: "\f133";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
  }

  /* 2.  */
  .mobile-footer-menu-buttons .menu-button:nth-child(2)::before{
  content: "\f3c0";
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
  }

  /* 3.  */
  .mobile-footer-menu-buttons .menu-button:nth-child(3)::before{
    content: "\f041";
    font-family: "Font Awesome 5 free";
    font-weight: 900;
  }

/* 4. アクセス */
.mobile-footer-menu-buttons .menu-button:nth-child(4)::before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

/* 5. お問い合わせ */
.mobile-footer-menu-buttons .menu-button:nth-child(5)::before {
  content: "\f4ad";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
	
}






/* スマホヘッダー：上下に5pxずつ余白 */
.mobile-header-menu-buttons {
  padding-top: 5px;
  padding-bottom: 5px;
}

/* ==========================================
   モバイルヘッダー
   文字サイズ調整
========================================== */

@media screen and (max-width: 1023px) {

  .mobile-header-menu-buttons .menu-caption,
  .mobile-header-menu-buttons .custom-menu-caption {
    font-size: 11px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.05em;
    opacity: 1 !important;
  }

    .mobile-header-menu-buttons .menu-icon,
  .mobile-header-menu-buttons .custom-menu-icon {
    margin-bottom: 4px !important;
  }

}



/*ブログ記事一覧のカスタマイズ*/
.new-entry-cards {
margin: auto;
width: 110vh;
}

.new-entry-card-thumb {
transition-duration: 0.3s; /*アニメーションの時間*/ box-shadow: 0px 10px 10px -5px rgba(85,85,85,0.75); /*通常時の画像の影*/
}

.new-entry-card-thumb:hover {
transform: translateY(-6px); /*マウスホバーで上に移動*/
box-shadow: 0px 5px 5px -5px rgba(85,85,85,0.75); /*マウスホバー時の画像の影*/
}

.new-entry-card-thumb img { /*画像下の隙間を消す*/
vertical-align: bottom;
}

.widget-entry-card-thumb {
width: 200px !important;
}

.new-entry-card-title {
margin-top: 5px; /*上に余白を付ける*/
line-height: 1; /*行間を広く*/
font-size: 15px !important;
padding-bottom: 0px!important;
}

.is-list-horizontal.large-thumb .card-title, .is-list-horizontal.large-thumb-on .card-title {
height: 1.5em;
}

/*タイトルと日付の間の調整*/
.new-entry-card-title:hover {
color: #85A4B5 ;/*マウスホバー時の色*/
}

/*記事一覧の投稿日表示カスタム*/
/*ウィジェット記事の投稿日・更新日を表示*/
.widget-entry-card-date {
display:block;
text-align: right;/*右寄せ*/
}

/*更新日を非表示にする*/
.widget-entry-card-update-date{
display: none;
}

/*日付にアイコン追加*/
.widget-entry-card-post-date::before,

.widget-entry-card-update-date::before{
font-family: "Font Awesome 5 Free";
padding-right: 3px; /*右余白*/
font-size:13px;
}

/*更新日アイコン*/
.widget-entry-card-update-date::before{
font-weight:bold;
content: "\f1da"; /*fa-historyアイコン*/
}


/*レスポンシブ*/
@media screen and (max-width: 768px){
.new-entry-cards {
margin: auto;
width: 45vh;
}
.new-entry-card-title {
font-size: 13px; /*スマホでの文字の大きさ*/
padding-left:5px;
	letter-spacing: 1.2px !important;
line-height: 1.2; /*スマホでの行間*/
}

.e-card-info {
color: #666 ; /*色を薄く*/
}

.new-entry-card-snippet { padding-left: 5px; font-size: 10px; } 
.e-card-info {font-size: 13px; /*スマホでの文字サイズ*/}
}



/*記事一覧カスタマイズ終わり*/





/* Font Awesome 用のフォントを正しく指定（!important で全体フォントより優先） */
.fa,
.fas,
.far {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;  /* 太めでOKならこのまま。細くしたければ 400 に */
}

/* ブランドアイコン（LINE / Instagram 用） */
.fab {
  font-family: "Font Awesome 5 Brands" !important;
  font-weight: 500 !important;
}




/*Youtube動画位置調整*/
/* Cocoon の video-container が左寄せになるのを防ぐ */
.wp-block-embed__wrapper .video-container {
  margin: 0 auto !important;
}



/* 記事ページ */
/* カテゴリーバッジ下の余白 */
.entry-categories-tags.ctdt-one-row {
	margin-bottom: 5px !important;
}

/*アイキャッチ見た目*/
.single .eye-catch-wrap{
  margin: 15px 0 15px;
}
.single .eye-catch img{
  width: 100%;
  height: auto;
  display: block;
}
.my-post-topmeta {
	margin-bottom: 10px !important;
}




/*ロゴの左寄せ*/
@media screen and (max-width: 1023px) {
  .logo-menu-button {
    flex-grow: 0 !important;
    width: auto !important;
	  padding-left: 0px;
  }
}

/* ===== 投稿メタ全体 ===== */
.my-post-meta{
  margin: 16px 0 24px;
}

/* 上段（日付・カテゴリ・タグ） */
.my-post-meta-top{
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  font-size: 14px;
  margin-bottom: 12px;
}

/* カテゴリ */
.my-meta-cat{
  background: #c7a492;
  color: #fff;
  padding: 4px 8px;
  border-radius: 3px;
  font-size: 14px;
  text-decoration: none;
}

/* タグ */
.my-meta-tag{
  font-size: 14px;
  color: #777;
  text-decoration: none;
}

/* アイキャッチ */
.my-meta-eyecatch{
  margin-top: 12px;
}
.my-meta-eyecatch img{
  width: 100%;
  height: auto;
  display: block;
}

/* 記事内に自動表示されるCocoon標準のカテゴリを非表示 */
.single .entry-categories,
.single .entry-categories-tags,
.single .entry-categories-tags.ctdt-one-row {
  display: none !important;
}

/* 記事タイトル */
.my-post-title {
  font-size: 26px;      /* お好みで 24〜30px */
  font-weight: 500;
  line-height: 1.6;
  display: block;
  margin-bottom: 6px;
}

/* 時計アイコンと日付の色 */
.my-meta-date i.fa-clock {
  color: #BBA492;
}
.my-meta-date {
  color: #666;
}


/* スマホ */
@media (max-width: 768px){
  .single .my-post-datetitle{ font-size: 18px; }
	  .my-post-title {
    font-size: 18px;
  }
	
}


/* --- Cocoonデフォルトの投稿メタを非表示 --- */

/* 本文の先頭に入っている画像（ブロック）を隠す */
.single .entry-content > figure.wp-block-image:first-child,
.single .entry-content > .wp-block-image:first-child {
  display: none !important;
}



/* =========================
    faq調整
   ========================= */

/* Q（質問） */
.faq-question.faq-item {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

/* Q（質問）の背景を透明に */
.faq-question.faq-item {
  background: transparent !important;
}

/* A（回答） */
.faq-answer.faq-item {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

/* Q・Aを小さく＆軽く */
.faq-question-label,
.faq-answer-label {
  font-size: 18px !important;
  font-weight: 400 !important;
}

/* テーブル内の文字色を統一 */
.wp-block-table,
.wp-block-table *,
.wp-block-flexible-table-block-table,
.wp-block-flexible-table-block-table * {
  color: #5B4B45 !important;
}

/* FAQ 回答の A と本文を上揃え */
.faq-answer.faq-item {
    align-items: flex-start !important;
}

.faq-answer .faq-answer-label {
    line-height: 1.4 !important;
    padding-top: 0 !important;
}

.faq-answer .faq-answer-content {
    line-height: 2.2 !important;
    margin-top: 0 !important;
}

@media screen and (min-width: 768px) {
.faq-answer .faq-answer-label {
    position: relative;
    top: 2px;
}

}


/* FAQの区切り線 */
.faq-wrap {
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 6px;
}

/* 次のQとの間隔 */
.faq-wrap + .faq-wrap {
    padding-top: 10px;
}

/* FAQ：質問文と回答文の間に余白 */
.faq-question.faq-item {
    margin-bottom: 10px !important;
}

/* 質問文と＋ボタンの間隔 */
.faq-question-content {
    margin-right: 18px !important;
}

/* 開いた時：回答文と区切り線の間を広げる */
.faq-answer-content {
    padding-bottom: 14px !important;
}

/* FAQの左右パディング削除 */
.is-style-accordion > .faq > .faq-question {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Aの左右パディング削除 */
.is-style-accordion > .faq > .faq-answer {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.faq-question-content,
.faq-answer-content {
    margin-right: 0 !important;
}

/* FAQ 質問・回答（スマホのみ） */
@media screen and (max-width: 767px) {

  /* Q・Aを小さく＆軽く */
.faq-question-label,
.faq-answer-label {
  font-size: 16px !important;
  font-weight: 400 !important;
}

  .faq-question-content,
  .faq-answer-content,
  .faq-question-content p,
  .faq-answer-content p,
  .faq-item-content {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
	
	 .logo-menu-button {
    margin-left: 0 !important;
  }
	
	.header-container-in.hlt-top-menu.wrap {
		display: none !important;
	}
	
	/* Smart Slider：スマホだけ縦幅を広げる */
  .n2-ss-slider {
    min-height: 260px !important; /* ← 好きな高さに調整 */
  }
	
	/* フッターモバイルボタン 全体 */
.mobile-footer-menu-buttons .menu-button {
  background-color: #6ECDB8; /* 背景色 */
}

/* リンク全体（文字＋アイコン） */
.mobile-footer-menu-buttons .menu-button a {
  color: #ffffff !important; /* 文字色 */
}


/* フッターモバイルボタン：中身を“文字だけ”にする */
.mobile-footer-menu-buttons .menu-button-in{
  display: block !important;      /* ← flexをやめる */
  text-align: center !important;
}
	
	/* フッターモバイルボタンの文字を大きく・太字に */
.mobile-footer-menu-buttons .menu-caption{
  font-size: 13px !important;   /* ← 16〜18pxがおすすめ */
  font-weight: 500 !important;  /* 太字 */
  opacity: 1 !important;        /* 薄くなってたのを解除 */
  line-height: 1 !important;
}

/* さらにタップしやすくしたい場合（上下余白） */
.mobile-footer-menu-buttons .menu-button-in{
  padding-top: 5px !important;
	padding-bottom: 5px !important;
}

/* アイコン（i / svg / FontAwesome）を消す */
.mobile-footer-menu-buttons .menu-button i,
.mobile-footer-menu-buttons .menu-button svg,
.mobile-footer-menu-buttons .menu-button .fa,
.mobile-footer-menu-buttons .menu-button .fas,
.mobile-footer-menu-buttons .menu-button .far,
.mobile-footer-menu-buttons .menu-button .fab{
  display: none !important;
}

/* 擬似要素で出てるアイコンも消す（Cocoon対策） */
.mobile-footer-menu-buttons .menu-button-in::before,
.mobile-footer-menu-buttons .menu-button-in::after{
  content: none !important;
  display: none !important;
}






/* ==========================================
   WELLyoga モバイルフッターボタン
   KEY COLOR：#A4C58F
========================================== */


/* フッター全体 */
.mobile-footer-menu-buttons {
  background: #fff !important;
}


/* ------------------------------------------
   ① ご予約
------------------------------------------ */
.mobile-footer-menu-buttons > li:nth-child(1) {
  background: #A4C58F !important;
}


/* ------------------------------------------
   ② LINE
------------------------------------------ */
.mobile-footer-menu-buttons > li:nth-child(2) {
  background: #F1F0E5 !important;
}


/* ------------------------------------------
   ③ アクセス
------------------------------------------ */
.mobile-footer-menu-buttons > li:nth-child(3) {
  background: #F1F0E5 !important;
}


/* ------------------------------------------
   ④ お問い合わせ
------------------------------------------ */
.mobile-footer-menu-buttons > li:nth-child(4) {
  background: #F1F0E5 !important;
}


/* ==========================================
   アイコン・文字
========================================== */


/* ① ご予約：白 */
.mobile-footer-menu-buttons > li:nth-child(1),
.mobile-footer-menu-buttons > li:nth-child(1) > a,
.mobile-footer-menu-buttons > li:nth-child(1) .menu-icon,
.mobile-footer-menu-buttons > li:nth-child(1) .menu-caption,
.mobile-footer-menu-buttons > li:nth-child(1) .menu-button::before {
  color: #fff !important;
}


/* ② LINE：白 */
.mobile-footer-menu-buttons > li:nth-child(2),
.mobile-footer-menu-buttons > li:nth-child(2) > a,
.mobile-footer-menu-buttons > li:nth-child(2) .menu-icon,
.mobile-footer-menu-buttons > li:nth-child(2) .menu-caption,
.mobile-footer-menu-buttons > li:nth-child(2) .menu-button::before {
  color: #7CA960 !important;
}


/* ③ アクセス：落ち着いたグリーン */
.mobile-footer-menu-buttons > li:nth-child(3),
.mobile-footer-menu-buttons > li:nth-child(3) > a,
.mobile-footer-menu-buttons > li:nth-child(3) .menu-icon,
.mobile-footer-menu-buttons > li:nth-child(3) .menu-caption,
.mobile-footer-menu-buttons > li:nth-child(3) .menu-button::before {
  color: #7CA960 !important;
}


/* ④ お問い合わせ：落ち着いたグリーン */
.mobile-footer-menu-buttons > li:nth-child(4),
.mobile-footer-menu-buttons > li:nth-child(4) > a,
.mobile-footer-menu-buttons > li:nth-child(4) .menu-icon,
.mobile-footer-menu-buttons > li:nth-child(4) .menu-caption,
.mobile-footer-menu-buttons > li:nth-child(4) .menu-button::before {
  color: #7CA960 !important;
}




/* ==========================================
   Font Awesome 疑似要素を確実に上書き
========================================== */

.mobile-footer-menu-buttons > li:nth-child(1)::before
 {
  color: #fff !important;
}

/* Font Awesome 疑似要素 */
.mobile-footer-menu-buttons > li:nth-child(2)::before,
.mobile-footer-menu-buttons > li:nth-child(3)::before,
.mobile-footer-menu-buttons > li:nth-child(4)::before {
  color: #7CA960 !important;
}


/* ==========================================
   区切り線
========================================== */

.mobile-footer-menu-buttons .menu-button {
  border-right: 1px solid #A4C58F !important;
}

.mobile-footer-menu-buttons .menu-button:last-child {
  border-right: none !important;
}


/* ==========================================
   モバイルスライドインメニュー
========================================== */

.menu-drawer li a {
  padding: 16px 20px;
  display: block;
}


/* ==========================================
   カラムの縦ギャップ
========================================== */

.wp-block-columns {
  row-gap: 5px !important;
}



  
	
	/* =========================
   ヘッダー Font Awesome アイコンサイズ調整
   ========================= */

/* モバイルヘッダーのアイコン */
.mobile-menu-buttons .custom-menu-icon .fa,
.mobile-menu-buttons .custom-menu-icon .fas,
.mobile-menu-buttons .custom-menu-icon .fab {
  font-size: 26px;   /* ← 22〜30pxで調整 */
}
	.mobile-menu-buttons .fa-bars {
  font-size: 27px;   /* ← 他が26pxなら +2px くらいが綺麗 */
}
	
/* WELLロゴボタン */
/* モバイルヘッダー右端：WELLロゴ */
.mobile-header-menu-buttons li:last-child{
  width: 50px !important;
  flex: 0 0 50px !important;
  height: 50px !important;
  min-height: 50px !important;
}

.mobile-header-menu-buttons li:last-child a,
.mobile-header-menu-buttons li:last-child .menu-button-in{

  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
     justify-content: flex-end !important; /* ←右寄せ */
}


/* 星アイコンを消す */
.mobile-header-menu-buttons li:last-child .fa-star::before{
  display: none !important;
}

/* ロゴ画像 */
.mobile-header-menu-buttons li:last-child .custom-menu-icon::before{
  content: "" !important;
  display: block !important;
  width: 44px !important;
  height: 44px;
  background-image: url("http://well-nurse-yogapilates.com/wp-content/uploads/2026/05/cropped-縦ロゴ-e1780467433225.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

/* テキスト非表示 */
.mobile-header-menu-buttons li:last-child .custom-menu-caption,
.mobile-header-menu-buttons li:last-child .menu-caption{
  display: none !important;
}

/* 右端ロゴを上下中央に */
.mobile-header-menu-buttons li:last-child a{
  align-items: center !important;
  justify-content: center !important;
}

.mobile-header-menu-buttons li:last-child .custom-menu-icon{
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
}

/* 予約ボタンのカレンダーアイコンだけ大きく */
.mobile-menu-buttons li:nth-child(4) .fa-calendar{
  font-size: 28px !important;
}

	
}


/* =========================
   スマホヘッダー
   アイコン・文字をセージグリーンに
========================= */
@media screen and (max-width: 1023px){

  /* アイコン */
  .mobile-header-menu-buttons .menu-icon,
  .mobile-header-menu-buttons .custom-menu-icon,
  .mobile-header-menu-buttons .fa,
  .mobile-header-menu-buttons .fas,
  .mobile-header-menu-buttons .far,
  .mobile-header-menu-buttons .fab {
    color: #6B7F5F !important;
  }

  /* 文字 */
  .mobile-header-menu-buttons .menu-caption {
    color: #6B7F5F !important;
  }

}



/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}



/* current-menu-item の背景を消す */
.mobile-header-menu-buttons .menu-drawer > li.current-menu-item,
.mobile-header-menu-buttons .menu-drawer > li.current_page_item,
.mobile-header-menu-buttons .menu-drawer > li.current-menu-item > a,
.mobile-header-menu-buttons .menu-drawer > li.current_page_item > a {
  background: transparent !important;
}

/* リンク */
.mobile-header-menu-buttons .menu-drawer > li > a {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  color: #333 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}



/* スライドインメニュー：各項目 */
.mobile-header-menu-buttons .menu-drawer > li {
  position: relative !important;
  padding: 0 !important;
  border-bottom: 1px solid rgba(107, 127, 95, .18) !important;
}

/* リンクに余白を持たせる */
.mobile-header-menu-buttons .menu-drawer > li > a {
  position: relative !important;
  display: block !important;
  padding: 18px 20px 18px 48px !important;
  color: #333 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

/* 丸マーク */
.mobile-header-menu-buttons .menu-drawer > li > a::before {
  content: "" !important;
  position: absolute !important;
  left: 24px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #D7E5C7 0%, #7C9D6B 55%, #6B7F5F 100%) !important;
}

/* li側の丸は消す */
.mobile-header-menu-buttons .menu-drawer > li::before {
  content: none !important;
}

/* 最後の線はなし */
.mobile-header-menu-buttons .menu-drawer > li:last-child {
  border-bottom: none !important;
}





/* =========================================================
   note RSS カルーセル
   PC：3件表示 / スマホ：2件表示
   ========================================================= */

.note-carousel{
  position: relative;
  width: 100%;
  margin: 16px auto 10px;          /* 下10px = カードと「もっと見る」の間 */
}
.note-carousel + p{
  margin-top: 0 !important;         /* 「もっと見る」段落の上アキを消して10pxを担保 */
}

.note-track{
  overflow: hidden !important;
  width: 100%;
}

.note-card-grid{
  --note-gap: 18px;

  display: flex !important;
  gap: var(--note-gap) !important;
  overflow: visible !important;

  padding: 0 !important;
  margin: 0 !important;

  transform: translate3d(0,0,0);
  transition: transform .35s ease;
  will-change: transform;
}

/* PC：3件表示 */
.note-card{
  flex: 0 0 calc((100% - var(--note-gap) * 2) / 3) !important;
  max-width: calc((100% - var(--note-gap) * 2) / 3) !important;

  display: block !important;
  text-decoration: none !important;
  color: inherit !important;

  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;

  transition: transform .15s ease, box-shadow .15s ease, color .15s ease;
}

/* スマホ：2件表示（JSの判定 768px に合わせる） */
@media (max-width: 768px){
  .note-card-grid{
    --note-gap: 12px;
  }

  .note-card{
    flex-basis: calc((100% - var(--note-gap)) / 2) !important;
    max-width: calc((100% - var(--note-gap)) / 2) !important;
  }
}

.note-card-thumb{
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 10;
  background-size: cover !important;
  background-position: center !important;
  background-color: #f2f5f5;
}

.note-card-thumb.is-noimg{
  background-image: linear-gradient(135deg, rgba(158,202,203,0.20), rgba(216,230,232,0.15));
}

.note-card-body{
  display: block;
  padding: 5px 10px 10px 12px;
}

.note-card-date{
  display: block;
  font-size: 12px;
  opacity: .65;
  margin-bottom: 1px;
}

.note-card-title{
  display: block;
  font-size: 13px !important;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.3;
}

.note-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.10);
}

.note-card:hover .note-card-title,
.note-card:hover .note-card-date{
  color: #666666 !important;
}

/* 少ない時は中央寄せ */
.note-carousel.is-few .note-card-grid{
  justify-content: center !important;
  transform: none !important;
}

.note-carousel.is-few .note-nav-btn,
.note-carousel.is-few .note-dots{
  display: none !important;
}

/* 矢印 */
.note-nav-btn{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;

  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.92);
  box-shadow: 0 8px 18px rgba(0,0,0,0.10);
  cursor: pointer;

  display: grid;
  place-items: center;
  padding: 0;
}

.note-nav-btn.is-prev{ left: -10px; }
.note-nav-btn.is-next{ right: -10px; }

.note-nav-btn svg{
  width: 16px;
  height: 16px;
  opacity: .75;
}

.note-nav-btn:disabled{
  opacity: .35;
  cursor: default;
  pointer-events: none;
}

/* ドット非表示 */
.note-carousel .note-dots{
  display: none !important;
}











/* tag：ラベル風デザイン */
p.tag {
  display: inline-block;
  width: fit-content;

  background-color: #A4C58F;
  color: #fff;

  padding: 4px 12px;
  border-radius: 20px;

  font-size: 14px;
  line-height: 1.5;

  margin-right: 6px;
}




/* ==========================================
   WELLyoga CTAボタン
   KEY COLOR：#A4C58F
========================================== */


/* ------------------------------------------
   共通設定
------------------------------------------ */

.well-cta-primary a,
.well-cta-secondary a {
  display: flex !important;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 56px;
  padding: 12px 35px !important;

  border: none !important;
  border-radius: 999px !important;
  box-shadow: none !important;

  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-decoration: none !important;

  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

/* ==========================================
   WELLyoga CTA グラデーション
========================================== */


/* ① レッスンのご予約
   左：淡いイエロー → 右：グリーン
------------------------------------------ */

.wp-block-cocoon-blocks-button-1.well-cta-primary a.btn {
  background: linear-gradient(
    135deg,
    #65B58C 0%,
    #82BC8B 25%,
    #A4C58F 55%,
    #C3CF9D 78%,
    #F1DDAE 100%
  ) !important;

  color: #fff !important;
}


/* ホバー：全体を少し淡く */
.wp-block-cocoon-blocks-button-1.well-cta-primary a.btn:hover {
  background: linear-gradient(
    135deg,
    #83C5A3 0%,
    #9BC99F 25%,
    #B6D0A6 55%,
    #D1D9B2 78%,
    #F5E6C5 100%
  ) !important;

  color: #fff !important;
}


/* ② 看護師による無料相談
   左：淡いグリーン → 右：アイボリー
------------------------------------------ */

.wp-block-cocoon-blocks-button-1.well-cta-secondary a.btn {
  background: linear-gradient(
    135deg,
    #D2E7D3 0%,
    #DCE9D2 35%,
    #E3E8CC 65%,
    #ECE5CB 82%,
    #F5E5D2 100%
  ) !important;

  color: #66835B !important;
}


/* ホバー：さらに淡く */
.wp-block-cocoon-blocks-button-1.well-cta-secondary a.btn:hover {
  background: linear-gradient(
    135deg,
    #E1EEE0 0%,
    #E7EFE0 35%,
    #ECEEDC 65%,
    #F1EBDA 82%,
    #F8EEE3 100%
  ) !important;

  color: #66835B !important;
}


/* ==========================================
   スマホフッター
   ロゴ左 ＋ メニュー右
========================================== */

@media screen and (max-width: 480px) {

  /* ------------------------------------------
     フッター全体を2カラム
     左：ロゴ / 右：メニュー
  ------------------------------------------ */
  #footer .footer-bottom {
    display: grid !important;
    grid-template-columns: 38% 62%;
    align-items: center;
    gap: 15px;

    padding: 30px 20px 20px !important;
    margin-top: 0 !important;
  }


  /* ------------------------------------------
     左：ロゴ
  ------------------------------------------ */
  #footer .footer-bottom-logo {
    margin: 0 !important;
    padding: 0 !important;
    text-align: center;
  }

  /* 現在のロゴを非表示 */
  #footer .footer-bottom-logo img {
    display: none !important;
  }

  /* スマホ用の縦ロゴを表示 */
  #footer .footer-bottom-logo::before {
    content: "";
    display: block;
    width: 100%;
    max-width: 120px;
    height: 150px;
    margin: 0 auto;

    background-image: url("http://well-nurse-yogapilates.com/wp-content/uploads/2026/05/縦ロゴ.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }


  /* ------------------------------------------
     右：メニュー
  ------------------------------------------ */
  #footer .footer-bottom-content {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    width: 100%;
    margin: 0 !important;
    padding: 0 !important;

    text-align: left !important;
  }


  /* メニューを縦並び */
  #footer .footer-bottom-content .menu-footer {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;

    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
  }

  #footer .footer-bottom-content .menu-footer li {
    width: 100%;
    margin: 0 0 10px !important;
    padding: 0 !important;
  }

  #footer .footer-bottom-content .menu-footer li a {
    display: block;
    padding: 0 !important;
    white-space: nowrap;

    font-size: 14px;
    text-align: left;
  }


  /* メニュー文頭のライン */
  #footer .footer-bottom-content .menu-footer li a::before {
    content: "―";
    display: inline-block;
    margin-right: 8px;
    color: #A4C58F;
  }


  /* ------------------------------------------
     コピーライト
     フッター全体の中央へ
  ------------------------------------------ */
  #footer .footer-bottom-content .copyright {
    position: absolute;
    left: 0;
    bottom: 10px;

    width: 100%;
    text-align: center !important;
    font-size: 12px;
  }

  /* コピーライト分の余白 */
  #footer .footer-bottom {
    position: relative;
    padding-bottom: 0px !important;
  }

}