.menu{
    width: 100%;
    height: 57px;
    background-color: blue;
    font-family: britannic bold;
    font-weight: bold;
    font-size: 26px;
    display: flex;
    justify-content: center;
}
.menu ul{
    list-style: none;
    position: relative;
}
.menu ul li{
    width: 195px;
    float: left;
}
.menu a{
    padding: 15px;
    display: block;
    text-decoration: none;
    text-align: center;
    background-color: blue;
    color: yellow;
}
.menu ul ul{
    position: absolute;
    visibility: hidden;
}
.menu ul li:hover ul{
    visibility: visible;
}
.menu a:hover{
    background-color: #00FF00;
    color: #DC143C;
}
.menu ul ul li{
    float: none;
    border-bottom: solid 1px #CCC;
}
.menu ul ul li a{
    background-color: red;
}
label[for="bt_menu"]{
    padding: 1%;
    background-color: #222;
    color: #fff;
    text-align: right;
    font-size: 30px;
    cursor: pointer;
    height: auto;
}
label[for="bt_menu"], #bt_menu{
    display: none;
}
#bt_menu:checked ~ .menu{
    margin-left: 0;
}
@media all and (max-width: 950px){
    label[for="bt_menu"]{
        display: block;
    }
    #bt_menu:checked ~ .menu{
        margin-left: 0;
        height: auto;
    }
    .menu{
        display: block;
        margin-left: -100%;
        transition: all 1s;
        height: 0;
    }
    .menu ul li{
        width: 100%;
        float: none;
    }
    .menu ul ul{
        position: static;
        overflow: hidden;
        max-height: 0;
        transition: all 4s;
    }
    .menu ul li:hover ul{
        height: auto;
        max-height: 200px;
    }
}