@charset "utf-8";

main section:not(.sec1) .inner  {
    max-width: 1280px;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
}

main section.sec2 .inner    {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 50px;
    padding-top: min(3.9683vw, 60px);
    padding-bottom: min(5.2910vw, 80px);
}

main section.sec2 .inner .col.flex  {
    align-items: center;
    gap: 40px;
}    

main section.sec2 .inner .col.flex > div  {
    width: calc((100% - 40px) / 2);
}

main section.sec2 .inner .col.flex:nth-of-type(2n)  {
    flex-direction: row-reverse;
}

main section.sec2 .inner .titlearea    {
    text-align: left;
}

.sub main section   {
    max-width: none;
}

main section.sec3   {
    display: flex;
    flex-direction: column;
    gap: min(3.3069vw, 50px);
    padding-bottom: min(8.26vw, 125px);
}

main section.sideimglayout .sideimg_item    {
    height: 500px;
}

main section.sec3 .sideimg_item:nth-of-type(1) .inner  .imgarea .icon    {
    width: min(5.15vw,78px);
    left: min(0.5952vw, 9px);
    bottom: min(0.5952vw, 9px);
}

main section.sec3 .sideimg_item:nth-of-type(2) .inner  .imgarea .icon    {
    width: min(11.37vw,172px);
    left: auto;
    right: min(0.5952vw, 9px);
    bottom: max(-3.505vw, -52px);
}

main section.sec3 .sideimg_item:nth-of-type(3) .inner  .imgarea .icon    {
    width: min(10.85vw,164px);
    left: min(0.5952vw, 9px);
    bottom: 0;
}

main section.sec3 .sideimg_item:nth-of-type(5) .inner  .imgarea .icon    {
    width: min(11.5vw,174px);
    left: min(0.5952vw, 9px);
    bottom: min(0.5952vw, 9px);
}

main section.sec3 .sideimg_item .inner:after  {
    content: "";
    background-color: #DFF1FF;
    border: 5px solid #FFF;
    border-left: 0;
    height: 500px;
    position: absolute;
    top: 0;
    left:  calc((100% - 100vw) / 2);
    right: auto;
    width: calc(76.656% + (100vw - 100%) / 2);
    z-index: 1;
    border-radius: 0 250px 250px 0;
}

main section.sec3 .sideimg_item:nth-of-type(2n) .inner:after  {
    left: auto;
    right:  calc((100% - 100vw) / 2);
    border-radius: 250px 0 0 250px;
    border-right: 0;
}

main section.sec4   {
    background-image: url(/assets_work/common/images/separator_bg.webp);
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: center top;
    aspect-ratio: 48/25;
    display: flex;
    justify-content: center;
    align-items: center;
}

main section.sec4 img   {
    width: 100%;
}

main section.sec5 .inner .sec5_item1    {
    background-image: url(/assets_work/work/images/sec5_img1.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right 6.4% center;
}

main section.sec5 .inner .sec5_item1 .content {
    max-width: 600px;
    height: min(29.76vw,450px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

main section.sec5 .inner .sec5_item1 .titlearea {
    text-align: left;
}

main section.sec5 .inner .sec5_item2    {
    width: 100%;
    background-color: #fff;
    border: 2.48px solid #0761A2;
    border-radius: min(1.6534vw, 25px);
    align-items: stretch;
    gap: min(1.9841vw, 30px);
}

main section.sec5 .inner .sec5_item2 .titlearea {
    background: linear-gradient(180deg, #0561A1 0%, #1E7BC0 100%);
    border: 3.5px solid white;
    border-radius: min(1.6534vw, 25px) 0 0  min(1.6534vw, 25px);
    width: 19.5%;
    justify-content: center;
    height: min(11.5vw,174px);
}

main section.sec5 .inner .sec5_item2 .titlearea * {
    color: white !important;
}

main section.sec5 .inner .sec5_item3    {
    background-image: url(/assets_work/work/images/sec5_img2.webp);
    background-size: 29% auto;
    background-repeat: no-repeat;
    background-position: left top;
}

main section.sec5 .inner .sec5_item3 .content   {
    padding-left: 32%;
}

@media screen and (max-width: 834px)    {

    main section.sec2 .inner .col.flex,
    main section.sec2 .inner .col.flex:nth-of-type(2n)  {
        flex-direction: column;
        gap: 5vw;
    }
    
    main section.sec2 .inner .col.flex > div  {
        width: 100%;
    }
    
    main section.sec3   {
        gap: 42.5vw;
        margin-bottom: 42.5vw;
    }

    main section.sec3 .sideimg_item .inner:after    {
        height: 175vw !important;
        width: 87.5vw !important;
        border-radius: 0 87.5vw 87.5vw 0 !important;
        top: 50%;
        transform: translateY(-50%);
    }

    main section.sec3 .sideimg_item:nth-of-type(2n) .inner:after    {
        border-radius: 87.5vw 0 0 87.5vw !important;
    }
    

    main section.sideimglayout .sideimg_item .inner .flex > div.imgarea img:not(.icon)  {
        width: 56.25vw;
    }
    
    main section.sideimglayout .sideimg_item .inner .infoarea .titlearea    {
        flex-direction: row !important;
        gap: 5vw;
    }
    
    main section.sideimglayout .sideimg_item .inner .imgarea    {
        display: flex;
    }

    main section.sideimglayout .sideimg_item:nth-of-type(2n) .inner .imgarea    {
        display: flex;
        justify-content: flex-end;
    }

    main section.sec3 .sideimg_item:nth-of-type(1) .inner .imgarea .icon    {
        left: 1vw;
        bottom: 1vw;
        width: 14.625vw;
    }

    main section.sec3 .sideimg_item:nth-of-type(2) .inner .imgarea .icon    {
        right: 1vw;
        bottom: -14vw;
        width: 32.5vw;
    }

    main section.sec3 .sideimg_item:nth-of-type(3) .inner .imgarea .icon    {
        left: 1vw;
        bottom: -1vw;
        width: 30.625vw;
    }

    main section.sec3 .sideimg_item:nth-of-type(5) .inner .imgarea .icon    {
        left: 12vw;
        bottom: 1vw;
        width: 31.5vw;
    }
    main section.sideimglayout .sideimg_item .inner .infoarea .circle_button    {
        bottom: -7.5vw;
        z-index: 5;
    }
    main section.sideimglayout .sideimg_item .inner .infoarea .circle_button,
    main section.sideimglayout .sideimg_item .inner .infoarea .circle_button a    {
        width: 100%;
        height: 12.5vw;
    }
    
    main section.sideimglayout .sideimg_item .inner .infoarea .circle_button a  {
        border-radius: 6.25vw;
    }

    main section.sec4   {
        overflow-y: clip;
        aspect-ratio: none;
    }
    main section.sec4 img   {
        max-width: none;
        width: auto;
        height: 60vw;
        margin: 20vw 0;
    }
    
    main section.sec5 .inner .sec5_item1 .content   {
        height: auto;
    }
    
    main section.sec5 .inner .sec5_item1    {
        background-size: 31.25vw auto;
        background-position: right top;
    }
    
    main section.sec5 .inner .sec5_item2    {
        flex-direction: column;
        border-radius: 6.2vw;
    }
    
    main section.sec5 .inner .sec5_item2 > *    {
        width: 100% !important;
    }
    
    main section.sec5 .inner .sec5_item2 .titlearea {
        border-radius: 6.2vw 6.2vw 0 0;
        height: 24vw;
    }
    
    main section.sec5 .inner .sec5_item2 ol {
        padding: 5vw;
    }
    
        
    main section.sec5 .inner .sec5_item3 .content h3  {
      line-height: 1.4;
      padding-left: 35%;
    }
    
    main section.sec5 .inner .sec5_item3  {
      background-size: 31.25% auto;
    }
    
    main section.sec5 .inner .sec5_item3 .content {
      padding-left: 0;
    }

}
