:root{
    --text_color: #fff;
    --main_color1: #0984e3;
    --main_color2: #2d3436;
}
a:hover,a:focus{
    text-decoration: none;
    outline: none;
}
.vertical-tab{
    font-family: 'Roboto', sans-serif;
    display: table;
}
.vertical-tab .nav-tabs{
   display: table-cell;
   width: 28%;
   min-width: 28%;
   border: none;
   vertical-align: top;
   position: relative;
}
.vertical-tab .nav-tabs li{
   float: none;
   vertical-align: top;
}
.vertical-tab .nav-tabs li a{
    color: #f6ac06;
    background-color: #0c695f;
    font-size: 18px;
    text-align: center;
    text-transform: uppercase;
    padding: 10px 15px;
    margin: 0 0 5px 0;
    border-radius: 20px 0 0 20px;
    border: none;
    box-shadow: 0 0 10px #555 inset;
    display: block;
    overflow: hidden;
    position: relative;
    z-index: 1;
    transition: all 0.20s ease 0s;
}
.vertical-tab .nav-tabs li a:hover,
.vertical-tab .nav-tabs li.active a,
.vertical-tab .nav-tabs li.active a:hover{
    color: var(--text_color);
    background-color: var(--main_color2);
    box-shadow: 0 0 0 transparent inset;
    border: none;
}
.vertical-tab .nav-tabs li a:before,
.vertical-tab .nav-tabs li a:after{
    content: "";
    width: 25%;
    height: 100%;
    background: rgba(255,255,255,0.5);
    position: absolute;
    top: 0;
    right: 100%;
    z-index: -1;
    transition: all 0.3s ease 0s;
}
.vertical-tab .nav-tabs li a:after{
    background: var(--text_color);
    height: 15px;
    width: 15px;
    opacity: 0;
    transform: translateY(-50%) rotate(45deg);
    top: 50%;
    right: 0;
}
.vertical-tab .nav-tabs li.active a:before,
.vertical-tab .nav-tabs li a:hover:before{
    background-color: var(--text_color);
    opacity: 0;
    right: 10%;
}
.vertical-tab .nav-tabs li.active a:after,
.vertical-tab .nav-tabs li a:hover:after{
    opacity: 1;
    right: -7px;
}
.vertical-tab .tab-content{
    color: var(--text_color);
    background-color: var(--main_color2);
    font-size: 14px;
    line-height: 23px;
    letter-spacing: 1px;
    margin-top: 10px;
    padding: 10px 20px;
    border-radius: 0 20px 20px 0;
    display: table-cell;
    position: relative;
}
.vertical-tab .tab-content h3{
    color: var(--text_color);
    text-transform: uppercase;
    margin: 0 0 7px 0;
}
@media only screen and (max-width: 479px){
    .vertical-tab .nav-tabs{
        display: block;
        width: 100%;
        border-right: none;
    }
    .vertical-tab .nav-tabs li a{
        margin: 0 0 10px 0;
        border-radius: 20px 20px 0 0;
    }
    .vertical-tab .nav-tabs li a:after{
        transform: translateY(0) translateX(50%) rotate(45deg);
        top: auto;
        bottom: 8px;
        right: 50%;
        left: auto;
    }
    .vertical-tab .nav-tabs li.active a:after,
    .vertical-tab .nav-tabs li a:hover:after{
        opacity: 1;
        transform: translateY(0) translateX(50%) rotate(45deg);
        bottom: -8px;
        right: 50%;
        left: auto;
    }
    .vertical-tab .tab-content{
        display: block;
        padding: 20px 15px 5px;
        border-radius: 0 0 20px 20px;
    }
    .vertical-tab .tab-content h3{ font-size: 18px; }
}