/*========================================================================
   cuisine layout
========================================================================*/
#cuisine #mainVisual {
  background: url(../img/cuisine/mainimg.jpg) no-repeat center/cover;
}

#lead .layout {
  max-width: 1000px;
}
#lead .layout > *:not(:last-child) {
  margin-bottom: 1.3em;
}
#lead .layout .txtArea h3 {
  position: relative;
}
#lead .layout .imgArea {
  text-align: center;
}
@media screen and (min-width: 768px) {
  #lead .layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  #lead .layout .txtArea {
    width: max(52%, (99% - 480px));
  }
  #lead .layout .imgArea {
    width: min(47%, 480px);
    margin-left: 1%;
  }
}
#lead .layout .deco.rb {
  bottom: -200px;
  right: -70px;
}

#dinner .layout, #breakfast .layout {
  margin-bottom: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#dinner .layout > *, #breakfast .layout > * {
  width: 100%;
  padding: 0 min(3vw, 1em);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: min(3vw, 1em);
}
@media screen and (min-width: 768px) {
  #dinner .layout, #breakfast .layout {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

#dinner .lead {
  margin-bottom: 2.5em;
  text-align: center;
}
#dinner .t-slider .slick-dots {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#dinner .t-slider .slick-dots li {
  width: 20%;
  padding: 8px 4px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  background-color: transparent;
}
#dinner .deco.lb {
  bottom: -50px;
  left: -40px;
}
@media screen and (min-width: 768px) {
  #dinner .layout > * {
    width: 50%;
  }
}

#breakfast .inner {
  max-width: 1000px;
}
#breakfast .txtArea {
  position: relative;
  max-width: 360px;
}
#breakfast .txtArea .btn {
  margin-bottom: min(3vw, 1em);
}
#breakfast .imgArea {
  position: relative;
  max-width: 690px;
}
#breakfast .deco.rb {
  bottom: -200px;
  right: -80px;
}
@media screen and (min-width: 768px) {
  #breakfast .layout {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  #breakfast .txtArea {
    width: 34%;
  }
  #breakfast .imgArea {
    width: 70%;
    margin-left: -5%;
  }
}

#custom {
  background-color: #dd7862;
  color: #fff;
}
#custom h3 {
  text-align: center;
}
#custom .layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 2em;
}
#custom .layout > * {
  margin-bottom: 1.5em;
}
#custom .layout h4 {
  font-size: 2.1rem;
  margin-bottom: 0.4em;
  padding-bottom: 0.2em;
  border-bottom: dotted 1px;
}
#custom .layout h4 .price {
  font-size: 0.8em;
  line-height: 1.6;
  margin: 0 0.2em;
  float: right;
}
@media screen and (min-width: 768px) {
  #custom .layout {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: auto;
    margin-left: -0.4em;
    margin-right: -0.4em;
  }
  #custom .layout > * {
    margin: 0.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  #custom .layout > * h4 {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}
#custom .txtArea {
  max-width: 600px;
}
