.structure{
    position: relative;
    padding: 137px 0;
}

.structure::before,
.structure::after{
    content: '';
    position: absolute;
    inset: auto 0;
    width: 147px;
    height: 58px;
    background-color: var(--white);
    margin: 0 auto;
}

.structure::before{
    clip-path: polygon(0 0,50% 100%,100% 0);
    -webkit-clip-path: polygon(0 0,50% 100%,100% 0);
    top: 0;
}

.structure::after{
    bottom: 0;
    clip-path: polygon(0 100%,50% 0,100% 100%);
    -webkit-clip-path: polygon(0 100%,50% 0,100% 100%);
}

.structure .sectitle{
    font-weight: 400;
}

.structure hr{
    background: linear-gradient(to right,var(--white) 0%,var(--white) calc(100% - 73px),transparent calc(100% - 73px),transparent calc(100% - 71px),var(--main) calc(100% - 71px),var(--main) 100%);
}

.structure .text{
    color: var(--title);
}

.adas{
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -ms-flex-direction: column;
    grid-gap: 27px;
    padding-top: 37px;
}

.adas>*{
    position: relative;
    padding: 81px 0 102px;
}

.adas>* .row{
    grid-gap: 2rem 0;
}

.adas>*:nth-child(even) .row{
    flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
}

.adas>* .row>*{
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -ms-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
}

.adas>* .text,
.adas>* .dbtn{
    margin-top: 29px;
}

.adas>* hr{
    width: 450px;
    margin: 1rem 0;
}

.adas>* img{
    position: absolute;
    inset: 0 0 auto auto;
    width: 49vw;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
}

.adas>*:nth-child(even) img{
    inset: 0 auto auto 0;
}

.principles{
    background: url(../../assets/img/instbg-100.png) no-repeat top center/cover,var(--main);
    background-blend-mode: multiply;
    padding: 113px 0 143px;
}

.principles hr{
    width: 588px;
}

.principles .text{
    width: 701px;
    margin: 25px auto 0;
}

.principles .princs{
    position: relative;
    z-index: 1;
    display: grid;
    display: -webkit-grid;
    grid-template-columns: repeat(2,1fr);
    align-items: center;
    grid-gap: 22px 48px;
    width: fit-content;
    max-width: 100%;
    overflow: hidden;
    margin: 50px auto 0;
    padding: 0 80px 2rem;
}

.principles .princs::before{
    content: '';
    position: absolute;
    z-index: -1;
    inset: auto auto 0 0;
    width: 100%;
    height: calc(100% - 1.1rem);
    border: 1px solid var(--white);
    /* border-top: unset; */
}

.principles .princs>*{
    position: relative;
    display: flex;
    display: -webkit-flex;
    align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.principles .princs>* .title{
    width: 100%;
    text-align: center;
    color: var(--white);
    background-color: var(--black);
    padding: 6px 3px;
}

.principles .princs>*:nth-child(3n){
    grid-column: span 2;
}

.principles .princs>*:nth-child(3n + 1)::before{
    content: '';
    position: absolute;
    z-index: -1;
    inset: 50% auto auto 100%;
    width: 25px;
    height: 1px;
    background-color: var(--white);
}

.principles .princs>*:nth-child(3n + 2)::before{
    content: '';
    position: absolute;
    z-index: -1;
    inset: 50% 100% auto auto;
    width: 25px;
    height: 1px;
    background-color: var(--white);
}

.principles .princs>*:nth-child(3n)::before{
    content: '';
    position: absolute;
    z-index: -1;
    inset: auto auto 50% auto;
    width: 61%;
    height: calc(100% + 22px);
    border: 1px solid var(--white);
    border-top: unset;
}

.principles .princs>*:nth-child(3n)::after{
    content: '';
    position: absolute;
    z-index: -1;
    inset: 100% 0 auto;
    width: 1px;
    height: 113%;
    background-color: var(--white);
    margin: 0 auto;
}

.principles .princs>*:nth-child(3n):last-child::after{
    height: 100%;
}

.principles .princs>*:nth-child(3n) .title{
    width: fit-content;
}

.principles .text.t2{
    width: 789px;
    margin: 48px auto 0;
}

.area{
    padding: 178px 0 116px;
}

.area .container{
    position: relative;
    z-index: 1;
    display: flex;
    display: -webkit-flex;
    align-items: center;
}

.area .container::before{
    content: url(../../assets/img/icon-bg.svg);
    position: absolute;
    z-index: -1;
    left: 9.27083vw;
}

.area .sectitle{
    width: 500px;
    font-size: 48px;
    margin-left: clamp(1.5rem,26.40625vw,507px);
}

.area .sectitle strong,
.struct .sectitle strong{
    color: var(--line);
}

.struct{
    background: url(../../assets/img/wavefx-13.png) no-repeat top center/cover;
}

.struct .container{
    margin-top: 37px;
    margin-bottom: 39px;
}

.struct::before,
.struct::after{
    content: '';
    display: block;
    display: -webkit-block;
    width: 100%;
    height: 121px;
    background-color: #F3F3F3;
}

.struct::before{
    clip-path: polygon(0 0,100% 0,100% 52.89256%,53.80208% 52.89256%, 50% 100%,46.19791% 52.89256%,0 52.89256%);
    -webkit-clip-path: polygon(0 0,100% 0,100% 52.89256%,53.80208% 52.89256%, 50% 100%,46.19791% 52.89256%,0 52.89256%);
}

.struct::after{
    clip-path: polygon(0 52.89256%,46.19791% 52.89256%,50% 0,53.80208% 52.89256%,100% 52.89256%,100% 100%,0 100%);
    -webkit-clip-path: polygon(0 52.89256%,46.19791% 52.89256%,50% 0,53.80208% 52.89256%,100% 52.89256%,100% 100%,0 100%);
}

.struct .sectitle{
    font-weight: 400;
}

.struct hr{
    width: 509px;
}

.struct .text{
    width: 646px;
    margin: 2rem auto 0;
}

.struct .dbtn{
    margin-top: 47px;
}

@media(max-width:992px){
    .structure{
        padding: 4rem 0;
    }
    .adas>*,
    .principles,
    .area{
        padding: 2rem 0;
    }
    .structure{
        background: linear-gradient(to right,#D8D7D4,#B6B4B1,#CCCBC7) !important;
    }
    .adas{
        grid-gap: 0;
        padding: 0;
    }
    .adas>* img{
        position: initial;
        width: fit-content;
    }
    .principles .princs::before{
        display: none;
        display: -webkit-none;
    }
    .area .container{
        background: url(../../assets/img/icon-bg.svg) no-repeat 2rem center/auto 100%;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    .area .container::before{
        display: none;
        display: -webkit-none;
    }
    .area .sectitle{
        width: 100%;
        font-size: 32px;
        margin: 0;
    }
}

@media(max-width:768px){
    .principles .princs{
        width: 100%;
        padding: 0;
    }
    .principles .princs>*{
        grid-column: span 2;
    }
    .principles .princs>*::before,
    .principles .princs>*::after{
        display: none !important;
        display: -webkit-none !important;
    }
    .principles .princs>* .title{
        width: 100% !important;
    }
}