@charset "UTF-8";
/* CSS Document */



/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/




	



/* min 801px */
@media screen and (min-width: 801px), print {


	
	
/* header
--------------------- */
#header .tel a {
	color: #5d261b;
}


	
	
/* mainimages
--------------------- */
#mainimages {
	width: 100%;
	min-width: 1020px;
	position: relative;
}
	#mainimages .video_wrap {
		overflow: hidden;
	}
		#mainimages .video_wrap video{
			display: block;
			width: 100%;
			object-fit: cover;
			height: auto;
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			margin: auto;
		}
		#mainimages .video_wrap:before {
			content: "";
			top: 0;
			left: 0;
			right: 0;
			padding-top: 56%;
			display: block;
		}
			#mainimages .dot {
				width: 100%;
				height: 100%;
				position: absolute;
				top: 0;
				left 0;
				z-index: 3;
			}
	
	
	#mainimages h1 {
		width: 100%;
		position: absolute;
		top: 50%;
		left 0;
		margin-top: -50px;
		font-size: 46px;
		font-weight: 700;
		line-height: 75px;
		letter-spacing: 20px;
		color: #fff;
		text-align: center;
		z-index: 4;
		text-shadow:0px 0px 7px #000000;
	}


	
	
/* title
--------------------- */
.title {
	color: #5d261b;
	padding-bottom: 40px;
}
	.title h2 {
		font-size: 36px;
		line-height: 1;
		letter-spacing: 0.2em;
		margin-bottom: 15px;
	}

	.title .min {
		line-height: 1;
	}


	
	
/* message
--------------------- */
#message {
	width: 100%;
	min-width: 1240px;
	background: #f7f5f2;
	padding: 80px 0;
}
	#message .text {
		width: 767px;
	}
		#message .text h3 {
			font-size: 200%;
			font-weight: 600;
			color: #5d261b;
			line-height: 48px;
			letter-spacing: 0.2em;
			margin-bottom: 30px;
		}
	
		#message .text p {
			line-height: 30px;
			margin-bottom: 15px;
			letter-spacing: 0.12em;
		}


	
	
/* feature
--------------------- */
#feature {
	width: 100%;
	min-width: 1240px;
	padding: 80px 0;
}
	#feature .title {
		text-align: center;
		padding-bottom: 80px;
	}
	
	
	#feature .box {
		width: 400px;
		margin-right: 20px;
		margin-bottom: 20px;
		color: #fff;
		padding: 30px;
	}
	#feature .box:nth-child(1) {
		background: url(../img/top/feature_pht01.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(2) {
		background: url(../img/top/feature_pht02.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(3) {
		background: url(../img/top/feature_pht03.jpg) no-repeat center / cover;
		margin-right: 0;
	}
	#feature .box:nth-child(4) {
		background: url(../img/top/feature_pht04.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(5) {
		background: url(../img/top/feature_pht05.jpg) no-repeat center / cover;
		margin-right: 0;
	}
		#feature .box .en {
			text-align: center;
			padding-bottom: 10px;
		}
	
		#feature .box h3 {
			font-size: 143%;
			text-align: center;
			margin-bottom: 20px;
		}
	
		#feature .box p {
			font-weight: 700;
		}


	
	
/* method
--------------------- */
#method {
	width: 100%;
	min-width: 1240px;
	padding: 50px 0 80px 0;
}
	#method .text {
		width: 390px;
	}
		#method .text .title {
			padding-bottom: 20px;
		}
	
		#method .text p {
			margin-bottom: 40px;
		}


	#method .pht {
		width: 766px;
	}
		#method .pht .pbox:nth-child(2) {
			padding-top: 50px;
		}


	
	
/* menu
--------------------- */
#menu {
	width: 100%;
	min-width: 1240px;
	background: url(../img/top/dot_bg.png);
	padding: 70px 0;
	position: relative;
	overflow: hidden;
}
	#menu .video_wrap {
		overflow: hidden;
	}
		#menu .video_wrap video{
			display: block;
			width: 1900px;
			height: auto;
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			margin: auto;
			z-index: -1;
		}
	
	
	#menu .title {
		color: #fff;
		text-align: center;
		padding-bottom: 80px;
	}
	
	
	#menu .flex .box {
		width: 295px;
		margin-right: 20px;
		margin-bottom: 20px;
	}
	#menu .flex .box:nth-child(4n) {
		margin-right: 0;
	}
		#menu .flex .box a {
			display: block;
		}
			#menu .flex .box a .pht {
				overflow: hidden;
			}
				#menu .flex .box a .pht img {
					width: 100%;
					height: auto;
					-moz-transition: -moz-transform 0.2s linear;
					-webkit-transition: -webkit-transform 0.2s linear;
					-o-transition: -o-transform 0.2s linear;
					-ms-transition: -ms-transform 0.2s linear;
					transition: transform 0.2s linear;
				}
				#menu .flex .box a:hover .pht img {
					-webkit-transform: scale(1.05);
					-moz-transform: scale(1.05);
					-o-transform: scale(1.05);
					-ms-transform: scale(1.05);
					transform: scale(1.05);
				}

			#menu .flex .box a h3 {
				text-align: center;
				color: #fff;
				padding-top: 10px;
			}


	
	
/* topics
--------------------- */
#topics {
	width: 100%;
	min-width: 1240px;
	padding: 70px 0;
}
	#topics .title {
		width: 330px;
	}
	
	
	#topics ul {
		width: 910px;
	}
		#topics ul li {
			margin-bottom: 5px;
		}
			#topics ul li a {
				display: block;
				background: #f7f5f2;
				padding: 20px;
			}
				#topics ul li a .en {
					color: #5d261b;
					padding-right: 15px;
				}
	
	
	#topics .btn {
		position: absolute;
		top: 148px;
		left: 0;
	}


	
	
/* about
--------------------- */
#about {
	width: 100%;
	min-width: 1240px;
	padding: 80px 0;
	background: #f7f5f2;
}
	#about .title {
		text-align: center;
		padding-bottom: 70px;
	}
	
	
	#about .text {
		width: 450px;
	}
		#about .text h3 {
			font-size: 129%;
			font-weight: 600;
			color: #5d261b;
			margin-bottom: 10px;
		}
	
		#about .text table {
			width: 100%;
			border-collapse: collapse;
		}
			#about .text table th {
				border-top: solid 1px #5d261b;
				border-bottom: solid 1px #5d261b;
				font-size: 14px;
				font-weight: 500;
				color: #5d261b;
				padding: 15px 0;
				vertical-align: top;
			}
			#about .text table td {
				border-top: solid 1px #5d261b;
				border-bottom: solid 1px #5d261b;
				padding: 15px 0;
			}
				#about .text table td a {
					color: #101010;
				}
	
	
	#about iframe {
		width: 725px;
	}
	
	
	#about .btn {
		margin: 50px auto 0 auto;
	}



}








/* max 800px */
@media only screen and (max-width: 800px) {


	
	
/* mainimages
--------------------- */
#mainimages {
	width: 100%;
	height: 300px;
	overflow: hidden;
	background-size: cover;
	position: relative;
}
	#mainimages .video_wrap {
		overflow: hidden;
	}
		#mainimages .video_wrap video{
			display: block;
			width: 100%;
			object-fit: cover;
			height: 300px;
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			margin: auto;
		}
		#mainimages .video_wrap:before {
			content: "";
			top: 0;
			left: 0;
			right: 0;
			display: block;
		}
			#mainimages .dot {
				display: none;
			}
	
	#mainimages h1 {
		width: 100%;
		position: absolute;
		top: 50%;
		left 0;
		margin-top: -45px;
		font-size: 172%;
		font-weight: 900;
		line-height: 1.8em;
		letter-spacing: 4px;
		color: #fff;
		text-align: center;
		text-shadow: 0px 0px 7px #000000;
	}


	
	
/* title
--------------------- */
.title {
	color: #5d261b;
	padding-bottom: 50px;
	text-align: center;
}
	.title h2 {
		font-size: 30px;
		line-height: 1;
		letter-spacing: 0.2em;
		margin-bottom: 8px;
	}

	.title .min {
		font-size: 86%;
		line-height: 1;
	}


	
	
/* message
--------------------- */
#message {
	width: 100%;
	background: #f7f5f2;
	padding: 50px 0;
}
	#message .title {
		padding-bottom: 20px;
	}
	
	
	#message .text {
		margin-bottom: 20px;
	}
		#message .text h3 {
			font-size: 143%;
			font-weight: 600;
			color: #5d261b;
			line-height: 38px;
			letter-spacing: 0.2em;
			margin-bottom: 20px;
		}
	
		#message .text p {
			font-size: 93%;
			line-height: 2em;
			margin-bottom: 15px;
		}
	
	
	#message .pht img {
		width: 100%;
		height: auto;
	}


	
	
/* feature
--------------------- */
#feature {
	width: 100%;
	padding: 50px 0 30px 0;
}
	#feature .box {
		margin-bottom: 20px;
		color: #fff;
		padding: 30px;
	}
	#feature .box:nth-child(1) {
		background: url(../img/top/feature_pht01.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(2) {
		background: url(../img/top/feature_pht02.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(3) {
		background: url(../img/top/feature_pht03.jpg) no-repeat center / cover;
		margin-right: 0;
	}
	#feature .box:nth-child(4) {
		background: url(../img/top/feature_pht04.jpg) no-repeat center / cover;
	}
	#feature .box:nth-child(5) {
		background: url(../img/top/feature_pht05.jpg) no-repeat center / cover;
		margin-right: 0;
	}
		#feature .box .en {
			text-align: center;
			padding-bottom: 10px;
		}
	
		#feature .box h3 {
			font-size: 129%;
			text-align: center;
			margin-bottom: 15px;
		}
	
		#feature .box p {
			font-size: 93%;
			font-weight: 700;
			line-height: 2em;
		}


	
	
/* method
--------------------- */
#method {
	width: 100%;
	padding: 50px 0;
}
	#method .text {
		margin-bottom: 35px;
	}
		#method .text .txt {
			margin-bottom: 30px;
		}


	#method .pht {
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
	}
		#method .pht .pbox {
			width: 50%;
		}
			#method .pht .pbox img {
				width: 100%;
				height: auto;
			}


	
	
/* menu
--------------------- */
#menu {
	width: 100%;
	background: url(../img/top/dot_bg.png);
	padding: 50px 0 30px 0;
	position: relative;
	overflow: hidden;
}
	#menu .video_wrap {
		overflow: hidden;
	}
		#menu .video_wrap video{
			display: block;
			width: 1900px;
			height: auto;
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
			margin: auto;
			z-index: -1;
		}
	
	
	#menu .title {
		color: #fff;
	}
	
	
	#menu .flex {
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
		#menu .flex .box {
			width: 48%;
			margin-right: 4%;
			margin-bottom: 20px;
		}
		#menu .flex .box:nth-child(2n) {
			margin-right: 0;
		}
			#menu .flex .box a {
				display: block;
			}
				#menu .flex .box a .pht {
					overflow: hidden;
				}
					#menu .flex .box a .pht img {
						width: 100%;
						height: auto;
						-moz-transition: -moz-transform 0.2s linear;
						-webkit-transition: -webkit-transform 0.2s linear;
						-o-transition: -o-transform 0.2s linear;
						-ms-transition: -ms-transform 0.2s linear;
						transition: transform 0.2s linear;
					}
					#menu .flex .box a:hover .pht img {
						-webkit-transform: scale(1.05);
						-moz-transform: scale(1.05);
						-o-transform: scale(1.05);
						-ms-transform: scale(1.05);
						transform: scale(1.05);
					}

				#menu .flex .box a h3 {
					font-size: 93%;
					text-align: center;
					color: #fff;
					padding-top: 10px;
				}


	
	
/* topics
--------------------- */
#topics {
	width: 100%;
	padding: 50px 0;
}
	#topics .title {
	}
	
	
	#topics ul {
		margin-bottom: 25px;
	}
		#topics ul li {
			margin-bottom: 5px;
		}
			#topics ul li a {
				display: block;
				background: #f7f5f2;
				padding: 20px;
				font-size: 93%;
			}
				#topics ul li a .en {
					display: block;
					font-size: 12px;
					color: #5d261b;
				}


	
	
/* about
--------------------- */
#about {
	width: 100%;
	padding: 50px 0;
	background: #f7f5f2;
}
	#about .text {
		margin-bottom: 30px;
	}
		#about .text h3 {
			font-size: 129%;
			font-weight: 600;
			color: #5d261b;
			margin-bottom: 10px;
		}
	
		#about .text table {
			width: 100%;
			border-collapse: collapse;
		}
			#about .text table th {
				border-top: solid 1px #5d261b;
				border-bottom: solid 1px #5d261b;
				font-size: 93%;
				font-weight: 500;
				color: #5d261b;
				padding: 15px 0;
				vertical-align: top;
			}
			#about .text table td {
				border-top: solid 1px #5d261b;
				border-bottom: solid 1px #5d261b;
				font-size: 93%;
				padding: 15px 0;
			}
				#about .text table td a {
					color: #101010;
				}
	
	
	#about iframe {
		width: 100%;
		height: 250px;
	}
	
	
	#about .btn {
		margin-top: 30px;
	}

	








}

	


