@charset "utf-8";
/*-----------------------------------------------
 * COOMON
 * FV
 * NEWS
 * INTRODUCTION
 * STAFF&CAST
 * CHARACTER
 * BOOKS
-------------------------------------------------*/
/*-----------------------------------------------
 * COOMON
-------------------------------------------------*/
.section {
    position: relative;
}
.houseWrap.--before {
    width: min(calc(590 / var(--vw-min) * 100vw),590px);
    height: min(calc(472 / var(--vw-min) * 100vw),472px);
    position: absolute;
    bottom: max(calc(-185 / var(--vw-min) * 100vw),-185px);
    left: 0;
    z-index: 2;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .houseWrap.--before {
        width: calc(276 / var(--vw-min) * 100vw);
        height: calc(223 / var(--vw-min) * 100vw);
        bottom: calc(-112 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--after {
    width: min(calc(518 / var(--vw-min) * 100vw),518px);
    height: min(calc(472 / var(--vw-min) * 100vw),472px);
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .houseWrap.--after {
        width: calc(268 / var(--vw-min) * 100vw);
        height: calc(224 / var(--vw-min) * 100vw);
    }
}
.houseWrap::before {
    content: "";
    width: min(calc(750 / var(--vw-min) * 100vw),750px);
    height: min(calc(472 / var(--vw-min) * 100vw),472px);
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
    background: url(../img/common/deco/deco_woodFrame.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_woodFrame.webp)){
    .houseWrap::before {
        background-image: url(../img/common/deco/deco_woodFrame.webp);
    }
}
@media screen and (max-width:768px){
    .houseWrap::before {
        width: calc(356 / var(--vw-min) * 100vw);
        height: calc(224 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--before::before {
    right: 0;
}
.houseWrap.--after::before {
    left: 0;
}
.house__img {
    border-radius: min(calc(100 / var(--vw-min) * 100vw),100px);
    position: absolute;
    top: min(calc(26 / var(--vw-min) * 100vw),26px);
    border-radius: 50%;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .house__img {
        border-radius: calc(100 / var(--vw-min) * 100vw);
        top: calc(11 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--before .house__img {
    width: min(calc(554 / var(--vw-min) * 100vw),554px);
    height: min(calc(420 / var(--vw-min) * 100vw),420px);
    right: min(calc(90 / var(--vw-min) * 100vw),90px);
}
@media screen and (max-width:768px){
    .houseWrap.--before .house__img {
        width: calc(263 / var(--vw-min) * 100vw);
        height: calc(199 / var(--vw-min) * 100vw);
        right: calc(43 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--after .house__img {
    width: min(calc(600 / var(--vw-min) * 100vw),600px);
    height: min(calc(420 / var(--vw-min) * 100vw),420px);
    left: min(calc(86 / var(--vw-min) * 100vw),86px);
}
@media screen and (max-width:768px){
    .houseWrap.--after .house__img {
        width: calc(285 / var(--vw-min) * 100vw);
        height: calc(199 / var(--vw-min) * 100vw);
        left: calc(40 / var(--vw-min) * 100vw);
    }
}
.houseWrap.js-scrani--float {
    --scrani-from: translateY(min(calc(16 / var(--vw-min) * 100vw), 16px));
}
@media screen and (max-width:768px){
    .houseWrap.js-scrani--float {
        --scrani-from: translateY(calc(16 / var(--vw-min) * 100vw));
    }
}
.house__img img {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
    object-fit: cover;
    pointer-events: none;
    transform: scale(var(--house-scale, 1));
    transform-origin: center center;
}
.house__label {
    width: min(calc(200 / var(--vw-min) * 100vw),200px);
    height: min(calc(64 / var(--vw-min) * 100vw),64px);
    position: absolute;
}
@media screen and (max-width:768px){
    .house__label {
        width: calc(95 / var(--vw-min) * 100vw);
        height: calc(30 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--before .house__label {
    bottom: min(calc(70 / var(--vw-min) * 100vw),70px);
    left: min(calc(48 / var(--vw-min) * 100vw),48px);
    background: url(../img/common/deco/deco_before.png)no-repeat center/100%;
    transform: rotate(14deg);
}
@media screen and (max-width:768px){
    .houseWrap.--before .house__label {
        bottom: calc(45 / var(--vw-min) * 100vw);
        left: calc(18 / var(--vw-min) * 100vw);
    }
}
.houseWrap.--after .house__label {
    bottom: min(calc(157 / var(--vw-min) * 100vw),157px);
    left: min(calc(65 / var(--vw-min) * 100vw),65px);
    background: url(../img/common/deco/deco_after.png)no-repeat center/100%;
    transform: rotate(66deg);
}
@media screen and (max-width:768px){
    .houseWrap.--after .house__label {
        bottom: calc(74 / var(--vw-min) * 100vw);
        left: calc(32 / var(--vw-min) * 100vw);
    }
}
/*-----------------------------------------------
 * FV
-------------------------------------------------*/
.fv {
    position: relative;
    overflow: hidden;
    padding-top: calc(72 / var(--vw-min) * 100vw);
    background: url(../img/common/bg/bg_top.jpg)no-repeat top/contain;
}
@supports (background-image: url(../img/common/bg/bg_top.webp)){
    .fv {
        background-image: url(../img/common/bg/bg_top.webp);
    }
}
@media screen and (max-width:768px){
    .fv {
        padding-top: calc(12 / var(--vw-min) * 100vw);
    }
}
.fv__vsWrap {
    width: calc(1220 / var(--vw-min) * 100vw);
    position: relative;
    margin: 0 auto;
    padding: calc(40 / var(--vw-min) * 100vw) 0;
}
@media screen and (max-width:768px){
    .fv__vsWrap {
        width: calc(399 / var(--vw-min) * 100vw);
        left: calc(-12 / var(--vw-min) * 100vw);
        padding: 0;
    }
}
.fv__vs {
    width: calc(1200 / var(--vw-min) * 100vw);
    margin: 0 auto;
    position: relative;
}
@media screen and (max-width:768px){
    .fv__vs {
        width: calc(399 / var(--vw-min) * 100vw);
    }
}
.fv__vs::after {
    content: "";
    width: calc(100% + calc(10 / var(--vw-min) * 100vw));
    height: calc(100% + calc(10 / var(--vw-min) * 100vw));
    display: block;
    position: absolute;
    top: calc(-9 / var(--vw-min) * 100vw);
    left: calc(-9 / var(--vw-min) * 100vw);
    border-radius: 50%;
    border: calc(5 / var(--vw-min) * 100vw) solid var(--color-goldA68);
}
@media screen and (max-width:768px){
    .fv__vs::after {
        width: calc(100% + calc(8 / var(--vw-min) * 100vw));
        height: calc(100% + calc(8 / var(--vw-min) * 100vw));
        border-width: calc(2 / var(--vw-min) * 100vw);
        top: calc(-6 / var(--vw-min) * 100vw);
        left: calc(-6 / var(--vw-min) * 100vw);
    }
}
.fv__vsLists {
    overflow: hidden;
    border-radius: 50%;
}
.fv__vsItem {
    transform: scale(var(--fv-vs-scale, 1));
    transform-origin: center center;
}
.fv__vsItem img {
    width: 100%;
    pointer-events: none;
}
.fv__logo {
    width: calc(718 / var(--vw-min) * 100vw);
    height: calc(352 / var(--vw-min) * 100vw);
    position: absolute;
    right: 0;
    bottom: calc(145 / var(--vw-min) * 100vw);
    left: 0;
    margin: auto;
    background: url(../img/common/logo/logo.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .fv__logo {
        width: calc(229 / var(--vw-min) * 100vw);
        height: calc(112 / var(--vw-min) * 100vw);
        bottom: calc(40 / var(--vw-min) * 100vw);
    }
}
.fv__catch.--right {
    width: calc(64 / var(--vw-min) * 100vw);
    height: calc(664 / var(--vw-min) * 100vw);
    position: absolute;
    top: calc(134 / var(--vw-min) * 100vw);
    right: calc(30 / var(--vw-min) * 100vw);
    z-index: 1;
    background: url(../img/top/fv_catch1.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .fv__catch.--right {
        width: calc(24 / var(--vw-min) * 100vw);
        height: calc(252 / var(--vw-min) * 100vw);
        top: calc(80 / var(--vw-min) * 100vw);
        right: calc(24 / var(--vw-min) * 100vw);
    }
}
.fv__catch.--left {
    width: calc(64 / var(--vw-min) * 100vw);
    height: calc(574 / var(--vw-min) * 100vw);
    position: absolute;
    top: calc(256 / var(--vw-min) * 100vw);
    left: calc(27 / var(--vw-min) * 100vw);
    z-index: 1;
    background: url(../img/top/fv_catch2.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .fv__catch.--left {
        width: calc(24 / var(--vw-min) * 100vw);
        height: calc(216 / var(--vw-min) * 100vw);
        top: calc(136 / var(--vw-min) * 100vw);
        left: calc(24 / var(--vw-min) * 100vw);
    }
}
.fv.--is-await-reveal .fv__catch {
    opacity: 0;
}
.fv.--is-reveal .fv__catch.--right {
    animation: fvCatchFadeIn 1.8s var(--easing-hover) 0.2s both;
}
.fv.--is-reveal .fv__catch.--left {
    animation: fvCatchFadeIn 1.8s var(--easing-hover) 0.55s both;
}
@keyframes fvCatchFadeIn {
    0% {
        opacity: 0;
        transform: translateY(min(calc(20 / var(--vw-min) * 100vw), 20px));
    }
    100% {
        opacity: 1;
        transform: none;
    }
}
/**
* ON AIR
**/
.fv__onair {
    width: calc(1200 / var(--vw-min) * 100vw);
    height: calc(160 / var(--vw-min) * 100vw);
    position: absolute;
    bottom: calc(433 / var(--vw-min) * 100vw);
    right: 0;
    left: 0;
    z-index: 2;
    margin: auto;
    pointer-events: none;
    background: url(../img/top/fv_onair.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .fv__onair {
        width: calc(238 / var(--vw-min) * 100vw);
        height: calc(112 / var(--vw-min) * 100vw);
        right: unset;
        bottom: calc(208 / var(--vw-min) * 100vw);
        left: calc(12 / var(--vw-min) * 100vw);
        background-image: url(../img/top/fv_onair-s.png);
    }
}
/**
* MOVIE
**/
.fv__movie {
    width: calc(808 / var(--vw-min) * 100vw);
    height: calc(561 / var(--vw-min) * 100vw);
    position: relative;
    z-index: 1;
    margin: calc(130 / var(--vw-min) * 100vw) 0 0 auto;
    -webkit-mask: url(../img/common/bg/bg_movie.svg)no-repeat left/calc(936 / var(--vw-min) * 100vw) calc(560 / var(--vw-min) * 100vw);
    mask: url(../img/common/bg/bg_movie.svg)no-repeat left/calc(936 / var(--vw-min) * 100vw) calc(560 / var(--vw-min) * 100vw);
    overflow: hidden;
}
@media screen and (max-width:768px){
    .fv__movie {
        width: calc(360 / var(--vw-min) * 100vw);
        height: calc(252 / var(--vw-min) * 100vw);
        margin-top: calc(88 / var(--vw-min) * 100vw);
        -webkit-mask-size: calc(420 / var(--vw-min) * 100vw) calc(252 / var(--vw-min) * 100vw);
        mask-size: calc(420 / var(--vw-min) * 100vw) calc(252 / var(--vw-min) * 100vw);
    }
}
.fv__movie::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: url(../img/common/bg/bg_movieCover.png)no-repeat left top/calc(936 / var(--vw-min) * 100vw) calc(560 / var(--vw-min) * 100vw);
    pointer-events: none;
}
@supports (background-image: url(../img/common/bg/bg_movieCover.webp)){
    .fv__movie::before {
        background-image: url(../img/common/bg/bg_movieCover.webp);
    }
}
@media screen and (max-width:768px){
    .fv__movie::before {
        background-size: calc(420 / var(--vw-min) * 100vw) calc(252 / var(--vw-min) * 100vw);
    }
}
.movieBtn {
    width: 100%;
    height: 100%;
    position: relative;
    cursor: pointer;
    pointer-events: auto;
    transition: transform var(--duration-hover) var(--easing-hover);
}
.fv__movieCont {
    width: calc(370 / var(--vw-min) * 100vw);
    padding-top: 25.7426%;
    position: absolute;
    top: calc(293 / var(--vw-min) * 100vw);
    left: calc(281 / var(--vw-min) * 100vw);
    display: block;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .fv__movieCont {
        width: calc(164 / var(--vw-min) * 100vw);
        padding-top: 25.5556%;
        top: calc(133 / var(--vw-min) * 100vw);
        left: calc(130 / var(--vw-min) * 100vw);
    }
}
.movieBtn img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}
.movie__play {
    width: calc(128 / var(--vw-min) * 100vw);
    height: calc(125 / var(--vw-min) * 100vw);
    position: absolute;
    right: calc(100 / var(--vw-min) * 100vw);
    bottom: calc(217 / var(--vw-min) * 100vw);
    z-index: 100;
}
@media screen and (max-width:768px){
    .movie__play {
        width: calc(64 / var(--vw-min) * 100vw);
        height: calc(64 / var(--vw-min) * 100vw);
        right: calc(40 / var(--vw-min) * 100vw);
        bottom: calc(94 / var(--vw-min) * 100vw);
    }
}
.movie__play::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    -webkit-mask: url(../img/common/deco/deco_playTxt.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_playTxt.svg)no-repeat center/contain;
    background-color: #fff;
}
.fv__movie.--is-play-ani .movie__play::before {
    animation: 20s ani_rotate01 linear infinite;
}
.movie__play::after {
    content: "";
    width: calc(30 / var(--vw-min) * 100vw);
    height: calc(31 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    inset: 0;
    left: calc(9 / var(--vw-min) * 100vw);
    margin: auto;
    -webkit-mask: url(../img/common/deco/deco_playArrow.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_playArrow.svg)no-repeat center/contain;
    background-color: #fff;
}
@media screen and (max-width:768px){
    .movie__play::after {
        width: calc(15 / var(--vw-min) * 100vw);
        height: calc(16 / var(--vw-min) * 100vw);
        left: calc(3 / var(--vw-min) * 100vw);
    }
}
.movie__bg {
    position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow: hidden;
	pointer-events: none;
}
.movie__bg-player {
    position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	pointer-events: none;
    transition: transform var(--duration-hover) var(--easing-hover);
}
@media (hover: hover) and (pointer: fine){
    .movieBtn:hover {
        transform: translateY(-5px) scale(1.04);
    }
    .movieBtn:active {
        transform: translateY(-1px) scale(0.98);
        transition-duration: var(--duration-hover-press);
    }
    .movieBtn:hover .movie__bg-player {
        transform: scale(1.06);
    }
}
/**
* deco
**/
.fv__vsDeco::before,
.fv__vsDeco::after {
    content: "";
    width: calc(512 / var(--vw-min) * 100vw);
    height: calc(512 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    background: url(../img/common/deco/deco_vsDeco.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .fv__vsDeco::before,
    .fv__vsDeco::after {
        width: calc(129 / var(--vw-min) * 100vw);
        height: calc(140 / var(--vw-min) * 100vw);
        background-image: url(../img/common/deco/deco_vsDeco-s.png);
    }
}
.fv__vsDeco.--top::before,
.fv__vsDeco.--top::after {
    top: 0;
}
.fv__vsDeco.--top::before {
    left: 0;
}
@media screen and (max-width:768px){
    .fv__vsDeco.--top::before {
        left: calc(12 / var(--vw-min) * 100vw);
    }
}
.fv__vsDeco.--top::after {
    right: 0;
    transform: scale(-1,1);
}
@media screen and (max-width:768px){
    .fv__vsDeco.--top::after {
        right: calc(12 / var(--vw-min) * 100vw);
    }
}
.fv__vsDeco.--bottom::before {
    bottom: 0;
    left: 0;
    transform: scale(1,-1);
}
@media screen and (max-width:768px){
    .fv__vsDeco.--bottom::before {
        left: calc(12 / var(--vw-min) * 100vw);
    }
}
.fv__vsDeco.--bottom::after {
    right: 0;
    bottom: 0;
    transform: scale(-1,-1);
}
@media screen and (max-width:768px){
    .fv__vsDeco.--bottom::after {
        right: calc(12 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood1 {
    width: calc(616 / var(--vw-min) * 100vw);
    height: calc(294 / var(--vw-min) * 100vw);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width:768px){
    .fv .deco__wood1 {
        width: calc(219 / var(--vw-min) * 100vw);
        height: calc(112 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood1::before {
    content: "";
    width: calc(712 / var(--vw-min) * 100vw);
    height: calc(350 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    background: url(../img/common/deco/deco_wood3.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_wood3.webp)){
    .fv .deco__wood1::before {
        background-image: url(../img/common/deco/deco_wood3.webp);
    }
}
@media screen and (max-width:768px){
    .fv .deco__wood1::before {
        width: calc(274 / var(--vw-min) * 100vw);
        height: calc(134 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood2 {
    width: calc(389 / var(--vw-min) * 100vw);
    height: calc(318 / var(--vw-min) * 100vw);
    position: absolute;
    top: calc(1525 / var(--vw-min) * 100vw);
    right: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width:768px){
    .fv .deco__wood2 {
        width: calc(142 / var(--vw-min) * 100vw);
        height: calc(116 / var(--vw-min) * 100vw);
        top: calc(465 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood2::before {
    content: "";
    width: calc(760 / var(--vw-min) * 100vw);
    height: calc(318 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    background: url(../img/common/deco/deco_wood4.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_wood4.webp)){
    .fv .deco__wood2::before {
        background-image: url(../img/common/deco/deco_wood4.webp);
    }
}
@media screen and (max-width:768px){
    .fv .deco__wood2::before {
        width: calc(276 / var(--vw-min) * 100vw);
        height: calc(116 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood3 {
    width: calc(828 / var(--vw-min) * 100vw);
    height: calc(428 / var(--vw-min) * 100vw);
    position: absolute;
    bottom: calc(43 / var(--vw-min) * 100vw);
    left: 0;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .fv .deco__wood3 {
        width: calc(236 / var(--vw-min) * 100vw);
        height: calc(151 / var(--vw-min) * 100vw);
        bottom: calc(70 / var(--vw-min) * 100vw);
    }
}
.fv .deco__wood3::before {
    content: "";
    width: calc(1020 / var(--vw-min) * 100vw);
    height: calc(448 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../img/common/deco/deco_wood5.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_wood5.webp)){
    .fv .deco__wood3::before {
        background-image: url(../img/common/deco/deco_wood5.webp);
    }
}
@media screen and (max-width:768px){
    .fv .deco__wood3::before {
        width: calc(358 / var(--vw-min) * 100vw);
        height: calc(151 / var(--vw-min) * 100vw);
    }
}
/*-----------------------------------------------
 * NEWS
-------------------------------------------------*/
.news {
    padding: min(calc(160 / var(--vw-min) * 100vw),160px) 0 min(calc(198 / var(--vw-min) * 100vw),198px);
}
@media screen and (max-width:768px){
    .news {
        padding: calc(84 / var(--vw-min) * 100vw) 0 calc(136 / var(--vw-min) * 100vw);
    }
}
.newsWrap {
    width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
    display: flex;
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .newsWrap {
        width: 100%;
        flex-direction: column;
        padding: 0 calc(20 / var(--vw-min) * 100vw);
    }
}
.news .cont-titWrap {
    width: min(calc(434 / var(--vw-min) * 100vw),434px);
    flex-shrink: 0;
}
@media screen and (max-width:768px){
    .news .cont-titWrap {
        width: 100%;
    }
}
.news .cont-tit::before {
    top: max(calc(-30 / var(--vw-min) * 100vw),-30px);
    left: min(calc(65 / var(--vw-min) * 100vw),65px);
}
@media screen and (max-width:768px){
    .news .cont-tit::before {
        top: calc(-12 / var(--vw-min) * 100vw);
        left: calc(31 / var(--vw-min) * 100vw);
    }
}
.newsCont {
    width: calc(100% - min(calc(434 / var(--vw-min) * 100vw),434px));
    padding-top: min(calc(45 / var(--vw-min) * 100vw),45px);
}
@media screen and (max-width:768px){
    .newsCont {
        width: 100%;
        padding-top: calc(20 / var(--vw-min) * 100vw);
    }
}
.news__lists {
    display: flex;
    flex-direction: column;
    gap: min(calc(22 / var(--vw-min) * 100vw),22px);
}
@media screen and (max-width:768px){
    .news__lists {
        gap: calc(15 / var(--vw-min) * 100vw);
    }
}
.news__link {
    display: flex;
    align-items: center;
    border-bottom: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-op50-black231);
    padding-bottom: min(calc(27 / var(--vw-min) * 100vw),27px);
    text-decoration: none;
    transition: transform var(--duration-hover) var(--easing-playful), border-color var(--duration-hover) var(--easing-hover);
}
@media screen and (max-width:768px){
    .news__link {
        border-width: calc(1 / var(--vw-min) * 100vw);
        padding-bottom: calc(16 / var(--vw-min) * 100vw);
    }
}
.news__time {
    text-wrap: nowrap;
    letter-spacing: 0em;
    width: calc(100% - min(calc(618 / var(--vw-min) * 100vw),618px));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-shrink: 0;
    padding-right: min(calc(48 / var(--vw-min) * 100vw),48px);
}
@media screen and (max-width:768px){
    .news__time {
        width: calc(100% - calc(262 / var(--vw-min) * 100vw));
        padding-right: calc(16 / var(--vw-min) * 100vw);
    }
}
.news__year {
    font-size: min(calc(28 / var(--vw-min) * 100vw),28px);
    font-weight: 400;
    line-height: 1;
}
@media screen and (max-width:768px){
    .news__year {
        font-size: calc(16 / var(--vw-min) * 100vw);
    }
}
.news__date {
    font-size: min(calc(56 / var(--vw-min) * 100vw),56px);
    font-weight: 400;
    line-height: 0.7;
    transition: transform var(--duration-hover-fast) var(--easing-playful);
}
@media screen and (max-width:768px){
    .news__date {
        font-size: calc(32 / var(--vw-min) * 100vw);
    }
}
.news__tit {
    font-size: min(calc(17 / var(--vw-min) * 100vw),17px);
    font-weight: 500;
    line-height: 1.9412;
    letter-spacing: 0.34px;
    width: min(calc(618 / var(--vw-min) * 100vw),618px);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    transition: color var(--duration-hover) var(--easing-hover);
}
@media screen and (max-width:768px){
    .news__tit {
        font-size: calc(13 / var(--vw-min) * 100vw);
        width: calc(262 / var(--vw-min) * 100vw);
    }
}
@media (hover: hover) and (pointer: fine){
    .news__link:hover {
        transform: translateX(8px);
        border-color: var(--color-goldA68);
    }
    .news__link:hover .news__tit {
        color: var(--color-brown845);
    }
    .news__link:hover .news__date {
        transform: scale(1.04);
    }
}
.news .linkBtn {
    margin-top: min(calc(40 / var(--vw-min) * 100vw),40px);
}
@media screen and (max-width:768px){
    .news .linkBtn {
        margin-top: calc(33 / var(--vw-min) * 100vw);
    }
}
/**
* deco
**/
.news .deco__green {
    width: min(calc(194 / var(--vw-min) * 100vw),194px);
    height: min(calc(280 / var(--vw-min) * 100vw),280px);
    position: absolute;
    top: min(calc(215 / var(--vw-min) * 100vw),215px);
    left: 0;
    z-index: -1;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .news .deco__green {
        width: calc(98 / var(--vw-min) * 100vw);
        height: calc(128 / var(--vw-min) * 100vw);
        top: unset;
        bottom: calc(56 / var(--vw-min) * 100vw);
    }
}
.news .deco__green::before {
    content: "";
    width: min(calc(475 / var(--vw-min) * 100vw),475px);
    height: min(calc(280 / var(--vw-min) * 100vw),280px);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../img/common/deco/deco_green.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_green.webp)){
    .news .deco__green::before {
        background-image: url(../img/common/deco/deco_green.webp);
    }
}
@media screen and (max-width:768px){
    .news .deco__green::before {
        width: calc(218 / var(--vw-min) * 100vw);
        height: calc(128 / var(--vw-min) * 100vw);
    }
}
.news .deco__green.js-scrani {
    opacity: 1;
    transform: none;
    --deco-slide-from: max(calc(-281 / var(--vw-min) * 100vw), -281px);
}
@media screen and (max-width:768px){
    .news .deco__green.js-scrani {
        --deco-slide-from: calc(-120 / var(--vw-min) * 100vw);
    }
}
.news .deco__green.js-scrani::before {
    transform: translateX(var(--deco-slide-from));
}
.news .deco__green.js-scrani.--is-ani::before {
    animation: decoSlideIn var(--duration-scrani) var(--easing-outquart) forwards;
}
/*-----------------------------------------------
 * INTRODUCTION
-------------------------------------------------*/
.introduction {
    padding: calc(144 / var(--vw-min) * 100vw) 0 calc(184 / var(--vw-min) * 100vw);
}
@media screen and (max-width:768px){
    .introduction {
        padding: calc(40 / var(--vw-min) * 100vw) 0 calc(50 / var(--vw-min) * 100vw);
    }
}
.introduction::before,
.introduction::after {
    content: "";
    width: 100%;
    display: block;
    position: absolute;
    background-color: #000;
}
.introduction::before {
    height: calc(144 / var(--vw-min) * 100vw);
    top: 1px;
    -webkit-mask: url(../img/common/deco/deco_introTop.svg)no-repeat center/100%;
    mask: url(../img/common/deco/deco_introTop.svg)no-repeat center/100%;
}
@media screen and (max-width:768px){
    .introduction::before {
        height: calc(40 / var(--vw-min) * 100vw);
    }
}
.introduction::after {
    height: calc(184 / var(--vw-min) * 100vw);
    bottom: 1px;
    -webkit-mask: url(../img/common/deco/deco_introBottom.svg)no-repeat center/100%;
    mask: url(../img/common/deco/deco_introBottom.svg)no-repeat center/100%;
}
@media screen and (max-width:768px){
    .introduction::after {
        height: calc(50 / var(--vw-min) * 100vw);
    }
}
.introWrap {
    position: relative;
    background-color: #000;
    padding: min(calc(136 / var(--vw-min) * 100vw),136px) 0 min(calc(170 / var(--vw-min) * 100vw),170px);
}
@media screen and (max-width:768px){
    .introWrap {
        padding: calc(72 / var(--vw-min) * 100vw) 0 calc(105 / var(--vw-min) * 100vw);
    }
}
.introduction .cont-titWrap {
    position: relative;
    z-index: 1;
    margin-bottom: min(calc(56 / var(--vw-min) * 100vw),56px);
}
@media screen and (max-width:768px){
    .introduction .cont-titWrap {
        margin-bottom: calc(32 / var(--vw-min) * 100vw);
    }
}
.introduction .cont-tit {
    font-size: min(calc(136 / var(--vw-min) * 100vw),136px);
    color: rgba(35, 24, 21, 0.2);
    font-weight: 400;
    line-height: 1;
    letter-spacing: -1.36px;
    text-align: center;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: var(--color-op60-creamF0E);
    opacity: .5;
}
@media screen and (max-width:768px){
    .introduction .cont-tit {
        font-size: calc(60 / var(--vw-min) * 100vw);
    }
}
.introCont {
    width: min(100vw,1366px);
    position: relative;
    z-index: 2;
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .introCont {
        width: 100%;
        padding: 0 calc(18 / var(--vw-min) * 100vw);
    }
}
.intro__txt {
    font-size: min(calc(19 / var(--vw-min) * 100vw),19px);
    color: var(--color-creamF0E);
    font-weight: 500;
    line-height: 2.2105;
    letter-spacing: 0.57px;
    text-align: center;
}
@media screen and (max-width:768px){
    .intro__txt {
        font-size: calc(14 / var(--vw-min) * 100vw);
        line-height: 2.1429;
    }
}
.intro__dash {
    letter-spacing: -0.1em;
}
.intro__txt.--mt {
    margin-top: min(calc(32 / var(--vw-min) * 100vw),32px);
}
@media screen and (max-width:768px){
    .intro__txt.--mt {
        margin-top: calc(20 / var(--vw-min) * 100vw);
    }
}
.intro__txt.--big {
    font-size: min(calc(28 / var(--vw-min) * 100vw),28px);
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.84px;
}
@media screen and (max-width:768px){
    .intro__txt.--big {
        font-size: calc(19 / var(--vw-min) * 100vw);
    }
}
.intro__txt.--subBig {
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    font-weight: 700;
    line-height: 1.8333;
    letter-spacing: 0.48px;
}
@media screen and (max-width:768px){
    .intro__txt.--subBig {
        font-size: calc(15 / var(--vw-min) * 100vw);
    }
}
.intro__catch {
    width: min(calc(1003 / var(--vw-min) * 100vw),1003px);
    height: min(calc(232 / var(--vw-min) * 100vw),232px);
    margin: min(calc(80 / var(--vw-min) * 100vw),80px) auto 0;
    background: url(../img/top/intro_catch.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .intro__catch {
        width: calc(336 / var(--vw-min) * 100vw);
        height: calc(116 / var(--vw-min) * 100vw);
        margin-top: calc(36 / var(--vw-min) * 100vw);
        background-image: url(../img/top/intro_catch-s.png);
    }
}
.intro__catch::before {
    content: "";
    width: 100%;
    height: min(calc(160 / var(--vw-min) * 100vw),160px);
    display: block;
    position: absolute;
    bottom: max(calc(-20 / var(--vw-min) * 100vw),-20px);
    left: 0;
    background: url(../img/common/bg/bg_catch.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/bg/bg_catch.webp)){
    .intro__catch::before {
        background-image: url(../img/common/bg/bg_catch.webp);
    }
}
@media screen and (max-width:768px){
    .intro__catch::before {
        height: calc(160 / var(--vw-min) * 100vw);
        bottom: calc(-20 / var(--vw-min) * 100vw);
        background-size: calc(1366 / var(--vw-min) * 100vw) calc(160 / var(--vw-min) * 100vw);
    }
}
.intro__Bg {
    width: 100%;
    height: min(calc(976 / var(--vw-min) * 100vw),976px);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .intro__Bg {
        height: calc(486 / var(--vw-min) * 100vw);
        top: calc(95 / var(--vw-min) * 100vw);
    }
}
.intro__Bg::before {
    content: "";
    width: min(calc(1508 / var(--vw-min) * 100vw),1508px);
    height: min(calc(976 / var(--vw-min) * 100vw),976px);
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    background: url(../img/common/bg/bg_intro.png)no-repeat center/contain;
    transform: translateX(-50%);
}
@supports (background-image: url(../img/common/bg/bg_intro.webp)){
    .intro__Bg::before {
        background-image: url(../img/common/bg/bg_intro.webp);
    }
}
@media screen and (max-width:768px){
    .intro__Bg::before {
        width: 100%;
        height: calc(486 / var(--vw-min) * 100vw);
        background-image: url(../img/common/bg/bg_intro-s.png);
        background-size: cover;
    }
    @supports (background-image: url(../img/common/bg/bg_intro-s.webp)){
        .intro__Bg::before {
            background-image: url(../img/common/bg/bg_intro-s.webp);
        }
    }
}
/**
* deco
**/
.introduction .deco__tool1 {
    width: calc(292 / var(--vw-min) * 100vw);
    height: calc(141 / var(--vw-min) * 100vw);
    position: absolute;
    top: calc(42 / var(--vw-min) * 100vw);
    left: calc(82 / var(--vw-min) * 100vw);
    z-index: 2;
}
@media screen and (max-width:768px){
    .introduction .deco__tool1 {
        width: calc(145 / var(--vw-min) * 100vw);
        height: calc(76 / var(--vw-min) * 100vw);
        top: calc(12 / var(--vw-min) * 100vw);
        left: 0;
    }
}
.introduction .deco__tool1::before {
    content: "";
    width: 100%;
    height: calc(112 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    transform-origin: left bottom;
    -webkit-mask: url(../img/common/deco/deco_tool1.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_tool1.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
    opacity: .35;
}
@media screen and (max-width:768px){
    .introduction .deco__tool1::before {
        width: calc(158 / var(--vw-min) * 100vw);
        height: calc(60 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__tool1::after {
    content: "";
    width: calc(43 / var(--vw-min) * 100vw);
    height: calc(18 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    right: calc(70 / var(--vw-min) * 100vw);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-mask: url(../img/common/deco/deco_dust.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_dust.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
    opacity: .5;
}
@media screen and (max-width:768px){
    .introduction .deco__tool1::after {
        width: calc(24 / var(--vw-min) * 100vw);
        height: calc(9 / var(--vw-min) * 100vw);
        right: calc(39 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__tool2 {
    width: calc(264 / var(--vw-min) * 100vw);
    height: calc(191 / var(--vw-min) * 100vw);
    position: absolute;
    right: calc(200 / var(--vw-min) * 100vw);
    bottom: calc(153 / var(--vw-min) * 100vw);
    z-index: 2;
}
@media screen and (max-width:768px){
    .introduction .deco__tool2 {
        width: calc(172 / var(--vw-min) * 100vw);
        height: calc(124 / var(--vw-min) * 100vw);
        right: calc(8 / var(--vw-min) * 100vw);
        bottom: calc(45 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__tool2::before {
    content: "";
    width: 100%;
    height: calc(176 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    transform-origin: left top;
    -webkit-mask: url(../img/common/deco/deco_tool2.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_tool2.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
}
@media screen and (max-width:768px){
    .introduction .deco__tool2::before {
        height: calc(115 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__tool2::after {
    content: "";
    width: calc(70 / var(--vw-min) * 100vw);
    height: calc(72 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    right: calc(20 / var(--vw-min) * 100vw);
    bottom: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-mask: url(../img/common/deco/deco_dust2.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_dust2.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
}
@media screen and (max-width:768px){
    .introduction .deco__tool2::after {
        width: calc(46 / var(--vw-min) * 100vw);
        height: calc(47 / var(--vw-min) * 100vw);
        right: calc(12 / var(--vw-min) * 100vw);
    }
}
.introduction.--is-deco-ani .deco__tool1::before {
    animation: introToolDig1 2.8s var(--easing-playful) infinite;
}
.introduction.--is-deco-ani .deco__tool2::before {
    animation: introToolDig 2.4s var(--easing-playful) .45s infinite;
}
.introduction.--is-deco-ani .deco__tool1::after {
    animation: introDustTool2 2.8s linear infinite;
}
.introduction.--is-deco-ani .deco__tool2::after {
    animation: introDustTool1 2.4s linear .45s infinite;
}
.introduction .deco__kiriku {
    width: calc(200 / var(--vw-min) * 100vw);
    height: calc(221 / var(--vw-min) * 100vw);
    position: absolute;
    top: calc(-45 / var(--vw-min) * 100vw);
    right: calc(260 / var(--vw-min) * 100vw);
}
@media screen and (max-width:768px){
    .introduction .deco__kiriku {
        width: calc(112 / var(--vw-min) * 100vw);
        height: calc(124 / var(--vw-min) * 100vw);
        top: calc(-64 / var(--vw-min) * 100vw);
        right: calc(32 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__kiriku::before {
    content: "";
    width: 100%;
    height: calc(178 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: bottom center;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: url(../img/common/deco/deco_kiriku.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .introduction .deco__kiriku::before {
        height: calc(100 / var(--vw-min) * 100vw);
    }
}
.introduction .deco__kiriku::after {
    content: "";
    width: calc(42 / var(--vw-min) * 100vw);
    height: calc(24 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    bottom: 0;
    left: calc(64 / var(--vw-min) * 100vw);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-mask: url(../img/common/deco/deco_dust3.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_dust3.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
    opacity: .5;
}
@media screen and (max-width:768px){
    .introduction .deco__kiriku::after {
        width: calc(24 / var(--vw-min) * 100vw);
        height: calc(13 / var(--vw-min) * 100vw);
        left: calc(35 / var(--vw-min) * 100vw);
    }
}
.introduction.--is-deco-ani .deco__kiriku::before {
    animation: introKirikuWalk 2.4s var(--easing-playful) infinite;
}
.introduction.--is-deco-ani .deco__kiriku::after {
    animation: introKirikuDust 2.4s linear infinite;
}
/*-----------------------------------------------
 * STAFF&CAST
-------------------------------------------------*/
.staffCast {
    padding: min(calc(200 / var(--vw-min) * 100vw),200px) 0 min(calc(124 / var(--vw-min) * 100vw),124px);
}
@media screen and (max-width:768px){
    .staffCast {
        padding: calc(184 / var(--vw-min) * 100vw) 0 calc(84 / var(--vw-min) * 100vw);
    }
}
.staffCast .cont-titWrap {
    display: flex;
    justify-content: flex-end;
    margin-bottom: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
    .staffCast .cont-titWrap {
        justify-content: center;
        margin-bottom: calc(24 / var(--vw-min) * 100vw);
    }
}
.staffCast .cont-tit::before {
    top: max(calc(-25 / var(--vw-min) * 100vw),-25px);
    left: max(calc(-32 / var(--vw-min) * 100vw),-32px);
    -webkit-mask-image: url(../img/common/deco/deco_tit2.svg);
    mask-image: url(../img/common/deco/deco_tit2.svg);
}
@media screen and (max-width:768px){
    .staffCast .cont-tit::before {
        top: calc(-18 / var(--vw-min) * 100vw);
        left: calc(-17 / var(--vw-min) * 100vw);
    }
}
.staffCastCont {
    width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
    display: flex;
    flex-direction: column;
    gap: min(calc(96 / var(--vw-min) * 100vw),96px);
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .staffCastCont {
        width: 100%;
        gap: calc(40 / var(--vw-min) * 100vw);
        padding: 0 calc(20 / var(--vw-min) * 100vw);
    }
}
.staffCastBox:not(.original) {
    display: flex;
    align-items: flex-start;
    gap: min(calc(96 / var(--vw-min) * 100vw),96px);
}
@media screen and (max-width:768px){
    .staffCastBox:not(.original) {
        display: block;
    }
}
.staffCast__tit {
    flex-shrink: 0;
    position: relative;
}
@media screen and (max-width:768px){
    .staffCast__tit {
        display: block;
        flex-shrink: unset;
        text-align: center;
    }
}
.staffCast__tit-en {
    font-size: min(calc(80 / var(--vw-min) * 100vw),80px);
    font-weight: 400;
    line-height: 1;
    position: relative;
}
@media screen and (max-width:768px){
    .staffCast__tit-en {
        font-size: calc(36 / var(--vw-min) * 100vw);
    }
}
.staffCast__tit-ja {
    height: min(calc(22 / var(--vw-min) * 100vw),22px);
    position: absolute;
    left: 0;
}
@media screen and (max-width:768px){
    .staffCast__tit-ja {
        position: relative;
        display: block;
        height: calc(16 / var(--vw-min) * 100vw);
        margin-top: calc(-4 / var(--vw-min) * 100vw);
    }
}
/** JA **/
.original .staffCast__tit-ja {
    width: min(calc(112 / var(--vw-min) * 100vw),112px);
    bottom: max(calc(-16 / var(--vw-min) * 100vw),-16px);
    background: url(../img/top/tit_original-ja.svg)no-repeat center/contain;
}
.staff .staffCast__tit-ja {
    width: min(calc(156 / var(--vw-min) * 100vw),156px);
    bottom: max(calc(-12 / var(--vw-min) * 100vw),-12px);
    background: url(../img/top/tit_staff-ja.svg)no-repeat center/contain;
}
.cast .staffCast__tit-ja {
    width: min(calc(156 / var(--vw-min) * 100vw),156px);
    bottom: max(calc(-13 / var(--vw-min) * 100vw),-13px);
    background: url(../img/top/tit_cast-ja.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .original .staffCast__tit-ja,
    .staff .staffCast__tit-ja,
    .cast .staffCast__tit-ja {
        width: 100%;
        bottom: unset;
    }
    .original .staffCast__tit-ja {
        background-image: url(../img/top/tit_original-ja-s.svg);
    }
    .staff .staffCast__tit-ja {
        background-image: url(../img/top/tit_staff-ja-s.svg);
    }
    .cast .staffCast__tit-ja {
        background-image: url(../img/top/tit_cast-ja-s.svg);
    }
}
/** EN DECO **/
.staffCast__tit-en::before {
    content: "";
    display: block;
    position: absolute;
    background-color: var(--color-black231);
}
.staff .staffCast__tit-en::before {
    width: min(calc(45 / var(--vw-min) * 100vw),45px);
    height: min(calc(40 / var(--vw-min) * 100vw),40px);
    top: max(calc(-6 / var(--vw-min) * 100vw),-6px);
    left: max(calc(-20 / var(--vw-min) * 100vw),-20px);
    -webkit-mask: url(../img/common/deco/deco_hat.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_hat.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .staff .staffCast__tit-en::before {
        width: calc(32 / var(--vw-min) * 100vw);
        height: calc(28 / var(--vw-min) * 100vw);
        top: calc(-11 / var(--vw-min) * 100vw);
        left: calc(-18 / var(--vw-min) * 100vw);
    }
}
.cast .staffCast__tit-en::before {
    width: min(calc(32 / var(--vw-min) * 100vw),32px);
    height: min(calc(32 / var(--vw-min) * 100vw),32px);
    top: min(calc(35 / var(--vw-min) * 100vw),35px);
    right: max(calc(-36 / var(--vw-min) * 100vw),-36px);
    -webkit-mask: url(../img/common/deco/deco_wrench.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_wrench.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .cast .staffCast__tit-en::before {
        width: calc(24 / var(--vw-min) * 100vw);
        height: calc(24 / var(--vw-min) * 100vw);
        top: calc(10 / var(--vw-min) * 100vw);
        right: calc(-30 / var(--vw-min) * 100vw);
    }
}
.staffCast.--is-deco-ani .staff .staffCast__tit-en::before {
    animation: staffCastDecoBounce 2.4s var(--easing-playful) infinite;
}
.staffCast.--is-deco-ani .cast .staffCast__tit-en::before {
    animation: staffCastDecoBounce 2.4s var(--easing-playful) .9s infinite;
}
/**
* lists
**/
.staffCast__lists {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: min(calc(40 / var(--vw-min) * 100vw),40px) min(calc(24 / var(--vw-min) * 100vw),24px);
}
@media screen and (max-width:768px){
    .staffCast__lists {
        gap: calc(20 / var(--vw-min) * 100vw) calc(15 / var(--vw-min) * 100vw);
        padding-top: calc(20 / var(--vw-min) * 100vw);
    }
}
.staffCast__item {
    width: calc((100% - min(calc(48 / var(--vw-min) * 100vw),48px)) / 3);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: min(calc(8 / var(--vw-min) * 100vw),8px);
    padding-bottom: min(calc(17 / var(--vw-min) * 100vw),17px);
    border-bottom: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-op30-black231);
}
@media screen and (max-width:768px){
    .staffCast__item {
        width: calc((100% - calc(15 / var(--vw-min) * 100vw)) / 2);
        gap: calc(4 / var(--vw-min) * 100vw);
        padding-bottom: calc(14 / var(--vw-min) * 100vw);
        border-width: calc(1 / var(--vw-min) * 100vw);
    }
}
.staffCast__item.--col2 {
    width: calc((100% - min(calc(48 / var(--vw-min) * 100vw),48px)) / 3 * 2 + min(calc(24 / var(--vw-min) * 100vw),24px));
}
@media screen and (max-width:768px){
    .staffCast__item.--col2 {
        width: 100%;
    }
}
.staffCast__item-dt {
    font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
    color: var(--color-blue005);
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.48px;
    width: 100%;
}
@media screen and (max-width:768px){
    .staffCast__item-dt {
        font-size: calc(13 / var(--vw-min) * 100vw);
    }
}
.staffCast__item-dd {
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    font-weight: 700;
    line-height: 1.333;
    letter-spacing: 0.72px;
}
@media screen and (max-width:768px){
    .staffCast__item-dd {
        font-size: calc(18 / var(--vw-min) * 100vw);
    }
}
/**
* original
**/
.staffCast__originalBlock {
    display: flex;
    align-items: center;
    margin-left: min(calc(252 / var(--vw-min) * 100vw),252px);
    padding: min(calc(32 / var(--vw-min) * 100vw),32px) 0 min(calc(21 / var(--vw-min) * 100vw),21px);
    border-bottom: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-op30-black231);
}
@media screen and (max-width:768px){
    .staffCast__originalBlock {
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        margin-left: 0;
        padding: calc(20 / var(--vw-min) * 100vw) 0 0;
        border: unset;
    }
}
.staffCast__original-name {
    font-size: min(calc(30 / var(--vw-min) * 100vw),30px);
    font-weight: 700;
    line-height: 1.2667;
    letter-spacing: 0.9px;
}
@media screen and (max-width:768px){
    .staffCast__original-name {
        font-size: calc(20 / var(--vw-min) * 100vw);
        margin-bottom: calc(4 / var(--vw-min) * 100vw);
    }
}
.staffCast__original-small {
    font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
    font-weight: 700;
    line-height: 2;
    letter-spacing: 0.48px;
}
@media screen and (max-width:768px){
    .staffCast__original-small {
        font-size: calc(11 / var(--vw-min) * 100vw);
        text-align: center;
        width: 100%;
        display: block;
        order: 1;
    }
}
.staffCast__original-link,
.staffCast__item-dd.--comment-link {
    width: min(calc(30 / var(--vw-min) * 100vw),30px);
    height: min(calc(21 / var(--vw-min) * 100vw),21px);
}
@media screen and (max-width:768px){
    .staffCast__original-link {
        order: 0;
        margin-left: calc(4 / var(--vw-min) * 100vw);
    }
    .staffCast__original-link,
    .staffCast__item-dd.--comment-link {
        width: calc(21 / var(--vw-min) * 100vw);
        height: calc(15 / var(--vw-min) * 100vw);
    }
}
.commentLink {
    width: 100%;
    height: 100%;
    display: block;
    -webkit-mask: url(../img/common/deco/deco_comment.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_comment.svg)no-repeat center/contain;
    background-color: var(--color-black231);
    transition: transform var(--duration-hover-fast) var(--easing-playful), background-color var(--duration-hover-fast) var(--easing-hover);
}
@media (hover: hover) and (pointer: fine){
    .commentLink:hover {
        transform: translateY(-4px) scale(1.15) rotate(-6deg);
        background-color: var(--color-brown845);
    }
}
/*-----------------------------------------------
 * CHARACTER
-------------------------------------------------*/
.character {
    padding: min(calc(124 / var(--vw-min) * 100vw),124px) 0 0;
}
@media screen and (max-width:768px){
    .character {
        padding: calc(84 / var(--vw-min) * 100vw) 0 calc(72 / var(--vw-min) * 100vw);
    }
}
.charaWrap {
    width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .charaWrap {
        width: 100%;
    }
}
.character .cont-titWrap {
    display: flex;
    justify-content: center;
    margin-bottom: min(calc(80 / var(--vw-min) * 100vw),80px);
}
@media screen and (max-width:768px){
    .character .cont-titWrap {
        margin-bottom: calc(24 / var(--vw-min) * 100vw);
    }
}
.character .cont-tit::before {
    right: max(calc(-40 / var(--vw-min) * 100vw),-40px);
}
@media screen and (max-width:768px){
    .character .cont-tit::before {
        right: calc(-20 / var(--vw-min) * 100vw);
    }
}
.charaCont {
    position: relative;
    display: grid;
    grid-template-columns: min(calc(315 / var(--vw-min) * 100vw),315px) 1fr;
    grid-template-areas: "side swiper";
    align-items: start;
}
@media screen and (max-width:768px){
    .charaCont {
        display: flex;
        flex-direction: column;
    }
}
.chara__sideCol {
    grid-area: side;
    width: 100%;
    display: flex;
    flex-direction: column;
}
@media screen and (max-width:768px){
    .chara__sideCol {
        display: contents;
    }
}
.charaSwiper {
    grid-area: swiper;
    width: 100%;
    padding-top: min(calc(20 / var(--vw-min) * 100vw),20px);
    margin-top: max(calc(-20 / var(--vw-min) * 100vw),-20px);
}
@media screen and (max-width:768px){
    .charaSwiper {
        width: 100%;
        padding-top: 0;
        margin-top: 0;
    }
}
.chara__item {
    display: flex;
    position: relative;
}
@media screen and (max-width:768px){
    .chara__item {
        flex-direction: column;
    }
}
/**
* detail
**/
.chara__detailWrap {
    width: min(calc(368 / var(--vw-min) * 100vw),368px);
    position: relative;
    padding-top: min(calc(64 / var(--vw-min) * 100vw),64px);
}
@media screen and (max-width:768px){
    .chara__detailWrap {
        width: 100%;
        padding-top: 0;
    }
}
.chara__name-en {
    font-size: min(calc(200 / var(--vw-min) * 100vw),200px);
    color: var(--color-op10-black231);
    font-weight: 400;
    line-height: 1;
    letter-spacing: -2px;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    font-feature-settings: initial;
    position: absolute;
    top: 0;
    right: min(calc(360 / var(--vw-min) * 100vw),360px);
}
@media screen and (max-width:768px){
    .chara__name-en {
        font-size: calc(120 / var(--vw-min) * 100vw);
        right: calc(7 / var(--vw-min) * 100vw);
    }
}
.chara__name {
    font-size: min(calc(64 / var(--vw-min) * 100vw),64px);
    font-weight: 500;
    line-height: 1.0625;
    letter-spacing: -5.12px;
    margin-bottom: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
    .chara__name {
        font-size: calc(40 / var(--vw-min) * 100vw);
        margin-bottom: calc(14 / var(--vw-min) * 100vw);
        padding: 0 calc(20 / var(--vw-min) * 100vw) 0 calc(18 / var(--vw-min) * 100vw);
    }
}
.chara__cvWrap {
    display: flex;
    align-items: center;
    gap: min(calc(12 / var(--vw-min) * 100vw),12px);
    margin-bottom: min(calc(34 / var(--vw-min) * 100vw),34px);
}
@media screen and (max-width:768px){
    .chara__cvWrap {
        gap: calc(6 / var(--vw-min) * 100vw);
        margin-bottom: calc(22 / var(--vw-min) * 100vw);
        padding: 0 calc(20 / var(--vw-min) * 100vw) 0 calc(18 / var(--vw-min) * 100vw);
    }
}
.chara__cv {
    font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.512px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: min(calc(7 / var(--vw-min) * 100vw),7px) min(calc(8 / var(--vw-min) * 100vw),8px) min(calc(4 / var(--vw-min) * 100vw),4px);
    border-radius: 50%;
    border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-black231);
}
@media screen and (max-width:768px){
    .chara__cv {
        font-size: calc(13 / var(--vw-min) * 100vw);
        padding: calc(5 / var(--vw-min) * 100vw) calc(9 / var(--vw-min) * 100vw) calc(2 / var(--vw-min) * 100vw);
        border-width: calc(1 / var(--vw-min) * 100vw);
    }
}
.chara__cvName {
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    font-weight: 600;
    line-height: 1.3333;
    letter-spacing: -0.96px;
}
@media screen and (max-width:768px){
    .chara__cvName {
        font-size: calc(17 / var(--vw-min) * 100vw);
    }
}
.chara__detailTxt {
    font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.32px;
}
@media screen and (max-width:768px){
    .chara__detailTxt {
        font-size: calc(13 / var(--vw-min) * 100vw);
        padding: 0 calc(20 / var(--vw-min) * 100vw) 0 calc(18 / var(--vw-min) * 100vw);
    }
}
/**
* img
**/
.chara__imgWrap {
    width: min(calc(516 / var(--vw-min) * 100vw),516px);
    min-height: min(calc(700 / var(--vw-min) * 100vw),700px);
    pointer-events: none;
}
@media screen and (max-width:768px){
    .chara__imgWrap {
        width: 100%;
        min-height: calc(430 / var(--vw-min) * 100vw);
    }
}
.chara__imgLists {
    width: 100%;
    height: min(calc(700 / var(--vw-min) * 100vw),700px);
    position: relative;
    z-index: 1;
}
@media screen and (max-width:768px){
    .chara__imgLists {
        height: calc(430 / var(--vw-min) * 100vw);
    }
}
.chara__img {
	width: min(calc(700 / var(--vw-min) * 100vw),700px);
    position: absolute;
    top: min(calc(30 / var(--vw-min) * 100vw),30px);
    left: max(calc(-60 / var(--vw-min) * 100vw),-60px);
    z-index: 0;
    opacity: 0;
    transition: opacity 620ms var(--easing-hover), transform 620ms var(--easing-hover);
    transform: scale(0.96) translateY(min(calc(16 / var(--vw-min) * 100vw),16px));
}
.chara__img.--active {
    z-index: 1;
    opacity: 1;
    transform: scale(1) translateY(0);
}
@media screen and (max-width:768px){
    .chara__img  {
        width: calc(430 / var(--vw-min) * 100vw);
        top: 0;
        left: calc(-30 / var(--vw-min) * 100vw);
    }
}
.chara__img img {
    width: 100%;
    pointer-events: none;
}
/**
* face
**/
.chara__faceLists {
    width: min(calc(200 / var(--vw-min) * 100vw),200px);
    height: min(calc(200 / var(--vw-min) * 100vw),200px);
    position: relative;
    display: flex;
    border-radius: 50%;
    overflow: hidden;
    margin-top: min(calc(40 / var(--vw-min) * 100vw),40px);
    border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-black231);
}
@media screen and (max-width:768px){
    .chara__faceLists {
        width: calc(96 / var(--vw-min) * 100vw);
        height: calc(96 / var(--vw-min) * 100vw);
        position: absolute;
        top: calc(-16 / var(--vw-min) * 100vw);
        right: calc(20 / var(--vw-min) * 100vw);
        margin-top: 0;
        border-width: calc(1 / var(--vw-min) * 100vw);
    }
}
.chara__faceItem {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
    z-index: 0;
    background-color: var(--color-creamC9B);
    opacity: 0;
    transition: opacity 620ms var(--easing-hover), transform 620ms var(--easing-hover);
    transform: scale(0.92) rotate(-4deg);
}
.chara__faceItem.--active {
    z-index: 1;
    opacity: 1;
    transform: scale(1) rotate(0deg);
}
.chara__faceItem img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    display: block;
    margin: auto;
    object-fit: cover;
    pointer-events: none;
    transition: transform 620ms var(--easing-hover);
    transform: scale(1.05);
}
.chara__faceItem.--active img {
    transform: scale(1);
}
/**
* slide active animation
**/
.chara__item.swiper-slide-active .chara__img.--active img {
    animation: charaSlideImgIn 720ms var(--easing-hover) 200ms both;
}
.chara__item.swiper-slide-active .chara__name-en {
    animation: charaSlideNameEnIn 720ms var(--easing-hover) 300ms both;
}
.chara__item.swiper-slide-active .chara__name {
    animation: charaSlideTextIn 680ms var(--easing-hover) 360ms both;
}
.chara__item.swiper-slide-active .chara__cvWrap {
    animation: charaSlideTextIn 680ms var(--easing-hover) 460ms both;
}
.chara__item.swiper-slide-active .chara__detailTxt {
    animation: charaSlideTextIn 680ms var(--easing-hover) 560ms both;
}
.chara__item.swiper-slide-active .chara__faceLists {
    animation: charaSlideFaceIn 720ms var(--easing-hover) 660ms both;
}
@keyframes charaSlideImgIn {
    0% {
        opacity: 0;
        transform: translateY(min(calc(28 / var(--vw-min) * 100vw),28px)) scale(0.94);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
@keyframes charaSlideTextIn {
    0% {
        opacity: 0;
        transform: translateX(max(calc(-20 / var(--vw-min) * 100vw),-20px));
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes charaSlideNameEnIn {
    0% {
        opacity: 0;
        transform: translateY(min(calc(24 / var(--vw-min) * 100vw),24px));
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes charaSlideFaceIn {
    0% {
        opacity: 0;
        transform: scale(0.94) rotate(-3deg);
    }
    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}
@media screen and (max-width:768px){
    @keyframes charaSlideImgIn {
        0% {
            opacity: 0;
            transform: translateY(calc(20 / var(--vw-min) * 100vw)) scale(0.94);
        }
        100% {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }
    @keyframes charaSlideTextIn {
        0% {
            opacity: 0;
            transform: translateX(calc(-14 / var(--vw-min) * 100vw));
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        }
    }
    @keyframes charaSlideNameEnIn {
        0% {
            opacity: 0;
            transform: translateY(calc(16 / var(--vw-min) * 100vw));
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }
}
/**
* change Btn
**/
.chara__changeBtn {
    width: min(calc(110 / var(--vw-min) * 100vw),110px);
    height: min(calc(150 / var(--vw-min) * 100vw),150px);
    position: absolute;
    top: max(calc(-11 / var(--vw-min) * 100vw),-11px);
    left: min(calc(60 / var(--vw-min) * 100vw),60px);
    transition: transform var(--duration-hover) var(--easing-hover);
}
@media screen and (max-width:768px){
    .chara__changeBtn {
        width: calc(80 / var(--vw-min) * 100vw);
        height: calc(102 / var(--vw-min) * 100vw);
        top: 0;
        left: calc(14 / var(--vw-min) * 100vw);
    }
}
.chara__changeBtn::before {
    content: "";
    width: min(calc(58 / var(--vw-min) * 100vw),58px);
    height: min(calc(51 / var(--vw-min) * 100vw),51px);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-mask: url(../img/common/deco/deco_changeTxt.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_changeTxt.svg)no-repeat center/contain;
    background-color: #000;
}
@media screen and (max-width:768px){
    .chara__changeBtn::before {
        width: calc(44 / var(--vw-min) * 100vw);
        height: calc(39 / var(--vw-min) * 100vw);
    }
}
.chara__changeDeco {
    width: min(calc(48 / var(--vw-min) * 100vw),48px);
    height: min(calc(48 / var(--vw-min) * 100vw),48px);
    position: absolute;
    bottom: 0;
    left: 0;
}
@media screen and (max-width:768px){
    .chara__changeDeco {
        width: calc(32 / var(--vw-min) * 100vw);
        height: calc(32 / var(--vw-min) * 100vw);
    }
}
.chara__changeDeco::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
    background: url(../img/common/bg/bg_change.svg)no-repeat center/contain;
}
.chara__changeDeco::after {
    content: "";
    width: min(calc(24 / var(--vw-min) * 100vw),24px);
    height: min(calc(15 / var(--vw-min) * 100vw),15px);
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
    -webkit-mask: url(../img/common/deco/deco_changeArrow.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_changeArrow.svg)no-repeat center/contain;
    background-color: var(--color-creamF0E);
}
@media screen and (max-width:768px){
    .chara__changeDeco::after {
        width: calc(16 / var(--vw-min) * 100vw);
        height: calc(10 / var(--vw-min) * 100vw);
    }
}
.charaChangeBtn__inner {
    width: min(calc(104 / var(--vw-min) * 100vw),104px);
    height: min(calc(128 / var(--vw-min) * 100vw),128px);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-radius: 50%;
    border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--color-black231);
    background-color: var(--color-creamC9B);
    overflow: hidden;
}
@media screen and (max-width:768px){
    .charaChangeBtn__inner {
        width: calc(68 / var(--vw-min) * 100vw);
        height: calc(82 / var(--vw-min) * 100vw);
        border-width: calc(1 / var(--vw-min) * 100vw);
    }
}
.charaChangeBtn__inner img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    margin: auto;
    object-fit: cover;
    opacity: 0;
    pointer-events: none;
    transition: opacity 620ms var(--easing-hover), transform 620ms var(--easing-hover);
    transform: scale(0.86) rotate(-8deg);
}
/** ACTIVE **/
.chara__changeBtn[data-now="1"] .changeIcon1{
	opacity: 1;
    transform: scale(1) rotate(0deg);
}
.chara__changeBtn[data-now="2"] .changeIcon2{
	opacity: 1;
    transform: scale(1) rotate(0deg);
}
.chara__changeBtn.--active {
	opacity: 1;
	pointer-events: auto;
}
@media (hover: hover) and (pointer: fine){
    .chara__changeBtn.--active:hover {
        transform: translateY(-5px) scale(1.06);
    }
    .chara__changeBtn.--active:active {
        transform: translateY(-1px) scale(0.98);
        transition-duration: var(--duration-hover-press);
    }
    .chara__changeBtn[data-now="1"].--active:hover .changeIcon1,
    .chara__changeBtn[data-now="2"].--active:hover .changeIcon2 {
        transform: scale(1.08) rotate(0deg);
    }
}
/**
* thumb
**/
.chara__thumbWrap {
    width: 100%;
}
@media screen and (max-width:768px){
    .chara__thumbWrap {
        width: 100%;
        padding: 0 calc(20 / var(--vw-min) * 100vw) 0 calc(4 / var(--vw-min) * 100vw);
        margin-top: calc(32 / var(--vw-min) * 100vw);
    }
}
.chara__thumbIn {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.chara__thumbTxt {
    font-size: min(calc(12 / var(--vw-min) * 100vw),12px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.12px;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    font-feature-settings: initial;
}
@media screen and (max-width:768px){
    .chara__thumbTxt {
        font-size: calc(10 / var(--vw-min) * 100vw);
    }
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists {
    width: min(calc(295 / var(--vw-min) * 100vw),295px);
    display: flex;
    flex-wrap: wrap;
    gap: min(calc(3 / var(--vw-min) * 100vw),3px);
}
@media screen and (max-width:768px){
    .swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists {
        width: calc(335 / var(--vw-min) * 100vw);
        gap: calc(1 / var(--vw-min) * 100vw);
    }
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem {
    width: calc((100% - min(calc(6 / var(--vw-min) * 100vw),6px)) / 3);
    height: auto;
    position: relative;
    display: block!important;
    border-radius: unset;
    background: var(--color-black231);
    margin: unset;
    opacity: 1;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem {
        width: calc((100% - calc(5 / var(--vw-min) * 100vw)) / 6);
    }
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem.--no {
    background-color: unset;
    opacity: .5;
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem:not(.--no)::after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    z-index: 1;
    margin: auto;
    background-color: var(--color-op50-black231);
    pointer-events: none;
    opacity: 0;
    transition: opacity var(--duration-hover) var(--easing-hover);
}
.chara__thumbItem img {
    width: 100%;
    pointer-events: none;
    transition: transform var(--duration-hover) var(--easing-hover), filter var(--duration-hover) var(--easing-hover);
}
.chara__thumbDeco {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    margin: auto;
    pointer-events: none;
}
.chara__thumbDeco::before,
.chara__thumbDeco::after {
    content: "";
    width: min(calc(5 / var(--vw-min) * 100vw),5px);
    height: min(calc(5 / var(--vw-min) * 100vw),5px);
    display: block;
    position: absolute;
    background: url(../img/common/deco/deco_screw.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .chara__thumbDeco::before,
    .chara__thumbDeco::after {
        width: calc(3 / var(--vw-min) * 100vw);
        height: calc(3 / var(--vw-min) * 100vw);
    }
}
.chara__thumbDeco.--top::before,
.chara__thumbDeco.--top::after {
    top: min(calc(2 / var(--vw-min) * 100vw),2px);
}
@media screen and (max-width:768px){
    .chara__thumbDeco.--top::before,
    .chara__thumbDeco.--top::after {
        top: calc(2 / var(--vw-min) * 100vw);
    }
}
.chara__thumbDeco.--bottom::before,
.chara__thumbDeco.--bottom::after {
    bottom: min(calc(2 / var(--vw-min) * 100vw),2px);
}
@media screen and (max-width:768px){
    .chara__thumbDeco.--bottom::before,
    .chara__thumbDeco.--bottom::after {
        bottom: calc(2 / var(--vw-min) * 100vw);
    }
}
.chara__thumbDeco.--top::before,
.chara__thumbDeco.--bottom::before {
    left: min(calc(2 / var(--vw-min) * 100vw),2px);
}
@media screen and (max-width:768px){
    .chara__thumbDeco.--top::before,
    .chara__thumbDeco.--bottom::before {
        left: calc(2 / var(--vw-min) * 100vw);
    }
}
.chara__thumbDeco.--top::after,
.chara__thumbDeco.--bottom::after {
    right: min(calc(2 / var(--vw-min) * 100vw),2px);
}
@media screen and (max-width:768px){
    .chara__thumbDeco.--top::after,
    .chara__thumbDeco.--bottom::after {
        right: calc(2 / var(--vw-min) * 100vw);
    }
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem:not(.--no).swiper-pagination-bullet-active .chara__thumbImg img {
    -webkit-filter:grayscale(100%);
    filter:grayscale(100%);
}
.swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem:not(.--no).swiper-pagination-bullet-active::after {
    opacity: 1;
}
@media (hover: hover) and (pointer: fine){
    .chara__thumbItem:not(.--no):hover .chara__thumbImg img {
        -webkit-filter:grayscale(100%);
    	filter:grayscale(100%);
        transform: scale(1.05);
    }
    .swiper-pagination-bullets.swiper-pagination-horizontal.chara__thumbLists .chara__thumbItem:not(.--no):hover::after  {
        opacity: 1;
    }
}
/**
* arrow
**/
.chara__arrowWrap {
    width: 100%;
    display: flex;
    gap: min(calc(24 / var(--vw-min) * 100vw),24px);
    justify-content: flex-end;
    padding-top: min(calc(32 / var(--vw-min) * 100vw),32px);
}
@media screen and (max-width:768px){
    .chara__arrowWrap {
        width: 100%;
        display: flex;
        position: absolute;
        top: calc(215 / var(--vw-min) * 100vw);
        left: 0;
        z-index: 5;
        padding-top: 0;
        gap: 0;
        justify-content: space-between;
        align-items: center;
        transform: translateY(-50%);
    }
    .chara__arrowWrap .swiper__arrow.--prev {
        left: calc(18 / var(--vw-min) * 100vw);
    }
    .chara__arrowWrap .swiper__arrow.--next {
        right: calc(18 / var(--vw-min) * 100vw);
    }
}
/**
* deco
**/
.character .deco__wood1 {
    width: min(calc(324 / var(--vw-min) * 100vw),324px);
    height: min(calc(344 / var(--vw-min) * 100vw),344px);
    position: absolute;
    top: max(calc(-76 / var(--vw-min) * 100vw),-76px);
    right: 0;
    overflow: hidden;
}
@media screen and (max-width:768px){
    .character .deco__wood1 {
        width: calc(161 / var(--vw-min) * 100vw);
        height: calc(172 / var(--vw-min) * 100vw);
        top: calc(-64 / var(--vw-min) * 100vw);
    }
}
.character .deco__wood1::before {
    content: "";
    width: min(calc(704 / var(--vw-min) * 100vw),704px);
    height: min(calc(344 / var(--vw-min) * 100vw),344px);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/common/deco/deco_wood.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_wood.webp)){
    .character .deco__wood1::before {
        background-image: url(../img/common/deco/deco_wood.webp);
    }
}
@media screen and (max-width:768px){
    .character .deco__wood1::before {
        width: calc(352 / var(--vw-min) * 100vw);
        height: calc(172 / var(--vw-min) * 100vw);
    }
}
.character .deco__wood1.js-scrani {
    opacity: 1;
    transform: none;
    --deco-slide-from: min(calc(380 / var(--vw-min) * 100vw), 380px);
}
@media screen and (max-width:768px){
    .character .deco__wood1.js-scrani {
        --deco-slide-from: calc(191 / var(--vw-min) * 100vw);
    }
}
.character .deco__wood1.js-scrani::before {
    transform: translateX(var(--deco-slide-from));
}
.character .deco__wood1.js-scrani.--is-ani::before {
    animation: decoSlideIn var(--duration-scrani) var(--easing-outquart) forwards;
}
/*-----------------------------------------------
 * BOOKS
-------------------------------------------------*/
.books {
    padding: min(calc(160 / var(--vw-min) * 100vw),160px) 0 min(calc(270 / var(--vw-min) * 100vw),270px);
    overflow: hidden;
}
@media screen and (max-width:768px){
    .books {
        padding: calc(170 / var(--vw-min) * 100vw) 0 calc(124 / var(--vw-min) * 100vw);
    }
}
.booksWrap {
    position: relative;
}
.booksWrap::before {
    content: "";
    width: 100%;
    height: calc(100% - calc(361 / var(--vw-min) * 100vw));
    display: block;
    position: absolute;
    bottom: 0;
    z-index: -1;
    background-color: var(--color-op20-brown764);
    pointer-events: none;
}
@media screen and (max-width:768px){
    .booksWrap::before {
        height: calc(100% - calc(160 / var(--vw-min) * 100vw));
    }
}
.books .cont-titWrap {
    width: 100%;
    height: calc(361 / var(--vw-min) * 100vw);
    position: relative;
    display: flex;
}
@media screen and (max-width:768px){
    .books .cont-titWrap {
        height: calc(160 / var(--vw-min) * 100vw);
    }
}
.books .cont-titWrap::before {
    content: "";
    width: 100%;
    height: calc(361 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-mask: url(../img/common/deco/deco_roof.svg)no-repeat center top/cover;
    mask: url(../img/common/deco/deco_roof.svg)no-repeat center top/cover;
    background-color: var(--color-brown845);
}
@media screen and (max-width:768px){
    .books .cont-titWrap::before {
        height: calc(160 / var(--vw-min) * 100vw);
        -webkit-mask-image: url(../img/common/deco/deco_roof-s.svg);
        mask-image: url(../img/common/deco/deco_roof-s.svg);
    }
}
.books .cont-tit {
    position: absolute;
    bottom: -10px;
}
@media screen and (max-width:768px){
    .books .cont-tit {
        bottom: -3px;
    }
}
.books .cont-tit::before {
    right: max(calc(-40 / var(--vw-min) * 100vw),-40px);
}
@media screen and (max-width:768px){
    .books .cont-tit::before {
        right: calc(-22 / var(--vw-min) * 100vw);
    }
}
/**
* head
**/
.books__head {
    position: relative;
    z-index: 2;
    padding: min(calc(64 / var(--vw-min) * 100vw),64px) 0 0;
}
@media screen and (max-width:768px){
    .books__head {
        padding: calc(32 / var(--vw-min) * 100vw) 0 0;
    }
}
.books__watermark{
    width: min(calc(738 / var(--vw-min) * 100vw),738px);
    height: min(calc(108 / var(--vw-min) * 100vw),108px);
    position: absolute;
    top: min(calc(12 / var(--vw-min) * 100vw),12px);
    left: min(calc(12 / var(--vw-min) * 100vw),12px);
    z-index: -1;
    background: url(../img/top/books_original.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .books__watermark {
        width: calc(330 / var(--vw-min) * 100vw);
        height: calc(48 / var(--vw-min) * 100vw);
        top: calc(4 / var(--vw-min) * 100vw);
        left: calc(4 / var(--vw-min) * 100vw);
    }
}
.books__info {
    width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .books__info {
        width: 100%;
    }
}
.books__name {
    font-size: min(calc(40 / var(--vw-min) * 100vw),40px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.8px;
    margin-bottom: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
    .books__name {
        font-size: calc(24 / var(--vw-min) * 100vw);
        margin-bottom: calc(10 / var(--vw-min) * 100vw);
    }
}
.books__name span {
    font-weight: 400;
}
.books__author {
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    font-weight: 700;
    line-height: 1.3333;
    letter-spacing: 0.72px;
    display: flex;
    align-items: center;
    margin-bottom: min(calc(20 / var(--vw-min) * 100vw),20px);
}
@media screen and (max-width:768px){
    .books__author {
        font-size: calc(16 / var(--vw-min) * 100vw);
        margin-bottom: calc(13 / var(--vw-min) * 100vw);
    }
}
.books__author-dt::after {
    content: "：";
    display: inline-block;
    margin: 0 min(calc(2 / var(--vw-min) * 100vw),2px);
}
@media screen and (max-width:768px){
    .books__author-dt::after {
        margin: 0 calc(2 / var(--vw-min) * 100vw);
    }
}
.books__publisher {
    font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
    font-weight: 700;
    line-height: 1.7143;
    letter-spacing: 0.42px;
    margin-bottom: min(calc(14 / var(--vw-min) * 100vw),14px);
}
@media screen and (max-width:768px){
    .books__publisher {
        font-size: calc(13 / var(--vw-min) * 100vw);
        margin-bottom: calc(5 / var(--vw-min) * 100vw);
    }
}
.books__publisherLink {
    color: var(--color-black231);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: min(calc(3 / var(--vw-min) * 100vw),3px);
    transition: .3s ease;
}
@media (hover: hover) and (pointer: fine){
    .books__publisherLink:hover {
        transform: scale(1.05);
    }
}
.books__publisherLink::after {
    content: "";
    width: min(calc(22 / var(--vw-min) * 100vw),22px);
    height: min(calc(22 / var(--vw-min) * 100vw),22px);
    display: inline-block;
    -webkit-mask: url(../img/common/deco/deco_link.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_link.svg)no-repeat center/contain;
    background-color: var(--color-goldA68);
}
.books__sale {
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    color: var(--color-creamF0E);
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.72px;
    position: relative;
    padding: min(calc(4 / var(--vw-min) * 100vw),4px) min(calc(52 / var(--vw-min) * 100vw),52px) min(calc(9 / var(--vw-min) * 100vw),9px);
} 
@media screen and (max-width:768px){
    .books__sale {
        font-size: calc(16 / var(--vw-min) * 100vw);
        padding: calc(5 / var(--vw-min) * 100vw) calc(35 / var(--vw-min) * 100vw) calc(7 / var(--vw-min) * 100vw);
    }
}
.books__sale b {
    font-size: min(calc(30 / var(--vw-min) * 100vw),30px);
    line-height: 1.2;
    letter-spacing: 0.9px;
}
@media screen and (max-width:768px){
    .books__sale b {
        font-size: calc(22 / var(--vw-min) * 100vw);
    }
}
.books__sale::before {
    content: "";
    width: min(calc(336 / var(--vw-min) * 100vw),336px);
    height: min(calc(52 / var(--vw-min) * 100vw),52px);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: url(../img/top/books_txtBg.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .books__sale::before {
        width: calc(225 / var(--vw-min) * 100vw);
        height: calc(40 / var(--vw-min) * 100vw);
    }
}
.books__badge {
    width: min(calc(160 / var(--vw-min) * 100vw),160px);
    height: min(calc(160 / var(--vw-min) * 100vw),160px);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
@media screen and (max-width:768px){
    .books__badge {
        width: calc(120 / var(--vw-min) * 100vw);
        height: calc(120 / var(--vw-min) * 100vw);
        top: unset;
        bottom: calc(-422 / var(--vw-min) * 100vw);
        right: calc(20 / var(--vw-min) * 100vw);
        left: unset;
        z-index: 3;
    }
}
.books__badge::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
    background: url(../img/top/books_badge.svg)no-repeat center/contain;
}
.books__badgeTxt {
    font-size: min(calc(22 / var(--vw-min) * 100vw),22px);
    color: var(--color-creamF0E);
    font-weight: 700;
    line-height: 1.273;
    letter-spacing: 0.66px;
    text-align: center;
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: min(calc(3 / var(--vw-min) * 100vw),3px);
}
@media screen and (max-width:768px){
    .books__badgeTxt {
        font-size: calc(15 / var(--vw-min) * 100vw);
        gap: calc(2 / var(--vw-min) * 100vw);
    }
}
.books__badgeTxt span {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
.books__badgeTxt b {
    font-size: min(calc(28 / var(--vw-min) * 100vw),28px);
    line-height: 1;
    letter-spacing: 0.84px;
}
@media screen and (max-width:768px){
    .books__badgeTxt b {
        font-size: calc(20 / var(--vw-min) * 100vw);
    }
}
.books__badgeTxt small {
    font-size: min(calc(15 / var(--vw-min) * 100vw),15px);
    line-height: 1.6;
    letter-spacing: 0.45px;
}
@media screen and (max-width:768px){
    .books__badgeTxt small {
        font-size: calc(11 / var(--vw-min) * 100vw);
    }
}
/**
* cont
**/
.booksSwiper {
    overflow: visible;
    padding-left: min(calc(80 / var(--vw-min) * 100vw),80px);
}
@media screen and (max-width:768px){
    .booksSwiper {
        padding-left: calc(20 / var(--vw-min) * 100vw);
    }
}
@media screen and (min-width:769px){
    .booksSwiper.--is-centered {
        padding-left: 0;
    }
    .booksSwiper.--is-centered .books__lists {
        justify-content: center;
    }
    .booksSwiper.--is-centered .books__item:last-child {
        margin-right: 0;
    }
    .booksSwiper.--is-centered + .books__arrowWrap {
        display: none;
    }
}
.booksCont {
    position: relative;
}
.books__lists {
    padding: min(calc(54 / var(--vw-min) * 100vw),54px) 0 10px;
}
@media screen and (max-width:768px){
    .books__lists {
        padding: calc(32 / var(--vw-min) * 100vw) 0 8px;
    }
}
.books__item {
    width: min(calc(256 / var(--vw-min) * 100vw),256px);
    margin-right: min(calc(40 / var(--vw-min) * 100vw),40px);
}
@media screen and (max-width:768px){
    .books__item {
        width: calc(177 / var(--vw-min) * 100vw);
        margin-right: calc(24 / var(--vw-min) * 100vw);
    }
}
.books__link {
    text-decoration: none;
    display: block;
    transition: transform var(--duration-hover) var(--easing-playful);
}
.books__tit {
   font-size: min(calc(18 / var(--vw-min) * 100vw),18px);
   font-weight: 500;
   line-height: 1.5556;
   letter-spacing: 0.36px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-bottom: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
    .books__tit {
        font-size: calc(14 / var(--vw-min) * 100vw);
        margin-bottom: calc(12 / var(--vw-min) * 100vw);
    }
}
.books__linkDeco {
    width: min(calc(28 / var(--vw-min) * 100vw),28px);
    height: min(calc(28 / var(--vw-min) * 100vw),28px);
    position: relative;
    -webkit-mask: url(../img/common/deco/deco_link.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_link.svg)no-repeat center/contain;
    background-color: var(--color-goldA68);
    transition: transform var(--duration-hover-fast) var(--easing-playful);
}
@media screen and (max-width:768px){
    .books__linkDeco {
        width: calc(20 / var(--vw-min) * 100vw);
        height: calc(20 / var(--vw-min) * 100vw);
    }
}
.books__imgWrap {
    width: 100%;
    transition: transform var(--duration-hover) var(--easing-playful);
    transition-delay: calc(var(--duration-hover) * 0.55);
}
.books__img {
    width: 100%;
    display: flex;
    flex-direction: column;
    border-right: min(calc(2 / var(--vw-min) * 100vw),2px) solid var(--color-goldA68);
    overflow: hidden;
    transform-origin: left bottom;
    transition: transform var(--duration-hover) var(--easing-playful);
    transition-delay: 0s;
}
@media screen and (max-width:768px){
    .books__img {
        border-width: calc(2 / var(--vw-min) * 100vw);
    }
}
.books__img::before {
    content: "";
    width: 100%;
    height: min(calc(7 / var(--vw-min) * 100vw),7px);
    display: block;
    background: url(../img/top/book_page.svg)no-repeat center/contain;
    mask: url(../img/top/book_page.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .books__img::before {
        height: calc(7 / var(--vw-min) * 100vw);
    }
}
.books__imgIn {
    width: 100%;
    overflow: hidden;
}
.books__imgIn img {
    width: 100%;
    pointer-events: none;
}
@media (hover: hover) and (pointer: fine){
    .books__link:hover .books__imgWrap {
        transform: translateY(min(calc(-8 / var(--vw-min) * 100vw), -8px));
        transition-delay: 0s;
    }
    .books__link:hover .books__img {
        transform: rotate(4deg);
        transition-delay: calc(var(--duration-hover) * 0.45);
    }
    .books__link:hover .books__linkDeco {
        transform: scale(1.1);
    }
}
.books__arrowWrap {
    width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
    display: flex;
    gap: min(calc(24 / var(--vw-min) * 100vw),24px);
    justify-content: flex-end;
    position: absolute;
    top: max(calc(-72 / var(--vw-min) * 100vw),-72px);
    right: 0;
    left: 0;
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .books__arrowWrap {
        width: calc(335 / var(--vw-min) * 100vw);
        gap: calc(24 / var(--vw-min) * 100vw);
        top: unset;
        justify-content: flex-start;
        bottom: calc(-90 / var(--vw-min) * 100vw);
    }
}
/**
* deco
**/
.books .deco__wood1 {
    width: min(calc(504 / var(--vw-min) * 100vw),504px);
    height: min(calc(170 / var(--vw-min) * 100vw),170px);
    position: absolute;
    bottom: max(calc(-137 / var(--vw-min) * 100vw),-137px);
    left: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (max-width:768px){
    .books .deco__wood1 {
        width: calc(320 / var(--vw-min) * 100vw);
        height: calc(104 / var(--vw-min) * 100vw);
        bottom: calc(-84 / var(--vw-min) * 100vw);
    }
}
.books .deco__wood1::before {
    content: "";
    width: min(calc(684 / var(--vw-min) * 100vw),684px);
    height: min(calc(170 / var(--vw-min) * 100vw),170px);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../img/common/deco/deco_wood2.png)no-repeat center/contain;
}
@supports (background-image: url(../img/common/deco/deco_wood2.webp)){
    .books .deco__wood1::before {
        background-image: url(../img/common/deco/deco_wood2.webp);
    }
}
@media screen and (max-width:768px){
    .books .deco__wood1::before {
        width: calc(436 / var(--vw-min) * 100vw);
        height: calc(104 / var(--vw-min) * 100vw);
    }
}
.books .deco__wood1.js-scrani {
    opacity: 1;
    transform: none;
    --deco-slide-from: max(calc(-180 / var(--vw-min) * 100vw), -180px);
}
@media screen and (max-width:768px){
    .books .deco__wood1.js-scrani {
        --deco-slide-from: calc(-116 / var(--vw-min) * 100vw);
    }
}
.books .deco__wood1.js-scrani::before {
    transform: translateX(var(--deco-slide-from));
}
.books .deco__wood1.js-scrani.--is-ani::before {
    animation: decoSlideIn var(--duration-scrani) var(--easing-outquart) forwards;
}
.books .deco__kiriku {
    width: calc(234 / var(--vw-min) * 100vw);
    height: calc(200 / var(--vw-min) * 100vw);
    position: absolute;
    right: calc(535 / var(--vw-min) * 100vw);
    bottom: 10px;
    opacity: .96;
}
@media screen and (max-width:768px){
    .books .deco__kiriku {
        width: calc(104 / var(--vw-min) * 100vw);
        height: calc(88 / var(--vw-min) * 100vw);
        right: calc(24 / var(--vw-min) * 100vw);
    }
}
.books .deco__kiriku::before {
    content: "";
    width: calc(196 / var(--vw-min) * 100vw);
    height: calc(200 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    transform-origin: bottom right;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: url(../img/common/deco/deco_kiriku2.png)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .books .deco__kiriku::before {
        width: calc(86 / var(--vw-min) * 100vw);
        height: calc(88 / var(--vw-min) * 100vw);
    }
}
.books .deco__kiriku::after {
    content: "";
    width: calc(36 / var(--vw-min) * 100vw);
    height: calc(27 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    bottom: calc(10 / var(--vw-min) * 100vw);
    left: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-mask: url(../img/common/deco/deco_dust4.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_dust4.svg)no-repeat center/contain;
    background-color: var(--color-black231);
}
@media screen and (max-width:768px){
    .books .deco__kiriku::after {
        width: calc(16 / var(--vw-min) * 100vw);
        height: calc(11 / var(--vw-min) * 100vw);
        bottom: calc(4 / var(--vw-min) * 100vw);
    }
}
.books.--is-deco-ani .deco__kiriku::before {
    will-change: transform;
    animation: booksKirikuHammer 5s var(--easing-outquart) infinite;
}
.books.--is-deco-ani .deco__kiriku::after {
    will-change: opacity;
    animation: booksKirikuDust 5s linear infinite;
}
@keyframes decoSlideIn {
    0% {
        transform: translateX(var(--deco-slide-from));
    }
    100% {
        transform: translateX(0);
    }
}
@keyframes staffCastDecoBounce {
    0%, 100% {
        transform: translateY(0);
    }
    18% {
        transform: translateY(min(calc(-8 / var(--vw-min) * 100vw), -8px));
    }
    36% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(min(calc(-4 / var(--vw-min) * 100vw), -4px));
    }
    64% {
        transform: translateY(0);
    }
}
@keyframes introToolDig1 {
    0%, 100% {
        transform: rotate(0deg);
    }
    35% {
        transform: rotate(0deg);
    }
    45% {
        transform: rotate(-18deg);
    }
    70% {
        transform: rotate(0deg);
    }
}
@keyframes introToolDig {
    0%, 100% {
        transform: rotate(-4deg);
    }
    38% {
        transform: rotate(-4deg);
    }
    48% {
        transform: rotate(30deg);
    }
    72% {
        transform: rotate(-4deg);
    }
}
@keyframes introDustTool1 {
    0%, 46% {
        opacity: 0;
        transform: translateY(3px);
    }
    48% {
        opacity: 0.85;
        transform: translateY(0);
    }
    54% {
        opacity: 0.75;
        transform: translateY(-4px);
    }
    64% {
        opacity: 0.3;
        transform: translateY(-8px);
    }
    72%, 100% {
        opacity: 0;
        transform: translateY(-12px);
    }
}
@keyframes introDustTool2 {
    0%, 44% {
        opacity: 0;
        transform: translateY(-8px);
    }
    46% {
        opacity: 0.65;
        transform: translateY(-4px);
    }
    52% {
        opacity: 0.55;
        transform: translateY(0);
    }
    62% {
        opacity: 0.25;
        transform: translateY(4px);
    }
    70%, 100% {
        opacity: 0;
        transform: translateY(8px);
    }
}
@keyframes introKirikuWalk {
    0%, 100% {
        transform: translateY(0);
    }
    20% {
        transform: translateY(min(calc(-8 / var(--vw-min) * 100vw), -8px));
    }
    40% {
        transform: translateY(0);
    }
    55% {
        transform: translateY(min(calc(-5 / var(--vw-min) * 100vw), -5px));
    }
    75% {
        transform: translateY(0);
    }
}
@keyframes introKirikuDust {
    0%, 38% {
        opacity: 0;
        transform: translateY(0);
    }
    40% {
        opacity: 0.5;
        transform: translateY(3px);
    }
    48% {
        opacity: 0.45;
        transform: translateY(4px);
    }
    58% {
        opacity: 0.2;
        transform: translateY(5px);
    }
    64%, 73% {
        opacity: 0;
        transform: translateY(0);
    }
    75% {
        opacity: 0.45;
        transform: translateY(3px);
    }
    84% {
        opacity: 0.35;
        transform: translateY(4px);
    }
    94% {
        opacity: 0.15;
        transform: translateY(5px);
    }
    100% {
        opacity: 0;
        transform: translateY(0);
    }
}
@keyframes booksKirikuHammer {
    0%, 100% {
        transform: rotate(0deg);
    }
    40% {
        transform: rotate(0deg);
    }
    48% {
        transform: rotate(42deg);
    }
    58% {
        transform: rotate(0deg);
    }
}
@keyframes booksKirikuDust {
    0%, 57% {
        opacity: 0;
    }
    58% {
        opacity: 1;
    }
    64% {
        opacity: 0.75;
    }
    72% {
        opacity: 0.45;
    }
    82% {
        opacity: 0.18;
    }
    92%, 100% {
        opacity: 0;
    }
}
@media (prefers-reduced-motion: reduce) {
    .house__img img {
        transform: none;
    }
    .fv.--is-await-reveal .fv__catch,
    .fv.--is-reveal .fv__catch {
        opacity: 1;
        transform: none;
        animation: none;
    }
    .fv__movie.--is-play-ani .movie__play::before {
        animation: none;
    }
    .news .deco__green.js-scrani::before,
    .character .deco__wood1.js-scrani::before,
    .books .deco__wood1.js-scrani::before {
        transform: none;
        animation: none;
    }
    .staffCast.--is-deco-ani .staff .staffCast__tit-en::before,
    .staffCast.--is-deco-ani .cast .staffCast__tit-en::before {
        animation: none;
    }
    .introduction.--is-deco-ani .deco__tool1::before,
    .introduction.--is-deco-ani .deco__tool2::before,
    .introduction.--is-deco-ani .deco__tool1::after,
    .introduction.--is-deco-ani .deco__tool2::after {
        animation: none;
    }
    .introduction.--is-deco-ani .deco__kiriku::before,
    .introduction.--is-deco-ani .deco__kiriku::after {
        animation: none;
    }
    .books.--is-deco-ani .deco__kiriku::before,
    .books.--is-deco-ani .deco__kiriku::after {
        animation: none;
    }
    .loading.--is-ani .loading__soara,
    .loading.--is-ani .loading__house,
    .loading.--is-ani .loading__en,
    .loading.--is-ani .loading__logo,
    .loading.--is-ani .loading__l,
    .loading.--is-ani .loading__o,
    .loading.--is-ani .loading__a,
    .loading.--is-ani .loading__d,
    .loading.--is-ani .loading__i,
    .loading.--is-ani .loading__n,
    .loading.--is-ani .loading__g,
    .loading.--is-ani .loading__dot1,
    .loading.--is-ani .loading__dot2,
    .loading.--is-ani .loading__dot3,
    .loading.--is-ani .loading__kiriku::before,
    .loading.--is-ani .loading__kiriku::after {
        animation: none;
    }
    .loading.--is-ani .loading__soara,
    .loading.--is-ani .loading__house,
    .loading.--is-ani .loading__en {
        opacity: 1;
        transform: none;
    }
    .loading.--is-ani .loading__l,
    .loading.--is-ani .loading__o,
    .loading.--is-ani .loading__a,
    .loading.--is-ani .loading__d,
    .loading.--is-ani .loading__i,
    .loading.--is-ani .loading__n,
    .loading.--is-ani .loading__g,
    .loading.--is-ani .loading__dot1,
    .loading.--is-ani .loading__dot2,
    .loading.--is-ani .loading__dot3 {
        opacity: 1;
        transform: none;
    }
    .loading.--is-done {
        animation: none;
        clip-path: inset(0 0 100% 0);
        opacity: 0;
        visibility: hidden;
    }
    .loading.--is-done::before,
    .loading.--is-done::after,
    .loading.--is-done .loading__logo,
    .loading.--is-done .loading__txt,
    .loading.--is-done .loading__kiriku {
        animation: none;
        transform: none;
    }
}
@keyframes loadingLogoPopIn {
    0% {
        opacity: 0;
        transform: scale(0.72) translateY(min(calc(14 / var(--vw-min) * 100vw), 14px));
    }
    100% {
        opacity: 1;
        transform: none;
    }
}
@keyframes loadingLogoBounce {
    0%, 100% {
        transform: translateY(0);
    }
    22% {
        transform: translateY(min(calc(-13 / var(--vw-min) * 100vw), -13px));
    }
    42% {
        transform: translateY(min(calc(3 / var(--vw-min) * 100vw), 3px));
    }
    58% {
        transform: translateY(min(calc(-5 / var(--vw-min) * 100vw), -5px));
    }
    74% {
        transform: translateY(min(calc(1 / var(--vw-min) * 100vw), 1px));
    }
    88% {
        transform: translateY(min(calc(-2 / var(--vw-min) * 100vw), -2px));
    }
}
@keyframes loadingTxtBounce {
    0%, 100% {
        transform: translateY(0);
    }
    22% {
        transform: translateY(min(calc(-11 / var(--vw-min) * 100vw), -11px));
    }
    42% {
        transform: translateY(min(calc(2 / var(--vw-min) * 100vw), 2px));
    }
    58% {
        transform: translateY(min(calc(-4 / var(--vw-min) * 100vw), -4px));
    }
    74% {
        transform: translateY(min(calc(1 / var(--vw-min) * 100vw), 1px));
    }
    88% {
        transform: translateY(min(calc(-1 / var(--vw-min) * 100vw), -1px));
    }
}
@keyframes loadingExitCurtain {
    0% {
        clip-path: inset(0 0 0 0);
    }
    100% {
        clip-path: inset(0 0 100% 0);
    }
}
@keyframes loadingExitChase {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-100dvh);
    }
}
@keyframes loadingExitChaseKiriku {
    0% {
        transform: rotate(8deg) translateY(0);
    }
    100% {
        transform: rotate(8deg) translateY(-100dvh);
    }
}
@keyframes loadingKirikuHammer {
    0%, 100% {
        transform: rotate(-3deg);
    }
    40% {
        transform: rotate(-3deg);
    }
    48% {
        transform: rotate(45deg);
    }
    58% {
        transform: rotate(-3deg);
    }
}
@keyframes loadingKirikuDust {
    0%, 57% {
        opacity: 0;
    }
    58% {
        opacity: 1;
    }
    64% {
        opacity: 0.75;
    }
    72% {
        opacity: 0.45;
    }
    82% {
        opacity: 0.18;
    }
    92%, 100% {
        opacity: 0;
    }
}
/*-----------------------------------------------
 * LOADING
-------------------------------------------------*/
.loading {
    position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10000;
	min-height: 100vh;
	min-height: 100dvh;
    --loading-fade-duration: 650ms;
    --loading-ease: var(--easing-hover);
    --loading-ease-bounce: cubic-bezier(0.34, 1.15, 0.64, 1);
    background: url(../img/common/bg/bg_top.jpg)repeat top/cover;
}
@supports (background-image: url(../img/common/bg/bg_top.webp)){
    .loading {
        background-image: url(../img/common/bg/bg_top.webp);
    }
}
@media screen and (max-width:768px){
    .loading {
        --loading-offset-y: max(0px, calc((100dvh - min(calc(667 / var(--vw-min) * 100vw), 100dvh)) / 2));
    }
}
.loading.--is-done {
    animation: loadingExitCurtain var(--loading-fade-duration) cubic-bezier(0.65, 0, 0.35, 1) forwards;
    pointer-events: none;
}
.loading.--is-done::before,
.loading.--is-done::after,
.loading.--is-done .loading__txt {
    animation: loadingExitChase calc(var(--loading-fade-duration) * 0.9) cubic-bezier(0.65, 0, 0.35, 1) 120ms forwards;
}
.loading.--is-done .loading__kiriku {
    animation: loadingExitChaseKiriku calc(var(--loading-fade-duration) * 0.9) cubic-bezier(0.65, 0, 0.35, 1) 120ms forwards;
}
.loading.--is-done .loading__logo {
    animation: loadingExitChase calc(var(--loading-fade-duration) * 0.85) cubic-bezier(0.65, 0, 0.35, 1) forwards;
}
.loading::before {
    content: "";
    width: 100%;
    height: calc(144 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: min(calc(591 / var(--vh-min) * 100vh),calc(591 / var(--vw-min) * 100vw));
    z-index: 2;
    -webkit-mask: url(../img/common/deco/deco_introTop.svg)no-repeat top/cover;
    mask: url(../img/common/deco/deco_introTop.svg)no-repeat top/cover;
    background-color: var(--color-black231);
}
@media screen and (max-width:768px){
    .loading::before {
        width: 100%;
        height: min(calc(40 / var(--vh-min) * 100vh),calc(40 / var(--vw-min) * 100vw));
        top: calc(min(calc(440 / var(--vh-min) * 100vh),calc(440 / var(--vw-min) * 100vw)) + var(--loading-offset-y));
    }
}
.loading::after {
    content: "";
    width: 100%;
    height: calc(100% - min(calc(590 / var(--vh-min) * 100vh),calc(590 / var(--vw-min) * 100vw)) - 144 / var(--vw-min) * 100vw);
    display: block;
    position: absolute;
    top: calc(min(calc(590 / var(--vh-min) * 100vh),calc(590 / var(--vw-min) * 100vw)) + 144 / var(--vw-min) * 100vw);
    z-index: 2;
    background-color: var(--color-black231);
}
@media screen and (max-width:768px){
    .loading::after {
        height: calc(100% - min(calc(479 / var(--vh-min) * 100vh),calc(479 / var(--vw-min) * 100vw)) - var(--loading-offset-y));
        top: calc(min(calc(479 / var(--vh-min) * 100vh),calc(479 / var(--vw-min) * 100vw)) + var(--loading-offset-y));
    }
}
.loading__logo {
    width: min(calc(432 / var(--vh-min) * 100vh),calc(432 / var(--vw-min) * 100vw));
    height: min(calc(212 / var(--vh-min) * 100vh),calc(212 / var(--vw-min) * 100vw));
    position: absolute;
    top: min(calc(230 / var(--vh-min) * 100vh),calc(230 / var(--vw-min) * 100vw));
    right: 0;
    left: 0;
    z-index: 3;
    margin: auto;
}
@media screen and (max-width:768px){
    .loading__logo {
        width: min(calc(231 / var(--vh-min) * 100vh),calc(231 / var(--vw-min) * 100vw));
        height: min(calc(113 / var(--vh-min) * 100vh),calc(113 / var(--vw-min) * 100vw));
        top: calc(min(calc(161 / var(--vh-min) * 100vh),calc(161 / var(--vw-min) * 100vw)) + var(--loading-offset-y));
    }
}
.loading.--is-ani .loading__logo {
    animation: loadingLogoBounce 0.75s var(--loading-ease-bounce) 1.28s both;
}
.loading__txt {
    width: min(calc(296 / var(--vh-min) * 100vh),calc(296 / var(--vw-min) * 100vw));
    height: min(calc(97 / var(--vh-min) * 100vh),calc(97 / var(--vw-min) * 100vw));
    position: absolute;
    top: min(calc(584 / var(--vh-min) * 100vh),calc(584 / var(--vw-min) * 100vw));
    right: 0;
    left: 0;
    z-index: 3;
    margin: auto;
}
@media screen and (max-width:768px){
    .loading__txt {
        width: min(calc(186 / var(--vh-min) * 100vh),calc(186 / var(--vw-min) * 100vw));
        height: min(calc(50 / var(--vh-min) * 100vh),calc(50 / var(--vw-min) * 100vw));
        top: calc(min(calc(410 / var(--vh-min) * 100vh),calc(410 / var(--vw-min) * 100vw)) + var(--loading-offset-y));
        left: min(calc(35 / var(--vh-min) * 100vh),calc(35 / var(--vw-min) * 100vw));
        right: unset;
    }
}
.--part {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    margin: auto;
}
.loading__soara {
    opacity: 0;
    background: url(../img/top/loading/soara.svg)no-repeat center/contain;
}
.loading__house {
    opacity: 0;
    background: url(../img/top/loading/house.svg)no-repeat center/contain;
}
.loading__en {
    opacity: 0;
    background: url(../img/top/loading/en.svg)no-repeat center/contain;
}
.loading.--is-ani .loading__soara {
    animation: loadingLogoPopIn 0.5s var(--loading-ease) 0.1s both;
}
.loading.--is-ani .loading__house {
    animation: loadingLogoPopIn 0.5s var(--loading-ease) 0.25s both;
}
.loading.--is-ani .loading__en {
    animation: loadingLogoPopIn 0.5s var(--loading-ease) 0.4s both;
}
.loading__l,
.loading__o,
.loading__a,
.loading__d,
.loading__i,
.loading__n,
.loading__g,
.loading__dot1,
.loading__dot2,
.loading__dot3 {
    opacity: 0;
}
.loading__l {
    background: url(../img/top/loading/l.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__l {
        background-image: url(../img/top/loading/l-s.svg);
    }
}
.loading__a {
    background: url(../img/top/loading/a.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__a {
        background-image: url(../img/top/loading/a-s.svg);
    }
}
.loading__o {
    background: url(../img/top/loading/o.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__o {
        background-image: url(../img/top/loading/o-s.svg);
    }
}
.loading__d {
    background: url(../img/top/loading/d.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__d {
        background-image: url(../img/top/loading/d-s.svg);
    }
}
.loading__i {
    background: url(../img/top/loading/i.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__i {
        background-image: url(../img/top/loading/i-s.svg);
    }
}
.loading__n {
    background: url(../img/top/loading/n.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__n {
        background-image: url(../img/top/loading/n-s.svg);
    }
}
.loading__g {
    background: url(../img/top/loading/g.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__g {
        background-image: url(../img/top/loading/g-s.svg);
    }
}
.loading__dot1 {
    background: url(../img/top/loading/dot1.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__dot1 {
        background-image: url(../img/top/loading/dot1-s.svg);
    }
}
.loading__dot2 {
    background: url(../img/top/loading/dot2.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__dot2 {
        background-image: url(../img/top/loading/dot2-s.svg);
    }
}
.loading__dot3 {
    background: url(../img/top/loading/dot3.svg)no-repeat center/contain;
}
@media screen and (max-width:768px){
    .loading__dot3 {
        background-image: url(../img/top/loading/dot3-s.svg);
    }
}
.loading.--is-ani .loading__l {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.1s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.28s both;
}
.loading.--is-ani .loading__o {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.17s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.33s both;
}
.loading.--is-ani .loading__a {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.24s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.38s both;
}
.loading.--is-ani .loading__d {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.31s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.43s both;
}
.loading.--is-ani .loading__i {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.38s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.48s both;
}
.loading.--is-ani .loading__n {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.45s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.53s both;
}
.loading.--is-ani .loading__g {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.52s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.58s both;
}
.loading.--is-ani .loading__dot1 {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.59s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.63s both;
}
.loading.--is-ani .loading__dot2 {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.66s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.68s both;
}
.loading.--is-ani .loading__dot3 {
    animation:
        loadingLogoPopIn 0.5s var(--loading-ease) 0.73s both,
        loadingTxtBounce 0.65s var(--loading-ease-bounce) 1.73s both;
}
.loading__kiriku {
    width: min(calc(208 / var(--vh-min) * 100vh),calc(208 / var(--vw-min) * 100vw));
    height: min(calc(212 / var(--vh-min) * 100vh),calc(212 / var(--vw-min) * 100vw));
    position: absolute;
    top: min(calc(517 / var(--vh-min) * 100vh),calc(517 / var(--vw-min) * 100vw));
    right: min(calc(213 / var(--vh-min) * 100vh),calc(213 / var(--vw-min) * 100vw));
    z-index: 3;
    transform: rotate(8deg);
}
@media screen and (max-width:768px){
    .loading__kiriku {
        width: min(calc(120 / var(--vh-min) * 100vh),calc(120 / var(--vw-min) * 100vw));
        height: min(calc(122 / var(--vh-min) * 100vh),calc(122 / var(--vw-min) * 100vw));
        top: calc(min(calc(356 / var(--vh-min) * 100vh),calc(356 / var(--vw-min) * 100vw)) + var(--loading-offset-y));
        right: min(calc(12 / var(--vh-min) * 100vh),calc(12 / var(--vw-min) * 100vw));
    }
}
.loading__kiriku::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    transform-origin: bottom right;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: url(../img/common/deco/deco_kiriku2.png)no-repeat center/contain;
}
.loading__kiriku::after {
    content: "";
    width: min(calc(36 / var(--vh-min) * 100vh),calc(36 / var(--vw-min) * 100vw));
    height: min(calc(27 / var(--vh-min) * 100vh),calc(27 / var(--vw-min) * 100vw));
    display: block;
    position: absolute;
    bottom: min(calc(10 / var(--vh-min) * 100vh),calc(10 / var(--vw-min) * 100vw));
    left: 0;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -webkit-mask: url(../img/common/deco/deco_dust4.svg)no-repeat center/contain;
    mask: url(../img/common/deco/deco_dust4.svg)no-repeat center/contain;
    background-color: var(--color-black231);
}
@media screen and (max-width:768px){
    .loading__kiriku::after {
        width: min(calc(16 / var(--vh-min) * 100vh),calc(16 / var(--vw-min) * 100vw));
        height: min(calc(11 / var(--vh-min) * 100vh),calc(11 / var(--vw-min) * 100vw));
        bottom: min(calc(4 / var(--vh-min) * 100vh),calc(4 / var(--vw-min) * 100vw));
    }
}
.loading.--is-ani .loading__kiriku::before {
    will-change: transform;
    animation: loadingKirikuHammer 1.4s var(--loading-ease) 0.6s both;
}
.loading.--is-ani .loading__kiriku::after {
    will-change: opacity;
    animation: loadingKirikuDust 1.4s var(--loading-ease) 0.6s both;
}