/* TOP STYLE */

/* mv */

.service.main {
    position: relative;
    width: 100%;
    min-height: 100vh;
    overflow: hidden;
}

.service.main::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background-image: url("../img/service/service-bg.jpg"); */
    background: url("../img/service/service-bg.jpg") lightgray 0% 0% / 34.00000035762787px 34.00000035762787px;
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
    z-index: -1;
}

@media (max-width:767px) {
    .service.main::before {
        background: url("../img/service/serivce-img-sp.png");
        background-size: cover;
        background-position: top;
        background-repeat: no-repeat;
    }
}




.service .ai-mv__wrp {
    background: transparent;
    padding: 8.78vw 1.5vw 0vw 8.05vw;
}

.service .ai-mv__wrp::after {
    content: none;
}

.service .ai-mv {
    position: relative;
}

.service .ai-mv__scroll {
    height: 10.249vw;
    top: unset;
    bottom: 0;
}


.ai-mv__top-txt {
    margin-right: -7.198vw;
}

@media (max-width:1400px) {
    .ai-mv__top-txt {
        margin-right: -5.198vw;
    }

    .service .ai-mv__scroll {
        height: 132px;
        top: unset;
        bottom: 0;
    }
}

.ai-mv__main-text {
    color: #000;
    font-family: "DM Sans";
    font-size: 7.321vw;
    font-weight: 700;
    line-height: 9.59vw;
    letter-spacing: 0.952vw;
    display: inline-block;
}

.ai-mv__main-text .blue {
    background-color: #2478e5;
    color: #FFF;
    font-family: "DM Sans";
    font-size: 6.589vw;
    font-weight: 700;
    line-height: 9.59vw;
    letter-spacing: 0.857vw;
    display: inline-block;
}

.ai-mv__main-text .s {
    color: #000;
    font-size: 5.783vw;
    font-weight: 700;
    line-height: 0;
    letter-spacing: 0.752vw;
    display: inline-block;
}

.ai-mv__main-text .sm {
    color: #000;
    font-size: 5.857vw;
    font-weight: 700;
    line-height: 0;
    letter-spacing: 0.761vw;
    display: inline-block;
}

.ai-mv__main-text .md {
    color: #000;
    font-size: 6.589vw;
    font-weight: 700;
    line-height: 0;
    letter-spacing: 0.857vw;
    display: inline-block;
}

.ai-mv__sub-text {
    color: #000;
    font-family: "DM Sans";
    font-size: 2.123vw;
    font-weight: 700;
    line-height: 2.928vw;
    letter-spacing: 0.276vw;
    margin-block: 4.392vw;
}

@media (max-width:767px) {
    .ai-mv__sub-text {
        font-size: 4vw;
        letter-spacing: 0.52vw;
        line-height: 6.4vw;
    }
    .office .ai-mv__sub-text {
        font-size: 3.9vw;
    }
}

.service .ai-mv__sub-txt {
    line-height: 1.903vw;
}




.ai-mv__last-text {
    color: #000;
    font-family: "DM Sans";
    font-size: 1.171vw;
    font-weight: 400;
    line-height: 1.171vw;
    letter-spacing: 0.469vw;
}

.service .ai-mv__mid.mt-0 {
    margin-top: 0;
    line-height: 1.903vw;
    align-items: flex-start;
}

.service .ai-mv__btn .c-btn-primary {
    width: 25.183vw;
    height: 5.417vw;
}



/* about */

.service .about {
    background: transparent;
}

.service .about .section__wrapper {
    flex-direction: column;
    gap: 60px;
    max-width: 1166px;
    width: 100%;
    margin-inline: auto;
}

.service .about__content {
    margin-top: 0;
    margin-inline: 0 auto;
}

.section__header.vertical {
    max-width: 394px;
    width: 100%;
    flex-direction: column;
}

.section__header.vertical .section__ttl-eng {
    writing-mode: horizontal-tb;
    padding-left: 27px;
    padding-top: 0;
}


.section__header.vertical .section__ttl-eng::after {
    top: 50%;
    transform: translateY(-50%);
    left: 0;

}

.section__header.vertical .section__ttl-jpn {
    writing-mode: horizontal-tb;
}

.section__header.vertical .section__ttl-jpn.ls {
    letter-spacing: 4px;
}

.about__content.gap {
    justify-content: flex-start;
    gap: 89px;
}

.about__content.gap .about__desc {
    max-width: 100%;
}

.about__content.gap .bold {
    font-weight: 700;
}

/* lineup */

.lineup {
    padding-block: 130px;
    border-radius: 100px 100px 0 0;
    background: #FFF;
}

@media (max-width:767px) {
    .lineup {
        padding-block: 80px;
        border-radius: 40px 40px 0 0;
    }
}

.lineup__row {
    max-width: 934px;
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    gap: 40px 66px;
    flex-wrap: wrap;

    @media (min-width:768px) {
        gap: 25px 34px;
    }

    @media (min-width:1200px) {
        gap: 40px 66px;
    }
}

.lineup__col {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 20px;
    position: relative;


    @media (min-width:768px) {
        width: calc(100% / 2 - 17px);

    }

    @media (min-width:1200px) {
        width: calc(100% / 2 - 33px);

    }

}

.lineup__col-head {
    position: absolute;
    left: -6%;
    top: 0;
    color: #2A6EDC;
    font-size: 14px;
    font-weight: 700;
    line-height: 140%;
    /* 22.4px */
    letter-spacing: 1.2px;
    writing-mode: vertical-rl;
    text-orientation: mixed;

    @media (min-width:768px) {
        font-size: 14px;
        left: -7%;


    }

    @media (min-width:992px) {
        font-size: 16px;


    }

}

.lineup__col-head.org {
    color: #FF8C42;
}

.lineup__col-head.brn {
    color: #B68655;
}

.lineup__col-head.teal {
    color: #28BDBD;
}

.lineup__col-head.grn {
    color: #4CAF50;
}


.lineup__image {
    max-width: 100%;
    width: 100%;
    height: auto;
    border-radius: 20px;
    overflow: hidden;

    @media (min-width:768px) {
        max-width: 435px;

    }
}


.lineup__image img {
    transition: 0.3s;
    width: 100%;
    height: 100%;
}

.lineup__col:hover .lineup__image img {
    transform: scale(1.1);
}



.lineup__title {
    color: #000;
    text-align: center;
    /* font-family: "DM Sans"; */
    font-size: 24px;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: 2px;

    @media (min-width:768px) {
        font-size: 22px;
        letter-spacing: 2px;
    }

    @media (min-width:992px) {
        letter-spacing: 3px;
        font-size: 26px;
    }

    @media (min-width:1200px) {
        font-size: 30px;
    }
}

.lineup__desc {
    color: #000;
    font-size: 14px;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.3px;


    @media (min-width:768px) {
        font-size: 14px;
        letter-spacing: 1.6px;


    }

    @media (min-width:1200px) {
        font-size: 16px;

    }

    span {
        opacity: 0.95;
        font-weight: 700;
    }

}

.learn__button {
    font-size: 14px;
    font-weight: 700;
    line-height: 160%;
    letter-spacing: 1.2px;
    display: flex;
    justify-content: flex-end;

    @media (min-width:768px) {
        font-size: 16px;
        letter-spacing: 1.6px;

    }

}

.learn__btn {
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: fit-content;
    color: #000;
    font-size: 18px;
    font-weight: 700;
    line-height: 25px;
    letter-spacing: 1.8px;
    transition: all 0.3s ease-in-out;

    @media (min-width:768px) {
        font-size: 16px;


    }

    @media (min-width:992px) {
        font-size: 18px;

    }
}

.learn__btn .txt {
    position: relative;
    display: inline-block;
    font-weight: 700;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1.6px;
    border-bottom: 2px solid transparent;
}

.learn__btn .txt::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: #000;
    transition: width 0.4s ease;
}


.learn__button .learn__btn .arrw {
    width: 30px;
    height: 30px;
    position: relative;

    @media (min-width:768px) {
        width: 4.03vw;
        height: 4.03vw;
    }
}

.learn__button .learn__btn .arrw::after {
    width: 30px;
    height: 30px;

    @media (min-width:768px) {
        width: 2.93vw;
        height: 2.93vw;
    }


}

.learn__button .learn__btn .arrw::before {
    width: 10px;
    height: 10px;

    @media (min-width:768px) {
        width: 1.17vw;
        height: 0.91vw;
    }

}

.learn__btn .arrw::after {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='43' viewBox='0 0 43 43' fill='none'%3E%3Cpath d='M3.99961 11.3201C1.57353 15.5222 0.757804 20.463 1.70441 25.2219C2.65102 29.9809 5.29541 34.2334 9.14489 37.1872C12.9944 40.141 17.7864 41.5946 22.6282 41.2773C27.47 40.9599 32.0313 38.8933 35.4623 35.4623C38.8932 32.0313 40.9599 27.47 41.2773 22.6282C41.5946 17.7864 40.141 12.9944 37.1872 9.14489C34.2334 5.29541 29.9809 2.65103 25.2219 1.70442C20.463 0.757805 15.5222 1.57353 11.3201 3.99961' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    -ms-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;

    @media (min-width:768px) {
        width: 40px;
        height: 40px;
    }
}

.learn__btn .arrw::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='15' viewBox='0 0 19 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.14844 7.22266H16.704' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9297 13.4444L17.1519 7.22222L10.9297 1' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 20.003px;
    height: 20.444px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;

    @media (min-width:768px) {
        width: 16.003px;
        height: 12.444px;
    }

}

.lineup__col:hover {
    cursor: pointer;
}

/* When hovering the whole lineup__col */
.lineup__col:hover .learn__btn {
    background-color: #FFF;
    color: black;
}

.lineup__col:hover .learn__btn .txt {
    border-bottom: 2px solid #000;
    transition: all 0.3s ease;
}

.lineup__col:hover .learn__btn .txt::after {
    width: 100%;
}

.lineup__col:hover .learn__btn .arrw::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='43' viewBox='0 0 43 43' fill='none'%3E%3Cpath d='M3.99961 11.3201C1.57353 15.5222 0.757804 20.463 1.70441 25.2219C2.65102 29.9809 5.29541 34.2334 9.14489 37.1872C12.9944 40.141 17.7864 41.5946 22.6282 41.2773C27.47 40.9599 32.0313 38.8933 35.4623 35.4623C38.8932 32.0313 40.9599 27.47 41.2773 22.6282C41.5946 17.7864 40.141 12.9944 37.1872 9.14489C34.2334 5.29541 29.9809 2.65103 25.2219 1.70442C20.463 0.757805 15.5222 1.57353 11.3201 3.99961' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
    transform: translate(-50%, -50%) rotate(175deg);
    transition: all 0.3s ease;
}

.lineup__col:hover .learn__btn .arrw::before {
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='15' viewBox='0 0 19 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.14844 7.22266H16.704' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9297 13.4444L17.1519 7.22222L10.9297 1' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;

}


.option {
    background: #F4F4F4;
    border-radius: 100px 100px 0 0;
    padding-block: 130px;
}

@media (max-width:767px) {
    .option {
        padding-block: 80px;
        border-radius: 40px 40px 0 0;
    }
}



.option__row {
    max-width: 934px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 30px;
    flex-wrap: wrap;

    @media (min-width:768px) {
        flex-direction: row;
        gap: 25px;
    }

    @media (min-width:1200px) {
        gap: 32px;
    }
}

.option__col {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: stretch;
    justify-content: flex-start;

    @media (min-width:768px) {
        width: calc(100% / 3 - 0px);
    }

    @media (min-width:992px) {
        width: calc(100% / 3 - 21.33px);
    }
}

.option__image {
    max-width: 100%;
    width: 100%;
    height: auto;
    position: relative;
    border-radius: 20px;
    overflow: hidden;

    @media (min-width:768px) {
        max-width: 290px;
    }
}


.option__image span {
    position: absolute;
    bottom: 9px;
    right: 11px;
}

.option__image img {
    transition: 0.3s;
    width: 100%;
    height: 100%;
}

.option__col:hover .option__image img {
    transform: scale(1.1);
}


.option__col:hover .option__image span img {
    transform: scale(1);
}



.option__title {
    color: #000;
    font-size: 22px;
    font-weight: 700;
    line-height: 130%;
    /* 33.8px */
    letter-spacing: 2.3px;

    @media (min-width:768px) {
        font-size: 20px;
        letter-spacing: 2px;
    }

    @media (min-width:992px) {
        font-size: 24px;
        letter-spacing: 2.6px;
    }

    @media (min-width: 1200px) {
        font-size: 26px;

    }
}

.option__desc {
    color: #000;
    font-size: 14px;
    font-weight: 400;
    line-height: 162%;
    /* 25.6px */
    letter-spacing: 1.3px;

    @media (min-width:768px) {
        font-size: 13px;
        letter-spacing: 0.8px;
    }

    @media (min-width:992px) {
        font-size: 14px;
        letter-spacing: 1.6px;
    }

    @media (min-width: 1200px) {
        font-size: 16px;

    }
}

.option__col:hover {
    cursor: pointer;
}

.option__col:hover .learn__btn {
    color: black;
}

.option__col:hover .learn__btn .txt {
    border-bottom: 2px solid #000;
    transition: all 0.3s ease;
}

.option__col:hover .learn__btn .txt::after {
    width: 100%;
}

.option__col:hover .learn__btn .arrw::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='43' viewBox='0 0 43 43' fill='none'%3E%3Cpath d='M3.99961 11.3201C1.57353 15.5222 0.757804 20.463 1.70441 25.2219C2.65102 29.9809 5.29541 34.2334 9.14489 37.1872C12.9944 40.141 17.7864 41.5946 22.6282 41.2773C27.47 40.9599 32.0313 38.8933 35.4623 35.4623C38.8932 32.0313 40.9599 27.47 41.2773 22.6282C41.5946 17.7864 40.141 12.9944 37.1872 9.14489C34.2334 5.29541 29.9809 2.65103 25.2219 1.70442C20.463 0.757805 15.5222 1.57353 11.3201 3.99961' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
    transform: translate(-50%, -50%) rotate(175deg);
    transition: all 0.3s ease;
}

.option__col:hover .learn__btn .arrw::before {
    background-image: url("data:image/svg+xml,%3Csvg width='19' height='15' viewBox='0 0 19 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.14844 7.22266H16.704' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10.9297 13.4444L17.1519 7.22222L10.9297 1' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;

}

/* flow */

.flow {
    background: #fff;
    border-radius: 100px 100px 0 0;
    padding-block: 130px;
}

@media (max-width:767px) {
    .flow {
        padding-block: 80px;
        border-radius: 40px 40px 0 0;
    }
}

.flow__heading {
    font-size: 14px;
    font-weight: 400;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1.2px;
    margin-bottom: 20px;

    @media (min-width:768px) {
        font-size: 16px;
        letter-spacing: 1.6px;
        margin-bottom: 40px;

    }
}

.flow__row {
    max-width: 934px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;

    @media (min-width:768px) {
        flex-direction: row;
    }

}

.flow__col {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    border-radius: 0 40px 40px 0;
    background: #fff;
    padding: 40px 30px;

    @media (min-width:768px) {
        width: calc(100% / 3);
        padding: 25px 15px;

    }

    @media (min-width: 1200px) {
        width: calc(100% / 3);
        padding: 40px 30px;


    }
}

.flow__col:first-of-type {
    margin-right: -30px;
    z-index: 3;
}

.flow__col:last-of-type {
    margin-right: 0;
    z-index: 3;
}

.flow__col.gray {
    background: #E0E0E0;
    width: 100%;
    padding: 40px 30px 40px 50px;

    @media (min-width:768px) {
        width: calc(100% / 3 + 20px);
        padding: 25px 15px 25px 45px;
    }

    @media (min-width:992px) {
        width: calc(100% / 3 + 20px);
        padding: 40px 30px 40px 50px;
    }
}

.flow__step {
    font-size: 20px;
    font-weight: 700;
    line-height: 160%;
    /* 32px */

    @media (min-width:768px) {
        font-size: 18px;
    }

    @media (min-width:992px) {
        font-size: 20px;
    }

}

.flow__step .num {
    font-size: 50px;
    line-height: 100%;
    padding-left: 5px;

    @media (min-width:768px) {
        font-size: 44px;

    }

    @media (min-width:992px) {
        font-size: 50px;

    }
}

.flow__ttl {
    font-size: 21px;
    font-weight: 700;
    line-height: 160%;
    /* 33.6px */
    letter-spacing: 2.1px;
    border-bottom: 1px solid #DDD;
    padding-block: 10px 30px;

    @media (min-width:768px) {
        font-size: 18px;
    }

    @media (min-width:992px) {
        font-size: 21px;
    }
}

.flow__desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 160%;
    /* 25.6px */
    letter-spacing: 1px;
    padding-top: 30px;

    @media (min-width:768px) {
        font-size: 15px;
        letter-spacing: 1.3px;
    }

    @media (min-width:992px) {
        font-size: 16px;
        letter-spacing: 1.6px;
    }
}

.flow__text {
    font-size: 23.2px;
    font-weight: 700;
    line-height: 130%;
    padding-top: 30px;
    /* 30.16px */

    @media (min-width:768px) {
        font-size: 18px;
    }

    @media (min-width:992px) {
        font-size: 23.2px;
    }
}

/* cta */
.service.cta {
    background-image: url("../img/service/service-cta01.webp");
}

.service.cta02 {
    position: relative;
    background-image: url("../img/service/service-cta02.webp");
}

.service.cta02 .container {
    position: unset;
}

.service.cta02 .cta__ttl {
    line-height: 60.5px;
}

.service.cta .cta__btn .c-btn-primary {
    width: 518px;
    height: 94px;
}

.service .c-btn-primary {
    font-size: 18px;
    letter-spacing: 1.8px;
}

@media (max-width:767px) {
    .service .c-btn-primary {
        font-size: 18px;
        letter-spacing: 1.8px;
    }
}



/* feature */

.service .feature {
    background-color: transparent;
}

.feature__title.center {
    text-align: center;
    min-height: 58px;
}

.feature__title.center sup {
    vertical-align: super;
    font-size: smaller;
    line-height: 0;

}

.feature__row.flex-start {
    justify-content: flex-start;
}

.feature__footertxt {
    color: #000;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: 1.6px;
    margin-top: 40px;
}

.feature__footertxt .bold {
    font-weight: 700;
}

.feature__note {
    color: #777;
    text-align: right;
    font-size: 10px;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: 1px;
    width: 100%;
    margin-top: 10px;
}

.feature__contents {
    max-width: 100%;
    width: 100%;

}

.section__wrapper.service {
    gap: 150px;
}

.service .feature__row {
    max-width: 914px;
    padding-right: 54px;
}

.service .feature__col {
    padding: 40px 40px 60px 40px;
    box-shadow: 0 10px 60px 0 rgba(14, 65, 146, 0.10);
    backdrop-filter: blur(15px);
}

.service .contact__block {
    max-width: 933px;
}

.service .contact__form-block {
    margin-left: 0;
    background: rgba(255, 255, 255, 0.70);
    box-shadow: 0 10px 60px 0 rgba(14, 65, 146, 0.10);
}

/* contact */
.service.contact {
    background: transparent;
}

/* footer */

.service.footer {
    background: #000;
}

.service .footer__heading {
    color: #FFF;
    font-size: 29px;
    font-weight: 700;
    line-height: 40px;
    letter-spacing: 3.77px;
}

.service .footer__list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 55px;
}

.service .footer__list-txt {
    position: relative;
    color: #FFF;
    font-family: Roboto;
    font-size: 14px;
    font-weight: 600;
    line-height: 21px;
    cursor: pointer;
}

.service .footer__list-txt:hover {
    opacity: 0.7;
}

.service .footer__list-txt::after {
    content: "";
    position: absolute;
    background-image: url("../img/service/icon-arrow.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    right: -23px;
    width: 18px;
    height: 18px;
    top: 50%;
    transform: translateY(-50%);
}

.service .footer__list-txt a {
    text-decoration: none;
    color: #FFF;
}

.service .footer__content {
    padding-bottom: 40px;
    border-bottom: 1px solid #FFF;
    max-width: 1166px;
    width: 100%;
    margin-inline: auto;

}

.service .footer__btm {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1166px;
    width: 100%;
    margin-inline: auto;
    margin-top: 33px;
}

.service .footer__btm-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
}

.service .footer__btm-txt {
    color: #FFF;
    font-family: "DM Sans";
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    text-decoration-line: underline;
    transition: all 0.25s ease;
    cursor: pointer;
}

.service .footer__btm-txt:hover {
    opacity: 0.7;
}

.service .footer__btm-txt a {
    text-decoration: none;
    color: #FFF;
}

.service .footer__btm {
    color: #FFF;
    font-family: "DM Sans";
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
}

.service.header__menu-list li a {
    font-size: 1.025vw;
    letter-spacing: 0.102vw;
}

.service .cta__note {
    position: absolute;
    text-align: right;
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    line-height: 30px;
    letter-spacing: 2.5px;
    bottom: 11px;
    right: 100px;
}

@media (max-width:767px) {

    .service .cta__note {
        position: absolute;
        text-align: right;
        color: #FFF;
        font-size: 12px;
        font-weight: 400;
        line-height: 30px;
        letter-spacing: 2.5px;
        bottom: 11px;
        right: 10px;
    }

    /* mv */
    .service .ai-mv__sub-txt {
        line-height: 5.6vw;
    }

    .service .ai-mv__wrp {
        padding: 24vw 0 4vw;
    }

    .service .ai-mv__btn .c-btn-primary {
        width: 300px;
        height: 59px;
        gap: 5px;
    }

    .service .ai-mv__scroll {
        font-size: 3.2vw;
        font-weight: 400;
        line-height: 5.07vw;
        left: 0.33vw;
        top: unset;
        bottom: -90px;
        height: 26.4vw;
        letter-spacing: 0.32vw;
    }

    .service.cta .cta__btn .c-btn-primary {
        width: 327px;
        height: 58px;
        font-size: 18px;
        font-weight: 700;
        line-height: 25px;
    }

    /* about */
    .service .about .section__wrapper {
        margin-inline: auto;
    }

    .about__content.gap {
        gap: 30px;
    }

    .service .about .section__wrapper {
        gap: 30px;
    }

    /* feature */
    .service .feature__col {
        padding: 30px;
    }

    .service .feature__row {
        padding-right: 0;
    }

    /* footer */

    .service .footer__list {
        flex-wrap: wrap;
    }

    .service .footer__list {
        gap: 30px;
    }

    .service .footer__btm {
        flex-direction: column;
    }

    .service .copyright {
        margin-bottom: 0;
    }

    .section__wrapper.service {
        gap: 30px;
    }

    .service.cta02 .cta__ttl {
        line-height: 45px;
    }

}

.ai-mv__btm-img-wrp.mx-auto {
    max-width: 100%;
    width: 100%;
    margin-inline: auto;
    padding-inline: 110px 104px;

}

@media (max-width:1200px) {
    .ai-mv__btm-img-wrp.mx-auto {
        padding-inline: 19.5px;

    }
}

/* store page */
.store .ai-mv__btm-img {
    padding-left: 0;
}
.store .ai-mv {
    background-image: url("../img/store/mv/mv-bg.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
}

.store .ai-mv__top {
    gap: 0;
}

.store .ai-mv__wrp {
    position: relative;
    background: transparent;
    padding: 8.78vw 1.5vw 2.928vw 8.05vw;
}



.store .ai-mv__scroll {
    left: 42px;
    top: unset;
    bottom: 0;
}

.store .ai-mv__wrp::after {
    content: none;
}

.store .ai-mv__btm {
    background: transparent;
}

.store .ai-mv__sub-text {
    margin-block: 2.928vw;
}

.store .ai-mv__mid {
    margin-top: 0;
}

@media (max-width:767px) {
    .store .ai-mv__wrp {
        padding: 24vw 0 8vw;
    }

    .store .ai-mv__scroll {
        font-size: 3.2vw;
        font-weight: 400;
        line-height: 5.07vw;
        left: 0.33vw;
        top: unset;
        bottom: -2.667vw;
        letter-spacing: 0.32vw;
    }

    .store .ai-mv__sub-text {
        margin-block: 5.333vw 2.667vw;
    }

}

/* office */

.office .ai-mv {
    background-image: url("../img/office/mv/mv-bg.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;

}

.office .ai-mv__main-txt .blue {

    color: #28BDBD;
}

.office .ai-mv__wrp {
    position: relative;
}

.office .ai-mv__btm-img {
    padding-left: 0;
}

.office .ai-mv__scroll {
    left: 42px;
    top: unset;
    bottom: 0;
}

.office .ai-mv__sub-text {
    margin-block: 2.928vw;
}

.office .ai-mv__mid {
    margin-top: 0;
}


.office .ai-mv__wrp::after {
    content: none;
}

.office .ai-mv__wrp {
    background: transparent;
}

.office .ai-mv__btm {
    background: transparent;
}

.office .ai-mv__top {
    gap: 0;
}

.office .ai-mv__main-txt {
    margin-right: -5.0vw;
}

@media (max-width:767px) {
    .office .ai-mv__wrp {
        padding: 24vw 0 7.733vw;
    }

    .office .ai-mv__scroll {
        font-size: 3.2vw;
        font-weight: 400;
        line-height: 5.07vw;
        left: 0.33vw;
        top: unset;
        bottom: 0;
        letter-spacing: 0.32vw;
    }

    .office .ai-mv__sub-text {
        margin-block: 5.333vw 2.667vw;
    }
}

/* reform */
.reform .ai-mv {
    background-image: url("../img/mv/mv-bg.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
@media (max-width:767px) {
    .reform .ai-mv {
        background-image: url("../img/mv/mv-bg-sp.webp");
    }
}
.reform .ai-mv__main-txt .brown {
    color: #B68655;
}

.reform .ai-mv__top {
    gap: 0;
}

.reform .ai-mv__main-txt {
    margin-right: -5.198vw;
}


.reform .ai-mv__sub-text {
    margin-block: 2.928vw;
}

.reform .ai-mv__mid {
    gap: 14.275vw;
    margin-top: 0;
}

.reform .ai-mv__main-txt {
    font-size: 6.223vw;
    letter-spacing: 0.249vw;
}

.reform .ai-mv__main-txt .sm {
    font-size: 5.49vw;
    letter-spacing: 0.22vw;
}

.reform .ai-mv__btm-img {
    padding-left: 0;
}

.reform .ai-mv__wrp::after {
    content: none;
}

.reform .ai-mv__wrp {
    background: transparent;
}

.reform .ai-mv__btm {
    background: transparent;
}

.reform .ai-mv__scroll {
    left: 42px;
    top: unset;
    bottom: 0;
}

@media (max-width:767px) {
    .reform .ai-mv__wrp {
        padding: 24vw 0 8vw;
    }

    .reform .ai-mv__scroll {
        font-size: 3.2vw;
        font-weight: 400;
        line-height: 5.07vw;
        left: 0.33vw;
        top: unset;
        bottom: 0;
        letter-spacing: 0.32vw;
    }

    .reform .ai-mv__sub-text {
        margin-block: 5.333vw 2.667vw;
    }

    .reform .ai-mv__mid {
        gap: 8vw;
        margin-top: 0;
    }
}

/* garden */

.garden .ai-mv__main-txt {
    font-size: 5.0vw;
    letter-spacing: 0.1vw;
}

.garden .ai-mv__main-txt .green {
    color: #61B764;
}

.garden .ai-mv__main-txt .dot-spacing {
    letter-spacing: -0.5vw;
    margin: 0 -0.4vw;
    display: inline-block;
}

.garden .ai-mv__main-txt .sm {
    font-size: 4.4vw;
    letter-spacing: 0.16vw;
}

.garden .ai-mv__main-txt .xl {
    font-size: 5.6vw;
}

.garden .ai-mv__sub-text {
    margin-block: 2.928vw;
}

.garden .ai-mv__mid {
    margin-top: 0;
    gap: 9.078vw;
}

.garden .ai-mv__top {
    gap: 0;
}

.garden .ai-mv__btm-img {
    padding-left: 0;
}

.garden .ai-mv {
    position: relative;
}

.garden .ai-mv::after {
    content: "";
    position: absolute;
    width: 69.18vw;
    height: 100%;
    background: #f4f4f4;
    top: 0;
    left: 30.747vw;
    z-index: 0;
}

.garden .ai-mv__wrp::after {
    content: none;
}

.garden .ai-mv__btm {
    background: transparent;
    position: relative;
    z-index: 2;
}

.garden .ai-mv__wrp {
    background: transparent;
    position: relative;
    z-index: 5;
}

.garden .ai-mv__scroll {
    left: 42px;
    top: unset;
    bottom: 0;
    z-index: 2;
}

.garden .ai-mv__btm-img img {
    border-radius: 0;
}

.garden .ai-mv__wrp {
    padding: 8.78vw 1.5vw 2.928vw 8.05vw;
}

@media (max-width:767px) {

    .garden .ai-mv__wrp {
        padding: 24vw 0 8vw;
    }

    .garden .ai-mv__scroll {
        font-size: 3.2vw;
        font-weight: 400;
        line-height: 5.07vw;
        left: 0.33vw;
        top: unset;
        bottom: 0;
        letter-spacing: 0.32vw;
    }

    .garden .ai-mv__sub-text {
        margin-block: 5.333vw 2.667vw;
    }

    .garden .ai-mv__mid {
        gap: 8vw;
        margin-top: 0;
    }

    .garden .ai-mv__main-txt {
        font-size: 5.8vw;
    }

    .garden .ai-mv__main-txt .sm {
        font-size: 5.1vw;
    }

    .garden .ai-mv__main-txt .xl {
        font-size: 7.9vw;
    }

}


.section-bg {
    background-color: #fcfcfc;
}

.section-bg-gray {
    background-color: #f4f4f4;
}

/* common */
.ai-mv__btm-ttl .md {
    font-size: 4.392vw;
}

@media (max-width:767px) {

    .ai-mv__btm-ttl.lg {
        font-size: 8.33vw;
    }

    .ai-mv__btm-ttl .md {
        font-size: 7.467vw;
    }
}