/* GROWPAS: new shared subpage design, independent of legacy CSS */
:root{--navy:#103967;--blue:#168fe7;--cyan:#0ca4be;--mint:#23c79e;--ink:#34536c;--line:#dcebf1}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button{font:inherit}
#grps-independent-header{height:94px;position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);box-shadow:0 2px 16px #11385c12}.grps-header-inner{height:100%;width:min(1200px,calc(100% - 44px));margin:auto;display:flex;align-items:center;justify-content:space-between}#grps-header-logo img{width:230px;display:block}.menu-button{border:0;border-radius:50%;background:#0878c9;width:54px;height:54px;display:grid;place-items:center;cursor:pointer}.menu-button img{width:28px;height:28px;object-fit:contain}.menu-overlay{position:fixed;inset:0;background:#082a49a8;z-index:110;opacity:0;visibility:hidden;transition:.2s}.menu-overlay.active{opacity:1;visibility:visible}.side-menu{position:fixed;z-index:111;right:0;top:0;height:100dvh;width:min(380px,88vw);background:#fff;transform:translateX(105%);transition:transform .25s ease;padding:36px 30px;overflow:auto;box-shadow:-10px 0 30px #0002}.side-menu.active{transform:none}.menu-close{float:right;border:0;background:none;color:var(--navy);font-size:36px;cursor:pointer}.menu-label{font-size:13px;color:var(--cyan);font-weight:700;letter-spacing:.1em;margin:22px 0 28px}.menu-links{display:grid;gap:0}.menu-links a{padding:15px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:700;color:var(--navy)}.menu-links small{display:block;color:var(--cyan);font-size:10px;letter-spacing:.12em;margin-bottom:3px}.menu-footer{font-size:12px;margin-top:38px;color:#68869d}body.menu-open{overflow:hidden}
.page-hero{background:radial-gradient(circle at 88% 10%,#c5f7e880,transparent 30%),linear-gradient(130deg,#eaf9ff,#fff 66%);padding:86px 24px 74px}.container{width:min(1140px,100%);margin:auto}.eyebrow{font-size:13px;letter-spacing:.18em;font-weight:700;color:var(--cyan);margin:0 0 14px}.page-hero h1{color:var(--navy);font-size:clamp(36px,5vw,60px);line-height:1.3;margin:0}.page-hero p{max-width:780px;line-height:1.95;margin:18px 0 0}.section{padding:80px 24px}.section:nth-of-type(even){background:#f6fbfd}.section h2{color:var(--navy);font-size:clamp(26px,3vw,36px);margin:0 0 20px}.section h3{color:var(--navy)}.lead{line-height:2;max-width:880px}.pill-link{display:inline-flex;justify-content:center;align-items:center;border-radius:100px;padding:16px 34px;color:white;background:linear-gradient(100deg,#097bce,#25c3a3);font-weight:700;min-width:220px}.cta{padding:74px 24px;text-align:center;background:#eaf9fd}.cta h2{color:var(--navy);margin:0 0 16px}.cta p{line-height:1.9;margin:0 0 26px}
.grps-site-footer{padding:44px 20px 48px;background:#fff;text-align:center}.grps-footer-logo{display:inline-block;width:110px}.grps-footer-logo img{width:100%;display:block}
/* Results */.year-block{margin-bottom:66px}.year-heading{display:flex;align-items:baseline;gap:20px;border-bottom:2px solid #b9e5f0;padding-bottom:15px;margin-bottom:20px}.year-number{font-size:clamp(34px,5vw,56px);font-weight:700;color:var(--blue)}.year-title{font-size:20px;font-weight:700;color:var(--navy)}.result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.result-item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:19px 22px;min-width:0}.organization{font-size:12px;color:#1597b5;font-weight:700;margin-bottom:8px}.project{font-size:15px;line-height:1.7;color:var(--navy);overflow-wrap:anywhere}.results-more{display:flex;align-items:center;gap:18px;background:#effafd;padding:24px;border-radius:14px;margin-top:24px}.results-more-icon{width:60px}.results-more-text{line-height:1.8}
/* Services */.feature-grid,.overview-grid,.task-grid,.problem-grid,.coverage-grid{display:grid;gap:18px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature,.overview-card,.task,.problem{border:1px solid var(--line);border-radius:16px;background:#fff;padding:24px}.feature p,.overview-card p,.task p{font-size:14px;line-height:1.85}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-card img{width:100%;height:210px;object-fit:cover;border-radius:12px}.overview-card h3{margin:10px 0}.overview-no,.service-number{color:var(--cyan);font-weight:800;font-size:34px}.overview-en{font-size:11px;color:#6b8b9d;letter-spacing:.12em}.service-block+.service-block{margin-top:75px}.service-top{display:flex;align-items:center;gap:35px;margin-bottom:28px}.service-top>div{flex:1}.service-top img{width:38%;max-height:280px;object-fit:cover;border-radius:18px}.service-top h2{margin:5px 0 12px}.service-top p{line-height:1.9}.task-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.task{text-align:center;padding:24px 15px}.task-icon{height:68px;width:68px;object-fit:contain}.task-no{color:var(--cyan);font-weight:700;font-size:12px}.task h4{color:var(--navy);margin:12px 0 8px}.task p{font-size:12px;margin:0}.problem-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.problem{font-weight:700;line-height:1.8;text-align:center}.coverage-grid{grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0}.coverage-item{border-bottom:1px solid var(--line);padding:14px 10px;line-height:1.7}.coverage-item::before{content:'✓';color:var(--cyan);margin-right:10px;font-weight:700}
/* Company */.overview-table{border:1px solid var(--line);border-radius:16px;overflow:hidden}.overview-row{display:grid;grid-template-columns:210px 1fr;border-bottom:1px solid var(--line)}.overview-row:last-child{border-bottom:0}.overview-label{background:#f1fafd;padding:18px 22px;font-weight:700;color:var(--navy)}.overview-value{padding:18px 22px;line-height:1.8}.overview-value ul{margin:0;padding-left:22px}.access-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:30px}.access-item{padding:20px 0;border-bottom:1px solid var(--line)}.access-label{font-weight:700;color:var(--navy)}.map-card{min-height:330px}.map-card iframe{width:100%;height:100%;min-height:330px;border:0;border-radius:14px}
@media(max-width:850px){.feature-grid,.overview-grid,.problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-grid{grid-template-columns:1fr}}
@media(max-width:600px){#grps-independent-header{height:70px}#grps-header-logo img{width:168px}.menu-button{width:44px;height:44px}.menu-button img{width:23px;height:23px}.page-hero{padding:60px 20px 50px}.section{padding:55px 18px}.result-list,.feature-grid,.overview-grid,.problem-grid,.coverage-grid{grid-template-columns:1fr}.task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.year-heading{gap:12px}.year-title{font-size:17px}.result-item{padding:16px}.service-top{display:block}.service-top img{width:100%;margin-top:18px}.overview-row{grid-template-columns:1fr}.overview-label{padding:10px 15px}.overview-value{padding:13px 15px}.grps-footer-logo{width:96px}}
