@charset "utf-8";
/*-----------------------------------------------
 * common.css
 * レスポンシブは基本スタイルを引き継ぐ（PCファースト）
 * @media screen and (max-width:768px)
-------------------------------------------------*/
/*-----------------------------------------------
 * Reset, root
 * Base
 * Modal
 * Header
 * Footer
 * subSec
 * pager
 * Parts
-------------------------------------------------*/
/*-----------------------------------------------
 * Reset, root
-------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline: none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}

:root {
	/* デザインサイズ */
	--vw-min: 1366;
	--vh-min: 640;
	--max-percent: 1.6;/* 1920/1366 */

	/* フォント  */
	--font-dnp: dnp-shuei-mincho-pr6n, sans-serif;
	--font-jazzier: jazzier, serif;
	--font-saber: saber, sans-serif;

	/* カラー */
	--color-gold9D8: #9D8858;
	--color-gold786: #786333;
	--color-redAF0: #AF0000;
	--color-red490: #490000;
	--color-grayA5A: #A5A5A5;

	--op50-gold9D8: rgba(157,136,88,.5);

	--black-gradient:linear-gradient(transparent, #000000);
	--black-0gradient:linear-gradient(0deg, transparent, #000000);

	/* easing */
	--easing-outquart: cubic-bezier(0.25, 1, 0.5, 1);
	--easing-punch: cubic-bezier(0.34, 1.56, 0.64, 1);
	--easing-inoutquart: cubic-bezier(0.76, 0, 0.24, 1);
}
@media screen and (max-width:768px){
	:root {
		/* デザインサイズ */
		--vw-min: 375;
		--vh-min: 1314;
		--max-percent: 1;
	}
}
/*-----------------------------------------------
 * Base
-------------------------------------------------*/
img {
	pointer-events: none;
}
body{
	-webkit-text-size-adjust: 100%;
	background-color: #000;
	color: #fff;
	font-family: var(--font-dnp);
	font-size: min(calc(17 / var(--vw-min) * 100vw), 17px);
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}
@media screen and (max-width:768px){
	body{
		font-size: calc(24 / var(--vw-min) * 100vw);
		overflow-x: hidden;
	}
}
html.lenis,
html.lenis body{
	height: auto;
}
.lenis.lenis-smooth{
	scroll-behavior: auto !important;
}
.lenis.lenis-stopped{
	overflow: hidden;
}
.pc{ display: block; }
@media screen and (max-width:768px){
	.pc{ display: none; }
}
.sp{ display: none; }
@media screen and (max-width:768px){
	.sp{ display: block; }
}
a{ color: #222; }
a:hover{ text-decoration: none; }
::selection{
	background: #B7D4F9;
	color: #000;
}
::-moz-selection{
	background: #B7D4F9;
	color: #000;
}

/**
 * scroll bar
 */
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}
::-webkit-scrollbar-track {
	background: #fff;
}
::-webkit-scrollbar-thumb {
	background: #000;
	margin: 2px;
	box-shadow: none;
}
html {
	background-color: #000;
}
html.wf-loading body {
	opacity: 0;
}
html.wf-active body {
	opacity: 1;
	transition: opacity 0.3s ease;
}

.f-jazzier {
	font-family: var(--font-jazzier);
}
.f-saber {
	font-family: var(--font-saber);
}
/**
 * Wrap
 */
/* fullWrap */
#fullWrap {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	position: relative;
	z-index: 1;
}

/*-----------------------------------------------
 * Common
-------------------------------------------------*/
/**
* movie
**/
.movieBtn {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    z-index: 2;
}
.movieBtn::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    margin: auto;
    background-color: rgba(0,0,0,.45);
}
.movieBtn::after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    margin: auto;
    background-image: url(../img/common/deco/noise.png);
    background-repeat: repeat;
    background-size: calc(40 / var(--vw-min) * 100vw);
    opacity: .35;
    mix-blend-mode: overlay;
}

.chamferBtn {
	--chamfer: min(calc(13 / var(--vw-min) * 100vw),13px);
	font-size: min(calc(30 / var(--vw-min) * 100vw),30px);
	color: rgba(255,255,255,.7);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	height: min(calc(44 / var(--vw-min) * 100vw),44px);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 0 min(calc(23 / var(--vw-min) * 100vw),23px);
	background-color: var(--color-gold786);
	border: 0;
	appearance: none;
	text-decoration: none;
	clip-path: polygon(var(--chamfer) 0, calc(100% - var(--chamfer)) 0, 100% var(--chamfer), 100% calc(100% - var(--chamfer)), calc(100% - var(--chamfer)) 100%, var(--chamfer) 100%, 0 calc(100% - var(--chamfer)), 0 var(--chamfer));
	cursor: pointer;
}
.chamferBtn::before,
.chamferBtn::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	--c: calc(var(--chamfer) - 0.6px);
	clip-path: polygon(var(--c) 0, calc(100% - var(--c)) 0, 100% var(--c), 100% calc(100% - var(--c)), calc(100% - var(--c)) 100%, var(--c) 100%, 0 calc(100% - var(--c)), 0 var(--c));
}
.chamferBtn::before {
	inset: 1px;
	background-color: #000;
}
.chamferBtn::after {
	inset: 4px;
	background-color: var(--color-gold786);
	--c: calc(var(--chamfer) - 2.3px);
}
.chamferBtn > span {
	display: block;
	position: relative;
	z-index: 1;
}
.chamferBtn.--is-current {
	color: var(--color-gold9D8);
}
.chamferBtn.--is-current::after {
	background-color: #000;
}
@media screen and (max-width:768px){
	.chamferBtn {
		--chamfer: calc(12 / var(--vw-min) * 100vw);
		font-size: calc(24 / var(--vw-min) * 100vw);
		height: calc(36 / var(--vw-min) * 100vw);
		padding: 0 calc(18 / var(--vw-min) * 100vw);
	}
}
@media (hover: hover) and (pointer: fine){
	.chamferBtn,
	.chamferBtn::after{
		transition: color .35s var(--easing-outquart), background-color .35s var(--easing-outquart), text-shadow .35s var(--easing-outquart), filter .35s var(--easing-outquart);
	}
	.chamferBtn{
		filter: drop-shadow(0 0 0 rgba(248, 239, 210, 0));
	}
	.chamferBtn:hover{
		color: #f8efd2;
		background-color: #cbb98a;
		text-shadow: 0 0 min(calc(12 / var(--vw-min) * 100vw),12px) #cbb98a;
		filter: drop-shadow(0 0 min(calc(12 / var(--vw-min) * 100vw),12px) #f8efd2);
	}
	.chamferBtn:hover::after{
		background-color: #000;
	}
	.chamferBtn.--is-current:hover{
		color: var(--color-gold9D8);
		background-color: var(--color-gold786);
		text-shadow: none;
		filter: none;
	}
	.chamferBtn.--is-current:hover::after{
		background-color: #000;
	}
}
.movieBg {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    margin: auto;
    pointer-events: none;
}
.bg_ytplayer {
    margin: auto;
    position: absolute;
    top: -50%;
    left: 0;
    width: 100%;
    height: 200%;
}
/**
* swiper
**/
.swiper__arrowWrap {
    width: 100%;
	height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.swiper__arrow {
	width: min(calc(62 / var(--vw-min) * 100vw),62px);
	height: min(calc(62 / var(--vw-min) * 100vw),62px);
	position: relative;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
}
@media screen and (max-width: 768px) {
	.swiper__arrow {
		width: calc(62 / var(--vw-min) * 100vw);
		height: calc(62 / var(--vw-min) * 100vw);
		border: calc(1 / var(--vw-min) * 100vw) solid var(--op50-gold9D8);
	}
}
.swiper__arrow::before {
	content: "";
	width: min(calc(56 / var(--vw-min) * 100vw),56px);
	height: min(calc(56 / var(--vw-min) * 100vw),56px);
	display: block;
	position: absolute;
	inset: 0;
	margin: auto;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
}
@media screen and (max-width: 768px) {
	.swiper__arrow::before {
		width: calc(56 / var(--vw-min) * 100vw);
		height: calc(56 / var(--vw-min) * 100vw);
		border: calc(1 / var(--vw-min) * 100vw) solid var(--op50-gold9D8);
	}
}
.swiper__arrow::after {
	content: "";
	width: min(calc(24 / var(--vw-min) * 100vw),24px);
	height: min(calc(16 / var(--vw-min) * 100vw),16px);
	display: block;
	position: absolute;
	inset: 0;
	margin: auto;
	-webkit-mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width: 768px) {
	.swiper__arrow::after {
		width: calc(24 / var(--vw-min) * 100vw);
		height: calc(16 / var(--vw-min) * 100vw);
	}
}
.swiper__arrow.--prev::after {
	transform: scale(-1,1) translateX(0);
}
/**
* linkBtn
**/
.linkBtn {
	display: flex;
}
.linkA {
	font-size: min(calc(22 / var(--vw-min) * 100vw),22px);
	color: var(--color-gold9D8);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.44px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: min(calc(15 / var(--vw-min) * 100vw),15px);
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.linkA {
		font-size: calc(22 / var(--vw-min) * 100vw);
		gap: calc(15 / var(--vw-min) * 100vw);
	}
}
.linkA__arrow {
	width: min(calc(62 / var(--vw-min) * 100vw),62px);
	height: min(calc(62 / var(--vw-min) * 100vw),62px);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
}
@media screen and (max-width: 768px) {
	.linkA__arrow {
		width: calc(62 / var(--vw-min) * 100vw);
		height: calc(62 / var(--vw-min) * 100vw);
		border: calc(1 / var(--vw-min) * 100vw) solid var(--op50-gold9D8);
	}
}
.linkA__arrow::before {
	content: "";
	width: min(calc(56 / var(--vw-min) * 100vw),56px);
	height: min(calc(56 / var(--vw-min) * 100vw),56px);
	display: block;
	position: absolute;
	inset: 0;
	margin: auto;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
}
@media screen and (max-width: 768px) {
	.linkA__arrow::before {
		width: calc(56 / var(--vw-min) * 100vw);
		height: calc(56 / var(--vw-min) * 100vw);
		border: calc(1 / var(--vw-min) * 100vw) solid var(--op50-gold9D8);
	}
}
.linkA__arrow::after {
	content: "";
	width: min(calc(24 / var(--vw-min) * 100vw),24px);
	height: min(calc(16 / var(--vw-min) * 100vw),16px);
	display: block;
	position: absolute;
	inset: 0;
	margin: auto;
	-webkit-mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width: 768px) {
	.linkA__arrow::after {
		width: calc(24 / var(--vw-min) * 100vw);
		height: calc(16 / var(--vw-min) * 100vw);
	}
}
/*-----------------------------------------------
 * Modal
-------------------------------------------------*/
/**
 * modalBox
 */
.modalBox{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color: var(--color-red490);
	background-image: url(../img/common/deco/noise.png), linear-gradient(165deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
	background-repeat: repeat, no-repeat;
	background-size: calc(40 / var(--vw-min) * 100vw), 100% 100%;
	background-position: 0 0, left top;
	background-blend-mode: overlay, normal;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
@media screen and (max-width:768px){
	.modalBox{
		background-image: url(../img/common/deco/noise.png), linear-gradient(180deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
	}
}
.oneModal{
	display: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.oneModal.is-show {
	display: block;
}

/* oneModalIn */
.oneModalIn{
	display: flex;
	justify-content: center;
	align-items: center;
	height: auto;
	width: 100%;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width:768px){
	.oneModalIn{
		min-width: 100%;
	}
}
.oneModalIn__cont{
	padding: 50px 0;
}
@media screen and (max-width:768px){
	.oneModalIn__cont{
		width: 100%;
	}
}

/**
 * closeBtn
 */
.closeBtn{
	width: min(calc(100 / var(--vw-min) * 100vw), 100px);
	height: min(calc(112 / var(--vw-min) * 100vw), 112px);
	position: fixed;
	top: 0;
	right: min(calc(24 / var(--vw-min) * 100vw), 24px);
	z-index: 2;
}
@media screen and (max-width:768px){
	.closeBtn{
		width: calc(64 / var(--vw-min) * 100vw);
		height: calc(72 / var(--vw-min) * 100vw);
		right: calc(8 / var(--vw-min) * 100vw);
	}
}

/**
 * iframe
 */
/* common */
.commonIframe{
	width: 100%;
	height: 100%;
	display: block;
}

/* youtube */
.youtubeIframeWrap {
	width: 70%;
	max-width: 159.993vh;
	position: relative;
}
@media screen and (max-width:768px){
	.youtubeIframeWrap {
		width: 100%;
		max-width: 100%;
		margin: 50px 0;
	}
}
.youtubeIframeWrap:before{
	content: "";
	display: block;
	padding-top: 56.25%;
	z-index: 0;
}
.youtubeIframe{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
/**
* COMMENT MODAL
**/
.commentWrap {
	max-width: min(calc(880 / var(--vw-min) * 100vw),880px);
}
@media screen and (max-width:768px){
	.commentWrap {
		max-width: 100%;
		padding: 0 calc(32 / var(--vw-min) * 100vw);
	}
}
.commentIn {
	display: flex;
}
@media screen and (max-width:768px){
	.commentIn {
		flex-direction: column;
	}
}
.comment__img {
	width: calc(100% - min(calc(520 / var(--vw-min) * 100vw),520px));
	position: relative;
}
@media screen and (max-width:768px){
	.comment__img {
		width: 100%;
	}
}
.comment__img img {
	width: 100%;
	aspect-ratio: 5 / 7;
	object-fit: cover;
	pointer-events: none;
}
.comment__frame {
	width: 100%;
	height: min(calc(32 / var(--vw-min) * 100vw),32px);
	display: block;
	position: absolute;
	left: 0;
	z-index: 2;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.comment__frame {
		height: calc(16 / var(--vw-min) * 100vw);
	}
}
.comment__frame.--top {
	top: 0;
}
.comment__frame.--bottom {
	bottom: 0;
}
.comment__frame::before,
.comment__frame::after {
	content: "";
	width: min(calc(32 / var(--vw-min) * 100vw),32px);
	height: min(calc(32 / var(--vw-min) * 100vw),32px);
	display: block;
	position: absolute;
	top: 0;
	background: url(../img/common/deco/frame_corner.svg) no-repeat center / contain;
}
@media screen and (max-width:768px){
	.comment__frame::before,
	.comment__frame::after {
		width: calc(16 / var(--vw-min) * 100vw);
		height: calc(16 / var(--vw-min) * 100vw);
	}
}
.comment__frame::before {
	left: 0;
}
.comment__frame::after {
	right: 0;
}
.comment__frame.--top::after {
	transform: scale(-1,1);
}
.comment__frame.--bottom::before {
	transform: scale(1,-1);
}
.comment__frame.--bottom::after {
	transform: scale(-1,-1);
}
.commentDetail {
	width: min(calc(472 / var(--vw-min) * 100vw),472px);
	padding-left: min(calc(48 / var(--vw-min) * 100vw),48px);
	margin-top: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
	.commentDetail {
		width: 100%;
		padding-left: 0;
		margin-top: calc(32 / var(--vw-min) * 100vw);
	}
}
.commentWrap.--noImg .commentDetail {
	width: 100%;
	margin-top: 0;
	padding-left: 0;
}
@media screen and (max-width:768px){
	.commentWrap.--noImg .commentDetail {
		margin-top: 0;
	}
}
.comment__nameWrap {
	display: flex;
	flex-direction: column;
}
.comment__pos {
	font-size: min(calc(20 / var(--vw-min) * 100vw),20px);
	color: var(--color-orangeF29);
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.03em;
	position: relative;
	align-self: flex-start;
	margin-bottom: min(calc(8 / var(--vw-min) * 100vw),8px);
	padding-left: min(calc(19 / var(--vw-min) * 100vw),19px);
}
.comment__pos::before {
	content: "";
	width: min(calc(7 / var(--vw-min) * 100vw),7px);
	height: min(calc(20 / var(--vw-min) * 100vw),20px);
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	-webkit-mask: url(../img/common/deco/line.svg) no-repeat center / contain;
	mask: url(../img/common/deco/line.svg) no-repeat center / contain;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width:768px){
	.comment__pos {
		font-size: calc(17 / var(--vw-min) * 100vw);
		text-align: center;
		align-self: center;
		margin-bottom: calc(4 / var(--vw-min) * 100vw);
		padding-left: calc(17 / var(--vw-min) * 100vw);
	}
	.comment__pos::before {
		width: calc(7 / var(--vw-min) * 100vw);
		height: calc(13 / var(--vw-min) * 100vw);
	}
}
.comment__name {
	font-size: min(calc(32 / var(--vw-min) * 100vw),32px);
	font-weight: 500;
	line-height: 1.31;
	letter-spacing: 0.08em;
}
@media screen and (max-width:768px){
	.comment__name {
		font-size: calc(28 / var(--vw-min) * 100vw);
		text-align: center;
	}
}
.comment__role {
	color: #fff;
	margin-left: min(calc(8 / var(--vw-min) * 100vw),8px);
}
@media screen and (max-width:768px){
	.comment__role {
		margin-left: calc(6 / var(--vw-min) * 100vw);
	}
}
.commentBox {
	position: relative;
	margin-top: min(calc(24 / var(--vw-min) * 100vw),24px);
	padding-top: min(calc(24 / var(--vw-min) * 100vw),24px);
}
.commentBox::before,
.commentBox::after {
	content: "";
	width: 100%;
	height: min(calc(1 / var(--vw-min) * 100vw),1px);
	display: block;
	position: absolute;
	left: 0;
	background-color: var(--color-gold9D8);
}
.commentBox::before {
	top: 0;
}
.commentBox::after {
	top: min(calc(3 / var(--vw-min) * 100vw),3px);
	opacity: .6;
}
@media screen and (max-width:768px){
	.commentBox {
		margin-top: calc(20 / var(--vw-min) * 100vw);
		padding-top: calc(20 / var(--vw-min) * 100vw);
	}
	.commentBox::before,
	.commentBox::after {
		height: calc(1 / var(--vw-min) * 100vw);
	}
	.commentBox::after {
		top: calc(3 / var(--vw-min) * 100vw);
	}
}
.comment__txt {
	font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
	font-weight: 500;
	line-height: calc(32 / 16);
	letter-spacing: 0.03em;
}
@media screen and (max-width:768px){
	.comment__txt {
		font-size: calc(13 / var(--vw-min) * 100vw);
		line-height: calc(26 / 13);
	}
}
/**
 * Image Modal
 */
.imageModal__image{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100vw;
	height: 100vh;
	height: 100svh;
}
.imageModal__image img{
	width: 100%;
	height: 100%;
	object-fit:scale-down;
}


/*-----------------------------------------------
 * Header
-------------------------------------------------*/
.header {
	--menu-x: min(calc(74 / var(--vw-min) * 100vw), 74px);
	--menu-y: min(calc(56 / var(--vw-min) * 100vw), 56px);
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.header {
		--menu-x: calc(40 / var(--vw-min) * 100vw);
		--menu-y: calc(36 / var(--vw-min) * 100vw);
	}
}
.header__cont {
	width: 100%;
	position: fixed;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	min-height: -webkit-fill-available;
}
.header.is-active .header__cont {
	pointer-events: auto;
}
.header__contInner {
	-webkit-overflow-scrolling: touch;
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	padding: 0;
	z-index: 2;
	pointer-events: none;
	overscroll-behavior: contain;
	overflow: auto;
	clip-path: circle(0px at calc(100% - var(--menu-x)) var(--menu-y));
	transition: clip-path .7s var(--easing-inoutquart);
}
.header.is-active .header__contInner {
	pointer-events: auto;
	clip-path: circle(150vmax at calc(100% - var(--menu-x)) var(--menu-y));
	transition: none;
	animation: headerMenuIn 1s var(--easing-inoutquart) both;
}
.header.is-leave .header__contInner {
	clip-path: circle(0px at calc(100% - var(--menu-x)) var(--menu-y));
	transition: none;
	animation: headerMenuOut .7s var(--easing-inoutquart) both;
}
@keyframes headerMenuIn {
	from {
		clip-path: circle(0px at calc(100% - var(--menu-x)) var(--menu-y));
	}
	to {
		clip-path: circle(150vmax at calc(100% - var(--menu-x)) var(--menu-y));
	}
}
@keyframes headerMenuOut {
	from {
		clip-path: circle(150vmax at calc(100% - var(--menu-x)) var(--menu-y));
	}
	to {
		clip-path: circle(0px at calc(100% - var(--menu-x)) var(--menu-y));
	}
}

.headerNav__logo,
.headerNavLists .navList,
.headerNav__cont .officialWrap {
	translate: 0 min(calc(28 / var(--vw-min) * 100vw), 28px);
	transition: translate .45s var(--easing-outquart);
}
@media screen and (max-width:768px){
	.headerNav__logo,
	.headerNavLists .navList,
	.headerNav__cont .officialWrap {
		translate: 0 calc(20 / var(--vw-min) * 100vw);
	}
}
.headerNav__logo {
	translate: 0 max(calc(-20 / var(--vw-min) * 100vw), -20px);
}
@media screen and (max-width:768px){
	.headerNav__logo {
		translate: 0 calc(-14 / var(--vw-min) * 100vw);
	}
}
.header.is-active .headerNav__logo,
.header.is-active .headerNavLists .navList,
.header.is-active .headerNav__cont .officialWrap {
	translate: 0 0;
	transition: translate .7s var(--easing-outquart) calc(.25s + var(--i, 0) * .045s);
}
.headerNavLists .navList:nth-child(1) { --i: 0; }
.headerNavLists .navList:nth-child(2) { --i: 1; }
.headerNavLists .navList:nth-child(3) { --i: 2; }
.headerNavLists .navList:nth-child(4) { --i: 3; }
.headerNavLists .navList:nth-child(5) { --i: 4; }
.headerNavLists .navList:nth-child(6) { --i: 5; }
.headerNavLists .navList:nth-child(7) { --i: 6; }
.headerNavLists .navList:nth-child(8) { --i: 7; }
.headerNavLists .navList:nth-child(9) { --i: 8; }
.headerNavLists .navList:nth-child(10) { --i: 9; }
.headerNavLists .navList:nth-child(11) { --i: 10; }
.headerNavLists .navList:nth-child(12) { --i: 11; }
.headerNavLists .navList:nth-child(13) { --i: 12; }
.headerNav__cont .officialWrap { --i: 13; }
.headerNav__logo { --i: 0; }
@media (prefers-reduced-motion: reduce){
	.header__contInner,
	.header.is-active .header__contInner,
	.header.is-leave .header__contInner,
	.headerNav__logo,
	.headerNavLists .navList,
	.headerNav__cont .officialWrap {
		transition: none !important;
		animation: none !important;
	}
}

/**
 * inner
**/
.header__inner {
	width: 100%;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	min-height: -webkit-fill-available;
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	background-color: #000;
}
.header__innerCont {
	flex: 1;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	position: relative;
	z-index: 1;
}

/**
 * headerNav
 */
.headerNav {
	width: 100%;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	position: relative;
}
.headerNav__inner {
	width: 100%;
	min-height: 100%;
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	display: flex;
	align-items: center;
	justify-content: center;
}
@media screen and (max-width:768px){
	.headerNav__inner {
		align-items: flex-start;
		justify-content: flex-start;
		min-height: 0;
	}
}
.headerNav__cont {
	width: min(calc(888 / var(--vw-min) * 100vw), 888px);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
	z-index: 1;
	margin: min(calc(256 / var(--vw-min) * 100vw), 256px) auto min(calc(80 / var(--vw-min) * 100vw), 80px);
}
@media screen and (max-width:768px){
	.headerNav__cont {
		width: auto;
		margin: calc(148 / var(--vw-min) * 100vw) auto calc(60 / var(--vw-min) * 100vw)
	}
}

/**
 * logo
 */
.headerNav__logo {
	width: min(calc(270 / var(--vw-min) * 100vw), 270px);
	height: min(calc(112 / var(--vw-min) * 100vw), 112px);
	position: absolute;
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	right: 0;
	left: 0;
	z-index: 2;
	margin: auto;
}
@media screen and (max-width:768px){
	.headerNav__logo {
		width: calc(173 / var(--vw-min) * 100vw);
		height: calc(72 / var(--vw-min) * 100vw);
		top: calc(20 / var(--vw-min) * 100vw);
	}
}
.headerNav__logoLink {
	width: 100%;
	height: 100%;
	display: block;
	background: url(../img/common/logo/logo.svg) no-repeat center / contain;
}

/**
 * headerNavLists
 */
.headerNavLists {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, min(calc(216 / var(--vw-min) * 100vw), 216px));
	gap: min(calc(32 / var(--vw-min) * 100vw), 32px) min(calc(120 / var(--vw-min) * 100vw), 120px);
	align-items: center;
}
@media screen and (max-width:768px){
	.headerNavLists {
		font-size: calc(17 / var(--vw-min) * 100vw);
		line-height: 1;
		width: auto;
		grid-template-columns: max-content max-content;
		gap: calc(26 / var(--vw-min) * 100vw) calc(73 / var(--vw-min) * 100vw);
	}
}
.headerNavLists .navList:nth-child(13) {
	grid-column: 1 / -1;
}
.navList__link {
	font-size: min(calc(25 / var(--vw-min) * 100vw), 25px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.5px;
	display: inline-block;
	max-height: none;
	position: relative;
	text-decoration: none;
}
@media screen and (max-width:768px){
	.navList__link {
		font-size: calc(17 / var(--vw-min) * 100vw);
		letter-spacing: 0.17px;
	}
}
.navList__link.--is-active {
	color: var(--color-gold9D8);
}
.navList__link.--is-active::before {
	content: "";
	width: min(calc(8 / var(--vw-min) * 100vw), 8px);
	height: min(calc(10 / var(--vw-min) * 100vw), 10px);
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: max(calc(-18 / var(--vw-min) * 100vw), -18px);
	margin: auto 0;
	background: url(../img/common/menu/current.svg) no-repeat center / contain;
}
@media screen and (max-width:768px){
	.navList__link.--is-active::before {
		width: calc(6 / var(--vw-min) * 100vw);
		height: calc(8 / var(--vw-min) * 100vw);
		left: calc(-12 / var(--vw-min) * 100vw);
	}
}
@media (hover: hover) and (pointer: fine){
	.navList__link {
		transition: color .45s var(--easing-punch), letter-spacing .45s var(--easing-outquart), transform .45s var(--easing-punch);
		transform: translateX(0) skewX(0);
	}
	.navList__link:hover {
		color: var(--color-gold9D8);
		letter-spacing: 0.12em;
		transform: translateX(10px) skewX(-14deg);
	}
}

/**
 * official（メニュー内）
 */
.headerNav__cont .officialWrap {
	margin-top: min(calc(80 / var(--vw-min) * 100vw), 80px);
}
@media screen and (max-width:768px){
	.headerNav__cont .officialWrap {
		margin-top: calc(56 / var(--vw-min) * 100vw);
	}
}

/**
 * bg
 */
.headerNav__bg {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.headerNav__bgIn {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	background-color: var(--color-red490);
	background-image: url(../img/common/deco/noise.png), linear-gradient(165deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
	background-repeat: repeat, no-repeat;
	background-size: calc(40 / var(--vw-min) * 100vw), 100% 100%;
	background-position: 0 0, left top;
	background-blend-mode: overlay, normal;
	clip-path: polygon(0 0, 50% calc(160 / var(--vw-min) * 100vw), 100% 0, 100% 100%, 0 100%);
}
@media screen and (max-width:768px){
	.headerNav__bgIn {
		background-image: url(../img/common/deco/noise.png), linear-gradient(180deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
		clip-path: polygon(0 calc(8 / var(--vw-min) * 100vw), 50% calc(86 / var(--vw-min) * 100vw), 100% calc(8 / var(--vw-min) * 100vw), 100% 100%, 0 100%);
	}
}
.headerNav__bgFlag {
	display: none;
}
.headerNav__bg .decoPattern.--down {
	top: 0;
}

/**
 * navBtn
 */
.header__navBtnWrap {
	width: min(calc(100 / var(--vw-min) * 100vw), 100px);
	height: min(calc(112 / var(--vw-min) * 100vw), 112px);
	position: fixed;
	top: 0;
	right: min(calc(24 / var(--vw-min) * 100vw), 24px);
	z-index: 3;
	pointer-events: auto;
}
@media screen and (max-width:768px){
	.header__navBtnWrap {
		width: calc(64 / var(--vw-min) * 100vw);
		height: calc(72 / var(--vw-min) * 100vw);
		right: calc(8 / var(--vw-min) * 100vw);
	}
}
.header__navBtn {
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
	cursor: pointer;
}
.header__navBtn__bg {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.header__navBtn__bg img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
	object-position: top center;
	pointer-events: none;
}
.header__navBtn__icon {
	width: min(calc(48 / var(--vw-min) * 100vw), 48px);
	height: min(calc(16 / var(--vw-min) * 100vw), 16px);
	display: block;
	position: absolute;
	top: min(calc(20 / var(--vw-min) * 100vw), 20px);
	right: 0;
	left: 0;
	z-index: 1;
	margin: auto;
}
@media screen and (max-width:768px){
	.header__navBtn__icon {
		width: calc(32 / var(--vw-min) * 100vw);
		height: calc(14 / var(--vw-min) * 100vw);
		top: calc(11 / var(--vw-min) * 100vw);
	}
}
.header__navBtn--line {
	width: 100%;
	height: min(calc(4 / var(--vw-min) * 100vw), 4px);
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	background: linear-gradient(var(--color-gold9D8), var(--color-gold9D8)) no-repeat center / 100% min(calc(1 / var(--vw-min) * 100vw), 1px);
	transition: top .3s var(--easing-outquart), bottom .3s var(--easing-outquart), transform .3s var(--easing-outquart);
}
@media screen and (max-width:768px){
	.header__navBtn--line {
		height: calc(3.6 / var(--vw-min) * 100vw);
		background-size: 100% calc(1 / var(--vw-min) * 100vw);
	}
}
.header__navBtn--line::before,
.header__navBtn--line::after {
	content: "";
	width: min(calc(3 / var(--vw-min) * 100vw), 3px);
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	background-color: var(--color-gold9D8);
}
.header__navBtn--line::before {
	left: 0;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.header__navBtn--line::after {
	right: 0;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
@media screen and (max-width:768px){
	.header__navBtn--line::before,
	.header__navBtn--line::after {
		width: calc(2.5 / var(--vw-min) * 100vw);
	}
}
.header__navBtn--line:nth-child(1) {
	top: 0;
}
.header__navBtn--line:nth-child(2) {
	bottom: 0;
}
.header__navBtn.is-active .header__navBtn--line:nth-child(1),
.header__navBtn.is-active .header__navBtn--line:nth-child(2) {
	top: 0;
	bottom: 0;
}
.header__navBtn.is-active .header__navBtn--line:nth-child(1) {
	transform: rotate(-20deg);
}
.header__navBtn.is-active .header__navBtn--line:nth-child(2) {
	transform: rotate(20deg);
}
.header__navBtn__label {
	width: min(calc(48 / var(--vw-min) * 100vw), 48px);
	height: min(calc(12 / var(--vw-min) * 100vw), 12px);
	display: block;
	position: absolute;
	top: min(calc(48 / var(--vw-min) * 100vw), 48px);
	right: 0;
	left: 0;
	z-index: 1;
	margin: auto;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: opacity .3s var(--easing-outquart);
}
@media screen and (max-width:768px){
	.header__navBtn__label {
		width: calc(34 / var(--vw-min) * 100vw);
		height: calc(8 / var(--vw-min) * 100vw);
		top: calc(32 / var(--vw-min) * 100vw);
	}
}
.header__navBtn__label.--menu {
	background-image: url(../img/common/menu/label_menu.svg);
}
.header__navBtn__label.--close {
	opacity: 0;
	background-image: url(../img/common/menu/label_close.svg);
}
.header__navBtn.is-active .header__navBtn__label.--menu {
	opacity: 0;
}
.header__navBtn.is-active .header__navBtn__label.--close {
	opacity: 1;
}


/*-----------------------------------------------
 * subFooter（下層）
 * アクセスごとにキャラを1人。名前は横にループする
 * 高さ 550 のうち下 163 を .footer がかぶせる（Figma: キャラ下端 550 / フッター開始 387）
 * フッターの谷（.footerBgFlag）が上限なしで拡大するため、ここも min() で頭打ちにしない
-------------------------------------------------*/
.subFooter {
	height: calc(550 / var(--vw-min) * 100vw);
	position: relative;
	z-index: 0;
	margin-top: calc(-156 / var(--vw-min) * 100vw);
	background-color: #000;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.subFooter {
		height: calc(250 / var(--vw-min) * 100vw);
		margin-top: calc(-140 / var(--vw-min) * 100vw);
		overflow: hidden;
	}
}
.subFooter + .footer {
	margin-top: calc(-163 / var(--vw-min) * 100vw);
	padding-top: calc(340 / var(--vw-min) * 100vw);
}
.subFooter + .footer .footerBg {
	top: calc(5 / var(--vw-min) * 100vw);
}
@media screen and (max-width:768px){
	.subFooter + .footer .footerBg {
		top: calc(8 / var(--vw-min) * 100vw);
	}
}
@media screen and (max-width:768px){
	.subFooter + .footer {
		margin-top: calc(-40 / var(--vw-min) * 100vw);
		padding-top: calc(8 / var(--vw-min) * 100vw);
	}
}
.subFooter + .footer .footer__logo {
	width: calc(580 / var(--vw-min) * 100vw);
	height: calc(240 / var(--vw-min) * 100vw);
	top: calc(52 / var(--vw-min) * 100vw);
}
@media screen and (max-width:768px){
	.subFooter + .footer .footer__logo {
		width: calc(200 / var(--vw-min) * 100vw);
		height: calc(83 / var(--vw-min) * 100vw);
		top: calc(4 / var(--vw-min) * 100vw);
	}
	.subFooter + .footer .footer__navWrap {
		padding-top: calc(96 / var(--vw-min) * 100vw);
	}
}
.subFooter__name {
	width: 100%;
	position: absolute;
	top: calc(152 / var(--vw-min) * 100vw);
	right: 0;
	left: 0;
	z-index: 0;
	overflow: hidden;
}
@media screen and (max-width:768px){
	.subFooter__name {
		top: calc(36 / var(--vw-min) * 100vw);
	}
}
.subFooter__nameTrack {
	font-size: calc(240 / var(--vw-min) * 100vw);
	color: var(--color-gold9D8);
	font-weight: 400;
	line-height: 1;
	display: flex;
	width: max-content;
	opacity: 0.25;
	animation: subFooterName linear infinite;
	white-space: nowrap;
}
@media screen and (max-width:768px){
	.subFooter__nameTrack {
		font-size: calc(100 / var(--vw-min) * 100vw);
	}
}
.subFooter__nameTrack span {
	padding-right: 0.5em;
}
.subFooter.--is-static .subFooter__nameTrack {
	width: 100%;
	justify-content: center;
	animation: none;
}
.subFooter.--is-static .subFooter__nameTrack span {
	padding-right: 0;
}
.subFooter__chara {
	width: calc(800 / var(--vw-min) * 100vw);
	height: calc(440 / var(--vw-min) * 100vw);
	position: absolute;
	top: calc(110 / var(--vw-min) * 100vw);
	right: 0;
	left: 0;
	z-index: 1;
	margin: auto;
}
@media screen and (max-width:768px){
	.subFooter__chara {
		width: calc(480 / var(--vw-min) * 100vw);
		height: calc(264 / var(--vw-min) * 100vw);
		top: 0;
		right: auto;
		left: 50%;
		transform: translateX(-50%);
	}
}
.subFooter__chara img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	pointer-events: none;
}
.subFooter__chara img:not([src]) {
	opacity: 0;
}
@keyframes subFooterName {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		transform: translate3d(-50%, 0, 0);
	}
}
@media (prefers-reduced-motion: reduce) {
	.subFooter__nameTrack {
		animation: none;
	}
}

/*-----------------------------------------------
 * Footer
-------------------------------------------------*/
.footer {
	position: relative;
	z-index: 1;
	margin-top: calc(-35 / var(--vw-min) * 100vw);
	padding: calc(403 / var(--vw-min) * 100vw) 0 min(calc(48 / var(--vw-min) * 100vw),48px);
}
@media screen and (max-width:768px){
	.footer {
		margin-top: calc(-121 / var(--vw-min) * 100vw);
		padding: calc(8 / var(--vw-min) * 100vw) 0 calc(36 / var(--vw-min) * 100vw);
	}
}
.footer__logo {
	width: calc(856 / var(--vw-min) * 100vw);
	height: calc(355 / var(--vw-min) * 100vw);
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
}
@media screen and (max-width:768px){
	.footer__logo {
		width: calc(269 / var(--vw-min) * 100vw);
		height: calc(112 / var(--vw-min) * 100vw);
	}
}
.footer__logoLink {
	width: 100%;
	height: 100%;
	display: block;
	background: url(../img/common/logo/logo.svg)no-repeat center/contain;
}
.footerWrap {
	position: relative;
	z-index: 1;
	padding: 0 min(calc(83 / var(--vw-min) * 100vw),83px);
}
@media screen and (max-width:768px){
	.footerWrap {
		padding: 0 calc(20 / var(--vw-min) * 100vw);
	}
}
.footerCont {
	width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}
@media screen and (max-width:768px){
	.footerCont {
		width: 100%;
		flex-direction: column;
	}
}
/**
* nav
**/
@media screen and (max-width:768px){
	.footer__navWrap {
		padding-top: calc(132 / var(--vw-min) * 100vw);
		padding-left: calc(30 / var(--vw-min) * 100vw);
	}
}
.footer__navLists {
	width: min(calc(610 / var(--vw-min) * 100vw),610px);
	line-height: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: min(calc(28 / var(--vw-min) * 100vw),28px) min(calc(64 / var(--vw-min) * 100vw),64px);
}
@media screen and (max-width:768px){
	.footer__navLists {
		width: 100%;
		display: grid;
		grid-template-columns: max-content max-content;
		gap: calc(22 / var(--vw-min) * 100vw) calc(73 / var(--vw-min) * 100vw);
	}
}
.footer__navItem {
	width: calc((100% - min(calc(128 / var(--vw-min) * 100vw),128px)) / 3);
	line-height: 1;
	display: flex;
}
@media screen and (max-width:768px){
	.footer__navItem {
		width: auto;
	}
}
.footer__navLink {
	font-size: min(calc(19 / var(--vw-min) * 100vw),19px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.38px;
	display: inline-block;
	max-height: none;
	position: relative;
	text-decoration: none;
}
@media screen and (max-width:768px){
	.footer__navLink {
		font-size: calc(17 / var(--vw-min) * 100vw);
		letter-spacing: 0.17px;
		white-space: nowrap;
	}
}
.footer__navLink.--is-active {
	color: var(--color-gold9D8);
}
.footer__navLink.--is-active::before {
	content: "";
	width: min(calc(8 / var(--vw-min) * 100vw),8px);
	height: min(calc(10 / var(--vw-min) * 100vw),10px);
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: max(calc(-16 / var(--vw-min) * 100vw),-16px);
	margin: auto 0;
	background: url(../img/common/menu/current.svg) no-repeat center / contain;
}
@media screen and (max-width:768px){
	.footer__navLink.--is-active::before {
		width: calc(6 / var(--vw-min) * 100vw);
		height: calc(8 / var(--vw-min) * 100vw);
		left: calc(-12 / var(--vw-min) * 100vw);
	}
}
@media (hover: hover) and (pointer: fine){
	.footer__navLink {
		transition: color .45s var(--easing-punch), letter-spacing .45s var(--easing-outquart), transform .45s var(--easing-punch);
		transform: translateX(0) skewX(0);
	}
	.footer__navLink:hover {
		color: var(--color-gold9D8);
		letter-spacing: 0.12em;
		transform: translateX(8px) skewX(-12deg);
	}
}
.footer__right {
	width: min(calc(312 / var(--vw-min) * 100vw),312px);
}
@media screen and (max-width:768px){
	.footer__right {
		width: 100%;
		display: flex;
		flex-direction: column;
	}
}
.footer__bnr {
	width: min(calc(312 / var(--vw-min) * 100vw),312px);
}
@media screen and (max-width:768px){
	.footer__bnr {
		width: calc(275 / var(--vw-min) * 100vw);
		margin-top: calc(56 / var(--vw-min) * 100vw);
		margin-left: calc(30 / var(--vw-min) * 100vw);
	}
}
.footer__bnr + .footer__bnr {
	margin-top: min(calc(6 / var(--vw-min) * 100vw),6px);
}
@media screen and (max-width:768px){
	.footer__bnr + .footer__bnr {
		margin-top: calc(6 / var(--vw-min) * 100vw);
	}
}
.footer__bnrLink {
	width: 100%;
	height: 100%;
	display: block;
}
.footer__bnrLink img {
	width: 100%;
	pointer-events: none;
}
/**
* official
**/
.officialWrap {
	display: flex;
	align-items: center;
	margin-top: min(calc(40 / var(--vw-min) * 100vw),40px);
}
@media screen and (max-width:768px){
	.officialWrap {
		margin-top: calc(40 / var(--vw-min) * 100vw);
	}
	.footer .officialWrap {
		order: -1;
		margin-top: calc(48 / var(--vw-min) * 100vw);
		padding-left: calc(30 / var(--vw-min) * 100vw);
	}
}
.officialTit {
	font-size: min(calc(14 / var(--vw-min) * 100vw),14px);
	color: #fff;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.28px;
	padding-right: min(calc(26 / var(--vw-min) * 100vw),26px);
	margin-top: min(calc(3 / var(--vw-min) * 100vw),3px);
}
@media screen and (max-width:768px){
	.officialTit {
		font-size: calc(14 / var(--vw-min) * 100vw);
		padding-right: calc(26 / var(--vw-min) * 100vw);
		margin-top: calc(3 / var(--vw-min) * 100vw);
	}
	.headerNav__cont .officialTit {
		font-size: calc(11 / var(--vw-min) * 100vw);
		letter-spacing: 0.22px;
		padding-right: calc(16 / var(--vw-min) * 100vw);
	}
}
@media screen and (max-width:768px){
	.footer .officialTit {
		font-size: calc(11 / var(--vw-min) * 100vw);
		letter-spacing: 0.22px;
		padding-right: calc(16 / var(--vw-min) * 100vw);
	}
}
.officialLists {
	display: flex;
	align-items: center;
	gap: min(calc(24 / var(--vw-min) * 100vw),24px);
}
@media screen and (max-width:768px){
	.officialLists {
		gap: calc(24 / var(--vw-min) * 100vw);
	}
	.footer .officialLists {
		gap: calc(24 / var(--vw-min) * 100vw);
	}
}
.officialLink {
	display: block;
	background-color: #fff;
}
.officialLink.--x {
	width: min(calc(19 / var(--vw-min) * 100vw),19px);
	height: min(calc(19 / var(--vw-min) * 100vw),19px);
	-webkit-mask: url(../img/common/sns/icon_x.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_x.svg)no-repeat center/contain;
}
@media screen and (max-width: 768px) {
	.officialLink.--x {
		width: calc(19 / var(--vw-min) * 100vw);
		height: calc(19 / var(--vw-min) * 100vw);
	}
}
.officialLink.--tiktok {
	width: min(calc(19 / var(--vw-min) * 100vw),19px);
	height: min(calc(21 / var(--vw-min) * 100vw),21px);
	-webkit-mask: url(../img/common/sns/icon_tiktok.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_tiktok.svg)no-repeat center/contain;
}
@media screen and (max-width: 768px) {
	.officialLink.--tiktok {
		width: calc(19 / var(--vw-min) * 100vw);
		height: calc(21 / var(--vw-min) * 100vw);
	}
}
.officialLink.--insta {
	width: min(calc(21 / var(--vw-min) * 100vw),21px);
	height: min(calc(21 / var(--vw-min) * 100vw),21px);
	-webkit-mask: url(../img/common/sns/icon_Instagram.svg)no-repeat center/contain;
	mask: url(../img/common/sns/icon_Instagram.svg)no-repeat center/contain;
}
@media screen and (max-width: 768px) {
	.officialLink.--insta {
		width: calc(21 / var(--vw-min) * 100vw);
		height: calc(21 / var(--vw-min) * 100vw);
	}
}
/**
* aniplexArea
**/
.aniplexArea {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: min(calc(130 / var(--vw-min) * 100vw),130px);
}
@media screen and (max-width:768px){
	.aniplexArea {
		flex-direction: column;
		align-items: center;
		margin-top: calc(64 / var(--vw-min) * 100vw);
	}
}
.aniplex__linkLists {
	display: flex;
	gap: min(calc(29 / var(--vw-min) * 100vw),29px);
}
@media screen and (max-width:768px){
	.aniplex__linkLists {
		gap: calc(29 / var(--vw-min) * 100vw);
		flex-wrap: wrap;
		justify-content: center;
	}
}
.aniplex__linkItem {
	position: relative;
	display: flex;
}
.aniplex__linkItem:not(:first-child)::after {
	content: "";
	width: min(calc(1 / var(--vw-min) * 100vw),1px);
	height: min(calc(11 / var(--vw-min) * 100vw),11px);
	display: block;
	position: absolute;
	top: 0;
	left: max(calc(-14 / var(--vw-min) * 100vw),-14px);
	bottom: 0;
	margin: auto;
	background-color: rgba(255,255,255,.5);
}
@media screen and (max-width: 768px) {
	.aniplex__linkItem:not(:first-child)::after {
		width: calc(1 / var(--vw-min) * 100vw);
		height: calc(11 / var(--vw-min) * 100vw);
		left: calc(-14 / var(--vw-min) * 100vw);
	}
}
.aniplex__link {
	font-size: min(calc(12 / var(--vw-min) * 100vw),12px);
	color: #fff;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.36px;
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.aniplex__link {
		font-size: calc(12 / var(--vw-min) * 100vw);
	}
}
.aniplexCopyWrap {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
@media screen and (max-width:768px){
	.aniplexCopyWrap {
		align-items: center;
		margin-top: calc(40 / var(--vw-min) * 100vw);
	}
}
.aniplexCopy {
	font-size: min(calc(10 / var(--vw-min) * 100vw),10px);
	color: rgba(255,255,255,.7);
	font-weight: 400;
	line-height: min(calc(18 / var(--vw-min) * 100vw),18px);
	letter-spacing: 0.3px;
}
@media screen and (max-width: 768px) {
	.aniplexCopy {
		font-size: calc(10 / var(--vw-min) * 100vw);
		line-height: calc(18 / var(--vw-min) * 100vw);
	}
}
.copyright {
	font-size: min(calc(10 / var(--vw-min) * 100vw),10px);
	color: rgba(255,255,255,.7);
	font-weight: 400;
	line-height: min(calc(18 / var(--vw-min) * 100vw),18px);
	letter-spacing: 0.3px;
	margin-top: min(calc(6 / var(--vw-min) * 100vw),6px);
}
@media screen and (max-width:768px){
	.copyright {
		font-size: calc(10 / var(--vw-min) * 100vw);
		line-height: calc(18 / var(--vw-min) * 100vw);
		margin-top: calc(4 / var(--vw-min) * 100vw);
	}
}
@media screen and (max-width:768px){
	.aniplexCopy,
	.copyright {
		text-align: center;
		letter-spacing: 0.2px;
	}
}
/**
* bg
**/
.footerBg {
	width: 100%;
	position: absolute;
	top: calc(60 / var(--vw-min) * 100vw);
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	container-type: size;
}
@media screen and (max-width:768px){
	.footerBg {
		top: calc(8 / var(--vw-min) * 100vw);
	}
}
.footerBgIn {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
}
.footerBgIn::before {
	content: "";
	width: 100%;
	position: absolute;
	top: calc(160 / var(--vw-min) * 100vw - 1px);
	right: 0;
	bottom: 0;
	left: 0;
}
.footerBgFlag {
	width: 100%;
	height: calc(160 / var(--vw-min) * 100vw);
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	overflow: hidden;
	clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 0 100%);
}
@media screen and (max-width:768px){
	.footerBgFlag {
		height: calc(80 / var(--vw-min) * 100vw);
		clip-path: polygon(0 0, 50% 55%, 100% 0, 100% 100%, 0 100%);
	}
}
.footerBgFlag::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
}
.footerBgIn::before,
.footerBgFlag::before {
	background-color: var(--color-red490);
	background-image: url(../img/common/deco/grain.png), linear-gradient(165deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
	background-repeat: repeat, no-repeat;
	background-size: 128px 128px, 100% 100cqh;
}
.footerBgFlag::before {
	background-position: 0 0, left top;
}
@media screen and (max-width:768px){
	.footerBgFlag::before {
		background-image: url(../img/common/deco/grain.png), linear-gradient(180deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
		background-size: 128px 128px, 100% 100cqh;
		background-position: 0 0, left top;
	}
}
.footerBgIn::before {
	background-position: 0 0, left calc(-160 / var(--vw-min) * 100vw);
}
@media screen and (max-width:768px){
	.footerBgIn::before {
		top: calc(80 / var(--vw-min) * 100vw - 1px);
		background-image: url(../img/common/deco/grain.png), linear-gradient(180deg, var(--color-redAF0) 0%, var(--color-red490) 100%);
		background-size: 128px 128px, 100% 100cqh;
		background-position: 0 0, left calc(-80 / var(--vw-min) * 100vw);
	}
}
/**
 * pattern
 */
.decoPattern {
	width: 100%;
	height: calc(192 / var(--vw-min) * 100vw);
	position: absolute;
	left: 0;
	z-index: 1;
	overflow: hidden;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.decoPattern {
		height: calc(64 / var(--vw-min) * 100vw);
	}
}
@media screen and (max-width:768px){
	.headerNav__bg .decoPattern {
		height: calc(100 / var(--vw-min) * 100vw);
	}
}
.decoPattern.--up {
	bottom: 1px;
	transform: scaleY(-1);
}
.decoPattern.--down {
	top: 0;
}
.decoPattern__line {
	width: calc(50% + 2px);
	height: 100%;
	position: absolute;
	top: calc(6 / var(--vw-min) * 100vw);
	overflow: hidden;
}
@media screen and (max-width:768px){
	.headerNav__bg .decoPattern__line {
		top: calc(8 / var(--vw-min) * 100vw);
	}
}
.decoPattern__line:first-child {
	left: 0;
}
.decoPattern__line:last-child {
	right: 0;
}
.decoPattern__line::before {
	content: "";
	width: 160%;
	height: calc(20 / var(--vw-min) * 100vw);
	position: absolute;
	top: 1px;
	background-image: url(../img/common/deco/pattern.svg);
	background-repeat: repeat-x;
	background-size: auto 100%;
}
@media screen and (max-width:768px){
	.decoPattern__line::before {
		height: calc(7 / var(--vw-min) * 100vw);
	}
}
@media screen and (max-width:768px){
	.headerNav__bg .decoPattern__line::before {
		height: calc(12 / var(--vw-min) * 100vw);
	}
}
.decoPattern__line:first-child::before {
	left: 0;
	transform-origin: left top;
	transform: rotate(13.184deg);
}
@media screen and (max-width:768px){
	.decoPattern__line:first-child::before {
		transform: rotate(13.2deg);
	}
}
@media screen and (max-width:768px){
	.headerNav__bg .decoPattern__line:first-child::before {
		transform: rotate(22.6deg);
	}
}
.decoPattern__line:last-child::before {
	right: 0;
	transform-origin: right top;
	transform: rotate(-13.184deg);
}
@media screen and (max-width:768px){
	.decoPattern__line:last-child::before {
		transform: rotate(-13.2deg);
	}
}
@media screen and (max-width:768px){
	.headerNav__bg .decoPattern__line:last-child::before {
		transform: rotate(-22.6deg);
	}
}


/*-----------------------------------------------
 * subSec
-------------------------------------------------*/
.subSec__logo {
	width: min(calc(212 / var(--vw-min) * 100vw),212px);
	height: min(calc(88 / var(--vw-min) * 100vw),88px);
	position: absolute;
	top: min(calc(24 / var(--vw-min) * 100vw),24px);
	right: 0;
	left: 0;
	z-index: 2;
	margin: auto;
}
@media screen and (max-width:768px){
	.subSec__logo {
		width: calc(126 / var(--vw-min) * 100vw);
		height: calc(52 / var(--vw-min) * 100vw);
		top: calc(10 / var(--vw-min) * 100vw);
		right: auto;
		left: calc(18 / var(--vw-min) * 100vw);
		margin: 0;
	}
}
.subSec__logoLink {
	width: 100%;
	height: 100%;
	display: block;
	background: url(../img/common/logo/logo.svg) no-repeat center / contain;
}
@media (hover: hover) and (pointer: fine){
	.subSec__logoLink {
		transition: transform .45s var(--easing-punch);
	}
	.subSec__logoLink:hover {
		transform: scale(1.1) rotate(-8deg);
	}
}
.subSec__head {
	position: relative;
	padding: min(calc(200 / var(--vw-min) * 100vw),200px) 0 0;
}
@media screen and (max-width:768px){
	.subSec__head {
		padding-top: calc(120 / var(--vw-min) * 100vw);
	}
}
.head-titWrap {
	width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
	position: relative;
	z-index: 1;
	margin: 0 auto;
}
@media screen and (max-width:768px){
	.head-titWrap {
		width: 100%;
		padding: 0 calc(20 / var(--vw-min) * 100vw);
	}
}
.head-titLead {
	font-size: min(calc(12 / var(--vw-min) * 100vw),12px);
	color: var(--color-gold9D8);
	font-weight: 400;
	line-height: calc(16 / 12);
	letter-spacing: 0;
	opacity: .7;
	margin-top: min(calc(16 / var(--vw-min) * 100vw),16px);
}
@media screen and (max-width:768px){
	.head-titLead {
		font-size: calc(10 / var(--vw-min) * 100vw);
		line-height: calc(13 / 10);
		margin-top: calc(12 / var(--vw-min) * 100vw);
	}
}
.subCont {
	width: min(calc(1200 / var(--vw-min) * 100vw),1200px);
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding-bottom: min(calc(156 / var(--vw-min) * 100vw),156px);
}
@media screen and (max-width:768px){
	.subCont {
		width: 100%;
		padding-bottom: calc(209 / var(--vw-min) * 100vw);
	}
}
.subSec__bg {
	width: 100%;
	height: min(calc(768 / var(--vw-min) * 100vw),768px);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	pointer-events: none;
}
@media screen and (max-width:768px){
	.subSec__bg {
		height: calc(375 / var(--vw-min) * 100vw);
	}
}
.subSec__bg-clip {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.subSec__bg-clip-in {
	width: 100%;
	height: min(calc(768 / var(--vw-min) * 100vw),768px);
	position: fixed;
	top: 0;
	left: 0;
	background: url(../img/common/bg/sub.jpg) no-repeat center top / cover;
}
@supports (background-image:url(../img/common/bg/sub.webp)){
	.subSec__bg-clip-in {
		background-image: url(../img/common/bg/sub.webp);
	}
}
@media screen and (max-width:768px){
	.subSec__bg-clip-in {
		height: calc(375 / var(--vw-min) * 100vw);
		background-image: url(../img/common/bg/sub-s.jpg);
	}
	@supports (background-image:url(../img/common/bg/sub-s.webp)){
		.subSec__bg-clip-in {
			background-image: url(../img/common/bg/sub-s.webp);
		}
	}
}
.subSec__bg::before {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
	background-color: rgba(0,0,0,.3);
}
.subSec__bg::after {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.08) 18%, rgba(0,0,0,.28) 42%, rgba(0,0,0,.55) 66%, rgba(0,0,0,.82) 86%, #000 100%);
}
/**
 * cont-tit-ja
 */
.cont-tit-ja {
	font-size: min(calc(16 / var(--vw-min) * 100vw),16px);
	color: var(--color-gold9D8);
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 4.48px;
	display: block;
	position: absolute;
	top: 0;
	right: max(calc(-5 / var(--vw-min) * 100vw),-5px);
	padding-left: min(calc(19 / var(--vw-min) * 100vw),19px);
}
@media screen and (max-width: 768px) {
	.cont-tit-ja {
		font-size: calc(12 / var(--vw-min) * 100vw);
		letter-spacing: 2.88px;
		right: calc(-5 / var(--vw-min) * 100vw);
		padding-left: calc(17 / var(--vw-min) * 100vw);
	}
}
.cont-tit-ja::before {
	content: "";
	width: min(calc(7 / var(--vw-min) * 100vw),7px);
	height: min(calc(20 / var(--vw-min) * 100vw),20px);
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	-webkit-mask: url(../img/common/deco/line.svg)no-repeat center/contain;
	mask: url(../img/common/deco/line.svg)no-repeat center/contain;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width: 768px) {
	.cont-tit-ja::before {
		width: calc(7 / var(--vw-min) * 100vw);
		height: calc(13 / var(--vw-min) * 100vw);
	}
}
/*-----------------------------------------------
 * secHead
 * 下層セクション見出し（英語ラベル＋日本語＋2本線）
-------------------------------------------------*/
.secHead {
	position: relative;
	height: min(calc(90 / var(--vw-min) * 100vw),90px);
}
.secHead::before,
.secHead::after {
	content: "";
	width: 100%;
	height: min(calc(1 / var(--vw-min) * 100vw),1px);
	display: block;
	position: absolute;
	left: 0;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width: 768px) {
	.secHead::before,
	.secHead::after {
		height: calc(1 / var(--vw-min) * 100vw);
	}
}
.secHead::before {
	top: min(calc(86 / var(--vw-min) * 100vw),86px);
}
.secHead::after {
	top: min(calc(89 / var(--vw-min) * 100vw),89px);
	opacity: .6;
}
.secHead__label {
	font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
	color: var(--color-gold9D8);
	line-height: 1;
	letter-spacing: 0;
	position: absolute;
	top: 0;
	left: 0;
	opacity: .7;
}
.secHead__tit {
	font-size: min(calc(40 / var(--vw-min) * 100vw),40px);
	color: var(--color-gold9D8);
	font-weight: 500;
	line-height: calc(48 / 40);
	letter-spacing: 1.6px;
	position: absolute;
	top: min(calc(26 / var(--vw-min) * 100vw),26px);
	left: 0;
}
@media screen and (max-width:768px){
	.secHead {
		height: calc(64 / var(--vw-min) * 100vw);
	}
	.secHead::before {
		top: calc(60 / var(--vw-min) * 100vw);
	}
	.secHead::after {
		top: calc(63 / var(--vw-min) * 100vw);
	}
	.secHead__label {
		font-size: calc(18 / var(--vw-min) * 100vw);
	}
	.secHead__tit {
		font-size: calc(24 / var(--vw-min) * 100vw);
		line-height: calc(32 / 24);
		letter-spacing: 0.96px;
		top: calc(18 / var(--vw-min) * 100vw);
	}
}
/*-----------------------------------------------
 * pager
-------------------------------------------------*/
.pageNavs {
	position: relative;
	margin-top: min(calc(80 / var(--vw-min) * 100vw),80px);
}
@media screen and (max-width:768px){
	.pageNavs {
		margin-top: calc(48 / var(--vw-min) * 100vw);
	}
}
.pageNav-num {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: min(calc(32 / var(--vw-min) * 100vw),32px);
	pointer-events: none;
	padding: 0 min(calc(160 / var(--vw-min) * 100vw),160px);
}
@media screen and (max-width:768px){
	.pageNav-num {
		gap: calc(20 / var(--vw-min) * 100vw);
		padding: 0 calc(60 / var(--vw-min) * 100vw);
	}
}
.pagerItem {
	height: min(calc(62 / var(--vw-min) * 100vw),62px);
}
@media screen and (max-width:768px){
	.pagerItem {
		height: calc(40 / var(--vw-min) * 100vw);
	}
}
.pagerItemLink {
	font-size: min(calc(25 / var(--vw-min) * 100vw),25px);
	color: var(--color-gold9D8);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.75px;
	text-align: center;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	text-decoration: none;
	pointer-events: auto;
}
@media screen and (max-width:768px){
	.pagerItemLink {
		font-size: calc(18 / var(--vw-min) * 100vw);
		letter-spacing: 0.54px;
	}
}
.pagerItem.is-current .pagerItemLink::after {
	content: "";
	width: min(calc(17 / var(--vw-min) * 100vw),17px);
	height: min(calc(1 / var(--vw-min) * 100vw),1px);
	display: block;
	position: absolute;
	right: 0;
	bottom: min(calc(12 / var(--vw-min) * 100vw),12px);
	left: 0;
	margin: 0 auto;
	background-color: var(--color-gold9D8);
}
@media screen and (max-width:768px){
	.pagerItem.is-current .pagerItemLink::after {
		width: calc(13 / var(--vw-min) * 100vw);
		height: calc(1 / var(--vw-min) * 100vw);
		bottom: calc(2 / var(--vw-min) * 100vw);
	}
}
.pageNavs .pager__arrowWrap {
	width: 100%;
	position: absolute;
	bottom: 0;
}
@media screen and (max-width:768px){
	.pageNavs .pager__arrowWrap {
		right: calc(20 / var(--vw-min) * 100vw);
		left: calc(20 / var(--vw-min) * 100vw);
		width: auto;
	}
}
.pager__arrowWrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	pointer-events: none;
}
.pager__arrow {
	width: min(calc(62 / var(--vw-min) * 100vw),62px);
	height: min(calc(62 / var(--vw-min) * 100vw),62px);
}
@media screen and (max-width:768px){
	.pager__arrow {
		width: calc(40 / var(--vw-min) * 100vw);
		height: calc(40 / var(--vw-min) * 100vw);
	}
}
.pager__arrowLink {
	width: 100%;
	height: 100%;
	position: relative;
	display: block;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
	pointer-events: auto;
}
@media screen and (max-width:768px){
	.pager__arrowLink {
		border-width: calc(1 / var(--vw-min) * 100vw);
	}
}
.pager__arrowLink::before {
	content: "";
	width: min(calc(56 / var(--vw-min) * 100vw),56px);
	height: min(calc(56 / var(--vw-min) * 100vw),56px);
	display: block;
	position: absolute;
	inset: 0;
	margin: auto;
	border-radius: 50%;
	border: min(calc(1 / var(--vw-min) * 100vw),1px) solid var(--op50-gold9D8);
}
@media screen and (max-width:768px){
	.pager__arrowLink::before {
		width: calc(36 / var(--vw-min) * 100vw);
		height: calc(36 / var(--vw-min) * 100vw);
		border-width: calc(1 / var(--vw-min) * 100vw);
	}
}
.pager__arrowLink::after {
	content: "";
	width: min(calc(24 / var(--vw-min) * 100vw),24px);
	height: min(calc(16 / var(--vw-min) * 100vw),16px);
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
	margin: auto;
	-webkit-mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	mask: url(../img/common/deco/arrow.svg)no-repeat center/contain;
	background-color: var(--color-gold9D8);
	pointer-events: none;
}
@media screen and (max-width:768px){
	.pager__arrowLink::after {
		width: calc(16 / var(--vw-min) * 100vw);
		height: calc(11 / var(--vw-min) * 100vw);
	}
}
.pager__arrowLink.--older::after {
	transform: scale(-1,1) translateX(0);
}
.pager__arrow.is-disabled {
	opacity: .4;
}
.pager__arrow.is-disabled .pager__arrowLink {
	pointer-events: none;
	cursor: default;
}
@media (hover: hover) and (pointer: fine){
	.pagerItem:not(.is-current) .pagerItemLink {
		transition: color .45s var(--easing-punch), transform .45s var(--easing-punch);
	}
	.pagerItem:not(.is-current) .pagerItemLink:hover {
		color: #f8efd2;
		transform: scale(1.35) rotate(-10deg);
	}
}
/**
* modalOpen
**/
.js-modalOpen{
	cursor: pointer;
}

/*-----------------------------------------------
 * hover
 * 透過は使わない。移動・回転・拡大で殴る
-------------------------------------------------*/
@keyframes mashle-shake{
	0%{ transform: rotate(0deg) scale(1); }
	20%{ transform: rotate(-22deg) scale(1.45); }
	40%{ transform: rotate(18deg) scale(1.12); }
	60%{ transform: rotate(-16deg) scale(1.38); }
	80%{ transform: rotate(10deg) scale(1.16); }
	100%{ transform: rotate(-8deg) scale(1.3); }
}
@media (hover: hover) and (pointer: fine){
	.headerNav__logoLink,
	.footer__logoLink,
	.officialLink,
	.aniplex__link,
	.news__link,
	.news__tit,
	.news__date{
		transition: color .45s var(--easing-punch), letter-spacing .45s var(--easing-punch), background-color .45s var(--easing-punch), border-color .45s var(--easing-punch), transform .45s var(--easing-punch);
	}
	.headerNav__logoLink,
	.footer__logoLink{
		transform: scale(1) rotate(0deg);
	}
	.headerNav__logoLink:hover{
		transform: scale(1.12) rotate(-8deg);
	}
	.footer__logoLink:hover{
		transform: scale(1.05) rotate(-5deg);
	}
	.header__navBtn__bg{
		transform-origin: top center;
		transition: transform .6s var(--easing-punch), filter .4s var(--easing-outquart);
	}
	.header__navBtn__icon{
		transition: filter .4s var(--easing-outquart);
	}
	.header__navBtn--line{
		transition: top .3s var(--easing-outquart), bottom .3s var(--easing-outquart), transform .45s var(--easing-punch), translate .45s var(--easing-punch), scale .45s var(--easing-punch);
	}
	.header__navBtn__label{
		transition: opacity .3s var(--easing-outquart), filter .4s var(--easing-outquart);
	}
	.header__navBtn:hover .header__navBtn__bg{
		filter: drop-shadow(0 0 min(calc(10 / var(--vw-min) * 100vw),10px) #cbb98a);
		transform: scaleY(1.08);
	}
	.header__navBtn:hover .header__navBtn__icon{
		filter: brightness(1.55) drop-shadow(0 0 min(calc(6 / var(--vw-min) * 100vw),6px) #cbb98a);
	}
	.header__navBtn:hover .header__navBtn__label{
		filter: brightness(1.55) drop-shadow(0 0 min(calc(6 / var(--vw-min) * 100vw),6px) #cbb98a);
	}
	.header__navBtn:not(.is-active):hover .header__navBtn--line:nth-child(1){
		translate: -8% 0;
		scale: .75 1;
	}
	.header__navBtn:not(.is-active):hover .header__navBtn--line:nth-child(2){
		translate: 8% 0;
		scale: .75 1;
	}
	.header__navBtn.is-active:hover .header__navBtn--line:nth-child(1){
		transform: rotate(-34deg);
	}
	.header__navBtn.is-active:hover .header__navBtn--line:nth-child(2){
		transform: rotate(34deg);
	}
	.swiper__arrow,
	.swiper__arrow::before,
	.swiper__arrow::after,
	.pager__arrow:not(.is-disabled) .pager__arrowLink,
	.pager__arrow:not(.is-disabled) .pager__arrowLink::before,
	.pager__arrow:not(.is-disabled) .pager__arrowLink::after{
		transition: background-color .35s var(--easing-outquart), border-color .35s var(--easing-outquart), box-shadow .35s var(--easing-outquart), transform .35s var(--easing-outquart);
	}
	.swiper__arrow.--next::after,
	.pager__arrowLink.--newer::after{
		transform: translateX(0);
	}
	.swiper__arrow:hover,
	.pager__arrow:not(.is-disabled) .pager__arrowLink:hover{
		border-color: #f8efd2;
		box-shadow: 0 0 min(calc(16 / var(--vw-min) * 100vw),16px) min(calc(2 / var(--vw-min) * 100vw),2px) #cbb98a;
	}
	.swiper__arrow:hover::before,
	.pager__arrow:not(.is-disabled) .pager__arrowLink:hover::before{
		border-color: #f8efd2;
	}
	.swiper__arrow.--next:hover::after,
	.pager__arrow:not(.is-disabled) .pager__arrowLink.--newer:hover::after{
		background-color: #f8efd2;
		transform: translateX(min(calc(8 / var(--vw-min) * 100vw),8px));
	}
	.swiper__arrow.--prev:hover::after,
	.pager__arrow:not(.is-disabled) .pager__arrowLink.--older:hover::after{
		background-color: #f8efd2;
		transform: scale(-1,1) translateX(min(calc(8 / var(--vw-min) * 100vw),8px));
	}
	.linkA{
		transition: color .35s var(--easing-outquart), text-shadow .35s var(--easing-outquart);
	}
	.linkA:hover{
		color: #f8efd2;
		text-shadow: 0 0 min(calc(12 / var(--vw-min) * 100vw),12px) #cbb98a;
	}
	.linkA__arrow,
	.linkA__arrow::before,
	.linkA__arrow::after{
		transition: background-color .35s var(--easing-outquart), border-color .35s var(--easing-outquart), box-shadow .35s var(--easing-outquart), transform .35s var(--easing-outquart);
	}
	.linkA__arrow::after{
		transform: translateX(0);
	}
	.linkA:hover .linkA__arrow{
		border-color: #f8efd2;
		box-shadow: 0 0 min(calc(16 / var(--vw-min) * 100vw),16px) min(calc(2 / var(--vw-min) * 100vw),2px) #cbb98a;
	}
	.linkA:hover .linkA__arrow::before{
		border-color: #f8efd2;
	}
	.linkA:hover .linkA__arrow::after{
		background-color: #f8efd2;
		transform: translateX(min(calc(8 / var(--vw-min) * 100vw),8px));
	}
	.officialLink:hover{
		background-color: var(--color-gold9D8);
		animation: mashle-shake .5s var(--easing-punch) both;
	}
	.aniplex__link:hover{
		color: var(--color-gold9D8);
		letter-spacing: 0.14em;
		transform: translateY(-4px) skewX(-10deg);
	}
	.footer__bnr:hover{
		position: relative;
		z-index: 2;
	}
	.footer__bnrLink{
		transition: transform .35s var(--easing-outquart);
		transform: scale(1);
	}
	.footer__bnrLink:hover{
		transform: scale(1.08);
	}
	.news__link:hover{
		transform: translateX(14px);
	}
	.news__link:hover .news__tit{
		color: var(--color-gold9D8);
	}
	.news__link:hover .news__date{
		color: #f8efd2;
		transform: scale(1.18) rotate(-8deg);
	}
}

/*-----------------------------------------------
 * scrani（スクロール演出）
 * set_scrani（mashle.common.js）が .js-scrani を監視し、見えたら .--is-ani を付与（一度だけ）
 * 下から上への動きは使わない。霧・横から・左から描く・ポンッと拡大
-------------------------------------------------*/
.scrani.--fog {
    opacity: 0;
    filter: blur(min(calc(12 / var(--vw-min) * 100vw),12px));
    transition: opacity 1.6s var(--easing-outquart), filter 1.6s var(--easing-outquart);
}
@media screen and (max-width: 768px) {
    .scrani.--fog {
        filter: blur(calc(12 / var(--vw-min) * 100vw));
    }
}
.scrani.--fog.--is-ani {
    opacity: 1;
    filter: blur(0);
}
.scrani.--slide {
    opacity: 0;
    filter: blur(min(calc(8 / var(--vw-min) * 100vw),8px));
    transition: opacity 1.2s var(--easing-outquart), filter 1.2s var(--easing-outquart), transform 1.2s var(--easing-outquart);
    transform: translateX(min(calc(-40 / var(--vw-min) * 100vw),-40px));
}
@media screen and (max-width: 768px) {
    .scrani.--slide {
        filter: blur(calc(8 / var(--vw-min) * 100vw));
        transform: translateX(calc(-40 / var(--vw-min) * 100vw));
    }
}
.scrani.--slide.--is-ani {
    opacity: 1;
    filter: blur(0);
    transform: translateX(0);
}
.scrani.--wipe {
    opacity: 0;
    filter: blur(min(calc(8 / var(--vw-min) * 100vw),8px));
    transform: scaleX(.84);
    transform-origin: left center;
    transition: opacity 1s var(--easing-outquart), filter 1s var(--easing-outquart), transform 1.1s var(--easing-inoutquart);
}
@media screen and (max-width: 768px) {
    .scrani.--wipe {
        filter: blur(calc(8 / var(--vw-min) * 100vw));
    }
}
.scrani.--wipe.--is-ani {
    opacity: 1;
    filter: blur(0);
    transform: scaleX(1);
}
.scrani.--punch {
    opacity: 0;
    transition: opacity .5s var(--easing-outquart), transform .9s var(--easing-punch);
    transform: scale(1.35);
}
.scrani.--punch.--is-ani {
    opacity: 1;
    transform: scale(1);
}
@media (prefers-reduced-motion: reduce) {
    .scrani.--fog,
    .scrani.--slide,
    .scrani.--punch {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
    }
    .scrani.--wipe {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
    }
}

/*-----------------------------------------------
 * pageIn（下層ページの入場演出）
 * .subFullWrap（下層共通）の読み込み時に一度だけ再生する。JS 不要
 * 順番: 背景 → ロゴ → 英字見出し → 日本語見出し → リード → 本文
 * fill-mode は backwards（開始前の状態だけ適用し、終了後は元のスタイルに戻す）
-------------------------------------------------*/
@keyframes mashle-pageIn-bg {
    from {
        opacity: 0;
        filter: blur(min(calc(12 / var(--vw-min) * 100vw),12px));
        transform: scale(1.08);
    }
}
@keyframes mashle-pageIn-logo {
    from {
        opacity: 0;
        transform: scale(.6);
    }
}
@keyframes mashle-pageIn-titEn {
    from {
        clip-path: inset(0 100% 0 0);
        filter: blur(min(calc(8 / var(--vw-min) * 100vw),8px));
    }
    to {
        clip-path: inset(0 0 0 0);
        filter: blur(0);
    }
}
@keyframes mashle-pageIn-titJa {
    from {
        opacity: 0;
        transform: translateX(min(calc(24 / var(--vw-min) * 100vw),24px));
    }
}
@keyframes mashle-pageIn-lead {
    from {
        opacity: 0;
        filter: blur(min(calc(6 / var(--vw-min) * 100vw),6px));
    }
}
@keyframes mashle-pageIn-cont {
    from {
        opacity: 0;
        filter: blur(min(calc(8 / var(--vw-min) * 100vw),8px));
        transform: translateX(min(calc(-40 / var(--vw-min) * 100vw),-40px));
    }
}
.subFullWrap .subSec__bg-clip-in {
    animation: mashle-pageIn-bg 1.6s var(--easing-outquart) backwards;
}
.subFullWrap .subSec__logo {
    animation: mashle-pageIn-logo .9s var(--easing-punch) .3s backwards;
}
.subFullWrap .cont-tit-en {
    animation: mashle-pageIn-titEn 1.1s var(--easing-inoutquart) .3s backwards;
}
.subFullWrap .cont-tit-ja {
    animation: mashle-pageIn-titJa .9s var(--easing-outquart) .6s backwards;
}
.subFullWrap .head-titLead {
    animation: mashle-pageIn-lead 1.2s var(--easing-outquart) .8s backwards;
}
.subFullWrap .subCont {
    animation: mashle-pageIn-cont 1.2s var(--easing-outquart) 1s backwards;
}
@media (prefers-reduced-motion: reduce) {
    .subFullWrap .subSec__bg-clip-in,
    .subFullWrap .subSec__logo,
    .subFullWrap .cont-tit-en,
    .subFullWrap .cont-tit-ja,
    .subFullWrap .head-titLead,
    .subFullWrap .subCont {
        animation: none;
    }
}

/* fadeIn */
@keyframes mashle-fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.is-fadeIn {
	animation: mashle-fadeIn .8s var(--easing-outquart) both;
}
@media (prefers-reduced-motion: reduce) {
	.is-fadeIn {
		animation: none;
	}
}