@import url("https://fonts.googleapis.com/css2?family=Murecho:wght@100;200;300;400;500;600;700;800;900&display=swap");
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Murecho', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  background: url(../images/common/svg/bg.svg) #000 repeat;
  background-size: 40px 40px;
  list-style: none;
  box-sizing: border-box;
  cursor: none;
}

#cursor {
  position: fixed;
  background: url(../images/common/cursor.png) center no-repeat;
  width: 30px;
  height: 30px;
  z-index: 100;
  pointer-events: none;
  opacity: 0;
}

#cursor.active {
  background: url(../images/common/cursor_koge.png) center no-repeat;
}

.inner {
  width: 1200px;
  margin: auto;
}

h1,
h2 {
  line-height: 1;
}

a {
  transition: all 0.5s 0s ease;
  cursor: none;
}

a:hover {
  opacity: .7;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*   index   */
.fv {
  width: 100%;
  position: relative;
  left: 0;
}

.fv::before {
  content: "";
  position: absolute;
  top: -15px;
  width: 100%;
  height: 600px;
  background: #000;
  z-index: -2;
}

.fv::after {
  content: "";
  position: absolute;
  top: -15px;
  width: 100%;
  height: 600px;
  background: #fff100;
  transform: skewY(-5deg);
  z-index: -1;
}

.fv .inner {
  height: 600px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.fv .inner h1 {
  display: block;
  width: 450px;
  height: 450px;
  background: url(../images/common/svg/natsupro.svg) center center no-repeat;
  animation: fadein 3s ease 0s forwards;
}

.fv .inner .about {
  width: 750px;
  font-size: 22px;
  font-weight: 700;
  line-height: 2.25;
  text-align: center;
  position: relative;
  animation: fadein 5s ease 0s forwards;
}

.fv .inner .about::before {
  content: "ABOUT";
  position: absolute;
  bottom: 120px;
  right: 50px;
  z-index: -1;
  font-size: 100px;
  font-weight: 900;
  color: #fff;
}

.fv .inner .about br.br-sp {
  display: none;
}

.fv .scrolldown {
  display: block;
  position: absolute;
  left: 50%;
  bottom: -100px;
  height: 180px;
}

.fv .scrolldown span {
  position: absolute;
  right: -20px;
  left: -20px;
  top: -15px;
  color: #000;
  font-size: 11px;
  letter-spacing: 0.05em;
}

.fv .scrolldown::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 0;
  background: #000;
  animation: scrollmove 2s ease-in-out infinite;
  opacity: 0;
}

@keyframes scrollmove {
  0% {
    height: 0;
    top: 0;
    opacity: 0;
  }
  30% {
    height: 50px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: 50px;
    opacity: 0;
  }
}

.btn_event {
  position: fixed;
  left: -3.55em;
  bottom: 45vh;
  transform: rotate(90deg);
}

.btn_event a {
  width: 100%;
  height: 100%;
  padding: 0.25em 1em;
  font-size: 1.75em;
  font-weight: 700;
  letter-spacing: 5px;
  background: #000;
  color: #fff100;
  text-decoration: none;
  border-radius: 10px 10px 0 0;
  border: 2px solid #000;
}

.btn_event a:hover {
  background: #fff;
  color: #000;
  border: 2px solid #000;
}

article {
  margin: 120px auto 0;
}

.info,
.member,
.event,
.contents-box {
  margin-bottom: 120px;
}

h1.tit {
  font-size: 42px;
  font-weight: 900;
  letter-spacing: 10px;
  text-align: center;
  margin-bottom: 50px;
}

h2.subtit {
  font-size: 32px;
  font-weight: 900;
  letter-spacing: 5px;
  text-align: center;
  margin-bottom: 30px;
}

.info .info_img {
  max-width: 700px;
  margin: auto;
  text-align: center;
  margin-bottom: 2rem;
}

.info .info_img iframe {
  width: 100%;
  height: 100%;
}

.info .info_img a {
  width: 100%;
  height: 100%;
}

.info .info_img a img {
  width: 100%;
  height: 100%;
}

.info ul {
  width: 100%;
  margin: auto;
  padding: 2em 5em;
  background: white;
  border-radius: 0 0 30px 0;
}

.info ul li {
  list-style: none;
  letter-spacing: 1px;
  margin-bottom: 1em;
}

.info ul li:last-of-type {
  margin-bottom: 0;
}

.info ul li.birth strong {
  color: #000;
  background: #fff100;
}

.info ul li strong {
  width: 140px;
  text-align: center;
  background: #000;
  line-height: 26px;
  height: 26px;
  border-radius: 13px;
  color: #fff;
  margin-right: 1em;
  padding: 0 1em;
  letter-spacing: 1px;
  display: inline-block;
}

.info ul li strong.birth {
  color: #fff100;
}

.info ul li a {
  color: #000;
  text-decoration: none;
  padding-bottom: 2px;
  margin-right: 3px;
  border-bottom: 2px dotted #000;
}

.member p {
  text-align: center;
  margin-bottom: 2em;
  letter-spacing: 1px;
}

.member p span {
  font-size: 0.8em;
}

.member ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.member ul li {
  list-style: none;
  width: 580px;
  height: 250px;
  border: 3px solid #fff100;
  border-radius: 0 0 30px 0;
  box-shadow: 5px 5px 0 #fff100;
  background: #fff;
  padding: 20px 30px;
  margin-bottom: 40px;
  /*
      &.natsutaro{
        background: $base-color url(../images/member/natsutaro/thumb.png) no-repeat;
        background-position: right -10px center;
        background-size: auto 110%;
      }
      &.madori{
        background: $base-color url(../images/member/madori/0401.png) no-repeat;
        background-position: top -55px right -50px;
        background-size: auto 160%;
      }
      &.taiko{
        background: $base-color url(../images/member/taiko/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.aopi{
        background: $base-color url(../images/member/aopi/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.hal{
        background: $base-color url(../images/member/hal/0401.png) no-repeat;
        background-position: top -60px right -50px;
        background-size: auto 160%;
      }
      &.wakaruya{
        background: $base-color url(../images/member/wakaruya/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.shoma{
        background: $base-color url(../images/member/shoma/0401.png) no-repeat;
        background-position: right -25px center;
        background-size: auto 140%;
      }
      &.ato{
        background: $base-color url(../images/member/ato/0401.png) no-repeat;
        background-position: top -90px right -40px;
        background-size: auto 150%;
      }
      &.rukia{
        background: $base-color url(../images/member/rukia/0401.png) no-repeat;
        background-position: top -50px right -50px;
        background-size: auto 160%;
      }
      &.edoly{
        background: $base-color url(../images/member/edoly/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.meko{
        background: $base-color url(../images/member/meko/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.tsuyu{
        background: $base-color url(../images/member/tsuyu/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.pansy{
        background: $base-color url(../images/member/pansy/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.tsuno{
        background: $base-color url(../images/member/tsuno/0401.png) no-repeat;
        background-position: top -60px right -40px;
        background-size: auto 160%;
      }
      &.mika{
        background: $base-color url(../images/member/mika/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.haori{
        background: $base-color url(../images/member/haori/0401.png) no-repeat;
        background-position: right -40px center;
        background-size: auto 160%;
      }
      &.inari{
        background: $base-color url(../images/member/inari/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }
      &.pome{
        background: $base-color url(../images/member/pome/0401.png) no-repeat;
        background-position: right -50px center;
        background-size: auto 160%;
      }*/
}

.member ul li h1 {
  font-size: 40px;
  margin-bottom: 0.5rem;
}

.member ul li h2 {
  font-size: 20px;
  opacity: 0.5;
  margin-bottom: 1.5rem;
}

.member ul li .sns {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 1rem;
}

.member ul li .sns a {
  width: 50px;
  height: 50px;
  margin-right: 8px;
}

.member ul li .sns .twi {
  background: url(../images/common/svg/mark_twitter.svg) center center no-repeat;
}

.member ul li .sns .you {
  background: url(../images/common/svg/mark_youtube.svg) center center no-repeat;
}

.member ul li .sns .twc {
  background: url(../images/common/svg/mark_twitch.svg) center center no-repeat;
}

.member ul li .sns .twcs {
  background: url(../images/common/svg/mark_twitcasting.svg) center center no-repeat;
}

.member ul li .button {
  width: 14rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff100;
  border-radius: 18px;
  line-height: 36px;
  font-size: 16px;
  position: relative;
}

.member ul li .button::after {
  position: absolute;
  content: "";
  background: url(../images/common/svg/arrow.svg) no-repeat;
  width: 10px;
  height: 16px;
  right: 15px;
}

.member ul li .button a {
  width: 100%;
  height: 100%;
  text-align: center;
  color: #000;
  text-decoration: none;
}

.member ul li .button:hover {
  background: #000;
}

.member ul li .button:hover::after {
  background: url(../images/common/svg/arrow-white.svg) no-repeat;
}

.member ul li .button:hover a {
  color: #fff;
}

.member ul li.natsutaro {
  background: #fff url(../images/member/natsutaro/thumb.png) no-repeat;
  background-position: right -10px center;
  background-size: auto 110%;
}

.member ul li.madori {
  background: #fff url(../images/member/madori/thumb.png) no-repeat;
  background-position: right 30px top -60px;
  background-size: auto 160%;
}

.member ul li.taiko {
  background: #fff url(../images/member/taiko/thumb.png) no-repeat;
  background-position: right -150px top -50px;
  background-size: auto 190%;
}

.member ul li.aopi {
  background: #fff url(../images/member/aopi/thumb.png) no-repeat;
  background-position: right -170px top -50px;
  background-size: auto 190%;
}

.member ul li.hal {
  background: #fff url(../images/member/hal/thumb.png) no-repeat;
  background-position: right 30px top -30px;
  background-size: auto 150%;
}

.member ul li.wakaruya {
  background: #fff url(../images/member/wakaruya/thumb.png) no-repeat;
  background-position: right -50px top -30px;
  background-size: auto 140%;
}

.member ul li.shoma {
  background: #fff url(../images/member/shoma/thumb.png) no-repeat;
  background-position: right 50px center;
  background-size: auto 150%;
}

.member ul li.ato {
  background: #fff url(../images/member/ato/thumb.png) no-repeat;
  background-position: right -30px top -30px;
  background-size: auto 160%;
}

.member ul li.rukia {
  background: #fff url(../images/member/rukia/thumb.png) no-repeat;
  background-position: right -10px top -5px;
  background-size: auto 150%;
}

.member ul li.edoly {
  background: #fff url(../images/member/edoly/thumb.png) no-repeat;
  background-position: right -90px top -50px;
  background-size: auto 160%;
}

.member ul li.meko {
  background: #fff url(../images/member/meko/thumb.png) no-repeat;
  background-position: right -65px top -30px;
  background-size: auto 140%;
}

.member ul li.nya {
  background: #fff url(../images/member/nya/thumb.png) no-repeat;
  background-position: right -90px top -20px;
  background-size: auto 145%;
}

.member ul li.tsuyu {
  background: #fff url(../images/member/tsuyu/thumb.png) no-repeat;
  background-position: right -70px top -30px;
  background-size: auto 135%;
}

.member ul li.pansy {
  background: #fff url(../images/member/pansy/thumb.png) no-repeat;
  background-position: right 30px top -25px;
  background-size: auto 135%;
}

.member ul li.tsuno {
  background: #fff url(../images/member/tsuno/thumb.png) no-repeat;
  background-position: right -50px top -40px;
  background-size: auto 145%;
}

.member ul li.mika {
  background: #fff url(../images/member/mika/thumb.png) no-repeat;
  background-position: right -115px top -50px;
  background-size: auto 160%;
}

.member ul li.haori {
  background: #fff url(../images/member/haori/thumb.png) no-repeat;
  background-position: right -10px top -25px;
  background-size: auto 145%;
}

.member ul li.inari {
  background: #fff url(../images/member/inari/thumb.png) no-repeat;
  background-position: right 60px center;
  background-size: auto 80%;
}

.member ul li.pome {
  background: #fff url(../images/member/pome/thumb.png) no-repeat;
  background-position: right -20px top -30px;
  background-size: auto 160%;
}

.event ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.event ul li {
  width: 180px;
  height: 180px;
  list-style: none;
  margin: 0 15px auto;
}

.event ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #000;
  border-radius: 90px;
  overflow: hidden;
  text-align: center;
  position: relative;
  transition: all .5s;
}

.event ul li a:hover {
  transform: scale(1.1);
  transition: all .5s;
  opacity: 1;
  background: #fff100;
}

.event ul li a:hover img {
  opacity: 1;
  width: 75%;
}

.event ul li a:hover p {
  opacity: 0;
}

.event ul li a p {
  position: absolute;
  display: flex;
  align-items: center;
  color: #fff;
  vertical-align: middle;
  opacity: 1;
}

.event ul li a img {
  width: 100%;
  opacity: 0;
}

.contents {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.contents .contents-box {
  width: 48%;
}

.contents .contents-box .contents-inbox {
  height: auto;
  border-radius: 0 0 30px 0;
  padding: 20px;
  background: #fff;
  text-align: center;
}

.contents .contents-box:last-of-type .contents-inbox {
  padding: 15px 0;
}

#page-top {
  position: fixed;
  bottom: 50px;
  right: 50px;
  width: 120px;
  height: 120px;
  z-index: 50;
  opacity: 0;
}

#page-top a {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/common/svg/pagetop.svg) no-repeat;
  transition: all 0.3s;
}

#page-top a:hover {
  transition: all 0.5s 0s ease-in-out;
  opacity: 0.8;
}

#page-top.UpMove {
  animation: UpAnime 0.5s forwards;
}

#page-top.DownMove {
  animation: DownAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 0;
    transform: translateY(200px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes DownAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 1;
    transform: translateY(200px);
  }
}

footer {
  width: 100%;
  background: #000;
}

footer .inner {
  text-align: center;
  padding: 50px 0 1em;
}

footer .inner img {
  height: 60px;
}

footer .inner p {
  margin-top: 50px;
  text-align: center;
  font-size: 14px;
  color: #fff;
  letter-spacing: 1px;
}

/*   member_page   */
#member_page .header,
#event .header {
  width: 100%;
  position: relative;
  z-index: 5;
}

#member_page .header::before,
#event .header::before {
  content: "";
  position: absolute;
  top: -15px;
  width: 100%;
  height: 210px;
  background: #000;
  z-index: 0;
}

#member_page .header::after,
#event .header::after {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 200px;
  background: #fff100;
  transform: skewY(-5deg);
  z-index: 0;
}

#member_page .header > .inner,
#event .header > .inner {
  position: relative;
  text-align: center;
  height: 200px;
  transform: rotate(-5deg);
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1;
}

#member_page .header > .inner .name,
#event .header > .inner .name {
  width: 50em;
  text-align: left;
}

#member_page .header > .inner .name h1,
#event .header > .inner .name h1 {
  font-size: 64px;
}

#member_page .header > .inner .name h2,
#event .header > .inner .name h2 {
  width: 100%;
  font-size: 28px;
  letter-spacing: 1px;
  margin-top: 0.25em;
  opacity: 0.5;
  display: inline-block;
}

#member_page .header > .inner .logo,
#event .header > .inner .logo {
  position: absolute;
  top: -80px;
  right: 0;
  margin-top: 150px;
  width: 200px;
  height: 200px;
  border-radius: 100px;
  border: 7px #fff solid;
  box-shadow: 0 0 0 15px #000;
  background: #fff100;
  transform: rotate(-5deg);
}

#member_page .header > .inner .logo a,
#event .header > .inner .logo a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#member_page .header > .inner .logo a img,
#event .header > .inner .logo a img {
  width: 65%;
  transform: rotate(5deg);
}

#member_page .header > .inner .korokoro,
#event .header > .inner .korokoro {
  animation: poyopoyo 1s ease 0s infinite alternate;
}

@keyframes poyopoyo {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}

#member_page article {
  margin: -45px auto 80px;
}

#member_page article .inner {
  width: 1200px;
  border: 3px solid #fff100;
  border-radius: 0 0 40px 0;
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  padding: 70px;
}

#member_page article .inner > h1 {
  width: 100%;
  text-align: center;
  margin-top: 1em;
  margin-bottom: 0.25em;
}

#member_page article .inner > h2 {
  width: 100%;
  font-size: 20px;
  letter-spacing: 1px;
  text-align: center;
  opacity: 0.5;
  display: inline-block;
}

#member_page article .inner .character {
  position: relative;
  width: 100%;
  height: 770px;
  margin-bottom: 40px;
}

#member_page article .inner .profile {
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  flex-wrap: wrap;
}

#member_page article .inner .profile .profile-box {
  width: 50%;
}

#member_page article .inner .profile .profile-box:first-of-type {
  width: 100%;
  margin-bottom: 80px;
}

#member_page article .inner .profile .profile-box:first-of-type p {
  width: 80%;
  margin: auto;
  text-align: center;
}

#member_page article .inner .profile .profile-box:first-of-type p span {
  font-size: 0.8em;
  line-height: 1.3;
  display: block;
  padding-top: 0.5em;
}

#member_page article .inner .profile .profile-box:last-of-type {
  width: 40%;
}

#member_page article .inner .profile .profile-box .chara-logo {
  width: 50%;
  margin: 0 auto 20px;
}

#member_page article .inner .profile .profile-box .chara-logo img {
  width: 100%;
  pointer-events: none;
}

#member_page article .inner .profile .profile-box h1 {
  font-size: 40px;
  font-weight: 900;
  margin-bottom: .5em;
  letter-spacing: 5px;
}

#member_page article .inner .profile .profile-box dl {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  font-size: 18px;
}

#member_page article .inner .profile .profile-box dl dt {
  width: 30%;
  display: inline-block;
  font-size: 16px;
  text-align: center;
  background: #fff100;
  line-height: 30px;
  letter-spacing: 1px;
  border-radius: 15px;
  margin-bottom: 0.75em;
}

#member_page article .inner .profile .profile-box dl dd {
  width: 64%;
  display: inline-block;
  margin: 0 3% 0.75em 3%;
  line-height: 25px;
  letter-spacing: 1px;
}

#member_page article .inner .profile .profile-box .sns-box ul {
  margin-bottom: 2em;
}

#member_page article .inner .profile .profile-box .sns-box ul li {
  width: 100%;
  height: 2.5em;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 1.25em;
  margin-bottom: 0.5em;
}

#member_page article .inner .profile .profile-box .sns-box ul li::after {
  position: absolute;
  content: "";
  background: url(../images/common/svg/arrow-white.svg) no-repeat;
  width: 10px;
  height: 16px;
  right: 15px;
}

#member_page article .inner .profile .profile-box .sns-box ul li.btn_you::before {
  background: url(../images/common/svg/youtube.svg) no-repeat center;
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  left: 20px;
  z-index: 2;
}

#member_page article .inner .profile .profile-box .sns-box ul li.btn_twi::before {
  background: url(../images/common/svg/twitter.svg) no-repeat center;
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  left: 20px;
  z-index: 2;
}

#member_page article .inner .profile .profile-box .sns-box ul li.btn_twc::before {
  background: url(../images/common/svg/twitch.svg) no-repeat center;
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  left: 20px;
  z-index: 2;
}

#member_page article .inner .profile .profile-box .sns-box ul li.btn_twcs::before {
  background: url(../images/common/svg/twitcasting.svg) no-repeat center;
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  left: 20px;
  z-index: 2;
}

#member_page article .inner .profile .profile-box .sns-box ul li.btn_msh::before {
  background: url(../images/common/svg/marshmallow.svg) no-repeat center;
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  left: 20px;
  z-index: 2;
}

#member_page article .inner .profile .profile-box .sns-box ul li a {
  width: 100%;
  height: 100%;
  text-decoration: none;
  position: relative;
  display: flex;
  color: #fff;
  overflow: hidden;
  background: linear-gradient(to right, #fff100, #fff100 50%, #000 50%);
  background-size: 200% 100%;
  background-position: 100%;
  transition: background-position 275ms ease;
  justify-content: center;
  align-items: center;
  border-radius: 1.25em;
}

#member_page article .inner .profile .profile-box .sns-box ul li a:hover {
  background-position: 0 100%;
}

#member_page article .inner .profile .profile-box .sns-box ul li a:hover::after {
  opacity: 0.5;
}

#member_page article .inner .profile .profile-box .sns-box .timeline {
  width: 100%;
  border: 1px solid #fff100;
  padding: .5em 1em 0;
  border-radius: 0 0 30px 0;
}

#event article {
  margin: 100px auto 80px;
  width: 80%;
}

#event article .article_top {
  max-width: 80%;
  margin: 0 auto 0;
  text-align: center;
}

#event article .article_top img {
  width: 100%;
}

#event article .article_top p {
  margin-top: 1em;
}

#event article div.time_table {
  margin: auto;
  text-align: center;
}

#event article div.time_table img {
  max-width: 100%;
}

#event article div.time_table h2.subtit {
  margin-top: 3em;
}

#event article div.time_table ul {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1em;
}

#event article div.time_table ul li {
  list-style: none;
}

#event article div.time_table ul li p {
  font-size: 24px;
  font-weight: bold;
  text-align: left;
  line-height: 1.25;
  margin-bottom: .5em;
}

#event article div.time_table ul li div {
  max-width: 100%;
  height: 150px;
}

#event article div.time_table ul li div iframe {
  max-width: 100%;
  max-height: 100%;
}

#event article > h1 {
  width: 100%;
  text-align: center;
  margin-top: 3em;
  margin-bottom: 1em;
}

#event article p {
  text-align: center;
  margin-bottom: 2em;
}

#event article .section_img {
  width: 100%;
  margin-bottom: 2em;
}

#event article .section_img img {
  max-width: 100%;
}

#event ul.goods {
  display: flex;
  justify-content: flex-start;
  align-items: top;
  flex-wrap: wrap;
}

#event ul.goods li {
  width: 18%;
  list-style: none;
  margin: 0 1%;
  margin-bottom: 2em;
}

#event ul.goods li:nth-of-type(-n+4) {
  width: 23%;
}

#event ul.goods li a {
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #000;
}

#event ul.goods li a img {
  width: 100%;
  border-radius: 20px;
  border: 2px solid #000;
  background: #fff;
}

#event ul.goods li a img:hover {
  opacity: .7;
  transition: .5s;
}

#event ul.goods li a p {
  text-align: center;
  font-size: .8em;
}

#event ul.goods2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1em;
}

#event ul.goods2 li {
  list-style: none;
}

#event ul.goods2 li a {
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #000;
}

#event ul.goods2 li a img {
  width: 100%;
  border-radius: 20px;
  border: 2px solid #000;
  background: #fff;
}

#event ul.goods2 li a img:hover {
  opacity: .7;
  transition: .5s;
}

#event ul.goods2 li a p {
  text-align: center;
  font-size: .8em;
}

#event ul.archives {
  display: flex;
  justify-content: flex-start;
  align-items: top;
  flex-wrap: wrap;
}

#event ul.archives li {
  list-style: none;
  width: 23%;
  height: 20vh;
  margin: 0 1%;
  margin-bottom: 5em;
}

#event ul.archives li.pickup {
  width: calc(24% * 4 + 2%);
  margin: 0 auto 5em;
  height: 60vh;
}

#event ul.archives li iframe {
  width: 100%;
  height: 100%;
}

#event ul.archives li p {
  text-align: left;
  line-height: 1.25;
  margin-bottom: 2em;
}

#event ul.souvenir {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  flex-wrap: wrap;
}

#event ul.souvenir li {
  height: 150px;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#event ul.souvenir li a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#event ul.souvenir li a img {
  width: auto;
  height: 100%;
}

#event ul.souvenir li.size {
  width: 100%;
  height: 2em;
  border-radius: 1em;
  background: #000;
  font-size: 18px;
  height: 1.25;
  margin-bottom: 1em;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

#event ul.stamp_guide {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

#event ul.stamp_guide li {
  list-style: none;
  width: 48%;
}

#event ul.stamp_guide li p.stamp_point {
  width: 100%;
  height: 2em;
  border-radius: 1em;
  background: #000;
  font-size: 18px;
  height: 1.25;
  margin-bottom: 1em;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

#event ul.stamp_guide li .originalstamp {
  margin-bottom: 0.5em;
  display: flex;
  justify-content: center;
  align-items: center;
}

#event ul.stamp_guide li .originalstamp a img {
  max-width: 100px;
  max-height: 100px;
  margin-right: 1em;
}

#event ul.stamp_guide li ul.waostamp {
  width: 90%;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
}

#event ul.stamp_guide li ul.waostamp li {
  width: 21%;
  margin-bottom: 1em;
  text-align: center;
}

#event ul.stamp_guide li ul.waostamp li img {
  max-width: 90px;
  max-height: 90px;
}

#event ul.stamp_guide li ul.waostamp li p {
  font-size: 13px;
  text-align: center;
}

#event ul.stamp_guide a:hover {
  opacity: 0.5;
}

#event .event_box {
  display: flex;
  justify-content: space-between;
  align-items: top;
  flex-wrap: wrap;
}

#event .event_box .event_inbox {
  width: 49%;
  margin: auto;
  display: flex;
  justify-content: center;
}
