#taxonomy-event-venue .lower_fv {
  background-image: url(../img/info/info_topimg.png);
}

@media (max-width: 767px) {
  #taxonomy-event-venue .lower_fv {
    background-image: url(../img/info/info_topimg_sp.png);
  }
}

#taxonomy-event-venue .breadcrumb {
  margin-bottom: 30px;
}

#taxonomy-event-venue h2.ttl {
  display: flex;
  align-items: flex-end;
  position: relative;
  padding-bottom: 16px;
  margin-bottom: 32px;
}

#taxonomy-event-venue h2.ttl .ico {
  flex-shrink: 0;
  padding-bottom: 4px;
}

#taxonomy-event-venue h2.ttl .text {
  flex-shrink: 1;
  z-index: 1;
  font-size: 20px;
}

#taxonomy-event-venue h2.ttl .img {
  width: 100%;
  text-align: right;
  position: absolute;
}

@media (min-width: 768px) {
  #taxonomy-event-venue h2.ttl {
    margin-bottom: 56px;
  }

  #taxonomy-event-venue h2.ttl .text {
    flex-shrink: 0;
    font-size: 24px;
  }
}

#taxonomy-event-venue h2.ttl .img::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 16px;
  height: 3px;
  background: var(--glay555);
}

#taxonomy-event-venue h2.ttl .img::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--glay555);
}

@media (max-width: 767px) {
  #taxonomy-event-venue h2.ttl .img img {
    width: 126px;
    height: auto;
  }
}

#taxonomy-event-venue .detail {
  margin-top: 80px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

#taxonomy-event-venue .detail h3 {
  font-weight: bold;
  font-size: 20px;
  text-align: center;
}

#taxonomy-event-venue .events-wrapper {
  display: flex;
  flex-wrap: wrap;
}

#taxonomy-event-venue .events {
  width: 33%;
}

#taxonomy-event-venue .events .event-ttl {
  text-align: left;
}

@media (max-width: 639px) {
  #taxonomy-event-venue .events {
    width: 50%;
  }
}

#taxonomy-event-venue .eo-venue-map {
  margin-top: 80px;
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  height: 450px !important;
}

#taxonomy-event-venue .back {
  text-align: center;
  margin-top: 80px;
}

@media (max-width: 639px) {
  #taxonomy-event-venue .eo-venue-map {
    margin-top: 40px;
    height: 200px !important;
  }

  #taxonomy-event-venue .back {
    margin-top: 40px;
  }
}

#taxonomy-event-venue .back a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#taxonomy-event-venue .back a::before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  background: url(../img/ico_arr_r_wh.svg) left center / contain no-repeat;
  transform: scaleX(-1);
}

@media (min-width: 960px) {
  #taxonomy-event-venue .top {
    display: flex;
    align-items: center;
    /* gap: 70px; */
  }
}

#taxonomy-event-venue .top .img {
  max-width: 500px;
  flex-shrink: 0;
}

#taxonomy-event-venue .top .img img {
  height: auto;
}

#taxonomy-event-venue .top .text {
  padding-left: 70px;
}

#taxonomy-event-venue .imgs {
  margin-top: 48px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

#taxonomy-event-venue .imgs > div {
  width: 273px;
}

#taxonomy-event-venue .imgs img {
  width: 100%;
  height: auto;
}

@media (max-width: 959px) {
  #taxonomy-event-venue .top {
    flex-direction: column;
  }

  #taxonomy-event-venue .top .text {
    padding-left: 0;
    padding-top: 16px;
  }
}

@media (max-width: 639px) {
  #taxonomy-event-venue .imgs > div {
    width: 100%;
  }
}

#taxonomy-event-venue .sns a + a {
  margin-left: 8px;
}

@media (max-width: 959px) {
  #taxonomy-event-venue .venue-pc {
    display: none;
  }
}

@media (min-width: 960px) {
  #taxonomy-event-venue .venue-sp {
    display: none;
  }
}

#taxonomy-event-venue .slick-prev,
#taxonomy-event-venue .slick-next {
  z-index: 3;
  width: 32px;
  height: 32px;
}

#taxonomy-event-venue .slick-prev::before,
#taxonomy-event-venue .slick-next::before {
  content: '';
  background: var(--bk);
  opacity: 0.8;
  border-radius: 96px;
  display: block;
  width: 100%;
  height: 100%;
}

#taxonomy-event-venue .slick-prev::after,
#taxonomy-event-venue .slick-next::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
}

#taxonomy-event-venue .slick-prev::after {
  right: 10px;
  border-bottom: 1px solid var(--wh);
  border-left: 1px solid var(--wh);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#taxonomy-event-venue .slick-next::after {
  left: 10px;
  border-top: 1px solid var(--wh);
  border-right: 1px solid var(--wh);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#taxonomy-event-venue .slick-prev {
  left: -8px;
}

#taxonomy-event-venue .slick-next {
  right: -8px;
}

#taxonomy-event-venue .top a:hover,
#taxonomy-event-venue .detail a:hover {
  color: var(--glay555);
}

#taxonomy-phase .lower_fv {
  background-image: url(../img/ppp/ppp_topimg.png);
}

@media (max-width: 767px) {
  #taxonomy-phase .lower_fv {
    background-image: url(../img/ppp/ppp_topimg_sp.png);
  }
}

#taxonomy-phase #banners {
  margin-top: 0;
  border-top: none;
}

.pp {
  overflow-x: hidden;
}

.pp h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  margin-bottom: 32px;
  text-align: center;
  /* overflow-x: hidden; */
}

.pp h2 .c {
  flex-shrink: 0;
}

.pp h2 .l,
.pp h2 .r {
  display: flex;
  align-items: center;
}

.pp h2 .r {
  flex-direction: row-reverse;
}

.pp h2 .l::before,
.pp h2 .r::before {
  content: '';
  display: block;
  margin: auto;
  background: var(--glay555);
  width: 50vw;
  height: 1px;
}

.pp h2 .l::after,
.pp h2 .r::after {
  content: '';
  display: block;
  margin: auto;
  background: var(--glay555);
  width: 16px;
  height: 3px;
}

.pp h2 .l {
  margin-right: 40px;
}

.pp h2 .r {
  margin-left: 40px;
}

.pp .slider::after {
  content: '';
  width: 100%;
  height: 119px;
  background: linear-gradient(92.1deg, #172A88 -25.86%, #172A88 11.2%, #E60012 71.28%, #E60012 101.95%);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1;
}

@media (max-width: 639px) {
  .pp .slider::after {
    height: 80px;
  }

  .pp h2 img {
    height: 37px;
  }
}

.pp.all {
  background: var(--wh);
  color: var(--bk);
  padding-top: 96px;
  padding-bottom: 80px;
}

.pp.all h3 {
  font-size: 24px;
  font-weight: bold;
  position: relative;
  padding: 4px 0;
  margin-bottom: 25px;
}

.pp.all h3::before,
.pp.all h3::after {
  content: '';
  position: absolute;
  bottom: 0;
  background: var(--glayccc);
}

.pp.all h3::before {
  width: 100%;
  height: 1px;
}

.pp.all h3::after {
  width: 16px;
  height: 3px;
  left: 0;
  bottom: -1px;
}

@media (max-width: 639px) {
  .pp.all h3 {
    font-size: 20px;
  }
}

.pp.all .content {
  display: flex;
}

.pp .sidebar {
  flex-shrink: 0;
  width: 300px;
  margin-right: 48px;
}

.pp .sidebar a {
  display: block;
  padding: 24px;
  background: url(../img/ico_arr_r_bk.svg) center right 24px no-repeat;
  background-size: 28px;
}

.pp .sidebar .active a,
.pp .sidebar a:hover {
  background-color: var(--glay_bg);
}

.pp .archive_list {
  width: 100%;
}

.pp .archive_list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.pp .archive_list ul li a {
  flex-direction: column;
  max-width: 180px;
}

.pp .archive_list .ttl {
  font-size: 18px;
  font-weight: bold;
  margin-top: 8px;
}

.pp .archive_list .excerpt {
  font-family: arial, helvetica, sans-serif;
  font-size: 12px;
}

@media (max-width: 639px) {
  .pp .archive_list .ttl {
    font-size: 15px;
  }

  .pp .archive_list .excerpt {
    font-size: 10px;
  }
}

.pp .archive_list .img {
  width: 180px;
  height: 180px;
}

.pp .archive_list .img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
}

.pp .archive_list .img .no-img {
  aspect-ratio: 1 / 1;
}

.pp .archive_list li + li {
  margin-top: 0;
}

@media (max-width: 959px) {
  .pp.all .content {
    flex-direction: column-reverse;
  }

  .pp .sidebar {
    width: 100%;
  }
}


@media (max-width: 639px) {
  .pp .archive_list ul {
    gap: 10px 2%;
  }

  .pp .archive_list li {
    width: 32%;
  }

  .pp .archive_list li .img {
    display: inherit;
    max-width: 100%;
    height: auto;
  }
}

.newcomer {
  padding-top: 80px;
  padding-bottom: 80px;
}

.newcomer a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  /* max-width: 334px; */
  padding: 0 12px;
  /* overflow: hidden; */
  /* transition: all 0.3s ease; */
}

.newcomer a .img {
  width: 360px;
  max-width: 100%;
  border-radius: 100%;
  /* aspect-ratio: 1 / 1; */
  overflow: hidden;
  filter: drop-shadow(8px 8px 0px rgba(0, 0, 0, 0.25));
}

.newcomer a .img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  transition: all 0.3s ease;
}

.newcomer a:hover .img img {
  transform: scale(1.1);
}

.newcomer a .no-img {
  background: var(--glay_bg);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 100%;
}

.newcomer a .no-img::before {
  content: 'no image';
  color: var(--bk);
  font-size: 24px;
}

.newcomer a .ttl {
  margin-top: 26px;
}

.newcomer .slick-prev,
.newcomer .slick-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  background: rgba(25, 25, 25, .8);
  z-index: 3;
}

.newcomer .slick-prev::before,
.newcomer .slick-next::before {
  content: '';
  display: block;
  width: 50%;
  height: 50%;
  background: url(../img/ico_arr_r_wh.svg) center / contain no-repeat;
}

.newcomer .slick-prev::before {
  transform: scaleX(-1);
}

.newcomer .slick-prev {
  left: 20px;
}

.newcomer .slick-next {
  right: 20px;
}

.newcomer .slick-prev:hover,
.newcomer .slick-prev:focus,
.newcomer .slick-next:hover,
.newcomer .slick-next:focus {
  color: inherit;
  opacity: 0.6;
}

@media (max-width: 639px) {

  .newcomer .slick-prev,
  .newcomer .slick-next {
    display: none !important;
  }
}

.pro_popup {
  background: var(--bk);
  color: var(--wh);
  padding: 60px 48px 48px 48px;
  max-width: 100%;
}

@media (max-width: 639px) {
  .pro_popup {
    padding: 60px 20px 40px 20px;
  }
}

.pro_popup .img {
  text-align: center;
}

.pro_popup .img img {
  border-radius: 10px;
}

.pro_popup .ttl {
  margin-top: 16px;
  margin-bottom: 16px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}

@media (max-width: 639px) {
  .pro_popup .ttl {
    font-size: 20px;
  }
}

.pro_popup .content {
  text-align: center;
}

.pro_popup th {
  width: 180px;
  max-width: 30%;
}
@media (max-width: 639px) {
  .pro_popup th {
    width: 100%;
    max-width: 100%;
  }
}

.pro_popup .img .no-img {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
  background: var(--glay_bg);
  border-radius: 10px;
}

.pro_popup .img .no-img::before {
  content: 'no image';
  color: var(--bk);
  font-size: 24px;
}

.pro_popup .detail {
  /* overflow-y: auto; */
  /* max-height: 30vh; */
}