@charset "utf-8";
/**************************************************

	Respond.css ( ver 1.0.2 )

**************************************************/
/**************************************************
	Setting Device Width
**************************************************/
#_device_pc{display: block;} #_device_ta{display: none;} #_device_mo{display: none;} .__pc{display: block !important;} .__ta{display: none !important;} .__mo{display: none;}
@media screen and (min-width: 750px) and (max-width: 1300px){#_device_pc{display: none;} #_device_ta{display: block;} #_device_mo{display: none;} .__pc{display: none !important;} .__ta{display: block !important;} .__mo{display: none;}}
@media screen and (max-width: 750px){#_device_pc{display: none;} #_device_ta{display: none;} #_device_mo{display: block;} .__pc{display: none !important;} .__ta{display: none;} .__mo{display: block !important;} }

/**************************************************
	아이폰 하이브리드앱에서 노치 겹침현상 방지
    ( 노치 높이 만큼 html에 자동으로 padding 부여 )
**************************************************/
html{
    padding-top: constant(safe-area-inset-top);
    padding-top: env(safe-area-inset-top);
}
#header{
    padding-top: constant(safe-area-inset-top);
    padding-top: env(safe-area-inset-top);
}

/**************************************************
	Layout
**************************************************/
@media screen and (max-width: 1300px){

	html{min-width: 320px;overflow-x: hidden;}
    img{max-width:100%;}

	#header{position: fixed;top: 0;left: 0;width: 100%;box-shadow: 0 3px 3px rgba(0,0,0,0.05);}
	#header .inner{width: auto;height: 50px;}
    #header .logo{position: absolute;top: 0;left: 10px;height: 100%;line-height: 50px;}
    #header .logo img{width: auto;height: 24px;}
    #header:after{content: '';display: block;position: absolute;bottom: -1px;width: 100%;height: 1px;background: rgba(0,0,0,0.05);}

	#gnb{display: none;}
    #tnb{display: none;}

    #hd-lan{display: none;}
    #hd-sch{display: none;}

    #footer .fnbWrap .inner{width: auto;}
    #footer .fnbWrap .inner{width: auto; padding: 5px 0}
    #footer .ftWrap{width: auto;padding: 15px 0;}
    #footer .ftLogo {position: static; text-align: center; transform: none; padding-bottom: 10px}
    #footer .ftLogo img {height: 24px}
    #footer address{font-size: 10px;line-height: 16px;color: #b3b3b3;font-style: normal;text-align: center;}
    #footer address hr{display: block;border: none;margin: 0;}
    #footer .copyright{position: static; display: block;margin-top: 0;font-size: 10px; line-height: 20px; color: #777777; text-align: center}

    #sns-ico{margin-top: 15px;text-align: center;}
    #sns-ico li{margin: 2px;}
    #sns-ico li img{width: 25px;height: auto;}

    #ft-fam{display: none;}

    #gotop{display: none;}

    #fnb{text-align: center;}
    #fnb > li{display: inline-block;padding: 0 5px;}
    #fnb > li:first-child{padding-left: 0;background: none;}
    #fnb > li a{font-size: 11px;color: #b3b3b3;letter-spacing: -1px;line-height: 22px;}

    #slide-btn{top: 50%;right: 10px;display: block;width: 25px;height: 16px;}

    #slide-bg{position: fixed;z-index: 200;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.3);display: none;}
    #slide-close{position: absolute;top: 0;right: 0;width: 50px;height: 50px;background: url('../images/layout/slide-close.png') no-repeat center center;background-size: 20px auto;}

    #slide-menu{position: fixed;top: 0;right: -100%;width: 80%;height: 100%;display: block;background: #fff;z-index: 201;overflow-y: auto;transition: all 0.3s cubic-bezier(0.930, 0.635, 0.650, 0.970);}
    #slide-menu .tit{height: 50px;position: relative;background: #2d308f}
    #slide-menu.on{right: 0;}

    #tnb-mo{text-align: center;line-height: 40px;background: #f7f7f7;}
    #tnb-mo > li{display: inline-block;margin: 0 10px;}
    #tnb-mo > li a{font-size: 12px;color: #333;}

    #gnb-mo > li{border-bottom: 1px solid #e1e1e1;}
    #gnb-mo > li > a{display: block;line-height: 40px;padding: 0 15px;font-size: 14px;letter-spacing: -1px;color: #333;text-decoration: none;}
    #gnb-mo > li > ul{padding: 10px 15px;border-top: 1px solid #e1e1e1;background: #f7f7f7;display: none;}
    #gnb-mo > li > ul li a{line-height: 30px;font-size: 14px;color: #666;text-decoration: none;}
    #gnb-mo > li.hidden-gnb{display: none;}

    #hd-lan-mo{position: absolute;top: 0;left: 15px;z-index: 92;}
    #hd-lan-mo > a{display: block;line-height: 50px;padding: 0 10px 0 20px;font-size: 12px;color: #fff;text-decoration: none;text-transform: uppercase;background: url('../images/layout/hd-lan-ico-mo.png') no-repeat 0 center / 15px auto, url('../images/layout/hd-lan-spr-mo.png') no-repeat right center / 6px auto;}
    #hd-lan-mo > ul{position: absolute;top: 40px;left: 50%;display: none;width: 80px;margin-left: -40px;padding: 10px 0;border: 1px solid #b8b8b8;background: #fff;}
    #hd-lan-mo > ul:before{position: absolute;top: -7px;left: 50%;content: '';display: block;width: 6px;height: 7px;margin-left: -3px;background: url('../images/layout/hd-lanbox-spr-mo.png');}
    #hd-lan-mo > ul li a{display: block;font-size: 12px;line-height: 20px;color: #666666;text-decoration: none;text-align: center;text-transform: uppercase;}
    #hd-lan-mo.on > ul{display: block;}

    #hd-sch-mo{position: absolute;top: 14px;left: 85px;z-index: 91;}
    #hd-sch-mo .btn{display: block;width: 21px;height: 21px;background: url('../images/layout/hd-sch-btn-mo.png') no-repeat center center;background-size: 16px auto;text-indent: -999em;border: none;}
    #hd-sch-mo form{position: fixed;display: none;top: 50px;right: 0;width: 80%;padding-right: 50px;border: 1px solid #333;border-width: 1px 0 1px 0;overflow: hidden;background: #fff;box-sizing: border-box;}
    #hd-sch-mo legend{display: none;}
    #hd-sch-mo .inp{width: 100%;height: 38px;line-height: 38px;text-indent: 10px;background: none;border: none;font-size: 12px;}
    #hd-sch-mo .sbm{position: absolute;top: 0;right: 0;width: 40px;height: 40px;background: #333 url('../images/layout/hd-sch-btn-mo.png') no-repeat center center;background-size: 18px auto;border: none;text-indent: -999em;}
    #hd-sch-mo.on form{display: block;}

    /* Site Layer Popup */
    .sp-pop{top: 65px !important;left: 5% !important;width: 90% !important;height: auto !important;}
    .sp-pop .img{position: relative;min-height: 100px;padding-bottom: 30px;}
    .sp-pop .img img{max-width:100%;vertical-align: top;}
    .sp-pop .btns li{height: 30px;}
    .sp-pop .btns li a,
    .sp-pop .btns li label{line-height: 28px;}

    /* etc */
    .table1 tr > *{font-size: 11px;line-height: 15px;}

}

/**************************************************
	Ajax Popup
**************************************************/
@media screen and (max-width: 1300px){

    #popup{top: 5%;left: 5%;width: 90%;height: 90%;margin-top: 0;margin-left: 0;padding-top: 41px;}
    #popup .pop-tit{height: 40px;padding: 0 10px;}
    #popup .pop-tit h3{font-size: 13px;line-height: 40px;}
    #popup .pop-tit .close{width: 39px;height: 39px;line-height: 39px;font-size: 13px;}
    #popup .pop-wrap{height: 100%;overflow-y: auto;padding: 15px;box-sizing: border-box;}
    #popup.on{opacity: 1;}
    #popupBG{position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: 300;background: rgba(0,0,0,0.5);opacity: 0;transition: all 0.3s;}
    #popupBG.on{opacity: 1;}

    /* sitemap */
    #popup .sitemap > li{width: 49%;}
    #popup .sitemap > li > a{font-size: 12px;line-height: 35px;}
    #popup .sitemap > li ul li a{font-size: 12px;padding: 7px 0;}

}


/**************************************************
	Main
**************************************************/
@media screen and (max-width: 1300px){

    #main {overflow: hidden}
    #main #mainWrap{width: auto;margin: 0;padding: 0}

    #main #mainWrap .inner {padding: 0 10px; box-sizing: border-box}

    #main .visual .visText {top: 32%; width: 100%; padding: 0 20px; box-sizing: border-box}
    #main .visual .visText h5 {font-size: 36px; line-height: 44px}
    #main .visual .visText p {margin-top: 10px; font-size: 16px; line-height: 26px}
    #main .visual .roll .item img{position: static;margin-left: 0;width: 100%;height: auto;}
    #main .visual .slick-dots {width: 100%; bottom: 32%; left: 0; margin: 0; padding: 0 20px; box-sizing: border-box}
    #main .visual .slick-dots li {margin: 0; margin-right: 10px}
    #main .visual .slick-dots li button {width: 40px; height: 40px; line-height: 38px; font-size: 13px}
    #main .visual .slick-dots a {width: 40px; height: 40px; background-size: 11px !important}

    #main .mainSec01 {padding: 50px 0}
    #main .mainSec01 ul li .img img {transform: scale(0.7)}
    #main .mainSec01 ul li p {margin-top: 15px; font-size: 15px; line-height: 24px}

    #main .mainSec02 {margin-bottom: 50px}
    #main .mainSec02 .left {width: 100%; padding: 30px; box-sizing: border-box; justify-content: flex-start}
    #main .mainSec02 .left:after {width: 40px; height: 40px}
    #main .mainSec02 .left .box {position: relative; width: 100%}
    #main .mainSec02 .left .box h5 {font-size: 30px; line-height: 40px}
    #main .mainSec02 .left .box h5 br {display: none}
    #main .mainSec02 .left .box p {margin-top: 5px; font-size: 15px; line-height: 22px}
    #main .mainSec02 .left .arrow {position: absolute; top: 50%; right: 0; transform: translateY(-50%); margin: 0}
    #main .mainSec02 .left .arrow a {width: 45px; height: 45px; margin: 0; margin-left: 5px}
    #main .mainSec02 .right {width: 100%; padding: 0 15px; box-sizing: border-box; margin-top: 20px}
    #main .mainSec02 .right .roll {margin: -10px}
    #main .mainSec02 .right .roll .slick-list {padding: 0 !important}
    #main .mainSec02 .right .roll .item{margin: 10px}
    #main .mainSec02 .right .roll .item .info {padding: 20px 25px}
    #main .mainSec02 .right .roll .item .info h6 {font-size: 17px; line-height: 26px}
    #main .mainSec02 .right .roll .item .info p {margin-top: 5px; font-size: 14px; line-height: 22px}

    #main .mainSec03 {padding: 50px 0}
    #main .mainSec03 .left {width: 100%; padding: 0}
    #main .mainSec03 .left .tit {margin-bottom: 20px}
    #main .mainSec03 .left .tit h5 {display: block; font-size: 30px; line-height: 40px}
    #main .mainSec03 .left .tit span {display: inline-block !important; margin: 0; padding-right: 10px; font-size: 15px; line-height: 30px}
    #main .mainSec03 .left .frmBox ul li {width: 100%; padding-left: 90px}
    #main .mainSec03 .left .frmBox ul li > * {line-height: 40px}
    #main .mainSec03 .left .frmBox ul li strong {font-size: 15px}
    #main .mainSec03 .left .frmBox ul li .inp {font-size: 14px}
    #main .mainSec03 .left .frmBox ul li textarea {height: 100px; padding: 10px; font-size: 14px; line-height: 22px}
    #main .mainSec03 .left .frmBox .btns {text-align: left; margin-top: 20px}
    #main .mainSec03 .left .frmBox .btns label {display: block; font-size: 15px; line-height: 30px}
    #main .mainSec03 .left .frmBox .btns button {position: static; width: 100%; margin-top: 10px; background: #2d308f; height: 50px; line-height: 50px; font-size: 18px}
    #main .mainSec03 .right {width: 100%}
    #main .mainSec03 .right p {display: none}
    #main .mainSec03 .right .mapBox {margin-top: 0}
    #main .mainSec03 .right .mapBox > div {height: 280px !important}
    #main .mainSec03 .right .mapBox > div > div {height: 100% !important}
    #main .mainSec03 .right .mapBox:after {width: 50px; height: 50px}

    
    

}



@media screen and (max-width: 750px){


    #main .visual .visText {top: 38%; padding: 0 15px}
    #main .visual .visText h5 {font-size: 28px; line-height: 36px}
    #main .visual .visText p {margin-top: 5px; font-size: 14px; line-height: 22px}
    #main .visual .slick-dots {bottom: 20px; left: 50%; transform: translateX(-50%); padding: 0; text-align: center}
    #main .visual .slick-dots li {margin-right: 5px}
    #main .visual .slick-dots li button {width: 30px; height: 30px; line-height: 28px; font-size: 11px}
    #main .visual .slick-dots a {width: 30px; height: 30px; margin-right: 5px; background-size: 9px !important}

    #main .mainSec01 {padding: 30px 0}
    #main .mainSec01 ul li {flex: 1 25%}
    #main .mainSec01 ul li:nth-child(n+5) {margin-top: 15px}
    #main .mainSec01 ul li .img img {transform: scale(0.6)}
    #main .mainSec01 ul li p {margin-top: 5px; font-size: 13px; line-height: 22px}

    #main .mainSec02 {margin-bottom: 40px}
    #main .mainSec02 .left {padding: 20px 15px}
    #main .mainSec02 .left .box h5 {font-size: 24px; line-height: 32px}
    #main .mainSec02 .left .box p {font-size: 13px; line-height: 20px}
    #main .mainSec02 .left .arrow {position: static; transform: none; margin-top: 15px}
    #main .mainSec02 .left .arrow a {width: 40px; height: 40px; margin: 0; margin-right: 5px}
    #main .mainSec02 .right {padding: 0 10px}
    #main .mainSec02 .right .roll {margin: -5px}
    #main .mainSec02 .right .roll .item {margin: 5px; box-shadow: none; border: 1px solid #ddd}
    #main .mainSec02 .right .roll .item .info {padding: 15px 10px}
    #main .mainSec02 .right .roll .item .info h6 {font-size: 15px; line-height: 22px}
    #main .mainSec02 .right .roll .item .info p {font-size: 13px; line-height: 20px}

    #main .mainSec03 {padding: 40px 0}
    #main .mainSec03 .left .tit {margin-bottom: 15px}
    #main .mainSec03 .left .tit h5 {font-size: 24px; line-height: 32px}
    #main .mainSec03 .left .tit span {font-size: 14px; line-height: 24px}
    #main .mainSec03 .left .frmBox ul li {padding: 5px; padding-left: 70px}
    #main .mainSec03 .left .frmBox ul li > * {line-height: 36px}
    #main .mainSec03 .left .frmBox ul li strong {top: 5px; left: 5px; font-size: 13px}
    #main .mainSec03 .left .frmBox ul li .inp {font-size: 13px}
    #main .mainSec03 .left .frmBox ul li textarea {font-size: 13px; line-height: 21px}
    #main .mainSec03 .left .frmBox .btns label {font-size: 13px; line-height: 24px}
    #main .mainSec03 .left .frmBox .btns button {margin-top: 5px; height: 46px; line-height: 46px; font-size: 16px}
    #main .mainSec03 .right .mapBox > div {height: 220px !important}

    #main .mainSec03 .right .mapBox .root_daum_roughmap .wrap_map > .map > div > div > div:nth-child(6) > div:last-child {width: 130px; height: 43px}

}




/**************************************************
	Sub
**************************************************/
@media screen and (max-width: 1300px){

    #sub #content{ width: auto;padding: 50px 10px}

    #sub .sub-vis{height: 180px;}
    #sub .sub-vis h2{margin-top: 50px; font-size: 26px}
    #sub .sub-vis h2 em{margin-top: 5px;font-size: 11px;}

    #sub .sub-tit{margin-bottom: 20px}
    #sub .sub-tit h3{font-size: 14px;margin-top: 0;}

    .lnbWrap{display: none;}

    #status{display: none;}

    #navigator{display: block; border-width: 0 0 1px 0;}
    #navigator > ul{width: auto;border-left: none;padding-left: 40px;}
    #navigator > ul > li{width: 50%;box-sizing: border-box;}
    #navigator > ul > li > a{min-width: 0;font-size: 13px;padding: 0 20px 0 10px;line-height: 40px;background-size: 8px auto;}
    #navigator > ul > li:first-child{position: absolute;top: 0;left: 0;width: 40px;}
    #navigator > ul > li:first-child a{width: 40px;background: none;}
    #navigator > ul > li.d2{border: none;}
    #navigator > ul > li > ul{top: 40px;left: -1px;}
    #navigator > ul > li.d2 > ul{border-right: none;}
    #navigator > ul > li > ul li a{padding: 10px;font-size: 13px;}


    .brd-tit {padding-bottom: 10px; margin-bottom: 20px}
    .brd-tit h5 {font-size: 24px; line-height: 32px}


    .grtWrap .top {height: auto; padding: 50px 0; box-sizing: border-box}
    .grtWrap .top h5 {font-size: 40px; line-height: 44px}
    .grtWrap .top h5 span {font-size: 16px; line-height: 24px}
    .grtWrap .top h5 p {margin-top: 10px; font-size: 17px; line-height: 26px}
    .grtWrap .txt {margin-top: 35px}
    .grtWrap .txt h6 {font-size: 26px; line-height: 34px}
    .grtWrap .txt p {margin: 15px 0 30px; font-size: 16px; line-height: 26px}
    .grtWrap .txt strong {font-size: 17px; line-height: 26px}

    .orgWrap > dl:after {height: 90px; margin: 0}
    .orgWrap > dl > dt {width: 40%; font-size: 18px; line-height: 60px}
    .orgWrap > dl > dd {margin-top: 30px}
    .orgWrap > dl > dd ul {margin: 0 -10px}
    .orgWrap > dl > dd ul li {width: calc(100% / 3 - 20px); margin: 0 10px; padding-top: 30px}
    .orgWrap > dl > dd ul li:before {height: 30px}
    .orgWrap > dl > dd ul li dt {font-size: 16px; line-height: 44px}
    .orgWrap > dl > dd ul li dd {font-size: 14px; line-height: 40px}

    .locWrap .mapBox > div {height: 250px !important}
    .locWrap .mapBox > div > div {height: 100% !important}
    .locWrap dl {padding: 20px; text-align: center}
    .locWrap dl dt {position: relative; flex-basis: 100%; padding-bottom: 15px; margin-bottom: 15px}
    .locWrap dl dt:after {content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 30px; height: 1px; background-color: rgba(255,255,255,0.2)}
    .locWrap dl dt img {height: 30px}
    .locWrap dl dd {padding-left: 0; border-left: 0}
    .locWrap dl dd strong {margin-bottom: 5px; font-size: 16px; line-height: 26px}
    .locWrap dl dd span {font-size: 14px; line-height: 22px; margin: 0 10px}


}

@media screen and (max-width: 750px){


    #sub .sub-vis {height: 140px}
    #sub .sub-vis h2 {font-size: 21px}

    #sub #content {padding: 40px 10px}

    .brd-tit {margin-bottom: 15px}
    .brd-tit h5 {font-size: 20px; line-height: 28px}

    .grtWrap .top {padding: 40px 10px; box-sizing: border-box}
    .grtWrap .top h5 {font-size: 24px; line-height: 32px}
    .grtWrap .top h5 span {font-size: 13px; line-height: 20px}
    .grtWrap .top h5 p {margin-top: 5px; font-size: 15px; line-height: 22px}
    .grtWrap .txt {margin-top: 25px}
    .grtWrap .txt h6 {font-size: 18px; line-height: 26px}
    .grtWrap .txt h6 br {display: none}
    .grtWrap .txt p {margin: 10px 0 15px; font-size: 14px; line-height: 22px}
    .grtWrap .txt p br {display: none}
    .grtWrap .txt strong {font-size: 15px; line-height: 22px}

    .orgWrap > dl > dt {width: 35%; font-size: 16px; line-height: 46px}
    .orgWrap > dl > dd {margin-top: 20px}
    .orgWrap > dl > dd ul {margin: 0 -5px}
    .orgWrap > dl > dd ul:after {width: calc(70% - 10px);}
    .orgWrap > dl > dd ul li {width: calc(100% / 3 - 10px); margin: 0 5px; padding-top: 20px}
    .orgWrap > dl > dd ul li:before {height: 20px}
    .orgWrap > dl > dd ul li dt {font-size: 14px; line-height: 40px}
    .orgWrap > dl > dd ul li dd {font-size: 13px; line-height: 34px}

    .locWrap dl {padding: 20px 10px}
    .locWrap dl dt {padding-bottom: 10px; margin-bottom: 10px}
    .locWrap dl dt img {height: 24px}
    .locWrap dl dd strong {font-size: 14px; line-height: 22px}
    .locWrap dl dd span {display: block; margin: 0;}

}