:root{--canvas:#f1f4f3;--ink:#0f3533;--body:#2c4441;--muted:#4a5f5c;--line:#cbd5d2;--blue:#3347ff;--admin-offset:0px;--anchor-offset:120px}*{box-sizing:border-box}html{scroll-padding-top:var(--anchor-offset)}body{margin:0;background:var(--canvas);color:var(--ink);font-family:'Zen Kaku Gothic New',sans-serif;font-size:16px;line-height:2;letter-spacing:.02em}h1,h2,h3,p,figure,dl,dd,ul,ol{margin:0}h1,h2,h3{line-height:1.45;overflow-wrap:anywhere}p,dd{overflow-wrap:anywhere}p{color:var(--body)}a{color:var(--blue);text-underline-offset:4px}a:hover{text-decoration:none}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button:disabled{opacity:.5}input[type=checkbox],input[type=radio]{accent-color:var(--blue);flex:none;width:18px;height:18px}input,textarea{background:white;border:1px solid #8da8a2;border-radius:12px;padding:16px 18px;max-width:100%;width:100%}textarea{resize:vertical}fieldset{border:0;margin:0;padding:0;min-width:0}small{font-size:12px}::selection{background:#dfe2ff}.english{font-family:'Archivo',sans-serif;letter-spacing:.02em}.wrap{width:calc(100% - 192px);max-width:1248px;margin-inline:auto}.screen-reader-text,.skip-link{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:12px;left:12px;width:auto;height:auto;clip-path:none;padding:12px 24px;background:white;z-index:999999}.header-sentinel{position:absolute;top:0;height:1px;width:1px}.site-header{position:relative;z-index:1000;background:var(--canvas);transition:box-shadow .6s,background .6s}.wac-sticky .site-header{position:sticky;top:var(--admin-offset)}.site-header.scrolled{background:rgba(241,244,243,.98);box-shadow:0 1px 0 var(--line)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:baseline;gap:28px;flex-shrink:0}.brand-logo{font:800 30px/1 'Archivo',sans-serif;letter-spacing:.02em;color:var(--ink);text-decoration:none}.brand-name{font-size:12px;color:var(--muted)}.custom-logo{width:auto;max-width:160px;max-height:48px}.menu{list-style:none;padding:0;display:flex;gap:44px;align-items:center}.menu a{color:var(--ink);text-decoration:none;font-size:15px;font-weight:500}.menu a:hover,.current-menu-item>a{color:var(--blue)}.nav-en{font:500 12px 'Archivo',sans-serif;color:var(--muted);margin-left:7px}#primary-nav .menu li:last-child a{display:block;border-radius:999px;background:var(--blue);color:white;font-weight:700;padding:11px 26px;font-size:14px}.menu-toggle{border:0;background:var(--blue);border-radius:50%;width:44px;height:44px;flex:none;align-items:center;justify-content:center}.menu-toggle:not([hidden]){display:flex}[hidden]{display:none!important}.button{display:inline-flex;justify-content:center;align-items:center;text-align:center;text-decoration:none;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:999px;min-height:64px;padding:16px 40px;font-size:16px;font-weight:700;line-height:1.5}.button:hover{background:#2335db;color:white}.button.outline{background:transparent;color:var(--ink);border-color:var(--ink)}.text-link{display:inline-block;margin-top:28px;font-size:14px;font-weight:700}.hero{padding-top:88px}.hero-lead{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;align-items:end}.hero-title{font-size:115px;font-weight:500;line-height:1.057;letter-spacing:.02em}.hero-lead>p{font-size:15px;line-height:2;padding-bottom:13px}.search-statement{border:1.5px solid var(--ink);background:white;border-radius:999px;min-height:128px;display:flex;align-items:center;gap:28px;padding:28px 44px;margin:56px 0}.search-statement:before{content:'';display:block;flex:none;width:38px;height:38px;background:url('images/search.svg') center/contain no-repeat}.search-statement>p:first-of-type{font-size:46px;font-weight:700;letter-spacing:.02em;line-height:1.3}.search-statement .result-total{font-size:15px;color:var(--muted);white-space:nowrap;margin-left:auto}.results-layout{display:grid;grid-template-columns:minmax(0,768fr) minmax(0,400fr);gap:80px;align-items:start}.result-count{font-size:14px;color:var(--muted);margin-bottom:8px}.result{border-top:1px solid var(--line);padding:28px 0}.result:last-child{border-bottom:1px solid var(--line)}.result-path{font-size:13px;color:var(--muted);margin-bottom:8px}.result h2{font-size:26px;margin-bottom:10px;letter-spacing:.02em}.result h2 a{text-decoration:none}.result h2 a:hover{text-decoration:underline}.result>p:last-child{font-size:15px;line-height:1.9}.company-card{background:white;border:1px solid #dde4e2;border-radius:18px;padding:32px}.company-card h2{font-size:28px;line-height:1.15;letter-spacing:.02em;font-weight:500}.company-card>.muted{font-size:13px;margin:14px 0 24px}.company-card dl>div{border-top:1px solid #dde4e2;padding:12px 0}.company-card dt{font-size:12px;color:var(--muted)}.company-card dd{font-size:14px;line-height:1.6;margin-top:5px}.company-card>a{display:inline-block;font-size:14px;font-weight:700;margin-top:20px}.view-section{margin-top:200px}.section-label h2{font-size:16px;letter-spacing:.02em}.section-label .english{font-size:15px;color:var(--muted);margin-top:6px;line-height:1.4}.view-title{font-size:76px;line-height:1.42;letter-spacing:.02em;margin-top:40px}.view-note{font-size:26px;font-weight:700;line-height:1.7;margin:40px 0 0 384px;color:var(--ink)}.view-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin:96px 0 0 384px}.feature-en{font-size:34px;font-weight:500;line-height:1.2;color:var(--ink)}.feature h3{font-size:18px;margin:16px 0 20px}.feature>p:last-child{font-size:15px;line-height:1.9}.section-row{display:grid;grid-template-columns:288px minmax(0,1fr);gap:48px;margin-top:200px}.section-row>*{min-width:0}.work-section{margin-top:200px}.work-section .section-row{margin-top:0;align-items:end}.section-head{font-size:34px;line-height:1.6}.steps{position:relative;margin-top:72px}.steps>.wp-block-shortcode{display:contents}.steps .diagram{display:block;position:absolute;top:0;left:0;width:auto;max-width:100%;height:auto}.step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:0}.step{padding:32px 0 0 40px}.step:nth-child(1){margin-top:216px}.step:nth-child(2){margin-top:144px}.step:nth-child(3){margin-top:72px}.step h3{font-size:19px}.step h3 span{font-size:13px;font-weight:400;color:var(--muted);margin-left:8px}.step p{font-size:14px;line-height:1.9;margin-top:18px}.home-content>.section-row{margin-top:200px}.news-row{display:grid;grid-template-columns:288px 144px minmax(0,1fr);gap:48px;border-top:1px solid var(--line);padding:30px 0;align-items:start}.news-row:last-child{border-bottom:1px solid var(--line)}.news-row time{font-size:15px;color:var(--muted)}.news-row h2{font-size:18px;font-weight:500;line-height:1.6}.news-row h2 a{color:var(--ink);text-decoration:none}.news-row h2 a:hover{color:var(--blue)}.news-category{font-size:13px;color:var(--muted)}.home-news .news-row{grid-template-columns:136px minmax(0,1fr)}.home-news .news-category{display:none}.contact-cta{display:grid;grid-template-columns:minmax(0,784fr) minmax(0,400fr);gap:64px;align-items:end;border-top:1.5px solid var(--ink);padding-top:48px;margin-top:200px;margin-bottom:192px}.contact-cta h2{font-size:120px;font-weight:500;line-height:.95;letter-spacing:.02em}.contact-cta>div{padding-bottom:12px}.contact-cta p{font-size:17px;line-height:1.9;margin-bottom:32px}.site-footer{border-top:1px solid var(--line);padding:48px 0}.footer-grid{display:grid;grid-template-columns:288px minmax(0,1fr) 200px;gap:48px}.footer-company{font-size:13px;line-height:1.9;color:var(--muted)}.footer-company p{color:inherit}.site-footer .menu{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;align-items:start}.site-footer .menu a{font-size:14px;font-weight:400}.site-footer .menu li:last-child{grid-column:1/-1}.footer-bottom{display:flex;justify-content:space-between;gap:24px;font-size:12px;color:var(--muted);margin-top:64px}.page-intro{padding-top:72px;margin-bottom:128px}.search-small{display:flex;align-items:center;gap:16px;min-height:64px;padding:14px 32px;border:1px solid var(--ink);border-radius:999px;background:white;font-size:16px;font-weight:700;width:560px;max-width:100%;margin-bottom:48px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:10px}.breadcrumb a{color:inherit;text-decoration:none}.title-row{display:flex;align-items:end;gap:48px;justify-content:space-between}.title-row h1{font-size:80px;line-height:1.25;letter-spacing:.02em}.title-row h1 .english{display:inline-block;font-size:36px;font-weight:400;color:var(--muted);margin-left:24px;letter-spacing:.02em}.title-row>p{width:440px;max-width:35%;font-size:16px;line-height:2}.page-content>.section-row:first-child{margin-top:0}.page-content{margin-bottom:200px}.service-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1.5px solid var(--ink);padding-top:24px;margin-top:-64px}.service-nav-item{padding:16px 32px;border-left:1px solid var(--line)}.service-nav-item:first-child{border-left:0;padding-left:0}.service-nav p{font-size:16px;font-weight:700}.service-nav a{text-decoration:none}.service-nav .english{font-size:13px;color:var(--muted);font-weight:400;margin-top:8px}.service-title{font-size:56px;line-height:1.45;letter-spacing:.02em}.service-intro{font-size:16px;line-height:2;max-width:640px;margin-top:32px}.three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.partnership{margin-top:80px}.partnership .diagram{display:block;max-width:100%;height:auto}.partnership .three-grid{gap:24px}.partnership .feature{padding-top:32px}.partnership h3{font-size:22px;margin-top:10px}.partnership .feature>p:first-child{font-size:13px}.notice{background:#e2e6ff;border-radius:8px;padding:20px 24px;font-size:14px;margin-top:40px}.details{margin-top:64px}.detail-row{display:grid;grid-template-columns:320px minmax(0,1fr);gap:32px;padding:26px 0;border-top:1px solid var(--line)}.detail-row:last-child{border-bottom:1px solid var(--line)}.detail-row h3{font-size:18px}.detail-row p{font-size:16px;line-height:2}.support-area{margin-top:48px;font-size:14px}.support-area+.muted{font-size:12px;margin-top:12px}.service-intro+.three-grid{margin-top:64px}.ruled{border-top:1.5px solid var(--ink);padding-top:24px}.ruled .feature-en{font-size:30px}.portfolio-title{font-size:28px;margin-bottom:48px}.sample-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.sample-card img{display:block;width:100%;aspect-ratio:1.44;object-fit:cover;border:1px solid var(--line);border-radius:12px}.sample-card h3{font-size:18px;margin:20px 0 8px}.sample-card p{font-size:14px;line-height:1.9}.sample-card>a{display:inline-block;margin-top:14px;font-size:14px;font-weight:700}.message-content{display:grid;grid-template-columns:minmax(0,1fr) 260px;column-gap:64px;row-gap:32px}.message-title{font-size:44px;line-height:1.5;grid-column:1}.message-content p{font-size:16px;line-height:2;grid-column:1}.company-photo{grid-column:2;grid-row:1/5}.company-photo img{width:260px;aspect-ratio:260/330;object-fit:cover}.message-content .signature{font-size:14px;color:var(--ink)}.company-profile dl>div{display:grid;grid-template-columns:288px minmax(0,1fr);gap:24px;border-top:1px solid var(--line);padding:25px 0}.company-profile dl>div:last-child{border-bottom:1px solid var(--line)}.company-profile dt{font-weight:700;font-size:15px}.company-profile dd{font-size:16px}.history{gap:0}.history-item{border-top:1px solid var(--ink);padding:24px 24px 0 0}.history-year{font-size:64px;line-height:1;font-weight:400;letter-spacing:.02em;margin-bottom:24px;color:var(--ink)}.history-item:last-child .history-year{color:var(--blue)}.history h3{font-size:18px;line-height:1.45}.history .muted{font-size:13px;margin-top:16px;line-height:1.5}.access-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:48px;align-items:end}.map-panel{border:1px solid var(--line);border-radius:16px;background:linear-gradient(125deg,#e4ebea,#eef2f1);min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;font-size:14px}.access-address{font-size:16px;line-height:1.9}.news-archive{margin-bottom:200px}.category-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 40px 336px}.category-nav a{color:var(--ink);font-size:14px;line-height:1.5;border:1px solid #8da8a2;border-radius:999px;padding:12px 22px;text-decoration:none}.category-nav [aria-current]{background:var(--ink);color:white;border-color:var(--ink)}.pagination{margin:40px 0 0 336px}.nav-links{display:flex;gap:10px;flex-wrap:wrap}.page-numbers{display:inline-flex;min-width:48px;min-height:48px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink);font-family:'Archivo',sans-serif}.page-numbers.current{background:var(--ink);color:white}.page-numbers.prev,.page-numbers.next{padding-inline:18px}.article-layout{display:grid;grid-template-columns:288px minmax(0,800px);gap:48px;padding-top:100px;margin-bottom:200px}.article-layout aside{font-size:13px}.article-layout aside time{display:block;margin:32px 0 8px;font-size:16px}.article-layout h1{font-size:52px;line-height:1.5;letter-spacing:.02em;padding-bottom:48px;border-bottom:1px solid var(--ink)}.entry-content{padding-top:48px;line-height:2}.entry-content p{margin-bottom:24px}.entry-content h2{font-size:28px;margin:64px 0 24px}.entry-content h3{margin:40px 0 20px}.entry-content ul,.entry-content ol{padding-left:1.5em}.article-image{margin-top:48px}.post-navigation{margin:48px 0}.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:0;border-block:1px solid var(--line)}.post-navigation .nav-links>div{padding:24px;min-width:0}.post-navigation .nav-next{border-left:1px solid var(--line);text-align:right;grid-column:2}.post-navigation a{font-size:14px;text-decoration:none;color:var(--ink);overflow-wrap:anywhere}.post-navigation small{display:block;color:var(--muted);margin-bottom:10px;font-family:'Archivo',sans-serif}.policy-layout{display:grid;grid-template-columns:288px minmax(0,800px);gap:48px}.policy-meta{font-size:13px;color:var(--muted);line-height:2.4}.policy-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:32px;border-top:1px solid var(--line);padding:32px 0}.policy-content>p{margin-bottom:32px}.policy-item:last-child{border-bottom:1px solid var(--line)}.policy-number{color:var(--blue);font-size:22px}.policy-body h2{font-size:22px;margin-bottom:18px}.policy-body p{font-size:16px;line-height:2}.contact-layout{display:grid;grid-template-columns:288px minmax(0,880px);gap:48px}.form-steps{list-style:none;counter-reset:step;padding:0;margin-bottom:40px}.form-steps li{counter-increment:step;display:flex;gap:14px;align-items:center;font-size:16px;color:var(--muted);margin-bottom:16px}.form-steps li:before{content:counter(step);font:14px 'Archivo',sans-serif;width:30px;height:30px;border:1px solid #8da8a2;border-radius:50%;display:flex;align-items:center;justify-content:center}.form-steps [aria-current]{color:var(--ink);font-weight:700}.form-steps [aria-current]:before{background:var(--blue);color:white;border-color:var(--blue)}.contact-note{padding-top:32px;border-top:1px solid var(--line);font-size:14px;line-height:1.9}.contact-note p+p{margin-top:16px}.wac-contact-form label,.wac-contact-form legend{font-weight:700;font-size:15px;line-height:1.6}.wac-contact-form small{font:400 12px 'Archivo',sans-serif;color:var(--muted);margin-left:6px}.required,.optional{font-size:11px;margin-left:18px;font-weight:500}.required{color:var(--blue)}.optional{color:var(--muted)}.type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px}.type-grid label{display:flex;align-items:center;gap:12px;padding:18px 20px;background:white;border:1px solid var(--line);border-radius:12px;font-weight:400}.type-grid label:has(:checked){border-color:var(--blue);background:#f5f6ff}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px;margin-top:36px}.field{min-width:0}.field label{display:block;margin-bottom:8px}.field.full{grid-column:1/-1}.field input{min-height:60px}.field textarea{min-height:220px}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:32px;margin-top:32px}.consent{display:flex;align-items:center;gap:10px}.wac-contact-form .consent{font-size:14px;font-weight:400}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-errors{border:1px solid #a13232;padding:24px;margin-bottom:32px;background:#fff7f5}.form-errors h2{font-size:20px}.form-errors ul{padding-left:20px}.field-error{color:#a13232;font-size:14px;margin-top:6px}[aria-invalid=true]{border-color:#a13232}.confirm-list>div{padding:24px 0;border-bottom:1px solid var(--line)}.confirm-list dt{font-weight:700}.confirm-list dd{margin-top:8px}.form-complete{padding:40px;border:1px solid var(--line);border-radius:12px}.basic-page{padding-block:100px 200px}.basic-page h1{font-size:48px;margin-bottom:32px}.search-form{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0}.search-form label{width:100%}.search-form input{max-width:480px}.search-form button{border:0;border-radius:12px;background:var(--blue);color:white;padding:12px 24px}.search-result{border-top:1px solid var(--line);padding:32px 0}.muted{color:var(--muted)}[id]{scroll-margin-top:var(--anchor-offset)}.reveal{opacity:1;transform:none}.reveal-pending{opacity:0;transform:translateY(24px)}.is-visible{transition:opacity 1.6s cubic-bezier(.22,1,.36,1) var(--delay,0ms),transform 1.6s cubic-bezier(.22,1,.36,1) var(--delay,0ms)}.reveal:focus-within{opacity:1!important;transform:none!important;transition:none!important}
@media(max-width:1250px){.wrap{width:calc(100% - 96px)}.brand{gap:16px}.brand-name{font-size:10px}.menu{gap:24px}.nav-en{display:none}.hero-title{font-size:clamp(70px,8vw,115px)}.search-statement>p:first-of-type{font-size:34px}.results-layout{gap:40px}.view-title{font-size:60px}.view-note,.view-features{margin-left:28%}.section-row,.contact-layout,.policy-layout,.article-layout{grid-template-columns:220px minmax(0,1fr);gap:32px}.footer-grid{grid-template-columns:220px minmax(0,1fr) 190px;gap:32px}.service-title{font-size:44px}.detail-row{grid-template-columns:1fr 1.3fr}.company-profile dl>div{grid-template-columns:180px minmax(0,1fr)}.message-content{grid-template-columns:1fr 180px;gap:32px}.message-title{font-size:34px}.contact-cta h2{font-size:100px}.contact-cta{gap:40px}.news-row{grid-template-columns:200px 120px 1fr;gap:32px}.category-nav,.pagination{margin-left:252px}.title-row h1{font-size:64px}.title-row h1 .english{font-size:30px}.steps .diagram{width:100%}.step{padding-left:20px}.step:nth-child(1){margin-top:17.3%}.step:nth-child(2){margin-top:11.55%}.step:nth-child(3){margin-top:5.8%}.step:nth-child(1){padding-top:calc(17.3vw - 16px)}.step:nth-child(2){padding-top:calc(11.55vw - 16px)}.step:nth-child(3){padding-top:calc(5.8vw - 16px)}.step{margin-top:0!important}.step:last-child{padding-top:32px}}
@media(max-width:900px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:72px;flex-wrap:wrap;gap:0}.brand-logo{font-size:25px}.brand{gap:10px}.brand-name{font-size:8px}.custom-logo{max-height:36px;max-width:100px}.menu-toggle{width:44px;height:44px}#primary-nav{width:100%;padding:16px 0 24px}#primary-nav .menu{align-items:stretch;flex-direction:column;gap:0}#primary-nav li>a{display:block;padding:14px 0}#primary-nav .nav-en{display:inline;margin-left:12px}#primary-nav .menu li:last-child a{text-align:center;margin-top:12px}.hero{padding-top:48px}.hero-lead{grid-template-columns:1fr;gap:32px}.hero-title{font-size:clamp(34px,12.3vw,76px);line-height:1.06;letter-spacing:.02em}.hero-lead>p{padding:0;line-height:1.9}.search-statement{min-height:66px;border-radius:16px;padding:16px 12px;gap:10px;margin:32px 0}.search-statement:before{width:16px;height:16px;background-image:url('images/search-mobile.svg')}.search-statement>p:first-of-type{font-size:18px;line-height:1.6;letter-spacing:.02em}.search-statement .result-total{display:none}.results-layout{grid-template-columns:1fr;gap:32px}.result-count{font-size:11px}.result{padding:24px 0}.result-path{font-size:11px;line-height:1.65}.result h2{font-size:19px;line-height:1.6}.result>p:last-child{font-size:14px;line-height:1.9}.company-card{padding:24px;border-radius:14px}.company-card h2{font-size:24px}.company-card>.muted{font-size:12px}.company-card dl>div{padding:10px 0}.company-card dd{font-size:13px}.view-section{margin-top:160px}.section-label h2{font-size:16px}.section-label .english{font-size:13px}.view-title{font-size:28px;line-height:1.8;letter-spacing:.02em;margin-top:38px}.view-note{font-size:20px;line-height:1.7;margin:38px 0 0}.view-features{grid-template-columns:1fr;gap:0;margin:38px 0 0}.feature{border-top:1px solid var(--ink);padding:24px 0}.feature-en{font-size:26px}.feature h3{font-size:16px;margin:10px 0 14px}.feature>p:last-child{font-size:14px;line-height:1.9}.section-row,.contact-layout,.policy-layout,.article-layout{grid-template-columns:1fr;gap:40px;margin-top:120px}.section-head{font-size:28px;line-height:1.6}.work-section{margin-top:120px}.work-section .section-row{gap:32px}.steps{margin-top:32px}.steps .diagram{display:none}.step-grid{grid-template-columns:1fr}.step,.step:nth-child(n){margin:0;padding:24px 0!important;border-top:1px solid var(--ink)}.step:last-child{border-color:var(--blue)}.step h3{font-size:18px}.step p{margin-top:14px;font-size:14px}.home-content>.section-row{margin-top:120px}.news-row,.home-news .news-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.news-row time{font-size:13px}.news-row h2{font-size:16px}.news-category{font-size:12px}.home-news .news-row{gap:10px}.contact-cta{grid-template-columns:1fr;gap:24px;padding-top:32px;margin-top:120px;margin-bottom:80px}.contact-cta h2{font-size:64px;line-height:.95;letter-spacing:.02em}.contact-cta p{font-size:14px;margin-bottom:24px;line-height:1.9}.contact-cta>div{padding:0}.button{min-height:56px;padding:16px 24px;font-size:14px}.contact-cta .button{width:100%}.site-footer{padding:32px 0 40px}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-company{font-size:12px;line-height:1.9}.footer-company p+p{margin-top:10px}.site-footer .menu{gap:12px 24px}.site-footer .menu a{font-size:13px}.footer-bottom{flex-direction:column;gap:4px;margin-top:32px;font-size:11px}.page-intro{padding-top:48px;margin-bottom:96px}.search-small{min-height:48px;padding:10px 20px;gap:12px;font-size:13px;margin-bottom:32px;width:100%}.search-small img{width:16px;height:16px}.breadcrumb{font-size:11px;margin-bottom:20px}.title-row{display:block}.title-row h1{font-size:40px;line-height:1.45;letter-spacing:.02em}.title-row h1 .english{display:block;font-size:24px;margin:4px 0 0}.title-row>p{max-width:none;width:auto;font-size:15px;line-height:1.9;margin-top:32px}.page-content{margin-bottom:120px}.service-nav{grid-template-columns:1fr;margin-top:-32px;padding:0}.service-nav-item,.service-nav-item:first-child{border:0;border-bottom:1px solid var(--line);padding:20px 0}.service-nav p{font-size:14px}.service-nav .english{font-size:12px;margin-top:4px}.service-title{font-size:28px;line-height:1.65}.service-intro{font-size:15px;line-height:1.9;margin-top:24px}.three-grid{grid-template-columns:1fr;gap:0}.partnership{margin-top:40px}.partnership .diagram{display:none}.partnership .feature{padding:24px 0}.partnership h3{font-size:20px}.notice{font-size:13px;padding:20px;margin-top:24px}.details{margin-top:40px}.detail-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.detail-row h3{font-size:17px}.detail-row p{font-size:14px;line-height:1.9}.support-area{margin-top:32px;font-size:13px}.service-intro+.three-grid{margin-top:40px}.ruled .feature-en{font-size:26px}.portfolio-title{font-size:24px;margin-bottom:32px}.sample-grid{grid-template-columns:1fr;gap:40px}.sample-card h3{font-size:17px}.message-content{display:flex;flex-direction:column;gap:24px}.message-title{font-size:28px}.company-photo img{width:100%;aspect-ratio:342/420;object-fit:cover;border-radius:12px}.message-content p{font-size:15px;line-height:1.9}.company-profile dl>div{grid-template-columns:1fr;gap:12px;padding:28px 0}.company-profile dt{font-size:14px}.company-profile dd{font-size:15px;line-height:1.9}.history-item{padding:24px 0 32px}.history-year{font-size:52px;margin-bottom:20px}.history h3{font-size:18px}.access-grid{grid-template-columns:1fr;gap:24px}.map-panel{min-height:270px}.access-address{font-size:14px}.news-archive{margin-bottom:120px}.category-nav{margin:0 0 32px;gap:8px}.category-nav a{font-size:12px;padding:10px 18px}.pagination{margin:32px 0 0}.article-layout{padding-top:48px;margin-top:0;margin-bottom:120px;gap:32px}.article-layout aside time{margin-top:24px}.article-layout h1{font-size:32px;line-height:1.6;padding-bottom:32px}.entry-content{padding-top:32px;font-size:15px}.entry-content h2{font-size:24px;margin-top:48px}.post-navigation .nav-links>div{padding:20px 12px}.policy-layout{margin-top:0;gap:48px}.policy-meta{font-size:12px}.policy-item{grid-template-columns:24px 1fr;gap:16px;padding:28px 0}.policy-body h2{font-size:19px}.policy-body p{font-size:15px;line-height:1.9}.contact-layout{margin-top:0;gap:48px}.form-steps{display:flex;justify-content:space-between;gap:8px;margin:0 0 32px}.form-steps li{gap:8px;font-size:14px;margin:0}.form-steps li:before{width:28px;height:28px;font-size:12px}.contact-note{font-size:14px;padding-top:24px}.field-grid{grid-template-columns:1fr;gap:32px}.type-grid{grid-template-columns:1fr;gap:10px}.type-grid label{font-size:14px;padding:16px 14px}.field.full{grid-column:auto}.wac-contact-form label,.wac-contact-form legend{font-size:14px}.wac-contact-form small{font-size:11px}.required,.optional{margin-left:10px}.form-actions{flex-direction:column;align-items:stretch;gap:24px}.form-actions .button{width:100%}.field textarea{min-height:200px}.basic-page{padding-block:64px 120px}.basic-page h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1!important;transform:none!important}}


.results-layout>.company-card{margin:0}

@media(max-width:900px){.search-statement>p:first-of-type{font-size:clamp(14px,4vw,18px)}}

.profile-en{display:block;font-size:12px;font-weight:400;color:var(--muted);line-height:1.5;margin-top:4px}

@media(max-width:900px){.site-header.menu-ready #primary-nav{position:absolute;left:0;right:0;top:100%;width:auto;padding:16px 24px 24px;background:var(--canvas);border-bottom:1px solid var(--line);max-height:calc(100dvh - 120px);overflow:auto}}
.hero-title{letter-spacing:.02em}
@media(max-width:900px){.title-row h1{font-size:clamp(40px,11.54vw,45px);line-height:55px;letter-spacing:.02em}.title-row h1 .english{font-size:25px;line-height:30px}.service-title{font-size:31px;line-height:46px}.message-title{font-size:31px;line-height:47px}.message-content p{font-size:16px;line-height:32px}.policy-body h2{font-size:22px;line-height:33px}.policy-body p{font-size:16px;line-height:32px}.policy-content>p{font-size:17px;line-height:34px}.wac-contact-form label,.wac-contact-form legend{font-size:15px}}

/* 1.1: a quiet technical backdrop and a single-pass search typing effect. */
/* The same lightweight background continues through every page and section. */
body{background-color:var(--canvas);background-image:
 radial-gradient(ellipse 80% 470px at 84% 480px,rgba(51,71,255,.16),transparent),
 radial-gradient(ellipse 75% 470px at 16% 480px,rgba(141,193,174,.18),transparent),
 linear-gradient(rgba(15,53,51,.055) 1px,transparent 1px),
 linear-gradient(90deg,rgba(15,53,51,.055) 1px,transparent 1px);
 background-size:100% 960px,100% 960px,56px 56px,56px 56px;
 background-repeat:repeat;
 font-feature-settings:normal;
}
/* Natural, equal Japanese advances; no per-glyph positioning overrides. */
:where(h1,h2,h3,h4,h5,h6,p,dt,dd,li,label,legend){text-indent:0;hanging-punctuation:none}
:where(main,.contact-cta,.site-footer) :where(h1,h2,h3,h4,h5,h6,p,dt,dd){text-align:start}
:where(.map-panel,.button){text-align:center}
.english{font-feature-settings:normal}
.title-row h1{min-width:0}
.title-ja{font:inherit}
:where(.hero-lead,.results-layout,.three-grid,.sample-grid,.field-grid,.title-row)>*{min-width:0}
:where(a,span,label,legend,dt,li){overflow-wrap:anywhere}
.search-small img,.form-steps li::before{flex-shrink:0}
@media(max-width:900px){
 body{background-size:100% 960px,100% 960px,36px 36px,36px 36px}
 .title-row h1{display:flex;flex-direction:column;align-items:flex-start;gap:8px;line-height:1.4}
 .title-row h1 .english{margin:0;line-height:1.4}
 .step h3 span{display:block;margin:6px 0 0}
 .field label small,.wac-contact-form legend small{display:block;margin:4px 0 0}
 .required,.optional{display:inline-block}
 .type-grid label,.consent{align-items:flex-start}
 .type-grid input,.consent input{margin-top:.35em}
}
.home-content .search-statement{background:rgba(255,255,255,.94);border-color:rgba(15,53,51,.65);box-shadow:0 16px 44px -24px rgba(15,53,51,.2),0 0 0 6px rgba(255,255,255,.3)}
.home-content .company-card{box-shadow:0 18px 48px -32px rgba(15,53,51,.2)}
@media(max-width:900px){
 .home-content .search-statement{box-shadow:0 12px 32px -22px rgba(15,53,51,.24),0 0 0 4px rgba(255,255,255,.35)}
}
@media(max-width:900px){
 .field label,.wac-contact-form legend{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;text-align:start}
 .field label small,.wac-contact-form legend small{grid-column:1;grid-row:2;margin:4px 0 0}
 .field label .required,.field label .optional,.wac-contact-form legend .required{grid-column:2;grid-row:1;margin:0;align-self:start}
}

/* 1.3: uniform tracking; Figma typing mask, slowed to 2x duration. */
body{font-kerning:none;font-variant-ligatures:none}
.home-content .search-statement>p:first-of-type{min-width:0;max-width:100%}
.is-typing{animation:wac-figma-typing-desktop 10s linear infinite}
@keyframes wac-figma-typing-desktop{0%{clip-path:inset(0 100% 0 0)}2.24%{clip-path:inset(0 100% 0 0)}2.4%{clip-path:inset(0 93.75% 0 0)}4.64%{clip-path:inset(0 93.75% 0 0)}4.8%{clip-path:inset(0 87.5% 0 0)}7.04%{clip-path:inset(0 87.5% 0 0)}7.2%{clip-path:inset(0 81.25% 0 0)}9.44%{clip-path:inset(0 81.25% 0 0)}9.6%{clip-path:inset(0 75% 0 0)}11.84%{clip-path:inset(0 75% 0 0)}12%{clip-path:inset(0 68.75% 0 0)}14.24%{clip-path:inset(0 68.75% 0 0)}14.4%{clip-path:inset(0 62.5% 0 0)}16.64%{clip-path:inset(0 62.5% 0 0)}16.8%{clip-path:inset(0 56.25% 0 0)}19.04%{clip-path:inset(0 56.25% 0 0)}19.2%{clip-path:inset(0 50% 0 0)}21.44%{clip-path:inset(0 50% 0 0)}21.6%{clip-path:inset(0 43.75% 0 0)}23.84%{clip-path:inset(0 43.75% 0 0)}24%{clip-path:inset(0 37.5% 0 0)}26.24%{clip-path:inset(0 37.5% 0 0)}26.4%{clip-path:inset(0 31.25% 0 0)}28.64%{clip-path:inset(0 31.25% 0 0)}28.8%{clip-path:inset(0 25% 0 0)}31.04%{clip-path:inset(0 25% 0 0)}31.2%{clip-path:inset(0 18.75% 0 0)}33.44%{clip-path:inset(0 18.75% 0 0)}33.6%{clip-path:inset(0 12.5% 0 0)}35.84%{clip-path:inset(0 12.5% 0 0)}36%{clip-path:inset(0 6.25% 0 0)}38.24%{clip-path:inset(0 6.25% 0 0)}38.4%{clip-path:inset(0 0% 0 0)}100%{clip-path:inset(0 0% 0 0)}}
@keyframes wac-figma-typing-mobile{0%{clip-path:inset(0 100% 0 0)}3.1%{clip-path:inset(0 100% 0 0)}3.333%{clip-path:inset(0 93.75% 0 0)}6.433%{clip-path:inset(0 93.75% 0 0)}6.667%{clip-path:inset(0 87.5% 0 0)}9.767%{clip-path:inset(0 87.5% 0 0)}10%{clip-path:inset(0 81.25% 0 0)}13.1%{clip-path:inset(0 81.25% 0 0)}13.333%{clip-path:inset(0 75% 0 0)}16.433%{clip-path:inset(0 75% 0 0)}16.667%{clip-path:inset(0 68.75% 0 0)}19.767%{clip-path:inset(0 68.75% 0 0)}20%{clip-path:inset(0 62.5% 0 0)}23.1%{clip-path:inset(0 62.5% 0 0)}23.333%{clip-path:inset(0 56.25% 0 0)}26.433%{clip-path:inset(0 56.25% 0 0)}26.667%{clip-path:inset(0 50% 0 0)}29.767%{clip-path:inset(0 50% 0 0)}30%{clip-path:inset(0 43.75% 0 0)}33.1%{clip-path:inset(0 43.75% 0 0)}33.333%{clip-path:inset(0 37.5% 0 0)}36.433%{clip-path:inset(0 37.5% 0 0)}36.667%{clip-path:inset(0 31.25% 0 0)}39.767%{clip-path:inset(0 31.25% 0 0)}40%{clip-path:inset(0 25% 0 0)}43.1%{clip-path:inset(0 25% 0 0)}43.333%{clip-path:inset(0 18.75% 0 0)}46.433%{clip-path:inset(0 18.75% 0 0)}46.667%{clip-path:inset(0 12.5% 0 0)}49.767%{clip-path:inset(0 12.5% 0 0)}50%{clip-path:inset(0 6.25% 0 0)}53.1%{clip-path:inset(0 6.25% 0 0)}53.333%{clip-path:inset(0 0% 0 0)}100%{clip-path:inset(0 0% 0 0)}}
@media(max-width:900px){
 .is-typing{animation-name:wac-figma-typing-mobile;animation-duration:6s}
 .home-content .search-statement>p:first-of-type{font-size:clamp(12px,3.7vw,18px)}
}
@media(prefers-reduced-motion:reduce){.is-typing{animation:none!important;clip-path:none!important}}
