@charset "utf-8";

/* ----------------------------------------------
  ! main visual & bxslider elements
 ---------------------------------------------- */

.hide {
	display:none;
}

#main-visual {
	position: relative;
	max-width: 1920px;
	margin: 0 auto 0;
	overflow: hidden;
	text-align:center;
}
	@media screen and (min-width : 768px){
		#main-visual {
			margin: 0 auto 70px;
		}
	}

/* bxslider customize */


.bxslider li img {
	width:100%;
}

.bx-wrapper {
	max-width:1000px !important;
	margin-bottom: 0px;
	box-shadow: none;
	border:  none;
}

.bx-wrapper .bx-viewport {
	box-shadow: none;
	border: none;
	left: 0px;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom: 15px;
	z-index:1000;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #fff;
	border-radius:10px;
	border:solid 1px #c0c0c0;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #d22010;
}

.bx-wrapper .bx-pager.bx-default-pager a.active {
	border:solid 2px #fff;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover {
	background: #d22010;
}

.layer {
	width:100%;
	position:absolute;
	left:0;
	bottom:0;
}
	@media screen and (min-width : 768px){
		.bx-wrapper .bx-pager,
		.bx-wrapper .bx-controls-auto {
			bottom: 40px;
			z-index:10000;
		}
		.bx-wrapper {
			max-width:1500px !important;
		}
		.layer {
			width:auto;
			position:absolute;
			bottom:0;
			left:50%;
			margin-left:-960px;
		}
	}


/* ----------------------------------------------
  ! top contents elements
 ---------------------------------------------- */

#top-contents {
	width:100%;
	margin:0 auto 0;
	padding: 0;
	box-sizing: border-box;
}
#top-contents > #primary {
padding:  0 15px 0;
}

#top-contents > #secondary {
	padding:  0 15px 40px;
}
#top-contents > #secondary ul {
	width:70%;
	margin:0 auto 0;
}

#top-contents > #secondary li {
	list-style:none;
	text-align:center;
	margin-bottom:14px;
}

#top-contents > #secondary li img {
	width:100%;
	display:block;
	max-width:100%;
	height:auto;
}

	@media screen and (min-width : 768px){
		
		#top-contents {
			width: 980px;
			padding: 0;
		}
		#top-contents > #primary {
			width:610px;
			float:left;
			padding:  0 ;
		}
			
		#top-contents > #secondary {
			width:330px;
			float:right;
			padding: 0;
		}
		
		#top-contents > #secondary ul {
			width:100%;
			margin:0 auto 0;
		}
		
		#top-contents > #secondary li {
			list-style:none;
			margin-bottom:14px;
		}
	}


/* ----------------------------------------------
  ! news elements
 ---------------------------------------------- */

/* news */

#news .news-title {
	border-bottom:solid 2px #e8403b;
	position:relative;
}
#news .news-title > h1 {
	float:left;
}
#news .news-title > .news-more {
	float:right;	
}

#news-contents {
	width: 100%;
	margin-bottom: 30px;
	border-bottom: solid 1px #dcdddd;
	box-sizing: border-box;
	max-height: 430px;
	overflow: auto;
}

#news-contents dl {
	margin: 0;
	padding: 15px 0;
	border-bottom: dotted 1px #b6b6b6;
}

#news-contents dl.new dt:after {
	content:"　";
	display:inline-block;
	margin-left:0.5em;
	width:32px;
	height:20px;
	background: url(../images/top/icon_new_sp.gif) no-repeat;
	background-size:32px auto;
}

#news-contents dl:last-child {
	border-bottom: none;
}
	
#news-contents dt {
	line-height: 1.4;
}

#news-contents dt {
	display: block;
}

#news-contents dd {
	padding: 0;
	line-height: 1.4;
}

.news-more {
	text-align: center;
}

	@media screen and (min-width : 768px){
		#news .news-title {
			margin-bottom: 20px;
		}
		
		#news-contents {
			max-height: 498px;
		}
		
		#news-contents dl {
			margin: 0;
			padding: 20px 0 35px;
			border-bottom: dotted 1px #b6b6b6;
		}
		#news-contents dl.new {
			background: url(../images/top/icon_new_pc.gif) no-repeat 112px 22px;
		}
		#news-contents dl.new dt:after {
			content: initial;
		}
	
		#news-contents dt {
			width: 132px;
			float: left;
			line-height: 1.4;
		}
	
		#news-contents dt {
			display: inherit;
		}
	
		#news-contents dd {
			margin-left: 166px;
			padding: 0;
			line-height: 1.4;
		}
	}

/* ----------------------------------------------
! facility elements
---------------------------------------------- */

#top-facility {
	clear: both;
	background: #fafafa;
	width: 100%;
	margin: 0 auto 0;
	padding: 15px 0 0;
	box-sizing: border-box;
}

#top-facility .top-facility-wrap > h1 {
	text-align: center;
	margin-bottom: 16px;
}
#top-facility .top-facility-wrap > h1 > img {
	height: 50px;
}
#top-facility .top-facility-area {
	margin-bottom: 20px;
	padding: 0 15px 0;
}
#top-facility .top-facility-area > h2 {
	border-bottom: solid 1px #c7c7c7;
	margin-bottom: 12px;
}
#top-facility .top-facility-area > h2 >img {
	display: block;
	height: 15px;
	margin: 0 auto 15px;
}
#top-facility .top-facility-block {
	background: #fff;
	border: solid 1px #e7e7e7;
	border-radius: 8px;
	margin-bottom: 10px;
}
#top-facility .top-facility-block > a > img {
	float: left;
	width: 50%;
	border-radius: 8px 0 0 8px;
}
#top-facility .top-facility-block .top-facility-inner {
	box-sizing: border-box;
	display: block;
	width: 50%;
	float: right;
	font-size: 0.8em;
	line-height: 1.2;
	padding: 10px;
}
#top-facility .top-facility-inner > .icon-facility {
	display: inline-block;
	background: #a4a4a4;
	font-size: 0.8em;
	color: #fff;
	border-radius: 3px;
	margin-bottom: 6px;
	padding: 1px 3px 0;
}
#top-facility .top-facility-inner > h3 {
	margin-bottom: 8px;
}
#top-facility .top-facility-inner > h3 > img {
	height: 18px;
}

#top-facility .top-facility-inner > h3 > a img {
    max-width: 100%;
}

	@media screen and (min-width : 768px){
		#top-facility > .top-facility-wrap {
			width: 980px;
			margin: 0 auto 0;
			padding: 0;
		}
		#top-facility .top-facility-wrap > h1 {
			padding: 15px 0;
		}
		#top-facility .top-facility-wrap > h1 > img {
			height: auto;
		}
			#top-facility .top-facility-area {
			padding: 0;
		}
		#top-facility .top-facility-area > h2 >img {
			height: 20px;
		}
		#top-facility .top-facility-inner > .icon-facility {
			font-size: 0.9em;
			padding: 3px 5px 1px  5px;
		}
	
		#top-facility .top-facility-inner > h3 > img {
			height: 26px;
		}
		#top-facility .top-facility-block {
			margin-bottom: 20px;
		}
	
		.top-facility-area.nagano {
			width: 480px;
			float: left;
		}
		.top-facility-area.tokyo {
			width: 480px;
			float: right;
		}
	}


/* kanren houjin */

.top-r-facility-area {
	font-size: 0.8em;
	line-height: 1.2;
	box-sizing: border-box;
}
.top-r-facility-area > h2 {
	width: 100%;
	margin-bottom: 10px;
}
.top-r-facility-area > h2 > img {
	width: 100%;
}
#top-facility .top-r-facility-block {
	background: #fff;
	border: solid 1px #e7e7e7;
	border-radius: 8px;
	margin-bottom: 20px;
	padding: 10px 0;
	box-sizing: border-box;
}
.top-r-facility-block > h3 {
	text-align: center;
	margin-bottom: 10px;
}
.top-r-facility-block > h3 > img {
	height: 20px;
}

#top-facility .top-r-facility-inner {
	box-sizing: border-box;
}

#top-facility .top-r-facility-inner.left {
	float: left;
	width: 50%;
	text-align: left;
	padding: 0 8px 0 15px;
}
#top-facility .top-r-facility-inner.right {
	float: right;
	width: 50%;
	text-align: left;
	padding: 0 15px 0 8px;
}

#top-facility .top-r-facility-inner h4 {
	margin-bottom: 10px;
}
.top-r-facility-inner > h4 > img {
	height: 20px;
}
	@media screen and (min-width : 768px){
	
		.top-r-facility-area {
			padding: 0;
			font-size: 0.8em;
			line-height: 1.2;
			box-sizing: border-box;
		}
		.top-r-facility-area > h2 {
			margin-bottom: 5px;
		}
		#top-facility .top-r-facility-block {
			height: 162px;
		}
		#top-facility .top-r-facility-inner.left,
		#top-facility .top-r-facility-inner.right {
			padding: 0 10px 0 45px;
		}
	}





