/*---------- section0 (start) ----------*/
.sect0 {
}

.sect0 .left {
    width: 400px;
    height: 75px;
    margin: -3px 0 0;
    padding: 0 20px 7px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border-left: 5px solid #3AB54A;
    float: left;
    font-weight: 600;
    font-size: 60px;
    color: #fff;
    text-shadow: 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A,
                 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A, 0 0 2px #3AB54A;
}

.sect0 .right {
    width: 800px;
    float: right;
    text-align: right;
}

.sect0 .right .pattern {
    width: 100%;
    height: 18px;
    background: url(../img/storyOpenFactory/pattern.png);
    background-size: contain;
}

.sect0 .right .menuSet {
    margin: 20px 0 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.sect0 .right .menuSet a {
    padding: 2px 25px 4px;
    box-sizing: border-box;
    border-radius: 30px;
    border: 1px solid #3AB54A;
    text-align: center;
    font-weight: 400;
    /* font-size: 16px; */
    color: #303030;
}

.sect0 .right .menuSet a:hover {
    border: 1px solid #EF4C23;
    background: #EF4C23;
    color: #fff;
}

.sect0 .right .menuSet a.active {
    color: #fff;
    background: #3AB54A;
}

.sect0 .right .menuSet a.active:hover {
    border: 1px solid #3AB54A;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect0 .left {
        width: 100%;
        height: auto;
        margin: 0 0 10px;
        padding: 0 20px;
        border-left: 5px solid #3AB54A;
        font-size: 40px;
    }

    .sect0 .right {
        width: 100%;
    }

    .sect0 .right .menuSet {
        justify-content: space-between;
        gap: 0;
    }

    .sect0 .right .menuSet a {
        flex: 0 0 49%;
        margin: 0 0 10px;
        padding: 3px 10px 5px;
    }
}
/*---------- section0 (start) ----------*/

/*---------- section1 (start) ----------*/
.sect1 {
    line-height: 1.8em;
    font-size: 18px;
}

.sect1 .preface {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect1 .preface .left {
    flex: 0 0 50%;
}

.sect1 .preface .left .title {
    margin: 0 0 20px;
    font-weight: 600;
    font-size: 36px;
    color: #3AB54A;
}

.sect1 .preface .right {
    flex: 0 0 45%;
}

.sect1 .preface .right .pic.pic1 {
    width: 100%;
    margin: 0 auto 5px;
    border-radius: 60px 0 60px 0;
    border-bottom: 20px solid #3AB54A;
    background: url(../img/storyFuture/pic_01.jpg) center center;
    background-size: cover;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect1 .preface .left {
        flex: 0 0 100%;
    }

    .sect1 .preface .left .title {
        margin: 0 0 10px;
        line-height: 1.5em;
        font-size: 28px;
    }

    .sect1 .preface .right {
        flex: 0 0 100%;
    }
}
/*---------- section1 (end) ----------*/

/*---------- section2 (start) ----------*/
.sect2 {
    line-height: 1.8em;
    font-size: 18px;
}

.sect2 .title {
    /* margin: 0 0 10px; */
    font-weight: 600;
    font-size: 24px;
    color: #EF4C23;
}

.sect2 .block {
    margin: 0 0 40px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect2 .block:last-child {
    margin: 0;
}

.sect2 .block .desp {
    flex: 0 0 100%;
}

.sect2 .block.block3 .desp {
    flex: 0 0 85%;
    order: 2;
}

.sect2 .block .desp .contGreen {
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    border: 2px solid #3AB54A;
}

.sect2 .block .desp .contOrange {
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    border: 2px solid #EF4C23;
}

.sect2 .block .desp .contGreenOrange {
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    color: #fff;
    background: #EF4C23;
}

.sect2 .block .desp .contGreenOrange > .title{
    width: 230px;
    margin: -45px 0 0 -20px;
    padding: 5px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 0 0;
    font-size: 24px;
    color: #fff;
    background: #3AB54A;
}

.sect2 .block .desp .dotdot {
    width: 45%;
    display: block;
    margin: 0 0 0 auto;
}

.sect2 .block .pattern {
    flex: 0 0 11%;
}

.sect2 .block.block3 .pattern {
    order: 1;
}

.sect2 .block .pattern .pic {
    width: 100%;    
    margin: 0 auto;
}

.sect2 .gallery {
    margin: 0 0 -20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect2 .gallery .pic {
    flex: 0 0 25%;
    margin: 80px 0;
    box-sizing: border-box;
    position: relative;
    border-radius: 60px 0 60px 0;
    background: #ccc;
}

.sect2 .gallery .pic.pic1 {    
    margin: 20px 0 0;
    border: solid 15px #EF4C23;
    border-right: none;
    background: url("../img/storyFuture/pic_02.jpg") center no-repeat;
    background-size: cover;
}

.sect2 .gallery .pic.pic2 {
    border: solid 15px #3AB54A;
    border-left: none;
    background: url("../img/storyFuture/pic_03.jpg") center no-repeat;
    background-size: cover;
}

.sect2 .gallery .pic.pic3 {
    margin: 20px 0 0;
    border: solid 15px #EF4C23;
    border-right: none;
    background: url("../img/storyFuture/pic_04.jpg") center no-repeat;
    background-size: cover;
}

.sect2 .gallery .pic.pic4 {
    border: solid 15px #3AB54A;
    border-left: none;
    background: url("../img/storyFuture/pic_05.jpg") center no-repeat;
    background-size: cover;
}

.sect2 .gallery .pic1:after,
.sect2 .gallery .pic3:after {
    content: "";
    width: 80%;
    height: 60%;
    margin: auto;
    display: block;
    position: absolute;
    top : 100%;
    left : 0;
    right: 0;
    background: url("../img/storyFuture/icon_08.png") center no-repeat, #cccccc00;
    background-size: contain;
}

.sect2 .gallery .pic2:after,
.sect2 .gallery .pic4:after {
    content: "";
    width: 80%;
    height: 60%;
    margin: auto;
    display: block;
    position: absolute;
    bottom: 100%;
    left : 0;
    right: 0;
    background: url("../img/storyFuture/icon_08.png") center no-repeat, #cccccc00;
    background-size: contain;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect2 .gallery {
        margin: -20px 0 20px !important;
    }

    .sect2 .gallery .pic {
        flex: 0 0 48% !important;
        margin: 10px 0 !important;
    }
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect2 .title {
        font-size: 28px;
    }

    .sect2 .block .desp {
        flex: 0 0 100%;
    }

    .sect2 .block .pattern {
        margin: 20px 0 0;
        display: none;
    }

    .sect2 .block.block3 .desp {
        flex: 0 0 100%;
    }

    .sect2 .gallery {
        margin: 0 0 20px;
    }

    .sect2 .gallery .pic {
        flex: 0 0 100%;
        margin: 10px 0;
    }

    .sect2 .gallery .pic1:after,
    .sect2 .gallery .pic2:after,
    .sect2 .gallery .pic3:after,
    .sect2 .gallery .pic4:after {
        width: 80%;
        height: 0%;
    }
}
/*---------- section2 (end) ----------*/

/*---------- section3 (start) ----------*/
.sect3 {
    line-height: 1.8em;
    font-size: 18px;
}

.sect3 .title {
    margin: 0 0 10px;
    font-weight: 600;
    font-size: 36px;
    color: #3AB54A;
}

.sect3 .block {
    /* margin: 0 0 20px; */
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect3 .block .gallery {
    flex: 0 0 40%;
    margin: 0 auto;
    display: block;
}

.sect3 .block .gallery img {
    width: 100%;
    margin: 0 auto 20px;
    display: block;
}

.sect3 .block .desp {
    flex: 0 0 55%;
}

.sect3 .block .desp .orangeCont {
    width: 100%;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    color: #fff;
    background: #EF4C23;
}

.sect3 .block .desp .orangeCont > .title {
    width: 180px;
    margin: -45px -40px 10px auto;
    padding: 5px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 0 0;
    font-weight: 600;
    font-size: 24px;
    color: #fff;
    background: #3AB54A;
}

.sect3 .block .desp .whiteCont {
    width: 100%;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    border: solid 1px #3AB54A;
}

.sect3 .block .desp .whiteCont > .title {
    width: 375px;
    margin: -45px -40px 10px auto;
    padding: 5px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 0 0;
    font-size: 24px;
    color: #fff;
    background: #3AB54A;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect3 .block .gallery {
        flex: 0 0 100%;
    }

    .sect3 .block .desp {
        flex: 0 0 100%;
        margin: 20px 0 0;
    }

    .sect3 .block .desp .whiteCont > .title {
        width: 300px;
        padding: 5px 30px;
        font-size: 20px;
    }
}
/*---------- section3 (end) ----------*/


/*---------- section4 (start) ----------*/
.sect4 {
    line-height: 1.8em;
    font-size: 18px;
}

.sect4 .title {
    margin: 0 0 10px;
    font-weight: 600;
    font-size: 36px;
    color: #3AB54A;
}

.sect4 .block {
    margin: 0 0 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect4 .block1 .desp {
    flex: 0 0 75%;
}

.sect4 .block1 .desp .greenCont {
    width: 100%;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    color: #fff;
    background: #3AB54A;
}

.sect4 .block1 .desp .greenCont > .title {
    width: 320px;
    margin: -45px -40px 10px auto;
    padding: 5px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 0 0;
    font-weight: 600;
    font-size: 24px;
    color: #fff;
    background: #EF4C23;
}

.sect4 .block1 .gallery {
    flex: 0 0 20%;
    margin: 0 auto;
}

.sect4 .block1 .gallery img {
    width: 100%;
    margin: 0 auto 20px;
    display: block;
    border-radius: 60px 0 60px 0;
    border-bottom: solid 20px #3AB54A;
}

.sect4 .pattern1 {
    width: 35%;
    margin: auto 0 -40px auto;
    display: block;
}

.sect4 .block2 {
    margin: 60px 0 0;
}

.sect4 .block2 .whiteCont {
    flex: 0 0 100%;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    border: solid 1px #3AB54A;
    background: #fff;
}

.sect4 .block2 .whiteCont > .title {
    width: 230px;
    margin: -45px -40px 10px 0;
    padding: 5px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 0 0;
    font-weight: 600;
    font-size: 24px;
    color: #fff;
    background: #3AB54A;
}

.sect4 .block2 .greenCont {
    flex: 0 0 48%;
    margin: 40px 0 0;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    color: #fff;
    background: #3AB54A;
}

.sect4 .block2 .greenCont > .title {
    font-weight: 600;
    font-size: 20px;
    color: #fff;
}

.sect4 .block2 .orangeCont {
    flex: 0 0 48%;
    margin: 40px 0 0;
    padding: 20px 40px;
    box-sizing: border-box;
    border-radius: 60px 0 60px 0;
    color: #fff;
    background: #EF4C23;
}

.sect4 .block2 .orangeCont > .title {
    font-weight: 600;
    font-size: 20px;
    color: #fff;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect4 .pattern1 {
        width: 100%;
        margin: auto 0;
    }

    .sect4 .block1 .desp {
        flex: 0 0 100%;
    }

    .sect4 .block1 .desp .greenCont > .title {
        width: 260px;
        padding: 5px 30px;
        font-size: 20px;
    }

    .sect4 .block1 .gallery {
        flex: 0 0 100%;
        margin: 20px auto 0;
    }

    .sect4 .block2 .greenCont {
        flex: 0 0 100%;
        margin: 20px 0 0;
    }

    .sect4 .block2 .orangeCont {
        flex: 0 0 100%;
        margin: 20px 0 0;
    }
}
/*---------- section4 (end) ----------*/


/*---------- section5 (start) ----------*/
.sect5 {
    line-height: 1.8em;
    font-size: 18px;
}

.sect5 .title {
    /* margin: 0 0 10px; */
    font-weight: 600;
    font-size: 24px;
    color: #EF4C23;
}

.sect5 .subTitle {
    font-weight: 700;
    font-size: 20px;
    color: #3AB54A;
}

.sect5 .block {
    margin: 0 0 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sect5 .block.block1 .gallery {
    flex: 0 0 48%;
}

.sect5 .block.block1 .desp {
    flex: 0 0 48%;
}

.sect5 .block .gallery img {
    width: 100%;
    margin: 0 auto;
    display: block;
    box-sizing: border-box;
}

.sect5 .block .gallery img:nth-child(1) {
    border-radius: 60px 0 60px 0;
    border-top: 15px solid #EF4C23;
    border-bottom: 15px solid #3AB54A;
}

@media screen and (min-width: 1px) and (max-width: 1200px) {
    .sect5 .title {
        font-size: 28px;
    }
    
    .sect5 .block.block1 .desp {
        flex: 0 0 100%;
        order: initial;
    }

    .sect5 .block.block1 .gallery {
        flex: 0 0 100%;
        margin: 10px 0;
        order: initial;
    }

    .sect5 .block.block1 .gallery img {
        width: 100%;        
    }
}
/*---------- section5 (end) ----------*/