@charset "UTF-8";



	
/* event-calendar
------------------------------  */
#event-calendar ul.held-btn {
	margin-bottom: 30px;
}
	#event-calendar ul.held-btn li {
		width: 49%;
	}
		#event-calendar ul.held-btn li a {
			display: flex;
			justify-content: center;
			align-items: center;
			text-align: center;
			height: 50px;
			background: #fff;
			border-radius: 10px;
			font-size: 1.8rem;
			font-weight: 700;
			line-height: 1.3em;
			padding-top: 3px;
		}
		#event-calendar ul.held-btn li a:hover {
			opacity: 0.7;
		}
		#event-calendar ul.held-btn li.select a {
			background: #1B926A;
			color: #fff;
			pointer-events: none;
			position: relative;
		}
		#event-calendar ul.held-btn li.select a:before {
			content: "";
			width: 0;
			height: 0;
			border-style: solid;
			border-color: #1b926a transparent transparent transparent;
			border-width: 10px 10px 0px 10px;
			position: absolute;
			bottom: -10px;
			left: 50%;
			margin-left: -10px;
		}

#event-calendar .calendar .head {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 25px;
}
	#event-calendar .calendar .head .now {
		padding: 3px 40px 0 40px;
		font-size: 3.0rem;
		font-weight: 700;
		line-height: 1;
		text-align: center;
	}

	#event-calendar .calendar .head a.link {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		height: 46px;
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1;
	}
	#event-calendar .calendar .head a.link:hover {
		opacity: 0.7;
	}
		#event-calendar .calendar .head a.link img {
			width: 46px;
		}
		#event-calendar .calendar .head a.link span {
			display: block;
			margin-top: 3px;
		}
		#event-calendar .calendar .head a.link.prev span {
			margin-left: 10px;
		}
		#event-calendar .calendar .head a.link.next span {
			margin-right: 10px;
		}

#event-calendar .calendar .table-calendar {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	margin-bottom: 20px;
}
	#event-calendar .calendar .table-calendar th {
		width: 14.2857142857%;
		border: solid 1px #212121;
		font-size: 1.4rem;
		text-align: center;
		line-height: 1;
		padding: 13px 10px 10px 10px;
	}
	#event-calendar .calendar .table-calendar td {
		width: 14.2857142857%;
		border: solid 1px #212121;
		text-align: center;
		vertical-align: top;
		font-size: 1.4rem;
		line-height: 1;
		padding: 13px 10px 10px 10px;
	}
	#event-calendar .calendar .table-calendar th.sat,
	#event-calendar .calendar .table-calendar td.sat {
		color: #0098D0;
	}
	#event-calendar .calendar .table-calendar th.sun,
	#event-calendar .calendar .table-calendar td.sun,
	#event-calendar .calendar .table-calendar td.holiday {
		color: #F22335;
	}
	#event-calendar .calendar .table-calendar td.blank {
		background: #E9E9E9;
	}
	#event-calendar .calendar .table-calendar td.today {
		background: #E8F4F0;
	}
		#event-calendar .calendar .table-calendar td span {
			display: block;
		}

		#event-calendar .calendar .table-calendar td a.aclink {
			display: flex;
			justify-content: center;
			align-items: center;
			background: #F3F3F3 url("../img/common/icon_calendar_arrow.svg") no-repeat right 10px  center / 9px;
			border-radius: 5px;
			font-size: 1.2rem;
			padding: 6px 0;
			text-align: center;
			margin-top: 8px;
			cursor: pointer;
		}
		#event-calendar .calendar .table-calendar td.today a.aclink {
			background: #fff url("../img/common/icon_calendar_arrow.svg") no-repeat right 10px  center / 9px;
		}
		/*#event-calendar .calendar .table-calendar td.past a.aclink {
			background: #F3F3F3 none;
			color: #212121;
			pointer-events: none;
		}*/
		#event-calendar .calendar .table-calendar td a.aclink:hover {
			opacity: 0.7;
		}
@media screen and (max-width: 1024px) {
	#event-calendar ul.held-btn {
		margin-bottom: 3vw;
	}
		#event-calendar ul.held-btn li a {
			height: 5vw;
			font-size: 1.8vw;
		}

	#event-calendar .calendar .head {
		margin-bottom: 2.2vw;
	}
		#event-calendar .calendar .head .now {
			padding: 0.5vw 3vw 0 3vw;
			font-size: 3.0vw;
		}

		#event-calendar .calendar .head a.link {
			height: 4.5vw;
			font-size: 1.8vw;
		}
			#event-calendar .calendar .head a.link img {
				width: 4.5vw;
			}
			#event-calendar .calendar .head a.link.prev span {
				margin-left: 1vw;
			}
			#event-calendar .calendar .head a.link.next span {
				margin-right: 1vw;
			}

	#event-calendar .calendar .table-calendar {
		margin-bottom: 2vw;
	}
		#event-calendar .calendar .table-calendar th {
			font-size: 1.4vw;
		}
		#event-calendar .calendar .table-calendar td {
			font-size: 1.4vw;
		}
			#event-calendar .calendar .table-calendar td a.aclink {
				display: flex;
				justify-content: center;
				align-items: center;
				height: 2.5vw;
				padding: 0;
				background: #F3F3F3 url("../img/common/icon_calendar_arrow.svg") no-repeat right 1vw  center / 1vw;
				font-size: 1.2vw;
			}
			#event-calendar .calendar .table-calendar td.today a.aclink {
				background: #fff url("../img/common/icon_calendar_arrow.svg") no-repeat right 1vw  center / 1vw;
			}
}
@media screen and (max-width: 767px) {
	#event-calendar ul.held-btn {
		margin-bottom: 6vw;
	}
		#event-calendar ul.held-btn li {
			width: 48%;
		}
			#event-calendar ul.held-btn li a {
				height: 12vw;
				font-size: 3.6vw;
				line-height: 1.2em;
				border-radius: 5px;
			}

	#event-calendar .calendar .head {
		margin-bottom: 5.2vw;
	}
		#event-calendar .calendar .head .now {
			padding: 0.5vw 5vw 0 5vw;
			font-size: 5.8vw;
		}

		#event-calendar .calendar .head a.link {
			height: 8vw;
			font-size: 3.6vw;
		}
			#event-calendar .calendar .head a.link img {
				width: 8vw;
			}
			#event-calendar .calendar .head a.link.prev span {
				margin-left: 1.5vw;
			}
			#event-calendar .calendar .head a.link.next span {
				margin-right: 1.5vw;
			}

	#event-calendar .calendar .table-calendar {
		margin-bottom: 5vw;
	}
		#event-calendar .calendar .table-calendar th {
			font-size: 3.2vw;
		}
		#event-calendar .calendar .table-calendar td {
			font-size: 3.2vw;
			padding: 8px 5px 5px 5px;
		}
			#event-calendar .calendar .table-calendar td a.aclink {
				justify-content: flex-start;
				height: 5vw;
				padding: 0.5vw 0 0 1.7vw;
				background: #F3F3F3 url("../img/common/icon_calendar_arrow.svg") no-repeat right 1vw  center / 1.8vw;
				font-size: 2.4vw;
				margin-top: 5px;
				text-align: left;
			}
			#event-calendar .calendar .table-calendar td.today a.aclink {
				background: #fff url("../img/common/icon_calendar_arrow.svg") no-repeat right 1vw  center / 1.8vw;
			}
}



	
/* event-area
------------------------------  */
#event-area {
	margin-top: 60px;
}
#event-area.long {
	margin-top: 30px;
}
	#event-area .checkbox_show_past_events {
		font-size: 1.5rem;
		line-height: 1;
	}

	#event-area .event-list {
		margin-top: 20px;
		border-top: solid 1px #212121;
	}
	#event-area.detail .event-list {
		margin-bottom: 30px;
		border-top: none;
	}
		#event-area .event-list .day-set {
			display: flex;
			display: -webkit-flex;
			justify-content: space-between;
			border-bottom: solid 1px #212121;
		}
		#event-area .event-list .day-set.past {
			display: none;
		}
		#event-area .event-list .day-set.open {
			display: flex;
		}
			#event-area .event-list .day-set .head {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				width: 110px;
				padding: 30px 30px 30px 0;
				border-right: solid 1px #212121;
				font-size: 2.0rem;
				font-weight: 700;
				line-height: 1;
			}
			#event-area .event-list .day-set.sat .head {
				color: #0098D0;
			}
			#event-area .event-list .day-set.sun .head,
			#event-area .event-list .day-set.holiday .head {
				color: #F22335;
			}

			#event-area .event-list .day-set .cell {
				width: -webkit-calc(100% - 110px);
				width: calc(100% - 110px);
				padding: 30px 0 30px 30px;
			}
			#event-area.long .event-list .day-set .cell {
				width: 100%;
				padding: 30px 30px 30px 30px;
			}
				#event-area .event-list .box {
					display: flex;
					justify-content: flex-start;
					align-items: baseline;
					background: #fff;
					padding: 30px;
					border-radius: 15px;
					position: relative;
					margin-bottom: 30px;
				}
				#event-area .event-list .box:nth-last-child(1) {
					margin-bottom: 0;
				}
					#event-area .event-list .box .text {
						width: 68%;
						padding-right: 4%;
					}
						#event-area .event-list .box .text .cat {
							display: inline-block;
							border: solid 1px #212121;
							font-size: 1.3rem;
							font-weight: 500;
							line-height: 1;
							padding: 6px 7px 2px 7px;
							border-radius: 5px;
							margin-bottom: 15px;
						}

						#event-area .event-list .box .text .e-tit {
							margin-bottom: 10px;
						}
							#event-area .event-list .box .text .e-tit h2 {
								font-size: 2.4rem;
								font-weight: 700;
								line-height: 1.3em;
							}

						#event-area .event-list .box .text dl.itmes {
							display: flex;
							justify-content: flex-start;
							align-items: baseline;
							font-size: 1.5rem;
							line-height: 1.4em;
							margin-top: 5px;
						}
						#event-area .event-list .box .text dl.event-url {
							display: block;
						}
							#event-area .event-list .box .text dl.itmes dt {
								white-space: nowrap;
							}
							#event-area .event-list .box .text dl.event-url  dt {
								margin-bottom: 3px;
							}

							#event-area .event-list .box .text dl.itmes dd a {
								text-decoration: underline;
								overflow-wrap: anywhere;
							}
							#event-area .event-list .box .text dl.itmes dd a:hover {
								text-decoration: none;
							}

						#event-area .event-list .box .text a.p-link {
							display: inline-block;
							/*margin-top: 20px;*/
						}
							#event-area .event-list .box .text a.p-link .more span:nth-child(2) {
								width: -webkit-calc(100% - 25px);
								width: calc(100% - 25px);
							}

						#event-area .event-list .box .text a.p-btn {
							width: 250px;
							height: 54px;
							display: flex;
							justify-content: space-between;
							align-items: center;
							background: #fff;
							border: solid 1px #212121;
							padding: 0 15px 0 20px;
							border-radius: 28px;
							font-size: 1.6rem;
							font-weight: 700;
							line-height: 1;
							margin-top: 20px;
						}
						#event-area .event-list .box .text a.p-btn:hover {
							background: #1B926A;
							color: #fff;
						}
							#event-area .event-list .box .text a.p-btn span:nth-child(1) {
								padding-top: 2px;
							}

					#event-area .event-list .box .pht {
						width: 32%;
						overflow: hidden;
						border-radius: 15px;
					}
@media screen and (max-width: 1024px) {
	#event-area {
		margin-top: 6vw;
	}
		#event-area .checkbox_show_past_events {
			font-size: 1.5vw;
		}

		#event-area .event-list  {
			margin-top: 2vw;
		}
		#event-area.detail .event-list {
			margin-bottom: 3vw;
		}
			#event-area .event-list .day-set .head {
				width: 13%;
				padding: 3vw 0 2.5vw 0;
				font-size: 2.0vw;
			}

			#event-area .event-list .day-set .cell {
				width: 87%;
				padding: 3vw 0 3vw 3vw;
			}
			#event-area.long .event-list .day-set .cell {
				width: 100%;
				padding: 3vw;
			}
				#event-area .event-list .box {
					padding: 3vw;
					margin-bottom: 3vw;
				}
					#event-area .event-list .box .text .cat {
						font-size: 1.3vw;
						padding: 0.7vw 1vw 0.4vw 1vw;
						margin-bottom: 1.5vw;
					}

					#event-area .event-list .box .text .e-tit {
						margin-bottom: 1vw;
					}
						#event-area .event-list .box .text .e-tit h2 {
							font-size: 2.4vw;
						}

					#event-area .event-list .box .text dl.itmes {
						font-size: 1.5vw;
						margin-top: 0.5vw;
					}

					#event-area .event-list .box .text a.p-link {
						/*margin-top: 2vw;*/
					}

					#event-area .event-list .box .text a.p-btn {
						width: 25vw;
						height: 5vw;
						padding: 0 1.5vw 0 2vw;
						border-radius: 2.5vw;
						font-size: 1.6vw;
						margin-top: 2vw;
					}
						#event-area .event-list .box .text a.p-btn span:nth-child(1) {
							padding-top: 0.3vw;
						}
}
@media screen and (max-width: 767px) {
	#event-area {
		margin-top: 9vw;
	}
		#event-area .checkbox_show_past_events {
			font-size: 3.4vw;
		}

		#event-area .event-list  {
			margin-top: 4vw;
		}
		#event-area.detail .event-list {
			margin-bottom: 6vw;
		}
			#event-area .event-list .day-set {
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
			}
				#event-area .event-list .day-set .head {
					display: block;
					width: 100%;
					padding: 5vw 0 0 0;
					font-size: 4.6vw;
					border-right: none;
					text-align: center;
				}

				#event-area .event-list .day-set .cell {
					width: 100%;
					padding: 0 0 4vw 0;
				}
				#event-area.long .event-list .day-set .cell {
					width: 100%;
					padding: 0 0 4vw 0;
				}
					#event-area .event-list .box {
						padding: 7vw 5vw;
						margin-top: 7vw;
						margin-bottom: 0;
					}
						#event-area .event-list .box .text {
							width: 100%;
							padding-right: 0;
						}
							#event-area .event-list .box .text .cat {
								background: #fff;
								font-size: 3.0vw;
								padding: 1.5vw 1.5vw 1vw 1.5vw;
								margin-bottom: 0;
								position: absolute;
								top: -3vw;
								left: 50%;
								transform: translateY(0) translateX(-50%);
								-webkit-transform: translateY(0) translateX(-50%);
							}

							#event-area .event-list .box .text .e-tit {
								display: flex;
								justify-content: space-between;
								align-items: center;
								margin-bottom: 5vw;
							}
								#event-area .event-list .box .text .e-tit h2 {
									width: 65%;
									padding-left: 3.5vw;
									font-size: 4.4vw;
									line-height: 1.5em;
								}

							#event-area .event-list .box .text dl.itmes {
								font-size: 3.2vw;
								margin-top: 1.5vw;
							}


					#event-area .event-list .box .text dl.itmes:nth-last-child(1) {
						display: block;
					}
					#event-area .event-list .box .text a.p-link {
						/*margin-top: 5vw;*/
					}

							#event-area .event-list .box .text a.p-btn {
								width: 75%;
								height: 12vw;
								padding: 0 3vw 0 4vw;
								border-radius: 6vw;
								font-size: 3.6vw;
								margin: 5vw auto 0 auto;
							}
								#event-area .event-list .box .text a.p-btn span:nth-child(1) {
									padding-top: 0.3vw;
								}

					#event-area .event-list .box .pht {
						width: 35%;
						border-radius: 10px;
					}
}



	
/* news-list
------------------------------  */
#news-list .list {
	margin-bottom: 40px;
}
	#news-list .list a.linkbox {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		border-bottom: solid 1px #212121;
		padding: 20px;
	}
	#news-list .list a.linkbox.link-none {
		pointer-events: none;
	}
	#news-list .list a.linkbox:nth-child(1) {
		border-top: solid 1px #212121;
	}
		#news-list .list a.linkbox.link-none .arrow {
			opacity: 0;
		}

		#news-list .list a.linkbox .text {
			width: -webkit-calc(100% - 120px);
			width: calc(100% - 120px);
			padding: 0 20px;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#news-list .list a.linkbox.logo-none .text {
			width: 100%;
		}
		#news-list .list a.linkbox:hover .text {
			opacity: 0.7;
		}
			#news-list .list a.linkbox .text .info {
				line-height: 1;
				padding-top: 5px;
				margin-bottom: 6px;
			}
				#news-list .list a.linkbox .text .info time {
					font-size: 1.4rem;
					font-weight: 500;
					margin-right: 10px;
				}
				#news-list .list a.linkbox .text .info .cat {
					font-size: 1.2rem;
					font-weight: 500;
					color: #8D8D8D;
				}

			#news-list .list a.linkbox .text h3 {
				font-size: 1.6rem;
				line-height: 1.5em;
				font-weight: 500;
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
			}

		#news-list .list a.linkbox .logo {
			width: 100px;
		}
		#news-list .list a.linkbox.logo-none .logo {
			display: none;
		}
@media screen and (max-width: 1024px) {
	#news-list .list {
		margin-bottom: 4vw;
	}
		#news-list .list a.linkbox {
			padding: 2vw;
		}
			#news-list .list a.linkbox .text {
				width: -webkit-calc(100% - 12vw);
				width: calc(100% - 12vw);
				padding: 0 2vw;
			}
				#news-list .list a.linkbox .text .info {
					padding-top: 0.5vw;
					margin-bottom: 0.6vw;
				}
					#news-list .list a.linkbox .text .info time {
						font-size: 1.4vw;
						margin-right: 1vw;
					}
					#news-list .list a.linkbox .text .info .cat {
						font-size: 1.2vw;
					}

				#news-list .list a.linkbox .text h3 {
					font-size: 1.6vw;
				}

			#news-list .list a.linkbox .logo {
				width: 10vw;
			}
}
@media screen and (max-width: 767px) {
	#news-list .list {
		margin-bottom: 6vw;
	}
		#news-list .list a.linkbox {
			padding: 4vw 0;
		}
			#news-list .list a.linkbox .text {
				width: -webkit-calc(100% - 25vw);
				width: calc(100% - 25vw);
				padding: 0 2vw 0 3vw;
			}
				#news-list .list a.linkbox .text .info {
					padding-top: 1vw;
					margin-bottom: 1.5vw;
				}
					#news-list .list a.linkbox .text .info time {
						font-size: 3.1vw;
						margin-right: 1vw;
					}
					#news-list .list a.linkbox .text .info .cat {
						font-size: 2.8vw;
					}

				#news-list .list a.linkbox .text h3 {
					font-size: 3.6vw;
				}

			#news-list .list a.linkbox .logo {
				width: 20vw;
			}
}






















