#banner-area {
    position: absolute;
    width: 100vw;
    min-width: 1632px;
    height: 41.67vw;
    min-height: 680px;
    pointer-events: none;
    background: #000;
    z-index: 0;
    top: 0;
}

.rl-banner-other {
    min-height: 41vw;
    height: inherit;
}

.rl-banner-text {
    font-size: calc(2.875vw + 26.8px);
    line-height: 1.1;
}

.rl-banner-button {
    padding: 11px 20px;
}


.rl-banner-description {
    flex: 9;
}


.custom-flex-layout {
    display: flex;
}

/* grid basic */
.rl-grid {
    display: grid;
}

.rl-grid-align-center {
    align-items: center;
}

/* bg setting */
.rl-bg-setting {
    background-position: 40%;
    min-height: 450px;
    background-repeat: no-repeat;
    background-size: cover;
    height: 32.396vw;
}

/* custom */
.rl-bg-rootscoop {
    background-image: url(../../images/character-body-motion/MotionEditing_Rotoscope_3.jpg);
}

.rl-bg-motion-blending {
    background-image: url(../../images/character-body-motion/MotionEditing_Motion-Blending.jpg);
    background-position: 28%;
}

.rl-bg-layer-editing {
    background-image: url(../../images/character-body-motion/MotionEditing_Layer-Editing.jpg);
    background-position: 35%;
}

.rl-bg-post-mixer {
    background-image: url(../../images/character-body-motion/MotionEditing_Pose-Mixer.jpg);
    background-position: 35%;
}

.rl-bg-hik-control {
    background-image: url(../../images/character-body-motion/HIK-Control_Advanced-Control.jpg);
    background-position: 35%;
}

.rl-bg-end-effect {
    background-image: url(../../images/character-body-motion/HIK-Control_End-Effector.jpg);
    background-position: 35%;
}

.rl-bg-reach-correction {
    background-image: url(../../images/character-body-motion/Reach_Correction.jpg);
    background-position: 35%;
}

.facial-performance {
    background-image: url(../../images/character-body-motion/banner_Mocap-Devices.jpg);
    height: calc(10vw + 208px);
    background-size: cover;
    background-position: 30% 50%;
    background-repeat: no-repeat;
}

.facial-performance-text {
    height: 100%;
}

 /*----- vast-motion ------*/

.motion-banner-wrapper {
    display: flex;
}

.motion-banner-wrapper > div {
    overflow:hidden; 
    position: relative;
}

.motion-banner-wrapper > div > a > img {
    transition: all 0.3s;
}

.motion-banner-wrapper > div:hover > a > img {
    transform: scale(1.1);
}

.motion-banner-wrapper > div > a > div {
    position: absolute;
    width: 100%;
    bottom: 0;
}

.motion-banner-wrapper .space {
    width: 30px;
}

.motion-banner-wrapper button {
    margin-top: 20px;
    margin-bottom: 40px;
    border-color: #fff;
    color: #fff;
    background: transparent;
}

.motion-banner-wrapper .rl-button-default:hover,
.motion-banner-wrapper .rl-button-default:active,
.motion-banner-wrapper .rl-button-default:focus {
    color: white;
    background-color: #666666;
    border: 2px solid #666666;
}

.rl-video-footstep {
    width: 100%; height: 139px; max-width: 100%; overflow: hidden;
}

.rl-video-hik-control {
    width: 100%; height: 200px; max-width: 100%; overflow: hidden;
}

@media screen and (max-width: 1350px) {
    .rl-banner-other {
        height: 50vw;
    }
}

@media screen and (max-width: 1200px) {
    .iframe-bg-wrapper {
        right: calc(-26.041666666666668vw + 500px);
    }
}

@media screen and (max-width: 1069px) {
    .rl-banner-other {
        height: 60vw;
    }
}

@media screen and (max-width: 991px) {
    .rl-banner-other {
        height: 83vw;
    }

    .rl-banner-description {
        flex: 15;
    }
}

@media screen and (max-width: 767px) {
    #banner-area,
    .iframe-bg-wrapper {
        background-color: transparent;
    }

    .rl-banner-button {
        padding: calc(0.4464285714285714vw + 4.571428571428571px) calc(4.464285714285714vw + 25.714285714285715px);
    }

    .rl-banner-other {
        background-position: 50% 50%;
        background-image: url(../../images/3d-facial-expression/main-banner-mobile.jpg);
        height: initial;
        min-height: inherit;
    }

    .custom-flex-layout {
        flex-direction: column;
        align-items: left;
    }

    .rl-banner-mobile-centerbot {
        justify-content: center;
        align-items: flex-end;
        text-align: center;
    }

    /* bg setting */
    .rl-bg-setting {
        min-height: auto;
        height: auto;
        background-image: none;
    }

    /* custom */
    .facial-performance {
        background-image: none;
        height: auto;
    }

    .facial-performance-text {
        position: unset;
        pointer-events: unset;
    }

    /* vast motion */
    .motion-banner-wrapper {
        flex-direction: column;
     }
}


@media screen and (max-width: 480px) {
    .rl-video-footstep,
    .rl-video-hik-control {
        width: 80%;
    }
}