@charset "utf-8";

.greetings .txt-box {padding: 50px 0 0 40px;}
.greetings h2 {font-size: var(--font-size-40); letter-spacing: -.03em; line-height: 1.4em; color: #242424;}
.greetings h2 .c01 {color: #49b7b9; font-weight: 800;}
.greetings h2 .c02 {color: var(--color-primary); font-weight: 800;}
.greetings .tt {margin-top: 20px; font-size: var(--font-size-16); letter-spacing: -.03em; line-height: 1.75em;}
.greetings .tt span {color: #242424; font-weight: 600;}
.greetings .ceo {margin-top: 30px; font-size: var(--font-size-16); letter-spacing: -.03em; line-height: 1.2em; color: #242424;}
.greetings .ceo span {font-weight: 600; font-size: var(--font-size-20);}

.vision .doc-tit {position: relative; margin-bottom: 40px; text-align: center; padding-bottom: 18px; font-size: var(--font-size-18); font-weight: 800; letter-spacing: -.03em; line-height: 1.2em;}
.vision .doc-tit::before {content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 25px; height: 2px; background-color: var(--color-primary);}
.vision h3 { text-align: center; font-size: var(--font-size-36); font-weight: 600; letter-spacing: -.03em; line-height: 1.2em;}
.vision .items {margin: 55px -10px 65px; display: flex;}
.vision .items .item {width: 25%; padding: 0 10px;}
.vision .items .tt-box {padding: 18px 20px 0;}
.vision .items .tt {margin-bottom: 10px; font-size: var(--font-size-20); font-weight: 700; letter-spacing: -.03em; line-height: 1.2em; color: #242424;}
.vision .items .tt02 {font-size: var(--font-size-16); letter-spacing: -.025em; line-height: 1.75em; color: #242424;}
.vision .cnt02 {padding: clamp(50px, calc( 80 / var(--inner) * 100vw ), 80px) 0 clamp(50px, calc( 160 / var(--inner) * 100vw ), 160px); background-image: url(/images/sub/biz-img6.jpg); width: 100%; height: 100%; background-position: 50%; background-repeat: no-repeat; background-size: cover;}
.vision .cnt01 .doc-tit {color: #242424;}
.vision .cnt01 h3 span {font-weight: 800;}
.vision .cnt01 h3 {position: relative; padding: 0 30px; margin: 0 auto; width: fit-content; color: #242424;}
.vision .cnt01 h3 span {color: var(--color-primary);}
.vision .cnt01 h3::before {content: ''; position: absolute; width: 17px; height: 13px; left: 0; top:0; background-image: url(/images/sub/biz-ico.png);}
.vision .cnt01 h3::after {content: ''; position: absolute; width: 17px; height: 13px; right: 0; top:0; background-image: url(/images/sub/biz-ico2.png);}
.vision .cnt02 .doc-tit {color: #fff;}
.vision .cnt02 h3 {color: #fff;}

.history-tit {padding:0 0 35px 0 ;}
.history-tit h2 {font-size:var(--font-size-46); font-weight:800; line-height:1.2em; letter-spacing:0em; color:#242424;}
.history-tit h2 span {color:var(--color-primary);}
.history-tit p {margin-top:15px; font-size:var(--font-size-18); line-height:1.2em; letter-spacing:-.03em; }
.history {position:relative; padding-top:75px; border-top:1px solid #ddd;}
.history::after {content:''; position:absolute; right:0; top:-160px; width:320px; height:320px; background-image:url(/images/sub/biz-img7.png); background-repeat:no-repeat; background-size:contain;box-shadow:8.192px 5.736px 30px 0px rgba(201, 201, 201, 0.4); border-radius:100%;}
.history .wrap {display:flex;}
.history .year {width:26.3%; padding:0 50px; font-size:var(--font-size-50); font-weight:800; line-height:1.2em; letter-spacing:0em; color:#242424; }
.history .story {flex:1 1 auto; min-width:0; width:1%;}
.history .story .box {position:relative; padding:0 0 40px 60px;}
.history .story .box:last-child {padding-bottom:95px;}
.history .wrap:last-child .box:last-child {padding-bottom:0;}
.history .story .box::before {content:''; position:absolute; left:0; top:10px; width:1px; height:100%; background-color:#ccc;}
.history .wrap:last-child .story .box:last-child:before {display: none;}
.history .story .box h3 {position:relative; margin-bottom:25px; font-size:var(--font-size-28); line-height:1.2em; letter-spacing:0em; color:#242424;}
.history .story .box h3::before {content:''; position:absolute; left:-69px; top:50%; transform:translateY(-50%); width:18px; height:18px; background-image:url(/images/sub/biz-img8.png); background-repeat:no-repeat; background-size:contain;}
.history .story .box ul li {display:flex; align-items:center; margin-bottom:10px;}
.history .story .box ul li:last-child {margin-bottom:0;}
.history .story .box ul li .month {margin-right:17px; width:3%; color:var(--color-primary); font-size:var(--font-size-16); font-weight:700; line-height:1.2em; letter-spacing:0em;}
.history .story .box ul li .txt {flex:1 1 auto; min-width:0; width:1%; font-size:var(--font-size-16);  line-height:1.2em; letter-spacing:0em;}

.org-img {text-align: center;}

.direct .sub-tab {margin-bottom:60px;}
.direct .sub-tab .location-tab {display: flex; width: 100%; height: 50px;}
.direct .sub-tab .location-tab li {display: flex; width: 50%; align-items: center; justify-content: center; text-align: center;font-size:var(--font-size-18); font-weight:600; letter-spacing:-0.03em; line-height:1.44em; color:#898989; background-color:#fafafa; border:1px solid #dddddd;  border-bottom:1px solid var(--color-primary);}
.direct .sub-tab .location-tab li:nth-child(1) {border-radius: 20px 0 0 0; border-right: 0;}
.direct .sub-tab .location-tab li:nth-child(2) {border-radius:0  20px 0 0; border-left: 0;}
.direct .sub-tab .location-tab li.active {border-radius:20px 20px 0 0; border:1px solid var(--color-primary); border-bottom:none; background-color:#fff; color:var(--color-primary);}
.direct #tab2.location .map {display: flex; flex-wrap: wrap; justify-content: space-between;}
.direct #tab2.location .img {width: 49%;}
.direct #tab2.location .img img {height:100%;}
.direct #tab2.location .root_daum_roughmap {width:49% !important;}
.direct .location-wrap {position:relative;}
.direct .location {position:absolute; left:0; top:0; width:100%; height:100%; opacity:0; z-index:-1;}
.direct .location.on {opacity:1; z-index:1; position:relative;}
.direct .root_daum_roughmap {width:100% !important;}
.root_daum_roughmap .wrap_controllers,
.root_daum_roughmap .cont,
.root_daum_roughmap .border1,
.root_daum_roughmap .border2,
.root_daum_roughmap .border3,
.root_daum_roughmap .border4 {display:none;}
.directions {margin-top:40px;}
.directions .address-info {margin-bottom:30px;}
.directions .address-info .comp {color:var(--color-primary); font-weight:600; margin-bottom:2px;}
.directions .address-info .addr {color:#242424; font-size:23px; font-weight:600; line-height:1.33em; letter-spacing:-.03em; margin-bottom:5px;}
.directions .address-info .etc {color:#454545;}
.directions .address-info .etc span {display:inline-block; margin-right:16px;}
.directions .address-info .etc span:last-child {margin-right:0;}
.directions .contact-info {border-top:1px solid #ddd; line-height:1.5em;}
.directions .contact-info dl {display:flex; padding:28px 0; border-bottom:1px solid #ddd;}
.directions .contact-info dt {width:180px; padding-left:30px; color:#242424; font-size:1.125em; font-weight:500;}
.directions .contact-info dt svg {vertical-align:middle; margin:-.2em 15px 0 0;}
.directions .contact-info dt path {fill:#ababab;}
.directions .contact-info dd {flex:1 1 auto; min-width:0; width:1%; color:#454545;}

@media (max-width: 1024px) {
	.root_daum_roughmap .wrap_map {height:300px !important;}
	.directions .address-info .addr {font-size:20px;}
	.directions .contact-info dl {padding:20px 0;}
	.directions .contact-info dt {padding-left:20px; width:140px;}
}

@media (max-width: 640px) {
	.root_daum_roughmap .wrap_map {height:250px !important;}	
	.directions {margin-top:30px;}
	.directions .address-info .addr {font-size:18px;}
	.directions .address-info {margin-bottom:20px;}
	.directions .contact-info dl {padding:16px 0;}
	.directions .contact-info dt {padding-left:5px; width:110px;}
	.directions .contact-info dt svg {margin-right:10px;}
}

.business .items {display: flex; flex-wrap: wrap; justify-content: center;}
.business .txt-box {padding: 30px 0 0 20px;}
.business .txt-box .tit {display: flex; align-items: center; margin-bottom: 25px;}
.business .txt-box .num {display: inline-flex; align-items: center; justify-content: center; font-size: var(--font-size-15); font-weight: 800; letter-spacing: 0; color: #fff; width: 30px; height: 30px; border-radius: 100%; background-color: var(--color-primary);}
.business .txt-box .txt01 {margin-left: 10px; font-size: var(--font-size-28); font-weight: 600; letter-spacing: -.03em; color: #242424; line-height: 1.2em;}
.business .txt-box .txt02 {font-size: var(--font-size-16); letter-spacing: -.03em; color: #242424; line-height: 1.75em;}
.spatial .items {margin: 0 -15px -60px;}
.spatial .item {width: 50%; padding: 0 15px; margin-bottom: 60px;}
.geodetic .items,
.underground .items,
.cadastral .items,
.drone .items {margin: -15px;}
.geodetic .item,
.underground .item,
.cadastral .item,
.drone .item {width: 33.33%; padding:15px;}


.performance .items {display: flex; flex-wrap: wrap;}
.performance .item {padding: 15px;}
.performance .item p {text-align: center; margin-top: 15px; font-size:var(--font-size-16); line-height:1.2em; letter-spacing:-.03em;}
.certification .items {margin: -14px;}
.certification .item {width: 33.33%; padding:14px;}
.patent .items {margin:0  -15px -40px;}
.customers .items {margin:0  -9.5px -40px}
.customers .item {width: 20%; padding: 0 9.5px; margin-bottom: 40px;}
.patent .item {width: 20%; padding: 0 15px; margin-bottom: 40px;}

.major-performance {padding-top: 65px; border-top: 1px solid #242424;}
.major-performance .group {position:relative; padding-bottom:58px;}
.major-performance .group:before {content:""; position:absolute; left:50%; top:0; bottom:0; width:1px; border: 1px dashed #ededed;}
.major-performance .group:last-child {margin-bottom:0;}
.major-performance .group:last-child::before {display:none;}
.major-performance .group h3 {position:relative; font-size:30px; font-weight:700; color: var(--color-primary); line-height:1.2em; margin-bottom:30px; z-index:2;}
.major-performance .group h3:before {content:""; position:absolute; top:0; width:26px; height:26px; background-image: url(/images/sub/biz-ico3.jpg);  border-radius:100%;}
.major-performance .group ul li {position:relative; margin-bottom:.5em; font-size:16px; line-height:1.2em; letter-spacing:-.04em;}
.major-performance .group ul li:last-child {margin-bottom:0;}
.major-performance .group ul li .month {position:absolute; top:0; color:#2c2c2c; font-weight:700;}
.major-performance .group:nth-child(even) {padding-left:50%;}
.major-performance .group:nth-child(even) h3 {padding-left:60px;}
.major-performance .group:nth-child(even) h3:before {left:-13px;}
.major-performance .group:nth-child(even) ul {padding-left:60px;}
.major-performance .group:nth-child(even) ul li .month {left:0;}
.major-performance .group:nth-child(odd) {padding-right:50%; text-align:right;}
.major-performance .group:nth-child(odd) h3 {padding-right:60px;}
.major-performance .group:nth-child(odd) h3:before {right:-13px; border-color:#a9d5ff;}
.major-performance .group:nth-child(odd) ul {padding-right:60px;}
.major-performance .group:nth-child(odd) ul li .month {right:0;}

