html {
    overflow: auto !important;
}

body {
    /* padding:90px 0 0; */
    min-width: 1540px;
    position:relative;
}

.header {
    width: 100%;
    height: 90px;
    overflow: hidden;
    transition:all .5s;
    position:fixed;
    top:0;
    left:0;
    z-index: 1100;
}

.header:hover {
    height: 430px;
}

.header .bottomWrap {
    height: 275px;
    width: 100%;
    background:#dee1e3 url(../../images/common/bg_menu_image2.png) no-repeat right bottom;
    position:absolute;
    top:90px;
    left:0;
    overflow: hidden;
}

.header .bottomWrap .imageWrap { width: 23%; height: 100%; overflow: hidden; position: relative;}
.header .bottomWrap .imageWrap img {   display: block; position: relative; left: 50%; transform: translateX(-50%); width: 450px; max-width: inherit;}

.header .topWrap {
	min-width: 1320px;
    background-color:#fff;
    height: 90px;
    display:flex;
    flex-flow:row wrap;
    align-items: center;
    justify-content:space-between;
    position:relative;
    z-index: 1;
}

.header .topWrap .logo {
    height: 100%;
    display:flex;
    align-items: center;
    justify-content: center;
    padding-left:40px;
}

.header .topWrap .menu {
    display:flex;
    flex-flow:row wrap;
    height: 100%;
}

.header .topWrap .menu>li {
    position:relative;
    height: 100%;
}

.header .topWrap .menu>li>a {
    display:flex;
    height: 100%;
    align-items: center;
    padding:0 35px;
    font-size: 19px;
    color:#000000;
    font-family: 'NotoKrM';
}

/* .header .topWrap .menu>li>a:before {
    content: '';
    position: absolute;
    top:calc(100% + 2px);
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 4px;
    background-color: #a37b57;
    transition: all .5s;
}

.header .topWrap .menu>li:hover>a:before {
    width: 80px;
} */

.header .topWrap .menu .depth2 {
    position: absolute;
    top: 100%;
    padding-top:30px;
    left: 0;
    width: 100%;
    text-align: center;
    height: 275px;
    border-right:1px solid #d2d6d8;
}

.header .topWrap .menu>li:first-child .depth2 {
    border-left:1px solid #d2d6d8;
}

.header .topWrap .menu .depth2 li:not(:last-child) {
    margin-bottom: 19px;
}

.header .topWrap .menu .depth2 li a {
    color: #5a6770;
    font-size: 16px;
    font-family: 'NotoKrR';
    font-weight: 300;
    position:relative;
    transition:all .3s;
    letter-spacing: -0.1em;
}

.header .topWrap .menu .depth2 li:hover a,
.header .topWrap .menu .depth2 li.active a {
    color:#40474d;
}

.header .topWrap .menu .depth2 li a:before {
    content:'';
    width: 0;
    height: 1px;
    top:100%;
    left:50%;
    transform:translateX(-50%);
    background-color:#40474d;
    transition:all .3s;
    position:absolute;
}

.header .topWrap .menu .depth2 li:hover a:before,
.header .topWrap .menu .depth2 li.active a:before {
    width: 100%;
}

.header .topWrap .rightWrap {
    display: flex;
    height: 100%;
}

.header .topWrap .rightWrap .telBtn {
    display: flex;
    align-items: center;
    height: 100%;
    margin-right:30px;
}

.header .topWrap .rightWrap .linkBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 118px;
    background-color: #fff;
    height: 100%;
}

.footer {
    width: 100%;
    transition:all 1.2s;
	padding: 30px 0px;
    overflow: hidden;
    text-align: center;
    background-color:#5a6770;
    position:relative;
    display:flex;
    justify-content: center;
    height: auto !important;
}

.footer>div {
    height: auto !important ;
}

.footer>div img{ margin: 0px auto;}

.footer .topBtn {
    position:absolute;
    top:40px;
    right:40px;
}

.sideWrap {
    position: fixed;
    top: 0;
    right: 0;
    width: 0px;
    height: 100%;
    /* background-color: rgba(90, 103, 112, 0.8); */
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: space-between;
    padding: 140px 0;
    z-index: 1000;
}

.sideWrap .snsWrap {
    display: flex;
    flex-flow: column wrap;
    width: 60px;
    margin-left: -100px;
	z-index: 1000;
	position: relative;
}

.sideWrap .snsWrap a {
    margin-bottom: 10px;
    width: 60px;
    height: 60px;
    position:relative;
}

.sideWrap .snsWrap a img {
    position:absolute;
    top:0;
    left:0;
    transition:all .3s;
}

.sideWrap .snsWrap a:not(:hover) img:last-child,
.sideWrap .snsWrap a:hover img:first-child {
    opacity: 0;
}

.sideWrap .topBtn {
    display: block;
    width: 60px;
    margin-left: -100px;
}