


#bgwrap::after {
	background-image: url("../image/bg.jpg");
}

.special .entry_body p.banner{ position: absolute;
    right: 3vw;
    top: 40vw;
    width: 24vw;}

.special .entry_body p.banner img{width: 100%;}

.logo_hado {
	width: 14vw;
	position: absolute;
	left: 13vw;
	right: 0;
	top: 8vw;
}


.logo_ha {
	margin: -36vw 0 8.3vw 0vw;
	display: block;
	position: relative;
	width: 38vw;
	filter: drop-shadow(0px 0px 30px #000);
}


.back {
  width: 95%;
  max-width: 624px;
  padding: 100px 0 256px;
  margin: 0 auto;
}

b {
  font-weight: bold;
}

.red {
  color: #c20d00;
}

.special .entry_body p.note {
	font-size: 12px;
}

.section_area p.center {
	text-align: center;
}

.amazon_card {
  /*border-radius: 10px;*/
  border: #ccc solid 1px;
  max-width: 360px;
  text-align: center;
  justify-content: center;
  overflow: hidden;
  margin: 10px auto;
}

#back-top {
  position: fixed;
  bottom: 0;
  right: 0;
  display: none;
  cursor: pointer;
  z-index: 100;
  transition: .3s;
}

#back-top span {
  background: url(../image/pagetop.png) top center no-repeat;
  width: 120px;
  height: 85px;
  display: block;
  background-size: 120px 85px;
  background-position: 0 0;
}


.btn {
	width: 400px;
	height: auto;
	margin: 0 auto;
	transition: .3s;
	display: inline-block;
    margin: 1vw;
}

/* ======================== MV ======================== */


.mv_wrap {
}

.mv_wrap img {
	width: 100%;
}


.special .entry_body h2.menu-txt{width: 100%;margin-top:0;}
.special .entry_body h2.menu-txt img{width: 90%; margin: 1% 5% 0;}


/* ======================== movie ======================== */

.movie_area {
	margin-top: 4vw;
	margin-bottom: 4vw;
	display: flex;
	justify-content: center;
}


.movie {
  height: auto;
  width: 1040px;
  position: relative;
  transform-origin: center;
  overflow: hidden;
}

.movie i {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: url(../../image/pv/pv_btn.png) no-repeat center;
  background-size: cover;
  transition: background 0.4s , transform 0.4s;
  transform-origin: center;
  z-index: 100;
  margin: auto;
  height: 6vw;
  width: 6vw;
}


.movie span {
	font-size: 20px;
}

.movie img {
	transition: .3s;
}


/* ======================== pagemenu ======================== */

.pagemenu {
	background: rgb(51,0,0);
	background: linear-gradient(0deg, rgba(51,0,0,1) 0%, rgba(153,0,0,1) 100%);
	/*height: 12vw;*/
	display: flex;
margin-top: 0!important;
}


.pagemenu div {
	height: 100%;
	box-sizing: border-box;
}

.pagemenu div a img {
	width: 100%;
}

#contents .pagemenu div a {
	/*font-size: 1.6vw;
	color: #df6;*/
	display: block;
	height: 100%;
	width: 100%;
	cursor: pointer;
	/*line-height: 12vw;*/
	transition: .3s;
}



/* ======================== content ======================== */






.content_title {
	width: 80vw;
	margin: 0 auto;
}

.content_update {
	background-image: url(../image/chara001.png);
	background-repeat: no-repeat;
	top: 0;
	left: 0;
	padding-top: 10vw;
	background-size: 100%;
}

.content_event {
	background-image: url(../image/chara002.png);
	background-repeat: no-repeat;
	top: 0;
	right: 0;
	padding-top: 10vw;
	background-size: 100%;
}

.content_campaign {
	background-image: url(../image/chara001.png);
	background-repeat: no-repeat;
	top: 0;
	right: 0;
	padding-top: 10vw;
	background-size: 100%;
}

.content_line {
	background-image: url(../image/chara002.png);
	background-repeat: no-repeat;
	top: 0;
	right: 0;
	padding-top: 10vw;
	background-size: 100%;
	margin-bottom: 10vw;
}


/* ======================== section ======================== */



.section_area {
	display: block;
	background-color: rgba(255,255,255,1);
	background-image: url(../image/bg_update001.png);
	background-repeat: no-repeat;
	border: solid 1px #f6cd79;
	box-sizing: border-box;
	outline: solid 3px #f6cd79;
	outline-offset: 3px;
	width: 1200px;
	padding: 50px 0 50px;
	margin: 80px auto 0;
}

.section_area p {
	text-align: left;
}


.section_title {
	margin-bottom: 30px;
}



.slider_wrap {
	width: 1000px;
	margin: 30px auto 50px;
}


.store {
  display: flex;
  width: 700px;
  margin: auto;
  justify-content:center;
}

.store li{width: 48%; padding:0; padding: 2%;}
.store img, .store a {
	width: 100%; padding: 0; margin: 0;
}


section.last h3{margin-top:100px!important;}


.special .entry_body section ul.prize{display: flex; width: 1050px; margin: 0 auto;  flex-wrap: wrap; justify-content: center;}
.special .entry_body section ul.prize li{width: 300px; height: 500px; margin:0  25px;}
.special .entry_body section ul.prize li p{width: 100%; text-align: center; margin: 5px 0;}
.special .entry_body section ul.prize li p.name{font-size: 20px; font-weight: bold; color: #811111; line-height: 28px;}
.special .entry_body section ul.prize li p.name span{font-size: 15px;}
.special .entry_body section ul.prize p.img{width: 300px; height: 300px;border: #ccc solid 1px;}

/* ======================== SLICK ======================== */

/*.slick-dotted.slick-slider {
  margin-bottom: 50px;
}*/


.movie.slick-slide {
	transform: scale(0.95);
}

.movie.slick-center {
	transform: scale(1);
}

.slick-dots {
	bottom: -20px;
}

.slick-dots li, .slick-dots li button {
  width: 5%;
  height: 5px;
}

.slick-dots li button:before {
  color: #333;
  width: 100%;
  height: 8px;
  background: #999;
  content: '';
  opacity: 1;
}

.slick-dots li.slick-active button:before {
  color: #a00;
  background: #a00;
  opacity: 1;
}

.slick-arrow {
  height: 200px;
  width: 50px;
}

.slick-prev {
	left: -50px;
}

.slick-next {
	right: -50px;
}


.slick-arrow:before {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 30px;
  background: transparent;
  border-top: 2px solid #900;
  border-right: 2px solid #900;
  border-left: none;
  border-bottom: none;
  display: block;
  z-index: 10;
  transition: border-color .3s;
  outline: none;
  text-indent: -9999px;
}

.slick-prev:before {
  left: 20px;
  margin-top: -25px;
  transform:rotate(-135deg);
}
.slick-next:before {
  right: 20px;
  margin-top: -25px;
  transform:rotate(45deg);
}
.slick-arrow:hover:before {
  border-color: #ccc;
}

.slick-lightbox .slick-prev {
  left: 0px;
  z-index: 9999;
}

.slick-lightbox .slick-next {
  right: 0px;
}


.slick-next.slick-disabled:before, .slick-prev.slick-disabled:before {
	display: none;
}




/*text*/

.special .entry_body *+h2 {
  margin-top: 10.254vw
}

.special .entry_body h2+* {
  margin-top: 4.883vw
}

.special .entry_body h2+p {
  margin-top: 2vw;
  margin-bottom: 2vw;
}

.special .entry_body h3+* {
  margin-top: 4.395vw
}

.special .entry_body *+h3 {
  margin-top: 9.277vw
}

.special .entry_body h2+h3 {
}


.special .entry_body h2 {
  color: #fff;
  background: #460000;
  font-size: 5vw;
  line-height: 1.2;
  margin: 0 -4.883vw;
  padding: 2.93vw 4.883vw 3.125vw;
  letter-spacing: .293vw;
  text-align: left;
}

.special .entry_body h3 {
  color: #811111;
  font-size: 4.785vw;
  border-bottom: .391vw solid #811111;
  padding-bottom: 1.758vw;
  letter-spacing: .293vw
}

.special .entry_body p {
  font-size: 3.223vw;
  line-height: 5.176vw;
  letter-spacing: .098vw
}




.special .entry_body h2 {
  font-size: 28px;
  margin: 0 auto;
  width: 1000px;
  padding: 15px 20px 18px;
  letter-spacing: 3px;
	margin-top:70px;
}
.special .entry_body h3 {
  font-size: 26px;
  border-bottom: 3px solid #811111;
  padding-bottom: 15px;
  letter-spacing: 3px;
  width: 1000px;
	margin: 30px auto 20px auto;
  text-align: left;
  font-weight: bold;
}

.special .entry_body p {
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 1px;
  width: 1000px;
  margin: 0 auto
}

.special .entry_body .dot {
  padding-left: 1em;
  position: relative;
}

.special .entry_body .dot::before {
  content: "・";
  position: absolute;
  left: 0px;
  top: 0px;
  width: 1em;
  text-align: center;
}


@media screen and (min-width: 1024px) {

	.btn:hover {
		opacity: 0.7;
	}

	.movie:hover img {
		transform: scale(1.05);
	}

	.movie:hover i {
		transform: scale(1.05);
	}

	#contents .pagemenu div a:hover {
		opacity: 0.7;
	}

	#back-top:hover {
		opacity: 0.7;
	}

}


@media screen and (max-width: 1023px) {

	.special .entry_body p.banner{ position: absolute;
    right: 25vw;
    top: 73vw;
    width: 50vw;}

	

	.logo_hado {
		width: 23vw;
		top: 7vw;
		left: 39vw;
		right: auto;
	}

	.logo_ha {
		margin:-77vw auto 32vw;
		width: 62vw;
	}

	.pagemenu {
		flex-wrap: wrap;justify-content: center;
	}

	.pagemenu div {
		width: 50%;
	}

	.content_title {
		width: 100%;
	}

	.btn {
		width: 70%;
		margin: 2vw auto;
		display: block;
	}
	
	
.special .entry_body h2.menu-txt img{width: 100%; margin: 1% 0 0;}
	
	

section.last h3{margin-top:20vw!important;}


	.special .entry_body h2 {
	  color: #fff;
	  background: #811111;
	  font-size: 4vw;
	  line-height: 1.2;
	  padding: 2.93vw 4.883vw 3.125vw;
	  letter-spacing: .293vw;
		  margin-top: 9vw;
	}

	.special .entry_body h3 {
	  color: #811111;
	  font-size: 4vw;
	  border-bottom: .391vw solid #811111;
	  padding-bottom: 1.758vw;
	  letter-spacing: .293vw
	}

	.special .entry_body p {
	  font-size: 3.223vw;
	  line-height: 5.176vw;
	  letter-spacing: .098vw
	}

	.movie {
		width: 70vw;
	}

	.movie i {
		height: 16vw;
		width: 16vw;
	}


	.section_area {
		width: 96%;
		margin-top: 5vw;
		padding: 5vw 0;
	}

	.section_title {
		width: 90%;
		margin: 0 auto 3vw;
	}

	.slider_wrap {
		width: 90%;
	}

	.slick-next:before {
		right: 30px;
		margin-top: -10px;
	}

	.slick-prev:before {
		left: 30px;
		margin-top: -10px;
	}

	.slick-arrow:before {
		width: 20px;
		height: 20px;
	}

	.special .entry_body h2 {
		width: 90%;
	}

	.special .entry_body h3 {
		width: 90%;
	}

	.special .entry_body p {
		width: 90%;
	}

	.amazon_card {
		width: 60%;
	}

	#back-top span {
		width: 90px;
		height: 64px;
		background-size: 90px 64px;
	}

	.store {
		width: 90%;
		max-width: 600px;
	}



	.back {
		width: 60%;
		margin: 0 auto;
		padding: 80px 0 100px;
	}
	
	.special .entry_body section ul.prize{width: 100%;}
	.special .entry_body section ul.prize li{width: 40vw; margin: 0 3vw; height: 66vw;}
	.special .entry_body section ul.prize p.img{width: 40vw; height: 40vw;}
	.special .entry_body section ul.prize li p.name{font-size:2.8vw; line-height: 4vw;}
	.special .entry_body section ul.prize li p.name span{font-size:2vw; }

}


.blockup{display: block; width: 100%; height: 100%; padding: 50%; margin: auto;}