@charset "UTF-8";

.header.header-menu {
  background: url(../img/menu/hero_menu.jpg) no-repeat center center/cover;                                         /* 背景画像を指定 */    
}
.wrapper {
  max-width: 960px;               /* 最大の画面幅を 960pxに */        
  margin: 0 auto;                 /* 外余白を上下 0、左右自動に */
  padding: 0 4%;                  /* 内余白を上下 0、左右 4%に */
}

.lead {
  padding: 30px 0;                /* 内余白を上下 30%、左右 0に */
}

@media print, screen and (min-width: 768px) {
    .lead {
      width: 800px;               /* 要素幅を 800pxに */
      margin: auto;               /* 外余白を自動に */
      text-align: center;         /* 文字を中央揃えに */
    }
}

.lead-title {
  font-size: 25px;                /* 文字サイズを 25pxに */
  margin-bottom: 10px;            /* 下部の外余白を 10pxに */
  font-weight: bold;              /* 文字を太字に */
  line-height: 1.2;               /* 行の高さをフォントサイズの 1.2倍に */
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincha PrroN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;          /* フォントの種類を指定 */
}

.menu {
  padding: 15px 0;                /* 内余白を上下 15px、左右 0に */
  border-bottom: 1px solid #eee;  /* 罫線を下部 1px、実線、灰色で */
  list-style: none;               /* リストの黒丸をなしに */
}

@media print, screen, and (min-width: 768px) {
    .menu-wrap {
      display: -webkit-flex;      /* 子要素を並列に */
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;    /* flexで並べた要素を複数行に */
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    }
    .menu {
      width: 33.33%;              /* 要素幅を 33.33%に */
      padding: 0 30px;            /* 内余白を上下 0px、左右　30pxに */
      margin-bottom: 60px;        /* 外白下部を 60pxに */
      border-bottom: none;        /* 罫線下部を無しに */
    }
}

.menu-img {
  margin-bottom: 20px;            /* 下部の外余白を 20pxに */
}

.menu-name-en {
  font-size: 20px;                /* 文字サイズを 20pxに */
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincha PrroN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;          /* フォントの種類を指定 */ 
  font-weight: bold;              /* 文字を太字に */
  margin-bottom: 15px;            /* 下部の外余白を 15pxに */
}

.menu-name-ja {
  font-size: 14px;                /* 文字サイズを 14pxに */
  font-weight: bold;              /* 文字を太字に */
  margin-bottom: 15px;            /* 下部の外余白を 15pxに */
}

.menu-price {
  font-size: 14px;                /* 文字サイズを 14pxに */
  display: -webkit-flex;          /* 子要素を並列に */
  display: -ms-flexbox;
  display: flex;                  /* 要素の幅を 100% に */
  -webkit-justify-content: space-between;    /* 並列になった要素の幅を均等に */
  -ms-flex-pack: justify;      
  justify-content: space-between; 
}

.menu-price + .menu-price {
  margin-top: 5px;                /* 外余白の下部を 5pxに */
}

.menu-category {
  margin-bottom: 60px;            /* 外余白の下部を 60%に */
}

@media print, screen and (min-width: 768px) {
    .menu-category {
       margin: 0 -30px 60px;      /*　外余白の上 0、左右　-30px、下 60pxに */
    }
}

.img-link-wrap {
  margin-bottom: 40px;            /* 下外余白を 40%に */
}

.img-link a {
  display: block;                 /* 表示形式をブロックに */
  position: relative;             /* 要素の配置を相対座標に指定 */
  z-index: 1;                     /* 要素を重ねて表示する際の優先重度を 1 に */ 
}

.img-link a .heading02 {
   color: #fff;                   /* 文字色を白色に */
   z-index: 2;                    /* 要素を重ねて表示する際の優先度純度を 2 に */
   position: absolute;            /* 要素の配置を絶対座標に */
   width: 100%;                   /* 要素の幅を 100% に */
   top: 50%;                      /* 上部分を基準点から　50% の位置に */
   left: 0;                       /* 左部分を基準点から 0 の位置に */
   -webkit-transform: translate(0, -50%);                                                                          /* 要素の位置を 50% 分だけ上に */
   transform: translate(0, -50%);                                                                                  /* 要素の位置を 50% 分だけ上に */
   margin-bottom: 0;              /* 下外余白を 0 に　*/
}

.img-link a .heading02 span {
   border-color: #fff;            /* 罫線を白色に */
}

.img-link a img {
   display: block;                /* 表示形式をブロックに */ 
}