:root{--bg:#faf6ee;--card:#ffffff;--ink:#3d3a33;--sub:#8a8577;--green:#4a8c5c;--green-soft:#e3f0e6;--orange:#e8964b;--orange-soft:#fdeeda;--line:#ece6d8;--accent:#f3c53d;--red:#a05252}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{height:100%}body{font-family:Hiragino Maru Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;background:#e9e2d2;color:var(--ink)}.phone{width:100%;max-width:480px;margin:0 auto;min-height:100dvh;flex-direction:column;box-shadow:0 0 40px rgba(0,0,0,.12);position:relative}.phone,header.app{background:var(--bg);display:flex}header.app{padding:14px 18px 10px;align-items:center;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line)}.logo{font-weight:700;font-size:17px;color:var(--green)}.kid-chip{background:var(--green-soft);border:1px solid #cfe3d4;border-radius:999px;padding:5px 12px;font-size:12px;color:#2f6b40;white-space:nowrap}main.app-main{flex:1 1;overflow-y:auto;padding:16px 16px 90px}h2.sec{font-size:13px;color:var(--sub);margin:18px 2px 8px;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(60,50,20,.05)}.btn{display:inline-block;border:none;border-radius:12px;padding:12px 16px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit}.btn:disabled{opacity:.5;cursor:default}.btn-green{background:var(--green);color:#fff}.btn-ghost{background:#fff;color:var(--green);border:1.5px solid var(--green)}.btn-wide{width:100%;text-align:center;margin-top:10px}.btn-sub{background:#f0ead9;color:var(--ink);font-weight:600}.today-banner{background:linear-gradient(135deg,#4a8c5c,#6aa876);color:#fff;border:none}.today-banner .tag{font-size:11px;opacity:.85}.today-banner h3{font-size:16px;margin:4px 0 10px}.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.scene-btn{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 4px;text-align:center;cursor:pointer;font-family:inherit;font-size:12px;color:var(--ink);transition:transform .1s}.scene-btn:active{transform:scale(.95)}.scene-btn .emoji{font-size:22px;display:block;margin-bottom:4px}.free-input{display:flex;gap:8px;margin-top:10px}.free-input input{flex:1 1;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font-size:16px;font-family:inherit;background:#fff;color:var(--ink);min-width:0}.free-input input:focus{outline:2px solid var(--green)}.neta-meta{font-size:11px;color:var(--sub)}.neta-title{font-size:18px;font-weight:700;margin:2px 0}.neta-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.step{display:flex;gap:10px;margin:14px 0;align-items:flex-start}.step .num{flex:0 0 26px;height:26px;border-radius:50%;background:var(--orange-soft);color:#b56a1e;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}.step .body{flex:1 1}.step .body b{font-size:12px;color:#b56a1e;display:block;margin-bottom:2px}.step .body p{font-size:14px;line-height:1.65}.serif-say{background:var(--green-soft);border-radius:0 12px 12px 12px;padding:10px 12px;font-size:14px;margin-top:4px;line-height:1.6}.ouyou,.qa,.safety{border-top:1px dashed var(--line);margin-top:12px;padding-top:10px;font-size:12.5px;line-height:1.6}.ouyou b,.qa b,.safety b{font-size:11.5px;color:var(--sub);display:block;margin-bottom:2px}.safety{color:var(--red)}.neta-actions{display:flex;gap:8px;margin-top:4px}.neta-actions .btn{flex:1 1;text-align:center}.loading{text-align:center;padding:40px 0;color:var(--sub);font-size:13px}.dots:after{content:"…";animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.react-row{display:flex;gap:8px;margin:12px 0}.react-btn{flex:1 1;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:14px 4px;font-family:inherit;font-size:12px;cursor:pointer;color:var(--ink)}.react-btn .emoji{font-size:24px;display:block;margin-bottom:4px}.react-btn.sel{border-color:var(--green);background:var(--green-soft)}textarea.memo{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px;font-family:inherit;font-size:16px;min-height:64px;background:#fff;color:var(--ink);resize:none}.log-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.log-item:last-child{border-bottom:none}.log-item .emoji{font-size:20px}.log-item .t{color:var(--sub);font-size:11px}.bar-row{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:12px}.bar-row .label{flex:0 0 84px}.bar-track{flex:1 1;height:10px;background:#f0ead9;border-radius:6px;overflow:hidden}.bar-fill{height:100%;background:var(--green);border-radius:6px}.bar-row .val{flex:0 0 30px;text-align:right;color:var(--sub);font-size:11px}nav.tabbar{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;background:#fff;border-top:1px solid var(--line);display:flex;z-index:10;padding-bottom:env(safe-area-inset-bottom)}nav.tabbar button{flex:1 1;background:none;border:none;padding:9px 0 10px;font-family:inherit;font-size:10px;color:var(--sub);cursor:pointer}nav.tabbar button .icon{font-size:20px;display:block;margin-bottom:2px;filter:grayscale(1);opacity:.55}nav.tabbar button.on{color:var(--green);font-weight:700}nav.tabbar button.on .icon{filter:none;opacity:1}.toast{position:fixed;bottom:76px;left:50%;transform:translateX(-50%);background:#3d3a33;color:#fff;font-size:13px;padding:10px 18px;border-radius:999px;opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap;z-index:20}.toast.show{opacity:.95}.note{font-size:11px;color:var(--sub);text-align:center;margin-top:14px;line-height:1.7}.badge{display:inline-block;font-size:10.5px;background:var(--orange-soft);color:#b56a1e;border-radius:6px;padding:2px 7px;margin:0 4px 4px 0}.field{margin-bottom:12px}.field label{display:block;font-size:12px;color:var(--sub);margin-bottom:4px;font-weight:600}.field input,.field select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font-size:16px;font-family:inherit;background:#fff;color:var(--ink)}.field input:focus{outline:2px solid var(--green)}.err{color:var(--red);font-size:12.5px;margin:8px 0}.hero{text-align:center;padding:36px 8px 8px}.hero .mark{font-size:52px}.hero h1{font-size:22px;color:var(--green);margin:8px 0 6px}.hero p{font-size:13px;color:var(--sub);line-height:1.8}.mode-row{display:flex;gap:8px}.mode-btn{flex:1 1;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:12px 6px;font-family:inherit;font-size:12.5px;cursor:pointer;color:var(--ink);line-height:1.5}.mode-btn.sel{border-color:var(--green);background:var(--green-soft)}.linkline{font-size:12.5px;color:var(--sub);text-align:center;margin-top:12px}.linkline a,.linkline button{color:var(--green);font-weight:700;background:none;border:none;font-family:inherit;font-size:12.5px;cursor:pointer;text-decoration:underline}.lp{background:var(--bg);min-height:100dvh;line-height:1.9}.lp-inner{max-width:760px;margin:0 auto;padding:0 20px}.lp-header{position:-webkit-sticky;position:sticky;top:0;background:rgba(250,246,238,.94);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);z-index:10}.lp-nav{display:flex;align-items:center;justify-content:space-between;padding-top:10px;padding-bottom:10px}.lp-logo{font-weight:700;color:var(--green);font-size:17px}.lp a.btn{text-decoration:none}.lp-hero{padding:56px 0 40px;text-align:center;background:linear-gradient(180deg,#f2ecdc,var(--bg))}.lp-hero h1{font-size:clamp(24px,5.4vw,36px);color:#2f5c3c;line-height:1.5;margin-bottom:18px}.lp-lead{font-size:15.5px;max-width:34em;margin:0 auto}.lp-cta{margin:22px 0 8px}.lp-cta .btn{font-size:15px;padding:14px 26px}.lp-note{font-size:12px;color:var(--sub)}.lp-sec{padding:44px 0}.lp-sec-alt{background:#f4efe3}.lp-sec h2{font-size:21px;color:#2f5c3c;margin-bottom:12px}.lp-sec h3{font-size:15.5px;margin-bottom:6px}.lp-sec p{font-size:14.5px;margin-bottom:10px}.lp-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:12px;gap:12px;margin-top:18px}.lp-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.lp-card p{font-size:13px;margin:0;color:#5a5648}.lp-card-emoji{font-size:26px;margin-bottom:6px}.lp-sample{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin:14px 0}.lp-sample-head{margin-bottom:8px}.lp-sample-scene{display:inline-block;font-size:11.5px;background:var(--green-soft);color:#2f6b40;border-radius:999px;padding:3px 10px;margin-bottom:6px}.lp-sample p{font-size:13.5px;margin-bottom:6px}.lp-sample b{color:#b56a1e;font-size:12px;margin-right:4px}.lp-ouyou{border-top:1px dashed var(--line);padding-top:8px;color:#5a5648}.lp-steps{list-style:none;margin:10px 0}.lp-steps li{font-size:14px}.lp-faq,.lp-steps li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin-bottom:10px}.lp-faq summary{font-weight:700;font-size:14px;cursor:pointer}.lp-faq p{font-size:13.5px;margin:8px 0 2px;color:#5a5648}.lp-last{padding-bottom:64px}.lp-footer{border-top:1px solid var(--line);padding:20px 0 32px;font-size:12.5px;color:var(--sub)}.lp-footer a{color:var(--green)}.adv{margin-top:12px;border-top:1px dashed #d8e6dc;padding-top:10px}.adv-toggle{width:100%;display:flex;align-items:center;gap:8px;background:#f2f8f4;border:1px solid #dceae1;border-radius:10px;padding:10px 12px;font-size:14px;font-weight:700;color:#2f6b47;cursor:pointer}.adv-toggle .adv-lv{margin-left:auto;font-size:11px;font-weight:600;color:#5b7a67;background:#fff;border:1px solid #dceae1;border-radius:999px;padding:2px 8px}.adv-toggle .adv-caret{transition:transform .2s;font-size:12px}.adv-toggle.open .adv-caret{transform:rotate(180deg)}.adv-panel{padding:10px 2px 2px}.adv-text{font-size:14px;line-height:1.85;color:#33413a;margin:6px 0 10px}.adv-terms{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.term-chip{background:#fff;border:1px solid #c9dfd2;border-radius:999px;padding:4px 10px;font-size:12px;color:#2f6b47;cursor:pointer}.term-chip.on{background:#2f6b47;color:#fff;border-color:#2f6b47}.term-def{display:block;margin:6px 0 4px;font-size:13px;line-height:1.8;background:#fffdf3;border:1px solid #f0e6c8;border-radius:8px;padding:8px 10px;color:#4a4433}.adv-practice{background:#fffdf3;border:1px solid #f0e6c8;border-radius:10px;padding:10px 12px}.adv-practice>b{display:block;font-size:13px;color:#8a6d1f;margin-bottom:6px}.practice-item+.practice-item{margin-top:12px;border-top:1px dashed #ece0bd;padding-top:10px}.practice-q{font-size:14px;line-height:1.8;margin:0 0 8px;color:#33413a}.practice-a{font-size:13px;line-height:1.8;margin:0;color:#5a5240;background:#fff;border-radius:8px;padding:8px 10px}.btn-sm{padding:5px 12px;font-size:12px}.ans-label{display:block;font-size:13px;font-weight:700;color:#2f6b47;margin:12px 0 4px}.ans-label span{display:block;font-size:11px;margin-top:2px}.ans-label span,.sec-sub{font-weight:400;color:#7c8a82}.sec-sub{margin-left:8px;font-size:12px}.log-search{width:100%;box-sizing:border-box;padding:9px 12px;font-size:14px;border:1px solid #dceae1;border-radius:10px;margin-bottom:8px}.chip-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.chip{background:#fff;border:1px solid #dceae1;border-radius:999px;padding:5px 12px;font-size:12px;color:#4a5c51;cursor:pointer}.chip.on{background:#4a8c5c;color:#fff;border-color:#4a8c5c}.log-body{flex:1 1;min-width:0}.log-scene{font-size:12px;color:#7c8a82;margin-left:4px}.log-answer{margin:4px 0 2px;font-size:14px;line-height:1.6;color:#2f6b47;background:#f2f8f4;border-radius:8px;padding:6px 10px}.shared-mark{color:#4a8c5c}.share-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:0 2px;align-self:flex-start;line-height:1}.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:#fff;border-radius:16px;padding:16px;width:100%;max-width:380px;max-height:90vh;overflow-y:auto}.modal-title{margin:0 0 12px;font-size:15px}.share-card{background:linear-gradient(150deg,#4a8c5c,#2f6b47);color:#fff;border-radius:14px;padding:20px 18px}.share-label{font-size:10px;letter-spacing:.18em;opacity:.8;margin-bottom:10px}.share-q{font-size:14px;line-height:1.7;margin:0 0 12px;opacity:.95}.share-a{font-size:19px;line-height:1.6;font-weight:700;margin:0 0 16px}.share-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;opacity:.9}.share-brand{font-weight:700}.privacy-note{text-align:left;margin:10px 0 12px;line-height:1.7}.share-actions{display:flex;gap:8px;margin-bottom:8px}.share-actions .btn{flex:1 1}.btn-dark{background:#1c1c1e;color:#fff;border:none}.crumb{font-size:12px;color:#7c8a82;margin-bottom:12px}.crumb a{color:#4a8c5c;text-decoration:none}.crumb a:hover{text-decoration:underline}.lp-adv{margin:14px 0 0;padding:14px 16px;background:#f2f8f4;border:1px solid #dceae1;border-radius:10px}.lp-adv-head{font-size:13px;font-weight:700;color:#2f6b47;margin:0 0 8px}.lp-adv-head span{font-weight:400;font-size:11px;color:#5b7a67;background:#fff;border:1px solid #dceae1;border-radius:999px;padding:2px 8px;margin-left:6px}.lp-adv p{font-size:14px;line-height:1.9;margin:0}.lp-term{margin-top:8px!important;font-size:13px!important;color:#4a5c51}.lp-practice{margin-top:12px;padding:14px 16px;background:#fffdf3;border:1px solid #f0e6c8;border-radius:10px}.lp-practice-head{font-size:13px;font-weight:700;color:#8a6d1f;margin:0 0 8px}.lp-practice .q{font-size:14px;line-height:1.8;margin:0 0 8px}.lp-practice details summary,.tane-practice details summary{cursor:pointer;font-size:13px;color:#8a6d1f;font-weight:600}.lp-practice details p,.tane-practice details p{font-size:13px;line-height:1.9;margin:8px 0 0;background:#fff;border-radius:8px;padding:10px 12px}.lp-sample-link{margin-top:12px!important;font-size:14px!important}.lp-sample-link a{color:#4a8c5c;font-weight:600;text-decoration:none}.lp-sample-link a:hover{text-decoration:underline}.tane-list{list-style:none;padding:0;margin:12px 0 28px}.tane-list li{margin-bottom:8px}.tane-list a{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:inherit;background:#fff;border:1px solid #e3ece6;border-radius:10px;padding:12px 14px}.tane-list a:hover{border-color:#4a8c5c}.tane-emoji{font-size:24px;line-height:1.2}.tane-body{display:flex;flex-direction:column;gap:3px;min-width:0}.tane-body b{font-size:15px}.tane-meta{font-size:12px;color:#7c8a82}.tane-q{font-size:13px;color:#4a5c51}.lp-article h1{font-size:26px;line-height:1.5;margin:4px 0 14px}.lp-article h2{font-size:17px;margin:22px 0 8px}.tane-tags{font-size:12px;color:#7c8a82;margin:0}.tane-steps h2{font-size:15px;color:#2f6b47;margin:20px 0 6px}.tane-say{font-size:18px;line-height:1.7;font-weight:700;color:#2f6b47;margin:0 0 4px}.tane-box{margin:20px 0;padding:14px 16px;border-radius:10px;background:#f7faf8;border:1px solid #e3ece6}.tane-box h2{margin:0 0 8px;font-size:15px}.tane-box p{margin:0;font-size:14px;line-height:1.9}.tane-safe{background:#fff8f5;border-color:#f3ddd2}.tane-adv{background:#f2f8f4;border-color:#dceae1}.tane-lv{font-weight:400;font-size:11px;color:#5b7a67;background:#fff;border:1px solid #dceae1;border-radius:999px;padding:2px 8px;margin-left:8px}.tane-terms{margin:12px 0 0}.tane-terms div{margin-top:10px}.tane-terms dt{font-size:13px;font-weight:700;color:#2f6b47}.tane-terms dd{margin:4px 0 0;font-size:13px;line-height:1.85;color:#4a5c51}.tane-practice{background:#fffdf3;border-color:#f0e6c8}.tane-practice-item+.tane-practice-item{margin-top:16px;border-top:1px dashed #ece0bd;padding-top:14px}.tane-practice .q{margin-bottom:8px}.tane-cta{margin:28px 0;padding:20px;text-align:center;background:#f2f8f4;border:1px solid #dceae1;border-radius:12px}.tane-cta p{margin:0 0 10px}.guide{margin-top:10px}.guide-open{background:#fff;border:1px dashed #c9dfd2;border-radius:999px;padding:6px 14px;font-size:12px;color:#4a8c5c;cursor:pointer}.guide-choice,.guide-hint{margin-top:8px;padding:10px 12px;border-radius:10px;background:#f7fbf8;border:1px solid #dceae1}.guide-choice>b,.guide-hint>b{display:block;font-size:12px;color:#2f6b47;margin-bottom:6px}.guide-hint p{line-height:1.75;color:#33413a}.guide-hint p,.guide-say{font-size:14px;margin:0 0 8px}.guide-say{font-weight:700;color:#2f6b47}.choice-btn{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:#fff;border:1px solid #dceae1;border-radius:10px;padding:9px 12px;margin-bottom:6px;font-size:14px;color:#33413a;cursor:pointer}.choice-btn:disabled{cursor:default}.choice-no{flex:none;width:20px;height:20px;border-radius:50%;background:#eef5f0;color:#4a8c5c;font-size:11px;font-weight:700;display:grid;place-items:center}.choice-btn.right{border-color:#4a8c5c;background:#eef7f1;font-weight:700}.choice-btn.wrong{border-color:#e3b9b9;background:#fdf3f3}.choice-btn.dim{opacity:.5}.choice-mark{margin-left:auto;color:#4a8c5c;font-weight:700}.guide-after{font-size:13px;line-height:1.7;color:#4a5c51;margin:6px 0 0}.followup{margin-top:10px;padding:10px 12px;border-radius:10px;background:#f4f2fb;border:1px solid #ddd8ef}.followup>b{display:block;font-size:12px;margin-bottom:6px}.followup .serif-say,.followup>b{color:#5a4b9c}.followup-note{display:block;font-size:11px;color:#7d76a3;margin-top:6px}.tane-followup,.tane-guide{margin:14px 0;padding:14px 16px;border-radius:10px;background:#f7fbf8;border:1px solid #dceae1}.tane-followup{background:#f4f2fb;border-color:#ddd8ef}.tane-guide-head{font-size:13px;font-weight:700;color:#2f6b47;margin:0 0 8px}.tane-followup .tane-guide-head{color:#5a4b9c}.tane-followup .tane-say{color:#5a4b9c;font-size:16px}.tane-guide-hint{font-size:14px;line-height:1.85;margin:0 0 10px}.tane-guide-sub{font-size:13px;line-height:1.8;color:#5b7a67;margin:8px 0 0}.tane-choices{margin:8px 0 0;padding-left:22px}.tane-choices li{font-size:14px;line-height:1.9}.tane-choices li.right{font-weight:700;color:#2f6b47}.tane-choices li.right:after{content:" ◯"}.share-hint{margin:-4px 0 10px;font-size:12px;line-height:1.7;color:#5b7a67;background:#f7fbf8;border:1px dashed #cfe3d7;border-radius:10px;padding:8px 12px}.share-cta{flex:none;align-self:center;display:flex;align-items:center;gap:4px;background:#4a8c5c;color:#fff;border:none;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.share-cta:hover{background:#3d7a4d}.share-comment-box{margin-top:12px;padding:12px 14px;border-radius:10px;background:#f7fbf8;border:1px solid #dceae1}.share-comment-head{margin:0 0 6px;font-size:12px;font-weight:700;color:#2f6b47}.share-comment-box p{margin:0;font-size:13px;line-height:1.85;color:#33413a}.share-card-lg{padding:32px 28px}.share-card-lg .share-q{font-size:16px}.share-card-lg .share-a{font-size:24px}