@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;}
/*-----------------------------------------------
 * Bace
 * Modal
 * Header
 * Footer
 * Parts
 * Sub common
-------------------------------------------------*/
:root {
	--color-main: 255,0,86;
	--color-charaall: 255,255,255;
	--color-night: 255,74,74;
	--color-nanairo: 41,184,255;
	--color-sin: 255,255,74;
	--color-djun: 184,41,255;
	--color-sat: 204,204,204;
}
@keyframes rotation {
    0%  { transform: rotate(0); }
    100%{ transform: rotate(360deg); }
}
@keyframes rotationReverse {
    0%  { transform: rotate(0); }
    100%{ transform: rotate(-360deg); }
}
/*-----------------------------------------------
 * Bace
-------------------------------------------------*/
body{
	-webkit-text-size-adjust: 100%;
	background-color: #000;
	color: #fff;
	font-family: 'Roboto Condensed' ,'Noto Sans JP', "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-feature-settings: "palt";
	font-size: 14px;
	font-weight: normal;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}
.pc{ display: block; }
.sp{ display: none; }
a{ color: #fff; }
a:hover{ text-decoration: none; }
.ah { transition: opacity .3s ease; }
.ah:hover { opacity: .7; }
::selection{
	background: rgb(255,0,86);
	color: #fff;
}
::-moz-selection{
	background: rgb(255,0,86);
	color:#fff;
}
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
	background: #444;
}
::-webkit-scrollbar-thumb {
	background: rgb(255,0,86);
}
@media screen and (max-width:767px){
	html{
		font-size: 62.5%;
	}
	body{
		font-size: 10px;
		font-size: 1rem;
	}
	.sp{ display: block; }
	.pc{ display: none; }
	.ah:hover { opacity: 1; }
}

/**
 * fullWrap
 */
#fullWrap {
	min-width: 1200px;
}
@media screen and (max-width:767px){
	#fullWrap {
		min-width: 320px;
	}
}

/**
 * keyframes
 */
@keyframes flash{
	0%  { opacity: 0; }
	100%{ opacity: 1; }
}


/*-----------------------------------------------
 * Modal
-------------------------------------------------*/

/**
 * modalBox
 * 基盤のモーダル
 */
.modalBox{
    -webkit-overflow-scrolling: touch;
    background: rgba(0,0,0,.6);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    display: none;
    width: 100%;
    height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
}
@media screen and (max-width:767px){
	.modalBox{
		-webkit-backdrop-filter: none;
    	backdrop-filter: none;
	}
}
.oneModal{
    display: none;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

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

/**
 * closeBtn
 */
.closeBtn {
	width: 160px;
	height: 70px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
.closeBtn a{
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.closeBtn a:after{
	content: "CLOSE";
	font-size: 14px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
}
.closeBtn a span:first-child{
	position: absolute;
    display: block;
	width: calc(100% + 6px);
    height: 2px;
    background: #fff;
    top: 22px;
    left: -3px;
    transform: rotate(16deg);
}
.closeBtn a span:last-child{
	position: absolute;
    display: block;
	width: calc(100% + 6px);
    height: 2px;
    background: #fff;
    top: 22px;
    right: -3px;
    transform: rotate(-16deg);
}
.closeBtn a span:first-child:before{
	content: "";
	position: absolute;
	width: 0;
	height: 100%;
	background: #ff0056;
	top: 0;
	right: 0;
	transition: all .1s ease-in-out;
}
.closeBtn a span:last-child:before{
	content: "";
	position: absolute;
	width: 0;
	height: 100%;
	background: #ff0056;
	top: 0;
	left: 0;
	transition: all .1s ease-in-out;
}
.closeBtn a:hover span:first-child:before{
	width: 100%;
}
.closeBtn a:hover span:last-child:before{
	transition-delay: .1s;
	width: 100%;
}
@media screen and (max-width:768px){
	.closeBtn{
		width: 80px;
		height: 44px;
	}
	.closeBtn a span:first-child,
	.closeBtn a span:last-child{
		top: 12px;
	}
	.closeBtn a:after {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* is-swiper */
@media screen and (max-width:768px){
	.closeBtn.is-swiper {
		width: 80px;
		height: 50px;
		min-width: inherit;
		margin: auto;
		right: 0;
		left: 0;
		top: -3px;
	}
}


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

/* youtube */
.youtubeIframeWrap {
    width: 70%;
    max-width: 159.993vh;
    position: relative;
}
@media screen and (max-width:767px){
    .youtubeIframeWrap {
        width: 100%;
        max-width: 100%;
    }
}
.youtubeIframeWrap:before{
    content: "";
    display: block;
    padding-top: 56.25%;
    z-index: 0;
}
.youtubeIframe{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}


/*-----------------------------------------------
 * Header
-------------------------------------------------*/
.header {
    width: 100%;
	height: 80px;
	min-width: 1200px;
    position: fixed;
    top: 0;
    z-index: 999;
	transition: transform .4s ease-in-out;
}
.header.is-off {
	transform: translateY(-100%);
}
.header:before {
	content: "";
	background-color: rgba(0,0,0,.64);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:767px){
    .header {
        height: 50px;
		min-width: 100%;
    }
	.header.is-off {
		transform: translateY(0);
	}
	.header:before {
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		z-index: 0;
		transform: translateX(100%);
        transition: transform .5s cubic-bezier(0.25, 1, 0.5, 1);
	}
	.header.is-active:before {
        transform: translateX(0);
    }
}

/* inner */
.header__inner {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:767px){
    .header__inner {
        -webkit-overflow-scrolling: touch;
        width: 100%;
        height: 100%;
        overflow: auto;
        position: fixed;
        top: 0;
        left: 0;
        padding: 40px 0 60px;
        z-index: 1;
		transform: translateX(100%);
        transition: transform .5s cubic-bezier(0.25, 1, 0.5, 1);
    }
    .header.is-active .header__inner {
        transform: translateX(0);
	    -webkit-backdrop-filter: blur(8px);
	    backdrop-filter: blur(8px);
    }
}

/**
 * headerNav
 */
.headerNav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width:767px){
    .headerNav {
		display: block;
		height: auto;
        position: relative;
        z-index: 1;
    }
}

/**
 * headerNavLists
 */
.headerNavLists {
	display: flex;
	align-items: center;
	height: 100%;
}
@media screen and (max-width:767px){
	.headerNavLists {
		display: block;
		height: auto;
	}
}

/* item */
.headerNavLists__item {
	height: 100%;
	position: relative;
}
@media screen and (max-width:767px){
	.headerNavLists__item {
		height: auto;
	}
}

/* icon */
.headerNavLists__item:after {
	content: "";
	background-color: #ff0056;
	display: block;
	width: 16px;
	height: 24px;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%;
	mask-size: 100%;
	-webkit-mask-image: url(../img/common/icon_thunder.svg);
	mask-image: url(../img/common/icon_thunder.svg);
	margin: auto;
	position: absolute;
	top: 0;
	right: -8px;
	bottom: 0;
}
.headerNavLists__item:last-child:after {
	content: none;
}
@media screen and (max-width:767px){
	.headerNavLists__item:after {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
	}
}

/* a */
.headerNavLists__item a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	text-decoration: none;
	padding: 0 20px;
	position: relative;
}
@media screen and (max-width:767px){
	.headerNavLists__item a {
		height: auto;
		padding: 24px 0;
	}
}

/* headerNavLists__textWrap */
.headerNavLists__textWrap {
	display: block;
	position: relative;
}
.headerNavLists__textWrap:before {
	content: "";
	background-color: #ff0056;
	width: 100%;
	height: 100%;
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 0;
	transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s ease;
}
.headerNavLists__item a:hover .headerNavLists__textWrap:before,
.headerNavLists__item a.is-active .headerNavLists__textWrap:before {
	transform-origin: left top;
    transform: scale(1, 1);
}

/* headerNavLists__text */
.headerNavLists__text {
	color: #fff;
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	position: relative;
	z-index: 1;
	transition: color .3s ease;
	text-align: center;
}
.headerNavLists__item a:hover .headerNavLists__text,
.headerNavLists__item a.is-active .headerNavLists__text {
	color: #000;
}
@media screen and (max-width:767px){
	.headerNavLists__text {
		font-size: 20px;
		font-size: 2rem;
	}
}

/**
 * headerSnsDl
 */
.headerSnsDl {
	display: flex;
	align-items: center;
	height: 100%;
	margin-right: 30px;
	/* margin-left: auto; */
}
@media screen and (max-width:767px){
	.headerSnsDl {
		display: flex;
		justify-content: center;
		height: 40px;
		margin-top: 40px;
		margin-right: auto;
	}
}

/* dt */
.headerSnsDl > dt {
	display: flex;
	align-items: center;
	height: 100%;
	font-size: 14px;
	margin-right: 14px;
}
@media screen and (max-width:767px){
	.headerSnsDl > dt {
		font-size: 1.4rem;
	}
}

/* dd */
.headerSnsDl > dd {
	height: 100%;
}

/**
 * headerSnsLists
 */
.headerSnsLists {
	display: flex;
	align-items: center;
	height: 100%;
}

/* item */
.headerSnsLists__item {
	display: flex;
	align-items: center;
	height: 100%;
}
.headerSnsLists__item:not(:first-child) {
	margin-left: 4px;
}
.headerSnsLists__item a {
	display: block;
	width: 40px;
	height: 40px;
	position: relative;
}

/* icon */
.headerSnsLists__item a:before {
	content: "";
	background-color: #fff;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100%;
	mask-size: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transition: background-color .3s ease;
}
.headerSnsLists__item a:hover:before {
	background-color: #ff0056;
}

.headerSnsLists__item.is-youtube a:before {
	width: 24px;
	height: 18px;
	-webkit-mask-image: url(../img/common/icon_youtube.svg);
	mask-image: url(../img/common/icon_youtube.svg);
}
.headerSnsLists__item.is-twitter a:before {
	width: 20px;
	height: 18px;
	-webkit-mask-image: url(../img/common/icon_tw.svg);
	mask-image: url(../img/common/icon_tw.svg);
}

/**
 * header__navLogo
 */
.header__navLogo {
	width: 200px;
	margin-top: 8px;
	margin-right: 10px;
	margin-left: 40px;
}
.header__navLogo img {
	width: 100%;
}
@media screen and (max-width:767px){
	.header__navLogo {
		margin-top: 0;
		margin-right: auto;
		margin-bottom: 20px;
		margin-left: auto;
	}
}

/**
 * navBtn
 */
@media screen and (max-width:767px){
    .header__navBtnWrap {
        width: 48px;
        height: 44px;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
    }
    .header__navBtn {
		background-color: #fff;
        display: flex;
        align-items: center;
		flex-direction: column;
        justify-content: center;
        width: 100%;
        height: 100%;
        position: relative;
		transition: background-color .3s ease-in-out;
    }
	.header__navBtn.is-active {
		background-color: rgba(var(--color-main),1);
	}
	.header__navBtn:before {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 16px 50px 0 0;
		border-color: #ffffff transparent transparent transparent;
		position: absolute;
		bottom: -15px;
		left: 0;
		transition: border-color .3s ease-in-out;
	}
	.header__navBtn.is-active:before {
		border-color: #ff0056 transparent transparent transparent;
	}
    .header__navBtn__lineWrap {
        width: 24px;
        height: 8px;
		margin-top: 6px;
        position: relative;
		z-index: 1;
    }
    .header__navBtn--line {
        background-color: #000;
        display: block;
        width: 100%;
        height: 1px;
        margin: auto;
        position: absolute;
		transition: all .3s ease-in-out;
    }
	.header__navBtn.is-active .header__navBtn--line {
		background-color: #fff;
	}
    .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) {
		top: 3px;
		transform: rotate(30deg);
	}
	.header__navBtn.is-active .header__navBtn--line:nth-child(2) {
		bottom: 4px;
		transform: rotate(-30deg);
	}

	.header__navBtn:after {
		content: "MENU";
		color: #000;
		font-size: 1rem;
		font-weight: 700;
		letter-spacing: 0.01em;
		line-height: 1;
		margin-top: 7px;
		transition: all .3s ease-in-out;
	}
	.header__navBtn.is-active:after {
		content: "CLOSE";
		color: #fff;
	}
}


/*-----------------------------------------------
 * Footer
-------------------------------------------------*/
.footer {
	width: 100%;
	height: 100vh;
	min-height: 640px;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:1200px){
	.footer {
		max-height: 640px;
	}
}
@media screen and (max-width:767px){
	.footer {
		height: auto;
		max-height: none;
		min-height: auto;
		padding: 50px 0;
	}
}

/**
 * bg
 */
.footer__bg {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}

/* overlay */
.footer__bg:before {
	content: "";
	background-color: rgba(0,0,0,.4);
	width: 100%;
	height: 100%;
	/*mix-blend-mode: overlay;*/
	position: absolute;
	top: 0;
	z-index: 1;
}

/* cover */
.footer__bg:after {
	content: "";
	background-image: none, url(../img/common/coverdot.png);
	background-color: rgba(0,0,0,.24);
	background-repeat: no-repeat, repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: 2;
}

/* iframe */
.footer__bg iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 0;
}

/**
 * share
 */
.footerShare {
	display: flex;
	align-items: center;
	flex-direction: column;
	position: absolute;
	top: 40px;
	left: 60px;
	z-index: 2;
}
@media screen and (max-width:767px){
	.footerShare {
		left: 12px;
	}
}

/* dt */
.footerShare__dt {
	color: #fff;
	font-size: 14px;
	line-height: 1;
	margin-bottom: 14px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}
@media screen and (max-width:767px){
	.footerShare__dt {
		font-size: 10px;
		font-size: 1rem;
	}
}

/* item */
.footerShare__dd .shareLists__item {
	margin-bottom: 14px;
}

/**
 * pagetop
 */
.footerPagetop {
	display: flex;
	align-items: center;
	width: 160px;
	height: 80px;
	position: absolute;
	top: 80px;
	right: 0;
	text-decoration: none;
	transform: rotate(-90deg);
	z-index: 2;
}
@media screen and (max-width:767px){
	.footerPagetop {
		width: 80px;
		height: 40px;
		top: 60px;
		right: -4px;
	}
}

.footerPagetop:before {
	content: "";
	background: url(../img/common/arrow.svg) no-repeat 0 0 / 100%;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* play icon inner */
.footerPagetop__inner {
	background: linear-gradient( to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 10%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 90%, rgba(0,0,0,0) 100% );
	font-size: 14px;
	line-height: 1;
}
@media screen and (max-width:767px){
	.footerPagetop__inner {
		font-size: 10px;
		font-size: 1rem;
	}
}

/**
 * footer__inner
 */
.footer__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 100%;
	margin-top: -24px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}
@media screen and (max-width:767px){
	.footer__inner {
		margin-top: 0;
		position: relative;
		top: auto;
		left: auto;
		transform: translate(0, 0);
	}
}

/* logo */
.footer__logo {
	width: 400px;
}
@media screen and (max-width:767px){
	.footer__logo {
		width: 50%;
	}
}

.footer__logo img {
	filter: drop-shadow(0 0 10px rgba(0,0,0,1)) drop-shadow(0 0 10px rgba(0,0,0,1));
	width: 100%;
}

/**
 * officialLists
 */
.footer__officialList {
	display: flex;
	margin-top: 40px;
}
@media screen and (max-width:767px){
	.footer__officialList {
		justify-content: space-between;
		width: 66.6%;
		margin: 30px auto 0;
	}
}

/* item */
.footer__officialList__item:not(:first-child) {
	margin-left: 80px;
}
li.footer__officialList__item{
	text-align: center;
}
.footer__officialList__item a{
	font-size: 16px;
    font-weight: bold;
    text-decoration: none;
}
@media screen and (max-width:767px){
	.footer__officialList__item:not(:first-child) {
		margin-left: 20px;
	}
	.footer__officialList__item img {
		width: 100%;
	}
	.footer__officialList__item a{
		font-size: 12px;
	}
}

/**
 * footer__carListsWrap
 */
.footer__carListsWrap {
	-webkit-overflow-scrolling: touch;
	background: rgba(255,255,255,.8);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	width: 100%;
	margin-top: 40px;
	padding: 28px 10%;
}
@media screen and (max-width:767px){
	.footer__carListsWrap {
		margin-top: 40px;
		padding: 44.8% 0 0 0;
		position: relative;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}
}

.footer__carLists {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
@media screen and (max-width:767px){
	.footer__carLists {
		flex-wrap: wrap;
		height: 100%;
		max-width: 100%;
		padding: 18px 0;
		position: absolute;
		top: 0;
		left: 0;
	}
	.footer__carLists__item {
		width: 50%;
		height: 50%;
	}
	.footer__carLists__item:nth-child(1) {
		order: 1;
	}
	.footer__carLists__item:nth-child(2) {
		order: 3;
	}
	.footer__carLists__item:nth-child(3) {
		order: 5;
	}
	.footer__carLists__item:nth-child(4) {
		order: 2;
	}
	.footer__carLists__item:nth-child(5) {
		order: 4;
	}
	.footer__carLists__item a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
	}
	.footer__carLists__item img {
		width: 40%;
	}
}

/* licensed */
.footer__carLists__licensedWrap {
	font-size: 14px;
	text-align: center;
	pointer-events: none;
}
@media screen and (max-width:767px){
	.footer__carLists__licensedWrap {
		font-size: 12px;
		font-size: 1.2rem;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}

.footer__carLists__licensed {
	background: linear-gradient( to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 10%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 90%, rgba(0,0,0,0) 100% );
}

/**
 * footer__bottom
 */
.footer__bottom {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
	justify-content: space-between;
	width: 100%;
	height: 96px;
	padding: 0 40px;
	position: absolute;
	bottom: 0;
	left: 0;
}
@media screen and (max-width:767px){
	.footer__bottom {
		display: block;
		height: auto;
		margin-top: 40px;
		position: relative;
		bottom: auto;
		left: auto;
	}
}

/* notice */
.footer__notice {
	color: #aaaaaa;
	font-size: 12px;
}
@media screen and (max-width:767px){
	.footer__notice {
		font-size: 10px;
		font-size: 1rem;
		text-align: center;
	}
}

.footer__notice a {
	color: #ff0056;
}

/* copyright */
.footer__copyright {
	color: #aaaaaa;
	font-size: 12px;
}
@media screen and (max-width:767px){
	.footer__copyright {
		display: block;
		font-size: 10px;
		font-size: 1rem;
		margin-top: 40px;
		text-align: center;
	}
}


/*-----------------------------------------------
 * Parts
-------------------------------------------------*/

/**
 * shareLists
 */

/* item */
.shareLists__item {
    width: 30px;
    height: 30px;
}

/* link */
.shareLists__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.shareLists__link:before {
    content: "";
    background-color: #fff;
    display: block;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    transition: background-color .4s ease;
}
.shareLists__link:hover:before {
    background-color: rgba(255,0,86,1);
}

/* 各SNSパーツ */
.shareLists__item.is-twitter .shareLists__link:before {
    width: 20px;
    height: 18px;
    -webkit-mask-image: url(../img/common/icon_tw.svg);
    mask-image: url(../img/common/icon_tw.svg);
}
.shareLists__item.is-facebook .shareLists__link:before {
    width: 20px;
    height: 20px;
    -webkit-mask-image: url(../img/common/icon_fb.svg);
    mask-image: url(../img/common/icon_fb.svg);
}
.shareLists__item.is-line .shareLists__link:before {
    width: 20px;
    height: 20px;
    -webkit-mask-image: url(../img/common/icon_line.svg);
    mask-image: url(../img/common/icon_line.svg);
}


/**
 * linkAnimainon
 */
.linkAni1:hover {
	animation: flash .001s 200 alternate;
}
@media screen and (max-width:767px){
	.linkAni1:hover {
		animation: none;
	}
}

/**
 * moviePlayIcon
 */
 .moviePlayIcon {
	display: flex;
	align-items: center;
	width: 160px;
	height: 80px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 4;
}
.moviePlayIconWrap:hover .moviePlayIcon {
	animation: flash .001s 200 alternate;
}
@media screen and (max-width:767px){
	.moviePlayIcon {
		width: 80px;
		height: 40px;
	}
	.moviePlayIconWrap:hover .moviePlayIcon {
		animation: none;
	}
}

.moviePlayIcon:before {
	content: "";
	background: url(../img/common/arrow.svg) no-repeat 0 0 / 100%;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* play icon inner */
.moviePlayIcon__inner {
	background-color: #000;
	font-size: 14px;
	line-height: 1;
}
@media screen and (max-width:767px){
	.moviePlayIcon__inner {
		font-size: 10px;
		font-size: 1rem;
	}
}


/**
 * swiper
 */
/* swiperControl */
.swiperControl {
	width: calc(100% + 160px);
	margin-top: 40px;
	margin-left: -80px;
	position: relative;
	padding: 0 120px;
	z-index: 10;
}
@media screen and  (max-width:767px){
	.swiperControl {
		width: calc(100% + 48px);
		margin-top: 24px;
		margin-left: -24px;
		padding: 0 70px;
	}
}

/* swiper-button-disabled */
.swiperControl .swiper-button-disabled {
    opacity: .6;
    pointer-events: none;
}

/* scrollbar */
.swiperControl .swiper-scrollbarWrap{
    touch-action: manipulation;
    height: 80px;
    position:relative;
}
.swiperControl.is-small .swiper-scrollbarWrap{
    height: 24px;
}
@media screen and  (max-width:767px){
	.swiperControl .swiper-scrollbarWrap{
		height: 24px;
	}
}

.swiperControl .swiper-scrollbarWrap:before {
    content:'';
    height: 4px;
    margin: auto;
    position: absolute;
    top:0;
    right: 0;
    bottom: 0;
    left:0;
}
.swiperControl .swiper-scrollbarWrap:before {
    background:#3d3d3d;
}
.swiperControl .swiper-scrollbar {
    background:transparent;
    height: 80px;
}
@media screen and  (max-width:767px){
	.swiperControl .swiper-scrollbarWrap:before {
		width: 100%;
	}
	.swiperControl .swiper-scrollbar {
		height: 24px;
		width: 100%;
		margin: 0 auto;
		z-index: 2;
	}
}

.swiperControl.is-small .swiper-scrollbar {
    height: 24px;
}
.swiperControl .swiper-scrollbar-drag {
    border-radius: 0;
    background:transparent;
    cursor: pointer;
}
.swiperControl .swiper-scrollbar-drag:before {
    content:'';
	background-color: #fff;
    margin: auto;
    position: absolute;
    top:0;
    right: 0;
    bottom: 0;
    left:0;
    height:4px;
}
.swiperControl.is-green .swiper-scrollbar-drag:before {
    background:#009944;
}

/* prev, next */
.swiperControl .swiper-btn-prev,
.swiperControl .swiper-btn-next {
	display: flex;
	align-items: center;
    position: absolute;
	top: 0;
    bottom:0;
    height:80px;
    cursor: pointer;
}
@media screen and  (max-width:767px){
	.swiperControl .swiper-btn-prev,
	.swiperControl .swiper-btn-next {
		height:24px;
	}
}

.swiperControl .swiper-btn-prev {
    left:0;
}
.swiperControl .swiper-btn-next {
	flex-direction: row-reverse;
    right:0;
}
.swiperControl .swiper-btn-prev:before,
.swiperControl .swiper-btn-next:before {
    content: "";
    background-color: #fff;
    display: block;
    width: 80px;
    height: 40px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    margin: auto;
}
@media screen and  (max-width:767px){
    .swiperControl .swiper-btn-prev,
    .swiperControl .swiper-btn-next {
		height:24px;
    }
	.swiperControl .swiper-btn-prev {
		padding-left: 12px;
	}
	.swiperControl .swiper-btn-next {
		padding-right: 12px;
	}
    .swiperControl .swiper-btn-prev:before,
    .swiperControl .swiper-btn-next:before {
        width:50px;
		height:24px;
    }
}
.swiperControl .swiper-btn-prev:before {
    left: 0;
}
.swiperControl .swiper-btn-prev:before {
    -webkit-mask-image: url(../img/common/arrow_left.svg);
    mask-image: url(../img/common/arrow_left.svg);
}
.swiperControl .swiper-btn-next:before {
    right: 0;
}
.swiperControl .swiper-btn-next:before {
    -webkit-mask-image: url(../img/common/arrow_right.svg);
    mask-image: url(../img/common/arrow_right.svg);
}


/**
 * moreLink
 */
.moreLink {
	background-color: #fff;
	display: table-cell;
	color: #000;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	padding: 12px 80px;
	text-align: center;
	text-decoration: none;
}
.moreLink__inner {
	display: block;
	margin-top: 1px;
}
@media screen and (max-width:767px){
	.moreLink {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/**
 * page nav
 */
.pageNavWrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
	width: calc(100% + 160px);
	height: 40px;
	margin-left: -80px;
    margin-top: 60px;
}
@media screen and (max-width:767px) {
	.pageNavWrap {
		width: calc(100% + 48px);
		margin-left:-24px;
    	margin-top: 30px;
	}
}

.pageNav {
	display: flex;
	align-items: center;
    height:100%;
}
.pageNav.disable {
    opacity: .6;
    pointer-events: none;
}

/* a */
.pageNav a {
	display: flex;
	align-items: center;
	height: 100%;
	font-size: 16px;
	text-decoration: none;
}
@media screen and (max-width:767px) {
	.pageNav a {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* prev, next */
.pageNav.is-next a {
	flex-direction: row-reverse;
}
.pageNav a:before {
    content: "";
    background-color: #fff;
    display: block;
    width: 80px;
    height: 40px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    margin: auto;
}
@media screen and (max-width:767px) {
	.pageNav.is-prev {
		padding-left: 12px;
	}
	.pageNav.is-next {
		padding-right: 12px;
	}
	.pageNav a:before {
		width: 48px;
    	height: 24px;
	}
}

.pageNav.is-prev a:before {
    -webkit-mask-image: url(../img/common/arrow_left.svg);
    mask-image: url(../img/common/arrow_left.svg);
}
.pageNav.is-next a:before {
    -webkit-mask-image: url(../img/common/arrow_right.svg);
    mask-image: url(../img/common/arrow_right.svg);
}

/* a span */
.pageNav.is-next a span {
	margin-right: 10px;
}
.pageNav.is-prev a span {
	margin-left: 10px;
}

/**
 * pageNavAll
 */
 @media screen and (max-width:767px) {
	.pageNavAll a {
		padding: 12px 30px;
	}
}

/**
 * deco line
 */
 .deco__line {
    display: block;
    background-color: rgba(255,255,255,.4);
    width: 100%;
    height: 1px;
}

/**
 * cursor
 */
.cursor {
    width: 100px;
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 10001;
	opacity: 0;
    transition: opacity .4s ease;
}
.cursor.is-charaDetail {
	opacity: 1;
}
.cursor:before {
	content: "";
	background: url(../img/common/icon_plus.svg) no-repeat 0 0 / 100%;
	width: 40px;
	height: 40px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.cursor__circle {
    width: 100px;
    height: 100px;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scale(1.5);
    transition: transform .4s ease;
}
.cursor.is-charaDetail .cursor__circle {
    transform: scale(1);
}
.cursor__circle:before {
    content: "";
    background: url(../img/common/icon_charaprf.png) no-repeat 0 0 / 100%;
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    animation: rotation 3s linear infinite;
}

/**
 * categoryNavLists
 */
.categoryNavLists {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

/* li */
.categoryNavLists li {
	margin: 0 4px 8px;
}

/* a */
.categoryNavLists li a {
	border: 1px solid rgba(var(--color-main));
	color: #fff;
	display: block;
	font-size: 16px;
	padding: 2px 14px;
	text-decoration: none;
	transition: all .3s ease;
}
.categoryNavLists li a:hover,
.categoryNavLists li a.is-active {
	background-color: rgba(var(--color-main));
	color: #000;
}
@media screen and (max-width:767px){
	.categoryNavLists li a {
		font-size: 12px;
		font-size: 1.2rem;
		padding: 2px 6px;
	}
}

/**
 * empty
 */
.empty {
	font-size: 16px;
	text-align: center;
	margin-top: 72px;
}
@media screen and (max-width:767px){
	.empty {
		font-size: 12px;
		font-size: 1.2rem;
		margin-top: 42px;
	}
}

/**
 * psNav
 */
.psNav {
	display: none;
}
@media screen and (max-width:767px){
	.psNav {
		display: flex;
		align-items: center;
		width: 50px;
		height: 24px;
		position: absolute;
		bottom:0;
	}
	.howto .psNav {
		bottom: 50px;
	}
	.charaGramWrap .psNav {
		bottom: -10px;
	}
	.psNav.is-next {
		right:12px;
	}
	.psNav.is-prev {
		left:12px;
	}
	.psNav:before {
		content: "";
		background-color: #fff;
		display: block;
		width: 100%;
		height: 100%;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-position: center;
		mask-position: center;
		-webkit-mask-size: 100%;
		mask-size: 100%;
		margin: auto;
	}
	.psNav.is-next:before {
		-webkit-mask-image: url(../img/common/arrow_right.svg);
		mask-image: url(../img/common/arrow_right.svg);
	}
	.psNav.is-prev:before {
		-webkit-mask-image: url(../img/common/arrow_left.svg);
		mask-image: url(../img/common/arrow_left.svg);
	}
}

/**
 * font style
 */
/* color */
.font-color-pink {
	color: rgb(var(--color-main));
}

/* weight */
.font-weight-bold {
	font-weight: bold;
}


/**
 * margin
 * PCのサイズを基準
 */
.mt-20 {
	margin-top: 20px;
}
.mb-20 {
	margin-bottom: 20px;
}
.ml-20 {
	margin-left: 20px;
}
.mr-20 {
	margin-right: 20px;
}
@media screen and (max-width:767px){
	.mt-20 {
		margin-top: 10px;
	}
	.mb-20 {
		margin-bottom: 10px;
	}
	.ml-20 {
		margin-left:10px;
	}
	.mr-20 {
		margin-right:10px;
	}
}

/* 30px */
.mt-30 {
	margin-top: 30px;
}
.mb-30 {
	margin-bottom: 30px;
}
.ml-30 {
	margin-left: 30px;
}
.mr-30 {
	margin-right: 30px;
}
@media screen and (max-width:767px){
	.mt-30 {
		margin-top: 20px;
	}
	.mb-30 {
		margin-bottom: 20px;
	}
	.ml-30 {
		margin-left: 20px;
	}
	.mr-30 {
		margin-right: 20px;
	}
}

/* 40px */
.mt-40 {
	margin-top: 40px;
}
.mb-40 {
	margin-bottom: 40px;
}
@media screen and (max-width:767px){
	.mt-40 {
		margin-top: 30px;
	}
	.mb-40 {
		margin-bottom: 30px;
	}
}

/* 50px */
.mt-50 {
	margin-top: 50px;
}
.mb-50 {
	margin-bottom: 50px;
}
@media screen and (max-width:767px){
	.mt-50 {
		margin-top: 40px;
	}
	.mb-50 {
		margin-bottom: 40px;
	}
}

/* 60px */
.mt-60 {
	margin-top: 60px;
}
.mb-60 {
	margin-bottom: 60px;
}
@media screen and (max-width:767px){
	.mt-60 {
		margin-top: 50px;
	}
	.mb-60 {
		margin-bottom: 50px;
	}
}

/* indent */
.indent-1 {
	display: block;
	padding-left:1em;
	text-indent:-1em;
}
.indent-05 {
	display: block;
	padding-left:0.5em;
	text-indent:-0.5em;
}


/*-----------------------------------------------
 * Sub common
-------------------------------------------------*/
/* subMain */
.subMain {
	padding-top: 80px;
}
@media screen and (max-width:767px){
	.subMain {
		padding-top: 0;
	}
}

/* title */
.subMain__title {
	margin: 80px auto;
}
@media screen and (max-width:767px){
	.subMain__title {
		padding-top: 48px auto;
	}
}

/* logo */
@media screen and (max-width:767px){
	.subMain__logo {
		width: 200px;
		margin-top: 0;
		margin-right: auto;
		margin-bottom: 48px;
		margin-left: auto;
	}
	.subMain__logo img {
		width: 100%;
	}
}
