﻿@charset "UTF-8";
article#main-visual {
	margin-bottom: 50px;
}
#list{}
#list ul{
	overflow: hidden;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
#list ul li{
	float: left;
	width: 380px;
	margin: 0 30px 30px 0;
	background: #fff;
	position: relative;
}
#list ul li:nth-child(3n){margin-right: 0;}
#list ul li > a{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
}
#list ul li img{width: 100%;}
#list ul li:hover{
	opacity: 0.8;
}
#list ul li .img-box {
  width: 380px;
  height: 240px;
  overflow: hidden;
  position: relative;
     background-color: #dfdfdf;
}

#list ul li .img-box>img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}



span.cat {
	font-size: 13px;
	border-radius: 11px;
	display: inline-block;
	color: #fff;
	width: 72px;
	box-sizing: border-box;
	text-align: center;
	padding-top: 1px;
}
#list ul li figure figcaption{
	padding: 12px 20px;
	box-sizing: border-box;
}
#list ul li figure figcaption dl dt{
	margin-bottom: 5px;
}
#list ul li figure figcaption dl dd{
	line-height: 1.45;
}
.planning{background: #4585d8;}
.library{background: #4bb7b0;}
.university{background: #8bae6f;}
.cafe{background: #ecae5d;}
.crafts{background: #cd7474;}
.course{background: #7b7b7b;}
.other {background: #bbbbbb;}
/* DIRECTION CONTROLS (NEXT / PREV) */
.slick-prev {
	left: 25px;
	z-index: 1;
}
.slick-next {
	right: 25px;
	z-index: 1;
}
.slick-prev:before {
	content: url(/img/pc/top/prev-arrow.png);
	width: 36px;
	height: 60px;
	display: block;
}
.slick-next:before {
	content: url(/img/pc/top/next-arrow.png);
	width: 36px;
	height: 60px;
	display: block;
}
ul.slider {
	width: 100%;
	margin: 0 auto;
	overflow: visible;
}
/*
p.caption {
	display: none;
	position: absolute;
	bottom: 0;
	background: rgba(255,255,255,0.6);
	width: 100%;
	padding: 20px;
	min-height: 100px;
	box-sizing: border-box;
	font-size: 14px;
}
p.caption span.inner {
	width: 1280px;
	margin: 0 auto;
	display: block;
}
p.caption span.inner span {
	font-size: 26px;
}*/

#main {
	width: 865px;
	float: left;
}
#main > article{
	position: relative;
}
/*section*/
#main > article > section{
	background: #fff;
	margin-top: 30px;
}
#main > article > section#information {
	margin-top: 0;
}
section.section-style {
	width: 865px;
	position: relative;
}
section.section-style h2{
	font-size: 20px;
	color: #0a3d7f;
	border-bottom: 2px solid #0a3d7f;
	padding: 23.5px 20px;
	background: #fff;
	line-height: 1;
}
section.section-style h2 span{
	border-left: 4px solid #0a3d7f;
	line-height: 1;
	padding-left: 10px;
	display: inline-block;
}
section.section-style h2 span.small {
	font-size: 14px;
	display: inline-block;
	border-left: none;
	padding-left: 0;
	letter-spacing: -1px;
}
a.detail-link {
	position: absolute;
	top: 22px;
	right: 20px;
	font-size: 15px;
	color: #444;
	text-decoration: none;
	padding-left: 20px;
	background: url(/common/img/ico/list-arrow.png) no-repeat left center;
	line-height: 20px;
}
.list-box {
	padding: 15px 0px 20px;
	margin: 0 20px;
}
#tomorrow {
	border-top: 1px dashed #ccc;
}
.list-box h3 {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 10px;
}


.list-box ul li dl {
	display: flex;
	align-items: center;
}

.list-box ul li dl dt,
.list-box ul li dl dd {
	padding: 8px 0;
}

.list-box ul li dl dt {
	margin-right: 20px;
	white-space: nowrap;
}

#information .list-box ul li dl dt {
	width: 220px;
	margin-right: 0;
	display: flex;
	align-items: center;
}

#information .list-box ul li dl dt > span {
	font-size: 14px;
}

.list-box ul li dl dd {
	min-width: 600px;
}
.list-box ul li dl dd a{
	color: #0a3d7f;
}
span.date {
	margin-left: 10px;
	margin-right: 15px;
	line-height: 20px;
	display: inline-block;
}
.cont-box {
	padding: 25px 20px 30px;
}
.cont-box figure{
	overflow: hidden;
}
.cont-box figure .img-box{
	float: left;
}
.cont-box figure figcaption{
	float: left;
}
.cont-box figure figcaption dl {
	width: 375px;
    margin-left: 15px;
}
.cont-box figure figcaption dl dt {
	font-size: 20px;
	margin-bottom: 7px;
}
.map-box {
	margin-top: 26px;
	height: 320px;
}
div#map_canvas {
	width: 100%;
	height: 320px;
}
/* ====================================
ブラウザ幅が767pxの時のスタイル
=======================================*/
@media screen and (max-width: 767px) {

	ul.slider {
		width: 100%;
		margin: 0 auto;
		overflow: visible;
	}
	#list ul{
		display: block !important;
		margin: 0;
		overflow: visible;
	}
	#list ul li {
		margin: 5px;
	}
	#list ul li figure figcaption {
		min-height: 91px;
		padding: 10px 15px;
	}
  #list ul li .img-box {
  	width: 100%;
  	height: 146px;
  }
	article#main-visual {
		margin-bottom: 35px;
	}
	span.cat {
		padding-top: 0;
	}
	/*-- main
	-----------------------*/
	main#main {
		width: 100%;
		float: none;
	}
	section.section-style {
		width: 100%;
		position: relative;
	}
	p.caption {
		width: 100%;
		font-size: 13px;
	}
	p.caption span.inner {
		width: 100%;
	}
	p.caption span.inner span {
		font-size: 20px;
		font-weight: 500;
		letter-spacing: -1px;
	}
	#information{
		padding-bottom: 68px;
	}
	#event{
		padding-bottom: 68px;
	}
	#tomorrow{
		border-top:1px dashed #cccccc;
	}
	.list-box {
		padding: 30px 0px 25px;
	}
	.list-box ul li{
		margin-top: 20px;
	}
	.list-box ul li:first-child{
		margin-top: 0;
	}
	.list-box ul li dl {
		flex-wrap: wrap;
	}
	.list-box ul li dl dt, .list-box ul li dl dd {
		display: block;
	}
	.list-box ul li dl dt{
		padding: 0;
		white-space: wrap;
	}
	.list-box ul li dl dd {
		min-width: 100%;
		font-size: 14px;
		line-height: 1.4;
		text-align: justify;
	}
	.list-box h3 {
		font-size: 16px;
  }
	.cont-box {
		padding: 25px 20px 94px;
	}
	.cont-box figure .img-box {
		float: none;
		margin-bottom: 10px;
	}
	.cont-box figure figcaption {
		float: none;
	}
	.cont-box figure figcaption dl {
		width: 100%;
		margin-left: 0;
	}
	.cont-box figure figcaption dl dd a{
		color: #0a3d7f;
	}
	a.detail-link {
		position: absolute;
		top: auto;
		right: auto;
		bottom: 38px;
		left: 50%;
		font-size: 15px;
		color: #444;
		text-decoration: none;
		padding-left: 20px;
		background: url(/common/img/sp/ico/ico-sp-pager-next.png) no-repeat;
		background-size: 8px;
		background-position: left;
		line-height: 20px;
		margin-left: -55px;
	}
	#event a.detail-link {
		margin-left: -77px;
	}
	.map-box.sp {
		margin-top: 26px;
		height: 200px;
	}

	span.date {
		font-size: 17px;
	}
	.slick-prev, .slick-next {
		width: 20px;
		height: 30px;
		top: calc((100% - 30px)/2);
	}
	.slick-prev {
		left: 20px;
		z-index: 1;
	}
	.slick-next {
		right: 20px;
		z-index: 1;
	}
	.slick-prev:before {
		content: "";
		background: url(/img/pc/top/prev-arrow.png) no-repeat;
		background-size: contain;
		width: 20px;
		height: 30px;
		display: block;
	}
	.slick-next:before {
		content: "";
		background: url(/img/pc/top/next-arrow.png) no-repeat;
		background-size: contain;
		width: 20px;
		height: 30px;
		display: block;
	}
	div#map_canvas {
		width: 100%;
		height: 200px;
	}
}