@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:#003984; 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:#102c69; font-weight:400;font-family:"Nanum Gothic"; color:#fff;}




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



/* bottom div위치조절 */
#bottom_wrap{ width:100%; height:190px; 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:304px; }/*전체*/
#main_quick_wrap{margin:0 auto; width:1600px; height:304px; }
#main_quick{float:left; width:1600px;}

#main_quick_a_wrap{float:left; position:relative; width:1600px; height:304px;}
.main_quick_a{margin:0 auto; width:1600px; height:304px;}
.main_quick_a li{float:left;}
.main_quick_a li a{display:block; height:304px; background:url('../images/quick_menu.png') center center;}
.main_quick_a li.qmb01 a{width:304px; height:304px; background-position:0 top;}
.main_quick_a li.qmb02 a{width:304px; height:304px; margin-left:20px; background-position:-324px top;}
.main_quick_a li.qmb03 a{width:304px; height:304px; margin-left:20px; background-position:-648px top;}
.main_quick_a li.qmb04 a{width:304px; height:304px; margin-left:20px; background-position:-972px top;}
.main_quick_a li.qmb05 a{width:304px; height:304px; margin-left:20px; background-position:-1296px top;}

.main_quick_a li.qmb01 a:hover{width:304px; height:304px; background-position:0 bottom;}
.main_quick_a li.qmb02 a:hover{width:304px; height:304px; margin-left:20px; background-position:-324px bottom;}
.main_quick_a li.qmb03 a:hover{width:304px; height:304px; margin-left:20px; background-position:-648px bottom;}
.main_quick_a li.qmb04 a:hover{width:304px; height:304px; margin-left:20px; background-position:-972px bottom;}
.main_quick_a li.qmb05 a:hover{width:304px; height:304px; margin-left:20px; background-position:-1296px bottom;}


  /* main_b 디자인 재정의 */
  .main_b {
    background: #f7f7f7;
    color: #000;
    padding: 60px 0;
  }
  .main_b .box_total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    max-width: 1520px; /* 또는 1400px 등 원하는 중앙 기준 너비 */
    width: 100%;
    margin: 0 auto;
    padding: 0 20px; /* 좌우 여백이 필요할 경우 */
  }
  
  .main_b .box_title {
    flex-shrink: 0;
    width: 260px;
    height: 110px;
    text-align: left;
  }
  .main_b .box_title span {
    display: block;
    font-size: 30px;
    font-weight: 700;
    color: #242424;
    margin-bottom: 10px;
  }
  .main_b .box_title .line {
    width: 40px;
    height: 2px;
    background: #000;
  }
  .main_b .box_title .desc {
    font-size: 14px;
    color: #555;
    line-height: 1.6;
    margin-top: 30px;
  }
  
  .main_b .box_con {
    flex-grow: 1;
    overflow: visible;
  }
  .main_b .box_list ul {
    display: flex;
    gap: 20px;
    overflow: hidden;
  }
  .main_b .box_list ul li {
    flex: 1 0 30%;
    background: #222;
    height: 300px;
    border-radius: 4px;
    overflow: hidden;
  }
  .main_b .box_list ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
  .main_b .box_btn {
    margin-top: 40px;
    text-align: center;
  }
  .main_b .box_btn a {
    display: inline-block;
    background: #000;
    color: #fff;
    padding: 10px 30px;
    border-radius: 20px;
    transition: 0.3s;
  }
  .main_b .box_btn a:hover {
    background: #224d68;
    color: #fff;
  }

/* 슬라이드 이미지*/
#stand_total{margin:70px auto 0; width:100%; height:525px; position:relative; background:#f0f0f0;}
.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*/
/* CUS*/
.main_con_bg{width: 100%; background:#fff; height: 300px; padding: 40px}
#main_con_total{margin:0 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: 235px;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;}
.topicon img {margin-top: -25px;}
.cus_text1{font-weight:600; font-size:16px; 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: flex;margin:0 auto;align-content: center;justify-content: center;align-items: center;}
#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:#103178;color:#fff;border:1px solid #004173; font-family:"Nanum Gothic"; font-weight:600}
#tab_nav_sub ul li.on a{background:#103178;color:#fff;border:1px solid #004173; font-family:"Nanum Gothic"; font-weight:600}

/*---------------------------------
* TAIL.PHP : 온라인문의 바로가기
----------------------------------*/
#adver_total {
    margin: 0 auto;
    width: 100%;
    height: 500px;
    min-width: 1200px;
    background: url('../images/main_bg.jpg') no-repeat center top / cover;
    position: relative;
    text-align: center;
}

.adver_text {
    position: absolute;
    top: 110px;
    left: 50%;
    margin-left: -295px; /* 이미지 width의 절반 */
    width: 650px; /* 이미지 width */
    z-index: 100;
}

.adver_text img {
    display: block;
    max-width: 100%;
    height: auto;
}


.bbtn {
    position: absolute;
    top: 280px;
    left: 50%;
    transform: translateX(-50%);
}

.bbtn a {
    display: inline-block;
    background-color: #278ed0;
    color: #fff;
    padding: 14px 40px;
    font-size: 16px;
    font-family: 'Nanum Gothic', sans-serif;
    font-weight: 600;
    border-radius: 3px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.bbtn a:hover {
    background-color: #1c6ba5;
}

.map_section_full {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  background: #fff;
  padding: 100px 0;
}

.map_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 100px; /* 지도와 텍스트 간격 */
}

.map_image_box {
  width: 600px;
  height: 400px;
}

.map_text_box {
  font-size: 17px;
  line-height: 2;
  color: #222;
  font-weight: 400;
}

.map_text_box h3 {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
}


/* 슬라이드 이미지*/
.stand02{margin:0 auto; width:1200px; overflow:hidden; padding:70px 0 70px 0; position:relative;}
.stand02_title{width:100%; height:70px; overflow:hidden; margin-bottom:30px;}
.stand02_title .title_01{position:relative; z-index:10; width:100%; font-size:30px; line-height:30px; font-weight:600; text-align:center;}
.stand02_title .title_01 spen{position:relative; z-index:10; width:100%; font-size:30px; line-height:30px; font-weight:600; text-align:center; color:#1062aa;}
.stand02_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;}
.stand02_con{width:100%; overflow:hidden;}
