.kagoo-dx-page{



    --blue:#263b76;--blue-deep:#172956;--blue-hover:#335392;--blue-mid:#3164a6;--yellow:#f6dc32;--ink:#182b56;--text:#273553;--light:#f4f7fd;--soft:#e8eef9;--line:#dce4f1;--white:#fff;--radius:18px;--shadow:0 22px 46px rgba(6,25,69,.15)}



.kagoo-dx-page,.kagoo-dx-page *,.kagoo-dx-page *:before,.kagoo-dx-page *:after{



    box-sizing:border-box}







.kagoo-dx-page{



    background:var(--blue);color:var(--text);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,system-ui,sans-serif;line-height:1.85;font-size:15px;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}



.kagoo-dx-page a{



    color:inherit}



.kagoo-dx-page button,.kagoo-dx-page summary{font:inherit}



.kagoo-dx-page button{



    cursor:pointer}



.kagoo-dx-page :focus-visible{



    outline:3px solid var(--yellow);outline-offset:4px}



.kagoo-dx-page ::selection{



    background:var(--yellow);color:var(--blue-deep)}



.dx-container{



    width:min(1180px,calc(100% - 92px));margin:auto}



.dx-skip{



    position:absolute;z-index:99;top:-80px;left:20px;padding:10px 16px;background:#fff;color:#000}



.dx-skip:focus{



    top:10px}



.dx-reading-progress{



    position:fixed;top:0;left:0;height:4px;background:var(--yellow);z-index:99;width:0%;box-shadow:0 0 14px rgba(246,220,50,.45);pointer-events:none}



.dx-site-header{



    position:relative;z-index:15;background:#fff;color:var(--ink);border-bottom:1px solid #ebeff8}



.dx-header-inner{



    height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}



.dx-brand{display:flex;align-items:center;gap:9px;line-height:1.06;white-space:nowrap}



.dx-brand-symbol{



    color:#d84343;font-size:35px;font-weight:900;transform:rotate(45deg);display:block;margin-right:4px}



.dx-brand-name{



    font-size:27px;font-weight:900;letter-spacing:.04em}



.dx-brand-name span{



    display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.21em;margin-top:5px}



.dx-brand-divider{



    width:1px;background:#d5dbe4;height:39px;margin:0 8px}



.dx-brand-sub{



    font:700 11px/1.55 Arial,sans-serif;letter-spacing:.09em;color:#57647f}



.dx-brand-sub span{



    color:#db4141}



.dx-header-link{



    display:inline-flex;align-items:center;gap:13px;text-decoration:none;font-size:13px;font-weight:800;border-bottom:2px solid var(--yellow);padding:9px 0 6px;transition:color .2s}



.dx-header-link:hover{



    color:#307cbe}



.dx-header-link span{



    font-size:20px}



.dx-hero{



    position:relative;isolation:isolate;min-height:615px;overflow:hidden;background:radial-gradient(circle at 78% 30%,#4266a5 0,#2a437f 33%,transparent 56%),linear-gradient(117deg,#142652 0%,#263b76 53%,#28417e 100%);color:#fff}



.dx-hero:after{



    content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(90deg,transparent,black);opacity:.55}



.dx-hero-container{



    display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:615px;position:relative;padding:48px 0 72px}



.dx-hero-copy{



    position:relative;z-index:2}



.dx-crumb{



    font-size:11px;letter-spacing:.03em;margin-bottom:76px;color:#d5dff5}



.dx-crumb span{



    padding:0 12px;color:var(--yellow)}



.dx-mini-label{



    font:700 12px/1.2 Arial,sans-serif;letter-spacing:.20em;display:flex;align-items:center;gap:14px;color:#d5e6ff;margin-bottom:14px}



.dx-mini-dash{



    height:4px;width:36px;background:var(--yellow)}



.dx-hero h1{



    font-size:clamp(35px,4.6vw,61px);line-height:1.35;margin:0;letter-spacing:.015em;font-weight:900}



.dx-hero h1 span{



    display:block;font-weight:500;font-size:.58em;margin-top:2px;letter-spacing:.08em}



.dx-hero-lead{



    font-size:clamp(20px,2.2vw,29px);line-height:1.62;font-weight:800;margin:31px 0 15px;letter-spacing:.03em}



.dx-hero-lead em{



    color:var(--yellow);font-style:normal}



.dx-hero-caption{



    font-size:14px;line-height:2.1;color:#e3eafb;margin:0}



.dx-hero-cta{



    display:inline-flex;align-items:center;justify-content:space-between;gap:34px;text-decoration:none;background:var(--yellow);color:var(--blue-deep);font-weight:850;font-size:13px;border-radius:100px;margin-top:28px;padding:13px 17px 13px 23px;transition:transform .22s,background .22s,box-shadow .22s}



.dx-hero-cta:hover{



    background:#fff1a5;transform:translateY(-3px);box-shadow:0 12px 30px #07152d38}



.dx-hero-cta span{



    font-size:22px;line-height:1}



.dx-hero-visual{



    height:505px;position:relative;isolation:isolate}



.dx-orbit{



    position:absolute;border:1px solid rgba(215,232,255,.26);border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%)}



.dx-orbit-a{



    width:370px;height:370px}.dx-orbit-b{width:500px;height:500px;border-style:dashed;border-color:rgba(215,232,255,.11)}



.dx-center-ring{



    height:236px;width:236px;position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 30% 20%,#4273b5,#253b78 66%);border:2px solid rgba(246,220,50,.87);box-shadow:inset 0 0 0 11px rgba(255,255,255,.05),0 35px 70px #04133960;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.25}



.dx-center-ring span{



    font:700 10px Arial,sans-serif;letter-spacing:.25em;color:#d9e6fb}



.dx-center-ring strong{



    font:900 86px/1 Arial,sans-serif;letter-spacing:-.04em;color:white;margin:8px 0}



.dx-center-ring small{



    font:700 12px Arial,sans-serif;letter-spacing:.16em;color:var(--yellow)}



.dx-orbit-node{



    position:absolute;display:flex;flex-direction:column;min-width:155px;background:#fff;border:1px solid rgba(255,255,255,.7);box-shadow:0 20px 40px #07143052;border-radius:13px;padding:16px 18px;color:var(--ink);line-height:1.4;transition:transform .2s,box-shadow .2s}



.dx-orbit-node:hover{



    transform:translateY(-6px);box-shadow:0 28px 44px #07143080}



.dx-orbit-node span{



    font:800 11px Arial,sans-serif;letter-spacing:.16em;color:#638bb7}



.dx-orbit-node strong{



    font-size:17px;margin:4px 0;color:#152b5d}



.dx-orbit-node small{



    color:#63738f;font-size:11px}



.dx-node-dock{



    top:23px;left:1%}.dx-node-dev{right:-2%;top:102px}.dx-node-hotel{bottom:10px;left:4%}



.dx-overview{



    background:#f5f7fb;padding:84px 0 96px;color:var(--ink)}



.dx-overview-heading{display:flex;align-items:end;flex-wrap:wrap;gap:0 35px;margin-bottom:26px}



.dx-overview-heading p{



    margin:0 0 9px;flex-basis:100%;font:800 11px/1.5 Arial,sans-serif;letter-spacing:.16em;color:var(--blue-mid)}



.dx-overview-heading h2{



    margin:0;font-size:clamp(26px,3.0vw,37px);line-height:1.4}



.dx-overview-heading h2 em{



    font-style:normal;color:#2d66ad}



.dx-overview-heading>span{



    font-size:13px;color:#7887a0;padding-bottom:4px}



.dx-overview-grid{



    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}



.dx-overview-card{



    display:flex;flex-direction:column;min-height:284px;position:relative;padding:27px 29px 22px;overflow:hidden;background:#fff;text-decoration:none;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 22px rgba(27,51,99,.04);transition:transform .23s,border-color .23s,box-shadow .23s}



.dx-overview-card:before{



    content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:var(--yellow);transform:scaleX(.18);transform-origin:left;transition:transform .3s}



.dx-overview-card:hover,.dx-overview-card:focus-visible{transform:translateY(-8px);border-color:#a9c0e2;box-shadow:0 25px 44px rgba(27,51,99,.12)}



.dx-overview-card:hover:before,.dx-overview-card:focus-visible:before{



    transform:scaleX(1)}



.dx-overview-index{



    font:800 10px Arial,sans-serif;letter-spacing:.14em;color:#6481ab}



.dx-overview-pictogram{



    position:absolute;right:22px;top:35px;font-size:39px;color:#ccd9eb;line-height:1}



.dx-overview-card h3{



    font-size:25px;margin:35px 0 8px;color:var(--ink)}



.dx-overview-card p{



    font-size:14px;line-height:1.92;margin:0 0 20px;color:#5c6d85}



.dx-overview-card p strong{



    color:#25467f;font-weight:800}



.dx-overview-arrow{



    border-top:1px solid #e8edf5;padding-top:13px;display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#3164a6;margin-top:auto}



.dx-overview-arrow b{



    font-size:19px;line-height:1}



.dx-anchor-spacer{



    height:0}



.dx-sticky-nav{



    position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #dce5f0;box-shadow:0 8px 24px rgba(8,20,62,.1);color:var(--ink)}



.dx-sticky-wrap{



    display:flex;align-items:center;gap:26px;font:800 10px Arial,sans-serif;letter-spacing:.10em;color:#9ca7bc}



.dx-nav-items{



    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));flex:1}



.dx-nav-items a{



    min-height:70px;display:flex;flex-direction:column;justify-content:center;gap:1px;align-items:center;text-align:center;position:relative;text-decoration:none;color:#4a5976;border-left:1px solid #e6ebf2;transition:background .2s,color .2s}



.dx-nav-items a:last-child{



    border-right:1px solid #e6ebf2}



.dx-nav-items a:hover,.dx-nav-items a.is-active{background:#f1f5fc;color:#17366c}



.dx-nav-items a:after{



    content:"";position:absolute;bottom:0;left:16%;right:16%;height:4px;background:var(--yellow);transform:scaleX(0);transition:transform .2s}



.dx-nav-items a:hover:after,.dx-nav-items a.is-active:after{transform:scaleX(1)}



.dx-nav-no{



    position:absolute;top:6px;left:12px;color:#b1c1d9;font-size:9px}



.dx-nav-label{



    font-size:12px;font-family:"Noto Sans JP","Yu Gothic",sans-serif;font-weight:800;letter-spacing:0}



.dx-nav-en{



    font-size:9px;letter-spacing:.1em;color:#9aa6bf}



.dx-section{



    background:var(--blue);padding:92px 0 115px;scroll-margin-top:60px;color:#fff;position:relative}



.dx-section:nth-of-type(2n){



    background:#22366e}



.dx-inner{



    position:relative}



.dx-section-heading{



    display:flex;align-items:center;gap:16px;margin:0 0 36px;position:relative}



.dx-section-number{



    height:53px;min-width:55px;border-radius:9px;background:#fff;color:#2c457f;display:inline-flex;align-items:center;justify-content:center;font:900 24px/1 Arial,sans-serif;box-shadow:inset 0 -6px 0 var(--yellow)}



.dx-section-en{



    color:#f8e86f;letter-spacing:.14em;font:800 11px Arial,sans-serif;margin:0 0 5px}



.dx-section-heading h2{



    font-size:clamp(25px,2.6vw,33px);line-height:1.42;letter-spacing:.025em;color:#fff;margin:0}



.dx-prose{



    font-size:14px;line-height:2.12}



.dx-prose p{



    margin:0 0 1.3em}



.dx-prose p:last-child{



    margin-bottom:0}



.dx-message-layout{



    display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.5fr);gap:46px;align-items:start}



.dx-message-aside{



    position:sticky;top:113px;border-top:4px solid var(--yellow);padding:34px 31px 30px;background:linear-gradient(135deg,#4262a1,#283e77 67%);min-height:310px;border-radius:0 0 16px 16px;box-shadow:0 25px 40px rgba(6,20,61,.19);color:#fff}



.message-quote-mark{



    font:800 80px/1 Georgia,serif;color:var(--yellow);display:block;height:60px}



.dx-message-aside>p{



    font-size:clamp(22px,2vw,28px);font-weight:850;line-height:1.7;margin:5px 0 28px}



.dx-message-aside em{



    font-style:normal;color:var(--yellow)}



.message-side-bottom{



    border-top:1px solid #ffffff40;padding-top:16px;display:flex;flex-direction:column;gap:4px}



.message-side-bottom span{



    font-size:12px;color:#e0e9fa}



.message-side-bottom strong{



    font:800 10px Arial,sans-serif;letter-spacing:.14em}



.dx-signature{



    text-align:right;font-size:16px!important;font-weight:800;margin-top:22px!important}



.dx-subheading{



    font-size:21px;margin:54px 0 23px;line-height:1.5;color:#fff;border-left:5px solid var(--yellow);padding-left:15px}



.dx-subheading:first-of-type{



    margin-top:0}



.dx-minorheading{



    font-size:18px;color:#fff;margin:44px 0 18px;line-height:1.6}



.dx-two-col{



    display:grid;grid-template-columns:1fr 1fr;gap:17px}



.dx-info-card,.dx-mission,.dx-future,.dx-people-card{



    color:var(--text);background:#fff;border:1px solid #dce6f4;border-radius:13px;padding:27px;transition:transform .23s,box-shadow .23s,border-color .23s,background .23s}



.dx-info-card:hover,.dx-mission:hover,.dx-future:hover,.dx-people-card:hover,.dx-info-card:focus-visible,.dx-mission:focus-visible,.dx-future:focus-visible,.dx-people-card:focus-visible{transform:translateY(-5px);border-color:#ffdf52;box-shadow:var(--shadow);background:#fcfdff}



.dx-info-card-heading{



    font-size:16px;font-weight:900;margin:0 0 10px;color:var(--ink)}



.dx-info-card-heading:before{



    content:"";display:inline-block;vertical-align:middle;width:10px;height:10px;background:#6d93bd;transform:rotate(45deg);margin:0 12px 2px 1px}



.dx-info-card-heading.dx-opportunity:before{



    background:var(--yellow)}



.dx-info-card p{



    font-size:14px;margin:0;line-height:2.0}



.dx-philosophy{



    position:relative;border-radius:14px;padding:40px 28px;color:#fff;text-align:center;background:linear-gradient(115deg,#324f95,#385aa2);border:1px solid #ffffff55;transition:transform .2s;overflow:hidden}



.dx-philosophy:before,.dx-philosophy:after{



    content:"";position:absolute;width:160px;height:160px;border:1px solid #ffffff33;border-radius:50%;top:-60px;left:-70px}



.dx-philosophy:after{



    top:auto;left:auto;right:-65px;bottom:-80px;width:230px;height:230px}



.dx-philosophy .dx-eyebrow{



    color:#e9f0ff;letter-spacing:.13em;font-size:12px;margin:0}



.dx-philosophy-title{



    font-size:clamp(29px,3.2vw,45px);font-weight:800;letter-spacing:.22em;color:var(--yellow);margin:3px 0 7px}



.dx-philosophy p:last-child{



    margin:0;font-size:14px}



.dx-mission-grid,.dx-vision-grid{



    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}



.dx-mission,.dx-future{



    min-height:190px;padding:25px}



.dx-mission{



    border-top:5px solid #9fb6dc}.dx-future{border-top:5px solid var(--yellow)}



.dx-mission h5,.dx-future h5{



    font-size:16px;color:var(--ink);margin:0 0 12px;line-height:1.65}



.dx-mission p,.dx-future p{



    font-size:13px;margin:0;line-height:1.97}



.dx-compact{



    padding:3px 0}



.dx-compact .dx-minorheading{



    margin:30px 0 12px}



.dx-table-wrap{



    overflow:auto;max-width:100%;border-radius:13px;background:#fff;box-shadow:0 24px 44px rgba(5,13,54,.13)}



.dx-table{



    width:100%;min-width:810px;border-collapse:separate;border-spacing:0;background:#fff;color:var(--text);font-size:13px;line-height:1.85}



.dx-table th,.dx-table td{



    padding:16px 20px;border-bottom:1px solid #e6ebf2;text-align:left;vertical-align:top}



.dx-table thead th{



    color:#fff;background:#172d5c;font-size:13px;letter-spacing:.03em}



.dx-table tbody th{



    background:#eef3fa;color:var(--ink);width:19%;font-weight:850}



.dx-table tbody td:nth-child(2){



    width:24%}



.dx-table tbody tr:hover td,.dx-table tbody tr:hover th{



    background:#fff6c8;transition:background .2s}



.dx-table tbody tr:last-child th,.dx-table tbody tr:last-child td{border-bottom:0}



.dx-strategy-list{



    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}



.dx-strategy-card{



    background:#fff;color:var(--text);border-radius:16px;border:1px solid #dce6f4;overflow:hidden;transition:transform .23s,box-shadow .23s,border-color .23s}



.dx-strategy-card:hover{



    transform:translateY(-6px);border-color:var(--yellow);box-shadow:var(--shadow)}



.dx-strategy-card.dx-flash{



    animation:flash 1.5s ease}



@keyframes flash{



    0%,100%{box-shadow:0 0 0 rgba(246,220,50,0)}35%{box-shadow:0 0 0 8px rgba(246,220,50,.95),0 25px 50px rgba(6,22,67,.25)}}



.dx-strategy-top{



    padding:23px 26px 27px;position:relative}



.dx-strategy-top:after{



    content:"";position:absolute;bottom:0;left:26px;right:26px;height:1px;background:#e8eef8}



.dx-strategy-count{



    display:inline-flex;align-items:center;gap:7px;font:800 10px Arial,sans-serif;letter-spacing:.09em;padding:5px 11px;background:#ebf2fb;color:#2d5c99;border-radius:50px}



.dx-strategy-intro{



    display:grid;grid-template-columns:66px 1fr;gap:18px;margin-top:26px;align-items:start}



.dx-strategy-shape{



    height:62px;width:62px;background:#edf4fc;border-radius:14px;display:grid;place-items:center;border:1px solid #d8e5f5}



.dx-strategy-shape span{font:900 26px Arial,sans-serif;letter-spacing:-.06em;color:#3164a6}



.dx-strategy-eyebrow{font-size:11px;font-weight:800;color:#5585b7;margin:-2px 0 4px}



.dx-strategy-intro h3{font-size:23px;line-height:1.5;color:var(--ink);margin:0 0 14px}



.dx-strategy-summary{font-size:13px;line-height:1.95;color:#576883;margin:0}



.dx-strategy-outcome{display:flex;align-items:flex-start;gap:8px;margin-top:24px;border-radius:8px;background:#f3f7fc;padding:11px 13px;font-size:12px;font-weight:800;color:#2d528f;line-height:1.55}



.dx-strategy-outcome>span:first-child{color:#9f8000;font-size:20px;line-height:1}



.dx-strategy-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-size:13px;font-weight:850;padding:18px 26px;cursor:pointer;list-style:none;transition:background .2s}



.dx-strategy-details summary::-webkit-details-marker{display:none}



.dx-strategy-details summary:hover,.dx-strategy-details[open] summary{background:#f7f9fe}



.dx-chevron{font-size:22px;color:#326da9;line-height:1;transition:transform .2s}



.dx-strategy-details[open] .dx-chevron{transform:rotate(45deg)}



.dx-details-content{padding:3px 26px 25px;border-top:1px solid #edf1f8}



.dx-original-title{font-size:14px;color:var(--ink);line-height:1.7;margin:16px 0}



.dx-strategy-body{display:block}



.dx-strategy-block{margin-top:24px}



.dx-strategy-block h4{font-size:14px;margin:0 0 8px;color:#2d5695;padding:0 0 8px;border-bottom:2px solid #e5edf8}



.dx-strategy-block p{margin:0 0 10px;font-size:13px;line-height:1.95}



.dx-strategy-block p:last-child{margin:0}



.dx-roadmap ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}



.dx-roadmap li{padding:10px 12px;border-radius:7px;font-size:12px;line-height:1.8;background:#f3f6fb}



.dx-organization-summary{border:1px solid #ffffff42;border-radius:16px;background:linear-gradient(125deg,#345395,#2a4382);padding:32px;text-align:center;margin-bottom:45px}



.dx-org-lead{display:flex;align-items:center;flex-direction:column}



.dx-org-lead>span{font-size:12px;opacity:.85;margin-bottom:6px}



.dx-org-lead strong{font-size:20px;background:#fff;color:var(--ink);padding:8px 30px;border-radius:100px}



.dx-org-arrow{font-size:27px;color:var(--yellow);line-height:1.5}



.dx-org-team{display:inline-block;border:1px solid #ffffff88;border-radius:12px;padding:14px 35px}



.dx-org-team strong{display:block;font-size:20px;color:#fff}



.dx-org-team p{font-size:13px;margin:0;color:#e6eeff}



.dx-text-chapter{margin:0 0 47px}



.dx-text-chapter h3{border-left:5px solid var(--yellow);padding-left:14px;font-size:20px;color:#fff;margin:0 0 18px}



.dx-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}



.dx-people-card{padding:23px}



.dx-people-card h4{font-size:17px;color:var(--ink);margin:0 0 12px}



.dx-people-card p{font-size:13px;margin:0 0 10px;line-height:2}



.dx-people-card p:last-child{margin:0}



.dx-section-intro{max-width:820px;font-size:15px;line-height:2.1;margin-bottom:25px;color:#e6eeff}



.dx-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}



.dx-kpi-card{padding:26px 29px;background:#fff;color:var(--text);border:1px solid #dce6f4;border-radius:14px;min-height:238px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s}



.dx-kpi-card:hover,.dx-kpi-card:focus-visible{transform:translateY(-6px);box-shadow:var(--shadow);border-color:var(--yellow)}



.dx-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#4974a5;font:900 12px Arial,sans-serif;letter-spacing:.08em}



.dx-kpi-dept{color:#587198;letter-spacing:0;font-size:11px;border-radius:40px;padding:5px 10px;background:#edf3fa}



.dx-kpi-card h3{color:var(--ink);font-size:18px;line-height:1.6;margin:22px 0 9px}



.dx-kpi-card p{font-size:13px;margin:0 0 19px;color:#5c6c84;line-height:1.85}



.dx-kpi-status{margin-top:auto;border-top:1px solid #e6ecf5;padding-top:13px;color:#6e7e95;font-size:12px;display:flex;align-items:center;gap:8px}



.dx-status-dot{height:8px;width:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 3px #fff3ad}



.dx-kpi-footnote{display:flex;gap:16px;align-items:flex-start;margin-top:25px;padding:19px 23px;border:1px solid #ffffff4d;border-radius:10px;background:#ffffff0c;color:#eef3ff}



.dx-kpi-footnote>span{display:inline-grid;place-items:center;border:1px solid #ffffff80;border-radius:50%;height:23px;min-width:23px;font:bold 13px Georgia,serif;margin-top:3px}



.dx-kpi-footnote p{margin:0;font-size:12px;line-height:1.9}



.dx-end-section{padding:93px 0 100px;background:radial-gradient(circle at 80% 20%,#4162a2,#182c5b 67%);color:#fff;text-align:center;border-top:1px solid #ffffff33}



.dx-end-section span{font:700 11px Arial,sans-serif;letter-spacing:.22em;color:#f2e17c}



.dx-end-section h2{font-size:clamp(28px,3vw,40px);margin:14px 0 13px}



.dx-end-section p{font-size:14px;line-height:2.05;color:#dfebff;margin:0 0 29px}



.dx-end-section a{text-decoration:none;display:inline-flex;gap:18px;align-items:center;border:1px solid #a6b9df;padding:10px 19px;border-radius:99px;font-size:12px;font-weight:800;transition:background .2s,color .2s}



.dx-end-section a:hover{background:#fff;color:#193465}



.dx-site-footer{background:#fff;color:var(--ink)}



.dx-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 0}



.dx-footer-brand{display:flex;align-items:center;gap:15px}



.dx-footer-brand span{font-size:22px;font-weight:900}



.dx-footer-brand small{font:700 10px Arial,sans-serif;letter-spacing:.08em;color:#7c89a2}



.dx-footer-inner p{font:700 10px Arial,sans-serif;color:#8b96aa;margin:0}



@media(max-width:1040px){.dx-container{width:min(100% - 48px,1180px)}.dx-hero-container{grid-template-columns:1fr .85fr}.dx-hero-visual{transform:scale(.85);transform-origin:center}.dx-people-grid{grid-template-columns:1fr 1fr}.dx-strategy-intro h3{font-size:20px}.dx-sticky-wrap{gap:12px}.dx-sticky-wrap{font-size:9px}}



@media(max-width:790px){.dx-hero-container{grid-template-columns:1fr;min-height:auto;padding-bottom:50px}.dx-hero{min-height:auto}.dx-crumb{margin-bottom:42px}.dx-hero-visual{height:335px;transform:scale(.7);transform-origin:center;margin-top:-10px}.dx-orbit-node{min-width:145px}.dx-overview-grid{grid-template-columns:1fr;gap:12px}.dx-overview-card{min-height:180px}.dx-overview-card h3{margin-top:18px}.dx-message-layout{grid-template-columns:1fr}.dx-message-aside{position:relative;top:auto;min-height:0}.dx-message-aside>p{margin-bottom:20px}.dx-strategy-list{grid-template-columns:1fr}.dx-mission-grid,.dx-vision-grid{grid-template-columns:1fr}.dx-nav-en{display:none}.dx-nav-no{display:none}.dx-nav-items a{min-height:57px}.dx-sticky-wrap{display:block}.dx-sticky-wrap>div{display:grid}.dx-sticky-wrap{font-size:0}}



@media(max-width:540px){.dx-container{width:calc(100% - 30px)}.dx-header-inner{height:68px}.dx-brand-symbol{font-size:26px}.dx-brand-name{font-size:21px}.dx-brand-sub{font-size:9px}.dx-brand-divider{height:32px;margin:0 2px}.dx-header-link{font-size:10px;gap:4px}.dx-header-link span{font-size:15px}.dx-mini-label{font-size:10px}.dx-hero h1{font-size:37px}.dx-hero-lead{font-size:21px}.dx-hero-visual{transform:scale(.61);height:285px;margin-top:-18px}.dx-overview{padding:52px 0 63px}.dx-overview-heading>span{width:100%}.dx-sticky-nav{margin:0 -0px}.dx-nav-items a{font-size:11px;padding:5px 2px;min-height:58px}.dx-nav-label{font-size:10px;line-height:1.4}.dx-section{padding:60px 0 73px}.dx-section-number{min-width:47px;height:48px;font-size:19px}.dx-section-heading{gap:12px;margin-bottom:26px}.dx-section-heading h2{font-size:23px}.dx-two-col{grid-template-columns:1fr}.dx-info-card,.dx-mission,.dx-future,.dx-people-card{padding:22px}.dx-strategy-top{padding:21px}.dx-strategy-intro{grid-template-columns:50px 1fr;gap:12px}.dx-strategy-shape{height:48px;width:48px}.dx-strategy-intro h3{font-size:18px}.dx-strategy-details summary{padding:15px 21px}.dx-details-content{padding:4px 21px 20px}.dx-philosophy{padding:30px 16px}.dx-philosophy-title{font-size:31px}.dx-people-grid,.dx-kpi-grid{grid-template-columns:1fr}.dx-organization-summary{padding:24px 12px}.dx-footer-inner{flex-direction:column;align-items:flex-start}.dx-end-section{padding:60px 0}.dx-overview-heading h2{font-size:26px}}











/* WordPress integration: fixed existing navbar + scoped page styles. */



.kagoo-dx-page{--dx-header-offset:88px; padding-top: 0;; min-height:100vh; width:100%; isolation:isolate}



.kagoo-dx-page .dx-sticky-nav{top:var(--dx-header-offset); z-index:35}



.kagoo-dx-page .dx-section,.kagoo-dx-page #overview,.kagoo-dx-page #dx-title,.kagoo-dx-page #strategy,.kagoo-dx-page #kpi{scroll-margin-top:calc(var(--dx-header-offset) + 78px)}



.kagoo-dx-page .dx-crumb a{color:inherit;text-decoration:none}



.kagoo-dx-page .dx-crumb a:hover{text-decoration:underline}



.kagoo-dx-page .dx-hero a,.kagoo-dx-page .dx-sticky-nav a,.kagoo-dx-page .dx-overview a{box-shadow:none}



.kagoo-dx-page .dx-hero-cta{color:var(--blue-deep)}



.kagoo-dx-page .dx-overview-card h3,.kagoo-dx-page .dx-strategy-intro h3{font-weight:800}



.kagoo-dx-page .dx-reading-progress{z-index:1050}



@media(max-width:991px){.kagoo-dx-page{--dx-header-offset:68px}}



@media(prefers-reduced-motion:reduce){.kagoo-dx-page *,.kagoo-dx-page *::before,.kagoo-dx-page *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}











/* ==================================



   KAGOO DX HERO V2



   Navy corporate design



================================== */







.kagoo-dx-page .dx-hero-v2 {



    position: relative;



    display: block;



    width: 100%;



    height: auto;



    min-height: 0;



    margin: 0;



    padding: 0;



    overflow: hidden;



    isolation: isolate;



    color: #ffffff;



    background: linear-gradient(



        125deg,



        #071f49 0%,



        #092d67 54%,



        #07346f 100%



    );



}







/* Hide decoration from previous hero */



.kagoo-dx-page .dx-hero-v2::before,



.kagoo-dx-page .dx-hero-v2::after {



    content: none !important;



    display: none !important;



}







.kagoo-dx-page .dxv2-container {



    position: relative;



    z-index: 2;



    width: min(1400px, 100%);



    margin: 0 auto;



    padding: 32px 46px 95px;



}







.kagoo-dx-page .dxv2-waves {



    position: absolute;



    inset: 0;



    width: 100%;



    height: 100%;



    z-index: 0;



    pointer-events: none;



}







/* Breadcrumb */



.kagoo-dx-page .dxv2-breadcrumb {



    display: flex;



    align-items: center;



    gap: 14px;



    font-size: 14px;



    color: #ffffff;



}







.kagoo-dx-page .dxv2-breadcrumb a {



    color: #ffffff;



    text-decoration: none;



}







.kagoo-dx-page .dxv2-breadcrumb a:hover {



    color: #ffe331;



}







/* Heading */



.kagoo-dx-page .dxv2-intro {



    margin-top: 75px;



    max-width: 1150px;



}







.kagoo-dx-page .dxv2-en {



    display: flex;



    align-items: center;



    gap: 22px;



    margin: 0 0 25px;



    font-size: 16px;



    letter-spacing: 4px;



    font-weight: 700;



    color: #ffffff;



}







.kagoo-dx-page .dxv2-en::before {



    content: "";



    width: 65px;



    height: 7px;



    background: #ffe331;



    border-radius: 3px;



}







.kagoo-dx-page .dxv2-intro h1 {



    margin: 0;



    padding: 0;



    color: #ffffff;



    font-size: clamp(36px, 4.6vw, 74px);



    font-weight: 700;



    line-height: 1.3;



    letter-spacing: .025em;



}







.kagoo-dx-page .dxv2-message {



    margin: 36px 0 0;



    color: #ffffff;



    font-size: clamp(18px, 2vw, 29px);



    font-weight: 500;



    line-height: 1.9;



}







.kagoo-dx-page .dxv2-message strong {



    color: #ffe331;



    font-weight: 700;



}







/* Three business cards */



.kagoo-dx-page .dxv2-cards {



    display: grid;



    grid-template-columns: repeat(3, minmax(0, 1fr));



    gap: 20px;



    margin-top: 100px;



}







.kagoo-dx-page .dxv2-card {



    position: relative;



    display: flex;



    align-items: center;



    gap: 20px;



    min-height: 144px;



    padding: 24px 40px 24px 45px;



    background: #ffffff;



    color: #123b7a;



    text-decoration: none;



    clip-path: polygon(



        8% 0,



        100% 0,



        94% 100%,



        0 100%



    );



    transition:



        background .25s ease,



        transform .25s ease;



}







.kagoo-dx-page .dxv2-card::after {



    content: "";



    position: absolute;



    right: 4%;



    top: 0;



    height: 100%;



    width: 8px;



    background: #ffe331;



    transform: skewX(-14deg);



}







.kagoo-dx-page .dxv2-card:hover {



    background: #eef6ff;



    transform: translateY(-5px);



}







.kagoo-dx-page .dxv2-card:focus-visible {



    outline: 3px solid #ffe331;



    outline-offset: -5px;



}







/* Icons */



.kagoo-dx-page .dxv2-card svg {



    display: block;



    width: 55px;



    height: 55px;



    flex-shrink: 0;



    color: #1763ad;



}







/* Card text */



.kagoo-dx-page .dxv2-card-text {



    min-width: 0;



    border-left: 1px solid #c8d5e4;



    padding-left: 18px;



}







.kagoo-dx-page .dxv2-card-number {



    display: inline-block;



    margin-bottom: 5px;



    color: #2674b9;



    font-size: 17px;



    font-weight: 700;



}







.kagoo-dx-page .dxv2-card h2 {



    margin: 0;



    padding: 0;



    color: #123b7a;



    font-size: clamp(19px, 1.7vw, 28px);



    line-height: 1.4;



    font-weight: 700;



}







.kagoo-dx-page .dxv2-card p {



    margin: 7px 0 0;



    color: #68768b;



    font-size: 15px;



    line-height: 1.6;



}







.kagoo-dx-page .dxv2-arrow {



    margin-left: auto;



    color: #123b7a;



    font-size: 36px;



    font-weight: 400;



}







/* Tablet */



@media (max-width: 1100px) {



    .kagoo-dx-page .dxv2-cards {



        gap: 12px;



    }







    .kagoo-dx-page .dxv2-card {



        padding: 20px 24px 20px 28px;



        gap: 12px;



    }







    .kagoo-dx-page .dxv2-card svg {



        width: 42px;



        height: 42px;



    }



}







/* Mobile */



@media (max-width: 767px) {



    .kagoo-dx-page .dxv2-container {



        padding: 25px 20px 55px;



    }







    .kagoo-dx-page .dxv2-intro {



        margin-top: 55px;



    }







    .kagoo-dx-page .dxv2-en {



        font-size: 11px;



        letter-spacing: 2px;



        gap: 12px;



    }







    .kagoo-dx-page .dxv2-en::before {



        width: 35px;



        height: 5px;



    }







    .kagoo-dx-page .dxv2-message {



        line-height: 1.8;



    }







    .kagoo-dx-page .dxv2-message br {



        display: none;



    }







    .kagoo-dx-page .dxv2-cards {



        grid-template-columns: 1fr;



        margin-top: 55px;



        gap: 12px;



    }







    .kagoo-dx-page .dxv2-card {



        min-height: 105px;



        padding: 18px 25px;



        clip-path: none;



        border-radius: 10px;



    }







    .kagoo-dx-page .dxv2-card::after {



        right: 0;



        width: 5px;



        transform: none;



    }



}





/* ============================================================

   KAGOO DX navigation -- one consolidated, responsive version

   Replaces the old V3 / V4 / right-edge-fix blocks.

   Colors: navy #08295d, yellow #ffe331, white #fff

   ============================================================ */

.kagoo-dx-page .dx-overview {

  padding-bottom: 20px;

}

.kagoo-dx-page #navigation-top {

  height: 0;

  margin: 0;

  padding: 0;

}

.kagoo-dx-page .dx-sticky-nav-v3 {

  position: sticky;

  top: var(--dx-header-offset, 88px);

  z-index: 35;

  width: 100%;

  max-width: 100%;

  margin: 0;

  padding: 8px 0;

  border: 0;

  box-shadow: none;

  background: #eef5fd;

  color: #fff;

}

.kagoo-dx-page .dx-sticky-wrap-v3 {

  display: flex;

  align-items: stretch;

  gap: 0;

  width: min(1480px, calc(100% - 48px));

  max-width: none;

  min-width: 0;

  margin: 0 auto;

  padding: 0;

  border: 1px solid #173e7c;

  border-radius: 12px;

  overflow: hidden;

  background: linear-gradient(180deg, #103a7b 0%, #082658 100%);

  box-shadow: 0 7px 18px rgba(6, 31, 75, .16);

  font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;

  letter-spacing: 0;

}

.kagoo-dx-page .dx-nav-title-v3 {

  display: flex;

  flex: 0 0 175px;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  min-width: 0;

  min-height: 66px;

  margin: 0;

  padding: 12px 26px 12px 12px;

  background: #fff;

  color: #08295d;

  clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 50%, calc(100% - 22px) 100%, 0 100%);

}

.kagoo-dx-page .dx-nav-title-v3 span {

  color: #08295d;

  font-size: 15px;

  line-height: 1.4;

  font-weight: 800;

  letter-spacing: 0;

  white-space: nowrap;

}

.kagoo-dx-page .dx-nav-title-v3 i { display: none; }

.kagoo-dx-page .dx-nav-items-v3 {

  display: grid;

  grid-template-columns: repeat(5, minmax(0, 1fr));

  flex: 1 1 0;

  width: auto;

  min-width: 0;

  margin: 0;

  padding: 0;

  background: transparent;

}

.kagoo-dx-page .dx-nav-items-v3 a {

  position: relative;

  display: flex;

  flex-direction: row;

  align-items: center;

  justify-content: center;

  gap: 7px;

  min-width: 0;

  min-height: 66px;

  margin: 0;

  padding: 10px 6px;

  border: 0;

  color: #fff;

  background: transparent;

  text-align: center;

  text-decoration: none;

  transition: background-color .2s ease;

}

.kagoo-dx-page .dx-nav-items-v3 a:last-child { border-right: 0; }

.kagoo-dx-page .dx-nav-items-v3 a:not(:last-child)::before {

  content: "";

  position: absolute;

  right: 0;

  top: 24%;

  height: 52%;

  width: 1px;

  background: rgba(255,255,255,.32);

}

.kagoo-dx-page .dx-nav-icon-v3 {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  flex: 0 0 22px;

  width: 22px;

  height: 22px;

  color: #ffe331;

}

.kagoo-dx-page .dx-nav-icon-v3 svg {

  display: block;

  width: 22px;

  height: 22px;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;

}

.kagoo-dx-page .dx-nav-items-v3 .dx-nav-no {

  position: static;

  flex: 0 0 auto;

  display: inline-block;

  color: #ffe331;

  font-size: 14px;

  font-weight: 800;

  line-height: 1.4;

}

.kagoo-dx-page .dx-nav-copy-v3 {

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  min-width: 0;

  gap: 0;

}

.kagoo-dx-page .dx-nav-items-v3 .dx-nav-label {

  display: block;

  color: #fff;

  font-size: 12px;

  font-weight: 700;

  line-height: 1.45;

  letter-spacing: 0;

  white-space: nowrap;

}

.kagoo-dx-page .dx-nav-items-v3 .dx-nav-en { display: none; }

.kagoo-dx-page .dx-nav-items-v3 a:hover,

.kagoo-dx-page .dx-nav-items-v3 a.is-active {

  color: #fff;

  background: rgba(255,255,255,.12);

}

.kagoo-dx-page .dx-nav-items-v3 a::after {

  content: "";

  position: absolute;

  bottom: 0;

  left: 0;

  right: 0;

  height: 3px;

  background: #ffe331;

  transform: scaleX(0);

  transition: transform .2s ease;

}

.kagoo-dx-page .dx-nav-items-v3 a:hover::after,

.kagoo-dx-page .dx-nav-items-v3 a.is-active::after {

  transform: scaleX(1);

}

.kagoo-dx-page .dx-nav-items-v3 a:focus-visible {

  outline: 2px solid #ffe331;

  outline-offset: -4px;

}

/* Reduced screen widths: compact the nav before it can clip. */

@media (max-width: 1199px) and (min-width: 801px) {

  .kagoo-dx-page .dx-sticky-wrap-v3 {

    width: calc(100% - 24px);

  }

  .kagoo-dx-page .dx-nav-title-v3 {

    flex-basis: 145px;

  }

  .kagoo-dx-page .dx-nav-title-v3 span {

    font-size: 13px;

  }

  .kagoo-dx-page .dx-nav-icon-v3 {

    display: none;

  }

  .kagoo-dx-page .dx-nav-items-v3 a {

    gap: 4px;

    padding-inline: 3px;

  }

  .kagoo-dx-page .dx-nav-items-v3 .dx-nav-label {

    font-size: 11px;

  }

}

/* Small devices: all five links remain visible without sideways clipping. */

@media (max-width: 800px) {

  .kagoo-dx-page .dx-sticky-nav-v3 {

    position: relative;

    top: auto;

  }

  .kagoo-dx-page .dx-sticky-wrap-v3 {

    display: block;

    width: calc(100% - 24px);

  }

  .kagoo-dx-page .dx-nav-title-v3 {

    min-height: 42px;

    padding: 8px 16px;

    justify-content: flex-start;

    align-items: flex-start;

    clip-path: none;

  }

  .kagoo-dx-page .dx-nav-items-v3 {

    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    overflow: visible;

  }

  .kagoo-dx-page .dx-nav-items-v3 a {

    min-height: 54px;

    padding: 9px 6px;

    border-top: 1px solid rgba(255,255,255,.15);

    gap: 5px;

  }

  .kagoo-dx-page .dx-nav-items-v3 a:last-child {

    grid-column: 1 / -1;

  }

  .kagoo-dx-page .dx-nav-items-v3 .dx-nav-label {

    font-size: 11px;

    white-space: normal;

  }

  .kagoo-dx-page .dx-nav-icon-v3 {

    display: none;

  }

}



/* ===== NEW APPROVED DX OVERVIEW AND NAVIGATION ===== */

/* KAGOO DX screenshot-style overview + navigation.

   Requires the v5 HTML block; does not change other DX page sections. */

.kagoo-dx-page .dx-overview-v5 {

  position: relative;

  overflow: hidden;

  padding: 46px 0 12px;

  background: linear-gradient(120deg, #eef6ff 0%, #e5f1fd 65%, #d8eafc 100%);

  color: #122f62;

}

.kagoo-dx-page .dx-overview-v5::before {

  content: "";

  position: absolute;

  inset: 0 0 auto auto;

  width: 27%;

  height: 220px;

  background: rgba(110, 171, 229, .13);

  clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%);

  pointer-events: none;

}

.kagoo-dx-page .dxv5-container,

.kagoo-dx-page .dxv5-nav-wrap {

  width: min(1320px, calc(100% - 48px));

  max-width: none;

  margin-inline: auto;

}

.kagoo-dx-page .dxv5-heading { position: relative; z-index: 1; margin-bottom: 25px; }

.kagoo-dx-page .dxv5-eyebrow {

  display: flex;

  align-items: center;

  gap: 14px;

  margin: 0 0 9px;

  font: 800 12px/1.4 Arial, sans-serif;

  letter-spacing: .15em;

  color: #123465;

}

.kagoo-dx-page .dxv5-eyebrow span {

  display: block;

  width: 130px;

  height: 2px;

  background: linear-gradient(90deg, #a8c9e9 0 67%, #f2d52b 67%);

}

.kagoo-dx-page .dxv5-heading-line {

  display: flex;

  align-items: baseline;

  flex-wrap: wrap;

  gap: 10px 28px;

}

.kagoo-dx-page .dxv5-heading-line h2 {

  margin: 0;

  color: #0d2e62;

  font-size: clamp(25px, 2.6vw, 36px);

  font-weight: 800;

  line-height: 1.45;

  letter-spacing: .01em;

}

.kagoo-dx-page .dxv5-heading-line h2 em { font-style: normal; color: #1562ac; }

.kagoo-dx-page .dxv5-heading-line p { margin: 0; color: #5a6f8c; font-size: 13px; }



/* Three business cards */

.kagoo-dx-page .dxv5-cards {

  position: relative;

  z-index: 1;

  display: grid;

  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 14px;

}

.kagoo-dx-page .dx-overview-card.dxv5-card {

  display: grid;

  grid-template-columns: 92px minmax(0, 1fr) 16px;

  align-items: center;

  gap: 14px;

  min-width: 0;

  min-height: 142px;

  margin: 0;

  padding: 18px 15px;

  background: #fff;

  border: 1px solid #e3edf7;

  border-radius: 12px;

  box-shadow: 0 8px 19px rgba(26, 71, 117, .075);

  text-decoration: none;

  transform: none;

  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;

}

.kagoo-dx-page .dx-overview-card.dxv5-card::before { content: none; display: none; }

.kagoo-dx-page .dx-overview-card.dxv5-card:hover,

.kagoo-dx-page .dx-overview-card.dxv5-card:focus-visible {

  transform: translateY(-3px);

  border-color: #88b5de;

  box-shadow: 0 13px 28px rgba(26, 71, 117, .14);

}

.kagoo-dx-page .dxv5-card-icon {

  position: relative;

  display: grid;

  place-items: center;

  width: 92px;

  height: 74px;

  color: #fff;

  background: #0b3978;

  clip-path: polygon(12% 0, 100% 0, 88% 100%, 0 100%);

}

.kagoo-dx-page .dxv5-card-icon::after {

  content: "";

  position: absolute;

  top: 0;

  right: 7px;

  height: 100%;

  width: 6px;

  background: #f6d52b;

  transform: skewX(-10deg);

}

.kagoo-dx-page .dxv5-card-icon svg { display: block; width: 40px; height: 40px; }

.kagoo-dx-page .dxv5-card-copy { display: block; min-width: 0; }

.kagoo-dx-page .dxv5-card-title {

  display: block;

  color: #0b2d61;

  font-size: clamp(17px, 1.4vw, 23px);

  line-height: 1.45;

  font-weight: 800;

  margin: 0 0 10px;

}

.kagoo-dx-page .dxv5-card-detail {

  display: block;

  color: #4c6383;

  font-size: clamp(11px, .87vw, 13px);

  line-height: 1.8;

}

.kagoo-dx-page .dxv5-card-detail b { color: #113d7d; font-weight: 800; }

.kagoo-dx-page .dxv5-card-arrow {

  color: #12549b;

  font: 500 32px/1 Arial, sans-serif;

  justify-self: end;

}



/* Separate pale-blue navigation beneath cards */

.kagoo-dx-page #navigation-top { height: 0; margin: 0; padding: 0; }

.kagoo-dx-page .dx-sticky-nav.dx-sticky-nav-v5 {

  position: sticky;

  top: var(--dx-header-offset, 88px);

  z-index: 35;

  width: 100%;

  max-width: 100%;

  margin: 0;

  padding: 18px 0 25px;

  background: #e5f1fd;

  border: 0;

  box-shadow: none;

  color: #133b76;

}

.kagoo-dx-page .dx-sticky-wrap.dxv5-nav-wrap {

  display: grid;

  grid-template-columns: 148px minmax(0, 1fr);

  align-items: stretch;

  gap: 0;

  overflow: hidden;

  padding: 0;

  border: 1px solid #d6e3f3;

  border-radius: 11px;

  background: #fff;

  box-shadow: 0 8px 22px rgba(12, 48, 91, .10);

  font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;

  letter-spacing: 0;

}

.kagoo-dx-page .dxv5-nav-caption {

  display: flex;

  align-items: center;

  justify-content: center;

  min-height: 62px;

  padding: 9px 18px 9px 10px;

  color: #fff;

  font-size: 14px;

  font-weight: 800;

  white-space: nowrap;

  background: #0b3270;

  clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%);

}

.kagoo-dx-page .dx-nav-items.dxv5-nav-items {

  display: grid;

  grid-template-columns: repeat(5, minmax(0, 1fr));

  gap: 0;

  flex: auto;

  min-width: 0;

  padding: 0;

  background: #fff;

}

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a {

  display: flex;

  position: relative;

  flex-direction: row;

  align-items: center;

  justify-content: center;

  gap: 6px;

  min-width: 0;

  min-height: 62px;

  padding: 9px 5px;

  border: 0;

  border-right: 1px solid #d9e3f2;

  color: #0b3270;

  background: #fff;

  text-decoration: none;

  text-align: center;

  transition: background-color .2s ease;

}

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a:last-child { border-right: 0; }

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a::before { content: none; display: none; }

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a::after {

  content: "";

  position: absolute;

  bottom: 0;

  left: 15%;

  right: 15%;

  height: 3px;

  background: #f6d52b;

  transform: scaleX(0);

  transition: transform .2s ease;

}

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a:hover,

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a.is-active { background: #edf5ff; }

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a:hover::after,

.kagoo-dx-page .dx-nav-items.dxv5-nav-items a.is-active::after { transform: scaleX(1); }

.kagoo-dx-page .dx-nav-items.dxv5-nav-items svg {

  display: block;

  flex: 0 0 21px;

  width: 21px;

  height: 21px;

  fill: none;

  stroke: #1163ac;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;

}

.kagoo-dx-page .dxv5-nav-no { position: static; flex-shrink: 0; color: #145aa5; font-size: 12px; font-weight: 800; }

.kagoo-dx-page .dxv5-nav-label { min-width: 0; color: #163769; font-size: 12px; font-weight: 700; line-height: 1.45; overflow-wrap: normal; }



/* Narrow screens: wrap, do not clip the last navigation item */

@media (max-width: 1100px) {

  .kagoo-dx-page .dxv5-container,

  .kagoo-dx-page .dxv5-nav-wrap { width: calc(100% - 36px); }

  .kagoo-dx-page .dxv5-cards { grid-template-columns: 1fr; }

  .kagoo-dx-page .dx-sticky-wrap.dxv5-nav-wrap { grid-template-columns: 1fr; }

  .kagoo-dx-page .dxv5-nav-caption { min-height: 40px; clip-path: none; }

  .kagoo-dx-page .dx-nav-items.dxv5-nav-items { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  .kagoo-dx-page .dxv5-card-detail { font-size: 13px; }

}

@media (max-width: 650px) {

  .kagoo-dx-page .dx-overview-v5 { padding-top: 32px; }

  .kagoo-dx-page .dxv5-container,

  .kagoo-dx-page .dxv5-nav-wrap { width: calc(100% - 24px); }

  .kagoo-dx-page .dxv5-heading-line { display: block; }

  .kagoo-dx-page .dxv5-heading-line p { margin-top: 6px; }

  .kagoo-dx-page .dx-overview-card.dxv5-card { grid-template-columns: 70px minmax(0,1fr) 12px; gap: 11px; padding: 13px 10px; min-height: 118px; }

  .kagoo-dx-page .dxv5-card-icon { width: 70px; height: 66px; }

  .kagoo-dx-page .dxv5-card-icon svg { width: 32px; height: 32px; }

  .kagoo-dx-page .dxv5-card-title { font-size: 18px; margin-bottom: 5px; }

  .kagoo-dx-page .dxv5-card-detail { font-size: 11px; }

  .kagoo-dx-page .dx-sticky-nav.dx-sticky-nav-v5 { position: relative; top: auto; padding: 14px 0 20px; }

  .kagoo-dx-page .dx-nav-items.dxv5-nav-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .kagoo-dx-page .dx-nav-items.dxv5-nav-items a { min-height: 57px; padding: 9px 4px; border-bottom: 1px solid #d9e3f2; }

  .kagoo-dx-page .dx-nav-items.dxv5-nav-items svg { width: 18px; height: 18px; flex-basis: 18px; }

  .kagoo-dx-page .dxv5-nav-label { font-size: 11px; }

  .kagoo-dx-page .dxv5-nav-no { font-size: 11px; }

}



/* ========================================

   Reduce spacing between Section 01 and 02

======================================== */



/* 01 - Representative Message */

#message {

    padding-bottom: 35px !important;

    min-height: 0 !important;

    height: auto !important;

}



/* 02 - Vision & Direction */

#vision {

    padding-top: 40px !important;

    margin-top: 0 !important;

}





/* Reduce space between Section 02 and Section 03 */



/* Section 02 - Vision */

#vision {

    padding-bottom: 30px !important;

    min-height: 0 !important;

    height: auto !important;

}



/* Section 03 - DX Strategy */

#strategy {

    padding-top: 35px !important;

    margin-top: 0 !important;

}



/* =========================================

   KAGOO DX - Reduce section 03, 04, 05 gaps

========================================= */



/* Section 03 - DX Strategy */

#strategy {

    padding-bottom: 30px !important;

    min-height: 0 !important;

    height: auto !important;

}



/* Section 04 - Organization & People */

#organization {

    padding-top: 35px !important;

    padding-bottom: 30px !important;

    margin-top: 0 !important;

    margin-bottom: 0 !important;

    min-height: 0 !important;

    height: auto !important;

}



/* Section 05 - KPI */

#kpi {

    padding-top: 35px !important;

    margin-top: 0 !important;

    min-height: 0 !important;

    height: auto !important;

}



/* ==========================================

   Reduce space between KPI and final section

========================================== */



/* 05 KPI - Reduce bottom spacing */

#kpi {

    padding-bottom: 30px !important;

    margin-bottom: 0 !important;

    min-height: 0 !important;

}



/* Final section - Experience to the Future */

.dx-end-section {

    padding-top: 45px !important;

    padding-bottom: 55px !important;

    margin-top: 0 !important;

    min-height: 0 !important;

}



/* Keep heading spacing balanced */

.dx-end-section h2 {

    margin-top: 14px !important;

    margin-bottom: 18px !important;

}



/* ==========================================

   FIX: Keep all 5 DX navigation links in one row

========================================== */



@media (min-width: 700px) {



    .kagoo-dx-page .dx-sticky-wrap.dxv5-nav-wrap {

        display: grid !important;

        grid-template-columns: 135px minmax(0, 1fr) !important;

        width: calc(100% - 32px) !important;

        max-width: 1320px !important;

        align-items: stretch !important;

    }



    .kagoo-dx-page .dxv5-nav-caption {

        display: flex !important;

        min-height: 62px !important;

        clip-path: polygon(

            0 0,

            calc(100% - 18px) 0,

            100% 50%,

            calc(100% - 18px) 100%,

            0 100%

        ) !important;

        font-size: 12px !important;

    }



    .kagoo-dx-page .dx-nav-items.dxv5-nav-items {

        display: grid !important;

        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

        grid-template-rows: 1fr !important;

        width: 100% !important;

        min-width: 0 !important;

    }



    .kagoo-dx-page .dx-nav-items.dxv5-nav-items a {

        display: flex !important;

        flex-direction: row !important;

        gap: 4px !important;

        min-width: 0 !important;

        padding: 8px 3px !important;

    }



    .kagoo-dx-page .dx-nav-items.dxv5-nav-items svg {

        width: 17px !important;

        height: 17px !important;

        flex: 0 0 17px !important;

    }



    .kagoo-dx-page .dxv5-nav-label {

        font-size: 10px !important;

        line-height: 1.3 !important;

    }



    .kagoo-dx-page .dxv5-nav-no {

        font-size: 11px !important;

    }

}


/* Compact horizontal navigation on narrow desktop inspector windows. */
@media (min-width: 700px) and (max-width: 849px) {
  .kagoo-dx-page .dx-sticky-wrap.dxv5-nav-wrap {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    width: calc(100% - 20px) !important;
  }
  .kagoo-dx-page .dxv5-nav-caption {
    font-size: 11px !important;
    padding: 7px 14px 7px 6px !important;
  }
  .kagoo-dx-page .dx-nav-items.dxv5-nav-items svg {
    display: none !important;
  }
  .kagoo-dx-page .dxv5-nav-label {
    font-size: 9px !important;
  }
  .kagoo-dx-page .dxv5-nav-no {
    font-size: 10px !important;
  }
}

/* ======================================
   DX STRATEGY - ALL 4 CARDS EQUAL HEIGHT
====================================== */

/* Make the 4 cards equal height */
.kagoo-dx-page .dx-strategy-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    align-items: stretch !important;
    gap: 20px;
}

/* Stretch each white card */
.kagoo-dx-page .dx-strategy-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Allow the content area to fill available space */
.kagoo-dx-page .dx-strategy-top {
    flex: 1 1 auto;
}

/* Keep the detail button at the bottom */
.kagoo-dx-page .dx-strategy-details {
    margin-top: auto;
}

/* Mobile: preserve natural card heights */
@media (max-width: 790px) {
    .kagoo-dx-page .dx-strategy-list {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }
}

/* Center the overview and navigation together */

.kagoo-dx-page .dx-overview.dx-overview-v5 {
    width: min(1320px, calc(100% - 48px));
    margin: 0 auto;
    border-radius: 16px 16px 0 0;
}

/* Navigation: same width as overview */
.kagoo-dx-page .dx-sticky-nav.dx-sticky-nav-v5 {
    width: min(1320px, calc(100% - 48px));
    margin-left: auto;
    margin-right: auto;
    border-radius: 0 0 16px 16px;
}

/* Keep contents evenly aligned */
.kagoo-dx-page .dxv5-container,
.kagoo-dx-page .dx-sticky-wrap.dxv5-nav-wrap {
    width: calc(100% - 40px);
    max-width: none;
    margin-left: auto;
    margin-right: auto;
}

/* ==========================================
   DX STRATEGY - FIX EMPTY SPACE WHEN OPEN
========================================== */

/* Normal state: closed cards have equal heights */
.kagoo-dx-page .dx-strategy-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto !important;
    align-items: stretch !important;
}

.kagoo-dx-page .dx-strategy-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Keep closed-card buttons at the bottom */
.kagoo-dx-page .dx-strategy-top {
    flex: 1 1 auto;
}

.kagoo-dx-page .dx-strategy-details {
    margin-top: auto;
}

/* When any card opens, remove forced equal heights */
.kagoo-dx-page .dx-strategy-list:has(.dx-strategy-details[open]) {
    grid-auto-rows: auto !important;
    align-items: start !important;
}

/* Each card expands only as much as its content needs */
.kagoo-dx-page .dx-strategy-list:has(.dx-strategy-details[open])
.dx-strategy-card {
    height: auto !important;
    align-self: start !important;
}

/* Remove the stretching that creates blank space */
.kagoo-dx-page .dx-strategy-list:has(.dx-strategy-details[open])
.dx-strategy-top {
    flex: 0 0 auto !important;
}

/* Details appear directly below the card summary */
.kagoo-dx-page .dx-strategy-list:has(.dx-strategy-details[open])
.dx-strategy-details {
    margin-top: 0 !important;
}

/* Mobile layout */
@media (max-width: 790px) {
    .kagoo-dx-page .dx-strategy-list {
        grid-template-columns: 1fr !important;
        align-items: start !important;
    }
}
