html {
  font-size: 15px;
  touch-action: manipulation;
}

a {
  text-decoration: none;
}

[v-cloak] {
  display: none !important;
}

.mt-0 {
  margin-top: 0px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

.ma-0 {
  margin: 0px !important;
}

.mx-0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.my-0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.pt-0 {
  padding-top: 0px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pl-0 {
  padding-left: 0px !important;
}

.pr-0 {
  padding-right: 0px !important;
}

.pa-0 {
  padding: 0px !important;
}

.px-0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.py-0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.mt-1 {
  margin-top: 4px !important;
}

.mb-1 {
  margin-bottom: 4px !important;
}

.ml-1 {
  margin-left: 4px !important;
}

.mr-1 {
  margin-right: 4px !important;
}

.ma-1 {
  margin: 4px !important;
}

.mx-1 {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

.my-1 {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

.pt-1 {
  padding-top: 4px !important;
}

.pb-1 {
  padding-bottom: 4px !important;
}

.pl-1 {
  padding-left: 4px !important;
}

.pr-1 {
  padding-right: 4px !important;
}

.pa-1 {
  padding: 4px !important;
}

.px-1 {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

.py-1 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.mt-2 {
  margin-top: 8px !important;
}

.mb-2 {
  margin-bottom: 8px !important;
}

.ml-2 {
  margin-left: 8px !important;
}

.mr-2 {
  margin-right: 8px !important;
}

.ma-2 {
  margin: 8px !important;
}

.mx-2 {
  margin-left: 8px !important;
  margin-right: 8px !important;
}

.my-2 {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.pt-2 {
  padding-top: 8px !important;
}

.pb-2 {
  padding-bottom: 8px !important;
}

.pl-2 {
  padding-left: 8px !important;
}

.pr-2 {
  padding-right: 8px !important;
}

.pa-2 {
  padding: 8px !important;
}

.px-2 {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.py-2 {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.mt-3 {
  margin-top: 12px !important;
}

.mb-3 {
  margin-bottom: 12px !important;
}

.ml-3 {
  margin-left: 12px !important;
}

.mr-3 {
  margin-right: 12px !important;
}

.ma-3 {
  margin: 12px !important;
}

.mx-3 {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

.my-3 {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.pt-3 {
  padding-top: 12px !important;
}

.pb-3 {
  padding-bottom: 12px !important;
}

.pl-3 {
  padding-left: 12px !important;
}

.pr-3 {
  padding-right: 12px !important;
}

.pa-3 {
  padding: 12px !important;
}

.px-3 {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.py-3 {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.mt-4 {
  margin-top: 16px !important;
}

.mb-4 {
  margin-bottom: 16px !important;
}

.ml-4 {
  margin-left: 16px !important;
}

.mr-4 {
  margin-right: 16px !important;
}

.ma-4 {
  margin: 16px !important;
}

.mx-4 {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.my-4 {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

.pt-4 {
  padding-top: 16px !important;
}

.pb-4 {
  padding-bottom: 16px !important;
}

.pl-4 {
  padding-left: 16px !important;
}

.pr-4 {
  padding-right: 16px !important;
}

.pa-4 {
  padding: 16px !important;
}

.px-4 {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.py-4 {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.mt-5 {
  margin-top: 20px !important;
}

.mb-5 {
  margin-bottom: 20px !important;
}

.ml-5 {
  margin-left: 20px !important;
}

.mr-5 {
  margin-right: 20px !important;
}

.ma-5 {
  margin: 20px !important;
}

.mx-5 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.my-5 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.pt-5 {
  padding-top: 20px !important;
}

.pb-5 {
  padding-bottom: 20px !important;
}

.pl-5 {
  padding-left: 20px !important;
}

.pr-5 {
  padding-right: 20px !important;
}

.pa-5 {
  padding: 20px !important;
}

.px-5 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.py-5 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.mt-6 {
  margin-top: 24px !important;
}

.mb-6 {
  margin-bottom: 24px !important;
}

.ml-6 {
  margin-left: 24px !important;
}

.mr-6 {
  margin-right: 24px !important;
}

.ma-6 {
  margin: 24px !important;
}

.mx-6 {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

.my-6 {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.pt-6 {
  padding-top: 24px !important;
}

.pb-6 {
  padding-bottom: 24px !important;
}

.pl-6 {
  padding-left: 24px !important;
}

.pr-6 {
  padding-right: 24px !important;
}

.pa-6 {
  padding: 24px !important;
}

.px-6 {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.py-6 {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.fs-5 {
  font-size: 0.5rem !important;
}

.fs-6 {
  font-size: 0.6rem !important;
}

.fs-7 {
  font-size: 0.7rem !important;
}

.fs-8 {
  font-size: 0.8rem !important;
}

.fs-9 {
  font-size: 0.9rem !important;
}

.fs-10 {
  font-size: 1rem !important;
}

.fs-11 {
  font-size: 1.1rem !important;
}

.fs-12 {
  font-size: 1.2rem !important;
}

.fs-13 {
  font-size: 1.3rem !important;
}

.fs-14 {
  font-size: 1.4rem !important;
}

.fs-15 {
  font-size: 1.5rem !important;
}

.fs-16 {
  font-size: 1.6rem !important;
}

.fs-17 {
  font-size: 1.7rem !important;
}

.fs-18 {
  font-size: 1.8rem !important;
}

.fs-19 {
  font-size: 1.9rem !important;
}

.fs-20 {
  font-size: 2rem !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-red {
  color: red !important;
}

.text-white {
  color: white !important;
}

.fw-bold {
  font-weight: bold !important;
}

.text-line-through {
  text-decoration: line-through;
}

.d-block {
  display: block !important;
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-flex {
  display: flex !important;
}

.flex-column {
  flex-direction: column !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.justify-content-center {
  justify-content: center !important;
}

.align-items-center {
  align-items: center !important;
}

.f-wrap {
  flex-wrap: wrap;
}

.f-jc-center {
  justify-content: center !important;
}

.f-jc-between {
  justify-content: space-between;
}

.f-jc-around {
  justify-content: space-around;
}

.f-jc-start {
  justify-content: flex-start;
}

.f-jc-end {
  justify-content: flex-end;
}

.f-ai-center {
  align-items: center;
}

.f-ai-start {
  align-items: flex-start;
}

.f-ai-end {
  align-items: flex-end;
}

.bg-danger {
  background-color: #dc3545 !important;
}

.position-relative {
  position: relative;
}

.LayoutWrapper {
  width: 100%;
  color: #333;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.LayoutWrapper__lock {
  height: 100vh;
  overflow-y: hidden;
}
.LayoutContainer {
  width: 100%;
}
.LayoutMain {
  flex: 1;
  padding-bottom: 60px;
}
.LayoutInner {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}
.LayoutSection {
  padding: 12px;
}
.LayoutHeader {
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: center;
}
.LayoutBox {
  border: 1px solid #414141;
  padding: 20px 12px;
  line-height: 2;
}
.LayoutBox__red {
  border-color: #FF0000;
  color: #FF0000;
}
.LayoutBox__green {
  border-color: green;
  color: green;
}
.LayoutBox p:last-of-type {
  margin-bottom: 0;
}

.Drawer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 10;
  transition: opacity 300ms, visibility 300ms;
  opacity: 0;
  visibility: hidden;
}
.DrawerOpen {
  opacity: 1;
  visibility: visible;
}
.DrawerContainer {
  position: absolute;
  width: 280px;
  top: 0;
  right: -280px;
  bottom: 0;
  background-color: #F0F0F0;
  transition: right 300ms;
}
.DrawerOpen .DrawerContainer {
  right: 0;
}
.DrawerHeader {
  display: flex;
  justify-content: flex-end;
  padding: 12px;
  margin-bottom: 8px;
}
.DrawerHeader__button {
  border: none;
  background: transparent;
  padding: 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 0.8rem;
}
.DrawerHeader__button i {
  font-size: 3rem;
  font-weight: bold;
}
.Drawer__ul {
  background-color: #fff;
  margin-bottom: 12px;
}
.Drawer__ul li {
  border-top: 1px solid #DDDDDD;
}
.Drawer__ul li:last-of-type {
  border-bottom: 1px solid #DDDDDD;
}
.Drawer__ul li a {
  display: block;
  padding: 12px;
  color: #000;
}
.Drawer__button {
  display: block;
  padding: 8px 16px;
  border: none;
  font-size: 2rem;
  color: #fff;
  background: transparent;
}
.Drawer__notify {
  position: absolute;
  background-color: #FF0000;
  color: #FFFFFF;
  top: 4px;
  left: 2px;
  height: 1.8rem;
  width: 1.8rem;
  text-align: center;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.Drawer__notify__reservation {
  position: absolute;
  background-color: #FF0000;
  color: #FFFFFF;
  top: 12px;
  left: 80px;
  height: 20px;
  width: 20px;
  text-align: center;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10px;
}

.Drawer__notify__message {
  position: absolute;
  background-color: #FF0000;
  color: #FFFFFF;
  top: 12px;
  left: 120px;
  height: 20px;
  width: 20px;
  text-align: center;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10px;
}

.Footer {
  background-color: #414141;
  color: #fff;
}
.Footer a {
  color: #fff;
}
.Footer__ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.Footer__ul ul {
  width: 49%;
}
.Footer__ul ul li {
  width: 100%;
}
.Footer__ul ul li a {
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 8px;
  position: relative;
}
.Footer__ul ul li a::after {
  display: block;
  font: var(--fa-font-solid);
  content: "\f105";
  position: absolute;
  display: flex;
  align-items: center;
  top: 0;
  right: 12px;
  bottom: 0;
}
.Footer__logo {
  font-size: 1.5rem;
  text-align: center;
  margin: 12px auto;
  display: flex;
  justify-content: center;
}
.Footer__logo--image {
  width: 172px;
}
.Footer__credit {
  font-size: 0.8rem;
  text-align: center;
}

.AreaHeader {
  padding: 12px 20px;
  background-color: #35c2c4;
}
.AreaHeader__keyword {
  border: 1px solid #707070;
  border-radius: 50px;
  background-color: #fff;
  padding: 8px;
  display: flex;
  align-items: center;
}
.AreaHeader__keyword i {
  margin-right: 8px;
}
.AreaHeader__keyword input {
  display: block;
  flex: 1;
  border: none;
}
.AreaHeader__keyword input:focus {
  outline: none;
}
.AreaBody {
  width: 100%;
}
.AreaBody--off {
  display: none;
}
.AreaBody__map {
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  position: relative;
  padding: 5%;
}
.AreaBody__map img {
  width: 100%;
}
.AreaBody__region {
  background: #fff;
  border: 1px solid #183153;
  padding: 2.2% 3%;
  border-radius: 100px;
  font-size: 1.1rem;
  position: absolute;
}
.AreaBody__region:disabled {
  border-color: #aaa;
  color: #aaa;
}
.AreaBody__region--r-hokkaido {
  top: 7%;
  right: 15%;
}
.AreaBody__region--tohoku {
  top: 45%;
  right: 16%;
}
.AreaBody__region--kanto {
  bottom: 21%;
  right: 20%;
}
.AreaBody__region--koshinetsu {
  top: 44%;
  left: 44%;
}
.AreaBody__region--hokuriku {
  top: 55%;
  left: 31.5%;
}
.AreaBody__region--kansai {
  left: 38%;
  bottom: 7%;
}
.AreaBody__region--tokai {
  right: 31%;
  bottom: 10%;
}
.AreaBody__region--chugoku {
  left: 9%;
  bottom: 26%;
}
.AreaBody__region--shikoku {
  left: 21%;
  bottom: 3%;
}
.AreaBody__region--kyusyu {
  left: 4%;
  bottom: 4%;
}
.AreaBody__region--r-okinawa {
  top: 23%;
  left: 15%;
}
.AreaBody__link {
  width: 100%;
  display: block;
  background: transparent;
  border: none;
  border-bottom: 1px solid #999999;
  padding: 12px;
  text-align: left;
  color: #333;
}
.AreaBody__link i {
  margin-right: 8px;
}
.AreaBody__ul {
  margin: 0 8px;
}
.AreaBody__li {
  width: 100%;
}
.AreaBody__li--inner {
  display: flex;
  justify-content: space-between;
  padding: 12px 8px;
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid #999999;
  color: #333;
}
.AreaBody__li--inner:after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f105";
  margin-right: 8px;
}
.AreaBody__li--inner:disabled {
  color: #CFCFCF;
}
.AreaBody__li--disabled {
  color: #cfcfcf;
}/*# sourceMappingURL=area.css.map */