html {
	background-color: #000;
}
body {
	padding: 0;
	margin: 0;
	min-width: 320px;
	font-family: Roboto Condensed , "ŸàƒSƒVƒbƒN" , "Yu Gothic" , sans-serif;
	background-color: #fff;
}
.sp{display: none;}
div#wrap{position:relative;width:100%;}
section{position: relative; z-index: 1;}
div#cover{position: fixed; z-index: 2; width: 100%; height:100vh; top: 0;}
div#cover.sub{position: relative; height: auto; min-height: 100vh}
div#cover.sub.client{background-color: #f0f0f0;}
div#cover.sub.private{background-color: #ebf6f5;}
div#cover.sub.profile{background-color: #FFFFFF;}

h1{
	margin: 0;
	padding: 40px 0 0 50px;
	display: inline-block;
}
h1.hide{
	padding: 40px 0 0 50px;
}
h1 img{
	width: 210px;
	display: block;
	transition: all .1s ease-out;
}
h1.hide img{
	width: 120px;
	transition: all .3s ease-out;
}

h1.sub img{width: 120px;}
@media screen and (max-width: 624px) {
	h1{
		    padding: 0;
		    margin: 0;
		    width: 160px;
		    text-align: left;
		    display: block;
		    position: absolute;
		    top: 30px;
		    left: 20px;
		    font-size: 0;
	}
	h1.hide{padding: 0;}
	h1 > span.sp{font-size: 14px; padding-top: 8px; display: block; font-weight: normal;}
	h1 img{width: 160px;}
	h1.hide img{width: 100px;}
	h1.hide span{display: none;}
	h1.sub{display: block; position: relative; top: 0; left: 0;}
}

copy{
	position: absolute;
	width: auto;
	bottom: 25px;
	right: 50px;
	text-align: center;
	font-size: 13px;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

.menu{position: absolute; top: 0; right: 0; z-index: 0; width: 100%;}
.sub .menu{position: fixed;}
.gblnv_box a {margin: 40px 50px 40px auto; text-decoration: none; display: block;}
.gblnv_box a:hover {opacity: 0.4;}
.gblnv_block{background-color: rgba(255,255,255,0.95); color: #000; height: 620px; display: none;}
.gblnv_block ul{padding: 70px 40px 40px; margin: 0 auto; width: 260px; list-style: none;}
@media screen and (max-width: 624px) {
	.gblnv_block ul{padding: 140px 40px 100px; margin: 0 auto; width: 260px; list-style: none;}
}
.gblnv_block ul li{line-height: 180%; border-top: 1px solid #000;}
.gblnv_block ul li:first-child{border-top: none}
.gblnv_block ul li a{color: #000; font-size: 22px; line-height: 360%; text-align: center; display: block; margin: 0; min-width: 150px; font-weight: normal;}
.gblnv_block ul li a.here{opacity: 0.3;}
.gblnv_block ul li a.facebook{width: 75px; min-width: 130px; display: inline-block;}
.gblnv_block ul li a.instagram{width: 75px; min-width: 130px; display: inline-block; background: url('../image/icon/ig.png') center center no-repeat; background-size: 28px 28px; color: transparent; }
.onanimation{display: block; margin-top: -104px;}
.gblnv_box img.logo{position: absolute; top: 40px; left: 50px; width: 120px;}


.menu-trigger,
.menu-trigger span {display: inline-block; transition: all .3s; box-sizing: border-box;}
.menu-trigger {position: relative; width: 32px; height: 24px; margin-right: 50px;}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #000;
	border-radius: 3px;
}
.menu-trigger.active span {
	height: 1px;
}
.menu-trigger span:nth-of-type(1) {
	top: 4px;
}
.menu-trigger span:nth-of-type(2) {
	top: 11px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 4px;
}


.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(7px) rotate(-45deg);
	transform: translateY(7px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu-bar02 .8s forwards;
	animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
@keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}

.name{
	position: absolute;
	right: 115px;
	top: 44px;
	font-weight: normal;
	z-index: 1;
}

.sub h1{
	margin: 0;
	padding: 40px 0 0 50px;
	height: 70px;
	box-sizing: border-box;
	display: inline-block;
}

@media screen and (max-width: 624px) {
	.sub h1{
		padding: 30px 0 0 20px;
	}
}
.sub h2 {line-height: 160px; font-size: 30px; font-weight: normal; text-align: center; margin: 0;}
.sub.entry h2 {line-height: 70px; font-size: 20px; font-weight: normal; text-align: center; font-weight: bold; margin: -70px 0 0;}

ul.item{padding: 0 80px 80px; list-style: none; font-size: 0; text-align: center;}
ul.item li {position: relative; display: inline-block; padding: 0; margin: 13px 5px; width: 214px; height: 214px; font-size: 0; overflow: hidden; text-align: left;}
ul.item li a img{
	width: 214px;
	height: 214px;
}

.rhombus {
	width: 214px;
	height: 110px;
	position: absolute;
	bottom: 0;
}

.rhombus svg{width: 214px; height: 110px;}
.rhombus .st0{fill:#FFFFFF;}
.sub.private .rhombus .st0{fill: #ffffff;}

ul.item li:hover{
-webkit-transform: scale(1.0,1.0) rotate(-5deg);
transform: scale(1.0,1.0) rotate(-5deg); transition: .15s;
z-index: 1;
}
ul.item li a:hover .rhombus{bottom: -20px; transition: .2s;}
ul.item li a:hover .title{bottom: -10px; color: #666666; transition: .2s;}
ul.item li a:hover .rhombus svg{opacity: 0.8;}

ul.item li.hover{
	-webkit-transform: scale(1.0,1.0) rotate(-5deg);
	transform: scale(1.0,1.0) rotate(-5deg); transition: .15s;
	z-index: 1;
}
ul.item li a{
	-webkit-touch-callout: none;
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
ul.item li.hover a .rhombus{bottom: -20px; transition: .2s;}
ul.item li.hover a .title{bottom: -10px; color: #666666; transition: .2s;}
ul.item li.hover a .rhombus svg{opacity: 0.8;}


.title{
	width: 174px;
	height: 25px;
	position: absolute;
	bottom: 0;
	font-size: 12px;
	color: #000;
	margin: 75px 20px 10px;
	line-height: 1.4em;
	padding: 0;
	box-sizing: border-box;
	font-weight: bold;
	overflow:hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.tbody{max-width: 1120px; margin: 0 auto; padding: 0 80px 120px;}

.tbody h3{font-size: 22px; font-weight: normal; margin-bottom: 60px;}
.tbody p{line-height: 1.8em; margin: 30px 0;}
.tbody p.tname{font-size: 30px;}
.tbody p.sup{margin-bottom: 60px;}
.tbody .main{margin-top: 70px;}

.mtext{font-size: 24px;}
.stext{font-size: 13px;}

.box-mv{
	opacity: 0;
	transform: translate(0,10px); 
	-webkit-transform: translate(0,10px); 
}
.mv{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
	transition: .8s;
}

.tbody p.entryTitle{font-size: 32px; margin-top: 60px;}
.tbody p.comments,
.tbody p.credit,
.tbody p.link{font-size: 13px; margin-bottom: 60px; max-width: 600px;}
.tbody p.link a{
	background-image:url(../image/long-arrow.svg);
	background-size:13px 14px;
	background-position:center right;
	background-repeat: no-repeat;
	padding-right: 20px;
	text-decoration: none;
	font-weight: bold;
	color: #000;
}
.tbody p.link a:hover{opacity: 0.6; text-decoration: underline;}

.submenu{
	position: fixed;
	top: 140px;
	right: 20px;
	font-size: 0;
}
.submenu a{
	display: block;
	width: 40px;
	height: 40px;
	margin-bottom: 30px;
	padding: 0 5px;
}

.submenu a.toPrev{width: 22px; display: inline-block; margin-right: 3px; padding: 0;}
.submenu a.toNext{width: 22px; display: inline-block; margin-left: 3px; padding: 0;}

.submenu a:hover{opacity: 0.5;}


@media screen and (max-width: 624px) {
	copy{right: 20px;}
	.name{display: none;}
	.submenu{display: none;}
	.tbody{padding: 0 50px 100px;}
	.tbody .main{margin-top: 20px;}
	.tname{margin-top: 0;}
	.entry h1 img{display: none;}
	ul.item{
		padding: 0 0 80px;
		margin: 0 auto;
		width: 224px;
	}
	.sub h2{line-height: 120px;}
}

@media screen and (max-width: 624px) {
	.menu{width: 100%; position: fixed;}
	.menu-trigger{margin-left: auto;}
	.gblnv_box a{margin: 30px 20px 30px auto;}
	.gblnv_block{height: 570px;}
	.gblnv_block ul li a{font-size: 16px;}
	.gblnv_box img.logo{position: absolute; top: 30px; left: 20px; width: 100px;}
}

.comingsoon{
	pointer-events : none;
	text-decoration: line-through!important;
	opacity: 0.1!important;
}
