@charset "UTF-8";

/* contents
----------------------------------------*/
.contents {
	-webkit-transition: opacity 500ms;
	transition: opacity 500ms;
}

/* mainv_block
----------------------------------------*/
.mainv_block {
	overflow: hidden;
}
.mainv_item {
	width: 100%;
	float: left;
	text-align: center;
}
.mainv_item a {
	display: block;
}
.mainv_item figure {
	overflow: hidden;
}
.mainv_item img {
	width: 100%;
	-webkit-transition: transform 500ms;
	transition: transform 500ms;
}
.mainv_item a:hover img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.mainv_item h2 {
	margin: 16px 0 8px;
	color: #4bd8f9;
	font-size: 2.2rem;
}
.mainv_item p {
	font-size: 1.5rem;
	font-weight: 500;
}
.mainv_item p span {
	font-size: 1.3rem;
}
.slick-dots {
	position: absolute;
	top: 26px;
	right: 68px;
	z-index: 1100;
}
.slick-dots li {
	width: 9px;
	height: 9px;
	margin-left: 10px;
	display: inline-block;
	vertical-align: top;
}
.slick-dots li button {
	-webkit-appearance: none;
	appearance: none;
	display: block;
	border: solid 1px #fff;
	border-radius: 50%;
	background: none;
	width: 10px;
	height: 10px;
	display: inline-block;
	overflow: hidden;
	text-indent: -999px;
}
.slick-dots li button:focus {
	outline: none;
}
.slick-dots .slick-active button {
	background: #fff;
}
@media only screen and (max-width: 736px) {
	.mainv_block > div:first-child {
    	margin: 0 -5%;
	}
	.mainv_item h2 {
		margin: 16px 5% 8px;
		font-size: 1.8rem;
	}
	.mainv_item p {
		font-size: 1.4rem;
		margin: 0 5%;
	}
	.mainv_item p span {
		font-size: 1.2rem;
	}
	.mainv_item a:hover img {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.slick-dots {
		top: 10px;
		right: 5%;
	}
}

/* loading_block
----------------------------------------*/
.loading_block {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	z-index: 2100;
}
.loading_block img {
	display: none;
	animation-iteration-count: infinite;
	animation-name: logo_loading;
	animation-duration: 1000ms;
}
@keyframes logo_loading {
	0% {
    	opacity: 1;
	}

	25% {
    	opacity: 1;
	}

	50% {
    	opacity: 0;
	}

	100% {
    	opacity: 1;
	}
}
@media only screen and (max-width: 736px) {
}
