@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
/*共通*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  cursor: pointer; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

img,
img a {
  border: none;
  vertical-align: bottom;
  padding: 0;
  margin: 0;
  max-width: 100%; }

ul li {
  list-style: none; }

input[type="submit"],
input[type="reset"],
input[type="button"],
button {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible;
  padding: 0;
  margin: 0;
  border: none; }

div, p, ul, ol, li {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

a:link {
  text-decoration: none;
  color: #231815;
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1); }

a:visited {
  color: #231815; }

a:hover {
  opacity: .8; }

.pc_view {
  display: block !important; }

.sp_view {
  display: none !important; }

@media only screen and (max-width: 768px) {
  .pc_view {
    display: none !important; }

  .sp_view {
    display: block !important; } }
html, body, nav {
  min-height: 100%; }

body {
  font-size: 62.5%;
  font-family: 'Noto Serif JP', serif;
  color: #231815;
  position: relative; }

@media only screen and (max-width: 768px) {
  html {
    font-size: calc(100vw / 76.8); }

  body {
    font-size: 2.8rem; } }
.inview {
  opacity: 0; }

.inview-active {
  animation: fadeIn 1s ease forwards; }

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@media only screen and (max-width: 768px) {
  .main-content-block {
    padding-top: 90px; } }

.page-title-block {
  padding-top: 60px;
  padding-bottom: 48px; }
  @media only screen and (max-width: 768px) {
    .page-title-block {
      padding-top: 34px;
      padding-bottom: 3px;
      width: 87%;
      margin: 0 auto; } }
  .page-title-block .page-title {
    text-align: center; }
    .page-title-block .page-title h1 {
      font-size: 40px;
      line-height: 1.65;
      font-weight: normal;
      letter-spacing: 9px;
      padding-bottom: 24px; }
      @media only screen and (max-width: 768px) {
        .page-title-block .page-title h1 {
          font-size: 4.8rem;
          line-height: 1.75;
          padding-bottom: 4px;
          letter-spacing: 4px; } }
    .page-title-block .page-title p {
      font-size: 18px;
      line-height: 2.9555555556;
      letter-spacing: 1px; }
      @media only screen and (max-width: 768px) {
        .page-title-block .page-title p {
          font-size: 2.8rem;
          line-height: 2.1428571429;
          text-align: justify; } }
      .page-title-block .page-title p.quote {
        font-size: 14px; }
        @media only screen and (max-width: 768px) {
          .page-title-block .page-title p.quote {
            font-size: 2.4rem; } }

.sub-nav-block {
  background-color: #F2E9D9;
  text-align: center;
  padding: 23px 0; }
  @media only screen and (max-width: 768px) {
    .sub-nav-block {
      padding: 12px 0; } }
  .sub-nav-block .inner .sub-nav ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center; }
    .sub-nav-block .inner .sub-nav ul li {
      padding: 0 27px;
      border-right: 1px solid #231815;
      font-size: 24px;
      letter-spacing: 0.1px; }
      @media only screen and (max-width: 768px) {
        .sub-nav-block .inner .sub-nav ul li {
          font-size: 2.4rem;
          padding: 0 17px; } }
      .sub-nav-block .inner .sub-nav ul li:last-child {
        border: none; }

/*パーツ*/
.gnav-mask {
  display: none;
  position: fixed;
  background-color: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100vh;
  z-index: 9; }

.header-block {
  padding: 30px 34px;
  background-color: #F3F2E5; }
  @media only screen and (max-width: 768px) {
    .header-block {
      padding: 6px 10px;
      position: fixed;
      width: 100%;
      z-index: 10; } }
  .header-block .header {
    display: flex;
    justify-content: space-between; }
    .header-block .header .logo-block {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media only screen and (max-width: 768px) {
        .header-block .header .logo-block {
          flex-direction: column-reverse;
          align-items: flex-start; } }
      .header-block .header .logo-block .logo {
        width: 321px; }
        @media only screen and (max-width: 768px) {
          .header-block .header .logo-block .logo {
            width: 160px;
            margin-top: 2px; } }
      .header-block .header .logo-block .descript {
        padding-left: 35px;
        font-size: 21px;
        letter-spacing: 1.5px; }
        @media only screen and (max-width: 768px) {
          .header-block .header .logo-block .descript {
            font-size: 1.8rem;
            padding-left: 0; } }
    .header-block .header .icon-block ul {
      display: flex;
      flex-wrap: nowrap;
      justify-content: flex-end;
      align-items: baseline;
      width: 182px; }
      @media only screen and (max-width: 768px) {
        .header-block .header .icon-block ul {
          width: 91px;
          padding-top: 8px; } }
      .header-block .header .icon-block ul li.cart {
        width: 67px; }
        @media only screen and (max-width: 768px) {
          .header-block .header .icon-block ul li.cart {
            width: 34px; } }
      .header-block .header .icon-block ul li.menu {
        width: 70px;
        cursor: pointer; }
        @media only screen and (max-width: 768px) {
          .header-block .header .icon-block ul li.menu {
            width: 35px; } }

nav {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  background-color: #FFF;
  z-index: 10;
  height: 100%; }
  @media only screen and (max-width: 768px) {
    nav {
      width: 100%;
      height: 100vh;
      top: 63px;
      position: fixed; } }
  nav .gnav-block {
    width: 508px;
    height: 100%; }
    @media only screen and (max-width: 768px) {
      nav .gnav-block {
        width: 100%; } }
    nav .gnav-block .gnav {
      height: 100%;
      padding: 63px 88px; }
      @media only screen and (max-width: 768px) {
        nav .gnav-block .gnav {
          padding: 8px 0; } }
      nav .gnav-block .gnav .close {
        width: 71px;
        position: absolute;
        right: 50px;
        top: 40px;
        cursor: pointer; }
        @media only screen and (max-width: 768px) {
          nav .gnav-block .gnav .close {
            width: 35px;
            display: none; } }
      nav .gnav-block .gnav ul li {
        font-size: 32px;
        line-height: 1.325;
        margin-bottom: 28px; }
        @media only screen and (max-width: 768px) {
          nav .gnav-block .gnav ul li {
            font-size: 3.4rem;
            line-height: 1.2;
            margin-bottom: 0; }
            nav .gnav-block .gnav ul li a {
              display: block;
              border-bottom: 1px solid #000;
              padding-left: 18px;
              padding-top: 10px;
              padding-bottom: 10px; } }
        nav .gnav-block .gnav ul li ul li {
          font-size: 24px;
          line-height: 1.5333333333;
          margin-bottom: 0; }
          @media only screen and (max-width: 768px) {
            nav .gnav-block .gnav ul li ul li {
              font-size: 2.4rem;
              line-height: 1.5476470588; }
              nav .gnav-block .gnav ul li ul li a {
                display: block;
                border-bottom: 1px solid #000;
                padding-left: 36px; } }

.float-menu-block {
  position: fixed;
  right: 0;
  top: 200px;
  z-index: 8; }
  @media only screen and (max-width: 768px) {
    .float-menu-block {
      top: 61px;
      width: 100%; } }
  @media only screen and (max-width: 768px) {
    .float-menu-block .float-menu ul {
      display: flex;
      flex-wrap: nowrap; } }
  .float-menu-block .float-menu ul li {
    cursor: pointer; }
    @media only screen and (max-width: 768px) {
      .float-menu-block .float-menu ul li {
        display: flex;
        width: 100%; } }
    .float-menu-block .float-menu ul li a {
      width: 80px;
      height: 240px;
      background-color: #7B4B00;
      color: #FFF;
      font-size: 22px;
      font-weight: bold;
      text-align: center;
      display: flex;
      align-items: center;
      justify-content: center;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; }
      @media only screen and (max-width: 768px) {
        .float-menu-block .float-menu ul li a {
          -webkit-writing-mode: initial;
          -ms-writing-mode: initial;
          writing-mode: initial;
          width: 100%;
          height: auto;
          font-size: 2.2rem;
          padding: 9px 0;
          display: initial; }
          .float-menu-block .float-menu ul li a:before {
            content: '';
            display: inline-block;
            vertical-align: middle;
            width: 12px;
            height: 12px;
            background-image: url("/assets/images/common/link.svg");
            background-size: 12px 12px;
            background-repeat: no-repeat;
            margin-right: 4px; } }
    @media only screen and (max-width: 768px) {
      .float-menu-block .float-menu ul li:nth-child(2) {
        display: none; } }
    .float-menu-block .float-menu ul li:nth-child(2) a {
      background-color: #500000;
      height: 80px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .float-menu-block .float-menu ul li:nth-child(2) a img {
        width: 42px; }

.footer-link-block .inner {
  width: 1140px;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .footer-link-block .inner {
      width: 87%; } }
  .footer-link-block .inner .footer-link {
    padding: 80px 0; }
    @media only screen and (max-width: 768px) {
      .footer-link-block .inner .footer-link {
        padding: 9% 0; } }
    .footer-link-block .inner .footer-link ul {
      display: flex;
      flex-wrap: nowrap;
      justify-content: center; }
      @media only screen and (max-width: 768px) {
        .footer-link-block .inner .footer-link ul {
          display: block; } }
      .footer-link-block .inner .footer-link ul li {
        width: 50%;
        background-color: #7B4B00; }
        @media only screen and (max-width: 768px) {
          .footer-link-block .inner .footer-link ul li {
            width: 100%; } }
        .footer-link-block .inner .footer-link ul li a {
          padding: 20px;
          display: flex;
          align-items: center;
          color: #FFF; }
          @media only screen and (max-width: 768px) {
            .footer-link-block .inner .footer-link ul li a {
              padding: 10px; } }
          .footer-link-block .inner .footer-link ul li a .image {
            width: 140px;
            margin-right: 36px; }
            @media only screen and (max-width: 768px) {
              .footer-link-block .inner .footer-link ul li a .image {
                width: 27%;
                margin-right: 17px; } }
          .footer-link-block .inner .footer-link ul li a .title {
            font-size: 22px; }
            @media only screen and (max-width: 768px) {
              .footer-link-block .inner .footer-link ul li a .title {
                font-size: 2.7rem;
                vertical-align: middle; } }
            .footer-link-block .inner .footer-link ul li a .title img {
              width: 24px;
              margin-right: 10px; }
              @media only screen and (max-width: 768px) {
                .footer-link-block .inner .footer-link ul li a .title img {
                  width: 16px;
                  vertical-align: middle; } }
        .footer-link-block .inner .footer-link ul li:nth-child(2) {
          background-color: #9C4600; }

.footer-block {
  background-color: #F3F2E5; }
  .footer-block .inner {
    text-align: center;
    padding: 42px 0 50px; }
    @media only screen and (max-width: 768px) {
      .footer-block .inner {
        padding: 28px 0 50px; } }
    .footer-block .inner .logo {
      width: 160px;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        .footer-block .inner .logo {
          width: 111px; } }
    .footer-block .inner .information {
      font-size: 18px;
      line-height: 1.7333333333;
      padding-top: 22px;
      letter-spacing: 1.4px; }
      @media only screen and (max-width: 768px) {
        .footer-block .inner .information {
          font-size: 2.4rem;
          line-height: 1.8;
          padding-top: 8px; } }
    .footer-block .inner .copyright {
      font-size: 14px;
      padding-top: 28px;
      letter-spacing: 1.3px; }
      @media only screen and (max-width: 768px) {
        .footer-block .inner .copyright {
          font-size: 1.6rem;
          padding-top: 19px; } }

.reservation-modal {
  width: 880px;
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 11;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%); }
  @media only screen and (max-width: 768px) {
    .reservation-modal {
      width: 87%; } }
  .reservation-modal .reservation-block .reservation-close {
    text-align: right;
    cursor: pointer; }
    .reservation-modal .reservation-block .reservation-close img {
      width: 71px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation-close img {
          width: 35px; } }
  .reservation-modal .reservation-block .reservation {
    background-color: #FFF;
    padding: 35px 42px;
    text-align: center;
    margin-top: 12px; }
    @media only screen and (max-width: 768px) {
      .reservation-modal .reservation-block .reservation {
        padding: 26px 15px; } }
    .reservation-modal .reservation-block .reservation .title {
      font-size: 35px;
      letter-spacing: 6px;
      padding-bottom: 20px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation .title {
          font-size: 4.2rem;
          line-height: 1.4761904762;
          padding-bottom: 10px; } }
    .reservation-modal .reservation-block .reservation .covid-block {
      background-color: #F3F2E5;
      padding: 35px 20px 25px 20px;
      font-size: 18px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation .covid-block {
          line-height: 1.9230769231;
          font-size: 2.6rem;
          padding: 10px 7px; } }
      .reservation-modal .reservation-block .reservation .covid-block .covid {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        text-align: left;
        width: 685px;
        margin: 0 auto; }
        @media only screen and (max-width: 768px) {
          .reservation-modal .reservation-block .reservation .covid-block .covid {
            width: 90%; } }
        .reservation-modal .reservation-block .reservation .covid-block .covid ul li {
          padding-bottom: 30px; }
          @media only screen and (max-width: 768px) {
            .reservation-modal .reservation-block .reservation .covid-block .covid ul li {
              padding-bottom: 0; } }
      .reservation-modal .reservation-block .reservation .covid-block p {
        text-align: center;
        border-top: 1px solid #B2B2B2;
        margin-top: 6px;
        padding-top: 20px; }
        @media only screen and (max-width: 768px) {
          .reservation-modal .reservation-block .reservation .covid-block p {
            padding-top: 7px; } }
    .reservation-modal .reservation-block .reservation .tel-block .text {
      font-size: 20px;
      letter-spacing: 1.6px;
      padding-top: 25px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation .tel-block .text {
          line-height: 1.7142857143;
          font-size: 2.8rem;
          padding-top: 7px; } }
    .reservation-modal .reservation-block .reservation .tel-block .tel {
      font-size: 35px;
      letter-spacing: 8.5px;
      padding-top: 18px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation .tel-block .tel {
          line-height: 1.7142857143;
          font-size: 5.2rem;
          padding-top: 0;
          letter-spacing: 6px; } }
    .reservation-modal .reservation-block .reservation .store-link-block {
      padding-top: 25px; }
      @media only screen and (max-width: 768px) {
        .reservation-modal .reservation-block .reservation .store-link-block {
          padding-top: 5px;
          width: 92%;
          margin: 0 auto; } }
      .reservation-modal .reservation-block .reservation .store-link-block ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between; }
        @media only screen and (max-width: 768px) {
          .reservation-modal .reservation-block .reservation .store-link-block ul {
            flex-direction: column; } }
        .reservation-modal .reservation-block .reservation .store-link-block ul li {
          width: calc(50% - 10px); }
          @media only screen and (max-width: 768px) {
            .reservation-modal .reservation-block .reservation .store-link-block ul li {
              width: 100%;
              margin-bottom: 8px; } }
          .reservation-modal .reservation-block .reservation .store-link-block ul li a {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            width: 100%;
            height: 120px;
            font-size: 22px;
            font-weight: bold;
            background-color: #7B4B00;
            line-height: 1.2;
            color: #FFF; }
            @media only screen and (max-width: 768px) {
              .reservation-modal .reservation-block .reservation .store-link-block ul li a {
                flex-direction: row;
                font-size: 3.2rem;
                height: auto;
                justify-content: flex-start;
                padding: 10px;
                box-sizing: border-box; } }
            .reservation-modal .reservation-block .reservation .store-link-block ul li a img {
              width: 24px; }
              @media only screen and (max-width: 768px) {
                .reservation-modal .reservation-block .reservation .store-link-block ul li a img {
                  width: 18px; } }
            .reservation-modal .reservation-block .reservation .store-link-block ul li a div:last-child {
              padding-top: 10px; }
              @media only screen and (max-width: 768px) {
                .reservation-modal .reservation-block .reservation .store-link-block ul li a div:last-child {
                  padding-top: 0; } }
            @media only screen and (max-width: 768px) {
              .reservation-modal .reservation-block .reservation .store-link-block ul li a div {
                order: 2; }
                .reservation-modal .reservation-block .reservation .store-link-block ul li a div:nth-child(2) {
                  order: 1;
                  padding-right: 5px; } }

/*ページ*/
.mv-block {
  min-height: 736px;
  background-image: url("/assets/images/home/mv.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: relative; }
  @media only screen and (max-width: 768px) {
    .mv-block {
      background-image: url("/assets/images/home/mv-sp.png");
      min-height: 48vh; } }
  .mv-block .mv-title {
    color: #FFF;
    width: 950px;
    margin: 0 auto;
    padding-top: 150px;
    display: flex; }
    @media only screen and (max-width: 768px) {
      .mv-block .mv-title {
        width: 90%;
        padding-top: 32px;
        padding-bottom: 48px; } }
    .mv-block .mv-title .text {
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      margin-left: auto; }
      .mv-block .mv-title .text h1 {
        font-size: 46px;
        font-weight: normal;
        line-height: 1.2; }
        @media only screen and (max-width: 768px) {
          .mv-block .mv-title .text h1 {
            font-size: 6rem; } }
      .mv-block .mv-title .text p {
        font-size: 18px;
        line-height: 2.9555555556; }
        @media only screen and (max-width: 768px) {
          .mv-block .mv-title .text p {
            font-size: 2.4rem;
            line-height: 2.465;
            padding-right: 10px; } }
  .mv-block .scroll {
    position: absolute;
    width: 78px;
    bottom: 15px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }
    @media only screen and (max-width: 768px) {
      .mv-block .scroll {
        width: 61px; } }

.news-block {
  background-color: #F2E9D9; }
  @media only screen and (max-width: 768px) {
    .news-block {
      padding-bottom: 4%; } }
  .news-block .inner {
    width: 870px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .news-block .inner {
        width: 87%; } }
    .news-block .inner .news {
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      padding: 26px 0 50px 0; }
      @media only screen and (max-width: 768px) {
        .news-block .inner .news {
          display: block;
          padding: 10px 0 10px 0; } }
      .news-block .inner .news .headline {
        width: 136px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border: 1px solid #B2B2B2;
        padding-top: 23px;
        padding-bottom: 18px; }
        @media only screen and (max-width: 768px) {
          .news-block .inner .news .headline {
            width: 100%;
            flex-direction: row;
            justify-content: flex-start;
            border: none;
            padding-top: 0;
            padding-bottom: 10px;
            padding-left: 6px; } }
        .news-block .inner .news .headline .logo {
          width: 38px; }
          @media only screen and (max-width: 768px) {
            .news-block .inner .news .headline .logo {
              width: 27px; } }
        .news-block .inner .news .headline .headline-text {
          font-size: 22px;
          -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          display: flex;
          align-items: center;
          padding-top: 13px;
          letter-spacing: 3px;
          line-height: 1.1998203862; }
          @media only screen and (max-width: 768px) {
            .news-block .inner .news .headline .headline-text {
              font-size: 3rem;
              display: block;
              -webkit-writing-mode: initial;
              -ms-writing-mode: initial;
              writing-mode: initial;
              padding-top: 0;
              padding-left: 6px;
              letter-spacing: 2px; } }
      .news-block .inner .news .detail {
        width: 701px; }
        @media only screen and (max-width: 768px) {
          .news-block .inner .news .detail {
            width: 100%; } }
        .news-block .inner .news .detail ul {
          border-top: 1px solid #B2B2B2; }
          .news-block .inner .news .detail ul li {
            font-size: 18px;
            border-bottom: 1px solid #B2B2B2;
            line-height: 2;
            padding: 20px 0 24px; }
            @media only screen and (max-width: 768px) {
              .news-block .inner .news .detail ul li {
                font-size: 2.4rem;
                padding: 13px 0 14px; } }
            .news-block .inner .news .detail ul li span {
              display: inline-block;
              padding-right: 23px; }
              @media only screen and (max-width: 768px) {
                .news-block .inner .news .detail ul li span {
                  padding-right: 13px; } }

.about-block {
  background-color: #F3F2E5; }
  .about-block .inner {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 75px 0 165px; }
    @media only screen and (max-width: 768px) {
      .about-block .inner {
        padding: 9% 0 12.4%; } }
    .about-block .inner .text {
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; }
      .about-block .inner .text h1 {
        font-size: 40px;
        font-weight: normal;
        line-height: 1.65; }
        @media only screen and (max-width: 768px) {
          .about-block .inner .text h1 {
            font-size: 4.8rem;
            line-height: 1.375; } }
      .about-block .inner .text p {
        font-size: 18px;
        line-height: 2.9555555556; }
        @media only screen and (max-width: 768px) {
          .about-block .inner .text p {
            font-size: 2.2rem;
            line-height: 2.3254545455; } }

.link-block ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .link-block ul li {
    width: 50%;
    position: relative; }
    @media only screen and (max-width: 768px) {
      .link-block ul li {
        width: 100%; } }
    .link-block ul li a {
      display: block;
      color: #FFF; }
      .link-block ul li a .link {
        position: absolute;
        bottom: 0;
        font-size: 29px;
        width: 100%;
        background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#00000000',GradientType=1 );
        /* IE6-9 */
        padding: 20px 30px; }
        @media only screen and (max-width: 768px) {
          .link-block ul li a .link {
            padding: 10px 15px; } }
        @media only screen and (max-width: 768px) {
          .link-block ul li a .link {
            font-size: 4rem; }
            .link-block ul li a .link span {
              font-size: 2.6rem; } }
        .link-block ul li a .link img {
          width: 24px;
          margin-right: 10px; }
          @media only screen and (max-width: 768px) {
            .link-block ul li a .link img {
              width: 16px; } }

.recruit-block .inner {
  text-align: center;
  background-color: #9C4600;
  padding: 33px 0 36px;
  width: 100%; }
  @media only screen and (max-width: 768px) {
    .recruit-block .inner {
      text-align: justify;
      padding: 13px 15px 16px; } }
  .recruit-block .inner a {
    color: #FFF;
    font-size: 29px;
    line-height: 1; }
    @media only screen and (max-width: 768px) {
      .recruit-block .inner a {
        font-size: 4rem;
        line-height: 1.2;
        display: flex; } }
    .recruit-block .inner a img {
      width: 24px;
      margin-right: 10px; }
      @media only screen and (max-width: 768px) {
        .recruit-block .inner a img {
          width: 16px; } }

@media only screen and (max-width: 768px) {
  .recruitment-block {
    margin-top: 43px; } }
.recruitment-block .inner {
  width: 1000px;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .recruitment-block .inner {
      width: 87%; } }
  .recruitment-block .inner .recruitment {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    @media only screen and (max-width: 768px) {
      .recruitment-block .inner .recruitment {
        display: block; } }
    .recruitment-block .inner .recruitment .recruitment-box {
      background-color: #F3F2E5;
      width: 480px;
      padding: 30px; }
      @media only screen and (max-width: 768px) {
        .recruitment-block .inner .recruitment .recruitment-box {
          width: 100%;
          padding: 10px 20px;
          margin-bottom: 25px; } }
      .recruitment-block .inner .recruitment .recruitment-box h2 {
        font-size: 30px;
        font-weight: normal;
        letter-spacing: 8px; }
        @media only screen and (max-width: 768px) {
          .recruitment-block .inner .recruitment .recruitment-box h2 {
            font-size: 4.8rem;
            line-height: 1.75;
            letter-spacing: 8px; } }
      .recruitment-block .inner .recruitment .recruitment-box .requirements {
        padding-top: 10px;
        padding-bottom: 15px;
        border-bottom: 1px solid #808080; }
        @media only screen and (max-width: 768px) {
          .recruitment-block .inner .recruitment .recruitment-box .requirements {
            padding-top: 0;
            padding-bottom: 7px; } }
        .recruitment-block .inner .recruitment .recruitment-box .requirements ol li {
          font-size: 17px;
          line-height: 1.9529411765; }
          @media only screen and (max-width: 768px) {
            .recruitment-block .inner .recruitment .recruitment-box .requirements ol li {
              line-height: 1.7142857143;
              font-size: 2.8rem; } }
        .recruitment-block .inner .recruitment .recruitment-box .requirements p {
          font-size: 15px;
          line-height: 2.2133333333; }
          @media only screen and (max-width: 768px) {
            .recruitment-block .inner .recruitment .recruitment-box .requirements p {
              line-height: 1.7142857143;
              font-size: 2.8rem; } }
      .recruitment-block .inner .recruitment .recruitment-box .comment {
        font-size: 17px;
        line-height: 1.9529411765;
        padding-top: 11px; }
        @media only screen and (max-width: 768px) {
          .recruitment-block .inner .recruitment .recruitment-box .comment {
            line-height: 1.7142857143;
            font-size: 2.8rem;
            padding-top: 9px; } }
      .recruitment-block .inner .recruitment .recruitment-box .picture {
        display: flex;
        justify-content: left;
        align-items: center;
        margin-top: 27px; }
        @media only screen and (max-width: 768px) {
          .recruitment-block .inner .recruitment .recruitment-box .picture {
            margin-top: 14px; } }
        .recruitment-block .inner .recruitment .recruitment-box .picture .image {
          width: 85px; }
          @media only screen and (max-width: 768px) {
            .recruitment-block .inner .recruitment .recruitment-box .picture .image {
              width: 60px; } }
        .recruitment-block .inner .recruitment .recruitment-box .picture .name {
          margin-left: 27px;
          font-size: 18px; }
          @media only screen and (max-width: 768px) {
            .recruitment-block .inner .recruitment .recruitment-box .picture .name {
              font-size: 2.8rem;
              margin-left: 17px; } }

.application-block {
  padding-top: 33px; }
  @media only screen and (max-width: 768px) {
    .application-block {
      padding-top: 3px; } }
  .application-block .inner {
    width: 1000px;
    margin: 0 auto;
    background-color: #F3F2E5;
    padding: 30px 30px 23px 30px; }
    @media only screen and (max-width: 768px) {
      .application-block .inner {
        width: 87%;
        padding: 9px 20px 19px 20px; } }
    .application-block .inner h2 {
      font-size: 30px;
      font-weight: normal;
      letter-spacing: 3px;
      padding-bottom: 12px; }
      @media only screen and (max-width: 768px) {
        .application-block .inner h2 {
          font-size: 4.8rem;
          letter-spacing: 3px;
          padding-bottom: 0;
          line-height: 1.75; } }
    .application-block .inner .application-step-block {
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .application-block .inner .application-step-block {
          display: block; } }
      .application-block .inner .application-step-block .application-step {
        line-height: 1.9529411765;
        font-size: 17px;
        width: 290px; }
        @media only screen and (max-width: 768px) {
          .application-block .inner .application-step-block .application-step {
            width: 100%;
            font-size: 2.8rem;
            line-height: 1.7142857143; } }
        .application-block .inner .application-step-block .application-step h3 {
          font-weight: normal; }
        @media only screen and (max-width: 768px) {
          .application-block .inner .application-step-block .application-step p {
            letter-spacing: 1px; } }
        .application-block .inner .application-step-block .application-step:nth-of-type(2) {
          border-right: 1px solid #808080;
          border-left: 1px solid #808080;
          padding: 0 20px;
          width: 325px; }
          @media only screen and (max-width: 768px) {
            .application-block .inner .application-step-block .application-step:nth-of-type(2) {
              width: 100%;
              border: none;
              padding: 10px 0;
              margin: 10px 0;
              border-top: 1px solid #808080;
              border-bottom: 1px solid #808080; } }

.apply-button-block {
  padding-top: 70px;
  padding-bottom: 85px; }
  @media only screen and (max-width: 768px) {
    .apply-button-block {
      padding-top: 32px;
      padding-bottom: 43px; } }
  .apply-button-block .inner {
    width: 360px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .apply-button-block .inner {
        width: 87%; } }
    .apply-button-block .inner .button a {
      width: 100%;
      display: block;
      font-size: 22px;
      color: #FFF;
      line-height: 1.2;
      text-align: center;
      background-color: #9C4600;
      padding: 16px 0 17px;
      letter-spacing: 5px; }
      @media only screen and (max-width: 768px) {
        .apply-button-block .inner .button a {
          font-size: 3.2rem; } }
      .apply-button-block .inner .button a:before {
        content: '';
        display: inline-block;
        vertical-align: middle;
        width: 24px;
        height: 24px;
        background-image: url("/assets/images/common/link.svg");
        background-size: 24px 24px;
        background-repeat: no-repeat;
        margin-right: 4px; }
        @media only screen and (max-width: 768px) {
          .apply-button-block .inner .button a:before {
            width: 22px;
            height: 18px;
            background-size: 18px 18px; } }

.shopinfo-page .mv {
  width: 100%; }
.shopinfo-page .access-block {
  padding-top: 84px; }
  @media only screen and (max-width: 768px) {
    .shopinfo-page .access-block {
      padding-top: 24px; } }
  .shopinfo-page .access-block .inner {
    width: 1140px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .access-block .inner {
        width: 87%;
        flex-direction: column-reverse; } }
    .shopinfo-page .access-block .inner .map {
      width: 514px;
      height: 100%;
      padding-top: 17px; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .access-block .inner .map {
          width: 100%;
          display: block; } }
      .shopinfo-page .access-block .inner .map iframe {
        width: 100%;
        height: 742px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .map iframe {
            height: 473px; } }
    .shopinfo-page .access-block .inner .info {
      width: 570px; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .access-block .inner .info {
          width: 100%; } }
      .shopinfo-page .access-block .inner .info .shop-name {
        font-size: 40px;
        line-height: 1.65;
        font-weight: normal;
        letter-spacing: 5px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .shop-name {
            font-size: 4.8rem;
            line-height: 1.75;
            letter-spacing: 3px; } }
      .shopinfo-page .access-block .inner .info .address {
        font-size: 18px;
        line-height: 2.0666666667;
        padding-top: 19px;
        letter-spacing: 1.7px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .address {
            font-size: 2.8rem;
            line-height: 1.7142857143;
            padding-top: 5px;
            letter-spacing: 1px; } }
      .shopinfo-page .access-block .inner .info .tel {
        font-size: 40px;
        line-height: 1.65;
        padding-top: 22px;
        letter-spacing: 9.7px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .tel {
            font-size: 7rem;
            line-height: 1.1314285714;
            padding-top: 6px;
            letter-spacing: 8.2px; } }
      .shopinfo-page .access-block .inner .info .business-hour {
        font-size: 18px;
        line-height: 2.0666666667;
        padding-top: 5px;
        letter-spacing: 1px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .business-hour {
            font-size: 2.8rem;
            line-height: 1.7142857143;
            padding-top: 16px;
            letter-spacing: 1px; } }
      .shopinfo-page .access-block .inner .info .public-access {
        font-size: 18px;
        line-height: 2.0666666667;
        padding-top: 22px;
        letter-spacing: 1px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .public-access {
            font-size: 2.8rem;
            line-height: 1.7142857143;
            padding-top: 12px;
            letter-spacing: 1px; } }
      .shopinfo-page .access-block .inner .info .button {
        padding-top: 27px; }
        .shopinfo-page .access-block .inner .info .button a {
          width: 100%;
          display: block;
          font-size: 22px;
          color: #FFF;
          line-height: 1.2;
          text-align: center;
          background-color: #7B4B00;
          padding: 16px 0 17px;
          letter-spacing: 5px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .access-block .inner .info .button a {
              font-size: 3.2rem; } }
          .shopinfo-page .access-block .inner .info .button a:before {
            content: '';
            display: inline-block;
            vertical-align: middle;
            width: 24px;
            height: 24px;
            background-image: url("/assets/images/common/link.svg");
            background-size: 24px 24px;
            background-repeat: no-repeat;
            margin-right: 4px; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .access-block .inner .info .button a:before {
                width: 22px;
                height: 18px;
                background-size: 18px 18px; } }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .access-block .inner .info .button {
            padding-top: 15px; } }
.shopinfo-page .store-block {
  padding-top: 155px; }
  @media only screen and (max-width: 768px) {
    .shopinfo-page .store-block {
      padding-top: 44px; } }
  .shopinfo-page .store-block .inner {
    width: 1140px;
    margin: 0 auto;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .store-block .inner {
        width: 87%; } }
    .shopinfo-page .store-block .inner h1 {
      font-size: 40px;
      line-height: 1.65;
      font-weight: normal;
      position: relative;
      text-align: center;
      letter-spacing: 10px;
      margin-bottom: 30px;
      margin-bottom: 85px; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .store-block .inner h1 {
          font-size: 4.8rem;
          line-height: 2.0625;
          margin-bottom: 7px; } }
      .shopinfo-page .store-block .inner h1:before {
        content: "";
        width: 76px;
        height: 4px;
        background-color: #000;
        position: absolute;
        bottom: -13px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0); }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner h1:before {
            width: 40px;
            height: 3px;
            bottom: 0;
            left: 49%; } }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .store-block .inner h1 {
          margin-bottom: 25px; } }
    .shopinfo-page .store-block .inner .shopinfo-box {
      padding-bottom: 43px; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .store-block .inner .shopinfo-box {
          padding-bottom: 25px; } }
      .shopinfo-page .store-block .inner .shopinfo-box h3 {
        font-size: 30px;
        font-weight: normal;
        letter-spacing: 5px;
        line-height: 1.9333333333; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner .shopinfo-box h3 {
            font-size: 3.6rem;
            letter-spacing: 4.5px; } }
      .shopinfo-page .store-block .inner .shopinfo-box p {
        font-size: 15px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner .shopinfo-box p {
            font-size: 2.4rem;
            padding-top: 3px; } }
      .shopinfo-page .store-block .inner .shopinfo-box ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        padding-top: 27px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner .shopinfo-box ul {
            display: block;
            padding-top: 14px; } }
        .shopinfo-page .store-block .inner .shopinfo-box ul li {
          width: 560px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .store-block .inner .shopinfo-box ul li {
              width: 100%; } }
    .shopinfo-page .store-block .inner .shop-reserved {
      background-color: #F3F2E5;
      margin-top: 14px;
      padding: 16px 0 27px; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .store-block .inner .shop-reserved {
          margin-top: 7px;
          padding: 6px 0 15px; } }
      .shopinfo-page .store-block .inner .shop-reserved h4 {
        font-size: 30px;
        font-weight: normal;
        line-height: 1.9333333333;
        letter-spacing: 7px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner .shop-reserved h4 {
            font-size: 3.6rem;
            letter-spacing: 4.5px; } }
      .shopinfo-page .store-block .inner .shop-reserved p {
        font-size: 15px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .store-block .inner .shop-reserved p {
            font-size: 2.4rem; } }
.shopinfo-page .dinner-block {
  padding-top: 135px; }
  @media only screen and (max-width: 768px) {
    .shopinfo-page .dinner-block {
      padding-top: 73px; } }
  .shopinfo-page .dinner-block h1 {
    font-size: 40px;
    line-height: 1.65;
    font-weight: normal;
    position: relative;
    text-align: center;
    letter-spacing: 10px;
    margin-bottom: 30px;
    margin-bottom: 110px; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .dinner-block h1 {
        font-size: 4.8rem;
        line-height: 2.0625;
        margin-bottom: 7px; } }
    .shopinfo-page .dinner-block h1:before {
      content: "";
      width: 76px;
      height: 4px;
      background-color: #000;
      position: absolute;
      bottom: -13px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .dinner-block h1:before {
          width: 40px;
          height: 3px;
          bottom: 0;
          left: 49%; } }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .dinner-block h1 {
        margin-bottom: 34px; } }
  .shopinfo-page .dinner-block .dinner-wrapper {
    background-color: #F3F2E5;
    padding-top: 102px;
    padding-bottom: 63px; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .dinner-block .dinner-wrapper {
        padding-top: 19px;
        padding-bottom: 3px; } }
    .shopinfo-page .dinner-block .dinner-wrapper .inner {
      width: 1140px;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .dinner-block .dinner-wrapper .inner {
          width: 87%; } }
      .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 60px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box {
            display: block;
            margin-bottom: 26px; } }
        .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide {
          width: 600px;
          padding-top: 13px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide {
              width: 100%;
              padding-top: 13px; } }
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .main-slide img {
            width: 100%; }
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .thumb-slide {
            padding-top: 15px; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .thumb-slide {
                padding-top: 8px; } }
            .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .thumb-slide ul {
              display: flex;
              flex-wrap: nowrap; }
              .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .thumb-slide ul li {
                width: 25%;
                padding: 0;
                margin: 0;
                opacity: .5;
                cursor: pointer; }
                .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-slide .thumb-slide ul li.thumbnail-current {
                  opacity: 1; }
        .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction {
          width: 457px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction {
              width: 100%;
              padding-top: 17px; } }
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction h3 {
            font-size: 40px;
            line-height: 1.65;
            font-weight: normal;
            letter-spacing: 2px; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction h3 {
                font-size: 4.8rem;
                line-height: 1.65;
                letter-spacing: 1.6px; } }
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction .price {
            font-size: 23px;
            line-height: 2; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction .price {
                font-size: 3.2rem;
                letter-spacing: 2px; } }
          .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction .introduction {
            font-size: 17px;
            line-height: 1.9529411765;
            padding-top: 16px; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .dinner-block .dinner-wrapper .inner .dinner .dinner-box .menu-introduction .introduction {
                font-size: 2.8rem;
                line-height: 1.7142857143;
                padding-top: 10px; } }
.shopinfo-page .lunch-block {
  padding-top: 183px; }
  @media only screen and (max-width: 768px) {
    .shopinfo-page .lunch-block {
      padding-top: 43px; } }
  .shopinfo-page .lunch-block h1 {
    font-size: 40px;
    line-height: 1.65;
    font-weight: normal;
    position: relative;
    text-align: center;
    letter-spacing: 10px;
    margin-bottom: 30px;
    margin-bottom: 107px; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .lunch-block h1 {
        font-size: 4.8rem;
        line-height: 2.0625;
        margin-bottom: 7px; } }
    .shopinfo-page .lunch-block h1:before {
      content: "";
      width: 76px;
      height: 4px;
      background-color: #000;
      position: absolute;
      bottom: -13px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .lunch-block h1:before {
          width: 40px;
          height: 3px;
          bottom: 0;
          left: 49%; } }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .lunch-block h1 {
        margin-bottom: 33px; } }
  .shopinfo-page .lunch-block .lunch-main-image {
    width: 100%;
    background: url("/assets/images/shopinfo/bg-img01.png") no-repeat 0 0;
    background-size: cover;
    display: flex;
    justify-content: flex-end;
    padding-top: 128px;
    padding-bottom: 133px; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .lunch-block .lunch-main-image {
        background: url("/assets/images/shopinfo/bg-img01-sp.png") no-repeat 0 0;
        background-size: cover;
        padding-top: 6%;
        padding-bottom: 64%; } }
    .shopinfo-page .lunch-block .lunch-main-image .text {
      padding-right: 170px;
      text-align: center; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .lunch-block .lunch-main-image .text {
          padding-right: 0;
          width: 87%;
          margin: 0 auto;
          text-align: left; } }
      .shopinfo-page .lunch-block .lunch-main-image .text h2 {
        font-size: 30px;
        font-weight: normal;
        line-height: 1.9333333333; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .lunch-block .lunch-main-image .text h2 {
            font-size: 3.6rem;
            line-height: 1.9333333333;
            letter-spacing: 3px; } }
      .shopinfo-page .lunch-block .lunch-main-image .text p {
        font-size: 18px;
        line-height: 2.9555555556; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .lunch-block .lunch-main-image .text p {
            font-size: 2.8rem;
            line-height: 2.1428571429;
            padding-top: 13px; } }
  .shopinfo-page .lunch-block .lunch-content-block {
    background-color: #F3F2E5;
    padding-top: 53px;
    padding-bottom: 46px; }
    @media only screen and (max-width: 768px) {
      .shopinfo-page .lunch-block .lunch-content-block {
        padding-top: 17px;
        padding-bottom: 4px; } }
    .shopinfo-page .lunch-block .lunch-content-block .inner {
      width: 1140px;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        .shopinfo-page .lunch-block .lunch-content-block .inner {
          width: 87%; } }
      .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu {
        text-align: center; }
        .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu h2 {
          font-size: 40px;
          font-weight: normal;
          line-height: 1.65;
          letter-spacing: 7px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu h2 {
              font-size: 4.8rem;
              line-height: 1.65;
              letter-spacing: 7px; } }
        .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu .price {
          font-size: 23px;
          line-height: 2; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu .price {
              font-size: 3.2rem;
              line-height: 2; } }
        .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu .introduction {
          font-size: 18px;
          line-height: 2.9555555556;
          padding-top: 5px; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-main-menu .introduction {
              font-size: 2.8rem;
              line-height: 2.1428571429;
              padding-top: 2px;
              text-align: left; } }
      .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list {
        padding-top: 133px; }
        @media only screen and (max-width: 768px) {
          .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list {
            padding-top: 52px; } }
        .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          @media only screen and (max-width: 768px) {
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul {
              display: block; } }
          .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li {
            width: 500px;
            margin-bottom: 78px; }
            @media only screen and (max-width: 768px) {
              .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li {
                width: 100%;
                margin-bottom: 45px; } }
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li h4 {
              font-size: 30px;
              line-height: 1.9333333333;
              font-weight: normal;
              padding-top: 8px; }
              @media only screen and (max-width: 768px) {
                .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li h4 {
                  font-size: 3.6rem;
                  line-height: 1.9333333333;
                  letter-spacing: 3px; } }
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li .price {
              font-size: 23px;
              padding-top: 5px; }
              @media only screen and (max-width: 768px) {
                .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li .price {
                  font-size: 3.2rem;
                  padding-top: 5px; } }
            .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li .introduction {
              font-size: 17px;
              line-height: 1.9529411765;
              padding-top: 13px; }
              @media only screen and (max-width: 768px) {
                .shopinfo-page .lunch-block .lunch-content-block .inner .lunch-list ul li .introduction {
                  font-size: 2.8rem;
                  line-height: 1.7142857143;
                  padding-top: 13px; } }

.soup-page .soup-main-image,
.soup-page .soup-sub-image {
  width: 100%;
  background: url("/assets/images/mizutaki/soup/bg-img01.png") no-repeat 0 0;
  background-size: cover;
  display: flex;
  justify-content: flex-start;
  padding-top: 168px;
  padding-bottom: 123px; }
  @media only screen and (max-width: 768px) {
    .soup-page .soup-main-image,
    .soup-page .soup-sub-image {
      background: url("/assets/images/mizutaki/soup/bg-img01-sp.png") no-repeat 0 0;
      background-size: cover;
      display: block;
      padding-top: 15px;
      padding-bottom: 133px; } }
  .soup-page .soup-main-image .text,
  .soup-page .soup-sub-image .text {
    color: #FFF;
    padding-left: 150px; }
    @media only screen and (max-width: 768px) {
      .soup-page .soup-main-image .text,
      .soup-page .soup-sub-image .text {
        padding-left: 0;
        width: 87%;
        margin: 0 auto; } }
    .soup-page .soup-main-image .text h2,
    .soup-page .soup-sub-image .text h2 {
      font-size: 40px;
      font-weight: normal;
      line-height: 1.65;
      letter-spacing: 8px;
      padding-bottom: 10px; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-main-image .text h2,
        .soup-page .soup-sub-image .text h2 {
          font-size: 4.8rem;
          line-height: 1.75;
          padding-bottom: 4px;
          letter-spacing: 6px; } }
    .soup-page .soup-main-image .text p,
    .soup-page .soup-sub-image .text p {
      font-size: 18px;
      line-height: 2.9555555556; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-main-image .text p,
        .soup-page .soup-sub-image .text p {
          font-size: 2.8rem;
          line-height: 2.1428571429; } }
.soup-page .soup-main-image {
  margin-top: 32px; }
.soup-page .soup-sub-image {
  background: url("/assets/images/mizutaki/soup/bg-img02.png") no-repeat 0 0;
  background-size: cover;
  padding-top: 137px;
  padding-bottom: 110px; }
  @media only screen and (max-width: 768px) {
    .soup-page .soup-sub-image {
      background: url("/assets/images/mizutaki/soup/bg-img02-sp.png") no-repeat 0 0;
      background-size: cover;
      padding-top: 17px;
      padding-bottom: 172px; } }
.soup-page .soup-introduction {
  background-color: #F3F2E5;
  padding-top: 66px;
  padding-bottom: 64px; }
  @media only screen and (max-width: 768px) {
    .soup-page .soup-introduction {
      padding-top: 29px;
      padding-bottom: 46px; } }
  @media only screen and (max-width: 768px) {
    .soup-page .soup-introduction .inner {
      width: 87%;
      margin: 0 auto; } }
  .soup-page .soup-introduction .inner .soup {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center; }
    @media only screen and (max-width: 768px) {
      .soup-page .soup-introduction .inner .soup {
        display: block; } }
    .soup-page .soup-introduction .inner .soup .image {
      width: 482px; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-introduction .inner .soup .image {
          width: 75%;
          margin: 0 auto; } }
    .soup-page .soup-introduction .inner .soup .introduction h3 {
      font-size: 40px;
      font-weight: normal;
      line-height: 1.65;
      letter-spacing: 6.5px;
      padding-bottom: 12px; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-introduction .inner .soup .introduction h3 {
          font-size: 4.8rem;
          line-height: 1.75;
          padding-bottom: 2px;
          letter-spacing: 4.5px; } }
    .soup-page .soup-introduction .inner .soup .introduction p {
      font-size: 18px;
      line-height: 2.9555555556; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-introduction .inner .soup .introduction p {
          font-size: 2.8rem;
          line-height: 2.1428571429; } }
.soup-page .soup-sub-block {
  background-color: #F3F2E5;
  padding-top: 132px;
  padding-bottom: 87px; }
  @media only screen and (max-width: 768px) {
    .soup-page .soup-sub-block {
      padding-top: 46px;
      padding-bottom: 10px; } }
  .soup-page .soup-sub-block .inner {
    width: 1140px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .soup-page .soup-sub-block .inner {
        width: 87%; } }
    .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box {
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 32px; }
      @media only screen and (max-width: 768px) {
        .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box {
          display: block; } }
      .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .image {
        width: 600px; }
        @media only screen and (max-width: 768px) {
          .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .image {
            width: 100%; } }
      .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction {
        width: 458px; }
        @media only screen and (max-width: 768px) {
          .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction {
            width: 100%; } }
        .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction h3 {
          font-size: 40px;
          font-weight: normal;
          line-height: 1.65; }
          @media only screen and (max-width: 768px) {
            .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction h3 {
              line-height: 1.75;
              font-size: 4.8rem;
              padding-top: 16px;
              padding-bottom: 6px;
              letter-spacing: 4px; } }
        .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction p {
          font-size: 17px;
          line-height: 1.9529411765; }
          @media only screen and (max-width: 768px) {
            .soup-page .soup-sub-block .inner .soup-sub .soup-sub-box .introduction p {
              font-size: 2.4rem;
              line-height: 1.9166666667; } }

@media only screen and (max-width: 768px) {
  .roots-page .main-link-block {
    margin-top: 17px; } }
.roots-page .main-link-block .inner {
  width: 1000px;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .roots-page .main-link-block .inner {
      width: 87%; } }
  .roots-page .main-link-block .inner .button-block {
    width: 561px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .roots-page .main-link-block .inner .button-block {
        width: 100%; } }
    .roots-page .main-link-block .inner .button-block .button {
      margin-bottom: 19px; }
      .roots-page .main-link-block .inner .button-block .button a {
        width: 100%;
        display: block;
        font-size: 22px;
        color: #FFF;
        line-height: 1.2;
        text-align: center;
        background-color: #9C4600;
        padding: 16px 0 17px;
        letter-spacing: 5px; }
        @media only screen and (max-width: 768px) {
          .roots-page .main-link-block .inner .button-block .button a {
            font-size: 3.2rem; } }
        .roots-page .main-link-block .inner .button-block .button a:before {
          content: '';
          display: inline-block;
          vertical-align: middle;
          width: 24px;
          height: 24px;
          background-image: url("/assets/images/common/link.svg");
          background-size: 24px 24px;
          background-repeat: no-repeat;
          margin-right: 4px; }
          @media only screen and (max-width: 768px) {
            .roots-page .main-link-block .inner .button-block .button a:before {
              width: 22px;
              height: 18px;
              background-size: 18px 18px; } }
      @media only screen and (max-width: 768px) {
        .roots-page .main-link-block .inner .button-block .button {
          margin-bottom: 14px; }
          .roots-page .main-link-block .inner .button-block .button a {
            font-size: 3.2rem;
            line-height: 1.2;
            text-align: left;
            display: flex;
            align-items: center;
            padding: 16px 13px;
            box-sizing: border-box;
            letter-spacing: 1.5px; } }
    .roots-page .main-link-block .inner .button-block p {
      font-size: 14px;
      text-align: center; }
      @media only screen and (max-width: 768px) {
        .roots-page .main-link-block .inner .button-block p {
          font-size: 2.3rem;
          line-height: 1.55;
          text-align: left;
          margin-top: -8px; } }
      .roots-page .main-link-block .inner .button-block p a:link {
        color: #007cc8; }
      .roots-page .main-link-block .inner .button-block p a:visited {
        color: #007cc8; }
      .roots-page .main-link-block .inner .button-block p a:hover {
        color: #77c7fc; }
  .roots-page .main-link-block .inner .movie-block {
    text-align: center;
    margin-top: 112px; }
    @media only screen and (max-width: 768px) {
      .roots-page .main-link-block .inner .movie-block {
        margin-top: 40px; } }
    .roots-page .main-link-block .inner .movie-block .movie {
      position: relative;
      width: 100%;
      padding-top: 56.25%; }
      .roots-page .main-link-block .inner .movie-block .movie iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%; }
    .roots-page .main-link-block .inner .movie-block p {
      font-size: 14px;
      padding: 30px 0 37px;
      letter-spacing: 1.2px; }
      @media only screen and (max-width: 768px) {
        .roots-page .main-link-block .inner .movie-block p {
          font-size: 2.3rem;
          line-height: 1.55;
          text-align: left;
          padding: 10px 0 37px;
          letter-spacing: 0.9px; } }
.roots-page .section-link-block {
  background-color: #F3F2E5;
  padding-top: 97px;
  padding-bottom: 97px; }
  @media only screen and (max-width: 768px) {
    .roots-page .section-link-block {
      padding-top: 36px;
      padding-bottom: 11px; } }
  .roots-page .section-link-block .inner {
    width: 1140px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .roots-page .section-link-block .inner {
        width: 87%; } }
    .roots-page .section-link-block .inner .section-link ul {
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .roots-page .section-link-block .inner .section-link ul {
          display: block; } }
      .roots-page .section-link-block .inner .section-link ul li {
        width: 360px;
        display: flex;
        flex-direction: column; }
        @media only screen and (max-width: 768px) {
          .roots-page .section-link-block .inner .section-link ul li {
            width: 100%;
            padding-bottom: 8.5%; } }
        .roots-page .section-link-block .inner .section-link ul li .category {
          font-size: 34px;
          line-height: 1.5;
          letter-spacing: 8px; }
          @media only screen and (max-width: 768px) {
            .roots-page .section-link-block .inner .section-link ul li .category {
              font-size: 4.8rem;
              line-height: 1.75; } }
        .roots-page .section-link-block .inner .section-link ul li .comment {
          font-size: 18px;
          line-height: 1.7333333333;
          padding-bottom: 13px; }
          @media only screen and (max-width: 768px) {
            .roots-page .section-link-block .inner .section-link ul li .comment {
              font-size: 2.8rem;
              line-height: 1.6428571429; } }
        .roots-page .section-link-block .inner .section-link ul li .button {
          margin-top: auto; }
          .roots-page .section-link-block .inner .section-link ul li .button a {
            width: 100%;
            display: block;
            font-size: 22px;
            color: #FFF;
            line-height: 1.2;
            text-align: center;
            background-color: #9C4600;
            padding: 16px 0 17px;
            letter-spacing: 5px; }
            @media only screen and (max-width: 768px) {
              .roots-page .section-link-block .inner .section-link ul li .button a {
                font-size: 3.2rem; } }
            .roots-page .section-link-block .inner .section-link ul li .button a:before {
              content: '';
              display: inline-block;
              vertical-align: middle;
              width: 24px;
              height: 24px;
              background-image: url("/assets/images/common/link.svg");
              background-size: 24px 24px;
              background-repeat: no-repeat;
              margin-right: 4px; }
              @media only screen and (max-width: 768px) {
                .roots-page .section-link-block .inner .section-link ul li .button a:before {
                  width: 22px;
                  height: 18px;
                  background-size: 18px 18px; } }
          @media only screen and (max-width: 768px) {
            .roots-page .section-link-block .inner .section-link ul li .button a {
              padding: 13px 0 13px; } }
.roots-page .roots-content-block {
  padding-top: 167px; }
  @media only screen and (max-width: 768px) {
    .roots-page .roots-content-block {
      padding-top: 60px; } }
  .roots-page .roots-content-block .title-section h1 {
    font-size: 40px;
    line-height: 1.65;
    font-weight: normal;
    position: relative;
    text-align: center;
    letter-spacing: 10px;
    margin-bottom: 30px; }
    @media only screen and (max-width: 768px) {
      .roots-page .roots-content-block .title-section h1 {
        font-size: 4.8rem;
        line-height: 2.0625;
        margin-bottom: 7px; } }
    .roots-page .roots-content-block .title-section h1:before {
      content: "";
      width: 76px;
      height: 4px;
      background-color: #000;
      position: absolute;
      bottom: -13px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
      @media only screen and (max-width: 768px) {
        .roots-page .roots-content-block .title-section h1:before {
          width: 40px;
          height: 3px;
          bottom: 0;
          left: 49%; } }
  .roots-page .roots-content-block .title-section p {
    font-size: 18px;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .roots-page .roots-content-block .title-section p {
        font-size: 2.8rem;
        line-height: 1.6428571429; } }
  .roots-page .roots-content-block .content-image {
    background: url("/assets/images/mizutaki/roots/bg-img01.png") no-repeat 0 0;
    background-size: cover;
    color: #FFF;
    margin-top: 50px;
    padding-top: 70px;
    padding-bottom: 62px; }
    @media only screen and (max-width: 768px) {
      .roots-page .roots-content-block .content-image {
        margin-top: 33px;
        padding-top: 13px;
        padding-bottom: 22px; } }
    .roots-page .roots-content-block .content-image .inner {
      width: 1140px;
      margin: 0 auto; }
      @media only screen and (max-width: 768px) {
        .roots-page .roots-content-block .content-image .inner {
          width: 87%; } }
      .roots-page .roots-content-block .content-image .inner h3 {
        font-size: 40px;
        line-height: 1.65;
        font-weight: normal;
        letter-spacing: 6.5px; }
        @media only screen and (max-width: 768px) {
          .roots-page .roots-content-block .content-image .inner h3 {
            font-size: 4.8rem;
            line-height: 1.75;
            letter-spacing: 3.4px; } }
      .roots-page .roots-content-block .content-image .inner p {
        font-size: 18px;
        line-height: 2.9555555556;
        padding-top: 31px; }
        @media only screen and (max-width: 768px) {
          .roots-page .roots-content-block .content-image .inner p {
            font-size: 2.8rem;
            line-height: 2.1428571429;
            padding-top: 12px; } }
  .roots-page .roots-content-block .movie-block {
    width: 1000px;
    margin: 0 auto;
    padding-top: 145px;
    padding-bottom: 96px; }
    @media only screen and (max-width: 768px) {
      .roots-page .roots-content-block .movie-block {
        width: 87%;
        padding-top: 45px;
        padding-bottom: 26px; } }
    .roots-page .roots-content-block .movie-block .movie {
      position: relative;
      width: 100%;
      padding-top: 56.25%; }
      .roots-page .roots-content-block .movie-block .movie iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%; }
.roots-page .chicken-block {
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .roots-page .chicken-block {
      text-align: left; } }
  .roots-page .chicken-block .content-image .inner h3 {
    width: 1220px; }
    @media only screen and (max-width: 768px) {
      .roots-page .chicken-block .content-image .inner h3 {
        width: 100%; } }
  .roots-page .chicken-block .descript {
    width: 1140px;
    margin: 0 auto;
    padding-bottom: 85px; }
    @media only screen and (max-width: 768px) {
      .roots-page .chicken-block .descript {
        width: 87%;
        padding-bottom: 31px; } }
    .roots-page .chicken-block .descript h4 {
      font-size: 40px;
      line-height: 1.65;
      font-weight: normal;
      letter-spacing: 6.5px; }
      @media only screen and (max-width: 768px) {
        .roots-page .chicken-block .descript h4 {
          font-size: 4.8rem;
          line-height: 1.75;
          letter-spacing: 3.4px; } }
    .roots-page .chicken-block .descript p {
      font-size: 18px;
      line-height: 2.9555555556;
      padding-top: 24px; }
      @media only screen and (max-width: 768px) {
        .roots-page .chicken-block .descript p {
          font-size: 2.8rem;
          line-height: 2.1428571429;
          padding-top: 8px; } }
  .roots-page .chicken-block .button {
    width: 561px;
    margin: 0 auto;
    padding-top: 27px; }
    .roots-page .chicken-block .button a {
      width: 100%;
      display: block;
      font-size: 22px;
      color: #FFF;
      line-height: 1.2;
      text-align: center;
      background-color: #9C4600;
      padding: 16px 0 17px;
      letter-spacing: 5px; }
      @media only screen and (max-width: 768px) {
        .roots-page .chicken-block .button a {
          font-size: 3.2rem; } }
      .roots-page .chicken-block .button a:before {
        content: '';
        display: inline-block;
        vertical-align: middle;
        width: 24px;
        height: 24px;
        background-image: url("/assets/images/common/link.svg");
        background-size: 24px 24px;
        background-repeat: no-repeat;
        margin-right: 4px; }
        @media only screen and (max-width: 768px) {
          .roots-page .chicken-block .button a:before {
            width: 22px;
            height: 18px;
            background-size: 18px 18px; } }
    @media only screen and (max-width: 768px) {
      .roots-page .chicken-block .button {
        width: 87%; }
        .roots-page .chicken-block .button a {
          letter-spacing: 3px;
          padding: 16px 0 14px; } }
.roots-page .vege-block {
  padding-top: 231px; }
  @media only screen and (max-width: 768px) {
    .roots-page .vege-block {
      padding-top: 59px; } }
  .roots-page .vege-block .content-image {
    background: url("/assets/images/mizutaki/roots/bg-img02.png") no-repeat 0 0;
    background-size: cover;
    margin-top: 67px;
    color: #000;
    padding-bottom: 143px; }
    @media only screen and (max-width: 768px) {
      .roots-page .vege-block .content-image {
        background: url("/assets/images/mizutaki/roots/bg-img02-sp.png") no-repeat 0 0;
        background-size: cover;
        margin-top: 31px;
        padding-bottom: 101px; } }
    .roots-page .vege-block .content-image .inner h3 {
      letter-spacing: 8px; }
      @media only screen and (max-width: 768px) {
        .roots-page .vege-block .content-image .inner h3 {
          letter-spacing: 5px; } }
    .roots-page .vege-block .content-image .inner p {
      padding-top: 16px; }
      @media only screen and (max-width: 768px) {
        .roots-page .vege-block .content-image .inner p {
          padding-top: 9px; } }
  .roots-page .vege-block .movie-block {
    padding-top: 75px;
    padding-bottom: 115px; }
    @media only screen and (max-width: 768px) {
      .roots-page .vege-block .movie-block {
        padding-top: 33px;
        padding-bottom: 40px; } }
  .roots-page .vege-block .vege-list {
    width: 1140px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .roots-page .vege-block .vege-list {
        width: 87%; } }
    .roots-page .vege-block .vege-list ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .roots-page .vege-block .vege-list ul::after, .roots-page .vege-block .vege-list ul::before {
        content: "";
        display: block;
        width: 272px;
        height: 0; }
        @media only screen and (max-width: 768px) {
          .roots-page .vege-block .vege-list ul::after, .roots-page .vege-block .vege-list ul::before {
            width: calc(50% - 5px); } }
      .roots-page .vege-block .vege-list ul::before {
        order: 1; }
      .roots-page .vege-block .vege-list ul li {
        width: 272px;
        margin-bottom: 11px; }
        @media only screen and (max-width: 768px) {
          .roots-page .vege-block .vege-list ul li {
            width: calc(50% - 5px);
            margin-bottom: 10px; } }
        .roots-page .vege-block .vege-list ul li p {
          font-size: 15px;
          line-height: 1.5466666667;
          padding-top: 3px; }
          @media only screen and (max-width: 768px) {
            .roots-page .vege-block .vege-list ul li p {
              font-size: 2.4rem;
              line-height: 1.55; } }
.roots-page .cook-block .content-image {
  background: url("/assets/images/mizutaki/roots/bg-img03.png") no-repeat 0 0;
  background-size: cover;
  margin-top: 65px;
  padding-top: 110px;
  padding-bottom: 106px; }
  @media only screen and (max-width: 768px) {
    .roots-page .cook-block .content-image {
      margin-top: 29px;
      padding-top: 14px;
      padding-bottom: 21px; } }
  .roots-page .cook-block .content-image .inner h3 {
    letter-spacing: 7.8px; }
    @media only screen and (max-width: 768px) {
      .roots-page .cook-block .content-image .inner h3 {
        letter-spacing: 5px; } }
.roots-page .cook-block .introduction-block {
  background-color: #F3F2E5;
  text-align: center;
  padding-top: 80px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 768px) {
    .roots-page .cook-block .introduction-block {
      padding-top: 60px;
      padding-bottom: 20px; } }
  .roots-page .cook-block .introduction-block .inner h3 {
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 4.6px; }
    @media only screen and (max-width: 768px) {
      .roots-page .cook-block .introduction-block .inner h3 {
        font-size: 3.8rem;
        line-height: 1.9210526316;
        letter-spacing: 3.2px; } }
  .roots-page .cook-block .introduction-block .inner .introduction {
    width: 603px;
    margin: 0 auto;
    padding-top: 44px; }
    @media only screen and (max-width: 768px) {
      .roots-page .cook-block .introduction-block .inner .introduction {
        width: 87%;
        padding-top: 36px; } }
    .roots-page .cook-block .introduction-block .inner .introduction ul {
      display: flex;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .roots-page .cook-block .introduction-block .inner .introduction ul {
          display: block; } }
      .roots-page .cook-block .introduction-block .inner .introduction ul li {
        width: 220px; }
        @media only screen and (max-width: 768px) {
          .roots-page .cook-block .introduction-block .inner .introduction ul li {
            width: 50%;
            margin: 0 auto;
            padding-bottom: 10%; } }
        .roots-page .cook-block .introduction-block .inner .introduction ul li p {
          font-size: 23px;
          line-height: 1.3913043478;
          padding-top: 16px;
          letter-spacing: 5px; }
          @media only screen and (max-width: 768px) {
            .roots-page .cook-block .introduction-block .inner .introduction ul li p {
              line-height: 1.3913043478;
              font-size: 3.4rem;
              padding-top: 11px; } }

.tsurugi-page .tsurugi-link-block ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .tsurugi-page .tsurugi-link-block ul li {
    width: 50%;
    position: relative; }
    .tsurugi-page .tsurugi-link-block ul li a {
      display: block;
      color: #FFF; }
      .tsurugi-page .tsurugi-link-block ul li a .link {
        position: absolute;
        bottom: 0;
        font-size: 29px;
        width: 100%;
        background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000000', endColorstr='#00000000',GradientType=1 );
        /* IE6-9 */
        padding: 20px 30px; }
        @media only screen and (max-width: 768px) {
          .tsurugi-page .tsurugi-link-block ul li a .link {
            padding: 10px 15px; } }
        .tsurugi-page .tsurugi-link-block ul li a .link img {
          width: 24px;
          margin-right: 10px; }

/*ページ（カラーミー）*/
@media only screen and (max-width: 768px) {
  .page-title-block .page-title h1 {
    letter-spacing: 3px;
    line-height: 1.65;
    padding-bottom: 32px; } }

.online-detail-block .inner {
  width: 1014px;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .online-detail-block .inner {
      width: 87%; } }
  .online-detail-block .inner .online-detail {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; }
    @media only screen and (max-width: 768px) {
      .online-detail-block .inner .online-detail {
        display: block; } }
    .online-detail-block .inner .online-detail .product-image {
      width: 600px; }
      @media only screen and (max-width: 768px) {
        .online-detail-block .inner .online-detail .product-image {
          width: 100%; } }
      .online-detail-block .inner .online-detail .product-image img {
        width: 100%; }
    .online-detail-block .inner .online-detail .product-info {
      width: 360px; }
      @media only screen and (max-width: 768px) {
        .online-detail-block .inner .online-detail .product-info {
          width: 100%;
          padding-top: 29px; } }
      .online-detail-block .inner .online-detail .product-info .product-name {
        font-size: 40px;
        font-weight: normal;
        line-height: 1.65;
        margin-top: -12px;
        letter-spacing: 5.5px; }
        @media only screen and (max-width: 768px) {
          .online-detail-block .inner .online-detail .product-info .product-name {
            font-size: 4.8rem; } }
      .online-detail-block .inner .online-detail .product-info .price {
        font-size: 28px;
        line-height: 2;
        padding-top: 10px;
        padding-bottom: 11px; }
        @media only screen and (max-width: 768px) {
          .online-detail-block .inner .online-detail .product-info .price {
            font-size: 3.2rem;
            padding-top: 0;
            padding-bottom: 0; } }
      .online-detail-block .inner .online-detail .product-info .info {
        font-size: 20px;
        line-height: 1.9619047619; }
        @media only screen and (max-width: 768px) {
          .online-detail-block .inner .online-detail .product-info .info {
            font-size: 2.8rem;
            line-height: 1.7142857143; } }
      .online-detail-block .inner .online-detail .product-info .cart {
        padding-top: 15px; }
        @media only screen and (max-width: 768px) {
          .online-detail-block .inner .online-detail .product-info .cart {
            padding-top: 23px; } }
        .online-detail-block .inner .online-detail .product-info .cart input {
          font-family: 'Noto Serif JP', serif; }
          .online-detail-block .inner .online-detail .product-info .cart input.product_cart_btn {
            width: 100%;
            display: block;
            font-size: 22px;
            color: #FFF;
            line-height: 1.2;
            text-align: center;
            background-color: #9C4600;
            padding: 16px 0 17px;
            letter-spacing: 5px; }
            @media only screen and (max-width: 768px) {
              .online-detail-block .inner .online-detail .product-info .cart input.product_cart_btn {
                font-size: 3.2rem; } }
            .online-detail-block .inner .online-detail .product-info .cart input.product_cart_btn:before {
              content: '';
              display: inline-block;
              vertical-align: middle;
              width: 24px;
              height: 24px;
              background-image: url("/assets/images/common/link.svg");
              background-size: 24px 24px;
              background-repeat: no-repeat;
              margin-right: 4px; }
              @media only screen and (max-width: 768px) {
                .online-detail-block .inner .online-detail .product-info .cart input.product_cart_btn:before {
                  width: 22px;
                  height: 18px;
                  background-size: 18px 18px; } }
      .online-detail-block .inner .online-detail .product-info .attention {
        font-size: 17px;
        line-height: 1.9529411765; }
        @media only screen and (max-width: 768px) {
          .online-detail-block .inner .online-detail .product-info .attention {
            font-size: 2.8rem; } }
  .online-detail-block .inner .terms-block ul li {
    font-size: 18px;
    line-height: 2; }
    @media only screen and (max-width: 768px) {
      .online-detail-block .inner .terms-block ul li {
        font-size: 2.8rem; } }

.together-product-block {
  background-color: #F3F2E5;
  margin-top: 85px;
  padding-top: 60px;
  padding-bottom: 193px; }
  @media only screen and (max-width: 768px) {
    .together-product-block {
      margin-top: 58px;
      padding-top: 19px;
      padding-bottom: 7px; } }
  .together-product-block .inner {
    width: 1140px;
    margin: 0 auto; }
    @media only screen and (max-width: 768px) {
      .together-product-block .inner {
        width: 87%; } }
    .together-product-block .inner h1 {
      font-size: 40px;
      line-height: 1.65;
      font-weight: normal;
      position: relative;
      text-align: center;
      letter-spacing: 10px;
      margin-bottom: 30px; }
      @media only screen and (max-width: 768px) {
        .together-product-block .inner h1 {
          font-size: 4.8rem;
          line-height: 2.0625;
          margin-bottom: 7px; } }
      .together-product-block .inner h1:before {
        content: "";
        width: 76px;
        height: 4px;
        background-color: #000;
        position: absolute;
        bottom: -13px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0); }
        @media only screen and (max-width: 768px) {
          .together-product-block .inner h1:before {
            width: 40px;
            height: 3px;
            bottom: 0;
            left: 49%; } }
    .together-product-block .inner .together-product {
      padding-top: 66px; }
      @media only screen and (max-width: 768px) {
        .together-product-block .inner .together-product {
          padding-top: 22px; } }
      .together-product-block .inner .together-product ul {
        display: flex;
        justify-content: space-between; }
        @media only screen and (max-width: 768px) {
          .together-product-block .inner .together-product ul {
            display: block; } }
        .together-product-block .inner .together-product ul li {
          width: 360px; }
          @media only screen and (max-width: 768px) {
            .together-product-block .inner .together-product ul li {
              width: 100%;
              padding-bottom: 40px; } }
          .together-product-block .inner .together-product ul li .image img {
            width: 100%; }
          .together-product-block .inner .together-product ul li .product-name {
            font-size: 34px;
            line-height: 1.9411764706;
            letter-spacing: 6px; }
            @media only screen and (max-width: 768px) {
              .together-product-block .inner .together-product ul li .product-name {
                font-size: 4.8rem;
                line-height: 1.65;
                padding-top: 8px; } }
          .together-product-block .inner .together-product ul li .button a {
            width: 100%;
            display: block;
            font-size: 22px;
            color: #FFF;
            line-height: 1.2;
            text-align: center;
            background-color: #9C4600;
            padding: 16px 0 17px;
            letter-spacing: 5px; }
            @media only screen and (max-width: 768px) {
              .together-product-block .inner .together-product ul li .button a {
                font-size: 3.2rem; } }
            .together-product-block .inner .together-product ul li .button a:before {
              content: '';
              display: inline-block;
              vertical-align: middle;
              width: 24px;
              height: 24px;
              background-image: url("/assets/images/common/link.svg");
              background-size: 24px 24px;
              background-repeat: no-repeat;
              margin-right: 4px; }
              @media only screen and (max-width: 768px) {
                .together-product-block .inner .together-product ul li .button a:before {
                  width: 22px;
                  height: 18px;
                  background-size: 18px 18px; } }
          @media only screen and (max-width: 768px) {
            .together-product-block .inner .together-product ul li .button {
              padding-top: 8px; } }

.sk_info_block,
.sk_delivery_block,
.sk_payment_block {
  width: 940px;
  margin: 0 auto;
  padding-top: 85px; }
  .sk_info_block .ttl_h2,
  .sk_delivery_block .ttl_h2,
  .sk_payment_block .ttl_h2 {
    text-align: center;
    font-size: 30px;
    padding-bottom: 35px; }
  .sk_info_block dl.def_lst,
  .sk_delivery_block dl.def_lst,
  .sk_payment_block dl.def_lst {
    font-size: 18px;
    line-height: 2;
    display: flex;
    flex-wrap: wrap; }
    .sk_info_block dl.def_lst dt.def_lst_dt,
    .sk_delivery_block dl.def_lst dt.def_lst_dt,
    .sk_payment_block dl.def_lst dt.def_lst_dt {
      width: 25%;
      border-bottom: 1px solid #000;
      padding: 8px 0; }
    .sk_info_block dl.def_lst .def_lst_dd,
    .sk_delivery_block dl.def_lst .def_lst_dd,
    .sk_payment_block dl.def_lst .def_lst_dd {
      width: 75%;
      border-bottom: 1px solid #000;
      padding: 8px 0; }

/*# sourceMappingURL=style.css.map */
