@charset "UTF-8";
/* CSS Document */

/* PC
---------------------------------------------------------------------- */

@media (min-width: 1001px) {

    /*---------------------------------------------page-ti*/
    #page-ti .h40 {
        background: url(../../images/main_ttl_deco.svg) no-repeat bottom center;
        background-size: 320px;
        /* padding: 40px 0; */
    }

    /*背景1*/
    #page-ti .ab1 {
        position: absolute;
        left: 28px;
        bottom: -115px;
        max-width: 339px;
        width: 30vw;
        height: auto;
    }

    /*背景2*/
    #page-ti .ab2 {
        position: absolute;
        right: 0;
        bottom: -63px;
        max-width: 287px;
        width: 20vw;
        height: auto;
    }

    /*---------------------------------------------aym*/
    #team {
        margin-bottom: 122px;
        position: relative;
    }
    #team .h25p {
        margin-bottom: 52px;
        text-align: center;
    }
    #team .flex {
        justify-content: center;
        align-items: center;
    }
    #team .flex {
        /*mix-blend-mode: multiply;*/
    }
    #team .img {
        position: absolute;
        top: 0;
        right: -110px;
        /*mix-blend-mode: multiply;*/
    }
    #team .h30 {
        margin-bottom: 33px;
    }

    /*---------------------------------------------ktd*/
    #org {
        margin-bottom: 112px;
        padding: 125px 0;
        background: url(../images/bg_triangle.svg) ;
        background-size: 16px;
    }
    #org .h30 {
        text-align: center;
        margin-bottom: 53px;
    }
    #org .inner {
        position: relative;
    }
    #org .flex {
        justify-content: space-between;
        align-items: center;
        row-gap: 120px;
    }
    #org .flex li {
        position: relative;
        background: url(../images/org_bgtxt.png) center no-repeat;
        background-size: cover;
        width: 46.416%;
        height: 430px;
        max-height: 430px;
    }
    #org .flex li h3 {
        position: relative;
        z-index: 5;
    }
    #org .flex li:nth-child(odd) h3 {
        left: -30px;
        top: -30px;
        text-align: left;
    }
    #org .flex li:nth-child(even) h3 {
        right: -30px;
        top: -30px;
        text-align: right;
    }
    #org .flex li p {
        width: 21em;
        margin: auto;
    }
    #org .orgab1 {
        position: absolute;
        top: -180px;
        right: -140px;
        z-index: 10;
    }
    #org .orgab2 {
        position: absolute;
        top: -180px;
        left: 135px;
        z-index: 10;
    }
    #org .orgab3 {
        position: absolute;
        top: -45px;
        left: 130px;
        z-index: 10;
        /*mix-blend-mode: multiply;*/
    }
    #org .orgab4 {
        position: absolute;
        bottom: -10px;
        right: 10px;
        z-index: 10;
    }
    #org .orgab5 {
        position: absolute;
        bottom: -20px;
        left: -30px;
        z-index: 10;
    }
    #org .orgab6 {
        position: absolute;
        bottom: -150px;
        right: 60px;
        z-index: 10;
        /*mix-blend-mode: multiply;*/
    }
    #org .orgab7 {
        position: absolute;
        bottom: -35px;
        right: -180px;
        z-index: 10;
    }

        /*---------------------------------------------fixed*/
        #fixed {
            margin-bottom: 102px;
            padding: 0 0 0 57px;
            position: relative;
            left: 0;
            top: 0;
            display: block;
            height: 100%;
            width: 100%;
            height: 500px;
            overflow: hidden;
        }
    
        #fixed .fix-inner {
            position: relative;
            overflow: hidden;
            clip-path: inset(0 0 round 50px 0 0 50px);
            height: 100%;
        }

        #fixed .fix-inner img {
            position: fixed;
            width: 100%;
            min-height: 100vh;
            height: auto;
            left: 57px;
            top: 0;
            pointer-events: none;
            object-fit: cover;
        }

}













@media (max-width: 1000px) {

        /*---------------------------------------------page-ti*/
        #page-ti .h40 {
            background: url(../../images/main_ttl_deco.svg) no-repeat bottom center;
            background-size: auto 7.8px;
        }
          
        /*背景1*/
        #page-ti .ab1 {
            position: absolute;
            left: -23.5px;
            bottom: -40px;
            min-width: 115px;
            width: 25vw;
            height: auto;
        }
        
        /*背景2*/
        #page-ti .ab2 {
            position: absolute;
            right: -7.5px;
            bottom: -18.5px;
            min-width: 101px;
            width: 15vw;
            height: auto;
        }

    /*---------------------------------------------aym*/
    #team {
        margin-bottom: 16vw;
        position: relative;
    }
    #team .h25p {
        margin-bottom: 42px;
        text-align: center;
    }
    #team .flex {
        justify-content: center;
        align-items: center;
    }
    #team .flex {
        /*mix-blend-mode: multiply;*/
    }
    #team .img {
        /*mix-blend-mode: multiply;*/
        display: block;
        width: 60%;
        margin: 0 auto 5vw;
    }
    #team .h30 {
        margin-bottom: 33px;
    }

    /*---------------------------------------------ktd*/
    #org {
        margin-bottom: 12vw;
        padding: 20vw 0;
        background: url(../images/bg_triangle.svg) ;
        background-size: 16px;
    }
    #org .h30 {
        text-align: center;
        margin-bottom: 53px;
    }
    #org .inner {
        position: relative;
    }
    #org .flex {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        row-gap: 16vw;
    }
    #org .flex li {
        position: relative;
        background: url(../images/org_bgtxt.png) center no-repeat;
        background-size: cover;
        width: 100%;
        height: 72vw;
    }
    #org .flex li h3 {
        position: relative;
        /*z-index: 5;*/
    }
    #org .flex li h3 img {
        width: 30%;

    }
    #org .flex li:nth-child(odd) h3 {
        left: 0;
        top: -5vw;
        text-align: left;
    }
    #org .flex li:nth-child(even) h3 {
        right: 0;
        top: -5vw;
        text-align: right;
    }
    #org .flex li p {
        width: 80%;
        margin: -5vw auto 0;
        font-size: 90%;
    }
    #org .orgab1 {
        position: absolute;
        top: -25vw;
        right: 0;
        /*z-index: 10;*/
        width: 40vw;
    }
    #org .orgab2 {
        position: absolute;
        top: -25vw;
        left: 20vw;
        /*z-index: 10;*/
        width: 20vw;
    }
    #org .orgab3 {
        position: absolute;
        top: -9vw;
        left: 25vw;
        /*z-index: 10;*/
        width: 24vw;
        /*mix-blend-mode: multiply;*/
    }
    #org .orgab4 {
        position: absolute;
        bottom: -5vw;
        right: 0;
        /*z-index: 10;*/
        width: 25vw;
    }
    #org .orgab5 {
        position: absolute;
        bottom: -10vw;
        left: -5vw;
        /*z-index: 10;*/
        width: 25vw;
    }
    #org .orgab6 {
        position: absolute;
        bottom: -17vw;
        right: 14vw;
        /*z-index: 10;*/
        /*mix-blend-mode: multiply;*/
        width: 35vw;
    }
    #org .orgab7 {
        position: absolute;
        bottom: -12vw;
        right: 0;
        /*z-index: 10;*/
        width: 55vw;
    }

        /*---------------------------------------------fixed*/
        #fixed {
            margin-bottom: 34px;
            padding: 0 0 0 54px;
            position: relative;
            left: 0;
            top: 0;
            display: block;
            height: 100%;
            width: 100%;
            height: 250px;
            overflow: hidden;
        }
    
        #fixed .fix-inner {
            position: relative;
            overflow: hidden;
            clip-path: inset(0 0 round 20px 0 0 20px);
            height: 100%;
        }

        #fixed .fix-inner img {
            position: fixed;
            width: 100%;
            min-height: 100vh;
            height: auto;
            left: 54px;
            top: 0;
            pointer-events: none;
            object-fit: cover;
            object-position: 64%
        }
    
}