html.lenis,
html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden !important; }
.lenis.lenis-stopped .os-scrollbar { display: none; }
.lenis.lenis-scrolling iframe { pointer-events: none; }
html.sr .load-hidden { visibility: hidden; }
.document-loaded .main { animation: mainFadeIn .65s cubic-bezier(0.4, 0, 0.2, 1) 0s forwards; }
[data-scroll-y="false"] { overflow-y: hidden; }
[role="button"] { cursor: pointer; }
.blind { position: absolute; width: 1px; height: 1px; clip: rect(0 0 0 0); overflow: hidden; }
.inner { position: relative; margin-left: auto; margin-right: auto; max-width: 1680px; width: 90%; }
.inner-small { max-width: 1480px; }
.background.pc, .background.sp {
    width: 100%;
    height: auto;
    object-fit: cover; /* 이미지를 컨테이너에 맞게 조절 */
    image-rendering: auto; /* 해상도 손실 방지 */
    max-width: 100%;
    display: block;
}

.swiper-slide img, .swiper-slide video {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
.image-wrap { position: relative; }
.image-wrap::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.color-black { color: var(--color-black) !important; }
.color-dark { color: #111 !important; }
.color-primary { color: #2843c0 !important; }
.color-navy { color: var(--color-navy) !important; }
.color-sky { color: var(--color-sky) !important; }
.color-red { color: #f85124 !important; }
.bg-light { background-color: #fff !important; }
.bg-gray { background-color: #F5F5F5 !important; }
.bg-dark { background-color: #272B31 !important; }
.bg-table-gray { background-color: var(--color-table-gray) !important; }
.align-top { vertical-align: top; }
.word-break-all { word-break: break-all; }
.text-justify { text-align: justify; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.fw-light { font-weight: 200; }
.fw-bold { font-weight: bold; }
.fw-normal { font-weight: 400; }
.fw-medium { font-weight: 500; }
.fw-semibold { font-weight: 600; }
.font-italic { font-style: italic; }
.font-secondary { font-family: 'Figtree'; }
.font-chinese { font-family: 'Noto Sans SC'; }
.w-auto { width: auto; }
.d-none { display: none !important; }
.mt { margin-top: 30px !important; }
.mb { margin-bottom: 30px !important; }
.mt4 { margin-top: 40px !important; }
.mt6 { margin-top: 60px !important; }
.mb8 { margin-bottom: 80px; }
.mt8 { margin-top: 80px !important; }
.mt0 { margin-top: 0 !important; }
.mb0 { margin-bottom: 0 !important; }
.my0 { margin-top: 0; margin-bottom: 0; }
.pt0 { padding-top: 0 !important; }
.pb0 { padding-bottom: 0 !important; }
.indent-1 { text-indent: 1em; }
.indent-2 { text-indent: 2em; }
.border-0 { border: none !important; }
.letter-spacing { letter-spacing: 0.05em; }
.text-link { text-decoration: underline; text-underline-offset: 0.25em; }
.sp,
.mo { display: none !important; }
@media screen and (max-width: 1024px) {
	.pc { display: none !important; }
	.sp { display: block !important; }
}
@media screen and (max-width: 768px) {
	.mo { display: block !important; }
}


.swiper-scrollbar { background: #D9D9D9; }
.swiper-scrollbar-drag { background: #2843c0; }
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal { height: 4px; }


/* Form */
.check { display: inline-flex; align-items: center; position: relative; user-select: none; }
.check label { padding-left: 8px; font-size: 16px; color: #151515; cursor: pointer; }
.check i { display: inline-block; vertical-align: middle; position: relative; width: 26px; height: 26px; pointer-events: none; }
.check i::before,
.check i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; }
.check i::after { background-repeat: no-repeat; border: 1px solid #DCDCDC; background-color: #DCDCDC; background-image: url('/theme/cream/images/checked-light.svg'); background-size: auto 75%; background-position: center; transition: all ease .15s; }
.check i::before { background-color: #DCDCDC; border: 1px solid #DCDCDC; }
.check input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 26px; height: 26px; color: #fff; opacity: 0; cursor: pointer; }
.check input:checked ~ i::after { background-color: #2843c0; border-color: #2843c0; }
.check a { display: inline-block; margin-left: 8px; font-size: 13px; font-weight: 500; color: #999999; background: linear-gradient(to bottom, #666, #666); background-size: 1px 1px; background-position: left bottom 3px; background-repeat: repeat-x; }
.check a span { vertical-align: baseline; }
.check-light label { color: #fff; cursor: pointer; }
.check-light i::after { background-color: #fff; background-image: url('/theme/cream/images/check-dark.png'); }
.check-light i::before { border-color: #fff; }
.radio { display: inline-flex; align-items: center; position: relative; user-select: none; }
.radio label { padding-left: 10px; font-size: 16px; color: #3d3d40; cursor: pointer; }
.radio i { display: inline-block; vertical-align: middle; position: relative; width: 18px; height: 18px; pointer-events: none; }
.radio i::before,
.radio i::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; }
.radio i::after { padding: 4px; background-image: radial-gradient(circle at 50%, var(--color-navy) 40%, #fff 46%); border: 1px solid var(--color-navy); opacity: 0; }
.radio i::before { border: 1px solid #dddddd; }
.radio input { z-index: 2; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; width: 26px; height: 26px; color: #fff; opacity: 0; cursor: pointer; }
.radio input:checked ~ i::after { opacity: 1; }
.radio input:checked ~ label { color: #000; }
.input-group + .check { margin-top: 14px; }
.input-group { display: flex; align-items: center; flex-wrap: wrap; margin: -4px -5px; }
.input-group .button { padding-top: 8px; padding-bottom: 8px; width: 140px; text-align: center; font-size: inherit; }
.input-group .check,
.input-group .radio { flex: 0 1; margin: 4px 36px 4px 4px; }
.input-group .col { padding: 5px; }
.input-group .col.auto { flex-grow: 0 !important; }
.input-group.tel { max-width: 600px; width: 100%; }
.input-group.tel .col { flex: 1 1; }
.input-group.tel .input,
.input-group.tel .select { min-width: auto; width: 100%; }
.input-group.email .col:first-child input { width: 100%; }
.input-group.email input,
.input-group.email select { min-width: 280px; }
.input-group.regi { max-width: 600px; }
.input-group.regi .col { flex: 1 1; }
.input-group.regi .col:nth-child(2) { flex: 0 0 auto; }
.input-group.regi .col:nth-child(4) { flex: 0 0 140px; width: 100%; }
.input-group.regi .col:nth-child(4) .button { width: 100%; }
.input-group.regi .input,
.input-group.regi .select { width: 100%; }
.input-group.auto .col { flex: 1 1 auto; }
.input-group.auto .input,
.input-group.auto .select,
.input-group.auto textarea { width: 100%; }
.input-group p { margin: 6px; }

.mobile-scroll img { max-width: 100%; }
@media (hover: hover) and (pointer: fine) {
    .floating:hover { transform: scale(1.1); }
    .floating:hover .floating-wrap { box-shadow: -3px 3px 14px 0px rgba(234, 0, 44, 0.5), 3px -3px 14px 0px rgb(255, 121, 0, 0.5); }

    .check a:hover { color: $color-black; }
}
@media screen and (max-width:1024px){
    .inner { padding: 0; width: 90%; }
    .image-wrap.border:not(.full) { padding: 60px; }

    .floating-container { right: 5%; }
    .floating-wrap { margin-bottom: 15px; width: 75px; height: 75px; }
    .floating .icon { margin-bottom: 5px; width: 35px; height: 20px; }
    .floating .text { font-size: 12px; }

    .mobile-scroll { overflow: visible; position: relative; padding-bottom: 30px; }
    .mobile-scroll .swiper-slide { width: auto; }
    .mobile-scroll .image-wrap img { max-width: none; width: 1000px; }

    .scroll-top a { width: 55px; height: 55px; }

    .check i { width: 22px; height: 22px; }
    .check label { font-size: 15px; }
    .input-block-group .radio-block label { font-size: 16px; }

    .input-group.tel { max-width: none; }
	.input-group.email .col { flex-basis: 0; }
	.input-group.email .col:nth-child(2) { flex-grow: 0; }
	.input-group.email .col .select { width: 100%; }
	.input-group .col { flex: 1 1 auto; }
}
@media screen and (max-width:768px){
    .image-wrap.border:not(.full) { padding: 24px; }

    .floating-container { bottom: 25px; }
    .scroll-top { bottom: 15px; }
    .scroll-top a { width: 45px; height: 45px; }

    .check i { width: 20px; height: 20px; }
    .check label { padding-left: 6px; font-size: 14px; }
    .input-block-group .radio-block label { font-size: 14px; }

    .input-group.email .col:last-child { flex-basis: 100%; }
}


/* Icons */
.icon { display: inline-block; vertical-align: middle; }
.icon::before { content: ''; display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
.icon-arrow-long-left::before { background-image: url('/theme/cream/images/arrow-long-left.svg'); }
.icon-arrow-right-light::before { background-image: url('/theme/cream/images/icon-arrow-right-light.svg'); }
.icon-download-light::before { background-image: url('/theme/cream/images/icon-download-light.svg'); }
.icon-arrow-right-primary::before { background-image: url('/theme/cream/images/icon-arrow-right-primary.svg'); }
@media (hover: hover) and (pointer: fine) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}


/* Button */
.button { overflow: hidden; display: inline-flex; align-items: center; justify-content: center; position: relative; padding-right: 24px; padding-left: 24px; height: 64px; line-height: 64px; font-size: 16px; color: #000; font-weight: 500; background: transparent; border: 1px solid transparent; transition-property: color, background; transition-timing-function: ease; transition-duration: .15s; }
.button-center { justify-content: center; }
.button-large { line-height: 70px; height: 70px; }
.button-round { border-radius: 100px; }
.button-primary { font-weight: 700; color: #fff; background: #2843c0; }
.button-arrow { overflow: hidden; display: inline-block; position: relative; padding-right: 60px; min-width: 220px; color: #fff; border: 1px solid #fff; transition: all ease .35s; }
.button-arrow::after { content: ''; position: absolute; top: 0; right: 30px; bottom: 0; margin: auto; display: block; width: 7px; height: 13px; background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23111111'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; transition: background-image ease .15s; }
.button-round { border-radius: 50px; }
.button-gradient { color: #fff; background-image: linear-gradient(48deg, #2843c0, #ff7900, #ff7900, #2843c0); background-size: 400% 100%; background-position: 0%; border-color: transparent; transition: background ease .3s; }
.button-dark { color: #fff; background: $color-dark; }
.button-border { color: $color-darker; background: transparent; border-color: $color-border; }
.button-border-primary { color: #2843c0; background: transparent; border-color: #2843c0; }
.button-border-light { color: #fff; border-color: #fff; }
.button-border[aria-selected="true"] { color: #fff; background: #2843c0; border-color: #2843c0; }
.button-arrow[aria-selected="true"]::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
.button-light { color: #fff; }
.button-white { background-color: #fff; }
.button-more { border-color: #fff; border-radius: 50px; }
.button-more svg { z-index: 2; position: relative; margin-left: 36px; transition: all ease .35s; }
.button-more span { z-index: 2; position: relative; display: block; }
.button-more::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; border-radius: 50px; transform: translateX(-100%); transition: transform ease .65s; }
.button .icon { width: 18px; height: 18px; }
.button .icon:first-child { margin-left: 0; margin-right: 14px; }
.button .icon:last-child { margin-left: 14px; margin-right: 0; }

@media (hover: hover) and (pointer: fine) {
    .button-primary:hover { background: #2a4ae0; }
    .button-arrow:hover { color: $color-darker; background: #fff; border-color: #fff; }
    .button-arrow:hover::after { background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 7.7 12.9' enable-background='new 0 0 7.7 12.9' xml:space='preserve' stroke='%23ffffff'%3E%3Cg%3E%3Cpath stroke-width='1.8' stroke-miterlimit='10' d='M5.7,6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='1.3' x2='6.4' y2='6.4'/%3E%3Cline stroke-width='1.8' stroke-linecap='square' stroke-linejoin='bevel' stroke-miterlimit='10' x1='1.3' y1='11.6' x2='6.4' y2='6.4'/%3E%3C/g%3E%3C/svg%3E"); }
    .button-gradient:hover { background-position: 20%; }
    .button-border:hover,
    .button-border-light:hover { color: #fff; background: $color-primary; border-color: $color-primary; }
    .button-hover-white:hover { color: #151515; background: #fff;}
    .button-hover-primary:hover { color: #fff !important; background: $color-primary !important; }
    .button-hover-primary:hover * { color: inherit; }
    .button-light:hover { color: #151515; }
    .button-more:hover::after { transform: none; }
    .button-more:hover svg { stroke: #151515; }

    .button-border-primary:hover { color: #fff; background: #2843c0; }
    .button-border-primary:hover .icon-arrow-right-primary::before { background-image: url('/theme/cream/images/icon-arrow-right-light.svg'); }
}
@media screen and (max-width: 1024px) {
    .button { height: 50px; line-height: 50px; font-size: 15px; }
    .button-arrow { padding: 12px 40px 12px 30px; }
}
@media screen and (max-width: 768px) {
}


/* Header */
.header {z-index:10; position:fixed; top:0; left:0; width:100%; transition-property:color, background, border, box-shadow; transition-duration:0.35s, 0.35s, 0.35s, 0.35s; transition-timing-function:ease}
.header__logo {z-index:11; position:absolute; top:26px; left:60px; width:203px; height:45px; background:url("/theme/cream/images/logo.svg") no-repeat center / auto 100%; transition-property:background; transition-duration:0.35s; transition-timing-function:ease}
.header__nav { overflow: hidden; height: 100px; }
.header__nav-background {position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.5); backdrop-filter:blur(5px); opacity:0; visibility:hidden}
.header__nav-wrap {display:flex; flex-wrap:wrap; justify-content:center; height:auto; text-align:center}
.header__nav-list {display:flex; justify-content:center}
.header__nav-link {display:flex; align-items:center; justify-content:center; z-index:2; position:relative; padding:0 48px; width:auto; line-height:1; height:100px; font-size:20px; font-weight:500; outline:0; transition:color ease 0.15s; cursor:default}
.header__nav-list>li:last-child .sub-lists {border-right:1px solid #ddd}
.header-tier {position: relative;padding-bottom: 30px;width:100%;}
.header-tier__list>li {flex:1 1; padding:5px}
.header-tier__link {overflow:hidden; display:block; position:relative;}
.header-tier__image {width:100%; height:100%; object-fit:cover; transform:scale(1.06); opacity:1; transition-property:opacity, transform; transition-timing-function:ease, cubic-bezier(0.39, 0.58, 0.57, 1); transition-duration:0.35s, 0.8s; transition-delay:inherit}
.header-tier__title {position:absolute; top:0; left:0; width:100%; height:40%; padding:50px; font-size:32px; font-weight:700}
.header-tier__title span {display:inline-block; background-image:linear-gradient(transparent calc(100% - 3px), #fff 3px); background-size:0% 100%; background-repeat:no-repeat; transition:background-size 0.3s}
.header-tier__title img {width:auto; height:32px}
.header-tier__text {display: inline-block;text-align: center; font-size:17px; font-weight:400; color:#999; letter-spacing:0.01em; background-image: linear-gradient(transparent calc(100% - 2px), #2843c0 2px); background-size: 0% 100%; background-repeat: no-repeat; transition: background-size .3s;}
.header-tier__link--title {height:40%}
.header-tier__link--base .header-tier__text {flex-direction:column; align-items:flex-start; padding-top:10px; height:60%}
.header-tier__link--base .header-tier__text a {margin-bottom:8px; font-weight:700; color:white; background-image:linear-gradient(transparent calc(100% - 2px), #fff 2px); background-size:0% 100%; background-repeat:no-repeat; transition:background-size 0.3s}
.header-tier--on .header-tier__image {opacity:1; transform:none}
.header__right {display:flex; align-items:center; position:absolute; top:24px; right:60px;}
.header__right .line {margin:0 36px 0 25px; width:1px; height:14px; background:rgba(0, 0, 0, 0.2); transition:background ease 0.35s}
.header__burger {display:none; z-index:11; position:absolute; top:25px; right:5%; margin-right:-13px; width:50px; height:50px}
.header__burger-line {position:absolute; left:14px; width:45%; height:2px; background:#000000; transition-property:transform, background; transition-timing-function:ease; transition-duration:0.35s, 0.35s}
.header__burger-line:nth-of-type(1) {top:17px}
.header__burger-line:nth-of-type(2) {top:25px}
.header__burger-line:nth-of-type(3) {top:33px}
.header__burger-line[aria-expanded="true"]:nth-of-type(1) {top:18px; left:16px; width:40%; transform:translateY(6px) rotate(-45deg)}
.header__burger-line[aria-expanded="true"]:nth-of-type(2) {opacity:0}
.header__burger-line[aria-expanded="true"]:nth-of-type(3) {top:30px; left:16px; width:40%; transform:translateY(-6px) rotate(45deg)}
.header__menu {position:relative; width:50px; height:50px}
.header__menu-line {position:absolute; left:0; right: 0; margin: auto; width:65%; height:2px; background:#000000; transition-property:transform, background; transition-timing-function:ease; transition-duration:0.35s, 0.35s}
.header__menu-line:nth-of-type(1) {top:15px}
.header__menu-line:nth-of-type(2) {top:24px}
.header__menu-line:nth-of-type(3) {top:33px}
.header__menu-line[aria-expanded="true"]:nth-of-type(1) {top:18px; left:16px; width:40%; transform:translateY(6px) rotate(-45deg)}
.header__menu-line[aria-expanded="true"]:nth-of-type(2) {opacity:0}
.header__menu-line[aria-expanded="true"]:nth-of-type(3) {top:30px; left:16px; width:40%; transform:translateY(-6px) rotate(45deg)}
.header-language {position:relative; margin-right:25px}
.header-language__current {display:block; position:relative; padding:0 26px 0 45px; width:100px; height: 40px; line-height:40px; text-align:left; font-size:15px; color:inherit; font-weight:600; border: 1px solid #111;border-radius: 40px;transition: all ease .35s;}
.header-language__current::before { content: ''; position: absolute; top: 10px; left: 13px; width: 20px; height: 20px; background: url('/theme/cream/images/language-globe.svg') no-repeat center / auto 100%; transition: all ease .35s; }
.header-language__current::after { content: ''; display: block; position: absolute; top: 16px; right: 18px; width: 10px; height: 6px; background: url('/theme/cream/images/language-arrow.svg') no-repeat center / auto 100%; transition-property: transform, background; transition-timing-function: ease; transition-duration: .1s, .35s; }
.header-language__list {position:absolute; left:50%; top:45px; margin-top:5px; padding: 10px 0; width:100px; border:1px solid #111; border-radius: 20px; transform:translateX(-50%); visibility:hidden; opacity:0; transition:all ease 0.1s}
.header-language__link {display:block; padding:10px 0; line-height: 1; text-align:center; font-size:16px; font-weight: 600; color:#111; transition:all ease 0.15s}
.header-language__current[aria-expanded="true"]+ul {visibility:visible; opacity:1}
.header-language__current[aria-expanded="true"]::after { transform: scaleY(-1); }
.header[data-header-sticky] .header-primary, .header[data-header-menu="opened"] .header-primary, .header[data-header-toggle][data-header-menu="opened"] .header-primary {background:#fff; box-shadow:0px 4px 50px 0px rgba(10, 10, 10, 0.08)}
.header[data-header-menu="opened"] .header__burger-line, .header[data-header-menu="opened"] .header__menu-line {background:#000000}
.header[data-header-menu="opened"][data-header-theme="transparent"] {color:#111111; background:#fff}
.header[data-header-theme="dark"] {color:#fff; background:#111111}
.header[data-header-theme="light"] .header-primary {color:#111111}
.header[data-header-theme="transparent"] {color:#fff; border-bottom-color:rgba(255, 255, 255, 0.1)}
.header[data-header-theme="transparent"] .header__logo {background-image:url("/theme/cream/images/logo-light.svg")}
.header[data-header-theme="transparent"] .header__burger-line, .header[data-header-theme="transparent"] .header__menu-line {background:#fff}
.header[data-header-theme="transparent"] .header__right .line {background:rgba(255, 255, 255, 0.4)}
.header[data-header-theme="transparent"] .header-language__current { border-color: rgba(255, 255, 255, 0.3); }
.header[data-header-theme="transparent"] .header-language__current::before {background-image:url("/theme/cream/images/language-globe-light.svg"); border-color:#fff}
.header[data-header-theme="transparent"] .header-language__current::after {background-image:url("/theme/cream/images/language-arrow-light.svg"); border-color:#fff}
.header[data-header-theme="transparent"] .header-language__list { border-color: rgba(255, 255, 255, 0.3); }
.header[data-header-theme="transparent"] .header-language__link { color: #fff; }
.header[data-header-mobile-menu="opened"] .header-language__current::before {background-image:url("/theme/cream/images/language-globe.svg"); border-color:#000000}
.header[data-header-mobile-menu="opened"] .header-language__current::after {background-image:url("/theme/cream/images/language-arrow.svg"); border-color:#000000}
.header[data-header-navigation="opened"] .header-language__list { border-color: #111; }
.header[data-header-navigation="opened"] .header-language__link { color: #111; }
.header[data-header-navigation="opened"] { background: #fff; box-shadow: 0 0 6px 0 rgba(37, 37, 37, .15); }
.header[data-header-navigation="opened"] {color:#111111}
.header[data-header-navigation="opened"] .header__logo {background-image:url("/theme/cream/images/logo.svg")}
.header[data-header-navigation="opened"] .header-language__current { border-color: #111; }
.header[data-header-navigation="opened"] .header-language__current::before {background-image:url("/theme/cream/images/language-globe.svg"); border-color:#fff}
.header[data-header-navigation="opened"] .header-language__current::after {background-image:url("/theme/cream/images/language-arrow.svg"); border-color:#fff}
.header[data-header-navigation="opened"] .header__menu-line {background:#111111}
.header[data-header-toggle="off"] {top:-100px}

@media screen and (hover: hover) and (pointer:fine) {
    .header__nav-item:hover .header__nav-link {color:#2843c0}
    .header-tier__link:hover { color: #001aa5;}
    .header-tier__link:hover .header-tier__text { background-size: 100% 100%; }
    .header-tier__link:hover .header-tier__title span {background-size:100% 100%}
    .header-tier__link--base .header-tier__text a:hover {background-size:100% 100%}
    .header-language a:hover {color:#2843c0}
}
@media screen and (max-width: 1024px) {
    .header__nav-wrap { display: none; }
    .header__logo { top: 20px; left: 5%; width: 135px; height: 30px; }
    .header__right { top: 11px; right: calc(5% - 7px); height: auto; }
    .header__nav { height: 70px; }
    .header-language { display: none; }
    .header__menu-line { width: 60%; height: 0.108em; }
    .header__menu-line:nth-of-type(1) { top: 15px; }
    .header__menu-line:nth-of-type(2) { top: 24px; }
}


/* Footer */
.footer { position: relative; color: #999999; background: #061145; }
.footer-primary { position: relative; margin-right: auto; margin-left: auto; padding-top: 62px; padding-bottom: 60px; max-width: 1640px; width: 90%; }
.footer-primary__row { display: flex; justify-content: space-between; }
.footer-primary__row--2 { align-items: flex-end; margin-top: 72px; padding-top: 40px; border-top: 1px solid #292929; }
.footer-primary__site { display: flex; justify-content: space-between; margin: 0 -15px; }
.footer-primary__site-item { flex: 1 1; padding: 0 15px; width: 280px; }
.footer-primary__site-title { margin-bottom: 22px; font-size: 22px; color: #ffffff; }
.footer-primary__site-text { margin-top: 10px; line-height: 1.6; font-size: 16px; letter-spacing: 0.02em; }
.footer-primary__site-link { line-height: inherit; color: inherit; font-weight: inherit; transition: color ease .15s; }
.footer-primary__logo { width: 200px; height: auto; }
.footer-primary__copyright { font-size: 14px; color: #aaaaaa; letter-spacing: -0.01em; }

.footer-primary__social { display: flex; align-items: center; }
.footer-primary__social-text { margin-left: 24px; }
.footer-primary__social-link { transition: opacity ease .1s; }
.footer-primary__social-link .icon { display: block; width: 20px; height: 20px; background-repeat: no-repeat; background-position: center; background-size: auto 100%; }
.footer-primary__social-link .icon-instagram { background-image: url('/theme/cream/images/instagram.png'); }
.footer-primary__social-link .icon-linkedin { background-image: url('/theme/cream/images/linkedin.png'); }
.footer-primary__social-link .icon-youtube { background-image: url('/theme/cream/images/youtube.png'); }
.footer-primary__social-link .icon-facebook { margin-left: -10px; background-image: url('/theme/cream/images/facebook.png'); }
.footer-primary__info { display: flex; flex-wrap: wrap; margin: 22px -12px; max-width: 1000px; }
.footer-primary__info-item { position: relative; padding: 2px 12px; font-size: 14px; color: #aaaaaa; }
.footer-primary__info-item:not(:last-child)::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; margin: auto; width: 1px; height: 10px; background: #515151; }
.footer-primary__link { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.footer-primary__link-item { position: relative; padding: 0 10px; }
.footer-primary__link-item:not(:last-child)::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; margin: auto; width: 1px; height: 13px; background: #fff; transform: translateY(-2px); }
.footer-primary__link a { font-size: 16px; color: #fff; font-weight: 600; transition: opacity ease .1s; }

.footer-floaty { position: absolute; bottom: 100%; right: 0; }
.footer-floaty__top-button { width: 75px; height: 75px; background: #061145 url('/theme/cream/images/scroll-top-arrow.svg') no-repeat center / auto 38%; border-radius: 0; outline: none; }
@media (hover: hover) and (pointer: fine) {
	.footer-primary__site-link:hover { color: #fff; }
    .footer-primary__social-link:hover { opacity: .8; }
    .footer-primary__link a:hover { opacity: .8; }
}
@media screen and (min-width: 1025px) {
    .footer-primary__info-item:nth-child(3)::after { content: none; }
}
@media screen and (max-width: 1500px) {
    .footer-primary__site-item { width: 160px; }
    .footer-primary__social-text { margin-left: 20px; }
}
@media screen and (max-width: 1024px) {
    .footer-primary { padding-top: 35px; }
    .footer-primary__row { flex-direction: column; align-items: flex-start; }
    .footer-primary__row--2 { margin-top: 30px; padding-top: 30px; }
    .footer-primary__col { width: 100%; }
    .footer-primary__logo { width: 160px; }
    .footer-primary__site { display: none; }
    .footer-primary__social { margin-top: 0; }
    .footer-primary__social-text { margin-left: 0; margin-right: 20px; }
    .footer-primary__link { position: absolute; top: 30px; right: 0; }
    .footer-primary__link a { font-size: 14px; }
    .footer-primary__info-item { font-size: 13px; }
    .footer-primary__copyright { font-size: 13px; }
	/* .footer-primary__social-link .icon { width: 16px; height: 16px; } */
    .footer-floaty__top-button { width: 60px; height: 60px; }
}

.screen-menu {overflow:hidden; z-index:11; position:fixed; top:0; left:0; width:100%; height:0%; color:#111; visibility:hidden; opacity:0; -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px)}
.screen-menu__logo { z-index: 2; position: fixed; top: 22px; left: 70px; width: 203px; height: auto; }
.screen-menu__background {width:100%; height:100%; background:#fff; opacity:1}
.screen-menu__close {position:absolute; top:25px; right:60px; width:50px; height:50px}
.screen-menu__close span {content:""; position:absolute; left:5px; width:80%; height:3px; background:#111; transform:rotate(45deg)}
.screen-menu__close span:nth-child(2) {transform:rotate(-45deg)}
.screen-menu__wrap {overflow: auto;position: absolute;top: 0;left: 0;padding: 100px 100px 100px 660px;width: 100%;height: 100%;}
.screen-menu__splash { position: absolute; top: 0; left: 0; width: 560px;height: 100%;}
.screen-menu__splash img { width: 100%; height: 100%; object-fit: cover; }
.screen-menu__language {display:flex; align-items:center; position:absolute; top:18px; left:-10px; display:none}
.screen-menu__language-item {display:block; position:relative; padding:10px; font-size:15px; opacity:0.5; font-weight:700; color: #2843c0; }
.screen-menu__language-item::after {content:""; position:absolute; bottom:10px; left:0; width:calc(100% - 10px); height:1px; background:#fff; opacity:0}
.screen-menu__language-list:first-child .screen-menu__language-item, .screen-menu__language-list:first-child .screen-menu__language-item::after {opacity:1}
.screen-menu__list {width:100%}
.screen-menu__item {display:flex; position:relative;padding: 30px 0;}
.screen-menu__line {position:absolute; bottom:0; left:0; width:100%; height:1px; background:#e6e6e6; pointer-events:none}
.screen-menu__heading {overflow:hidden; width: 20%; font-size:26px; font-weight:700; transition:color ease 0.15s; color: #2843c0; cursor:default}
.screen-menu__heading span {display:block;}
.screen-menu__tier {overflow:hidden; display:flex; width: 90%;}
.screen-menu__tier-text {position:relative; padding-right:40px; width: 25%; font-size:20px; font-weight:600}
.screen-menu__tier-text:last-child {padding-right:0}
.screen-menu__tier-text:not(:last-child)::after {content:""; position:absolute; top:0; bottom:0; right:1em; margin:auto; width:1px; height:1em; background:rgba(255, 255, 255, 0.3); transform:rotate(25deg)}
.screen-menu__tier-text span {display:inline-block; padding:4px 0; background-image:linear-gradient(transparent calc(100% - 2px), #2843c0 1px); background-size:0% 100%; background-repeat:no-repeat; transition:background-size 0.3s}
.screen-menu__tier-box { display: flex; flex-direction: column; }

.screen-menu__tier-link { margin-top: 8px; margin-bottom: 0px; margin-right: auto; font-size: 16px; color: #999999; transition: all ease 0.1s; font-weight: 500; }


.screen-menu__tier-toggle {display:flex; align-items:center; color:inherit; transition:color ease 0.15s}
.screen-menu__tier-toggle .icon-arrow {display:block; position:relative; margin-left:10px; width:14px; height:14px}
.screen-menu__tier-toggle .icon-arrow::before, .screen-menu__tier-toggle .icon-arrow::after {content:""; display:block; position:absolute; top:0; left:0; width:100%; height:100%; background-image:url("/theme/cream/images/chevron-right-light.svg"); background-repeat:no-repeat; background-position:center; background-size:auto 100%; transition:all ease 0.15s}
.screen-menu__tier-toggle .icon-arrow::after {background-image:url("/theme/cream/images/chevron-right-primary.svg"); opacity:0}
.screen-menu__tier-toggle--on {color:#2843c0}
.screen-menu__tier-toggle--on .icon-arrow::before {transform:scaleX(-1); opacity:0}
.screen-menu__tier-toggle--on .icon-arrow::after {transform:scaleX(-1); opacity:1}
.screen-menu__tier-toggle--on span {background-image:linear-gradient(transparent calc(100% - 1px), #2843c0 1px)}

@media screen and (hover: hover) and (pointer:fine) {
    .screen-menu__item:hover .screen-menu__heading {color:#2843c0}
    .screen-menu__tier-text:hover span {color:#2843c0;background-size:100% 100%}
    .screen-menu__tier-link:hover {color:#2843c0;background-size: 100% 100%; }
}
@media screen and (min-width: 1025px) {
    .screen-menu__tier-text span {transform:none !important}
    [lang="en"] .screen-menu__heading {font-size:48px}
    [lang="en"] .screen-menu__tier-text {font-size:19px}
}
@media screen and (max-width: 1024px) {
    .screen-menu__close { top:11px; right:calc(5% - 14px); }
    .screen-menu__close span { left:10px; width:60%; height:0.108em; }
    .screen-menu__wrap { overflow-y:auto; display:block; right: 0; margin-right: auto; margin-left: auto; padding:70px 0; width: 90%; scrollbar-width:none; }
    .screen-menu__language { display:flex; }
    .screen-menu__line { height:0; }
    .screen-menu__item { flex-direction:column; align-items:flex-start; padding: 24px 0 0 0; }
    .screen-menu__heading { margin-bottom:6px; width: 100%; font-size:30px; color: #2843c0; }
    .screen-menu__heading span { padding:0; will-change:transform; }
    .screen-menu__tier-text { padding-right:20px; width: auto; font-size:14px; transform:none !important; }
    .screen-menu__tier-text:not(:last-child)::after { content:none; }
    .screen-menu__tier-text span { will-change:transform; }
    .screen-menu__tier-link { margin-right: 12px; font-size: 14px; color:#999; will-change:transform; }
    .screen-menu__tier-link:first-child { margin-left:0; }
	.screen-menu__tier-link:last-child { margin-right: 0; }
    .screen-menu__tier-toggle { overflow:hidden; margin-bottom:4px; line-height:1; font-size:16px; font-weight:700; pointer-events:none; border-radius:0; }
    .screen-menu__tier-toggle .icon-arrow { display:none; }
    .screen-menu__tier-box { overflow: hidden; display: flex; flex-wrap: wrap; flex-direction: row; width:100% !important; margin-bottom: 16px; }
	.screen-menu__tier--depth { flex-direction:column; align-items:flex-start; padding-top:6px; width:100%; }
    .screen-menu__tier--depth .screen-menu__tier-text { overflow: hidden; display: block; margin-bottom:6px; padding-right:0; font-size: 16px; font-weight: 600; opacity:1; }
    .screen-menu__tier--depth .screen-menu__tier-text:last-child { padding-bottom:0; }
    .screen-menu__splash { display: none; }
    .screen-menu__logo { display: none; }
}


/* ------- Modal ------- */
.modal-container { display: none; z-index: 11; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); }
.modal-container .modal-wrapper { display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 5px; width: auto; height: 100%; min-height: calc(100% - 10px); max-height: calc(100% - 10px); }
.modal-container .modal { overflow: hidden; display: flex; flex-direction: column; justify-content: center; position: relative; padding: 0 60px; max-width: 800px; width: 100%; height: auto; }
.modal-container .head-title { margin-bottom: 15px; padding-bottom: 10px; text-align: center; font-size: 1.6rem; font-weight: 600; color: #111; border-bottom: 1px solid var(--border-c); }
.modal-container .modal-body { overflow-x: hidden; overflow-y: auto; padding: 24px 5%; max-height: 600px; background: #fff; }
.modal-container .modal-body p:not(.head-title) { margin: 14px 0; }
.modal-container .modal .close { display: block; position: absolute; top: -20px; right: 0; width: 60px; height: 60px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-x'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: auto 55%; }
.modal-container .modal img { max-width: 100%; }
.modal-container--auto .modal { max-width: 100%; width: auto; }
.modal-container--flat .modal-body { padding: 0; }
.modal-container .modal-agree h2{font-size:20px}
.modal-container .modal-agree p{font-size:16px;}
.modal-container .modal-agree ul { list-style: inherit; margin: revert; padding: revert; }
.modal-container .modal-agree ul li { font-size:16px; list-style: inherit; }
@media screen and (pointer: fine) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
    .modal-container .modal{padding:0 20px; overflow:unset; max-height:500px;}
    .modal-container .modal .close{top:-48px;}

    .modal-container .modal-agree h2{font-size:16px;}
    .modal-container .modal-agree p{font-size:14px;}
    .modal-container .modal-agree ul li{font-size:14px;}
}


/* Main */
.link-primary { display: inline-flex; align-items: center; margin-top: 40px; font-size: 26px; font-weight: 700; color: #999; }
.link-primary .icon { display: inline-block; position: relative; margin-left: 16px; width: 30px; height: 30px; background: #2843c0; border-radius: 50%; }
.link-primary .icon::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('/theme/cream/images/arrow-right-light.svg') no-repeat center / auto 50%; }

@keyframes visualFadeIn {
    to { opacity: 1; }
}
@keyframes scrollDown {
	0% { opacity: 0; transform: translateY(-20px); }
	50% { opacity: 1; }
	100% { opacity: 0; transform: translateY(20px); }
}
.section-visual { background: #000; }
.section-visual .media { width: 100%; height: 100%; object-fit: cover; opacity: .6; }
.section-visual .background { width: 100%; height: 100%; object-fit: cover; transform: scale(1.2); }
.section-visual .swiper { opacity: 0; animation: visualFadeIn 1s ease 0.1s forwards; }
.section-visual .swiper-slide { height: 100vh; }
.section-visual .text-wrap { position: absolute; top: 38.3%; left: 0; right: 0; margin: auto; max-width: 1640px; width: 90%; }
.section-visual .heading { line-height: 1.375; font-size: 80px; font-weight: 600; color: #fff; transform: translateY(75px); opacity: 0; }
.section-visual .controls { z-index: 2; display: flex; align-items: center; position: absolute; bottom: 80px; left: 0; right: 0; margin: auto; max-width: 1640px; width: 90%; }
.section-visual .controls .toggle { flex-shrink: 0; display: block; position: relative; margin-right: 30px; width: 50px; height: 50px; background: rgba(255, 255, 255, 0.2); border-radius: 50%; }
.section-visual .controls .toggle::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 16px; height: 16px; background: url('/theme/cream/images/icon-pause-light.svg') no-repeat center / auto 100%; pointer-events: none; }
.section-visual .controls .toggle[data-state="pause"]::before { background-image: url('/theme/cream/images/icon-play-light.svg'); }
.section-visual .controls .swiper-pagination { display: flex; align-items: center; position: static; }
.section-visual .controls .swiper-pagination-bullet { display: flex; align-items: center; width: auto; height: auto; font-size: 24px; font-weight: 700; color: #fff; background: transparent; }
.section-visual .controls .swiper-pagination-bullet .progress { display: block; position: relative; margin-left: 18px; width: 0; height: 2px; background: rgba(255, 255, 255, 0.2); }
.section-visual .controls .swiper-pagination-bullet .progress::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; transform: scaleX(0); transform-origin: left; transition-property: transform; transition-timing-function: ease; }
.section-visual .controls .swiper-pagination-bullet-active .progress { width: 105px; }
.section-visual .controls .swiper-pagination-bullet-active .progress::after { transform: none; transition-duration: 5.5s; }
.section-visual .scroll { z-index: 2; position: absolute; bottom: 0; right: 0; margin: auto; font-weight: 700; transition: all ease .35s; }
.section-visual .scroll i { display: block; width: 51px; height: 51px; transition: all ease .35s; }
/* .section-visual .scroll i::before, */
.section-visual .scroll i::after { content: ''; position: absolute; left: 0; width: 100%; height: 100%; background: url('/theme/cream/images/scroll-arrow-light.png') no-repeat center / auto 100%; animation: scrollDown ease 1.6s infinite; opacity: 0; }
.section-visual .scroll i::after { animation-delay: 0.8s; }
.section-identity { position: relative; height: 200vh; }
.section-identity .sticky { position: sticky; top: 0; left: 0; height: 100vh; }
.section-identity .center { z-index: 2; position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; pointer-events: none; }
.section-identity .center .heading { z-index: 2; position: relative; line-height: 1.25; text-align: center; font-size: 100px; font-weight: 600; color: #2843c0; }
.section-identity .shape { overflow: hidden; display: flex; align-items: center; justify-content: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; mix-blend-mode: screen; pointer-events: none; }
.section-identity .shape svg { display: block; width: 345px; height: auto; will-change: transform; image-rendering: auto; }
.section-identity .shape img { display: block; position: absolute; max-width: none; width: 600px; height: auto; }
.section-identity .contents { padding: 140px 0; width: 100%; min-height: 100%; background: url('/theme/cream/images/main/main2.jpg') no-repeat center / cover; }
.section-identity .contents .flex { display: flex; max-width: 1640px; margin: auto; width: 90%; height: 100%; }
.section-identity .contents .side { width: 50%; }
.section-identity .contents .heading { margin-top: -10px; line-height: 1.13; font-size: 80px; font-weight: 600; color: #fff; }
.section-identity .context { width: 50%; color: #fff; }
.section-identity .context p { line-height: 1.54; font-size: 20px; font-weight: 500; }
.section-identity .link { display: inline-flex; align-items: center; margin-top: 40px; font-size: 20px; font-weight: 700; color: #fff; }
.section-identity .link .icon { display: inline-block; position: relative; margin-left: -16px; width: 100px; height: 100px; background: rgba(255, 255, 255, 0.2); border-radius: 50%; }
.section-identity .link .icon::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('/theme/cream/images/arrow-right-light.svg') no-repeat center / auto 22%; }
.section-identity .data { display: flex; flex-wrap: wrap; margin-top: 80px; }
.section-identity .data .col { display: flex; flex-direction: column; margin-bottom: 72px; width: 50%; }
.section-identity .data dt { display: inline-block; margin-bottom: 30px; padding: 0 24px; margin-right: auto; width: auto; height: 40px; line-height: 40px; font-size: 18px; font-weight: 700; border: 2px solid #ffffff70; border-radius: 40px;  }
.section-identity .data dd { line-height: 0.8; font-size: 30px; font-weight: 600; }
.section-identity .data dd b { padding-right: 0.1em; font-size: 80px; }
.section-product { height: 400vh; }
.section-product .sticky { overflow: hidden; position: sticky; top: 0; left: 0; width: 100%; height: 100vh; }
.section-product .badge { z-index: 1; position: absolute; left: 140px; bottom: 21.5%; font-size: 20px; font-weight: 600; color: #2843c0; }
/*.section-product .logo { position: absolute; left: 240px; bottom: 0; line-height: 0.7; font-size: 360px; font-weight: 700; color: #f0f0f0; } */
.section-product .logo { position: absolute; left: 100px; bottom: 0; line-height: 0.7; font-size: 500px; font-weight: 900; color: #f7f7f7; letter-spacing:-0.08em; }
.section-product .background { position: absolute; bottom: 0; left: 0; width: 100%; height: auto; opacity: 0; visibility: hidden; }
.section-product .heading { margin-bottom: 0px; font-size: 80px; font-weight: 700; color: #2843c0; }
.section-product .text { line-height: 1.5; font-size: 18px; }
.section-product .image { z-index: 3; position: relative; display: flex; align-items: flex-end; text-align: center; height: 100%; justify-content: flex-end; }
.section-product .image .item { transition: all ease 1s; }
.section-product .slider-info { z-index: 2; position: absolute; top: 90px; left: 140px; max-width: 50%; }
.section-product .slider-info .context { opacity: 0; transition: all ease .55s; }
.section-product .slider-info .swiper-slide-active .context { opacity: 1; transition-delay: .3s; }
.section-product .slider-main { padding-top: 50px; height: 100%; }
.section-product .slider-main .context { padding-top: 15%; padding: 0 0 10% 5%; width: 52%; line-height: 1.3; font-size: 24px; }
.section-product .slider-main .context .title { margin-bottom: 16px; font-weight: 700; font-size: 32px; }
.section-product .slider-main .swiper-slide { display: flex; flex-direction: row-reverse; align-items: flex-end; min-width: 1100px; width: 55vw; }
.section-product .slider-main .swiper-pagination { display: flex; flex-direction: column; bottom: auto; left: auto; top: 86px; right: 140px; width: 390px; text-align: left; }
.section-product .slider-main .swiper-pagination-bullet { display: flex; align-items: center; position: relative; margin-left: 0; padding: 30px 0; width: 100%; height: auto; border-radius: 0; font-size: 26px; font-weight: 700; color: #cccccc; background: transparent; opacity: 1; transition: all ease .35s; cursor: pointer; }
.section-product .slider-main .swiper-pagination-bullet::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: #e7e7e7; }
.section-product .slider-main .swiper-pagination-bullet::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: #111; transform: scaleX(0); transform-origin: left; transition: transform ease .35s; }
.section-product .slider-main .swiper-pagination-bullet .icon { display: block; width: 0px; height: 30px; background: url('/theme/cream/images/main/thumb-on.png') no-repeat left; transform: translateX(-15px); opacity: 0; transition: all ease .35s; }
.section-product .slider-main .swiper-pagination-bullet-active { color: #111; }
.section-product .slider-main .swiper-pagination-bullet-active::after { transform: none; }
.section-product .slider-main .swiper-pagination-bullet-active .icon { width: 52px; opacity: 1; transform: none; }
.section-product .slider-main .swiper-pagination-bullet:nth-child(n+3) { display: none; }
.section-product .slider-main .swiper-slide-active .context { opacity: 1; transition-delay: .35s; }

.section-technology { position: relative; height: 200vh; }
.section-technology .sticky { position: sticky; top: 0; left: 0; height: 100vh; }
.section-technology .center { z-index: 2; position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; pointer-events: none; }
.section-technology .center .heading { z-index: 2; position: relative; line-height: 1.25; text-align: center; font-size: 100px; font-weight: 700; color: #3b6bee; }

.section-technology .shape { overflow: hidden; display: flex; align-items: center; justify-content: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; mix-blend-mode: screen; pointer-events: none; }
.section-technology .shape svg { display: block; width: 345px; height: auto; will-change: transform; }
.section-technology .shape img { display: block; position: absolute; max-width: none; width: 600px; height: auto; }
.section-technology .contents { padding: 60px 0; width: 100%; height: 100%; background: url('/theme/cream/images/main/technology-background.jpg') no-repeat center / cover; }
.section-technology .contents .flex { margin: 20px 10px 0 10px; height: 100%; opacity: 0; }
.section-technology .contents .side { width: 100%; }
.section-technology .contents .heading { margin-top: 128px; line-height: 1.13; font-size: 70px; font-weight: 700; color: #ff9700; text-align:center; }
/*.section-technology .context { display: flex; justify-content: flex-end; margin-top: auto; width: 50%; color: #fff; } */
.section-technology .context { margin-top: 20px; width: 100%; color: #fff; }
/*.section-technology .context p { line-height: 1.54; font-size: 26px; font-weight: 600; } */
.section-technology .context p { line-height: 1.7; font-size: 19px; font-weight: 300; text-align: center; opacity: .9; letter-spacing: 0.02em; color: #e2e2e2; }
.section-industry { padding: 140px 0 160px; background: url('/theme/cream/images/main/industry-background.jpg') no-repeat center / cover; }
.section-industry .contents { margin-right: auto; margin-left: auto; max-width: 1466px; width: 90%; color: #fff; }
.section-industry .heading { text-align: center; font-size: 80px; font-weight: 600; }
.section-industry .heading + .text { margin-bottom: 100px;  text-align: center; opacity: .8; letter-spacing: 0.02em; font-size: 22px; }
.section-industry .text { font-size: 20px; }
.section-industry .list li { display: flex; align-items: center; position: relative; margin-top: 55px; }
.section-industry .list .image { overflow: hidden; position: absolute; top: 0; left: 0; width: 50%; height: 100%; border-radius: 24px; transition: width ease .65s; }
.section-industry .list .image .background { width: 100%; height: 100%; object-fit: cover; }
.section-industry .list .image .logo { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; opacity: 0; transition: opacity ease .35s; }
.section-industry .list .block { z-index: 2; position: relative; flex: 1 1; display: flex; align-items: center; height: 234px; background-repeat: no-repeat; background-position: center; background-size: cover; }
.section-industry .list .title { z-index: 2; position: relative; flex: 0 1 50%; text-align: center; font-size: 42px; font-weight: 600; }
.section-industry .list .text { z-index: 2; position: relative; flex: 0 1 50%; padding-left: 65px; }

.section-board { overflow-x: hidden; padding: 140px 0; }
.section-board .heading { font-size: 70px; font-weight: 600; color: #2843c0; }
.section-board .contents { margin-right: auto; margin-left: auto; max-width: 1640px; width: 90%; color: #fff; }
.section-board .flex { display: flex; align-items: center; justify-content: space-between; margin: 70px 0 30px 0; }
.section-board .controls { display: flex; align-items: center; }
.section-board .swiper { overflow: visible; padding-bottom: 90px; }
.section-board .swiper-button-prev,
.section-board .swiper-button-next { position: static; width: 50px; height: 50px; margin-right: 24px; background-repeat: no-repeat; background-position: center; background-size: auto 75%; }
.section-board .swiper-button-prev { background-image: url('/theme/cream/images/main/arrow-left.png'); }
.section-board .swiper-button-next { background-image: url('/theme/cream/images/main/arrow-right.png'); }
.section-board .swiper-button-prev::after,
.section-board .swiper-button-next::after { content: none; }
.section-board .swiper .swiper-scrollbar { left: 0; bottom: 0; width: 100%; background: #eeeeee; border-radius: 0; }
/* .section-board .swiper .swiper-scrollbar-drag { background: #111111; } */
.section-board .link-primary { margin-top: 0; }
.section-board .box .category { line-height: 1; font-style: normal; font-size: 20px; color: #2843c0; font-weight: 600; }
.section-board .box .title { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; margin: 6px 0 22px; font-family: 'Noto Sans SC', 'Pretendard', sans-serif; font-size: 24px; color: #111111; font-weight: 600; }

.section-board .box .date { font-size: 16px; color: #999999; font-weight: 500; }
.section-board .box .thumbnail { overflow: hidden; position: relative; margin-bottom: 30px; -webkit-backface-visibility: hidden; -webkit-transform: translate3d(0, 0, 0); }
.section-board .box .thumbnail::before { content: ''; z-index: 2; display: block; position: relative; padding-top: calc(304 / 456 * 100%); width: 100%; height: 0; }
.section-board .box .thumbnail img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: transform ease .6s; }

.section-contact { position: relative; color: #fff; }
.section-contact .top { margin-right: auto; margin-left: auto; max-width: 1640px; width: 90%; }
.section-contact .heading { margin-bottom: 45px; font-size: 70px; font-weight: 600; color: #2843c0; }
.section-contact .contents { position: relative; padding: 140px 0 390px; color: #fff; }
.section-contact .background { position: absolute; top: 1px; left: 0; right: 0; margin: auto; width: 100%; height: 100%; border-radius: var(--radius); object-fit: cover; }
.section-contact .flex { z-index: 2; position: relative; display: flex; margin-right: auto; margin-left: auto; max-width: 1640px; width: 90%; }
.section-contact .side { width: 50%; }
.section-contact .context { width: 50%; }
.section-contact .context p { margin-top: 20px; line-height: 1.54; font-size: 32px; font-weight: 600; }

.section-contact .title { line-height: 1.13; font-size: 70px; font-weight: 600; color: inherit; }
.section-contact .context .link-primary { color: inherit; }

@media (hover: hover) and (pointer: fine) {
    .section-industry .list li:hover .image { width: 100%; }
    .section-industry .list li:hover .image .logo { opacity: 1; }

    .section-board .box:hover .thumbnail img { transform: scale(1.2); }
    .section-board .box:focus .title,
    .section-board .box:hover .title { text-decoration: underline; text-underline-offset: 0.2em; }
}
@media screen and (min-width: 1025px) {
    .section-industry .list li:nth-child(3) { margin-top: 40px; }
    .section-industry .list li:nth-child(1) .block,
    .section-industry .list li:nth-child(3) .block { flex-direction: row-reverse; }
    .section-industry .list li:nth-child(2) .text { padding-left: 5.8em; }
    .section-industry .list li:nth-child(2) .image { left: auto; right: 0; }
}
@media screen and (max-width: 1024px) {
    .link-primary { margin-top: 30px; font-size: 16px; }
    .link-primary .icon { margin-left: 14px; }

    .section-visual .heading { font-size: 48px; }
    .section-visual .text-wrap { top: auto; bottom: 300px; }
    .section-visual .controls { bottom: 50px; }
    .section-visual .controls .swiper-pagination-bullet { font-size: 18px; }
    .section-visual .controls .swiper-pagination-bullet-active .progress { width: 80px; }
    .section-visual .controls .toggle { margin-right: 20px; width: 45px; height: 45px; }
    .section-visual .scroll i { width: 35px; height: 35px; }

    .section-identity .center .heading { font-size: 64px; }
    .section-identity .contents .heading { font-size: 48px; }
    .section-identity .context p { font-size: 14px; }
    .section-identity .link { margin-top: 54px; font-size: 18px; }
    .section-identity .link .icon { width: 70px; height: 70px; }
    .section-identity .data { margin-top: 100px; }
    .section-identity .data dt { font-size: 16px; }
    .section-identity .data dd { font-size: 24px; }
    .section-identity .data dd b { font-size: 56px; }

    .section-product { padding: 0; background: #fff; }
    .section-product .sticky { display: flex; flex-direction: column; justify-content: space-between; padding: 50px 0 0; }
    .section-product .heading { font-size: 40px; }
    .section-product .text { font-size: 18px; }
    .section-product .slider-info { top: 80px; left: 0; right: 0; margin: 0 auto; max-width: none; width: 90%; }
    .section-product .slider-main { padding-top: 300px; height: auto; }
    .section-product .slider-main .swiper-pagination { display: none; }
    .section-product .logo { display: none; }
    .section-product .image { padding-left: 5%; }
    .section-product .image .item { width: 70%; height: auto; }
    .section-product .context .text { line-height: 1.55; font-size: 14px; }
	.section-product .slider-main .swiper-slide { min-width: 750px; width: 35vw; }
    .section-product .slider-main .context { padding-left: 2%; padding-right: 5%; padding-bottom: 4%; width: 80%; font-size: 18px; }

    .section-technology .center .heading { font-size: 64px; }
    .section-technology .contents .heading { font-size: 48px; }
    .section-technology .context p { font-size: 12px; }

    .section-industry { padding: 80px 0; }
    .section-industry .heading { font-size: 48px; }
    .section-industry .heading + .text { margin-bottom: 60px; }
    .section-industry .text { font-size: 18px; }
    .section-industry .list .block { flex-direction: column; justify-content: center; text-align: center; padding: 34px; }
    .section-industry .list .title { flex-basis: auto; margin-bottom: 20px; font-size: 24px; }
    .section-industry .list .image { width: 100%; }
    .section-industry .list .text { padding: 0; max-width: 500px; line-height:1.4; }


    .section-board { padding: 80px 0; }
    .section-board .flex { margin-top: 15px; }
    .section-board .swiper { padding-bottom: 50px; }
    .section-board .controls { display: none; }
    .section-board .heading { font-size: 48px; }
    .section-board .box .thumbnail { margin-bottom: 25px; }
    .section-board .box .category { font-size: 18px; }
    .section-board .box .title { margin: 4px 0 14px; font-size: 20px; }
    .section-board .box .date { font-size: 14px; }

    .section-contact .contents { padding: 80px 0 160px; }
    .section-contact .heading { font-size: 48px; }
    .section-contact .title { font-size: 48px; }
    .section-contact .context p { font-size: 20px; }
}
@media screen and (max-width: 768px) {
    .link-primary { font-size: 15px; }
    .link-primary .icon { margin-left: 12px; }

    .section-visual .heading { font-size: 36px; }
    .section-visual .controls .swiper-pagination-bullet { font-size: 16px; }
    .section-visual .controls .swiper-pagination-bullet .progress { margin-left: 10px; }
    .section-visual .controls .swiper-pagination-bullet-active .progress { width: 65px; }
    .section-visual .scroll i { width: 28px; height: 28px; }

    .section-identity .center .heading { font-size: 48px; }
    .section-identity .contents .side { width: 100%; }
    .section-identity .contents { padding: 100px 0 72px; }
    .section-identity .contents .flex { flex-direction: column; }
    .section-identity .contents .heading { margin-bottom: 30px; font-size: 34px; }
    .section-identity .context { width: 100%; }
    .section-identity .link { margin-top: 20px; font-size: 16px; }
    .section-identity .link .icon { width: 56px; height: 56px; }
    .section-identity .data { margin-top: 50px; }
    .section-identity .data .col { margin-bottom: 48px; }
    .section-identity .data dt { margin-bottom: 20px; height: 34px; line-height: 34px; font-size: 14px; }
    .section-identity .data dd { font-size: 18px; }
    .section-identity .data dd b { font-size: 32px; }

    .section-technology .center .heading { font-size: 48px; }
    .section-technology .contents .heading { margin-bottom: 30px; font-size: 34px; }
    .section-technology .contents .flex { flex-direction: column; }
    .section-technology .context { margin-top: 30px; }
    .section-technology .contents .side { width: 100%; }
    .section-technology .context { width: 100%; }

	.section-industry .heading { font-size: 34px; line-height:1.3; }
    .section-industry .heading + .text { margin-bottom: 45px; margin-top:16px; line-height:1.3; }
	
    .section-industry .text { font-size: 16px; }
    .section-industry .list li { margin-top: 35px; }
    .section-industry .list .title { margin-bottom: 14px; font-size: 20px; }

    .section-board .heading { font-size: 34px; }
    .section-board .box .category { font-size: 16px; }
    .section-board .box .title { font-size: 16px; }

    .section-contact .flex { flex-direction: column; }
    .section-contact .heading { font-size: 34px; }
    .section-contact .title { font-size: 34px; }
    .section-contact .context p { font-size: 18px; }
    .section-contact .contents .side { width: 100%; }
    .section-contact .context { width: 100%; }

	/* .section-product .slider-main .swiper-slide { min-width: 650px; width: 30vw; } */
}
@media screen and (max-width: 600px) {
    .section-identity .center .heading { font-size: 30px; }

    .section-technology .center .heading { font-size: 30px; }
}
