@charset "utf-8";


/* top
-------------------------------------------------*/

#main-visual{
	position:relative;
	background:url(/img/bg_mainimage.jpg) repeat;
	margin-bottom:2.5rem;
}
#main_catch{
	position:absolute;
	top:37%;
	width:100%;
	text-align:center;
	color:#fff;
	    font-family: '丸フォーク M';
	font-size:2.5rem;
	line-height:1.2;
	font-weight:bold;
	text-shadow: 0 0 6px rgba(0,0,0,.5), 0 0 10px rgba(0,0,0,.3);
	transform:translateY(-50%);
	cursor:pointer;
}
.marker20{
	background: linear-gradient(transparent 85%, #5bed3b 0%);
}
@media(max-width: 414px){
	#main_catch{
		top:32%;
		font-size:1.5rem;
	}
}
.main-slider{
	width:970px;
	margin:0 auto;
}
.main-slider li{
	width:100%;
	height:400px;
	height:60vh;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
}
#btn_mv_snow{
	position:absolute;
	display:block;
	left:50%;
	top:37%;
	width:163px;
	height:114px;
	transform:translate(-50%,-50%)
}
@media(max-width: 970px){
	.main-slider{
		width:100%;
	}
	.main-slider li{
		height:40vh;
	}
}
@media(max-width: 768px){
	#btn_mv_snow{
		width:16%;
		min-width:85px;
	}
}
@media(max-width: 500px){
	.main-slider li{
		height:36vh;
	}
}


#feature-slider{
	width:100%;
	padding:1.5rem 0 3rem;
	background:#dff0ec;
}
	.feature-slider .slick-slide{
		width:40%;
		margin:0 5px;
	}
	.feature-slider img{
		width:100%;
		height:auto;
		box-shadow:3px 3px 3px rgba(0,0,0,.2);
		transition: .5s;
	}
	.feature-slider img:hover{
		box-shadow:3px 3px 3px rgba(0,0,0,.4);
	}
	.feature-slider .slick-list{
		overflow:visible;
	}
@media(max-width: 400px){
	#main-visual{
		margin-bottom:1.5rem;
	}
	.slick-dots{
		bottom: -2.25rem;
	}
}


.bn_special{
	text-align:center;
	background:#fff;
}
	.bn_special div{
		float:left;
		outline:7px solid #fff;
	}
	.bn_special div a{
		display:block;
		font-size:0;
		line-height:1;
		letter-spacing:-.01em;
		margin:0;
		padding:0;
	}
	.bn_special div a img{
		width:100%;
		height:auto;
	}
	.bn_one{
		width:50%;
	}
	.bn_two{
		width:50%;
	}
	.bn_three{
		width:30%;
	}
	.bn_four{
		width:20%;
	}
	
@media(max-width: 485px){
	.bn_one{
		width:100%;
	}
	.bn_two{
		width:100%;
	}
	.bn_three{
		width:60%;
	}
	.bn_four{
		width:40%;
	}
}




.rm_other{
	position:relative;
}
.rm_other ul:after{
	content: "";
	display: table;
	clear: both;
}
.rm_other li{
	float:left;
	width:32%;
	text-align:center;
	margin:0 .6% .4rem;
}
	.rm_other li a{
		display:block;
		padding:.6rem .4rem;
		color:#fff;
		font-size:.9rem;
		font-weight:bold;
		line-height:1;
		
		background-color: rgb(42,156,128);
		background-image: url(/img/i_arrow_white.png);
		background-repeat:no-repeat;
		background-position:97% 50%;
		border-radius: 3px;
		box-shadow:3px 3px 3px rgba(0,0,0,.15);
		transition: .5s;
	}
	.rm_other li a:hover{
		background-color:rgb(25,100,60);
		box-shadow:3px 3px 3px rgba(0,0,0,.4);
	}



#top-info{
}
	.btn_calendar{
		position:absolute;
		right:.6rem;
		top:.5rem;
		width:125px;
		height:44px;
		overflow:hidden;
	}
	.wrap_ttl_enjoy > div{
		vertical-align:middle;
	}
	#top-info .top-info_item{
		position:relative;
		padding:10px;
		border:2px solid rgb(42,156,128);
		border-radius:6px;
	}
	#top-info .top-info_item:after{
		content: "";
		display: table;
		clear: both;
	}
	#top-info .top-info_item a{
		display:block;
		width:100%;
		height:100%;
		color:#222;
	}
	#top-info .top-info_item a:hover{
		color:rgb(42,156,128);
	}
	#top-info .top-info_item .i_eve{
		display:inline-block;
		padding:2px 5px;
		color:#fff;
		font-size:.8rem;
		font-weight:bold;
		background:#3580ae;
		border-radius:2px;
	}
	#top-info .top-info_item .time{
		display:block;
		font-size:.8rem;
		margin:2px 0 8px;
	}
	#top-info .top-info_item .ttl{
		font-size:1.1rem;
		font-weight:bold;
		line-height:1.2;
	}
	#top-info .top-info_item .img{
		float:right;
		width:40%;
		height:8rem;
		margin:0 0 0 5px;
	}
	
	#top-info_list{
		width: auto;
		padding-right:1%;
		text-align:right;
		background:none;
	}
	#top-info_list a{
		display: inline-block;
		padding: .8rem 2rem .7rem .7rem;
		color: #fff;
		font-size: .9rem;
		font-weight: bold;
		line-height: 1;
		background-color: rgb(42,156,128);
		background-image: url(/img/i_arrow_white.png);
		background-repeat:no-repeat;
		background-position:97% 50%;
		border-radius:3px;
		box-shadow: 4px 4px 4px rgba(0,0,0,.3);
		transition:.5s;
	}
	#top-info_list:hover{
		background:none;
	}
	#top-info_list a:hover{
		background-color:rgb(45,89,194);
	}
	/*
	#top-info_list{
		width:99%;
		background:rgb(189,223,255) url(/img/i_arrow_green.png) no-repeat 99% 50%;
		border-radius: 3px;
		transition: .5s;
	}
	#top-info_list:hover{
		background:rgba(44,150,255,.4) url(/img/i_arrow_green.png) no-repeat 99% 50%;
	}
	#top-info_list a{
		display:block;
		text-align:right;
		padding:.6rem 4% .6rem 0;
		font-size:.9rem;
		font-weight:bold;
		line-height:1;
	}*/
	
	
@media screen and (max-width: 600px) {
	#top-info h2 img,
	#top-enjoy h2 img,
	.rm_other h2 img{
		height:40px;
		width:auto;
	}
	.btn_calendar{
		top:.1rem;
	}
	#top-info .top-info_item{
		float:inherit;
		width:100%;
		padding:10px;
		margin:0 0 2vh;
	}
	#top-info .top-info_item .img{
		width:40%;
	}
}



#top-enjoy{
}
	#top-enjoy:after,
	#top-rm:after,
	#top-rm2:after{
		content: "";
		display: table;
		clear: both;
	}
	.rm_item{
		position:relative;
		float:left;
		width:48%;
		height:18vh;
		background-repeat:no-repeat;
		background-position:50% 50%;
		background-size:cover;
		border:2px solid rgb(42,156,128);
		border-radius:6px;
		margin:0 1% 2vh;
	}
	.rm_item_w{
		width:98%;
		height:18vh;
	}
	.rm_item_s{
		position:relative;
		float:left;
		width:23%;
		height:13vh;
		background-repeat:no-repeat;
		background-position:50% 50%;
		background-size:cover;
		border:2px solid rgb(42,156,128);
		border-radius:6px;
		margin:0 1% 2vh;
	}
	.rm_item a,
	.rm_item_s a{
		display:block;
		width:100%;
		height:100%;
		text-align:center;
	}
	.rm_item span,
	.rm_item_s span{
		position:relative;
		display:inline-block;
		top:50%;
		transform:translateY(-50%);
		padding:7px 10px 5px;
		text-align:center;
		color:rgb(42,156,128);
		font-size:1.4rem;
		font-weight:bold;
		line-height:1;
		text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff;
	}
	
	.rm_item.sched		{ background-image:url(/img/top/rm_sched.jpg)}
	.rm_item.animal		{ background-image:url(/img/top/rm_animal.jpg)}
	.rm_item.flower		{ background-image:url(/img/top/rm_flower.jpg)}
	.rm_item.taiken		{ background-image:url(/img/top/rm_taiken.jpg)}
	.rm_item.gourmet	{ background-image:url(/img/top/rm_gourmet.jpg)}
	.rm_item.play		{ background-image:url(/img/top/rm_play.jpg)}
	.rm_item.treasure	{ background-image:url(/img/top/rm_takarash.jpg)}
	.rm_item.farm		{ background-image:url(/img/top/rm_farm.jpg)}
	.rm_item.netshop	{ background-image:url(/img/top/rm_netshop.jpg)}
	.rm_item.omiyage	{ background-image:url(/img/top/rm_omiyage.jpg)}
	.rm_item.wedding	{ background-image:url(/img/top/rm_wedding.jpg)}
	.rm_item.crown		{ background-image:url(/img/top/rm_crown.jpg)}
	.rm_item.museum		{ background-image:url(/img/top/rm_museum.jpg)}
	.rm_item.csr		{ background-image:url(/img/top/rm_csr.jpg)}
	.rm_item.coupon		{ background-image:url(/img/top/rm_coupon.jpg)}
	.rm_item.photocon	{ background-image:url(/img/top/rm_photocon.jpg)}
	.rm_item.app		{ background-image:url(/img/top/rm_app.jpg)}
	.rm_item.clown		{ background-image:url(/img/top/rm_clown.jpg)}
	.rm_item.rth		{ background-image:url(/img/top/rm_RTH.jpg)}
	.rm_item.gallery	{ background-image:url(/img/top/rm_gallery.jpg)}
	.rm_item.spa		{ background-image:url(/img/top/rm_spa.jpg); border-color:rgb(44,150,255)}
	.rm_item.winter		{ background-image:url(/img/top/rm_winterimg.jpg); border-color:rgb(44,150,255)}
	.rm_item.goods	{ background-image:url(/img/top/rm_snowgoods.webp); border-color:rgb(44,150,255)}
	.rm_item.cosplay	{ background-image:url(/img/top/rm_cosplay.jpg); border-color:rgb(44,150,255)}
	
	.rm_item_s span{
		font-size:1.1rem;
	}
	.rm_item.spa span,
	.rm_item.winter span,
	.rm_item.cosplay span,
	.rm_item.goods span{
		color:rgb(44,150,255);
	}
	
	.rm_item small{
		display:block;
		margin-top:.5rem;
		font-size:.8rem;
		font-weight:bold;
		text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 8px #fff, 0 0 8px #fff;
	}
		

@media(max-width: 500px){
	.rm_item span,
	.rm_item_s span{
		padding:5px 8px 3px;
		text-align:center;
		font-size:1rem;
	}
	.rm_item_s{
		width:48%;
	}
	.rm_item small{
		transform:translateY(-13%);
	}
}

#top-rm .rm_item{
	width:26%;
}
#top-rm .rm_item:nth-of-type(1){
	width:42%;
}
@media(max-width: 559px){
	#top-rm .rm_item{
		width:48%;
	}
	#top-rm .rm_item:nth-of-type(1){
		width:98%;
	}
}


.rm_shizenzukan{
	display:flex;
	flex-flow:row nowrap;
	align-items:center;
	justify-content:space-between;
	padding:8px;
	width:min(100%,957px);
	background:#bab664;
	border-radius:.5rem;
	margin:0 auto;
}
	.rm_shizenzukan h2{
		width:22%;
	}
	.rm_shizenzukan h2 img{
		width:min(100%,199px);
		height:auto;
		margin:auto;
	}
	.rm_shizenzukan div{
		width:min(25%,221px);
	}
@media(max-width: 559px){
	.rm_shizenzukan{
		display:block;
		width:min(65%,320px);
		padding:10px;
	}
	.rm_shizenzukan h2{
		width:100%;
	}
	.rm_shizenzukan h2 img{
		width:min(90%,280px);
		margin:0 auto 10px;
	}
	.rm_shizenzukan div{
		width:100%;
		margin-bottom:10px;
	}
	.rm_shizenzukan div:last-child{
		margin-bottom:0;
	}
}



/*	banner
------------------------------------------*/
.bn{
	text-align:center;
}
	.bn > div{
		display:inline-block;
		width:23%;
		margin:0 .5% 1rem;
	}
	.bn div img{
		width:100%;
		height:auto;
	}

#bn_sns.bn div{
	width:22%;
	max-width:233px;
}
	#bn_sns.bn h2{
		text-align:left;
		padding-left:3%;
	}
@media(max-width:413px){
	#bn_sns.bn div{
		width:43%;
	}
}

#bn_etc.bn > div{
	width:31%;
	max-width:233px;
}

#bn_TA{
	display:inline-block;
	float:inherit;
	width:100%;
	text-align:center;
	margin:0 auto;
}
	#bn_TA img{
		width:100%;
		max-width:148px;
		height:auto;
	}
	
@media(max-width:600px){
	.bn > div,
	#bn_etc.bn > div{
		width:48%;
		margin:0 1% .5rem;
	}
}





.avrs, .enq, .postponed{
	cursor:pointer;
}

#postponed{
	width:90%;
	max-width:700px;
	padding:3rem 0;
	margin:auto;
}

#antivirus{
	width:90%;
	max-width:1000px;
	padding:3rem 0;
	margin:auto;
}

	#img_antivirus{
		width:90%;
		max-width:601px;
		margin:0 auto 8vw;
	}
	#img_antivirus2{
		float:right;
		width:60%;
		max-width:278px;
		height:auto;
		margin:0 0 15px 15px;
	}
	#img_bokka_landscape{
		width:90%;
		max-width:922px;
		margin:0 auto 20px;
	}
	
	#antivirus h2{
		text-align:center;
		color: rgb(42,156,128);
		font-size: 2.4rem;
		line-height:1.3;
	}
	#antivirus .em_mask{
		display:inline-block;
		padding:.5rem 1rem;
		color:#fff;
		font-size:1.1rem;
		font-weight:bold;
		line-height:1.3;
		background:#F33;
		border-radius:6px;
		margin:.5rem 0;
	}
	#antivirus .em_mask small{
		display:block;
		margin:3px 0 0;
		font-size:.8rem;
		font-weight:normal;
	}

#link_wrap{
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
}
	#link_wrap > div{
		width:30%;
		text-align:center;
	}
	#link_wrap > div span{
		display:block;
		color:#444;
		font-size:.85rem;
		line-height:1.2;
		margin:10px auto 0;
	}

#ticket{
	border:3px solid #009261;
	border-radius:10px;
	padding:1.5rem;
}
	#m_3M{
		padding:.6rem;
		text-align:center;
		color:#fff;
		font-size:1.4rem;
		font-weight:bold;
		line-height:1.3;
		background:rgb(255,102,0);
		border-radius:5px;
		margin:0 auto 3rem;
	}
	#ticket p{
		color:rgb(42,156,128);
		font-weight:bold;
	}
	#m_ticket{
		width:100%;
		max-width:642px;
		margin:0 auto .8rem;
	}
	#m_vallo{
		width:80%;
		max-width:608px;
		margin:0 auto .8rem;
	}
	#tkt_price{
		display:inline-block;
		padding:15px;
		background:#e3ffb0;
		border-radius:5px;
		margin:10px auto;
	}
	#ticket .btn_white_arrow{
		width:13rem;
	}
@media(max-width: 700px){
	#ticket p{
		text-align:left;
	}
	#ticket p br{
		display:none;
	}
}




