@charset "UTF-8";

html {
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
  letter-spacing: 0.08em;
  line-height: 1.5;
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
  display: block;
}

/* ここから記述します。 *//*# sourceMappingURL=style.css.map */

.section {
    max-width: 1000px;
}
.header {
    width: 100%;
    position: fixed;
    top: 0;
    background-color: #fff;
    z-index: 100;
}
.header__inner {
        max-width: 1080px;
        margin: 0 auto;
        padding: 16px 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    @media screen and (max-width: 768px) {
        .header__inner {
            padding: 16px 20px;
        }
    }
    

.header__logoLink {
    display: inline-block;
}

 .header__list {
        display: flex;
        gap: 40px;
}

@media screen and (max-width: 768px) {
    .header__list {
          gap: 24px;
    }
}
    


.header__link {
        font-family: "Noto Serif JP";
        font-weight: bold;
        color: #83776A;
        transition: 0.2s ;
    }


.u-container {
        max-width: 1080px;
        padding: 80px 40px;
        margin: 0 auto;
    }

    @media screen and (max-width: 768px) {
        .u-container {
            max-width: 390px;
            padding: 80px 20px;
        }
    }
    

.u-sectionTitle {
    color: #83776a;
    margin-bottom: 64px;
}
.u-sectionTitleEn {
    font-family: "Noto Serif JP";
    font-size: 32px;
    font-weight: bold;
    transition: 0.2s ;
}


.u-sectionTitleJp {
    display: block;
    padding-left: 45px;
    position: relative;
}

.u-sectionTitleJp::before {
    position: absolute;
    content: "";
    width: 35px;
    height: 1px;
    background-color: #83776a;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
}
.u-readMoreBtn {
    display: block;
    width:  180px;
    padding: 10px 0;
    background-color: #fff;
    border: 1px solid #83776a;
    text-align: center;
    transition: 0.2s;
    position: relative;
}

.u-readMoreBtn:hover {
    background-color: #83776a;
    color: #fff;
}

.u-readMoreBtn::after {
    position: absolute;
    content: "";
    width: 70px;
    height: 1px;
    background-color: #83776a;
    top: 0 ;
    bottom: 0;
    margin: auto;
    right: -35px;
    transition: 0.2s;
    z-index: 10;
}
/***************************
main
****************************/
.main {
    margin-top:  80px;
}

.firstView {
        padding: 300px 0;
        margin-left: 280px;
        background-image: url(../image/fv.png);
        background-size: cover;
        background-position: bottom;
        position: relative;
    }
   @media screen and (max-width: 768px) {
    .firstView {
        margin-left: 0;
   }
}
    
.firstView__title {
    position: absolute;
    width: 300px;
    height: 300px;
    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid #83776A;
    bottom:80px;
    left: -140px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Noto Serif JP";
    font-size: 40px;
    font-weight: bold;
    color: #83776A;
}

    @media screen and (max-width: 768px){
     .firstView__title {
        width: 200px;
        height: 200px;
        top: 100px;
        bottom: auto;
        left: 0;
        right: 0;
        margin: 0 auto;
        font-size: 24px;
     }
    }
    


/***************************
Concept
****************************/

.concept__inner {
    display: flex;
    justify-content: space-between;
    gap: 60px;
}

    @media screen and (max-width: 768px){
       .concept__inner {
        flex-direction: column;
        gap: 40px;
    }
}
.concept__text {
    margin-bottom: 40px;
}

/***************************
Menu
****************************/
.menu {
    background-color: #f9f5ed;
}

.menu__img {
    margin-bottom:  16px;
}
.menu__price {
    font-family: "Noto Serif JP";
    font-weight: bold;
    color: #83776a;
}

.menu__list {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 40px;
}

    @media screen and (max-width: 768px){
        .menu__list {
        flex-direction: column;
        align-items: center;
    }
}

.menu__item{
    position: relative;
}

.menu__item:nth-of-type(2) {
    margin-top: 40px;
}

.menu__item:nth-of-type(3) {
    margin-top: 80px;
} 

.menu__item::before {
        position: absolute;
        content: "";
        width: 60px;
        height: 60px;
        background-color: rgba(255, 255, 255, 0.8);
        font-family: "Noto Serif JP";
        font-size: 32px;
        font-weight: bold;
        color: #83776A;
        text-align: center;
        line-height: 60px;
}
    

.menu__item:nth-of-type(1)::before {
    content:  "01";
}
 

.menu__item:nth-of-type(2)::before {
    content: "02";
}

.menu__item:nth-of-type(3)::before {
    content: "03";
}

.u-readMoreBtn--center {
    margin: 0 auto;
}

.u-readMoreBtn {
    display: block;
    width: 180px;
    padding: 10px 0;
    background-color: #fff;
    border: 1px solid #83776a;
    color: #83776a;
    text-align: center;
    transition: 0.2s;
    position: relative;
}

    @media screen and (max-width:768px) {
        .u-readMoreBtn {
            margin: 0 auto;
        }
    }


.fixedBg {
    height: 500px;
    background-image: url(../image/fixed_bg.png) ;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

    @media screen and (max-width: 768px){
        .fixedBg {
            height: 350px;
            background-attachment: scroll;
            background-size: cover;
        }
    }

/***************************
shop
****************************/

.u-sectionTitleJp {
    display: block;
    padding-left: 45px;
    position: relative;
}

.u-sectionTitleJp::before {
    position: absolute;
    content: "";
    width: 35px;
    height: 1px;
    background-color: #83776a;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
}
.shop__title {
    font-family: "Noto serif JP";
    font-size: 20px;
    font-weight: bold;
    color: #83776a;
}

.shop__dlData {
    flex-grow: 1;
}

.shop__dlInner {
    display: flex;
    gap: 24px;
    padding: 16px 0;
    border-bottom :1px solid #ccc ;
}


.shop__desc {
    flex-grow: 1;
}

.shop__inner {
display: flex;
justify-content: space-between;
gap: 60px;
}

 @media screen and (max-width: 769px){
    .shop__inner {
        flex-direction: column;
        gap: 40px;
    }
 }


/***************************
footer
****************************/
.footer {
    background-color: #f9f5ed;
}

.footer__inner {
    padding: 40px;
    text-align: center;
}

.footer__logoLink {
    display: inline-block;
    margin: 0 auto 16px;
}

.footer__list {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin-bottom: 24px;
}

.footer__link {
    font-family: "Noto Serif JP";
    font-weight: bold;
    color: #83776a;
    transition: 0.2s;
}

.footer__copy {
    font-size: 14px;
    color: #83776a;
}

.fixedBtn {
    display: inline-block;
    position: fixed;
    bottom: 65px;
    right: 0;
    z-index: 90;
}