@charset "utf-8";

body {
	font-family: 'Noto Sans Japanese', sans-serif;
	background:#000;
}

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

a {
    outline: none;
}


/***** gnav *****/
#gnav {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	min-width:1000px;
	height:70px;
	background:url(../img/gnav_bg.jpg) top left;
	z-index:1000;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;
}

.nav-toggle {
	display:none;
}

#gnav > a {
	display:block;
	position:relative;
	float:left;
	margin:25px 0;
	padding:0 20px;
	border-left:1px solid rgba(255,255,255,0.4);
}

#gnav a:nth-of-type(1) {
	border-left:none;
}

#gnav a img {
	height:20px;
}

#gnav a img.on {
	position:absolute;
	top:0px;
	left:20px;
	opacity:0;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;	
}

#gnav a:hover img.on,
#gnav a.here img.on {
	opacity:1;
}
#gnav .cs:hover img.on {
	opacity:0;
}

#gnav .cs {
	cursor:default;
}
#gnav .cs img {
	opacity:0.4;
}

#gnav h2 .logo {
	float:right;
	margin-top:15px;
	margin-right:15px;
	border-left:none;
}
#gnav h2 .logo img {
	height:40px;
}

@media screen and (max-width: 768px) {

#gnav {
	min-width:100%;
}

.nav-toggle {
	display:block;
    position: fixed;
    top: 22px;
    left: 15px;
    z-index: 2001;
    padding: 10px 35px 16px 0px;
	margin:0;
    cursor: pointer;
}
.nav-toggle:focus {
    outline: none;
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
    content: '';
    position: absolute;
    display: block;
    width: 35px;
    height: 3px;
    border-radius: 1px;
    background: #fff;
    cursor: pointer;
	box-shadow: 1.5px 1.5px 1.5px 1px rgba(2,2,2,0.2);
}
.nav-toggle span:before {
    top: -12px
}
.nav-toggle span:after {
    bottom: -12px
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.nav-toggle.active span {
    background-color: transparent;
	box-shadow:none;
}
.nav-toggle.active span:before, .nav-toggle.active span:after {
    top: 0;
}
.nav-toggle.active span:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.nav-toggle.active span:after {
    top: 10px;
    -webkit-transform: translateY(-10px) rotate(-45deg);
    -ms-transform: translateY(-10px) rotate(-45deg);
    transform: translateY(-10px) rotate(-45deg);
}

#gnav > a {
	display:none;
}

}


/***** drawer *****/

.drawer {
	position:fixed;
	top:0;
	left:0;
	width:260px;
	height:100%;
	background:rgba(0,0,0,0.95);
	z-index:2000;
	overflow-y:auto;
}

.drawer_status {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}
.drawer_status.open {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}

.drawer > a {
	display:block;
	position:relative;
	margin:15px 0;
	padding:0 20px;
}

.drawer a:nth-of-type(1) {
	margin-top:70px;
	border-left:none;
}

.drawer a img {
	height:20px;
}

.drawer a img.on {
	position:absolute;
	top:0px;
	left:20px;
	opacity:0;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;	
}

.drawer a:hover img.on,
.drawer a.here img.on {
	opacity:1;
}
.drawer .cs:hover img.on {
	opacity:0;
}

.drawer .cs {
	cursor:default;
}
.drawer .cs img {
	opacity:0.4;
}






/***** container *****/
.container {
	width:100%;
	min-width:1000px;
	min-height:500px;
	padding:100px 0 50px;
}

.container .inner {
	width:980px;
	margin:0 auto;
}

@media screen and (max-width: 768px) {

.container {
	min-width:100%;
	min-height:auto;
}

.container .inner {
	width:94%;
}

}



/***** footer *****/
.footer {
	position:relative;
	width:100%;
	height:200px;
	margin-bottom:-16px;
	background:#000;
	z-index:2;
}

.set_bn {
	position:absolute;
	top:30px;
	left:50%;
	width:880px;
	height:65px;
	margin:0 0 0 -440px;
}
.set_bn a {
	display:inline-block;
	margin:8px;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -ms-transition: 0.4s;
    transition: 0.4s;	
}
.set_bn a:hover {
	opacity:0.6;
	-webkit-filter: saturate(250%);
	-moz-filter: saturate(250%);
	-o-filter: saturate(250%);
	-ms-filter: saturate(250%);
	filter: saturate(250%);
}
.set_bn img {
	display:block;
	width:200px;
	height:65px;
}

.copyright {
	position:absolute;
	bottom:20px;
	left:0;
	width:100%;
	height:30px;
	text-align:center;
	color:#fff;
	font-size:14px;
}

@media screen and (max-width: 900px) {

.footer {
	height:280px;
}
.set_bn {
	width:660px;
	margin:0 0 0 -330px;
}

}

@media screen and (max-width: 680px) {

.footer {
	height:280px;
}

.set_bn {
	width:440px;
	height:auto;
	margin:0 0 0 -220px;
}

.set_bn a {
	margin:0 8px 16px;
}

}

@media screen and (max-width: 500px) {

.footer {
	height:230px;
}

.set_bn {
	width:320px;
	height:auto;
	margin:0 0 0 -160px;
}

.set_bn img {
	display:block;
	width:140px;
	height:auto;
}

}

.fancybox-close {
	top: 10px;
	right: 10px;
}



/***** youtube close btn *****/

.yt_close {
	top:10px;
	right:80px;
	background-color:rgba(255,255,255,0.3);
}






