/* Common */
.mod_grill_nav a {
  width: 30%;
  padding: 17px 14px;
  border: 1px solid #929292;
  border-radius: 9px;
  opacity: 0.5;
}

.mod_grill_nav a.active {
  opacity: 1;
}

.mod_grill_nav a:hover {
  color: #181414;
  opacity: 0.75;
}

.mod_grill_nav .content_ttl {
  margin-bottom: 15px;
  padding-left: 40px;
  font-size: 25px;
}

.mod_grill_nav .content_ttl::before {
  left: 7px;
}

/* Grill Section */
.sec_grill .img_blk {
  position: relative;
  margin-bottom: 32px;
}

.sec_grill .txt01 {
  top: 5%;
}

.sec_grill .sec_ttl {
  top: 17%;
}

.sec_grill .txt02 {
  top: 31%;
}

/* Grill List */
.grill_list {
  position: relative;
  margin-bottom: 80px;
  padding: 13px 27px 33px 15px;
  border: 1px solid #e9e1df;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.05);
  border-radius: 21px;
}

.grill_list::after {
  position: absolute;
  right: 0;
  bottom: -65px;
  left: 0;
  width: 75px;
  height: 49px;
  margin: 0 auto;
  background: url("./img/ico_down_arr.png") no-repeat center/contain;
  content: "";
}

.grill_list.last {
  margin-bottom: 113px;
}

.grill_list.last::after {
  display: none;
}

.grill_list .list_ttl {
  display: flex;
  align-items: flex-end;
  margin-bottom: 50px;
  color: #62301f;
  font-family: "dnp-shuei-nshogomincho-std", sans-serif;
  font-size: 38px;
}

.grill_list .list_ttl .no {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 105px;
  height: 105px;
  background-color: #ad867d;
  color: #ffffff;
  font-size: 70px;
  border-radius: 100%;
}

.grill_list .list_ttl .txt {
  display: block;
  width: 90%;
  margin-bottom: 12px;
  padding-bottom: 16px;
  padding-left: 16px;
  border-bottom: 13px solid #e9e1df;
}

.grill_list .list_img {
  width: 42.7%;
  margin-left: 20px;
}

.grill_list.even .list_img {
  position: relative;
  width: 48.7%;
}

.grill_list .list_txt {
  width: 52%;
  padding: 22px 14px;
}

.grill_list.even .list_txt {
  width: 48%;
}

.grill_list .sub_ttl {
  line-height: 1.6;
  margin-bottom: 18px;
  font-size: 24px;
}

.grill_list .txt_mod {
  line-height: 1.6;
  font-size: 20px;
}

.grill_list .desc_txt {
  position: absolute;
  right: -20%;
  bottom: 0;
}

.grill_list .ico_exclamation,
.grill_list .ico_fire {
  position: relative;
  padding-left: 46px;
  color: #7b1b1b;
}

.grill_list .ico_exclamation::before,
.grill_list .ico_fire::before {
  position: absolute;
  top: 50%;
  content: "";
  transform: translateY(-50%);
}

.grill_list .ico_exclamation::before {
  left: -5px;
  width: 38px;
  height: 38px;
  background: url("./img/ico_exclamation.png") no-repeat center/contain;
}

.grill_list .ico_fire::before {
  left: 13px;
  width: 23px;
  height: 35px;
  background: url("./img/ico_fire.png") no-repeat center/contain;
}

.grill_video {
  width: 502px;
  height: 282px;
  margin: 0 auto 90px;
}

.grill_video iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

/* Grill Common Section */
.sec_mod_grill .txt_blk {
  margin-bottom: 62px;
}

.sec_mod_grill .txt_blk .content_ttl {
  padding: 0 62px;
  font-size: 40px;
}

.sec_mod_grill .txt_blk .content_ttl::before {
  left: 0;
  width: 40px;
  height: 40px;
  border: 7px solid #e7380d;
}

/* Tablet */
@media screen and (min-width: 768px) and (max-width: 1280px) {

  /* Common */
  .mod_grill_nav a {
    padding: 1.328vw 1.094vw;
    border: 0.078vw solid #929292;
    border-radius: 0.703vw;
  }

  .mod_grill_nav .content_ttl {
    margin-bottom: 1.172vw;
    padding-left: 3.125vw;
    font-size: 1.953vw;
  }

  .mod_grill_nav .content_ttl::before {
    left: 0.547vw;
  }

  /* Grill Section */
  .sec_grill .img_blk {
    margin-bottom: 2.5vw;
  }

  /* Grill List */
  .grill_list {
    margin-bottom: 6.25vw;
    padding: 1.016vw 2.109vw 2.578vw 1.172vw;
    border: 0.078vw solid #e9e1df;
    box-shadow: 0.234vw 0.234vw 0.391vw rgba(0, 0, 0, 0.05);
    border-radius: 1.641vw;
  }

  .grill_list::after {
    bottom: -5.078vw;
    width: 5.859vw;
    height: 3.828vw;
  }

  .grill_list.last {
    margin-bottom: 8.828vw;
  }

  .grill_list .list_ttl {
    margin-bottom: 3.906vw;
    font-size: 2.969vw;
  }

  .grill_list .list_ttl .no {
    width: 8.203vw;
    height: 8.203vw;
    font-size: 5.469vw;
  }

  .grill_list .list_ttl .txt {
    margin-bottom: 0.938vw;
    padding-bottom: 1.25vw;
    padding-left: 1.25vw;
    border-bottom: 1.016vw solid #e9e1df;
  }

  .grill_list .list_img {
    margin-left: 1.563vw;
  }

  .grill_list.even .list_img {
    width: 45.7%;
  }

  .grill_list .list_txt {
    padding: 1.719vw 1.094vw;
  }

  .grill_list.even .list_txt {
    width: 52%;
  }

  .grill_list .sub_ttl {
    margin-bottom: 1.406vw;
    font-size: 1.875vw;
  }

  .grill_list .txt_mod {
    font-size: 1.563vw;
  }

  .grill_list .ico_exclamation,
  .grill_list .ico_fire {
    padding-left: 3.594vw;
  }

  .grill_list .ico_exclamation::before {
    left: -0.391vw;
    width: 2.969vw;
    height: 2.969vw;
  }

  .grill_list .ico_fire::before {
    left: 1.016vw;
    width: 1.797vw;
    height: 2.734vw;
  }

  .grill_video {
    width: 39.219vw;
    height: 22.031vw;
    margin: 0 auto 7.031vw;
  }

  /* Grill Common Section */
  .sec_mod_grill .txt_blk {
    margin-bottom: 4.844vw;
  }

  .sec_mod_grill .txt_blk .content_ttl {
    padding: 0 4.844vw;
    font-size: 3.125vw;
  }

  .sec_mod_grill .txt_blk .content_ttl::before {
    width: 3.125vw;
    height: 3.125vw;
    border: 0.547vw solid #e7380d;
  }
}

/* SP */
@media screen and (max-width: 767.9px) {

  /* Common */
  .mod_grill_nav {
    padding: 0 4vw;
  }

  .mod_grill_nav a {
    width: 32%;
    padding: 2.133vw 1.867vw;
    border: 0.133vw solid #929292;
    border-radius: 2.133vw;
  }

  .mod_grill_nav .content_ttl {
    margin-bottom: 2vw;
    padding-left: 4vw;
    font-size: 2.567vw;
  }

  .mod_grill_nav .content_ttl::before {
    left: 0;
  }

  /* Grill Section */
  .sec_grill .img_blk {
    margin-bottom: 4vw;
  }

  .sec_grill .content_img {
    height: 47.333vw;
  }

  .sec_grill .content_img img {
    object-position: 50% 14%;
  }

  .sec_grill .sec_ttl {
    top: 5%;
  }

  .sec_grill .txt01,
  .sec_grill .txt02 {
    position: unset;
  }

  /* Grill List */
  .grill_list {
    margin: 0 4vw 10.667vw;
    padding: 4.4vw 2vw;
    border: 0.133vw solid #e9e1df;
    box-shadow: 0.4vw 0.4vw 0.667vw rgba(0, 0, 0, 0.05);
    border-radius: 2.8vw;
  }

  .grill_list::after {
    bottom: -9.067vw;
    width: 10vw;
    height: 6.533vw;
  }

  .grill_list.last {
    margin-bottom: 15.067vw;
  }

  .grill_list .list_ttl {
    align-items: flex-start;
    margin-bottom: 6.667vw;
    font-size: 4.833vw;
  }

  .grill_list .list_ttl .no {
    width: 10vw;
    height: 10vw;
    font-size: 7.333vw;
  }

  .grill_list .list_ttl .txt {
    line-height: 1.3;
    margin-bottom: 1.2vw;
    padding-bottom: 1.933vw;
    padding-left: 1.933vw;
    border-bottom: 1.733vw solid #e9e1df;
  }

  .grill_list .list_img,
  .grill_list .list_txt,
  .grill_list.even .list_img,
  .grill_list.even .list_txt {
    width: 100%;
  }

  .grill_list .list_img {
    margin-left: 0;
  }

  .grill_list .list_txt {
    padding: 2.933vw 0;
  }

  .grill_list .sub_ttl {
    margin-bottom: 3.667vw;
    font-size: 4.5vw;
  }

  .grill_list .txt_mod {
    font-size: 3.467vw;
  }

  .grill_list .desc_txt {
    right: -2.233vw;
  }

  .grill_list .ico_exclamation,
  .grill_list .ico_fire {
    padding-left: 8.133vw;
  }

  .grill_list .ico_exclamation::before {
    left: -0.667vw;
    width: 6.067vw;
    height: 6.067vw;
  }

  .grill_list .ico_fire::before {
    left: 1.733vw;
    width: 4.067vw;
    height: 5.667vw;
  }

  .grill_video {
    width: 100%;
    height: 47vw;
    margin: 0 auto 6vw;
    padding: 0 4vw;
  }

  /* Grill Common Section */
  .sec_mod_grill .txt_blk {
    margin-bottom: 3.333vw;
    padding: 4vw;
  }

  .sec_mod_grill .txt_blk .content_ttl {
    padding: 0 8.767vw;
    font-size: 5.333vw;
  }

  .sec_mod_grill .txt_blk .content_ttl::before {
    width: 5.333vw;
    height: 5.333vw;
    border: 0.933vw solid #e7380d;
  }

}