@media screen and (max-width: 960px) {

    /* 基本的な設定 */

    body{
        font-family: 'Zen Old Mincho', serif;
      }

    html{
        color: #242323;
        background-color: #fff;
        
    }

    h3{
        font-size: 40px;
        line-height: 60px;
        color: #242323;
        margin-bottom: 40px;
    }

    .clear{
        clear: both;
    }

    a{
        color: #242323;
    }

    a:visited{
        color: #242323;
    }

    /* 文字の設定 */
    .fs16{
        font-size: 16px;
        line-height: 30px;
    }
    .fs24{
        font-size: 24px;
        line-height: 34.75px;
    }

    .fs20{
        font-size: 20px;
        line-height: 30px;
    }

    .fw-bold{
        font-weight: bold;
    }

    .ta-center{
        text-align: center;
    }

    .sp-mgt0{
        margin-top: 0;
    }

    .pc{
        display: none;
    }

    .sp{
        display: block;
    }
  

    span.red{
        color: #b50707;
    }

    /* 幅や背景の設定 */
    .contents{
        /* padding-top: 64px; */
        width: 100%;
        overflow-x: hidden;
    }

    section{
        position: relative;
        width: 100%;
        min-height: 300px;
        background-color: #ffffff;
        padding: 100px 24px;
        box-sizing: border-box;
    }

    section#store-detail{
        position: relative;
        width: 100%;
        min-height: 300px;
        background-color: #ffffff;
        padding: 100px 24px;
        box-sizing: border-box;
    }

    .gray{
        background-color: #f3f3f3 ;
    }

    .inner{
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
    }

    .c-width{
        position: relative;
        margin: 0 auto;
    }

    .float-width{
        float: left;
    }

    .w1084{
        width: 100%;
    }

    .w800{
        width: 100%;
    }

    .w700{
        width: 100%;
    }

    .w640{
        width: 100%;
    }

    .w510{
        width: 100%;
        text-align: center;
    }

    .w380{
        width: 100%;
        text-align: center;
    }

    .w300{
        width: 100%;
    }

    .clear{
        overflow: hidden;
    }

    .text-right{
        text-align: right;
    }


    /* ヘッダー */
    header{
        position: fixed;
        z-index: 100;
        top: 0;
        width: 100%;
        height: 64px;
        background-color: rgba(255,255,255,1);
    }
    header a {
        text-decoration: none;
    }
    header h1{
        font-size: 20px;
        line-height: 64px;
        margin: 0;
        padding-left: 16px;

    }
    header.open{
        background-color:inherit;
    }


    header.second{
        background-color:#160909 !important;
    }
    header.second h1{
        color: white;
        font-size: 20px;
        line-height: 64px;
        margin: 0;
        padding-left: 16px;

    }

    header .toggle-button{
        position: absolute;
        display: block;
        width: 40px;
        height: 25px;
        top: 20px;
        right: 30px;
        cursor: pointer;
    }

    header .toggle-button span{
        display: block;
        position: absolute;
        width: 40px;
        height: 3px;
        background-color: #242323;
    }

    header.second .toggle-button span{
        background-color: #fff;
    }
    header .toggle-button.open span{
        background-color: #fff;
    }

    header .toggle-button span.bar-1{
        top: 0;
    }

    header .toggle-button span.bar-2{
        top: 11px;
    }

    header .toggle-button span.bar-3{
        top: 22px;
    }

    header .toggle-button.open span.bar-1{
        top: 12px;
        transform: rotate(45deg);
    }

    header .toggle-button.open span.bar-2{
        top: 11px;
        display: none;
    }

    header .toggle-button.open span.bar-3{
        top: 12px;
        transform: rotate(-45deg);
    }



    header ul.header-menu{
        display: none;
        /* position: absolute;
        top: 20px;
        right: 185px;
        padding: 0;
        margin: 0;
        list-style: none; */
    }

    header ul.header-menu li{
        display: inline-block;
        font-size: 16px;
        line-height: 24px;
        text-decoration: underline;
        margin-left: 20px;
    }

    header.second ul.header-menu li{
        color: white;
    }
    header.second ul.header-menu li a{
        color: white;
    }

    header .header-logo{
        text-align: center;
        padding-top: 21px;   
        display: block;
     }

    header .header-logo.open{
        display: none;
    }

    header .header-logo img{
        height: 20px;
        width: auto;
    }

    .header_fix{
        display: block;
    }
    

    .header_fix.js_hide{
        display: none;
    }

    


    /* メニュー */
    .wrapper-menu{
        position: relative;
        width: 100%;
        margin: 0 auto;
        overflow: hidden;
        display: block;
        align-items: flex-end;
    }

    .wrapper-menu .picture{
        float: none;
        width: 100%;
        height: auto;
    }

    .wrapper-menu:nth-of-type(2n) .picture{
        float: none;
        width: 100%;
        height: auto;
    }

    .wrapper-menu .picture img{
        width: 100%;
        height: auto;
    }

    .wrapper-menu .text{
        float: none;
        width: 100%;
        height: auto;
        padding: 0 16px;
        box-sizing: border-box;
    }

    .wrapper-menu:nth-of-type(2n) .text{
        float: none;
        width: 100%;
        height: auto;
    }

    .wrapper-menu .text p{
        font-size: 16px;
        line-height: 30.2px;
        margin: 0;
    }

    p.type-tag{
        margin-bottom: 8px;
    }

    .wrapper-menu .text h4{
        font-size: 32px;
        line-height: 48px;
        font-weight: normal;
        margin: 0;
        text-align: center;
        margin-bottom: 24px;
    }

    .wrapper-menu .text a{
        display: inline-block;
        font-size: 24px;
        line-height: 36px;
        text-decoration: underline;
        font-weight: 100;
        color: #b50007;
        margin-top: 24px;
        text-align: center;
    }


    .sub-picture{
        width: 100%;
        overflow: scroll;
        margin: 0 auto;
        margin-top: 40px;
        
    }

    .sub-picture ul{
        margin: 0;
        padding: 0;
        overflow: scroll;
        width: 1200px;
        list-style: none;
        white-space: nowrap;
    }

    .sub-picture ul li{
        float: left;
        width: 280px;
        height: 400px;
        margin-right: 10px;
        background-color: darkgrey;
        overflow: hidden;
    }

    .sub-picture:nth-of-type(2n+1) ul li{
        float: left;
        width: 280px;
        height: 400px;
        margin-right: 10px;
        background-color: darkgrey;
    }

    .sub-picture ul li img{
        height: 400px;
        width: auto;
        object-position: 50% 50%;/* デフォルト値。center centerと同じ */
        object-fit: cover;
    }

    .menu-devider{
        width: 500px;
        height: 1px;
        background-color: #242323;
        margin: 80px auto;
    }

    /* オンラインショップ */
    ul.ec-cards{
        padding: 0;
        margin: 0;
        list-style: none;
        overflow: hidden;
    }
    ul.ec-cards li{
        float: none;
        width: 100%;
        margin-bottom: 40px;
    }

    ul.ec-cards li:nth-of-type(3n-1){
        margin: 0 0px 40px 0;
    }

    ul.ec-cards li a{
        text-decoration: none;
    }

    ul.ec-cards li img{
        width: 100%;
        margin-bottom: 20px;
    }

    ul.ec-cards li .tag{
        display: inline-block;
        font-size: 12px;
        line-height: 18px;
        color: white;
        text-align: center;
        padding: 2px 4px;
        border-radius: 2px;
        background-color: #242323;
        text-decoration: none;
        vertical-align: middle;
        margin:0 ;

    }

    ul.ec-cards li .product-name{
        font-size: 24px;
        line-height: 36px;
        color: #242323;
        display: inline-block;
        margin: 0;
        vertical-align: middle;
    }

    ul.ec-cards li .price{
        font-size: 16px;
        line-height: 24px;
        color: #242323;
        margin: 0;
    }

    /* お知らせ */
    .wrapper-infomation{
        width: 100%;
        overflow: hidden;
        margin-bottom: 80px;
    }

    .wrapper-infomation.list{
        width: 100%;
        overflow: hidden;
        margin-bottom: 0px;
        padding-top: 80px;
    }

    .wrapper-infomation a{
        color: #242323;
    }

    .wrapper-infomation .picture{
        width: 40%;
        height: auto;
        float: right;
        border: solid 1px #f3f3f3;
        box-sizing: border-box;
    }

    .wrapper-infomation.list .picture{
        width: 100%;
        height: auto;
        float: none;
        border: solid 1px #f3f3f3;
        box-sizing: border-box;
    }

    .wrapper-infomation .picture img{
        width: 100%;
        float: none;
    }

    .wrapper-infomation .text{
        float: right;
        width: 60%;
        padding-left:  15px;
        padding-top: 0px;
        box-sizing: border-box;
    }


    .wrapper-infomation.list .text{
        float: none;
        width: 100%;
        padding-left:  15px;
        padding-top: 0px;
        box-sizing: border-box;
    }

    .wrapper-infomation .text p.date{
        font-size: 12px;
        line-height: 18px;
        color: #787878;
        margin: 0;
    }

    .wrapper-infomation .text p.title{
        font-size: 16px;
        line-height: 30.2px;
        font-weight: normal;
        margin: 0 0 8px 0;
    }

    .wrapper-infomation.list .text p.title{
        font-size: 24px;
        line-height: 34.75px;
        font-weight: normal;
        margin: 0 0 8px 0;
    }



    .wrapper-infomation .text p.contents{
        font-size: 12px;
        line-height: 17.38px;
        margin: 0;
        padding-top: 0;
        margin-bottom: 24px;
    }

    .wrapper-infomation.list .text p.contents{
        font-size: 16px;
        line-height: 30.2px;
        margin: 0;
        padding-top: 0;
        margin-bottom: 24px;
    }

    #information a.ta-center{
            text-decoration: underline;
            text-align: center;
            display: block;
            color: #B50007;
            font-size: 16px;
            line-height: 24px;
            margin-bottom: 50px;
    }

    #information .sns{
        width: 230px;
        margin: 0 auto;
        margin-bottom: 30px;
    }

    #information .sns:nth-of-type(2n){
        margin-left: auto;
    }

    /* 店舗情報 */

    #about img{
        width: 100%;
        margin-bottom: 50px;
    }

    #about img.gaikan{
        width: calc(100% + 64px);
        margin-left: -32px;
        margin-bottom: 20px;
    }

    #about p{
        font-size: 16px;
        line-height: 30.2px;
        margin-bottom: 16px;
        margin-top: 0;
        text-align: left;
    }

    #about .mgt80{
        margin-top: 80px;
    }


    /* お問い合わせ */
    table{
        width: 100%;
        margin-bottom: 30px;
    }
    table , td, th {
        border: none;
        border-collapse: collapse;
    }

    tbody{
        border-left: solid 1px;
    }
    td.icon{
        display: none;

    }
    td.question{
        font-size: 16px;
        line-height: 24px;
        vertical-align: top;
        padding-left: 12px;
        box-sizing: border-box;
    }
    td.question-a{
        font-size: 16px;
        line-height: 24px;
        vertical-align: top;
        padding-left: 12px;
        padding-bottom: 12px;
        box-sizing: border-box;
    }
    td.answer{
        font-size: 16px;
        line-height: 30.2px;
        vertical-align: top;
        font-weight: normal;
        padding-left: 12px;
        box-sizing: border-box;
    }
    td.answer-a{
        font-size: 16px;
        line-height: 30.2px;
        vertical-align: top;
        font-weight: normal;
        padding-left: 12px;
        box-sizing: border-box;
    }

    td.answer.title{
        font-size: 16px;
        line-height: 24px;
    }
    /* td, th {
        padding: 3px;
        width: 30px;
        height: 25px;
    } */
    th {
        background: #f0e6cc;
    }
    .even {
        background: #fbf8f0;
    }
    .odd {
        background: #fefcf9;
    }


    /* 子ページ */
    .pagetitle{
        text-align: center;
        height: 180px;
        padding-top: 64px;
        background-color: #fff;
    }

    .pagetitle.oseki{
        text-align: center;
        height: 120px;
        padding-top: 64px;
        background-color: #fff;
    }
    .pagetitle h2{
        font-size: 24px;
        line-height: 36px;
        font-weight: normal;
        margin-top: 40px;
        margin-bottom: 10px;
    }
    .pagetitle h3{
        font-size: 40px;
        line-height: 60px;
        font-weight: bold;
        margin: 0;
    }

    .storetitle{
        text-align: center;
        height: 220px;
        padding-top: 80px;
        margin-top: 64px;
        background-color: #2b2020;
        box-sizing: border-box;
    }

    .storetitle h3{
        font-size: 40px;
        line-height: 60px;
        font-weight: bold;
        margin: 0;
        color: white;
    }

    .store-info{
        min-height: auto;
        padding: 10px 24px;
        width: 100%;
        overflow-x: scroll;
        box-sizing: border-box;
    }

    .store-info .store-info-wrapper{
        /* width: 100%;
        max-width: 1200px; */
        margin: 0 auto;
        overflow-x: scroll;
    }

    .store-info ul{
        margin: 0px 0px;
        list-style: none;
        white-space: nowrap;
        padding: 0;
    }

    .store-info ul li{
        /* height: 200px; */
        display: inline-block;
        margin-right: 10px;
    }

    .store-info ul li.introduction{
        margin-right: 140px;
    }


    .store-info ul li img{
        width: auto;
        height: 200px;
    }

    .store-info .text a{
        color: #B50007;
        margin-top: 40px;
        display: block;
    }

    .introduction.sp .wrap{
        text-align: center;
        margin-top: 30px;
    }

    .introduction.sp .wrap .text .category{
        margin: 0;

    }
    .introduction.sp .wrap .text .store-name{
        margin: 0;
        margin-bottom: 24px;
    }

    .scroll-area{
        width: 100%;
        display: block;
        overflow: scroll;
        padding-left: 6px;
        box-sizing: border-box;
    }

    .scroll-area ul li img{
        width: 240px;
        height: auto;
    }

    li.introduction .wrap{
        overflow: hidden;
        margin-bottom: 24px;
    }

    li.introduction .wrap .picture{
        height: 160px;
        width: auto;
        float: left;
    }

    li.introduction .wrap .text{
        height: 160px;
        float: left;
        margin-left: 16px;
    }

    li.introduction .wrap .text p.category{
        font-size: 24px;
        line-height: 36px;
        font-weight: normal;
        margin-bottom: 10px;
    }

    li.introduction .wrap .text h3.store-name{
        font-size: 40px;
        line-height: 60px;
        font-weight: bold;
        margin: 0;
    }



    .store-menu{
        position: relative;
        width: 100%;
        margin: 0 auto;
        overflow: hidden;
        margin-bottom: 120px;
    }

    .store-menu .picture{
        float: left;
        width: 100%;
        height: auto;
    }

    .store-menu .picture img{
        width: 100%;
        height: auto;
    }

    .store-menu .text{
        float: left;
        width: 100%;
        margin-left: 0px;
    }


    .store-menu .text p{
        text-align: left;
        font-size: 12px;
        line-height: 17.8px;
        margin: 0;
        padding-bottom: 12px;
    }


    p.type-tag{
        margin-bottom: 8px !important;
        text-align: center !important;
    }

    .store-menu .text h4{
        font-size: 32px;
        line-height: 48px;
        font-weight: normal;
        margin: 0;
        margin-bottom: 24px;
        text-align: center;
    }

    .store-menu .text a{
        display: inline-block;
        font-size: 24px;
        line-height: 36px;
        text-decoration: underline;
        font-weight: 100;
        color: #242323;
        margin-top: 24px;
    }

    #store-detail .sub-picture{
        width: 100%;
        overflow: scroll;
        margin: 0 auto;
        margin-top: 20px;
        
    }

    #store-detail .sub-picture ul{
        margin: 0;
        padding: 0;
        overflow: scroll;
        width: 1520px;
        list-style: none;
        margin-bottom: 16px;
    }

    #store-detail .sub-picture ul li{
        float: left;
        width: 294px;
        height: 240px;
        margin-right: 10px;
        background-color: darkgrey;
        overflow: hidden;
        position: relative
    }

    #store-detail .sub-picture ul li img{
        object-fit: fill;
        object-position: 50% 50%;/* デフォルト値。center centerと同じ */
        height: 240px;
        width: auto;
    }

    .menu-devider{
        width: 100%;
        height: 1px;
        background-color: #242323;
        margin: 80px auto;
    }

    .menu-contents{
        width: 100%;
        background-color: #f3f3f3;
        padding: 12px 12px 0px 12px;
        box-sizing: border-box;
    }

    .menu-contents .menu-box{
        display: block;
        position: relative;
    }

    .menu-contents .menu-box .price{
        position: absolute;
        top: 0;
        right: 0;
        font-size: 16px;
        line-height: 30px;
    }

    .menu-contents h4{
        font-size: 16px !important;
        line-height: 30px !important;
        margin-bottom: 0px !important;
        font-weight: bold !important;
        text-align: left !important;
    }

    .menu-contents p{
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 16px;
    }
    

    /* フッター */

    footer{
        width: 100%;
        height: auto;
        background-color: #2b2020;
        padding: 24px 40px 115px 24px;
        box-sizing: border-box;
        position: relative;
    }

    footer ul{
        padding: 0;
        margin: 0;
        list-style: none;
        display:block;
        text-align: center;
        justify-content: center;
        margin-bottom: 20px;
    }

    footer ul li{
        font-size: 12px;
        line-height: 18px;
        margin: 0 20px;
        margin-bottom: 16px;
    }

    footer ul li a{
        color: white !important;
        text-decoration: none;
    }

    footer ul.footer-sns{
     overflow: hidden;   
     width: 65%;
     margin: 0 auto;
    }

    footer ul.footer-sns li{
        float: left;
        width: 50%;
        margin: 0; 
        line-height: 20px;
        display: block;

       }

       footer ul.footer-sns li a{
        display: block;
       }

    footer ul.footer-sns li a span{
        display: inline-block;
        line-height: 20px;
        vertical-align: middle;
        padding-left: 5px;
    }

    footer ul.footer-sns li a img{
        width: 20px;
        height: auto;
        display: inline-block;
        vertical-align: middle;
    }

    footer .copy{
        font-size: 12px;
        line-height: 18px;
        color: white;
        text-align: center;
    }

        /* 仮の設定 */
        .img-logo{
            width: 120px;
            height: 120px;
            display: inline-block;
            background-color: dimgrey;
        }

        .img-logo img{
            width: 120px;
            height: 120px;
        }

        .s-60{
            width: 24px;
            height: 120px;
            display: inline-block;
        }

        #KV{
            position: fixed;
            top: 0;
            left: 0;
            padding: 0;
            width: 100%;
            height: 85vh;
            overflow: hidden;
            line-height: 0;
            display: flex; /* 要素をflexboxに対応させる */
            align-items: center; /* 縦方向の中央揃え */
            justify-content: center; /* 横方向の中央揃え */  
                 
        }

        #KV img{
            width: 100%;
            height: 85vh;
            object-fit: cover;
            object-position: 50% 50%;
            margin: 0;
        }

        #KV .logo{
            width: 140px;
            height: 280px;
            position: absolute;
            top: 25%;
            right: 40px;
        }

        #KV .logo img{
            width: 100%;
            height: auto;
            min-height: auto;
            margin-left: 0;
        }

        #greeting{
            margin-top: 85vh;
        }
    
        .menu-back{
            display: none;
            width: 100%;
            height: 100vh;
            position: fixed;
            top: 0;
            left: 0;
            z-index: 90;
            background-color: #160909;
        }

        .menu-back.open{
            display: block;
        }

        .menu{
            display: none;
            position: fixed;
            top: 0;
            right: 0;
            width: 100%;
            height: 100vh;
            background-color: #160909;
            z-index: 95;
        }
        .menu.open{
            display: block;
        }

        .menu ul{
            padding: 0;
            margin: 0;
            list-style: none;
        }

        .menu ul li{
            text-align: center;
            color: #fff;
        }

        .menu ul li a{
            color: white;
            text-decoration: none;
        }

        .menu ul.main-menu li{
            font-size: 20px;
            line-height: 30px;
            font-weight: bold;
            margin-bottom: 16px;
        }

        .menu ul.sub-menu li{
            font-size: 20px;
            line-height: 30px;
            font-weight: normal;
            margin-bottom: 16px;
        }

        .menu ul.sub-menu hr{
            width: 90px;
            text-align: center;
            color: white;
            margin-bottom: 24px;
        }

        .menu ul.sns-menu{
            display: flex;
            justify-content: center;
        }
        .menu ul.sns-menu li{
            font-size: 12px;
            line-height: 18px;
            font-weight: normal;
            margin: 0 20px;
        }

        .menu ul.sns-menu li a{
            vertical-align: middle;
        }

        .menu ul.sns-menu li a img{
            width: 16px;
            margin-right: 3px;
            margin-top: 3px;
        }

        .menu ul.sns-menu li a span{
            display: table-caption;
            margin-top: -3px;
        }
        

        .menu-wrap{
            width: 100%;
            height: 560px;
            position: absolute;
            top: 0px;
            right: 0;
            bottom: 0;
            left: 0;
            margin: auto auto;
        }

        .divider{
            width: 300px;
            display: block;
            margin: 40px auto;
        }

        .center{
            text-align: center;
        }

        .kaigyo{
            white-space: normal;
            text-align: justify;
        }

        .nomimono{
            font-size: 24px;
            line-height: 36px;
            font-weight: normal;
            padding-bottom: 40px !important;
        }

        .pd20{
            padding: 0 20px;
            box-sizing: border-box;
        }

        .fixed-menu{
            position: fixed;
            bottom: 40px;
            width: 290px;
            height: 60px;
            background-color: #393939;
            border-radius: 8px 0 0 8px;
            text-align: center;
            color: white;
            -webkit-filter:drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.2));
            -moz-filter:drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.2));
            -ms-filter:drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.2));
            filter:drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.2));
            z-index: 80;
            display: block;
        }

        .fixed-menu-sp.close{
            right: -200px;
            transition: .3s;
        }

        .fixed-menu-sp.open{
            right: 0px;
            transition: .3s;
        }


        .fixed-menu.js_hide{
            display: none;
        }
        .fixed-menu ul{
            list-style: none;
            padding: 0;
            margin: 0;
            overflow: hidden;
        }

        .fixed-menu li.menu-btn{
            width: 90px;
            height: 60px;
            font-size: 12px;
            line-height: 17.48px;
            text-align: center;
            float: left;
            padding-top: 11px;
        }

        .fixed-menu li.menu-yoyaku{
            width: 100px;
            height: 60px;
            font-size: 16px;
            line-height: 17.48px;
            text-align: center;
            float: left;
            text-decoration: underline;
            padding-top: 18px;
        }

    
        .fixed-menu p{
            font-size: 12px;
            margin-top: 8px;
            margin-bottom: 4px;
        }


        .fixed-menu li a{
            color: white;
            text-decoration: underline;
        }

        .soryo{
            font-size: 16px;
            line-height: 24px;
            text-align: left;
        }

        .goods-summary{
            width: 100%;
            overflow: hidden;
        }

        .goods-summary .picture{
            float: none;
            width: 100%;
            padding-right: 0px;
            box-sizing: border-box;
        }

        .goods-summary .picture .main img{
            width: 100%;
        }


        .goods-summary .picture .sub{
            width: 100%;
            overflow: scroll;
            margin-bottom: 40px;
        }

        .goods-summary .picture .sub ul {
            list-style: none;
            width: 480px;
            padding: 0;
        }

        .goods-summary .picture .sub ul li{
            width: 110px;
            height: 110px;
            background-color: #f8f8f8;
            float: left;
            margin-right: 10px;
        }

        .goods-summary .text{
            float: none;
            width: 100%;
        }

        .goods-summary .text .title{
            font-weight: 300;
            font-size: 32px;
            line-height: 48px;
            margin-top: 0;
            margin-bottom: 8px;
        }

        .goods-summary .text .explanation{
            font-size: 16px;
            line-height: 24px;
            color: #242323;
            margin-bottom: 30px;
        }

        .goods-summary .text .price{
            font-size: 24px;
            line-height: 36px;
            margin-bottom: 30px;

        }

        .goods-summary .text .button{
            width: 100%;
            height: 70px;
            border-radius: 40px;
            background-color: #242323;
            color: #ffffff;
            font-size: 20px;
            line-height: 70px;
            text-align: center;
        }

        .goods-summary .text .button a{
            color: white;
            display: block;
            text-decoration: none;
        }


        .goods-detail{
            margin-top: 80px;
            margin-bottom: 80px;
            font-size: 12px;
            line-height: 18px;
        }

        .info-hassou{
            width: 100%;
            overflow: hidden;
        }

        .info-hassou .left{
            float: none;
            width: 100%;
            font-size: 20px;
            line-height: 30px;
        }

        .info-hassou .right{
            float: none;
            width: 100%;
            text-align: center;
        }

        .info-hassou .right img{
            width: 300px;
        }

        #recommend{
            padding: 40px 24px 30px 24px;
            box-sizing: border-box;
        }

        #recommend h3{
            font-weight: normal;
            text-align: center;
        }

        .sp-menu-info{
            width: 100%;
            max-width: 328px;
            height: 128px;
            background: rgba(0, 0, 0, 0.4);
            margin:  0 auto 30px auto;
            padding: 12px 0 0 0;
            box-sizing: border-box;
        }

        .sp-menu-info ul{
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .sp-menu-info ul li{
            font-size: 16px;
            line-height: 24px;
            text-decoration: underline;
            margin-bottom: 16px;
        }


        #about iframe {
            width: calc(100% + 64px);
            aspect-ratio: 1/1;
            margin-left: -32px;
            margin-bottom: 30px;
          }
          
          .fb_iframe_widget,
          .fb_iframe_widget span,
          .fb_iframe_widget iframe[style]{
              width: 100% !important;
          }

          ._2p3a{
            width: 100% !important;
          }

    .ta-left-sp{
        text-align: left !important;
    }

    .footer-logo{
        height: 160px;
        width: auto;
        display: block;
        margin: 0 auto;
        margin-top: 200px;
        margin-bottom: 80px;
    }

    .saikochiku{
        font-size: 16px;
        line-height: 45px;
        width: 120px;
        text-align: center;
        height: 47px;
        border: solid 1px #D9D9D9;
        margin: 0 0 0 auto;
    }

    .tomenu{
        font-size: 16px !important;
        width: 128px;
        height: 36px;
        display: block !important;
        margin: 0 auto;
    }

    a.comming{
        opacity: 0.5;
    }
    .menu-link {
        width: 100%;
    }
    .menu-link a{
        width: 40%;
        display: inline-block;
        color: #b50007;
        text-decoration: underline;
    }
    
    .tokishirazu-kv{
        width: 100%;
        height: 65vh;
        background-color: #white;
        padding: 0;
        position: relative;
        overflow: hidden;

    }
    .toki-kv{
        display: block;
        position: relative;
        width: 100%;
        height: auto;

    }
    .tokishirazu-kv .text{
        text-align: center;
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        color: black !important;
        height: 140px;
        width: 400px;
    }
    .tokishirazu-kv .text .category{
        font-size: 20px;
        line-height: 20px;
        margin: 0;
    }
    .tokishirazu-kv .text h3{
        font-size: 40px;
        line-height: 60px;
        margin: 0;
        color: black !important;
    }
    .menu-logo-tokishirazu{
        width: 80px;
        position: absolute;
        right: 40px;
        top: 50px;
    }

    .menu-logo-muhyo{
        width: 80px;
        position: absolute;
        right: 40px;
        top: 50px;
    }

    .pc{
        display: none !important;
    }

    .fs16{
        font-size: 16px;
        line-height: 30px;
    }
    p.category{
        font-size: 16px;
        color: #242323 !important; 
        margin-bottom: 10px;
        margin-top: 40px;
    }
    h3.store-name{
        font-size: 24px !important;
        line-height: 35px;
        margin: 0;
    }


    section.oseki{
        width: 100%;
        background-color: #F8F8F8;
        min-height: 100vh;
        height: auto;
        padding: 80px 0 24px 0;
    }

    section.oseki.muhyo{
        padding-top: 0;
        padding-bottom: 0;
    }

    .oseki-text{
        text-align: left;
        margin: 0 auto 40px auto;
        padding: 16px;
        box-sizing: border-box;
    }

    .oseki-text h2{
        text-align: center;
        font-size: 40px;
        margin-top: 0;
    }

    .oseki-text p{
        font-size: 16px;
        line-height: 30.2px;
        font-weight: 400;
        text-align: left;
    }

    .oseki-text a{
        font-size: 16px;
        line-height: 30.2px;
        color: #B50007;
        text-decoration: underline;
        text-align: left;
    }

    .oseki-card{
        width: 100%;
        padding: 0px;
        box-sizing: border-box;
        background-color: #fff;
        margin: 0 auto 40px auto;
        padding-bottom: 24px;
    }
    .oseki-card.last{
        margin-bottom: 0;
        padding-bottom: 40px;

    }
    

    .oseki-card img{
        display: block;
        width: calc(100% - 48px);
        margin: 0 auto;
    }
    .oseki-card h3{
        font-size: 36px;
        font-weight: 400;
        margin: 0 0 16px 0;
    }

    .oseki-card p{
        font-size: 16px;
        line-height: 30.2px;
        font-weight: 400;
    }

    .oseki-card .quote{
        background-color: #F3F3F3;
        width: 100%;
        padding: 16px 16px 8px 16px;
        box-sizing: border-box;
        margin-bottom: 16px;
    }
    .oseki-card .quote p{
        margin-bottom: 8px;
        margin-top: 0;
        font-size: 12px;
        line-height: 17.38px;
    }
    .oseki-spacer{
        height: 24px;
        width: 100%;
        background-color: #fff;
    }
    .oseki-img-spacer{
        height: 16px;
        width: 100%;
    }

    .oseki-card-text{
        width: 100%;
        padding: 24px 24px 0 24px;
        box-sizing: border-box;
    }

    .mgb16{
        margin-bottom: 16px !important;
    }
          
    .answer-a p{
        margin-top: 0;
    }

    #sb_instagram{
        width: 310px;
        margin: 100px auto 0 auto;
        box-sizing: border-box;
    }
    
    .svg-inline--fa{
        display: none;
    }
    .svg-inline--fa{
        display: none;
    }
    
    .sb_instagram_header{
        display: none;
    }
    
    .sbi-screenreader{
        display: none;
    }
    
    .sbi_item{
        box-sizing: border-box;
        width: 102px;
        height: 102px;
        border: solid 1px white !important;
        display:inline-block;
        justify-content: center;
        align-items: center;
    }
    
    .sbi_item:nth-of-type(3n-1){
        margin: 0 2px;
    }
    
    .sbi_photo_wrap{
        width: 102px;
    }
    
    .sbi_photo{
        width: 102px;
        display: flex;
      justify-content: center; /* 水平方向にセンターに配置 */
      align-items: center;
    }
    
    .sbi_photo img{
        width: 102px;
        height: 102px;
        object-fit: cover;
    }
    
    
    .sbi_load_btn{
        display: inline-block;
        vertical-align: top;
        zoom: 1;
        padding: 7px 14px;
        margin: 5px auto 0 auto;
        background: #333;
        border: none;
        color: #fff;
        text-decoration: none;
        font-size: 13px;
        line-height: 1.5;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    
    .sbi_follow_btn {
        display: inline-block;
        vertical-align: top;
        zoom: 1;
        padding: 7px 14px;
        margin: 5px auto 0 auto;
        background: rgb(64,139,209);
        border: none;
        color: #fff;
        text-decoration: none;
        font-size: 13px;
        line-height: 1.5;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    
    .sbi_follow_btn a{
        color: white !important;
        border: none;
    }
    
    #sbi_load{
        display: none;
    }
    
    .insta_link{
        margin-top: 14px;
        text-align: center;
    }
    .insta_link a{
        color: #242323;
    }
    
    .insta_after{
        text-decoration: none !important;
        border: none;
        display: block;
    }
    
    .insta_after::before{
        content: '';
        background-image: url(../images/Instagram_Black.png);
        display: block;
        width: 20px;
        height: 20px;
        background-size: contain;
        background-repeat: no-repeat;
        vertical-align: middle;
        margin: 0 auto;
    } 

    .insta_after::after{
        content: '';
        background-image: none;
        display: inline-block;
        width: 0px;
        height: 0px;
        background-size: contain;
        background-repeat: no-repeat;
        vertical-align: middle;
        margin: 0 5px;
    } 


    .contents.notfound{
        height: calc(100vh - 204px);
        margin-top: 64px;
        padding-top: 20vh;
        box-sizing: border-box;
    }

    .contents.notfound h2{
        font-size: 60px;
        line-height: 86.88px;
        text-align: center;
        margin-bottom: 20px;
        font-family: 'Zen Old Mincho', serif;
        color: #787878;
    }

    .contents.notfound p{
        font-size: 16px;
        line-height: 30.2px;
        text-align: center;
        color: #787878;
        font-family: 'Zen Old Mincho', serif;
    }

    table.tokusho{
        width: 100%;
        margin-bottom: 40px;
        border-collapse: collapse;
        display: block
    }
    table.tokusho td, th {
        width: 100%;
        border: none;
        border-collapse: collapse;
        padding: 20px 0;
        display: block
    }
    table.tokusho td{
        padding: 5px 0;
    }
    table.tokusho td:nth-of-type(2n-1){
        font-weight: bold;
    }

    table.tokusho td:nth-of-type(2){
        padding: 5px 0 30px 0;
    }

    table.tokusho tbody{
        border-left: none;
        table-layout: fixed;
        display: block
    }

    section#privacy{
        line-height: 2rem;
    }


            /* ローディング画面 */
#loading {
    width: 100vw;
    height: 100vh;
    animation: sk-scaleout 3s infinite;
    animation-delay: 1s;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
  }
  .loaded {
    opacity: 0;
    visibility: hidden;
    transition: 1s;
  }
  .spinner {
    opacity: 1;
    transition: 1s;
    position: absolute;
    width: 100px;
    height: 100px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto auto;
  }
  .spinner img{
    width: 100%;
    height: auto;
  }
  /* ローディングアニメーション */
  @keyframes sk-scaleout {
    0% {
        background-color: rgba(255,255,255,1);
    }50% {
        background-color: rgba(255,255,255,0.95); 
    }
    100% {
        background-color: rgba(255,255,255,1); 
    }
}