.kamifubuki {
    /* position: absolute; */
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    z-index: 500;
    pointer-events: none;
    position: fixed;
    top: 0;
}

.newloopslide {
    /* width:300px; */
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    /* border:1px solid red; */
}
@keyframes keyslide {
    0% {
        transform: translateX(4px);
    }
    100% {
        transform: translateX(-100%);
    }
}
.newloopslide ul {
    display: inline-block;
    margin: 0;
    padding: 0;
    animation: keyslide 30s linear infinite;
}
.newloopslide li {
    font-size: 2.8vw;
    display: inline-block;
}

.newloopslide_rev {
    animation-direction: reverse !important;
}

.loop_txt1 ul li {
    font-size: 3vw;
    color: #676767;
}
.loop_txt2 ul li {
    font-size: 2vw;
    color: #676767;
}
.loop_txt4 ul li {
    font-size: 2vw;
    color: #a78b5a;
}
.loop_txt3 ul li,
.loop_txt5 ul li {
    font-size: 3vw;
    color: #a78b5a;
}

@keyframes scale {
    100% {
        transform: scale(1);
    }
}

html,
body {
    height: 100%; /*高さを100%にして描画エリアをとる*/
}

#particles-js {
    position: fixed; /*描画固定*/
    z-index: -1; /*描画を一番下に*/
    width: 100%;
    height: 100%;
    background-color: #f3f3f3; /*背景色*/
}

#wrapper {
    position: relative; /*描画を#particles-jsよりも上にするためposition:relative;を指定*/
    z-index: 1; /*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
    width: 100%;
    height: 100%;
}

body {
    background-color: #000;
    font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN",
        "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
    overflow-x: hidden;
    position: relative;
    font-weight: 400;
}

body.no-scroll {
    position: fixed;
    overflow-y: hidden;
}
img {
    max-width: 100%;
}

.brand_logo {
    position: absolute;
    width: 11vw;
    top: 1.5vw;
    left: 2vw;
    z-index: 999;
}

.brand_logo img {
    width: 100%;
}

.visibility-hidden {
    opacity: 0;
    visibility: hidden;
}

a,
button {
    transition: 0.3s all;
}

a {
    text-decoration: none;
}

a:hover {
    color: unset;
    opacity: 60%;
}

.top-bg {
    width: 100vw;
    height: 50vw;
    position: relative;
    overflow: hidden;
}

/* .top-bg {
    width: 100vw;
    height: 60vw;
    height: 100vh;
    position: relative;
    overflow: hidden;
} */

.top-bg div.slide {
    width: 100%;
    height: 100%;
    /* height: 100vh; */
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
}

.top-bg div.slide.active {
    opacity: 1;
    visibility: visible;
}

.loaded .top-bg div.slide:before {
    -webkit-filter: blur(0px);
    filter: blur(0);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.top-bg .slide-image {
    height: 100%;
}

.top-bg div.slide {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-filter: blur(0.6666667rem);
    filter: blur(0.6666667rem);
    transition-property: opacity, visibility, -webkit-transform, transform,
        -webkit-filter, filter;
    transition-duration: 1.2s;
    transition-timing-function: ease-in-out;
}

.top-bg div.slide.active {
    opacity: 1;
    visibility: visible;
}

.top-bg div.slide.active {
    opacity: 1;
    visibility: visible;
    -webkit-filter: blur(0px);
    filter: blur(0px);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.loader {
    background: url('../images/loader_bg.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #d5cec2;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10002;
    transition: all .5s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader-drip{
    position: absolute;
    width: 110%;
    max-width: 110%;
    left: 0;
    top: 0;
    z-index: 2;
    transition: 10s;
    height: 0;
}

.loader-logo{
    height: 242.69px;
    width: 597.65px;
}

.slide-image {
    background-position: center bottom;
    background-size: cover;
    background-repeat: no-repeat;
}
.slide-image img {
    max-width: 100%;
}

.fv-nav {
    width: 100%;
    height: 100px;
    display: flex;
    justify-content: center;
    padding-top: 30px;
}

.fv-nav span {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #e5cad4;
    transition: all 0.5s;
    cursor: pointer;
    position: absolute;
    bottom: 2vw;
    margin-right: 60px;
}
.fv-nav span:last-child {
    margin-right: 0;
}

.fv-nav span.active,
.fv-nav span:hover {
    background-color: #a16670;
}
img {
    max-width: 100%;
}
.chou1 {
    width: 15vw;
    position: absolute;
    top: 35vw;
    left: 24vw;
}
.chou2 {
    width: 28vw;
    position: absolute;
    top: 48vw;
    left: 15vw;
}
.chou3 {
    width: 35vw;
    position: absolute;
    top: 60vw;
    right: 20vw;
}
.chou4 {
    width: 43vw;
    position: absolute;
    top: 80vw;
    right: 0vw;
}
.chou5 {
    width: 30vw;
    position: absolute;
    bottom: 23vw;
    right: 33vw;
    z-index: 999;
}

.blur {
    animation-name: blurAnime;
    animation-duration: 3s;
    animation-fill-mode: forwards;
}

@keyframes blurAnime {
    from {
        filter: blur(10px);
        transform: scale(1.02);
        opacity: 0;
    }

    to {
        filter: blur(0);
        transform: scale(1);
        opacity: 1;
    }
}

.blurTrigger {
    opacity: 0;
}

/*story start */

#story {
    color: #a78b5a;
    background-color: #000;
    background-image: url(../images/bg_story.jpg);
    background-size: cover;
    text-align: center;
    padding-bottom: 2vw;
    position: relative;
}

.str_ttl img {
    margin-top: 2.5vw;
}
.str_ttl p {
    font-weight: bold;
    line-height: 1.5vw;
    margin-top: 0.5vw;
    font-size: 1.8vw;
}
.str_ttl p span {
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
    font-size: 0.8vw;
}
#story h1 {
    margin-top: 3vw;
    font-family: ambroise-francois-std, serif;
    font-style: normal;
    font-weight: 600;
    font-size: 6vw;
    line-height: 2vw;
}
#story h1 span {
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
    font-size: 0.7vw;
}
.story_txt {
    margin-top: 2.7vw;
    font-weight: bold;
    font-size: 1vw;
    line-height: 2vw;
    margin-bottom: 30vw;
    letter-spacing: 3px;
}
#story h2 {
    letter-spacing: 0.7vw;
    font-size: 1.4vw;
    margin-bottom: 13vw;
}

.wrap_rd {
    display: flex;
    padding-top: 5vw;
    gap: 2vw;
    align-items: center;
    justify-content: center;
    margin-bottom: 5vw;
}
.wrap_rd img {
    width: 32vw;
}
.wrap_rd h3 {
    font-family: ambroise-francois-std, serif;
    font-style: normal;
    font-weight: 600;
    font-size: 1.3vw;
    letter-spacing: 0.4vw;
}

/*story end  */

/* lineup start*/
#lineup {
    text-align: center;
    background: #000;
    color: #a78b5a;
}

.sttl h2 {
    margin-top: 2vw;
    font-size: 2.5vw;
    font-family: ambroise-francois-std, serif;
    font-style: normal;
    font-weight: 600;
    font-size: 5.6vw;
    line-height: 2vw;
}

.sttl h2 span {
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
    font-size: 0.9vw;
}
.sttl h2::after {
    content: "";
    border-bottom: solid 1px #a78b5a;
    display: block;
    margin: 0 auto;
    height: 1vw;
    width: 8vw;
}

.line-up {
    margin-top: 4vw;
}

.line-up-list {
    max-width: 680px;
    margin: 0 auto -5.6771vw auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.line-up-item {
    cursor: pointer;
    width: 297px;
    position: relative;
    margin-bottom: 5.6771vw;
    transition: 0.5s all;
}
.line-up-item:hover {
    opacity: 60%;
}
.line-up-item-img {
    width: 100%;
    height: 422px;
    border-radius: 200px 200px 0 0;
    overflow: hidden;
}
.line-up-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.line-up-item-name {
    font-size: 0.9375vw;
    line-height: 1.5625vw;
    letter-spacing: 0.01rem;
    font-family: adobe-caslon-pro, serif;
    margin-bottom: 0.625vw;
    height: 0.9375vw;
    display: flex;
    justify-content: center;
    font-weight: bold;
}
.line-up-item-des {
    font-family: Meiryo, serif;
    font-size: 0.6771vw;
    letter-spacing: 0.01rem;
    margin-top: 0.9375vw;
    line-height: 1.3021vw;
}
.line-up-item-icon {
    border-width: 0 1px 1px 0;
    border-color: #a78b5a;
    border-style: solid;
    width: 0.625vw;
    height: 0.625vw;
    margin: 0 auto;
    transform: rotate(45deg) translateX(-80%);
    position: absolute;
    left: 50%;
    bottom: -25px;
    transition: 0.5s all;
}
.line-up-item:hover .line-up-item-icon {
    bottom: -40px;
}
.line-up-item-img-coming ~ .line-up-item-icon {
    display: none;
}
#lineup p {
    margin-top: 8vw;
    margin-bottom: 5vw;
    font-size: 1.3vw;
    line-height: 6vw;
    font-weight: bold;
    letter-spacing: 0.6vw;
}
.sp_dream_wp img {
    margin-bottom: 5vw;
}
/* lineup end*/

/* about start*/
#about {
    padding-top: 2vw;
    background: #781919;
    color: #a78b5a;
    text-align: center;
}

#about h3 {
    margin-top: 10vw;
    font-size: 1.3vw;
    line-height: 6vw;
    font-weight: bold;
    letter-spacing: 0.6vw;
    margin-bottom: 10vw;
}
.about_sen {
    content: "";
    display: block;
    border-bottom: 1px solid #a78b5a;
}
.about_wrap1 img {
    border: solid 1px #a78b5a;
    padding: 0.8vw;
    border-radius: 100%;
    width: 30vw;
}
.about_wrap1 {
    margin: 6vw 0;
    display: flex;
    align-items: center;
    gap: 2vw;
    justify-content: center;
}
#about h2 {
    font-family: ambroise-francois-std, serif;
    font-style: normal;
    font-weight: 600;
    font-size: 4.3vw;
    line-height: 2vw;
    text-align: left;
}
#about p {
    margin-top: 3vw;
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
    font-size: 1.8rem;
    line-height: 2vw;
    text-align: left;
}

.about_wrap2 {
    margin: 6vw 0;
    display: flex;
    gap: 2vw;
    justify-content: center;
    align-items: center;
    padding-left: 10vw;
}

.about_wrap2 img {
    width: 30vw;
    border: solid 1px #a78b5a;
    padding: 0.8vw;
}

/* about end*/

/* collection start*/
#collection1,
#collection2 {
    padding-top: 8vw;
    background: #781919;
    text-align: center;
    color: #a78b5a;
}
.c_sttl {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2vw;
    padding-top: 3vw;
}
.c_sttl h3 {
    font-size: 2.6vw;
    letter-spacing: 2px;
    line-height: 3vw;
}
.c_sttl h6 {
    font-size: 0.8vw;
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
    line-height: 1.5vw;
}
.collection_txt {
    line-height: 2.5vw;
    margin-top: 3vw;
    padding-bottom: 3vw;
    font-size: 1vw;
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
}

.product-model-right {
    width: 100%;
}
.right-slide {
    width: 100%;
    display: block;
    margin: 0 auto;
}
.full-size1 {
    width: 36.5vw;
    height: 39.3vw;
    position: relative;
}
.full-size2 {
    width: 33vw;
    height: 22vw;
    position: relative;
}
.thumb-size {
    width: 33vw;
    display: flex;
    justify-content: center;
    padding-top: 4vw;
    gap: 3vw;
}
.right-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.thumb-size-item {
    cursor: pointer;
    width: 118px;
    height: 118px;
}
.full-size-item {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    transition: opacity 800ms ease 0s;
    height: 100%;
    width: 100%;
    overflow: hidden;
}
.full-size-item.active {
    opacity: 1;
    visibility: visible;
}

.product-model {
    width: 1182px;
    margin: 0 auto;
    margin-bottom: 90px;
}
.product-block-title {
    text-align: center;
    font-size: 14px;
    line-height: 31px;
    color: #545454;
    padding-top: 159px;
    padding-bottom: 94px;
}
.product-model > p {
    margin-bottom: 13px;
    font-size: 18px;
    line-height: 31px;
    color: #545454;
    font-family: "Meiryo";
}
.product-model-wrap {
    display: flex;
}
.product-model-left {
    width: 523px;
    padding-right: 41px;
    position: relative;
}
.product-model-title-en {
    position: absolute;
    top: 309px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 41px);
    font-family: "Yu Gothic";
    font-size: 11px;
    color: #545454;
}
.product-model-right {
    width: 100%;
}
.product-model-left img {
    width: 100%;
    height: 280px;
    object-fit: cover;
}
.product-model-title {
    font-family: "Yu Gothic";
    font-size: 30px;
    color: #545454;
    line-height: 31px;
    padding-top: 20px;
    padding-bottom: 13px;
}
.product-model-content {
    font-family: "Yu Gothic";
    font-size: 15px;
    font-weight: 500;
    line-height: 25px;
    color: #545454;
    padding-bottom: 26px;
    white-space: nowrap;
}
.set-action,
.product-model-action {
    display: flex;
    align-items: center;
    justify-content: center;
}
.set-action a,
.product-model-action a {
    display: flex;
    width: 179px;
    height: 48px;
    border: 1px solid #707070;
    font-family: "Yu Gothic";
    font-size: 12px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #545454;
    margin-right: 15px;
}
.set-action a:last-child,
.product-model-action a:last-child {
    margin-right: 0;
}
.product-list {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    font-family: "Honoka Shin Mincho";
    font-size: 18px;
    color: #545454;
}

.product-list-2 {
    padding-top: 300px;
}

.product-list-jp {
    font-size: 15px;
    font-weight: 400;
    margin-bottom: 0;
    padding-bottom: 22px;
}
.product-list-en {
    font-size: 25px;
    padding-bottom: 44px;
    margin-bottom: 0;
}

.product-list-content {
    font-family: "Yu Mincho";
    line-height: 45px;
}

.flex_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3vw;
    background-image: url(../images/bg_pwrap.png);
    background-size: 75.5vw;
    background-position: 13.8vw 0vw;
    background-repeat: no-repeat;
}

.wrap_item {
    margin-top: 10rem;
    display: flex;
    justify-content: center;
    gap: 2vw;
}
.wrap_item ul li h3 {
    line-height: 2.5rem;
    font-size: 2.8rem;
    font-family: ff-carina, serif;
    font-weight: bold;
    margin-bottom: 20px;
}
.wrap_item ul li h3 span {
    font-size: 13px;
    font-family: Meiryo, serif;
}
.wrap_item ul li:nth-child(2) img {
    width: 19vw;
}
.wrap_item .anto li:nth-child(2) img {
    border-radius: 182px 189px 0 0;
}
.wrap_item .osu li:nth-child(2) img {
    border-radius: 201px 202px 0 0;
}

.wrap_item ul li:nth-child(3) img {
    margin-top: 3vw;
    margin-bottom: 2vw;
    height: 11vw;
}
.wrap_item ul li p {
    line-height: 3rem;
    font-size: 14px;
    font-family: Meiryo, serif;
    margin-bottom: 5vw;
}

#collection1 .btn,
#collection2 .btn {
    display: block;
    margin: 0 auto;
    padding-bottom: 7vw;
}
#collection1 .btn a,
#collection2 .btn a {
    font-size: 18px;
    font-family: Meiryo, serif;
    border-radius: 40px;
    text-align: center;
    background-color: #5b0200;
    padding: 25px 130px;
    color: #a78b5a;
    display: inline-block;
}
#collection1 .btn a:hover,
#collection2 .btn a:hover {
    background-color: #000000;
    opacity: inherit;
}
.bg_f {
    background-image: url(../images/bg_footer.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
}
#collection2 .kolabo_logo {
    margin-top: 12vw;
}
#collection2 h5 {
    margin-top: 7vw;
    color: #dbc091;
    font-size: 15px;
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
        Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#collection2 h4 {
    margin-top: 4vw;
    color: #dbc091;
    font-family: source-han-serif-japanese, serif;
    font-weight: 600;
    font-size: 20px;
    padding-bottom: 3vw;
}
.about_sen2 {
    content: "";
    display: block;
    height: 1px;
}
#collection2 .wrap_item ul li:nth-child(3) img {
    margin-top: 3vw;
    margin-bottom: 2vw;
    height: 8vw;
}

.dispSp,
.sp {
    display: none;
}

/* rose_collection1 start*/

@media (max-width: 767px) {
    .dispSp,
    .sp {
        display: block;
    }

    .dispPc,
    .pc {
        display: none;
    }

    header .logo {
        height: 154px;
        background-color: #f6f6f5;
    }

    .loader {
        background-image: url('../images/loader_bg_sp.jpg');
    }

    .menu-icon {
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background-color: #ffffff;
        opacity: 0.6;
        position: fixed;
        top: 17px;
        left: 20px;
        z-index: 999;
        cursor: pointer;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .menu-sidebar {
        position: fixed;
        color: white;
        padding: 20px;
        font-size: 20px;
        text-align: center;
        top: 0;
        left: 0;
        bottom: 0;
        width: 347px;
        z-index: 998;
        transform: translateX(-102%);
        transition: 0.5s all;
        background-size: cover;
        background-image: url("../images/ham_bg.jpg");
        opacity: 0;
    }
    .menu-sidebar.menu-sidebar-open {
        transform: translateX(0);
        opacity: 1;
    }
    .menu-icon-open {
        display: block;
        width: 31px;
        height: 14px;
    }
    .menu-icon-close {
        display: none;
        width: 18px;
        height: 18px;
    }
    .menu-sidebar-list {
        list-style: none;
        margin: 0;
        padding: 0;
        text-align: left;
        margin-top: 120px;
        color: #ffffff;
    }
    .menu-sidebar-item {
        font-size: 35px;
        font-family: ambroise-francois-std, serif;
        font-weight: 600;
        line-height: 26px;
        display: flex;
        align-items: flex-start;
        color: #dbc091;
        flex-direction: column;
        justify-content: center;
    }
    .menu-sidebar-item:not(:first-child) {
        margin-top: 30px;
    }
    .menu-sidebar-item span {
        width: 100%;
        font-size: 10px;
        line-height: 17px;
        letter-spacing: 0.001rem;
        margin-top: 3px;
    }
    .brand_logo {
        width: 16vw;
        top: 22vw;
        left: 4vw;
    }
}

@media (max-width: 575px) {
    .top-bg {
        height: 155vw;
    }

    .fv-nav {
        width: 100%;
        height: 38px;
        display: flex;
        justify-content: center;
        padding-top: 18px;
    }
    .fv-nav span {
        width: 10px;
        height: 10px;
        border-radius: 45%;
        bottom: 5vw;
    }
}

@media (max-width: 575px) {
    .chou1 {
        width: 20vw;
        position: absolute;
        top: 150vw;
        left: 0vw;
    }
    .chou2 {
        width: 50vw;
        position: absolute;
        top: 170vw;
        left: 3vw;
    }
    .chou3 {
        width: 50vw;
        position: absolute;
        top: 185vw;
        right: 0vw;
    }
    .chou4 {
        width: 60vw;
        position: absolute;
        top: 245vw;
        right: 0vw;
    }
    .chou5 {
        width: 18vw;
        position: absolute;
        bottom: 50vw;
        left: 20vw;
        z-index: 999;
    }

    .slide-image img {
        max-height: 100%;
        max-width: none;
        width: 100%;
    }

    .inner {
        padding: 0 15px;
    }
    .str_ttl img {
        margin-top: 4.5rem;
        width: 14vw;
    }
    .str_ttl p {
        font-weight: bold;
        line-height: 1.5rem;
        margin-top: 3vw;
        font-size: 19px;
    }
    .str_ttl p span {
        font-weight: 100;
        font-size: 11px;
        padding-top: 20px;
    }
    #story h1 {
        margin-top: 5rem;
        font-style: normal;
        font-weight: 700;
        font-size: 70px;
        line-height: 3rem;
    }
    #story h1 span {
        font-weight: 100;
        font-size: 11px;
    }
    .story_txt {
        margin-top: 30px;
        font-weight: bold;
        font-size: 14px;
        line-height: 3rem;
        margin-bottom: 30vw;
        letter-spacing: 2px;
    }
    #story {
        background-image: url(../images/bg_spstory.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        vertical-align: bottom;
    }
    #story h2 {
        letter-spacing: 3px;
        font-size: 15px;
        padding-bottom: 2rem;
        margin-bottom: 0;
        line-height: 4rem;
    }
    #story .sp_wrap h2 {
        padding-bottom: 20vw;
        margin-bottom: 0px;
    }
    .wrap_rd img {
        width: 63vw;
        margin-top: 2px;
        margin-bottom: 10px;
    }
    .wrap_rd {
        display: block;
        padding-top: 28vw;
        gap: 2vw;
        margin-bottom: 5rem;
    }
    .wrap_rd h3 {
        font-size: 25px;
        letter-spacing: 5px;
    }
    .sttl img {
        width: 14vw;
    }
    .sttl h2 {
        margin-top: 18px;
        font-size: 70px;
        line-height: 3rem;
    }
    .sttl h2 span {
        font-weight: 100;
        font-size: 11px;
    }
    .sttl h2::after {
        content: "";
        border-bottom: solid 0.2px #a78b5a;
        display: block;
        margin: 0 auto;
        height: 5px;
        width: 100px;
    }

    .line-up {
        padding-bottom: 88.1px;
        margin-bottom: 0;
        margin-top: 5rem;
    }
    .line-up-list {
        padding: 0 27.4px;
        margin-bottom: -57.9px;
    }
    .line-up-item {
        width: 36.5631vw;
        margin-bottom: 57.9px;
    }
    .line-up-item-img {
        height: 50.6355vw;
    }
    .line-up-item-des {
        margin-top: 12.5px;
        font-size: 12px;
    }
    .line-up-item:first-child .line-up-item-des {
        white-space: nowrap;
    }
    .line-up-item-icon {
        width: 9px;
        height: 9px;
        bottom: -20px;
    }
    .line-up-item:hover .line-up-item-icon {
        bottom: -30px;
    }

    .line-up-item-name {
        font-size: 15px;
        line-height: 1.5625vw;
        letter-spacing: 0.01rem;
        font-family: adobe-caslon-pro, serif;
        margin-bottom: 3.625vw;
        height: 0.9375vw;
        display: flex;
        justify-content: center;
        font-weight: bold;
    }
    .line-up-item-des {
        line-height: 4.3021vw;
    }
    #lineup p {
        margin-top: 4vw;
        margin-bottom: 5vw;
        font-size: 17px;
        line-height: 4.5rem;
        font-weight: bold;
        letter-spacing: 7px;
    }
    .sp_dream_wp img {
        width: 10vw;
    }
    .sp_dream_wp img {
        width: 77vw;
    }
    #about {
        padding-top: 1rem;
    }
    #about h3 {
        font-size: 17px;
        line-height: 4.5rem;
        letter-spacing: 7px;
        margin-bottom: 10rem;
    }
    #about h2 {
        margin-top: 5rem;
        font-size: 12vw;
        line-height: 2rem;
        text-align: center;
    }
    .about_wrap1 {
        display: block;
        margin: 12vw 0;
        align-items: center;
        gap: 2vw;
    }
    #about p {
        margin-top: 3rem;
        font-family: "メイリオ", "ヒラギノ角ゴ Pro W3",
            "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "ＭＳ Ｐゴシック",
            "MS PGothic", sans-serif;
        font-weight: 100;
        font-size: 14px;
        line-height: 3rem;
        text-align: left;
    }
    .about_wrap1 img {
        width: 50vw;
        padding: 1.5vw;
    }
    .about_wrap2 {
        margin: 12vw 0;
        display: block;
        gap: 2vw;
        justify-content: center;
        align-items: center;
        padding-left: 0vw;
    }
    .about_wrap2 img {
        width: 49vw;
        border: solid 1px #a78b5a;
        padding: 1.5vw;
    }

    .loop_im ul li {
        width: 200vw;
    }

    .loop_txt1 ul li {
        font-size: 5vw;
        color: #676767;
    }
    .loop_txt2 ul li {
        font-size: 3vw;
        color: #676767;
    }
    .loop_txt4 ul li {
        font-size: 3vw;
        color: #a78b5a;
    }
    .loop_txt3 ul li,
    .loop_txt5 ul li {
        font-size: 5vw;
        color: #a78b5a;
    }

    #collection1,
    #collection2 {
        padding-top: 12vw;
    }

    .c_sttl img {
        width: 9vw;
    }
    .c_sttl h3 {
        font-size: 5.6vw;
        letter-spacing: 2px;
        line-height: 7vw;
    }

    .c_sttl h6 {
        font-size: 11px;
        line-height: 2rem;
    }
    .c_sttl {
        gap: 7vw;
    }

    .collection_txt {
        line-height: 2.5rem;
        margin-top: 4vw;
        padding-bottom: 3vw;
        font-size: 13px;
        font-weight: 100;
    }
    .flex_wrap {
        display: block;
        text-align: center;
        gap: 3vw;
        background-image: none;
        background-size: 75.5vw;
        background-position: 13.8vw 0vw;
        background-repeat: no-repeat;
    }
    .thumb-size {
        width: 100%;
        display: flex;
        justify-content: center;
        padding-top: 4vw;
        gap: 4vw;
    }
    .thumb-size-item {
        cursor: pointer;
        width: 83px;
        height: 83px;
    }
    .full-size1 {
        width: 77.5vw;
        height: 83vw;
        display: block;
        margin: 0 auto;
    }

    .full-size2 {
        width: 71vw;
        height: 47vw;
        position: relative;
        display: block;
        text-align: center;
        margin: 0 auto;
    }

    .pwrap_bg {
        padding-top: 3rem;
        padding-bottom: 3rem;
        background-image: url(../images/spbg_pwrap.jpg);
        width: 78%;
        display: block;
        margin: 0 auto;
    }
    .wrap_item {
        display: block;
        margin: 0 auto;
        gap: 2vw;
        margin-top: 5rem;
    }
    .wrap_item ul li:nth-child(2) img {
        width: 52vw;
    }
    .wrap_item ul li h3 {
        line-height: 1.5rem;
        font-size: 2.5rem;
        margin-bottom: 15px;
    }
    .wrap_item ul li h3 span {
        font-size: 11px;
    }
    .wrap_item ul li:nth-child(3) img {
        margin-top: 3vw;
        margin-bottom: 2vw;
        height: 36vw;
        width: 27vw;
    }
    .wrap_item ul li p {
        line-height: 3rem;
        font-size: 13px;
        margin-bottom: 10vw;
    }

    .wrap_item ul li p span {
        line-height: 5rem;
    }

    #collection1 .btn a,
    #collection2 .btn a {
        font-size: 16px;
        font-family: Meiryo, serif;
        border-radius: 40px;
        text-align: center;
        background-color: #5b0200;
        padding: 17px 100px;
        color: #a78b5a;
        display: inline-block;
    }
    #collection2 .wrap_item ul li:nth-child(3) img {
        margin-top: 3vw;
        margin-bottom: 3vw;
        height: 27vw;
        width: 35vw;
    }
    .kolabo_logo img {
        width: 33vw;
    }
    #collection2 h5 {
        margin-top: 15vw;
        color: #dbc091;
        font-size: 12px;
    }
    #collection2 h4 {
        margin-top: 5vw;
        color: #dbc091;
        font-family: source-han-serif-japanese, serif;
        font-weight: 600;
        font-size: 14px;
        padding-bottom: 3vw;
    }
    #collection1 .btn,
    #collection2 .btn {
        display: block;
        margin: 0 auto;
        padding-bottom: 22vw;
    }

    .bg_f {
        background-image: url(../images/spbg_footer.jpg);
        background-position: bottom;
        background-repeat: no-repeat;
    }

    .wrapper2 {
        max-width: 99vw;
        margin: 0 auto;
        text-align: center;
    }

    .loader-logo {
        height: auto;
        width: 70%;
    }
}
.txt {
    display: inline-block;
    text-align: left;
}
.hidden {
    display: none;
}
.cd-transition-layer {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    height: 100%;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
}
.cd-transition-layer .bg-layer {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-2%);
    -moz-transform: translateY(-50%) translateX(-2%);
    -ms-transform: translateY(-50%) translateX(-2%);
    -o-transform: translateY(-50%) translateX(-2%);
    transform: translateY(-50%) translateX(-2%);
    height: 100%;
    width: 2500%;
    background: url(../images/ink.png) no-repeat 0 0;
    background-size: 100% 100%;
}
.cd-transition-layer.visible {
    opacity: 1;
    visibility: visible;
}
.cd-transition-layer.opening .bg-layer {
    -webkit-animation: cd-sequence 1.2s steps(24);
    -moz-animation: cd-sequence 1.2s steps(24);
    animation: cd-sequence 1.2s steps(24);
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
.cd-transition-layer.closing .bg-layer {
    -webkit-animation: cd-sequence-reverse 1.2s steps(24);
    -moz-animation: cd-sequence-reverse 1.2s steps(24);
    animation: cd-sequence-reverse 1.2s steps(24);
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
.no-cssanimations .cd-transition-layer {
    display: none;
}

@-webkit-keyframes cd-sequence {
    0% {
        -webkit-transform: translateY(-50%) translateX(-2%);
    }
    100% {
        -webkit-transform: translateY(-50%) translateX(-98%);
    }
}
@-moz-keyframes cd-sequence {
    0% {
        -moz-transform: translateY(-50%) translateX(-2%);
    }
    100% {
        -moz-transform: translateY(-50%) translateX(-98%);
    }
}
@keyframes cd-sequence {
    0% {
        -webkit-transform: translateY(-50%) translateX(-2%);
        -moz-transform: translateY(-50%) translateX(-2%);
        -ms-transform: translateY(-50%) translateX(-2%);
        -o-transform: translateY(-50%) translateX(-2%);
        transform: translateY(-50%) translateX(-2%);
    }
    100% {
        -webkit-transform: translateY(-50%) translateX(-98%);
        -moz-transform: translateY(-50%) translateX(-98%);
        -ms-transform: translateY(-50%) translateX(-98%);
        -o-transform: translateY(-50%) translateX(-98%);
        transform: translateY(-50%) translateX(-98%);
    }
}
@-webkit-keyframes cd-sequence-reverse {
    0% {
        -webkit-transform: translateY(-50%) translateX(-98%);
    }
    100% {
        -webkit-transform: translateY(-50%) translateX(-2%);
    }
}
@-moz-keyframes cd-sequence-reverse {
    0% {
        -moz-transform: translateY(-50%) translateX(-98%);
    }
    100% {
        -moz-transform: translateY(-50%) translateX(-2%);
    }
}
@keyframes cd-sequence-reverse {
    0% {
        -webkit-transform: translateY(-50%) translateX(-98%);
        -moz-transform: translateY(-50%) translateX(-98%);
        -ms-transform: translateY(-50%) translateX(-98%);
        -o-transform: translateY(-50%) translateX(-98%);
        transform: translateY(-50%) translateX(-98%);
    }
    100% {
        -webkit-transform: translateY(-50%) translateX(-2%);
        -moz-transform: translateY(-50%) translateX(-2%);
        -ms-transform: translateY(-50%) translateX(-2%);
        -o-transform: translateY(-50%) translateX(-2%);
        transform: translateY(-50%) translateX(-2%);
    }
}
