h2 {
  margin-bottom: 1em;
  font-size: 1.5em;
  line-height: 1.5;
  font-weight: bold;
}
@media screen and (max-width: 559px) {
  h2 {
    font-size: 1.25em;
  }
}

ul.nav_tabx {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul.nav_tabx li {
  width: 25%;
}
@media screen and (max-width: 1059px) {
  ul.nav_tabx li {
    width: 50%;
  }
}
ul.nav_tabx li a {
  margin: 3px;
  display: block;
  padding: 1em 0;
  border: 2px solid #889;
  color: #889;
  font-weight: bold;
}
ul.nav_tabx li a:hover {
  background: rgba(136, 136, 153, 0.25);
}
ul.nav_tabx li a span {
  display: block;
  text-align: center;
}
ul.nav_tabx li a .name {
  font-size: 150%;
}
ul.nav_tabx li a .pav {
  margin-top: 3px;
}

h3.pavilion_title {
  background: #889;
  border-radius: 2px;
  color: #fff;
  padding: 10px 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
h3.pavilion_title span {
  display: block;
  font-weight: bold;
  font-size: 1.25em;
}
h3.pavilion_title span.num {
  border: 2px solid #fff;
  padding: 2px 0.75em;
  margin-right: 0.75em;
  font-size: 0.8125em;
}
h3.pavilion_title span.name {
  margin-right: 0.25em;
}
@media screen and (min-width: 1060px) {
  .wrap_pav {
    margin: 2em auto 6em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .wrap_pav .map {
    width: 45%;
    margin-right: 3em;
  }
  .wrap_pav .pvl_list {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media screen and (max-width: 1059px) {
  .wrap_pav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 1em auto 3em;
  }
  .wrap_pav .map, .wrap_pav ul.pvl_list {
    width: 100%;
    margin-bottom: 1em;
  }
}
.wrap_pav .map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.5);
}
.wrap_pav .map img {
  width: 100%;
}
.wrap_pav .map.generation_ai {
  border: 0;
}
.wrap_pav .map.generation_ai img {
  border: 1px solid rgba(0, 0, 0, 0.5);
}
.wrap_pav ul.pvl_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.wrap_pav ul.pvl_list li {
  font-size: 0.9125em;
  line-height: 1.25;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 1060px) {
  .wrap_pav ul.pvl_list li {
    width: calc(50% - 0.5em);
  }
  .wrap_pav ul.pvl_list li:nth-child(1), .wrap_pav ul.pvl_list li:nth-child(2) {
    border-top: 1px solid rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 1059px) {
  .wrap_pav ul.pvl_list li {
    width: 100%;
  }
  .wrap_pav ul.pvl_list li:last-child {
    border: 0;
  }
}
.wrap_pav ul.pvl_list li a {
  display: block;
  color: #333;
  padding: 0.75em 0.5em;
  font-weight: bold;
}
.wrap_pav ul.pvl_list li a:hover {
  background: rgba(0, 0, 0, 0.05);
}
.wrap_pav ul.pvl_list li a.nolink {
  font-weight: normal;
}
.wrap_pav ul.pvl_list li a.nolink:hover {
  background: rgba(0, 0, 0, 0);
}