/*
1.breadcrumb
2.category page ,brand page
3.brand page 下層
4.store
5.about
6.present 下層
*/


/* breadcrumb */
@media only screen and (min-width: 900px) {
    .breadcrumb {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 20px;
        display: flex;
        flex-wrap: wrap;
    }
    .breadcrumb li {
        position: relative;
        padding-right: 1rem;
    }
    .breadcrumb li:not(:first-of-type) {
        padding-left: 2rem;
    }
    .breadcrumb li:not(:first-of-type):before {
        content: "";
        content: '';
        width: 6px;
        height: 6px;
        border: 0;
        border-top: solid 2px #E2DCCD;
        border-right: solid 2px #E2DCCD;
        transform: rotate(45deg);
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
    }
    .breadcrumb li:first-child a {
        color: #999;
    }
    .breadcrumb li a {
        font-size: 11px;
        letter-spacing: 0;
    }
    .breadcrumb li a .txt-g,
    .breadcrumb li:not(:last-child) span {
        color: #918E85;
    }
}

/* cat, brand */
/* kv-wrap */
.kv-wrap {
    position: relative;
    /* padding-bottom: 28rem; */
    margin-bottom: 10rem;
}
.kv-wrap.slider-bg {
    padding-bottom: 16rem;
}
.kv-wrap:before {
    content: "";
    width: 100%;
    height: calc(100% - 35rem);
    position: absolute;
    top: 35rem;
    background-color: #918E85;
    z-index: -1;
}
.kv-wrap .en-slider {
    font-size: 20rem;
    font-family: "Poppins", sans-serif;
    color: rgba(248,245,239,.05);
}
.kv-wrap .en-slider li.slick-slide {
    margin: 0 4rem;
}
.kv-wrap .img {
    display: block;
    width: 89.7%;
    margin: auto;
}
.kv-wrap.sp-full .img {
    width: 100%;
}
.kv-wrap .con-wrap {
    width: 89.7%;
    margin: auto;
    color: #fff;
}
.kv-wrap .con-wrap .cat-ttl {
    font-size: 4.8rem;
    font-weight: normal;
    margin: 8rem 0 4rem;
}
.kv-wrap .con-wrap .subttl {
    font-size: 3rem;
    margin-bottom: 6rem;
}
@media only screen and (min-width: 900px) {
    .kv-wrap {
        width: 100%;
        margin: 0 auto 200px;
        padding-bottom: 100px;
    }
    .kv-wrap:before {
        width: 200vw;
        height: calc(100% - 25%);
        top: 25%;
        left: 50%;
        transform: translateX(-50%);
    }
    .kv-wrap .en-slider {
        font-size: 300px;
        line-height: 1;
        padding: 0;
        position: absolute;
        bottom: 134px;
        width: 100%;
        height: 300px
    }
    .kv-wrap .en-slider.slick-slider div {
        transition: none;
    }
    .kv-wrap .en-slider .slick-track,
    .kv-wrap .en-slider .slick-list {
        height: 340px;
    }
    .kv-wrap .img, .kv-wrap.sp-full .img {
        width: calc(100% - 24rem);
        max-width: 1200px;
    }
    .kv-wrap .con-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        display: grid;
        grid-template-columns: 1fr 560px;
        margin: 60px auto 0;
    }
    .kv-wrap .con-wrap .cat-ttl {
        font-size: 32px;
        margin: 0;
    }
    .kv-wrap .con-wrap .subttl {
        font-size: 17px;
        margin-bottom: 0;
    }
    .kv-wrap .con-wrap .txt {
        font-size: 13px;
    }
}

/* line-list */
.line-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 4rem;
    row-gap: 4rem;
    margin-bottom: 6rem;
}
.line-list li a figure {
    display: grid;
    grid-template-columns: 10rem 1fr;
    column-gap: 3rem;
    align-items: center;
    padding: 0 0 3rem 0;
    border-bottom: 1px solid #E2DCCD;
}
.line-list li a figcaption {
    font-size: 2.6rem;
    letter-spacing: 0;
}
@media only screen and (min-width: 900px) {
    .line-list li a figcaption {
        font-size: 15px;
    }
}

/* item-list */
.item-list {
    display: grid;
    column-gap: 6rem;
    row-gap: 6rem;
    grid-template-columns: repeat(2,1fr);
    margin-bottom: 4rem;
}
.item-list li img {
    border-radius: 1rem;
    margin-bottom: 3rem;
}
.item-list li .brand,
.pickup-item .brand {
    font-size: 2.2rem;
    /* color: #898989; */
}
.item-list li .item-name,
.pickup-item .item-name {
    font-size: 2.6rem;
    margin: 1rem 0 1.5rem;
}
.item-list li .price,
.pickup-item .price {
    font-size: 2.6rem;
    color: #898989;
}
.item-list li .txt {
font-size: 2.4rem;
color: #898989;
margin-top: 2rem;
}
@media only screen and (min-width: 900px) {
    .item-list li img {
        margin-bottom: 20px;
    }
    .item-list li .brand,
    .pickup-item .brand {
        font-size: 10px;
    }
    .item-list li .item-name,
    .pickup-item .item-name {
        font-size: 15px;
        margin: 5px 0 10px;
    }
    .item-list li .price,
    .pickup-item .price {
        font-size: 15px;
    }
}

/* index */
.index-wrap {
    width: 87%;
    margin: 0 auto 12rem;
}
.index-wrap .dot-ttlwrap {
    margin-bottom: 10rem;
}
@media only screen and (min-width: 900px) {
    .index-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 150px;
    }
    .index-wrap .dot-ttlwrap {
        margin-bottom: 90px;
    }
    .index-wrap .line-list {
        grid-template-columns: repeat(4, 1fr);
        column-gap: 40px;
        row-gap: 40px;
    }
    .index-wrap .line-list li a figure {
        grid-template-columns: 80px 1fr;
        column-gap: 30px;
    }
}

/* feature */
.feature-wrap {
    margin-bottom: 8rem;
}
.feature-wrap .dot-ttlwrap {
    padding: 0 4rem;
}
.feature-wrap .slider-wrap {
    padding-left: 4rem;
    overflow: hidden;
}
.feature-slider {
    list-style: none;
    padding-left: 0;
    margin: 0;
}
.feature-slider .slick-list{
    overflow: visible;
}
.feature-wrap .slick-dotted.slick-slider {
    margin-bottom: 0;
}
.feature-slider .slick-slide {
    width: 44rem!important;
}
.feature-slider li {
    margin: 0 3rem 6rem;
}
.feature-slider li a {
    display: block;
    width: 44rem;
}
.feature-slider li a img {
    width: 100%;
    height: 44rem;
    margin-bottom: 5rem;
}
.feature-slider li a .brand-name {
    margin: 0;
    font-size: 2.2rem;
    border: 1px solid #E2DCCD;
    border-radius: 2.4rem;
    display: inline-block;
    padding: 0 2rem;
    min-height: 4rem;
}
.feature-slider li a .feature-ttl {
    font-size: 3.4rem;
    margin: 1.5rem 0;
}
.feature-slider li a .txt {
    color: #898989;
    line-height: 1.75;
}
.feature-slider .arrow-wrap {
    width: 56rem;
    position: relative;
    padding: 0 14rem 0 1rem;
    box-sizing: content-box;
}
.feature-slider .arrow-wrap .scroll-txt {
    font-size: 2rem;
    position: absolute;
    right: 0;
    bottom: -7.5rem;
    font-family: "Poppins", sans-serif;
    font-size: 2rem;
    color: rgba(35,24,21,.5);
    z-index: 9;
}
.feature-slider .slick-dots {
    width: 56rem;
    bottom: initial;
    padding: 6rem 14rem 6rem 1rem;
    box-sizing: content-box;
    position: relative;
    display: flex;
}
.feature-slider .slick-dots li {
    width: calc(100% / 4);
    height: 1px;
    margin: 0;
}
.feature-slider .slick-dots li button {
    width: 100%;
    height: 1px;
    padding: 0;
}
.feature-slider .slick-dots li button:before {
    content: "";
    width: 100%;
    height: 1px;
    line-height: 1px;
    background-color: #E2DCCD;
    opacity: 1;
    top: 50%;
    transform: translateY(-50%);
}
.feature-slider .slick-dots li.slick-active button:before {
    background-color: #918E85;
}
@media only screen and (min-width: 900px) {
    .feature-wrap {
        margin-bottom: 150px;
    }
    .feature-wrap .dot-ttlwrap {
        padding: 0 12rem;
    }
    .feature-wrap .slider-wrap {
        width: 100%;
        padding-left: 12rem;
    }
    .feature-wrap .slick-dotted.slick-slider {
        overflow: hidden;
    }
    .feature-slider .slick-slide {
        width: min(25.69vw, 370px )!important;
    }
    .feature-slider li {
        margin: 0 max(2.25rem, 2.25px);
    }
    .feature-slider li a {
        width: min(25.69vw, 370px);
    }
    .feature-slider li a img {
        height: auto;
        margin-bottom: max(3rem, 30px);
    }
    .feature-slider li a .brand-name {
        font-size: 16px;
        margin: 0 0 10px;
        min-height: 22px;
    }
    .feature-slider li a .feature-ttl {
        font-size: 19px;
        margin: 10px 0;
    }
    .feature-slider li a .txt {
        font-size: 13px;
    }
    .feature-slider .arrow-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        box-sizing: border-box;
    }
    .feature-slider .arrow-wrap .scroll-txt {
        font-size: 11px;
        bottom: -70px;
        cursor: pointer;
    }
    .feature-slider .slick-dots {
        padding: 60px 74px 60px 0;
        width: calc(100% - 24rem);
        max-width: 1200px;
        box-sizing: border-box;
    }
}
@media only screen and (min-width: 1440px) {
    .feature-wrap .dot-ttlwrap {
        padding: 0 calc(-600px + 50vw);
    }
    .feature-wrap .slider-wrap {
        padding-left: calc(-600px + 50vw);
    }
}

/* item */
.item-wrap {
    width: 87%;
    margin: 0 auto 10rem;
}
.item-wrap .btn-more {
    width: max-content;
    min-width: 40rem;
    margin: 8rem auto 0;
    padding: 4rem 5.8rem;
}
@media only screen and (min-width: 900px) {
    .item-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 100px;
    }
    .item-wrap .item-list {
        grid-template-columns: repeat(5,1fr);
        column-gap: 25px;
        row-gap: 60px;
    }
    .item-wrap .btn-more {
        margin: 60px auto 0;
        padding: 20px;
    }
    .item-wrap .btn-more span {
        font-size: 15px;
        width: max-content;
        padding-right: 20px;
        margin: auto;
    }
    .item-wrap .btn-more span:after {
        width: 9px;
    }
}

/* recommend */
.recommend-wrap {
    background-color: #918E85;
    padding: 10rem 0 10rem 4rem;
    margin-bottom: 10rem;
}
.recommend-wrap .dot-ttl {
    color: #fff;
}
.recommend-wrap .dot-txt {
    color: #BEA870;
}
.recommend-wrap .dot-txt:before {
    background-color: #BEA870;
}
.recommend-wrap .rec-list {
    display: flex;
    column-gap: 6rem;
    width: 133%;
    max-width: none;
    max-height: 100%;
    padding-right: 4rem;
}
.recommend-wrap .rec-list li a {
    display: block;
    width: 44rem;
}
.recommend-wrap .rec-list li a img {
    width: 100%;
    height: 44rem;
    margin-bottom: 5rem;
}
.recommend-wrap .rec-list li a .txt {
    color: #fff;
    line-height: 1.75;
    margin: 0 0 4rem;
}
.recommend-wrap .rec-list li a .item-name {
    margin: 0 0 5rem;
    font-size: 2.6rem;
    line-height: 1.75;
}
.recommend-wrap .rec-list li .staff-wrap {
    border-top: 1px solid rgba(226,220,205,.1);
    padding-top: 5rem;
    display: grid;
    grid-template-columns: 9rem 1fr;
    column-gap: 3.2rem;
    align-items: center;
}
.recommend-wrap .rec-list li .staff-wrap .staff-img img {
    width: 9rem;
    height: 9rem;
    margin-bottom: 0;
}
.recommend-wrap .rec-list li .staff-name {
    font-size: 2.6rem;
    margin: 0;
    color: #F0EDE6;
}
.recommend-wrap .rec-list li .staff-name span {
    display: block;
    font-size: 2.2rem;
    color: rgba(240,237,230,.6);
    margin-top: 1rem;
}
@media only screen and (min-width: 900px) {
    .recommend-wrap {
        padding: 100px 0;
    }
    .recommend-wrap .dot-ttlwrap,
    .recommend-wrap .rec-list {
        width: calc(100% - 24rem);
        max-width: 1200px;
    }
    .recommend-wrap .dot-ttlwrap {
        margin: 0 auto 60px;
    }
    .recommend-wrap .rec-list {
        margin: auto;
        padding: 0;
        display: grid;
        grid-template-columns: repeat(2,1fr);
        column-gap: 45px;
    }
    .recommend-wrap .rec-list li {
        display: grid;
        grid-template-columns: min(19.44vw, 280px) 1fr;
        grid-template-rows: max-content max-content;
        column-gap: max(3rem, 30px);
    }
    .recommend-wrap .rec-list li a {
        width: 100%;
    }
    .recommend-wrap .rec-list li a:first-child {
        grid-area: 1 / 1 / 3 / 2;
    }
    .recommend-wrap .rec-list li a:nth-child(2) {
        grid-area: 1 / 2 / 2 / 2;
    }
    .recommend-wrap .rec-list li a img {
        height: auto;
        margin-bottom: 0;
    }
    .recommend-wrap .rec-list li a .txt {
        font-size: 13px;
        margin: 0 0 25px;
    }
    .recommend-wrap .rec-list li a .item-name {
        font-size: 13px;
        margin: 0 0 25px;
    }
    .recommend-wrap .rec-list li .staff-wrap {
        grid-area: 2 / 2 / 3 / 3;
        padding-top: 25px;
        grid-template-columns: 45px 1fr;
        column-gap: 16px;
    }
    .recommend-wrap .rec-list li .staff-wrap .staff-img img {
        width: 45px;
        height: 45px;
    }
    .recommend-wrap .rec-list li .staff-name {
        font-size: 13px;
    }
    .recommend-wrap .rec-list li .staff-name span {
        font-size: 10px;
        margin-top: 5px;
    }
}

/* present */
.gift-wrap {
    width: 87%;
    margin: 0 auto 10rem;
}
.gift-wrap .item-list {
    padding-bottom: 12rem;
    border-bottom: 1px solid #E2DCCD;
}
.gift-wrap .gift-list {
    display: grid;
    row-gap: 4rem;
}
.gift-wrap .gift-list-top,
.gift-wrap .gift-list-top02 {
    border-top: 1px solid #E2DCCD;
    padding-top: 4rem;
}
.gift-wrap .gift-list li a figcaption {
    font-size: 3rem;
}
@media only screen and (max-width: 899px) {
    .gift-wrap .gift-list li a figure {
        display: grid;
        grid-template-columns: 16rem 1fr;
        column-gap: 5rem;
        align-items: center;
        padding-bottom: 4rem;
        border-bottom: 1px solid #E2DCCD;
    }
}
@media only screen and (min-width: 900px) {
    .gift-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 170px;
    }
    .gift-wrap .item-list {
        grid-template-columns: repeat(4,1fr);
        column-gap: 40px;
        padding-bottom: 75px;
        margin-bottom: 75px;
    }
    .gift-wrap .item-list li .txt {
        color: #898989;
        font-size: 13px;
        margin-top: 10px;
    }
    .gift-wrap .gift-list {
        grid-template-columns: repeat(3,1fr);
        column-gap: 45px;
    }
    .gift-wrap .gift-list-top {
        padding-top: 75px;
        margin-top: 100px;
    }
    .gift-wrap .gift-list-top02 {
        padding-top: 50px;
        border-top: none;
    }
    .gift-wrap .gift-list li a figcaption {
        font-size: 17px;
        margin-top: 15px;
    }

}

/* search */
.search-wrap {
    width: 87%;
    margin: 0 auto 12rem;
}
.search-wrap .dot-ttlwrap {
    padding-bottom: 5rem;
    border-bottom: 1px solid #E2DCCD;
    margin-bottom: 5rem;
}
.search-wrap .search-ttl {
    font-size: 3rem;
    font-weight: normal;
    margin-bottom: 4rem;
}
.search-wrap .line-list {
    grid-template-columns: 1fr;
    margin-bottom: 7rem;
}
.search-wrap .line-list li a figure {
    grid-template-columns: 20rem 1fr;
    column-gap: 5rem;
}
.search-wrap .line-list li a .search-name {
    font-size: 3rem;
    margin: 0 0 2rem;
}
.search-wrap .line-list li a .search-txt {
    font-size: 2.4rem;
    line-height: 2;
    color: #898989;
    margin: 0;
}
@media only screen and (min-width: 900px) {
    .search-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 150px;
    }
    .search-wrap .dot-ttlwrap {
        padding-bottom: 40px;
        margin-bottom: 50px;
    }
    .search-wrap .search-ttl {
        font-size: 19px;
        margin-bottom: 35px;
    }
    .search-wrap .line-list {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 40px;
        row-gap: 30px;
    }
    .search-wrap .line-list li a figure {
        grid-template-columns: 120px 1fr;
        column-gap: 30px;
    }
    .search-wrap .line-list li a .search-name {
        font-size: 15px;
        margin: 0 0 15px;
    }
    .search-wrap .line-list li a .search-txt {
        font-size: 12px;
    }
}

/* brand */
.brand-wrap {
    padding: 96rem 0 6rem;
    background: url(../img/wallet/kv01_sp.webp) center 6rem / 78rem 78rem no-repeat;
}
.brand-wrap.bag-brand {
    background: url(../img/bag/kv01_sp.webp) center 6rem / 78rem 78rem no-repeat;
}
.brand-wrap.ac-brand {
    background: url(../img/accessory/kv01_sp.webp) center 6rem / 78rem 78rem no-repeat;
}
.brand-wrap.st-brand {
    background: url(../img/stationery/kv01_sp.webp) center 6rem / 78rem 78rem no-repeat;
}
.brand-wrap .dot-ttlwrap {
    width: 89.7%;
    margin: 0 auto 6rem;
}
.brand-wrap .brand-list {
    width: 89.7%;
    margin: 0 auto 9rem;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    column-gap: 3.2rem;
    row-gap: 4rem;
}
.brand-wrap .brand-list .brand-name {
    font-size: 2.6rem;
    line-height: 1.4;
    word-break: break-all;
}
.brand-wrap .brand-list .brand-name span {
    display: block;
    font-size: 2rem;
    color: #898989;
    margin-top: 1rem;
}
.brand-wrap .btn-more,
.store-wrap .btn-more {
    margin: auto;
    width: 38rem;
}
.brand-wrap .btn-more span:after,
.store-wrap .btn-more span:after {
    transform: rotate(90deg) translateY(-50%);
    transform-origin: top center;
}
.brand-wrap .js-btn-close,
.store-wrap .js-btn-close {
    display: none;
}
.brand-wrap .js-btn-close span:after,
.store-wrap .js-btn-close span:after {
    transform: rotate(-90deg) translateY(-50%);
    transform-origin: top center;
}
@media only screen and (min-width: 900px) {
    .brand-wrap {
        padding: 48.61vw 0 10px;
        position: relative;
        background: none !important;
    }
    .brand-wrap:before {
        content: "";
        width: 100vw;
        height: 41.66vw;
        background: url(../img/wallet/kv01.webp) 0 / cover no-repeat;
        position: absolute;
        top: 0;
        left: 0;
    }
    .brand-wrap.bag-brand:before {
        background: url(../img/bag/kv01.webp) 0 / cover no-repeat;
    }
    .brand-wrap.ac-brand:before {
        background: url(../img/accessory/kv01.webp) 0 / cover no-repeat;
    }
    .brand-wrap.st-brand:before {
        background: url(../img/stationery/kv01.webp) 0 / cover no-repeat;
    }
    .brand-wrap .dot-ttlwrap,
    .brand-wrap .brand-list {
        width: calc(100% - 24rem);
        max-width: 1200px;
    }
    .brand-wrap .brand-list {
        grid-template-columns: repeat(8,1fr);
        column-gap: 16px;
        row-gap: 60px;
        margin-bottom: 75px;
    }
    .brand-wrap .brand-list .brand-name {
        font-size: 13px;
    }
    .brand-wrap .brand-list .brand-name span {
        font-size: 10px;
    }
}

/* brand */
.brand-sec {
    margin: 16rem auto 12rem;
    width: 89.7%;
}
.brand-sec .index-ttl {
    font-size: 3.2rem;
    font-weight: 600;
    color: #CCC5B4;
    border-bottom: 1px solid #CCC5B4;
    padding-bottom: 2rem;
    margin: 0 0 4rem;
}
.brand-sec .brand-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 3rem;
    row-gap: 4rem;
    margin-bottom: 12rem;
}
.brand-sec .brand-list .name {
    font-size: 2.6rem;
    margin-bottom: 1.5rem;
}
.brand-sec .brand-list .txt {
    font-size: 2.2rem;
    color: #898989;
}
@media only screen and (min-width: 900px) {
    .brand-col2 {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 110px auto 0;
        position: relative;
        display: grid;
        row-gap: 80px;
    }
    .brand-col2 .side {
        /* position: sticky;
        top: 85px;
        z-index: 2; */
    }
    .brand-col2 .side-nav ul {
        display: flex;
        justify-content: center;
        align-items: center;
        column-gap: 30px;
        height: 70px;
        background-color: #FAF8F5;
        border-radius: 35px;
    }
    .brand-col2 .side-nav .side-link {
        font-size: 14px;
        color: #898989;
    }
    .brand-col2 .side-nav .side-link:hover,
    .brand-col2 .side-nav .side-link.is-active {
        color: rgba(137,137,137,.4);
    }
    .brand-sec {
        width: 100%;
        margin: 0;
    }
    .brand-sec .index-ttl {
        font-size: 20px;
        border-bottom: none;
        padding-bottom: 0;
        position: relative;
        margin-bottom: 35px;
        scroll-margin-top: 100px;
    }
    .brand-sec .index-ttl:after {
        content: "";
        width: calc(100% - 4em);
        height: 1px;
        background-color: #CCC5B4;
        position: absolute;
        top: 50%;
        left: 4em;
        transform: translateY(-50%);
    }
    .brand-sec .brand-list {
        grid-template-columns: repeat(4, 1fr);
        column-gap: 40px;
        row-gap: 40px;
        margin-bottom: 120px;
    }
    .brand-sec .brand-list .name {
        font-size: 15px;
        margin-bottom: 15px;
    }
    .brand-sec .brand-list .txt {
        font-size: 13px;
    }
}

/* column */
.column-wrap {
    width: 89.7%;
    margin: 6rem auto;
    background-color: #F8F5EF;
    border-radius: 2rem;
    padding: 10rem 5rem 11rem;
}
.column-wrap .dot-txt {
    color: #BEA870;
}
.column-wrap .dot-txt:before {
    background-color: #BEA870;
}
.column-wrap .item-list {
    column-gap: 4rem;
}
@media only screen and (min-width: 900px) {
    .column-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 75px auto;
        padding: 100px;
    }
    .column-wrap .item-list {
        grid-template-columns: repeat(4, 1fr);
        column-gap: 30px;
        row-gap: 60px;
        margin-bottom: 0;
    }
    .column-wrap .item-list li .brand,
    .column-wrap .item-list li .item-name {
        font-size: 14px;
    }
}

/* brand 下層 */
.page-brand .kv-wrap {
    padding-bottom: 8rem;
}
.page-brand .logo-img img {
    width: 14rem;
    height: 14rem;
    margin-top: 8rem;
}
.page-brand .img-slider .slide img {
    width: 50rem;
    height: auto;
}
.page-brand .img-slider .slide.slick-center img {
    transform: scale(.8);
    transition: transform .3s;
}
@media only screen and (min-width: 900px) {
    .page-brand .kv-wrap {
        padding-bottom: 100px;
        margin-bottom: 100px;
    }
    .page-brand .kv-wrap .con-wrap {
        position: relative;
        margin-bottom: 100px;
    }
    .page-brand .logo-img {
        position: absolute;
        top: 160px;
    }
    .page-brand .logo-img img {
        width: 89px;
        height: 89px;
        margin: 0;
    }
    .page-brand .kv-wrap .en-slider {
        bottom: initial;
        top: 700px;
    }
    .page-brand .img-slider .slide {
        margin: 0 25px;
    }
    .page-brand .img-slider .slide img {
        width: 599px;
    }
    .page-brand .img-slider .slide.slick-center {
        margin-top: 39px;
    }
    .page-brand .img-slider .slide.slick-center img {
        transform: none;
        width: 480px;
    }
}

/* brand下層 pickup */
.page-brand .pickup-wrap {
    width: 87%;
    margin: 0 auto 12rem;
}
.page-brand .pickup-wrap figcaption .txt {
    margin: 4rem 0;
}
@media only screen and (min-width: 900px) {
    .page-brand .pickup-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 90px;
    }
    .page-brand .pickup-wrap .pickup-item a figure {
        display: grid;
        grid-template-columns: 740px 1fr;
        column-gap: 60px;
        align-items: center;
    }
    .page-brand .pickup-wrap figcaption .txt {
        border-bottom: 1px solid #E2DCCD;
        margin: 0 0 40px;
        padding-bottom: 40px;
    }
}

/* brand下層 cat */
.page-brand .index-wrap .btn-more {
    width: max-content;
    min-width: 40rem;
    margin: 8rem auto 0;
}
@media only screen and (min-width: 900px) {
    .page-brand .index-wrap .btn-more {
        margin: 60px auto 0;
        padding: 20px;
    }
    .page-brand .index-wrap .btn-more span {
        font-size: 15px;
        width: max-content;
        padding-right: 20px;
        margin: auto;
    }
    .page-brand .index-wrap .btn-more span:after {
        width: 9px;
    }
}

/* brand下層 staff */
.page-brand .recommend-wrap {
    padding: 10rem 4rem;
}
.page-brand .recommend-wrap .staff-wrap {
    display: grid;
    grid-template-columns: 13rem 1fr;
    column-gap: 3rem;
    align-items: center;
    margin-bottom: 6rem;
}
.page-brand .recommend-wrap .staff-name {
    font-size: 3rem;
    margin: 0;
    color: #F0EDE6;
}
.page-brand .recommend-wrap .staff-name span {
    display: block;
    font-size: 2.2rem;
    color: rgba(240, 237, 230, .6);
    margin-top: 1rem;
}
.page-brand .recommend-wrap .txt-wrap .txt {
    color: #F0EDE6;
}
@media only screen and (min-width: 900px) {
    .page-brand .recommend-wrap {
        padding: 100px 0;
    }
    .page-brand .recommend-wrap .inner {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: auto;
        display: grid;
        grid-template-columns: 45% 50%;
        column-gap: 5%;
    }
    .page-brand .recommend-wrap .dot-ttlwrap {
        width: 100%;
        margin: 0 0 50px;
        flex-direction: column-reverse;
        align-items: flex-start;
    }
    .page-brand .recommend-wrap .staff-wrap {
        grid-template-columns: 80px 1fr;
        column-gap: 30px;
    }
    .page-brand .recommend-wrap .staff-name {
        font-size: 15px;
    }
    .page-brand .recommend-wrap .staff-name span {
        font-size: 10px;
    }
}

/* brand下層 store */
.store-wrap {
    width: 87%;
    margin: 0 auto 10rem;
}
.store-wrap .item-list {
    margin-bottom: 8rem;
}
.store-wrap .item-list li .txt {
    color: #898989;
    font-size: 2.2rem;
}
@media only screen and (min-width: 900px) {
    .store-wrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 80px;
    }
    .store-wrap .item-list {
        grid-template-columns: repeat(4,1fr);
        column-gap: 40px;
        margin-bottom: 0;
    }
    .store-wrap .item-list li .txt {
        font-size: 13px;
        margin-top: 10px;
    }

}

/* store */
.page-store .top-ttl {
    font-size: 5.2rem;
    padding: 10rem 0;
    text-align: center;
}
.page-store .store-list {
    width: 89.7%;
    margin: 0 auto 5rem;
}
.page-store .store-list li {
    border-top: 1px solid #D6D1C2;
    padding: 8rem 0;
}
.page-store .store-list li .name {
    font-size: 4rem;
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.page-store .store-list li .name span {
    font-size: 2.2rem;
    font-family: "Poppins", sans-serif;
    color: #CCC5B4;
}
.page-store .store-list li .img {
    display: block;
    margin: 4rem 0;
}
.page-store .store-list li .list {
    font-size: 2.6rem;
    color: #898989;
    display: grid;
    grid-template-columns: 14rem 1fr;
    line-height: 2;
    margin: 1rem 0;
}
.page-store .store-list li .list dd {
    margin-left: 0;
}
@media only screen and (min-width: 900px) {
    .page-store .top-ttl {
        font-size: 40px;
        padding: 50px 0 130px;
    }
    .page-store .store-list {
        width: calc(100% - 24rem);
        max-width: 1180px;
        margin: 0 auto 100px;
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    .page-store .store-list li {
        border-top: 1px solid #D6D1C2;
    }
    .page-store .store-list li:nth-of-type(odd) {
        padding: 65px 30px 65px 0;
    }
    .page-store .store-list li:nth-of-type(even) {
        padding: 65px 0 65px 30px;
    }
    .page-store .store-list li .name {
        font-size: 20px;
    }
    .page-store .store-list li .name span {
        font-size: 11px;
    }
    .page-store .store-list li .img {
        margin: 28px 0;
    }
    .page-store .store-list li .list {
        font-size: 13px;
        grid-template-columns: 80px 1fr;
        margin: 0 0 10px;
    }
}

/* about */
.about-wrap {
    padding-bottom: 60rem;
    background: url(../img/about/kv02_sp.webp) bottom / 78rem 60rem no-repeat;
    margin-bottom: 6rem;
}
.about-wrap .list {
    width: 89.7%;
    margin: 0 auto 14rem;
}
.about-wrap .list .block + .block {
    border-top: 1px solid #D6D1C2;
    padding-top: 12.5rem;
    margin-top: 13rem;
}
.about-wrap .list .block .img {
    display: block;
    margin-bottom: 6rem;
}
.about-wrap .list .block .txt + .txt {
    margin-top: 4rem;
}
@media only screen and (min-width: 900px) {
    .about-page .kv-wrap {
        margin-bottom: 130px;
    }
    .about-wrap {
        padding-bottom: 41.66vw;
        background: url(../img/about/kv02.webp) bottom / 100% 41.66vw no-repeat;
        margin-bottom: 75px;
    }
    .about-wrap .list {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 150px;
    }
    .about-wrap .list .block + .block {
        padding-top: 120px;
        margin-top: 120px;
    }
    .about-wrap .list .block {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto 1fr;
        align-items: flex-start;;
    }
    .about-wrap .list .block:nth-of-type(odd) {
        grid-template-areas:
            "ttl img"
            "txt img";
    }
    .about-wrap .list .block:nth-of-type(even) {
        grid-template-areas:
            "img ttl"
            "img txt";
    }
    .about-wrap .list .block .num-ttlwrap {
        grid-area: ttl;
    }
    .about-wrap .list .block .txt-wrap {
        grid-area: txt;
    }
    .about-wrap .list .block:nth-of-type(even) .num-ttlwrap,
    .about-wrap .list .block:nth-of-type(even) .txt-wrap {
        padding-left: 90px;
    }
    .about-wrap .list .block:nth-of-type(odd) .txt-wrap {
        padding-right: 90px;
    }
    .about-wrap .list .block .img {
        grid-area: img;
        margin-bottom: 0;
    }
    .about-wrap .list .block .txt + .txt {
        margin-top: 20px;
    }
    .about-wrap .list .block .txt {
        font-size: 13px;
    }
}

/* プレゼント下層 */
.present-under #feaures {
    width: 89.7%;
    margin: 10rem auto 12rem;
    padding: 0 0 12rem;
    border-bottom: 1px solid #CFC8B8;
}
.present-under #feaures .item-wrap {
    width: 100%;
    margin: 0;
}
.present-under #feaures .item-wrap li figure {
    margin-bottom: 2.4rem;
}
@media only screen and (min-width: 900px) {
    .present-under .kv-wrap {
        margin-bottom: 150px;
    }
    .present-under #feaures {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 120px;
        padding: 0 0 120px;
    }
}

/* プレゼント下層 */
/* ranking */
#ranking .dot-ttlwrap {
    padding: 0 4rem;
    margin-bottom: 5rem;
}
#ranking .ranking-slider li,
#ranking .ranking-slider li a {
    position: relative;
}
#ranking .ranking-slider li {
    margin: 0 2.5rem 6rem;
}
#ranking .ranking-slider li a {
    display: block;
    width: 44rem;
}
#ranking .ranking-slider li .ranking-num {
    font-family: "Poppins", sans-serif;
    font-size: 3.6rem;
    line-height: 5.8rem;
    position: absolute;
    top: 2rem;
    left: 2rem;
    width: 5.8rem;
    height: 5.8rem;
    background-color: #F0EDE6;
    border-radius: 50%;
    text-align: center;
}
#ranking .ranking-slider li .ranking-num.ranking-1 {
    background-color: #BEA870;
    color: #fff;
}
#ranking .ranking-slider li .ranking-num.ranking-2 {
    background-color: #B9BAB9;
    color: #fff;
}
#ranking .ranking-slider li .ranking-num.ranking-3 {
    background-color: #997A5C;
    color: #fff;
}
#ranking .item-wrap {
    width: 100%;
    margin: 0 0 14rem;
    padding-left: 4rem;
}
#ranking .item-wrap li img {
    width: 100%;
    height: auto;
    border-radius: 1rem;
    margin-bottom: 3rem;
}
#ranking .item-wrap li .brand {
    font-size: 2rem;
}
#ranking .item-wrap li .item-name {
    font-size: 3rem;
    margin: 1rem 0;
}
#ranking .item-wrap li .price {
    font-size: 3rem;
    color: #898989;
}
#ranking .item-wrap .slick-dots {
    width: 56rem;
    bottom: initial;
    padding: 6rem 14rem 6rem 1rem;
    box-sizing: content-box;
    position: relative;
    display: flex;
}
#ranking .item-wrap .slick-dots:after {
    content: "SCROLL";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    font-family: "Poppins", sans-serif;
    font-size: 2rem;
    color: rgba(35,24,21,.5);
}
#ranking .item-wrap .slick-dots li {
    width: calc(100% / 4);
    height: 1px;
    margin: 0;
}
#ranking .item-wrap .slick-dots li button {
    width: 100%;
    height: 1px;
    padding: 0;
}
#ranking .item-wrap .slick-dots li button:before {
    content: "";
    width: 100%;
    height: 1px;
    line-height: 1px;
    background-color: #E2DCCD;
    opacity: 1;
    top: 50%;
    transform: translateY(-50%);
}
#ranking .item-wrap .slick-dots li.slick-active button:before {
    background-color: #918E85;
}
@media only screen and (max-width: 899px) {
    #ranking .ranking-slider .slick-slide {
        width: 44rem!important;
    }
}
@media only screen and (min-width: 900px) {
    #ranking {
        width: 100%;
    }
    #ranking .dot-ttlwrap {
        padding: 0 12rem;
        margin-bottom: 60px;
    }
    #ranking  .slick-slide {
        width: min(15.27vw, 220px )!important;
    }
    #ranking .item-wrap {
        padding-left: 12rem;
        margin: 0 0 120px;
    }
    #ranking .item-wrap li {
        margin: 0 25px 0 0;
    }
    #ranking .item-wrap li:last-child {
        padding-right: 25px;
        box-sizing: content-box;
    }
    #ranking .ranking-slider li .ranking-num {
        width: 29px;
        height: 29px;
        font-size: 18px;
        line-height: 29px;
        top: 10px;
        left: 10px;
    }
    #ranking .slick-dotted.slick-slider {
        overflow: hidden;
        max-width: none;
    }
    #ranking .item-wrap li a {
        display: block;
        width: min(15.27vw, 220px);
    }
    #ranking .item-wrap li img {
        margin-bottom: 20px;
    }
    #ranking .item-wrap li .brand {
        font-size: 10px;
    }
    #ranking .item-wrap li .item-name,
    #ranking .item-wrap li .price {
        font-size: 15px;
    }
    #ranking .item-wrap .slick-dots {
        padding: 60px 74px 60px 0;
        width: calc(100% - 24rem);
        max-width: 1200px;
        box-sizing: border-box;
    }
    #ranking .item-wrap .slick-dots:after {
        font-size: 11px;
    }
}
@media only screen and (min-width: 1440px) {
    #ranking .dot-ttlwrap {
        padding: 0 calc(-600px + 50vw);
    }
    #ranking .item-wrap {
        padding-left: calc(-600px + 50vw);
    }
}

/* プレゼント下層 */
/* item */
#present-item {
    margin-bottom: 14rem;
}
#present-item .dot-ttlwrap {
    width: 89.7%;
    margin: 0 auto 7rem;
}
#present-item .list {
    width: 68rem;
    margin: 0 auto 18rem;
    display: grid;
    row-gap: 2rem;
}
#present-item .list li a {
    background-color: #FAF8F5;
    text-align: center;
    font-size: 3.4rem;
    display: grid;
    place-content: center;
    height: 13rem;
    border-radius: 20rem;
}
@media only screen and (min-width: 900px) {
    #present-item .dot-ttlwrap {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 100px;
    }
    #present-item .list {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 140px;
        grid-template-columns: repeat(3,1fr);
        column-gap: 30px;
    }
    #present-item .list li a {
        font-size: 17px;
        height: 65px;
        border-radius: 30px;
    }
}
#present-item {
    margin-bottom: 180px;
}
#present-item .item-list-wrap {
    padding-bottom: 60rem;
}
#present-item .item-list-wrap01 {
    background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv01_sp.webp) bottom / 78rem 60rem no-repeat;
}
#present-item .item-list-wrap02 {
    background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv02_sp.webp) bottom / 78rem 60rem no-repeat;
}
#present-item .item-list-wrap03 {
    background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv03_sp.webp) bottom / 78rem 60rem no-repeat;
}
#present-item .item-list-block {
    padding: 12rem 4rem 14rem;
}
#present-item .item-list-block:nth-of-type(odd) {
    background-color: #EBE7DD;
}
#present-item .item-list-block .ttl {
    font-size: 4rem;
    font-weight: normal;
    line-height: 1.45;
    margin: 0 0 5rem;
}
#present-item .item-list-block .item-list {
    margin: 8rem 0 0;
    column-gap: 5rem;
    row-gap: 8rem;
}
#present-item .item-list-block .item-list li .brand {
    color: initial;
}
#present-item .item-list-block .item-list li .txt {
    font-size: 2rem;
    line-height: 1.5;
}
@media only screen and (min-width: 900px) {
    #present-item .item-list-wrap {
        padding-bottom: 41.66vw;
    }
    #present-item .item-list-wrap01 {
        background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv01.webp) bottom / 100% 41.66vw no-repeat;
    }
    #present-item .item-list-wrap02 {
        background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv02.webp) bottom / 100% 41.66vw no-repeat;
    }
    #present-item .item-list-wrap03 {
        background: url(https://www.free-spirits.co.jp/assets/img/xmas/kv03.webp) bottom / 100% 41.66vw no-repeat;
    }
    #present-item .item-list-block {
        padding: 100px 12rem 120px;
    }
    #present-item .item-list-block .ttl {
        font-size: 24px;
        margin: 0 0 40px;
    }
    #present-item .item-list-block .item-list {
        margin: 50px 0 0;
        grid-template-columns: repeat(4,1fr);
        column-gap: 40px;
    }
    #present-item .item-list-block .item-list li .txt {
        font-size: 13px;
        line-height: 1.69;
    }
}
@media only screen and (min-width: 1440px) {
    #present-item .item-list-block {
        padding: 100px calc(-600px + 50vw) 120px;
    }
}

/* プレゼント下層 */
/* brand */
.present-under .brand-slider {
    list-style: none;
    padding-left: 0;
    margin: 0;
}
.present-under .brand-slider .slick-list{
    overflow: visible;
}
.present-under #brand .slick-dotted.slick-slider {
    margin-bottom: 0;
}
.present-under .brand-slider .slick-slide {
    width: 44rem!important;
}
.present-under .brand-slider li a img {
    width: 100%;
    height: 58.6rem;
    margin-bottom: 5rem;
}
.present-under .brand-slider li a .brand-name {
    margin: 0 0 2rem;
    font-size: 3rem;
}
.present-under .brand-slider li a .txt {
    color: #898989;
    line-height: 1.75;
}
.present-under .brand-slider .slick-dots {
    width: 56rem;
    bottom: initial;
    padding: 6rem 14rem 6rem 1rem;
    box-sizing: content-box;
    position: relative;
    display: flex;
}
.present-under .brand-slider .slick-dots:after {
    content: "SCROLL";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    font-family: "Poppins", sans-serif;
    font-size: 2rem;
    color: rgba(35,24,21,.5);
}
.present-under .brand-slider .slick-dots li {
    width: calc(100% / 4);
    height: 1px;
    margin: 0;
}
.present-under .brand-slider .slick-dots li button {
    width: 100%;
    height: 1px;
    padding: 0;
}
.present-under .brand-slider .slick-dots li button:before {
    content: "";
    width: 100%;
    height: 1px;
    line-height: 1px;
    background-color: #E2DCCD;
    opacity: 1;
    top: 50%;
    transform: translateY(-50%);
}
.present-under .brand-slider .slick-dots li.slick-active button:before {
    background-color: #918E85;
}
@media only screen and (max-width: 900px) {
    .present-under #brand .dot-ttlwrap {
        padding: 0 4rem;
    }
    .present-under #brand .slider-wrap {
        padding: 0 0 6rem 4rem;
        overflow: hidden;
    }
    .present-under .brand-slider li {
        margin: 0 3rem 6rem;
    }
    .present-under .brand-slider li a {
        display: block;
        width: 44rem;
    }
}
@media only screen and (min-width: 900px) {
    .present-under #brand {
        width: calc(100% - 24rem);
        max-width: 1200px;
        margin: 0 auto 105px;
    }
    .present-under #brand .dot-ttlwrap {
        margin-bottom: 35px;
    }
    .present-under .brand-slider {
        display: grid;
        grid-template-columns: repeat(4,1fr);
        column-gap: 40px;
    }
    .present-under .brand-slider li a img {
        height: auto;
        margin-bottom: max(3rem, 30px);
    }
    .present-under .brand-slider li a .brand-name {
        font-size: 17px;
        margin: 0 0 10px;
    }
    .present-under .brand-slider li a .txt {
        font-size: 13px;
    }
    .present-under .brand-slider .slick-dots {
        padding: 60px 74px 60px 0;
        width: calc(100% - 24rem);
        max-width: 1200px;
        box-sizing: border-box;
    }
    .present-under .brand-slider .slick-dots:after {
        font-size: 11px;
    }
}
