*{
    /* 初始化 */
    margin: 0;
    padding: 0;
}
body{
    /* 100%窗口高度 */
    height: 100vh;
    /* 弹性布局 居中显示 */
    display: flex;
    justify-content: center;
    align-items: center;
    /* 渐变背景 */
    background: linear-gradient(to top,#e6e9f0,#eef1f5);
}
li{
    list-style: none;
}
.container{
    width: 900px;
    max-width: 100vw;
    height: 400px;
    background-color: #fff;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1),
    0 1px 3px rgba(0,0,0,0.2);
    display: flex;
    align-items: center;
}
.left-box{
    width: 25%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.left-box li{
    padding: 10px 0;
    line-height: 34px;
    color: #aaa;
    cursor: pointer;
    display: flex;
    /* 过渡效果 */
    transition: 0.2s ease-out;
}
.left-box .fa{
    font-size: 30px;
    margin-right: 15px;
    width: 34px;
    height: 34px;
    line-height: 34px;
    text-align: center;
}
/* li选中态 */
.left-box li.active{
    color: #333;
}
.left-box li.active .fa{
    color: #e74c3c;
}
.border{
    height: 288px;
    width: 1px;
    background-color: #ddd;
}
.border .line{
    width: 6px;
    height: 54px;
    background-color: #e74c3c;
    margin-left: -2px;
    margin-top: 35px;
    transition: 0.4s ease-in-out;
}
/* 分别设置各个红色小块的垂直位置 */
.border .line1{
    margin-top: 35px;
}
.border .line2{
    margin-top: 89px;
}
.border .line3{
    margin-top: 143px;
}
.border .line4{
    margin-top: 197px;
}
.right-box{
    flex: 1;
    height: 100%;
    position: relative;
}
.right-box .rb{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: #333;
    position: absolute;
    /* 默认隐藏 */
    top: -350px;
    opacity: 0;
    transition: 0.4s ease-in-out;
}
.right-box .fa{
    font-size: 64px;
}
.right-box h1{
    margin: 30px 0 40px 0;
}
.right-box p{
    padding: 0 30px;
}
/* 右侧内容区选中态 */
.right-box .rb.active{
    top: 0;
    opacity: 1;
}