body, html {
	width: 100%;
	height: 100%;
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-size: 14px;
	line-height: 1.2;
}
a {
	text-decoration: inherit;
	color: inherit;
}
img {
	display: block;
}



.row {
	display: flex;
}
.column {
	margin-right: 2.921348314606742%; /* 52px/1780 */
}
.column:last-child {
	margin-right: 0;
}
.column.s1 {
	width: 9.943820224719101%; /* 177px/1780 */
}
.column.s2 {
	width: 22.80898876404494%; /* 406px/1780 */
}
.column.s3 {
	width: 35.67415730337079%; /* 635px/1780 */
}
.column.s4 {
	width: 48.53932584269663%; /* 864px/1780 */
}
.column.s5 {
	width: 61.40449438202247%; /* 1093px/1780 */
}
.column.s6 {
	width: 74.26966292134831%; /* 1322px/1780 */
}
.green {
	background-color: green;
}
.blue {
	background-color: blue;
}
.red {
	background-color: red;
}
.through {
	pointer-events: none;
}

.swiper-container {
	width: 100%;
	height: 100%;
}
.swiper-wrapper {
	width: 100%;
	height: 100%;
}
.swiper-slide {
	width: 100%;
	height: 100%;
}
.swiper-slide .through {
	pointer-events: none;
}



#header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	padding: 3.125% 3.645833333333333% 3.645833333333333%; /* 60px/1920, 70px/1920 */
	z-index: 4;
}
#header-logo {
	font-size: 1.714285714285714rem; /*24px/14*/
	font-weight: bold;
	transition: color 400ms ease-out;
}
#header-logo span {
	font-weight: normal;
}



#cover {
	width: 100%;
	height: 100%;
	background-color: #ffbf00; /* 45-100-100 */
	box-sizing: border-box;
	padding: 3.645833333333333%; /* 70px/1920 */
	display: flex;
	flex-direction: column;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 2;
}
#cover-middle {
	flex: 1;
}

#cover-title {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#cover-title h2 {
	font-size: 4.285714285714286rem; /* 60px/14 */
	font-weight: bold;
	line-height: 1;
	margin-bottom: 2.142857142857143rem; /* 30px/14 */
}
#cover-title h2 span {
	margin-left: -2.4%;
}
#cover-title p {
	font-size: 2.142857142857143rem; /* 30px/14 */
	font-weight: 300;
}

#cover-figure {
	position: relative;
}
#cover-figure * {
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	transform: translate(0 ,-50%);
}
#cover-figure video {
	height: 99%;
}

#cover-bottom .column {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
#cover > canvas {
	position: absolute;
	left: 0;
	top: 0;
}



#content {
	position: relative;
	z-index: 3;
}

.service {
	background-color: #fff;
	padding: 3.645833333333333%; /* 70px/1920 */
	box-sizing: border-box;
}
.service .row {
	height: 100%;
}
.service .row .column {
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.service .row .column h3 {
	font-size: 4.285714285714286rem; /* 60px/14 */
	font-weight: bold;
	line-height: 1;
	margin-bottom: 2.857142857142857rem; /* 40px/14 */
}
.service .row .column > p {
	padding: 1.428571428571429rem 0; /* 20px/14 */
	border-top: solid 1px rgba(0, 0, 0, 0.2);
}
.service .row .column ol {
    counter-reset: item;
    list-style-type: none;
	list-style-position: inside;
	margin-bottom: 1.428571428571429rem; /* 20px/14 */
}
.service .row .column ol li {
	display: block;
	padding: 1.428571428571429rem 0; /* 20px/14 */
	border-top: solid 1px rgba(0, 0, 0, 0.2);
}
.service .row .column ol li:before { 
    content: counter(item, decimal-leading-zero) " ";
    counter-increment: item;
	display: inline-block;
	width: 43.59605911330049%; /* 177px/406 */
	margin-right: 12.80788177339901%; /* 52px/406 */
}
.service .row .column img {
	max-height: 100%;
	max-width: 100%;
	align-self: center;
}
#service-note {
	position: absolute;
	left: 0;
	bottom: 0;
}
#service-note h2 {
	display: block;
	font-size: 1.714285714285714rem; /* 24px/14 */
	font-weight: bold;
	margin-bottom: 1.428571428571429rem; /* 20px/14 */
}

.about {
	background-color: #ffbf00; /* 45-100-100 */
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.about .row {
	padding: 3.645833333333333%; /* 70px/1920 */
	box-sizing: border-box;
}

#about .column {
	border-top: solid 1px #000;
	padding-top: 2.142857142857143rem; /* 30px/14 */
}
#about .column h2 {
	font-size: 2.142857142857143rem; /* 30px/14 */
	font-weight: bold;
	margin-bottom: 2.857142857142857rem; /* 40px/14 */
}
#about .column div p {
	line-height: 1.25;
}
#about .column div {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
}
#about .column div > * {
	flex: 0;
	min-width: 46.99074074074074%; /* 406px/864 */
	margin-bottom: 2.857142857142857rem; /* 40px/14 */
}
#about .column div > p img {
	width: 43.59605911330049%; /* 177px/406 */
	margin-left: -3.448275862068966%; /* 14px/406 */
	opacity: 0.666;
}
#about .column ul li {
	border-top: solid 1px rgba(0, 0, 0, 0.2);
	padding: 1.714285714285714rem 0; /* 24px/14 */
	display: flex;
}
#about .column ul li span {
	display: block;
	flex-grow: 1;
	flex-basis: 0;
	font-size: 0.8571428571428571rem; /* 12px/14 */
}
#about .column ul li h3 {
	display: block;
	flex-grow: 1;
	flex-basis: 0;
	font-size: 1.142857142857143rem; /* 16px/14 */
	font-weight: bold;
}
#about .column ul li p {
	display: block;
	flex-grow: 2;
	flex-basis: 0;
}

#partners {
	display: block;
	background-color: #fff;
}
#partners h2 {
	display: none;
	font-size: 2.142857142857143rem; /* 30px/14 */
	font-weight: bold;
	margin-bottom: 2.857142857142857rem; /* 40px/14 */
}
#partners .swiper-container .swiper-wrapper .swiper-slide {
	width: 9.943820224719101%; /* 177px/1780 */
	height: 0;
	padding-top: 7.471910112359551%; /* 133px/1780 */
	margin-right: 2.921348314606742%; /* 52px/1780 */
}
#partners .swiper-container .swiper-wrapper .swiper-slide:last-child {
	margin-right: 0
}
#partners .swiper-container .swiper-wrapper .swiper-slide a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}
#partners .swiper-container .swiper-wrapper .swiper-slide a img {
	max-width: 100%;
	max-height: 100%;
	align-self: center;
	filter: grayscale(100%);
	opacity: 0.333;
	transition: filter 200ms ease-out, opacity 200ms ease-out;
}
#partners .swiper-container .swiper-wrapper .swiper-slide a:hover img {
	filter: grayscale(0);
	opacity: 1;
}



#footer {
	width: 100%;
	height: 100%;
	background-color: #1a1a1a; /* 0-0-10 */
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1;
}

#map {
	flex: 1;
	overflow: hidden;
	position: relative;
	background-color: #000;
}
#map iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 105%;
}
#contact {
	color: #999;
	padding: 3.645833333333333% 3.645833333333333% 0; /* 70px/1920 */
}
#contact .column h2 {
	font-size: 2.142857142857143rem; /* 30px/14 */
	font-weight: bold;
}
#contact .column ul li {
	display: flex;
	padding: 1.428571428571429rem 0; /* 20px/14 */
	border-top: solid 1px #333;
}
#contact .column ul li span {
	display: block;
	width: 27.8740157480315%; /* 177px/635 */
	margin-right: 8.188976377952756%; /* 52px/635 */
}
#contact .column ul li p, #contact .column ul li address {
	width: 63.93700787401575%; /* 406px/635 */
}
#contact .column img {
	width: 100%;
	margin-left: -3.448275862068966%; /* 14px/406 */
	opacity: 0.2;
}
#copyright {
	color: #333;
	display: block;
	padding: 0 3.645833333333333% 3.645833333333333%; /* 70px/1920 */
}







@media only screen and (max-width: 1366px) {
    body {
		font-size: 12px;
    }
	#cover-title h2 {
		font-size: 48px;
	}
	#cover-title p {
		font-size: 24px;
	}
	.service .row .column h3 {
		font-size: 36px;
		margin-bottom: 20px;
	}
	.service .row .column > p {
		padding: 14px 0;
	}
	.about .row {
		padding-bottom: 30px;
	}
	#about .column {
		padding-top: 20px;
	}
	#about .column h2 {
		font-size: 24px;
		margin-bottom: 30px;
	}
	#about .column ul li {
		padding: 16px 0;
	}
	#contact .column h2 {
		font-size: 24px;
	}
	#contact .column ul li {
		padding: 16px 0;
	}
}























