@charset "utf-8";
.root_daum_roughmap .wrap_map, .root_daum_roughmap, .direction-map iframe {width: 100% !important; height: 100% !important;}

.about-company-boxes {display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-40);}
.about-company-box {display: flex; gap: var(--space-15); flex-direction: column;  padding: var(--space-30); border-radius: var(--radius-20); border-left: 2px solid var(--primary-color); background: #FFF; box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.08);}
.about-company-box:last-child {grid-column: span 2;}
.about-company-box .txt {display: flex; flex-direction: column; justify-content: center; flex: 1; padding: var(--space-20); background: #fafafa; border-radius: 8px;}
.sec-vision {padding: var(--space-150) 0; margin: var(--space-150) 0; background: linear-gradient(90deg, rgba(0, 68, 194, 0.05) 0%, rgba(68, 178, 232, 0.05) 100%);}
.cert-list {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-40);}
.cert-list .img {position: relative; margin-bottom: var(--space-25);}
.cert-list .img:after {content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 1px solid #ddd;}

.page-history {display: flex; flex-direction: column; gap: vaR(--space-100); position: relative;}
.page-history:before {content: ''; position: absolute; top: 0; height: 100%; left: 50%; width: 1px; background: linear-gradient(to bottom, var(--primary-color) 80%, transparent);}
.page-history section {display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px var(--history-gap);}
.history-year {position: relative; height: fit-content; text-align: right; font-size: var(--font-size-40); font-weight: 700; color:#111;}
.page-history section:nth-child(even) .history-year {text-align: left; order: 1;}
.history-year:before {content: ''; position: absolute; top: 50%; right: calc(var(--history-gap) / -2); width: 23px; height: 23px; transform: translate(50%, -50%); background: url('/images/sub/history-circle.svg') no-repeat center center / contain;}
.page-history section:nth-child(even) .history-year:before {right: auto; left: calc(var(--history-gap) / -2); transform: translate(-50%, -50%);}
.history-month {position: relative; width: 40px; height: fit-content; margin-right: var(--space-25); font-size: var(--font-size-18); font-weight: 600; color: var(--dark-color);}
.history-year:after {content: ''; z-index: -1;position: absolute; top: 50%; left: calc(100% + var(--history-gap) / 2); width: clamp(25px, calc(60 / var(--inner) * 100vw), 60px); border-top: 1px dashed #ccc;}
.page-history section:nth-child(even) .history-year:after {left: auto; right: calc(100% + var(--history-gap) / 2);}

.history-item {display: flex; padding-left: clamp(25px, calc(60 / var(--inner) * 100vw), 60px);}
.page-history section:nth-child(even) .history-item {flex-direction: row-reverse; text-align: right; padding-left: 0; padding-right: clamp(25px, calc(60 / var(--inner) * 100vw), 60px);}
.history-item li:not(:last-child) {margin-bottom: var(--space-15);}
.history-list {display: flex; flex-direction: column; gap:calc( var(--space-20) + var(--space-15))}

.greeting-img {border-radius: 400px; overflow: hidden; margin-bottom: var(--space-100);}
.greeting-cnt {display: flex; gap: 20px 35px; justify-content: space-around;}
.greeting-txt {display: flex; flex-direction: column; gap: var(--space-40);}
.partner-list {display: grid; grid-template-columns: repeat(5, 1fr); gap: var(--space-30);}
.partner-list .item {position: relative; display: flex; justify-content: center; align-items: center; border-radius: 8px; overflow: hidden;}
.partner-list .item:after {content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border: 1px solid #ddd; border-radius: 8px; }
.partner-list  p {margin-top: var(--space-20); line-height: 1.375em;}

.page-business-solution section:not(:first-child) {padding: var(--space-150) 0;}
.page-business-solution section:nth-child(even) {background: linear-gradient(90deg, rgba(0, 68, 194, 0.05) 0%, rgba(68, 178, 232, 0.05) 100%), #FFF;}
.sec-solution-welcome {padding-bottom: var(--space-150);}
.sec-solution-welcome .contain {gap: 25px 35px;}
.sec-solution-welcome .img {max-width: 468px;}
.solution-feature-cnt {display: flex; flex-direction: column; gap: var(--space-40);}
.solution-feature-group {display: flex; flex-direction: column; gap: var(--space-25); width: 100%;}
.solution-feature-tit {padding: 8px; border-radius: 50px; font-size: var(--font-size-24); font-weight: 700; line-height: 1.3333em; color: #fff; text-align: center;}
.solution-feature-group.is-main .solution-feature-tit {background: var(--gradient-color);}
.solution-feature-group.is-sub .solution-feature-tit {background: linear-gradient(90deg, #44b2e8 0%, #2dabe9 100%);}
.solution-feature-list {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-25);}
.solution-feature-item {display: flex; flex-direction: column; gap: 16px; padding: var(--space-30); border: 1px solid #ddd; border-radius: 16px; background: #fff;}
.solution-feature-item .tit {display: flex; flex-direction: column; gap: var(--space-15); padding-bottom: 16px; border-bottom: 1px solid #eee;}
.solution-feature-item .num {display: flex; justify-content: center; align-items: center; width: 36px; height: 22px; border-radius: 50px; font-size: var(--font-size-16); font-weight: 700; line-height: 1.25em; color: #fff;}
.solution-feature-group.is-main .solution-feature-item .num {background: var(--primary-color);}
.solution-feature-group.is-sub .solution-feature-item .num {background: var(--secondary-color);}
.solution-feature-item .dot-list {display: flex; flex-direction: column; gap: 8px; font-size: var(--font-size-16); line-height: 1.625em; color: #454545;}
.solution-feature-item .dot-list li {text-indent: -1.2em; padding-left: 1em;}
.solution-feature-group.is-main .solution-feature-item .dot-list li:before {content: '•'; margin-right: 10px; color: var(--primary-color);}
.solution-feature-group.is-sub .solution-feature-item .dot-list li:before {content: '•'; margin-right: 10px; color: var(--secondary-color);}

.solution-consulting-boxes {display: flex; flex-direction: column; gap: var(--space-25);}
.solution-consulting-box {display: flex; padding: var(--space-40); border-radius: var(--radius-16); border: 1px solid #ddd; background: #fff;}
.solution-consulting-box .tit {display: flex; align-items: center; gap: var(--space-40);}
.solution-consulting-box .chk-list {border-left: 1px dashed #ddd; padding-left: var(--space-40); margin-left: var(--space-40);}
.solution-consulting-box .num {display: flex; align-items: center; justify-content: center; width: clamp(30px, calc(36 / var(--inner) * 100vw), 36px); height: clamp(30px, calc(36 / var(--inner) * 100vw), 36px); border-radius: 8px; font-size: var(--font-size-16); font-weight: 700; line-height: 1.25em; color: #fff; background: var(--primary-color); font-family: 'Play', sans-serif;}
.solution-consulting-box:nth-child(even) .num {background: var(--secondary-color);}
.solution-consulting-box h4 {margin-bottom: clamp(6px, calc(12 / var(--inner) * 100vw), 12px);}
.chk-list li {display: flex; gap: 10px; font-size: var(--font-size-18); line-height: 1.777em;}
.chk-list li:not(:last-child) {margin-bottom: var(--space-15);}
.chk-list li:before {content: ''; display: block; width: 16px; height: 1.777em; background: url('/images/sub/icon-chk.svg') no-repeat center center / contain;}
.solution-consulting-box:nth-child(even) .chk-list li:before {background-image: url('/images/sub/icon-chk2.svg');}

.reference-tab-menu {margin-bottom: var(--space-60);}
.reference-tab-menu .swiper {margin: 0 -5px;}
.reference-tab-menu ul {display: flex; width: max-content;}
.reference-tab-menu li {flex: 1 1 auto; width: auto; padding: 0 5px;}
.reference-tab-menu a {display: block; padding: 8px var(--space-25); background: #eee; border-radius: 100px; font-size: var(--font-size-18); font-weight: 600; line-height: 1.5556em; color: #bebebe; text-align: center;}
.reference-tab-menu .active a {background: var(--primary-color); color: #fff;}
.business-solution-reference .tit {display: flex; align-items: center; gap: var(--space-15); margin-bottom: var(--space-30); font-size: var(--font-size-24); font-weight: 600; line-height: 1.333em; color: var(--dark-color);}
.business-solution-reference .tit:before {content: ''; display: block; width: 4px; height: 20px; background: var(--primary-color); border-radius: 100px; }
.business-solution-reference .group:not(:last-child) {margin-bottom: var(--space-100);}

.page-business section {padding: var(--space-150) 0;}
.page-business section:first-child {padding-top: 0;}
.page-business section:nth-child(even) {background: linear-gradient(90deg, rgba(0, 68, 194, 0.05) 0%, rgba(68, 178, 232, 0.05) 100%), #FFF;}
.page-business .contain {display: flex; gap: 25px clamp(35px, calc(80 / var(--inner) * 100vw), 80px);}
.page-business section:nth-child(even) .contain {flex-direction: row-reverse;}
.business-photo {max-width: 660px; width: 47.5%; height: fit-content; border-radius: var(--radius-24); overflow: hidden;}
.business-txt {display: flex; flex-direction: column; justify-content: center; flex: 1; min-width: 0;}
.business-txt .tag {width: fit-content; padding: 4px 16px; margin-bottom: var(--space-25); border-radius: 50px; background: rgba(0, 59, 168, 0.05); font-size: var(--font-size-14); font-weight: 500; color: var(--primary-color);}
.business-txt h3 {margin-bottom: 8px; font-size: var(--font-size-28); font-weight: 700; color: var(--dark-color); line-height: 1.2857em;}
.business-txt p {color: #999; margin-bottom: var(--space-30);}
.business-photo.slider {border-radius: 0;}
.business-photo .slider-for {position: relative; margin-bottom: 10px;}
.business-photo .slider-for .slick-arrow {position: absolute; z-index: 1; border: 0; top: 50%; transform: translateY(-50%); left: 10px; width: 36px; height: 36px; background: url('/images/sub/slider-arrow.svg') no-repeat center center / contain; overflow: hidden; text-indent: -9999em;}
.business-photo .slider-for .slick-arrow.slick-next {left: auto; right: 10px; transform: translateY(-50%) rotate(180deg);}
.business-photo .slider-for .img {border-radius: var(--radius-24); overflow: hidden;}
.business-photo .slider-nav .slick-list {margin: 0 -5px;}
.business-photo .slider-nav .slick-slide {margin: 0 5px;}
.business-photo .slider-nav .slick-slide .img {border-radius: var(--radius-16); overflow: hidden; cursor: pointer;}
.page-benefit {display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-30);}
.benefit-box {padding: var(--space-40) 15px; border-radius: var(--radius-16); background: rgba(0, 59, 168, 0.04); color:#686868;}
.benefit-box:nth-child(even) {background: #FAFAFA;;}
.benefit-box .tit {margin:var(--space-30) 0 12px; font-size: var(--font-size-20); font-weight: 600; line-height: 1.4em; color: var(--dark-color);}