@charset "utf-8";
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}
/* common  */
:root{
	/* font */
	--font-whisper:'Whisper', cursive;

	/* color */
	--main-color-pink: #ff007d;
	--main-color-pink-rgb: 255, 0, 125;

	/* SP-SIZE */
	--sp-size-2: min(0.2667vw, 2px);
	--sp-size-4: min(0.5334vw, 4px);
	--sp-size-6: min(0.8vw, 6px);
	--sp-size-8: min(1.0667vw, 8px);
	--sp-size-10: min(1.3334vw, 10px);
	--sp-size-12: min(1.6vw, 12px);
	--sp-size-16: min(2.1334vw, 16px);
	--sp-size-20: min(2.6667vw, 20px);
	--sp-size-24: min(3.2vw, 24px);
	--sp-size-26: min(3.4667vw, 26px);
	--sp-size-28: min(3.7334vw, 28px);
	--sp-size-30: min(4vw, 30px);
	--sp-size-32: min(4.2667vw, 32px);
	--sp-size-36: min(4.8vw, 36px);
	--sp-size-40: min(5.3334vw, 40px);
	--sp-size-48: min(6.4vw, 48px);
	--sp-size-56: min(7.4667vw, 56px);
	--sp-size-64: min(8.5334vw, 64px);
	--sp-size-72: min(9.6vw, 72px);
	--sp-size-80: min(10.6667vw, 80px);
	--sp-size-96: min(12.8vw, 96px);
	--sp-size-192: min(25.6vw, 192px);
}
body{
	-webkit-text-size-adjust:100%;
	background-color:#fff;
	color:#000;
	font-family:'Noto Serif JP',serif;
	font-feature-settings:"palt";
	font-size:16px;
	font-weight:400;
	letter-spacing:0.05em;
	line-height:2;
	word-wrap:break-word;
}
a{color:#000}
a:hover{text-decoration:none}
.ah{transition:opacity .3s ease}
.ah:hover{opacity:.7}
::selection{
	background:#ff007d;
	color:#fff;
}
::-moz-selection{
	background:#ff007d;
	color:#fff;
}
@media screen and (max-width:768px){
	html{
		font-size:62.5%;
	}
	body{
		font-size:10px;
		font-size:1rem;
		min-width:320px;
	}
	.pc{display:none}
	.ah:hover{opacity:1}
}
@media screen and (min-width:769px){
	body{
		scrollbar-gutter:stable;
	}
	.sp{display:none}
	#fullWrap{width: 100%;min-width: 1200px;}
	::-webkit-scrollbar{
		width:8px;
		height:8px;
	}
	::-webkit-scrollbar-track{
		background-color:#fff;
	}
	::-webkit-scrollbar-thumb{
		background-color:#ff007d;
		border-radius:4px
	}
}
@keyframes scroller{
	0%{
		top:0;
		height:0;
	}
	33%{
		top:0;
		height:100%;
	}
	66%,100%{
		top:100%;
		height:0;
	}
}
@keyframes bg-gradient{
	0%{
		background-position:0 0;
	}
	100%{
		background-position:300% 300%
	}
}
.font-eb{
	font-family:'EB Garamond',serif;
	font-weight:500;
}
.contentsWrap{
	min-width:1200px;
	display:flex;
}
@media screen and (max-width:768px){
	.contentsWrap{
		min-width:unset;
		width:100%;
		display:block;
	}
}
.header{
	width:320px;
	position:relative;
	z-index:5000;
	box-shadow:0px 0px 80px 0px rgba(0,0,0,0.1);
}
@media screen and (max-width:768px){
	.header{
		position:fixed;
		left:0;
		top:0;
		width:100%;
		height:100%;
		z-index:9999;
		pointer-events:none;
		overflow:hidden;
		box-shadow:unset;
	}
}
.header__menuBtn{
	display:none;
}
@media screen and (max-width:768px){
	.header__menuBtn{
		display:block;
		position:fixed;
		right:3.2vw;
		top:3.2vw;
		z-index:12000;
		pointer-events:auto;
	}
	.header__menuBtn a{
		display:flex;
		height:12.8vw;
		width:12.8vw;
		padding-top:4vw;
		background:#ff007d url(../img/common/menu_frame.png) no-repeat center center / 10.6666vw 10.6666vw;
		color:#FFF;
		text-decoration:none;
		justify-content:center;
		align-items:center;
		font-size:2.1333vw;
		letter-spacing:0;
		transition:all 0.3s ease;
	}
	.header__menuBtn a.active{
		background-color:#00bccb;
	}
	.header__menuBtn a:before,
	.header__menuBtn a:after{
		content:'';
		position:absolute;
		left:3.2vw;
		right:3.2vw;
		height:1px;
		background:#FFF;
		top:4.6666vw;
		transition:all 0.3s ease;
	}
	.header__menuBtn a:before{
		transform:translateY(-1vw);
	}
	.header__menuBtn a:after{
		transform:translateY(1vw);
	}
	.header__menuBtn a.active:before{
		transform:rotate(15deg);
	}
	.header__menuBtn a.active:after{
		transform:rotate(-15deg)
	}
}
.header__inner{
	min-height:100vh;
	position:sticky;
	left:0;
	top:0;
	padding:29.6296% 0 56px;
	display:flex;
	justify-content:center;
	align-items:center;
}
@media screen and (max-width:768px){
	.header__inner{
		min-height:100vh;
		position:absolute;
		width:100%;
		padding: 0;
		display:block;
		background:#FFF;
		pointer-events:auto;
		transform:translateX(100%);
		transition:all 0.3s ease;
		overflow: auto;
		overscroll-behavior: contain;
		bottom:0;
	}
	.header__inner.active{
		transform:translateX(0);
	}
}
.header__inner:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	-webkit-mask:url(../img/common/l_ptn.png) repeat center center / 160px 160px;
	mask:url(../img/common/l_ptn.png) repeat center center / 160px 160px;
	background:linear-gradient(135deg,#ff007d 0%,#a800ff 25%,#00bccb 50%,#a800ff 75%,#ff007d 100%);
	background-size:200% 200%;
	background-position:left top;
	opacity:0.08;
	animation:bg-gradient 20s ease infinite;
}
@media screen and (max-width:768px){
	.header__inner:before{
		content: unset;
	}
	.header__inner:after {
		content:'';
		position: absolute;
		left:0;
		top:0;
		width:100%;
		height:calc(100% + 1px);
	}
	.header__innerIn{
		position: relative;
		z-index: 2;
		padding:12.8vw 0;
	}
	.header__innerIn:before{
		content:'';
		position:absolute;
		left:0;
		top:0;
		right:0;
		bottom:0;
		-webkit-mask:url(../img/common/l_ptn.png) repeat center center;
		mask:url(../img/common/l_ptn.png) repeat center center;
		-webkit-mask-size:42.6666vw 42.6666vw;
		mask-size:42.6666vw 42.6666vw;
		background:linear-gradient(135deg,#ff007d 0%,#a800ff 25%,#00bccb 50%,#a800ff 75%,#ff007d 100%);
		background-size:200% 200%;
		background-position:left top;
		opacity:0.08;
		animation:bg-gradient 20s ease infinite;
	}
}
.header__t{
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:8px;
	pointer-events:none;
}
.header__t:before{
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:0;
	height:4px;
	background:#330019;
}
.header__t:after{
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:6px;
	height:2px;
	background:#330019;
}
.header__logo{
	position:absolute;
	left:24px;
	top:32px;
	width:351px;
	padding-top:104px;
	transition:all 0.6s ease;
}
.header__logo.thin{
	width:270px;
	padding-top:80px;
}
@media screen and (max-width:768px){
	.header__logo{
		position:relative;
		left:unset;
		top:unset;
		width:61.6vw;
		padding-top:18.4vw;
		margin:0 auto 17.0666vw;
	}
	.header__logo.thin{
		width:61.6vw;
		padding-top:18.4vw;
	}
}
.header__logo a{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	background:url(../img/common/logo.svg) no-repeat left top / contain;
	display:block;
	height:100%;
	filter:drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF);
	will-change:filter;
}
.header__nav{
	padding:40px 0;
	position:relative;
	min-width:200px;
}
.header__nav:before,
.header__nav:after{
	content:'';
	position:absolute;
	left:0;
	right:0;
	height:40px;
	-webkit-mask:url(../img/common/m_deco.svg) no-repeat center center / contain;
	mask:url(../img/common/m_deco.svg) no-repeat center center / contain;
	background:#c7a663;
}
.header__nav:before{
	top:0;
}
.header__nav:after{
	bottom:0;
	transform:rotate(180deg);
}
@media screen and (max-width:768px){
	.header__nav{
		padding:10.6666vw 0;
		min-width:53.3333vw;
	}
	.header__nav:before,
	.header__nav:after{
		height:10.6666vw;
	}
}
.nav__lists{
	padding:12px 0;
	font-weight:500;
}
@media screen and (max-width:768px){
	.nav__lists{
		padding:3.2vw 0;
	}
}
.nav__lists li{
	height:40px;
}
.nav__lists li.nav-mt{
	margin-top:20px;
}
.nav__lists li a{
	height:40px;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	font-size:20px;
	position:relative;
	text-decoration:none;
}
.nav__lists li a:before{
	content:'';
	position:relative;
	width:20px;
	height:20px;
	margin-right:12px;
	background:url(../img/common/icon_butterfly.svg) no-repeat center center / contain;
	opacity:0;
	transition:all 0.3s ease;
}
.nav__lists li a:hover:before,
.nav__lists li a.active:before{
	opacity:1;
}
.nav__lists li a:after{
	content:'';
	position:relative;
	width:20px;
	height:20px;
	margin-left:12px;
}
.nav__lists li a span{
	height:40px;
	display:flex;
	justify-content:center;
	align-items:center;
	line-height:1;
	z-index:10;
	transition:all 0.3s ease;
}
.nav__lists li a:hover span,
.nav__lists li a.active span{
	color:#ff007d;
}
.nav__lists li a span:before{
	content:'';
	position:absolute;
	z-index:-1;
	width:140px;
	height:12px;
	bottom:7px;
	left:50%;
	margin-left:-70px;
	background:url(../img/common/l_deco.svg) no-repeat center center / contain;
	opacity:0;
	transition:all 0.3s ease;
}
.nav__lists li a:hover span:before,
.nav__lists li a.active span:before{
	opacity:1;
}
@media screen and (max-width:768px){
	.nav__lists li{
		height:10.6666vw;
	}
	.nav__lists li.nav-mt{
		margin-top:5.3333vw;
	}
	.nav__lists li a{
		height:10.6666vw;
		font-size:5.3333vw;
	}
	.nav__lists li a:before{
		width:5.3333vw;
		height:5.3333vw;
		margin-right:3.2vw;
	}
	.nav__lists li a:after{
		width:5.3333vw;
		height:5.3333vw;
		margin-left:3.2vw;
	}
	.nav__lists li a span{
		height:10.6666vw;
	}
}
.header__b{
	position:absolute;
	bottom:0;
	left:0;
	right:0;
}
.header__b:before,
.header__b:after{
	content:'';
	position:absolute;
	bottom:2px;
	width:55px;
	height:55px;
	background:#330019;
	-webkit-mask:url(../img/common/d_corner.svg) no-repeat center center / contain;
	mask:url(../img/common/d_corner.svg) no-repeat center center / contain;
}
.header__b:before{
	left:2px;
}
.header__b:after{
	right:2px;
	transform:rotate(-90deg);
}
@media screen and (max-width:768px){
	.header__b:before,
	.header__b:after{
		bottom:0.5vw;
		width:14.6666vw;
		height:14.6666vw;
	}
	.header__b:before{
		left:0.5vw;
	}
	.header__b:after{
		right:0.5vw;
	}
}
.sectionWrap{
	flex:1;
	width:calc(100% - 26.6666%);
	position:relative;
}
@media screen and (max-width:768px){
	.sectionWrap{
		width:100%;
	}
}
.section__fixed{
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
}
.section__fixedBg{
	position:sticky;
	left:0;
	top:0;
	width:100%;
	height:100vh;
}
.section__fixedBg:before{
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background:linear-gradient(135deg,#ff007d 0%,#ffffff 12%,#ffffff 38%,#00bccb 50%,#ffffff 63%,#ffffff 87%,#ff007d 100%);
	background-size:200% 200%;
	opacity:0.16;
}
.section__fixedBg:after{
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:url(../img/common/r_ptn.png) repeat left top / 600px 600px;
	opacity:0.6;
}
@media screen and (max-width:768px){
	.section__fixedBg:after{
		background-size:320px 320px;
	}
}
.section__title{
	display:flex;
	padding-right:80px;
	justify-content:space-between;
	margin-bottom:80px;
}
@media screen and (max-width:768px){
	.section__title{
		padding-right:6.4vw;
		margin-bottom:12.8vw;
	}
}
.section__title-en{
	font-size:120px;
	line-height:0.66;
	padding-bottom:8px;
	font-weight:400;
	letter-spacing:0;
	color:#FFF;
	mix-blend-mode:difference;
	z-index:60;
}
.section__title-en span{
	color:#00fb80; /*opposite color*/
}
@media screen and (max-width:768px){
	.section__title-en{
		font-size:14.4vw;
		padding-bottom:1vw;
	}
}
.section__title-ja{
	height:36px;
	line-height:1.7;
	font-size:20px;
	padding:0 16px;
	border-top:1px solid #000;
	border-bottom:1px solid #000;
	margin-top:27px;
}
@media screen and (max-width:768px){
	.section__title-ja{
		height:6.4vw;
		font-size:3.2vw;
		padding:0 2.8vw;
		margin-top:1.6vw;
	}
}
.section__subTitle{
	display:flex;
	justify-content:space-between;
	align-items:center;
	height:40px;
	border-bottom:2px solid #000;
	margin-bottom:40px;
}
.section__subTitle-en{
	font-size:54px;
	line-height:0.66;
	padding-top:3px;
}
.section__subTitle-ja{
	height:24px;
	line-height:1.5;
	padding-left:30px;
	background:url(../img/common/icon_arrow.svg) no-repeat left center / contain;
}
@media screen and (max-width:768px){
	.section__subTitle{
		height:6.4vw;
		border-bottom:1px solid #000;
		margin-bottom:6.4vw;
	}
	.section__subTitle-en{
		font-size:9.0666vw;
		padding-top:0px;
		margin-top:0px;
	}
	.section__subTitle-ja{
		height:4.2666vw;
		font-size:3.2vw;
		line-height:1.1;
		padding-left:4.2666vw;
	}
}
.section__content{
	padding:0 80px;
}
@media screen and (max-width:768px){
	.section__content{
		padding:0 6.4vw;
	}
}
.news{
	padding:80px 0;
	position:relative;
}
@media screen and (max-width:768px){
	.news{
		padding:12.8vw 0;
	}
}
.article__lists{
	border-top:1px solid #CCC;
	position:relative;
	margin-bottom:40px;
}
@media screen and (max-width:768px){
	.article__lists{
		margin-bottom:9.6vw;
	}
}
.article__lists:before{
	content:'';
	position:absolute;
	left:0;
	top:-4px;
	width:7px;
	height:7px;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	pointer-events:none;
}
.article__lists:after{
	content:'';
	position:absolute;
	right:0;
	top:-4px;
	width:7px;
	height:7px;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	pointer-events:none;
}
.article__lists li{
	position:relative;
}
.article__lists li:before{
	content:'';
	position:absolute;
	left:0;
	bottom:-3px;
	width:7px;
	height:7px;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	pointer-events:none;
	z-index:50;
}
.article__lists li:after{
	content:'';
	position:absolute;
	right:0;
	bottom:-3px;
	width:7px;
	height:7px;
	background:url(../img/common/dia.svg) no-repeat center center / contain;
	pointer-events:none;
	z-index:50;
}
.article__lists li a{
	display:block;
	padding:24px 0;
	text-decoration:none;
	border-bottom:1px solid #ccc;
	position:relative;
	transition:all 0.3s ease;
}
.article__lists li a:hover{
	color:#ff007d;
}
.article__lists li a:before{
	content:'';
	position:absolute;
	bottom:-1px;
	left:0;
	width:0;
	height:1px;
	background:#ff007d;
	transition:all 0.3s ease;
}
.article__lists li a:hover:before{
	width:100%;
}
@media screen and (max-width:768px){
	.article__lists li a{
		padding:3.2vw 0;
	}
}
.article__lists.single li a{
	pointer-events:none;
}
.article__lists li a.open,
.article__lists.single li a{
	border-bottom-color:#eee
}
.article__listsTime{
	color:#c5a362;
}
@media screen and (max-width:768px){
	.article__listsTime{
		font-size:3.2vw;
	}
}
.article__listsTitle{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:1;
	overflow:hidden;
}
@media screen and (max-width:768px){
	.article__listsTitle{
		-webkit-line-clamp:2;
		font-size:3.2vw;
	}
}
.article__listsFullTitle{
	font-size:16px;
	padding-right:80px;
}
.article__lists.single .article__listsFullTitle{
	padding-right:0;
}
@media screen and (max-width:768px){
	.article__listsFullTitle{
		font-size:3.2vw;
		padding-right:9.6vw;
	}
}
.article__lists li a.open .article__listsFullTitle,
.article__lists.single .article__listsFullTitle{
	color:#ff007d;
}
.article__lists li a.open:before,
.article__lists.single li a:before{
	width:0;
}
.genbtn{
	width:240px;
	height:48px;
	margin:0 auto;
}
.staff__commentBtn.genbtn {
	margin-left:10px;
	display: inline-block;
	width:140px;
	height:24px;
	vertical-align: text-top;
}
@media screen and (max-width:768px){
	.genbtn{
		width:61.6vw;
		height:9.6vw;
	}
	.staff__commentBtn.genbtn {
		margin-left:0;
		width:27vw;
		height:5.5vw;
	}
}
.genbtn a{
	display:flex;
	height:48px;
	width:100%;
	justify-content:center;
	align-items:center;
	font-size:16px;
	color:#FFF;
	background:#c9aa6c;
	text-decoration:none;
	position:relative;
	transition:all 0.3s ease;
}
.staff__commentBtn.genbtn a{
	height:28px;
}
.genbtn a:hover{
	background:#ff007d;
}
.genbtn a:before{
	content:'';
	position:absolute;
	left:4px;
	right:4px;
	top:4px;
	bottom:4px;
	background:url(../img/common/genbtn_frame.png) no-repeat center center / contain;
}
.staff__commentBtn.genbtn a:before{
	left:2px;
	right:2px;
	top:2px;
	bottom:2px;
}
@media screen and (max-width:768px){
	.genbtn a{
		height:9.6vw;
		font-size:3.2vw;
	}
	.staff__commentBtn.genbtn a{
		height:5.5vw;
	}
	.genbtn a:before{
		content:'';
		position:absolute;
		left:3px;
		right:3px;
		top:3px;
		bottom:3px;
		background:url(../img/common/genbtn_frame-s.png) no-repeat center center / contain;
	}
	.staff__commentBtn.genbtn a:before{
		left:2px;
		right:2px;
		top:2px;
		bottom:2px;
		background:url(../img/common/genbtn_frame.png) no-repeat center center / contain;
	}
}
.genbtn-twicon{
	display:block;
	width:18px;
	height:14px;
	background:#FFF;
	-webkit-mask:url(../img/common/sns_tw.svg) no-repeat center center / contain;
	mask:url(../img/common/sns_tw.svg) no-repeat center center / contain;
	margin-left:10px;
	vertical-align:middle;
}
@media screen and (max-width:768px){
	.genbtn-twicon{
		display:block;
		width:3vw;
		height:2.6vw;
		margin-left:2vw;
	}
}
.footer{
	position:relative;
	background:#330019;
	padding:40px;
	min-height:300px;
}
.footer:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:url(../img/common/r_ptn.png) repeat fixed left top / 600px 600px;
	opacity:0.08;
}
@media screen and (max-width:768px){
	.footer{
		padding:14.1vw 3.2vw 9.6vw;
		min-height:300px;
	}
	.footer:before{
		background-size:320px 320px;
	}
}
.footer__share{
	display:flex;
	margin-bottom:40px;
}
.footer__share dt{
	width:78px;
	height:48px;
	display:flex;
	align-items:center;
	font-size:16px;
	color:#FFF;
}
.footer__share dd{
	width:48px;
	height:48px;
	margin-right:10px;
	transition:all 0.3s ease
}
.footer__share dd a{
	display:block;
	height:48px;
	position:relative;
}
.footer__share dd a:before{
	content:'';
	position:absolute;
	left:50%;
	top:50%;
	width:32px;
	height:32px;
	margin-left:-16px;
	margin-top:-16px;
	box-sizing:border-box;
	border:1px solid #FFF;
	transform:rotate(45deg);
}
.footer__share dd a:after{
	content:'';
	position:absolute;
	left:50%;
	top:50%;
	width:28px;
	height:28px;
	margin-left:-14px;
	margin-top:-14px;
	background:#FFF;
	transform:rotate(45deg);
}
.footer__share dd a span{
	display:block;
	height:48px;
	width:20px;
	margin:0 auto;
	background:#000;
	position:relative;
	z-index:300;
}
.footer__share dd a.shareList__twitter span{
	width: 16px;
}
.shareList__twitter span{
	-webkit-mask:url(../img/common/sns_tw.svg) no-repeat center center / contain;
	mask:url(../img/common/sns_tw.svg) no-repeat center center / contain;
}
.shareList__facebook span{
	-webkit-mask:url(../img/common/sns_fb.svg) no-repeat center center / contain;
	mask:url(../img/common/sns_fb.svg) no-repeat center center / contain;
}
.shareList__line span{
	-webkit-mask:url(../img/common/sns_line.svg) no-repeat center center / contain;
	mask:url(../img/common/sns_line.svg) no-repeat center center / contain;
}
.footer__share dd:hover{
	transform:translateY(-5px);
}
@media screen and (max-width:768px){
	.footer__share{
		display:flex;
		margin-bottom:14.4vw;
		width:100%;
		justify-content:center;
	}
	.footer__share:after{
		content:'';
		width:12.2666vw;
		display:block;
	}
	.footer__share dt{
		width:12.2666vw;
		height:9.8666vw;
		font-size:3.2vw;
	}
	.footer__share dd{
		width:9.8666vw;
		height:9.8666vw;
		margin:0 1.2vw;
	}
	.footer__share dd a{
		height:9.8666vw;
	}
	.footer__share dd a:before{
		width:6.9vw;
		height:6.9vw;
		margin-left:-3.45vw;
		margin-top:-3.45vw;
	}
	.footer__share dd a:after{
		width:calc(6.9vw - 4px);
		height:calc(6.9vw - 4px);
		margin-left:calc(-3.45vw + 2px);
		margin-top:calc(-3.45vw + 2px);
	}
	.footer__share dd a span{
		display:block;
		height:9.8666vw;
		width:4vw;
	}
	.footer__share dd a.shareList__twitter span{
		width: 3.2vw;
	}
}
.footer__banner{
	display:flex;
	justify-content:center;
	position:relative;
	flex-wrap:wrap;
}
.footer__banner li{
	width:242px;
	margin:0 12px 24px;
}
@media screen and (max-width:768px){
	.footer__banner li{
		width:40.4vw;
		margin:0 3.2vw 6.4vw;
	}
}
.footer__banner a{
	display:block;
	transition:all 0.3s ease;
}
.footer__banner a:hover{
	opacity:0.7;
}
.footer__banner li img{
	display:block;
	width:100%;
	height:auto;
}
.footer__bottom{
	display:flex;
	position:relative;
	justify-content:center;
	padding-bottom:24px;
	padding-top:40px;
}
@media screen and (max-width:768px){
	.footer__bottom{
		padding-bottom:3.2vw;
		padding-top:6.4vw;
		display:block;
	}
}
.footer__policy{
	position:absolute;
	left:0;
	top:40px;
	line-height:1;
	font-size:12px;
}
.footer__policy a{
	text-decoration:none;
	color:#FFF;
}
.footer__policy a:hover{
	text-decoration:underline;
}
@media screen and (max-width:768px){
	.footer__policy{
		position:relative;
		left:unset;
		top:unset;
		line-height:1;
		font-size:3.2vw;
		text-align:center;
		margin-bottom:6.4vw;
	}
}
.footer__copyright{
	font-size:12px;
	line-height:1;
	color:#FFF;
}
@media screen and (max-width:768px){
	.footer__copyright{
		font-size:2.6666vw;
		text-align:center;
	}
}
.footer__controller{
	right:0;
	top:0;
	position:absolute;
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:center;
	padding-top:40px;
	width:80px;
	color:#FFF;
}
@media screen and (max-width:768px){
	.footer__controller{
		right:6.4vw;
		top:6.4vw;
		flex-direction:row-reverse;
		justify-content:flex-end;
		align-items:center;
		padding-top:0;
		width:6.4vw;
		color:#FFF;
	}
}
.footer__scroll{
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:center;
	text-decoration:none;
	font-weight:500;
	color:#FFF;
}
@media screen and (max-width:768px){
	.footer__scroll{
		display:flex;
		flex-direction:row-reverse;
		justify-content:flex-end;
		align-items:center;
	}
}
.footer__scrollText{
	writing-mode:vertical-rl;
	margin-top:18px;
}
@media screen and (max-width:768px){
	.footer__scrollText{
		writing-mode:vertical-rl;
		margin-top:0;
		width:calc(6.4vw - 1px);
		line-height:calc(6.4vw - 1px);
		font-size:3vw;
	}
}
.footer__scrollLine{
	position:relative;
	width:7px;
	height:160px;
}
@media screen and (max-width:768px){
	.footer__scrollLine{
		height:25.6vw;
	}
}
.footer__scrollLine:before{
	content:'';
	position:absolute;
	left:0;
	width:7px;
	height:7px;
	top:0;
	-webkit-mask:url(../img/common/dia.svg) no-repeat center center / contain;
	mask:url(../img/common/dia.svg) no-repeat center center / contain;
	transform:rotate(90deg);
	z-index:10;
	background:#FFF;
}
.footer__scrollLine:after{
	content:'';
	position:absolute;
	left:0;
	width:7px;
	height:7px;
	bottom:0;
	-webkit-mask:url(../img/common/dia.svg) no-repeat center center / contain;
	mask:url(../img/common/dia.svg) no-repeat center center / contain;
	transform:rotate(90deg);
	z-index:10;
	background:#FFF;
}
.footer__scrollLineBg{
	width:1px;
	height:160px;
	background:#FFF;
	margin:0 auto;
	position:relative;
}
@media screen and (max-width:768px){
	.footer__scrollLineBg{
		height:25.6vw;
	}
}
.footer__scrollLineBg:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:1px;
	height:0;
	background:#ff007d;
	animation:scroller 2s ease reverse infinite;
}
.ef{
	transform:translate3d(0,50px,0);
	transition:all 0.7s ease;
	opacity:0;
}
.efs{
	opacity:1;
	transform:translate3d(0,0,0);
}
.modal{
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:22000;
	background:rgba(255,255,255,.9);
	-webkit-backdrop-filter:blur(8px);
	backdrop-filter:blur(8px);
	display:none;
	pointer-events: auto;
}
.modal__inner{
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	overflow:auto;
	overscroll-behavior:none;
	overscroll-behavior-y: contain;
}
.modal__cont{
	padding:80px;
	min-height:100vh;
	display:flex;
	justify-content:center;
	align-items:center;
}
@media screen and (max-width:768px){
	.modal__cont{
		width: 100%;
		padding: 0;
		margin:18.8vw 0;
		min-height: 100vh;
		display: block;
	}
}
.modal__movie{
	width:640px;
	height:360px;
}
.modal__movie iframe{
	width:100%;
	height:100%;
	display:block;
}
.modal__close{
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:120px;
}
.modal__close a{
	display:flex;
	align-items:flex-end;
	justify-content:center;
	position:relative;
	width:80px;
	height:120px;
	padding-top:80px;
	overflow:hidden;
	background:url(../img/common/close.svg) no-repeat center top / contain;
	font-size:16px;
	text-decoration:none;
}
@media screen and (max-width:768px){
	.modal__moviecont{
		width: 100%;
		min-height: calc(100vh - 37.6vw);
		margin: 18.8vw auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.modal__close{
		width:12.8vw;
		height:19.2vw;
	}
	.modal__close a{
		width:12.8vw;
		height:19.2vw;
		font-size:2.666vw;
	}
}
.comment__cont{
	max-width:960px;
	min-width:570px;
}
@media screen and (max-width:768px){
	.comment__cont{
		min-width: unset;
		min-height: calc(100vh - 37.6vw);
		max-width:87.2vw;
		margin: 18.8vw auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}
.comment__name{
	font-size:32px;
	line-height:1;
	padding-bottom:24px;
	position:relative;
	font-weight:700;
}
.comment__name span{
	font-size:16px;
	color:#00bccb;
	margin-right:24px;
}
.character__name{
	font-size:32px;
	color:#00bccb;
	line-height:1;
	padding-bottom:24px;
	position:relative;
	font-weight:700;
}
.character__voice{
	font-size:20px;
	margin-bottom:16px;
	line-height:1;
}
.character__voice span{
	font-size:16px;
	display:inline-block;
	margin-right:16px;
	color:#00bccb;
}
@media screen and (max-width:768px){
	.comment__name{
		font-size:4.6vw;
		padding-bottom:4.6vw;
	}
	.comment__name:after{
		width:3.2vw;
	}
	.comment__name span{
		font-size:3.2vw;
		margin-right:3.2vw;
	}
	.character__name{
		font-size:4.6vw;
		padding-bottom:4.8vw;
	}
	.character__voice{
		font-size:3.2vw;
		margin-bottom:3.2vw;
		line-height:1;
	}
	.character__voice span{
		font-size:2.8vw;
		margin-right:2.8vw;
	}
}
.comment__texts{
	padding-top:24px;
	display: flex;
}
@media screen and (max-width:768px){
	.comment__texts{
		display: block;
	}
}
.comment__img {
	width:240px;
	margin-right:40px;
}
.comment__img img {
	display: block;
	width:100%;
	height:auto;
}
@media screen and (max-width:768px){
	.comment__img {
		width:86%;
		margin:0 auto 8vw;
	}
}
.comment__texts p{
	font-size:16px;
	line-height:2;
	margin-bottom:1.5em;
	flex:1;
}
@media screen and (max-width:768px){
	.comment__texts{
		padding-top:4.2vw;
	}
	.comment__texts p{
		font-size:3.2vw;
	}
}
.comment__texts img{
	max-width:100%;
	height:auto;
}

.loading{
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:20000;
	background:#FFF;
}
.loading:before{
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background:linear-gradient(135deg,#ff007d 0%,#ffffff 12%,#ffffff 38%,#00bccb 50%,#ffffff 63%,#ffffff 87%,#ff007d 100%);
	background-size:200% 200%;
	opacity:0.16;
}
.loading:after{
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:url(../img/common/r_ptn.png) repeat left top / 600px 600px;
	opacity:0.6;
}
@media screen and (max-width:768px){
	.loading:after{
		background-size:320px 320px;
	}
}
.loading__logo{
	width:540px;
	height:160px;
	position:relative;
	z-index:5000;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-270px;
	margin-top:-80px;
	background:url(../img/common/logo.svg) no-repeat center center / contain;
	opacity:0;
	transition:all 1s linear;
}
@media screen and (max-width:768px){
	.loading__logo{
		width:72vw;
		height:21.3333vw;
		margin-left:-36vw;
		margin-top:-10.6666vw;
	}
}
.loading.load .loading__logo{
	opacity:1;
}
.loading.fadeOut .loading__logo{
	filter:blur(32px);
	transition: filter 1s linear;
	will-change: filter;
}
.wp-pagenavi{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	padding:40px 0;
}
@media screen and (max-width:768px){
	.wp-pagenavi{
		padding:6.4vw 0;
	}
}
.wp-pagenavi a,
.wp-pagenavi span{
	display:flex;
	justify-content:center;
	align-items:center;
	position:relative;
	margin:0 12px 18px;
	text-decoration:none;
	width:48px;
	height:48px;
	color:#FFF;
	transition:all 0.3s ease;
}
@media screen and (max-width:768px){
	.wp-pagenavi a,
	.wp-pagenavi span{
		margin:0 1.6vw 4.4vw;
		width:9.6vw;
		height:9.6vw;
		font-size:3.2vw;
	}
}
.wp-pagenavi a:before,
.wp-pagenavi span:before{
	content:'';
	position:absolute;
	left:4px;
	top:4px;
	right:4px;
	bottom:4px;
	background:url(../img/common/menu_frame.png) no-repeat center center / contain;
}
@media screen and (max-width:768px){
	.wp-pagenavi a:before,
	.wp-pagenavi span:before{
		left:2px;
		top:2px;
		right:2px;
		bottom:2px;
	}
}
.wp-pagenavi a{
	background:#c9aa6c;
}
.wp-pagenavi span,
.wp-pagenavi a:hover{
	background:#ff007d;
}
.article__content{
	padding:30px 0 80px;
	line-height:2;
	font-size:16px;
	border-bottom:1px solid #ccc;
	display:none;
}
.article__lists.single .article__content{
	display:block;
}
.article__content *{
	word-break:break-all;
}
.aligncenter{
	display:block;
	margin:0 auto;
}
.alignright{float:right}
.alignleft{float:left}
.article__content img{
	max-width:100%;
	height:auto;
	display:block;
	margin-top: 1.5em;
	margin-bottom:1.5em;
}
.article__content iframe{
	max-width:100%;
}
.article__content iframe[src*="youtu"]{
	width:800px;
	height:450px;
	display:block;
	margin:2rem 0;
}
.article__content p{
	margin-bottom:0;
}
.article__content a{
	color: #ff007d;
	transition: .3s ease;
}
.article__lists li .article__content a{
	color: #ff007d;
	display: inline;
	padding: unset;
	pointer-events: auto;
	border-bottom: unset;
}
.article__lists li .article__content a:before{
	content: unset;
}
.article__content a:hover,
.article__lists li .article__content a:hover{
	opacity: 0.6;
}

@media screen and (max-width:768px){
	.article__content{
		padding:6vw 0 12.8vw;
		font-size:3.2vw;
	}
	.article__content iframe[src*="youtu"]{
		width:100%;
		height:49.078125vw;
		aspect-ratio:16 / 9;
	}
}
.article__openIcon{
	width:40px;
	position:absolute;
	height:40px;
	background:#000;
	border-radius:50%;
	right:0;
	top:50%;
	margin-top:-20px;
	transition:all 0.3s ease;
}
.article__openIcon:before,
.article__openIcon:after{
	content:'';
	position:absolute;
	width:16px;
	height:2px;
	background:#FFF;
	margin-top:-1px;
	margin-left:-8px;
	left:50%;
	top:50%;
	transition:all 0.3s ease;
}
@media screen and (max-width:768px){
	.article__openIcon{
		width:6.4vw;
		height:6.4vw;
		margin-top:-3.2vw;
	}
	.article__openIcon:before,
	.article__openIcon:after{
		width:3.2vw;
		margin-left:-1.6vw;
	}
}
.article__openIcon:after{
	transform:rotate(90deg);
}
.article__lists li a.open .article__openIcon,
.article__lists li a:hover .article__openIcon{
	background:#ff007d;
}
.article__lists li a.open .article__openIcon:before{
	transform:rotate(180deg);
}
.article__lists li a.open .article__openIcon:after{
	transform:rotate(0);
}
.subHeader{
	display:none;
}
@media screen and (max-width:768px){
	.subHeader{
		padding:3.2vw 3.2vw 0;
		display:block;
	}
	.subHeader__logo{
		width:43.6vw;
	}
	.subHeader__logo a{
		display:block;
		height:13.4vw;
		background:url(../img/common/logo.svg) no-repeat center center / contain;
		filter:drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF) drop-shadow(0px 0px 4px #FFF);
		will-change:filter;
	}
}