@charset "UTF-8";
/****************************************************
* top トップ用スタイル *
*****************************************************/
/*animation----------*/
/*jello*/
@-webkit-keyframes jello{11.1%,from,to{-webkit-transform:none;transform:none}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skewX(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skewX(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skewX(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skewX(-.1953125deg) skewY(-.1953125deg)}}
@keyframes jello{11.1%,from,to{-webkit-transform:none;transform:none}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skewX(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skewX(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skewX(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skewX(-.1953125deg) skewY(-.1953125deg)}}

/* slick 1.8.0 */
.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{top:0;left:0;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}



/*スライドショー*/
#topImage{
	width:100%;
	overflow:hidden;
	position:relative;
	z-index:3;
}
/*コントロール*/
#topImage .control{
	position:absolute;
	width:100%;
	bottom:0;
	padding:10px;
	font-size:0;
}
#topImage .control button{
	display:block;
	overflow:hidden;
	margin:0;
	padding:0;
	border-radius:0;
	height:0;
}
#topImage .control >*{
	display:inline-block;
	vertical-align:middle;
}
#topImage ul.slick-dots{
	margin:0;
	padding:0;
	list-style: none;
}
#topImage .slick-dots li{
	display:inline-block;
}
#topImage .slick-dots li button{
	padding-top:8px;
	border:1px solid #fff;
	background:#F1F1F1;
}
#topImage .slick-dots li.slick-active button{
	background:#076BAF;
}
#topImage button.pause{
	display:inline-block;
	padding-top:14px;
	position:relative;
	background:rgba(0,0,0,.8);
	border:1px solid #fff;
}
button.pause:after{
	position:absolute;
	content:"";
	display:block;
	top:50%;
	left:50%;
	margin-left:-5px;
	margin-top:-4px;
	width:10px;
	height:8px;
	border-style: solid;
	border-color:#fff;
	border-width:0 3px;
}
button.pause.paused:after{
	width: 0;
	height: 0;
	margin-left:-3px;
	margin-top:-4px;
	border-width: 4px 0 4px  7px;
	border-color: transparent transparent transparent #fff ;
}


/*スライド*/
#topImage .slide{
	width:100vw;
	overflow:hidden;
	position:relative;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	line-height:1.38;
}
#topImage .slide img{
	display:block;
}
#topImage .slide a{
	display:block;
	text-decoration:none;
}
#topImage .slide >p{
	display:block;
	position:absolute;
}
#topImage .slide .message{
	position:absolute;
	padding:10px;
	color:#fff;
	font-weight:800;
	opacity:0;
	-webkit-transform: translateX(-50px);
	transform:translateX(-50px);

	text-shadow:0px 0px 6px #000,0px 0px 6px #000,0px 0px 6px #000;
	background: -moz-linear-gradient(left, rgba(40,70,129,1) 0%, rgba(40,70,129,0.8) 84%, rgba(40,70,129,0) 100%);
	background: -webkit-linear-gradient(left, rgba(40,70,129,1) 0%,rgba(40,70,129,0.8) 84%,rgba(40,70,129,0) 100%);
	background: linear-gradient(to right, rgba(40,70,129,1) 0%,rgba(40,70,129,0.8) 84%,rgba(40,70,129,0) 100%);
}
#topImage .slide .message h4{
	font-weight:inherit;
}
#topImage .slide .message p{
	font-weight:normal;
	margin:0;
}
#topImage .slide .message.centerL{
	text-align:center;
	-webkit-transform: translateY(15px);
	transform: translateY(15px);
	background: -moz-linear-gradient(left, rgba(40,70,129,0) 0%, rgba(40,70,129,0.8) 19%, rgba(40,70,129,0.9) 49%, rgba(40,70,129,0.9) 54%, rgba(40,70,129,0.8) 84%, rgba(40,70,129,0) 100%);
	background: -webkit-linear-gradient(left, rgba(40,70,129,0) 0%,rgba(40,70,129,0.8) 19%,rgba(40,70,129,0.9) 49%,rgba(40,70,129,0.9) 54%,rgba(40,70,129,0.8) 84%,rgba(40,70,129,0) 100%);
	background: linear-gradient(to right, rgba(40,70,129,0) 0%,rgba(40,70,129,0.8) 19%,rgba(40,70,129,0.9) 49%,rgba(40,70,129,0.9) 54%,rgba(40,70,129,0.8) 84%,rgba(40,70,129,0) 100%);
}
#topImage .slide.slick-current:not(.delay) .message{
	-webkit-transform:none;
	        transform:none;
	opacity:1;
	-webkit-transition-property: opacity ,-webkit-transform;
	transition-property: opacity ,-webkit-transform;
	transition-property: opacity ,transform;
	transition-property: opacity ,transform ,-webkit-transform;
	-webkit-transition-duration:0.3s;
	        transition-duration:0.3s;
	-webkit-transition-timing-function:ease;
	        transition-timing-function:ease;
	-webkit-transition-delay:0.3s;
	        transition-delay:0.3s;
}
.no-js #topImage  .slide .message{
	-webkit-transform:none;
	        transform:none;
	opacity:1;
}
#topImage .slide .caption{
	padding:0.4em 0.6em;
	color:#fff;
	background: rgba(0,0,0,.7);
}
/*Mobile*/
@media screen and (max-width: 767px){
	#topImage .control{
		text-align:left;
	}
	#topImage .control .slick-dots li,
	#topImage .control .pause{
		margin:0 0.78125vw;
	}
	#topImage .slick-dots li button{
		width:8.15vw;
	}
	#topImage button.pause{
		width:6.25vw;
	}
	#topImage,
	#topImage .slide {
		height:62vw;
	}
	#topImage .slide .message{
		width:100%;
		top:4.6875vw;
		padding:3.125vw 7vw;
		font-size:3.75vw;
	}
	#topImage .slide .message h4,
	#topImage .slide .message.centerL{
		font-size:4.375vw;
	}
	#topImage .slide .caption{
		font-size:3.75vw;
		bottom:20px;
		right:3.125vw;
	}
}
/*Desktop&print*/
@media screen and (min-width: 768px), print{
	#topImage{
		margin-top:-80px;
	}
	#topImage,
	#topImage .slide {
		height:60vw;
	}
	#topImage .control{
		text-align:center;
	}
	#topImage .control .slick-dots li,
	#topImage .control .pause{
		margin:0 1vw;
	}
	#topImage .slick-dots li button{
		width:3.8vw;
	}
	#topImage button.pause{
		width:2.4vw;
	}

	#topImage .slide .message{
		padding:2vw;
		top:14vw;
		font-size:1.7vw;
		left:0;
		width:60%;
	}
	
	#topImage .slide .message.centerL{
		left:5%;
		width:90%;
	}
	#topImage .slide .message h4,
	#topImage .slide .message.centerL{
		font-size:2.6vw;
	}
	#topImage .slide .caption{
		font-size:1.4vw;
		right:2vw;
		bottom:3.2vw;
	}
}
/*(large2) Desktop & Print*/
@media screen and (min-width: 1000px), print{
	#topImage .control .slick-dots li,
	#topImage .control .pause{
		margin:0 10px;
	}
	#topImage .slick-dots li button{
		width:38px;
	}
	#topImage button.pause{
		width:24px;
	}

	#topImage,
	#topImage .slide {
		height:600px;
	}
	#topImage .slide .message{
		padding:20px;
		top:140px;
		left:0;
		width:640px;
		font-size:17px;
	}
	#topImage .slide .message.centerL{
		left:50%;
		margin-left:-476px;
		width:952px;
	}
	#topImage .slide .message h4,
	#topImage .slide .message.centerL{
		font-size:26px;
	}
	#topImage .slide .caption{
		bottom:32px;
		right: -webkit-calc(50% - 500px);
		right:3%;
		font-size:14px;
	}
}

/*コンテンツ*/
body.top #main{
	padding:0;
	margin:0 auto;
}
.topBox{
	overflow:hidden;
}
.topBox h3{
	line-height:1.2;
	text-align:center;
	font-weight:600;
	margin:1.3em 0 0;
	padding:0;
}
/*紹介*/
#intro >.header p{
	line-height:1.8;
}
#intro ul{
	margin:0;
	padding:0;
	list-style-type:none;
}
#intro >ul>li{
	display:block;
	margin:10px 0;
	position:relative;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center top;
}
/*分類別*/
#intro  >ul>li.facility{
	background-image:url(images/topbox1.png);
}
#intro  >ul>li.seminar{
	background-image:url(images/topbox2.png);
}
#intro  >ul>li.spr{
	background-image:url(images/topbox3.png);
}


#intro li .header{
	color:#fff;
	background:rgba(0,0,0,.7);
	line-height:1.6;
	padding:10px;
	width:100%;
}
#intro li .header h4{
	line-height:1.2;
	font-weight:600;
	font-size:1.33333333333333em;
	margin-bottom:0.4em;
}
#intro li .header h4 small{
	font-size:0.75em;
	font-weight:normal;
	display:inline-block;
}
#intro li .header h4 a{
	color:#FFF;
	font-weight:600;
	text-decoration:none;
}
#intro li .header h4 a:after{
	display:inline-block;
	content:"≫";
	margin-left:.5em;
	font-size:.6em;
	line-height:1;
	vertical-align:top;
	margin-top:.5em;
}
#intro li .header p{
	margin:0;
	font-size:1em;
}
#intro li ul.sub{
	margin:10px 0 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-justify-content: center;
	justify-content:center;
}
#intro li .sub li{
	display:inline-block;
	padding:2px;
	text-align:center;
}

#intro li.facility .sub li{
	width:33%;
}
#intro li.seminar .sub li{
	width:25%;
}
#intro li.spr .sub li{
	width:33%;
}
p.fReserve a {
    background-color: rgb(7 102 111 / 90%);
    color: #FFF !important;
    margin: 0 30px;
    text-align: center;
    display: flex;
    border-radius: 5px;
    font-size: 1.58333333333em;
    padding: 5px;
    box-shadow: 0 1px 2px rgba(0,0,0,.5);
	justify-content: center;
	align-items: center;
}
p.fReserve a:hover,
p.fReserve a:focus,
p.fReserve a:active{
	opacity: 1 !important;
}
p.fReserve a:before {
    content: "\f274";
	font-family: FontAwesome;
	display: inline-block;
	color: #FFF;
	margin-right: .2em;
}
p.fReserve.newmember a:before {
	content: "\f234";
}
p.fReserve a::after {
	content: "";
	background-image: url("images/arrow.png");
	width: 22px;
	height: 22px;
	display: inline-block;
	margin-left: .2em;
}

#intro li .sub li a{
	display:block;
	text-decoration:none;
}
#intro li .sub li a:before{
	content:"";
	margin:0 auto;
	display:block;
	font-family: FontAwesome;
	line-height:1.78;
	border-radius:4px;
	color:#396CA9;
	background:#fff;
	box-shadow:0 1px 2px rgba(0,0,0,.5); 
}
#intro li .sub li a span{
	margin:5px 0;
	display:block;
	line-height:1.3;
}
#intro .sub li a:hover,
#intro .sub li a:focus,
#intro .sub li a:active{
	opacity:1;
}
#intro .sub li a:hover:before,
#intro .sub li a:focus:before,
#intro .sub li a:active:before{
	text-decoration:none;
	box-shadow:0 1px 4px rgba(0,0,0,.5); 
	-webkit-animation-name: jello;
	        animation-name: jello;
	-webkit-transform-origin: center;
	    -ms-transform-origin: center;
	        transform-origin: center;
    -webkit-animation-duration: .5s;
            animation-duration: .5s;
}
#intro .sub li a:hover span,
#intro .sub li a:focus span,
#intro .sub li a:active span{
	text-decoration:underline;
}

/*アイコン個別*/
#intro .sub .flow a:before{
	content:"\f15d";
}
#intro .sub .facility a:before{
	content:"\f1ad";
}
#intro .sub .check a:before{
	content:"\f274";
}
#intro .sub .equip a:before{
	content:"\f130";
}
#intro .sub .price a:before{
	content:"\f157";
}
#intro .sub .faq a:before{
	content:"\f27a";
}
#intro .sub .schedule a:before,
#intro .sub .day a:before{
	content:"\f073";
}
#intro .sub .category a:before{
	content:"\f07c";
}
#intro .sub .how a:before{
	content:"\f15c";
}
#intro .sub .intro a:before{
	content:"\f059";
}
#intro .sub .company a:before{
	content:"\f0f7";
}
#intro .sub .interview a:before{
	content:"\f0c0";
}
#intro .sub .search a:before{
	content:"\f002";
}
#intro .sub .mail a:before{
	content:"\f0e0";
}
#intro>ul>li .linkBnr{
	margin: 0 1vw ;
	padding-bottom: 10px;
}
#intro>ul>li .linkBnr img{
	border-radius: 5px;
	box-shadow: 0 2px 3px rgba(0,0,0,.4);
	max-width: inherit;
}

/*Mobile*/
@media screen and (max-width: 767px){
	.topBox h3{
		font-size:5vw;
	}
	.topBox{
		margin:0 ;
		padding:0 10px 5px;
	}
	#intro li{
		margin-bottom:15px;
	}
	#intro li .header{
		line-height:1.2;
		margin-bottom:28.4vw;
	}

	#intro li .header h4{
		font-size:1.07142857142857em;
	}
	#intro li .header h4 small{
		font-size:0.93em;
	}
	
	#intro li .sub li a:before{
		font-size:11vw;
		width:19.6vw;
		height:19.6vw;
	}
	p.fReserve a {
		margin: 0 45px 30px;
	}	
}
/*Desktop & Print*/
@media screen and (min-width: 768px), print{
	body.top #main{
		max-width:none;
	}
	.topBox{
		padding:0 5px 25px;
	}
	.topBox h3{
		font-size:1.6em;
	}
	#intro .header{
		margin:0 auto;
		max-width:1030px;
	}
	#intro >ul{
		margin:0 auto;
		max-width:1200px;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		-webkit-justify-content: space-around;
		justify-content:space-around;
	}
	#intro>ul>li{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-flow: column nowrap;
		flex-flow: column nowrap;
		-webkit-justify-content: space-between;
		justify-content:space-between;
		width:31.666666666667vw;
		font-size:0.8em;
	}
	#intro li .header{
		margin-bottom: 13vw;
	}
	
	#intro li .sub li{
		padding:0.4vw;
	}
	
	#intro li .sub li a:before{
		font-size:3.333333333333vw;
		width:5.833333333333vw;
		height:5.833333333333vw;
	}
	#intro li .sub li a span{
		min-height:2.6em;
	}
	#news{
		margin:0 auto;
		max-width:1030px;
	}
}
@media screen and (min-width: 1000px), print{
	#intro li .sub li a{
		font-size:1.16666666666667em;
	}
}
@media screen and (min-width: 1200px), print{
	#intro>ul>li{
		width:380px;
	}
	#intro li .header{
		margin-bottom:130px;
	}
	#intro li.facility{
		justify-content: flex-start;
	}
	#intro li.facility .header {
    	margin-bottom: 10px;
	}
	
	#intro li .sub li{
		padding:5px;
	}	
	#intro li .sub li a:before{
		font-size:40px;
		width:70px;
		height:70px;
	}
}

