:root{--navy:#061d38;--deep:#082b50;--teal:#2bb9aa;--mint:#8edac2;--ice:#e9f4f4;--paper:#f7faf9;--ink:#071424;--muted:#617887;--line:#cfe0e1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%}
.site-header{height:76px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:30;background:rgba(6,29,56,.88);border-bottom:1px solid rgba(142,218,194,.2);backdrop-filter:blur(15px)}.header-brand img{display:block;width:174px;height:48px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:30px;color:#d8e7e9;font-size:12px;letter-spacing:.12em}.site-header nav a:hover{color:var(--mint)}.nav-cta{border:1px solid var(--teal);padding:11px 18px;color:#fff!important}
.hero{min-height:100svh;padding:140px clamp(24px,7vw,108px) 74px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:7vw;background:radial-gradient(circle at 80% 36%,rgba(43,185,170,.22),transparent 29%),linear-gradient(135deg,#04172d 0%,#082d51 58%,#061d38 100%);color:white;position:relative;overflow:hidden}.hero-grid{position:absolute;inset:0;opacity:.09;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to right,black,transparent 72%)}.hero-copy,.hero-mark{position:relative;z-index:2}.eyebrow,.section-label{font:600 11px/1.4 ui-monospace,SFMono-Regular,monospace;letter-spacing:.26em;color:var(--teal)}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(42px,5.4vw,78px);line-height:1.2;letter-spacing:.02em;margin:26px 0}.hero h1 span{color:var(--mint)}.hero-lead{max-width:620px;font-size:clamp(15px,1.4vw,20px);line-height:2;color:#d7e5e8}.hero-actions{display:flex;gap:14px;margin:40px 0 56px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 25px;font-size:13px;letter-spacing:.08em;transition:.2s}.button.primary{background:var(--teal);color:#031d2f}.button.primary:hover{background:var(--mint);transform:translateY(-2px)}.button.secondary{border:1px solid rgba(255,255,255,.38);color:#fff}.hero-stats{display:flex;gap:clamp(24px,4vw,58px);margin:0}.hero-stats div{border-left:1px solid rgba(142,218,194,.3);padding-left:18px}.hero-stats dt{font:500 28px/1 ui-monospace,monospace;color:#fff}.hero-stats dt span{font-size:13px;color:var(--teal);margin-left:4px}.hero-stats dd{margin:8px 0 0;font:10px ui-monospace,monospace;letter-spacing:.13em;color:#8fa9b4}.hero-mark{text-align:center;padding:50px 40px;border:1px solid rgba(142,218,194,.22);background:rgba(255,255,255,.045);box-shadow:0 35px 90px rgba(0,0,0,.25);backdrop-filter:blur(12px)}.hero-mark img{width:min(100%,600px);filter:drop-shadow(0 22px 32px rgba(0,0,0,.28))}.hero-mark p{font:600 clamp(11px,1.1vw,14px) ui-monospace,monospace;letter-spacing:.2em;margin:24px 0 8px}.hero-mark p i{font-style:normal;color:var(--teal)}.hero-mark>span{font:10px ui-monospace,monospace;letter-spacing:.36em;color:var(--teal)}.mark-halo{position:absolute;width:430px;height:430px;border:1px solid rgba(43,185,170,.15);border-radius:50%;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 60px rgba(43,185,170,.035),0 0 0 120px rgba(43,185,170,.02)}
.section{padding:110px clamp(24px,7vw,108px)}.section-label{display:flex;align-items:center;gap:14px;margin-bottom:42px}.section-label span{color:var(--muted)}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}.concept h2,.section-head h2,.process h2,.expertise h2,.contact h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(32px,4vw,56px);line-height:1.35;margin:0}.concept h2 em{font-style:normal;color:var(--teal)}.concept-grid>div p{margin:0 0 24px;color:#405866;line-height:2;font-size:15px}.services{background:#eef6f5}.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:54px}.section-head .section-label{margin-bottom:22px}.section-head>p{max-width:420px;color:var(--muted);line-height:1.9}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px}.service-card{background:#fff;padding:40px;min-height:320px;border-bottom:3px solid transparent;transition:.25s}.service-card:hover{transform:translateY(-5px);border-bottom-color:var(--teal);box-shadow:0 16px 50px rgba(8,43,80,.09)}.card-top{display:flex;justify-content:space-between;color:var(--teal);font:11px ui-monospace,monospace;letter-spacing:.14em}.service-card h3{font:700 24px "Yu Mincho",serif;margin:44px 0 18px;color:var(--deep)}.service-card>p{color:#526b78;line-height:1.9;font-size:14px}.service-card ul{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:7px}.service-card li{border:1px solid var(--line);padding:5px 9px;font-size:10px;color:var(--muted)}
.expertise{background:linear-gradient(125deg,#04172d,#082b50);padding:110px clamp(24px,7vw,108px);color:white}.expertise-inner{display:grid;grid-template-columns:.88fr 1.12fr;gap:9vw}.section-label.light{color:var(--mint)}.section-label.light span{color:#819aa5}.expertise-copy>p{color:#bfd0d4;line-height:2;margin-top:30px}.credential-list{border-top:1px solid rgba(142,218,194,.22)}.credential{display:grid;grid-template-columns:150px 1fr;gap:28px;padding:27px 0;border-bottom:1px solid rgba(142,218,194,.22)}.credential strong{font:600 13px ui-monospace,monospace;color:var(--teal);letter-spacing:.12em}.credential span{font-size:14px;color:#dbe7e9}
.process{text-align:center}.process .section-label{justify-content:center}.process h2{max-width:820px;margin:0 auto}.process ol{list-style:none;padding:0;margin:70px 0 0;display:grid;grid-template-columns:repeat(4,1fr);text-align:left}.process li{padding:28px;border-left:1px solid var(--line)}.process li>span{font:11px ui-monospace,monospace;color:var(--teal)}.process strong{display:block;margin:24px 0 13px;font:700 19px "Yu Mincho",serif}.process li p{font-size:13px;line-height:1.8;color:var(--muted)}.contact{padding:100px clamp(24px,7vw,108px);display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#0a315c;color:#fff}.contact-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.contact-copy p{color:#c8dadd;line-height:2;max-width:520px}.contact-copy .button{margin:24px 0 18px}.contact-copy small{color:#8fa9b4;line-height:1.8}footer{padding:48px clamp(24px,7vw,108px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:#04172d;color:#829ba5;font:10px ui-monospace,monospace;letter-spacing:.15em}footer img{width:140px}footer p{color:var(--teal)}footer span{text-align:right}
@media(max-width:900px){.site-header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr;padding-top:120px}.hero-mark{margin-top:10px}.concept-grid,.expertise-inner,.contact{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.process ol{grid-template-columns:repeat(2,1fr)}.section-head{align-items:start;flex-direction:column}.contact{gap:45px}}@media(max-width:560px){.site-header{height:66px;padding:0 18px}.header-brand img{width:136px}.nav-cta{padding:9px 12px}.hero{padding:104px 20px 56px}.hero h1{font-size:40px}.hero-actions{flex-direction:column}.hero-stats{gap:14px;justify-content:space-between}.hero-stats div{padding-left:9px}.hero-stats dt{font-size:22px}.hero-mark{padding:30px 18px}.section,.expertise,.contact{padding:78px 20px}.service-card{padding:30px 24px}.credential{grid-template-columns:1fr;gap:9px}.process ol{grid-template-columns:1fr}.process li{border-left:0;border-top:1px solid var(--line)}footer{grid-template-columns:1fr;text-align:center;gap:18px}footer img{margin:auto}footer span{text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}}

/* Keep the navy wordmark legible against the dark site chrome. */
.header-brand{display:flex;align-items:center;padding:4px 10px;background:rgba(255,255,255,.94)}
.header-brand img{height:40px}
.hero-mark{background:rgba(247,250,249,.94);border-color:rgba(142,218,194,.48);overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.3)}
.hero-mark img,.hero-mark p,.hero-mark>span{position:relative}
.hero-mark img{filter:drop-shadow(0 18px 24px rgba(8,43,80,.15))}
.hero-mark p{color:var(--deep)}

.menu-button,.site-header .mobile-menu{display:none}

@media(max-width:900px){
  .desktop-nav{display:none!important}
  .menu-button{display:grid;width:46px;height:42px;padding:11px;border:1px solid var(--teal);background:transparent;place-content:center;gap:5px;cursor:pointer}
  .menu-button span{display:block;width:21px;height:1px;background:#fff;transition:transform .22s,opacity .22s}
  .menu-open .menu-button span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .menu-open .menu-button span:nth-child(2){opacity:0}
  .menu-open .menu-button span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .site-header .mobile-menu{display:flex;position:absolute;top:76px;left:0;right:0;padding:25px clamp(24px,7vw,64px) 30px;background:rgba(6,29,56,.985);border-top:1px solid rgba(142,218,194,.2);border-bottom:2px solid var(--teal);box-shadow:0 22px 45px rgba(0,0,0,.28);flex-direction:column;visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:.22s}
  .menu-open .mobile-menu{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
  .mobile-menu>p{margin:0 0 15px;font:600 10px ui-monospace,monospace;letter-spacing:.2em;color:#fff}.mobile-menu>p i{font-style:normal;color:var(--teal)}
  .site-header .mobile-menu>a{display:flex!important;align-items:center;gap:18px;padding:15px 2px;border-top:1px solid rgba(142,218,194,.16);color:#e0ebed;font-size:15px;letter-spacing:.08em}
  .mobile-menu>a span{font:10px ui-monospace,monospace;color:var(--teal)}
  .mobile-menu .mobile-contact{margin-top:9px;padding:15px 17px;border:1px solid var(--teal);color:#fff}
  .mobile-menu>small{margin-top:17px;font:9px ui-monospace,monospace;letter-spacing:.28em;color:#7895a2}
}

@media(max-width:560px){
  .mobile-menu{top:66px;padding:22px 20px 27px}
  .header-brand{padding:3px 7px}
  .menu-button{width:42px;height:38px}
}

/* Brand-board website mockup recreation */
.site-header{height:58px;padding:0 clamp(20px,4vw,56px);background:#061f3d;border-bottom:1px solid rgba(102,189,180,.22)}
.header-brand{width:128px;padding:0;background:transparent}
.header-brand img{width:128px;height:auto;filter:brightness(0) invert(1);opacity:.96}
.site-header .desktop-nav{gap:24px;font:600 9px ui-monospace,monospace;letter-spacing:.08em;color:#dce8eb}
.site-header .desktop-nav a{padding:20px 0}
.site-header .desktop-nav .nav-cta{padding:8px 15px;background:#79c8aa;border:0;color:#06203c!important}
.site-header .desktop-nav .profile-nav{color:var(--mint);border-bottom:2px solid var(--teal)}
.mockup-hero{min-height:630px;padding:58px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center;background:linear-gradient(118deg,#061d39 0%,#082f54 58%,#0a4566 100%);position:relative;overflow:hidden}
.mockup-hero::before{content:"";position:absolute;inset:58px 0 54px;background:linear-gradient(105deg,transparent 42%,rgba(76,187,178,.13) 70%,transparent),repeating-linear-gradient(160deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px)}
.mockup-glow{position:absolute;width:620px;height:620px;border-radius:50%;right:-80px;top:25px;background:radial-gradient(circle,rgba(72,194,178,.25),rgba(42,126,139,.08) 38%,transparent 68%)}
.mockup-copy{position:relative;z-index:2;text-align:center;align-self:center;padding-left:7vw;margin-top:-8px}
.domain{margin:0;color:#fff;font:700 clamp(27px,3.1vw,48px)/1.1 Arial,sans-serif;letter-spacing:.015em;text-shadow:0 4px 20px rgba(0,0,0,.28)}
.domain-mobile{display:none}
.mockup-tagline{margin:20px 0 7px;color:#dce8ea;font:600 11px ui-monospace,monospace;letter-spacing:.2em}.mockup-tagline i{font-style:normal;color:#7bcdb7}
.mockup-copy>span{color:#74c8b3;font:9px ui-monospace,monospace;letter-spacing:.32em}
.shield-crop{position:relative;z-index:2;width:205px;height:420px;overflow:hidden;justify-self:center;filter:drop-shadow(0 26px 30px rgba(0,0,0,.22));opacity:.58}
.shield-crop img{height:420px;width:auto;max-width:none;transform:translateX(-69px)}
.mockup-footer{position:absolute;z-index:3;bottom:0;left:0;right:0;height:54px;background:#f7f8f7;color:#0a2746;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(22px,4vw,58px);font:9px ui-monospace,monospace;letter-spacing:.13em}
.mockup-footer strong{font-size:12px}.mockup-footer span{text-align:center;color:#526876}.mockup-footer a{text-align:right;color:#197d7a;font-weight:700}

@media(max-width:900px){
  .mockup-hero{min-height:100svh;padding-top:66px;grid-template-columns:1fr;grid-template-rows:1fr 1.25fr 54px;align-items:center;background:linear-gradient(165deg,#082b4c,#083754 63%,#06223e)}
  .mockup-hero::before{inset:66px 0 54px;background:radial-gradient(circle at 50% 40%,rgba(73,191,177,.16),transparent 47%)}
  .mockup-glow{width:460px;height:460px;right:50%;top:14%;transform:translateX(50%)}
  .mockup-copy{grid-row:2;text-align:center;padding:0 24px;margin:0;align-self:start;position:relative;z-index:4}
  .domain{font-size:clamp(29px,9vw,43px)}
  .domain-desktop{display:none}.domain-mobile{display:inline}
  .mockup-tagline{font-size:10px;margin-top:17px}.mockup-copy>span{font-size:8px}
  .shield-crop{grid-row:1;width:220px;height:250px;align-self:end;opacity:.68}
  .shield-crop img{height:250px;transform:translateX(-42px)}
  .mockup-footer{height:54px;grid-template-columns:1fr 1fr;padding:0 20px}.mockup-footer span{display:none}.mockup-footer a{text-align:right}
}

@media(max-width:560px){
  .site-header{height:66px;padding:0 18px}.header-brand,.header-brand img{width:118px}.mobile-menu{top:66px}
  .mockup-hero{padding-top:66px}.shield-crop{width:108px;height:220px}.shield-crop img{height:220px;transform:translateX(-37px)}
}

/* Migrated desktop copy and long-form sections */
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.intro h1,.manual h2,.pricing h2,.support h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(32px,4vw,56px);line-height:1.35;margin:0}.intro h1 span{display:block;margin-bottom:12px;color:var(--teal);font:600 12px ui-monospace,monospace;letter-spacing:.18em}.intro-grid>div>p{margin:0 0 20px;color:#405866;line-height:2}.intro-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.intro-badges span{border:1px solid var(--line);padding:8px 11px;color:var(--deep);font:600 10px ui-monospace,monospace;letter-spacing:.08em}
.authority-card{margin-bottom:2px;padding:42px;background:linear-gradient(125deg,#04172d,#0a4566);color:#fff;border-bottom:3px solid var(--teal)}.authority-card>p{margin:0;color:var(--teal);font:600 10px ui-monospace,monospace;letter-spacing:.2em}.authority-card h3{margin:17px 0 20px;font:700 27px "Yu Mincho",serif}.authority-card>div{display:grid;grid-template-columns:1fr 1fr;gap:40px}.authority-card>div p{margin:0;color:#ccdcdf;line-height:1.95;font-size:14px}.authority-card ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:27px 0 0;padding:0}.authority-card li{border:1px solid rgba(142,218,194,.35);padding:6px 10px;color:var(--mint);font-size:10px}.service-grid.expanded{grid-template-columns:repeat(3,1fr)}.expanded .service-card{min-height:340px}.expanded .consultant{background:#0a315c;color:#fff}.expanded .consultant h3{color:#fff}.expanded .consultant>p{color:#c8dadd}.expanded .consultant li{border-color:rgba(142,218,194,.32);color:var(--mint)}
.expertise-inner.wide{grid-template-columns:.7fr 1.3fr}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(142,218,194,.18)}.experience-grid article{padding:27px;background:#082849}.experience-grid strong,.support-grid small,.conditions small{color:var(--teal);font:600 10px ui-monospace,monospace;letter-spacing:.12em}.experience-grid h3{margin:14px 0 10px;font:700 19px "Yu Mincho",serif}.experience-grid p{margin:0;color:#bfd0d4;font-size:13px;line-height:1.8}
.manual>h2{margin-bottom:50px}.manual-list{border-top:1px solid var(--line)}.manual-list>div{display:grid;grid-template-columns:190px 1fr;gap:40px;padding:25px 0;border-bottom:1px solid var(--line)}.manual-list strong{color:var(--deep);font:700 16px "Yu Mincho",serif}.manual-list p{margin:0;color:#526b78;line-height:1.9}.philosophy-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:48px}.philosophy-grid article{padding:40px;background:#061f3d;color:#fff;border-top:3px solid var(--teal)}.philosophy-grid article:last-child{border-color:var(--mint)}.philosophy-grid small{color:var(--teal);font:600 10px ui-monospace,monospace;letter-spacing:.18em}.philosophy-grid h3{font:700 25px/1.55 "Yu Mincho",serif;margin:18px 0}.philosophy-grid p{margin:0;color:#c8dadd;line-height:2;font-size:14px}
.pricing{background:#eef6f5}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}.price-grid article{background:#fff;padding:30px 26px;border-top:3px solid var(--teal)}.price-grid small{color:var(--teal);font:600 9px ui-monospace,monospace;letter-spacing:.11em}.price-grid h3{font:700 21px "Yu Mincho",serif;color:var(--deep);margin:20px 0 8px}.price-grid article>p{min-height:42px;color:var(--muted);font-size:13px}.price-grid article>strong{display:block;margin-top:22px;color:var(--deep);font:700 21px ui-monospace,monospace}.price-grid em{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-style:normal}.price-grid ul{margin:26px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.price-grid li{padding:10px 0;border-bottom:1px solid var(--line);color:#526b78;font-size:12px;line-height:1.6}
.support{padding:110px clamp(24px,7vw,108px);background:linear-gradient(125deg,#04172d,#082b50);color:#fff}.support-inner{max-width:1440px;margin:auto}.support .section-label{margin-bottom:24px}.support h2{margin-bottom:22px}.support-lead{max-width:750px;color:#bfd0d4;line-height:2;margin:0 0 48px}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.support-grid article{padding:30px;background:rgba(255,255,255,.05);border-top:2px solid var(--teal)}.support-grid h3{margin:15px 0 12px;font:700 20px "Yu Mincho",serif}.support-grid p{margin:0;color:#bfd0d4;font-size:13px;line-height:1.9}.conditions{margin-top:38px;display:grid;grid-template-columns:repeat(2,1fr);border:1px solid rgba(142,218,194,.2)}.conditions>div{display:flex;flex-direction:column;gap:7px;padding:25px 30px;border:1px solid rgba(142,218,194,.1)}.conditions strong{font-size:18px}.conditions span{color:#9eb5bd;font-size:12px}
@media(max-width:1100px){.service-grid.expanded,.price-grid{grid-template-columns:repeat(2,1fr)}.support-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.intro-grid,.authority-card>div,.expertise-inner.wide{grid-template-columns:1fr}.service-grid.expanded{grid-template-columns:1fr}.manual-list>div{grid-template-columns:1fr;gap:10px}.philosophy-grid{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr}.support-grid,.conditions{grid-template-columns:1fr}}
@media(max-width:560px){.authority-card{padding:30px 24px}.experience-grid{grid-template-columns:1fr}.support{padding:78px 20px}.price-grid article{padding:28px 23px}}

/* Profile page and cross-page navigation */
.profile-link{margin-top:14px;border:1px solid var(--teal);color:var(--deep);font-weight:700}.profile-link:hover{background:var(--teal);color:#031d2f}.profile-hero{min-height:720px;padding:128px clamp(24px,7vw,108px) 86px;display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center;background:radial-gradient(circle at 79% 42%,rgba(43,185,170,.25),transparent 28%),linear-gradient(128deg,#04172d,#08375a);color:#fff}.profile-copy h1{margin:0 0 28px;font:700 clamp(42px,5vw,72px)/1.28 "Yu Mincho","Hiragino Mincho ProN",serif}.profile-copy h1 small{display:block;margin-bottom:13px;color:var(--teal);font:600 12px ui-monospace,monospace;letter-spacing:.22em}.profile-copy>p:not(.section-label){max-width:660px;color:#c8dadd;line-height:2;font-size:15px}.intro-badges.dark span{border-color:rgba(142,218,194,.35);color:var(--mint)}.profile-number{min-height:440px;position:relative;display:flex;align-items:center;justify-content:center;gap:20px;border:1px solid rgba(142,218,194,.22);background:rgba(255,255,255,.04);overflow:hidden}.profile-number strong{font:600 clamp(92px,11vw,170px)/1 ui-monospace,monospace;color:var(--teal)}.profile-number>span{font:600 12px/1.8 ui-monospace,monospace;letter-spacing:.16em;color:#c8dadd}.profile-number img{position:absolute;width:440px;max-width:none;right:-210px;bottom:-70px;opacity:.1;filter:brightness(0) invert(1)}.profile-focus{padding:100px clamp(24px,7vw,108px);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:#0a315c;color:#fff}.profile-focus h2,.profile-cta h2{margin:0;font:700 clamp(32px,4vw,54px)/1.35 "Yu Mincho","Hiragino Mincho ProN",serif}.focus-list{border-top:1px solid rgba(142,218,194,.25)}.focus-list>div{display:grid;grid-template-columns:45px 150px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid rgba(142,218,194,.2);align-items:start}.focus-list span{color:var(--teal);font:10px ui-monospace,monospace}.focus-list strong{font:700 17px "Yu Mincho",serif}.focus-list p{margin:0;color:#bfd0d4;font-size:13px;line-height:1.8}.profile-cta{padding:80px clamp(24px,7vw,108px);display:flex;align-items:center;justify-content:space-between;gap:50px;background:#eef6f5}.profile-cta small{color:var(--teal);font:600 10px ui-monospace,monospace;letter-spacing:.2em}.profile-cta h2{margin:14px 0}.profile-cta p{margin:0;color:var(--muted)}.profile-cta>div:last-child{display:flex;gap:10px}.profile-cta .secondary{border-color:var(--deep);color:var(--deep)}
.profile-gateway{margin:0 clamp(24px,7vw,108px) 110px;display:grid;grid-template-columns:auto 1fr 260px;align-items:stretch;background:linear-gradient(115deg,#04172d,#0a4566);color:#fff;box-shadow:0 22px 60px rgba(8,43,80,.17)}.gateway-number{padding:34px 40px;display:flex;align-items:center;gap:15px;border-right:1px solid rgba(142,218,194,.2)}.gateway-number strong{font:600 70px/1 ui-monospace,monospace;color:var(--teal)}.gateway-number span{font:600 9px/1.7 ui-monospace,monospace;letter-spacing:.12em;color:#a9c0c6}.gateway-copy{padding:32px 42px}.gateway-copy small{color:var(--teal);font:600 9px ui-monospace,monospace;letter-spacing:.18em}.gateway-copy h2{margin:11px 0 9px;font:700 25px/1.45 "Yu Mincho",serif}.gateway-copy p{margin:0;color:#bfd0d4;font-size:12px;line-height:1.7}.gateway-button{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:30px;background:var(--teal);color:#031d2f;transition:.2s}.gateway-button:hover{background:var(--mint)}.gateway-button span{font:700 15px "Yu Mincho",serif}.gateway-button strong{font:600 11px ui-monospace,monospace;letter-spacing:.1em}.site-header .mobile-menu .profile-mobile-link{color:var(--mint);background:rgba(43,185,170,.09)}
@media(max-width:900px){.profile-hero,.profile-focus{grid-template-columns:1fr}.profile-number{min-height:300px}.profile-cta{align-items:flex-start;flex-direction:column}.focus-list>div{grid-template-columns:35px 120px 1fr}}
@media(max-width:1050px){.profile-gateway{grid-template-columns:auto 1fr}.gateway-button{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}}
@media(max-width:700px){.profile-gateway{margin:0 20px 78px;grid-template-columns:1fr}.gateway-number{justify-content:center;border-right:0;border-bottom:1px solid rgba(142,218,194,.2)}.gateway-copy{padding:28px 25px;text-align:center}.gateway-button{grid-column:auto;padding:24px 25px}}
@media(max-width:560px){.profile-hero{min-height:auto;padding:108px 20px 70px}.profile-copy h1{font-size:38px}.profile-number{min-height:230px}.profile-focus{padding:78px 20px}.focus-list>div{grid-template-columns:32px 1fr}.focus-list p{grid-column:2}.profile-cta{padding:65px 20px}.profile-cta>div:last-child{width:100%;flex-direction:column}.profile-cta .button{width:100%}}

/* note / X links */
.social-gateway{padding:88px clamp(24px,7vw,108px);display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:center;background:#eef6f5}.social-gateway h2{margin:0 0 16px;font:700 clamp(30px,3.5vw,48px)/1.35 "Yu Mincho","Hiragino Mincho ProN",serif;color:var(--deep)}.social-gateway>div>p{margin:0;color:var(--muted);line-height:1.9}.social-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.social-card{min-height:190px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;border-top:3px solid var(--teal);background:#fff;box-shadow:0 14px 38px rgba(8,43,80,.08);transition:transform .2s,box-shadow .2s}.social-card:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(8,43,80,.14)}.social-card small{color:var(--teal);font:600 9px ui-monospace,monospace;letter-spacing:.16em}.social-card strong{font:700 21px "Yu Mincho","Hiragino Mincho ProN",serif;color:var(--deep)}.social-card span{color:#197d7a;font-size:12px;font-weight:700}.x-card{background:var(--deep);border-top-color:var(--mint)}.x-card strong{color:#fff}.x-card span{color:var(--mint)}.profile-social{background:#fff}.footer-meta{display:flex;align-items:center;justify-content:flex-end;gap:16px}.footer-meta a{color:var(--teal);font-weight:700}.footer-meta a:hover{color:var(--mint)}
@media(max-width:900px){.social-gateway{grid-template-columns:1fr;gap:38px}.footer-meta{justify-content:center}}
@media(max-width:560px){.social-gateway{padding:70px 20px}.social-actions{grid-template-columns:1fr}.social-card{min-height:155px}.footer-meta{flex-wrap:wrap;gap:12px}}


/* Free consultation / contact */
.consult-page{background:#f7faf9}.consult-hero{padding:128px clamp(24px,7vw,108px) 72px;background:linear-gradient(115deg,#061d39,#0a4566);color:#fff}.consult-hero-inner{max-width:1180px;margin:auto;text-align:center}.consult-hero p{margin:0 0 16px;color:var(--mint);font:600 10px ui-monospace,monospace;letter-spacing:.2em}.consult-hero h1{margin:0 0 18px;font:700 clamp(34px,4vw,54px)/1.3 "Yu Mincho","Hiragino Mincho ProN",serif}.consult-hero span{color:#c8dadd;font-size:14px;line-height:1.8}.consult-section{padding:72px 24px 110px}.consult-shell{max-width:980px;margin:auto}.consult-intro{text-align:center;margin-bottom:35px;color:#405866;line-height:1.9}.consult-intro p{margin:4px 0}.consult-note{font-size:12px;color:var(--muted)}.consult-steps{list-style:none;margin:0 auto 42px;padding:0;max-width:760px;display:grid;grid-template-columns:repeat(4,1fr);position:relative}.consult-steps::before{content:"";position:absolute;left:10%;right:10%;top:20px;height:2px;background:#d9e4e5;z-index:0}.consult-steps li{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;color:#98a9b2;font-size:11px;text-align:center}.consult-steps li span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#dfe8e9;border:6px solid var(--paper);font:700 11px ui-monospace,monospace}.consult-steps li.is-active,.consult-steps li.is-done{color:#0d766f}.consult-steps li.is-active span{background:var(--teal);color:#fff}.consult-steps li.is-done span{background:var(--mint);color:#06203c}.consult-panel{display:none;background:#fff;border:1px solid #cfe0e1;box-shadow:0 16px 50px rgba(8,43,80,.07);padding:44px 48px}.consult-panel.is-active{display:block}.panel-head{text-align:center;border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:32px}.panel-head small{color:var(--teal);font:600 9px ui-monospace,monospace;letter-spacing:.18em}.panel-head h2{margin:10px 0 12px;color:var(--deep);font:700 25px "Yu Mincho",serif}.panel-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.8}.schedule-days{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px}.day-column{border:1px solid var(--line);background:#fbfdfc}.day-title{padding:13px 8px;text-align:center;background:#edf6f5;border-bottom:1px solid var(--line)}.day-title strong{display:block;color:var(--deep);font-size:13px}.day-title span{font-size:11px;color:var(--muted)}.slot-button{width:100%;border:0;border-bottom:1px solid #e0e9e9;background:#fff;padding:13px 5px;cursor:pointer;color:#37616b;font:600 12px ui-monospace,monospace;transition:.16s}.slot-button:hover{background:#ecf8f5;color:#0d766f}.slot-button.is-selected{background:var(--teal);color:#06203c}.slot-button:last-child{border-bottom:0}.consult-types{border:0;padding:0;margin:0 0 26px}.consult-types legend,.field-block>span{display:block;margin-bottom:10px;color:var(--deep);font-weight:700;font-size:13px}.consult-types legend em,.field-block em,.privacy-check em{font-style:normal;color:#c24d4d;font-size:10px;margin-left:5px}.consult-types{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.consult-types legend{grid-column:1/-1}.consult-types label{display:block;cursor:pointer}.consult-types input{position:absolute;opacity:0;pointer-events:none}.consult-types label span{height:100%;display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line);background:#fff;transition:.16s}.consult-types label span b{color:var(--deep);font-size:14px}.consult-types label span small{color:var(--muted);line-height:1.5}.consult-types input:checked+span{border-color:var(--teal);background:#edf8f5;box-shadow:inset 0 0 0 1px var(--teal)}.field-block{display:block;margin-bottom:20px}.field-block input,.field-block textarea,.field-block select{width:100%;border:1px solid #c9dada;background:#fff;padding:13px 14px;font:inherit;color:var(--ink);outline:none}.field-block input:focus,.field-block textarea:focus,.field-block select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(43,185,170,.12)}.field-block textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid .full{grid-column:1/-1}.privacy-check{display:flex;gap:10px;align-items:flex-start;padding:15px;background:#f2f7f6;color:#526b78;font-size:12px;line-height:1.6}.privacy-check input{margin-top:3px}.field-error{min-height:20px;margin:10px 0 0;color:#b33c3c;font-size:12px}.panel-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.panel-actions-end{justify-content:flex-end}.consult-next,.consult-back,.consult-submit{min-height:52px;padding:0 28px;border:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.04em;cursor:pointer}.consult-next,.consult-submit{background:var(--teal);color:#05213d}.consult-next:hover,.consult-submit:hover{background:var(--mint)}.consult-back{background:#edf3f3;color:#526b78}.confirm-box{border-top:1px solid var(--line)}.confirm-row{display:grid;grid-template-columns:180px 1fr;gap:25px;padding:16px 4px;border-bottom:1px solid var(--line)}.confirm-row dt{font-weight:700;color:var(--deep)}.confirm-row dd{margin:0;color:#526b78;white-space:pre-wrap}.send-notice{margin:28px 0 0;padding:20px 22px;background:#eef6f5;border-left:3px solid var(--teal)}.send-notice strong{color:var(--deep)}.send-notice p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.8}.copy-area{margin-top:18px;display:flex;align-items:center;gap:12px}.copy-area button{border:1px solid var(--line);background:#fff;padding:10px 15px;cursor:pointer;color:var(--deep)}.copy-area span{font-size:12px;color:#0d766f}
@media(max-width:900px){.schedule-days{grid-template-columns:repeat(2,1fr)}.consult-panel{padding:36px 28px}}
@media(max-width:560px){.consult-hero{padding:108px 20px 54px}.consult-section{padding:48px 14px 78px}.consult-steps{margin-bottom:25px}.consult-steps li b{font-size:9px}.consult-steps li span{width:34px;height:34px;border-width:5px}.consult-steps::before{top:17px}.consult-panel{padding:28px 18px}.schedule-days{grid-template-columns:1fr}.consult-types,.form-grid{grid-template-columns:1fr}.confirm-row{grid-template-columns:1fr;gap:5px}.panel-actions{flex-direction:column-reverse}.consult-next,.consult-back,.consult-submit{width:100%}.copy-area{align-items:flex-start;flex-direction:column}}
