:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbfaf5;--surface:#fff;--surface-soft:#f4efe5;--surface-green:#edf5ed;--text:#2b2925;--muted:#6f6a61;--line:#ded7ca;--accent:#4f7c58;--accent-dark:#34573d;--brown:#8a6a45;--warning:#9a5a3d;--shadow:0 12px 30px #42372614}*{box-sizing:border-box}html{color:#2b2925;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth;background:#fbfaf5}body{color:#2b2925;background:#fbfaf5;margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}a:hover{color:var(--accent-dark)}img,svg{max-width:100%}.site-header{border-bottom:1px solid var(--line);background:linear-gradient(#fffdf8 0%,#f3efe4 100%)}.header-inner,.nav-inner,.site-main,.footer-inner{width:min(1120px,100% - 32px);margin:0 auto}.header-inner{grid-template-columns:1fr auto;align-items:center;gap:24px;padding:26px 0 22px;display:grid}.brand{align-items:center;gap:16px;display:flex}.brand-mark{border:2px solid var(--accent);width:68px;height:68px;box-shadow:var(--shadow);background:#fffaf0;border-radius:16px;place-items:center;display:grid}.brand-mark svg{width:48px;height:48px}.brand-title{letter-spacing:0;margin:0;font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.25}.brand-copy{color:var(--muted);margin:6px 0 0;font-size:.96rem}.header-note{border:1px solid var(--line);max-width:380px;color:var(--muted);background:#ffffffb8;border-radius:8px;padding:12px 14px;font-size:.9rem}.global-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fffdf8}.nav-inner{flex-wrap:wrap;align-items:stretch;gap:0;padding:0;display:flex}.nav-inner a{color:#3a352f;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:58px;padding:10px 12px;font-weight:700;transition:background-color .2s,color .2s;display:inline-flex;position:relative}.nav-inner .nav-label-ja{white-space:nowrap;font-size:.94rem;line-height:1.25}.nav-inner .nav-label-en{color:var(--muted);letter-spacing:.12em;margin-top:4px;font-size:.68rem;font-weight:500}.nav-inner a:not(:last-child):after{content:"";background-color:#ded7ca7a;width:1px;height:50%;position:absolute;top:25%;right:0}.nav-inner a:hover{background:var(--surface-green)}.nav-inner a.active{color:var(--accent-dark)}.nav-inner a:before{content:"";background-color:var(--accent);transform-origin:50%;width:100%;height:3px;transition:transform .22s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-inner a.active:before,.nav-inner a:hover:before{transform:scaleX(1)}.site-main{padding:32px 0 44px}.content-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:28px;display:grid}.main-column,.sidebar-card,.page-section,.article-card,.notice-box,.diagnosis-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.main-column{padding:clamp(22px,4vw,36px)}.sidebar{gap:16px;display:grid}.sidebar-card{padding:18px}.sidebar-card h2,.sidebar-card h3{margin:0 0 10px;font-size:1rem}.sidebar-card p{color:var(--muted);margin:0 0 12px;font-size:.93rem}.link-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.link-list a{color:var(--accent-dark);border-bottom:1px solid #eee8dd;padding:8px 0;font-weight:700;display:block}.source-list{gap:0}.source-section{border-top:1px solid var(--line);color:var(--muted);margin-top:22px;padding:10px 12px;font-size:.78rem}.source-section h2{color:var(--muted);margin:0 0 6px;font-size:.86rem}.source-section p{margin-bottom:4px}.source-list li{border-bottom:1px solid #eee8dd;gap:2px;padding:3px 0;display:grid}.source-list a{border-bottom:0;padding:0}.source-list span{color:var(--muted);font-size:.72rem}.hero{gap:18px;margin-bottom:28px;display:grid}.family-profile{border:1px solid var(--line);background:#fffdf8;border-radius:8px;gap:16px;margin:0 0 28px;padding:18px;display:grid}.family-profile h2{margin:0 0 6px;font-size:1.25rem}.family-profile p{color:var(--muted);margin-bottom:0}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.family-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.family-card h3{margin:0 0 2px;font-size:1rem}.family-card p{margin:0 0 4px;font-size:.9rem}.family-label{font-weight:700;color:#4a443d!important;margin-top:8px!important}.family-subhead{font-weight:800;color:var(--brown)!important;margin:10px 0 4px!important;font-size:.78rem!important}.service-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.service-tags li{color:#4a443d;background:#fbfaf5;border:1px solid #d7e5d7;border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}.device-label{background:var(--surface-green);border-radius:999px;width:fit-content;padding:2px 8px;font-weight:800;display:inline-flex;color:var(--accent-dark)!important}.family-face{background:#f6e7c8;border:2px solid #5b5144;border-radius:46% 54% 48% 52%;width:52px;height:52px;position:relative;transform:rotate(-2deg)}.family-face:before,.family-face:after{content:"";background:#2b2925;border-radius:50%;width:5px;height:5px;position:absolute;top:21px}.family-face:before{left:16px}.family-face:after{right:16px}.family-face span{border-bottom:2px solid #2b2925;border-radius:0 0 999px 999px;width:15px;height:7px;position:absolute;bottom:13px;left:18px}.family-face.father{background:#e6efe9}.family-face.mother{background:#f7e8d5}.family-face.older{background:#f3e3eb}.family-face.younger{background:#e7edf8}.eyebrow{background:var(--surface-green);width:fit-content;color:var(--accent-dark);border-radius:999px;padding:4px 10px;font-size:.86rem;font-weight:700;display:inline-flex}h1,h2,h3{letter-spacing:0;line-height:1.45}h1{margin:0;font-size:clamp(1.5rem,3.5vw,2.1rem)}h2{margin:34px 0 14px;font-size:clamp(1.25rem,2.6vw,1.65rem)}h3{margin:24px 0 10px;font-size:1.08rem}p{margin:0 0 1.4rem}article p,article li,.notice-box p{white-space:pre-line}.lead{color:#4a443d;margin-bottom:1.5rem;font-size:1.05rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbfaf5;--surface:#fff;--surface-soft:#f4efe5;--surface-green:#edf5ed;--text:#2b2925;--muted:#6f6a61;--line:#ded7ca;--accent:#4f7c58;--accent-dark:#34573d;--brown:#8a6a45;--warning:#9a5a3d;--shadow:0 12px 30px #42372614}html,body{color:#2b2925;background:#fbfaf5}.site-header{color:#2b2925;background:linear-gradient(#fffdf8 0%,#f3efe4 100%)}.global-nav,.main-column,.sidebar-card,.page-section,.article-card,.notice-box,.diagnosis-panel,.header-note{color:#2b2925;background-color:#fff}.global-nav{background-color:#fffdf8}.brand-copy,.header-note,.lead,.sidebar-card p,.article-card p{color:#4a443d}.nav-inner a,.button-secondary,h1,h2,h3,p,li,td,th{color:#2b2925}.link-list a,.footer-inner a{color:inherit}}.button-row{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.button,.button-secondary{border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:800;line-height:1.35;display:inline-flex}.button{background:var(--accent);color:#fff}.button:hover{background:var(--accent-dark);color:#fff}.button-secondary{border:1px solid var(--line);color:var(--accent-dark);background:#fffaf0}.category-grid,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.page-section{margin-top:20px;padding:22px}.page-section-title{margin:0 0 36px;font-size:clamp(1.1rem,2.2vw,1.35rem);line-height:1.45}.page-section h2:first-child{margin-top:0}.article-card{flex-direction:column;height:100%;padding:0;display:flex;overflow:hidden}.article-card h2,.article-card h3{margin:0 0 8px;font-size:1.08rem}.article-card p{color:var(--muted);flex-grow:1;margin-bottom:12px;font-size:.94rem}.article-card-footer{margin-top:auto;padding-top:10px}.read-more-link{color:var(--brown);align-items:center;gap:4px;font-size:.88rem;font-weight:700;text-decoration:none;transition:color .2s;display:inline-flex}.read-more-link:hover{text-decoration:underline}.read-more-link span{transition:transform .2s;display:inline-block}.read-more-link:hover span{transform:translate(4px)}.meta{color:var(--muted);flex-wrap:wrap;gap:8px;margin:0 0 14px;font-size:.88rem;display:flex}.tag{background:var(--surface-soft);width:fit-content;color:var(--brown);border-radius:999px;padding:3px 9px;font-size:.82rem;font-weight:700;display:inline-flex}.tag.budget-basics{color:#8a6a45;background:#f4efe5}.tag.food-shopping{color:#c67a00;background:#fdf5e6}.tag.fixed-costs{color:#2b5c8f;background:#eef4f8}.tag.utilities{color:#007a78;background:#e6f5f5}.tag.life-stages{color:#8f3d68;background:#f8eff4}.table-wrap,.mini-table-wrap{border:1px solid var(--line);-webkit-overflow-scrolling:touch;border-radius:8px;margin:20px 0;overflow-x:auto}table{border-collapse:collapse;table-layout:fixed;background:#fff;width:100%;min-width:1080px}caption{text-align:left;color:var(--accent-dark);background:var(--surface-green);padding:12px;font-weight:800}th,td{border-top:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:12px}th{background:#fbf8ef}.sort-button{color:#2b2925;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-weight:800;display:inline-flex}.mini-table-wrap{border:1px solid var(--line);-webkit-overflow-scrolling:touch;border-radius:8px;margin:16px 0 24px;overflow-x:auto}.mini-table{table-layout:fixed;min-width:760px;font-size:.94rem}.mini-table caption,.mini-table th,.mini-table td{padding:10px 12px}.mobile-table-cards{display:none}.mobile-table-caption{color:var(--accent-dark);margin:18px 0 10px;font-weight:800}.mobile-sort-controls{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.sort-chip{border:1px solid var(--line);color:#34573d;min-height:38px;font:inherit;background:#fffdf8;border-radius:999px;padding:8px 10px;font-size:.88rem;font-weight:800}.sort-chip.active{background:var(--surface-green);border-color:#b7d0b8}.mobile-row-card{border:1px solid var(--line);background:#fffdf8;border-radius:8px;margin:0 0 12px;padding:14px}.mobile-row-card div{border-bottom:1px solid #eee8dd;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px 0;display:grid}.mobile-row-card div:last-child{border-bottom:0}.mobile-row-card dt{color:var(--brown);font-weight:800}.mobile-row-card dd{margin:0}.action-section{background:linear-gradient(145deg,#fff,#fffdf8);border:1px solid #ffde99;border-radius:12px;margin:40px 0;padding:28px;box-shadow:0 4px 16px #ff980014}.action-section h2{color:#a85a00;border-bottom:none;align-items:center;gap:12px;margin:0 0 24px;padding-bottom:0;font-size:1.4rem;display:flex}.action-badge{color:#fff;background:linear-gradient(135deg,#ff9800,#f57c00);border-radius:24px;padding:6px 14px;font-size:1.05rem;font-weight:900;display:inline-block;box-shadow:0 2px 8px #ff98004d}.checklist{gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.checklist li{border:1px solid var(--line);background:#fffdf8;border-radius:8px;padding:12px 14px 12px 46px;position:relative}.checklist li:before{content:"✓";color:#4f7c58;text-align:center;background:#edf5ed;border:2px solid #4f7c58;border-radius:45% 55% 48% 52%;width:20px;height:20px;font-family:Comic Sans MS,Hiragino Maru Gothic ProN,cursive;font-size:.95rem;font-weight:800;line-height:18px;position:absolute;top:50%;left:16px;transform:translateY(-50%)rotate(-8deg)}.notice-box{background:#fffaf0;margin:24px 0 0;padding:18px}.notice-box strong{color:var(--warning)}.home-note-title{align-items:center;gap:10px;display:inline-flex}.home-note-title span{background:#edf5ed;border:2px solid #8a6a45;border-top:0;border-radius:4px 4px 7px 7px;width:30px;height:26px;display:inline-block;position:relative;transform:rotate(-1deg)}.home-note-title span:before{content:"";background:#f6e7c8;border-top:2px solid #8a6a45;border-left:2px solid #8a6a45;border-radius:3px;width:20px;height:20px;position:absolute;top:-12px;left:3px;transform:rotate(45deg)}.home-note-title span:after{content:"";background:#fffdf8;border:2px solid #8a6a45;border-bottom:0;border-radius:5px 5px 0 0;width:8px;height:12px;position:absolute;bottom:0;left:11px}.diagnosis-panel{margin-top:18px;padding:20px}.contact-hero{margin-bottom:22px}.contact-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.contact-guide article{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf8;border-radius:8px;padding:18px}.contact-guide h2{margin:0 0 10px;font-size:1.08rem}.contact-guide ul{gap:8px;margin:0;padding-left:1.2em;display:grid}.contact-guide p{color:#4a443d;margin:0}.contact-guide a{color:var(--accent-dark);text-underline-offset:3px;font-weight:800;text-decoration:underline}.contact-form-section>p{color:#4a443d}.contact-note{border-left:4px solid var(--accent);color:var(--muted);background:#fffdf8;margin-top:16px;padding:12px 14px;font-size:.92rem}.diagnosis-form{gap:18px;display:grid}.diagnosis-tool{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(#fffdf8 0%,#fff 100%);border-radius:8px;gap:22px;margin-top:18px;padding:clamp(18px,3vw,26px);display:grid}.diagnosis-tool-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.diagnosis-step-label,.diagnosis-result-label{background:var(--surface-green);width:fit-content;color:var(--accent-dark);border-radius:999px;margin-bottom:8px;padding:5px 12px;font-size:.86rem;font-weight:800;display:inline-flex}.diagnosis-tool h2,.diagnosis-result h2{margin:0;font-size:clamp(1.45rem,3vw,2rem);line-height:1.35}.diagnosis-tool-head p,.diagnosis-question p,.diagnosis-result p,.diagnosis-result-note{color:#4a443d;margin:8px 0 0}.diagnosis-progress{border:1px solid var(--line);background:var(--surface-green);min-width:78px;color:var(--accent-dark);text-align:center;border-radius:8px;padding:12px 14px;font-weight:800}.diagnosis-progress span:first-child{font-size:1.8rem;line-height:1}.diagnosis-questions{gap:14px;display:grid}.diagnosis-question{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;margin:0;padding:16px}.diagnosis-question legend{align-items:center;gap:10px;padding:0;font-size:1.05rem;font-weight:800;line-height:1.5;display:flex}.diagnosis-question legend span{width:30px;height:30px;color:var(--brown);background:#f6e7c8;border-radius:999px;flex:none;place-items:center;font-size:.9rem;display:inline-grid}.diagnosis-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.diagnosis-options label{border:1px solid var(--line);min-height:52px;color:var(--text);cursor:pointer;background:#fffdf8;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-weight:700;transition:border-color .2s,background-color .2s,box-shadow .2s;display:flex;position:relative}.diagnosis-options label:hover,.diagnosis-options label.is-selected{background:var(--surface-green);border-color:#9bbd9f;box-shadow:0 8px 20px #42372614}.diagnosis-options input{width:18px;height:18px;accent-color:var(--accent);flex:none}.diagnosis-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.diagnosis-actions .button:disabled{cursor:not-allowed;opacity:.48}.diagnosis-helper{color:var(--muted);margin:-4px 0 0;font-size:.94rem}.diagnosis-helper.is-alert{color:var(--warning);background:#fff7f2;border:1px solid #d9b6a4;border-radius:8px;padding:10px 12px;font-weight:700}.diagnosis-result{background:#f7fbf6;border:1px solid #c7d9c9;border-radius:8px;gap:18px;padding:clamp(18px,3vw,24px);display:grid}.diagnosis-result-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;display:grid}.diagnosis-result-grid>div,.diagnosis-article-list{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.diagnosis-result h3,.diagnosis-article-list h3{color:var(--accent-dark);margin:0 0 10px;font-size:1.05rem}.diagnosis-result ul{gap:8px;margin:0;padding-left:1.2em;display:grid}.diagnosis-article-list{gap:10px;display:grid}.diagnosis-article-link{border:1px solid var(--line);background:#fffdf8;border-radius:8px;gap:4px;padding:12px 14px;transition:border-color .2s,background-color .2s;display:grid}.diagnosis-article-link:hover{background:var(--surface-green);border-color:#9bbd9f}.diagnosis-article-link span{color:var(--accent-dark);text-underline-offset:3px;font-weight:800;text-decoration:underline}.diagnosis-article-link small{color:var(--muted);font-size:.9rem;line-height:1.6}.diagnosis-result-note{padding-top:2px;font-weight:700}.field{gap:8px;display:grid}.field label,.field legend{font-weight:800}.radio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.radio-grid label,select,textarea,input{border:1px solid var(--line);width:100%;color:var(--text);font:inherit;background:#fff;border-radius:6px}.radio-grid label{padding:10px 12px}select,textarea,input{padding:11px 12px}textarea{resize:vertical;min-height:150px}.form-status{border:1px solid var(--line);color:var(--text);background:#fffaf0;border-radius:6px;margin:16px 0 0;padding:14px 16px;font-size:.95rem;line-height:1.7}.form-status.is-success{color:var(--green-dark);background:#eff7ef;border-color:#487e5652}.form-status.is-error{color:#8d4f39;background:#fff4ed;border-color:#a45b3f52}.site-footer{border-top:1px solid var(--line);color:#f7f2e8;background:#312c25}.footer-inner{grid-template-columns:1.2fr 1fr;gap:28px;padding:32px 0;display:grid}.footer-inner h2,.footer-inner p,.footer-inner a{color:#f7f2e8}.footer-inner h2{margin-top:0}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding:0;list-style:none;display:grid}.copyright{color:#d8cdbb;margin:18px 0 0;font-size:.88rem}@media (max-width:860px){.header-inner,.content-layout,.footer-inner{grid-template-columns:1fr}.header-note{max-width:none}.sidebar{order:2}}@media (max-width:620px){.header-inner,.nav-inner,.site-main,.footer-inner{width:min(100% - 22px,1120px)}.brand{align-items:flex-start}.brand-mark{border-radius:12px;flex:none;width:54px;height:54px}.brand-mark svg{width:38px;height:38px}.main-column{padding:18px}.category-grid,.article-grid,.family-grid,.contact-guide,.diagnosis-tool-head,.diagnosis-options,.diagnosis-result-grid,.radio-grid,.footer-links{grid-template-columns:1fr}.diagnosis-tool{padding:16px}.diagnosis-progress{width:100%;min-width:0}.diagnosis-question{padding:14px}.diagnosis-question legend{align-items:flex-start}.diagnosis-options label{min-height:48px;padding:11px 12px}.mobile-table-cards{display:block}.desktop-table{display:none}.mobile-row-card div{grid-template-columns:1fr;gap:2px}.nav-inner a{border-radius:6px;flex:calc(50% - 4px);justify-content:center;min-height:44px;margin:2px;padding:8px 10px}.nav-inner a:last-child{flex:calc(100% - 4px)}.nav-inner .nav-label-en,.nav-inner a:not(:last-child):after,.nav-inner a:before{display:none}.nav-inner a.active{background:var(--surface-green);color:var(--accent-dark)}.button,.button-secondary{width:100%}}.main-column mark{color:inherit;background:linear-gradient(#0000 60%,#fff2a3 60%);padding:0 2px;font-weight:700}.main-column strong{color:var(--text);font-weight:800}.article-list{gap:16px;margin:16px 0 24px;padding-left:24px;display:grid}.article-list li{line-height:1.7}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 #ff980066}70%{box-shadow:0 0 0 8px #ff980000}to{box-shadow:0 0 #ff980000}}.problem-solution-box{background:linear-gradient(145deg,#fff,#f9fdfa);border:1px solid #4caf5033;border-radius:16px;margin:32px 0;padding:24px;animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUpFade;position:relative;overflow:hidden;box-shadow:0 8px 24px #0000000a,0 2px 8px #4caf500f}.problem-solution-box:before{content:"";background:linear-gradient(90deg,#4caf50,#81c784);width:100%;height:5px;position:absolute;top:0;left:0}.problem-title{color:var(--accent-dark);align-items:center;gap:12px;margin-bottom:24px;font-size:1.25rem;font-weight:800;display:flex}.problem-title span{color:#fff;background:linear-gradient(135deg,#4caf50,#388e3c);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.1rem;display:inline-flex;box-shadow:0 2px 6px #4caf504d}.problem-title span:before{content:"?";font-weight:900}.problem-list{margin:0 0 28px;padding:0;list-style:none}.problem-list li{color:var(--brown);margin-bottom:14px;padding-left:36px;font-weight:700;line-height:1.6;transition:transform .2s;position:relative}.problem-list li:hover{transform:translate(4px)}.problem-list li:before{content:"✓";color:#2e7d32;background-color:#e8f5e9;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.9rem;font-weight:900;display:inline-flex;position:absolute;top:1px;left:0}.solution-text{color:var(--text);background:#fff3e066;border:1px solid #ff980033;border-radius:12px;flex-direction:column;gap:12px;margin:0;padding:20px;font-size:1.05rem;font-weight:800;line-height:1.7;transition:background-color .3s;display:flex}.solution-text:hover{background:#fff3e0cc}.solution-badge{color:#fff;background:linear-gradient(135deg,#ff9800,#f57c00);border-radius:20px;align-self:flex-start;padding:6px 14px;font-size:.85rem;font-weight:800;animation:2s infinite pulseGlow;box-shadow:0 2px 8px #ff98004d}.eyecatch-wrap{border:1px solid var(--line);background-color:#fff;border-radius:12px;margin:1.5rem 0 2rem;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 4px 20px #0000000a,0 1px 4px #00000005}.eyecatch-wrap:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000014,0 2px 8px #0000000a}.eyecatch-image{object-fit:cover;width:100%;height:auto;max-height:480px;display:block}.article-image-wrap{flex-direction:column;align-items:center;gap:10px;margin:2rem 0;display:flex}.article-inline-image{border:1px solid var(--line);background-color:#fff;border-radius:12px;width:580px;max-width:100%;height:auto;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 20px #0000000a,0 1px 4px #00000005}.article-inline-image:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000014,0 2px 8px #0000000a}.article-image-caption{color:var(--muted);text-align:center;font-size:.88rem;font-weight:700}.roadmap-container{flex-direction:column;gap:2.5rem;display:flex}.roadmap-category{border-bottom:1px solid var(--line);padding-bottom:2rem}.roadmap-category:last-child{border-bottom:none;padding-bottom:0}.roadmap-category h3{color:var(--text);font-size:1.25rem;margin:0 0 8px!important}.roadmap-category p{color:var(--muted);margin-bottom:16px;font-size:.95rem}.roadmap-list{gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.roadmap-list li{border:1px solid var(--line);border-radius:8px;padding:12px 14px 12px 46px;font-size:.95rem;transition:all .2s;position:relative}.roadmap-list li.completed{background:var(--surface-green);border-color:#b7d0b8}.roadmap-list li.completed:before{content:"✓";color:#4f7c58;text-align:center;background:#edf5ed;border:2px solid #4f7c58;border-radius:45% 55% 48% 52%;width:20px;height:20px;font-family:Comic Sans MS,Hiragino Maru Gothic ProN,cursive;font-size:.95rem;font-weight:800;line-height:18px;position:absolute;top:50%;left:16px;transform:translateY(-50%)rotate(-8deg)}.roadmap-list li.completed a{color:var(--accent-dark);font-weight:700;text-decoration:underline}.roadmap-list li.completed a:hover{text-decoration:none}.roadmap-list li.planned{color:var(--muted);background:#faf9f6;border-style:dashed}.roadmap-list li.planned:before{content:"○";border:2px solid var(--line);width:20px;height:20px;color:var(--muted);text-align:center;background:#fff;border-radius:50%;font-size:.8rem;line-height:18px;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.article-card-eyecatch{aspect-ratio:16/9;border-bottom:1px solid var(--line);background:var(--surface-soft);width:100%;overflow:hidden}.article-card-eyecatch img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.article-card:hover .article-card-eyecatch img{transform:scale(1.04)}.article-card-content{flex-direction:column;flex-grow:1;padding:20px;display:flex}.article-card-content .tag{margin-bottom:12px}.article-card-content h3{font-size:1.15rem;margin:0 0 10px!important}.article-card-content p{color:var(--muted);flex-grow:1;margin-bottom:16px;font-size:.92rem}.family-summary-list{border:1px solid var(--line);background-color:#fffdf8;border-radius:8px;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;padding:20px;display:grid}.family-summary-item{text-align:center;flex-direction:column;align-items:center;padding:4px;display:flex}.family-summary-avatar{width:52px;height:52px;margin-bottom:8px;transform:scale(.85)}.family-summary-name{color:var(--text);margin-bottom:4px;font-size:.95rem;font-weight:800}.family-summary-desc{color:var(--muted);font-size:.76rem;line-height:1.35}@media (max-width:600px){.family-summary-list{grid-template-columns:repeat(2,1fr);gap:12px;padding:14px}}.family-summary-title{color:#4f7c58;border-bottom:1px dashed #e4dcd3;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:12px;font-size:1.05rem;font-weight:800;display:flex}.article-row-list{flex-direction:column;gap:20px;display:flex}.article-row-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:240px 1fr;display:grid;overflow:hidden}.article-row-eyecatch{background:var(--surface-soft);border-right:1px solid var(--line);width:100%;height:100%;min-height:150px;overflow:hidden}.article-row-eyecatch img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.article-row-card:hover .article-row-eyecatch img{transform:scale(1.04)}@media (max-width:600px){.article-row-card{grid-template-columns:1fr}.article-row-eyecatch{border-right:none;border-bottom:1px solid var(--line);aspect-ratio:16/9;height:auto;min-height:auto}.article-row-card .article-card-content{padding:16px}}.keyword-nav-container{border:1px solid var(--line);background-color:#fffdf8;border-radius:8px;margin-top:28px;margin-bottom:28px;padding:24px}.section-title{text-align:center;color:var(--text);margin-top:0;margin-bottom:20px;font-size:1.15rem;font-weight:800}.keyword-nav-list{grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.keyword-nav-item a{border:1px solid var(--line);color:var(--text);background-color:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100%;padding:16px;text-decoration:none;transition:all .25s cubic-bezier(.25,.8,.25,1);display:flex;box-shadow:0 2px 4px #00000005}.keyword-nav-item a:hover{color:var(--accent-dark);background-color:#fcf8ee;border-color:#8a7c6b;transform:translateY(-4px);box-shadow:0 6px 12px #8a7c6b1f}.keyword-nav-icon-wrap{color:#4f7c58;justify-content:center;align-items:center;display:flex}.keyword-nav-icon-wrap svg{width:32px;height:32px;transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}.keyword-nav-item a:hover svg{animation:.6s ease-in-out infinite alternate keywordBounce}.keyword-nav-label{font-size:.92rem;font-weight:700}@keyframes keywordBounce{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@media (max-width:600px){.keyword-nav-container{margin-bottom:24px;padding:16px}.section-title{margin-bottom:14px;font-size:1.05rem}.keyword-nav-list{grid-template-columns:repeat(2,1fr);gap:10px}.keyword-nav-item a{border-radius:8px;flex-direction:row;justify-content:flex-start;gap:8px;padding:10px 14px}.keyword-nav-icon-wrap svg{width:18px;height:18px}.keyword-nav-label{font-size:.82rem}}.operator-intro-section{background:var(--surface-green);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:20px;margin-bottom:28px;padding:24px;display:flex}.operator-intro-avatar{flex:0 0 68px;height:68px}.operator-intro-message h3{color:var(--accent-dark);margin:0 0 8px;font-size:1.1rem;font-weight:800}.operator-intro-message p{color:var(--text);margin:0;font-size:.94rem;line-height:1.7}.operator-profile-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;margin:24px 0;overflow:hidden}.operator-profile-row{border-bottom:1px solid var(--line);grid-template-columns:200px 1fr;display:grid}.operator-profile-row:last-child{border-bottom:none}.profile-label{color:var(--accent-dark);border-right:1px solid var(--line);background:#fbf9f4;align-items:center;padding:16px 20px;font-weight:700;display:flex}.profile-value{color:var(--text);align-items:center;padding:16px 20px;line-height:1.65;display:flex}.operator-contact-value{display:block}.operator-contact-value a{color:var(--accent-dark);text-underline-offset:3px;margin-top:8px;font-weight:800;text-decoration:underline;display:inline-block}@media (max-width:620px){.operator-intro-section{text-align:center;flex-direction:column;align-items:center;padding:20px}.operator-intro-avatar{flex:0 0 68px;margin-bottom:8px}.operator-profile-row{grid-template-columns:1fr}.profile-label{border-bottom:1px solid #ded7ca80;border-right:none;padding:10px 16px;font-size:.9rem}.profile-value{padding:12px 16px;font-size:.94rem}}.faq-page-container{flex-direction:column;gap:32px;margin-top:24px;display:flex}.faq-category{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000005}.faq-category h2{color:var(--accent-dark);border-bottom:2px solid var(--accent-light);align-items:center;gap:8px;margin-bottom:20px;padding-bottom:8px;font-size:1.25rem;display:flex}.faq-details{border-bottom:1px solid #ded7ca80;padding:16px 0}.faq-details:last-child{border-bottom:none;padding-bottom:0}.faq-details:first-of-type{padding-top:0}.faq-summary{color:#3a352f;cursor:pointer;-webkit-user-select:none;user-select:none;padding-right:32px;font-size:1.05rem;font-weight:700;line-height:1.4;list-style:none;position:relative}.faq-summary::-webkit-details-marker{display:none}.faq-summary:after{content:"＋";color:var(--muted);font-size:1.1rem;font-weight:400;transition:transform .2s,color .2s;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.faq-details[open] .faq-summary:after{content:"－";color:var(--accent-dark)}.faq-summary:hover{color:var(--accent-dark)}.faq-answer{color:#4a443d;background:var(--surface-green);border-left:3px solid var(--accent);border-radius:8px;margin-top:12px;padding:16px;font-size:.96rem;line-height:1.6}.faq-answer p{margin-bottom:12px}.faq-answer p:last-child{margin-bottom:0}.faq-link-row{margin-top:12px;font-weight:700;display:inline-block}.faq-link-row a{color:var(--accent-dark);text-decoration:underline;transition:color .2s}.faq-link-row a:hover{color:var(--accent)}
