/* The TOP needs one 35KB Latin subset instead of the retained 12MB Japanese webfont set. */
@font-face {
 font-family:'Montserrat';
 font-style:normal;
 font-weight:400 700;
 font-display:swap;
 src:url('assets/c4f4a8cd0b92a14a6789.woff2') format('woff2');
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root {
 --nakano-japanese-font:-apple-system,BlinkMacSystemFont,'Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic','YuGothic','Meiryo',sans-serif;
}
.nakano-font-jp { font-family:var(--nakano-japanese-font)!important; }
.nakano-font-latin { font-family:'Montserrat',var(--nakano-japanese-font)!important; }
.nakano-header-hidden { display:none!important; }
@media (min-width:1141px) {
 header[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
  padding-left:clamp(48px,4.57vw,64px)!important;
  padding-right:clamp(48px,4.57vw,64px)!important;
 }
}
header ul[data-s-43925c0d-3fd7-4b26-928d-05ebeae2d95e] > li {
 align-items:center!important;
}
.nakano-header-nav-primary {
 opacity:1!important;
 text-align:center!important;
 translate:none!important;
}
.nakano-header-nav-duplicate { display:none!important; }
header ul[data-s-43925c0d-3fd7-4b26-928d-05ebeae2d95e] > li:hover .nakano-header-nav-primary,
.nakano-header-nav-primary:focus-visible {
 color:#2462c5!important;
 opacity:1!important;
 translate:none!important;
}
.nakano-header-actions {
 align-items:stretch;
 display:flex;
 flex:0 0 auto;
 gap:10px;
}
.nakano-header-action {
 flex:0 0 184px;
 padding-left:20px!important;
 width:184px!important;
}
.nakano-header-action > [data-s-c4a85959-1b64-486a-b4e8-9eabf74ed5af] {
 flex:1 1 auto;
 width:auto!important;
}
.nakano-header-action > [data-s-3b91051d-b415-4721-8095-e9f91b897a2c],
.nakano-mobile-phone > [data-s-cf22c477-674a-452a-98b2-db1677ccc4b7],
.nakano-mobile-contact > [data-s-cf22c477-674a-452a-98b2-db1677ccc4b7] {
 background:transparent!important;
 background-image:none!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
}
.nakano-header-action > [data-s-3b91051d-b415-4721-8095-e9f91b897a2c] { flex:0 0 36px; }
.nakano-header-action p { white-space:nowrap; }
.nakano-header-actions > .nakano-header-action,
.nakano-mobile-phone,
.nakano-mobile-contact {
 background:#fff!important;
 color:var(--nakano-primary)!important;
}
.nakano-header-actions > .nakano-header-action p,
.nakano-header-actions > .nakano-header-action .nakano-icon-arrow,
.nakano-mobile-phone p,
.nakano-mobile-phone .nakano-icon-arrow,
.nakano-mobile-contact p,
.nakano-mobile-contact .nakano-icon-arrow {
 color:var(--nakano-primary)!important;
}
.nakano-header-actions > .nakano-header-action:is(:hover,:focus-visible,:active),
.nakano-mobile-phone:is(:hover,:focus-visible,:active),
.nakano-mobile-contact:is(:hover,:focus-visible,:active) {
 background:#fff!important;
 color:var(--nakano-primary)!important;
}
.nakano-header-action:focus-visible,
.nakano-mobile-header-action:focus-visible {
 outline:3px solid var(--nakano-primary);
 outline-offset:3px;
}
header[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
 box-sizing:border-box!important;
}
header.nakano-header-motion-ready[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
 transition:background-color var(--nakano-motion-duration) var(--nakano-motion-ease),box-shadow var(--nakano-motion-duration) var(--nakano-motion-ease),padding var(--nakano-motion-duration) var(--nakano-motion-ease),top var(--nakano-motion-duration) var(--nakano-motion-ease);
}
header:not(.nakano-header-motion-ready)[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399],
header:not(.nakano-header-motion-ready)[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] * {
 transition:none!important;
}
header.nakano-header-scrolled[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
 background:#fff!important;
 box-shadow:0 8px 24px rgba(19,49,94,.12)!important;
 top:0!important;
}
header.nakano-header-scrolled .nakano-header-actions > .nakano-header-action,
header.nakano-header-scrolled .nakano-header-actions > .nakano-header-action:is(:hover,:focus-visible,:active) {
 background:var(--nakano-primary)!important;
 color:#fff!important;
}
header.nakano-header-scrolled .nakano-header-actions > .nakano-header-action p,
header.nakano-header-scrolled .nakano-header-actions > .nakano-header-action .nakano-icon-arrow {
 color:#fff!important;
}
@media (max-width:1140px) {
 header.nakano-header-scrolled[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
  padding-left:clamp(24px,3.9vw,40px)!important;
  padding-right:clamp(24px,3.9vw,40px)!important;
 }
}
@media (max-width:540px) {
 header.nakano-header-scrolled[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] {
  padding-left:20px!important;
  padding-right:20px!important;
 }
}
.nakano-mobile-phone { margin-bottom:12px!important; }
.nakano-footer-utility {
 gap:0!important;
 justify-content:flex-end!important;
}
@media (max-width:700px) {
 .nakano-footer-utility { justify-content:center!important; }
}
.critical-ready,
.critical-ready::before { transition-duration:0ms!important; transition-delay:0ms!important; }

/* Render the hosted reveal state immediately so first paint never waits for
   hundreds of element observers and transitions. */
.render-canvas .appear {
 opacity:1!important;
 filter:none!important;
 scale:none!important;
 translate:none!important;
}
body.nakano-home main > section:not(:first-child) {
 content-visibility:auto;
 contain-intrinsic-size:auto 900px;
}

/* Small CSS icons replace multi-megabyte Material Symbols font files. */
.nakano-icon-menu,
.nakano-icon-arrow,
.nakano-icon-close {
 align-items:center!important;
 display:inline-flex!important;
 font-family:inherit!important;
 font-size:0!important;
 justify-content:center!important;
}
.nakano-icon-menu::before {
 background:linear-gradient(currentColor 0 0) top/100% 2px no-repeat,
            linear-gradient(currentColor 0 0) center/100% 2px no-repeat,
            linear-gradient(currentColor 0 0) bottom/100% 2px no-repeat;
 content:"";
 height:16px;
 width:22px;
}
.nakano-icon-arrow::before {
 border-right:2px solid currentColor;
 border-top:2px solid currentColor;
 content:"";
 height:7px;
 transform:rotate(45deg);
 width:7px;
}
.nakano-icon-arrow[data-s-15912d92-0ed9-48c8-a7f4-5b5f077273c9],
.nakano-icon-arrow[data-s-df065f88-d513-4840-9aa7-64f420e16bc5] {
 color:#2462c5!important;
}
.nakano-icon-close::before,
.nakano-icon-close::after {
 background:currentColor;
 content:"";
 height:2px;
 position:absolute;
 transform:rotate(45deg);
 width:22px;
}
.nakano-icon-close::after { transform:rotate(-45deg); }

/* The retained STUDIO runtime stylesheet includes a full-screen loader. It is
   never part of the local experience, including during direct loads/reloads. */
.loading[data-v-277f8dd4],
body > .loading,
#__nuxt > .loading,
.render-canvas > .loading {
 display:none!important;
 opacity:0!important;
 pointer-events:none!important;
 visibility:hidden!important;
}

/* The materials page reuses the Case page's width, spacing and white panel. */
.nakano-download-list {
 align-items:stretch!important;
 display:flex!important;
 padding:60px!important;
 width:100%!important;
}
.nakano-download-empty {
 align-items:center!important;
 background:#f1f3fa!important;
 border-radius:16px!important;
 display:flex!important;
 justify-content:center!important;
 min-height:320px!important;
 width:100%!important;
}
.nakano-download-empty__status {
 color:#2462c5!important;
 font-size:clamp(24px,2.4vw,36px)!important;
 font-weight:700!important;
 letter-spacing:.08em!important;
}
@media (max-width:1140px) {
 .nakano-download-list { padding:30px 30px 45px!important; }
}
@media (max-width:540px) {
 .nakano-download-list { padding:24px 15px 32px!important; }
 .nakano-download-empty { min-height:240px!important; }
}

/* Contact: current visual shell with the public Nakano form content. */
.nakano-contact-panel,
.nakano-contact-panel * { box-sizing:border-box; }
.nakano-contact-form {
 align-items:stretch!important;
 color:#17243a;
 display:flex!important;
 flex-direction:column!important;
 font-family:var(--nakano-japanese-font);
 gap:32px!important;
 width:100%!important;
}
.nakano-contact-form__field { display:flex; flex-direction:column; gap:12px; margin:0; min-width:0; width:100%; }
.nakano-contact-form__label-row,
.nakano-contact-form__address legend { align-items:center; display:flex; gap:10px; }
.nakano-contact-form__label-row label,
.nakano-contact-form__address legend span:last-child { font-size:15px; font-weight:700; line-height:1.6; }
.nakano-contact-form__badge {
 align-items:center;
 border-radius:999px;
 display:inline-flex;
 flex:0 0 auto;
 font-size:12px;
 font-weight:700;
 justify-content:center;
 line-height:1;
 min-height:24px;
 min-width:40px;
 padding:5px 9px;
 text-align:center;
}
.nakano-contact-form__badge--required { background:var(--nakano-primary); color:#fff; }
.nakano-contact-form__badge--optional { background:#e9edf5; color:#5d6879; }
.nakano-contact-form__control {
 appearance:none;
 background:#fff;
 border:1px solid #cfd6e2;
 border-radius:12px;
 color:#17243a;
 font:inherit;
 font-size:16px;
 line-height:1.5;
 min-height:52px;
 padding:13px 14px;
 width:100%;
}
select.nakano-contact-form__control {
 background-image:linear-gradient(45deg,transparent 50%,#506079 50%),linear-gradient(135deg,#506079 50%,transparent 50%);
 background-position:calc(100% - 19px) 22px,calc(100% - 13px) 22px;
 background-repeat:no-repeat;
 background-size:6px 6px,6px 6px;
 padding-right:42px;
}
textarea.nakano-contact-form__control { min-height:176px; resize:vertical; }
.nakano-contact-form__control:focus-visible,
.nakano-contact-form__submit:focus-visible,
.nakano-contact-privacy a:focus-visible { outline:3px solid var(--nakano-primary)!important; outline-offset:3px!important; }
.nakano-contact-form__address { border:0; padding:0; }
.nakano-contact-form__address legend { margin:0 0 16px; padding:0; }
.nakano-contact-form__address-row { display:grid; gap:8px; grid-template-columns:1fr; margin-top:16px; }
.nakano-contact-form__address-row:first-of-type { margin-top:0; }
.nakano-contact-form__address-row label { font-size:13px; font-weight:700; }
.nakano-contact-form__hint { color:#6d7787; font-size:12px; }
.nakano-contact-form__submit {
 align-items:center;
 align-self:center;
 background:var(--nakano-primary);
 border:0;
 border-radius:999px;
 color:#fff;
 cursor:pointer;
 display:flex;
 font-family:var(--nakano-japanese-font);
 font-size:16px;
 font-weight:700;
 justify-content:center;
 min-height:64px;
 padding:16px 36px;
 transition:background-color .2s ease,transform .2s ease;
 width:min(100%,320px);
}
.nakano-contact-form__submit:hover { background:#174d9d; transform:translateY(-1px); }
.nakano-contact-privacy { border-top:1px solid #dce2ec; margin-top:8px; padding-top:32px; }
.nakano-contact-privacy h2 { color:#17243a; font-size:22px; line-height:1.5; margin:0 0 18px; }
.nakano-contact-privacy h3 { color:#17243a; font-size:16px; line-height:1.6; margin:24px 0 10px; }
.nakano-contact-privacy p,
.nakano-contact-privacy li { color:#4f5b6e; font-size:13px; line-height:1.9; }
.nakano-contact-privacy ul,
.nakano-contact-privacy ol { margin:10px 0 0; padding-left:1.5em; }
.nakano-contact-privacy a { color:var(--nakano-primary); display:inline-block; font-size:13px; font-weight:700; margin-top:22px; text-underline-offset:4px; }

/* Privacy Policy: readable one-column document within the retained lower-page shell. */
.nakano-privacy-panel,
.nakano-privacy-panel * { box-sizing:border-box; }
.nakano-privacy-content {
 color:#26364f;
 font-family:var(--nakano-japanese-font);
 margin:0 auto;
 max-width:920px;
 width:100%;
}
.nakano-privacy-content h2 {
 border-left:4px solid var(--nakano-primary);
 color:#172f55;
 font-size:clamp(20px,2vw,25px);
 line-height:1.5;
 margin:56px 0 18px;
 padding-left:16px;
}
.nakano-privacy-content h2:first-child { margin-top:0; }
.nakano-privacy-content p,
.nakano-privacy-content li,
.nakano-privacy-content address { font-size:15px; line-height:2; }
.nakano-privacy-content p { margin:0; }
.nakano-privacy-content ul { margin:14px 0 0; padding-left:1.5em; }
.nakano-privacy-content li + li { margin-top:6px; }
.nakano-privacy-content address {
 background:#f2f5fb;
 border-radius:16px;
 font-style:normal;
 margin-top:20px;
 padding:24px 28px;
}
.nakano-privacy-content address strong { color:#172f55; }
.nakano-privacy-content a { color:var(--nakano-primary); font-weight:700; text-underline-offset:4px; }
.nakano-privacy-content a:focus-visible { outline:3px solid var(--nakano-primary)!important; outline-offset:4px!important; }

@media (max-width:540px) {
 .nakano-contact-form { gap:26px!important; }
 .nakano-contact-form__control { font-size:16px; min-height:50px; padding:12px; }
 .nakano-contact-form__submit { min-height:58px; padding:14px 22px; }
 .nakano-contact-privacy { padding-top:26px; }
 .nakano-privacy-content h2 { font-size:20px; margin-top:42px; padding-left:13px; }
 .nakano-privacy-content p,
 .nakano-privacy-content li,
 .nakano-privacy-content address { font-size:14px; line-height:1.9; }
 .nakano-privacy-content address { border-radius:12px; padding:20px; }
}

@media (prefers-reduced-motion:reduce) {
 .nakano-contact-form__submit { transition:none; }
}

/* Local behavior only. All visual styling is retained from the public template. */
[data-local-carousel="pickup"] { isolation: isolate; }
[data-local-carousel="pickup"] > a { position:absolute!important; inset:0!important; flex:none!important; opacity:0; pointer-events:none; transform:none; transition:none!important; }
[data-local-carousel="pickup"] > a[data-active="true"] { opacity:1; pointer-events:auto; }
[data-local-carousel="marquee"] > * { transition:none!important; }
.design-canvas__modal { z-index:10000; }
@media (prefers-reduced-motion:reduce) {
  .sd.appear { opacity:1!important; translate:none!important; scale:none!important; }
  .sd.appear:before { filter:none!important; }
  .sd { transition-duration:0ms!important; transition-delay:0ms!important; }
}

.modals a:focus-visible, .modals button:focus-visible { outline:2px solid white!important; outline-offset:4px; }

/* Original supplied mark, with a live-text Nakano wordmark in the existing logo slots. */
.nakano-logo-link::before { background-image:none!important; }
.nakano-lockup { display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:flex-start!important; gap:6px!important; height:49px!important; color:#1a1a1a; }
.nakano-mark { display:block; width:44px; height:auto; flex:0 0 44px; }
.nakano-wordmark { display:flex; flex-direction:column; align-items:flex-start; white-space:nowrap; font-family:var(--nakano-japanese-font)!important; font-weight:700; line-height:1.25; }
.nakano-company-type { font-size:10px; letter-spacing:.06em; }
.nakano-company-name { font-size:18px; letter-spacing:0; }
.nakano-lockup-footer { width:200px; height:67.5px!important; gap:8px!important; color:white; }
.nakano-lockup-footer .nakano-mark { width:56px; flex-basis:56px; }
.nakano-lockup-footer .nakano-company-type { font-size:12px; }
.nakano-lockup-footer .nakano-company-name { font-size:25px; }
@media (max-width:840px) {
 .nakano-lockup-footer { width:160px; height:50px!important; gap:6px!important; }
 .nakano-lockup-footer .nakano-mark { width:44px; flex-basis:44px; }
 .nakano-lockup-footer .nakano-company-type { font-size:10px; }
 .nakano-lockup-footer .nakano-company-name { font-size:20px; }
}
@media (max-width:540px) {
 .nakano-lockup:not(.nakano-lockup-footer) { height:33.56px!important; gap:4px!important; }
 .nakano-lockup:not(.nakano-lockup-footer) .nakano-mark { width:32px; flex-basis:32px; }
 .nakano-lockup:not(.nakano-lockup-footer) .nakano-company-type { font-size:8px; }
 .nakano-lockup:not(.nakano-lockup-footer) .nakano-company-name { font-size:12px; }
}
.nakano-wordmark, .nakano-wordmark > span { color:inherit; }

/* Confirmed from #footer_wrap's original background image, not a CSS HEX declaration.
   Source CSS: https://www.nkn-ss.com/css/base.css
   Source image: https://www.nkn-ss.com/common_img/bg_footer_wrap.jpg
   Actual first / last rows: #2462C5 / #2D79D1. */
:root {
 --nakano-primary:#2462c5;
 --nakano-gradient-end:#2d79d1;
 --nakano-brand-gradient:linear-gradient(180deg,var(--nakano-primary),var(--nakano-gradient-end));
 --nakano-motion-duration:.32s;
 --nakano-motion-ease:cubic-bezier(.22,1,.36,1);
 --s-color-94a754aa:var(--nakano-primary);
 --s-color-798526bb:linear-gradient(90deg,var(--nakano-primary),var(--nakano-primary));
 accent-color:var(--nakano-primary);
}
@media (prefers-reduced-motion:reduce) {
 header[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399],
 header[data-s-84d15290-95b4-402d-ad59-b0bd0aa8b399] * {
  transition:none!important;
 }
}
.modals .sd[data-s-54832870-6eef-430a-aa15-03eeeb07856f] { background:var(--nakano-brand-gradient); }

.sd[data-s-1d3a5766-deb0-4993-958f-34aef80279ee] { background:var(--nakano-brand-gradient); }
/* Keep the supplied blue mark legible on the blue footer without recoloring its pixels. */
.nakano-lockup-footer .nakano-mark { background:#fff; border-radius:2px; padding:3px; box-sizing:border-box; }

/* Keep the longer approved hero copy legible while preserving the original motion and placement. */
.sd[data-s-03e5ad7d-6531-4692-a922-26af94c04ba9] { max-width:520px; text-wrap:balance; }
.sd[data-s-9e6c5494-7291-4101-b8a1-ec6b1d8c9075] { font-size:50px!important; line-height:1.25!important; letter-spacing:.035em!important; }
@media (max-width:1140px) {
 .sd[data-s-9e6c5494-7291-4101-b8a1-ec6b1d8c9075] { font-size:48px!important; }
}
@media (max-width:540px) {
 .sd[data-s-03e5ad7d-6531-4692-a922-26af94c04ba9] { max-width:280px; }
 .sd[data-s-9e6c5494-7291-4101-b8a1-ec6b1d8c9075] { font-size:27px!important; line-height:1.28!important; letter-spacing:.02em!important; }
}
@media (max-width:320px) {
 .sd[data-s-03e5ad7d-6531-4692-a922-26af94c04ba9] { max-width:250px; }
 .sd[data-s-9e6c5494-7291-4101-b8a1-ec6b1d8c9075] { font-size:22px!important; }
}

/* Balance the approved Purpose copy without changing the section structure or reveal motion. */
.sd[data-s-ced25124-5725-47bc-bf71-fd205485fc14] { text-wrap:balance; }
.sd[data-s-b270379e-205f-4954-8683-f04dd94bcb07] { text-wrap:pretty; }

/* Let the retained Service card pattern grow to the approved six technologies. */
/* Technology is a normal responsive list; no scroll-driven layout. */
.nakano-service-list {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;gap:20px!important;height:auto!important;width:100%!important;}
.nakano-service-card {display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:20px!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;padding:20px 24px!important;background:#fff!important;border-radius:12px!important;}
.nakano-service-card .sd.nakano-service-image {max-width:none!important;min-width:0!important;padding:0!important;margin:0!important;align-self:stretch!important;width:100%!important;height:auto!important;aspect-ratio:3 / 2;min-height:0!important;flex:none!important;}
.nakano-service-image::before {background-image:none!important;content:none!important;}
.nakano-service-image-element {background:#fff;border-radius:inherit;display:block;height:100%;object-fit:contain;object-position:center;width:100%;}
.nakano-service-card [data-s-8e1ba2eb-485f-4509-a96a-9b6201d19bce] {display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:20px!important;width:100%!important;flex:1 1 auto!important;padding:0!important;}
.nakano-service-card [data-s-adf33343-c4c1-46f4-b171-b09f1cd7fc52] {align-items:flex-start!important;gap:10px!important;width:100%!important;}
.nakano-service-card [data-s-a6e08e1d-2ab3-46da-809a-fe3c8966012c] {justify-content:flex-start!important;text-align:left!important;font-size:14px!important;line-height:1.5!important;margin:0!important;width:100%!important;}
.nakano-service-card [data-s-d78ab528-28f1-4494-89f3-581405d99f67] {font-size:28px!important;line-height:1.5!important;text-wrap:balance;margin:0!important;width:100%!important;}
.nakano-service-card [data-s-45133012-be13-4d97-b0f4-52e76ee7d6da],
.nakano-service-card [data-s-45133012-be13-4d97-b0f4-52e76ee7d6da] strong,
.nakano-service-card [data-s-45133012-be13-4d97-b0f4-52e76ee7d6da] b {font-weight:400!important;text-wrap:pretty;}
.nakano-service-card [data-s-45133012-be13-4d97-b0f4-52e76ee7d6da] {font-size:16px!important;line-height:1.9!important;margin:0!important;width:100%!important;}
@media(max-width:1140px) {.nakano-service-card [data-s-d78ab528-28f1-4494-89f3-581405d99f67] {font-size:24px!important;}}
@media(max-width:700px) {
 .nakano-service-list {grid-template-columns:minmax(0,1fr)!important;}
 .nakano-service-card {padding:16px 20px!important;}
 .nakano-service-card [data-s-d78ab528-28f1-4494-89f3-581405d99f67] {font-size:22px!important;}
 .nakano-service-card [data-s-45133012-be13-4d97-b0f4-52e76ee7d6da] {font-size:14px!important;}
}

/* Services: readable labels on translucent technical layers, sharing the Technology shell. */
.services-composition {
 display:block;
 text-align:left;
 width:100%;
}
.services-intro { min-width:0; }
.services-message {
 color:#1a1a1a;
 font-size:32px;
 font-weight:700;
 letter-spacing:0;
 line-height:1.5;
 margin:0 0 24px;
 text-wrap:balance;
}
.services-description {
 color:#333;
 font-size:16px;
 font-weight:400;
 line-height:1.9;
 margin:0;
 text-wrap:pretty;
}
.services-fields { display:grid; gap:0; list-style:none; margin:36px 0 0; padding:0; width:100%; }
.services-field { align-items:center; border-bottom:1px solid rgba(36,98,197,.18); display:grid; gap:24px; grid-template-columns:64px minmax(0,1fr); min-height:0; padding:28px 0; }
.services-field:first-child { border-top:1px solid rgba(36,98,197,.18); }
.services-field--light { --field-color:#2462c5; }
.services-field--heat { --field-color:#b45e21; }
.services-field--fluid { --field-color:#217c83; }
.services-field--integration { --field-color:#112b47; }
.services-field-number { color:var(--field-color); font-size:40px; font-weight:500; letter-spacing:-.03em; line-height:1; }
.services-field-english { color:var(--field-color); display:block; font-size:13px; font-weight:600; letter-spacing:.12em; line-height:1.5; margin-bottom:6px; }
.services-field-line { color:#1a1a1a; font-size:25px; font-weight:400; line-height:1.45; margin:0; }
.services-field-line strong { font:inherit; font-weight:700; }
.services-field-supplement { font-weight:400; }
.services-stack { isolation:isolate; min-width:0; padding:0 0 16px; width:100%; }
.services-layer { height:132px; position:relative; width:100%; }
.services-layer + .services-layer { margin-top:-18px; }
.services-layer-solid { display:block; height:100%; overflow:visible; width:100%; }
.services-layer-label { align-items:center; color:#fff; display:flex; gap:12px; left:7%; position:absolute; top:49%; width:74%; }
.services-layer-label > svg { fill:none; flex:0 0 32px; height:32px; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.6; width:32px; }
.services-layer-label > div { color:inherit!important; min-width:0; }
.services-layer-label strong, .services-layer-label span { color:inherit!important; }
.services-layer-label strong { display:block; font-size:20px; font-weight:700; line-height:1.4; }
.services-layer-label span { display:block; font-size:13px; font-weight:500; line-height:1.6; white-space:nowrap; }
.services-layer--heat .services-layer-label { color:#381c07; }
.services-layer--integration { height:150px; }
.services-layer--integration .services-layer-label { top:48%; }
.services-layer-arrows { display:flex; height:48px; justify-content:space-evenly; margin:0 13% -8px 9%; position:relative; z-index:1; }
.services-layer-arrows svg { fill:#459ea8; height:48px; opacity:.7; width:24px; }
@media (max-width:1140px) {
 .services-message { font-size:28px; }
 .services-field { gap:18px; grid-template-columns:56px minmax(0,1fr); padding:24px 0; }
 .services-field-number { font-size:34px; }
 .services-field-line { font-size:22px; }
 .services-layer-label { gap:8px; }
 .services-layer-label strong { font-size:18px; }
 .services-layer-label span { font-size:12px; white-space:normal; }
 .services-layer-label > svg { flex-basis:28px; height:28px; width:28px; }
}
@media (max-width:840px) {
 .services-message { font-size:28px; }
 .services-fields { margin-top:34px; }
 .services-stack { padding-bottom:0; }
 .services-layer { height:132px; }
 .services-layer-label strong { font-size:18px; }
 .services-layer--integration { height:156px; }
}
@media (max-width:540px) {
 .services-message { font-size:24px; margin-bottom:20px; }
 .services-description { font-size:14px; line-height:1.85; }
 .services-field { gap:16px; grid-template-columns:54px minmax(0,1fr); padding:26px 0; }
 .services-field-number { font-size:32px; }
 .services-field-english { font-size:12px; margin-bottom:5px; }
 .services-field-line { font-size:22px; }
 .services-layer { height:128px; }
 .services-layer-label { gap:8px; left:6%; top:46%; width:77%; }
 .services-layer-label > svg { flex-basis:24px; height:24px; width:24px; }
 .services-layer-label strong { font-size:16px; }
 .services-layer-label span { font-size:12px; line-height:1.5; }
 .services-layer--integration { height:164px; }
 .services-layer--integration .services-layer-label { top:43%; }
}

/* Services: a full-width text hierarchy with one combined Japanese title per field. */
.services-message {grid-column:auto;margin:0 0 24px!important;text-wrap:wrap;}
.services-intro {align-self:start;}
.services-field--heat {--field-color:#c77c41;}.services-field--fluid {--field-color:#2f8f99;}

/* Match Our strength to the retained Technology shell and present its evidence as one continuous list. */
section.section.sd.nakano-strength-section {
 background:#fff!important;
 height:auto!important;
 padding:0!important;
 width:100%!important;
}
div.sd.nakano-strength-header {
 align-items:flex-start!important;
 display:flex!important;
 flex-direction:column!important;
 justify-content:center!important;
 width:100%!important;
}
.nakano-strength-heading { margin:0!important; }
.nakano-strength-list {
 align-items:stretch!important;
 display:flex!important;
 flex-direction:column!important;
 gap:0!important;
 width:100%!important;
}
.nakano-strength-card {
 align-items:stretch!important;
 background:transparent!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 column-gap:28px!important;
 display:grid!important;
 grid-template-columns:minmax(0,3fr) minmax(0,2fr)!important;
 min-height:0!important;
 opacity:1!important;
 padding:24px 0!important;
 row-gap:12px!important;
 transform:none!important;
 transition:none!important;
 width:100%!important;
}
.nakano-strength-card:first-child { padding-top:0!important; }
.nakano-strength-card + .nakano-strength-card { border-top:1px solid #cfd4e3!important; }
.nakano-strength-card:last-child { padding-bottom:0!important; }
.nakano-strength-card:nth-child(2) { transition-delay:.08s!important; }
.nakano-strength-card:nth-child(3) { transition-delay:.16s!important; }
.nakano-strength-card.appear-active { opacity:1; transform:translateY(0); }
.nakano-strength-copy {
 align-items:stretch!important;
 display:flex!important;
 flex-direction:column!important;
 gap:12px!important;
 min-width:0!important;
 width:100%!important;
}
.nakano-strength-title-row {
 align-items:center!important;
 display:flex!important;
 flex-direction:row!important;
 flex-wrap:nowrap!important;
 gap:16px!important;
 min-width:0!important;
 width:100%!important;
}
.nakano-strength-number {
 color:var(--nakano-primary)!important;
 flex:0 0 auto!important; width:auto!important; justify-content:flex-start!important;
 font-size:42px!important;
 font-weight:700!important;
 letter-spacing:-.02em!important;
 line-height:1!important;
 margin:0!important; padding:0!important; display:block!important;
}
.nakano-strength-title {
 color:#1a1a1a!important;
 flex:1 1 0!important; width:auto!important; justify-content:flex-start!important; text-align:left!important;
 font-size:28px!important;
 font-weight:700!important;
 letter-spacing:0!important;
 line-height:1.5!important;
 margin:0!important; padding:0!important; display:block!important;
 min-width:0!important;
 text-wrap:balance;
}
.nakano-strength-description {
 color:#333!important;
 font-size:16px!important;
 font-weight:400!important;
 letter-spacing:0!important;
 line-height:1.9!important;
 margin:0!important;
 text-wrap:pretty;
}
.nakano-strength-reserved {
 align-items:flex-start!important;
 background:#fff!important;
 border:1px solid #cfd4e3!important;
 border-radius:12px!important;
 box-shadow:none!important;
 display:flex!important;
 min-height:0px!important;
 padding:16px 20px!important;
 width:100%!important;
}
.nakano-strength-results { margin:0!important; padding-left:0!important; list-style:none!important; width:100%!important; }
.nakano-strength-results li::before { content:"・"; flex:0 0 1em; }
.nakano-strength-results li { display:flex; list-style:none!important; color:#1a1a1a!important; font-size:16px!important; font-weight:600!important; line-height:1.65!important; }
.nakano-strength-results li + li { margin-top:8px!important; }

@media (max-width:1140px) {
 .nakano-strength-card { column-gap:24px!important; padding:22px 0!important; }
 .nakano-strength-title-row { gap:16px!important; }
 .nakano-strength-number { font-size:36px!important; }
 .nakano-strength-title { font-size:24px!important; }
 .nakano-strength-description { font-size:15px!important; }
}

@media (max-width:700px) {
 .nakano-strength-card {
  grid-template-columns:minmax(0,1fr)!important;
  padding:20px 0!important;
  row-gap:12px!important;
 }
 .nakano-strength-copy { gap:12px!important; }
 .nakano-strength-title-row { gap:16px!important; }
 .nakano-strength-number { flex-basis:auto!important; font-size:28px!important; }
 .nakano-strength-title { font-size:22px!important; }
 .nakano-strength-description { font-size:14px!important; line-height:1.85!important; }
 .nakano-strength-reserved { min-height:0px!important; padding:14px 16px!important; }
 .nakano-strength-results li::before { content:"・"; flex:0 0 1em; }
.nakano-strength-results li { display:flex; list-style:none!important; font-size:14px!important; line-height:1.8!important; }
}

@media (max-width:320px) {
 .nakano-strength-card { padding:18px 0!important; }
 .nakano-strength-title-row { gap:16px!important; }
 .nakano-strength-number { flex-basis:auto!important; font-size:25px!important; }
 .nakano-strength-title { font-size:20px!important; }
}

/* Keep the Case section architecture while replacing unpublished examples. */
.nakano-case-coming-soon {
 align-items:center!important;
 background:linear-gradient(135deg,rgba(36,98,197,.06),rgba(45,121,209,.13))!important;
 border-bottom:1px solid rgba(36,98,197,.22);
 border-top:1px solid rgba(36,98,197,.22);
 display:flex!important;
 justify-content:center!important;
 min-height:320px!important;
 width:100%!important;
}
.nakano-case-status {
 color:var(--nakano-primary)!important;
 font-size:28px!important;
 font-weight:700!important;
 letter-spacing:.14em!important;
 line-height:1.5!important;
}

/* Present retained News metadata as a compact, image-free vertical list. */
.nakano-news-list {
 display:flex!important;
 flex-direction:column!important;
 flex-wrap:nowrap!important;
 gap:0!important;
 height:auto!important;
 width:100%!important;
}
.nakano-news-list.nakano-news-index-list {
 box-sizing:border-box!important;
 margin-left:auto!important;
 margin-right:auto!important;
 max-width:1200px!important;
 padding:0!important;
}
@media (max-width:1200px) {
 .nakano-news-list.nakano-news-index-list { width:calc(100% - 80px)!important; }
}
@media (max-width:700px) {
 .nakano-news-list.nakano-news-index-list { width:calc(100% - 30px)!important; }
}

/* Alternate the main content surfaces without changing their layout. */
.nakano-services-overview-section,
.nakano-services-overview-section [data-s-a953bd6f-2a5c-4798-a49a-1f7fa8b4402b],
.nakano-strength-section .nakano-strength-shell {
 background:var(--s-color-f4b97c5c,#fff)!important;
}
section[data-s-90525fa9-b4fd-4c61-b5fc-564cedcd2bcf] {
 background:var(--s-color-f4b97c5c,#fff)!important;
}
section[data-s-90525fa9-b4fd-4c61-b5fc-564cedcd2bcf] [data-s-6174be3a-0aaf-4ccc-a3a9-5a0f659620fa] {
 background:var(--s-color-41a33e07,#f1f3fa)!important;
 border-radius:24px!important;
}
.nakano-strength-reserved {
 background:rgba(217,217,217,.35)!important;
 border-color:transparent!important;
}

/* Add breathing room only around the two strength separators. */
.nakano-strength-card:not(:last-child) {padding-bottom:40px!important;}
.nakano-strength-card + .nakano-strength-card {padding-top:40px!important;}
@media (max-width:1140px) {
 .nakano-strength-card:not(:last-child) {padding-bottom:38px!important;}
 .nakano-strength-card + .nakano-strength-card {padding-top:38px!important;}
}
@media (max-width:700px) {
 .nakano-strength-card:not(:last-child) {padding-bottom:36px!important;}
 .nakano-strength-card + .nakano-strength-card {padding-top:36px!important;}
}
@media (max-width:320px) {
 .nakano-strength-card:not(:last-child) {padding-bottom:34px!important;}
 .nakano-strength-card + .nakano-strength-card {padding-top:34px!important;}
}
.nakano-news-list > a.link.sd.nakano-news-item {
 align-items:stretch!important;
 border-top:0;
 border-bottom:1px solid rgba(51,51,51,.16);
 display:flex!important;
 flex:0 0 auto!important;
 flex-direction:row!important;
 min-height:150px!important;
 max-width:none!important;
 padding:36px 12px!important;
 transition:none!important;
 width:100%!important;
}
.nakano-news-item:hover { background:transparent!important; }
.nakano-news-item:focus-visible { outline:2px solid var(--nakano-primary)!important; outline-offset:3px; }
.nakano-news-item > div.sd.nakano-news-content {
 align-items:center!important;
 display:grid!important;
 gap:16px 18px!important;
 grid-template-columns:max-content minmax(0,1fr)!important;
 grid-template-rows:auto auto!important;
 height:auto!important;
 flex:1 1 auto!important;
 max-width:none!important;
 min-width:0!important;
 width:100%!important;
}
.nakano-news-content [data-s-4ea90cbb-7d1b-4544-9913-abfdeed6edaf],
.nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40],
.nakano-news-content [data-s-00c6e7f5-57e8-4896-b421-f62dc062aee5] {
 margin:0!important;
 width:auto!important;
}
.nakano-news-content [data-s-4ea90cbb-7d1b-4544-9913-abfdeed6edaf] {
 color:#646e81!important;
 font-size:14px!important;
 font-weight:500!important;
 grid-column:1!important;
 grid-row:1!important;
 letter-spacing:.04em!important;
}
.nakano-news-content [data-s-00c6e7f5-57e8-4896-b421-f62dc062aee5] {
 align-items:center!important;
 display:flex!important;
 gap:6px!important;
 grid-column:2!important;
 grid-row:1!important;
 justify-self:start!important;
}
.nakano-news-content [data-s-f7ed958f-3024-4eef-914b-88d117a70217] {
 background:var(--nakano-primary)!important;
 border:0!important;
 border-radius:999px!important;
 box-shadow:none!important;
 color:#fff!important;
 font-size:12px!important;
 font-weight:600!important;
 letter-spacing:.03em!important;
 line-height:1.35!important;
 outline:0!important;
 padding:5px 11px!important;
}
.nakano-news-content [data-s-f7ed958f-3024-4eef-914b-88d117a70217]::before,
.nakano-news-content [data-s-f7ed958f-3024-4eef-914b-88d117a70217]::after {
 background:none!important;
 border:0!important;
 box-shadow:none!important;
 content:none!important;
 outline:0!important;
}
.nakano-news-content [data-s-f7ed958f-3024-4eef-914b-88d117a70217] > * {
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
 color:inherit!important;
 font:inherit!important;
 margin:0!important;
 outline:0!important;
 padding:0!important;
}
.nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40] {
 color:#222!important;
 font-size:21px!important;
 font-weight:700!important;
 grid-column:1 / -1!important;
 grid-row:2!important;
 justify-self:start!important;
 line-height:1.65!important;
 max-width:100%!important;
 position:relative!important;
 text-wrap:pretty;
 width:fit-content!important;
}
.nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40]::after {
 background:var(--nakano-primary)!important;
 bottom:-3px;
 content:""!important;
 height:2px;
 left:0;
 pointer-events:none;
 position:absolute;
 right:0;
 transform:scaleX(0);
 transform-origin:left center;
 transition:transform .32s cubic-bezier(.22,1,.36,1);
}
.nakano-news-item:hover .nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40]::after,
.nakano-news-item:focus-visible .nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40]::after {
 transform:scaleX(1);
}

@media (max-width:700px) {
 .nakano-case-coming-soon { min-height:220px!important; }
 .nakano-case-status { font-size:22px!important; }
 .nakano-news-list > a.link.sd.nakano-news-item { min-height:0!important; padding:24px 0!important; }
 .nakano-news-item > div.sd.nakano-news-content {
  align-items:center!important;
  display:grid!important;
  gap:12px 10px!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
 }
 .nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40] { font-size:18px!important; line-height:1.7!important; }
 .nakano-news-content [data-s-f7ed958f-3024-4eef-914b-88d117a70217] { font-size:11px!important; padding:4px 9px!important; }
}

@media (prefers-reduced-motion:reduce) {
 .nakano-strength-header,
 .nakano-strength-card { opacity:1!important; transform:none!important; transition-duration:0ms!important; transition-delay:0ms!important; }
 .nakano-news-content [data-s-73dca458-b780-46f3-94de-598e95ecad40]::after { transition:none!important; }
}

/* Source-grounded News detail pages share the retained editorial shell. */
.nakano-news-detail-article {
 align-items:flex-start!important;
 gap:0!important;
 width:100%!important;
}
.nakano-news-detail-body {
 color:#333!important;
 font-family:var(--nakano-japanese-font)!important;
 max-width:880px!important;
 width:100%!important;
}
.nakano-news-detail-body > .nakano-news-detail-block {
 color:#333!important;
 font-size:16px!important;
 font-weight:400!important;
 line-height:2!important;
 margin:0 0 22px!important;
 overflow-wrap:anywhere;
}
.nakano-news-detail-body > .nakano-news-detail-block--em em {
 font-style:normal;
 font-weight:600;
}
.nakano-news-detail-body > .nakano-news-detail-block--strong strong { font-weight:700; }
.nakano-news-detail-body a {
 color:var(--nakano-primary)!important;
 font-weight:700;
 text-decoration:underline;
 text-decoration-thickness:1px;
 text-underline-offset:5px;
}
.nakano-news-detail-body a:hover { text-decoration-thickness:2px; }
.nakano-news-detail-body a:focus-visible {
 outline:3px solid var(--nakano-primary)!important;
 outline-offset:4px!important;
}
@media (max-width:700px) {
 .nakano-news-detail-body > .nakano-news-detail-block {
  font-size:16px!important;
  line-height:1.9!important;
  margin-bottom:18px!important;
 }
}

/* Shared footer CTA: the reference layout translated into Nakano's existing brand system. */
.nakano-common-cta,
.nakano-common-cta * { box-sizing:border-box; }
.nakano-common-cta {
 background:#f1f3fa;
 display:block;
 padding:clamp(80px,8.5vw,120px) 40px;
 width:100%;
}
.nakano-common-cta__inner {
 align-items:center;
 background:linear-gradient(135deg,#163c80 0%,var(--nakano-primary) 62%,var(--nakano-gradient-end) 100%);
 border-radius:24px;
 color:#fff;
 display:grid;
 gap:clamp(40px,5vw,72px);
 grid-template-columns:minmax(0,.86fr) minmax(360px,1fr);
 margin:0 auto;
 max-width:1120px;
 padding:clamp(52px,5.7vw,80px);
 width:100%;
}
.nakano-common-cta__copy { min-width:0; }
.nakano-common-cta__eyebrow {
 color:rgba(255,255,255,.8);
 font-size:13px;
 font-weight:600;
 letter-spacing:.13em;
 line-height:1.5;
 margin:0 0 10px;
 text-transform:uppercase;
}
.nakano-common-cta__heading {
 color:#fff;
 font-size:clamp(34px,3.4vw,48px);
 font-weight:700;
 letter-spacing:.02em;
 line-height:1.35;
 margin:0;
}
.nakano-common-cta__lead {
 color:rgba(255,255,255,.94);
 font-size:16px;
 font-weight:500;
 line-height:1.9;
 margin:26px 0 0;
 text-wrap:pretty;
}
.nakano-common-cta__actions {
 display:grid;
 gap:16px;
 min-width:0;
}
.nakano-common-cta__action {
 align-items:center;
 background:#fff;
 border:1px solid rgba(255,255,255,.35);
 border-radius:16px;
 color:#1a1a1a;
 display:flex;
 min-height:116px;
 padding:24px 30px;
 text-decoration:none;
 transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
 width:100%;
}
.nakano-common-cta__action:hover {
 background:#eef5ff;
 border-color:#d1e2fb;
 color:var(--nakano-primary);
 transform:translateY(-2px);
}
.nakano-common-cta__action:focus-visible {
 outline:3px solid #fff;
 outline-offset:4px;
}
.nakano-common-cta__action--contact { justify-content:space-between; }
.nakano-common-cta__action-label {
 color:inherit;
 font-size:20px;
 font-weight:700;
 line-height:1.5;
}
.nakano-common-cta__arrow {
 align-items:center;
 border:1px solid currentColor;
 border-radius:50%;
 color:var(--nakano-primary);
 display:flex;
 flex:0 0 38px;
 font-size:20px;
 height:38px;
 justify-content:center;
 line-height:1;
 margin-left:20px;
}
.nakano-common-cta__action--phone {
 align-items:flex-start;
 flex-direction:column;
 justify-content:center;
}
.nakano-common-cta__phone-main { align-items:center; display:flex; min-width:0; }
.nakano-common-cta__phone-icon {
 align-items:center;
 background:var(--nakano-primary);
 border-radius:50%;
 color:#fff;
 display:flex;
 flex:0 0 38px;
 font-size:18px;
 height:38px;
 justify-content:center;
 line-height:1;
 margin-right:14px;
}
.nakano-common-cta__phone-number {
 color:inherit;
 font-size:clamp(25px,2.55vw,34px);
 font-weight:700;
 letter-spacing:.01em;
 line-height:1.2;
 white-space:nowrap;
}
.nakano-common-cta__hours {
 color:#646e81;
 font-size:13px;
 font-weight:500;
 line-height:1.5;
 margin:8px 0 0 52px;
}
.nakano-common-cta__action--phone:hover .nakano-common-cta__phone-icon { background:#163c80; }

@media (max-width:840px) {
 .nakano-common-cta { padding:72px 28px; }
 .nakano-common-cta__inner {
  gap:36px;
  grid-template-columns:minmax(0,1fr);
  padding:52px;
 }
 .nakano-common-cta__lead { max-width:680px; }
}

@media (max-width:540px) {
 .nakano-common-cta { padding:64px 16px; }
 .nakano-common-cta__inner { border-radius:20px; gap:30px; padding:38px 24px; }
 .nakano-common-cta__eyebrow { font-size:12px; margin-bottom:8px; }
 .nakano-common-cta__heading { font-size:30px; }
 .nakano-common-cta__lead { font-size:15px; line-height:1.85; margin-top:20px; }
 .nakano-common-cta__actions { gap:12px; }
 .nakano-common-cta__action { border-radius:14px; min-height:96px; padding:20px; }
 .nakano-common-cta__action-label { font-size:18px; }
 .nakano-common-cta__arrow { flex-basis:34px; height:34px; margin-left:12px; }
 .nakano-common-cta__phone-icon { flex-basis:34px; height:34px; margin-right:10px; }
 .nakano-common-cta__phone-number { font-size:25px; }
 .nakano-common-cta__hours { font-size:12px; margin-left:44px; margin-top:7px; }
}

@media (max-width:320px) {
 .nakano-common-cta { padding-left:12px; padding-right:12px; }
 .nakano-common-cta__inner { padding:34px 20px; }
 .nakano-common-cta__heading { font-size:27px; }
 .nakano-common-cta__lead { font-size:14px; }
 .nakano-common-cta__action { padding:18px 16px; }
 .nakano-common-cta__phone-number { font-size:22px; }
 .nakano-common-cta__hours { margin-left:0; padding-left:44px; }
}

@media (prefers-reduced-motion:reduce) {
 .nakano-common-cta__action { transition:none; }
 .nakano-common-cta__action:hover { transform:none; }
}

/* Retained still is visible until the first successful animated frame. */
#nakano-hero-background { overflow:hidden; background:radial-gradient(ellipse at 85% 5%,#b6dce6 0%,#719bcc 48%,#2856a2 100%)!important; }
#nakano-hero-background canvas { position:absolute; inset:0; width:100%!important; height:100%!important; pointer-events:none; }
#nakano-hero-background.nakano-turbine-active::before { opacity:0!important; }
.nakano-hero-pause { position:absolute; right:20px; bottom:20px; z-index:5; width:36px; height:36px; display:grid; place-items:center; color:white; background:#2462c5; border:1px solid #ffffff80; border-radius:50%; cursor:pointer; }
.nakano-hero-pause .play-icon { display:none; }
.nakano-hero-pause[aria-pressed="true"] .play-icon { display:block; }
.nakano-hero-pause[aria-pressed="true"] .pause-icon { display:none; }
.nakano-hero-pause:focus-visible { outline:2px solid white; outline-offset:3px; }
#nakano-hero-background::before {
 background-image:url('assets/nakano-hero/turbine-static-desktop.webp')!important;
 background-position:center!important;
 background-size:cover!important;
}
@media(max-width:650px) {
 #nakano-hero-background::before {
  background-image:url('assets/nakano-hero/turbine-static-mobile.webp')!important;
 }
}

/* Service hero: reuse the source Company hero's six-part table of contents. */
.nakano-service-hero-toc-shell {
 flex:none;
 position:relative;
 width:1920px;
 max-width:100%;
 z-index:2;
}
.nakano-service-hero-toc {
 align-items:stretch;
 background:transparent;
 border-left:1px solid #fff;
 display:flex;
 flex-flow:row wrap;
 list-style:none;
 margin:0;
 padding:0;
 width:100%;
 max-width:100%;
}
.nakano-service-hero-toc > li {
 align-items:center;
 border-right:1px solid #fff;
 display:flex;
 flex:1 1 0;
 margin:0;
 min-width:0;
 padding:0 16px;
}
.nakano-service-hero-toc > li > a {
 align-items:center;
 color:#fff;
 display:flex;
 flex:1 1 auto;
 justify-content:space-between;
 min-width:0;
 padding:4px 0;
 text-decoration:none;
}
.nakano-service-hero-toc > li > a > div {
 align-items:flex-start;
 display:flex;
 flex:1 1 auto;
 flex-direction:column;
 gap:4px;
 min-width:0;
 padding:4px 0;
}
.nakano-service-hero-toc [data-s-be45e392-7a51-44ce-9a21-6339950c0059] {
 color:#fff;
 font-size:12px;
 font-weight:600;
 line-height:1.5;
 margin:0;
 text-align:left;
}
.nakano-service-hero-toc [data-s-8e5a60c3-15ad-4d7d-9843-9eb555ff98c2] {
 color:#fff;
 font-size:12px;
 font-weight:700;
 line-height:1.5;
 margin:0;
 text-align:left;
}
.nakano-service-hero-toc [data-s-f1714d56-324d-4ea9-88cc-ba84528265da] {
 color:#fff;
 flex:none;
 font-size:16px;
 margin-left:8px;
}
.nakano-service-hero-toc .nakano-icon-arrow::before { transform:rotate(135deg); }
.nakano-service-hero-toc > li:hover .nakano-icon-arrow { translate:0 5px; }
.nakano-service-hero-toc a:focus-visible {
 outline:3px solid #fff;
 outline-offset:5px;
}
@media (max-width:1140px) {
 .nakano-service-hero-toc { padding:4px; }
 .nakano-service-hero-toc > li { padding:0 8px; }
 .nakano-service-hero-toc > li > a > div { padding:8px 0 4px; }
}
@media (max-width:840px) {
 .nakano-service-hero-toc {
  border-bottom:1px solid rgba(255,255,255,.8);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:0;
 }
 .nakano-service-hero-toc > li {
  border-right:1px solid rgba(255,255,255,.8);
  border-top:1px solid rgba(255,255,255,.8);
  min-height:48px;
  padding:0 10px;
 }
 .nakano-service-hero-toc > li > a { padding:2px 0; }
 .nakano-service-hero-toc > li > a > div { gap:1px; padding:3px 0; }
 .nakano-service-hero-toc [data-s-be45e392-7a51-44ce-9a21-6339950c0059] { font-size:11px; }
 .nakano-service-hero-toc [data-s-8e5a60c3-15ad-4d7d-9843-9eb555ff98c2] { font-size:10px; height:auto; }
 .nakano-service-hero-toc [data-s-f1714d56-324d-4ea9-88cc-ba84528265da] { font-size:14px; }
}

/* Service index: the supplied business/technology structure in the current 3003 tone. */
.nakano-service-body,
.nakano-service-body * { box-sizing:border-box; }
.nakano-service-body {
 --service-ink:#10233f;
 --service-muted:#667287;
 --service-line:rgba(22,48,88,.13);
 --service-pale:#f1f5fc;
 background:#fff;
 color:var(--service-ink);
 display:block!important;
 width:100%!important;
 max-width:none!important;
 font-family:var(--nakano-japanese-font);
}
.nakano-service-body__container {
 margin:0 auto;
 max-width:1200px;
 padding-left:40px;
 padding-right:40px;
 width:100%;
}
.nakano-service-body__nav {
 background:#fff;
 border-bottom:1px solid var(--service-line);
 border-top:1px solid var(--service-line);
 width:100%;
}
.nakano-service-body__nav ul {
 display:grid;
 grid-template-columns:repeat(6,minmax(0,1fr));
 list-style:none;
 margin:0;
 padding:0;
}
.nakano-service-body__nav li { border-left:1px solid var(--service-line); }
.nakano-service-body__nav li:last-child { border-right:1px solid var(--service-line); }
.nakano-service-body__nav a {
 align-items:center;
 color:#28364b;
 display:flex;
 font-size:13px;
 font-weight:700;
 justify-content:center;
 min-height:66px;
 padding:12px 8px;
 text-align:center;
 text-decoration:none;
 transition:background-color .2s ease,color .2s ease;
}
.nakano-service-body__nav a:hover { background:var(--service-pale); color:var(--nakano-primary); }
.nakano-service-body__nav a:focus-visible { outline:3px solid var(--nakano-primary); outline-offset:-3px; }
.nakano-service-body__section { scroll-margin-top:30px; padding:clamp(88px,8vw,128px) 0; width:100%; }
.nakano-service-body__showroom { background:#fff; }
.nakano-service-body__showroom-grid {
 align-items:center;
 display:grid;
 gap:clamp(48px,7vw,96px);
 grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
}
.nakano-service-body__media {
 align-items:center;
 background:#fff;
 border:1px solid var(--service-line);
 border-radius:22px;
 display:flex;
 justify-content:center;
 margin:0;
 min-height:360px;
 overflow:hidden;
 padding:28px;
 position:relative;
}
.nakano-service-body__media::after {
 border:1px solid rgba(36,98,197,.11);
 border-radius:50%;
 content:"";
 height:280px;
 pointer-events:none;
 position:absolute;
 right:-120px;
 top:-120px;
 width:280px;
}
.nakano-service-body__media img {
 display:block;
 height:auto;
 max-height:400px;
 object-fit:contain;
 position:relative;
 width:100%;
 z-index:1;
}
.nakano-service-body__eyebrow {
 color:var(--nakano-primary);
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:12px;
 font-weight:700;
 letter-spacing:.14em;
 line-height:1.5;
 margin:0 0 16px;
 position:relative;
 text-transform:uppercase;
}
.nakano-service-body__eyebrow::before {
 background:currentColor;
 content:"";
 display:inline-block;
 height:1px;
 margin-right:12px;
 transform:translateY(-4px);
 width:28px;
}
.nakano-service-body__showroom-copy h2,
.nakano-service-body__section-head h2,
.nakano-service-body__thinking h2 {
 color:var(--service-ink);
 font-size:clamp(34px,4.3vw,56px);
 font-weight:700;
 letter-spacing:.01em;
 line-height:1.35;
 margin:0;
 text-wrap:balance;
}
.nakano-service-body__showroom-copy > p:not(.nakano-service-body__eyebrow) {
 color:#3d4859;
 font-size:16px;
 line-height:2;
 margin:28px 0 0;
 text-wrap:pretty;
}
.nakano-service-body__showroom-copy > p + p { color:var(--service-muted); font-size:14px; margin-top:16px; }
.nakano-service-body__thinking {
 background:linear-gradient(120deg,#173d7b 0%,var(--nakano-primary) 58%,var(--nakano-gradient-end) 100%);
 color:#fff;
 padding:clamp(72px,7vw,104px) 0;
 scroll-margin-top:30px;
}
.nakano-service-body__thinking-grid {
 align-items:start;
 display:grid;
 gap:clamp(44px,6vw,84px);
 grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
}
.nakano-service-body__eyebrow--light { color:rgba(255,255,255,.78); }
.nakano-service-body__thinking h2 { color:#fff; font-size:clamp(30px,3.5vw,46px); }
.nakano-service-body__thinking-list {
 display:grid;
 gap:14px;
 grid-template-columns:repeat(2,minmax(0,1fr));
 list-style:none;
 margin:0;
 padding:0;
}
.nakano-service-body__thinking-list li {
 background:rgba(255,255,255,.08);
 border:1px solid rgba(255,255,255,.2);
 border-radius:14px;
 min-height:132px;
 padding:24px;
}
.nakano-service-body__thinking-list span,
.nakano-service-body__method-list > article > span {
 color:#a9cef9;
 display:block;
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:10px;
 font-weight:700;
 letter-spacing:.11em;
 line-height:1.5;
 margin-bottom:12px;
}
.nakano-service-body__thinking-list strong { font-size:15px; line-height:1.75; }
.nakano-service-body__section--heat,
.nakano-service-body__section--integration { background:var(--service-pale); }
.nakano-service-body__section-head {
 align-items:start;
 display:grid;
 gap:36px;
 grid-template-columns:100px minmax(0,1fr);
 margin-bottom:58px;
 max-width:940px;
}
.nakano-service-body__number {
 color:var(--nakano-primary);
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:56px;
 font-weight:500;
 letter-spacing:-.04em;
 line-height:1;
 margin:4px 0 0;
}
.nakano-service-body__number--heat { color:#ef772d; }
.nakano-service-body__number--fluid { color:#159c98; }
.nakano-service-body__number--integration { color:#586ab6; }
.nakano-service-body__eyebrow--heat { color:#ef772d; }
.nakano-service-body__eyebrow--fluid { color:#159c98; }
.nakano-service-body__eyebrow--integration { color:#586ab6; }
.nakano-service-body__section-head h2 { font-size:clamp(30px,3.7vw,48px); }
.nakano-service-body__section-head > div > p:last-child {
 color:var(--service-muted);
 font-size:15px;
 line-height:1.9;
 margin:16px 0 0;
}
.nakano-service-body__application-grid {
 display:grid;
 gap:18px;
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.nakano-service-body__image-card {
 background:#fff;
 border:1px solid var(--service-line);
 border-radius:16px;
 margin:0;
 overflow:hidden;
}
.nakano-service-body__image-card img {
 aspect-ratio:4 / 3;
 background:#f8faff;
 display:block;
 object-fit:contain;
 padding:10px;
 width:100%;
}
.nakano-service-body__image-card > div { padding:22px 22px 24px; }
.nakano-service-body__image-card h3,
.nakano-service-body__method-list h3,
.nakano-service-body__subheading {
 color:var(--service-ink);
 font-size:20px;
 font-weight:700;
 line-height:1.5;
 margin:0;
}
.nakano-service-body__image-card p,
.nakano-service-body__method-list p {
 color:var(--service-muted);
 font-size:13px;
 line-height:1.8;
 margin:10px 0 0;
}
.nakano-service-body__subheading { font-size:22px; margin:50px 0 20px; }
.nakano-service-body__spec-grid {
 display:grid;
 gap:10px;
 grid-template-columns:repeat(5,minmax(0,1fr));
}
.nakano-service-body__spec-grid article {
 background:var(--service-pale);
 border:1px solid rgba(36,98,197,.08);
 border-radius:12px;
 min-height:166px;
 padding:20px 16px;
}
.nakano-service-body__spec-grid span,
.nakano-service-body__method-list > article > span {
 color:var(--nakano-primary);
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
}
.nakano-service-body__spec-grid span { display:block; font-size:9px; font-weight:700; letter-spacing:.1em; }
.nakano-service-body__spec-grid h4 { font-size:13px; line-height:1.55; margin:10px 0; }
.nakano-service-body__spec-grid strong { color:var(--nakano-primary); display:block; font-size:16px; line-height:1.5; }
.nakano-service-body__spec-grid p { color:var(--service-muted); font-size:10px; line-height:1.6; margin:8px 0 0; }
.nakano-service-body__note { color:#768095; font-size:11px; line-height:1.7; margin:20px 0 0; }
.nakano-service-body__feature-split {
 align-items:stretch;
 display:grid;
 gap:32px;
 grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
 scroll-margin-top:30px;
}
.nakano-service-body__joining-grid {
 display:grid;
 gap:20px;
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.nakano-service-body__joining-card {
 background:#fff;
 border:1px solid var(--service-line);
 border-radius:16px;
 display:flex;
 flex-direction:column;
 min-width:0;
 overflow:hidden;
}
.nakano-service-body__joining-media,
.nakano-service-body__process-visual {
 aspect-ratio:4 / 3;
 background:#f8faff;
 border-bottom:1px solid var(--service-line);
 display:grid;
 margin:0;
 overflow:hidden;
 place-items:center;
 position:relative;
}
.nakano-service-body__joining-media img {
 height:100%;
 object-fit:contain;
 padding:18px;
 width:100%;
}
.nakano-service-body__process-visual::before,
.nakano-service-body__process-visual::after,
.nakano-service-body__process-visual span {
 content:"";
 display:block;
 position:absolute;
}
.nakano-service-body__process-visual--resistance {
 background:
  radial-gradient(circle at 50% 50%,rgba(255,151,61,.44) 0 5%,transparent 19%),
  linear-gradient(135deg,#fff 0%,#f6f8fc 100%);
}
.nakano-service-body__process-visual--resistance::before,
.nakano-service-body__process-visual--resistance::after {
 background:linear-gradient(90deg,#7c8798,#d8dfe8 46%,#727e90);
 height:34%;
 left:42%;
 width:16%;
}
.nakano-service-body__process-visual--resistance::before {
 clip-path:polygon(0 0,100% 0,72% 100%,28% 100%);
 top:7%;
}
.nakano-service-body__process-visual--resistance::after {
 bottom:7%;
 clip-path:polygon(28% 0,72% 0,100% 100%,0 100%);
}
.nakano-service-body__process-visual--resistance span {
 background:#858f9f;
 height:10px;
 left:18%;
 top:calc(50% - 5px);
 width:64%;
}
.nakano-service-body__process-visual--laser {
 background:
  linear-gradient(145deg,rgba(22,62,121,.96),rgba(34,101,178,.74)),
  #173d7b;
}
.nakano-service-body__process-visual--laser::before {
 background:linear-gradient(90deg,transparent,#fff 46%,#7edbff 54%,transparent);
 filter:drop-shadow(0 0 10px #69d5ff);
 height:4px;
 left:17%;
 top:44%;
 transform:rotate(-24deg);
 transform-origin:left center;
 width:68%;
}
.nakano-service-body__process-visual--laser::after {
 border:1px solid rgba(255,255,255,.46);
 border-radius:50%;
 box-shadow:0 0 0 18px rgba(255,255,255,.05),0 0 0 36px rgba(255,255,255,.035);
 height:46px;
 right:14%;
 top:calc(50% - 23px);
 width:46px;
}
.nakano-service-body__process-visual--laser span {
 background:linear-gradient(90deg,#687386,#d5dce5,#687386);
 bottom:17%;
 height:16px;
 left:14%;
 transform:skewX(-20deg);
 width:72%;
}
.nakano-service-body__joining-copy {
 display:flex;
 flex:1 1 auto;
 flex-direction:column;
 padding:24px;
}
.nakano-service-body__joining-copy > span {
 color:#ef772d;
 display:block;
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:10px;
 font-weight:700;
 letter-spacing:.11em;
 line-height:1.5;
 margin-bottom:12px;
}
.nakano-service-body__joining-copy h3 {
 color:var(--service-ink);
 font-size:20px;
 line-height:1.5;
 margin:0;
}
.nakano-service-body__joining-copy p {
 color:var(--service-muted);
 font-size:13px;
 line-height:1.8;
 margin:12px 0 24px;
}
.nakano-service-body__joining-copy ul {
 border-top:1px solid var(--service-line);
 display:flex;
 flex-wrap:wrap;
 gap:8px;
 list-style:none;
 margin:auto 0 0;
 padding:16px 0 0;
}
.nakano-service-body__joining-copy li {
 color:#526077;
 font-size:10px;
 font-weight:700;
}
.nakano-service-body__joining-copy li + li::before {
 color:#ef772d;
 content:"/";
 margin-right:8px;
}
.nakano-service-body__method-list { display:flex; flex-direction:column; gap:12px; }
.nakano-service-body__method-list article {
 background:#fff;
 border:1px solid var(--service-line);
 border-radius:14px;
 flex:1 1 auto;
 padding:23px 24px;
}
.nakano-service-body__method-list h3 { font-size:18px; }
.nakano-service-body__method-list ul {
 display:flex;
 flex-wrap:wrap;
 gap:6px;
 list-style:none;
 margin:16px 0 0;
 padding:0;
}
.nakano-service-body__method-list li {
 background:var(--service-pale);
 border-radius:999px;
 color:#526077;
 font-size:10px;
 padding:5px 9px;
}
.nakano-service-body__patent { color:var(--nakano-primary)!important; font-size:10px!important; letter-spacing:.06em!important; margin:10px 0 0!important; }
.nakano-service-body__message {
 background:#102a55;
 color:#fff;
 font-size:clamp(17px,2vw,24px);
 font-weight:600;
 letter-spacing:.035em;
 line-height:1.7;
 margin:0;
 padding:36px 40px;
 text-align:center;
 width:100%;
}

@media (max-width:840px) {
 .nakano-service-body__container { padding-left:28px; padding-right:28px; }
 .nakano-service-body__nav ul { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .nakano-service-body__nav li:nth-child(3) { border-right:1px solid var(--service-line); }
 .nakano-service-body__nav li:nth-child(n+4) { border-top:1px solid var(--service-line); }
 .nakano-service-body__showroom-grid,
 .nakano-service-body__thinking-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__media { min-height:300px; }
 .nakano-service-body__application-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .nakano-service-body__spec-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .nakano-service-body__feature-split { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__joining-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__joining-card { display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr); }
 .nakano-service-body__joining-media,
 .nakano-service-body__process-visual { aspect-ratio:auto; border-bottom:0; border-right:1px solid var(--service-line); min-height:260px; }
}

@media (max-width:540px) {
 .nakano-service-body__container { padding-left:16px; padding-right:16px; }
 .nakano-service-body__nav .nakano-service-body__container { padding-left:0; padding-right:0; }
 .nakano-service-body__nav a { font-size:11px; min-height:54px; padding:9px 4px; }
 .nakano-service-body__section { padding:72px 0; }
 .nakano-service-body__showroom-grid { gap:38px; }
 .nakano-service-body__media { border-radius:16px; min-height:230px; padding:16px; }
 .nakano-service-body__showroom-copy h2 { font-size:31px; }
 .nakano-service-body__showroom-copy > p:not(.nakano-service-body__eyebrow) { font-size:14px; line-height:1.9; margin-top:22px; }
 .nakano-service-body__thinking { padding:64px 0; }
 .nakano-service-body__thinking-list { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__thinking-list li { min-height:0; padding:20px; }
 .nakano-service-body__section-head { gap:18px; grid-template-columns:58px minmax(0,1fr); margin-bottom:38px; }
 .nakano-service-body__number { font-size:38px; }
 .nakano-service-body__section-head h2 { font-size:29px; }
 .nakano-service-body__section-head > div > p:last-child { font-size:13px; line-height:1.8; }
 .nakano-service-body__application-grid,
 .nakano-service-body__spec-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__image-card > div { padding:18px; }
 .nakano-service-body__spec-grid article { min-height:0; }
 .nakano-service-body__joining-card { display:flex; }
 .nakano-service-body__joining-media,
 .nakano-service-body__process-visual { aspect-ratio:4 / 3; border-bottom:1px solid var(--service-line); border-right:0; min-height:0; }
 .nakano-service-body__joining-copy { padding:20px; }
 .nakano-service-body__method-list article { padding:20px; }
 .nakano-service-body__message { padding:30px 20px; }
}

@media (prefers-reduced-motion:reduce) {
 .nakano-service-body__nav a { transition:none; }
}

/* Service index refinement: use the retained site's pale panels, blue type and generous cards. */
.nakano-service-body {
 --service-ink:#1a1a1a;
 --service-muted:#555b66;
 --service-line:#e2e6ef;
 --service-pale:#f3f4fb;
 background:#fff;
 display:flex!important;
 flex-direction:column;
 gap:28px;
 padding:40px 40px 0;
}
.nakano-service-body__container {
 max-width:1200px;
 padding-left:60px;
 padding-right:60px;
}
.nakano-service-body__nav {
 background:transparent;
 border:0;
 margin:0 auto;
 max-width:1200px;
 padding:0;
}
.nakano-service-body__nav .nakano-service-body__container {
 max-width:none;
 padding:0;
}
.nakano-service-body__nav ul {
 background:var(--service-pale);
 border:1px solid var(--service-line);
 border-radius:999px;
 gap:4px;
 padding:8px;
}
.nakano-service-body__nav li,
.nakano-service-body__nav li:last-child { border:0; }
.nakano-service-body__nav a {
 border-radius:999px;
 color:#282828;
 font-size:14px;
 min-height:50px;
 padding:10px 12px;
}
.nakano-service-body__nav a:hover { background:#fff; color:var(--nakano-primary); }
.nakano-service-body__nav a:focus-visible {
 background:#fff;
 outline:3px solid var(--nakano-primary);
 outline-offset:2px;
}
.nakano-service-body__section,
.nakano-service-body__thinking {
 border-radius:28px;
 padding:clamp(76px,7vw,112px) 0;
 scroll-margin-top:110px;
}
.nakano-service-body__showroom,
.nakano-service-body__section--light,
.nakano-service-body__section--fluid { background:var(--service-pale); }
.nakano-service-body__thinking,
.nakano-service-body__section--heat,
.nakano-service-body__section--integration {
 background:#fff;
 border:0;
}
.nakano-service-body__showroom-grid {
 gap:clamp(48px,6vw,80px);
 grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.nakano-service-body__media {
 border:0;
 border-radius:20px;
 min-height:420px;
 padding:32px;
}
.nakano-service-body__media::after { content:none; }
.nakano-service-body__media img { max-height:430px; }
.nakano-service-body__eyebrow,
.nakano-service-body__eyebrow--light,
.nakano-service-body__eyebrow--heat,
.nakano-service-body__eyebrow--fluid,
.nakano-service-body__eyebrow--integration {
 align-items:center;
 color:#282828;
 display:flex;
 font-size:14px;
 letter-spacing:.01em;
 margin-bottom:22px;
 text-transform:none;
}
.nakano-service-body__eyebrow::before {
 background:var(--nakano-primary);
 border-radius:50%;
 flex:0 0 14px;
 height:14px;
 margin-right:10px;
 transform:none;
 width:14px;
}
.nakano-service-body__showroom-copy h2,
.nakano-service-body__section-head h2,
.nakano-service-body__thinking h2 {
 color:var(--nakano-primary);
 font-size:clamp(38px,4.2vw,58px);
 letter-spacing:.01em;
 line-height:1.35;
}
.nakano-service-body__showroom-copy > p:not(.nakano-service-body__eyebrow) {
 color:#2e2e2e;
 font-size:16px;
 font-weight:500;
 line-height:2;
 margin-top:28px;
}
.nakano-service-body__showroom-copy > p + p {
 color:var(--service-muted);
 font-size:15px;
 font-weight:400;
 margin-top:16px;
}
.nakano-service-body__thinking-grid {
 align-items:center;
 gap:clamp(48px,7vw,96px);
 grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
}
.nakano-service-body__thinking h2 {
 color:var(--nakano-primary);
 font-size:clamp(34px,3.6vw,50px);
}
.nakano-service-body__thinking-list { gap:16px; }
.nakano-service-body__thinking-list li {
 background:var(--service-pale);
 border:0;
 border-radius:18px;
 min-height:150px;
 padding:28px;
}
.nakano-service-body__thinking-list span,
.nakano-service-body__method-list > article > span {
 color:var(--nakano-primary);
 font-size:12px;
 letter-spacing:.08em;
 margin-bottom:14px;
}
.nakano-service-body__thinking-list strong {
 color:#242424;
 font-size:16px;
 font-weight:600;
 line-height:1.8;
}
.nakano-service-body__section-head {
 gap:40px;
 grid-template-columns:110px minmax(0,1fr);
 margin-bottom:56px;
 max-width:940px;
}
.nakano-service-body__number,
.nakano-service-body__number--heat,
.nakano-service-body__number--fluid,
.nakano-service-body__number--integration {
 color:var(--nakano-primary);
 font-size:64px;
 font-weight:600;
}
.nakano-service-body__section-head h2 { font-size:clamp(36px,3.6vw,50px); }
.nakano-service-body__section-head > div > p:last-child {
 color:#333;
 font-size:16px;
 line-height:1.95;
 margin-top:18px;
}
.nakano-service-body__application-grid,
.nakano-service-body__joining-grid {
 align-items:stretch;
 gap:20px;
}
.nakano-service-body__image-card,
.nakano-service-body__joining-card,
.nakano-service-body__method-list article {
 border:0;
 border-radius:18px;
 box-shadow:0 1px 0 rgba(16,35,63,.04);
}
.nakano-service-body__section--heat .nakano-service-body__joining-card,
.nakano-service-body__section--integration .nakano-service-body__method-list article {
 background:var(--service-pale);
}
.nakano-service-body__section--heat .nakano-service-body__joining-card {
 border-radius:18px;
 isolation:isolate;
 overflow:hidden;
}
.nakano-service-body__section--heat .nakano-service-body__joining-card:nth-child(1) { background:#f3f4fb; }
.nakano-service-body__section--heat .nakano-service-body__joining-card:nth-child(2) { background:#f1f5fc; }
.nakano-service-body__section--heat .nakano-service-body__joining-card:nth-child(3) { background:#f8faff; }
.nakano-service-body__image-card img {
 aspect-ratio:3 / 2;
 background:#fff;
 height:280px!important;
 padding:18px;
}
.nakano-service-body__image-card > div { padding:26px 26px 30px; }
.nakano-service-body__image-card h3,
.nakano-service-body__method-list h3,
.nakano-service-body__subheading {
 color:var(--nakano-primary);
 font-size:22px;
}
.nakano-service-body__image-card p,
.nakano-service-body__method-list p {
 color:#474c55;
 font-size:14px;
 line-height:1.8;
}
.nakano-service-body__subheading {
 font-size:24px;
 margin:56px 0 24px;
}
.nakano-service-body__spec-grid { gap:12px; }
.nakano-service-body__spec-grid article {
 background:#fff;
 border:0;
 border-radius:16px;
 min-height:178px;
 padding:24px 20px;
}
.nakano-service-body__spec-grid span {
 font-size:12px;
 letter-spacing:.06em;
}
.nakano-service-body__spec-grid h4 {
 font-size:14px;
 line-height:1.6;
 margin:12px 0;
}
.nakano-service-body__spec-grid strong {
 font-size:17px;
 line-height:1.6;
}
.nakano-service-body__spec-grid p,
.nakano-service-body__note { font-size:12px; }
.nakano-service-body__feature-split { gap:28px; }
.nakano-service-body__joining-media,
.nakano-service-body__process-visual {
 aspect-ratio:3 / 2;
 background:#fff;
 border:0;
}
.nakano-service-body__joining-media img { padding:24px; }
.nakano-service-body__process-visual::before,
.nakano-service-body__process-visual::after { content:none!important; }
.nakano-service-body__process-visual {
 align-content:center;
 border-radius:18px;
 color:var(--nakano-primary);
 gap:10px;
 justify-items:start;
 overflow:hidden;
 padding:32px;
}
.nakano-service-body__process-visual strong {
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:64px;
 font-weight:600;
 line-height:1;
}
.nakano-service-body__process-visual span {
 color:#343434;
 font-family:'Montserrat',var(--nakano-japanese-font)!important;
 font-size:12px;
 font-weight:700;
 letter-spacing:.08em;
 position:static;
}
.nakano-service-body__joining-copy {
 background:transparent;
 border-radius:inherit;
 overflow:hidden;
 padding:32px 30px;
}
.nakano-service-body__joining-copy h3 { color:var(--nakano-primary); font-size:22px; }
.nakano-service-body__joining-copy p { color:#474c55; font-size:14px; line-height:1.85; }
.nakano-service-body__joining-copy ul { border-color:var(--service-line); }
.nakano-service-body__joining-copy li { color:#50545d; font-size:12px; }
.nakano-service-body__joining-copy li + li::before { color:var(--nakano-primary); }
.nakano-service-body__method-list { gap:14px; }
.nakano-service-body__method-list article { padding:28px 30px; }
.nakano-service-body__method-list h3 { font-size:20px; }
.nakano-service-body__message {
 background:#fff;
 border-top:1px solid var(--service-line);
 color:var(--nakano-primary);
 font-size:clamp(22px,2.4vw,32px);
 font-weight:700;
 margin:12px auto 0;
 max-width:1200px;
 padding:52px 0 64px;
 text-align:left;
}

@media (max-width:1024px) {
 .nakano-service-body { padding-left:28px; padding-right:28px; }
 .nakano-service-body__container { padding-left:40px; padding-right:40px; }
 .nakano-service-body__nav a { font-size:13px; }
 .nakano-service-body__media { min-height:340px; }
 .nakano-service-body__thinking-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__image-card img { height:260px!important; }
 .nakano-service-body__spec-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:840px) {
 .nakano-service-body { gap:20px; }
 .nakano-service-body__nav ul {
  border-radius:24px;
  grid-template-columns:repeat(3,minmax(0,1fr));
 }
 .nakano-service-body__nav li:nth-child(n) { border:0; }
 .nakano-service-body__nav a { min-height:48px; }
 .nakano-service-body__showroom-grid,
 .nakano-service-body__thinking-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__thinking-grid { gap:44px; }
 .nakano-service-body__application-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .nakano-service-body__joining-card {
  display:flex;
 }
 .nakano-service-body__joining-media,
 .nakano-service-body__process-visual {
  aspect-ratio:auto;
  border:0;
  border-radius:18px;
  min-height:260px;
 }
 .nakano-service-body__message { padding-left:12px; padding-right:12px; }
}

@media (max-width:540px) {
 .nakano-service-body {
  gap:16px;
  padding:20px 12px 0;
 }
 .nakano-service-body__container { padding-left:20px; padding-right:20px; }
 .nakano-service-body__nav ul {
  border-radius:20px;
  gap:2px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:6px;
 }
 .nakano-service-body__nav a { font-size:12px; min-height:44px; padding:8px 6px; }
 .nakano-service-body__section,
 .nakano-service-body__thinking {
  border-radius:20px;
  padding:64px 0;
  scroll-margin-top:84px;
 }
 .nakano-service-body__showroom-grid { gap:36px; }
 .nakano-service-body__media { border-radius:16px; min-height:250px; padding:18px; }
 .nakano-service-body__showroom-copy h2,
 .nakano-service-body__thinking h2 { font-size:32px; }
 .nakano-service-body__showroom-copy > p:not(.nakano-service-body__eyebrow) {
  font-size:16px;
  line-height:1.9;
 }
 .nakano-service-body__eyebrow { font-size:12px; margin-bottom:16px; }
 .nakano-service-body__eyebrow::before { flex-basis:11px; height:11px; width:11px; }
 .nakano-service-body__thinking-list { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__thinking-list li { min-height:0; padding:22px; }
 .nakano-service-body__section-head {
  gap:16px;
  grid-template-columns:52px minmax(0,1fr);
  margin-bottom:36px;
 }
 .nakano-service-body__number { font-size:40px; }
 .nakano-service-body__section-head h2 { font-size:30px; }
 .nakano-service-body__section-head > div > p:last-child { font-size:15px; line-height:1.9; }
 .nakano-service-body__application-grid,
 .nakano-service-body__spec-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-service-body__image-card > div,
 .nakano-service-body__joining-copy { padding:22px; }
 .nakano-service-body__image-card img { height:240px!important; }
 .nakano-service-body__joining-card { display:flex; }
 .nakano-service-body__joining-media,
 .nakano-service-body__process-visual { aspect-ratio:3 / 2; border-radius:18px; min-height:0; }
 .nakano-service-body__process-visual { padding:24px; }
 .nakano-service-body__process-visual strong { font-size:50px; }
 .nakano-service-body__method-list article { padding:22px; }
 .nakano-service-body__message { font-size:21px; line-height:1.7; padding:40px 8px 48px; }
}

/* Company page: supplied copy using the same visual language as the retained lower pages. */
.nakano-company,
.nakano-company * { box-sizing:border-box; }
.nakano-company main { overflow:clip; }
.nakano-company-hero { background:#fff!important; }

.nakano-company-hero [data-s-7e0bc035-4b43-49da-8bba-8379b6969682] {
 gap:134px 0!important;
 padding:188px 60px 60px!important;
 --gap-v-7e0bc035-4b43-49da-8bba-8379b6969682:134px!important;
}
.nakano-company-hero-image::before {
 background-image:url('assets/be52e60ad76c19e5a817.webp')!important;
}
.nakano-company-hero-spacer {
 flex:none;
 height:56px;
 max-width:100%;
 position:relative;
 width:1920px;
 z-index:2;
}
.nakano-company-breadcrumb { margin:0 0 2px; }
.nakano-company-breadcrumb ol {
 align-items:center;
 display:flex;
 flex-wrap:wrap;
 gap:10px;
 list-style:none;
 margin:0;
 padding:0;
}
.nakano-company-breadcrumb li {
 align-items:center;
 color:rgba(255,255,255,.72);
 display:flex;
 font-family:'Montserrat',var(--nakano-japanese-font);
 font-size:11px;
 font-weight:600;
 letter-spacing:.1em;
 line-height:1.5;
}
.nakano-company-breadcrumb li + li::before {
 color:rgba(255,255,255,.46);
 content:'/';
 margin-right:10px;
}
.nakano-company-breadcrumb a { color:#fff; text-decoration:none; }
.nakano-company-breadcrumb a:hover { text-decoration:underline; text-underline-offset:4px; }
.nakano-company-breadcrumb a:focus-visible { outline:3px solid #fff; outline-offset:4px; }
.nakano-breadcrumb { max-width:100%; }
.nakano-breadcrumb--light li { color:#6f7888; }
.nakano-breadcrumb--light li + li::before { color:#a3aab5; }
.nakano-breadcrumb--light a { color:#2462c5; }
.nakano-breadcrumb--light a:focus-visible { outline-color:#2462c5; }
.nakano-breadcrumb:not(.nakano-breadcrumb--light) .nakano-breadcrumb__current { color:rgba(255,255,255,.72)!important; }
.nakano-breadcrumb--light .nakano-breadcrumb__current { color:#667287!important; }
.nakano-breadcrumb--detail ol { flex-wrap:nowrap; }
.nakano-breadcrumb--detail li { min-width:0; }
.nakano-breadcrumb--detail li:not([aria-current="page"]) { flex:0 0 auto; }
.nakano-breadcrumb--detail li[aria-current="page"] { flex:1 1 auto; overflow:hidden; }
.nakano-breadcrumb--detail a { white-space:nowrap; }
.nakano-breadcrumb__current { overflow-wrap:anywhere; }
.nakano-breadcrumb--detail .nakano-breadcrumb__current {
 display:block;
 max-width:420px;
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.nakano-company header a[aria-current="page"] { color:var(--nakano-primary)!important; }
.nakano-company header a:focus-visible,
.nakano-company header button:focus-visible { outline:3px solid var(--nakano-primary)!important; outline-offset:4px; }

.nakano-company-page {
 --company-ink:#10233f;
 --company-muted:#667287;
 --company-line:rgba(22,48,88,.13);
 --company-pale:#f1f5fc;
 background:#fff;
 color:var(--company-ink);
 display:block!important;
 font-family:var(--nakano-japanese-font);
 max-width:none!important;
 padding:80px 40px 0;
 width:100%!important;
}
.nakano-company-container {
 margin:0 auto;
 max-width:1200px;
 padding-left:40px;
 padding-right:40px;
 width:100%;
}
.nakano-company-section {
 border-radius:32px;
 margin:0 auto 24px;
 max-width:1320px;
 padding:clamp(88px,8vw,128px) 0;
 scroll-margin-top:30px;
 width:100%;
}
.nakano-company-profile,
.nakano-company-evidence { background:var(--company-pale); }
.nakano-company-trust,
.nakano-company-initiatives {
 background:#fff;
 border:0;
}
.nakano-company-section-head {
 margin:0 0 clamp(44px,5vw,68px);
 max-width:920px;
}
.nakano-company-eyebrow,
.nakano-company-panel-label {
 color:var(--nakano-primary);
 font-size:12px;
 font-weight:700;
 letter-spacing:.14em;
 line-height:1.5;
 margin:0 0 16px;
 text-transform:uppercase;
}
.nakano-company-eyebrow::before {
 background:currentColor;
 border-radius:50%;
 content:'';
 display:inline-block;
 height:14px;
 margin-right:10px;
 transform:translateY(2px);
 width:14px;
}
.nakano-company-heading {
 color:var(--nakano-primary);
 font-size:clamp(34px,4.3vw,56px);
 font-weight:700;
 letter-spacing:.01em;
 line-height:1.35;
 margin:0;
 text-wrap:balance;
}
.nakano-company-intro {
 color:#3d4859;
 font-size:16px;
 line-height:2;
 margin:28px 0 0;
 max-width:780px;
 text-wrap:pretty;
}

.nakano-company-profile-grid {
 align-items:start;
 display:grid;
 gap:clamp(48px,7vw,96px);
 grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
}
.nakano-company-profile-photo {
 background:#fff;
 border:0;
 border-radius:22px;
 margin:0;
 min-width:0;
 overflow:hidden;
}
.nakano-company-profile-image {
 aspect-ratio:1672 / 941;
 display:block;
 height:auto;
 object-fit:cover;
 width:100%;
}
.nakano-company-profile-table {
 background:#fff;
 border-collapse:separate;
 border-spacing:0;
 border:0;
 border-radius:18px;
 overflow:hidden;
 table-layout:fixed;
 width:100%;
}
.nakano-company-profile-table tr:not(:last-child) > * { border-bottom:1px solid var(--company-line); }
.nakano-company-profile-table th,
.nakano-company-profile-table td {
 font-size:14px;
 line-height:1.75;
 padding:20px 24px;
 text-align:left;
 vertical-align:top;
}
.nakano-company-profile-table th {
 color:var(--company-muted);
 font-weight:600;
 width:31%;
}
.nakano-company-profile-table td {
 color:var(--company-ink);
 font-weight:500;
 overflow-wrap:anywhere;
}
.nakano-company-profile-table a {
 color:var(--nakano-primary);
 text-decoration:underline;
 text-decoration-thickness:1px;
 text-underline-offset:4px;
}
.nakano-company-profile-table a:focus-visible { outline:3px solid var(--nakano-primary); outline-offset:4px; }

.nakano-company-trust-grid,
.nakano-company-initiatives-grid,
.nakano-company-publication-list,
.nakano-company-records { list-style:none; margin:0; padding:0; }
.nakano-company-trust-grid {
 display:grid;
 gap:14px;
 grid-template-columns:repeat(4,minmax(0,1fr));
}
.nakano-company-trust-item {
 background:var(--company-pale);
 border:1px solid rgba(36,98,197,.08);
 border-radius:16px;
 min-height:286px;
 padding:28px 24px;
}
.nakano-company-trust-meta {
 align-items:center;
 display:flex;
 gap:12px;
 justify-content:space-between;
}
.nakano-company-trust-number {
 color:var(--nakano-primary);
 font-size:28px;
 font-weight:600;
 line-height:1;
}
.nakano-company-trust-label {
 color:var(--company-muted);
 font-size:9px;
 font-weight:700;
 letter-spacing:.08em;
 line-height:1.45;
 overflow-wrap:anywhere;
 text-align:right;
}
.nakano-company-trust-item h3 {
 color:var(--company-ink);
 font-size:22px;
 line-height:1.5;
 margin:58px 0 16px;
}
.nakano-company-trust-item > p {
 color:var(--company-muted);
 font-size:14px;
 line-height:1.85;
 margin:0;
}

.nakano-company-evidence-grid {
 display:grid;
 gap:20px;
 grid-template-columns:repeat(2,minmax(0,1fr));
}
.nakano-company-evidence-panel {
 background:#fff;
 border:0;
 border-radius:18px;
 min-width:0;
 padding:clamp(28px,3.2vw,44px);
 position:relative;
}
.nakano-company-evidence-panel--wide { grid-column:1 / -1; }
.nakano-company-panel-heading {
 color:var(--company-ink);
 font-size:clamp(23px,2.1vw,30px);
 line-height:1.5;
 margin:0 0 30px;
}
.nakano-company-records > li {
 align-items:start;
 border-top:1px solid var(--company-line);
 display:grid;
 gap:20px;
 grid-template-columns:92px minmax(0,1fr);
 padding:22px 0;
}
.nakano-company-records > li:last-child { padding-bottom:0; }
.nakano-company-status,
.nakano-company-publication-badge {
 background:#f7faff;
 border:1px solid rgba(36,98,197,.26);
 border-radius:8px;
 color:var(--nakano-primary);
 display:inline-flex;
 font-size:11px;
 font-weight:700;
 justify-content:center;
 line-height:1.4;
 padding:7px 8px;
 white-space:nowrap;
}
.nakano-company-records h4 {
 color:var(--company-ink);
 font-size:16px;
 font-weight:700;
 line-height:1.75;
 margin:0;
 overflow-wrap:anywhere;
}
.nakano-company-records li p {
 color:var(--company-muted);
 font-size:13px;
 line-height:1.8;
 margin:8px 0 0;
}
.nakano-company-records li p:empty { display:none; }
.nakano-company-publication-badge {
 position:absolute;
 right:clamp(28px,3.2vw,44px);
 top:clamp(28px,3.2vw,44px);
}
.nakano-company-publication-list { border-top:1px solid var(--company-line); }
.nakano-company-publication-list li {
 border-bottom:1px solid var(--company-line);
 color:var(--company-ink);
 font-size:16px;
 font-weight:600;
 line-height:1.6;
 padding:18px 0;
}
.nakano-company-publication-list li::before {
 color:var(--nakano-primary);
 content:'—';
 margin-right:12px;
}
.nakano-company-panel-note {
 color:var(--company-muted);
 font-size:13px;
 line-height:1.8;
 margin:24px 0 0;
}
.nakano-company-records--media {
 display:grid;
 gap:0 34px;
 grid-template-columns:repeat(2,minmax(0,1fr));
}
.nakano-company-records--media > li { grid-template-columns:112px minmax(0,1fr); }
.nakano-company-footnote {
 color:var(--company-muted);
 font-size:12px;
 line-height:1.8;
 margin:22px 0 0;
}

.nakano-company-initiatives-grid {
 display:grid;
 gap:16px;
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.nakano-company-initiatives-grid li {
 background:var(--company-pale);
 border:1px solid rgba(36,98,197,.08);
 border-radius:16px;
 min-height:240px;
 padding:30px 26px;
}
.nakano-company-initiatives-grid h3 {
 color:var(--company-ink);
 font-size:21px;
 line-height:1.55;
 margin:30px 0 16px;
}
.nakano-company-initiatives-grid li > p:last-child {
 color:var(--company-muted);
 font-size:14px;
 line-height:1.85;
 margin:0;
}

/* Company uses the shared CTA component and styling; only its supplied copy differs. */
.nakano-company-contact .nakano-common-cta__heading { font-size:clamp(31px,3.15vw,45px); }
.nakano-company-contact .nakano-common-cta__action-label { font-size:18px; }
.nakano-company-contact .nakano-common-cta__arrow { color:var(--nakano-primary); }

@media (max-width:1140px) {
 .nakano-company-hero-spacer { height:68px; }
 .nakano-company-container { padding-left:30px; padding-right:30px; }
 .nakano-company-trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .nakano-company-trust-item { min-height:232px; }
 .nakano-company-trust-item h3 { margin-top:44px; }
}
@media (max-width:840px) {
 .nakano-company-hero-spacer { height:145px; }
 .nakano-company-page { padding-left:28px; padding-right:28px; }
 .nakano-company-section { border-radius:26px; }
 .nakano-company-profile-grid,
 .nakano-company-evidence-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-company-profile-grid { gap:38px; }
 .nakano-company-records--media { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:540px) {
 .nakano-company-page { padding:64px 16px 0; }
 .nakano-company-container { padding-left:24px; padding-right:24px; }
 .nakano-company-section {
  border-radius:20px;
  margin-bottom:16px;
  padding:64px 0;
 }
 .nakano-company-section-head { margin-bottom:38px; }
 .nakano-company-heading { font-size:30px; }
 .nakano-company-intro { font-size:14px; line-height:1.9; margin-top:18px; }
 .nakano-company-breadcrumb { margin-bottom:0; }
 .nakano-company-breadcrumb li { font-size:10px; }
 .nakano-company-hero [data-s-7e0bc035-4b43-49da-8bba-8379b6969682] {
  gap:60px 0!important;
  padding:15px!important;
  --gap-v-7e0bc035-4b43-49da-8bba-8379b6969682:60px!important;
 }
 .nakano-company-profile-table { table-layout:auto; }
 .nakano-company-profile-table tr { display:block; padding:15px 20px; }
 .nakano-company-profile-table tr:not(:last-child) { border-bottom:1px solid var(--company-line); }
 .nakano-company-profile-table tr:not(:last-child) > * { border-bottom:0; }
 .nakano-company-profile-table th,
 .nakano-company-profile-table td {
  display:block;
  padding:0;
  width:100%;
 }
 .nakano-company-profile-table th { font-size:12px; margin-bottom:5px; }
 .nakano-company-profile-table td { font-size:14px; }
 .nakano-company-trust-grid,
 .nakano-company-initiatives-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-company-trust-item { min-height:0; padding:26px 22px; }
 .nakano-company-trust-item h3 { margin:36px 0 14px; }
 .nakano-company-evidence-panel { padding:26px 20px; }
 .nakano-company-panel-heading { padding-right:0; }
 .nakano-company-publication-badge { margin:-10px 0 22px; position:static; }
 .nakano-company-records > li,
 .nakano-company-records--media > li {
  gap:12px;
  grid-template-columns:minmax(0,1fr);
 }
 .nakano-company-status {
  justify-self:start;
  white-space:normal;
 }
 .nakano-company-initiatives-grid li { min-height:0; padding:28px 22px; }
 .nakano-company-contact .nakano-common-cta__heading { font-size:29px; }
 .nakano-company-contact .nakano-common-cta__action-label { font-size:16px; }
}
@media (max-width:340px) {
 .nakano-company-container { padding-left:20px; padding-right:20px; }
 .nakano-company-contact .nakano-common-cta__heading { font-size:26px; }
 .nakano-company-contact .nakano-common-cta__action-label { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) {
 .nakano-company .nakano-common-cta__action { transition:none; }
}

/* Welding service detail: scoped to the supplied eight-block composition. */
.nakano-service-body__detail-link {
 align-items:center;
 background:var(--nakano-primary);
 border-radius:999px;
 color:#fff;
 display:flex;
 font-size:15px;
 font-weight:700;
 gap:24px;
 justify-content:space-between;
 margin:30px 0 0 auto;
 max-width:280px;
 padding:17px 22px;
 text-decoration:none;
 transition:background-color .2s ease,transform .2s ease;
}
.nakano-service-body__detail-link:hover { background:#174d9f; transform:translateY(-2px); }
.nakano-service-body__detail-link:focus-visible { outline:3px solid var(--nakano-primary); outline-offset:4px; }
.nakano-service-body__detail-link--xenon {
 box-sizing:border-box;
 color:#fff;
 margin:30px auto 0;
 max-width:320px;
 padding:21px 30px;
 width:100%;
}
.nakano-service-body__detail-link--xenon > span,
.nakano-service-body__detail-link--xenon:is(:hover,:focus-visible) > span { color:#fff; }
.nakano-service-body__detail-link--blt {
 box-sizing:border-box;
 color:#fff;
 margin:30px auto 0;
 max-width:320px;
 padding:21px 30px;
 width:100%;
}
.nakano-service-body__detail-link--blt > span,
.nakano-service-body__detail-link--blt:is(:hover,:focus-visible) > span { color:#fff; }

.nakano-welding-page { background:#fff; }
.nakano-welding-hero {
 height:auto!important;
 min-height:0!important;
 padding:40px!important;
}
.nakano-welding-hero [data-s-section-inner-1e3658c1-fd0a-49e6-94fb-a005fa14db43] {
 height:auto!important;
 padding:40px!important;
}
.nakano-welding-hero [data-s-789ddf75-42ca-48b9-8331-8abfb70529fc] {
 gap:0!important;
 height:auto!important;
 justify-content:center!important;
 min-height:520px;
 padding:148px 60px 72px!important;
 --gap-v-789ddf75-42ca-48b9-8331-8abfb70529fc:0px!important;
}
.nakano-welding-hero [data-s-020dfb42-fb98-4b37-af4b-ffc7e82db363] { max-width:1200px; }
.nakano-welding-hero [data-s-73f0565a-baef-4746-ac83-206c0eca1e2b] { margin-top:18px; }
.nakano-welding-hero [data-s-9d6dfee7-556e-4672-a6f2-6b9009fe364e] {
 font-size:14px;
 letter-spacing:.08em;
 overflow-wrap:anywhere;
}
.nakano-welding-hero h1[data-s-fb3fb7b0-0645-4674-8c4a-e0da3756fc51] {
 color:#fff;
 font-size:clamp(52px,6vw,82px);
 letter-spacing:.02em;
}
.nakano-welding-hero__sub {
 color:rgba(255,255,255,.94)!important;
 font-size:clamp(16px,1.75vw,23px);
 font-weight:600;
 letter-spacing:.04em;
 line-height:1.65;
 margin:8px 0 0;
 position:relative;
 z-index:2;
}

.nakano-welding-detail,
.nakano-welding-detail * { box-sizing:border-box; }
.nakano-welding-detail {
 --welding-ink:#1a1a1a;
 --welding-muted:#555b66;
 --welding-line:#e2e6ef;
 --welding-pale:#f3f4fb;
 background:#fff;
 color:var(--welding-ink);
 display:flex!important;
 flex-direction:column;
 font-family:var(--nakano-japanese-font);
 gap:28px;
 max-width:none!important;
 padding:40px 40px 0;
 width:100%!important;
}
.nakano-welding-section {
 background:var(--welding-pale);
 border-radius:28px;
 padding:clamp(76px,7vw,112px) 0;
 scroll-margin-top:110px;
 width:100%;
}
.nakano-welding-section--white {
 background:#fff;
}
.nakano-welding-container {
 margin:0 auto;
 max-width:1200px;
 padding-left:60px;
 padding-right:60px;
 width:100%;
}
.nakano-welding-intro__inner { max-width:980px; }
.nakano-welding-intro__types {
 color:#282828;
 font-size:14px;
 font-weight:700;
 letter-spacing:.05em;
 line-height:1.8;
 margin:0 0 24px;
}
.nakano-welding-intro h2,
.nakano-welding-heading h2 {
 color:var(--nakano-primary);
 font-size:clamp(36px,3.8vw,52px);
 font-weight:700;
 letter-spacing:.01em;
 line-height:1.35;
 margin:0;
}
.nakano-welding-intro h2 { font-size:clamp(36px,4.2vw,58px); }
.nakano-welding-intro__inner > p:last-child {
 color:#333;
 font-size:17px;
 line-height:2;
 margin:28px 0 0;
}
.nakano-welding-heading { margin-bottom:52px; max-width:960px; }
.nakano-welding-eyebrow {
 align-items:center;
 color:#282828;
 display:flex;
 font-family:var(--nakano-latin-font);
 font-size:14px;
 font-weight:700;
 letter-spacing:.06em;
 line-height:1.6;
 margin:0 0 20px;
 overflow-wrap:anywhere;
}
.nakano-welding-eyebrow::before {
 background:var(--nakano-primary);
 border-radius:50%;
 content:"";
 flex:0 0 14px;
 height:14px;
 margin-right:10px;
 width:14px;
}
.nakano-welding-heading > p:not(.nakano-welding-eyebrow) {
 color:#333;
 font-size:16px;
 line-height:1.95;
 margin:18px 0 0;
}
.nakano-welding-heading .nakano-welding-lead {
 color:#202020!important;
 font-size:clamp(22px,2.15vw,30px)!important;
 font-weight:700;
 letter-spacing:.02em;
 line-height:1.6!important;
 margin-top:26px!important;
}
.nakano-welding-guide {
 display:grid;
 gap:18px;
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.nakano-welding-guide > a {
 align-items:flex-start;
 background:var(--welding-pale);
 border:1px solid transparent;
 border-radius:18px;
 color:inherit;
 display:grid;
 gap:20px;
 grid-template-columns:auto minmax(0,1fr);
 min-height:154px;
 padding:28px;
 text-decoration:none;
 transition:background-color .2s ease,border-color .2s ease,transform .2s ease;
}
.nakano-welding-section:not(.nakano-welding-section--white) .nakano-welding-guide > a { background:#fff; }
.nakano-welding-guide > a:hover { border-color:#c9d8ef; transform:translateY(-2px); }
.nakano-welding-guide > a:focus-visible { outline:3px solid var(--nakano-primary); outline-offset:3px; }
.nakano-welding-guide > a > span {
 color:var(--nakano-primary);
 font-family:var(--nakano-latin-font);
 font-size:15px;
 font-weight:700;
 line-height:1.5;
}
.nakano-welding-guide h3 {
 color:var(--nakano-primary);
 font-size:21px;
 line-height:1.5;
 margin:0;
}
.nakano-welding-guide p { color:var(--welding-muted); font-size:14px; line-height:1.8; margin:12px 0 0; }
.nakano-welding-methods { display:grid; gap:20px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.nakano-welding-card {
 background:#fff;
 border-radius:18px;
 box-shadow:0 1px 0 rgba(16,35,63,.04);
 margin:0;
 overflow:hidden;
}
.nakano-welding-section--white .nakano-welding-card { background:var(--welding-pale); }
.nakano-welding-card > div { padding:26px 28px 30px; }
.nakano-welding-card h3,
.nakano-welding-subfeature h3,
.nakano-welding-steps h3 {
 color:var(--nakano-primary);
 font-size:22px;
 line-height:1.55;
 margin:0;
}
.nakano-welding-card p,
.nakano-welding-subfeature__copy > p,
.nakano-welding-steps p {
 color:#474c55;
 font-size:14px;
 line-height:1.85;
 margin:12px 0 0;
}
.nakano-welding-card .nakano-welding-card__sub {
 color:#252a31;
 font-size:16px;
 font-weight:700;
 margin-top:10px;
}
.nakano-welding-placeholder {
 align-items:center;
 aspect-ratio:3 / 2;
 background:
  linear-gradient(135deg,rgba(36,98,197,.045) 25%,transparent 25%) 0 0 / 24px 24px,
  linear-gradient(315deg,rgba(36,98,197,.045) 25%,transparent 25%) 0 0 / 24px 24px,
  #fbfcff;
 border:1px dashed #aebbd0;
 color:#65728a;
 display:flex;
 flex-direction:column;
 justify-content:center;
 margin:0;
 min-height:260px;
 padding:28px;
 text-align:center;
}
.nakano-welding-placeholder span {
 color:var(--nakano-primary);
 font-family:var(--nakano-latin-font);
 font-size:12px;
 font-weight:700;
 letter-spacing:.12em;
}
.nakano-welding-placeholder strong { font-size:13px; margin-top:10px; }
.nakano-welding-placeholder--portrait { aspect-ratio:4 / 3; border-radius:16px; }
.nakano-welding-note { color:#768095; font-size:11px; line-height:1.75; margin:18px 0 0; }
.nakano-welding-subfeature {
 border-top:1px solid var(--welding-line);
 display:grid;
 gap:clamp(36px,5vw,68px);
 grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
 margin-top:62px;
 padding-top:58px;
}
.nakano-welding-subfeature .nakano-welding-sublead {
 color:#202020;
 font-size:21px;
 font-weight:700;
 line-height:1.65;
 margin-top:18px;
}
.nakano-welding-points,
.nakano-welding-steps,
.nakano-welding-flow { list-style:none; margin:28px 0 0; padding:0; }
.nakano-welding-points { border-top:1px solid var(--welding-line); }
.nakano-welding-points li { border-bottom:1px solid var(--welding-line); display:grid; gap:10px; padding:17px 0; }
.nakano-welding-points strong { color:var(--nakano-primary); font-size:15px; line-height:1.6; }
.nakano-welding-points span { color:var(--welding-muted); font-size:13px; line-height:1.75; }
.nakano-welding-feature-grid,
.nakano-welding-integration-grid {
 align-items:start;
 display:grid;
 gap:clamp(38px,6vw,80px);
 grid-template-columns:repeat(2,minmax(0,1fr));
}
.nakano-welding-steps { display:flex; flex-direction:column; gap:12px; margin-top:0; }
.nakano-welding-steps li {
 background:var(--welding-pale);
 border-radius:16px;
 padding:20px 22px;
}
.nakano-welding-section:not(.nakano-welding-section--white) .nakano-welding-steps li { background:#fff; }
.nakano-welding-steps h3 { font-size:18px; }
.nakano-welding-supplement {
 border-left:3px solid var(--nakano-primary);
 color:#2a3039;
 font-size:14px;
 font-weight:700;
 line-height:1.8;
 margin:24px 0 0;
 padding:7px 0 7px 16px;
}
.nakano-welding-flow {
 display:grid;
 gap:20px;
 grid-template-columns:repeat(5,minmax(0,1fr));
 margin-top:0;
}
.nakano-welding-flow li {
 align-items:center;
 background:#fff;
 border-radius:14px;
 display:flex;
 flex-direction:column;
 min-width:0;
 padding:18px 8px;
 position:relative;
 text-align:center;
}
.nakano-welding-flow li:not(:last-child)::after {
 color:var(--nakano-primary);
 content:"→";
 font-size:16px;
 position:absolute;
 right:-18px;
 top:50%;
 translate:0 -50%;
}
.nakano-welding-flow span { color:var(--nakano-primary); font-family:var(--nakano-latin-font); font-size:12px; font-weight:700; }
.nakano-welding-flow strong { color:#252a31; font-size:14px; line-height:1.5; margin-top:8px; }
.nakano-welding-contact .nakano-common-cta__inner { grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); }
.nakano-welding-contact .nakano-common-cta__actions { align-self:center; }
.nakano-welding-contact .nakano-common-cta__heading { font-size:clamp(31px,3.15vw,45px); }
.nakano-welding-contact .nakano-common-cta__action { min-height:104px; }
.nakano-welding-contact .nakano-common-cta__action-label { font-size:18px; }

@media (max-width:1024px) {
 .nakano-welding-hero [data-s-789ddf75-42ca-48b9-8331-8abfb70529fc] { min-height:470px; padding-left:44px!important; padding-right:44px!important; }
 .nakano-welding-container { padding-left:40px; padding-right:40px; }
 .nakano-welding-subfeature { grid-template-columns:minmax(0,1fr) minmax(260px,.72fr); }
 .nakano-welding-flow { gap:16px; }
 .nakano-welding-flow li:not(:last-child)::after { right:-14px; }
}

@media (max-width:840px) {
 .nakano-welding-hero { padding:30px!important; }
 .nakano-welding-hero [data-s-section-inner-1e3658c1-fd0a-49e6-94fb-a005fa14db43] { padding:30px!important; }
 .nakano-welding-detail { padding-left:28px; padding-right:28px; }
 .nakano-welding-section { border-radius:26px; }
 .nakano-welding-guide { gap:12px; }
 .nakano-welding-guide > a { gap:12px; padding:22px 18px; }
 .nakano-welding-feature-grid,
 .nakano-welding-integration-grid { grid-template-columns:minmax(0,1fr); }
 .nakano-welding-placeholder { min-height:240px; }
 .nakano-welding-contact .nakano-common-cta__inner { grid-template-columns:minmax(0,1fr); }
}

@media (max-width:700px) {
 .nakano-welding-guide,
 .nakano-welding-methods,
 .nakano-welding-subfeature { grid-template-columns:minmax(0,1fr); }
 .nakano-welding-guide > a { min-height:0; }
 .nakano-welding-subfeature { margin-top:48px; padding-top:44px; }
 .nakano-welding-flow { gap:10px; grid-template-columns:minmax(0,1fr); }
 .nakano-welding-flow li { align-items:center; flex-direction:row; gap:14px; min-height:58px; padding:14px 18px; text-align:left; }
 .nakano-welding-flow li:not(:last-child)::after { bottom:-13px; content:"↓"; left:50%; right:auto; top:auto; translate:-50% 0; }
 .nakano-welding-flow strong { margin-top:0; }
}

@media (max-width:540px) {
 .nakano-welding-hero { padding:15px!important; }
 .nakano-welding-hero [data-s-section-inner-1e3658c1-fd0a-49e6-94fb-a005fa14db43] { padding:15px!important; }
 .nakano-welding-hero [data-s-789ddf75-42ca-48b9-8331-8abfb70529fc] { border-radius:20px; min-height:470px; padding:118px 22px 48px!important; }
 .nakano-welding-hero [data-s-73f0565a-baef-4746-ac83-206c0eca1e2b] { align-items:flex-start; }
 .nakano-welding-hero [data-s-9d6dfee7-556e-4672-a6f2-6b9009fe364e] { font-size:11px; }
 .nakano-welding-hero h1[data-s-fb3fb7b0-0645-4674-8c4a-e0da3756fc51] { font-size:40px; }
 .nakano-welding-hero__sub { font-size:14px; line-height:1.75; margin-top:4px; }
 .nakano-welding-detail { gap:16px; padding:16px 16px 0; }
 .nakano-welding-section { border-radius:20px; padding:64px 0; scroll-margin-top:84px; }
 .nakano-welding-container { padding-left:24px; padding-right:24px; }
 .nakano-welding-intro__types { font-size:12px; margin-bottom:18px; }
 .nakano-welding-intro h2,
 .nakano-welding-heading h2 { font-size:30px; overflow-wrap:anywhere; }
 .nakano-welding-intro__inner > p:last-child { font-size:14px; line-height:1.9; margin-top:20px; }
 .nakano-welding-heading { margin-bottom:36px; }
 .nakano-welding-eyebrow { font-size:11px; margin-bottom:15px; }
 .nakano-welding-heading .nakano-welding-lead { font-size:21px!important; margin-top:20px!important; }
 .nakano-welding-heading > p:not(.nakano-welding-eyebrow) { font-size:14px; line-height:1.9; }
 .nakano-welding-guide > a { border-radius:15px; padding:20px; }
 .nakano-welding-card > div { padding:22px 20px 24px; }
 .nakano-welding-card h3,
 .nakano-welding-subfeature h3 { font-size:20px; }
 .nakano-welding-placeholder { aspect-ratio:4 / 3; min-height:210px; padding:20px; }
 .nakano-welding-subfeature .nakano-welding-sublead { font-size:18px; }
 .nakano-welding-steps li { padding:18px; }
 .nakano-welding-supplement { font-size:13px; }
 .nakano-welding-contact .nakano-common-cta__heading { font-size:28px; }
 .nakano-welding-contact .nakano-common-cta__action-label { font-size:16px; }
}

@media (max-width:340px) {
 .nakano-welding-detail { padding-left:12px; padding-right:12px; }
 .nakano-welding-container { padding-left:20px; padding-right:20px; }
 .nakano-welding-hero h1[data-s-fb3fb7b0-0645-4674-8c4a-e0da3756fc51] { font-size:35px; }
 .nakano-welding-intro h2,
 .nakano-welding-heading h2 { font-size:27px; }
 .nakano-welding-contact .nakano-common-cta__heading { font-size:25px; }
 .nakano-welding-contact .nakano-common-cta__action-label { font-size:15px; }
}

@media (prefers-reduced-motion:reduce) {
 .nakano-service-body__detail-link,
 .nakano-welding-guide > a { transition:none; }
 .nakano-service-body__detail-link:hover,
 .nakano-welding-guide > a:hover { transform:none; }
}
