/*root styles*/
:root{
    font:normal normal normal 16px/1 '微软雅黑','Microsoft YaHei Bold',sans-serif;
}
html,body{
    width:100%;
    height:100%;
    color:#323232;
}
*,*::before,*::after{box-sizing: border-box;margin:0;padding:0;}
a{text-decoration: none;color:#323232;}
a[role=button]{
    background: linear-gradient(to right,#FFA900,#FFA700);
    display: flex;
    align-items: center;
    justify-content: center;
    min-width:700px;
    height:60px;
    border-radius: 30px;
    font-size:30px;
    line-height: 60px;
    font-weight: 700;
    text-align: center;
    padding:0 140px;
    color:#FFFFFF;
    transition: all .25s ease-in;
}
a[role=button]:hover{
    box-shadow: 0 5px 10px rgba(215, 140, 10, 0.35);
    transform:translateY(-5px);
    cursor: pointer;
}
dl,ul,ol{list-style:none;margin:0;padding:0;}
/*header style*/
body > header {
    background:#FFFFFF;
    position: fixed;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    top:0;
    left:0;
    width:100%;
    height: 80px;
    z-index:999999;
    padding:0 calc((100% - 1200px)/2);
    box-shadow: 0 5px 10px rgba(200,200,200,.35);
}
body > header img{
    height:40px;
    cursor: pointer;
}
body > header > nav{
    display: flex;
    justify-content: space-between;
    width: 500px;
    padding:0 50px;
}
nav[role=navigation] > a{
    position:relative;
    font-size:20px;
    letter-spacing: 1px;
}
nav[role=navigation] > a:hover{
    color:#0780FE;
}
nav[role=navigation] > a::after{
    content: "";
    background-color: #0780FE;
    position: absolute;
    left:50%;
    transform:translateX(-50%);
    bottom:-10px;
    width:0;
    height:3px;
    border-radius:2px;
    transition: all .2s ease-in;
}
nav[role=navigation] > a:hover::after,nav[role=navigation] > a:active::after{
    width:100%;
}
body > header > code{
    display: flex;
    align-items: center;
    height:30px;
    color:#0780FE;
    font: normal bold 26px/35px Alibaba-PuHuiTi-B, Alibaba-PuHuiTi,Arial, serif;
}
body > header > code > img{
    height:36px;
}
/* data-module styles*/
section[data-module]{
    display: flex;
    width:100%;
    min-width: 1200px;
    padding:60px calc(50% - 600px);
    flex-direction: column;
    align-items: center;
}
h2[role=heading]{
    background:url(../images/heading-bg.png) no-repeat top center/60px 30px;
    font-size:42px;
    color:#383838;
    width: 100%;
    height: 105px;
    padding-top:45px;
    text-align: center;
    margin-bottom:60px;
}
/*banner style*/
body > section[data-module=banner]{
    background:url(../images/banner.png) no-repeat center,
    linear-gradient(#493ce2,#878bef);
    justify-content: center;
    margin-top:80px;
    padding:0;
    height:660px;
    overflow:hidden;
}
section[data-module=banner] > img{
    height: 100%;
    object-position: center;
}
/* module note style*/
section[data-module=note]{
    background: rgba(255,255,255,.25);
    position: relative;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: 80px;
    padding:0 calc(50% - 510px);
    font-size:24px;
    margin-top:-80px;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}
section[data-module=note] > time::before{
    background: linear-gradient(to right,#FEA83B,#FFC275);
    display: inline-block;
    content:"开课时间";
    width: 148px;
    height: 45px;
    line-height:45px;
    border-radius: 5px;
    padding-left:32px;
    margin-right:20px;
    color:#FFFFFF;
}
section[data-module=note] > button{
    background: #FF5C44;
    width: 200px;
    height: 50px;
    line-height: 45px;
    border-radius: 5px;
    border:0;
    font-size:24px;
    color:#FFFFFF;
    outline:none;
    cursor: pointer;
}

/* module scenes */
section[data-module=scenes] > ul{
    background:url(../images/scenes.png) no-repeat left center/336px 340px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    width:1025px;
    height: 340px;
    counter-reset: number;
}
section[data-module=scenes] > ul > li::before{
    counter-increment: number;
    content:"0"counter(number);
    height: 100%;
    min-width: 80px;
    line-height: 60px;
    text-align: center;
    margin-right:20px;
    font-size:30px;
    color:#FF4F4E;
    border-right: 5px solid currentColor;
}
section[data-module=scenes] > ul > li:nth-of-type(2)::before{
    color:#FF9E1A;
}
section[data-module=scenes] > ul > li:nth-of-type(3)::before{
    color:#4F5AFF;
}
section[data-module=scenes] > ul > li:nth-of-type(4)::before{
    color:#00BBD2;
}
section[data-module=scenes] > ul > li{
    display: flex;
    align-items: center;
    font-size:20px;
    line-height: 30px;
    width: 650px;
    height: 60px;
}

/* module structure styles */
section[data-module=structure]{
    background:#F7F7FE;
}
section[data-module=structure] > ul{
    display: flex;
    justify-content: space-between;
    width: 1160px;
    counter-reset: number;
}
section[data-module=structure] > ul > li::before{
    background:url(../images/structure-item.png) no-repeat center/50px 61px;
    display: block;
    position: absolute;
    left:-15px;
    counter-increment: number;
    content:"0"counter(number);
    width: 50px;
    height: 61px;
    font-size:20px;
    padding:15px 12px 0 12px;
    color:#FFFFFF;
}
section[data-module=structure] > ul > li{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    position: relative;
    width: 260px;
    height: 310px;
    font-size:18px;
    padding-top:40px;
    box-shadow: 0 0 55px 0 rgba(0,0,0,0.1);
    border-radius: 15px;
}
section[data-module=structure] > ul > li > h3{
    background: #6B63C3;
    width: 218px;
    height: 50px;
    line-height: 50px;
    font-weight: normal;
    color:#FFFFFF;
    text-align: center;
    border-radius: 10px 0 0 10px;
}
section[data-module=structure] > ul > li > p{
    width: 100%;
    padding:20px;
    line-height:32px;
}

/* module advantage styles */
section[data-module=advantage] > div{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: space-between;
    width: 1180px;
    height: 330px;
}
section[data-module=advantage] > div > figure{
    position: relative;
    width: 574px;
    height: 144px;
    padding:6px 0 0 72px;
}
section[data-module=advantage] > div > figure > img{
    position: absolute;
    top:0;
    left:0;
    width: 144px;
    height: 144px;
}
section[data-module=advantage] > div > figure > figcaption{
    background: #FFFFFF;
    width: 500px;
    height: 132px;
    padding:20px 20px 20px 90px;
    box-shadow: 0 0 55px rgba(0,0,0,0.1);
    border-radius: 10px;
    font-size:22px;
}
section[data-module=advantage] > div > figure > figcaption > p{
    margin-top:15px;
    font-size:16px;
    line-height: 25px;
}

/* module reason styles */
section[data-module=reason]{
    background: url(../images/reason-bg-right.png) no-repeat right calc(50% - 500px) top 50px/83px 83px,
    #F4F4F4 url(../images/reason-bg-left.png) no-repeat left calc(50% - 550px) bottom 30px/83px 83px;
}
section[data-module=reason] > ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: space-between;
    width: 1100px;
    height: 425px;
    counter-reset: number;
}
section[data-module=reason] > ul > li{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items:flex-start;
    width: 340px;
    height: 200px;
    padding:40px 0;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    border-radius: 15px;
}
section[data-module=reason] > ul > li > h4::before{
    background:linear-gradient(45deg,#9086FF,#5F53E5);
    width: 70px;
    height: 100%;
    counter-increment: number;
    content:"0"counter(number);
    line-height: 40px;
    text-align: center;
    color:#FFFFFF;
    margin-right:15px;
    border-radius:0 100px 100px 0;
}
section[data-module=reason] > ul > li > h4{
    background: #F3F3F3;
    display: flex;
    height: 40px;
    padding-right:20px;
    font-size:22px;
    line-height: 40px;
    border-radius: 0 100px 100px 0;
}
section[data-module=reason] > ul > li > p{
    padding:20px 30px;
    color:#37474F;
    line-height: 28px;
    font-size:18px;
}

/* module step styles */
section[data-module=step] > dl{
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom:60px;
}
section[data-module=step] > dl > dt{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 550px;
    height: 772px;
    counter-reset: number;
}
section[data-module=step] > dl > dt > a::before{
    background:#F4F4F4;
    display:flex;
    align-items: center;
    justify-content: center;
    width: 82px;
    height: 82px;
    margin-right: 20px;
    border-radius: 82px;
    font-size:32px;
    counter-increment: number;
    content:counter(number);
}
section[data-module=step] > dl > dt > a[aria-current]::before{
    color:#FF8844;
}
section[data-module=step] > dl > dt > a{
    background:linear-gradient(#9086FF,#9086FF) no-repeat left center/0 100%;
    display: flex;
    align-items: center;
    width: 100%;
    height: 110px;
    border-radius: 110px;
    padding:15px;
    font-size:28px;
    white-space: nowrap;
    color:#666666;
    cursor: pointer;
    transition:all .25s ease-out;
}
section[data-module=step] > dl > dt > a[aria-current]{
    background-size:100% 100%;
    color:#FFFFFF;
}
section[data-module=step] > dl > dd{
    background:url(../images/step-bg.png) no-repeat top center/580px 772px;
    position: relative;
    width: 580px;
    height: 772px;
}
section[data-module=step] > dl > dd > ul{
    display: flex;
    flex-direction: column;
    position: absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    padding:160px 40px 0 40px;
    transition:all .25s ease-out;
    z-index: -1;
    opacity: 0;
    transform-origin: left top;
    transform:scaleX(0);
}
section[data-module=step] > dl > dd > ul[aria-current]{
    position: relative;
    transform:scaleX(1);
    opacity: 1;
    z-index: 1;
}
section[data-module=step] > dl > dd > ul > li{
    background:#CBFCFE url(../images/step-item.png) no-repeat left 18px top 20px/16px 16px;
    padding:20px 20px 20px 50px;
    border-radius:15px;
    margin-bottom:40px;
    width: 100%;
}
section[data-module=step] > dl > dd > ul[data-column]{
    padding-top:50px;
}
section[data-module=step] > dl > dd > ul[data-column] > li{
    width: 230px;
    margin-bottom:20px;
}
section[data-module=step] > dl > dd > ul[data-column] > li:first-child{
    position: absolute;
    right: 40px;
}
section[data-module=step] > dl > dd > ul[data-column] > li:last-child{
    background:transparent;
    position: absolute;
    right: 40px;
    top:55px;
    line-height: 40px;
}

/* module worth styles */
section[data-module=worth]{
    background:#FAF7F7;
}
section[data-module=worth] > ul{
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
    align-content: space-between;
    width:1050px;
    height: 585px;
}
section[data-module=worth] > ul > li::before{
    background:linear-gradient(to right,#04EAEF,#9086FF);
    content:"";
    display: block;
    width: 130px;
    height: 8px;
    border-radius:0 0 8px 8px;
}
section[data-module=worth] > ul > li{
    background: #FFFFFF;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 500px;
    padding:0 20px 20px 20px;
    box-shadow: 0 0 55px rgba(0,0,0,0.06);
    border-radius: 10px;
}
section[data-module=worth] > ul > li > h4{
    font-size:22px;
    padding:12px 0;
}
section[data-module=worth] > ul > li > p{
    background:#EDFFFF;
    width: 100%;
    height: 95px;
    line-height: 25px;
    padding:10px 20px;
}

/* module crowd styles */
section[data-module=crowd] > ul{
    background:url(../images/crowd-bg.png) no-repeat center/392px 392px;
    display: flex;
    flex-wrap:wrap;
    align-content: space-between;
    justify-content: space-between;
    width: 990px;
    height: 392px;
    padding:35px 0;
    margin-bottom:60px;
}
section[data-module=crowd] > ul > li{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 455px;
}
section[data-module=crowd] > ul > li:nth-of-type(odd){
    flex-direction:row-reverse;
}
section[data-module=crowd] > ul > li > h4{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 135px;
    height: 80px;
    font-size:22px;
    line-height: 26px;
    text-align: center;
    white-space: nowrap;
}
section[data-module=crowd] > ul > li > p{
    font-size:18px;
    line-height: 36px;
    width: 280px;
}

/* module course styles */
section[data-module=course] > dl{
    display: flex;
    flex-direction: column;
    width: 1060px;
}
section[data-module=course] > dl > dt{
    background:linear-gradient(#F0F0F0,#F0F0F0) no-repeat bottom 2px center/100% 2px;
    display: flex;
    justify-content: space-between;
    padding:0 160px;
    height: 45px;
}
section[data-module=course] > dl > dt > a{
    background:linear-gradient(#9086FF,#9086FF) no-repeat bottom 1px center/100% 0;;
    font-size:20px;
    height: 100%;
    line-height: 45px;
    color:#333333;
    cursor: pointer;
    transition: all .25s ease-out;
}
section[data-module=course] > dl > dt > a[aria-current]{
    background-size:100% 4px;
    color:#323232;
}
section[data-module=course] > dl > dd{
    position: absolute;
    opacity: 0;
    z-index: -1;
    transition: all .25s ease-out;
}
section[data-module=course] > dl > dd[aria-current]{
    opacity: 1;
    position: relative;
    z-index:1;
}
section[data-module=course] > dl > dd[aria-current] > dl{
    display: flex;
}
section[data-module=course] > dl > dd > dl{
    display: none;
    justify-content: space-between;
    width: 100%;
    padding-top:40px;
}
section[data-module=course] > dl > dd > dl > dt{
    display: flex;
    flex-direction: column;
    width: 345px;
}
section[data-module=course] > dl > dd > dl > dt > h4{
    font-size:22px;
    margin-bottom:22px;
}
section[data-module=course] > dl > dd > dl > dt > a{
    background:linear-gradient(to right,#C9C4FF,#FFFFFF) no-repeat left center/0 100%;
    font-size:20px;
    height: 45px;
    line-height: 45px;
    cursor: pointer;
    padding-left:25px;
    margin-bottom:5px;
    white-space: nowrap;
    transition: all .25s ease-out;
}
section[data-module=course] > dl > dd > dl > dt > a[aria-current]{
    background-size:100% 100%;
}
section[data-module=course] > dl > dd > dl > dt > a + h4{
    margin-top:20px;
}
section[data-module=course] > dl > dd > dl > dd{
    background:#FFFFFF;
    width: 675px;
    box-shadow: 0 0 55px rgba(0,0,0,0.1);
    border-radius: 20px;
    padding:50px;
    line-height: 40px;
}
section[data-module=course] > dl > dd > dl > dd > p{
    position: absolute;
    opacity: 0;
    z-index: -1;
    transform-origin:top left;
    transform:scale(0);
    transition: all .25s ease-out;
}
section[data-module=course] > dl > dd > dl > dd > p[aria-current]{
    position: relative;
    opacity: 1;
    z-index:1;
    transform:scale(1);
}

/*footer styles*/
body > footer{
    background: #323232;
    display: flex;
    justify-content: center;
    align-items: center;
    width:100%;
    color:#FFFFFF;
    font-size:14px;
    height:60px;
}
body > footer > a{
    color:#FFFFFF;
    margin:0 10px;
}

/*IE10~11 hack*/
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    section[data-module=banner] > img{
        display: none;
        opacity: 0;
    }
}