/*
Theme Name: theme-garamwelfare
Theme URI: -
Author: youngsun
Author URI: -
Description: theme-garamwelfare
Version:1.0
*/

.hidden { 
    overflow: hidden !important; 
    height:100vh !important; 
    height: calc(var(--vh, 1vh) * 100) !important;
    position: fixed !important;
}

.header_wrap{
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9;
}

.header_wrap.on{
    position: relative;
}

.header_area{
    position: relative;
    background-color: transparent;
    width: 1500px;
    height: 120px;
    margin: 0 auto;
}

.header_area h1{
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.header_area h1 a{
    width: 180px;
}

.header_area h1 a img{
    width: 100%;
}

.m_menu_area{
    display: none;
}

#header #nav{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

#header nav a {
    position: relative;
}

#header nav > ul > li{
    text-align: center;
    position: relative;
    display: inline-block;
    box-sizing: border-box;
}

#header nav > ul > li > a {
    position: relative;
    height: 120px;
    line-height: 120px;
    padding: 0 40px;
    font-weight: bold;
    display: block;
    color:#222;
    font-size: 17px;
}

#header nav > ul > li:hover > a,
#header nav > ul > li > a:hover,
#header nav > ul > li > a:focus{
    color: #E60012;
    font-weight: 600;
}

#header nav > ul > li > a + ul {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 120%;
    opacity: 0;
    z-index: 10;
    visibility: hidden;
}

#header nav > ul > li > a::before,
#header nav > ul > li > a + ul,
#header nav::before {
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

#header nav > ul > li > a::before {
    content: " ";
    display: block;
    position: absolute;
    right: 44px;
    bottom: 0;
    left: 44px;
    height: 2px;
    background: #E60012;
    -moz-transform: scaleX(0);
    -webkit-transform: scaleX(0);
    -o-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    transform-origin: top right;
}

#header nav > ul > li:hover > a::before,
#header nav > ul > li:focus > a::before {
    -moz-transform: scaleX(1);
    -webkit-transform: scaleX(1);
    -o-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    transform-origin: top left;
}

#header nav > ul > li > a + ul {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 130%;
    opacity: 0;
    z-index: 10;
    visibility: hidden;
}

/* #header nav > ul > li:last-child > a + ul {
    left: auto;
} */

#header nav > ul > li > a + ul {
    padding: 20px 0 20px 0;
    background: #fff;
}

/* #header nav > ul > li:last-child > ul {
    padding-left: 0;
    text-align: right;
} */

#header nav > ul > li > a + ul > li a {
    padding: 10px 0;
    display: block;
    color: #222;
    font-size: 15px;
    font-weight: 600;
}

#header nav > ul > li > a + ul > li a:hover, 
#header nav > ul > li > a + ul > li a:focus{
    color: #E60012;
}


/* #header nav::before {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: block;
    width: 100%;
    content: '';
    height: 0;
    opacity: 0;
    z-index: -1;
    visibility: hidden;
    background-color: white;
}

#header nav:hover::before,
#header nav:focus::before {
    height: 206px;
    opacity: 1;
    z-index: 2;
    visibility: visible;
} */

#header nav.not-hover::before {
    height: 0;
    opacity: 0;
    z-index: -1;
    visibility: hidden;
}

#header nav ul > li:hover > ul,
#header nav ul > li:focus > ul {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0.3s;
    -o-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

#header nav ul + .btn {
    margin-left: 52px;
}

/*footer*/
.footer_wrap{
    width: 100%;
    position: relative;
    border-top: 1px solid #EBEBEB;
    background: #fff;
}

.footer_area{
    width: 1250px;
    margin: 0 auto;
    position: relative;
    padding: 50px 0;
}

.footer_logo_area{
    display: inline-block;
    vertical-align: top;
    width: 30%;
    text-align: left;
}

.footer_logo_area img{
    width: 80%;
}

.footer_text_area{
    display: inline-block;
    position: relative;
    width: 69%;
    text-align: left;   
    padding-top: 12px;
}

.footer_text_area .ftxt{
    line-height: 1.6;
    color: #222;
    font-size: 15px;
    display: inline-block;
}

.footer_text_area span{
    display: inline-block;
    padding: 0 10px;
    color: #666;
    font-size: 14px;
}

.footer_text_area .copytxt{
    display: block;
    color: #666;
    font-size: 13px;
    line-height: 1.6;
    padding-top: 20px;
}

/*media query*/
@media all and (max-width: 1600px) {
    .header_area {
        width: 95%;
    }
}

@media all and (max-width: 1400px) {
    .header_area h1 a {
        width: 230px;
        display: block;
    }

    #header nav > ul > li > a {
        padding: 0 35px;
        font-size: 16px;
    }

    #header nav > ul > li > a + ul > li a {
        font-size: 13px;
    }
}

@media all and (max-width: 1350px) {
    .footer_area{
        width: 95%;
    }
}

@media all and (max-width: 1200px) {
    #header nav > ul > li > a {
        padding: 0 32px;
        font-size: 15px;
    }
}

@media all and (max-width: 1100px) {
    #header nav > ul > li > a {
        padding: 0 28px;
        font-size: 14px;
    }
}

@media all and (max-width: 900px) {
    .footer_logo_area {
        width: 100%;
        text-align: center;
        margin-bottom: 15px;
    }

    .footer_logo_area img {
        width: 200px;
    }

    .footer_text_area {
        width: 100%;
        text-align: center;
    }

    .footer_text_area .ftxt {
        font-size: 12px;
        letter-spacing: 0px;
    }

    .footer_text_area .copytxt {
        font-size: 11px;
        letter-spacing: 0px;
    }
}

@media all and (max-width: 1000px) {
    .header_area {
        height: 85px;
    }

    #header #nav{
        display: none;
    }

    .m_menu_area{
        display: block;
    }

    .m_menubtn_area{
        position: absolute;
        top: 0;
        transform: translateY(-50%);
        right: 0;
        z-index:99998; 
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
    
    .mmenubtn{
        float: left;
        width: 26px;
        height: 32px;
        margin-left: 17px;
        box-sizing: border-box;
        padding-top: 2px;
        background: transparent;
    }
    
    .mmenubtn .line {
        display: block;
        width: 26px;
        height: 3px;
        background-color: #000;
        margin: 5px auto;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
    
    .gnb-overlay-bg-m{
        display:none;
        position:fixed;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background:rgba(0,0,0,0.5);
        z-index:9998;
    }	
    
    #gnbM{ 
        display:block; 
        position:fixed; 
        top:0px; 
        right:-82%;
        width:80%; 
        height:100%;  
        max-width:280px; 
        background-color:#fff; 
        z-index:9999; 
        transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715); 
        -webkit-transition:all 0.3s cubic-bezier(0.47, 0, 0.745, 0.715);  
        visibility:hidden;
    }
    
    #gnbM.open{
        right:0px; 
        visibility:visible;
    }
    
    .gnb-navigation-wrapper{
        position:relative;
        height:100%;
        box-sizing:border-box;
        padding-top:80px;
        overflow-y:auto;
    }
    
    .header-util-menu-box + .gnb-navigation-wrapper{
        padding-top:0;
    }
    
    #navigation > li{
        border-bottom:1px solid #e7e7e7;
    }
    
    #navigation > li:first-child{
        border-top:1px solid #e7e7e7;
    }
    
    #navigation > li > a {
        position:relative;
        display:block;
        padding:15px;
        color:#000;
        font-size:20px;
        font-weight:500;
    }
    
    #navigation > li.active > a{
        color:#009944;
        font-weight: bold;
    }
    
    #navigation > li .gnb-2dep{
        display:none;
        padding:15px 0;
        background-color:#f2f2f2;
    }
    
    #navigation > li .gnb-2dep li{
        height:auto !important;
    }
    
    #navigation > li .gnb-2dep li > a{
        display:block;
        color:#3c3c3c;
        font-size:14px;
        padding:12px 12px;
    }
    
    #gnbM.gnb-style-full{ 
        top:-100%; 
        right:0;
        width:100%; 
        height:100%;  
        max-width:none; 
    }
    
    #gnbM.gnb-style-full.open{
        top:0px; 
    }
    
    .gnb-style-full .gnb-navigation-wrapper{
        height:auto; 
        width:100%;
        position:absolute;
        top:0px;
        bottom:0px;
        left:0;
        padding-top:0;
    }
    
    .gnb-style-full .header-util-menu-box + .gnb-navigation-wrapper{
        top:65px;
    }
    
    .gnb-style-full-member .gnb-navigation-wrapper{
        bottom:95px;
    }
    
    .gnb-style-full .gnb-navigation-inner{
        display:table;
        width:100%;
        height:100%;
    }
    
    .gnb-style-full #navigation{
        display:table-cell;
        vertical-align:middle;
    }
    
    .gnb-style-full #navigation > li{
        text-align:center; border:0; 
        opacity:0;filter:Alpha(opacity=0); 
        -webkit-transform:translateY(-20px);
        transform:translateY(-20px);
        -webkit-transition:all 0s 0s;
        transition:all 0s 0s;
        margin-bottom: 15px;
    }
    
    .gnb-style-full #navigation > li:first-child {
        border:0;
    }
    
    .gnb-style-full.open #navigation > li{
        opacity:1.0;filter:Alpha(opacity=100); 
        -webkit-transform:translateY(0px); 
        transform:translateY(0px); 
        -webkit-transition:transform 0.8s, opacity 0.8s;
        transition:transform 0.8s, opacity 0.8s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(1){
        -webkit-transition-delay: 0.3s;
        transition-delay:0.3s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(2){
        -webkit-transition-delay: 0.4s;
        transition-delay:0.4s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(3){
        -webkit-transition-delay: 0.6s;
        transition-delay:0.6s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(4){
        -webkit-transition-delay: 0.7s;
        transition-delay:0.7s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(5){
        -webkit-transition-delay: 0.9s;
        transition-delay:0.9s;
    }
    
    .gnb-style-full.open #navigation > li:nth-child(6){
        -webkit-transition-delay: 0.9s;
        transition-delay:0.9s;
    }
    
    .mmenubtn{
        display:block;
        position:fixed;
        top:27px;
        right:0;
        z-index:10000; 
        height:30px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
    }
    
    .mmenubtn.active .line{
        background-color:#000;
    }
    
    .mmenubtn.active .line:nth-child(2){
        opacity: 0;
    }
    
    .mmenubtn.active .line:nth-child(1){
        -webkit-transform: translateY(6px) translateX(-3px) rotate(45deg);
        transform: translateY(6px) translateX(-3px) rotate(45deg);
    }
    
    .mmenubtn.active .line:nth-child(3){
        -webkit-transform: translateY(-10px) translateX(-3px) rotate(-45deg);
        transform: translateY(-10px) translateX(-3px) rotate(-45deg);
    }
}

@media all and (max-width: 550px) {
    .header_area h1 a {
        width: 175px;
    }
}


@media all and (max-width: 479px) {
    
}