@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");
@import url('//fonts.googleapis.com/earlyaccess/jejumyeongjo.css');
@font-face {
    font-family: 'GyeonggiMillenniumBackground';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Batang_Regular.woff') format('woff');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'GyeonggiMillenniumBackground';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Batang_Bold.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;}

/* div위치조절 */
#wrap{width:100%; overflow:hidden; text-align:left; min-width:1200px; position:relative; background:#ffffff}
#top_wrap{position:relative; width:100%; height:120px; 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: 'Pretendard', sans-serif; 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: 'Pretendard', sans-serif; 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: 'Pretendard', sans-serif; }
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: 'Pretendard', sans-serif; width:180px; letter-spacing:-0.05em; line-height:60px}
div#commonGnb ul.gnbLayer li:hover a{color:#006AC1; text-decoration:none;font-family: 'Pretendard', sans-serif; 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: 'Pretendard', sans-serif; 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:#006AC1; font-weight:400;font-family: 'Pretendard', sans-serif; color:#fff;}




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



/* bottom div위치조절 */

#bottom_wrap {
    position: relative;
    width: 100%;
    min-width: 1200px;
    height: 270px;
    overflow: hidden;
    padding: 0;
    box-sizing: border-box;
    background-color: #123b5d;
    color: #fff;
    font-family: "Pretendard", sans-serif;
}

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

.footer_menu {
    position: absolute;
    top: 30px;
    left: 400px;
    display: flex;
    align-items: center;
    gap: 100px;
    height: 19px;
}

.footer_menu a {
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 19px;
    text-decoration: none;
    white-space: nowrap;
}

.footer_menu a:hover,
.footer_menu a:focus-visible {
    color: #fff;
    text-decoration: underline;
}

.footer_line {
    position: absolute;
    top: 79px;
    left: 60px;
    width: 1800px;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.65);
}

.footer_logo {
    position: absolute;
    top: 139px;
    left: 125px;
    width: 200px;
    height: 70px;
}

.footer_logo a {
    display: block;
    width: 100%;
    height: 100%;
}

.footer_logo img {
    display: block;
    width: 200px;
    height: 70px;
    object-fit: cover;
}

.footer_info {
    position: absolute;
    top: 111px;
    left: 400px;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    white-space: nowrap;
}

.footer_info p {
    margin: 0;
    padding: 0;
    color: #fff;
    font: inherit;
    line-height: 25px;
}

.footer_info a {
    color: #fff;
    text-decoration: none;
}

.footer_info a:hover,
.footer_info a:focus-visible {
    color: #fff;
    text-decoration: underline;
}

.footer_separator {
    display: inline-block;
    margin: 0 15px;
    color: #fff;
}

.footer_copy {
    position: absolute;
    top: 211px;
    left: 400px;
    margin: 0;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    white-space: nowrap;
}



/* 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:20%;
    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:120px; 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:10px;}

#main_ment_wrap{width:1920px;height:700px;margin:0 auto 0;position:relative;overflow:hidden}
#main_ment_total{
    position:absolute;
    left: 246px;
    top:234px;
    width:400px;
    height:auto;
    background:none;
    text-align:left;
}

#main_ment_total .main_sub{
    margin:0 0 10px;
    font-family: "Libre Bodoni", serif;
    font-size:22px;
    font-weight:300;
    color:#fff;
}

#main_ment_total .main_tit{
    font-family: 'GyeonggiMillenniumBackground';
    margin:0;
    font-size:40px;
    font-weight:300;
    line-height:50px;
    letter-spacing:-0.04em;
    color:#fff;
}

#main_ment_total .main_txt{
    margin:30px 0 0;
    font-size:20px;
    font-weight:300;
    line-height:28px;
    letter-spacing:-0.03em;
    color:#fff;
}

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


/* 탭네비 */
#tab_nav_sub{ width:100%; overflow:hidden; margin-bottom:80px}
#tab_nav_sub ul{overflow:hidden;display: flex;margin:0 auto;flex-wrap: nowrap;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:14px; 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:#E5A72A;color:#fff;border:1px solid #004173; font-family: 'Pretendard', sans-serif; font-weight:600}
#tab_nav_sub ul li.on a{background:#123B5D;color:#fff;border:1px solid #004173; font-family: 'Pretendard', sans-serif; font-weight:600}



/* 메인 1 */
.main-about {
    position: relative;
    width: 100%;
    min-width: 1200px;
    height: 500px;
    overflow: hidden;
    background: #fff url("../images/main_a_bg.webp") no-repeat center center;
    background-size: cover;
    margin-top: 100px;
}

.main-about__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    width: calc(100% - 40px);
    max-width: 1400px;
    margin: 0 auto;
    padding-top: 155px;
    box-sizing: border-box;
}

.main-about__description {
    width: 100%;
    margin: 0;
    color: #fff;
    font-family: "Jeju Myeongjo",serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 40px;
    letter-spacing: -0.037em;
    word-break: keep-all;
}

.main-about__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 40px;
    padding: 0 20px;
    border-radius: 50px;
    box-sizing: border-box;
    background-color: #006ac1;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 25px;
    text-decoration: none;
    transition:
        background-color 0.25s ease,
        transform 0.25s ease;
}

.main-about__link:hover,
.main-about__link:focus-visible {
    background-color: #123B5D;
    color: #fff;
    text-decoration: none;
    transform: translateY(-2px);
}
/* 메인 2*/
.main-activity {
    position: relative;
    width: 100%;
    min-width: 1200px;
    height: 800px;
    overflow: hidden;
    box-sizing: border-box;
    padding-top: 100px;
    background-color: #fff;
}

.main-activity__title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    height: 51px;
    margin: 0;
    font-family: "Pretendard", sans-serif;
    font-size: 42px;
    line-height: 51px;
    letter-spacing: 0;
    white-space: nowrap;
}

.main-activity__title strong {
    color: #123b5d;
    font-weight: 700;
}

.main-activity__title span {
    color: #006ac1;
    font-weight: 400;
}

.main-activity__list {
    display: grid;
    grid-template-columns: repeat(5, 350px);
    gap: 20px;
    width: 1830px;
    height: 500px;
    margin: 50px auto 0;
}

.main-activity__item {
    position: relative;
    width: 350px;
    height: 500px;
    overflow: hidden;
    box-sizing: border-box;
    background-color: #123b5d;
}

.main-activity__image {
    width: 350px;
    height: 320px;
    overflow: hidden;
}

.main-activity__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main-activity__content {
    position: absolute;
    top: 340px;
    left: 20px;
    width: 310px;
    color: #fff;
}

.main-activity__content h3 {
    margin: 0;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 26px;
    font-weight: 700;
    line-height: 31px;
    letter-spacing: 0;
    white-space: nowrap;
}

.main-activity__content p {
    width: 310px;
    margin: 13px 0 0;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: -0.03em;
    word-break: keep-all;
}

.main-activity__link {
    position: absolute;
    right: 20px;
    bottom: 19px;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 19px;
    color: #fff;
    font-family: "Pretendard", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 19px;
    text-decoration: none;
    white-space: nowrap;
}

.main-activity__link span {
    color: inherit;
}

.main-activity__arrow {
    position: relative;
    display: block;
    width: 20px;
    height: 8px;
    flex: 0 0 20px;
}

.main-activity__arrow::before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    width: 20px;
    height: 1px;
    background-color: #fff;
}

.main-activity__arrow::after {
    content: "";
    position: absolute;
    top: 1px;
    right: 0;
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
    box-sizing: border-box;
}

.main-activity__link:hover,
.main-activity__link:focus-visible {
    color: #fff;
    text-decoration: none;
}

/* 메인 3*/
.main-notice {
    position: relative;
    width: 100%;
    min-width: 1200px;
    height: 400px;
    margin-top: 50px;
    overflow: hidden;
    box-sizing: border-box;
    background-color: #f2f7fa;
}

.main-notice__inner {
    display: grid;
    grid-template-columns: repeat(3, 393px);
    column-gap: 197px;
    width: 1573px;
    height: 196px;
    margin: 0 auto;
    padding-top: 102px;
}

.main-notice__column {
    position: relative;
    width: 393px;
    height: 196px;
}

.main-notice__column:nth-child(2)::before,
.main-notice__column:nth-child(3)::before {
    content: "";
    position: absolute;
    top: -27px;
    left: -99px;
    width: 1px;
    height: 250px;
    background-color: #d7d7d7;
}
/* 메인 4*/
/* =========================================
   E. 협력사 로고 슬라이드
========================================= */
.main-partner {
    position: relative;
    width: 100%;
    min-width: 1200px;
    height: 100px;
    margin: 0 0 100px;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid #d9d9d9;
    background-color: #fff;
}

.main-partner__viewport {
    position: relative;
    width: 1400px;
    height: 80px;
    margin: 10px auto;
    overflow: hidden;
}

.main-partner__track {
    display: flex;
    align-items: center;
    gap: 50px;
    width: max-content;
    height: 80px;
    margin-left: -75px;
    animation: main-partner-flow 32s linear infinite;
    will-change: transform;
}

.main-partner__group {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 50px;
    width: 1550px;
    height: 80px;
}

.main-partner__item {
    display: flex;
    flex: 0 0 150px;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 50px;
    overflow: hidden;
}

.main-partner__item img {
    display: block;
    width: 150px;
    height: 50px;
    object-fit: cover;
}

.main-partner__viewport:hover .main-partner__track {
    animation-play-state: paused;
}

@keyframes main-partner-flow {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-1600px, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .main-partner__track {
        animation: 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;
}