@charset "utf-8";
:root{--ink:#25342e;--deep:#263f34;--green:#34634f;--sage:#e4eee4;--muted:#66736a;--cream:#fcf9ef;--paper:#fffefa;--line:#e6e9df;--gold:#efbf50;--lightgold:#fff0be;--shadow:0 14px 44px rgba(51,72,51,.085);--radius:22px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);font-size:16px;line-height:1.85;text-rendering:optimizeLegibility}a{color:var(--green)}a:hover{color:#204835}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b98519;outline-offset:4px}img,svg{max-width:100%}.icon{height:1.2em;width:1.2em;vertical-align:-.16em;flex:none}.wrap{width:min(1130px,calc(100% - 44px));margin-inline:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:760;line-height:1.42;letter-spacing:.015em}p{margin-bottom:1.1em}h2{font-size:clamp(1.8rem,3vw,2.55rem)}h3{font-size:1.16rem}h1{font-size:clamp(2.5rem,5vw,4.6rem)}.skip-link{position:absolute;left:12px;top:-100px;z-index:999;padding:12px;background:white}.skip-link:focus{top:12px}
.top-strip{background:#315d4b;color:#fff;font-size:.76rem;line-height:1.5}.top-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:38px}.top-strip .registry-info,.top-strip .top-phone{display:inline-flex;align-items:center;gap:7px}.top-strip .registry-info{min-width:0}.top-strip .registry-text{display:inline;overflow-wrap:anywhere}.top-strip .registry-arrow{margin-left:.15em}.top-strip a{color:#fff}.top-strip .registry-link{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;font-weight:800;padding:3px 5px;border-radius:5px}.top-strip .registry-link:hover{background:rgba(255,255,255,.14);color:#fff}.top-strip .top-phone{text-decoration:none;white-space:nowrap;flex:none}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,254,250,.97);border-bottom:1px solid var(--line);box-shadow:0 3px 19px rgba(53,66,54,.03);backdrop-filter:blur(12px)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--deep);flex:none}.brand img{width:46px;height:46px}.brand strong{font-size:1.28rem;display:block;letter-spacing:.025em;line-height:1.4}.brand small{font-size:.7rem;color:var(--muted);display:block;letter-spacing:.035em;margin-top:1px}.site-nav{display:flex;align-items:center;gap:13px}.site-nav>a{font-weight:700;font-size:.77rem;white-space:nowrap;text-decoration:none;color:#42564a;padding:9px 3px;transition:color .2s}.site-nav>a:hover,.site-nav>a[aria-current]{color:var(--green)}.site-nav a.nav-cta{margin-left:3px;padding:12px 16px;border-radius:999px;color:#fff;background:var(--green);display:flex;align-items:center;gap:6px}.site-nav a.nav-cta:hover{background:#234634;color:#fff}.nav-toggle{display:none;border:1px solid #b4cbb9;background:var(--sage);color:var(--deep);border-radius:12px;min-height:46px;min-width:111px;padding:8px 12px;align-items:center;justify-content:center;flex-direction:row;gap:9px;cursor:pointer;font:inherit;font-size:.86rem;font-weight:800;line-height:1.2;white-space:nowrap;box-shadow:0 2px 7px rgba(35,59,48,.06)}.nav-toggle:hover{background:#d6e8d9;border-color:#8db299}.nav-toggle-icon{width:20px;height:17px;display:flex;align-items:center;justify-content:space-between;flex-direction:column;flex:none}.nav-toggle-icon span{width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}.nav-toggle-label{display:inline-block}.site-header.nav-open .nav-toggle{background:var(--green);color:white;border-color:var(--green)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:52px;padding:13px 23px;border-radius:12px;font-size:.92rem;font-weight:800;text-decoration:none;text-align:center;white-space:normal;transition:transform .18s,background .18s,box-shadow .18s}.btn:hover{transform:translateY(-2px)}.btn .icon{width:1em}.btn-primary{background:var(--green);color:white;box-shadow:0 7px 19px rgba(41,88,63,.13)}.btn-primary:hover{background:#224e3a;color:white}.btn-outline{border:1.5px solid #b4c9b6;background:transparent;color:var(--deep)}.btn-outline:hover{background:#f2f8f0;color:var(--deep)}.btn-light,.btn-white{background:#fff;color:var(--deep)}.btn-light:hover,.btn-white:hover{background:#f6f3e6;color:var(--deep)}.text-link{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-weight:800;font-size:.92rem}.text-link .icon{height:1em}.eyebrow{color:#527a60;font-size:.75rem;letter-spacing:.17em;font-weight:850;margin-bottom:15px}.eyebrow.light{color:#d6e8d9}.kicker{display:inline-flex;align-items:center;gap:7px;color:#315f48;background:rgba(255,255,255,.7);border:1px solid rgba(72,107,68,.1);border-radius:100px;padding:7px 15px;font-size:.84rem;font-weight:800}.tiny-sun{color:#c88e26;font-size:1.15rem}
.hero{background:linear-gradient(125deg,#fbf1cf,#fbf8ee 53%,#e9f2e2);position:relative;overflow:hidden}.hero-grid{min-height:640px;padding-block:70px 88px;display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:40px;position:relative;z-index:1}.hero-copy h1{font-size:clamp(2.65rem,5.25vw,5rem);letter-spacing:.035em;line-height:1.27;color:var(--deep);margin:19px 0 28px}.hero-copy .dot{color:#d9a82c}.hero-statement{font-size:clamp(1.13rem,2vw,1.45rem);font-weight:800;line-height:1.75;color:#40594a}.hero-caption{max-width:600px;color:#596a5c;font-size:.99rem}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:27px 0 16px}.hero-note{display:flex;align-items:flex-start;gap:7px;font-size:.83rem;color:#3d6b51;font-weight:800}.hero-note .icon{margin-top:4px}.hero-art{height:450px;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}.art-ring{position:absolute;border:1px solid rgba(93,145,88,.13);border-radius:50%}.ring-one{width:440px;height:440px}.ring-two{width:360px;height:360px;border-width:25px;border-color:rgba(255,255,255,.29)}.hero-art-sun{width:270px;height:270px;position:relative;filter:drop-shadow(0 18px 24px rgba(164,132,61,.15));background:repeating-conic-gradient(from 8deg,#e3aa38 0deg 17deg,#f2ca5c 17deg 30deg);border-radius:50%;animation:flower-in .9s ease-out both}.hero-art-sun:before{content:"";position:absolute;inset:43px;background:#f7d66e;border-radius:50%}.hero-sun-center{position:absolute;inset:78px;z-index:1;border-radius:50%;background:radial-gradient(circle at 30% 30%,#b18443,#875b2f);box-shadow:inset 0 0 0 5px rgba(255,231,164,.22)}.leaf{position:absolute;bottom:16px;z-index:-1;border-radius:92% 0 92% 0;background:#6c9b6e;width:110px;height:64px}.leaf-left{left:28%;transform:rotate(-22deg)}.leaf-right{right:21%;transform:rotate(68deg);background:#8fb68a}.art-label{position:absolute;padding:10px 17px;border:1px solid #efeedc;border-radius:14px;background:rgba(255,255,255,.95);box-shadow:var(--shadow);font-size:.81rem;font-weight:750;white-space:nowrap;color:#415848}.label-one{left:-2%;top:15%}.label-two{right:-2%;bottom:19%}.art-sparkle{position:absolute;color:#e0aa3b;font-size:45px}.spark-one{right:4%;top:11%}.spark-two{left:5%;bottom:19%;font-size:38px;color:#8cbb8e}.wave-bottom{height:21px;position:absolute;bottom:-1px;width:100%;background:var(--paper);clip-path:polygon(0 72%,9% 28%,21% 75%,37% 30%,53% 75%,69% 28%,87% 75%,100% 34%,100% 100%,0 100%)}@keyframes flower-in{from{opacity:.3;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
.free-bar{background:#375f4d;color:#fff;padding:24px 0}.free-bar-inner,.free-bar-inner>div{display:flex;align-items:center;gap:22px}.free-bar-inner{justify-content:space-between}.free-bar-mark{flex:none;width:68px;height:68px;border-radius:50%;background:#fff5d6;color:#4a6c43;display:grid;place-items:center;font-size:1.6rem;font-weight:850}.free-bar strong{font-size:1.19rem}.free-bar p{margin:2px 0 0;color:#e8f1e5;font-size:.84rem}.free-bar a{flex:none;color:white;font-weight:750;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.5);white-space:nowrap}.free-bar a .icon{vertical-align:middle}
.section{padding:88px 0}.soft-bg{background:#f5f8f2}.warm-bg{background:#fbf6e8}.section-heading{text-align:center;max-width:780px;margin:0 auto 43px}.section-heading p:last-child{color:var(--muted);font-size:1rem}.section-heading h2{margin-bottom:12px}.concern-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.concern{background:#fff;border:1px solid #e5eadd;border-radius:16px;padding:22px 28px;display:flex;align-items:center;gap:22px;box-shadow:0 7px 19px rgba(24,56,23,.025)}.concern span{font-size:1.45rem;color:#d5b85d;font-weight:850}.concern p{margin:0;font-weight:730}.center-action{text-align:center;margin-top:34px}.cards{display:grid;gap:20px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:32px 27px;display:flex;flex-direction:column;min-height:240px;box-shadow:0 9px 23px rgba(32,54,32,.035)}.feature-card h3{margin:22px 0 10px}.feature-card p{color:#5d6b61;font-size:.94rem;flex:1}.feature-card .text-link{margin-top:14px}.icon-tile{background:#eaf2e6;color:#3b7255;width:52px;height:52px;border-radius:14px;display:inline-grid;place-items:center;font-size:1.55rem}.section-side>p:not(.eyebrow),.split-section>div>p{color:#55665b}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.split-section.align-center,.intro-layout.align-center{align-items:center}.value-list{display:grid;gap:17px}.value-list>div{background:white;border-radius:17px;display:flex;gap:18px;padding:24px}.value-list>div>.icon{font-size:2rem;color:#4c815d}.value-list h3{margin-bottom:3px}.value-list p{margin:0;color:var(--muted);font-size:.92rem}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.steps article{position:relative;padding:26px 23px 22px;background:#f8faf6;border:1px solid #e5ebdf;border-radius:18px}.steps span{font-size:2.1rem;font-weight:850;color:#d8b968}.steps h3{margin:4px 0 9px}.steps p{margin:0;color:var(--muted);font-size:.93rem}.tech-section{background:#28493b;color:white}.tech-layout{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:90px}.tech-layout .eyebrow{color:#c5d8bf}.tech-layout h2{color:white}.tech-layout p:not(.eyebrow){color:#e1eee2}.tech-badge{aspect-ratio:1;border-radius:32px;background:#335a48;border:1px solid #608a6c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#f6d981;transform:rotate(-4deg)}.tech-badge .icon{font-size:5.4rem}.tech-badge span{font-size:.7rem;letter-spacing:.2em;color:#e1e8d8;transform:rotate(4deg)}.next-box{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:30px 36px;border:1px solid #e1e9df;background:#f6f9f4;border-radius:18px}.next-box h3{margin-bottom:6px}.next-box p{margin:0;color:var(--muted)}.next-box>.btn{flex:none}.bottom-cta-wrap{padding-bottom:90px}.cta-band{padding:44px 52px;background:linear-gradient(115deg,#305e49,#497657);border-radius:26px;color:white;display:flex;align-items:center;justify-content:space-between;gap:35px;box-shadow:var(--shadow)}.cta-band h2{font-size:clamp(1.6rem,2.8vw,2.35rem);color:#fff;margin-bottom:10px}.cta-band p:not(.eyebrow){margin:0;max-width:660px;color:#ecf4e9}.cta-actions{display:flex;flex-direction:column;gap:13px;align-items:center;flex:none}.cta-phone{color:white;font-weight:800;text-decoration:none}.cta-phone:hover{color:white}
.inner-hero{position:relative;overflow:hidden;background:#f9f5e8;padding:79px 0 70px}.inner-hero .wrap{position:relative;z-index:2}.inner-hero h1{font-size:clamp(2.2rem,4.25vw,3.7rem);max-width:850px;margin-bottom:19px;color:var(--deep)}.inner-lead{font-size:1.12rem;color:#5b705d;max-width:760px;font-weight:600;margin-bottom:0}.decor{position:absolute;border-radius:50%;background:#e9deb7;opacity:.48}.decor-a{width:270px;height:270px;right:10%;top:-150px}.decor-b{width:140px;height:140px;right:4%;bottom:-65px;background:#c3d7bd}.intro-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:70px;align-items:start}.large-text{font-weight:700;font-size:1.18rem;color:#425c49;line-height:1.85}.soft-panel{border-radius:24px;background:#f6f8ee;border:1px solid #e5ecd8;padding:39px}.soft-panel h3{font-size:1.4rem;margin:9px 0 14px}.price-panel{background:#e6f1e5;text-align:center}.price-panel>strong{display:block;font-size:1.25rem;color:#416951}.price-panel strong span{font-size:4rem;display:block;line-height:1.3}.price-panel p{font-size:.9rem;color:#476b52}.inline-note{color:var(--muted);font-size:.85rem;margin:17px 0 0}.check-list{display:grid;gap:12px}.check-list>div{display:flex;gap:12px;align-items:center;padding:15px 20px;background:#f5f8f3;border:1px solid #e6eee4;border-radius:13px;font-weight:690}.check-list .icon{color:#477e59}.quote-box{border-left:5px solid #d9b04d;background:#fffbf0;padding:32px;border-radius:0 20px 20px 0;box-shadow:var(--shadow)}.quote-box p{font-size:1.35rem;line-height:1.8;margin:0;color:#405c43}.vertical-steps{display:grid;gap:0;max-width:860px;margin:0 auto}.vertical-steps article{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:27px 16px}.vertical-steps article>span{color:#c49a33;font-size:2rem;font-weight:850}.vertical-steps h3{margin:0 0 5px}.vertical-steps p{margin:0;color:var(--muted)}.fee-box{border:2px solid #aec8b0;background:#fff;border-radius:22px;padding:34px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.pill{color:#4d7054;background:#eaf4e7;padding:5px 12px;border-radius:100px;font-size:.77rem;font-weight:800}.fee-box h3{margin:16px 0 8px}.fee-box p{margin:0;color:var(--muted)}.fee-price{color:#36684c;font-size:4rem;font-weight:850;white-space:nowrap}.fee-price span{font-size:1.5rem}.notice-box{padding:27px 33px;margin-top:25px;background:#fbf7eb;border:1px solid #eadfbd;border-radius:15px}.notice-box h3{margin-bottom:10px}.notice-box p:last-child{margin-bottom:0}.faq-list{display:grid;gap:13px;max-width:870px;margin:0 auto}.faq-list details{border:1px solid var(--line);background:white;border-radius:14px;padding:0 22px}.faq-list summary{list-style:none;padding:22px 32px 22px 0;position:relative;cursor:pointer;font-weight:760}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'＋';position:absolute;right:0;font-size:1.35rem;color:var(--green);top:14px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding-top:3px;color:var(--muted)}.highlight-panel{border-radius:29px;background:#eff4e7;padding:46px;text-align:center;min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column}.highlight-panel h3{margin:8px 0;font-size:1.4rem}.highlight-panel p{margin-bottom:0;font-weight:700}.sun-emblem{font-size:3rem;color:#caa234}.study-graphic{min-height:280px;border-radius:25px;background:radial-gradient(circle at center,#fcf2c8,#e9f1e2);display:flex;flex-direction:column;justify-content:center;align-items:center}.book-illustration{font-size:6rem;color:#527b59}.study-graphic p{font-weight:750;color:#47624b}.tech-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tech-facts>div{background:#f4f8ed;border:1px solid #e1ebdd;border-radius:16px;padding:23px}.tech-facts span{display:block;font-size:.8rem;color:var(--muted)}.tech-facts strong{display:block;font-size:1.2rem;margin-top:5px}.place-panel .icon{font-size:2.5rem;color:#5b8c66}.place-panel hr{border:0;border-top:1px solid #cfddca;margin:22px 0}.external-feature{display:flex;align-items:center;justify-content:space-between;gap:30px}.table-wrap{overflow-x:auto;margin-top:54px}.detail-table{border-collapse:collapse;width:100%;background:#fff}.detail-table th,.detail-table td{padding:19px 22px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.detail-table th{width:29%;color:#42634b;background:#f5f8f2}.address-block{font-size:1.3rem;font-style:normal;font-weight:630;line-height:1.85;margin:25px 0}.access-photo{margin:0;border-radius:20px;overflow:hidden;background:#f6f7f3;box-shadow:var(--shadow)}.access-photo img{width:100%;max-height:460px;object-fit:cover;display:block}.access-photo figcaption{padding:12px 18px;color:var(--muted);font-size:.85rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-card{padding:36px;border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow);background:white}.contact-card.emphasized{background:#f0f7ec;border-color:#d9e7d3}.contact-card h2{font-size:1.45rem;margin:21px 0}.phone-large{display:block;font-size:clamp(1.65rem,3vw,2.25rem);font-weight:850;text-decoration:none;color:#34634f;white-space:nowrap}.contact-card .tiny{font-size:.78rem;color:#6a766c;margin:15px 0 0}.news-list{display:grid;gap:0;margin:24px 0 76px;border-top:1px solid var(--line)}.news-list article{padding:25px 10px;display:flex;align-items:start;gap:30px;border-bottom:1px solid var(--line)}.news-list time{color:#527c5a;font-weight:800;min-width:105px}.news-list h3{margin-bottom:8px}.news-list p{color:var(--muted)}.narrow{max-width:800px}.narrow h2{font-size:1.4rem;margin-top:32px}.narrow>p:first-child{font-size:1.12rem}
.footer{background:#233b30;color:#e5ebe5;padding:65px 0 27px}.footer-top{display:grid;grid-template-columns:1.65fr 1fr 1fr;gap:60px}.footer-brand{display:flex;align-items:center;gap:9px;color:white;font-size:1.35rem}.footer-about p{font-size:.9rem;color:#d7e2d7;margin:18px 0}.footer-about .address{font-size:.78rem;color:#bed0c2}.footer-links{display:flex;flex-direction:column;gap:7px}.footer-links h2{font-size:.95rem;color:#fff;margin-bottom:11px}.footer-links a{color:#c8d9ce;text-decoration:none;font-size:.86rem;padding:3px 0}.footer-links a:hover,.footer-bottom a:hover{color:white;text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.8rem;color:#b5c8b8}.footer-bottom>div{display:flex;gap:20px;flex-wrap:wrap}.footer-bottom a{color:#b5c8b8;text-decoration:none}.back-to-top{position:fixed;z-index:20;bottom:22px;right:22px;width:43px;height:43px;display:grid;place-items:center;background:#3d6c50;color:white;font-size:1.2rem;text-decoration:none;border-radius:50%;box-shadow:var(--shadow)}.back-to-top:hover{background:#244732;color:white}
@media(max-width:1100px){.site-nav{gap:9px}.site-nav>a{font-size:.73rem}.brand strong{font-size:1.07rem}.brand small{font-size:.61rem}.brand img{width:40px}.header-inner{gap:10px}.site-nav a.nav-cta{padding:10px 12px}}
@media(max-width:1160px){.nav-toggle{display:flex}.header-inner{min-height:72px}.brand strong{font-size:1.15rem}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffefa;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 17px 22px rgba(0,0,0,.1);padding:8px 22px 22px;max-height:calc(100vh - 110px);overflow-y:auto}.site-header.nav-open .site-nav{display:flex}.site-nav>a{padding:13px 10px;font-size:.95rem;border-bottom:1px solid var(--line)}.site-nav a.nav-cta{margin:16px 0 0;justify-content:center}.site-header.nav-open .nav-toggle-icon span:first-child{transform:translateY(7.5px) rotate(45deg)}.site-header.nav-open .nav-toggle-icon span:nth-child(2){opacity:0}.site-header.nav-open .nav-toggle-icon span:last-child{transform:translateY(-7.5px) rotate(-45deg)}.hero-grid{grid-template-columns:1fr .75fr;gap:15px;min-height:560px}.hero-art{height:320px}.hero-art-sun{width:200px;height:200px}.hero-art-sun:before{inset:32px}.hero-sun-center{inset:58px}.ring-one{width:300px;height:300px}.ring-two{width:240px;height:240px}.art-label{font-size:.65rem}.intro-layout,.split-section{gap:35px}.tech-layout{gap:40px}}
@media(max-width:700px){body{font-size:15.5px}.wrap{width:min(100% - 32px,1130px)}.top-strip{font-size:.67rem}.top-strip .wrap{min-height:32px}.top-strip .icon{display:none}.top-strip a{font-size:.78rem}.site-header .brand strong{font-size:1.05rem}.site-header .brand small{font-size:.59rem}.brand img{width:37px;height:37px}.hero-grid{grid-template-columns:1fr;padding:57px 0 49px}.hero-copy h1{font-size:clamp(2.6rem,9vw,4.2rem);margin:16px 0 20px}.hero-statement{font-size:1.12rem}.hero-art{height:265px;margin-top:7px}.hero-art-sun{width:185px;height:185px}.hero-art-sun:before{inset:29px}.hero-sun-center{inset:54px}.ring-one{width:275px;height:275px}.ring-two{width:210px;height:210px}.label-one{left:2%;top:12%}.label-two{right:0;bottom:15%}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%}.free-bar-inner{align-items:flex-start;flex-direction:column;gap:16px}.free-bar-inner>div{align-items:start}.free-bar-mark{width:54px;height:54px;font-size:1.25rem}.free-bar strong{font-size:1.04rem}.free-bar a{margin-left:76px}.section{padding:62px 0}.section-heading{margin-bottom:30px}.concern-grid,.cards.three,.cards.two,.split-section,.intro-layout,.contact-grid,.tech-layout{grid-template-columns:1fr}.concern{padding:17px;gap:17px}.concern span{font-size:1.22rem}.feature-card{padding:26px;min-height:auto}.cards{gap:14px}.section-side{max-width:100%}.steps{grid-template-columns:1fr;gap:12px}.steps article{padding:20px 24px}.tech-layout{gap:23px}.tech-badge{width:130px;height:130px;border-radius:20px;justify-self:start}.tech-badge .icon{font-size:3.7rem}.tech-badge span{font-size:.46rem;letter-spacing:.05em}.next-box{flex-direction:column;align-items:flex-start;padding:24px}.next-box .btn{width:100%}.bottom-cta-wrap{padding-bottom:62px}.cta-band{padding:31px 25px;flex-direction:column;align-items:stretch;gap:25px}.cta-actions{align-items:stretch}.cta-band .btn{width:100%}.cta-phone{text-align:center}.inner-hero{padding:52px 0}.inner-hero h1{font-size:2.28rem}.inner-lead{font-size:1rem}.intro-layout,.split-section{gap:26px}.soft-panel{padding:28px}.vertical-steps article{gap:16px;padding:22px 0}.fee-box{padding:25px;align-items:start;flex-direction:column;gap:10px}.fee-price{font-size:3.5rem}.external-feature{align-items:stretch;flex-direction:column}.contact-card{padding:26px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-about{grid-column:span 2}.footer-bottom{flex-direction:column;gap:8px}.access-photo img{max-height:340px}}
@media(max-width:380px){.brand strong{font-size:.93rem!important}.brand small{font-size:.51rem!important}.brand img{width:32px}.top-strip{font-size:.6rem}.hero-art{height:235px}.ring-one{width:245px;height:245px}.art-label{padding:7px 10px;font-size:.56rem}.tech-facts{grid-template-columns:1fr 1fr;gap:8px}.tech-facts>div{padding:15px}.tech-facts strong{font-size:1rem}.footer-top{grid-template-columns:1fr}.footer-about{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* v0.9: official prefecture list link + clearly labeled mobile menu */
@media(max-width:700px){.top-strip .wrap{flex-wrap:wrap;gap:3px 10px;padding:5px 0}.top-strip .registry-info{flex:1 1 100%}.top-strip .top-phone{margin-left:auto}.top-strip .registry-info>.icon{display:none}.top-strip .top-phone>.icon{display:none}}
@media(max-width:380px){.header-inner{gap:5px}.brand{gap:6px;min-width:0}.brand span{min-width:0}.brand strong{font-size:.85rem!important}.brand small{font-size:.48rem!important;letter-spacing:0}.brand img{width:30px;height:30px}.nav-toggle{min-width:89px;min-height:44px;gap:6px;padding:7px;font-size:.76rem}.nav-toggle-icon{width:17px}.nav-toggle-icon span{width:17px}}

/* v0.9: Long descriptive computer/robot research nav label: collapse sooner to prevent desktop overflow. */
@media(max-width:1160px){.site-nav>a{white-space:normal;overflow-wrap:anywhere}}

/* Maintain comfortable spacing for the long navigation label on wide displays. */
@media(min-width:1161px){.header-inner{gap:12px}.brand{gap:8px}.brand strong{font-size:1.1rem}.brand small{font-size:.61rem}.brand img{width:40px;height:40px}.site-nav{gap:7px}.site-nav>a{font-size:.73rem;padding-left:2px;padding-right:2px}.site-nav a.nav-cta{padding:10px 12px}}

/* v1.0: family-centered hero, professional support, and smartphone contact actions */
.brand-text{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:0}
.site-header .brand .brand-affiliation{display:block;font-size:.67rem;font-weight:700;color:#52705e;line-height:1.3;letter-spacing:.015em;margin:0 0 2px}
.brand strong{line-height:1.26}
.hero-professional{display:flex;align-items:flex-start;gap:9px;margin:14px 0 0;max-width:580px;color:#265642;font-weight:750;font-size:.94rem;line-height:1.7}
.hero-professional span{background:#e4efe3;color:#236246;line-height:1.4;min-width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-weight:bold}
.hero-statement strong{color:#245b45;font-weight:900;box-shadow:inset 0 -.20em #fae7a4}
.hero-photo{position:relative;min-width:0;margin:0;border-radius:30px;overflow:hidden;box-shadow:0 18px 45px rgba(32,66,44,.16);border:7px solid rgba(255,255,255,.88);background:#f4f6f0;aspect-ratio:9/7}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:49% 45%}
.hero-photo figcaption{position:absolute;left:0;bottom:0;right:0;text-align:right;padding:10px 14px 7px;color:#263e32;background:linear-gradient(0deg,rgba(248,249,244,.95),rgba(248,249,244,.75) 75%,transparent);font-size:.68rem}
.specialist-note{background:#edf5ea;padding:16px 19px;border-left:4px solid #4d8060;border-radius:0 12px 12px 0;color:#325b43;font-weight:700}
.mobile-contact-bar{display:none}
@media(max-width:1160px){.site-header .brand .brand-affiliation{font-size:.62rem}.site-header .brand strong{font-size:1.1rem}}
@media(max-width:767px){
 body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
 .mobile-contact-bar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:7px max(9px,env(safe-area-inset-left,0px)) calc(7px + env(safe-area-inset-bottom,0px)) max(9px,env(safe-area-inset-right,0px));background:rgba(255,255,253,.97);box-shadow:0 -3px 18px rgba(19,49,33,.15);border-top:1px solid #dbe6d9}
 .mobile-contact-bar a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:53px;border-radius:12px;text-decoration:none;color:#fff;font-weight:850;font-size:.91rem;line-height:1.2;white-space:nowrap;box-shadow:0 2px 4px rgba(21,62,43,.1)}
 .mobile-contact-bar .mobile-contact-consult{background:#ea6e25}
 .mobile-contact-bar .mobile-contact-phone{background:#28674d;flex-wrap:wrap;column-gap:7px;row-gap:0}
 .mobile-contact-bar .icon{height:20px;width:20px;flex:none}
 .mobile-number{display:none}
 .mobile-contact-bar a:focus-visible{outline:3px solid #1d4c82;outline-offset:2px}
 .back-to-top{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:15px}
 .hero-grid{padding-top:38px;padding-bottom:45px;gap:20px}
 .hero-copy h1{margin-top:12px;margin-bottom:12px}
 .hero-photo{width:100%;max-width:530px;aspect-ratio:7/4.2;justify-self:center;border-width:5px;border-radius:20px}
 .hero-professional{font-size:.88rem}
 .site-header .brand .brand-affiliation{font-size:.66rem;letter-spacing:0}
 .site-header .brand strong{font-size:1.05rem}
}
@media(max-width:380px){
 .site-header .brand{gap:6px}
 .brand img{width:32px;height:32px}
 .site-header .brand .brand-affiliation{font-size:.56rem}
 .site-header .brand strong{font-size:.94rem}
 .nav-toggle{min-width:89px;padding:7px 8px;gap:6px;font-size:.78rem}
 .nav-toggle-icon{width:17px}
 .header-inner{gap:7px}
 .mobile-contact-bar a{font-size:.83rem}
 .mobile-contact-bar{gap:5px;padding-inline:6px}
}
@media(prefers-reduced-motion:reduce){.hero-photo img{animation:none}}


/* v1.1 (2026-10-14): reference-inspired responsive desktop / tablet homepage */
:root {--orange:#df7b18; --deep:#174b3e; --green:#276850}
@media(min-width:1161px){
 .wrap{width:min(1420px,calc(100% - 76px))}
 .site-header{background:#fffdf9}
 .header-inner{display:grid;grid-template-columns:1fr;gap:0;padding:14px 0 0;min-height:0}
 .site-header .brand{width:max-content;margin-bottom:10px}
 .site-header .brand img{height:60px;width:60px;object-fit:contain}
 .site-header .brand strong{font-size:1.55rem;line-height:1.24}
 .site-header .brand .brand-affiliation{font-size:.76rem}
 .site-nav{width:100%;grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 0 12px;border-top:1px solid #efefe6}
 .site-nav>a{font-size:clamp(.78rem,.95vw,.91rem);font-weight:800;white-space:normal;line-height:1.45;padding:7px 3px}
 .site-nav a.nav-cta{padding:10px 19px;border-radius:12px;white-space:nowrap}
 .top-strip{font-size:.83rem}
 .top-strip .wrap{min-height:40px}
}
.site-header .brand img,.footer-brand img {object-fit:contain}
.hero{background:linear-gradient(104deg,#fff9e8 0%,#fffdf5 46%,#e9f2e7 100%);overflow:hidden}
.hero::before{content:"";position:absolute;left:-100px;bottom:80px;width:270px;height:270px;border-radius:50%;background:radial-gradient(circle,#f2d06a4d 0 10%,transparent 68%);pointer-events:none}
.hero .wave-bottom{display:none}
.hero-grid{padding-top:31px;padding-bottom:19px;min-height:unset;gap:0;grid-template-columns:1.01fr .99fr;align-items:center}
.hero-copy{z-index:2;position:relative;padding:19px 0 20px}
.hero-copy .kicker{padding:5px 13px;font-size:.77rem;margin:0}
.hero-copy h1{color:#124c40;font-weight:900;font-size:clamp(2.9rem,4.7vw,5.35rem);line-height:1.27;letter-spacing:.025em;margin:15px 0 15px;white-space:nowrap}
.hero-highlight{color:#ed9516}
.hero-copy .dot{color:#ed9516}
.hero-statement{color:#195445;font-size:clamp(1.15rem,1.62vw,1.85rem);line-height:1.5;margin-bottom:13px}
.hero-statement strong{color:#195445;box-shadow:none}
.hero-caption{color:#4b6256;line-height:1.78;max-width:620px;margin-bottom:8px;font-size:clamp(.89rem,1.02vw,1.06rem)}
.hero-professional{max-width:625px;gap:8px;font-size:clamp(.84rem,.93vw,.99rem);color:#305f4c;font-weight:730;line-height:1.52;margin:8px 0 0}
.hero-professional span{min-width:23px;height:23px}
.hero-buttons{margin:18px 0 9px;gap:12px}
.hero-buttons .btn{min-height:53px;padding:12px 24px;border-radius:13px;font-size:clamp(.87rem,1.04vw,1.03rem)}
.hero-note{margin:7px 0 0;font-size:clamp(.8rem,.91vw,.96rem);color:#2e7351}
.hero-photo{align-self:stretch;justify-self:stretch;min-height:410px;margin:-32px -60px -20px -15px;aspect-ratio:unset;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:hidden;position:relative}
.hero-photo:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#fffaf0 0%,rgba(255,250,240,.84) 6%,rgba(255,250,240,.18) 31%,transparent 52%);pointer-events:none}
.hero-photo:after{content:"";position:absolute;z-index:2;right:15px;bottom:10px;width:90px;height:90px;opacity:.85;background:url('../img/himawari-mark.png') center / contain no-repeat;pointer-events:none}
.hero-photo img{width:100%;height:100%;max-height:570px;min-height:450px;object-fit:cover;object-position:54% 42%;border-radius:0;display:block}
.hero-benefits{position:relative;z-index:3;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 0 18px}
.benefit-tile{background:rgba(255,255,255,.94);border:1px solid #f0e9d6;border-radius:16px;box-shadow:0 7px 20px rgba(84,79,47,.06);padding:17px 13px;display:flex;align-items:flex-start;gap:10px;text-decoration:none;color:#245646;min-width:0;transition:transform .2s,box-shadow .2s}
.benefit-tile:hover{color:#194a38;transform:translateY(-3px);box-shadow:0 12px 23px rgba(61,88,58,.1)}
.benefit-icon{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;border-radius:13px;background:#fff1d2;color:#e9a72a;font-weight:800;font-size:1.65rem;line-height:1}
.benefit-tile strong{display:block;font-size:clamp(.8rem,1.02vw,1.02rem);line-height:1.38;font-weight:850}
.benefit-tile em{font-style:normal;color:#ec8619}
.benefit-tile small{display:block;color:#65756c;font-size:clamp(.66rem,.76vw,.82rem);line-height:1.5;margin-top:5px}
.trust-strip{padding:22px 0 25px;background:#fffefa;border-bottom:1px solid #edf1e8}
.trust-strip h2{color:#1b5b47;font-size:clamp(1.1rem,1.65vw,1.42rem);margin:0 0 20px;font-weight:900}
.trust-sun{font-size:1.36em;color:#e5ae3f;vertical-align:-.07em;margin-right:8px}
.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.trust-grid>div{min-width:0;display:flex;gap:12px;align-items:center;border-right:1px solid #e9ede4;padding-right:12px}
.trust-grid>div:last-child{border-right:0}
.trust-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;background:#fff3d7;border-radius:50%;color:#e0a02e;font-size:1.6rem;line-height:1}
.trust-grid strong{display:block;color:#a96b28;font-size:clamp(.79rem,.92vw,1rem);font-weight:850;line-height:1.5}
.trust-grid small{display:block;color:#63746c;font-size:clamp(.69rem,.77vw,.84rem);line-height:1.5}
/* Tablet screens: visual priority to legible text and an uncropped counseling photo. */
@media(min-width:701px) and (max-width:1160px){
 .wrap{width:min(100% - 44px,1070px)}
 .hero-grid{grid-template-columns:1.03fr .97fr;padding:24px 0 20px;gap:0;min-height:unset}
 .hero-copy h1{font-size:clamp(2.3rem,4.8vw,3.6rem);line-height:1.32;white-space:normal}
 .hero-statement{font-size:clamp(1rem,1.76vw,1.35rem)}
 .hero-photo{min-height:385px;margin:0 -21px 0 -9px;align-self:stretch;aspect-ratio:unset;border:0;border-radius:0;box-shadow:none}
 .hero-photo img{min-height:385px;height:100%;object-position:47% center}
 .hero-photo:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#fffaf0 0%,rgba(255,250,240,.54) 16%,transparent 48%)}
 .hero-photo:after{content:"";position:absolute;right:10px;bottom:5px;width:59px;height:59px;background:url('../img/himawari-mark.png') center / contain no-repeat}
 .hero-copy .kicker{font-size:.7rem}
 .hero-professional{font-size:.82rem}
 .hero-buttons .btn{min-height:47px;font-size:.8rem;padding:11px 14px}
 .hero-benefits{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:17px;gap:9px}
 .benefit-tile{padding:12px;min-height:86px}
 .benefit-tile strong{font-size:.89rem}
 .benefit-tile small{font-size:.75rem}
 .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
 .trust-grid>div:nth-child(2){border-right:0}
}
@media(max-width:700px){
 .hero-grid{display:flex;flex-direction:column;gap:10px;padding:25px 0 12px;align-items:stretch}
 .hero-copy{padding:0}
 .hero-copy .kicker{font-size:.75rem;margin:0}
 .hero-copy h1{font-size:clamp(2.4rem,10.5vw,3.7rem);margin:12px 0;line-height:1.31;white-space:normal}
 .hero-statement{font-size:1.15rem;line-height:1.58}
 .hero-caption{font-size:.92rem;line-height:1.7}
 .hero-professional{font-size:.86rem}
 .hero-buttons{margin:15px 0 8px;gap:9px}
 .hero-buttons .btn{min-height:48px}
 .hero-note{font-size:.78rem;line-height:1.55;margin:8px 0 0}
 .hero-photo{border:0;border-radius:17px;box-shadow:none;aspect-ratio:1.72;min-height:unset;width:100%;margin:5px 0 0;overflow:hidden;max-width:none}
 .hero-photo img{min-height:unset;max-height:none;width:100%;height:100%;object-position:50% 40%}
 .hero-photo:after{content:"";position:absolute;right:7px;bottom:8px;width:50px;height:50px;background:url('../img/himawari-mark.png') center / contain no-repeat;opacity:.75}
 .hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px 0 18px}
 .benefit-tile{padding:11px 9px;gap:8px;border-radius:12px;align-items:flex-start}
 .benefit-icon{flex:0 0 29px;width:29px;height:29px;border-radius:9px;font-size:1.24rem}
 .benefit-tile strong{font-size:.82rem}
 .benefit-tile small{font-size:.7rem;line-height:1.45}
 .benefit-tile:last-child{grid-column:1/-1}
 .trust-strip{padding:21px 0 27px}
 .trust-strip h2{font-size:1.05rem;line-height:1.5}
 .trust-grid{grid-template-columns:1fr 1fr;gap:15px 12px}
 .trust-grid>div{border:none;display:block;padding-right:0}
 .trust-icon{height:37px;width:37px;margin-bottom:7px;font-size:1.26rem}
 .trust-grid strong{font-size:.79rem}
 .trust-grid small{font-size:.69rem}
}
@media(max-width:380px){
 .hero-copy h1{font-size:clamp(2.05rem,10.5vw,2.8rem)}
 .hero-photo{aspect-ratio:1.55}
 .benefit-tile strong{font-size:.74rem}
 .benefit-tile small{font-size:.66rem}
 .benefit-tile{gap:5px}
}

/* v1.2 : volunteer/community, online-learning, callback notes */
.phone-callback-note{color:#edf5e6;font-size:.78rem;font-weight:700;margin-left:10px;white-space:nowrap}
.top-strip .wrap{flex-wrap:wrap;row-gap:2px}
.footer-phone-note{font-size:.82rem!important;color:#f6e1a1!important;margin-top:8px!important}
.mobile-callback-short{display:none}
.clear-list{margin:15px 0;padding-left:1.25rem;line-height:1.9;color:#45584d}
.clear-list li{padding-left:2px;margin:0 0 3px}
.volunteer-cards .feature-card{min-height:unset}
.small-print{font-size:.85rem!important;color:#607269!important;line-height:1.7}
.volunteer-callout{margin:26px 0;background:#eef6e9;border:1px solid #d5e6d4;padding:27px 30px;border-radius:19px}
.volunteer-callout h2{font-size:clamp(1.25rem,2.1vw,1.75rem);margin:0 0 12px;color:#22583f}
.volunteer-callout p{margin-bottom:10px}
.volunteer-home-section{background:#f4f8ee}
.volunteer-home-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:35px;align-items:center}
.volunteer-home-grid h2{color:#205a45;font-size:clamp(1.55rem,2.7vw,2.5rem);line-height:1.5}
.volunteer-home-grid p{line-height:1.85}
.fee-summary{margin:26px 0 0;background:#fff;border:1px solid #e8e7d9;border-radius:18px;padding:25px 27px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.fee-summary h3{color:#205a45;font-size:1.4rem;margin:4px 0 8px}
.fee-summary p{margin:4px 0}
.fee-numbers{flex:none;min-width:210px}
.fee-numbers p{display:flex;gap:10px;align-items:baseline;justify-content:flex-end;color:#3b604d;font-weight:700;white-space:nowrap}
.fee-numbers strong{font-size:1.45rem;color:#ca7027}
.fee-numbers small{font-size:.77rem;color:#708276}
.reference-links{display:flex;flex-direction:column;gap:9px;margin:20px 0}
.reference-links a{display:block;width:fit-content;max-width:100%;overflow-wrap:anywhere;border-radius:12px;background:#eaf2e7;padding:14px 16px;font-weight:750;color:#245946;text-decoration:none}
.reference-links a:hover{background:#d5e7d1}
@media(max-width:1300px) and (min-width:1161px){.site-nav{gap:5px!important}.site-nav>a{font-size:.69rem!important;padding-left:1px!important;padding-right:1px!important}}
@media(max-width:1000px){.volunteer-home-grid{grid-template-columns:1fr}.volunteer-home-grid .soft-panel{max-width:700px}}
@media(max-width:767px){
 .mobile-contact-bar .mobile-contact-phone{gap:0 7px;row-gap:0}
 .mobile-contact-bar .mobile-callback-short{display:block;flex-basis:100%;text-align:center;color:rgba(255,255,255,.95);font-size:.66rem;line-height:1.1;letter-spacing:.03em;font-weight:650}
 .top-strip .phone-callback-note{font-size:.7rem;white-space:normal;margin:0 0 2px auto;text-align:right;width:100%}
 .volunteer-callout{padding:22px 17px}
 .fee-summary{flex-direction:column;align-items:flex-start;padding:23px 19px}
 .fee-numbers{width:100%;min-width:0}
 .fee-numbers p{justify-content:flex-start;flex-wrap:wrap}
}
@media(min-width:768px) and (max-width:1200px){.phone-callback-note{white-space:normal;margin-left:3px}}

/* v1.3.2: volunteer discovery and earlier homepage feature */
.volunteer-home-section{padding-top:44px;padding-bottom:44px;scroll-margin-top:120px}
.site-nav a[aria-current="page"]{color:var(--green);font-weight:900}
@media(min-width:1161px){.site-nav{gap:clamp(5px,.7vw,11px)}.site-nav>a{font-size:clamp(.71rem,.82vw,.88rem);padding-inline:2px}}
@media(max-width:700px){.volunteer-home-section{padding-top:34px;padding-bottom:36px}}

/* v1.3.3 - six quick links, news/resources, homepage QR and X */
@media(min-width:1161px){.hero-benefits{grid-template-columns:repeat(6,minmax(0,1fr))}.benefit-tile{padding:13px 9px;gap:8px}.benefit-icon{flex-basis:34px;width:34px;height:34px;font-size:1.4rem}.benefit-tile strong{font-size:clamp(.73rem,.9vw,.92rem)}.benefit-tile small{font-size:.7rem}}
@media(max-width:700px){.hero-benefits .benefit-tile:last-child{grid-column:auto}}
.home-updates{background:linear-gradient(145deg,#fffaf1,#f4f8ef)}
.home-updates-grid{display:grid;grid-template-columns:1.25fr 1fr .75fr;gap:16px;align-items:start}
.home-news-card,.home-resource-card,.home-qr-card{background:#fff;border:1px solid #e4eadc;border-radius:18px;box-shadow:0 7px 20px rgba(40,70,50,.04);padding:24px;min-width:0}
.home-news-card h3,.home-resource-card h3,.home-qr-card h3{color:#235b48;font-size:1.16rem;margin:0 0 10px}
.home-news-items{list-style:none;margin:8px 0 22px;padding:0}
.home-news-items li{padding:13px 0;border-bottom:1px solid #edf0e7;display:grid;gap:5px}
.home-news-items time{color:#ad6d1d;font-size:.82rem;font-weight:800}
.home-news-items span,.home-resource-card p,.home-qr-card p{color:#52685b;line-height:1.75;font-size:.92rem}
.home-news-card .btn{min-height:40px;padding:10px 14px;font-size:.86rem}
.home-resources{display:grid;gap:12px}
.home-resource-card{padding:17px 19px}
.home-resource-card p{margin:0 0 8px}
.home-resource-card a{font-weight:800;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.home-qr-card{text-align:center;display:flex;align-items:center;flex-direction:column;gap:8px}
.home-qr-card h3{font-size:1rem;margin:0}
.home-qr-card p{margin:0}
.home-qr-card img{display:block;width:min(100%,192px);height:auto;aspect-ratio:1;border-radius:8px}
.home-qr-card small{font-size:.66rem;color:#667c70;overflow-wrap:anywhere}
.news-next{margin-top:35px;background:#edf5e9;padding:24px;border-radius:18px}
.news-next h2{font-size:1.25rem;margin:0 0 8px;color:#285f48}
.news-next p{margin:0 0 13px}
@media(max-width:1100px){.home-updates-grid{grid-template-columns:1fr 1fr}.home-qr-card{grid-column:2}}
@media(max-width:700px){.home-updates-grid{grid-template-columns:1fr}.home-qr-card{grid-column:auto}.home-news-card,.home-qr-card{padding:19px}.home-qr-card img{width:176px}}


/* v1.3.4: Early, scannable homepage QR and social link + multidisciplinary support diagram */
.cross-device-panel{background:#f1f7ed;border-top:1px solid #e3edda;border-bottom:1px solid #e3edda;padding:25px 0}
.cross-device-layout{display:grid;grid-template-columns:minmax(0,1fr) 166px;gap:26px;align-items:center;max-width:1050px}
.cross-device-message h2{font-size:clamp(1.25rem,2vw,1.8rem);margin:5px 0 8px;color:#205a45;line-height:1.45}
.cross-device-message>p:not(.eyebrow){font-size:.95rem;line-height:1.7;margin:0 0 10px;color:#465f51}
.cross-device-social{display:flex;gap:12px;align-items:center;margin-top:14px}
.cross-device-social>span{width:39px;height:39px;flex:0 0 39px;border-radius:11px;background:#fff;border:1px solid #d4e2d5;color:#194d39;display:grid;place-items:center;font-size:1.3rem}
.cross-device-social div{display:flex;flex-direction:column;gap:2px;min-width:0}
.cross-device-social strong{font-size:.87rem;color:#254e3d;line-height:1.5}
.cross-device-social a{font-weight:800;text-decoration:underline;text-underline-offset:3px;font-size:.91rem}
.cross-device-qr{background:#fff;padding:10px;border-radius:14px;box-shadow:0 6px 18px rgba(27,65,38,.08);border:1px solid #d7e2d4;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;text-decoration:none}
.cross-device-qr img{display:block;width:140px;height:140px;object-fit:contain;image-rendering:auto}
.cross-device-qr span{font-size:.76rem;font-weight:800;color:#305d47}
.network-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);align-items:center;gap:26px;background:#fffdf7;border:1px solid #eadfc7;border-radius:20px;padding:22px 25px;margin-top:30px}
.network-teaser h3{font-size:clamp(1.16rem,1.8vw,1.55rem);line-height:1.48;color:#205640;margin:4px 0 8px}
.network-teaser p:not(.eyebrow){color:#4e6355;font-size:.91rem;line-height:1.75;margin:0 0 11px}
.network-teaser a img{display:block;width:100%;height:auto;aspect-ratio:1236/848;object-fit:contain;border-radius:10px}
.network-detail{background:#f8faf5;scroll-margin-top:135px}
.network-diagram{max-width:1040px;margin:0 auto;text-align:center}
.network-diagram>a{display:block;border-radius:16px;border:1px solid #e0e8d8;background:#fff;padding:9px}
.network-diagram img{display:block;width:100%;height:auto;border-radius:10px}
.network-diagram figcaption{font-size:.86rem;color:#546858;margin-top:12px;line-height:1.8}
@media(max-width:800px){.network-teaser{grid-template-columns:1fr;gap:14px}.network-teaser>a{max-width:600px;margin:0 auto}.cross-device-layout{grid-template-columns:minmax(0,1fr) 150px;gap:16px}.cross-device-qr img{width:126px;height:126px}}
@media(max-width:540px){.cross-device-panel{padding:21px 0}.cross-device-layout{grid-template-columns:1fr;gap:14px}.cross-device-qr{width:158px;justify-self:center}.cross-device-qr img{width:130px;height:130px}.cross-device-message h2{font-size:1.35rem}.cross-device-message>p:not(.eyebrow){font-size:.88rem}.cross-device-social{margin-top:10px}.network-teaser{padding:20px 16px;margin-top:24px}.network-detail{scroll-margin-top:75px}}

/* v1.3.4 resources: QR now lives near the beginning; balance remaining cards */
.home-updates-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
@media(max-width:1100px){.home-updates-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-updates-grid{grid-template-columns:1fr}}

/* v1.3.5: original Study video references */
.study-video-list { padding-left: 1.25rem; line-height: 1.7; }
.study-video-list li { margin: .7rem 0; overflow-wrap: anywhere; }
.study-video-list a { color: var(--forest, #225a43); text-decoration: underline; text-underline-offset: .2em; }

/* v1.3.7 adult withdrawal support and public services */
.adult-support-info .section-heading{max-width:860px;margin-left:auto;margin-right:auto}
.adult-support-info .section-heading>p:not(.eyebrow){line-height:1.85;color:#4f6655;margin-top:12px}
.pension-highlight{max-width:940px;margin:28px auto 32px;padding:clamp(20px,3.6vw,34px);border:1px solid #d4e5d4;border-radius:22px;background:linear-gradient(115deg,#f1f8ec,#fffdf5)}
.pension-highlight h3{font-size:clamp(1.5rem,2.6vw,2rem);color:#244e3a;margin:7px 0 13px}
.pension-highlight>p{line-height:1.85;margin:12px 0;color:#3b5746}
.pension-amount{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:20px 0;padding:19px 22px;border-radius:14px;background:#fff;border:1px solid #dce8db}
.pension-amount span{color:#3b6550;font-size:.92rem;font-weight:650}
.pension-amount strong{font-size:clamp(1.75rem,4.5vw,2.65rem);color:#1d6547;line-height:1.3;letter-spacing:.02em}
.pension-highlight .support-smallnote{font-size:.84rem;color:#607365;line-height:1.7}
.support-system-cards{margin-top:24px}
.support-system-cards .feature-card{display:flex;flex-direction:column;gap:11px}
.support-system-cards .feature-card h3{line-height:1.45;margin:0}
.support-system-cards .feature-card p{flex:1;line-height:1.8;margin:0}
.support-system-cards .feature-card a{font-size:.88rem;overflow-wrap:anywhere;margin-top:auto}
.support-information-note{margin:24px 0 0;font-size:.85rem;color:#536d5b;line-height:1.7}
@media(max-width:560px){.pension-highlight{padding:19px 17px}.pension-amount{padding:16px}.adult-support-info .section-heading{text-align:left}}

/* v1.3.8: parent-aftercare / 8050 and initial-visit guidance */
.after-parents-section .section-heading{max-width:900px;margin-inline:auto}
.after-parents-section .section-heading p:not(.eyebrow){color:#4e6256;line-height:1.85;margin-top:11px}
.after-parents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:24px 0}
.after-parents-card{background:#fff;border:1px solid #e1e8d9;border-radius:16px;padding:20px 22px;min-width:0}
.after-parents-card h3{color:#245a43;margin:0 0 9px;font-size:1.13rem}
.after-parents-card p{color:#496052;margin:0;line-height:1.83;font-size:.95rem}
.after-parents-action{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:20px;align-items:start;margin-top:26px}
.after-parents-action>div{padding:24px;background:#edf6ea;border-radius:17px}
.after-parents-action h3{color:#255840;margin:0 0 11px;font-size:1.21rem;line-height:1.5}
.after-parents-action p{color:#465e4e;line-height:1.85;margin:0 0 12px}
.after-parents-action .btn{margin-top:12px}
.after-parents-reference{background:#fffaf0;border:1px solid #eee0c4;padding:22px;border-radius:17px;min-width:0}
.after-parents-reference p{font-size:.93rem}
.initial-visit-explainer{max-width:940px;margin:0 auto 29px;padding:23px 26px;border-left:5px solid #dbac55;background:#fffaf0;border-radius:9px 17px 17px 9px}
.initial-visit-explainer h4{color:#6e501d;font-size:1.2rem;margin:0 0 11px}
.initial-visit-explainer p{line-height:1.84;color:#4c5445;margin:0 0 12px}
.initial-visit-explainer a{font-weight:750}
.support-system-cards .support-smallnote{font-size:.83rem;color:#667466}
@media(max-width:750px){.after-parents-grid,.after-parents-action{grid-template-columns:1fr}.after-parents-action>div,.after-parents-reference{padding:21px 18px}.initial-visit-explainer{padding:20px 17px}}


/* v1.4.0: Additional 8050 navigation item; avoid tight desktop header. */
@media (min-width:1161px) and (max-width:1450px){
  .nav-toggle{display:flex}
  .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffefa;flex-direction:column;align-items:stretch;gap:0!important;box-shadow:0 17px 22px rgba(0,0,0,.1);padding:8px 22px 22px;max-height:calc(100vh - 110px);overflow-y:auto}
  .site-header.nav-open .site-nav{display:flex}
  .site-nav>a{padding:13px 10px!important;font-size:.95rem!important;border-bottom:1px solid var(--line);white-space:normal}
  .site-nav a.nav-cta{margin:16px 0 0;justify-content:center}
}
/* Keep the 8050 and medical/welfare illustrations readable on narrow screens. */
.future-steps .step-num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#e6f0dc;color:#275a40;font-weight:800;margin-bottom:14px}
.future-steps .feature-card{min-width:0}
@media(max-width:767px){.after-parents-section .after-parents-action{padding:18px}.network-detail .section-heading{text-align:left}}


/* v1.4.3: consultation intake and optional reference materials */
.consultation-preparation .section-heading{margin-bottom:30px}
.consultation-preparation .section-heading p:last-child{max-width:800px;margin:0 auto}
.consultation-preparation-cards .feature-card{min-height:unset;gap:12px}
.consultation-preparation-cards .feature-card h3{margin:0 0 5px}
.consultation-preparation-cards .feature-card p{flex:none;margin:0;line-height:1.85}
.consultation-preparation-cards .consultation-reassurance{padding:14px 16px;background:#edf5e8;border-radius:12px;color:#225a3d}

/* v1.4.4: Age-specific consultation information before inquiry */
.consultation-routing{scroll-margin-top:110px}
.consultation-routing-cards .feature-card{min-height:unset;gap:12px;padding:27px 28px}
.consultation-routing-cards .feature-card h3{margin:0;font-size:1.18rem;color:#205743;line-height:1.5}
.consultation-routing-cards .feature-card p{margin:0;line-height:1.8}
.consultation-routing-cards .routing-materials{background:#f5f8f2;padding:12px 14px;border-radius:11px;font-size:.9rem;color:#526558}
.routing-card-link{display:inline-flex;gap:8px;align-items:center;justify-content:space-between;margin-top:auto;padding:12px 14px;border:1px solid #b8d0bb;border-radius:12px;color:#175744!important;font-weight:700;text-decoration:none!important;line-height:1.55}
.routing-card-link:hover,.routing-card-link:focus-visible{background:#edf7ec}
.consultation-routing-bottom{margin:22px auto 0;display:flex;gap:20px;align-items:center;justify-content:space-between;background:#fff9eb;border:1px solid #e9dfc4;border-radius:16px;padding:22px 26px}
.consultation-routing-bottom p{margin:0;line-height:1.85}
.consultation-routing-bottom .btn{flex-shrink:0}
.contact-preparation-links{background:#f5f9f3;border:1px solid #dce7d7;border-radius:17px;padding:21px 24px;margin:0 0 26px}
.contact-preparation-links>p{margin:0;line-height:1.75}
.contact-preparation-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:13px}
.contact-preparation-actions a{border:1px solid #bfd4c1;color:#175744;font-weight:700;border-radius:10px;background:white;padding:10px 14px;text-decoration:none}
.contact-preparation-actions a:hover,.contact-preparation-actions a:focus-visible{background:#eaf5e8}
.contact-preparation-links .contact-preparation-optional{font-size:.85rem;color:#607265;margin-top:12px}
@media(max-width:760px){
  .consultation-routing-bottom{flex-direction:column;align-items:stretch;padding:21px 18px}
  .consultation-routing-bottom .btn{width:100%}
  .consultation-routing-cards .feature-card{padding:23px 20px}
  .contact-preparation-links{padding:19px 17px}
  .contact-preparation-actions{flex-direction:column}
  .contact-preparation-actions a{display:block}
}

/* Ensure linked preparation details are visible below the sticky header. */
.consultation-preparation{scroll-margin-top:110px}

/* v1.4.5 — education pathways */
.education-highlight{margin-top:26px;padding:30px 34px}
.education-highlight h3{margin-top:0}
.education-cards .feature-card{min-height:unset}
.education-cards .feature-card h3{margin-top:0}
.education-cards .feature-card p{flex:0 1 auto}
.education-cards .feature-card .text-link{margin-top:auto}
.education-table-wrap{margin-top:0;margin-bottom:28px}
.education-table th{white-space:normal}
.education-table thead th{background:#e8f0e4;color:#234735}
.education-table tbody th{width:28%;min-width:140px}
.education-consult{background:#f2f7ec}
.education-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px}
.education-actions .btn{font-size:.92rem}
@media(max-width:650px){.education-highlight{padding:21px 19px}.education-table th,.education-table td{padding:13px 12px}.education-table tbody th{min-width:120px}.education-actions{flex-direction:column;align-items:stretch}.education-actions .btn{text-align:center;justify-content:center}}
