/* CSS Document */

#pagePath{
	display: none;
	}

#main{}
	#main h2{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		font-family: 'Noto Serif JP', serif;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-indent: -0.1em;
		line-height: 1em;
		}
		#main h2:before{
			content: attr(data-ruby);
			margin-bottom: 1em;
			padding-right: 5em;
			background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" version="1.1" viewBox="0 0 1 1"><rect fill="%231A1A1A" width="1" height="1"/></svg>') center right no-repeat;
			background-size: 4em 0.98px;
			font-size: 0.4em;
			font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
			text-align: left;
			order: -1;
			}

#hero{
	padding: 0;
	overflow: hidden;
	}
	#hero dl{
		position: relative;
		overflow: hidden;
		}
	#hero dl+dl{
		display: none;
		}
	#hero dt{
		display: none;
		}
	#hero dt+dd{
		pointer-events: none;
		}
	#hero dt+dd+dd{
		background: currentColor;
		font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
		z-index: 1;
		}
	#hero dd{}
		#hero dd a{
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 1em;
			color: #fff;
			line-height: 1.5em;
			text-decoration: none;
			}
			#hero dd a:empty{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				opacity: 0;
				}
		#hero dd i{
			margin-left: 0.5em;
			transform: translate(0,0.2em);
			}
		#hero iframe{
			position: absolute;
			top: 50%;
			left: 50%;
			width: 100%;
			height: auto;
			padding: 0;
			aspect-ratio: 16 / 9;
			transform: translate(-50%, -50%);
			}
	#hero .thumb{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 0;
		}
	#hero .slick-arrow{
		position: absolute;
		top: 50%;
		border: none;
		background: rgba(0,0,0,0.6);
		fill: #fff;
		margin: -1.5em 0;
		}

#news{}
	#news nav{
		padding-bottom: 0;
		border-bottom: 1px solid #b3b3b3;
		}
		#news nav ul{
			position: relative;
			display: flex;
			margin-bottom: -1px;
			}
		#news nav li{
			display: flex;
			width: 100%;
			background: #9c1c29;
			color: #fff;
			border: solid transparent;
			border-width: 1px 1px 0 1px;
			}
			#news nav li a{
				display: flex;
				align-items: center;
				justify-content: center;
				width: 100%;
				color: inherit;
				font-family: 'Noto Serif JP', serif;
				line-height: 1.5em;
				text-decoration: none;
				text-align: center;
				}
			#news nav li.select{
				margin-bottom: 0;
				background: #fff;
				border-color: #b3b3b3;
				color: inherit;
				}
				#news nav li:not(.select){
					}
	#news section{
		padding: 0;
		}
	#news section:not(.select){
		display: none;
		}
		#news section h3{
			display: none;
			}
		#news section h3+div+div{
			display: flex;
			justify-content: center;
			margin-top: 1.5em;
			}
			#news section h3+div+div a{
				position: relative;
				display: block;
				width: 100%;
				max-width: 230px;
				padding: 1em;
				padding-right: 3em;
				background: #fff;
				border: 1px solid #b3b3b3;
				color: inherit;
				text-align: center;
				line-height: 1.5em;
				text-decoration: none;
				}
			#news section h3+div+div i{
				position: absolute;
				top: calc(50% - 0.5em);
				right: 1em;
				}
	#news aside{
		position: relative;
		background: #fff;
		border: 1px solid #b3b3b3;
		border-radius: 12px;
		}
		#news aside ul{
			position: static;
			}
		#news aside li{
			padding: 0.5em 0;
			}
			#news aside li a{
				display: block;
				}
			#news aside li img{
				width: 100%;
				height: auto;
				}
	#news .topicsList{
		background: #fff;
		border-bottom: 1px solid #b3b3b3;
		}
		#news .topicsList dl{}
			#news .topicsList dl:last-of-type{
				padding-bottom: 0;
				border: none;
				}
	#news .wrap{
/*		display: flex;*/
		}
	#news .slick-track{
		display: flex;
		align-items: center;
		}
	#news .slick-arrow{
		position: absolute;
		margin: -1.5em;
		}

#area{
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	}
	#area h2+div{
		margin-top: 2em;
		}
		#area h2+div p{
			font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
			line-height: 2em;
			}
	#area nav{
		display: flex;
		}
		#area nav dl{
			display: flex;
			flex-direction: column;
			padding: 1em;
			background: #fff;
			border: 1px solid #B3B3B3;
			border-radius: 12px;
			}
		#area nav dt{
			padding-bottom: 0.8em;
			border-bottom: 1px solid #B3B3B3;
			font-size: 1.25em;
			text-align: center;
			}
		#area nav dt+dd{
			align-self: center;
			width: 100%;
			max-width: 132px;
			margin-top: 1em;
			}
		#area nav dt+dd+dd{
			margin: 1em 0;
			line-height: 1.7em;
			}
		#area nav dd{
			font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
			}
			#area nav dd:last-child{
				margin-top: auto;
				}
			#area nav dd a{
				display: flex;
				align-items: center;
				color: inherit;
				fill: #586080;
				cursor: pointer;
				}
			#area nav dd i{
				margin-right: 0.2em;
				}
			#area nav dd .thumb{
				padding-top: 100%;
				border-radius: 100%;
				}
	#area section{
		position: relative;
		width: min(calc(100vw - 2em) ,800px);
		padding: 0;
		background: #fff;
		border-radius: 12px;
		overflow: hidden;
		}
		#area section h3{
			position: relative;
			padding: 1em;
			border-bottom: 1px solid #b3b3b3;
			font-size: 1.75em;
			font-weight: bold;
			text-align: center;
			}
		#area section h3+div{
			display: grid;
			}
		#area section h4{
			color: #99504d;
			font-size: 1.25em;
			font-weight: bold;
			}
		#area section h4+div{
			margin-top: 1em;
			font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
			line-height: 1.75em;
			}
		#area section h5{
			margin-top: 1em;
			padding-left: 0.5em;
			border-left: 2px solid #9c1c29;
			font-size: 1.2em;
			font-weight: bold;
			}
		#area section h5+div{
			margin-top: 1.5em;
			}
		#area section dl{
			border: 1px solid #b3b3b3;
			border-radius: 12px;
			overflow: hidden;
			}
		#area section dt{
			display: flex;
			justify-content: center;
			grid-gap: 1em;
			padding: 0.8em 1em;
			background: #99504d;
			color: #fff;
			font-size: 1.125em;
			}
			#area section dt:before{
				content: "";
				display: inline-block;
				width: 1em;
				height: 1em;
				-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24.7 24"><path d="M12.76,11.81c.12,2.3-.24,4.97-1.95,6.68l.35,.42c2.04-1.81,3.43-4.36,3.5-7.13,.06-2.77-2.18-4.71-2.75-7.18-.3-1.47,.61-3.15,1.64-4.23l-.34-.37c-1.29,1.24-2.59,2.79-2.65,4.68,.02,1.88,.98,3.46,1.63,5.06,.31,.73,.52,1.43,.58,2.08Zm5.06-.08c.02,.14,.05,.27,.07,.42,.01,.16,.03,.32,.04,.48,.02,.32,.04,.65,.02,.97-.04,1.28-.5,2.71-1.51,3.54l.27,.38c1.47-1.17,2.43-2.94,2.77-4.8,.03-.19,.06-.38,.08-.57,.17-4.18-4.12-5.29-.98-10.16l-.35-.29c-.5,.54-.93,1.11-1.33,1.75-.38,.64-.72,1.37-.78,2.22-.06,.76,0,1.57,.18,2.34,.29,1.39,1.22,2.46,1.51,3.71Zm5.35,2.46c-.25-.28-.55-.54-.88-.79l-.36,.36c.35,.25,.67,.51,.95,.78,.52,.6,.8,1.25,.8,1.93,0,2.89-5.08,5.24-11.33,5.24S1.02,19.37,1.02,16.48c0-.68,.29-1.33,.8-1.93,.28-.27,.6-.54,.95-.78l-.36-.36c-.33,.25-.63,.51-.88,.79-.98,.95-1.53,2.03-1.53,3.19,0,3.65,5.54,6.62,12.35,6.62s12.35-2.97,12.35-6.62c0-1.16-.56-2.24-1.53-3.19Zm-15.96-2.46c.02,.14,.05,.27,.07,.42,.01,.16,.03,.32,.04,.48,.02,.32,.04,.65,.02,.97-.04,1.28-.5,2.71-1.51,3.54l.27,.38c1.47-1.17,2.42-2.94,2.77-4.8,.03-.19,.06-.38,.08-.57,.17-4.18-4.12-5.29-.98-10.16l-.35-.29c-.5,.54-.93,1.11-1.33,1.75-.38,.64-.72,1.37-.78,2.22-.06,.76,0,1.57,.18,2.34,.29,1.39,1.22,2.46,1.51,3.71Z"/></svg>');
				-webkit-mask-repeat: no-repeat;
				-webkit-mask-position: center;
				-webkit-mask-size: contain;
				background: currentColor;
				transform: scale(1.4) translateY(-5%);
				}
		#area section dd{
			padding: 1.125em;
			font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
			line-height: 1.75em;
			}
		#area section ul{
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			grid-gap: 1em;
			}
		#area section li{}
			#area section li:first-child{
				grid-column: 1/3;
				}
		#area section a{
			position: relative;
			display: block;
			width: 100%;
			padding: 1em;
			padding-right: 3em;
			background: #fff;
			border: 1px solid #b3b3b3;
			color: inherit;
			text-align: center;
			line-height: 1.5em;
			text-decoration: none;
			}
			#area section a:hover{
				background: #99504d;
				border-color: transparent;
				color: #fff;
				}
			#area section a:after{
				content: "";
				position: absolute;
				top: 50%;
				right: 1em;
				width: 1em;
				height: 1em;
				-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19 19"><polygon points="19.1 9.63 12.1 7 12.1 9 0.1 9 0.1 10 12.1 10 12.1 12 19.1 9.63"></polygon></svg>');
				-webkit-mask-repeat: no-repeat;
				-webkit-mask-position: center;
				-webkit-mask-size: cover;
				background: currentColor;
				transform: translateY(-50%);
				}
		#area section figure{
			margin-bottom: 2em;
			order: -1;
			}

#areaScreen{
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	width: 100%;
	height: 100vh;
	padding: 2em 0;
	background: rgba(0,0,0,0.75);
	overflow-y: scroll;
	z-index: 200;
	}
	#areaScreen section{
		position: relative;
		margin: auto;
		}
	#areaScreen menu{
		position: absolute;
		top: 0;
		right: 0;
		width: 3em;
		height: 3em;
		padding: 0;
		margin: 0;
		background: #9e814e;
		color: transparent;
		overflow: hidden;
		z-index: 1;
		cursor: pointer;
		}
		#areaScreen menu:after{
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 59 59"><polygon points="42.08 17.13 41.37 16.42 29 28.79 16.63 16.42 15.92 17.13 28.29 29.5 15.92 41.87 16.63 42.58 29 30.21 41.37 42.58 42.08 41.87 29.71 29.5 42.08 17.13"/></svg>');
			-webkit-mask-repeat: no-repeat;
			-webkit-mask-position: center;
			-webkit-mask-size: cover;
			background: #fff;
			}

#areaSlide{
	order: -1;
	}
	#areaSlide .thumb{
		padding-top: 50%;
		}

#areaMap{
	position: relative;
	z-index: -1;
	}

#special{
	overflow: hidden;
	}
	#special h2{
		order: -1;
		}
	#special h2+div+div{
		display: flex;
		justify-content: center;
		margin-top: 2em;
		}
		#special h2+div+div a{
			position: relative;
			display: block;
			width: 100%;
			max-width: 230px;
			padding: 1em;
			padding-right: 3em;
			background: #fff;
			border: 1px solid #b3b3b3;
			color: inherit;
			text-align: center;
			line-height: 1.5em;
			text-decoration: none;
			}
		#special h2+div+div i{
			position: absolute;
			top: calc(50% - 0.5em);
			right: 1em;
			}
	#special dl{
		position: relative;
		display: flex;
		flex-direction: column;
		}
	#special dt{
		position: relative;
		padding-left: 1em;
		font-size: 1.125em;
		fill: #9c1c29;
		line-height: 1.5em;
		}
		#special dt i{
			position: absolute;
			top: 0.15em;
			left: 0;
			}
	#special dt+dd{
		order: -1;
		margin-bottom: 1em;
		}
	#special dd{}
		#special dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0;
			}
	#special .wrap{
		display: flex;
		flex-direction: column;
		}
		#special .wrap:before{
			content: "";
			margin: 2em 0;
			border-bottom: 1px solid #B4B4B4;
			}
	#special .thumb{
		padding-top: 66.66%;
		}

#sns{
	background: #E7E5DD;
	}
	#sns h2{
		display: none;
		}
	#sns nav{}
		#sns nav ul{
			display: flex;
			}
		#sns nav li{
			cursor: pointer;
			}
			#sns nav li a{
				display: flex;
				align-items: center;
				color: inherit;
				text-decoration: none;
				}
			#sns nav li i{
				margin-right: 0.5em;
				}
			#sns nav li svg{
				width: 1.5em;
				height: 1.5em;
				margin: -0.25em 0;
				}
		#sns nav li+li{
			margin-left: 2em;
			}
		#sns nav li.select{
			color: #B4B4B4;
			pointer-events: none;
			}
	#sns section{}
		#sns section:not(.select){
			display: none;
			}
	#sns h3{
		display: flex;
		align-items: center;
		font-size: 1.5em;
		padding-bottom: 1em;
		border-bottom: 1px solid #B4B4B4;
		font-weight: bold;
		letter-spacing: 0.1em;
		}
		#sns h3 i{
			margin-right: 0.5em;
			}
	#sns h3+div{
		margin-top: 1.5em;
		}
	#sns h3+div+div{
		display: flex;
		justify-content: center;
		margin-top: 1.5em;
		}
		#sns h3+div+div a{
			position: relative;
			display: block;
			width: 100%;
			max-width: 230px;
			padding: 1em;
			padding-right: 3em;
			background: #fff;
			border: 1px solid #b3b3b3;
			color: inherit;
			text-align: center;
			line-height: 1.5em;
			text-decoration: none;
			}
		#sns h3+div+div i{
			position: absolute;
			top: calc(50% - 0.5em);
			right: 1em;
			}

#facebook{}
	#facebook h3+div{
		text-align: center;
		}

#instagram{}
	#instagram ul{
		display: flex;
		flex-wrap: wrap;
		}
	#instagram a{
		display: block;
		position: relative;
		padding-top: 100%;
		}
	#instagram img{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		}

#twitter{}
	#twitter h3+div{
		display: flex;
		justify-content: center;
		}
		#twitter h3+div > div{
			width: 100%;
			max-width: 500px;
			height: 500px;
			background: #fff;
			overflow-y: scroll;
			}

#season{}
	#season nav{}
		#season nav ul{
			display: flex;
			}
		#season nav li{
			background: #fff;
			border: 1px solid #b3b3b3;
			cursor: pointer;
			}
			#season nav li.select{
				background: #9c1c29;
				color: #fff;
				pointer-events: none;
				}
		#season nav a{
			display: block;
			padding: 0.8em 1em;
			color: inherit;
			text-align: center;
			text-decoration: none;
			}
		#season nav li+li{
			border-left: none;
			}
	#season section{
		padding-bottom: 0;
		}
		#season section:not(.select){
			display: none;
			}
	#season h3{
		display: none;
		}
	#season dt{
		font-size: 1.25em;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 1.5em;
		}
	#season dt+dd+dd{
		margin-top: 1.5em;
		color: #666;
		font-family: YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
		line-height: 1.7em;
		}
	#season dt+dd+dd+dd{
		display: flex;
		justify-content: center;
		margin-top: 1.5em;
		}
		#season dt+dd+dd+dd a{
			position: relative;
			display: block;
			width: 100%;
			max-width: 230px;
			padding: 1em;
			padding-right: 3em;
			background: #fff;
			border: 1px solid #b3b3b3;
			color: inherit;
			text-align: center;
			line-height: 1.5em;
			text-decoration: none;
			}
		#season dt+dd+dd+dd i{
			position: absolute;
			top: calc(50% - 0.5em);
			right: 1em;
			}
	#season .slide-nav{}
		#season .slide-nav .slick-list{
			margin: 0 -0.5em;
			}
		#season .slide-nav .slick-slide{
			margin: 0 0.5em;
			cursor: pointer;
			}
		#season .slide-nav .slick-current{
			opacity: 0.5;
			}
	#season .slick-arrow{
		position: absolute;
		top: 50%;
		margin: -1.5em;
		}
	#season .slick-prev{
		left: 0;
		}
	#season .slick-next{
		right: 0;
		}

#ranking{}
	#ranking header{
		padding: 0;
		}
		#ranking header nav{}
			#ranking header nav ul{
				display: flex;
				}
			#ranking header nav li{
				background: #fff;
				border: 1px solid #b3b3b3;
				cursor: pointer;
				}
				#ranking header nav li.select{
					background: #9c1c29;
					border-color: transparent;
					color: #fff;
					pointer-events: none;
					}
			#ranking header nav a{
				position: relative;
				display: block;
				padding: 1em;
				padding-right: 2em;
				color: inherit;
				text-align: center;
				text-decoration: none;
				}
			#ranking header nav i{
				position: absolute;
				top: calc(50% - 0.5em);
				right: 1em;
				}
			#ranking header nav li+li{
				margin-left: 1em;
				}
	#ranking section{}
		#ranking section:not(.select){
			display: none;
			}
		#ranking section nav{
			padding-top: 0;
			}
			#ranking section nav ul{
				display: flex;
				justify-content: center;
				border: solid #B4B4B4;
				border-width: 1px 0;
				}
			#ranking section nav li{
				margin-bottom: -1px;
				border-bottom: 1px solid transparent;
				cursor: pointer;
				}
				#ranking section nav li.select{
					color: #9c1c29;
					border-bottom-color: currentColor;
					pointer-events: none;
					}
			#ranking section nav a{
				display: block;
				padding: 1em 0.5em;
				color: inherit;
				text-align: center;
				text-decoration: none;
				}
		#ranking section > div{}
			#ranking section > div:not(.select){
				display: none;
				}
	#ranking h3{
		display: none;
		}
	#ranking h4{
		display: none;
		}
	#ranking h4+div{
		counter-reset: count;
		}
		#ranking h4+div p{
			padding: 10% 0;
			text-align: center;
			opacity: 0.5;
			}
	#ranking dl{
		position: relative;
		display: flex;
		flex-direction: column;
		}
		#ranking dl:before{
			counter-increment: count;
			content: counter(count);
			position: absolute;
			top: 0.5em;
			left: 0.5em;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 2.5em;
			height: 2.5em;
			background: currentColor url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 50 50"><path fill="%23fff" d="M25,9.5A15.5,15.5,0,1,0,40.5,25,15.51,15.51,0,0,0,25,9.5ZM44.17,25a5,5,0,0,1,3.35-4.7,22.83,22.83,0,0,0-.68-2.49,5,5,0,0,1-4.7-8.13,22.33,22.33,0,0,0-1.82-1.82,5,5,0,0,1-8.13-4.7,22.83,22.83,0,0,0-2.49-.68,5,5,0,0,1-9.4,0,22.83,22.83,0,0,0-2.49.68,5,5,0,0,1-8.13,4.7A22.33,22.33,0,0,0,7.86,9.68a5,5,0,0,1-4.7,8.13,22.83,22.83,0,0,0-.68,2.49,5,5,0,0,1,0,9.4,22.83,22.83,0,0,0,.68,2.49,5,5,0,0,1,4.7,8.13,22.33,22.33,0,0,0,1.82,1.82,5,5,0,0,1,8.13,4.7,22.83,22.83,0,0,0,2.49.68,5,5,0,0,1,9.4,0,22.83,22.83,0,0,0,2.49-.68,5,5,0,0,1,8.13-4.7,22.33,22.33,0,0,0,1.82-1.82,5,5,0,0,1,4.7-8.13,22.83,22.83,0,0,0,.68-2.49A5,5,0,0,1,44.17,25ZM25,42.5A17.5,17.5,0,1,1,42.5,25,17.51,17.51,0,0,1,25,42.5Z"/></svg>') center center;
			background-size: 100%;
			color: #B4B4B4;
			font-weight: bold;
			font-size: 1.25em;
			border-radius: 100%;
			pointer-events: none;
			z-index: 1;
			}
			_:-ms-lang(x)::-ms-backdrop, #ranking dl:before{
				width: 2em;
				height: 2em;
				padding-top: 0.4em;
				background: #fff;
				border: 1px solid currentColor;
				}
		#ranking dl:nth-of-type(1){}
			#ranking dl:nth-of-type(1):before{
				color: #9E814E;
				}
		#ranking dl:nth-of-type(2){}
			#ranking dl:nth-of-type(2):before{
				color: #878888;
				}
		#ranking dl:nth-of-type(3){}
			#ranking dl:nth-of-type(3):before{
				color: #9c1c29;
				}
	#ranking dl dt{
		position: relative;
		padding-left: 1em;
		fill: #9c1c29;
		line-height: 1.5em;
		}
		#ranking dl dt i{
			position: absolute;
			top: 0.15em;
			left: 0;
			}
	#ranking dl dt+dd{
		order: -1;
		margin-bottom: 1em;
		}
	#ranking dl dd{}
		#ranking dl dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0;
			}
	#ranking .thumb{
		padding-top: 100%;
		}

#pageLink{
	background: #E7E5DD;
	}
	#pageLink dl{
		position: relative;
		display: flex;
		flex-direction: column;
		padding: 1em;
		background: #fff;
		border: 1px solid #B3B3B3;
		border-radius: 12px;
		}
	#pageLink dt{
		text-align: center;
		line-height: 1.5em;
		}
	#pageLink dt+dd{
		margin-bottom: 1em;
		order: -1;
		}
	#pageLink dd{}
		#pageLink dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			padding: 0;
			opacity: 0;
			}
	#pageLink .wrap{
		display: flex;
		flex-wrap: wrap;
		}
	#pageLink .thumb{
		padding-top: 100%;
		}

#banner{}
	#banner h3,
	#banner h4{
		padding-bottom: 0.5em;
		border-bottom: 1px solid #B3B3B3;
		font-family: 'Noto Serif JP', serif;
		font-weight: 500;
		font-size: 1.25em;
		}
	#banner h3+div,
	#banner h4+div{
		margin-top: 1.5em;
		}
	#banner ul{
		display: flex;
		flex-wrap: wrap;
		}
	#banner li{}
		#banner li a{
			display: block;
			text-align: center;
			}
		#banner li img{
			width: auto;
			height: auto;
			}
	#banner .wrap{
		display: flex;
		flex-direction: column-reverse;
		}



/* for all */
@media (max-width: 1199.98px) {
/*1199px以下*/
}
@media (max-width: 991.98px) {
/*991px以下*/
#news{}
	#main h2{
		margin: auto 1em;
		}
	#news nav{}
		#news nav ul{
			padding: 0 1em;
			}
		#news nav li{
			margin-bottom: 0.5em;
			}
			#news nav li+li{
				margin-left: 0.5em;
				margin-bottom: 0.5em;
				}
		#news nav li a{
			padding: 0.5em;
			}
	#news section{
/*		margin-top: 2em;*/
		}
	#news aside{
		padding: 1em 2em;
		order: -1;
		}
		#news aside li{
			padding: 0 0.5em;
			}
	#news .topicsList{
		padding: 2em 1.5em;
		}
	#news .wrap{
		display: flex;
		flex-direction: column;
		width: 100%;
		}
	#news .slick-arrow{
		top: 50%;
		}
	#news .slick-prev{
		left: 0;
		}
		#news .slick-prev svg{
			transform: rotate(180deg);
			}
	#news .slick-next{
		right: 0;
		}
#area{}
	#area nav{
		flex-wrap: wrap;
		justify-content: space-between;
		}
}


/* for mobile */
@media (max-width: 767.98px) {
/*767以下px*/
#main{}
	#main h2{
		font-size: 1.5em;
		}
#hero{}
	#hero dt+dd{
		position: relative;
		padding-top: 75vw;
		}
	#hero dt+dd+dd{
		position: relative;
		}
	#hero iframe{
		width: auto;
		height: 100vw;
		}
	#hero .slick-arrow{
		top: calc(75vw - 4em);
		margin: 0;
		}
	#hero .slick-prev{
		right: 4em;
		}
	#hero .slick-next{
		right: 1em;
		}
#news{}
	#news aside{
		margin-bottom: 2em;
		}
#area{}
	#area section{}
		#area section h3+div{
			padding: 1em 1.5em;
			}
		#area section div+div{
			margin-top: 1em;
			}
#areaPhoto{
	padding-right: 1.5em;
	}
#special{}
	#special .slick-list{
		margin: 0 -1.5em;
		}
	#special .slick-slide{
		margin: 0 0.75em;
		}
	#special .slick-arrow{
		position: absolute;
		margin: -1.5em 0;
		}
	#special .slick-prev{
		left: 0;
		}
	#special .slick-next{
		right: 0;
		}
#season{}
	#season h3+div+div{
		margin-top: 2em;
		}
#pageLink{}
	#pageLink dl{
		width: calc(50% - 0.75em);
		}
		#pageLink dl:nth-of-type(n+3){
			margin-top: 2em;
			}
	#pageLink .wrap{
		justify-content: space-between;
		}
#banner{}
	#banner ul{
		margin: -0.5em;
		}
	#banner li{
		padding: 0.5em;
		}
	#banner .wrap{}
		#banner .wrap > div+div{
			margin-bottom: 2em;
			}
}
@media (max-width: 767.98px) and (orientation:portrait) {
/*767px以下 縦向き*/
#area{}
	#area nav{}
		#area nav dl{
			width: calc(50% - 0.5em);
			}
			#area nav dl:nth-of-type(n+3){
				margin-top: 1em;
				}
#areaMap{}
	#areaMap img{
		transform: scale(2.7) translate(5%, -10%);
		}
#special{}
	#special .slick-list{
		padding: 0 4em !important;
		}
	#special .slick-arrow{
		top: 5.8em;
		}
#sns{}
	#sns nav{
		padding-top: 0;
		}
		#sns nav ul{
			justify-content: center;
			}
	#sns section{
		padding-bottom: 0;
		}
#instagram{}
	#instagram li{
		width: calc(33.33% - 0.67em);
		}
		#instagram li:not(:nth-of-type(3n+1)){
			margin-left: 1em;
			}
		#instagram li:nth-of-type(n+4){
			margin-top: 1em;
			}
		#instagram li:nth-of-type(n+10){
			display: none;
			}
#season{}
	#season nav{
		padding-bottom: 0;
		}
		#season nav li{
			width: 25%;
			}
	#season section{
		padding-bottom: 0;
		}
	#season dl{
		display: flex;
		flex-direction: column;
		}
	#season dt+dd{
		margin-bottom: 1.5em;
		order: -1;
		}
#ranking{}
	#ranking header{}
		#ranking header nav{
			padding-bottom: 0;
			}
			#ranking header nav li{
				width: 50%;
				}
	#ranking h4+div{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		}
		#ranking h4+div p{
			width: 100%;
			}
	#ranking dl{}
		#ranking dl:first-child{
			width: 100%;
			}
		#ranking dl:nth-of-type(n+2){
			width: calc(50% - 0.75em);
			margin-top: 2em;
			}
#banner{}
	#banner li{
		width: 33.33%;
		}
	#banner h4+div{}
		#banner h4+div li{
			width: 50%;
			}
}
@media (max-width: 767.98px) and (orientation:landscape) {
/*767px以下 横向き*/
#areaMap{}
	#areaMap img{
		transform: scale(1.2) translate(25%, -32%);
		}
#special{}
	#special .slick-list{
		padding: 0 25vw !important;
		}
	#special .slick-arrow{
		top: 7.8em;
		}
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) {
/*767px以下 横向き, 768px以上,*/
#area{}
	#area header{
		display: flex;
		flex-direction: column;
		}
#areaMap{
	order: -1;
	height: 0;
	}
#sns{}
	#sns nav{
		padding: 0;
		height: 0;
		}
		#sns nav ul{
			justify-content: flex-end;
			}
	#sns section{
		padding: 0;
		}
#season{}
	#season nav{
		height: 0;
		padding: 0;
		}
		#season nav ul{
			transform: translate(0, -100%);
			justify-content: flex-end;
			}
		#season nav li{
			width: 7em;
			}
	#season dl{
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 0.6fr 2em 0.4fr;
		grid-template-columns: 0.6fr 0.4fr;
		grid-gap: 0 2em;
		}
	#season dt{
		-ms-grid-column: 3;
		-ms-grid-row: 1;
		}
	#season dt+dd{
		grid-column: 1;
		grid-row:  1/5;
		}
	#season dt+dd+dd{
		-ms-grid-column: 3;
		-ms-grid-row: 2;
		}
	#season dt+dd+dd+dd{
		-ms-grid-column: 3;
		-ms-grid-row: 3;
		}
#ranking{}
	#ranking header{}
		#ranking header nav{
			height: 0;
			padding: 0;
			}
			#ranking header nav ul{
				transform: translate(0, -100%);
				justify-content: flex-end;
				}
			#ranking header nav li{
				width: 12em
				}
	#ranking section{}
		#ranking section nav{}
			#ranking section nav li{
				width: 12em
				}
	#ranking h4+div{
		display: -ms-grid;
		-ms-grid-columns: 1.5fr 2em 1fr 2em 1fr;
		-ms-grid-rows: auto 2em auto;
		display: grid;
		grid-gap: 2em;
		}
		#ranking h4+div p{
			-ms-grid-column: 1;
			-ms-grid-column-span: 5;
			grid-column: 1 / 5;
			}
	#ranking dl{}
		#ranking dl:nth-of-type(1){
			-ms-grid-column: 1;
			-ms-grid-row: 1;
			-ms-grid-row-span: 3;
			grid-column: 1;
			grid-row: 1 / 3;
			}
		#ranking dl:nth-of-type(2){
			-ms-grid-column: 3;
			-ms-grid-row: 1;
			}
		#ranking dl:nth-of-type(3){
			-ms-grid-column: 5;
			-ms-grid-row: 1;
			}
		#ranking dl:nth-of-type(4){
			-ms-grid-column: 3;
			-ms-grid-row: 3;
			}
		#ranking dl:nth-of-type(5){
			-ms-grid-column: 5;
			-ms-grid-row: 3;
			}
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) and (max-width: 991.98px) {
/*767px以下 横向き, 768px～991px*/
#news{}
	#news h2{
		margin: auto;
		padding: 0 1em;
		width: 720px;
		}
	#news ul{
		margin: auto;
		padding: 0;
		width: 720px;
		}
#area{}
	#area nav{}
		#area nav dl{
			width: calc(33.33% - 1em);
			}
			#area nav dl:nth-of-type(n+4){
				margin-top: 1.5em;
				}
#instagram{}
	#instagram li{
		width: calc(25% - 0.75em);
		}
		#instagram li:not(:nth-of-type(4n+1)){
			margin-left: 1em;
			}
		#instagram li:nth-of-type(n+5){
			margin-top: 1em;
			}
		#instagram li:nth-of-type(n+9){
			display: none;
			}
#ranking{}
	#ranking h4+div{
		grid-template-columns: 1.5fr 1fr 1fr;
		}
#banner{}
	#banner li{
		width: 20%;
		}
	#banner h4+div{}
		#banner h4+div li{
			width: 25%;
			}
}


/* for tablet */
@media (min-width: 768px) {
/*768px以上*/
#main{}
	#main h2{
		font-size: 2.5em;
		}
#hero{}
	#hero dl{
		padding-top: 75%;
		}
	#hero dt+dd+dd{
		position: absolute;
		right: 0;
		bottom: 1.5em;
		max-width: 100%;
		}
	#hero iframe{
		width: auto;
		height: 134%;
		}
	#hero .slick-prev{
		left: 2em;
		}
	#hero .slick-next{
		right: 2em;
		}
#special{}
	#special .slide{
		position: relative;
		display: flex;
		flex-direction: column;
		}
	#special .slick-list{
		align-self: center;
		width: 100vw;
		}
	#special .slick-arrow{
		position: absolute;
		top: -7em;
		right: 0;
		}
	#special .slick-prev{
		margin-right: 1em;
		transform: translate(-100%,0);
		}
#pageLink{}
	#pageLink dl{
		width: calc(25% - 1.25em);
		}
		#pageLink dl:not(:nth-of-type(4n+1)){
			margin-left: 1.5em;
			}
		#pageLink dl:nth-of-type(n+5){
			margin-top: 2em;
			}
	#pageLink .wrap{
		flex-wrap: wrap;
		}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
/*768px～1199px*/
}
@media (min-width: 768px) and (max-width: 991.98px) {
/*768px～991px*/
#news{}
	#news aside{
		margin-bottom: 3em;
		}
#area{}
	#area section{}
		#area section h3+div{
			padding: 1.5em 3em;
			}
		#area section div+div{
			margin-top: 1.5em;
			}
#areaMap{}
	#areaMap img{
		transform: scale(1.2) translate(27%, -32%);
		}
#areaSlide{
	padding-right: calc(50% - 310px);
	}
#special{}
	#special .slick-slide{
		margin: 0 1.5em;
		}
	#special .slick-list{
		padding: 0 calc(50vw - 360px - 1.5em)!important;
		}
#twitter{}
	#twitter h3+div{
		height: 30em;
		}
#season{}
	#season h3+div+div{
		margin-top: 3em;
		}
	#season dl{
		-ms-grid-columns: 0.6fr 3em 0.4fr;
		grid-gap: 0 3em;
		}
#ranking{}
	#ranking h4+div{
		-ms-grid-columns: 1.5fr 3em 1fr 3em 1fr;
		-ms-grid-rows: auto 3em auto;
		grid-gap: 3em;
		}
#banner{}
	#banner ul{
		margin: -0.75em;
		}
	#banner li{
		padding: 0.75em;
		}
	#banner .wrap{}
		#banner .wrap > div+div{
			margin-bottom: 3em;
			}
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
#hero{}
	#hero dl{
		padding-top: 40%;
		}
	#hero dt+dd+dd{
		margin-left: 4em;
		}
	#hero iframe{
		width: 100%;
		height: auto;
		}
#news{}
	#news h2{
		grid-column: 1;
        grid-row: 1 / 3;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" version="1.1" viewBox="0 0 1 1"><rect fill="%231A1A1A" width="1" height="1"/></svg>') 0.5em 5em no-repeat;
		background-size: 0.98px calc(100% - 7em);
		}
		#news h2:before{
			margin: 0;
			padding: 0;
			background: none;
			}
	#news nav{
		margin-left: 4em;
		padding-top: 1em;
		}
		#news nav ul{
			margin: 0 4em -1px;
			}
		#news nav li{
			margin-bottom: 0.5em;
			}
			#news nav li+li{
				margin-left: 0.5em;
				margin-bottom: 0.5em;
				}
			#news nav li a{
				padding: 1em;
				}
	#news section{
		margin-left: 4em;
		}
		_:-ms-lang(x)::-ms-backdrop, #news section{
			width: calc(100% - 300px);
			}
	#news aside{
		align-self: flex-start;
		margin-left: 4em;
		padding: 2em 1em;
		}
		#news aside ul{
			width: 200px;
			}
		#news aside li{
			width: auto !important;
			padding: 0.5em 0;
			}
			#news aside li a{
				display: block;
				}
			#news aside li img{
				width: auto;
				height: 68px;
				}
	#news .topicsList{
		padding: 3em;
		}
	#news .wrap{
		display: grid;
		grid-template-columns: auto 1fr;
		}
	#news .slick-track{
		flex-direction: column;
		}
	#news .slick-arrow{
		left: 50%;
		}
	#news .slick-prev{
		top: 0;
		}
		#news .slick-prev svg{
			transform: rotate(-90deg);
			}
	#news .slick-next{
		bottom: 0;
		}
		#news .slick-next svg{
			transform: rotate(90deg);
			}
#area{}
	#area nav{}
		#area nav dl{
			width: 16.6%;
			}
		#area nav dl+dl{
			margin-left: 1em;
			}
	#area section{}
		#area section h3+div{
			padding: 2em 4em;
			}
		#area section div+div{
			margin-top: 2em;
			}
#special{}
	#special .slick-slide{
		margin:  0 2em;
		}
#instagram{}
	#instagram li{
		width: calc(20% - 0.8em);
		}
		#instagram li:not(:nth-of-type(5n+1)){
			margin-left: 1em;
			}
		#instagram li:nth-of-type(n+6){
			margin-top: 1em;
			}
#season{}
	#season h3+div+div{
		margin-top: 4em;
		}
	#season dl{
		-ms-grid-columns: 0.6fr 4em 0.4fr;
		grid-gap: 0 4em;
		}
#ranking{}
	#ranking h4+div{
		-ms-grid-columns: 1.5fr 4em 1fr 4em 1fr;
		-ms-grid-rows: auto 4em auto;
		grid-template-columns: 2fr 1fr 1fr;
		grid-gap: 4em;
		}
#banner{}
	#banner ul{
		margin: -1em;
		}
	#banner li{
		width: 16.66%;
		padding: 1em;
		}
	#banner h4+div{}
		#banner h4+div li{
			width: 20%;
			}
	#banner .wrap{}
		#banner .wrap > div+div{
			margin-bottom: 4em;
			}
}
@media (min-width: 992px) and (max-width: 1199.98px) {
/*992px～1199px*/
#areaSlide{
	padding-right: calc(50% - 480px);
	}
#areaMap{}
	#areaMap img{
		transform: scale(1.1) translate(28%, -42%);
		}
#special{}
	#special .slick-list{
		padding: 0 calc(50vw - 480px - 2em)!important;
		}
}
@media (min-width: 1200px) {
/*1200px以上*/
#areaSlide{
	padding-right: calc(50% - 570px);
	}
#areaMap{}
	#areaMap img{
		transform: scale(1) translate(30%, -45%);
		}
#special{}
	#special .slick-list{
		padding: 0 calc(50vw - 570px - 2em)!important;
		}
}
@media (min-width: 1400px) {
/*1400px以上*/
}


