/* IKIGAI TOWN 補助金ページ完璧化用共通CSS（2026-04-26） */

/* ===== AIサマリーボックス（記事冒頭の30秒要約） ===== */
.ai-summary{margin:18px 0 28px;padding:20px 24px;background:linear-gradient(135deg,#f0f7ff,#e8f4fd);border:1px solid #b8d4f0;border-left:4px solid #2c6fb8;border-radius:10px;}
.ai-summary-title{margin:0 0 10px;font-size:.92rem;font-weight:700;color:#2c6fb8;letter-spacing:.04em;}
.ai-summary-title::before{content:"🤖 ";}
.ai-summary p{margin:0 0 8px;line-height:1.85;color:#1a3a5c;font-size:.95rem;}
.ai-summary ul{margin:8px 0 0;padding-left:20px;line-height:1.95;}
.ai-summary ul li{margin-bottom:6px;color:#1a3a5c;}
.ai-summary ul li strong{color:#2c6fb8;}

/* ===== クイックアンサーリボン（検索意図別ショートカット） ===== */
.quick-answer{margin:14px 0 24px;padding:14px;background:#fff8ee;border-radius:10px;border:1px dashed #c79a3b;}
.quick-answer-title{margin:0 0 10px;font-size:.85rem;color:#7a5d1f;font-weight:700;}
.quick-answer-buttons{display:flex;gap:8px;flex-wrap:wrap;}
.quick-answer-buttons a{flex:0 0 auto;padding:8px 14px;background:#fff;border:1px solid #c79a3b;color:#7a5d1f;text-decoration:none;border-radius:20px;font-size:.86rem;font-weight:600;transition:all .15s ease;}
.quick-answer-buttons a:hover{background:#c79a3b;color:#fff;}

/* ===== 公募スケジュールカウントダウン ===== */
.kobo-countdown{margin:22px 0;padding:20px 24px;background:linear-gradient(135deg,#fff5f5,#ffe8e8);border:1px solid #f0c0c0;border-left:4px solid #d04040;border-radius:10px;}
.kobo-countdown-eyebrow{margin:0 0 6px;font-size:.82rem;color:#a02020;letter-spacing:.06em;font-weight:700;}
.kobo-countdown-title{margin:0 0 12px;font-size:1.05rem;color:#5c1010;font-weight:700;}
.kobo-countdown-display{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.kobo-countdown-num{font-size:2.2rem;font-weight:800;color:#d04040;font-family:Georgia,serif;line-height:1;}
.kobo-countdown-unit{font-size:1rem;color:#7a3030;font-weight:600;}
.kobo-countdown-meta{font-size:.86rem;color:#7a3030;line-height:1.6;}
.kobo-countdown-meta strong{color:#5c1010;}

/* ===== 業種別チェックリスト ===== */
.industry-tabs{margin:24px 0;}
.industry-tab-buttons{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;}
.industry-tab-buttons button{padding:10px 18px;border:1px solid #c9d8c9;background:#fff;color:#555;border-radius:6px;cursor:pointer;font-weight:600;transition:all .15s;}
.industry-tab-buttons button.active{background:#1f6b3d;color:#fff;border-color:#1f6b3d;}
.industry-tab-content{display:none;padding:20px;background:#f5f9f5;border-radius:8px;border:1px solid #c9d8c9;}
.industry-tab-content.active{display:block;}
.industry-tab-content h4{margin:0 0 12px;color:#1f6b3d;}
.industry-tab-content ul{margin:0;padding-left:20px;line-height:1.95;}
.industry-tab-content ul li{margin-bottom:6px;}

/* ===== 「他サイトと違う」自己ピッチセクション ===== */
.unique-pitch{margin:24px 0;padding:24px;background:linear-gradient(135deg,#fffbf0,#fff5e0);border:2px solid #c79a3b;border-radius:14px;}
.unique-pitch-title{margin:0 0 16px;font-size:1.1rem;color:#7a5d1f;font-weight:700;}
.unique-pitch-title::before{content:"✓ ";color:#c79a3b;}
.unique-pitch ol{margin:0;padding-left:24px;line-height:2;}
.unique-pitch ol li{margin-bottom:10px;color:#444;}
.unique-pitch ol li strong{color:#7a5d1f;}

/* ===== 更新履歴・鮮度シグナル ===== */
.freshness-box{margin:18px 0;padding:14px 18px;background:#f9f9f9;border-left:3px solid #888;border-radius:6px;font-size:.88rem;color:#555;}
.freshness-box strong{color:#222;}
.freshness-box .next-review{color:#1f6b3d;font-weight:600;}

/* ===== シミュレーター・診断（共通） ===== */
.hojokin-simulator{margin:24px 0;padding:24px;background:#fbf7ee;border:1px solid #e7d9b3;border-radius:12px;}
.hojokin-sim-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap;}
.hojokin-sim-row label{flex:0 0 160px;font-weight:700;color:#7a5d1f;}
.hojokin-sim-row select,.hojokin-sim-row input{flex:1;min-width:180px;padding:8px 12px;border:1px solid #c9b888;border-radius:6px;background:#fff;font-size:.95rem;}
.hojokin-sim-btn{display:block;margin:18px auto 0;padding:12px 36px;background:#1f6b3d;color:#fff;border:0;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;}
.hojokin-sim-btn:hover{background:#155028;}
.hojokin-sim-result{margin-top:20px;padding:18px;background:#fff;border-radius:8px;border-left:4px solid #1f6b3d;}
.hojokin-sim-result-title{margin:0 0 10px;font-weight:700;color:#1f6b3d;}
.hojokin-sim-result ul{margin:0;padding-left:20px;line-height:2;}
.hojokin-sim-result strong{color:#c79a3b;font-size:1.1rem;}
.hojokin-sim-note{margin:12px 0 0;font-size:.82rem;color:#888;}

.hojokin-quiz{margin:24px 0;padding:24px;background:#f5f9f5;border:1px solid #c9d8c9;border-radius:12px;}
.hojokin-quiz-q{margin-bottom:18px;padding:14px;background:#fff;border-radius:8px;}
.hojokin-quiz-q-title{margin:0 0 10px;font-weight:700;color:#1f6b3d;line-height:1.7;}
.hojokin-quiz-q-buttons{display:flex;gap:8px;flex-wrap:wrap;}
.hojokin-quiz-q-buttons button{flex:1;min-width:90px;padding:10px;border:2px solid #c9d8c9;background:#fff;border-radius:6px;cursor:pointer;font-weight:600;}
.hojokin-quiz-q-buttons button:hover{background:#e8f1e8;}
.hojokin-quiz-q-buttons button.selected{background:#1f6b3d;color:#fff;border-color:#1f6b3d;}
.hojokin-quiz-result{margin-top:20px;padding:24px;background:#fff;border-radius:10px;border-top:4px solid #c79a3b;text-align:center;}
.hojokin-quiz-result-title{margin:0 0 10px;color:#7a5d1f;font-weight:700;}
.hojokin-quiz-result-band{margin:0 0 12px;font-size:1.6rem;font-weight:700;color:#1f6b3d;}
.hojokin-quiz-result-msg{margin:0 0 18px;line-height:1.85;color:#444;}
.hojokin-quiz-result-cta a{display:inline-block;padding:12px 28px;background:#1f6b3d;color:#fff;text-decoration:none;border-radius:6px;font-weight:700;}

/* ===== 表（レスポンシブ＋スマホ最適化） ===== */
.column-table-wrap{margin:18px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.column-table{width:100%;border-collapse:collapse;font-size:.92rem;}
.column-table th,.column-table td{border:1px solid #e7e2d3;padding:8px 12px;text-align:left;line-height:1.6;}
.column-table th{background:#fbf7ee;color:#7a5d1f;font-weight:700;}
.column-table-note{font-size:.82rem;color:#888;margin:6px 0 0;}

@media (max-width:640px){
  .column-table{font-size:.84rem;}
  .column-table th,.column-table td{padding:6px 8px;}
  .column-table-wrap{margin:12px -8px;padding:0 8px;}
}

/* ===== 47都道府県表のアコーディオン化（モバイル対応） ===== */
.pref-table-toggle{margin:14px 0;}
.pref-table-toggle summary{padding:14px 18px;background:#1f6b3d;color:#fff;border-radius:8px;cursor:pointer;font-weight:700;list-style:none;}
.pref-table-toggle summary::after{content:" ▼";font-size:.85rem;}
.pref-table-toggle[open] summary::after{content:" ▲";}
.pref-table-toggle summary::-webkit-details-marker{display:none;}

/* ===== フロー図（CSS実装） ===== */
.process-flow{margin:24px 0;display:flex;flex-direction:column;gap:0;}
.process-flow-step{position:relative;padding:18px 20px 18px 60px;background:#fff;border:1px solid #e7e2d3;border-radius:10px;margin-bottom:14px;}
.process-flow-step:not(:last-child)::after{content:"";position:absolute;left:30px;bottom:-14px;width:2px;height:14px;background:#c79a3b;}
.process-flow-step:not(:last-child)::before{content:"▼";position:absolute;left:24px;bottom:-22px;color:#c79a3b;font-size:.85rem;}
.process-flow-num{position:absolute;left:14px;top:18px;width:34px;height:34px;background:#1f6b3d;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;}
.process-flow-title{margin:0 0 6px;font-weight:700;color:#1f6b3d;}
.process-flow-desc{margin:0;font-size:.9rem;line-height:1.7;color:#555;}
.process-flow-meta{margin:6px 0 0;font-size:.82rem;color:#888;}

/* ===== 印刷スタイル ===== */
@media print{
  .site-header,.site-footer,.floating-cta-bar,.fp-random-cta,.column-author-fp,.unique-pitch,.kobo-countdown,.hojokin-simulator,.hojokin-quiz,.column-author,.quick-answer,.industry-tabs,.btn,nav.header-nav{display:none !important;}
  body{padding:0;font-size:11pt;line-height:1.6;}
  main.column-page{padding:0;}
  .column-container{max-width:100%;}
  h1{font-size:18pt;page-break-after:avoid;}
  h2{font-size:14pt;page-break-after:avoid;border-bottom:1px solid #999;padding-bottom:4px;}
  h3{font-size:12pt;page-break-after:avoid;}
  table{font-size:9pt;}
  .column-table th,.column-table td{padding:4px 6px;}
  a{color:#000;text-decoration:none;}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:8pt;color:#666;}
  .ai-summary,.column-conclusion,.freshness-box{border:1px solid #999;padding:8pt;}
}

/* ===== ソース・出典スタイル ===== */
.sources{margin:2rem 0;padding:1.25rem 1.5rem;background:#f8f9fa;border-left:4px solid #2a7;border-radius:4px;font-size:.92rem;}
.sources h2{margin-top:0;font-size:1.1rem;color:#2a7;}
.sources ul{padding-left:1.2rem;}
.sources li{margin:.4rem 0;line-height:1.6;}
.sources cite{font-style:normal;}
.sources cite a{color:#2a7;text-decoration:underline;font-weight:600;}
.sources-disclaimer{font-size:.82rem;color:#666;margin:.8rem 0 0;}

/* ===== TOC（目次）強化 ===== */
.column-toc{position:relative;}
.column-toc::before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:#c79a3b;border-radius:4px 0 0 4px;}
