@charset "UTF-8";

/* common
--------------------*/
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);


::selection {
    background: #fff;
    color: #222;
}
body::before {
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100vw;
    height:100vh;
	background: url("../img/index/bg.png") no-repeat #080808;
	-webkit-background-size:cover;
    background-size:cover;
    content:"";
}


.bodyCover{
	pointer-events: none;
	position:fixed;
	width: 1000vw;
	height: 200vh;
/*	filter: blur(50px);*/
	background: #000;
	z-index: 1005;
	top:100vh;
	left:-100vw;
	opacity:0;
	transition: 1.2s;
	transform: rotate(-5deg);
}


.bodyCover.on {
	transition: 0.7s;
	top: -10vh;
	opacity:1.0;
/*    filter: blur(50px);*/
    opacity: 1.0;
	transform: rotate(0deg);
}


//Firefox
::-moz-selection {
    background: #000;
    color: #fff;
}

.spnone{
	display: none;
}

section.mainWrap{
	opacity: 1.0;
	transition: 0.9s;
	filter:blur(0px);
}

small{
	font-size: 11px;
}

#sp{
	display: none;
}

a{color: #1196fc;}

html{
	-webkit-font-smoothing: antialiased;
-webkit-backface-visibility: hidden; 
}
html,body{
	height: 100vh;
	width: 100vw;
	font-size: 3.2vw;
	line-height:2.0;
	letter-spacing: 0.02em;
}
section.mainWrap.act{
	transform: scale(1.0);
	transition: 0.4s;
	filter:blur(7px);
	opacity:0;
}




body.act:after{
	opacity:1.0;
	transition: 0.7s;
	z-index:1000;
}

h1{
	margin: 0;
    color: #fff;
    letter-spacing: 7px;
    font-weight: 200;
    line-height: 1.25;
	position:relative;
	z-index:90;
}

h1 img{
	margin-top: 9.33333vw;
	height: 3.128vw;
}



p.moreLink{
	width: 100%;
	text-align: center;
	margin-top: 35px;
	opacity:0;
	position: relative;
}

ul.item{
    position: fixed;
    right: 5vw;
    top: 10vw;
    width: 7vw;
    height: 6vw;
	display: block;
	z-index: 10;
}

.on p.moreLink{
	opacity:1.0;
	transition: 2.0s all;
}

p.moreLink a{
	color: #333333;
	font-size: 14px;
	font-family: "Times New Roman", Times, "serif";
	border-bottom: 1px solid #333;
	padding: 0 3px 4px;
	overflow-x: hidden;
}

p.moreLink a:hover{
	border-bottom: 1px solid #9d001a;
	color: #9d001a;
	transition: 0.3s all;
}

h3.cmn{
	font-size: 22px;
	font-weight: 800;
	margin-top: 53px;
	margin-bottom: 35px;
}

.gothic{
	font-family :YuGothic, 'Yu Gothic', sans-serif;
}

.spnone{
	display: none;
}

/* header
--------------------*/


#wrap{
	width: 100%;
	margin: 0 auto;
	background: #f1f1f1;
}

#wrap .wrapInner{
	width: 1024px;
	margin: 0 auto;
}

header{
	position: fixed;
	left:0%;
	top:0;
	z-index: 1000;
	width: 100%;
}

header .inner{
	width: 1024px;
	margin: 0 auto;
}

header h1 {
	text-align: center;
    width: 30vw;
    margin: auto;
}


header h1 span{
	display: none;
}

header div.headerRight{
	float: right;
}

header .gnav{
	text-align: right;
	margin-right: 68px;
	line-height: 10px;
	display: none;
}

header .gnav:first-child{
	margin: 15px 68px 17px 0;
}

header .gnav li{
/*	font-size: 10.5px;*/
	font-size: 13px;
	display: inline-block;
	margin-left: 15px;
}

header .gnav li a{
	color: #989898;
	opacity: 1.0;
	transition: 0.3s all;
}

header .gnav li a:hover{
	color: #9d001a;
	transition: 0.3s all;
}

header .headerRight{
	float: left;
}

header .gnav .current a{
	color: #fff;
}

header ul.item li{
	position: fixed;
	width: 4vw;
	height: 0.2666666vw;
	background: #fff;
	right: 5.3333333vw;
	z-index:5;
	z-index:500;
	
}

header ul.item li:nth-child(1){
	top: 10.133333333vw;
	transform: rotate(0);
	transition: 0.3s;
}
header ul.item li:nth-child(2){
	top: 11.466666666vw;
	transform: rotate(0);
	transition: 0.3s;
}

header ul.item.on li:nth-child(1){
	top: 10.79999vw;
	transform: rotate(45deg);
	transition: 0.3s;
}

header ul.item.on li:nth-child(2){
	top: 10.79999vw;
	transform: rotate(-45deg);
	transition: 0.3s;
}


header .gnavSp{
	padding: 4.5vw 8.53333vw;
	background: rgba(12,12,16,0.95);
	height: 100vh;
    height: 100svh;
	width: 100vw;
	position:fixed;
	top:0;
	left:0;
	line-height: 1.6;
	opacity:0;
	pointer-events:none;
	transition: 0.5s;
	transform: scale(0.95);
    display: flex;
    align-items: center;
	transform: rotateY(6deg) rotateX(6deg) skew(0deg, 6deg) !important;
}

header .gnavSp.on{
	transform: scale(1.0);
	transition: 0.5s;
	opacity:1.0;
	pointer-events: auto;
	transform: rotateY(0) rotateX(0) skew(0, 0) !important;
}

header .gnavSp a{
	font-size: 8.5333333vw;
	color: #fff;
	font-weight: 200;
}

header .gnavSp li{
	margin-left:1vw;
	opacity:0;
	transition: 0.3s;
}
header .gnavSp li a img{
    height: 5vw;
    margin-left: 1.5vw;
    margin-bottom: 0.5vw;
}

header .gnavSp li:nth-child(2){transition-delay:0.03s;}
header .gnavSp li:nth-child(3){transition-delay:0.06s;}
header .gnavSp li:nth-child(4){transition-delay:0.09s;}
header .gnavSp li:nth-child(5){transition-delay:0.12s;}
header .gnavSp li:nth-child(6){transition-delay:0.15s;}
header .gnavSp li:nth-child(6){transition-delay:0.18s;}

header .gnavSp.on li:nth-child(1){margin-left:0; opacity:1.0; transition:0.3s;}
header .gnavSp.on li:nth-child(2){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.05s;}
header .gnavSp.on li:nth-child(3){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.1s;}
header .gnavSp.on li:nth-child(4){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.15s;}
header .gnavSp.on li:nth-child(5){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.2s;}
header .gnavSp.on li:nth-child(6){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.25s;}
header .gnavSp.on li:nth-child(7){margin-left:0; opacity:1.0; transition:0.3s; transition-delay: 0.3s;}



/* #footer
--------------------*/

#pageTop{
	margin-top: 55px;
	text-align: center;
	background: #4d4d4d;
	padding: 15px 0;
	width: 100%;
	transition: 0.3s all;
	
}

#pageTop:hover{
	opacity: 0.9;
	transition: 0.3s all;
}

#pageTop img{
	height: 10px;
}

footer{
    width: 100vw;
    color: #989898;
    font-size: 10px;
    text-align: center;
    padding: 12vw 6vw;
}

footer a{
	color: #989898;
	opacity:1.0;
	transition: 0.3s all;
}


footer a:hover{
	color: #9d001a;
	transition: 0.3s all;
}

footer .sns a:hover{
	opacity: 0.7;
	transition: 0.3s all;
}

footer .inner{
	width: 820px;
	margin: 0 auto;
}

footer ul{
	margin-bottom: 28px;
}

footer .column1, footer .column2{
	float: left;
}
footer .column3{
	float: right;
}

footer .column1 {
	width: 240px;
	padding-top: 38px;
}
footer .column1 li{
	display: inline-block;
	margin-right: 15px;
	margin-bottom: 15px;
}
footer .column1 p{
	margin-bottom: 10px;
}

footer .column2{
	padding-top: 122px;
	padding-left: 160px;
}

footer .column2 img{
	height: 68px;
}

footer .column3{
	margin-top: 85px;
}

footer .column3 ul.sns li{
	display: inline-block;
	margin-left: 4px;
}

footer p.copy{
	width: 100%;
	font-size: 13px;
	text-align: center;
	padding-bottom: 15px;
}

#loading{
	position:fixed;
	left:50%;
	top:50%;
	margin-left:-100px;
	margin-top: -100px;
}

@keyframes lds-eclipse {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
	}
  50% {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);

  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);


	}
}
@-webkit-keyframes lds-eclipse {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);

  }
  50% {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);

	}
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);

  }
}
.lds-eclipse {
  position: relative;
}
.lds-eclipse div {
  position: absolute;
  -webkit-animation: lds-eclipse 0.9s linear infinite;
  animation: lds-eclipse 0.9s linear infinite;
  width: 120px;
  height: 120px;
  top: 40px;
  left: 40px;
  border-radius: 50%;
  box-shadow: 0 1.5px 0 0 #ffffff;
  -webkit-transform-origin: 60px 61px;
  transform-origin: 60px 61px;
}
.lds-eclipse {
  width: 200px !important;
  height: 200px !important;
  -webkit-transform: translate(-100px, -100px) scale(1) translate(100px, 100px);
  transform: translate(-100px, -100px) scale(1) translate(100px, 100px);
}

#loading.act{
	opacity:0;
	filter: blur(5px);
	transition: 0.3s;
	transition-delay: 0.15s;
	pointer-events: none;
}