@charset "UTF-8";

/*-------------------------------
	基本設定
-------------------------------*/

.sp25{
    display: none;
}

.container25{
    max-width: calc(112rem + 3rem);
}
.C-text25{
    font-size: 1.4rem;
    line-height: calc(2.8 / 1.4);
}
.C-arrow25{
    display: flex;
    align-items: center;
    justify-content: center;
}
.C-arrow25::before{
    content: "";
    display: block;
    height: 1px;
    background: #000;
    transition: .3s all ease;
}
.C-arrow25::after{
    content: "";
    display: block;
    width: 1px;
    background: #000;
    transform: rotate(-45deg) translateY(-50%);
    transition: .3s all ease;
}

.C-button25{
    width: 26rem;
    height: 7rem;
}
.C-button25 a{
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    letter-spacing: .05em;
    border: 1px solid #000;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}
.C-button25__arrow{
    position: absolute;
    right: 2rem;
    top: 50%;
    transform: translateY(calc(-50% + .5rem));
}
.C-button25__arrow::before{
    width: 3.2rem;
}
.C-button25__arrow::after{
    height: 1rem;
}
.C-button25 a:hover{
    border: 1px solid #2691e2;
    color: #fff;
    background: #2691e2;
}
.C-button25 a:hover .C-button25__arrow::before,
.C-button25 a:hover .C-button25__arrow::after{
    background: #fff;
}

.contact-badge25{
    width: 16rem;
    height: 16rem;
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    z-index: 50;
}
.contact-badge25 a{
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #2691e2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: .3s all cubic-bezier(0.19, 1, 0.22, 1);
}
.contact-badge25 span{
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff;
}
.contact-badge25 span::before{
    content: "";
    display: block;
    width: 4.8rem;
    height: 3.2rem;
    margin-bottom: 1.4rem;
    background-image: url(../img/common25/icon_contact25.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.contact-badge25 span::after{
    content: "";
    display: block;
    width: calc(100% - 1.4rem);
    height: calc(100% - 1.4rem);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: -1;
    background-image: url(../img/common25/txt_contact.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    animation: spin_contact_badge25 15s linear infinite;
}
@keyframes spin_contact_badge25 {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    100% {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

.contact-badge25 a:hover{
    transform: scale(1.1);
}

.lf-button{
    display: none !important;
}

@media (max-width: 768px) {

    .pc25{
        display: none;
    }
    .sp25{
        display: block;
    }

    .container25{
        max-width: 100%;
    }
    .C-text25{
        font-size: 1.3rem;
        line-height: calc(5.2 / 2.6);
    }

    .C-button25{
        width: 24rem;
        height: 6rem;
    }
    .C-button25 a{
        font-size: 1.3rem;
    }
    .C-button25__arrow{
        right: 1.5rem;
        transform: translateY(-50%);
    }
    .C-button25__arrow::before{
        width: 3rem;
    }
    .C-button25__arrow::after{
        height: .8rem;
    }

    .contact-badge25{
        width: 10rem;
        height: 10rem;
        right: 1.5rem;
        bottom: 1.5rem;
    }
    .contact-badge25 span{
        font-size: .9rem;
    }
    .contact-badge25 span::before{
        width: 3rem;
        height: 2rem;
        margin-bottom: 1rem;
    }

}



/*-------------------------------
	既存レイアウト
-------------------------------*/

/*----- ヘッダー */
.layout-header{
    max-height: 16.2rem;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    z-index: 99;
}
.layout-header .lh-menu{
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.layout-header .lh-menu_listItem.-contact a{
    background: #1a1a1a;
}
.layout-header .lh-menu_listItem.-contact a:hover{
    background: #2691e2;
}
.layout-main .lm-information_listItem[data-style="primary"] a{
    background: #000;
    color: #fff;
}
.lh-title25{
    margin-bottom: 2.6rem;
    line-height: 1;
    display: block;
}
.lh-title25 a{
    text-decoration: none !important;
}
.lh-title25__sub{
    font-size: 1.2rem;
    margin-bottom: .8rem;
    line-height: 1;
    font-weight: 400;
    color: #4d4d4d;
    display: block;
}
.lh-title25__title{
    margin-bottom: 0;
}
.lh-title25__title img{
    display: block;
}
.lh-information{
    margin-bottom: 0;
}

@media (min-width: 992px) {

    /*----- グローバルナビ */
    .nav-global .ng-listItem{
        position: relative;
    }
    .nav-global .ng-listItem > .ng-list{
        width: 30rem;
        background: #333;
    }
    .nav-global .ng-listItem > .ng-list{
        padding-left: 0;
        padding-right: 0;
    }
    .nav-global .ng-listItem > .ng-list,
    .nav-global .ng-listItem:hover > .ng-list{
        display: block;
    }
    .nav-global .ng-listItem.is-current .ng-list{
        display: inline-block;
    }
    .nav-global .ng-listItem.is-current .ng-list{
        
    }
    .nav-global .ng-listItem > .ng-list::before{
        display: none;
    }
    .nav-global .ng-listItem > .ng-list .ng-listItem > a{
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .nav-global .ng-listItem > .ng-list .ng-listItem > a::after{
        display: none;
    }
    .nav-global .ng-listItem > .ng-list .ng-listItem > a:hover{
        background: #666;
    }
    .nav-global .ng-listItem > .ng-list .ng-listItem > .ng-list{
        top: 0;
        left: 30rem;
    }

    /* Webサイト制作とブランディングのみ左側に表示 */
    .nav-global .ng-listItem.-website > .ng-list,
    .nav-global .ng-listItem.-branding > .ng-list{
        left: unset;
        right: 0;
    }
    .nav-global .ng-listItem.-website > .ng-list .ng-listItem > .ng-list,
    .nav-global .ng-listItem.-branding > .ng-list .ng-listItem > .ng-list{
        left: unset;
        right: 30rem;
    }
    .nav-global .ng-listItem.current_location > .ng-listItem_title > a::before{
        opacity: 1;
    }
}
@media (min-width: 992px) and (max-width: 1240px) {

    .nav-global .ng-listItem.-leaflet > .ng-list{
        left: unset;
        right: 0;
    }
    .nav-global .ng-listItem.-leaflet > .ng-list .ng-listItem > .ng-list{
        left: unset;
        right: 30rem;
    }

}
@media (max-width: 991px) and (min-width: 769px) {

    .lh-title25{
        margin-bottom: 0;
    }
    .lh-title25__sub{
        font-size: .7rem;
        margin-bottom: .5rem;
    }

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

    .lh-title25{
        margin-bottom: 0;
    }
    .lh-title25__sub{
        font-size: .7rem;
        margin-bottom: .5rem;
    }

}

/*----- メインレイアウト */
.layout-main{
    padding-top: 16.2rem;
    overflow-x: hidden;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

    .layout-main{
        padding-top: 5rem;
    }
    .layout-main > .container{
        padding-top: 0;
    }

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

    .layout-main{
        padding-top: 5rem;
    }
    .layout-main > .container{
        padding-top: 0;
    }

}

/*----- ページタイトル */
.component-cover .cc-title_main{
    font-weight: 500;
    margin-bottom: 0;
}
@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .cc-title_main{
        font-size: 1.8rem;
    }

}

/*----- 一覧 */
.category-list{
    counter-reset: number 0;
}
.category-list .cl-item a h3::before{
    counter-increment: number 1;
    content: counter(number,decimal-leading-zero) ".";
    margin-right: .5rem;
}
.category-list.-no_number .cl-item a h3::before{
    content: none;
}
.category-list.-no_number{
    list-style: none;
    padding-left: 0;
}
/*----- 特定のページだけ番号を出さない */
.branding-service .category-list .cl-item a h3::before{
    display: none;
}

/*-------------------------------
	レイアウト設定
-------------------------------*/

/* .home .layout-main{
    padding-top: calc(100vh - 16.2rem);
} */
.home25-section{
    padding-top: 20rem;
    padding-bottom: 20rem;
    border-top-right-radius: 15rem;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #fff;
    position: relative;
    z-index: 0;
}
.home25-section-radius{
    width: 15rem;
    height: 15rem;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}
.home25-section-radius span{
    width: 200%;
    height: 200%;
    display: block;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-mask-image: radial-gradient(circle 15rem at center, transparent 14.9rem, black 15.1rem);
    mask-image: radial-gradient(circle 15rem at center, transparent 14.9rem, black 15.1rem);
    /* clip-path: inset(15rem 15rem 0 0); */
}

/*----- テキストループ */
.home25-section-loopcopy-wrap{
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    transform: translateY(-50%);
}
.home25-section-loopcopy__item{
    margin-right: 6rem;
}
.home25-section-loopcopy__item img{
    width: 100%;
}
.home25-section-loopcopy__inner.swiper-wrapper{
    transition-timing-function: linear;
}

/*----- ヘッダー部分 */
.home25-section-header{
    width: 100%;
    margin-bottom: 6rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.home25-section-header__title{
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
}
.home25-section-header__title::after{
    content: "";
    width: 5.5rem;
    height: .4rem;
    background: #2691e2;
    display: block;
}
.home25-section-header__title-en{
    margin-bottom: 1.5rem;
    letter-spacing: .05em;
    font-weight: 400;
    line-height: 1;
    display: block;
    font-family: "Helvetica Neue", Helvetica, Arial, "Noto Sans Japanese", sans-serif;
}
.home25-section-header__title-jp{
    font-size: 4.4rem;
    margin-bottom: 3.8rem;
    letter-spacing: .05em;
    font-weight: 700;
    line-height: 1;
}
.home25-section-header__text{
    max-width: 74rem;
    font-size: 1.6rem;
    line-height: calc(3.2 / 1.6);
    text-align: right;
}
/* 反転 */
.home25-section-header.-reverse{
    flex-direction: row-reverse;
}
.home25-section-header.-reverse .home25-section-header__text{
    text-align: left;
}
.home25-section-header.-reverse .home25-section-header__title{
    align-items: flex-end;
}

/*----- 真ん中部分 */
.home25-section-middle{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.home25-section-middle__image{
    width: calc(100% - (43rem + 5.2rem));
}
.home25-section-middle__image img{
    width: calc(100% + 8.3rem);
    max-width: calc(100% + 8.3rem);
    border-top-right-radius: 4rem;
    border-bottom-right-radius: 4rem;
    transform: translateX(-8.3rem);
    overflow: hidden;
}
.home25-section-middle__body{
    width: 43rem;
}
.home25-section-middle__item:first-child{
    border-top: 1px dotted #808080;
}
.home25-section-middle__item{
    border-bottom: 1px dotted #808080;
}
.home25-section-middle__item a{
    padding-top: 3.6rem;
    padding-bottom: 3.6rem;
    display: block;
    text-decoration: none !important;
}
.home25-section-middle__item-header{
    width: 100%;
    margin-bottom: 2.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.home25-section-middle__item-arrow{
    width: 4.6rem;
    height: 4.6rem;
    background: #000;
    transition: .3s all ease;
}
.home25-section-middle__item-arrow::before{
    width: 1.8rem;
    background: #fff;
}
.home25-section-middle__item-arrow::after{
    height: .6rem;
    background: #fff;
}
.home25-section-middle__item-title{
    width: calc(100% - 4.6rem);
    font-size: 2.8rem;
    margin-bottom: 0;
    line-height: 1;
    font-weight: 700;
    transition: .3s all ease;
}

.home25-section-middle__item a:hover .home25-section-middle__item-title{
    color: #2691e2;
}
.home25-section-middle__item a:hover .home25-section-middle__item-arrow{
    background: #2691e2;
}

/* 反転 */
.home25-section-middle.-reverse{
    flex-direction: row-reverse;
}
.home25-section-middle.-reverse .home25-section-middle__image img{
    border-top-left-radius: 4rem;
    border-bottom-left-radius: 4rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    transform: translateX(0);
}

/*----- 下部部分 */
.home25-section-bottom{
    margin-top: 10rem;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    gap: .6rem;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}
/* レイアウト1 */
.home25-section-bottom-layout1{
    width: calc((100% / 3) * 1);
    min-height: 46rem;
    padding: 5.5rem 6.5rem 2.5rem;
    position: relative;
    background: #ebebeb;
    transition: .3s all ease;
}
.home25-section-bottom-layout1__title{
    font-size: 2.4rem;
    margin-bottom: 1rem;
    padding-bottom: 2.2rem;
    margin-bottom: 3rem;
    line-height: calc(3.6 / 2.4);
    letter-spacing: .05em;
    font-weight: 700;
    border-bottom: 1px solid #000;
    transition: .3s all ease;
}
.home25-section-bottom-layout1__item-wrap{
    width: 100%;
    margin-bottom: 0;
    padding-left: 0;
    line-height: 1;
    display: flex;
    flex-direction: column;
}
.home25-section-bottom-layout1__item{
    line-height: 1;
    display: inline-block;
    list-style-type: none;
}
.home25-section-bottom-layout1__item:not(:last-child){
    margin-bottom: .5rem;
}
.home25-section-bottom-layout1__item-title{
    width: 100%;
    font-size: 1.5rem;
    line-height: 1;
    margin-bottom: 0;
    font-weight: 400;
    display: inline-block;
    overflow: hidden;
}
.home25-section-bottom-layout1__item-title a{
    width: 100%;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none !important;
}
.home25-section-bottom-layout1__item-arrow{
    margin-right: .7rem;
}
.home25-section-bottom-layout1__item-arrow::before{
    width: 1.4rem;
}
.home25-section-bottom-layout1__item-arrow::after{
    height: .6rem;
}
.home25-section-bottom-layout1__item-text{
    /* width: calc(100% - (1.5rem + .7rem)); */
    padding: .5rem;
    /* display: block; */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.home25-section-bottom-layout1__more{
    font-size: 1.4rem;
    line-height: 1;
    position: absolute;
    right: 3rem;
    bottom: 2.5rem;
    display: inline-block;
    font-family: "Helvetica Neue", Helvetica, Arial, "Noto Sans Japanese", sans-serif;
}
.home25-section-bottom-layout1__more a{
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none !important;
}
.home25-section-bottom-layout1__more-arrow{
    margin-left: 1.5rem;
}
.home25-section-bottom-layout1__more-arrow::before{
    width: 1.8rem;
}
.home25-section-bottom-layout1__more-arrow::after{
    height: .6rem;
}
/* レイアウト違い（2つの場合） */
.home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1{
    width: 50%;
    min-height: 38rem;
    padding-top: 7.5rem;
}
.home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item-wrap{
    flex-direction: row;
    flex-wrap: wrap;
}
.home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item{
    width: 50%;
}
/* マウスオーバー */
.home25-section-bottom-layout1:hover{
    background: #2691e2;
}
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__title{
    border-bottom: 1px solid #fff;
    color: #fff;
}
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__item-title,
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__more{
    color: #fff;
}
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__item-arrow::before,
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__item-arrow::after,
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__more-arrow::before,
.home25-section-bottom-layout1:hover .home25-section-bottom-layout1__more-arrow::after{
    background: #fff;
}
.home25-section-bottom-layout1__item-title a:hover .home25-section-bottom-layout1__item-text{
    background: #fff;
    color: #2691e2;
}

/* レイアウト2 */
.home25-section-bottom-layout2{
    width: calc((100% / 3) * 2);
    gap: .6rem;
    display: flex;
    flex-direction: column;
}
.home25-section-bottom-layout2__item{
    width: 100%;
    height: calc(100% / 3);
    background: #ebebeb;
}
.home25-section-bottom-layout2__item a{
    width: 100%;
    height: 100%;
    padding: 0 7.5rem 0 8rem;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    position: relative;
    text-decoration: none !important;
}
.home25-section-bottom-layout2__item-title{
    font-size: 2.4rem;
    margin-bottom: .5rem;
    line-height: calc(3.6 / 2.4);
    font-weight: 700;
}
.home25-section-bottom-layout2__item-text{
    margin-bottom: 0;
}
.home25-section-bottom-layout2__more{
    font-size: 1.4rem;
    line-height: 1;
    position: absolute;
    right: 2.5rem;
    bottom: 2.5rem;
    display: inline-block;
    align-self: flex-end;
    font-family: "Helvetica Neue", Helvetica, Arial, "Noto Sans Japanese", sans-serif;
}
.home25-section-bottom-layout2__more > span{
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.home25-section-bottom-layout2__more a{
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.home25-section-bottom-layout2__more-arrow{
    margin-left: 1.5rem;
}
.home25-section-bottom-layout2__more-arrow::before{
    width: 2.2rem;
}
.home25-section-bottom-layout2__more-arrow::after{
    height: .6rem;
}
/* レイアウト違い（4つの場合） */
.home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)){
    flex-direction: row;
    flex-wrap: wrap;
}
.home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item{
    width: calc(50% - .3rem);
    height: calc((100% - .6rem) / 2);
}
.home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item a{
    padding-left: 6.5rem;
}
/* マウスオーバー */
.home25-section-bottom-layout2__item a:hover{
    background: #2691e2;
    color: #fff;
}
.home25-section-bottom-layout2__item a:hover .home25-section-bottom-layout2__more-arrow::before,
.home25-section-bottom-layout2__item a:hover .home25-section-bottom-layout2__more-arrow::after{
    background: #fff;
}

/* 色違い */
.home25-section.-black{
    border-radius: 0;
    background: rgba(26,26,26,.9);
}
.home25-section.-black::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 100%;
    right: 0;
    background: rgba(26,26,26,.9);
}
.home25-section.-black .home25-section-header__title-en,
.home25-section.-black .home25-section-header__title-jp,
.home25-section.-black .home25-section-header__text,
.home25-section.-black .home25-section-middle__item-title,
.home25-section.-black .home25-section-middle__item-text{
    color: #fff;
}
.home25-section.-black .home25-section-middle__item-arrow{
    background: #fff;
}
.home25-section.-black .home25-section-middle__item-arrow::before,
.home25-section.-black .home25-section-middle__item-arrow::after{
    background: #000;
}
.home25-section.-black .home25-section-middle__item a:hover .home25-section-middle__item-arrow::before,
.home25-section.-black .home25-section-middle__item a:hover .home25-section-middle__item-arrow::after{
    background: #fff;
}
.home25-section.-black .home25-section-bottom-layout1{
    background: #4d4d4d;
}
.home25-section.-black .home25-section-bottom-layout1:hover{
    background: #2691e2;
}
.home25-section.-black .home25-section-bottom-layout1__title{
    color: #fff;
    border-bottom-color: #fff;
}
.home25-section.-black .home25-section-bottom-layout1__item-text{
    color: #fff;
}
.home25-section.-black .home25-section-bottom-layout1__item-arrow::before,
.home25-section.-black .home25-section-bottom-layout1__item-arrow::after{
    background: #fff;
}
.home25-section.-black .home25-section-bottom-layout1__more{
    color: #fff;
}
.home25-section.-black .home25-section-bottom-layout1__more-arrow::before,
.home25-section.-black .home25-section-bottom-layout1__more-arrow::after{
    background: #fff;
}
.home25-section.-black .home25-section-bottom-layout2 .home25-section-bottom-layout2__item{
    background: #4d4d4d;
}
.home25-section.-black .home25-section-bottom-layout2__item-title{
    color: #fff;
}
.home25-section.-black .home25-section-bottom-layout2__item-text{
    color: #fff;
}
.home25-section.-black .home25-section-bottom-layout2__more{
    color: #fff;
}
.home25-section.-black .home25-section-bottom-layout2__more-arrow::before,
.home25-section.-black .home25-section-bottom-layout2__more-arrow::after{
    background: #fff;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

    .home25-section{
        width: calc(100% + 3rem);
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        padding-top: 10rem;
        padding-bottom: 10rem;
    }
    .home25-section-header{
        flex-direction: column;
        align-items: flex-start;
    }
    .home25-section-header__title{
        width: 100%;
        margin-bottom: 5rem;
    }
    .home25-section-header__text{
        width: 100%;
        max-width: 100%;
        text-align: left;
    }
    .home25-section-header__text br{
        display: none;
    }

    .home25-section-middle__body{
        width: 50%;
    }
    .home25-section-middle__image{
        width: calc(50% - 2.5rem);
    }

    .home25-section-bottom{
        width: calc(100% + 3rem);
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        flex-direction: column;
    }
    .home25-section-bottom-layout2{
        width: 100%;
    }
    .home25-section-bottom-layout2__item a{
        padding: 3rem 1.5rem;
    }
    .home25-section-bottom-layout1{
        width: 100%;
        padding: 3rem 1.5rem;
        min-height: unset;
    }
    .home25-section-bottom-layout1__title br{
        display: none;
    }
    .home25-section-bottom-layout1__body{
        margin-bottom: 2.5rem;
    }

    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)){
        flex-direction: column;
    }

    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1{
        width: 100%;
    }
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1{
        min-height: unset;
        padding-top: 3rem;
    }
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item-wrap{
        flex-direction: column;
    }
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item{
        width: 100%;
    }
    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item{
        width: 100%;
        height: auto;
    }
    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item a{
        padding-left: 1.5rem;
    }

    .home25-section-header.-reverse{
        flex-direction: column;
    }
    .home25-section-header.-reverse .home25-section-header__title{
        align-items: flex-start;
    }

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

    .home25-section{
        border-top-right-radius: 6rem;
        width: calc(100% + 3rem);
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        padding-top: 10rem;
        padding-bottom: 10rem;
    }
    .home25-section-radius{
        width: 6rem;
        height: 6rem;
    }
    .home25-section-radius span{
        -webkit-mask-image: radial-gradient(circle 6rem at center, transparent 5.9rem, black 6.1rem);
        mask-image: radial-gradient(circle 6rem at center, transparent 5.9rem, black 6.1rem);
    }

    /*----- テキストループ */
    .home25-section-loopcopy__item{
        margin-right: 4.5rem;
    }

    /*----- ヘッダー部分 */
    .home25-section-header{
        margin-bottom: 4rem;
        flex-direction: column;
    }
    .home25-section-header__title{
        margin-bottom: 3rem;
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    .home25-section-header__title::after{
        width: 3.9rem;
        height: .3rem;
        margin-left: auto;
        margin-right: auto;
    }
    .home25-section-header__title-en{
        margin-bottom: 1.2rem;
        letter-spacing: .025em;
    }
    .home25-section-header__title-jp{
        font-size: 2.75rem;
        margin-bottom: 2rem;
        letter-spacing: .1em;
    }
    .home25-section-header__text{
        max-width: 100%;
        width: 100%;
        font-size: 1.4rem;
        line-height: calc(5.4 / 2.8);
        text-align: left;
    }
    .home25-section-header__text br{
        display: none;
    }
    /* 反転 */
    .home25-section-header.-reverse{
        flex-direction: column;
    }
    .home25-section-header.-reverse .home25-section-header__text{
        text-align: left;
    }
    .home25-section-header.-reverse .home25-section-header__title{
        align-items: center;
    }

    /*----- 真ん中部分 */
    .home25-section-middle{
        flex-direction: column;
        align-items: flex-end;
    }
    .home25-section-middle__image{
        width: calc(100% + 1.5rem);
        margin-bottom: 3.7rem;
    }
    .home25-section-middle__image img{
        width: 100%;
        max-width: 100%;
        border-top-right-radius: 1.4rem;
        border-bottom-right-radius: 1.4rem;
        transform: translateX(0);
    }
    .home25-section-middle__body{
        width: 100%;
    }
    .home25-section-middle__item a{
        padding-top: 2.1rem;
        padding-bottom: 2.5rem;
    }
    .home25-section-middle__item-header{
        margin-bottom: 1.1rem;
    }
    .home25-section-middle__item-arrow{
        width: 3.5rem;
        height: 3.5rem;
    }
    .home25-section-middle__item-arrow::before{
        width: 1.3rem;
    }
    .home25-section-middle__item-arrow::after{
        height: .4rem;
    }
    .home25-section-middle__item-title{
        width: calc(100% - 3.5rem);
        font-size: 2.1rem;
        margin-bottom: 0;
    }

    /* 反転 */
    .home25-section-middle.-reverse{
        flex-direction: column;
        align-items: flex-start;
    }
    .home25-section-middle.-reverse .home25-section-middle__image img{
        border-top-left-radius: 1.4rem;
        border-bottom-left-radius: 1.4rem;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
        transform: translateX(0);
    }

    /*----- 下部部分 */
    .home25-section-bottom{
        margin-top: 5rem;
        width: calc(100% + 3rem);
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        gap: .5rem;
        flex-direction: column;
    }
    /* レイアウト1 */
    .home25-section-bottom-layout1{
        width: 100%;
        min-height: 35.5rem;
        padding: 2.8rem 3rem 2.7rem;
    }
    .home25-section-bottom-layout1__title{
        font-size: 1.9rem;
        margin-bottom: 1rem;
        padding-bottom: 1.8rem;
        margin-bottom: 1.8rem;
        line-height: 1;
        letter-spacing: 0;
    }
    .home25-section-bottom-layout1__title br{
        display: none;
    }
    .home25-section-bottom-layout1__item-title{
        font-size: 1.4rem;
    }
    .home25-section-bottom-layout1__item-arrow{
        margin-right: .6rem;
    }
    .home25-section-bottom-layout1__item-arrow::before{
        width: 1.3rem;
    }
    .home25-section-bottom-layout1__item-arrow::after{
        height: .5rem;
    }
    .home25-section-bottom-layout1__item-text br{
        display: none !important;
    }
    .home25-section-bottom-layout1__more{
        font-size: 1.3rem;
        bottom: 2.8rem;
    }
    .home25-section-bottom-layout1__more-arrow::before{
        width: 2.1rem;
    }
    .home25-section-bottom-layout1__more-arrow::after{
        height: .5rem;
    }
    /* レイアウト違い（2つの場合） */
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1{
        width: 100%;
        min-height: 38.5rem;
        padding-top: 3rem;
    }
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item-wrap{
        flex-direction: column;
    }
    .home25-section-bottom:has(.home25-section-bottom-layout1:first-child + .home25-section-bottom-layout1:last-child) .home25-section-bottom-layout1__item{
        width: 100%;
    }

    /* レイアウト2 */
    .home25-section-bottom-layout2{
        width: 100%;
        gap: .5rem;
    }
    .home25-section-bottom-layout2__item{
        height: 20.5rem;
    }
    .home25-section-bottom-layout2__item a{
        padding: 0 3rem;
    }
    .home25-section-bottom-layout2__item-title{
        width: 100%;
        font-size: 1.9rem;
        margin-bottom: 1.5rem;
        padding-bottom: 1.8rem;
        line-height: 1;
        border-bottom: 1px solid #1a1a1a;
        transition: .3s all ease;
    }
    .home25-section-bottom-layout2__item-text{
        font-size: 1.4rem;
        line-height: calc(5.6 / 2.8);
        margin-bottom: 2rem;
    }
    .home25-section-bottom-layout2__more{
        font-size: 1.3rem;
        right: 3rem;
        bottom: 2.8rem;
    }
    .home25-section-bottom-layout2__more-arrow::before{
        width: 2.1rem;
    }
    .home25-section-bottom-layout2__more-arrow::after{
        height: .5rem;
    }
    /* レイアウト違い（4つの場合） */
    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)){
        flex-direction: column;
    }
    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item{
        width: 100%;
        height: 21rem;
    }
    .home25-section-bottom-layout2:has(.home25-section-bottom-layout2__item:nth-of-type(4)) .home25-section-bottom-layout2__item a{
        padding-left: 3rem;
    }
    /* マウスオーバー */
    .home25-section-bottom-layout2__item a:hover .home25-section-bottom-layout2__item-title{
        border-bottom-color: #fff;
    }
    /* 色違い */
    .home25-section.-black .home25-section-bottom-layout2__item-title{
        border-bottom-color: #fff;
    }
}



/*-------------------------------
	メインビジュアル
-------------------------------*/

.Mainvisual25{
    width: 100%;
    height: calc(100vh - 16.2rem);
    /* padding-top: 16.2rem; */
    position: relative;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}
.Mainvisual25__inner{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    position: relative;
}
.Mainvisual25-copy{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
    text-align: center;
}
.Mainvisual25-copy__title-wrap{
    margin-bottom: 0;
    position: relative;
}
.Mainvisual25-copy__title1{
    width: 50.9rem;
    margin-bottom: 4rem;
}
.Mainvisual25-copy__title1 img{
    width: 100%;
}
.Mainvisual25-copy__title2{
    width: 19.3rem;
    position: absolute;
    left: -9rem;
    top: -6.5rem;
}
.Mainvisual25-copy__title2 img{
    width: 100%;
}
.Mainvisual25-copy__text{
    font-size: 2rem;
    letter-spacing: .05em;
    font-weight: 500;
    line-height: calc(4 / 2);
    color: #fff;
}
.Mainvisual25-loopcopy-wrap{
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.Mainvisual25-loopcopy__inner.swiper-wrapper{
    transition-timing-function: linear;
}
.Mainvisual25-loopcopy__item{
    width: 170rem;
    margin-right: 8.5rem;
}
.Mainvisual25-loopcopy__item img{
    width: 100%;
}
.Mainvisual25-video{
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.Mainvisual25-video::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.4);
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.Mainvisual25-video video{
    width: 100%;
    height: 100%;
    position: relative;
    z-index: -1;
    object-fit: cover;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

    .Mainvisual25{
        height: calc(100vh - 5rem);
        /* padding-top: 5rem; */
    }

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

    .Mainvisual25{
        width: calc(100% + 3rem);
        height: calc(100vh - 5rem);
        margin-left: -1.5rem;
        margin-right: -1.5rem;
    }
    .Mainvisual25-copy{
        width: 100%;
    }
    .Mainvisual25-copy__title-wrap{
        display: inline-block;
    }
    .Mainvisual25-copy__title1{
        width: 30.1rem;
        margin-bottom: 1.5rem;
    }
    .Mainvisual25-copy__title2{
        width: 9.6rem;
        left: -2.2rem;
        top: -4.5rem;
    }
    .Mainvisual25-copy__text{
        font-size: 1.5rem;
        line-height: calc(6 / 3);
    }
    .Mainvisual25-loopcopy-wrap{
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .Mainvisual25-loopcopy__item{
        width: 89.8rem;
        margin-right: 4.5rem;
    }

}



/*-------------------------------
	取引実績
-------------------------------*/

.Results25{
    padding-top: 10rem;
    padding-bottom: 16rem;
    border-top-right-radius: 0;
}
.Results25-logo-wrap{
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}
.Results25-logo:not(:last-child){
    margin-bottom: 1rem;
}
.Results25-logo__inner.swiper-wrapper{
    transition-timing-function: linear;
}
.Results25-logo__item{
    margin-left: 2.5rem;
    margin-right: 2.5rem;
}
.Results25-logo__item img{
    width: 100%;
}
.Results25-logo__item.-result1{
    width: 170.3rem;
}
.Results25-logo__item.-result2{
    width: 155.7rem;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

    .Results25-header{
        flex-direction: row;
        align-items: center;
    }
    .Results25-header__title{
        width: 50%;
        margin-bottom: 0;
    }

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

    .Results25{
        padding-top: 6.8rem;
        padding-bottom: 10rem;
        border-top-right-radius: 0;
    }
    .Results25-header__title{
        margin-bottom: 0;
    }
    .Results25-logo-wrap{
        width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    .Results25-logo:not(:last-child){
        margin-bottom: 0;
    }
    .Results25-logo:not(:first-child){
        margin-top: -2.5rem;
        mix-blend-mode: multiply;
    }
    .Results25-logo__inner.swiper-wrapper{
        transition-timing-function: linear;
    }
    .Results25-logo__item{
        margin-left: 2.5rem;
        margin-right: 2.5rem;
    }
    .Results25-logo__item img{
        width: 100%;
    }
    .Results25-logo__item.-result1{
        width: 170.3rem;
    }
    .Results25-logo__item.-result2{
        width: 155.7rem;
    }
    
    .Results25 .C-button25{
        margin-left: auto;
        margin-right: auto;
    }

}



/*-------------------------------
	パンフレット作成
-------------------------------*/

.Pamphlet25-loopcopy__item{
    width: 318.8rem !important;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .Pamphlet25-loopcopy__item{
        width: 168.5rem !important;
    }

}



/*-------------------------------
	会社案内作成
-------------------------------*/

.Brochure25-loopcopy__item{
    width: 408rem !important;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .Brochure25-loopcopy__item{
        width: 215.6rem !important;
    }

}



/*-------------------------------
	カタログ作成
-------------------------------*/

.Catalog25-loopcopy__item{
    width: 260rem !important;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .Catalog25-loopcopy__item{
        width: 162.4rem !important;
    }

}



/*-------------------------------
	リーフレット作成
-------------------------------*/

.Leaflet25-loopcopy__item{
    width: 249.8rem !important;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .Leaflet25-loopcopy__item{
        width: 149.1rem !important;
    }

}



/*-------------------------------
	Webサイト制作
-------------------------------*/

.Website25-loopcopy__item{
    width: 219.3rem !important;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

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

    .Website25-loopcopy__item{
        width: 138.1rem !important;
    }

}



/*-------------------------------
	ブランディング
-------------------------------*/

.Branding25{
    padding-bottom: 15rem;
}
.Branding25-loopcopy__item{
    width: 145.5rem !important;
}
.Branding25__image{
    margin-bottom: 5rem;
}
.Branding25__image img{
    width: 100%;
}
.Branding25-middle{
    width: 100%;
    max-width: 78.8rem;
    margin-bottom: 10rem;
    border-top: 1px dotted #808080;
    border-bottom: 1px dotted #808080;
    margin-left: auto;
    margin-right: auto;
}
.Branding25-middle a{
    padding-top: 4rem;
    padding-bottom: 3.8rem;
    display: block;
    text-decoration: none !important;
}
.Branding25-middle__header{
    width: 100%;
    margin-bottom: 3rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.Branding25-middle__title{
    width: calc(100% - 4.6rem);
    font-size: 2.8rem;
    margin-bottom: 0;
    line-height: 1;
    font-weight: 700;
    transition: .3s all ease;   
}
.Branding25-middle__arrow{
    width: 4.6rem;
    height: 4.6rem;
    background: #000;
    transition: .3s all ease;   
}
.Branding25-middle__arrow::before{
    width: 1.8rem;
    background: #fff;
}
.Branding25-middle__arrow::after{
    height: .6rem;
    background: #fff;
}
.Branding25-middle a:hover .Branding25-middle__title{
    color: #2691e2;
}
.Branding25-middle a:hover .Branding25-middle__arrow{
    background: #2691e2;
}
.Branding25-article-wrap{
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}
.Branding25-article-wrap::after{
    content: "";
    width: calc((100% - (3.6rem * 2)) / 3);
    height: 0;
    order: 9999;
    display: block;
}
.Branding25-article{
    width: calc((100% - (3.6rem * 2)) / 3);
}
.Branding25-article:not(:nth-last-of-type(-n+3)){
    margin-bottom: 4.8rem;
}
.Branding25-article a{
    display: block;
    text-decoration: none !important;
}
.Branding25-article__image{
    width: 100%;
    margin-bottom: 2.5rem;
    display: block;
    transition: .3s all ease;
}
.Branding25-article__image img{
    width: 100%;
}
.Branding25-article__title{
    font-size: 2rem;
    margin-bottom: 1.2rem;
    font-weight: 700;
    line-height: calc(2.8 / 2);
    transition: .3s all ease;
}

.Branding25-article a:hover .Branding25-article__image{
    opacity: .7;
}
.Branding25-article a:hover .Branding25-article__title{
    color: #2691e2;
}

.Branding25-section-bottom{
    margin-top: 13rem;
}
.Branding25 .home25-section-bottom-layout1{
    background: #4d4d4d;
}
.Branding25 .home25-section-bottom-layout1__title{
    color: #fff;
    border-bottom-color: #fff;
}
.Branding25 .home25-section-bottom-layout1__item-text{
    color: #fff;
}
.Branding25 .home25-section-bottom-layout1__item-arrow::before,
.Branding25 .home25-section-bottom-layout1__item-arrow::after{
    background: #fff;
}
.Branding25 .home25-section-bottom-layout1:hover{
    background: #2691e2;
}
.Branding25 .home25-section-bottom-layout1__more{
    color: #fff;
}
.Branding25 .home25-section-bottom-layout1__more-arrow::before,
.Branding25 .home25-section-bottom-layout1__more-arrow::after{
    background: #fff;
}

@media (min-width: 992px) {

}
@media (max-width: 991px) and (min-width: 769px) {

    .Branding25{
        padding-bottom: 10rem;
    }
    .Branding25-article-wrap::after{
        width: calc((100% - (1.5rem * 1)) / 2);
    }
    .Branding25-article{
        width: calc((100% - (1.5rem * 1)) / 2);
    }
    .Branding25-article:not(:nth-last-of-type(-n+2)){
        margin-bottom: 4.8rem;
    }

    .Branding25-section-bottom{
        margin-top: 10rem;
    }

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

    .Branding25{
        padding-bottom: 10rem;
    }
    .Branding25-loopcopy__item{
        width: 89.8rem !important;
    }
    .Branding25 .home25-section-header .home25-section-header__title{
        align-items: center;
    }
    .Branding25 .home25-section-header__text br{
        display: block;
    }
    .Branding25__image{
        margin-bottom: 4.8rem;
    }
    .Branding25-middle{
        max-width: 100%;
        margin-bottom: 5rem;
    }
    .Branding25-middle a{
        padding-top: 2.1rem;
        padding-bottom: 2.5rem;
    }
    .Branding25-middle__header{
        margin-bottom: 1.1rem;
    }
    .Branding25-middle__title{
        width: calc(100% - 3.5rem);
        font-size: 2.1rem;
        margin-bottom: 0;
    }
    .Branding25-middle__arrow{
        width: 3.5rem;
        height: 3.5rem;
    }
    .Branding25-middle__arrow::before{
        width: 1.3rem;
    }
    .Branding25-middle__arrow::after{
        height: .4rem;
    }
    .Branding25-article-wrap::after{
        width: calc((100% - (2rem * 1)) / 2);
    }
    .Branding25-article{
        width: calc((100% - (2rem * 1)) / 2);
    }
    .Branding25-article:not(:nth-last-of-type(-n+2)){
        margin-bottom: 2rem;
    }
    .Branding25-article__image{
        margin-bottom: 1.3rem;
    }
    .Branding25-article__title{
        font-size: 1.5rem;
        line-height: calc(4.5 / 3);
        margin-bottom: .6rem;
    }
    .Branding25-article__text{
        font-size: 1.2rem;
        line-height: calc(4.8 / 2.4);
        text-align: justify;
    }

    .Branding25-section-bottom{
        margin-top: 5rem;
    }

}




/*-------------------------------
	下層ページ用文字サイズ調整
-------------------------------*/

@media screen and (min-width: 768px){

    .category-list .cl-item_body{
        font-size: 1.6rem;
    }
    .module-section{
        font-size: 1.6rem;
    }

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

    body{
        font-size: 1.4rem;
    }
    .category-list .cl-item_body {
        font-size: 1.4rem;
    }
        /*追加*/
    .module-section .ms-lead_title{
        font-size: 1.6rem;
       
    }
    .module-section .ms-heading{
        font-size: 1.6rem;
        
    }
    .module-section p{
        font-size: 1.5rem;
        
    }
    .module-section .ms-heading{
        font-size: 1.6rem;
      
    }
    
}
/*-------------------------------
	スライダー追加
-------------------------------*/
.module-section .module-section:has(.parts-swiper-container) {
    margin-top: 0;
}
.parts-swiper-container {
    overflow: hidden;
}
.parts-swiper-slide{
    width: calc((100% - 2rem) / 2) !important;
    height: 38.8rem !important;
}
.parts-swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.parts-swiper-button-next,
.parts-swiper-button-prev {
    width: 5rem;          
    height: 5rem;
    background-color: #3C3C3C;  
    top: 50%;                 
    transform: translateY(-50%);
    color: white;             
    position: absolute;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}
.parts-swiper-button-prev{
    left: 0;
}
.parts-swiper-button-next{
    right: 0;
}

.parts-swiper-button-prev::after,
.parts-swiper-button-next::after {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff; 
    border-right: 2px solid #fff;
}

.parts-swiper-button-prev::after {
    transform: rotate(-135deg);
}
.parts-swiper-button-next::after {
    transform: rotate(45deg);
}
.parts-swiper-pagination{
    position:static;
}
.parts-swiper-pagination{
    position: absolute;
    bottom: -5rem !important;
}
.swiper-pagination-bullet-active{
    background:#000;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
    margin: 0 10px!important;
}
.parts-swiper-container {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}
.parts-swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff; 
}
.parts-swiper-slide img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.parts-swiper-container.is-single .parts-swiper-slide {
    margin-right: 2rem;
}
.parts-swiper-container.is-single .parts-swiper-button-next,
.parts-swiper-container.is-single .parts-swiper-button-prev{
    display: none;
}
.parts-swiper-container.is-single .parts-swiper-button-next::after,
.parts-swiper-container.is-single .parts-swiper-button-prev::after{
    display: none;
}
/*余白調整*/
.module-section .ms-title + .lm-container{
    margin-bottom: 5rem;
}
.module-section .ms-unit {
   margin-bottom: 5rem; 
}
@media (max-width: 768px) {
    
.lm-container:has(.parts-swiper-container){
    margin-bottom: 8rem;
}
  .parts-swiper-slide{
    width: 80%!important;
    height: 24.3rem !important;
    padding: 0;
  }
  .parts-swiper-button-next,
  .parts-swiper-button-prev{
    width: 4rem;
    height: 4rem;
  }
    parts-swiper-container.is-single .parts-swiper-slide {
        margin-right: 0;
    }
  .parts-swiper-wrapper:has(.swiper-slide:only-child) {
        justify-content: left !important; 
        transform: translate3d(0px, 0, 0)!important; 
    }
    /*
    .parts-swiper-slide:only-child{
        padding: 0!important; 
    }
    .parts-swiper-slide:only-child{
        height: auto!important; 
    }
        */
    .parts-swiper-pagination{
        bottom: -3rem !important;
    }
}