@import url("sub.css");
/* 기업 소개 */
.basic_cont:has(.overview_cont){width: 100%; max-width: 100%; margin-bottom: 380px;}

.overview_cont {display: flex; flex-direction: column; gap: 60px;}

.overview_cont .toptxt p:first-child {margin-bottom: 20px; font-size: 1.667rem; line-height: 140%; letter-spacing: var(--letter-spacing-default);}

.overview_cont .imgtxt {background: url('/company/img/overview_imgtxt.jpg') center / cover no-repeat; min-height: 550px; padding: 30px 0; display: flex; align-items: center; justify-content: center;}
.overview_cont .imgtxt p {letter-spacing: var(--letter-spacing-relaxed);}

.overview_cont .overview_main {padding-bottom: 20px;}
.overview_cont .overview_main p:first-child {margin-bottom: 30px;}
.overview_cont .grayBox_wrap {position: relative;}
.overview_cont .grayBox {display: flex; align-items: center; justify-content: center; padding: 100px 30px; position: relative;}
.overview_cont .grayBox .imgbox img {width: 100%; max-width: 1057px;}
.overview_cont .grayBox_wrap .mascot {position: absolute; bottom: 139px; right: 27px; transform: translateY(100%); width: 30%; max-width: 309px;}
.overview_cont .grayBox_wrap .mascot img {max-width: 100%;}
.overview_cont .grayBox_wrap .mascot p {position: absolute; left: 24px; bottom: -3px; text-align: right; transform: translateX(-100%);}
 
/* CEO메시지 */
.greeting_cont {display: flex; gap: 60px; align-items: flex-start;}
.greeting_cont .imgbox {flex-shrink: 0; width: 50%; max-width: 740px; border-radius: 30px; overflow: hidden;}
.greeting_cont .imgbox img {width: 100%; max-width: none;}
.greeting_cont .txtbox {display: flex; flex-direction: column; gap: 30px;}
.greeting_cont .txtbox .txtbox_head {display: flex; flex-direction: column; gap: 15px;}
.greeting_cont .txtbox .txtbox_head .fs24 {opacity: 0.6;}
.greeting_cont .txtbox .grayBg {padding: 55px 30px; border-radius: 30px;}
.greeting_cont .txtbox .grayBg dl {display: flex; align-items: center; justify-content: center; gap: 15px; margin-bottom: 30px;}
.greeting_cont .txtbox .grayBg dl dt {order: 0;}
.greeting_cont .txtbox .grayBg dl::before {order: 1; content: '='; font-size: 1.333rem; color: var(--black); font-weight: 600; font-family: var(--eng); line-height: 125%;}
.greeting_cont .txtbox .grayBg dl dd {order: 2; font-size: 1.333rem; line-height: 141.667%;}

/* 오시는 길 */
.location_cont {display: flex; gap: 30px; align-items: flex-start;}

.location_cont .mapbox .root_daum_roughmap_landing {width:100% !important; height:600px; overflow:hidden; border: 1px solid var(--border);}
.location_cont .mapbox .wrap_map {height:100% !important; width: 100%;}
.location_cont .mapbox .root_daum_roughmap .wrap_controllers, .location-content figure .root_daum_roughmap .cont {display:none;} 
.location_cont .mapbox .root_daum_roughmap_landing .map_border {display:none;}



.location_cont .location_tab {width: 360px; flex-shrink: 0;}
.location_cont .location_tab ul {display: flex; flex-direction: column; gap: 15px;}
.location_cont .location_tab a {display: flex; align-items: center; gap: 15px;}
.location_cont .location_tab i {width: 60px; aspect-ratio: 1/1; border-radius: 50%; background: var(--grayBg); display: flex; align-items: center; justify-content: center; position: relative; transition: all 0.5s ease; flex-shrink: 0;}
.location_cont .location_tab i img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: opacity 0.5s ease;}
.location_cont .location_tab i img:last-child {opacity: 0;}

.location_cont .location_tab a:hover {color: var(--black);}
.location_cont .location_tab a:hover i {background: var(--main);}
.location_cont .location_tab a:hover i img:first-child {opacity: 0;}
.location_cont .location_tab a:hover i img:last-child {opacity: 1;}

.location_cont .location_tab li.active i {background: var(--main);}
.location_cont .location_tab li.active p {color: var(--black);}
.location_cont .location_tab li.active i img:first-child {opacity: 0;}
.location_cont .location_tab li.active i img:last-child {opacity: 1;}

.location_cont .location_tab_cont {flex: 1; position: relative;}
.location_cont .location_tab_cont > ul > li {opacity: 0; pointer-events: none;}
.location_cont .location_tab_cont > ul > li.active {opacity: 1; pointer-events: auto;}


.location_cont .location_tab_cont .mapbox {margin-bottom: 30px;}

.location_cont  .location_tab_cont .map_info {display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 20px;}
.location_cont  .location_tab_cont .map_info_left {display: flex; gap: 30px; align-items: flex-start;}
.location_cont  .location_tab_cont .info_dl {display: flex; flex-wrap: wrap; gap: 2px 30px;}
.location_cont  .location_tab_cont .info_dl dl {display: flex; gap: 5px; align-items: flex-start;}
.location_cont  .location_tab_cont .info_dl dl:first-of-type {width: 100%;}
.location_cont  .location_tab_cont .info_dl dl dt {display: flex;}
.location_cont  .location_tab_cont .info_dl dl dt::before {font-size: 18px; line-height: 30px;}
.location_cont  .location_tab_cont .info_dl dl.addr dt::before {content: '\e0c8';}
.location_cont  .location_tab_cont .info_dl dl.tel dt::before {content: '\e0b0';}
.location_cont  .location_tab_cont .info_dl dl.fax dt::before {content: '\e8ad';}
.location_cont  .location_tab_cont .map_link {flex-shrink: 0;}
.location_cont  .location_tab_cont .map_link ul {display: flex; gap: 5px;}
.location_cont  .location_tab_cont .map_link a {width: 60px; display: flex; aspect-ratio: 1/1; position: relative;}
.location_cont  .location_tab_cont .map_link a img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: opacity 0.5s ease;}
.location_cont  .location_tab_cont .map_link a img:last-child {opacity: 0;}

.location_cont  .location_tab_cont .map_link a:hover img:last-child {opacity: 1;}
.location_cont  .location_tab_cont .map_link a:hover img:first-child {opacity: 0;}

.location_cont  .location_tab_cont .map_link a.naver {background: #10d265; border: 1px solid #10d265;}
.location_cont  .location_tab_cont .map_link a.kakao {background: #FAE100; border: 1px solid #FAE100;}
.location_cont  .location_tab_cont .map_link a.naver:hover {background: var(--white); border-color: #10d265;}
.location_cont  .location_tab_cont .map_link a.kakao:hover {background: #371C1D; border-color: #371C1D;}

.location_cont  .location_tab_cont > ul > li:not(:first-child) {position: absolute; top: 0; right: 0; width: 100%; height: 100%;}
.location_cont  .location_tab_cont > ul > li:not(:first-child) .map_info {align-items: center;}
.location_cont  .location_tab_cont > ul > li:not(:first-child) .map_info_left {align-items: center;}


/*******************************************************************************
    @media 1700px
*******************************************************************************/
@media all and (max-width:1700px){

}

/*******************************************************************************
    @media ~1500px
*******************************************************************************/
@media all and (max-width:1500px){

}

/*******************************************************************************
    @media ~1300px
*******************************************************************************/
@media all and (max-width:1300px){
/* 기업 소개 */
.overview_cont .imgtxt {min-height: 400px;}

/* CEO메시지 */
.greeting_cont {gap: 40px;}
.greeting_cont .txtbox .grayBg {padding: 40px 25px}
.greeting_cont .txtbox .grayBg p.fs18 br {display: none;}

.greeting_cont .txtbox .grayBg dl dd {font-size: 1.2rem;}
.greeting_cont .txtbox .grayBg dl::before {font-size: 1.2rem;}

/* 오시는 길 */
.location_cont .location_tab {width: 300px;}
.location_cont .location_tab_cont .map_info_left {width: 100%;}
}

/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){
/* 기업 소개 */
.basic_cont:has(.overview_cont) {margin-bottom: 240px;}
.overview_cont {gap: 40px;}

.overview_cont .toptxt p:first-child {margin-bottom: 10px; font-size: 1.3rem;}

.overview_cont .imgtxt {min-height: 350px; padding: 20px 0;}

.overview_cont .overview_main {padding-bottom: 10px;}
.overview_cont .overview_main br {display: none;}
.overview_cont .overview_main p:first-child {margin-bottom: 15px;}

.overview_cont .grayBox {padding: 70px 20px;}
.overview_cont .grayBox_wrap .mascot {width: 25%; bottom: 20%;}
.overview_cont .grayBox_wrap .mascot p {left: 8%;}

/* CEO 메시지 */
.greeting_cont {flex-wrap: wrap; gap: 30px;}
.greeting_cont .imgbox {width: 100%; max-width: none; border-radius: 15px; aspect-ratio: 1 / 0.8;}
.greeting_cont .imgbox img {object-fit: cover; height: 100%;}
.greeting_cont .txtbox {width: 100%; gap: 15px;}
.greeting_cont .txtbox .txtbox_head br {display: none;}
.greeting_cont .txtbox .txtbox_head {gap: 10px;}
.greeting_cont .txtbox .grayBg {padding: 30px 20px; border-radius: 15px;}
.greeting_cont .txtbox .grayBg dl {margin-bottom: 15px;}

/* 오시는 길 */
.location_cont .mapbox .root_daum_roughmap_landing {height: 400px;}

.location_cont .location_tab {width: 240px;}
.location_cont .location_tab i {width: 50px;}
.location_cont .location_tab i img {width: 30px;}

.location_cont .location_tab_cont .mapbox {margin-bottom: 20px;}
.location_cont .location_tab_cont .map_info_left {gap: 20px;}
.location_cont .location_tab_cont .info_dl dl dt::before {line-height: 27px;}
.location_cont .location_tab_cont .map_link a {width: 50px;}
}

/*******************************************************************************
    @media 768px
*******************************************************************************/
@media all and (max-width:768px){
/* 오시는 길 */
.location_cont {flex-wrap: wrap;}

.location_cont .location_tab {width: 100%;}
.location_cont .location_tab ul {flex-direction: row; gap: 10px;}
.location_cont .location_tab ul li {flex: 1;}
.location_cont .location_tab ul li a {gap: 10px; border: 1px solid var(--border); padding: 15px; justify-content: center; flex-direction: column; height: 100%; text-align: center;}
.location_cont .location_tab ul li.active a {border-color: var(--main);}

.location_cont .location_tab_cont {width: 100%;}
}

/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){
/* 기업 소개 */
.basic_cont:has(.overview_cont) {margin-bottom: 80px;}

.overview_cont {gap: 30px;}

.overview_cont .imgtxt {min-height: 300px;}

.overview_cont .grayBox_wrap {position: relative; overflow-x: auto; padding-bottom: 120px;}
.overview_cont .grayBox_wrap .responsive-dim.show {display: block;}
.overview_cont .grayBox {padding: 30px 20px; width: 800px;}

.overview_cont .grayBox_wrap .mascot {width: auto; max-width: none; bottom: 70px;}
.overview_cont .grayBox_wrap .mascot img {height: 180px;}

/* CEO 메시지 */
.greeting_cont .txtbox .txtbox_head {gap: 5px;}
.greeting_cont .txtbox .grayBg {padding: 20px 15px;}
.greeting_cont .txtbox .grayBg dl {gap: 10px;}

/* 오시는 길 */
.location_cont .mapbox .root_daum_roughmap_landing {height: 300px;}

.location_cont .location_tab ul {gap: 5px;}
.location_cont .location_tab ul li a {padding: 10px; height: 100%;}
.location_cont .location_tab ul li a p.fs24 {font-size: 16px;}
.location_cont .location_tab i {width: 40px;}
.location_cont .location_tab i img {width: 22px;}

.location_cont .location_tab_cont .map_info_left {flex-wrap: wrap; gap: 5px;}
.location_cont .location_tab_cont .map_info_left h4 {width: 100%;}
.location_cont .location_tab_cont .info_dl {gap: 2px 20px;}
.location_cont .location_tab_cont .info_dl dl {gap: 3px;}
.location_cont .location_tab_cont .info_dl dl.addr dt::before {font-size: 16px; line-height: 26px;}

.location_cont .location_tab_cont .map_link {width: 100%;}
.location_cont .location_tab_cont .map_link li {width: 50%;}
.location_cont .location_tab_cont .map_link a {width: 100%; aspect-ratio: initial; padding: 20px;}
}

/*******************************************************************************
    @media ~480px               
*******************************************************************************/
@media all and (max-width:480px){
/* 오시는 길 */
.location_cont .location_tab ul li a {flex-direction: column; justify-content: flex-start;}
.location_cont .location_tab ul li a p {text-align: center; flex: 1; display: flex; align-items: center; justify-content: center;}
}

/*******************************************************************************
    @media ~360px
*******************************************************************************/
@media all and (max-width:360px){

}

