@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700&display=swap");

/*!
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
*/

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

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

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

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

/************************************
** カラーパレット・全体トーン（追加分）
************************************/
:root {
  --chokatsu-green: #7BA88A;
  --chokatsu-green-dark: #5F8B70;
  --chokatsu-beige: #F5F0E6;
  --chokatsu-offwhite: #FBF9F4;
}

body {
  line-height: 1.9;
}
.entry-content {
  font-size: 105%;
  line-height: 1.9;
}
.entry-content h2 {
  margin-top: 2.4em;
  margin-bottom: 1em;
  padding: 0.6em 1em;
  font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
}
.entry-content h3,
.entry-content h4 {
  font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
}
.entry-content p {
  margin-bottom: 1.6em;
}

/************************************
** Hero部分（トップページ先頭の見出し＋CTA）
************************************/
.home .entry-content > h2:first-of-type {
  text-align: center;
  font-size: 160%;
  border: none;
  background: none;
  padding: 0;
  margin-top: 0.5em;
  margin-bottom: 0;
  line-height: 1.6;
}
.home .entry-content > .cta-box:first-of-type {
  background: linear-gradient(135deg, var(--chokatsu-green) 0%, var(--chokatsu-beige) 100%);
  border-radius: 16px;
  padding: 3em 2em;
  margin-top: 1.5em;
  margin-bottom: 2.5em;
  box-shadow: 0 8px 24px rgba(123, 168, 138, 0.25);
}
.home .entry-content > .cta-box:first-of-type .cta-message {
  color: #fff;
  font-size: 105%;
  text-shadow: 0 1px 2px rgba(0,0,0,0.15);
}

/************************************
** 「悩みから探す」「カテゴリー一覧」BOXメニュー
** → アイコン付きカード型デザイン＋ホバーアニメーション
************************************/
.box-menus {
  gap: 16px;
  padding: 8px 0;
}
.box-menus .box-menu {
  width: calc(25% - 12px);
  min-height: 140px;
  background: var(--chokatsu-offwhite);
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(95, 139, 112, 0.12);
  border: 1px solid #ECE6D8;
  padding: 1.4em 1em;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.box-menus .box-menu:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(95, 139, 112, 0.22);
}
.box-menus .box-menu-icon {
  width: 68px;
  height: 68px;
  margin: 0 auto 10px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid var(--chokatsu-green);
  box-shadow: 0 2px 8px rgba(95, 139, 112, 0.15);
}
.box-menus .box-menu-icon img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}
.box-menus .box-menu-label {
  font-size: 15px;
  font-weight: 700;
  color: var(--chokatsu-green-dark);
  margin-top: 4px;
}
.box-menus .box-menu-description {
  font-size: 11px;
  margin-top: 4px;
}

/************************************
** CTAボタン：角丸・柔らかい影・グリーン系配色・コンパクトサイズ
** （①ボタン色：Cocoonのボタンショートコード/ウィジェットは
** 　button_color="btn-red"等のクラスで背景色を指定する仕様のため、
** 　個々のbtn-red/btn-blue/btn-greenクラスより詳細度の高いこの
** 　セレクタでbackground-colorを上書きし、全CTAボタンをグリーンに統一）
** （②サイズ：Cocoon標準の.btn-lはdisplay:flexで横幅いっぱいに
** 　広がる仕様のため、display:inline-flexに変更し.cta-buttonで
** 　中央寄せすることでコンパクトな幅に調整）
************************************/
.cta-box .cta-button {
  text-align: center;
}
.cta-box .cta-button .btn {
  display: inline-flex;
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(95, 139, 112, 0.25);
  padding: 0.8em 1.8em;
  border: none;
  background-color: var(--chokatsu-green);
  color: #fff;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}
.cta-box .cta-button .btn:hover {
  background-color: var(--chokatsu-green-dark);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(95, 139, 112, 0.35);
}
.cta-box.cta-top-and-bottom {
  border-radius: 14px;
}

/************************************
** レスポンシブデザイン用のメディアクエリ（追加分）
************************************/
/*834px以下*/
@media screen and (max-width: 834px){
  .box-menus .box-menu {
    width: calc(50% - 8px);
  }
  .home .entry-content > h2:first-of-type {
    font-size: 130%;
  }
  .home .entry-content > .cta-box:first-of-type {
    padding: 2em 1.2em;
  }
}

/*480px以下*/
@media screen and (max-width: 480px){
  .box-menus .box-menu {
    width: 100%;
  }
}

/************************************
** ①フォローセクションの非表示
** （プロフィールウィジェットに自動付随する「〇〇をフォローする」を
** 　CSSで非表示化。Cocoon側に個別トグルが無いための対応。
** 　実SNS運用開始後、この1ブロックを削除すれば元に戻ります）
************************************/
.profile-follows.author-follows {
  display: none;
}

/************************************
** ②セクション間の余白を拡大
************************************/
.home .entry-content > h2 {
  margin-top: 3.4em;
}
.home .entry-content > h2:first-of-type {
  margin-top: 0.5em;
}
.home .entry-content > .wp-block-shortcode,
.home .entry-content > p {
  margin-bottom: 2em;
}

/************************************
** ②「悩みから探す」BOXメニュー：カテゴリーごとのアイコン色分け
** （⑦線画アイコン差し替えに伴い、塗りつぶし→リング色に変更）
************************************/
.box-menu.care-constipation .box-menu-icon { border-color: #E8973A; }
.box-menu.care-cold .box-menu-icon        { border-color: #5B9BD5; }
.box-menu.care-pms .box-menu-icon         { border-color: #E07A9E; }
.box-menu.care-sleep .box-menu-icon       { border-color: #8B7ECF; }
.box-menu.care-stress .box-menu-icon      { border-color: #E0C23A; }

/************************************
** ②「カテゴリー一覧」BOXメニュー：カテゴリーごとのアイコン色分け
** （⑦線画アイコン差し替えに伴い、塗りつぶし→リング色に変更）
************************************/
.box-menu.cat-guthealth .box-menu-icon    { border-color: var(--chokatsu-green); }
.box-menu.cat-bodytype .box-menu-icon     { border-color: #4FA89B; }
.box-menu.cat-constipation .box-menu-icon { border-color: #E8973A; }
.box-menu.cat-cold .box-menu-icon         { border-color: #5B9BD5; }
.box-menu.cat-pms .box-menu-icon          { border-color: #E07A9E; }
.box-menu.cat-sleep .box-menu-icon        { border-color: #8B7ECF; }
.box-menu.cat-supplements .box-menu-icon  { border-color: var(--chokatsu-green-dark); }

/************************************
** ②Hero：写真取得ができない間の暫定処理
** （UnsplashはBot検知チャレンジ、Pixabayは403でアクセス不可のため、
** 　実写真の代わりに柔らかい植物柄パターンを敷いています。仮対応）
************************************/
.home .entry-content > .cta-box:first-of-type {
  background-image:
    radial-gradient(circle at 15% 20%, rgba(255,255,255,0.25) 0, transparent 45%),
    radial-gradient(circle at 85% 80%, rgba(255,255,255,0.2) 0, transparent 45%),
    linear-gradient(135deg, var(--chokatsu-green) 0%, var(--chokatsu-beige) 100%);
}

/************************************
** ②Hero：実写真を背景に設定（暫定パターンを上書き）
** オーバーレイ（ベージュ半透明）+ 写真の重ね合わせ
** （2026/7/6追記：文字色を薄いグリーンから濃いディープグリーン
** 　#2E4A3Aに変更し、白の縁取り影＋濃い影の二重text-shadowで
** 　写真の明暗どちらの領域でも視認性を確保）
************************************/
.home .entry-content > .cta-box:first-of-type {
  background-image:
    linear-gradient(rgba(245, 240, 230, 0.45), rgba(245, 240, 230, 0.45)),
    url("http://chokatsu-style.com/wp-content/uploads/2026/07/hero-temp.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.home .entry-content > .cta-box:first-of-type .cta-heading,
.home .entry-content > .cta-box:first-of-type .cta-message {
  color: #2E4A3A;
  text-shadow: 0 1px 2px rgba(255,255,255,0.4), 0 2px 8px rgba(0,0,0,0.4);
}
/* （2026/7/6追記②：見出しはtext-shadowだけでは視認性不足との
   フィードバックのため、ベージュ半透明プレートを主な視認性確保
   手段に変更。文字自体を囲む幅だけのプレートにするため
   inline-block化しflexコンテナ内で中央寄せ） */
.home .entry-content > .cta-box:first-of-type .cta-heading {
  display: inline-block;
  align-self: center;
  width: fit-content;
  max-width: 90%;
  background-color: rgba(245, 240, 230, 0.75);
  border-radius: 12px;
  padding: 0.5em 1.1em;
  text-align: center;
  text-shadow: 0 1px 2px rgba(255,255,255,0.3);
}

/************************************
** 表現ルール注意書きボックス（編集時のみ目立たせる用途）
** ※ 誤って公開されても通常本文と明確に区別できる配色にしている
************************************/
.expr-check-box {
  background: #FFF3CD;
  border: 3px dashed #D9534F;
  border-radius: 8px;
  padding: 1em 1.2em;
  margin: 1.5em 0;
}
.expr-check-box p {
  margin: 0.3em 0 !important;
  color: #7A1F1F;
}
.expr-check-box .expr-check-title {
  font-size: 1.1em;
  font-weight: 700;
  color: #D9534F;
}

/************************************
** ③BOXメニューの絞り込み：中央寄せで少し幅を狭め、
** 　4列でも間延びしないようにする
************************************/
.box-menus {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

/************************************
** ④セクション背景の交互配色（2026-08-27：TOPページ10セクション構成へ
** 全面刷新に伴い、nth-of-type依存の旧ルールは廃止。position非依存の
** クラスベースに切り替え。対象：悩みから探す／目的から探すBOXメニュー、
** Chokatsu Styleについて（3点リスト）
************************************/
.home .entry-content > .box-menus-worries,
.home .entry-content > .box-menus-purpose {
  background: var(--chokatsu-beige);
  border-radius: 12px;
  padding: 1.2em 1.2em 0.6em;
}

/************************************
** ⑤「目的から探す」BOXメニュー：円アイコン型の「悩みから探す」と
** 視覚的に区別するため、横長カード＋左アクセントボーダー型に変更
** （アイコンは非表示にしてテキスト主体のデザインにする）
************************************/
.box-menus-purpose {
  max-width: 900px;
}
.box-menus-purpose .box-menu {
  width: calc(50% - 8px);
  min-height: auto;
  display: flex;
  align-items: center;
  text-align: left;
  background: var(--chokatsu-offwhite);
  border: none;
  border-left: 5px solid var(--chokatsu-green);
  border-radius: 8px;
  padding: 1.1em 1.3em;
}
.box-menus-purpose .box-menu:hover {
  border-left-color: var(--chokatsu-green-dark);
  background: #fff;
}
.box-menus-purpose .box-menu-icon {
  display: none;
}
.box-menus-purpose .box-menu-label {
  font-size: 15px;
  color: var(--chokatsu-green-dark);
  margin-top: 0;
}
.box-menus-purpose .box-menu-description {
  font-size: 12px;
  color: #666;
  margin-top: 2px;
}

@media screen and (max-width: 480px){
  .box-menus-purpose .box-menu {
    width: 100%;
  }
}

/************************************
** ⑥「おすすめ記事」手動選出カード
** （blogcardショートコードは下書き記事のURLを実際にフェッチしようと
** 　して「ページが見つかりませんでした」と表示されてしまうため不採用。
** 　タイトル・説明文を直接記述するシンプルなカードで代替）
************************************/
.recommend-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  max-width: 900px;
  margin: 0 auto;
}
.recommend-card {
  display: block;
  width: calc(33.333% - 10px);
  background: var(--chokatsu-offwhite);
  border: 1px solid #ECE6D8;
  border-radius: 10px;
  padding: 1.1em 1.2em;
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.recommend-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(95, 139, 112, 0.18);
}
.recommend-card-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--chokatsu-green-dark);
  margin-bottom: 4px;
}
.recommend-card-desc {
  font-size: 12px;
  color: #666;
}

/* 記事が下書きのうちはリンクを無効化（公開後、is-pendingクラスを
   外せば元のリンク挙動に戻る） */
.recommend-card.is-pending {
  pointer-events: none;
  cursor: default;
  opacity: 0.72;
}
.recommend-card.is-pending .recommend-card-title::after {
  content: "（準備中）";
  font-size: 11px;
  font-weight: normal;
  color: #999;
  margin-left: 0.3em;
}
@media screen and (max-width: 834px){
  .recommend-card {
    width: calc(50% - 7px);
  }
}
@media screen and (max-width: 480px){
  .recommend-card {
    width: 100%;
  }
}
