﻿@charset "UTF-8"; /* ==========================================================================
    Typograpgy
  ========================================================================== */
@media only screen and (min-width: 768px) and (max-width: 1600px) {
    html {
        font-size: calc(10 * (100vw / 1600)) !important;
    }
}

@media (max-width: 767px) {
    /* ====== SP ===== */ .bredlist.lp {
        line-height: 5.33333vw;
        font-size: 2.66667vw;
        margin: 3.33333vw auto;
        width: 92.592%;
        text-align: left;
        padding: 0;
    }

    .lp * {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
}

html {
    font-size: 62.5%;
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

img, video, svg {
    width: 100%;
    height: auto;
}

#Contents {
    max-width: 1600px;
    width: 100%;
    height: auto;
    margin: 0 auto;
    ; margin-bottom: 4.5rem;
}

/* -----------------------------------
basic
----------------------------------- */
/* ====== ALL ===== */
.main_container {
    width: 100%;
    margin: 0 auto;
    font-family: toppan-bunkyu-mincho-pr6n, toppan-bunkyu-mincho-pr6n, "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif", sans-serif;
    font-weight: 400;
    font-feature-settings: "palt";
    -ms-font-feature-settings: "normal";
    font-style: normal;
    color: #343434;
}

/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .sp_only {
        display: block!important;
    }

    .pc_only {
        display: none;
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .pc_only {
        display: block!important;
    }

    .sp_only {
        display: none;
    }
}

/*basic*/
/* -----------------------------------
mainVisual
----------------------------------- */
/* ====== ALL ===== */
.mainVisual {
    margin: auto;
    text-align: center;
}

.mainVisual .leadTtl {
    font-family: trajan-sans-pro, toppan-bunkyu-mincho-pr6n, "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif", sans-serif;
    font-weight: normal;
    letter-spacing: 0.12em;
    /* -webkit-font-smoothing: antialiased; */
}

.mainVisual .leadTxt {
    font-style: normal;
    letter-spacing: 0;
}

/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .mainVisual .leadTtl {
        margin-top: calc(80 * (100vw / 750));
        font-size: calc(30 * (100vw / 750));
        line-height: 1.733;
        letter-spacing: 0.12em;
    }

    .mainVisual .leadTtl span {
        display: block;
        margin-top: calc(30 * (100vw / 750));
        font-size: calc(48 * (100vw / 750));
        line-height: 1.083;
    }

    .mainVisual .leadTxt {
        margin-top: calc(60 * (100vw / 750));
        font-size: calc(26 * (100vw / 750));
        line-height: 2;
        letter-spacing: 0.12em;
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .mainVisual {
        width: 90.0rem;
        margin: auto;
    }

    .mainVisual .leadTtl {
        margin-top: 6.2rem;
        font-size: 2.0rem;
        line-height: 1;
        letter-spacing: 0.12em;
    }

    .mainVisual .leadTtl span {
        display: block;
        margin-top: 1.4rem;
        font-size: 3.2rem;
        line-height: 1.625;
        letter-spacing: 0.10em;
    }

    .mainVisual .leadTxt {
        margin-top: 3.0rem;
        font-size: 1.6rem;
        line-height: 2;
        letter-spacing: 0.12em;
    }
}

/* mainVisual */
/* -----------------------------------
contentsWrap
----------------------------------- */
/* ====== ALL ===== */
.contentsWrap {
    text-align: center;
}

.contentsWrap .categoryTtl {
    position: relative;
    display: inline-block;
    background-color: #fff;
    font-family: trajan-sans-pro, toppan-bunkyu-mincho-pr6n, "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif", sans-serif;
    font-weight: normal;
    text-align: center;
}

.contentsWrap .categoryTtl::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%);
}

.contentsWrap .contents .detail .leadTtl {
    font-weight: normal;
}

.contentsWrap .contents .detail .credit a {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    width: fit-content;
    color: #343434;
}

/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .contentsWrap .categoryTtl {
        padding: 0 calc(40 * (100vw / 750));
        font-size: calc(35 * (100vw / 750));
        line-height: 1.2;
        letter-spacing: 0.45em;
    }

    .contentsWrap .categoryTtl::before {
        height: .99px;
        background-color: #343434;
        z-index: -3;
    }

    .contentsWrap .contents {
        width: 100%;
        margin: calc(80 * (100vw / 750)) auto 0;
    }

    .contentsWrap .contents:not(.contents--1) {
        margin-top: calc(150 * (100vw / 750));
    }

    .contentsWrap .contents .detail {
        width: calc(640 * (100vw / 750));
        margin: calc(60 * (100vw / 750)) auto 0;
    }

    .contentsWrap .contents .detail .leadTtl {
        font-size: calc(40 * (100vw / 750));
        line-height: 1.75;
        letter-spacing: 0.12em;
    }

    .contentsWrap .contents .detail .leadTxt {
        margin-top: calc(60 * (100vw / 750));
        font-size: calc(24 * (100vw / 750));
        line-height: 2;
        letter-spacing: 0.10em;
        text-align: left;
    }

    .contentsWrap .contents .detail .credit {
        margin-top: calc(40 * (100vw / 750));
        font-size: calc(22 * (100vw / 750));
        line-height: 1.273;
        letter-spacing: 0.10em;
        text-align: left;
    }

    .contentsWrap .contents .detail .credit span {
        margin-left: calc(10 * (100vw / 750));
        width: calc(60 * (100vw / 750));
        line-height: calc(24 * (100vw / 750));
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .contentsWrap.women {
        margin-top: 12.0rem;
    }

    .contentsWrap .categoryTtl {
        padding: 0 2.4rem;
        font-size: 2.0rem;
        line-height: 2.6;
        letter-spacing: 0.45em;
    }

    .contentsWrap .categoryTtl::before {
        height: 1px;
        background-color: #343434;
        z-index: -3;
    }

    .contentsWrap .contents {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: flex-start;
        width: 90.0rem;
        margin: 5rem auto 0;
    }

    .contentsWrap .contents:not(.contents--1) {
        margin-top: 12.0rem;
    }

    .contentsWrap .contents .slider {
        width: 51.0rem;
    }

    .contentsWrap .contents .detail {
        position: relative;
        width: 33.0rem;
        margin: 3.1rem 0 0;
        text-align: left;
    }

    .contentsWrap .contents .detail .leadTtl {
        font-size: 2.4rem;
        line-height: 1.75;
        letter-spacing: 0.12em;
    }

    .contentsWrap .contents .detail .leadTxt {
        margin-top: 2.9rem;
        font-size: 1.4rem;
        line-height: 2;
        letter-spacing: 0.10em;
        text-align: left;
    }

    .contentsWrap .contents .detail .credit {
        position: absolute;
        top: 66.2rem;
        left: -57rem;
        font-size: 1.2rem;
        line-height: 2.333;
        letter-spacing: 0.12em;
        text-align: left;
    }

    .contentsWrap .contents .detail .credit span {
        margin-left: 0.7rem;
        width: 3.5rem;
        line-height: 1.5rem;
        letter-spacing: 0.12em;
    }

    .contentsWrap .contents .detail .itemWrap {
        margin: 5.3rem 0 0;
    }
}

/* contentsWrap */
/* -----------------------------------
Women
----------------------------------- */
/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .contentsWrap.women {
        margin-top: calc(120 * (100vw / 750));
    }

    .contentsWrap.women .categoryTtl::before {
        width: calc(446 * (100vw / 750));
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .contentsWrap.women {
        margin-top: 9.7rem;
    }

    .contentsWrap.women .contents.contents--2 {
        flex-direction: row-reverse;
    }

    .contentsWrap.women .contents.contents--2 .credit {
        position: absolute;
        width: fit-content;
        white-space: nowrap;
        left: auto;
        right: -57rem;
    }

    .contentsWrap.women .categoryTtl::before {
        width: 28.2rem;
    }
}

/* Women */
/* -----------------------------------
Men
----------------------------------- */
/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .contentsWrap.men {
        margin-top: calc(150 * (100vw / 750));
    }

    .contentsWrap.men .categoryTtl::before {
        width: calc(353 * (100vw / 750));
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .contentsWrap.men {
        margin-top: 13.6rem;
    }

    .contentsWrap.men .contents {
        margin: 2.5rem auto 0;
    }

    .contentsWrap.men .contents:not(.contents--1) {
        margin-top: 12.0rem;
    }

    .contentsWrap.men .categoryTtl::before {
        width: 22.0rem;
    }

    .contentsWrap.men .contents.contents--1, .contentsWrap.men .contents.contents--3 {
        flex-direction: row-reverse;
    }

    .contentsWrap.men .contents.contents--1 .credit, .contentsWrap.men .contents.contents--3 .credit {
        position: absolute;
        width: fit-content;
        white-space: nowrap;
        right: -57rem;
        left: auto;
    }
}

/* Women */
/* -----------------------------------
viewAll
----------------------------------- */
/* ====== ALL ===== */
.viewAll {
    margin: auto;
}

/* ====== SP ===== */
@media only screen and (max-width: 750px) {
    .viewAll {
        width: calc(570 * (100vw / 750));
        margin: calc(150 * (100vw / 750)) auto 0;
    }
}

/* ====== PC ===== */
@media only screen and (min-width: 751px) {
    .viewAll {
        width: 46.0rem;
        margin: 12.0rem auto 0;
    }
}

/* viewAll */
/* -----------------------------------
animation
----------------------------------- */
/* fade */
.fade {
    transition-property: opacity, transform;
    transition-duration: 1.5s;
    opacity: 0;
    transform: translateY(1.5rem);
}

.fade.onView {
    opacity: 1;
    transform: translateY(0);
}
