:root{--pink: #f88fa3;--pink-soft: #ffe7ec;--mint: #6bcdb7;--mint-soft: #e5f7f2;--cream: #fff4d8;--lavender: #e9e5ff;--blue: #e6f3ff;--paper: #fffdf8;--line: #f1ddc8;--brown: #5d544f;--muted: #8a7d75;--shadow: 0 16px 34px rgba(93, 84, 79, .12);font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;color:var(--brown);background:#fff6ea}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(rgba(241,221,200,.38) 1px,transparent 1px),linear-gradient(90deg,rgba(241,221,200,.38) 1px,transparent 1px),radial-gradient(circle at top right,#ffe4ea 0,transparent 32%),var(--paper);background-size:28px 28px,28px 28px,auto,auto}a{color:inherit;text-decoration:none}button,select{font:inherit}.site-shell{position:relative;width:min(1180px,calc(100% - 24px));min-height:100vh;margin:12px auto 0;padding:0 0 92px 44px;border:2px solid rgba(219,184,151,.55);border-radius:24px 24px 0 0;background:#fffdf8c7;box-shadow:0 10px 40px #7a60461a;overflow:hidden}.notebook-rings{position:absolute;top:22px;bottom:22px;left:10px;width:24px;display:flex;flex-direction:column;justify-content:space-around;pointer-events:none}.notebook-rings span{width:30px;height:12px;border:3px solid #c8b7a0;border-left:0;border-radius:0 16px 16px 0;background:linear-gradient(#efe5d5,#b9aa96)}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px 16px;background:#fffdf8e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(241,221,200,.8)}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:clamp(18px,3vw,27px);letter-spacing:0}.logo span span{color:var(--pink)}.logo-mark{width:42px;height:42px;flex:0 0 auto;border:2px solid var(--pink);border-radius:50% 50% 46% 54%;background:linear-gradient(45deg,transparent 45%,#ffc996 46% 54%,transparent 55%),radial-gradient(circle at 60% 40%,#ffd9a8 0 20%,transparent 21%),var(--pink-soft);transform:rotate(-8deg)}.top-nav{display:flex;align-items:center;gap:4px;padding:6px;border:1px solid rgba(241,221,200,.9);border-radius:999px;background:#fff}.top-nav a{padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700;color:var(--muted)}.top-nav a.active,.top-nav a:hover{color:#fff;background:var(--pink)}.main-content{padding:34px 30px 56px}.home-hero,.page-hero{position:relative;display:grid;gap:28px;margin-bottom:28px;padding:clamp(28px,6vw,64px);border-radius:28px;background:radial-gradient(circle at 78% 18%,rgba(248,143,163,.18),transparent 22%),linear-gradient(rgba(248,143,163,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(248,143,163,.16) 1px,transparent 1px),#fffefa;background-size:auto,24px 24px,24px 24px,auto;box-shadow:var(--shadow)}.home-hero{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);align-items:center}.page-hero{text-align:center}.home-hero h1,.page-hero h1{margin:18px 0;max-width:760px;font-size:clamp(30px,5vw,48px);line-height:1.55;letter-spacing:0}.page-hero h1{margin-left:auto;margin-right:auto}.home-hero p,.page-hero p{max-width:720px;margin:0;color:#6f635c;font-size:clamp(16px,2.4vw,18px);line-height:2}.page-hero p{margin-left:auto;margin-right:auto}.tape-label{display:inline-flex;width:fit-content;align-items:center;padding:7px 18px;border-radius:4px;background:linear-gradient(90deg,#ffd3de,#ffe0b7);color:#7b5b57;font-size:14px;font-weight:800;transform:rotate(-2deg);box-shadow:0 4px #f88fa31f}.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:0;border-radius:999px;cursor:pointer;font-weight:800;box-shadow:0 10px 18px #f88fa338}.button.primary{color:#fff;background:var(--pink)}.button.secondary{color:#fff;background:var(--mint)}.button.text-button{color:#e76883;background:#fff;border:1px solid #ffd3de;box-shadow:none}.hero-illustration{min-height:360px;display:grid;place-items:center}.paper-doodle{position:relative;width:min(320px,100%);aspect-ratio:.82;border:2px solid #f0d2b7;border-radius:44% 56% 42% 58%;background:linear-gradient(#fff,#fff8f0);box-shadow:var(--shadow)}.doodle-face{position:absolute;left:50%;top:24%;width:110px;height:110px;border-radius:50%;transform:translate(-50%);background:#ffe2c8;border:3px solid #9d7a6a}.doodle-face:before,.doodle-face:after{content:"";position:absolute;top:44px;width:9px;height:9px;border-radius:50%;background:#5d544f}.doodle-face:before{left:32px}.doodle-face:after{right:32px}.doodle-book{position:absolute;left:21%;bottom:16%;width:58%;height:74px;border:3px solid #9d7a6a;border-radius:8px;background:linear-gradient(90deg,#fff 49%,#f4d7ef,#fff 51%)}.doodle-heart{position:absolute;right:16%;top:24%;width:30px;height:30px;transform:rotate(45deg);background:#f88fa3}.doodle-heart:before,.doodle-heart:after{content:"";position:absolute;width:30px;height:30px;border-radius:50%;background:#f88fa3}.doodle-heart:before{left:-15px}.doodle-heart:after{top:-15px}.feature-grid,.school-board,.guide-list,.qa-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:28px 0}.feature-card,.note-card{position:relative;border:1px solid rgba(219,184,151,.55);border-radius:18px;background:#fff;box-shadow:0 10px 22px #5d544f14}.feature-card{min-height:178px;padding:26px 22px;overflow:hidden}.feature-card h3,.note-card h2{margin:0 0 12px;font-size:20px;line-height:1.5}.feature-card p,.note-card p{margin:0;color:#70665f;line-height:1.9}.feature-pin{display:block;width:46px;height:18px;margin-bottom:10px;border-radius:4px;background:#f88fa380;transform:rotate(-5deg)}.card-arrow{position:absolute;right:18px;bottom:14px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--pink);font-size:26px}.accent-mint .card-arrow,.accent-mint .feature-pin{background:var(--mint)}.accent-cream .feature-pin{background:#ffd48a}.accent-lavender .feature-pin{background:#b7bce8}.accent-blue .feature-pin{background:#a9d8ff}.note-card{padding:24px;background:linear-gradient(rgba(241,221,200,.28) 1px,transparent 1px),#fff;background-size:100% 28px}.tone-pink{background-color:var(--pink-soft)}.tone-mint{background-color:var(--mint-soft)}.tone-cream{background-color:var(--cream)}.tone-lavender{background-color:var(--lavender)}.tone-blue{background-color:var(--blue)}.two-column,.maker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.checklist{display:grid;gap:12px;padding:0;margin:0;list-style:none}.checklist li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;line-height:1.8}.checkmark,.empty-check{width:20px;height:20px;margin-top:4px;border-radius:6px;border:2px solid var(--mint);background:var(--mint)}.checkmark:after{content:"";display:block;width:8px;height:4px;margin:5px 0 0 4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}.empty-check{border-color:#f6a476;background:#fff8ef}.diagnosis-panel{max-width:820px;margin:0 auto}.progress-rail{height:14px;margin-bottom:20px;border-radius:999px;background:#eee8df;overflow:hidden}.progress-rail span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pink),#ffd48a);transition:width .25s ease}.question-card{padding:clamp(28px,6vw,48px);border:1px solid rgba(219,184,151,.7);border-radius:24px;background:#fffefa;box-shadow:var(--shadow)}.step-label{margin:0 0 10px;color:var(--pink);font-weight:900}.question-card h2{margin:0 0 24px;text-align:center;font-size:clamp(24px,4vw,34px)}.answer-list{display:grid;gap:14px}.answer-list button{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:1px solid rgba(219,184,151,.55);border-radius:16px;background:#fff;color:var(--brown);cursor:pointer;text-align:left;font-weight:700;box-shadow:0 6px 16px #5d544f0f}.answer-list button span{color:var(--pink);font-size:28px}.result-card h3{margin:22px 0 10px}.result-lead{font-size:18px;font-weight:700}.notice,.global-notice{margin-top:18px;padding:14px;border:1px dashed #f1b5c1;border-radius:12px;background:#ffffffb3;color:#6f635c}.form-grid{display:grid;gap:16px}.field{display:grid;gap:8px;font-weight:800}.field select{width:100%;min-height:48px;padding:0 14px;border:1px solid rgba(219,184,151,.75);border-radius:12px;color:var(--brown);background:#fff}.message-output p:first-of-type{font-size:19px;font-weight:800;line-height:2}.copy-help{margin-top:12px;color:#8a6c5e;font-size:14px}.chip-list{display:flex;flex-wrap:wrap;gap:10px}.chip-list span{padding:8px 14px;border-radius:999px;background:#fff;color:#68736f;font-weight:800;border:1px solid rgba(107,205,183,.45)}.global-notice{max-width:860px;margin:22px auto 0}.site-footer{display:grid;grid-template-columns:1.3fr .7fr;gap:24px;padding:30px;border-top:1px solid rgba(241,221,200,.8);color:#736861;line-height:1.8}.footer-logo{margin:0 0 10px;color:var(--brown);font-weight:900}.footer-links{display:grid;gap:8px;align-content:start}.bottom-nav{position:fixed;left:50%;bottom:10px;z-index:20;width:min(520px,calc(100% - 20px));display:none;grid-template-columns:repeat(5,1fr);padding:8px;border:1px solid rgba(219,184,151,.55);border-radius:24px;background:#fffdf8f5;box-shadow:0 10px 28px #5d544f2e;transform:translate(-50%)}.bottom-nav a{display:grid;place-items:center;gap:4px;min-height:56px;border-radius:16px;color:#7a7069;font-size:12px;font-weight:800}.bottom-nav a.active{color:var(--pink);background:#fff0f4}.nav-icon{width:23px;height:23px;border:2px solid currentColor}.nav-icon-home{border-radius:5px;transform:rotate(45deg)}.nav-icon-check{border-radius:50%}.nav-icon-msg{border-radius:8px}.nav-icon-school{border-radius:4px 4px 0 0}.nav-icon-qa{border-radius:50%;position:relative}.nav-icon-qa:after{content:"?";position:absolute;inset:0;display:grid;place-items:center;font-size:13px}@media(max-width:980px){.site-shell{width:100%;margin:0;padding-left:0;border:0;border-radius:0}.notebook-rings,.top-nav{display:none}.site-header{padding:22px 18px}.main-content{padding:24px 16px 42px}.home-hero{grid-template-columns:1fr;padding:30px 20px}.hero-illustration{min-height:250px}.two-column,.maker-grid,.site-footer{grid-template-columns:1fr}.bottom-nav{display:grid}}@media(max-width:560px){.logo{font-size:20px}.logo-mark{width:34px;height:34px}.home-hero h1,.page-hero h1{font-size:29px}.hero-actions .button,.button-row .button{width:100%}.feature-grid,.school-board,.guide-list,.qa-list{grid-template-columns:1fr}.note-card{padding:20px}}
