@charset "UTF-8";
/*=======================================================
mv
=======================================================*/
.ly-mv {
	margin-top: -36px;
}
.bl-mv {
	padding: 200px 0 146px;
}
.bl-mv-hgroup {
	display: grid;
	gap: 24px;
	position: relative;
	z-index: 7;
}
.bl-mv-hgroup-txt {
	display: grid;
	gap: 24px;
	overflow: hidden;
}
.bl-mv-hgroup-txt-unit {
	opacity: 0;
	overflow: hidden;
	/* transform: translateY(30px); */
	/* animation: fadeSlideUp 1s ease-out forwards; */
}
.bl-mv-hgroup-txt-unit:first-of-type {
	width: 620px;
	animation-delay: 0.5s;
}
.bl-mv-hgroup-txt-unit:first-of-type > img{
	animation-delay: 0.5s;
}
.bl-mv-hgroup-txt-unit:nth-of-type(2) {
	width: 1010px;
	animation-delay: 1s;
}
.bl-mv-hgroup-txt-unit:nth-of-type(2) > img{
	animation-delay: 1s;
}
.bl-mv-hgroup-ttl {
	opacity: 0;
	transform: translateY(30px);
	animation: fadeSlideUp 1s ease-out forwards;
	padding: 2px 19px 4px;
	background: linear-gradient(to right, #50CFF5, #1C84D1, #145EB4);
	font-size: 33px;
	color: #fff;
	line-height: calc(48/33);
	justify-self: start;
	animation-delay: 1.5s;
}
.bl-mv-line {
	display: flex;
	position: absolute;
	left: -488px;
	width: 2000px;
}
.bl-mv-line.sp{
	display: none;
}
.bl-mv-line.--01 {
	bottom: 26px;
	height: 528px;
	z-index: 2;
}
.bl-mv-line.--01 .bl-mv-line-path {
	animation-delay: 0s, 3s;
}
.bl-mv-line.--02 {
	bottom: 134px;
	height: 574px;
	z-index: 3;
}
.bl-mv-line.--02 .bl-mv-line-path {
	animation-delay: 0.5s, 3s;
}
.bl-mv-line.--03 {
	bottom: 20px;
	height: 578px;
	z-index: 5;
}
.bl-mv-line.--03 .bl-mv-line-path {
	stroke: #ffde38;
	stroke-width: 40;
	animation-delay: 1s, 3s;
}
.bl-mv-line.--fixed {
	opacity: 0;
	animation: fadein 3s ease forwards;
	animation-delay: 3s;
}
.bl-mv-line.--fixed.--01 {
	bottom: 3px;
	height: 528px;
	z-index: 2;
}
.bl-mv-line.--fixed.--01 .bl-mv-line-path {
	animation-delay: 0s, 3s;
}
.bl-mv-line.--fixed.--02 {
	bottom: 154px;
	height: 574px;
	z-index: 3;
}
.bl-mv-line.--fixed.--02 .bl-mv-line-path {
	animation-delay: 0.5s, 3s;
}
.bl-mv-line.--fixed.--03 {
	bottom: 0;
	height: 578px;
	z-index: 5;
}
.bl-mv-line.--fixed.--03 .bl-mv-line-path {
	stroke: #ffde38;
	stroke-width: 40;
	animation-delay: 1s, 3s;
}
.bl-mv-line-path {
	fill: none;
	animation: draw 2s linear forwards, fadeout 3s ease forwards;
}
.bl-mv-line-path.--green,
.bl-mv-line-path.--yellow{
	animation: draw 1s linear forwards, fadeout 3s ease forwards;
}
.bl-mv-img {
	display: flex;
	position: absolute;
	opacity: 0;
	transform: translateX(-30px);
	animation: fadeSlideIn 1s ease-out forwards;
}
.bl-mv-img.--01 {
	width: 636px;
	top: 177px;
	left: -488px;
	z-index: 6;
	animation-delay: 2s;
}
.bl-mv-img.--02 {
	width: 482px;
	top: 87px;
	right: -322px;
	animation-delay: 2.5s;
}
.bl-mv-img.--03 {
	width: 280px;
	top: 407px;
	right: -488px;
	z-index: 4;
	animation-delay: 3s;
}
@keyframes draw {
	to {
		stroke-dashoffset: 0;
	}
}
@keyframes fadein {
	to {
		opacity: 1;
	}
}
@keyframes fadeout {
	to {
		opacity: 0;
	}
}
@keyframes fadeSlideUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes fadeSlideIn {
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.upAnimeInner01{
	display: block;
}
.slideAnimeDownUp01 {
	opacity: 0;
	animation: slideTextX100 1s ease-in 0.5s forwards;
}
@keyframes slideTextX100 {
	from {
		transform: translateX(100%); 
		opacity: 0;
	}
	to {
		transform: translateX(0);
		opacity: 1;
	}
}
.slideAnimeUpDown01 {
	opacity: 0;
	animation: slideTextX-100 1s ease-in 0.5s forwards;
}
@keyframes slideTextX-100 {
	from {
		transform: translateX(-100%);
		opacity: 0;
	}
	to {
		transform: translateX(0); 
		opacity: 1;
	}
}
@media screen and (max-width: 750px){
	.ly-mv {
		margin-top: 0;
	}
	.bl-mv {
		padding: 426px 0 362px;
		width: 100%;
	}
	.bl-mv-hgroup{
		padding-left: 24px;
	}
	.bl-mv-hgroup-txt {
		gap: 16px;
	}
	.bl-mv-hgroup-txt-unit:first-of-type {
		width: 424px;
	}
	.bl-mv-hgroup-txt-unit:nth-of-type(2) {
		width: 690px;
	}
	.bl-mv-hgroup-ttl {
		padding: 8px 18px 0;
		font-size: 32px;
		width: 680px;
		height: 64px;
		letter-spacing: 1.28px;
	}
	.bl-mv-line {
		left: 0;
		width: 750px;
	}
	.bl-mv-line.pc{
		display: none;
	}
	.bl-mv-line.sp{
		display: block;
	}
	.bl-mv-line.--01 {
		bottom: 0;
		height: 528px;
	}
	.bl-mv-line.--02 {
		bottom: 424px;
		height: 568px;
	}
	.bl-mv-line.--03 {
		bottom: 326px;
		height: 486px;
	}
	.bl-mv-line.--fixed.--01 {
		bottom: 0;
		height: 528px;
	}
	.bl-mv-line.--fixed.--02 {
		bottom: 444px;
		height: 568px;
	}
	.bl-mv-line.--fixed.--03 {
		bottom: 326px;
		height: 486px;
	}
	.bl-mv-img.--01 {
		width: 450px;
		top: 32px;
		left: inherit;
		right: -30px;
		z-index: 4;
	}
	.bl-mv-img.--02 {
		width: 450px;
		top: inherit;
		right: inherit;
		bottom: 0;
		left: -30px;
		z-index: 6;
	}
	.bl-mv-img.--03 {
		display: none;
	}
}
/*=======================================================
save
=======================================================*/
.bl-save{
	padding: 64px 0 56px;
	z-index: 2;
}
.bl-save-item{
	padding: 0 88px;
	position: relative;
}
.bl-save-item:not(:first-of-type){
	margin-top: 56px;
}
.bl-save-item::before {
	content: '';
	position: absolute;
	background: #FFDE38;
	width: 8px;
	height: 100%;
	left: 0;
	top: 0;
	transform: scaleY(0);
	transition: transform 0.8s ease;
	transform-origin: top;
}
.bl-save-item.is-active::before {
	transform: scaleY(1);
}
.bl-save-item:nth-of-type(even)::before {
	left: inherit;
	right: 56px;
}
.bl-save-item::after{
	content: '';
	position: absolute;
	background: url(../images/top/save.svg) top center / 50px 174px no-repeat,
		url(../images/top/284.svg) top 198px center / 50px 138px no-repeat;
	width: 50px;
	height: 100%;
	top: 0;
	left:16px;
}
.bl-save-item:nth-of-type(2)::after{
	content: '';
	position: absolute;
	background: url(../images/top/save.svg) top center / 50px 174px no-repeat,
		url(../images/top/your-life.svg) top 198px center / 50px 366px no-repeat;
	width: 50px;
	height: 100%;
	left: inherit;
	right:0;
}
.bl-save-item .hp-marker--yellow{
	  background: linear-gradient(transparent 55%, #FFDE38 45%);
}
.bl-save .el-save-ttl{
	font-size: 32px;
	text-align: center;
	line-height: 1.44;
	margin: 24px 0 16px;
}
.bl-save .el-label-ttl{
	position: absolute;
	top: 24px;
	right: 0;
}
.bl-save-item:first-of-type .el-label-ttl{
	text-align: right;
}
.bl-save-item:nth-of-type(even) .el-label-ttl{
	right: inherit;
	left: 0;
}
.el-save-txt:not(:first-of-type){
	margin-top: 1.3em;
}
@media screen and (max-width: 750px){
	.bl-save{
		padding: 32px 0 64px;
	}
	.bl-save-item{
		padding: 124px 0 0;
	}
	.bl-save-item::before {
		width: 100%;
		height: 8px;
		top: 74px;
	}
	.bl-save-item:nth-of-type(even)::before {
		right: 0;
	}
	.bl-save-item::after{
		background: url(../images/top/save-sp.svg) top left / 174px 50px no-repeat,
			url(../images/top/284-sp.svg) top left 198px / 138px 50px no-repeat;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
	}
	.bl-save-item:nth-of-type(2)::after{
		background: url(../images/top/save-sp.svg) top left / 174px 50px no-repeat,
			url(../images/top/your-life-sp.svg) top left 198px / 366px 50px no-repeat;
		width: 100%;
		height: 100%;
		left: 0;
	}
	.bl-save-img-wrapper{
		width: 660px;
	}
	.bl-save-img-wrapper > img{
		height: 344px;
	}
	.bl-save .el-save-ttl{
		font-size: 36px;
		line-height: 1.5;
		margin: 32px 0 24px;
	}
	.bl-save .el-label-ttl{
		text-align: right;
		top: 140px;
		right: 0;
	}
	.bl-save-item:nth-of-type(even) .el-label-ttl{
		left: inherit;
		right: 0;
	}
	.bl-save-item .el-label-ttl.middle > span{
		font-size: 28px;
	}
}

/*=======================================================
about
=======================================================*/
.bl-about{
	background: #F5F5F5;
	padding: 56px 0;
	position: relative;
}
.bl-about::before{
	content: '';
	position: absolute;
	background: url(../images/top/about-bg.svg) top center / contain no-repeat;
	width: 2000px;
	height: 1220px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.bl-about .ly-cont-inner::after{
	content: '' ;
	position: absolute;
	background: url(../images/top/about-track.png) top center / contain no-repeat;
	width: 620px;
	height: 480px;
	bottom: 100px;
	right: -440px;
}
.bl-about .el-main-ttl{
	margin-bottom: 16px;
}
.bl-about-video{
	display: block;
	width: 848px;
	margin: 32px auto 0;
	position: relative;
}
@media screen and (max-width: 750px){
	.bl-about{
		padding: 64px 0;
	}
	.bl-about::before{
		background: url(../images/top/about-bg-sp.svg) top center / contain no-repeat;
		width: 750px;
		height: 540px;
		top: inherit;
		bottom: -196px;
	}
	.bl-about .ly-cont-inner::after{
		background: url(../images/top/about-track.png) top center / contain no-repeat;
		width: 232px;
		height: 186px;
		bottom: 130px;
		right: 20px;
	}
	.bl-about .el-main-ttl{
		margin-bottom: 48px;
	}
	.bl-about-video{
		width: 100%;
	}
	.bl-about .el-btn{
		margin-top: 120px;
	}
}

/*=======================================================
works
=======================================================*/
.bl-works{
	padding: 64px 0;
}
.bl-works .ly-cont-inner{
	display: flex;
	flex-direction: column;
}
.bl-works-img-wrapper{
	width: 1264px;
	margin-left: -240px;
	z-index: -1;
}
.bl-works-body{
	width: 1264px;
	padding: 46px 128px 56px;
	margin: -100px 0 0 250px;
	position: relative;
}
.ly-works-body-inner{
	width: 646px;
	margin-top: -74px;
}
.bl-works-body::before{
	content: '';
	position: absolute;
	background: #F5F5F5;
	width: 1264px;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	z-index: -1;
}
.el-works-txt{
	width: 646px;
}
.bl-works .el-btn{
	margin: 40px 0 0 auto;
	z-index: 2;
}
@media screen and (max-width: 750px){
	.bl-works{
		padding: 0;
	}
	.bl-works-img-wrapper{
		width: 750px;
		margin-left: -30px;
	}
	.bl-works-body{
		width: 100%;
		padding: 56px 30px 78px;
		margin: -66px auto 0;
	}
	.ly-works-body-inner{
		width: 630px;
		margin-top: -90px;
	}
	.bl-works-body::before{
		content: '';
		position: absolute;
		background: #F5F5F5;
		width: 1264px;
		width: 100%;
		height: 100%;
		top: 0;
		right: 0;
		z-index: -1;
	}
	.el-works-txt{
		width: 646px;
	}
	.bl-works .el-btn{
		margin: 32px auto 0 ;
		z-index: 2;
	}
}

/*=======================================================
interview
=======================================================*/
.bl-interview{
	padding-bottom: 88px;
}
.bl-interview .ly-cont-inner::before{
	content: '';
	position: absolute;
	width: 1783px;
	height: calc(100% + 32px);
	background: #F5F5F5;
	top: 31px;
	right: -270px;
	z-index: -1;
}
.bl-interview-list{
	margin-top: 32px;
}
@media screen and (max-width: 750px){
	.bl-interview{
		padding: 56px 0 64px;
	}
	.bl-interview .ly-cont-inner::before{
		width: 690px;
		height: 255px;
		top: 31px;
		right: inherit;
		left: -;
		z-index: -1;
	}
	.bl-interview .el-txt{
		padding: 0 30px;
	}
	.bl-interview-list{
		width: 750px;
		margin-top: 64px;
		margin-left: -30px;
		gap: 0;
	}
	.bl-interview-item{
		margin: 0 16px;
	}
	/* .slick-list.draggable{
		padding: 0!important;
	}
	.bl-interview-item{
		margin-right: 32px;
		width: 320px!important;
		height: auto;
	} */
	/* arrow */
	.slick-prev,
	.slick-next{
		width: 80px;
		height: 80px;
		border-radius: 80px;
		right: 0!important;
		top: 195px!important;
		z-index: 2;
	}
	.slick-prev{
		right: inherit;
		left: 0!important;
	}
	.slick-prev::before,
	.slick-next::before{
		content: ''!important;
		position: absolute;
		background: url(../images/top/arrow-btn.svg) top center / contain no-repeat;
		width: 80px;
		height: 80px;
		top: -92px;
		left: 0;
		opacity: 1!important;
	}
	.slick-next::before{
		transform: rotate(180deg);
		left: inherit;
		right: 0;
	}
}
/*=======================================================
number
=======================================================*/
.bl-number{
	padding: 64px 0;
}
.bl-number-list{
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
}
.bl-number-item{
	width: 320px;
	border-radius: 8px;
	background: #309CEB;
	color: #fff;
	padding: 24px 12px 16px;
	position: relative;
}
.bl-number-item:nth-of-type(even){
	background: #FFDE38;
	color: #222;
}
.bl-number-item:nth-of-type(7) {
	padding-bottom: 32px;
}
.bl-number-item dt{
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	margin-bottom: 16px;
	position: relative;
}
.bl-number-item dd{
	padding-top: 140px;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	position: relative;
}
.bl-number-item:nth-of-type(7) dd{
	display: flex;
	align-items: flex-end;
	padding-top: 156px;
}
.bl-number-item:nth-of-type(7) dd > span{
	line-height: 1;
}
.bl-number-item dd::before{
	content: '';
	position: absolute;
	background: url(../images/top/num-illust01.svg) top center / contain no-repeat #fff;
	width: 140px;
	height: 140px;
	border-radius: 140px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.bl-number-item:nth-of-type(2) dd::before{
	background: url(../images/top/num-illust02.svg) top center / contain no-repeat #fff;
}
.bl-number-item:nth-of-type(3) dd::before{
	background: url(../images/top/num-illust03.svg) top center / contain no-repeat #fff;
}
.bl-number-item:nth-of-type(4) dd::before{
	background: url(../images/top/num-illust04.svg) top center / contain no-repeat #fff;
}
.bl-number-item:nth-of-type(5) dd::before{
	background: url(../images/top/num-illust05.svg) top center / contain no-repeat #fff;
}
.bl-number-item:nth-of-type(6) dd::before{
	background: url(../images/top/num-illust06.svg) top center / contain no-repeat #fff;
}
.bl-number-item:nth-of-type(7) dd::before{
	background: url(../images/top/num-illust07.svg) top center / contain no-repeat #fff;
}
.bl-number-item dd span{
	font-size: 96px;
	letter-spacing: 5.76px;
	color: #FFDE38;
}
.bl-number-item:nth-of-type(even) dd span{
	color: #309CEB;
}
.bl-number-item .hp-small{
	font-size: 26px;
	letter-spacing: 1.56px;
	color: #222!important;
}
.bl-number-item:last-of-type .hp-small{
	color: #fff!important;
}
@media screen and (max-width: 750px){
	.bl-number{
		padding: 72px 0 64px;
	}
	.bl-number-list{
		gap: 24px;
	}
	.bl-number-item{
		width: 100%;
		border-radius: 12px;
		padding: 32px 72px;
	}
	.bl-number-item:nth-of-type(4){
		padding-right: 30px;
	}
	.bl-number-item:nth-of-type(7){
		padding-right: 30px;
	}
	.bl-number-item dt{
		font-size: 36px;
		letter-spacing: 2.16px;
	}
	.bl-number-item dd{
		padding: 0 0 0 283px;
		font-size: 40px;
	}
	.bl-number-item dd::before{
		width: 200px;
		height: 200px;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
	}
	.bl-number-item:nth-of-type(4) dd{
		padding-left: 240px;
	}
	.bl-number-item:nth-of-type(7) dd{
		justify-content: flex-end;
		padding: 22px 0 32px 200px;
	}
	.bl-number-item:nth-of-type(7) dd > span{
		/* line-height: 1.6; */
	}
	.bl-number-item dd span{
		font-size: 135px;
		letter-spacing: 6px;
	}
}
/*=======================================================
cta
=======================================================*/
.bl-cta {
	padding: 152px 0 170px;
	background: url(../images/common/cta-bg.png) top center / cover no-repeat;
	position: relative;
}
.bl-cta::before{
	content: '';
	position: absolute;
	background: #F5F5F5;
	width: 100%;
	height: calc(100% - 166px);
	top: 94px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
/*=======================================================
info
=======================================================*/
.bl-info{
	padding: 48px 0 56px;
	background: #F5F5F5;
}
@media screen and (max-width: 750px){
	.bl-info{
		padding: 72px 0;
	}
}
