@charset "utf-8";

@keyframes bounceInUp {
   0% { opacity: 0; -webkit-transform: translate3d(0, 125%, 0) scaleY(0.9); transform: translate3d(0, 125%, 0) scaleY(0.9); }
  50% { -webkit-transform: translate3d(0, -5%, 0) scaleY(0.97); transform: translate3d(0, -5%, 0) scaleY(0.97); }
  70% { -webkit-transform: translate3d(0, 5%, 0) scaleY(0.95); transform: translate3d(0, 5%, 0) scaleY(0.95); }
  85% { opacity: 1; -webkit-transform: translate3d(0, -2.5%, 0) scaleY(1); transform: translate3d(0, -2.5%, 0) scaleY(1); }
 100% { opacity: 1; -webkit-transform: translate3d(0, 0%, 0) scaleY(1); transform: translate3d(0, 0%, 0) scaleY(1);}
}



.bg-fix { position: fixed; left: 0; top: 0; width: 100%; height: 100vw; z-index: 1;}
.bg-fix div { position: absolute; left: 0; top: 0; width: 100%; height: 900px;}
.bg-fix div:before { content: ''; display: block; width: 100%; max-width: 1280px; height: 100%; margin: 0 auto;}
.bg-fix .bg-1:before { background: url('../img/jel/bg-1.jpg') no-repeat 50% 50% / cover;}
@media (max-width: 801px) {
	.bg-fix div { height: 100vh;}
	.bg-fix .bg-1:before { background: url('../img/jel/bg-1@sp.jpg') no-repeat 50% 50% / cover;}
}

.note { width: 100%;}
.note ul { width: 100%;}
.note ul li { font-size: 10px;}

.spacer { width: 100%; height: 80vh;}


#kv { position: relative; z-index: 10; background: #fab612; margin-bottom: -150px;}
#kv .inner-kv { position: relative; width: 100%; max-width: 1280px; margin: 0 auto;}
#kv .ctn { position: absolute; left: 0; top: 0; width: 100%; z-index: 10;}
#kv .ctn div { position: relative; width: 95%; margin: 0 auto; padding-top: 160px;}
/*
#kv .ctn div:after { content: ''; display: block; width: 90px; height: 130px;
 background: url('/img/awards/badge-no1-202409.png') no-repeat 50% 50% / 100% auto;
 position: absolute; right: 8%; top: 120px; opacity: 0; transition: 0.6s linear;
}
*/

#kv h1 { width: 50%; margin: 0 0 20px auto; text-align: center;}
#kv h1 img { position: relative; width: 50%; max-width: 110px; opacity: 0;}
#kv p { width: 50%; margin: 0 0 0 auto; text-align: center;}
#kv p img { position: relative; width: 60%; max-width: 350px; opacity: 0;}
#kv .bg-kv { position: relative; width: 100%; max-width: 1280px; margin: 0 auto; z-index: 1; background: #fff;}
#kv .bg-kv img { width: 100%;}
#kv .bg-kv img.sp { display: none;}

#kv.show .ctn div:after { opacity: 1;}

#kv.show h1 img {
 animation: bounceInUp 0.625s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
 -webkit-animation: bounceInUp 0.625s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
#kv.show p img {
 animation: bounceInUp 0.625s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
 -webkit-animation: bounceInUp 0.625s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
 animation-delay: 0.4s;
 -webkit-animation-delay: 0.4s;
}
@media (max-width: 1281px) {
	#kv .ctn div { padding-top: 12vw;}
	#kv .bg-kv .logo { padding-top: 12vw;}
}
@media (max-width: 801px) {
	#kv { margin-bottom: -18vw;}
	#kv .ctn div { padding-top: 8vw;}
	#kv .ctn div:after { width: 90px; height: 130px; right: auto; left: 8%;}

	#kv h1 { width: 100%; margin: 0 auto 8vw;}
	#kv h1 img { width: 24%;}
	#kv p { width: 100%; margin: 0 auto;}
	#kv p img { width: 80%;}

	#kv .bg-kv {}
	#kv .bg-kv img.pc { display: none;}
	#kv .bg-kv img.sp { display: block;}
}
@media (max-width: 641px) {
	#kv .bg-kv { margin: 0 auto -16vw;}
}
@media (max-width: 481px) {
	#kv { margin-bottom: -14vw;}
	#kv .ctn div { padding-top: 4vw;}
	#kv .ctn div:after { width: 64px; height: 92px; left: 5%; top: 30px;}
	#kv h1 { margin: 0 auto 2vw;}
}

#topics { position: relative; z-index: 3; width: 100%; max-width: 1280px; margin: 0 auto; background: url('../img/common/bg/tips.png') no-repeat 50% 50%;}
#topics .inner-sct { width: 94%; max-width: 1024px; margin: 0 auto; padding: 150px 0 36px;}
#topics .ctn-flex { display: flex; width: 100%; max-width: 860px; margin: 0 auto 16px;}
#topics .ctn-flex .box { width: 33%;}
#topics .ctn-flex .box dl { width: 98%; margin: 0 auto; text-align: center;}
#topics .ctn-flex .box dl dt { margin: 0 auto 20px;}
#topics .ctn-flex .box dl dt img { width: 90%; max-width: 210px;}
#topics .ctn-flex .box dl dd { font-size: 18px; font-weight: 700; line-height: 1.6;}
#topics .ctn-flex .box dl dd sub { font-size: 12px; vertical-align: baseline;}
#topics .note ul { max-width: 360px; margin: 0 0 0 auto;}
@media (max-width: 801px) {
	#topics { background: url('../img/common/bg/tips-sp.png') no-repeat 50% 0% / 100% auto;}
	#topics .inner-sct { padding: 22vw 0 10vw;}
	#topics .ctn-flex { display: block; margin: 0 auto 20px;}
	#topics .ctn-flex .box { display: block; width: 100%; padding: 4vw 0;}
	#topics .ctn-flex .box dl { display: table; width: 100%; margin: 0 auto;}
	#topics .ctn-flex .box dl dt,
	#topics .ctn-flex .box dl dd { display: table-cell; vertical-align: middle;}
	#topics .ctn-flex .box dl dt { width: 50%; margin: 0 auto;}
	#topics .ctn-flex .box dl dt img { width: 90%; max-width: 90%;}
	#topics .ctn-flex .box dl dd { width: auto; text-align: left;}
	#topics .note ul { max-width: 92%; margin: 0 auto;}
}
@media (max-width: 641px) {
	#topics {}
	#topics .ctn-flex .box dl dd { font-size: 3.4vw;}
}
@media (max-width: 481px) {
	#topics {}
	#topics .inner-sct { padding: 18vw 0 10vw;}
	#topics .ctn-flex .box { padding: 2vw 0;}
	#topics .ctn-flex .box dl dt { width: 48%;}
	#topics .ctn-flex .box dl dd { font-size: 14px;}
	#topics .ctn-flex .box dl dd sub { font-size: 10px;}
}


#lineup { position: relative; z-index: 2; width: 100%; max-width: 1280px; margin: 0 auto; background: #ffffe8;}
#lineup .inner-sct { padding: 0px 0 40px;}
#lineup .ttl { margin-bottom: 40px; padding: 40px 0 80px; background: url('../img/common/bg/ttl.png') no-repeat 50% 100%;}
#lineup .ttl h2 { text-align: center;}
#lineup .ttl h2 img { width: 30%; max-width: 170px;}
#lineup figure { text-align: center;}
#lineup figure img.sp { display: none;}

#lineup figure.main img { width: 90%; max-width: 780px;}
#lineup .ctn-flex { display: flex; justify-content: space-between; width: 92%; margin: 0 auto; padding: 20px 0 70px;}
#lineup .ctn-flex .box { position: relative; width: 32%;}
#lineup .box .inner { position: relative;}
#lineup .box figure { position: relative; z-index: 1;}
#lineup .box figure img { width: 100%;}
#lineup .box ul { position: absolute; left: 0; bottom: 60px; width: 100%; z-index: 2; text-align: center;}
#lineup .box ul li { padding: 4px;}
#lineup .box ul li a { display: block; width: 72%; max-width: 200px; margin: 0 auto; padding: 6px 0; border-radius: 8px; color: #fff; font-size: 15px; font-weight: 700; text-decoration: none;}
#lineup .box ul.btn-1 li a { background: #ffa233;}
#lineup .box ul.btn-2 li a { background: #ff96a3;}
#lineup .box ul.btn-3 li a { background: #66c7dc;}
#lineup .box ul.btn-4 li a { background: #a9cd00;}
#lineup .box ul li a svg { display: inline-block; width: 18px; margin-right: 6px; fill: #fff; vertical-align: middle;}
#lineup .box ul li a span{ display: inline-block; vertical-align: middle;}
#lineup .box ul li.note { color: #673918; font-size: 9px;}
#lineup .box ul li a:hover { opacity: 0.8;}
#lineup .sp-ctn { display: none;}

#lineup .box ul li form { position: relative; display: block; width: 72%; max-width: 200px; margin: 0 auto;}
#lineup .box ul li form input[type="submit"] { position: relative; display: block; width: 100%; margin: 0 auto; padding: 6px 0; border-radius: 8px; border: none;
 color: #fff; font-size: 15px; font-weight: 700; text-indent: 20px; z-index: 1;
}
#lineup .box ul.btn-1 li form input[type="submit"] { background: #ffa233;}
#lineup .box ul.btn-2 li form input[type="submit"] { background: #ff96a3;}
#lineup .box ul.btn-3 li form input[type="submit"] { background: #66c7dc;}
#lineup .box ul.btn-4 li form input[type="submit"] { background: #a9cd00;}
#lineup .box ul li form svg { display: block; width: 18px; fill: #fff; position: absolute; left: 50%; top: 50%; transform: translate(-70px,-50%); z-index: 2;}

@media (max-width: 1281px) {
	#lineup .box ul { bottom: 3.5vw;}
}
@media (max-width: 1001px) {
	#lineup .box ul li a { padding: 4px 0; font-size: 1.4vw;}
	#lineup .box ul li.note { font-size: 10px;}
}
@media (max-width: 801px) {
	#lineup .ttl { margin-bottom: 20px; padding: 4vw 0 10vw; background: url('../img/common/bg/ttl-sp.png') no-repeat 50% 100% / 100% auto;}
	#lineup figure img.pc { display: none;}
	#lineup figure img.sp { display: block; margin: 0 auto;}
	#lineup .ctn-flex { display: none;}
	#lineup .sp-ctn { display: block; width: 100%; padding: 40px 0;}
	#lineup .box ul { bottom: 3.8vw;}
	#lineup .box ul li a { padding: 8px 0; font-size: 2.0vw;}
}
@media (max-width: 481px) {
	#lineup .ttl { padding: 2.5vw 0 10vw;}
	#lineup .box ul { bottom: 18px;}
	#lineup .box ul li a { padding: 5px 0; font-size: 12px;}
	#lineup .box ul li a svg { width: 16px;}
	#lineup .box ul li form input[type="submit"] { font-size: 12px;}
	#lineup .box ul li form svg {  width: 16px; transform: translate(-52px,-50%); }
	#lineup .box ul li.note { min-height: 3em; padding: 0 30px; line-height: 1.4;}
}


