@charset "utf-8";

/*------------------------------------------------
  base
-------------------------------------------------*/

	body:before{
		content:" ";
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:949px;
		background:url(../../image/top/line_01.png) no-repeat center 0;
		z-index:-1;
		animation:line_01 5s ease 0s forwards infinite;
	}
	@keyframes line_01{
		0%   {opacity:0.2;}
		50%  {opacity:1;}
		100% {opacity:0.2;}
	}

/*-- header --*/

header{
	position:absolute;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	header{
		display:none;
	}
	header h1{
		display:none;
	}
}
/* -----------------------------------------------------------------
   main_action
----------------------------------------------------------------- */

#main_action{
	position:relative;
	min-height:702px;
	background:url(../../image/top/seat.png) no-repeat center 82px;
}
#emergency{
	position:absolute;
	top:182px;
	left:50%;
	width:324px;
	height:74px;
	margin:0 0 0 -162px;
	opacity:1;
	animation:emergency 4s ease 0s forwards infinite;
}
@keyframes emergency{
	0%   {opacity:0.3;}
	50%  {opacity:1;}
	100% {opacity:0.3;}
}

#main_action h1{
	position:absolute;
	top:240px;
	left:50%;
	width:720px;
	height:180px;
	margin:0 0 0 -360px;
	opacity:1;
}

#main_action #event_mission{
	position:absolute;
	top:434px;
	left:50%;
	width:482px;
	height:100px;
	margin:0 0 0 -241px;
	opacity:1;
}

#main_action #event_txt{
	position:absolute;
	top:600px;
	left:50%;
	width:550px;
	height:82px;
	margin:0 0 0 -275px;
	opacity:1;
}

#main_action #sline{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:949px;
	background:url(../../image/top/line_02.png) no-repeat center 0;
	z-index:10;
	animation:sline 5s ease 0s forwards infinite;
}
@keyframes sline{
	0%   {opacity:1;}
	50%  {opacity:0.2;}
	100% {opacity:1;}
}

#main_action #ant{
	position:absolute;
	top:0px;
	left:50%;
}
#main_action #ant span{
	display:block;
	position:absolute;
}
#main_action #ant span:nth-child(1){
	top:138px;
	left:-476px;
	width:150px;
	height:166px;
	background:url(../../image/top/ant_01.png) no-repeat 0 0;
	z-index:9;
	animation:ant 4s ease 0s forwards infinite;
}
#main_action #ant span:nth-child(2){
	top:94px;
	left:242px;
	width:296px;
	height:221px;
	background:url(../../image/top/ant_02.png) no-repeat 0 0;
	z-index:9;
	animation:ant 5s ease 3.0s forwards infinite;
}
#main_action #ant span:nth-child(3){
	top:402px;
	left:-435px;
	width:157px;
	height:131px;
	background:url(../../image/top/ant_03.png) no-repeat 0 0;
	z-index:9;
	animation:ant 3s ease 1.0s forwards infinite;
}
#main_action #ant span:nth-child(4){
	top:390px;
	left:282px;
	width:166px;
	height:154px;
	background:url(../../image/top/ant_04.png) no-repeat 0 0;
	z-index:9;
	animation:ant 4s ease 0.5s forwards infinite;
}
#main_action #ant span:nth-child(5){
	top:579px;
	left:-502px;
	width:170px;
	height:129px;
	background:url(../../image/top/ant_05.png) no-repeat 0 0;
	z-index:20;
	animation:ant 6s ease 4s forwards infinite;
}
#main_action #ant span:nth-child(6){
	top:593px;
	left:350px;
	width:141px;
	height:143px;
	background:url(../../image/top/ant_06.png) no-repeat 0 0;
	z-index:20;
	animation:ant 4s ease 1.5s forwards infinite;
}

@keyframes ant{
	0%   {transform:rotate(0deg);}
	5%   {transform:rotate(-10deg);}
	10%  {transform:rotate(5deg);}
	15%  {transform:rotate(-5deg);}
	20%  {transform:rotate(2deg);}
	25%  {transform:rotate(0deg);}
	100% {transform:rotate(0deg);}
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_action{
		width:360px;
		min-height:310px;
		margin:60px auto 0;
		background:url(../../image/top/seat.png) no-repeat center 41px;
		background-size:contain;
	}
	#emergency{
		position:absolute;
		top:10px;
		width:162px;
		height:37px;
		margin:0 0 0 -81px;
	}
	#main_action h1{
		top:70px;
		width:360px;
		height:90px;
		margin:0 0 0 -180px;
	}
	#main_action #event_mission{
		top:168px;
		width:241px;
		height:50px;
		margin:0 0 0 -120px;
	}
	#main_action #event_txt{
		top:255px;
		left:50%;
		width:275px;
		height:41px;
		margin:0 0 0 -137px;
	}
	#main_action #sline,
	#main_action #ant{
		display:none;
	}
}



/* ------------------------------------------------
   event_date
-------------------------------------------------*/

#event_date{
	max-width:100%;
	margin:0 auto 30px;
}
#event_date p{
	font-weight:bold;
	font-size:1.3rem;
	line-height:1.75;
}
#event_date #max_seat{
	position:relative;
	margin-top:7px;
	font-weight:bold;
	font-size:0.84rem;
	line-height:1.35;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#event_date{
		max-width:100%;
		margin:0 auto 20px;
		padding:0 20px;
	}
}

/* ------------------------------------------------
   mission
-------------------------------------------------*/

#mission{
	position:relative;
	margin:0 auto 40px;
}
.mission_box{
	display:-webkit-flex;
	display:flex;
	justify-content: space-between;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	flex-wrap:wrap;
	width:48%;
	height: 300px;
	margin:0 0 25px;
	padding:15px 30px 10px 30px;
	background:url(../../image/base/mission_box.png) repeat 0 0;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
	border-radius:15px;
	text-align: center;
	float: left;
	}
	.mission_box h2,
	.mission_box div{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		z-index:100;
	}
	.mission_box div{
		padding-top:5px;
	}
	.mission_box div a{
	}
	.mission_box div a:hover{
		opacity:0.9;
}


.mission_box2{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content: space-between;
	flex-wrap:wrap;
	width:48%;
	height: 300px;
	margin:0 0 25px 33px;
	padding:15px 30px 10px 30px;
	background:url(../../image/base/catching-map.png) repeat 0 0;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
	border-radius:15px;
	text-align: center;
	float: left;
	}
	.mission_box2 h2,
	.mission_box2 div{
		display: flex;
		display:-webkit-flex;
		justify-content: center;
		align-items: center;
		margin: 0 auto;
		text-align: center;
		position:relative;
		z-index:100;
}




#mission_pc{
		display:block;
	}
	#mission_sp{
		display:none;
		position:relative;
		left:-20px;
		width:calc(100% + 40px);
	}

/* --- responsive --- */
@media only screen and (max-width:1000px){
	.mission_box,
	.mission_box2,
	.mission_box h2,
	.mission_box div{
		width:100%;
		margin-left: 0;
	}
}
@media only screen and (max-width:767px){
	#mission_pc{
		display:none;
	}
	#mission_sp{
		display:block;
	}
	#mission #sticker{
		position:absolute;
		top:-40px;
		right:10px;
		transform:rotate(0deg);
		animation:sticker 3s ease 0s forwards infinite;
	}
}

/* ------------------------------------------------
   supporters
-------------------------------------------------*/

#supporters{
	position:relative;
	width:1000px;
	height: auto;
	margin:30px auto 40px;
	}
#supporters h2{
	text-align: center;
	margin: 0 auto;
	}

#supporters p{
	text-align: center;
	margin: 5px 0;
	}

@media only screen and (max-width:767px){
	#supporters p{
		font-size: 0.8rem;
		text-align: center;
	}
	}

#supporters .supporters_title{
	border-top:2px solid #ec758a;
	border-bottom:2px solid #ec758a;
	padding: 10px;
	}

#supporters ul.supporters_list{
	width: 100%;
	height: auto;
	list-style: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
	}
#supporters .supporters_list li{
	display: flex;
	justify-content: center;
	width: 490px;
	height: auto;
	margin: 20px auto 10px;
	padding: 0;
	float: left;
	text-align: center;
	align-items: center;
	}
#supporters .supporters_list img{
	max-width: 233px;
	height: auto;
	text-align: center;
	margin: 20px auto;
	}
#supporters .bnr_solid{
	display: block;
	border-bottom:2px solid #ec758a;
	padding: 10px;
	}
#supporters .bnr_dot{
	display: block;
	border-bottom:2px dotted #ec758a;
	padding: 10px;
	}

@media only screen and (max-width:767px){
#supporters ul.supporters_list{
	width: 100%;
	}
#supporters .supporters_list li{
	display: block;
	width: 90%;
	margin: 10px auto 10px;
	float:none;
	text-align: center;
	border-bottom:2px dotted #ec758a;
	line-height: 2rem;
	}
#supporters .supporters_list li.sp_nobnr{
	border-bottom:none;
	}
#supporters .bnr_dot{
	display: none;
	}
}


/* ------------------------------------------------
   message
-------------------------------------------------*/

#message{
	position:relative;
	height:473px;
	margin:0 auto 40px;
	padding:48px 20px 0 80px;
	background:url(../../image/top/message_bg.png) no-repeat 0 0;
	}
	#message h2{
		position:relative;
		margin:0 0 30px;
		padding-right:100px;
		font-weight:bold;
		font-size:1.8rem;
		text-align:center;
		color:#181777;
	}
	#message h2 span{
		font-weight:bold;
		font-size:1.2rem;
		color:#181777;
		letter-spacing:-1px;
	}
	#message h2:before{
		content:" ";
		display:inline-block;
		position:relative;
		width:48px;
		height:34px;
		margin:0 7px 0 0;
		background:url(../../image/top/message_h2.png) no-repeat 0 0;
	}
	#message p{
		margin:0 0 20px;
		font-weight:bold;
		/*font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";*/
		font-family: 'M PLUS Rounded 1c', sans-serif;
		font-size:0.94rem;
}

/* --- responsive --- */
@media only screen and (max-width:1000px){
	#message{
		position:relative;
		height:auto;
		margin:0 auto 40px;
		padding:30px 40px 30px 40px;
		background:none;
		border-top:3px dotted #2093D3;
		border-bottom:3px dotted #2093D3;
		}
		#message h2{
			padding-right:0px;
		}
		#message p{
			margin:0 0 15px;
			font-weight:bold;
			font-family:'M PLUS Rounded 1c', sans-serif;
			font-size:0.94rem;
		}
		#message p br.pc{
			display:none !important;
		}
}
@media only screen and (max-width:767px){
	#message{
		padding:20px 20px;
	}
	#message h2{
		font-size:1.2rem;
	}
	#message h2 span{
		font-size:0.87rem;
	}
	#message p{
		font-size:0.77rem;
		line-height:1.5;
	}
}


/* ------------------------------------------------
   sns_area　SNS投稿表示エリア
-------------------------------------------------*/
#sns_area{
	display: flex;
	justify-content: space-between;
	width: 1040px;
	height:auto;
	margin:0 auto;
	padding:10px 0;
	overflow: hidden;
}

#sns_area div{
	width: 300px;
	margin:0 auto;
	text-align: center;
}

.sns_area{
	width: 333px;
	height:auto;
	margin:0 auto;
	padding:0;
}
.iframe-wrap {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 300px;
	padding-top: 56.25%;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	border:2px solid #ccc; 
}
.iframe-wrap iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
}

.sns_icon{
	display: inline-block;
	width: auto;
	height: 45px;
	float: left;
}

.sns_icon div{
	width: auto;
	margin:0 auto;
	text-align: center;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
#sns_area{
	display: block;
	padding:10px 20px 20px;
	text-align: center;
	width: 100%;
	height:auto;
	}
#sns_area div{
	width: 100%;
	padding:0;
}
#sns_area .iframe-wrap{
	display: block;
	margin: 10px 0 30px;
	padding:20px;
	}
.sns_icon{
	display: block;
	}
}

/* ------------------------------------------------
   bnr_area　wrサポーターズ
-------------------------------------------------*/
#bnr_area{
	display: flex;
	justify-content: space-between;
	width: 1000px;
	height:auto;
	margin:0 auto;
	padding:30px 0;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	#bnr_area{
		display: block;
		padding:20px 20px;
	}
	#bnr_area img{
		margin:5px 0;
	}
}

/*------------------------------------------------
  タイトルロゴ
-------------------------------------------------*/

#title_logo{
	position:relative;
	top:150px;
	min-height:150px;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
#title_logo{
	position:relative;
	top:0;
}
}
/* --- responsive --- */
@media only screen and (max-width:767px){
#title_logo{
		display: none;
}

