@charset "UTF-8";
/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* =============================================================== */
/*	viewport設定	*/
/* =============================================================== */
/*-------------------------------------------------------------------*/
/* mass */
/*-------------------------------------------------------------------*/
/* =============================================================== */
/*	media query	*/
/* =============================================================== */
/* =============================================================== */
/*	font-family	*/
/* =============================================================== */
/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	html	*/
/* =============================================================== */
html {
  font-size: 62.5%;
  line-height: 1;
}
@media print, screen and (max-width: 1024px) {
  html {
    font-size: 1.3020833333vw;
  }
}

body {
  --base: 520px;
}
@media print, screen and (max-width: 1024px) {
  body {
    --base: 100vw;
  }
}

body {
  height: 100%;
  min-height: 100%;
  font-family: "Oswald", "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  -webkit-font-smoothing: antialiased;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden;
  background: #210000;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  color: #FFF;
  font-weight: 700;
}
@media print, screen and (max-width: 1024px) {
  body {
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
  }
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  zoom: 1;
}

img {
  -o-object-fit: contain;
  object-fit: contain;
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

_::-webkit-full-page-media, _:future, :root img {
  image-rendering: auto !important;
}

a {
  text-decoration: none;
}

/*==========================================================================*/
/* Modules */
/*==========================================================================*/
/*==========================================================================*/
/* Foundation */
/*==========================================================================*/
:root {
  --vw-base: 1920;
  --vw-min: 1360;
  --vw-scale: max(calc(100vw / var(--vw-base)), 1px);
  --index-gallery-width: 0;
  --index-text-stroke-width: 0;
}
@media print, screen and (min-width: 1025px) and (max-width: 1360px) {
  :root {
    --vw-scale: calc(100vw / 1360);
  }
}
@media print, screen and (max-width: 1024px) {
  :root {
    --vw-base: 768;
    --vw-scale: calc(100vw / var(--vw-base));
  }
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	keyframes	*/
/* =============================================================== */
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes bright {
  0% {
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
  50% {
    -webkit-filter: brightness(1.1);
    filter: brightness(1.1);
  }
  100% {
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
}
@keyframes bright {
  0% {
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
  50% {
    -webkit-filter: brightness(1.1);
    filter: brightness(1.1);
  }
  100% {
    -webkit-filter: brightness(1);
    filter: brightness(1);
  }
}
/*-------------------------------------------------------------------*/
/* mass */
/*-------------------------------------------------------------------*/
/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	l-wrapper	*/
/* =============================================================== */
.l-wrapper {
  position: relative;
  width: 100%;
}
.l-wrapper::before {
  content: "";
  display: block;
  position: fixed;
}
@media print, screen and (min-width: 1025px) {
  .l-wrapper::before {
    background: url(../webp/pc/bg.webp) top center/contain no-repeat;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    inset: 0;
  }
}
.l-wrapper-whole {
  position: relative;
  z-index: 2;
  overflow: hidden;
}
@media print, screen and (min-width: 1025px) {
  .l-wrapper-whole {
    width: 520px;
    margin: 0 auto;
    -webkit-box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.4);
    box-shadow: 0 0 80px 0 rgba(0, 0, 0, 0.4);
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1500px) {
  .l-wrapper-whole {
    margin: 0 0 0 40px;
  }
}
.l-wrapper-whole::before {
  content: "";
  display: block;
  position: fixed;
  background: url(../webp/common/bg.webp) top center/cover no-repeat;
  height: 100vh;
  height: 100dvh;
  height: 100lvh;
  inset: 0;
  z-index: -1;
}
@media print, screen and (min-width: 1025px) {
  .l-wrapper-whole::before {
    width: 520px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1500px) {
  .l-wrapper-whole::before {
    left: 40px;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@media print, screen and (max-width: 1024px) {
  .l-wrapper-whole::before {
    width: 100%;
  }
}

/*-------------------------------------------------------------------*/
/* mass */
/*-------------------------------------------------------------------*/
/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	l-header	*/
/* =============================================================== */
@media print, screen and (min-width: 1025px) {
  .l-header__hamburger {
    display: none;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__hamburger {
    position: fixed;
    width: calc(0.1484375 * var(--base));
    height: calc(0.1692708333 * var(--base));
    top: calc(0.0208333333 * var(--base));
    right: calc(0.0208333333 * var(--base));
    z-index: 50;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
}
.l-header__hamburger span {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
}
.l-header__hamburger .open {
  background: url(../images/common/menu_open.png) top center/contain no-repeat;
  opacity: 1;
}
.l-header__hamburger .close {
  background: url(../images/common/menu_close.png) top center/contain no-repeat;
  opacity: 0;
}
@media print, screen and (min-width: 1025px) {
  .l-header__menu {
    position: fixed;
    padding: 20px 0;
    height: 100%;
    right: calc((50% - 460px) / 2);
    top: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .l-header__menu::-webkit-scrollbar {
    display: none;
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1500px) {
  .l-header__menu {
    right: calc((100% - 750px) / 2);
  }
}
@media (max-height: 650px) {
  .l-header__menu {
    display: block;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__menu {
    position: fixed;
    width: 100%;
    height: 100%;
    inset: 0;
    z-index: 40;
    opacity: 0;
    pointer-events: none;
  }
}
@media (any-hover: hover) {
  .l-header__menu {
    -webkit-transition: -webkit-filter 0.3s;
    transition: -webkit-filter 0.3s;
    transition: filter 0.3s;
    transition: filter 0.3s, -webkit-filter 0.3s;
  }
  .l-header__menu:hover {
    -webkit-filter: brightness(1.3);
    filter: brightness(1.3);
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
    pointer-events: none;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav {
    position: absolute;
    background: #210000;
    width: calc(0.765625 * var(--base));
    height: 100%;
    top: 0;
    right: 0;
  }
}
@media print, screen and (max-width: 1024px) and (max-width: 1024px) {
  .l-header__nav::before {
    content: "";
    display: block;
    position: absolute;
    pointer-events: none;
    background: url(../webp/common/header/deco_top.webp) top center/contain no-repeat;
    width: 100%;
    height: calc(0.3619791667 * var(--base));
    top: 0;
    left: 0;
  }
}
@media print, screen and (max-width: 1024px) and (max-width: 1024px) {
  .l-header__nav::after {
    content: "";
    display: block;
    position: absolute;
    width: calc(0.0130208333 * var(--base));
    height: 100%;
    top: 0;
    left: 0;
    background: #FF2020;
  }
}
.l-header__nav-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}
@media print, screen and (min-width: 1025px) {
  .l-header__nav-list {
    gap: 30px;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav-list {
    position: relative;
    z-index: 2;
    height: 100%;
    margin-left: calc(0.0833333333 * var(--base));
    padding-block: calc(0.1822916667 * var(--base));
    gap: calc(0.0651041667 * var(--base));
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .l-header__nav-list::-webkit-scrollbar {
    display: none;
  }
}
.l-header__nav-item .l-header__nav-link {
  position: relative;
  display: block;
}
@media print, screen and (min-width: 1025px) {
  .l-header__nav-item .l-header__nav-link {
    padding-left: 40px;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav-item .l-header__nav-link {
    padding-left: calc(0.0729166667 * var(--base));
  }
}
.l-header__nav-item .l-header__nav-link::before {
  content: "";
  display: block;
  position: absolute;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPHBhdGggZD0iTTAgMEM2LjgwNDMzIDYuNjE1NzUgMTEuODc4MSAxMS4zNTQgMTUuNDUwNCAxNC41NTA2TDE1LjAwMTEgMTVMMTQuNTUxOCAxNS40NDk0QzExLjM1MzIgMTEuODc5IDYuNjE1MjYgNi44MDQ4NCAwIDBaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfNDYzXzQyNjYpIi8+IDxwYXRoIGQ9Ik0yOS45OTc4IDMwQzIzLjM4MjUgMjMuMTk1MiAxOC42NDQ2IDE4LjEyMSAxNS40NDgyIDE0LjU0ODRMMTQuNTQ5NiAxNS40NDcxQzE4LjEyMTkgMTguNjQzOCAyMy4xOTM0IDIzLjM4MiAzMCAyOS45OTc4TDI5Ljk5NzggMzBaIiBmaWxsPSJ1cmwoI3BhaW50MV9saW5lYXJfNDYzXzQyNjYpIi8+IDxwYXRoIGQ9Ik0yOS45OTc4IDBDMjMuMzgyNSA2LjgwNDg0IDE4LjY0NDYgMTEuODc5IDE1LjQ0ODIgMTUuNDUxNkwxNC41NDk2IDE0LjU1MjlDMTguMTIxOSAxMS4zNTQgMjMuMTkzNCA2LjYxNTc1IDI5Ljk5NzggMFoiIGZpbGw9InVybCgjcGFpbnQyX2xpbmVhcl80NjNfNDI2NikiLz4gPHBhdGggZD0iTTAgMzBDNi44MDQzMyAyMy4zODQzIDExLjg3ODEgMTguNjQ2IDE1LjQ1MDQgMTUuNDQ5NEwxNS4wMDExIDE1TDE0LjU1MTggMTQuNTUwNkMxMS4zNTMyIDE4LjEyMzIgNi42MTUyNiAyMy4xOTUyIDAgMzBaIiBmaWxsPSJ1cmwoI3BhaW50M19saW5lYXJfNDYzXzQyNjYpIi8+IDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjEuNzYyOSAyMS44MDA0QzE3LjI0IDE3LjMyMjQgMTIuNzE3MSAxNy4zMjI0IDguMTk0MjggMjEuODAwNEMxMi42NzE5IDE3LjI3NzIgMTIuNjcxOSAxMi43NTQgOC4xOTQyNiA4LjIzMDc3QzEyLjcxNzEgMTIuNzA4NyAxNy4yNCAxMi43MDg3IDIxLjc2MjkgOC4yMzA4MUMxNy4yODUyIDEyLjc1NCAxNy4yODUyIDE3LjI3NzIgMjEuNzYyOSAyMS44MDA0WiIgZmlsbD0idXJsKCNwYWludDRfbGluZWFyXzQ2M180MjY2KSIvPiA8ZGVmcz4gPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzQ2M180MjY2IiB4MT0iMTUuMjcyNyIgeTE9IjAiIHgyPSIxNS4yNzI3IiB5Mj0iMzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4gPHN0b3Agb2Zmc2V0PSIwLjIiIHN0b3AtY29sb3I9IiNGRkZCQkMiLz4gPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiNDRDk0MkQiLz4gPHN0b3Agb2Zmc2V0PSIwLjgiIHN0b3AtY29sb3I9IiNGRkUxQTkiLz4gPC9saW5lYXJHcmFkaWVudD4gPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzQ2M180MjY2IiB4MT0iMTUuMjcyNyIgeTE9IjAiIHgyPSIxNS4yNzI3IiB5Mj0iMzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4gPHN0b3Agb2Zmc2V0PSIwLjIiIHN0b3AtY29sb3I9IiNGRkZCQkMiLz4gPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiNDRDk0MkQiLz4gPHN0b3Agb2Zmc2V0PSIwLjgiIHN0b3AtY29sb3I9IiNGRkUxQTkiLz4gPC9saW5lYXJHcmFkaWVudD4gPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzQ2M180MjY2IiB4MT0iMTUuMjcyNyIgeTE9IjAiIHgyPSIxNS4yNzI3IiB5Mj0iMzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4gPHN0b3Agb2Zmc2V0PSIwLjIiIHN0b3AtY29sb3I9IiNGRkZCQkMiLz4gPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiNDRDk0MkQiLz4gPHN0b3Agb2Zmc2V0PSIwLjgiIHN0b3AtY29sb3I9IiNGRkUxQTkiLz4gPC9saW5lYXJHcmFkaWVudD4gPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDNfbGluZWFyXzQ2M180MjY2IiB4MT0iMTUuMjcyNyIgeTE9IjAiIHgyPSIxNS4yNzI3IiB5Mj0iMzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4gPHN0b3Agb2Zmc2V0PSIwLjIiIHN0b3AtY29sb3I9IiNGRkZCQkMiLz4gPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiNDRDk0MkQiLz4gPHN0b3Agb2Zmc2V0PSIwLjgiIHN0b3AtY29sb3I9IiNGRkUxQTkiLz4gPC9saW5lYXJHcmFkaWVudD4gPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDRfbGluZWFyXzQ2M180MjY2IiB4MT0iMTUuMjcyNyIgeTE9IjAiIHgyPSIxNS4yNzI3IiB5Mj0iMzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4gPHN0b3Agb2Zmc2V0PSIwLjIiIHN0b3AtY29sb3I9IiNGRkZCQkMiLz4gPHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9IiNDRDk0MkQiLz4gPHN0b3Agb2Zmc2V0PSIwLjgiIHN0b3AtY29sb3I9IiNGRkUxQTkiLz4gPC9saW5lYXJHcmFkaWVudD4gPC9kZWZzPiA8L3N2Zz4=") top center/contain no-repeat;
  left: 0;
  opacity: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: opacity 0.1s, -webkit-transform 0.3s;
  transition: opacity 0.1s, -webkit-transform 0.3s;
  transition: opacity 0.1s, transform 0.3s;
  transition: opacity 0.1s, transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 1025px) {
  .l-header__nav-item .l-header__nav-link::before {
    top: 6px;
    width: 30px;
    height: 30px;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav-item .l-header__nav-link::before {
    width: calc(0.0520833333 * var(--base));
    height: calc(0.0520833333 * var(--base));
    top: calc(0.0182291667 * var(--base));
  }
}
.l-header__nav-item .l-header__nav-link span {
  display: block;
}
.l-header__nav-item .l-header__nav-link .en {
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.02em;
  will-change: filter;
}
@media print, screen and (min-width: 1025px) {
  .l-header__nav-item .l-header__nav-link .en {
    font-size: 3.4rem;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav-item .l-header__nav-link .en {
    font-size: calc(0.0729166667 * var(--base));
  }
}
.l-header__nav-item .l-header__nav-link .ja {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.02em;
  color: #FF2020;
}
@media print, screen and (min-width: 1025px) {
  .l-header__nav-item .l-header__nav-link .ja {
    margin-top: 5px;
    font-size: 1.2rem;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header__nav-item .l-header__nav-link .ja {
    margin-top: calc(0.0130208333 * var(--base));
    font-size: calc(0.03125 * var(--base));
  }
}
.l-header__nav-item .l-header__nav-link.is-current::before {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
@media (any-hover: hover) {
  .l-header__nav-item .l-header__nav-link .en {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .l-header__nav-item .l-header__nav-link:hover .en {
    -webkit-filter: drop-shadow(3px 3px 0 #FF2020);
    filter: drop-shadow(3px 3px 0 #FF2020);
  }
}
@media print, screen and (max-width: 1024px) {
  .l-header.is-scrolled .l-header__hamburger {
    opacity: 1;
    pointer-events: auto;
  }
}

/*-------------------------------------------------------------------*/
/* mass */
/*-------------------------------------------------------------------*/
/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	l-footer	*/
/* =============================================================== */
.l-footer {
  position: relative;
  margin: calc(0.08203125 * var(--base)) auto 0;
  z-index: 2;
  width: calc(1 * var(--base));
}
.l-footer-inner {
  margin-inline: auto;
  width: calc(0.8958333333 * var(--base));
  padding-bottom: calc(0.1302083333 * var(--base));
}
.l-footer-streaming .catch {
  width: calc(0.8958333333 * var(--base));
}
.l-footer-streaming .streaming-list {
  margin: calc(0.0390625 * var(--base)) auto 0;
  width: calc(0.765625 * var(--base));
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  gap: calc(0.0104166667 * var(--base));
}
.l-footer-streaming .streaming-list .streaming-item a {
  display: block;
  width: auto;
  height: calc(0.0807291667 * var(--base));
}
@media (any-hover: hover) {
  .l-footer-streaming .streaming-list .streaming-item a {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .l-footer-streaming .streaming-list .streaming-item a:hover {
    opacity: 0.7;
  }
}
.l-footer-streaming .trademark-text {
  margin: calc(0.0260416667 * var(--base)) auto 0;
  width: calc(0.765625 * var(--base));
}
.l-footer-streaming .trademark-text p {
  position: relative;
  padding-left: calc(0.0260416667 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.04em;
  font-size: calc(0.0260416667 * var(--base));
}
.l-footer-streaming .trademark-text p::before {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.5;
}
.l-footer-streaming .official-link {
  display: block;
  margin: calc(0.0390625 * var(--base)) auto 0;
  padding-top: calc(0.03515625 * var(--base));
  padding-left: calc(0.109375 * var(--base));
  width: calc(0.7526041667 * var(--base));
  height: calc(0.1302083333 * var(--base));
  background: url(../images/common/footer/btn_hbr.svg) top center/contain no-repeat;
}
.l-footer-streaming .official-link span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.04em;
  font-size: calc(0.03125 * var(--base));
}
@media (any-hover: hover) {
  .l-footer-streaming .official-link {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .l-footer-streaming .official-link:hover {
    opacity: 0.7;
  }
}
.l-footer-copyright {
  margin-top: calc(0.0651041667 * var(--base));
}
.l-footer-copyright p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.04em;
  font-size: calc(0.0260416667 * var(--base));
  text-align: center;
}
.l-footer.has-FixedBanner .l-footer-inner {
  padding-bottom: calc(0.390625 * var(--base));
}

/*-------------------------------------------------------------------*/
/* mass */
/*-------------------------------------------------------------------*/
/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	l-pc-only	*/
/* =============================================================== */
@media print, screen and (min-width: 1025px) {
  .l-pc-only {
    position: fixed;
    top: 50%;
    left: calc((50vw - (273 * var(--vw-scale))) / 2);
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    width: 410px;
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1500px) {
  .l-pc-only {
    display: none;
  }
}
@media print, screen and (max-width: 1024px) {
  .l-pc-only {
    display: none;
  }
}
.l-pc-only__logo {
  width: 100%;
  height: auto;
}
.l-pc-only__date {
  width: 410px;
  margin: 0 auto;
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-title	*/
/* =============================================================== */
.c-title {
  margin-inline: auto;
  width: calc(0.8958333333 * var(--base));
}
.c-title-head {
  width: 100%;
}
.c-title-sub {
  margin: calc(0.0130208333 * var(--base)) auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: calc(0.0520833333 * var(--base));
  padding-inline: calc(0.0130208333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.02em;
  font-size: calc(0.03125 * var(--base));
  background: #000;
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-movie	*/
/* =============================================================== */
.c-movie {
  width: calc(0.921875 * var(--base));
  height: calc(0.5299479167 * var(--base));
}
.c-movie-content {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: calc(0.0130208333 * var(--base));
  background: -webkit-gradient(linear, right top, left top, from(#FFFBBC), color-stop(50%, #CD942D), to(#FFE1A9));
  background: -webkit-linear-gradient(right, #FFFBBC 0%, #CD942D 50%, #FFE1A9 100%);
  background: linear-gradient(270deg, #FFFBBC 0%, #CD942D 50%, #FFE1A9 100%);
  cursor: pointer;
  overflow: hidden;
}
.c-movie-content::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background: url(../images/common/frame.png) top center/contain no-repeat;
  pointer-events: none;
  z-index: 2;
}
@media (any-hover: hover) {
  .c-movie-content .c-movie-thumb {
    -webkit-transition: -webkit-filter 0.3s;
    transition: -webkit-filter 0.3s;
    transition: filter 0.3s;
    transition: filter 0.3s, -webkit-filter 0.3s;
  }
  .c-movie-content .c-movie-button {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .c-movie-content .c-movie-button::after {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .c-movie-content:hover .c-movie-thumb {
    -webkit-filter: brightness(1.2);
    filter: brightness(1.2);
  }
  .c-movie-content:hover .c-movie-button {
    -webkit-transform: translate(-50%, -50%) scale(0.9);
    transform: translate(-50%, -50%) scale(0.9);
  }
  .c-movie-content:hover .c-movie-button::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}
.c-movie-thumb {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 3;
  border: calc(0.0026041667 * var(--base)) solid #000;
}
.c-movie-thumb::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
}
.c-movie-button {
  position: absolute;
  width: calc(0.15625 * var(--base));
  height: calc(0.15625 * var(--base));
  background: -webkit-gradient(linear, right top, left top, from(#FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFD487 0%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFD487 0%, #FFFBBC 100%);
  border-radius: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 3;
  pointer-events: none;
}
.c-movie-button::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/deco_movie_btn.png) top center/contain no-repeat;
  width: 100%;
  height: 100%;
  inset: 0;
}
.c-movie-button .play {
  position: absolute;
  display: block;
  background: #000;
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  width: calc(0.0598958333 * var(--base));
  height: calc(0.0598958333 * var(--base));
  top: calc(0.0494791667 * var(--base));
  left: calc(0.0572916667 * var(--base));
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-button	*/
/* =============================================================== */
.c-button {
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: calc(0.84375 * var(--base));
  height: calc(0.1901041667 * var(--base));
}
.c-button span {
  display: inline-block;
}
.c-button .icon {
  margin-top: calc(0.0520833333 * var(--base));
  margin-right: calc(0.0208333333 * var(--base));
}
.c-button .icon svg {
  fill: #000;
  width: calc(0.078125 * var(--base));
  height: calc(0.078125 * var(--base));
}
.c-button .txt {
  margin-top: calc(0.06640625 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: 0.02em;
  font-size: calc(0.0442708333 * var(--base));
  color: #000;
}
.c-button.btn-share {
  position: relative;
  background: url(../images/common/wallpaper/bg_button.svg) top center/contain no-repeat;
}
.c-button.btn-share::after {
  content: "";
  display: block;
  position: absolute;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUyMl8zNTc3KSI+IDxwYXRoIGQ9Ik0zIDFIMTNWMTFNMTMgMUwxIDEzTDEzIDFaIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPiA8L2c+IDxkZWZzPiA8Y2xpcFBhdGggaWQ9ImNsaXAwXzUyMl8zNTc3Ij4gPHJlY3Qgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJ3aGl0ZSIvPiA8L2NsaXBQYXRoPiA8L2RlZnM+IDwvc3ZnPg==") top center/contain no-repeat;
  width: calc(0.0182291667 * var(--base));
  height: calc(0.0182291667 * var(--base));
  top: calc(0.0143229167 * var(--base));
  right: calc(0.0221354167 * var(--base));
  pointer-events: none;
}
.c-button.btn-download:disabled {
  pointer-events: none;
  background: url(../images/common/wallpaper/bg_button_disable.svg) no-repeat center/contain;
}
.c-button.btn-download:not(:disabled) {
  background: url(../images/common/wallpaper/bg_button.svg) no-repeat center/contain;
}
@media (any-hover: hover) {
  .c-button {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .c-button:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-banner	*/
/* =============================================================== */
.c-banner {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10;
}
@media print, screen and (min-width: 1025px) {
  .c-banner {
    left: 50%;
    right: auto;
  }
}
@media print, screen and (min-width: 1025px) and (max-width: 1500px) {
  .c-banner {
    left: 313px;
  }
}
.c-banner-container {
  position: relative;
  width: calc(0.46875 * var(--base));
  height: calc(0.3255208333 * var(--base));
}
.c-banner-container button {
  position: absolute;
  width: calc(0.0598958333 * var(--base));
  height: calc(0.0598958333 * var(--base));
  top: calc(0.0091145833 * var(--base));
  right: calc(0.0091145833 * var(--base));
  -webkit-filter: drop-shadow(calc(0.0026041667 * var(--base)) calc(0.0052083333 * var(--base)) 0 #000);
  filter: drop-shadow(calc(0.0026041667 * var(--base)) calc(0.0052083333 * var(--base)) 0 #000);
  will-change: filter;
  z-index: 2;
}
@media (any-hover: hover) {
  .c-banner-container button {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .c-banner-container button:hover {
    opacity: 0.7;
  }
}
.c-banner-container .webshop {
  position: absolute;
  display: block;
  width: calc(0.4322916667 * var(--base));
  height: calc(0.2916666667 * var(--base));
  top: calc(0.0338541667 * var(--base));
  left: calc(0.02734375 * var(--base));
  -webkit-filter: drop-shadow(0 0 calc(0.0260416667 * var(--base)) rgba(255, 251, 188, 0.8));
  filter: drop-shadow(0 0 calc(0.0260416667 * var(--base)) rgba(255, 251, 188, 0.8));
  will-change: filter;
}
@media (any-hover: hover) {
  .c-banner-container .webshop {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .c-banner-container .webshop:hover {
    opacity: 0.7;
  }
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-youtube-modal	*/
/* =============================================================== */
.c-youtube-modal {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 120;
  display: none;
  opacity: 0;
}
.c-youtube-modal__overlay {
  position: fixed;
  width: 100%;
  height: 100vh;
  height: 100lvh;
  background: #000;
  opacity: 0.8;
  z-index: 100;
}
.c-youtube-modal__close {
  position: fixed;
  cursor: pointer;
  background: url(../images/common/menu_close.png) top center/contain no-repeat;
  z-index: 150;
}
@media print, screen and (min-width: 1025px) {
  .c-youtube-modal__close {
    width: calc(92 * var(--vw-scale));
    height: calc(104 * var(--vw-scale));
    top: calc(30 * var(--vw-scale));
    right: calc(26 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-youtube-modal__close {
    width: calc(0.1484375 * var(--base));
    height: calc(0.1692708333 * var(--base));
    top: calc(0.0208333333 * var(--base));
    right: calc(0.0208333333 * var(--base));
  }
}
@media (any-hover: hover) {
  .c-youtube-modal__close {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .c-youtube-modal__close:hover {
    opacity: 0.7;
  }
}
.c-youtube-modal__content {
  position: absolute;
  inset: 0;
  z-index: 120;
  width: 100%;
  height: 100%;
  margin: auto;
  display: grid;
  place-items: center;
  aspect-ratio: 16/9;
}
@media print, screen and (min-width: 1025px) {
  .c-youtube-modal__content {
    max-width: calc(1280 * var(--vw-scale));
    width: auto;
    max-height: 90vh;
    height: calc(720 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-youtube-modal__content {
    width: calc(0.8958333333 * var(--base));
    height: calc(0.5052083333 * var(--base));
    max-width: none;
    max-height: none;
  }
}
.c-youtube-modal__content iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
@media print, screen and (min-width: 1025px) {
  .c-youtube-modal__content iframe {
    max-width: calc(1280 * var(--vw-scale));
    max-height: calc(720 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-youtube-modal__content iframe {
    height: calc(0.5625 * var(--base));
    max-width: none;
    max-height: none;
    margin: auto 0;
  }
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	c-download-modal	*/
/* =============================================================== */
.c-download-modal {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 120;
  display: none;
  place-items: center;
}
.c-download-modal.modal-active {
  display: block;
}
.c-download-modal__overlay {
  position: fixed;
  width: 100%;
  height: 100vh;
  height: 100lvh;
  z-index: 100;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__overlay {
    background: url(../webp/pc/bg.webp) top center/cover no-repeat;
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__overlay {
    background: url(../webp/common/bg.webp) top center/cover no-repeat;
  }
}
.c-download-modal__overlay.showed {
  opacity: 1;
}
.c-download-modal__close {
  position: absolute;
  cursor: pointer;
  background: url(../images/common/menu_close.png) top center/contain no-repeat;
  z-index: 150;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__close {
    width: calc(92 * var(--vw-scale));
    height: calc(104 * var(--vw-scale));
    top: calc(30 * var(--vw-scale));
    right: calc(26 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__close {
    width: calc(0.1484375 * var(--base));
    height: calc(0.1692708333 * var(--base));
    top: calc(0.0208333333 * var(--base));
    right: calc(0.0208333333 * var(--base));
  }
}
@media (any-hover: hover) {
  .c-download-modal__close {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .c-download-modal__close:hover {
    opacity: 0.7;
  }
}
.c-download-modal__wrapper {
  position: relative;
  opacity: 0;
  overflow-y: auto;
  height: 100%;
  z-index: 100;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.c-download-modal__wrapper::-webkit-scrollbar {
  display: none;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__wrapper {
    margin-inline: auto;
    padding-block: calc(50 * var(--vw-scale));
    width: calc(1180 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__wrapper {
    padding-block: calc(0.2213541667 * var(--base));
  }
}
.c-download-modal__wrapper.show-transition {
  -webkit-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
.c-download-modal__wrapper.hide-transition {
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.c-download-modal__wrapper.wrapper-showed {
  opacity: 1;
}
.c-download-modal__container {
  display: none;
}
.c-download-modal__container.container-active {
  display: block;
}

/* =============================================================== */
/*	モーダルレイアウト	*/
/* =============================================================== */
.c-download-modal__container .content-header .title {
  margin-inline: auto;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-header .title {
    width: calc(630 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-header .title {
    width: calc(1 * var(--base));
  }
}
.c-download-modal__container .content-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body {
    margin-top: calc(56 * var(--vw-scale));
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    gap: calc(36 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body {
    margin-top: calc(0.1041666667 * var(--base));
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content + .download-content {
    margin-top: calc(0.078125 * var(--base));
  }
}
.c-download-modal__container .content-body .download-content .wallpaper {
  position: relative;
  margin-inline: auto;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body .download-content .wallpaper {
    width: calc(226 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content .wallpaper {
    width: calc(0.4661458333 * var(--base));
  }
}
.c-download-modal__container .content-body .download-content .wallpaper::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body .download-content .wallpaper::after {
    border: calc(2 * var(--vw-scale)) solid;
    -webkit-border-image: -webkit-gradient(linear, left bottom, left top, color-stop(20%, #FFFBBC), color-stop(50%, #CD942D), color-stop(80%, #FFE1A9)) 1;
    -webkit-border-image: -webkit-linear-gradient(bottom, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
    -o-border-image: linear-gradient(0deg, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
    border-image: -webkit-gradient(linear, left bottom, left top, color-stop(20%, #FFFBBC), color-stop(50%, #CD942D), color-stop(80%, #FFE1A9)) 1;
    border-image: linear-gradient(0deg, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
    -webkit-box-shadow: 0 calc(4 * var(--vw-scale)) calc(20 * var(--vw-scale)) 0 rgba(205, 119, 93, 0.5);
    box-shadow: 0 calc(4 * var(--vw-scale)) calc(20 * var(--vw-scale)) 0 rgba(205, 119, 93, 0.5);
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content .wallpaper::after {
    border: calc(0.0026041667 * var(--base)) solid;
    -webkit-border-image: -webkit-gradient(linear, left bottom, left top, color-stop(20%, #FFFBBC), color-stop(50%, #CD942D), color-stop(80%, #FFE1A9)) 1;
    -webkit-border-image: -webkit-linear-gradient(bottom, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
    -o-border-image: linear-gradient(0deg, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
    border-image: -webkit-gradient(linear, left bottom, left top, color-stop(20%, #FFFBBC), color-stop(50%, #CD942D), color-stop(80%, #FFE1A9)) 1;
    border-image: linear-gradient(0deg, #FFFBBC 20%, #CD942D 50%, #FFE1A9 80%) 1;
  }
}
.c-download-modal__container .content-body .download-content .button {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  background: -webkit-gradient(linear, right top, left top, from(#FFFBBC), color-stop(50%, #FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background-size: 200% 100%;
  background-position: top left;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body .download-content .button {
    margin-top: calc(34 * var(--vw-scale));
    width: calc(268 * var(--vw-scale));
    height: calc(60 * var(--vw-scale));
    padding-left: calc(30 * var(--vw-scale));
    border-radius: calc(100 * var(--vw-scale));
    border: calc(2 * var(--vw-scale)) solid #000;
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content .button {
    margin: calc(0.0651041667 * var(--base)) auto 0;
    padding-left: calc(0.0911458333 * var(--base));
    width: calc(0.7005208333 * var(--base));
    height: calc(0.1432291667 * var(--base));
    border-radius: calc(0.1549479167 * var(--base));
    border: calc(0.00390625 * var(--base)) solid #000;
  }
}
.c-download-modal__container .content-body .download-content .button span {
  display: block;
}
.c-download-modal__container .content-body .download-content .button .text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.06em;
  color: #000;
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body .download-content .button .text {
    margin-right: calc(16 * var(--vw-scale));
    font-size: calc(16 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content .button .text {
    margin-right: calc(0.0286458333 * var(--base));
    font-size: calc(0.0416666667 * var(--base));
  }
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .content-body .download-content .button .download {
    width: calc(16 * var(--vw-scale));
    height: calc(16 * var(--vw-scale));
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .content-body .download-content .button .download {
    width: calc(0.0390625 * var(--base));
    height: calc(0.0390625 * var(--base));
  }
}
@media (any-hover: hover) {
  .c-download-modal__container .content-body .download-content .button {
    -webkit-transition: background-position 0.3s;
    transition: background-position 0.3s;
  }
  .c-download-modal__container .content-body .download-content .button:hover {
    background-position: top right;
  }
}
@media print, screen and (min-width: 1025px) {
  .c-download-modal__container .close {
    display: none;
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .close {
    display: block;
    margin: calc(0.078125 * var(--base)) auto 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media print, screen and (max-width: 1024px) {
  .c-download-modal__container .close svg {
    fill: #FFF;
    width: calc(0.1041666667 * var(--base));
    height: calc(0.1041666667 * var(--base));
  }
}
@media (any-hover: hover) {
  .c-download-modal__container .close {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .c-download-modal__container .close:hover {
    opacity: 0.7;
  }
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
.js-Animation {
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}
.js-Animation[data-animation=fadeUp] {
  opacity: 0;
  -webkit-transform: translateY(calc(0.0260416667 * var(--base)));
  transform: translateY(calc(0.0260416667 * var(--base)));
}
.js-Animation[data-animation=title] {
  opacity: 0;
  -webkit-transform: translateX(calc(0.0390625 * var(--base)));
  transform: translateX(calc(0.0390625 * var(--base)));
}
.js-Animation[data-animation=zoomIn] {
  opacity: 0;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}
.js-Animation.animated {
  opacity: 1;
  -webkit-transform: translate(0) scale(1);
  transform: translate(0) scale(1);
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	メインビジュアル	*/
/* =============================================================== */
.p-home-mainvisual {
  position: relative;
  background: #3F0000;
}
.p-home-mainvisual__inner {
  position: relative;
  z-index: 2;
}
.p-home-mainvisual__inner::before {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/mainvisual/deco_mv.png) top center/calc(1 * var(--base)) calc(1.4192708333 * var(--base)) no-repeat;
  width: 100%;
  height: calc(1.4192708333 * var(--base));
  top: 0;
  left: 0;
  z-index: -1;
}
.p-home-mainvisual__image {
  width: calc(1 * var(--base));
  opacity: 0;
}
.p-home-mainvisual__logo {
  margin: calc(-0.33984375 * var(--base)) auto 0;
  width: calc(0.6171875 * var(--base));
  opacity: 0;
}
.p-home-mainvisual__catch {
  width: 100%;
  opacity: 0;
}

/* =============================================================== */
/*	Pickup	*/
/* =============================================================== */
.p-home-pickup {
  position: relative;
  z-index: 2;
}
.p-home-pickup__inner {
  position: relative;
}
.p-home-pickup__inner .p-home-pickup__bg, .p-home-pickup__inner .p-home-pickup__text, .p-home-pickup__inner .p-home-pickup__clear-reward {
  opacity: 0;
}
.p-home-pickup__bg {
  position: absolute;
  width: 100%;
  top: calc(0.3450520833 * var(--base));
  left: 0;
  z-index: -1;
}
.p-home-pickup__clear-reward {
  margin-top: calc(0.0716145833 * var(--base));
}

/* =============================================================== */
/*	STORY	*/
/* =============================================================== */
.p-home-story {
  margin-top: calc(0.14453125 * var(--base));
}
.p-home-story__logo {
  margin: calc(0.0520833333 * var(--base)) auto 0;
  width: calc(0.8958333333 * var(--base));
  -webkit-filter: drop-shadow(0 0 calc(0.1302083333 * var(--base)) rgba(255, 235, 166, 0.2)) drop-shadow(0 0 calc(0.1302083333 * var(--base)) rgba(255, 235, 166, 0.3));
  filter: drop-shadow(0 0 calc(0.1302083333 * var(--base)) rgba(255, 235, 166, 0.2)) drop-shadow(0 0 calc(0.1302083333 * var(--base)) rgba(255, 235, 166, 0.3));
  will-change: filter;
}
.p-home-story__movie {
  margin: calc(0.0130208333 * var(--base)) auto 0;
  width: calc(0.921875 * var(--base));
}
.p-home-story__text {
  margin-top: calc(0.0520833333 * var(--base));
}
.p-home-story__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0;
  font-size: calc(0.0390625 * var(--base));
  text-align: center;
}
.p-home-story__text p + p {
  margin-top: calc(0.0390625 * var(--base));
}

/* =============================================================== */
/*	CHARACTER	*/
/* =============================================================== */
.p-home-character {
  margin-top: calc(0.15625 * var(--base));
}
.p-home-character__content {
  margin-top: calc(0.078125 * var(--base));
}
.p-home-character__thumbnail {
  width: calc(0.8072916667 * var(--base));
  margin-left: calc(0.08984375 * var(--base));
}
.p-home-character__thumbnail .thumb-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.p-home-character__thumbnail .thumb-wrapper .thumbnail {
  background: url(../webp/common/character/frame_character.webp) top center/contain no-repeat;
  width: calc(0.1848958333 * var(--base)) !important;
  height: calc(0.1822916667 * var(--base));
  padding: calc(0.0130208333 * var(--base)) calc(0.015625 * var(--base)) calc(0.015625 * var(--base)) calc(0.0130208333 * var(--base));
  -webkit-filter: drop-shadow(calc(0.00390625 * var(--base)) calc(0.00390625 * var(--base)) 0 #FF2020);
  filter: drop-shadow(calc(0.00390625 * var(--base)) calc(0.00390625 * var(--base)) 0 #FF2020);
  will-change: filter;
  cursor: pointer;
}
.p-home-character__thumbnail .thumb-wrapper .thumbnail .frame {
  width: 100%;
  height: 100%;
  background: #FFF;
  overflow: hidden;
  will-change: transform;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}
.p-home-character__thumbnail .thumb-wrapper .thumbnail.swiper-slide-thumb-active .frame {
  background: #FF2020;
}
@media (any-hover: hover) {
  .p-home-character__thumbnail .thumb-wrapper .thumbnail .frame img {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .p-home-character__thumbnail .thumb-wrapper .thumbnail:hover .frame img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.p-home-character__main {
  margin-top: calc(0.0494791667 * var(--base));
}
.p-home-character__main .swiper {
  margin-inline: auto;
  width: calc(0.90625 * var(--base));
}
.p-home-character__main .character-wrapper {
  width: calc(0.8958333333 * var(--base)) !important;
}
.p-home-character__main .character-wrapper .character {
  position: relative;
}
.p-home-character__main .character-wrapper .character .character-image {
  margin-inline: auto;
  width: calc(0.78125 * var(--base));
  height: calc(1.5625 * var(--base));
  will-change: filter;
  -webkit-filter: drop-shadow(0 0 0 #FF2020);
  filter: drop-shadow(0 0 0 #FF2020);
  -webkit-transition: -webkit-filter 0.3s;
  transition: -webkit-filter 0.3s;
  transition: filter 0.3s;
  transition: filter 0.3s, -webkit-filter 0.3s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.p-home-character__main .character-wrapper .character .character-detail {
  position: absolute;
  top: calc(0.7552083333 * var(--base));
  left: calc(0.0052083333 * var(--base));
}
.p-home-character__main .character-wrapper .character .character-detail .name {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: calc(0.1302083333 * var(--base));
  padding: calc(0.0104166667 * var(--base)) calc(0.0208333333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: 0.02em;
  font-size: calc(0.0911458333 * var(--base));
  color: #000;
  border: calc(0.0052083333 * var(--base)) solid #000;
  background: -webkit-gradient(linear, right top, left top, from(#FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFD487 0%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFD487 0%, #FFFBBC 100%);
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FFEBA6;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FFEBA6;
}
.p-home-character__main .character-wrapper .character .character-detail .cv {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin-top: calc(0.0208333333 * var(--base));
  padding: calc(0.0052083333 * var(--base)) calc(0.0260416667 * var(--base)) calc(0.0104166667 * var(--base));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #000;
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
}
.p-home-character__main .character-wrapper .character .character-detail .cv span {
  display: inline-block;
  margin-top: calc(0.0091145833 * var(--base));
  font-font-family: "Oswald", sans-serif;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.03125 * var(--base));
  color: #FF2020;
}
.p-home-character__main .character-wrapper .character .character-detail .cv p {
  margin-left: calc(0.0130208333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.0390625 * var(--base));
}
.p-home-character__main .character-wrapper .character .character-detail .introduction {
  width: calc(0.8958333333 * var(--base));
  margin-top: calc(0.0520833333 * var(--base));
  padding: calc(0.0390625 * var(--base)) calc(0.0377604167 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 180%;
  letter-spacing: 0.02em;
  font-size: calc(0.0364583333 * var(--base));
  background: rgba(0, 0, 0, 0.6);
}
.p-home-character__main .character-wrapper .character.swiper-slide-active .character-image {
  -webkit-filter: drop-shadow(calc(0.015625 * var(--base)) calc(0.015625 * var(--base)) 0 #FF2020);
  filter: drop-shadow(calc(0.015625 * var(--base)) calc(0.015625 * var(--base)) 0 #FF2020);
}
.p-home-character__main .character-button-prev, .p-home-character__main .character-button-next {
  background: url(../images/common/character/arrow.svg) top center/contain no-repeat;
  width: calc(0.140625 * var(--base));
  height: calc(0.0885416667 * var(--base));
  top: calc(0.3307291667 * var(--base));
  -webkit-filter: drop-shadow(calc(0.0078125 * var(--base)) calc(0.0078125 * var(--base)) 0 #FF2020);
  filter: drop-shadow(calc(0.0078125 * var(--base)) calc(0.0078125 * var(--base)) 0 #FF2020);
}
.p-home-character__main .character-button-prev svg, .p-home-character__main .character-button-next svg {
  display: none;
}
@media (any-hover: hover) {
  .p-home-character__main .character-button-prev, .p-home-character__main .character-button-next {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .p-home-character__main .character-button-prev:hover, .p-home-character__main .character-button-next:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.p-home-character__main .character-button-next {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
@media (any-hover: hover) {
  .p-home-character__main .character-button-next:hover {
    -webkit-transform: scale(-1.1, 1.1);
    transform: scale(-1.1, 1.1);
  }
}

/* =============================================================== */
/*	COLLAB STYLE	*/
/* =============================================================== */
.p-home-collabStyle__movie {
  margin-top: calc(0.078125 * var(--base));
}
.p-home-collabStyle__movie .collab-item .illust-content {
  position: relative;
  margin-inline: auto;
  width: calc(0.921875 * var(--base));
  height: calc(0.5299479167 * var(--base));
  padding: calc(0.0130208333 * var(--base));
  background: -webkit-gradient(linear, right top, left top, from(#FFFBBC), color-stop(50%, #CD942D), to(#FFE1A9));
  background: -webkit-linear-gradient(right, #FFFBBC 0%, #CD942D 50%, #FFE1A9 100%);
  background: linear-gradient(270deg, #FFFBBC 0%, #CD942D 50%, #FFE1A9 100%);
}
.p-home-collabStyle__movie .collab-item .illust-content::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/frame.png) top center/contain no-repeat;
  width: 100%;
  height: 100%;
  inset: 0;
  pointer-events: none;
}
.p-home-collabStyle__movie .collab-item .illust-content .illust-thumb {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.p-home-collabStyle__movie .collab-item .illust-head {
  margin-top: calc(0.0520833333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.02em;
  font-size: calc(0.0442708333 * var(--base));
  text-align: center;
}
.p-home-collabStyle__movie .collab-item .movie-btn {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin: calc(0.0520833333 * var(--base)) auto 0;
  width: calc(0.5260416667 * var(--base));
  height: calc(0.1302083333 * var(--base));
  border-radius: calc(0.1302083333 * var(--base));
  border: calc(0.0026041667 * var(--base)) solid #000;
  background: -webkit-gradient(linear, right top, left top, from(#FFFBBC), color-stop(50%, #FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background-size: 200% 100%;
  background-position: top left;
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #000;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #000;
}
.p-home-collabStyle__movie .collab-item .movie-btn .text {
  margin: calc(0.03125 * var(--base)) auto auto calc(0.1184895833 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 160%;
  letter-spacing: 0.02em;
  color: #000;
  font-size: calc(0.0390625 * var(--base));
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.p-home-collabStyle__movie .collab-item .movie-btn .deco {
  position: relative;
  width: calc(0.078125 * var(--base));
  height: calc(0.078125 * var(--base));
  top: calc(0.0260416667 * var(--base));
  right: calc(0.0260416667 * var(--base));
}
.p-home-collabStyle__movie .collab-item .movie-btn .deco svg {
  position: absolute;
  fill: #000;
  width: calc(0.0338541667 * var(--base));
  height: calc(0.0338541667 * var(--base));
  top: calc(0.0234375 * var(--base));
  left: calc(0.02734375 * var(--base));
}
.p-home-collabStyle__movie .collab-item .movie-btn .deco::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/collab-style/deco_btn.png) top center/contain no-repeat;
  width: calc(0.078125 * var(--base));
  height: calc(0.078125 * var(--base));
  inset: 0;
  -webkit-animation: spin 5s linear infinite;
  animation: spin 5s linear infinite;
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
@media (any-hover: hover) {
  .p-home-collabStyle__movie .collab-item .movie-btn {
    -webkit-transition: background-position 0.3s;
    transition: background-position 0.3s;
  }
  .p-home-collabStyle__movie .collab-item .movie-btn:hover {
    background-position: top right;
  }
  .p-home-collabStyle__movie .collab-item .movie-btn:hover .deco::after {
    -webkit-animation-play-state: running;
    animation-play-state: running;
  }
}
.p-home-collabStyle__movie .collab-item + .collab-item {
  margin-top: calc(0.1041666667 * var(--base));
}
.p-home-collabStyle__movie .system-movie {
  margin-top: calc(0.1302083333 * var(--base));
}
.p-home-collabStyle__movie .system-movie .head {
  position: relative;
  width: calc(1 * var(--base));
}
.p-home-collabStyle__movie .system-movie .head .bg {
  position: absolute;
  width: 100%;
  height: calc(0.46875 * var(--base));
  top: calc(-0.1822916667 * var(--base));
  left: 0;
  pointer-events: none;
}
.p-home-collabStyle__movie .system-movie .head .limited-all-attack {
  position: relative;
  z-index: 2;
}
.p-home-collabStyle__movie .system-movie-content {
  margin-inline: auto;
}

/* =============================================================== */
/*	NEWS	*/
/* =============================================================== */
.p-home-news {
  position: relative;
  margin-top: calc(0.15625 * var(--base));
}
.p-home-news__bg {
  position: absolute;
  width: 100%;
  height: calc(0.46875 * var(--base));
  top: calc(-0.15625 * var(--base));
  left: 0;
  z-index: -1;
}
.p-home-news__inner {
  margin-inline: auto;
  width: calc(0.9479166667 * var(--base));
}
.p-home-news__list {
  margin-top: calc(0.0651041667 * var(--base));
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  row-gap: calc(0.0520833333 * var(--base));
}
.p-home-news__item {
  background: #000;
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
  padding: calc(0.0520833333 * var(--base)) calc(0.0260416667 * var(--base));
}
.p-home-news__item .thumb {
  width: 100%;
}
.p-home-news__item .date {
  margin-top: calc(0.0390625 * var(--base));
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.02em;
  text-align: center;
  font-size: calc(0.0390625 * var(--base));
}
.p-home-news__item .date span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
}

/* =============================================================== */
/*	COLLAB FAIR	*/
/* =============================================================== */
.p-home-collabFair {
  margin-top: calc(0.15625 * var(--base));
}
.p-home-collabFair__event {
  margin-top: calc(0.0520833333 * var(--base));
}
.p-home-collabFair__event .event-head {
  width: 100%;
}
.p-home-collabFair__event .event-date {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin: calc(0.0130208333 * var(--base)) auto 0;
  width: calc(0.8958333333 * var(--base));
  height: calc(0.078125 * var(--base));
  border: calc(0.0026041667 * var(--base)) solid #000;
  background: -webkit-gradient(linear, right top, left top, from(#FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFD487 0%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFD487 0%, #FFFBBC 100%);
  -webkit-box-shadow: calc(0.0026041667 * var(--base)) calc(0.0026041667 * var(--base)) 0 0 #FFEBA6;
  box-shadow: calc(0.0026041667 * var(--base)) calc(0.0026041667 * var(--base)) 0 0 #FFEBA6;
  color: #000;
}
.p-home-collabFair__event .event-date .title {
  margin-left: calc(0.1458333333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: 0.02em;
  font-size: calc(0.0364583333 * var(--base));
}
.p-home-collabFair__event .event-date .date {
  margin-left: calc(0.0208333333 * var(--base));
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0.02em;
  font-size: calc(0.0416666667 * var(--base));
}
.p-home-collabFair__event .event-date .date span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
}
.p-home-collabFair__list {
  margin: calc(0.078125 * var(--base)) auto 0;
  width: calc(0.9479166667 * var(--base));
}
.p-home-collabFair__item {
  width: 100%;
  padding: calc(0.0520833333 * var(--base)) calc(0.0260416667 * var(--base)) calc(0.078125 * var(--base));
  background: #000;
  -webkit-box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
  box-shadow: calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 0 #FF2020;
}
.p-home-collabFair__item + .p-home-collabFair__item {
  margin-top: calc(0.0520833333 * var(--base));
}
.p-home-collabFair__item .head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.046875 * var(--base));
  text-align: center;
}
.p-home-collabFair__item .thumb {
  margin-top: calc(0.0390625 * var(--base));
  width: 100%;
}
.p-home-collabFair__item .thumb + .thumb {
  margin-top: calc(0.0390625 * var(--base));
}
.p-home-collabFair__item .txt-wrapper {
  margin-top: calc(0.0390625 * var(--base));
}
.p-home-collabFair__item .txt-wrapper p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.0364583333 * var(--base));
}
.p-home-collabFair__item .txt-wrapper p + p {
  margin-top: calc(0.0390625 * var(--base));
}
.p-home-collabFair__item .btn-specailPage {
  position: relative;
  margin: calc(0.078125 * var(--base)) auto 0;
  width: calc(0.84375 * var(--base));
  height: calc(0.1640625 * var(--base));
}
.p-home-collabFair__item .btn-specailPage::before {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/common/collab-fair/deco_btn_frame.png) top center/contain no-repeat;
  width: calc(0.8359375 * var(--base));
  height: calc(0.15625 * var(--base));
  top: calc(0.0078125 * var(--base));
  left: calc(0.0078125 * var(--base));
}
.p-home-collabFair__item .btn-specailPage a {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  padding-top: calc(0.0520833333 * var(--base));
  width: calc(0.8359375 * var(--base));
  height: calc(0.15625 * var(--base));
  background: -webkit-gradient(linear, right top, left top, from(#FFFBBC), color-stop(50%, #FFD487), to(#FFFBBC));
  background: -webkit-linear-gradient(right, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background: linear-gradient(270deg, #FFFBBC 0%, #FFD487 50%, #FFFBBC 100%);
  background-size: 200% 100%;
  background-position: top left;
  -webkit-clip-path: polygon(calc(0.0234375 * var(--base)) 0, 100% 0, 100% calc(100% - (0.0234375 * var(--base))), calc(100% - (0.0234375 * var(--base))) 100%, 0 100%, 0 calc(0.0234375 * var(--base)));
  clip-path: polygon(calc(0.0234375 * var(--base)) 0, 100% 0, 100% calc(100% - (0.0234375 * var(--base))), calc(100% - (0.0234375 * var(--base))) 100%, 0 100%, 0 calc(0.0234375 * var(--base)));
  will-change: filter;
}
.p-home-collabFair__item .btn-specailPage a::after {
  content: "";
  display: block;
  position: absolute;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4gPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUyMl8zNTc3KSI+IDxwYXRoIGQ9Ik0zIDFIMTNWMTFNMTMgMUwxIDEzTDEzIDFaIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPiA8L2c+IDxkZWZzPiA8Y2xpcFBhdGggaWQ9ImNsaXAwXzUyMl8zNTc3Ij4gPHJlY3Qgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJ3aGl0ZSIvPiA8L2NsaXBQYXRoPiA8L2RlZnM+IDwvc3ZnPg==") top center/contain no-repeat;
  width: calc(0.0182291667 * var(--base));
  height: calc(0.0182291667 * var(--base));
  top: calc(0.0143229167 * var(--base));
  right: calc(0.0143229167 * var(--base));
}
.p-home-collabFair__item .btn-specailPage a span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0;
  font-size: calc(0.0442708333 * var(--base));
  color: #000;
}
@media (any-hover: hover) {
  .p-home-collabFair__item .btn-specailPage::before {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .p-home-collabFair__item .btn-specailPage a {
    -webkit-transition: background-position 0.3s;
    transition: background-position 0.3s;
  }
  .p-home-collabFair__item .btn-specailPage:hover::before {
    -webkit-transform: translate(calc(-0.0078125 * var(--base)), calc(-0.0078125 * var(--base)));
    transform: translate(calc(-0.0078125 * var(--base)), calc(-0.0078125 * var(--base)));
  }
  .p-home-collabFair__item .btn-specailPage:hover a {
    background-position: top right;
    -webkit-animation: bright 1s infinite linear;
    animation: bright 1s infinite linear;
  }
}

/* =============================================================== */
/*	WALLPAPER	*/
/* =============================================================== */
.p-home-wallpaper {
  position: relative;
  margin-top: calc(0.1041666667 * var(--base));
  padding-block: calc(0.1875 * var(--base));
}
.p-home-wallpaper::before, .p-home-wallpaper::after {
  content: "";
  display: block;
  position: absolute;
  background: url(../webp/common/wallpaper/deco_content.webp) top center/contain no-repeat;
  width: 100%;
  height: calc(0.1875 * var(--base));
  left: 0;
}
.p-home-wallpaper::before {
  top: 3px;
}
.p-home-wallpaper::after {
  bottom: 3px;
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
}
.p-home-wallpaper__inner {
  background: #000;
  padding-block: calc(0.0338541667 * var(--base)) calc(0.1041666667 * var(--base));
}
.p-home-wallpaper__txt {
  margin-top: calc(0.0520833333 * var(--base));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.0390625 * var(--base));
  text-align: center;
}
.p-home-wallpaper__image {
  margin: calc(0.0520833333 * var(--base)) auto 0;
  width: calc(0.7239583333 * var(--base));
}
.p-home-wallpaper__share {
  margin-top: calc(0.0520833333 * var(--base));
}
.p-home-wallpaper__share .share-text, .p-home-wallpaper__share .clickable-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  line-height: 160%;
  letter-spacing: 0.02em;
  font-size: calc(0.0520833333 * var(--base));
  text-align: center;
}
.p-home-wallpaper__share .share-text span, .p-home-wallpaper__share .clickable-text span {
  color: #FF2020;
}
.p-home-wallpaper__share .arrow {
  margin: calc(0.0338541667 * var(--base)) auto;
  width: calc(0.0859375 * var(--base));
  height: calc(0.140625 * var(--base));
  will-change: filter;
  -webkit-filter: drop-shadow(calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 #FF2020);
  filter: drop-shadow(calc(0.0052083333 * var(--base)) calc(0.0052083333 * var(--base)) 0 #FF2020);
}
.p-home-wallpaper__share .btn-share {
  margin-top: calc(0.0520833333 * var(--base));
}
.p-home-wallpaper__share .btn-download {
  margin-top: calc(0.0651041667 * var(--base));
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	display設定	*/
/* =============================================================== */
.pc_b {
  display: block !important;
}
@media print, screen and (max-width: 1024px) {
  .pc_b {
    display: none !important;
  }
}

.pc_i {
  display: inline !important;
}
@media print, screen and (max-width: 1024px) {
  .pc_i {
    display: none !important;
  }
}

.pc_ib {
  display: inline-block !important;
}
@media print, screen and (max-width: 1024px) {
  .pc_ib {
    display: none !important;
  }
}

.pc_f {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: flex !important;
}
@media print, screen and (max-width: 1024px) {
  .pc_f {
    display: none !important;
  }
}

.sp_b {
  display: none !important;
}
@media print, screen and (max-width: 1024px) {
  .sp_b {
    display: block !important;
  }
}

.sp_i {
  display: none !important;
}
@media print, screen and (max-width: 1024px) {
  .sp_i {
    display: inline !important;
  }
}

.sp_ib {
  display: none !important;
}
@media print, screen and (max-width: 1024px) {
  .sp_ib {
    display: inline-block !important;
  }
}

.sp_f {
  display: none !important;
}
@media print, screen and (max-width: 1024px) {
  .sp_f {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: flex !important;
  }
}

.is-Loading * {
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transition-delay: unset !important;
  transition-delay: unset !important;
}

.is-Resizing *,
.is-Resizing *::before,
.is-Resizing *::after {
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transition-delay: unset !important;
  transition-delay: unset !important;
}

/* =============================================================== */
/*	Foundation	*/
/* =============================================================== */
/* =============================================================== */
/*	Layout	*/
/* =============================================================== */
/* =============================================================== */
/*	Object	*/
/* =============================================================== */
/*---------------------------------------------------------*/
/* Component */
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/
/* javascript */
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/
/* Project */
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/
/* Ulitily */
/*---------------------------------------------------------*/