.main-menu {
    position: relative;
    z-index: 9;
    width: auto;
    float: right;
    font-weight: 500
}

.main-menu a {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    transition: all .3s
}

.main-menu ul,
.main-menu ul li,
.main-menu ul li a {
    position: relative;
    margin: 0;
    padding: 0
}

.main-menu ul li a {
    display: block;
    line-height: 20px;
    padding: 10px
}

.main-menu>ul>li>a {
    color: #333;
    padding: 0 12px 20px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 600
}

.main-menu>ul>li:hover>a {
    color: #F33
}

.layer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 100%;
    min-height: 100%;
    background-color: #000;
    z-index: 99;
    background-color: rgba(0, 0, 0, .8);
    -webkit-transition: transform .3s ease 0s, opacity .3s ease 0s, visibility 0s ease .3s;
    -moz-transition: transform .3s ease 0s, opacity .3s ease 0s, visibility 0s ease .3s;
    -ms-transition: transform .3s ease 0s, opacity .3s ease 0s, visibility 0s ease .3s;
    -o-transition: transform .3s ease 0s, opacity .3s ease 0s, visibility 0s ease .3s;
    transition: transform .3s ease 0s, opacity .3s ease 0s, visibility 0s ease .3s;
    opacity: 0;
    visibility: hidden
}

.layer-is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity .3s ease 0s, transform .3s ease 0s;
    -moz-transition: opacity .3s ease 0s, transform .3s ease 0s;
    -ms-transition: opacity .3s ease 0s, transform .3s ease 0s;
    -o-transition: opacity .3s ease 0s, transform .3s ease 0s;
    transition: opacity .3s ease 0s, transform .3s ease 0s
}

#close_in,
#header_menu,
.cmn-toggle-switch {
    display: none
}

@media (min-width:992px) and (max-width:1200px) {
    .main-menu>ul>li>a {
        padding: 0 5px 15px
    }
}

@media only screen and (min-width:992px) {
    .main-menu {
        width: auto
    }
    .main-menu a {
        white-space: nowrap
    }
    .main-menu ul li {
        display: inline-block
    }
    .main-menu ul li.submenu:hover>a:after,
    .main-menu ul li.submenu:hover>a:before {
        bottom: -20px;
        opacity: 0
    }
    .main-menu ul li .menu-wrapper,
    .main-menu ul ul {
        position: absolute;
        border-top: 2px solid #F33;
        z-index: 1;
        visibility: hidden;
        left: 3px;
        top: 100%;
        margin: 0;
        display: block;
        padding: 0;
        background: #fff;
        min-width: 210px;
        -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
        box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
        opacity: 0;
        -webkit-transition: all .3s ease;
        transition: all .3s ease;
        font-weight: 400
    }
    .main-menu ul li .menu-wrapper {
        padding: 10px 15px!important;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box
    }
    .main-menu ul li:hover .menu-wrapper,
    .main-menu ul li:hover>ul {
        padding: 0;
        visibility: visible;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
    .main-menu ul .menu-wrapper ul {
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        border-top: none;
        margin: 0;
        position: static;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    .main-menu ul .menu-wrapper ul:before {
        border: 0
    }
    .main-menu ul ul li {
        display: block;
        height: auto;
        padding: 0
    }
    .main-menu ul ul li a {
        font-size: 13px;
        color: #555;
        border-bottom: 1px solid #ededed;
        display: block
    }
    .main-menu ul ul li:last-child a {
        border-bottom: none
    }
    .main-menu ul ul li:hover>a {
        background-color: #f3f3f3;
        color: #F33;
        padding-left: 15px
    }
    .main-menu ul li.megamenu {
        position: static
    }
    .main-menu ul li.megamenu .menu-wrapper {
        width: 1140px;
        float: left;
        left: auto;
        right: 0
    }
    .main-menu ul li:hover.megamenu .menu-wrapper,
    .main-menu ul li:hover.megamenu .menu-wrapper ul {
        visibility: visible;
        opacity: 1
    }
    .main-menu ul .menu-wrapper h3 {
        font-size: 13px;
        text-transform: uppercase;
        border-bottom: 2px solid #ededed;
        padding-bottom: 10px;
        margin-bottom: 0
    }
    .main-menu ul ul ul {
        position: absolute;
        border-top: 0;
        z-index: 1;
        height: auto;
        left: 100%;
        top: 0;
        margin: 0;
        padding: 0;
        background: #fff;
        min-width: 190px;
        -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
        box-shadow: 0 6px 12px rgba(0, 0, 0, .175)
    }
    .main-menu ul ul:before {
        bottom: 100%;
        left: 15%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-bottom-color: #F33;
        border-width: 7px;
        margin-left: -7px
    }
    .main-menu ul ul ul:before {
        border-width: 0;
        margin-left: 0
    }
}

@media only screen and (max-width:991px) {
    #header_menu,
    .main-menu li {
        position: relative
    }
    #header_menu {
        text-align: center;
        padding: 25px 15px 10px;
        display: block
    }
    .main-menu ul li a:hover,
    a.show-submenu-mega:focus,
    a.show-submenu-mega:hover,
    a.show-submenu:focus,
    a.show-submenu:hover {
        color: #e04f67!important;
        background-color: #f3f3f3
    }
    .main-menu ul li {
        border-top: none;
        border-bottom: 1px solid #ededed;
        color: #fff
    }
    .main-menu ul li a {
        padding: 10px 15px!important
    }
    .main-menu h3 {
        font-size: 12px;
        line-height: 14px;
        margin: 0;
        padding: 0 0 15px 15px;
        color: #333;
        text-transform: uppercase
    }
    .megamenu .menu-wrapper>div {
        padding: 0
    }
    .main-menu a,
    .main-menu li {
        display: block;
        color: #333!important
    }
    .main-menu a:hover {
        color: #F33!important
    }
    .main-menu ul>li {
        padding-bottom: 0
    }
    .main-menu ul>li i {
        float: right
    }
    .main-menu ul li.submenu ul {
        font-size: 13px;
        border-left: 1px solid #ededed;
        margin: 0 0 15px 25px
    }
    .main-menu ul li.submenu ul li {
        font-size: 13px;
        border: 0;
        font-weight: 400
    }
    .main-menu ul li.submenu ul ul {
        border-left: none;
        margin: 0 0 0 15px
    }
    .main-menu {
        overflow: auto;
        transform: translateX(-105%);
        top: 0;
        left: 0;
        bottom: 0;
        width: 55%;
        height: 100%;
        position: fixed;
        background-color: #fff;
        z-index: 999999;
        -webkit-box-shadow: 1px 0 5px 0 rgba(50, 50, 50, .55);
        -moz-box-shadow: 1px 0 5px 0 rgba(50, 50, 50, .55);
        box-shadow: 1px 0 5px 0 rgba(50, 50, 50, .55);
        -webkit-transition: all .5s cubic-bezier(.77, 0, .175, 1);
        -moz-transition: all .5s cubic-bezier(.77, 0, .175, 1);
        -ms-transition: all .5s cubic-bezier(.77, 0, .175, 1);
        -o-transition: all .5s cubic-bezier(.77, 0, .175, 1);
        transition: all .5s cubic-bezier(.77, 0, .175, 1)
    }
    .main-menu.show {
        transform: translateX(0)
    }
    .main-menu .show-submenu+ul,
    a.show-submenu-mega+.menu-wrapper {
        display: none;
        visibility: hidden
    }
    .main-menu a.show-submenu+ul.show_normal,
    a.show-submenu-mega+.menu-wrapper.show_mega {
        display: block;
        visibility: visible
    }
    .cmn-toggle-switch {
        display: block;
        overflow: visible;
        position: absolute;
        top: 0;
        right: 20px;
        margin: 0;
        padding: 0;
        width: 30px;
        height: 30px;
        font-size: 0;
        text-indent: -9999px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        box-shadow: none;
        border: none;
        cursor: pointer
    }
    .cmn-toggle-switch:focus {
        outline: 0
    }
    .cmn-toggle-switch span {
        display: block;
        position: absolute;
        top: 10px;
        left: 0;
        right: 0;
        height: 2px;
        background: #555
    }
    .cmn-toggle-switch span::after,
    .cmn-toggle-switch span::before {
        position: absolute;
        display: block;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #555;
        content: ""
    }
    .sticky .cmn-toggle-switch span,
    .sticky .cmn-toggle-switch span::after,
    .sticky .cmn-toggle-switch span::before {
        background-color: #555
    }
    .cmn-toggle-switch span::before {
        top: -10px
    }
    .cmn-toggle-switch span::after {
        bottom: -10px
    }
    .cmn-toggle-switch__htx span::after,
    .cmn-toggle-switch__htx span::before {
        -webkit-transition-duration: .3s, .3s;
        transition-duration: .3s, .3s;
        -webkit-transition-delay: .3s, 0;
        transition-delay: .3s, 0
    }
    .cmn-toggle-switch__htx span::before {
        -webkit-transition-property: top, -webkit-transform;
        transition-property: top, transform
    }
    .cmn-toggle-switch__htx span::after {
        -webkit-transition-property: bottom, -webkit-transform;
        transition-property: bottom, transform
    }
    .cmn-toggle-switch__htx.active span {
        background: 0 0!important
    }
    .cmn-toggle-switch__htx.active span::before {
        top: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
    .cmn-toggle-switch__htx.active span::after {
        bottom: 0;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .cmn-toggle-switch__htx.active span::after,
    .cmn-toggle-switch__htx.active span::before {
        -webkit-transition-delay: 0, .3s;
        transition-delay: 0, .3s
    }
}

@media only screen and (max-width:480px) {
    .main-menu {
        width: 100%
    }
    a#close_in {
        display: block;
        position: absolute;
        right: 15px;
        top: 10px;
        width: 20px;
        height: 20px
    }
    #close_in i {
        color: #555!important;
        font-size: 16px
    }
}