@charset "UTF-8";
/* ============================================================
// menu
============================================================ */
.menu-page-ttl-wrap {
  background: url(../images/menu/page-ttl-bg.png) no-repeat center center/cover;
}

.img-box {
  width: 100%;
  margin-bottom: 30px;
}
.img-box img {
  border-radius: 10px 10px 10px 10px;
}
@media print, screen and (max-width: 991px) {
  .img-box {
    margin-bottom: 15px;
  }
}

.two-box {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin: 0 30px 40px;
}
.two-box .box {
  position: relative;
  width: calc((100% - 30px) / 2);
  padding: 60px;
  background: url(../images/menu/menu-bg.png) repeat center center;
}
.two-box .box dl dt {
  color: #ff1493;
  padding-bottom: 8px;
  font-weight: bold;
  font-size: 16px;
  position: relative;
  overflow: hidden;
}
.two-box .box dl dt::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #ff1493; /*ピンク*/
}
.two-box .box dl dt::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #f6e6cb; /*薄ピンク*/
}
.two-box .box dl dd {
  padding: 1em 1em 2em;
}
.two-box .box .corner-tl {
  position: absolute;
  top: 0;
  left: 0;
}
.two-box .box .corner-tr {
  position: absolute;
  top: 0;
  right: 0;
}
.two-box .box .corner-br {
  position: absolute;
  right: 0;
  bottom: 0;
}
.two-box .box .corner-bl {
  position: absolute;
  bottom: 0;
  left: 0;
}
.two-box .box-ttl {
  font-size: 40px;
  width: 100%;
  margin-bottom: 20px;
}
.two-box .note {
  font-size: 15px;
  color: #ff1493;
  text-align: right;
}
@media print, screen and (max-width: 991px) {
  .two-box {
    gap: 15px;
    margin: 0 0 15px;
  }
  .two-box .box {
    width: 100%;
    padding: 30px;
  }
  .two-box .box-ttl {
    font-size: 30px;
    text-align: center;
  }
  .two-box .note {
    font-size: 14px;
  }
}

.two-one-box {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin: 0 30px 40px;
  padding: 60px;
  background: url(../images/menu/menu-bg.png) repeat center center;
}
.two-one-box .corner-tl {
  position: absolute;
  top: 0;
  left: 0;
}
.two-one-box .corner-tr {
  position: absolute;
  top: 0;
  right: 0;
}
.two-one-box .corner-br {
  position: absolute;
  right: 0;
  bottom: 0;
}
.two-one-box .corner-bl {
  position: absolute;
  bottom: 0;
  left: 0;
}
.two-one-box .box {
  width: calc((100% - 30px) / 2);
}
.two-one-box .box dl dt {
  color: #ff1493;
  padding-bottom: 8px;
  font-weight: bold;
  font-size: 16px;
  position: relative;
  overflow: hidden;
}
.two-one-box .box dl dt::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #ff1493; /*ピンク*/
}
.two-one-box .box dl dt::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #f6e6cb; /*薄ピンク*/
}
.two-one-box .box dl dd {
  padding: 1em 1em 2em;
}
.two-one-box .box-ttl {
  font-size: 40px;
  width: 100%;
  margin-bottom: 20px;
}
.two-one-box .note {
  font-size: 15px;
  color: #ff1493;
  text-align: right;
  width: 100%;
}
@media print, screen and (max-width: 991px) {
  .two-one-box {
    gap: 0;
    margin: 0 0 15px;
    padding: 30px 20px;
  }
  .two-one-box .box {
    width: 100%;
  }
  .two-one-box .box-ttl {
    font-size: 30px;
    text-align: center;
  }
  .two-one-box .note {
    font-size: 14px;
  }
}

.slider-wrap {
  overflow: hidden;
  width: 100%;
}
.slider-wrap .slider-track {
  display: flex;
  gap: 10px;
  width: -moz-max-content;
  width: max-content;
  animation: scrollLeft 20s linear infinite;
}
.slider-wrap .slider-track img {
  width: 300px;
  height: auto;
  border-radius: 3px;
}

@keyframes scrollLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}