@charset "utf-8";
/* date : 2022-06-21 / name : kwj (kohwji@kakao.com) - response web size - pc : (w)1440px / tablet : (w)926px / mobile : (w)667px */
@font-face {
    font-family: 'PretendardVariable';
    font-weight: 45 920;
    font-style: normal;
    font-display: swap;
    src: local('PretendardVariable'), url('./font/PretendardVariable.woff2') format('woff2-variations');
}
*{margin:0;padding:0}.skip,legend{position:absolute}a,abbr,address,article,aside,audio,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,header,hgroup,hr,html,i,iframe,img,ins,kbd,li,main,mark,nav,ol,output,p,pre,q,ruby,s,samp,section,small,span,strong,sub,summary,sup,tbody,td,tfoot,th,thead,time,tr,u,ul,var,video,button,input,textarea,select{padding:0;margin:0;border:0;font:inherit;vertical-align:baseline;box-sizing:border-box}body{line-height:1;font-family:'PretendardVariable','minerva-modern',sans-serif;font-size:16px;font-weight:400;color:#333;letter-spacing:0; word-break:keep-all;text-size-adjust: none}a{text-decoration:none;color:inherit}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0;}caption{display:none}legend{height:0;font-size:0;line-height:0;overflow:hidden;text-indent:-20000px}address,cite,em{font-style:normal}button,label{cursor:pointer}button{border:0;background:0 0;display:inline-block;font-size:inherit;letter-spacing:-.04em;color:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:none;color:inherit}.skip,.sound_only{visibility:hidden;top:0;left:0}img{max-width:100%}th,td{vertical-align:middle}

input:focus {
    outline:none;
    -webkit-tap-highlight-color : transparent;
}

textarea:focus {
    outline:none;
    -webkit-tap-highlight-color : transparent;
}



/* popup */

.deweb_pop {
    position: fixed;
    z-index: 100;
    left: -100%;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: white;
    transition: left 0.5s;
}

.deweb_pop.show {
    left:0%;
    transition:left 0.5s;
}

.pop-content {
    width: 100%;
    height: 100%;
    position: relative;
}

.pop-content .close_wrap {
    width: 60px;
    height:60px;
    position: absolute;
    top:100px;
    right:100px;
    transition:transform 0.3s ease;

    &:hover {
        transform:rotate(90deg);
        transition:transform 0.3s ease;
    }
}



.pop-content .close_wrap .close {
    position: relative;
    display: block;
    width: 100%;
    height:100%;
}

.pop-content .close_wrap .close::before {
    position:absolute;
    content: '';
    width: 100%;
    height:2px;
    background:#333;
    top:50%;
    transform:rotate(-45deg) translateX(0%);
}

.pop-content .close_wrap .close::after {
    position:absolute;
    content: '';
    width: 100%;
    height:2px;
    background:#333;
    top:50%;
    transform:rotate(45deg) translateX(0%);
}

#about_pop .pop-content .close_wrap .close::before {
    position:absolute;
    content: '';
    width: 100%;
    height:2px;
    background:#fff;
    top:50%;
    transform:rotate(-45deg) translateX(0%);
}

#about_pop .pop-content .close_wrap .close::after {
    position:absolute;
    content: '';
    width: 100%;
    height:2px;
    background:#fff;
    top:50%;
    transform:rotate(45deg) translateX(0%);
}


.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}


/* fonts */

.minerva {font-family: 'minerva-modern' , sans-serif;}
.montserrat {font-family: 'Montserrat',sans-serif;}


.outlined-text {
    color: transparent; /* 텍스트 색상을 투명하게 설정 */
    text-shadow:
        -1px -1px 0 #000,  
         1px -1px 0 #000,
        -1px  1px 0 #000,
         1px  1px 0 #000; /* 텍스트에 그림자 효과를 적용하여 외곽선처럼 보이게 함 */
}

.deweb-full-text1 {
    background: linear-gradient(to right, #000 50%, #ededed 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-background-clip: text;
    color: transparent;
    /* 텍스트 색상을 투명하게 설정 */
    transition: all 1s ease;
}

.deweb-full-text2 {
    background: linear-gradient(to right, var(--main-color) 50%, #ededed 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-background-clip: text;
    color: transparent;
    /* 텍스트 색상을 투명하게 설정 */
    transition: all 1s ease;
}

.deweb-full-text3 {
    background: linear-gradient(to right, #e4ec45 50%, #000 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-background-clip: text;
    color: transparent;
    /* 텍스트 색상을 투명하게 설정 */
    transition: all 0.7s ease;
}

.deweb-full-text4 {
    background: linear-gradient(to right, #fff 50%, #000 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    -webkit-background-clip: text;
    color: transparent;
    /* 텍스트 색상을 투명하게 설정 */
    transition: all 0.7s ease;
}


.is-visible {
    background-position: left bottom;
}

.deweb-text {
    position: relative;
    /* ::after의사 요소를 정렬하기 위해 relative 설정 */
}

.deweb-text::after {
    content: '';
    position: absolute;
    bottom: 0px;
    /* 텍스트의 반 정도 높이에 위치 */
    left: 0;
    width: 100%;
    height: 8px;
    z-index: -1;
    /* 밑줄 두께 */
    opacity: 0.3;
    /* 형광펜처럼 투명한 노란색 */
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 1s;
    /* 왼쪽에서 오른쪽으로 1초 동안 변환 */
}

.visible::after {
    transform: scaleX(1);
}


.color-main::after {
    background:var(--main-color);
}


/* View */

.mo_view {display: none;}
.pc_view {display: inline-block;}



/* br */

.br_mo {display:none;}
.br_pc {display: block;}

/* color set */
:root {
    --main-color: #54C6B8;
}
:root {--white-color:#fff;}
:root {--gray-color:#727174;}
:root {--black-color:#252525;}

.color_w {color:#fff !important; opacity: 1;}

/* Text */

.text_hl_1 {
    background: linear-gradient(to top, #93e2d9 40%, transparent 30%);
    }

/* 레이아웃 */

.flex {display: flex;}

/* a : hover */
a {transition: color 0.3s; cursor: pointer;}
a:hover {color:var(--main-color); transition: color 0.3s;}

/* browser */
#browser-msg{width:100%;height:auto;background:#222;padding:15px;box-sizing:border-box;text-align:center;position:relative}#browser-msg p,#browser-msg mark{color:#fff;line-height:140%;font-size:12px;letter-spacing:0}#browser-msg mark{background:#f0bd41;color:#000;padding:0 5px}#browser-msg .bt-brs-upgrade{display:inline-block;font-size:12px;background:#fff;padding:5px 30px;margin:15px 0 0 0}#browser-msg .bt-close-brs{position:absolute;top:0;right:0;background:#fff;font-size:11px;padding:10px 10px}

/* skip */
.skip-nav {position:relative; z-index:999;}
.skip-nav a {display:inline-block; position:absolute; top:-100px; left:-999px; border:1px solid #24242c; background:#31313b; color:#fff;}
.skip-nav a:focus, .skip-nav a:active {display:inline-block; top:0; left:0; cursor:pointer; zoom:1; padding:5px 8px 4px; margin-right:9px; background:#31313B; font-weight:normal; font-size:11px; line-height:1.4;}

/* form : input */
.it {display:block; height:auto; padding:8px 16px; font:inherit; letter-spacing:-0.04em; -webkit-appearance:none; -webkit-border-radius:0; border-bottom:1px solid #ccc; background:none; outline:none;}
.it:focus {border-bottom:1px solid var(--main-color);}
.it[type="password"] {}

/* form : textarea */
.frm-tta {width:100%; height:220px; padding:16px; margin-top:48px; line-height:1.6; border:1px solid #ccc; outline:none;}
.frm-tta:focus {border:1px solid var(--main-color);}

/* icon */
.ico {display:block; position:relative;}
.ico:before, .ico:after {content:''; display:block; position:absolute;}
.i-arrow {width:24px; height:24px;} /* → */
.i-arrow:before {width:0; height:0; border:5px transparent solid; border-right-width:0; border-left-color:currentColor; top:7px; left:18px;}
.i-arrow:after {width:20px; height:2px; background-color:currentColor; top:11px; left:0; border-radius:2px;}



/* layout */
#wrap {width:100%; height:auto;}
#header {width:100%; height:auto; color:var(--white-color); letter-spacing:0; position:fixed; top:0; left:50%; transform:translateX(-50%); z-index:1; transition: all 0.8s;}
.fixed {
    position: fixed;
    top: 0px !important;
    right: 0;
    left: 0;
    z-index: 1030;
    margin: 0 auto !important;
    transition: all 0.8s;
    border-bottom: 0 !important;
    background:rgb(0, 0, 0,0.0);
}
#container {width:100%; height:auto;}
#contact {width:100%; height:auto; padding:3.5rem 5rem; color:#252525;}
#contents {}
#footer {width:100%; height:auto; padding:3.5rem 5rem; color:#252525;}
div[class^="inner"] {width:inherit; padding:0 1.5rem; margin:0 auto;}

/* 메인 포트폴리오 */

.grid {	width: 100%; max-width: 100%; }
.grid-sizer, .grid-item { width: 33.3%; }
.grid-item {
    overflow: hidden;
    padding:3rem;
}
.grid-item img {
    display: block;
    min-width: 100%;
    max-width: 100%;
    border-radius: 0rem;
}

.grid-item .item-img-wrap {
    position:relative;
}

.grid-item .item-img-wrap .ing {
    position:absolute;
    top:20px;
    left:20px;
    font-size:20px;
    font-weight:700;
    color:#fff;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7); /* 반투명 검정색 */
    width: 100%; /* 초기 상태는 보이지 않음 */
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease; /* 부드러운 전환 효과 */
    overflow: hidden; /* 텍스트가 넘칠 경우 숨김 */
}

.grid-item .item-img-wrap:hover .overlay {
    opacity: 1;
}

.overlay .text {
    color:#fff;
    position: absolute;
    bottom: 2rem;
    left: 2rem;
}

.overlay .text .company {
    font-size:16px;
    font-weight:400;
    padding-bottom:5px;
}

.overlay .text .subject {
    font-weight:600;
    letter-spacing: 0.5px;
    font-size:26px;
    line-height: 1.5;
    padding-bottom:5px;
}

.overlay .text .project {
    font-weight:300;
    font-size:16px;
    padding-bottom:10px;
}

.overlay .text .role {

}

.overlay .text .link {
    padding:2rem 0 0 0;
    font-size:18px;
    font-weight:600;
}

.overlay .text .link a {
    color:#fff;
    position: relative;

    &::after {
        position: absolute;
        content: '';
        width: 15px;
        height: 15px;
        bottom: 2px;
        left: 85px;
        background: url('../image/common/right_arrow.png') no-repeat;
        background-size: 8px;
        transition:all 0.3s;
        filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(143deg) brightness(107%) contrast(100%);
    }

    &:hover::after {
        color:#fff;
        left:90px;
        transition:all 0.3s;
    }
}


/* 포지션 */

.position_center {text-align: center;}
/* 모달팝업 */

.deweb_popup {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Stay in place */
    z-index: 1;
    /* Sit on top */
    left: 0;
    top: 0;
    width: 100%;
    /* Full width */
    height: 100%;
    /* Full height */
    overflow: auto;
    /* Enable scroll if needed */
    background-color: rgb(0, 0, 0);
    /* Fallback color */
    background-color: rgba(0, 0, 0, 0.4);
    /* Black w/ opacity */
}

/* Modal Content/Box */
.popup-content {
    background-color: #fefefe;
    margin: 15% auto;
    /* 15% from the top and centered */
    padding: 20px;
    border: 1px solid #888;
    width: 50%;
    /* Could be more or less, depending on screen size */
}

/* The Close Button */
.popup_close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.popup_close:hover,
.popup_close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}


@media (max-width:768px){	
    .grid-sizer, .grid-item { width: 100%;margin-bottom:15px; padding:0; }
}
	





/* header */
#header .hd-inner {width:100%; height:auto; display:flex; justify-content: space-between; align-items: center; padding:0 3rem;}
#header .hd-inner h1 {display:table-cell; vertical-align:top; padding:1rem 0;}
#header .hd-inner h1 a {
    display: block;
    width: 60px;
    height: 40px;
    background: url("../image/common/logo_1.png") no-repeat;
    font-size: 0;
    background-size: contain;
    filter: saturate(0%)
}
#header.active .hd-inner h1 a {
    display: block;
    width: 60px;
    height: 40px;
    background: url("../image/common/logo_1.png") no-repeat;
    font-size: 0;
    background-size: contain;
    filter: saturate(100%)
}
#header .hd-inner nav {display:table-cell; display:flex; align-items:center; display: none;}
#header .hd-inner nav > ul {width:100%; font-weight:500; font-size:1.125rem; text-align:right; display: none;}
#header .hd-inner nav > ul > li {display:inline-block; padding:0 1%;}
#header .hd-inner nav > ul > li > a {display:block; padding:2.563rem 1rem;}
#header .hd-inner nav .language {width:190px; font-size:14px; text-align:center; position:relative; display: none;}
#header .hd-inner nav .language > a {display:none;}
#header .hd-inner nav .language ul {}
#header .hd-inner nav .language ul li {display:inline-block;}
#header .hd-inner nav .language ul li:before {content:''; display:block; width:1px; height:11px; background-color:var(--white-color); position:absolute; top:2px; left:50%;}
#header .hd-inner nav .language ul li a {padding:1rem;}
#header .hd-inner nav .language ul li a:hover {font-weight:700;}

#header .hd-inner .top_menu {z-index: 2; width: 100%; transition: 0.5s;}
#header .hd-inner .top_menu ul {display: flex; align-items: center; justify-content: center; gap:3rem; height:100%;}
#header .hd-inner .top_menu ul li {color:#fff; font-size:20px; font-weight:500; font-family: 'Montserrat', sans-serif;}
#header .hd-inner .top_menu ul li a:hover {color:#ededed;}
#header .hd-inner .top_menu ul li a {
    text-decoration: none;
    position: relative;

    &::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 25px;
        line-height: 40px;
        content: attr(title);
        border-bottom: 3px solid #ededed;
        max-width: 0;
        overflow: hidden;
        transition: all 0.5s;
    }

    &:hover::after {
        max-width: 100%;
    }
}

#header.fixed .hd-inner .top_menu {visibility: hidden; opacity:0; transition:all 0.5s;}


/* header-subpage */
#header {padding:1rem 0rem;}
#header .hd-inner-sub {width:100%; height:auto; display:flex; justify-content: space-between; background:#fff;}
#header .hd-inner-sub h1 {display:table-cell; vertical-align:top; padding:1.5rem 3rem;}
#header .hd-inner-sub h1 a {
    display: block;
    width: 280px;
    height: 27px;
    background: url(../image/common/exo-hl-toplogo.png) no-repeat;
    font-size: 0;
    background-size:contain;
}
#header .hd-inner-sub nav {display:table-cell; display:flex; align-items:center; display: none;}
#header .hd-inner-sub nav > ul {width:100%; font-weight:500; font-size:1.125rem; text-align:right; display: none;}
#header .hd-inner-sub nav > ul > li {display:inline-block; padding:0 1%;}
#header .hd-inner-sub nav > ul > li > a {display:block; padding:2.563rem 1rem;}
#header .hd-inner-sub nav .language {width:190px; font-size:14px; text-align:center; position:relative; display: none;}
#header .hd-inner-sub nav .language > a {display:none;}
#header .hd-inner-sub nav .language ul {}
#header .hd-inner-sub nav .language ul li {display:inline-block;}
#header .hd-inner-sub nav .language ul li:before {content:''; display:block; width:1px; height:11px; background-color:var(--white-color); position:absolute; top:2px; left:50%;}
#header .hd-inner-sub nav .language ul li a {padding:1rem;}
#header .hd-inner-sub nav .language ul li a:hover {font-weight:700;}


/* header : sub */
#header.sub-header {}
#header.sub-header.fixed {}
#header.sub-header .hd-inner {}
#header.sub-header .hd-inner .top_menu h1 {padding:1.5rem 0;}
#header.sub-header .hd-inner h1 a {
    display: block;
    width: 60px;
    height: 40px;
    background: url("../image/common/logo_1.png") no-repeat;
    font-size: 0;
    background-size: contain;
    filter: saturate(100%)
}
#header.sub-header.active .hd-inner h1 a {
    display: block;
    width: 60px;
    height: 40px;
    background: url("../image/common/logo_1.png") no-repeat;
    font-size: 0;
    background-size: contain;
    filter: saturate(0%)
}
#header.sub-header .hd-inner .top_menu ul li a {
    text-decoration: none;
    position: relative;
    color:#333;

    &:hover {
        color:#999;
    }
    
    &::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 25px;
        line-height: 40px;
        content: attr(title);
        border-bottom: 3px solid #999;
        max-width: 0;
        overflow: hidden;
        transition: all 0.5s;
    }
    
    &:hover::after {
        max-width: 100%;
    }
}
#header.sub-header.active .hd-inner .top_menu ul li a {
    text-decoration: none;
    position: relative;
    color:#fff;
    
    &::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 25px;
        line-height: 40px;
        content: attr(title);
        border-bottom: 3px solid #ededed;
        max-width: 0;
        overflow: hidden;
        transition: all 0.5s;
    }
    
    &:hover {
        color:#fff;
    }

    &:hover::after {
        max-width: 100%;
    }
}
#header.sub-header .hd-inner .top_menu .language a {display:block; width:100%; height:auto; padding:8px;}
#header.sub-header .hd-inner .top_menu .language > a:before {content:''; display:inline-block; vertical-align:middle; width:16px; height:16px; margin-right:13px; background:url("../image/common/ico_global.svg") 0 0 no-repeat;}
#header.sub-header .hd-inner nav .language > a .ico {display:inline-block; vertical-align:middle; width:16px; height:16px;}
#header.sub-header .hd-inner nav .language > a .ico:before {width:8px; height:8px; border:1px solid #fff; border-right-width:0; border-top-width:0; transform:rotate(-45deg); bottom:7px; left:7px;}
#header.sub-header .hd-inner nav .language ul {display:none; width:96px; height:auto; position:absolute; top:32px; right:30px; background-color:#fff; color:#121714; font-weight:600;}
#header.sub-header .hd-inner nav .language ul li {display:block;}
#header.sub-header .hd-inner nav .language ul li:before {display:none;}
#header.sub-header .hd-inner nav .language ul li a {}
#header.sub-header .hd-inner nav .language ul li a:hover {background-color:var(--main-color); color:#fff;}
#header.sub-header .hd-inner .bt-menu .i-menu:before {width:32px; height:2px; background:#000; top:50%; left:0px; margin-top:-5px; transition: transform 0.5s ease-out;}
#header.sub-header .hd-inner .bt-menu .i-menu:after {width:32px; height:2px; background:#000; top:50%; left:0px; margin-top:5px; transition: transform 0.5s ease-out;}
#header.sub-header.active .hd-inner .bt-menu .i-menu:before {width:32px; height:2px; background:#fff; top:50%; left:0px; margin-top:-5px; transition: transform 0.5s ease-out;}
#header.sub-header.active .hd-inner .bt-menu .i-menu:after {width:32px; height:2px; background:#fff; top:50%; left:0px; margin-top:5px; transition: transform 0.5s ease-out;}






/* header : mobile */
#header .hd-inner .bt-menu {width:33px; height:33px; z-index:20;}
#header .hd-inner .bt-menu .ico {width:33px; height:33px;}
#header.active .hd-inner .bt-menu .i-menu:before {width:32px; height:2px; background:#333; top:50%; left:0px; margin-top:-5px; transition: transform 0.5s ease-out;}
#header.active .hd-inner .bt-menu .i-menu:after {width:32px; height:2px; background:#333; top:50%; left:0px; margin-top:5px; transition: transform 0.5s ease-out;}
#header .hd-inner .bt-menu .i-menu:before {width:32px; height:2px; background:#fff; top:50%; left:0px; margin-top:-5px; transition: transform 0.5s ease-out;}
#header .hd-inner .bt-menu .i-menu:after {width:32px; height:2px; background:#fff; top:50%; left:0px; margin-top:5px; transition: transform 0.5s ease-out;}
#header .hd-inner .bt-menu .i-menu.m_active:before {transform:rotate(-45deg) translateY(0); transition:transform 0.3s; background:#000 !important;}
#header .hd-inner .bt-menu .i-menu.m_active:after {transform:rotate(45deg) translate(-7px, -7px); transition:transform 0.3s; background:#000 !important;}
#header .hd-inner .bt-menu .i-close:after {transform:rotate(45deg) !important; transition:transform 0.3s;}


#header .hd-inner-sub .bt-menu {width:32px; height:auto; z-index:20; margin:17px 20px 0 0;}
#header .hd-inner-sub .bt-menu .ico {width:32px; height:32px;}
#header .hd-inner-sub .bt-menu .i-menu:before {width:24px; height:2px; background:#252525; top:50%; left:0px;  box-shadow:0 8px #252525, 0 16px #252525;}
#header .hd-inner-sub .bt-menu .i-close:before, #header .hd-inner .bt-menu .i-close:after {width:30px; height:2px; background:#252525; top:14px; left:4px; transform:rotate(-45deg); transition:transform 0.3s;}
#header .hd-inner-sub .bt-menu .i-close:after {
    width: 30px;
    height: 1px;
    background: #252525;
    top: 14px;
    left: 4px;
    transform: rotate(45deg);
    transition:transform 0.3s;
}




.full-menu {display:none; position:fixed; top:0; right:0; width:50%; height:100vh; padding:4.2rem 10rem; background:#fff; color:#252525; z-index:10; border-left:0px solid #252525; font-weight:700; overflow-y:auto; box-shadow: 10px 0px 20px #000;}
.full-menu .fm-nav {height:100%; display: flex; flex-direction: column; justify-content: center;}
.full-menu .fm-nav > li {width:100%;}
.full-menu .fm-nav > li > a {color:#252525; display:block; position:relative; padding:1.5rem 0; font-size:4rem; font-family: 'Montserrat', sans-serif; font-weight:800; transition:all .3s;}
.full-menu .fm-nav>li>a:hover {
    display: block;
    position: relative;
    padding: 1.5rem 0;
    font-size: 5rem;
    font-weight: 600;
    transition: all .3s;
}
.full-menu .fm-nav > li > a:not(:last-child) {border-bottom:1px solid #999;}
.full-menu .fm-nav > li > a .ico {width:16px; height:16px; position:absolute; top:1.5rem; right:0;}

.full-menu .fm-nav > li > a .ico:after {width:2px; height:14px; top:1px; left:7px;}
.full-menu .fm-nav > li .depth-2 {display:none; width:100%; height:auto; padding:1rem 2rem; border-bottom:1px solid #999; background-color:#202020; color:#3e3e3e;}
.full-menu .fm-nav > li .depth-2 ul li a {display:inline-block; padding:.5rem 0; font-size:1rem;}
.full-menu .fm-nav > li .depth-2 ul li a:hover, .full-menu .fm-nav > li .depth-2 ul li a.active {color:#6e6e6e; text-decoration:underline;}
.full-menu .fm-nav > li > a.active .ico:after {display:none;}

.full-menu .language {width:100%; height:auto; position:relative; font-weight:500; font-size:1rem; color:#969696; font-family: 'minerva-modern',sans-serif;}
.full-menu .language .lan_select {font-size: 2rem; color:#252525; padding:0;}
.full-menu .language .lan_line {width:1px; padding:6px 0; background:#252525;}
.full-menu .language li {display:inline-block; margin-right:1.5rem; padding-bottom:1px;}
.full-menu .language li a {transition:all 0.3s; display:block;}
.full-menu .language li a:hover {
    color: #b5974b;
    transition:all .3s;
}
.full-menu .language li a.active {color:#333; font-weight:600;}

.full-menu .menu_bottom_icon {display: flex; gap: 10px;}

.full-menu .logo_bg {
    position:absolute;
    bottom:5rem;
    left:-5rem;
    background:url('../image/common/logo_big.png') bottom center no-repeat;
    width: 50%;
    height: 100%;
    background-size: contain;
    filter: saturate(50%);
    opacity: 0.15;
    z-index: -1;
}

@media screen and (max-width: 1440px) {
	div[class^="inner"] {padding:0 2rem;}
	#header {padding:2rem;}
    #footer .inner .footer_other_sec {width:100%;}
    .full-menu {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        width: 50%;
        height: 100%;
        padding: 4.2rem 5rem;
        background-color: #fff;
        color: #252525;
        z-index: 10;
        font-weight: 700;
        overflow-y: auto;
        border-left:1px solid #252525;
    }
}
@media screen and (max-width: 1280px) {
	#header .hd-inner h1 {padding:1.5rem 2rem !important;}
	#header .hd-inner nav > ul {font-size:1rem;}
	#header .hd-inner nav > ul > li {padding:0 .5%;}
	#header .hd-inner nav > ul > li > a {padding:2.563rem .5rem !important;}
	#header.sub-header .hd-inner {padding:0;}
    .full-menu {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        width: 50%;
        height: 100%;
        padding: 4.2rem 3rem;
        background-color: #fff;
        color: #252525;
        z-index: 10;
        font-weight: 700;
        overflow-y: auto;
        border-left:1px solid #252525;
    }
    #footer {
        width: 100%;
        height: auto;
        padding: 3.5rem 2.5rem;
        color: #252525;
    }
}
@media screen and (max-width: 926px) {
	body {font-size:14px;}
	#contact {padding:4rem 0;}
	div[class^="inner"] {padding:0 1.5rem;}
    .mo_view {display: inline-block;}
    .pc_view {display: none;}
    .br_mo {display:block;}
    .br_pc {display:none;}
    .deweb-full-text3 {
        background: linear-gradient(to right, #3a3a3a 50%, #fff 50%);
        background-size: 200% 100%;
        background-position: right bottom;
        -webkit-background-clip: text;
        color: transparent;
        /* 텍스트 색상을 투명하게 설정 */
        transition: all 0.7s ease;
    }
    .is-visible {background-position: left bottom;}
	#header {padding:0;}
	#header .hd-inner {height:78px; border-bottom:0px solid #cdcdcd; padding:0 1rem;}
	#header .hd-inner.active {position:absolute; top:0; left:0;}
	#header .hd-inner h1 {padding:0 !important;}
	#header .hd-inner .bt-menu {display:block; top:1.125rem; right:1.5rem; z-index: 1000000;}
    #header .hd-inner .top_menu {display: none;}
	#header .hd-inner nav {display:none;}
	#header.sub-header .hd-inner {padding:0 1rem;}
    .full-menu {display:none; position:fixed; top:0; right:0; width:80%; height:100dvh; padding:1.8rem 2rem; background-color:#fff; color:#252525; z-index:1; font-weight:700; overflow-y:auto; z-index:10000;}
    #header .hd-inner h1 a {display:block; width:50px; height:34px; background:url("../image/common/logo_1.png") no-repeat; background-size: 50px; font-size:0; transition: all 0.3s;}
    #header.active .hd-inner h1 a {width: 50px; height:34px;}
    #header.fixed .hd-inner h1 a {width: 35px; height:24px; background-size:35px;}
    #header.sub-header .hd-inner h1 a {width: 50px; height:34px;}
    #header.sub-header.fixed .hd-inner h1 a {width: 35px; height:24px; transition:all 0.3s;}
    #header.sub-header.active .hd-inner h1 a {width: 50px; height:34px;}
    #header.sub-header.fixed.active .hd-inner h1 a {width: 35px; height:24px;}
    #header .hd-inner-sub h1 {padding:1rem 1.5rem !important;}
    #header .hd-inner-sub h1 a {display:block; width:50px; height:34px; background:url("../image/common/logo_1.png") no-repeat; background-size:50px; font-size:0;}
    #header .hd-inner-sub .bt-menu {width:40px; height:40px; z-index:1000000; margin:12px 20px 0 0;}
    .full-menu .fm-nav {padding: 7em 0;}
    #footer {
        width: 100%;
        height: auto;
        padding: 1.5rem 1rem;
        color: #252525;
    }
    .full-menu .fm-nav>li>a {
        color: #252525;
        display: block;
        position: relative;
        padding: 1rem 0;
        font-size: 2rem;
        font-weight: 800;
        font-family: 'Montserrat', sans-serif;
    }
    .full-menu .fm-nav>li>a:hover {
        display: block;
        position: relative;
        padding: 1rem 0;
        font-size: 2rem;
        font-weight: 600;
        transition: all .3s;
    }
    .full-menu .language {
        width: 100%;
        height: auto;
        position: relative;
        font-weight: 500;
        font-size: 0.9rem;
        color: #969696;
    }
    .full-menu .language .lan_select {
        font-size: 1.125rem;
        color: #252525;
        padding: 0;
        margin:0 1.5rem 0 0;
    }
    .full-menu .language li {
        display: inline-block;
        margin-right: 0.5rem;
        padding-bottom: 1px;
    }
    .full-menu .language .lan_line {
        width: 1px;
        padding: 5px 0;
        background: #252525;
    }

   .pop-content .close_wrap {width: 40px; height: 40px;}
  
}

/* contact */
#contact {}
#contact .inner {position:relative;}
#contact .inner h3 {font-weight:700; font-size:1.5rem;}
#contact .inner p {color:#919892; padding-top:1rem; line-height:1.2;}
#contact .inner .add-box {width:100%; height:auto; position:relative;}
#contact .inner ul {width:80%; height:auto;}
#contact .inner ul li {display:inline-block; vertical-align:top; white-space:pre-line; line-height:1.4; margin-top:3.5rem;}
#contact .inner ul li:not(:last-child) {padding-right:10%;}
#contact .inner ul li em {display:block; font-size:12px; color:#919892; padding-bottom:.5rem;}
#contact .inner ul li a:hover {color:var(--white-color); cursor:text;}
#contact .inner .add-box > a {position:absolute; bottom:0; right:0; display:inline-block; padding:1.65rem 6%; font-size:1.125rem; background-color:var(--white-color); color:var(--black-color); text-align:center; transition:all .3s;}
#contact .inner .add-box > a:hover {background-color:var(--main-color); color:var(--white-color);}

#popupLayer {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 0px solid #000;
    background-color: white;
    padding: 20px;
    z-index: 1000;
}

#popupLayer .img img {
    max-width: 160px;
}

#popupLayer .contact_ok {
    font-size: 55px;
    font-weight: 700;
    line-height: 1.3;
    padding:2rem 0;
}

#popupLayer button {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
    padding: 10px 20px;
    background: #333;
    border: 2px solid #000;
    transition: all 0.3s;
    cursor: pointer;
    border-radius: 30px;

    &:hover {
        color: #333;
        background: #fff;
        border: 2px solid #333;
        transition: all 0.3s;
    }


}


@media screen and (max-width: 1024px) {
	#contact .inner ul {width:100%;}
	#contact .inner .add-box a {position:static; width:220px; padding:1.65rem 0; margin-top:1.25rem;}
    #footer .inner .footer_other_sec {width: 100% !important;}
}
@media screen and (max-width: 926px) {
	#contact .inner ul li:not(:last-child) {padding-right:8%;}
    #popupLayer {
        width: 90%;
    }

    #popupLayer .contact_ok {
        font-size: 32px;
        padding: 2rem 0;
    }

    #popupLayer .img img {
        max-width: 200px;
    }

    #popupLayer button {
        font-size: 18px;
        border-radius: 25px;
    }
}
@media screen and (max-width: 667px) {
	#contact {background-image:url("../image/common/bg_contact_m.jpg");}
	#contact .inner ul {display:flex; flex-wrap:wrap;}
	#contact .inner ul li {width:50%; margin:1.5rem 0 0;}
	#contact .inner .add-box a {width:100%; padding:1.5rem 0; margin-top:2.5rem; font-size:1rem;}
}

/* footer */
#footer {width: 100%; margin:0 auto; padding:0rem 0rem 2rem; border-top:1px solid #252525;}
#footer .inner {max-width:100%; margin:0 auto; display:flex; flex-direction: column; align-items:flex-start; justify-content: space-between; position:relative; padding:5rem 3rem;}
#footer .inner p {color:#595959;}
#footer .inner .contact_inner {display: flex; padding-top:0.1rem;}
#footer .inner .contact_title {line-height: 1.5rem;}
#footer .inner .contact_cont {padding:0 0 0 0rem;  font-size:15px;}
#footer .inner .contact_cont2 {padding:0 0 0 0rem;}
#footer .inner .footer_sec_01 {width:45%;}
#footer .inner .footer_other_sec {display: flex; justify-content: flex-end; width:100%;}
#footer .inner h3 {font-size:22px; padding:0 0 0 0;}
#footer .inner div {font-size:.875em; }
#footer .inner .inner_01_title {font-size: 1.375rem; padding: 2rem 0 1.5rem 0; display: flex; gap:0.5rem;}
#footer .inner .inner_01_subtxt {line-height: 1.5rem;}
#footer .inner div address {line-height:1.6;}
#footer .inner div span {display:inline-block; color:#777;}
#footer .inner div span strong {font-weight:600; color:#333;}
#footer .inner div cite {display:block; padding-top:8px;}
#footer .inner ul {position:absolute; top:0; right:1.5rem;}
#footer .inner ul li {display:inline-block; width:24px; height:24px; margin:0 1rem;}
#footer .inner ul li a {display:block; width:100%; height:100%; font-size:0; background-position:center; background-repeat:no-repeat;}
#footer .inner ul li:nth-child(1) a {background-image:url("../image/common/ico_insta.svg");}
#footer .inner ul li:nth-child(2) a {background-image:url("../image/common/ico_fb.svg");}
#footer .inner ul li:nth-child(3) a {background-image:url("../image/common/ico_blog.svg");}
#footer .ft_logo {width: 100px;}
#footer .ft_copy {font-size:14px; padding-top:10px;}
#footer .footer_copyright {padding:1rem 1.5rem;}
#footer .footer_other_sec .footer_sec_02 {width: 100%; display: flex; flex-direction: column; font-size:1rem;}
#footer .footer_other_sec .footer_sec_02 .footer_contact {display: flex; align-items: center; font-size:15px; gap:0.5rem;}
#footer .footer_other_sec .footer_sec_02 .contact_in {display: flex; flex-direction: column; font-size:15px; gap:0.5rem; color:#555;}
#footer .footer_other_sec .footer_sec_02 .contact_in strong {font-weight:600;}

#footer .footer_other_sec .footer_sec_02 .footer_company {display: flex; align-items: center; font-size:15px; gap:0.5rem;}
#footer .footer_other_sec .footer_sec_02 .footer_company strong {font-weight:600;}

@media screen and (max-width: 926px) {
	#footer .inner {
	    display: flex;
	    align-items: flex-start;
	    flex-direction: column;
	    position: relative;
	    padding: 2rem 1.5rem;
	}
	#footer .inner div {width:100%; padding-left:0; padding-top:1.5rem;}
	#footer .inner div span:nth-child(-n+2) {}
	#footer .inner div cite {padding-top:1rem;}
	#footer .inner ul li {margin:0 .5rem;}
    #footer .inner .footer_sec_01 {width: 100%;}
    #footer .inner .footer_other_sec {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        width: 100%;
        padding-bottom: 2rem;
    }
    #footer .inner .footer_other_right {width: 100%; display: flex;}
    #footer .inner .footer_sec_02 {width: 100%;}
    #footer .inner .footer_sec_03 {width: 50%;}
    #footer .inner .footer_sec_04 {width: 50%;}

    #footer .inner .inner_01_title {flex-direction: column; padding:0 0 1.5rem 10px;}
    #footer .footer_other_sec .footer_sec_02 .contact_in {padding:0 0 0 10px;}
    #footer .footer_other_sec .footer_sec_02 .footer_contact {flex-direction: column; align-items: flex-start; padding:1rem 0 0 0;}
    #footer .footer_other_sec .footer_sec_02 .contact_in .add {display: flex; gap:3px; line-height: 1.2;}
    #footer .footer_other_sec .footer_sec_02 .footer_company {padding:0;}
    #footer .ft_copy {padding-top:1.5rem;}
}
@media screen and (max-width: 667px) {
	
}

/* sub layout */
.sub-visual {width:250px; display:flex; align-items:center; justify-content:center; padding:1rem 0 0 0; z-index: 10; position: fixed; left:50%; margin-left:-125px; margin-top:-4.5rem;}
.sub-visual h2 {font-weight:500; font-size:2.5em; color:#252525; z-index: 10; font-family: 'minerva-modern',sans-serif;}
.snb-wrap {width:100%; height:auto; background-color:#f0f0f0; text-align:center; text-transform:uppercase; letter-spacing:0; font-weight:600;}
.snb-wrap p {display:none; width:100%; height:auto; background-color:var(--main-color); color:var(--white-color); border-bottom:2px solid #cdcdcd; position:relative;}
.snb-wrap p a {display:block; padding:1.25rem 1.5rem; color:var(--white-color) !important;}
.snb-wrap p .ico {width:16px; height:16px; position:absolute; top:1.25rem; right:1.5rem;}
.snb-wrap p .ico:before, .snb-wrap p .ico:after {width:14px; height:2px; background:currentColor; top:7px; left:1px;}
.snb-wrap p .ico:after {width:2px; height:14px; top:1px; left:7px;}
.snb-wrap p .i-hidden:after {display:none;}

.snb-wrap ul {width:auto; height:auto; font-size:16px;}
.snb-wrap ul li {display:inline-block;}
.snb-wrap ul li a {display:block; padding:16px 56px; color:#717274;}
.snb-wrap ul li a span {display:inline-block; border-bottom:2px solid #f0f0f0; padding-bottom:4px;}
.snb-wrap ul li .active {background-color:var(--main-color); color:var(--white-color);}

@media screen and (max-width: 926px) {
	.sub-visual {
	    width: 250px;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    padding: 1.15rem 0 0 0;
	    z-index: 10;
	    position: fixed;
	    left: 50%;
	    margin-left: -125px;
        margin-top: -4rem;
	}
    .sub-visual h2 {
        font-weight: 500;
        font-size: 2em;
        color: #252525;
        z-index: 10;
        font-family: 'minerva-modern', sans-serif;
    }
	.sub-visual h2 {padding:0 1.5rem 2rem;}

	.snb-wrap {text-align:left; position:relative; font-size:16px;}
	.snb-wrap p {display:block;}

	.snb-wrap ul {display:none; width:100%; height:auto; padding:1.5rem; position:absolute; top:3.6rem; left:0; background-color:#f0f0f0;}
	.snb-wrap ul li {display:block;}
	.snb-wrap ul li a {padding:.5rem 0;}
	.snb-wrap ul li .active {background-color:#f0f0f0; color:var(--main-color);}
	.snb-wrap ul li .active span {text-decoration:underline;}
}

/* sir popup layer */
#hd_pop {z-index:1000;position:relative;margin:0 auto;height:0}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff}
.hd_pops img {max-width:100%}
.hd_pops_con {}
.hd_pops_footer {padding:0;background:#000;color:#fff;text-align:left;position:relative}
.hd_pops_footer:after {display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button {padding:10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject {background:#000;text-align:left}
.hd_pops_footer .hd_pops_close {background:#393939;position:absolute;top:0;right:0}

/* sir page */
.pg_wrap {width:100%; height:auto; margin-top:56px; text-align:center; font-size:18px; font-weight:600;}
.pg_wrap .pg .pg_current {display:inline-block; vertical-align:middle; width:32px; height:32px; padding:8px; text-align:center;}
.pg_wrap .pg_page {display:inline-block; vertical-align:middle; width:32px; height:32px; padding:8px; text-align:center; color:#888;}
.pg_wrap .pg_page .sound_only {display:none;}
.pg_wrap .pg_page .ico {width:30px; height:30px;}
.pg_wrap .pg_next {
    font-size:0;
    padding: 8px 0 0 0;
    background: url('../image/common/page-next.png') 5px 9px no-repeat;
    background-size:8px;
    width: 15px;
}
.pg_wrap .pg_prev {
    font-size: 0;
    padding: 8px 0 0 0;
    background: url('../image/common/page-prev.png') 5px 9px no-repeat;
    background-size: 8px;
    width: 15px;
}
.pg_wrap .pg_page .ico:before {width:7px; height:7px; border:1px solid #ccc; border-right-width:0; border-bottom-width:0; transform:rotate(-45deg); top:11px; left:14px;}
.pg_wrap .pg_page.pg_current {background-color:#4d80c1; color:#fff;}
.pg_wrap .pg_page.pg_start {padding:0; font-size:0; background:url('../image/common/page-start.png') 5px 9px no-repeat; background-size:13px;}
.pg_wrap .pg_page.pg_end {padding:0; font-size:0;background:url('../image/common/page-end.png') 5px 9px no-repeat; background-size:13px;}
.pg_wrap .pg_page.pg_end .ico {transform:rotate(-180deg);}
.pg_wrap .pg_page.pg_end .ico:before {left:12px;}

@media screen and (max-width: 926px) {
	.pg_wrap .pg_page {margin:0 2px;}
}

/* bo button */
.bo-btn {width:100%; height:auto; border-top:1px solid #221e1f; color:#999; font-size:14px; display:flex; justify-content:space-between; align-items:center;}
.bo-btn li {margin-top:1rem;}
.bo-btn li a {display:block; line-height:24px; padding:1rem 0;}
.bo-btn li .i-arrow {display:inline-block; vertical-align:middle; height:1rem;}
.bo-btn li .i-arrow:before {top:3px;}
.bo-btn li .i-arrow:after {top:7px;}
.bo-btn li .prev {}
.bo-btn li .prev .i-arrow {transform:rotate(-180deg); margin-right:1rem;}
.bo-btn li .next {}
.bo-btn li .next .i-arrow {margin-left:1rem;}

/* 게시물 선택복사 선택이동 */
#copymove {}
#copymove .win_desc {text-align:center;display:block}
#copymove .tbl_wrap {margin:20px}
#copymove .win_btn {padding:0 20px 20px}
.copymove_current {float:right;background:#ff3061;padding:5px;color:#fff;border-radius:3px}
.copymove_currentbg {background:#f4f4f4}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;width:0;height:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}

/* 본문 바로가기 */
#skip_to_container a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skip_to_container a:focus, #skip_to_container a:active {width:100%;height:75px;background:#21272e;color:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}

/* ie6 이미지 너비 지정 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {display:inline-block;position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
#captcha #captcha_img {height:45px;border:0px solid #898989;vertical-align:top;padding-right:10px;margin:0}
#captcha #captcha_mp3 {background:#000; color:#fff; font-size:16px; font-weight:600; margin:0;height:40px;border:0;vertical-align:middle;overflow:hidden;cursor:pointer;padding:5px 10px;}
#captcha #captcha_reload {background:#000; margin:0 0 0 0px; color:#fff; font-size:16px; font-weight:600; padding:5px 10px;height:40px;border:0;vertical-align:middle;overflow:hidden;cursor:pointer;}
#captcha #captcha_key {margin:0 30px 0 3px;padding:0 10px 5px 0;width:130px;height:40px;border-bottom:2px dashed #333;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:0px;vertical-align:top}
#captcha #captcha_info {display:none;margin:5px 0 0;font-size:15px;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px;width:187px}
#captcha.m_captcha #captcha_img {width:160px;height:60px;border:1px solid #e9e9e9;margin-bottom:3px;margin-top:5px;display:block}
#captcha.m_captcha #captcha_reload {position:static;margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../img/captcha2.png') no-repeat 0 -40px;text-indent:-999px}
#captcha.m_captcha #captcha_reload span {display:none}
#captcha.m_captcha #captcha_key {margin:0;padding:0 5px;width:115px;height:29px;border:1px solid #b8c9c2;background:#f7f7f7;font-size:1.333em;font-weight:bold;text-align:center;line-height:29px;margin-left:3px}
#captcha.m_captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}
#captcha.m_captcha #captcha_mp3 {width:31px;height:31px;background:url('../img/captcha2.png') no-repeat 0 0 ; vertical-align:top;overflow:hidden;cursor:pointer;text-indent:-9999px;border:none}

/* ckeditor 단축키 */
.cke_sc {margin:0 0 5px;text-align:right}
.btn_cke_sc {display:inline-block;padding:0 10px;height:32px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;line-height:1.9em;vertical-align:middle;cursor:pointer}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl {margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:20%;font-weight:bold}
.cke_sc_def dd {width:30%}

/* ckeditor 태그 기본값 */
#bo_v_con ul {display:block;list-style-type:disc;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con ol {display:block;list-style-type:decimal;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con li {display:list-item}

/* 버튼 */
a.btn,.btn {line-height:35px;height:35px;padding:0 10px;text-align:center;font-weight:bold;border:0;font-size:1.4em;
-webkit-transition:background-color 0.3s ease-out;
-moz-transition:background-color 0.3s ease-out;
-o-transition:background-color 0.3s ease-out;
transition:background-color 0.3s ease-out}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}

.btn_confirm {text-align:right} /* 서식단계 진행 */

.btn_submit {border:0;background:#252525;color:#fff;cursor:pointer;border-radius:0px; font-size: 14px; font-weight:600;}
.btn_submit:hover {background:#555;}
.btn_close {border:1px solid #dcdcdc;cursor:pointer;border-radius:3px;background:#fff}
a.btn_close {text-align:center;line-height:50px}

a.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle;font-weight: 400; font-size: 14px;}
button.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
.btn_cancel:hover {background:#aaa}
a.btn_frmline, button.btn_frmline {display:inline-block;width:128px;padding:0 5px;height:40px;border:0;background:#434a54;border-radius:3px;color:#fff;text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
a.btn_frmline {}
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;color:#bababa;text-decoration:none;vertical-align:middle;border:0;background:transparent}
.btn_b01:hover, .btn_b01:hover {color:#000}
a.btn_b02,.btn_b02 {display:inline-block;background:#253dbe;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle}
a.btn_b02:hover, .btn_b02:hover {background:#0025eb}
a.btn_b03, .btn_b03 {display:inline-block;background:#fff;border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {background:#ebedf6}
a.btn_b04, .btn_b04 {display:inline-block;background:#fff;border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle}
a.btn_b04:hover, .btn_b04:hover {color:#333;background:#f9f9f9}
a.btn_admin,.btn_admin {display:inline-block;color:#d13f4a;text-decoration:none;vertical-align:middle} /* 관리자 전용 버튼 */
.btn_admin:hover, a.btn_admin:hover {color:#ff3746}


/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;background:#fff;border-top:1px solid #ececec;border-bottom:1px solid #ececec} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th {padding:20px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ececec;height:40px}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th, .tbl_head01 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head01 tbody th {padding:8px 0;border-bottom:1px solid #e8e8e8}
.tbl_head01 td {color:#666;padding:10px 5px;border-top:1px solid #ecf0f1;border-bottom:1px solid #ecf0f1;line-height:1.4em;word-break:break-all}
.tbl_head01 tbody tr:hover td {}
.tbl_head01 a:hover {}

.tbl_head02 {margin:0 0 10px}
.tbl_head02 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th, .tbl_head02 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff;line-height:1.4em;word-break:break-all}
.tbl_head02 a {}

/* 폼 테이블 */
.tbl_frm01 {margin:0 0 20px}
.tbl_frm01 table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_frm01 th {width:70px;padding:7px 13px;border:1px solid #e9e9e9;border-left:0;background:#f5f8f9;text-align:left}
.tbl_frm01 td {padding:7px 10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:transparent}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {border:1px solid #d0d3db;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;
-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
}
.tbl_frm01 textarea {padding:2px 2px 3px}
.frm_input {height:40px; margin: 10px 0;}

.full_input {width:100%}
.half_input {width:49.5%}
.twopart_input {width:385px;margin-right:10px}
.tbl_frm01 textarea, .write_div textarea {width:100%;height:100px}
.tbl_frm01 a {text-decoration:none}
.tbl_frm01 .frm_file {display:block;margin-bottom:5px}
.tbl_frm01 .frm_info {display:block;padding:0 0 5px;line-height:1.4em}

/*기본 리스트*/
.list_01 ul {border-top:1px solid #ececec}
.list_01 li {border-bottom:1px solid #ececec;background:#fff;padding:10px 15px;list-style:none;position:relative}
.list_01 li:nth-child(odd) {background:#f6f6f6}
.list_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover {background:#f9f9f9}
.list_01 li.empty_li {text-align:center;padding:20px 0;color:#666}

/*폼 리스트*/
.form_01 h2 {font-size:1.167em}
.form_01 li {margin-bottom:10px}
.form_01 ul:after,
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input {float:left}
.form_01 .margin_input {margin-right:1%}
.form_01 textarea {height:100px;width:100%}
.form_01 .frm_label {display:inline-block;width:130px}

/* 자료 없는 목록 */
.empty_table {padding:50px 0 !important;text-align:center}
.empty_list {padding:20px 0 !important;color:#666;text-align:center}

/* 필수입력 */
.required, textarea.required {background:#f9f9f9 url('../img/require.png') no-repeat !important; background-position:right top !important; background-size:13px !important;}

/* 테이블 항목별 정의 */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.new_win {position:relative}
.new_win .tbl_wrap {margin:0 20px}
.new_win #win_title {font-size:1.3em;height:50px;line-height:30px;padding:10px 20px;background:#fff;color:#000;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1); -moz-box-shadow:0 1px 10px rgba(0,0,0,.1); box-shadow:0 1px 10px rgba(0,0,0,.1)}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win .win_ul {margin-bottom:15px;padding:0 20px}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li {float:left;background:#fff;text-align:center;padding:0 10px;border:1px solid #d6e9ff;border-radius:30px;margin-left:5px}
.new_win .win_ul li:first-child {margin-left:0}
.new_win .win_ul li a {display:block;padding:8px 0;color:#6794d3}
.new_win .win_ul .selected {background:#3a8afd;border-color:#3a8afd;position:relative;z-index:5}
.new_win .win_ul .selected a {color:#fff;font-weight:bold}
.new_win .win_desc {position:relative;margin:10px;border-radius:5px;font-size:1em;background:#f2838f;color:#fff;line-height:50px;text-align:left;padding:0 20px}
.new_win .win_desc i {font-size:1.2em;vertical-align:baseline}
.new_win .win_desc:after {content:"";position:absolute;left:0;top:0;width:4px;height:50px;background:#da4453;border-radius:3px 0 0 3px}
.new_win .frm_info {font-size:0.92em;color:#919191}
.new_win .win_total {float:right;display:inline-block;line-height:30px;font-weight:normal;font-size:0.75em;color:#3a8afd;background:#f6f6f6;padding:0 10px;border-radius:5px}
.new_win .new_win_con {margin:20px 0;padding:20px}
.new_win .new_win_con:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .new_win_con2 {margin:20px 0}
.new_win .btn_confirm:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn {text-align:center}
.new_win .cert_btn {margin-bottom:30px;text-align:center}
.new_win .btn_close {padding:0 20px;height:45px;overflow:hidden;cursor:pointer}
.new_win .btn_submit {padding:0 20px;height:45px;font-weight:bold;font-size:1.083em}

/* 검색결과 색상 */
.sch_word {color:#fff;background:#ff005a;padding:2px 5px 3px;line-height:18px;margin:0 2px}

/* 자바스크립트 alert 대안 */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}

/* 사이드뷰 */
.sv_wrap {position:relative;font-weight:normal}
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;font-size:0.92em;background:#333; -webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2); -moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2); box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2)}
.sv_wrap .sv:before {content:"";position:absolute;top:-6px;left:15px;width:0;height:0;border-style:solid;border-width:0 6px 6px 6px;border-color:transparent transparent #333 transparent}
.sv_wrap .sv a {display:inline-block;margin:0;padding:0 10px;line-height:30px;width:100px;font-weight:normal;color:#bbb}
.sv_wrap .sv a:hover {background:#000;color:#fff}
.sv_member {color:#333}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* cheditor 이슈 */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before { -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; }




/* Popup-page ABOUT */

.about_wrap {
    width: 100%;
    height: 100%;
    background: #000;
}

#about_pop .pop-content .close_wrap .close::before {
    background: #fff;
}

#about_pop .pop-content .close_wrap .close::after {
    background: #fff;
}

.about_wrap .about_inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.about_wrap .about_inner .text_wrap {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}


.about_wrap .about_inner .text_wrap li {
    list-style: none;
    padding: 10px 0;
}

.about_wrap .about_inner .text_wrap li p {
    font-size: 120px;
    font-weight: 800;
    color: #f35626;
    line-height: 1.3;
    background-image: -webkit-linear-gradient(92deg, #f35626, #feab3a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-animation: hue 5s infinite linear;
}
@-webkit-keyframes hue {
    from {
        -webkit-filter: hue-rotate(0deg);
    }

    to {
        -webkit-filter: hue-rotate(-360deg);
    }
}



@media screen and (max-width:926px) {
    .pop-content .close_wrap {top:1.5rem; right:1.5rem;}
    .about_wrap .about_inner .text_wrap li p {font-size:55px;}
}