	
*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role='list'],ol[role='list']{list-style:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}
html{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
header{
padding: 0 20px;
}
header .hd1{
 font-size: 174px;
 font-weight: 900;
 color:#fff;
 text-align: center;
 margin-top: 180px;
}
header .hd1 > span{
	background: #ff0000;
	display:inline-flex;
	height: 230px;
	width:230px;
	justify-content: center;
	align-items: center;
	position: relative;
	margin:0 12px;
	padding-bottom: 5px;
	line-height: 1;
}
header .hd1 > span > span{
	font-size: 48px;
	position: absolute;
	top:20px;
	right:20px;
	line-height: 1;
}
header .hd2{
	color: #ff0000;
	font-size: 86px;
	font-weight: 900;
	text-align: center;
	line-height: 1.4;
}
header h1{
color: #fff;
font-size: 78px;
font-weight: 900;
text-shadow: 0 0 18px #ff0000,0 0 10px #ff0000;
text-align: center;
letter-spacing: 3px;
line-height: 1.4;
margin-top: 75px;
}
header h1 > span{
font-size: 112px;
position: relative;
letter-spacing: 8px;
padding: 0 6px;
display: inline-block;
}
header h1 > span > span{
text-shadow: 0 0 10px #ff0000,0 0 5px #ff0000;
font-size: 48px;
position: absolute;
top:15px;
right:-15px;
}
header h1 > span:last-child{
padding:0;
letter-spacing: 0;
margin-left: -15px;
}
header .bg{
background-image:url(/wp-content/themes/lightning_child_sample/img/adv/img1.png);
background-position: center;
background-size: contain;
background-repeat: no-repeat;
height: 595px;
max-width: 900px;
width: 100%;
position: relative;
margin: 100px auto 0;
}

header .bg .flex{
 display: flex;
 justify-content: center;
 gap:30px;
}

header .bg .flex div{
background: #ff0000;
color: #fff;
box-shadow: 0 7px 7px #000;
font-size: 36px;
font-weight: 900;
line-height: 1;
padding:13px 20px 17px;
min-width: 260px;
text-align: center;
letter-spacing: 2px;
}
header .bg .flex div span{
font-size: 56px;
vertical-align: text-bottom;
margin-left: 5px;
letter-spacing: 0;
}
header .bg .genkai{
position: absolute;
bottom: 0;
right: -100px;
}
header .att{
font-size: 12px;
color: #999;
margin:20px auto;
text-align: center;
}
header .hd3{
color:#3e3a39;
margin-top:60px;
font-size: 40px;
font-weight: 700;
text-align: center;
line-height: 2;
}

#advance{
background:#011436;
color:#fff;
padding:85px 20px 65px;
margin-top: 85px;
}

#advance h2{
background-image:url(/wp-content/themes/lightning_child_sample/img/adv/img3.png);
background-size: 75%;
background-repeat: no-repeat;
background-position: center;
color: #fffc00;
font-size: 42px;
text-align: center;
width: 100%;
font-weight: 900;
line-height: 1.3;
}
#advance h2 span{
font-size: 100px;
display: block;
}
#advance .att{
text-align: center;
margin: 1em 0 50px;
}
#advance > img{
margin: 0 auto;
}
#advance .ad1{
font-size: 24px;
line-height: 2;
margin: 2em 0 4em;
text-align: center;
font-weight: 700;
}
#advance .feature{
max-width: 1100px;
width: 100%;
margin: 0 auto;
background: linear-gradient(to right, #ffffff 21%, #feff89 100%);
color: #000;
padding: 24px;
}
#advance .feature p{
text-align: center;
font-size: 40px;
font-weight: 700;
letter-spacing: 1px;
}
#advance .feature p span{
font-size: 70px;
display: inline-block;
background: url(/wp-content/themes/lightning_child_sample/img/adv/img5.png);
background-repeat: no-repeat;
background-position: top center;
width:111px;
padding-top:8px;
margin:0 -30px 0 -24px;
}
#advance .feature ul{
list-style: none;
margin: 20px 40px 0 80px;
padding: 0;
}
#advance .feature ul li{
font-size: 24px;
display: flex;
gap:10px;
padding-bottom: 20px;
line-height: 1.6;
}
#advance .feature ul li::before{
content: "";
display: inline-block;
background: url(/wp-content/themes/lightning_child_sample/img/adv/img6.png);
background-size: cover;
width:51px;
height: 38px;
flex-shrink: 0;
}

#advance .feature ul li span span{
font-weight: 700;
border-bottom: 1px solid #000;
}
#advance .att2{
font-size: 12px;
color: #aaa;
text-align: center;
margin-top: 5px;
}
#advance .apply{
text-align: center;
}
#advance .apply a{
background:linear-gradient(#fe4d4d 50%, #fd0000 50%);
color: #fff;
font-size: 36px;
text-align: center;
padding: 20px 90px;
border: 5px solid #07265f;
border-radius: 20px;
box-shadow: 0 6px 6px #ffffff66;
display: inline-block;
margin: 60px auto;
font-weight: 900;
text-decoration: none;
}

#advance .apply a::after{
	content:"";
	display: inline-block;
	border-left:22px solid #fff;
	border-top: 14px solid transparent;
	border-bottom: 14px solid transparent;
	margin-left:0.6em;
}

#price{
padding:60px 20px 30px;
max-width: 1100px;
margin: 0 auto;
}

#price h3{
border-bottom: 9px solid #fffd4e;
font-size: 30px;
vertical-align: text-bottom;
text-align: center;
padding-bottom: 20px;
}
#price h3 span{
font-size: 36px;
font-weight: 700;
}
#price .flex{
display: flex;
justify-content: space-between;
align-content: flex-start;
}
#price .flex div{
width:31%;
background: #fffd4e;
border-radius: 60px;
text-align: center;
padding: 30px 0;
margin: 30px 0;
}
#price .flex div img{
display: inline-block;
width:60%;
}
#price .flex div p{
font-size: 22px;
line-height: 1.6;
margin-top: 16px;
}
#price > p{
font-size: 22px;
text-align: center;
line-height: 2;
margin-bottom: 3em;
}
#price h2{
font-size: 40px;
text-align: center;
padding-top: 1em;
color: #410000;
}
#price h2 + p{
color: #410000;
font-weight: bold;
margin: 14px 0 20px;
}
#price .ticket img{
margin: 0 auto;
}

#price .apply{
text-align: center;
}
#price .apply a{
background:linear-gradient(#fe4d4d 50%, #fd0000 50%);
color: #fff;
font-size: 36px;
text-align: center;
padding: 20px 90px;
border: 5px solid #ebebeb;
border-radius: 20px;
display: inline-block;
margin: 60px auto;
font-weight: 900;
text-decoration: none;
}

#price .apply a::after{
	content:"";
	display: inline-block;
	border-left:22px solid #fff;
	border-top: 14px solid transparent;
	border-bottom: 14px solid transparent;
	margin-left:0.6em;
}
footer{
text-align: center;
padding: 0 0 20px;
font-size: 14px;
}
br.w1100,
br.w768{
display: none;
}

@media screen and (max-width:1100px){
br.w1100{
display: inline;
}
header .bg .genkai{
right: 30px;
}
header .bg .flex div{
min-width: auto;
font-size: 30px;
}
header .bg .flex div span{
font-size: 48px;
}
header .hd3{
font-size: 34px;
}
#price h3 span{
	display: block;
	margin-top: -0.5em;
}
}

@media screen and (max-width:768px){
	body{font-size:2vw; }
	br.w768{
		display: block;
	}
	header .hd1{
		font-size:15.625vw;
		margin-top: 15.625vw;
	}
	header .hd1 > span{
		height: 20.833vw;
		width: 20.833vw;
	}
	header .hd1 > span > span{
		font-size: 4.166vw;
		top:2vw;
		right: 2vw;
	}
	header .hd2{
		font-size: 7.8125vw;
	}
	header h1{
		font-size: 7.03125vw;
		letter-spacing: 0.4vw;
		margin-top: 40px;
	}
	header h1 > span{
		font-size: 10.416vw;
		letter-spacing: 1vw;
	}
	header h1 > span > span{
		font-size: 3.645vw;
		top: 1.3vw;
		right: -1.3vw;
	}
	header h1 > span:last-child{
		margin-left: -1.9vw;
	}
	header .bg {
		height: 100vw;
		margin-top: 50px;
	}
	header .bg .flex{
		flex-wrap: wrap;
		gap:15px;
	}
	header .bg .flex div{
		font-size: 6.25vw;
		padding: 1.7vw 2.6vw 2.2vw;
		box-shadow:0 4px 4px #666;
	}
	header .bg .flex div span{
		font-size: 10vw;
		margin-left: 0;
	}
	header .bg .genkai{
		width: 60%;
	}
	header .att{
		font-size: 1.5vw;
	}
	header .hd3{
		font-size: 5.2vw;
		margin-top: 30px;
	}
	#advance{
		margin-top: 40px;
		padding:40px 20px 30px;
	}
	#advance h2{
		font-size: 4.6875vw;
		background-size: 100%;
	}
	#advance h2 span{
		font-size: 11.78vw;
	}
	#advance .att{
		margin-bottom: 25px;
	}
	#advance .ad1{
		font-size: 3.125vw;
	}
	#advance .feature{
		padding: 12px;
	}
	#advance .feature p{
		font-size: 3.645vw;
	}
	#advance .feature p span{
		font-size: 7.55vw;
		width: 14.4vw;
		background-size: contain;
		margin: 0 -4.55vw 0 -3.9vw;
		padding-top:2vw;
	}
	#advance .feature ul{
		margin: 2.6vw 0 0;
	}
	#advance .feature ul li{
		font-size: 3.645vw;
		gap:1.3vw;
		padding-bottom: 3.645vw;
	}
	#advance .feature ul li::before{
		width:5.2vw;
		height: 3.9vw;
		margin-top: 1vw;
	}

	#advance .att2{
		font-size: 1.5vw;
	}
	#advance .apply a, #price .apply a{
		font-size: 4.6875vw;
		padding: 2.6vw 5.2vw;
		border-radius: 2.6vw;
		box-shadow: 0 0.78vw 0.78vw #ffffff66;
		margin: 7.8125vw auto;
	}
	#advance .apply a{
		border:0.65vw solid #07265f;
	}
	#advance .apply a::after,
	#price .apply a::after{
		border-left: 2.6vw solid #fff;
    border-top: 2vw solid transparent;
    border-bottom: 2vw solid transparent;
	}
	#price{
		padding: 7.8125vw 20px 3.9vw;
	}
	#price h3{
		font-size: 3.9vw;
		padding-bottom: 2.6vw;
	}
	#price h3 span{
		font-size: 4.6875vw;
		line-height: 1.6;
	}
	#price .flex{
		flex-wrap: wrap;
		justify-content: space-around;
	}
	#price .flex div{
		width:48%;
		margin:2.8vw 0 0;
		padding: 3.9vw;
		border-radius: 7.8125vw;
	}
	#price .flex div p{
		font-size: 2.86vw;
		margin-top: 0.5em;
	}
	#price .flex div img{
		width: 50%;
	}
	#price .flex div .w1100{
		display: none;
	}
	#price .flex + p{
		margin-top: 3.9vw;
		font-size: 2.8vw;
	}
	#price > p{
		font-size: 2.8vw;
	}
	#price h2{
		font-size: 3.645vw;
	}
	#price .apply a{
		border:0.65vw solid #ebebeb;
	}
	footer{
		font-size: 1.82vw;
	}
}
@media screen and (max-width:480px){
header .hd1 > span{
margin:0 6px;
}
}
