@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap);
700&display=swap");
/*---------------------------
	ページ固有
---------------------------*/
/*---------------------------
	function
---------------------------*/
/*---------------------------
	共通変数とか
---------------------------*/
@media only screen and (max-width: 950px) {
  [data-media="pc"] {
    display: none; } }

@media only screen and (min-width: 951px) {
  [data-media="sp"] {
    display: none; } }

/* ホバー用 */
/* アスヒ */
/* ボタンタグのリセット */
/* ---------------------------
	メディアクエリー
--------------------------- */
/*---------------------------
	Vendor
---------------------------*/
/**
 * Swiper 5.3.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 8, 2020
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal; }

:root {
  --swiper-theme-color:#007aff; }

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: height,-webkit-transform;
  transition-property: transform,height;
  transition-property: transform,height,-webkit-transform; }

.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px; }

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none; }

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none; }

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory; }

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory; }

:root {
  --swiper-navigation-size:44px; }

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size)/ 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size)/ 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color)); }

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto; }

.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto; }

.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {
  content: 'next'; }

.swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
  --swiper-navigation-color:#ffffff; }

.swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black {
  --swiper-navigation-color:#000000; }

.swiper-button-lock {
  display: none; }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%; }

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
          transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
          transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
          transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
          transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
          transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
          transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color)); }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: .2s transform,.2s top; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform,.2s left; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: .2s transform,.2s right; }

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: left top;
          transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
          transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white {
  --swiper-pagination-color:#ffffff; }

.swiper-pagination-black {
  --swiper-pagination-color:#000000; }

.swiper-pagination-lock {
  display: none; }

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff; }

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000; }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/*---------------------------
	レイアウト
---------------------------*/
/* ------------------
	reset
-------------------*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

li {
  list-style: none; }

*:focus {
  outline: none; }

html, body {
  width: 100%;
  height: 100%; }

body {
  position: relative;
  color: #242424;
  background-color: #101010;
  font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,"Hiragino Sans","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.04em;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent; }
  @media only screen and (min-width: 951px) {
    body[data-menu="true"], body[data-search="true"] {
      height: 100%;
      overflow-y: hidden; } }
  body[data-modal='true'] {
    overflow-y: hidden;
    position: fixed; }
  body[data-openmenu='true'] {
    overflow-y: hidden; }

img {
  max-width: 100%; }

a {
  text-decoration: none;
  color: #242424; }

body[data-resize="true"] * {
  transition: 0s !important; }

/* ------------------
	共通クラス系
-------------------*/
.wrapper {
  position: relative;
  z-index: 5;
  overflow: hidden;
  transition: opacity 0.2s; }
  [data-fading="true"] .wrapper {
    opacity: 0; }

@media only screen and (min-width: 951px) {
  .container {
    padding: 180px 0 150px;
    min-height: calc(100vh - 126px); } }

@media only screen and (max-width: 950px) {
  .container {
    padding: 100px 0 100px;
    min-height: calc(100vh - 249px); } }

#canvas {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #000; }

/* ------------------
	共通タイトル
-------------------*/
.page-inner {
  width: 90%;
  max-width: 1175px;
  margin: 0 auto;
  width: 88%; }

.page-title {
  font-family: "Arimo", sans-serif;
  font-size: 76px;
  font-weight: 600;
  line-height: 1;
  color: #fff; }
  @media not screen and (min-width: 769px) {
    .page-title {
      font-size: 43px; } }

/*---------------------------
	コンポーネント
---------------------------*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 99;
  background-color: #101010; }
  .header-inner {
    width: 90%;
    max-width: 1175px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media only screen and (min-width: 951px) {
      .header-inner {
        padding: 30px 0; } }
    @media only screen and (max-width: 950px) {
      .header-inner {
        padding: 20px 0; } }
  @media only screen and (min-width: 951px) {
    .header-logo {
      position: relative;
      top: 5px; } }
  .header-logo-link {
    display: inline-block;
    font-size: 0; }
  .header-logo-svg {
    width: 230px;
    height: 30px;
    fill: #fff;
    transition: .3s fill; }
    [data-iswhite="true"] .header-logo-svg {
      fill: #000; }
  .header-nav {
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center; }
    @media not screen and (min-width: 950px) {
      .header-nav {
        margin-right: -5.5%; } }
    .header-nav-item {
      margin-right: 10px; }
    .header-nav-list-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      padding: 100px 0 0;
      overflow-y: auto; }
    .header-nav-list[data-type="gnavi"] {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      opacity: 0;
      pointer-events: none;
      transition: .4s; }
      .header-nav-list[data-type="gnavi"]::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #101010;
        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
        transition: 0.45s cubic-bezier(0.17, 0.67, 0.09, 0.98); }
      [data-openmenu="true"] .header-nav-list[data-type="gnavi"] {
        opacity: 1;
        pointer-events: auto; }
        [data-openmenu="true"] .header-nav-list[data-type="gnavi"]::before {
          -webkit-transform: translate3d(0, 0, 0);
                  transform: translate3d(0, 0, 0); }
    @media only screen and (min-width: 951px) {
      .header-nav-list[data-type="lang"] {
        display: flex;
        align-items: center; }
        .header-nav-list[data-type="lang"] + .header-nav-list {
          margin-left: 20px; } }
    .header-nav-item {
      position: relative; }
      @media only screen and (min-width: 951px) {
        [data-type="lang"] .header-nav-item + .header-nav-item {
          margin-left: 20px; } }
      [data-type="lang"] .header-nav-item-link {
        opacity: 0.3;
        font-size: 65%;
        pointer-events: auto; }
      [data-lang="jp"] [data-type="lang"] .header-nav-item-link[data-selectlang="jp"],
      [data-lang="en"] [data-type="lang"] .header-nav-item-link[data-selectlang="en"] {
        opacity: 1;
        pointer-events: none; }
      [data-type="gnavi"] .header-nav-item {
        opacity: 0;
        transition: 0.3s cubic-bezier(0.17, 0.67, 0.01, 1.34);
        width: 80%;
        margin: 0 auto;
        -webkit-transform: translate(0, -20px);
                transform: translate(0, -20px);
        padding-left: 100px; }
        [data-openmenu="true"] [data-type="gnavi"] .header-nav-item:nth-child(1) {
          opacity: 1;
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0);
          transition-delay: 0.35s; }
        [data-openmenu="true"] [data-type="gnavi"] .header-nav-item:nth-child(2) {
          opacity: 1;
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0);
          transition-delay: 0.4s; }
        [data-openmenu="true"] [data-type="gnavi"] .header-nav-item:nth-child(3) {
          opacity: 1;
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0);
          transition-delay: 0.45s; }
        [data-openmenu="true"] [data-type="gnavi"] .header-nav-item:nth-child(4) {
          opacity: 1;
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0);
          transition-delay: 0.5s; }
        @media not screen and (min-width: 769px) {
          [data-type="gnavi"] .header-nav-item {
            padding-left: 0; } }
        [data-type="gnavi"] .header-nav-item-link {
          display: inline-block;
          margin: 16px 0;
          text-align: left;
          font-weight: 600;
          font-size: 59.76px;
          transition: .3s color; }
          @media (hover: hover) and (pointer: fine) {
            [data-type="gnavi"] .header-nav-item-link {
              cursor: pointer; }
              [data-type="gnavi"] .header-nav-item-link:hover {
                color: #baff00; } }
          @media not screen and (min-width: 769px) {
            [data-type="gnavi"] .header-nav-item-link {
              font-size: 41.5px;
              margin: 12.8px 0; } }
      @media only screen and (min-width: 951px) {
        [data-type="sns"] .header-nav-item-link-svg {
          transition: .4s; }
          [data-type="sns"] .header-nav-item-link-svg:hover {
            opacity: 0.5; } }
      .header-nav-item-link {
        position: relative;
        color: #fff;
        font-family: "Arimo", sans-serif;
        font-size: 20px; }
        @media only screen and (min-width: 951px) {
          [data-iswhite="true"] .header-nav-item-link {
            color: #242424; } }
        .header-nav-item-link-sns {
          display: block;
          width: 48px;
          margin: 55px 0;
          transition: 0.3s opacity; }
          @media (hover: hover) and (pointer: fine) {
            .header-nav-item-link-sns {
              cursor: pointer; }
              .header-nav-item-link-sns:hover {
                opacity: 0.7; } }
          @media not screen and (min-width: 769px) {
            .header-nav-item-link-sns {
              width: 24px;
              margin: 39.6px 0; } }
      .header-nav-item-termList {
        margin: 12px 0 24px; }
        @media not screen and (min-width: 769px) {
          .header-nav-item-termList {
            margin: 8.64px 0 17.28px; } }
      .header-nav-item-termItem:not(:first-child) {
        margin-top: 25px; }
        @media not screen and (min-width: 769px) {
          .header-nav-item-termItem:not(:first-child) {
            margin-top: 20px; } }
      .header-nav-item-termItem::before {
        content: '';
        display: inline-block;
        margin-right: 10px;
        margin-bottom: 10px;
        width: 11.52px;
        height: 1px;
        background-color: #baff00; }
      .header-nav-item-termItem-link {
        color: #fff;
        font-family: "Arimo", sans-serif;
        font-size: 28.8px;
        transition: 0.3s color; }
        @media (hover: hover) and (pointer: fine) {
          .header-nav-item-termItem-link {
            cursor: pointer; }
            .header-nav-item-termItem-link:hover {
              color: #baff00; } }
        @media not screen and (min-width: 769px) {
          .header-nav-item-termItem-link {
            font-size: 20px; } }
    .header-nav-button {
      cursor: pointer;
      position: relative;
      margin-left: 15px;
      display: block;
      width: 54.5px;
      height: 20px; }
      .header-nav-button::before, .header-nav-button::after {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background: #fff;
        transition: .3s transform, .3s background; }
        [data-iswhite="true"] .header-nav-button::before, [data-iswhite="true"] .header-nav-button::after {
          background: #000; }
        [data-openmenu="true"] .header-nav-button::before, [data-openmenu="true"] .header-nav-button::after {
          background: #fff; }
      .header-nav-button::before {
        top: 0; }
      .header-nav-button::after {
        bottom: 0; }
      [data-openmenu="true"] .header-nav-button::before {
        -webkit-transform: translate(0, 9px);
                transform: translate(0, 9px); }
      [data-openmenu="true"] .header-nav-button::after {
        -webkit-transform: translate(0, -9px);
                transform: translate(0, -9px); }
      .header-nav-button-bar {
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        height: 2px;
        margin-top: -1px;
        background: #fff;
        transition: .3s; }
        [data-iswhite="true"] .header-nav-button-bar {
          background: #000; }

.pr-footer {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.footer-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .footer-wrapper[data-view="false"] {
    height: 0; }

.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center; }
  [data-loaded="true"] .loading {
    transition: .4s;
    opacity: 0;
    pointer-events: none; }
  @media only screen and (max-width: 950px) {
    .loading video {
      max-width: 75%; } }

.modal {
  display: none; }
  .modal.is-test, .modal.is-open {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999; }
    .modal.is-test[data-theme="project"], .modal.is-open[data-theme="project"] {
      background: rgba(0, 0, 0, 0.8);
      opacity: 0;
      transition: 0.3s opacity; }
      [data-modal="true"] .modal.is-test[data-theme="project"], [data-modal="true"] .modal.is-open[data-theme="project"] {
        opacity: 1; }
  .modal-cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    [data-theme="project"] .modal-cover {
      z-index: -1; }
  .modal-container {
    width: 100%; }
    [data-theme="project"] .modal-container {
      position: relative;
      width: 90%;
      max-width: 1175px;
      margin: 0 auto;
      width: 93.33333%;
      max-width: 607px; }
    .modal-container-inner {
      width: 90%;
      max-width: 1175px;
      margin: 0 auto;
      text-align: center; }
      [data-theme="project"] .modal-container-inner {
        width: 100%;
        text-align: start; }
  .modal-video-block {
    margin-bottom: 25px;
    position: relative;
    width: 100%;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2); }
    .modal-video-block::before {
      content: "";
      display: block;
      padding-top: 56.25%; }
    .modal-video-block video,
    .modal-video-block iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .modal-project-block {
    position: relative;
    background-color: #000;
    border-radius: 10px;
    border: solid 1px #313131;
    overflow: hidden; }
    .modal-project-block-content {
      position: relative;
      z-index: 1;
      max-height: 85vh;
      overflow-y: auto;
      border-radius: 10px;
      color: #fff; }
      .modal-project-block-content::-webkit-scrollbar {
        position: relative;
        display: block;
        width: 5px; }
      .modal-project-block-content::-webkit-scrollbar-track {
        background: #000;
        border-radius: 2.5px; }
      .modal-project-block-content::-webkit-scrollbar-thumb {
        cursor: pointer;
        background: #baff00;
        border-radius: 2.5px; }
      @media not screen and (min-width: 769px) {
        .modal-project-block-content {
          max-height: 80vh; } }
    .modal-project-block-inner {
      width: 90%;
      max-width: 1175px;
      margin: 0 auto;
      width: 91.42857%;
      padding: 20px 0 30px; }
    .modal-project-block-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0.23;
      -webkit-filter: blur(7.8px);
              filter: blur(7.8px);
      background-size: cover;
      background-position: center; }
  .modal-project-image {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; }
    .modal-project-image::before {
      content: '';
      display: block;
      padding-top: 100%; }
  .modal-project-name-ja {
    text-align: center;
    font-family: "Noto Serif JP", serif;
    font-size: 31.68px; }
    @media not screen and (min-width: 769px) {
      .modal-project-name-ja {
        font-size: 22px; } }
  .modal-project-name-en {
    text-align: center;
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 15.84px;
    letter-spacing: 0.06em;
    color: #baff00;
    padding-top: 0.7em; }
    @media not screen and (min-width: 769px) {
      .modal-project-name-en {
        font-size: 11px; } }
  .modal-project-description {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 18.2px;
    line-height: 1.5;
    padding-top: 1em; }
    @media not screen and (min-width: 769px) {
      .modal-project-description {
        font-size: 14px; } }
    .modal-project-description p, .modal-project-description a {
      word-break: break-all; }
    .modal-project-description a {
      color: inherit;
      text-decoration: underline; }
  .modal-project-link-wrp {
    padding: 41.76px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media not screen and (min-width: 769px) {
      .modal-project-link-wrp {
        padding: 29px 0 0; } }
  .modal-project-link-official {
    text-align: center; }
    .modal-project-link-official[data-hidden="true"] {
      visibility: hidden; }
    .modal-project-link-official a {
      display: block;
      color: #fff;
      font-family: "IBM Plex Sans JP", sans-serif;
      font-size: 15.84px;
      letter-spacing: 0.08em;
      padding: 1.1em 2em 1em;
      transition: 0.2s border-color;
      border-radius: 35px;
      border: solid 1px #4c4c4c; }
      @media (hover: hover) and (pointer: fine) {
        .modal-project-link-official a {
          cursor: pointer; }
          .modal-project-link-official a:hover {
            border-color: #6d9117; } }
      @media not screen and (min-width: 769px) {
        .modal-project-link-official a {
          font-size: 12.1px; } }
  .modal-project-link-sns {
    display: flex;
    justify-content: center;
    align-items: center; }
    .modal-project-link-sns-item {
      width: 50px;
      height: 50px; }
      @media not screen and (min-width: 769px) {
        .modal-project-link-sns-item {
          width: 40px;
          height: 40px; } }
      .modal-project-link-sns-item:not(:first-child) {
        margin-left: 20px; }
        @media not screen and (min-width: 769px) {
          .modal-project-link-sns-item:not(:first-child) {
            margin-left: 15px; } }
    .modal-project-link-sns a {
      display: block;
      width: 100%;
      height: 100%;
      transition: 0.2s border-color;
      border-radius: 50%;
      border: solid 1px #4c4c4c; }
      @media (hover: hover) and (pointer: fine) {
        .modal-project-link-sns a {
          cursor: pointer; }
          .modal-project-link-sns a:hover {
            border-color: #6d9117; } }
      .modal-project-link-sns a img {
        width: 47.14286%;
        position: relative;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
  .modal-project-play-wrp {
    margin-top: 41.76px;
    padding-top: 41.76px;
    border-top: solid 1px #4c4c4c; }
    @media not screen and (min-width: 769px) {
      .modal-project-play-wrp {
        margin-top: 31.9px;
        padding-top: 31.9px; } }
  .modal-project-play-inner {
    width: 90%;
    max-width: 1175px;
    margin: 0 auto;
    width: 90.625%; }
  .modal-project-play-ttl {
    padding-bottom: 0.1em; }
    .modal-project-play-ttl img {
      width: 20.88px;
      margin-left: 0.1em;
      margin-right: 0.8em; }
      @media not screen and (min-width: 769px) {
        .modal-project-play-ttl img {
          width: 15.95px; } }
      .modal-project-purchase .modal-project-play-ttl img {
        width: 25.92px;
        margin-left: 0;
        margin-right: 0.7em; }
        @media not screen and (min-width: 769px) {
          .modal-project-purchase .modal-project-play-ttl img {
            width: 19.8px; } }
    .modal-project-play-ttl span {
      font-family: "IBM Plex Sans JP", sans-serif;
      font-size: 18.72px;
      letter-spacing: 0.04em;
      position: relative;
      top: -0.2em; }
      @media not screen and (min-width: 769px) {
        .modal-project-play-ttl span {
          font-size: 14.3px; } }
  .modal-project-play-item {
    margin-top: 15.84px; }
    @media not screen and (min-width: 769px) {
      .modal-project-play-item {
        margin-top: 11px; } }
    .modal-project-play-item a {
      display: block;
      border-radius: 12px;
      border: solid 1px #494949;
      overflow: hidden;
      transition: 0.3s border-radius; }
      @media (hover: hover) and (pointer: fine) {
        .modal-project-play-item a {
          cursor: pointer; }
          .modal-project-play-item a:hover {
            border-radius: 36px; } }
      @media not screen and (min-width: 769px) {
        .modal-project-play-item a {
          border-radius: 6px; } }
    .modal-project-play-item img {
      display: block; }
  .modal-close {
    position: relative;
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    color: #000;
    border: 0px;
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
    background: none;
    font-size: 22px;
    letter-spacing: 2px;
    padding-left: 20px; }
    @media only screen and (min-width: 951px) {
      .modal-close {
        transition: 0.3s cubic-bezier(0.17, 0.67, 0.49, 1.16);
        cursor: pointer; }
        .modal-close:hover {
          -webkit-transform: scale(0.9);
                  transform: scale(0.9); } }
    [data-theme="project"] .modal-close {
      font-family: "Bungee Hairline", sans-serif;
      font-size: 23.76px;
      color: #fff;
      text-align: center;
      padding-left: 0;
      letter-spacing: 0.04em;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      margin-top: 0.75em;
      transition: 0.3s -webkit-transform;
      transition: 0.3s transform;
      transition: 0.3s transform, 0.3s -webkit-transform; }
      @media (hover: hover) and (pointer: fine) {
        [data-theme="project"] .modal-close {
          cursor: pointer; }
          [data-theme="project"] .modal-close:hover {
            -webkit-transform: translateX(-50%) scale(0.9);
                    transform: translateX(-50%) scale(0.9); } }
      @media not screen and (min-width: 769px) {
        [data-theme="project"] .modal-close {
          font-size: 18.15px; } }
      [data-theme="project"] .modal-close span {
        color: #baff00; }

.modal__container {
  background-color: #fff;
  padding: 30px;
  max-width: 500px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box; }

/*---------------------------
	ページ
---------------------------*/
.container[data-barba-namespace="home"] {
  padding-top: 0;
  padding-bottom: 130px;
  height: 100%;
  width: 100%; }
  @media not screen and (min-width: 769px) {
    .container[data-barba-namespace="home"] {
      padding-bottom: 65px; } }
  @media only screen and (max-width: 950px) {
    .container[data-barba-namespace="home"] {
      min-height: unset; } }

.home-contents {
  position: relative;
  padding-top: 120px; }
  @media not screen and (min-width: 769px) {
    .home-contents {
      padding-top: 40px; } }
  .home-contents-inner {
    width: 90%;
    max-width: 1175px;
    margin: 0 auto;
    width: 88%; }
  .home-contents-titleWrp {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .home-contents-title {
    font-family: "Arimo", sans-serif;
    font-size: 56px;
    font-weight: 600;
    line-height: 1;
    color: #fff; }
    @media not screen and (min-width: 769px) {
      .home-contents-title {
        font-size: 43px; } }
    @media not screen and (min-width: 577px) {
      .home-contents-title {
        font-size: 38px; } }
  .home-contents-more {
    font-family: "Arimo", sans-serif;
    font-size: 30px;
    color: #fff;
    border: solid 1px #fff;
    border-radius: 35px;
    width: 110px;
    padding: 4px 0 8px;
    overflow: hidden;
    text-align: center; }
    @media (hover: hover) and (pointer: fine) {
      .home-contents-more {
        cursor: pointer; }
        .home-contents-more:hover .home-contents-more-txt {
          opacity: 0; }
        .home-contents-more:hover .home-contents-more-hoverTxt {
          opacity: 1; } }
    @media not screen and (min-width: 769px) {
      .home-contents-more {
        font-size: 25px;
        width: 91px;
        padding: 3px 0 6px; } }
    @media not screen and (min-width: 577px) {
      .home-contents-more {
        font-size: 20px;
        width: 72.8px;
        padding: 2.4px 0 4.8px; } }
    .home-contents-more-inner {
      position: relative; }
    .home-contents-more-txt, .home-contents-more-hoverTxt {
      transition: 0.2s opacity; }
    .home-contents-more-hoverTxt {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
      .home-contents-more-hoverTxt span {
        display: flex; }
      .home-contents-more-hoverTxt::before, .home-contents-more-hoverTxt::after,
      .home-contents-more-hoverTxt span::before,
      .home-contents-more-hoverTxt span::after {
        content: 'more';
        margin: 0 0.2em;
        -webkit-animation: moreTicker 2.5s linear infinite;
                animation: moreTicker 2.5s linear infinite; }

@-webkit-keyframes moreTicker {
  0% {
    -webkit-transform: translateX(calc(-50% - 0.2em));
            transform: translateX(calc(-50% - 0.2em)); }
  100% {
    -webkit-transform: translateX(calc(50% + 0.2em));
            transform: translateX(calc(50% + 0.2em)); } }

@keyframes moreTicker {
  0% {
    -webkit-transform: translateX(calc(-50% - 0.2em));
            transform: translateX(calc(-50% - 0.2em)); }
  100% {
    -webkit-transform: translateX(calc(50% + 0.2em));
            transform: translateX(calc(50% + 0.2em)); } }

/* ------------------------------
	KV
------------------------------ */
.home-contents[data-contents="kv"] {
  padding-top: 0; }

.home-text-slide {
  display: flex;
  overflow: hidden;
  padding-top: 105px;
  background: linear-gradient(#101010, #1d1d1d); }
  @media only screen and (max-width: 950px) {
    .home-text-slide {
      padding-top: 90px; } }
  .home-text-slide svg {
    flex-shrink: 0;
    margin-right: 100px;
    will-change: transform; }
    @media not screen and (min-width: 769px) {
      .home-text-slide svg {
        width: 797.5px;
        height: auto;
        margin-right: 50px; } }

/* ------------------------------
	slide
------------------------------ */
.home-slide {
  position: relative;
  margin-top: -95px;
  overflow: hidden; }
  @media not screen and (min-width: 769px) {
    .home-slide {
      margin-top: -47.5px; } }
  .home-slide .swiper-container {
    padding-left: 253px;
    width: 100vw; }
    @media not screen and (min-width: 769px) {
      .home-slide .swiper-container {
        padding-left: 177.1px; } }
    @media not screen and (min-width: 577px) {
      .home-slide .swiper-container {
        padding-left: 126.5px; } }
  .home-slide .swiper-wrapper {
    will-change: transform;
    transition-timing-function: linear; }
    [data-manual-slide='true'] .home-slide .swiper-wrapper {
      transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .home-slide .swiper-slide {
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    width: 506px; }
    @media not screen and (min-width: 769px) {
      .home-slide .swiper-slide {
        width: 354.2px; } }
    @media not screen and (min-width: 577px) {
      .home-slide .swiper-slide {
        width: 253px; } }
    .home-slide .swiper-slide-inner {
      overflow: hidden; }
      @media (hover: hover) and (pointer: fine) {
        .home-slide .swiper-slide-inner {
          cursor: pointer; }
          .home-slide .swiper-slide-inner:hover .swiper-slide-artist-image {
            -webkit-transform: scale(1.05);
                    transform: scale(1.05); } }
  .home-slide .swiper-slide-artist-image {
    background-size: contain;
    background-repeat: no-repeat;
    transition: 0.4s -webkit-transform;
    transition: 0.4s transform;
    transition: 0.4s transform, 0.4s -webkit-transform;
    aspect-ratio: 1; }
    @supports not (aspect-ratio: 1) {
      .home-slide .swiper-slide-artist-image::before {
        float: left;
        padding-top: 100%;
        content: ''; }
      .home-slide .swiper-slide-artist-image::after {
        display: block;
        clear: both;
        content: ''; } }
  .home-slide-infoWrapper {
    background: linear-gradient(#1d1d1d, #101010); }
    .home-slide-infoWrapper-inner {
      width: 90%;
      max-width: 1175px;
      margin: 0 auto;
      position: relative;
      display: flex;
      justify-content: space-between;
      align-items: flex-start; }
  .home-slide-info {
    padding: 45px 0 20px;
    opacity: 0;
    pointer-events: none;
    color: #fff;
    transition: 0.3s opacity;
    width: calc(100% - 186px - 50px); }
    @media not screen and (min-width: 769px) {
      .home-slide-info {
        padding: 22.5px 0 10px;
        width: calc(100% - 93px - 50px * 0.5); } }
    .home-slide-info[data-active="true"] {
      position: relative;
      opacity: 1;
      pointer-events: auto; }
    .home-slide-info[data-active="false"] {
      position: absolute;
      top: 0;
      left: 0; }
    .home-slide-info-name {
      word-break: break-all; }
      .home-slide-info-name-ja {
        font-family: "IBM Plex Sans JP", sans-serif;
        font-size: 65px; }
        @media not screen and (min-width: 950px) {
          .home-slide-info-name-ja {
            font-size: 59px; } }
        @media not screen and (min-width: 769px) {
          .home-slide-info-name-ja {
            font-size: 41.3px; } }
        @media not screen and (min-width: 577px) {
          .home-slide-info-name-ja {
            font-size: 25px; } }
      .home-slide-info-name-en {
        font-family: "Arimo", sans-serif;
        font-size: 20px;
        letter-spacing: 0.08em;
        margin-top: 20px; }
        @media not screen and (min-width: 769px) {
          .home-slide-info-name-en {
            font-size: 14px;
            margin-top: 14px; } }
        @media not screen and (min-width: 577px) {
          .home-slide-info-name-en {
            font-size: 10px;
            margin-top: 10px; } }
    .home-slide-info-nav {
      margin-top: 53px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 136px;
      position: relative; }
      @media not screen and (min-width: 950px) {
        .home-slide-info-nav {
          margin-top: 54px; } }
      @media not screen and (min-width: 769px) {
        .home-slide-info-nav {
          margin-top: 27px;
          width: 93px; } }
      @media not screen and (min-width: 577px) {
        .home-slide-info-nav {
          margin-top: 22.2px; } }
      .home-slide-info-nav-prev, .home-slide-info-nav-next {
        position: relative;
        width: 22px;
        cursor: pointer;
        -webkit-user-select: none;
           -moz-user-select: none;
            -ms-user-select: none;
                user-select: none;
        background: none;
        border: none;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        outline: none; }
        @media (hover: hover) and (pointer: fine) {
          .home-slide-info-nav-prev, .home-slide-info-nav-next {
            cursor: pointer; }
            .home-slide-info-nav-prev:hover svg, .home-slide-info-nav-next:hover svg {
              -webkit-transform: translateX(-15%);
                      transform: translateX(-15%); } }
        [data-manual-slide='true'] .home-slide-info-nav-prev, [data-manual-slide='true'] .home-slide-info-nav-next {
          pointer-events: none; }
        @media not screen and (min-width: 769px) {
          .home-slide-info-nav-prev, .home-slide-info-nav-next {
            width: 15px; } }
        .home-slide-info-nav-prev::before, .home-slide-info-nav-next::before {
          content: '';
          display: block;
          padding-top: 189.77273%; }
        .home-slide-info-nav-prev svg, .home-slide-info-nav-next svg {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          transition: 0.3s -webkit-transform;
          transition: 0.3s transform;
          transition: 0.3s transform, 0.3s -webkit-transform; }
      @media (hover: hover) and (pointer: fine) {
        .home-slide-info-nav-next {
          cursor: pointer; }
          .home-slide-info-nav-next:hover svg {
            -webkit-transform: rotate(180deg) translateX(-15%);
                    transform: rotate(180deg) translateX(-15%); } }
      .home-slide-info-nav-next svg {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      .home-slide-info-nav-num {
        font-family: "Bungee Hairline", sans-serif;
        font-size: 26px;
        color: #fff;
        font-weight: 700;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -46%);
                transform: translate(-50%, -46%); }
        @media not screen and (min-width: 769px) {
          .home-slide-info-nav-num {
            font-size: 18px; } }

/* ------------------------------
	NEWS
------------------------------ */
.home-news {
  padding-top: 25px; }
  @media not screen and (min-width: 769px) {
    .home-news {
      padding-top: 12.5px; } }
  .home-news > li {
    border-bottom: solid 1px #646464; }
    .home-news > li:last-child {
      border-bottom: none; }

/* ------------------------------
	RELEASE
------------------------------ */
.home-contents[data-contents="release"] {
  overflow: hidden; }

.home-release {
  padding-top: 64px; }
  @media not screen and (min-width: 769px) {
    .home-release {
      padding-top: 32px; } }
  .home-release .swiper-container {
    overflow: visible; }
  @media only screen and (min-width: 769px) {
    .home-release .swiper-slide {
      width: 270px; } }
  .home-release .swiper-slide-inner {
    padding-bottom: 10px; }
  .home-release .swiper-slide-link {
    color: #fff; }
    @media (hover: hover) and (pointer: fine) {
      .home-release .swiper-slide-link {
        cursor: pointer; }
        .home-release .swiper-slide-link:hover .swiper-slide-figWrp {
          border-radius: 50%; }
        .home-release .swiper-slide-link:hover .swiper-slide-fig {
          border-radius: 50%; }
          .home-release .swiper-slide-link:hover .swiper-slide-fig img {
            border-radius: 50%; }
        .home-release .swiper-slide-link:hover .swiper-slide-figHover {
          opacity: 1;
          border-radius: 50%; }
          .home-release .swiper-slide-link:hover .swiper-slide-figHover::before,
          .home-release .swiper-slide-link:hover .swiper-slide-figHover svg {
            opacity: 1; } }
  .home-release .swiper-slide-figWrp {
    border: solid 1px #9c9c9c;
    position: relative;
    overflow: hidden;
    transition: 0.25s border-radius; }
  .home-release .swiper-slide-fig {
    border: solid 4px #000;
    position: relative;
    overflow: hidden;
    transition: 0.25s border-radius; }
    @media not screen and (min-width: 769px) {
      .home-release .swiper-slide-fig {
        border-width: 2px; } }
    .home-release .swiper-slide-fig::before {
      content: '';
      display: block;
      padding-top: 100%; }
    .home-release .swiper-slide-fig img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: center;
         object-position: center;
      pointer-events: none;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      transition: 0.25s border-radius; }
    .home-release .swiper-slide-fig-new {
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      background-color: #BAFF00;
      padding: 2px 1px 3px;
      width: 30%; }
      .home-release .swiper-slide-fig-new svg {
        display: block;
        width: 100%;
        height: auto; }
  .home-release .swiper-slide-figHover {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(30, 30, 30, 0.75);
    opacity: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.25s opacity, 0.25s border-radius; }
    .home-release .swiper-slide-figHover::before {
      content: 'DETAIL';
      font-family: "Bungee Hairline", sans-serif;
      font-size: 28px;
      color: #fff;
      font-weight: 700;
      opacity: 0;
      transition: 0.15s opacity 0.2s; }
      @media not screen and (min-width: 769px) {
        .home-release .swiper-slide-figHover::before {
          font-size: 14px; } }
    .home-release .swiper-slide-figHover svg {
      width: 17px;
      margin-left: 8px;
      opacity: 0;
      transition: 0.15s opacity 0.2s; }
      @media not screen and (min-width: 769px) {
        .home-release .swiper-slide-figHover svg {
          width: 8.5px;
          margin-left: 4px; } }
  .home-release .swiper-slide-date {
    font-family: "Bungee Hairline", sans-serif;
    font-size: 18px;
    letter-spacing: -0.025em;
    font-weight: 700;
    padding-top: 1.4em; }
    @media not screen and (min-width: 769px) {
      .home-release .swiper-slide-date {
        font-size: 11px; } }
  .home-release .swiper-slide-ttl {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 20px;
    padding-top: 0.6em;
    line-height: 1.2; }
    @media not screen and (min-width: 769px) {
      .home-release .swiper-slide-ttl {
        font-size: 15.6px; } }
  .home-release .swiper-slide-purchase {
    display: inline-block;
    position: relative;
    font-family: "Bungee Hairline", sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin-top: 0.8em;
    padding: 0.4em 0.5em; }
    @media not screen and (min-width: 769px) {
      .home-release .swiper-slide-purchase {
        font-size: 16.8px; } }
    @media (hover: hover) and (pointer: fine) {
      .home-release .swiper-slide-purchase {
        cursor: pointer; }
        .home-release .swiper-slide-purchase:hover .swiper-slide-purchase-frame:first-of-type svg:first-child {
          -webkit-transform: translate(-15%, -15%);
                  transform: translate(-15%, -15%); }
        .home-release .swiper-slide-purchase:hover .swiper-slide-purchase-frame:first-of-type svg:last-child {
          -webkit-transform: rotate(90deg) translate(-15%, -15%);
                  transform: rotate(90deg) translate(-15%, -15%); }
        .home-release .swiper-slide-purchase:hover .swiper-slide-purchase-frame:last-of-type svg:first-child {
          -webkit-transform: rotate(270deg) translate(-15%, -15%);
                  transform: rotate(270deg) translate(-15%, -15%); }
        .home-release .swiper-slide-purchase:hover .swiper-slide-purchase-frame:last-of-type svg:last-child {
          -webkit-transform: rotate(180deg) translate(-15%, -15%);
                  transform: rotate(180deg) translate(-15%, -15%); } }
    .home-release .swiper-slide-purchase-frame svg {
      width: 0.7em;
      height: auto;
      position: absolute;
      transition: 0.15s -webkit-transform;
      transition: 0.15s transform;
      transition: 0.15s transform, 0.15s -webkit-transform; }
      .home-release .swiper-slide-purchase-frame svg:first-child {
        left: 0; }
      .home-release .swiper-slide-purchase-frame svg:last-child {
        right: 0; }
    .home-release .swiper-slide-purchase-frame:first-of-type svg {
      top: 0; }
      .home-release .swiper-slide-purchase-frame:first-of-type svg:last-child {
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg); }
    .home-release .swiper-slide-purchase-frame:last-of-type svg {
      bottom: 0; }
      .home-release .swiper-slide-purchase-frame:last-of-type svg:first-child {
        -webkit-transform: rotate(270deg);
                transform: rotate(270deg); }
      .home-release .swiper-slide-purchase-frame:last-of-type svg:last-child {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }

/* ------------------------------
	PROJECT
------------------------------ */
@media not screen and (min-width: 769px) {
  .home-contents[data-contents="project"] {
    padding-top: 60px; } }

.home-project {
  width: 90%;
  max-width: 1175px;
  margin: 0 auto;
  width: 96%;
  max-width: 1255px;
  margin-top: -31px; }
  @media not screen and (min-width: 769px) {
    .home-project {
      margin-top: -21.5px; } }
  .home-project-container {
    padding: 93px 0 66px;
    position: relative; }
    @media not screen and (min-width: 769px) {
      .home-project-container {
        padding: 46.5px 0 33px; } }
    .home-project-container-inner {
      width: 90%;
      max-width: 1175px;
      margin: 0 auto;
      width: 94%; }
    .home-project-container-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background-color: #1e1e1e;
      border-radius: 20px;
      border: solid 1px #000;
      overflow: hidden; }
      @media not screen and (min-width: 769px) {
        .home-project-container-bg {
          border-radius: 10px; } }
      .home-project-container-bg-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        background-size: cover;
        background-position: center;
        transition: 0.2s opacity;
        -webkit-filter: grayscale(1);
                filter: grayscale(1); }
        .home-project-container-bg-image[data-active="true"] {
          opacity: 0.09; }
  .home-project-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 37.5px; }
    @media not screen and (min-width: 950px) {
      .home-project-list {
        gap: 25px; } }
    @media not screen and (min-width: 769px) {
      .home-project-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 18.75px; } }
  @media (hover: hover) and (pointer: fine) {
    .home-project-item {
      cursor: pointer; }
      .home-project-item:hover .home-project-item-fig {
        border-radius: 36px; } }
  .home-project-item-fig {
    border: solid 1px #baff00;
    overflow: hidden;
    position: relative;
    transition: 0.25s border-radius; }
    @media (hover: none), (hover: on-demand), (pointer: coarse) {
      .home-project-item-fig {
        border-radius: 18px; } }
    .home-project-item-fig::before {
      content: '';
      display: block;
      padding-top: 100%; }
    .home-project-item-fig img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: center;
         object-position: center;
      pointer-events: none;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
  .home-project-item-name-ja {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 20px;
    color: #fff;
    text-align: center;
    padding-top: 1em; }
    @media not screen and (min-width: 769px) {
      .home-project-item-name-ja {
        font-size: 15.6px; } }
  .home-project-item-name-en {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 18px;
    color: #b1b1b1;
    letter-spacing: 0.06em;
    text-align: center;
    padding-top: 0.5em; }
    @media not screen and (min-width: 769px) {
      .home-project-item-name-en {
        font-size: 11px; } }

/* ------------------------------
	バナー
------------------------------ */
@media not screen and (min-width: 769px) {
  .home-contents[data-contents="banner"] {
    padding-top: 60px; } }

.home-banner {
  width: 90%;
  max-width: 1175px;
  margin: 0 auto;
  width: 76.53333%;
  max-width: 574px; }
  .home-banner-item {
    border: solid 1px #9c9c9c; }
    .home-banner-item:not(:first-child) {
      margin-top: 50px; }
      @media not screen and (min-width: 769px) {
        .home-banner-item:not(:first-child) {
          margin-top: 25px; } }
    .home-banner-item-link {
      display: block;
      border: solid 4px #000;
      transition: 0.3s opacity; }
      @media not screen and (min-width: 769px) {
        .home-banner-item-link {
          border-width: 2px; } }
      @media (hover: hover) and (pointer: fine) {
        .home-banner-item-link {
          cursor: pointer; }
          .home-banner-item-link:hover {
            opacity: 0.75; } }
      .home-banner-item-link img {
        display: block; }

/* -------------------------
	カテゴリー一覧
------------------------- */
.news-term-swiper {
  padding-top: 60px;
  border-bottom: solid 1px #baff00; }
  @media not screen and (min-width: 769px) {
    .news-term-swiper {
      padding-top: 30px; } }

.news-term-item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .news-term-item-link {
    display: block;
    color: #fff;
    font-family: "Arimo", sans-serif;
    font-weight: 500;
    font-size: 20px;
    padding: 0.75em 0.9em;
    transition: 0.3s background-color; }
    @media (hover: hover) and (pointer: fine) {
      .news-term-item-link {
        cursor: pointer; }
        .news-term-item-link:hover {
          background-color: #313131; } }
    @media not screen and (min-width: 769px) {
      .news-term-item-link {
        font-size: 12.5px; } }
    .news-term-item-link.active {
      background-color: #baff00;
      color: #000; }

/* -------------------------
	一覧ページ
------------------------- */
.newsList {
  padding-top: 25px; }
  @media not screen and (min-width: 769px) {
    .newsList {
      padding-top: 12.5px; } }
  .newsList > li {
    border-bottom: solid 1px #646464; }

/* -------------------------
	リスト項目
------------------------- */
.news-item {
  padding: 27px 0 22px; }
  @media not screen and (min-width: 769px) {
    .news-item {
      padding: 17.5px 0 14px; } }
  .news-item-link {
    color: #fff;
    transition: 0.3s color; }
    @media (hover: hover) and (pointer: fine) {
      .news-item-link {
        cursor: pointer; }
        .news-item-link:hover {
          color: #baff00; }
          .news-item-link:hover .news-item-arrow {
            background-color: #baff00; }
            .news-item-link:hover .news-item-arrow svg path {
              fill: #101010; } }
  .news-item-upper {
    font-family: "Bungee Hairline", sans-serif;
    font-size: 18px;
    letter-spacing: -0.025em;
    font-weight: 700; }
    @media not screen and (min-width: 769px) {
      .news-item-upper {
        font-size: 11px; } }
    .news-item-upper-cat {
      color: #baff00;
      margin-left: 0.5em; }
  .news-item-wrp {
    display: flex;
    gap: 30px;
    justify-content: space-between;
    align-items: center;
    padding-top: 9px; }
    @media not screen and (min-width: 769px) {
      .news-item-wrp {
        gap: 15px;
        padding-top: 6px; } }
  .news-item-title {
    flex: 1;
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 20px;
    line-height: 1.1;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
    @media not screen and (min-width: 769px) {
      .news-item-title {
        font-size: 15.6px; } }
    @media only screen and (min-width: 769px) {
      .newsList .news-item-title {
        font-size: 22px; } }
  .news-item-arrow {
    width: 46px;
    height: 46px;
    border: solid 1px #baff00;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s background-color; }
    @media not screen and (min-width: 769px) {
      .news-item-arrow {
        width: 27.6px;
        height: 27.6px; } }
    .news-item-arrow svg {
      width: 17px; }
      @media not screen and (min-width: 769px) {
        .news-item-arrow svg {
          width: 10.2px; } }
      .news-item-arrow svg path {
        transition: 0.3s fill; }

/* -------------------------
	ページネーション
------------------------- */
.wp-pagenavi {
  margin-top: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative; }
  @media not screen and (min-width: 769px) {
    .wp-pagenavi {
      margin-top: 44px; } }
  .wp-pagenavi .page, .wp-pagenavi .current {
    font-family: "Arimo", sans-serif;
    font-size: 28px;
    margin: 0 46px; }
    @media not screen and (min-width: 950px) {
      .wp-pagenavi .page, .wp-pagenavi .current {
        margin: 0 23px; } }
    @media not screen and (min-width: 769px) {
      .wp-pagenavi .page, .wp-pagenavi .current {
        font-size: 18px; } }
    @media not screen and (min-width: 577px) {
      .wp-pagenavi .page, .wp-pagenavi .current {
        margin: 0 5vw; } }
  .wp-pagenavi .page {
    color: #fff;
    transition: 0.3s color; }
    @media (hover: hover) and (pointer: fine) {
      .wp-pagenavi .page {
        cursor: pointer; }
        .wp-pagenavi .page:hover {
          color: #baff00; } }
  .wp-pagenavi .current {
    color: #7a7a7a; }
  .wp-pagenavi .extend {
    color: #fff; }
  .wp-pagenavi svg {
    display: block;
    width: 22px;
    height: auto; }
    @media not screen and (min-width: 769px) {
      .wp-pagenavi svg {
        width: 15px; } }
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    position: absolute;
    top: 50%; }
    @media (hover: hover) and (pointer: fine) {
      .wp-pagenavi .previouspostslink,
      .wp-pagenavi .nextpostslink {
        cursor: pointer; }
        .wp-pagenavi .previouspostslink:hover svg,
        .wp-pagenavi .nextpostslink:hover svg {
          -webkit-transform: translateX(-15%);
                  transform: translateX(-15%); } }
    .wp-pagenavi .previouspostslink svg,
    .wp-pagenavi .nextpostslink svg {
      transition: 0.3s -webkit-transform;
      transition: 0.3s transform;
      transition: 0.3s transform, 0.3s -webkit-transform; }
  .wp-pagenavi .previouspostslink {
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%); }
  .wp-pagenavi .nextpostslink {
    right: 0;
    -webkit-transform: rotate(180deg) translate(0, 50%);
            transform: rotate(180deg) translate(0, 50%); }

.news-single-head {
  color: #fff;
  padding-top: 75px; }
  @media not screen and (min-width: 769px) {
    .news-single-head {
      padding-top: 37.5px; } }

.news-single-title {
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: 36px;
  font-weight: 500;
  line-height: 1.3;
  padding-top: 0.4em; }
  @media not screen and (min-width: 769px) {
    .news-single-title {
      font-size: 19px; } }

.news-single-content {
  color: #fff;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: 18.72px;
  line-height: 1.35;
  padding: 2em 0 4em;
  border-top: solid 1px #646464;
  border-bottom: solid 1px #646464; }
  @media not screen and (min-width: 769px) {
    .news-single-content {
      font-size: 13px; } }
  [data-release="1"] .news-single-content-body {
    margin-top: 2.5em; }
  .news-single-content p, .news-single-content a {
    word-break: break-all; }
  .news-single-content a {
    color: inherit;
    text-decoration: underline; }
  .news-single-content img {
    height: auto;
    max-width: 100%; }
  .news-single-content iframe {
    max-width: 100%; }
  .news-single-content .aligncenter {
    display: block;
    margin-right: auto;
    margin-left: auto; }
  .news-single-content .alignright {
    float: right;
    margin-left: 1em; }
  .news-single-content .alignleft {
    float: left;
    margin-right: 1em; }

.news-single-release-image {
  max-width: 400px;
  margin: 0 auto;
  text-align: center; }
  @media not screen and (min-width: 769px) {
    .news-single-release-image {
      max-width: 288px;
      width: 60.60606%; } }

.news-single-release-txt {
  text-align: center; }

.news-single-release-title {
  padding: 1em 0; }

.news-single-release-linkWrp {
  margin: 1.5em auto 0;
  max-width: 441px; }
  @media not screen and (min-width: 769px) {
    .news-single-release-linkWrp {
      max-width: 352.8px;
      width: 74.24242%; } }
  .news-single-release-linkWrp:first-of-type {
    margin-top: 2.25em; }
  .news-single-release-linkWrp:last-of-type {
    margin-bottom: 2.5em; }

.news-single-release-link {
  display: block;
  border: solid 1px rgba(186, 255, 0, 0.4);
  text-align: center;
  padding: 1.3em 0 1.2em;
  position: relative;
  transition: 0.3s background-color;
  text-decoration: none !important; }
  @media (hover: hover) and (pointer: fine) {
    .news-single-release-link {
      cursor: pointer; }
      .news-single-release-link:hover {
        background-color: #baff00; }
        .news-single-release-link:hover .news-single-release-link-txt {
          color: #000; }
        .news-single-release-link:hover .news-single-release-link-vignette:first-of-type::before {
          -webkit-transform: translate(-90%, -90%);
                  transform: translate(-90%, -90%); }
        .news-single-release-link:hover .news-single-release-link-vignette:first-of-type::after {
          -webkit-transform: translate(90%, -90%);
                  transform: translate(90%, -90%); }
        .news-single-release-link:hover .news-single-release-link-vignette:last-of-type::before {
          -webkit-transform: translate(-90%, 90%);
                  transform: translate(-90%, 90%); }
        .news-single-release-link:hover .news-single-release-link-vignette:last-of-type::after {
          -webkit-transform: translate(90%, 90%);
                  transform: translate(90%, 90%); } }
  .news-single-release-link-txt {
    color: #baff00;
    transition: 0.3s color; }
  .news-single-release-link-vignette {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 10px;
    pointer-events: none; }
    .news-single-release-link-vignette:first-of-type {
      top: 0; }
      .news-single-release-link-vignette:first-of-type::before, .news-single-release-link-vignette:first-of-type::after {
        top: 0;
        border-top: solid; }
    .news-single-release-link-vignette:last-of-type {
      bottom: 0; }
      .news-single-release-link-vignette:last-of-type::before, .news-single-release-link-vignette:last-of-type::after {
        bottom: 0;
        border-bottom: solid; }
    .news-single-release-link-vignette::before, .news-single-release-link-vignette::after {
      content: '';
      display: block;
      position: absolute;
      width: 10px;
      height: 100%;
      border-width: 4px;
      color: #baff00;
      transition: 0.3s -webkit-transform;
      transition: 0.3s transform;
      transition: 0.3s transform, 0.3s -webkit-transform; }
    .news-single-release-link-vignette::before {
      left: 0;
      border-left: solid; }
    .news-single-release-link-vignette::after {
      right: 0;
      border-right: solid; }

.news-single-navi {
  margin-top: 46px; }
  @media not screen and (min-width: 769px) {
    .news-single-navi {
      margin-top: 23px; } }
  .news-single-navi-list {
    display: flex;
    justify-content: center;
    position: relative; }
  .news-single-navi-item[data-type="prev"], .news-single-navi-item[data-type="next"] {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .news-single-navi-item[data-type="prev"] {
    left: 0; }
  .news-single-navi-item[data-type="next"] {
    right: 0; }
  .news-single-navi-link {
    display: block;
    color: #fff;
    font-family: "Arimo", sans-serif;
    font-size: 20px;
    transition: 0.3s color; }
    @media (hover: hover) and (pointer: fine) {
      .news-single-navi-link {
        cursor: pointer; }
        .news-single-navi-link:hover {
          color: #baff00; }
          .news-single-navi-link:hover svg {
            -webkit-transform: translateX(-15%);
                    transform: translateX(-15%); }
            [data-type="next"] .news-single-navi-link:hover svg {
              -webkit-transform: rotate(180deg) translateX(-15%);
                      transform: rotate(180deg) translateX(-15%); } }
    @media not screen and (min-width: 769px) {
      .news-single-navi-link {
        font-size: 16px; } }
    .news-single-navi-link svg {
      width: 22px;
      height: auto;
      transition: 0.3s -webkit-transform;
      transition: 0.3s transform;
      transition: 0.3s transform, 0.3s -webkit-transform; }
      [data-type="next"] .news-single-navi-link svg {
        -webkit-transform: rotate(180deg);
                transform: rotate(180deg); }
      @media not screen and (min-width: 769px) {
        .news-single-navi-link svg {
          width: 15px; } }
    .news-single-navi-link span {
      position: relative;
      top: -0.75em;
      margin: 0 0.5em; }
      @media not screen and (min-width: 769px) {
        .news-single-navi-link span {
          top: -0.5em; } }

.about-text-slide {
  display: flex;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  padding-top: 260px; }
  @media not screen and (min-width: 950px) {
    .about-text-slide {
      padding-top: 182px; } }
  @media not screen and (min-width: 769px) {
    .about-text-slide {
      padding-top: 149.5px; } }
  .about-text-slide svg {
    flex-shrink: 0;
    will-change: transform;
    width: 2613.6px;
    -webkit-animation: ticker 45s linear infinite;
            animation: ticker 45s linear infinite;
    margin-right: 150px; }

@-webkit-keyframes ticker {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(calc(-100% - 150px), 0);
            transform: translate(calc(-100% - 150px), 0); } }

@keyframes ticker {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(calc(-100% - 150px), 0);
            transform: translate(calc(-100% - 150px), 0); } }
    @media not screen and (min-width: 769px) {
      .about-text-slide svg {
        width: 1452px;
        height: auto;
        margin-right: 75px;
        -webkit-animation: spTicker 45s linear infinite;
                animation: spTicker 45s linear infinite; }
      @-webkit-keyframes spTicker {
        0% {
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0); }
        100% {
          -webkit-transform: translate(calc(-100% - 37.5px), 0);
                  transform: translate(calc(-100% - 37.5px), 0); } }
      @keyframes spTicker {
        0% {
          -webkit-transform: translate(0, 0);
                  transform: translate(0, 0); }
        100% {
          -webkit-transform: translate(calc(-100% - 37.5px), 0);
                  transform: translate(calc(-100% - 37.5px), 0); } } }

.about {
  padding-top: 100px;
  color: #fff; }
  @media not screen and (min-width: 769px) {
    .about {
      padding-top: 50px; } }
  .about-lead {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-weight: 600;
    font-size: 36px;
    letter-spacing: 0.12em;
    line-height: 1.77; }
    @media not screen and (min-width: 769px) {
      .about-lead {
        font-size: calc(min(40px * 0.5, 5.33333vw)); } }
    .about-lead span {
      color: #baff00;
      margin: 0 -0.08em; }
      .about-lead span:first-of-type {
        margin-left: -0.5em; }
  .about-txt {
    font-family: "IBM Plex Sans JP", sans-serif;
    font-size: 20.16px;
    letter-spacing: 0.08em;
    line-height: 1.93;
    margin-top: 3em; }
    @media not screen and (min-width: 769px) {
      .about-txt {
        font-size: calc(min(28px * 0.5, 3.73333vw));
        margin-top: 2em; } }
    .about-txt a {
      color: #baff00;
      text-decoration: underline; }

.about-bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  pointer-events: none;
  touch-action: none; }
  .about-bg-blur {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    pointer-events: none;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: 30s rotate-anim infinite linear;
            animation: 30s rotate-anim infinite linear;
    will-change: transform; }
    @media only screen and (max-width: 950px) {
      .about-bg-blur {
        width: 200%; } }

@-webkit-keyframes rotate-anim {
  0% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(0) scale(1) translateX(60%);
            transform: translate(-50%, -50%) rotate(0) scale(1) translateX(60%); }
  25% {
    opacity: 0.3;
    -webkit-transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(60%);
            transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(60%); }
  50% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(60%);
            transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(60%); }
  75% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(270deg) scale(1.5) translateX(60%);
            transform: translate(-50%, -50%) rotate(270deg) scale(1.5) translateX(60%); }
  100% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(60%);
            transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(60%); } }

@keyframes rotate-anim {
  0% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(0) scale(1) translateX(60%);
            transform: translate(-50%, -50%) rotate(0) scale(1) translateX(60%); }
  25% {
    opacity: 0.3;
    -webkit-transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(60%);
            transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(60%); }
  50% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(60%);
            transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(60%); }
  75% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(270deg) scale(1.5) translateX(60%);
            transform: translate(-50%, -50%) rotate(270deg) scale(1.5) translateX(60%); }
  100% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(60%);
            transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(60%); } }
    .about-bg-blur[data-type='2'] {
      -webkit-animation: 30s rotate-anim-2 infinite linear;
              animation: 30s rotate-anim-2 infinite linear; }

@-webkit-keyframes rotate-anim-2 {
  0% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(50%); }
  25% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(270deg) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(270deg) scale(1) translateX(50%); }
  50% {
    opacity: 0.18;
    -webkit-transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(50%);
            transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(50%); }
  75% {
    opacity: 0.12;
    -webkit-transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(50%);
            transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(50%); }
  100% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(0) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(0) scale(1) translateX(50%); } }

@keyframes rotate-anim-2 {
  0% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(360deg) scale(1) translateX(50%); }
  25% {
    opacity: 0.1;
    -webkit-transform: translate(-50%, -50%) rotate(270deg) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(270deg) scale(1) translateX(50%); }
  50% {
    opacity: 0.18;
    -webkit-transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(50%);
            transform: translate(-50%, -50%) rotate(180deg) scale(1.2) translateX(50%); }
  75% {
    opacity: 0.12;
    -webkit-transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(50%);
            transform: translate(-50%, -50%) rotate(90deg) scale(0.8) translateX(50%); }
  100% {
    opacity: 0.2;
    -webkit-transform: translate(-50%, -50%) rotate(0) scale(1) translateX(50%);
            transform: translate(-50%, -50%) rotate(0) scale(1) translateX(50%); } }
  .about-bg img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

/*---------------------------
	イベントのベース
---------------------------*/
.event {
  background: #000;
  padding-top: 100px; }
  @media only screen and (max-width: 950px) {
    .event {
      padding-top: 75px; } }

html.eventPage,
.eventPage body {
  height: auto;
  overflow: auto; }

html.eventPage .header {
  background: #000; }

/*---------------------------
// イベント共通
---------------------------*/
@media only screen and (min-width: 951px) {
  .event-section {
    padding: 80px 0 100px; } }

@media only screen and (max-width: 950px) {
  .event-section {
    padding: 40px 0; } }

.event-section-title {
  color: #fff;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  @media only screen and (min-width: 951px) {
    .event-section-title {
      font-size: 90px;
      margin-bottom: 40px; } }
  @media only screen and (max-width: 950px) {
    .event-section-title {
      font-size: 40px;
      margin-bottom: 25px; } }
  .event-section-title-en {
    font-weight: normal;
    font-family: "Montserrat", sans-serif; }
    @media only screen and (min-width: 951px) {
      .event-section-title-en {
        font-weight: bold; } }

@media only screen and (min-width: 951px) {
  .event-section-contents[data-type="border-r"] {
    padding: 35px; } }

@media only screen and (max-width: 950px) {
  .event-section-contents[data-type="border-r"] {
    border-radius: 10px;
    padding: 30px 15px;
    border: 1px solid #fff; } }

.event-inner {
  width: 90%;
  max-width: 1175px;
  margin: 0 auto;
  max-width: 900px; }

/*---------------------------
// キービジュアル
---------------------------*/
.event-kv {
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background: no-repeat center center;
  background-size: cover; }
  .event-kv img {
    display: block;
    width: 90%;
    max-width: 1175px;
    margin: 0 auto;
    width: 100%;
    max-width: 900px;
    pointer-events: none; }

/*---------------------------
// ナビゲーション
---------------------------*/
.event-nav {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .event-nav-list {
    width: 90%;
    max-width: 1175px;
    margin: 0 auto;
    display: flex;
    justify-content: center; }
    @media only screen and (min-width: 951px) {
      .event-nav-list {
        padding: 20px 0; } }
    @media only screen and (max-width: 950px) {
      .event-nav-list {
        padding: 10px 0;
        flex-wrap: wrap; } }
  .event-nav-item {
    border-right: 1px solid #fff; }
    .event-nav-item:last-child {
      border-right: 0px; }
    @media only screen and (max-width: 950px) {
      .event-nav-item {
        margin: 8px 0;
        width: 33.33%; }
        .event-nav-item:nth-child(3) {
          border-right: 0px; } }
    .event-nav-item-link {
      display: block;
      color: #fff;
      text-align: center; }
      @media only screen and (min-width: 951px) {
        .event-nav-item-link {
          font-size: 25px;
          padding: 5px 20px; } }
      @media only screen and (max-width: 950px) {
        .event-nav-item-link {
          font-size: 18px;
          padding: 3px 10px; } }
      .event-nav-item-link-en, .event-nav-item-link-ja {
        display: block;
        line-height: 1; }
      .event-nav-item-link-en {
        font-family: "Montserrat", sans-serif; }
      .event-nav-item-link-ja {
        padding-top: 2px;
        font-size: 45%;
        letter-spacing: 1px; }
      .event-nav-item-link.e_comingsoon {
        pointer-events: none;
        opacity: 0.5; }

/*---------------------------
// About
---------------------------*/
.event-about {
  background: #1d1d1d; }
  @media only screen and (min-width: 951px) {
    .event-about {
      text-align: center; } }
  .event-about-title {
    color: #fff;
    margin-bottom: 30px;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    @media only screen and (min-width: 951px) {
      .event-about-title {
        font-size: 30px; } }
    @media only screen and (max-width: 950px) {
      .event-about-title {
        line-height: 1.4; } }
  .event-about-text {
    color: #fff;
    line-height: 1.9; }
    @media only screen and (min-width: 951px) {
      .event-about-text {
        font-size: 20px; } }
    @media only screen and (max-width: 950px) {
      .event-about-text {
        font-size: 13px;
        font-size: 1.6; } }

/*---------------------------
// OUTLINE
---------------------------*/
.event-outline-title {
  color: #fff;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  @media only screen and (min-width: 951px) {
    .event-outline-title {
      font-size: 26px;
      margin-top: 10px;
      margin-bottom: 15px; } }
  @media only screen and (max-width: 950px) {
    .event-outline-title {
      line-height: 1.4;
      margin-bottom: 15px; } }
  .event-outline-title span {
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 1px solid #fff; }

.event-outline-item {
  padding: 10px 0;
  display: flex;
  max-width: 850px;
  margin: 0 auto; }
  .event-outline-item dt, .event-outline-item dd {
    color: #fff;
    line-height: 1.8;
    font-size: 20px; }
    @media only screen and (max-width: 950px) {
      .event-outline-item dt, .event-outline-item dd {
        font-size: 13px; } }
  .event-outline-item dt {
    font-weight: bold;
    text-align: right; }
    @media only screen and (min-width: 951px) {
      .event-outline-item dt {
        width: 35%;
        max-width: 300px; }
        .event-outline-item dt span {
          display: inline-block;
          padding: 5px;
          line-height: 1;
          background: #2a2a2a; } }
    @media only screen and (max-width: 950px) {
      .event-outline-item dt {
        width: 25%; } }
  .event-outline-item dd {
    flex: 1; }
    @media only screen and (min-width: 951px) {
      .event-outline-item dd {
        padding-left: 30px; } }
    @media only screen and (max-width: 950px) {
      .event-outline-item dd {
        padding-left: 15px; } }

.event-outline-note {
  color: #fff;
  text-align: center;
  padding: 20px 0 50px; }
  @media only screen and (min-width: 951px) {
    .event-outline-note {
      font-size: 20px; } }

.event-outline-attention {
  line-height: 1.6;
  color: #666; }
  @media only screen and (min-width: 951px) {
    .event-outline-attention {
      margin-top: 40px;
      font-size: 16px; } }
  @media only screen and (max-width: 950px) {
    .event-outline-attention {
      margin-top: 30px;
      font-size: 10px; } }
  .event-outline-attention li {
    position: relative;
    margin-left: 10px; }
    .event-outline-attention li:before {
      position: absolute;
      right: calc(100% + 3px);
      top: 0;
      content: "※"; }

/*---------------------------
// TICKETS
---------------------------*/
.event-ticket {
  background: #171717; }
  .event-ticket-title {
    color: #fff; }
  @media only screen and (min-width: 951px) {
    .event-ticket .event-outline-title {
      margin-bottom: 55px; }
    .event-ticket .event-outline-item dt span {
      background-color: #000000; } }

#aof {
  /*---------------------------
	共通スタイル
  ---------------------------*/
  /*---------------------------
	about
  ---------------------------*/
  /*---------------------------
	what's?
  ---------------------------*/
  /*---------------------------
	illustrated
  ---------------------------*/
  /*---------------------------
	outline
  ---------------------------*/
  /*#outline*/
  /*---------------------------
  floor
  ---------------------------*/
  /*#floor*/
  /*---------------------------
  cd
  ---------------------------*/
  /*---------------------------
  goods
  ---------------------------*/
  /*---------------------------
  attention
  ---------------------------*/ }
  @media only screen and (max-width: 950px) {
    #aof [data-media="pc"] {
      display: none; } }
  @media only screen and (min-width: 951px) {
    #aof [data-media="sp"] {
      display: none; } }
  #aof main {
    position: relative;
    display: block; }
  #aof .event-section {
    position: relative; }
    #aof .event-section-container {
      max-width: 900px;
      margin: 0 auto;
      box-sizing: border-box; }
      @media only screen and (min-width: 951px) {
        #aof .event-section-container {
          padding: 0 50px; } }
      @media only screen and (max-width: 950px) {
        #aof .event-section-container {
          padding: 0 5.33333%; } }
    #aof .event-section-title {
      line-height: 0;
      margin: 0 auto; }
  #aof .event-nav {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.8); }
    #aof .event-nav[data-fixed="ture"] {
      position: fixed; }
      @media only screen and (min-width: 951px) {
        #aof .event-nav[data-fixed="ture"] {
          top: 94px; } }
      @media only screen and (max-width: 950px) {
        #aof .event-nav[data-fixed="ture"] {
          top: 74px; } }
    @media only screen and (min-width: 951px) {
      #aof .event-nav {
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        border-top: solid 1px #fff;
        border-bottom: solid 1px #fff; } }
    #aof .event-nav-list {
      width: 100%;
      padding: 0;
      margin: 0; }
      @media only screen and (min-width: 951px) {
        #aof .event-nav-list {
          width: 900px;
          margin: 0 auto; } }
    #aof .event-nav-item {
      margin: 0;
      padding: 0;
      border-bottom: solid 1px #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      background-image: url(../assets/img/event/aof/nav/pt.png);
      background-repeat: repeat;
      background-size: 16px 16px; }
      @media only screen and (min-width: 951px) {
        #aof .event-nav-item {
          width: 16.66%;
          border-top: none;
          border-bottom: none; } }
      @media only screen and (min-width: 951px) {
        #aof .event-nav-item:first-of-type {
          border-left: 1px solid #fff; } }
      @media only screen and (min-width: 951px) {
        #aof .event-nav-item:last-of-type {
          border-right: 1px solid #fff; } }
      @media only screen and (max-width: 950px) {
        #aof .event-nav-item:nth-of-type(-n+3) {
          border-top: 1px solid #fff; } }
      #aof .event-nav-item-link {
        width: 100%;
        font-size: 14px;
        display: block;
        padding: 12% 0;
        font-weight: 700; }
        @media only screen and (min-width: 951px) {
          #aof .event-nav-item-link {
            padding: 30px 0; } }
  #aof #about {
    position: relative;
    z-index: 0;
    background-color: #000;
    background-image: url(../assets/img/event/aof/about/sp-bg.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat; }
    @media only screen and (min-width: 951px) {
      #aof #about {
        padding: 310px 0 80px; } }
    @media only screen and (max-width: 950px) {
      #aof #about {
        padding: 53.33333% 0 21.33333%; } }
    #aof #about .event-section-container {
      position: relative; }
      #aof #about .event-section-container::before {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        top: -13.5%;
        background-image: url(../assets/img/event/aof/about/bg-text.png); }
        @media only screen and (min-width: 951px) {
          #aof #about .event-section-container::before {
            left: 165px;
            width: 800px;
            padding-bottom: 1113px;
            background-size: 70% auto; } }
        @media only screen and (max-width: 950px) {
          #aof #about .event-section-container::before {
            left: 5.33333%;
            width: 89.73333%;
            padding-bottom: 124.8%; } }
    #aof #about .event-section-title {
      width: 27.16418%; }
    #aof #about .event-about-caption {
      text-align: center;
      font-size: 18px;
      font-family: "Noto Sans JP", sans-serif;
      color: #fff;
      line-height: 1.7; }
      @media only screen and (min-width: 951px) {
        #aof #about .event-about-caption {
          margin: 80px auto 110px;
          font-size: 26px; } }
      @media only screen and (max-width: 950px) {
        #aof #about .event-about-caption {
          margin: 10.66667% auto 14.66667%; } }
    #aof #about .event-about-tmb {
      width: 77.86667%;
      margin: 0 auto; }
      @media only screen and (min-width: 951px) {
        #aof #about .event-about-tmb {
          max-width: 900px; } }
      #aof #about .event-about-tmb-caption {
        margin-top: 6.84932%;
        color: #fff; }
        @media only screen and (min-width: 951px) {
          #aof #about .event-about-tmb-caption {
            margin-top: 40px; } }
        #aof #about .event-about-tmb-caption-title {
          font-family: "Montserrat", sans-serif;
          font-weight: 700;
          font-size: 14px;
          line-height: 1.5; }
          @media only screen and (min-width: 951px) {
            #aof #about .event-about-tmb-caption-title {
              font-size: 22px; } }
        #aof #about .event-about-tmb-caption-text {
          margin-top: 5.13699%;
          font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
          font-size: 16px;
          line-height: 1.5; }
          @media only screen and (min-width: 951px) {
            #aof #about .event-about-tmb-caption-text {
              margin-top: 20px;
              font-size: 20px; } }
  @media only screen and (min-width: 951px) {
    #aof #what {
      padding: 80px 0; } }
  @media only screen and (max-width: 950px) {
    #aof #what {
      padding: 18% 0 20.66667%; } }
  #aof #what .event-section-title {
    width: 78.65672%;
    margin: 0 0 5.97015% 0; }
  #aof #what .event-what-mov {
    cursor: pointer;
    position: relative;
    width: 100%;
    margin: 0 auto; }
    @media only screen and (min-width: 951px) {
      #aof #what .event-what-mov {
        max-width: 900px; } }
    #aof #what .event-what-mov img {
      width: 100%; }
    #aof #what .event-what-mov:hover::after {
      -webkit-animation-play-state: running;
              animation-play-state: running; }
    #aof #what .event-what-mov::before {
      content: "";
      position: absolute;
      display: block;
      background-repeat: no-repeat;
      background-size: 100% 100%;
      top: 50%;
      left: 51%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      width: 6%;
      padding-bottom: 6.93333%;
      background-image: url(../assets/img/event/aof/what/triangle.png); }
    #aof #what .event-what-mov::after {
      content: "";
      position: absolute;
      display: block;
      background-repeat: no-repeat;
      background-size: 100% 100%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      width: 22.8%;
      padding-bottom: 22.8%;
      background-image: url(../assets/img/event/aof/what/circle.png);
      cursor: pointer;
      -webkit-animation: rotate 3s linear paused infinite;
              animation: rotate 3s linear paused infinite; }

@-webkit-keyframes rotate {
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg); } }

@keyframes rotate {
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg); } }
    #aof #what .event-what-mov-caption {
      margin-top: 5.97015%;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-weight: 700;
      color: #d48fdb;
      line-height: 1.5;
      font-size: 16px; }
      @media only screen and (min-width: 951px) {
        #aof #what .event-what-mov-caption {
          font-size: 20px; } }
  #aof #illustrator {
    background-image: url(../assets/img/event/aof/illustrator/illustrator-bg-pc.jpg);
    background-repeat: no-repeat;
    background-size: cover; }
    @media only screen and (max-width: 950px) {
      #aof #illustrator {
        padding: 0 0 17.33333%;
        background-image: url(../assets/img/event/aof/illustrator/illustrator-bg.jpg); } }
    #aof #illustrator .event-illustrator-tmb {
      padding-top: 1.49254%;
      width: 75.8209%; }
      #aof #illustrator .event-illustrator-tmb > img {
        margin-left: -6.71642%; }
      @media only screen and (min-width: 951px) {
        #aof #illustrator .event-illustrator-tmb-caption img {
          margin-top: -90px;
          margin-left: -150px; } }
      @media only screen and (max-width: 950px) {
        #aof #illustrator .event-illustrator-tmb-caption {
          margin-top: -16.92913%; } }
    #aof #illustrator .event-illustrator-text {
      margin-top: 5.97015%;
      color: #fff;
      line-height: 1.7;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; }
      @media only screen and (min-width: 951px) {
        #aof #illustrator .event-illustrator-text {
          font-size: 20px; } }
      @media only screen and (max-width: 950px) {
        #aof #illustrator .event-illustrator-text {
          font-size: 15px; } }
  #aof #outline {
    background-image: url(../assets/img/event/aof/outline/sp-bg.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    /*---------------------------
    special act
    ---------------------------*/ }
    @media only screen and (min-width: 951px) {
      #aof #outline {
        padding: 140px 0 0; } }
    @media only screen and (max-width: 950px) {
      #aof #outline {
        padding-top: 22%; } }
    #aof #outline .event-section-container {
      box-sizing: border-box;
      border: solid 4px #fff;
      padding: 0 5.28701%; }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-section-container {
          margin: 0 5.33333%; } }
    #aof #outline .event-section-title {
      width: 68.32192%;
      margin-top: -7.53425%; }
    #aof #outline .event-outline-content-definition-list {
      margin: 17.12329% 0 8.56164%;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-weight: 700; }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-outline-content-definition-list {
          margin: 40px 0; } }
      #aof #outline .event-outline-content-definition-list-term {
        display: inline-block;
        background-color: #fff;
        padding: 1.36986% 0.85616%;
        font-size: 14px;
        margin-bottom: 5.13699%; }
        @media only screen and (min-width: 951px) {
          #aof #outline .event-outline-content-definition-list-term {
            margin-bottom: 20px;
            font-size: 20px; } }
      #aof #outline .event-outline-content-definition-list-description {
        color: #fff;
        font-size: 16px;
        margin-bottom: 5.13699%;
        line-height: 1.7; }
        @media only screen and (min-width: 951px) {
          #aof #outline .event-outline-content-definition-list-description {
            margin-bottom: 40px;
            font-size: 20px; } }
        #aof #outline .event-outline-content-definition-list-description:last-of-type {
          margin-bottom: 0; }
    #aof #outline .event-outline-content-title {
      font-size: 16px;
      text-align: center;
      margin: 0 auto 6.84932%;
      color: #2fd6e8; }
      @media only screen and (min-width: 951px) {
        #aof #outline .event-outline-content-title {
          font-size: 22px;
          display: flex;
          justify-content: center;
          margin: 0 auto 40px; } }
    #aof #outline .event-outline-content-text {
      color: #fff;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.7; }
      @media only screen and (min-width: 951px) {
        #aof #outline .event-outline-content-text {
          margin-bottom: 40px;
          font-size: 20px; } }
    @media only screen and (min-width: 951px) {
      #aof #outline .event-outline-content-tmb {
        width: 90%;
        margin: 0 auto; } }
    @media only screen and (min-width: 951px) {
      #aof #outline .event-outline-content-tmb img {
        margin-left: 20px; } }
    #aof #outline .event-outline-content-tmb-caption {
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-weight: 700;
      color: #fff;
      line-height: 1.7;
      font-size: 14px; }
      @media only screen and (min-width: 951px) {
        #aof #outline .event-outline-content-tmb-caption {
          font-size: 20px; } }
    #aof #outline .event-outline-content-btn-jp {
      display: flex;
      justify-content: space-between; }
      @media only screen and (min-width: 951px) {
        #aof #outline .event-outline-content-btn-jp {
          width: 100%;
          margin: 0 auto 80px; } }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-outline-content-btn-jp {
          flex-direction: column;
          margin-bottom: 13.69863%; } }
    #aof #outline .event-outline-content-btn-item {
      position: relative;
      width: 48%; }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-outline-content-btn-item {
          width: 100%; } }
      #aof #outline .event-outline-content-btn-item img {
        width: 100%; }
      #aof #outline .event-outline-content-btn-item:first-of-type::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        width: 4.96575%;
        padding-bottom: 4.28082%;
        top: 50%;
        right: 10%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        background-image: url(../assets/img/event/aof/outline/content-btn-arrow.png);
        transition: all ease 0.5s; }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-outline-content-btn-item:last-of-type {
          margin-top: 6.84932%; } }
      #aof #outline .event-outline-content-btn-item:last-of-type::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        width: 4.96575%;
        padding-bottom: 4.28082%;
        top: 50%;
        right: 10%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        background-image: url(../assets/img/event/aof/outline/content-btn-arrow2.png);
        transition: all ease 0.5s; }
      #aof #outline .event-outline-content-btn-item:hover::after {
        right: 5%; }
    #aof #outline .event-outline-content-btn-en {
      position: relative; }
      @media only screen and (min-width: 951px) {
        #aof #outline .event-outline-content-btn-en {
          width: 60%;
          margin: 0 auto 80px; } }
      @media only screen and (max-width: 950px) {
        #aof #outline .event-outline-content-btn-en {
          margin-bottom: 13.69863%; } }
      #aof #outline .event-outline-content-btn-en img {
        width: 100%; }
      #aof #outline .event-outline-content-btn-en::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        width: 4.96575%;
        padding-bottom: 4.28082%;
        top: 50%;
        right: 10%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        background-image: url(../assets/img/event/aof/outline/content-btn-arrow.png);
        transition: all ease 0.5s; }
      #aof #outline .event-outline-content-btn-en:hover::after {
        right: 5%; }
      #aof #outline .event-outline-content-btn-en a {
        display: block; }
    @media only screen and (min-width: 951px) {
      #aof #outline #special {
        margin-top: 80px;
        padding-bottom: 80px; } }
    @media only screen and (max-width: 950px) {
      #aof #outline #special {
        margin-top: 17.12329%;
        padding-bottom: 17.12329%; } }
    #aof #outline #special .event-section-title {
      width: 77.22603%;
      margin-top: 0; }
    #aof #outline #special .event-special-content-text {
      margin: 5.13699% 0 2.56849%;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-size: 12px;
      font-weight: 400;
      text-align: right;
      color: #fff; }
      @media only screen and (min-width: 951px) {
        #aof #outline #special .event-special-content-text {
          font-size: 16px;
          margin: 30px 0 10px; } }
    @media only screen and (min-width: 951px) {
      #aof #outline #special .event-special-content-tmb img {
        width: 100%; } }
    #aof #outline #special .event-special-content-tmb-caption {
      margin-top: 6.84932%;
      color: #fff;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      font-weight: 700;
      font-size: 14px;
      line-height: 1.7; }
      @media only screen and (min-width: 951px) {
        #aof #outline #special .event-special-content-tmb-caption {
          margin-top: 40px;
          font-size: 20px; } }
  @media only screen and (min-width: 951px) {
    #aof #floor {
      padding: 140px 0 0; } }
  @media only screen and (max-width: 950px) {
    #aof #floor {
      padding: 13.33333% 0 0; } }
  #aof #floor .floor-active {
    display: block !important; }
  #aof #floor .event-section-title {
    width: 47.16418%; }
  #aof #floor .event-floor-content {
    margin-top: 10.66667%;
    /*layout*/
    /*game layout*/
    /*virtual layout*/
    /*akibapop layout*/ }
    @media only screen and (min-width: 951px) {
      #aof #floor .event-floor-content {
        max-width: 900px;
        margin: 80px auto; } }
    #aof #floor .event-floor-content-tab-list {
      display: flex; }
      #aof #floor .event-floor-content-tab-list-item {
        width: 25%;
        color: #fff;
        text-align: center;
        cursor: pointer; }
        @media only screen and (max-width: 950px) {
          #aof #floor .event-floor-content-tab-list-item {
            letter-spacing: -0.05em; } }
        #aof #floor .event-floor-content-tab-list-item a {
          display: block;
          font-family: "Lexend Deca", sans-serif;
          font-size: 14px;
          font-weight: 700;
          padding: 21.39037% 0;
          transition: all 0.3s ease-in-out; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-tab-list-item a {
              font-size: 22px;
              padding: 30px 0; } }
          #aof #floor .event-floor-content-tab-list-item a:hover {
            background-color: #000; }
      #aof #floor .event-floor-content-tab-list [data-floor-tab="character"] {
        color: #fff;
        background-color: #ff0000; }
        #aof #floor .event-floor-content-tab-list [data-floor-tab="character"] a:hover {
          color: #ff0000; }
      #aof #floor .event-floor-content-tab-list [data-floor-tab="game"] {
        color: #000;
        background-color: #00ff00; }
        #aof #floor .event-floor-content-tab-list [data-floor-tab="game"] a:hover {
          color: #00ff00; }
      #aof #floor .event-floor-content-tab-list [data-floor-tab="virtual"] {
        color: #000;
        background-color: #ffff00; }
        #aof #floor .event-floor-content-tab-list [data-floor-tab="virtual"] a:hover {
          color: #ffff00; }
      #aof #floor .event-floor-content-tab-list [data-floor-tab="akibapop"] {
        color: #fff;
        background-color: #0000ff; }
        #aof #floor .event-floor-content-tab-list [data-floor-tab="akibapop"] a:hover {
          color: #0000ff; }
    #aof #floor .event-floor-content-wrapper {
      display: none; }
      @media only screen and (max-width: 950px) {
        #aof #floor .event-floor-content-wrapper {
          padding: 8% 0 16%; } }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-wrapper {
          padding: 50px 0; } }
      #aof #floor .event-floor-content-wrapper .event-section-container {
        padding: 10.13333% 5.33333% 2.66667%;
        margin: 0 5.33333%;
        background-color: #000; }
    #aof #floor .event-floor-content-title {
      text-align: center;
      font-size: 28px;
      font-family: "Lexend Deca", sans-serif;
      font-weight: 400;
      margin-bottom: 8.47458%; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-title {
          font-size: 56px; } }
    #aof #floor .event-floor-content-sponsor {
      display: flex;
      justify-content: center;
      align-items: center; }
      #aof #floor .event-floor-content-sponsor-caption {
        font-size: 12px;
        font-family: "Lexend Deca", sans-serif;
        font-weight: 400;
        color: #fff;
        margin-right: 2.0339%; }
      #aof #floor .event-floor-content-sponsor-list {
        position: relative;
        display: flex;
        justify-content: center; }
        #aof #floor .event-floor-content-sponsor-list::before {
          content: "Powered by";
          display: flex;
          align-items: center;
          font-size: 12px;
          font-family: "Lexend Deca", sans-serif;
          font-weight: 400;
          color: #fff;
          padding-right: 5px; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-sponsor-list::before {
              width: 130px;
              font-size: 18px;
              padding-right: 0; } }
        #aof #floor .event-floor-content-sponsor-list-item {
          width: 19.49153%; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-sponsor-list-item:not(:first-of-type) {
              margin-left: 10px; } }
          @media only screen and (max-width: 950px) {
            #aof #floor .event-floor-content-sponsor-list-item:not(:first-of-type) {
              margin-left: 5px; } }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-sponsor-list-item {
              width: 115px; } }
          #aof #floor .event-floor-content-sponsor-list-item img {
            width: 100%; }
    #aof #floor .event-floor-content-genre {
      margin: 8.47458% 0 11.86441%;
      text-align: center; }
      #aof #floor .event-floor-content-genre-caption {
        display: inline-block;
        margin-bottom: 8.47458%;
        border: solid 1px;
        border-radius: 50px;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 400;
        font-size: 12px;
        padding: 2px 1.69492%; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-genre-caption {
            font-size: 18px; } }
      #aof #floor .event-floor-content-genre-text {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-size: 12px;
        letter-spacing: 0.04em; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-genre-text {
            font-size: 18px; } }
      #aof #floor .event-floor-content-genre-description {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-size: 14px;
        line-height: 1.5;
        color: #fff;
        text-align: left; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-genre-description {
            font-size: 18px; } }
    #aof #floor .event-floor-content-artist-title {
      width: 100%;
      position: relative;
      font-size: 18px;
      font-family: "Lexend Deca", sans-serif;
      font-weight: 400;
      color: #fff;
      background-color: #000;
      margin-bottom: 6.77966%; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-artist-title {
          font-size: 26px;
          line-height: 0.6; } }
      #aof #floor .event-floor-content-artist-title::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        width: 63vw;
        height: 18px;
        top: 0;
        right: 0; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-artist-title::after {
            width: 630px; } }
    #aof #floor .event-floor-content-artist-list {
      display: flex;
      flex-wrap: wrap; }
      #aof #floor .event-floor-content-artist-list-item {
        width: 31.35593%;
        margin-bottom: 8.47458%; }
        #aof #floor .event-floor-content-artist-list-item:not(:nth-of-type(3n+1)) {
          margin-left: 2.88136%; }
        #aof #floor .event-floor-content-artist-list-item-tmb-caption {
          font-family: "Noto Sans JP", sans-serif;
          font-size: 12px;
          font-weight: 400;
          color: #fff;
          margin-top: 5px;
          line-height: 1.2; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-artist-list-item-tmb-caption {
              font-size: 18px; } }
        #aof #floor .event-floor-content-artist-list-item-text {
          margin-top: -6.77966%;
          margin-bottom: 8.47458%;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 12px;
          font-weight: 400;
          color: #fff;
          line-height: 1.2; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-artist-list-item-text {
              font-size: 18px;
              margin-top: -55px; } }
    #aof #floor .event-floor-content-artist-pickup-list {
      margin-top: 13.55932%; }
      #aof #floor .event-floor-content-artist-pickup-list-item:last-of-type {
        padding-top: 8.47458%;
        border-top: solid 2px #fff; }
      #aof #floor .event-floor-content-artist-pickup-list-item:not(:first-of-type) {
        margin-top: 8.47458%; }
      #aof #floor .event-floor-content-artist-pickup-list-item-tmb {
        display: flex;
        justify-content: space-between; }
        #aof #floor .event-floor-content-artist-pickup-list-item-tmb-img {
          width: 31.35593%; }
        #aof #floor .event-floor-content-artist-pickup-list-item-tmb-caption {
          width: 65.25424%;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 10px;
          font-weight: 400;
          color: #fff;
          line-height: 1.5;
          display: flex;
          flex-wrap: wrap;
          flex-direction: column;
          justify-content: space-between;
          align-items: flex-start; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-artist-pickup-list-item-tmb-caption {
              font-size: 18px; } }
          #aof #floor .event-floor-content-artist-pickup-list-item-tmb-caption-logo {
            width: 58.44156%;
            align-self: flex-end; }
      #aof #floor .event-floor-content-artist-pickup-list:nth-of-type(2) .event-floor-content-artist-pickup-list-item-tmb-caption-logo {
        width: 62.85714%; }
    #aof #floor .event-floor-content-vj {
      margin-top: 8.47458%;
      font-family: "Lexend Deca", sans-serif;
      font-size: 18px;
      font-weight: 400;
      text-align: center;
      color: #fff; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-vj {
          font-size: 34px; } }
      #aof #floor .event-floor-content-vj-head {
        position: relative;
        display: inline-block;
        margin-right: 8.47458%; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-vj-head {
            margin-right: 50px; } }
        #aof #floor .event-floor-content-vj-head::after {
          content: "";
          position: absolute;
          display: block;
          background-repeat: no-repeat;
          background-size: 100% 100%;
          width: 0;
          height: 0;
          top: 50%;
          right: -100%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          border-style: solid;
          border-width: 9px 0 9px 15.6px; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-vj-head::after {
              border-width: 14px 0 14px 24px; } }
    #aof #floor .event-floor-content-production-list {
      margin-top: 10.16949%; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-production-list {
          margin-top: 40px; } }
      #aof #floor .event-floor-content-production-list-item {
        padding: 6.77966% 5.08475%;
        background: #111111 repeating-linear-gradient(-45deg, #171717 0 4px, transparent 0 9px); }
        #aof #floor .event-floor-content-production-list-item:not(:first-of-type) {
          margin-top: 6.77966%; }
        #aof #floor .event-floor-content-production-list-item-tmb img {
          width: 47.45763%; }
        #aof #floor .event-floor-content-production-list-item-tmb-caption {
          margin-top: 6.77966%;
          color: #fff;
          font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
          font-size: 12px;
          font-weight: 400;
          line-height: 1.5; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-production-list-item-tmb-caption {
              font-size: 18px; } }
          #aof #floor .event-floor-content-production-list-item-tmb-caption-btn {
            width: 71.18644%;
            margin: 6.77966% auto 0;
            border: solid 2px;
            border-radius: 50px; }
            #aof #floor .event-floor-content-production-list-item-tmb-caption-btn a {
              padding: 1.69492% 6.77966%;
              text-align: center;
              display: block;
              font-size: 14px; }
              @media only screen and (min-width: 951px) {
                #aof #floor .event-floor-content-production-list-item-tmb-caption-btn a {
                  font-size: 22px; } }
    #aof #floor .event-floor-content-copy-list {
      margin-top: 13.55932%; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-copy-list {
          margin-top: 40px; } }
      #aof #floor .event-floor-content-copy-list-item {
        color: #fff;
        font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
        font-size: 10px;
        font-weight: 400;
        text-align: center; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-copy-list-item {
            font-size: 16px; } }
        #aof #floor .event-floor-content-copy-list-item:not(:first-of-type) {
          margin-top: 3.38983%; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-copy-list-item:not(:first-of-type) {
              margin-top: 10px; } }
    #aof #floor .event-floor-content-game-title {
      margin-bottom: 10.16949%; }
    #aof #floor .event-floor-content-artist-group {
      position: relative;
      font-size: 14px;
      font-family: "Noto Sans JP", sans-serif;
      font-weight: 400;
      color: #fff;
      margin-bottom: 5.08475%; }
      @media only screen and (min-width: 951px) {
        #aof #floor .event-floor-content-artist-group {
          font-size: 22px; } }
      #aof #floor .event-floor-content-artist-group::after {
        content: "";
        position: absolute;
        display: block;
        background-repeat: no-repeat;
        background-size: 100% 100%;
        width: 58%;
        height: 2px;
        top: 50%;
        right: 0;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        background-color: #888888; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-artist-group::after {
            width: 500px; } }
      #aof #floor .event-floor-content-artist-group:nth-of-type(2)::after {
        width: 74%; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-artist-group:nth-of-type(2)::after {
            width: 570px; } }
    #aof #floor .event-floor-content-special-act {
      margin-top: 10.16949%;
      color: #fff;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; }
      #aof #floor .event-floor-content-special-act-title {
        width: 35.9322%;
        margin: -5.08475% auto 0; }
      #aof #floor .event-floor-content-special-act-tmb {
        display: flex;
        justify-content: space-between;
        padding: 3.38983% 6.77966%; }
        #aof #floor .event-floor-content-special-act-tmb-img {
          width: 36.27451%; }
        #aof #floor .event-floor-content-special-act-tmb-caption {
          width: 59.80392%;
          font-size: 12px;
          line-height: 1.2; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-special-act-tmb-caption {
              font-size: 18px; } }
          #aof #floor .event-floor-content-special-act-tmb-caption-name {
            display: block;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 400;
            font-size: 14px; }
            @media only screen and (min-width: 951px) {
              #aof #floor .event-floor-content-special-act-tmb-caption-name {
                font-size: 22px; } }
            #aof #floor .event-floor-content-special-act-tmb-caption-name-ruby {
              display: block;
              font-size: 10px;
              margin-bottom: 6.55738%; }
              @media only screen and (min-width: 951px) {
                #aof #floor .event-floor-content-special-act-tmb-caption-name-ruby {
                  font-size: 16px; } }
      #aof #floor .event-floor-content-special-act-text {
        padding: 3.38983% 6.77966%;
        font-size: 12px;
        line-height: 1.2; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-special-act-text {
            font-size: 18px; } }
      #aof #floor .event-floor-content-special-act-btn-list {
        padding: 0 6.77966% 6.77966%;
        display: flex;
        justify-content: space-between; }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-special-act-btn-list {
            padding: 0 0 40px;
            width: 80%;
            margin: 0 auto; } }
        #aof #floor .event-floor-content-special-act-btn-list-item {
          border: solid 2px #00ff00;
          border-radius: 50px;
          overflow: hidden; }
          @media only screen and (min-width: 951px) {
            #aof #floor .event-floor-content-special-act-btn-list-item {
              width: 46%; } }
          @media only screen and (max-width: 950px) {
            #aof #floor .event-floor-content-special-act-btn-list-item:nth-of-type(1) {
              width: 35%; } }
          @media only screen and (max-width: 950px) {
            #aof #floor .event-floor-content-special-act-btn-list-item:nth-of-type(2) {
              width: 60%; } }
          #aof #floor .event-floor-content-special-act-btn-list-item a {
            padding: 1.96078% 5.88235%;
            display: block;
            font-size: 12px;
            color: #00ff00;
            letter-spacing: -0.05em;
            transition: all 0.3s ease-in-out;
            text-align: center; }
            @media only screen and (max-width: 950px) {
              #aof #floor .event-floor-content-special-act-btn-list-item a {
                padding: 6px; } }
            @media only screen and (min-width: 951px) {
              #aof #floor .event-floor-content-special-act-btn-list-item a {
                padding: 10px 0;
                font-size: 18px; } }
            #aof #floor .event-floor-content-special-act-btn-list-item a:hover {
              background-color: #00ff00;
              color: #000; }
    #aof #floor .event-floor-content-special-act-tmb-caption-btn {
      border: solid 2px #ffff00;
      border-radius: 50px;
      margin-top: 6.55738%;
      overflow: hidden; }
      #aof #floor .event-floor-content-special-act-tmb-caption-btn a {
        display: block;
        font-size: 10px;
        color: #ffff00;
        text-align: center;
        transition: all 0.3s ease-in-out; }
        @media only screen and (max-width: 950px) {
          #aof #floor .event-floor-content-special-act-tmb-caption-btn a {
            padding: 6px; } }
        @media only screen and (min-width: 951px) {
          #aof #floor .event-floor-content-special-act-tmb-caption-btn a {
            padding: 10px;
            font-size: 18px; } }
        #aof #floor .event-floor-content-special-act-tmb-caption-btn a:hover {
          color: #000;
          background-color: #ffff00; }
    #aof #floor .event-floor-content .event-section-container {
      padding-bottom: 4.26667%; }
    #aof #floor .event-floor-content [data-floor="character"] {
      background-color: #ff0000; }
      #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-title {
        color: #ff0000; }
      #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-genre {
        color: #ff0000; }
      #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-artist-title {
        color: #ff0000; }
        #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-artist-title::after {
          background: repeating-linear-gradient(-45deg, #ff0000 0 2px, transparent 0 9px); }
      #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-vj-head {
        color: #ff0000; }
        #aof #floor .event-floor-content [data-floor="character"] .event-floor-content-vj-head::after {
          border-color: transparent transparent transparent #ff0000; }
    #aof #floor .event-floor-content [data-floor="game"] {
      background-color: #00ff00; }
      #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-title {
        color: #00ff00; }
      #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-genre {
        color: #00ff00; }
      #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-artist-title {
        color: #00ff00; }
        #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-artist-title::after {
          background: repeating-linear-gradient(-45deg, #00ff00 0 2px, transparent 0 9px); }
      #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-special-act {
        border: solid 1px #00ff00; }
      #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-vj-head {
        color: #00ff00; }
        #aof #floor .event-floor-content [data-floor="game"] .event-floor-content-vj-head::after {
          border-color: transparent transparent transparent #00ff00; }
    #aof #floor .event-floor-content [data-floor="virtual"] {
      background-color: #ffff00; }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-title {
        color: #ffff00; }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-genre {
        color: #ffff00; }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-artist-title {
        color: #ffff00; }
        #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-artist-title::after {
          background: repeating-linear-gradient(-45deg, #ffff00 0 2px, transparent 0 9px); }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-special-act {
        border: solid 1px #ffff00; }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-vj-head {
        color: #ffff00; }
        #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-vj-head::after {
          border-color: transparent transparent transparent #ffff00; }
      #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-production-list-item-tmb-caption-btn {
        border-color: #ffff00;
        overflow: hidden; }
        #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-production-list-item-tmb-caption-btn a {
          transition: all 0.3s ease-in-out;
          color: #ffff00; }
          #aof #floor .event-floor-content [data-floor="virtual"] .event-floor-content-production-list-item-tmb-caption-btn a:hover {
            color: #000;
            background-color: #ffff00; }
    #aof #floor .event-floor-content [data-floor="akibapop"] {
      background-color: #0000ff; }
      #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-title {
        color: #0000ff; }
      #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-genre {
        color: #0000ff; }
      #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-artist-title {
        color: #0000ff; }
        #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-artist-title::after {
          background: repeating-linear-gradient(-45deg, #0000ff 0 2px, transparent 0 9px); }
      #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-vj-head {
        color: #0000ff; }
        #aof #floor .event-floor-content [data-floor="akibapop"] .event-floor-content-vj-head::after {
          border-color: transparent transparent transparent #0000ff; }
  #aof #cd {
    background-color: #fff; }
    @media only screen and (min-width: 951px) {
      #aof #cd {
        padding: 140px 0; } }
    @media only screen and (max-width: 950px) {
      #aof #cd {
        padding: 14.66667% 0; } }
    #aof #cd .event-section-title {
      width: 64.1791%;
      margin-top: 0; }
    #aof #cd .event-cd-content-tmb {
      margin-top: 4.47761%;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      align-items: flex-start; }
      #aof #cd .event-cd-content-tmb:nth-of-type(n+2) {
        margin-top: 7.46269%; }
      #aof #cd .event-cd-content-tmb-caption-title {
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        color: #000;
        font-size: 16px;
        text-align: center;
        margin-bottom: 5.37313%; }
        @media only screen and (min-width: 951px) {
          #aof #cd .event-cd-content-tmb-caption-title {
            font-size: 24px; } }
        #aof #cd .event-cd-content-tmb-caption-title-artist {
          display: block;
          font-size: 14px;
          font-weight: 400;
          color: #777575;
          margin-bottom: 3.8806%; }
          @media only screen and (min-width: 951px) {
            #aof #cd .event-cd-content-tmb-caption-title-artist {
              font-size: 22px; } }
      #aof #cd .event-cd-content-tmb-caption-text {
        font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 1.5;
        margin-bottom: 5.97015%; }
        @media only screen and (min-width: 951px) {
          #aof #cd .event-cd-content-tmb-caption-text {
            font-size: 18px; } }
      #aof #cd .event-cd-content-tmb-caption-btn {
        background-color: #212121;
        width: 73.13433%;
        margin: 0 auto;
        border-radius: 50px;
        transition: all 0.3s ease-in-out;
        border: solid 1px #212121; }
        @media only screen and (min-width: 951px) {
          #aof #cd .event-cd-content-tmb-caption-btn {
            width: 400px; } }
        #aof #cd .event-cd-content-tmb-caption-btn:hover {
          background-color: #fff; }
          #aof #cd .event-cd-content-tmb-caption-btn:hover a {
            color: #212121; }
        #aof #cd .event-cd-content-tmb-caption-btn a {
          display: block;
          color: #fff;
          text-align: center;
          font-family: "Noto Sans JP", sans-serif;
          font-size: 16px;
          font-weight: 400;
          padding: 4.47761% 0; }
          @media only screen and (min-width: 951px) {
            #aof #cd .event-cd-content-tmb-caption-btn a {
              padding: 30px 0; } }
  #aof #goods {
    background-color: #474747; }
    @media only screen and (min-width: 951px) {
      #aof #goods {
        padding: 140px 0; } }
    @media only screen and (max-width: 950px) {
      #aof #goods {
        padding: 14.66667% 0; } }
    #aof #goods .event-section-title {
      width: 35.37313%;
      margin-bottom: 4.47761%; }
    #aof #goods .event-goods-content-tmb {
      background-color: #282828; }
      #aof #goods .event-goods-content-tmb img {
        width: 87.16418%;
        display: block;
        margin: 0 auto;
        padding: 11.9403% 0 8.95522%; }
        @media only screen and (min-width: 951px) {
          #aof #goods .event-goods-content-tmb img {
            padding: 50px 0; } }
      #aof #goods .event-goods-content-tmb-caption {
        padding-top: 5.97015%;
        background-color: #474747;
        color: #fff; }
        #aof #goods .event-goods-content-tmb-caption-title {
          font-size: 16px;
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 700;
          margin-bottom: 5.97015%;
          text-align: center; }
          @media only screen and (min-width: 951px) {
            #aof #goods .event-goods-content-tmb-caption-title {
              font-size: 24px; } }
        #aof #goods .event-goods-content-tmb-caption-text {
          font-size: 14px;
          font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
          font-weight: 400;
          line-height: 1.5; }
          @media only screen and (min-width: 951px) {
            #aof #goods .event-goods-content-tmb-caption-text {
              font-size: 18px; } }
        #aof #goods .event-goods-content-tmb-caption-btn {
          background-color: #212121;
          width: 73.13433%;
          margin: 8.95522% auto 0;
          padding: 4.47761% 0;
          border-radius: 50px;
          border: solid 1px #fff;
          transition: all 0.3s ease-in-out; }
          @media only screen and (min-width: 951px) {
            #aof #goods .event-goods-content-tmb-caption-btn {
              width: 400px;
              padding: 30px 0; } }
          #aof #goods .event-goods-content-tmb-caption-btn:hover {
            background-color: #fff;
            border: solid 1px #212121; }
            #aof #goods .event-goods-content-tmb-caption-btn:hover a {
              color: #212121; }
          #aof #goods .event-goods-content-tmb-caption-btn a {
            display: block;
            color: #fff;
            text-align: center;
            font-family: "Noto Sans JP", sans-serif;
            font-size: 16px;
            font-weight: 400; }
  #aof #attention {
    background-image: url(../assets/img/event/aof/attention/sp-bg.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat; }
    @media only screen and (min-width: 951px) {
      #aof #attention {
        padding: 140px 0; } }
    @media only screen and (max-width: 950px) {
      #aof #attention {
        padding: 14.66667% 0 18.66667%; } }
    #aof #attention .event-section-title {
      width: 55.37313%; }
    #aof #attention .event-attention-content {
      margin-top: 10.44776%; }
      #aof #attention .event-attention-content-caption {
        border: solid 1px #4c4c4c;
        border-radius: 16px;
        color: #fff;
        font-size: 14px;
        font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
        font-weight: 400; }
        @media only screen and (min-width: 951px) {
          #aof #attention .event-attention-content-caption {
            margin-bottom: 80px;
            font-size: 18px; } }
        #aof #attention .event-attention-content-caption-title {
          text-align: center;
          font-weight: 400;
          padding: 4.47761% 0;
          border-bottom: solid 1px #4c4c4c; }
          @media only screen and (min-width: 951px) {
            #aof #attention .event-attention-content-caption-title {
              padding: 30px 0; } }
        #aof #attention .event-attention-content-caption-text {
          padding: 7.46269% 5.97015%;
          line-height: 1.5; }
          @media only screen and (min-width: 951px) {
            #aof #attention .event-attention-content-caption-text {
              padding: 50px 40px; } }
      #aof #attention .event-attention-content-sponsor-definition-list {
        margin-top: 17.91045%;
        padding: 0 5.97015%;
        color: #fff;
        font-size: 14px;
        font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
        font-weight: 700;
        letter-spacing: -0.01em; }
        @media only screen and (min-width: 951px) {
          #aof #attention .event-attention-content-sponsor-definition-list {
            font-size: 18px; } }
        #aof #attention .event-attention-content-sponsor-definition-list-term {
          margin-bottom: 5.97015%; }
          @media only screen and (min-width: 951px) {
            #aof #attention .event-attention-content-sponsor-definition-list-term {
              margin-bottom: 40px; } }
        #aof #attention .event-attention-content-sponsor-definition-list-description {
          margin-bottom: 5.97015%; }
          @media only screen and (min-width: 951px) {
            #aof #attention .event-attention-content-sponsor-definition-list-description {
              margin-bottom: 40px; } }
          #aof #attention .event-attention-content-sponsor-definition-list-description:last-of-type {
            margin-bottom: 0; }
          #aof #attention .event-attention-content-sponsor-definition-list-description-tmb {
            margin-top: 20px;
            width: 50%; }
            @media only screen and (max-width: 950px) {
              #aof #attention .event-attention-content-sponsor-definition-list-description-tmb {
                margin-top: 10px; } }

/*#aof*/
/*英語ページ固有スタイル*/
@media only screen and (min-width: 951px) {
  [data-lang='en'] #aof #about {
    padding: 150px 0 80px; } }

@media only screen and (max-width: 950px) {
  [data-lang='en'] #aof #about {
    padding: 36% 0 21.33333%; } }

[data-lang='en'] .event-outline-content-text {
  margin-bottom: 20px; }

.comingsoon {
  width: 100%;
  color: #fff;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-weight: bold; }
  @media only screen and (min-width: 951px) {
    .comingsoon {
      padding: 150px 0;
      font-size: 35px; } }
  @media only screen and (max-width: 950px) {
    .comingsoon {
      padding: 80px 0;
      font-size: 25px; } }