﻿@charset 'UTF-8';

body	{font-family: 'Arial', 'Helvetica', sans-serif;
	background-color: #e5e5e5;
	margin: 0}

a	{ color: #017acd; }


figure	{margin: 0}

/* Container */
div#container	{
	width: auto;
	margin-left: auto;
	margin-right: auto;
	background-color: #ffffff;
	padding: 0 40px;
	-webkit-box-shadow: 0px 0px 50px #bbbbbb;
	box-shadow: 0px 0px 50px #bbbbbb;
	position: relative;
	overflow: hidden;
	}

/* ====== for Tablet ====== */
@media only screen and (min-width: 600px) and (max-width:899px) {

	div#container	{width: 100%;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		padding: 0 10px;
		/*background-position: -3px 380px, 100px 460px;*/
		}


}

/* ====== for Phone ====== */
@media only screen and (max-width:599px) {

	div#container {
		width: 100%;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		padding: 0 10px;
/*		background-position: -3px 220px, 100px 280px;*/
		}
}



/* Page Header */
header	{
	clear: both;
	height: 55px;
	position: relative;
}

header img { 
	position: absolute;
	height: 45px;
	top: 5px;
}

header ul {
	position: absolute;
	top: 30px;
	right: 5px;
	height: 30px;
	margin: 0;
}

header ul li {
	width: auto;
	list-style-type: none;
	float: left;
	font-size: 14px;
	padding-left: 20px;
}

header ul li a {
	color: #000000;
	text-decoration: none;
}
header ul li a:hover {color: #2f868b;}

/* ====== for Tablet ====== */
@media only screen and (min-width: 600px) and (max-width:899px) {
	header ul li {
		font-size: 14px;
		padding-left: 20px;
	}
}

/* ====== for Phone ====== */
@media only screen and (max-width:599px) {
	header ul {
		position: absolute;
		top: 37px;
		right: 0px;
	}
	header ul li {
		font-size: 12px;
		padding-left: 10px;
	}
	header img { 
		top: 0px;
	}
}



/* ------------------------------------------
Stage of Mirage
-------------------------------------------*/
.stage{
	position: relative;
	width: 100%;
	height: 85vh;
	height: -moz-calc(100vh - 120px);
	height: -webkit-calc(100vh - 120px);
	height: calc(100vh - 120px);
	overflow: hidden;
	border-radius: 0px;
}
.stage > div{
 

	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
 	border-radius: 5px;
	color: transparent;		
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: none;
}

p.stage_title {
	font-family: 'Pattaya', sans-serif;
	font-size: 60px;
	line-height: 60px;
	padding: 10px 150px 0 10px;
	margin: 5px; 
	position: absolute;
   	top: 0px;
	left: 0px;
	font-weight: 0;
	color: #fff;
	text-shadow: 4px 4px 8px rgba(0,0,0,0.8);
}
p.stage_author {
	family: 'Arial Narrow', Arial, sans-serif;
	font-size: 20px;
	line-height: 20px;
	padding: 5px;
	margin: 5px; 
	position: absolute;
   	bottom: 0px;
	right: 115px;
	font-weight: 400;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	text-align: right;
}
.stage img {
	float: left;
	height: 20px;
	padding: 5px;
	margin: 5px; 
	position: absolute;
   	bottom: 0px;
	right: 0px;
}

/* ====== for Tablet ====== */
@media only screen and (min-width: 600px) and (max-width:899px) {
	p.stage_title {
		font-size: 40px;
		line-height: 40px;
		text-shadow: 4px 4px 6px rgba(0,0,0,0.8);
	}
}

/* ====== for Phone ====== */
@media only screen and (max-width:599px) {
	p.stage_title {
		font-size: 25px;
		line-height: 25px;
		text-shadow: 4px 4px 4px rgba(0,0,0,0.8);
	}
}

.stage1 {
	background: url(https://livecraft.securesite.jp/broadcast/mirage_image1.jpg) no-repeat;

	-webkit-animation: FRAME_Image1 60s linear infinite;
	-moz-animation: FRAME_Image1 60s linear infinite;
	-o-animation: FRAME_Image1 60s linear infinite;
	-ms-animation: FRAME_Image1 60s linear infinite;

	animation: FRAME_Image1 60s linear infinite;
}
.stage2{
	background: url(https://livecraft.securesite.jp/broadcast/mirage_image2.jpg) no-repeat;

	-webkit-animation: FRAME_Image2 60s linear infinite;
	-moz-animation: FRAME_Image2 60s linear infinite;
	-o-animation: FRAME_Image2 60s linear infinite;
	-ms-animation: FRAME_Image2 60s linear infinite;

	animation: FRAME_Image2 60s linear infinite;
}
.stage3{
	background: url(https://livecraft.securesite.jp/broadcast/mirage_image3.jpg) no-repeat;

	-webkit-animation: FRAME_Image3 60s linear infinite;
	-moz-animation: FRAME_Image3 60s linear infinite;
	-o-animation: FRAME_Image3 60s linear infinite;
	-ms-animation: FRAME_Image3 60s linear infinite;

	animation: FRAME_Image3 60s linear infinite;
}

.info1{
	-webkit-animation: FRAME_Info1 60s linear infinite;
	-moz-animation: FRAME_Info1 60s linear infinite;
	-o-animation: FRAME_Info1 60s linear infinite;
	-ms-animation: FRAME_Info1 60s linear infinite;
	
	animation: FRAME_Info1 60s linear infinite;
}
.info2{
	-webkit-animation: FRAME_Info2 60s linear infinite;
	-moz-animation: FRAME_Info2 60s linear infinite;
	-o-animation: FRAME_Info2 60s linear infinite;
	-ms-animation: FRAME_Info2 60s linear infinite;

	animation: FRAME_Info2 60s linear infinite;
}
.info3{
	-webkit-animation: FRAME_Info3 60s linear infinite;
	-moz-animation: FRAME_Info3 60s linear infinite;
	-o-animation: FRAME_Info3 60s linear infinite;
	-ms-animation: FRAME_Info3 60s linear infinite;

	animation: FRAME_Info3 60s linear infinite;
 }


.stage-description {
	position: relative;
}

.stage-description h1 {
	margin: 3px 0 0 0;
	padding: 0;
	font-size: 16px;
	height: 16px;
	}
.stage-description p {
	font-size: 12px;
/*	height: 12px;
	padding-bottom: 10px;
*/
}
.stage-description img {
	position: absolute;
	height: 20px;
   	top: 1px;
	right: 0px;
}


@keyframes FRAME_Image1{
 0% { transform: rotate(-5deg) scale(1.5); opacity: 1;
	animation-timing-function: ease;
 }
 45% {
	transform: rotate(0deg) scale(1.0); opacity: 1;
	animation-timing-function: ease;
 }
 50% {
	opacity: 0;
 }
 90% {
	transform: rotate(-5deg) scale(1.5); opacity: 1;
	animation-timing-function: ease;
 }
 100% {
	transform: rotate(-5deg) scale(1.5); opacity: 1;
	animation-timing-function: ease;
 }
}

@keyframes FRAME_Image2{
 0% { opacity: 0;
	/*animation-timing-function: ease;*/
 }
 20% {
	transform: rotate(0deg) scale(1.4) translateY(-20px); opacity: 0;
	animation-timing-function: ease;
 }
 55% {
	opacity: 1;
/*	animation-timing-function: ease;*/
 }
 70% {
	transform: rotate(0deg) scale(1.0) translateY(0); opacity: 1;
	animation-timing-function: ease;
 }
 80% {
	transform: rotate(0deg) scale(1.0); opacity: 0;
/*	animation-timing-function: ease;*/
 } 
 100% {
	transform: rotate(0deg) scale(1.0); opacity: 0;
/*	animation-timing-function: ease;*/
 }
}

@keyframes FRAME_Image3{
 0% { opacity: 0.5;
 	animation-timing-function: linear;
}
 10% { opacity: 0;
 }

 55% {
	transform: rotate(3deg) scale(1.5) translateX(-20px); opacity: 0;
	animation-timing-function: ease;
 }
 
 70% {
	opacity: 1;
	animation-timing-function: ease;
 }
 
 99% {
	transform: rotate(0deg) scale(1.0) translateX(0px); 
	opacity: 1;
	animation-timing-function: linear;
 }

 100% {
	opacity: 0.5;
 }
 
}


@keyframes FRAME_Info1{
 0% { transform: translateX(100px); opacity: 0.0;
	animation-timing-function: ease;
 }
 20% {
	transform: translateX(0); opacity: 1;
/*	animation-timing-function: linear;*/
 }
 30% {
	opacity: 0;
	animation-timing-function: ease;
 }
 32% {
	opacity: 0;
 }
 100% {
	opacity: 0;
/*	animation-timing-function: ease;*/
 }
 
}

@keyframes FRAME_Info2{
 0% { opacity: 0;
	/*animation-timing-function: ease;*/
 }
/* 
31% {
	opacity: 0;
/*	animation-timing-function: linear; steps(0);
 }
*/
30% {
	transform: translateY(50px); opacity: 0.0;
	animation-timing-function: ease;
 }
55% {
	transform: translateY(0); opacity: 1;
	animation-timing-function: ease;
 } 
 
61% {
	opacity: 0;
	animation-timing-function: linear;
 }
 
62% {
	opacity: 0;
/*	animation-timing-function: ease;*/
 } 
100% {
	opacity: 0;
/*	animation-timing-function: ease;*/
 }
}

@keyframes FRAME_Info3{
 0% { opacity: 0;
/*	animation-timing-function: ease;*/
 }
 60% {
	opacity: 0;
	animation-timing-function: linear; /*steps(5);*/
 }
 70% {
	opacity: 1;
/*	animation-timing-function: ease; /*steps(5);*/
 }
 99% {
	opacity: 0;
	animation-timing-function: linear; /*steps(5);*/
 }
 100% {
	opacity: 0;
/*	animation-timing-function: ease;*/
 }
}






/* Contents */
article	{
	width: auto;
	margin-left: auto;
	margin-right: auto;
	}

article p {
	font-size: 16px;
	line-height: 1.6;
	margin: 10px 0 0 0;
	}



/* Contents Menu*/
.article-menu {
	clear: both;
	border: solid 1px #aaaaaa;
	margin: 10px 0 0;
	padding: 20px;
	border-radius: 5px;
	overflow: hidden;
}

.article-menu h2 {
	background: none;
	font-size: 22px;
	line-height: 22px;
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 20px;
	margin-left: 0;
	margin-right: 0;
}

.article-menu a	{
	color: #000000;
	text-decoration: none;
}


/* Image layout */
.article-menu img {
	height:165px;
	}

.article-menu:nth-of-type(even) figure {
	float: right;
	margin-left: 15px;
	margin-bottom: 0;
	}

.article-menu:nth-of-type(odd) figure {
	float: left;
	margin-right: 15px;
	margin-bottom: 0;
	}

.article-menu figcaption {
	color: #666666;
	font-size: 12px;
	display: block;
	}

.article-menu:nth-of-type(even) figcaption {
	text-align: right;
	}

/* ====== for PC ====== */
@media only screen and (min-width:900px) {

	/* 2 rows */
	div.headline {

		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		}

	.article-menu {
		width: 440px;
		width: -moz-calc(100% / 2);
		width: -webkit-calc(100% / 2);
		width: calc(100% / 2);
		margin-right: 10px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		overflow: visible;
		}

	.article-menu h2 {
		height: 48px;
		line-height: 1.2;
		}

	.article-menu:nth-of-type(1n) figure {
		float: none;
		text-align: center;
		margin: 0;
		}

	.article-menu:nth-of-type(1n) figcaption {
		text-align: center;
		margin-bottom: 15px;
		}

	/* 2 rows IE8,9 & Opera */
	.article-menu {
		clear: none;
		float: left;
		position: relative;
		}

	.article-menu + .article-menu	{margin-right: 0}

}

/* ====== for Phone ====== */
@media only screen and (max-width:599px) {
	article header h2	{float: none}

	article header p	{margin: 0}

	.article-menu:nth-of-type(1n) figure {
		float: none;
		margin: 0;
		text-align: center;
		display: block;
		}

	.article-menu:nth-of-type(1n) figcaption {
		text-align: center;
		margin-bottom: 15px;
		}
}



/*ボトム*/
.article-bottom {
	clear: both;
	border: solid 1px #aaaaaa;
	margin: 20px 0 0 0;
	padding: 20px;
	border-radius: 5px;
	overflow: hidden;
/*
	-webkit-box-shadow: 0px 2px 3px #cccccc, 0px 0px 4px 3px #ffffff inset;
	box-shadow: 0px 2px 3px #cccccc, 0px 0px 4px 3px #ffffff inset;
*/
}

.article-bottom img {
	height: 100px;
	float:left;
	padding-right: 10px;
}

.article-bottom h1 {
	font-size: 24px;
	font-weight: bold;
	margin: 20px 0 0 30px;
}
.article-bottom h2 {
	font-size: 16px;
	font-weight: normal;
	margin: 0 0 20px 30px;
}
.article-bottom span {
	font-weight: bold;
	color: #2f868b;
	margin: 0;
}
.article-bottom p {
	font-size: 16px;
	margin: 0;
}

/* Menu */
nav {clear: both}

nav ul {
	font-size: 16px;

	padding-left: 0;
	margin: 10px 0 0 0;
	height: 30px;
	background-color: #333333;
	border-radius: 5px;
	
	background: -webkit-gradient(linear, left top, left bottom, from(#777777), color-stop(50%, #444444), color-stop(50%, #333333), to(#555555));
	background: -webkit-linear-gradient(#777777 0%, #444444 50%, #333333 51%, #555555 100%);
	background: -moz-linear-gradient(#777777 0%, #444444 50%, #333333 51%, #555555 100%);
	background: -o-linear-gradient(#777777 0%, #444444 50%, #333333 51%, #555555 100%);
	background: -ms-linear-gradient(#777777 0%, #444444 50%, #333333 51%, #555555 100%)
	
	}

nav ul li {
	list-style-type: none;
	float: left;
	}

nav ul li a {
	display: block;
	width: 150px;
	line-height: 30px;
	text-decoration: none;
	text-align: center;
	color: #ffffff;
	border-right: solid 1px rgba(255,255,255,0.2);
	}

nav ul li a:hover {background-color: rgba(47,134,139,0.6)}

nav ul li:first-of-type a:hover	{border-radius: 5px 0 0 5px}

/* ====== for Tablet ====== */
@media only screen and (min-width: 600px) and (max-width:899px) {
	nav ul {font-size: 14px}
	nav ul li a {width: 100px}
}

/* ====== for Phone ====== */
@media only screen and (max-width:599px) {
	nav ul {
		font-size: 12px;
		}

	nav ul li a {
		width: auto;
		display: inline-block;
		padding: 0 10px;
		}
}

/* Back to the top */
span.to_top { position:fixed; bottom:10px; left:10px }







/* Footer */
footer {
	color: #888888;
	margin-top: 25px;
	padding-top: 8px;
	padding-bottom: 8px;
	clear: both;
	border-top: solid 1px #aaaaaa;
}

small {
	font-size: 10px;
	font-style: normal;
	text-align: left;
	display: block;
}

small::before {
	content: 'LiveCraft !';
	display: block;
	width: 200px;
	padding: 10px 0;
	background-color: #ffdd00;
	color: #000000;
	font-family: 'Righteous', cursive;
	font-size: 16px;
	text-align: center;
	position: absolute;
	right: 0;
	bottom: 0;
	-webkit-transform: rotate(-45deg) translate(62px, 20px);
	-moz-transform: rotate(-45deg) translate(62px, 20px);
	-o-transform: rotate(-45deg) translate(62px, 20px);
	-ms-transform: rotate(-45deg) translate(62px, 20px);
}



