@charset "UTF-8";
:root {
  --color-white: #e6f0ff;
  --color-black: #151e2d;
  --color-green: #00ffb9;
  --color-pink: #ff4279;
  --color-yellow: #f8bf1c;
  --color-blue: #5ebaff;
  --color-purple: #9a15d8;
}

@keyframes hover-anime {
  0% {
    filter: blur(0) drop-shadow(-2px -2px 0 rgba(0, 0, 0, 0.3));
  }
  50% {
    filter: blur(2px) drop-shadow(0 0 0 rgba(0, 0, 0, 0.3));
  }
  100% {
    filter: blur(0) drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.3));
  }
}
@keyframes hover-anime-2 {
  0% {
    filter: blur(0) drop-shadow(-2px -2px 0 rgba(0, 0, 0, 0.3));
  }
  50% {
    filter: blur(2px) drop-shadow(0 0 0 rgba(0, 0, 0, 0.3));
  }
  100% {
    filter: blur(0) drop-shadow(3px 3px 0 rgba(0, 0, 0, 0.3));
  }
}
@keyframes hover-anime2 {
  0% {
    background: transparent;
    width: 30%;
    inset: 0;
    scale: 1;
  }
  25% {
    background: #ff4279;
    width: 10%;
    inset: 10% 0 auto 30%;
    margin: auto;
    scale: 1;
  }
  50% {
    background: transparent;
    width: 30%;
    inset: 0;
    scale: 1;
  }
  75% {
    background: #5ebaff;
    width: 5%;
    inset: auto 30% 10% 0;
    margin: auto;
    scale: 0.7;
  }
  100% {
    background: transparent;
    scale: 1;
  }
}
@keyframes hover-anime2-2 {
  0% {
    background: transparent;
    width: 30%;
    inset: 0;
    scale: 1;
  }
  25% {
    background: #ff4279;
    width: 10%;
    inset: 10% 0 auto 30%;
    margin: auto;
    scale: 1;
  }
  50% {
    background: transparent;
    width: 30%;
    inset: 0;
    scale: 1;
  }
  75% {
    background: #5ebaff;
    width: 5%;
    inset: auto 30% 10% 0;
    margin: auto;
    scale: 0.7;
  }
  100% {
    background: transparent;
    scale: 1;
  }
}
@keyframes opacityanime {
  0% {
    filter: brightness(1);
  }
  50% {
    filter: brightness(0);
  }
  100% {
    filter: brightness(1);
  }
}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
button,
p,
blockquote,
th,
td {
  padding: 0;
  margin: 0;
}

img {
  font-size: 0;
  line-height: 0;
  vertical-align: top;
  border: 0;
}

fieldset,
img {
  border: 0;
}

a img {
  border: 0;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

abbr,
acronym {
  border: 0;
}

html {
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

* {
  box-sizing: border-box;
  min-width: 0;
  min-height: 0;
}

a {
  text-decoration: none;
  outline: none;
}

a:focus,
*:focus {
  outline: none;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}
.header .headerInner.pc {
  background: url("../images/common/pc/bg_menu.png") top left/100% no-repeat;
  width: 1154px;
  height: 58px;
  display: flex !important;
}
@media (width <= 1400px) {
  .header .headerInner.pc {
    width: 75vw;
    height: 3.9vw;
  }
}
@media (width <= 1024px) {
  .header .headerInner.pc {
    display: none !important;
  }
}
.header .headerInner.pc .headerNavLogo {
  margin-top: 7px;
  margin-left: 40px;
  width: 77px;
}
@media (width >= 1024px) {
  .header .headerInner.pc .headerNavLogo {
    position: relative;
    transition: scale 0.3s;
  }
  .header .headerInner.pc .headerNavLogo::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .header .headerInner.pc .headerNavLogo:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .header .headerInner.pc .headerNavLogo:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerNavLogo {
    width: 5vw;
    margin-top: 0.5vw;
    margin-left: 2vw;
  }
}
.header .headerInner.pc .headerNavLogo img {
  width: 100%;
}
.header .headerInner.pc .headerMenuList {
  display: flex;
  gap: 35px;
  padding-top: 19px;
  padding-left: 28px;
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerMenuList {
    gap: 1.8vw;
    padding-top: 1.2vw;
    padding-left: 1.2vw;
  }
}
.header .headerInner.pc .headerMenuList .item {
  font-weight: 900;
  line-height: 1;
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerMenuList .item {
    font-size: 1.15vw;
  }
}
.header .headerInner.pc .headerMenuList .item a {
  transition: 0.3s;
}
@media (width >= 1024px) {
  .header .headerInner.pc .headerMenuList .item a {
    position: relative;
    transition: scale 0.3s;
  }
  .header .headerInner.pc .headerMenuList .item a::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .header .headerInner.pc .headerMenuList .item a:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .header .headerInner.pc .headerMenuList .item a:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerMenuList .item a img {
    width: auto;
    height: 0.92vw;
  }
}
.header .headerInner.pc .headerMenuList .item.none {
  pointer-events: none;
  opacity: 0.1;
}
.header .headerInner.pc .headerSnsCol {
  display: flex;
  margin-left: 90px;
  margin-top: 17px;
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerSnsCol {
    margin-left: 6.5vw;
    margin-top: 1.1vw;
  }
}
.header .headerInner.pc .headerSnsCol .snsTit {
  font-weight: bold;
  font-size: 14px;
  color: #fff;
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerSnsCol .snsTit {
    font-size: 1vw;
  }
}
.header .headerInner.pc .headerSnsCol .snsList {
  display: flex;
  margin-left: 15px;
  gap: 10px;
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerSnsCol .snsList {
    margin-left: 0.6vw;
    gap: 0.6vw;
  }
}
.header .headerInner.pc .headerSnsCol .snsList .sns-x {
  width: 20px;
}
@media (width >= 1024px) {
  .header .headerInner.pc .headerSnsCol .snsList .sns-x {
    position: relative;
    transition: scale 0.3s;
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-x::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-x:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-x:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
.header .headerInner.pc .headerSnsCol .snsList .sns-youtube {
  width: 26px;
}
@media (width >= 1024px) {
  .header .headerInner.pc .headerSnsCol .snsList .sns-youtube {
    position: relative;
    transition: scale 0.3s;
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-youtube::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-youtube:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .header .headerInner.pc .headerSnsCol .snsList .sns-youtube:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1400px) {
  .header .headerInner.pc .headerSnsCol .snsList .sns-youtube {
    width: 1.8vw;
  }
}
.header .headerInner.sp {
  display: none;
}
@media (width <= 1024px) {
  .header .headerInner.sp {
    display: block !important;
    background: url("../images/common/sp/bg_menu.png") top left/100%;
    width: 100vw;
    height: 13.3333333333vw;
  }
  .header .headerInner.sp .headerNavLogo {
    position: absolute;
    top: 2.2vw;
    left: 8vw;
    width: 17.0666666667vw;
  }
  .header .headerInner.sp .humbergerBtn {
    position: absolute;
    width: 16vw;
    top: 1.5vw;
    right: 5vw;
  }
  .header .headerInner.sp .humbergerBtn .open {
    display: block;
  }
  .header .headerInner.sp .humbergerBtn .close {
    display: none;
  }
  .header .headerInner.sp .headerNav {
    display: block;
    position: relative;
    z-index: -1;
    background: var(--color-black);
    color: var(--color-black);
    padding-top: 25vw;
    padding-bottom: 7vw;
    translate: 0 -150vw;
    transition: translate 0.2s cubic-bezier(0.85, 0, 0.15, 1), color 0.2s cubic-bezier(0.85, 0, 0.15, 1) 0.1s;
  }
  .header .headerInner.sp .headerNav .headerNavList {
    margin-left: 10vw;
  }
  .header .headerInner.sp .headerNav .headerNavList .headerNavListItem {
    width: -moz-fit-content;
    width: fit-content;
  }
  .header .headerInner.sp .headerNav .headerNavList .headerNavListItem + .headerNavListItem {
    margin-top: 5.3333333333vw;
  }
  .header .headerInner.sp .headerNav .headerNavList .headerNavListItem img {
    width: auto;
    height: 4vw;
  }
  .header .headerInner.sp .headerNav .headerNavList .headerNavListItem.none {
    pointer-events: none;
    opacity: 0.1;
  }
  .header .headerInner.sp .headerNav::before {
    content: "";
    position: absolute;
    display: block;
    width: 100vw;
    height: 7.4666666667vw;
    bottom: -7vw;
    background: url("../images/common/sp/bg_nav-bottom.png") top left/100%;
  }
  .header .headerInner.sp .headerNav .headerSnsCol {
    margin-top: 12vw;
    display: flex;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s cubic-bezier(0.85, 0, 0.15, 1) 0.2s;
  }
  .header .headerInner.sp .headerNav .headerSnsCol .snsTit {
    font-weight: bold;
    font-size: 4.2666666667vw;
    color: #fff;
  }
  .header .headerInner.sp .headerNav .headerSnsCol .snsList {
    display: flex;
    margin-left: 5.3333333333vw;
    gap: 4vw;
  }
  .header .headerInner.sp .headerNav .headerSnsCol .snsList .sns-x {
    width: 7.2vw;
  }
  .header .headerInner.sp .headerNav .headerSnsCol .snsList .sns-youtube {
    width: 9.4666666667vw;
  }
}
.header:has(.is-open) {
  background-color: rgba(255, 255, 255, 0.7);
  height: 100%;
  transition: background-color 0.3s;
}
.header:has(.is-open)::before {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  height: 2vw;
  z-index: 1;
  animation: hover-anime2 0.5s steps(5);
}
.header:has(.is-open) .headerInner .humbergerBtn .open {
  display: none;
}
.header:has(.is-open) .headerInner .humbergerBtn .close {
  display: block;
}
.header:has(.is-open) .headerInner .headerNav {
  translate: 0 0;
  color: #fff;
}
.header:has(.is-open) .headerInner .headerNav .headerNavListItem {
  position: relative;
  animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1) 0.2s;
}
.header:has(.is-open) .headerInner .headerNav .headerNavListItem::before {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  height: 2vw;
  z-index: 1;
  animation: hover-anime2 0.3s steps(5) 0.2s;
}
.header:has(.is-open) .headerInner .headerSnsCol {
  position: relative;
  opacity: 1 !important;
  animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1) 0.3s;
}
.header:has(.is-open) .headerInner .headerSnsCol::before {
  content: "";
  position: absolute;
  display: block;
  width: 50%;
  height: 2vw;
  z-index: 1;
  animation: hover-anime2 0.3s steps(5) 0.3s;
}

footer {
  overflow: hidden;
}

.footerCol {
  margin-top: 130px;
  color: #fff;
  background: url("../images/common/pc/bg_footer.png") top left/cover no-repeat;
  width: 1574px;
  height: 293px;
  margin-right: 0;
  margin-left: auto;
  display: flex;
  justify-content: space-between;
  padding-top: 60px;
  padding-left: 210px;
  font-size: 14px;
  position: relative;
}
@media (width <= 1600px) {
  .footerCol {
    width: calc(100% + 140px);
    margin-left: -140px;
  }
}
@media (width <= 1140px) {
  .footerCol {
    padding-left: 170px;
  }
}
@media (width <= 1090px) {
  .footerCol {
    font-size: 1.2vw;
  }
}
@media (width <= 1024px) {
  .footerCol {
    margin-top: 11vw;
    background: url("../images/common/sp/bg_footer.png") top left/100%;
    width: 100vw;
    height: 187.8666666667vw;
    padding-top: 60px;
    padding-left: 0;
    display: block;
    position: relative;
    font-size: 3.4666666667vw;
    margin-left: 0;
  }
}
.footerCol::before {
  content: "";
  position: absolute;
  top: 55px;
  right: 0;
  background: url("../images/common/pc/bg_footer2.png") top left/100%;
  width: 376px;
  height: 237px;
  z-index: -1;
}
@media (width <= 1024px) {
  .footerCol::before {
    display: none;
  }
}
.footerCol .footerLogo {
  width: 520px;
  cursor: pointer;
}
@media (width >= 1024px) {
  .footerCol .footerLogo {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLogo::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLogo:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLogo:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLogo {
    width: 50.8vw;
    filter: brightness(0) invert(1);
    position: absolute;
    top: 47vw;
    right: 0;
    left: 0;
    margin: auto;
  }
}
.footerCol .footerNavCol {
  margin-top: 40px;
}
@media (width <= 1024px) {
  .footerCol .footerNavCol {
    margin-top: 0;
    position: absolute;
    top: 15vw;
    left: 5vw;
    width: 90vw;
  }
}
.footerCol .footerNavCol .footerNavList {
  display: flex;
  gap: 32px;
}
@media (width <= 1024px) {
  .footerCol .footerNavCol .footerNavList {
    gap: 2vw 8vw;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media (width <= 1024px) {
  .footerCol .footerNavCol .footerNavList .footerNavListItem:nth-child(3)::before {
    display: none;
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem:nth-child(5)::before {
    display: none;
  }
}
.footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting {
  background: transparent !important;
  font-size: 14px !important;
  padding: 0 !important;
}
@media (width >= 1024px) {
  .footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerNavCol .footerNavList .footerNavListItem .btnCookieSetting {
    font-size: 3.4666666667vw !important;
  }
}
@media (width >= 1024px) {
  .footerCol .footerNavCol .footerNavList .footerNavListItem a {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem a::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem a:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerNavCol .footerNavList .footerNavListItem a:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
.footerCol .footerNavCol .footerNavList .footerNavListItem + .footerNavListItem {
  position: relative;
}
.footerCol .footerNavCol .footerNavList .footerNavListItem + .footerNavListItem::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 15px;
  background: #abb4c3;
  transform: skewX(-30deg);
  top: 2px;
  left: -15px;
}
@media (width <= 1024px) {
  .footerCol .footerNavCol .footerNavList .footerNavListItem + .footerNavListItem::before {
    height: 4vw;
    top: 1vw;
    left: -4vw;
  }
}
.footerCol .footerTxtCol {
  margin-top: 30px;
}
@media (width <= 1024px) {
  .footerCol .footerTxtCol {
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    position: absolute;
    width: 90vw;
    top: 103vw;
    left: 0;
    right: 0;
    font-size: 3.7333333333vw;
    font-weight: 300;
    line-height: 1.8;
  }
}
.footerCol .footerLight {
  padding-right: 40px;
}
@media (width <= 1140px) {
  .footerCol .footerLight {
    padding-right: 20px;
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight {
    padding-right: 0;
  }
}
.footerCol .footerLight .footerSnsCol {
  display: flex;
  margin-top: 45px;
  justify-content: right;
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerSnsCol {
    position: absolute;
    top: 87vw;
    right: 0;
    left: 0;
    margin: 0 auto;
    justify-content: center;
  }
}
.footerCol .footerLight .footerSnsCol .snsTit {
  font-weight: bold;
  font-size: 14px;
  color: #fff;
}
@media (width <= 1090px) {
  .footerCol .footerLight .footerSnsCol .snsTit {
    font-size: 1.2vw;
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsTit {
    font-size: 4.2666666667vw;
  }
}
.footerCol .footerLight .footerSnsCol .snsList {
  display: flex;
  margin-left: 15px;
  gap: 10px;
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsList {
    margin-left: 5.3333333333vw;
    gap: 4vw;
  }
}
.footerCol .footerLight .footerSnsCol .snsList .sns-x {
  width: 20px;
}
@media (width >= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsList .sns-x {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-x::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-x:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-x:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsList .sns-x {
    width: 7.2vw;
  }
}
.footerCol .footerLight .footerSnsCol .snsList .sns-youtube {
  width: 26px;
}
@media (width >= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsList .sns-youtube {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-youtube::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-youtube:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLight .footerSnsCol .snsList .sns-youtube:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerSnsCol .snsList .sns-youtube {
    width: 9.4666666667vw;
  }
}
.footerCol .footerLight .footerLogoCol {
  margin-top: 40px;
  display: flex;
  gap: 15px;
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerLogoCol {
    margin-top: 0;
    margin-right: auto;
    margin-left: auto;
    width: 60vw;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 138vw;
    left: 0;
    right: 0;
  }
}
.footerCol .footerLight .footerLogoCol .btnJobLink {
  border: solid 1px #fff;
  padding: 6px 30px 0;
  font-size: 12px;
}
@media (width >= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnJobLink {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLight .footerLogoCol .btnJobLink::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLight .footerLogoCol .btnJobLink:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLight .footerLogoCol .btnJobLink:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnJobLink {
    border: solid 2px #fff;
    padding: 1vw 10vw 2vw;
    font-size: 3.7333333333vw;
  }
}
.footerCol .footerLight .footerLogoCol .btnBandai {
  width: 30px;
}
@media (width >= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnBandai {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLight .footerLogoCol .btnBandai::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLight .footerLogoCol .btnBandai:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLight .footerLogoCol .btnBandai:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnBandai {
    width: 13.3333333333vw;
  }
}
.footerCol .footerLight .footerLogoCol .btnBn {
  width: 119px;
}
@media (width >= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnBn {
    position: relative;
    transition: scale 0.3s;
  }
  .footerCol .footerLight .footerLogoCol .btnBn::before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    height: 5px;
    z-index: 1;
  }
  .footerCol .footerLight .footerLogoCol .btnBn:hover {
    scale: 0.95;
    animation: hover-anime 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  }
  .footerCol .footerLight .footerLogoCol .btnBn:hover::before {
    animation: hover-anime2 0.3s steps(5);
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerLogoCol .btnBn {
    width: 42.4vw;
  }
}
.footerCol .footerLight .footerCopyrightCol {
  margin-top: 40px;
  font-size: 12px;
}
@media (width <= 1090px) {
  .footerCol .footerLight .footerCopyrightCol {
    font-size: 1.1vw;
  }
}
@media (width <= 1024px) {
  .footerCol .footerLight .footerCopyrightCol {
    margin-top: 0;
    font-size: 3.2vw;
    position: absolute;
    bottom: 8vw;
    text-align: center;
    width: 100vw;
  }
}

::-moz-selection {
  background: var(--color-green);
}

::selection {
  background: var(--color-green);
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.sp {
  display: none !important;
}
@media (width <= 1024px) {
  .sp {
    display: block !important;
  }
}

.pc {
  display: block !important;
}
@media (width <= 1024px) {
  .pc {
    display: none !important;
  }
}

/* button固有のスタイルを解除 */
button,
a {
  display: inline-block;
  /* aタグでもサイズを持てるように */
  padding: 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  vertical-align: middle;
  /* テキスト関連のスタイルを統一 */
  color: inherit;
  text-align: inherit;
  text-decoration: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  /* 操作性の統一 */
  cursor: pointer;
  background: transparent;
  border: none;
  border-radius: 0;
}
button:focus-visible,
a:focus-visible {
  outline: #015aff solid 2px;
}

body {
  font-family: Poppins, "Noto Sans JP", sans-serif;
  background: var(--color-white);
}
body.no-scroll {
  overflow: hidden;
}

/* マージン */
.mt120 {
  margin-top: 120px;
}
@media (width <= 1024px) {
  .mt120 {
    margin-top: 16vw;
  }
}

.mt80 {
  margin-top: 80px;
}
@media (width <= 1024px) {
  .mt80 {
    margin-top: 10.6666666667vw;
  }
}

.mt70 {
  margin-top: 70px;
}
@media (width <= 1024px) {
  .mt70 {
    margin-top: 9.3333333333vw;
  }
}

.mt60 {
  margin-top: 60px;
}
@media (width <= 1024px) {
  .mt60 {
    margin-top: 8vw;
  }
}

.mt50 {
  margin-top: 50px;
}
@media (width <= 1024px) {
  .mt50 {
    margin-top: 6.6666666667vw;
  }
}

.mt40 {
  margin-top: 40px;
}
@media (width <= 1024px) {
  .mt40 {
    margin-top: 5.3333333333vw;
  }
}

.mt30 {
  margin-top: 30px;
}
@media (width <= 1024px) {
  .mt30 {
    margin-top: 4vw;
  }
}

.mt20 {
  margin-top: 20px;
}
@media (width <= 1024px) {
  .mt20 {
    margin-top: 2.6666666667vw;
  }
}

.mt10 {
  margin-top: 10px;
}
@media (width <= 1024px) {
  .mt10 {
    margin-top: 1.3333333333vw;
  }
}

.mt0 {
  margin-top: 0;
}

/* 見出し */
.lTitCol {
  font-size: 32px;
  font-weight: 900;
}

/* 文字の太さ */
.txtThin {
  font-weight: 200;
}

.txtLight {
  font-weight: 300;
}

.txtRegular {
  font-weight: 400;
}

.txtMedium {
  font-weight: 500;
}

.txtBold {
  font-weight: 700;
}

.txtExBold {
  font-weight: 800;
}

.txtBlack {
  font-weight: 900;
}

@media (width <= 1024px) {
  .w100Sp {
    width: 100% !important;
  }
}

@media (width <= 1024px) {
  .w90Sp {
    width: 90% !important;
  }
}

@media (width <= 1024px) {
  .w80Sp {
    width: 80% !important;
  }
}

@media (width <= 1024px) {
  .w70Sp {
    width: 70% !important;
  }
}

@media (width <= 1024px) {
  .w60Sp {
    width: 60% !important;
  }
}

@media (width <= 1024px) {
  .w50Sp {
    width: 50% !important;
  }
}

@media (width <= 1024px) {
  .w40Sp {
    width: 40% !important;
  }
}

@media (width <= 1024px) {
  .w30Sp {
    width: 30% !important;
  }
}

.fancybox__container {
  --fancybox-backdrop-bg: rgb(227 235 248 / 90%);
}

.f-button {
  background: rgb(21, 30, 45);
}