/*-----------------------------------------
**
** GODZILLA / TOP
**
-----------------------------------------*/
body#top {
	background: rgba(0,0,0,1.0) url(../img/gzl3/bgkv.jpg) center top no-repeat;
	background-size: cover;

	min-width: 1380px;
}
/*#visual {
	background: rgba(0,0,0,1.0) url(../img/gzl3/bg.jpg) center top no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	padding-top: 51.5%;
	width: 100%;
	min-width: 1400px;
	margin: 0 auto;
}*/

/*-----------------------------------------
** opning movie
-----------------------------------------*/
.__op-movie {
	width: 100%;
	height: 100%;
	background: #000;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 900;
	overflow: hidden;
	/*display: none;*/
}
.__op-movie video.__vid {
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	position: relative;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

/*-----------------------------------------
** teaser visual
-----------------------------------------*/
.__teaser3 {
	/*background: url(../img/kv.png) top center no-repeat;
	background-size: cover;*/
	/*min-height: 100vh;
	height: auto !important;
	height: 100vh;*/
	background: url(../img/gzl3/teaser.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	height: 100%;
	opacity: 0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1111;
}
.__teaser3 .__close {
	position: absolute;
	top: 20px;
	right: 20px;
	cursor: pointer;
}
.__teaser3 .__logo-g3 {
	width: 50%;
	position: relative;
	top: 50%;
	left: 50%;
	opacity: 0;
	transform: translate(-50%,-50%);
}
.__teaser3 .__logo-g3 img {
	max-width: 100%;
}
.__teaser3 .__credit-g3 {
	width: 20%;
	position: absolute;
	bottom: 2px;
	left: 10px;
}
.__teaser3 .__logo-g3 img,
.__teaser3 .__credit-g3 img{
	max-width: 100%;
}


/*-----------------------------------------
** bubble effect
-----------------------------------------*/

.particles {
	width: 100%;
	height: 30vh;
	position: absolute;
	left: 0;
	bottom: 0;
	overflow: hidden;
}
.particles.hinoko > .particle {
	opacity: 0;
	position: absolute;
	background-color: rgba(255,255,24, 0.35);
	-webkit-box-shadow: 0 0 3px 2px rgba(255,105,19,0.25);
	box-shadow: 0 0 3px 2px rgba(255,105,19,0.25);
	-webkit-animation: bubbles 3s ease-in infinite;
	animation: bubbles 3s ease-in infinite;
	border-radius: 50% 0 50% 0;
	transform: rotate3d(10, 10, 1, -45deg);
}
@-webkit-keyframes bubbles {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 1;
		margin: 0 0 0 10px;
		-webkit-transform: translate(0, -20%);
		transform: translate(0, -20%);
		transform: rotate3d(1, 10, 1, 45deg);
	}
	100% {
		opacity: 0;
		margin: 0 10px 0 0;
		-webkit-transform: translate(0, -1000%);
		transform: translate(0, -1000%);
		transform: rotate3d(1, 1, 10, 65deg);
	}
}

@keyframes bubbles {
	0% {
		opacity: 0;
	}
	20% {
		opacity: 1;
		-webkit-transform: translate(0, -20%);
		transform: translate(0, -20%);
	}
	100% {
		opacity: 0;
		-webkit-transform: translate(0, -1000%);
		transform: translate(0, -1000%);
	}
}




/*--------------------------------------
**
** keyvisual
**
--------------------------------------*/
.__vis {
	overflow: hidden;
	position: relative;
}
.__vis img.__img,
.__vis video.__vid {
	/*min-width: 100%;
	min-height: 100%;*/
	width: auto;
	height: 100%;
	z-index: -1;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	
}
.__vis video.__vid {
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	/*background: url(../img/kv.png) top center no-repeat;
	background-size: cover;
	z-index: -100;*/
}
.__shadow-btm {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 252px;
	background: url(../img/03-shadow_btm.png) left bottom repeat-x;
}

/*--------------------------------------
**
** sand effect
**
--------------------------------------*/
.__bg-sand {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
}

.__bg-sand .__sand {
	position: fixed;
	bottom: 0;
	/*z-index: 1;*/
	width: 2000px;
}

.__bg-sand .__sand img {
	width: 100%;
}

.__bg-sand .__sand-L {
	width: 100%;
	height: 494px;
	background: url(../img/fog-1-min.png) repeat-x;
	left: 0;
	-webkit-animation: sand_anime01 60s linear infinite;
	animation: sand_anime01 60s linear infinite;
	opacity: 0.2;
}
.__bg-sand .__sand-R {
	width: 100%;
	height: 554px;
	background: url(../img/fog-2-min.png) repeat-x;
	left: 0;
	-webkit-animation: sand_anime02 60s linear infinite;
	animation: sand_anime02 60s linear infinite;
	opacity: 0.6;
}

@-webkit-keyframes sand_anime01 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1788px 0;
	}
}
@keyframes sand_anime01 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1788px 0;
	}
}

@-webkit-keyframes sand_anime02 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1183px 0;
	}
}
@keyframes sand_anime02 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1183px 0;
	}
}

/*--------------------------------------
**
** grid
**
--------------------------------------*/
.__grid-wrap {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
}
.__grid-wrap .__grid-l {
	background: url(../img/grid-l.png) left top repeat-y;
	/*background-size: 220px 100%;*/
	position: absolute;
	top: 0;
	left: 0;
	width: 441px;
	height: 100%;
}
.__grid-wrap .__grid-r {
	background: url(../img/grid-r.png) right top repeat-y;
	/*background-size: 220px 100%;*/
	position: absolute;
	top: 0;
	right: 0;
	width: 437px;
	height: 100%;
}
.__grid-wrap .__grid-l img,
.__grid-wrap .__grid-r img {
	width: 50px;
	height: auto;
}


/*--------------------------------------
**
** text scroll
**
--------------------------------------*/
.__tx-scroll {
	width: 299px;
	height: 138px;
	overflow: hidden;
	position: absolute;
	bottom: 350px;
	right: 11%;
	z-index: 10;
	background: url(../img/bg-text-scroll.png) 0 0 repeat-y;
	/*-webkit-animation: tx-scroll 3.0s linear infinite;
	animation: tx-scroll 3.0s linear infinite;*/
	/*-webkit-transform: perspective(500px) rotateX(0deg) rotateY(-60deg) rotateZ(0deg);
	-moz-transform: perspective(500px) rotateX(0deg) rotateY(-60deg) rotateZ(0deg);
	-o-transform: perspective(500px) rotateX(0deg) rotateY(-60deg) rotateZ(0deg);
	-ms-transform: perspective(500px) rotateX(0deg) rotateY(-60deg) rotateZ(0deg);
	transform: perspective(500px) rotateX(0deg) rotateY(-60deg) rotateZ(0deg);*/
}
@-webkit-keyframes tx-scroll {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: 0 -140px;
	}
}
@keyframes tx-scroll {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: 0 -140px;
	}
}

/*--------------------------------------
**
** object 3d
**
--------------------------------------*/
/*.__obj3d-01 {
	width: 262px;
	height: 178px;
	overflow: hidden;
	position: absolute;
	top: 255px;
	left: 240px;
	z-index: 12;
	background: url(../img/obj-01.png) 0 0 no-repeat;
}
.__obj3d-01 video,
.__obj3d-01 img {
	width: 260px;
	height: auto;
	transform: rotate(-12deg);
	position: relative;
	top: 25px;
	left: 40px;
	opacity: 0.85;
}
.__obj3d-01 canvas {
	-webkit-transform: rotate(-12deg);
	transform: rotate(-12deg);
	mix-blend-mode: overlay;
	position: relative;
	top: 30px;
	left: 25px;
}
.__obj3d-02 {
	width: 210px;
	height: 142px;
	overflow: hidden;
	position: absolute;
	top: 150px;
	left: 150px;
	z-index: 11;
	background: url(../img/obj-02.png) 0 0 no-repeat;
}
.__obj3d-02 video,
.__obj3d-02 img {
	width: 180px;
	height: auto;
	position: relative;
	top: 27px;
	left: 35px;
	opacity: 0.85;
}
.__obj3d-02 canvas {
	mix-blend-mode: overlay;
	position: relative;
	top: 30px;
	left: 35px;
}*/

/*--------------------------------------
**
** logo, staff, nav
**
--------------------------------------*/
.__half-win {
	width: 60%;
	height: 100%;
	margin-left: auto;
	margin-right: 0;
	position: relative;
}
.__main-wrap {
	width: 100%;
	position: absolute;
	bottom: 1%;
	right: 50%;
	transform: translateX(50%);
	/*-webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	transform: translate(0,-50%);*/
}
header {
	position: relative;
	bottom: 15px;
}
h1 {
	max-width: 35%;
	/*width: 35%;*/
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
}
h2 {
	width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
}
h3 {
	width: 60px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
	margin-bottom: 40px;
	text-align: center;
	/*position: absolute;
	top: 25px;
	right: 30px;*/
}
h1 img,
h2 img {
	max-width: 100%;
}
,
h3 img {
	max-width: 100%;
}


/*--------------------------------------
**
** nav
**
--------------------------------------*/
.__nav-group {
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 10;
}
nav {
	position: relative;
}
nav ul {
	list-style: none;
	text-align: center;
	font-family: 'gzl-humanbold';
	font-size: 14px;
	margin-top: 0;
	margin-bottom: 0;
	padding-bottom: 0;
	padding-left: 0;
}
nav ul li {
	display: inline-block;
	width: 150px;
	/*width: calc(100% / 5);*/
	height: 40px;
	line-height: 35px;
	text-align: center;
	background: url(../img/bg-nav.png) 0 0 no-repeat;
	/*margin-left: 2px;
	margin-right: 2px;*/
	color: rgba(3,44,74,1.0);
}
nav ul li.__act {
	background: url(../img/bg-nav-g-act.png) 0 0 no-repeat;
}
nav ul li span,
nav ul li a {
	display: block;
	text-decoration: none;
	color: rgba(3,44,74,1.0);
}


/*--------------------------------------
**
** movie
**
--------------------------------------*/
.__movie {
	width: 217px;
	position: absolute;
	top: 134px;
	right: 14px;
	/*bottom: 90px;
	left: 20px;*/
	z-index:2;
}
.__movie:after {
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility: hidden;
}
.__movie .__tab {
	width: 17px;
	float: left;
}
.__movie .__thumb {
	width: 200px;
	padding: 5px;
	background: rgba(255,255,255,1.0);
	float: right;
	overflow: hidden;
}
.__movie .__thumb img {
  display:inline-block;
	width: 100%;
	vertical-align: middle;
}

/*--------------------------------------
**
** date, catchcopy
**
--------------------------------------*/
.__date {
	width: 17%;
	max-width: 200px;
	margin: -15px auto 0;
	/*position: absolute;
	bottom: 100px;
	right: 50%;
	transform: translateX(50%);*/
}
.__catchCopy {
	width: 70px;
	position: absolute;
	top: 10%;
	left: 13%;
}
.__staff {
	width: 500px;
	margin: 0 auto;
}
.__date img,
.__catchCopy img ,
.__staff img {
	max-width: 100%;
}

/*--------------------------------------
**
** present
**
--------------------------------------*/
.__present {
	width: 200px;
	position: absolute;
	top: 10px;
	right: 235px;
	z-index: 2;
}
.__present:after {
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility: hidden;
}
.__present img {
	display:inline-block;
	width: 100%;
	vertical-align: middle;
}



/*--------------------------------------*/

.__g2-ticket {
	width: 200px;
	position: absolute;
	top: 10px;
	right: 440px;
	z-index: 2;
}
.__g2-ticket:after {
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility: hidden;
}
.__g2-ticket img {
	display:inline-block;
	width: 100%;
	vertical-align: middle;
}


/*--------------------------------------
**
** banners
**
--------------------------------------*/
.__bn-wrap {
	position: absolute;
	left: 25px;
	bottom: 10px;
	/*letter-spacing: -0.4em;*/
}
/*.__banner li {
display: inline-block;
letter-spacing: normal;
width: 150px;
margin-left: 2px;
margin-right: 3px;
}*/
.__banner {
	width: 500px;
	/*width: 340px;*/
	/*width: 170px;*/
	list-style: none;
	padding-left: 5px;
	margin-left: 0;
	margin-bottom: 0;
	margin-top: 0;
	letter-spacing: -0.4em;
}
.__banner li {
	margin-left: 5px;
	margin-right: 5px;
	display: inline-block;
	letter-spacing: normal;
}
.__banner img {
	max-width: 100%;
	transition: 0.2s all;
}
.__banner img:hover {
	opacity: 0.8;
}

.__bn-BR {
	position: absolute;
	right: 10px;
	bottom: 5px;
}
.__bn-BR img {
	max-width: 100%;
	vertical-align: baseline;
	transition: 0.2s all;
}
.__bn-BR img:hover {
	opacity: 0.85;
}
.__bn-BR ul {
	list-style: none;
	letter-spacing: -0.4em;
	padding: 0;
	margin: 0;
}
.__bn-BR ul li {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 10px;
}

.__bn-TR {
	position: absolute;
	right: 7px;
	top: 5px;
}
.__bn-TR img {
	max-width: 100%;
	vertical-align: baseline;
	transition: 0.2s all;
}
.__bn-TR img:hover {
	opacity: 0.85;
}
.__bn-TR ul {
	list-style: none;
	letter-spacing: -0.4em;
	padding: 0;
	margin: 0;
}
.__bn-TR ul li {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 10px;
}

.__bn-TL {
	position: absolute;
	left: 15px;
	top: 15px;
}
.__bn-TL img {
	max-width: 100%;
	vertical-align: baseline;
	transition: 0.2s all;
}
.__bn-TL img:hover {
	opacity: 0.85;
}
.__bn-TL ul {
	list-style: none;
	letter-spacing: -0.4em;
	padding: 0;
	margin: 0;
}
.__bn-TL ul li {
	display: inline-block;
	letter-spacing: normal;
	margin-right: 10px;
}


.__bn-TR-2 {
	width: 225px;
	position: absolute;
	right: 14px;
	top: 130px;
}
.__bn-TR-2 img {
	max-width: 100%;
	vertical-align: baseline;
	transition: 0.2s all;
}
.__bn-TR-2 img:hover {
	opacity: 0.85;
}
.__bn-TR-2 ul {
	list-style: none;
	letter-spacing: -0.4em;
	padding: 0;
	margin: 0;
}
.__bn-TR-2 ul li {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 10px;
}

/*--------------------------------------
**
** anigodzi now, creators
**
--------------------------------------*/
.__special {
	position: absolute;
	right: 10px;
	bottom: 5px;
}
.__special img {
	max-width: 100%;
	vertical-align: baseline;
}
.__special ul {
	list-style: none;
	letter-spacing: -0.4em;
	padding: 0;
	margin: 0;
}
.__special ul li {
	display: inline-block;
	margin-left: 5px;
}