/* Scss Document */
.shadw {
  box-shadow: 1px 3px 7px 0px rgba(0, 0, 0, 0.2);
}
.brl_all {
  word-break: break-all;
}
.full_slider {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-repeat: repeat-x;
  background-size: auto 100%;
  -moz-animation: moveSlideshow 20s linear infinite;
  -o-animation: moveSlideshow 20s linear infinite;
  -webkit-animation: moveSlideshow 20s linear infinite;
  -ms-animation: moveSlideshow 20s linear infinite;
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
.animated {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
@media (prefers-reduced-motion) {
  .animated {
    -webkit-animation: unset !important;
    animation: unset !important;
    -webkit-transition: none !important;
    transition: none !important;
  }
}
@-webkit-keyframes moveSlideshow {
  0% {
    left: 0;
  }
  100% {
    left: -1487px;
  }
}
@-moz-keyframes moveSlideshow {
  0% {
    left: 0;
  }
  100% {
    left: -1487px;
  }
}
@-ms-keyframes moveSlideshow {
  0% {
    left: 0;
  }
  100% {
    left: -1487px;
  }
}
@-webkit-keyframes to_top {
  0% {
    transform: translateY(-30px);
    opacity: 0;
    filter: blur(3px);
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
    filter: blur(0px);
  }
}
@keyframes to_top {
  0% {
    transform: translateX(-30px);
    opacity: 0;
    filter: blur(3px);
  }
  100% {
    transform: translateX(0px);
    opacity: 1;
    filter: blur(0px);
  }
}
@-webkit-keyframes to_top1 {
  0% {
    opacity: 1;
  }
  100% {
    transform: translateX(15px);
    opacity: 0;
  }
}
@keyframes to_top1 {
  0% {
    opacity: 1;
  }
  100% {
    transform: translateX(15px);
    opacity: 0;
  }
}
@-webkit-keyframes bg_to_top {
  0% {
    top: 110%;
  }
  100% {
    top: 0%;
  }
}
@keyframes bg_to_top {
  0% {
    top: 110%;
  }
  100% {
    top: 0%;
  }
}
@-webkit-keyframes bg_to_top1 {
  0% {
    top: 0%;
  }
  100% {
    top: -100%;
  }
}
@keyframes bg_to_top1 {
  0% {
    top: 0%;
  }
  100% {
    top: -100%;
  }
}
@-webkit-keyframes line_left {
  0% {
    left: -100%;
  }
  100% {
    left: 240%;
  }
}
@keyframes line_left {
  0% {
    left: -100%;
  }
  100% {
    left: 240%;
  }
}
.f_color {
  color: #90131c;
}
.shadowm {
  -webkit-box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
  -moz-box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
  box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
}
.sl_style1 .slick-arrow {
  background-color: #a3ac70;
  top: 23vw;
  left: calc(18% - 15px);
  color: #263f0b;
}
.sl_style1 .slick-arrow.slick-next {
  left: auto;
  right: calc(18% - 15px);
}
.sl_style1 .slick-active button {
  background-color: #263f0b;
}
.d_flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}
.gallery {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.gallery-item {
  flex: 1 1 33.333%;
  -ms-flex: 1 1 33.333%;
}
.gallery2 {
  width: 100%;
  padding: 0 5%;
  box-sizing: border-box;
  cursor: pointer;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  flex-direction: row;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.gallery2 > a {
  width: 48.5%;
  height: 0vh;
  padding-top: 48.5%;
  margin-bottom: 3%;
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.46);
  -moz-box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.46);
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.46);
}
.gallery2 video {
  position: absolute;
  top: 50%;
  left: 50%;
  transition: 1s opacity;
  object-fit: cover;
  width: 100%;
  height: 100%;
  transform: translateX(-50%) translateY(-50%);
  transition: 1s opacity;
}
.scroll_box {
  padding-bottom: 5%;
}
.toggle .readmore {
  text-align: center;
}
.toggle .readmore:after {
  position: static;
  margin: 0;
  padding-left: 10px;
}
.box_parallax {
  position: relative;
}
.box_parallax .img_parallax {
  clip: rect(0, auto, auto, 0);
  margin-bottom: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1 !important;
}
.box_parallax .img_parallax img {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0;
  object-fit: cover;
  z-index: 0;
  transform: translateZ(0);
}
.padb0 {
  padding-bottom: 0 !important;
}
.has_nav .hamburger {
  top: 10px;
  background-color: #7cb342;
}
header {
  position: relative;
}
header h1 {
  color: #fff;
  font-size: 9px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  z-index: 9;
  text-shadow: 0px 1px 5px rgba(0, 0, 0, 0.73);
}
header .logo {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 9;
  width: 32%;
  transform: translateX(-50%);
}
header .logo img {
  width: 100%;
  height: auto;
}
header .hamburger {
  overflow: hidden;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.02em;
  top: 16px;
  right: 10px;
  color: #fff;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  height: 50px;
  width: 50px;
  box-sizing: border-box;
  padding: 0;
}
header .hamburger:before {
  line-height: 1;
  content: 'Menu';
  position: absolute;
  top: 33px;
  left: 0;
  font-size: 10px;
  letter-spacing: 0;
  right: 0;
  text-align: center;
  display: none;
}
header .hamburger span {
  display: block;
  width: 27px;
  height: 1px;
  overflow: hidden;
  position: absolute;
  background-color: #fff;
  transition: all .3s ease 0s;
  -moz-transition: all .3s ease 0s;
  -webkit-transition: all .3s ease 0s;
}
header .hamburger span:before {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  background-color: #000;
  webkit-animation-name: line_left;
  animation-name: line_left;
  animation-timing-function: linear;
  -webkit-animation-duration: 1.8s;
  animation-duration: 1.8s;
  animation-delay: 0s;
  animation-iteration-count: infinite;
}
header .hamburger .line1 {
  top: 17px;
  right: 14px;
}
header .hamburger .line2 {
  top: 25px;
  right: 14px;
}
header .hamburger .line2:before {
  animation-delay: 0.2s;
}
header .hamburger .line3 {
  top: 32px;
  right: 14px;
}
header .hamburger .line3:before {
  animation-delay: 0.25s;
}
header .hamburger--slider .hamburger-inner {
  top: 1px;
}
header .menu_toggle li {
  margin: 0 0 10px;
  position: relative;
  text-align: left;
  border-bottom: 1px solid #fff;
}
header .menu_toggle li img {
  width: 40px;
  height: auto;
}
header .menu_toggle li a {
  padding: 7px 0;
  font-size: 17px;
  font-weight: bold;
}
header .menu_toggle li a.active {
  color: #7cb342;
  text-shadow: -2px 0px 7px #fff, -1px 0px 1px #fff, 0px 0px 4px #fff, 0px 0px 3px #fff, 0px 0px 3px #fff, -1px 0px 5px #fff;
}
header .menu_toggle li.btn-blog {
  margin-top: 30px;
}
header .menu_toggle li.btn-blog a {
  border: 1px solid #fff;
  text-align: center;
}
header .menu_toggle li.btn-blog a:after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: .2em;
  /* font-size: 120%; */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
  content: '\f105';
}
header .menu_toggle:before {
  content: '';
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  background: #000;
  -webkit-animation-iteration-count: 1;
  webkit-animation-name: bg_to_top1;
  animation-name: bg_to_top1;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in;
  animation-delay: 0.5s;
  display: none;
}
#pagetop {
  width: 60px !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
}
#pagetop img {
  width: 100%;
  height: auto;
}
#pagetop:hover img {
  opacity: 1;
}
footer {
  position: relative;
  background: url("../img/shared/address.jpg") repeat-x center bottom;
  background-color: #7cb342;
  border-top: 2px solid #fff;
  text-align: center;
  color: #fff;
  padding: 10vw 0% 60px;
}
footer img {
  width: 100%;
  height: auto;
}
footer .shopinfo {
  padding: 0 5%;
}
footer .logo {
  width: 45%;
  margin: 0 auto 6vw;
}
footer .tel {
  background-color: #fff;
  margin: 0 5% 10vw;
}
footer .tit {
  font-weight: bold;
  border-bottom: 1px solid #fff;
  padding-bottom: 10px;
  margin-bottom: 30px;
  text-align: left;
}
footer .tbl-info {
  text-align: left;
}
footer .tbl-info dl {
  display: table;
  width: 100%;
  line-height: 20px;
  padding-bottom: 15px;
}
footer .tbl-info dl dt, footer .tbl-info dl dd {
  display: table-cell;
  box-sizing: border-box;
}
footer .tbl-info dl dt {
  width: 90px;
}
footer .nav {
  background: url("../img/shared/ft_bg.png") repeat 0 0;
  flex-wrap: wrap;
  margin: 10vw 0;
}
footer .nav li {
  width: 50%;
  text-align: left;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  box-sizing: border-box;
  padding: 10px 20px;
}
footer .nav li:nth-child(even) {
  border-right: none;
}
footer .nav li.bdn {
  border-bottom: none;
}
footer .cookies_link {
  text-align: center;
  line-height: 1;
  padding-bottom: 30px;
}
footer address {
  background: url("../img/shared/address.jpg") repeat center 0;
  padding: 10px 0;
}
footer #socialbuttons {
  padding: 0px 0 15px;
  margin-bottom: 0;
}
#key img {
  width: 100%;
  height: auto;
}
#key .slide-fade {
  height: 111vw;
}
.navOpen .hamburger span:before {
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  /*	 left: 110%; 
  		 transition: all .75s ease;
  -moz-transition: all .75s ease;
  -webkit-transition: all .75s ease;*/
}
.navOpen .hamburger .line1 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 23px;
}
.navOpen .hamburger .line3 {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 23px;
}
.navOpen .hamburger .line2 {
  opacity: 0;
  right: -100%;
}
.navOpen header .menu_toggle:before {
  webkit-animation-name: bg_to_top;
  animation-name: bg_to_top;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  animation-delay: 0s;
}
.navOpen .hamburger {
  background: transparent !important;
}
.slick_number .slick-dots {
  margin-top: 20px;
  padding: 0;
  display: block;
  text-align: center;
}
.slick_number .slick-dots li {
  display: inline-block;
  margin: 0 0 10px;
}
.slick_number .slick-dots button {
  width: auto;
  height: auto;
  background-color: transparent;
  font-size: 18px;
  color: #dedbd0;
  font-weight: bold;
  padding: 3px 14px;
  line-height: 22px;
  border-radius: 0;
  position: relative;
}
.slick_number .slick-dots .slick-active button {
  color: #D10909;
}
/*==================================================*/
.toggle {
  margin-bottom: 20px;
}
.toggle .toggle-link {
  text-align: center;
  font-size: 18px;
  padding: 8px 0;
}
#feed dl {
  position: relative;
  padding: 0% 5% 5% 40%;
  min-height: 100px;
}
#feed dt {
  width: 35%;
  position: absolute;
  top: 0;
  left: 0;
}
#feed dt span {
  width: 100% !important;
  height: 0% !important;
  padding-top: 25vw;
}
.bnr-shared {
  margin-top: 10vw;
}
/*==================================================*/
.bg1 {
  background: url("../img/index/bg1.jpg") repeat 0 0/100%;
}
.bg3 {
  background: url("../img/index/bg3.jpg") repeat 0 0/100%;
}
section.block {
  position: relative;
}
section.block:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 36px;
  z-index: 9;
  background: url("../img/index/line.png") repeat-x 0 0;
}
#index .top-banner {
  padding: 10vw 5%;
}
#index .top-banner li {
  width: 48%;
}
#index #sec1 {
  background: url("../img/index/sec1_bg1.png") no-repeat 0 0/35%, url("../img/index/sec1_bg2.png") no-repeat right 0vw/32%;
  padding: 16vw 0 0;
}
#index #sec1 h2 {
  padding-bottom: 5vw;
}
#index #sec2 {
  padding: 15vw 0;
}
#index #sec2 .banner {
  position: relative;
  margin-bottom: 10vw;
}
#index #sec2 .banner:last-child {
  margin-bottom: 0;
}
#index #sec2 .banner h2 {
  padding: 0 0%;
  pointer-events: none;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9;
  top: 50vw;
}
#index #sec2 .banner .bnr {
  border-bottom: 2px solid #4d7d19;
  border-top: 2px solid #4d7d19;
  padding: 0;
}
#index #sec2 .banner .bnr a {
  display: block;
  position: relative;
  background-color: #fff;
  position: relative;
}
#index #sec2 .banner .bnr a .arrow {
  width: 20%;
  position: absolute;
  right: 0;
  bottom: 0;
}
#index #sec2 .banner .bnr span {
  display: block;
  padding: 20vw 5% 8%;
  position: relative;
  z-index: 3;
}
#index #sec2 .banner .bnr span:before {
  content: '';
  position: absolute;
  top: -9vw;
  left: 0;
  right: 0;
  height: 30vw;
  background-color: #fff;
  transform: skewY(9deg);
  z-index: -1;
}
#index #sec2 .banner .bnr span.ext:before {
  transform: skewY(-9deg);
}
#index #sec3 {
  border: 2px solid #4d7d19;
  background: rgba(255, 255, 255, 0.6);
  padding: 10vw 5%;
  margin: 0 5% 15vw;
}
#index #sec4 .menu .slick-dots {
  z-index: 9;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5vw;
  padding: 0;
}
#index #sec4 .menu .info {
  background: url("../img/index/bg2.jpg") no-repeat 0 0/100% 100%;
  color: #fff;
  padding: 10vw 5% 15vw;
}
#index #sec4 .menu .info .box {
  background: rgba(0, 0, 0, 0.65);
  padding: 10vw 5% 25vw;
  position: relative;
}
#index #sec4 .menu .info h2 {
  padding: 0 5% 5%;
}
#index #sec4 .menu .info .bnr {
  border: 1px solid #fff;
  width: 13%;
  position: absolute;
  z-index: 1;
  right: 5%;
  bottom: 10%;
  padding: 0;
}
#index #news {
  margin: 10vw 5%;
  padding: 10vw 5%;
  box-shadow: 4px 8px 9px 0px rgba(0, 0, 0, 0.65);
}
#index #news h2 {
  padding: 0 20% 10vw;
}
#lunch .slick-dots {
  position: absolute;
  z-index: 9;
  left: 0;
  right: 0;
  bottom: 5vw;
  padding: 0;
}
#lunch #sec1 {
  padding-bottom: 10vw;
}
#lunch #sec1 h2 {
  padding: 5vw 0;
}
#lunch #sec1 .point {
  padding: 10vw 5%;
}
#lunch #sec1 .point h3 {
  margin: 0 -5vw;
}
#lunch #sec1 .point .tit {
  padding: 8vw 0;
}
#lunch #sec1 .point .js-slider {
  -webkit-box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
  -moz-box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
  box-shadow: -1px 2px 10px 2px rgba(0, 0, 0, 0.29);
}
#lunch #sec2 {
  color: #000;
  padding-bottom: 10vw;
}
#lunch #sec2 dt {
  white-space: nowrap;
  font-weight: bold;
  font-size: 4.8vw;
  line-height: 1.4;
  padding: 5vw 0;
  text-align: center;
  border-bottom: 2px solid #000;
  margin-bottom: 5vw;
}
#lunch #sec3 {
  padding: 0vw 5% 15vw;
}
#lunch #sec3 h2 {
  margin-bottom: 5vw;
}
#lunch #sec3 .photo {
  padding-bottom: 10vw;
}
#lunch #sec3 .photo dt {
  padding-bottom: 5vw;
}
#lunch #sec3 .note {
  text-align: center;
  border: 1px solid #000;
  padding: 10px;
  margin-top: 6vw;
}
#lunch #sec3 .tag {
  background: url("../img/lunch/bg1.jpg") repeat 0 0/100%;
  color: #fff;
  padding: 10vw 5% 5vw;
  font-weight: bold;
}
#lunch #sec3 .tag dl {
  font-size: 20px;
  border-bottom: 3px solid #fff;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
#lunch #sec3 .tag dl span {
  font-size: 26px;
}
#lunch #sec3 .tag dt {
  color: #ffcd35;
}
#lunch #sec4 {
  padding-bottom: 15vw;
}
#lunch #sec4 .info {
  padding: 4vw 5% 5vw;
}
#lunch #sec4 .info dt {
  padding: 0 12% 5vw;
}
#lunch #sec4 .list {
  padding: 0 5%;
}
#lunch #sec5 {
  background-color: rgba(255, 255, 255, 0.6);
  border-bottom: 1px solid #4d7d19;
}
#lunch #sec5 h2 {
  padding-bottom: 10vw;
}
#lunch #sec5 .photo1 {
  margin: 0 5%;
  padding: 0;
}
#lunch #sec5 .tag {
  padding: 10vw 5% 0;
}
#lunch #sec5 .tag dt {
  border: 2px solid #ee7d04;
  text-align: center;
  color: #ee7d04;
  font-size: 20px;
  padding: 24px 0;
  font-weight: bold;
  margin-bottom: 20px;
}
#lunch #sec5 .menu {
  background: url("../img/lunch/bg2.jpg") repeat 0 0/100%;
  margin: 5vw 5%;
  padding: 10vw 5%;
}
#lunch #sec5 .menu dt {
  margin: -15vw 0 5vw;
  position: relative;
  z-index: 1;
}
#lunch #sec6 {
  padding: 10vw 0;
}
#lunch #sec6 h2 {
  padding-bottom: 5vw;
}
#lunch #sec6 .tag {
  font-weight: bold;
  text-align: center;
  border-bottom: 3px solid #000;
  font-size: 20px;
  padding: 5vw 0;
  margin-bottom: 5vw;
}
#lunch #sec6 .tag span {
  font-size: 25px;
}
#lunch #sec6 .note {
  font-weight: bold;
  border-bottom: 1px dashed #000;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#lunch #sec7 {
  background: url("../img/lunch/line2.jpg") repeat-x 0 0/100%, url("../img/index/bg1.jpg") repeat 0 0/100%;
  padding: 20vw 5%;
}
#lunch #sec7 .group {
  padding: 5%;
  margin-bottom: 15vw;
}
#lunch #sec7 h2 {
  padding-bottom: 5vw;
}
#lunch #sec7 h3 {
  padding-bottom: 8vw;
}
#lunch #sec7 .js-slider2 {
  padding-bottom: 18vw;
}
#lunch #sec7 .toggle-link {
  font-weight: bold;
  font-size: 16px;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, 0.75);
  text-align: center;
  line-height: 50px;
}
#lunch #sec7 .f_note {
  padding-top: 20px;
}
#lunch #sec7 .f_note li {
  text-indent: -15px;
  padding-left: 15px;
  line-height: 23px;
  padding-bottom: 10px;
}
#lunch #sec7 .menu {
  text-align: center;
  margin-bottom: 20px;
}
#lunch #sec7 .menu .tag {
  font-size: 16px;
  font-weight: bold;
  color: #4d7d19;
  padding: 20px 0;
}
#lunch #sec7 .menu .list {
  border-top: 1px dashed #000;
  background: rgba(255, 255, 255, 0.3);
  font-weight: bold;
  padding: 20px;
}
#lunch #sec7 .course {
  color: #fff;
}
#lunch #sec7 .course .slick-dots {
  top: 55vw;
  bottom: auto;
}
#lunch #sec7 .course .item {
  font-weight: bold;
}
#lunch #sec7 .course .item .txt {
  border-bottom: 1px dashed #fff;
  padding-bottom: 20px;
}
#lunch #sec7 .course .item h3 {
  padding-bottom: 5vw;
}
#lunch #sec7 .course .item .price {
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  border-bottom: 3px solid #fff;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
#lunch #sec7 .course .item .price span {
  font-size: 25px;
}
#lunch #sec8 .photo {
  padding-bottom: 0;
}
#lunch #sec8 .info {
  background: url("../img/index/bg2.jpg") no-repeat 0 0/100% 100%;
  color: #fff;
  padding: 10vw 5% 15vw;
}
#lunch #sec8 .info dl {
  background: rgba(0, 0, 0, 0.65);
  padding: 10vw 5%;
  position: relative;
}
#lunch #sec8 .info dl dt {
  padding-bottom: 7vw;
}
#course .slick-dots {
  bottom: 5vw;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9;
}
#course #sec1 {
  padding: 5vw 0;
}
#course #sec1 h2 {
  padding-bottom: 10vw;
}
#course #sec1 .link {
  margin-bottom: -20vw;
  position: relative;
  z-index: 1;
}
#course #sec2 {
  padding-bottom: 15vw;
}
#course #sec2 h2 {
  padding-bottom: 5vw;
}
#course #sec2 .js-slider {
  margin: 0 5% 5vw;
}
#course #sec2 .note {
  border: 1px solid #000;
  padding: 11px 20px;
  margin: 5vw 10%;
}
#course #sec2 .menu {
  background: url("../img/lunch/bg1.jpg") repeat 0 0/100%;
  color: #fff;
  padding: 10vw 5% 5vw;
  text-align: center;
  margin: 5vw 5% 0;
}
#course #sec2 .menu .tag {
  font-size: 18px;
  border-bottom: 3px solid #fff;
  margin-bottom: 15px;
  padding-bottom: 15px;
  font-weight: bold;
}
#course #sec2 .menu .tag span {
  font-size: 25px;
}
#course #sec2 .menu .tag dt {
  color: #ffcd35;
  padding-bottom: 5px;
}
#course #sec2 .contact {
  margin: 10vw 5% 0;
  padding: 0 0 10vw;
  border: 2px solid #ee7d04;
}
#course #sec2 .contact .info {
  background-color: #ee7d04;
  padding: 2vw 3%;
}
#course #sec2 .contact .info h3 {
  padding-bottom: 5vw;
}
#course #sec2 .contact .bnr {
  padding: 0 5%;
}
#course #sec2 .contact .tbl-info {
  padding: 5%;
  font-size: 12px;
  line-height: 18px;
}
#course #sec2 .contact .tbl-info dl {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}
#course #sec2 .contact .tbl-info dl dt, #course #sec2 .contact .tbl-info dl dd {
  display: table-cell;
  box-sizing: border-box;
}
#course #sec2 .contact .tbl-info dl dt {
  font-weight: bold;
  width: 75px;
}
#course #sec3 {
  padding-bottom: 15vw;
}
#course #sec3 .floor dt {
  padding-bottom: 5vw;
}
#course #sec3 .slick-arrow {
  top: 47vw;
}
#course #sec3 .item {
  padding-top: 10vw;
}
#course #sec3 .item dd {
  padding: 0 5%;
}
#kagawa #sec1 {
  background: url("../img/kagawa/sec1_bg.jpg") no-repeat 0 0/100%;
  padding-bottom: 5vw;
}
#kagawa #sec1 h2 {
  padding-bottom: 16vw;
}
#kagawa #sec1 .info dt {
  border-bottom: 3px solid #000;
  margin-bottom: 5vw;
}
#kagawa #sec1 .map {
  border: 1px solid #000;
  margin: 10vw 10%;
  line-height: 0;
}
#kagawa #sec2 {
  padding-bottom: 10vw;
}
#kagawa #sec2 h3 {
  padding: 0 20% 10%;
}
#kagawa #sec2 .note {
  text-align: center;
  border: 1px solid #000;
  padding: 10px;
  margin-bottom: 10vw;
}
#kagawa #sec2 .slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9;
  top: 57vw;
  padding: 0;
}
#kagawa #sec2 .menu .tag {
  background: url("../img/lunch/bg1.jpg") repeat 0 0/100%;
  padding: 10vw 5% 5vw;
  font-weight: bold;
}
#kagawa #sec2 .menu .tag dl {
  color: #fff;
  font-size: 18px;
  border-bottom: 3px solid #fff;
  padding-bottom: 10px;
  margin-bottom: 20px;
  text-align: center;
}
#kagawa #sec2 .menu .tag dl dt {
  color: #ffcd35;
}
#kagawa #sec2 .menu .tag dl span {
  font-size: 22px;
}
#kagawa #sec2 .bnr {
  margin-top: 10vw;
}
#kagawa #sec3 {
  background-color: rgba(177, 144, 104, 0.15);
  padding-bottom: 15vw;
}
#kagawa #sec3 .slick-arrow {
  top: 81vw;
}
#kagawa #sec3 .slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9;
  padding: 0;
  top: 114vw;
}
#kagawa #sec3 .info {
  padding: 10vw 5%;
}
#kagawa #sec3 .info dt {
  padding-bottom: 5vw;
}
#kagawa #sec3 .menu {
  position: relative;
}
#kagawa #sec3 .menu .photo {
  position: relative;
  margin-bottom: 5vw;
}
#kagawa #sec3 .menu .photo span {
  text-align: center;
  font-size: 3.2vw;
  line-height: 1.5;
  position: absolute;
  top: 17vw;
  left: 8%;
  width: 52%;
  z-index: 1;
}
#kagawa #sec3 .menu .txt {
  padding: 0 5%;
}
#kagawa #sec3 .menu dl {
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  border-bottom: 3px solid #000;
  padding: 0 0 10px;
  margin: 0 5% 20px;
}
#kagawa #sec3 .menu dl span {
  font-size: 25px;
}
#access #sec1 {
  padding: 15vw 0 0;
}
#access #sec1 .shop {
  padding: 10vw 5%;
  margin: 0 5% -19vw;
  position: relative;
  z-index: 2;
}
#access #sec1 h2 {
  width: 65%;
  margin: 0 auto 5vw;
}
#access #sec1 .tbl-info .num {
  font-weight: bold;
  font-size: 18px;
}
#access #sec1 .tbl-info dl {
  display: table;
  width: 100%;
  line-height: 20px;
  padding: 10px 0;
  border-bottom: 1px dashed #000;
  font-size: 12px;
}
#access #sec1 .tbl-info dl dt, #access #sec1 .tbl-info dl dd {
  display: table-cell;
  box-sizing: border-box;
}
#access #sec1 .tbl-info dl dt {
  width: 75px;
}
#access #sec1 .link {
  padding: 30vw 5% 10vw;
  background: url("../img/lunch/line2.jpg") repeat-x 0 0/100%, url("../img/index/bg1.jpg") repeat 0 0/100%;
}
#access #sec1 .link li {
  margin-bottom: 5vw;
  -webkit-box-shadow: -1px 2px 3px 2px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: -1px 2px 3px 2px rgba(0, 0, 0, 0.19);
  box-shadow: -1px 2px 3px 2px rgba(0, 0, 0, 0.19);
}
#access #sec2 {
  padding: 15vw 0;
  background: url("../img/access/sec2_bg.jpg") no-repeat 0 bottom/100%;
  font-size: 13px;
}
#access #sec2 h2 {
  width: 65%;
  margin: 0 auto 5vw;
}
#access #sec2 .info dt {
  font-weight: bold;
  border-bottom: 3px solid #000;
  padding-bottom: 20px;
  margin-bottom: 20px;
  font-size: 18px;
}
#access #sec2 .tbl-info {
  padding: 10vw 5%;
}
#access #sec2 .tbl-info dl {
  margin-bottom: 20px;
}
#access #sec2 .tbl-info dl:after {
  content: "." !important;
  clear: both !important;
  display: block !important;
  height: 0 !important;
  visibility: hidden !important;
}
#access #sec2 .tbl-info dl dt {
  width: 90px;
  text-align: center;
  font-weight: bold;
  color: #fff;
  float: left;
  background: #ee7d04;
}
#access #sec2 .tbl-info dl dd {
  float: left;
  width: calc(100% - 90px);
  box-sizing: border-box;
  padding-left: 10px;
}
#dinner .slick-dots {
  padding: 0;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 9;
  bottom: 5vw;
}
#dinner #sec1 .js {
  padding: 5vw 5% 0;
}
#dinner #sec2 {
  background: url("../img/lunch/line2.jpg") repeat-x 0 bottom/70%, url("../img/dinner/sec2_bg.jpg") no-repeat 0 0/100%, url("../img/dinner/bg1.jpg") repeat 0 0/100%;
  color: #fff;
  padding: 10vw 0 5vw;
}
#dinner #sec2 .info dt {
  padding: 5vw 0 0;
}
#dinner #sec2 .js-slider1 {
  padding: 10vw 0;
}
#dinner #sec2 .slick-dots {
  bottom: auto;
  top: 65vw;
}
#dinner #sec2 .slick-arrow {
  top: 39vw;
}
#dinner #sec2 .photo {
  padding: 0 5%;
}
#dinner #sec2 dl {
  padding: 0 5%;
}
#dinner #sec2 dl dd {
  padding-top: 5vw;
}
#dinner #sec3 {
  border: 2px solid #4d7d19;
  background: rgba(255, 255, 255, 0.6);
  padding: 10vw 5%;
  margin: 10vw 5%;
}
#dinner #sec3 .slick-dots {
  position: static;
  padding-top: 15px;
}
#dinner #sec4 .js {
  padding: 7vw 5%;
  background: url("../img/dinner/sec4_bg.jpg") no-repeat 0 0/100%, url("../img/lunch/bg1.jpg") repeat 0 0/100%;
}
#dinner #sec4 .sl-thumb {
  padding: 0 20% 10vw;
}
#dinner #sec4 .sl-thumb .slick-track {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  transform: none !important;
  width: 100% !important;
}
#dinner #sec4 .sl-thumb .slick-track .slick-slide {
  width: 47%;
  background-color: #000;
}
#dinner #sec4 .sl-thumb .slick-track .slick-slide.slick-current img {
  opacity: 0.8;
}
#dinner #sec4 .sl-thumb .slick-track:before, #dinner #sec4 .sl-thumb .slick-track:after {
  display: none;
}
#dinner #sec4 .photo {
  position: relative;
  padding: 0;
}
#dinner #sec4 .photo span {
  background-color: rgba(0, 0, 0, 0.6);
  color: #fff;
  padding: 3% 5%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  font-size: 3vw;
  line-height: 1.5;
}
#dinner #sec4 .note {
  font-size: 13px;
}
#dinner #sec4 h3 {
  padding: 0 10% 5vw;
}
#dinner #sec4 .tag {
  color: #fff;
  text-align: center;
  padding: 10vw 0 5vw;
}
#dinner #sec4 .tag dl {
  text-align: center;
  font-size: 20px;
  border-bottom: 3px solid #fff;
  padding-bottom: 10px;
  margin-bottom: 20px;
  font-weight: bold;
}
#dinner #sec4 .tag dl span {
  font-size: 25px;
}
#dinner #sec4 .tag dl dt {
  color: #ffcd35;
}
#dinner #sec5 {
  padding: 15vw 5% 5vw;
}
#dinner #sec5 .group {
  padding: 5%;
  margin-bottom: 15vw;
}
#dinner #sec5 h2 {
  padding-bottom: 5vw;
}
#dinner #sec5 .toggle-link {
  font-weight: bold;
  font-size: 15px;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, 0.75);
  text-align: center;
  line-height: 50px;
}
#dinner #sec5 .f_note {
  padding-top: 20px;
}
#dinner #sec5 .f_note li {
  text-indent: -15px;
  padding-left: 15px;
  line-height: 23px;
  padding-bottom: 10px;
}
#dinner #sec5 .menu {
  text-align: center;
  margin-bottom: 20px;
}
#dinner #sec5 .menu h4 {
  font-size: 16px;
  font-weight: bold;
  color: #4d7d19;
  padding: 20px 0;
}
#dinner #sec5 .menu .list {
  border-top: 1px dashed #000;
  background: rgba(255, 255, 255, 0.3);
  font-weight: bold;
  padding: 20px;
}
#dinner #sec5 .menu .list .style2 {
  font-weight: normal;
  font-size: 12px;
}
#dinner #sec6 .menu {
  background: url("../img/dinner/sec6_p1.jpg") no-repeat center/cover;
  color: #fff;
  padding: 10vw 0 0;
  text-align: center;
}
#dinner #sec6 .menu.menu2 {
  background: url("../img/dinner/sec6_p2.jpg") no-repeat center/cover;
  padding: 35vw 0 0;
}
#dinner #sec6 .menu dl {
  position: relative;
  font-size: 20px;
  margin-bottom: 10px;
  font-weight: bold;
}
#dinner #sec6 .menu dl span {
  font-size: 25px;
}
#dinner #sec6 .menu dl dt {
  color: #fff;
  text-align: center;
}
#dinner #sec6 .menu .item {
  padding: 5%;
  background: rgba(0, 0, 0, 0.5);
}
#dinner #sec6 .menu .title span {
  display: inline-block;
  border: 2px solid #fff;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: bold;
}
#dinner #sec7 {
  background: url("../img/dinner/bg7.jpg") repeat 0 0/100%;
  color: #fff;
  padding-bottom: 15vw;
}
#dinner #sec7 .slick-dots {
  padding: 0;
  position: absolute;
  top: 58vw;
  left: 0;
  right: 0;
  z-index: 9;
}
#dinner #sec7 .menu dl {
  background: url("../img/lunch/bg1.jpg") repeat 0 0/100%;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 20px 0;
  margin-bottom: 20px;
}
#dinner #sec7 .menu dl span {
  font-size: 25px;
}
#dinner #sec7 .other-menu .toggle-link {
  border: 2px solid #fff;
}
#dinner #sec7 .other-menu .note {
  padding: 20px 0;
}
#dinner #sec7 .tag {
  font-weight: bold;
  text-align: center;
  font-size: 20px;
  padding-bottom: 20px;
}
#dinner #sec7 .tag dd {
  padding-top: 10px;
}
#dinner #sec7 .tag span {
  font-size: 25px;
}
#dinner #sec7 .menu-end {
  padding-top: 10vw;
}
#dinner .menu-list dl {
  border-bottom: 1px dashed #fff;
  padding: 10px 0;
}
#dinner .menu-list dl:after {
  content: "." !important;
  clear: both !important;
  display: block !important;
  height: 0 !important;
  visibility: hidden !important;
}
#dinner .menu-list dl dt {
  float: left;
}
#dinner .menu-list dl dd {
  float: right;
  text-align: right;
}
#dinner #sec8 {
  padding: 10vw 0;
}
#dinner #sec8 .info {
  background: url("../img/dinner/sec8_p.jpg") no-repeat 0 0/100%;
  padding: 0vw 0 0vw;
  margin: 11vw 0 0;
}
#dinner #sec8 .info h2 {
  padding-bottom: 58vw;
}
#dinner #sec8 .menu {
  padding: 10vw 5%;
  margin-bottom: 0;
}
#dinner #sec8 .menu .toggle-link {
  border: 2px solid #ee7d05;
}
#dinner #sec8 .menu .note {
  padding: 20px 0;
}
#dinner #sec8 .menu .menu-list dl {
  border-bottom: 1px dashed #000;
}