@charset "utf-8";
#loading {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 200;
	pointer-events: none;
}
	.loading__mask {
		width: 100%;
		height: 100%;
		/* background: linear-gradient(40deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,0) 100%); */
		background: linear-gradient(40deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 30%, rgba(255,255,255,0) 100%);
		/* background: linear-gradient(40deg, rgba(116,14,36,0) 0%, rgba(116,14,36,0) 30%, rgba(116,14,36,0) 70%, rgba(195,16,56,1) 100%); */
		/* background: linear-gradient(40deg, rgba(17,16,20,1) 0%, rgba(17,16,20,1) 30%, rgba(17,16,20,0) 70%, rgba(17,16,20,0) 100%); */
		/* background: linear-gradient(40deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,0) 100%); */
		background-size: 1600% 100%;
	}
	.loaded .loading__mask {
		animation: loaded_fade 3s ease forwards;
	}
	@keyframes loaded_fade {
		0%{
			background-position: 0% 50%
		}
		100%{
			background-position: 100% 50%
		}
	}

#hero {
	width: 100%;
	height: 100vh;
	background-color: var(--color--white);
	overflow: hidden;
	position: relative;
}
	.hero__inner {
		width: 100%;
		height: 100%;
		position: relative;
		z-index: 2;
	}
		.hero__bg {
			width: 100%;
			height: 100%;
			opacity: .8;
			position: absolute;
			top: 50%;
			left: 0;
			transform: translate(0%,-50%);
			z-index: 1;
		}
			.hero__bg::before,
			.hero__bg::after {
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;	
				position: absolute;
				top: 0;
				left: 0;
			}
			.hero__bg::before {
				background-image: url('../image/index/hero-bg_01@pc.webp');
				opacity: .2;
				z-index: 2;
			}
			.hero__bg::after {
				background-image: url('../image/index/hero-bg_02@pc.webp');
				opacity: .8;
				z-index: 1;
			}
		.hero__contents {
			width: auto;
			height: auto;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%,-50%);
			z-index: 2;
		}
			.hero__obj {
				width: 290px;
				height: 290px;
				margin: 0 auto -166px;
				position: relative;
				z-index: 1;
			}
				.hero__obj__sun {
					width: 100%;
					height: 100%;
					border-radius: 9999px;
					/* background: var(--color--red_gradient01); */
					/* background: linear-gradient(40deg, rgba(116,14,36,0) 22%, rgba(195,16,56,1) 100%); */
					background: linear-gradient(40deg, rgba(116,14,36,0) 0%, rgba(116,14,36,0) 68%, rgba(195,16,56,1) 100%);
					background-size: 400% 100%;
					transition: 1.2s;
					transition-delay: .6s;
					opacity: 0;
					/* transform: translate(0%,20px); */
				}
				.show .hero__obj__sun {
					opacity: 1;
					animation: show_sun 2s ease .2s forwards;
					/* transform: translate(0%,0px); */
				}
				@keyframes show_sun {
					0%{
						background-position: 25% 50%
					}
					100%{
						background-position: 100% 50%
					}
				}
					.hero__obj__sun__texture {
						width: 100%;
						height: 100%;
						border-radius: 9999px;
						opacity: .57;
						mix-blend-mode: hard-light;
					}
			.hero__logo {
				width: 278px;
				height: auto;
				margin: 0 auto;
				position: relative;
				z-index: 2;
				transition: .8s;
				opacity: 0;
				transform: translate(0%,10px);
			}
			.show .hero__logo {
				opacity: 1;
				transform: translate(0%,0px);
			}
		.hero__wave {
			width: 100%;
			height: calc((300 / 802) * 100vh);
			mix-blend-mode: multiply;
			position: absolute;
			bottom: 0;
			left: 0;
		}
		.hero__wave._01 {
			z-index: 3;
		}
		.hero__wave._02 {
			z-index: 2;
		}
			.hero__wave img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center top;
				transition: 1.2s;
				opacity: 0;
				transform: translate(0%,20px);	
			}
			.show .hero__wave._01 img {
				transition-delay: 1.2s;
				opacity: 1;
				transform: translate(0%,0px);
			}
			.show .hero__wave._02 img {
				transition-delay: 1.6s;
				opacity: .4;
				transform: translate(0%,0px);
			}

#about {
	width: 100%;
	height: auto;
	padding: calc((200 / 1280) * 100vw) 0 calc((405 / 1280) * 100vw);
	background-color: var(--color--black);
	overflow: hidden;
	position: relative;
	z-index: 1;
}
	#about::after {
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		background-image: url('../image/index/about-texture@pc.webp');
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		opacity: .2;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.about__obj {
		width: auto;
		height: 100%;
		mix-blend-mode: hard-light;
		position: absolute;
		top: 0;
		right: calc((192 / 1280) * -100%);
		z-index: 2;
		opacity: 0;
		transition: 1.2s;
	}
	.run.about__obj {
		opacity: .1;
	}
		.about__obj img {
			width: auto;
			height: 100%;
		}
	.about__inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: calc((1000 / 1280) * 100%);
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 3;
	}
		.about__copy {
			width: 50%;
			height: auto;
		}
			.about__sun {
				/* width: 200px; */
				width: calc((200 / 1280) * 100vw);
				height: auto;
				position: absolute;
				/* top: -112px;
				left: -35px; */
				top: calc((112 / 1280) * -100vw);
				left: calc((35 / 1280) * -100vw);
				z-index: 1;
				opacity: 0;
				transition: 1.2s;
			}
			.run.about__sun {
				opacity: 1;
			}
			.about__copy__txt {
				width: calc((234 / 1280) * 100vw);
				height: auto;
				margin: 0 auto;
				/* font-size: 45px; */
				font-size: calc((45 / 1280) * 100vw);
				font-weight: 400;
				line-height: 1.9;
				letter-spacing: 0.2em;
				color: var(--color--white);
				-webkit-writing-mode: vertical-rl;
				-moz-writing-mode: vertical-rl;
				-ms-writing-mode: tb-rl;
				-ms-writing-mode: vertical-rl;
				writing-mode: vertical-rl;
				position: relative;
				z-index: 2;
			}
				.about__copy__txt span {
					display: inline-block;
					opacity: 0;
					transform: translate(0%,20px);
					transition: .8s;
				}
				.run.about__copy__txt span {
					opacity: 1;
					transform: translate(0%,0px);
				}
				.about__copy__txt span:nth-of-type(1) { transition-delay: .0s;}
				.about__copy__txt span:nth-of-type(2) { transition-delay: .1s;}
				.about__copy__txt span:nth-of-type(3) { transition-delay: .2s;}
				.about__copy__txt span:nth-of-type(4) { transition-delay: .3s;}
				.about__copy__txt span:nth-of-type(5) { transition-delay: .4s;}
				.about__copy__txt span:nth-of-type(6) { transition-delay: .5s;}
				.about__copy__txt span:nth-of-type(7) { transition-delay: .6s;}
				.about__copy__txt span:nth-of-type(8) { transition-delay: .7s;}
				.about__copy__txt span:nth-of-type(9) { transition-delay: .8s;}
				.about__copy__txt span:nth-of-type(10) { transition-delay: .9s;}
				.about__copy__txt span:nth-of-type(11) { transition-delay: 1s;}
				.about__copy__txt span:nth-of-type(12) { transition-delay: 1.1s;}
				.about__copy__txt span:nth-of-type(13) { transition-delay: 1.2s;}
				.about__copy__txt span:nth-of-type(14) { transition-delay: 1.3s;}
				.about__copy__txt span:nth-of-type(15) { transition-delay: 1.4s;}
				.about__copy__txt span:nth-of-type(16) { transition-delay: 1.5s;}
				.about__copy__txt span:nth-of-type(17) { transition-delay: 1.6s;}
				.about__copy__txt span:nth-of-type(18) { transition-delay: 1.7s;}
				.about__copy__txt span:nth-of-type(19) { transition-delay: 1.8s;}
				.about__copy__txt span:nth-of-type(20) { transition-delay: 1.9s;}
		.about__contents {
			width: 50%;
			height: auto;
			/* padding: 38px 0 0; */
			padding: calc((38 / 1280) * 100vw) 0 0;
		}
			.about__heading {
				width: 100%;
				height: auto;
				/* margin: 0 auto 22px; */
				margin: 0 auto calc((22 / 1280) * 100vw);
				/* font-size: 16px; */
				font-size: calc((16 / 1280) * 100vw);
				font-weight: 500;
				line-height: calc(24 / 16);
				letter-spacing: 0.02em;
				color: var(--color--white);
			}
			.about__details {
				width: 100%;
				height: auto;
			}
				.about__details dt {
					width: 100%;
					height: auto;
					/* margin: 0 auto 46px; */
					margin: 0 auto calc((46 / 1280) * 100vw);
					/* font-size: 32px; */
					font-size: calc((32 / 1280) * 100vw);
					font-weight: 400;
					line-height: calc(54 / 32);
					letter-spacing: 0.2em;
					color: var(--color--white);
					white-space: nowrap;
				}
				.about__details dd {
					width: 100%;
					height: auto;
					/* font-size: 14px; */
					font-size: calc((14 / 1280) * 100vw);
					font-weight: 400;
					line-height: calc(30 / 14);
					letter-spacing: 0.2em;
					color: var(--color--white);
				}

#business {
	width: 100%;
	height: auto;
	margin: calc((106 / 1280) * -100vw) auto 0;
	position: relative;
	z-index: 2;
}
	.business__obj {
		width: calc((559 / 1280) * 100%);
		height: auto;
		position: absolute;
		top: calc((544 / 1280) * -100vw);
		left: 0;
		z-index: 2;
		opacity: 0;
		transition: 1.2s;
	}
	.run.business__obj {
		opacity: 1;
	}
	.business__wrap {
		width: 100%;
		height: auto;
		padding: calc((208 / 1280) * 100vw) 0 calc((130 / 1280) * 100vw);
		overflow: hidden;
		position: relative;
	}
		.business__bg {
			width: calc(100% + calc((212 / 1280) * 100%));
			height: 100%;
			margin-left: calc((106 / 1280) * -100%);
			margin-right: calc((106 / 1280) * -100%);
			background-color: var(--color--white);
			border-top-left-radius: 50% calc((212 / 1280) * 100vw);
			border-top-right-radius: 50% calc((212 / 1280) * 100vw);
			overflow: hidden;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
			.business__bg::before,
			.business__bg::after {
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				top: 0;
				left: 0;
			}
			.business__bg::before {
				background-image: url('../image/index/business-texture_01@pc.webp');
				opacity: .2;
				z-index: 1;
			}
			.business__bg::after {
				background-image: url('../image/index/business-texture_02@pc.webp');
				opacity: .6;
				z-index: 2;
			}
		.business__inner {
			width: calc((1000 / 1280) * 100%);
			height: auto;
			margin: 0 auto;
			position: relative;
			z-index: 2;
		}
			#business .section_heading {
				margin-bottom: 76px;
				/* margin-bottom: calc((76 / 1280) * 100vw); */
				position: relative;
				z-index: 2;
			}
				.business__heading__obj {
					width: 161.77px;
					height: auto;
					aspect-ratio: 161.77 / 136.11;
					clip-path: path('M161.767,91.185a47.949,47.949,0,0,1-68.63,40.187,48.458,48.458,0,0,1-12.082-8.379c-7.273-6.9-16.381-11.714-26.378-12.46-1.332-.1-2.673-.15-4.031-.15A52.789,52.789,0,0,0,31.9,113.775a53.933,53.933,0,0,0,13.6-11.648,53.47,53.47,0,0,0,12.415-34.3A53.588,53.588,0,0,0,4.318,14.269q-2.207,0-4.318.191A114.172,114.172,0,0,1,56.055,0c47.769,0,88.179,28.634,101.3,67.955a86.591,86.591,0,0,1,4.416,23.23');
					position: absolute;
					top: -100px;
					left: 50%;
					transform: translate(-50%,0%);
					z-index: -1;

				}
				.run .business__heading__obj {
					opacity: 1;
				}
					.business__heading__obj__bg {
						width: 100%;
						height: 100%;
						background: linear-gradient(0deg, rgba(116,14,36,0) 0%, rgba(116,14,36,0) 75%, rgba(195,16,56,1) 100%);
						background-size: 100% 400%;
						background-position: 0% 100%;
						position: relative;
						z-index: 1;
					}
					.run .business__heading__obj__bg {
						animation: business_heading_obj_bg 1.4s ease .25s forwards;
					}
					@keyframes business_heading_obj_bg {
						0%{
							background-position: 0% 100%
						}
						100%{
							background-position: 0% 0%
						}
					}
					.business__heading__obj img {
						width: 100%;
						height: auto;
						mix-blend-mode: hard-light;
						position: absolute;
						top: 0;
						left: 0;
						z-index: 2;
						opacity: 0;
						transition: 1.2s;
						transition-delay: .6s;
					}
					.run .business__heading__obj img {
						opacity: .57;
					}
			.business__list {
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				width: 100%;
				height: auto;
				counter-reset: number 0;
			}
				.business__list__item {
					width: calc((236 / 1000) * 100%);
					height: auto;
					aspect-ratio: 236 / 354;
					border-top-left-radius: 50% calc((236 / 354) * 50%);
					border-top-right-radius: 50% calc((236 / 354) * 50%);
					background: var(--color--red_gradient02);
					overflow: hidden;
					border: solid 1px var(--color--navy);
					position: relative;
					opacity: 0;
					transform: translate(0%,20px);
					transition: 1.2s;
				}
				.run.business__list__item {
					opacity: 1;
					transform: translate(0%,0px);
				}
				.business__list__item:nth-of-type(1) { transition-delay: .0s;}
				.business__list__item:nth-of-type(2) { transition-delay: .1s;}
				.business__list__item:nth-of-type(3) { transition-delay: .2s;}
				.business__list__item:nth-of-type(4) { transition-delay: .3s;}
					.business__list__item::before {
						content: '';
						display: block;
						width: 100%;
						height: 100%;
						background-image: url('../image/index/business-list_item_texture.webp');
						background-position: center;
						background-repeat: no-repeat;
						background-size: cover;
						opacity: .3;
						mix-blend-mode: hard-light;
						position: absolute;
						top: 0;
						left: 0;
						z-index: 1;
					}
					.business__list__item__inner {
						display: flex;
						flex-direction: column;
						justify-content: flex-start;
						width: 100%;
						height: 100%;
						padding: 0;
						position: relative;
						z-index: 2;
					}
						.business__list__item__head {
							width: 100%;
							height: auto;
							position: absolute;
							top: calc((23 / 354) * 100%);
							left: 0;
						}
							.business__list__item__number {
								width: 100%;
								height: auto;
								/* margin: 0 auto 17px; */
								margin: 0 auto calc((17 / 1280) * 100vw);
								/* font-size: 17px; */
								font-size: calc((17 / 1280) * 100vw);
								font-weight: 400;
								line-height: calc(25 / 17);
								letter-spacing: 0.02em;
								text-align: center;
								color: var(--color--pink);
							}
								.business__list__item__number::after {
									counter-increment: number 1;
									content: counter(number,decimal-leading-zero) '';
								}
							.business__list__item__name {
								width: 100%;
								height: auto;
								/* font-size: 18px; */
								font-size: calc((18 / 1280) * 100vw);
								font-weight: 400;
								line-height: calc(20 / 18);
								letter-spacing: 0.07em;
								text-align: center;
								color: var(--color--pink);
							}
							.business__list__item:nth-of-type(4) .business__list__item__name {
								font-size: calc((16 / 1280) * 100vw);
							}
						.business__list__item__image {
							width: 100%;
							height: auto;
							margin: auto 0 0;
							opacity: 0;
							transform: scale(1.1);
							transition: 1.2s;
						}
						.run .business__list__item__image {
							opacity: 1;
							transform: scale(1);
						}
						.business__list__item:nth-of-type(1) .business__list__item__image { transition-delay: .6s;}
						.business__list__item:nth-of-type(2) .business__list__item__image { transition-delay: .7s;}
						.business__list__item:nth-of-type(3) .business__list__item__image { transition-delay: .8s;}
						.business__list__item:nth-of-type(4) .business__list__item__image { transition-delay: .9s;}

#company {
	width: 100%;
	height: auto;
	padding: 100px 0 130px;
	/* padding: calc((100 / 1280) * 100vw) 0 calc((130 / 1280) * 100vw); */
	position: relative;
}
	.company__bg {
		width: 100%;
		height: 100%;
		background-color: var(--color--black);
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
		.company__bg::before {
			content: '';
			display: block;
			width: 100%;
			height: 100%;
			background-image: url('../image/index/company-texture@pc.webp');
			background-position: center;
			background-repeat: no-repeat;
			background-size: cover;
			opacity: .2;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
		.company__wave {
			width: 100%;
			height: auto;
			/* height: calc((300 / 802) * 100vh); */
			/* max-height: 300px; */
			mix-blend-mode: multiply;
			position: absolute;
			bottom: 0;
			left: 0;
		}
		.company__wave._01 {
			opacity: 1;
			z-index: 3;
		}
		.company__wave._02 {
			opacity: .4;
			z-index: 2;
		}
			.company__wave img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center top;
			}
	.company__inner {
		width: calc((1100 / 1280) * 100%);
		height: auto;
		margin: 0 auto;
		position: relative;
		z-index: 2;
	}
		#company .section_heading {
			margin-bottom: 76px;
			/* margin-bottom: calc((76 / 1280) * 100vw); */
			color: var(--color--white);
		}
		.company__list {
			width: 100%;
			max-width: 608px;
			height: auto;
			margin: 0 auto;
		}
			.company__list__item {
				display: flex;
				justify-content: space-between;
				align-items: flex-start;
				width: 100%;
				height: auto;
				font-size: 14px;
				font-weight: 400;
				line-height: 1.5;
				letter-spacing: 0.1em;
				color: var(--color--white);
			}
			.company__list__item:not(:last-of-type) {
				margin-bottom: 26px;
			}
				.company__list__item dt {
					width: 114px;
					height: auto;
				}
				.company__list__item dd {
					flex: 1;
					height: auto;
					padding-left: 46px;
					position: relative;
				}
					.company__list__item dd::before {
						content: '';
						display: block;
						width: 1px;
						height: calc(100% - 6px);
						background-color: var(--color--white);
						position: absolute;
						top: 48%;
						left: 0;
						transform: translate(-50%,-50%);
					}

/* PC ================================================== */
@media all and (max-width: 1280px){
#about {
	padding: 200px 0 405px;
}
		.about__copy {
			width: 50%;
			height: auto;
		}
			.about__sun {
				width: 200px;
				top: -112px;
				left: -35px;
			}
			.about__copy__txt {
				width: 234px;
				font-size: 45px;
			}
		.about__contents {
			padding: 38px 0 0;
		}
			.about__heading {
				margin: 0 auto 22px;
				font-size: 16px;
			}
				.about__details dt {
					margin: 0 auto 46px;
					font-size: 32px;
				}
				.about__details dd {
					font-size: 14px;
				}

#business {
	margin: calc((106 / 1280) * -100vw) auto 0;
}
		.business__inner {
			width: 1000px;
		}
						.business__list__item__head {
							top: 23px;
						}
							.business__list__item__number {
								margin: 0 auto 17px;
								font-size: 17px;
							}
							.business__list__item__name {
								font-size: 18px;
							}
							.business__list__item:nth-of-type(4) .business__list__item__name {
								font-size: 16px;
							}
}
@media all and (max-width: 1100px){
		.business__inner {
			width: calc((1000 / 1100) * 100%);
		}
}

@media all and (max-width: 1000px){
			.business__list {
				align-items: flex-start;
				flex-wrap: wrap;
				row-gap: 24px;
				width: 496px;
				margin: 0 auto;
			}
				.business__list__item {
					width: 236px;
				}
}

@media all and (min-width: 769px){

}

/* Tablet ================================================== */
@media all and (max-width: 768px){
#hero {
	height: 100svh;
}
			.hero__bg::before {
				background-image: url('../image/index/hero-bg_01@sp.webp');
			}
			.hero__bg::after {
				background-image: url('../image/index/hero-bg_02@sp.webp');
			}
			.hero__obj {
				width: 170px;
				height: 170px;
				margin: 0 auto -46px;
			}
			.hero__logo {
				width: 158px;
			}
		.hero__wave {
			height: calc((300 / 667) * 100svh);
		}

#about {
	padding: calc((150 / 375) * 100vw) 0 calc((200 / 375) * 100vw);
}
	#about::after {
		background-image: url('../image/index/about-texture@sp.webp');
	}
	.about__obj {
		width: calc((300 / 375) * 100vw);
		height: auto;
		top: calc((50 / 375) * -100vw);
		right: calc((120 / 375) * -100vw);
		transform: rotate(-15deg);
	}
		.about__obj img {
			width: 100%;
			height: auto;
		}
	.about__inner {
		display: block;
		width: 87%;
	}
		.about__copy {
			width: 100%;
		}
			.about__sun {
				width: calc((120 / 375) * 100vw);
				top: calc((70 / 375) * -100vw);
				left: calc((5 / 375) * -100vw);
			}
			.about__copy__txt {
				width: auto;
				font-size: calc((36 / 375) * 100vw);
				line-height: 1.8;
			}
		.about__contents {
			width: 100%;
			padding: calc((38 / 375) * 100vw) 0 0;
		}
			.about__heading {
				margin: 0 auto 22px;
				font-size: 16px;
			}
				.about__details dt {
					margin: 0 auto calc((46 / 375) * 100vw);
					font-size: 32px;
				}
				.about__details dd {
					font-size: 14px;
					letter-spacing: 0.15em;
				}

#business {
	margin: calc((60 / 375) * -100vw) auto 0;
}
	.business__obj {
		width: calc((200 / 375) * 100%);
		top: calc((234 / 375) * -100vw);
		left: auto;
		right: 0;
		transform: scale(-1,1);
	}
	.business__wrap {
		padding: 128px 0 130px;
	}
		.business__bg {
			width: calc(100% + calc((240 / 375) * 100%));
			margin-left: calc((120 / 375) * -100%);
			margin-right: calc((120 / 375) * -100%);
			border-top-left-radius: 50% calc((240 / 375) * 100vw);
			border-top-right-radius: 50% calc((240 / 375) * 100vw);
		}
			.business__bg::before {
				background-image: url('../image/index/business-texture_01@sp.webp');
			}
			.business__bg::after {
				background-image: url('../image/index/business-texture_02@sp.webp');
			}
		.business__inner {
			width: 87%;
		}
			#business .section_heading {
				margin-bottom: 38px;
			}
				.business__heading__obj {
					width: 72px;
					aspect-ratio: 72 / 60.58;
					clip-path: path('M72,40.585A21.341,21.341,0,0,1,41.454,58.472a21.568,21.568,0,0,1-5.378-3.729A19.32,19.32,0,0,0,24.336,49.2c-.593-.045-1.19-.067-1.794-.067A23.5,23.5,0,0,0,14.2,50.639a24,24,0,0,0,6.052-5.184,23.8,23.8,0,0,0,5.526-15.266A23.851,23.851,0,0,0,1.922,6.351Q.94,6.351,0,6.436A50.816,50.816,0,0,1,24.949,0C46.21,0,64.2,12.745,70.034,30.246A38.54,38.54,0,0,1,72,40.585');
					top: -45px;
				}
				.business__list__item { transition-delay: initial !important;}
						.business__list__item__image { transition-delay: .4s !important;}

#company {
	padding: 80px 0 130px;
}
		.company__bg::before {
			background-image: url('../image/index/company-texture@sp.webp');
		}
	.company__inner {
		width: 87%;
	}
		#company .section_heading {
			margin-bottom: 38px;
		}
		.company__list {
			max-width: initial;
		}
			.company__list__item {
				line-height: 1.8;
			}
				.company__list__item dt {
					width: 100px;
				}
				.company__list__item dd {
					padding-left: 26px;
				}
					.company__list__item dd::before {
						height: calc(100% - 12px);
						top: 49%;
					}
}

/* SP ================================================== */
@media all and (max-width: 575px){
			.company__list__item {
				display: block;
				/* line-height: 1.5; */
			}
			.company__list__item:not(:last-of-type) {
				padding-bottom: 18px;
				border-bottom: solid 1px var(--color--white);
				margin-bottom: 20px;
			}
				.company__list__item dt {
					width: 100%;
					margin-bottom: 8px;
					font-size: 16px;
				}
				.company__list__item dd {
					flex: initial;
					width: 100%;
					padding-left: 0;
				}
					.company__list__item dd::before {
						display: none;
						width: 15px;
						height: 1px;
						top: 0;
						left: 0;
						transform: translate(0%,-50%);
					}
}
@media all and (max-width: 570px){
			.business__list {
				justify-content: space-between;
				row-gap: 20px;
				width: 100%;
			}
				.business__list__item {
					width: calc(50% - 10px);
				}
						.business__list__item__head {
							top: calc((24 / 352) * 100%);
						}
							.business__list__item__number {
								margin: 0 auto calc((17 / 570) * 100vw);
								font-size: calc((17 / 570) * 100vw);
							}
							.business__list__item__name {
								font-size: calc((18 / 570) * 100vw);
							}
							.business__list__item:nth-of-type(4) .business__list__item__name {
								font-size: calc((16 / 570) * 100vw);
							}
}
@media all and (max-width: 506px){
			.business__list {
				display: block;
				max-width: 236px;
			}
				.business__list__item {
					width: 100%;
				}
				.business__list__item:not(:last-of-type) {
					margin-bottom: 40px;
				}
						.business__list__item__head {
							top: 28px;
						}
							.business__list__item__number {
								margin: 0 auto 10px;
								font-size: 18px;
							}
							.business__list__item__name {
								font-size: 18px;
							}
							.business__list__item:nth-of-type(4) .business__list__item__name {
								font-size: 16px;
							}
}

#works_link {
	display: inline-block;
	padding: 10px 40px;
	background: #fff;
	margin: 56px 0 0;
	color: #111014;
	border-radius: 25px;
}
#works_link:hover {
	background: #111014;
	color: #fff;
}

#works_flow {
	text-align: center;
}
#works_flow a{
	display: inline-block;
	padding: 10px 40px;
	background: #111014;
	margin: 70px 0 0;
	color: #fff;
	border-radius: 25px;

}
#works_flow a:hover {
	background: #fff;
	color: #111014;
}