@charset "utf-8";
/*
カード要素スタイル
.card
*/

/*
Base
============================================
*/
.card {
	color: #040000;
	background: url("../img/bg_card.svg") no-repeat top left /100% auto rgba(255,255, 255, 0.95);
	border: solid 3px #040000;
	text-align: left;
	margin: 20px 5px 25px;
	font-size: 1em;
	overflow: hidden;
}


.card a {
	color: #d05255;
}

.card a:hover {
	color: #ad0201;
}

.card li .date {
	color: #333;
}

.card .infolist li {
	border-top: 1px dotted #AE9142;
	padding: 5px 0;
}

.card .infolist li:first-child {
	border-top: 0 none;
}

@media (max-width : 510px) {
	.card {
		font-size: 0.8em;
		margin-top: 0px;
	}
}

/*
Layout
============================================ */
.card > .title {
	font-size: 20px;
	line-height: 1.1;
	margin: 0;
	padding: 10px 30px;
	text-shadow: #fff 1px 1px 0, #fff -1px -1px 0,	#fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff  0-1px 0, #fff -1px 0 0, #fff 1px 0 0;
}

.card > .title span {
	color: #fff;
	font-size: 0.7em;
	font-weight: normal;
	vertical-align: 0;
}
.card > .head .title {
	margin: 0;
	padding: 10px 30px;
}

.card > .footer {
	border-top: 1px solid #040000;
	margin: 10px 30px 20px 30px;
	padding: 20px 0 0 0;
	text-align: center;
}

.card.infodetail > .title {
	background: none repeat scroll 0 0 transparent;
	border-bottom: 1px solid #040000;
	color: #040000;
	/*font-size: 18px;
	line-height: 1.8;*/
	margin: 20px 30px 10px;
	padding: 0;
	position: relative;
}

.card.infodetail > .title span {
	color: #040000;
	font-size: 0.8em;
	vertical-align: 5%;
}

@media (max-width : 510px) {
	.card > .title {
		font-size: 14px;
		padding: 7px 10px;
	}
	.card > .head .title {
		margin: 0;
		padding: 7px 10px;
	}
	.card > .head .title img {
		width: 50%;
	}
	.card > .footer {
		margin: 7px 10px 10px;
		padding: 10px 0;
	}

	.card.infodetail > .title {
		/*font-size: 16px;*/
		margin: 7px 10px;
		padding: 5px 0;
	}
}

/* body */
.card .body {
	margin: 25px 30px;
}

.card > h3 + .body {
	margin: 0 30px 25px;
}

.card > .body.visualcontent,
.card > .body.visualcontent > .title {
	text-align: center;
}




.card > .body.visualcontent > p {
	text-align: left;
}

.card .body .title {
	margin: 0 0 1em;
	padding: 0;
	border: 0 none;
	/*
	font-size: 25px;
	*/
	font-size: 22px;
	text-shadow: none;
}

.card .body + .body {
	position: relative;
	margin: 0;
	padding: 30px;
	background-color: #efeaee;
}

.card .body + .body:before {
	content:"";
  position: absolute;
	background: linear-gradient(225deg, #fff 50%, transparent 52%), linear-gradient(135deg, #fff 50%, transparent 52%);
  background-size: 24px 24px;
  height: 24px;
  width: 100%;
	left: 0;
  top: 0;
}

.card .body + .body .title {
	margin: 1em 0 0.7em;
}

/*.card .body p{
    font-size: 14px;
    line-height: 20px;
}*/

.card .body caption {
/*
	font-size: 12px;
*/
	font-size: 14px;
}

.card .body ul:not {
    padding-left: 1.5em;
}
.card .card {
	background-image: none;
}

@media (max-width : 510px) {
	.card .body,
	.card > h3 + .body {
		margin: 10px 12px;
	}

	.card .body + .body {
		margin-top: 20px;
	}

	.card .body .title {
		font-size: 14px;
	}

	.card .body h1:first-child,
	.card .body h2:first-child,
	.card .body h3:first-child,
	.card .body h4:first-child {
		margin-top: 0.3em;
	}
}

/* schedule */
.card .body .schedule {
	overflow: hidden;
	clear: both;
	margin: 0.7em 0;
}

.card .body .schedule .title {
	margin: 1em 0 -0.5em;
	font-size: 18px;
	color: #a8cd31;
}

.card .body .timetables .title {
	font-size: 1em;
	height: 5em;
	margin: 1em 0!important;
}

@media (max-width : 510px) {
	.card .body .schedule {
		margin: 0.7em 0;
	}

	.card .body .schedule .title {
		margin-top: 0;
		font-size: 12px;
	}
}

/* イベントタブ
============================================ */
.ev-date-box{
	margin-right: 5px;
	margin-left: 5px;
	margin-bottom:-23px;
}
@media (max-width : 510px) {
	.ev-date-box{
		margin-bottom:-5px;
		font-size: 0.8em;

	}
}
.ev-date-box ul{
	border:solid 3px #040000;
	background-color:#a8cd31;

	display:table;
		table-layout: fixed;
	width:100%;
	box-sizing:border-box;
	margin:0;
	padding:0;
	-webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    -webkit-padding-start: 0;
}
.ev-date-box ul li{
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	border-right:solid 3px #040000;
}
.ev-date-box ul li:last-child{
	border-right:none;
}
.ev-date-box ul li a{
	padding:1em 0;
	display:block;
	color:#040000;
	font-weight:bold;
	text-decoration:none;
	word-break: break-all;
}
.ev-date-box ul li a.active{
	background-color:#ab579c;
	color:#fff;
}
.ev-date-box ul li a:hover{
	color:#ab579c;
}
.ev-date-box ul li a.active:hover{
	color:#fff;
}
.card.fan .body .title{
	margin-bottom:5px;
	}

.card .title.ev-title{
	background-color:#040000;
	color:#fff!important;
	display:block;
	padding:0.2em 0.5em;
}
.ev-fan .ev-tab,
.card .body .ev-tab{
	display:table;
	width:100%;
	box-sizing:border-box;
	background-color:#a9CC30;
	border:solid 3px #040000;
	box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.4);
	padding:0;
	-webkit-padding-start: 0;
}
.ev-fan{
	margin-right: 5px;
	margin-left: 5px;
	}
.ev-fan .ev-tab{
	background-color:#ab579c;
}
.ev-fan ul.ev-tab li,
.card ul.ev-tab li{
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	border-right:solid 3px #040000;
}
.card ul.ev-tab.tab3 li{width:33.3%;}
.ev-fan ul.ev-tab.tab2 li,
.card ul.ev-tab.tab2 li{width:50%;}

.ev-fan ul.ev-tab li:last-child,
.card ul.ev-tab li:last-child{
	border-right:none;
}
.ev-fan ul.ev-tab li a,
.card ul.ev-tab li a{
	padding:0.5em 0;
	display:block;
	color:#040000;
	font-weight:bold;
	text-decoration:none;
}
.card ul.ev-tab li a:hover{color:#ab579c;}
.ev-fan ul.ev-tab li a:hover{color:#a9CC30;}

.schedule .sch_img{
	display:table;
	padding:5px;
}
.schedule .sch_img .imgbox {
    display: table-cell;
    background-color: #f1f1f1;
    background-position: center center;
    background-repeat: no-repeat;
    width: 150px;
	min-width:150px;
    height: 113px;
    border: none;
    background-size: contain;
}
.schedule .sch_img p{
	 display: table-cell;
	 padding: 0 5px;
}
