/* CSS Document */
#main{
	width:1200px;
	margin:15px auto 0;
	position:relative;
	min-height:490px;
}

#main .main_inner{
	position:absolute;
	left:0;
	top:50%;
	margin-top:-308px;	
}

#main .scroll{
	font-size:12px;
	color:#ffffff;
	text-align:center;
	width:40px;
	position:absolute;
	left:50%;
	margin-left:-20px;
	top:410px;
	padding-top:45px;	
	text-decoration:none;
}

#main .scroll:before{
	content:"";
	display:block;
	background:url(../images/top/icon_sc.png) no-repeat	left top;
	background-size:40px 28px;
	width:40px;
	height:28px;
	position:absolute;
	left:0;
	top:0;
	animation: scroll 2s ease-in-out infinite;
}

body #bg_top{
	width:100%;
	height:100%;
	background:url(../images/top/bg_top2.png) no-repeat center bottom;
	background-size:cover;
	position:fixed;
	z-index:-10;	
	background-position : right 5px bottom 0px;
}

@keyframes scroll {
  0% {
    top:0;
  }
  
  50% {
    top:10px;
  }

  100% {
    top:0px;
  }
}

#main .main_l{
	width:750px;
	float:left;
	padding-top:15px;
}

#main .main_r{
	width:370px;
	float:right;
}

#main .main_r .box01,
#main .main_r .box02{
	border-radius: 6px;
	background-color: rgba(255, 255, 255,0.9);
	padding:12px 0 12px;
}

#main .main_r .box02{
	margin-top:20px;	
}

#main .main_r .box01 h3{
	text-align:center;
	font-size:12px;
	color:#00003a;
	line-height: 1.3;
	font-weight:normal;
}

#main .main_r .box01 h3 > span{
	font-size:24px;	
	display:block;
}

#main .main_r .box01 h3 > span > span{
	color:#3b60bd;
}

#main .main_r .box01 .btn01,
#main .main_r .box02 .btn01{
	text-align:center;
	width:320px;
	margin:5px auto 0;
}

#main .main_r .box02 .btn01{
	margin-top:10px;	
}

#main .main_r .box01 ul,
#main .main_r .box02 ul{
	width:320px;
	margin:0 auto;
}

#main .main_r .box01 ul li,
#main .main_r .box02 ul li{
	margin-top:6px;	
}

#main .main_r .box01 ul li a,
#main .main_r .box02 ul li a{
	display:block;
	border-style: solid;
	border-width: 3px;
	border-color: rgb(227, 227, 227);
	border-radius: 5px;
	background-color: rgb(255, 255, 255);
	font-size:17px;
	color:#000000;
	text-align:center;
	text-decoration:none;
	line-height:1.2;
	padding:9px 0 8px;
	position:relative;
}

#main .main_r .box01 ul li a:hover{
	color:#4569c4;
}

#main .main_r .box02 ul li a:hover{
	color:#c20344;
}

#main .main_r .box01 ul li a:after,
#main .main_r .box02 ul li a:after{
	content:"";
	display:block;
	background:url(../images/top/main_icon01.png) no-repeat left top;
	background-size:20px 20px;
	width:20px;
	height:20px;
	position:absolute;
	top:50%;
	margin-top:-10px;
	left:282px;
	transition: all 0.3s;
}

#main .main_r .box02 ul li a:after{
	background:url(../images/top/main_icon02.png) no-repeat left top;
	background-size:20px 20px;	
}

#main .main_r .box01 ul li a:hover:after,
#main .main_r .box02 ul li a:hover:after{
	left:287px;
}	

#main .main_r .box02 h3{
	text-align:center;
	font-size:12px;
	color:#000000;
	line-height: 1.3;
	font-weight:normal;
}

#main .main_r .box02 h3 > span{
	font-size:20px;	
	display:block;
	color:#c20344;
}

.block01{
	background-color: rgba(255, 255, 255,0.94);
	box-shadow: 0px 0px 20px 0px rgba(6, 0, 0, 0.4);
	width: 1200px;
	margin:30px auto 0;
	height: 135px;
}

.block01 ul{
	text-align:center;	
	padding-top:30px;
}

.block01 ul li{
	display:inline-block;
	margin-right:29px;
}

.block01 ul li:last-child{
	margin-right:0;	
}

.block02{
	width:1200px;
	margin:80px auto 0;	
}

.block02 h4{
	padding:20px 0 0 60px;
	position:relative;
	font-size:20px;
	color:#ffffff;
	font-weight:normal;
}

.block02 h4:before{
	content:"";
	display:block;
	background:url(../images/top/icon_block02.png) no-repeat left top;
	background-size:23px 23px;
	width:23px;
	height:23px;
	position:absolute;
	top:22px;
	left:30px;
}

.block02 h3,
.block03 h3{
	text-align:center;	
}

.block02 h3 span,
.block03 h3 span{
	font-size:17px;
	color:#ffffff;
	font-weight:normal;
	display:block;
	margin-top:10px;
}	

.block02 .block02_inner1{
	width:1200px;
	height:auto;
	padding-bottom:10px;
	background:rgba(0, 40, 94, 0.8);
	
	background-size:cover;
	margin-top:30px;
}

.block02 .block02_inner1 .btn_area{
	text-align:center;
	margin-top:10px;	
}

.block02 .block02_inner2{
	width:1200px;
	height:395px;
	background:rgba(0, 40, 94, 0.8);
	background-size:cover;
	margin-top:20px;
}

.block02 .block02_inner2 ul{
	margin:10px auto 0;
	width:1080px;	
}

.block02 .block02_inner2 ul li{
	width:340px;
	float:left;
	margin-right:30px;	
}

.block02 .block02_inner2 ul li:last-child{
	margin-right:0;	
}

.block03{
	width:1200px;
	margin:90px auto 0;	
	
}

.block03 .inner{
	border-radius: 10px;
	background-color: rgba(255, 255, 255,0.9);
	margin-top:30px;
	width: 1200px;
	padding:50px 0 60px;
	
	position:relative;
}

.block03 .inner:after{
	content:"";
	display:block;
	background:url(../images/top/bg_topics.png) no-repeat left top ;
	background-size:123px 59px;
	width:123px;
	height:59px;
	position:absolute;
	left:1033px;
	bottom:0;
		
}

.block03 .inner ul{
	width:1080px;
	margin:0 auto;	
}

.block03 .inner ul li a{
	 display:block;
	 padding:10px 0;
	 border-bottom:solid 1px #eeeeee;	
	 text-decoration:none;
}



.block03 .inner ul li a span{
	display:block;
	float:left;	
}

.block03 .inner ul li a span.date{
	width:100px;
	font-size:15px;
	color:#666666;
}

.block03 .inner ul li a span.category{
	width:110px;
	font-size:12px;
	color:#ffffff;
	text-align:center;
	background:#e30143;
	padding:4px 0 3px;
}

.block03 .inner ul li a span.category.category2{
	background:#1a55bf;	
}

.block03 .inner ul li a span.ttl{
	width:850px;
	margin-left:20px;
	font-size:17px;
	color:#032b4f;
	text-decoration:underline;
}

.block03 .inner ul li a.deco_none span.ttl{
	text-decoration:none;	
}

.block03 .inner ul li:hover a span.ttl{
	text-decoration:none;	
}

.block03 .inner ul li:last-child a{
	border-bottom:none;	
}

.news_more{
	margin-top:10px;	
}

.news_more a{
	display:block;
	float:right;
	border-style: solid;
	border-width: 3px;
	border-color: rgb(227, 227, 227);
	border-radius: 5px;
	background-color: rgb(255, 255, 255);
	text-align:left;
	font-size:17px;
	color:#000000;
	width: 164px;
	height: 34px;
	position:relative;
	padding-top:12px;
	text-decoration:none;
	padding-left:32px;
}

.news_more a:after{
	content:"";
	display:block;
	background:url(../images/top/main_icon02.png) no-repeat left top;
	background-size:20px 20px;
	width:20px;
	height:20px;
	position:absolute;
	top:50%;
	margin-top:-10px;
	left:160px;
	transition: all 0.3s;	
}
.news_more a:hover:after{
	left:165px;	
}

.news_more a:hover{
	color:#c20344;
}


.block04{
	width:1200px;
	margin:80px auto 0;
	background-color: rgba(0, 40, 94, 0.8);
	padding:25px 0 45px;
}

.block04 h4{
	font-size:20px;
	color:#ffffff;
	padding-left:30px;
	font-weight:normal;
}

.block04 ul{
	width:960px;
	margin:10px auto 0;	
}

.block04 ul li{
	width:320px;
	float:left;
	margin-top:22px;
}

.block04 ul li > ul{
	width:100%;
	margin-top:0;
}

.block04 ul li > ul > li{
	width:100%;
	padding-left:34px;
	margin-top:10px;
	position:relative;
}

.block04 ul li > ul > li:before{
	content:"|";
	display:block;
	font-size:10px;
	color:#FFF;
	position:absolute;
	left:10px;
	top:0px;	
}

.block04 ul li > ul > li:after{
	content:"|";
	display:block;
	font-size:10px;
	color:#FFF;
	position:absolute;
	left:15px;
	top:5px;
	transform:rotate(90deg);
}

.block04 ul li a{
	font-size:17px;
	color:#ffffff;
	text-decoration:none;
	position:relative;
	display:inline-block;	
}

.block04 ul li a:after{
	content:"";
	display:block;
	width:0;
	height:1px;
	background:#FFF;
	position:absolute;
	left:35px;
	bottom:0;	
	transition: all 0.4s;
}

.block04 ul li a:hover:after{
	width:calc(100% - 35px);
}


.block04 ul li ul li a:after{
	left:0px;	
}

.block04 ul li ul li a:hover:after{
	width:100%;
}

.bnr_list{
	margin-top:30px;
	text-align:center;
}

.bnr_list li{
	display:inline-block;
}

.bnr_list li p{
	margin-top:10px;
	text-align:center;
	font-size:15px;
	color:#ffffff;	
}

.bnr_list li{
	margin-right:50px;
}

.bnr_list li:last-child{
	margin-right:0px;
}

@media screen and (max-width: 768px) {
	
	.bnr_list{
		margin-top:0;
		text-align:center;
	}
	
	.bnr_list li{
		display:block;
		width:50%;
		margin:6% auto 0 !important;
	}
	
	.bnr_list li img{
		width:100%;
		height:auto;	
	}
	
	.bnr_list li:nth-child(1){
		margin-right:0px;
	}
	
	body #bg_top{
		/*background:none*/
	}
	
	#main{
		width:100%;
		margin:0px auto 0;
		position:relative;
		height:auto!important;
        min-height: 90vw;
	}
	
	#main .main_inner{
		position:relative;
		left:0;
		top:0%;
		margin-top:-0;	
	}
	
	#main .scroll{
		font-size:8px;
		color:#ffffff;
		text-align:center;
		width:20px;
		position:absolute;
		left:50%;
		margin-left:-10px;
		top:20%;
		padding-top:25px;	
		text-decoration:none;
	}
	
	#main .scroll:before{
		content:"";
		display:block;
		background:url(../images/top/icon_sc.png) no-repeat	left top;
		background-size:20px 12px;
		width:20px;
		height:12px;
		position:absolute;
		left:0;
		top:0;
		animation: scroll 2s ease-in-out infinite;
	}
	
	@keyframes scroll {
	  0% {
		top:0;
	  }
	  
	  50% {
		top:10px;
	  }
	
	  100% {
		top:0px;
	  }
	}
	
	#main .main_l{
		width:100%;
		float:none;
		padding-top:0px;
		height:104vw !important;
	}
	
	#main .main_r{
		width:84%;
		float:none;
		margin:5% auto 0;
	}
	
	#main .main_r .box01,
	#main .main_r .box02{
		border-radius: 6px;
		background-color: rgba(255, 255, 255,0.9);
		padding:5% 0 8%;
	}
	
	#main .main_r .box02{
		margin-top:10%;	
	}
	
	#main .main_r .box01 h3{
		text-align:center;
		font-size:2.8vw;
		color:#00003a;
		line-height: 1.3;
		font-weight:normal;
	}
	
	#main .main_r .box01 h3 > span{
		font-size:4.6vw;	
		display:block;
	}
	
	#main .main_r .box01 h3 > span > span{
		color:#3b60bd;
	}
	
	#main .main_r .box01 .btn01,
	#main .main_r .box02 .btn01{
		text-align:center;
		margin-top:5px;
		width:86%;
		margin:2% auto 0;
	}
	
	#main .main_r .box01 .btn01 img,
	#main .main_r .box02 .btn01 img{
		width:100%;
		height:auto;
	}
	
	#main .main_r .box02 .btn01{
		margin:2% auto 0;
	}
	
	#main .main_r .box01 ul,
	#main .main_r .box02 ul{
		width:86%;
		margin:0 auto;
	}
	
	#main .main_r .box01 ul li,
	#main .main_r .box02 ul li{
		margin-top:5%;	
	}
	
	#main .main_r .box01 ul li a,
	#main .main_r .box02 ul li a{
		display:block;
		border-style: solid;
		border-width: 3px;
		border-color: rgb(227, 227, 227);
		border-radius: 5px;
		background-color: rgb(255, 255, 255);
		font-size:3vw;
		color:#000000;
		text-align:center;
		text-decoration:none;
		line-height:1.2;
		padding:5% 0 4.5%;
		position:relative;
	}
	
	#main .main_r .box01 ul li a:hover{
		color:#4569c4;
	}
	
	#main .main_r .box02 ul li a:hover{
		color:#c20344;
	}
	
	#main .main_r .box01 ul li a:after,
	#main .main_r .box02 ul li a:after{
		content:"";
		display:block;
		background:url(../images/top/main_icon01.png) no-repeat left top;
		background-size:100% auto;
		width:4vw;
		height:4vw;
		position:absolute;
		top:50%;
		margin-top:-2vw;
		left:auto;
		right:5%;
		transition: all 0.3s;
	}
	
	#main .main_r .box02 ul li a:after{
		background:url(../images/top/main_icon02.png) no-repeat left top;
		background-size:100% auto;
	}
	
	#main .main_r .box01 ul li a:hover:after,
	#main .main_r .box02 ul li a:hover:after{
		left:auto;
		right:5%;
	}	
	
	#main .main_r .box02 h3{
		text-align:center;
		font-size:2.8vw;
		color:#000000;
		line-height: 1.3;
		font-weight:normal;
	}
	
	#main .main_r .box02 h3 > span{
		font-size:4.6vw;
		display:block;
		color:#c20344;
	}
	
	.block01{
		background-color: rgba(255, 255, 255,0.94);
		box-shadow: 0px 0px 20px 0px rgba(6, 0, 0, 0.4);
		width:86%;
		margin:10% auto 0;
		height: auto;
	}
	
	.block01 ul{
		padding:5%;
		text-align:center;	
	}
	
	.block01 ul li{
		display:block;
		margin-right:0px;
		margin-bottom:3%;
	}
	
	.block01 ul li:last-child{
		margin-bottom:0;	
	}
	
	.block01 ul li img{
		width:100%;
		height:auto;
	}	
	
	.block01 ul li:last-child{
		margin-right:0;	
	}
	
	.block02{
		width:86%;
		margin:10% auto 0;	
	}
	
	.block02 img{
		width:100%;
		height:auto;	
	}
	
	.block02 h4{
		padding:0 0 0 9%;
		position:relative;
		font-size:4vw;
		color:#ffffff;
		font-weight:normal;
	}
	
	.block02 h4:before{
		content:"";
		display:block;
		background:url(../images/top/icon_block02.png) no-repeat left top;
		background-size:100% auto;
		width:4vw;
		height:4vw;
		position:absolute;
		top:10%;
		left:2%;
	}
	
	.block02 h3,
	.block03 h3{
		text-align:center;	
	}
	
	.block02 h3 img{
		width:45%;
		height:auto;
	}
	
	.block03 h3 img{
		width:40%;
		height:auto;
	}
	
	.block03 h3.reco img{
		width:60%;
		height:auto;
	}
	
	.block02 h3 span,
	.block03 h3 span{
		font-size:3.3vw;
		color:#ffffff;
		font-weight:normal;
		display:block;
		margin-top:3%;
	}	
	
	.block02 .block02_inner1{
		width:100%;
		height:auto;
		box-sizing:border-box;
		padding:4% 4%;
		background:rgba(0, 40, 94, 0.8);
		background-size:cover;
		margin-top:30px;
	}
	
	.block02 .block02_inner1 .btn_area{
		text-align:center;
		margin-top:10px;	
	}
	
	.block02 .block02_inner2{
		width:100%;
		height:auto;
		box-sizing:border-box;
		padding:4% 4%;
		background:rgba(0, 40, 94, 0.8);
		background-size:cover;
		margin-top:4%;
	}
	
	.block02 .block02_inner2 ul{
		margin:1% auto 0;
		width:86%;	
	}
	
	.block02 .block02_inner2 ul li{
		width:100%;
		float:none;
		margin-right:0px;	
		margin-bottom:3%;
	}
	
	.block02 .block02_inner2 ul li img{
		width:100%;
		height:auto;	
	}
	
	.block02 .block02_inner2 ul li:last-child{
		margin-right:0;	
	}
	
	.block03{
		width:100%;
		margin:10% auto 0;			
	}
	
	.block03 .inner{
		border-radius: 10px;
		background-color: rgba(255, 255, 255,0.9);
		margin-top:4%;
		width: 93%;
		padding:5%;
		box-sizing:border-box;
		background-size:25% auto;
		margin:4% auto 0;
		box-sizing:border-box;
		padding-bottom:15%;
	}
	
	.block03 .inner:after{
		content:"";
		display:block;
		background:url(../images/top/bg_topics.png) no-repeat left top ;
		background-size:100% auto;
		width:25%;
		height:10vw;
		position:absolute;
		left:70%;
		bottom:0;
			
	}
	
	.block03 .inner ul{
		width:100%;
		margin:0 auto;	
	}
	
	.block03 .inner ul li a{
		 display:block;
		 padding:2% 0;
		 border-bottom:solid 1px #eeeeee;	
		 text-decoration:none;
	}
	
	.block03 .inner ul li a span{
		display:block;
		float:left;	
	}
	
	.block03 .inner ul li a span.date{
		width:25%;
		font-size:3vw;
		color:#666666;
	}
	
	.block03 .inner ul li a span.category{
		width:35%;
		font-size:3vw;
		color:#ffffff;
		text-align:center;
		background:#e30143;
		padding:0.5% 0 ;
	}
	
	.block03 .inner ul li a span.category.category2{
		background:#1a55bf;	
	}
	
	.block03 .inner ul li a span.ttl{
		width:100%;
		margin-left:0px;
		font-size:3.3vw;
		color:#032b4f;
		margin-top:2%;
		display:block;
		text-decoration:underline;
	}
	
	.block03 .inner ul li:hover a span.ttl{
		text-decoration:none;	
	}
	
	.block03 .inner ul li:last-child a{
		 border-bottom:solid 1px #eeeeee;	
	}
	
	.news_more{
		margin-top:4%;	
	}
	
	.news_more a{
		display:block;
		float:right;
		border-style: solid;
		border-width: 3px;
		border-color: rgb(227, 227, 227);
		border-radius: 5px;
		background-color: rgb(255, 255, 255);
		text-align:left;
		font-size:3.3vw;
		color:#000000;
		width: 40%;
		height: auto;
		position:relative;
		padding:2% 0 2% 5%;
		box-sizing:border-box;
		text-decoration:none;
		margin-right:3.5%;
	}
	
	.news_more a:after{
		content:"";
		display:block;
		background:url(../images/top/main_icon02.png) no-repeat left top;
		background-size:100% auto;
		width:4vw;
		height:4vw;
		position:absolute;
		top:50%;
		margin-top:-2vw;
		left:auto;
		right:5%;
		transition: all 0.3s;	
	}
	.news_more a:hover:after{
		left:165px;	
	}
	
	.news_more a:hover{
		color:#c20344;
	}
	
	
	.block04{
		display:none;
		width:1200px;
		margin:40px auto 0;
		background-color: rgba(0, 40, 94, 0.8);
		padding:25px 0 45px;
	}
	
	.block04 h4{
		font-size:20px;
		color:#ffffff;
		padding-left:30px;
		font-weight:normal;
	}
	
	.block04 ul{
		width:960px;
		margin:10px auto 0;	
	}
	
	.block04 ul li{
		width:320px;
		float:left;
		margin-top:22px;
	}
	
	.block04 ul li a{
		font-size:17px;
		color:#ffffff;
		text-decoration:none;	
	}	
	
	.bnr_list li p{
		margin-top:3%;
		text-align:center;
		font-size:3.3vw;
		color:#ffffff;	
	}
	
}

@media screen and (max-width: 580px) {
	#main .scroll{
		top:75vw;
	}
	
	#main .main_l h2{
		padding-top:8vw;
	}	
}

@media screen and (max-width: 450px) {
	#main .scroll{
		top:93vw;
	}
	
	#main .main_l h2{
		padding-top:25vw;
	}	
}



.btn_area2{
	width:100%;
	margin:30px auto 0;	
	position:relative;
}


@media screen and (max-width: 768px) {
	.btn_area2{
	    margin: 1% auto 0;
	    width: 100%;
		position:relative;
	}
	
	.btn_area2 li{
		width:100%;
		float:none;	
	}
	
}

/************************* 2018/08/01 ********************************/
.info_area{
	width:660px;
	margin:30px auto 0;
	background:#FFF;
	border:solid 2px #e30143;
	padding:20px 30px;
	box-sizing:border-box;
}

.info_area p{
	font-size:18px;
	color:#1a55bf;
	font-weight:bold;
}

.info_area ul{
	margin-top:15px;	
}

.info_area ul li{
	font-size:14px;
	padding-left:1em;
	text-indent:-1em;	
}

.info_area ul li span{
	color:#e30143;	
}

@media screen and (max-width: 768px) {
	.info_area{
		width:90%;
		margin:5% auto 0;
		padding:3vw 5vw;
	}
	
	.info_area p{
		font-size:4.4vw;
	}
	
	.info_area ul{
		margin-top:3vw;	
	}
	
	.info_area ul li{
		font-size:3.2vw;
	}
}

/************************* 2018/08/01 ********************************/

/************************* 2018/08/06 ********************************/

.btn_area2 li{
	position:relative;	
}

.btn_area2 li .cover{
	width:100%;
	position:absolute;
	height:340px;
	background:rgba(0,0,0,0.5);
}

.btn_area2 li .cover p{
	text-align:center;
	font-size:24px;
	font-weight:bold;
	color:#FFF;
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:100%;
}

@media screen and (max-width: 768px) {
	.btn_area2 li .cover{
		height:55vw;
	}
	
	.btn_area2 li .cover p{
		text-align:center;
		font-size:3.7vw;
		font-weight:bold;
		color:#FFF;
		position:absolute;
		top:50%;
		transform:translateY(-50%);
		width:100%;
	}

}
/************************* /2018/08/01 ********************************/

/************************* /2018/10/11 ********************************/

.hanabi_area{
	width:1200px;
	margin:60px auto 0;
	background:#001c58;
	padding:40px 40px 70px;
	box-sizing:border-box;
}

.hanabi_area .hanabi_area_l{
	width:445px;
	float:left;	
}

.hanabi_area .hanabi_area_l .bx-wrapper{
	margin-bottom:0 !important;
}	

.hanabi_area .bx-wrapper .bx-pager, 
.bx-wrapper .bx-controls-auto{
	top:280px;
}

.hanabi_area .hanabi_area_r{
	width:530px;
	float:right;	
}

.hanabi_area .hanabi_area_r h4{
	font-size: 23px;
	color: rgb(248, 247, 247);
	line-height: 1.391;
	text-align: left;
}

.hanabi_area .hanabi_area_r p{
	margin-top:40px;	
	font-size: 16px;
	color: rgb(248, 247, 247);
	line-height: 2;
	text-align: left;
	position:relative;
}

.hanabi_area .hanabi_area_r p:before{
	content:"";
	display:block;
	background:url(../images/top/chara.png) no-repeat left top;
	background-size:100% auto;
	width:102px;
	height:121px;
	position:absolute;
	left:-120px;
	bottom:0;
}

.hanabi_area .hanabi_area_r p span{
	margin-bottom:15px;
	font-size:17px;
	font-weight:bold;
	display:block;
}


@media screen and (max-width: 768px) {
	.hanabi_area{
		width:93%;
		margin:5vw auto 0;
		background:#001c58;
		padding:5vw 5vw 25vw;
		box-sizing:border-box;
	}
	
	.hanabi_area .hanabi_area_l{
		width:100%;
		float:none;	
	}
	
	.hanabi_area .hanabi_area_l .bx-wrapper{
		margin-bottom:0 !important;
	}	
	
	.hanabi_area .bx-wrapper .bx-pager, 
	.bx-wrapper .bx-controls-auto{
		top:54vw;
	}
	
	.hanabi_area .hanabi_area_r{
		width:100%;
		float:none;
		margin-top:14vw;	
	}
	
	.hanabi_area .hanabi_area_r h4{
		font-size: 5vw;
	}
	
	.hanabi_area .hanabi_area_r p{
		margin-top:3vw;	
		font-size: 3.4vw;
	}
	
	.hanabi_area .hanabi_area_r p:before{
		content:"";
		display:block;
		background:url(../images/top/chara.png) no-repeat left top;
		background-size:100% auto;
		width:20vw;
		height:25vw;
		position:absolute;
		left:auto;
		right:0;
		bottom:-20vw;
	}
	
	.hanabi_area .hanabi_area_r p span{
		margin-bottom:3vw;
		font-size:3.7vw;
	}

}
/************************* /2018/10/11 ********************************/

/************************* /2019/10/04 ********************************/

#main .main_l h2{
	margin-top:0px;
}

.campaign_2019{
	padding:40px 0 30px;
	margin-bottom:30px;
	position:relative;
}

.campaign_2019:before{
	content:"";
	display:none !important;
	background:#FFF;
	width:1140px;
	height:1px;
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	bottom:0;
}

@media screen and (max-width: 768px) {
	.campaign_2019{
		padding:5vw 0 3vw;
		margin-bottom:3vw;
		position:relative;
	}
	
	.campaign_2019:before{
		content:"";
		display:block;
		background:#FFF;
		width:100%;
		height:1px;
		position:absolute;
		left:50%;
		transform:translateX(-50%);
		bottom:0;
	}	
}

#main .main_l .btn{
  display:block;
  width:640px;
  margin-left:20px; 
}

@media screen and (max-width: 768px) {
   #main .main_l .btn{
    display:block;
    width:90vw;
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    top:4vw;
    margin:0;
  }
}

/************************* /2019/10/04 ********************************/

