@charset "UTF-8";

body{
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1.5;
    background-color: #fff;
}

/* section */
.section-wrap{
    padding: 80px 0;
}
.section-inner{
    width: 1080px;
    margin: 0 auto;
}

.section-inner-s{
    width: 900px;
    margin: 0 auto;
}

.section-ttl{
    font-size: 60px;
    font-weight: bold;
    text-align: center;
    color: #DBAF89;
    position: relative;
}

.section-ttl.__concept::before{
    content: "コンセプト";
    color: black;
    font-size: 18px;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.section-ttl.__menu::before{
    content: "メニュー";
    color: black;
    font-size: 18px;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.section-ttl.__info::before{
    content: "お知らせ";
    color: black;
    font-size: 18px;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.section-ttl.__access::before{
    content: "アクセス";
    color: black;
    font-size: 18px;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
}

/* btn */
.btn{
    margin-top: 60px;
    text-align: center;
}

.btn-link{
    display: inline-block;
    padding: 14px 32px;
    border: 1px solid #DBAF89;
    border-radius: 28px;
    font-weight: bold;
}

/* icon */

.icon-list{
    display: flex;
}

.icon-item + .icon-item{
    margin-left: 16px;
}

/* header */
.header{
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;
    width: 90%;
    position: absolute;
    top: 40px;
    left: 5%;
    z-index:100 ;
}

.header-logo{
    width: 160px;
}

.header-nav-list{
    display: flex;
}
.header-nav-item + .header-nav-item{
    margin-left: 40px;
}

/* kv */

.kv{
    width: 100%;
    position: relative;
}

.kv.__index{
    height: 768px;
    background-image: url(../img/kv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.kv.__menu{
    height: 500px;
    background-image: url(../img/menu_kv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.kv.__info{
    height: 500px;
    background-image: url(../img/info_kv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.kv-copy,.kv-detail{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.kv-detail .section-ttl{
    color: #fff;
}

.kv-detail .section-ttl::before{
    color: #fff;
}

/* concept */
.concept-txt-main{
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    margin-top: 40px;
}

.concept-txt-sub{
    margin-top: 24px;
    text-align: center;
}

.concept-img-box{
    height: 350px;
    margin-top: 80px;
}

.concept-img{
    object-fit: cover;
    object-position: top;
}

.concept-detail-wrap{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 80px;
}

.concept-detail-content{
    width: 400px;
}

.concept-detail-ttl{
    font-size: 32px;
    font-weight: bold;
}
.concept-detail-txt{
    margin-top: 40px;
}

.concept-detail-img-wrap{
    display: flex;
    width: 580px;
}

.concept-detail-img-box{
    width: 280px;
    height: 390px;
}

.concept-detail-img-box:nth-child(1){
    margin-top: 60px;
}
.concept-detail-img-box:nth-child(2){
    margin: 0 0 60px 20px;
}

.concept-detail-img{
    object-fit: cover;
    border-radius: 10px;
}

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

.menu.__detail{
    background-color: #fff;
}

.menu-wrap{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 60px;
}

.menu-item{
    width: 340px;
}

.menu-item:nth-of-type(n+4){
    margin-top: 40px;
}

.menu-img-box{
    height: 220px;
}
.menu-img{
    object-fit: cover;
    border-radius: 10%;
}

.menu-content{
    margin-top: 16px;
}

.menu-txt{
    font-size: 18px;
    font-weight: bold;
}
.menu-price{
    margin-top: 8px;
}

/* info */
.info-list{
    margin-top: 60px;
}

.info-list.__detail{
    margin-top: 0;
}

.info-item{
    border-bottom: 1px solid #BCBCBC;
}

.info-item + .info-item{
    margin-top: 40px;
}

.info-tag{
    font-size: 12px;
    margin-left: 24px;
    padding: 4px 8px;
}

.info-tag.__orange{
    border: 1px solid #FF9F51;
    color: #FF9F51;
}

.info-tag.__red{
    border: 1px solid #BA0000;
    color: #BA0000;
}

.info-txt{
    margin-top: 16px;
    padding-bottom: 16px;
}

/* page-btn */

.page-btn-list{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 60px;
}

.page-btn-item{
    border:1px solid #707070;
}

.page-btn-link{
    display: block;
    padding: 8px 16px;
}

.page-btn-item.__current{
    border: none;
    background-color: #ffe7d0;
}

.page-btn-item + .page-btn-item{
    margin-left: 8px;
}

/* info-single */

.info-single-head{
    border-bottom: 1px solid #BCBCBC;
}

.info-single .info-tag{
    font-size: 16px;
}

.info-single .info-txt{
    font-size: 24px;
    font-weight: bold;
}

.info-single-content p{
    margin-top: 24px;
}
.info-single-content img{
    margin-top: 40px;
    object-fit: cover;
    height:560px ;
    width: 100%;
}

.btn.__info{
    padding-bottom: 60px;
}

/* access */
.access{
    background-color: #ffe7d0;
}

.access-content{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 60px;
}

.access-content-img-box{
    max-width: 512px;
    width: 100%;
    height: 300px;
}

.access-content-img{
    object-fit: cover;
    border-radius: 10px;
}

.access-content-txt-box{
    margin-left: 60px;
}

.access-content-txt-logo-box{
    width: 160px;
}

.access-txt:first-of-type{
    margin-top: 16px;
}

/* footer */
.footer{
    background-color: #DBAF89;
    color: #fff;
    padding-top: 60px;
}

.footer-logo-box{
    width: 160px;
    margin: 0 auto;
}

.footer-nav-list{
    display: flex;
    justify-content: center;
    margin-top: 40px;
}

.footer-nav-item + .footer-nav-item{
    margin-left: 40px;
}

.footer .icon-list{
    justify-content: center;
}

.footer .icon{
    margin-top: 40px;
}

.footer-copy{
    font-size: 12px;
    text-align: center;
    margin-top: 60px;
    padding-bottom: 8px;
}
