@charset "UTF-8";

/* ========================================
 * #event-calendar
 * ========================================*/
 .event-header {
    align-items: flex-start;
}

 .calendar-main{
    table-layout: fixed;
 }

.calendar-head {
    margin-bottom: 40px;
}

.calendar-bottom {
    padding-top: 40px;
}

#event-calendar  {
	margin-bottom: 60px;
}

#event-calendar .calendar-year-month {
	margin-bottom: 16px;
	text-align: center;
	font-size: 34px;
	font-size: 3.4rem;
	line-height: 1;
	letter-spacing: 0.05rem;
	font-family: 'Ekster-Bold';
	font-feature-settings: "palt";
}

.calender-pager {
    display: flex;
    justify-content: space-between;
    width: 50%;
    margin: 0 auto;
    margin-top: -60px;
}

.calender-pager li a {
	display: block;
	border: 2px solid#d6d6d6; 
	line-height: 1;
	border-radius: 30px; 
}

.calender-prev a {
	padding:  10px 14px;
	padding-right: 20px;
}

.calender-next a {
	padding:  10px 14px;
	padding-left: 20px;
}

.calender-next a,
.calender-prev a {
	background-color:#fff;
    -webkit-transition: border 0.15s linear 0s, transform 0.25s ease 0s;
	transition: border 0.15s linear 0s, transform 0.25s ease 0s;
	
	
}

.calender-next a:hover,
.calender-prev a:hover {
	border: 2px solid#000;
}



.calender-prev a span ,
.calender-next a span {
	height: 16px;
    /* display: flex;
	align-items: center; */
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.2;
	letter-spacing: 0.05rem;
	font-family: 'Ekster-Bold';
	font-feature-settings: "palt";
	color:#000000;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
}


.calender-prev a span {
	
	padding-left: 24px;
	background-image: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2216px%22%20height%3D%2226px%22%20viewBox%3D%220%200%2016%2026%22%20style%3D%22enable-background%3Anew%200%200%2016%2026%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpolygon%20points%3D%2213.2%2C25.5%200.7%2C13%2013.2%2C0.5%2015.3%2C2.7%204.9%2C13%2015.3%2C23.3%20%22%2F%3E%3C%2Fsvg%3E');
	background-position: left center;

}

.calender-next a span {
	padding-right: 24px;
	background-image: url('data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20id%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20width%3D%2216px%22%20height%3D%2226px%22%20viewBox%3D%220%200%2016%2026%22%20style%3D%22enable-background%3Anew%200%200%2016%2026%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpolygon%20points%3D%220.7%2C23.3%2011.1%2C13%200.7%2C2.7%202.8%2C0.5%2015.3%2C13%202.8%2C25.5%20%22%2F%3E%3C%2Fsvg%3E');	

	background-position: right center;

}

#event-calendar table {
	width: 100%;
	border-spacing: 0;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin-bottom: 0;
	line-height: 1.5;
	border-collapse: separate;
}
#event-calendar th,
#event-calendar td {
	background: #fff;
	padding: 7px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;		
}
#event-calendar th {
	color: #fff;
	background: #000;
	vertical-align: middle;
	padding: 14px 0 12px 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.0;
	font-weight: normal;
	letter-spacing: 0.15rem;
	font-family: 'Ekster-Bold';
	font-feature-settings: "palt";
}


#event-calendar td {
	width: 14.3%;
	height: 100px;
	vertical-align: top;
}
#event-calendar td.calendar-day-off {
	background: #F4F3F2;
	color: #555;
}
#event-calendar td.calendar-holiday,
#event-calendar td.calendar-sun {
	color: #CE2727;
	background: #FCF3F3;
}
#event-calendar td.calendar-sat {
	color: rgb(69, 161, 214);
	background: #F5FBFE;
}

#event-calendar .calendar-day-number {
    margin-bottom: 10px;
	padding: 5px 4px 0 5px ;
	font-style: normal;
	font-size: 17px;
	font-size: 1.7rem;
	display: block;
	line-height: 1;
	letter-spacing: 0.1rem;
	font-family: 'Ekster-Bold';
	font-feature-settings: "palt";
}

#event-calendar td.calendar-holiday .day,
#event-calendar td.calendar-sun .day {
	color: #DF0D2D;
}
#event-calendar td.calendar-sat .day {
	color: #2574D3;
}
#event-calendar td span {
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1.5;
	display: block;
}
#event-calendar [class*=calender-label] {
	padding: 6px;

	background: #FCEBCF;
	border: solid 1px #D2AC8E;
	display: block;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
}

#event-calendar [class*=calender-label] dd {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
	color: #000;
}
.calendar-labels a:not(:last-child){
    margin-bottom: 4px;
}

.calender-abbr dl dt {
    display: none;
}

/* LIVE／EVENTS／FESTIVAL */
#event-calendar td .label-green {
	background-color: #FFEED2;
	border-color: #E7C1AC;
}

/* 番組関連／ご招待 */
#event-calendar td .label-red {
	background-color: #FFD8DA;
	border-color: #E4B1B3;
}

/* 映画試写会／上映会 */
#event-calendar td .label-blue {
	background-color: #D2ECFF;
	border-color: #A7C6EE;
}

/* 省略コンテンツ */
#event-calendar td .calender-abbr {
	background-color: #fff;
}

/* 何もない日 */
#event-calendar td.calendar-none {
	background: #f2f2f2;
}



/* label content*/
.label-inner-photo {
	margin-bottom: 6px;
	width: 100%;
	background-color: transparent;
	/* background-color: #fff; */
	overflow: hidden;
    text-align: center;
}



.label-inner-photo  span {
	width: auto !important;
	height: 90px;

	background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: none;
    overflow: hidden; 
    display: block;
}




.calender-label .label-inner-photo  span {
    -webkit-transition: opacity 0.15s linear 0s, transform 0.15s ease 0s;
    transition: opacity 0.15s linear 0s, transform 0.15s ease 0s;
    backface-visibility: hidden;
	overflow: hidden; 
}
	.calender-label:hover .label-inner-photo  span {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
		opacity: 0.9; 
	}


  @media all and (max-width: 1100px) {

    .eventpage_inner {
		width: 93.75%;
	}

}

@media all and (max-width: 1100px) {
	.calendar-head {
		margin-bottom: 30px;
	}
	
	.calender-prev a {
		padding:  10px 14px;
		padding-right: 20px;
	}
	
	.calender-next a {
		padding:  10px 14px;
		padding-left: 20px;
	}
	

	.calender-prev a span {
		padding-left: 20px;

	}
	
	.calender-next a span {
		padding-right: 20px;
	}
	.calender-prev a span, .calender-next a span{
		height: 16px;
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1.4;
	}
	#event-calendar .calendar-year-month {
		margin-bottom: -45px;

		font-size: 30px;
		font-size: 3.0rem;
	}

	.calender-pager {
		width: 100%;
		margin-top: 3px;
	}
	
	#event-calendar thead {
		display: none;
	}


	#event-calendar th,
	#event-calendar td {
		display: block;
		width: 100%;
		padding: 0;

	}
	#event-calendar td {
		height: auto;
		display: -webkit-flex;
		display: flex;
	}
	#event-calendar .calendar-none {
		display: none
	}

	#event-calendar .calendar-labels {
        padding: 5px;
        width: 100%;
	}
	#event-calendar [class*=calender-label] {
		display: block;
		padding: 8px;
		margin-top: 0;
        margin-right: 5px;
	}



	/* 日付 */
	#event-calendar td .calendar-day-number {
		text-align: center;
		margin-bottom: 0;
		padding: 10px 10px;
		font-size: 20px;
		font-size: 2.0rem;
		line-height: 1;
		display: block;
		background: #ececec;
		width: 12%;
		height: auto;
		letter-spacing: 0.1rem;

		font-family: 'Ekster-Bold';
		font-feature-settings: "palt";
	}

	

	#event-calendar td.calendar-holiday .calendar-day-number,
	#event-calendar td.calendar-sun .calendar-day-number {
		background: #ececec;
	}

	#event-calendar td.calendar-sat .calendar-day-number {
		background: #ececec;
	}


    /* label content*/

    .calender-label dl {
        display: flex;
        align-items: flex-start;
    }
	#event-calendar [class*=calender-label] dd {
		width: calc(100% - 60px);
		font-size: 14px;
		font-size: 1.4rem;
	}
    .label-inner-photo {
        margin-bottom: 0;
        margin-right: 8px;
        width: 80px;
        background-color: #fff;
        overflow: hidden;
		text-align: center;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		border-radius: 2px;
    }

    .calender-photo-none {
        display: none;
    }

    .label-inner-photo  span {
        width: auto !important;
        height: 80px;
    }



	/* モバイル用曜日を追加 */
	#event-calendar td i:after {
		padding-top: 2px;
		line-height: 1;
		text-align: center;
		font-size: 11px;
		font-size: 1.1rem;
		letter-spacing: 0.05rem;
		display: block;

		font-family: 'Ekster-Regular';
		font-feature-settings: "palt";
	}
	#event-calendar td:nth-child(1) i:after {
		content: "SUN";
	}
	#event-calendar td:nth-child(2) i:after {
		content: "MON";
	}
	#event-calendar td:nth-child(3) i:after {
		content: "TUE";
	}
	#event-calendar td:nth-child(4) i:after {
		content: "WED";
	}
	#event-calendar td:nth-child(5) i:after {
		content: "THU";
	}
	#event-calendar td:nth-child(6) i:after {
		content: "FRI";
	}
	#event-calendar td:nth-child(7) i:after {
		content: "SAT";
	}
}

@media all and (max-width: 480px) {
	.eventpage_inner {
		width: 100%;
	}
	.calendar-head {
		margin-bottom: 20px;
	}
	.calendar-bottom {
		margin-top: -40px;
		margin-bottom: 60px;
		padding-top: 0;
	}


	#event-calendar .calendar-year-month {
		margin-bottom: -44px;
		font-size: 24px;
		font-size: 2.4rem;
	
	}
	.calender-pager {
		width: 93.75%;
		margin-top: 12px;
	}

	.calender-prev a {
		padding: 7px 10px;
		padding-right: 14px;
	}
	
	.calender-next a {
		padding: 7px 10px;
		padding-left: 14px;

	}
	
	
	.calender-prev a span {
	
		padding-left: 18px;
		
	}
	
	.calender-next a span {
		padding-right: 18px;

	}

	.calender-prev a span, .calender-next a span{
		height: 15px;
		font-size: 14px;
		font-size: 1.4rem;
	}

	/* 日付 */
	#event-calendar td .calendar-day-number {
		font-size: 18px;
		font-size: 1.8rem;
		padding: 10px 7px;
		letter-spacing: 0.05rem;
	}

	#event-calendar td i:after {

		font-size: 10px;
		font-size: 1.0rem;
	
	}

	#event-calendar [class*=calender-label] {
	
		padding: 5px;

	}

	#event-calendar [class*=calender-label] dd {
		width: calc(100% - 44px);
		font-size: 12px;
		font-size: 1.2rem;
	}
    .label-inner-photo {

        width: 44px;
 
    }

    .calender-photo-none {
        display: none;
    }

    .label-inner-photo  span {
        width: auto !important;
        height: 44px;
    }


	
}
