/*------------------------------------------------------------
	MainVisual
------------------------------------------------------------*/
.mv {
  background: url(/wp/img/anniversary/20th/mv-bg.png) center/cover no-repeat;
  padding: 5rem 1rem 3rem;
}
@media all and (max-width: 767px) {
  .mv {
    background: url(/wp/img/anniversary/20th/mv-bg_sp.png) center/cover no-repeat;
    padding: 3rem 4rem 1rem;
  }
}
.mv .inner {
  max-width: 82rem;
  display: grid;
  grid-template-columns: 1fr 20.7rem;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 5.5rem;
     -moz-column-gap: 5.5rem;
          column-gap: 5.5rem;
  row-gap: 5rem;
  justify-items: center;
  padding: 0;
}
@media all and (max-width: 767px) {
  .mv .inner {
    grid-template-columns: 1fr;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 2rem;
  }
}
.mv .inner img {
  max-width: 100%;
}
.mv .inner .mv-text {
  -webkit-filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
          filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
}
.mv .inner .mv-bottom {
  grid-column: 1/3;
  width: 100%;
}
.mv .inner .mv-bottom img {
  width: 100%;
}

/*------------------------------------------------------------
	Logo Change
------------------------------------------------------------*/
.logo-change-box {
  text-align: center;
  max-width: min(60vw, 60rem);
  margin-left: auto;
  margin-right: auto;
}
.logo-change-box img {
  width: 100%;
}

.logo-change-text {
  max-width: 70rem;
  margin-left: auto;
  margin-right: auto;
}
.logo-change-text p {
  font-size: 2rem;
  padding: 3rem 5rem 2rem;
  line-height: 2;
  border: 2px solid #D9E021;
  border-radius: 6px;
  -webkit-box-shadow: 8px 8px 0 #7AC943;
          box-shadow: 8px 8px 0 #7AC943;
}
@media all and (max-width: 767px) {
  .logo-change-text p {
    font-size: 1.6rem;
    padding: 2rem 2rem 1.5rem;
    -webkit-box-shadow: 5px 5px 0 #7AC943;
            box-shadow: 5px 5px 0 #7AC943;
  }
}

/*------------------------------------------------------------
	Event 20th
------------------------------------------------------------*/
.event-20th {
  background: url(/wp/img/anniversary/20th/bg-event-20th.png) center/cover no-repeat;
  padding-top: 0;
  padding-bottom: 100px;
  margin-top: 180px;
}
@media all and (max-width: 767px) {
  .event-20th {
    padding-bottom: 60px;
    margin-top: 140px;
  }
}
.event-20th .sec-ttl h2 img {
  margin-top: -80px;
}

.event-20th-top {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
}
.event-20th-top .dot {
  display: block;
  margin: 2rem auto;
  width: 3em;
  height: 1em;
  background-image: -webkit-radial-gradient(#ccc 30%, transparent 30%);
  background-image: radial-gradient(#ccc 30%, transparent 30%);
  background-size: 1em 1em;
  background-position: bottom;
  background-repeat: repeat-x;
}
.event-20th-top .date {
  line-height: 1.2;
  letter-spacing: 0.2em;
}
@media all and (max-width: 767px) {
  .event-20th-top {
    font-size: 2rem;
  }
}

.event-20th-card {
  padding: 3rem;
  margin-top: 80px;
  background: #FFFDEB;
  border: 1px solid #FE9807;
  -webkit-box-shadow: 8px 8px 0 #FE6601;
          box-shadow: 8px 8px 0 #FE6601;
  border-radius: 12px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: grid;
  grid-template-columns: 30.8rem 1fr;
  gap: 3rem;
}
@media all and (max-width: 767px) {
  .event-20th-card {
    grid-template-columns: 1fr;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
    row-gap: 2rem;
    -webkit-box-shadow: 5px 5px 0 #FE6601;
            box-shadow: 5px 5px 0 #FE6601;
  }
}
.event-20th-card.is-coming-soon {
  display: block;
}
.event-20th-card.is-coming-soon > p {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  padding: 3rem 0;
}
.event-20th-card .icon {
  position: absolute;
  top: -3.3rem;
  left: -1.6rem;
  width: 12.4rem;
}
@media all and (max-width: 767px) {
  .event-20th-card .icon {
    top: -6rem;
    left: -1.3rem;
    width: 10rem;
  }
}
.event-20th-card .icon p {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 3.3rem;
  color: #fff;
  font-weight: bold;
  position: absolute;
  top: 4.9rem;
  left: 5.5rem;
}
@media all and (max-width: 767px) {
  .event-20th-card .icon p {
    font-size: 2.8rem;
    top: 3.9rem;
    left: 4.4rem;
  }
}
.event-20th-card h3 {
  font-size: 2rem;
  text-align: center;
  grid-column: 1/3;
  line-height: 1.5;
}
@media all and (max-width: 767px) {
  .event-20th-card h3 {
    font-size: 1.8rem;
  }
}
.event-20th-card .image-frame {
  width: 100%;
}
@media all and (max-width: 767px) {
  .event-20th-card .image-frame {
    grid-column: 1/3;
  }
}
.event-20th-card .image-frame img {
  width: 100%;
  /* height: 20.7rem; */
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}
/* @media all and (max-width: 767px) {
  .event-20th-card .image-frame img {
    height: 16rem;
  }
} */
.event-20th-card .read-text {
  font-size: 1.6rem;
  line-height: 2;
}
@media all and (max-width: 767px) {
  .event-20th-card .read-text {
    font-size: 1.4rem;
  }
}
.event-20th-card .btn {
  grid-column: 1/3;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}
.event-20th-card.is-finish {
  -webkit-box-shadow: 8px 8px 8px rgba(0, 0, 0, 0.3);
          box-shadow: 8px 8px 8px rgba(0, 0, 0, 0.3);
  border: none;
}
@media all and (max-width: 767px) {
  .event-20th-card.is-finish {
    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
            box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  }
}
.event-20th-card.is-finish .icon, .event-20th-card.is-finish .btn {
  display: none;
}
.event-20th-card.is-finish::before {
  content: "";
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
}
.event-20th-card.is-finish::after {
  content: "イベントは終了しました。";
  color: #fff;
  font-size: 3rem;
  letter-spacing: 0.15em;
  white-space: nowrap;
  font-weight: bold;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media all and (max-width: 767px) {
  .event-20th-card.is-finish::after {
    font-size: 2rem;
  }
}
