#loader-bg {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: #FFF;
	z-index: 1100;
}
#loader {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 280px;
	height: 50px;
	margin-top: -25px;
	margin-left: -140px;
	text-align: center;
	color: #fff;
	z-index: 1200;
}
#loader img {
	animation-name:     fade-in;
	animation-duration: 1s;
}
@keyframes fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

.noT {
	overflow-y: scroll;
}
	@media only screen and (min-width:769px) {
		.visual { position: relative; clear:both; height: 100vh; overflow: hidden; }
		.visual .logo {
			position: absolute;
			top: 50%;
			left: 50%;
			width: 90px;
			margin-top: -257px;
			margin-left: -45px;
			z-index: 40;
		}
		.visual .logo img {
			width: 100%;
			filter: drop-shadow(0px 0px 2px #CCC);
		}
		.visual .bg {
			height: 100vh;
			background-size: cover !important;
			background-position: center !important;
			width: 100%;
		}
		.visual .bg1 { background: url("../imgs/top1.jpg"); }
		.visual .bg2 { background: url("../imgs/top2.jpg"); }
		.visual .bg3 { background: url("../imgs/top3.jpg"); }
		.visual .bg4 { background: url("../imgs/top4.jpg"); }

		.news { width: 100%; float: left; padding: 0 0 80px; }
		.news h3 { font-size: 24px; font-weight: 700; text-align: center; margin: 80px 0 0;}
		.news h3 span { color: #646464; font-size: 12px; font-weight: normal; display: block;}
		.news ul { display: flex; justify-content: center; }
		.news li { width: 300px; margin: 40px 10px; }
		.news li span { font-size: 13px; color: #646464; display: block; line-height: 25px; margin: 20px 0 0; }
		.news li b { font-size: 14px; display: block; line-height: 25px; }
		.news li p { font-size: 13px; color: #646464; display: block; line-height: 25px; margin: 10px 0 0; }
		.news .btn a { float: right; border: solid 1px #000; display: block; width: 200px; line-height: 40px; text-align: center; box-sizing: border-box; }

		.banner { width: 100%; float: left; padding: 40px 0 80px; border-top: solid 1px #D6D6D6; background: url("../imgs/banner_bg.jpg") no-repeat center center; background-size: cover; }
		.banner p { margin: 40px auto 0;  background: #FFF; width: 780px; }
		.banner p a {box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); }

		
		.index { width: 100%; float: left; border-top: solid 1px #D6D6D6; padding: 0 0; background: #ECF1F2; }
		.index ul { display: flex; flex-wrap: wrap; justify-content: center; }
		.index ul li { width: 33.333%; }


		.access { width: 100%; float: left; border-top: solid 1px #D6D6D6; padding: 0 0 80px; }
		.access h3 { font-size: 20４px; font-weight: 700; text-align: center; margin: 80px 0 0;}
		.access h3 span { color: #646464; font-size: 12px; font-weight: normal; display: block;}
		.access .info { width: 360px; float: left; margin: 40px 0 0; }
		.access .map { width: 900px; float: right; margin: 40px 0 0; }
		.access h5 { font-size: 16px; font-weight: 700; }
		.access h5 span { color: #CC9966; }
		.access p { font-size: 14px; padding: 5px 0 25px 15px; }
		
	}
	@media only screen and (max-width:768px) {

		.visual { position: relative; clear:both; height: 100vh; overflow: hidden; }
		.visual .logo {
			position: absolute;
			top: 50%;
			left: 0;
			width: 100%;
			height: 50vh;
			margin-top: -30vh;
			text-align: center;
			z-index: 40;
		}
		.visual .logo img {
			height: 100% !important;
			filter: drop-shadow(0px 0px 2px #CCC);
		}
		.visual .bg {
			height: 100vh;
			/*background-attachment: fixed !important;*/
			background-size: cover !important;
			background-position: center !important;
			width: 100%;
		}
		.visual .bg1 { background: url("../imgs/top1.jpg"); }
		.visual .bg2 { background: url("../imgs/top2.jpg"); }
		.visual .bg3 { background: url("../imgs/top3.jpg"); }
		.visual .bg4 { background: url("../imgs/top4.jpg"); }

		.news { width: 100%; float: left; padding: 0 0 15px; }
		.news h3 { font-size: 20px; font-weight: 700; text-align: center; margin: 30px 0 0;}
		.news h3 span { color: #646464; font-size: 12px; font-weight: normal; display: block;}
		.news ul { margin: 15px 0; border-top: solid 1px #D6D6D6; }
		.news li { margin: 0; border-bottom: solid 1px #D6D6D6; }
		.news li a { display: block; padding: 15px; }
		.news li img { /*display: none;*/width: 30%; float: left; }
		.news li span { width: 70%; float: right; padding: 0 0 0 15px; font-size: 12px; color: #646464; display: block; line-height: 20px; box-sizing: border-box; }
		.news li b { width: 70%; float: right; padding: 0 0 0 15px; font-size: 14px; display: block; line-height: 20px; box-sizing: border-box; }
		.news li p { clear: both; font-size: 13px; color: #646464; display: block; line-height: 20px; padding: 10px 0 0; }
		.news .btn a { margin: 0 auto; border: solid 1px #000; display: block; width: 200px; line-height: 40px; text-align: center; box-sizing: border-box; }

		.banner { width: 100%; float: left; padding: 15px 15px 30px; border-top: solid 1px #D6D6D6; box-sizing: border-box; }
		.banner p { margin: 15px auto 0;  background: #FFF; width: 100%; }
		.banner p a {box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); }

		
		.index { width: 100%; float: left; border-top: solid 1px #D6D6D6; padding: 0 0; background: #ECF1F2; }
		.index ul { display: flex; flex-wrap: wrap; justify-content: center; }
		.index ul li { width: 50%; }


		.access { width: 100%; float: left; border-top: solid 1px #D6D6D6; padding: 0; }
		.access h3 { font-size: 16px; font-weight: 700; text-align: center; margin: 30px 0 0;}
		.access h3 span { color: #646464; font-size: 12px; font-weight: normal; display: block;}
		.access .info { margin: 15px 0 0; padding: 15px; border-top: solid 1px #D6D6D6; border-bottom: solid 1px #D6D6D6; }
		.access .map { }
		.access iframe { display: block; }
		.access h5 { font-size: 16px; font-weight: 700; }
		.access h5 span { color: #CC9966; }
		.access p { font-size: 14px; padding: 0 0 1em 1em; }

		#footer { margin: 0; }
	}