@charset "utf-8";
/* CSS Document */
.navitopicpath_ {
    display: none;
}

.ft-m {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.lifestyle-collection {
    position: relative;
}

.ls-attention {
    font-size: 3vw;
    line-height: 1.4;
    margin-top: 0.7rem;
}
@media screen and (min-width: 768px) {
    .ls-attention {
        font-size: clamp(10px, 2.8vw, 12px);
    }
}

.lifestyle-collection img,
.ls-wrapper img {
    width: 100%;
    height: inherit;
}
.tbObj_ {
    display: none;
}
@media screen and (min-width:768px) and (max-width:1023px) {
    .tbObj_ {
        display: block;
    }
}

.ls-wrapper {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
    font-size: 3.6vw;
    line-height: 1.9;
    position: relative;
}
@media screen and (min-width: 768px) {
    .ls-wrapper {
        font-size: clamp(14px, 3.6vw, 16px);
    }
}
@media screen and (min-width:768px) and (max-width:871px) {
    .ls-wrapper {
        font-size: clamp(13px, 3vw, 14px);
    }
}


/*-- kv slideer --------------------------------------------*/
.ls-kv {
    position: relative;
    height: auto;
    padding-bottom: 20%;
}
@media screen and (min-width: 768px) {
    .ls-kv {
        padding-bottom: 0;
    }
}

.ls-kv-title {
    position: absolute;
    width: 90%;
    height: auto;
    z-index: 10;
    top: 60%;
}
@media screen and (min-width: 768px) {
    .ls-kv-title {
        width: 40vw;
        max-width: 439px;
        left: 55%;
        top: 50%;
        transform: translateY(-50%);
    }
}


.ls-kv-slide {
    position: relative;
    width: 100%;
    height: auto;
    z-index: 5;
}
@media screen and (min-width: 768px) {
    .ls-kv-slide {
        width: 100%;
        height: 500px;
    }
}
@media screen and (min-width:768px) and (max-width:909.99px) {
    .ls-kv-slide {
        height: 400px;
    }
}

.ls-kv-slide .slide01 {
    background: url("../img/im-nl-slider01-sp.jpg") no-repeat top center;
    aspect-ratio: 750 / 835;
    background-size: cover;
}
.ls-kv-slide .slide02 {
    background: url("../img/im-nl-slider02-sp.jpg") no-repeat top center;
    aspect-ratio: 750 / 835;
    background-size: cover;
}
.ls-kv-slide .slide03 {
    background: url("../img/im-nl-slider03-sp.jpg") no-repeat top center;
    aspect-ratio: 750 / 835;
    background-size: cover;
}
.ls-kv-slide .slide04 {
    background: url("../img/im-nl-slider04-sp.jpg") no-repeat top center;
    aspect-ratio: 750 / 835;
    background-size: cover;
}

@media screen and (min-width: 768px) {
    .ls-kv-slide .slide01 {
        background: #dcdddf url("../img/im-nl-slider01-pc.jpg") no-repeat top center;
        aspect-ratio: 2000 / 500;
    }
    .ls-kv-slide .slide02 {
        background: #f4f1f2 url("../img/im-nl-slider02-pc.jpg") no-repeat top center;
        aspect-ratio: 2000 / 500;
    }
    .ls-kv-slide .slide03 {
        background: #f4f1f2 url("../img/im-nl-slider03-pc.jpg") no-repeat top center;
        aspect-ratio: 2000 / 500;
    }
    .ls-kv-slide .slide04 {
        background: #f8f8f8 url("../img/im-nl-slider04-pc.jpg") no-repeat top center;
        aspect-ratio: 2000 / 500;
    }
}
@media screen and (min-width:768px) and (max-width:909.99px) {
    .ls-kv-slide .slide01,
    .ls-kv-slide .slide02,
    .ls-kv-slide .slide03,
    .ls-kv-slide .slide04 {
        background-size: cover;
    }
}

/*-- recommend set --------------------------------------------*/
.ls-recommend-set {
    margin: 3rem auto;
}
@media screen and (min-width: 768px) {
    .ls-recommend-set {
        margin-bottom: 60px;
    }
}

.ls-for-treat .ls-recommend-set {
    margin: 4rem auto 2rem;
}
@media screen and (min-width: 768px) {
    .ls-for-treat .ls-recommend-set {
        margin: 120px auto 80px;
    }
}

.ls-recommend-set h2 {
    font-size: 5.4vw;
    text-align: center;
    margin-bottom: 2rem;
    position: relative;
}
@media screen and (min-width: 768px) {
    .ls-recommend-set h2 {
        font-size: clamp(28px, 5.4vw, 34px);
    }
}
@media screen and (min-width:768px) and (max-width:871px) {
    .ls-recommend-set h2 {
        font-size: clamp(26px, 5.4vw, 30px);
    }
}


.ls-for-treat .ls-recommend-set h2 {
    padding-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
    .ls-for-treat .ls-recommend-set h2 {
        padding-bottom: 20px;
    }
}

.ls-for-treat .ls-recommend-set h2:after {
    content: "";
    width: 1px;
    height: 2rem;
    background-color: #e9d0d0;
    position: absolute;
    top: 6rem;
    left: 50%;
    right: 50%;
}
@media screen and (min-width: 768px) {
    .ls-for-treat .ls-recommend-set h2:after {
        content: "";
        width: 1px;
        height: 60px;
        position: absolute;
        top: 100%;
        left: 50%;
        right: 50%;
    }
}

.ls-recommend-set .sub-title {
    position: relative;
    max-width: 350px;
    width: 80%;
    margin: 0 auto 1.5rem;
    padding: 0.5rem;
    border-radius: 9999px;
    text-align: center;
}
.ls-recommend-set .sub-title.for-gift {
    background-color: #dd666d;
    color: #fff;
}
.ls-recommend-set .sub-title.for-treat {
    background-color: #e9d0d0;
    color: #000000;
}

.ls-recommend-set .sub-title:after {
    content: "";
    position: absolute;
    bottom: 1%;
    left: 50%;
    border-style: solid;
    border-width: 1rem 0.7rem 0 0.7rem;
    translate: -50% 100%;
}
.ls-recommend-set .sub-title.for-gift:after {
    border-color: #dd666d transparent transparent;
}
.ls-recommend-set .sub-title.for-treat:after {
    border-color: #e9d0d0 transparent transparent;
}


.ls-recommend-set .wrapping-set-detail {
    width: 90%;
    margin: 0 auto;
    background-color: #f9f6f6;
    border-radius: 4px;
    padding: 3.5rem 5.3333%;
    position: relative;
}
@media screen and (min-width: 768px) {
    .ls-recommend-set .wrapping-set-detail {
        width: 100%;
        display: flex;
        column-gap: 40px;
        justify-content: space-between;
        align-items: center;
    }
    .ls-recommend-set .wrapping-set-detail figure {
        max-width: 50%;
    }
}
@media screen and (min-width:768px) and (max-width:1023.99px){
    .ls-recommend-set .wrapping-set-detail {
        width: 90%;
    }
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .ls-recommend-set .wrapping-set-detail {
        display: flex;
        flex-wrap: wrap;
    }
    .ls-recommend-set .wrapping-set-detail figure {
        max-width: 48%;
        width: 48%;
    }
}

.ls-recommend-set .wrapping-set-detail:before {
    content: "";
    position: absolute;
    display: block;
    width: 92px;
    height: 54px;
    background: url("../img/im-nl-ribbon-l.png") no-repeat center top;
    background-size: contain;
    top: -1px;
    left: 0;
}
.ls-recommend-set .wrapping-set-detail:after {
    content: "";
    position: absolute;
    display: block;
    width: 92px;
    height: 54px;
    background: url("../img/im-nl-ribbon-r.png") no-repeat center top;
    background-size: contain;
    bottom: -1px;
    right: 0;
}

.ls-recommend-set h3 {
    text-align: center;
    margin-bottom: 1rem;
    font-size: 4.6vw;
}
@media screen and (min-width: 768px) {
    .ls-recommend-set h3 {
        font-size: clamp(18px, 4.6vw, 24px);
    }
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .wrapping-text {
        width: 45%;
    }
    .ls-recommend-set h3 {
        font-size: 2.8vw;
    }
}
.ls-recommend-set h3 span {
    display: block;
    font-size: 3.4vw;
    margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
    .ls-recommend-set h3 span {
        font-size: clamp(16px, 3.4vw, 18px);
    }
}

.ls-recommend-set p {
    margin-top: 1.5rem;
    text-align: center;
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .ls-recommend-set p.pcObj_ {
        display: none !important;
    }
    .ls-recommend-set p.spObj_ {
        display: block !important;
        width: 100%;
    }
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .ls-recommend-set p.spObj_ br.tbObj_ {
        display: none;
    }
}


/*-- scene --------------------------------------------*/
.ls-scene {
    max-width: 1024px;
    width: 90%;
    margin: 0 auto;
}
@media screen and (min-width: 768px) {
    .ls-scene {
        width: 100%;
    }
}

.ls-scene h2 {
    text-align: center;
    font-size: 5.8vw;
    margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
    .ls-scene h2 {
        font-size: clamp(28px, 5.4vw, 34px);
        margin-bottom: 40px;
    }
}
@media screen and (min-width:768px) and (max-width:871px) {
    .ls-scene h2 {
        font-size: clamp(26px, 5.4vw, 30px);
    }
}

.ls-scene ul {
    display: flex;
    gap: 0 2.9629%;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .ls-scene ul {
        width: 80%;
    }
}
@media screen and (min-width: 768px) {
    .ls-scene ul {
        margin: 0 auto 100px;
        max-width: 750px;
    }
}


.ls-wrapper .scene-list.typeA {
    margin-right: 5.3333%;
    display: block;
    position: relative;
    z-index: 100;
}
@media screen and (min-width: 768px) {
    .ls-wrapper .scene-list.typeA {
        width: 50%;
        margin-right:0;
        display: block;
        position: relative;
    }
}

.ls-wrapper .scene-list.typeA img {
    border-radius: 0 4px 4px 0;
}
@media screen and (min-width: 768px) {
    .ls-wrapper .scene-list.typeA img {
        border-radius: 4px;
    }
}

.ls-wrapper .scene-list.typeB {
    margin-left: 5.3333%;
    display: block;
    position: relative;
    z-index: 100;
}
@media screen and (min-width: 768px) {
    .ls-wrapper .scene-list.typeB {
        width: 50%;
        margin-left:0;
        display: block;
        position: relative;
        left: 50%;
    }
}

.ls-wrapper .scene-list.typeB img {
    border-radius: 4px 0 0 4px;
}
@media screen and (min-width: 768px) {
    .ls-wrapper .scene-list.typeB img {
        border-radius: 4px;
    }
}


.ls-wrapper .scene-text {
    padding: 38vw 2rem 8vw;
    position: relative;
    top: -30vw;
    z-index: 10;
    text-align: center;
    background: #f9f6f6 url("../img/bg-nl-scene-sp.png") no-repeat center bottom;
    background-size: contain;
    margin-bottom: -30vw;
}

@media screen and (min-width: 768px) {
    .ls-wrapper .scene-text {
        width: 54.68%;
        padding: 60px 0 60px 20px;
        position: relative;
        top: -250px;
        left: 45.32%;
        text-align: center;
        background: #f9f6f6 url("../img/bg-nl-scene-pc-r.png") no-repeat center bottom;
        background-size: contain;
        border-radius: 4px;
        margin-bottom: -250px
    }
}
@media screen and (min-width:768px) and (max-width:1023.99px){
    .ls-wrapper .scene-text {
        top: -20.5vw;
        margin-bottom: -20.5vw;
    }
}

@media screen and (min-width: 768px) {
    .ls-wrapper .scene-text.typeB {
        width: 54.68%;
        padding: 60px 20px 60px 0;
        position: relative;
        top: -250px;
        left: 0;
        text-align: center;
        background: #f9f6f6 url("../img/bg-nl-scene-pc-l.png") no-repeat center bottom;
        background-size: contain;
        border-radius: 4px;
        margin-bottom: -250px
    }
}
@media screen and (min-width:768px) and (max-width:1023.99px){
    .ls-wrapper .scene-text.typeB {
        top: -20.5vw;
        margin-bottom: -20.5vw;
    }
}

.scene-text h3 {}
@media screen and (min-width: 768px) {
    .scene-text h3 {
        font-size: clamp(28px, 5.4vw, 34px);
        line-height: 1.4;
        margin-bottom: 20px;
    }
}
@media screen and (min-width:768px) and (max-width:871px) {
    .scene-text h3 {
        font-size: clamp(26px, 5.4vw, 30px);
    }
}

.scene-text h3 span {}
@media screen and (min-width: 768px) {
    .scene-text h3 span {
        font-size: clamp(16px, 3.4vw, 18px);
        display: block;
    }
}


.ls-wrapper.ls-gift {
    background: #f9f6f6 url("../img/bg-nl-gift.png") no-repeat center 0.5rem;
    background-size: 90%;
    padding: 3rem 5.3333% 2rem;
}
@media screen and (min-width: 768px) {
    .ls-wrapper.ls-gift {
        background-size: 60%;
        padding: 60px;
    }
}
@media screen and (min-width:768px) and (max-width:899.99px) {
    .ls-wrapper.ls-gift {
        padding: 60px 5.333% 60px;
    }
}

.ls-wrapper.ls-gift h2 {
    font-size: 5.4vw;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .ls-wrapper.ls-gift h2 {
        font-size: clamp(28px, 5.4vw, 34px);
    }
}
    
.ls-towel {
    background-color: #fff;
    margin-top: 1rem;
    padding: 1.8rem 5.3333% 1rem;
    border-radius: 4px;
}
@media screen and (min-width: 768px) {
    .ls-towel {
        display: flex;
        justify-content: space-between;
    }
}

.ls-w4-text {
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 768px) {
    .ls-w4-text {
        width: 65%;
    }
}

.ls-w4-text h4,
.ls-set h4 {
    color: #dd666d;
    text-align: center;
    font-size: 3.8vw;
    margin-bottom: 0.7rem;
}
@media screen and (min-width: 768px) {
    .ls-w4-text h4,
    .ls-set h4 {
        font-size:  clamp(20px, 3.8vw, 26px);
    }
    .ls-w4-text h4 {
        text-align: left;
    }
}

.ls-w4-image {
    display: flex;
    gap: 0 2.9629%;
    justify-content: space-between;
    margin-bottom: 0.7rem;
}
@media screen and (min-width: 768px) {
    .ls-w4-image {
        display: block;
        width: 30%;
    }
    .ls-w4-image picture {
        display: block;
        margin-bottom: 1rem;
    }
}


.ls-set {
    background-color: #fff;
    margin-top: 4rem;
    padding: 2rem 5.3333% 1rem;
    border-radius: 4px;
    position: relative;
}

.ls-set:before {
    content: "";
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    background: url("../img/ic-nl-plus.png") no-repeat center top;
    background-size: contain;
    top: -1.8rem;
    left: 44%; 
}
@media screen and (min-width: 768px) {
    .ls-set:before {
        left: 48%;
    }
}

.ls-set dl {}
@media screen and (min-width: 768px) {
    .ls-set dl {
        display: flex;
        justify-content: space-between;
        column-gap: 3%;
    }
}

.ls-set dl dd {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #f9f6f6;
}
@media screen and (min-width: 768px) {
    .ls-set dl dd {
        width: 33%;
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
    }
}

.ls-set dl dd:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.ls-set dl dd h5 {
    font-weight: 500;
    text-align: center;
    font-size: 4.4vw;
    line-height: 1.6;
    margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
    .ls-set dl dd h5 {
        font-size:  clamp(14px, 3.8vw, 16px);
    }
}
@media screen and (min-width:768px) and (max-width:871px) {
    .ls-set dl dd h5 {
        font-size: clamp(13px, 3vw, 14px);
    }
}


.ls-set dl dd img {
    border-radius: 4px;
}
.ls-set dl dd a {
    margin-top: 0.7rem;
    text-align: center;
    display: block;
    text-decoration: none;
}
@media screen and (min-width: 768px) {
    .ls-set dl dd a {
        font-size: clamp(12px, 2.8vw, 14px);
    }
}

.ls-set dl dd a:after {
    content: "";
	display: inline-block;
	width: 1.8vw;
	height: 1.8vw;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform: rotate(45deg);
    margin-left: 0.5rem;
}
@media screen and (min-width: 768px) {
    .ls-set dl dd a:after {
        width: 8px;
	    height: 8px;
        margin-left: 0.1rem;
    }
}


/*-- return --------------------------------------------*/
.ls-return {
    position: fixed;
    bottom: 0;
    z-index: 110;
    box-shadow: 0px -3px 10px -0px rgba(0, 0, 0, 0.1);
    width: 100%;
}

@media screen and (min-width: 768px) {
    .ls-return {
        position: fixed;
        box-shadow: none;
        right: 0;
        bottom: 2rem;
        width: inherit;
    }
}

.ls-return ul {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 0 0.7rem;
    margin: 0;
    background-color: rgba(255,255,255,0.7);
    padding: 1rem 0.7rem;
}
@media screen and (min-width: 768px) {
    .ls-return ul {
        display: block;
        padding: 0;
        background-color: initial;
        gap: 0;
    }
}

.ls-return ul li {
    width: 50%;
}
@media screen and (min-width: 768px) {
    .ls-return ul li {
        width: 100%;
        max-width: 200px;
    }
}
.ls-return ul li a {
    display: block;
    color: #000;
    padding: 0.7rem;
    text-align: center;
    border-radius: 0.5rem;
    font-size: clamp(14px, 3.4vw, 18px);
}
@media screen and (min-width: 768px) {
    .ls-return ul li a {
        padding: 0;
        color: #000;
        border-radius: 0;
    }
}

.ls-return ul li a:link {
    color: #fff;
    text-decoration: none;
}
.ls-return ul li.ls-return-present a {
    background-color: #dd666d;
}
.ls-return ul li.ls-return-treat a {
    background-color: #e9d0d0;
    color: #000;
}



