@charset "utf-8";
@media (max-width: 767px) {
    .pc_v {
        display: none;
    }
    .sp_v {
        display: inherit;
    }
    /* 全体 */
    html {
        min-width: 0;
    }
    section {
        padding: 30px 0;
    }
    .container {
        width: 100%;
    }
    h2 {
        margin-bottom: 30px;
        width: 100%;
    }
    .w920,
    .w1000,
    .w1200 {
        width: 100%;
        padding: 0 2.5%;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    /* スマホメニュートリガー 共通 */
    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    .menu-trigger {
        position: fixed;
        width: 30px;
        height: 22px;
        top: 16px;
        right: 20px;
        z-index: 100;
        cursor: pointer;
    }
    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #d5a653;
        border-radius: 4px;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
    .menu-trigger span:nth-of-type(2) {
        top: 9px;
    }
    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
    /* スマホメニュートリガー エフェクト */
    .menu-trigger.active span:nth-of-type(1) {
        background-color: #fff;
        -webkit-transform: translateY(9px) rotate(-45deg);
        transform: translateY(9px) rotate(-45deg);
    }
    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }
    .menu-trigger.active span:nth-of-type(3) {
        background-color: #fff;
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg);
    }
    /* ハンバーガーメニュー */
    /* 追従エリア */
    #sp_bottom {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        clear: both;
        overflow: hidden;
        z-index: 999;
    }
    .yoyaku, .reserve {
        width: 40%;
        background: #d5a653;
        padding: 5px 0;
        text-align: center;
        box-sizing: border-box;
        vertical-align: middle;
    }
    .sp_totop {
        width: 20%;
        background: #000;
        display: table-cell;
        padding: 5px 0;
        text-align: center;
        box-sizing: border-box;
        line-height: 120%;
        vertical-align: middle;
    }
    .yoyaku a {
        color: #fff;
    }
    .reserve a {
        color: #fff;
    }
    .sp_totop a {
        color: #fff;
    }
    /* ヘッダー */
    #header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        margin-left: 0;
        background: #d5a653;
        padding: 5px 2.5%;
    }
    #menu {
        display: none;
        width: 100%;
        /* position: absolute; */
        top: 0;
        left: 0;
        z-index: 90;
        color: #fff;
        background: #d5a653;
        box-sizing: border-box;
        text-align: center;
        float: none;
        padding-top: 30px;
    }
    #menu a {
        color: #fff;
        display: block;
        width: 100%;
        padding: 10px 0;
        margin: 0 auto;
        box-sizing: border-box;
        font-size: 14px;
        border-bottom: 1px dotted #fff;
    }
    #course h3 {
        text-align: center;
    }
    #course td {
        /*display: inline-block;*/
    }
    #course tr td:first-child {
        width: 100%;
        /*   padding-top: 2em; */
    }
    #drink tr td:nth-child(odd),
    #drink tr td:nth-child(even) {
        width: 100%;
    }
    #gallery .fl_left {
        width: 50%;
        height: 47.5vw;
    }
    .tel {
        position: relative;
        z-index: 80;
        float: right;
        margin: 5px 50px 5px 0;
        font-size: 18px;
        color: #fff;
    }
    .tel img.pc_v {
        display: none;
    }
    .tel a {
        color: #fff;
    }
    #breadcrumb {
        margin-bottom: 30px;
        font-size: 11px;
    }
    /* フッター */
    #access {
        background-attachment: scroll;
        padding-top: 0;
        width: 95%;
    }
    #map iframe {
        /*width: 95%;*/
    }
    #shopinfo {
        width: 100%;
        padding: 0 2.5%;
        box-sizing: border-box;
        margin-top: 30px;
    }
    #shopinfo p {
        font-size: 13px;
    }
    #shopinfo>.fl_wrap>img.fl_left {
        width: 100%;
        height: auto;
        float: none;
    }
    #shopinfo>.fl_wrap>div.fl_right {
        float: left;
        margin-left: 0;
        float: none;
        margin-top: 20px;
    }
    #footer {
        margin-bottom: 40px;
    }
    #footer-menu {
        display: none;
    }
    #totop {
        width: 55px;
        height: 63px;
        position: fixed;
        right: 37px;
        bottom: 40px;
        z-index: 999;
        display: none;
    }
    #totop img {
        width: 100%;
        height: auto;
    }
    /* メインビジュアル */
    .mainv_logo_wrap {
        display: none;
        text-align: center;
        position: absolute;
        top: 20px;
        left: 5%;
        transform: translateX(-50%);
        z-index: 25;
    }
    .mainv_logo_wrap h1 {
        display: block;
        height: auto;
        margin: 0 auto;
        top: 0;
        left: 0;
    }
    .mainv_logo_wrap h1 img {
        display: block;
        width: auto;
        max-height: 200px;
        filter: drop-shadow(0 0 0.333rem rgba(255, 255, 255, 0.75));
    }
    #mainv {
        position: relative;
        width: 100%;
        height: 300px;
        color: #fff;
        box-sizing: border-box;
        z-index: 21;
    }
    .mainv_bg {
        position: absolute;
        width: 100%;
        height: 300px;
        top: 0;
        left: 0;
        background-repeat: no-repeat;
        background-attachment: scroll;
        background-size: cover;
        background-position: center center;
        z-index: 23;
    }
    .mainv_logo_wrap h1 {
        display: block;
        width: auto;
        height: auto;
        margin: 0 auto;
    }
    .page #mainv {
        position: relative;
        width: 100%;
        height: 240px;
        padding: 0;
        z-index: 21;
    }
    /* ページ */
    #news h2,
    #concept_link h2 {
        width: 80%;
        margin: 0 auto 30px auto;
    }
    #news .fl_wrap {
        padding-bottom: 0;
        border-bottom: none;
    }
    #news .fl_left,
    #news .fl_right {
        width: 100%;
        float: none;
    }
    a.news_list {
        width: 95%;
        padding: 10px;
        box-sizing: border-box;
        border-top: 1px solid #919191;
        border-bottom: none;
        text-align: left;
        margin: 0 auto;
        diplay: block;
        vertical-align: middle;
    }
    .news_discription {
        width: 61.8%;
        line-height: 1.5em;
    }
    .news_list:last-child {
        /* border-bottom:1px solid #919191;*/
    }
    .news_thumb {
        width: 30%;
    }
    #about {
        margin-top: 50px;
        margin-bottom: 30px;
    }
    #concept_link {
        padding-top: 30px;
    }
    #concept_link .flex_container {
        -webkit-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
    .concept_left {
        width: 100%;
        padding: 40px 0 20px 0;
    }
    .concept_right {
        width: 100%;
        height: 200px;
    }
    #menu_link {
        padding-top: 0;
    }
    #menu_link .flex_container {
        -webkit-flex-direction: column;
        flex-direction: column;
    }
    #menu_link .menu_link_box {
        width: 100%;
        margin-bottom: 30px;
        -webkit-flex-direction: row;
        flex-direction: row;
    }
    .link_list {
        width: 100%;
        height: auto;
    }
    .link_img {
        width: 100%;
        height: 150px;
        float: none;
    }
    .link_txt_wrap {
        width: 100%;
        height: auto;
        float: none;
        position: relative;
    }
    .link_txt {
        width: 100%;
        position: static;
        -webkit-transform: none;
        /* Safari用 */
        transform: none;
        box-sizing: border-box;
        padding: 30px 2.5%;
        text-align: center;
    }
    .fl_left .link_txt,
    .fl_right .link_txt {
        padding: 30px 2.5%;
    }
    .link_txt h3,
    .link_txt p {
        text-align: left;
    }
    #top_link .readmore {
        float: none;
    }
    #gallery_link {
        padding: 0;
    }
    .gallery_link_wrap {
        height: 300px;
    }
    .gallery_link_wrap h2 {
        margin: 0;
        padding-top: 120px;
    }
    .fade_lead {
        float: none;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .fade_lead_in {
        width: 100%;
        position: static;
        -moz-transform: none;
        -webkit-transform: none;
        transform: none;
    }
    .fade_list {
        margin-right: 1.25%;
        margin-bottom: 5px;
    }
    .fade_list:hover p.fade_on {
        padding: 10px;
        box-sizing: border-box;
        text-align: left;
        position: static;
        -moz-transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        background: rgba(0, 0, 0, 0.3);
        height: 100%;
        transition: opacity 0.5s;
        -moz-transition: opacity 0.5s;
        -ms-transition: opacity 0.5s;
        -o-transition: opacity 0.5s;
        -webkit-transition: opacity 0.5s;
    }
    #enkai {}
    .enkai_list>.fl_left {
        width: 100%;
    }
    .enkai_list>.fl_right {
        width: 100%;
        margin-top: 20px;
    }
    .enkai_list>.fl_right h3 {
        font-size: 19px;
        color: #000;
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 1px dashed #000;
    }
    .enkai_list>.fl_right table {
        margin-top: 20px;
    }
    .enkai_list>.fl_right table td:first-child {
        padding-right: 40px;
    }
    .menu_category {
        width: 100%;
        padding: 0 2.5% 30px;
    }
    .menu_category.w_full>table>tbody>tr>td {
        display: block;
    }
    .menu_category.w_full>table>tbody>tr>td:nth-child(2) {
        padding-right: 0;
        padding-left: 10px;
        text-align: right;
    }
    .menu_category.w_full>table>tbody>tr>td:nth-child(3) {
        padding-left: 0;
    }
    .space_block>img.ib_box {
        width: 100%;
        height: auto;
        margin-right: 0;
    }
    .space_block>div.ib_box {
        width: 100%;
        margin-top: 20px;
    }
    #news_archive {
        margin: 0 auto;
        text-align: center;
        padding: 0 2.5%;
    }
    #single_contents {}
    #reservation {
        padding: 30px 5%;
        margin-bottom: 30px;
    }
    #reservation_page form table {
        width: 100%;
        display: block;
    }
    #reservation_page form table tr {
        width: 100%;
        display: block;
    }
    #reservation_page form table tr td {
        width: 100%;
        display: block;
        padding: 0;
    }
    #reservation_page form table tr td:last-child {
        width: 100%;
        padding-bottom: 20px;
    }
    #reservation_page form input,
    #reservation_page form textarea {
        width: 100%;
    }
    #reservation_page form input[type="radio"] {
        width: auto;
    }
    #reservation_page form .form_s input {
        width: 30%;
    }
    #reservation_page form textarea {
        width: 100%;
    }
    #reservation_page form input:focus,
    #reservation_page form textarea:focus {
        border: 1px solid #008e80;
    }
    #reservation_page form dt .va_top {
        padding-top: 0;
        display: block;
    }
    #reservation_page form input[type="submit"],
    #reservation_page form input[type="button"] {
        width: auto;
        padding: 5px 40px;
        display: inline-block;
        cursor: pointer;
        border-radius: 20px;
        font-size: 13px;
        font-weight: normal;
    }
    #informationArea {
        padding-top: 0;
    }
    #informationArea,
    #blogArea {
        padding-top: 0;
        width: auto;
    }
    #informationArea .wrap ul li .infomationBtn {
        display: none;
    }
    #informationArea .wrap ul li .date {
        width: 35%;
    }
    #blogArea .wrap ul li .detaileBtn {
        display: none;
    }
    #blogArea .wrap ul li .date {
        width: 35%;
    }
    #menu a.tel {
        position: static;
        top: auto;
        right: auto;
        pointer-events: auto;
        text-align: center;
        width: 100%;
    }
    #menu a.tel span {
        /*    display: block; */
    }
    .coupon_area {
        padding: 40px 0 60px;
    }
    .coupon_box {
        width: auto;
        margin: 0 20px;
        color: #333;
        border: 1px solid;
        border-color: 240201;
    }
    .coupon_box table {
        border-collapse: separate !important;
        width: 100%;
        display: block;
    }
    .coupon_box table tbody {
        display: block;
    }
    .coupon_box table tbody tr {
        display: block;
        width: 100%;
    }
    .coupon_title {
        width: 100%;
        box-sizing: border-box;
        background: #fff7e5;
        vertical-align: middle;
        text-align: center;
        display: block;
        padding: 10px 20px;
    }
    .coupon_naiyou {
        width: 100%;
        border-left: none;
        box-sizing: border-box;
        background: #fff;
        display: block;
        padding-bottom: 20px;
    }
    .coupon_naiyou table {
        width: 100%;
        padding: 10px 20px;
        box-sizing: border-box;
        text-align: left;
    }
    .coupon_naiyou table td {}
    .coupon_naiyou table tr td {}
    .coupon_naiyou .expire {
        background: #fff7e5;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 10px;
        padding: 10px;
    }
    .coupon_attention {
        color: #F00;
        border: thin solid #CCC;
    }
    #concept p {
        line-height: 1.6;
        text-align: left;
    }
    h3 {
        margin-bottom: 20px;
    }
}
.menulink a {
    padding: 5px;
    width: 48%;
}
