@charset "utf-8";


.doc{font-size: 16px;}
.box1{ width:1400px; max-width: 96%; margin:0 auto; position:relative } 
.mobile_only{display:none;}


:root{
	--header_H: 90px;
	--mainColor: #00aeef;
	--subColor: #013074;
	/*--font:'NanumBarunGothic';*/
	--fs_01: "Montserrat", sans-serif;
	--fs_02: "NanumBrush";
}


/*fullpage*/
.section{display: flex; align-items: center; overflow: hidden; background-position: center; background-repeat: no-repeat; background-size: cover;}
.section > *{ width: 100%;}

.mainNav_wrap{ position: fixed; top: 50%; left: 30px; transform: translateY(-50%); z-index: 999;}
.mainNav_wrap .mainNav{}
.mainNav_wrap .mainNav li:not(:last-child){ margin-bottom:15px;}
.mainNav_wrap .mainNav li img{filter: brightness(0) invert(.8); width:18px; height: auto;}
.mainNav_wrap .mainNav li.on img{filter:none;}
/*fullpage*/

 
/*header*/
#header{z-index: 200; position: fixed; top: 0; left: 0; width:100%; backdrop-filter: blur(5px); border-bottom: 1px solid rgba(255,255,255,.15);}
#header .va_wrap,
#header .h_wrap{height:var(--header_H);}
#header #logo{z-index:800;}
#header #logo .b_ver{display:none;}
#header #logo img{display:block;}
#header .gnb_wrap{margin:0 auto;}
#header .gnb_wrap .gnb .depth1{margin:0 40px; position: relative;}
#header .gnb_wrap .gnb .depth1 > a{font-size: 1.125em; line-height: inherit; font-weight:400; color:#111; position: relative;}
#header .gnb_wrap .gnb .depth1 > ul{background:#fff; min-width: 160px; border: 1px solid #ddd; border-top:0; margin-top:-2px; transition:all .5s; position:absolute; left:50%; transform:translateX(-50%); max-height:0; overflow:hidden; opacity:0 }
#header .gnb_wrap .gnb .depth1 > ul:after{content: ""; position: absolute; left: 0; top: -2px; width: 100%; height:5px; background-color:var(--mainColor); transform: scaleX(0); transition: .3s;}
#header .gnb_wrap .gnb .depth1 > ul > .depth2 a{display: block; text-align: center; color:#444; border-top: 1px dotted #ddd; font-weight:400; padding: 15px 10px;}
#header .gnb_wrap .gnb .depth1 > ul > .depth2 a:hover{background: #f5f5f5;}
#header .gnb_wrap .gnb .depth1:hover ul{ max-height:500px; opacity:1 }
#header .gnb_wrap .gnb .depth1:hover > ul:after{transform: scaleX(1);}

/*검색*/
#header .hd_sch_btn{font-size:1.125em; color:#fff; cursor: pointer;}
#header .hd_sch_btn.on .xi:before{content:'\e921';}
#header .hd_sch_wr #hd_sch{border:1px solid rgba(255,255,255,.8); border-radius: 50px; position: relative; width:240px; overflow: hidden;}
#header .hd_sch_wr #hd_sch #sch_stx{border:0; background:transparent; color:#fff; width:100%; height: 45px; padding:5px 55px 5px 20px; font-size:.95em; box-sizing: border-box;}
#header .hd_sch_wr #hd_sch #sch_stx::placeholder{color:rgba(255,255,255,.8)!important;}
#header .hd_sch_wr #hd_sch button{border:0; background-color:var(--mainColor); width:38px; height: 38px; color:#fff; position: absolute; top:50%; transform: translateY(-50%); right:4px; border-radius: 50%; font-size:.9em;}

/*회원*/
#header .hd_login{margin-left:20px;}
#header .hd_login > li a{color:#fff; margin-left:15px; font-weight: 300;}
#header .hd_login > li:first-child a{margin-left:0px;}
#header .hd_login > li .xi{vertical-align: baseline; margin-right:4px;}

/*전체메뉴버튼*/
#header .btn_gnb{width:30px; height: 38px; position: relative; z-index: 10000; margin-left:6px;}
#header .btn_gnb .bar_i{width:30px; height: 2px; background:#666; margin:8px 0; display: block; transition:.3s;}
#header .btn_gnb .bar_i.n_02{width:21px; margin-left:auto;}
#header .btn_gnb:hover .bar_i.n_02{width:30px;}
#header .btn_gnb.on .bar_i{background: #333;}
#header .btn_gnb.on .bar_i.n_02{display:none;}
#header .btn_gnb.on .bar_i:nth-child(1){position: absolute; top: 30%; left: 0px; transform:translateY(-50%) rotate(45deg)}
#header .btn_gnb.on .bar_i:nth-child(3){position: absolute; top: 30%; right: 0px; transform:translateY(-50%) rotate(-45deg)}
.scroll #header .btn_gnb .bar_i{background: #666;}
#header .btn_gnb.on .bar_i{background: #666!important;}
.fp-viewing-0 #header{background-color: transparent; backdrop-filter: none;}
.pc_all_menu .gnb_all > li.depth1{margin-bottom: 4.5em;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1{font-weight: 700;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1 .c_dot{display: none;}


/*스크롤 header*/
.scroll #header{background-color: rgba(255, 255, 255, .5); }
/*
.scroll #header #logo .a_ver{display:block;}
.scroll #header #logo .b_ver{display:none;}
*/
.scroll #header .gnb_wrap .gnb .depth1 > a{color:#222;}
.scroll #header .hd_sch_btn{color:#555;}
.scroll #header .hd_sch_wr #hd_sch{border-color:#ccc;}
.scroll #header .hd_sch_wr #hd_sch #sch_stx{color:#555;}
.scroll #header .hd_sch_wr #hd_sch #sch_stx::placeholder{color:#aaa!important;}
.scroll #header .hd_login > li a{color:#555;}
.sub.scroll #header{backdrop-filter:blur(5px);}
.sub.scroll #header #logo{filter: inherit;}
.sub.scroll #header .gnb_wrap .gnb .depth1 > a{color: #222;}
.sub.scroll #header .btn_gnb .bar_i{background: #666;}

.on#header{background-color:transparent;}
.on#header #logo{filter: grayscale(1) brightness(100);}
.on#header .gnb_wrap .gnb .depth1 > a{color:#fff!important;} 
.on#header .btn_gnb .bar_i{background: #fff;}


.sub #header{backdrop-filter:blur(0);}
.sub #header #logo{filter: grayscale(1) brightness(100);}
.sub #header .gnb_wrap .gnb .depth1 > a{color: #fff;}
.sub #header .btn_gnb .bar_i{background: #fff;}


/*탑버튼*/
.qk_list{position: fixed; bottom:10px; right: 15px; z-index: 100;font-size: 16px; }
.qk_list li{ margin-top: 5px;}
.qk_list li a{display: block; width: 52px; height: 52px; line-height: 52px; text-align: center;  border-radius: 20px; font-size: 1.45em;  box-shadow: 2px 2px 3px rgb(0 0 0 / 20%); overflow: hidden; margin-left: auto; background-color: #333; color: #fff; transition: .5s; border:1px solid #0000;}
.qk_list li .xi{width: 52px; line-height: 52px; text-align:center;}
.qk_list li .stx{font-style: normal; font-size: .75em; width:0; overflow: hidden; display: none; font-weight: 700;}
.qk_list li a:hover .stx{width:auto; overflow: hidden; display: block;}
.qk_list li .qk_kakao{background-color: #faea00; color:#111;}
.qk_list li .qk_kakao .xi{font-size:1.2em;}
.qk_list li .qk_kakao .stx{font-size:.7em; color:#111;}
.qk_list li .qk_kakao:hover{width:170px;}

.main .qk_list .qk_top{display: none!important;}
.main .qk_list .top_btn{}
.sub .qk_list .qk_top{} 
.sub .qk_list .top_btn{display: none!important;} 


/*footer*/
.main #footer{margin-top:0;} 
#footer { background: #111; position: relative; padding-bottom:100px; margin-top: 8em; overflow: hidden;}
#footer .f_bg_txt { width: 100%; white-space: nowrap; text-align: center; padding: 50px 0;}
#footer .f_bg_txt span { font-size: 1.875em; font-weight: 500; color: #f5f5f5; opacity: .2; letter-spacing: .5px; font-family: var(--fs_01);}
#footer .f_logo { width: 330px; margin-right: 40px; }
#footer .f_logo img { max-width: 100%; }
#footer .f_info_w { width: calc(100% - 370px); }
#footer .f_info > li { font-size: 1em; color: #bbb; margin-right: 60px; margin-top: 10px; letter-spacing: 0; }
#footer .f_info > li.cl { width: 100%; margin-right: 0; }
#footer .f_info > li:last-child { margin-right: 0; }
#footer .f_info > li > span { color: #888; margin-right: 15px; display: inline-block; font-weight: 400; }
#footer .f_copy { margin-top: 40px; font-size: 0.875em; color: #666; letter-spacing: .2px; }

/*서브 비주얼*/
.sub_v_wrap{position: relative;}
#sub_visual{height:430px; position: relative; overflow: hidden;}
#sub_visual .bgfix{position:absolute; top: 0; left:0; width:100%; height: 100%; transform: scale(1.15); transition-timing-function: ease-in-out; transition: 1s;}
#sub_visual .sub_v_tit{ font-weight: 700; text-align:center; font-size:3.625em; color:#fff; position: relative; z-index: 10; margin-right:3em; opacity:0; transition:1s;}
.load #sub_visual .bgfix{transform: scale(1);}
.load #sub_visual .sub_v_tit{margin-right:0; opacity:1}

#snb { position: absolute; bottom:0; left:50%; transform: translateX(-50%); z-index: 10; width:96%;}
#snb .sdp_list > li {width:20%; position: relative;}
#snb .sdp_list > li.on:before{content:''; width:30px; height: 30px; background-image: url(../img/sub/bor_r.svg); position: absolute; bottom: -2px; left: -28px; transform: rotate(90deg);}
#snb .sdp_list > li.on:after{content:''; width:30px; height: 30px; background-image: url(../img/sub/bor_r.svg); position: absolute; bottom: -2px; right: -28px; transform: rotate(180deg);}
#snb .sdp_list > li.on .va_wrap{background-color: rgba(255,255,255,1); color:#111;}
#snb .sdp_list > li .va_wrap{height:65px; background-color: rgba(255,255,255,.3); font-size: 1.0625em; color:#fff;}
 


#sub_visual.sub10 .bgfix{background-image:url(../img/sub/sub_v_01.jpg);}
#sub_visual.sub20 .bgfix{background-image:url(../img/sub/sub_v_02.jpg);}
#sub_visual.sub30 .bgfix{background-image:url(../img/sub/sub_v_03.jpg);}
#sub_visual.sub40 .bgfix{background-image:url(../img/sub/sub_v_04.jpg);}
#sub_visual.sub50 .bgfix{background-image:url(../img/sub/sub_v_05.jpg);}

/*snb*/
/* #snb { position: absolute; bottom:4em; left:50%; transform: translateX(-50%); z-index: 10; opacity: 0; transition: 1.5s; width:96%;}
#snb .snb_list .sdp1 a{display:block; width:55px; height: 55px; line-height: 55px; border-radius: 50%; text-align:center; background-color:var(--mainColor); color:#fff; font-size:1.125em;}
#snb .snb_list .sdp2,
#snb .snb_list .sdp3,
#snb .snb_list .last{position: relative; width:250px; border-bottom:1px solid rgba(255,255,255,.3);padding:15px 20px; margin-left:20px; cursor: pointer; box-sizing: border-box;}
#snb .snb_list .last{cursor: default;}
#snb .snb_list .sdp_tt{ color:#fff; font-size:1.125em; font-weight: 500; padding-right:20px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
#snb .snb_list .sdp_tt:before{content:'\e943'; font-family: 'xeicon'; position: absolute; top: 50%; right:20px; transform: translateY(-50%); font-size:.938em;}
#snb .snb_list .last .sdp_tt:before{display:none;}
#snb .snb_list .sdp_list_wrap{ max-height: 0px; position: absolute; top: 75px; left: 0;  width: 100%;  background: #fff; border-radius: 20px; box-sizing: border-box; box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.10); z-index: 10; transition: .3s; transition-timing-function: ease-in-out; opacity: 0; overflow: hidden;}
#snb .snb_list .Aon .sdp_list_wrap{ max-height: 1000px; opacity: 1;}
#snb .snb_list .sdp_list{ padding: 25px; }
#snb .snb_list .sdp_list > li{margin-bottom:7px;}
#snb .snb_list .sdp_list > li:last-child{margin-bottom:0;}
#snb .snb_list .sdp_list > li a{color:#777; font-size:1.05em;}
#snb .snb_list .sdp_list > li.on a{color:var(--mainColor); font-weight: 500;} */
.load #snb{ opacity: 1;}

/*컨텐츠 페이지*/
.ctt_admin{display:none;}/*관리자 내용수정 버튼*/
#ctt header{display:none;}/*컨텐츠 페이지 타이틀 header*/

/*컨텐츠 타이틀*/
.container_title{font-weight: 600; font-size: 2.125em; padding-top: 35px; margin: 55px 0; text-align: center; position: relative;}
.container_title:before{content:''; width:1px; height: 26px; visibility: hidden; transition: .8s; transition-timing-function: ease-in-out; transform: scaleY(0); transform-origin: left top; background: #222; position: absolute; top: 0; left: 50%;}
.load .container_title:before{transform: scaleY(1); visibility: visible;} 

/*개인정보&이용약관*/
.agree_box{ border:1px solid #ddd; background:#f9f9f9; border-radius:5px}
.agree_box .in_con{  padding:2em; border:1px solid #ededed; margin:1em; background:#fff;}
.agree_box .in_con .agree_wrap{ font-size: .938em;}
.agree_box .in_con .agree_wrap span{ display: block;}


/*=================================================================main============================================================*/

/*메인 비주얼*/
.mainSlider{position:relative;}
.mainSlider .el{ height:100vh; position:relative; overflow:hidden}
.mainSlider .el .bg{ position:absolute; left:0; top:0; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; transform:scale(1.2,1.2); transition-delay:1s}
.mainSlider .slogan{ position:absolute; top:50%; left:50%; transform: translate(-50%, -50%);}
.mainSlider .slogan .t1{ font-size:4.125em; display:block; transform:translateY(1em); font-weight: 700; opacity:0; margin-bottom: 5px; line-height: 1.2; color: #111; font-family: var(--fs_01); letter-spacing: 1px;}
.mainSlider .slogan .t2{ font-size:1.75em; font-weight: 500; transform:translateY(1em); opacity:0; line-height: 1.5; margin-top:40px;}
.mainSlider .slogan .t3{ font-size:1.375em; font-weight: 400; transform:translateY(1em); opacity:0; line-height: 1.6; margin-top:35px; color: #888; letter-spacing: .5px;}
.mainSlider .el.swiper-slide-active .bg{ transform:scale(1); transition:2s; transition-delay:0; transition-timing-function:ease-in}
.mainSlider .el.swiper-slide-active .slogan .t1{ transform:translateY(0); opacity:1; transition:1s; transition-delay:.5s}
.mainSlider .el.swiper-slide-active .slogan .t2{ transform:translateY(0); opacity:1; transition:1s; transition-delay:1s}
.mainSlider .el.swiper-slide-active .slogan .t3{ transform:translateY(0); opacity:1; transition:1s; transition-delay:1s}
.mainSlider .el.swiper-slide-active .slogan .main_btn{ transform:translateY(0); opacity:1; transition:.3s;}

.mainSlider .mainSlider-pagination{ position: absolute; left:50%; bottom:3em; transform: translateX(-50%); z-index: 100;}
.mainSlider .mainSlider-pagination .swiper-pagination-bullet{width:120px; height:auto; margin: 0 20px 0 0; border-radius: 0; opacity: .4; background:transparent; color:#fff; border-bottom:2px solid #fff; padding-bottom:5px;}
.mainSlider .mainSlider-pagination .swiper-pagination-bullet-active{opacity: 1;}
.mainSlider .main_btn{margin-top: 50px; width: 180px; height: 55px; border:1px solid #aaa; border-radius: 55px; font-size: 1.0625em; color: #666; transform:translateY(1em); opacity:0; }
.mainSlider .main_btn .xi{margin-left: 50px;}
.mainSlider .main_btn:hover{border-color: #fff; background: #fff; } 

.scroll_wrap{position: absolute; bottom: 0; left:0;width:100%; z-index: 10;}
.scroll_wrap .mainSlide_scroll{ color: #aaa; font-size: .75em; text-align: center; letter-spacing: .5px; font-weight: 500;}
.scroll_wrap .mainSlide_scroll_bar{ width: 1px; height: 47px; background: rgba(170 170 170 / 0.2); margin: 10px auto 0; position: relative; overflow: hidden;}
.scroll_wrap .scroll_bar {width:1px; height: 20px; background: #aaa; animation: box-ani 2s linear infinite backwards; margin-left:-1px; border-radius: 50%;}

@keyframes box-ani { 
0% {transform: translate(50%, 0);}  
100% {transform: translate(50%, 53px);}
}
 

/*메인 샘플용 css*/
.main_section{padding:7em 0;}
.main_section_bg{background-color: #f9f9f9;}
.main_tit{ margin-bottom: 40px;}
.main_tit .in_en{font-family: var(--fs_01); font-size:1.0625em; font-weight: 500; color: #333; margin-bottom: 20px;}
.main_tit .in_en .line{display: inline-block; width: 70px; height: 1px; background: #aaa; margin: 0 10px;}
.main_tit .in_tt{ font-size:3.625em; color:#111; line-height: 1.3; font-family: var(--fs_01);}
.main_tit .in_tx{font-size: 1.375em; color: #444; line-height: 1.8; margin-top: 30px;}
.main_more{text-align:center;}
.main_more a{display: inline-block; padding:13px 50px; border:1px solid #ccc; transition: .3s; color:#888; font-size:1.125em; border-radius: 50px; margin-top: 40px;}.main_more a:hover{border-color:var(--maincolor); background-color:var(--mainColor); color:#fff;}


.control_st{}
.control_st .btn_st{width: 55px; height: 55px; line-height: 55px; border-radius: 50%; border: 1px solid #ccc; text-align: center; font-size: 1.125em; color: #999; cursor: pointer; transition: .3s;}
.control_st .btn_st:hover{}



/* main_company */
.main_company { width: 100%; height: 100%; padding-top: var(--header_H); overflow: hidden; }
.main_company .com_box {margin-top: 140px; margin-left: calc(50% - 700px);}
.main_company .left_tit { width: 700px; padding-right: 50px; position: relative; z-index: 2; }
.main_company .com_control { margin-top: 60px; gap: 10px; }
.main_company .com_control .btn_st:hover { background: var(--mainColor); border-color: var(--mainColor); color: #fff; }
.main_company .right_slide { width: calc(100% - 710px); position: relative; z-index: 1; }
.main_company .swiper-slide .in { display: block; position: relative; overflow: hidden; height: 470px; box-shadow: 0 5px 15px rgba(0, 0, 0, .1);}
.main_company .img_box { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.main_company .img_box .img_z { width: 100%; height: 100%; transition: transform 0.5s; }
.main_company .swiper-slide:hover .img_box .img_z { transform: scale(1.1); }
.main_company .txt_box { position: absolute; left: 0; bottom: 0; width: 100%; padding: 100px 40px 30px; background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 100%); color: #fff; z-index: 2; transition: .3s; }
.main_company .txt_box .tit { font-size: 1.437em; font-weight: 500; }
.main_company .txt_box .xi { font-size: 1.125em; transition: .3s; }
.main_company .swiper-slide:hover .txt_box .xi { transform: translateX(5px); }

/* 반응형 처리 */
/*
@media (max-width: 1420px) {
    .main_company .com_box { margin-left: 5%; }
    .main_company .right_slide { width: calc(95% - 400px); }
}
@media (max-width: 1024px) {
	.main_company { padding: 80px 0; }
	.main_company .com_box { flex-direction: column; align-items: flex-start; }
	.main_company .left_tit { width: 100%; padding-right: 0; margin-bottom: 40px; }
	.main_company .right_slide { width: 100%; }
	.main_company .swiper-slide .in { height: 450px; }
}
*/



/* main_business */
.main_business { width: 100%; height: 100%; padding-top: var(--header_H); overflow: hidden;}
.main_business .bus_box{margin-left: calc(50% - 710px);}
.main_business .left_tit { width: 350px; height: 100vh; padding-top: 75px; border-right: 1px solid rgba(255, 255, 255, 0.2); z-index: 2;}
.main_business .main_tit { margin-bottom: 0; writing-mode: vertical-lr;}
.main_business .main_tit .in_en { color: #fff; margin-bottom: 0; margin-left: 15px;}
.main_business .main_tit .in_en .line {width: 1px; height: 70px; background: rgba(255, 255, 255, .4); margin: 10px 0; }
.main_business .main_tit .in_tt { color: #fff;}
.main_business .bus_control {margin-top: 180px; }
.main_business .bus_control.control_st .btn_st {border: 1px solid rgba(255, 255, 255, .4); color: rgba(255, 255, 255, .7); margin-bottom: 8px;}
.main_business .bus_control.control_st .btn_st:hover { border-color: #fff; color: #fff;}
.main_business .right_slide { width:calc(100% - 405px); z-index: 1;}
.main_business .swiper-slide { height: 100vh; border-right: 1px solid rgba(255, 255, 255, 0.2); }
.main_business .swiper-slide .in { height: calc(100% - var(--header_H)); display: flex; flex-direction: column; padding: 75px 50px 70px;}

.main_business .img_box {display: block; position: relative; overflow: hidden; width: 320px; height: 225px;}
.main_business .img_box .img_z { position: absolute; left: 0; top: 0; width: 100%; height: 100%; transition: transform 0.5s;}
.main_business .swiper-slide:hover .img_box .img_z { transform: scale(1.05); }

.main_business .txt_box { flex: 1; position: relative; display: flex; flex-direction: column; margin-top: 70px; }
.main_business .txt_box .num { font-size: 5em; font-weight: 600; font-style: italic; color: rgba(254, 254, 254, 0.2); margin-bottom: 35px;; line-height: 1; }
.main_business .txt_box .tit { font-size: 1.75em; font-weight: 700; color: #fefefe; margin-bottom: 25px; }
.main_business .txt_box .tt { font-size: 1em; font-weight: 300; line-height: 1.8; color: rgba(254, 254, 254, 0.85); }

/* 아이콘 영역 */
.main_business .txt_box .icon { position: absolute; }
.main_business .s_type2 .txt_box{margin-top: 0;}
.main_business .s_type2 .txt_box .num{margin-top: 150px;}
.main_business .s_type1 .txt_box .icon { right: 0; bottom: 0; }
.main_business .s_type2 .txt_box .icon { right: 0; top: 0; } 

/* 모바일 반응형 처리 */
/*
@media (max-width: 1024px) {
    .main_business .box1 { flex-direction: column; border-left: none; }
    .main_business .left_tit { width: 100%; padding: 2em; flex-direction: row; align-items: center; border-right: none; border-bottom: 1px solid rgba(255, 255, 255, 0.15); }
    .main_business .main_tit { writing-mode: horizontal-tb; display: flex; flex-direction: column-reverse; margin: 0; }
    .main_business .main_tit .in_tt { margin-top: 0; margin-bottom: 10px; }
    .main_business .main_tit .in_en .line { width: 40px; height: 1px; margin: 0 15px; }
    .main_business .bus_control { flex-direction: row; margin-top: 0; }
    .main_business .right_slide { width: 100%; }
}
*/




/* main_solution */
.main_solution { width: 100%; height: 100vh; min-height: 800px; }
.main_solution .left_box { width: 50%; background: #f6f7f9; display: flex; justify-content: flex-end; align-items: center; padding: 90px 5% 50px; }
.main_solution .left_box .inner { width: 100%; max-width: 600px; padding-right: 3.125em; }
.main_solution .left_box .main_tit { margin-bottom: 0; }
.main_solution .sol_list { margin-top: 120px;}
.main_solution .sol_list li { border-bottom: 1px solid #ddd; transition: .3s; }
.main_solution .sol_list li a.in { display: flex; padding: 1.5em 0;}
.main_solution .sol_list li .dot { display: inline-block; width: 6px; height: 6px; background: var(--subColor); border-radius: 50%; margin-right: 1em; opacity: 0; transition: .3s; }
.main_solution .sol_list li .tt { font-size: 1.5em; font-weight: 600; color: #333; transition: .3s; }
.main_solution .sol_list li .en { font-size: 0.625em; color: #999; font-weight: 400; margin-left: 20px; font-family: var(--fs_01); }
.main_solution .sol_list li .xi { font-size: 1.25em; opacity: 0; color: #333; margin-right: 10px; transition: .3s; }

/* 탭 활성화 & Hover CSS 병합 */
.main_solution .sol_list li:hover,
.main_solution .sol_list li.on { border-bottom-color: #333; padding-left: 15px;}
.main_solution .sol_list li:hover .dot,
.main_solution .sol_list li.on .dot,
.main_solution .sol_list li:hover .xi,
.main_solution .sol_list li.on .xi { opacity: 1;}

/* 오른쪽 탭 콘텐츠 영역 */
.main_solution .right_box { width: 50%; position: relative; background-color: #222; }
/* 개별 탭 화면(.idx) 레이아웃 제어 및 전환 효과 추가 */
.main_solution .right_box .idx { display: flex; justify-content: flex-start; align-items: center; padding: 120px 5% 50px; height: 100%; transition: opacity 0.4s ease-in-out, visibility 0.4s; }
.main_solution .right_box .inner { width: 100%; max-width: 600px; padding-left: 92px; position: relative; z-index: 2; }

.main_solution .hover_content { color: #fff; }
.main_solution .rt_tit {display: inline-block; font-size: 2.875em; font-weight: 700; margin-bottom: 0.5em; letter-spacing: -1px; position: relative;}
.main_solution .rt_tit .en { font-size: 1.304em; color: #eee; font-weight: 700; opacity: .15; font-family: var(--fs_01); position: absolute; top: 13px; left: 77%;}
.main_solution .rt_desc p { font-size: 1.25em; font-weight: 300; line-height: 1.6; color: #fff; } 

/* 바로가기 버튼 */
.main_solution .circle_btn { position: relative; width: 175px; height: 175px; margin-top: 80px; display: flex; justify-content: center; align-items: center;}
.main_solution .circle_btn a { position: relative; z-index: 2; width: 125px; height: 125px;  color: #fff; border-radius: 50%; background-image: linear-gradient(175deg, #0160bc 30%, #013277 90%); padding-top: 20px; transition: .3s; }
.main_solution .circle_btn a .txt { font-size: 1em; font-weight: 500; } 
.main_solution .circle_btn a .xi { font-size: 1.125em; }
.main_solution .circle_btn .cir_text { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 1; }
.main_solution .circle_btn .cir_text img { display: block; width: 100%; height: 100%; animation: textSpin 15s linear infinite; transform-origin: 50% 50%; }


@keyframes textSpin { 
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); } 
}



/**/
.main_community{}
.main_community .main_tit{margin-bottom: 35px;}
.main_community .com_btn{display: block; margin-bottom: 30px; font-size: 1em; color: #666;}
.main_community .com_btn .xi{font-size: .937em; margin-left: 6px;}
.main_community .com_slide{width: 100%;}
.main_community .control_st .btn_st{background: #fff; border-color: #fff; box-shadow: 3px 0 10px rgba(0,0,0,.1); position: absolute; top: 40%; transform: translateY(-50%);}
.main_community .control_st .btn_st.in-prev{left: -30px;}
.main_community .control_st .btn_st.in-next{right: -30px;}
.main_community .control_st .btn_st:hover{background: var(--mainColor); border-color: var(--mainColor); color:#fff; }



/**/
.tab_idx{ margin:-1em 0 3em -1em;}
.tab_idx > li{flex:1 20%;}
.tab_idx > li > a{ padding:0 .5em; height:4em; border:1px solid #ddd; margin:1em 0 0 1em; color:#666; transition:.3s;}
.tab_idx > li > a .va{font-size:1.068em; font-weight:500}
.tab_idx > li > a:hover,
.tab_idx > li.on > a{ box-shadow:0 0 1em .125em rgba(0,0,0,.1); color:var(--mainColor); border-color:var(--mainColor)}

/**/
.page_tt{font-size:2em; font-weight: 700; line-height: 1.4}
.page_stt{font-size:1.45em; font-weight: 600;}
.page_en{font-size:1.125em; font-weight: 500; font-family: var(--fs_01); margin-left:15px; position: relative; margin-bottom: 10px; display: inline-block;}
.page_en:before{content:''; display: block; width: 6px; height:6px; border-radius: 50%; background:var(--mainColor); position: absolute; top:10px; left: -15px;}
.page_tx{font-size:1.125em; font-weight: 300; color:#222;}
.page_stx{font-size:1em; font-weight: 300;}


.dot_list{padding: 0!important; margin: 0!important; text-align: left;}
.dot_list > li{line-height: 1.8; font-size: 1em; position: relative; padding-left: 15px;}
.dot_list > li:before{content: ''; display: block; width: 4px; height: 4px; background: var(--subColor); border-radius: 50%; position: absolute; top: 12px; left: 0;}

.table_st{table-layout:fixed; border-top: 2px solid #333; margin-bottom: 10px;}
.table_st th, 
.table_st td{padding: 1em; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; text-align: left; line-height: 1.6;}
.table_st th{color:#222; /*background-color:#f9f9f9; */font-size:1em; font-weight: 500;}
.table_st td{color:#666;} 
.table_st .co_1{background: #f9f9f9;}
.table_st .co_2{background: var(--mainColor); color: #fff;}
.table_info{display: none;}

.sub_tit .page_tx{margin-top: 10px; margin-bottom: 20px;}


/*인사말*/ 
.about_wrap .intro_tit{padding: 6em 0 14em; margin:0 2%; position: relative;}
.about_wrap .intro_tit:after{content:''; width:100%; height: 100%; background-color: rgba(0,0,0,.2); position: absolute; top: 0; left: 0; /*backdrop-filter: blur(3px);*/}
.about_wrap .intro_tit .in_tt { font-weight: 700; line-height: 1; text-align: center; position: relative; z-index: 1;}
.about_wrap .intro_tit .in_tt .t1{ color: transparent; -webkit-text-stroke: 1px #fff; font-style: italic; line-height: 1.2; margin-bottom:30px; font-size:4.5em; text-transform: uppercase; font-weight: 900; font-family: var(--fs_01);}
.about_wrap .intro_tit .in_tt .t2{ color: #fff; font-style: italic; font-size:2.375em; font-family: var(--fs_01);}	
.about_wrap .intro_box{background-color:#fff; padding:6em 16em; box-sizing: border-box; line-height: 1.8; margin-top: -10.5em;/* box-shadow: 0 0 20px rgba(0,0,0,0.1);*/ position: relative;}
.about_wrap .intro_box:after{content:''; width:220px; height: 146px; position: absolute; bottom:4.5em; right:18em; background-image: url("/theme/aram_01/img/sub/com_logo.png"); background-size: cover; background-position: center; background-repeat: no-repeat; opacity: .8;}
.about_wrap .intro_box .page_tt{margin-bottom:40px;}
.about_wrap .intro_box .page_tx{ margin-top: 30px; line-height: 1.5; z-index: 1; position: relative;}
.about_wrap .intro_box .page_tx.ceo_name{margin-top:65px;}
.about_wrap .intro_box .page_tx.ceo_name .tx{letter-spacing: 2px;}
.about_wrap .intro_box .page_tx.ceo_name .in_name{font-size: 2em; margin-left: 10px; letter-spacing: 15px; font-family: var(--fs_02);}


/*경영방침*/
.man_wrap .man_list{margin-top: 4em; background: #f9f9f9; padding: 4em 0;}
.man_wrap .man_list .page_stt{margin-bottom: 10px;}
.man_wrap .man_list .in{margin-top: 3em;}
.man_wrap .man_list .in .img_z .bgfix{border-radius: 50%; width: 500px; height: 500px; background-color: #aaa;}
.man_wrap .man_list .in .txt_z{width:calc(100% - 500px); padding-left:70px;}
.man_wrap .man_list .in .page_tx > li{ background-color: #fff; font-weight: 300; padding: 18px 40px; margin:15px 0; position: relative; font-size:1.068em;}
.man_wrap .man_list .in .page_tx > li .c_point{font-weight:600; margin-right:5px;}
.man_wrap .in_box{padding: 4em 0 0;}
.man_wrap .in_box .man_or{margin-top: 2em;}


/*일반현황*/
.status_wrap{padding-bottom: 6em;}
.status_wrap .img_box{width:100%; border: 1px solid #ddd; margin-bottom:2em; padding: 6em 6em 4.5em; background-attachment: fixed;}
.status_wrap .img_box .sub_tit .page_tt{margin-bottom: 20px; color: #fff; font-family: var(--fs_01); font-weight: 700;}
.status_wrap .img_box .sub_tit .page_tx{font-weight: 400; color: #fff;;}
.status_wrap .sta_list{margin-top:2em}
.status_wrap .sta_list > li{width:25%;}
.status_wrap .sta_list > li .in{text-align: center;}
.status_wrap .sta_list > li .in .icon{margin: 0 auto 20px; width: 165px; height: 165px; line-height: 165px; border: 1px solid rgba(255, 255, 255, .4); backdrop-filter: blur(6px); border-radius: 50%; padding-top: 30px;}
.status_wrap .sta_list > li .in .icon img{width: 70px; height: auto;}
.status_wrap .sta_list > li .in .page_tx{font-weight:400; color: #fff;}
.status_wrap .sta_list > li .in .page_tx.fwB{margin-bottom: 5px;}
.status_wrap .table_st tr{transition: .3s;}
.status_wrap .table_st tr:hover{background-color: #f9f9f9;} 
.status_wrap .table_st th{font-size:1.125em; color: #333; font-weight: 600;}
.status_wrap .table_st.page_tx{font-weight: 400;} 
.status_wrap .table_st td span.tt{font-size: .812em; color: #999;}
.status_wrap .table_st td span.fwB{margin-right:5px; color: var(--subColor);}
.status_wrap .dot_list{line-height: 2;}

/*연혁*/ 
.history_wrap { width: 100%; padding-top: 2em;}
.history_wrap .sub_tit .tt{font-size: 3.625em; font-weight: 600; line-height: 1;}
.history_wrap .com_box { position: relative; width: 1420px; max-width: 100%; margin: 0 auto; display: flex; align-items: flex-start; }
.history_wrap .left_tit { width: 50%; z-index: 2; position: sticky; top: 120px; } 
.history_wrap .history_tab { margin-top: 50px; }
.history_wrap .history_tab > li {font-weight: 600; color: #aaa; cursor: pointer; margin-bottom: 15px; transition: .3s; }
.history_wrap .history_tab > li.on { color: var(--mainColor); }
.history_wrap .right_con { width: 50%; padding-right: 50px; }
.history_wrap .h_group { margin-bottom: 80px; }
.history_wrap .h_group .year { font-weight: 500; margin-bottom: 30px; }
.history_wrap .list > li { display: flex; padding: 20px 0; border-bottom: 1px solid #eee; }
.history_wrap .list .y { width: 100px; font-weight: 700; color: var(--mainColor); }
.history_wrap .list .txt ol{line-height: 1.8;} 

/*오시는길*/
.location_wrap{}
.location_wrap .in_box{}
.location_wrap .sub_tit{margin-bottom:20px;}
.location_wrap .map_con{border-bottom:1px solid #ddd; position:relative;}
.location_wrap .map_con .info_box{position: absolute; bottom:30px; left:50%; transform:translateX(-50%); z-index:1; background:#fff; width:80%; padding: 30px 40px; box-shadow: 1px 1px 5px rgba(0,0,0,.2); font-weight:400; color: #666;}
.location_wrap .map_con .info_box li{margin-right:30px;}
.location_wrap .map_con .info_box li .xi{margin-right:3px;  color: var(--subColor); }
.location_wrap .map_con .info_box li span{margin-right:10px; color:#333;}
.location_wrap .map_con .info_box .info_btn{display:block; padding:12px 30px; background: var(--subColor); color:#fff; text-align: center; font-size: .875em; line-height: 1;} 
.location_wrap .map_con .info_box .info_btn .xi{margin-right:10px; line-height:1;}
.root_daum_roughmap .wrap_controllers,
.root_daum_roughmap .cont .section.lst{display:none;}

.location_map_wrap{width:100%;min-height:500px;}
.location_map_wrap .root_daum_roughmap{width:100% !important;}
.location_map_wrap .root_daum_roughmap .wrap_map{width:100% !important;height:500px !important;}

/*사업분야*/
.bus_wrap .bus_round_w {padding: 6em 0;} 
.bus_wrap .bus_round_w .bus_box {position: absolute; top: 0; left: 0; width: 100%; height: 100%;} 
.bus_wrap .bus_round_w .bus_box .in_rd {display: flex; width: 240px; height: 240px; justify-content: center; align-items: center; text-align: center; border: 10px solid var(--subColor); border-radius: 50%; position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); color: var(--subColor); font-family: var(--fs_01);} 
.bus_wrap .bus_round_w .bus_box::after {content: ''; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 340px; height: 340px; background: #fff; border-radius: 50%; box-shadow: 0 0 20px rgba(0,0,0,.08); z-index:0;} 
.bus_wrap .bus_round_w .bus_box::before {content: ''; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 600px; height: 600px; border:2px dashed #ddd; border-radius: 50%; }     
.bus_wrap .bus_round_w .qly_list {position: relative; z-index: 1; flex-wrap: wrap; height: 700px; padding: 40px 0; max-width: 1250px; margin: 0 auto;}    
.bus_wrap .bus_round_w .qly_list li {width: 50%;}
.bus_wrap .bus_round_w .qly_list li > div {gap: 30px;}
.bus_wrap .bus_round_w .qly_list li .icon_box{width:130px; height: 130px; background-image: linear-gradient(175deg, #0160bc 50%, #013277 100%); border-radius: 50%;}
.bus_wrap .bus_round_w .qly_list li .icon_box img{width: 55px; height: auto;}
.bus_wrap .bus_round_w .qly_list li .tx_box {width: 230px;}
.bus_wrap .bus_round_w .qly_list li .tx_box .in_nmb{font-size:1.25em; font-family: var(--fs_01);}
.bus_wrap .bus_round_w .qly_list li .tx_box .in_tx{font-weight: 700; color: #333; display: block; font-size:1.325em;}
.bus_wrap .bus_round_w .qly_list li:nth-child(1){padding-left: 8em;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(2){padding-right: 8em;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(3){display: flex;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(4){display: flex; justify-content: end;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(5){display: flex; align-items: end; padding-left: 8em;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(6){display: flex; align-items: end; justify-content: end; padding-right: 8em;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(even) > div {justify-content: end;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(odd) {text-align: right;} 
.bus_wrap .bus_round_w .qly_list li:nth-child(odd) .icon_box{order: 1;}

.bus_wrap .in_box{background: #f9f9f9; padding: 6em 0;}
.bus_wrap .bus_list{margin-right: -20px;}
.bus_wrap .bus_list > li {width:33.33%; margin-bottom: 2em;}
.bus_wrap .bus_list .in{ position: relative;  margin-right: 20px;}
.bus_wrap .bus_list .in .img_box{height:220px;} 
.bus_wrap .bus_list .in .txt_box{margin-top: 20px;}
.bus_wrap .bus_list .in .page_stt{margin-bottom:10px; color: #333;}
.bus_wrap .bus_list .in .page_stt span{font-family: var(--fs_01); margin-right: 5px;}


/*전국서비스망*/
.service_wrap{}
.service_wrap .map_con{background: #f9f9f9; padding: 2em 0; margin-bottom: 6em; position: relative; overflow: hidden;}
.service_wrap .map_con img{position: relative; z-index: 2;}
.service_wrap .map_con .txt_bg{position: absolute; bottom: -100px; left: 0; color: #fff; font-size: 10em; font-family: var(--fs_01); font-weight: 700; z-index: 1;}
.service_wrap .table_box .table_st th{text-align: center; border-right: 1px solid #ddd; border-left: 1px solid #ddd; background-color: #f9f9f9;}
.service_wrap .table_box .table_st td{border-right: 1px solid #ddd;} 
.service_wrap .info_box{display: inline-block; margin-bottom: 2em; position: relative; z-index: 10;} 
.service_wrap .info_box > li{position: relative;}
.service_wrap .info_box > li:before{content: ''; display: block; width: 6px; height: 6px; border-radius: 50%; background: var(--mainColor); position: absolute; top: 10px; left: -20px;}
.service_wrap .info_box > li:last-child:before{background: var(--subColor);}

/*인재채용*/
.rec_wrap{} 
.rec_wrap .pro_list{margin-right:-110px; margin-bottom: 90px; margin-top: 4em;}
.rec_wrap .pro_list .in{width:255px; height: 255px; border-radius: 50%; background-color: #f9f9f9; margin-right:110px; position: relative; text-align: center;} 
.rec_wrap .pro_list li:not(:last-child) .in:before{content:'\e93e'; font-family: 'xeicon'; width:55px; height: 55px; line-height: 45px; border-radius: 50%; border:5px solid #e7f1f5; background-color: #fff; text-align: center; position: absolute; top: 50%; right:-32%; transform: translateY(-50%); font-size:1.25em; color:var(--subColor);}
.rec_wrap .pro_list .in .tx_box{width:100%; height:100%;  margin: 0 auto; display: flex; flex-wrap:wrap; align-content: center; border-radius: 50%;}
.rec_wrap .pro_list li:nth-child(4) .in .tx_box{background-color: var(--subColor);}
.rec_wrap .pro_list li:nth-child(4) .in .tx_box .page_tx{color: #fff;}
.rec_wrap .pro_list .in .t_icon{width:100%; margin: -5px auto 10px;}  
.rec_wrap .pro_list .in .page_stx{margin: 0 auto; font-weight: 600; margin-bottom: 20px; font-family: var(--fs_01); color: var(--mainColor);}
.rec_wrap .pro_list .in .page_tx{margin: 0 auto;}
.rec_wrap .img_box{background: #ddd; padding: 7em 0; background-attachment: fixed;}
.rec_wrap .img_box .info_box{display: inline-block; background: #fff; padding: 4em;}
.rec_wrap .img_box .info_box .page_stt{margin-bottom: 20px;}
.rec_wrap .img_box .info_box .page_tx span{margin-right:10px;}
.rec_wrap .img_box .info_box .more_btn{display: block;margin-top: 3em;width: 100%;padding: 10px 20px;background: var(--mainColor);text-align: center;color: #fff;font-size: 1.125em; transition: .3s;}
.rec_wrap .img_box .info_box .more_btn .xi{margin-right: 5px;}
.rec_wrap .img_box .info_box .more_btn:hover{background: var(--subColor);}
.rec_wrap .img_box .info_box .more_btn.st{background: #fff; border: 1px solid var(--mainColor); color: var(--mainColor)}
.rec_wrap .img_box .info_box .more_btn.st:hover{background: var(--subColor); border-color: var(--subColor); color: #fff;}