@charset "utf-8";

html {
	font-size: 62.5%;
}

* {
	box-sizing: border-box;
}

body {
	background-color: #000;
	color: #fff;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-size: 1.1rem;
	line-height: 1.6;
}

img {
	max-width: 100%;
	height: auto;
}

.br02 {
	display: block;
}

.right {
	text-align: right !important;
}
.center {
	text-align: center !important;
}

/* link
*****************************************/
a:link,
a:visited {
	color: #333;
	text-decoration: underline;
}

a:hover,
a:active {
	color: #333;
	text-decoration: none;
}

.hover a img {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
}

.hover a:hover img {
	opacity: .6;
}

/* movie
*****************************************/
#mdl-box {
	position: fixed;
	z-index: 1100;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#mdl-box .mdl-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
}
#mdl-box #mdl-plr {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -270px;
	margin-left: -480px;
}
#mdl-box .btn {
	position: absolute;
	top: 50%;
	right: 50%;
	width: 84px;
	height: 84px;
	margin: -353px -480px 0 0;
}
#mdl-box .btn a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../images/bt04.png) left top no-repeat;
	text-indent: -999em;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
}
#mdl-box .btn a:hover {
	background-position: right top;
}

/* animation
*****************************************/
@-webkit-keyframes fadeIn01 {
0% {
	-webkit-transform: scale(3);
	transform: scale(3);
}
70% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	transform: scale(1);
}
90% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}
100% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	transform: scale(1);
}
}
@keyframes fadeIn01 {
0% {
	-webkit-transform: scale(3);
	transform: scale(3);
}
70% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	transform: scale(1);
}
90% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}
100% {
	opacity: 1;
	visibility: visible;
	-webkit-transform: scale(1);
	transform: scale(1);
}
}

@-webkit-keyframes fadeIn02 {
0% {
	opacity: 0;
}
100% {
	opacity: 1;
	visibility: visible;
}
}

@keyframes fadeIn02 {
0% {
	opacity: 0;
}
100% {
	opacity: 1;
	visibility: visible;
}
}



@keyframes glitch-before {
	0% {
		clip-path: polygon(0% 17.0631088126%, 100% 17.0631088126%, 100% 20.9593622282%, 0% 20.9593622282%);
		transform: translate(6.1332368909%, 0.4843000526%);
	}
	1% {
		clip-path: polygon(0% 50.4990926872%, 100% 50.4990926872%, 100% 54.96009513%, 0% 54.96009513%);
		transform: translate(0.9103019482%, -0.0663098675%);
	}
	2% {
		clip-path: polygon(0% 23.1157567261%, 100% 23.1157567261%, 100% 30.9375938632%, 0% 30.9375938632%);
		transform: translate(-3.4168724222%, -0.1401452016%);
	}
	3% {
		clip-path: polygon(0% 11.444483865%, 100% 11.444483865%, 100% 16.4608494546%, 0% 16.4608494546%);
		transform: translate(0.2424885133%, -0.0954105154%);
	}
	4% {
		clip-path: polygon(0% 76.6969754603%, 100% 76.6969754603%, 100% 85.1411391247%, 0% 85.1411391247%);
		transform: translate(6.0193136472%, -0.0545196226%);
	}
	5% {
		clip-path: polygon(0% 50.8601547518%, 100% 50.8601547518%, 100% 56.8090175286%, 0% 56.8090175286%);
		transform: translate(-5.3703132385%, 0.0296932614%);
	}
	6% {
		clip-path: polygon(0% 60.5340243075%, 100% 60.5340243075%, 100% 69.5362873811%, 0% 69.5362873811%);
		transform: translate(-2.6670339489%, -0.0979166254%);
	}
	7% {
		clip-path: polygon(0% 16.0605538576%, 100% 16.0605538576%, 100% 19.2257750931%, 0% 19.2257750931%);
		transform: translate(7.8403833903%, 0.0090266777%);
	}
	8% {
		clip-path: polygon(0% 36.421524127%, 100% 36.421524127%, 100% 37.6667154611%, 0% 37.6667154611%);
		transform: translate(-1.8052558713%, -0.1730470404%);
	}
	9% {
		clip-path: polygon(0% 33.6329423224%, 100% 33.6329423224%, 100% 40.0992945852%, 0% 40.0992945852%);
		transform: translate(-4.7239018624%, 0.0408142979%);
	}
	10%, 100% {
		clip-path: none;
		transform: none;
	}
}
@keyframes glitch-after {
	0% {
		clip-path: polygon(0% 78.6888209788%, 100% 78.6888209788%, 100% 81.8416215961%, 0% 81.8416215961%);
		transform: translate(0.0312793436%, 0.3874365532%);
	}
	1% {
		clip-path: polygon(0% 87.6657014459%, 100% 87.6657014459%, 100% 91.1593547738%, 0% 91.1593547738%);
		transform: translate(7.3388944482%, 0.4883964427%);
	}
	2% {
		clip-path: polygon(0% 25.7459047987%, 100% 25.7459047987%, 100% 32.7597898314%, 0% 32.7597898314%);
		transform: translate(1.1955422244%, -0.491346809%);
	}
	3% {
		clip-path: polygon(0% 26.3567682888%, 100% 26.3567682888%, 100% 30.1502900831%, 0% 30.1502900831%);
		transform: translate(6.9098108635%, -0.4041601748%);
	}
	4% {
		clip-path: polygon(0% 12.3179250842%, 100% 12.3179250842%, 100% 19.2839803748%, 0% 19.2839803748%);
		transform: translate(1.031986432%, 0.3132977379%);
	}
	5% {
		clip-path: polygon(0% 8.4649051623%, 100% 8.4649051623%, 100% 12.2378549459%, 0% 12.2378549459%);
		transform: translate(-2.0914515817%, 0.2414571856%);
	}
	6% {
		clip-path: polygon(0% 83.8792103357%, 100% 83.8792103357%, 100% 91.7534047301%, 0% 91.7534047301%);
		transform: translate(-0.026133876%, 0.4482785831%);
	}
	7% {
		clip-path: polygon(0% 3.2013507501%, 100% 3.2013507501%, 100% 9.7748388142%, 0% 9.7748388142%);
		transform: translate(-6.8349479514%, 0.2285162272%);
	}
	8% {
		clip-path: polygon(0% 86.4637688383%, 100% 86.4637688383%, 100% 92.1641843457%, 0% 92.1641843457%);
		transform: translate(7.2831716893%, 0.2299839015%);
	}
	9% {
		clip-path: polygon(0% 66.2353807782%, 100% 66.2353807782%, 100% 72.4769789301%, 0% 72.4769789301%);
		transform: translate(-1.6030000512%, -0.0081871084%);
	}
	10%, 100% {
		clip-path: none;
		transform: none;
	}
}


@keyframes rgb-shift-r {
	0% {
		transform: translate(-0.9536959127%, 0.2392158495%);
	}
	1% {
		transform: translate(0.1780383376%, 0.3166762475%);
	}
	2% {
		transform: translate(-0.9111379984%, 0.3849392488%);
	}
	3% {
		transform: translate(0.336492156%, -0.441713634%);
	}
	4% {
		transform: translate(-0.8548479934%, 0.2463045086%);
	}
	5% {
		transform: translate(-0.1362440567%, -0.2894837867%);
	}
	6% {
		transform: translate(0.6090373478%, -0.3593018394%);
	}
	7% {
		transform: translate(0.1296663484%, -0.0854850084%);
	}
	8% {
		transform: translate(-1.4003153961%, -0.1032711072%);
	}
	9% {
		transform: translate(1.253476895%, -0.306747017%);
	}
	10%, 100% {
		transform: none;
	}
}
@keyframes rgb-shift-g {
	0% {
		transform: translate(-0.1393168934%, 0.1481178767%);
	}
	1% {
		transform: translate(0.9715435148%, -0.0071410658%);
	}
	2% {
		transform: translate(-1.8195844674%, -0.2521588454%);
	}
	3% {
		transform: translate(0.9847042784%, -0.0725947706%);
	}
	4% {
		transform: translate(1.2391391343%, 0.3618870371%);
	}
	5% {
		transform: translate(1.1621588944%, -0.0620688913%);
	}
	6% {
		transform: translate(-1.202682239%, -0.0568213228%);
	}
	7% {
		transform: translate(-1.28622368%, 0.4272442691%);
	}
	8% {
		transform: translate(-0.5537301963%, -0.2842519847%);
	}
	9% {
		transform: translate(-0.8067054005%, -0.0386149821%);
	}
	10%, 100% {
		transform: none;
	}
}

@keyframes rgb-shift-b {
	0% {
		transform: translate(-0.0337793732%, 0.100179988%);
	}
	1% {
		transform: translate(1.874661482%, 0.3121045389%);
	}
	2% {
		transform: translate(-0.6495535701%, 0.4385558859%);
	}
	3% {
		transform: translate(1.8222614875%, -0.3527747237%);
	}
	4% {
		transform: translate(1.2646594082%, 0.34312226%);
	}
	5% {
		transform: translate(-0.9077790924%, 0.0960282137%);
	}
	6% {
		transform: translate(0.1248671311%, 0.1309441025%);
	}
	7% {
		transform: translate(-0.1433666634%, 0.4794013714%);
	}
	8% {
		transform: translate(-1.9002215675%, 0.0923272872%);
	}
	9% {
		transform: translate(1.2903424563%, -0.0371058939%);
	}
	10%, 100% {
		transform: none;
	}
}

/* contents
*****************************************/
.wrapper01 {
	position: relative;
	min-width: 910px;
	background: url(../images/bg01.jpg) no-repeat top center / 0;
	overflow: hidden;
}
.wrapper01::before {
	animation: glitch-before 3s linear 6s infinite alternate forwards;
	content: "";
}
.wrapper01::after {
	animation: glitch-after 3s linear 6s infinite alternate forwards;
	content: "";
}

.wrapper01::before,
.wrapper01::after,
.channel {
	background: inherit;
	background-size: cover;
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.channel {
	mix-blend-mode: screen;
}

.channel::before {
	bottom: 0;
	content: "";
	display: block;
	left: 0;
	mix-blend-mode: multiply;
	position: absolute;
	right: 0;
	top: 0;
}

.channel.r {
	animation: rgb-shift-r 3s steps(1, jump-end) 6s infinite alternate forwards;
}
.channel.r::before {
	background: #f00;
}
.channel.g {
	animation: rgb-shift-g 3s steps(1, jump-end) 6s infinite alternate forwards;
}
.channel.g::before {
	background: #0f0;
}
.channel.b {
	animation: rgb-shift-b 3s steps(1, jump-end) 6s infinite alternate forwards;
}
.channel.b::before {
	background: #00f;
}

.main01 {
	position: relative;
	z-index: 2;
}

.box01 {
	display: table;
	position: relative;
	margin-left: auto;
	margin-right: 40px;
	padding-top: 19.4vh;
}

.logo01 {
	position: absolute;
	top: 20px;
	left: 20px;
	z-index: 100;
	opacity: 0;
	visibility: hidden;
	-webkit-animation: fadeIn02 linear 2.0s 1.0s forwards;
	animation: fadeIn02 linear 2.0s 1.0s forwards;
}

.logo01 img,
.logo02 img {
	width: auto;
	max-width: inherit;
	height: 100%;
}

.logo02 {
	height: 17.9vh;
	max-height: 192px;
	opacity: 0;
	-webkit-animation: fadeIn02 linear 2.0s 2.0s forwards;
	animation: fadeIn02 linear 2.0s 2.0s forwards;
}

.btnList01 {
	margin-top: 18.1vh;
}

.btnList01 > li {
	margin-top: 20px;
}

.btn01 img {
	width: auto;
	max-width: inherit;
	height: 100%;
}

.btn01 {
	z-index: 105;
	opacity: 0;
	height: 9vh;
	max-height: 100px;
	visibility: hidden;
	-webkit-animation: fadeIn02 ease-out 2.0s 3.0s forwards;
	animation: fadeIn02 ease-out 2.0s 4.0s forwards;
}

@media screen and (max-width: 1250px) {
}


.footer01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-align: end;
	-ms-flex-align: end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	position: relative;
	z-index: 2;
	margin-top: 70px;
	padding: 15px 20px;
	background-color: rgba(0,3,10,0.7);
	color: #fff;
}
.footer01 .col01 {
	width: 53%;
}

.footer01 .col02 {
	width: 46%;
	text-align: right;
}

.footer01 .col02 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 5px;
	font-size: 0;
	line-height: 1.0;
}

.footer01 .col02 > ul > li {
	margin-left: 10px;
}
.footer01 .col02 > ul > li:nth-child(2) {
	margin-top: 8px;
}

.footer01 .col02 ul li:first-child {
	margin-left: auto;
}

.footer01 .copyrights01 {
	line-height: 1.5;
}

.footer01 .copyrights01 + .copyrights01 {
	margin-top: 0.9em;
}

.footer01 .copyrights01 img {
	vertical-align: middle;
	margin-left: 5px;
	margin-bottom: 5px;
}


/* Clearfix
*****************************************/
.cf:after {
	content: " ";
	display: block;
	clear: both;
}
