.carousel, .sub-carousel {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 70px;
    width: 100%;
}
.carousel_2-wrapper{
    overflow: unset;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.carousel.carousel_2{
    margin-bottom: 0;
}
.carousel.carousel_2 .swiper-container{
    margin-left: auto;
    margin-right: auto;
    /* overflow: unset; */
    /* max-width: 14.28% !important; */
}
.carousel .swiper-container{
    display: flex;
    justify-content: center;
}
.carousel .swiper-wrapper{
    justify-self: center;
    width: auto;
    max-width: 100%;
}
.carousel .title{
    width: -webkit-calc(100% - 50px);
    width: calc(100% - 50px);
    text-align: center;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
}
.carousel__container + .link{
    margin-top: 30px;
}
.carousel__item{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    text-decoration: none;
    color: #323232;
    -webkit-transition: all .3s ease-in !important;
    -o-transition: all .3s ease-in !important;
    transition: all .3s ease-in !important;
}
.carousel__item:hover{
    text-decoration: none;
    color: #69289C;
}
.carousel__item>a span, .carousel__item span{
    font-size: 12px;
    line-height: 125%;
    font-family: 'fira500';
    text-align: center;
    margin-top: 35px;
    -webkit-transition: color .3s ease-in;
    -o-transition: color .3s ease-in;
    transition: color .3s ease-in;
    display: flex;
    justify-content: center;
}
.carousel__item img{
    -o-object-fit: contain;
       object-fit: contain;
    -webkit-transition: all .3s ease-in !important;
    -o-transition: all .3s ease-in !important;
    transition: all .3s ease-in !important;
}
.carousel_2 .carousel__item{
    /* max-width: 14.28% !important; */
    -webkit-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
}
.carousel_2 .carousel__item:not(.swiper-slide-thumb-active){
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: flex-start;
}
.carousel_2 .carousel__item.swiper-slide-thumb-active img{
    -webkit-transform: scale(1.5);
        -ms-transform: scale(1.5);
            transform: scale(1.5);
    position: relative;
    bottom: -20%;
}
.carousel__item.swiper-slide-thumb-active span{
    height: 0;
    overflow: hidden;
    margin-top: 0;
}
.carousel_2 .carousel__container{
    margin-bottom: 40px;
}
.sub-carousel{
    padding-left: 25px;
    padding-right: 23px;
}
.carousel_2-wrapper .swiper-slide{
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
}
.carousel_2-wrapper .swiper-slide:not(.swiper-slide-active) .sub-carousel__item{
   opacity: 0;
   z-index: -11;
   transition: z-index 0s ease-in .0s, opacity .3s ease-in;
}
.carousel_2-wrapper .carousel__item>a {
    text-decoration: none;
    color: #323232;
    text-align: center;
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center;
    transition: all .3s ease-in;
}
.carousel_2-wrapper .swiper-slide.swiper-slide-active .sub-carousel__item{
    z-index: 11;
    opacity: 1;
    transition: opacity .3s ease-in, z-index 0s ease-in .3s;
}
.carousel_2-wrapper .swiper-slide.swiper-slide-active>a span{
    display: none;
}
.carousel_2-wrapper .swiper-slide.swiper-slide-active>a img{
    transform: scale(1.5);
}
.sub-carousel__item{
    width: 100vw;
    margin-left: auto;
    margin-right: auto;
    padding: 30px 10px 20px 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    position: relative;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, 0%);
    background: rgba(250, 250, 250, 0.5);
    margin-top: 60px;
    color: #323232;
}
.sub-carousel__container:before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    background: #fafafa;
}
.sub-carousel__item strong{
    font-family: 'fira500';
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 18px;
    line-height: 125%;
}
.sub-carousel__item p, .sub-carousel__item span{
    font-size: 14px;
    line-height: 125%;
    font-family: 'os300';
}
.sub-carousel__item span{
    margin-bottom: 36px;
}
.sub-carousel__item p{
    margin-bottom: 48px;
}
@media screen and (min-width: 901px){
    .carousel, .sub-carousel {
        padding-left: 25px;
        padding-right: 25px;
        position: relative;
    }
    .carousel.carousel_2{
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
    }
    .carousel_2-wrapper{
        padding-left: 25px;
        padding-right: 25px;
    }
    .carousel .title{
        width: 100%;
        position: relative;
    }
    .carousel .title:before{
        content: '';
        display: block;
        width: 14vw;
        height: 14vw;
        position: absolute;
        z-index: 0;
        right: -webkit-calc(50% - 7vw);
        right: calc(50% - 7vw);
        top: -7vw;
        background: url(../../image/2021/bg3.svg) center center no-repeat;
        background-size: 100%;
    }
    .sub-carousel__container.swiper-container{
        z-index: 0;
        overflow: unset;
    }
    .carousel_bg1{
        /* background: url(../../image/2021/bg2.svg) left bottom no-repeat;
        background-size: 30vw; */
    }
    .carousel_bg2{
        /* background: url(../../image/2021/bg2.svg) 76.5vw bottom no-repeat;
        background-size: 30vw; */
    }
    .sub-carousel__item:after{
        content: '';
        display: block;
        width: 30vw;
        height: 30vw;
        position: absolute;
        z-index: 0;
        right: 12vw;
        top: -7vw;
        background: url(../../image/2021/bg2.svg) center center no-repeat;
        background-size: 100%;
    }
    .sub-carousel__item{
        margin-top: 80px;
    }
}
@media screen and (min-width: 1280px){
    .carousel_2-wrapper{
        overflow: hidden;
    }
    .carousel{
        padding-left: 122px;
        padding-right: 108px;
        padding-bottom: 120px;
    }
    .sub-carousel{
        padding-bottom: 90px;
    }
    .carousel.carousel_2{
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
    }
    .carousel_2-wrapper{
        padding-left: 122px;
        padding-right: 108px;
    }
    .carousel__item>a span, .carousel__item span{
        font-size: -webkit-calc(12px + (12 + 12 * 0.7) * ((100vw - 1280px) / 2560));
        font-size: calc(12px + (12 + 12 * 0.7) * ((100vw - 1280px) / 2560));
    }
    .carousel__wrapper{
        padding-left: 0;
    }
    .carousel .title{
        margin-bottom: 55px;
    }
    .carousel__container + .link{
        margin-top: 38px;
    }
    .carousel_2 .carousel__container{
        margin-bottom: 28px;
    }
    .sub-carousel {
        padding-left: 82px;
        padding-right: 82px;
    }
    .sub-carousel__item{
        margin-top: 120px;
        padding: 30px 31.6vw 37px;
    }
    .sub-carousel__item strong{
        font-size: -webkit-calc(24px + (24 + 24 * 0.7) * ((100vw - 1280px) / 2560));
        font-size: calc(24px + (24 + 24 * 0.7) * ((100vw - 1280px) / 2560));
    }
    .sub-carousel__item span, .sub-carousel__item p{
        font-size: -webkit-calc(12px + (12 + 12 * 0.7) * ((100vw - 1280px) / 2560));
        font-size: calc(12px + (12 + 12 * 0.7) * ((100vw - 1280px) / 2560));
    }
    .sub-carousel__item span{
        margin-bottom: 24px;
    }
    .sub-carousel__item p{
        margin-bottom: 20px;
    }
    
    .carousel_2-wrapper .swiper-slide.swiper-slide-active>a img{
        margin-top: 25%;
    }
}
@media screen and (min-width: 1920px){
    .carousel{
        padding-left: 181px;
        padding-right: 162px;
        padding-bottom: 180px;
    }
    .sub-carousel{
        padding-bottom: 135px;
    }
    .carousel.carousel_2{
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
    }
    .carousel_2-wrapper{
        padding-left: 181px;
        padding-right: 162px;
    }
    .carousel .title{
        margin-bottom: 84px;
    }
    .carousel__container + .link{
        margin-top: 67px;
    }
    .carousel_2 .carousel__container{
        margin-bottom: 45px;
    }
    .sub-carousel {
        padding-left: 123px;
        padding-right: 123px;
    }
    .sub-carousel__item{
        padding: 45px 31.6vw 55px;
        margin-top: 120px;
    }
    .sub-carousel__item strong{
        margin-bottom: 14px;
    }
    .sub-carousel__item span{
        margin-bottom: 36px;
    }
    .sub-carousel__item p{
        margin-bottom: 29px;
    }
}
@media screen and (min-width: 2560px){
    .carousel{
        padding-left: 242px;
        padding-right: 217px;
        padding-bottom: 240px;
    }
    .sub-carousel{
        padding-bottom: 181px;
    }
    .carousel.carousel_2{
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
    }
    .carousel_2-wrapper{
        padding-left: 242px;
        padding-right: 217px;
    }
    .carousel .title{
        margin-bottom: 111px;
    }
    .carousel__container + .link{
        margin-top: 90px;
    }
    .carousel_2 .carousel__container{
        margin-bottom: 60px;
    }
    .sub-carousel {
        padding-left: 165px;
        padding-right: 165px;
    }
    .sub-carousel__item{
        padding: 60px 31.6vw 74px;
        margin-top: 200px;
    }
    .sub-carousel__item strong{
        margin-bottom: 19px;
    }
    .sub-carousel__item span{
        margin-bottom: 48px;
    }
    .sub-carousel__item p{
        margin-bottom: 39px;
    }
}

@media screen and (min-width: 3000px){
    .carousel_2 .carousel__item.swiper-slide-thumb-active img{
        -webkit-transform: scale(1.25);
            -ms-transform: scale(1.25);
                transform: scale(1.25);
        bottom: -12.5%;
    }
}
@media screen and (max-width: 900px){
    .carousel_2-wrapper{
        padding-left: 10px;
        padding-right: 10px;
    }
    .carousel_2 {
        padding-bottom: 30px;
    }
    .carousel_2 .carousel__item:not(.swiper-slide-thumb-active) img{
        -webkit-transform: scale(.5);
            -ms-transform: scale(.5);
                transform: scale(.5);
        position: relative;
        bottom: -12.5%;
    }
    .carousel_2 .carousel__item.swiper-slide-thumb-active img{
        position: relative;
        -webkit-transform: scale(1.25);
            -ms-transform: scale(1.25);
                transform: scale(1.25);
        padding-right: 0;
        padding-left: 0;
        bottom: -12.5%;
    }
    .carousel{
        width: 100%;
    }
    .swiper-container.carousel__container{
        padding-left: 6px;
        padding-right: 6px;
    }
    .carousel__item>a span, .carousel__item span{
        display: none;
    }
    .sub-carousel__item .link{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;     
    }
    .sub-carousel__item .link i{
        margin-left: unset;
        margin-top: 15px;
    }
    .carousel_2-wrapper .swiper-slide:not(.swiper-slide-active)>a{
        transform: scale(.8);
    }
}

@media screen and (max-width: 600px){
    .carousel_2 .carousel__item:not(.swiper-slide-thumb-active) img{
        -webkit-transform: scale(.75);
            -ms-transform: scale(.75);
                transform: scale(.75);
        position: relative;
        bottom: -12.5%;
    }
    .carousel_2 .carousel__item.swiper-slide-thumb-active img{
        position: relative;
        -webkit-transform: scale(1.25);
            -ms-transform: scale(1.25);
                transform: scale(1.25);
        padding-right: 0;
        padding-left: 0;
        bottom: -12.5%;
    }
}