#kawahara-invest3 { --navy:#102b4e; --navy2:#17436f; --gold:#d7a72c; --cream:#fffaf0; --ink:#1e293b; --muted:#5b6472; --line:#d9e0e8; box-sizing:border-box; max-width:820px; margin:24px auto; color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; font-size:17px; line-height:1.75; background:#fff; border-radius:20px; overflow:hidden; box-shadow:0 10px 34px rgba(16,43,78,.14); }
#kawahara-invest3 * { box-sizing:border-box; }
#kawahara-invest3 .ki3-hero { position:relative; padding:38px 26px 48px; color:#fff; text-align:center; background:linear-gradient(145deg,var(--navy),var(--navy2)); }
#kawahara-invest3 .ki3-kicker { display:inline-block; margin:0 0 12px; padding:3px 15px; border:1px solid rgba(255,255,255,.65); border-radius:999px; font-weight:700; }
#kawahara-invest3 h1 { margin:0; color:#fff; font-size:clamp(30px,6vw,48px); line-height:1.25; letter-spacing:.02em; }
#kawahara-invest3 h1 span { color:#ffe08a; }
#kawahara-invest3 .ki3-lead { max-width:620px; margin:18px auto 0; font-size:18px; }
#kawahara-invest3 .ki3-supervisor { position:absolute; right:20px; bottom:10px; margin:0; font-size:14px; font-weight:700; }
#kawahara-invest3 .ki3-body { padding:26px; }
#kawahara-invest3 .ki3-intro { padding:22px; background:var(--cream); border:1px solid #f0deb2; border-radius:14px; }
#kawahara-invest3 h2 { margin:0 0 10px; color:var(--navy); font-size:22px; }
#kawahara-invest3 .ki3-intro ol { margin:10px 0; padding-left:1.5em; }
#kawahara-invest3 .ki3-intro p { margin:10px 0 0; color:var(--muted); font-weight:700; }
#kawahara-invest3 .ki3-step { margin-top:24px; padding:24px; border:1px solid var(--line); border-radius:16px; }
#kawahara-invest3 .ki3-stepno { display:inline-block; margin-bottom:10px; color:var(--navy2); font-size:14px; font-weight:800; letter-spacing:.08em; }
#kawahara-invest3 .ki3-step>label { display:block; margin-bottom:10px; font-size:20px; font-weight:800; }
#kawahara-invest3 .ki3-input { display:flex; align-items:center; border:2px solid #9aabba; border-radius:12px; overflow:hidden; background:#fff; }
#kawahara-invest3 .ki3-input:focus-within { border-color:var(--navy2); box-shadow:0 0 0 3px rgba(23,67,111,.14); }
#kawahara-invest3 .ki3-input input { min-width:0; width:100%; height:58px; padding:8px 14px; border:0; outline:0; color:var(--ink); font:700 24px/1.2 inherit; background:transparent; }
#kawahara-invest3 .ki3-input span { flex:none; padding:0 14px; font-weight:700; }
#kawahara-invest3 small { display:block; margin-top:7px; color:var(--muted); font-size:14px; }
#kawahara-invest3 .ki3-error { min-height:1.5em; margin:5px 0 0; color:#b42318; font-weight:700; }
#kawahara-invest3 fieldset { margin:20px 0 0; padding:0; border:0; }
#kawahara-invest3 legend { margin-bottom:10px; font-weight:800; }
#kawahara-invest3 .ki3-pills { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
#kawahara-invest3 .ki3-pills input { position:absolute; opacity:0; }
#kawahara-invest3 .ki3-pills span { display:flex; min-height:58px; align-items:center; justify-content:center; flex-direction:column; border:2px solid #aab6c2; border-radius:10px; text-align:center; font-weight:800; cursor:pointer; }
#kawahara-invest3 .ki3-pills input:checked+span { color:#fff; border-color:var(--navy); background:var(--navy); }
#kawahara-invest3 .ki3-pills input:focus-visible+span { outline:3px solid #e6b83c; outline-offset:2px; }
#kawahara-invest3 .ki3-pills em { color:#ffe08a; font-size:12px; font-style:normal; }
#kawahara-invest3 .ki3-note { margin:9px 0 0; padding:10px 12px; color:var(--muted); font-size:14px; background:#f5f7f9; border-radius:8px; }
#kawahara-invest3 .ki3-actions { display:grid; gap:10px; margin:26px 0; }
#kawahara-invest3 button { min-height:54px; padding:12px 18px; border-radius:12px; font-size:18px; font-weight:800; cursor:pointer; }
#kawahara-invest3 #ki3-calc { color:#fff; border:0; background:linear-gradient(135deg,#c89212,var(--gold)); box-shadow:0 5px 12px rgba(190,139,20,.3); }
#kawahara-invest3 #ki3-reset { color:var(--navy); border:1px solid #aab6c2; background:#fff; }
#kawahara-invest3 .ki3-result { margin-top:28px; padding:26px; text-align:center; border:3px solid var(--gold); border-radius:18px; background:#fffdf6; }
#kawahara-invest3 .ki3-result-label { margin:0; color:var(--navy); font-weight:800; }
#kawahara-invest3 .ki3-result-number { margin:4px 0; color:var(--navy); line-height:1.2; }
#kawahara-invest3 .ki3-result-number strong { font-size:clamp(46px,10vw,72px); }
#kawahara-invest3 .ki3-result-number span { margin-left:6px; font-size:24px; font-weight:800; }
#kawahara-invest3 .ki3-result-sub { margin:8px 0 20px; color:var(--muted); }
#kawahara-invest3 .ki3-buckets { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; text-align:left; }
#kawahara-invest3 .ki3-buckets article { padding:14px; border:1px solid var(--line); border-radius:12px; background:#fff; }
#kawahara-invest3 .ki3-buckets span,#kawahara-invest3 .ki3-buckets strong { display:block; }
#kawahara-invest3 .ki3-buckets span { color:var(--muted); font-size:14px; font-weight:700; }
#kawahara-invest3 .ki3-buckets strong { color:var(--navy); font-size:22px; }
#kawahara-invest3 .ki3-buckets .ki3-grow { border-color:var(--gold); background:#fff8dd; }
#kawahara-invest3 .ki3-advice { margin-top:18px; padding:18px; text-align:left; border-left:5px solid var(--navy2); border-radius:8px; background:#eef5fb; }
#kawahara-invest3 .ki3-advice h3 { margin:0 0 5px; color:var(--navy); font-size:20px; }
#kawahara-invest3 .ki3-advice p { margin:0; }
#kawahara-invest3 .ki3-calcbox { margin-top:14px; padding:12px; text-align:left; color:var(--muted); font-size:14px; background:#fff; border-radius:8px; }
#kawahara-invest3 .ki3-calcbox p { margin:2px 0 0; }
#kawahara-invest3 .ki3-caution { margin-top:26px; padding:22px; border-radius:14px; background:#f2f6fa; }
#kawahara-invest3 .ki3-caution ul { margin:8px 0 0; padding-left:1.4em; }
#kawahara-invest3 .ki3-footer { margin-top:24px; padding-top:18px; color:var(--muted); font-size:13px; border-top:1px solid var(--line); }
#kawahara-invest3 .ki3-footer p { margin:5px 0; }
#kawahara-invest3 [hidden] { display:none !important; }
@media (max-width:560px) { #kawahara-invest3 { margin:10px auto; border-radius:12px; font-size:16px; } #kawahara-invest3 .ki3-hero { padding:30px 18px 45px; } #kawahara-invest3 .ki3-body { padding:16px; } #kawahara-invest3 .ki3-step { padding:18px 15px; } #kawahara-invest3 .ki3-buckets { grid-template-columns:1fr; } #kawahara-invest3 .ki3-result { padding:20px 14px; } #kawahara-invest3 .ki3-pills span { font-size:15px; } }
