:root{--primary:#ff5f00;--primary-dark:#e04e00;--primary-light:#ff7f33;--accent:#f7b308;--accent-dark:#e0a000;--accent-light:#ffd966;--white:#fff;--off-white:#f8f9fa;--light-gray:#e9ecef;--medium-gray:#adb5bd;--dark-gray:#495057;--text:#212529;--text-light:#6c757d;--font-heading:"Noto Serif JP", serif;--font-body:"Noto Sans JP", sans-serif;--font-accent:"Lato", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 20px #0000001f;--shadow-lg:0 8px 40px #00000029;--radius:8px;--container-xs:760px;--container-sm:880px;--container-md:960px;--container-lg:1000px;--container-xl:1200px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased;line-height:1.9}img{max-width:100%;height:auto;display:block}a{color:var(--primary);text-decoration:none;transition:opacity .3s}a:hover{opacity:.7}.sub-hero{text-align:center;color:var(--white);background-position:50%;background-repeat:no-repeat;background-size:cover;padding:90px 0;position:relative}.sub-hero .label{font-family:var(--font-accent);letter-spacing:4px;text-transform:uppercase;opacity:.9;margin-bottom:10px;font-size:14px}.sub-hero h1{font-family:var(--font-heading);margin-bottom:14px;font-size:38px;font-weight:700}.sub-hero p{opacity:.95;font-size:16px}.breadcrumb{background:var(--off-white);color:var(--text-light);padding:12px 0;font-size:12px}.breadcrumb a{color:var(--text-light)}.sub-body{padding:70px 0}.lead{font-family:var(--font-heading);color:var(--primary);text-align:center;margin-bottom:16px;font-size:26px;font-weight:700;line-height:1.6}.lead-sub{text-align:center;color:var(--text-light);margin-bottom:56px;font-size:15px}.block{margin-bottom:56px}.block-title{font-family:var(--font-heading);color:var(--text);border-left:5px solid var(--accent);margin-bottom:20px;padding-left:16px;font-size:22px;font-weight:700;line-height:1.4}.block p{margin-bottom:14px;font-size:15px}.merits{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.merit{background:var(--off-white);text-align:center;border:1px solid var(--light-gray);transition:all .4s var(--ease);border-radius:10px;padding:32px 24px}.merit:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-4px)}.merit-icon{background:linear-gradient(135deg, var(--accent) 0%, var(--primary) 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;font-size:28px;display:flex}.merit h3{color:var(--primary);margin-bottom:10px;font-size:17px;font-weight:700}.merit p{color:var(--text-light);margin:0;font-size:13.5px;line-height:1.8}.flow{counter-reset:step}.flow-item{border-bottom:1px dashed var(--light-gray);align-items:flex-start;gap:20px;padding:20px 0;display:flex}.flow-item:last-child{border-bottom:none}.flow-num{counter-increment:step;background:var(--primary);width:44px;height:44px;color:var(--white);font-family:var(--font-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:900;display:flex}.flow-num:before{content:counter(step)}.flow-body h4{margin-bottom:4px;font-size:16px;font-weight:700}.flow-body p{color:var(--text-light);margin:0;font-size:14px}.sub-cta{background:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 100%);color:var(--white);text-align:center;padding:64px 0}.sub-cta h2{font-family:var(--font-heading);margin-bottom:14px;font-size:26px;font-weight:700}.sub-cta p{opacity:.92;margin-bottom:28px;font-size:15px}.btn-cta{background:var(--white);color:var(--primary);box-shadow:var(--shadow-md);transition:transform .3s var(--ease);border-radius:50px;padding:16px 40px;font-size:15px;font-weight:700;display:inline-block}.btn-cta:hover{opacity:1;transform:translateY(-2px)}@media (width<=768px){.sub-hero h1{font-size:28px}.merits{grid-template-columns:1fr}}.fade-in,.fade-in-left,.fade-in-right,.scale-in{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease)}.fade-in{transform:translateY(30px)}.fade-in-left{transform:translate(-40px)}.fade-in-right{transform:translate(40px)}.scale-in{transform:scale(.92)}.fade-in.visible,.fade-in-left.visible,.fade-in-right.visible,.scale-in.visible{opacity:1;transform:translate(0)scale(1)}.section{padding:100px 0}.section-header{text-align:center;margin-bottom:60px}.section-label{font-family:var(--font-accent);letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:14px;font-weight:700}.section-title{font-family:var(--font-heading);color:var(--primary);font-size:32px;font-weight:700;line-height:1.4}.section-title:after{content:"";background:var(--accent);border-radius:2px;width:60px;height:3px;margin:20px auto 0;display:block}.section-subtitle{color:var(--text-light);margin-top:16px;font-size:15px;line-height:1.8}.btn{font-family:var(--font-body);letter-spacing:.5px;cursor:pointer;transition:all .3s var(--ease);border:none;border-radius:50px;justify-content:center;align-items:center;gap:8px;padding:16px 36px;font-size:15px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--accent);color:var(--white);box-shadow:0 4px 15px #2ecc714d}.btn-primary:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 6px 20px #2ecc7166}.btn-secondary{color:var(--white);border:2px solid var(--white);background:0 0}.btn-secondary:hover{background:var(--white);color:var(--primary);transform:translateY(-2px)}.btn-outline{color:var(--primary);border:2px solid var(--primary);background:0 0}.btn-outline:hover{background:var(--primary);color:var(--white);transform:translateY(-2px)}.btn-white{background:var(--white);color:var(--primary);box-shadow:var(--shadow-md)}.btn-white:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media (width<=768px){.section{padding:72px 0}.section-title{font-size:26px}}:focus-visible{outline:3px solid var(--text);outline-offset:2px}.hero :focus-visible,.header:not(.scrolled) :focus-visible,.mobile-nav :focus-visible,.footer :focus-visible,.blog :focus-visible{outline-color:var(--white)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade-in,.fade-in-left,.fade-in-right,.scale-in{opacity:1;transition:none;transform:none}.solar-intro,.solar-intro *,.solar-xp,.solar-xp *{transition:none!important;animation:none!important}}.container[data-astro-cid-feoazapf]{margin:0 auto;padding:0 24px}.container--xs[data-astro-cid-feoazapf]{max-width:var(--container-xs)}.container--sm[data-astro-cid-feoazapf]{max-width:var(--container-sm)}.container--md[data-astro-cid-feoazapf]{max-width:var(--container-md)}.container--lg[data-astro-cid-feoazapf]{max-width:var(--container-lg)}.container--xl[data-astro-cid-feoazapf]{max-width:var(--container-xl)}
