/* CSS Document */


/* slick minify */
.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:rgba(0,0,0,0)}.slick-list,.slick-slider{position:relative;display:block}.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{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.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-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}



#main{}
	#main h2,
	#main h3{
		font-family: ten-mincho-text, serif;
		font-weight: 400;
		}

#pagePath{
	display: none;
	}

#hero{
	padding: 0;
	}
	#hero figure{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		}
	#hero figcaption{
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 1em;
		font-family: ten-mincho-text, serif;
		z-index: 1;
		}
		#hero figcaption span{
			display: block;
			line-height: 1.4em;
			margin: 0.2em 0;
			padding: 0.5em 1em;
			background: rgba(255,255,255,0.9);
			}
	#hero a{
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #1a1a1a;
		text-decoration: none;
		}
	#hero .thumb{
		width: 100%;
		height: 100%;
		}
	#hero .thumb-item{}
		#hero .thumb-item .thumb{
			position: absolute;
			top: 0;
			left: 0;
			padding: 0;
			}
	#hero .thumb-item-nav{
		margin-top: 0.5em;
		}
		#hero .thumb-item-nav li+li{
			margin: 0 0.25em;
			}
		#hero .thumb-item-nav .thumb{
			padding-top: 33.33%;
			}
	#hero .slick-arrow{
		fill: #fff;
		font-size: 3em;
		opacity: 0.5;
		}
	#hero .slick-dots{
		display: flex;
		align-items: center;
		justify-content: center;
		list-style: none;
		}
		#hero .slick-dots li{
			margin: 1em 0.5em;
			margin-bottom: 0;
			opacity: 0.5;
			}
			#hero .slick-dots li.slick-active{
				opacity: 1;
				}
		#hero .slick-dots button{
			width: 12px;
			height: 12px;
			padding: 0;
			border-radius: 10px;
			color: transparent;
			overflow: hidden;
			}

#activity{}
	#activity h2+div{
		display: flex;
		flex-wrap: wrap;
		}
	#activity dl{
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		padding: 1em;
		background: #f2f2f2;
		fill: #3684c6;
		}
		#activity dl:hover{
			fill: #e3007f;
			}
	#activity dl+dl{}
		#activity dl+dl dt{
			display: flex;
			align-items: center;
			justify-content: center;
			height: 100%;
			min-height: 2em;
			}
		#activity dl+dl dt+dd{}
			#activity dl+dl dt+dd svg{
				font-size: 6em;
				}
	#activity dt{
		font-family: ten-mincho-text, serif;
		font-size: 1.2em;
		line-height: 1.4em;
		text-align: center;
		}
	#activity dt+dd{
		display: flex;
		justify-content: center;
		order: -1;
		}
		#activity dt+dd svg{
			font-size: 10em;
			transition-property: inherit;
			transition-duration: inherit;
			transition-timing-function: inherit;
			}
	#activity dd+dd{}
		#activity dd+dd:not(:last-child){
			margin-top: 0.5em;
			line-height: 1.4em;
			}
	#activity dd{}
		#activity dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0;
            transition-duration:0.2s;
			}

#search{
	background: #f2f2f2;
	}
	#search h2{
		display: flex;
		align-items: center;
		}
		#search h2 i{
			display: flex;
			align-items: center;
			margin-right: 0.5em;
			}
		#search h2 svg{
			transform: scale(1.4);
			}

#searchForm{}
	#searchForm form{
		display: flex;
		}
	#searchForm button{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 6em;
		padding: 0.8em 0.5em;
		margin-left: 0.5em;
		background: #333;
		}
		#searchForm button i{
			display: flex;
			align-items: center;
			justify-content: center;
			margin-right: 0.4em;
			}
		#searchForm button svg{
			transform: scale(1.4);
			}
	#searchForm .buttonSet{
		margin-top: 1em;
		}

#searchMap{}
	#searchMap svg{
		width: 100%;
		height: 100%;
		}
		#searchMap svg a{
			text-decoration: none;
			cursor: pointer;
			}
		#searchMap svg a:hover rect{
			fill: #e3007f;
			}
		#searchMap svg a:hover use{
			fill: rgba(204,0,102,0.2);
			}
	#searchMap use{
		fill: #ccc;
		stroke: #f2f2f2;
		stroke-width: 2px;
		stroke-linejoin: round;
		transition: fill 0.2s ease-out;
		}
	#searchMap rect{
		fill: #3284c3;
		transition: fill 0.2s ease-out;
		}
	#searchMap text{
		fill: #fff;
		}
	#searchMap line{
		fill: none;
		stroke: #1a1a1a;
		stroke-width: 2px;
		}
	#searchMap circle{
		fill: #fff;
		stroke: #1a1a1a;
		stroke-width: 2px;
		}
	#searchMap .select{}
		#searchMap .select use{
			fill: #3284c3;
			fill-opacity: 0.2;
			}
		#searchMap .select circle{
			fill: #3284c3;
			}

#topics{
	padding: 0;
	}
	#topics h2{
		display: none;
		}
	#topics section+section{
		padding-top: 0;
		}
	#topics h3+div{
		border-top: 2px solid #1a1a1a;
		}
	#topics a:not([class])[href^="http"][target="_blank"] svg{
		transform: scale(1);
		}

#overview{
	position: relative;
	background: #232286;
	color: #fff;
	}
	#overview:before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url("../images/overviewBg.jpeg") center center no-repeat;
		background-size: cover;
		opacity: 0.5;
		}
	#overview h2{}
		#overview h2:after{
			background: #fff;
			}
	#overview ul{
		display: flex;
		list-style: none;
		}
	#overview .wrap{
		position: relative;
		z-index: 1;
		}

#overviewNav{}
	#overviewNav li{
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		}
		#overviewNav li a{
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 1em 0;
			color: #fff;
			fill: #fff;
			line-height: 1.4em;
			text-decoration: none;
			}
            #overviewNav li a:hover{
                text-decoration: underline;
            }
		#overviewNav li i{
			display: flex;
			align-items: center;
			justify-content: center;
			width: 1em;
			height: 1em;
			margin-left: 1em;
			}

#overviewBanner{}
	#overviewBanner .slick-slider{
		display: block;
		}
	#overviewBanner .slick-arrow{
		fill: #fff;
		}




/* for all */
@media (max-width: 1199px) {
/*1199px以下*/
}
@media (max-width: 991px) {
/*991px以下*/
}


/* for mobile */
@media (max-width: 767px) {
/*767px以下*/
#hero{}
	#hero figcaption{
		font-size: 1.4em;
		}
#activity{}
	#activity h2+div{
		justify-content: space-between;
		}
	#activity dl{
		width: 100%;
		}
		#activity dl:first-child{}
			#activity dl:first-child dt{
				font-size: 1.4em;
				}
	#activity dl+dl{
		width: calc(50% - 0.5em);
		margin-top: 1em;
		}
#overviewBanner{}
	#overviewBanner .slick-slider{
		margin: 0 -0.5em;
		}
	#overviewBanner .slick-list{
		margin: 0 2em;
		}
}
@media (max-width: 767px) and (orientation:portrait) {
/*767px以下 縦向き*/
#hero{}
	#hero figure{
		height: 50vw;
		}
#overview{}
	#overview ul{
		flex-direction: column;
		}
#overviewNav{}
	#overviewNav li+li{
		border-top: none;
		}
#overviewBanner{}
	#overviewBanner ul{}
		#overviewBanner ul > li+li{
			margin-top: 1em;
			}
}
@media (max-width: 767px) and (orientation:landscape) {
/*767px以下 横向き*/
#hero{}
	#hero figure{
		height: 33vw;
		}
#media{}
	#media h2+div{
		text-align: center;
		}
	#media ul{
		flex-wrap: wrap;
		}
	#media li{
		width: calc(50% - 0.5em);
		}
		#media li:nth-of-type(2n+1){
			margin-left: 0;
			}
		#media li:nth-of-type(n+3){
			margin-top: 1em;
			}
		#media li:nth-of-type(n+3):last-child{
			margin-right: auto;
			}
#overview{}
	#overview ul{
		flex-wrap: wrap;
		}
#overviewNav{}
	#overviewNav ul{
		justify-content: space-between;
		}
	#overviewNav li{
		width: calc(50% - 0.5em);
		}
		#overviewNav li:nth-of-type(n+3){
			border-top: none;
			}
#overviewBanner{}
	#overviewBanner ul{}
		#overviewBanner ul > li{
			width: calc(50% - 0.5em);
			margin-left: 1em;
			}
			#overviewBanner ul > li:nth-of-type(2n+1){
				margin-left: 0;
				}
			#overviewBanner ul > li:nth-of-type(n+3){
				margin-top: 1em;
				}
			#overviewBanner ul > li:nth-of-type(n+3):last-child{
				margin-right: auto;
				}
	#overviewBanner .slick-slider{
		margin: 0 calc(25% - 1.75em);
		}
}


/* for TabletPC */
@media (min-width: 768px) {
/*768px以上*/
#hero{}
	#hero figure{
		height: 33vw;
		}
	#hero figcaption{
		font-size: 1.6em;
		}
#activity{}
	#activity h2+div{
		flex-direction: column;
		align-content: space-between;
		justify-content: space-between;
		}
	#activity dl{
		width: calc(25% - 0.75em);
		height: 100%;
		}
	#activity dl+dl{}
		#activity dl+dl:nth-of-type(odd){
			height: calc(50% - 1em);
			}
		#activity dl+dl:nth-of-type(even){
			height: 50%;
			}
#search{}
	#search .wrap{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		}
		#search .wrap > div+div{
			margin: 0;
			}
#media{}
	#media h2+div{
		text-align: center;
		}
	#media ul{
		flex-wrap: wrap;
		}
#overview{}
	#overview ul{
		flex-wrap: wrap;
		}
#overviewNav{}
	#overviewNav ul{
		justify-content: space-between;
		}
	#overviewNav li{}
		#overviewNav li:nth-of-type(n+3){
			border-top: none;
			}
}
@media (min-width: 768px) and (max-width: 1199px) {
/*768px～1199px*/
}
@media (min-width: 768px) and (max-width: 991px) {
/*768px～991px*/
#activity{}
	#activity h2+div{
		height: 22em;
		}
#search{}
	#search .wrap{}
		#search .wrap > div{
			width: calc(60% - 2em);
			}
		#search .wrap > div+div{
			width: 40%;
			margin: -1em 0;
			}
#media{}
	#media li{
		width: calc(50% - 0.75em);
		margin-left: 1.5em;
		}
		#media li:nth-of-type(2n+1){
			margin-left: 0;
			}
		#media li:nth-of-type(n+3){
			margin-top: 1.5em;
			}
		#media li:nth-of-type(n+3):last-child{
			margin-right: auto;
			}
#overviewNav{}
	#overviewNav li{
		width: calc(50% - 1.5em);
		}
#overviewBanner{
	margin-top: 3em;
	}
	#overviewBanner ul{}
		#overviewBanner ul > li{
			width: calc(50% - 0.75em);
			margin-left: 1.5em;
			}
			#overviewBanner ul > li:nth-of-type(2n+1){
				margin-left: 0;
				}
			#overviewBanner ul > li:nth-of-type(n+3){
				margin-top: 1.5em;
				}
			#overviewBanner ul > li:nth-of-type(n+3):last-child{
				margin-right: auto;
				}
	#overviewBanner .slick-list{
		margin: 0 -0.75em;
		}
	#overviewBanner .slick-slide{
		margin: 0 0.75em;
		}
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
#activity{}
	#activity h2+div{
		height: 23em;
		}
	#activity dl{}
		#activity dl:first-child{
			padding: 1.5em;
			}
			#activity dl:first-child dt{
				font-size: 1.4em;
				}
#media{}
	#media li{
		width: calc(33.33% - 1.333em);
		margin-left: 2em;
		}
		#media li:nth-of-type(3n+1){
			margin-left: 0;
			}
		#media li:nth-of-type(n+4){
			margin-top: 2em;
			}
		#media li:nth-of-type(n+4):last-child{
			margin-right: auto;
			}
#search{}
	#search .wrap{}
		#search .wrap > div{
			width: calc(55% - 2em);
			}
		#search .wrap > div+div{
			width: 45%;
			margin: -2em 0;
			}
#overviewNav{}
	#overviewNav li{
		width: calc(50% - 2em);
		}
		#overviewNav li a{
			font-size: 1.2em;
			}
#overviewBanner{
	margin-top: 4em;
	}
	#overviewBanner ul{}
		#overviewBanner ul > li{
			width: calc(33.33% - 1.333em);
			margin-left: 2em;
			}
			#overviewBanner ul > li:nth-of-type(3n+1){
				margin-left: 0;
				}
			#overviewBanner ul > li:nth-of-type(n+4){
				margin-top: 2em;
				}
			#overviewBanner ul > li:nth-of-type(n+4):last-child{
				margin-right: auto;
				}
	#overviewBanner .slick-list{
		margin: 0 -1em;
		}
	#overviewBanner .slick-slide{
		margin: 0 1em;
		}
	#overviewBanner .slick-arrow{
		font-size: 3em;
		}
	#overviewBanner .slick-prev{
		left: -1em;
		}
	#overviewBanner .slick-next{
		right: -1em;
		}
}
@media (min-width: 992px) and (max-width: 1199px) {
/*992px～1199px*/
#search{}
	#search .wrap{
		padding: 0 50px;
		}
}
@media (min-width: 1200px) {
/*1200px以上*/
#search{}
	#search .wrap{
		padding: 0 80px;
		}
}


/* ie */
@media all and (-ms-high-contrast: none){
}




