@charset "UTF-8";
/*===============================
	config
================================*/
@import url("https://fonts.googleapis.com/css?family=Lato:300,400,700");
@import url("http://fonts.googleapis.com/earlyaccess/notosansjp.css");
nav {
  color: #e6e3dc;
  background: #5d4c36;
  width: 180px;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50px;
  text-align: center; }
  @media (max-width: 768px) {
    nav {
      display: none;
      background: none;
      top: 4em;
      bottom: auto;
      right: 0;
      left: 0;
      margin: auto;
      z-index: 10; } }
  @media (max-width: 480px) {
    nav {
      width: 100vw; } }

.l-navWrap__inner {
  height: 100vh;
  padding-top: 50px;
  position: relative; }
  @media (max-width: 768px) {
    .l-navWrap__inner {
      padding-top: 0;
      height: 63vh; } }

@media (max-width: 768px) {
  .l-navWrap__logo {
    width: 80px;
    margin: 0 auto; } }

@media (max-width: 480px) {
  .l-navWrap__logo {
    position: absolute;
    top: -6em;
    left: 1em; } }

@media (max-width: 768px) {
  .l-navWrap__logo img {
    width: 100%; } }

.l-navWrap__list {
  margin-top: 5em; }
  @media (max-width: 768px) {
    .l-navWrap__list {
      margin-top: 3em; } }
  .l-navWrap__list ul li {
    margin: 2em 0; }
    @media (max-width: 768px) {
      .l-navWrap__list ul li {
        margin: 1.3em 0; } }
    .l-navWrap__list ul li a {
      color: #e6e3dc; }

.l-navWrap__tel {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100px; }
  @media (max-width: 768px) {
    .l-navWrap__tel {
      bottom: 0; } }
  @media (max-width: 480px) {
    .l-navWrap__tel {
      bottom: -8em; } }

.l-header__gNav-hamburger {
  display: none; }
  @media (max-width: 768px) {
    .l-header__gNav-hamburger {
      position: fixed;
      top: 0;
      right: 0; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.l-header__gNav-hamburger {
  padding: 0;
  background: transparent;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  border: 0;
  margin: 0;
  overflow: visible; }
  @media (max-width: 768px) {
    .l-header__gNav-hamburger {
      display: inline-block; } }

.l-header__gNav-hamburger:hover {
  opacity: 1; }

.l-header__gNav-hamburger-box {
  width: 40px;
  height: 24px;
  padding: 12px;
  display: inline-block;
  position: relative; }

/*ハンバーガーの背景*/
.l-header__gNav-hamburger-bg {
  width: 70px;
  height: 60px;
  background: #5d4c36;
  border-radius: 0 0 10px 10px / 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px / 0 0 10px 10px;
  -moz-border-radius: 0 0 10px 10px / 0 0 10px 10px;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 1;
  transition: width 1s ease, height 1s ease; }

/*クリックしたとき*/
.-b__active {
  width: 100vw;
  height: 60vh;
  border-radius: 0;
  opacity: 1;
  overflow: hidden; }
  @media (max-width: 768px) {
    .-b__active {
      height: 72vh; } }
  @media (max-width: 480px) {
    .-b__active {
      height: 100vh; } }

.-b__active::before {
  content: "";
  position: absolute;
  margin: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-bottom: 1px solid #f1f1f1; }

.l-header__gNav-hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }

.l-header__gNav-hamburger-inner, .l-header__gNav-hamburger-inner::before, .l-header__gNav-hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease; }

.l-header__gNav-hamburger-inner::before, .l-header__gNav-hamburger-inner::after {
  content: "";
  display: block; }

.l-header__gNav-hamburger-inner::before {
  top: -10px; }

.l-header__gNav-hamburger-inner::after {
  bottom: -10px; }

/*
   * Spring(動き方)
   */
.hamburger--spring .l-header__gNav-hamburger-inner {
  top: 18px;
  transition: background-color 0s 0.13s linear; }

.hamburger--spring .l-header__gNav-hamburger-inner::before {
  top: 10px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring .l-header__gNav-hamburger-inner::after {
  top: 20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .l-header__gNav-hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent; }

.hamburger--spring.is-active .l-header__gNav-hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg); }

.hamburger--spring.is-active .l-header__gNav-hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg); }

body {
  background-image: url(../images/bg-texture.jpg); }

.l-wrapper {
  position: relative; }

header {
  width: 100vw; }

.l-header__image {
  width: 100vw; }
  .l-header__image img {
    width: 100%; }

header:after {
  content: "";
  border-bottom: 4px solid #5d4c36;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0; }

.c-content {
  width: 73vw;
  position: absolute;
  top: 20vw;
  left: 300px; }
  @media (max-width: 768px) {
    .c-content {
      right: 0;
      left: 0;
      margin: auto; } }
  .c-content-inner {
    position: relative; }
  .c-content-inner:before {
    content: url(../images/light.png);
    position: absolute;
    left: -60px;
    top: -2.5vw; }
    @media (max-width: 768px) {
      .c-content-inner:before {
        left: -6em; } }
    @media (max-width: 480px) {
      .c-content-inner:before {
        content: '';
        display: inline-block;
        width: 26px;
        height: 250px;
        background-image: url(../images/light.png);
        background-repeat: no-repeat;
        background-size: contain;
        left: -3em; } }
  .c-content-inner:after {
    content: url(../images/light.png);
    position: absolute;
    right: -30px;
    top: -2.5vw; }
    @media (max-width: 768px) {
      .c-content-inner:after {
        right: -6em; } }
    @media (max-width: 480px) {
      .c-content-inner:after {
        display: none; } }
  .c-content-info {
    margin-top: 40px; }
  .c-content-table {
    text-align: left; }
    .c-content-table th {
      border-bottom: 1px solid;
      padding-bottom: 5px; }
    .c-content-table td {
      padding: 7px; }

.blank {
  height: 100px; }

.c-br-sm {
  display: none; }
  @media (max-width: 480px) {
    .c-br-sm {
      display: block; } }

footer {
  position: fixed;
  bottom: 25vh;
  right: 20px;
  transform: rotate(-90deg);
  transform-origin: right bottom;
  letter-spacing: 0.1rem; }
  @media (max-width: 480px) {
    footer {
      bottom: 30vh; } }

/*===============================
	foundation
================================*/
body {
  font-family: "游ゴシック Medium", "游ゴシック体", "Lato", "Noto Sans JP", "Yu Gothic Medium", "YuGothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px; }

@font-face {
  font-family: "Garamond";
  src: url(../fonts/GARA.TTF); }

@font-face {
  font-family: "Garamond Bold";
  src: url(../fonts/GARABD.TTF); }

h2 {
  font-family: "Garamond";
  font-size: 2.5rem;
  font-weight: normal; }
  h2 span {
    font-size: .9rem; }

.sponly{
  display: none;
}
@media (max-width: 768px){
  .sponly{
    display: block !important;
  }
}

/*===============================
	index
================================*/
.l-index__enter {
  font-family: "Garamond";
  font-size: 30px; }

/*===============================
  concept
================================*/
.p-concept__info-text p {
  line-height: 2; }
  @media (max-width: 480px) {
    .p-concept__info-text p {
      font-size: 1rem; } }

/*===============================
  chef
================================*/
.p-chef__info table {
  font-size: 1rem; }
  .p-chef__info table th {
    font-weight: bold; }
  .p-chef__info table td {
    font-size: .9rem; }

/*===============================
  lunch & dinner
================================*/
.c-content-info {
  line-height: 2; }

.c-menu h2 {
  font-family: "游明朝","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN"; }

.c-menu-text {
  line-height: 2; }

.c-menu-table th {
  font-family: "Garamond";
  font-size: 1.2rem;
  font-weight: normal; }

.c-menu-table td {
  width: 224px;
  font-family: "游明朝","YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN";
  font-size: 1rem;
  line-height: 2; }

  .c-menu-table td .c-font-min{
    font-size: .8rem;
  }
  @media (max-width: 768px){
    .c-menu-table td .c-sp-min{
      font-size: .5rem;
    }
  }

/*===============================
  infomation
================================*/
.p-infomation__info-map ul li:nth-child(3), .p-infomation__info-map ul li:nth-child(4) {
  font-size: .8rem;
  line-height: 1.5; }

.p-infomation__info-text {
  line-height: 1.5; }

/*===============================
  content-table
================================*/
.c-content-table th {
  font-size: 1.1rem;
  font-weight: normal; }

.c-content-table td {
  font-size: .9rem; }
  .c-content-table td span {
    font-size: .7rem; }

/*===============================
  footer
================================*/
footer {
  font-family: "Garamond Bold"; }

/*===============================
  nav
================================*/
.l-navWrap__inner {
  font-family: 'Lato', sans-serif;
  font-weight: 400; }

.l-navWrap__list ul li {
  font-size: 1rem; }
  @media (max-width: 768px) {
    .l-navWrap__list ul li {
      font-size: 1.2rem; } }
  .l-navWrap__list ul li a:hover {
    font-weight: 700;
    text-decoration: underline; }
  .l-navWrap__list ul li span {
    font-size: .6rem; }

.l-navWrap__tel p {
  font-size: .8rem;
  line-height: 1.5; }
  .l-navWrap__tel p span {
    font-size: 1rem; }

/*===============================
	layout
================================*/
.l-index__inner {
  height: 100vh;
  background: url(../images/index-bg-xl.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative; }

.l-index__enter {
  text-align: center;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 70%; }
  .l-index__enter a {
    text-decoration: none;
    color: #fff;
    background: #000;
    border-radius: 1px;
    padding: .2em 1.5em;
    box-shadow: 0 0 2px 2px #000; }
  .l-index__enter a:hover {
    opacity: .8; }

.l-index__tel {
  display: none; }

@media (max-width: 768px) {
  .p-concept__inner h1 img {
    width: 100%; } }

@media (max-width: 768px) {
  .p-concept__inner > img {
    margin-top: 2em;
    width: 60vw; } }

.p-concept__info {
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  @media (max-width: 768px) {
    .p-concept__info {
      display: block; } }

.p-concept__image {
  width: 30%;
  text-align: right; }
  @media (max-width: 768px) {
    .p-concept__image {
      width: 46%;
      display: flex;
      justify-content: space-between;
      align-items: flex-start; } }
  @media (max-width: 480px) {
    .p-concept__image {
      width: 90%;
      display: block; } }
  .p-concept__image img {
    width: 100%;
    margin: 10px 0; }
    @media (max-width: 768px) {
      .p-concept__image img {
        margin: 5em 10px 0; } }
    @media (max-width: 480px) {
      .p-concept__image img {
        margin: 2em 10px 0; } }

.p-chef__info {
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  @media (max-width: 768px) {
    .p-chef__info {
      display: box;
      display: -webkit-box;
      box-orient: vertical;
      -webkit-box-orient: vertical; } }
  .p-chef__info table {
    text-align: left; }
    @media (max-width: 768px) {
      .p-chef__info table {
        box-ordinal-group: 2;
        -webkit-box-ordinal-group: 2; } }
    .p-chef__info table td {
      padding: 25px 20px 10px 0;
      white-space: nowrap; }
      @media (max-width: 480px) {
        .p-chef__info table td {
          padding: 20px 20px 10px 0; } }
    @media (max-width: 480px) {
      .p-chef__info table td:nth-child(2) {
        white-space: normal;
        padding: 20px 0 10px; } }
  .p-chef__info-image {
    width: 40%;
    text-align: right; }
    @media (max-width: 768px) {
      .p-chef__info-image {
        width: 60%;
        margin-top: -1em;
        box-ordinal-group: 1;
        -webkit-box-ordinal-group: 1; } }
    .p-chef__info-image img {
      width: 100%;
      margin: 10px 0; }

.c-menu {
  margin-top: 50px;
  position: relative; }
  .c-menu-text {
    margin-top: 20px; }
  .c-menu-image {
    text-align: right;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1; }
    @media (max-width: 768px) {
      .c-menu-image {
        width: 86vw;
        right: auto;
        left: 0; } }
    .c-menu-image img {
      width: 75%; }
      @media (max-width: 768px) {
        .c-menu-image img {
          width: 56%; } }
    .c-menu-image-01 {
      margin-bottom: 20px; }
      @media (max-width: 768px) {
        .c-menu-image-01 {
          margin-bottom: 10em; } }
  .c-menu-table td {
    text-align: center; }
  .c-menu-underline {
    padding-top: 20px;
    border-bottom: 1px solid;
    padding-bottom: 5px;
    text-align: left; }
  .c-menu-clear td {
    text-align: left; }

.c-jour {
  padding: 100px 0;
  margin: 80px 0;
  background-image: url(../images/menu-edge-01.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }
  @media (max-width: 768px){
    .c-jour-table td .c-sp-min{
      font-size: .5rem;
    }
  }
  @media (max-width: 480px) {
    .c-jour {
      background-image: none;
      margin: 0; } }
  .c-jour-table {
    text-align: left;
    margin: 0 auto; }
    .c-jour-table tr:nth-child(1) td {
      text-align: center; }
    .c-jour-table th {
      border-bottom: 1px solid;
      padding-bottom: 5px; }
    .c-jour-table td {
      padding: 7px; }

.p-wine__info {
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  .p-wine__info-image {
    width: 20%;
    text-align: right; }
    @media (max-width: 768px) {
      .p-wine__info-image {
        display: none; } }
    .p-wine__info-image img {
      width: 100%;
      margin: 10px 0; }
.p-wine__info-list td .c-sp-min{
  white-space: nowrap;
}

#photos {
  column-count: 5;
  column-gap: 10px; }
  @media (max-width: 768px) {
    #photos {
      column-count: 3; } }
  @media (max-width: 480px) {
    #photos {
      column-count: 2; } }
  #photos img {
    width: 100%;
    height: auto; }

#glayLayer {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10;
  height: 100%;
  width: 100%;
  background: black;
  filter: alpha(opacity=60);
  opacity: 0.7; }

#overLayer {
  display: none;
  width: fit-content;
  position: fixed;
  left: 0;
  right: 0;
  top: 25%;
  margin: auto;
  z-index: 20; }
  #overLayer img {
    max-width: 600px;
    max-height: 620px; }
    @media (max-width: 480px) {
      #overLayer img {
        max-width: 320px; } }

.p-infomation__info-map {
  float: left; }
  .p-infomation__info-map ul li:nth-child(2) {
    max-width: 200px; }
    .p-infomation__info-map ul li:nth-child(2) img {
      width: 100%; }
  .p-infomation__info-map ul li:nth-child(4) {
    width: 30px;
    float: right;
    margin-top: -20px; }
    .p-infomation__info-map ul li:nth-child(4) a img {
      width: 100%;
      transform: scale(1);
      transition: .3s; }
    .p-infomation__info-map ul li:nth-child(4) a img:hover {
      opacity: .5;
      transform: scale(1.2); }

.p-infomation__info-text {
  float: left;
  margin: 0 20px 40px; }
  @media (max-width: 768px) {
    .p-infomation__info-text {
      margin: 3em 0; } }
  .p-infomation__info-text ul li:nth-child(2),
  .p-infomation__info-text ul li:nth-child(4),
  .p-infomation__info-text ul li:nth-child(7),
  .p-infomation__info-text ul li:nth-child(8),
  .p-infomation__info-text ul li:nth-child(9) {
    padding-bottom: 15px; }

@media (max-width: 768px) {
  .p-infomation__info-image {
    clear: both;
    display: flex;
    justify-content: space-between;
    align-items: flex-start; } }

@media (max-width: 480px) {
  .p-infomation__info-image {
    display: block; } }

.p-infomation__info-image img {
  margin: 10px; }
