@charset "utf-8";

/*-----------------------------------------------
    index
-----------------------------------------------*/
/* secHero */
.secHero{
    position: relative;
    z-index: 1;
}
.secHero .txtBox{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.secHero .txtRoman{
    font-size: var(--pcFontSize22);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing22_200);
    /* text-shadow: 2px 2px 40px rgba(0, 0, 0, .2), -2px 2px 40px rgba(0, 0, 0, .2), 2px -2px 40px rgba(0, 0, 0, .2), -2px -2px 40px rgba(0, 0, 0, .2); */
}
.secHero .txtHero{
    font-size: var(--pcFontSize80);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing80_150);
    line-height: var(--pcLineHeight80_120);
    margin: 3.5rem 0 3rem;
    /* text-shadow: 2px 2px 40px rgba(0, 0, 0, .2), -2px 2px 40px rgba(0, 0, 0, .2), 2px -2px 40px rgba(0, 0, 0, .2), -2px -2px 40px rgba(0, 0, 0, .2); */
}
.secHero .txtBorder{
    font-size: var(--pcFontSize22);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing22_150);
    border: solid 1px #fff;
    padding: 3rem 4.2rem 2.6rem;
    /* text-shadow: 2px 2px 40px rgba(0, 0, 0, .2), -2px 2px 40px rgba(0, 0, 0, .2), 2px -2px 40px rgba(0, 0, 0, .2), -2px -2px 40px rgba(0, 0, 0, .2);
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, .2), 0px 0px 40px 0px rgba(0, 0, 0, .2) inset; */
}
.secHero .boxSlider{
    position: relative;
    z-index: 0;
}
.secHero .swiper-slide{
    position: relative;
    overflow: hidden;
    background: #fff;
    height: 100vh;
}
.secHero .swiper-slide .img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.secHero .swiper-slide .img img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    font-family: 'object-fit: cover;'
}
.secHero .swiper-slide-active .img,
.secHero .swiper-slide-duplicate-active .img,
.secHero .swiper-slide-active .img,
.secHero .swiper-slide-prev .img{
    animation: zoomUp 11s linear 0s 1 normal both;
}
@keyframes zoomUp {
    0% {
        transform: scale(1.15);
        -webkit-transform: scale(1.15);
    }
    100% {
        transform: scale(1);
        -webkit-transform: scale(1);
    }
}

@media only screen and (max-width:1215px){
    .secHero .txtBox{
        top: 42vw;
        justify-content: flex-start;
    }
    .secHero .txtRoman{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_100);
    }
    .secHero .txtHero{
        font-size: var(--spFontSize32);
        letter-spacing: var(--spLetterSpacing32_100);
        line-height: var(--spLineHeight32_46);
        margin: 1.7rem 0 1.5rem;
    }
    .secHero .txtBorder{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        padding: 1.5rem 1.8rem 1.3rem;
    }
    .secHero .txtHeader{
        font-size: var(--spFontSize11);
        font-weight: bold;
        letter-spacing: var(--spLetterSpacing11_50);
        padding: 3.1rem 0;
        text-align: center;
        background: url(../img/common/bgBody.png) repeat;
    }
}

.secHero .boxScroll{
    width: 1px;
    height: 10rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
    background: rgba(255, 255, 255, 0.25);
}
.secHero .boxScroll::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(to bottom, #efefef 50%, rgba(255, 255, 255, 0) 50%);
    background-position: 0 -12rem;
    background-size: 100% 200%;
    animation: scrolldown 2.2s cubic-bezier(0.76, 0, 0.3, 1) forwards infinite;
}
@keyframes scrolldown{
    0%{
        background-position: 0 100%;
    }
    75%{
        background-position: 0 0;
    }
    100%{
        background-position: 0 -100%;
    }
}

/* secPickup */
.secPickup{
    padding: 8rem 0 0;
    position: relative;
    z-index: 1;
}
.secPickup .titPickup{
    font-size: var(--pcFontSize20);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing20_50);
    display: flex;
    margin-bottom: 1rem;
}
.secPickup .titPickup::after{
    content: '';
    display: block;
    width: 5rem;
    height: 1px;
    background-color: var(--textColor);
    margin: auto 0 auto 2rem;
}
.secPickup .boxSlider{
    position: relative;
    overflow: hidden;
    padding: 4rem 0;
}
.secPickup .swiper{
    overflow: visible;
    width: 38rem;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    left: -3rem; /* 中央スライドの位置調整 */
}
.secPickup .boxSlider.disabled .swiper{
    left: 0;
}
.secPickup .swiper-slide .img{
    display: block;
    padding: 0 1rem;
    transition: all 0.2s ease-out;
    transform-origin: center center;
}
.secPickup .swiper-slide .imgInner{
    width: 36rem;
    aspect-ratio: 42 / 56;
    border-radius: 1rem;
    overflow: hidden;
}
.secPickup .swiper-slide img{
    width: 100%;
    height: auto;
}
.secPickup .swiper-slide.swiper-slide-active{
    z-index: 10;
    margin: 0 3rem; /* 中央スライドの左右の余白 */
}
.secPickup .swiper-slide.swiper-slide-active .img{
    transform: scale(calc(42 / 36)); /* 中央スライドの拡大 */
}
.secPickup .boxControl{
    width: 38rem;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}
.secPickup .boxControl .swiper-button-prev,
.secPickup .boxControl .swiper-button-next{
    width: 6rem;
    height: 6rem;
    background-color: var(--textColor);
    border-radius: 50%;
    position: absolute;
    top: -27rem;
    left: auto;
    right: auto;
    margin-top: 0;
}
.secPickup .boxControl .swiper-button-prev{
    left: -44rem;
}
.secPickup .boxControl .swiper-button-next{
    right: -44rem;
}
.secPickup .boxControl .swiper-button-prev::before,
.secPickup .boxControl .swiper-button-next::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 1.2rem;
    height: 1.2rem;
    margin: auto;
    border-top: 0.4rem solid #fff;
    border-right: 0.4rem solid #fff;
}
.secPickup .boxControl .swiper-button-prev::before{
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}
.secPickup .boxControl .swiper-button-next::before{
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.secPickup .swiper-button-prev::after,
.secPickup .swiper-button-next::after{
    display: none;
}
@media only screen and (max-width:1215px){
    .secPickup{
        padding: 0;
    }
    .secPickup .boxSlider{
        padding: 2.8rem 0;
    }
    .secPickup .swiper{
        width: 25.3rem;
        left: -2.1rem; /* 中央スライドの位置調整 */
    }
    .secPickup .swiper-slide .img{
        padding: 0 1rem;
    }
    .secPickup .swiper-slide .imgInner{
        width: 23.3rem;
        border-radius: 0.5rem;
    }
    .secPickup .swiper-slide.swiper-slide-active{
        margin: 0 2.1rem; /* 中央スライドの左右の余白 */
    }
    .secPickup .swiper-slide.swiper-slide-active .img{
        transform: scale(calc(27.5 / 23.3)); /* 中央スライドの拡大 */
        /* transform: scale(1); */
    }
}

/* secConcept */
.secConcept{
    color: #fff;
    background-color: #7f8c58;
    background-position: center top;
    background-size: cover;
    background-repeat: repeat;
    margin-top: -17rem;
    z-index: 0;
    padding: 30rem 0 34rem;
    position: relative;
}
.secConcept.lazyloaded{
    background-image: url(../img/index/bgConcept.png);
}
.secConcept .boxTxt{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.secConcept .tit{
    font-size: var(--pcFontSize50);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing50_300);
    line-height: var(--pcLineHeight50_90);
    margin-bottom: 5.5rem;
}
.secConcept .boxTxtInner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.secConcept .txt{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    line-height: var(--pcLineHeight18_50);
    margin: 0 0 6.2rem;
}
.secConcept .scrollWrapper{
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: .1;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
}
.secConcept .scrollTrack{
    font-size: var(--pcFontSize140);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing140_20);
    display: inline-block;
    animation: scrollLeft 60s linear infinite;
}
.secConcept .scrollTrack span {
    display: inline-block;
    padding-right: 0; /* スペースなし */
    white-space: nowrap;
}
@keyframes scrollLeft {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-50%);
    }
}
.secConcept .boxImg{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.secConcept .boxImg .img{
    position: absolute;
}
.secConcept .boxImg .img01{
    top: 28.3rem;
    right: -1rem;
    z-index: 1;
    width: 40rem;
}
.secConcept .boxImg .img02{
    top: 71.3rem;
    right: -13rem;
    z-index: 2;
    width: 30rem;
}
.secConcept .boxImg .img03{
    top: 93rem;
    right: 12.7rem;
    z-index: 1;
    width: 46rem;
}
.secConcept .boxImg .img04{
    top: 40.6rem;
    left: -11.5rem;
    z-index: 2;
    width: 35rem;
}
.secConcept .boxImg .img05{
    top: 76rem;
    left: 15rem;
    z-index: 1;
    width: 25rem;
}
@media only screen and (max-width:1215px){
    .secConcept{
        margin-top: -8rem;
        padding: 12.8rem 0 10rem;
    }
    .secConcept .tit{
        font-size: var(--spFontSize26);
        letter-spacing: var(--spLetterSpacing26_150);
        line-height: var(--spLineHeight26_50);
        margin-bottom: 1.5rem;
        width: 100%;
    }
    .secConcept .boxTxtInner{
        width: 100%;
    }
    .secConcept .txt{
        font-size: var(--spFontSize14);
        font-weight: bold;
        letter-spacing: var(--spLetterSpacing14_50);
        line-height: var(--spLineHeight14_40);
        margin: 0;
    }
    .secConcept .cmnBtn{
        margin: 4.5rem auto 0;
    }
    .secConcept .scrollTrack{
        font-size: var(--spFontSize60);
        letter-spacing: 0;
        animation: scrollLeft 60s linear infinite;
    }
    .secConcept .boxImg{
        position: relative;
        aspect-ratio: 337 / 537;
        margin: 4.5rem auto 0;
        max-width: 33.7rem;
    }
    .secConcept .boxImg .img01{
        width: calc(187 / 337 * 100%);
        top: 0;
        right: auto;
        left: 0;
        z-index: 1;
    }
    .secConcept .boxImg .img02{
        width: calc(112 / 337 * 100%);
        top: calc(83 / 537 * 100%);
        right: 0;
        z-index: 3;
    }
    .secConcept .boxImg .img03{
        width: calc(195 / 337 * 100%);
        top: calc(165 / 537 * 100%);
        right: calc(83 / 337 * 100%);
        z-index: 2;
    }
    .secConcept .boxImg .img04{
        width: calc( 186 / 337 * 100%);
        top: calc(304 / 537 * 100%);
        left: 0;
    }
    .secConcept .boxImg .img05{
        width: calc( 120 / 337 * 100%);
        top: calc(304 / 537 * 100%);
        left: auto;
        right: 0;
    }
}

/* secTopTit */
.secTopTit{
    position: relative;
    margin-bottom: 5rem;
}
.secTopTit .boxTit{
    display: flex;
}
.secTopTit .titTopRoman{
    font-size: var(--pcFontSize85);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing8_50);
}
.secTopTit .titTop{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    position: relative;
    margin: 5.3rem 0 0 5.3rem;
}
.secTopTit .titTop::before{
    content: "";
    display: block;
    width: 1px;
    height: 3rem;
    background-color: var(--textColor);
    position: absolute;
    top: -0.8rem;
    left: -2.2rem;
    transform: rotate(30deg);
}
.secTopTit .txtTop{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing16_100);
    line-height: var(--pcLineHeight16_34);
    margin: 3.5rem 0 0;
}
.secTopTit .cmnBtn{
    position: absolute;
    top: 1.2rem;
    right: 0;
}
@media only screen and (max-width:1215px){
    .secTopTit{
        margin-bottom: 2.5rem;
    }
    .secTopTit .titTopRoman{
        font-size: var(--spFontSize36);
        letter-spacing: var(--spLetterSpacing36_30);
    }
    .secTopTit .titTop{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        line-height: var(--spLineHeight11_20);
        margin: 1.4rem 0 0 2rem;
        flex: 1;
    }
    .secTopTit .titTop::before{
        height: 1.5rem;
        top: 0.2rem;
        left: -0.8rem;
    }
    .secTopTit .txtTop{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_22);
        margin: 1rem 0 0;
    }
}

/* secEvent */
.secEvent{
    margin-top: 14rem;
}
.secEvent .secTopTit .cmnBtn{
    top: 12rem;
}
.secEvent .secTopTit{
    margin-bottom: 2.5rem;
}
@media only screen and (max-width:1215px){
    .secEvent{
        margin-top: 7rem;
    }
    .secEvent .secTopTit{
        margin-bottom: 2.5rem;
    }
}

/* secEventCategory */
.secEventCategory .categorylist{
    display: flex;
    flex-wrap: wrap;
}
.secEventCategory .categoryitem{
    display: inline-block;
    border-bottom: 0.1rem solid;
    border-color: var(--textColorAlpha20);
}
.secEventCategory .linktxt{
    display: block;
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_28);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing22_50);
    min-width: 20rem;
    text-align: center;
    padding: 2rem 2rem;
    padding-bottom: 2.7rem;
    position: relative;
    color: var(--textColorAlpha20);
}
.secEventCategory .linktxt.on{
    color: var(--textColor);
}
.secEventCategory .linktxt.on::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 0.3rem;
    background-color: var(--textColor);
    left: 0;
    bottom: -0.1rem;
}
.secEventCategory .shopCategory{
    margin: 0 auto;
    margin-top: 4rem;
    width: fit-content;
}
.secEventCategory .list{
    display: flex;
    flex-wrap: wrap;
}
.secEventCategory .item{
    min-width: 18rem;
    margin-right: 2rem;
    margin-bottom: 2rem;
}
.secEventCategory .shoplink{
    width: 100%;
    min-height: 5.4rem;
    display: flex;
    align-items: center;
    background-color: #fff;
    color: var(--textColor);
    border: 0.1rem solid;
    border-color: var(--textColor);
    border-radius: 10rem;
}
.secEventCategory .shoplink.active{
    background-color: var(--textColor);
    color: #fff;
}
.secEventCategory .shoptxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    font-weight: bold;
    width: 100%;
    text-align: center;
    padding: 1rem;
}
@media only screen and (max-width:1215px){
    /* secNewsCategory */
    .secEventCategory .categorylist{
        width: 100%;
        justify-content: flex-start;
    }
    .secEventCategory .categoryitem{
        width: calc(100% / 3);
    }
    .secEventCategory .linktxt{
        font-size: var(--spFontSize13);
        width: 100%;
        min-width: 0;
        padding: 0 1rem;
        padding-bottom: 1rem;
    }
    .secEventCategory .linktxt.on::after{
        height: 0.2rem;
    }
    .secEventCategory .shopCategory{
        margin-top: 2rem;
        width: 100%;
    }
    .secEventCategory .list{
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .secEventCategory .item{
        min-width:0;
        width: calc((100% - 2rem) / 3);
        margin-right: 1rem;
        margin-bottom: 0;
    }
    .secEventCategory .item + .item{
        margin-left:0;
    }
    .secEventCategory .item:nth-child(3n){
        margin-right: 0;
    }
    .secEventCategory .item:nth-child(n + 4){
        margin-top: 1rem;
    }
    .secEventCategory .shoplink{
        min-height: 4rem;
        border-radius: 2rem;
    }
    .secEventCategory .shoptxt{
        font-size: var(--spFontSize13);
        padding: 0.5rem;
    }
}
/* secEventlist */
.secEventlist{
    margin-top: 4rem;
}
.secEvent .sliderEvent{
    position: relative;
}
.secEvent .sliderEvent:nth-child(n+2){
    display: none;
}
.secEventlist .swiper{
    width: 45rem;
    overflow: visible;
    margin: 0;
}
.secEventlist .linkbox{
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    padding-bottom: calc(4rem + 2.2rem);
}
.secEventlist .linkbox::after{
    content: "";
    position: absolute;
    width: calc(100% - 14.6rem - 2rem);
    height: 0.1rem;
    bottom: 2rem;
    left: 0;
    background-color: var(--textColor);
}
.secEventlist .linkInner{
    width: 100%;
    height: 100%;
}
.secEventlist .imgArea{
    position: relative;
}
.secEventlist .imgBox{
    width: 100%;
    height: 0;
    padding-top: calc((600 / 400) * 100%);
    border-radius: 1rem;
    overflow: hidden;
    z-index: 1;
}
.secEventlist .txtArea{
    width: 100%;
    margin-top:3rem;
}
.secEventlist .onbox{
    position: relative;
}
.secEventlist .tagbox{
    max-width: 100%;
}
.secEventlist .catrgorytags{
    display: flex;
    flex-wrap: wrap;
}
.secEventlist .tag{
    margin-bottom: 0.5rem;
    min-width: 12rem;
    max-width: 100%;
    margin-right: 0.5rem;
    white-space: nowrap;
}
.secEventlist .tag.New{
    min-width:3.5rem;
    display: flex;
    align-items: center;
}
.secEventlist .tag:last-child{
    margin-right: 0;
}
.secEventlist .taginner{
    display: flex;
    align-items: center;
    width: 100%;
    height: 3rem;
    padding: 0 0.5rem;
    border-radius: 0.5rem;
    border: 0.1rem solid;
    border-color: var(--textColor);
}
.secEventlist .taginner.newIcon{
    background-color: var(--newIconColor);
    border-color: var(--newIconColor);
    height: 2rem;
}
.secEventlist .taginner.shop{
    background-color: var(--shopColor);
    border-color: var(--shopColor);
    color: #fff;
}
.secEventlist .taginner.event{
    color: #fff;
    background-color: var(--keyColor);
    border-color: var(--keyColor);
}
.secEventlist .tagtxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_26);
    font-weight: bold;
    display: inline-block;
    text-align: center;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}
.secEventlist .newIcon .tagtxt{
    font-size: var(--pcFontSize10);
}
.secEventlist .tit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_38);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc((var(--pcLineHeight22_38) * var(--pcFontSize22)) * 2);
    margin-top: 1.3rem;
}
.secEventlist .daylist{
    display: flex;
    align-items: flex-end;
    color: var(--keyColor);
}
.secEventlist .dayitem{
    display: inline-block;
    position: relative;
    text-align: left;
}
.secEventlist .dayitem + .dayitem{
    padding-left: 3rem;
}
.secEventlist .dayitem + .dayitem::before{
    content: "～";
    position: absolute;
    left: 0.5rem;
    bottom: 0;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_31);
    font-weight: bold;
}
.secEventlist .dayitem .yeartxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_31);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: bold;
}
.secEventlist .dayitem .daytxt{
    font-size: var(--pcFontSize30);
    font-weight: bold;
    margin-top: 0.1rem;
}
.secEventlist .dayitem .daytxtInner{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    letter-spacing: var(--pcLetterSpacing16_50);
    vertical-align: 0.4rem;
    padding-left: 0.4rem;
}
.secEventlist .underlist{
    width: 100%;
    margin-top: 0.9rem;
}
.secEventlist .underitem{
    display: inline-block;
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_26);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing14_50);
    padding-right: 1.6rem;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.secEventlist .underitem:last-child{
    padding-right: 0;
}
.secEventlist .moreItem{
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
}
.secEventlist .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right:calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secEventlist .moreIn::after{
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secEventlist.lazyloaded .moreIn::after{
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size:0.6rem auto;
}
.secEventlist .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
    flex: 1;
    letter-spacing: var(--pcLetterSpacing14_50);
}

.secEventlist .endbox{
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    color: #fff;
    background-color: var(--textColorAlpha70);
    z-index: 5;
}
.secEventlist .endInner{
    display: inline-block;
    position: relative;
    width: 100%;
    text-align: center;
    padding-top: calc(11.7rem + 2rem);
}
.secEventlist .endImg{
    position: absolute;
    width: 13.2rem;
    height: 11.7rem;
    top: 0;
    left: calc(50% - 6.6rem);
}
.secEventlist .endtxt{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_24);
    font-weight: bold;
}
@media only screen and (max-width:1215px){
    .secEventlist{
        margin-top: 2rem;
    }
    .secEventlist .swiper{
        width: 25rem;
    }
    .secEventlist .linkbox{
        padding-bottom: calc(3.4rem + 11px);
    }
    .secEventlist .linkbox::after{
        width: calc(100% - 11.5rem - 1.5rem);
        bottom: 1.7rem;
    }
    .secEventlist .imgBox{
        border-radius: 0.5rem;
    }
    .secEventlist .txtArea{
        margin-top:2rem;
    }
    .secEventlist .tag{
        min-width: 8rem;
    }
    .secEventlist .tag.New{
        min-width:3rem;
    }
    .secEventlist .taginner{
        height: 2.6rem;
        padding: 0 0.5rem;
    }
    .secEventlist .taginner.newIcon{
        height: 1.6rem;
    }
    .secEventlist .tagtxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_20);
    }
    .secEventlist .newIcon .tagtxt{
        font-size: var(--spFontSize9);
    }
    .secEventlist .tit{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_28);
        max-height: calc((var(--spLineHeight16_28) * var(--spFontSize16)) * 2);
        margin-top: 0.6rem;
    }
    .secEventlist .daylist{
        margin-top: 0.2rem;
    }
    .secEventlist .dayitem + .dayitem{
        padding-left: 2rem;
    }
    .secEventlist .dayitem + .dayitem::before{
        left: 0.3rem;
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
    }
    .secEventlist .dayitem .yeartxt{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
    }
    .secEventlist .dayitem .daytxt{
        font-size: var(--spFontSize22);
        margin-top: 0;
    }
    .secEventlist .dayitem .daytxtInner{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_26);
        vertical-align: 0.1rem;
        padding-left: 0.4rem;
    }
    .secEventlist .underlist{
        margin-top: 0.5rem;
    }
    .secEventlist .underitem{
        display:block;
        width: 100%;
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_20);
        padding-right: 0;
        letter-spacing: 0;
    }
    .secEventlist .underitem + .underitem{
        margin-top: 0.2rem;
    }
    .secEventlist .moreIn{
        min-width: 11.5rem;
        height: 3.4rem;
        padding-right: calc(3.4rem + 0.7rem);
    }
    .secEventlist .moreIn::after{
        top: calc(50% - 1.7rem);
        width: 3.4rem;
        height: 3.4rem;
    }
    .secEventlist .moreIntxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_20);
        letter-spacing: 0;
    }
    .secEventlist .endbox{
        border-radius: 0.5rem;
    }
    .secEventlist .endInner{
        padding-top: calc(9.3rem + 2rem);
    }
    .secEventlist .endImg{
        width: 10.5rem;
        height: 9.3rem;
        left: calc(50% - 5.25rem);
    }
    .secEventlist .endtxt{
        font-size: var(--spFontSize16);
    }
}

.secEvent .boxControl{
    width: 100%;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}
.secEvent .boxControl .swiper-button-prev,
.secEvent .boxControl .swiper-button-next{
    width: 6rem;
    height: 6rem;
    background-color: var(--textColor);
    border-radius: 50%;
    position: absolute;
    top: 27rem;
    left: auto;
    right: auto;
    margin-top: 0;
}
.secEvent .boxControl .swiper-button-prev{
    left: -3rem;
}
.secEvent .boxControl .swiper-button-next{
    right: -3rem;
}
.secEvent .boxControl .swiper-button-prev::before,
.secEvent .boxControl .swiper-button-next::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 1.2rem;
    height: 1.2rem;
    margin: auto;
    border-top: 0.4rem solid #fff;
    border-right: 0.4rem solid #fff;
}
.secEvent .boxControl .swiper-button-prev::before{
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}
.secEvent .boxControl .swiper-button-next::before{
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.secEvent .swiper-button-prev::after,
.secEvent .swiper-button-next::after{
    display: none;
}
.secEvent .swiper-button-prev.swiper-button-disabled,
.secEvent .swiper-button-next.swiper-button-disabled{
    opacity: 1;
    background-color: #fff;
    border: solid 1px var(--grayColorBC);
    pointer-events: auto;
}
.secEvent .swiper-button-prev.swiper-button-disabled::before,
.secEvent .swiper-button-next.swiper-button-disabled::before{
    border-color: var(--grayColorBC);
}
@media only screen and (max-width:1215px){
    .secEvent .boxControl{
        margin: 3rem 0 0;
        padding: 0 12rem 0 0;
        position: relative;
        top: 0;
    }
    .secEvent .boxControl .swiper-button-prev,
    .secEvent .boxControl .swiper-button-next{
        width: 5rem;
        height: 5rem;
        top: 0;
    }
    .secEvent .boxControl .swiper-button-prev{
        left: auto;
        right: 5.5rem;
    }
    .secEvent .boxControl .swiper-button-next{
        right: 0;
    }
    .secEvent .boxControl .swiper-button-prev::before,
    .secEvent .boxControl .swiper-button-next::before{
        width: 0.8rem;
        height: 0.8rem;
        border-width: 0.2rem;
    }
    .secEvent .boxControl .swiper-button-prev::before{
        -webkit-transform: rotate(225deg);
        transform: rotate(225deg);
    }
    .secEvent .boxControl .swiper-button-next::before{
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .secEvent .swiper-button-prev::after,
    .secEvent .swiper-button-next::after{
        display: none;
    }
    .secEvent .swiper-button-prev.swiper-button-disabled,
    .secEvent .swiper-button-next.swiper-button-disabled{
        opacity: 1;
        background-color: #fff;
        border: solid 1px var(--grayColorBC);
        pointer-events: auto;
    }
    .secEvent .swiper-button-prev.swiper-button-disabled::before,
    .secEvent .swiper-button-next.swiper-button-disabled::before{
        border-color: var(--grayColorBC);
    }
    .secEvent .sliderEvent.disabled .boxControl{
        padding: 0;
    }
    .secEvent .sliderEvent.disabled .boxControl .cmnBtn{
        max-width: 21.5rem;
        margin: 0 auto;
    }
}

/* secLineup */
.secLineup{
    margin-top: 14rem;
}
.secLineup .cmnBtn{
    width: 24rem;
    margin-top: 6rem;
    margin-inline: auto;
}
@media only screen and (max-width:1215px){
    .secLineup{
        margin-top: 8rem;
    }
    .secLineup .cmnBtn{
        width: 100%;
        margin-top: 0;
        margin-inline: 0;
    }
}

/* secLineupList */
.secLineupList .boxItem{
    border-radius: 2rem;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 1rem 0 0 rgba(0,0,0,0.08);
}
.secLineupList .boxItem + .boxItem{
    margin-top: 8rem;
}
.secLineupList .boxLink{
    display: flex;
}
.secLineupList .boxTxt{
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
    padding: 6.5rem 0 0;
}
.secLineupList .titCopy{
    font-size: var(--pcFontSize20);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing20_50);
    margin: 0 0 2.3rem;
}
.secLineupList .titLogo{
    font-size: var(--pcFontSize20);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing20_50);
    color: var(--YATColor);
    margin: 2.5rem 0 2.2rem;
}
.secLineupList .boxItem.isCARRE .titLogo{
    color: var(--CARREColor);
}
.secLineupList .boxPrice{
    background-color: var(--grayColorF2);
    border-radius: 0.3rem;
    padding: 1.7rem 2.8rem;
}
.secLineupList .boxPriceSub{
    display: flex;
}
.secLineupList .titPrice{
    background-color: #fff;
    border-radius: 0.3rem;
    font-size: var(--pcFontSize12);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing12_50);
    padding: 0.8rem 0.8rem 0;
    margin: 0 0.9rem 0 0;
}
.secLineupList .txtPrice{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing16_50);
    display: flex;
    align-items: center;
}
.secLineupList .txtPrice .price{
    font-size: var(--pcFontSize26);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing26_50);
    margin: 0 0.3rem 0.3rem 0;
}
.secLineupList .tax{
    font-size: var(--pcFontSize12);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing12_50);
}
.secLineupList .moreItem{
    margin-top: 2rem;
}
.secLineupList .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right:calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secLineupList .moreIn::after{
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secLineupList.lazyloaded .moreIn::after{
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size:0.6rem auto;
}
.secLineupList .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
}
.secLineupList .imgHouse{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
}
.secLineupList .boxImg{
    width: 50%;
    position: relative;
    flex: 1;
}
.secLineupList .boxImg .pager{
    position: absolute;
    bottom: 3rem;
    left: 3rem;
    z-index: 1;
    display: flex;
    gap: 1rem;
}
.secLineupList .boxImg .pager .swiper-pagination-bullet{
    width: 1rem;
    height: 1rem;
    background: none;
    border: solid 1px #fff;
    opacity: 1;
    margin: 0;
}
.secLineupList .boxImg .pager .swiper-pagination-bullet-active{
    background: #fff;
}
@media only screen and (max-width:1215px){
    .secLineupList .boxItem{
        border-radius: 0.5rem;
        box-shadow: 0 0.8rem 0 0 rgba(0,0,0,0.08);
    }
    .secLineupList .boxItem + .boxItem{
        margin-top: 4rem;
    }
    .secLineupList .boxLink{
        flex-direction: column-reverse;
    }
    .secLineupList .boxLink.sub{
        flex-direction: column-reverse;
    }
    .secLineupList .boxTxt{
        width: 100%;
        padding: 2.5rem 0 11rem;
        order: 2;
    }
    .secLineupList .titCopy{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
        margin: 0 0 1.5rem;
    }
    .secLineupList .logo img{
        width: auto;
        height: 3.4rem;
    }
    .secLineupList .titLogo{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_50);
        margin: 1.5rem 0 1.5rem;
    }
    .secLineupList .boxPrice{
        padding: 1.5rem 2rem 1.4rem;
    }
    .secLineupList .titPrice{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        padding: 0.6rem 0.6rem 0.5rem;
        margin: 0 0.5rem 0 0;
    }
    .secLineupList .txtPrice{
        font-size: var(--spFontSize14);
        letter-spacing: 0;
    }
    .secLineupList .txtPrice .price{
        font-size: var(--spFontSize18);
        letter-spacing: 0;
        margin: 0 0.3rem 0 0;
    }
    .secLineupList .tax{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        text-align: center;
        margin-top: 0.8rem;
    }
    .secLineupList .moreItem{
        margin-top: 1.5rem;
    }
    .secLineupList .boxLink .moreItem.sub{
        margin: 0 auto;
        margin-top: 1.5rem;
        width: 11.5rem;
        margin-bottom: 1.5rem;
    }
    .secLineupList .moreIn{
        min-width: 11.5rem;
        height: 3.4rem;
        padding-right: calc(3.4rem + 0.7rem);
    }
    .secLineupList .moreIn::after{
        top: calc(50% - 1.7rem);
        width: 3.4rem;
        height: 3.4rem;
    }
    .secLineupList .moreIntxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_20);
        letter-spacing: 0;
    }
    .secLineupList .imgHouse img{
        width: auto;
        height: 9.4rem;
    }
    .secLineupList .boxItem.isCARRE .imgHouse img{
        height: 9.7rem;
    }
    .secLineupList .boxImg{
        width: 100%;
        order: 1;
        margin-top: 30px;
    }
    .secLineupList .boxImg .pager{
        bottom: 1rem;
        left: 1rem;
        gap: 0.5rem;
    }
    .secLineupList .boxImg .pager .swiper-pagination-bullet{
        width: 0.7rem;
        height: 0.7rem;
    }
}

/* secLineupSubList */
.secLineupSubList{
    margin-top: 8rem;
}
.secLineupSubList .list{
    display: flex;
    gap: 1rem;
    padding: 0 0 1rem;
}
.secLineupSubList .boxItem{
    width: calc((100% - 3rem) / 4);
    border-radius: 1rem;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 1rem 0 0 rgba(0,0,0,0.08);
}
.secLineupSubList .boxLink{
    display: block;
}
.secLineupSubList .boxTxt{
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
    padding: 8.1rem 0 17.4rem;
}
.secLineupSubList .titCopy{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    margin: 0 0 2.5rem;
}
.secLineupSubList .logo{
    height: 4rem;
}
.secLineupSubList .titLogo{
    font-size: var(--pcFontSize20);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing20_50);
    color: var(--RIVColor);
    margin: 1.9rem 0 2.9rem;
}
.secLineupSubList .boxItem.isFEELE .titLogo{
    color: var(--FEELEColor);
}
.secLineupSubList .boxItem.isCOSTA .titLogo{
    color: var(--COSTAColor);
}
.secLineupSubList .boxItem.isZUTTO .titLogo{
    color: var(--ZUTTOColor);
}
.secLineupSubList .boxPrice{
    background-color: var(--grayColorF2);
    border-radius: 0.3rem;
    padding: 1.7rem 4.2rem;
}
.secLineupSubList .boxPriceSub{
    display: flex;
}
.secLineupSubList .titPrice{
    background-color: #fff;
    border-radius: 0.3rem;
    font-size: var(--pcFontSize12);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing12_50);
    padding: 0.8rem 0.8rem 0;
    margin: 0 0.9rem 0 0;
}
.secLineupSubList .txtPrice{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing16_50);
    display: flex;
    align-items: center;
}
.secLineupSubList .txtPrice .price{
    font-size: var(--pcFontSize26);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing26_50);
    margin: 0 0.3rem 0.3rem 0;
}
.secLineupSubList .tax{
    font-size: var(--pcFontSize12);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing12_50);
    text-align: center;
    margin-top: 0.8rem;
}
.secLineupSubList .moreItem{
    margin-top: 2rem;
}
.secLineupSubList .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right:calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secLineupSubList .moreIn::after{
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secLineupSubList.lazyloaded .moreIn::after{
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size:0.6rem auto;
}
.secLineupSubList .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
}
.secLineupSubList .imgHouse{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
}
@media only screen and (max-width:1215px){
    .secLineupSubList{
        margin-top: 4rem;
    }
    .secLineupSubList .swiper{
        width: 20.5rem;
        overflow: visible;
        margin: 0;
    }
    .secLineupSubList .list{
        gap: 0;
        padding: 0 0 0.6rem;
    }
    .secLineupSubList .boxItem{
        width: auto;
        border-radius: 0.5rem;
        box-shadow: 0 0.6rem 0 0 rgba(0,0,0,0.08);
    }
    .secLineupSubList .boxTxt{
        padding: 3rem 1.5rem 8rem;
    }
    .secLineupSubList .titCopy{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_20);
        margin: 0 0 0.5rem;
    }
    .secLineupSubList .logo{
        height: auto;
    }
    .secLineupSubList .logo img{
        width: auto;
        height: 2.6rem;
    }
    .secLineupSubList .titLogo{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_50);
        margin: 0.5rem 0 1rem;
    }
    .secLineupSubList .boxPrice{
        padding: 1.5rem 0.5rem 1.4rem;
        width: 100%;
    }
    .secLineupSubList .titPrice{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        padding: 0.6rem 0.6rem 0.5rem;
        margin: 0 0.5rem 0 0;
    }
    .secLineupSubList .txtPrice{
        font-size: var(--spFontSize14);
        letter-spacing: 0;
    }
    .secLineupSubList .txtPrice .price{
        font-size: var(--spFontSize18);
        letter-spacing: 0;
        margin: 0 0.3rem 0 0;
    }
    .secLineupSubList .tax{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        margin-top: 0.8rem;
    }
    .secLineupSubList .moreItem{
        margin-top: 1.5rem;
    }
    .secLineupSubList .moreIn{
        min-width: 0;
        height: 2.5rem;
        padding-right: calc(2.5rem + 0.5rem);
    }
    .secLineupSubList .moreIn::after{
        top: calc(50% - 1.25rem);
        width: 2.5rem;
        height: 2.5rem;
    }
    .secLineupSubList.lazyloaded .moreIn::after{
        background-size: 0.4rem auto;
    }
    .secLineupSubList .moreIntxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_20);
        letter-spacing: 0;
    }
    .secLineupSubList .imgHouse img{
        width: auto;
        height: 6.5rem;
    }
    .secLineupSubList .boxItem.isFEELE .imgHouse img{
        height: 6.5rem;
    }
    .secLineupSubList .boxItem.isCOSTA .imgHouse img{
        height: 5.7rem;
    }
    .secLineupSubList .boxItem.isZUTTO .imgHouse img{
        height: 6.3rem;
    }
}

.secLineupSubList .boxControl{
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}
.secLineupSubList .boxControl .swiper-button-prev,
.secLineupSubList .boxControl .swiper-button-next{
    width: 6rem;
    height: 6rem;
    background-color: var(--textColor);
    border-radius: 50%;
    position: absolute;
    top: 27rem;
    left: auto;
    right: auto;
    margin-top: 0;
}
.secLineupSubList .boxControl .swiper-button-prev{
    left: -3rem;
}
.secLineupSubList .boxControl .swiper-button-next{
    right: -3rem;
}
.secLineupSubList .boxControl .swiper-button-prev::before,
.secLineupSubList .boxControl .swiper-button-next::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 1.2rem;
    height: 1.2rem;
    margin: auto;
    border-top: 0.4rem solid #fff;
    border-right: 0.4rem solid #fff;
}
.secLineupSubList .boxControl .swiper-button-prev::before{
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}
.secLineupSubList .boxControl .swiper-button-next::before{
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.secLineupSubList .swiper-button-prev::after,
.secLineupSubList .swiper-button-next::after{
    display: none;
}
.secLineupSubList .swiper-button-prev.swiper-button-disabled,
.secLineupSubList .swiper-button-next.swiper-button-disabled{
    opacity: 1;
    background-color: #fff;
    border: solid 1px var(--grayColorBC);
    pointer-events: auto;
}
.secLineupSubList .swiper-button-prev.swiper-button-disabled::before,
.secLineupSubList .swiper-button-next.swiper-button-disabled::before{
    border-color: var(--grayColorBC);
}
@media only screen and (max-width:1215px){
    .secLineupSubList .boxControl{
        margin: 3rem 0 0;
        padding: 0 12rem 0 0;
    }
    .secLineupSubList .boxControl .swiper-button-prev,
    .secLineupSubList .boxControl .swiper-button-next{
        width: 5rem;
        height: 5rem;
        top: 0;
    }
    .secLineupSubList .boxControl .swiper-button-prev{
        left: auto;
        right: 5.5rem;
    }
    .secLineupSubList .boxControl .swiper-button-next{
        right: 0;
    }
    .secLineupSubList .boxControl .swiper-button-prev::before,
    .secLineupSubList .boxControl .swiper-button-next::before{
        width: 0.8rem;
        height: 0.8rem;
        border-width: 0.2rem;
    }
    .secLineupSubList .boxControl .swiper-button-prev::before{
        -webkit-transform: rotate(225deg);
        transform: rotate(225deg);
    }
    .secLineupSubList .boxControl .swiper-button-next::before{
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .secLineupSubList .swiper-button-prev::after,
    .secLineupSubList .swiper-button-next::after{
        display: none;
    }
    .secLineupSubList .swiper-button-prev.swiper-button-disabled,
    .secLineupSubList .swiper-button-next.swiper-button-disabled{
        opacity: 1;
        background-color: #fff;
        border: solid 1px var(--grayColorBC);
        pointer-events: auto;
    }
    .secLineupSubList .swiper-button-prev.swiper-button-disabled::before,
    .secLineupSubList .swiper-button-next.swiper-button-disabled::before{
        border-color: var(--grayColorBC);
    }
}

/* secCatalog */
.secCatalog{
    margin-top: 12rem;
}
.secCatalog .catalogLink{
    position: relative;
    display: block;
}
.secCatalog .boxTxt{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    color: #fff;
}
.secCatalog .tit{
    max-width: 39.2rem;
}
.secCatalog .txt{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    line-height: var(--pcLineHeight18_36);
    margin: 2.6rem 0 2.9rem;
}
.secCatalog .cmnBtn{
    width: 24rem;
}
.secCatalog .bg{
    position: relative;
    z-index: 0;
    border-radius: 1.5rem;
    overflow: hidden;
}
.secCatalog .boxImg{
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    width: 167rem;
    height: 100%;
    transform: translateX(-50%);
}
.secCatalog .boxImg .img{
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22.8rem;
    display: flex;
    align-items: center;
}
.secCatalog .boxImg .img:nth-child(1){
    left: 0;
}
.secCatalog .boxImg .img:nth-child(2){
    left: 25.8rem;
}
.secCatalog .boxImg .img:nth-child(3){
    right: 25.8rem;
}
.secCatalog .boxImg .img:nth-child(4){ 
    right: 0;
}
@media only screen and (max-width:1720px){
    .secCatalog .boxImg{
        width: 140rem;
        max-width: calc(100% - 10rem);
    }
    .secCatalog .boxImg .img{
        width: 14rem;
    }
    .secCatalog .boxImg .img:nth-child(1){
        left: 0;
    }
    .secCatalog .boxImg .img:nth-child(2){
        left: 16rem;
    }
    .secCatalog .boxImg .img:nth-child(3){
        right: 16rem;
    }
    .secCatalog .boxImg .img:nth-child(4){
        right: 0;
    }
}
@media only screen and (max-width:1215px){
    .secCatalog{
        margin-top: 6rem;
    }
    .secCatalog .boxTxt{
        justify-content: flex-start;
        padding: 11.87% 0 0;
    }
    .secCatalog .tit{
        width: 45.37%;
    }
    .secCatalog .txt{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_22);
        margin: 1.5rem 0 1.5rem;
    }
    .secCatalog .cmnBtn{
        width: 21.5rem;
        text-align: left;
    }
    .secCatalog .bg{
        border-radius: 0.5rem;
    }
    .secCatalog .boxImg{
        width: 87.76%;
        max-width: 29.4rem;
        display: flex;
        gap: 0 3.4%;
        align-items: flex-end;
    }
    .secCatalog .boxImg .img{
        top: auto;
        width: auto;
        position: static;
    }
}

/* secWorks */
.secWorks{
    margin-top: 15rem;
    padding: 14rem 0 15rem;
    background-color: var(--textColor);
    background-repeat: repeat;
}
.secWorks.lazyloaded{
    background-image: url(../img/common/bgBodyBlack.png);
}
.secWorks .secTopTit{
    color: #fff;
}
.secTopTit .titTopRoman{
    position: relative;
}
.secTopTit .titTopRoman .cursive{
    display: block;
    position: absolute;
    top: 4.8rem;
    left: 6.2rem;
    z-index: 1;
}
.secWorks .secTopTit .titTop::before{
    background-color: #fff;
}
@media only screen and (max-width:1215px){
    .secWorks{
        margin-top: 8rem;
        padding: 6rem 0;
    }
    .secWorks .secTopTit .titTop{
        margin: 0 0 0 2rem;
    }
    .secWorks .secTopTit .titTop::before{
        top: 0.3rem;
    }
    .secWorks .secTopTit .titTopRoman .cursive{
        top: 2.2rem;
        left: 3rem;
    }
    .secWorks .secTopTit .titTopRoman .cursive img{
        width: 11.1rem;
        height: auto;
    }
}

/* secWorkslist */
.secWorkslist{
    margin-top:4rem
}
.secWorkslist .listItem{
    position: relative;
}
.secWorkslist .listItem + .listItem{
    margin-top: calc(15rem + 1px);
}
.secWorkslist .listItem + .listItem::before{
    content: "";
    display: block;
    max-width:calc(100% - 10rem);
    width: 150rem;
    height: 1px;
    background-color: rgba(255,255,255,0.2);
    position: absolute;
    top: calc(-8rem - 1px);
    left: 0;
    right: 0;
    margin-inline: auto;
}
@media only screen and (min-width:1216px){
    .secWorkslist .listItem:nth-child(2n){
        padding-left: 2.5rem;
        padding-right: calc((100% - 150rem) / 2);
    }
    .secWorkslist .listItem:nth-child(2n + 1){
        padding-left: calc((100% - 150rem) / 2);
        padding-right: 2.5rem;
    }
    .secWorkslist .listItem:nth-child(2n) .itemLink{
        padding-left: calc(1100 / 1920 * 100vw);
    }
    .secWorkslist .listItem:nth-child(2n + 1) .itemLink{
        padding-right: calc(1100 / 1920 * 100vw);
    }
    .secWorkslist .listItem:nth-child(2n) .boxSlider{
        left: 0;
    }
    .secWorkslist .listItem:nth-child(2n + 1) .boxSlider{
        right: 0;
    }
    .secWorkslist .listItem:nth-child(2n) .linkInner{
        padding-left: 6rem;
    }
    .secWorkslist .listItem:nth-child(2n + 1) .linkInner{
        padding-right: 6rem;
    }
    .secWorkslist .listItem:nth-child(2n) .moreItem{
        right: 0;
    }
    .secWorkslist .listItem:nth-child(2n + 1) .moreItem{
        right: calc((1100 / 1920 *100vw) + 6rem);
    }
    @media only screen and (max-width:1600px){
        .secWorkslist .listItem:nth-child(2n){
            padding-right: 5rem;
        }
        .secWorkslist .listItem:nth-child(2n + 1){
            padding-left: 5rem;
        }
    }
}
.secWorkslist .itemLink{
    position: relative;
    display: flex;
    align-items: center;
    min-height: calc((780 / 1920) * 100vw);
}
.secWorkslist .boxSlider{
    position: absolute;
    width:calc(1100 / 1920 * 100vw);
    top: 0;
}
.secWorkslist .imgSlider{
    width: 100%;
    height: 0;
    padding-top: calc(780  / 1100 * 100%);
    border-radius: 2rem;
    overflow: hidden;
    z-index: 1;
}
.secWorkslist .linkInner{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column-reverse;
}
.secWorkslist .Thumbbox{
    width: 100%;
    margin-top: 4rem;
}
.secWorkslist .boxThumb{
    display: flex;
    flex-wrap: wrap;
}
.secWorkslist .itemThumb{
    width: calc((100% - 3rem) / 3);
    margin-right: 1.5rem;
    pointer-events: all;
    cursor: pointer;
}
.secWorkslist .itemThumb:last-child,
.secWorkslist .itemThumb:nth-child(3n){
    margin-right: 0;
}
.secWorkslist .imgThumb{
    width: 100%;
    height: 0;
    padding-top: calc((117 / 165) * 100%);
    border-radius: 1rem;
    overflow: hidden;
}
.secWorkslist .imgThumb.on{
    opacity: 0.5;
}
.secWorkslist .txtbox{
    display: inline-block;
    width: 100%;
}
.secWorkslist .txtInner{
    width: 100%;
    display: block;
}
.secWorkslist .tit{
    font-size: var(--pcFontSize36);
    line-height: var(--pcLineHeight36_56);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc((var(--pcFontSize36) * var(--pcLineHeight36_56)) * 2);
    color: #fff;
}
.secWorkslist .middlebox{
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 1.6rem;
}
.secWorkslist .namebox{
    position: relative;
    display: flex;
    align-items: center;
    height: 10rem;
    padding-left: 10rem;
    max-width: calc(100% - (2rem + 8rem));
}
.secWorkslist .namebox:has( + .tagbox .tag.New){
    max-width: calc(100% - (2rem + 8rem + 0.5rem + 3.5rem));
}
.secWorkslist .nameImg{
    position: absolute;
    width: 10rem;
    height: 10rem;
    border-radius: 50%;
    overflow: hidden;
    z-index: 1;
    left: 0;
    top: 0;
}
.secWorkslist .nametxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
    padding-left: 1.8rem;
    display: inline-block;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #fff;
}
.secWorkslist .tagbox{
    width: calc(2rem + 8rem);
    padding-left: 2rem;
}
.secWorkslist .catrgorytags{
    display: flex;
    flex-wrap: wrap;
}
@media only screen and (min-width:1216px){
    .secWorkslist .tagbox:has(.tag.New){
        min-width: calc(2rem + 8rem + 0.5rem + 3.5rem);
        width: auto;
        flex: 1;
    }
    .secWorkslist .tagbox:has(.tag.New) .catrgorytags{
        flex-wrap: nowrap;
    }
}
.secWorkslist .tag{
    min-width: 8rem;
    max-width: 100%;
    margin-right: 0.5rem;
    white-space: nowrap;
}
.secWorkslist .tag.New{
    min-width:3.5rem;
    display: flex;
    align-items: center;
}
.secWorkslist .tag:last-child{
    margin-right: 0;
}
.secWorkslist .taginner{
    display: flex;
    align-items: center;
    width: 100%;
    height: 3rem;
    padding: 0 0.5rem;
    border-radius: 0.5rem;
}
.secWorkslist .taginner.type_FEELE,
.type_FEELE{
    background-color: var(--FEELEColor);
}
.secWorkslist .taginner.type_CARRE,
.type_CARRE{
    background-color: var(--CARREColor);
}
.secWorkslist .taginner.type_YAT,
.type_YAT{
    background-color: var(--YATColor);
}
.secWorkslist .taginner.type_RIV,
.type_RIV{
    background-color: var(--RIVColor);
}
.secWorkslist .taginner.type_COSTA,
.type_COSTA{
    background-color: var(--COSTAColor);
}
.secWorkslist .taginner.type_ZUTTO,
.type_ZUTTO{
    background-color: var(--ZUTTOColor);
}
.secWorkslist .taginner.newIcon{
    background-color: var(--newIconColor);
    border-color: var(--newIconColor);
    height: 2rem;
}
.secWorkslist .tagtxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
    display: inline-block;
    text-align: center;
    width: 100%;
    color: #fff;
}
.secWorkslist .newIcon .tagtxt{
    font-size: var(--pcFontSize10);
    color: var(--textColor);
}
.secWorkslist .commentbox{
    position: relative;
    width: 100%;
    padding: 2rem 2.9rem;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
    z-index: 2;
    border-radius: 1rem;
    margin-top: calc(2rem + 0.6rem);
}
.secWorkslist .commentbox::before,
.secWorkslist .commentbox::after{
    content: "";
    position: absolute;
    width: 2rem;
    height: 2rem;
    left: 4rem;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
}
.secWorkslist .commentbox::before{
    background-color: var(--textColor);
    top: calc(0% - 2rem);
    z-index: 1;
}
.secWorkslist .commentbox::after{
    background-color: #fff;
    top: calc(0% - 1.8rem);
    z-index: 3;
}
.secWorkslist .commenttxt{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_32);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    max-height: calc((var(--pcFontSize18) * var(--pcLineHeight18_32)) * 4);
}
.secWorkslist .moreItem{
    display: inline-block;
    position: absolute;
    bottom: 0;
    color: #fff;
}
.secWorkslist .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right: calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secWorkslist .moreIn::after {
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secWorkslist.lazyloaded .moreIn::after {
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size: 0.6rem auto;
}
.secWorkslist .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
}
@media only screen and (min-width:1216px){
    .secWorkslist .moreIntxt{
        letter-spacing: var(--pcLetterSpacing14_50);
    }
}
@media only screen and (max-width:1680px){
    .secWorkslist .commenttxt{
        font-size: var(--pcFontSize16);
        line-height: var(--pcLineHeight18_32);
        max-height: calc((var(--pcFontSize16) * var(--pcLineHeight18_32)) * 4);
    }
    .secWorkslist .linkInner{
        padding-bottom: 4rem;
    }
}
@media only screen and (max-width:1215px){
    .secWorkslist{
        margin-top: 3.8rem
    }
    .secWorkslist .listItem{
        padding-bottom: 3rem;
    }
    .secWorkslist .listItem + .listItem{
        margin-top: calc(3rem + 1px);
    }
    .secWorkslist .listItem + .listItem::before{
        max-width: none;
        width: 100%;
        background-color: #fff;
        position: absolute;
        top: calc(-3rem - 1px);
    }
    .secWorkslist .itemLink{
        display: block;
        min-height:0;
    }
    .secWorkslist .boxSlider{
        position: relative;
        width:100%;
    }
    .secWorkslist .imgSlider{
        border-radius: 0.5rem;
    }
    .secWorkslist .linkInner{
        display: block;
        padding-bottom: 5.4rem;
    }
    .secWorkslist .Thumbbox{
        margin-top: 0.7rem;
    }
    .secWorkslist .itemThumb{
        width: calc((100% - 1.4rem) / 3);
        margin-right: 0.7rem;
    }
    .secWorkslist .imgThumb{
        padding-top: calc((76 / 107) * 100%);
        border-radius: 0.5rem;
    }
    .secWorkslist .imgThumb.on{
        opacity: 1;
    }
    .secWorkslist .imgThumb.on::after{
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background-color:var(--slideMuskColor);
        left: 0;
        top: 0;
    }
    .secWorkslist .txtbox{
        display: block;
        margin-top: 1.4rem;
    }
    .secWorkslist .tit{
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_30);
        max-height: calc((var(--spFontSize20) * var(--spLineHeight20_30)) * 2);
    }
    .secWorkslist .middlebox{
        margin-top: 1.3rem;
    }
    .secWorkslist .namebox{
        height: 7rem;
        padding-left: 7rem;
        max-width: calc(100% - (1.6rem + 8rem));
    }
    .secWorkslist .namebox:has( + .tagbox .tag.New){
        max-width: calc(100% - (1.6rem + 8rem + 0.5rem + 3rem));
    }
    .secWorkslist .nameImg{
        width: 7rem;
        height: 7rem;
    }
    .secWorkslist .nametxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_20);
        padding-left: 1rem;
    }
    .secWorkslist .tagbox{
        width: calc(1.6rem + 8rem);
        padding-left: 1.6rem;
    }
    .secWorkslist .tagbox:has(.tag.New){
        width: calc(1.6rem + 8rem + 0.5rem + 3rem);
    }
    .secWorkslist .tag{
        min-width: 8rem;
    }
    .secWorkslist .tag.New{
        min-width:3rem;
    }
    .secWorkslist .taginner{
        height: 2.6rem;
        padding: 0 0.3rem;
    }
    .secWorkslist .taginner.newIcon{
        height: 1.6rem;
        border-radius: 0.3rem;
    }
    .secWorkslist .tagtxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_18);
    }
    .secWorkslist .newIcon .tagtxt{
        font-size: var(--spFontSize9);
        line-height: var(--spLineHeight9_9);
    }
    .secWorkslist .commentbox{
        padding: 1.3rem 1.9rem;
        border-radius: 0.5rem;
        margin-top: calc(1.4rem + 0.4rem);
    }
    .secWorkslist .commentbox::before,
    .secWorkslist .commentbox::after{
        width: 1.4rem;
        height: 1.3rem;
        left: 2.8rem;
    }
    .secWorkslist .commentbox::before{
        top: calc(0% - 1.3rem);
    }
    .secWorkslist .commentbox::after{
        top: calc(0% - 1.1rem);
    }
    .secWorkslist .commenttxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        max-height: calc((var(--spFontSize13) * var(--spLineHeight13_22)) * 4);
    }
    .secWorkslist .moreItem{
        right: 0;
    }
    .secWorkslist .moreIn{
        min-width: 10rem;
        height: 3.4rem;
        padding-right: calc(3.4rem + 1rem);
    }
    .secWorkslist .moreIn::after {
        top: calc(50% - 1.7rem);
        width: 3.4rem;
        height: 3.4rem;
    }
    .secWorkslist .moreIntxt{
        font-size: var(--spFontSize12);
    }
}

.secWorkslist .cmnBtn{
    max-width: 24rem;
    margin: 6rem auto 0;
}
@media only screen and (max-width:1215px){
    .secWorkslist .cmnBtn{
        max-width: 21.5rem;
        margin: 0 auto;
    }
}

/* secModel */
.secModel{
    margin-top: 14rem;
}
.secModel .secTopTit .cmnBtn{
    top: 12rem;
}
@media only screen and (max-width:1215px){
    .secModel{
        margin-top: 8rem;
    }
    .secModel .secTopTit .titTop{
        margin-top: -0.4rem;
        margin-left: 2.4rem;
    }
    .secModel .secTopTit .titTop::before{
        top: 2rem;
        left: -1.2rem;
    }
}

/* secModellist */
.secModellist{
    margin-top:5rem
}
.secModellist .listItem{
    position: relative;
}
.secModellist .listItem + .listItem{
    margin-top: calc(15rem + 1px);
}
.secModellist .listItem + .listItem::before{
    content: "";
    display: block;
    max-width:calc(100% - 10rem);
    width: 150rem;
    height: 1px;
    background-color: var(--textColorAlpha20);
    position: absolute;
    top: calc(-8rem - 1px);
    left: 0;
    right: 0;
    margin-inline: auto;
}
@media only screen and (min-width:1216px){
    .secModellist .listItem:nth-child(2n){
        padding-left: 2.5rem;
        padding-right: calc((100% - 150rem) / 2);
    }
    .secModellist .listItem:nth-child(2n + 1){
        padding-left: calc((100% - 150rem) / 2);
        padding-right: 2.5rem;
    }
    .secModellist .listItem:nth-child(2n) .itemLink{
        padding-left: calc(1100 / 1920 * 100vw);
    }
    .secModellist .listItem:nth-child(2n + 1) .itemLink{
        padding-right: calc(1100 / 1920 * 100vw);
    }
    .secModellist .listItem:nth-child(2n) .boxSlider{
        left: 0;
    }
    .secModellist .listItem:nth-child(2n + 1) .boxSlider{
        right: 0;
    }
    .secModellist .listItem:nth-child(2n) .linkInner{
        padding-left: 7rem;
    }
    .secModellist .listItem:nth-child(2n + 1) .linkInner{
        padding-right: 7rem;
    }
    .secModellist .listItem:nth-child(2n) .moreItem{
        right: 0;
    }
    .secModellist .listItem:nth-child(2n + 1) .moreItem{
        right: calc((1100 / 1920 *100vw) + 6rem);
    }
    @media only screen and (max-width:1600px){
        .secModellist .listItem:nth-child(2n){
            padding-right: 5rem;
        }
        .secModellist .listItem:nth-child(2n + 1){
            padding-left: 5rem;
        }
    }
}
.secModellist .itemLink{
    position: relative;
    display: flex;
    align-items: center;
    min-height: calc((780 / 1920) * 100vw);
}
.secModellist .boxSlider{
    position: absolute;
    width:calc(1100 / 1920 * 100vw);
    top: 0;
    z-index: 0;
    border-radius: 2rem;
    overflow: hidden;
}
.secModellist .imgSlider{
    width: 100%;
    height: 0;
    padding-top: calc(780  / 1100 * 100%);
    border-radius: 2rem;
    overflow: hidden;
    z-index: 1;
}
.secModellist .linkInner{
    width: 55.5rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
    padding: 4.3rem 0 0;
}
.secModellist .infobox{
    margin-top: 2.5rem;
}
.secModellist .infoboxItem{
    display: flex;
    font-size: var(--pcFontSize14);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing14_50);
    line-height: var(--pcLineHeight14_26);
}
.secModellist .infoboxItem + .infoboxItem{
    margin-top: 1rem;
}
.secModellist .infoboxTxt{
    flex: 1;
}
.secModellist .Thumbbox{
    width: 85rem;
    margin-top: 6.3rem;
    border-radius: 2rem;
    background-repeat: repeat;
    padding: 3rem 3rem 0 0;
}
.secModellist.lazyloaded .Thumbbox{
    background-image: url(../img/common/bgBody.png);
}
.secModellist .listItem:nth-child(2n) .Thumbbox{
    padding: 3rem 0 0 3rem;
    margin-left: -33.5rem;
}
.secModellist .titThumb{
    background-color: var(--textColor);
    color: #fff;
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    text-align: center;
    border-radius: 1rem;
    padding: 2.3rem 2.3rem 1.8rem;
}
.secModellist .boxThumb{
    display: flex;
    flex-wrap: wrap;
    margin: 2rem 0 0;
}
.secModellist .itemThumb{
    width: calc((100% - 2rem) / 2);
    margin-right: 2rem;
}
.secModellist .itemThumb:last-child{
    margin-right: 0;
}
.secModellist .imgThumb{
    width: 100%;
    border-radius: 1rem;
    overflow: hidden;
}
.secModellist .txtThumbPoint{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    line-height: var(--pcLineHeight18_30);
    color: var(--textColor);
    padding: 2.3rem 0 0;
    text-align: center;
}
.secModellist .txtbox{
    display: inline-block;
    width: 100%;
}
.secModellist .txtInner{
    width: 100%;
    display: block;
}
.secModellist .tit{
    font-size: var(--pcFontSize44);
    line-height: var(--pcLineHeight44_60);
    font-weight: bold;
}
.secModellist .middlebox{
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 1.5rem;
}
.secModellist .catrgorytags{
    display: flex;
    flex-wrap: wrap;
}
.secModellist .tag{
    min-width: 8rem;
    max-width: 100%;
    margin-right: 0.5rem;
    white-space: nowrap;
}
.secModellist .tag:last-child{
    margin-right: 0;
}
.secModellist .taginner{
    display: flex;
    align-items: center;
    width: 100%;
    height: 3rem;
    padding: 0 0.5rem;
    border-radius: 0.5rem;
}
.secModellist .taginner.type_FEELE,
.type_FEELE{
    background-color: var(--FEELEColor);
}
.secModellist .taginner.type_CARRE,
.type_CARRE{
    background-color: var(--CARREColor);
}
.secModellist .taginner.type_YAT,
.type_YAT{
    background-color: var(--YATColor);
}
.secModellist .taginner.type_RIV,
.type_RIV{
    background-color: var(--RIVColor);
}
.secModellist .taginner.type_COSTA,
.type_COSTA{
    background-color: var(--COSTAColor);
}
.secModellist .taginner.type_ZUTTO,
.type_ZUTTO{
    background-color: var(--ZUTTOColor);
}
.secModellist .tagtxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
    display: inline-block;
    text-align: center;
    width: 100%;
    color: #fff;
}
.secModellist .newIcon .tagtxt{
    font-size: var(--pcFontSize10);
    color: var(--textColor);
}
.secModellist .moreItem{
    display: inline-block;
    margin-top: 2.5rem;
}
.secModellist .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right: calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secModellist .moreIn::after {
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secModellist.lazyloaded .moreIn::after {
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size: 0.6rem auto;
}
.secModellist .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
}
@media only screen and (min-width:1216px){
    .secModellist .moreIntxt{
        letter-spacing: var(--pcLetterSpacing14_50);
    }
}
@media only screen and (max-width:1215px){
    .secModellist{
        margin-top:2.5rem
    }
    .secModellist .listItem + .listItem{
        margin-top: calc(3rem + 1px);
    }
    .secModellist .listItem + .listItem::before{
        max-width: none;
        width: 100%;
        background-color: var(--textColor);
        top: calc(-3rem - 1px);
    }
    .secModellist .itemLink{
        display: block;
        min-height:0;
    }
    .secModellist .boxSlider{
        position: relative;
        width:100%;
        border-radius: 1rem;
    }
    .secModellist .imgSlider{
        border-radius: 0.5rem;
    }
    .secModellist .linkInner{
        display: block;
        padding: 0 0 2.5rem;
        width: 100%;
    }
    .secModellist .txtInner{
        position: relative;
    }
    .secModellist .infobox{
        margin-top: 1.5rem;
    }
    .secModellist .infoboxItem{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_22);
        display: block;
    }
    .secModellist .infoboxItem + .infoboxItem{
        margin-top: 0;
    }
    .secModellist .infoboxTit{
        display: inline;
    }
    .secModellist .infoboxTxt{
        display: inline;
    }
    .secModellist .Thumbbox{
        width: 100%;
        margin-top: 2.5rem;
        border-radius: 0;
        background: none;
        padding: 0;
    }
    .secModellist .listItem:nth-child(2n) .Thumbbox{
        padding: 0;
        margin-left: 0;
    }
    .secModellist .titThumb{
        font-size: var(--spFontSize13);
        letter-spacing: 0;
        border-radius: 0.5rem;
        padding: 1.4rem 2.3rem 1.3rem;
    }
    .secModellist .boxThumb{
        margin: 1.5rem 0 0;
    }
    .secModellist .itemThumb{
        width: calc((100% - 1.5rem) / 2);
        margin-right: 1.5rem;
    }
    .secModellist .itemThumb:last-child{
        margin-right: 0;
    }
    .secModellist .imgThumb{
        border-radius: 0.5rem;
    }
    .secModellist .txtThumbPoint{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_20);
        padding: 0.8rem 0 0;
    }
    .secModellist .txtbox{
        display: block;
        margin-top: 1.4rem;
    }
    .secModellist .tit{
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_30);
        max-height: calc((var(--spFontSize20) * var(--spLineHeight20_30)) * 2);
    }
    .secModellist .middlebox{
        margin-top: 1rem;
    }
    .secModellist .tag{
        min-width: 8rem;
    }
    .secModellist .taginner{
        height: 2.6rem;
        padding: 0 0.3rem;
    }
    .secModellist .tagtxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_18);
    }
    .secModellist .moreItem{
        position: absolute;
        right: 0;
        bottom: 0;
    }
    .secModellist .moreIn{
        min-width: 10rem;
        height: 3.4rem;
        padding-right: calc(3.4rem + 1rem);
    }
    .secModellist .moreIn::after {
        top: calc(50% - 1.7rem);
        width: 3.4rem;
        height: 3.4rem;
    }
    .secModellist .moreIntxt{
        font-size: var(--spFontSize12);
    }
}

.secModellist .cmnBtn{
    max-width: 24rem;
    margin: 6rem auto 0;
}
@media only screen and (max-width:1215px){
    .secModellist .cmnBtn{
        max-width: 21.5rem;
        margin: 0 auto;
    }
}

/* secTopics */
.secTopics{
    margin-top: 13rem;
}
@media only screen and (max-width:1215px){
    .secTopics{
        margin-top: 8rem;
    }
}

/* secNewslist */
.secNewslist{
    width: 100%;
}
.secNewslist .list{
    display: flex;
    flex-wrap: wrap;
    gap: 0 6rem;
}
.secNewslist .item{
    width: calc((100% - 18rem) / 4);
}
.secNewslist .newslink{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    padding-bottom: calc(4rem + 1.2rem);
}
.secNewslist .newslink::after{
    content: "";
    position: absolute;
    width: calc(100% - 14.6rem - 2rem);
    height: 0.1rem;
    bottom: 2rem;
    left: 0;
    background-color: var(--textColor);
}
.secNewslist .imgBox{
    width: 100%;
    height: 0;
    padding-top:calc((330 / 330) * 100%);
    border-radius: 1rem;
    overflow: hidden;
    z-index: 1;
}
.secNewslist .txtarea{
    margin-top: 2rem;
}
.secNewslist .onbox{
    display: flex;
}
.secNewslist .tagbox{
    flex: 1;
    max-width: calc(100% - 7rem);
    padding-right: 1rem;
}
.secNewslist .catrgorytags{
    display: flex;
    flex-wrap: wrap;
}
.secNewslist .tag{
    margin-bottom: 0.5rem;
    min-width: 7rem;
    max-width: 100%;
    margin-right: 0.5rem;
    white-space: nowrap;
}
.secNewslist .tag.New{
    min-width:3.5rem;
    display: flex;
    align-items: center;
}
.secNewslist .tag:last-child{
    margin-right: 0;
}
.secNewslist .taginner{
    display: flex;
    align-items: center;
    width: 100%;
    height: 2.6rem;
    padding: 0 0.5rem;
    border-radius: 0.3rem;
    border: 0.1rem solid;
    border-color: var(--textColor);
}
.secNewslist .taginner.newIcon{
    background-color: var(--newIconColor);
    border-color: var(--newIconColor);
    height: 2rem;
}
.secNewslist .taginner.shop{
    background-color: var(--shopColor);
    border-color: var(--shopColor);
    color: #fff;
}
.secNewslist .tagtxt{
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_20);
    font-weight: bold;
    display: inline-block;
    text-align: center;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}
.secNewslist .newIcon .tagtxt{
    font-size: var(--pcFontSize10);
}
.secNewslist .daybox{
    min-width: 7rem;
    text-align: right;
}
.secNewslist .daytxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    font-weight: bold;
    padding-top: 0.5rem;
    letter-spacing: var(--pcLetterSpacing14_50);
}
.secNewslist .tit{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_30);
    letter-spacing: var(--pcLetterSpacing20_50);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc((var(--pcLineHeight20_30) * var(--pcFontSize20)) * 2);
    margin-top: 1.1rem;
}
.secNewslist .undertagbox{
    max-width: 100%;
    margin-top: 1.1rem;
}
.secNewslist .taglist{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: calc((var(--pcLineHeight14_21) * var(--pcFontSize14)) * 2);
}
.secNewslist .tags{
    display: inline-block;
    max-width: 100%;
    padding-right: 1rem;
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.secNewslist .moreItem{
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
}
.secNewslist .moreIn{
    position: relative;
    min-width: 14.6rem;
    height: 4rem;
    padding-right:calc(4rem + 1.8rem);
    display: flex;
    align-items: center;
}
.secNewslist .moreIn::after{
    content: "";
    position: absolute;
    right: 0;
    top: calc(50% - 2rem);
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 0.1rem solid;
    border-color: var(--textColor);
    background-color: #fff;
}
.secNewslist.lazyloaded .moreIn::after{
    background: url(../img/common/imgMoreArrow.png) center center no-repeat #fff;
    background-size:0.6rem auto;
}
.secNewslist .moreIntxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_32);
    font-weight: bold;
}
@media only screen and (min-width:1216px){
    .secNewslist .moreIntxt{
        letter-spacing: var(--pcLetterSpacing14_50);
    }
}
@media only screen and (max-width:1215px){
    /* secNewslist */
    .secNewslist .list{
        gap: 3rem 1.5rem;
    }
    .secNewslist .item{
        width: calc((100% - 1.5rem) / 2);
        margin-right: 0;
    }
    .secNewslist .newslink{
        padding-bottom: calc(2.6rem + 1rem);
    }
    .secNewslist .newslink::after{
        width: calc(100% - 10.6rem - 1.6rem);
        bottom: 1.3rem;
    }
    .secNewslist .imgBox{
        border-radius: 0.5rem;
    }
    .secNewslist .txtarea{
        margin-top: 1.1rem;
    }
    .secNewslist .onbox{
        display: block;
    }
    .secNewslist .tagbox{
        max-width:100%;
        width: 100%;
        padding-right: 0;
    }
    .secNewslist .tag{
        min-width: 5.2rem;
        margin-right: 0.3rem;
        margin-bottom: 0.3rem;
    }
    .secNewslist .tag.New{
        min-width:3rem;
    }
    .secNewslist .taginner{
        height: 2.2rem;
        padding: 0 0.3rem;
    }
    .secNewslist .taginner.newIcon{
        height: 1.6rem;
    }
    .secNewslist .tagtxt{
        font-size: var(--spFontSize10);
        line-height: var(--spLineHeight10_14);
    }
    .secNewslist .tagtxtInner{
        vertical-align: bottom;
    }
    .secNewslist .newIcon .tagtxt{
        font-size: var(--spFontSize9);
        line-height:var(--spLineHeight9_9);
    }
    .secNewslist .daybox{
        min-width: 0;
        width: 100%;
        text-align: left;
        margin-top: 0.5rem;
    }
    .secNewslist .daytxt{
        font-size: var(--spFontSize10);
        padding-top: 0;
    }
    .secNewslist .tit{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        max-height: calc((var(--spLineHeight13_22) * var(--spFontSize13)) * 2);
        margin-top: 0.3rem;
    }
    .secNewslist .undertagbox{
        margin-top: 0.4rem;
    }
    .secNewslist .taglist{
        max-height: calc((var(--spLineHeight11_18) * var(--spFontSize11)) * 2);
    }
    .secNewslist .tags{
        padding-right: 0.5rem;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
    }
    .secNewslist .moreIn{
        min-width: 10.6rem;
        height: 2.6rem;
        padding-right:calc(2.6rem + 1rem);
    }
    .secNewslist .moreIn::after{
        width: 2.6rem;
        height: 2.6rem;
        top: calc(50% - 1.3rem);
    }
    .secNewslist.lazyloaded .moreIn::after{
        background-size:0.4rem auto;
    }
    .secNewslist .moreIntxt{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_12);
    }
    .secNewslist .cmnBtn{
        max-width: 21.5rem;
        margin: 3rem auto 0;
    }
}

/* secInsta */
.secInsta{
    display: flex;
    gap: 6rem;
    margin-top: 11.5rem;
}
.secInsta .bnr{
    display: flex;
    position: relative;
}
.secInsta .boxTxt{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    color: #fff;
}
.secInsta .txt{
    font-size: var(--pcFontSize22);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing22_50);
    margin: 1.9rem 0 1.3rem;
}
.secInsta .txtRoman{
    font-size: var(--pcFontSize40);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing40_100);
    margin: 0 0 2.5rem;
}
.secInsta .txtAccount{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing16_50);
}
.secInsta .txtMore{
    font-size: var(--pcFontSize14);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing14_100);
    position: absolute;
    bottom: 3rem;
    right: 3rem;
    display: flex;
    align-items: center;
}
.secInsta .txtMore::after{
    content: '';
    display: block;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background-color: #fff;
    margin-left: 1.5rem;
}
.secInsta .txtMore::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.7rem;
    width: 0.8rem;
    height: 0.8rem;
    transform: rotate(45deg);
    margin: auto 0;
    border-top: 0.2rem solid var(--textColor);
    border-right: 0.2rem solid var(--textColor);
}
.secInsta .bg{
    position: relative;
    z-index: 0;
    border-radius: 1.5rem;
    overflow: hidden;
}
@media only screen and (max-width:1215px){
    .secInsta{
        gap: 3rem 0;
        margin-top: 5rem;
        flex-direction: column;
    }
    .secInsta .boxTxt{
        padding: 0 0 3rem;
    }
    .secInsta .bnr{
        width: 100%;
        display: block;
    }
    .secInsta .icon img{
        width: 2.6rem;
        height: auto;
    }
    .secInsta .txt{
        font-size: var(--spFontSize15);
        letter-spacing: 0;
        margin: 1rem 0 1rem;
    }
    .secInsta .txtRoman{
        font-size: var(--spFontSize34);
        letter-spacing: 0;
        margin: 0;
    }
    .secInsta .txtAccount{
        font-size: var(--spFontSize11);
        letter-spacing: var(--spLetterSpacing11_30);
        position: absolute;
        bottom: 2.5rem;
        left: 1.5rem;
    }
    .secInsta .txtMore{
        font-size: var(--spFontSize11);
        letter-spacing: var(--spLetterSpacing11_30);
        bottom: 1.5rem;
        right: 1.5rem;
        display: flex;
    }
    .secInsta .txtMore::after{
        width: 2.6rem;
        height: 2.6rem;
        margin-left: 1rem;
    }
    .secInsta .txtMore::before{
        right: 1rem;
        width: 0.6rem;
        height: 0.6rem;
        border-width: 0.2rem;
    }
    .secInsta .bg{
        border-radius: 0.5rem;
    }
}

/* secAbout */
.secAbout{
    position: relative;
    padding: 0 0 20rem;
    margin-top: 15rem;
}
.secAbout::before{
    content: "";
    display: block;
    width: 100%;
    aspect-ratio: 1870 / 850;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    border-radius: 3rem;
}
.secAbout.lazyloaded::before{
    background-image: url(../img/index/imgAbout.jpg);
}
.secAbout .boxTit{
    position: relative;
    z-index: 1;
    color: #fff;
    padding: 27.5rem 0 27.5rem;
}
.secAbout .titTopRoman{
    font-size: var(--pcFontSize85);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing85_50);
}
.secAbout .titTop{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    position: relative;
    margin: 3.5rem 0 0 6rem;
}
.secAbout .titTop::before{
    content: "";
    display: block;
    width: 1px;
    height: 3rem;
    background-color: #fff;
    position: absolute;
    top: -0.8rem;
    left: -2.2rem;
    transform: rotate(30deg);
}
.secAbout .boxTxt{
    position: relative;
    z-index: 1;
    color: #fff;
    padding: 9rem 8.5rem 15rem;
    background-color: #7f8c58;
    background-position: center top;
    background-size: cover;
    background-repeat: repeat;
    border-radius: 3rem;
}
.secAbout.lazyloaded .boxTxt{
    background-image: url(../img/index/bgAbout.png);
}
.secAbout .txt{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    line-height: var(--pcLineHeight18_40);
}
.secAbout .txt + .txt{
    margin-top: 4rem;
}
.secAbout .boxTxt .cmnBtn{
    width: 24rem;
    margin-top: 5.8rem;
}
.secAbout .boxTxt .cmnBtn .backlinkTxt{
    text-align: left;
}
.secAbout .scrollWrapper{
    position: absolute;
    bottom: 10rem;
    left: 63.5rem;
    right: 0;
    z-index: 1;
    width: 174rem;
    overflow: hidden;
    white-space: nowrap;
}
.secAbout .scrollTrack{
    display: inline-block;
    animation: scrollLeft 40s linear infinite;
    font-size: 0;
}
.secAbout .scrollTrack span {
    display: inline-block;
    padding-right: 0; /* スペースなし */
    white-space: nowrap;
}
@media only screen and (max-width:1215px){
    .secAbout{
        padding: 0 0 8rem;
        margin-top: 8rem;
    }
    .secAbout::before{
        width: 95vw;
        aspect-ratio: 355 / 320;
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
        border-radius: 0 1rem 1rem 0;
    }
    .secAbout.lazyloaded::before{
        background-image: url(../img/index/imgAbout_sp.jpg);
    }
    .secAbout .boxTit{
        padding: 10.3rem 0 8.8rem;
    }
    .secAbout .titTopRoman{
        font-size: var(--spFontSize36);
        letter-spacing: var(--spLetterSpacing36_30);
    }
    .secAbout .titTop{
        font-size: var(--spFontSize11);
        letter-spacing: 0;
        margin: 1.2rem 0 0 3rem;
    }
    .secAbout .titTop::before{
        height: 1.5rem;
        top: -0.3rem;
        left: -0.5rem;
    }
    .secAbout .boxTxt{
        width: 95vw;
        margin-left: 5vw;
        padding: 3.5rem 2rem 28rem;
        border-radius: 1rem 0 0 1rem;
    }
    .secAbout .txt{
        font-size: var(--spFontSize12);
        letter-spacing: 0;
        line-height: var(--spLineHeight12_26);
    }
    .secAbout .txt + .txt{
        margin-top: 2.5rem;
    }
    .secAbout .boxTxt .cmnBtn{
        width: 21.5rem;
        margin-top: 2.5rem;
        margin-inline: auto;
    }
    .secAbout .scrollWrapper{
        bottom: 4.5rem;
        left: 2rem;
        width: calc(100% - 2rem);
    }
    .secAbout .scrollTrack span img{
        width: auto;
        height: 19.2rem;
    }
}

.secCatalog .titRoman{
    width: 28.6rem;
}
.secCatalog .tit{
    font-size: var(--pcFontSize60);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing60_50);
    padding: 2.5rem 0 0rem;
}
@media only screen and (max-width: 1215px) {
    .secCatalog .titRoman {
        width: 16.8rem;
    }
    .secCatalog .tit{
        font-size: var(--spFontSize24);
        letter-spacing: 0;
        padding: 1.9rem 0 0;
    }
}