/**********

header

***********/
header {
	border-bottom : none;
}

/**********

mv

***********/
#mv {
	position                : fixed;
	width                   : 100%;
	left                    : 0;
	top                     : 0;
	z-index                 : 0;
	background              : no-repeat center bottom;
	-webkit-background-size : cover;
	background-size         : cover;
}

#mv .mv-logo {
	position           : absolute;
	top                : 10px;
	left               : 10px;
	z-index            : 10;
	-webkit-transition : all 1s;
	-moz-transition    : all 1s;
	-ms-transition     : all 1s;
	-o-transition      : all 1s;
	transition         : all 1s;
	opacity            : 1;
}

.fixed #mv .mv-logo {
	opacity : 0;
}

#mv .mv-catch {
	box-sizing : border-box;
	position   : absolute;
	top        : 0;
	bottom     : 0;
	margin     : auto;
	z-index    : 10;
	text-align : center;
	display    : table;
	width      : 100%;
	padding    : 20px;
}

#mv .mv-catch p {
	display        : table-cell;
	vertical-align : middle;
}

#mv dl {
	position         : absolute;
	margin           : 0 15px;
	bottom           : 45px;
	left             : 0;
	font-size        : 12px;
	font-size        : 1.2rem;
	z-index          : 10;
	background-color : white;
	padding          : 10px;
}

#mv dl span {
	color   : #999;
	display : block;
}

#mv dt {
	margin-bottom : 5px;
}

#mv dl dd a {
	color : #333;
}

#cam {
	position : absolute;
	top      : 0;
	left     : 0;
}

#logo {
	width  : 95px;
	margin : 0 auto;
}

#logo h1 {
	position : relative;
}

#logo h1 img {
	position : absolute;
	top      : 0;
	left     : 0;
}

#logo h1 em {
	position : absolute;
	top      : 85px;
	left     : -380px;
}

#logo h1 span {
	position : absolute;
	top      : 108px;
	left     : 36px;
}

#mv .single-item {
	z-index : 0;
}

#mv .single-item .slick-slide {
	box-sizing : border-box;
	height     : 100vh;
}

/**********

works

***********/
#works {
	position    : relative;
	z-index     : 100 !important;
	background  : #f7f7f5;
	padding-top : 40px;
	text-align  : center;
}

#works h2 {
	margin-bottom : 25px;
}

#works p {
	margin-bottom : 25px;
}

#works ul {
	padding-bottom : 10px;
	line-height    : 0;
}

#works li {
	overflow : hidden;
	position : relative;
	height   : 176px;
	width    : 290px;
	margin   : 0 auto 25px;
}

#works li p {
	position : absolute;
	top      : 0;
	left     : 0;
	margin   : 0;
}

/**********

service

***********/
#service_wrap {
	padding-bottom : 100px;
	position       : relative;
	z-index        : 100 !important;
}

#service {
	background     : #fff;
	width          : 100%;
	position       : relative;
	padding-bottom : 40px;
}

#service h2 {
	text-align : center;
	padding    : 40px 0 30px;
}

#service dl {
	border-top : 1px solid #333;
	margin     : 0 15px;
	font-size  : 12px;
	font-size  : 1.2rem;
}

#service dl:last-of-type {
	border-bottom : 1px solid #333;
}

#service dt {
	background : #f7f7f5;
	padding    : 10px;
}

#service dd {
	padding : 10px;
}

#service dl dl {
	margin        : 0 0 15px;
	border-top    : none;
}

#service dl dl dt {
	padding          : 0;
	background-color : transparent;
	font-weight      : bold;
	margin-bottom    : 5px;
}

#service dl dl dd {
	padding : 0;
}

#service dl dl:last-of-type {
	border-bottom : none;
}

/**********

accesss

***********/
/*------------------------------------------------------------
access
------------------------------------------------------------*/
#access_wrap {
	padding-bottom          : 260px;
	background              : url(../../images/photo_tokyo.jpg) no-repeat center bottom;
	-webkit-background-size : 100% auto;
	background-size         : 100% auto;
	padding-bottom          : 100px;
	position                : relative;
	z-index                 : 100 !important;
}

#access {
	background : #fff;
	padding    : 0 15px 30px;
	overflow   : hidden;
	*zoom      : 1;
}

#access h2 {
	text-align : center;
	margin     : 40px 0;
}

#access article {
	width : 100%;
}

#access dl {
	margin-bottom : 10px;
}

#access dt {
	background : #111;
	text-align : center;
}

#access dd {
	border-bottom : 2px solid #111;
	border-right  : 2px solid #111;
	border-left   : 2px solid #111;
}

#access #map_osaka, #access #map_tokyo {
	width  : 100%;
}

#access p {
	line-height   : 2;
	font-size     : 12px;
	font-size     : 1.2rem;
	margin-bottom : 30px;
}

footer {
	position : relative;
	z-index  : 100;
}
.gMap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.gMap iframe,
.gMap object,
.gMap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}