@charset "utf-8"; 
/*나눔고딕*/
@import url(./fonts/NanumGothic/NanumGothic.css);
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'GMarketSans';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

/* base */
html{overflow-y:scroll; overflow-x:hidden;font-family: 'Pretendard', sans-serif;}
body, div, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p, form, fieldset, input{margin:0;padding:0;font-family: 'Pretendard', sans-serif;}
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: 'Pretendard', sans-serif; font-size:13px; color:#333; font-weight:400;}

#wrap{
    position:relative;
    width:100%;
    min-width:1200px;
    overflow:hidden;
    text-align:left;
    background:#fff;
}

#top_wrap{
    position:relative;
    width:100%;
    height:232px;
    background:#fff;
    z-index:1000;
}

.top_logo_area{
    position:relative;
    width:100%;
    height:190px;
    background:#fff;
}

#top_logo{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    margin:0;
    padding:0;
}

#top_logo a{
    display:block;
}

#top_logo img{
    display:block;
    width:auto;
    height:auto;
    max-width:none;
}

#commonGnb{
    position:relative;
    width:100%;
    height:42px;
    margin:0;
    border-top:1px solid #8ec5e5;
    border-bottom:1px solid #8ec5e5;
    background:#fff;
    box-sizing:border-box;
    z-index:1000;
}

#commonGnb .gnbWrap{
    position:relative;
    width:960px;
    height:40px;
    margin:0 auto;
}

#commonGnb .gnbLayer{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    width:100%;
    height:40px;
    margin:0;
    padding:0;
    list-style:none;
}

#commonGnb .gnbLayer > li{
    position:relative;
    flex:0 0 192px;
    width:192px;
    height:40px;
    margin:0;
    padding:0;
    list-style:none;
}

#commonGnb .gnbLayer > li > a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:40px;
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-size:16px;
    line-height:1;
    font-weight:400;
    letter-spacing:-0.04em;
    color:#222;
    text-align:center;
    text-decoration:none;
    transition:color .25s ease;
}

#commonGnb .gnbLayer > li:hover > a{
    color:#1676b5;
}

#commonGnb .gnbLayer > li dl{
    display:none;
    position:absolute;
    left:0;
    top:40px;
    width:192px;
    margin:0;
    padding:10px 0;
    box-sizing:border-box;
    background:#fff;
    border:1px solid #e5e5e5;
    border-top:2px solid #1676b5;
    box-shadow:0 6px 15px rgba(0,0,0,.08);
    z-index:1000;
}

#commonGnb .gnbLayer > li:hover dl{
    display:block;
}

#commonGnb .gnbLayer > li dl dd{
    width:100%;
    height:38px;
    margin:0;
    padding:0;
}

#commonGnb .gnbLayer > li dl dd a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:38px;
    margin:0;
    padding:0 10px;
    box-sizing:border-box;
    font-size:13px;
    line-height:1;
    font-weight:400;
    letter-spacing:-0.04em;
    color:#444;
    text-align:center;
    text-decoration:none;
    white-space:nowrap;
    transition:background .2s ease,color .2s ease;
}

#commonGnb .gnbLayer > li dl dd a:hover{
    background:#1676b5;
    color:#fff;
}



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



/* bottom div위치조절 */

#bottom_wrap{
    width:100%;
    min-width:1200px;
    height:270px;
    background:#1B548C;
    color:#fff;
    overflow:hidden;
}

.footer_inner{
    position:relative;
    width:1800px;
    height:270px;
    margin:0 auto;
}

.footer_menu{
    position:absolute;
    left: 340px;
    top:30px;
    width:304px;
    height:19px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.footer_menu a{
    font-size:16px;
    font-weight:400;
    color:#fff;
    text-decoration:none;
    white-space:nowrap;
}

.footer_line{
    position:absolute;
    left:0;
    top:79px;
    width:1800px;
    height:1px;
    background:#fff;
}

.footer_logo{
    position:absolute;
    left: 90px;
    top: 99px;
    width: 150px;
    height: 150px;
}

.footer_logo img{
    display:block;
    width: 150px;
    height: 150px;
    object-fit:contain;
}

.footer_info{
    position:absolute;
    left: 340px;
    top:110px;
    width:827px;
    height:100px;
    font-size:16px;
    line-height:1.7;
    font-weight:400;
    color:#fff;
}

.footer_info p{
    margin:0;
}

.footer_info span{
    display:inline-block;
    margin:0 16px;
}

.footer_copy{
    margin-top:20px !important;
}





/* sub_body div위치조절 */
#sub_img{
    position:relative;
    width:100%;
    height:300px;
    overflow:hidden;
    background:url(../images/subtop_01.webp) no-repeat center center;
    background-size:cover;
}

/* 서브 이미지 별도 */
.subbg-1 { background: url('../images/subtop_01.webp') no-repeat center top !important;  } 
.subbg-2 { background: url('../images/subtop_02.webp') no-repeat center top !important;  } 
.subbg-3 { background: url('../images/subtop_03.webp') no-repeat center top !important;  } 
.subbg-4 { background: url('../images/subtop_04.webp') no-repeat center top !important;  } 
.subbg-5 { background: url('../images/subtop_05.webp') no-repeat center top !important;  } 

#sub_txt{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    width:auto;
    height:auto;
    color:#fff;
    font-size:38px;
    font-weight:bold;
    line-height:1;
    text-align:center;
    letter-spacing:-1px;
    white-space:nowrap;
}
#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: 'Pretendard', sans-serif; font-size:36px;  color:#222;letter-spacing:-0.05em; font-weight:600;}
#title_b{text-align:center; font-family: 'Pretendard', sans-serif; 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:45px; 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:1920px;height:700px;margin:0 auto 0;position:relative;overflow:hidden}
#main_ment_total{
    position:absolute;
    left: 100px;
    top: 331px;
    width: 652px;
    height:auto;
    background:none;
    text-align:left;
}

#main_ment_total .main_sub{
    margin:0 0 10px;
    font-size:34px;
    font-weight:100;
    color:#fff;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}

#main_ment_total .main_tit{
    margin:0;
    font-size:58px;
    font-weight:bold;
    line-height:75px;
    letter-spacing:-0.04em;
    color:#fff;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}

#main_ment_total .main_txt{
    margin:30px 0 0;
    font-size:26px;
    font-weight:100;
    line-height:35px;
    letter-spacing:-0.03em;
    color:#fff;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}

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


/* 탭네비 */
#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: 'Pretendard', sans-serif; font-weight:600}
#tab_nav_sub ul li a:hover{background:#68B5D8;color:#fff;border:1px solid #68B5D8; font-family: 'Pretendard', sans-serif; font-weight:600}
#tab_nav_sub ul li.on a{background:#68B5D8;color:#fff;border:1px solid #68B5D8; font-family: 'Pretendard', sans-serif; font-weight:600}



/* 메인 1 */
.main_a{
    position:relative;
    width:100%;
    height:2100px;
    overflow:hidden;
    background:#fff;
}

.main_a_bg{
    position:absolute;
    left:50%;
    top:0;
    width:1920px;
    height:2100px;
    background:#fff;
    background-size:1920px 2100px;
    opacity:.4;
    transform:translateX(-50%);
    pointer-events:none;
}

.main_a_inner{
    position:relative;
    z-index:2;
    width:1520px;
    height:2100px;
    margin:0 auto;
}

.main_a_row{
    position:absolute;
    left:0;
    width:1520px;
    height:500px;
}

.main_a_row01{
    top:130px;
}

.main_a_row02{
    top:830px;
}

.main_a_row03{
    top:1530px;
}

.main_a_row04{
    top:2230px;
}

.main_a_row05{
    top:2930px;
}

.main_a_image{
    position:absolute;
    width:800px;
    height:500px;
    overflow:hidden;
}

.main_a_image img{
    display:block;
    width:800px;
    height:500px;
    object-fit:cover;
    object-position:center center;
}

.main_a_row:nth-child(odd) .main_a_image{
    right:0;
    top:0;
}

.main_a_row:nth-child(even) .main_a_image{
    left:0;
    top:0;
}

.main_a_text{
    position:absolute;
    width:585px;
    height:239px;
    top:130px;
    box-sizing:border-box;
}

.main_a_row:nth-child(odd) .main_a_text{
    left:0;
}

.main_a_row:nth-child(even) .main_a_text{
    right:0;
}

.main_a_text h2{
    margin:0;
    padding:0;
    font-size:40px;
    font-weight:bold;
    letter-spacing:-0.05em;
    color:#222;
}

.main_a_text h3{
    margin:20px 0 0;
    padding:0;
    font-size:26px;
    font-weight:200;
    letter-spacing:-0.045em;
    color:#222;
}

.main_a_text p{
    margin:20px 0 0;
    padding:0;
    font-size:20px;
    line-height:30px;
    font-weight:100;
    letter-spacing:-0.04em;
    color:#666;
}

.main_a_more{
    display:flex;
    align-items:center;
    justify-content:center;
    width:180px;
    height:40px;
    margin-top:20px;
    border-radius:20px;
    box-sizing:border-box;
    background:#1B548C;
    font-size:13px;
    line-height:1;
    font-weight:400;
    color:#fff;
    text-decoration:none;
    transition:background .3s ease;
}

.main_a_more:hover{
    background:#68B5D8;
    color:#222;
}

.animate_fadeInRightBig,
.animate_fadeInLeftBig{
    opacity:0;
}

.animate_fadeInRightBig.animate_active{
    animation-name:mainCFadeInRightBig;
    animation-fill-mode:both;
    animation-timing-function:ease;
}

.animate_fadeInLeftBig.animate_active{
    animation-name:mainCFadeInLeftBig;
    animation-fill-mode:both;
    animation-timing-function:ease;
}

@keyframes mainCFadeInRightBig{
    0%{
        opacity:0;
        transform:translate3d(300px,0,0);
    }

    100%{
        opacity:1;
        transform:translate3d(0,0,0);
    }
}

@keyframes mainCFadeInLeftBig{
    0%{
        opacity:0;
        transform:translate3d(-300px,0,0);
    }

    100%{
        opacity:1;
        transform:translate3d(0,0,0);
    }
}

/* 메인 2*/
.pc_gallery_sec{
    position:relative;
    width:100%;
    min-width:1200px;
    height:750px;
    overflow:hidden;
    background:#1B548C;
}

.pc_gallery_inner{
    position:relative;
    width:1920px;
    height:750px;
    margin:0 auto;
}

.pc_gallery_title{
    position:absolute;
    left:165px;
    top:100px;
    width:1085px;
    text-align:left;
    color:#fff;
}

.pc_gallery_title h2{
    margin:0;
    padding:0;
    font-size:40px;
    font-weight:bold;
    letter-spacing:-0.05em;
    color:#fff;
}

.pc_gallery_title strong{
    display:block;
    margin:20px 0 0;
    padding:0;
    font-size:26px;
    font-weight:400;
    letter-spacing:-0.04em;
    color:#fff;
}

.pc_gallery_title p{
    margin:20px 0 0;
    padding:0;
    font-size:20px;
    line-height:30px;
    font-weight:300;
    letter-spacing:-0.04em;
    color:rgba(255,255,255,.9);
}

/* 메인 3*/

.parallax-hero{
    position:relative;
    width:100%;
    min-width:1200px;
    height:800px;
    overflow:hidden;
    background:#000;
    margin: 100px 0 100px;
}

.parallax-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:url('../images/main_c_bg.webp') center center/cover no-repeat;
    transform:translate3d(0,var(--y,0),0) scale(1.06);
    will-change:transform;
    transition:transform .08s linear;
}

.parallax-hero::after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.18);
    pointer-events:none;
}

.c-inner{
    position:relative;
    z-index:1;
    width:1920px;
    height:800px;
    margin:0 auto;
}
.c-copy{
    position:absolute;
    left:50%;
    top:256px;
    width:820px;
    height:289px;
    transform:translateX(-50%);
    text-align:center;
    color:#fff;
}

.c-title{
    margin:0;
    padding:0;
    font-family:'Pretendard',sans-serif;
    font-size:40px;
    font-weight:bold;
    letter-spacing:-0.05em;
    color:#fff;
}

.c-sub{
    margin:20px 0 0;
    padding:0;
    font-size:26px;
    font-weight:300;
    letter-spacing:-0.04em;
    color:#fff;
}

.c-desc{
    margin:20px 0 0;
    padding:0;
    font-size:20px;
    line-height:30px;
    font-weight:300;
    letter-spacing:-0.04em;
    color:#fff;
}

.c-tel{
    display:flex;
    justify-content:center;
    align-items:center;
    margin:30px 0 0;
    padding:0;
    color:#fff;
}

.c-tel span{
    display:block;
    margin:0 16px 0 0;
    padding:0;
    font-size:40px;
    font-weight:bold;
    letter-spacing:-0.04em;
    color:#fff;
}

.c-tel a{
    display:block;
    margin:0;
    padding:0;
    font-family: 'GMarketSans';
    font-size:80px;
    font-weight:bold;
    letter-spacing:-0.03em;
    color:#FFEA00;
    text-decoration:none;
}

.c-btn{
    display:block;
    width:200px;
    height:40px;
    margin:20px auto 0;
    border:1px solid #E5E3DE;
    box-sizing:border-box;
    font-size:14px;
    line-height:38px;
    font-weight:300;
    color:#fff;
    text-align:center;
    text-decoration:none;
    background: rgb(255 255 255 / 20%);

}

@supports (background-attachment:fixed){
    .parallax-hero{
        background:url('../images/main_c_bg.webp') center center/cover fixed no-repeat;
    }

    .parallax-hero::before{
        display:none;
    }
}

/* 마지막 */

.pc_contact_sec{
    width:100%;
    min-width:1200px;
    height:600px;
    background:#fff;
    font-family:'Pretendard',sans-serif;
    overflow:hidden;
    margin: 50px 0 50px;
}

.pc_contact_inner{
    position:relative;
    width:1920px;
    height:600px;
    margin:0 auto;
}

.pc_contact_info{
    position:absolute;
    left:255px;
    top:135px;
    width:528px;
}

.pc_contact_en{
    margin:0 0 20px;
    font-family: "Libre Bodoni", serif;
    font-size:20px;
    line-height:1;
    font-weight:300;
    color:#2F352C;
}

.pc_contact_info h2{
    font-family: 'GyeonggiMillenniumBackground';
    margin:0;
    font-size:40px;
    line-height:50px;
    font-weight:300;
    color:#8A887F;
    letter-spacing:-2px;
}

.pc_contact_desc{
    margin:50px 0 0;
    font-size:18px;
    line-height:30px;
    font-weight:300;
    color:#666;
    letter-spacing:-0.7px;
}

.pc_contact_list{
    display:flex;
    align-items:center;
    width:528px;
    height:60px;
    margin-top:50px;
}

.pc_contact_item{
    display:flex;
    align-items:center;
    width:264px;
    height:60px;
}

.pc_contact_item img{
    display:block;
    width:60px;
    height:60px;
    object-fit:contain;
    margin-right:20px;
}

.pc_contact_item span{
    display:block;
    margin-bottom:8px;
    font-size:18px;
    line-height:30px;
    font-weight:300;
    color:#666;
}

.pc_contact_item a,
.pc_contact_item p{
    display:block;
    margin:0;
    font-size:20px;
    line-height:30px;
    font-weight:700;
    color:#2F352C;
    text-decoration:none;
    letter-spacing:-0.5px;
}

.pc_contact_map{
    position:absolute;
    left:940px;
    top:0;
    width:960px;
    height:600px;
    overflow:hidden;
}

.pc_contact_map .root_daum_roughmap{
    width:960px !important;
    height:600px !important;
}

.pc_contact_map .wrap_map{
    width:960px !important;
    height:600px !important;
}

.pc_contact_map .wrap_controllers{
    display:none !important;
}