@charset "utf-8";

html {
    font-size: 0.7320644216691069vw;
}

:root {
    --main-color: #fff2e5;
    /* #fdf9f7; */
    --moji-color-koi: #6c5b56;
}

*,
::before,
::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    border: none;
    outline: none;
}

ul,
ol {
    list-style: none;
}

a {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

button {
    background-color: transparent;
    border: none;
    border-radius: none;
    outline: none;
    cursor: pointer;
}

h2 {
    font-weight: normal;
}

img {
    vertical-align: middle;
    max-width: 100%;
}

body {
    font-family: "adobe-garamond-pro", serif;
    font-size: 2.5rem;
    color: #9f8b77;
    line-height: 1.5;
    background-color: var(--main-color);
}



/* header */
header {
    color: #6c5b56CC;
}

.header-inner {
    position: fixed;
    top: 1.2rem;
    z-index: 100;
    width: 100%;
    padding: 0 4rem;
    display: flex;

    justify-content: space-between;
    align-items: center;

}

.toggle-menu-button {
    display: none;
}

.logo {
    display: inline-block;
    width: 13.4rem;
    transition: .5s;
}

.logo:hover {
    opacity: .5;
}

header .site-menu ul,
footer .site-menu ul {
    display: flex;
}

header .site-menu li {
    margin: 0 1.5rem;
}

.site-menu li a {
    position: relative;
}

.site-menu li a::after {
    position: absolute;
    bottom: -0.05rem;
    left: 0;
    content: '';
    width: 100%;
    height: 0.2rem;
    background: #6c5b5680;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
}

.site-menu li a:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
}

header .site-menu {
    display: flex;
}

header .instg {
    display: inline-block;
    width: 2.2rem;
    margin-left: 2.0rem;
    transition: .5s;
}

header .instg img {
    display: inline-block;
    width: 100%;
}

header .instg:hover {
    opacity: .5;
}


/* footer */
.footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6rem 0;
    border-top: 0.1rem solid #dbc9b8;
}

footer {
    color: var(--moji-color-koi);
    padding: 0 8rem;
}

footer .site-menu li {
    margin: 0 2.0rem;
}

footer .site-menu a::after {
    background: var(--moji-color-koi);
}

/* ここまでfooter */

.first-view {
    height: 100vh;
    background-image: url(./images/index/fashon01.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}


/* aboutここから */
.about {
    font-family: "kozuka-gothic-pr6n", sans-serif;
    letter-spacing: 0.04em;
    padding: 20rem 0;
    text-align: center;
}

.about .mlily {
    margin: 0 auto;
    width: 25rem;
}

.about .omamori {
    font-size: 2.0rem;
    margin: 7.6rem 0;
}

.about p {
    font-size: 1.6rem;
}

.about .text1 {
    margin-top: 4.0rem;
}

.about .text2 {
    margin-top: 7.6rem;
}

/* colectionここから */
.collection {
    background-color: #dbb7a5;
    padding: 19.5rem 0;

}

.collection .ue {
    margin: 0 10rem 0 5.6rem;
}

.collection h2 {
    font-weight: 400;
    color: #fff;
    text-align: left;
    font-size: 13.5rem;
    line-height: 1.0;
}

.collection a {
    color: #fff;
    font-size: 4.5rem;
    position: relative;
    /* display: inline-block; */
}

.collection a::before {
    position: absolute;
    bottom: -0.35rem;
    left: 0;
    content: '';
    width: 115%;
    height: 0.2rem;
    background: #fff;
    transform: scale(1, 1);
    transform-origin: left top;
    transition: transform .3s ease-in-out;
}

.collection a:hover::before {
    transform-origin: right top;
    transform: scale(0, 1);
}

.collection a::after {
    content: '';
    position: absolute;
    top: 39%;
    right: -2.7rem;
    width: 1.5rem;
    height: 1.5rem;
    border-top: 0.25rem solid #fff;
    border-right: 0.25rem solid #fff;
    transform: rotate(45deg);
    transition: all .3s;
}

.collection a:hover::after {
    right: -4rem;
}


.collection .hako1 {
    position: relative;
    width: 100%;
    padding: 32vw 0;
}

.collection .hako1 .item1 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: 37%;
}

.collection .hako1 .item2 {
    position: absolute;
    top: 38%;
    right: 33%;
    width: 29%;
}

.collection .item3 {
    margin-top: 7rem;
    text-align: right;
}

.collection .item3 img {
    width: 50%;
}

.collection .item4 {
    margin: 10rem 0 0 10rem;
    width: 35%;
}

.collection .item5 {
    margin: 4.6rem 0 0 60rem;
}

.collection .item5 img {
    width: 54.5%;
}

/* productsここから */
.products {
    margin: 25rem 0 35rem;
    padding: 0 25rem;
}

.products h2 {
    color: var(--moji-color-koi);
    font-size: 7.2rem;
    font-weight: 400;
    text-align: center;
}

.products a {
    display: block;
    transition: .5s ease-in-out;
}

.products a:hover {
    transform: scale(1.1);
}

.products .re {
    display: flex;
    margin-top: 10rem;
}

.products .nb {
    display: flex;
    margin-top: 13rem;
}

.products .center {
    position: relative;
    overflow: hidden;
}

.center p {
    font-size: 8.0rem;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 1;
}




/* ここからnews */
.news .view {
    height: 60rem;
    background-image: url(./images/index/news.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: sticky;
    top: 0;
    left: 0;
    z-index: -1;
}

.news .naiyou {
    width: 100%;
    padding: 20rem 0;
    background-color: var(--main-color);
    display: flex;
    justify-content: center;
    align-items: center;
}

.news h2 {
    font-weight: 400;
    color: var(--moji-color-koi);
    font-size: 7.2rem;
    margin-bottom: 2rem;
}

.news .flex {
    padding: 0 10.5rem 16.5rem 0;
}

.news .flex a {
    font-size: 2.3rem;
    margin-left: 1.2rem;
    position: relative;
}

.news .flex a::before {
    position: absolute;
    bottom: -0.35rem;
    left: 0;
    content: '';
    width: 115%;
    height: 0.15rem;
    background: #9f8b77;
    transform: scale(1, 1);
    transform-origin: left top;
    transition: transform .3s ease-in-out;
}

.news .flex a:hover::before {
    transform-origin: right top;
    transform: scale(0, 1);
}

.news .flex a::after {
    content: '';
    position: absolute;
    top: 39%;
    right: -1.7rem;
    width: 1rem;
    height: 1rem;
    border-top: 0.2rem solid #9f8b77;
    border-right: 0.2rem solid #9f8b77;
    transform: rotate(45deg);
    transition: all .3s;
}

.news .flex a:hover::after {
    right: -2.5rem;
}

.news .naiyou .box {
    margin-right: 1rem;
}

.news .naiyou p {
    font-family: "kozuka-gothic-pr6n", sans-serif;
    font-size: 1.6rem;
    letter-spacing: 0.04em;
}

.news .naiyou .text {
    padding: 0.5rem 0 2.5rem;
    border-bottom: 0.1rem solid #bda68f;
}

.news .naiyou .day {
    margin-top: 2.5rem;
}



/* ここからスマホ */
@media (max-width: 800px) {
    html {
        font-size: 1.25vw;
    }

    header .site-menu {
        display: none;
        font-size: 5.4rem;
        text-align: center;
        padding: 14rem 0;
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 9;
        background-color: #fff2e5F2;
    }

    header .site-menu.on {
        display: block;
    }

    header .site-menu ul {
        display: block;
    }

    header .site-menu li {
        margin: 0 0 4rem 0;
    }

    header .instg {
        margin: 3rem 0 0 19rem;
        width: 4.2rem;
        position: relative;
    }

    header .instg::before {
        content: 'follow us';
        display: inline-block;
        position: absolute;
        bottom: .2rem;
        right: 7.3rem;
        white-space: nowrap;
        font-size: 4rem;
    }

    header .logo {
        z-index: 10;
        margin-top: 3rem;
    }

    .toggle {
        display: block;
    }

    .toggle {
        position: fixed;
        top: 4.6rem;
        right: 4rem;
        width: 6rem;
        height: 3rem;
        z-index: 10;
    }

    .toggle span,
    .toggle span::after {
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        background-color: #6c5b56CC;
        transition: .5s;
        position: absolute;
    }

    .toggle span::after {
        top: 1.2rem;
    }

    .toggle.on span {
        transform: rotate(-45deg);
    }

    .toggle.on span::after {
        transform: translateY(-1.2rem) rotate(90deg);
    }

    .first-view {
        height: 100vh;
        background-image: url(./images/index/fashon01_800.jpg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    .collection .item5 {
        margin: 4.6rem 0 0 34rem;
    }

    .products {
        margin: 25rem 0 35rem;
        padding: 0;
    }

    .collection .ue {
        margin: 0 5.6rem 0 5.6rem;
    }

    .collection .hako1 {
        padding: 64vw 0;
    }

    .collection .hako1 .item1 {
        width: 60%;
    }

    .collection .hako1 .item2 {
        width: 51%;
        top: 39%;
        right: 49%;
    }

    .collection .item3 {
        margin-top: 18rem;
    }

    .collection .item3 img {
        width: 68%;
    }

    .collection .item4 {
        margin: 14rem 0 0 5.6rem;
        width: 50%;
    }

    .collection .item5 {
        margin: 12.6rem 0 0 34rem;
    }

    .collection .item5 img {
        width: 78.5%;
    }

    .news .naiyou {
        width: 100%;
        padding: 20rem 8rem;
        background-color: var(--main-color);
        display: block;
        justify-content: center;
        align-items: center;
    }

    .news .naiyou .box {
        margin: 0;
    }

    .news .flex {
        padding: 0 1rem 3rem 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .news h2 {
        margin: 0;
    }

    .news .flex a {
        height: 3rem;
    }

    .footer-inner {
        display: flex;
        flex-direction: column;
    }

    footer .logo {
        margin-bottom: 3rem;
    }

    footer .site-menu {
        margin-bottom: 5rem;
    }
}