@charset "utf-8";
/*=============================
common
=============================*/
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    font-family:
        "Noto Sans JP", 
        "Zen Maru Gothic",
        sans-serif;
    font-style: normal;
    color: #222222;
    background-color: #fff;
    line-height: 1.5;
}

img {
    max-width: 100%;
    height: auto; 
}

.section__topic {
    text-align: center;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.3;
}

/*=============================
header
=============================*/

.header__topic {
   padding: 16px 6.4% ; 
}

.header__topic, 
.nav__topic {
    max-width: 100%;
    height: auto;
}

/* .nav初期表示 */
.nav {
    background-color: #D9A689;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    padding: 16px 6.4%;
    transform: translateX(-100%);
    transition: transform 0.4s;
}

.nav__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav__list {
    margin-top: 64px;
}

.nav__item {
    color: #FFF;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    margin-top: 52px;
}

.nav.active {
    transform: translateX(0);
}

.header__btn {
    display: block;
    width: 36px;
    height: 36px;
    position: absolute;
    top: 42px;
    right: 6.4%;
}

.nav__btn {
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 42px;
    right: 6.4%;
}

/* .header pc */
@media screen  and (min-width: 769px){
    .header {
        max-width: 1280px;
        margin: 0 auto;
        padding: 24px 60px 12px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .header__topic {
        padding: 0;
    }

    .nav {
        background: transparent;
        width: auto;
        height: auto;
        padding: 0;
        position: static;
        transform: translate(0);
    }

    .nav__list {
        display: flex;
        margin-top: 0;
    }

    .nav__item {
        margin-top: 0;
        font-family: "Zen Maru Gothic";
        color: #BF665E;
        font-size: 1.8rem;
        font-weight: 500;
        line-height: 1.3;
        margin-left: 29px;
    }

    .nav__header {
        display: none;
    }

    .nav__item:first-of-type {
        display: none;
    }

    .header__btn {
        display: none;
    }

}/* pc 769px */

/*=============================
scrollTop
=============================*/
.topBtn {
    display: inline-block;
    padding: 18px;
    border-radius: 50%;
    background-color: #D9A689;
    color: #fff;
    font-size: 1.2rem;
    box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, 0.5);

    position: fixed;
    bottom: 1.4%;
    right: 1.4%;
}
/*=============================
main
=============================*/
/* article header */
.mainImg .mainImg__pc {
    display: none;
}

.mainTopics {
    padding: 48px 6.4%;
}

.mainTopics__name {
    color: #BF665E;
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-weight: 700;
    font-size: 2.4rem;
    line-height: 1.3; 
}

.mainTopics__txt {
    font-size: 1.4rem;
    margin-top: 24px;
}

/* article header pc */
 @media screen and (min-width: 769px) {
    .mainImg .mainImg__pc {
        display: block;
    }

    .mainImg .mainImg__sp {
        display: none;
    }

    .mainTopics {
        padding: 64px 0;
        max-width: 1280px;
        margin: 0 auto;
    }

    .mainTopics__name {
        font-size: 3.2rem;
    }

    .spBr {
        display: none;
    }

    .mainTopics__txt {
        text-align: center;
        font-size: 1.8rem;
        line-height: 1.3;
        margin-top: 32px;
    } 

}/* pc 769px */

/* .about*/
.section--about {
    padding: 48px 16.5%;
    background-color: #F2E8DF;
}

.about__item {
    margin-top: 32px;
}

.about {
    justify-content: center;
    align-items: center;
    text-align: center;
}

.about__img img {
    width: 248px;
    border-radius: 50%;
    object-fit: cover;
    display: inline-block;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}

.about__txt {
    color: #593E3C;
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-size: 1.8rem;
    font-weight: 700;
    margin-top: 10px;
}

.about__detail {
    font-size: 1.6rem;
    margin-top: 32px;
    text-align: center;
}

/*======================== 
fadeIn
========================*/
.fadeIn {
    transform: translate(0, 50px);
    opacity: 0;
    transition: 1.0s;
}

.fadeIn.animated {
    transform: translate(0, 0);
    opacity: 1;
}

/* .about pc */
@media screen and (min-width: 769px) {
    .about {  
        max-width: 1280px;
        margin: 0 auto;
        gap: 40px;
        display: flex;
    }

    .section--about {
        padding: 64px 16%;
    }

    .about__txt {
        margin-top: 10px;
    }

/*======================== 
fadeIn
========================*/
    .fadeIn {
    transform: translate(0, 50px);
    opacity: 0;
    transition: 1.0s;
    }

    .fadeIn.animated {
        transform: translate(0, 0);
        opacity: 1;
}}/* pc 769px */

/* .lineUp*/
.section--lineUp {
    padding: 48px 4.2%;
}

.lineUp__item {
    margin-top: 20px;
}

.lineUp__item:first-of-type {
    margin-top: 32px;
}

.lineUp__img img {
    border-radius: 10px;
    max-width: 100%;
    height: auto;
}

.lineUp__content {
    padding: 16px;
}

.lineUp__name {
    color: #593E3C;
    font-family: "Zen Maru Gothic";
    font-size: 1.8rem;
    font-weight: 700;
}

.lineUp__txt {
    font-size: 1.4rem;
    margin-top: 16px;
}

.lineUp__price {
    color: #BF665E;
    font-family: "Zen Maru Gothic";
    font-size: 1.4rem;
    font-weight: 500;
    margin-top: 16px;
}

/* .lineUp pc */
@media screen and (min-width: 769px) {
    .section--lineUp {
        padding: 64px 0 96px;
    }

    .lineUp {
        max-width: 1280px;
        margin: 0 auto;
        padding: 60px;
        display: flex;
        justify-content: center;
        gap: 20px;
    }

    .lineUp__item {
        margin-top: 48px;
        max-width: 373px;
    }

    .lineUp__item:first-of-type {
        margin-top: 48px;
    }

    .lineUp__txt,
    .lineUp__price {
        font-size: 1.6rem;
    }
}/* pc 769px */

/* .shop */
.section--shop {
    padding: 48px 4.2%;
    background-color: #D9A689;
}

.map {
    width: 100%;
    height: 400px;
    border-radius: 10px 10px 0 0;
    margin-top: 24px;
}

.shop__list {
    background-color: #fff;
    padding: 40px 4.2%;
    display: flex;
    flex-wrap: wrap;
    border-radius:  0 0 10px 10px;
}

.shop__topic {
    font-size: 1.4rem;
    line-height: 1;
    width: 30%;
    padding-bottom: 20px;
    margin-bottom: 10px;
    font-weight: normal;
}    

.shop__txt {
    font-size: 1.4rem;
    line-height: 1;
    width: 70%;
    padding-bottom: 20px;
    margin-bottom: 10px;
}

/* .shop pc */
@media screen and (min-width: 769px) {
    .shop__topic,
    .shop__txt {
    font-size: 1.6rem;
    }
}

/* .news */
.section--news {
    padding: 48px 4.2%;
    background-color: #F2E8DF;
}

.news__list {
    background: #fff;
    padding: 24px 4.2%; 
    margin-top: 32px;
    border-radius: 10px;
}

.news__topic {
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 1;
    color: #593E3C;
    margin-top: 24px;
}

.news__topic:first-of-type {
    margin-top: 0;
}

.news__icon {
    width: 20px;
    height: 20px;
}

.news__topic time {
    padding-left: 8px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1;
}

.news__topic span {
    display: block;
    margin-top: 8px;
    margin-left: 28px;
}

.news__txt {
    font-size: 1.4rem;
    margin-top: 8px;
    margin-left: 28px;
}

/* news pc */
@media screen and (min-width: 769px) {
    .section--news {
        padding: 64px 4.2% 96px;
    }

    .news__list {
        padding: 48px 96px;
        margin: 32px auto 0;
    }

    .news__topic {
        font-size: 1.8rem;
        line-height: 1.5;
        margin-top: 32px;
        display: flex;
        align-items: center;
    }

    .news__icon {
        width: 24px;
        height: 24px;
    }

    .news__topic time {
        font-size: 1.8rem;
    }

    .news__topic span {
        margin-top: 0;
    }

}/* pc 769px */

/*=============================
footer
=============================*/
.footer {
    padding: 32px 4.2%;
}

.menu__list {
    margin-top: 32px;
}

.menu__item {
    color: #BF665E;
    font-family: "Zen Maru Gothic";
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.3;
    margin-top: 16px;
}

.sns { 
    margin-top: 32px;
    display: flex;
}

.sns__item {
    width: 24px;
    height: 24px;
    margin-right: 24px;
}

.copy {
    margin-top: 64px;
}

.copy small {
    font-size: 1.2rem;
}

/* .footer pc */
@media screen and (min-width: 769px) {
    .footer {
        padding: 64px 60px ;
        max-width: 1280px;
        margin: 0 auto;
    }

    .footer__group {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .menu__list {
        display: flex;
        margin-top: 0;
    }

    .menu__item {
        margin-top: 0;
        margin-left: 32px;
    }

    .sns {
        justify-content: flex-end;
    }

    .sns__item {
        margin: 0 0 0 24px;
    }

    .copy {
        margin-top: 32px;
    }

}/* pc 769px */