
#front-page {
	.main_visual {
		margin: 0;
		img {
			width: 100%;
			height: auto;
		}
	}
	.section_title {
		color: var(--accent_color1);
		display: flex;
		flex-direction: column;
		gap: 0.5em;
		.en {
			margin: 0;
			font-size: calc(50 * var(--px));
			font-weight: bold;
		}
		.jp {
			font-size: calc(20 * var(--px));
			margin: 0;
		}
	}
	#section_news {
		background-image: url("../images/front-page/news-bg.svg");
		background-repeat: no-repeat;
		background-position: right top;
		background-size: cover;
		padding: 4em 1em;
		margin-bottom: -6em;
		.section_wrap {
			max-width: var(--content_width);
			margin-inline: auto;
			box-sizing: border-box;
			padding-right: 200px;
		}
		.list {
			list-style-type: none;
			padding-left: 0;
			margin: 0;
			margin-top: -2em;
			max-width: 578px;
			margin-inline: auto;
			border-top: 1px dashed #6F6C6C;
			li {
				border-bottom: 1px dashed #6F6C6C;
			}
			a {
				display: flex;
				align-items: center;
				gap: 2em;
				padding: 1em;
				color: var(--text_color);
				text-decoration: none;
			}
			p {
				margin: 0;
				font-weight: bold;
				line-height: 1.4em;
				font-size: calc(15 * var(--px));
			}
			.date {
				width: 5em;
			}
			.category {
				width: 5em;
				background-color: #51A1D6;
				color: #fff;
				text-align: center;
				padding: 0.2em 0.5em;
			}
			.title {
				flex: 1;
			}
		}
		.more {
			text-align: right;
			font-size: calc(20 * var(--px));
			margin-top: 3em;
			a {
				color: var(--accent_color2);
				display: flex;
				justify-content: flex-end;
				align-items: center;
				gap: 0.5em;
				&::after {
					content: url("../images/front-page/news-arrow.svg");
					line-height: 0;
					width: 1em;
					height: auto;
				}
			}
		}
	}
	.more_link {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		margin-top: 3em;
		a {
			background-color: #fff;
			padding: 0.5em 3em;
			color: var(--accent_color2);
			border: 2px solid var(--accent_color2);
			text-decoration: none;
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 1.5em;
			font-weight: bold;
			&::after {
				content: url("../images/front-page/more_arrow.svg");
				width: 2em;
				height: auto;
				line-height: 0;
			}
		}
	}
	#section_new_technology {
		background-image: url("../images/front-page/new_technology-bg.webp");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		aspect-ratio: 1439 / 780;
		display: flex;
		align-items: center;
		box-sizing: border-box;
		color: #fff;
		.section_wrap {
			max-width: var(--content_width);
			margin-inline: auto;
			padding-inline: 1em;
		}
		.text {
			padding-right: 45%;
		}
		.section_title {
			color: #fff;
		}
		.text {
			line-height: 2em;
			margin-top: 3em;
		}
	}
	#section_business {
		background-image: url("../images/front-page/business-bg.svg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 100% 100%;
		padding-inline: 1em;
		margin-top: 5em;
		padding-top: 5px;
		padding-bottom: 5em;
		.section_title {
			color: var(--accent_color2);
		}
		.section_wrap {
			max-width: var(--content_width);
			margin-inline: auto;
		}
		.intro {
			margin-top: 3em;
			line-height: 1.8em;
		}
		.business_content {
			margin-top: 3em;
			display: flex;
			flex-direction: column;
			gap: 3em;
			section {
				display: flex;
				align-items: center;
				gap: 3em;
				&:nth-of-type(2n) {
					.image {
						order: 1;
					}
					.content_text {
						order: 2;
					}
				}
			}
			.content_text {
				flex: 1;
			}
			.image {
				flex: 1;
				img {
					width: 100%;
					height: auto;
				}
			}
			.title {
				display: flex;
				font-size: calc(24 * var(--px));
				align-items: center;
				gap: 0.3em;
				color: var(--accent_color2);
				&::before {
					content: url("../images/front-page/business_arrow.svg");
					line-height: 0;
					width: 1.2em;
					height: auto;
				}
			}
			.description {
				line-height: 2em;
				margin-top: 2em;
				margin-left: 1em;
			}
		}
	}
	#section_company {
		margin-top: 5em;
		padding-inline: 1em;
		background-image: url("../images/front-page/company.webp");
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 70% auto;
		.section_wrap {
			max-width: var(--content_width);
			margin-inline: auto;
			padding-top: 10em;
			display: flex;
			justify-content: flex-end;
		}
		.content {
			background-color: #fff;
			box-sizing: border-box;
			padding: 3em 2em;
			box-shadow: 4px 4px 0 0 #1E477B;
			max-width: 469px;
		}
		.section_title .jp {
			color: var(--accent_color2);
			font-size: calc(36 * var(--px));
		}
		.description {
			color: var(--accent_color2);
			line-height: 1.8em;
			margin-top: 3em;
		}
	}
	#section_recruit {
		margin-top: 3em;
		aspect-ratio: 1440 / 971;
		background-image: url("../images/front-page/recruit.webp");
		background-repeat: no-repeat;
		background-size: cover;
		display: flex;
		align-items: center;
		.section_wrap {
			padding-inline: 1em;
			max-width: var(--content_width);
			margin-inline: auto;
			width: 100%;
			box-sizing: border-box;
		}
		.content {
			max-width: 516px;
			padding: 3em;
			color: #fff;
			background-color: rgba(0, 160, 233, 0.75);
		}
		.section_title {
			color: #fff;
			.jp {
				font-size: calc(48 * var(--px));
			}
		}
		.description {
			line-height: 1.8em;
			margin-top: 3em;
		}
		.link {
			margin-top: 3em;
			a {
				border: 2px solid var(--accent_color3);
				color: var(--accent_color3);
				padding: 0.5em 1.5em;
				background-color: #fff;
				border-radius: 0.8em;
				text-decoration: none;
				display: inline-flex;
				align-items: center;
				gap: 1em;
				&::after {
					content: "";
					background-image: url("../images/front-page/pdf.svg");
					background-repeat: no-repeat;
					background-size: contain;
					background-position: center;
					width: 1em;
					height: 1em;
				}
			}
		}
	}
}
