html, body, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
main, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	letter-spacing: inherit;
	vertical-align: baseline;
	box-sizing: border-box;
}

em, address {
	font-style: normal;
}

span, div {
	box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section {
	display: block;
	box-sizing: border-box;
}

/* HTML5 hidden-attribute fix for newer browsers */
*[hidden] {
	display: none;
}

body {
	line-height: 1;
}

menu, ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
	content: none;
}

button {
	width: auto;
	padding: 0;
	border: none;
	border-radius: 0;
	vertical-align: middle;
	background-color: transparent;
	box-sizing: border-box;
	overflow: visible;
}
button:not(:disabled) {
	cursor: pointer;
}

img {
	user-select: none;
	-webkit-user-select: none;
	-webkit-user-drag: none;
	-webkit-touch-callout: none;
	pointer-events: none;
	max-width: 100%;
}

a, input, textarea, select, button {
	text-decoration: none;
	font-size: 100%;
	font: inherit;
	font-weight: inherit;
	color: inherit;
	text-transform: inherit;
	-webkit-tap-highlight-color: transparent;
	cursor: pointer;
}
a[disabled], a[readonly], input[disabled], input[readonly], textarea[disabled], textarea[readonly], select[disabled], select[readonly], button[disabled], button[readonly] {
	cursor: default;
}

a:hover, a:active, a:focus {
	text-decoration: none;
}

button *, a * {
	pointer-events: none;
}

input[type=text]::-ms-clear, input[type=tel]::-ms-clear {
	display: none;
}

select {
	vertical-align: middle;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	outline: none;
}
select::-ms-expand {
	display: none;
}

caption, legend {
	text-indent: -9999px;
	width: 0;
	height: 0;
	font-size: 1px;
	line-height: 0;
	border: 0;
	white-space: nowrap;
	overflow: hidden;
}

table {
	table-layout: fixed;
	border-spacing: 0;
	width: 100%;
	empty-cells: show;
	border-collapse: collapse;
}

th, td {
	text-indent: 0;
	word-break: keep-all;
	word-wrap: break-word;
}

div:focus, button:focus:not(:focus-visible), a:focus:not(:focus-visible) {
	outline: none;
}

* {
	letter-spacing: -0.01em !important;
}

@keyframes mainShuffleColor {
	0%, 75% {
		color: var(--pointC1);
	}
	100% {
		color: #fff;
	}
}
@keyframes fadeUp {
	0% {
		transform: translateY(100%);
		opacity: 0;
	}
	100% {
		transform: translateY(0);
		opacity: 1;
	}
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes zoomIn {
	0% {
		transform: scale(1.4);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes rotateAni {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(180deg);
	}
}
:root {
	--vh: 1vh;
	--vh-100: 100vh;
	--vh: 1vh;
	--vw-100: 100vw;
	--vw: 1vw;
	--cont-pd: clamp(2rem, 5.2vw, 10rem);
	--cont-pd-m: calc(var(--cont-pd) * -1);
	--cont-full: calc(var(--cont-pd) * -1);
	--cont-pd-v: clamp(10rem, 10.416vw, 20rem);
	--cont-pd-v-2: clamp(8rem, 7.291vw, 14rem);
	--gnb-h: clamp(6rem, 6.25vw, 12rem);
	--color1: #767676;
	--pointC1: #1C54F0;
}

@font-face {
	font-family: Bicubik;
	src: local("Bicubik Regular"), url("../font/Bicubik-Regular.woff") format("woff");
	font-display: swap;
	font-weight: 400;
}
@font-face {
	font-family: Pretendard;
	src: local("Pretendard Regular"), url("../font/Pretendard-Regular.woff") format("woff");
	font-display: swap;
	font-weight: 400;
}
@font-face {
	font-family: Pretendard;
	src: local("Pretendard SemiBold"), url("../font/Pretendard-SemiBold.woff") format("woff");
	font-display: swap;
	font-weight: 600;
}
@font-face {
	font-family: Pretendard;
	src: local("Pretendard Bold"), url("../font/Pretendard-Bold.woff") format("woff");
	font-display: swap;
	font-weight: 700;
}
html {
	font-size: 62.5%;
	scrollbar-width: thin;
}

@media (max-width: 1023px) {
	html {
		font-size: min(2.7777777778vw, 10px);
	}
}
body {
	font-family: "Pretendard", sans-serif;
	line-height: normal;
	word-break: keep-all;
	word-wrap: break-word;
	overflow-wrap: anywhere;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;
	min-height: 100%;
}

/****************************** COMMON ******************************/
.blind {
	overflow: hidden;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	line-height: 0;
	white-space: normal;
	word-wrap: break-word;
	word-break: break-all;
	clip: rect(0, 0, 0, 0);
}

.iblock {
	display: inline-block;
}

[data-shuffle-play]:not(.shuffle-initialized) {
	opacity: 0;
}

video.playing + [data-video-control] {
	display: none;
}

@media (min-width: 1024px) {
	[data-shuffle-mouse] {
		position: relative;
	}
	[data-shuffle-mouse] .shuffle-clone {
		position: absolute;
		opacity: 0;
		white-space: nowrap;
		transition: opacity 400ms;
	}
	[data-shuffle-mouse]:hover .shuffle-clone {
		opacity: 1;
	}
}
/* Accessibility SKIP Start */
.skip {
	position: fixed;
	left: 0;
	right: 0;
	top: -40px;
	z-index: 999;
	background: rgba(0, 0, 0, 0.8);
	transition: all 400ms;
}
.skip:focus-within {
	top: 0;
}
.skip a {
	display: block;
	color: #fff;
	line-height: 4rem;
	text-align: center;
}

/* Accessibility SKIP End */
@media (max-width: 1023px) {
	.only-pc {
		display: none;
	}
}
@media (min-width: 1024px) {
	.only-mo {
		display: none;
	}
}
.ir:not(.ir-a):not(.ir-b)::before, .ir-a::after, .ir-b::before {
	content: "";
}
.ir:not(.ir-a):not(.ir-b)::before, .ir-a::after, .ir-b::before {
	display: inline-block;
	font-size: 1px;
	color: transparent;
	white-space: nowrap;
	overflow: hidden;
	text-indent: -999px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	vertical-align: middle;
}
.ir:not(.ir-a):not(.ir-b).i-top::before, .ir-a.i-top::after, .ir-b.i-top::before {
	width: clamp(2rem, 1.5625vw, 3rem);
	height: clamp(2rem, 1.5625vw, 3rem);
	background-image: url("../img/ico-top.svg");
}
.ir:not(.ir-a):not(.ir-b).i-go::before, .ir-a.i-go::after, .ir-b.i-go::before {
	width: clamp(2.4rem, 3.3333333333vw, 6.4rem);
	height: clamp(2.4rem, 3.3333333333vw, 6.4rem);
	margin-left: clamp(1.5rem, 1.5625vw, 3rem);
	background-image: url("../img/ico-go.svg");
}
@media (max-width: 1023px) {
	.ir.i-go, .ir-a.i-go, .ir-b.i-go {
		position: relative;
		display: block;
	}
	.ir.i-go::before, .ir-b.i-go::before, .ir-a.i-go::after {
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
}
.ir.i-go-2, .ir-a.i-go-2, .ir-b.i-go-2, .ir.i-play, .ir-a.i-play, .ir-b.i-play {
	position: relative;
}
.ir:not(.ir-a):not(.ir-b).i-go-2::before, .ir-a.i-go-2::after, .ir-b.i-go-2::before {
	position: absolute;
	top: calc(50% - 0.2rem);
	right: 0;
	transform: translateY(-50%);
	width: clamp(4rem, 4.1666666667vw, 8rem);
	height: clamp(4rem, 4.1666666667vw, 8rem);
	background-image: url("../img/ico-go-02.svg");
}
.ir:not(.ir-a):not(.ir-b).i-play::before, .ir-a.i-play::after, .ir-b.i-play::before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border: clamp(0.1rem, 0.1041666667vw, 0.2rem) solid #fff;
	border-radius: 100%;
	width: clamp(2.8rem, 3.6458333333vw, 7rem);
	height: clamp(2.8rem, 3.6458333333vw, 7rem);
	background-size: 34.28% 34.28%;
	background-image: url("../img/ico-play.svg");
}

.logo-genai {
	display: inline-block;
	font-size: 1px;
	color: transparent;
	aspect-ratio: 331/69;
}
.logo-genai:not(svg) {
	background: url("../img/genai-logo.svg") center center/contain no-repeat;
}

.header {
	--gnb-color: #fff;
	--gnb-bg: rgba(0,0,0,.8);
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	z-index: 100;
	min-height: var(--gnb-h);
	background-color: transparent;
	color: var(--gnb-color);
	transition: transform 600ms 20ms;
}
.header.light {
	--gnb-color: #000;
	--gnb-bg: rgba(255,255,255,.8);
}
.header:not(.initialized) {
	transform: translateY(-100%);
}
.header h1 {
	position: absolute;
	top: 0;
	z-index: 10;
	left: var(--cont-pd);
}
.header h1 a {
	display: flex;
	align-items: center;
	height: var(--gnb-h);
}
.header h1 svg {
	fill: var(--gnb-color);
}
.header h1 .logo-genai {
	width: clamp(7.7rem, 6.3541666667vw, 12.2rem);
}
@media (max-width: 1023px) {
	.wrap:not([data-page=index]) .header h1 .logo-genai {
		display: none;
	}
}
.header h1 .page-back {
	width: 2.4rem;
	aspect-ratio: 1/1;
	margin-left: -0.6rem;
}
@media (min-width: 1024px) {
	.header h1 .page-back {
		display: none;
	}
}
@media (max-width: 1023px) {
	.wrap[data-page=index] .header h1 .page-back {
		display: none;
	}
}
.header .util {
	font-family: "Bicubik", sans-serif;
	font-size: 1.6rem;
}
.header .util a {
	display: inline-block;
	padding: 0 clamp(2.4rem, 1.6666666667vw, 3.2rem);
	line-height: clamp(4.3rem, 3.0208333333vw, 5.8rem);
	border-radius: 4rem;
	color: #fff;
	background-color: var(--pointC1);
	transition: background 400ms;
}
.header .util a[data-shuffle-mouse]:hover {
	color: transparent !important;
	background-color: #fff;
}
.header .util a[data-shuffle-mouse]:hover .shuffle-clone {
	color: var(--pointC1);
}
.header.initialized.min {
	transition-delay: 0ms;
}
.header.initialized.min.scroll-down {
	transform: translateY(-100%);
}
@media (max-width: 1023px) {
	.header::after {
		content: "";
		position: fixed;
		left: 100%;
		top: 0;
		width: 100%;
		height: var(--vh-100);
		background-color: #000;
		transition: left 400ms;
	}
	.header .all-toggle {
		position: absolute;
		top: calc((var(--gnb-h) - 2rem) / 2);
		right: var(--cont-pd);
		z-index: 10;
		width: 2.4rem;
		height: 2.4rem;
		padding: 0.2rem;
		aspect-ratio: 1/1;
		--w: 2rem;
		--h: 0.2rem;
	}
	.header .all-toggle .in {
		position: relative;
		display: block;
		width: var(--w);
		height: var(--h);
		font-size: 1px;
		line-height: 0;
		color: transparent;
		background-color: var(--gnb-color);
		transition: background 400ms 400ms;
	}
	.header .all-toggle .in::before {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: var(--w);
		height: var(--h);
		margin-top: -0.6rem;
		background-color: var(--gnb-color);
		transform: translate(-50%, -50%);
		transition: margin 400ms 400ms, transform 400ms;
	}
	.header .all-toggle .in::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: var(--w);
		height: var(--h);
		margin-top: 0.6rem;
		background-color: var(--gnb-color);
		transform: translate(-50%, -50%);
		transition: margin 400ms 400ms, transform 400ms;
	}
	.header .gnb {
		position: fixed;
		left: 100%;
		top: var(--gnb-h);
		z-index: 2;
		display: flex;
		flex-direction: column;
		gap: 8.33vh;
		width: 100%;
		height: calc(var(--vh-100) - var(--gnb-h));
		padding: 5.55vh var(--cont-pd) var(--gnb-h);
		color: #fff;
		overflow-y: auto;
		transition: left 400ms;
	}
	.header .gnb .main {
		display: flex;
		flex-direction: column;
		gap: 3.33vh;
		font-family: "Bicubik", sans-serif;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.header .gnb .main > li > a {
		font-size: clamp(2rem, min(5vh, 10vw), 3.6rem);
	}
	.header .gnb .main .sub {
		display: flex;
		flex-direction: column;
		gap: 0.8rem;
		margin-top: 0.4rem;
	}
	.header.shown-all {
		--gnb-color: #fff;
	}
	.header.shown-all::after, .header.shown-all .gnb {
		left: 0;
	}
	.header.shown-all .all-toggle .in {
		background-color: transparent;
		transition-delay: 0ms;
	}
	.header.shown-all .all-toggle .in::before {
		margin-top: 0;
		transform: translate(-50%, -50%) rotate(-45deg);
		transition-delay: 0ms, 400ms;
	}
	.header.shown-all .all-toggle .in::after {
		margin-top: 0;
		transform: translate(-50%, -50%) rotate(45deg);
		transition-delay: 0ms, 400ms;
	}
}
@media (min-width: 1024px) {
	.header:focus-within, .header:hover {
		--gnb-color: #fff;
		--gnb-bg: rgba(0,0,0,.8);
	}
	.header:not(:focus-within):not(:hover) .gnb::after {
		backdrop-filter: blur(0);
		background-color: transparent;
		transition-delay: 400ms;
	}
	.header:not(:focus-within):not(:hover) .gnb::before {
		opacity: 0;
	}
	.header:not(:focus-within):not(:hover) .gnb .sub {
		max-height: 0;
	}
	.header .gnb {
		font-family: "Bicubik", sans-serif;
		font-size: 1.6rem;
		text-align: center;
		width: fit-content;
		margin: 0 auto;
	}
	.header .gnb [data-shuffle-mouse]:hover {
		color: transparent !important;
	}
	.header .gnb [data-shuffle-mouse]:hover .shuffle-clone {
		color: var(--gnb-color);
	}
	.header .gnb::after {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		z-index: -1;
		width: 100%;
		height: 100%;
		background-color: var(--gnb-bg);
		backdrop-filter: blur(4px);
		transition: all 400ms;
	}
	.header .gnb::before {
		content: "";
		position: absolute;
		left: 50%;
		z-index: 2;
		width: 100%;
		height: 1px;
		top: var(--gnb-h);
		transform: translateX(-50%);
		background-color: #575B67;
		transition: all 400ms;
	}
	.header .gnb .main {
		display: flex;
		gap: clamp(6rem, 6.25vw, 12rem);
	}
	.header .gnb .main > li > a {
		position: relative;
		display: flex;
		align-items: center;
		height: var(--gnb-h);
	}
	.header .gnb .main > li > a::before {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 2;
		width: 0%;
		height: 0.3rem;
		background-color: var(--gnb-color);
		transition: all 400ms;
	}
	.header .gnb .main:not(:focus-within):not(:hover) > li.active > a::before, .header .gnb .main:not(:hover) > li:focus-within > a::before, .header .gnb .main:not(:focus-within) > li:hover > a::before {
		width: 100%;
	}
	.header .gnb .sub {
		display: flex;
		flex-direction: column;
		max-height: 40rem;
		overflow: hidden;
		margin: 0 -5rem 0;
		line-height: 1.25;
		gap: 2.4rem;
		transition: max-height 400ms;
	}
	.header .gnb .sub::before {
		content: "";
		display: block;
		height: 3rem;
	}
	.header .gnb .sub::after {
		content: "";
		display: block;
		height: 6rem;
	}
	.header .gnb .sub a {
		font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
		transition: color 400ms;
	}
	.header .gnb .sub a:hover, .header .gnb .sub a:focus-visible {
		color: var(--pointC1);
	}
	.header .util {
		position: absolute;
		top: 0;
		right: var(--cont-pd);
		display: flex;
		height: var(--gnb-h);
		align-items: center;
	}
}

.page-top {
	display: block;
	position: sticky;
	bottom: 2rem;
	z-index: 100;
	margin-left: auto;
	margin-right: var(--cont-pd);
	width: clamp(4rem, 3.8541666667vw, 7.4rem);
	height: clamp(4rem, 3.8541666667vw, 7.4rem);
	border-radius: 0.4rem;
	background-color: var(--pointC1);
	transition: all 400ms;
}
.header:not(.min) ~ .page-top {
	opacity: 0;
	transform: translateY(100%);
}
@media (max-width: 1023px) {
	.page-top {
		bottom: 0;
		margin-top: calc(clamp(4rem, 3.8541666667vw, 7.4rem) * -1);
		transform: translateY(-2rem);
	}
}
@media (min-width: 1024px) {
	.page-top {
		margin-top: calc(clamp(4rem, 3.8541666667vw, 7.4rem) * -0.5);
		margin-bottom: calc(clamp(4rem, 3.8541666667vw, 7.4rem) * -0.5);
	}
}

.footer {
	position: relative;
	padding: clamp(5.8rem, 5.2083333333vw, 10rem) var(--cont-pd);
	display: flex;
}
@media (max-width: 1023px) {
	.footer {
		flex-direction: column;
		gap: 5rem;
	}
	.footer .logo-iteyes {
		order: 1;
	}
}
@media (min-width: 1024px) {
	.footer {
		align-items: end;
		justify-content: space-between;
		gap: 6rem;
	}
}
@media (min-width: 1024px) and (max-width: 1280px) {
	.footer {
		align-items: start;
		flex-direction: column;
	}
	.footer .logo-iteyes {
		order: 1;
	}
}
.footer .logo-iteyes {
	width: clamp(10rem, 8.5416666667vw, 16.4rem);
}
.footer .logo-iteyes img {
	max-width: 100%;
}
.footer .inner {
	display: flex;
	flex-direction: column;
	font-size: clamp(1.2rem, 0.8333333333vw, 1.6rem);
	line-height: 1.625;
}
@media (max-width: 1023px) {
	.footer .inner {
		flex-direction: column;
	}
}
@media (min-width: 1024px) {
	.footer .inner {
		width: 74.7%;
	}
}
@media (min-width: 1024px) and (max-width: 1280px) {
	.footer .inner {
		width: 100%;
	}
}
.footer .info-cs {
	position: relative;
	padding-bottom: clamp(2rem, 1.875vw, 3.6rem);
	margin-bottom: clamp(2rem, 2.0833333333vw, 4rem);
	font-family: "Bicubik", sans-serif;
	font-size: clamp(2.2rem, 4.1666666667vw, 8rem);
	line-height: 1;
}
.footer .info-cs::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
	height: 1px;
	background-color: #d9d9d9;
}
@media (min-width: 1024px) {
	.footer .info-cs::before {
		right: var(--cont-pd-m);
	}
}
.footer .info-common {
	display: flex;
}
.footer .info-common > li {
	display: flex;
}
@media (max-width: 1023px) {
	.footer .info-common {
		gap: 1rem 3rem;
		flex-wrap: wrap;
	}
	.footer .info-common > li {
		gap: 0.8rem;
	}
}
@media (min-width: 1024px) {
	.footer .info-common {
		justify-content: space-between;
	}
	.footer .info-common > li {
		gap: 1.6rem;
	}
	.footer .info-common > li:last-child {
		min-width: 18rem;
	}
}
.footer .info-office {
	display: flex;
	margin-top: clamp(3.2rem, 5.7291666667vw, 11rem);
}
.footer .info-office > li {
	display: flex;
	flex-direction: column;
}
.footer .info-office > li .name {
	margin-bottom: 0.4rem;
}
@media (max-width: 1023px) {
	.footer .info-office {
		flex-direction: column;
		gap: 2.2rem;
	}
	.footer .info-office > li {
		gap: 0.4rem;
	}
}
@media (min-width: 768px) and (max-width: 1023px) {
	.footer .info-office {
		gap: 1.6rem;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.footer .info-office > li {
		width: calc(50% - 0.8rem);
	}
}
@media (min-width: 1024px) {
	.footer .info-office {
		justify-content: space-between;
	}
	.footer .info-office > li {
		gap: 1rem;
	}
	.footer .info-office > li:last-child {
		min-width: 18rem;
	}
	.footer .info-office > li .iblock {
		display: block;
	}
}

.wrap {
	display: flex;
	flex-direction: column;
	min-height: var(--vh-100);
}
.wrap .container {
	flex: 1;
}

.container {
	background-color: #000;
	color: #fff;
}
.container.light {
	background-color: #F5F5F5;
	color: #000;
}

[data-page=index] .section-solution .case1 .point {
	font-weight: 400;
	color: var(--pointC1);
}
[data-page=index] .section-solution .case1-1 {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(4rem, 7.4074074074vh, 8rem) var(--cont-pd) 0;
	font-family: "Bicubik", sans-serif;
	font-size: clamp(3.4rem, 5.7291666667vw, 11rem);
	line-height: clamp(5rem, 6.875vw, 13.2rem);
	white-space: nowrap;
	min-height: var(--vh-100);
}
[data-page=index] .section-solution .case1-1 .item {
	height: clamp(5rem, 7.8125vw, 15rem);
}
[data-page=index] .section-solution .case1-1 .item:not(.point).playing {
	animation: mainShuffleColor 900ms;
}
[data-page=index] .section-solution .case1-2 {
	position: relative;
	z-index: 2;
	padding: 0 var(--cont-pd);
	min-height: var(--vh-100);
	max-height: 78.1rem;
	display: flex;
	align-items: center;
}
[data-page=index] .section-solution .case1-2 .inner {
	display: flex;
	gap: clamp(2rem, 2.0833333333vw, 4rem);
	width: 143rem;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	line-height: clamp(3.2rem, 3.8541666667vw, 7.4rem);
}
@media (min-width: 1024px) {
	[data-page=index] .section-solution .case1-2 .inner {
		justify-content: space-between;
	}
}
@media (max-width: 1023px) {
	[data-page=index] .section-solution .case1-2 .inner {
		flex-direction: column;
	}
}
[data-page=index] .section-solution .case1-2 .sec-title {
	font-family: "Bicubik", sans-serif;
	font-size: clamp(1.4rem, 1.25vw, 2.4rem);
}
[data-page=index] .section-solution .case1-2 .sec-title::before {
	content: "";
	display: inline-block;
	width: clamp(0.8rem, 0.5208333333vw, 1rem);
	height: clamp(0.8rem, 0.5208333333vw, 1rem);
	margin-right: clamp(0.8rem, 1.0416666667vw, 2rem);
	vertical-align: middle;
	border-radius: 100%;
	background-color: var(--pointC1);
}
[data-page=index] .section-solution .case1-2 .sec-cont {
	width: clamp(41.4rem, 43.125vw, 82.8rem);
	max-width: 100%;
	font-size: clamp(1.8rem, 2.1875vw, 4.2rem);
	text-transform: uppercase;
}
[data-page=index] .section-solution .case1-2 .sec-cont .en {
	font-family: "Bicubik", sans-serif;
	font-size: clamp(2rem, 2.3958333333vw, 4.6rem);
}
[data-page=index] .section-solution .case1-2 .sec-cont .item {
	display: inline-block;
}
[data-page=index] .section-solution .case1 .case1-bg {
	position: sticky;
	top: 0;
	height: var(--vh-100);
	overflow: hidden;
}
[data-page=index] .section-solution .case1 .case1-bg img, [data-page=index] .section-solution .case1 .case1-bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 16/9;
}
[data-page=index] .section-solution .case2 > .text {
	position: sticky;
	top: 0;
	z-index: 10;
	width: clamp(35.45rem, 36.9270833333vw, 70.9rem);
	max-width: calc(100% - var(--cont-pd) * 2);
	height: 100vh;
	margin-left: auto;
	margin-right: auto;
	transition: max-width 800ms;
}
[data-page=index] .section-solution .case2 > .text .sec-title {
	position: absolute;
	left: 0;
	top: calc(50% - clamp(4.1rem, 6.354166667vw, 12.2rem));
	font-family: "Bicubik", sans-serif;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
	transform: translateY(-50%);
}
[data-page=index] .section-solution .case2 > .text .sec-title span {
	vertical-align: top;
}
[data-page=index] .section-solution .case2 > .text .sec-title .logo-genai {
	width: clamp(13.1rem, 17.2395833333vw, 33.1rem);
}
[data-page=index] .section-solution .case2 > .text .sec-title .me {
	--img: url(../img/logo-me.svg) center center/contain no-repeat;
}
[data-page=index] .section-solution .case2 > .text .sec-title .fin {
	--img: url(../img/logo-fin.svg) center center/contain no-repeat;
}
[data-page=index] .section-solution .case2 > .text .sec-title .ks {
	--img: url(../img/logo-ks.svg) center center/contain no-repeat;
}
[data-page=index] .section-solution .case2 > .text .sec-title span:last-child {
	display: inline-block;
	font-size: 1px;
	color: transparent;
	width: clamp(3.2rem, 3.9583333333vw, 7.6rem);
	aspect-ratio: 75.890526/46.274689;
	background: var(--img, none);
}
[data-page=index] .section-solution .case2 > .text .sec-list {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
}
@media (min-width: 1024px) {
	[data-page=index] .section-solution .case2 > .text .sec-list {
		margin: clamp(3.5rem, 5.9259259259vh, 6.4rem) 0 0;
	}
}
[data-page=index] .section-solution .case2 > .text .sec-list .item {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	display: flex;
	gap: clamp(0.8rem, 1.5625vw, 3rem);
	font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
	line-height: 1.6;
	opacity: 0;
	transform: translateY(100%);
	transition: opacity 200ms, transform 0ms 200ms;
}
[data-page=index] .section-solution .case2 > .text .sec-list .item dt {
	font-weight: 600;
}
[data-page=index] .section-solution .case2 > .text .sec-list .item dd {
	flex: 1;
}
@media (max-width: 1023px) {
	[data-page=index] .section-solution .case2 > .text .sec-list .item {
		max-width: 67.8%;
		flex-direction: column;
	}
}
[data-page=index] .section-solution .case2:not(.start) .nav {
	opacity: 0;
}
[data-page=index] .section-solution .case2:not(.start) > .text {
	max-width: calc(clamp(11.5rem, 16.667vw, 32rem) * 2);
}
[data-page=index] .section-solution .case2:not(.start) > .text .sec-title span:not(.logo-genai) {
	display: none;
}
[data-page=index] .section-solution .case2[data-visible-num="1"].start > .text .sec-list .item:nth-child(1), [data-page=index] .section-solution .case2[data-visible-num="2"].start > .text .sec-list .item:nth-child(2), [data-page=index] .section-solution .case2[data-visible-num="3"].start > .text .sec-list .item:nth-child(3) {
	opacity: 1;
	transform: translateY(0);
	transition-delay: 300ms, 300ms;
	transition-duration: 400ms, 400ms;
}
[data-page=index] .section-solution .case2.start .bg .sticky::before {
	border-width: 0;
}
[data-page=index] .section-solution .case2.start .bg .sticky .item:first-child {
	opacity: 0;
}
[data-page=index] .section-solution .case2 .bg {
	height: 280vh;
	margin-top: -100vh;
}
[data-page=index] .section-solution .case2 .bg .sticky {
	position: sticky;
	top: 0;
	height: 100vh;
	overflow: hidden;
	--per: 0;
}
[data-page=index] .section-solution .case2 .bg .sticky.pre-ani {
	--per: 1;
}
[data-page=index] .section-solution .case2 .bg .sticky::before {
	content: "";
	position: absolute;
	left: 0;
	z-index: 10;
	width: 100%;
	height: 100vh;
	transition: all 400ms;
	border-color: #000;
	border-style: solid;
	border-left-width: calc(50vw - clamp(12rem, 16.92708333vw, 32.5rem) * var(--per, 0));
	border-right-width: calc(50vw - clamp(12rem, 16.92708333vw, 32.5rem) * var(--per, 0));
	border-bottom-width: calc(50vh - clamp(7.1rem, 9.583333333vw, 18.4rem) * var(--per, 0));
	border-top-width: calc(50vh - clamp(4.1rem, 6.354166667vw, 12.2rem) * var(--per, 0));
	box-sizing: border-box;
}
[data-page=index] .section-solution .case2 .bg .item {
	position: absolute;
	left: 0;
	width: 100%;
	height: 100vh;
	overflow: hidden;
	top: clamp(0%, 100.01% * (1 - var(--per, 0)), 100%);
}
[data-page=index] .section-solution .case2 .bg .item:nth-child(1), [data-page=index] .section-solution .case2 .bg .item:nth-child(2) {
	top: 0 !important;
}
@media (max-width: 1023px) {
	[data-page=index] .section-solution .case2 .bg .item:first-child img, [data-page=index] .section-solution .case2 .bg .item:first-child video {
		object-fit: contain;
	}
}
[data-page=index] .section-solution .case2 .bg .item:first-child {
	z-index: 6;
}
[data-page=index] .section-solution .case2 .bg .item.visible img {
	transform: scale(1.4);
}
[data-page=index] .section-solution .case2 .bg .item img, [data-page=index] .section-solution .case2 .bg .item video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 16/9;
	transition: transform 12s;
}
@media (max-width: 1023px) {
	[data-page=index] .section-solution .case2 .bg .item img, [data-page=index] .section-solution .case2 .bg .item video {
		aspect-ratio: 18/33;
	}
}
[data-page=index] .section-solution .case2[data-visible-num="1"].start .nav a:nth-child(1), [data-page=index] .section-solution .case2[data-visible-num="2"].start .nav a:nth-child(2), [data-page=index] .section-solution .case2[data-visible-num="3"].start .nav a:nth-child(3) {
	--line-color: #fff;
}
[data-page=index] .section-solution .case2 .nav {
	position: absolute;
	top: 0;
	right: 50%;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: center;
	gap: 2.3rem;
	width: calc(var(--vw-100) / 2);
	height: 100%;
	text-align: right;
	pointer-events: none;
	transform: translateX(calc(100% - var(--cont-pd)));
	transition: opacity 400ms;
}
[data-page=index] .section-solution .case2 .nav a {
	display: block;
	width: 2rem;
	height: 2rem;
	padding: 0.5rem;
	font-size: 1px;
	line-height: 0;
	pointer-events: all;
	border: 1px solid var(--line-color, transparent);
	border-radius: 100%;
	transition: border 400ms;
}
[data-page=index] .section-solution .case2 .nav a::before {
	content: "";
	display: block;
	height: 100%;
	border-radius: 100%;
	background-color: #fff;
}
[data-page=index] .section-technology {
	background-color: #F5F5F5;
	color: #000;
	position: relative;
	padding: var(--cont-pd-v) var(--cont-pd);
}
[data-page=index] .section-technology .sec-title {
	font-family: "Bicubik", sans-serif;
	text-transform: uppercase;
	white-space: nowrap;
}
@media (min-width: 1024px) {
	[data-page=index] .section-technology .sec-title {
		position: absolute;
		left: 50%;
		top: 50%;
		z-index: 2;
		font-size: clamp(20rem, 20.8333333333vw, 40rem);
		transform: translate(-50%, -50%) rotate(90deg);
	}
}
@media (max-width: 1023px) {
	[data-page=index] .section-technology .sec-title {
		text-align: center;
		margin-bottom: 6rem;
		font-size: 2.6rem;
	}
}
[data-page=index] .section-technology .sec-list > .item {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
}
[data-page=index] .section-technology .sec-list > .item:not(.visible) dt {
	transform: translateY(50%);
	opacity: 0;
}
[data-page=index] .section-technology .sec-list > .item:not(.visible) dd {
	transform: translateY(50%);
	opacity: 0;
}
[data-page=index] .section-technology .sec-list > .item .thumb {
	margin-bottom: clamp(2.4rem, 1.875vw, 3.6rem);
	aspect-ratio: 1/1;
}
[data-page=index] .section-technology .sec-list > .item .thumb img {
	width: 100%;
}
[data-page=index] .section-technology .sec-list > .item dl {
	display: flex;
	flex-direction: column;
	gap: clamp(0.8rem, 0.8333333333vw, 1.6rem);
	line-height: 1.6;
}
[data-page=index] .section-technology .sec-list > .item dl dt {
	font-size: clamp(2rem, 1.25vw, 2.4rem);
	font-weight: 600;
	transition: all 400ms 100ms;
}
[data-page=index] .section-technology .sec-list > .item dl dd {
	font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
	color: #767676;
	transition: all 400ms 200ms;
}
@media (min-width: 1024px) {
	[data-page=index] .section-technology .sec-list > .item {
		width: clamp(28rem, 19.5833333333vw, 37.6rem);
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(2) {
		margin-top: -15rem;
		margin-left: auto;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(3) {
		margin-top: -15rem;
		margin-left: clamp(10rem, 19.5833333333vw, 37.6rem);
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(4) {
		margin-top: -9rem;
		margin-left: auto;
		margin-right: 10%;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(5) {
		margin-top: 6.1rem;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(6) {
		margin-top: -30rem;
		margin-left: auto;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(7) {
		margin-left: 15%;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(8) {
		margin-left: 54%;
		z-index: 1;
	}
	[data-page=index] .section-technology .sec-list > .item .thumb {
		clip-path: polygon(0% calc(100% * (1 - var(--per) * 1.4)), 100% calc(100% * (1 - var(--per) * 1.4)), 100% 100%, 0% 100%);
	}
}
@media (max-width: 1023px) {
	[data-page=index] .section-technology .sec-list > .item {
		width: calc(50% - 1.6rem);
	}
	[data-page=index] .section-technology .sec-list > .item dl:not(:last-child) {
		position: absolute;
		top: 100%;
	}
	[data-page=index] .section-technology .sec-list > .item:nth-child(2n)::before {
		content: "";
		display: block;
		aspect-ratio: 2/1;
	}
}
@media (max-width: 1023px) {
	[data-page=index] .section-technology .sec-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
}
[data-page=index] .section-product {
	position: relative;
	padding: var(--cont-pd-v) var(--cont-pd);
	display: flex;
	gap: 6rem;
}
@media (max-width: 1023px) {
	[data-page=index] .section-product {
		flex-direction: column;
	}
}
@media (min-width: 1024px) {
	[data-page=index] .section-product {
		justify-content: space-between;
	}
}
@media (min-width: 1024px) and (max-width: 1280px) {
	[data-page=index] .section-product {
		align-items: start;
		flex-direction: column;
	}
}
[data-page=index] .section-product .sec-title {
	font-size: clamp(1.8rem, 1.25vw, 2.4rem);
	text-transform: uppercase;
}
[data-page=index] .section-product .sec-list > .item {
	position: relative;
}
[data-page=index] .section-product .sec-list > .item:not(:first-child) {
	margin-top: clamp(3.2rem, 4.1666666667vw, 8rem);
	padding-top: clamp(5rem, 4.1666666667vw, 8rem);
}
[data-page=index] .section-product .sec-list > .item:not(:first-child)::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: var(--cont-pd-m);
	height: 1px;
	background-color: #575B67;
}
[data-page=index] .section-product .sec-list .item-head {
	font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
}
[data-page=index] .section-product .sec-list .item-head .point {
	display: block;
	margin-bottom: clamp(0.4rem, 0.3125vw, 0.6rem);
	font-size: clamp(4.8rem, 4.1666666667vw, 8rem);
	font-family: "Bicubik", sans-serif;
}
[data-page=index] .section-product .sec-list .item-hash {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(0.8rem, 0.625vw, 1.2rem);
	margin-top: clamp(4rem, 3.125vw, 6rem);
	color: #6D6C76;
	font-size: clamp(1.2rem, 0.8333333333vw, 1.6rem);
	line-height: clamp(3.5rem, 2.34375vw, 4.5rem);
}
[data-page=index] .section-product .sec-list .item-hash .hash {
	padding: 0 2.4rem;
	border: 1px solid #6D6C76;
	border-radius: 3rem;
}
[data-page=index] .section-product .sec-list .thumb {
	position: relative;
	max-width: 90.4rem;
	margin-top: clamp(4rem, 4.1666666667vw, 8rem);
}
[data-page=index] .section-product .sec-list .thumb [data-video-control] {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	aspect-ratio: 16/9;
}
[data-page=index] .section-product .sec-list .thumb img, [data-page=index] .section-product .sec-list .thumb video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 16/9;
}
@media (min-width: 1024px) {
	[data-page=index] .section-product .sec-list {
		width: 74.7%;
	}
}
@media (min-width: 1024px) and (max-width: 1280px) {
	[data-page=index] .section-product .sec-list {
		width: auto;
	}
}

.sub-visual .text {
	position: absolute;
	left: var(--cont-pd);
	right: var(--cont-pd);
	top: 0;
	bottom: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: clamp(4.7rem, 6.4814814815vh, 7rem);
	line-height: 1.6;
	font-size: clamp(1.4rem, 1.0416666667vw, 2rem);
	text-align: center;
}
@media (max-width: 1023px) {
	.sub-visual .text {
		text-align: left;
	}
}
.sub-visual .text .title {
	display: block;
	font-family: "Bicubik", sans-serif;
	font-weight: 400;
	font-size: clamp(4.8rem, 4.1666666667vw, 8rem);
	line-height: 1.2375;
}
.sub-visual .text dt small {
	display: block;
	margin-bottom: 2.3rem;
}
@media (max-width: 1023px) {
	.sub-visual .text dt small {
		margin-bottom: 3rem;
	}
}
.sub-visual .bg {
	display: block;
	height: var(--vh-100);
	overflow: hidden;
}
.sub-visual .bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	animation: zoomIn 1.4s backwards;
}

.com-title {
	font-family: "Bicubik", sans-serif;
	font-size: clamp(1.8rem, 1.4583333333vw, 2.8rem);
	line-height: 1.6;
	font-weight: 400;
	text-align: center;
}
.com-title:not(.mg-ty) {
	margin-bottom: clamp(3.6rem, 7.2916666667vw, 14rem);
}
@media (max-width: 1023px) {
	.com-title {
		text-align: left;
	}
}

.com-t-sub {
	font-size: clamp(2rem, 1.25vw, 2.4rem);
	line-height: 1.6;
	font-weight: 400;
	text-align: center;
	color: var(--color1);
}
.com-title + .com-t-sub {
	margin-top: 1.6rem;
}
@media (max-width: 1023px) {
	.com-t-sub {
		text-align: left;
	}
}

.com-list {
	position: relative;
	max-width: 143rem;
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 1023px) {
	.com-list {
		gap: 8rem;
	}
}
.com-list .item {
	display: flex;
	flex-direction: column;
	gap: clamp(2.6rem, 2.6041666667vw, 5rem);
}
.com-list .item .thumb img {
	max-width: 100%;
}
@media (min-width: 1024px) {
	.com-list .item.pos-ty {
		max-width: 49.3%;
	}
	.com-list .item.pos-ty-02 {
		max-width: 40.5%;
		margin-left: auto;
		margin-top: -10%;
	}
	.com-list .item.pos-ty-03 {
		max-width: 30.35%;
		margin-left: 10.2%;
		margin-top: -23%;
	}
	.com-list .item.pos-ty-04 {
		max-width: 40.5%;
		margin-left: auto;
	}
	.com-list .item.pos-ty-05 {
		max-width: 30.35%;
		margin-top: -23%;
	}
	.com-list .item.pos-ty-06 {
		max-width: 49.3%;
		margin-left: auto;
	}
}

.def-info {
	display: flex;
	flex-direction: column;
	gap: clamp(1.2rem, 1.25vw, 2.4rem);
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
	line-height: 1.6;
	color: #6D6C76;
}
.def-info dt {
	font-size: clamp(2rem, 1.25vw, 2.4rem);
	line-height: 1.6;
	font-weight: 600;
	color: #fff;
}

.nav-cont {
	display: flex;
}
.nav-cont .nav {
	display: flex;
	align-items: flex-start;
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
	line-height: clamp(4.2rem, 3.3333333333vw, 6.4rem);
	font-weight: 600;
	white-space: nowrap;
}
.nav-cont .nav .item {
	border-radius: clamp(4.2rem, 3.3333333333vw, 6.4rem);
	background-color: #DEEDFE;
	color: var(--pointC1);
	padding: 0 clamp(1.6rem, 1.25vw, 2.4rem);
	transition: all 400ms;
}
.nav-cont .nav .item.active {
	background-color: var(--pointC1);
	color: #fff;
}
.nav-cont .cont {
	position: relative;
	max-width: 102.8rem;
	margin-left: auto;
}
.nav-cont .cont > .item {
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: opacity 600ms 100ms, transform 600ms 100ms;
}
.nav-cont .cont > .item:not(.active) {
	position: absolute;
	opacity: 0;
	transition-duration: 200ms, 0ms;
	transition-delay: 0ms, 200ms;
	transform: translateY(10%);
}
@media (min-width: 1024px) {
	.nav-cont {
		gap: 4rem;
		align-items: center;
	}
	.nav-cont .nav {
		flex-direction: column;
		gap: 2rem;
	}
}
@media (max-width: 1023px) {
	.nav-cont {
		flex-direction: column;
		gap: 3.5rem;
	}
	.nav-cont .nav {
		gap: 0.8rem;
		overflow-x: auto;
		scrollbar-width: 0;
		white-space: nowrap;
	}
}

.section-care {
	padding: var(--cont-pd-v-2) 0 0 !important;
}
.section-care .case1 > .bg {
	position: sticky;
	top: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: var(--vh-100);
	width: min(42.9rem, 58.05vh);
	max-width: 67.5%;
	margin: 0 auto;
	--on-img: url("../img/me-map-on.svg");
	--blur-img: url("../img/me-map-blur.png");
}
.section-care .case1 > .bg img {
	max-width: 100%;
	max-height: 100%;
	aspect-ratio: 13/19;
}
.section-care .case1 > .bg::before, .section-care .case1 > .bg::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	transition: opacity 400ms;
}
.section-care .case1 > .bg::before {
	background-image: var(--blur-img);
}
.section-care .case1 > .bg::after {
	background-image: var(--on-img);
}
.section-care .case1 > .bg.visible::before {
	opacity: 1;
	transition-delay: 1s;
	transition-duration: 800ms;
}
.section-care .case1 > .bg.visible::after {
	opacity: 1;
	transition-duration: 100ms;
}
.section-care .case1 .case1-1 {
	position: relative;
	z-index: 2;
	margin-top: calc((var(--vh-100) + var(--cont-pd-v-2)) * -1);
	padding: var(--cont-pd-v-2) var(--cont-pd) var(--cont-pd-v);
}
.section-care .case1 .case1-1 .list {
	display: flex;
	padding: clamp(3.3rem, 3.0729166667vw, 5.9rem);
	font-size: clamp(2rem, 1.25vw, 2.4rem);
	line-height: 1.6;
}
@media (max-width: 1023px) {
	.section-care .case1 .case1-1 .list {
		flex-direction: column;
		margin-top: 8rem;
		gap: 9rem;
	}
}
@media (min-width: 1024px) {
	.section-care .case1 .case1-1 .list {
		justify-content: space-between;
		margin-top: 3.5rem;
	}
	.section-care .case1 .case1-1 .list .item:nth-child(1) {
		top: 20vh;
	}
}
.section-care .case1 .case1-1 .list .item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	transition: all 800ms;
}
.section-care .case1 .case1-1 .list .item:nth-child(odd) {
	transition-delay: 200ms;
}
.section-care .case1 .case1-1 .list .thumb {
	position: relative;
	display: block;
	width: clamp(16.8rem, 16.1458333333vw, 31rem);
	--pos: calc(clamp(3.3rem, 3.0729166667vw, 5.9rem) * -1);
	margin-bottom: clamp(6.6rem, 5.0520833333vw, 9.7rem);
}
.section-care .case1 .case1-1 .list .thumb::before {
	content: "";
	position: absolute;
	left: var(--pos);
	right: var(--pos);
	top: var(--pos);
	bottom: var(--pos);
	border-radius: 100%;
	border: 1px dashed var(--color1);
	animation: rotateAni 20s linear infinite;
}
.section-care .case1 .case1-1 .list .text::before {
	content: "";
	display: inline-block;
	width: clamp(0.8rem, 0.5208333333vw, 1rem);
	height: clamp(0.8rem, 0.5208333333vw, 1rem);
	border-radius: 100%;
	background-color: var(--pointC1);
	vertical-align: middle;
	margin: 0 clamp(0.8rem, 0.5208333333vw, 1rem) 0.4rem 0;
	box-shadow: 0 0 3rem clamp(0.8rem, 0.625vw, 1.2rem) rgba(28, 84, 240, 0.6);
}
.section-care .case1 .case1-1 .list img {
	width: 100%;
	border-radius: 100%;
	vertical-align: top;
}
.section-care .case1 .case1-1:not(.visible) .list .item {
	opacity: 0;
	transform: translateY(var(--per-y, 100%));
}
.section-care .case1 .case1-1:not(.visible) .list .item:nth-child(even) {
	--per-y: 150%;
}
.section-care .case1 .case1-2 {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: var(--vh-100);
	padding: 0 var(--cont-pd);
	text-align: center;
	font-size: clamp(2.6rem, 2.2916666667vw, 4.4rem);
	line-height: 1.6;
}
.section-care .case1 .case1-2 .text {
	transition: all 400ms 400ms;
}
.section-care .case1 .case1-2:not(.visible) .text {
	opacity: 0;
	transform: translateY(150%);
}
.section-care .case2 {
	padding: var(--cont-pd-v-2) var(--cont-pd) var(--cont-pd-v);
}
.section-care .case2 img {
	max-height: 100%;
}
.section-care .case2 .case2-1 {
	position: relative;
	display: flex;
	max-width: clamp(32rem, 32.3958333333vw, 62.2rem);
	margin: 0 auto;
	padding-bottom: clamp(7.3rem, 7.037037037vh, 7.6rem);
	font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
	line-height: 1.6;
	text-transform: uppercase;
}
.section-care .case2 .case2-1::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 52%;
	bottom: clamp(3.65rem, 3.5185185185vh, 3.8rem);
	width: 0;
	margin-left: -0.1rem;
	border: 0.1rem dashed var(--pointC1);
	transition: all 400ms 400ms;
}
.section-care .case2 .case2-1::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: clamp(3.65rem, 3.5185185185vh, 3.8rem);
	width: 1rem;
	height: 1rem;
	margin-left: -0.5rem;
	border-radius: 100%;
	background-color: var(--pointC1);
	transition: all 400ms 500ms;
}
.section-care .case2 .case2-1 .item {
	position: relative;
	z-index: 2;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1/1;
	border-radius: 100%;
	background-color: rgba(28, 84, 240, 0.4);
	border: 0.2rem solid rgb(28, 84, 240);
	transition: all 400ms;
}
.section-care .case2 .case2-1 .item ~ .item {
	margin-left: -2rem;
	background-color: rgba(42, 192, 93, 0.4);
	border-color: rgb(42, 192, 93);
}
.section-care .case2 .case2-1:not(.visible)::before {
	bottom: 48%;
	opacity: 0;
}
.section-care .case2 .case2-1:not(.visible)::after {
	opacity: 0;
	transform: translateY(-3rem);
}
.section-care .case2 .case2-1:not(.visible) .item:nth-child(1) {
	opacity: 0;
	transform: translateX(-60%);
}
.section-care .case2 .case2-1:not(.visible) .item:nth-child(2) {
	opacity: 0;
	transform: translateX(60%);
}
.section-care .case2 .case2-2 {
	position: sticky;
	top: var(--gnb-h);
	max-width: min(117.5rem, 100%);
	margin: 0 auto;
	transition: all 400ms 500ms;
	text-align: center;
	aspect-ratio: 1175/761;
}
.section-care .case2 .case2-2 img {
	max-width: 100%;
}
@media (min-width: 1024px) {
	.section-care .case2 .case2-2 img {
		max-width: calc(65.28% * var(--per, 0) + 34.72%);
	}
}
.section-care .case2 .case2-2:not(.visible) {
	opacity: 0;
	transform: scale(0.1);
}

.section-ty {
	padding: var(--cont-pd-v-2) var(--cont-pd) var(--cont-pd-v);
}

.section-ty2 {
	background-color: #fff;
	color: #000;
}
.section-ty2 > .inner {
	position: sticky;
	top: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: calc(147rem + var(--cont-pd) * 2);
	padding: var(--cont-pd-v-2) var(--cont-pd);
	margin: 0 auto;
}
.section-ty2 > .inner .com-title {
	margin-bottom: clamp(3.6rem, 5.2083333333vw, 10rem);
}
@media (min-width: 1024px) {
	.section-ty2 {
		min-height: calc(var(--vh-100) + 20rem);
	}
	.section-ty2 > .inner {
		min-height: var(--vh-100);
	}
}