@charset "UTF-8";

/* --------------------------------------------------

基本スタイル

-------------------------------------------------- */
* {
    margin: 0;
    padding: 0;
    outline: none;
}
.wrapper {
    max-width: 750px;
    margin: auto;
    overflow: hidden;
}
.wrapper * {
    font-family: 'Noto Sans JP', sans-serif;
}
.wrapper ul {
    list-style: none;
}
.wrapper img,
.wrapper video {
    width: 100%;
    height: auto;
    vertical-align: top;
}
.wrapper > div {
    position: relative;
    overflow: hidden;
}
.wrapper .slider {
    display: none;
}
.wrapper .slider.slick-initialized {
    display: block;
}

/* --------------------------------------------------

各コンテンツ

-------------------------------------------------- */
.wrapper .modal_wrap {
    position: fixed;
    top: 0%;
    left: 0%;
    z-index: 10;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    display: none;
}
.wrapper .modal_wrap .images {
    max-width: 750px;
    height: 100%;
    text-align: center;
    margin: auto;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.wrapper .modal_wrap .images img {
    padding: 5% 0%;
    width: auto;
    max-width: 100%;
}
.wrapper .modal_wrap .close {
    position: fixed;
    top: 2%;
    right: 2%;
    z-index: 10;
    width: 100%;
    max-width: 40px;
    cursor: pointer;
}

.wrapper .float {
    position: fixed;
    right: 50%;
    bottom: 1%;
    transform: translateX(49%);
    z-index: 10;
    width: 79.2%;
    max-width: 594px;
    display: none;
}

.wrapper .fv .fade {
    position: absolute;
    top: 0%;
    left: 0%;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #eae6db;
}
.wrapper .fv .fade li {
    position: absolute;
    top: 0%;
    left: 0%;
    width: 100%;
    opacity: 0;
    animation: 10s fv_fade ease-in-out infinite;
}
.wrapper .fv .fade li:nth-child(2) {
    animation-delay: 5s;
}
@keyframes fv_fade {
    0% {
        transform: scale(1);
    }
    33% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: scale(1.1);
    }
}

.wrapper .gallery .thumbnail {
    position: absolute;
    top: 14%;
    left: 0%;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: -3%;
}
.wrapper .gallery .thumbnail li {
    width: 26.666%;
    margin: 3% 1.3% 0%;
    cursor: pointer;
}
.wrapper .gallery .thumbnail li .detail {
    display: none;
}

.wrapper .fabric .icon {
    position: absolute;
    top: 17%;
    right: 50%;
    transform: translateX(50%);
    width: 85.333%;
    box-sizing: border-box;
    margin-top: -2%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.wrapper .fabric .icon li {
    width: 26.563%;
    margin: 2% 1% 0%;
    cursor: pointer;
}
.wrapper .fabric .slider_outer {
    position: absolute;
    top: 29.5%;
    right: 50%;
    transform: translateX(50%);
    width: 85.333%;
}
.wrapper .fabric .slider_outer .slider .slick-arrow {
    position: absolute;
    top: 42%;
    z-index: 1;
    width: 8.594%;
    cursor: pointer;
}
.wrapper .fabric .slider_outer .slider .slick-arrow.prev {
    left: -4%;
}
.wrapper .fabric .slider_outer .slider .slick-arrow.next {
    right: -4%;
}
.wrapper .fabric .slider_outer .slider .slick-list {
    cursor: w-resize;
}
.wrapper .fabric .slider_outer .slider .slick-dots {
    bottom: -6%;
    display: flex;
    justify-content: center;
    height: 1.4%;
}
.wrapper .fabric .slider_outer .slider .slick-dots li {
    width: 6.3%;
    height: 100%;
    margin: 0% 1%;
    background-color: #ffffff;
}
.wrapper .fabric .slider_outer .slider .slick-dots li.slick-active {
    background-color: #aa9b7c;
}
.wrapper .fabric .slider_outer .slider .slick-dots li * {
    display: none;
}

.wrapper .cdp .btn {
    position: absolute;
    top: 40%;
    left: 0%;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: -22.2%;
}
.wrapper .cdp .btn li {
    width: 24%;
    margin: 22.2% 10.5%;
    cursor: pointer;
}
.wrapper .cdp .btn li img {
    display: block;
}
.wrapper .cdp .btn li .detail {
    display: none;
}

.wrapper .combination .slider_outer {
    position: absolute;
    top: 32.5%;
    right: 50%;
    transform: translateX(50%);
    width: 100%;
}
.wrapper .combination .slider_outer2 {
    position: absolute;
    top: 65%;
    right: 50%;
    transform: translateX(50%);
    width: 100%;
}
.wrapper .combination .slider_outer .slider .slick-list .slick-track .slick-slide,
.wrapper .combination .slider_outer2 .slider .slick-list .slick-track .slick-slide {
    opacity: 0.4;
    transition-duration: 0.4s;
}
.wrapper .combination .slider_outer .slider .slick-list .slick-track .slick-slide.slick-current,
.wrapper .combination .slider_outer2 .slider .slick-list .slick-track .slick-slide.slick-current {
    opacity: 1;
}
.wrapper .combination .slider_outer .slider .slick-list img,
.wrapper .combination .slider_outer2 .slider .slick-list img {
    display: block;
    width: 92%;
    margin: auto;
}

.wrapper .uservoice .slider_outer {
    position: absolute;
    top: 14.5%;
    right: 50%;
    transform: translateX(50%);
    width: 85.333%;
}
.wrapper .uservoice .slider_outer .slider .slick-arrow {
    position: absolute;
    top: 42%;
    z-index: 1;
    width: 8.594%;
    cursor: pointer;
}
.wrapper .uservoice .slider_outer .slider .slick-arrow.prev {
    left: -4%;
}
.wrapper .uservoice .slider_outer .slider .slick-arrow.next {
    right: -4%;
}
.wrapper .uservoice .slider_outer .slider .slick-list {
    cursor: w-resize;
}
.wrapper .uservoice .slider_outer .slider .slick-dots {
    bottom: -6%;
    display: flex;
    justify-content: center;
    height: 1.1%;
}
.wrapper .uservoice .slider_outer .slider .slick-dots li {
    width: 6.3%;
    height: 100%;
    margin: 0% 1%;
    background-color: #ffffff;
}
.wrapper .uservoice .slider_outer .slider .slick-dots li.slick-active {
    background-color: #aa9b7c;
}
.wrapper .uservoice .slider_outer .slider .slick-dots li * {
    display: none;
}

.wrapper .reserve .btn {
    position: absolute;
    top: 86.6%;
    right: 50%;
    transform: translateX(50%);
    width: 77.333%;
}
