@charset 'UTF-8';

	.page-ttl {
		background-position: center left 30%;
	}
	.page-ttl img {
		width: 481px;
	}


	.anchor {
		padding: 60px 0 50px;
		background: #E8F7EE;
		margin-bottom: 38px;
	}
	.anchor-list {
		display: flex;
		justify-content: space-between;
		margin-bottom: 10px;
	}
	.anchor-list-item {
		display: flex;
		height: 80px;
		flex-basis: calc((100% - 50px) / 3);
	}
	.anchor-list-item a {
		font-weight: 700;
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: center;
		align-content: center;
		color: #FFF;
		border-radius: 10px;
		position: relative;
		padding: 0 5px;
		line-height: 1.25;
		text-align: center;
		flex-direction: column;
	}
	.anchor-list-item-ch1 a {
		background: #ed7700;
	}
	.anchor-list-item-ch2 a {
		background: #009fc9
	}
	.anchor-list-item-ch3 a {
		background: #00802f;
	}
	.ch1-color {
		color: #ed7700;
	}
	.ch2-color {
		color: #009fc9
	}
	.ch3-color {
		color: #00802f;
	}
	.anchor-list-item .ch-color {
		margin-top: -5px;
	}
	.anchor-list-item a::after {
		position: absolute;
		top: 50%;
		right: 6px;
		width: 18px;
		height: 18px;
		content: '';
		transform: translateY(-50%);
		background: url('./../img/img_arrow.svg') no-repeat;
		background-size: contain;
	}
	.anchor-list-item a:hover {
		text-decoration: none;
	}
	@media screen and (max-width:767px) {
		.anchor-list-item a::after {
			top: auto;
			right: 50%;
			bottom: -10px;
			left: 50%;
			transform: translateX(-50%);
		}
	}


	.tt + .tt {
		margin-top: -38px;
	}
	.tt-date-wrap {
		padding-bottom: 60px;
		text-align: center;
	}
	.tt-date {
		font-family: nitalago-ruika, sans-serif;
		font-size: 3.2rem;
		display: inline-block;
		padding: 7px 76px;
		text-indent: 1em;
		color: #fff;
		border-radius: 30px;
		background: #0b8c5d;
	}
	.tt-date span {
		font-size: 2rem;
	}
	.tt-head,
	.tt-cont {
		display: flex;

		justify-content: space-between;
	}
	.tt-head-item,
	.tt-cont-item {
		max-width: 400px;

		flex: 0 0 calc((100% - 30px) / 2);
	}
	.tt-head {
		height: 70px;
	}
	.tt-head-item {
		font-size: 2.2rem;
		font-weight: 700;
		display: flex;
		width: 100%;
		height: 100%;
		color: #fff;
		border-radius: 20px 20px 0 0;

		align-items: center;
		justify-content: center;
	}
	.tt-head-item:hover {
		text-decoration: none;
	}
	.tt-cont-item {
		box-sizing: border-box;
		padding: 10px 25px 0;
		border-width: 1px;
		border-style: solid;
		border-radius: 0 0 20px 20px;
	}
	.program {
		margin: 40px 0;
		padding: 5px 25px 30px;
		background: #fff;
	}
	.program-time {
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.45;
		position: relative;
		top: -15px;
		text-align: center;
		color: #fff;
		border-radius: 10px;
	}
	.program-thumb img {
		transition: transform .6s;
		transform:scale(1)
	}
	.program-thumb:hover img {
		transform:scale(1.06)
	}
	.program-prof {
		font-size: 1.2rem;
		font-weight: 700;
		position: relative;
		float: right;
		padding: 4px 15px;
	}
	.program-prof::after {
		position: absolute;
		top: 50%;
		right: 0;
		display: block;
		margin-top: 1px;
		content: '';
		transform: translateY(-50%);
		border-width: 6px 0 6px 10.4px;
		border-style: solid;
		border-color: transparent transparent transparent #f15a24;
	}
	.tt01-head,
	.tt01-cont .program-time {
		background-color: #ed7700;
	}
	.tt02-head,
	.tt02-cont .program-time {
		background-color: #009fc9;
	}
	.tt01-cont {
		border-color: #ed7700;
		background-color: #fdeddb;
	}
	.tt02-cont {
		border-color: #009fc9;
		background: #dff0f7;
	}
	@media screen and (max-width:889px) {
		.tt-head-item {
			font-size: 2.7vw;
		}
		.tt-cont-item {
			padding-left: 2.81vw;
			padding-right: 2.81vw;
		}
		.program {
			padding-left: 2.81vw;
			padding-right: 2.81vw;
			margin: 4.49vw 0;
		}
	}


	#archive {
		margin-top: -38px;
	}
	#archive .inner {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		margin: 0;
	}
	@media screen and (min-width:1256px) {
		#archive .inner {
			padding-right: 50px;
			padding-left: calc(50% - 500px);
		}
	}
	#archive .inner,
	.archive-swiper .swiper-container {
		overflow: visible;
	}
	.archive-txt {
		margin-bottom: 40px;
		text-align: center;
		padding: 0 30px;
	}
	.archive-cate + .archive-cate {
		margin-top: 32px;
	}
	.archive-swiper {
		max-height: 287px;
		padding-top: 25px;
		padding-bottom: 20px;
	}
	.archive-cate-ttl {
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.25;
		box-sizing: border-box;
		margin-bottom: 20px;
		padding-left: 8px;
		border-left: 5px solid #009b69;
	}
	.archive-program {
		width: 298px;
		min-height: 180px;
	}
	.archive-program .program-thumb {
		position: relative;
		min-height: 168px;
	}
	.archive .program-thumb:hover img {
		transform:scale(1.08)
	}
	.archive-cate01 {
		background: #edf6dd;
	}
	.archive-cate02 {
		background: #fbeeee;
	}
	.archive-cate03 {
		background: #f4f0e9
	}
	.archive-cate04 {
		background: #daf4f9;
	}
	.archive-cate05 {
		background: #efecf5;
	}
	.archive-cate06 {
		background: #d9e8f4;
	}
	.archive-cate07 {
		background: rgba(136,136,136,.15);
	}
	.archive-cate08 {
		background: #ffa7851f;
	}
	.archive-cate01 .archive-cate-ttl {
		border-color: #8dc21f;
	}
	.archive-cate02 .archive-cate-ttl {
		border-color: #ed848c;
	}
	.archive-cate03 .archive-cate-ttl {
		border-color: #ae9a69;
	}
	.archive-cate04 .archive-cate-ttl {
		border-color: #0ab7d8;
	}
	.archive-cate05 .archive-cate-ttl {
		border-color: #8d80bb;
	}
	.archive-cate06 .archive-cate-ttl {
		border-color: #0068b6;
	}
	.archive-cate07 .archive-cate-ttl {
		border-color: #888888;
	}
	.archive-cate08 .archive-cate-ttl {
		border-color: #e83a16;
	}
	.archive-swiper .swiper-button-prev,
	.archive-swiper .swiper-button-next {
		top: 0;
		width: 70px;
		height: 100%;
		margin-top: 0;
		transition: opacity .5s;
		opacity: 1;
		background: rgba(0,101,54,.4);
	}
	.archive-swiper .swiper-button-prev::after,
	.archive-swiper .swiper-button-next::after {
		position: absolute;
		top: 50%;
		display: block;
		width: 25px;
		height: 25px;
		content: '';
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.archive-swiper .swiper-button-prev {
		left: 0;
	}
	.archive-swiper .swiper-button-next {
		right: 0;
	}
	.archive-swiper .swiper-button-prev::after {
		left: calc(50% + 3px);
		border-bottom: solid 4px #fff;
		border-left: solid 4px #fff;
	}
	.archive-swiper .swiper-button-next::after {
		left: calc(50% - 3px);
		border-top: solid 4px #fff;
		border-right: solid 4px #fff;
	}
	.archive-swiper .swiper-button-prev.swiper-button-disabled,
	.archive-swiper .swiper-button-next.swiper-button-disabled {
		opacity: 0;
	}


	#cboxOverlay {
		background: #000;
	}
	#cboxLoadedContent {
		background: #fff;
	}
	#cboxLoadedContent {
		margin-bottom: 0;
	}
	#cboxLoadedContent {
		overflow-x: hidden!important;
	}
	#cboxClose {
		position: absolute;
		top: -46px;
		right: 0;
		width: 142px;
		height: 46px;
		color: #fff;
		outline: none;
		background: #999;
	}
	#cboxClose::before {
		position: absolute;
		top: 10px;
		right: 24px;
		display: inline-block;
		width: 2px;
		height: 24px;
		margin: 0;
		padding: 0;
		content: '';
		transform: rotate(45deg);
		border: 0;
		background: white;
	}
	#cboxClose::after {
		position: absolute;
		top: 10px;
		right: 24px;
		display: inline-block;
		width: 2px;
		height: 24px;
		margin: 0;
		padding: 0;
		content: '';
		transform: rotate(-45deg);
		border: 0;
		background: white;
	}

	.profile {
		display: none;
	}
	#colorbox,
	#cboxWrapper,
	#cboxContent,
	#cboxLoadedContent {
		max-width: 100vw!important;
		max-height: 100vh!important;
	}
	#colorbox,
	#cboxWrapper,
	#cboxContent {
		overflow: visible!important;
	}
	.profile-inner {
		box-sizing: border-box;
		width: 100%;
		max-width: 640px;
		margin: 0 auto;
		padding: 20px 25px;
	}
	.profile-head {
		
		line-height: 1.5;
	}

	.profile-txt {
		font-size: 1.4rem;
	}
	.profile-name {
		font-size: 2rem;
		font-weight: 700;

		flex: 0 1 100%;
	}
	.profile-name span {
		font-size: 1.6rem;
		padding-left: 5px;
	}
	.profile-body {
		line-height: 1.75;
		margin-top: 15px;
		text-align: justify;
	}


	body.fixed {
		position: fixed;
		top: 0;
		right: 0!important;
		bottom: 0;
		left: 0!important;
	}
	#js-movie-overlay * {
		box-sizing: border-box;
	}
	#js-movie-overlay {
		position: fixed;
		z-index: 9999;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: none;
		padding: 0 30px;
		background-color: rgba( 0,0,0,.9);
		overflow: auto;
	}
	#js-movie-overlay .movie-cont {
		position: relative;
		z-index: 99999;
		top: 50%;
		left: 50%;
		width: 100%;
		max-width: 1020px;
		margin: 0;
		padding: 0;
		transform: translate(-50%, -50%);
	}
	#js-movie-overlay .movie-cont::before {
		display: block;
		padding-top: 56.25%;
		content: '';
	}
	#player {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	#js-movie-overlay .movie-close {
		position: absolute;
		width: 177px;
		height: 21px;
		background: url('./../img/ttl_movie_close.svg') no-repeat;
		background-size: contain;
		top: -30px;
		right: 0;
		display: inline-block;
		cursor: pointer;
	}


@media screen and (max-width:1024px) {

	#js-movie-overlay {
		padding: 20px 0;
	}
	#js-movie-overlay .movie-close {
		right: 30px;
	}
}



@media screen and (max-width:599px) {

	.page-ttl img {
		width: 260px;
		width: 69.33vw;
	}


	.anchor {
		padding: 12px 0 6px;
		padding: 3.2vw 0 1.6vw;
		margin-bottom: 0;
	}
	.anchor-list {
		margin-bottom: 6px;
		margin-bottom: 1.6vw;
	}
	.anchor-list-item {
		height: 58px;
		height: 15.47vw;
		flex-basis: calc((100% - 3.2vw) / 3);
	}
	.anchor-list-item a {
		font-size: 1rem;
		font-size: 2.67vw;
		border-radius: 5px;
		border-radius: 1.33vw;
		padding: 0;
	}
	.anchor-list-item a::after {
		bottom: -4px;
		bottom: -1.07vw;
		width: 12px;
		width: 3.2vw;
		height: 12px;
		height: 3.2vw;
	}


	.tt + .tt {
		margin-top: -35px;
		margin-top: -9.33vw;
	}
	.tt-date-wrap {
		padding-bottom: 15px;
		padding-bottom: 4vw;
	}
	.tt-date {
		font-size: 1.8rem;
		font-size: 4.8vw;
		padding: 2px 15px;
		padding: 0.53vw 4vw;
		border-radius: 15px;
		border-radius: 4vw;
	}
	.tt-date span {
		font-size: 1.2rem;
		font-size: 3.2vw;
	}
	.tt-cont {
		display: block;
		position: relative;
	}
	.tt-head {
		height: 48px;
		height: 12.8vw;
		justify-content: space-around;
		align-items: flex-end;
	}
	.tt-head-item {
		font-size: 1.2rem;
		font-size: 3.2vw;
		height: 38px;
		height: 10.13vw;
		border-radius: 15px 15px 0 0;
		border-radius: 4vw 4vw 0 0;
		flex-basis: calc((100% - 6.4vw) / 2);
		cursor: pointer;
		line-height: 1.2;
	}
	.tt-head-item.show {
		height: 100%;
	}
	.tt-cont-item {
		max-width: 100%;
		padding: 0 12px;
		padding: 0 3.2vw;
		border-radius: 5px;
		border-radius: 1.33vw;
		position: absolute;
		top: 0;
		opacity: 0;
		transition: all .3s;
	}
	.tt-cont-item.show {
		position: relative;
		z-index: 1;
		opacity: 1;
	}
	.program {
		margin: 32px 0;
		margin: 8.53vw 0;
		padding: 0 22px 40px;
		padding: 0 5.87vw 40px;
	}
	.program-time {
		top: -10px;
		top: -2.67vw;
		font-size: 3.73vw;
		border-radius: 2.67vw;
	}
	.program-prof {
		padding: 10px 15px;
	}


	#archive {
		margin-top: 0;
	}
	#archive .inner {
		padding-left: 24px;
		padding-left: 6.4vw;
		padding-right: 24px;
		padding-right: 6.4vw;
	}
	.archive-txt {
		margin-bottom: 35px;
		padding: 0 12px;
		padding: 0 3.2vw;
	}
	.archive-cate + .archive-cate {
		margin-top: 28px;
	}
	.archive-swiper {
		padding-top: 20px;
		padding-bottom: 5px;
	}
	.archive-cate-ttl {
		font-size: 1.6rem;
		font-size: 4.21vw;
		margin-bottom: 15px;
	}
	.archive-program {
		width: 240px;
		min-height: 150px;
	}
	.archive-program .program-thumb {
		min-height: 135px;
	}
	.archive-program .program-prof {
		padding: 5px 15px;
	}
	.archive-swiper .swiper-button-prev,
	.archive-swiper .swiper-button-next {
		display: none;
	}


	#cboxClose {
		top: -35px;
		width: 108px;
		height: 35px;
	}
	#cboxClose::before,
	#cboxClose::after {
		top: 9px;
		right: 16px;
		height: 16px;
	}
	.profile-inner {
		padding: 12px 15px;
		padding: 3.2vw 4vw;
	}

	.profile-txt {
		line-height: 1.3;
	}

	.profile-body {
		line-height: 1.5;
	}



	#js-movie-overlay .movie-close {
		width: 135px;
		height: 16px;
		right: 12px;
		right: 3.2vw;
	}

}

  
.mv-pdf::after {
    position: absolute;
    content: "";
    width: 58px;
    height: 58px;
    background: url(./../img/icn_pdf.png);
    background-size: contain;
    transform: translateY(-50%);
}
.mv-pdf {
    text-align: center;
    font-weight: 700;
    text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
    margin: 15px 0 40px;
    line-height: 1.3;
    position: relative;
    padding-right: 20px;
}
.bd{
    border-bottom: 1px solid #333;}
@media screen and (max-width: 1024px)
.mv-pdf::after {
    width: 40px;
    height: 40px;
}