/* business --------------------------------------------------- */
.business{
    display: grid;
    grid-template-columns: 1fr 110rem 1fr;
    padding: 10rem 0;
}

.business_wrapper{
    grid-column: 1/3;
    display: flex;
    align-items: start;
    gap: 6rem;
}

.business_headline{
    color: var(--mainColor);
    background: #fff;
    padding: 6rem;
    border-radius: 0 2rem 2rem 0;
    display: flex;
    flex-flow: column;
    gap: 4rem;
    position: sticky;
    margin-top: 12rem;
    top: 10rem;
    flex-shrink: 0;
}

.business_headline li{
    list-style: inside;
}

.business_headline li::marker{
    color: var(--mainColor);
}

.business_headline a{
    font-weight: 500;
    opacity: 0.4;
    transition: 0.3s;
    padding-bottom: 1rem;
    border-bottom: solid 0.105rem #fff;
    margin-left: -0.5rem;
}

.business_headline a.active,
.business_headline a:hover{
    opacity: 1;
    border-bottom: solid 0.105rem var(--mainColor);
}

.business_lead{
    line-height: 1.8;
    margin-bottom: 6rem;
}

.business_inner{
    display: flex;
    flex-flow: column;
    gap: 5rem;
    padding-top: 10rem;
}

.business_inner:nth-of-type(1){
    margin-top: -10rem;
}

.business_header{
    color: var(--mainColor);
    font-weight: 700;
    letter-spacing: 0.1em;
    padding-bottom: 1rem;
    border-bottom: solid 0.105rem;
}

.receive .business_header{
    text-align: right;
}

.business_top{
    display: flex;
    gap: 3.5rem;
}

.receive .business_top{
    flex-flow: row-reverse;
}

.business_text{
    flex: 1.3;
}

.business_text h2{
    font-size: 3.2rem;
    font-weight: 500;
    padding-left: 2rem;
    border-left: solid 0.4rem var(--mainColor);
    padding-bottom: 0.5rem;
}

.business_text h3{
    color: var(--mainColor);
    font-size: 2.6rem;
    font-weight: 500;
    line-height: 1.6;
    margin: 3rem 0 5rem;
}

.business_text p{
    line-height: 1.8;
}

.business_img{
    flex: 1;
}

.business_bottom{
    display: flex;
    gap: 2rem;
}

.business_bottom.sp{
    display: none;
}

.business_item{
    background: #FDF3DF;
    padding: 2rem 2rem 2.5rem;
    flex: 1;
}

.business_item h3{
    color: var(--mainColor);
    font-size: 2rem;
    font-weight: 500;
    display: flex;
    align-items: end;
    gap: 1rem;
    padding-bottom: 2rem;
    border-bottom: solid 0.105rem var(--subColor);
    margin-bottom: 2rem;
}

.business_item h3 span{
    color: var(--subColor);
    font-size: 4rem;
    margin-bottom: -0.3rem;
}

.business_item p{
    font-size: 1.4rem;
    line-height: 1.8;
}

@media (max-width: 1024px) {
    .business{
        grid-template-columns: 1fr 90% 1fr;
    }

    .business_headline{
        padding: 4rem 3rem;
    }

    .business_bottom{
        flex-flow: column;
    }
}


@media (max-width: 767px) {
    .business{
        padding: 6rem 0;
    }

    .business_wrapper{
        grid-column: 2;
        display: block;
    }

    .business_lead{
        margin-bottom: 4rem;
    }

    .business_headline{
        width: 100%;
        margin: 0 0 6rem;
        padding: 3rem;
        gap: 3.5rem;
        border-radius: 2rem;
        position: static;
    }

    .business_headline li{
        list-style: none;
    }

    .business_headline li::before{
        content: "";
        display: inline-block;
        width: 0.6rem;
        height: 1.2rem;
        background: url(../images/business/arrow.svg) center / cover no-repeat;
        margin-right: 1rem;
    }

    .business_headline a{
        opacity: 1;
        padding-bottom: 0.5rem;
        border-bottom: solid 0.105rem var(--mainColor);
        margin-left: 0;
    }

    .business_inner{
        padding-top: 8rem;
        gap: 3rem;
    }

    .business_inner:nth-of-type(1){
        margin-top: -8rem;
    }

    .business_text h2{
        font-size: 2.2rem;
        padding-left: 1.5rem;
        padding-bottom: 0;
    }

    .business_text h3{
        font-size: 1.8rem;
        margin: 3rem 0;
    }

    .business_text p{
        margin-top: 3rem;
        line-height: 1.7;
        text-align: justify;
    }

    .receive .business_header{
        text-align: start;
    }

    .business_bottom.pc{
        display: none;
    }

    .business_bottom.sp{
        display: block;
        position: relative;
        padding-bottom: 3rem;
    }

    .business_item{
        flex: none;
        padding: 2rem 2.5rem 2.5rem;
    }

    .business_item h3{
        font-size: 1.8rem;
        padding-bottom: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .business_item h3 span{
        font-size: 2.8rem;
        margin-bottom: -0.1rem;
    }

    .business_bottom .swiper-button-prev,
    .business_bottom .swiper-button-next{
        background: url(../images/business/swiper_btn.svg) center / cover no-repeat;
        height: 2.5rem;
        width: 2.5rem;
        top: 45%!important;
    }

    .swiper-button-prev{
        left: -1.3rem!important;
        transform: scaleX(-1);
    }

    .swiper-button-next{
        right: -1.3rem!important;
    }

    .swiper-button-prev svg,
    .swiper-button-next svg{
        display: none;
    }

    .swiper-pagination{
        display: flex;
        justify-content: center;
        gap: 1rem;
        bottom: 0;
    }

    .swiper-pagination-bullet{
        background: #D8F2EA;
        opacity: 1;
    }

    .swiper-pagination-bullet-active{
        background: var(--mainColor);
    }
}