/* Header */
.header {position: fixed; z-index: 50; left: 0; top: 0; width: 100%; background-color: var(--white-color); transition: top 0.4s ease-in-out;}
.header.hide {top: -170px;}
.header.show {top: 0;}
.header-top {border-bottom: 1px solid var(--color-d9);}
.header-top-inner {display: flex; align-items: center; justify-content: flex-end; height: 49px;}
.rnb-list {margin: 0 -19px;}
.rnb-item {padding: 0 19px; position: relative;}
.rnb-item::before {content: ''; width: 1px; height: 15px; background-color: var(--color-666); position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
.rnb-item:first-child::before {display: none;}
.rnb-item > a {font-weight: 500; font-size: 16px; color: var(--color-666);}
.header-bottom {border-bottom: 1px solid var(--color-d9);}
.header-bottom-inner {display: flex; align-items: center; justify-content: space-between; height: 117px;}
.header-logo {font-size: 0;}
.header-logo a {display: block; max-width: 250px;}
.header-logo a img {height: 100%;}
.header-menu {height: 100%;}
.gnb-list {margin: 0 -30px; height: 100%;}
.gnb-item {padding: 0 30px; height: 100%; position: relative;}
.gnb-item > a {font-weight: 600; font-size: 23px; color: var(--black-color); display: flex; align-items: center; justify-content: center; height: 100%; transition: .2s;}
.gnb-item:hover > a {color: var(--red-color);}

.gnb-depth2-list {position: absolute; top: calc(100% - 20px); left: 50%; transform: translateX(-50%); border: 1px solid var(--color-ccc); width: 130px; display: none;}
.gnb-depth2-item {text-align: center;}
.gnb-depth2-item > a {font-weight: 500; font-size: 15px; color: var(--black-color); display: flex; align-items: center; justify-content: center; width: 100%; height: 40px; background-color: var(--white-color); transition: .2s;}
.gnb-depth2-item > a:hover {background: var(--color-eee);}

.header-mobile {display: none;}
.mobile-btn {display: block; background: none; border: none;}
.mobile-btn-inner {position: relative; width: 26px; height: 26px; background: url('../img/ico_menu.png') no-repeat center center/contain;}
.mobile-btn-inner span {display: none; position: absolute; right: 0; width: 100%; height: 2px; border-radius: 5px; background-color: var(--black-color);}
.mobile-btn-inner span:nth-child(1) {top: 5px;}
.mobile-btn-inner span:nth-child(2) {top: 13px; width: 18px;}
.mobile-btn-inner span:nth-child(3) {top: 21px;}

.mobile-menu-bg {display: none; position: fixed; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.3); z-index: 998;}
.mobile-menu {position: fixed; right: -100%; top: 0; width: 500px; max-width: 100%; height: 100%; background: var(--white-color); box-shadow: 0 0 30px rgba(0,0,0,0.1); z-index: 999; transition: all .4s; -webkit-transition: all .4s;}
.mobile-menu.active {right: 0;}
.mobile-menu-head {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 20px 20px 15px; border-bottom: 8px solid var(--color-f0);}
.mobile-menu-logo {display: block; height: 20px;}
.mobile-menu-logo img {max-height: 100%;}
.mobile-menu-close {border: none; background: none;}
.mobile-menu-close .mobile-btn-inner {width: 18px; background-image: url('../img/ico_close.png');}
.mobile-menu-close .mobile-btn-inner span:nth-child(1) {transform:rotate(45deg) translate(4px, 6px);-webkit-transform:rotate(45deg) translate(4px, 6px);}
.mobile-menu-close .mobile-btn-inner span:nth-child(2) {opacity:0;}
.mobile-menu-close .mobile-btn-inner span:nth-child(3) {top: 20px; transform:rotate(-45deg) translate(4px, -6px);-webkit-transform:rotate(-45deg) translate(4px, -6px);}
.mobile-menu-util {display: flex; align-items: center; width: 100%; margin-top: 5px;}
.mobile-menu-btn {position: relative; padding: 4px 0; font-size: 15px; font-weight: 400; color: var(--color-888);}
.mobile-menu-btn:not(:last-child) {margin-right: 24px;}
.mobile-menu-btn:not(:last-child)::after {content:""; position: absolute; right: -13px; top: 50%; width: 2px; height: 13px; margin-top: -6.5px; background: var(--color-ccc);}

.mobile-menu-body {height: calc(100% - 110px); overflow: auto;}
.mobile-gnb-list {padding: 10px 0;}
.mobile-gnb-item {position: relative;}
.mobile-gnb-item.has-2dep::after {content:""; position: absolute; right: 20px; top: 20px; width: 6px; height: 11px; background: url('../img/ico_next.png') no-repeat center center/cover; transform: rotate(90deg); transition: all .3s; -webkit-transition: all .3s;}
.mobile-gnb-item.has-2dep.active::after {transform: rotate(-90deg);}
.mobile-gnb-item > a {display: block; padding: 15px 40px 15px 20px; font-size: 18px; font-weight: 600; color: var(--black-color);}
.mobile-gnb-depth2-list {display: none; padding: 15px 20px; background: var(--color-f7);}
.mobile-gnb-depth2-item {padding: 5px 0;}
.mobile-gnb-depth2-item > a {display: block; font-size: 16px; font-weight: 500; color: var(--color-888);}

/* Footer */
.footer {border-top: 1px solid var(--color-d9); background-color: var(--white-color);}
.footer-partsner {padding: 10px 0; border-bottom: 1px solid var(--color-d9);}
.partsner-list {display: flex; align-items: center; justify-content: space-between;}
.partsner-item {width: auto;}
.partsner-item .partsner-link {display: block; font-size: 0;}
.footer-bottom {}
.footer-inner {padding: 33px 0 31px;}
.footer-menu {}
.footer-menu-list {margin: 0 -20px;}
.footer-menu-item {padding: 0 20px;}
.footer-menu-item > a {font-weight: 500; font-size: 15px; color: var(--color-666);}
.footer-menu-item > a.point {color: var(--red-color);}
.footer-info {padding: 16px 0;}
.footer-info-item {font-weight: 500; font-size: 14px; color: var(--color-999); line-height: 1.5;}
.footer-info-list {display: flex; align-items: center; gap: 20px;}
.footer-info-item {position: relative;}
.footer-info-item::before {content: ''; width: 1px; height: 15px; background-color: var(--color-999); position: absolute; top: 50%; left: -10px; transform: translateY(-50%);}
.footer-info-item:first-child::before {display: none;}
.footer-copyright {}
.footer-copyright p {font-weight: 500; font-size: 14px; color: var(--color-999); line-height: 1.5;}

/* Common */
#main, #sub {padding-top: 168px;}

.top-wrap {position: fixed; z-index: 20; bottom: 40px; right: 40px;}
.top-btn {display: flex; align-items: center; justify-content: center; border-radius: 50%; width: 80px; height: 80px; background-color: var(--white-color); border: none; box-shadow: 0 10.77px 30.77px rgba(0,0,0,0.15); display: none;}

/* Main */
.main-contents {padding-bottom: 80px;}
.main-title-box {display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px;}
.main-title-box .title {font-weight: 700; font-size: 24px; color: var(--black-color); line-height: 1.35;}
.main-title-box .more-view {display: flex; align-items: center; justify-content: center; width: 73px; height: 29px; border-radius: 4px; background-color: var(--navy-color); font-weight: 500; font-size: 14px; color: var(--white-color); gap: 5px;}
.main-title-box .more-view .icon {display: flex; align-items: center; justify-content: center; position: relative; width: 11px; height: 11px;}
.main-title-box .more-view .icon::before {content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%; height: 2px; background-color: var(--white-color); }
.main-title-box .more-view .icon::after {content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 2px; height: 100%; background-color: var(--white-color);}

.main-sec.first-section {margin-top: 37px; overflow: hidden;}
.main-visual, .main-visual-mobile {position: relative;}
.main-visual-mobile {display: none;}
.main-visual .swiper-container, .main-visual-mobile .swiper-container {overflow: visible;}
.main-visual .swiper-slide {padding: 3px 0;}
.main-visual-link {display: block;}
.main-visual-img {font-size: 0;}
.main-visual-img img {width: 100%; height: 100%; object-fit: cover;}
.swiper-ctr-box {display: flex; align-items: center; justify-content: space-between; position: absolute; top: 50%; left: 0; width: 100%; height: 0; padding: 0 40px; transform: translateY(-50%); z-index: 2; font-size: 0;}
.swiper-ctr-box .sw-prev {width: 48px; height: 48px; border-radius: 50%; background: url('../img/ico_prev_sw.png') no-repeat center/cover; border: none; box-shadow: 0 0 10px rgba(0,0,0,0.1);}
.swiper-ctr-box .sw-next {width: 48px; height: 48px; border-radius: 50%; background: url('../img/ico_next_sw.png') no-repeat center/cover; border: none; box-shadow: 0 0 10px rgba(0,0,0,0.1);}

.main-sec.second-section {margin-top: 55px;}
.main-second-wrap {display: flex; align-items: flex-end; justify-content: space-between; gap: 20px;}
.main-notice {width: calc((100% - 20px) / 2);}
.main-board-box {height: 227px;}
.main-board-box.text-type {padding: 35px 32px; border: 1px solid var(--color-d9);}
.text-type .main-board-list {margin: -12px 0;}
.text-type .main-board-item {padding: 12px 0;}
.text-type .main-board-link {display: block; position: relative;}
.text-type .main-board-link .title {padding-right: 80px; font-weight: 500; font-size: 16px; color: var(--black-color); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.text-type .main-board-link .date {position: absolute; top: 50%; right: 0; transform: translateY(-50%); font-weight: 500; font-size: 15px; color: var(--color-999);}

.main-banner {width: calc((100% - 20px) / 2); height: 227px;}
.main-banner .swiper-container {height: 100%;}
.main-banner-link {display: block; height: 100%; font-size: 0;}
.main-banner-link img {height: 100%; object-fit: cover; object-position: left center;}

.main-sec.third-section {margin-top: 55px; }
.main-gallery {}
.main-board-box.gall-type {height: auto;}
.gall-type .main-board-list {margin: -9.5px; font-size: 0;}
.gall-type .main-board-item {display: inline-block; vertical-align: top; width: 20%; padding: 9.5px;}
.gall-type .main-board-link {display: block;}
.gall-type .main-board-link .img-box {position: relative; height: 0; padding-bottom: 69.665%;  border-radius: 16px; border: 1px solid var(--color-d9); overflow: hidden;}
.gall-type .main-board-link .img-box img {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%;}
.gall-type .main-board-link .title {margin-top: 10px; font-size: 16px; font-weight: 500; color: var(--black-color); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}

/* Sub */
.sub-visual {display: flex; align-items: center; height: 300px; padding: 20px 0;}
.sub-visual01 {background: url('../img/vis_sub_01.jpg') no-repeat center center/cover;}
.sub-visual-title {font-size: 40px; font-weight: 700; color: var(--white-color); text-align: center;}

.sub-menu {margin-bottom: 50px; border-bottom: 1px solid var(--color-ccc); background: var(--white-color); font-size: 0;}
.sub-menu-wrap {display: inline-block; vertical-align: middle; width: calc(100% - 100px);}
.sub-menu-list {display: flex; align-items: center;}
.sub-menu-item {position: relative; display: flex; align-items: center; height: 67px;}
.sub-menu-item.home {width: 80px; text-align: center; border-left: 1px solid var(--color-ccc); border-right: 1px solid var(--color-ccc);}
.sub-menu-item.depth {min-width: 180px; border-right: 1px solid var(--color-ccc);}
.sub-menu-link {display: block; width: 100%; height: 100%; line-height: 87px;}
.sub-menu-link img {transition: .2s;}
.sub-menu-link:hover img {opacity: 0.8;}
.sub-menu-text {position: relative; width: 100%; height: 100%; padding: 0 45px 0 24px; font-size: 15px; font-weight: 600; color: var(--black-color); text-align: left; border: none; background: transparent; transition: .2s;}
.sub-menu-text::after {content:""; position: absolute; right: 23px; top: 50%; width: 13px; height: 10px; margin-top: -5px; background: url('../img/ico_arr_bt.png') no-repeat center center/contain;}
.sub-menu-text:hover {color: rgba(0,0,0,0.7);}
.sub-menu2-list {display: none; position: absolute; left: -0.5px; top: calc(100% + 1px); width: 100%; border: 1px solid var(--color-ccc); border-top: none; box-sizing: initial; background: var(--white-color); z-index: 10;}
.sub-menu2-item {border-top: 1px solid var(--color-ccc);}
.sub-menu2-item:first-child {border-top: none;}
.sub-menu2-link {display: block; padding: 14px 24px; font-size: 15px; font-weight: 400; color: var(--black-color); transition: .2s;}
.sub-menu2-link:hover {background: var(--color-eee);}

.sub-util-wrap {display: inline-block; vertical-align: middle; width: 100px;}
.sub-util-btn {width: 45px; height: 45px; border-radius: 50%; border: none; background-color: var(--color-eee); background-repeat: no-repeat; background-position: center center;}
.sub-util-btn ~ .sub-util-btn {margin-left: 10px;}
.sub-util-btn.print {background-image: url('../img/ico_print.png');}
.sub-util-btn.share {background-image: url('../img/ico_share.png');}

.sub-breadcrumb {text-align: right;}
.sub-breadcrumb-list {margin: 0 -25px; font-size: 0;}
.sub-breadcrumb-item {position: relative; display: inline-block; vertical-align: middle; padding: 0 25px;}
.sub-breadcrumb-item ~ .sub-breadcrumb-item::before {content:""; position: absolute; left: -2.5px; top: 50%; width: 5px; height: 9px; margin-top: -4.5px; background: url('../img/ico_breadcrumb.png') no-repeat center center/contain;}
.sub-breadcrumb-link {font-size: 16px; font-weight: 500; color: var(--color-444); text-decoration: underline;}

.sub-contents {padding-top: 50px;}
.sub-title-wrap {text-align: center;}
.sub-title {font-size: 40px; font-weight: 700; color: var(--black-color);}

.sub-content {padding-top: 50px; padding-bottom: 150px;}

/* Contents > 회사소개 > 회사개요 */
#overview {padding-top: 0; /*padding-bottom: 0;*/}
.overview-title {margin-bottom: 55px; text-align: center; font-size: 35px; font-weight: 700; color: var(--black-color); line-height: 1.5;}
.overview-title span {color: var(--navy-color);}

.overview-content01 {}
.business-goal-wrap {}
.business-goal-list {margin: 0 -12px; font-size: 0;}
.business-goal-item {display: inline-block; vertical-align: top; width: 25%; padding: 0 12px;}
.business-goal-inner {height: 100%; padding: 42px 82px; background: var(--color-f9); border-radius: 16px;}
.business-goal-icon {display: block;}
.business-goal-name {margin-top: 15px; font-size: 24px; font-weight: 700; color: var(--black-color);}
.business-goal-description {margin-top: 8px; font-size: 14px; font-weight: 500; color: var(--color-999);}

.overview-content02 {margin-top: 200px;}
.business-info-wrap {border-top: 1px solid var(--color-333);}
.business-info-list {display: flex; align-items: center; justify-content: center; height: 113px; padding: 15px 0; gap: 0 60px; border-bottom: 1px solid var(--color-333);}
.business-info-item {display: flex; align-items: center;}
.business-info-head {display: flex; align-items: center; margin-right: 24px;}
.business-info-icon {display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-right: 24px;}
.business-info-icon img {object-fit: contain;}
.business-info-title {display: inline-block; vertical-align: middle; font-size: 24px; font-weight: 700; color: var(--color-333);}
.business-info-body {display: inline-block; vertical-align: middle;}
.business-info-text {font-size: 18px; font-weight: 500; color: var(--color-666);}

.overview-content03 {display: none; margin-top: 200px; padding-top: 120px; padding-bottom: 150px; background: var(--color-f9);}
.business-certificate-wrap {}
.business-certificate-list {margin: -27.5px -56.5px; font-size: 0;}
.business-certificate-item {display: inline-block; vertical-align: top; width: 20%; padding: 27.5px 56.5px;}
.business-certificate-inner {position: relative; border-radius: 16px; overflow: hidden; filter: drop-shadow(0px 4px 20px rgba(0, 0, 0, 0.1));}
.business-certificate-img {position: relative; width: 100%; height: 0; padding-bottom: 130%;}
.business-certificate-img img {position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 100%; height: 100%; object-fit: cover;}
.business-certificate-title {position: absolute; left: 0; bottom: 0; width: 100%; height: 62px; padding: 20px 15px; font-size: 16px; font-weight: 700; color: var(--white-color); text-align: center; background: rgba(31, 58, 116, 0.7); backdrop-filter: blur(4px);}

/* Contents > 회사소개 > 주요고객사 */
.client-wrap {}
.client-list {display: flex; flex-wrap: wrap; gap: 40px 118px;}
.client-item {width: calc((100% - 472px) / 5);}
.client-item img {display: block; margin: 0 auto;}

/* Contents > 사업안내 > SI, SM */
.business-wrap {text-align: center;}
.business-text {font-size: 18px; font-weight: 500; color: var(--color-333); line-height: 1.8;}
.business-text:not(:first-child) {margin-top: 25px;}

.business-scope-wrap {margin-top: 55px;}
.business-scope-list {font-size: 0; margin: -12px -10px;}
.business-scope-item {display: inline-block; vertical-align: top; width: 33.3333%; padding: 12px 10px;}
.business-scope-inner {height: 100%; padding: 36px 120px; background: var(--color-f9); border-radius: 16px; text-align: left;}
.business-scope-icon {display: block; margin-bottom: 15px;}
.business-scope-name {font-size: 20px; font-weight: 700; color: var(--black-color);}

.business-graphic-wrap {margin-top: 90px; font-size: 0; text-align: center;}
.business-graphic-box {display: inline-block; vertical-align: bottom; width: calc((100% - 160px) / 2);}
.business-graphic-box ~ .business-graphic-box {margin-left: 160px;}
.business-graphic-pc {display: block;}
.business-graphic-mb {position: absolute; left: 0; top: 0; width: 0; height: 0; font-size: 0; z-index: -1;}
.business-graphic-title {display: block; padding: 0; background: var(--navy-color); border-radius: 8px; font-size: 0; font-weight: 500; color: var(--white-color);}
.business-graphic-list {}
.business-graphic-item {margin-top: 5px; padding: 0; background: var(--sub-color); border-radius: 7px;}
.business-graphic-text {font-size: 0; font-weight: 400; color: var(--color-333);}

/* Member > 로그인 */
.login-wrap {}
.login-txt {padding-bottom: 30px; font-weight: 400; font-size: 20px; color: var(--black-color); line-height: 1.75; text-align: center;}
.login-input-box {width: 400px; max-width: 100%; margin: 0 auto;}
.login-input {margin-bottom: 20px;}
.login-input-li {}
.login-input-li .d-input {width: 100%; height: 60px; border: 1px solid var(--color-ccc); }
.login-input-li.id .d-input {border-radius: 10px 10px 0 0; border-bottom: 1px solid transparent;}
.login-input-li.id .d-input:focus-visible {border-bottom: 2px dashed #ff0000;}
.login-input-li.pw .d-input {border-radius: 0 0 10px 10px;}
.login-input-box [type="submit"] {display: flex; align-items: center; justify-content: center; height: 50px; width: 100%; border-radius: 10px; border: none; background-color: var(--navy-color); font-weight: 500; font-size: 15px; color: var(--white-color);}
.member-info-link-ul {margin: 0 -24.5px; padding-top: 18px; text-align: center;}
.member-info-link-li {position: relative; padding: 0 24.5px;}
.member-info-link-li::before {content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 15px; background-color: var(--color-ccc);}
.member-info-link-li:first-child::before {display: none;}
.member-info-link-li a {font-weight: 500; font-size: 15px; color: var(--color-666);}

/* Member > 회원가입(약관동의) */
.join-wrap {border-top: 1px solid var(--color-333);}
.join-step-box {padding: 60px 0;}
.join-step-ul {display: flex; align-items: flex-start; justify-content: space-between; position: relative; width: 1154px; max-width: 100%; margin: 0 auto; }
.join-step-ul::before {content: ''; position: absolute; left: 50%; top: 11px; transform: translateX(-50%); width: 97%; height: 7px; background-color: var(--color-d9); z-index: -1;}
.join-step-li {}
.join-step-li .circle {display: flex; align-items: center; justify-content: center; position: relative; width: 29px; height: 29px; margin: 0 auto; border-radius: 50%; background-color: var(--color-d9);}
.join-step-li .circle::before {content: ''; display: none; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 9px; height: 9px; border-radius: 50%; border: 3px solid var(--white-color); background-color: transparent; }
.join-step-li .txt {padding-top: 20px; text-align: center; font-weight: 500; font-size: 14px; color: var(--black-color); line-height: 1.5;}

.join-step-li.on .circle {background-color: var(--red-color);}
.join-step-li.on .circle::before {display: block;}

.terms-ul {}
.terms-li {}
.terms-li ~ .terms-li {padding-top: 35px;}
.terms-title {padding-bottom: 16px; font-weight: 600; font-size: 22px; color: var(--black-color);}
.terms-content-wr {}
.terms-content-wr .txt-area {max-height: 134px; padding: 28px 42px; border: 1px solid var(--color-d9); font-weight: 400; font-size: 16px; color: var(--black-color); line-height: 1.56; overflow-y: auto;}
.terms-radio-wrap {text-align: right; padding-top: 12px;}
.terms-radio-wrap .radio-wrap_item {display: inline-block; vertical-align: middle;}
.terms-radio-wrap .radio-wrap_item:not(:last-child) {margin-right: 20px;}

.join-btn-wrap {display: flex; align-items: center; justify-content: center; gap: 15px; padding-top: 80px;}

/* Member > 회원가입(본인인증) */
.identification-ul {margin: -21px;}
.identification-li {vertical-align: top; padding: 21px;}
.identification-li .box {display: flex; flex-direction: column; justify-content: center; height: 266px; padding: 20px; border: 1px solid var(--color-d9); text-align: center;}
.identification-li .t1 {font-weight: 600; font-size: 22px; color: var(--black-color);}
.identification-li .t2 {padding: 33px 0; font-weight: 400; font-size: 18px; color: var(--black-color); line-height: 1.388;}
.identification-li .btn {width: 220px; margin: 0 auto;}

/* Member > 회원가입(회원정보 입력) */
.join-write {}
.join-write-ul {border: 1px solid var(--color-d9);}
.join-write-li {border-bottom: 1px solid var(--color-d9);}
.join-write-li:last-child {border-bottom: none;}
.join-write-inner {display: table; width: 100%;}
.join-write-inner .k {display: table-cell; vertical-align: middle; width: 257px; padding: 14px 24px; background-color: var(--color-f5); text-align: center; font-weight: 600; font-size: 18px; color: var(--black-color);}
.join-write-inner .v {display: table-cell; vertical-align: middle; width: calc(100% - 257px); padding: 14px 24px;}
.join-write-inner .v .input-txt-wrap {padding-top: 14px;}
.join-write-inner .v .input-txt {font-weight: 500; font-size: 14px; color: var(--color-999);}
.join-input-wrap {}
.join-input-wrap .d-input {height: 41px; width: 234px;}
.join-input-box {display: flex; align-items: center; gap: 13px;}
.join-input-wrap .btn {display: inline-block; width: 137px; height: 41px; line-height: 41px; background-color: var(--color-444); border-radius: 0;}
.join-input-wrap.id {font-size: 0;}
.join-input-wrap.id .d-input {width: 275px;}
.join-input-wrap.pw .d-input {width: 275px;}

.input-tel-ul {display: flex; align-items: center; gap: 16px;}
.input-tel-li {font-weight: 500; font-size: 15px; color: var(--color-555);}
.input-tel-li .d-input {width: 125px; min-width: auto; text-align: center;}

.input-mail-ul {display: flex; align-items: center; gap: 16px;}
.input-mail-li {font-weight: 500; font-size: 15px; color: var(--color-555);}
.input-mail-li .d-input {width: 125px; min-width: auto; text-align: center;}

.join-input-wrap.address {}
.join-input-wrap.address .join-input-box {font-size: 0;}
.join-input-wrap.address .join-input-box ~ .join-input-box {margin-top: 9px;}
.join-input-wrap.address .add-input01 {width: 275px;}
.join-input-wrap.address .add-input02 {width: 443px;}
.join-input-wrap.address .add-input03 {width: 275px;}

/* Member > 회원가입(가입완료) */
.join-complete-box {display: flex; align-items: center; justify-content: center; flex-direction: column; height: 291px; border: 1px solid var(--color-d9);}
.complete-t1 {padding-bottom: 42px; text-align: center; font-weight: 400; font-size: 20px; color: var(--black-color); line-height: 1.45;}

/* Member > 아이디 찾기 */
.find-wrap {padding-top: 55px; border-top: 1px solid var(--color-333);}
.find-info-ul {margin: -21px; font-size: 0;}
.find-info-li {display: inline-block; vertical-align: top; width: 50%; padding: 21px; font-size: 16px;}
.find-info-li .box {display: flex; flex-direction: column; align-items: center; justify-content: center; height: 266px; padding: 20px; border: 1px solid var(--color-d9); text-align: center;}
.find-info-li .t1 {font-weight: 600; font-size: 22px; color: var(--black-color);}
.find-info-li .t2 {margin: 33px 0; font-weight: 400; font-size: 18px; color: var(--black-color); line-height: 1.38;}
.find-info-li .btn {width: 220px;}

.find-result {padding-top: 48px;}
.fs-title {padding-bottom: 22px; font-weight: 600; font-size: 22px; color: var(--black-color);}
.find-result .box {padding: 57px 41px 44px; border: 1px solid var(--color-d9);}
.find-result .fs-txt {font-weight: 600; font-size: 22px; color: var(--black-color);}
.fs-btn-wrap {display: flex; align-items: center; justify-content: center; gap: 15px; padding-top: 16px;}

/* Member > 마이페이지(회원정보수정) */
#modify_info .join-wrap {padding-top: 60px;}

.join-write-inner .v .text-wrap {font-weight: 500; font-size: 16px; color: var(--color-555); line-height: 1.56;}

/* Member > 회원탈퇴 */
#withdrawal .join-wrap {padding-top: 60px;}

.withdrawal-box {display: flex; align-items: center; justify-content: center; flex-direction: column; height: 340px; padding: 20px; border: 1px solid var(--color-d9);}
.withdrawal-box .icon {display: flex; align-items: center; justify-content: center; width: 101px; height: 101px; border-radius: 50%; background-color: var(--color-d9);}
.withdrawal-box .icon img {margin-left: 5px;}
.withdrawal-box .t1 {padding: 24px 0 32px; font-weight: 600; font-size: 22px; color: var(--black-color); line-height: 1.227;}
.withdrawal-box .t2 {font-weight: 400; font-size: 20px; color: var(--black-color); line-height: 1.45; text-align: center;}

/* Policy > 개인정보처리방침 */
.policy-wrap {}
.policy-title {padding-bottom: 40px; font-weight: 700; font-size: 48px; color: var(--color-333);}
.policy-inner {}
.policy-inner ~ .policy-inner {padding-top: 60px;}
.policy-tab {margin: -8px; font-size: 0;}
.policy-tab-li {display: inline-block; vertical-align: top; width: 33.33%; padding: 8px;}
.policy-tab-btn {display: flex; align-items: center; justify-content: flex-start; height: 56px; padding: 0 24px; font-weight: 700; font-size: 20px; color: var(--black-color);  border-bottom: 2px solid var(--navy-color); background-color: #D3DDF3; transition: .3s;}
.policy-tab-btn:hover {background-color: var(--navy-color); color: var(--white-color);}

.policy-inner .mrt {margin-top: 1.75em;}
.policy-inner .pdl {padding-left: 10px;}
.policy-inner b {font-weight: 700;}
.policy-title01 {margin-bottom: 16px; font-weight: 700; font-size: 25px; color: var(--color-333); letter-spacing: -0.02em;}
.policy-text01 {font-weight: 500; font-size: 16px; color: var(--color-333); line-height: 1.75;}
.policy-text02 {font-weight: 500; font-size: 16px; color: var(--color-666); line-height: 1.75;}
.policy-inner .dot {position: relative; padding-left: 10px;}
.policy-inner .dot::before {content: ''; position: absolute; top: 13px; left: 0; width: 3px; height: 3px; border-radius: 50%; background-color: var(--color-333);}
.policy-inner .poicy-text02.dot::before {background-color: var(--color-666);}
.policy-inner .bar {position: relative; padding-left: 10px;}
.policy-inner .bar::before {content: ''; position: absolute; top: 13px; left: 0; width: 5px; height: 2px; border-radius: 50%; background-color: var(--color-333);}
.policy-inner .poicy-text02.bar::before {background-color: var(--color-666);}
.policy-inner .link {text-decoration: underline; font-weight: 500; font-size: 16px; line-height: 1.75;}
.policy-inner .policy-text01 .link {color: var(--color-333);}
.policy-inner .policy-text02 .link {color: var(--color-666);}

/* Policy > 이용약관 */
.term-wrap {padding-top: 60px; border-top: 1px solid var(--color-333);}
.term-title {padding-bottom: 22px; font-weight: 600; font-size: 22px; color: var(--black-color);}
.term-box {padding: 40px; border: 1px solid var(--color-d9); font-weight: 400; font-size: 16px; color: var(--black-color); line-height: 1.56;}

/* Etc > 사이트맵 */
.sitemap-wrap {padding-top: 55px; border-top: 1px solid var(--color-333);}
.sitemap-ul {margin: -27.5px -17px;}
.sitemap-li {vertical-align: top; padding: 27.5px 17px;}
.sitemap-box { display: flex; flex-direction: column; min-height: 327px; padding: 63px 38px; border: 1px solid var(--color-d9);}
.sitemap-box.bg01 {background-color: var(--color-f5);}
.sitemap-title {padding-bottom: 28px; font-weight: 600; font-size: 22px; color: var(--black-color);}
.sitemap-list {}
.sitemap-list li {}
.sitemap-list li a {font-weight: 400; font-size: 20px; color: var(--black-color); line-height: 1.45;}


/***************************************************************/
/**************************** 반응형 ****************************/
/***************************************************************/

@media screen and (max-width: 1800px) {
  /* Contents > 회사소개 > 회사개요 */
  .business-goal-inner {padding: 42px;}

  .overview-content03 {margin-top: 120px;}
  .business-certificate-list {margin: -25px -20px;}
  .business-certificate-item {padding: 25px 20px;}
  
  /* Contents > 사업안내 > SI, SM */
  .business-scope-inner {padding: 35px 50px;}

  .business-graphic-box {width: calc((100% - 100px) / 2);}
  .business-graphic-box ~ .business-graphic-box {margin-left: 100px;}
}

@media screen and (max-width: 1440px) {
  /* Header */
  .header-bottom-inner {height: 90px;}
  .header-logo a {height: 28px;}
  .gnb-list {margin: 0 -20px;}
  .gnb-item {padding: 0 20px;}
  .gnb-item > a {font-size: 20px;}
  
  /* Common */
  #main, #sub {padding-top: 140px;}

  .top-wrap {right: 30px;}

  /* Main */  
  .gall-type .main-board-item {width: 25%;}
  .gall-type .main-board-item:nth-child(5) {display: none;}

  /* Contents > 회사소개 > 회사개요 */
  .business-goal-inner {padding: 30px;}
  .business-goal-description br {display: none;}

  .business-info-icon {margin-right: 10px;}

  .business-certificate-list {margin: -15px -10px;}
  .business-certificate-item {padding: 15px 10px;}
  .business-certificate-img {border-radius: 16px; overflow: hidden;}
  .business-certificate-img img {object-fit: cover;}
  .business-certificate-title {position: relative; left: inherit; bottom: inherit; height: auto; padding: 15px 0 0; color: rgba(31, 58, 116, 0.7); background: transparent;}
  
  /* Contents > 회사소개 > 주요고객사 */
  .client-list {gap: 30px;}
  .client-item {width: calc((100% - 120px) / 5);}

  /* Contents > 사업안내 > SI, SM */
  .business-scope-inner {padding: 30px;}
  
  .business-graphic-box {width: calc((100% - 50px) / 2);}
  .business-graphic-box ~ .business-graphic-box {margin-left: 50px;}
  
  /* Member > 회원가입(본인인증) */
  .identification-ul {margin: -10px;}
  .identification-li {padding: 10px;}
  .identification-li .t2 {padding: 20px 0;}
  .identification-li .t2 br {display: none;}

  /* Member > 회원가입(회원정보 입력) */
  .join-input-box {flex-wrap: wrap;}
  .join-input-wrap.address .add-input02 {width: 100%;}
  .join-input-wrap.address .add-input03 {width: 100%;}

  /* Member > 아이디 찾기 */
  .find-info-ul {margin: -10px;}
  .find-info-li {padding: 10px;}
  .find-info-li .t2 {margin: 20px 0;}
  .find-info-li .t2 br {display: none;}
  
  /* Policy > 개인정보처리방침 */
  .policy-tab {margin: -5px;}
  .policy-tab-li {padding: 5px;}
  .policy-tab-btn {padding: 0 15px; font-size: 18px;}

  .policy-title01 {margin-bottom: 10px; font-size: 22px;}
  
  /* Etc > 사이트맵 */
  .sitemap-ul {margin: -10px;}
  .sitemap-li {padding: 10px;}
  .sitemap-box {padding: 25px;}
  .sitemap-title {padding-bottom: 15px;}
}

@media screen and (max-width: 1024px) {
  /* Header */
  .header-logo a {height: 22px;}
  .header-bottom-inner {height: 70px;}
  .header-menu {display: none;}
  .header-mobile {display: block;}
  
  /* Footer */
  .footer-inner {padding: 23px 0 20px;}
  .footer-info {padding: 10px 0;}
  
  /* Common */
  #main, #sub {padding-top: 120px;}

  .top-btn {width: 60px; height: 60px;}
  .top-btn img {width: 20px;}

  /* Main */
  .main-title-box {padding-bottom: 12px;}
  .main-title-box .title {font-size: 22px;}

  .main-sec.first-section .wrapper2 {padding-left: 14px; padding-right: 14px;}
  .swiper-ctr-box {padding: 0 20px;}
  .swiper-ctr-box .sw-prev, .swiper-ctr-box .sw-next {width: 40px; height: 40px;}

  .main-second-wrap {flex-wrap: wrap; gap: 30px;}
  .main-notice {width: 100%;}
  .main-board-box {height: auto;}
  .main-board-box.text-type {padding: 25px;}
  .text-type .main-board-list {margin: -5px 0;}
  .text-type .main-board-item {padding: 5px 0;}
  .main-banner {width: 100%; height: auto;}
  .main-banner-link img {width: 100%; height: auto;}

  .gall-type .main-board-list {margin: -5px;}
  .gall-type .main-board-item {padding: 5px;}
  .gall-type .main-board-link .img-box {border-radius: 10px;}

  /* Contents > 회사소개 > 회사개요 */
  .overview-title {margin-bottom: 35px; font-size: 32px; line-height: 1.2;}
  .business-goal-list {margin: -10px;}
  .business-goal-item {width: 50%; padding: 10px;}

  .overview-content02 {margin-top: 120px;}
  .business-info-wrap {border-bottom: 1px solid var(--color-333);}
  .business-info-list {display: block; height: auto; padding: 0; border-bottom: none;}
  .business-info-item {padding: 15px; border-bottom: 1px dashed var(--color-bbb);}
  .business-info-list:last-child .business-info-item:last-child {border-bottom: none;}
  .business-info-head {width: 150px;}
  .business-info-title {font-size: 22px;}
  .business-info-body {width: calc(100% - 150px);}
  .business-info-text br {display: none;}

  .overview-content03 {margin-top: 80px; padding-top: 80px;}
  .business-certificate-list {margin: -10px;}
  .business-certificate-item {width: 25%; padding: 10px;}
  
  /* Contents > 회사소개 > 주요고객사 */
  .client-list {gap: 20px;}
  .client-item {width: calc((100% - 60px) / 4);}

  /* Contents > 사업안내 > SI, SM */
  .business-scope-list {margin: -10px;}
  .business-scope-item {width: 50%; padding: 10px;}
  
  .business-graphic-box {width: calc((100% - 30px) / 2);}
  .business-graphic-box ~ .business-graphic-box {margin-left: 30px;}

  /* Member > 회원가입(본인인증) */  
  .identification-li .box {justify-content: space-between; height: 255px; padding: 25px 20px;}
  .identification-li .t2 {padding: 0;}

  /* Member > 회원가입(회원정보 입력) */
  .join-write-inner .k {width: 180px;}
  .join-write-inner .v {width: calc(100% - 180px);}
  .join-write-inner .v .input-txt-wrap {padding-top: 10px;}
  
  /* Member > 아이디 찾기 */
  .find-info-li .box {justify-content: space-between; height: 255px; padding: 25px 20px;}
  .find-info-li .t2 {margin: 0;}

  .find-result .box {padding: 30px;}
  
  /* Policy > 개인정보처리방침 */
  .policy-tab-li {width: 50%;}

  .policy-inner ~ .policy-inner {padding-top: 45px;}
  .policy-inner .mrt {margin-top: 1em;}
  
  /* Etc > 사이트맵 */
  .sitemap-box {min-height: 300px; height: 100%; padding: 20px;}
  .sitemap-title {padding-bottom: 10px;}
}

@media screen and (max-width: 768px) {
  /* Header */
  .header-top-inner {height: 35px;}
  .rnb-list {margin: 0 -12px;}
  .rnb-item {padding: 0 12px;}
  .rnb-item::before {height: 12px; transform: translateY(-38%);}
  .rnb-item > a {font-size: 14px;}

  .header-bottom-inner {height: 55px;}
  .header-logo a {height: 20px;}

  .mobile-btn-inner {width: 23px; height: 23px;}
  .mobile-gnb-item.has-2dep::after {top: 16px;}
  .mobile-gnb-item > a {padding: 12px 40px 12px 20px; font-size: 16px;}
  .mobile-gnb-depth2-list {padding: 10px 20px;}
  .mobile-gnb-depth2-item > a {font-size: 15px;}
  .mobile-menu-btn {font-size: 14px;}

  /* Footer */
  .footer-partsner {padding: 5px 0;}
  .footer-inner {padding: 15px 0;}
  .footer-menu-list {margin: 0 -10px;}
  .footer-menu-item {padding: 0 10px;}
  .footer-menu-item > a {font-size: 14px;}
  .footer-info {padding: 10px 0 7px;}
  .footer-info-item {font-size: 13px;}
  .footer-copyright p {font-size: 13px;}

  /* Common */
  #main, #sub {padding-top: 91px;}

  .top-wrap {right: 16px; bottom: 20px;}
  .top-btn {width: 40px; height: 40px;}
  .top-btn img {width: 15px;}

  /* Main */
  .main-contents {padding-bottom: 60px;}
  .main-title-box {padding-bottom: 10px;}
  .main-title-box .title {font-size: 18px;}
  .main-title-box .more-view {width: 65px; font-size: 13px;}

  .main-sec.first-section {margin-top: 20px;}
  .main-sec.first-section .wrapper2 {padding-left: 0; padding-right: 0;}
  .main-visual {display: none;}
  .main-visual-mobile {display: block;}
  .swiper-ctr-box {padding: 0 10px;}
  .swiper-ctr-box .sw-prev, .swiper-ctr-box .sw-next {width: 30px; height: 30px;}

  .main-sec.second-section {margin-top: 40px;}
  .main-second-wrap {gap: 20px;}
  .main-board-box.text-type {padding: 15px;}
  .text-type .main-board-link .title {font-size: 15px;}
  .text-type .main-board-link .date {font-size: 14px;}

  .main-sec.third-section {margin-top: 40px;}
  .gall-type .main-board-list {margin: -10px -5px;}
  .gall-type .main-board-item {width: 50%; padding: 10px 5px;}
  .gall-type .main-board-link .title {font-size: 15px;}

  /* Sub */
  .sub-visual {height: 240px;}
  .sub-visual-title {font-size: 32px;}

  .sub-menu {margin-bottom: 58px;}
  .sub-menu-wrap {width: 100%;}
  .sub-menu-item {height: 50px;}
  .sub-menu-item.home {width: 50px;}
  .sub-menu-item.depth {min-width: 150px;}
  .sub-menu-link {line-height: 67px;}
  .sub-menu-link img {width: 18px;}
  .sub-menu-text {padding: 0 35px 0 15px; font-size: 14px;}
  .sub-menu-text::after {right: 15px; width: 10px; height: 8px; margin-top: -4px;}
  .sub-menu2-link {padding: 10px 15px; font-size: 14px;}

  .sub-util-wrap {position: absolute; right: 0; top: calc(100% + 15px); width: auto;}
  .sub-util-btn {width: 35px; height: 35px;}
  .sub-util-btn.print {background-size: 18px auto;}
  .sub-util-btn.share {background-size: 13px auto;}
  .sub-util-btn ~ .sub-util-btn {margin-left: 5px;}

  .sub-breadcrumb-list {margin: 0 -13px;}
  .sub-breadcrumb-item {padding: 0 13px;}
  .sub-breadcrumb-link {font-size: 14px;}

  .sub-contents {padding-top: 40px;}
  .sub-title {font-size: 32px;}
  .sub-content {padding-top: 40px; padding-bottom: 80px;}
  
  /* Contents > 회사소개 > 회사개요 */
  .overview-title {margin-bottom: 25px; font-size: 26px;}
  .business-goal-list {margin: -5px;}
  .business-goal-item {padding: 5px;}
  .business-goal-inner {padding: 20px;}
  .business-goal-name {margin-top: 10px; font-size: 20px;}
  .business-goal-description {margin-top: 5px;}

  .overview-content02 {margin-top: 80px;}
  .business-info-head {width: 120px;}
  .business-info-icon {width: 20px; height: 20px;}
  .business-info-title {font-size: 20px;}
  .business-info-body {width: calc(100% - 120px);}
  .business-info-text {font-size: 16px;}

  .overview-content03 {padding-bottom: 80px;}
  .business-certificate-list {margin: -12px -7px;}
  .business-certificate-item {width: 50%; padding: 12px 7px;}
  .business-certificate-title {padding-top: 10px; font-size: 15px;}
  
  /* Contents > 회사소개 > 주요고객사 */
  .client-list {gap: 15px;}
  .client-item {width: calc((100% - 15px) / 2);}

  /* Contents > 사업안내 > SI, SM */
  .business-text {font-size: 16px; line-height: 1.5;}
  .business-text:not(:first-child) {margin-top: 15px;}

  .business-scope-wrap {margin-top: 35px;}
  .business-scope-list {margin: -5px;}
  .business-scope-item {padding: 5px;}
  .business-scope-inner {padding: 20px;}
  .business-scope-icon {margin-bottom: 10px;}
  .business-scope-name {font-size: 18px;}

  .business-graphic-wrap {margin-top: 60px;}
  .business-graphic-wrap .wrapper2 {display: flex; gap: 10px;}
  .business-graphic-box {width: 100%;}
  /* .business-graphic-box {vertical-align: top; width: calc((100% - 10px) / 2);} */
  .business-graphic-box ~ .business-graphic-box {margin-left: 0;}
  .business-graphic-pc {display: none;}
  .business-graphic-mb {display: block; position: relative; left: inherit; top: inherit; width: auto; height: auto; z-index: 1;}
  .business-graphic-title {padding: 15px 10px; font-size: 16px;}
  .business-graphic-item {padding: 12px;}
  .business-graphic-text {font-size: 15px;}

  /* Member > 로그인 */
  .login-txt {padding-bottom: 20px; font-size: 18px; line-height: 1.4;}
  .login-input-li .d-input {height: 45px;}

  /* Member > 회원가입(약관동의) */
  .join-step-box {padding: 30px 0 40px;}
  .join-step-ul::before {width: 90%; height: 5px;}
  .join-step-li .circle {width: 25px; height: 25px;}
  .join-step-li .txt {padding-top: 10px; line-height: 1.3;}

  .terms-li ~ .terms-li {padding-top: 25px;}
  .terms-title {padding-bottom: 10px; font-size: 20px;}
  .terms-content-wr .txt-area {padding: 20px; font-size: 14px;}
  .terms-radio-wrap .radio-wrap_item:not(:last-child) {margin-right: 15px;}

  .join-btn-wrap {padding-top: 40px; gap: 5px;}
  
  /* Member > 회원가입(본인인증) */
  .identification-ul {margin: -5px;}
  .identification-li {width: 100%; padding: 5px;}
  .identification-li .box {height: auto; padding: 20px;}
  .identification-li .t1 {font-size: 20px;}
  .identification-li .t2 {padding: 10px 0; font-size: 16px;}
  .identification-li .btn {width: 150px;}
  
  /* Member > 회원가입(회원정보 입력) */
  .join-write-ul {border: none;}
  .join-write-li {border: 1px solid var(--color-d9);}
  .join-write-li:last-child {border-bottom: 1px solid var(--color-d9);}
  .join-write-li ~ .join-write-li {margin-top: 10px;}
  .join-write-inner {display: block;}
  .join-write-inner .k {display: block; width: 100%; padding: 12px; font-size: 16px;}
  .join-write-inner .v {display: block; width: 100%; padding: 12px;}
  .join-write-inner .v .text-wrap {font-size: 14px;}

  .join-input-wrap .d-input {width: 100%;}
  .join-input-wrap .btn {width: 105px;}
  .join-input-box {gap: 7px;}
  .join-input-wrap.id .d-input,
  .join-input-wrap.address .add-input01 {width: calc(100% - 112px);}
  .join-input-wrap.pw .d-input {width: 100%;}
  .join-input-wrap.address .join-input-box ~ .join-input-box {margin-top: 7px;}

  .input-tel-ul {justify-content: space-between; gap: 10px;}
  .input-tel-li {font-size: 14px;}
  .input-mail-ul {gap: 10px;}
  .input-mail-li {font-size: 14px;}
  .input-mail-li:last-child {flex: 1;}
  .input-mail-li:last-child .d-select {width: 100%;}
  
  /* Member > 회원가입(가입완료) */
  .join-complete-box {height: auto; padding: 50px 30px;}
  .complete-t1 {padding-bottom: 25px; font-size: 18px;}
  
  /* Member > 아이디 찾기 */
  .find-wrap {padding-top: 40px;}
  .find-info-ul {margin: -5px;}
  .find-info-li {width: 100%; padding: 5px;}
  .find-info-li .box {height: auto; padding: 20px;}
  .find-info-li .t1 {font-size: 20px;}
  .find-info-li .t2 {padding: 10px 0; font-size: 16px;}
  .find-info-li .btn {width: 150px;}

  .find-result {padding-top: 30px;}
  .fs-title {padding-bottom: 10px; font-size: 20px;}
  .find-result .box {padding: 20px;}
  .find-result .fs-txt {font-size: 20px; text-align: center;}
  .fs-btn-wrap {padding-top: 10px; gap: 5px;}

  /* Member > 마이페이지(회원정보수정) */
  #modify_info .join-wrap {padding-top: 40px;}

  /* Member > 회원탈퇴 */
  #withdrawal .join-wrap {padding-top: 40px;}

  .withdrawal-box {height: auto;}
  .withdrawal-box .icon {width: 80px; height: 80px;}
  .withdrawal-box .icon img {width: 35px; max-width: 50%;}
  .withdrawal-box .t1 {padding: 20px 0 13px; font-size: 20px;}
  .withdrawal-box .t2 {font-size: 18px;}

  /* Policy > 이용약관 */
  .term-wrap {padding-top: 40px;}
  .term-title {padding-bottom: 10px; font-size: 20px;}
  .term-box {padding: 20px; font-size: 14px; line-height: 1.5;}

  /* Policy > 개인정보처리방침 */
  .policy-tab {margin: -3px;}
  .policy-tab-li {padding: 3px;}
  .policy-tab-btn {padding: 0 10px; font-size: 16px;}

  .policy-inner ~ .policy-inner {padding-top: 30px;}
  .policy-title01 {margin-bottom: 7px; font-size: 20px;}
  .policy-text01 {font-size: 15px; line-height: 1.5;}
  .policy-text02 {font-size: 15px; line-height: 1.5;}
  .policy-inner .dot::before {top: 10px;}
  .policy-inner .mrt {margin-top: 0.5em;}
  
  /* Etc > 사이트맵 */
  .sitemap-ul {margin: -5px;}
  .sitemap-li {width: 50%; padding: 5px;}
  .sitemap-box.bg01 {background-color: transparent;}
  .sitemap-li:nth-child(2n) .sitemap-box {background-color: var(--color-f5);}
  .sitemap-title {font-size: 20px;}
  .sitemap-list li a {font-size: 17px;}
}

@media screen and (max-width: 480px) {
  /* Common */
  .top-wrap {right: 10px; bottom: 10px;}
  .top-btn {width: 35px; height: 35px;}
  .top-btn img {width: 13px;}

  /* Footer */
  .footer-menu-list {margin: -1px -7px;}
  .footer-menu-item {padding: 1px 7px;}
  .footer-info-list {flex-wrap: wrap; gap: 0;}
  .footer-info-item {width: 100%; margin-top: 0;}
  .footer-info-item::before {display: none;}

  /* Main */
  .main-sec.second-section {margin-top: 30px;}
  .main-sec.third-section {margin-top: 30px;}
  
  /* Sub */
  .sub-visual {height: 200px;}
  .sub-visual-title {font-size: 28px;}

  .sub-menu-list {border-left: 1px solid var(--color-ccc);}
  .sub-menu-item {height: 45px;}
  .sub-menu-item.home {display: none;}
  .sub-menu-item.depth {min-width: 120px;}

  .sub-util-btn {width: 32px; height: 32px;}
  
  .sub-contents {padding-top: 30px;}
  .sub-title {font-size: 28px;}
  .sub-content {padding-top: 30px; padding-bottom: 60px;}

  /* Contents > 회사소개 > 회사개요 */
  .overview-title {margin-bottom: 20px; font-size: 22px;}
  .overview-title br {display: none;}
  .business-goal-item {width: 100%;}
  .business-goal-inner {padding: 15px; text-align: center;}
  .business-goal-icon {margin: 0 auto;}
  .business-goal-name {margin-top: 5px; font-size: 18px;}
  .business-goal-description {margin-top: 2px;}

  .overview-content02 {margin-top: 60px;}
  .business-info-item {flex-direction: column; align-items: flex-start; gap: 5px;}
  .business-info-head {width: 100%; margin: 0;}
  .business-info-icon {width: 18px; height: 18px;}
  .business-info-title {font-size: 18px;}
  .business-info-body {width: 100%;}

  .overview-content03 {margin-top: 50px; padding-top: 50px; padding-bottom: 60px;}
  .business-certificate-list {margin: -10px -5px;}
  .business-certificate-item {padding: 10px 5px;}

  /* Contents > 회사소개 > 주요고객사 */
  .client-list {gap: 10px;}
  .client-item {width: calc((100% - 10px) / 2);}
  
  /* Contents > 사업안내 > SI, SM */
  .business-scope-wrap {margin-top: 25px;}
  .business-scope-inner {padding: 15px;}
  .business-scope-icon {width: 35px; margin-bottom: 5px;}
  .business-scope-name {font-size: 15px;}
  
  .business-graphic-wrap {margin-top: 40px;}
  .business-graphic-wrap .wrapper2 {flex-wrap: wrap; gap: 20px 0;}
  .business-graphic-box {vertical-align: top; width: 100%;}
  .business-graphic-title {padding: 12px 10px; font-size: 15px;}
  .business-graphic-text {font-size: 14px;}
  
  /* Member > 로그인 */
  .login-input {margin-bottom: 15px;}
  .login-txt {font-size: 16px;}

  .member-info-link-ul {margin: 0 -12px; padding-top: 15px;}
  .member-info-link-li {padding: 0 12px;}
  .member-info-link-li a {font-size: 14px;}

  /* Member > 회원가입(약관동의) */
  .join-step-box {padding: 25px 0 20px;}
  .join-step-li {min-width: 25%;}

  .terms-content-wr .txt-area {padding: 15px;}

  .terms-title {font-size: 18px;}

  .join-btn-wrap {padding-top: 20px;}
  
  /* Member > 회원가입(본인인증) */
  .identification-li .box {padding: 15px;}
  .identification-li .t1 {font-size: 18px;}
  .identification-li .t2 {padding: 8px 0;}

  /* Member > 회원가입(회원정보 입력) */
  .join-write-inner .k {padding: 10px; font-size: 15px;}
  .join-write-inner .v {padding: 10px;}
  .join-input-wrap .btn {width: 90px; font-size: 13px;}
  .join-input-wrap.id .d-input,
  .join-input-wrap.address .add-input01 {width: calc(100% - 97px);}

  .input-tel-ul {gap: 5px;}
  .input-mail-ul {flex-wrap: wrap; gap: 5px;}
  .input-mail-li {width: calc((100% - 22px) / 2);}
  .input-mail-li:nth-child(2) {width: 12px;}
  
  /* Member > 회원가입(가입완료) */
  .join-complete-box {padding: 30px 20px;}
  .complete-t1 {padding-bottom: 15px; font-size: 16px;}
  
  /* Member > 아이디 찾기 */
  .find-wrap {padding-top: 20px;}
  .find-info-li .box {padding: 15px;}
  .find-info-li .t1 {font-size: 18px;}
  .find-info-li .t2 {padding: 8px 0;}

  .fs-title {font-size: 18px;}
  .find-result .box {padding: 15px;}
  .find-result .fs-txt {font-size: 18px;}

  /* Member > 마이페이지(회원정보수정) */
  #modify_info .join-wrap {padding-top: 20px;}

  /* Member > 회원탈퇴 */
  #withdrawal .join-wrap {padding-top: 20px;}
  
  .withdrawal-box .icon {width: 60px; height: 60px;}
  .withdrawal-box .icon img {width: 35px; max-width: 50%;}
  .withdrawal-box .t1 {font-size: 18px;}
  .withdrawal-box .t2 {font-size: 16px;}

  /* Policy > 이용약관 */
  .term-wrap {padding-top: 20px;}
  .term-title {font-size: 18px;}
  .term-box {padding: 15px;}
  
  /* Policy > 개인정보처리방침 */
  .policy-tab-li {width: 100%;}
  .policy-tab-btn {height: 45px; font-size: 15px;}

  .policy-title01 {font-size: 18px;}
  
  /* Etc > 사이트맵 */
  .sitemap-li {width: 100%;}
  .sitemap-box {min-height: auto; padding: 15px 15px 20px;}
  .sitemap-title {font-size: 18px;}
  .sitemap-list li a {font-size: 15px;}
}