@charset "UTF-8";
/* Sustainability LP: scoped to .sus-page; 768px page / 1180px figure layouts. */
.sus-page {
  --sus-header-h:85px; color:#4d4d4d; background:#fff;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  font-size:14px; font-weight:400; line-height:1.9;
  width:100%; overflow-x:clip; -webkit-text-size-adjust:100%;
  /* Contain local z-index:1 diagram labels below the CMS header/top button. */
  position:relative; isolation:isolate; z-index:0;
}
.sus-page *, .sus-page *::before, .sus-page *::after { box-sizing:border-box; }
.sus-page a { text-decoration:none; }
.sus-page ul { list-style:none; padding:0; margin:0; }
.sus-page { --sus-red:#e60012;--sus-navy:#1c3659;--sus-diagram-navy:#1a4369;--sus-diagram-red:#f50f10;--sus-ink:#333;--sus-sub:#4d4d4d;--sus-gray:#f4f4f5;--sus-line:#d9d9d9;--sus-pink:#fdeef0;--sus-blue:#edf4fa;--sus-white:#fff }
.sus-page * { box-sizing:border-box }
.sus-page button,
.sus-page summary,
.sus-page a { -webkit-tap-highlight-color:transparent }
.sus-page button { font:inherit }
.sus-page a { color:inherit;text-decoration:none }
.sus-page button,
.sus-page summary { cursor:pointer }
.sus-page a:focus-visible,
.sus-page button:focus-visible,
.sus-page summary:focus-visible { outline:3px solid #008db5;outline-offset:4px }
.sus-page img,
.sus-page svg { display:block;flex-shrink:0 }
.sus-page img { object-fit:contain;max-width:100%;height:auto }
.sus-page button,
.sus-page figure,
.sus-page p,
.sus-page h1,
.sus-page h2,
.sus-page h3,
.sus-page h4,
.sus-page h5 { margin:0 }
.sus-page h1,
.sus-page h2,
.sus-page h3,
.sus-page h4,
.sus-page h5 { color:var(--sus-navy);font-weight:700;line-height:1.65;overflow-wrap:anywhere;word-break:normal;line-break:strict }
.sus-page h1 { font-size:24px;line-height:1.65;color:var(--sus-ink);letter-spacing:.015em }
.sus-page h2 { font-size:22px;color:var(--sus-ink) }
.sus-page h3 { font-size:18px }
.sus-page h4 { font-size:17px }
.sus-page h5 { font-size:15px }
.sus-page .sus-copy { white-space:pre-line;overflow-wrap:anywhere;line-break:strict;min-width:0;max-width:100% }
.sus-page p.sus-copy { line-height:1.9 }
.sus-page .sus-section { width:100%;padding:52px 0;display:flex;flex-direction:column;gap:26px;position:relative;scroll-margin-top:20px }
.sus-page .sus-section>* { min-width:0;max-width:100% }
.sus-page .sus-section.sus-gray { background:var(--sus-gray) }
.sus-page .sus-section.sus-related { padding-top:0;padding-bottom:52px }
.sus-page .sus-section-heading { display:flex;flex-direction:column;gap:14px }
.sus-page .sus-accent-line { height:4px;width:100%;background:linear-gradient(to right,#f00 0 28px,#666 28px 56px,#bcbcbc 56px 84px,#e4e4e4 84px) }
.sus-page summary { list-style:none }
.sus-page summary::-webkit-details-marker { display:none }
.sus-page .sus-hero { padding-top:30px;padding-bottom:36px;gap:20px;background:#f7f7f7 url("/medigital/feature/sustainability/img/hero_bg.jpg") center/cover no-repeat }
.sus-page .sus-hero .sus-eyebrow { font-size:12px;font-weight:700;line-height:1.8;color:var(--sus-red) }
.sus-page .sus-hero h1 { white-space:normal }
.sus-page .sus-hero-image { width:100%;height:auto;aspect-ratio:582/438;mix-blend-mode:multiply;object-fit:contain }
.sus-page .sus-hero-copy { font-size:14px;line-height:1.9 }
.sus-page .sus-cta-stack { display:flex;flex-direction:column;gap:12px;width:100% }
.sus-page .sus-cta-button { width:100%;min-height:56px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:14px 10px;border:1px solid var(--sus-red);border-radius:4px;background:var(--sus-red);color:#fff;text-align:center;font-size:14px;line-height:1.7;font-weight:700;white-space:normal }
.sus-page .sus-cta-button.sus-outline { background:#fff;border-color:var(--sus-navy);color:var(--sus-navy) }
.sus-page .sus-page-nav { padding:8px 0 16px;border-bottom:1px solid #e4e4e4;gap:0 }
.sus-page .sus-anchor-accordion>summary { height:36px;display:flex;align-items:center;justify-content:flex-end;color:var(--sus-navy) }
.sus-page .sus-anchor-accordion>summary::after { content:"";width:8px;height:8px;border-bottom:1.5px solid var(--sus-navy);border-right:1.5px solid var(--sus-navy);transform:rotate(45deg);margin:0 5px 4px 10px }
.sus-page .sus-anchor-accordion[open]>summary::after { transform:rotate(225deg);margin-bottom:-4px }
.sus-page .sus-anchor-accordion>nav { display:flex;flex-direction:column;border-top:1px solid #e4e4e4 }
.sus-page .sus-anchor-link { min-height:44px;font-size:13px;display:flex;align-items:center;border-bottom:1px solid #e4e4e4;padding:8px 12px;color:var(--sus-ink) }
.sus-page .sus-note-box { display:flex;flex-direction:column;gap:10px;padding:20px 18px;background:var(--sus-gray);border-radius:4px }
.sus-page .sus-note-box h3 { font-size:16px }
.sus-page .sus-note-box--platform { background:var(--sus-pink);color:var(--sus-red) }
.sus-page .sus-note-box--platform h3 { color:var(--sus-red) }
.sus-page .sus-callout { background:var(--sus-pink);border-radius:4px;padding:20px 18px;text-align:center;color:var(--sus-red);font-weight:700;font-size:16px;line-height:1.85 }
.sus-page .sus-card-stack,
.sus-page .sus-flow-stack,
.sus-page .sus-role-stack { display:flex;flex-direction:column;gap:16px }
.sus-page .sus-card-top { display:flex;justify-content:space-between;align-items:center;gap:16px }
.sus-page .sus-line-icon { width:48px;height:48px;flex-shrink:0 }
.sus-page .sus-line-icon svg { width:100%;height:100% }
.sus-page .sus-number { color:var(--sus-red);font-size:26px;font-weight:700;line-height:1.4!important;white-space:pre }
.sus-page .sus-process-card,
.sus-page .sus-feature-card { padding:22px 20px;background:var(--sus-gray);border-radius:6px;display:flex;flex-direction:column;gap:14px }
.sus-page .sus-process-card h4,
.sus-page .sus-feature-card h4 { font-size:18px }
.sus-page .sus-issue-card { padding:24px 20px;background:var(--sus-white);border-radius:6px;display:flex;flex-direction:column;gap:14px }
.sus-page .sus-issue-number { color:var(--sus-red);font-size:16px;font-weight:700 }
.sus-page .sus-issue-card h3 { font-size:19px;color:var(--sus-ink) }
.sus-page .sus-quote { font-size:15px;font-weight:700;color:var(--sus-navy) }
.sus-page .sus-example { font-size:12px;line-height:1.85;padding-top:14px;border-top:1px solid var(--sus-line) }
.sus-page .sus-role-card { padding:22px 20px;border-radius:6px;background:#fff;display:flex;flex-direction:column;gap:10px }
.sus-page .sus-role-card h3 { font-size:24px }
.sus-page .sus-role-card p { font-weight:700 }
.sus-page .sus-product-section { padding-top:44px;padding-bottom:48px }
.sus-page .sus-product-section+.sus-product-section { border-top:1px solid #e4e4e4 }
.sus-page .sus-product-category { font-size:15px;color:var(--sus-navy) }
.sus-page .sus-product-logo { width:100%;min-height:130px;padding:20px 36px;border:1px solid var(--sus-line);border-radius:6px;display:flex;align-items:center;justify-content:center }
.sus-page .sus-product-logo img { width:230px;height:90px;object-fit:contain }
.sus-page .sus-product-head { font-size:22px;color:var(--sus-ink) }
.sus-page .sus-small-note { font-size:12px;line-height:1.85 }
.sus-page .sus-roadmap-stack { display:flex;flex-direction:column;gap:0 }
.sus-page .sus-roadmap-step { padding:22px 20px;background:#fff;border-radius:6px;display:flex;flex-direction:column;gap:14px }
.sus-page .sus-step-head { display:flex;align-items:flex-start;gap:14px }
.sus-page .sus-step-head .sus-number { width:37px;flex-shrink:0;line-height:1.3!important }
.sus-page .sus-step-head h3 { font-size:18px;line-height:1.7;flex:1 }
.sus-page .sus-step-arrow { font-size:23px;font-weight:700;color:var(--sus-red);text-align:center;height:34px;line-height:30px!important }
.sus-page .sus-strength-card { padding:26px 20px;background:var(--sus-gray);border-radius:6px;display:flex;flex-direction:column;gap:20px;align-items:center }
.sus-page .sus-strength-card h3 { font-size:18px;text-align:center;width:100% }
.sus-page .sus-strength-card p { width:100% }
.sus-page .sus-strength-image { width:120px;height:100px;object-fit:contain }
.sus-page .sus-strength-card>.sus-line-icon { width:64px;height:100px;display:flex;align-items:center }
.sus-page .sus-strength-card>.sus-line-icon svg { height:64px }
.sus-page .sus-contact { background:var(--sus-pink);text-align:center;padding-top:44px;padding-bottom:44px }
.sus-page .sus-contact h2 { font-size:22px;white-space:normal }
.sus-page .sus-contact > .sus-section__inner > p { font-size:16px;color:var(--sus-ink) }
.sus-page .sus-diagram { font-size:14px;line-height:1.8;color:var(--sus-diagram-navy);display:flex;flex-direction:column;gap:16px;width:100% }
.sus-page .sus-diagram-panel { border:1px solid var(--sus-diagram-navy);background:#fff;width:100%;display:flex;flex-direction:column }
.sus-page .sus-panel-title { font-size:17px;color:#fff;background:var(--sus-diagram-navy);text-align:center;padding:13px 12px;line-height:1.65 }
.sus-page .sus-panel-body { display:flex;flex-direction:column;align-items:center;gap:18px;padding:18px 16px;min-width:0;width:100% }
.sus-page .sus-panel-body>p,
.sus-page .sus-panel-body>h5 { width:100%;text-align:center }
.sus-page .sus-diagram-label { font-size:14px;font-weight:700;line-height:1.8!important }
.sus-page .sus-diagram-subtitle { font-size:15px;font-weight:700;line-height:1.8!important }
.sus-page .sus-bare-icon { width:38px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0 }
.sus-page .sus-bare-icon svg,
.sus-page .sus-bare-icon img { width:32px;height:32px;overflow:hidden }
.sus-page .sus-down-arrow { align-self:center;margin:0;flex-shrink:0 }
.sus-page .sus-finance-info .sus-panel-title,
.sus-page .sus-nonfinancial .sus-panel-title { font-size:14px;padding:7px 10px }
.sus-page .sus-finance-info .sus-panel-body { padding:20px 8px }
.sus-page .sus-finance-three { display:flex;gap:5px;width:100%;justify-content:space-between }
.sus-page .sus-finance-item { display:flex;flex-direction:column;gap:12px;align-items:center;flex:1;min-width:0;justify-content:center }
.sus-page .sus-finance-item .sus-diagram-label { font-size:12px;white-space:nowrap;text-align:center }
.sus-page .sus-short-term { border:1px solid var(--sus-diagram-navy);padding:20px 12px;display:flex;align-items:center;gap:12px;width:100% }
.sus-page .sus-short-term .sus-diagram-label { font-size:16px }
.sus-page .sus-risk { border-top:1px solid #d5dce3;padding:22px 4px 10px;display:flex;align-items:center;gap:12px;width:100% }
.sus-page .sus-perspective { display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center }
.sus-page .sus-perspective .sus-copy { white-space:normal }
.sus-page .sus-future>.sus-panel-body { padding:18px 12px;gap:18px }
.sus-page .sus-nonfinancial .sus-panel-body { padding:20px 14px;gap:20px }
.sus-page .sus-esg-row { display:flex;align-items:center;gap:16px;width:100% }
.sus-page .sus-esg-copy { display:flex;flex-direction:column;gap:4px;flex:1;min-width:0 }
.sus-page .sus-esg-copy p { font-size:13px;line-height:1.85!important }
.sus-page .sus-balance { padding:18px 14px;background:#f6f8fa;border:1px solid var(--sus-diagram-navy);display:flex;flex-direction:column;gap:14px;text-align:center }
.sus-page .sus-finance-outcomes { display:flex;flex-direction:column;gap:10px;width:100% }
.sus-page .sus-outcome-cell { border:1px solid var(--sus-diagram-navy);padding:14px;display:flex;align-items:center;gap:14px;width:100% }
.sus-page .sus-outcome-cell .sus-diagram-label { flex:1;min-width:0 }
.sus-page .sus-conclusion { display:flex;align-items:flex-start;gap:10px;width:100%;padding-top:4px }
.sus-page .sus-conclusion>svg { margin-top:3px }
.sus-page .sus-conclusion .sus-copy { flex:1;min-width:0 }
.sus-page .sus-source-row { display:flex;gap:14px;align-items:center;width:100%;min-height:64px }
.sus-page .sus-source-row .sus-copy { flex:1;min-width:0;white-space:normal }
.sus-page .sus-platform-diagram>.sus-diagram-panel,
.sus-page .sus-data-management,
.sus-page .sus-outcome-stack>.sus-diagram-panel { border-radius:8px }
.sus-page .sus-platform-diagram>.sus-diagram-panel>.sus-panel-title,
.sus-page .sus-data-management>.sus-panel-title,
.sus-page .sus-outcome-stack>.sus-diagram-panel>.sus-panel-title { border-radius:6px 6px 0 0 }
.sus-page .sus-data-model,
.sus-page .sus-control-group { border:1px solid var(--sus-diagram-navy);padding:20px 16px;border-radius:4px;width:100%;display:flex;flex-direction:column;gap:20px;align-items:center;text-align:center }
.sus-page .sus-data-group { width:100%;display:flex;flex-direction:column;gap:8px }
.sus-page .sus-data-group p { line-height:1.8!important }
.sus-page .sus-data-group.sus-rules { border-top:1px solid #d5dce3;padding-top:18px }
.sus-page .sus-data-model>h5 { padding-top:2px }
.sus-page .sus-control-list { display:flex;flex-direction:column;gap:14px;width:100% }
.sus-page .sus-control-item { display:flex;gap:14px;align-items:center;text-align:left }
.sus-page .sus-control-item .sus-copy { flex:1;min-width:0;white-space:normal }
.sus-page .sus-outcome-stack { display:flex;flex-direction:column;gap:16px;width:100%;position:relative }
.sus-page .sus-diagram-cell { padding:10px 8px;border:1px solid var(--sus-diagram-navy);border-radius:3px;text-align:center;width:100%;line-height:1.8!important }
.sus-page .sus-product-name { font-size:30px;font-weight:700;line-height:1.5!important;color:var(--sus-diagram-navy) }
.sus-page .sus-ghg-icons { display:flex;justify-content:center;gap:18px;padding:8px 0 }
.sus-page .sus-cocono-panel .sus-diagram-label { white-space:pre-line;text-align:left;padding:0 14px }
.sus-page .sus-workiva-panel .sus-panel-body { gap:16px }
.sus-page .sus-inlet,
.sus-page .sus-outlet { background:var(--sus-diagram-navy);color:#fff;font-weight:700;padding:10px 12px;border-radius:3px;line-height:1.8!important }
.sus-page .sus-hero-image { aspect-ratio:4/3 }
.sus-page .sus-role-card { border:1px solid transparent;min-height:60px }
.sus-page .sus-role-card:hover { border-color:var(--sus-navy) }
.sus-page .sus-related-article { gap:16px;padding-top:32px;padding-bottom:32px }
.sus-page .sus-related-label { font-size:18px;color:var(--sus-navy) }
.sus-page .sus-related-article-card { width:100%;min-height:60px;padding:20px 16px;border:1px solid var(--sus-line);border-radius:4px;background:#fff;display:flex;align-items:center;gap:14px;color:var(--sus-navy) }
.sus-page .sus-related-article-card:hover { border-color:var(--sus-navy) }
.sus-page .sus-related-article-copy { min-width:0;flex:1;display:flex;flex-direction:column;gap:10px }
.sus-page .sus-related-kicker { font-size:13px }
.sus-page .sus-related-title { font-size:14px;font-weight:700 }
.sus-page .sus-trademark-notes { list-style:none;margin:0;padding:0;font-size:11px;line-height:1.8;color:var(--sus-sub) }
.sus-page .sus-trademark-notes li { margin:0;padding:0 }
.sus-page .sus-connected-arrow,
.sus-page .sus-fork-arrow { overflow:visible;pointer-events:none }
.sus-page .sus-fork-two { width:100%;height:36px }
.sus-page .sus-future>.sus-future-body { padding:18px 9px;gap:0 }
.sus-page .sus-integrated-information { width:100%;border:1px solid var(--sus-diagram-navy);border-radius:4px;padding:14px 10px;display:flex;flex-direction:column;align-items:center }
.sus-page .sus-integrated-information>.sus-diagram-subtitle { text-align:center;font-size:14px;margin-bottom:14px }
.sus-page .sus-integration-plus { font-size:24px;line-height:36px;font-weight:700;text-align:center;height:36px }
.sus-page .sus-future .sus-finance-info .sus-panel-body,
.sus-page .sus-future .sus-nonfinancial .sus-panel-body { padding:16px 12px;gap:12px }
.sus-page .sus-future .sus-finance-three { flex-direction:column;gap:12px }
.sus-page .sus-future .sus-finance-item,
.sus-page .sus-future .sus-esg-row { flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;min-height:84px;width:100%;flex:none }
.sus-page .sus-future .sus-finance-item .sus-diagram-label { font-size:13px;white-space:normal;text-align:left }
.sus-page .sus-future .sus-balance { width:100% }
.sus-page .sus-finance-fanout { position:relative;width:100%;padding-top:36px }
.sus-page .sus-fork-four { position:absolute;top:0;left:0;width:100%;height:336px }
.sus-page .sus-finance-outcomes { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,132px);gap:36px 12px }
.sus-page .sus-outcome-cell { padding:10px 6px;flex-direction:column;justify-content:center;gap:8px;min-width:0;text-align:center }
.sus-page .sus-outcome-cell .sus-diagram-label { font-size:12px;line-height:1.65!important;flex:0 0 auto;white-space:normal }
.sus-page .sus-future .sus-conclusion { padding-top:0;margin-top:18px }
.sus-page .sus-platform-diagram { gap:0 }
.sus-page .sus-data-management>.sus-panel-body { padding:18px 12px }
.sus-page .sus-data-model { padding:16px 10px }
.sus-page .sus-data-groups { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100% }
.sus-page .sus-data-group { min-width:0 }
.sus-page .sus-data-group h5 { font-size:12px }
.sus-page .sus-data-group p { font-size:12px }
.sus-page .sus-data-group.sus-rules { border-top:0;border-left:1px solid #d5dce3;padding:0 0 0 10px }
.sus-page .sus-control-group { padding:16px 10px }
.sus-page .sus-control-list { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 8px }
.sus-page .sus-control-item { grid-column:span 2;flex-direction:column;align-items:center;gap:8px;min-width:0;text-align:center }
.sus-page .sus-control-item:nth-child(4) { grid-column:2/span 2 }
.sus-page .sus-control-item:nth-child(5) { grid-column:4/span 2 }
.sus-page .sus-control-item .sus-copy { font-size:12px;flex:none }
.sus-page .sus-output-fanout { width:100% }
.sus-page .sus-parallel-outputs { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch }
.sus-page .sus-parallel-outputs>.sus-diagram-panel { min-width:0 }
.sus-page .sus-parallel-outputs .sus-panel-title { padding:10px 5px;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1.6 }
.sus-page .sus-parallel-outputs .sus-panel-body { padding:16px 8px;gap:12px }
.sus-page .sus-parallel-outputs .sus-diagram-cell { padding:9px 5px;min-height:64px;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1.65!important }
.sus-page .sus-circle-icon { width:40px;height:40px;min-width:40px;min-height:40px;aspect-ratio:1/1;border:1px solid #1c3659;border-radius:50%;display:flex;justify-content:center;align-items:center;background:#fff;flex:0 0 40px }
.sus-page .sus-circle-icon img,
.sus-page .sus-circle-icon svg { width:64%;height:64%;object-fit:contain }
.sus-page .sus-systems-diagram { gap:0 }
.sus-page .sus-business-outcomes { display:flex;flex-direction:column;gap:0;width:100%;border:1px solid var(--sus-diagram-navy);background:#fff }
.sus-page .sus-business-outcomes>.sus-outcome-stack { padding:0 }
@media (max-width:1179.98px) {
.sus-page .sus-integration-path { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:15px;grid-template-rows:88px auto;gap:0;align-items:stretch;position:relative;width:100% }
.sus-page .sus-source-fork { grid-column:1/-1;grid-row:1;width:100%;height:88px }
.sus-page .sus-route-label { position:absolute;top:27px;z-index:1;background:var(--sus-gray);padding:1px 3px;color:var(--sus-diagram-red);font-size:10px;font-weight:700;line-height:1.6!important;text-align:center }
.sus-page .sus-ghg-label { left:10px;width:140px;white-space:normal }
.sus-page .sus-direct-label { left:185px;width:140px }
.sus-page .sus-cocono-panel { grid-column:1;grid-row:2;min-width:0 }
.sus-page .sus-cocono-panel>.sus-panel-title { min-height:76px;padding:17px 6px;font-size:12px;line-height:1.65 }
.sus-page .sus-cocono-panel>.sus-panel-body { padding:16px 10px;gap:18px;flex:1 }
.sus-page .sus-diagram-product-logo { width:128px;height:52px;object-fit:contain }
.sus-page .sus-ghg-icons { gap:4px;padding:0;flex-wrap:nowrap }
.sus-page .sus-cocono-panel .sus-diagram-label { padding:0;font-size:12px;line-height:1.8!important;text-align:left }
.sus-page .sus-cocono-to-workiva { grid-column:2;grid-row:2;width:15px;height:12px;align-self:center;justify-self:center;z-index:1 }
.sus-page .sus-workiva-panel { grid-column:3;grid-row:2;display:grid;grid-template-columns:28px minmax(0,1fr) 28px;grid-template-rows:18px 58px auto;min-width:0 }
.sus-page .sus-direct-entry { grid-column:1/-1;grid-row:1;width:100%;height:18px }
.sus-page .sus-workiva-panel>.sus-panel-title { grid-column:2;grid-row:2;background:#fff;color:var(--sus-diagram-navy);padding:8px 2px;font-size:12px;line-height:1.65;text-align:center }
.sus-page .sus-workiva-panel>.sus-panel-body { grid-column:2;grid-row:3;padding:14px 4px;gap:14px;justify-content:space-between }
.sus-page .sus-workiva-panel .sus-product-name { font-size:20px;white-space:nowrap }
.sus-page .sus-workiva-panel .sus-diagram-cell { padding:8px 4px;min-height:44px;font-size:11px;line-height:1.6!important }
.sus-page .sus-workiva-panel .sus-workiva-esg { font-size:12px;line-height:1.65 }
.sus-page .sus-workiva-panel>.sus-inlet,
.sus-page .sus-workiva-panel>.sus-outlet { grid-row:2/4;align-self:stretch;width:28px;min-height:0;height:auto;margin:0;padding:12px 4px;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1.6!important;writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;text-align:center }
.sus-page .sus-workiva-panel>.sus-inlet { grid-column:1 }
.sus-page .sus-workiva-panel>.sus-outlet { grid-column:3 }
.sus-page .sus-business-incoming { align-self:flex-start;margin-left:calc(100% - 27px) }
}
.sus-page .sus-pc-only { display: none; }
.sus-page .sus-product-intro,
.sus-page .sus-product-copy { display: contents; }
@media (min-width: 768px) {
.sus-page { --sus-pc-gutter: 24px; --sus-pc-circle: 52px; }
.sus-page .sus-section { width: 100%; padding:88px 0; gap: 36px; scroll-margin-top: 24px; }
.sus-page h1 { font-size: 40px; line-height: 1.5; }
.sus-page h2 { font-size: 28px; line-height: 1.5; }
.sus-page h3 { font-size: 22px; line-height: 1.6; }
.sus-page h4 { font-size: 18px; }
.sus-page p.sus-copy { line-height: 1.85; }
.sus-page .sus-copy.sus-paragraphs { white-space: normal; }
.sus-page .sus-paragraph { display: block; }
.sus-page .sus-paragraph + .sus-paragraph { margin-top: 12px; }
.sus-page .sus-pc-emphasis { font-weight: 700; }
.sus-page .sus-section-heading { gap: 14px; }
.sus-page .sus-accent-line { height: 8px; background: linear-gradient(to right, #f00 0 40px, #666 40px 80px, #bcbcbc 80px 120px, #e4e4e4 120px); }
.sus-page .sus-pc-only { display: block; }
.sus-page .sus-sp-only { display: none; }
.sus-page .sus-anchor-accordion::details-content { content-visibility: visible; display: block; }
.sus-page .sus-hero { min-height: 612px; padding-top: 70px; padding-bottom: 70px; display: block; grid-template-columns: minmax(0, 590fr) minmax(0, 582fr); column-gap: 28px; row-gap: 26px; align-content: center; }
.sus-page .sus-hero .sus-eyebrow { grid-column: 1; grid-row: 1; font-size: 14px; line-height: 1.8; }
.sus-page .sus-hero h1 { grid-column: 1; grid-row: 2; white-space: pre-line; letter-spacing: .015em; }
.sus-page .sus-hero .sus-hero-copy { grid-column: 1; grid-row: 3; font-size: 16px; }
.sus-page .sus-hero-image { grid-column: 2; grid-row: 1 / 5; align-self: center; width: 100%; height: auto; }
.sus-page .sus-hero .sus-cta-stack { grid-column: 1; grid-row: 4; }
.sus-page .sus-cta-stack { width: 100%; flex-direction: row; gap: 16px; }
.sus-page .sus-cta-button { width: 275px; min-height: 62px; padding: 16px; font-size: 16px; line-height: 1.7; }
.sus-page .sus-hero .sus-cta-button { width: min(275px, calc((100% - 16px) / 2)); }
.sus-page .sus-page-nav { min-height: 67px; padding-top: 22px; padding-bottom: 22px; border: 0; gap: 0; }
.sus-page .sus-anchor-accordion { width: 100%; }
.sus-page .sus-anchor-accordion > summary { display: none; }
.sus-page .sus-anchor-accordion > nav { border: 0; flex-direction: row; align-items: center; justify-content: space-between; }
.sus-page .sus-anchor-link { min-height: 23px; font-size: 13px; line-height: 23px; padding: 0 22px; border: 0; white-space: nowrap; }
.sus-page #background { min-height: 1470px; }
.sus-page #process { min-height: 812px; }
.sus-page #issues { min-height: 1412px; }
.sus-page #platform { min-height: 1481px; }
.sus-page #solutions { min-height: 1451px; }
.sus-page #cocono { min-height: 1040px; }
.sus-page #workiva { min-height: 1110px; }
.sus-page #roadmap { min-height: 1304px; }
.sus-page #strengths { min-height: 843px; }
.sus-page .sus-note-box { padding: 24px; gap: 12px; }
.sus-page .sus-note-box h3 { font-size: 18px; }
.sus-page .sus-callout { padding: 24px 28px; font-size: 20px; line-height: 1.7; }
.sus-page .sus-section.sus-related { padding-top: 64px; padding-bottom: 64px; }
.sus-page #process > .sus-section__inner > h2 { color: var(--sus-navy); font-size: 22px; line-height: 1.6; }
.sus-page .sus-flow-stack { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.sus-page .sus-process-card { padding: 24px 22px; gap: 18px; font-size: 14px; }
.sus-page .sus-process-card .sus-card-top,
.sus-page .sus-feature-card .sus-card-top { flex-direction: column; align-items: flex-start; gap: 20px; }
.sus-page .sus-process-card .sus-number { font-size: 30px; }
.sus-page .sus-process-card h4 { font-size: 18px; }
.sus-page .sus-flow-direction { font-size: 0; }
.sus-page .sus-flow-direction::after { content: "→"; font-size: 30px; }
.sus-page #issues .sus-card-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
.sus-page .sus-issue-card { padding: 28px; gap: 18px; font-size: 14px; }
.sus-page .sus-issue-card .sus-line-icon { width: 56px; height: 56px; }
.sus-page .sus-issue-number { font-size: 14px; }
.sus-page .sus-issue-card h3 { font-size: 20px; color: var(--sus-navy); }
.sus-page .sus-quote { font-size: 16px; color: var(--sus-ink); }
.sus-page .sus-example { font-size: 12px; padding-top: 16px; margin-top: auto; }
.sus-page .sus-role-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.sus-page .sus-role-card { padding: 24px; min-height: 132px; gap: 14px; }
.sus-page .sus-role-card h3 { font-size: 24px; }
.sus-page .sus-product-section { padding-top: 72px; padding-bottom: 72px; }
.sus-page .sus-product-section + .sus-product-section { border-top: 0; }
.sus-page .sus-product-category { font-size: 16px; line-height: 1.7; }
.sus-page .sus-product-intro { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 48px; align-items: center; }
.sus-page .sus-product-copy { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.sus-page .sus-product-logo { width: 300px; height: 160px; min-height: 160px; padding: 20px 34px; }
.sus-page .sus-product-logo img { width: 230px; height: 90px; }
.sus-page .sus-product-head { font-size: 24px; line-height: 1.6; }
.sus-page .sus-product-section .sus-card-stack { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.sus-page .sus-feature-card { min-height: 356px; padding: 28px 24px 24px; gap: 14px; font-size: 14px; }
.sus-page .sus-feature-card h4 { min-height: 60px; font-size: 18px; }
.sus-page .sus-product-section > .sus-section__inner > .sus-cta-button { width: 330px; align-self: center; }
.sus-page .sus-small-note { font-size: 12px; }
.sus-page .sus-roadmap-step { min-height: 94px; padding: 20px 28px; flex-direction: row; align-items: center; gap: 24px; }
.sus-page .sus-step-head { display: contents; }
.sus-page .sus-step-head .sus-number { width: 56px; font-size: 30px; }
.sus-page .sus-step-head h3 { width: 340px; flex: 0 0 340px; font-size: 20px; line-height: 1.7; }
.sus-page .sus-roadmap-step > p { flex: 1; font-size: 15px; }
.sus-page .sus-step-arrow { height: 29px; line-height: 29px !important; }
.sus-page #strengths .sus-card-stack { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.sus-page .sus-strength-card { padding: 28px; gap: 20px; font-size: 15px; }
.sus-page .sus-strength-card h3 { font-size: 20px; }
.sus-page .sus-contact { min-height: 415px; padding-top: 84px; padding-bottom: 84px; }
.sus-page .sus-contact h2 { font-size: 24px; line-height: 1.7; white-space: pre-line; }
.sus-page .sus-contact > .sus-section__inner > p { font-size: 18px; }
.sus-page .sus-contact .sus-cta-stack { justify-content: center; gap: 24px; }
.sus-page .sus-contact .sus-cta-button { width: 390px; }
.sus-page .sus-related-article { min-height: 220px; padding-top: 36px; padding-bottom: 36px; gap: 20px; }
.sus-page .sus-related-label { font-size: 22px; }
.sus-page .sus-related-article-card { width: 100%; min-height: 92px; padding: 24px 28px; gap: 28px; }
.sus-page .sus-related-kicker { font-size: 14px; }
.sus-page .sus-related-title { font-size: 16px; }
.sus-page .sus-trademark-notes { font-size: 12px; }
}
@media (min-width: 1180px) {
.sus-page .sus-diagram { width: 100%; position: relative; font-size: 16px; line-height: 1.8; }
.sus-page .sus-diagram .sus-panel-title { font-size: 20px; line-height: 1.6; padding: 12px 8px; }
.sus-page .sus-diagram .sus-diagram-label { font-size: 14px; }
.sus-page .sus-diagram .sus-diagram-subtitle { font-size: 16px; }
.sus-page .sus-diagram .sus-panel-body { min-height: 0; }
.sus-page .sus-pc-connector { pointer-events: none; overflow: visible; }
.sus-page .sus-pc-connector > g > path { vector-effect: non-scaling-stroke; }
.sus-page .sus-finance-diagram { display: grid; grid-template-columns: minmax(0, 310fr) minmax(0, 60fr) minmax(0, 830fr); gap: 0; min-height: 700px; }
.sus-page .sus-finance-diagram > .sus-diagram-panel > .sus-panel-title { min-height: 64px; padding: 16px 8px; }
.sus-page .sus-legacy > .sus-panel-body { flex: 1; padding: 20px 19px 32px; gap: 0; }
.sus-page .sus-legacy > .sus-panel-body > .sus-diagram-subtitle { margin-bottom: 16px; line-height: 26px !important; }
.sus-page .sus-finance-diagram .sus-finance-info .sus-panel-title,
.sus-page .sus-finance-diagram .sus-nonfinancial .sus-panel-title { padding: 3px 6px; font-size: 14px; height: 30px; min-height: 30px; }
.sus-page .sus-finance-diagram .sus-finance-info .sus-panel-body,
.sus-page .sus-finance-diagram .sus-nonfinancial .sus-panel-body { padding: 14px 8px; height: auto; gap: 0; }
/* All three boxes share a 24px label row, 8px gap and 52px circle row. */
.sus-page .sus-finance-diagram .sus-finance-three,
.sus-page .sus-finance-diagram .sus-nonfinancial .sus-panel-body {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; align-items: start;
}
.sus-page .sus-finance-diagram .sus-finance-three { flex: none; }
.sus-page .sus-finance-diagram .sus-finance-item,
.sus-page .sus-finance-diagram .sus-esg-row {
  display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 24px 52px;
  gap: 8px; width: 100%; min-width: 0; min-height: 0; flex: none;
  justify-self: center; justify-items: center; align-items: start; align-content: start;
}
.sus-page .sus-finance-diagram .sus-esg-row { grid-template-rows: 24px 52px 44px; }
.sus-page .sus-finance-diagram .sus-finance-item .sus-diagram-label,
.sus-page .sus-finance-diagram .sus-esg-copy .sus-diagram-label {
  grid-row: 1; grid-column: 1; font-size: 12px; line-height: 24px !important;
  white-space: nowrap; text-align: center;
}
.sus-page .sus-finance-diagram .sus-finance-item .sus-circle-icon,
.sus-page .sus-finance-diagram .sus-esg-row .sus-circle-icon { grid-row: 2; grid-column: 1; }
.sus-page .sus-legacy > .sus-panel-body > .sus-down-arrow { height: 48px; }
.sus-page .sus-short-term { min-height: 108px; padding: 20px 12px; justify-content: center; gap: 18px; }
.sus-page .sus-short-term .sus-diagram-label { font-size: 18px; }
.sus-page .sus-risk { margin-top: 16px; flex: 1; padding: 24px 8px; gap: 12px; }
.sus-page .sus-risk .sus-diagram-label { font-size: 16px; }
.sus-page .sus-perspective { position: relative; justify-content: flex-start; padding-top: 352px; gap: 12px; }
.sus-page .sus-perspective .sus-copy { white-space: pre-line; }
.sus-page .sus-pc-perspective { width: 100%; height: 24px; }
.sus-page .sus-future > .sus-future-body { padding: 20px 19px 32px; gap: 0; }
.sus-page .sus-integrated-information { padding: 0; border: 0; border-radius: 0; display: grid; grid-template-columns: minmax(0, 312fr) 28px minmax(0, 450fr); align-items: stretch; }
.sus-page .sus-integrated-information > .sus-diagram-subtitle { grid-column: 1 / -1; font-size: 16px; line-height: 26px !important; margin-bottom: 16px; }
.sus-page .sus-integration-plus { align-self: center; font-size: 22px; }
.sus-page .sus-future .sus-esg-copy { display: contents; }
.sus-page .sus-future .sus-esg-copy p:not(.sus-diagram-label) { grid-row: 3; grid-column: 1; align-self: start; font-size: 12px; line-height: 22px !important; text-align: center; }
.sus-page .sus-future-body > .sus-connected-arrow { height: 48px; }
.sus-page .sus-balance { min-height: 80px; padding: 12px 14px; gap: 4px; justify-content: center; }
.sus-page .sus-balance .sus-diagram-label { font-size: 16px; }
.sus-page .sus-finance-fanout { padding-top: 48px; }
.sus-page .sus-pc-finance-fork { position: absolute; top: 0; left: 0; width: 100%; height: 48px; }
.sus-page .sus-finance-outcomes { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: minmax(124px, auto); gap: 12px; }
.sus-page .sus-outcome-cell { padding: 10px 6px; flex-direction: column-reverse; justify-content: space-between; gap: 8px; }
.sus-page .sus-outcome-cell .sus-diagram-label { font-size: 14px; line-height: 1.65 !important; }
.sus-page .sus-future .sus-conclusion { margin-top: 18px; gap: 14px; align-items: center; }
.sus-page .sus-conclusion .sus-diagram-label { font-size: 16px; }
.sus-page .sus-conclusion > svg { margin-top: 0; }
.sus-page .sus-platform-diagram { display: grid; grid-template-columns: minmax(0, 300fr) minmax(0, 50fr) minmax(0, 520fr) minmax(0, 50fr) minmax(0, 280fr); gap: 0; min-height: 660px; }
.sus-page #data-sources { grid-column: 1; }
.sus-page #data-management { grid-column: 3; }
.sus-page .sus-platform-diagram > .sus-output-fanout { grid-column: 5; }
.sus-page .sus-platform-diagram > .sus-diagram-panel > .sus-panel-title { height: 52px; display: flex; align-items: center; justify-content: center; }
.sus-page #data-sources > .sus-panel-body { flex: 1; padding: 20px 19px; justify-content: space-between; gap: 12px; }
.sus-page .sus-source-row { gap: 16px; min-height: 64px; }
.sus-page .sus-platform-diagram .sus-source-row .sus-copy { font-size: 16px; color: var(--sus-ink); }
.sus-page .sus-data-management > .sus-panel-body { flex: 1; padding: 20px 19px; gap: 24px; justify-content: space-between; }
.sus-page .sus-data-model { min-height: 240px; padding: 24px 18px; gap: 28px; justify-content: space-between; }
.sus-page .sus-data-groups { gap: 24px; }
.sus-page .sus-data-group { gap: 8px; }
.sus-page .sus-data-group h5 { font-size: 17px; }
.sus-page .sus-data-group p { font-size: 16px; color: var(--sus-ink); }
.sus-page .sus-data-group.sus-rules { padding: 0; border: 0; }
.sus-page .sus-data-model > h5,
.sus-page .sus-control-group > h5 { font-size: 20px; }
.sus-page .sus-control-group { min-height: 188px; padding: 16px 12px; gap: 18px; }
.sus-page .sus-control-list { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.sus-page .sus-control-item,
.sus-page .sus-control-item:nth-child(4),
.sus-page .sus-control-item:nth-child(5) { grid-column: auto; }
.sus-page .sus-control-item .sus-copy { font-size: 13px; }
.sus-page .sus-platform-diagram .sus-parallel-outputs { height: 100%; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 300px minmax(344px, 1fr); gap: 16px; }
.sus-page .sus-diagram .sus-parallel-outputs .sus-panel-title { min-height: 52px; font-size: 20px; padding: 10px 8px; }
.sus-page .sus-diagram .sus-parallel-outputs .sus-panel-body { padding: 20px 19px; flex: 1; gap: 16px; justify-content: space-between; }
.sus-page .sus-diagram .sus-parallel-outputs .sus-diagram-cell { min-height: 38px; padding: 6px 8px; font-size: 16px; line-height: 1.65 !important; }
.sus-page .sus-pc-platform-routes { position: absolute; inset: 0; width: 100%; height: 100%; }
.sus-page .sus-systems-diagram { display: grid; grid-template-columns: minmax(0, 220fr) minmax(0, 85fr) minmax(0, 170fr) minmax(0, 35fr) minmax(0, 385fr) minmax(0, 40fr) minmax(0, 265fr); grid-template-rows: 680px 40px; gap: 0; } /* 2026-09-18 列間 65→85px（ラベル「GHG（温室効果ガス）算定データ」3行を収めるため。データソース230→220、cocono180→170） */
.sus-page #sys-sources { grid-column: 1; grid-row: 1; border: 0; background: transparent; gap: 24px; }
.sus-page #sys-sources > .sus-panel-title { min-height: 64px; display: flex; align-items: center; justify-content: center; }
.sus-page #sys-sources > .sus-panel-body { border: 1px solid var(--sus-diagram-navy); background: #fff; flex: 1; padding: 14px 6px 32px; gap: 10px; justify-content: space-between; }
.sus-page #sys-sources .sus-source-row { gap: 8px; min-height: 60px; }
.sus-page #sys-sources .sus-source-row .sus-copy { font-size: 13px; }
.sus-page #sys-sources h5 { font-size: 16px; }
.sus-page .sus-integration-path { display: contents; }
.sus-page .sus-cocono-panel { grid-column: 3; grid-row: 1; display: grid; grid-template-rows: 64px 96px 24px 496px; border: 0; background: transparent; }
.sus-page .sus-cocono-panel > .sus-panel-title { grid-row: 1; font-size: 14px; padding: 6px 6px; display: flex; align-items: center; justify-content: center; }
.sus-page .sus-cocono-panel > .sus-panel-body { display: contents; }
.sus-page .sus-diagram-product-logo { grid-row: 2; width: 150px; height: 64px; align-self: end; justify-self: center; mix-blend-mode: multiply; }
.sus-page .sus-ghg-icons { grid-row: 4; grid-column: 1; align-self: start; justify-self: center; margin-top: 138px; padding: 0; gap: 3px; z-index: 1; }
.sus-page .sus-cocono-panel .sus-diagram-label { grid-row: 4; grid-column: 1; border: 1px solid var(--sus-diagram-navy); background: #fff; width: 100%; height: 496px; padding: 214px 14px 30px; font-size: 16px; line-height: 1.65 !important; text-align: left; }
.sus-page .sus-workiva-panel { grid-column: 5; grid-row: 1; display: grid; grid-template-columns: 12px 40px minmax(0, 1fr) 40px 12px; grid-template-rows: 64px 96px 24px 496px; border: 0; background: transparent; position: relative; }
.sus-page .sus-workiva-panel::before { content: ""; grid-column: 1 / -1; grid-row: 4; border: 1px solid var(--sus-diagram-navy); background: #fff; }
.sus-page .sus-workiva-panel > .sus-panel-title { grid-column: 1 / -1; grid-row: 1; background: var(--sus-diagram-navy); color: #fff; padding: 14px 8px; display: flex; align-items: center; justify-content: center; font-size: 20px; }
.sus-page .sus-workiva-panel > .sus-panel-body { display: contents; }
.sus-page .sus-workiva-panel .sus-product-name { grid-column: 1 / -1; grid-row: 2; align-self: end; padding-bottom: 8px; text-align: center; font-size: 32px; }
.sus-page .sus-workiva-panel > .sus-inlet,
.sus-page .sus-workiva-panel > .sus-outlet { grid-row: 4; align-self: stretch; width: 40px; min-height: 0; height: auto; margin: 12px 0; padding: 14px 8px; border-radius: 3px; font-size: 16px; line-height: 1.6 !important; writing-mode: vertical-rl; text-orientation: upright; display: flex; align-items: center; justify-content: center; text-align: center; z-index: 1; }
.sus-page .sus-workiva-panel > .sus-inlet { grid-column: 2; }
.sus-page .sus-workiva-panel > .sus-outlet { grid-column: 4; }
.sus-page .sus-workiva-panel .sus-diagram-cell { grid-column: 3; grid-row: 4; width: calc(100% - 24px); margin: 0 12px; background: #fff; z-index: 1; font-size: 16px; }
.sus-page .sus-workiva-panel .sus-workiva-framework { align-self: start; margin-top: 20px; min-height: 72px; }
.sus-page .sus-workiva-panel .sus-workiva-audit { align-self: end; margin-bottom: 20px; min-height: 56px; }
.sus-page .sus-workiva-panel .sus-panel-body > .sus-circle-icon { grid-column: 3; grid-row: 4; justify-self: center; align-self: start; margin-top: 178px; z-index: 1; }
.sus-page .sus-workiva-panel .sus-workiva-esg { grid-column: 3; grid-row: 4; align-self: start; margin-top: 264px; width: 100%; text-align: center; font-size: 20px; z-index: 1; }
.sus-page .sus-route-label { position: absolute; top: 276px; padding: 2px; font-size: 10px; z-index:1; background: var(--sus-gray); color: var(--sus-diagram-red); font-weight: 700; line-height: 1.6 !important; text-align: center; }
.sus-page .sus-ghg-label { left: calc(18.3333% + 2px); width: calc(7.0833% - 4px); padding: 2px 0; background: transparent; white-space: normal; } /* 2026-09-18 松崎さん指摘: 灰色背景がデータソース箱の右罫線に被り線が欠けるため透過＋左右2px内側 */
.sus-page .sus-direct-label { top: 685px; left: 24%; right: auto; width: 180px; font-size: 11px; white-space: normal; }
.sus-page .sus-business-outcomes { grid-column: 7; grid-row: 1; width: 100%; border: 0; background: transparent; gap: 24px; }
.sus-page .sus-business-outcomes > .sus-panel-title { min-height: 64px; display: flex; align-items: center; justify-content: center; }
.sus-page .sus-business-outcomes > .sus-parallel-outputs { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 276px 300px; gap: 16px; }
.sus-page .sus-systems-diagram .sus-parallel-outputs .sus-panel-title { min-height: 44px; font-size: 18px; padding: 6px; }
.sus-page .sus-systems-diagram .sus-parallel-outputs .sus-panel-body { padding: 16px 14px 20px; gap: 12px; }
.sus-page .sus-pc-systems-routes { position: absolute; inset: 0; width: 100%; height: 720px; }
.sus-page .sus-diagram .sus-circle-icon { width: var(--sus-pc-circle); height: var(--sus-pc-circle); min-width: var(--sus-pc-circle); min-height: var(--sus-pc-circle); flex: 0 0 var(--sus-pc-circle); aspect-ratio: 1 / 1; }
.sus-page .sus-diagram .sus-circle-icon img,
.sus-page .sus-diagram .sus-circle-icon svg { width: 64%; height: 64%; }
}
@media (min-width: 1180px) and (max-width: 1359px) {
.sus-page .sus-anchor-link { padding: 0 6px; font-size: 12px; }
.sus-page .sus-hero h1 { font-size: 32px; }
.sus-page .sus-hero .sus-cta-button { font-size: 14px; padding: 14px 8px; }
.sus-page .sus-product-intro { grid-template-columns: 260px minmax(0, 1fr); gap: 36px; }
.sus-page .sus-product-logo { width: 260px; }
.sus-page .sus-step-head h3 { width: 290px; flex-basis: 290px; }
.sus-page .sus-diagram .sus-panel-title,
.sus-page .sus-diagram .sus-parallel-outputs .sus-panel-title { font-size: 17px; }
.sus-page .sus-finance-diagram .sus-finance-info .sus-panel-title,
.sus-page .sus-finance-diagram .sus-nonfinancial .sus-panel-title { font-size: 13px; }
.sus-page .sus-finance-diagram .sus-finance-item .sus-diagram-label,
.sus-page .sus-finance-diagram .sus-esg-copy .sus-diagram-label { font-size: 10px; }
.sus-page .sus-future .sus-esg-copy p:not(.sus-diagram-label) { font-size: 10px; }
.sus-page .sus-outcome-cell .sus-diagram-label { font-size: 12px; }
.sus-page .sus-balance .sus-diagram-label,
.sus-page .sus-conclusion .sus-diagram-label { font-size: 14px; }
.sus-page .sus-platform-diagram .sus-source-row .sus-copy,
.sus-page .sus-data-group h5,
.sus-page .sus-data-group p { font-size: 14px; }
.sus-page .sus-control-item .sus-copy { font-size: 11px; }
.sus-page #sys-sources .sus-source-row { gap: 6px; }
.sus-page #sys-sources .sus-source-row .sus-copy { font-size: 11px; }
.sus-page .sus-diagram-product-logo { width: 120px; }
.sus-page .sus-cocono-panel .sus-diagram-label { font-size: 14px; padding-right: 6px; padding-left: 6px; }
.sus-page .sus-ghg-icons { flex-wrap: wrap; width: 110px; margin-top: 90px; }
.sus-page .sus-workiva-panel .sus-workiva-esg { font-size: 16px; }
.sus-page .sus-workiva-panel .sus-diagram-cell,
.sus-page .sus-diagram .sus-parallel-outputs .sus-diagram-cell { font-size: 14px; }
.sus-page .sus-workiva-panel > .sus-panel-title,
.sus-page .sus-business-outcomes > .sus-panel-title { font-size: 16px; }
.sus-page .sus-ghg-label { font-size: 9px; }
}
/* Delivery adaptations. This source is combined into the single css/style.css. */
.sus-page .sus-section { width:100%; scroll-margin-top:calc(var(--sus-header-h) + 16px); }
.sus-page .sus-section > .sus-section__inner {
  width:100%; max-width:1248px; margin:0 auto; padding:0 20px;
  display:flex; flex-direction:column; gap:inherit; min-width:0;
}
.sus-page .sus-section__inner > * { min-width:0; max-width:100%; }
.sus-page .sus-hero { padding-top:calc(var(--sus-header-h) + 30px); }
.sus-page .sus-hero-image { width:100%; max-width:640px; align-self:center; }
.sus-page .sus-cta-stack, .sus-page .sus-cta-button, .sus-page .sus-product-logo,
.sus-page .sus-diagram, .sus-page .sus-business-outcomes, .sus-page .sus-related-article-card { width:100%; }
.sus-page .sus-cta-button { gap:10px; transition:opacity .2s; }
.sus-page .sus-cta-button:hover { opacity:.8; }
.sus-page .sus-btn__label { min-width:0; }
.sus-page .sus-btn__icon { flex:0 0 auto; line-height:1; }
.sus-page .sus-anchor-accordion { width:100%; }
.sus-page .sus-anchor-link:hover { text-decoration:underline; text-underline-offset:4px; }
.sus-page .sus-product-logo img { max-width:100%; }
.sus-page .sus-copy.sus-paragraphs { white-space:normal; }
.sus-page .sus-paragraph { display:block; }
.sus-page .sus-paragraph + .sus-paragraph { margin-top:12px; }
.sus-page .sus-fork-four, .sus-page .sus-fork-two { width:100%; }
.sus-page .sus-fork-arrow path { vector-effect:non-scaling-stroke; }
.sus-page .sus-section__inner > .sus-cta-button { align-self:center; }

@media (max-width:980px) {
  .sus-page { --sus-header-h:65px; }
}
@media (min-width:768px) {
  .sus-page { font-size:16px; line-height:1.85; }
  .sus-page .sus-section > .sus-section__inner { padding:0 24px; }
  .sus-page .sus-hero {
    padding-top:calc(var(--sus-header-h) + 70px);
    min-height:calc(612px + var(--sus-header-h));
  }
  .sus-page .sus-hero > .sus-section__inner {
    display:grid; grid-template-columns:minmax(0,590fr) minmax(0,582fr);
    column-gap:28px; row-gap:26px; align-content:center;
  }
  .sus-page .sus-hero-image { max-width:640px; }
  .sus-page .sus-cta-button { width:275px; }
  .sus-page .sus-product-logo { width:300px; }
  .sus-page .sus-product-section > .sus-section__inner > .sus-cta-button { width:330px; }
  .sus-page .sus-contact .sus-cta-button { width:min(390px, calc((100% - 24px) / 2)); }
  .sus-page .sus-anchor-accordion > nav { align-items:center; justify-content:center; flex-wrap:wrap; gap:6px 0; }
  .sus-page .sus-anchor-link {
    flex:0 0 auto; min-width:0; justify-content:center; text-align:center;
    white-space:nowrap; padding:0 clamp(6px,1.52vw,22px);
  }
  /* Native details uses open, without custom aria-expanded/aria-hidden. */
  .sus-page .sus-anchor-accordion > summary { display:none; }
}

/* Compact figures: keep both products side by side and all branch directions. */
@media (max-width:1179.98px) {
  .sus-page .sus-diagram .sus-pc-only { display:none; }
  .sus-page .sus-diagram .sus-sp-only { display:block; }
  .sus-page .sus-integration-path {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-rows:88px auto; column-gap:15px; row-gap:0;
    width:100%; align-items:stretch; position:relative;
  }
  .sus-page .sus-source-fork { grid-column:1/-1; grid-row:1; width:100%; height:88px; }
  .sus-page .sus-ghg-label { left:0; width:calc((100% - 15px) / 2); }
  .sus-page .sus-direct-label { left:calc((100% + 15px) / 2); width:calc((100% - 15px) / 2); }
  .sus-page .sus-cocono-panel { grid-column:1; grid-row:2; }
  .sus-page .sus-workiva-panel { grid-column:2; grid-row:2; }
  .sus-page .sus-cocono-to-workiva {
    position:absolute; grid-column:auto; grid-row:auto;
    left:calc(50% - 7.5px); top:calc(50% + 38px);
    width:15px; height:12px; z-index:1;
  }
  .sus-page .sus-direct-entry { width:100%; height:18px; overflow:visible; }
  .sus-page .sus-business-incoming { margin-left:calc(100% - 27px); }
  .sus-page .sus-ghg-icons { flex-wrap:wrap; max-width:100%; }
  .sus-page .sus-diagram-product-logo { max-width:100%; }
  .sus-page .sus-workiva-panel .sus-product-name { max-width:100%; }
}

/* Tablet and small desktop: fluid page, compact figures, stacked FV. */
@media (min-width:768px) and (max-width:1179.98px) {
  .sus-page .sus-section { padding-top:64px; padding-bottom:64px; gap:32px; }
  .sus-page #background, .sus-page #process, .sus-page #issues,
  .sus-page #platform, .sus-page #solutions, .sus-page #cocono,
  .sus-page #workiva, .sus-page #roadmap, .sus-page #strengths { min-height:0; }
  .sus-page .sus-hero { padding-top:calc(var(--sus-header-h) + 48px); padding-bottom:48px; }
  .sus-page .sus-hero > .sus-section__inner { display:flex; gap:24px; }
  .sus-page .sus-hero h1 { font-size:32px; }
  .sus-page .sus-hero-image { width:min(100%,640px); }
  .sus-page .sus-hero .sus-cta-button { width:calc((100% - 16px) / 2); }
  .sus-page .sus-page-nav { padding-top:18px; padding-bottom:18px; }
  .sus-page .sus-anchor-link { font-size:12px; padding:0 10px; }
  .sus-page .sus-diagram { max-width:720px; margin:0 auto; }
  .sus-page .sus-flow-stack { display:flex; flex-direction:column; }
  .sus-page .sus-process-card .sus-card-top { flex-direction:row; align-items:center; }
  .sus-page .sus-flow-direction { font-size:26px; }
  .sus-page .sus-flow-direction::after { content:none; }
  .sus-page .sus-product-intro { grid-template-columns:minmax(0,230px) minmax(0,1fr); gap:28px; }
  .sus-page .sus-product-logo { width:100%; padding:20px; }
  .sus-page .sus-product-section .sus-card-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sus-page .sus-feature-card { min-height:0; }
  .sus-page .sus-feature-card h4 { min-height:0; }
  .sus-page .sus-roadmap-step { padding:20px; gap:20px; }
  .sus-page .sus-step-head h3 { width:30%; flex-basis:30%; font-size:18px; }
  .sus-page #strengths .sus-card-stack { grid-template-columns:minmax(0,1fr); }
  .sus-page .sus-strength-card { padding:28px; }
  .sus-page .sus-contact { padding-top:64px; padding-bottom:64px; }
  .sus-page .sus-related-article { min-height:0; padding-top:36px; padding-bottom:36px; }
}
@media (min-width:1180px) and (max-width:1359px) {
  .sus-page .sus-product-logo { width:260px; }
  /* 図3: 180px列の見出し「GHG（温室効果ガス）管理」が64px枠から溢れないよう縮小 */
  .sus-page .sus-cocono-panel > .sus-panel-title { font-size:13px; line-height:1.5; padding:4px 4px; }
}
@media (max-width:359.98px) {
  .sus-page .sus-workiva-panel .sus-product-name { font-size:16px; }
  .sus-page .sus-workiva-panel > .sus-panel-body { padding-right:2px; padding-left:2px; }
  .sus-page .sus-workiva-panel .sus-diagram-cell { padding-right:2px; padding-left:2px; }
  .sus-page .sus-finance-item .sus-diagram-label { white-space:normal; }
  .sus-page .sus-cocono-panel > .sus-panel-title { padding-right:3px; padding-left:3px; }
}
/* Figma-aligned compact figures (2026-09-18).
   The tablet uses these same vertical figures; desktop rules stay unchanged. */
@media (max-width:1179.98px) {
  /* Figure 1: independent information boxes, label / circle / note. */
  .sus-page .sus-integrated-information { border:0; border-radius:0; padding:0; gap:12px; }
  .sus-page .sus-integrated-information > .sus-diagram-subtitle { margin-bottom:0; }
  /* Keep the manifest record and existing PC appearance; omit the SP symbol. */
  .sus-page .sus-integrated-information > .sus-integration-plus { display:none; }
  .sus-page .sus-future .sus-finance-info .sus-panel-body,
  .sus-page .sus-future .sus-nonfinancial .sus-panel-body { padding:16px 8px; }
  .sus-page .sus-future .sus-finance-three,
  .sus-page .sus-future .sus-nonfinancial .sus-panel-body {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; align-items:start;
  }
  .sus-page .sus-future .sus-finance-item {
    flex-direction:column-reverse; justify-content:center; min-height:0; gap:12px;
  }
  .sus-page .sus-future .sus-finance-item .sus-diagram-label {
    font-size:12px; line-height:1.8!important; text-align:center; white-space:nowrap;
  }
  .sus-page .sus-future .sus-esg-row {
    display:grid; grid-template-columns:minmax(0,1fr);
    grid-template-rows:minmax(22px,auto) 40px minmax(40px,auto);
    gap:8px; min-width:0; min-height:0; justify-items:center; align-items:start;
  }
  .sus-page .sus-future .sus-esg-copy { display:contents; }
  .sus-page .sus-future .sus-esg-copy .sus-diagram-label {
    grid-column:1; grid-row:1; font-size:12px; line-height:1.8!important; text-align:center;
  }
  .sus-page .sus-future .sus-esg-row > .sus-circle-icon { grid-column:1; grid-row:2; }
  .sus-page .sus-future .sus-esg-copy p:not(.sus-diagram-label) {
    grid-column:1; grid-row:3; font-size:11px; line-height:1.8!important; text-align:center;
  }
  .sus-page .sus-finance-fanout { padding-top:0; }
  .sus-page .sus-outcomes-incoming { margin:0 auto; }
  .sus-page .sus-finance-outcomes {
    grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(132px,auto)); gap:12px;
  }
  .sus-page .sus-outcome-cell { flex-direction:column-reverse; }

  /* Figure 2: five controls on one row, one arrow into a column of outputs. */
  .sus-page .sus-control-group { padding:16px 4px; }
  .sus-page .sus-control-list { grid-template-columns:repeat(5,minmax(0,1fr)); gap:2px; }
  .sus-page .sus-control-item,
  .sus-page .sus-control-item:nth-child(4),
  .sus-page .sus-control-item:nth-child(5) { grid-column:auto; }
  .sus-page .sus-control-item .sus-copy { font-size:11px; }
  .sus-page .sus-platform-diagram .sus-parallel-outputs,
  .sus-page .sus-systems-diagram .sus-parallel-outputs { grid-template-columns:minmax(0,1fr); gap:12px; }
  .sus-page .sus-platform-diagram .sus-parallel-outputs .sus-panel-title,
  .sus-page .sus-systems-diagram .sus-parallel-outputs .sus-panel-title { font-size:17px; }
  .sus-page .sus-platform-diagram .sus-parallel-outputs .sus-diagram-cell,
  .sus-page .sus-systems-diagram .sus-parallel-outputs .sus-diagram-cell {
    min-height:38px; font-size:14px;
  }

  /* Figure 3 (review round 3): share the approved phone layout with tablets.
     Both columns stretch in the same parent row: 64px heading, 72px logo row,
     then equal remaining body heights, including the 1px borders. */
  .sus-page .sus-systems-diagram { --sus-systems-heading-h:64px; --sus-systems-logo-h:72px; }
  /* Keep the source panel's top border from adding 1px to its navy heading. */
  .sus-page #sys-sources { border:0; }
  .sus-page #sys-sources > .sus-panel-body { border:1px solid var(--sus-diagram-navy); border-top:0; }
  .sus-page .sus-cocono-panel,
  .sus-page .sus-workiva-panel {
    position:relative; border:0; background:#fff; display:grid; align-content:stretch;
    grid-template-rows:var(--sus-systems-heading-h) var(--sus-systems-logo-h) minmax(0,1fr);
  }
  .sus-page .sus-cocono-panel { grid-template-columns:minmax(0,1fr); }
  .sus-page .sus-cocono-panel > .sus-panel-body { grid-column:1; grid-row:3; border:1px solid var(--sus-diagram-navy); }
  .sus-page .sus-systems-diagram .sus-diagram-panel { border-radius:4px 4px 0 0; }
  .sus-page .sus-systems-diagram .sus-panel-title { border-radius:4px 4px 0 0; }
  .sus-page #sys-sources > .sus-panel-title,
  .sus-page .sus-cocono-panel > .sus-panel-title,
  .sus-page .sus-workiva-panel > .sus-panel-title,
  .sus-page .sus-business-outcomes > .sus-panel-title {
    box-sizing:border-box; height:var(--sus-systems-heading-h);
    min-height:var(--sus-systems-heading-h); max-height:var(--sus-systems-heading-h);
    flex-shrink:0; padding:11px 6px;
    display:flex; align-items:center; justify-content:center;
    font-size:13px; line-height:1.6; color:#fff; background:var(--sus-diagram-navy);
  }
  .sus-page .sus-cocono-panel > .sus-panel-title,
  .sus-page .sus-workiva-panel > .sus-panel-title {
    grid-column:1/-1; grid-row:1; display:block;
  }
  /* Keep copy/DOM order intact for PC. Position the logo and product name in
     the reserved, unframed white row above the bordered body. */
  .sus-page .sus-cocono-panel .sus-diagram-product-logo {
    position:absolute; top:var(--sus-systems-heading-h); left:0;
    width:100%; height:var(--sus-systems-logo-h); padding:16px 4px;
    object-fit:contain;
  }
  .sus-page .sus-workiva-panel .sus-product-name {
    position:absolute; top:var(--sus-systems-heading-h); left:0;
    width:100%; height:var(--sus-systems-logo-h); padding:0;
    display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:700;
  }
  .sus-page .sus-workiva-panel::before {
    content:""; grid-column:1/-1; grid-row:3;
    border:1px solid var(--sus-diagram-navy); background:#fff;
  }
  .sus-page .sus-workiva-panel > .sus-inlet,
  .sus-page .sus-workiva-panel > .sus-outlet { grid-row:3; margin:0; align-self:stretch; }
  /* Right branch mirrors the left: 75% + 3.75px is the second column centre. */
  .sus-page .sus-source-direct-tablet,
  .sus-page .sus-workiva-panel > .sus-direct-entry { display:none; }
  .sus-page .sus-systems-diagram .sus-ghg-icons {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px;
    width:128px; max-width:100%; justify-items:center;
  }
  .sus-page .sus-cocono-to-workiva { width:17px; }
  .sus-page .sus-business-outcomes { border:0; background:transparent; gap:12px; }
}
@media (max-width:359.98px) {
  .sus-page .sus-finance-item .sus-diagram-label,
  .sus-page .sus-future .sus-finance-item .sus-diagram-label,
  .sus-page .sus-future .sus-esg-copy .sus-diagram-label,
  .sus-page .sus-future .sus-esg-copy p:not(.sus-diagram-label) { font-size:10px; }
  .sus-page .sus-future .sus-finance-info .sus-panel-body,
  .sus-page .sus-future .sus-nonfinancial .sus-panel-body { padding-right:6px; padding-left:6px; }
  .sus-page .sus-future .sus-nonfinancial .sus-panel-body { gap:3px; }
  .sus-page .sus-control-group { padding-right:0; padding-left:0; }
  .sus-page .sus-control-list { gap:0; }
  .sus-page .sus-control-item .sus-copy { font-size:10px; }
  .sus-page #sys-sources > .sus-panel-title,
  .sus-page .sus-cocono-panel > .sus-panel-title,
  .sus-page .sus-workiva-panel > .sus-panel-title,
  .sus-page .sus-business-outcomes > .sus-panel-title { font-size:11px; padding-right:3px; padding-left:3px; }
  .sus-page .sus-cocono-panel > .sus-panel-body { padding-right:3px; padding-left:3px; }
  .sus-page .sus-systems-diagram .sus-ghg-icons { width:124px; gap:2px; }
}
/* The straight direct branch is shared by all compact figures below 1180px. */
@media (min-width:1180px) {
  .sus-page .sus-source-direct-mobile { display:none; }
}
/* Review round 2: keep the figure 1 corrections phone-only. */
@media (max-width:767.98px) {
  /* The legacy information box has 16px inset; future body 9px + group 7px. */
  .sus-page .sus-finance-diagram .sus-integrated-information { padding-right:7px; padding-left:7px; }
  .sus-page .sus-finance-diagram .sus-balance .sus-diagram-label { font-size:13px; }
  .sus-page .sus-finance-diagram .sus-balance .sus-keep-word { white-space:nowrap; }

}
@media (prefers-reduced-motion:reduce) {
  .sus-page .sus-cta-button { transition:none; }
}
