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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/* --- Cocoon目次 修正版（中央寄せ・文字くっきり） --- */

/* 目次全体のボックス */
.toc {
  /* 背景を透過 */
  background-color: transparent !important;

  /* 中央寄せ（ボックス自体を画面中央へ） */
  margin: 2em auto !important;
  /* ボックス内の文字も中央寄せ */
  text-align: center;
  /* 横幅をコンテンツに合わせる（広がりすぎないようにする） */
  display: table; 

  /* ネオンカラーの枠線設定（少し輝きを抑制） */
  border: 2px solid #0ff;
  box-shadow: 0 0 4px #0ff,
              inset 0 0 4px #0ff;
  
  border-radius: 8px;
  padding: 20px;
}

/* 目次リストの調整 */
.toc ul, .toc ol {
    /* リストの中身も中央寄せを徹底 */
    text-align: center;
    padding-left: 0; /* 左の余白を消して真ん中に */
    list-style-position: inside; /* 数字や点を内側に入れてズレを防ぐ */
}

/* 「目次」というタイトル文字 */
.toc-title {
  color: #007bff !important;
  /* 発光を半径1pxに抑えてくっきりさせる */
  text-shadow: 0 0 1px #00ffff;
  border-bottom: none;
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom: 10px;
}

/* 目次のリンク文字 */
.toc a {
  color: #007bff !important;
  /* 発光をほぼ無くし、ほんの僅かな縁取り程度にする */
  text-shadow: 0 0 1px #007bff; 
  text-decoration: none;
  transition: all 0.3s ease;
  font-weight: 600; /* 文字を太くして視認性を高める */
}

/* リンクにマウスを乗せた時の効果 */
.toc a:hover {
  color: #0ff !important;
  /* ホバー時だけ少し強く光らせる */
  text-shadow: 0 0 5px #0ff;
}

/* 数字や・の色 */
.toc ul li,
.toc ol li {
    color: #007bff;
    /* リストマークのスタイル調整（中央寄せで見栄えが悪くならないよう） */
    list-style: none; /* いったん点や数字を消す（中央寄せの場合その方が綺麗です） */
}

/* もし数字（1. 2. 3...）を表示させたい場合は以下を有効化してください */
/* .toc ol li { list-style: decimal inside; } 
*/

/* --- カスタマイズ終了 --- */
/* ====================================
   【RPGモード限定】執筆プロンプト用スタイル
   ※ .special-rpg-body があるページでのみ有効
   ==================================== */

/* --- 共通ランクボックス（ティア） --- */
body.special-rpg-body .sf-rank-box {
    margin: 2.5em 0;
    padding: 20px;
    background: var(--dq-window-bg, rgba(0, 20, 60, 0.95)); /* 変数がなければデフォルト値 */
    border: 2px solid var(--dq-border, #fcebb6);
    border-left-width: 8px;
    color: #fff;
    box-shadow: 0 4px 10px rgba(0,0,0,0.5);
    position: relative;
    border-radius: 4px;
    /* フォント強制リセット（念の為） */
    font-family: 'Noto Sans JP', sans-serif;
}

/* クラスごとの色分け */
body.special-rpg-body .sf-rank-box.legendary { border-left-color: #e74c3c; /* 赤 */ }
body.special-rpg-body .sf-rank-box.epic      { border-left-color: #27ae60; /* 緑 */ }
body.special-rpg-body .sf-rank-box.rare      { border-left-color: #3498db; /* 青 */ }

/* タイトル装飾 */
body.special-rpg-body .sf-rank-box::before {
    display: block;
    font-family: 'DotGothic16', sans-serif; /* 見出しだけドット絵フォント */
    font-size: 1.1rem;
    font-weight: bold;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px dashed rgba(255,255,255,0.3);
}

/* ラベル文字の指定 */
body.special-rpg-body .sf-rank-box.legendary::before { content: "🔥 Class: LEGENDARY (ハイエンド)"; color: #ff6b6b; }
body.special-rpg-body .sf-rank-box.epic::before      { content: "⚖️ Class: EPIC (スタンダード)"; color: #2ecc71; }
body.special-rpg-body .sf-rank-box.rare::before      { content: "💎 Class: RARE (エントリー)"; color: #5dade2; }


/* --- 🏆 MVP GEAR（本日の特級装備） --- */
body.special-rpg-body .sf-mvp-card {
    margin: 4em 0;
    padding: 30px 20px;
    text-align: center;
    border: 4px double #ffd700;
    background: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(60,40,0,0.8));
    position: relative;
    box-shadow: 0 0 15px rgba(255, 215, 0, 0.3);
}

body.special-rpg-body .sf-mvp-title {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    background: #ffd700;
    color: #000;
    font-family: 'DotGothic16', sans-serif;
    font-weight: bold;
    padding: 5px 20px;
    border-radius: 20px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.5);
    font-size: 1.1rem;
    white-space: nowrap;
}

body.special-rpg-body .sf-mvp-card strong {
    display: block;
    font-size: 1.4rem;
    color: #ffeb3b;
    margin: 10px 0;
    text-shadow: 0 0 5px rgba(255, 235, 59, 0.5);
}


/* --- ⚔️ QUEST CLEAR（読了称賛） --- */
body.special-rpg-body .sf-quest-clear {
    margin-top: 60px;
    padding: 40px 20px;
    background: #000;
    border: 2px solid #fff;
    outline: 2px solid #000;
    text-align: center;
    font-family: 'DotGothic16', sans-serif;
    color: #fff;
    box-shadow: 0 10px 20px rgba(0,0,0,0.8);
}

body.special-rpg-body .sf-qc-title {
    display: block;
    font-size: 2rem;
    color: #f1c40f;
    letter-spacing: 0.1em;
    text-shadow: 2px 2px 0 #c0392b;
    margin-bottom: 20px;
    animation: pulse 2s infinite;
}

body.special-rpg-body .sf-qc-badge {
    display: inline-block;
    font-size: 1.3rem;
    color: #00e5ff;
    border-bottom: 2px solid #00e5ff;
    padding: 0 10px;
    margin: 10px 0 20px;
}

/* 拠点へ戻るボタン */
body.special-rpg-body .sf-btn-home {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 30px;
    background: transparent;
    border: 2px solid #fff;
    color: #fff;
    text-decoration: none;
    transition: 0.2s;
}
body.special-rpg-body .sf-btn-home:hover {
    background: #fff;
    color: #000;
    transform: translateY(-2px);
}

/* アフィリエイト用コンテナ */
body.special-rpg-body .sf-aff-container {
    margin: 20px 0;
    text-align: center;
}

/* アニメーション（共通なのでスコープ不要だが念の為） */
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}
/* ===================================================
   メインコンテンツの余白調整（スマホで見やすくする）
   =================================================== */

/* PC・タブレット（画面幅が広い時） */
.rpg-main-content { 
    flex: 1; 
    width: 100%; 
    max-width: 940px; 
    margin: 0 auto; 
    
    /* PCでは適度な余白を持たせる */
    padding: 40px 20px; 
    
    position: relative; 
    z-index: 10; 
    box-sizing: border-box; 
    min-height: 1800px; 
}

/* スマホ（画面幅が768px以下の時） */
@media screen and (max-width: 768px) {
    .rpg-main-content {
        /* ★ここでスマホの横幅制限を解除！ */
        padding: 0 !important; /* 余白をゼロにする */
        max-width: 100% !important;
        width: 100% !important;
    }

    /* 記事内の文章には最低限の余白を入れる（画面端に文字がくっつかないように） */
    .rpg-main-content p,
    .rpg-main-content h2,
    .rpg-main-content h3,
    .rpg-main-content ul,
    .rpg-main-content ol {
        padding-left: 16px;
        padding-right: 16px;
    }
    
    /* 画像やランキングの枠などは余白なし（画面いっぱい）で表示 */
    .rpg-main-content .ranking-box,
    .rpg-main-content .tier-table {
        padding-left: 0;
        padding-right: 0;
    }
}

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

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

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