* {
	box-sizing: border-box;
}

html {
	display: block;
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}

html, body, div, span, iframe, p {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}

body {
	min-width: 100%;
	min-height: 100vh;
	padding: 0;
	margin: 0;
	background-color: #000000;
	font-family: Aston Martin Sans;
	font-size: 14px;
	line-height: 2;
}

a {
	text-decoration: none;
}

ul {
	margin-block-start: 0;
	margin-block-end: 0;
	margin-inline-start: 0;
	margin-inline-end: 0;
	padding-inline-start:0;
	list-style: none;
	font-size: 0;
}

.c-img {
	display: inline;
	vertical-align: middle;
	overflow: hidden;
}

header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	padding: 0;
	margin: 0;
	background-color: transparent;
	z-index: 5;
}

#header_n {
	display: flex;
	width: 100vw;
	height: 62px;
	flex-wrap: wrap;
	position: relative;
	padding: 13px 25px 9px 25px;
	background-color: #000000;
	vertical-align: baseline;
}

#header_n.recover, #header_s.recover {
	animation: header_fadeOut 0.0s linear;
	animation-fill-mode: both;
}

@keyframes header_fadeOut {
	0%{
		opacity: 1;
		background-color: rgba(44,44,44,0.5);
	}
	100%{
		opacity: 1;
		background-color: rgba(0,0,0,1.0);
	}
}

#header_n.translucent, #header_s.translucent {
	animation: header_fadeIn 1.0s linear;
	animation-fill-mode: both;
}

@keyframes header_fadeIn {
	0%{
		opacity: 1;
	}
	100%{
		opacity: 1;
		background-color: rgba(44,44,44,0.5);
	}
}

#header_n .-column1 {
	position: relative;
	display: block;
	width: 33.333%;
	padding-top: 3px;
	text-align: left;
}

#header_n .-column2 {
	position: relative;
	display: block;
	width: 33.333%;
	margin: 0;
	padding: 0;
	outline: 0;
	vertical-align: baseline;
	text-align: center;
}

#header_n .-column3 {
	position: relative;
	display: block;
	width: 33.333%;
}

#jpen1, #jpens {
	position: absolute;
	left: 100px;
	vertical-align: middle;
}
#img_jpen, #img_jpens {
	width: 38px;
}

#img_logo {
	width: 220px;
}

#img_logos {
	width: 120px;
	vertical-align: middle;
}

#header_s {
	display: none;
	width: 100vw;
	height: 51px;
	flex-wrap: wrap;
	position: fixed;
	padding: 13px 25px 9px 25px;
	background-color: #000000;
	vertical-align: baseline;
}

#header_s .-column1 {
	position: relative;
	display: block;
	width: 50%;
	padding-top: 3px;
	text-align: left;
}

#header_s .-column2 {
	position: relative;
	display: block;
	width: 50%;
	margin: 0;
	padding: 0;
	outline: 0;
	vertical-align: baseline;
	text-align: right;
}

#contents {
	z-index: 3;
}


#blackdummy {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	text-align: center;
	background-color: #000000;
	z-index: 0;
	opacity: 1.0;
	overflow: hidden;
	filter: blur(0px);
}

#blackdummy img, #blackdummy video {
	position: relative;
	vertical-align: top;
	width: 100%;
/*	max-width: 100%; */
}

#slider1area {
	width: 100%;
	padding: 0;
	opacity: 0;
	transition: 1.5s;
}

.slider1area-initialized {
	opacity: 1 !important;
}

.slider1 {
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0;
}

.slider1 li {
	display: inline-block;
	width: 100%;
	padding: 0;
	margin: 0;
}

.slideimage {
	position: relative;
	width: 100%;
	text-align: center;
	margin: 0 auto;
}

.slider1_li.fade-in, #blackdummy.fade-in {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 0.7s;
	-ms-animation-duration: 0.7s;
	animation-duration: 0.7s;
	-webkit-animation-name: fid;
	animation-name: fid;
	visibility: visible !important;
}

@-webkit-keyframes fid {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.slideimg {
	display: block;
	vertical-align: bottom;
	z-index: 2;
}

img {
	width: 100%;
	position: relative;
/*	max-width: 100%; */
	margin: 0 auto;
	height: auto;
}

.slider1_li>div {
	opacity: 1.0;
	z-index: 3;
}

.slider1_li.old>div {
	opacity: 0.0;
	z-index: 0;
}

.slider1_li.prev>div {
	opacity: 0.0;
	z-index: 0;
}
/*
.slider1_li img {
	opacity: 1.0;
}

.slider1_li.old img {
	opacity: 0.0;
}

.slider1_li.prev img {
	opacity: 0.0;
}

.slider1_li.prev img {
	z-index: 0;
}

.slider1_li.now img {
	position: relative;
	z-index: 3;
}
*/


#projectnamej {
	position: fixed !important;
	top: calc(50vh - 60px) !important;
	left:35px !important;
	padding: 0 !important;
	z-index: 4;
}

.caption {
	position: fixed;
	color: #ffffff;
	font-family:Aston Martin Sans;
	font-size:12px;
	line-height: 100%;
	letter-spacing: 0;
}

.captionup {
	position: relative;
	vertical-align:super;
	top: 2px;
	font-size:10px;
}

#projectindex {
	position: fixed !important;
	top: 50vh !important;
	left:35px !important;
	padding: 0 !important;
	z-index: 4;
}

#projectfooter {
	position: relative;
	width: 100%;
/*	height: 205px; */
	background-color: #000000;
	z-index: 5;
}

#projectfooter a {
	font-size: 10.2px;
	color: #ffffff;
}

#footer1 {
	display: block;
}

#footer1>.-column1 {
	max-width: 100%;
	padding: 30px 25px 5px 25px;
}

#footer2 {
	display: block;
	padding-top: 40px;
}

#footer2>.g-column {
	display: flex;
	padding: 0 25px 50px 25px;
}

#footer2>.g-column>.-col2 {
	position: relative;
	width: 13.666%;
}

#footer2>.g-column>.-col10 {
	position: relative;
	width: 80.333%;
}

.aston_link {
	font-family: "Aston Martin Sans";
	font-size: 10.2px;
	font-weight: 400;
	letter-spacing: 0.5px;
	padding: 0 25px 50px 25px;
	color: #ffffff;
	display: flex;
/*	margin-bottom: 20px !important; */
}

.aston_link_column1 {
	margin-right: 40px;
}

.aston_link_img {
	height: 15px;
	width: auto;
}

#iftlogosfooter {
/*	position: relative; */
/*	top: -24px; */
/*	left: calc(100% - 95px); */
	height: 24px;
/*	width: auto; */
	width: 100%;
	text-align: right;
}

#iftlogosfooter img {
	height: 18px;
	width: auto;
	object-fit: cover;
	padding: 0 5px 0 5px;
	vertical-align: middle;
}

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

}

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

	#header_n {
		display: none;
	}

	#header_s {
		display: flex;
		overflow: hidden;
	}

	#blackdummy {
		display: none;
		overflow: hidden;
	}

	#blackdummy.fade-in {
		display: none;
	}

	#contents {
		overflow: hidden;
	}

	#slider1area {
		padding-top: 51px;
		opacity: 1;
	}

	.slideimg {
		overflow: hidden;
	}

	.slider1_li.old>div {
		opacity: 1.0;
	}

	.slider1_li.prev>div {
		opacity: 1.0;
	}

	#projectfooter {
/*		height: 320px; */
	}

	#footer2>.g-column {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
		padding: 15px 25px 15px 25px;
		max-width: 100%;
	}

	#footer2>.g-column>.-col2 {
		width: 100%;
	}

	#footer2>.g-column>.-col10 {
		margin-top: 2%;
		width: 100%;
	}

}
