@charset "UTF-8";

/*
----------------------------------------------------*/
html,
body {
	height: 100%;
}

body {
	font-size: 16px;
	color: #fff;
	background: url(../images/bg.jpg) no-repeat center center fixed;
	background-size: cover;
}

/* reset */
html { overflow-y: scroll; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,p,blockquote,table,th,td { margin: 0; padding: 0; }
ul,dl,ol { text-indent: 0; }
li { list-style: none; }
.ie8 img { width: auto; }

a {
	transition: all 0.5s ease;
}

a img:hover {
	opacity: .8;
}

/*layout
----------------------------------------------------*/
#container {
	text-align: center;
	display: flex;
	justify-content: center;
	width: 100vw;
	height: 71.27vw;
	max-width: 1280px;
	max-height: 912px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	z-index: 0;
	position: relative;
}

img {
	width: 100%;
}

#title {
	width: 50%;
	height: 71.27vw;
	max-height: 912px;
	position: relative;
	background: rgba(216, 216, 216, .0);
}

#title h1 {
	width: 25vw;
	max-width: 320px;
	position: absolute;
	top: 4vw;
	left: 8vw;
	margin: auto;
}

#title h1 img {
	margin: .4vw auto;
}

#title figure {
	width: 23vw;
	max-width: 300px;
	position: absolute;
	bottom: 4vw;
	left: 8.5vw;
	margin: auto;
}

#title figure img {
	width: 100%;
}

#main {
	width: 50%;
	height: 56.25vw;
	max-height: 1080px;
	margin: 0;
	position: relative;
	z-index: 1;
}

#sticker {
	position: absolute;
	bottom: -3vw;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2000;
	width: 24vw;
	height: 24vw;
	max-width: 224px;
	max-height: 224px;
	transition: transform 0.5s ease;
}
#sticker img {
	width: 100%;
}

#sticker:hover {
	transform: translateX(-50%) rotate(-5deg) scale(1.1);
}

.page {
	color: #333;
	width: 100%;
	height: 100%;
	margin: 0 auto 40px;
	padding: 0px 0px 0px 0px;
	text-align: center;
}

.page header {
	width: 100%;
	background-size: 50%;
	z-index: 10;
}

.page main {
	padding: 0px 0 5vh 0;
}

.page h1 {
	width: 30%;
	text-align: center;
	margin: 0px auto 0px auto;
}

.page h1 img {
	width: 100%;
	height: auto;
}

.pageBody {
	margin: -60px 40px 10px 40px;
	padding: 80px 40px 20px 40px;
	background: rgba(255, 255, 255, 0.8);
	border-radius: 20px;
}

.page p {
	font-size: 14px;
	line-height: 1.8;
	margin: 0px 0px 1.8em 0px;
	text-align: left;
}

.page p.auth {
	text-align: right;
}

#footer2 {
	color: #333;
	font-family: 'Roboto', sans-serif;
	text-align: center;
	padding: 20px 40px 15px 40px;
}

#footer2 a.close {
	color: #fff;
	text-decoration: none;
	border-radius: 14px;
	background: #848da9;
	border: 1px solid #848da9;
	padding: 4px 14px;
	margin: 5px 40px 0px 40px;
}

#footer2 a.close:hover {
	color: #848da9;
	background: #fff;
	border: 1px solid #848da9;
}

#footer2 p {
	font-size: 12px;
	color: #666;
	font-family: 'Roboto', sans-serif;
	text-align: center;
	margin: 30px 20px 0px 20px;
}

@media screen and (max-width: 480px) {
	.page {
		color: #333;
		width: 100%;
		height: 100%;
		margin: 0 auto 40px;
		padding: 0px 0px 20px 0px;
		text-align: center;
	}
	.pageBody {
		margin: -60px 1em 1em 1em;
		padding: 4em 1em 2em 1em;
		background: rgba(255, 255, 255, 0.8);
		border-radius: 10px;
	}

	.page h1 {
		width: 40%;
		text-align: center;
		margin: 0px auto 0px auto;
	}
.page p {
	font-size: 14px;
	line-height: 1.5;
	margin: 0px 0px 1.5em 0px;
	text-align: left;
}

}