@charset "UTF-8";
/* CSS INFORMATION -====================================================
File name : map.css
Description : 会場マップ
===================================================================== */
/* =====================================================================
    map
======================================================================*/
.map > .inner {
  padding-bottom: 42rem;
}

.map_illust {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0 0 calc(-48 / 680 * 100%) calc(-64 / 680 * 100%);
  width: calc(779 / 680 * 100%);
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .map_illust {
    margin: 0 0 calc(-43 / 1600 * 100%) calc(450 / 1600 * 100%);
    width: calc(701 / 1600 * 100%);
  }
}
/* =====================================================================
    mapArea
======================================================================*/
.mapArea {
  position: relative;
  padding: 8.7rem 0;
}
.mapArea_bg {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 80rem;
  background: #ff6347;
  z-index: -1;
}
.mapArea_bg::before {
  content: "";
  position: absolute;
  display: block;
  bottom: -3.1rem;
  left: 0;
  width: 100%;
  height: 3.2rem;
  background: url(../images/common/img_wave_white.png) round no-repeat center top/auto 100%;
  z-index: 1;
  bottom: auto !important;
  top: -0.4rem !important;
  right: 0;
  margin: auto;
  width: calc(480 / 680 * 100%);
}
@media screen and (min-width: 768px) {
  .mapArea_bg::before {
    bottom: -2.7rem;
    height: 2.8rem;
  }
}
.mapArea_bg::after {
  content: "";
  position: absolute;
  display: block;
  bottom: -3.1rem;
  left: 0;
  width: 100%;
  height: 3.2rem;
  background: url(../images/common/img_wave_white.png) round no-repeat center top/auto 100%;
  z-index: 1;
  bottom: -1px !important;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}
@media screen and (min-width: 768px) {
  .mapArea_bg::after {
    bottom: -2.7rem;
    height: 2.8rem;
  }
}
.mapArea_bg_shape {
  position: absolute;
  bottom: -25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 120%;
  height: 35rem;
  fill: #ed537a;
  z-index: 1;
}
.mapArea h3 {
  text-align: center;
  margin: 0 auto 4rem;
}
.mapArea h3 span {
  display: inline-block;
  padding: 0 1.5em;
  font-size: 3.4rem;
  font-weight: 900;
  color: #fff;
  line-height: 1.3;
  border-left: 0.4em double #ffde0a;
  border-right: 0.4em double #ffde0a;
}
.mapArea p {
  margin-top: 9rem;
  text-align: center;
  line-height: 1.666;
}
.mapArea p .icon_star {
  display: inline-block;
  margin-right: 0.3em;
  width: 1.8em;
  vertical-align: middle;
}
.mapArea p a {
  display: inline;
  text-decoration: underline;
}

.map_img {
  position: relative;
  margin: 0 calc(50% - 50vw);
}
.map_img_link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.map_img_link li {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(214 / 750 * 100%);
  padding-top: calc(52 / 750 * 100%);
}
.map_img_link li a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.map_img_link li.map_01 {
  margin: calc(265 / 750 * 100%) 0 0 calc(164 / 750 * 100%);
}
.map_img_link li.map_02 {
  margin: calc(114 / 750 * 100%) 0 0 calc(14 / 750 * 100%);
  width: calc(200 / 750 * 100%);
}
.map_img_link li.map_03 {
  margin: calc(49 / 750 * 100%) 0 0 calc(152 / 750 * 100%);
}
.map_img_link li.map_04 {
  margin: calc(385 / 750 * 100%) 0 0 calc(244 / 750 * 100%);
  width: calc(267 / 750 * 100%);
}
.map_img_link li.map_05 {
  margin: calc(470 / 750 * 100%) 0 0 calc(374 / 750 * 100%);
  width: calc(281 / 750 * 100%);
}
.map_img_link li.map_06 {
  margin: calc(277 / 750 * 100%) 0 0 calc(382 / 750 * 100%);
  width: calc(292 / 750 * 100%);
}
.map_img_link li.map_07 {
  margin: calc(322 / 750 * 100%) 0 0 calc(122 / 750 * 100%);
  width: calc(205 / 750 * 100%);
}

@media screen and (min-width: 768px) {
  .mapArea {
    padding: 10rem 0;
  }
  .mapArea_bg {
    height: 56rem;
  }
  .mapArea_bg::before {
    width: calc(800 / 1920 * 100%);
    max-width: 760px;
  }
  .mapArea h3 {
    max-width: 1200px;
  }
  .mapArea h3 span {
    display: inline-block;
    font-size: max(3rem, 20px);
  }
  .mapArea p {
    margin-top: 4rem;
  }
  .mapArea p a:hover {
    opacity: 0.6;
  }
  .map_img {
    margin: 0 auto;
    max-width: 1200px;
  }
  .map_img img {
    border-radius: 3.2rem;
  }
  .map_img_link li {
    width: 11.8333333333%;
    padding-top: 2.8333333333%;
  }
  .map_img_link li.map_01 {
    margin: 15.5833333333% 0 0 42.1666666667%;
  }
  .map_img_link li.map_02 {
    margin: 23.5% 0 0 28.3333333333%;
    width: 11.3333333333%;
  }
  .map_img_link li.map_03 {
    margin: 6.0833333333% 0 0 37.1666666667%;
  }
  .map_img_link li.map_04 {
    margin: 31.75% 0 0 61.25%;
    width: 14.5833333333%;
  }
  .map_img_link li.map_05 {
    margin: 38% 0 0 51.3333333333%;
    width: 15.6666666667%;
  }
  .map_img_link li.map_06 {
    margin: 26.6666666667% 0 0 65.0833333333%;
    width: 16.25%;
  }
  .map_img_link li.map_07 {
    margin: 32.6666666667% 0 0 32.4166666667%;
    width: 11.5%;
  }
}
/* =====================================================================
    place
======================================================================*/
.event_subttl {
  text-align: center;
  margin: 5rem 0;
}
.event_subttl span {
  display: inline-block;
  padding: 0 1em;
  font-size: 3.4rem;
  font-weight: 900;
  color: #009952;
  border-left: 0.4em double #000000;
  border-right: 0.4em double #000000;
}

.place_list > li {
  margin-bottom: 15rem;
}
.place_list > li h3 {
  margin-bottom: 4rem;
}
.place_list > li h3 img {
  margin: auto;
  width: auto;
  height: 10rem;
}
.place_list > li p {
  margin-bottom: 8rem;
  text-align: center;
  line-height: 1.666;
}

.place_link li a {
  position: relative;
  margin-bottom: 0.5em;
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 0.3em;
  line-height: 1.3;
}
.place_link li a svg {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 0.5em;
  width: 1em;
  height: 1em;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  fill: #ffde0a;
}

@media screen and (min-width: 768px) {
  .event_subttl {
    margin: 8rem 0;
  }
  .event_subttl span {
    font-size: max(3rem, 20px);
  }
  .place_list > li {
    margin-bottom: 12rem;
  }
  .place_list > li h3 img {
    height: 8rem;
    min-height: 50px;
  }
  .place_list > li p {
    margin-bottom: 4rem;
  }
  .place_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .place_link li {
    margin: 0 0.5em 0.8em;
  }
  .place_link li a svg {
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .place_link li a:hover svg {
    -webkit-transform: translateX(0.25em) rotate(-90deg);
            transform: translateX(0.25em) rotate(-90deg);
  }
}/*# sourceMappingURL=map.css.map */