*,
::before,
::after {
	box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
:root {
	--accent-col: #f00;
	--accent-col-alt: #ff8341;
	--accent-gradient: linear-gradient(90deg, var(--accent-col), var(--accent-col-alt));

	--gutter-outer: clamp(20px, 4.7328244275px + 4.0712468193vw, 36px);
	--100vw: calc(100vw - var(--scrollbar-width));
	--half-leading: calc((1em - 1lh) / 2);
	--font-poppins: "Poppins", sans-serif;
	--font-oswald: "Oswald", sans-serif;
	--header-height: 76px;
	--color-white: #fff;
	--color-black: #1e1e1e;
	--color-gray: #d9d9d9;
	--color-navy: #0e0e8f;
	--blue-01: #3620c7;
	--blue-02: #516ed6;
	--blue-03: #8b9fe5;
	--blue-04: #c3cdf0;
	--blue-05: #dfe5fb;
	--color-red: #c13434;
	--color-orange-deep: #fc802d;
	--color-orange-light: #f19405;
	--color-orange-medium: #fcc780;
	--color-orange-soft: #fff3e3;

	--gradient-orange-light: linear-gradient(269.43deg, #fda 19.02%, #fca12d 121.72%);

	--gradient-orange-deep: linear-gradient(142.23deg, #f19405 12.3%, #fc802d 89.4%);
}

@media (width <=767px) {
	:root {
		--header-height: 56px;
	}
}

@media (width > 768px) {
	:root {
		--gutter-outer: min(8vw, 120px);
	}
}

.button-circle--blue {
	position: relative;
	display: block;
	background-color: #0e0e8f;
	border-radius: 50%;
}

.button-circle--blue__arrow {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	display: block;
	width: 36.67%;
	transform: translate(-50%, -50%);
	aspect-ratio: 22/17;
}

.button-circle--blue__arrow svg {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	transition: color 0.3s ease;
}

.button-circle--blue__inner {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border-radius: 50%;
	transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
	transform: translate(-50%, -50%) scale(0);
	transform-origin: center;
}

.button-circle--blue:hover,
.button-circle--blue:active {
	border: solid 1px #0e0e8f;
}

.button-circle--blue:hover .button-circle--blue__arrow svg,
.button-circle--blue:active .button-circle--blue__arrow svg {
	color: #0e0e8f;
}

.button-circle--blue:hover .button-circle--blue__inner,
.button-circle--blue:active .button-circle--blue__inner {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.button-circle--blue--diagonal {
	position: relative;
	display: block;
	background-color: #0e0e8f;
	border-radius: 50%;
}

.button-circle--blue--diagonal__arrow {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	display: block;
	width: 36.67%;
	transform: translate(-50%, -50%);
	aspect-ratio: 22/17;
}

.button-circle--blue--diagonal__arrow svg {
	display: block;
	#fffight: 100%;
	color: var(--color-white);
	transition: color 0.3s ease;
	transform: rotate(-45deg);
}

.button-circle--blue--diagonal__inner {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 100#fff background-color: var(--color-white);
	border-radius: 50%;
	transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
	transform: translate(-50%, -50%) scale(0);
	transform-origin: center;
}

.button-circle--blue--diagonal:hover,
.button-circle--blue--diagonal:active {
	border: solid 1px #0e0e8f;
}

.button-circle--blue--diagonal:hover .button-circle--blue--diagonal__arrow svg,
.button-circle--blue--diagonal:active .button-circle--blue--diagonal__arrow svg {
	color: #0e0e8f;
}

.button-circle--blue--diagonal:hover .button-circle--blue--diagonal__inner,
.button-circle--blue--diagonal:active .button-circle--blue--diagonal__inner {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.l__inner {
	max-width: 1156px;
	margin-inline: auto;
	width: 90%;
}

.value div {
	box-sizing: border-box;
}

.value__container {
	position: relative;
	background-image: image-set(url("../images/bg_top-value.jpg") 1x, url("../images/bg_top-value@2x.jpg") 2x);
	background-size: cover;
	background-position: center;
	padding-block: 130px 146px;
}

.value__container::before {
	position: absolute;
	right: -59px;
	bottom: -99px;
	width: 400px;
	height: 400px;
	background-image: image-set(url("../images/decoration_top-value.png") 1x, url("../images/decoration_top-value@2x.png") 2x);
	background-size: cover;
	background-position: center;
	content: "";
}

@media (width < 1440px) {
	.value__container {
		padding-block: 9.03vw 10.14vw;
		overflow: hidden;
	}

	.value__container::before {
		right: -4.1vw;
		bottom: -6.88vw;
		width: 27.78vw;
		height: 27.78vw;
	}
}

.value__title h2 {
	font-size: 40px;
	font-weight: 600;
	line-height: 160%;
	letter-spacing: 0.05em;
	color: var(--color-black);
}

@media (width < 1440px) {
	.value__title h2 {
		font-size: 2.78vw;
	}
}

@media (width <=767px) {
	.value__title h2 {
		font-size: 24px;
	}
}

.value-card {
	position: relative;
	z-index: 0;
}

.value-card.value-card-coating {
	margin-top: 30px;
}

.value-card.value-card-coating::after {
	position: absolute;
	top: -81px;
	right: -58px;
	width: 164px;
	height: 154px;
	background-image: image-set(url("../images/decoration_top-value-card-coating.png") 1x, url("../images/decoration_top-value-card-coating@2x.png") 2x);
	background-size: cover;
	background-position: center;
	content: "";
}

.value-card.value-card-coating .square {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.value-card.value-card-coating .square .square-top {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 140px);
	background-color: #fff;
	border-radius: 20px 20px 0 0;
}

@media (width < 1440px) {
	.value-card.value-card-coating .square .square-top {
		height: calc(100% - 9.72vw);
		border-radius: 1.39vw 1.39vw 0 0;
	}
}

@media (width <=767px) {
	.value-card.value-card-coating .square .square-top {
		height: calc(100% - 98px);
		border-radius: 3vw 3vw 0 0;
	}
}

.value-card.value-card-coating .square .square-bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 144px;
}

.value-card.value-card-coating .square .square-bottom .square-bottom-left {
	position: absolute;
	bottom: 0;
	left: 0;
	width: calc(100% - 140px);
	height: 100%;
	background-color: #fff;
	border-radius: 0 0 0 20px;
}

@media (width < 1440px) {
	.value-card.value-card-coating .square .square-bottom .square-bottom-left {
		width: calc(100% - 9.72vw);
		border-radius: 0 0 0 1.39vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-coating .square .square-bottom .square-bottom-left {
		width: calc(100% - 98px);
		border-radius: 0 0 0 3vw;
	}
}

.value-card.value-card-coating .square .square-bottom .square-bottom-right {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 144px;
	height: 144px;
	/* prettier-ignore */
	background-image: image-set(url("../images/decoration_square-bottom-right.png") 1x, url("../images/decoration_square-bottom-right@2x.png") 2x);
	background-size: cover;
	background-position: center;
}

@media (width < 1440px) {
	.value-card.value-card-coating .square .square-bottom .square-bottom-right {
		width: 10vw;
		height: 10vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-coating .square .square-bottom .square-bottom-right {
		width: 101px;
		height: 101px;
	}
}

@media (width < 1440px) {
	.value-card.value-card-coating .square .square-bottom {
		height: 10vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-coating .square .square-bottom {
		height: 101px;
	}
}

@media (width < 1440px) {
	.value-card.value-card-coating {
		margin-top: 2.08vw;
	}

	.value-card.value-card-coating::after {
		top: -5.63vw;
		right: -4.03vw;
		width: 11.39vw;
		height: 10.69vw;
	}
}

.value-card.value-card-fproduct {
	margin-top: 20px;
}

.value-card.value-card-fproduct .square {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.value-card.value-card-fproduct .square .square-top {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 140px);
	background-color: #fff;
	border-radius: 20px 20px 0 0;
}

@media (width < 1440px) {
	.value-card.value-card-fproduct .square .square-top {
		height: calc(100% - 9.72vw);
		border-radius: 1.39vw 1.39vw 0 0;
	}
}

@media (width <=767px) {
	.value-card.value-card-fproduct .square .square-top {
		height: calc(100% - 98px);
		border-radius: 3vw 3vw 0 0;
	}
}

.value-card.value-card-fproduct .square .square-bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 144px;
}

.value-card.value-card-fproduct .square .square-bottom .square-bottom-left {
	position: absolute;
	bottom: 0;
	left: 0;
	width: calc(100% - 140px);
	height: 100%;
	background-color: #fff;
	border-radius: 0 0 0 20px;
}

@media (width < 1440px) {
	.value-card.value-card-fproduct .square .square-bottom .square-bottom-left {
		width: calc(100% - 9.72vw);
		border-radius: 0 0 0 1.39vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-fproduct .square .square-bottom .square-bottom-left {
		width: calc(100% - 98px);
		border-radius: 0 0 0 3vw;
	}
}

.value-card.value-card-fproduct .square .square-bottom .square-bottom-right {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 144px;
	height: 144px;
	/* prettier-ignore */
	background-image: image-set(url("../images/decoration_square-bottom-right.png") 1x, url("../images/decoration_square-bottom-right@2x.png") 2x);
	background-size: cover;
	background-position: center;
}

@media (width < 1440px) {
	.value-card.value-card-fproduct .square .square-bottom .square-bottom-right {
		width: 10vw;
		height: 10vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-fproduct .square .square-bottom .square-bottom-right {
		width: 101px;
		height: 101px;
	}
}

@media (width < 1440px) {
	.value-card.value-card-fproduct .square .square-bottom {
		height: 10vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-fproduct .square .square-bottom {
		height: 101px;
	}
}

@media (width < 1440px) {
	.value-card.value-card-fproduct {
		margin-top: 1.39vw;
	}
}

.value-card__inner {
	display: flex;
	gap: 51px;
	padding: 20px 30px 20px 20px;
}

@media (width < 1440px) {
	.value-card__inner {
		gap: 3.54vw;
		padding: 1.39vw 2.08vw 1.39vw 1.39vw;
	}
}

@media (width <=767px) {
	.value-card__inner {
		flex-direction: column;
		align-items: center;
		gap: 5px;
		padding-bottom: 90px;
	}
}

.value-card__media {
	position: relative;
	z-index: 1;
	display: flex;
	flex-shrink: 0;
}

.value-card__label-wrapper {
	position: relative;
	width: 43px;
	height: 100%;
}

.value-card__label-wrapper::after {
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 100%;
	background-color: #aeaeae;
	content: "";
}

@media (width <=767px) {
	.value-card__label-wrapper::after {
		top: 15px;
		right: -5px;
		height: 23vw;
	}
}

@media (width < 1440px) {
	.value-card__label-wrapper {
		width: 2.99vw;
	}
}

@media (width <=767px) {
	.value-card__label-wrapper {
		width: 20px;
		flex-shrink: 0;
		padding-bottom: 12px;
	}
}

.value-card__label {
	position: absolute;
	font-family: var(--font-poppins);
	font-size: 20px;
	font-weight: 500;
	line-height: 160%;
	color: transparent;
	background: linear-gradient(142.23deg, #516ed6 12.3%, #3620c7 89.4%);
	transform: rotate(90deg);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	white-space: nowrap;
}

.value-card-coating .value-card__label {
	top: 43px;
	left: -35px;
}

.value-card-fproduct .value-card__label {
	top: 79px;
	left: -70px;
}

@media (width < 1440px) {
	.value-card__label {
		font-size: 1.39vw;
	}

	.value-card-coating .value-card__label {
		top: 2.99vw;
		left: -2.43vw;
	}

	.value-card-fproduct .value-card__label {
		top: 5.49vw;
		left: -4.86vw;
	}
}

@media (width <=767px) {
	.value-card__label {
		font-size: 14px;
	}

	.value-card-coating .value-card__label {
		top: 40px;
		left: -28px;
	}

	.value-card-fproduct .value-card__label {
		top: 67px;
		left: -53px;
	}
}

.value-card__image-wrapper {
	padding-bottom: 20px;
}

.value-card__image-wrapper img {
	margin-left: 32px;
	margin-top: 20px;
}

.value-card-coating .value-card__image-wrapper img {
	width: 448px;
	aspect-ratio: 448/360;
}

.value-card-fproduct .value-card__image-wrapper img {
	width: 448px;
	aspect-ratio: 448/240;
	object-fit: cover;
	border-radius: 20px;
	overflow: hidden;
}

@media (width < 1440px) {
	.value-card__image-wrapper img {
		margin-left: 2.22vw;
		margin-top: 1.39vw;
	}

	.value-card-coating .value-card__image-wrapper img {
		width: 31.11vw;
	}

	.value-card-fproduct .value-card__image-wrapper img {
		width: 31.11vw;
	}
}

@media (width <=767px) {
	.value-card__image-wrapper img {
		max-width: 448px;
		margin-left: 0;
		margin-top: 10px;
		order: 1;
	}

	.value-card-coating .value-card__image-wrapper img {
		width: 85%;
	}

	.value-card-fproduct .value-card__image-wrapper img {
		width: 85%;
	}
}

@media (width <=767px) {
	.value-card__image-wrapper {
		display: flex;
		justify-content: center;
		padding-bottom: 0;
	}
}

.value-card__content {
	position: relative;
	z-index: 1;
	width: 100%;
	padding-top: 20px;
}

@media (width < 1440px) {
	.value-card__content {
		padding-top: 1.39vw;
	}
}

.value-card__heading {
	font-size: 30px;
	font-weight: 700;
	line-height: 160%;
	color: var(--color-black);
}

@media (width < 1440px) {
	.value-card__heading {
		font-size: 2.08vw;
	}
}

@media (width <=767px) {
	.value-card__heading {
		font-size: 18px;
		text-align: center;
	}
}

.value-card__text {
	font-size: 16px;
	line-height: 180%;
	color: #000;
	margin-top: 10px;
}

.value-card-coating .value-card__text {
	width: 422px;
}

.value-card-fproduct .value-card__text {
	width: 472px;
}

@media (width < 1440px) {
	.value-card__text {
		font-size: 1.11vw;
		margin-top: 0.69vw;
	}

	.value-card-coating .value-card__text {
		width: 29.31vw;
	}

	.value-card-fproduct .value-card__text {
		width: 32.78vw;
	}
}

@media (width <=767px) {
	.value-card__text {
		font-size: 12px;
	}

	.value-card-coating .value-card__text,
	.value-card-fproduct .value-card__text {
		width: 95%;
		max-width: 450px;
		margin-inline: auto;
	}
}

.value-card__divider {
	width: 100%;
	height: 1px;
	background-color: #aeaeae;
	margin-block: 30px;
}

@media (width <=767px) {
	.value-card__divider {
		width: 80%;
		margin-inline: auto;
	}
}

.value-card__link {
	position: absolute;
	right: 24px;
	bottom: 24px;
	z-index: 1;
	width: 60px;
	height: 60px;
}

@media (width < 1440px) {
	.value-card__link {
		right: 1.67vw;
		bottom: 1.67vw;
		width: 4.17vw;
		height: 4.17vw;
	}
}

@media (width <=767px) {
	.value-card__link {
		right: unset;
		right: 15px;
		bottom: 15px;
		width: 42px;
		height: 42px;
	}
}

@media (width < 1440px) {
	.value-card {
		gap: 3.54vw;
		padding: 1.39vw 2.08vw 1.39vw 1.39vw;
	}
}

@media (width <=767px) {
	.value-card.value-card-coating {
		margin-top: 28px;
	}

	.value-card.value-card-coating::after {
		top: -68px;
		right: -78px;
		z-index: 0;
		width: 128px;
		height: 132px;
		pointer-events: none;
	}

	.value-card.value-card-coating .square .square-top {
		height: calc(100% - 74px);
		border-radius: 24px 24px 0 0;
	}

	.value-card.value-card-coating .square .square-bottom {
		height: 74px;
	}

	.value-card.value-card-coating .square .square-bottom .square-bottom-left {
		width: calc(100% - 74px);
		border-radius: 0 0 0 24px;
	}

	.value-card.value-card-coating .square .square-bottom .square-bottom-right {
		width: 74px;
		height: 74px;
	}

	.value-card.value-card-coating .value-card__inner {
		position: relative;
		align-items: stretch;
		gap: 12px;
		padding: 16px 14px 92px;
	}

	.value-card.value-card-coating .value-card__inner::before {
		position: absolute;
		top: 18px;
		bottom: 20px;
		left: 39px;
		z-index: 1;
		width: 1px;
		background-color: #aeaeae;
		content: "";
	}

	.value-card.value-card-coating .value-card__media {
		align-items: flex-start;
		gap: 10px;
	}

	.value-card.value-card-coating .value-card__label-wrapper {
		width: 28px;
		padding-bottom: 0;
	}

	.value-card.value-card-coating .value-card__label-wrapper::after {
		display: none;
	}

	.value-card.value-card-coating .value-card__label {
		top: 0;
		left: -6px;
		font-size: 16px;
		line-height: 1.5;
		transform: none;
		writing-mode: vertical-rl;
		text-orientation: mixed;
	}

	.value-card.value-card-coating .value-card__image-wrapper {
		display: block;
		flex: 1;
		padding-bottom: 0;
	}

	.value-card.value-card-coating .value-card__image-wrapper img {
		width: 100%;
		max-width: none;
		border-radius: 24px;
		margin-top: 0;
	}

	.value-card.value-card-coating .value-card__content {
		padding-top: 0;
		padding-left: 46px;
	}

	.value-card.value-card-coating .value-card__heading {
		font-size: 28px;
		line-height: 1.35;
		text-align: left;
	}

	.value-card.value-card-coating .value-card__text {
		width: 100%;
		max-width: none;
		font-size: 15px;
		line-height: 1.85;
		margin-top: 12px;
		margin-inline: 0;
	}

	.value-card.value-card-coating .value-card__divider {
		width: 100%;
		margin: 34px 0;
	}

	.value-card.value-card-coating .value-card__link {
		right: 6px;
		bottom: 6px;
		width: 42px;
		height: 42px;
	}

	.value-card.value-card-fproduct {
		margin-top: 24px;
	}

	.value-card.value-card-fproduct::after {
		position: absolute;
		top: -32px;
		left: -18px;
		z-index: -1;
		width: 108px;
		height: 132px;
		background-image: image-set(url("../images/decoration_top-value-card-coating.png") 1x, url("../images/decoration_top-value-card-coating@2x.png") 2x);
		background-size: cover;
		background-position: center;
		pointer-events: none;
		content: "";
	}

	.value-card.value-card-fproduct .square .square-top {
		height: calc(100% - 74px);
		border-radius: 24px 24px 0 0;
	}

	.value-card.value-card-fproduct .square .square-bottom {
		height: 74px;
	}

	.value-card.value-card-fproduct .square .square-bottom .square-bottom-left {
		width: calc(100% - 74px);
		border-radius: 0 0 0 24px;
	}

	.value-card.value-card-fproduct .square .square-bottom .square-bottom-right {
		width: 74px;
		height: 74px;
	}

	.value-card.value-card-fproduct .value-card__inner {
		position: relative;
		align-items: stretch;
		gap: 12px;
		padding: 16px 14px 92px;
	}

	.value-card.value-card-fproduct .value-card__inner::before {
		position: absolute;
		top: 18px;
		bottom: 20px;
		left: 39px;
		z-index: 1;
		width: 1px;
		background-color: #aeaeae;
		content: "";
	}

	.value-card.value-card-fproduct .value-card__media {
		align-items: flex-start;
		gap: 10px;
	}

	.value-card.value-card-fproduct .value-card__label-wrapper {
		width: 28px;
		padding-bottom: 0;
	}

	.value-card.value-card-fproduct .value-card__label-wrapper::after {
		display: none;
	}

	.value-card.value-card-fproduct .value-card__label {
		top: 0;
		left: -6px;
		font-size: 16px;
		line-height: 1.5;
		transform: none;
		writing-mode: vertical-rl;
		text-orientation: mixed;
	}

	.value-card.value-card-fproduct .value-card__image-wrapper {
		display: block;
		flex: 1;
		padding-bottom: 0;
	}

	.value-card.value-card-fproduct .value-card__image-wrapper img {
		width: 100%;
		max-width: none;
		border-radius: 24px;
		margin-top: 0;
	}

	.value-card.value-card-fproduct .value-card__content {
		padding-top: 0;
		padding-left: 46px;
	}

	.value-card.value-card-fproduct .value-card__heading {
		font-size: 28px;
		line-height: 1.35;
		text-align: left;
	}

	.value-card.value-card-fproduct .value-card__text {
		width: 100%;
		max-width: none;
		font-size: 15px;
		line-height: 1.85;
		margin-top: 12px;
		margin-inline: 0;
	}

	.value-card.value-card-fproduct .value-card__link {
		right: 6px;
		bottom: 6px;
		width: 42px;
		height: 42px;
	}
}

@keyframes strengths-info-fade-out {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

@keyframes strengths-info-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}


.main-visual__container {
	position: relative;
	padding-inline: 0;
}

.main-visual__container::after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	/* prettier-ignore */
	background-image: image-set(url("../images/bg_main-visual.png") 1x, url("../images/bg_main-visual@2x.png") 2x);
	background-size: cover;
	background-position: bottom center;
	content: "";
	aspect-ratio: 1440/412;
}

.main-visual__content {
	position: relative;
	z-index: 1;
	display: flex;
}

.main-visual__title {
	display: flex;
	flex: 1;
	flex-direction: column-reverse;
	justify-content: center;
	gap: min(0.9vw, 13px);
	padding-left: min(9.86vw, 142px);
	padding-top: calc(var(--header-height) + clamp(0rem, -3.4090909091rem + 5.4545454545vw, 1.5rem));
	padding-bottom: 4px;
}

.main-visual__title h2 {
	font-size: min(2.22vw, 32px);
	font-weight: 600;
	line-height: 130%;
	color: var(--color-white);
}

@media (width <=767px) {
	.main-visual__title h2 {
		font-size: 4.44vw;
	}
}

.main-visual__title h3 {
	font-family: var(--font-poppins);
	font-size: min(1.67vw, 24px);
	font-weight: 600;
	line-height: 109%;
	color: var(--blue-03);
}

@media (width <=767px) {
	.main-visual__title h3 {
		font-size: 3.34vw;
	}
}

@media (width <=1000px) {
	.main-visual__title {
		padding-bottom: 4vw;
	}
}

@media (width <=767px) {
	.main-visual__title {
		padding-top: 0;
		padding-left: 3vw;
	}
}

.main-visual__img-wrapper {
	width: min(65.56vw, 944px);
	padding-top: calc(var(--header-height) + min(1.67vw, 24px));
}

@media (width <=767px) {
	.main-visual__img-wrapper {
		width: 55vw;
		padding-top: 11vw;
	}
}

.main-visual--news .main-visual__container,
.main-visual--recruit .main-visual__container {
	position: relative;
	padding-inline: 0;
}

.main-visual--news .main-visual__container::after,
.main-visual--recruit .main-visual__container::after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	/* prettier-ignore */
	background-image: image-set(url("../images/bg_nophoto-main-visual.png") 1x, url("../images/bg_nophoto-main-visual@2x.png") 2x);
	background-size: cover;
	background-position: bottom center;
	content: "";
	aspect-ratio: 1440/412;
}

.main-visual {
	/*
    &--news &__img-wrapper,
    &--recruit &__img-wrapper,
    &--contact &__img-wrapper {
      width: min(65.56vw, 944px);
      height: min(27vw, 440px);
      padding-top: calc(var(--header-height) + min(1.67vw, 24px));
      @media (width <= 767px) {
        width: 55vw;
        padding-top: 11vw;
      }
    }
  */
}

.main-visual--news .main-visual__title,
.main-visual--recruit .main-visual__title {
	flex: unset;
	height: min(27vw, 440px);
	margin-inline: auto;
	padding-left: 0;
}

.main-visual--news .main-visual__title h2,
.main-visual--recruit .main-visual__title h2 {
	font-size: min(3.19vw, 46px);
	font-weight: 600;
	line-height: 160%;
	color: var(--color-white);
	text-align: center;
}

@media (width <=767px) {

	.main-visual--news .main-visual__title h2,
	.main-visual--recruit .main-visual__title h2 {
		font-size: 5.44vw;
	}
}

.main-visual--news .main-visual__title h3,
.main-visual--recruit .main-visual__title h3 {
	font-family: var(--font-poppins);
	font-size: min(2.5vw, 36px);
	font-weight: 600;
	line-height: 120%;
	color: var(--blue-03);
	text-align: center;
}

@media (width <=767px) {

	.main-visual--news .main-visual__title h3,
	.main-visual--recruit .main-visual__title h3 {
		font-size: 4.34vw;
	}
}

@media (width <=1000px) {

	.main-visual--news .main-visual__title,
	.main-visual--recruit .main-visual__title {
		padding-bottom: 4vw;
	}
}

@media (width <=767px) {

	.main-visual--news .main-visual__title,
	.main-visual--recruit .main-visual__title {
		padding-top: 0;
		padding-left: 0;
	}
}

.message__bg {
	position: sticky;
	top: 0;
	z-index: -1;
	width: 100%;
	background-image: image-set(url("../images/bg_comp-message.png") 1x, url("../images/bg_comp-message@2x.png") 2x);
	background-size: cover;
	background-position: center;
	margin-top: calc(-1 * min(12.85vw, 185px));
	will-change: transform;
	aspect-ratio: 1440/1021;
	margin-bottom: calc(-1 * min(58.06vw, 836px));
}

@media (width <=767px) {
	.message__bg {
	/* 	background-image: image-set(url("../images/bg_comp-message--sp.png") 1x, url("../images/bg_comp-message--sp@2x.png") 2x); */
		margin-top: -12.85%;
		aspect-ratio: 720/1021;
		margin-bottom: -128.96%;
	}
}

.message {
	position: relative;
}

.message__container {
	position: relative;
	padding-top: min(9.03vw, 130px);
}

@media (width <=767px) {
	.message__container {
		padding-top: 60px;
	}
}

.message .anchor-links {
	display: flex;
	justify-content: center;
}

.message .anchor-links__list {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 928px;
	max-width: 100%;
	background: var(--color-white);
	border: 1px solid var(--blue-01);
	border-radius: 10px;
}

@media (width < 1440px) {
	.message .anchor-links__list {
		width: 62.5vw;
		border-radius: 0.7vw;
	}
}

@media (width <=767px) {
	.message .anchor-links__list {
		flex-direction: column;
		width: 100%;
		max-width: 345px;
		border-radius: 5px;
	}
}

.message .anchor-links__list-item {
	position: relative;
	flex: 1;
	height: 59px;
}

.message .anchor-links__list-item:not(:last-child)::after {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 1px;
	height: 72.88%;
	background: var(--blue-01);
	transform: translateY(-50%);
	content: "";
}

@media (width <=767px) {
	.message .anchor-links__list-item:not(:last-child)::after {
		top: unset;
		right: 50%;
		bottom: 0;
		width: 72.88%;
		height: 1px;
		transform: translateX(50%);
	}
}

@media (width < 1440px) {
	.message .anchor-links__list-item {
		height: 4.1vw;
	}
}

@media (width <=767px) {
	.message .anchor-links__list-item {
		flex: auto;
		width: 100%;
		height: 42px;
	}
}

.message .anchor-links__list-link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 100%;
	height: 100%;
	font-size: 16px;
	font-weight: 600;
	color: var(--color-black);
}

.message .anchor-links__list-link::after {
	display: block;
	width: 10px;
	height: 5px;
	background-image: url("../images/icon_keyboard-arrow-down.svg");
	background-size: cover;
	content: "";
}

@media (width < 1440px) {
	.message .anchor-links__list-link::after {
		width: 0.7vw;
		height: 0.35vw;
	}
}

@media (width <=767px) {
	.message .anchor-links__list-link::after {
		width: 7px;
		height: 3.5px;
	}
}

@media (width < 1440px) {
	.message .anchor-links__list-link {
		gap: 0.7vw;
		font-size: 1.11vw;
	}
}

@media (width <=767px) {
	.message .anchor-links__list-link {
		gap: 5px;
		font-size: 14px;
	}
}

.message__content {
	margin-top: 98px;
}

@media (width < 1440px) {
	.message__content {
		margin-top: 6.81vw;
	}
}

@media (width <=767px) {
	.message__content {
		margin-top: 60px;
	}
}

.message__title {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
}

@media (width < 1440px) {
	.message__title {
		font-size: 2.08vw;
	}
}

@media (width < 1440px) {
	.message__title {
		font-size: 2.08vw;
	}
}

@media (width <=767px) {
	.message__title {
		font-size: 24px;
	}
}

.message__text-wrapper {
	margin-top: 40px;
}

@media (width < 1440px) {
	.message__text-wrapper {
		margin-top: 2.78vw;
	}
}

@media (width <=767px) {
	.message__text-wrapper {
		margin-top: 20px;
	}
}

.message__subtitle {
	font-size: 26px;
	font-weight: 700;
	line-height: 180%;
	color: var(--color-black);
	margin-bottom: 22px;
}

@media (width < 1440px) {
	.message__subtitle {
		font-size: 1.81vw;
		margin-bottom: 1.53vw;
	}
}

@media (width <=767px) {
	.message__subtitle {
		font-size: 20px;
		margin-bottom: 16px;
	}
}

.message__text {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
}

@media (width < 1440px) {
	.message__text {
		font-size: 1.11vw;
	}
}

@media (width <=767px) {
	.message__text {
		font-size: 14px;
	}
}

.message__ceo-name {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-top: 31px;
    text-align: center;
    display: block;
    margin: 0 auto
}

.message__ceo-name span {
	display: flex;
	gap: 26px;
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
}

.message__ceo-name span img {
	width: 130px;
}

@media (width < 1440px) {
	.message__ceo-name span img {
		width: 9.03vw;
	}
}

@media (width <=767px) {
	.message__ceo-name span img {
		width: 100px;
	}
}

@media (width < 1440px) {
	.message__ceo-name span {
		gap: 1.81vw;
		font-size: 1.11vw;
	}
}

@media (width <=767px) {
	.message__ceo-name span {
		gap: 20px;
		font-size: 14px;
	}
}

@media (width < 1440px) {
    .message__ceo-name {
        margin-top: 1.94vw;
        text-align: center;
        display:block;
        margin:0 auto
    }
}

@media (width <=767px) {
	.message__ceo-name {
		margin-top: 24px;
	}
}


.comp-info {
	margin-top: min(13.19vw, 190px);
}

.comp-info__container {
	position: relative;
	background-color: var(--color-white);
	border-radius: min(2.78vw, 40px) min(2.78vw, 40px) 0 0;
	padding-top: min(4.39vw, 60px);
	padding-bottom: min(11.6vw, 167px);
}

.comp-info__container::before {
	position: absolute;
	top: 91px;
	right: -92px;
	z-index: 1;
	display: block;
	width: 260px;
	/* prettier-ignore */
	background-image: image-set(url("../images/decoration_comp-comp-info.png") 1x, url("../images/decoration_comp-comp-info@2x.png") 2x);
	background-size: cover;
	background-position: center;
	aspect-ratio: 260/243;
	content: "";
}

@media (width < 1440px) {
	.comp-info__container::before {
		top: 6.32vw;
		right: -6.39vw;
		width: 18.13vw;
	}
}

@media (width <=767px) {
	.comp-info__container::before {
		top: clamp(5rem, 1.8680089485rem + 15.6599552573vw, 9.375rem);
		right: clamp(-6.25rem, -8.0397091723rem + 8.9485458613vw, -3.75rem);
		width: 130px;
	}
}

@media (width <=767px) {
	.comp-info__container {
		border-radius: 20px 20px 0 0;
		padding-top: 40px;
		padding-bottom: 107px;
	}
}

.comp-info .section-title--line {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
}

@media (width < 1440px) {
	.comp-info .section-title--line {
		font-size: 2.08vw;
	}
}

@media (width < 1440px) {
	.comp-info .section-title--line {
		font-size: 2.08vw;
	}
}

@media (width <=767px) {
	.comp-info .section-title--line {
		font-size: 24px;
	}
}

.comp-info__content {
	margin-top: 28px;
}

@media (width < 1440px) {
	.comp-info__content {
		margin-top: 1.94vw;
	}
}

@media (width <=767px) {
	.comp-info__content {
		margin-top: 20px;
	}
}

.comp-info__table {
	margin-left: 4px;
}

@media (width <=767px) {
	.comp-info__table {
		margin-left: 0;
	}
}

.comp-info__head,
.comp-info__data {
	padding-block: 11px;
}

@media (width < 1440px) {

	.comp-info__head,
	.comp-info__data {
		padding-block: 0.76vw;
	}
}

@media (width <=767px) {

	.comp-info__head,
	.comp-info__data {
		padding-block: 8px;
	}
}

.comp-info__head {
	width: 212px;
	font-size: 16px;
	font-weight: 700;
	line-height: 180%;
	color: var(--color-black);
	text-align: left;
	vertical-align: top;
}

@media (width < 1440px) {
	.comp-info__head {
		width: 14.72vw;
		font-size: 1.11vw;
	}
}

@media (width <=767px) {
	.comp-info__head {
		width: 95px;
		font-size: 13px;
	}
}

.comp-info__data {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
	padding-inline: 1.4em;
}

@media (width < 1440px) {
	.comp-info__data {
		font-size: 1.11vw;
		padding-inline: 1.4em;
	}
}

@media (width <=767px) {
	.comp-info__data {
		font-size: 13px;
		padding-inline: 1.2em;
	}
}

.comp-info__list--ordered {
	list-style-type: decimal;
	padding-inline-start: 24px;
}

@media (width < 1440px) {
	.comp-info__list--ordered {
		padding-inline-start: 1.67vw;
	}
}

@media (width <=767px) {
	.comp-info__list--ordered {
		padding-inline-start: 16px;
	}
}

@media (width <=767px) {
	.comp-info {
		margin-top: 80px;
	}
}


.comp-history__title-text {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
}

@media (width < 1440px) {
	.comp-history__title-text {
		font-size: 2.08vw;
	}
}

@media (width <=767px) {
	.comp-history__title-text {
		font-size: 24px;
	}
}


.section-title--line {
	display: flex;
	align-items: center;
}

.section-title--line::after {
	flex: 1;
	height: 2px;
	background: linear-gradient(to right, var(--blue-03) 0%, var(--blue-03) 72px, #d0d0d0 72px, #d0d0d0 100%);
	transform: translateY(2.5px);
	content: "";
	margin-left: 30px;
}

@media (width < 1440px) {
	.section-title--line::after {
		background: linear-gradient(to right, var(--blue-03) 0%, var(--blue-03) 5vw, #d0d0d0 5vw, #d0d0d0 100%);
		transform: translateY(0.17vw);
		margin-left: 2.08vw;
	}
}

@media (width <=767px) {
	.section-title--line::after {
		background: linear-gradient(to right, var(--blue-03) 0%, var(--blue-03) 40px, #d0d0d0 40px, #d0d0d0 100%);
		transform: translateY(1.3px);
		margin-left: 18px;
	}
}



.anchor {
	scroll-margin-top: calc(var(--header-height) + 10px);
}



.time-line {
	position: relative;
	z-index: 5;
	margin-top: min(2.78vw, 40px);
}

.time-line__tag-list {
	display: flex;
	gap: min(0.97vw, 14px);
}

@media (width <=767px) {
	.time-line__tag-list {
		flex-direction: column;
		gap: 8px;
	}
}

.time-line__tag-item {
	display: flex;
	align-items: center;
	gap: min(0.56vw, 8px);
	font-size: min(1.11vw, 16px);
	font-weight: 400;
	line-height: 180%;
	color: #000;
}

@media (width <=767px) {
	.time-line__tag-item {
		gap: 6px;
		font-size: 12px;
	}
}

.time-line__tag--danboru {
	display: inline-block;
	width: min(1.88vw, 27px);
	/* prettier-ignore */
	/* 	background-image: image-set(url("../images/icon_tag--danboru.png") 1x, url("../images/icon_tag--danboru@2x.png") 2x);
	background-size: cover;
	background-position: center; */
	aspect-ratio: 27/29;
	display: none;
}

@media (width <=767px) {
	.time-line__tag--danboru {
		width: 16.2px;
	}
}

.time-line__tag--flex {
	display: inline-block;
	width: min(1.74vw, 25px);
	/* prettier-ignore */
	/* 	background-image: image-set(url("../images/icon_tag--flex.png") 1x, url("../images/icon_tag--flex@2x.png") 2x);
	background-size: cover;
	background-position: center; */
	aspect-ratio: 25/29;
	display: none;
}

@media (width <=767px) {
	.time-line__tag--flex {
		width: 15px;
	}
}

.time-line__tag--coating {
	display: inline-block;
	width: min(1.74vw, 25px);
	/* prettier-ignore */
/* 	background-image: image-set(url("../images/icon_tag--coating.png") 1x, url("../images/icon_tag--coating@2x.png") 2x);
	background-size: cover;
	background-position: center; */
	aspect-ratio: 25/29;
}

@media (width <=767px) {
	.time-line__tag--coating {
		width: 15px;
	}
}

.time-line__inner {
	position: relative;
	/* margin-top: min(2.08vw, 30px); */
	padding-bottom: min(6.11vw, 88px);
}

.time-line__inner::before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 1px;
	height: 100%;
	background-color: #0e0e8f;
	transform: translateX(-50%);
	content: "";
}

@media (width <=767px) {
	.time-line__inner::before {
		left: 7.5%;
	}
}

@media (width <=767px) {
	.time-line__inner {
		max-width: 600px;
		margin-top: 20px;
		padding-bottom: 60px;
		margin-inline: auto;
	}
}

.time-line__item--highlight--01 .time-line__highlight-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	background: linear-gradient(142.23deg, #516ed6 12.3%, #3620c7 89.4%);
	border-radius: min(1.39vw, 20px);
	padding-block: min(0.9vw, 13px) min(1.53vw, 22px);
	margin-bottom: min(3.54vw, 51px);
}

@media (width <=767px) {
	.time-line__item--highlight--01 .time-line__highlight-content {
		border-radius: 15px;
		padding-block: 10px 20px;
		margin-bottom: 10px;
	}
}

.time-line__item--highlight--02 .time-line__highlight-content {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	background: linear-gradient(142.23deg, #516ed6 12.3%, #3620c7 89.4%);
	border-radius: min(1.39vw, 20px);
	margin-top: min(1.88vw, 27px);
	padding-block: min(0.49vw, 7px) min(1.53vw, 22px);
	margin-bottom: min(3.54vw, 51px);
}

@media (width <=767px) {
	.time-line__item--highlight--02 .time-line__highlight-content {
		border-radius: 15px;
		padding-block: 10px 20px;
		margin-bottom: 10px;
		margin-top: clamp(3.75rem, 2.6314317673rem + 5.5928411633vw, 5.3125rem);
	}
}

.time-line__item--highlight--03 .time-line__highlight-content {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	background: linear-gradient(142.23deg, #516ed6 12.3%, #3620c7 89.4%);
	border-radius: min(1.39vw, 20px);
	margin-top: min(3.61vw, 52px);
	padding-block: min(0.49vw, 7px) min(1.53vw, 22px);
	margin-bottom: min(3.54vw, 51px);
}





@media (width <=767px) {
	.time-line__item--highlight--03 .time-line__highlight-content {
		border-radius: 15px;
		padding-block: 10px 20px;
		margin-bottom: 10px;
		margin-top: clamp(3.75rem, 2.6314317673rem + 5.5928411633vw, 5.3125rem);
	}
}

.time-line__highlight-date {
	font-size: min(2.08vw, 30px);
	font-weight: 700;
	line-height: 180%;
	color: var(--color-white);
}

.time-line__item--highlight--02 .time-line__highlight-date,
.time-line__item--highlight--03 .time-line__highlight-date {
	align-self: center;
}

.time-line__highlight-date .number {
	font-size: min(2.22vw, 32px);
}

.time-line__highlight-date .number span {
	font-size: min(1.39vw, 20px);
}

@media (width <=767px) {
	.time-line__highlight-date .number span {
		font-size: 14px;
	}
}

@media (width <=767px) {
	.time-line__highlight-date .number {
		font-size: 26px;
	}
}

@media (width <=767px) {
	.time-line__highlight-date {
		font-size: 24px;
	}
}

.time-line__highlight-text {
	font-size: 16px;
	font-size: min(1.11vw, 16px);
	font-weight: 400;
	line-height: 180%;
	color: var(--color-white);
}

.time-line__item--highlight--02 .time-line__highlight-text,
.time-line__item--highlight--03 .time-line__highlight-text {
	padding-left: min(16.81vw, 242px);
}

.time-line__item--highlight--02 .time-line__highlight-text:nth-child(2),
.time-line__item--highlight--03 .time-line__highlight-text:nth-child(2) {
	display: flex;
	align-items: center;
	gap: min(0.35vw, 5px);
	margin-top: calc(-1 * min(0.35vw, 5px));
}

@media (width <=767px) {

	.time-line__item--highlight--02 .time-line__highlight-text:nth-child(2),
	.time-line__item--highlight--03 .time-line__highlight-text:nth-child(2) {
		justify-content: center;
	}
}

@media (width <=767px) {

	.time-line__item--highlight--02 .time-line__highlight-text:nth-child(2),
	.time-line__item--highlight--03 .time-line__highlight-text:nth-child(2) {
		text-align: center;
		padding-left: 0;
	}
}

@media (width <=767px) {

	.time-line__item--highlight--02 .time-line__highlight-text,
	.time-line__item--highlight--03 .time-line__highlight-text {
		text-align: center;
		padding-inline: 5%;
	}
}

@media (width <=767px) {
	.time-line__highlight-text {
		font-size: 11px;
	}
}

.time-line__item {
	position: relative;
	display: flex;
	width: 100%;
}

.time-line__item--right {
	width: 100%;
	/* padding-left: 50%; */
}

@media (width <=767px) {
	.time-line__item--right {
		width: 92.5%;
		margin-left: 7.5%;
		padding-left: 0;
		border-bottom: 1px solid #e0e0e0;
	}
}

.time-line__item--left {
	width: 100%;
	/* padding-right: 50%; */
}

@media (width <=767px) {
	.time-line__item--left {
		width: 92.5%;
		margin-left: 7.5%;
		padding-right: 0;
		border-bottom: 1px solid #e0e0e0;
	}
}

.time-line__center {
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translateX(-50%);
}

@media (width <=767px) {
	.time-line__center {
		left: 0;
		transform: translateX(0);
	}
}

.time-line__dot {
	position: absolute;
	top: calc(-1 * min(0.35vw, 5px));
	left: 0;
	width: min(0.69vw, 10px);
	background: #0e0e8f;
	border-radius: 50%;
	transform: translateX(-50%);
	aspect-ratio: 10/10;
}

@media (width <=767px) {
	.time-line__dot {
		top: -3px;
		width: 6px;
	}
}

.time-line__content {
    display: flex;
    width: 100%;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: min(2vw, 31px);
    padding-top: 20px;
}

.time-line__item--11 .time-line__content {
	padding-bottom: min(0.56vw, 8px);
}

.time-line__item--right .time-line__content {
	gap: min(1.04vw, 15px);
	padding-left: min(1.04vw, 15px);
}

@media (width <=767px) {
	.time-line__item--right .time-line__content {
		gap: 0;
		padding-left: 5%;
	}
}

.time-line__item--left .time-line__content {
	gap: min(1.04vw, 15px);
	padding-left: min(1.04vw, 15px);
}

@media (width <=767px) {
	.time-line__item--left .time-line__content {
		gap: 0;
		padding-left: 5%;
	}
}

@media (width <=767px) {
	.time-line__content {
		flex-direction: column;
		border-bottom: none;
	}
}

.time-line__date {
    font-size: min(1.67vw, 24px);
    font-weight: 500;
    line-height: 2;
    color: var(--color-black);
    width: 200px;
}

.time-line__item--11 .time-line__date,
.time-line__item--14 .time-line__date,
.time-line__item--16 .time-line__date,
.time-line__item--17 .time-line__date,
.time-line__item--19 .time-line__date,
.time-line__item--20 .time-line__date,
.time-line__item--21 .time-line__date,
.time-line__item--22 .time-line__date,
.time-line__item--23 .time-line__date,
.time-line__item--24 .time-line__date,
.time-line__item--25 .time-line__date {
	transform: translateY(calc(-1 * min(0.49vw, 7px)));
}

@media (width <=767px) {
	.time-line__date {
		font-size: 14.4px;
	}
}

.time-line__text {
	position: relative;
	font-size: min(1.11vw, 16px);
	font-weight: 400;
	line-height: 2;
	color: #1e1e1e;
}

.time-line__text:has(.time-line__tag) {
	text-indent: 2em;
}

.time-line__text .time-line__tag {
	position: absolute;
	top: 0.1em;
	left: 0;
}

@media (width <=767px) {
	.time-line__text {
		font-size: 11px;
	}
}

.time-line__item--02 {
	/* margin-top: calc(-1 * min(1.11vw, 16px)); */
}

@media (width <=767px) {
	.time-line__item--02 {
		margin-top: 0;
	}
}

.time-line__item--03 {
	position: relative;
	margin-top: calc(-1 * min(3.96vw, 57px));
}

.time-line__item--03::after {
	position: absolute;
	top: calc(-1 * min(0.35vw, 5px));
	right: 0;
	display: block;
	width: min(13.75vw, 198px);
	/* prettier-ignore */

	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	aspect-ratio: 198/104;
	content: "";
}

@media (width <=767px) {
	.time-line__item--03::after {
		position: relative;
		top: unset;
		right: unset;
		width: clamp(4.333125rem, 0.6342435682rem + 18.4944071588vw, 9.5rem);
		margin-top: 5px;
		margin-bottom: 5px;
		flex-shrink: 0;
	}
}

@media (width <=767px) {
	.time-line__item--03 {
		margin-top: 0;
	}
}

.time-line__item--04 {
	position: relative;
	/* margin-top: calc(-1 * min(0.83vw, 12px)); */
}

@media (width <=767px) {
	.time-line__item--04 {
		margin-top: 0;
	}
}

.time-line__item--05 {
	margin-top: calc(-1 * min(2.85vw, 41px));
}

@media (width <=767px) {
	.time-line__item--05 {
		margin-top: 0;
	}
}

.time-line__item--06 {
	/* margin-top: calc(-1 * min(1.81vw, 26px)); */
}

@media (width <=767px) {
	.time-line__item--06 {
		margin-top: 0;
	}
}

.time-line__item--08 {
	/* margin-top: calc(-1 * min(1.46vw, 21px)); */
}

@media (width <=767px) {
	.time-line__item--08 {
		margin-top: 0;
	}
}

.time-line__item--09 {
	margin-top: calc(-1 * min(4.31vw, 62px));
}

@media (width <=767px) {
	.time-line__item--09 {
		margin-top: 0;
	}
}

.time-line__item--10 {
	margin-top: calc(-1 * min(1.04vw, 15px));
}

@media (width <=767px) {
	.time-line__item--10 {
		margin-top: 0;
	}
}

.time-line__item--11 {
	margin-top: calc(-1 * min(1.04vw, 15px));
}

@media (width <=767px) {
	.time-line__item--11 {
		margin-top: 0;
	}
}

.time-line__item--12 {
	margin-top: min(0.28vw, 4px);
}

@media (width <=767px) {
	.time-line__item--12 {
		margin-top: 0;
	}
}

.time-line__item--13 {
	margin-top: min(0.28vw, 4px);
}

@media (width <=767px) {
	.time-line__item--13 {
		margin-top: 0;
	}
}

.time-line__item--14 {
	margin-top: min(0.83vw, 12px);
}

@media (width <=767px) {
	.time-line__item--14 {
		margin-top: 0;
	}
}

.time-line__item--16 {
	margin-top: min(0.69vw, 10px);
}

@media (width <=767px) {
	.time-line__item--16 {
		margin-top: 0;
	}
}

.time-line__item--17 {
	margin-top: min(2.78vw, 40px);
}

@media (width <=767px) {
	.time-line__item--17 {
		margin-top: 0;
	}
}

.time-line__item--18 {
	position: relative;
	margin-top: calc(-1 * min(0.28vw, 4px));
}

.time-line__item--18::after {
	position: absolute;
	top: calc(-1 * min(5.35vw, 77px));
	right: 0;
	display: block;
	width: min(12.78vw, 184px);
	/* prettier-ignore */
	background-image: image-set(url("../images/img_comp-time-line-item--18.png") 1x, url("../images/img_comp-time-line-item--18@2x.png") 2x);
	background-size: cover;
	background-position: center;
	aspect-ratio: 184/160;
	content: "";
}

@media (width <=767px) {
	.time-line__item--18::after {
		position: relative;
		top: unset;
		right: unset;
		width: clamp(3.833125rem, 0.4026999441rem + 17.1521252796vw, 8.625rem);
		margin-top: 5px;
		margin-bottom: 5px;
		flex-shrink: 0;
	}
}

@media (width <=767px) {
	.time-line__item--18 {
		margin-top: 0;
	}
}

.time-line__item--19 {
	margin-top: calc(-1 * min(1.18vw, 17px));
}

@media (width <=767px) {
	.time-line__item--19 {
		margin-top: 0;
	}
}

.time-line__item--20 {
	margin-top: min(0.14vw, 2px);
}

@media (width <=767px) {
	.time-line__item--20 {
		margin-top: 0;
	}
}

.time-line__item--21 {
	margin-top: min(0.28vw, 4px);
}

@media (width <=767px) {
	.time-line__item--21 {
		margin-top: 0;
	}
}

.time-line__item--22 {
	margin-top: min(0.35vw, 5px);
}

@media (width <=767px) {
	.time-line__item--22 {
		margin-top: 0;
	}
}

.time-line__item--23 {
	margin-top: min(0.28vw, 4px);
}

@media (width <=767px) {
	.time-line__item--23 {
		margin-top: 0;
	}
}

.time-line__item--24 {
	position: relative;
	margin-top: min(2.01vw, 29px);
	padding-bottom: min(3.4vw, 49px);
}

.time-line__item--24::after {
	position: absolute;
	top: calc(-1 * min(4.58vw, 66px));
	right: 0;
	display: block;
	width: min(14.65vw, 211px);
	/* prettier-ignore */
	background-image: image-set(url("../images/img_comp-time-line-item--25.png") 1x, url("../images/img_comp-time-line-item--25@2x.png") 2x);
	background-size: cover;
	background-position: center;
	aspect-ratio: 211/160;
	content: "";
}

@media (width <=767px) {
	.time-line__item--24::after {
		position: relative;
		top: unset;
		right: unset;
		width: clamp(4.395625rem, 0.4618442394rem + 19.6689038031vw, 9.890625rem);
		margin-top: 5px;
		margin-bottom: 5px;
		flex-shrink: 0;
	}
}

@media (width <=767px) {
	.time-line__item--24 {
		margin-top: 0;
	}
}

.time-line__item--25 {
	margin-top: min(0.42vw, 6px);
}

@media (width <=767px) {
	.time-line__item--25 {
		margin-top: 0;
	}
}

@media (width <=767px) {

	.time-line__item.time-line__item--right,
	.time-line__item.time-line__item--left {
		margin-top: 10px;
	}
}

@media (width <=767px) {
	.time-line {
		margin-top: 24px;
	}
}

.comp-history__container {
	position: relative;
	background-color: var(--color-white);
	margin-top: -1px;
	/*
  &::before {
    position: absolute;
    top: min(61.18vw, 881px);
    left: -92px;
    z-index: 1;
    display: block;
    width: 260px;
    /* prettier-ignore */
	/*
  background-image: image-set(url("/images/decoration_comp-history-container-01.png") 1x,url("/images/decoration_comp-history-container-01@2x.png") 2x);
  background-size: cover;
  background-position: center;
  aspect-ratio: 260/243;
  content: "";
  @media (width < 1440px) {
    right: -6.39vw;
    width: 18.13vw;
  }
  @media (width <= 767px) {
    top: util.rclamp(80, 150, 320, 767);
    right: util.rclamp(-100, -60, 320, 767);
    width: 130px;
  }
}
*/
}

.comp-history__container::after {
	position: absolute;
	top: min(100.49vw, 1447px);
	right: calc(-1 * min(13.13vw, 189px));
	z-index: 1;
	display:none;
	width: min(27.08vw, 390px);
	/* prettier-ignore */
	background-image: image-set(url("../images/decoration_comp-history-container-02.png") 1x, url("../images/decoration_comp-history-container-02@2x.png") 2x);
	background-size: cover;
	background-position: center;
	aspect-ratio: 390/364;
	content: "";
}

@media (width < 1440px) {
	.comp-history__container::after {
		top: 6.32vw;
	}
}

@media (width <=767px) {
	.comp-history__container::after {
		top: clamp(5rem, 1.8680089485rem + 15.6599552573vw, 9.375rem);
		right: clamp(-6.25rem, -8.0397091723rem + 8.9485458613vw, -3.75rem);
		width: 130px;
	}
}

.location {
	position: relative;
	background-color: var(--color-white);
	isolation: isolate;
}

.location__container {
	position: relative;
	background: #edf0fe;
	border-radius: 40px 40px 0px 0px;
	padding-top: 140px;
	padding-bottom: 97px;
}

@media (width < 1440px) {
	.location__container {
		border-radius: 2.78vw 2.78vw 0vw 0vw;
		padding-top: 9.72vw;
		padding-bottom: 6.74vw;
	}
}

@media (width <=767px) {
	.location__container {
		border-radius: 20px 20px 0px 0px;
		padding-top: 80px;
		padding-bottom: 60px;
	}
}

.location__inner {
	position: relative;
	z-index: 1;
}

.location .section-title--line {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
}

@media (width < 1440px) {
	.location .section-title--line {
		font-size: 2.08vw;
	}
}

@media (width <=767px) {
	.location .section-title--line {
		font-size: 24px;
	}
}

.location__content {
	margin-top: 47px;
}

@media (width < 1440px) {
	.location__content {
		margin-top: 3.26vw;
	}
}

@media (width <=767px) {
	.location__content {
		margin-top: 30px;
	}
}

.location__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 24px;
}

@media (width < 1440px) {
	.location__list {
		gap: min(1.67vw, 24px);
	}
}

@media (width <=767px) {
	.location__list {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}
}

.location__item {
	width: calc((100% - 24px) / 2);
}

@media (width <=767px) {
	.location__item {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 100%;
	}
}

.location__map-wrapper {
	width: 100%;
	border-radius: 10px;
	overflow: hidden;
	aspect-ratio: 566/310;
}

@media (width <=767px) {
	.location__map-wrapper {
		max-width: 500px;
		border-radius: 8px;
	}
}

.location__map-iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.location__info {
	display: flex;
	justify-content: space-between;
	margin-top: 25px;
}

@media (width < 1440px) {
	.location__info {
		margin-top: 1.74vw;
	}
}

@media (width <=767px) {
	.location__info {
		flex-direction: column;
		align-items: center;
		gap: 16px;
		margin-top: 20px;
	}
}

.location__address address {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: #000000;
	margin-top: 15px;
}

@media (width < 1440px) {
	.location__address address {
		font-size: 1.11vw;
		margin-top: 1.04vw;
	}
}

@media (width <=767px) {
	.location__address address {
		font-size: 14px;
		margin-top: 12px;
	}
}

.location__name {
	font-size: 30px;
	font-weight: 700;
	line-height: 36px;
	color: #000000;
}

.location__name span {
	font-size: 18px;
}

@media (width < 1440px) {
	.location__name span {
		font-size: 1.25vw;
	}
}

@media (width <=767px) {
	.location__name span {
		font-size: 14px;
	}
}

@media (width < 1440px) {
	.location__name {
		font-size: 2.08vw;
		line-height: 2.5vw;
	}
}

@media (width <=767px) {
	.location__name {
		font-size: 24px;
		line-height: 29px;
	}
}

.location__image-wrapper {
	width: 240px;
}

    .location__image-wrapper img {
        width: 240px;
        height: 198px;
        object-fit: cover;
        border-radius: 20px;
    }

@media (width < 1440px) {
	.location__image-wrapper {
		width: 16.67vw;
	}
}

@media (width <=767px) {
	.location__image-wrapper {
		display: flex;
		justify-content: center;
		width: 300px;
		max-width: 80%;
	}
}

.location__decoration {
	position: absolute;
	top: 770px;
	left: -73px;
	width: 260px;
}

@media (width < 1440px) {
	.location__decoration {
		top: 53.61vw;
		left: -73px;
		width: 18.13vw;
	}
}

@media (width <=1280px) {
	.location__decoration {
		display: none;
	}
}

@media (width <=767px) {
	.location__decoration {
		top: 100vw;
		display: block;
		width: 130px;
	}
}
@media screen and (min-width:980px) and (max-width:1600px){
	.main{ overflow: hidden;}
}
@media only screen and (max-width: 980px) {
.main{ overflow: hidden;}
.message__bg{ width: 100% !important;}
.main-visual--comp .wapper{ width: 100% !important;}
.message .wapper{ width: 100% !important;}
.comp-info .wapper{ width: 100% !important;}
.comp-history .wapper{ width: 100% !important;}
.location .wapper{ width: 100% !important;}
}


.panel-contract__product-process {
	/* margin-top: 84px; */
  }
  @media (width < 1440px) {
	.panel-contract__product-process {
	  /* margin-top: 5.83vw; */
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process {
	  /* margin-top: 67px; */
	}
  }
  .panel-contract__product-process-title-text {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
  }
  @media (width < 1440px) {
	.panel-contract__product-process-title-text {
	  font-size: 2.08vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-title-text {
	  font-size: 18px;
	}
  }
  .panel-contract__product-process-content {
	margin-top: 30px;
  }
  @media (width < 1440px) {
	.panel-contract__product-process-content {
	  margin-top: 2.08vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-content {
	  margin-top: 24px;
	}
  }
  .panel-contract__product-process-content-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
  }
  @media (width < 1440px) {
	.panel-contract__product-process-content-text {
	  font-size: 1.11vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-content-text {
	  font-size: 12px;
	}
  }
  .panel-contract__product-process {
	/* margin-top: 83px; */
  }
  @media (width < 1440px) {
	.panel-contract__product-process {
	  /* margin-top: 5.56vw; */
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process {
	  /* margin-top: 64px; */
	}
  }
  .panel-contract__product-process-title-text {
	font-size: 30px;
	font-weight: 900;
	line-height: 120%;
	color: var(--blue-01);
  }
  @media (width < 1440px) {
	.panel-contract__product-process-title-text {
	  font-size: 2.08vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-title-text {
	  font-size: 18px;
	}
  }
  .panel-contract__product-process-text {
	margin-top: 30px;
  }
  .panel-contract__product-process-text p {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
  }
  @media (width < 1440px) {
	.panel-contract__product-process-text p {
	  font-size: 1.11vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-text p {
	  font-size: 12px;
	}
  }
  @media (width < 1440px) {
	.panel-contract__product-process-text {
	  margin-top: 2.08vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-text {
	  margin-top: 24px;
	}
  }
  .panel-contract__product-process-flow {
	margin-top: 36px;
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow {
	  margin-top: 2.5vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow {
	  margin-top: 28.8px;
	}
  }
  .panel-contract__product-process-flow-list {
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 812px;
	margin-inline: auto;
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow-list {
	  gap: 1.25vw;
	  width: 56.53vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-list {
	  gap: 14.4px;
	  width: 100%;
	  max-width: 500px;
	}
  }
  .panel-contract__product-process-flow-item {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	background: var(--blue-05);
	border-radius: 14px;
	aspect-ratio: 812/70;
  }
  .panel-contract__product-process-flow-item .triangle {
	position: absolute;
	bottom: -10px;
	left: 70px;
	z-index: 0;
	width: 20px;
	aspect-ratio: 20/14;
	content: "";
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow-item .triangle {
	  bottom: -0.69vw;
	  left: 4.86vw;
	  width: 1.39vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-item .triangle {
	  bottom: -15%;
	  left: 17%;
	  width: 4%;
	}
  }
  .panel-contract__product-process-flow-item.deep-blue {
	/*background: var(--blue-02);*/
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-item {
	  height: clamp(34px, 10vw, 50px);
	  aspect-ratio: unset;
	}
  }
  .panel-contract__product-process-flow-item-title {
	width: 140px;
	font-size: 20px;
	font-weight: 600;
	line-height: 140%;
	color: var(--blue-01);
	margin-left: 30px;
	flex-shrink: 0;
  }
  .deep-blue .panel-contract__product-process-flow-item-title {
	/*color: var(--color-white);*/
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow-item-title {
	  width: 9.72vw;
	  font-size: 1.39vw;
	  margin-left: 2.08vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-item-title {
	  width: 24%;
	  font-size: clamp(0.625rem, 0.5355145414rem + 0.4474272931vw, 0.75rem);
	  margin-left: 8px;
	}
  }
  .panel-contract__product-process-flow-icon {
	width: 82px;
	flex-shrink: 0;
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow-icon {
	  width: 5.69vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-icon {
	  width: 11vw;
	  max-width: 55px;
	}
  }
  .panel-contract__product-process-flow-item-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
	color: var(--color-black);
	margin-left: 20px;
	padding-right: 20px;
  }
  .deep-blue .panel-contract__product-process-flow-item-text {
	/*color: var(--color-white);*/
  }
  @media (width < 1440px) {
	.panel-contract__product-process-flow-item-text {
	  font-size: 1.11vw;
	  margin-left: 1.39vw;
	  padding-right: 1.39vw;
	}
  }
  @media (width <= 767px) {
	.panel-contract__product-process-flow-item-text {
	  font-size: clamp(0.5625rem, 0.4730145414rem + 0.4474272931vw, 0.6875rem);
	  margin-left: 8px;
	  padding-right: 8px;
	}
  }