@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

/* !Links */
a:link { color: #000; text-decoration: none }
a:visited { color: #000; text-decoration: none }
a:hover { color: #000; text-decoration: none }
a:active { color: #000; text-decoration: none }
html { margin: 0; padding: 0}
body { margin: 0; padding: 0 }


.kj20th { color:#211815; font-family: 'Noto Sans JP'; background:#ffea00; }
.kj20th h3 ,.kj20th h4  {color:#211815; }
.kj20th p { font-size: 18px; letter-spacing:0.04em; }

.btn { position:relative; z-index:1; }
.btn a { font-size:22px; font-weight:800; line-height:1; padding:30px 0; text-align:center; display:block; border-bottom:20px solid #000; }
.btn a:hover { border-bottom: 20px solid #d32d26; background: #fff }
.btn a .ar { position:absolute; bottom:7px; left:50%; margin:0 0 0 -18.5px; z-index:2 }


#main { margin:80px 0; }

.mov { width:960px; margin:0 auto 120px; }

#sec01 { text-align:left; padding:0 80px; max-width:1280px; min-width:1080px; margin:0 auto 120px; }
#sec01 .intro { position:relative; }
#sec01 .intro p { width:46%; padding:40px 0 0; font-size: 16px }
#sec01 .intro .pic { width:53.6%; position:absolute; top:-45px; right:0; }
#sec01 .pre01 { padding:150px 0 0; }
#sec01 .pre01 h3 { font-size:42px; font-weight:900; line-height:1.2em; position:relative; padding:0 0 0 190px; }
#sec01 .pre01 h3 span { font-size:36px; }
#sec01 .pre01 .cir { position:absolute; top:50%; left:-20px; margin:-90px 0 0; }
#sec01 .pre01 .ico { position:absolute; top:14px; left:190px; }
#sec01 .pre01 .inner { position:relative; }
#sec01 .tx_r { width:50%; padding:50px 0 0 50%; position:absolute; top:0; right:0; }
#sec01 .pre01 p span { color:#d32d26; font-size:14px; line-height:1.8em; display:inline-block; padding:5px 0 0; }
#sec01 .pre01 .notes { width:22%; font-size:12px !important; position:absolute; bottom:-400px; right:-20px; }
#sec01 .pre01 .pic-box { margin:20px 25px 0 -25px; }
#sec01 .pre01 .pic { width:80%; }
#sec01 .pre01 .pic p { font-size:12px; display:inline-block; position:absolute; bottom:40px; left:28%; }

.aaa {  text-decoration: line-through; color:#F00 }
.aaa span { color:#000; }

#sec01 .pre02 { padding:130px 0 0; }
#sec01 .pre02 h3 { font-size:42px; font-weight:900; line-height:1.2em; position:relative; padding:0 0 0 190px; }
#sec01 .pre02 h3 span { font-size:36px; }
#sec01 .pre02 .cir { position:absolute; top:50%; left:-20px; margin:-90px 0 0; }
#sec01 .pre02 .inner { position:relative; }
#sec01 .pre02 .tx_l { width:48%; /*position:absolute; top:100px; left:0; z-index:2;*/ margin:100px 0 0; }
#sec01 .pre02 p span { font-size:14px; line-height:1.8em; display:inline-block; padding:5px 0 0; }
#sec01 .pre02 .pic-box { position:absolute; bottom:-10px; right:0; }
#sec01 .pre02 .pic { width:64%; padding:0 0 0 44%; position:relative; z-index:1; }
#sec01 .pre02 .pic p { font-size:12px; display:inline-block; position:absolute; bottom:40px; right:33%; }
#sec01 .pre02 .link { margin:20px 0 0; }
#sec01 .pre02 .link a { font-size:15px; font-weight:500; text-decoration:underline; cursor:pointer; }
#sec01 .pre02 .link a:hover { text-decoration:none; }
.overview { margin:30px 0 0; }
.overview h4 { font-size:16px; margin:0 0 5px; }
.overview ul li { line-height:1.6; margin:0 0 10px; }
.overview ul li h5 { color:#000; font-size:14px; }
.overview ul li span { font-size:11px; }

#sec01 .pre03 { padding:150px 0 0; }
#sec01 .pre03 h3 { font-size:42px; font-weight:900; line-height:1.2em; position:relative; padding:0 0 0 190px; }
#sec01 .pre03 h3 span { font-size:36px; }
#sec01 .pre03 .cir { position:absolute; top:50%; left:-20px; margin:-90px 0 0; }
#sec01 .pre03 .ico { position:absolute; top:14px; left:190px; }
#sec01 .pre03 .inner { position:relative; }
#sec01 .tx_r { width:50%; padding:0 0 0 50%; position:absolute; top:0; right:0; }
#sec01 .pre03 p span { font-size:14px; line-height:1.8em; display:inline-block; padding:5px 0 0; }
#sec01 .pre03 .notes { width:22%; font-size:12px !important; position:absolute; bottom:-400px; right:-20px; }
#sec01 .tx_r .pic-r { padding:30px 18% 0 0; }
#sec01 .pre03 .pic-box { margin:100px 25px 0 -25px; padding:0 0 0 5%; }
#sec01 .pre03 .pic { width:44%; }


#sec02 { margin:0 0 80px; }
#sec02 .inner { padding:0 80px; max-width:1280px; min-width:1080px; margin: 0 auto; }
#sec02 h2 { margin:0 0 50px; }
#sec02 h3 { margin:0 0 30px; }
#sec02 .block { position:relative; }
.kazari01 { position:absolute; top:-20px; left:50%; margin:0 0 0 -650px; }
.kazari02 { position:absolute; top:120px; left:50%; margin:0 0 0 -530px; }
.kazari03 { position:absolute; top:70px; left:50%; margin:0 0 0 400px; }
#sec02 .read { width:730px; text-align:left; margin:0 auto 30px; }
#sec02 ul { text-align:left; margin:0 0 0 -20px; }
#sec02 ul li { width:50%; float:left; }
#sec02 ul li .pic { width:36%; }
#sec02 ul li .list-inner { margin:0 30px 0 0; }
#sec02 ul li .tx { width:64%; float:left; }
#sec02 ul li h4 { font-size:20px; line-height:1.6em; padding:20px 25px 20px 25px; }
#sec02 ul li p { font-size:14px;padding:0 0 0 25px; }
#sec02 ul li span { font-size:12px; }
#sec02 ul img { float:left; }
#sec02 .btn-box { position:relative; margin:50px 0 0; }
#sec02 .btn a span { font-size:16px; font-weight:500; display:inline-block; }
.kazari04 { position:absolute; bottom:105px; left:50%; margin:0 0 0 -340px; z-index:3; }
.kazari05 { position:absolute; bottom:10px; left:12px; z-index:3; }
.kazari06 { position:absolute; bottom:-60px; right:-83px; z-index:3; }
#sec02 p { color:#d32d26; font-size:40px; font-weight:800; }
#sec02 p.credit { color:#211815; font-size: 16px; font-weight: 500; text-align: left; padding: 0 160px; margin: 40px 0 0; }


#sec03 { padding:0 80px 90px; max-width:1280px; min-width:1080px; text-align:left; margin: 0 auto; }
#sec03 .pic { width:20%; float:left; }
#sec03 .tx { width:80%; float:left; }
#sec03 h3 { font-size:24px; padding:0 0 5px 35px; }
#sec03 h3 span { font-size:14px; }
#sec03 p { font-size:14px; padding:0 0 0 35px; }
#sec03 a { font-weight:500; }
#sec03 .bn { margin:40px 0 0; } 
#sec03 h4 { font-size:26px; font-weight:600;  text-align:center; margin:50px 0 10px; }
#sec03 .bnr-3 { margin:0 0 0 -20px; } 
#sec03 .bnr-3 li { width:33.333%; float:left; }
#sec03 .bnr-3 li .inner { margin:0 0 0 20px; }


.btn-back { background:#f1eee8; padding:60px 0; }
.btn-back .btn-inner { margin: 0 auto; min-width:1024px; max-width:1200px; }
.btn-back a { font-size:16px; letter-spacing:0.2em; color:#452a19; text-decoration:none; padding:15px 0; background:#fff; border:4px solid #b63232; display:block; text-align:center; position:relative; min-width:1024px; max-width:1280px; margin:0 auto; display: block }
.btn-back a:hover { background: #b63232; color: #fff }
.ar01 { position:absolute; top:50%; left:50%; margin:-8px 0 0 -105px; }


.pc { display: block !important; }
.sp { display: none !important; }


/*220105*/
.thanks { padding: 40px 0 80px }
.thanks h3 { font-size: 24px; color: #d22d25 }
.thanks p { margin-bottom: 2em }
.thanks .imgs { margin-top: 24px; position: relative }
.thanks .imgs p { text-align: left; margin: 0 0 0 1em; font-size: 14px }


@media screen and (max-width: 780px){
    body { font-size:13px; line-height: 1.8; letter-spacing: 0.04em; -webkit-text-size-adjust: none; }

    .pc { display: none !important; }
    .sp { display: block !important; }

    a { text-decoration:none; -webkit-tap-highlight-color:rgba(0,0,0,0); -webkit-touch-callout:none; }


	.kj20th p { font-size:14px; }
	.btn { position:relative; z-index:1; }
	.btn a { font-size:18px; padding:18px 0; border-bottom:12px solid #000; }
	.btn a:hover { border-bottom: 12px solid #d32d26; }
	.btn a .ar { position:absolute; bottom:3px; left:50%; margin:0 0 0 -18.5px; z-index:2 }


	#main { margin:50px 0 30px; }
	
	.mov { width:auto; margin:0 auto 30px; padding:0 20px; }
	.mov iframe { height:auto; }
	
	#sec01 { padding:0 20px; max-width: inherit; min-width: inherit; margin:0 0 60px; }
	#sec01 h2 img { width:100%; }
	#sec01 .intro p { width:100%; padding:20px 0; font-size:14px; }
	#sec01 .intro .pic { width:100%; position:static; }
	#sec01 .pre01 { padding:30px 0 0; }
	#sec01 .pre01 h3 { font-size:24px; line-height:1.3; padding:0 0 15px 60px; }
	#sec01 .pre01 h3 span { font-size:13px; line-height:1.6; padding:5px 0 5px 0; }
	#sec01 .pre01 .cir { position:absolute; top:50%; left:-26px; height:80px; margin:-50px 0 0; }
	#sec01 .pre01 .ico { position:absolute; top:-20px; left:60px; height:20px; }
	#sec01 .tx_r { width:100%; padding:0; position:static; margin:0 0 20px; }
	#sec01 .pre01 p span { font-size:12px; }
	#sec01 .pre01 .img { width:39%; padding:0; }
	#sec01 .pre01 .notes { width:100%; position:static; margin:10px 0 0; }
	#sec01 .pre01 .pic-box { margin: 0 0 20px; }
	#sec01 .pre01 .pic { width:100%; }
	#sec01 .pre01 .pic p { font-size:11px; position:absolute; bottom:0px; left:32%; }
	

	#sec01 .pre02 { padding: 50px 0 0; }
	#sec01 .pre02 h3 { font-size:24px; line-height:1.3em; padding:0 0 15px 60px; }
	#sec01 .pre02 h3 span { font-size:13px; }
	#sec01 .pre02 .cir { position:absolute; top:50%; left:-26px; margin:-40px 0 0; height:80px; }
	#sec01 .pre02 .inner { padding:0 0 30px; }
	#sec01 .pre02 .tx_l { width:100%; position:static; margin:20px 0 0; }
	#sec01 .pre02 p span { font-size:12px; }
	#sec01 .pre02 .pic-box { position:static; }
	#sec01 .pre02 .pic { width:100%; padding:0; margin:0; text-align:center; }
	#sec01 .pre02 .pic p { font-size:11px; position:static; text-align:left; display:block; padding:2px 0 0 10%; }
	#sec01 .pre02 .link { margin:15px 0 0; }
	#sec01 .pre02 .link a { font-size:13px; }
	.overview { margin:20px 0 0; }
	.overview h4 { font-size:15px; }
	.overview ul li h5 { font-size:13px; }


	#sec01 .pre03 { padding:60px 0 0; }
	#sec01 .pre03 h3 { font-size:24px; line-height:1.3em; padding:0 0 15px 60px; }
	#sec01 .pre03 .cir { position:absolute; top:50%; left:-26px; margin:-45px 0 0; height:80px; }
	#sec01 .tx_r { width:100%; padding:20px 0 0 0; position:static; top:0; right:0; }
	#sec01 .pre03 p span { font-size:12px; line-height:1.8em; display:inline-block; padding:5px 0 0; }
	#sec01 .pre03 .notes { width:auto; font-size:12px !important; position:static; }
	#sec01 .tx_r .pic-r { padding:20px 0 0; }
	#sec01 .pre03 .pic-box { margin:20px 0 0 0; padding:0 20px; }
	#sec01 .pre03 .pic { width:100%; }


	#sec02 { margin:0 0 60px; }
	#sec02 .inner { padding:0 20px; max-width: inherit; min-width: inherit; }
	#sec02 h2 { margin:0 0 30px; }
	#sec02 h3 { margin:0 0 20px; }
	#sec02 h3 img { width:100%; }
	#sec02 .block { position:relative; }
	.kazari01 { position:absolute; top:40px; left:-40px; margin:0; width:80px; }
	.kazari02 { position:absolute; top:50%; left:-20px; margin:0; width:50px; }
	.kazari03 { position:absolute; top: inherit; left: inherit; bottom:-26px; right:-10px; width:100px;}
	#sec02 .read { width:70%; margin:0 auto 15px; }
	#sec02 ul { margin:0; }
	#sec02 ul li { width:100%; }
	#sec02 ul li .pic { width:70%; margin:0 auto; }
	#sec02 ul li .list-inner { margin:0 0 30px; }
	#sec02 ul li .tx { width:auto; padding:0; }
	#sec02 ul li h4 { font-size:16px; padding:10px 0 5px; }
	#sec02 ul li p { font-size:13px;padding:0; }
	#sec02 ul li span { font-size:11px; }
	#sec02 ul img { margin:0 0 0 -10px; }
	#sec02 .btn-box { margin: 20px 0 0; }
	#sec02 .btn a span { font-size:13px; line-height:1.4em; margin:5px 0 0; display:inline-block; }
	.kazari04 { position:absolute; bottom:110px; left:50%; margin:0; width:50%; }
	.kazari05 { position:absolute; bottom:5px; left:5px; width:60px }
	.kazari06 { position:absolute; bottom:-20px; right:-22px; width:70px; }

#sec02 p { font-size:20px; }
#sec02 p.credit { font-size: 13px; padding: 0; margin: 20px 0 0; }

	#sec03 { padding:0 20px 40px; max-width: inherit; min-width: inherit; }
	#sec03 .pic { width:100%; text-align:center; }
	#sec03 .pic img { width:70%; }
	#sec03 .tx { width:100%; padding:10px 0 0; }
	#sec03 h3 { font-size:20px; padding:0 0 5px; }
	#sec03 h3 span { font-size:14px; }
	#sec03 p { font-size:14px; padding:0; }
	#sec03 .bn { margin:20px 0 0; } 
	#sec03 .bn img { width:100%; }
	#sec03 h4 { font-size:20px; font-weight:600; margin:30px 0 5px; }
	#sec03 .bnr-3 { margin:0; } 
	#sec03 .bnr-3 li { width:100%; margin:0 0 20px; }
	#sec03 .bnr-3 li .inner { margin:0; }


	.btn-back { padding: 30px 20px; }
	.btn-back a { font-size:14px; padding:15px 0; min-width:inherit; max-width:inherit; }
	.ar01 { position:absolute; top:50%; left:50%; margin:-8px 0 0 -95px; }
	
	/*220105*/
	.thanks { padding: 20px 0 40px }
	.thanks h3 { font-size: 18px; color: #d22d25 }
	.thanks .imgs { margin-top: 0 }
	.thanks img { margin-top: 18px; width: 100% }
	.thanks img:nth-child(1),.thanks img:nth-child(3) { margin-left: -5% }
	.thanks .imgs p { font-size: 12px }
}



@media screen and (max-width: 360px){
	#sec01 .pre02 h3 { font-size:23px; }
	#sec02 .btn a span { font-size:12px; line-height:1.4em; margin:5px 0 0; display:inline-block; }
	.kazari04 { position:absolute; bottom:105px; left:48%; margin:0; width:180px; }
	.kazari05 { position:absolute; bottom:5px; left:-5px; width:60px }
	.kazari06 { position:absolute; bottom:-20px; right:-22px; width:70px; }
}