@charset "UTF-8";
/****************************************************
 * Stylesheet
 *
 * 1.リセット
 * 2.共通設定
 * 3.レイアウト設定
 * 4.テンプレートスタイル
 * 5.コンテンツスタイル
 * 6.装飾
 * 7.印刷用調整
 * 
 ****************************************************/
/****************************************************
 * 1.リセット
 ****************************************************/
/*!
 YUI 3.18.1 (build f7e7bcb)
 Copyright 2014 Yahoo! Inc. All rights reserved.
 Licensed under the BSD License.
 http://yuilibrary.com/license/
 */
html {
  color: #000;
  background: #FFF;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  *font-size: 100%;
}

legend {
  color: #000;
}

/****************************************************
 * 2.共通
 ****************************************************/
html {
  background-color: transparent;
  background-image: none;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 10px;
  letter-spacing: 0.05em;
  color: #2E2825;
}
@media screen and (max-width: 1100px) and (min-width: 768px) {
  html {
    font-size: 0.90909vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.60756vw;
  }
}

body {
  font-size: 1.6rem;
  background-color: #F0EEE6;
}
@media screen and (max-width: 767px) {
  body {
    -webkit-text-size-adjust: 100%;
  }
}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  max-width: 100%;
}

input {
  outline: none;
}
input:focus {
  outline: none;
}
input[type="submit"] {
  -webkit-appearance: none;
}

figure {
  margin: 0;
  padding: 0;
}

a {
  color: #2E2825;
  text-decoration: none;
  outline: none;
}
a:focus {
  outline: none;
}
@media screen and (min-width: 768px) {
  a:hover {
    text-decoration: underline;
  }
  a:hover img {
    opacity: 0.6;
  }
  a[href^="tel:"] {
    cursor: default;
  }
  a[href^="tel:"]:hover {
    text-decoration: none;
  }
  a[href^="tel:"] img {
    opacity: 1 !important;
  }
  a img {
    -moz-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
}

@media screen and (min-width: 768px) {
  .pcNone {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .spNone {
    display: none !important;
  }
}

.inner {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
}
.inner:after {
  content: "";
  display: block;
  clear: both;
}

/****************************************************
 * 3.レイアウト設定
 ****************************************************/
.container {
  width: 100%;
  min-width: 360px;
  overflow: hidden;
}
.container .row {
  width: 100%;
}
.container .row:after {
  content: "";
  display: block;
  clear: both;
}
.container .row .column {
  float: left;
}
.container .row .column:last-child {
  float: right;
}
@media screen and (max-width: 767px) {
  .container .row .column {
    width: 100%;
    float: none !important;
  }
}
.container .row .col_1 {
  width: 8.33333%;
}
@media screen and (max-width: 767px) {
  .container .row .col_1 {
    width: 100%;
  }
}
.container .row .col_2 {
  width: 16.66667%;
}
@media screen and (max-width: 767px) {
  .container .row .col_2 {
    width: 100%;
  }
}
.container .row .col_3 {
  width: 25%;
}
@media screen and (max-width: 767px) {
  .container .row .col_3 {
    width: 100%;
  }
}
.container .row .col_4 {
  width: 33.33333%;
}
@media screen and (max-width: 767px) {
  .container .row .col_4 {
    width: 100%;
  }
}
.container .row .col_5 {
  width: 41.66667%;
}
@media screen and (max-width: 767px) {
  .container .row .col_5 {
    width: 100%;
  }
}
.container .row .col_6 {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .container .row .col_6 {
    width: 100%;
  }
}
.container .row .col_7 {
  width: 58.33333%;
}
@media screen and (max-width: 767px) {
  .container .row .col_7 {
    width: 100%;
  }
}
.container .row .col_8 {
  width: 66.66667%;
}
@media screen and (max-width: 767px) {
  .container .row .col_8 {
    width: 100%;
  }
}
.container .row .col_9 {
  width: 75%;
}
@media screen and (max-width: 767px) {
  .container .row .col_9 {
    width: 100%;
  }
}
.container .row .col_10 {
  width: 83.33333%;
}
@media screen and (max-width: 767px) {
  .container .row .col_10 {
    width: 100%;
  }
}
.container .row .col_11 {
  width: 91.66667%;
}
@media screen and (max-width: 767px) {
  .container .row .col_11 {
    width: 100%;
  }
}
.container .row .col_12 {
  width: 100%;
}

/****************************************************
 * 4.テンプレートスタイル
 ****************************************************/
/*ヘッダーブロック*/
#header {
  width: 100%;
  height: 7.5rem;
  background-color: rgba(255, 255, 255, 0.85);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 90;
}
@media screen and (max-width: 767px) {
  #header {
    height: 6.3rem;
    background-color: #F0EEE6;
    top: auto;
    bottom: 0;
    z-index: 99;
  }
}
#header .pc_header {
  padding-top: 1.25rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
#header .pc_header .logo {
  width: 21.8rem;
  margin-right: 5rem;
}
#header .pc_header .gNavi {
  margin-right: 2rem;
}
#header .pc_header .gNavi > ul {
  display: -webkit-flex;
  display: flex;
}
#header .pc_header .gNavi > ul > li {
  font-size: 2rem;
  border-right: solid 1px #2E2825;
  position: relative;
}
#header .pc_header .gNavi > ul > li:last-child {
  border-right: none;
}
#header .pc_header .gNavi > ul > li > a, #header .pc_header .gNavi > ul > li > span {
  padding: 0.25em 1em;
  font-weight: 700;
  text-decoration: none !important;
  display: block;
  position: relative;
}
#header .pc_header .gNavi > ul > li > a:after, #header .pc_header .gNavi > ul > li > span:after {
  width: 100%;
  height: 2px;
  content: '';
  background-color: #CF382B;
  position: absolute;
  bottom: 0;
  left: 0;
  -moz-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
#header .pc_header .gNavi > ul > li:hover a:after, #header .pc_header .gNavi > ul > li:hover span:after {
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}
#header .pc_header .gNavi > ul > li.submenu > ul {
  width: 100%;
  padding: 0.5em 0;
  background-color: #FFFBF8;
  position: absolute;
  display: none;
  top: 100%;
  left: 0;
}
#header .pc_header .gNavi > ul > li.submenu > ul li {
  font-size: 1.8rem;
  text-align: center;
}
#header .pc_header .gNavi > ul > li.submenu > ul li a {
  padding: 0.5em;
  display: block;
  position: relative;
}
#header .pc_header .gNavi > ul > li.submenu > ul li a:after {
  width: 100%;
  height: 2px;
  content: '';
  background-color: #CF382B;
  position: absolute;
  bottom: 0;
  left: 0;
  -moz-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
#header .pc_header .gNavi > ul > li.submenu > ul li a:hover {
  text-decoration: none;
}
#header .pc_header .gNavi > ul > li.submenu > ul li a:hover:after {
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}
#header .pc_header .yoyaku a {
  padding: 0.25em 0.5em;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #ffffff;
  background-color: #CF382B;
  display: inline-block;
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
#header .pc_header .yoyaku a:hover {
  text-decoration: none;
  -moz-transform: scale(1.2, 1.2);
  -ms-transform: scale(1.2, 1.2);
  -webkit-transform: scale(1.2, 1.2);
  transform: scale(1.2, 1.2);
}
#header .sp_fix_bar {
  display: -webkit-flex;
  display: flex;
}
#header .sp_fix_bar .yoyaku_btn {
  width: 45%;
  height: 6.3rem;
}
#header .sp_fix_bar .yoyaku_btn a {
  width: 100%;
  height: 6.3rem;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 6.3rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #ffffff;
  background-color: #E38000;
  display: block;
}
#header .sp_fix_bar .tel_btn {
  width: 20%;
  padding: 0.4rem 0;
  border-right: solid 1px #2E2825;
}
#header .sp_fix_bar .tel_btn a {
  width: 5.5rem;
  margin: 0 auto;
  display: block;
}
#header .sp_fix_bar .map_btn {
  width: 20%;
  padding: 0.4rem 0;
  border-right: solid 1px #2E2825;
}
#header .sp_fix_bar .map_btn a {
  width: 5.5rem;
  margin: 0 auto;
  display: block;
}
#header .sp_fix_bar .sp_menu_open {
  width: 15%;
  padding-top: 1.4rem;
}
#header .sp_fix_bar .sp_menu_open img {
  height: 3.5rem;
  margin: 0 auto;
  display: block;
}
#header .sp_fix_bar .sp_menu {
  width: 100%;
  height: 100vh;
  display: none;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
#header .sp_fix_bar .sp_menu .box {
  padding: 5rem 3rem;
  background-color: #FFFBF8;
  border: solid 2rem #162447;
  position: relative;
}
#header .sp_fix_bar .sp_menu .sp_menu_close {
  width: 2.7rem;
  position: absolute;
  top: 1em;
  right: 1em;
}
#header .sp_fix_bar .sp_menu .tel {
  width: 22.3rem;
  margin: 0 auto;
}
#header .sp_fix_bar .sp_menu .yoyaku {
  margin: 1em 0;
  text-align: center;
}
#header .sp_fix_bar .sp_menu .yoyaku a {
  padding: 0.5em 1em;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #ffffff;
  background-color: #E38000;
  display: inline-block;
}
#header .sp_fix_bar .sp_menu .menu li {
  margin-bottom: 1em;
  padding-bottom: 1em;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  background-image: url("../img/sp_menu_line.png");
  background-repeat: repeat-x;
  background-position: center bottom;
}
#header .sp_fix_bar .sp_menu .menu li a {
  width: 100%;
  color: #162447;
  display: block;
}
#header .sp_fix_bar .sp_menu .menu li a span {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
}
#header .sp_fix_bar .sp_menu .sns {
  text-align: center;
  letter-spacing: -0.4em;
}
#header .sp_fix_bar .sp_menu .sns > * {
  display: inline-block;
  letter-spacing: normal;
}
#header .sp_fix_bar .sp_menu .sns a {
  width: 3rem;
}
#header .sp_fix_bar .sp_menu .sns a + a {
  margin-left: 2rem;
}
#header .sp_fix_bar .sp_menu .logo {
  margin-top: 4rem;
}
#header .sp_fix_bar .sp_menu .logo img {
  width: 10rem;
  margin: 0 auto;
  display: block;
}

/*フッターブロック*/
#footer {
  padding: 6rem 0;
  color: #F0EEE6;
  background-color: #162447;
}
@media screen and (max-width: 767px) {
  #footer {
    padding: 4rem 0 10rem 0;
  }
}
#footer .pagetop {
  width: 11rem;
  display: none;
  position: fixed;
  bottom: 5%;
  right: 5%;
  z-index: 90;
}
#footer .inner_in {
  width: 76%;
  margin: 0 auto;
}
#footer .logo img {
  width: 17rem;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 767px) {
  #footer .logo img {
    width: 10rem;
  }
}
#footer .img {
  margin-top: 3rem;
}
#footer .contact {
  margin: 3rem 0;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  #footer .contact {
    display: block;
  }
}
#footer .contact .tel {
  width: 42rem;
}
@media screen and (max-width: 767px) {
  #footer .contact .tel {
    width: 25rem;
    margin-bottom: 1em;
  }
}
#footer .contact .yoyaku {
  width: 28rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #footer .contact .yoyaku {
    width: auto;
  }
}
#footer .contact .yoyaku a {
  width: 100%;
  padding: 0.25em 0.5em;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #F0EEE6;
  background-color: #E38000;
  display: inline-block;
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
@media screen and (max-width: 767px) {
  #footer .contact .yoyaku a {
    width: auto;
    padding: 0.5em 1em;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  #footer .contact .yoyaku a:hover {
    text-decoration: none;
    -moz-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }
}
#footer .shop_data {
  margin-bottom: 8rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #footer .shop_data {
    margin-bottom: 3rem;
  }
}
#footer .shop_data table {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #footer .shop_data table {
    margin-bottom: 3rem;
  }
}
#footer .shop_data table th {
  padding-right: 1em;
  padding-bottom: 0.5em;
  font-size: 2rem;
  text-align: right;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  #footer .shop_data table th {
    font-size: 1.2rem;
  }
}
#footer .shop_data table td {
  padding-bottom: 0.5em;
  font-size: 2rem;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  #footer .shop_data table td {
    font-size: 1.2rem;
  }
}
#footer .shop_data .sns {
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  letter-spacing: -0.4em;
}
#footer .shop_data .sns > * {
  display: inline-block;
  letter-spacing: normal;
}
@media screen and (max-width: 767px) {
  #footer .shop_data .sns {
    position: static;
  }
}
#footer .shop_data .sns a {
  width: 4rem;
}
@media screen and (max-width: 767px) {
  #footer .shop_data .sns a {
    width: 3rem;
  }
}
#footer .shop_data .sns a + a {
  margin-left: 2rem;
}
#footer .copyright {
  font-size: 1.5rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #footer .copyright {
    font-size: 1.1rem;
  }
}

/****************************************************
 * 5.コンテンツスタイル
 ****************************************************/
/*TOPページ*/
.top_noren {
  width: 100%;
  height: 31.4rem;
  background-image: url("../img/top_noren.png");
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center bottom;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 95;
  -moz-transition: top 0.5s ease-in-out;
  -o-transition: top 0.5s ease-in-out;
  -webkit-transition: top 0.5s ease-in-out;
  transition: top 0.5s ease-in-out;
}
@media screen and (max-width: 767px) {
  .top_noren {
    height: 18rem;
    position: absolute !important;
    top: 0 !important;
  }
}
.top_noren.noren_up {
  top: -31.4rem;
}
.top_noren.noren_fixed {
  position: fixed;
}
.top_noren .inner_in {
  width: 87%;
  margin: 0 auto;
  padding-top: 3.3rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding-top: 2rem;
}
@media screen and (max-width: 767px) {
  .top_noren .inner_in {
    width: 100%;
    display: block;
  }
}
.top_noren .inner_in .logo {
  width: 15.5rem;
}
@media screen and (max-width: 767px) {
  .top_noren .inner_in .logo {
    width: 10rem;
    margin: 0 auto;
  }
}
.top_noren .inner_in .menu {
  width: 14.1rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.top_noren .inner_in .menu a {
  width: 5.1rem;
}

.top_mv {
  background-image: url("../img/top_mv_bg.jpg");
  -webkit-background-size: cover;
  background-size: cover;
  position: relative;
  z-index: 10;
}
.top_mv .slider {
  width: 100%;
  max-width: 1440px;
  height: 764px !important;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .top_mv .slider {
    height: 140vw !important;
  }
}
.top_mv .text {
  width: 55%;
  position: absolute;
  top: 21rem;
  left: 28%;
}
.top_mv .scroll {
  padding-left: 1em;
  font-size: 2.1rem;
  letter-spacing: 0.1em;
  color: #FFFBF8;
  position: absolute;
  left: 50%;
  bottom: -5rem;
}
@media screen and (max-width: 767px) {
  .top_mv .scroll {
    font-size: 1.1rem;
    bottom: 1.5rem;
  }
}
.top_mv .scroll:before {
  width: 1px;
  height: 12rem;
  content: '';
  background-color: #F0EEE6;
  position: absolute;
  top: -150%;
  left: 0;
  animation: mv_scroll forwards 0.5s linear infinite alternate;
}
@media screen and (max-width: 767px) {
  .top_mv .scroll:before {
    height: 6rem;
  }
}

@keyframes mv_scroll {
  from {
    top: -150%;
  }
  to {
    top: -100%;
  }
}
.top_beginning {
  padding: 15rem 0rem 45rem 0;
  color: #F0EEE6;
  background-color: #162447;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top_beginning {
    padding: 8rem 0 28rem 0;
  }
}
.top_beginning:after {
  width: 100%;
  height: 37.5rem;
  content: '';
  background-image: url("../img/top_beginning_fig.png");
  -webkit-background-size: auto 100%;
  background-size: auto 100%;
  background-repeat: repeat-x;
  background-position: center bottom;
  position: absolute;
  bottom: 3rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .top_beginning:after {
    height: 15rem;
    bottom: 5rem;
  }
}
.top_beginning p {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 2.5rem;
  font-weight: 900;
  line-height: 3;
  letter-spacing: 0.1em;
  text-align: left;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .top_beginning p {
    font-size: 1.7rem;
  }
}

.top_lemon_sour {
  padding: 16rem 0 10rem 0;
  color: #F0EEE6;
  background-color: #000000;
  background-image: url("../img/top_lemon_sour_title_bg.jpg");
  -webkit-background-size: auto 68rem;
  background-size: auto 68rem;
  background-repeat: repeat-x;
  background-position: center top;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top_lemon_sour {
    padding: 6rem 0;
    -webkit-background-size: auto 24.5rem;
    background-size: auto 24.5rem;
  }
}
.top_lemon_sour .title {
  width: 100rem;
  margin: 0 auto 4rem auto;
}
@media screen and (max-width: 767px) {
  .top_lemon_sour .title {
    width: 32.3rem;
  }
}
.top_lemon_sour p {
  margin-bottom: 6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_lemon_sour p {
    margin-bottom: 3rem;
    font-size: 1.3rem;
  }
}
.top_lemon_sour .lemon_sour_list {
  width: 100%;
  max-width: 890px;
  margin: 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.top_lemon_sour .lemon_sour_list li {
  width: 33.333%;
  padding: 0 1em;
  text-align: center;
}
.top_lemon_sour .lemon_sour_list li:nth-child(1), .top_lemon_sour .lemon_sour_list li:nth-child(2) {
  width: 35%;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .top_lemon_sour .lemon_sour_list li {
    width: 50% !important;
    margin-bottom: 1em !important;
  }
  .top_lemon_sour .lemon_sour_list li:nth-child(1) {
    width: 80% !important;
  }
}

.top_meet_desh {
  padding: 10rem 0 15rem 0;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .top_meet_desh {
    padding: 3rem 0 18.5rem 0;
  }
}
.top_meet_desh .inner_in {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}
.top_meet_desh h2 {
  margin-bottom: 6rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_meet_desh h2 {
    margin-bottom: 2rem;
  }
}
.top_meet_desh p {
  width: 35.4rem;
  margin: 0 3.5rem 1rem auto;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .top_meet_desh p {
    width: auto;
    margin: 0 auto;
    font-size: 1.3rem;
    text-align: center;
  }
}
.top_meet_desh .btn {
  margin-right: 3.5rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .top_meet_desh .btn {
    margin: 0;
    position: absolute;
    bottom: -16rem;
    right: 3rem;
  }
}
.top_meet_desh .btn a {
  padding: 0.1em 0.5em;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #F0EEE6;
  border: solid 1px #2E2825;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .top_meet_desh .btn a {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 768px) {
  .top_meet_desh .btn a:hover {
    text-decoration: none;
    color: #F0EEE6;
    background-color: #2E2825;
  }
}
.top_meet_desh .img01 {
  width: 48.2rem;
  position: absolute;
  bottom: -22rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  .top_meet_desh .img01 {
    width: 18.4rem;
    left: 0;
    bottom: -21rem;
  }
}
.top_meet_desh .img02 {
  width: 44rem;
  position: absolute;
  bottom: -33rem;
  right: 3.5rem;
}
@media screen and (max-width: 767px) {
  .top_meet_desh .img02 {
    width: 18rem;
    bottom: -12rem;
    right: -2rem;
  }
}

.top_appetizers {
  padding: 20rem 0 10rem 0;
  background-color: #CEB495;
}
@media screen and (max-width: 767px) {
  .top_appetizers {
    padding: 4rem 0 5rem 0;
  }
}
.top_appetizers .inner_in {
  max-width: 900px;
  margin: 0 auto;
}
.top_appetizers h2 {
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_appetizers h2 {
    margin-bottom: 2rem;
  }
}
.top_appetizers p {
  width: 78%;
  margin: 0 auto 4rem auto;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .top_appetizers p {
    width: auto;
    margin: 0 auto 2rem auto;
    font-size: 1.3rem;
    text-align: center;
  }
}
.top_appetizers .foodlist {
  margin: 0 3.5rem 4rem 3.5rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top_appetizers .foodlist {
    margin: 0 1.5rem 1rem 1.5rem;
  }
}
.top_appetizers .foodlist li {
  width: 30%;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .top_appetizers .foodlist li {
    width: 46%;
    margin-bottom: 2rem;
  }
}
.top_appetizers .foodlist li figure {
  margin: 0;
  padding: 0;
}
.top_appetizers .foodlist li figure figcaption {
  margin-top: 0.5em;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .top_appetizers .foodlist li figure figcaption {
    font-size: 1rem;
  }
}
.top_appetizers .btn {
  margin-right: 3.5rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .top_appetizers .btn {
    margin-right: 1.5rem;
  }
}
.top_appetizers .btn a {
  padding: 0.1em 0.5em;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #F0EEE6;
  border: solid 1px #2E2825;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .top_appetizers .btn a {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 768px) {
  .top_appetizers .btn a:hover {
    text-decoration: none;
    color: #F0EEE6;
    background-color: #2E2825;
  }
}

.top_banquet {
  padding: 11rem 0 10rem 0;
}
@media screen and (max-width: 767px) {
  .top_banquet {
    padding: 5rem 0;
  }
}
.top_banquet .inner_in {
  max-width: 900px;
  margin: 0 auto;
}
.top_banquet h2 {
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_banquet h2 {
    margin-bottom: 2rem;
  }
}
.top_banquet .box {
  width: 88%;
  margin: 0 auto 6rem auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top_banquet .box {
    width: auto;
    margin-bottom: 1.5rem;
  }
}
.top_banquet .box .text {
  width: 32rem;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .text {
    width: 26rem;
    margin: 0 auto 2.5rem auto;
  }
}
.top_banquet .box .text p {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .text p {
    font-size: 1.3rem;
    text-align: center;
  }
}
.top_banquet .box .text hr {
  width: 100%;
  height: 1px;
  margin: 1em 0;
  border: none;
  border-bottom: solid 1px #2E2825;
}
.top_banquet .box .text dl dt {
  margin-bottom: 0.5em;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .text dl dt {
    font-size: 1.4rem;
  }
}
.top_banquet .box .text dl dd {
  margin-bottom: 0.25em;
  font-size: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .text dl dd {
    font-size: 1.2rem;
    text-align: center;
  }
}
.top_banquet .box .text dl dd span {
  width: 18rem;
  text-align: left;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .text dl dd span {
    width: 10rem;
  }
}
.top_banquet .box .img {
  width: 50.7rem;
  position: absolute;
  top: 0;
  left: 35rem;
}
@media screen and (max-width: 767px) {
  .top_banquet .box .img {
    width: 29.1rem;
    margin: 0 auto;
    position: static;
  }
}
.top_banquet .btn {
  text-align: center;
}
.top_banquet .btn a {
  padding: 0.25em 0.5em;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #F0EEE6;
  background-color: #E38000;
  display: inline-block;
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
@media screen and (max-width: 767px) {
  .top_banquet .btn a {
    width: auto;
    padding: 0.5em 1em;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .top_banquet .btn a:hover {
    text-decoration: none;
    -moz-transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }
}

.top_store_info {
  padding: 8rem 0 10rem 0;
  color: #F0EEE6;
  background-color: #162447;
}
@media screen and (max-width: 767px) {
  .top_store_info {
    padding: 5rem 0;
  }
}
.top_store_info .inner_in {
  width: 82%;
  margin: 0 auto;
}
.top_store_info h2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 3.2rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top_store_info h2 {
    font-size: 1.8rem;
  }
}
.top_store_info .map {
  width: 53.9rem;
  margin: 5rem auto;
}
@media screen and (max-width: 767px) {
  .top_store_info .map {
    width: 26rem;
    margin: 3rem auto;
  }
}
.top_store_info .flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex {
    margin: 0 1rem;
    display: block;
  }
}
.top_store_info .flex .img {
  width: 58%;
  padding-top: 2.4rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .img {
    width: 100%;
    margin-bottom: 3rem;
    padding-top: 0;
  }
}
.top_store_info .flex .img figure {
  width: 46%;
  text-align: center;
}
.top_store_info .flex .img figure figcaption {
  margin-top: 0.5em;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .img figure figcaption {
    font-size: 1.1rem;
  }
}
.top_store_info .flex .text {
  width: 37%;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .text {
    width: auto;
    margin: 0 1rem;
  }
}
.top_store_info .flex .text h3 {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  font-size: 2.4rem;
  font-weight: 800;
  border-bottom: solid 1px #F0EEE6;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .text h3 {
    font-size: 1.8rem;
    letter-spacing: 0.1em;
  }
}
.top_store_info .flex .text h3 span {
  font-size: 7rem;
  line-height: 2.4rem;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .text h3 span {
    font-size: 5rem;
    line-height: 1.8rem;
  }
}
.top_store_info .flex .text p {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .top_store_info .flex .text p {
    margin-bottom: 1em;
    font-size: 1.1rem;
  }
}
.top_store_info .annotation {
  margin-top: 1em;
  font-size: 1.2rem;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .top_store_info .annotation {
    margin: 1em 2rem 0 2rem;
    font-size: 1rem;
    text-align: left;
  }
}

.top_access {
  padding: 8rem 0 10rem 0;
}
@media screen and (max-width: 767px) {
  .top_access {
    padding: 5rem 0;
  }
}
.top_access .inner_in {
  width: 82%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .top_access .inner_in {
    width: 100%;
  }
}
.top_access h2 {
  margin-bottom: 3rem;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 3.2rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  color: #162447;
}
@media screen and (max-width: 767px) {
  .top_access h2 {
    margin-bottom: 2rem;
    font-size: 1.8rem;
  }
}
.top_access p {
  text-align: center;
  font-size: 2.4rem;
  color: #162447;
}
@media screen and (max-width: 767px) {
  .top_access p {
    font-size: 1.2rem;
  }
}
.top_access p i {
  width: 2.6rem;
  height: 3.9rem;
  margin-right: 0.5em;
  background-image: url("../img/top_access_icon01.png");
  -webkit-background-size: cover;
  background-size: cover;
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .top_access p i {
    width: 1.3rem;
    height: 1.9rem;
  }
}
.top_access .map {
  width: 100%;
  height: 55.7rem;
  margin: 3rem 0;
}
@media screen and (max-width: 767px) {
  .top_access .map {
    width: 110%;
    height: 29rem;
    margin: 2rem -5%;
  }
}
.top_access .map iframe {
  width: 100%;
  height: 100%;
}
.top_access .root {
  width: 72%;
  margin: 0 auto;
  font-size: 1.5rem;
  line-height: 2;
  color: #162447;
}
@media screen and (max-width: 767px) {
  .top_access .root {
    width: 90%;
    font-size: 0.9rem;
  }
}

/*下層ページ*/
.menupage_mv {
  width: 100%;
  height: 63rem;
  margin-bottom: 10rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .menupage_mv {
    height: 21.7rem;
    margin-bottom: 3rem;
  }
}
.menupage_mv picture {
  width: 100%;
  height: 100%;
}
.menupage_mv picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.menupage_page_title {
  margin-bottom: 8rem;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 6rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .menupage_page_title {
    margin-bottom: 4rem;
    font-size: 1.8rem;
  }
}

.menupage_osusume .inner_in {
  width: 93%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .menupage_osusume .inner_in {
    width: 100%;
  }
}
.menupage_osusume .inner_in .box {
  border: solid 0.4rem #E38000;
}
.menupage_osusume .inner_in .box h3 {
  background-color: #F0EEE6;
  position: absolute;
  top: 0;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.menupage_osusume .inner_in .menupage_tax_annotation {
  font-size: 1.5rem;
  display: block;
  position: absolute;
  top: -2em;
  right: 0;
}
@media screen and (max-width: 767px) {
  .menupage_osusume .inner_in .menupage_tax_annotation {
    margin-top: 2.5em;
    font-size: 1.1rem;
    text-align: center;
    position: static;
  }
}

.menupage_other_menu {
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu {
    margin-bottom: 3rem;
  }
}
.menupage_other_menu .inner_in {
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .inner_in {
    width: 82%;
  }
}
.menupage_other_menu h3 {
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu h3 {
    margin-bottom: 2.5rem;
  }
  .menupage_other_menu h3 img {
    width: 150%;
    max-width: none;
    margin: 0 -25%;
  }
}
.menupage_other_menu * + h3 {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu * + h3 {
    margin-top: 3rem;
  }
}
.menupage_other_menu .flex {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .flex {
    display: block;
  }
}
.menupage_other_menu .flex .menupage_menu_list {
  width: 46%;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .flex .menupage_menu_list {
    width: 100%;
  }
}
.menupage_other_menu .menupage_menu_list {
  width: 75%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_list {
    width: 100%;
  }
}
.menupage_other_menu .menupage_menu_list li {
  margin-bottom: 1rem;
  background-image: url("../img/menu_line.png");
  background-repeat: no-repeat;
  background-position: left center;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
.menupage_other_menu .menupage_menu_list li .name {
  padding-right: 0.25em;
  font-size: 1.8rem;
  font-weight: 700;
  display: inline-block;
  background-color: #F0EEE6;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_list li .name {
    font-size: 1.2rem;
  }
}
.menupage_other_menu .menupage_menu_list li .price {
  padding-left: 0.25em;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #F0EEE6;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_list li .price {
    font-size: 1.2rem;
  }
}
.menupage_other_menu .menupage_menu_list li .price span {
  font-size: 2.2rem;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_list li .price span {
    font-size: 1.2rem;
  }
}
.menupage_other_menu .menupage_menu_img {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_img {
    margin-top: 3rem;
  }
}
.menupage_other_menu .menupage_menu_img ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_img ul {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.menupage_other_menu .menupage_menu_img ul li img {
  width: 100%;
}
.menupage_other_menu .menupage_menu_img.col4 ul li {
  width: 23.1%;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_menu_img.col4 ul li {
    width: 48%;
    margin-bottom: 2%;
  }
}
.menupage_other_menu .menupage_menu_img.col3 ul li {
  width: 31.5%;
}
.menupage_other_menu .menupage_tax_annotation {
  margin-top: 6rem;
  font-size: 1.5rem;
  text-align: center;
  display: block;
}
@media screen and (max-width: 767px) {
  .menupage_other_menu .menupage_tax_annotation {
    margin-top: 3rem;
    font-size: 1.1rem;
  }
}

.food_osusume {
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .food_osusume {
    margin-bottom: 4rem;
  }
}
.food_osusume .box {
  padding: 8rem 10rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .box {
    padding: 3.5rem 3rem;
  }
}
.food_osusume h3 {
  width: 44.9rem;
}
@media screen and (max-width: 767px) {
  .food_osusume h3 {
    width: 19rem;
  }
}
.food_osusume .osusume_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list {
    display: block;
  }
}
.food_osusume .osusume_list li picture {
  width: 100%;
}
.food_osusume .osusume_list li .text h4 {
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li .text h4 {
    font-size: 1.2rem;
    display: inline-block;
  }
}
.food_osusume .osusume_list li .text h4 span {
  line-height: 1.8;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSI3MCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4wIi8+PHN0b3Agb2Zmc2V0PSI3MCUiIHN0b3AtY29sb3I9IiNlMzgwMDAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlMzgwMDAiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(70%, rgba(0, 0, 0, 0)), color-stop(70%, #e38000), color-stop(100%, #e38000));
  background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 70%, #e38000 70%, #e38000);
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 70%, #e38000 70%, #e38000);
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 70%, #e38000 70%, #e38000);
}
.food_osusume .osusume_list li .text .price {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li .text .price {
    font-size: 1.3rem;
  }
}
.food_osusume .osusume_list li .text .price span {
  font-size: 2.5rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li .text .price span {
    font-size: 1.3rem;
  }
}
.food_osusume .osusume_list li .text p {
  margin-top: 1em;
  font-size: 1.2rem;
}
.food_osusume .osusume_list li.osusume01 {
  width: 100%;
  margin-bottom: 8rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume01 {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume01 picture img {
    width: calc(100% + 1.1rem);
    max-width: none;
    margin-left: -1.1rem;
  }
}
.food_osusume .osusume_list li.osusume01 .text {
  width: 31%;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume01 .text {
    width: 100%;
    position: static;
  }
  .food_osusume .osusume_list li.osusume01 .text .price {
    text-align: right;
  }
}
.food_osusume .osusume_list li.osusume02 {
  width: 48%;
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume02 {
    width: 100%;
    margin-bottom: 3rem;
  }
}
.food_osusume .osusume_list li.osusume02 picture img {
  width: calc(100% + 2.4rem);
  max-width: none;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume02 picture img {
    width: calc(100% + 0.6rem);
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume02 .text {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
}
.food_osusume .osusume_list li.osusume03 {
  width: 48%;
  margin-bottom: 6rem;
  padding-top: 1rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume03 {
    width: 100%;
    margin-bottom: 3rem;
    padding-top: 0;
  }
}
.food_osusume .osusume_list li.osusume03 picture img {
  width: calc(100% + 5rem);
  max-width: none;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume03 picture img {
    width: calc(100% + 1.3rem);
  }
}
.food_osusume .osusume_list li.osusume03 .text {
  padding-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume03 .text {
    padding-top: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
}
.food_osusume .osusume_list li.osusume04 {
  width: 32%;
  padding-top: 0.8rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume04 {
    width: 100%;
    margin-bottom: 1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume04 picture {
    width: 45%;
  }
}
.food_osusume .osusume_list li.osusume04 picture img {
  width: calc(100% + 2.2rem);
  max-width: none;
  margin-left: -2.2rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume04 picture img {
    width: calc(100% + 1.1rem);
    margin-left: -1.1rem;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume04 .text {
    width: 55%;
    padding-right: 1em;
  }
}
.food_osusume .osusume_list li.osusume05 {
  width: 32%;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume05 {
    width: 100%;
    margin-bottom: 1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume05 picture {
    width: 45%;
  }
}
.food_osusume .osusume_list li.osusume05 picture img {
  width: calc(100% + 0.8rem);
  max-width: none;
  margin-left: -0.8rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume05 picture img {
    width: calc(100% + 0.5rem);
    margin-left: -0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume05 .text {
    width: 55%;
    padding-right: 1em;
  }
}
.food_osusume .osusume_list li.osusume06 {
  width: 32%;
  padding-top: 3rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume06 {
    width: 100%;
    padding-top: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-align-items: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume06 picture {
    width: 45%;
  }
}
.food_osusume .osusume_list li.osusume06 picture img {
  width: calc(100% + 3rem);
  max-width: none;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume06 picture img {
    width: calc(100% + 1rem);
    margin-right: -1rem;
  }
}
.food_osusume .osusume_list li.osusume06 .text {
  margin-top: -2.7rem;
}
@media screen and (max-width: 767px) {
  .food_osusume .osusume_list li.osusume06 .text {
    width: 55%;
    margin-top: 0;
    padding-right: 1em;
  }
}

.food_menu_content .menupage_menu_list li.daily_menu {
  background: none;
}
.food_menu_content .menupage_menu_list li.daily_menu .price {
  padding-left: 0;
  font-size: 1.1rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .food_menu_content .menupage_menu_list li.daily_menu .price {
    font-size: 0.7rem;
  }
}

.drink_osusume {
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .drink_osusume {
    margin-bottom: 3rem;
  }
}
.drink_osusume .box {
  padding: 6rem 4rem;
}
@media screen and (max-width: 767px) {
  .drink_osusume .box {
    padding: 3.8rem;
  }
}
.drink_osusume h3 {
  width: 42.2rem;
  padding: 0 1em;
}
@media screen and (max-width: 767px) {
  .drink_osusume h3 {
    width: 18rem;
  }
}
.drink_osusume .osusume_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.drink_osusume .osusume_list li picture {
  width: 100%;
}
.drink_osusume .osusume_list li.osusume01 {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .drink_osusume .osusume_list li.osusume01 img {
    width: calc(100% + 2rem);
    max-width: none;
    margin-left: -2rem;
  }
}
.drink_osusume .osusume_list li.osusume02 {
  width: 23%;
}
@media screen and (max-width: 767px) {
  .drink_osusume .osusume_list li.osusume02 {
    width: 46%;
  }
}
.drink_osusume .osusume_list li.osusume03 {
  width: 23%;
}
@media screen and (max-width: 767px) {
  .drink_osusume .osusume_list li.osusume03 {
    width: 46%;
  }
}
.drink_osusume .osusume_list li.osusume04 {
  width: 23%;
}
@media screen and (max-width: 767px) {
  .drink_osusume .osusume_list li.osusume04 {
    width: 46%;
  }
}
.drink_osusume .osusume_list li.osusume05 {
  width: 23%;
}
@media screen and (max-width: 767px) {
  .drink_osusume .osusume_list li.osusume05 {
    width: 46%;
  }
}

.drink_menu_content .menupage_menu_list li.osusume {
  background-position: left 35%;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.drink_menu_content .menupage_menu_list li.osusume .annotation {
  width: 100%;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .menupage_menu_list li.osusume .annotation {
    font-size: 0.8rem;
  }
}
.drink_menu_content .monthly_wain {
  text-align: center;
}
.drink_menu_content .monthly_wain img {
  width: 41rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .monthly_wain img {
    width: 20.5rem;
  }
}
.drink_menu_content .monthly_wain p {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .monthly_wain p {
    font-size: 1.1rem;
  }
}
.drink_menu_content .cocktail_menu {
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu {
    width: 100%;
  }
}
.drink_menu_content .cocktail_menu .text1 {
  text-align: center;
}
.drink_menu_content .cocktail_menu .text1 .price {
  margin-bottom: 0.5rem;
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text1 .price {
    font-size: 1.2rem;
  }
}
.drink_menu_content .cocktail_menu .text1 .price span {
  font-size: 2.3rem;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text1 .price span {
    font-size: 1.2rem;
  }
}
.drink_menu_content .cocktail_menu .text1 .annotation {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text1 .annotation {
    font-size: 1rem;
  }
}
.drink_menu_content .cocktail_menu .text1 .kinds {
  font-size: 1.8rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text1 .kinds {
    font-size: 1.1rem;
  }
}
.drink_menu_content .cocktail_menu .text2 {
  text-align: center;
}
.drink_menu_content .cocktail_menu .text2:before {
  width: 100%;
  height: 1px;
  margin: 2rem 0;
  content: '';
  background-image: url("../img/menu_line.png");
  display: block;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text2:before {
    margin: 1rem 0;
  }
}
.drink_menu_content .cocktail_menu .text2 p {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: left;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .drink_menu_content .cocktail_menu .text2 p {
    font-size: 1.1rem;
    text-align: center;
  }
}

/****************************************************
 * 6.装飾
 ****************************************************/
.anim-box.fadeup {
  opacity: 0;
}
.anim-box.fadeup.is-animated {
  animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) 0.3s forwards;
}
.anim-box.matrix {
  overflow: hidden;
}
.anim-box.matrix > * {
  opacity: 0;
  transform: matrix(1, 0, 0, 1, 0, 100);
}
.anim-box.matrix.is-animated > * {
  animation: matrix 1.2s cubic-bezier(0.22, 1, 0.36, 1) 0.3s forwards;
}
.anim-box.underline > span {
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJlMjgyNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzJlMjgyNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2e2825), color-stop(100%, #2e2825));
  background-image: -moz-linear-gradient(#2e2825, #2e2825);
  background-image: -webkit-linear-gradient(#2e2825, #2e2825);
  background-image: linear-gradient(#2e2825, #2e2825);
  background-position: left bottom;
  -webkit-background-size: 0 2px;
  background-size: 0 2px;
  background-repeat: no-repeat;
}
.anim-box.underline.is-animated > span {
  animation: underline 2s linear 0.3s forwards;
}

@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes matrix {
  0% {
    opacity: 0;
    transform: matrix(1, 0, 0, 1, 0, 100);
  }
  10% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
  }
}
@keyframes underline {
  0% {
    -webkit-background-size: 0 2px;
    background-size: 0 2px;
  }
  100% {
    -webkit-background-size: 100% 2px;
    background-size: 100% 2px;
  }
}
/****************************************************
 * 7.印刷用調整
 ****************************************************/
@media print {
  @page {
    /* A4縦サイズ */
    size: 210mm 297mm;
  }
  html {
    font-size: 10pt !important;
  }

  body {
    margin: 0 !important;
    padding: 0 !important;
  }

  * {
    -webkit-print-color-adjust: exact;
  }

  .container {
    padding: 0 !important;
  }

  #header {
    position: static !important;
  }

  img {
    display: block !important;
  }
}
