body {
  background: none;
}
@media (max-width: 64em) {
  body {
    min-width: 0;
  }
}



.ramen-map img {
  width: 100%;
  height: auto;
}

.tv-station-list {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  display: grid;
  grid-template-columns: repeat(6, auto);
  grid-template-rows: 32px;
  justify-content: center;
  align-items: center;
  column-gap: 34px;
}
.tv-station-list__item {
  height: 32px;
}
.tv-station-list__item a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.tv-station-list__item img {
  width: auto;
  height: 100%;
}
@media (max-width: 64em) {
  .tv-station-list {
    column-gap: 3.3203vw;
  }
  .tv-station-list__item {
    height: 3.125vw;
  }
}
@media (max-width: 42em) {
  .tv-station-list {
    grid-template-columns: repeat(3, 30%);
    grid-template-rows: 8.5333vw;
    column-gap: 3.333%;
    row-gap: 0;
  }
  .tv-station-list__item {
    height: 8.5333vw;
  }
  .tv-station-list__item img {
    width: 100%;
    height: auto;
  }
}

.ramen-map-kv {
  width: 100vw;
  padding: 50px 0 12px;
  margin: 0 calc(50% - 50vw);
  background: url(../images/bg02.jpg) repeat 50% 0 / 100% auto;
}
@media (max-width: 81.25em) {
  .ramen-map-kv {
    width: 1300px;
    margin: 0 auto;
  }
}
.ramen-map-kv__image {
  max-width: 746px;
  width: 100%;
  margin: 0 auto 58px;
}
.ramen-map-list .ramen-map-kv__image {
  margin-bottom: 15px;
}
@media (max-width: 64em) {
  .ramen-map-kv {
    padding: 4.883vw 0 1.172vw;
  }
  .ramen-map-kv__image {
    width: 72.8516vw;
    margin-bottom: 5.4688vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-kv {
    width: 100vw;
    padding: 13.3333vw 0 3.2vw;
    margin: 0 calc(50% - 50vw);
    background-size: 180% auto;
  }
  .ramen-map-kv__image {
    width: 100%;
    margin-bottom: 15.4667vw;
  }
}

.ramen-map-kv__text {
  max-width: 776px;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 64em) {
  .ramen-map-kv__text {
    width: 75.78125vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-kv__text {
    width: 96%;
  }
}

.ramen-map-contents01 {
  width: 100vw;
  padding: 49px 0 60px;
  margin: 0 calc(50% - 50vw);
  background: url(../images/bg01.jpg) repeat 50% 0 / 100% auto;
  position: relative;
}
@media (max-width: 81.25em) {
  .ramen-map-contents01 {
    width: 1300px;
    margin: 0 auto;
  }
}
@media (max-width: 64em) {
  .ramen-map-contents01 {
    padding: 4.785vw 1.953vw 5.859vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents01 {
    width: 100vw;
    padding: 13.0667vw 5.333vw 16vw;
    margin: 0 calc(50% - 50vw);
    background-size: 180% auto;
  }
}
.ramen-map-contents01 h2 {
  max-width: 947px;
  width: 100%;
  margin: 0 auto 61px;
  position: relative;
  z-index: 10;
}
@media (max-width: 64em) {
  .ramen-map-contents01 h2 {
    margin-bottom: 5.957vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents01 h2 {
    margin-bottom: 8vw;
  }
}

.ramen-map-contents01 .text {
  font-size: 24px;
  color: #fff;
  line-height: calc(40 / 24);
  font-weight: 700;
  text-align: center;
  position: relative;
  z-index: 10;
}
.ramen-map-contents01 .text .sp {
  display: none;
}
@media (max-width: 64em) {
  .ramen-map-contents01 .text {
    font-size: 2.344vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents01 .text {
    font-size: 4.8vw;
  }
  .ramen-map-contents01 .text .sp {
    display: inline;
  }
}

.bg {
  width: 100vw;
  padding-top: 90px;
  margin: 0 calc(50% - 50vw);
  background: url(../images/bg02.jpg) repeat 50% 0 / 100% auto;
  position: relative;
}
@media (max-width: 81.25em) {
  .bg {
    width: 1300px;
    margin: 0 auto;
  }
}
@media (max-width: 64em) {
  .bg {
    padding-top: 8.789vw;
  }
}
@media (max-width: 42em) {
  .bg {
    width: 100vw;
    padding-top: 12vw;
    margin: 0 calc(50% - 50vw);
    background-size: 180% auto;
  }
}

.ramen-shop-movie {
  max-width: 700px;
  width: 100%;
  margin: 0 auto 40px;
  aspect-ratio: 560 / 315;
}
.ramen-shop-movie iframe {
  width: 100%;
  height: 100%;
}

.performers {
  padding-bottom: 67px;
  margin-bottom: 0;
}
.performers h2 {
  max-width: 406px;
  width: 100%;
  margin: 0 auto 40px;
}
@media (max-width: 64em) {
  .performers {
    padding-bottom: 6.543vw;
  }
  .performers h2 {
    width: 39.648vw;
    margin-bottom: 3.906vw;
  }
}
@media (max-width: 42em) {
  .performers {
    padding-bottom: 9.0667vw;
  }
  .performers h2 {
    width: 74.4vw;
    margin-bottom: 5.3333vw;
  }
}
.performers-list {
  max-width: 1104px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, calc((312 / 1104) * 100%));
  justify-content: center;
  column-gap: calc((84 / 1104) * 100%);
}
@media (max-width: 64em) {
  .performers-list {
    padding: 0 1.953vw;
  }
}
@media (max-width: 42em) {
  .performers-list {
    padding: 0 5.667vw;
    grid-template-columns: repeat(2, 46%);
    column-gap: 4%;
    row-gap: 7.9vw;
  }
}

@media (max-width: 42em) {
  .performers-list__item:first-of-type {
    width: 46%;
    margin: 0 auto;
    grid-column: 1 / 3;
  }
}

.performers-list__item-name {
  padding-top: 7px;
  font-size: 20px;
  line-height: calc(20 / 15);
  font-weight: 700;
  text-align: center;
}
@media (max-width: 64em) {
  .performers-list__item-name {
    padding-top: 0.6836vw;
    font-size: 1.953vw;
  }
}
@media (max-width: 42em) {
  .performers-list__item-name {
    padding-top: 1.8667vw;
    font-size: 3.7333vw;
  }
}

.ramen-map-contents02 {
  width: 100vw;
  padding: 16px 0 30px;
  margin: 0 calc(50% - 50vw);
  background: url(../images/bg03.jpg) repeat 50% 0 / 100% auto;
}
@media (max-width: 81.25em) {
  .ramen-map-contents02 {
    width: 1300px;
    margin: 0 auto;
  }
}
@media (max-width: 64em) {
  .ramen-map-contents02 {
    padding: 1.5625vw 0.977vw 2.93vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents02 {
    width: 100vw;
    padding: 4.2667vw 2.6667vw 8vw;
    margin: 0 calc(50% - 50vw);
    background-size: 180% auto;
  }
}


.ramen-map-contents02 .inner {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.ramen-map-contents02 h2 {
  width: 576px;
  margin: 0;
}
@media (max-width: 64em) {
  .ramen-map-contents02 h2 {
    width: 56.25vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents02 h2 {
    width: 85.71vw;
  }
}

.map-list {
  max-width: 1045px;
  padding-top: 127px;
  margin: -92px auto 0;
  background: url(../images/map.png) no-repeat 60% 0 / calc((798 / 1045) * 100%) auto;
  aspect-ratio: 798 / 569;
  display: grid;
  grid-template-columns: repeat(4, calc((240 / 1045) * 100%));
  grid-template-rows: repeat(2, 270px);
  column-gap: calc((28.3333 / 1045) * 100%);
  row-gap: 167px;
}
_::-webkit-full-page-media, _:future, :root .map-list {
  margin-bottom: 92px;
}
@media (max-width: 64em) {
  .map-list {
    padding-top: 12.402vw;
    margin-top: -8.984vw;
    grid-template-rows: repeat(2, minmax(270px, auto));
    row-gap: 16.309vw;
  }
  _::-webkit-full-page-media, _:future, :root .map-list {
    margin-bottom: 8.9844vw;
  }
}
@media (max-width: 42em) {
  .map-list {
    padding-top: 0;
    margin-top: 0;
    background: none;
    aspect-ratio: auto;
    grid-template-columns: repeat(2, 48%);
    grid-template-rows: auto;
    column-gap: 4%;
    row-gap: 7.9vw;
  }
}

.map-list__item {
  padding: 10px;
  border-radius: 20px;
  background-color: #e86f04;
  margin-bottom:0px;
}
@media (max-width: 64em) {
  .map-list__item {
    padding: 0.977vw;
  }
}
@media (max-width: 42em) {
  .map-list__item {
    padding: 2.667vw 2.667vw 4vw;
    border-radius: 10px;
  }
}
.map-list__item h3 {
  margin-bottom: 4px;
  font-size: 20px;
  color: #fff;
  line-height: 1;
  font-weight: 700;
  text-align: center;
}
@media (max-width: 64em) {
  .map-list__item h3 {
    margin-bottom: 0.391vw;
    font-size: 1.953vw;
  }
}
@media (max-width: 42em) {
  .map-list__item h3 {
    margin-bottom: 1.1vw;
    font-size: 5vw;
  }
}

.map-list__item img {
  width: calc((180 / 220) * 100%);
  margin: 0 auto 8px;
  display: block;
}
@media (max-width: 64em) {
  .map-list__item img {
    margin-bottom: 0.781vw;
  }
}
@media (max-width: 42em) {
  .map-list__item img {
    width: calc((200 / 220) * 100%);
    margin-bottom: 2.1333vw;
  }
}

.map-list__item-name {
  height: calc(16px * calc(18 / 16) * 2);
  margin-bottom: 18px;
  font-size: 16px;
  color: #fff;
  line-height: calc(18 / 16);
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  row-gap: 4px;
  align-items: center;
}
.map-list__item-name span:first-of-type{
  font-size: 20px;
}
@media (max-width: 64em) {
  .map-list__item-name {
    margin-bottom: 1.758vw;
    font-size: 1.5625vw;
  }
  .map-list__item-name span:first-of-type{
    font-size: 1.9531vw;
  }
}
@media (max-width: 42em) {
  .map-list__item-name {
    margin-bottom: 4.8vw;
    font-size: 4.2667vw;
  }
  .map-list__item-name span:first-of-type{
    font-size: 4.267vw;
  }
}

.map-list__item-link {
  width: 109px;
  height: 23px;
  margin: 0 auto;
  border: 1px solid #fff;
  font-size: 14px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.map-list__item-link {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 5px;
}
.map-list__item-link::after {
  width: 13px;
  background: url(../images/icon-arrow.png) no-repeat 0 0 / contain;
  content: '\0020';
  display: block;
  aspect-ratio: 27 / 14;
}
@media (max-width: 64em) {
  .map-list__item-link {
    width: clamp(96px, 10.745vw, 109px);
    height: clamp(22px, 2.246vw, 23px);
    font-size: clamp(12px, 1.367vw, 14px);
  }
  .map-list__item-link::after {
    width: clamp(11px, 1.27vw, 13px);
  }
}
@media (max-width: 42em) {
  .map-list__item-link {
    width: 29.0667vw;
    height: 6.1333vw;
    font-size: 3.7333vw;
  }
  .map-list__item-link::after {
    width: 3.4667vw;
  }
}
.map-list__item-link a:link {
  color: #fff;
}
.map-list__item-link a:visited {
  color: #fff;
}
.map-list__item-link a:hover {
  color: #fff;
}
.map-list__item-link a:focus {
  color: #fff;
}

.smp-map-list {
  display: none;
}
@media (max-width: 42em) {
  .smp-map-list {
    width: 100%;
    padding-top: 10.66677vw;
    margin-bottom: 13.333vw;
    background: url(../images/map.png) no-repeat 63% 0 / calc((798 / 1045) * 100%) auto;
    aspect-ratio: 798 / 569;
    display: grid;
    grid-template-columns: repeat(4, 22%);
    grid-template-rows: auto;
    column-gap: 4%;
    row-gap: 24vw;
  }
  .smp-map-list__item {
    width: 100%;
    background-color: #e86f04;
    border-radius: 5px;
    font-size: 4.2666vw;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .smp-map-list__item a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .smp-map-list__item a:link {
    color: #fff;
  }
  .smp-map-list__item a:visited {
    color: #fff;
  }
  .smp-map-list__item a:hover {
    color: #fff;
  }
  .smp-map-list__item a:focus {
    color: #fff;
  }
}

#item-hokkaido {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}
#item-aomori {
  grid-column: 4 / 5;
  grid-row: 1 / 2;
}
@media (max-width: 42em) {
  #item-aomori {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
  }
}
#item-yamagata {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
@media (max-width: 42em) {
  #item-yamagata {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }
}
#item-fukushima {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
@media (max-width: 42em) {
  #item-fukushima {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
  }
}
#item-miyagi {
  grid-column: 3 / 4;
  grid-row: 2 / 3;
}
@media (max-width: 42em) {
  #item-miyagi {
    grid-column: 1 / 2;
    grid-row: 3 / 4;
  }
}
#item-iwate {
  grid-column: 4 / 5;
  grid-row: 2 / 3;
}
@media (max-width: 42em) {
  #item-iwate {
    grid-column: 2 / 3;
    grid-row: 3 / 4;
  }
}

#smp-item-hokkaido {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}
#smp-item-aomori {
  grid-column: 4 / 5;
  grid-row: 1 / 2;
}
#smp-item-yamagata {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
#smp-item-fukushima {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
#smp-item-miyagi {
  grid-column: 3 / 4;
  grid-row: 2 / 3;
}
#smp-item-iwate {
  grid-column: 4 / 5;
  grid-row: 2 / 3;
}

.ramen-map-button {
  max-width: 1138px;
  width: 100%;
  padding: 35px 0 65px;
  margin: 0 auto;
}
.ramen-map-button__button {
  max-width: 569px;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 64em) {
  .ramen-map-button {
    padding: 3.418vw 0 6.348vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-button {
    padding: 9.3333vw 0 17.3333vw;
  }
}


.lity-container {
  max-width: 800px;
  width: 100%;
  max-height: 90vh;
  height: 100%;
  background-color: transparent;
}
@media (max-width: 64em) {
  .lity-container {
    width: 94vw;
  }
}
@media (max-width: 42em) {
  .lity-container {
    width: 94vw;
    height: 90vh;
  }
}

.lity-content {
  height: 100%;
  padding: 40px 17px 40px 44px;
  border-radius: 20px;
  background-color: #fff;
}
.lity-content::after {
  border-radius: 20px;
}
@media (max-width: 64em) {
  .lity-content {
    padding: 3.906vw 1.66vw 3.906vw 4.297vw;
  }
}
@media (max-width: 42em) {
  .lity-content {
    padding: 10.6667vw 4.5333vw 10.6667vw 5.8667vw;
  }
}
.lity-content > * {
  max-height: none !important;
  height: 100% !important;
  overflow-y: scroll;
  overflow-x: hidden;
}

.lity-close {
  position: absolute;
  top: 10px;
  right: 10px;
  color: #000;
  text-shadow: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: none;
}
.lity-opened .lity-close {
  animation: lity-close-show .45s ease .35s forwards;
}
.lity-closed .lity-close {
  animation: none;
}
@keyframes lity-close-show {
  to {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}
.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  color: #000;
  text-shadow: none;
}
.lity-close:active {
  top: 10px;
}
@media (max-width: 64em) {
  .lity-close {
    top: 0.977vw;
    right: 0.977vw;
  }
  .lity-close:active {
    top: 0.977vw;
  }
}
@media (max-width: 42em) {
  .lity-close {
    top: 2.6667vw;
    right: 2.6667vw;
  }
  .lity-close:active {
    top: 2.6667vw;
  }
}

.ramen-shop {
  padding-bottom: 24px;
  margin-bottom: 21px;
  border-bottom: 3px solid #808080;
}
@media (max-width: 64em) {
  .ramen-shop {
    padding-bottom: 2.344vw;
    margin-bottom: 2.051vw;
  }
}
@media (max-width: 42em) {
  .ramen-shop {
    padding-bottom: 6.4vw;
    margin-bottom: 5.6vw;
  }
}
.ramen-shop:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;

}
.ramen-shop__header {
  margin-bottom: 15px;
  display: grid;
  grid-template-columns: 150px auto;
  column-gap: 12px;
}
@media (max-width: 64em) {
  .ramen-shop__header {
    margin-bottom: 1.4648vw;
  }
}
@media (max-width: 42em) {
  .ramen-shop__header {
    margin-bottom: 4vw;
    grid-template-columns: 100%;
  }
}

.ramen-shop__info {
  font-size: 16px;
  line-height: calc(28 / 16);
}
@media (max-width: 64em) {
  .ramen-shop__info {
    font-size: 1.5625vw;
  }
}
@media (max-width: 42em) {
  .ramen-shop__info {
    font-size: 4.2667vw;
  }
}

@media (max-width: 42em) {
  .ramen-shop__thumbnail {
    width: 40vw;
    margin: 0 auto;
  }
}

.ramen-shop__image img,
.ramen-shop__thumbnail img {
  width: 100%;
  height: auto;
}

.ramen-shop__name {
  font-size: 20px;
  font-weight: 700;
}
@media (max-width: 64em) {
  .ramen-shop__name {
    font-size: 2.344vw;
  }
}
@media (max-width: 42em) {
  .ramen-shop__name {
    font-size: 6.4vw;
  }
}

.ramen-shop__tel {
  font-size: 14px;
}

.ramen-map-contents03 {
  width: 100vw;
  padding: 16px 0 0;
  margin: 0 calc(50% - 50vw);
}
.ramen-map-contents03 h2 {
  width: 406px;
  margin: 0 auto 10px;
}
.ramen-map-contents03 h2 + p {
  margin-bottom: 12px;
  font-size: 22px;
  line-height: 1.7;
  text-align: center;
}
.ramen-map-contents03 .inner {
  padding: 64px 0 34px;
  background: url(../images/bg03.jpg) repeat 50% 0 / 100% auto;
}
@media (max-width: 81.25em) {
  .ramen-map-contents03 {
    width: 1300px;
    margin: 0 auto;
  }
}
@media (max-width: 64em) {
  .ramen-map-contents03 {
    padding: 1.5625vw 0 0;
  }
  .ramen-map-contents03 h2 {
    width: 39.648vw;
  }
  .ramen-map-contents03 h2 + p {
    font-size: 2.148vw;
  }
}
@media (max-width: 42em) {
  .ramen-map-contents03 {
    width: 100vw;
    padding: 4.2667vw 2.6667vw 0;
    margin: 0 calc(50% - 50vw);
  }
  .ramen-map-contents03 .inner {
    width: 100vw;
    padding: 8.5334vw 2.6667vw;
    margin: 0 calc(50% - 50vw);
    background-size: 180% auto;
  }
  .ramen-map-contents03 h2 {
    width: 74.3333vw;
  }
  .ramen-map-contents03 h2 + p {
    font-size: 3.7333vw;
  }
}

.ramen-shop-contents {
  max-width: 1000px;
  width: 100%;
  padding: 15px;
  margin: 0 auto;
  border: 1px solid #e86f04;
  background-color: #fff;
  overflow: auto;
}

.ramen-shop-list {
  display: grid;
  grid-template-columns: repeat(2, calc((470 / 970) * 100%));
  column-gap: calc((30 / 970) * 100%);
  row-gap: 20px;
}

.ramen-shop-info {
  font-size: 16px;
  line-height: calc(28 / 16);
  display: grid;
  grid-template-columns: calc((150 / 470) * 100%) auto;
  column-gap: calc((7 / 470) * 100%);
}
.ramen-shop-info__name {
  margin-bottom: 7px;
  font-size: 20px;
  line-height: 1.75;
}
@media (max-width: 64em) {
  .ramen-shop-info {
    font-size: 1.5625vw;
    row-gap: 2.3333vw;
  }
  .ramen-shop-info__name {
    margin-bottom: 0.6836vw;
    font-size: 2.148vw;
  }
}
@media (max-width: 42em) {
  .ramen-shop-info {
    font-size: 3.7333vw;
    grid-template-columns: 100%;
    column-gap: unset;
    row-gap: 2.3333vw;
  }
  .ramen-shop-info__name {
    margin-bottom: 1.8667vw;
    font-size: 4.8vw;
    line-height: 1.3;
  }
}



.ramen-shop-list a:link {
  color: #424242;
}
.ramen-shop-list a:visited {
  color: #424242;
}
.ramen-shop-list a:hover {
  color: #424242;
}
.ramen-shop-list a:focus {
  color: #424242;
}
