@charset "utf-8"; 
/*나눔고딕*/
@import url(./fonts/NanumGothic/NanumGothic.css);

/* base */
html{overflow-y:scroll; overflow-x:hidden;font-family:"Nanum Gothic";}
body, div, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p, form, fieldset, input{margin:0;padding:0;font-family:"Nanum Gothic";}
h1, h2, h3, h4, h5, h6{font-weight:normal;font-size:100%;}
a{text-decoration:none;}
ul, ol, li{list-style:none;}
img{border:none; vertical-align:middle;}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary{display:block;}
table, td, tr{font-family:"Nanum Gothic"; font-size:13px; color:#333; font-weight:400;}

/* div위치조절 */
#wrap{width:100%; overflow:hidden; text-align:left; min-width:1200px; position:relative; background:#ffffff}
#top_wrap{position:relative; width:100%; height:150px; background:#ffffff; }
#middle_wrap{width:100%; overflow:hidden; position:relative;}
#bottom_wrap{width:100%; overflow:hidden; height:185px; background:#333333}

/* top div위치조절 */
.top_wrap1{ width:100%; height:40px; border-bottom:1px solid #ededed;}
.top_total1{ width:1200px; height:40px; margin:0 auto; overflow:hidden}
.top_logo2{ float:left; font-size:13px; font-family:"Nanum Gothic"; color:#555; letter-spacing:-0.05em; line-height:40px; width:220px; font-weight:600;}


#login{float:right;text-align:right;}
#login ul {list-style-type:none; overflow:hidden}
#login li {float:right; list-style-type:none; color:#727984}
#login li a{font-size:12px; color:#555;font-family:"Nanum Gothic"; font-weight:400; letter-spacing:-0.025em;line-height:40px;}
#login li a:hover{background:none;font-weight:400;}

.top_wrap2{ width:100%; }
.top_total2{ width:1200px; height:110px; margin:0 auto; }
#top_logo{ float:left; margin-top:30px; width:195px; height:50px; padding:0;}


/* div위치조절 */
/* Header */
div#commonGnb{float:right; position:relative; margin-left:0; color:#333333;font-family:"Nanum Gothic"; }
div#commonGnb div.gnbWrap ul.gnbLayer{ display:table; float:right; margin:0 auto}
div#commonGnb div.gnbWrap ul.gnbLayer li{float:left;  position:relative; z-index:999;  zoom:1;}
div#commonGnb div.gnbWrap ul.gnbLayer li.first{border:0;}
div#commonGnb ul.gnbLayer li>a{display:block; margin:30px auto 0; text-align:center; font-weight:600; font-size:18px;  color:#333333; font-family:"Nanum Gothic"; width:180px; letter-spacing:-0.05em; line-height:60px}
div#commonGnb ul.gnbLayer li:hover a{color:#2d559b; text-decoration:none;font-family:"Nanum Gothic"; font-weight:600}
div#commonGnb ul.gnbLayer li dl {position:absolute; left:50%; top:90px; margin-left:-87px; width:180px; display:none;background:#fff; z-index:100;}
div#commonGnb ul.gnbLayer li dd {display:block; padding:0; margin:0;  }
div#commonGnb ul.gnbLayer li:hover dd a {font-family:"Nanum Gothic"; display:block; width:100%; height:40px; padding:0; font-size:13px; line-height:40px; color:#111; font-weight:600; text-align:center; }
div#commonGnb ul.gnbLayer li:hover dd a:hover{ background:#2d559b; font-weight:400;font-family:"Nanum Gothic"; color:#fff;}




#top_logo3{ float:right; margin-top:25px;}



/* bottom div위치조절 */
#bottom_wrap{ width:100%; height:170px; margin:0 auto; position:relative; background:#222222;font-family:"Nanum Gothic";}
#bottom_wrap1{ width:100%; height:55px; margin:0 auto; position:relative; border-bottom:1px solid #434343 }
#bottom_total1{ width:1200px;  margin:0 auto; position:relative;  }
.ftt1 a{overflow:hidden; font-size:14px; letter-spacing:-0.05em; color:#fff; line-height:55px; margin-right:25px}
.ftt1 a:hover{ font-weight:600;color:#fff}
#bottom_wrap2{ width:100%; height:120px; margin:0 auto; position:relative;  }
#bottom_total2{ width:1200px; overflow:hidden;  margin:0 auto; position:relative;  }
#bottom_logo{ float:left; margin-top:25px; width:230px; height:65px; }
.ftt2{font-size:13px; letter-spacing:-0.025em; color:#bbb; line-height:22px; float:left; margin-top:25px; margin-left:30px}
#bottom_mail{ float:right; width:180px; margin-top:30px; }




/* sub_body div위치조절 */
#sub_img{ margin:0 auto; width:100%; height:270px; overflow:hidden; background:url(../images/subbg.jpg) no-repeat center top}
#sub_txt{ margin:95px auto 0; width:1200px; height:80px; text-align:center}
#middle_total{margin:50px auto 0; width:1200px;}
#con_total{width:1000px; overflow:hidden; margin-bottom:100px; margin:0 auto;}
#con_title{width:1000px; margin:0; position:relative; overflow:hidden; margin-bottom:40px; height:80px;}
#title_a{text-align:center; margin-bottom:15px; font-family:"Nanum Gothic"; font-size:36px;  color:#222;letter-spacing:-0.05em; font-weight:600;}
#title_b{text-align:center; font-family:"Nanum Gothic"; font-size:15px;  color:#222;letter-spacing:-0.05em}
#con{width:1000px; overflow:hidden; margin-bottom:100px;}

.sub_bg{ width:1200px; height:575px; margin:0 auto; background:#f1f1f1; padding:40px 0 0 40px}
.sub_bg2{ width:1200px; height:310px; margin:0 auto; background:#f1f1f1; padding:40px 0 0 40px}



/*이미지슬라이드 css소스*/
.clear{overflow: hidden; width: 1200px; margin:0 auto;}
.dn {display: none;}

.wrap_box{position:relative;  width:100%; overflow:hidden; height:700px; margin:0 auto ;}
.wrap_box .visual{ position: absolute; left:50%; top:0; margin-top: 0px; width:1920px; margin-left:-960px;
height:700px;}
.wrap_box .box {position:relative; width:100%; height:100%;; margin:0 auto }
.wrap_box .visual .pht{position:absolute; overflow:hidden; top:0; left:0; width:100%;}
.wrap_box .visual .prev {position: absolute; top:100px; left:50%; margin-left:-700px; cursor: pointer; z-index:12}
.wrap_box .visual .next {position: absolute; top:100px; right:50%; margin-right:-700px; cursor: pointer;}
.wrap_box .visual .control{float:left; position:absolute; bottom:40px; left:50%; margin-left:-20px; width:100px; z-index:10000}
.wrap_box .visual .control .fl{float:left; margin-right:10px; cursor: pointer;}
.wrap_box .visual .control .fl:nth-child(4){margin-right:0px;}

#main_ment_wrap{ width:1200px; height:700px; margin:0 auto 0; position:relative; overflow:hidden}
#main_ment_total{ position:absolute; left:0; top:220px;width:1200px; height:235px; text-align:left; overflow:hidden}

#main_qmenu{ position:absolute; top:150px; left:0p; with:212px; height:53px;}
#main_qmenu li{float:left;}
#main_qmenu li a{display:block; width:212px; height:53px;}
#qmenu_button01 img{opacity:0;
    -webkit-transition: transition: all .5s;
    -o-transition:transition: all .5s;
    transition: all .5s;
}
#qmenu_button01:hover img{opacity:1;}

/*메인갤러리 추출*/
/* 메인콘텐츠 */

#main_middle_total_a{margin:70px auto 0; width:100%; height:300px; }/*전체*/
#main_quick_wrap{margin:0 auto; width:1200px; height:300px; }
#main_quick{float:left; width:1200px;}

#main_quick_a_wrap{float:left; position:relative; width:1200px; height:300px;}
.main_quick_a{margin:0 auto; width:1200px; height:300px;}
.main_quick_a li{float:left;}
.main_quick_a li a{display:block; height:300px; background:url('../images/quick_menu.png') center center;}
.main_quick_a li.qmb01 a{width:580px; height:300px; background-position:0 top;}
.main_quick_a li.qmb02 a{width:580px; height:300px; margin-left:20px; background-position:-600px top;}


.main_quick_a li.qmb01 a:hover{width:580px; height:300px; background-position:0 bottom;}
.main_quick_a li.qmb02 a:hover{width:580px; height:300px; margin-left:20px; background-position:-600px bottom;}

/* 슬라이드 이미지*/
#stand_total{margin:70px auto 0; width:100%; height:525px; position:relative; background:#f7f7f7;}
.stand{margin:0 auto; width:1200px; overflow:hidden; padding:70px 0 0 0; position:relative;}
.stand_title{width:100%; height:70px; overflow:hidden; margin-bottom:30px;}
.stand_title .title{position:relative; z-index:10; width:100%; font-size:30px; line-height:30px; font-weight:600; text-align:center;}
.stand_title .title spen{position:relative; z-index:10; width:100%; font-size:30px; line-height:30px; font-weight:600; text-align:center; color:#1062aa;}
.stand_title .title_02{position:relative; z-index:10; width:100%;  font-size:16px; line-height:16px; font-weight:400; text-align:center; margin-top:15px;}
.stand_con{width:100%; overflow:hidden;}
/* CUS*/
.main_con_bg{width: 100%; background:#fff ;}
#main_con_total{margin:70px auto; width:1200px; overflow:hidden;background: #fff;}
#main_a{float:left; position:relative; width:425px; height:220px; padding:0 40px 0; border-right:1px solid #ddd; margin:0 0 0 0;}
#main_b{float:left;position:relative;width: 330px;height:240px;padding: 0px 0px 0px 20px;}
#main_c{float:left; position:relative; width:415px; height:220px; padding:0 40px 0; border-right:1px solid #ddd;}

.main_title{width: 83%;height:25px;text-align:left;font-weight:600;font-size:22px;line-height:25px;color: #000;margin-top: 20px;}
.main_title2{width:100%; height:25px; font-weight:600; font-size:13px; line-height:25px; color:#000;}
.main_con{width:100%; height:160px; margin-top:20px;}
.main_con a{ font-size:13px; line-height:25px;}

.main_con02{width:100%;height:160px;margin-top:30px;}
.main_con02 a{ font-size:13px; line-height:25px;}

.more_btn{position:absolute;z-index:100;right: 75px;top:25px;width:17px;height:17px;}

/* CONTACT US 아이콘 스타일 */
.cus_total {display: flex; align-items: center; font-weight:600; font-size:15px; color:#444; line-height:28px; margin-bottom: 8px;}
.cus_total img {width: 18px; height: 18px; margin-right: 10px; vertical-align: middle;}
.cus_text1{font-weight:600; font-size:12px; color:#000; line-height:28px; letter-spacing:0.03em; }
.cus_text2{font-weight:600; font-size:16px; color:#000; line-height:28px; letter-spacing:0.03em; }
.cus_text3{font-weight:400; font-size:16px; color:#000; line-height:28px; letter-spacing:0.03em; }
.cus_text4{font-weight:400; font-size:14px; color:#000; line-height:28px; letter-spacing:0.01em; }


/* 탭네비 */
#tab_nav_sub{ width:100%; overflow:hidden; margin-bottom:80px}
#tab_nav_sub ul{ overflow:hidden; display:table; margin:0 auto}
#tab_nav_sub ul li{float:left; overflow:hidden; width:158px; height:50px; margin-right:10px;}
#tab_nav_sub ul li:last-child{ margin-right:0}

#tab_nav_sub ul li a{display:block; border:1px solid #ccc;  font-size:15px; line-height:48px; color:#333;background:#f1f1f1; text-align:center; font-family:"Nanum Gothic"; font-weight:600}
#tab_nav_sub ul li a:hover{background:#2d559b;color:#fff;border:1px solid #2d559b; font-family:"Nanum Gothic"; font-weight:600}
#tab_nav_sub ul li.on a{background:#2d559b;color:#fff;border:1px solid #004173; font-family:"Nanum Gothic"; font-weight:600}

/*---------------------------------
* TAIL.PHP : 온라인문의 바로가기
----------------------------------*/
#adver_total{margin:0 auto; width:100%; height:600px; background:url('../images/main_bg_01.jpg') center top; position:relative; min-width:1200px; position:relative;}
.adver_text{ position:absolute; z-index:100; left:50%; top:110px; margin-left:-550px; width:110px;}
.bbtn{ float:left; margin-left:-223px; left:50%; top:64%;  width:100%; position:absolute;}
.bbtn p a{ padding:15px 55px; font-size:14px; color:#fff; line-height:50px;font-family:'Nanum Gothic'; font-weight:600; border:1px solid #fff; margin-left:10px;}
.bbtn p a:hover{color:#000; font-weight:600; background:rgba(255,255,255,0.5) }

/* 슬라이드 이미지*/
.stand02 {
    margin: 0 auto;
    width: 1920px;
    overflow: hidden;
    padding: 50px 0;
    position: relative;
    text-align: center;
    background: #f7f7f7;
}

.stand02_title {
    width: 100%;
    margin-bottom: 60px;
}

.stand02_title .title_01 {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #000;
}

.stand02_title .title_02 {
    font-size: 15px;
    color: #000;
    line-height: 1.6;
}

/* 지도 영역 감싸는 스타일 */
.map_wrap {
    width: 100%;
    display: flex;
    justify-content: center;
}

.root_daum_roughmap_landing {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,0.05);
    border-radius: 5px;
    height: 400px;
}

.main_visual_banner {
  position: relative;
  width: 100%;
  max-width: 1920px;
  height: auto;
  margin: 0 auto;
}

.main_visual_banner img {
  width: 100%;
  display: block;
}

.banner_btn {
  position: absolute;
  right: 43%;   /* 버튼의 가로 위치 (텍스트 기준에 맞춤) */
  top: 300px;     /* 버튼의 세로 위치 (텍스트 아래에 맞춤) */
  padding: 15px 40px;
  border: 1px solid #000;
  color: #000;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
  width: 180px;
  height: 50px;
}

.banner_btn:hover {
  background-color: #2d559b;
  color: #fff;
}

.banner_btn.left {
  left: 7.8%;  /* 왼쪽 정렬 기준 위치 */
  top: 70%; /* 세로 정렬 */
}

.banner_btn.right {
  right: 36.4%;  /* 왼쪽 정렬 기준 위치 */
  top: 65%; /* 세로 정렬 */
}