@charset "utf-8";


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt,ul,li, var, dl, dt, dd, ol, fieldset, form, label, legend, table.table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table.table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

body {
color:rgb(41, 41, 43);
font-size:small;
font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height:1.5;
background-color: #fafafa;
-webkit-text-size-adjust: none;
margin-left: auto;
margin-right: auto;
}


/* リンク設定
------------------------------------------------------------*/
a{color:white;;text-decoration:none;}
a:hover{color:#91a1f8;}
a:active, a:focus {outline:0;}


/* タイトル設定
-----------------------------------------------------------*/
#hdr{
}
#title{
overflow: hidden;
}
.title{
background-color:black;
height: 150px;
}
.inner{
    display: flex;
    text-align: right;
    margin-left: 17%;
}
.nav{
    display: block;
    flex-grow: 2;
    padding: 0 0 0 120px;
    flex-direction: row-reverse;
}

.nav > ul{
    margin-right: 30px;
        display: flex;
}
.nav > ul > li {
    display: block;
}

.nav li{
   display: block; 
 margin-right: 80px;
 font-size:18px;
 color: white;
 padding-top: 70px;
 letter-spacing: 0.05em;
font-family: "Noto Serif JP", serif;
font-weight: 800;
}
.title img{
    margin-top: 50px;
}
.start{
    width: 270px;
    height: 58px;
    margin-left:20%;
    display: block;
}
.menu {
    color: blanchedalmond;
    }

a >.start{
    display: block;
    width: 270px;
    height: 58px;
    margin-left:20%;
}

/* 本文設定
-----------------------------------------------------------*/
@media only screen and (min-width: 960px){
    #main{ 
float: right;
    width: 90%;
    /*667px*/
    padding-right: 15px;
}
}
@media only screen and (max-width: 959px)
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
section .content img{
    max-width: 90%;
    height: auto;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

.heading {
    font-weight: normal;
    padding: 7px 10px;
    line-height: 36px;
    font-size: medium;
    color: #333;
    background: #ebebeb;
}
article{
        padding: 20px;
    margin-bottom: 20px;
    border: 1px solid #ebebeb;
    overflow: hidden;
    background: #fff;
}
.alignleft{
float: left;
    clear: left;
    margin: 3px 10px 10px 0;
}
.border{
    border: 4px solid #ebebeb;
}
.google{
        position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
.google iframe,
.google object,
.google embed {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
table.table th {
    background-color: #F5F5F5;
    text-align: right;
    padding: 8px;
    white-space: nowrap;
    color: #151515;
    border-top: 1px solid #D4D4D4;
    border-right: 4px solid #D4D4D4;
    border-bottom: 1px solid #D4D4D4;
    border-left: 1px solid #D4D4D4;
    font-size: 13px;
    font-weight: normal;
    letter-spacing: 1px;
    background-repeat: repeat-x;
    background-position: top;
}
table.table {
    border-collapse: collapse;
    margin: 5px auto 15px auto;
}

element.style {
}
table.table td {
    border-collapse: collapse;
    background-color: #F9F9F9;
    text-align: left;
    padding: 8px;
    border: 1px solid #D6D6D6;
    line-height: 20px;
}
table {
    width: 100%;
    margin-bottom: 1em;
    border-collapse: collapse;
    border: 1px solid #ddd;
}
#midle{
text-align: center;
padding-top:75px;
}
.midle{
max-width: 1080px;
margin : 0 auto
}
.midle img{
    width: 100%;
    height: auto;
}
.bottan{
text-align: center;
margin: 0 auto;
display: flex;
}
.bottan-block{
    color: white;
    background-color: black;
    width: 60%;
    padding: 20px 5px;
    margin: 0 auto;
    border-radius: 100px;
    font-size: 20px;
    font-family: "Noto Serif JP", serif;   
    font-weight: 800;
}
@media only screen and (min-width: 960px){
.small , .small2{
display: none;
}
}

#contenu{
    text-align: center;
    margin: 5px auto;
}
.contenu,#contenu .contenu a{
    text-align: center;
    font-size: large;
    font-family: "Noto Serif JP", serif; 
    color:black!important
}
.sorry{
    margin: 10px auto;
    width: 30%;
    height: auto;
    display: block;
}
/* フッター
----------------------------------------*/
#footer{
    text-align: center;
    background-color: black;
    margin: 10px auto 0;
    padding: 30px 22% 10px;
}
.footer-text{
    margin: 0 auto ;
    color: white;
font-family: "Noto Serif JP", serif;   
font-size:medium;
    display: flex;
    font-weight: 700;
}
.footer-text li{
display: block;
padding: 0 10px;
width: 33.33333%;
}
.footer-text li:not(:last-child){
    border-right: 1px solid white
}
.last{
    border-top:1px solid #dfdfdf;;
    margin: 0 auto;
    background-color: black;
    padding: 5px;
}
.last-text{
    font-size: small;
    color: white;
    text-align: center;
    font-family: "Noto Serif JP", serif;  
    font-weight: 700; 
}

#logo{
    margin: 30px auto 5px;
    text-align: center;
}
.logo,a > .logo{
    width: 13vw;
    height: auto;
}
#logo,#footer{
    clear: both;
}
/* スマホ設定
----------------------------------------*/
@media only screen and (max-width: 960px){
.start,a>.start{
    text-align: center;
	margin-left: 30%;
    margin-right: 30%;
    width:140px;
    height:30px;
    display: inline;
}
.title img{
    margin-top: 27px;
}
.title{
background-color:black;
height: 70px;
width:100vw;
}
#title{
text-align: center;
}
#midle{
text-align: center;
padding-top:3%;
}
.midle{
max-width: 360px;
margin : 0 auto
}
body .midle img{
width:80vw;
}
.small,
.small2{
max-width: 960px;
margin : 0 auto
}
.small img{
width: 80vw;
margin-top: 30px;
}
.small2 img{
    width: 85vw;
    margin-top: 30px;
}
.midle{
display: none;
}
nav ul ,nav li{
    display: none;
}
.inner{
    display:block;
    text-align: center;
    margin: 0 auto;
}
.footer-text li{
padding: 2px 0px;
}
#footer{
    padding: 0px;
}
.logo,a>.logo{
    width: 25vw;
    height: auto;
}
.bottan-block{
    width: 60%;
    padding: 8px 5px;
}
}


@media only screen and (max-width: 640px){
.alignleft, .alignright {
    float: none;
    display: block;
    margin: 0 auto 10px;
}
body .resize {
    width: 100%;
}

.resize .carousel-cell {
    padding: 0 ;
}
body .cooking{
    max-width: 640px;
    width: 90%;
    padding: 10% 1% 1% 1%;
}
body .shopp {

    background-color: #b02626;
    background-size: 0 auto;
}

.shopp-color{
    margin-top: 30px;
}
body .shopp-color img {
    margin: 0 auto;
    width: 45%;
    height: auto;
}

body .shopp2 {
    padding-bottom: 20px;
    padding-top: 0px;
}

body .shopp2 img {
    margin: 0 auto;
    width: 100%;
    height: auto;
}
}






/*JQUERYwidth: 1080px;
height: 720px;*/
.flickity-syncer{
    width: 70%;
    margin: 0 auto;
}
.carousel-cell{
    padding:0 1% 0 1%;
}
.carousel-cell img{
width: 100%;
height: auto;
}

/*.flickity-viewport{
    height: 538.75px;
}*/

/*2022.05.01*/

.cooking{
    padding: 1%;
    margin: 0 auto;
    width: 70%;
}

.cooking-img img{
    width: 100%;
    height: auto;
    margin: 0 auto;
}


.shopp{

background-color: #b02626;
background-size: 0 auto;
}

.shopp-color img{
margin: 0 auto;
width: 23%;
height: auto;
}

.shopp2{
padding-top: 20px;
padding-bottom: 20px;
}
.shopp2 img{
margin: 0 auto;
width: 40%;
height: auto;
}

.reture{
    text-align: right;
    font-size: 20px;
    font-weight: 800;
    padding: 8px 25px 8px 0;
}
.reture a{
    color: #333
}


/* 店舗案内
----------------------------------------*/
.content-box {
    max-width: 1080px;
    margin: 40px auto;
    padding: 0 20px;
}

.content-box h2 {
    text-align: center;
    font-size: 26px;
    font-family: "Noto Serif JP", serif;
    font-weight: 800;
    margin-bottom: 40px;
    padding-bottom: 15px;
    border-bottom: 3px solid #1a1a1a;
    letter-spacing: 0.1em;
}

.store-section {
    margin-bottom: 50px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.store-section-header {
    background-color: #1a1a1a;
    color: white;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 14px;
}

.store-section-header h3 {
    font-size: 20px;
    font-family: "Noto Serif JP", serif;
    font-weight: 800;
    color: white;
    letter-spacing: 0.05em;
}

.store-section-header span {
    font-size: 13px;
    color: #aaa;
    letter-spacing: 0.05em;
}

.store-item {
    background: #fff;
    padding: 20px;
}

.store-item:not(:last-child) {
    border-bottom: 1px solid #eee;
}

.store-item iframe {
    border-radius: 6px;
    display: block;
}

.store-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 0;
    background: #fff;
}

.store-grid .store-item {
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.store-name {
    font-size: 15px;
    font-weight: 800;
    font-family: "Noto Serif JP", serif;
    margin-bottom: 6px;
    color: #1a1a1a;
    letter-spacing: 0.05em;
}

.store-address {
    font-size: 12px;
    color: #777;
    margin-bottom: 10px;
    line-height: 1.6;
}

@media only screen and (max-width: 960px) {
    .store-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width: 640px) {
    .store-grid {
        grid-template-columns: 1fr;
    }

    .store-section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .content-box h2 {
        font-size: 20px;
    }
}