@charset "UTF-8";

/*vw基準 1433px*/

/*
====================================================
■ base structure
====================================================
*/
html{ font-size:62.5%; }
body {
	width:100%;
	height:100%;
	background:#ffffff;
	color:#333333;
	font-size:1.38em;
	font-family:Noto Sans JP,'游ゴシック', '游ゴシック体', YuGothic, 'YuGothic', 'Yu Gothic', 'Helvetica Neue', Helvetica, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	line-height:150%;
	letter-spacing:0;
	-webkit-text-size-adjust:100%;
	-webkit-font-smoothing:subpixel-antialiased;
}


.brSP { display:none; }
.brPC { display:block; }
.brSPi { display:none; }
.brPCi { display:inline-block; }
@media screen and (max-width: 640px){
	.brSP { display:block; }
	.brPC { display:none; }
	.brSPi { display:inline-block; }
	.brPCi { display:none; }
}


/*
====================================================
■ header
====================================================
*/
#header {
	position:relative;
	display:block;
	width:100%;
	margin:0 auto;
	background:url("../img/bg.png") left bottom no-repeat;
	background-size:100% auto;
	overflow:hidden;
	z-index:1;
}
	#header section {
		position:relative;
		display:block;
		width:100%;
		max-width:960px;
		margin:0 auto;
	}
	#header section::before {
		content:'';
		position:absolute;
		display:block;
		width:125%;
		height:100%;
		bottom:0;
		left:-12.5%;
		background:url("../img/main.png") center bottom no-repeat;
		background-size:100% auto;
		z-index:2;
	}
		#header section div {
			width:96%;
			max-width:960px;
			margin:0 auto;
		}
			#header section div img { width:100%; }
			#header section div h1 {
				position:relative;
				display:block;
				width:77.3%;
				padding:2.65vw 10px 0 0;
				z-index:5;
			}
				#header section div h1 img { width:100%; }
			#header section div h2 {
				position:relative;
				display:block;
				width:67.5%;
				margin-left:1.8vw;
				z-index:5;
			}
				#header section div h2 img { width:100%; }
			#header section div h3 {
				position:relative;
				display:block;
				width:23%;
				padding:2vw 0 36.25% 41.67%;
				z-index:5;
			}
				#header section div h3 img { width:100%; }
			#header section div p {
				position:absolute;
				width:20.4%;
				top:3.6vw;
				right:20px;
			}
				#header section div p img { width:100%; }
/*
@media screen and (max-width: 1200px){
	#header section {
		max-width:1200px;
		overflow:hidden;
	}
	#header section::before {
		width:100%;
		left:0;
	}
}
*/
@media screen and (max-width: 1200px){
	#header section {
		max-width:100%;
		overflow:hidden;
	}
	#header section::before {
		width:125%;
		left:-12.5%;
		height:62.5%;
		background-size:auto 100%;
	}
}
@media screen and (max-width: 640px){
	#header {
		background:url("../img/bg.png") left bottom no-repeat;
		background-size:125% auto;
	}
		#header section {
			max-width:100%;
		}
		#header section::before {
			bottom:-10vw;
			background-size:100% auto;
		}
			#header section div {
				width:100%;
				max-width:100%;
				margin:0 auto;
			}
				#header section div h1 {
					width:90.625%;
					padding:7.5vw 4.6875%;
				}
				#header section div h2 {
					width:90.9375%;
					margin:0 auto;
				}
				#header section div h3 {
					width:23.4375%;
					padding:2vw 38.28125vw 30.625vw;
				}
				#header section div p {
					position:absolute;
					width:26.125%;
					top:35.25vw;
					right:2.5vw;
				}
}




/*
====================================================
■ part1
====================================================
*/
article#part1 {
	position:relative;
	display:block;	
	width:100%;
	margin:0 auto;
	padding-bottom:50px;
	background:#1a0a08;
}
article#part1::before {
	content:'';
	position:absolute;
	display:block;
	width:100%;
	height:8px;
	background:url("../img/bg2.png") left top repeat-x;
	top:0;
	left:0;
	z-index:1;
}
article#part1::after {
	content:'';
	position:absolute;
	display:block;
	width:100%;
	height:8px;
	background:url("../img/bg2.png") left top repeat-x;
	bottom:0;
	left:0;
	z-index:1;
}
	article#part1 .movie {
		position:relative;
		width:100%;
		max-width:760px;
		margin:0 auto;
		top:0;
		z-index:5;
	}
	article#part1 .movie:before {
		content:"";
		display: block;
		padding-top: 56.25%;
	}
		article#part1 .movie iframe {
			position:absolute;
			top:0;
			bottom:0;
			left:0;
			right:0;
			margin:auto;
		}
	article#part1 section:first-of-type {
		position:relative;
		width:100%;
		max-width:1098px;
		margin:0 auto;
		z-index:5;
	}
		article#part1 section:first-of-type div {
			width:100%;
			padding-top:18px;
			margin-bottom:5px;
		}
			article#part1 section:first-of-type div img { width:100%; }
	article#part1 section:last-of-type {
		position:relative;
		width:96%;
		max-width:960px;
		margin:0 auto;
		z-index:5;
	}
		article#part1 section:last-of-type h2 {
			width:81.77%;
			margin:0 auto;
			padding-bottom:5px;
		}
			article#part1 section:last-of-type h2 img { width:100%; }
		article#part1 section:last-of-type div {
			width:71.46%;
			margin:0 auto;
			padding-bottom:2.6vw;
		}
			article#part1 section:last-of-type div img { width:100%; }

@media screen and (max-width: 640px){
	article#part1 {
		width:100%;
		margin:0 auto;
	}
		article#part1::before {
			height:5px;
		}
		article#part1::after {
			height:5px;
		}
		article#part1 .movie {
			position:relative;
			width:100%;
			max-width:100%;
			margin:0 auto 50px;
			top:30px;
			z-index:5;
		}
			article#part1 section:first-of-type {
				max-width:100%;
			}
				article#part1 section:first-of-type div {
					padding-top:10px;
					margin-bottom:3.125vw;
				}
			article#part1 section:last-of-type {
				width:91.40625%;
				max-width:91.40625%;
			}
				article#part1 section:last-of-type h2 {
					width:100%;
					margin:0 auto;
					padding-bottom:3.75vw;
				}
				article#part1 section:last-of-type div {
					width:100%;
					margin:0 auto;
					padding-bottom:25px;
				}
}




/*
====================================================
■ part2
====================================================
*/
article#part2 {
	position:relative;
	display:block;	
	width:100%;
	margin:0 auto;
	padding:24px 0;
	background:#d9000f;
}
	article#part2 section {
		width:85.8%;
		max-width:824px;
		margin:0 auto;
		padding:20px 0;
		background:#ffffff;
		border-radius:10px;
	}
		article#part2 section div.line {
			width:90%;
			max-width:744px;
			margin:0 auto;
			padding:30px 0 40px;
			background:#00b801;
			border-radius:10px;
	}
			article#part2 section div.line h2 {
				display:block;
				width:94%;
				margin:0 auto;
				padding:10px 0;
				border:solid 3px #ffffff;
				border-radius:10px;
				color:#ffffff;
				font-size:150%;
				line-height:1.0;
				text-align:center;
				font-weight:bold;
			}
			article#part2 section div.line dl {
				display:block;
				width:90%;
				margin:20px auto 0;
			}
				article#part2 section div.line dl dt {
					width:100%;
					padding:5px 0;
					background:#ffef00;
					border-radius:15px;
					color:#006637;
					font-size:125%;
					text-align:center;
				}
				article#part2 section div.line dl dd {
					width:100%;
					margin-bottom:30px;
					padding-top:10px;
				}
					article#part2 section div.line dl dd img { width:100%; }
				article#part2 section div.line dl:first-of-type dd { padding-top:20px; }
				article#part2 section div.line dl:nth-of-type(3) dd {
					color:#ffffff;
					font-size:200%;
					line-height:1.5;
					text-align:center;
					font-weight:bold;
				}
					article#part2 section div.line dl dd span {
						display:block;
						width:100%;
						color:#ffffff;
						font-size:100%;
						line-height:1.5;
						text-align:left;
					}
					article#part2 section div.line dl dd ul {
						width:100%;
						list-style-type:none;
					}
						article#part2 section div.line dl dd ul li {
							position:relative;
							display:block;
							width:100%;
							padding-left:1.0em;
							box-sizing:border-box;
							color:#ffffff;
						}
						article#part2 section div.line dl dd ul li::before {
							content:'※';
							position:absolute;
							top:0;
							left:0;
						}
					article#part2 section div.line dl dd p {
						width:100%;
						margin:20px 0;
						padding:10px;
						border:solid 2px #ffffff;
						box-sizing:border-box;
						color:#ffffff;
						font-size:150%;
						line-height:1.5;
						text-align:center;
						font-weight:bold;
					}
						article#part2 section div.line dl dd p strong { color:#f9e800; }
			article#part2 section div.line div {
				display:flex;
				align-items:flex-end;
				width:90%;
				margin:0 auto;
			}
				article#part2 section div.line div p:first-of-type {
					width:80%;
				}
					article#part2 section div.line div p:first-of-type span {
						display:block;
						width:50%;
						margin:0 auto;
						padding-bottom:20px;
					}
						article#part2 section div.line div p:first-of-type span a {
							display:block;
							width:100%;
							padding-top:25%;
							background:url("../img/bt.png") left top no-repeat;
							background-size:100% auto;
						}
						article#part2 section div.line div p:first-of-type span a:hover {
							width:100%;
							padding-top:25%;
							background:url("../img/bt_on.png") left top no-repeat;
							background-size:100% auto;
						}
							article#part2 section div.line div p:first-of-type span a em {
								display:none;
							}
					article#part2 section div.line div p:first-of-type strong {
						display:block;
						width:83%;
						margin:0 auto 10px;
						padding:5px 0;
						background:#ffef00;
						color:#584d11;
						font-size:150%;
						line-height:1.0;
						text-align:center;
						font-weight:bold;
					}
					article#part2 section div.line div p:first-of-type b {
						display:block;
						width:100%;
						margin:0 auto 10px;
						color:#ffef00;
						font-size:150%;
						line-height:1.0;
						text-align:center;
					}
						article#part2 section div.line div p:first-of-type b a {
							color:#ffef00;
							text-decoration:none;
						}
						article#part2 section div.line div p:first-of-type b a:hover {
							color:#ffef00;
							text-decoration:none;
						}
				article#part2 section div.line div p:last-of-type {
					width:20%;
				}
					article#part2 section div.line div p:last-of-type img {
						width:86%;
						height:auto;
						text-align:center;
					}

		article#part2 section div.attention {
			width:94%;
			max-width:780px;
			margin:0 auto;
			padding:30px 0 50px;
			background:#ffffff;
	}
			article#part2 section div.attention dl {
				width:100%;
				margin:0 auto 30px;
			}
				article#part2 section div.attention dl dt {
					width:100%;
					margin-bottom:5px;
					padding:5px 0;
					background:#211816;
					border-radius:15px;
					color:#ffffff;
					font-size:125%;
					line-height:1.0;
					text-align:center;
					font-weight:bold;
				}
				article#part2 section div.attention dl dd {
					width:100%;
					color:#211816;
					font-size:100%;
				}
					article#part2 section div.attention dl dd ol {
						width:100%;
						list-style-type:none;
					}
						article#part2 section div.attention dl dd ol li {
							position:relative;
							display:block;
							width:100%;
							padding-left:1.0em;
							box-sizing:border-box;
							color:#211816;
						}
						article#part2 section div.attention dl dd ol li::before {
							content:'●';
							position:absolute;
							top:0;
							left:0;
						}
					article#part2 section div.attention dl dd ul {
						width:100%;
						list-style-type:none;
					}
						article#part2 section div.attention dl dd ul li {
							position:relative;
							display:block;
							width:100%;
							padding-left:1.0em;
							box-sizing:border-box;
							color:#211816;
						}
						article#part2 section div.attention dl dd ul li::before {
							content:'※';
							position:absolute;
							top:0;
							left:0;
						}
					article#part2 section div.attention dl:nth-of-type(3) dd p,
					article#part2 section div.attention dl:nth-of-type(4) dd p {
						width:74%;
						margin:0 auto;
						padding:10px 0 15px;
					}
						article#part2 section div.attention dl:nth-of-type(4) dd p img { width:100%; }
						article#part2 section div.attention dl:nth-of-type(4) dd p a {
							text-decoration:none;
						}
						article#part2 section div.attention dl:nth-of-type(4) dd p a:hover {
							text-decoration:none;
						}
							article#part2 section div.attention dl:nth-of-type(4) dd p a img { width:100%; }
					article#part2 section div.attention dl:nth-of-type(3) dd span,
					article#part2 section div.attention dl:nth-of-type(4) dd span {
						display:block;
						width:100%;
						text-align:center;
					}
@media screen and (max-width: 640px){
	article#part2 {
		padding:2.5vw 0 5.625vw;
	}
		article#part2 section {
			width:85.9375%;
			max-width:85.9375%;
			margin:0 auto;
			padding:3.125% 0;
			background:#ffffff;
			border-radius:10px;
		}
			article#part2 section div.line {
				width:90%;
				max-width:90%;
				margin:0 auto;
				padding:4vw 0 4.8vw;
				background:#00b801;
				border-radius:10px;
		}
				article#part2 section div.line h2 {
					display:block;
					width:94.4%;
					margin:0 auto;
					padding:8px 0;
					border:solid 2px #ffffff;
					border-radius:10px;
					font-size:125%;
					line-height:1.25;
				}
				article#part2 section div.line dl {
					display:block;
					width:90%;
					margin:15px auto 0;
				}
					article#part2 section div.line dl dt {
						width:100%;
						padding:5px 0;
						background:#ffef00;
						border-radius:15px;
						color:#006637;
						font-size:100%;
						text-align:center;
					}
					article#part2 section div.line dl dd {
						width:100%;
						margin-bottom:30px;
						padding-top:10px;
					}
					article#part2 section div.line dl:first-of-type dd {
						width:100%;
						margin:0 auto;
						padding:20px 0;
					}
					article#part2 section div.line dl:nth-of-type(3) dd {
						font-size:125%;
					}
						article#part2 section div.line dl dd span {
							font-size:87.5%;
						}
						article#part2 section div.line dl dd ul {
						}
							article#part2 section div.line dl dd ul li {
								font-size:87.5%;
							}
						article#part2 section div.line dl dd p {
							padding:10px 5px;
							font-size:100%;
						}
				article#part2 section div.line div {
					display:block;
					width:90%;
					margin:0 auto;
				}
					article#part2 section div.line div p:first-of-type {
						width:100%;
						margin:0 auto;
					}
						article#part2 section div.line div p:first-of-type span {
							display:block;
							width:70%;
							margin:0 auto;
							padding-bottom:20px;
						}
							article#part2 section div.line div p:first-of-type span a {
								display:block;
								width:100%;
								padding-top:25%;
								background:url("../img/bt.png") left top no-repeat;
								background-size:100% auto;
							}
								article#part2 section div.line div p:first-of-type span a em {
									display:none;
								}
						article#part2 section div.line div p:first-of-type strong {
							display:block;
							width:100%;
							margin:0 auto 10px;
							padding:10px 0;
							background:#ffef00;
							color:#584d11;
							font-size:125%;
							line-height:1.0;
							text-align:center;
							font-weight:bold;
						}
						article#part2 section div.line div p:first-of-type b {
							display:block;
							width:100%;
							margin:0 auto 10px;
							color:#ffef00;
							font-size:125%;
							line-height:1.5;
							text-align:center;
						}
					article#part2 section div.line div p:last-of-type {
						width:50%;
						margin:0 auto;
						text-align:center;
					}
						article#part2 section div.line div p:last-of-type img {
							width:75%;
							margin:0 auto;
							height:auto;
						}
			article#part2 section div.attention {
				max-width:90%;
				padding:20px 0 0;
		}
				article#part2 section div.attention dl {
					width:100%;
					margin:0 auto 30px;
				}
					article#part2 section div.attention dl dt {
						font-size:100%;
						line-height:1.0;
						text-align:center;
						font-weight:bold;
					}
					article#part2 section div.attention dl dd {
						width:100%;
						color:#211816;
						font-size:87.5%;
					}
						article#part2 section div.attention dl:nth-of-type(4) dd p {
							width:90%;
							margin:0 auto;
							padding:10px 0 15px;
						}
						article#part2 section div.attention dl:nth-of-type(4) dd span {
							display:block;
							width:100%;
							text-align:center;
						}
}




/*
====================================================
■ ティザー
====================================================
*/
main {
	display:block;
	width:96%;
	max-width:960px;
	margin:100px auto;
}
	main img { width:100%; }
@media screen and (max-width: 640px){
	main {
		display:block;
		width:96%;
		max-width:96%;
		margin:5vw auto;
	}
}