/* global */
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
body {
	font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	font-size: 0;
	line-height: 1;
	font-weight: 400;
	background-color: #FFFDF7;
}
h1, h3, h4, h5, h6, figure, p {
	margin: 0;
}
a,
a:hover,
a:focus {
	text-decoration: none;
	color: #fff;
}
iframe,
img {
	vertical-align: top;
	max-width: 100%;
}
ul {
	padding-left: 0;
	margin: 0;
	list-style: none;
}
.container {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.inner {
	position: relative;
}
/*#header .banner-logo {
	opacity: 0;
	filter: alpha(opacity=0);
	-webkit-transition: opacity 1s ease-in;
	   -moz-transition: opacity 1s ease-in;
	    -ms-transition: opacity 1s ease-in;
	     -o-transition: opacity 1s ease-in;
	        transition: opacity 1s ease-in;
}
#header.in .banner-logo {
	opacity: 1;
	filter: alpha(opacity=100);
}*/
.sublogo img {
	width: 7%;
	position: absolute;
	left: 0;
	bottom: 0;
	-webkit-transform: translate(-50%, 50%);
	-ms-transform: translate(-50%, 50%);
	-o-transform: translate(-50%, 50%);
	transform: translate(-50%, 50%);
}
.section03 .inner .right .link {
	display: block;
}
#footer {
	background-color: #BCDBDB;
}
.robot-logo {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 7.1%;
}
.section04 .container {
	padding-left: 40px;
	padding-right: 40px;
}
.video_wrapper {
	position: relative;
	overflow: hidden;
}
.video_wrapper:before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
.video_wrapper iframe,
.video_wrapper video {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.video_poster {
	position: absolute;
	top: 50%;
	right: 50%;
	bottom: 50%;
	left: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	-o-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	width: auto;
	max-width: none;
	height: 100%;
	cursor: pointer;
}
.video_wrapper.activated .video_thumb_wrap {
	display: none;
}
.list-appbtns {
	text-align: center;
}
.list-appbtns li {
	display: inline-block;
}
.list-appbtns li a {
	display: block;
	height: 100%;
}
.list-appbtns li a img {
	height: 100%;
}

.section05 .container {
	padding-left: 30px;
	padding-right: 30px;
	position: relative;
}

.section05-body {
	position: absolute;
	top: 6.3%;
	left: 45.67%;
	width: 35.4%;
}
@media (min-width: 768px) {
	#header {
		position: relative;
	}
	#header .container {
		max-width: 1200px;
	}
	.banner,
	.banner-logo,
	.banner-txt {
		width: 100%;
		height: 100%;
		display: -webkit-box;
		display: -moz-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flexbox;
		display: flex;
	}
	/*.banner,*/
	.banner-txt {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
		width: 100%;
	}
	.banner {
		width: 100%;
		position: relative;
		z-index: -1;
	}
	.banner .container {
		width: 100%!important;
	}
	.banner-logo {
		position: relative;
	}
	#header.middling .banner,
	#header.middling .banner-logo,
	#header.middling .banner-txt {
		justify-content: center;
		align-items: center;
		height: 100vh;
		overflow-y: hidden;
	}
	.banner-txt .inner {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.banner-txt.fixed-height {
		display: block;
	}
	.banner-txt.fixed-height .inner {
		padding: 0;
		height: 100%;
		text-align: right;
	}
	.banner-txt.fixed-height .container {
		height: 100%;
	}
	.banner-txt.fixed-height img {
		max-height: 100%;
	}
	#main {
		margin-bottom: 110px;
	}

	.section01 .container {
		max-width: 640px;
		padding-top: 200px;
		padding-bottom: 182px;
	}
	.section02 .list-inline:after,
	.section03 .inner:after {
		content: '';
		display: table;
		clear: both;
	}
	.section02 .list-inline li {
		width: 33.3333333%;
		float: left;
	}
	.section03 .inner .left {
		float: left;
		width: 68%;
	}
	.section03 .inner .left h2 {
		width: 26.5%;
		float: left;
	}
	.section03 .inner .left .description {
		width: 73.5%;
		float: right;
	}
	.section03 .inner .right {
		float: right;
		width: 32%;
		border-left: 1px solid #9e9c9c;
	}
	.section04 .container {
		max-width: 880px;
	}
	.section-whitespace {
		display: none;
	}
	.list-appbtns li {
		height: 60px;
		margin: 0 17px;
	}
	.section05 .container {
		max-width: 680px;
	}

}
@media (max-width: 767px) {
	img {
		width: 100%;
	}
	body {
		opacity: 0;
		filter: alpha(opacity=0);
	}
	body.in {
		opacity: 1;
		filter: alpha(opacity=100);
	}
	body.in #header .banner-logo {
		opacity: 1;
		filter: alpha(opacity=100);
		margin-top: -4.9%;
	}
	.banner-txt {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.sublogo img {
		width: 13.1%;
		-webkit-transform: translate(-38%, -80%);
		   -moz-transform: translate(-38%, -80%);
		    -ms-transform: translate(-38%, -80%);
		     -o-transform: translate(-38%, -80%);
		        transform: translate(-38%, -80%);

	}
	.section01 {
		position: relative;
		padding-left: 50px;
		padding-right: 50px;
	}
	.section01:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 50px;
		height: 100%;
		width: 150px;
		opacity: 1;
		filter: alpha(opacity=1);
		background: linear-gradient(to right, #FFFDF7, rgba(255, 253, 247, 0) 50%, rgba(255, 253, 247, 0));
		-webkit-transition: opacity .4s ease;
		   -moz-transition: opacity .4s ease;
		    -ms-transition: opacity .4s ease;
		     -o-transition: opacity .4s ease;
		        transition: opacity .4s ease;
	}
	.section01.end:before {
		opacity: 0;
		filter: alpha(opacity=0);
	}
	.section01 .container {
		height: 520px;
		overflow-x: scroll;
	}
	.section01 img {
		height: 100%;
		max-width: none;
		width: auto;
	}
	.section03 .inner .left:after {
		content: '';
		display: table;
		clear: both;
	}
	.section03 .inner .right:after {
		content: '';
		display: table;
		clear: both;
	}
	.section03 .inner .right .link {
		float: left;
		width: 33.3333333%;
	}
	.robot-logo {
		width: 17%;
	}
	.list-appbtns li:first-child {
		width: 37.5%;
		margin-right: 3.6%;
	}
	.list-appbtns li:last-child {
		width: 46.407%;
	}
	.section05-body {
		top: 0;
		left: 42.2%;
		width: 53.1%;
	}
	.section05 .container {
		padding-left: 0;
		padding-right: 0;
	}
}
@media (max-width: 480px) {
	.section01 {
		padding-left: 25px;
		padding-right: 25px;
	}
	.section01:before {
		left: 25px;
		width: 75px;
	}
	.section01 .container {
		height: 260px;
	}
	.section04 .container {
		padding-left: 20px;
		padding-right: 20px;
	}

}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	#header .container {
		width: 100% !important;
	}
	/*.banner,*/
	.banner-txt {
		display: block !important;
	}
	.banner {
		justify-content: unset;
		text-align: center;
	}
	.banner .container,
	.banner .inner {
		max-width: none!important;
		width: 100%!important;
	}
}
@media (-ms-accelerator:true) {
	#header .container {
		width: 100% !important;
	}
	/*.banner,*/
	.banner-txt {
		display: block !important;
	}
	.banner {
		justify-content: unset;
		text-align: center;
	}
	.banner .container,
	.banner .inner {
		max-width: none!important;
		width: 100%!important;
	}

}







