/* Values are based on the 100.000000cqw-wide Figma mobile artboard. */
html { scroll-padding-top: 18.000000cqw; }
.header, .header.is-scrolled { height:14.800000cqw; padding:0; align-items:flex-start; }
.brand { position:absolute;left:2.933333cqw;top:4.000000cqw;gap:2.186667cqw;transform:none;width:auto;zoom:calc(100vw / 750px); }
/* The brand and SVG wrappers scale their intrinsic artwork together. */
.brand { left:2.933333cqw;top:4.000000cqw;gap:2.186667cqw; }
.brand > span { gap:0.800000cqw; }
.header.is-scrolled .brand { top:2.400000cqw; }
.header.is-scrolled .brand .brand-scrolled { width:48.266667cqw;height:12.533333cqw; }
.mobile-contact, .menu-toggle { position:absolute;top:0;width:14.800000cqw;height:14.800000cqw;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:0; }
.mobile-contact { right:14.933333cqw;background:#fff; }
.mobile-contact > span { zoom:calc(100vw / 750px); }
.menu-toggle { right:0;background:var(--blue);flex-direction:column;gap:2.533333cqw; }
.menu-toggle span { width:8.000000cqw;height:0.133333cqw;background:#fff;transition:transform .2s; }
.menu-toggle[aria-expanded=true] span:first-child { transform:translateY(2.666667cqw) rotate(45deg); }
.menu-toggle[aria-expanded=true] span:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-2.666667cqw) rotate(-45deg); }
.header nav { top:14.800000cqw;right:0;width:min(100%,48.000000cqw);padding:3.200000cqw;max-height:calc(100dvh - 14.800000cqw);overflow:auto;gap:2.933333cqw;font-size:2.133333cqw; }
.header .nav-contact { width:100%;min-height:7.333333cqw;height:auto;padding:2.400000cqw; }
.sp-break { display:block; }
.hero { min-height:0;height:199.200000cqw;background:none; }
.hero-bg { mask:url('../image/9e46e.svg') 0 0 / 192% 100% no-repeat;background-position:-0.133333cqw -2.000000cqw;background-size:191.867% auto; }
.hero-copy { top:19.866667cqw;left:6.666667cqw;right:6.400000cqw; }
.hero h1, footer h2 { font-size:8.800000cqw;line-height:11.466667cqw;letter-spacing:1.760000cqw;font-weight:800;white-space:normal;text-shadow:none; }
.hero h1 { margin-left:1.066667cqw; }
.hero h1 em, footer h2 em { padding-left:1.333333cqw;margin-left:-1.333333cqw; }
.hero-copy>p { font-size:2.666667cqw;line-height:4.000000cqw;letter-spacing:0.266667cqw;margin-top:2.933333cqw; }
.hero-actions { gap:2.133333cqw;margin-top:2.800000cqw; }
.hero .button { width:100%;min-height:13.333333cqw;border:0.266667cqw solid #fff;padding:0 4.533333cqw 0 8.533333cqw;font-size:4.000000cqw;border-radius:0.666667cqw; }
.sp-chevron,.sp-small-chevron { display:block;zoom:calc(100vw / 750px); }
.sp-chevron img,.sp-small-chevron img { margin:0; }
.pc-arrow { display:none; }
.hero-photo { left:5.466667cqw;top:111.866667cqw;width:90.533333cqw;height:78.937467cqw;mask:url('../image/bb08c.svg') 0 0 /100% 100% no-repeat; }
.corner { display:block;scale:calc(100cqw / 750px); }
.c1 { left:8.400000cqw;top:113.866667cqw; }
.c2 { left:94.133333cqw;top:114.000000cqw; }
.c3 { left:8.400000cqw;top:189.466667cqw; }
.c4 { left:94.133333cqw;top:189.466667cqw; }
.hero-orbit,.scroll { display:none; }
.section,.narrow { margin-left:5.466667cqw;margin-right:4.000000cqw;width:auto;max-width:none; }
.about { display:block;min-height:0;padding:10.000000cqw 0 16.800000cqw; }
.eyebrow { font-size:3.466667cqw;line-height:5.066667cqw;gap:2.266667cqw; }
.eyebrow picture,.program-label picture { zoom:calc(100vw / 750px); }
.about h2 { font-size:8.800000cqw;line-height:10.133333cqw;max-width:none;margin-top:2.666667cqw; }
.about-text { font-size:3.466667cqw;line-height:6.933333cqw;letter-spacing:0.346667cqw;margin:2.933333cqw 0.533333cqw 0 0.800000cqw;padding:0; }
.section-heading { gap:2.933333cqw;padding:0 0 2.000000cqw;flex-wrap:nowrap;align-items:baseline; }
.section-heading h2,.company h2 { font-size:12.800000cqw;line-height:14.000000cqw; }
.section-heading>span { font-size:2.666667cqw;line-height:4.000000cqw;white-space:nowrap; }
.middle { background:linear-gradient(to bottom,#fff 0%,#fff 42%,#e6efff 100%); }
.service-layout { display:flex;flex-direction:column;gap:8.400000cqw;padding-top:4.533333cqw; }
.service-visual { order:-1;width:100%;height:auto; }
.program-label { font-size:4.000000cqw;line-height:5.866667cqw;height:8.000000cqw;padding:1.066667cqw 2.133333cqw;gap:2.133333cqw;width:100%;background-size:191.867vw auto;mask:url('../image/01a4d.svg') 0 0/100% 100% no-repeat;white-space:nowrap; }
.service h3 { font-size:7.466667cqw;line-height:11.200000cqw;letter-spacing:0;margin:2.800000cqw 0 3.600000cqw -4.133333cqw;white-space:nowrap; }
.service-text { font-size:3.466667cqw;line-height:7.466667cqw;padding:0 0 0 0.400000cqw;max-width:none; }
.service-copy>.button { margin:5.200000cqw 0 0;width:100%;min-height:16.000000cqw;border:0.266667cqw solid var(--blue);padding:0 4.000000cqw 0 7.200000cqw;font-size:4.000000cqw;border-radius:0.666667cqw; }
.strengths { padding-top:9.866667cqw; }
.strength-layout { display:block;padding:5.866667cqw 0 0; }
.strength-photo,.sp-strength-photo { display:block;width:calc(100% - 0.400000cqw);aspect-ratio:676/360;max-height:none;height:auto;overflow:hidden;position:relative;mask:url('../image/23abe.svg') 0 0/100% 100% no-repeat;margin-left:0.400000cqw; }
.strength-photo img { position:absolute;width:101.04%;height:284.72%;margin:0;left:-.592%;top:-138.889%;object-fit:cover; }
.sp-strength-photo img { position:absolute;max-width:none;object-fit:cover; }
.photo-ai img { width:110.503%;height:311.111%;left:-5.178%;top:-85%; }
.photo-meeting img { width:101.627%;height:286.111%;left:-1.036%;top:-123.333%; }
.strength-card,.strength-card.featured { padding:0;border:0;background:none;color:var(--ink);mask:none;min-height:0; }
.strength-card .number { font-size:3.466667cqw;line-height:4.266667cqw;margin:4.133333cqw 0 1.466667cqw; }
.strength-card h3,.strength-card.featured h3 { font-size:6.133333cqw;line-height:7.466667cqw;color:var(--blue);margin:0 0 4.133333cqw; }
.strength-card>p:not(.number) { font-size:4.000000cqw;line-height:5.333333cqw;font-weight:500; }
.strength-card+.strength-card { margin-top:11.866667cqw; }
.news { display:block;padding:8.933333cqw 0 12.000000cqw; }
.news>div:first-child { display:flex;align-items:baseline;gap:3.466667cqw;margin-bottom:2.666667cqw; }
.news h2 { font-size:10.133333cqw;line-height:11.200000cqw; }
.news>div>p { font-size:2.666667cqw;line-height:4.000000cqw;margin:0; }
.news article { min-height:38.666667cqw;padding:4.533333cqw 1.200000cqw 4.666667cqw; }
.news-meta { gap:5.066667cqw;margin-bottom:3.333333cqw;font-size:3.200000cqw;line-height:3.733333cqw; }
.news time { font-size:3.200000cqw; }
.news h3 { display:none; }
.news article>p { font-size:4.000000cqw;line-height:5.333333cqw; }
.company { display:flex;flex-direction:column;padding:6.133333cqw 0 0; }
.company-heading { display:contents; }
.company-heading>div { display:flex;align-items:baseline;gap:2.933333cqw;border-bottom:0.133333cqw solid var(--line);padding-bottom:2.000000cqw;margin-bottom:4.800000cqw; }
.company-heading p { font-size:2.666667cqw;margin:0;white-space:nowrap; }
.company-heading button { order:3;align-self:center;font-size:3.466667cqw;line-height:5.066667cqw;gap:3.733333cqw;margin:5.066667cqw 0 6.400000cqw; }
.company-table>div { grid-template-columns:24.666667cqw minmax(0,1fr);min-height:13.333333cqw;padding:4.133333cqw 3.066667cqw;gap:0;font-size:3.200000cqw;line-height:4.533333cqw; }
.company-table dt { font-weight:400; }
.company-table .address { padding:5.333333cqw 3.066667cqw 5.600000cqw; }
.company-table .address dd { display:contents; }
.company-table .address dd>p { grid-column:2; }
.map { grid-column:1/-1;width:calc(100% - 1.600000cqw);margin:2.133333cqw 0.800000cqw 0;aspect-ratio:617/357;mask:url('../image/a0726.svg') 0 0/100% 100% no-repeat;position:relative; }
.map img { position:absolute;width:129.011%;height:149.3%;margin:0;left:-8.428%;top:-23.81%;object-fit:cover; }
.contact { min-height:95.333333cqw;background-size:192% auto;background-position:right -64.400000cqw; }
.contact:before { mask-image:url('../image/cf630.svg'); }
.back-top { display:none; }
.contact-symbol { top:10.000000cqw;left:13.066667cqw;right:auto;opacity:1;scale:calc(100cqw / 750px);transform-origin:top left; }
.contact-copy { padding:15.333333cqw 5.333333cqw 24.266667cqw; }
.contact h2 { font-size:7.466667cqw;line-height:8.800000cqw; }
.contact-copy>p { font-size:3.466667cqw;line-height:4.800000cqw;max-width:86.533333cqw;margin:4.000000cqw 0 6.400000cqw; }
.contact .button { min-height:13.333333cqw;width:calc(100% - 2.000000cqw);padding:0 3.333333cqw 0 8.533333cqw;font-size:3.466667cqw;border:0.266667cqw solid white;border-radius:0.666667cqw; }
.contact-english { left:0.666667cqw;bottom:1.866667cqw;font-size:16.800000cqw;line-height:6.933333cqw;letter-spacing:1.680000cqw; }
footer { padding:13.466667cqw 4.000000cqw 1.333333cqw 5.466667cqw;min-height:0; }
footer h2 { margin-left:1.600000cqw; }
.footer-description { font-size:3.200000cqw;line-height:4.533333cqw;letter-spacing:0.320000cqw;margin-top:7.200000cqw; }
footer nav { margin-top:16.933333cqw;font-size:4.000000cqw;line-height:8.000000cqw;gap:8.000000cqw; }
footer nav .sub-link { padding-left:2.533333cqw;margin-top:-5.333333cqw;margin-bottom:0.933333cqw; }
.footer-brand { position:static;margin-top:32.000000cqw; }
.footer-brand img { width:71.066667cqw;height:18.400000cqw;object-fit:cover; }
.footer-brand small { font-size:1.600000cqw;line-height:4.800000cqw;letter-spacing:0.320000cqw;margin-top:-2.400000cqw;white-space:nowrap; }

.brand { left:22px;top:30px;gap:16.4px; }
.brand>span { gap:6px; }
.header.is-scrolled .brand { top:8px; }
.header.is-scrolled .brand .brand-scrolled { width:362px;height:94px; }
.header nav { width:min(100%,360px);padding:24px;gap:22px;font-size:16px; }
.header .nav-contact { min-height:55px;padding:18px; }
/* Preserve the two-line contact heading from the supplied design. */
.contact h2 { white-space:nowrap; }
