/*
Theme Name: Cocoon Child
Template: cocoon-master
Version: 1.0
*/

@charset "UTF-8";

/************************************
 子テーマ用スタイル（完全整理版）
************************************/

/* ===== プロフィール見せ分け ===== */
.author-description p { display:none; }

#sidebar .widget_author_box .author-description p:nth-of-type(1){ display:block; }

.home .widget_author_box .author-description p:nth-of-type(2),
.archive .widget_author_box .author-description p:nth-of-type(2){ display:block; }

.above-single-comment-aria .author-description p{ display:block; }


/* ===== スムーススクロール ===== */
html { scroll-behavior:smooth; }
:target { scroll-margin-top:120px; }


/* =====================================
   書籍カード（信頼感重視）
===================================== */

.book-card{
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:28px;
  margin:40px 0;
  background:#ffffff;
  box-shadow:0 2px 10px rgba(0,0,0,0.05);
  transition:all .3s ease;
}

.book-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 30px rgba(0,0,0,0.08);
}

.book-card h3{
  font-size:20px;
  margin-bottom:10px;
  text-align:left;
  color:#111827;
}

.book-card p{
  text-align:left;
  line-height:1.7;
  color:#4b5563;
  margin-bottom:18px;
}

.book-card hr{
  border:none;
  border-top:1px solid #e5e7eb;
  margin:20px 0;
}


/* ===== ボタン共通 ===== */
.review-btn,
.amazon-btn{
  display:inline-block;
  padding:12px 20px;
  border-radius:8px;
  text-decoration:none;
  font-weight:600;
  transition:all .25s ease;
}

/* レビューCTA 復旧版（信頼ネイビー）ブロックボタン用 */
.review-btn .wp-block-button__link{
  background:#2c5aa0;
  color:#ffffff;
  border-radius:30px;
  padding:12px 22px;
  font-weight:600;
  transition:all .3s ease;
  box-shadow:0 4px 10px rgba(0,0,0,0.08);
}

.review-btn .wp-block-button__link:hover{
  background:#1f3f75;
  transform:translateY(-3px);
  box-shadow:0 8px 18px rgba(0,0,0,0.15);
  color:#ffffff;
}

/* Amazon（購入オレンジ） */
.amazon-btn{
  background:#f59e0b;
  color:#ffffff;
  margin-left:10px;
  font-weight:700;
  letter-spacing:0.5px;
}

.amazon-btn:hover{
  background:#d97706;
  transform:translateY(-2px) scale(1.02);
  box-shadow:0 8px 18px rgba(0,0,0,0.18);
}


/* =====================================
   アコーディオン（安定版）
===================================== */

.accordion-wrapper{
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:28px;
  margin:50px 0;
  background:#f9fafb;
}

.accordion-btn{
  position:relative;
  width:100%;
  padding:18px;
  font-size:18px;
  font-weight:600;
  text-align:left;
  border:none;
  background:#f3f4f6;
  border-radius:10px;
  cursor:pointer;
  transition:background .2s ease;
}

.accordion-btn:hover{
  background:#e5e7eb;
}

.accordion-btn::after{
  content:"+";
  position:absolute;
  right:20px;
  font-size:20px;
}

.accordion-btn.active::after{
  content:"−";
}

.accordion-content{
  display:none;
  padding:20px 0 10px;
}
.accordion-content.open{
  display:block;
}


/* =====================================
   目次
===================================== */

.toc-box{
  background:#f9fafb;
  padding:28px;
  border-radius:12px;
  margin:50px 0;
}

.toc-box ul{ padding-left:20px; }

.toc-box a{
  text-decoration:none;
  color:#2563eb;
  font-weight:500;
}

.toc-box a:hover{
  text-decoration:underline;
}
/* ===== ヒーロー ===== */

.trust-hero{
  text-align:center;
  padding:60px 20px 40px;
}

.trust-hero h1{
  font-size:28px;
  margin-bottom:16px;
  color:#111827;
}

.trust-lead{
  font-size:16px;
  color:#4b5563;
  line-height:1.8;
}

.official-label{
  font-size:12px;
  color:#6b7280;
  margin-bottom:6px;
}
.credibility-box{
  background:#f3f4f6;
  padding:32px;
  border-radius:12px;
  margin:60px 0;
}

.credibility-box h2{
  margin-bottom:16px;
}

.credibility-box li{
  margin-bottom:10px;
  color:#374151;
}

.final-cta{
  text-align:center;
  padding:60px 20px;
}

.final-cta p{
  margin-bottom:20px;
  font-size:16px;
}
.stock-note{
  font-size:13px;
  color:#b91c1c;
  margin-bottom:8px;
}
/* ===== ボタン風リンク共通 ===== */
.wp-block-button__link{
  transition: transform .25s ease, box-shadow .25s ease;
}

.wp-block-button__link:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 18px rgba(0,0,0,0.15);
}
/* ===============================
   共通：ホバーアニメーション基盤
=============================== */
.hover-card {
  transition: all .35s ease;
}

.hover-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}
/* ===============================
   画像リンクホバー（ズーム）
=============================== */

.hover-img {
  overflow: hidden;
  border-radius: 12px;
}

.hover-img img {
  transition: transform .4s ease;
}

.hover-img:hover img {
  transform: scale(1.06);
}
/* ===============================
   3ステップカード
=============================== */

.step-card {
  background: #fff;
  border-radius: 18px;
  padding: 28px 22px;
  transition: all .35s ease;
  border: 1px solid #eee;
}

.step-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.10);
  border-color: transparent;
}
/* ===============================
   CTAボタンホバー
=============================== */

.wp-block-button__link {
  transition: all .25s ease;
}

.wp-block-button__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  opacity: .9;
}
a:hover img {
  opacity: .95;
}

/* ===== トップ3横並び復旧 ===== */

.top3-wrap{
  display:flex;
  gap:24px;
  margin:40px 0;
}

.top3-card{
  flex:1;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:24px;
  background:#fff;
  text-align:center;
  transition:all .3s ease;
}

.top3-card:hover{
  transform:translateY(-6px);
  box-shadow:0 12px 25px rgba(0,0,0,0.08);
}

.top3-card img{
  width:100%;
  max-width:220px;
  height:auto;
  margin-bottom:16px;
}

@media (max-width:768px){
  .top3-wrap{
    flex-direction:column;
  }
}
/* Top3専用ボタン（カスタムHTML用） */
a.top3-btn{
  display:inline-block;
  background:#2563eb;
  color:#ffffff;
  border-radius:8px;
  padding:12px 20px;
  font-weight:600;
  text-decoration:none;
  transition:all .25s ease;
}

a.top3-btn:hover{
  background:#1e40af;
  transform:translateY(-2px);
  box-shadow:0 8px 18px rgba(0,0,0,0.15);
  color:#ffffff;
}

/* サイドバー画像ホバー復旧 */
.sidebar a img{
  transition:all .3s ease;
}

.sidebar a:hover img{
  transform:translateY(-4px);
  box-shadow:0 8px 18px rgba(0,0,0,0.2);
}
/* アコーディオンブックカード余白色太さ線調整 */
.accordion-book-card hr {
  border: none;           /* 線のスタイルをシンプルに */
  border-top: 1px solid #e5e7eb; /* 色や太さを調整 */
  margin: 20px 0;         /* 上下の隙間を調整 */
}
/* アコーディオンブックカード内
/* ===============================
   カスタムHTML用 レビューボタン
   （ブロックボタンと統一）
=============================== */

a.review-btn{
  display:inline-block;
  background:#2c5aa0;
  color:#ffffff;
  border-radius:30px;
  padding:12px 22px;
  font-weight:600;
  text-decoration:none;
  transition:all .3s ease;
  box-shadow:0 4px 10px rgba(0,0,0,0.08);
}

a.review-btn:hover{
  background:#1f3f75;
  transform:translateY(-3px);
  box-shadow:0 8px 18px rgba(0,0,0,0.15);
  color:#ffffff;
}
/* ===== amazon一覧書籍ページ専用アコーディオンボックス設定 ===== */

.book-accordion {
  max-width: 800px;
  margin: 50px auto;
}

.book-accordion-btn {
  width: 100%;
  padding: 15px;
  background: #f5f5f5;
  border: none;
  text-align: left;
  font-size: 16px;
  cursor: pointer;
  margin-top: 10px;
}
.book-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
  padding: 0 15px;
  background: #ffffff;
  border: 1px solid #ddd;
}

/* ===============================
  Amazon一覧ページ book-accordion 最終安定版
=============================== */

.book-accordion {
  max-width: 800px;
  margin: 50px auto;
}

/* ▼ ボタン基本 */
.book-accordion-btn {
  position: relative;
  width: 100%;
  padding: 18px 20px;
  background: #f5f5f5;
  border: none;
  text-align: left;
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  border-radius: 10px;
  margin-top: 12px;
  transition: all .25s ease;
}

/* ▼ 閉じている時のホバー */
.book-accordion-btn:not(.active):hover {
  background: #e9ecef;
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0,0,0,0.08);
}

/* ▼ 開いている時 */
.book-accordion-btn.active {
  background: #e2e8f0;
}

/* ▼ ＋ − アイコン */
.book-accordion-btn::after {
  content: "+";
  position: absolute;
  right: 20px;
  font-size: 18px;
  transition: transform .25s ease;
}

.book-accordion-btn.active::after {
  content: "−";
}
/* 開いているときだけ余白を付ける */
.book-accordion-btn.active + .book-accordion-content {
  opacity: 1;
  transform: translateY(0);
  padding: 20px 15px;
}

/* ▼ コンテンツ */
.book-accordion-content {
  max-height: 0;
  overflow: hidden;
  box-sizing: border-box;
  opacity: 0;
  transform: translateY(-4px);
	
  transition:
  max-height 0.5s cubic-bezier(.4,0,.2,1),
  opacity 0.3s ease,
  transform 0.3s ease;transition: max-height 0.4s ease;

  padding: 0 15px;
  background: #ffffff;
  border: 1px solid #ddd;
  border-radius: 0 0 10px 10px;
}
/* =========================================
   Amazon CTA Button（教育書籍用）
   class="book-cta-btn"
========================================= */

.book-cta-btn {
  display: block;
  width: 100%;
  text-align: center;
  padding: 14px 20px;
  margin: 16px 0;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-decoration: none;
  border-radius: 8px;
  background: linear-gradient(135deg, #ff9900, #ff7a00);
  color: #ffffff !important;
  box-shadow: 0 4px 10px rgba(0,0,0,0.12);
  transition: all 0.3s ease;
}

/* hover */
.book-cta-btn:hover {
  background: linear-gradient(135deg, #ff7a00, #ff9900);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.18);
  text-decoration: none;
  color: #ffffff !important;
}

/* active（押したとき） */
.book-cta-btn:active {
  transform: translateY(0);
  box-shadow: 0 3px 8px rgba(0,0,0,0.15);
}

/* スマホ最適化 */
@media screen and (max-width: 600px) {
  .book-cta-btn {
    font-size: 15px;
    padding: 12px 16px;
  }
}