/*-------------------------------------
■ top main
-------------------------------------*/
.real_time{
	padding:0 20px;
	text-align:center;
	background:rgba(208,0,0,.5);
}
.real_time p{
	height:45px;
	line-height:45px;
	font-size:18px;
    
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.real_time p .rt_text{
	padding-left:10px;
	-webkit-animation:blink 1s step-end infinite;
	animation:blink 1s step-end infinite;
}
@-webkit-keyframes blink{75%{opacity:0.0}}
@keyframes blink{75%{opacity:0.0}}

.top_sp_link_btn{
	display:none;
}

.tm_box img{
/*
	filter:grayscale(90%) brightness(95%);
*/
	width:100%;
}
.eb_l a img{
/*
	filter:grayscale(90%) brightness(80%);
*/
	width:100%;
}
.sb_box img{
	filter:grayscale(65%);
	width:100%;
}

/* swiper ////////////////////////////////////////////*/
.tm_box{
	box-shadow:0 1px 5px rgba(0,0,0,.6);
}
.tm_box .swiper-wrapper li.swiper-slide br{
	display:none;
}
.tm_box .swiper-wrapper li.swiper-slide img:nth-of-type(2){
	display:none;
}
.top_main_box .swiper-pagination-bullet{
	width:15px;
	height:15px;
}
.top_main_box .swiper-pagination-bullet{
	margin:0 10px;
	opacity:1;
	background:#666;
}
.top_main_box .swiper-pagination-bullet-active{
	background:#e4007f;
}
.top_main_box .swiper-pagination{
	position:relative;
	padding:20px;
}
/* swiper ////////////////////////////////////////////*/

/*-------------------------------------
■ top main under
-------------------------------------*/
.top_main_under{
	padding:0 20px 20px;
}
.tmu_title,
.tmu_text{
	text-align:center;
}
.tmu_title{
	font-size:40px;
	font-weight:bold;
	line-height:1.5em;
}
.tmu_title .f_p{
	font-weight:bold;
}
.tmu_text{
	padding:30px 0;
	font-size:16px;
}
.tmu_text span{
	font-weight:bold;
}

.sb_wrapper{
	position:relative;
	margin-bottom:50px;
}
.sb_box{
	max-width:1060px;
}

/* swiper ////////////////////////////////////////////*/
.swiper-button-next, .swiper-button-prev{
	color:#e4007f;
}
/* swiper ////////////////////////////////////////////*/

.sb_box li{
	box-shadow:0 0 5px rgba(0,0,0,.6);
}
.sb_box li a{
	display:block;
	border:1px solid #8a004d;
}
.sb_box li a img{
	transition:transform .3s;
}
.sb_box li a:hover img{
	transform:scale(1.2);
}
.sb_box li:last-child a span{
	display:none;
}

/*-------------------------------------
■ today's schedule
-------------------------------------*/
.t_wrapper{
	padding-bottom:40px;
}
.t_box{
	display:inline-block;
	width:23.75%;
	margin-left:1%;
	margin-bottom:2%;
	vertical-align:top;
}
.t_box .tb_img{
	position:relative;
	display:block;
	color:#fff;
}

.tbi_w{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-position:center center;
	background-size:cover;
}
.t_box .tb_img .tbi_w{transition:transform .3s}
.t_box .tb_img:hover .tbi_w{transform:scale(1.2)}

.tb_info{
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	padding:10px 0 5px;
	text-align:center;
	background:rgba(0,0,0,.7)
}
.tb_info p{
	line-height:1.2;
	padding-bottom:5px;
}
.tbi_name{
	font-size:18px;
}
.tbi_name span{
	margin-left:5px;
	font-size:14px;
}
.tbi_3{
	font-size:12px;
}
.tbi_time{
	font-size:18px;
}
.tbi_time span img{
	vertical-align:top;
	margin:3px 10px 0 0;
}

.icon_new{
	position:absolute;
	top:0;
	left:0;
}
.icon_black,.icon_ken{
	position:absolute;
	top:0;
	right:0;
}

.icon_syu{
	position:absolute;
	top:0;
	right:0;
}
.icon_black + .icon_syu,
.icon_ken + .icon_syu{
	top:26px;
}

/*-------------------------------------
■ menu
-------------------------------------*/
.menu_box{
	position:relative;
}
.menu_left{
	position:absolute;
	top:0;
	left:0;
	width:50%;
	max-width:825px;
}

.menu_right{
	float:right;
	position:relative;
	max-width:678px;
}
.mr_menu{
	position:relative;
	font-family: Montserrat,'Noto Sans JP',"ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.mrm_box{
	position:absolute;
	top:0;
	left:0;
	padding:30px 40px;
	color:#333;
	text-align:center;
}
.mrm_title{
	color:#e4007f;
	font-size:26px;
	line-height:2.5;
}
.mrm_text{
	font-size:14px;
	line-height:1.9;
	color:#666;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.mrm_fee{
	margin:0 auto;
	padding:35px 0;
	width:80%;
}
.mrmf_l{
	margin-bottom:20px;
	border-bottom:1px dashed #333;
}
.mrmf_l p{
	font-size:30px;
}
.mrmf_l p:first-child{
	float:left;
}
.mrmf_l p:first-child span{
	font-size:30px;
	color:#e4007f;
}
.mrmf_l p:last-child{
	float:right;
}

.mrmf_t{
	padding-top:30px;
	font-size:18px;
	text-align:center;
	color:#e4007f;
}

.mrm_text span{
	color:#e4007f;
	font-size:20px;
	font-family: Montserrat,'Noto Sans JP',"ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.mr_menu .link_btn{
	position:absolute;
	right:32%;
	bottom:6%;
}

/*-------------------------------------
■ concept
-------------------------------------*/
.cb_wrapper{
	display:flex;
}
.cb_wrapper li{
	width:32.4%;
	margin-left:1.4%;
	background:#000;
}
.cb_wrapper li:first-child{
	margin-left:0;
}
.cb_wrapper li a div{
	overflow:hidden;
}
.cb_wrapper li a div img{
	transition:transform .3s;
}
.cb_wrapper li a p{
	padding:10px;
	font-size:16px;
	color:#fff;
	transition:color .3s
}

.cb_wrapper li a:hover div img{
	transform: scale(1.2);
}
.cb_wrapper li a:hover p{
	color:#ff71b8;
}

/*-------------------------------------
■ access
-------------------------------------*/
.access_box{
	padding:20px;
}

.ab_map,
.ab_text{
	float:left;
	width:50%;
}

.ab_map iframe{
	width:100%;
}
.ab_text{
	padding-left:20px;
}
.ab_text p{
	margin-bottom:50px;
	font-size:16px;
}
.ab_text p .f_p{
	font-size:20px;
	font-weight:bold;
}

/*-------------------------------------
■ event
-------------------------------------*/
.event_box{
	padding:20px;
}
.eb_w{
	text-align:center;
}
.eb_l{
	display:inline-block;
	width:23.75%;
	margin:0 0.5% 2%;
	vertical-align:top;
}
.eb_l a,
.eb_l p span{
	display:block
}
.eb_l a img{transition:transform .3s}
.eb_l a:hover img{transform:scale(1.2)}

.eb_l p{
	padding:10px 0;
	font-size:20px;
}
.eb_l p span{
	font-size:16px;
}

/*-------------------------------------
■ pick up
-------------------------------------*/
.pickup_box{
	background:#000;
}
.pb_inner{
	padding:0 20px 70px;
}
.pbi_c a{
	display:block;
	margin-bottom:20px;
}
.pbi_c a:last-child{
	margin-bottom:0;
}
.pbi_c a img{
	transition:opacity .3s;
}
.pbi_c a:hover img{
	opacity:.8;
}
.pbi_c>img{
	margin-bottom:20px;
}

/*-------------------------------------
■ info
-------------------------------------*/
.info_box{
	padding:20px;
}

.twitter_box,
.news_box{
	float:left;
	width:50%;
}

.ib_tb,
.ib_nb{
	background:#000;
}

/* twitter
--------------------------------*/
.ib_tb{
	margin-right:10px;
}

/* news
--------------------------------*/
.ib_nb{
	overflow:auto;
	margin-left:10px;
	padding:20px;
	max-height:600px;
	border:1px solid #d11c70
}
.ib_nb_text{
	font-size:16px;
	margin-bottom:10px;
	padding:0 10px 10px;
	border-bottom:1px solid #444;
}
.ib_nb_text:last-child{
	border-bottom:0;
}
.ib_nb_text .f_p{
	font-size:14px;
	display:block;
}










@media screen and (max-width:970px){
/*-------------------------------------
■ top main under
-------------------------------------*/
	.tmu_title{font-size:30px}

/*-------------------------------------
■ today's schedule
-------------------------------------*/
	.t_box{width:32%}

/*-------------------------------------
■ event
-------------------------------------*/
	.eb_l{width:32%}
}










@media screen and (max-width:767px){
	.swiper-button-prev,
	.swiper-button-next{
		display:none;
	}
	.sb_wrapper{
		padding:0 20px;	
	}

	.top_sp_link_btn{
		display:block;
		padding:0 20px 20px;
	}
	.top_sp_link_btn ul{
		display:flex;
		align-items:stretch;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	.top_sp_link_btn ul li{
		width:calc(100% / 4 - (30px / 3));
		margin-left:10px;
	}
	.top_sp_link_btn ul li:first-child{
		margin-left:0;
	}
	.top_sp_link_btn ul li a{
		display:block;
		padding:15px 0;
		line-height:1.6;
		text-align:center;
		color:#fff;
		font-weight:bold;
		font-size:.6rem;
		border-radius:10px;
		background:#d85596;
	}
	.top_sp_link_btn ul li a i{
		display:block;
		font-size:1.5rem;
		color: #fff;
	}

/*-------------------------------------
■ top main
-------------------------------------*/
	.real_time p{font-size:16px}

/* swiper ////////////////////////////////////////////*/
	.tm_box .swiper-wrapper li.swiper-slide img:nth-of-type(1){display:none}
	.tm_box .swiper-wrapper li.swiper-slide img:nth-of-type(2){display:inline}

	.top_main_box .swiper-pagination-bullet{width:10px;height:10px}
	.top_main_box .swiper-pagination{padding:10px}
/* swiper ////////////////////////////////////////////*/
/*-------------------------------------
■ top main under
-------------------------------------*/
	.tmu_title{font-size:20px}
	.tmu_text{padding:20px 0 5px}
	.sb_wrapper{margin-bottom:40px}

/*-------------------------------------
■ today's schedule
-------------------------------------*/
	.t_wrapper{
		padding:0 5px 40px;
	}
	.t_box{
		width:48%;
		margin:0 1% 2%;
	}
	.tb_info{
		padding:5px 0;
	}
	.tb_info p{padding-bottom:3px}
	.tbi_name,
	.tbi_time{
		font-size:16px
	}
	.tbi_3{font-size:10px}
	.tb_info p.tbi_time{padding-bottom:0}

/*-------------------------------------
■ menu
-------------------------------------*/
	.mr_menu{
		padding:0 10px 10px
	}
	.menu_right{
		float:none;
		width:98%;
		margin:0 auto;
	}

.sp_none{
	display:none;
}
.mrm_box{
	position:relative;
	padding:3% 5%;
	border:2px solid #70591f;
	background:#ececec;
}
.mrm_title{
	font-size:20px;
	font-weight:bold;
}
.mrm_text{
	font-size:16px;
}
.mrm_text span{
	font-size:16px;
	font-weight:bold;
}

.mrm_fee{
	padding:6% 0 5%
}
.mrmf_l{
	margin-bottom:5%;
}
.mrmf_l p,
.mrmf_l p:first-child span{
	font-size:20px;
}
.mrmf_t{
	padding-top:4%;
	font-size:16px;
}

	.mr_menu .link_btn{
		position:relative;
		right:auto;
		bottom:auto;
		margin:10px auto;
	}

/*-------------------------------------
■ concept
-------------------------------------*/
	.cb_wrapper{
		display:block;
	}
	.cb_wrapper li{
		width:100%;
		margin-left:0;
		margin-bottom:20px;
	}
	.cb_wrapper li a p{
		padding:10px;
		font-size:16px;
		color:#fff;
		transition:color .3s
	}

/*-------------------------------------
■ access
-------------------------------------*/
	.access_box{
		padding:10px 15px;
	}
	.ab_map,
	.ab_text{
		float:none;
		width:100%;
	}
	.ab_map iframe{height:400px}
	.ab_text{padding:0}
	.ab_text p{margin:20px 0}
	.ab_text p .f_p{font-size:18px}
	.ab_text .link_btn{margin:0 auto}

/*-------------------------------------
■ event
-------------------------------------*/
	.event_box{
		padding:10px;
	}
	.eb_l{
		width:48%;
		margin:0 1% 2%;
	}

/*-------------------------------------
■ pick up
-------------------------------------*/
	.pb_inner{
		padding:0 10px 40px;
	}

/*-------------------------------------
■ info
-------------------------------------*/
	.info_box{
		padding:10px;
	}
	.twitter_box,
	.news_box{
		float:none;
		width:100%;
	}
	.twitter_box{
		margin-bottom:20px;
	}
	.ib_tb{
		width:90%;
		margin-right:auto;
		margin-left:auto;
	}
	.ib_nb{
		width:90%;
		margin-right:auto;
		margin-left:auto;
		padding:10px;
	}
}