/* Scss Document */
@keyframes amico {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes amiami {
  100% {
    background: url(../img/bg-amiami-top.png) repeat-x -1029px 0;
  }
}
@keyframes amiami-sp {
  100% {
    background: url(../img/bg-amiami-top.png) repeat-x -110vw 0/110vw auto;
  }
}
@keyframes amiami-bottom {
  100% {
    background: url(../img/bg-amiami-bottom.png) repeat-x 1029px 0;
  }
}
@keyframes amiami-bottom-sp {
  100% {
    background: url(../img/bg-amiami-bottom.png) repeat-x 110vw 0/110vw auto;
  }
}
@keyframes benefit {
  100% {
    background: url(../img/bg-benefit-top.png) repeat-x -1749px 0;
  }
}
@keyframes benefit-sp {
  100% {
    background: url(../img/bg-benefit-top.png) repeat-x -186.66vw 0/186.66vw auto;
  }
}
@keyframes benefit-bottom {
  100% {
    background: url(../img/bg-benefit-bottom.png) repeat-x 1749px 0;
  }
}
@keyframes benefit-bottom-sp {
  100% {
    background: url(../img/bg-benefit-bottom.png) repeat-x 186.66vw 0/186.66vw auto;
  }
}
@keyframes giveaway {
  100% {
    background: url(../img/bg-giveaway-top.png) repeat-x -1474px 0;
  }
}
@keyframes giveaway-sp {
  100% {
    background: url(../img/bg-giveaway-top.png) repeat-x -156.2vw 0/156.2vw auto;
  }
}
@keyframes giveaway-bottom {
  100% {
    background: url(../img/bg-giveaway-bottom.png) repeat-x 1474px 0;
  }
}
@keyframes giveaway-bottom-sp {
  100% {
    background: url(../img/bg-giveaway-bottom.png) repeat-x 156.2vw 0/156.2vw auto;
  }
}
@keyframes sale {
  100% {
    background: url(../img/bg-sale-top.png) repeat-x -1339px 0;
  }
}
@keyframes sale-sp {
  100% {
    background: url(../img/bg-sale-top.png) repeat-x -142.4vw 0/142.4vw auto;
  }
}
@keyframes sale-bottom {
  100% {
    background: url(../img/bg-sale-bottom.png) repeat-x 1339px 0;
  }
}
@keyframes sale-bottom-sp {
  100% {
    background: url(../img/bg-sale-bottom.png) repeat-x 142.4vw 0/142.4vw auto;
  }
}
@keyframes display {
  100% {
    background: url(../img/bg-display-top.png) repeat-x -1567px 0;
  }
}
@keyframes display-sp {
  100% {
    background: url(../img/bg-display-top.png) repeat-x -209vw 0/209vw auto;
  }
}
@keyframes display-bottom {
  100% {
    background: url(../img/bg-display-bottom.png) repeat-x 1567px 0;
  }
}
@keyframes display-bottom-sp {
  100% {
    background: url(../img/bg-display-bottom.png) repeat-x 209vw 0/209vw auto;
  }
}
@keyframes manufacturer {
  100% {
    background: url(../img/bg-manufacturer-top.png) repeat-x -2987px 0;
  }
}
@keyframes manufacturer-sp {
  100% {
    background: url(../img/bg-manufacturer-top.png) repeat-x -398.3vw 0/398.3vw auto;
  }
}
@keyframes manufacturer-bottom {
  100% {
    background: url(../img/bg-manufacturer-bottom.png) repeat-x 2987px 0;
  }
}
@keyframes manufacturer-bottom-sp {
  100% {
    background: url(../img/bg-manufacturer-bottom.png) repeat-x 398.3vw 0/398.3vw auto;
  }
}
@keyframes autograph {
  100% {
    background: url(../img/bg-autograph-top.png) repeat-x -3656px 0;
  }
}
@keyframes autograph-sp {
  100% {
    background: url(../img/bg-autograph-top.png) repeat-x -387.5vw 0/387.5vw auto;
  }
}
@keyframes autograph-bottom {
  100% {
    background: url(../img/bg-autograph-bottom.png) repeat-x 3656px 0;
  }
}
@keyframes autograph-bottom-sp {
  100% {
    background: url(../img/bg-autograph-bottom.png) repeat-x 387.5vw 0/387.5vw auto;
  }
}
@keyframes shop {
  100% {
    background: url(../img/bg-akihabara-top.png) repeat-x -1605px 0;
  }
}
@keyframes shop-sp {
  100% {
    background: url(../img/bg-akihabara-top.png) repeat-x -214vw 0/214vw auto;
  }
}
@keyframes shop-bottom {
  100% {
    background: url(../img/bg-akihabara-bottom.png) repeat-x 1605px 0;
  }
}
@keyframes shop-bottom-sp {
  100% {
    background: url(../img/bg-akihabara-bottom.png) repeat-x 214vw 0/214vw auto;
  }
}
@keyframes disclaimer {
  100% {
    background: url(../img/bg-disclaimer-top.png) repeat-x -869px 0;
  }
}
@keyframes disclaimer-sp {
  100% {
    background: url(../img/bg-disclaimer-top.png) repeat-x -115.9vw 0/115.9vw auto;
  }
}
@keyframes disclaimer-bottom {
  100% {
    background: url(../img/bg-disclaimer-bottom.png) repeat-x 869px 0;
  }
}
@keyframes disclaimer-bottom-sp {
  100% {
    background: url(../img/bg-disclaimer-bottom.png) repeat-x 115.9vw 0/115.9vw auto;
  }
}
@keyframes outline {
  100% {
    background: url(../img/bg-outline-top.png) repeat-x -1056px 0;
  }
}
@keyframes outline-sp {
  100% {
    background: url(../img/bg-outline-top.png) repeat-x -141vw 0/141vw auto;
  }
}
@keyframes outline-bottom {
  100% {
    background: url(../img/bg-outline-bottom.png) repeat-x 1056px 0;
  }
}
@keyframes outline-bottom-sp {
  100% {
    background: url(../img/bg-outline-bottom.png) repeat-x 141vw 0/141vw auto;
  }
}
@keyframes venue {
  100% {
    background: url(../img/bg-map-top.png) repeat-x -903px 0;
  }
}
@keyframes venue-sp {
  100% {
    background: url(../img/bg-map-top.png) repeat-x -120.5vw 0/120.5vw auto;
  }
}
@keyframes venue-bottom {
  100% {
    background: url(../img/bg-map-bottom.png) repeat-x 903px 0;
  }
}
@keyframes venue-bottom-sp {
  100% {
    background: url(../img/bg-map-bottom.png) repeat-x 120.5vw 0/120.5vw auto;
  }
}
.keyvisual {
  width: 100%;
  background: url(../img/bg-kv.jpg) center top -50px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1110px) {
  .keyvisual {
    background-position: left 51% top -8%;
    background-size: auto 73%;
  }
}
.keyvisual-title {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 260px;
  z-index: 3;
  text-align: center;
}
@media screen and (max-width: 1110px) {
  .keyvisual-title {
    left: -3vw;
    top: 41vw;
    width: 106%;
  }
}
@media screen and (max-width: 1110px) {
  .keyvisual-title img {
    width: 100%;
    height: auto;
  }
}
.keyvisual-image {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 15px;
  max-width: inherit;
  animation: amico 6s linear infinite normal;
  z-index: 2;
}
@media screen and (max-width: 1110px) {
  .keyvisual-image {
    top: 3vw;
    width: 82vw !important;
    height: auto;
  }
}
.keyvisual .copy {
  position: absolute;
  top: 640px;
  right: calc(50% + 100px);
  width: 130px;
}
@media screen and (max-width: 1110px) {
  .keyvisual .copy {
    width: 22vw;
    max-width: 180px;
    top: 87vw;
    right: calc(50% + 17vw);
  }
}
@media screen and (max-width: 767px) {
  .keyvisual .copy {
    top: 84vw;
    right: calc(50% + 15vw);
  }
}
@media screen and (max-width: 1110px) {
  .keyvisual .link {
    padding: 10vw 0;
    margin: 91vw 0 0;
  }
}
.keyvisual .link:before {
  content: "";
  width: 100%;
  z-index: 0;
  position: absolute;
  top: 707px;
  height: 126px;
  background: url("../img/bg-amiami-top.png") repeat-x 0 0;
  animation: amiami 20s linear infinite normal;
}
@media screen and (max-width: 1110px) {
  .keyvisual .link:before {
    top: 95vw;
    height: 13.47vw;
    background-size: 110vw auto;
    animation: amiami-sp 20s linear infinite normal;
  }
}
.keyvisual .link:after {
  content: "";
  width: 100%;
  z-index: 0;
  position: absolute;
  bottom: 40px;
  height: 126px;
  background: url("../img/bg-amiami-bottom.png") repeat-x 0 0;
  animation: amiami-bottom 20s linear infinite normal;
}
@media screen and (max-width: 1110px) {
  .keyvisual .link:after {
    bottom: 5vw;
    height: 13.47vw;
    background-size: 110vw auto;
    animation: amiami-bottom-sp 20s linear infinite normal;
  }
}

.link {
  padding: 120px 0;
  background: url("../img/bg-white.jpg");
  margin: 670px 0 0;
}
@media screen and (max-width: 1110px) {
  .link {
    padding: 12.5vw 0;
    margin: 90vw 0 0;
  }
}
.link.mt0 {
  margin: 0;
  background: none;
  padding: 0 0 60px;
}
@media screen and (max-width: 1110px) {
  .link.mt0 {
    padding: 0;
  }
}
.link-onecolumn {
  width: 950px;
  margin: 0 auto 60px;
}
@media screen and (max-width: 1110px) {
  .link-onecolumn {
    width: 100%;
    margin: 0 auto 7.5vw;
  }
}
.link-twocolumn {
  margin: 0 auto;
  width: 950px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1110px) {
  .link-twocolumn {
    margin: 0 5%;
    width: 90%;
  }
}
.link-amiami, .link-ejas {
  border: solid 2px #dbdbdb;
  border-radius: 150px;
  width: 950px;
  height: 150px;
  display: block;
  line-height: 110px;
  padding: 0 0 0 60px;
  background: #fff;
  position: relative;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .link-amiami, .link-ejas {
    border-radius: 12vw;
    width: 90%;
    height: 12vw;
    line-height: 12vw;
    padding: 0 0 0 5vw;
    border: solid 0.35vw #dbdbdb;
    margin: 0 0 0 5%;
  }
}
.link-amiami:hover, .link-ejas:hover {
  transform: translateX(5px);
}
@media screen and (max-width: 1110px) {
  .link-amiami:hover, .link-ejas:hover {
    transform: translateX(1vw);
  }
}
@media screen and (max-width: 1110px) {
  .link-amiami img {
    width: 70vw;
    position: relative;
    top: -3vw;
  }
}
.link-ejas {
  margin: 0 0 60px;
}
@media screen and (max-width: 1110px) {
  .link-ejas {
    margin: 0 auto 10vw;
  }
}
.link-ejas img {
  position: relative;
  top: 6px;
}
@media screen and (max-width: 1110px) {
  .link-ejas img {
    width: 75vw;
    top: -1.75vw;
  }
}
.link-tw, .link-inst, .link-official {
  width: 100%;
  max-width: 460px;
  border: solid 2px #dbdbdb;
  line-height: 84px;
  height: 84px;
  font-weight: bold;
  font-size: 1.5rem;
  border-radius: 84px;
  padding: 0 30px;
  background: #fff;
  position: relative;
  display: inline-block;
  color: #333;
  z-index: 1;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .link-tw, .link-inst, .link-official {
    max-width: calc(50% - 2.5vw);
    border: solid 0.35vw #dbdbdb;
    line-height: 8vw;
    height: 8vw;
    font-size: 2.5vw;
    border-radius: 8vw;
    padding: 0 3vw;
  }
}
.link-tw:hover, .link-inst:hover, .link-official:hover {
  transform: translateX(5px);
}
@media screen and (max-width: 1110px) {
  .link-tw:hover, .link-inst:hover, .link-official:hover {
    transform: translateX(1vw);
  }
}
.link-tw:before {
  content: "";
  background: url(../img/btn-x.png) no-repeat;
  width: 31px;
  height: 31px;
  display: inline-block;
  margin: 0 0.65em 0 0;
  position: relative;
  top: 0.125em;
}
@media screen and (max-width: 1110px) {
  .link-tw:before {
    background: url(../img/btn-x.png) no-repeat 0 0/100% auto;
    width: 3vw;
    height: 3vw;
    margin: 0 0.72em 0 0;
    top: 0.1vw;
  }
}
.link-inst:before {
  content: "";
  display: inline-block;
  position: relative;
  background: url(../img/btn-inst.png) no-repeat;
  width: 31px;
  height: 31px;
  margin: 0 0.75em 0 0;
  top: 0.25em;
}
@media screen and (max-width: 1110px) {
  .link-inst:before {
    background: url(../img/btn-inst.png) no-repeat 0 0/100% auto;
    width: 2.75vw;
    margin: 0 1.5vw 0 0;
    top: 0.25vw;
    height: 2.75vw;
  }
}
@media screen and (max-width: 1110px) {
  .link-official {
    max-width: 60vw;
    line-height: 10vw;
    height: 10vw;
  }
}
.link-text {
  font-size: 1.75rem;
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 1110px) {
  .link-text {
    font-size: 3.75vw;
  }
}

.arrow {
  position: absolute;
  right: 30px;
  top: calc(50% - 10px);
  width: 36px;
  height: 20px;
}
@media screen and (max-width: 1110px) {
  .arrow {
    right: 3vw;
    top: calc(50% - 1.5vw);
    width: 3vw;
    height: 3vw;
  }
}
.arrow:before {
  content: "";
  width: 36px;
  height: 1px;
  background: #8e8e8e;
  display: block;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 1110px) {
  .arrow:before {
    width: 3vw;
    height: 0.25vw;
  }
}
.arrow:after {
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  border-right: solid 1px #8e8e8e;
  border-bottom: solid 1px #8e8e8e;
  transform: rotate(-45deg);
  right: 1px;
  position: absolute;
  top: calc(50% - 7px);
}
@media screen and (max-width: 1110px) {
  .arrow:after {
    width: 1.5vw;
    height: 1.5vw;
    top: calc(50% - 0.5vw);
    right: 0;
    border-right: solid 0.25vw #8e8e8e;
    border-bottom: solid 0.25vw #8e8e8e;
  }
}

.content .headline-sub {
  line-height: 1.4;
  margin: 0 0 25px;
  text-align: center;
  font-weight: bold;
  font-size: 1.9rem;
}
@media screen and (max-width: 1110px) {
  .content .headline-sub {
    margin: 0 0 4.5vw;
    font-size: 4.2vw;
  }
}
.content .benefit:before {
  background: url("../img/bg-benefit-top.png") repeat-x 0 0;
  animation: benefit 20s linear infinite normal;
  height: 128px;
}
@media screen and (max-width: 1110px) {
  .content .benefit:before {
    animation: benefit-sp 20s linear infinite normal;
    height: 14vw;
    background-size: 186.66vw auto;
  }
}
.content .benefit:after {
  background: url("../img/bg-benefit-bottom.png") repeat-x 0 0;
  animation: benefit-bottom 20s linear infinite normal;
  height: 128px;
}
@media screen and (max-width: 1110px) {
  .content .benefit:after {
    animation: benefit-bottom-sp 20s linear infinite normal;
    height: 14vw;
    background-size: 186.66vw auto;
  }
}
.content .benefit .container {
  text-align: center;
}
.content .benefit-goods {
  margin-bottom: 60px;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods {
    margin-bottom: 8vw;
  }
}
.content .benefit-goods:last-child {
  margin-bottom: 0;
}
.content .benefit-goods img {
  margin: 0 0 15px;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods img {
    margin: 0 0 3vw;
  }
}
.content .benefit-goods p {
  line-height: 1.4;
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p {
    font-size: 5vw;
  }
}
.content .benefit-goods p .txt-small {
  font-size: 1.4rem;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p .txt-small {
    font-size: 3.4vw;
  }
}
.content .benefit-goods p .note {
  display: block;
  font-weight: normal;
  font-size: 1rem;
  margin: 10px 0 0;
}
@media screen and (max-width: 1110px) {
  .content .benefit-goods p .note {
    font-size: 2.7vw;
    margin: 1.5vw 0 0;
  }
}
.content .giveaway {
  font-size: 1.3rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway {
    font-size: 3.2vw;
  }
}
.content .giveaway:before {
  background: url("../img/bg-giveaway-top.png") repeat-x 0 0;
  animation: giveaway 20s linear infinite normal;
  height: 170px;
  top: 43px;
}
@media screen and (max-width: 1110px) {
  .content .giveaway:before {
    animation: giveaway-sp 20s linear infinite normal;
    height: 22.6vw;
    background-size: 156.2vw auto;
    top: 6.75vw;
  }
}
.content .giveaway:after {
  background: url("../img/bg-giveaway-bottom.png") repeat-x 0 0;
  animation: giveaway-bottom 20s linear infinite normal;
  height: 170px;
}
@media screen and (max-width: 1110px) {
  .content .giveaway:after {
    animation: giveaway-bottom-sp 20s linear infinite normal;
    height: 22.6vw;
    background-size: 156.2vw auto;
    bottom: 2vw;
  }
}
.content .giveaway-txt {
  margin-bottom: 70px;
}
@media screen and (max-width: 1110px) {
  .content .giveaway-txt {
    margin-bottom: 8vw;
  }
}
.content .giveaway-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.content .giveaway-item {
  width: 48%;
  margin-bottom: 80px;
}
@media screen and (max-width: 1110px) {
  .content .giveaway-item {
    margin-bottom: 9vw;
  }
}
@media screen and (max-width: 991px) {
  .content .giveaway-item {
    width: 100%;
  }
}
.content .giveaway-img {
  padding-top: 50px;
}
@media screen and (max-width: 991px) {
  .content .giveaway-img {
    margin-top: -6vw;
    padding-top: 0;
  }
}
.content .giveaway-img .caption {
  margin: 0.5em auto;
  text-align: center;
  font-size: 1rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway-img .caption {
    font-size: 2.7vw;
  }
}
.content .giveaway .headline-list {
  margin-bottom: 0.5em;
  font-weight: bold;
  font-size: 1.4rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway .headline-list {
    font-size: 3.4vw;
  }
}
.content .giveaway .howto {
  margin: 0 auto;
}
.content .giveaway .howto li {
  display: flex;
  line-height: 1.5;
  margin: 0 0 0.5rem;
}
.content .giveaway .howto li:last-child {
  margin: 0;
}
.content .giveaway .howto li span {
  position: relative;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  color: #ffae22;
  width: 1.8em;
}
.content .giveaway .howto li span::before {
  display: block;
  content: "";
  position: absolute;
  width: 1.2em;
  aspect-ratio: 1/1;
  top: 0.07em;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  border-radius: 50%;
  z-index: -1;
}
.content .giveaway .howto li p {
  width: calc(100% - 1.8em);
}
.content .giveaway .notice {
  width: auto;
}
.content .giveaway .notice li:before {
  background-color: #fff;
}
.content .giveaway .prize li {
  margin-bottom: 1em;
}
.content .giveaway .prize li:last-child {
  margin-bottom: 0;
}
.content .giveaway .prize-award {
  display: inline-block;
  padding: 0 0.3em;
  margin: 0 0.5em 0.4em 0;
  font-weight: bold;
  background-color: #ea3a34;
  color: #fff;
  font-size: 1.1rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway .prize-award {
    font-size: 3.1vw;
  }
}
.content .giveaway .prize-name {
  line-height: 1.2;
  margin-bottom: 12px;
  font-weight: bold;
  font-size: 1.4rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway .prize-name {
    font-size: 3.4vw;
    margin-bottom: 1.6vw;
  }
}
.content .giveaway .note {
  font-size: 1rem;
}
@media screen and (max-width: 1110px) {
  .content .giveaway .note {
    font-size: 2.7vw;
  }
}
.content .sale:before {
  background: url("../img/bg-sale-top.png") repeat-x 0 0;
  animation: sale 20s linear infinite normal;
  height: 125px;
}
@media screen and (max-width: 1110px) {
  .content .sale:before {
    animation: sale-sp 20s linear infinite normal;
    height: 13.1vw;
    background-size: 142.4vw auto;
  }
}
.content .sale:after {
  background: url("../img/bg-sale-bottom.png") repeat-x 0 0;
  animation: sale-bottom 20s linear infinite normal;
  height: 125px;
}
@media screen and (max-width: 1110px) {
  .content .sale:after {
    animation: sale-bottom-sp 20s linear infinite normal;
    height: 13.1vw;
    background-size: 142.4vw auto;
  }
}
.content .display:before {
  background: url("../img/bg-display-top.png") repeat-x 0 0;
  animation: display 20s linear infinite normal;
  height: 166px;
}
@media screen and (max-width: 1110px) {
  .content .display:before {
    animation: display-sp 20s linear infinite normal;
    height: 22.2vw;
    background-size: 209vw auto;
    top: 3.5vw;
  }
}
.content .display:after {
  background: url("../img/bg-display-bottom.png") repeat-x 0 0;
  animation: display-bottom 20s linear infinite normal;
  height: 166px;
}
@media screen and (max-width: 1110px) {
  .content .display:after {
    animation: display-bottom-sp 20s linear infinite normal;
    height: 22.2vw;
    background-size: 209vw auto;
  }
}
.content .shop:before {
  background: url("../img/bg-akihabara-top.png") repeat-x 0 0;
  animation: shop 20s linear infinite normal;
  height: 169px;
}
@media screen and (max-width: 1110px) {
  .content .shop:before {
    animation: shop-sp 20s linear infinite normal;
    height: 22.6vw;
    background-size: 214vw auto;
    top: 2.75vw;
  }
}
.content .shop:after {
  background: url("../img/bg-akihabara-bottom.png") repeat-x 0 0;
  animation: shop-bottom 20s linear infinite normal;
  height: 169px;
}
@media screen and (max-width: 1110px) {
  .content .shop:after {
    animation: shop-bottom-sp 20s linear infinite normal;
    height: 22.6vw;
    background-size: 214vw auto;
  }
}
.content .manufacturer:before {
  background: url("../img/bg-manufacturer-top.png") repeat-x 0 0;
  animation: manufacturer 30s linear infinite normal;
  height: 187px;
}
@media screen and (max-width: 1110px) {
  .content .manufacturer:before {
    animation: manufacturer-sp 30s linear infinite normal;
    height: 25vw;
    background-size: 398.3vw auto;
  }
}
.content .manufacturer:after {
  background: url("../img/bg-manufacturer-bottom.png") repeat-x 0 0;
  animation: manufacturer-bottom 30s linear infinite normal;
  height: 187px;
}
@media screen and (max-width: 1110px) {
  .content .manufacturer:after {
    animation: manufacturer-bottom-sp 30s linear infinite normal;
    height: 25vw;
    background-size: 398.3vw auto;
  }
}
.content .manufacturer-list {
  text-align: center;
}
.content .autograph {
  font-size: 1.3rem;
}
@media screen and (max-width: 1110px) {
  .content .autograph {
    font-size: 3.2vw;
  }
}
.content .autograph:before {
  background: url("../img/bg-autograph-top.png") repeat-x 0 0;
  animation: autograph 35s linear infinite normal;
  height: 170px;
}
@media screen and (max-width: 1110px) {
  .content .autograph:before {
    animation: autograph-sp 35s linear infinite normal;
    height: 22.6vw;
    background-size: 387.5vw auto;
  }
}
.content .autograph:after {
  background: url("../img/bg-autograph-bottom.png") repeat-x 0 0;
  animation: autograph-bottom 35s linear infinite normal;
  height: 170px;
}
@media screen and (max-width: 1110px) {
  .content .autograph:after {
    animation: autograph-bottom-sp 35s linear infinite normal;
    height: 22.6vw;
    background-size: 387.5vw auto;
    bottom: 2vw;
  }
}
.content .autograph .headline {
  line-height: 1.2;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline {
    font-size: 6vw;
    margin-bottom: 17vw;
  }
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline::after {
    bottom: -12vw;
  }
}
.content .autograph .headline-note {
  margin: 20px auto;
  font-size: 1.1rem;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline-note {
    margin: 2vw auto;
    font-size: 2.8vw;
  }
}
.content .autograph .headline-sub {
  margin-bottom: 40px;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline-sub {
    margin-bottom: 4.5vw;
  }
}
.content .autograph .headline-autograph {
  margin-bottom: 0.8em;
  font-weight: bold;
  font-size: 1.6rem;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline-autograph {
    font-size: 3.7vw;
  }
}
.content .autograph .headline-list {
  margin-bottom: 0.5em;
  font-weight: bold;
  font-size: 1.4rem;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline-list {
    font-size: 3.4vw;
  }
}
.content .autograph .headline-sub + .headline-list {
  margin-top: 80px;
}
@media screen and (max-width: 1110px) {
  .content .autograph .headline-sub + .headline-list {
    margin-top: 9vw;
  }
}
.content .autograph-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.content .autograph-list dt {
  width: 36%;
  margin-bottom: 100px;
  text-align: center;
}
@media screen and (max-width: 1110px) {
  .content .autograph-list dt {
    margin-bottom: 3vw;
  }
}
@media screen and (max-width: 991px) {
  .content .autograph-list dt {
    width: 100%;
  }
}
.content .autograph-list dd {
  width: 57%;
  margin-bottom: 100px;
}
@media screen and (max-width: 1110px) {
  .content .autograph-list dd {
    margin-bottom: 12vw;
  }
}
@media screen and (max-width: 991px) {
  .content .autograph-list dd {
    width: 100%;
  }
}
.content .autograph .desc li {
  text-indent: -1rem;
  padding: 0 0 0 1rem;
  margin: 0 0 0.7rem;
}
.content .autograph .desc li:last-child {
  margin: 0;
}
.content .autograph .desc li:before {
  content: "";
  width: 3px;
  height: 3px;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: -5px;
  margin: 0 0.5rem 0 0;
}
@media screen and (max-width: 767px) {
  .content .autograph .desc li:before {
    width: 2px;
    height: 2px;
  }
}
.content .autograph .desc li a {
  text-decoration: underline;
}
.content .autograph .notice {
  width: auto;
  font-size: 1.2rem;
}
@media screen and (max-width: 1110px) {
  .content .autograph .notice {
    font-size: 3vw;
  }
}
.content .autograph .notice li:before {
  background-color: #fff;
}
.content .autograph .notice.mb100 {
  margin-bottom: 100px;
}
@media screen and (max-width: 1110px) {
  .content .autograph .notice.mb100 {
    margin-bottom: 12vw;
  }
}
.content .ejas {
  padding-bottom: 0;
}
.content .ejas .link {
  padding-bottom: 0;
  position: relative;
  z-index: 1;
}
.content .disclaimer:before {
  background: url("../img/bg-disclaimer-top.png") repeat-x 0 0;
  top: 70px;
  animation: disclaimer 18s linear infinite normal;
  height: 127px;
}
@media screen and (max-width: 1110px) {
  .content .disclaimer:before {
    top: 6vw;
    animation: disclaimer-sp 18s linear infinite normal;
    height: 17vw;
    background-size: 115.9vw auto;
  }
}
.content .disclaimer:after {
  background: url("../img/bg-disclaimer-bottom.png") repeat-x 0 0;
  animation: disclaimer-bottom 18s linear infinite normal;
  height: 127px;
}
@media screen and (max-width: 1110px) {
  .content .disclaimer:after {
    animation: disclaimer-bottom-sp 18s linear infinite normal;
    height: 17vw;
    background-size: 115.9vw auto;
  }
}
.content .disclaimer .container {
  padding: 20px 0 0;
}
@media screen and (max-width: 1110px) {
  .content .disclaimer .container {
    padding: 3vw 0 0;
  }
}
.content .outline {
  padding: 0;
  display: flex;
}
@media screen and (max-width: 1110px) {
  .content .outline {
    flex-direction: column;
  }
}
.content .outline:before {
  background: url("../img/bg-outline-top.png") repeat-x 0 0;
  animation: outline 20s linear infinite normal;
  height: 127px;
}
@media screen and (max-width: 1110px) {
  .content .outline:before {
    animation: outline-sp 20s linear infinite normal;
    height: 17vw;
    background-size: 141vw auto;
    top: 3.75vw;
  }
}
.content .outline:after {
  background: url("../img/bg-outline-bottom.png") repeat-x 0 0;
  animation: outline-bottom 20s linear infinite normal;
  height: 127px;
}
@media screen and (max-width: 1110px) {
  .content .outline:after {
    animation: outline-bottom-sp 20s linear infinite normal;
    height: 17vw;
    background-size: 141vw auto;
    bottom: 125vw;
  }
}
.content .outline .headline {
  width: 100%;
}
.content .outline .container {
  padding: 120px 60px;
  margin: 0 auto;
  width: 50%;
  position: relative;
  left: -25%;
  top: 0;
  text-align: left;
}
@media screen and (max-width: 1110px) {
  .content .outline .container {
    padding: 12.5vw 5vw;
    position: static;
    width: 90%;
  }
}
.content .outline-map {
  width: 50%;
  height: 100%;
  z-index: 2;
  background: #ccc;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 1110px) {
  .content .outline-map {
    width: 100%;
    height: 120vw;
    position: relative;
    margin: 0 auto;
  }
}
.content .outline-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.content .outline-table {
  font-size: 1.25rem;
  margin: 0 auto 30px;
}
@media screen and (max-width: 1110px) {
  .content .outline-table {
    font-size: 3vw;
    margin: 0 auto 3vw;
  }
}
.content .outline-table tr {
  border-bottom: solid 1px rgba(255, 255, 255, 0.5);
}
.content .outline-table tr:last-child {
  border-bottom: none;
}
.content .outline-table th {
  padding: 0.75em 1.25em 0.75em 0.75em;
}
.content .outline-table td {
  padding: 0.75em 0.75em 0.75em 0;
}
.content .outline .link-onecolumn {
  width: 100%;
  display: flex;
  justify-content: center;
}
.content .venue:before {
  background: url("../img/bg-map-top.png") repeat-x 0 0;
  animation: venue 20s linear infinite normal;
  height: 150px;
  top: 68px;
}
@media screen and (max-width: 1110px) {
  .content .venue:before {
    animation: venue-sp 20s linear infinite normal;
    height: 20vw;
    top: 6vw;
    background-size: 120.5vw auto;
  }
}
.content .venue:after {
  background: url("../img/bg-map-bottom.png") repeat-x 0 0;
  animation: venue-bottom 20s linear infinite normal;
  height: 150px;
}
@media screen and (max-width: 1110px) {
  .content .venue:after {
    animation: venue-bottom-sp 20s linear infinite normal;
    height: 20vw;
    background-size: 120.5vw auto;
  }
}

.list-item {
  width: calc(50% - 15px);
}
@media screen and (max-width: 1110px) {
  .list-item {
    width: calc(50% - 2.5vw);
  }
}
@media screen and (max-width: 1110px) {
  .list a .list-thumb {
    margin: 0 0 3vw;
  }
}
.list a .list-thumb img {
  transition: 0.4s;
}
.list a .list-thumb img:hover {
  transform: scale(1.1);
}
@media screen and (max-width: 1110px) {
  .list-name {
    font-size: 3vw;
    margin: 0 0 3vw;
  }
}
.list:after {
  content: "";
  width: calc(50% - 15px);
}

.youtube {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
}
.youtube iframe {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.notice {
  margin: 0 auto;
  width: 950px;
  font-size: 1.25rem;
}
@media screen and (max-width: 1110px) {
  .notice {
    width: 100%;
    font-size: 3vw;
  }
}
.notice li {
  text-indent: -0.6rem;
  padding: 0 0 0 1rem;
  margin: 0 0 0.5rem;
}
.notice li:last-child {
  margin: 0;
}
.notice li:before {
  content: "";
  width: 3px;
  height: 3px;
  background: #333;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  top: -5px;
  margin: 0 0.5rem 0 0;
}
@media screen and (max-width: 767px) {
  .notice li:before {
    width: 2px;
    height: 2px;
  }
}
.notice li a {
  color: #e43a34;
  text-decoration: underline;
}

.modal {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99999;
  background: #fff url("../img/bg-white.jpg");
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal-container {
  width: 950px;
  margin: 0 auto;
}
@media screen and (max-width: 1110px) {
  .modal-container {
    width: 90%;
    font-size: 3vw;
  }
}
.modal-close {
  width: 100px;
  height: 100px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
  cursor: pointer;
}
@media screen and (max-width: 1110px) {
  .modal-close {
    width: 14vw;
    height: 14vw;
  }
}
.modal-close:after {
  content: "MENU";
  width: 100%;
  font-weight: bold;
  color: #e43a34;
  display: block;
  text-align: center;
  position: absolute;
  bottom: 15px;
}
@media screen and (max-width: 1110px) {
  .modal-close:after {
    bottom: 1.5vw;
    font-size: 2.5vw;
  }
}
.modal-close span {
  width: 45px;
  height: 2px;
  display: block;
  background: #e43a34;
  position: absolute;
  left: 28px;
  top: 40px;
  transition: 0.2s;
}
@media screen and (max-width: 1110px) {
  .modal-close span {
    width: 8vw;
    height: 0.5vw;
    left: 3.5vw;
    top: 6vw;
  }
}
.modal-close span:nth-child(1) {
  transform: translateY(0) rotate(20deg);
}
.modal-close span:nth-child(2) {
  transform: translateY(0) rotate(-20deg);
  width: 45px;
  left: 28px;
}
@media screen and (max-width: 1110px) {
  .modal-close span:nth-child(2) {
    transform: translateY(0) rotate(-20deg);
    width: 8vw;
    left: 3.5vw;
  }
}
.modal-close:after {
  content: "CLOSE";
}
.modal-close span:nth-child(1) {
  transform: translateY(0) rotate(20deg);
}
.modal-close span:nth-child(2) {
  transform: translateY(0) rotate(-20deg);
  width: 45px;
  left: 28px;
}
@media screen and (max-width: 1110px) {
  .modal-close span:nth-child(2) {
    transform: translateY(0) rotate(-20deg);
    width: 8vw;
    left: 3.5vw;
  }
}
.modal p {
  margin: 0 0 30px;
}
@media screen and (max-width: 1110px) {
  .modal p {
    margin: 0 0 3vw;
  }
}
.modal .link {
  padding: 0;
  margin: 0;
  background: none;
}
.modal .link-twocolumn {
  padding: 2vw 0 0;
  justify-content: center;
  width: 100%;
}/*# sourceMappingURL=top.css.map */