/* Header */
.header {position: absolute; z-index: 50; width: 100%; left: 0; top: 0;}
.hd-wrap {display: flex; align-items: center; justify-content: space-between; height: 136px;}

.full-menu {position: fixed; top: -100vh; left: 0; width: 100%; height: 100vh; z-index: 51; background: url('/source/img/menu-bg.png') no-repeat center/cover; transition: 1s;}
.full-menu.on {top: 0;}
.full-menu-close {display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; background-color: transparent; border: none; position: absolute; top: 40px; right: 260px; transition: .3s; z-index: 2;}
.full-menu-close span {position: relative;}
.full-menu-close span::before {content: ''; width: 42px; height: 2px; background-color: var(--black); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%) rotate(45deg);}
.full-menu-close span::after {content: ''; width: 42px; height: 2px; background-color: var(--black); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%) rotate(-45deg);}
.full-menu-close:hover {transform: rotate(90deg);}

.full-menu .wrapper {height: 100%; display: flex; align-items: center;}
.full-menu .menu-wrap {display: flex; align-items: flex-start; max-height: 92vh; overflow-y: auto;}
.full-menu .menu-logo {width: 320px;}
.full-menu .f-menu {width: calc(100% - 320px);}
.full-menu .depth1 {display: flex; align-items: flex-start; flex-wrap: wrap; gap: 87px 0;}
.full-menu .depth1 > li {width: 33.33%; position: relative; padding-left: 56px;}
.full-menu .depth1 > li::before {content: ''; width: 3px; height: 77px; background-color: var(--main); position: absolute; top: 0; left: 0;}
.full-menu .depth1 > li > a {font-weight: 800; font-size: 28px; line-height: 1.5;}
.full-menu .depth2 {padding-top: 32px;}
.full-menu .depth2 > li {}
.full-menu .depth2 > li ~ li {margin-top: 4px;}
.full-menu .depth2 > li > a {font-weight: 500; font-size: 18px; color: #333333; line-height: 2; letter-spacing: -1px;}

.top-btn-wrap {position: fixed; bottom: 20px; right: 320px; z-index: 20; display: none; transition: bottom .5s;}
.top-btn-wrap.end {bottom: 610px;}

/* Footer */
.footer {padding: 64px 0; border-top: 1px solid #eeeeee;}
.ft-top {display: flex; align-items: flex-start; justify-content: space-between;}
.ft-gnb {}
.ft-gnb .depth1 {display: flex; align-items: flex-start; gap: 40px;}
.ft-gnb .depth1 > li {text-align: center;}
.ft-gnb .depth1 > li > a {font-weight: 700; font-size: 18px; color: var(--black); line-height: 1.333;}
.ft-gnb .depth2 {padding-top: 32px;}
.ft-gnb .depth2 > li {}
.ft-gnb .depth2 > li ~ li {margin-top: 4px;}
.ft-gnb .depth2 > li > a {font-weight: 400; font-size: 16px; line-height: 2.5;}

.ft-bot {display: flex; align-items: flex-start; justify-content: space-between; border-top: 1px solid #eeeeee; margin-top: 40px; padding-top: 40px;}
.ft-bot .left-ul {display: flex; align-items: center; gap: 14px;}
.ft-bot .left-ul li {font-weight: 500; font-size: 16px; color: var(--black); line-height: 1.5; position: relative;}
.ft-bot .left-ul li::before {content: '|'; font-weight: 500; font-size: 16px; color: var(--black); line-height: 1.5; position: absolute; top: 0; right: -10px;}
.ft-bot .left-ul li:last-child::before {display: none;}
.ft-bot .copyright {font-weight: 500; font-size: 16px; color: var(--black); line-height: 1.5;}

.ft-bot .right-ul {display: flex; align-items: center; gap: 32px;}
.ft-bot .right-ul li {}
.ft-bot .right-ul li a {font-weight: 500; font-size: 16px; line-height: 1.5; color: var(--black);}

/* Main */
.main-visual {height: 100vh; background: url('/source/img/main-visual-img.png') no-repeat center/cover; position: relative; overflow: hidden;}
.main-visual::before {content: ''; width: 648px; height: 318px; background: url('/source/img/main-visual-icon.png') no-repeat center; position: absolute; right: 55px; bottom: -30px;}
.main-visual .wrapper {height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.main-visual-text {text-align: center; font-weight: 600; font-size: 54px; line-height: 1.35; color: var(--white); margin-bottom: 40px;}
.main-visual-text span {color: var(--main);}

.main-sec {}
.main-sec:not(:first-child) {padding-top: 200px;}
.main-sec-title-box {text-align: center;}
.main-sec-title-box .t1 {font-weight: 800; font-size: 45px; color: var(--black); line-height: 1.35; letter-spacing: -1px;}
.main-sec-title-box .t2 {font-weight: 500; font-size: 24px; color: var(--black); line-height: 1.5; margin-top: 24px; letter-spacing: -1px;}

.main-sec-ct {margin-top: 100px;}

.main-esg {padding: 100px 0 200px; background: url('/source/img/main-esg-bg.png') no-repeat center/cover;}
.main-esg-list {}
.main-esg-item {display: flex; justify-content: flex-end;}
.main-esg-item ~ .main-esg-item {margin-top: 100px;}
.main-esg-item:nth-child(2n) {justify-content: flex-start;}
.main-esg-item .card {width: 723px; max-width: 100%;}

.main-recruitment {padding: 200px 0; background: url('/source/img/main-recruitment-bg.png') no-repeat center/cover; background-attachment: fixed;}
.main-recruitment-list {display: flex; align-items: flex-start; gap: 32px; flex-wrap: wrap}
.main-recruitment-item {width: calc((100% - 96px) / 4);}

.main-board-wrap {margin-top: 32px;}
.main-board-tab {display: flex; align-items: center; gap: 40px; justify-content: center;}
.main-board-tab .i-btn.type02.on {background-color: var(--main); color: var(--white); border-color: var(--main); font-weight: 700;}

.main-board {padding-top: 90px; padding-bottom: 200px;}
.main-board .board {display: none;}
.main-board .board:first-child {display: block;}

.main-board .board-item.no-data {justify-content: center; font-weight: 600; font-size: 14px;}

.bs-area {display: flex; align-items: center;}
.bs-area-left {width: 388px;}
.bs-area-content {display: none;}
.bs-area-content:first-child {display: block;}
.bs-area-content .t1 {font-weight: 800; font-size: 25px; color: var(--black); letter-spacing: -0.5px; padding-bottom: 20px;}
.bs-area-content .t2 {font-weight: 500; font-size: 18px; color: #999999; letter-spacing: -0.5px;}
.bs-area-content .view-more {font-weight: 500; font-size: 16px; color: var(--black); line-height: -0.5px; display: flex; align-items: center; gap: 16px; height: 44px; width: 187px; border: 1px solid var(--black); border-radius: 21px; justify-content: center; margin-top: 50px;}
.bs-area-content .view-more span:first-child {}
.bs-area-content .view-more .plus {display: flex; align-items: center; justify-content: center; width: 13px; height: 13px; border-radius: 50%; background-color: var(--black); position: relative;}
.bs-area-content .view-more .plus::before {content: ''; width: 1px; height: 5px; background-color: var(--white); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
.bs-area-content .view-more .plus::after {content: ''; width: 5px; height: 1px; background-color: var(--white); position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
.bs-area-right {width: calc(100% - 388px);}
.bs-slide-wrap {}
.bs-slide-wrap .swiper-container {}
.bs-slide-card {width: calc((100% - 60px) / 3); margin-right: 30px;}
.bs-slide-card .inner {display: block; position: relative;}
.bs-slide-card .img-box {position: relative; height: 0; padding-bottom: 143.513%; border-radius: 30px; overflow: hidden; transition: 1s;}
.bs-slide-card .img-box::before {content: ''; width: 100%; height: 100%; background-color: #005fd0; position: absolute; top: 0; left: 0;}
.bs-slide-card .img-box img {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%; transition: 1s;}
.bs-slide-card .t {position: absolute; bottom: 0; left: 0; letter-spacing: -0.5px; width: 100%; text-align: center; font-weight: 800; font-size: 18px; color: var(--white); padding: 0 34px; padding-bottom: 45px; text-align: center;}

.swiper-slide-active .img-box {border-radius: 134px;}
.swiper-slide-active .img-box img {opacity: 0.3;}
.swiper-slide-active .t {font-weight: 800; font-size: 35px; opacity: 0.5; transition: 1s;}

.sustainablity {background: url('/source/img/sustainablity-bg.png') no-repeat center/cover; padding: 100px 0 168px;}
.sustainablity-list {display: flex; align-items: flex-start; justify-content: space-between; margin-top: 58px;}
.sustainablity-item {width: 198px; height: 198px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 16px; background-color: var(--white);}
.sustainablity-item .icon {}
.sustainablity-item .t {padding-top: 16px; font-weight: 500; font-size: 20px; color: var(--black); letter-spacing: -0.5px;}

/* Sub */
/* Common */
.sb-top {display: flex; height: 562px; /*background-attachment: fixed!important;*/}
.sb-top .wrapper {height: 100%; display: flex; align-items: flex-end;}
.sb_top_ct {padding-bottom: 160px;}
.sb_top_ct .sb-title {font-weight: 800; font-size: 54px; color: var(--white); line-height: 1.35; padding-top: 19px;}
.sb_top_ct .sb-text {font-weight: 500; font-size: 20px; padding-top: 19px; line-height: 1.5; color: var(--white);}
.sb_top_ct.black .sb-title {color: var(--black);}
.sb_top_ct.black .sb-text {color: var(--black);}

.sb-location {border-bottom: 1px solid #EEEEEE; background-color: var(--white);}
.sb-location.scrolled {position: fixed; top: 0; left: 0; width: 100%; z-index: 10;}

.sub_contents {padding: 150px 0 200px;}

.sub-section {}
.sub-section ~ .sub-section {padding-top: 100px;}

.sub-title-box {text-align: center; padding-bottom: 100px;}
.sub-title-box.pb50 {padding-bottom: 50px;}
.sub-title-box.pb0 {padding-bottom: 0;}
.sub-title-box .t1 {font-weight: 800; font-size: 35px; color: #103E74; line-height: 1.5;}
.sub-title-box .t2 {font-weight: 500; font-size: 20px; color: var(--black); line-height: 1.5; padding-top: 16px;}

.sub-title-box .tab-ul {display: flex; align-items: center; justify-content: center; gap: 50px; padding-bottom: 50px;}
.sub-title-box .tab-ul li {position: relative;}
.sub-title-box .tab-ul li::before {content: '|'; font-weight: 500; font-size: 20px; color: var(--black); position: absolute; top: 0; right: -25px;}
.sub-title-box .tab-ul li:last-child::before {display: none;}
.sub-title-box .tab-ul li a {display: block; font-weight: 500; font-size: 20px; color: var(--black);}
.sub-title-box .tab-ul li.on a {font-weight: 800;}

.slide-img-box {padding-bottom: 50px;}
.slide-img-box .caution {font-weight: 700; font-size: 15px; text-align: center; color: var(--black); display: none;}
.slide-img-box .slide-img {}
.slide-img-box .slide-img.shadow {box-shadow: 3px 2px 27px rgba(0,0,0,0.08);}

.sub-text-box {}
.sub-text-box.pb50 {padding-bottom: 50px;}
.sub-text-box .txt {font-weight: 700; font-size: 20px; color: var(--black); letter-spacing: -1px;}
.sub-text-box .box-txt {padding-left: 26px; position: relative;}
.sub-text-box .box-txt::before {content: ''; width: 14px; height: 14px; background-color: var(--main); position: absolute; top: 5px; left: 0;}
.sub-text-box .cont-txt {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.388; padding-top: 26px;}

.text-list {}
.text-list .txt {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.38;}
.text-list .txt.dot {position: relative; padding-left: 26px;}
.text-list .txt.dot::before {content: ''; width: 5px; height: 5px; border-radius: 50%; background-color: var(--black); position: absolute; top: 9px; left: 0;}
.text-list .txt.bar {padding-left: 25px; position: relative;}
.text-list .txt.bar::before {content: ''; width: 5px; height: 1px; background-color: var(--black); position: absolute; top: 10px; left: 0;}

.table-ct {}
.table-ct .caution {font-weight: 700; font-size: 15px; text-align: center; color: var(--black); display: none;}
.table-ct table {width: 100%;}
.table-ct table thead {}
.table-ct table thead tr {}
.table-ct table thead th {border: 1px solid #e5e5e5; background-color: #d8eaff; height: 38px; font-weight: 500; font-size: 18px; color: var(--black);}
.table-ct table thead .type02 th {background-color: #f5f5f5;}
.table-ct table tbody {}
.table-ct table tbody tr {}
.table-ct table tbody td {text-align: center; border: 1px solid #e5e5e5; font-weight: 500; font-size: 18px; color: var(--black); height: 38px;}

/* 회사소개 > 인사말 */
#message .sub_contents {background: url('/source/img/message-page-bg.png') no-repeat center/cover;}
.message-wrap {display: flex; align-items: flex-start; width: 100%;}
.message-left {width: 44.6875%;}
.message-left .t1 {font-weight: 800; font-size: 35px; color: var(--main); line-height: 1.5;}
.message-left .t2 {font-weight: 500; font-size: 20px; color: var(--black); line-height: 1.5; padding-top: 16px;}
.message-right {width: 55.3125%;}
.message-right .t1 {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.5; padding-bottom: 20px;}
.message-right .t2 {display: flex; align-items: center; gap: 16px; font-weight: 700; font-size: 20px; color: var(--black); line-height: 1.5;}
.message-right .t2 span:last-child {font-size: 25px;}

/* 회사소개 > 조직도 */
#organization .sub_contents {background: url('/source/img/organization-page-bg.png') no-repeat center/cover;}
.organ-wrap { padding: 0 145px;}
.organ-row1 {display: flex; align-items: center; justify-content: center;}
.organ-circle {display: flex; align-items: center; justify-content: center; width: 188px; height: 188px; border-radius: 50%; background: #005FD0; background: linear-gradient(150deg,rgba(0, 95, 208, 1) 15%, rgba(92, 0, 208, 1) 100%); font-weight: 700; font-size: 25px; color: var(--white);}

.organ-row2 {padding: 120px 0 50px; display: flex; align-items: center; justify-content: space-between; position: relative;}
.organ-row2::before {content: ''; width: 1px; height: 100%; background-color: #d9d9d9; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.organ-row2::after {content: ''; width: 100%; height: 1px; background-color: #d9d9d9; position: absolute; bottom: 91.5px; left: 50%; transform: translateX(-50%);}
.organ-col {position: relative; z-index: 2;}
.organ-row2 .organ-col {width: 259px; max-width: 100%;}
.organ-card {border-radius: 8px; display: flex; align-items: center; justify-content: center; font-weight: 500; font-size: 22px; color: var(--white); width: 100%; flex-direction: column; position: relative; z-index: 2;}
.organ-card.type01 {height: 83px;}
.organ-card.type01 span {font-weight: 500; font-size: 18px;}
.organ-card.type01.c01 {background-color: #00316B;}
.organ-card.type01.c02 {background-color: #46009E;}
.organ-card.type01.c03 {background-color: #005FD0;}
.organ-card.type02 {height: 60px; font-size: 18px; background-color: #00ABD0;}

.organ-row3 {display: flex; align-items: flex-start; justify-content: space-between; position: relative;}
.organ-row3::before {content: ''; width: calc(100% - 259px); height: 1px; background-color: #d9d9d9; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.organ-row3 .organ-col {width: 259px; max-width: 100%; padding-top: 50px; position: relative;}
.organ-row3 .organ-col::before {content: ''; width: 1px; height: 183px; background-color: #d9d9d9; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.organ-depth2 {padding-top: 50px;}
.organ-depth2 .organ-card ~ .organ-card {margin-top: 16px;}

/* 회사소개 > 연혁 */
#history .sub_contents {background: url('/source/img/history-page-bg.png') no-repeat center/cover;}
.history-wrap {position: relative;}
.history-wrap::before {content: ''; width: 1px; height: 98%; background-color: var(--main); position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.history-li {display: flex; align-items: flex-start;}
.history-li ~ .history-li {margin-top: 100px;}
.history-li.left {}
.history-li.right {flex-direction: row-reverse;}
.history-li > * {padding: 0 60px; width: 50%;}
.history-li .year {font-weight: 800; font-size: 35px; color: var(--main); position: relative;}
.history-li .year::before {content: ''; width: 40px; height: 40px; border-radius: 50%; border: 10px solid var(--main); background-color: var(--white); box-shadow: 0 2px 10px rgba(0,95,208,0.5); position: absolute; top: 0; right: -20px;}
.history-li.right .year::before {left: initial; left: -15px; width: 30px; height: 30px; border: 8px solid var(--main); top: 4px;}
.history-li.left .year {text-align: right;}
.history-li .cont {}
.history-li.right .cont {text-align: right;}
.history-li .cont .t {display: inline-block; font-weight: 500; font-size: 18px; color: var(--black); line-height: 2; position: relative; padding-left: 20px;}
.history-li .cont .t::before {content: ''; width: 3px; height: 3px; border-radius: 50%; background-color: var(--black); position: absolute; top: 16px; left: 0;}

/* 회사소개 > 업/면허 보유 현황 */
.concession-wrap {display: flex; align-items: flex-start; flex-wrap: wrap; gap: 40px;}
.concession-li {width: calc((100% - 120px) / 4);}
.concession-img {border-radius: 8px; overflow: hidden; border: 1px solid var(--d9); display: flex; align-items: center; justify-content: center; position: relative; height: 0; padding-bottom: 125.79%;}
.concession-img img {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%;}
.concession-img p {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-weight: 500; font-size: 18px; color: #999;}
.concession-img.no-img {background-color: #EEEEEE;}
.concession-t {font-weight: 500; font-size: 18px; text-align: center; padding-top: 10px;}

/* 회사소개 > 주요고객사 */
.partners-wrap {}
.partners-list {margin: -20px;}
.partners-item {padding: 20px;}
.partners-item .logo-box {border: 1px solid #eeeeee; display: flex; align-items: center; justify-content: center; height: 200px; border-radius: 8px;}

/* 회사소개 > 오시는 길 */
.map-box {}
.map-box .map {border-radius: 24px; overflow: hidden;}
.map-box .map iframe {width: 100%;}
.map-info {margin-top: 50px; display: flex; align-items: center; border-radius: 24px; background-color: #eeeeee; padding: 50px 67px;}
.map-info > * {width: 50%;}
.map-info .left {font-weight: 700; font-size: 35px; color: #333333; line-height: 1.5;}
.map-info .info-list {}
.map-info .info-item {display: flex; align-items: center; gap: 12px;}
.map-info .info-item ~ .info-item {margin-top: 8px;}
.map-info .info-item .icon {display: flex; align-items: center; justify-content: center; width: 28px; height: 28px;}
.map-info .info-item .t {font-weight: 500; font-size: 18px; color: #333333; line-height: 1.5;}

/* 사업영역 > Facility 종합 관리 */
#facility .ethics-text-box {margin-bottom: 0;}
#facility .slide-img-box {padding-bottom: 0;}
.features-wrap {border-top: 2px solid var(--black); border-bottom: 2px solid var(--black);}
.features-item {padding: 40px 45px; display: flex; align-items: center; border-bottom: 1px solid #c8c8c8;}
.features-item:last-child {border-bottom: none;}
.features-left {display: flex; align-items: center; gap: 40px; position: relative; width: 396px;}
.features-left::before {content: ''; width: 10px; height: 10px; background: url('/source/img/facility-arr.png') no-repeat center; position: absolute; top: 50%; right: 57px; transform: translateY(-50%);}
.features-left .icon {width: 70px;}
.features-left .txt {}
.features-left .txt .t1 {font-weight: 700; font-size: 14px; color: #666; letter-spacing: -1px; line-height: 1; padding-bottom: 6px;}
.features-left .txt .t2 {font-weight: 700; font-size: 20px; color: var(--black); letter-spacing: -1px;}
.features-right {width: calc(100% - 394px);}
.features-right .txt {border-radius: 16px; background-color: #f5f5f5; padding: 21.5px 22px;}
.features-right .txt .t {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.3888;}

.facility-service-wrap {text-align: center;}
.service-mo-wrap {display: none;}
.service-mo-wrap {}
.service-mo-wrap .title {font-weight: 700; font-size: 23px; color: var(--black);}
.service-mo-item {padding: 10px 20px; border-left: 2px solid transparent;}
.service-mo-item:nth-child(1) {border-color: #92cfe3;}
.service-mo-item:nth-child(2) {border-color: #5ab3e6;}
.service-mo-item:nth-child(3) {border-color: #0081b7;}
.service-mo-item:nth-child(4) {border-color: #0065a9;}
.service-mo-item ~ .service-mo-item {margin-top: 20px;}
.service-mo-item .t1 {font-weight: 700; font-size: 20px; color: var(--black); letter-spacing: -1px; padding-bottom: 10px;}
.service-mo-item .t2 {font-weight: 500; font-size: 18px; color: var(--black); letter-spacing: -1px;}

.facility-process-wrap {border: 1px solid #c8c8c8; text-align: center; padding: 60px 0;}
.process-mo-wrap {display: none;}
.process-mo-list {}
.process-mo-item ~ .process-mo-item {margin-top: 20px;}
.process-mo-item .t1 {font-weight: 700; font-size: 20px; color: var(--black); letter-spacing: -1px; margin-bottom: 10px;}
.process-mo-item:nth-child(1) .t1 {color: #82adfc;}
.process-mo-item:nth-child(2) .t1 {color: #5d97d2;}
.process-mo-item:nth-child(3) .t1 {color: #3676bc;}
.process-mo-item:nth-child(4) .t1 {color: #0c5caa;}
.process-mo-item .t2 {font-weight: 500; font-size: 18px; color: var(--black); letter-spacing: -1px;}

.facility-skill-wrap {display: flex; gap: 12px; align-items: flex-start; height: 300px;}
.facility-skill-item {transition: .5s; width: calc((100% - 556px) / 4); position: relative; height: 100%; overflow: hidden; border-radius: 16px; cursor: pointer;}
.facility-skill-img {position: absolute; top: 0; right: 0; width: 508px; height: 100%;}
.facility-skill-img img {position: absolute; top: 0; right: -18px; width: 100%; transition: .3s;}
.facility-skill-info {position: relative; z-index: 2; height: 100%; display: flex; flex-direction: column; justify-content: space-between; padding: 50px 20px; justify-content: flex-end; background-color: rgba(245,245,245,0.1); transition: .3s;}
.facility-skill-top {}
.facility-skill-top .icon {margin-bottom: 7px; opacity: 0;}
.facility-skill-top .t1 {font-weight: 700; font-size: 20px; color: var(--black); letter-spacing: -1px; transition: .3s;}
.facility-skill-bot {display: none;}
.facility-skill-bot .t1 {font-weight: 500; font-size: 18px; color: var(--white);}

.facility-skill-item.on {width: 508px;}
.on .facility-skill-img img {right: 0;}
.on .facility-skill-info {justify-content: space-between; padding: 48px 43px 50px; background: #005FD0; background: linear-gradient(90deg,rgba(0, 95, 208, 1) 25%, rgba(0, 95, 208, 0.29) 100%);}
.on .facility-skill-top .icon {opacity: 1;}
.on .facility-skill-top .t1 {color: var(--white);}
.on .facility-skill-top .t1 br {display: none;}
.on .facility-skill-bot {display: block;}

/* 사업영역 > Clean Room 관리 */
#cleanRoom .ethics-text-box {margin-bottom: 0;}
#cleanRoom .slide-img-box {padding-bottom: 0;}
.clean-skill-wrap {}
.clean-skill-item {display: flex; align-items: center; justify-content: space-between; padding: 50px 0; border-bottom: 1px solid #c8c8c8;}
.clean-skill-left {}
.clean-skill-left .t1 {font-weight: 700; font-size: 23px; color: var(--main); letter-spacing: -1px;}
.clean-skill-left .t2 {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.44; padding-top: 40px;}
.clean-skill-right {}
.clean-skill-img {border-radius: 16px; overflow: hidden;}
.clean-skill-img img {}

/* 사업영역 > 건물종합관리 */
.building-wrap {}
.building-title-img {border-radius: 16px; overflow: hidden;}
.building-icon-list {display: flex; flex-wrap: wrap; gap: 42px; padding-top: 50px;}
.building-icon-item {width: calc((100% - 84px) / 3); height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; background-color: #f5f5f5; padding: 48px 10px;}
.building-icon-img {width: 70px; height: 70px; display: flex; align-items: center; justify-content: center;}
.building-icon-item .t1 {font-weight: 600; font-size: 20px; color: var(--black); padding-top: 20px;}
.building-icon-item .t2 {font-weight: 500; font-size: 18px; color: var(--black); padding-top: 15px;}

/* 지속가능경영 > 안전보건경영 */
#safety .slide-img-box {padding-bottom: 0;}
.safety-bubble-box {padding-bottom: 100px;}
.bubble-box {display: flex; align-items: center; border: 1px solid #c8c8c8; border-radius: 47px; overflow: hidden;}
.bubble-box .b-title {border-radius: 46px; background-color: var(--main); font-weight: 600; font-size: 20px; color: var(--white); padding: 23px 0; width: 12.85%; display: flex; align-items: center; justify-content: center;}
.bubble-box .b-cont {width: 87.15%; padding-left: 38px; font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.38; letter-spacing: -1px;}

.safety-graph01 {position: relative;}
.safety-graph01::before {content: ''; width: 334px; height: 327px; background: url('/source/img/safety-graph01-center.png') no-repeat center; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); background-size: 100%;}
.safety-graph01-row {display: flex; align-items: flex-start; justify-content: center;}
.safety-graph01-row:nth-child(1) {}
.safety-graph01-row:nth-child(2) {gap: 365px; padding: 120px 0;}
.safety-graph01-row:nth-child(3) {gap: 256px;}
.safety-graph01-box {display: flex; flex-direction: column; align-items: center; border-radius: 23px; box-shadow: 5px 6px 32px rgba(0,0,0,0.05); width: 458px; height: 159px; padding: 26px 10px;}
.safety-graph01-box .t1 {font-weight: 700; font-size: 20px; color: var(--main); text-align: center;}
.safety-graph01-box .text-ul {padding-top: 12px; text-align: center;}
.safety-graph01-box .text-ul li {font-weight: 500; font-size: 18px; color: var(--black); letter-spacing: -1px; line-height: 1.38;}

.safety-graph02 {}
.safety-graph02-ul {margin: -10px;}
.safety-graph02-ul li {vertical-align: top; padding: 10px;}
.safety-graph02-box {display: flex; align-items: center; justify-content: center; flex-direction: column; border: 1px solid #c8c8c8; border-radius: 15px; height: 267px;}
.safety-graph02-box .icon {margin-bottom: 10px;}
.safety-graph02-box .t1 {font-weight: 600; font-size: 20px; color: var(--black); text-align: center;}
.safety-graph02-box .t2 {font-weight: 500; font-size: 18px; letter-spacing: -1px; padding-top: 10px; text-align: center;}
.safety-graph02-text {margin-top: 40px; display: flex; align-items: center; justify-content: center; background-color: var(--main); border-radius: 15px; font-weight: 900; font-size: 25px; color: var(--white); height: 78px;}

.safety-graph03 {}
.safety-graph03-ul {border: 1px solid #c8c8c8; padding: 50px;}
.safety-graph03-ul li {display: flex; align-items: center; gap: 45px;}
.safety-graph03-ul li ~ li {padding-top: 20px;}
.safety-graph03-ul li .icon {width: 104px; height: 104px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background-color: var(--main);}
.safety-graph03-ul li .cont {}
.safety-graph03-ul li .cont .t1 {font-weight: 700; font-size: 20px; color: var(--main); padding-bottom: 10px;}
.safety-graph03-ul li .cont .t2 {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.38;}

.safety-graph04 {padding-bottom: 50px;}

.safety-graph05 {}
.safety-graph05-ul {margin: -15px;}
.safety-graph05-ul li {padding: 15px;}
.safety-graph05-box {display: flex; align-items: center; justify-content: center; border: 1px solid #c8c8c8; height: 100%;}

/* 지속가능경영 > 윤리경영 */
.ethics-text-box {font-weight: 500; font-size: 18px; line-height: 1.38; color: var(--black); background-color: #f5f5f5; padding: 50px; margin-bottom: 50px;}

.ethics-graph01 {border: 1px solid #c8c8c8; padding: 50px 193px;}
.ethics-graph01-ul {}
.ethics-graph01-ul li { vertical-align: top;}
.ethics-graph01-ul li .circle {display: flex; flex-direction: column; align-items: center; justify-content: center; width: 125px; height: 125px; background-color: var(--main); border-radius: 50%; margin: 0 auto;}
.ethics-graph01-ul li .circle .icon {}
.ethics-graph01-ul li .circle p {font-weight: 700; font-size: 20px; color: var(--white); padding-top: 3px;}
.ethics-graph01 .text-list {margin-top: 20px;}
.ethics-graph01 .text-list .txt {font-size: 14px;}
.ethics-graph01 .text-list .txt.dot::before {width: 4px; height: 4px; top: 8px;}

.ethics-graph01-bot {display: flex; align-items: center; justify-content: center; padding-top: 186px; position: relative;}
.ethics-graph01-bot::before {content: ''; width: 719px; height: 171px; background: url('/source/img/ethics-graph01-line.png') no-repeat center; position: absolute; top: 18px; left: 50%; transform: translateX(-50%);}
.ethics-graph01-logo {text-align: center; padding-top: 18px;}

.ethics-graph02 {padding: 68px 186px; border: 1px solid #c8c8c8; margin-bottom: 50px;}
.ethics-graph02-ul01 {margin: 0 -7.5px; position: relative;}
.ethics-graph02-ul01::before {content: ''; width: 80%; height: 1px; background-color: #c8c8c8; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
.ethics-graph02-ul01 li {padding: 0 7.5px; padding-bottom: 55px; position: relative;}
.ethics-graph02-ul01 li::before {content: ''; width: 1px; height: 55px; background-color: #c8c8c8; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
.ethics-graph02-ul01 li .box {border-radius: 15px; background-color: #f5f5f5; display: flex; align-items: center; justify-content: center; height: 67px; font-weight: 700; font-size: 20px;}

.ethics-graph02-box {padding: 55px 0; position: relative;}
.ethics-graph02-box::before {content: ''; width: 1px; height: 100%; background-color: #c8c8c8; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.ethics-graph02-box p {border-radius: 15px; display: flex; align-items: center; justify-content: center; height: 78px; background-color: var(--main); font-weight: 900; font-size: 25px; color: var(--white); position: relative; z-index: 1;}

.ethics-graph02-ul02 {margin: 0 -11px; position: relative;}
.ethics-graph02-ul02::before {content: ''; width: 66.66%; height: 1px; background-color: #c8c8c8; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.ethics-graph02-ul02 li {padding: 0 11px; padding-top: 55px; position: relative;}
.ethics-graph02-ul02 li::before {content: ''; width: 1px; height: 55px; background-color: #c8c8c8; position: absolute; top: 0; left: 50%; transform: translateX(-50%);}
.ethics-graph02-ul02 li .box {display: flex; flex-direction: column; align-items: center; justify-content: center; height: 254px; border: 1px solid #c8c8c8; border-radius: 15px;}
.ethics-graph02-ul02 li .t1 {font-weight: 500; font-size: 18px; color: var(--black); padding-top: 15px; text-align: center;}

.ethics-graph03 {}
.ethics-graph03-ul {margin: -15px -33.5px;}
.ethics-graph03-ul li {padding: 15px 33.5px; vertical-align: top;}
.ethics-graph03-ul li .box {border-radius: 22px; box-shadow: 3px 0 13px rgba(0,0,0,0.09); padding: 37px 51px;}
.ethics-graph03-ul li .box .t1 {font-weight: 700; font-size: 20px; letter-spacing: -1px; color: var(--main); margin-bottom: 15px; position: relative; padding-left: 26px;}
.ethics-graph03-ul li .box .t1::before {content: ''; width: 7px; height: 2px; background-color: var(--main); position: absolute; top: 12px; left: 0;}

/* 지속가능경영 > 준법경영 */
.compliance-graph01 {}
.compliance-graph01-ul {margin: -11px;}
.compliance-graph01-ul li {padding: 11px;}
.compliance-graph01-ul li .box {border: 1px solid #c8c8c8; padding: 25px 18px; height: 100%;}
.compliance-graph01-ul li .icon {margin: 0 auto; text-align: center;}
.compliance-graph01-ul li .box .t1 {margin: 17px 0 14px; font-weight: 600; font-size: 20px; text-align: center;}

.arc-list {}
.arc-li {border-radius: 35px; border: 1px solid #c8c8c8; padding: 35px 40px; position: relative;}
.arc-li ~ .arc-li {margin-top: 27px;}
.arc-btn {border: none; background-color: transparent; display: flex; width: 100%;}
.arc-btn .title {font-weight: 700; font-size: 20px; color: var(--main);}
.arc-btn .arr {font-size: 0; position: absolute; right: 27px; top: 30px; transition: .5s;}
.arc-cont {margin-top: 36px; padding-top: 23px; border-top: 1px solid #c8c8c8; display: none;}
.arc-cont .t1 {font-weight: 500; font-size: 18px; color: var(--black); letter-spacing: -1px; line-height: 1.38;}

.arc-li.closed {}
.arc-li.closed .arr {transform: rotate(-180deg);}

.compliance-graph02-ul {margin: -22.5px;}
.compliance-graph02-ul li {padding: 22.5px;}
.compliance-graph02-ul li .box {display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #c8c8c8; padding: 23px 10px; height: 100%;}
.compliance-graph02-ul li .icon {display: flex; align-items: center; justify-content: center; width: 81px; height: 81px; border-radius: 50%; background-color: var(--main); margin-bottom: 15px;}
.compliance-graph02-ul li .t1 {font-weight: 700; font-size: 20px; color: var(--black); text-align: center;}
.compliance-graph02-ul li .t2 {font-weight: 600; font-size: 18px; color: var(--black); text-align: center; margin: 9px 0 15px;}

/* 지속가능경영 > 인권경영 */
.human-graph01 {}
.human-graph01-ul {margin: -14.5px;}
.human-graph01-ul li {vertical-align: top; padding: 14.5px;}
.human-graph01-ul li .box {border: 1px solid #c8c8c8; height: 100%; display: flex; align-items: center; padding: 34px 43px;}
.human-graph01-ul li .icon {width: 82px; height: 82px; border-radius: 50%; background-color: var(--main); display: flex; align-items: center; justify-content: center;}
.human-graph01-ul li .cont {width: calc(100% - 82px); padding-left: 60px;}
.human-graph01-ul li .cont .t1 {font-weight: 700; font-size: 20px; padding-bottom: 12px;}
.human-graph01-ul li .cont .t2 {font-weight: 500; font-size: 18px; line-height: 1.38;}

.human-process {text-align: center;}
.human-mo-process {display: none;}

.human-graph02 {border: 1px solid #c8c8c8; padding: 60px 70px;}
.human-graph02 b {font-size: 20px;}

/* 지속가능경영 > 사회공헌 */
#notice_list .ethics-text-box {margin-bottom: 0;}

.social-graph01 {}
.social-graph01-ul {}
.social-graph01-ul li {}
.social-graph01-ul li ~ li {margin-top: 14px;}
.social-graph01 .bubble-box {border: none; box-shadow: 5px 0 27px rgba(0,0,0,0.08);}
.social-graph01 .bubble-box .b-title {width: 27.8125%;}
.social-graph01 li:nth-child(1) .bubble-box .b-title {background-color: var(--sky);}
.social-graph01 li:nth-child(3) .bubble-box .b-title {background-color: var(--navy);}
.social-graph01 .bubble-box .b-cont {width: 72.1875%; padding-left: 46px;}

.social-graph02 {display: flex; align-items: flex-start;}
.social-graph02-img {width: 50%;}
.social-graph02-img img {}

/* 사업주요실적 */
.performance-wrap {display: flex; flex-wrap: wrap; gap: 40px;}
.performance-li {width: calc((100% - 80px) / 3); border-radius: 16px; border: 1px solid #c8c8c8; padding: 40px 25px;}
.performance-li .c-logo {margin-bottom: 30px;}
.performance-li .t1 {font-weight: 700; font-size: 20px; line-height: 1.2; height: 2.4em; letter-spacing: -0.5px;}
.performance-li .cont {padding-top: 42px;}
.performance-li .cont .t2 {font-weight: 500; font-size: 18px; letter-spacing: -0.5px; line-height: 1.666;}

/* 채용정보 > 채용 FAQ */
.faq-cnt {text-align: center; padding-bottom: 50px; font-weight: 500; font-size: 18px; color: var(--black);}

.faq-list .arc-btn {align-items: center; gap: 20px;}
.faq-list .arc-btn .q {font-weight: 600; font-size: 30px; color: var(--main);}
.faq-list .arc-btn .title {font-weight: 600; font-size: 18px; color: var(--black); text-align: left;}

/* 채용정보 > 인재상 */
.talent-graph01 {}
.talent-graph01-title {font-weight: 600; font-size: 25px; color: var(--black); text-align: center; padding-bottom: 50px;}
.talent-graph01-ul {margin: -9px;}
.talent-graph01-ul li {vertical-align: top; padding: 9px;}
.talent-graph01-ul li .box {border: 1px solid #c8c8c8; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 42px 10px; height: 100%;}
.talent-graph01-ul li .box .icon {display: flex; align-items: center; justify-content: center; width: 81px; height: 81px; border-radius: 50%; background-color: var(--main); margin-bottom: 15px;}
.talent-graph01-ul li .box .t1 {font-weight: 600; font-size: 20px;}
.talent-graph01-ul li .box .t2 {margin: 12px 0 18px; font-weight: 600; font-size: 16px; color: #666666;}
.talent-graph01-ul li .box .t3 {font-weight: 500; font-size: 18px; color: var(--black); line-height: 1.38;}

.talent-graph02 {padding: 62px 80px; border: 1px solid #c8c8c8;}
.talent-graph02-ul {margin: -8px; margin-bottom: 25px;}
.talent-graph02-ul li {padding: 8px;}
.talent-graph02-ul li .circle {display: flex; flex-direction: column; align-items: center; justify-content: center; height: 202px; text-align: center;}
.talent-graph02-ul li .circle01 {background: url('/source/img/talent-graph02-circle01.png') no-repeat center;}
.talent-graph02-ul li .circle02 {background: url('/source/img/talent-graph02-circle02.png') no-repeat center;}
.talent-graph02-ul li .circle03 {background: url('/source/img/talent-graph02-circle03.png') no-repeat center;}
.talent-graph02-ul li .circle04 {background: url('/source/img/talent-graph02-circle04.png') no-repeat center;}
.talent-graph02-ul li .circle05 {background: url('/source/img/talent-graph02-circle05.png') no-repeat center;}
.talent-graph02-ul li .circle .num {font-weight: 800; font-size: 20px; color: var(--main);}
.talent-graph02-ul li .circle .t {font-weight: 700; font-size: 20px; color: var(--black); line-height: 1.25; padding-top: 8px;}

.talent-graph02-text-list {}
.talent-graph02-text-li {}
.talent-graph02-text-li ~ .talent-graph02-text-li {margin-top: 16px;}
.talent-graph02-text-li .num {font-weight: 700; font-size: 20px; color: var(--main);}
.talent-graph02-text-li .t {font-weight: 500; font-size: 18px; color: var(--black); padding-top: 8px;}

/* 채용정보 > 복리후생제도 */
.welfare-graph01 {padding-bottom: 50px;}
.welfare-graph01-ul {margin: -15px;}
.welfare-graph01-ul li {padding: 15px;}
.welfare-graph01-ul li .box {height: 100%; border: 1px solid #c8c8c8; display: flex; align-items: center; padding: 39px 43px;}
.welfare-graph01-ul li .icon {display: flex; align-items: center; justify-content: center; width: 82px; height: 82px; border-radius: 50%; background-color: var(--main);}
.welfare-graph01-ul li .cont {width: calc(100% - 82px); padding-left: 35px;}
.welfare-graph01-ul li .cont .t1 {font-weight: 600; font-size: 20px; color: var(--black); padding-bottom: 10px;}
.welfare-graph01-ul li .cont .t2 {font-weight: 500; font-size: 18px; color: var(--black);}

.welfare-graph02-ul {margin: -25px;}
.welfare-graph02-ul li {vertical-align: top; padding: 25px;}
.welfare-graph02-ul li .icon {display: flex; align-items: center; justify-content: center; width: 165px; height: 165px; border-radius: 50%; background-color: #e9eff7; margin: 0 auto;}
.welfare-graph02-ul li .t {text-align: center; font-weight: 800; font-size: 20px; color: var(--black); padding-top: 20px;}

/* 채용정보 > 직무소개 */
.job-wrap {}
.job-title-img {border-radius: 16px; overflow: hidden;}
.job-list {display: flex; flex-wrap: wrap; padding-top: 50px;}
.job-item {height: 100%; display: flex; align-items: center; justify-content: space-between; padding: 0 47px; border-bottom: 1px solid #eceaea; border-right: 1px solid #eceaea; height: 202px;}
.job-list.col-2 .job-item {width: 50%;}
.job-list.col-2 .job-item:nth-child(2n) {border-right: none;}
.job-list.col-2 .job-item:nth-child(3) {border-bottom: none;}
.job-list.col-2 .job-item:nth-child(4) {border-bottom: none;}
.job-list.col-3 .job-item {width: 33.33%;}
.job-list.col-3 .job-item:nth-child(3) {border-right: none;}
.job-list.col-3 .job-item:nth-child(4) {border-bottom: none;}
.job-list.col-3 .job-item:nth-child(5) {border-bottom: none;}
.job-item-left {text-align: center; width: 90px;}
.job-item-left .icon {}
.job-item-left .t {font-weight: 600; font-size: 20px; color: var(--black); padding-top: 10px; letter-spacing: -1px;}
.job-item-right {width: calc(100% - 110px);}
.job-item-right .text-list {}
.job-item-right .text-list .txt {padding-left: 7px;}
.job-item-right .text-list .txt.dot::before {content: '· '; font-weight: 500; font-size: 18px; border-radius: 0; background-color: transparent; top: 0; left: 0;}