.sec1 .related > .flex.sp_column .col    {
    aspect-ratio: 1/1;
    overflow: visible !important;
}

.sec1 .balloon  {
    display: block;
    box-sizing: border-box;
    aspect-ratio: 133/50;
    background-image: url(../images/sec1_ballon.webp);
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    width: 73.21%;
    height: auto;
    position: absolute;
    top: max(-26px, -1.7196vw);
    left: min(1.3228vw, 20px);
}

.related {
    border-bottom: 1px dashed #CCCCCC;
}

.sec1 .robot.left    {
    width: 15%;
}

.sec1 .robot.right    {
    width: 18.5%;
}

.sec2 .robot.left   {
    width: 20%;
}

.sec3 .robot.left    {
    top: max(-2.6455vw,-40px);
    width: 16%;
}

@media screen and (max-width: 834px)    {
    .sub main section.separator {
        height: 52.24vw;
    }
    
    .sec1 .box_inner > .flex img   {
        width: calc((100% - 2.54vw) / 2);
    }
    
    .sec1 .robot.left    {
        width: 14.25vw;
        top: auto;
        bottom: -15vw;
    }
    
    .sec1 .robot.right   {
        width: 19vw;
        top: auto;
        bottom: -15vw;
    }
    .sec1 .related > .flex.sp_column .col    {
        border-radius: 2vw !important;
        width: 52.5vw !important;
    }
    
    .sec1 .balloon  {
        top: -4.5vw;
        padding-top: 2.3vw !important;
    }

    .sec2 .robot.left   {
        top: auto;
        bottom: -15vw;
        width: 16.25vw;
    }
    
    .sec3 .robot.left    {
        top: 0;
        left: 0;
        width: 16.25vw;
    }
    
    
}