@charset "utf-8";
*{
	box-sizing: border-box;
}
html{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
	background-color:#FFF;
	height: 100%;
}

body{
	height: 100%;
}

section{
	position: relative;
}

#bg_wrap{
	position: relative;
	min-width: 1260px;
	background-color: #0F0F0F;
}

/* GNB */
.nav{
	position:fixed;
	top: 0;	
	width: 160px;
	height: 100%;
	background-color: rgba(0,0,0,0.6);
	overflow: hidden;
	z-index: 1000;
}

.nav > ul{
	position: relative;
	width: 160px;
	margin: 0 auto;
	overflow: hidden;
}
.nav > ul > li{
	float: left;
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 0;
}
.nav > ul > li > a{
	display: block;
	transition: all 0.3s;
}
a.menu00,a.menu01,a.menu02,a.menu03,a.menu04,a.menu05,a.menu06,a.menu07{
	background-image: url("../images/nav_bg.png");
	background-repeat: no-repeat;
	text-indent: -9999px;
}

a.menu01{
	background-position: 0 -136px;
	height: 93px;
}
a.menu01:hover, a.menu01.active{
	background-position: -160px -136px;
}
a.menu02{
	background-position: 0 -229px;
	height: 93px;
}
a.menu02:hover, a.menu02.active{
	background-position: -160px -229px;
}
a.menu03{
	background-position: 0 -322px;
	height: 93px;
}
a.menu03:hover, a.menu03.active{
	background-position: -160px -322px;
}
a.menu04{
	background-position: 0 -415px;
	height: 93px;
}
a.menu04:hover, a.menu04.active{
	background-position: -160px -415px;
}
a.menu05{
	background-position: 0 -508px;
	height: 93px;
}
a.menu05:hover, a.menu05.active{
	background-position: -160px -508px;
}
a.menu06{
	background-position: 0 -601px;
	height: 93px;
}
a.menu06:hover, a.menu06.active{
	background-position: -160px -601px;
}



.nav > div{
	position: relative;
	width: 160px;
	margin: 0 auto;
	overflow: hidden;
}
.nav > div > a{
	display: block;
	transition: all 0.3s;
}

a.menu00{
	background-position: 0 0;
	height: 136px;
}
a.menu00:hover, a.menu00.active{
	background-position: 0 0;
}

a.menu07{
	background-position: 0 -694px;
	height: 165px;
}
a.menu07:hover, a.menu07.active{
	background-position: 0 -694px;
}




/* con3 bakground color */
.header .nav, .con01 .nav, .con02 .nav, .con03 .nav{
	border-top: 1px solid rgba(15,185,234,0.4);
	background-color: rgba(15,185,234,0.8);
}

.con04 .nav{
	border-top: 1px solid rgba(250,88,0,0.4);
	background-color: rgba(250,88,0,0.8);
}



/* Layout */

.header, .con01, .con02, .con03, .con04{
	width: 100%;
	position: relative;
	overflow: hidden;
	background-attachment:fixed;
}

.pic-text{
	position: relative;
	width: 970px;
	margin: 0 auto;
	text-align: center;
	transform: translateX(40px);
}

.imgC{
	position: absolute;
	left: 50%;
	width: 202px;
	height: 150px;	
}
.imgC a{
	display: block;
	line-height: 150px;
	text-indent: -9999px;
	cursor: pointer;
	background-image: url("../images/zoom_icon.svg");
	background-repeat: no-repeat;
	background-color: rgba(0,0,0,0.0);
	background-position: 170px 118px;
	background-size: 24px 24px;
	transition: all 0.3s;
}
.imgC a:hover{
	background-color: rgba(0,0,0,0.7);
	background-position: center center;
	background-size: 30px 30px;
}


.imgpos01{
    top: 572px;
	transform: translateX(-460px);
}
.imgpos02{
    top: 572px;
	transform: translateX(-232px);
}
.imgpos03{
    bottom: 1528px;
	transform: translateX(31px);
}
.imgpos04{
    bottom: 1528px;
	transform: translateX(260px);
}

.header{
	background: url(../images/header_bg.jpg) top center no-repeat #191c26;
}
.header .logo{
	position: absolute;
	width: 106px;
	height: 86px;
	top: 38px;
	left: 50%;
	margin-left: -560px;
}

.header .scroll-circle{
	position: absolute;
	width: 7px;
	height: 7px;
	bottom: 148px;
	left: 50%;
	margin-left: -4px;
	border-radius: 50%;
	background-color: #2eb6fd;
}

.con01{
	background: url(../images/con01_bg.jpg) top center no-repeat #020304;
}

.con02{
	background: url(../images/con02_bg.jpg) no-repeat center;
}

.con03{
	background: url(../images/con03_bg.jpg) no-repeat center;
}

.con04{
	background: url(../images/con04_bg.jpg) no-repeat center;
}

.con05{
	background: url(../images/con05_bg.jpg) no-repeat top center #181410;
}

.con06{
	background: url(../images/con06_bg.jpg) no-repeat center #0d0804;
}



/* Button */
.btn-more-right{
	position: absolute;
	right: 50%;
	bottom: 84px;
	width: 98px;
	height: 85px;
	transform: translateX(600px);
}
.btn-more-right a{
	display: block;
	line-height: 98px;
	text-indent: -9999px;
	background-image: url("../images/btn_more_right.png");
	background-position: 0 0;
	background-repeat: no-repeat;
	opacity: 0.7;
	transition: 0.2s all;
}
.btn-more-right a:hover{
	opacity: 1;
}



.btn{
	position: absolute;
	left: 50%;
	width: 362px;
	height: 101px;
}
.btn a{
	display: block;
	line-height: 101px;
	text-indent: -9999px;
	background-position: 0 0;
	background-repeat: no-repeat;
}

.btn a:hover{
	background-position: 0 -101px;
}

.btn-more-01 a{
	background-image: url(../images/btn_more_01.png);
}
.btn-more-02 a{
	background-image: url(../images/btn_more_02.png);
}

.btn-member-01{
	top: 0;
	margin-left: -181px;
}
.btn-member-01 a{
	background-image: url(../images/btn_member_01.png);
}

.btn-small{
	position: absolute;
	left: 50%;
	width: 308px;
	height: 76px;
}
.btn-small a{
	display: block;
	line-height: 76px;
	text-indent: -9999px;
	background-position: 0 0;
	background-repeat: no-repeat;
}

.btn-small a:hover{
	background-position: 0 -76px;
}

.btn-blue a{
	background-image: url(../images/btn_more_blue.png);
}
.btn-pink a{
	background-image: url(../images/btn_more_pink.png);
}
.btn-yellow a{
	background-image: url(../images/btn_more_yellow.png);
}
.btn-green a{
	background-image: url(../images/btn_more_green.png);
}
.btn-seaseon16 a{
	background-image: url("../images/btn_more_season16.png");
}
.btn-seaseon-etc a{
	background-image: url("../images/btn_more_season-etc.png");
}

.btn-top{
	position: absolute;
	bottom: 6px;
	left: 50%;
	width: 60px;
	height: 60px;
	margin-left: 540px;
	z-index: 1000;
}
.btn-top a{
	display: block;
	line-height: 60px;
	text-indent: -9999px;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-image: url(../images/btn_top.png);
}


/*init*/
ul li{
	list-style-type:none;
}

h3{text-align: center;}

.wrap{
	width: 100%;
}


/***footer***/
footer{
	position: relative;
    width: 100%;
    height: auto;
	overflow: hidden;
    font-size: 12px;
	margin: 20px 0 40px;
	color: #eeeeee;
}
#footer{
	position: relative;
	width: 1100px;
	margin:0 auto;
	text-align: center;
	overflow: hidden;
}
.logo-n-copyrigt{
	position: relative;
	margin-bottom: 20px;
}

.cookie-check{
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
}
.logo-n-copyrigt img{
	vertical-align: middle;
	padding-right: 10px;
}


.footer_wrap{
	width: 1100px;
    height: auto;
    margin: 0 auto;
    padding-top: 5px;
    vertical-align: middle;
    text-align: center;
}


footer .txt_copy {
    display: inline-block;
    vertical-align: middle;
}

.f_nav{
	clear:both;
	width:100%;
	text-align: center;
	margin-top:15px;
}

/* SNS */
.login_openid_btn{height:24px; list-style:none outside none; overflow:hidden;}
.login_openid_btn li{float:left; height:48px; width:24px; margin-right:2px; overflow:hidden;}
.login_openid_btn .imgsp {background:url("../images/sns_btn.png") no-repeat; display:block; height:0; overflow:hidden; padding:24px 0px 0px 0px; text-align:left; vertical-align:middle;}
.login_openid_btn .btn_google{background-position: 0 0;}
.login_openid_btn .btn_google:hover{background-position:0 -24px;}
.login_openid_btn .btn_yahoo{background-position:-26px 0;}
.login_openid_btn .btn_yahoo:hover{background-position:-26px -24px;}
.login_openid_btn .btn_twitter{background-position:-52px 0;}
.login_openid_btn .btn_twitter:hover{background-position:-52px -24px;}
.login_openid_btn .btn_facebook{background-position:-78px 0;}
.login_openid_btn .btn_facebook:hover{background-position:-78px -24px;}
.login_openid_btn .btn_mixi{background-position:-104px 0;}
.login_openid_btn .btn_mixi:hover{background-position:-104px -24px;}
.regist-block{padding:14px 0px 30px 0px;width:636px;margin:auto;}
.regist-block div{float:left;}
.regist-block div.chara{float:right;}
.regist-block .sns{padding:9px 19px 0px 19px;}
*html .regist-block .sns{width:128px;}


/* Cookie Check */
/* checkbox */

input[type=checkbox] {
    display: none;
}
.checkbox02 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 38px;
    position: relative;
    width: auto;
	margin-top: 101px;
    margin-left: 22px;
	font-size: 18px;
	font-weight: bold;
}
.checkbox02::before {
    background: #e3d5a7;
    border: 1px solid #a18a72;
    border-radius: 3px;
    content: '';
    display: block;
    height: 20px;
    left: 5px;
    margin-top: -12px;
    position: absolute;
    top: 50%;
    width: 20px;
}
.checkbox02::after {
    border-right: 6px solid #ff0000;
    border-bottom: 3px solid #ff0000;
    content: '';
    display: block;
    height: 20px;
    left: 8px;
    margin-top: -18px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 9px;
}
input[type=checkbox]:checked + .checkbox02::before {
    border-color: #666;
}
input[type=checkbox]:checked + .checkbox02::after {
    opacity: 1;
}


/***clearfix***/
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

.hidden{
	display: none;
}



/* animation */

.countinfinite{
	animation-iteration-count: infinite;/*無限ループ*/
   }
   
.fadeDown {
animation-name: fadeDownAnime;/*アニメーションの定義名*/
animation-duration:1s;/*アニメーション変化時間 ※デフォルト*/
animation-fill-mode:forwards;/*アニメーションの開始と終了時の状態を指定*/
opacity:0;
}

@keyframes fadeDownAnime{
	from {
	opacity: 0;
	transform: translateY(0);
	}

	to {
	opacity: 1;
	transform: translateY(14px);
	}
}


/* modal style */
.modal {
	display: none;
	z-index: 1000;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.6);
}

.modal button {
	position: absolute;
	top: 3rem;
	right: 3rem;
	background: transparent;
	border: 0;
	color: #ffffff;
	font-size: 3rem;
    cursor: pointer;
    transition: all 0.2s ease-out;
}
.modal button:hover{
    transform: rotate(90deg);
}

.modalBox {
	position: relative;
	top: 20%;
	left: 50%;
	transform: translate(-50%, -20%);
	width: 70%;
	height: auto;
	text-align: center;
}

.modalBox img {
	width: 100%;
    max-width: 780px;
    height: auto;
	border: solid 3px rgba(255, 255, 255, 0.6);
}

.modalBox p {
	color: #ffffff;
	background-color: #000;
	font-size: 2rem;
	padding: .2rem;
}
