@charset "utf-8";
.root_daum_roughmap .wrap_map, .root_daum_roughmap, .direction-map iframe {width: 100% !important; height: 100% !important;}

/* company info */
.company-info {display:flex; flex-direction:column; gap:var(--space-100);}
.info-intro {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-40);}
.info-tit {flex:0 0 auto; max-width:420px; font-size:var(--font-size-64); font-weight:400; line-height:1.25em; letter-spacing:-.03em; color:var(--dark-color);}
.info-tit strong {display:block; color:var(--color-primary); font-weight:700;}
.info-desc {flex:0 0 700px; max-width:700px; display:flex; flex-direction:column; gap:var(--space-30);}
.info-desc p {font-size:var(--font-size-20); font-weight:400; line-height:1.6em; letter-spacing:-.03em; color:#505050;}
.info-visual {overflow:hidden; border-radius:16px;}
.info-visual img {display:block; width:100%; max-height:550px; object-fit:cover;}
.info-overview {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-40) 40px;}
.info-overview h3 {flex:0 0 auto; font-size:var(--font-size-40); font-weight:700; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color);}
.info-overview dl {flex:0 1 1000px; max-width:1000px; border-top:3px solid var(--dark-color);}
.info-overview dl > div {display:flex; align-items:flex-start; padding:var(--space-40) 0; border-bottom:1px solid #ddd;}
.info-overview dt {flex:0 0 300px; padding:0 var(--space-30); font-size:var(--font-size-24); font-weight:600; line-height:1.5em; letter-spacing:-.03em; color:var(--dark-color);}
.info-overview dd {flex:1; font-size:var(--font-size-22); font-weight:400; line-height:1.5em; letter-spacing:-.03em; color:#505050;}
.info-overview dd ul {display:flex; flex-direction:column; gap:var(--space-20);}
.info-overview dd li {padding-left:var(--space-21); position:relative;}
.info-overview dd li:before {content:""; position:absolute; top:.55em; left:0; width:6px; height:6px; border-radius:50%; background:#ccc;}

/* company ceo */
.ceo-head {display:flex; flex-direction:column; align-items:center; gap:var(--space-50); margin-bottom:var(--space-30); text-align:center;}
.ceo-label {font-size:var(--font-size-18); font-weight:700; line-height:1.5em; letter-spacing:1em; text-indent:1em; color:var(--color-primary);}
.ceo-head h3 {font-size:var(--font-size-64); font-weight:400; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color);}
.ceo-lead {font-size:var(--font-size-24); font-weight:400; line-height:1.5em; letter-spacing:-.03em; color:#878787;}
.ceo-line {display:block; width:1px; height:100px; margin:0 auto var(--space-30); background:var(--dark-color);}
.ceo-profile {position:relative; display:flex; align-items:center; justify-content:flex-end; overflow:hidden; max-width:1100px; height:320px; margin:0 auto var(--space-50); padding:0 var(--space-80) 0 var(--space-360); border-radius:999px; background:#060000;}
.ceo-profile img {position:absolute; left:50%; bottom:0; width:282px; height:331px; object-fit:cover; object-position:50% 10%; transform:translateX(calc(-50% - 151px));}
.ceo-sign {display:flex; flex-direction:column; align-items:flex-end; gap:var(--space-20); color:#fff; text-align:right;}
.ceo-sign span {font-size:var(--font-size-24); font-weight:600; line-height:1.5em; letter-spacing:-.03em;}
.ceo-sign strong {font-size:var(--font-size-72); font-weight:400; line-height:1em; letter-spacing:-.03em;}
.ceo-body {display:flex; flex-direction:column; gap:var(--space-30); max-width:1100px; margin:0 auto; text-align:center;}
.ceo-body p {font-size:var(--font-size-20); font-weight:400; line-height:1.6em; letter-spacing:-.03em; color:#505050;}
.ceo-body strong {font-weight:600; color:var(--dark-color);}
.ceo-values {position:relative; margin:var(--space-120) 0 0; padding:var(--space-120) 0; overflow:hidden; color:#fff; text-align:center;}
.ceo-values:before {content:""; position:absolute; inset:0; background:url("/images/sub/ceo-values-bg.jpg") 50% 50% / cover no-repeat;}
.ceo-values:after {content:""; position:absolute; inset:0; background:rgba(0,0,0,.5);}
.ceo-values h3 {position:relative; z-index:1; margin-bottom:var(--space-50); font-size:var(--font-size-40); font-weight:400; line-height:1.3em; letter-spacing:-.03em;}
.ceo-values h3 strong {font-weight:700;}
.ceo-values ul {position:relative; z-index:1; display:flex; gap:var(--space-20); max-width:1400px; margin:0 auto;}
.ceo-values li {display:flex; flex:1; flex-direction:column; align-items:center; gap:var(--space-30); padding:var(--space-50) var(--space-30); border-radius:16px; background:rgba(255,255,255,.1); backdrop-filter:blur(10px);}
.ceo-values li img {width:64px; height:64px;}
.ceo-values li strong {font-size:var(--font-size-24); font-weight:600; line-height:1.5em; letter-spacing:-.03em;}
.ceo-values li p {font-size:var(--font-size-16); font-weight:400; line-height:1.625em; letter-spacing:-.03em; color:rgba(255,255,255,.8);}
.ceo-close {max-width:1007px; margin:var(--space-120) auto 0; text-align:center;}
.ceo-close h3 {margin-bottom:var(--space-60); font-size:var(--font-size-40); font-weight:400; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color);}
.ceo-close h3 strong {font-weight:700;}
.ceo-close p {font-size:var(--font-size-20); font-weight:400; line-height:1.6em; letter-spacing:-.03em; color:#505050;}
.ceo-close p + p {margin-top:var(--space-30);}
.ceo-close p strong {font-weight:600; color:var(--dark-color);}

/* company vision */
.company-vision {display:flex; flex-direction:column; gap:var(--space-150);}
.company-vision > .contain,
.vision-hero > .contain,
.company-ci > .contain {width:100%;}
.vision-hero {display:flex; flex-direction:column; gap:var(--space-100);}
.vision-slogan {display:flex; flex-direction:column; align-items:center; gap:var(--space-30); text-align:center;}
.vision-label {font-size:var(--font-size-40); font-weight:700; line-height:1.3em; letter-spacing:-.03em; color:var(--color-primary); text-align:center;}
.vision-slogan h3 {font-size:var(--font-size-64); font-weight:400; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color);}
.vision-slogan h3 + p {font-size:var(--font-size-24); font-weight:400; line-height:1.5em; letter-spacing:-.03em; color:var(--dark-color);}
.vision-banner {position:relative; padding:var(--space-120) 0; overflow:hidden; color:#fff; text-align:center;}
.vision-banner > .contain {position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-30);}
.vision-banner:before {content:""; position:absolute; inset:0; background:url("/images/sub/vision-banner.jpg") 50% 100% / cover no-repeat;}
.vision-banner h3 {position:relative; z-index:1; font-size:var(--font-size-40); font-weight:700; line-height:1.3em; letter-spacing:-.03em;}
.vision-banner p {position:relative; z-index:1; font-size:var(--font-size-48); font-weight:400; line-height:1.3em; letter-spacing:-.03em;}
.vision-core {display:flex; flex-direction:column; gap:var(--space-30);}
.vision-core ul {display:flex; gap:var(--space-25);}
.vision-core li {display:flex; flex:1; flex-direction:column; align-items:flex-end; gap:var(--space-30); padding:var(--space-40); border-radius:16px; background:#f2f8fc;}
.vision-core li > div {display:flex; flex-direction:column; gap:var(--space-15); width:100%;}
.vision-core li strong {font-size:var(--font-size-24); font-weight:700; line-height:1.5em; letter-spacing:-.03em; color:var(--dark-color);}
.vision-core li p {font-size:var(--font-size-18); font-weight:500; line-height:1.5em; letter-spacing:-.03em; color:#505050;}
.vision-core-icon {display:flex; align-items:center; justify-content:center; width:80px; height:80px; border-radius:40px; background:#fff; box-shadow:2px 2px 16px rgba(0,124,196,.19);}
.vision-core-icon img {display:block; width:48px; height:auto;}
.vision-biz {display:flex; flex-direction:column; gap:var(--space-30);}
.vision-work {display:flex; flex-direction:column; gap:var(--space-50);}
.vision-work h4 {font-size:var(--font-size-32); font-weight:700; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color); text-align:center;}
.vision-work ul {display:flex; gap:var(--space-40); position:relative; padding:0 var(--space-30) var(--space-54);}
.vision-work ul:before {content:""; position:absolute; left:0; right:0; bottom:11px; height:2px; background:#ddd;}
.vision-work li {position:relative; display:flex; flex:1; flex-direction:column; align-items:center; gap:var(--space-30); text-align:center;}
.vision-work li:after {content:""; position:absolute; left:50%; bottom:calc(var(--space-49) * -1); width:24px; height:24px; border:6px solid var(--color-primary); border-radius:50%; background:#fff; box-sizing:border-box; transform:translateX(-50%);}
.vision-work li img {width:64px; height:64px;}
.vision-work li strong {font-size:var(--font-size-24); font-weight:700; line-height:1.5em; letter-spacing:-.03em; color:var(--dark-color);}
.vision-work li p {font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-.03em; color:#505050;}
.vision-biz-note {display:flex; align-items:center; justify-content:center; padding:var(--space-16) var(--space-30); border-radius:8px; background:#00344e; font-size:var(--font-size-18); font-weight:600; line-height:1.5em; letter-spacing:-.03em; color:#fff; text-align:center;}
.vision-idea {display:flex; flex-direction:column; gap:var(--space-50);}
.vision-idea h3 {font-size:var(--font-size-32); font-weight:700; line-height:1.3em; letter-spacing:-.03em; color:var(--dark-color); text-align:center;}
.vision-idea ul {display:flex; gap:var(--space-25);}
.vision-idea li {position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; flex:1; min-height:300px; padding:var(--space-40); border-radius:16px; color:#fff;}
.vision-idea li img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.vision-idea li:after {content:""; position:absolute; inset:0; background:rgba(0,0,0,.4);}
.vision-idea li strong {position:relative; z-index:1; font-size:var(--font-size-24); font-weight:700; line-height:1.5em; letter-spacing:-.03em;}
.vision-idea li p {position:relative; z-index:1; font-size:var(--font-size-18); font-weight:400; line-height:1.55em; letter-spacing:-.03em;}

/* company history */
.company-history {position:relative;}
.history-hero {position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-40); height:380px; border-radius:16px; color:#fff; text-align:center;}
.history-hero:before {content:""; position:absolute; inset:0; background:url("/images/sub/history-hero.jpg") 50% 100% / cover no-repeat;}
.history-hero:after {content:""; position:absolute; inset:0; background:rgba(0,0,0,.5);}
.history-hero h3 {position:relative; z-index:1; font-size:var(--font-size-64); font-weight:700; line-height:1.3em; letter-spacing:-.03em;}
.history-hero h3 span {display:block; margin-bottom:var(--space-15); font-size:var(--font-size-32); font-weight:600; line-height:1.3em; letter-spacing:-.03em;}
.history-hero p {position:relative; z-index:1; max-width:449px; font-size:var(--font-size-20); font-weight:400; line-height:1.5em; letter-spacing:-.03em;}
.history-badge {position:relative; z-index:2; display:flex; align-items:center; justify-content:center; width:100px; height:100px; margin:calc(var(--space-50) * -1) auto 0; border-radius:50%; background:#fff;}
.history-badge img {display:block; width:64px; height:31px;}
.history-track {position:relative;}
.history-list {position:relative;padding-top:var(--space-100);}
.history-list:before {content:""; position:absolute; left:50%; top:0; bottom:40px; width:4px; margin-left:-2px; background:#eee;}
.history-list:after {content:""; position:absolute; left:50%; top:0; width:4px; height:var(--history-progress, 0px); margin-left:-2px; background:var(--color-primary);}
.history-list > li {position:relative; display:flex; align-items:flex-start; justify-content:flex-end; z-index:1;}
.history-list > li + li {margin-top:clamp(40px, calc(250 / var(--inner) * 100vw), 250px);}
.history-year {flex:0 0 auto; padding-right: clamp(40px, calc(120 / var(--inner) * 100vw), 120px); font-size:var(--font-size-72); font-weight:700; line-height:1em; letter-spacing:-.03em; color:var(--dark-color);}
.history-list dl {display:flex; flex-direction:column; gap:var(--space-30); max-width:50%; width: 100%; padding-left: clamp(40px, calc(120 / var(--inner) * 100vw), 120px);}
.history-list dl > div {display:flex; align-items:flex-start; gap:var(--space-30);}
.history-list dt {flex:0 0 26px; font-size:var(--font-size-20); font-weight:700; line-height:1.6em; letter-spacing:-.03em; color:var(--dark-color);}
.history-list dd {flex:1; font-size:var(--font-size-20); font-weight:400; line-height:1.6em; letter-spacing:-.03em; color:#505050;}
.history-pin {position:absolute; left:50%; top:var(--history-progress, 0px); z-index:2; width:164px; height:164px; transform:translate(-50%, -50%); pointer-events:none;}
.history-pin img {display:block; width:100%; height:100%;}

/* company organization */
.company-org {width:100%;}
.org-chart {margin:0;}
.org-chart img {display:block; width:100%; height:auto;}

/* company ci */
.company-ci {display:flex; flex-direction:column;}
.ci-hero {display:flex; flex-direction:column; align-items:center; margin-bottom:var(--space-120); text-align:center; color:var(--dark-color);}
.ci-hero h3 {font-size:var(--font-size-64); font-weight:400; line-height:1; letter-spacing:-.03em;}
.ci-hero p {margin-top:var(--space-50); font-size:var(--font-size-24); font-weight:400; line-height:1; letter-spacing:-.03em;}
.ci-line {display:block; width:1px; height:100px; margin:var(--space-40) 0; background:var(--dark-color);}
.ci-brand {display:flex; flex-direction:column; align-items:center; width:450px; margin:0;}
.ci-brand-mark {display:block; width:62.89%; height:auto;}
.ci-brand-word {display:block; width:100%; height:auto; margin-top:7.8%;}
.ci-brand-tag {display:block; width:51.18%; height:auto; margin-top:3.8%;}
.ci-identity {margin:0 0 var(--space-120); padding:var(--space-100) 0; background:#f8f9fb;}
.ci-identity-inner {display:flex; flex-direction:column; gap:var(--space-50);}
.ci-card {display:flex; align-items:center; justify-content:space-between; gap:var(--space-40); padding:var(--space-50); border:1px solid #ddd; border-radius:16px; background:#fff;}
.ci-card-txt {flex:1 1 auto; min-width:0;}
.ci-card-txt h4 {margin:0 0 var(--space-30); color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1; letter-spacing:-.03em;}
.ci-card-txt p {color:#505050; font-size:var(--font-size-18); font-weight:400; line-height:30px; letter-spacing:-.03em;}
.ci-down {display:inline-flex; align-items:center; gap:var(--space-20); margin-top:var(--space-40); padding:var(--space-14) var(--space-20); border-radius:24px; background:var(--color-primary); color:#fff; font-size:var(--font-size-16); font-weight:500; line-height:1; letter-spacing:-.03em;}
.ci-down i {display:block; width:24px; height:24px;}
.ci-down i img {display:block; width:100%; height:100%;}
.ci-card-visual {display:flex; align-items:center; justify-content:center; flex:0 0 398px; width:398px; height:243px; border-radius:8px;}
.ci-card-visual .ci-brand {width:311px;}
.ci-card-visual > img {display:block; width:300px; height:auto;}
.ci-sign {margin-bottom:var(--space-120);}
.ci-sign h4 {margin:0 0 var(--space-30); color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1; letter-spacing:-.03em;}
.ci-sign-box {padding:var(--space-30) var(--space-100); border:1px solid #ddd; background:#fff; background-image:linear-gradient(rgba(18,18,18,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(18,18,18,.18) 1px, transparent 1px); background-size:24px 25px;}
.ci-sign-row {display:flex; align-items:center; justify-content:center; gap:var(--space-171); min-height:137px;}
.ci-sign-row + .ci-sign-row {margin-top:var(--space-40);}
.ci-sign-row figure {display:flex; align-items:center; justify-content:center; margin:0; width:411px;}
.ci-sign-row figure:last-child {width:401px;}
.ci-sign-row img {display:block; width:auto; max-width:100%; height:auto;}
.ci-color {padding:var(--space-100) 0; background:var(--color-secondary);}
.ci-color-inner {padding:var(--space-50); border-radius:16px; background:#fff;}
.ci-color-inner h4 {margin:0 0 var(--space-30); color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1; letter-spacing:-.03em;}
.ci-color-list {display:flex; gap:var(--space-20);}
.ci-color-list > li {display:flex; align-items:center; gap:var(--space-30); flex:1 1 0; min-width:0; padding:var(--space-30); border:1px solid #ddd; border-radius:8px;}
.ci-swatch {display:flex; flex-direction:column; align-items:center; gap:var(--space-10); flex:0 0 auto;}
.ci-swatch img {display:block; width:100px; height:100px;}
.ci-swatch strong {font-size:var(--font-size-20); font-weight:600; line-height:1; letter-spacing:-.03em; white-space:nowrap;}
.ci-swatch-blue {color:#006ab6;}
.ci-swatch-navy {color:#0c1f3d;}
.ci-swatch-slogan {color:#0e1f3b;}
.ci-color-list > li > ul {display:flex; flex-direction:column; gap:var(--space-10);}
.ci-color-list > li > ul li {position:relative; padding-left:var(--space-18); color:#505050; font-size:var(--font-size-18); font-weight:400; line-height:24px; letter-spacing:-.03em; white-space:nowrap;}
.ci-color-list > li > ul li:before {content:""; position:absolute; left:0; top:9px; width:6px; height:6px; border-radius:50%; background:var(--dark-color);}

/* business solution */
.biz-sol-head {margin-bottom:var(--space-60); text-align:center; color:var(--dark-color);}
.biz-sol-head h3 {font-size:var(--font-size-64); font-weight:700; line-height:1.3; letter-spacing:-.03em;}
.biz-sol-head p {margin-top:var(--space-10); font-size:var(--font-size-24); font-weight:500; line-height:1.3; letter-spacing:-.03em;}
.biz-sol-lead {margin:0 0 var(--space-40); color:#505050; font-size:var(--font-size-20); font-weight:400; line-height:1.8; letter-spacing:-.03em; text-align:center;}
.biz-sol-lead strong {color:var(--color-primary); font-weight:700;}
.biz-sol-list {display:flex; flex-wrap:wrap; gap:var(--space-20);}
.biz-sol-list > li {display:flex; flex:0 0 calc((100% - 40px) / 3); width:calc((100% - 40px) / 3);}
.biz-sol-list a {position: relative; display:flex; flex:1 1 auto; flex-direction:column; align-items:center; width:100%; padding:var(--space-50) var(--space-30); background:#fff; border-radius:16px; text-align:center; box-sizing:border-box;}
.biz-sol-list a:after {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #ddd; border-radius:16px;}
.biz-sol-list a > img {display:block; width:80px; height:80px;}
.biz-sol-list strong {display:block; margin:var(--space-20) 0 0; color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1.3; letter-spacing:-.03em;}
.biz-sol-list p {margin:var(--space-20) 0 0; color:#878787; font-size:var(--font-size-16); font-weight:400; line-height:1.6; letter-spacing:-.03em;}
.biz-sol-list span {display:inline-flex; align-items:center; gap:var(--space-10); margin-top:auto; padding-top:var(--space-30); color:#878787; font-size:var(--font-size-16); font-weight:600; line-height:1; letter-spacing:-.03em;}
.biz-sol-list i {position:relative; display:block; width:48px; height:48px; border-radius:50%; background:#eee;}
.biz-sol-list i img {position:absolute; left:50%; top:50%; width:16px; height:16px; margin:-8px 0 0 -8px;}
.biz-sol-list i .ic-on {display:none;}
.biz-sol-list a:hover:after {border-color:var(--color-primary); border-width:2px;}
.biz-sol-list a:hover strong {color:var(--color-primary);}
.biz-sol-list a:hover span {color:var(--dark-color);}
.biz-sol-list a:hover i {background:var(--color-primary);}
.biz-sol-list a:hover i .ic-off {display:none;}
.biz-sol-list a:hover i .ic-on {display:block;}

/* business service */
.biz-svc-head {margin-bottom:var(--space-60); text-align:center; color:var(--dark-color);}
.biz-svc-head h3 {font-size:var(--font-size-64); font-weight:700; line-height:1.3; letter-spacing:-.03em;}
.biz-svc-head p {margin-top:var(--space-10); font-size:var(--font-size-24); font-weight:500; line-height:1.3; letter-spacing:-.03em;}
.biz-svc-list {display:flex; flex-direction:column; gap:var(--space-80);}
.biz-svc-list > li {display:flex; align-items:center; gap:var(--space-100);}
.biz-svc-list figure {flex:0 0 calc(50% - 50px); width:calc(50% - 50px); margin:0; overflow:hidden; border-radius:24px; box-shadow:10px 10px 40px rgba(0,0,0,.15);}
.biz-svc-list figure img {display:block; width:100%; height:400px; object-fit:cover;}
.biz-svc-list p {flex:1 1 auto; min-width:0; color:#505050; font-size:var(--font-size-22); font-weight:400; line-height:1.8; letter-spacing:-.03em;}
.biz-svc-list p strong {color:var(--dark-color); font-weight:600;}
.biz-si .biz-svc-list figure {box-shadow:none;}

/* solution detail */
.sol-item {display:flex; align-items:flex-start; gap:var(--space-150);}
.sol-item + .sol-item {margin-top:var(--space-100); padding-top:var(--space-100); border-top:1px solid #ddd;}
.sol-item-head {flex:0 0 500px; width:500px; color:var(--dark-color);}
.sol-item-head h4 {font-size:var(--font-size-40); font-weight:700; line-height:1.3em; letter-spacing:-.03em;}
.sol-item-head p {max-width:380px; margin-top:var(--space-20); color:var(--color-secondary); font-size:var(--font-size-22); font-weight:500; line-height:1.6em; letter-spacing:-.03em;}
.sol-item-body {flex:1 1 auto; min-width:0;}
.sol-item-body figure {margin:0; overflow:hidden; border-radius:16px;}
.sol-item-body figure img {display:block; width:100%; height:auto; aspect-ratio:750 / 350; object-fit:cover;}
.sol-item-desc {margin-top:var(--space-30); padding-bottom:var(--space-30); border-bottom:1px solid #ddd; color:#505050; font-size:var(--font-size-20); font-weight:400; line-height:1.6em; letter-spacing:-.03em;}
.sol-point {margin-top:var(--space-30);}
.sol-point strong {display:inline-block; padding:6px var(--space-10); border-radius:6px; background:var(--color-primary); color:#fff; font-size:var(--font-size-16); font-weight:600; line-height:1em; letter-spacing:-.03em;}
.sol-point ul {display:flex; flex-direction:column; gap:var(--space-14); margin-top:var(--space-17);}
.sol-point li {position:relative; padding-left:var(--space-16); color:var(--dark-color); font-size:var(--font-size-18); font-weight:400; line-height:1.6em; letter-spacing:-.03em;}
.sol-point li:before {content:""; position:absolute; left:0; top:.65em; width:6px; height:6px; border-radius:50%; background:#ccc;}

/* portfolio customer */
.customer-list {display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-40) var(--space-20);}
.customer-list li {overflow:hidden; border:1px solid #ddd; border-radius:8px; background:#fff;}
.customer-logo {display:flex; align-items:center; justify-content:center; height:150px; padding:var(--space-30) var(--space-42) var(--space-20); border-bottom:1px solid #ddd; box-sizing:border-box;}
.customer-logo img {display:block; max-width:100%; max-height:100%; object-fit:contain;}
.customer-list strong {display:block; padding:var(--space-24) var(--space-10); color:#505050; font-size:var(--font-size-15); font-weight:400; line-height:1.3em; letter-spacing:-.03em; text-align:center; word-break:keep-all;}

/* esg */
.page-esg .biz-sol-list a {background: url('/images/sub/bg-esg.png') no-repeat center center; background-size: 70%;}
.page-esg .biz-sol-list a:after {pointer-events: none;}
.page-esg .biz-sol-list strong {margin: 0 0 5px; font-size: var(--font-size-32); line-height: 1.2em;}
.page-esg .biz-sol-list small {display: block; color: #878787; font-size: var(--font-size-14);}
.esg-title {padding-bottom: var(--space-30); margin-bottom: var(--space-30); border-bottom: 1px solid #ddd; width: 100%;}
.esg-text .quote {font-size: var(--font-size-20); font-weight: 600; color: var(--dark-color); line-height: 1.5em;}