@charset "UTF-8";

/*--------------------
新デザインに伴う調整
--------------------*/
.Main__content dd,
.Main__content ul{
	margin-left: 0;
	padding-left: 0;
}

.Main__content p{
	margin: 0;
}

.Main__content li{
	list-style: none;
}

.Footer__guide{
	display: none;
}

.Main__content *,
.Main__content * :after,
.Main__content *:before{
	box-sizing: content-box;
}

@media print, screen and (min-width: 768px){
	body{
		min-width: 950px;
		max-width: 100%;
	}
	
	#footer{
		min-width: 1260px;
	}
	
	.Main__content{
		max-width: 950px;
		padding: 90px 0 0 0;
		padding: 0;
	}
	
}

@media only screen and (max-width: 767.98px){
	.Main__content{
		padding: 0;
	}
	
	.Main__content *,
	.Main__content * :after,
	.Main__content *:before{
		box-sizing: border-box;
	}
	
}


/*--------------------
SNSボタン
--------------------*/
#foot_sharebutton > .div_social > ul{
	display: flex;
	justify-content: center;
}

@media print, screen and (min-width: 768px){
	#foot_sharebutton{
		position: absolute;
		top: 90px;
		top: 0;
		left: 0;
		width: 100%;
		height: 50px;
	}
	
	#foot_sharebutton > .div_social > ul{
		float: right;
		text-align: left;
	}
}


/*---------------------
ページ全体
---------------------*/
@media screen and (min-width: 1000px) {
	.rcmd-content, .l_cont, #okeihan_link{
		padding-right: calc(50vw - 50%);
		padding-left: calc(50vw - 50%);
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
	}
}

.Main__content{
	color: #333;
	font-size: 18px;
	font-family: 'YakuHanMP', 'Noto Serif JP', serif;
	font-weight: 600;
	text-align: justify;
	text-justify: distribute;
	letter-spacing: 0.2em;
	line-height: 1.5;
	position: relative;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.Main__content{
		font-size: 14px;
	}
}

.Main__content img{
	width: 100%;
}

.Main__content .mt0{margin-top: 0px !important;}
.Main__content .mt10{margin-top: 10px !important;}
.Main__content .mt20{margin-top: 20px !important;}
.Main__content .mt30{margin-top: 30px !important;}
.Main__content .mt40{margin-top: 40px !important;}
.Main__content .mt50{margin-top: 50px !important;}
.Main__content .mb0{margin-bottom: 0px !important;}
.Main__content .mb20{margin-bottom: 20px !important;}
.Main__content .mb40{margin-bottom: 40px !important;}
.Main__content .mb80{margin-bottom: 80px !important;}
.Main__content .pt0{padding-top: 0px !important;}

.br_pc { display: block !important;}
.br_tab { display: none !important;}
.br_sp { display: none !important;}

@media screen and (max-width: 1024px) {
	.br_pc { display: block !important;}
	.br_tab { display: block !important;}
	.br_sp { display: none !important;}
}

@media screen and (max-width: 767px) {
	.br_pc { display: none !important;}
	.br_sp { display: block !important;}
}


/*---------------------
枠組み
---------------------*/
div#contentsWrap{
	margin-bottom: 0;
	position: relative;
}

.rcmd-content.-top{
	max-width: 950px;
	margin: 0 auto;
}

@media screen and (max-width: 1024px) {
	.rcmd-content.-top{
		max-width: 100%;
		margin: 0;
		padding: 0;
	}
}

.rcmd-content *,
.rcmd-content ::before,
.rcmd-content ::after{
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}

/*---------------------
オープニングアニメーション
---------------------*/
.l_op1{
	background: #3dc2dc;
	content: "";
	position: fixed;
	z-index: 99999;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	animation-name: sakura;
	animation-duration: 1.5s;
	animation-delay: 2s;
	animation-timing-function: ease-in-out;
	animation-fill-mode: forwards;
	pointer-events: none;
}

@keyframes sakura{
	0%{
		opacity: 1;
	}
	100%{
		opacity: 0;
		display: none;
	}
}

.md_sakura{
	position: relative;
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.md_sakura li{
	width: 18px;
	position: absolute;
	list-style: none;
	top: -50px;
	animation: fall 4s linear infinite, rotate1 2s ease-in-out infinite alternate;
}

@keyframes fall{
	to{
		top: 120%;
	}
}

@keyframes rotate1{
	from{
		transform: translateX(0px) rotate(0deg);
	}
	to{
		transform: translateX(200px) rotate(-80deg) rotateX(180deg);
	}
}

@keyframes rotate2{
	from{
		transform: translateX(200px) rotate(-45deg);
	}
	to 
		transform: translateX(0px) rotate(0deg);
	}
}

.md_sakura li:nth-child(1){
	left: 0;
	animation: fall 10s linear infinite, rotate1 3s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(2){
	width: 30px;
	left: 5vw;
	animation: fall 15s linear infinite, rotate1 2s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(3){
	left: 15vw;
	animation: fall 9s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(4){
	width: 20px;
	left: 30vw;
	animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(5){
	left: 40vw;
	animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(6){
	width: 25px;
	left: 55vw;
	animation: fall 11s linear infinite, rotate2 3s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(7){
	left: 65vw;
	animation: fall 7s linear infinite, rotate2 3.5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(8){
	left: 60vw;
	animation: fall 20s linear infinite, rotate1 2s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(9){
	left: 80vw;
	animation: fall 4s linear infinite, rotate1 5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(10){
	left: 50vw;
	animation: fall 6s linear infinite, rotate1 1s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(11){
	left: 80vw;
	animation: fall 12s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(12){
	left: 50vw;
	animation: fall 10s linear infinite, rotate1 3s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(13){
	width: 30px;
	left: 60vw;
	animation: fall 15s linear infinite, rotate1 2s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(14){
	left: 50vw;
	animation: fall 9s linear infinite, rotate1 3.5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(15){
	width: 20px;
	left: 10vw;
	animation: fall 8s linear infinite, rotate2 4s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(16){
	left: 80vw;
	animation: fall 10s linear infinite, rotate1 4s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(17){
	width: 25px;
	left: 20vw;
	animation: fall 4s linear infinite, rotate2 3s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(18){
	left: 20vw;
	animation: fall 7s linear infinite, rotate2 3.5s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(19){
	left: 0vw;
	animation: fall 10s linear infinite, rotate1 2s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(20){
	left: 30vw;
	animation: fall 20s linear infinite, rotate1 10s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(21){
	left: 70vw;
	animation: fall 16s linear infinite, rotate1 1s ease-in-out infinite alternate;
}

.md_sakura li:nth-child(22){
	left: 10vw;
	animation: fall 4s linear infinite, rotate2 6s ease-in-out infinite alternate;
}

@media screen and (max-width: 767px) {
	.md_sakura li{
		width: 8px;
	}
	
	.md_sakura li:nth-child(2){
		width: 15px;
	}
	
	.md_sakura li:nth-child(4){
		width: 10px;
	}
	
	.md_sakura li:nth-child(6){
		width: 15px;
	}
	
	.md_sakura li:nth-child(13){
		width: 15px;
	}
	.md_sakura li:nth-child(15){
		width: 10px;
	}
	.md_sakura li:nth-child(17){
		width: 15px;
	}

}


/*---------------------
スクロールアニメーション
---------------------*/
.l_main .is_scrollanime{
	opacity: 0 !important;
	transition: all .8s ease !important;
}

.l_main .is_scrollanime.show{
	opacity: 1 !important;
	transform: none !important;
}

.l_main .is_rl{         transform: translate(-100px, 0) !important;}
.l_main .is_rr{         transform: translate(100px, 0) !important;}
.l_main .is_up{         transform: translate(0, 100px) !important;}
.l_main .is_down{       transform: translate(0, -100px) !important;}
.l_main .is_scaleUp{    transform: scale(.8) !important;}
.l_main .is_scaleDown{  transform: scale(1.5) !important;}
.l_main .is_rotateL{    transform: rotate(180deg) !important;}
.l_main .is_rotateR{    transform: rotate(-180deg) !important;}


/*---------------------
ページトップへ
---------------------*/
.l_main #totop{
	position: fixed;
	z-index: 999;
	bottom: 20px;
	right: 15px;
	font-size: 30px;
}

.l_main #totop a{
	width: 150px;
	height: 150px;
	text-decoration: none;
	display: block;
}

.l_main #totop:hover{
	bottom: 40px;
}

.l_main #totop img:hover{
	filter:Alpha(opacity=100) !important;
	-moz-opacity:1.0 !important;
	opacity:1.00 !important;
}


/*---------------------
メインビジュアル
---------------------*/
.l_main{
	position: relative;
}

.l_main .l_mv{
	background: #ffeeb3;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	z-index: 9999;
	z-index: 0;
}

/*---------------------
開催日
---------------------*/
.l_main .l_day{
	background: #ffeeb3;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	z-index: 9999;
	padding-top: 20px;
	padding-bottom: 60px;
	z-index: 0;
}

.l_main .l_day p.is_day{
	width: 92%;
	margin: 0 auto;
}

.l_main .l_day p.is_catch{
	font-size: 112%;
	font-weight: 700;
	width: 84%;
	margin: 0 auto;
	padding-top: 40px;
}

/*---------------------
お知らせ
---------------------*/
.l_main .l_news{
	background;  #fff;
	padding-top: 20px;
	padding-bottom: 20px;
}

.l_main .l_news dl{
	background: url(../img/bg_news.png) repeat-y center top;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	z-index: 0;
}

.l_main .l_news dl dt span{
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	text-align: center;
	background: #f198ad;
	width: 100px;
	margin: 0 0 10px 0;
	padding: 0 10px;
	display: block;
}

.l_main .l_news ul{
	margin-left: 20px !important;
	height: 100px;
	overflow-y: scroll;
	padding: 0 20px 0 0;
}

.l_main .l_news ul li{
	list-style: disc;
	padding: 5px 0;
}

.l_main .l_news ul li a{
	color: #333;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	text-decoration: none;
	vertical-align: middle;
	display: block;
	position: relative;
	width: 95%;
	padding: 0 5% 0 0;
}

.l_main .l_news ul li a::before,
.l_main .l_news ul li a::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	vertical-align: middle;
}

.l_main .l_news ul li a::before{
	width: 20px;
	height: 20px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #f198ad;
}

.l_main .l_news ul li a::after{
	right: 8px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.l_main .l_news ul li a:hover{
	opacity: 0.5;
}


/*---------------------
メッセージ・アンカーリンク
---------------------*/
.l_main .l_message{
	background: #ffeeb3;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
}

.l_main .md_message{
	background: url(../img/img_sakura.png) repeat-y top center;
	background-size: auto;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
	z-index: 0;
}

.l_main .md_messagenaiyo{
	background: #fff url(../img/bg_message.png) top left;
	background-size: auto;
	width: 60%;
	margin: 0 auto;
	padding: 2% 26% 2% 4%;
	position: relative;
}

.l_main .md_messagenaiyo p{
	font-family: "Mochiy Pop P One", sans-serif;
	font-weight: 400;
	line-height: 200%;
	margin: 0
}

.l_main .md_messagenaiyo .is_name{
	font-size: 125%;
	text-align: right;
	padding-right: 10%;
}

.l_main .md_messagenaiyosp2{
	display: none;
}

.l_main .is_charamessage{
	position: absolute;
	bottom: 0;
	right: -64px;
	height: 400px;
}

.l_main .is_charamessage img{
	width: auto;
	height: 100%;
}

.l_main .md_message ul.is_btnpc{
	padding-top: 40px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.l_main .md_message ul.is_btnpc li{
	width: 20%;
}

.l_main .md_message ul.is_btnpc li a img{
	transition: 0.5s all;
}

.l_main .md_message ul.is_btnpc li a img:hover{
	transform: scale(1.2,1.2);
	transition: 0.5s all;
}


/*---------------------
タイトルなど
---------------------*/
.l_main .is_h1{
	background: #fff;
	width: 98%;
	margin: 0 auto 4% auto;
}

.l_main .is_h1 h1{
	background: url(../img/bg_news.png) repeat-x center center;
	background-size: auto 100%;
}

.l_main .is_h1 h1 img{
	max-width: 640px;
	width: 84%;
	margin: 0 auto;
	display: block;
}

.l_main .md_eventnaiyo{
	padding-top: 60px;
	position: relative;
}

.l_main .md_event{
	max-width: 660px;
	width: 84%;
	margin: 0 auto 8% auto;
}


/*---------------------
キャラクター
---------------------*/
.l_main .is_character1{
	position: absolute;
	top: -70px;
	left: -70px;
	height: 500px;
}

.l_main .is_character2{
	position: absolute;
	top: -70px;
	right: -70px;
	height: 500px;
}

.l_main .is_character3{
	position: absolute;
	top: -70px;
	left: -70px;
	height: 500px;
}

.l_main .is_character4{
	position: absolute;
	top: -70px;
	right: -70px;
	height: 500px;
}

.l_main .is_character5{
	position: absolute;
	top: -25%;
	right: -7%;
	height: 500px;
}

.l_main .is_character6{
	position: absolute;
	top: -25%;
	left: -7%;
	height: 500px;
}

.l_main .is_character7{
	position: absolute;
	top: -10%;
	right: -7%;
	height: 500px;
}

.l_main .is_character8{
	position: absolute;
	top: 43%;
	left: -13%;
	height: 500px;
}

.l_main .is_character1 img,
.l_main .is_character2 img,
.l_main .is_character3 img,
.l_main .is_character4 img,
.l_main .is_character5 img,
.l_main .is_character6 img,
.l_main .is_character7 img,
.l_main .is_character8 img{
	width: auto;
	height: 100%;
}

/*---------------------
イベント（青）
---------------------*/
.l_main .l_event1{
	background: rgb(187,235,235);
	background: linear-gradient(90deg, rgba(187,235,235,1) 0%, rgba(139,219,244,1) 100%);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	overflow: hidden;
}

.l_main .md_event1{
	background: url(../img/bg_blue.png), url(../img/img_sakura.png) repeat-y top center;
	background-size: auto;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
	z-index: 0;
}


/*---------------------
イベント（黄色）
---------------------*/
.l_main .l_event2{
	background: #f4cd5f;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
}

.l_main .md_event2{
	background: url(../img/bg_yellow.png), url(../img/img_sakura.png) repeat-y top center;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
	z-index: 0;
}


/*---------------------
イベント（赤）
---------------------*/
.l_main .l_event3{
	background: rgb(246,183,177);
	background: linear-gradient(90deg, rgba(246,183,177,1) 0%, rgba(242,161,156,1) 100%);
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
}

.l_main .md_event3{
	background: url(../img/bg_red.png), url(../img/img_sakura.png) repeat-y top center;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
	z-index: 0;
}


/*---------------------
バナー
---------------------*/
.l_main .l_footer{
	background: #ffeeb3;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
}

.l_main .md_footer{
	background: url(../img/img_sakura.png) repeat-y top center;
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
	z-index: 0;
}


/*---------------------
イベント内容
---------------------*/
.l_main .md_event p.is_rosen{
	font-size: 148%;
	font-weight: 800;
	padding-bottom: 10px;
	text-indent: -1em;
	padding-left: 1em;
}

.l_main .md_event p.is_rosen2{
	border-top: #fff 6px dotted;
	margin-top: 60px;
	padding-top: 60px;
}

.l_main .md_event p.is_ekkenet{
	border: #000 1px solid;
	font-size: 112%;
	font-weight: 800;
	margin-top: 40px;
	padding: 5px 20px;
}

.l_main .md_event .is_kikan{
	padding-top: 10px;
}

.l_main .md_event .is_kikan li{
	display: flex;
	margin-top: 10px;
}

.l_main .md_event .is_kikan li p:nth-child(1){
	color: #fff;
	font-size: 112%;
	font-weight: 800;
	text-align: center;
	border-radius: 6px;
	background: #37b9ff;
	width: 120px;
	margin-right: 10px;
	padding: 5px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.l_main .md_event .is_kikan li p:nth-child(2){
	font-size: 112%;
	font-weight: 800;
	width: calc( 100% - 110px );
	display: flex;
	align-items: center;
}

.l_main .md_event .is_kikan2 li p:nth-child(1){
	color: #333;
	background: #ffeeb3;
}

.l_main .md_event .is_kikan3 li p:nth-child(1){
	background: #f29344;
}

.l_main .md_event .is_kikan4 li p:nth-child(1){
	background: #eb5f54;
}

.l_main .md_event .is_kikan5 li p:nth-child(1){
	background: #ec82b5;
}

.l_main .md_event .md_option{
	border: #fff 1px solid;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.2);
	margin: 40px 0 0;
	padding: 30px 20px;
}

.l_main .md_event .is_option{
	font-size: 125%;
	font-weight: 800;
	text-align: center;
	background: linear-gradient(transparent 70%, #f198ad 30%);
	margin: 0 0 20px 0;
}

.l_main .md_event .md_option .img_w75{
	width: 50%;
	margin: 0 auto;
}

.l_main .md_event .is_event2{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.l_main .md_event .is_event2 li{
	width: 48%;
	text-align: center;
	padding-bottom: 20px;
}

.l_main .md_event .is_event2 li img{
	padding-bottom: 5px;
}

.l_main .md_event .is_event3{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.l_main .md_event .is_event3 li{
	width: 32%;
	text-align: center;
	padding-bottom: 20px;
}

.l_main .md_event .is_event3 li img{
	padding-bottom: 5px;
}

.l_main .is_kome{
	font-size: 72%;
}

.l_main .is_txtleft{
	text-align: left;
}

.l_main .md_event .md_kakioroshi{
	border-top: #f198ad 3px dotted;
	margin-top: 40px;
	padding: 20px 10px 20px 10px;
}

.l_main .md_event .is_kakioroshi{
	color: #ec82b5;
	font-size: 125%;
	font-weight: 800;
}

.l_main .md_event .is_kakioroshi + p{
	padding: 20px 0;
}

.l_main .md_event .is_btn a{
	color: #37b9ff;
	font-size: 125%;
	font-weight: 800;
	text-align: center;
	border: #37b9ff 4px solid;
	border-radius: 10px;
	background: #fff;
	margin: 40px 0 0 0;
	padding: 10px;
	box-shadow: 0px 5px 11px 0px rgba(0, 0, 0, 0.2);
	display: block;
}

.l_main .md_event .is_btn + .is_linkkome{
	font-size: 86%;
	margin-top: 20px;
}

.l_main .md_event .is_btn a:hover{
	text-decoration: none;
	opacity: 0.5;
}

.l_main .md_event .is_headmark{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.l_main .md_event .is_headmark li{
	width: 30%;
	margin-bottom: 2%;
}

.l_main .md_event .is_goods{
	font-size: 125%;
	font-weight: 800;
}

.l_main .is_ex{
	font-weight: 800;
	border: #000 1px solid;
	margin: 40px 0 20px 0;
	padding: 5px 20px;
}

.l_main .md_event .is_goods2{
	border-top: #fff 6px dotted;
	margin-top: 60px;
	padding-top: 60px;
}

.l_main .md_event2 .md_event,
.l_main .md_event3 .md_event{
	margin-bottom: 40px;
}

.l_main p.is_btnorange{
	text-align: right;
	margin-bottom: 8%;
}

.l_main p.is_btnred{
	margin-top: 40px;
	margin-bottom: 0;
}

.l_main p.is_btnorange a{
	color: #f29344;
	font-size: 125%;
	font-weight: 900;
	border: #f29344 4px solid;
	border-radius: 8px;
	background: #fff;
	padding: 5px 30px 5px 20px;
	box-shadow: 1px 3px 6px 2px rgba(0, 0, 0, 0.2);
	display: inline-block;
}

.l_main p.is_btnorange a span.is_arrow{
	position: relative;
	left: -5px;
}

.l_main p.is_btnorange a span.is_arrow::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	vertical-align: middle;
	left: 11px;
	box-sizing: border-box;
	border: 8px solid transparent;
	border-left: 12px solid #f29344;
	width: 18px;
	height: 16px;
}

.l_main p.is_btnorange a:hover{
	color: #fff;
	text-decoration: none;
	background: #f29344;
	opacity: 1.0;
}

.l_main p.is_btnorange a:hover span.is_arrow::after{
	border-left: 12px solid #fff;
}

.l_main p.is_btnred a{
	color: #eb5f54;
	border: #eb5f54 4px solid;
}

.l_main p.is_btnred a span.is_arrow::after{
	border-left: 12px solid #eb5f54;
}

.l_main p.is_btnred a:hover{
	background: #eb5f54;
}

.l_main p.is_btnpink{
	margin-top: 40px;
	margin-bottom: 0;
}

.l_main p.is_btnpink a{
	color: #ec82b5;
	border: #ec82b5 4px solid;
}

.l_main p.is_btnpink a span.is_arrow::after{
	border-left: 12px solid #ec82b5;
}

.l_main p.is_btnpink a:hover{
	background: #ec82b5;
}

.l_main .md_stamprallymap{
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.l_main .md_stamprallymap div{
	width: 48%;
}

.l_main .md_event .md_stamprallymap .is_kikan{
	padding-top: 0;
}

.l_main .md_event .md_stamprallymap .is_kikan li{
	margin-top: 0;
	display: block;
}

.l_main .md_event .md_stamprallymap .is_kikan li p:nth-child(1){
	width: auto;
}

.l_main .md_event .md_stamprallymap  .is_kikan li p:nth-child(2){
	width: 100%;
	padding: 10px 0 20px 0;
}

.l_main .is_wrappingphoto{
	font-size: 112%;
	font-weight: 800;
}

.l_main .is_kikan a{
	text-decoration: underline;
	word-break: break-all;
}

.l_main .is_kikan a:hover{
	text-decoration: none;
}

.l_main #link_event5 .md_event .is_kikan3 li p:nth-child(2),
.l_main .md_event .is_kikan li p.is_1line{
	display: block;
}

.l_main .is_gaibu{
	text-align: right;
	margin-top: 10px;
}

.l_main .is_txtlink a{
	color: #000;
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	vertical-align: middle;
	text-decoration: underline;
}

.l_main .is_txtlink a::before,
.l_main .is_txtlink a::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	vertical-align: middle;
}

.l_main .is_txtlink a:hover{
	text-decoration: none;
}

.l_main .is_txtlink a::before{
	left: 3px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.l_main .md_footer p a:hover{
	opacity: 0.5;
}

.l_main .md_eventnaiyo .md_accordion{
	margin: 40px auto;
	max-width; 84%;
}

.l_main .md_eventnaiyo .md_toggle{
	display: none;
}

.l_main .md_eventnaiyo .md_accordionnaiy{
	position: relative;
	margin-bottom: 1em;
}

.l_main .md_eventnaiyo .md_title,
.l_main .md_eventnaiyo .md_content{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	/*transition: all 0.3s;*/
}

.l_main .md_eventnaiyo .md_title{
	border: solid 1px #000;
	padding: 0.5em 1em;
	display: block;
	color: #fff;
	font-size: 112%;
	font-weight: bold;
	background: #37b9ff;
}

.l_main .md_eventnaiyo .md_title:hover{
	cursor: pointer;
	opacity: 0.5;
}

.l_main .md_eventnaiyo .md_title::after,
.l_main .md_eventnaiyo .md_title::before{
	content: "";
	position: absolute;
	right: 1.3em;
	top: 1.4em;
	width: 2px;
	height: 0.75em;
	background-color: #000;
	transition: all 0.3s;
}

.l_main .md_eventnaiyo .md_title::after{
	transform: rotate(90deg);
}

.l_main .md_eventnaiyo .md_content{
	max-height: 0;
	overflow: hidden;
}

.l_main .md_eventnaiyo .md_toggle:checked + .md_title{
	border-bottom: none;
}

.l_main .md_eventnaiyo .md_toggle:checked + .md_title + .md_content{
	max-height: 6000px;
	/*transition: all 1.5s;*/
	border: solid 1px #000;
	background: rgba(255, 255, 255, 0.5);
	padding: 0em 1em 2em 1em;
}

.l_main .md_eventnaiyo .md_toggle:checked + .md_title::before{
	transform: rotate(90deg) !important;
}

.l_main .md_eventnaiyo p.is_btnrally{
	width: 75%;
	margin: 40px auto 0 auto;
}

.l_main .md_eventnaiyo p.is_btnrally a:hover{
	opacity: 0.5;
}

.l_main .md_eventnaiyo p.is_start{
	text-align: center;
	padding-top: 20px;
}

.l_main .md_eventnaiyo .md_accordion2{
	margin: 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.l_main .md_eventnaiyo .md_accordion2 .md_title{
	color: #000;
	font-size: 100%;
	border: none;
    border-radius: 40px;
	background: #fff44e;
	margin: 40px 0 20px 0;
	padding: 1em 3em 1em 1.5em;
	display: block;
}

.l_main .md_eventnaiyo .md_accordion2 .md_title::after,
.l_main .md_eventnaiyo .md_accordion2 .md_title::before{
	right: 1.5em;
}

.l_main .md_eventnaiyo .md_accordion2 .md_toggle:checked + .md_title + .md_content{
	border: #fff 1px solid;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.2);
	padding-top: 2em;
}

.l_main .md_eventnaiyo .md_accordion2 .is_tcource{
	color: #fff44e;
	font-size: 150%;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	border-radius: 60px;
	background: #e793a7;
	width: 80%;
	margin: 0 auto 10px auto;
	padding: 10px;
}

.l_main .md_eventnaiyo .md_accordion2 p.is_kikanday{
	text-align: center;
	margin-bottom: 10px;
}

.l_main .md_eventnaiyo .md_accordion2 .is_titrally{
	color: #e793a7;
	font-size: 175%;
	font-weight 800;
	background: 
	linear-gradient(
	-45deg,
	transparent 25%,#fff44e 25%,
	#fff44e 50%,transparent 50%,
	transparent 75%, #fff44e 75%
	)
	left bottom/7px 7px repeat-y;
	margin-bottom: 10px;
	padding: 0 20px;
}

.l_main .md_eventnaiyo .md_accordion2 .is_titrally span{
	font-size: 62%;
	margin-top: 5px;
}

.l_main .md_eventnaiyo .md_accordion2 ul.is_event3 li{
	border-radius: 0 10px 0 10px;
	margin-bottom: 20px;
	padding-bottom: 5px;
}

.l_main .md_eventnaiyo .md_accordion2 ul.is_event3 li img{
	border-radius: 0 10px 0 0;
	padding-bottom: 0;
}

.l_main .md_eventnaiyo .md_accordion2 ul.is_event3 li .is_photo{
	color: #000;
	font-size: 86%;
	padding: 5px 0;
	border-radius: 0 0 0 10px;
	background: rgb(237,214,224);
	background: linear-gradient(90deg, rgba(237,214,224,1) 29%, rgba(255,245,75,1) 100%);
	display: flex;
	justify-content: center;
	align-items: center;
}

.l_main .md_eventnaiyo .md_accordion2 ul.is_event3 li .is_photo img{
	border-radius: 0 10px 0 0;
}

.l_main .md_eventnaiyo .is_titpresent{
	width: 92%;
	margin: 40px auto 0 auto;
}

.l_main .md_eventnaiyo .md_present{
	display: flex;
	justify-content: space-between;
}

.l_main .md_eventnaiyo .md_present dt{
	width: 16%;
	margin-top: 40px;
}

.l_main .md_eventnaiyo .md_present dd{
	width: 82%;
	margin-top: 30px;
}

.l_main .md_eventnaiyo .md_present p.is_presentname{
	font-size: 159%;
	font-weight: 800;
	margin-bottom: 10px;
}

.l_main .md_eventnaiyo .md_present p.is_presentname span{
	font-size: 72%;
	font-weight: 800;
	display: block;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(1) p{
	color: #fff;
	font-size: 86%;
	text-align: center;
	border-radius: 5px;
	background: #9fa0a0;
	padding: 3px 10px;
	display: inline-block;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(1) p span{
	font-size: 150%;
	font-weight: 800;
	line-height: 1;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p{
	font-size: 112%;
	font-weight: 800;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p.is_kome{
	font-size: 72%;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a{
	color: #fff;
	font-size: 72%;
	text-align: center;
	border-radius: 50px;
	background: #f198ad;
	padding: 5px 30px 5px 20px;
	position: relative;
	display: inline-block;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a:hover{
	opacity: 0.5;
	text-decoration: none;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a::before,
.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	vertical-align: middle;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a:hover{
	text-decoration: none;
}

.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2) p a::before{
	right: 20px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.l_main .md_event .is_red{
	color: #fd0101;
	font-weight: 900;
}



@media screen and (max-width: 2600px) {
	.l_main .md_message,
	.l_main .md_event1,
	.l_main .md_event2,
	.l_main .md_event3,
	.l_main .md_footer{
		background-size: 100% auto;
	}
}

@media screen and (max-width: 1620px) {
	.l_main .md_message,
	.l_main .md_event1,
	.l_main .md_event2,
	.l_main .md_event3,
	.l_main .md_footer{
		background-size: auto;
	}
}

@media screen and (max-width: 1024px) {
	.l_main .l_mv,
	.l_main .l_news,
	.l_main .l_message,
	.l_main .md_message,
	.l_main .md_event1,
	.l_main .md_event2,
	.l_main .md_event3,
	.l_main .l_event1,
	.l_main .l_event2,
	.l_main .l_event3,
	.l_main .l_footer{
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
	}
	
	.l_main .l_day,
	.l_main .l_news ul,
	.l_main .md_footer{
		margin-left: 0;
		margin-right: 0;
		padding-left: 6%;
		padding-right: 6%;
	}

}

@media screen and (max-width: 840px) {
	.l_main .is_charamessage{
		height: 350px;
	}

}

@media screen and (max-width: 767px) {
	.l_main .md_message,
	.l_main .md_event1,
	.l_main .md_event2,
	.l_main .md_event3,
	.l_main .md_footer{
		padding-top: 40px;
		padding-bottom: 40px;
		background-size: 200% auto;
	}
	
	
	/*---------------------
	ページトップへ
	---------------------*/
	.l_main #totop a{
		width: 80px;
		height: 80px;
	}
	
	/*---------------------
	開催日
	---------------------*/
	.l_main .l_day{
		padding-bottom: 20px;
	}
	
	.l_main .l_day p.is_day{
		width: 100%;
	}
	
	.l_main .l_day p.is_catch{
		font-size: 100%;
		font-weight: 700;
		width: 100%;
		padding-top: 20px;
	}
	
	/*---------------------
	お知らせ
	---------------------*/
	.l_main .l_news ul li a{
		width: 100%;
		padding: 0 10% 0 0;
	}
	
	.l_main .l_news ul{
		height: 140px;
	}
	
	
	/*---------------------
	メッセージ・アンカーリンク
	---------------------*/
	.l_main .md_messagenaiyo{
		width: 88%;
		padding: 4% 4% 0 4%;
	}
	
	.l_main .md_messagenaiyo p{
		font-size: 100%;
	}
	
	.l_main .is_charamessage{
		margin: -10% -8% 0 0;
		position: static;
		float: right;
	}
	
	.l_main .is_charamessage img{
		width: 200px;
		height: auto;
	}
	
	.l_main .md_messagenaiyo::after{
		content: "";
		clear: both;
		display: block;
	}
	
	.l_main .md_messagenaiyo .is_name{
		font-size: 125%;
		text-align: left;
		padding-left: 10%;
	}
	
	.l_main .is_charamessagesp{
		width: 40%;
		height: auto;
		margin: -12% 0 0 56%;
		position: relative;
		z-index: 9999;
	}
	
	.l_main .md_messagenaiyosp2{
		display: block;
	}
	
	.l_main .md_messagenaiyosp2 .is_space{
		float: left;
		height: 20em;
	}
	
	.l_main .md_messagenaiyosp2 .is_img{
		float: right;
		clear: both;
		width: 50%;
		position: relative;
		right: -5%;
	}
	
	.l_main .md_message ul.is_btnsp{
        margin: 0 4%;
		padding-top: 40px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	
	.l_main .md_message ul.is_btnsp li{
		width: 25%;
		padding: 0 1%;
	}
	
	/*---------------------
	イベント内容
	---------------------*/
	.l_main .md_event{
		border-radius: 10px;
		width: 94%;
		margin: 0 auto 8% auto;
		background: #fff;
		padding: 20px 4%;
		position: relative;
	}
	
	.l_main .md_event .is_kikan li{
		display: block;
		margin-top: 14px;
	}
	
	.l_main .md_event .is_kikan li p:nth-child(1){
		font-size: 100%;
		margin-right: 0px;
	}
	
	.l_main .md_event .is_kikan li p:nth-child(2){
		font-size: 100%;
		width: 100%;
		margin-top: 5px;
	}
	
	.l_main .md_event .is_option{
		/*font-size: 100%;*/
	}
	
	.l_main .md_event .md_option{
		background: rgba(139, 219, 244, 0.2);
	}
	
	.l_main .md_event .md_option .img_w75{
		width: 50%;
	}
	
	.l_main .md_event p.is_rosen{
		font-size: 125%;
		text-indent: -1.2em;
		padding-left: 1.2em;
	}
	
	.l_main .md_event p.is_rosen2{
		border-top: #37b9ff 6px dotted;
		margin-top: 40px;
		padding-top: 40px;
	}
	
	.l_main .mb80{
		margin-bottom: 80px;
	}
	
	.l_main .is_h1{
		width: 100%;
		margin: 0 auto 6% auto;
	}
	
	.l_main .is_h1 h1 img{
		width: 96%;
	}
	
	.l_main .md_event .is_btn a{
		width: 100%;
	}
	
	.l_main .md_eventnaiyo{
		padding-top: 40px;
	}
	
	.l_main .md_eventnaiyo2{
		padding-top: 0;
	}
	
	.l_main p.is_btnorange{
		margin-right: 0;
	}
	
	.l_main #link_event9 p.is_btnorange{
		margin-top: 20px;
	}
	
	.l_main .l_event2 .md_event p.is_rosen2{
		border-top: #f29344 6px dotted;
	}
	
	.l_main .md_stamprallymap div:nth-child(1){
		width: 100%;
		margin-bottom: 20px;
	}
	
	.l_main .md_stamprallymap div:nth-child(2){
		width: 75%;
		margin: 40px auto 0 auto;
	}
	
	.l_main .md_event .md_accordion .is_event3 li{
		width: 100%;
	}
	
	.l_main .md_eventnaiyo p.is_btnrally{
		width: 100%;
	}
	
	.l_main .md_eventnaiyo .md_present dd > div div:nth-child(1){
		width: 100%;
	}
	
	.l_main .md_eventnaiyo .md_present dd > div div:nth-child(2){
		width: 100%;
		margin-top: 10px;
	}
	
	.l_main .md_eventnaiyo .md_present dt{
		width: 24%;
		margin-top: 20px;
	}
	
	.l_main .md_eventnaiyo .md_present dd{
		width: 70%;
		margin-top: 20px;
	}
	
	.l_main .md_eventnaiyo .md_present p.is_presentname{
		font-size: 132%;
	}
	
	.l_main .md_eventnaiyo .md_present dd > div div:nth-child(1) p{
		font-size: 100%;
	}
	
	.l_main .md_eventnaiyo .md_accordion2 .is_tcource{
		width: 100%;
	}
	
	.l_main .md_eventnaiyo .md_accordion2 ul.is_event3 li .is_photo{
		font-size: 100%;
	}
	
	.l_main .md_eventnaiyo .md_accordion2 .md_title{
		font-size: 86%;
	}
    
	/*---------------------
	キャラクター
	---------------------*/
	.l_main .is_character1{
		position: absolute;
		top: -30px;
		left: 0;
		height: 200px;
	}
	
	.l_main .is_character2{
		position: absolute;
		top: -30px;
		left: 0;
		right: 0;
		height: 200px;
	}
	
	.l_main .is_character3{
		position: absolute;
		top: -30px;
		left: -15px;
		height: 200px;
	}
	
	.l_main .is_character4{
		position: absolute;
		top: -30px;
		left: 0;
		right: 0;
		height: 200px;
	}
	
	.l_main .is_character5{
		position: absolute;
		top: -30px;
		left: 0;
		right: 0;
		height: 200px;
	}
	
	.l_main .is_character6{
		position: absolute;
		top: -30px;
		left: 0;
		height: 200px;
	}
	
	.l_main .is_character7{
		position: absolute;
		top: -30px;
		left: 0;
		right: 0;
		height: 200px;
	}
	
	.l_main .is_character8{
		position: absolute;
		top: -30px;
		left: 0;
		height: 200px;
	}
	
}

@media screen and (max-width: 680px){
	.l_main .is_charamessagesp{
		margin-top: -16%;
	}
}

@media screen and (max-width: 520px){
	.l_main .is_charamessagesp{
		margin-top: -20%;
	}
}
