
:root {
  --ink: #242c2d;
  --muted: #667173;
  --paper: #fff;
  --orange: #39474a;
  --line: #dce1df;
}
body.inner-page { background: #fff; color: #242c2d; }
body.inner-page .header { background: #fff; border-bottom-color: #dce1df; }
body.inner-page .header .brand > span,
body.inner-page .header > nav a { color: #242c2d; }
body.inner-page .header .brand small { color: #667173; }
body.inner-page .header .header-cta,
body.inner-page .button.orange { background: #242c2d; color: #fff; }
body.inner-page .header .header-cta:hover,
body.inner-page .button.orange:hover { background: #39474a; }
body.inner-page .inner-hero { background: #eaf2f6; color: #242c2d; }
body.inner-page .inner-hero .inner-lead { color: #536062; }
body.inner-page .inner-hero .inner-mark { color: #d7e5ec; }
body.inner-page .inner-content,
body.inner-page .inner-section,
body.inner-page .visual-company { color: #242c2d; }
body.inner-page .section-id,
body.inner-page .inner-content .section-id,
body.inner-page .visual-content .business-chapters--plain .business-index { color: #39474a; }
body.inner-page .inner-section,
body.inner-page .visual-company,
body.inner-page .visual-content .business-chapters article,
body.inner-page .profile-table > div,
body.inner-page .wholesale-fields article,
body.inner-page .scenario-list article,
body.inner-page .brief-list li,
body.inner-page .related-pages > a { border-color: #dce1df; }
body.inner-page .route-grid > a { background: #f7f8f6; }
body.inner-page .route-grid > a:hover { background: #eaf2f6; }
body.inner-page .visual-content .visual-product,
body.inner-page .visual-content .visual-art { background: #f7f8f6; }
body.inner-page .srx-quick-inquiry,
body.inner-page .wholesale-consult-guide { background: #f2f5f5; border-color: #dce1df; }
body.inner-page .srx-quick-inquiry input,
body.inner-page .srx-quick-inquiry textarea,
body.inner-page .contact-layout input,
body.inner-page .contact-layout textarea,
body.inner-page .contact-layout select { background: #fff; border-color: #c0cac8; color: #242c2d; }
body.inner-page :is(input,textarea,select):focus-visible { outline-color: #39474a; }
body.inner-page .inner-cta { background: #242c2d; color: #fff; }
body.inner-page footer { background: #242c2d; color: #fff; }
body.inner-page .site-menu nav { background: #fff; border-color: #dce1df; }
body.inner-page .site-menu nav a { border-color: #dce1df; }
body.inner-page .site-menu nav a:hover,
body.inner-page .site-menu nav a[aria-current] { color: #242c2d; background: #eaf2f6; }
body.inner-page .srx-phone, body.inner-page .srx-phone * { color: inherit; }
body.inner-page .inner-cta .button.orange { background: #fff; color: #242c2d; }
body.inner-page .inner-cta .button.orange:hover { background: #eaf2f6; color: #242c2d; }
body.inner-page .inner-cta .section-id { color: #fff277; }
body.inner-page .wholesale-fields span,
body.inner-page .role-list span,
body.inner-page .visual-content .process-number,
body.inner-page .wholesale-consult-guide__items span { color: #39474a; }
body.inner-page .visual-content .visual-example { background: #f7f8f6; border-left-color: #39474a; }
body.inner-page .srx-inquiry-help,
body.inner-page .srx-solicitation-notice { background: #f7f8f6; border-color: #dce1df; color: #242c2d; }
body.inner-page .srx-inquiry-help { border-left-color: #39474a; }
body.inner-page .srx-solicitation-notice { border-left-color: #39474a; }
body.inner-page .header .site-menu .language a[aria-current=page] { color: #242c2d; border-bottom-color: #39474a; }
body.inner-page .contact-layout label small { color: #39474a; }
body.inner-page .contact-layout input:focus,
body.inner-page .contact-layout textarea:focus,
body.inner-page .contact-layout select:focus { outline-color: #39474a; }
body.inner-page #srx-contact-dock .srx-form-link { background: #242c2d; }
body.inner-page .srx-phone:focus-visible { outline-color: #39474a; }
@media (max-width: 1000px) {
  body.inner-page #srx-contact-dock { background: #fff; border-top: 1px solid #dce1df; }
  body.inner-page #srx-contact-dock .srx-phone { background: #fff; color: #242c2d; }
  body.inner-page #srx-contact-dock .srx-form-link { background: #242c2d; color: #fff; }
}
/* Carry the TOP's layout and photography through every lower page. */
body.inner-page .header,
body.inner-page .header.compact {
  width: min(100%, 1380px);
  max-width: 1380px;
  height: 82px !important;
  margin: 0 auto;
  padding: 0 4.5%;
  display: flex !important;
  align-items: center;
  gap: 30px;
  background: #fff;
  box-shadow: none;
}
body.inner-page .header .brand { min-width: 0; flex: 0 0 auto; margin-right: auto; gap: 9px; }
body.inner-page .header .brand img { width: 46px; height: 45px; object-fit: contain; }
body.inner-page .header .brand > span { font: 700 22px/1.05 Arial,sans-serif; letter-spacing: -.04em; }
body.inner-page .header .brand small { font: 600 8px/1.5 Arial,sans-serif; letter-spacing: .12em; margin-top: 4px; }
body.inner-page .header > nav { display: flex !important; align-items: center; gap: 25px; font-size: 14px; font-weight: 700; }
body.inner-page .header .header-cta { display: inline-flex !important; min-height: 44px; padding: 10px 17px; border-radius: 0; font-size: 13px; }
body.inner-page .header .srx-phone-header,
body.inner-page .header > .language { display: none !important; }
body.inner-page .header .site-menu { margin-left: 0; }
body.inner-page .header .site-menu summary { font-size: 12px; }
body.inner-page .header .srx-menu-language { padding-top: 16px; }
body.inner-page .header .srx-menu-language .language { display: flex; flex-wrap: wrap; gap: 8px 14px; width: auto; }
body.inner-page .header .srx-menu-language .language a { font-size: 12px; padding: 6px 0; border: 0; }

body.inner-page .inner-hero {
  min-height: 310px;
  padding: 36px max(calc((100vw - 1240px)/2),4.5%) 65px;
  color: #fff;
  background-color: #242c2d;
  background-image: linear-gradient(90deg,rgba(20,29,31,.91),rgba(20,29,31,.78) 48%,rgba(20,29,31,.56)),url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-webp-82.webp');
  background-image: linear-gradient(90deg,rgba(20,29,31,.91),rgba(20,29,31,.78) 48%,rgba(20,29,31,.56)),image-set(url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-avif-65.avif') type('image/avif'),url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-webp-82.webp') type('image/webp'));
  background-size: cover;
  background-position: center 56%;
}
body.inner-page .inner-hero .breadcrumbs,
body.inner-page .inner-hero .breadcrumbs a { color: #e5ecec; }
body.inner-page .inner-hero .section-id,
body.inner-page .inner-hero .inner-mark { display: none !important; }
body.inner-page .inner-hero h1 { max-width: 1000px; color: #fff; margin: 38px 0 18px; }
body.inner-page .inner-hero .inner-lead { color: #e5ecec; max-width: 680px; }
body.inner-page .inner-hero .srx-inquiry-entry p { color: #e5ecec; }
body.inner-page .inner-hero .button.orange { background: #fff; color: #242c2d; }
body.inner-page .inner-hero .button.orange:hover { background: #eaf2f6; color: #242c2d; }
body.inner-page .inner-content { max-width: 1240px; margin: 0 auto; padding: 0; }
body.inner-page .inner-cta { padding-inline: max(calc((100vw - 1240px)/2),4.5%); }
body.inner-page .bulk-intro { background: #eaf2f6; }
body.inner-page .srx-quick-inquiry { width: min(760px,calc(100% - 44px)); margin: 54px auto; padding: 34px 0; background: #fff; border: 0; border-top: 1px solid #dce1df; border-bottom: 1px solid #dce1df; }
body.inner-page .business-chapters--plain article { display: grid; grid-template-columns: 72px minmax(0,1fr) 245px; align-items: center; gap: 26px; }
body.inner-page .business-chapters--plain .business-photo { margin: 0; width: 100%; aspect-ratio: 3/2; overflow: hidden; background: #f7f8f6; }
body.inner-page .business-chapters--plain .business-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

body.inner-page footer.footer {
  background: linear-gradient(rgba(20,29,31,.84),rgba(20,29,31,.88)),url('/wp-content/themes/ninjindesign/assets/images/sunnyrex-warehouse-pallets-real.webp') center 52%/cover no-repeat;
  color: #fff;
  padding: 52px max(calc((100vw - 1240px)/2),4.5%) 22px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 20px;
  min-height: 0;
}
/* The shared footer replaces the lower-page sitemap and separate phone strip. */
body.inner-page main > .related-pages,
body.inner-page main > .srx-phone-panel { display: none; }
body.inner-page footer.footer .footer-info > strong { display: block; font-size: 18px; line-height: 1.5; }
body.inner-page footer.footer .footer-info p { margin: 6px 0 0; color: #d3dcda; font-size: 13px; line-height: 1.6; }
body.inner-page footer.footer .srx-phone-footer { display: inline-flex; flex-direction: row; align-items: baseline; gap: 8px; margin: 8px 0 0; color: #fff; }
body.inner-page footer.footer .srx-phone-footer span { font-size: 13px; }
body.inner-page footer.footer .srx-phone-footer strong { font-size: 15px; }
body.inner-page footer.footer nav { display: flex; flex-wrap: wrap; align-content: start; gap: 12px 24px; padding: 0; border: 0; width: auto; font-size: 14px; }
body.inner-page footer.footer nav a { display: inline; padding: 0; border: 0; font-size: 14px; color: #fff; }
body.inner-page footer.footer nav a:hover { color: #ffe62e; }
body.inner-page footer.footer small { grid-column: 1/-1; display: block; border-top: 1px solid rgba(255,255,255,.45); margin-top: 22px; padding-top: 18px; color: #d3dcda; font-size: 12px; }
@media (max-width: 1200px) {
  body.inner-page .header > nav { display: none !important; }
}
@media (max-width: 700px) {
  body.inner-page .header,
  body.inner-page .header.compact { height: 65px !important; width: 100%; padding: 0 20px; gap: 10px; }
  body.inner-page .header .brand img { width: 40px; height: 40px; }
  body.inner-page .header .brand > span { font-size: 20px; }
  body.inner-page .header .brand small { font-size: 7px; }
  body.inner-page .header .header-cta { display: none !important; }
  body.inner-page .header .site-menu summary { font-size: 0; padding: 8px 0; }
  body.inner-page .header .site-menu summary::before { content: '☰'; font-size: 22px; line-height: 1; }
  body.inner-page .header .site-menu summary span { display: none; }
  body.inner-page .inner-hero { min-height: 235px; padding: 25px 22px 42px; background-position: 60% center; }
  body.inner-page .inner-hero h1 { margin: 32px 0 13px; font-size: clamp(32px,8.4vw,40px); }
  body.inner-page .inner-hero .inner-lead { font-size: 14px; line-height: 1.7; }
  body.inner-page .inner-content { padding: 0 22px; }
  body.inner-page .inner-cta { padding-inline: 22px; }
  body.inner-page .business-chapters--plain article { grid-template-columns: 42px minmax(0,1fr); align-items: start; gap: 12px; }
  body.inner-page .business-chapters--plain .business-photo { grid-column: 2; aspect-ratio: 16/9; margin-top: 12px; }
  body.inner-page .srx-quick-inquiry { width: calc(100% - 44px); margin: 34px auto; padding: 26px 0; }
  body.inner-page footer.footer { display: block; padding: 42px 22px 20px; }
  body.inner-page footer.footer nav { margin-top: 23px; gap: 12px 20px; }
  body.inner-page footer.footer small { margin-top: 22px; }
}
body.inner-page .visual-content .business-chapters--plain article:nth-child(3) { grid-template-columns: 72px minmax(0,1fr) 245px; }
body.inner-page .visual-content .business-chapters--plain article:nth-child(3) .business-photo { grid-column: 3; }
@media (max-width: 700px) {
  body.inner-page .inner-hero {
    background-image: linear-gradient(rgba(20,29,31,.84),rgba(20,29,31,.84)),url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-webp-82.webp');
    background-image: linear-gradient(rgba(20,29,31,.84),rgba(20,29,31,.84)),image-set(url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-avif-65.avif') type('image/avif'),url('/wp-content/themes/ninjindesign/assets/approved-home-lcp-20261001/hero-webp-82.webp') type('image/webp'));
  }
  body.inner-page .visual-content .business-chapters--plain article:nth-child(3) { grid-template-columns: 42px minmax(0,1fr); }
  body.inner-page .visual-content .business-chapters--plain article:nth-child(3) .business-photo { grid-column: 2; }
}
/* Match the TOP header's content geometry, not only its outer width. */
body.inner-page .header,
body.inner-page .header.compact { gap: 36px; border-bottom: 1px solid #dce1df; }
body.inner-page .header .brand { display: flex; align-items: center; flex: 0 0 178px; gap: 9px; margin-right: 0; }
body.inner-page .header .brand-mark { display: block; flex: 0 0 44px; width: 44px; height: 27px; overflow: hidden; line-height: 0; }
body.inner-page .header .brand-mark img { display: block; width: 44px; height: auto; max-height: none; object-fit: contain; }
body.inner-page .header .brand-copy { display: flex; flex-direction: column; line-height: 1.2; }
body.inner-page .header .brand-copy strong { font: 700 22px/1.2 Arial,sans-serif; letter-spacing: -.04em; }
body.inner-page .header .brand-copy small { font: 600 8px/1.2 Arial,sans-serif; letter-spacing: .14em; margin-top: 4px; white-space: nowrap; }
body.inner-page .header > nav { gap: 30px; margin-left: auto; font-weight: 600; }
body.inner-page .header .header-cta { width: 153px; height: 53px; min-height: 53px; padding: 13px 20px; font-size: 14px; white-space: nowrap; }
body.inner-page .header .site-menu { display: none; }
@media (max-width: 700px) {
  body.inner-page .header,
  body.inner-page .header.compact { gap: 9px; }
  body.inner-page .header .brand { flex-basis: 158px; gap: 8px; }
  body.inner-page .header .brand-mark { flex-basis: 40px; width: 40px; height: 25px; }
  body.inner-page .header .brand-mark img { width: 40px; }
  body.inner-page .header .brand-copy strong { font-size: 20px; }
  body.inner-page .header .brand-copy small { font-size: 7px; letter-spacing: .12em; }
  body.inner-page .header .site-menu { display: block; flex: 0 0 30px; height: 22px; padding: 0; margin-left: auto; }
  body.inner-page .header .site-menu summary { display: block; width: 30px; height: 22px; padding: 0; line-height: 1; }
  body.inner-page .header .site-menu nav { top: 65px; max-height: calc(100dvh - 77px); }
}
/* Consistent, restrained title treatment across the inner-page hero bands. */
body.inner-page .inner-hero {
  min-height: 320px;
  padding-top: 36px;
  padding-bottom: 58px;
}
body.inner-page .inner-hero .breadcrumbs {
  margin-bottom: 40px;
  font-size: 12px;
  letter-spacing: .03em;
}
body.inner-page .inner-hero h1 {
  max-width: 1080px;
  margin: 0 0 16px !important;
  font-size: clamp(42px,3.6vw,52px) !important;
  line-height: 1.28 !important;
  letter-spacing: -.018em !important;
  font-weight: 700;
  text-wrap: balance;
}
body.inner-page .inner-hero .inner-lead {
  max-width: 760px;
  margin: 0;
  font-size: 16px !important;
  line-height: 1.85 !important;
  letter-spacing: .015em;
  text-wrap: pretty;
}
body.inner-page .bulk-intro h1 {
  font-size: clamp(42px,3.6vw,52px) !important;
  line-height: 1.28 !important;
  letter-spacing: -.018em !important;
}
body.inner-page .bulk-intro-lead {
  font-size: 16px !important;
  line-height: 1.85 !important;
  letter-spacing: .015em;
}
@media (max-width: 700px) {
  body.inner-page .inner-hero { min-height: 250px; padding: 25px 22px 40px; }
  body.inner-page .inner-hero .breadcrumbs { margin-bottom: 34px; font-size: 11px; }
  body.inner-page .inner-hero h1 {
    margin-bottom: 12px !important;
    font-size: clamp(29px,7.8vw,34px) !important;
    line-height: 1.38 !important;
    letter-spacing: -.012em !important;
  }
  body.inner-page .inner-hero .inner-lead { max-width: 100%; font-size: 14px !important; line-height: 1.85 !important; letter-spacing: .01em; }
  body.inner-page .bulk-intro h1 { font-size: clamp(29px,7.8vw,34px) !important; line-height: 1.38 !important; letter-spacing: -.012em !important; }
  body.inner-page .bulk-intro-lead { font-size: 14px !important; line-height: 1.85 !important; letter-spacing: .01em; }
}

/* Shared heading treatment for inner pages; the existing hero imagery stays intact. */
body.inner-page .inner-hero h1.srx-type-preview{margin-top:20px;margin-bottom:15px;line-height:1.1!important}
body.inner-page .srx-type-preview .srx-en{display:block;font-family:Arial,Helvetica,sans-serif;font-size:clamp(50px,5.5vw,72px);font-weight:800;letter-spacing:-.055em;line-height:1;overflow-wrap:anywhere;color:inherit}
body.inner-page .srx-type-preview .srx-en.srx-long{font-size:clamp(40px,4.2vw,58px)}
body.inner-page .srx-type-preview .srx-native{display:block;margin-top:11px;font-family:inherit;font-size:20px;font-weight:700;letter-spacing:.06em;line-height:1.35;color:inherit}
body.inner-page .bulk-intro-copy h1.srx-type-preview{line-height:1.12!important}
body.inner-page .bulk-intro-copy .srx-type-preview .srx-en{font-size:clamp(40px,4.5vw,62px)}
body.inner-page .bulk-intro-copy .srx-type-preview .srx-native{font-size:clamp(17px,1.7vw,24px)}
@media(max-width:700px){
  body.inner-page .inner-hero h1.srx-type-preview{margin-top:0;margin-bottom:5px}
  body.inner-page .srx-type-preview .srx-en{font-size:clamp(32px,10.7vw,42px)}
  body.inner-page .srx-type-preview .srx-en.srx-long{font-size:clamp(25px,7.7vw,32px)}
  body.inner-page .srx-type-preview .srx-native{font-size:15px;line-height:1.22;margin-top:4px;letter-spacing:.02em}
  body.inner-page .bulk-intro-copy .srx-type-preview .srx-en{font-size:clamp(30px,8vw,40px)}
  body.inner-page .bulk-intro-copy .srx-type-preview .srx-native{font-size:17px}
}

/* Match the larger brand lockup used on the homepage. */
body.inner-page .header .brand{flex-basis:208px;gap:12px}
body.inner-page .header .brand-mark{flex:0 0 56px;width:56px;height:35px}
body.inner-page .header .brand-mark img{width:56px}
body.inner-page .header .brand-copy strong{font-size:27px;line-height:1.1}
body.inner-page .header .brand-copy small{font-size:9px;line-height:1.2;margin-top:5px}
@media(max-width:700px){
  body.inner-page .header .brand{flex-basis:178px;gap:8px}
  body.inner-page .header .brand-mark{flex-basis:47px;width:47px;height:30px}
  body.inner-page .header .brand-mark img{width:47px}
  body.inner-page .header .brand-copy strong{font-size:23px}
  body.inner-page .header .brand-copy small{font-size:8px;margin-top:4px}
}

/* Typography only: Sunnyrex's existing copy, imagery and color remain unchanged. */
.header .nav a,
html[lang="ja"] body.inner-page .header > nav a {
  font-family:'Noto Sans JP',sans-serif;
  font-size:14px;
  font-weight:700;
  letter-spacing:.045em;
}
html[lang="ja"] .header .header-cta,
html[lang="ja"] .header .mobile-nav summary,
html[lang="ja"] body.inner-page .header .site-menu summary {
  font-family:'Noto Sans JP',sans-serif;
  font-weight:700;
  letter-spacing:.035em;
}
.business .section-heading > p:first-child {
  font-family:'Noto Sans JP',sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.12em;
}
.business .section-heading h2 {
  font-family:'Noto Sans JP',sans-serif;
  font-weight:900;
  letter-spacing:-.045em;
  line-height:1.35;
}
.business .section-heading > p:last-child {
  font-family:'Noto Sans JP',sans-serif;
  font-weight:500;
  letter-spacing:.025em;
  line-height:1.85;
}
.business-grid h3 {
  font-family:'Noto Sans JP',sans-serif;
  font-size:22px;
  font-weight:700;
  letter-spacing:.005em;
  line-height:1.5;
}
.business-grid p {
  font-family:'Noto Sans JP',sans-serif;
  font-size:14px;
  font-weight:500;
  letter-spacing:.025em;
  line-height:1.85;
}
.business-grid .underlink {
  font-family:'Noto Sans JP',sans-serif;
  font-weight:700;
  letter-spacing:.02em;
}
@media(max-width:700px){
  .business .section-heading h2{font-size:clamp(27px,7vw,31px)}
  .business-grid h3{font-size:19px}
  .business-grid p{font-size:13px}
}

/* Shared inner-page type hierarchy; the Japanese family follows the homepage. */
body.inner-page .inner-section-heading h2,
body.inner-page .visual-flow--wholesale h2 {
  font-size:36px;
  font-weight:700;
  line-height:1.4;
  letter-spacing:-.035em;
}
body.inner-page .inner-section h3 { font-size:22px; font-weight:700; line-height:1.5; }
html[lang="ja"] body.inner-page { font-family:'Noto Sans JP',sans-serif; }
html[lang="ja"] body.inner-page .inner-section-heading h2,
html[lang="ja"] body.inner-page .visual-flow--wholesale h2 {
  font-family:'Noto Sans JP',sans-serif;
  font-size:36px;
  font-weight:900;
  line-height:1.4;
  letter-spacing:-.045em;
}
html[lang="ja"] body.inner-page .inner-section h3 {
  font-family:'Noto Sans JP',sans-serif;
  font-weight:700;
  line-height:1.5;
}
html[lang="ja"] body.inner-page .visual-flow--wholesale .process-number {
  color:#a17a00;
  font-size:16px;
  font-weight:800;
}
@media(max-width:700px){
  body.inner-page .inner-section-heading h2,
  body.inner-page .visual-flow--wholesale h2{font-size:28px}
  body.inner-page .inner-section h3{font-size:20px}
  html[lang="ja"] body.inner-page .inner-section-heading h2,
  html[lang="ja"] body.inner-page .visual-flow--wholesale h2{font-size:28px}
}
