/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 24 2026 | 02:21:31 */
            /* --- 基本設定 & 変数 --- */
            #hoiku-diag-root {
                font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
                box-sizing: border-box;
                line-height: 1.6;
                color: #444;
            }
            #hoiku-diag-root *, 
            #hoiku-diag-root *::before, 
            #hoiku-diag-root *::after {
                box-sizing: border-box;
            }
			a { text-decoration: none; }

            /* --- オープナー（開くボタン）スタイル --- */
            #hoiku-diag-opener {
                display: block;
                width: 100%;
                max-width: 600px;
                margin: 0 auto;
                padding: 20px;
                background: linear-gradient(135deg, #ff8066, #ffad60);
                color: #fff;
                border-radius: 12px;
                cursor: pointer;
                box-shadow: 0 4px 10px rgba(0,0,0,0.15);
                transition: transform 0.2s, opacity 0.3s;
                text-align: center;
                position: relative;
            }
            #hoiku-diag-opener:hover {
                transform: translateY(-2px);
                opacity: 0.95;
                box-shadow: 0 6px 15px rgba(0,0,0,0.2);
            }
            .hoiku-diag-opener-sub {
                font-size: 12px;
                background: #fff;
                color: #ff8066;
                padding: 2px 10px;
                border-radius: 20px;
                font-weight: bold;
                display: inline-block;
                margin-bottom: 8px;
            }
            h2.hoiku-diag-opener-title {
                font-size: 18px;
                font-weight: bold;
                margin: 5px 0 10px 0;
                padding: 0;
                border: none;
                background: none;
                color: #fff;
                line-height: 1.4;
            }
            .hoiku-diag-opener-arrow {
                font-size: 12px;
                color: rgba(255,255,255,0.9);
                display: block;
                margin-top: 5px;
                animation: hoikuDiagFloat 1.5s infinite;
            }
            @keyframes hoikuDiagFloat {
                0%, 100% { transform: translateY(0); }
                50% { transform: translateY(3px); }
            }

            /* --- 本体ラッパー --- */
            #hoiku-diag-wrapper {
                background-color: #fffcf9;
                border: 2px solid #ffdec0;
                padding: 20px;
                max-width: 800px;
                margin: 20px auto 0;
                border-radius: 12px;
                box-shadow: 0 4px 15px rgba(0,0,0,0.05);
            }
            @keyframes hoikuDiagFadeIn {
                from { opacity: 0; transform: translateY(-10px); }
                to { opacity: 1; transform: translateY(0); }
            }
            .hoiku-diag-fade-in {
                animation: hoikuDiagFadeIn 0.5s ease-out forwards;
            }

            /* --- イントロダクション --- */
            .hoiku-diag-intro {
                background: #fff;
                padding: 15px;
                border-radius: 8px;
                margin-bottom: 30px;
                border: 1px dashed #ffad60;
            }
            .hoiku-diag-intro-title {
                font-size: 20px;
                font-weight: bold;
                color: #d35400;
                text-align: center;
                margin-bottom: 15px;
            }
            .hoiku-diag-intro-text {
                font-size: 15px;
                margin: 0;
                color: #555;
            }

            /* --- 質問ブロック --- */
            .hoiku-diag-section {
                margin-bottom: 30px;
            }
            .hoiku-diag-section-title {
                font-size: 18px;
                font-weight: bold;
                color: #fff;
                background: #ffaa64;
                padding: 8px 15px;
                border-radius: 20px;
                display: inline-block;
                margin-bottom: 15px;
            }
            .hoiku-diag-item { margin-bottom: 15px; }
            .hoiku-diag-label {
                display: flex;
                align-items: flex-start;
                cursor: pointer;
                padding: 15px;
                border: 2px solid #eee;
                border-radius: 8px;
                background: #fff;
                transition: all 0.2s;
            }
            .hoiku-diag-label:hover {
                background-color: #fff9f0;
                border-color: #ffad60;
            }
            .hoiku-diag-input { display: none; }
            .hoiku-diag-checkbox-icon {
                width: 22px;
                height: 22px;
                border: 2px solid #ccc;
                border-radius: 4px;
                margin-right: 12px;
                margin-top: 2px;
                flex-shrink: 0;
                background: #fff;
                position: relative;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            .hoiku-diag-input:checked + .hoiku-diag-checkbox-icon {
                background: #ff8066;
                border-color: #ff8066;
            }
            .hoiku-diag-input:checked + .hoiku-diag-checkbox-icon::after {
                content: '✔';
                color: white;
                font-size: 14px;
                font-weight: bold;
            }
            .hoiku-diag-q-text {
                font-size: 16px;
                font-weight: bold;
                color: #444;
            }

            /* --- 診断ボタンエリア（修正） --- */
            .hoiku-diag-btn-area {
                text-align: center;
                margin: 40px 0;
            }
            .hoiku-diag-check-btn {
                background: #ff8066;
                color: white;
                font-size: 18px;
                font-weight: bold;
                padding: 15px 50px;
                border: none;
                border-radius: 50px;
                cursor: pointer;
                box-shadow: 0 4px 6px rgba(0,0,0,0.2);
                transition: transform 0.2s, background 0.2s;
            }
            .hoiku-diag-check-btn:hover {
                transform: translateY(-2px);
                background: #e66a4f;
            }
			/* 相談ボタン用の追加スタイル（少し色を変える場合など） */
            #hoiku-consult-btn {
                background: #4ecdc4; /* CTAエリアの緑系に合わせて目立たせる */
            }
            #hoiku-consult-btn:hover {
                background: #3dbdb4;
            }
            
            /* --- 参照元リンクエリア（追加） --- */
            .hoiku-diag-source-box {
                margin-top: 15px;
                font-size: 11px;
                color: #888;
                text-align: center;
                line-height: 1.5;
            }
            .hoiku-diag-source-title {
                display: inline-block;
                margin-bottom: 5px;
            }
            .hoiku-diag-source-link {
                color: #888;
                text-decoration: underline;
                margin: 0 5px;
                display: inline-block;
            }
            .hoiku-diag-source-link:hover {
                color: #ff8066;
            }

            /* --- 結果表示エリア --- */
            .hoiku-diag-result-container {
                display: none;
                background: #fff;
                border: 4px solid #ccc;
                border-radius: 12px;
                padding: 30px 10px;
                margin-top: 30px;
                overflow: hidden;
            }
            @keyframes hoikuDiagSlideIn {
                from { transform: translateY(20px); opacity: 0; }
                to { transform: translateY(0); opacity: 1; }
            }
            .hoiku-diag-slide-in {
                display: block;
                animation: hoikuDiagSlideIn 0.8s ease-out forwards;
            }

            /* ランク別スタイル */
            .hoiku-rank-s { border-color: #2ecc71; } /* 理想的 */
            .hoiku-rank-s .hoiku-diag-result-header { background: #2ecc71; }
            
            .hoiku-rank-a { border-color: #3498db; } /* 良好だが注意 */
            .hoiku-rank-a .hoiku-diag-result-header { background: #3498db; }

            .hoiku-rank-b { border-color: #f39c12; } /* 黄色信号 */
            .hoiku-rank-b .hoiku-diag-result-header { background: #f39c12; }
            
            .hoiku-rank-c { border-color: #e74c3c; } /* 赤信号 */
            .hoiku-rank-c .hoiku-diag-result-header { background: #e74c3c; }

            .hoiku-diag-result-header {
                color: #fff;
                padding: 15px;
                text-align: center;
                font-size: 20px;
                font-weight: bold;
                border-radius: 6px;
                margin-bottom: 20px;
            }
            .hoiku-diag-result-body {
                font-size: 15px;
                line-height: 1.7;
            }
            .hoiku-diag-catch {
                text-align: center;
                font-weight: bold;
                font-size: 18px;
                margin-bottom: 15px;
                color: #333;
            }

            /* モヤモヤリスト */
            .hoiku-diag-missing-box {
                background: #f8f9fa;
                border: 1px dashed #aaa;
                padding: 20px;
                border-radius: 8px;
                margin-top: 25px;
            }
            .hoiku-diag-missing-title {
                font-weight: bold;
                color: #666;
                border-bottom: 1px solid #ddd;
                padding-bottom: 5px;
                margin-bottom: 10px;
                font-size: 14px;
            }
            .hoiku-diag-missing-list {
                list-style: none;
                padding: 0;
                margin: 0;
            }
            .hoiku-diag-missing-item {
                position: relative;
                padding-left: 25px;
                margin-bottom: 8px;
                font-size: 14px;
                color: #555;
            }
            .hoiku-diag-missing-item::before {
                content: '😢';
                position: absolute;
                left: 0;
                top: 0;
                font-size: 16px;
            }

/* --- 免責アコーディオン用CSS（修正・追加） --- */
            .hoiku-disclaimer-box {
                background-color: #f9f9f9;
                border: 1px solid #e0e0e0;
                border-radius: 8px;
                margin-top: 30px;
                overflow: hidden; /* 角丸のため */
            }
            .hoiku-disclaimer-toggle {
                width: 100%;
                background: #f0f0f0;
                border: none;
                padding: 15px 20px;
                text-align: left;
                cursor: pointer;
                display: flex;
                justify-content: space-between;
                align-items: center;
                transition: background 0.2s;
            }
            .hoiku-disclaimer-toggle:hover {
                background: #e8e8e8;
            }
            .hoiku-disc-title-text {
                font-weight: bold;
                color: #555;
                font-size: 12px;
                display: flex;
                align-items: center;
            }
            .hoiku-disc-title-text::before {
                content: '⚠️';
                margin-right: 6px;
                font-size: 1.1em;
            }
            .hoiku-disc-arrow {
                font-size: 12px;
                color: #888;
                transition: transform 0.3s ease;
            }
            /* アコーディオンが開いた時のクラス */
            .hoiku-disc-open .hoiku-disc-arrow {
                transform: rotate(180deg);
            }
            .hoiku-disclaimer-content {
                padding: 20px;
                display: none; /* 初期状態は非表示 */
                border-top: 1px solid #e0e0e0;
                font-size: 0.85em;
                color: #666;
                line-height: 1.6;
            }
            .hoiku-disclaimer-text {
                margin: 0 0 10px 0;
            }
            .hoiku-disclaimer-text:last-child {
                margin-bottom: 0;
            }

            /* --- CTAセクション --- */
            #hoiku-diag-cta-section {
                margin-top: 40px;
                text-align: center;
                padding-top: 20px;
                border-top: 2px dashed #eee;
                display: none; 
                opacity: 0; 
                transition: opacity 1s;
            }
            .hoiku-diag-cta-visible { opacity: 1 !important; }

            @keyframes hoikuPulseText {
                0% { transform: scale(1); color: #333; }
                50% { transform: scale(1.05); color: #e74c3c; }
                100% { transform: scale(1); color: #333; }
            }
            .hoiku-diag-anim-pulse {
                display: inline-block;
                font-weight: bold;
                font-size: 18px;
                animation: hoikuPulseText 2s infinite ease-in-out;
            }

            .hoiku-diag-cta-btn {
                display: block;
                width: 100%;
                max-width: 400px;
                margin: 15px auto;
                padding: 15px 10px;
                text-decoration: none;
                border-radius: 8px;
                font-weight: bold;
                text-align: center;
                transition: opacity 0.3s, transform 0.2s;
                line-height: 1.4;
            }
            .hoiku-diag-btn-primary {
                background: #ff6b6b;
                color: white;
                font-size: 18px;
                box-shadow: 0 4px 10px rgba(255, 107, 107, 0.3);
            }
            .hoiku-diag-btn-secondary {
                background: #4ecdc4;
                color: white;
                font-size: 16px;
                box-shadow: 0 4px 10px rgba(78, 205, 196, 0.3);
            }
            .hoiku-diag-cta-btn:hover {
                opacity: 0.9;
                color: #fff;
                transform: translateY(-2px);
            }

            @media (max-width: 600px) {
                #hoiku-diag-wrapper { padding: 15px !important; }
                .hoiku-diag-label { padding: 12px; }
                .hoiku-diag-q-text { font-size: 15px; }
                h2.hoiku-diag-opener-title { font-size: 16px; }
				.hoiku-disc-title-text  { font-size: 10px; }
				.hoiku-diag-result-container { padding: 30px 10px;}
				.hoiku-disclaimer-box { padding: 10px 5px;}
				.hoiku-diag-intro { padding: 10px; }
				.hoiku-diag-intro-title { font-size: 18px;}
            }