@charset "UTF-8";

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

    .header_shopinfo {
        right: -2%;
    }


    main,
    .footer_top {
        margin: 0 2%;
        /* margin: 0 2.5%; */
    }


}


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

    .cmn_body .header_top {
        position: relative;
        top: auto;
        right: auto;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    .home_sns {
        padding-left: 3%;
        padding-right: 3%;
    }



    .shop_topmsg_txtbox {
        padding-left: calc(30px + (120 - 30)*(100vw - 1000px)/(1240 - 1000));
        padding-right: calc(30px + (120 - 30)*(100vw - 1000px)/(1240 - 1000));
    }


}





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

    /* common /////////////////////////////////////////////////////////////////////////////////////////// */

    .spNone {
        display: none;
    }

    .pcNone {
        display: block;
    }

    .cmn_maxbox {
        padding-left: 1%;
        padding-right: 1%;
    }

    /* aタグ(電話番号) */
    a[href^="tel"] {
        pointer-events: all;
    }


    /* main.cssの透過効果打ち消し */
    a:hover
    {
        /* opacity: 1.0; */
        filter: none; /* 初期値：none */
        -ms-filter: ""; /* 初期値："" */
        -webkit-transition: none;
        -moz-transition: none;
        -o-transition: none;
        transition: none;
    }


    p,
    li,
    dt,
    dd,
    a {
        /* font-size: 1.4rem; */
    }

    body {
        line-height: 1.5;
    }


    /* SUB メインタイトル */
    .cmn_maintitle {
        height: 200px;
        background-position: left 28% center;
    }

    .cmn_maintitle h1 {
        max-width: 230px;
        /* background-size: 100%; */
        background-size: 90%;
        font-size: 2.4rem;
        letter-spacing: 0.15rem;
        line-height: 1.4;
    }

    .cmn_maintitle + * {
        margin-top: 40px;
    }

    /* 共通BOX（四辺波模様あり） */
    .cmn_box {
        padding-top: 50px;
    }

    .cmn_box + .cmn_box {
        margin: 60px 0 0 0;
    }

    .cmn_box::before {
        background-size:
            auto 7px,
            7px auto,
            auto 7px,
            7px auto;
    }

    .cmn_box_inner {
        padding-left: 4%;
        padding-right: 4%;
    }


    /* 見出し（筆跡：中央） */
    /* .xxxx_body h2, */
    .menu_takeout h2,
    /* .home_body h2, */
    .link_body h2,
    .members_body h2,
    /* .menu_body h2, */
    .merumaga_body h2,
    .news_single_body h2,
    .shop_body h2,
    .staff_body h2 {
        font-size: 2.2rem;
        background-size: contain;
    }



    /* CMSエディタ装飾 */
    [id="menu_course"] h4,
    [id="menu_same"] h4,
    [id="menu_drink"] h4,
    .merumaga_hotwo > h3,
    .cmn_cms_editor h3 {
        padding: 3px 36px;
        font-size: 1.9rem;
        background-position:
            left 18px top 14px,
            left top;
    }

    .cmn_cms_editor h4 {
        font-size: 1.7rem;
    }

    .cmn_cms_editor h5 {
        font-size: 1.6rem;
    }

    .cmn_cms_editor h6 {
        font-size: 1.5rem;
    }

    .cmn_cms_editor p {
        padding: 5px 0 7px;
        margin: 0 0 6px 0;
        line-height: 1.4;
    }

    .cmn_cms_editor img {
        margin-right: 6px;
        margin-top: 6px;
        margin-bottom: 6px;
    }

    .cmn_cms_editor iframe[src*="youtube"] {
        margin-top: 6px;
        margin-bottom: 6px;
    }

    .cmn_cms_editor table {
        margin: 0 0 6px 0;
    }

    .cmn_cms_editor th,
    .cmn_cms_editor td {
        margin: 0 0 6px 0px;
        padding: 6px 10px;
    }

    .cmn_cms_editor ul {
        margin: 0 0 6px 0;
    }

    .cmn_cms_editor ol {
        margin: 0 0 6px 0;
    }

    /* エディタで設定された文字サイズ（style属性）を親要素と同じ値に上書き */
    /*.cmn_cms_editor span[style*="font-size"] {
        font-size: 100% !important;
    }*/






    /* header */
    .home_body .header_top h1 {
        flex-shrink: 1;
        margin: 0 auto 0 2%;
        font-size: 1.2rem;
        line-height: 1.65;
        letter-spacing: 0.05rem;
    }

    .home_body .header_top h1 br {
        display: inline;
    }

    .cmn_body .header_top > div {
        position: relative;
        flex-shrink: 0;
        align-self: flex-start;
        display: block;
        width: 15%;
        /* min-width: 110px; */
        min-width: 100px;
        max-width: 250px;
        margin: 0 auto 0 0;
    }

    .cmn_body .header_top > div a {
        position: absolute;
        left: 0;
        top: 0;
        transform: translate(-15%, -5%);
        display: block;
    }

    /* .cmn_body .header_top > div {
        position: relative;
        flex-shrink: 0;
        align-self: flex-start;
        display: block;
        width: 15%;
        min-width: 100px;
        max-width: 250px;
        margin: 0 auto 0 2%;
    }

    .cmn_body .header_top > div a {
        position: absolute;
        left: 0;
        top: 8px;
        display: block;
    } */

    .cmn_body .header_top > div img {
        max-width: none;
        width: 100%;
    }

    .header_top > a {
        width: 50px;
        height: 50px;
        padding: 6px 0;
        font-size: 1.2rem;
    }

    .header_top > a img {
        width: 15px;
    }

    .home_body .header_top > a,
    .cmn_body .header_top > a {
        margin: 0 0 0 1%;
    }

    .header_modalmenu_open {
        width: 50px;
        height: 50px;
    }

    .header_modalmenu_open .box {
        position: relative;
        display: inline-block;
        width: 30px;
        height: 18px;
    }

    .header_modalmenu_open .top {
        transform: translateY(-8px);
    }

    .header_modalmenu_open .bottom {
        transform: translateY(8px);
    }

    .header_maintitle {
        /* height: 400px; */
        height: 360px;
        min-height: 0;
        max-height: none;
    }

    .header_maintitle > p {
        padding: 0 0 40px 0;
        font-size: 3.0rem;
        line-height: 1.8;
        background-size: 160px;
    }


    .header_shopinfo {
        /* display: none; */
        right: 0;
        bottom: 0;
        width: auto;
        min-width: 0;
        max-width: 210px;
        padding: 14px 10px 10px 20px;
        background-color: rgba(0, 0, 0, 0.7);
        background-image: none;
    }

    .header_shopinfo > div:nth-of-type(n+2) {
        display: none;
    }

    .header_shopinfo dt {
        font-size: 1.2rem;
        letter-spacing: 0.03rem;
    }

    .header_shopinfo dd a {
        padding: 0 0 0 20px;
        font-size: 2.2rem;
        background-size: 13px;
    }


    .home_body .header_gnav,
    .home_body .header_gnav > div,
    .home_body .header_gnav > div > span {
        pointer-events: none;
    }

    .home_body .header_gnav {
        height: 0;
    }

    .home_body .header_gnav > div {
        height: auto;
        display: block;
    }

    .home_body .header_gnav > div > span {
        width: 100%;
    }

    .home_body .header_gnav > div > span a {
        bottom: 0;
        transform: translate(-16%, 36%);
        width: 32%;
        max-width: 150px;
        pointer-events: all;
    }

    .home_body .header_gnav ul {
        display: none;
    }

    .cmn_body .header_gnav {
        display: none;
    }

    .header_modalmenu_gnav {
        padding: 20px 30px 60px;
        margin: 10px 0 0 0;
    }

    .header_modalmenu_gnav li {
        margin: 24px 0 0 0;
    }

    .header_modalmenu_gnav a {
        font-size: 1.5rem;
    }




    /* footer */
    .footer_top {
        display: block;
        padding: 50px 0 0 0;
    }

    .footer_top > span {
        display: block;
        width: 100%;
        min-width: 0;
        max-width: 100px;
        padding: 0;
        margin: 0 auto;
    }

    .footer_top > ul {
        width: 100%;
        padding: 26px 0 0 0;
        margin: 40px 0 0 0;
    }

    .footer_top > ul,
    .footer_shopinfo {
        background-image: url(../img/footer_line_sp.svg);
        background-position: center top;
        background-size: auto;
    }

    .footer_top > ul {
        text-align: center;
    }

    .footer_top > ul li + li {
        margin: 6px 0 0 0;
    }

    .footer_top > ul a {
        font-size: 1.4rem;
    }

    .footer_shopinfo {
        min-width: 290px;
        padding: 40px 0 0 2%;
        margin: 26px auto 0;
    }

    .footer_shopinfo > div + div {
        margin: 16px 0 0 0;
    }

    .footer_shopinfo dd > div {
        margin: 10px 0 0 0;
    }

    .footer_top > div {
        margin: 40px 0 0 0;
    }

    .footer_bottom {
        display: block;
        height: auto;
        padding: 26px 4% 10px;
        text-align: center;
    }

    .footer_bottom > ul {
        display: flex;
        justify-content: center;
    }

    .footer_bottom > ul li {
        margin: 0 16px;
    }

    .footer_bottom > ul li:last-of-type {
        display: none;
    }

    .footer_bottom > small {
        margin: 24px 0 0 0;
    }

    .footer_bottom > p a {
        font-size: 1.1rem;
    }


    .footer_gotop {
        /* width: 46px; */
        width: 50px;
    }






    .home_body main {
        padding-bottom: 90px;
    }


    /* home /////////////////////////////////////////////////////////////////////////////////////////// */
    .home_topmsg_imgbox {
        background-size: auto 76%;
    }












    /* link /////////////////////////////////////////////////////////////////////////////////////////// */
    .link_list > ul {
        padding: 0 16px;
        margin: -20px 0 0 0;
    }

    .link_list > ul::after {
        display: none;
    }

    .link_list > ul li {
        width: 45%;
    }

    .link_list > ul li {
        margin: 20px 0 0 0;
    }

    .link_list > ul a {
        font-size: 1.5rem;
    }





    /* members /////////////////////////////////////////////////////////////////////////////////////////// */
    .members_event {
        display: block;
    }

    .members_event h2 {
        margin-bottom: 8px;
    }

    .members_event > span {
        font-size: 1.4rem;
    }

    .members_event .imgbox {
        width: 100%;
        margin: 40px 0 0 0;
    }

    .members_event .imgbox p {
        font-size: 1.3rem;
    }

    .members_event .txtbox {
        width: 100%;
        margin: 0;
    }

    .members_event .txtbox > b {
        font-size: 1.9rem;
    }

    .members_event .txtbox > div {
        margin: 20px 0 0 0;
    }




    /* menu /////////////////////////////////////////////////////////////////////////////////////////// */
    [id="menu_course"] h4,
    [id="menu_same"] h4,
    [id="menu_drink"] h4 {
        margin-left: 0;
    }





    /* merumaga /////////////////////////////////////////////////////////////////////////////////////////// */

    .merumaga_tokuten {
        padding: 0 5%;
        overflow: hidden;
    }

    .merumaga_first {
        flex-wrap: wrap;
    }

    .merumaga_first_txtbox,
    .merumaga_birthday,
    .merumaga_others {
        padding: 20px 24px 36px;
    }

    .merumaga_first_txtbox > h3,
    .merumaga_birthday > h3,
    .merumaga_others > h3 {
        padding: 10px 0 10px 14px;
        margin: 0 0 0 24px;
        font-size: 1.8rem;
        background-size: 100% 100%;
    }

    .merumaga_first_txtbox > h3 br {
        display: none;
    }

    .merumaga_first_txtbox > p,
    .merumaga_birthday > p,
    .merumaga_others > p {
        margin: 16px 0 0 0;
    }

    .merumaga_first_txtbox .higlight,
    .merumaga_birthday .higlight {
        margin: 8px 0;
    }

    .merumaga_first_txtbox .higlight .price {
        font-size: 3.2rem;
    }

    .merumaga_first_txtbox .higlight .price small {
        font-size: 2.0rem;
    }

    .merumaga_first_txtbox .higlight .off {
        font-size: 2.4rem;
    }

    .merumaga_birthday .higlight .food {
        font-size: 1.9rem;
    }

    .merumaga_birthday .higlight .food small {
        font-size: 1.3rem;
    }



    .merumaga_first_txtbox > small,
    .merumaga_birthday > small,
    .merumaga_others > small {
        margin: 16px 0 0 0;
    }

    .merumaga_first_txtbox > span,
    .merumaga_birthday > span,
    .merumaga_others > span {
        z-index: 9;
        transform: translate(-20%, -20%);
        width: 64px;
        height: 64px;
        font-size: 1.5rem;
    }

    .merumaga_first_imgbox {
        order: -1;
        width: 100%;
        height: 0;
        padding: 66% 0 0 0;
    }







    .merumaga_hotwo > h3 {
        margin-left: 0;
    }





    /* news /////////////////////////////////////////////////////////////////////////////////////////// */
    .news_single_body main {
        padding-bottom: 120px;
    }

    .news_single_box {
        padding-left: 4%;
        padding-right: 4%;
        padding-bottom: 30px;
    }

    .news_single_box > h2 {
        margin-bottom: 10px;
        font-size: 1.8rem;
    }

    .news_single_box > span {
        font-size: 1.4rem;
    }

    .news_single_editor > *:not(:root):not(h3):not(h4):not(h5):not(h6) {
        /* WYSIWYG内のh3～h6以外の要素 */
        padding-left: 2%;
        padding-right: 2%;
        /* padding-left: 0; */
        /* padding-right: 0; */
    }

    .news_single_pager {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 10px 4% 0;
    }

    .news_single_pager a {
        font-size: 1.5rem;
    }






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

    .shop_topmsg_imgbox > strong {
        font-size: calc(28px + (36 - 28)*(100vw - 780px)/(1000 - 780));
    }

    .shop_topmsg_txtbox {
        padding-left: 30px;
        padding-right: 60px;
    }

    .shop_topmsg_txtbox_vertical {
        /* height: 650px; */
        height: 670px;
    }

    .shop_topmsg_txtbox_vertical > p {
        margin: 34px 40px 0 0;
        line-height: 2.2;
        /* column-count: 2; */
        /* column-gap: 40px; */
    }






    .shop_info_mainimg,
    .shop_seat_mainimg {
        /* padding-top: 40%; */
        margin: 0 4% 40px;
    }

    .shop_info_mainimg {
        background-image: url(../img/shop_info_mainimg.jpg);
    }

    .shop_seat_mainimg {
        background-image: url(../img/shop_seat_mainimg.jpg);
    }


    .shop_info_list > div > dt,
    .shop_info_list > div > dd {
        padding: 20px 10px 20px 20px;
        font-size: 1.5rem;
    }

    .shop_info_list > div > dt {
        min-width: 104px;
    }

    .shop_seat_gallery {
        margin: -44px 0 0 0;
    }

    .shop_seat_gallery > li {
        width: 100%;
        margin: 44px 0 0 0;
    }

    .shop_seat_gallery a {
        pointer-events: none;
    }

    .shop_seat_gallery h3 {
        font-size: 1.7rem;
    }

    .shop_map_inner > p {
        font-size: 1.5rem;
    }

    .shop_map_inner > span {
        margin: 12px 0 0 0;
        font-size: 1.4rem;
    }

    .shop_map_inner > div {
        height: 350px;
        margin: 40px 0 0 0;
    }






    /* staff /////////////////////////////////////////////////////////////////////////////////////////// */
    .staff_topmsg {
        position: static;
    }

    .staff_topmsg_vertical {
        position: static;
        display: flex;
        justify-content: center;
        padding: 42px 4%;
        background-color: transparent;
        text-align: right;
    }

    .staff_topmsg_vertical > div {
        height: 550px;
        /* column-count: 2; */
        /* column-gap: 34px; */
    }

    .staff_topmsg_vertical > div p {
        color: #000000;
        line-height: 2.3;
    }









}













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








    /* common /////////////////////////////////////////////////////////////////////////////////////////// */






    /* home /////////////////////////////////////////////////////////////////////////////////////////// */
    .home_body main {
        padding-bottom: 90px;
    }

    .home_body .cmn_box {
        padding-top: 60px;
        padding-top: 50px;
    }

    .home_topmsg_imgbox {
        height: 0;
        padding: 70% 0 0 0;
        background-size: cover;
    }

    .home_topmsg_txtbox {
        position: static;
        width: 100%;
        height: auto;
        padding: 0;
    }

    .home_topmsg_txtbox > div {
        width: 100%;
        padding: 16px 2% 0;
        text-align: center;
    }

    .home_topmsg_txtbox > div > div {
        /* -ms-writing-mode:lr-tb;
        writing-mode:horizontal-tb;
        -ms-writing-mode:horizontal-tb;
        -o-writing-mode: horizontal-tb;
        -webkit-writing-mode: horizontal-tb; */
    }

    .home_topmsg_txtbox > div h2 {
        font-size: 1.9rem;
        font-size: 2.0rem;
        line-height: 1.5;
    }

    .home_topmsg_txtbox > div p {
        margin: 34px 18px 0 0;
        line-height: 1.7;
        letter-spacing: 0.1rem;
    }

    .home_topmsg_txtbox > div p .blank {
        display: none;
    }




    .home_news {
        /* padding: 50px 0 60px; */
    }

    .home_news_inner h2 {
        font-size: 2.2rem;
    }

    .home_news_inner > ul {
        /* max-height: 350px; */
        padding: 0;
        /* overflow: scroll; */
    }

    .home_news_inner > ul li {
        display: block;
        padding: 16px 20px;
    }

    .home_news_inner > ul span {
        margin: 0;
        font-size: 1.4rem;
    }

    .home_news_inner > ul p {
        margin: 8px 0 0 0;
        font-size: 1.4rem;
    }

    .home_osusume,
    .home_teiban {
        padding: 40px 0 56px;
    }



    .home_cards {
        padding: 50px 0 10px;
    }

    .home_shop,
    .home_staff,
    .home_reserve,
    .home_takeout {
        margin-top: 30px;
    }

    .home_shop,
    .home_staff,
    .home_reserve,
    .home_takeout {
        width: 100%;
    }

    .home_merumaga a::before,
    .home_shop a::before,
    .home_staff a::before {
        /* width: 46%; */
        width: 40%;
        max-width: none;
    }

    .home_merumaga a::before {
        background-position: center;
    }

    .home_merumaga dl,
    .home_shop a > div,
    .home_staff a > div {
        padding: 24px 20px 24px;
    }

    .home_merumaga dt {
        display: block;
        text-align: center;
    }

    .home_merumaga dt span {
        margin: 0;
        font-size: 1.5rem;
    }

    .home_merumaga dt h2 {
        display: block;
        margin: 10px 0 0 0;
        font-size: 1.9rem;
    }

    .home_merumaga dd:nth-of-type(1) {
        display: block;
        margin: 24px 0 0 0;
        text-align: center;
    }

    .home_merumaga dd:nth-of-type(1) > span {
        padding: 7px 12px;
        margin: 0;
        font-size: 1.4rem;
    }

    .home_merumaga dd:nth-of-type(1) > p {
        display: block;
        margin: 16px 0 10px;
        font-size: 1.6rem;
    }

    .home_merumaga dd:nth-of-type(1) > div > span {
        margin: 0;
        font-size: 2.6rem;
        /* letter-spacing: 0.05rem; */
    }

    .home_merumaga dd:nth-of-type(1) > div > small {
        transform: none;
        padding: 1px 6px;
        margin: 8px 0 0 0;
        font-size: 1.7rem;
    }

    .home_shop h2,
    .home_staff h2 {
        font-size: 2.0rem;
    }


    .home_reserve a,
    .home_takeout a {
        background-size:
            80px,
            250px;
    }

    .home_reserve h2,
    .home_takeout h2 {
        font-size: 2.2rem;
    }

    .home_reserve h2 span,
    .home_takeout h2 span {
        margin: 0 0 4px 0;
        font-size: 1.7rem;
    }

    .home_sns {
        display: block;
        margin: 60px 0 0 0;
    }

    .home_sns h2 {
        font-size: 1.6rem;
    }

    .home_sns h2 + * {
        margin-top: 20px;
    }

    .home_sns_facebook,
    .home_sns_instagram {
        width: 100%;
    }

    .home_sns_instagram {
        margin: 40px 0 0 0;
    }



    /* link /////////////////////////////////////////////////////////////////////////////////////////// */





    /* members /////////////////////////////////////////////////////////////////////////////////////////// */





    /* menu /////////////////////////////////////////////////////////////////////////////////////////// */
    .home_osusume h2,
    .home_teiban_inner h2,
    .menu_osusume > h2,
    .menu_teiban_top > h2 {
        height: 90px;
        margin: 0 0 30px 0;
        font-size: 2.2rem;
    }

    .menu_osusume > p,
    .menu_teiban_top > p {
        text-align: left;
        font-size: 1.6rem;
    }

    .menu_teiban {
        padding-bottom: 10px;
    }

    .home_teiban_inner > ul,
    .menu_teiban_top > ul {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .home_teiban_inner > ul {
        margin: -20px 0 0 0;
    }

    .menu_teiban_top > ul {
        margin: 0;
    }

    .home_teiban_inner > ul li,
    .menu_teiban_top > ul li {
        width: 47%;
        margin: 40px 0 0 0;
    }

    .home_teiban_inner > ul span,
    .menu_teiban_top > ul span {
        min-height: 0;
        padding: 20px 10px 10px;
        font-size: 1.5rem;
    }


    .menu_osusume ul::after {
        display: none
    }

    .home_osusume_slider .swiper-slide,
    .menu_osusume li {
        /* width: 46%; */
        width: 100%;
    }

    .home_osusume_slider {
        padding: 0;
        margin: 0;
    }


    .menu_osusume li > div a {
        pointer-events: none;
    }

    .home_osusume_slider .swiper-slide > div span,
    .menu_osusume li > div span {
        min-height: 0;
        padding-bottom: 40px;
        /* font-size: 1.2rem; */
        font-size: 1.5rem;
    }

    .home_osusume_slider .swiper-slide > small,
    .menu_osusume li > small {
        margin: 18px 0 0 0;
        font-size: 1.5rem;
    }


    .home_osusume_slider .swiper-slide > h3,
    .menu_osusume li > h3 {
        margin: 8px 0 0 0;
        font-size: 1.9rem;
    }

    .menu_osusume li > p {
        margin: 14px 0 0 0;
    }

    .menu_osusume > span {
        margin: 50px 0 0 0;
    }



    [id="menu_course"],
    [id="menu_same"],
    [id="menu_drink"],
    [id="menu_lunch"] {
        margin: 60px 0 0 0;
    }

    [id="menu_course"] {
        margin: 90px 0 0 0;
    }

    .menu_course_mainimg,
    .menu_same_mainimg,
    .menu_drink_mainimg,
    .menu_lunch_mainimg {
        height: 0;
        /* padding: 40% 0 0 0; */
        padding: 60% 0 0 0;
    }

    .menu_course_mainimg h3,
    .menu_same_mainimg h3,
    .menu_drink_mainimg h3,
    .menu_lunch_mainimg h3 {
        left: 56%;
        transform: translate(-50%, 0);
    }

    .menu_course_mainimg span,
    .menu_same_mainimg span,
    .menu_drink_mainimg span,
    .menu_lunch_mainimg span {
        min-height: 0;
        padding: 20px 12px 26px;
        font-size: 2.0rem;
        line-height: 1.3;
    }

    .menu_same_mainimg span small {
        display: none;
    }

    .menu_course_outline,
    .menu_same_outline,
    .menu_drink_outline,
    .menu_lunch_outline {
        font-size: 1.5rem;
        text-align: left;
    }

    .menu_course_massan,
    .menu_course_najimi,
    .menu_course_omakase {
        display: block;
        margin: 12px 0 0 0;
    }

    .menu_course_massan,
    .menu_course_najimi {
        padding: 0 0 60px 0;
    }

    .menu_course_massan > small,
    .menu_course_najimi > small,
    .menu_course_omakase > small {
        margin: 16px 0 0 0;
        font-size: 1.4rem;
    }

    .menu_course_massan .imgbox,
    .menu_course_najimi .imgbox {
        width: 100%;
        margin: 16px 0 0 0;
    }

    .menu_course_massan .imgbox img,
    .menu_course_najimi .imgbox img {
        width: 100%;
    }

    .menu_course_massan .imgbox p,
    .menu_course_najimi .imgbox p {
        font-size: 1.2rem;
    }

    .menu_course_massan .txtbox,
    .menu_course_najimi .txtbox,
    .menu_course_omakase .txtbox {
        width: 100%;
    }

    .menu_course_massan .price > div,
    .menu_course_najimi .price > div {
        display: block;
        margin: 18px 0 0 0;
    }

    .menu_course_massan .price dt span,
    .menu_course_najimi .price dt span {
        font-size: 1.7rem;
    }

    .menu_course_massan .price dd,
    .menu_course_najimi .price dd {
        text-align: right;
        margin: -1px 0 0 0;
    }

    .menu_course_massan .foods,
    .menu_course_najimi .foods {
        margin: 28px 0 0 0;
    }

    .menu_course_massan .foods dd,
    .menu_course_najimi .foods dd {
        margin: 12px 0 0 0;
    }


    .menu_course_nomihoudai {
        display: block;
        padding: 30px 30px 38px;
    }

    .menu_course_nomihoudai > strong {
        width: 100%;
        height: 70px;
        padding: 0;
        margin: 0;
        font-size: 2.7rem;
        letter-spacing: 0.2rem;
    }

    .menu_course_nomihoudai > div {
        margin: 16px 0 0 0;
    }

    .menu_course_nomihoudai > div > small {
        margin: 10px 0 0 0;
        letter-spacing: -0.05rem;
    }

    .menu_course_nomihoudai > div > span {
        display: block;
        font-size: 1.3rem;
        text-align: center;
    }

    .menu_course_nomihoudai > div > span span {
        font-size: 2.2rem;
    }


    .menu_course_booking dt {
        font-size: 1.5rem;
    }

    .menu_course_booking dd p {
        font-size: 1.3rem;
    }



    .menu_same_items > ul,
    .menu_drink_items > ul,
    .menu_lunch_items > ul {
        margin: -30px 0 0 0;
    }

    .menu_same_items > ul::before,
    .menu_drink_items > ul::before,
    .menu_lunch_items > ul::before,
    .menu_same_items > ul::after,
    .menu_drink_items > ul::after,
    .menu_lunch_items > ul::after,
    .menu_same_items > ul li,
    .menu_drink_items > ul li,
    .menu_lunch_items > ul li {
        width: 30%;
    }

    .menu_same_items > ul h5,
    .menu_drink_items > ul h5,
    .menu_lunch_items > ul h5 {
        margin: 14px 0 0 0;
    }

    .menu_same_items > ul span,
    .menu_drink_items > ul span,
    .menu_lunch_items > ul span {
        margin: 8px 0 0 0;
        font-size: 1.6rem;
    }

    .menu_same_items > ul small,
    .menu_drink_items > ul small,
    .menu_lunch_items > ul small {
        margin: 6px 0 0 0;
        font-size: 1.4rem;
    }

    .menu_same_items > ul p,
    .menu_drink_items > ul p,
    .menu_lunch_items > ul p {
        margin: 16px 0 0 0;
    }

    .menu_drink_others div {
        min-width: 130px;
    }

    .menu_drink_others p {
        padding: 16px 22px;
        font-size: 1.3rem;
        letter-spacing: 0.05rem;
    }

    .menu_drink_others p br {
        display: none;
    }

    .menu_lunch_note {
        font-size: 1.4rem;
    }



































    .menu_takeout > p {
        font-size: 1.6rem;
        text-align: left;
    }

    .menu_takeout > ul {
        display: block;
    }

    .menu_takeout > ul li {
        width: 100%;
    }

    .menu_takeout > ul li + li {
        margin: 16px 0 0 0;
    }

    .menu_takeout > ul a {
        padding: 18px 80px 18px 30px;
        background-position: right 30px center;
        background-size: 34px;
        font-size: 1.8rem;
    }

    .menu_takeout > ul span {
        margin: 1px 0 0 0;
        font-size: 1.5rem;
    }





    /* merumaga /////////////////////////////////////////////////////////////////////////////////////////// */





    /* news /////////////////////////////////////////////////////////////////////////////////////////// */





    /* shop /////////////////////////////////////////////////////////////////////////////////////////// */
    .shop_topmsg_imgbox {
        position: static;
    }

    .shop_topmsg_imgbox > strong {
        position: static;
        display: block;
        height: auto;
        padding: 0 5%;
        margin: 32px 0 0 0;
        /* margin: 40px 0 0 0; */
        /* margin: 16px 0 0 0; */
        color: #000000;
        font-size: 2.0rem;
        line-height: 1.7;
        text-shadow: none;
        -ms-writing-mode:lr-tb;
        writing-mode:horizontal-tb;
        -ms-writing-mode:horizontal-tb;
        -o-writing-mode: horizontal-tb;
        -webkit-writing-mode: horizontal-tb;
        text-align: center;
    }

    .shop_topmsg_imgbox > strong::before,
    .shop_topmsg_imgbox > strong::after {
        display: inline-block;
    }

    .shop_topmsg_imgbox > strong::before {
        content: '\0201C';
    }

    .shop_topmsg_imgbox > strong::after {
        content: '\0201D';
    }

    .shop_topmsg_txtbox {
        padding: 40px 5% 0;
    }

    .shop_topmsg_txtbox_vertical {
        height: auto;
        -ms-writing-mode:lr-tb;
        writing-mode:horizontal-tb;
        -ms-writing-mode:horizontal-tb;
        -o-writing-mode: horizontal-tb;
        -webkit-writing-mode: horizontal-tb;
    }

    .shop_topmsg_txtbox_vertical > span {
        display: block;
        font-size: 1.8rem;
        line-height: 1.7;
    }

    .shop_topmsg_txtbox_vertical > p {
        margin: 20px 0 0 0;
        font-size: 1.5rem;
        column-count: auto;
        column-gap: normal;
    }







    /* staff /////////////////////////////////////////////////////////////////////////////////////////// */
    .staff_topmsg_vertical {
        display: block;
        padding: 32px 4%;
        text-align: left;
    }

    .staff_topmsg_vertical > div {
        height: auto;
        -ms-writing-mode:lr-tb;
        writing-mode:horizontal-tb;
        -ms-writing-mode:horizontal-tb;
        -o-writing-mode: horizontal-tb;
        -webkit-writing-mode: horizontal-tb;
    }

    .staff_topmsg_vertical > div p {
        font-size: 1.5rem;
        line-height: 2.0;
    }


    .staff_gallery {
        flex-wrap: wrap;
        margin: 0;
    }

    .staff_gallery li {
        width: 48%;
        margin: 4% 0 0 0;
    }

    .staff_gallery a {
        display: block;
    }

    .staff_body h2 {
        margin-top: 80px;
    }

    .staff_info {
        display: block;
    }

    .staff_info > img {
        display: block;
        width: 100%;
        max-width: 220px;
        min-width: 0;
        margin: 0 auto;
    }

    .staff_info > div {
        margin: 28px 0 0 0;
    }

    .staff_info > div h3 {
        text-align: center;
    }

    .staff_info > div h3 span {
        display: block;
    }

    .staff_info > div > span {
        margin: 32px 0 0 0;
    }

    .staff_info > div > p {
        margin: 12px 0 0 0;
    }

















}












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









    /* common /////////////////////////////////////////////////////////////////////////////////////////// */







    /* home /////////////////////////////////////////////////////////////////////////////////////////// */

    /* .home_merumaga a {
        display: block;
    }

    .home_merumaga a::before {
        width: 100%;
        height: 0;
        padding: 100% 0 0 0;
        min-width: 0;
    } */




    /* link /////////////////////////////////////////////////////////////////////////////////////////// */
    .link_list > ul li {
        width: 100%;
    } 

    .link_list > ul a {
        display: inline-block;
    } 






    /* members /////////////////////////////////////////////////////////////////////////////////////////// */





    /* menu /////////////////////////////////////////////////////////////////////////////////////////// */

    .menu_same_items > ul::before,
    .menu_drink_items > ul::before,
    .menu_lunch_items > ul::before,
    .menu_same_items > ul::after,
    .menu_drink_items > ul::after,
    .menu_lunch_items > ul::after {
        display: none;
    }

    .menu_same_items > ul li,
    .menu_drink_items > ul li,
    .menu_lunch_items > ul li {
        width: 47%;
    }


    .home_osusume_slider [class*="osusume_slider_prev"],
    .home_osusume_slider [class*="osusume_slider_next"] {
        width: 40px;
    }

    .home_osusume_slider .swiper-container-initialized ~ [class*="osusume_slider_prev"],
    .home_osusume_slider .swiper-container-initialized ~ [class*="osusume_slider_next"] {
        display: none;
    }


    .home_osusume_slider [class*="osusume_slider_prev"] {
        left: 9%;
    }

    .home_osusume_slider [class*="osusume_slider_next"] {
        right: 9%;
    }

    .menu_same_onirigi {
        display: block;
        padding: 30px 32px;
    }

    .menu_same_onirigi p {
        margin: 18px 0 0 0;
        font-size: 1.5rem;
    }

    .menu_same_onirigi img {
        display: block;
        margin: 0 auto;
    }




    /* merumaga /////////////////////////////////////////////////////////////////////////////////////////// */





    /* news /////////////////////////////////////////////////////////////////////////////////////////// */





    /* shop /////////////////////////////////////////////////////////////////////////////////////////// */
    .shop_seat_group {
        display: block;
        padding: 36px 36px 40px;
    }

    .shop_seat_group > h3 {
        display: block;
        width: 100%;
        padding: 0;
        margin: 0;
        font-size: 3.2rem;
    }

    .shop_seat_group > div {
        margin: 28px 0 0 0;
    }

    .shop_seat_group > div strong {
        display: block;
        text-align: center;
    }

    .shop_seat_group > div p {
        margin: 12px 0 0 0;
    }





    /* staff /////////////////////////////////////////////////////////////////////////////////////////// */














}