.so_banner_bg {
    .body_so_banner {
        .so_banner_btn {
            margin-top: 60px;
            border-radius: 34px;
            height: 55px;
            transition: all 0.3s ease-in-out;
            background-color: #41e596;
        }

        .so_banner_btn:hover {
            box-shadow: 0 0 10px#44ce6f;
            background-size: 200% 100%;
            background-position: right;
        }
    }
}

.so_content_3 {
    display: flex;
    gap: 40px;
    .so_box {
        .so_box_title {
            width: 100%;
            height: 60px;
            border-radius: 10px;
            font-size: 24px;
            padding-left: 25px;
            color: #ffffff;
            background: linear-gradient(90deg, #25BFB6 1%, #41E596 80%);
            position: relative;
            display: flex;
            justify-content: flex-start;
            align-items: center;
            cursor: pointer;
            transition: margin-bottom 0.15s ease;
        }

        .so_box_title:hover {  
            color: #25BFB6;
            border: 1px solid #25BFB6;
            background: #fff;
        }

        .so_box_desc {
            z-index: -1;
            position: absolute;
            color: #25BFB6;
            border: 1px solid #25BFB6;
            background: #fff;
            width: 100%;
            padding-inline: 25px;
            border-radius: 10px;
            font-size: 24px;
            height: 60px;
            overflow: hidden;
        }

        .expanded {
            height: auto;
        }
    }
}

@media (max-width: 1380px) {
    .so_banner_bg {
        height: 325px !important;

        .body_so_banner {
            .so_banner_item,
            .sp_banner_item {
                width: 500px;
                height: auto;
            }

            .so_banner_text {
                line-height: 55px;
                border-radius: 34px;
            }
        }
    }

    .so_2_content {
        .so_2_text,
        .so_3_text {
            margin-top: 5%;
            margin-bottom: 5%;

            br {
                display: none;
            }

            .so_2_title {
                color: #8bc541;
                text-align: center !important;
            }
        }

        .so_2_img {
            width: 500px;
        }
    }

    .so_3_content {
        .so_3_img {
            width: 500px;
        }
    }

    .so_4_bg {
        width: 1500px;
        height: 480px;

        .so_type_title {
            color: #8bc541;
        }

        .so_type_box {
            .box_type_1,
            .box_type_2 {
                border: none;
            }

            .box_type_main_1,
            .box_type_main_2 {
                display: none;
            }

            .detail_box_type_1,
            .detail_box_type_2 {
                display: flex;
                flex-direction: column;
                align-items: center;
                width: 400px;
                opacity: 1;
                height: 300px !important;

                .box_type_title_1,
                .box_type_title_2 {
                    margin-top: 50px;
                }

                .box_type_decs_1,
                .box_type_decs_2 {
                    font-size: 22px;
                    line-height: 24px;
                }
            }
        }
    }

    .so_bot_btn,
    .so_bot_btn_en {
        width: 50rem !important;

        h2 {
            font-size: 46px;
        }

        .apns_btn,
        .apns_btn_en {
            width: 300px;
            height: 55px;
            font-size: 34px;
        }
    }
}
@media (max-width: 1200px) {
    .so_content_2 {
        .so_2_text {
            padding-right: 5%;
            br {
                display: none;
            }
        }
    }
    .so_content_3 {
        .so_3_text {
            br {
                display: none;
            }
        }
    }
}

@media (max-width: 1024px) {
    .so_banner_bg {

        .body_so_banner {
            align-items: center;
            height: 100% !important;
            .so_banner_text {
                width: 100%;
                /* line-height: 50px;
                font-size: 36px; */
            }
        }
    }

    .so_2_content {
        .so_2_text,
        .so_3_text {
            margin-top: 5%;
            margin-bottom: 5%;

            br {
                display: none;
            }
        }

        .so_2_img {
            width: 450px;
        }
    }

    .so_3_content {
        .so_3_img {
            width: 450px;
        }
    }
    
}
@media (max-width: 995px) {
    .so_content_2 {
        display: flex;
        flex-direction: column !important;
        padding-bottom: 0 !important;
        padding-top: 40px !important;

        .so_2_text {
            width: 100% !important;
            padding: 0 !important;

            br {
                display: none;
            }
        }

        .so_2_img {
            width: 100% !important;
            padding-block: 2.5% !important;
            max-width: 400px;
        }
    }

    .so_content_3 {
        display: flex;
        flex-direction: column-reverse !important;
        align-items: center;

        .so_3_text {
            width: 100% !important;
            /* padding: 0 !important; */

            br {
                display: none;
            }
        }

        .so_3_img {
            width: 100% !important;
            max-width: 400px;
        }
    }

    .so_4_bg {
        .so_type_box {
            gap: 40px !important;

            .box_type_main_1,
            .box_type_main_2 {
                font-size: 32px !important;
                line-height: normal;
                text-align: center;
            }

            .box_type_1,
            .box_type_2 {
                width: 325px;
                height: 110px;
            }

            .detail_box_type_1,
            .detail_box_type_2 {
                width: 325px;
                height: 110px;

                .box_type_title_1,
                .box_type_title_2 {
                    font-size: 32px !important;
                    margin-top: 30px;
                }

                .box_type_decs_1,
                .box_type_decs_2 {
                    font-size: 20px;
                    line-height: 22px;
                    padding: 10%;

                    br {
                        display: none;
                    }
                }
            }
        }
    }
}

@media (max-width: 768px) {

    .so_4_bg {
        background-image: none !important;
        margin-block: 40px;
        height: 550px;

        .so_type_title {
            padding-bottom: 35px !important;
        }

        .so_type_box {
            flex-direction: column !important;
            width: 100% !important;

            .box_type_main_1,
            .box_type_main_2 {
                display: none;
            }

            .box_type_1,
            .box_type_2 {
                border: none;
                width: 100% !important;
            }

            .box_type_decs_1,
            .box_type_decs_2 {
                padding: 5% !important;
            }

            .detail_box_type_1,
            .detail_box_type_2 {
                opacity: 1;
                width: 100% !important;
                height: 210px !important;
            }

            .detail_box_type_2 {
                margin: 70px 0;
            }

            .box_type_1:hover .detail_box_type_1,
            .box_type_2:hover .detail_box_type_2 {
                height: 210px;
            }
        }
    }

    .so_bot_btn {
        flex-wrap: wrap;
        height: 8rem !important;
        padding: 20px;

        h2 {
            font-size: 38px;
            line-height: 38px;
        }

        .apns_btn {
            width: 300px;
            height: 40px;
            font-size: 28px;
            margin: 0;
        }
    }
    .so_bot_btn_en {
        flex-wrap: wrap;
        height: 8rem !important;
        padding: 15px;

        h2 {
            font-size: 38px;
            line-height: 38px;
        }

        .apns_btn_en {
            width: 130px;
            height: 40px;
            font-size: 28px;
            margin-left: 10px;
        }
    }
}