li {
	list-style-type: none;
}
img {
	margin: 0;
	padding: 0;
}
* {
	box-sizing: border-box;
}

html, body {
	color: #fff;
	background-color: #000;
	margin: 0;
	padding: 0;
	min-height: 100%;
	min-width: 100%;
	overflow: hidden;
	font-size: 62.5%;
	font-family: 'Tenor Sans', sans-serif;
	font-style: normal;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

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

.shutter {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000;
	pointer-events: none;
}

/* --------------- Navigation --------------- */

.nav {
	width: 100%;
	height: 100%;
}
.nav_button {
	position: absolute;
	right: 7px;
	top: 7px;
	width: 31px;
}
.nav_close {
	position: absolute;
	right: 0;
	top: 0;
	width: 31px;
}
.nav_menu {
	display: table;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000;
	text-align: center;
	pointer-events: none;
}
.nav_menu ul {
	display: table-cell;
	vertical-align: middle;
	margin: 0;
	padding: 0 0 3rem 0;
}
.nav_menu li {
	text-align: center;
	font-size: 1.7rem;
	margin: 2.4rem 0;
}
.logobox {
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	bottom: 6%;
}
.logo {
	width: 45%;
}

/* --------------- Concept --------------- */

.concept_item {
	position: absolute;
	width: 100%;
	height: 100%;
	background-position: center center;
}
.concept_item1 {background-color: #000;}
.concept_item2 {background-color: #000;}
.concept_item3 {background: url(../images/sp-intro-003.jpg); background-size: cover; background-position: center top;}
.concept_item4 {background: url(../images/sp-intro-004.jpg); background-size: cover;}
.concept_item5 {background: url(../images/sp-intro-005.jpg); background-size: cover; background-position: left top;}
.concept_item6 {background: url(../images/sp-intro-006.jpg); background-size: cover; background-position: right center;}
.concept_item7 {background: url(../images/sp-intro-007.jpg); background-size: cover; background-position: 60% center;}
.concept_item8 {background: url(../images/sp-intro-008.jpg); background-size: cover; background-position: 60% center;}
.concept_item9 {background: url(../images/sp-intro-009.jpg); background-size: cover; background-position: 45% bottom;}
.concept_item10 {background: url(../images/sp-intro-010.jpg); background-size: cover; background-position: 70% center;}
.concept_item11 {background-color: #000;}

.intro_image {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 75%;
	text-align: center;
	padding: 0 0 50px 0;
}
.intro_image2 {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 80%;
	text-align: center;
	padding: 0 0 50px 0;
}
.intro_image3 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 100px;
	margin: auto;
	width: 80%;
	text-align: center;
}

.intro_redline {
	position: absolute;
	left: 0;
	bottom: 45px;
	border-bottom: 1px solid #e60012;
	height: 1.4em;
	width: 100%;
	font-size: 1.8rem;
	padding: 0 0 0 13px;
}

.arrow {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 8px;
	margin: 0 auto;
	width: 10%;
	max-width: 57px;
}

/* --------------- Product Lineup --------------- */

.products {
	position: absolute;
	background-color: #666;
	width: 100%;
	height: 100%;
	top: 100%;
}

.productsLogo {
	width: 99px;
	margin: 15px 0 0 15px;
}

.lineup {
	width: 100%;
	height: 100%;
	background-color: #000;
}

.title {
	width: 100%;
	height: 44px;
	background-color: #000;
}
.foot {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 35px;
	background-color: #000;
}

.lineup_box {
	position: absolute;
	top: 44px;
	width: 100%;
}
.lineup1 {
	display: table;
	width: 100%;
	height: 33.333%;
	background-image: url(../images/sp-lineup-001.jpg);
	background-size: cover;
	background-position: 80% center;
}
.lineup2 {
	display: table;
	width: 100%;
	height: 33.333%;
	background-image: url(../images/sp-lineup-002.jpg);
	background-size: cover;
	background-position: 80% center;
}
.lineup3 {
	display: table;
	width: 100%;
	height: 33.333%;
	background-image: url(../images/sp-lineup-003.jpg);
	background-size: cover;
	background-position: 80% center;
}
.lineup_title {
	display: table-cell;
	vertical-align: middle;
	font-size: 2.6rem;
	padding: 0 0 0 15px;
	line-height: 0.9em;
}
.lineup_caption {
	font-size: 1.2rem;
}

.product {
	position: absolute;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
.product_close {
	position: absolute;
	right: 0;
	top: 0;
	width: 31px;
}
.product_left {
	position: absolute;
	width: 17px;
	top: 50%;
	left: 6px;
	margin-top: -30px;
}
.product_right {
	position: absolute;
	width: 17px;
	top: 50%;
	right: 6px;
	margin-top: -30px;
}
.product_base {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000;
	text-align: center;
	font-size: 1.5rem;
	line-height: 2.2rem;
}
.product_base ul {
	width: 80%;
	margin: 0.8em 10% 0 10%;
	padding-left: 1.1em;
	color: #595757;
	font-size: 1.1rem;
	line-height: 1.5rem;
	text-align: left;
}
.product_base li {
	list-style-type: disc;
}
.product1_1 { left: 0;}
.product1_2 { background-color: #f2f2f2; left: 100%;}
.product1_3 { background-color: #f2f2f2; left: 200%;}
.product_inner {
	width: 80%;
	background-color: #f2f2f2;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}
.product1_1_inner {
	width: 100%;
	background-color: #000;
	background-size: cover;
	background-image: url(../images/sp-product-001.jpg);
	height: 70%;
	margin: 13% 0 2rem 0;
}
.product1_2_inner {
	background-position: center bottom;
	background-image: url(../images/sp-product-002.png);
	height: 60%;
	margin: 0 10% 0 10%;
}
.product1_3_inner {
	background-image: url(../images/sp-product-005.png);
	height: 40%;
	margin: 0 10% 0 10%;
}
.product2_1_inner {
	width: 100%;
	background-color: #000;
	background-size: cover;
	background-image: url(../images/sp-product-006.jpg);
	height: 70%;
	margin: 13% 0 2rem 0;
}
.product2_2_inner {
	background-position: center bottom;
	background-image: url(../images/sp-product-003.png);
	height: 60%;
	margin: 0 10% 0 10%;
}
.product3_1_inner {
	width: 100%;
	background-color: #000;
	background-size: cover;
	background-image: url(../images/sp-product-007.jpg);
	height: 70%;
	margin: 13% 0 2rem 0;
}
.product3_2_inner {
	background-position: center bottom;
	background-image: url(../images/sp-product-004.png);
	height: 58%;
	margin: 0 10% 0 10%;
}
.product3_3_inner {
	background-image: url(../images/sp-product-009.png);
	height: 30%;
	margin: 0 10% 0 10%;
}
.product3_3_inner2 {
	background-image: url(../images/sp-product-010.png);
	background-position: center top;
	height: 20%;
	margin: 2rem 10% 0 10%;
	text-align: left;
	color: #595757;
	font-size: 1.1rem;
	line-height: 1.5rem;
}
.product3_3_inner2 p {
	width: 50%;
}
p.product_mid_title {
	width: 80%;
	margin: 0 10% 0 10%;
	color: #595757;
	font-size: 1.2rem;
	text-align: left;
}
p.product_mid_title2 {
	width: 50%;
	margin: 0;
	color: #595757;
	font-size: 1.2rem;
	text-align: left;
}
p.product_caption {
	width: 80%;
	margin: 35% 10% 0 10%;
	color: #595757;
	font-size: 1.9rem;
	text-align: left;
}
p.product_caption5 {
	width: 80%;
	margin: 0 10% 0 10%;
	color: #595757;
	font-size: 1.9rem;
	text-align: left;
}
p.product_caption2 {
	width: 80%;
	margin: 0 10% 1rem 10%;
	color: #595757;
	font-size: 1.9rem;
	text-align: left;
}
p.product_caption3 {
	width: 80%;
	margin: 25% 10% 0 10%;
	color: #595757;
	font-size: 2.0rem;
	text-align: left;
}
p.product_detail {
	width: 80%;
	color: #595757;
	font-size: 1.1rem;
	margin: 0 10%;
	text-align: left;
	line-height: 1.5rem;
}

/* --------------- Specifications --------------- */

.spec {
	position: absolute;
	background-color: #000;
	width: 100%;
	height: 100%;
	top: 100%;
}
.scroll_container {
	overflow: scroll;
	width: 100%;
	height: 100%;
}
table {
	width: 99%;
	margin-left: auto;
	margin-right: auto;
	margin: 44px 0 35px 0;
	border-spacing: 0;
	border-collapse: collapse;
	border: solid 1px #666;
}
td, th {
	border-collapse: collapse;
	border: solid 1px #666;
	text-align: center;
	font-size: 1.1rem;
	font-weight: normal;
	padding: 1rem 0.5rem;
}
th {
	background-color: #333;
	width: 19%;
}
td {
	width: 27%;
}

/* --------------- Requirement --------------- */
.requirement {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000;
	text-align: center;
}
.req_inner {
	position: relative;
	width: 100%;
	height: 100%;
}
.req_inner2 {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 200px;
	width: 100%;
}
.requirement_normal {
	width: 80%;
	margin: 0 10% 3.0rem 10%;
	font-size: 1.8rem;
	line-height: 4.0rem;
}
.requirement_small {
	width: 80%;
	margin: 0 10% 0 10%;
	font-size: 1.5rem;
	line-height: 4.0rem;
}









#mes {
	position: absolute;
	font-size: 3em;
}











/* --------------- PACE.js loading bar settings --------------- */

.pace {
	-webkit-pointer-events: none;
	pointer-events: none;

	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;

	z-index: 2000;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	width: 100%;
	background: #000;

	overflow: hidden;
}

.pace .pace-progress {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;

	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);

	max-width: 100%;
	position: fixed;
	z-index: 2000;
	display: block;
	position: absolute;
	top: 0;
	right: 100%;
	height: 100%;
	width: 100%;
	background: #e60012;
}

.pace.pace-inactive {
	display: none;
}
