
:root{--ink:#183551;--deep:#0c2747;--pine:#245987;--olive:#486b91;--gold:#b9a07b;--sand:#e4eaf1;--ivory:#fbfcfd;--mist:#eef4fa;--text:#203448;--muted:#6f8192;--line:#d4dfe9;--fontSerif:'Cormorant Garamond','Noto Serif JP','Yu Mincho',serif;--fontSans:'Noto Sans JP',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--ivory);color:var(--text);font-family:var(--fontSans);font-weight:350;line-height:1.95;letter-spacing:.025em}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #699dc9;outline-offset:3px}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.45;font-weight:500}button,input,textarea,select{font:inherit}button{cursor:pointer}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{width:min(1260px,calc(100% - 100px));margin:auto}.slim{width:min(1000px,calc(100% - 100px));margin:auto}.eyebrow{display:inline-flex;align-items:center;gap:16px;letter-spacing:.23em;text-transform:uppercase;font-size:10px;font-weight:650;color:var(--gold)}.eyebrow:before{content:'';display:inline-block;width:28px;height:1px;background:currentColor}.eyebrow.light{color:#e9d7b8}.display{font-family:var(--fontSerif);font-weight:400;letter-spacing:.015em;line-height:1.34;font-size:clamp(39px,5.15vw,75px)}.display.jp{font-size:clamp(34px,4.45vw,62px);line-height:1.65}.h2{font-family:var(--fontSerif);font-size:clamp(33px,3.6vw,52px);font-weight:450;line-height:1.5;letter-spacing:.035em}.h2.jp{font-size:clamp(28px,3.25vw,42px);line-height:1.65}.lead{font-size:clamp(15px,1.4vw,17px);line-height:2.1;color:#607587}.muted{color:var(--muted)}.tiny{font-size:11px;line-height:1.9;color:var(--muted)}.rule{display:block;height:1px;width:56px;background:var(--gold);margin:31px 0}.section{padding:126px 0}.section.sm{padding:92px 0}.section.ivory{background:var(--ivory)}.section.mist{background:var(--mist)}.section.dark{background:var(--deep);color:#f8fbfd}.section.dark .lead{color:#becee1}.section.dark .muted,.section.dark .tiny{color:#a8bbd2}.btn{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;padding:15px 21px 15px 26px;border:1px solid var(--pine);background:var(--pine);color:#fff;font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;min-height:54px;transition:background .25s,transform .25s}.btn:hover{background:#346d9e;transform:translateY(-2px)}.btn:after{content:'↗';font-size:18px;line-height:1;font-weight:400}.btn.outline{background:transparent;color:var(--pine);border-color:#8da7c2}.btn.outline:hover{background:#edf5fb}.btn.light{background:#f8fbfd;color:var(--deep);border-color:#f8fbfd}.btn.light:hover{background:#e3edf7}.text-link{display:inline-flex;gap:35px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;padding:0 0 11px;border-bottom:1px solid var(--gold)}.text-link:after{content:'↗';font-size:17px}.header{height:88px;position:sticky;top:0;z-index:80;background:#fbfcfdee;backdrop-filter:blur(18px);border-bottom:1px solid #e4ebf2}.header-inner{width:min(1450px,calc(100% - 72px));height:100%;margin:auto;display:flex;align-items:center;gap:32px}.logo{font-family:var(--fontSerif);font-size:34px;letter-spacing:.13em;font-weight:500;white-space:nowrap;color:var(--deep);line-height:.8}.logo span{display:block;font-family:var(--fontSans);font-size:8px;letter-spacing:.24em;margin-top:13px;font-weight:600}.nav{display:flex;gap:clamp(12px,1.5vw,28px);align-items:center;margin-left:auto}.nav a{font-size:10px;letter-spacing:.08em;font-weight:650;white-space:nowrap;position:relative}.nav a:not(.nav-contact):after{content:'';position:absolute;bottom:-9px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .2s}.nav a:hover:after,.nav a.active:after{transform:scaleX(1)}.nav .nav-contact{padding:10px 14px;border:1px solid var(--pine)}.nav .lang{color:#5d86b2;font-family:serif;font-size:12px}.menu-btn{display:none;margin-left:auto;border:1px solid var(--line);background:none;width:44px;height:44px;align-items:center;justify-content:center;color:var(--deep)}.menu-btn svg{width:21px}.site-hero{position:relative;height:calc(100vh - 88px);min-height:670px;max-height:950px;background:var(--deep);color:white;overflow:hidden}.site-hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%;opacity:.73}.site-hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,25,52,.91) 0%,rgba(14,49,85,.69) 44%,rgba(10,43,77,.12) 100%),linear-gradient(0deg,rgba(4,24,47,.38),transparent 56%)}.site-hero .hero-inner{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:75px 0 110px}.hero-sub{letter-spacing:.19em;text-transform:uppercase;font-size:11px;font-weight:600;color:#e2eafa}.site-hero .display{max-width:850px;margin:24px 0 25px}.site-hero .lead{max-width:680px;color:#f5f9fe;font-size:15px}.hero-bottom{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);width:min(1260px,calc(100% - 100px));display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff65;padding-top:21px;font-size:9px;letter-spacing:.2em;color:#e9f2fb}.hero-bottom span:last-child{font-family:var(--fontSerif);font-style:italic;font-size:16px;letter-spacing:.07em}.page-hero{background:var(--deep);color:white;min-height:490px;position:relative;overflow:hidden}.page-hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.57}.page-hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,34,66,.95),rgba(12,37,70,.67) 60%,rgba(12,37,70,.25))}.page-hero .wrap{min-height:490px;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:82px 0}.page-hero p{color:#e2eef8;max-width:680px}.page-hero .display{margin:22px 0 10px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(42px,7vw,130px);align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.offset-image{position:relative}.offset-image img{aspect-ratio:4/5;object-fit:cover;width:100%;background:#b6c9de}.offset-image:after{content:'';position:absolute;z-index:-1;border:1px solid #a9c3d8;inset:31px -25px -25px 31px}.wide-image{width:100%;height:460px;object-fit:cover;background:var(--pine)}.caption{font-size:10px;letter-spacing:.06em;color:var(--muted);margin-top:12px}.split-card{display:grid;grid-template-columns:1.05fr .95fr;background:#e9f1f8;min-height:490px;overflow:hidden}.split-card:nth-child(even){grid-template-columns:.95fr 1.05fr;background:#e3ecf5}.split-card:nth-child(even)>picture,.split-card:nth-child(even)>img{order:2}.split-card .photo{width:100%;height:100%;object-fit:cover;min-height:390px}.split-card .copy{padding:70px 11%;display:flex;justify-content:center;align-items:flex-start;flex-direction:column}.num{color:var(--gold);font-family:var(--fontSerif);font-size:40px;line-height:1}.split-card h3{font-family:var(--fontSerif);font-size:clamp(29px,3vw,43px);font-weight:450;line-height:1.5;margin:26px 0}.pillar-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pillar{display:block;position:relative;overflow:hidden;min-height:570px;color:#fff;background:var(--pine)}.pillar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s;opacity:.78}.pillar:hover img{transform:scale(1.05)}.pillar:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,26,52,.96),rgba(12,45,76,.34) 72%)}.pillar .content{position:absolute;z-index:2;bottom:0;padding:44px 9%;left:0;right:0}.pillar h3{font-family:var(--fontSerif);font-size:clamp(27px,3.2vw,44px);font-weight:400}.pillar p{color:#e8eff8;font-size:13px;line-height:1.9;max-width:500px}.pillar .go{font-size:12px;letter-spacing:.14em;border-top:1px solid #ffffff70;display:flex;justify-content:space-between;padding-top:14px;margin-top:22px}.headline-block{max-width:810px;margin-bottom:58px}.headline-block.center{text-align:center;margin-left:auto;margin-right:auto}.headline-block.center .eyebrow:before{display:none}.stat-band{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:36px 36px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat .big{font-family:var(--fontSerif);font-size:clamp(43px,4.8vw,68px);line-height:1;color:var(--pine)}.stat .label{font-size:12px;line-height:1.8;margin-top:12px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:steps}.step{padding:28px 27px;background:#f8fbfd;border-top:2px solid var(--gold)}.step .idx{font-family:var(--fontSerif);font-size:38px;color:var(--gold)}.step h3{font-size:15px;margin:14px 0}.step p{font-size:12px;color:#61778e;line-height:1.9}.benefit-list{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.benefit{background:#f7fafc;border:1px solid #dfe9f2;padding:26px 19px;min-height:225px}.benefit .n{font-family:var(--fontSerif);font-size:35px;color:var(--gold)}.benefit h3{font-size:14px;line-height:1.7;margin-top:17px}.benefit p{font-size:11px;line-height:1.85;color:#60778c}.quote-block{border-top:1px solid #8eaac4;border-bottom:1px solid #8eaac4;padding:77px 0;text-align:center}.quote-block h2{font-family:var(--fontSerif);font-size:clamp(29px,4vw,56px);font-weight:400;line-height:1.85;max-width:1000px;margin:22px auto}.research-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.research-card{background:#fff;border:1px solid #e0eaf2;padding:40px;min-height:320px}.research-card.highlight{background:var(--deep);color:#fff}.research-card .metric{font-family:var(--fontSerif);font-size:clamp(48px,5vw,74px);line-height:1.1;color:var(--pine);margin:16px 0}.research-card.highlight .metric{color:#c2a77a}.research-card h3{font-size:19px;margin:17px 0}.research-card p,.research-card li{font-size:12px;line-height:1.95;color:#5b7287}.research-card.highlight p{color:#c5d9e9}.evidence{font-size:10px;color:var(--muted);border-top:1px solid #ddd;margin-top:22px;padding-top:12px}.research-card.highlight .evidence{border-color:#456a91;color:#bad0e4}.evidence a,.reference-list a,.article a:not(.btn){text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--gold)}.bar-pair{margin:20px 0}.bar-row{margin:10px 0;display:grid;grid-template-columns:93px 1fr 80px;align-items:center;gap:12px;font-size:11px}.bar-row strong{text-align:right;font-weight:600}.track{height:11px;background:#e1ebf4;position:relative}.fill{height:100%;background:var(--pine)}.fill.alt{background:#789ec5}.faq details{border-bottom:1px solid var(--line);padding:24px 0}.faq summary{font-weight:500;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:16px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'＋';font-weight:300;font-size:19px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:#637b92;max-width:780px;margin:15px 0 0}.pill{font-size:10px;border:1px solid #a7bed5;color:#365e86;display:inline-block;padding:5px 11px;letter-spacing:.09em}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{background:#fff;padding:39px 31px;border-top:2px solid var(--gold);min-height:237px}.service .icon{font-family:var(--fontSerif);font-size:28px;color:var(--gold)}.service h3{font-size:17px;margin:16px 0}.service p{font-size:12px;color:var(--muted);line-height:1.95}.sample{background:#f5f9fd;border:1px solid #dce7f1;padding:30px}.sample .fake-tag{font-size:9px;color:#896d4f;letter-spacing:.08em}.sample p{font-size:13px;line-height:2}.source-note{font-size:11px;line-height:1.9;background:#edf4fb;padding:18px 24px;border-left:2px solid var(--gold);color:#536e88;margin:26px 0}.cta-panel{padding:78px 9%;border:1px solid #9ab9d5;text-align:center;background:radial-gradient(circle at 15% 10%,#20466f,#0d294a 78%);color:#fff}.cta-panel p{color:#d0e0ef;max-width:600px;margin:15px auto 33px;font-size:13px}.cta-panel h2{font-family:var(--fontSerif);font-size:clamp(27px,4vw,47px);font-weight:400}.footer{background:#091f3a;color:#c9d9e9;padding:75px 0 25px}.footer .top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;border-bottom:1px solid #355578;padding-bottom:65px}.footer .logo{color:white;font-size:40px}.footer .desc{font-size:12px;color:#abc2d9;max-width:320px;margin-top:33px;line-height:2.1}.footer h3{color:#e5d4b9;font-size:10px;letter-spacing:.16em;font-weight:700;text-transform:uppercase;margin-bottom:20px}.footer a{display:block;font-size:12px;margin:12px 0;color:#d9e8f4}.footer a:hover{color:#e9caa2}.footer .bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;margin-top:24px;font-size:10px;color:#98afc5}.inline-nav{display:flex;gap:30px;flex-wrap:wrap;padding:26px 0;border-bottom:1px solid var(--line);margin-top:0}.inline-nav a{font-size:11px;font-weight:600}.text-columns{columns:2;column-gap:45px}.text-columns p{break-inside:avoid}.article{font-size:14px;line-height:2.2}.article h2{font-size:24px;margin:57px 0 18px;border-left:2px solid var(--gold);padding-left:18px}.article h3{font-size:17px;margin:30px 0 14px}.reference-list{padding:0;list-style:none}.reference-list li{border-bottom:1px solid var(--line);padding:15px 0;font-size:12px;word-break:break-word}.clinic-list{border-top:1px solid var(--line)}.clinic-item{display:grid;grid-template-columns:.8fr 1.3fr 1fr;gap:20px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}.clinic-item h3{margin:0;font-family:var(--fontSerif);font-size:29px;font-weight:500}.clinic-item p{font-size:12px;margin:5px 0;color:#66829b}.clinic-item>a{justify-self:end}.note-card{padding:25px;background:#edf3f8;border-left:2px solid var(--gold);font-size:12px;line-height:1.9}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.contact-grid h2{font-size:34px}.form-box{padding:36px;background:#f2f7fb}.field{margin-bottom:23px}.field label{display:block;font-size:11px;font-weight:600;letter-spacing:.04em;margin-bottom:10px}.field input,.field select,.field textarea{width:100%;background:#fff;border:1px solid #d6e3ed;border-radius:0;padding:13px;min-height:51px;font-size:13px;color:var(--deep)}.field textarea{min-height:130px;resize:vertical}.check{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.8}.check input{margin-top:7px}.divider{height:1px;background:var(--line);margin:43px 0}.news-list{padding:0;list-style:none}.news-list li{display:flex;gap:28px;border-bottom:1px solid var(--line);padding:22px 0;font-size:12px}.news-list time{font-size:10px;color:var(--gold);white-space:nowrap}.lang-switch{font-size:12px;font-weight:700;color:var(--gold)}.backtotop{position:fixed;right:20px;bottom:20px;background:#245987;color:#fff;width:39px;height:39px;display:grid;place-items:center;z-index:40;opacity:0;pointer-events:none;transition:opacity .2s}.backtotop.show{opacity:1;pointer-events:auto}@media(max-width:1180px){.nav{gap:13px}.nav a{font-size:9px}.header-inner{width:calc(100% - 45px)}}@media(max-width:980px){.menu-btn{display:flex}.header{height:73px}.header-inner{width:calc(100% - 44px)}.nav{display:none;position:absolute;top:73px;left:0;right:0;background:#fbfcfe;box-shadow:0 15px 22px #102f531a;flex-direction:column;align-items:stretch;padding:18px 6% 28px;gap:0}.nav.open{display:flex}.nav a{font-size:13px;padding:14px 7px;border-bottom:1px solid #e2ebf3}.site-hero{height:auto;min-height:630px}.site-hero .hero-inner{padding:120px 0 150px}.grid-3,.service-cards{grid-template-columns:repeat(2,1fr)}.benefit-list{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.footer .top{grid-template-columns:repeat(2,1fr)}.stat-band{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.wrap,.slim{width:calc(100% - 42px)}.section{padding:73px 0}.section.sm{padding:58px 0}.grid-2,.grid-3,.grid-4,.pillar-grid,.research-grid,.service-cards,.contact-grid{grid-template-columns:1fr;gap:23px}.site-hero{min-height:670px}.site-hero .hero-inner{padding:80px 0 125px}.site-hero .display{font-size:43px}.site-hero .display.jp{font-size:36px}.site-hero .lead{font-size:13px}.site-hero .shade{background:linear-gradient(90deg,#0d2948d6,#0d294860),linear-gradient(0deg,#0d294890,transparent)}.hero-bottom{width:calc(100% - 42px);font-size:8px}.page-hero,.page-hero .wrap{min-height:405px}.page-hero .wrap{padding:67px 0}.offset-image img{aspect-ratio:1/1}.offset-image:after{inset:13px -10px -10px 13px}.split-card,.split-card:nth-child(even){display:block;min-height:0}.split-card .photo{height:310px;min-height:0}.split-card:nth-child(even)>picture,.split-card:nth-child(even)>img{order:0}.split-card .copy{padding:48px 30px}.pillar{min-height:490px}.stat-band{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid var(--line)}.stat:last-child{border:0}.benefit-list{grid-template-columns:1fr 1fr}.benefit{padding:21px 16px;min-height:195px}.benefit h3{font-size:12px}.steps{grid-template-columns:1fr 1fr;gap:9px}.step{padding:22px 16px}.research-card{padding:29px;min-height:250px}.quote-block{padding:50px 0}.footer .top{grid-template-columns:1fr 1fr;gap:32px}.footer .brand{grid-column:1/-1}.footer{padding-top:54px}.footer .bottom{flex-direction:column}.clinic-item{grid-template-columns:1fr;gap:9px;padding:27px 0}.clinic-item>a{justify-self:start}.text-columns{columns:1}.bar-row{grid-template-columns:70px 1fr 60px;font-size:9px;gap:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pillar img,.btn{transition:none}}

/* HOKIPA ocean-blue identity / premium, restrained palette */
:root{--navy:#0c2747;--blue:#245987;--blue-soft:#dceaf5;--glacier:#eef4fa}
.section.dark,.footer{background-image:linear-gradient(135deg,#0c2747,#061b35)}
.header{box-shadow:0 4px 24px rgba(14,45,78,.035)}
.eyebrow{color:#997b58}.eyebrow.light{color:#ead7b9}
.site-hero .shade{background:linear-gradient(90deg,rgba(5,29,57,.9) 0%,rgba(8,43,81,.72) 51%,rgba(15,56,97,.2) 100%),linear-gradient(0deg,rgba(4,25,50,.32),transparent 60%)}
.page-hero .shade{background:linear-gradient(90deg,rgba(8,33,65,.94),rgba(13,53,89,.69) 63%,rgba(18,64,106,.27))}
.flow-board{background:linear-gradient(140deg,#eaf3fa,#f9fbfd);border:1px solid #c9dcea;padding:clamp(24px,5vw,58px);box-shadow:0 20px 60px rgba(18,61,103,.055)}
.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #c8dbea;padding-bottom:22px;margin-bottom:30px}
.flow-heading strong{font-family:var(--fontSerif);font-weight:500;color:var(--navy);font-size:clamp(19px,2.5vw,27px)}
.flow-heading span{font-size:11px;color:#5b7791;letter-spacing:.05em;text-align:right}
.flow-line{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:0;margin:0 0 24px;counter-reset:flow}
.flow-line li{position:relative;background:white;border:1px solid #d8e5ef;padding:26px 20px 25px;min-height:205px;box-shadow:0 6px 17px rgba(17,52,91,.035)}
.flow-line li:not(:last-child):after{content:'→';position:absolute;right:-15px;top:46%;z-index:2;color:#2f72ab;font-size:22px;font-weight:500}
.flow-line .flow-n{font-family:var(--fontSerif);font-size:35px;line-height:1.1;color:#2e6da2}
.flow-line h3{font-size:14px;font-weight:650;color:var(--navy);margin:15px 0 9px}
.flow-line p{font-size:11px;color:#5b7289;line-height:1.9;margin:0}
.flow-branch{background:white;border:1px solid #c8ddeb;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0 0 24px}
.flow-branch-head{grid-column:1/-1;padding:14px 19px;font-size:11px;letter-spacing:.1em;background:#dcecf7;color:#1d4f7d;font-weight:700}
.branch-path{padding:22px 25px;border-right:1px solid #d7e4ef}.branch-path:last-child{border-right:0}
.branch-path .flow-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;color:#336a9c;border:1px solid #a9c9e0;padding:2px 10px;margin-bottom:8px}
.branch-path h4{font-weight:600;color:var(--navy);font-size:15px;margin:0 0 9px}.branch-path p{font-size:11px;color:#647d92;line-height:1.8;margin:0}
.flow-outcome{padding:30px;background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.flow-outcome h3{font-weight:500;font-size:15px;margin:4px 0 10px;color:white}.flow-outcome p{font-size:11px;line-height:2;color:#d1e2ee;margin:0}.flow-outcome .final-step{border-left:1px solid #6086a5;padding-left:25px}
.flow-outcome .outcome-n{font-family:var(--fontSerif);font-size:24px;color:#e0c59a}
.flow-disclaimer{margin:19px 0 0;font-size:11px;color:#607991;line-height:1.9}
/* Prevent desktop nav collision when corporate pages have long labels. */
@media(max-width:1370px){.menu-btn{display:flex}.header{height:76px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fbfcfe;box-shadow:0 18px 28px #102f5321;flex-direction:column;align-items:stretch;padding:18px 6% 28px;gap:0;max-height:calc(100vh - 76px);overflow:auto}.nav.open{display:flex}.nav a{font-size:13px;padding:13px 6px;border-bottom:1px solid #e5edf3}.nav .nav-contact{margin-top:10px;text-align:center}.site-hero{min-height:620px;height:auto}.site-hero .hero-inner{padding:130px 0 155px}}
@media(max-width:800px){.flow-line{grid-template-columns:1fr 1fr}.flow-line li:nth-child(2):after{display:none}.flow-line li{min-height:175px}}
@media(max-width:650px){.flow-line{grid-template-columns:1fr;gap:9px}.flow-line li{min-height:0;padding:20px 22px}.flow-line li:after{display:none!important}.flow-branch{grid-template-columns:1fr}.branch-path{border-right:0;border-bottom:1px solid #d7e4ef}.branch-path:last-child{border:0}.flow-outcome{grid-template-columns:1fr;padding:27px}.flow-outcome .final-step{border-left:0;border-top:1px solid #6086a5;padding-left:0;padding-top:18px}.flow-heading{display:block}.flow-heading span{display:block;text-align:left;margin-top:6px}}


/* 2026-11 brand narrative + homepage partners/news */
.brand-main-copy{max-width:900px;letter-spacing:.01em}
.brand-hero-lead{max-width:760px!important}
.brand-purpose p:not(.lead){color:#506a82;font-size:14px;line-height:2.15}
.partner-section{padding:48px 0 54px;background:#f7fafc;border-top:1px solid #dbe6ef;border-bottom:1px solid #dbe6ef;overflow:hidden}
.partner-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}
.partner-heading p{margin:0;color:#6b7f92;font-size:12px;letter-spacing:.08em}
.partner-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.partner-track{display:flex;width:max-content;align-items:center;animation:hokipa-marquee 30s linear infinite;will-change:transform}
.partner-name{display:inline-flex;align-items:center;justify-content:center;min-width:210px;padding:18px 34px;margin-right:18px;border:1px solid #cddce8;background:#fff;color:#173b60;font-family:var(--fontSerif);font-size:21px;letter-spacing:.04em;white-space:nowrap}
.partner-name:nth-child(3n){font-family:var(--fontSans);font-size:15px;font-weight:600;letter-spacing:.12em}
.partner-marquee:hover .partner-track{animation-play-state:paused}
@keyframes hokipa-marquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}
.news-section{background:#fff}
.news-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:42px}
.news-head .h2{margin:10px 0 0}
.home-news-list{border-top:1px solid var(--line)}
.home-news-item{display:grid;grid-template-columns:130px 110px 1fr;gap:26px;align-items:center;padding:28px 4px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}
.home-news-item:hover{padding-left:14px;background:#f7fafc}
.home-news-item time{font-family:var(--fontSerif);color:#37688f;font-size:18px;letter-spacing:.04em}
.news-category{font-size:9px;font-weight:700;letter-spacing:.16em;color:#9a7d58;border:1px solid #d6c5ad;padding:4px 8px;text-align:center}
.home-news-item h3{font-size:14px;font-weight:500;line-height:1.8;margin:0;color:#203f5b}
.philosophy-section{background:#fbfcfd}
.philosophy-title{max-width:940px;margin:25px 0 54px}
.philosophy-copy{max-width:880px;margin-left:auto;border-left:1px solid #b6c9da;padding-left:clamp(28px,5vw,70px)}
.philosophy-copy p{font-size:15px;color:#4d657b;line-height:2.25;margin-bottom:25px}
.philosophy-copy .lead{font-size:18px;color:#284965}
.about-vision p:not(.lead){color:#b9ccdc;line-height:2.1}
@media(max-width:800px){.partner-heading{display:block}.partner-heading p{margin-top:12px}.partner-name{min-width:175px;padding:14px 24px;font-size:17px}.news-head{grid-template-columns:1fr;gap:14px}.home-news-item{grid-template-columns:100px 90px 1fr;gap:12px}.philosophy-copy{margin-left:0}}
@media(max-width:600px){.home-news-item{grid-template-columns:1fr 90px}.home-news-item h3{grid-column:1/-1}.partner-section{padding:38px 0 42px}.brand-main-copy br{display:none}}
@media(prefers-reduced-motion:reduce){.partner-track{animation:none}.partner-marquee{overflow-x:auto;mask-image:none;-webkit-mask-image:none}}


/* 2026-11-02 refinement: brighter, more human HOKIPA site */
:root{--ink:#17354f;--deep:#153b5d;--pine:#2f77aa;--olive:#6f9fc1;--gold:#b79a70;--sand:#edf3f7;--ivory:#ffffff;--mist:#f4f8fb;--text:#26465f;--muted:#73879a;--line:#dce7ef}
body{background:#fff;color:var(--text)}
.header{background:rgba(255,255,255,.95);border-bottom-color:#e7eef4;box-shadow:0 4px 22px rgba(33,79,112,.035)}
.section{padding:112px 0}.section.mist{background:#f6f9fc}.section.dark{background:#eaf4fa;color:#183a56;background-image:none}.section.dark .lead{color:#58758b}.section.dark .muted,.section.dark .tiny{color:#6e8597}.section.dark .eyebrow.light{color:#3877a4}.section.dark .btn.light{background:#2f77aa;border-color:#2f77aa;color:#fff}.section.dark .btn.light:hover{background:#276793}.footer{background:#163a58;background-image:none}
.page-hero .hero-photo{opacity:.72}.page-hero .shade{background:linear-gradient(90deg,rgba(22,58,88,.86),rgba(39,93,132,.48) 61%,rgba(255,255,255,.08))}
.partner-section{background:#fbfdff}.partner-name{box-shadow:0 8px 22px rgba(23,68,101,.035)}.home-news-item:hover{background:#f8fbfd}.research-card,.service,.benefit,.step{box-shadow:0 9px 30px rgba(23,68,101,.025)}

.home-hero-light{padding:64px 0 72px;background:linear-gradient(180deg,#f7fbfe 0%,#fff 72%);border-bottom:1px solid #e7eef4}
.home-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(50px,7vw,110px);align-items:center;min-height:680px}
.home-hero-copy{padding:45px 0}.home-hero-copy .display{color:#153b5d;margin:22px 0 18px;max-width:770px}.home-business-kicker{font-size:12px;letter-spacing:.12em;color:#3677a5;font-weight:650;margin:0 0 23px}.home-hero-copy .lead{max-width:710px;color:#526f84}
.hero-service-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:36px;max-width:820px}
.service-action{min-height:128px;border:1px solid #d3e2ec;background:#fff;padding:22px;display:grid;grid-template-columns:35px 1fr 24px;gap:12px;align-items:start;transition:transform .22s,box-shadow .22s,border-color .22s}
.service-action:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(34,86,124,.08);border-color:#9fc3db}.service-action.primary{background:#edf6fb}.service-action.secondary{background:#fffaf4;border-color:#eadfce}
.service-action .service-no{font-family:var(--fontSerif);font-size:24px;color:#397ba8}.service-action strong{display:block;color:#173c59;font-size:15px;line-height:1.6;margin:2px 0 8px}.service-action small{display:block;color:#73899a;font-size:10px;line-height:1.7}.service-action b{font-size:21px;color:#3e769b;font-weight:400}
.home-hero-visual{position:relative;align-self:stretch;min-height:560px}.home-hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 48%;border-radius:2px;box-shadow:0 24px 60px rgba(23,66,98,.12)}
.hero-note{position:absolute;left:-42px;bottom:38px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);padding:20px 24px;width:min(330px,78%);border:1px solid #e1e9ef;box-shadow:0 14px 38px rgba(23,66,98,.10)}
.hero-note span{display:block;font-size:9px;letter-spacing:.18em;color:#9a7d58;font-weight:700;margin-bottom:7px}.hero-note strong{display:block;font-family:var(--fontSerif);font-weight:500;color:#214965;font-size:21px;line-height:1.45}

.business-gateway{background:#fff}.gateway-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:end;margin-bottom:48px}.gateway-intro.compact{margin-bottom:36px}.gateway-intro .h2{margin:13px 0 0}
.business-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.business-choice{display:grid;grid-template-columns:.95fr 1.05fr;min-height:390px;border:1px solid #dce7ef;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}
.business-choice:hover{transform:translateY(-3px);box-shadow:0 18px 46px rgba(25,72,105,.08)}.choice-media{overflow:hidden;background:#eef4f7}.choice-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.business-choice:hover .choice-media img{transform:scale(1.025)}
.choice-copy{padding:38px 34px;display:flex;flex-direction:column;justify-content:center}.choice-copy>span{font-size:9px;letter-spacing:.17em;color:#8e795b;font-weight:700}.choice-copy h3{font-family:var(--fontSerif);font-size:32px;color:#183d5a;margin:19px 0 13px}.choice-copy p{font-size:12px;line-height:1.95;color:#647c8f}.choice-copy strong{font-size:10px;letter-spacing:.11em;color:#2f73a2;margin-top:14px}.business-choice.tourism{background:#fffdf9}

.explore-hokipa{background:#f7fafc}.explore-link-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #d9e5ed;border-left:1px solid #d9e5ed}.explore-link-grid a{min-height:170px;padding:25px 22px;border-right:1px solid #d9e5ed;border-bottom:1px solid #d9e5ed;background:#fff;display:flex;flex-direction:column;transition:background .2s,transform .2s}.explore-link-grid a:hover{background:#eef6fb;transform:translateY(-2px)}.explore-link-grid span{font-size:9px;letter-spacing:.15em;color:#8a775d;text-transform:uppercase}.explore-link-grid strong{font-size:13px;line-height:1.7;color:#21445f;margin-top:18px}.explore-link-grid b{font-size:18px;font-weight:400;color:#3b759d;margin-top:auto}

.tourism-hero-real{padding:62px 0 76px;background:linear-gradient(180deg,#f7fbfe,#fff);border-bottom:1px solid #e5edf3}.tourism-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:clamp(50px,7vw,105px);align-items:center;min-height:650px}.tourism-hero-copy .display{color:#153b5d;margin:23px 0 18px;font-size:clamp(42px,5vw,72px)}.tourism-hero-copy .lead{color:#55748b;max-width:620px}.hero-inline-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}.tourism-hero-photo{position:relative;height:650px}.tourism-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%;box-shadow:0 24px 65px rgba(24,69,101,.11)}.photo-caption-chip{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.93);padding:10px 14px;font-size:9px;letter-spacing:.09em;color:#48657a;border:1px solid rgba(215,226,234,.9)}

.real-care-gallery{background:#fff}.care-photo-grid{display:grid;grid-template-columns:1.08fr .92fr .92fr;gap:18px;align-items:stretch}.care-photo{margin:0;position:relative;background:#eef4f7;min-height:470px;overflow:hidden}.care-photo.tall{min-height:620px}.care-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.care-photo figcaption{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.94);border:1px solid #e0e8ee;padding:8px 12px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#355f7d}

.home-hero-light img,.tourism-hero-real img,.care-photo img,.business-choice img{filter:none}.btn{border-radius:0;box-shadow:none}.pillar,.research-card,.service,.step,.benefit{border-radius:0}.offset-image:after{border-color:#c6d9e7}
@media(max-width:1050px){.home-hero-grid,.tourism-hero-grid{grid-template-columns:1fr;min-height:auto}.home-hero-visual{height:620px;min-height:0}.tourism-hero-photo{height:620px}.gateway-intro{grid-template-columns:1fr;gap:18px}.business-choice{grid-template-columns:1fr;min-height:0}.choice-media{height:340px}.explore-link-grid{grid-template-columns:repeat(3,1fr)}.care-photo-grid{grid-template-columns:1fr 1fr}.care-photo.tall{grid-row:span 2}}
@media(max-width:700px){.home-hero-light,.tourism-hero-real{padding:28px 0 52px}.home-hero-grid,.tourism-hero-grid{gap:35px}.home-hero-copy{padding:20px 0}.hero-service-actions{grid-template-columns:1fr}.home-hero-visual{height:500px}.hero-note{left:12px;bottom:12px;width:calc(100% - 24px)}.business-choice-grid{grid-template-columns:1fr}.choice-media{height:310px}.explore-link-grid{grid-template-columns:1fr 1fr}.care-photo-grid{grid-template-columns:1fr}.care-photo,.care-photo.tall{min-height:480px}.tourism-hero-photo{height:540px}}
@media(max-width:480px){.explore-link-grid{grid-template-columns:1fr}.home-hero-visual{height:440px}.tourism-hero-photo{height:500px}}


/* 2026-11-02 duo hero + real photo update */
.service-duo-hero{padding:44px 0 88px;background:linear-gradient(180deg,#f6f9fc 0%,#fff 68%);border-bottom:1px solid #e3edf3}
.duo-hero-copy{max-width:930px;margin:0 auto 34px;text-align:center}
.duo-hero-copy .display{margin:18px 0;color:#173c59}
.duo-hero-copy .lead{max-width:820px;margin:0 auto;color:#58748a}
.duo-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.duo-service-card{position:relative;display:block;min-height:760px;background:#eaf2f7;overflow:hidden;border:1px solid #d6e2eb;box-shadow:0 18px 50px rgba(23,66,98,.06);transition:transform .24s, box-shadow .24s}
.duo-service-card:hover{transform:translateY(-4px);box-shadow:0 24px 65px rgba(23,66,98,.12)}
.duo-service-card img{width:100%;height:100%;object-fit:cover;display:block}
.duo-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,48,78,.12) 0%,rgba(17,48,84,.46) 45%,rgba(13,37,68,.88) 100%)}
.duo-card-content{position:absolute;left:42px;right:42px;bottom:40px;color:#fff}
.duo-card-content span{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#d4bc8d;font-weight:700;margin-bottom:16px}
.duo-card-content h2{font-family:var(--fontSerif);font-weight:500;font-size:58px;line-height:1.15;letter-spacing:.01em;margin:0 0 22px;color:#fff}
.duo-card-content p{max-width:540px;font-size:14px;line-height:2;color:rgba(255,255,255,.88);margin:0 0 22px}
.duo-card-content strong{display:inline-block;padding-top:22px;border-top:1px solid rgba(255,255,255,.36);font-size:11px;letter-spacing:.14em;color:#fff}
.program-photo-feature .caption{margin-top:12px}
@media(max-width:1050px){.duo-service-grid{grid-template-columns:1fr}.duo-service-card{min-height:620px}.duo-card-content h2{font-size:46px}}
@media(max-width:700px){.service-duo-hero{padding:28px 0 54px}.duo-hero-copy{text-align:left}.duo-service-card{min-height:520px}.duo-card-content{left:22px;right:22px;bottom:22px}.duo-card-content span{font-size:10px}.duo-card-content h2{font-size:34px}.duo-card-content p{font-size:12px;line-height:1.85}.duo-card-content strong{font-size:10px;padding-top:16px}}


/* 2026-11-02 livesense-inspired first-view and partner logos */
:root{
  --life-blue:#139ed7;
  --life-blue-deep:#154566;
  --life-sky:#e9f7fd;
  --life-cream:#fffaf1;
  --life-yellow:#ffd55c;
}
.service-duo-hero.livesense-inspired{position:relative;overflow:hidden;padding:38px 0 72px;background:linear-gradient(180deg,#f5fbfe 0%,#edf8fd 58%,#fff 100%);border-bottom:1px solid #dcebf3}
.duo-shell{position:relative;z-index:2}
.duo-kicker-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:0 0 22px;padding:0 4px}
.duo-kicker-row p{margin:0;color:#5d7d92;font-size:13px;letter-spacing:.04em}
.duo-service-grid.screenshot-style{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.duo-service-grid.screenshot-style .duo-service-card{min-height:min(72vh,760px);height:760px;border:0;background:#dce9f2;box-shadow:0 22px 55px rgba(26,71,100,.09);overflow:hidden}
.duo-service-grid.screenshot-style .duo-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.duo-service-grid.screenshot-style .duo-service-card:hover img{transform:scale(1.035)}
.duo-service-grid.screenshot-style .duo-card-overlay{background:linear-gradient(180deg,rgba(18,58,89,.06) 5%,rgba(18,58,89,.20) 34%,rgba(13,43,71,.91) 100%)}
.duo-service-grid.screenshot-style .corporate .duo-card-overlay{background:linear-gradient(180deg,rgba(85,146,177,.18),rgba(18,59,89,.37) 45%,rgba(12,43,72,.94))}
.duo-service-grid.screenshot-style .duo-card-content{left:46px;right:46px;bottom:42px}
.duo-service-grid.screenshot-style .duo-card-content>span{font-size:11px;letter-spacing:.21em;color:#ffe19a;margin-bottom:14px}
.duo-service-grid.screenshot-style .duo-card-content h1{font-family:var(--fontSerif);font-weight:500;color:#fff;font-size:clamp(42px,4vw,64px);line-height:1.15;margin:0 0 24px}
.duo-service-grid.screenshot-style .duo-card-content p{font-size:13px;line-height:2;max-width:580px;color:rgba(255,255,255,.90);margin:0 0 25px}
.duo-service-grid.screenshot-style .duo-card-content strong{display:flex;justify-content:space-between;gap:15px;border-top:1px solid rgba(255,255,255,.44);padding-top:20px;font-size:11px;letter-spacing:.16em;color:#fff}
.duo-service-grid.screenshot-style .duo-card-content strong b{font-size:18px;font-weight:400}
.duo-bottom-message{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;padding:28px 4px 0;color:#41647c}
.duo-bottom-message p{margin:0;max-width:880px;font-size:13px;line-height:2}
.duo-bottom-message strong{font-family:var(--fontSerif);font-size:18px;color:#174b6c}
.duo-bottom-message a{font-size:10px;letter-spacing:.16em;color:#0b79ab;white-space:nowrap}
.reveal-card{opacity:0;transform:translateY(28px);animation:cardRise .9s cubic-bezier(.2,.8,.2,1) forwards}
.reveal-one{animation-delay:.10s}.reveal-two{animation-delay:.28s}
@keyframes cardRise{to{opacity:1;transform:translateY(0)}}
}

.partner-logo-section{padding:82px 0 72px;background:#fff;overflow:hidden;border-top:1px solid #edf3f6;border-bottom:1px solid #e6eff4}
.logo-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:36px}
.logo-heading h2{font-family:var(--fontSerif);font-size:38px;font-weight:500;color:#174666;margin:10px 0 0}
.logo-heading p{margin:0;color:#6b8395;line-height:1.9;font-size:12px}
.logo-marquee{position:relative;overflow:hidden;padding:8px 0}
.logo-marquee:before,.logo-marquee:after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:12vw;pointer-events:none}
.logo-marquee:before{left:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}
.logo-marquee:after{right:0;background:linear-gradient(-90deg,#fff,rgba(255,255,255,0))}
.logo-track{display:flex;width:max-content;will-change:transform}
.logo-track-ltr{animation:logoFlowLTR 26s linear infinite}
.logo-marquee:hover .logo-track-ltr{animation-play-state:paused}
.logo-set{display:flex;align-items:center;gap:22px;padding-right:22px}
.partner-logo{width:230px;height:116px;background:#fbfdfe;border:1px solid #e4edf2;display:flex;align-items:center;justify-content:center;padding:20px 28px;overflow:hidden;flex:0 0 auto;transition:transform .25s,background .25s}
.partner-logo:hover{transform:translateY(-3px);background:#f3fbff}
.partner-logo img{display:block;max-width:100%;max-height:76px;object-fit:contain}
.fallback-wordmark{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:28px;letter-spacing:.02em;color:#1e4965;white-space:nowrap;text-align:center}
.fallback-wordmark small{display:block;font-size:8px;letter-spacing:.12em;font-weight:500;margin-top:5px;color:#70879a}
.fallback-wordmark.sco{letter-spacing:.08em;color:#92999e;font-weight:600}
.fallback-wordmark.newt{color:#00c978;font-size:34px}
.fallback-wordmark.jtb{font-style:italic;font-weight:900;font-size:48px;letter-spacing:-.09em;color:#173e5d}
.fallback-wordmark.guide{font-size:25px;color:#184f72}.fallback-wordmark.guide i{display:inline-flex;width:38px;height:38px;border-radius:50%;background:#ffd84f;color:#174b6c;align-items:center;justify-content:center;font-style:normal;margin-right:7px}
.fallback-wordmark.akipress{font-family:Georgia,serif;color:#087e73;font-size:31px}
.fallback-wordmark.oimo{font-family:Georgia,serif;color:#51784d;font-size:38px;font-weight:500}.fallback-wordmark.oimo small{font-family:Georgia,serif;color:#718d6d;letter-spacing:.04em}
.fallback-wordmark.nht{position:relative;font-size:30px;color:#234d69}.fallback-wordmark.nht small{font-size:7px}.petals{display:inline-flex;gap:2px;margin-right:7px;vertical-align:middle}.petals b{display:block;width:9px;height:16px;border-radius:9px 9px 2px 9px;transform:rotate(30deg)}.petals b:nth-child(1){background:#4ab26f}.petals b:nth-child(2){background:#e86468}.petals b:nth-child(3){background:#4a95d5}
@keyframes logoFlowLTR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:1050px){.duo-service-grid.screenshot-style{grid-template-columns:1fr}.duo-service-grid.screenshot-style .duo-service-card{height:620px;min-height:620px}.logo-heading{grid-template-columns:1fr;gap:14px}.partner-logo{width:200px;height:104px}}
@media(max-width:700px){.service-duo-hero.livesense-inspired{padding:22px 0 46px}.duo-kicker-row{align-items:flex-start;flex-direction:column;gap:6px}.duo-service-grid.screenshot-style{gap:14px}.duo-service-grid.screenshot-style .duo-service-card{height:520px;min-height:520px}.duo-service-grid.screenshot-style .duo-card-content{left:23px;right:23px;bottom:22px}.duo-service-grid.screenshot-style .duo-card-content h1{font-size:36px}.duo-bottom-message{display:block}.duo-bottom-message a{display:inline-block;margin-top:15px}.partner-logo-section{padding:58px 0}.partner-logo{width:180px;height:96px;padding:18px}.logo-track-ltr{animation-duration:22s}.hero-shape-a{width:190px;height:190px}.hero-shape-b{width:100px;height:100px;border-width:20px}}
@media(prefers-reduced-motion:reduce){.reveal-card,.hero-shape,.logo-track-ltr{animation:none!important}.reveal-card{opacity:1;transform:none}.logo-track{transform:none}.logo-marquee{overflow-x:auto}}


/* 2026-11-02 final refinement */
.brand-intro-hero{position:relative;height:calc(100svh - 88px);min-height:650px;overflow:hidden;background:#173a58;color:#fff}
.brand-intro-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.035);animation:introPhoto 1.6s cubic-bezier(.2,.75,.2,1) forwards}
.brand-intro-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,42,67,.74) 0%,rgba(23,59,88,.46) 48%,rgba(20,52,78,.18) 100%),linear-gradient(0deg,rgba(12,39,62,.38),rgba(255,255,255,.03) 58%)}
.brand-intro-inner{height:100%;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-bottom:4vh}
.brand-intro-eyebrow{font-size:11px;letter-spacing:.28em;font-weight:700;margin-bottom:20px;opacity:0;animation:introUp .75s .18s cubic-bezier(.2,.8,.2,1) forwards}
.brand-intro-hero h1{font-family:'Noto Serif JP','Yu Mincho',serif;font-size:clamp(42px,5.8vw,82px);font-weight:500;line-height:1.45;letter-spacing:.035em;margin:0 0 25px;max-width:980px;opacity:0;transform:translateY(28px);animation:introUp .95s .35s cubic-bezier(.2,.8,.2,1) forwards}
.brand-intro-lead{font-size:clamp(14px,1.5vw,18px);line-height:2;color:rgba(255,255,255,.94);max-width:780px;opacity:0;transform:translateY(24px);animation:introUp .9s .62s cubic-bezier(.2,.8,.2,1) forwards}
.brand-intro-scroll{position:absolute;left:0;bottom:30px;font-size:10px;font-weight:700;letter-spacing:.18em;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:8px;opacity:0;animation:introFade .8s 1.05s forwards}
.brand-intro-scroll span{margin-left:12px}
@keyframes introUp{to{opacity:1;transform:translateY(0)}}
@keyframes introFade{to{opacity:1}}
@keyframes introPhoto{to{transform:scale(1)}}

/* No decorative yellow / floating shapes */
.hero-shape,.hero-shape-a,.hero-shape-b,.hero-shape-c{display:none!important}

/* Easier-to-read numerals */
.stat .big,.metric,.step .idx,.benefit .n,.service .icon,.num,.flow-n,.outcome-n,.news-list time,.home-news-item time{font-family:var(--fontSans)!important;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.025em}
.stat .big,.metric{line-height:1.05}

/* Partner logos */
.official-local-logo img{max-width:190px;max-height:66px;width:auto;height:auto;object-fit:contain}
.logo-track-ltr{animation:logoFlowLTR 30s linear infinite}
@keyframes logoFlowLTR{from{transform:translateX(-50%)}to{transform:translateX(0)}}

/* About hero uses a real HOKIPA healthcare scene and a lighter treatment */
body .page-hero .hero-photo[src*="hokipa-corporate-01"]{opacity:.88;object-position:center 48%}
body .page-hero .hero-photo[src*="hokipa-corporate-01"] + .shade{background:linear-gradient(90deg,rgba(13,44,70,.76),rgba(31,86,124,.35) 62%,rgba(255,255,255,.05))}

@media(max-width:980px){.brand-intro-hero{height:calc(100svh - 73px)}}
@media(max-width:650px){.brand-intro-hero{min-height:620px}.brand-intro-photo{object-position:58% center}.brand-intro-shade{background:linear-gradient(90deg,rgba(11,40,64,.82),rgba(25,61,88,.52)),linear-gradient(0deg,rgba(10,36,58,.42),transparent)}.brand-intro-scroll{bottom:20px}.brand-intro-hero h1{font-size:40px}.brand-intro-lead br{display:none}}
@media(prefers-reduced-motion:reduce){.brand-intro-photo,.brand-intro-eyebrow,.brand-intro-hero h1,.brand-intro-lead,.brand-intro-scroll{animation:none!important;opacity:1!important;transform:none!important}.logo-track-ltr{animation:none!important}}


/* 2026-11-03 cocreation hero update */
.cocreation-hero{
  position:relative;
  height:calc(100svh - 88px);
  min-height:680px;
  overflow:hidden;
  background:#eef7fc;
  color:#153b5d;
  isolation:isolate;
}
.brand-hero-image-wrap{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  background:#eef7fc;
  clip-path:inset(0 0 0 100%);
  animation:hokipaHeroReveal 1.25s .08s cubic-bezier(.65,0,.22,1) forwards;
}
.cocreation-hero .brand-intro-photo{
  position:absolute;
  inset:-1.5%;
  width:103%;
  height:103%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.025);
  animation:hokipaHeroDrift 1.8s .18s cubic-bezier(.2,.7,.2,1) forwards;
}
.brand-intro-softwash{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(250,253,255,.97) 0%,rgba(249,253,255,.89) 26%,rgba(247,252,255,.48) 45%,rgba(255,255,255,.04) 68%);
  opacity:0;
  animation:hokipaWashIn .75s .72s ease-out forwards;
}
.cocreation-hero .brand-intro-inner{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding-bottom:2vh;
}
.cocreation-hero .brand-intro-eyebrow{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 24px;
  color:#2f77aa;
  font-family:var(--fontSans);
  font-size:10px;
  font-weight:700;
  letter-spacing:.26em;
  opacity:0;
  transform:translateY(10px);
  animation:hokipaMetaIn .65s .78s cubic-bezier(.2,.8,.2,1) forwards;
}
.cocreation-hero .eyebrow-line{
  display:block;
  width:0;
  height:1px;
  background:#7fb4d4;
  animation:hokipaLineGrow .65s 1s cubic-bezier(.2,.8,.2,1) forwards;
}
.cocreation-hero h1{
  margin:0 0 28px;
  color:#153b5d;
  font-family:'Noto Serif JP','Yu Mincho',serif;
  font-size:clamp(48px,6vw,88px);
  font-weight:500;
  line-height:1.34;
  letter-spacing:.035em;
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.hero-copy-mask{
  display:block;
  overflow:hidden;
  padding-bottom:.08em;
}
.hero-copy-line{
  display:block;
  transform:translateY(112%);
  opacity:.1;
  animation:hokipaCopyRise .88s .95s cubic-bezier(.2,.82,.2,1) forwards;
}
.hero-copy-line-2{animation-delay:1.12s}
.hero-lead-mask{
  overflow:hidden;
  max-width:700px;
}
.cocreation-hero .brand-intro-lead{
  margin:0;
  color:#46687f;
  font-family:var(--fontSans);
  font-size:clamp(14px,1.4vw,18px);
  font-weight:400;
  line-height:2.05;
  letter-spacing:.015em;
  transform:translateY(105%);
  opacity:0;
  animation:hokipaLeadRise .8s 1.38s cubic-bezier(.2,.82,.2,1) forwards;
}
.cocreation-hero .brand-intro-scroll{
  position:absolute;
  left:0;
  bottom:32px;
  display:flex;
  align-items:center;
  gap:14px;
  color:#315f7d;
  border:0;
  padding:0;
  font-family:var(--fontSans);
  font-size:9px;
  font-weight:700;
  letter-spacing:.22em;
  opacity:0;
  transform:translateY(8px);
  animation:hokipaMetaIn .65s 1.72s ease-out forwards;
}
.cocreation-hero .brand-intro-scroll i{
  position:relative;
  display:block;
  width:38px;
  height:1px;
  background:#8fb7cf;
  overflow:visible;
}
.cocreation-hero .brand-intro-scroll i:after{
  content:"";
  position:absolute;
  right:0;
  top:-2px;
  width:5px;
  height:5px;
  border-right:1px solid #8fb7cf;
  border-bottom:1px solid #8fb7cf;
  transform:rotate(45deg);
  animation:hokipaScrollNudge 1.55s 2.1s ease-in-out infinite;
}
@keyframes hokipaHeroReveal{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes hokipaHeroDrift{to{transform:scale(1)}}
@keyframes hokipaWashIn{to{opacity:1}}
@keyframes hokipaMetaIn{to{opacity:1;transform:translateY(0)}}
@keyframes hokipaLineGrow{to{width:56px}}
@keyframes hokipaCopyRise{to{transform:translateY(0);opacity:1}}
@keyframes hokipaLeadRise{to{transform:translateY(0);opacity:1}}
@keyframes hokipaScrollNudge{0%,100%{transform:translateY(-2px) rotate(45deg)}50%{transform:translateY(3px) rotate(45deg)}}

@media(max-width:980px){
  .cocreation-hero{height:calc(100svh - 73px);min-height:660px}
  .brand-intro-softwash{background:linear-gradient(90deg,rgba(251,254,255,.98),rgba(250,253,255,.87) 44%,rgba(250,253,255,.18) 72%)}
  .cocreation-hero h1{font-size:clamp(45px,7.4vw,72px)}
}
@media(max-width:650px){
  .cocreation-hero{min-height:690px}
  .cocreation-hero .brand-intro-photo{object-position:64% center}
  .brand-intro-softwash{background:linear-gradient(180deg,rgba(250,253,255,.97) 0%,rgba(250,253,255,.84) 48%,rgba(247,252,255,.20) 76%,rgba(246,251,254,.12) 100%)}
  .cocreation-hero .brand-intro-inner{justify-content:flex-start;padding-top:13vh}
  .cocreation-hero h1{font-size:39px;line-height:1.42;letter-spacing:.025em}
  .cocreation-hero .brand-intro-lead{font-size:13px;line-height:1.95;max-width:92%}
  .cocreation-hero .brand-intro-lead br{display:none}
  .cocreation-hero .brand-intro-scroll{bottom:21px}
}
@media(prefers-reduced-motion:reduce){
  .brand-hero-image-wrap{clip-path:none;animation:none}
  .cocreation-hero .brand-intro-photo{transform:none;animation:none}
  .brand-intro-softwash{opacity:1;animation:none}
  .cocreation-hero .brand-intro-eyebrow,.hero-copy-line,.cocreation-hero .brand-intro-lead,.cocreation-hero .brand-intro-scroll{opacity:1;transform:none;animation:none}
  .cocreation-hero .eyebrow-line{width:56px;animation:none}
  .cocreation-hero .brand-intro-scroll i:after{animation:none}
}
