@charset "utf-8";
/* ********************************************************************
 * name : 동아대학교 고기능성밸브 기술지원센터
 * filename : content.css
 * author : JBieN 제이비엔
 * date : 2026-06-26
********************************************************************* */
/* =============================================
   Greeting Page
============================================= */
.greetingPage { overflow-x: clip; overflow-y: visible; background: #fff; color: #242424; font-size: 1.6rem; letter-spacing: -.025em; }
.greetingPage * { box-sizing: border-box; }
.greetingPage img { display: block; max-width: 100%; }

/* =============================================
   Greeting intro
============================================= */
.greetIntroSec { padding: clamp(9rem, 9vw, 15rem) var(--area-padding, 4rem) clamp(7rem, 7vw, 12rem); background: #fff; }
.greetIntroIn { width: min(132rem, 100%); margin: 0 auto; }
.greetIntroCopy { max-width: 108rem; }
.greetMainTit {margin: 0;color: #303238;font-size: clamp(4.2rem, 4vw, 8rem);font-weight: 700;line-height: 1.2;}
.greetMainTit span { display: block; }
.greetIntroTxt {margin-top: clamp(4rem, 4vw, 6.4rem);color: #5f6670;font-size: clamp(1.8rem, 1.1vw, 2.2rem);font-weight: 500;line-height: 1.9;}
.greetIntroTxt p + p { margin-top: clamp(2.6rem, 2.4vw, 3.8rem); }

/* =============================================
   Greeting top stats
============================================= */
.greetStatList { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(2rem, 4vw, 7rem); width: min(108rem, 100%); margin: clamp(7rem, 7vw, 10rem) auto 0; padding: 0; list-style: none; text-align: center; }
.greetStatList li { min-width: 0; }
.greetStatList strong {display: flex;align-items: flex-end;justify-content: center;gap: .8rem;color: var(--main-color, #0f7dff);font-size: clamp(5.2rem, 5vw, 7.8rem);font-weight: 700;line-height: .9;}
.greetStatList em { position: relative; bottom: .6rem; color: inherit; font-size: .28em; font-weight: 900; font-style: normal; letter-spacing: -.02em; }
.greetStatList p {margin: 1.4rem 0 0;color: #303238;font-size: 2rem;font-weight: 600;line-height: 1.4;}

/* =============================================
   Greeting message
============================================= */
.greetMsgSec { position: relative; overflow: visible; background: #edf2f8; }
.greetMsgGrid { display: grid; grid-template-columns: minmax(38rem, 38.5vw) minmax(0, 1fr); align-items: stretch; min-height: 100vh; }
.greetImgCol { position: relative; align-self: stretch; min-width: 0; height: auto; }
.greetImgPin {position: sticky;top: 0;height: 100vh;min-height: 0;margin: 0;overflow: hidden;background: #d9e4ee;}
.greetImgPin img { width: 100%; height: 100%; object-fit: cover; }

.greetTextCol { position: relative; min-width: 0; padding: clamp(9rem, 8vw, 14rem) clamp(4rem, 8vw, 14rem) clamp(9rem, 9vw, 16rem); overflow: hidden; }
.greetTextInner { position: relative; z-index: 2; max-width: 86rem; }
.greetMarkBg { position: absolute; right: clamp(-22rem, -9vw, -10rem); top: 50%; z-index: 1; display: block; width: clamp(52rem, 52vw, 92rem); aspect-ratio: 1 / 1; background-repeat: no-repeat; background-position: center; background-size: contain; opacity: .055; pointer-events: none; transform: translateY(-50%); will-change: transform; }
.greetTextBlock { position: relative; z-index: 2; }
.greetMsgTit {margin: 0 0 clamp(4rem, 4vw, 6rem);color: #111;font-size: clamp(3rem, 2.6vw, 4.3rem);font-weight: 700;line-height: 1.35;}
.greetTextBlock p {margin: 0;color: #5d6570;font-size: clamp(1.8rem, 1.05vw, 1.9rem);font-weight: 500;line-height: 2.05;}
.greetTextBlock p + p {margin-top: clamp(2.2rem, 2vw, 2.8rem);}
.greetThanks {margin-top: 4rem !important;color: #073e9c !important;font-size: clamp(1.8rem, 1.25vw, 3.8rem) !important;font-weight: 700 !important;}
.greetSign {margin-top: clamp(4rem, 4vw, 6rem) !important;color: #222 !important;text-align: right;font-weight: 700 !important;}

/* =============================================
   Greeting sub stats
============================================= */
.greetSubStat { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(2rem, 3vw, 5rem); margin: clamp(5rem, 5vw, 7rem) 0; padding: 0; list-style: none; }
.greetSubStat li {min-width: 0;position: relative;display: flex;justify-content: flex-start;width: 250px;}
.greetSubStat strong {display: flex;align-items: flex-end;gap: 2rem;color: #2e6eb9;font-size: clamp(5rem, 5vw, 10rem);font-weight: 600;line-height: .9;letter-spacing: -.055em;}
.greetSubStat em { position: relative; bottom: .7rem; color: inherit; font-size: .22em; font-weight: 800; font-style: normal; letter-spacing: -.03em; white-space: nowrap; }
.greetSubStat p {margin: 1.2rem 0 0;color: #37404b;font-size: 1.8rem;font-weight: 600;line-height: 1.4;text-align: center;position: absolute;right: 3vw;}
.greetSubStat p.gsLast{right: 0;}

/* =============================================
   Motion hooks
============================================= */
.greetingPage.isMotionReady [data-rise] { opacity: 0; filter: blur(.8rem); transform: translate3d(0, 4.8rem, 0); transition: opacity .9s cubic-bezier(.19, 1, .22, 1), filter 1s cubic-bezier(.19, 1, .22, 1), transform 1s cubic-bezier(.19, 1, .22, 1); will-change: opacity, filter, transform; }
.greetingPage.isMotionReady [data-rise].isAni { opacity: 1; filter: blur(0); transform: translate3d(0, 0, 0); }

/* =============================================
   Responsive
============================================= */
@media (min-width: 2100px) {
	.greetSubStat p {right: 2vw;}
}

@media (max-width: 1800px) {
	.greetSubStat li { flex-direction: column;align-items: flex-start;}
	.greetSubStat p {position: initial;}
}

@media (max-width: 1280px) {
	.greetIntroIn { width: min(100%, 108rem); }
	.greetMsgGrid { grid-template-columns: 1fr; min-height: 0; }
	.greetImgPin { position: relative; top: auto; height: auto; min-height: 0; }
	.greetImgPin img { height: auto; aspect-ratio: 16 / 9; }
	.greetTextCol { padding: 5em 3%; }
	.greetTextInner { max-width: 100%; }
	.greetMarkBg { right: -18rem; top: 10rem; width: 70rem; transform: translate3d(0, var(--greetLogoY, 0), 0); }
	.greetSubStat {display: flex;gap: 1rem;flex-wrap: wrap;justify-content: center;}
	.greetSubStat li {width: 30%;align-items: center;}
}

@media (max-width: 900px) {
	.greetIntroSec { padding-top: 8rem; }
	.greetStatList { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem 2rem; }
	.greetStatList strong { font-size: 5.4rem; }
	.greetSubStat { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
	.greetSubStat strong { font-size: 5rem; }
	.greetMsgTit { font-size: 3.2rem; }
}

@media (max-width: 640px) {
	.pcOnly { display: none; }
	.greetIntroSec { padding: 7rem 2rem 6rem; }
	.greetIntroTxt { margin-top: 3rem; font-size:16px; line-height: 1.8; }
	.greetStatList { grid-template-columns: 1fr 1fr; margin-top: 5rem; gap: 3rem 1.6rem; }
	.greetStatList strong { font-size: 4.6rem; }
	.greetStatList p { font-size: 1.4rem; }
	.greetSubStat p {font-size: 14px;}

	.greetTextCol { padding: 6rem 2rem 8rem; }
	.greetMsgTit { margin-bottom: 3rem; font-size: 2.8rem; }
	.greetTextBlock p { font-size: 16px; line-height: 1.8; }
	.greetSubStat strong { font-size: 5rem; }
	.greetMarkBg { right: -12rem; top: 35rem; width: 54rem; opacity: .045; }
}

@media (max-width: 420px) {
	.greetMainTit { font-size: 3.6rem; }
}

@media (prefers-reduced-motion: reduce) {
	.greetingPage.isMotionReady [data-rise],
	.greetingPage.isMotionReady [data-rise].isAni,
	.greetMarkBg { transition: none !important; transform: none !important; filter: none !important; opacity: 1 !important; }
}


/* =============================================
   Vision Page
============================================= */
.visionPage { padding: clamp(3rem, 10vw, 5rem) var(--area-padding, 4rem); background: #fff; overflow: hidden; }
.visionIn { width: min(156rem, 100%); margin: 0 auto; }
.visionList { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: clamp(3rem, 4vw, 7rem); margin: 0; padding: 0; list-style: none; }
.visionItem { min-width: 0; }
.visionItem01 { padding-top: clamp(6rem, 7vw, 10rem); }
.visionItem02 { padding-bottom: clamp(5rem, 6vw, 9rem); }
.visionItem03 { padding-top: clamp(11rem, 10vw, 15rem); }

.visionCard { position: relative; display: block; height: clamp(46rem, 42vw, 67rem); border-radius: clamp(2rem, 2vw, 3.2rem); overflow: hidden; background: #06101d; transform: translate3d(0, 0, 0); will-change: transform; backface-visibility: hidden; }
.visionCard img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.03); }

.visionTxt { position: relative; z-index: 3; padding: clamp(4rem, 4vw, 6rem); color: #fff; }
.visionTxt h4 {margin: 0 0 clamp(3.2rem, 3vw, 4.4rem);font-size: clamp(3.6rem, 3.4vw, 5.6rem);font-weight: 500;line-height: 1;letter-spacing: -.055em;}
.visionTxt strong {display: block;color: #fff;font-size: clamp(2.2rem, 1.8vw, 3rem);font-weight: 500;line-height: 1.28;letter-spacing: -.045em;}
.visionTxt p {margin: clamp(3.6rem, 3vw, 5rem) 0 0;color: rgba(255, 255, 255, .78);font-size: clamp(1.6rem, 1.1vw, 1.9rem);font-weight: 500;line-height: 1.65;letter-spacing: -.035em;}


/* =============================================
   Responsive
============================================= */
@media (max-width: 1480px) {
	.visionPage{padding: 2em 3%;}
}

@media (max-width: 1180px) {
	.visionList { gap: 2.4rem; }
	.visionTxt { padding: 3.4rem 2.8rem; }
	.visionTxt p br{display:none;}
}

@media (max-width: 900px) {
	.visionList {gap: 3rem;display: flex;flex-wrap: wrap;justify-content: center;}
	.visionItem01,
	.visionItem02,
	.visionItem03 { padding: 0; }
	.visionCard { width: 40dvw;transform: none !important;}
}

@media (max-width: 560px) {
	.visionCard {width: 70dvw;}
	.visionTxt h4 { font-size: 3.8rem; }

}

/* =============================================
   Vision Strategy Stack
============================================= */
.visionStrategySec {position: relative;padding: clamp(9rem, 10vw, 16rem) var(--area-padding, 4rem) 0;overflow: visible;background: #fff;}
.visionStrategyIn { width: min(160rem, 100%); margin: 0 auto; }
.visionStrategyStage { position: relative; }

.visionStrategyHead { margin-bottom: clamp(5rem, 5vw, 7rem); text-align: center; }
.visionStrategyHead p {margin: 0 0 2rem;color: var(--main-color, #0f7dff);font-size: clamp(1.8rem, 1.4vw, 2.4rem);font-weight: 700;line-height: 1;}
.visionStrategyHead h3 {margin: 0;color: #111;font-size: clamp(3.8rem, 4vw, 5.5rem);font-weight: 700;line-height: 1.15;}

.visionStrategyPin { position: relative; height: 47rem; border-radius: clamp(2.2rem, 2vw, 3.2rem); overflow: visible; }
.visionStrategyPanel {position: absolute;inset: 0;display: flex;align-items: center;width: 100%;height: 100%;padding: clamp(4rem, 4vw, 6rem) clamp(4rem, 5vw, 8rem);border-radius: inherit;overflow: hidden;isolation: isolate;background: #071225;color: #fff;transform: translate3d(0, 0, 0);will-change: transform;backface-visibility: hidden;}
.visionStrategyPanel::before {content: "";}
.visionStrategyPanel01 { z-index: 1; }
.visionStrategyPanel02 { z-index: 2; }

.visionStrategyBg { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.03); }

.visionStrategyCon { position: relative; z-index: 2; width: 100%; }
.visionStrategyCon h4 {margin: 0 0 clamp(4rem, 6vw, 10rem);color: #fff;font-size: clamp(2.8rem, 2.8vw, 4.8rem);font-weight: 700;line-height: 1.25;text-align: center;}
.visionStrategyCon h4 em { color: #ff9d00; font-style: normal; }

.visionStrategyInfo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: clamp(3rem, 4vw, 7rem); }
.visionStrategyItem { display: flex; align-items: center; justify-content: center; gap: clamp(2rem, 2.2vw, 3.6rem); min-width: 0; }
.visionStrategyItem figure {flex: 0 0 auto;width: clamp(8rem, 7vw, 14rem);margin: 0;}
.visionStrategyItem figure img { width: 100%; height: auto; }
.visionStrategyItem p {margin: 0;color: #fff;font-size: clamp(1.6rem, 1.1vw, 1.9rem);font-weight: 600;line-height: 1.65;letter-spacing: -.035em;}


/* =============================================
   Responsive
============================================= */
@media (max-width: 1480px) {
	.visionStrategyPin {height: 34rem;}
}

@media (max-width: 900px) {
	.visionStrategySec { padding: 8rem 0 0; }
	.visionStrategyIn { width: 100%; }
	.visionStrategyHead { margin-bottom: 4rem; }
	.visionStrategyPin { height: auto; border-radius: 0; }
	.visionStrategyPanel { position: relative; inset: auto; height: auto; min-height: auto; padding: 4rem 3rem; border-radius: 2.4rem; }
	.visionStrategyPanel02 { margin-top: 3rem; transform: none !important; }
	.visionStrategyCon h4 { margin-bottom: 4rem; font-size: 3rem; }
	.visionStrategyInfo { grid-template-columns: 1fr; gap: 3rem;justify-items: center;}
	.visionStrategyItem { justify-content: flex-start; }
	.visionStrategyCon h4 em {display: block;}
}

@media (max-width: 560px) {
	.visionStrategyHead h3 { font-size: 3.4rem; }
	.visionStrategyPanel { padding: 3.4rem 2.4rem; }
	.visionStrategyCon h4 { font-size: 2.6rem; }
	.visionStrategyItem figure { width: 8rem; }
	.visionStrategyItem p { font-size: 1.7rem; }
	.visionStrategyItem p br{display:none;}
	.visionStrategyInfo {justify-items: start;}
}

/* =============================================
   History Page
============================================= */
.historyPage {position: relative;padding: 0 0 10rem;overflow-x: clip;overflow-y: visible;background: #fff;color: #222;}
.historyIn {display: grid;grid-template-columns: 39rem minmax(0, 1fr);gap: clamp(6rem, 7vw, 12rem);width: min(160rem, 100%);margin: 0 auto;padding-top: 17rem;}


/* =============================================
   History side
============================================= */
.historySide { position: relative; min-width: 0; }
.historySideSticky { position: sticky; top: calc(var(--header-height, 9rem) + 7rem); }
.historyLabel { margin: 0 0 1.8rem; color: #111; font-size: 1.7rem; font-weight: 700; line-height: 1; }
.historyCurrent {display: block;color: var(--main-color, #0f7dff);font-size: clamp(6.4rem, 9.4vw, 13rem);font-weight: 500;line-height: .9;letter-spacing: -.03em;}
.historyNav {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 25px;margin-top: clamp(3rem, 3vw, 4rem);padding-top: 2.8rem;border-top: 1px solid #e2e6ec;}
.historyNavBtn {display: inline-flex;align-items: center;justify-content: center;border: 0;background: none;color: #d2d6dc;font-size: clamp(1.8rem, 1.4vw, 2.8rem);font-weight: 600;line-height: 1;letter-spacing: -.04em;cursor: pointer;transition: color .25s ease, transform .25s ease;}
.historyNavBtn:hover,
.historyNavBtn:focus-visible,
.historyNavBtn.isActive { color: var(--main-color, #0f7dff); }
.historyNavBtn:hover,
.historyNavBtn:focus-visible { transform: translateY(-2px); }


/* =============================================
   History main
============================================= */
.historyMain { position: relative; min-width: 0; }
.historyGhost {position: sticky;top: calc(100vh - 30vh);z-index: 0;display: block;height: 0;margin: 0;color: #f5f6f8;font-size: clamp(11rem, 15vw, 25rem);margin-left: 1.2em;font-weight: 900;line-height: 1;letter-spacing: -.075em;text-align: right;pointer-events: none;user-select: none;}
.historyBody { position: relative; z-index: 1; padding-bottom: clamp(8rem, 9vw, 14rem); }

.historyLine { position: absolute; left: 2.9rem; top: 0; bottom: 0; z-index: 1; display: block; width: 2px; background: #edf0f4; overflow: hidden; }
.historyLineFill { position: absolute; left: 0; top: 0; display: block; width: 100%; height: 0; background: var(--main-color, #0f7dff); transition: none; }

.historyYearBlock {position: relative;display: grid;grid-template-columns: 6rem 13rem minmax(0, 1fr);gap: clamp(2rem, 3vw, 5rem);min-height: 16rem;padding-bottom: clamp(6rem, 10vw, 13rem);}
.historyYearBlock:last-child { padding-bottom: 0; }
.historyDot { position: relative; z-index: 2; display: flex; align-items: center; justify-content: center; width: 2.8rem; height: 2.8rem; margin: .1rem auto 0; border-radius: 50%; background: #dfe4eb; color: #fff; transition: background .25s ease, box-shadow .25s ease; }
.historyDot::before { content: ""; display: block; width: .8rem; height: .8rem; border-radius: 50%; background: #fff; }
.historyYearBlock.isActive .historyDot { background: var(--main-color, #0f7dff); box-shadow: 0 0 0 .8rem rgba(15, 125, 255, .1); }
.historyYearBlock.isPassed .historyDot{background:var(--main-color,#0f7dff);}
.historyYearBlock.isPassed .historyDot::before{background:#fff;}
.historyYearBlock.isActive .historyDot{background:var(--main-color,#0f7dff);box-shadow:0 0 0 .8rem rgba(15,125,255,.1);}
.historyNavBtn.isPassed{color:#9fbfe8;}
.historyNavBtn.isActive{color:var(--main-color,#0f7dff);}

.historyYear {margin: 0;color: var(--main-color, #0f7dff);font-size: clamp(2.8rem, 2.8vw, 4rem);font-weight: 700;line-height: 1;}
.historyList {display: grid;gap: clamp(2rem, 3vw, 3rem);margin: 0;padding: 0;list-style: none;margin-top: 1em;}
.historyList li { display: grid; grid-template-columns: 13rem minmax(0, 1fr); gap: clamp(2rem, 3vw, 5rem); align-items: start; }
.historyList time {color: #063777;font-size: clamp(1.7rem, 1.25vw, 2rem);font-weight: 700;line-height: 1.4;letter-spacing: -.02em;}
.historyList p { margin: 0; color: #444; font-size: clamp(1.7rem, 1.15vw, 1.9rem); font-weight: 700; line-height: 1.65; letter-spacing: -.035em; }
.historyList span {display: block;margin-top: 1.5rem;color: #707780;font-size: clamp(1.5rem, 1vw, 1.7rem);font-weight: 600;line-height: 1.65;letter-spacing: -.03em;position: relative;}

/* =============================================
   Responsive
============================================= */
@media (max-width: 1800px) {
	.historyIn {width: calc(100% - 6%);}
}

@media (max-width: 1280px) {
	.historyIn { grid-template-columns: 29rem minmax(0, 1fr); gap: 6rem; }
	.historyCurrent { font-size: 7rem; }
	.historyYearBlock { grid-template-columns: 5rem 11rem minmax(0, 1fr); gap: 3rem; }
	.historyLine { left: 2.4rem; }
	.historyList li { grid-template-columns: 11rem minmax(0, 1fr); gap: 3rem; }
}

@media (max-width: 1100px) {
	.historyIn { display: block;padding-top: 4rem;}
	.historySide { position: sticky; top: 0; z-index: 10; margin-bottom: 5rem; padding: 2rem 0; background: rgba(255, 255, 255, .92); backdrop-filter: blur(1rem); }
	.scroll-up .historySide{}
	.historySideSticky { position: relative; top: auto; }
	.historyLabel { display: none; }
	.historyCurrent { margin-bottom: 1.6rem; font-size: 4.2rem; }
	.historyNav {display: flex;flex-wrap: wrap;justify-content: space-between;gap: 1rem 1.4rem; margin-top: 0; padding-top: 0; border-top: 0; }
	.historyNavBtn { font-size: 1.7rem; }
	.historyGhost { top: calc(100vh - 10rem); right: -2rem; font-size: 10rem; }
	.historyYearBlock { grid-template-columns: 4.4rem minmax(0, 1fr); gap: 2.4rem; padding-bottom: 7rem; }
	.historyYear { grid-column: 2; font-size: 3.2rem; }
	.historyList { grid-column: 2; gap: 2.4rem; }
	.historyList li { grid-template-columns: 10rem minmax(0, 1fr); gap: 2rem; }
	.historyLine { left: 2.1rem; }
	.historyDot { grid-row: 1 / span 2; width: 2.4rem; height: 2.4rem; }
}

@media (max-width: 560px) {
	.historyCurrent { font-size: 3.8rem; }
	.historyNavBtn { font-size: 1.6rem; }
	.historyYearBlock { grid-template-columns: 3.8rem minmax(0, 1fr); gap: 1.8rem; }
	.historyLine { left: 1.8rem; }
	.historyList li { grid-template-columns: 1fr; gap: .8rem; }
	.historyList time { font-size: 1.7rem; }
	.historyList p { font-size: 1.9rem; }
	.historyList span { font-size: 1.6rem; }
	.historyPage {padding: 0 0 5rem;}
}

/* =============================================
   Companies Page
============================================= */
.companiesPage { position: relative; overflow-x: clip; background: #fff; }

.companySupportHero { position: relative;background: #fff; }
.companiesVisPar { position: relative; }
.companiesVisBox { position: relative; isolation: isolate; }
.companiesVisBox::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(2, 9, 26, .88) 0%, rgba(2, 9, 26, .62) 38%, rgba(2, 9, 26, .12) 100%); pointer-events: none; }
.companiesVisBox::after { content: ""; position: absolute; inset: 0; z-index: 2; background: radial-gradient(circle at 22% 50%, rgba(0, 191, 255, .16), transparent 24rem), radial-gradient(circle at 88% 20%, rgba(0, 118, 255, .22), transparent 34rem); pointer-events: none; }
.companySupportCon { position: absolute; left: clamp(4rem, 7vw, 12rem); top: 50%; z-index: 3;color: #fff; transform: translateY(-50%); }
.companySupportCon h3 {margin: 0 0 clamp(3.6rem, 4vw, 6rem);color: #fff;font-size: clamp(2.8rem, 2.4vw, 4.2rem);font-weight: 600;line-height: 1.2;letter-spacing: -.05em;}
.companySupportStats {display: grid;gap: clamp(2.4rem, 3vw, 4.4rem);}
.companySupportStat {display: grid;grid-template-columns: 10rem minmax(0, 1fr);align-items: center;gap: clamp(2rem, 2.6vw, 4rem);}
.companySupportStat span {color: rgba(255, 255, 255, .9);font-size: clamp(1.6rem, 1.15vw, 2.2rem);font-weight: 600;line-height: 1.35;}
.companySupportStat span small { color: rgba(255, 255, 255, .64); font-size: .78em; font-weight: 700; }
.companySupportStat strong {display: flex;align-items: flex-end;gap: .8rem;color: #00bee8;font-size: clamp(5rem, 5vw, 9rem);line-height: .85;}
.companySupportStatSub strong {color: #f1a600;}
.companySupportStat em { position: relative; bottom: .6rem; color: inherit; font-size: .24em; font-style: normal; font-weight: 900; letter-spacing: -.04em; }
.companySupportStatSub{margin-left: 13vw;}

.stateSec { position: relative; padding: clamp(8rem, 9vw, 15rem) 2rem; overflow: hidden; background: radial-gradient(circle at 84% 18%, rgba(0, 103, 255, .08), transparent 26rem), linear-gradient(180deg, #fff 0%, #f8faff 100%); }
.stateSec::before { content: ""; position: absolute; right: -12rem; bottom: -12rem; width: 34rem; height: 34rem; border-radius: 50%; background: rgba(8, 28, 98, .035); }
.stateIn { position: relative; z-index: 1; width: min(128rem, 100%); margin: 0 auto; }
.stateHead { margin-bottom: clamp(3.8rem, 5vw, 7.2rem); text-align: center; }
.stateDot { display: block; width: .7rem; height: .7rem; margin: 0 auto 1.8rem; border-radius: 50%; background: var(--main-color, #0f7dff); box-shadow: 0 0 0 1rem rgba(0, 103, 255, .08); opacity: 0; transform: scale(.3); transition: opacity .5s ease, transform .7s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.stateCate { margin: 0 0 2.5rem; color: var(--main-color, #0f7dff); font-size: 1.6rem; font-weight: 800; letter-spacing: .02em; opacity: 0; transform: translateY(28px); transition: opacity .72s ease, transform .72s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.stateTit { margin: 0; color: #0b101a; font-size: clamp(3rem, 4.2vw, 5.4rem); font-weight: 800; letter-spacing: -.045em; line-height: 1.08; opacity: 0; transform: translateY(34px); transition: opacity .82s ease, transform .82s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.stateSec.isAni .stateDot { opacity: 1; transform: scale(1); }
.stateSec.isAni .stateCate { opacity: 1; transform: translateY(0); transition-delay: .08s; }
.stateSec.isAni .stateTit { opacity: 1; transform: translateY(0); transition-delay: .16s; }
.stateGrid { position: relative; display: grid; grid-template-columns: minmax(0, 62rem) minmax(39rem, 47rem); align-items: center; justify-content: center; gap: clamp(4.2rem, 6vw, 9rem); }
.mapArea { position: relative; min-width: 0; opacity: 0; transform: translateY(48px) scale(.985); transition: opacity .9s ease, transform .9s var(--ease, cubic-bezier(.19, 1, .22, 1)); transition-delay: .28s; }
.stateSec.isAni .mapArea { opacity: 1; transform: translateY(0) scale(1); }
.mapBox { position: relative; width: min(56rem, 100%); aspect-ratio: 519.512 / 820.392; margin: 0 auto; border-radius: 4rem; isolation: isolate; --mx: 0px; --my: 0px; }
.mapBox::before {content: "";}


/* =============================================
   Map SVG
============================================= */
.mapSvg { display: block; width: 100%; height: 100%; overflow: visible; filter: drop-shadow(0 24px 28px rgba(6, 20, 90, .08)); }
.mapSvg #map-3 text,
.mapSvg #map-3 circle,
.mapSvg #map-3 > g > g[data-name="pin"] { opacity: 0 !important; pointer-events: none !important; }
.mapSvg [data-map-region] { cursor: pointer; outline: none; }
.mapSvg [data-map-region] path,
.mapSvg [data-map-region] text,
.mapSvg [data-map-region] circle { transition: fill .45s var(--ease, cubic-bezier(.19, 1, .22, 1)), opacity .45s ease, filter .45s ease; }
.mapSvg [data-map-region]:hover > path,
.mapSvg [data-map-region]:focus-visible > path { filter: drop-shadow(0 10px 12px rgba(0, 35, 177, .16)); }
.mapSvg [data-map-region]:focus-visible { outline: 0; }
.mapSvg [data-map-region]:focus-visible text { font-weight: 800; }
.mapSvg [data-map-region].on { filter: drop-shadow(0 18px 20px rgba(0, 35, 177, .22)); }
.mapSvg [data-map-region] text,
.mapSvg [data-map-region] circle { opacity: 0 !important; pointer-events: none; }
.mapSvg [data-map-region] [data-name="pin"] { opacity: 0 !important; pointer-events: none; }
.mapSvg [data-map-region] rect { fill: none !important; stroke: none !important; }


/* =============================================
   Location buttons
============================================= */
.locLayer { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
.locBtn { position: absolute; left: var(--x); top: var(--y); z-index: 2; display: inline-flex; align-items: center; gap: .7rem; min-height: 3.4rem; padding: .5rem .9rem .5rem .55rem; border: 0; border-radius: 99rem; background: transparent; color: #8793b2; font-size: clamp(1.35rem, 1.05vw, 1.8rem); font-weight: 800; letter-spacing: -.045em; line-height: 1; white-space: nowrap; cursor: pointer; transform: translate(-50%, -50%); transition: color .3s ease, transform .34s var(--ease, cubic-bezier(.19, 1, .22, 1)), filter .34s ease; pointer-events: auto; isolation: isolate; }
.locDot { position: relative; display: block; flex: 0 0 auto; width: 1rem; height: 1rem; border-radius: 50%; background: #909aba; box-shadow: 0 0 0 .45rem rgba(144, 154, 186, .12); transition: background .3s ease, box-shadow .34s ease, transform .34s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.locName {position: relative;text-shadow: 0 .1rem 0 rgba(255, 255, 255, .86);}
.isActive .locName{color:#fff;text-shadow: .1rem .1rem .1rem rgb(0 0 0 / 86%);}
.locBtn:hover,
.locBtn:focus-visible,
.locBtn.isActive { z-index: 10; color: var(--main-color, #0f7dff); filter: drop-shadow(0 1.4rem 1.8rem rgba(0, 65, 180, .16)); transform: translate(-50%, -50%) scale(1.06); }
.locBtn:hover::before,
.locBtn:focus-visible::before,
.locBtn.isActive::before { opacity: 1; transform: scale(1); }
.locBtn:focus-visible { outline: 3px solid rgba(0, 103, 255, .25); outline-offset: .4rem; }
.locBtn:hover .locDot,
.locBtn:focus-visible .locDot,
.locBtn.isActive .locDot {background: #ffa600;box-shadow: 0 0 0 .65rem rgba(0, 103, 255, .15), 0 0 0 1.35rem rgba(0, 103, 255, .08);transform: scale(1.2);}
.locBtn.isActive .locDot::before,
.locBtn.isActive .locDot::after {content: "";position: absolute;left: 50%;top: 50%;width: 100%;height: 100%;border-radius: 50%;border: 1px solid rgb(255 255 255 / 55%);transform: translate(-50%, -50%) scale(.55);opacity: .8;pointer-events: none;}
.locBtn.isActive .locDot::before { animation: locPulse 1.8s ease-out infinite; }
.locBtn.isActive .locDot::after { animation: locPulse 1.8s ease-out infinite .55s; }


/* =============================================
   State card
============================================= */
.stateCard { position: relative; min-height: 38rem; padding: clamp(3.4rem, 4vw, 5.4rem); border-radius: 0 7rem 0 0; background: linear-gradient(135deg, var(--card, #071865), #07145f 58%, #021044 100%); color: #fff; box-shadow: 0 36px 80px rgba(4, 18, 82, .25); overflow: hidden; opacity: 0; transform: translateX(44px); transition: opacity .88s ease, transform .88s var(--ease, cubic-bezier(.19, 1, .22, 1)), background .45s ease; transition-delay: .38s; }
.stateSec.isAni .stateCard { opacity: 1; transform: translateX(0); }
.stateCard::before { content: ""; position: absolute; inset: -1px; border-radius: inherit; background: radial-gradient(circle at 18% 10%, rgba(255, 255, 255, .18), transparent 25rem); pointer-events: none; }
.cardOrb {position: absolute;right: -7rem;top: -7rem;width: 18rem;height: 18rem;border-radius: 50%;background: rgb(202 138 28);filter: blur(.4px);}
.stateDtl { position: relative; z-index: 1; }
.stateDtl[hidden] { display: none; }
.stateDtl.isActive { animation: dtlIn .52s var(--ease, cubic-bezier(.19, 1, .22, 1)) both; }
.dtlCate { margin: 0 0 1.4rem; color: rgba(255, 255, 255, .72); font-size: 1.4rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.dtlTit { margin: 0 0 3.2rem; font-size: clamp(3.2rem, 3.4vw, 5.2rem); font-weight: 900; letter-spacing: -.04em; line-height: 1.05; }
.statGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.2rem; margin-bottom: 3rem; }
.statItem span { display: block; margin-bottom: 1.3rem; color: #fff; font-size: 2rem; font-weight: 800; letter-spacing: -.03em; }
.statItem strong {display: flex;align-items: flex-end;gap: .5rem;color: #fff;font-size: clamp(4rem, 5vw, 6.4rem);line-height: .9;}
.statItem em { font-style: normal; font-size: 1.8rem; font-weight: 800; line-height: 1.1; }
.rateBar { position: relative; height: .8rem; margin-top: 3.4rem; border-radius: 99rem; background: rgba(255, 255, 255, .13); overflow: hidden; }
.rateBar span { display: block; width: var(--rate); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #5cc7ff, #fff); box-shadow: 0 0 22px rgba(255, 255, 255, .42); transform-origin: left center; animation: rateIn .8s var(--ease, cubic-bezier(.19, 1, .22, 1)) both .08s; }

@keyframes locPulse { 0% { transform: translate(-50%, -50%) scale(.55); opacity: .8; } 100% { transform: translate(-50%, -50%) scale(4.2); opacity: 0; } }
@keyframes dtlIn { 0% { opacity: 0; transform: translateY(18px); } 100% { opacity: 1; transform: translateY(0); } }
@keyframes rateIn { 0% { transform: scaleX(0); } 100% { transform: scaleX(1); } }


/* =============================================
   Responsive
============================================= */
@media (max-width: 1100px) {
	.stateGrid { grid-template-columns: 1fr; gap: 3.6rem; }
	.stateCard { width: min(66rem, 100%); margin: 0 auto; border-radius: 3.6rem; }
}

@media (max-width: 768px) {
	.companySupportCon h3 { font-size: 3.2rem; }
	.companySupportStat { grid-template-columns: 8rem minmax(0, 1fr);}
	.companySupportStat strong { font-size: 6rem; }
	.companySupportStat span {font-size: 1.8rem;}
	.stateSec { padding: 7rem 1.8rem; }
	.mapBox { width: 100%; }
	.locBtn { font-size: 1.35rem; padding: .3rem .4rem; gap: .45rem; }
	.locDot { width: .78rem; height: .78rem; }
	.locBtn.isActive .locDot { width: 1.3rem; height: 1.3rem; }
	.stateCard { min-height: auto; padding: 3rem 2.4rem; border-radius: 2.8rem; }
	.statGrid { gap: 1.4rem; }
	.statItem span { font-size: 1.6rem; }
}

@media (max-width: 640px) {
	.companiesVisPar .imgBox {height: 300px;}
	.companySupportStatSub {margin-left: 0;}
	.statItem{display: flex;align-items: center;gap: 2em;}
	.statItem span {margin-bottom: 0;}
}

@media (prefers-reduced-motion: reduce) {
	.companiesPage *,
	.companiesPage *::before,
	.companiesPage *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
	.stateDot,
	.stateCate,
	.stateTit,
	.mapArea,
	.stateCard { opacity: 1 !important; transform: none !important; }
}

/* =============================================
   Organization Page
============================================= */
.organizationPage {position: relative;isolation: isolate;padding: clamp(30px, 7vw, 50px) 0 clamp(30px, 9vw, 50px);overflow: hidden;background: #fff;color: #0b1220;}
.organizationPage *, .organizationPage *::before, .organizationPage *::after { box-sizing: border-box; }
.organizationPage a { color: inherit; text-decoration: none; }
.organizationPage ul, .organizationPage ol { margin: 0; padding: 0; list-style: none; }
.organizationPage button { font: inherit; }

.orgIn { width: min(1520px, calc(100% - 48px)); margin: 0 auto; }

.orgChart { position: relative; max-width: 1180px; margin: 0 auto; }
.topNode, .midNode { display: flex; justify-content: center; position: relative; z-index: 3; }
.chiefArea { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 440px) minmax(0, 1fr); align-items: center; gap: 26px; z-index: 3; }
.chiefArea .topNode { grid-column: 2; }
.comNode {grid-column: 3;justify-self: start;position: relative;z-index: 3;position: absolute;top: 110px;}
.comNode::before {content: "";position: absolute;z-index: -1;right: 100%;top: 50%;width: 247px;height: 1px;background: linear-gradient(90deg, rgba(112, 127, 164, .56), rgba(112, 127, 164, .28));transform: scaleX(0);transform-origin: right;transition: transform .82s var(--ease, cubic-bezier(.19, 1, .22, 1));}
.organizationPage.isAni .comNode::before { transform: scaleX(1); transition-delay: .58s; }

.lineTop { display: block; width: 1px; height: 44px; margin: 0 auto; background: linear-gradient(180deg, rgba(0, 107, 255, .65), rgba(123, 139, 178, .5)); transform: scaleY(0); transform-origin: top; transition: transform .9s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.lineMid { display: block; width: 1px; height: 38px; margin: 0 auto; background: linear-gradient(180deg, rgba(0, 107, 255, .55), rgba(123, 139, 178, .48)); transform: scaleY(0); transform-origin: top; transition: transform .9s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.organizationPage.isAni .lineTop { transform: scaleY(1); transition-delay: .32s; }
.organizationPage.isAni .lineMid { transform: scaleY(1); transition-delay: .54s; }

.subNode { display: flex; justify-content: center; position: relative; z-index: 3; }
.perCard, .teamHead { position: relative; overflow: hidden; isolation: isolate; }
.perCard::after, .teamHead::after { content: ""; position: absolute; left: var(--mx, 50%); top: var(--my, 50%); z-index: -1; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(255, 255, 255, .32), transparent 62%); opacity: 0; transform: translate(-50%, -50%) scale(.2); transition: opacity .42s ease, transform .42s var(--ease, cubic-bezier(.19, 1, .22, 1)); pointer-events: none; }
.perCard:hover::after, .teamHead:hover::after { opacity: 1; transform: translate(-50%, -50%) scale(1); }

.perCard {width: min(440px, 100%);padding: 34px clamp(28px, 3.4vw, 48px);border-radius: 0 0 36px 36px;background: linear-gradient(135deg, #092aa5 0%, #071d82 100%);color: #fff;text-align: center;}
.perMain {}
.perOp {width: min(290px, 100%);padding: 24px 70px;border: 1px solid rgba(214, 223, 244, .9);border-radius: 999px;background: rgba(255, 255, 255, .94);color: #071f77;backdrop-filter: blur(14px);}
.perMgr {width: min(470px, 100%);padding: 31px 42px;border: 1px solid rgba(215, 224, 248, .88);border-radius: 34px;background: rgba(255, 255, 255, .94);color: #071f77;}
.perDeco {position: absolute;right: 26px;top: 35px;width: 120px;opacity: .07;}
.perDeco img {width: 100%;height: auto;filter: brightness(0) invert(1);}
.perRank { margin: 0 0 4px; font-size: 15px; font-weight: 800; opacity: .85; }
.perName {margin: 0;color: inherit;font-size: clamp(24px, 2.5vw, 30px);font-weight: 700;letter-spacing: -.045em;line-height: 1.18;}
.perName span { margin-left: 7px; font-size: .55em; font-weight: 700; letter-spacing: -.02em; opacity: .76; }
.perOp .perRank { color: #5e6a81; opacity: 1; }
.perOp .perName {font-size: clamp(22px, 1.8vw, 24px);}
.perTel, .perMail { display: inline-flex; margin: 10px 8px 0; color: #5f6f9d; font-size: 15px; line-height: 1.3; }
.perTel:hover, .perMail:hover { color: var(--main-color, #0f7dff); text-decoration: underline; text-underline-offset: 4px; }

.teamWrap { position: relative; display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: clamp(28px, 4.6vw, 74px); margin-top: 78px; padding-top: 48px; }
.teamWrap::before { content: ""; position: absolute; left: calc((100% / 6)); right: calc((100% / 6)); top: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(112, 127, 164, .86), transparent); transform: scaleX(0); transform-origin: center; transition: transform .95s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.teamWrap::after { content: ""; position: absolute; left: 50%; top: -78px; width: 1px; height: 78px; background: linear-gradient(180deg, rgba(0, 107, 255, .52), rgba(112, 127, 164, .82)); transform: scaleY(0); transform-origin: top; transition: transform .85s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.organizationPage.isAni .teamWrap::before { transform: scaleX(1); transition-delay: .65s; }
.organizationPage.isAni .teamWrap::after { transform: scaleY(1); transition-delay: .48s; }
.teamBox { position: relative; min-width: 0; }
.teamBox::before { content: ""; position: absolute; left: 50.1%; top: -48px; width: 1px; height: 48px; background: rgba(112, 127, 164, .76); transform: scaleY(0); transform-origin: top; transition: transform .75s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.organizationPage.isAni .teamBox::before { transform: scaleY(1); transition-delay: .92s; }
.teamHead {display: flex;align-items: center;justify-content: center;gap: 14px;min-height: 86px;padding: 20px 24px;border-radius: 999px;background: linear-gradient(135deg, #0a2eaf, #071f78);color: #fff;}
.teamLeft .teamHead { background: linear-gradient(135deg, #10a8d2, #087eac); }
.teamMid .teamHead { background: linear-gradient(135deg, #19b89f, #0f8b78); }
.teamRight .teamHead { background: linear-gradient(135deg, #f5b17c, #ed9053); }
.teamIco {display: grid;place-items: center;width: 55px;height: 55px;flex: 0 0 55px;border-radius: 50%;background: rgba(255, 255, 255, .12);border: 1px solid rgba(255, 255, 255, .36);}
.teamIco svg {width: 28px;height: 28px;fill: currentColor;}
.teamTit {margin: 0;font-size: clamp(20px, 1.55vw, 25px);font-weight: 500;}

.workSec { margin-top: clamp(72px, 7vw, 116px); }
.workHead { margin-bottom: 24px; text-align: left; }
.workTit {margin: 0;color: #0b1220;font-size: clamp(30px, 3.1vw, 40px);font-weight: 700;letter-spacing: -.052em;line-height: 1.15;}
.tblScroll {background: #fff;overflow: hidden;}
.orgTbl { width: 100%; border-collapse: collapse; border-spacing: 0; background: #fff; font-size: 16px; }
.orgTbl caption { overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0 0 0 0); }
.orgTbl th, .orgTbl td {border: 1px solid #d1d7e1;padding: 20px 16px;text-align: center;vertical-align: middle;border-right: 0;position: relative;z-index: 1;}
.orgTbl thead th {/* border-color: #254e99; */background: #123274;color: #fff;font-size: 18px;font-weight: 500;}
.orgTbl tbody tr { opacity: 0; transform: translateY(18px); transition: opacity .58s ease, transform .68s var(--ease, cubic-bezier(.19, 1, .22, 1)); }
.orgTbl tbody tr:nth-child(even) td {}
.orgTbl a { color: #344054; }
.orgTbl a:hover { color: var(--main-color, #0f7dff); text-decoration: underline; text-underline-offset: 4px; }
.orgCell {background: hsl(216deg 100% 98.04% / 70%) !important;color: #14213d;font-weight: 800;line-height: 1.35;border-left: 0 !important;}
.nameCell { color: #111827; font-size: 17px; font-weight: 900; letter-spacing: -.035em; }
.jobCell { text-align: left !important; line-height: 1.55; }
.jobCell ul {display: grid;gap: 5px;padding-left: 16px;list-style: disc;}
.colOrg { width: 13%; }
.colName { width: 10%; }
.colRank { width: 13%; }
.colJob { width: 33%; }
.colTel { width: 15%; }
.colMail { width: 16%; }

.orgMobileList { display: none; }
.orgMobGroup {overflow: hidden;border: 1px solid #dfe7f4;border-radius: 20px;background: #fff;box-shadow: 0 14px 34px rgba(21, 38, 80, .08);}
.orgMobGroup + .orgMobGroup { margin-top: 16px; }
.orgMobGroupHead {display: flex;align-items: center;justify-content: space-between;gap: 15px;min-height: 68px;padding: 16px 18px;background: #123274;color: #fff;}
.orgMobGroupTit {min-width: 0;margin: 0;color: #fff;font-size: 18px;font-weight: 700;letter-spacing: -.035em;line-height: 1.35;}
.orgMobCount {flex: 0 0 auto;padding: 5px 9px;border: 1px solid rgba(255, 255, 255, .26);border-radius: 999px;background: rgba(255, 255, 255, .12);font-size: 12px;font-weight: 700;white-space: nowrap;}
.orgMobDuty {border-bottom: 1px solid #e8eef6;background: #f6f9fd;}
.orgMobDuty summary {display: flex;align-items: center;justify-content: space-between;gap: 12px;min-height: 52px;padding: 13px 18px;color: #26334a;font-size: 14px;font-weight: 800;cursor: pointer;list-style: none;}
.orgMobDuty summary::-webkit-details-marker { display: none; }
.orgMobDuty summary span {margin-left: auto;color: #718096;font-size: 12px;font-weight: 700;}
.orgMobDuty summary::after {content: "";width: 8px;height: 8px;flex: 0 0 8px;margin-left: 3px;border-right: 2px solid #68758a;border-bottom: 2px solid #68758a;transform: rotate(45deg) translateY(-2px);transition: transform .22s ease;}
.orgMobDuty[open] summary::after { transform: rotate(225deg) translate(-2px, -2px); }
.orgMobDuty summary:focus-visible {outline: 2px solid var(--main-color, #0f7dff);outline-offset: -2px;}
.orgMobDutyBody { padding: 0 18px 17px; }
.orgMobDutyBody ul {display: grid;gap: 6px;padding-left: 18px;color: #4d596b;font-size: 13px;line-height: 1.55;list-style: disc;}
.orgMobMembers { background: #fff; }
.orgMobMember {display: grid;grid-template-columns: minmax(98px, 118px) minmax(0, 1fr);gap: 14px;padding: 16px 18px;}
.orgMobMember + .orgMobMember { border-top: 1px solid #edf1f6; }
.orgMobPerson { min-width: 0; }
.orgMobPerson strong {display: block;color: #111827;font-size: 16px;font-weight: 900;letter-spacing: -.035em;line-height: 1.35;}
.orgMobPerson span {display: block;margin-top: 4px;color: #667085;font-size: 12px;font-weight: 700;line-height: 1.4;}
.orgMobContact {display: grid;gap: 7px;min-width: 0;}
.orgMobContact a {display: grid;grid-template-columns: 34px minmax(0, 1fr);align-items: center;gap: 8px;min-width: 0;color: #475467;font-size: 12px;font-weight: 650;line-height: 1.4;}
.orgMobContact a > span {display: inline-flex;align-items: center;justify-content: center;min-height: 25px;border-radius: 6px;background: #eef4fb;color: #36547d;font-size: 10px;font-weight: 800;}
.orgMobContact a:hover { color: var(--main-color, #0f7dff); }
.orgMobMail { overflow-wrap: anywhere; }

.organizationPage [data-motion], .organizationPage .teamHead { opacity: 0; transform: translateY(26px); filter: blur(8px); transition: opacity .78s ease, transform .82s var(--ease, cubic-bezier(.19, 1, .22, 1)), filter .82s ease; }
.organizationPage.isAni [data-motion], .organizationPage.isAni .teamHead { opacity: 1; transform: translateY(0); filter: blur(0); transition-delay: var(--d, 0ms); }
.organizationPage.isAni .teamHead { transition-delay: calc(var(--d, 0ms) + 160ms); }
.organizationPage.isAni .orgTbl tbody tr { opacity: 1; transform: translateY(0); transition-delay: var(--rowD, 0ms); }

/* =============================================
   Responsive
============================================= */
@media (max-width: 1180px) {
	.organizationPage{padding:0;}
	.orgIn { width: min(100% - 36px, 980px); }
	.chiefArea { grid-template-columns: 1fr; justify-items: center; gap: 18px; }
	.chiefArea .topNode, .comNode { grid-column: auto; justify-self: center;width: min(440px, 100%); }
	.comNode { position: relative; top: auto; left: auto; }
	.comNode::before { display: none; }
	.perOp, .perMgr { width: min(470px, 100%); }
}

@media (max-width: 720px) {
	.teamWrap { grid-template-columns: 1fr; gap: 9px; padding-top: 0; margin-top: 20px; transition: none !important;}
	.teamWrap::before, .teamWrap::after, .teamBox::before { display: none; }
	.teamHead { justify-content: flex-start; border-radius: 18px; }
	.orgIn { width: min(100% - 28px, 640px); }
	.perCard { padding: 28px 24px; border-radius: 0 0 28px 28px;width: 77dvw; }
	.comNode { width: 77dvw;}
	.perMgr { border-radius: 26px; }
	.lineTop { height: 32px; }
	.workHead { text-align: left; }
	.tblScroll { display: none; }
	.orgMobileList { display: block; }
	.perMgr .perTel, .perMgr .perMail { display: flex; justify-content: center; margin: 8px 0 0; }
	.orgMobContact a {font-size: 16px;font-weight: 500;}
	.orgMobPerson strong {font-size: 18px;}
	.orgMobPerson span {font-size: 14px;}
	.orgMobDuty summary {font-size: 16px;}
	.orgMobDutyBody ul {font-size: 15px;}
}

@media (max-width: 390px) {
	.orgMobMember { grid-template-columns: 1fr; gap: 10px; }
	.orgMobPerson { display: flex; align-items: baseline; gap: 8px; }
	.orgMobPerson span { margin-top: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.organizationPage *, .organizationPage *::before, .organizationPage *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
	.organizationPage [data-motion], .organizationPage .teamHead, .orgTbl tbody tr { opacity: 1 !important; transform: none !important; filter: none !important; }
	.lineTop, .lineMid, .teamWrap::before, .teamWrap::after, .teamBox::before, .comNode::before { transform: none !important; }
}


/* =============================================
   Location Page
============================================= */
.locationPage { position: relative; overflow-x: clip; background: #fff; color: #111827; }

.locInfoSec {position: relative;padding: clamp(6rem, 7vw, 11rem) 0 0;background: #fff;overflow: hidden;}
.locInfoIn {position: relative;display: grid;grid-template-columns: minmax(0, 1.1fr) minmax(48rem, .9fr);align-items: center;width: min(176rem, 100%);margin: 0 auto;}

.locMapBox {position: relative;overflow: hidden;left: 1vw;z-index: 1;top: -13vh;}
.locMapBox img,
.locMapBox iframe { display: block; width: 100%; height: 100%; border: 0; object-fit: cover; }
.locMapBox img { object-position: center; }

.locInfoCard {position: relative;min-height: clamp(42rem, 36vw, 62rem);display: flex;align-items: center;overflow: hidden;border-radius: 0 8rem 0 0;background: linear-gradient(135deg, #123274 0%, #071763 100%);color: #fff;isolation: isolate;}
.locInfoCard::before { content: ""; position: absolute; inset: 0; z-index: 1; background: radial-gradient(circle at 78% 22%, rgba(255, 255, 255, .1), transparent 30rem), radial-gradient(circle at 50% 72%, rgba(255, 255, 255, .07), transparent 28rem); pointer-events: none; }
.locCardInner { position: relative; z-index: 3; width: 100%; padding: clamp(5rem, 5vw, 8rem) clamp(4.6rem, 6vw, 8.4rem); }

.locSymbol {position: absolute;right: clamp(-12rem, -5vw, -6rem);bottom: clamp(-10rem, -5vw, -5rem);z-index: 2;display: block;width: clamp(38rem, 34vw, 66rem);opacity: .05;pointer-events: none;}
.locSymbol img { display: block; width: 100%; height: auto; filter: brightness(0) invert(1); }

.locCardHead { padding-bottom: clamp(2.6rem, 2.6vw, 3.8rem); border-bottom: 1px solid rgba(255, 255, 255, .74); }
.locCardHead h3 {margin: 0;color: #fff;font-size: clamp(2.7rem, 2.5vw, 4.2rem);font-weight: 700;line-height: 1.4;}
.locCardHead h3 span,
.locCardHead h3 strong { display: block; font-weight: inherit; }

.locInfoList { display: grid; gap: clamp(2.4rem, 2.8vw, 3.8rem); padding: clamp(3rem, 3vw, 4.8rem) 0 clamp(3.2rem, 3vw, 4.8rem); border-bottom: 1px solid rgba(255, 255, 255, .74); }
.locInfoList dl { display: grid; grid-template-columns: 10rem minmax(0, 1fr); gap: clamp(2rem, 2vw, 3rem); margin: 0; }
.locInfoList dt {color: #fff;font-size: clamp(1.6rem, 1.1vw, 1.9rem);font-weight: 600;line-height: 1.7;}
.locInfoList dd {margin: 0;color: rgba(255, 255, 255, .96);font-size: clamp(1.6rem, 1.1vw, 1.9rem);font-weight: 400;line-height: 1.8;}
.locInfoList dd p { margin: 0; }
.locInfoList dd p + p { margin-top: .4rem; }
.locInfoList a { color: inherit; text-decoration: none; }
.locInfoList a:hover,
.locInfoList a:focus-visible { color: #9ed6ff; text-decoration: underline; text-underline-offset: .4rem; }

.locTraffic { padding-top: clamp(3rem, 3vw, 4.8rem); }
.locTraffic h4 {display: flex;align-items: center;gap: 1.4rem;margin: 0 0 clamp(2.2rem, 2vw, 3rem);color: #fff;font-size: clamp(2rem, 1.7vw, 2.8rem);font-weight: 500;line-height: 1.35;}
.locTrafficIcon {display: inline-flex;align-items: center;justify-content: center;flex: 0 0 auto;width: 3rem;height: 3rem;color: #fff;}
.locTrafficIcon svg { width: 100%; height: 100%; fill: currentColor; }
.locTraffic p {margin: 0;color: rgba(255, 255, 255, .92);font-size: clamp(1.6rem, 1.1vw, 1.9rem);font-weight: 500;line-height: 1.9;letter-spacing: -.025em;}
.locTraffic p + p { margin-top: .4rem; }


/* =============================================
   Responsive
============================================= */
@media (max-width: 1800px) {
	.locationPage {width: calc(100% - 6%);margin: 0 3%;}
	.locInfoSec {padding: 0;}
	.locMapBox{top:0;}
}

@media (max-width: 1480px) {
	.locInfoList dl {grid-template-columns: 1fr;gap: 1em;}
	.locTraffic p {display: inline;}
}

@media (max-width: 1024px) {
	.locInfoIn {grid-template-columns: 1fr; gap: 3rem; }
	.locMapBox {border-radius: 2.8rem; }
	.locInfoCard { min-height: auto; border-radius: 0 5rem 0 0; }
	.locInfoList dl {grid-template-columns: 10rem minmax(0, 1fr);}
}

@media (max-width: 768px) {
	.locMapBox { height: 34rem; border-radius: 2.2rem; }
	.locCardInner { padding: 4rem 3rem; }
	.locInfoCard { border-radius: 0 3.6rem 0 0; }
	.locInfoList dl { grid-template-columns: 1fr; gap: .8rem; }
	.locSymbol {width: 42rem; }
	.locInfoList dd p,
	.locInfoList a {font-size: 1.8rem;}
}

@media (max-width: 480px) {
	.locMapBox { height: 28rem; }
	.locCardInner { padding: 3.4rem 2.4rem; }
	.locCardHead h3 { font-size: 2.6rem; }
	.locTraffic h4 { font-size: 2rem; }
}

/* =============================================
   KOLAS Page
============================================= */
.kolasPage{position:relative;overflow-x:clip;background:#fff;color:#252525;}

.kolasIntroSec{position:relative;padding: clamp(7rem,8vw,13rem) var(--area-padding,4rem) clamp(8rem,10vw,18rem);background:#fff;}
.kolasIntroIn{width:min(160rem,100%);margin:0 auto;}
.kolasIntroHead{margin-bottom:clamp(6rem,6vw,9rem);}
.kolasIntroTit{margin:0;color:#333;font-size: clamp(6rem,6.2vw,8rem);font-weight: 700;line-height:1.14;}
.kolasIntroTit span{display:block;}

.kolasDefList{display:grid;gap:2.4rem;}
.kolasDefCard{display:grid;grid-template-columns:22rem minmax(30rem,.85fr) minmax(0,1.45fr);align-items:center;gap:clamp(3rem,4.2vw,7rem);padding: 2rem;border:1px solid #d9dee7;border-radius:3rem;background:#fff;transition:border-color .3s ease,box-shadow .35s ease,transform .35s var(--ease,cubic-bezier(.19,1,.22,1));}
.kolasDefCard:hover{}
.kolasDefImg{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(13rem,9vw,16rem);margin:0;border-radius:2rem;background:#f2f5f8;overflow:hidden;}
.kolasDefImg img{display:block;max-width:78%;max-height:82%;object-fit:contain;}
.kolasDefTitle h3{margin:0;color:#050505;font-size: clamp(2.4rem,1.5vw,3.2rem);font-weight: 700;line-height:1.35;letter-spacing:-.045em;word-break:keep-all;}
.kolasDefText{color:#666;font-size: clamp(1.6rem,1.08vw,1.8rem);font-weight:500;line-height:1.95;word-break:keep-all;}
.kolasDefText p{margin:0;}
.kolasDefText p + p{margin-top:.2rem;}

.kolasRoleList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem;margin:2.4rem 0 0;padding:0;list-style:none;}
.kolasRoleList li{min-width:0;}
.kolasRoleCard{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:2.4rem;padding: 3rem;border:1px solid #d9dee7;border-radius:2.4rem;background:#fff;overflow:hidden;transition:border-color .3s ease,box-shadow .35s ease,transform .35s var(--ease,cubic-bezier(.19,1,.22,1));}
.kolasRoleCard::before{content:"";position:absolute;right:-5rem;bottom:-5rem;width:16rem;height:16rem;border-radius:50%;background:rgba(15,125,255,.045);opacity:0;transform:scale(.65);transition:opacity .35s ease,transform .45s var(--ease,cubic-bezier(.19,1,.22,1));}
.kolasRoleCard:hover{border-color:rgba(15,125,255,.28);}
.kolasRoleCard:hover::before{opacity:1;transform:scale(1);}
.kolasRoleText{position:relative;z-index:2;min-width:0;}
.kolasRoleText h3{margin:0 0 2rem;color:#111;font-size: clamp(1.4rem,1.3vw,3.2rem);font-weight:800;line-height:1.2;}
.kolasRoleText p{margin:0;color:#747474;font-size: clamp(1.55rem,0.9vw,1.8rem);font-weight:500;line-height:1.75;word-break:keep-all;}
.kolasRoleIcon{position:relative;z-index:2;flex:0 0 auto;width:clamp(5.6rem,5vw,8.2rem);margin:0;}
.kolasRoleIcon img{display:block;width:100%;height:auto;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasIntroSec {width: calc(100% - 6%);margin: 0 auto;padding: 8em 0;}
}

@media (max-width:1380px){
	.kolasRoleText p br{display:none;}
	.kolasRoleCard{padding:3rem 2.6rem;min-height: 183px;}
}

@media (max-width:1280px){
	.kolasIntroIn{width:min(100%,128rem);}
	.kolasDefCard{grid-template-columns:18rem minmax(24rem,.8fr) minmax(0,1.35fr);gap:3rem;}
	.kolasRoleList{gap:1.8rem;}
}


@media (max-width:1100px){
	.kolasIntroSec{padding:5em 0;}
	.kolasIntroHead {margin-bottom: 3rem;}
	.kolasIntroTit{font-size:5.4rem;}
	.kolasDefCard{grid-template-columns:16rem minmax(0,1fr);gap:0 3rem;align-items: start}
	.kolasDefText{grid-column:2;margin-top: -5em;}
	.kolasRoleList{grid-template-columns:1fr;}
	.kolasRoleCard{min-height:auto;}
	.kolasRoleText h3 {color: #111;font-size: 2rem;}
}

@media (max-width:640px){
	.kolasIntroTit{font-size:4.2rem;}
	.kolasDefCard{grid-template-columns:1fr;gap: 2rem 0;}
	.kolasDefImg{width:15rem;height:11rem;border-radius:1.6rem;}
	.kolasDefText{grid-column: auto;font-size: 1.7rem;line-height: 1.5;margin-top: 0;}
	.kolasDefTitle h3{font-size:2.2rem;}
	.kolasRoleCard{flex-direction:column;padding:2.4rem;border-radius:2rem;}
	.kolasRoleText h3{margin-bottom:1.2rem;font-size:2.2rem;}
	.kolasRoleText p{font-size:1.7rem;}
	.kolasRoleIcon{width:5.8rem;}
}

/* =============================================
   KOLAS MRA
============================================= */
.kolasMraSec{position:relative;padding: clamp(9rem,9vw,15rem) 0 50rem;background: #f4f9ff;overflow:hidden;}
.kolasMraIn{width: min(160rem,100%);margin:0 auto;}
.kolasMraGrid{display:grid;grid-template-columns:minmax(0,1fr) 32rem;gap:clamp(6rem,7vw,11rem);align-items:start;}
.kolasMraText{min-width:0;}
.kolasMraBlock h2{margin:0;color:#050505;font-size: clamp(2.8rem,2vw,4.2rem);font-weight: 700;line-height:1.25;letter-spacing:-.05em;}
.kolasMraDesc{margin-top: clamp(4rem,3vw,6rem);color:#666;font-size: clamp(1.7rem,1vw,2rem);font-weight:500;line-height:1.95;letter-spacing:-.03em;word-break:keep-all;}
.kolasMraDesc p{margin:0;}
.kolasMraDesc p + p{margin-top:clamp(2.6rem,2.6vw,4rem);}
.kolasLawBlock{margin-top: clamp(8rem,5vw,9rem);}
.kolasLawBlock h3{margin: 0 0 clamp(2rem,2vw,6rem);color:#050505;font-size:clamp(2.8rem,2.5vw,4rem);font-weight:800;line-height:1.25;letter-spacing:-.05em;}
.kolasLawGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(4rem,5vw,8rem);}
.kolasLawGrid ul{display:grid;gap: .5rem;margin:0;padding:0;list-style:none;}
.kolasLawGrid li{position:relative;padding-left:1.4rem;color:#666;font-size:clamp(1.5rem,1vw,1.8rem);font-weight:500;line-height:1.65;letter-spacing:-.03em;word-break:keep-all;}
.kolasLawGrid li::before{content:"-";position:absolute;left:0;top:0;color:#666;}
.kolasMraSide{display:grid;gap:clamp(5rem,5vw,7rem);align-content:start;justify-items:center;padding-top:clamp(1rem,2vw,3rem);}
.kolasMraLogo{margin:0;text-align:center;}
.kolasMraLogo img{display:block;width: min(24rem,100%);height:auto;margin:0 auto;}
.kolasMraLogo figcaption{margin-top:2.4rem;color:#050505;font-size:clamp(1.5rem,1vw,1.8rem);font-weight: 700;line-height:1.55;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasMraIn {width: calc(100% - 6%);margin: 0 auto;}
	.kolasMraSec {padding: 10rem 0 40rem;}
}

@media (max-width:1180px){
	.kolasMraGrid{grid-template-columns:minmax(0,1fr) 26rem;gap:5rem;}
	.kolasMraLogo img{width:19rem;}
}

@media (max-width:1024px){
	.kolasMraGrid{grid-template-columns:1fr;gap:6rem;}
	.kolasMraSide{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding-top:0;align-items: center;}
}

@media (max-width:768px){
	.kolasMraSec {padding: 7rem 0 40rem;}
	.kolasLawGrid{grid-template-columns:1fr;gap:1.4rem;}
}

@media (max-width:560px){
	.kolasMraBlock h2{font-size:2.8rem;}
	.kolasLawBlock{margin-top:6rem;}
	.kolasLawBlock h3{font-size:2.6rem;}
	.kolasMraDesc{font-size:1.7rem;line-height:1.8;}
	.kolasLawGrid li{font-size:1.7rem;}
	.kolasMraLogo img{width:16rem;}
}

/* =============================================
   KOLAS accept box
============================================= */
.kolasAcceptBox{position:relative;margin-top:clamp(6rem,6vw,9rem);padding:clamp(5rem,5vw,7rem) clamp(5rem,6vw,9rem);border:1px solid #d9e5f4;border-radius:3.2rem;background:#fff;overflow:hidden;}
.kolasAcceptBg{position:absolute;right: -11rem;top:50%;z-index:0;width: clamp(36rem,41vw,75rem);opacity:.05;transform: translateY(-25%);pointer-events:none;}
.kolasAcceptBg img{display:block;width:100%;height:auto;}
.kolasAcceptTop{position:relative;z-index:1;display:flex;align-items:center;justify-content: flex-start;gap: clamp(4rem,5vw,5rem);margin-bottom:clamp(6rem,6vw,8rem);}
.kolasAcceptTop p{margin:0;color:#222;font-size: clamp(1.8rem,1.2vw,2.2rem);font-weight:500;line-height:1.5;}
.kolasAcceptTop strong{display:block;color:var(--main-color,#0f7dff);font-size: clamp(2.8rem,2.5vw,3.8rem);font-weight:800;line-height:1.25;letter-spacing: -.025em;}
.kolasAcceptOrg{position:relative;z-index:1;display:flex;align-items:center;gap:clamp(4rem,5vw,7rem);}
.kolasAcceptOrg h3{margin:0;color:#050505;font-size: clamp(2.6rem,2.2vw,3rem);font-weight: 700;line-height:1.2;}
.kolasAcceptBtns{display:flex;align-items:center;gap: clamp(1.6rem,3vw,1.8rem);margin:0;padding:0;list-style:none;}
.kolasAcceptBtns li{margin:0;padding:0;}
.kolasAcceptBtns .kolasBtn{min-width: auto;font-size: clamp(1.7rem, 1.2vw, 2rem);font-weight: 600;color: #15305a;background: #f3f7ff;height: 6.5rem;padding: 0 3rem 0 0.2rem;}
.kolasAcceptBtns .kolasBtn .cmBicon{width: 5rem;height: 5rem;}
.kolasAcceptBtns .kolasBtn span:last-child{line-height:1;}
.kolasVisPar{margin-top: -30em;}

/* =============================================
   Responsive
============================================= */
@media (max-width:900px){
	.kolasAcceptBox{padding:4rem 3rem;border-radius:2.6rem;}
	.kolasAcceptTop{align-items:flex-start;flex-direction:column;gap:1.4rem;margin-bottom:4rem;}
	.kolasAcceptOrg{align-items:flex-start;flex-direction:column;gap:2.8rem;}
	.kolasAcceptBtns{flex-wrap:wrap;gap:1.6rem 2.4rem;}
}

@media (max-width:640px){
	.milacLogo{position: relative;top: -1em;}
}

@media (max-width:560px){
	.kolasAcceptBox{padding:3.4rem 2.4rem;border-radius:2.2rem;}
	.kolasAcceptTop strong{font-size:2.7rem;}
	.kolasAcceptBtns{gap:1.4rem;}
	.kolasAcceptBtns .kolasBtn{width:100%;justify-content:flex-start;}
	.kolasAcceptBg{right:-16rem;width:42rem;}
}

/* =============================================
   KOLAS certificate
============================================= */
.kolasCertSec{position:relative;padding:clamp(9rem,9vw,15rem) var(--area-padding,4rem);background:#fff;overflow:hidden;}
.kolasCertIn{width:min(160rem,100%);margin:0 auto;}
.kolasCertHead{text-align:center;margin-bottom:clamp(6rem,6vw,9rem);}
.kolasCertHead h2{margin:0;color:#050505;font-size: clamp(3.6rem,3.4vw,5rem);font-weight: 700;line-height:1.2;}
.kolasCertHead p{margin:clamp(3rem,3vw,4.4rem) auto 0;color:#666;font-size:clamp(1.7rem,1.15vw,2rem);font-weight:500;line-height:1.9;letter-spacing:-.03em;word-break:keep-all;}
.kolasCertFrame{padding:clamp(2.2rem,2.4vw,3rem);border:1px solid #d9dee7;border-radius:3rem;background:#fff;}
.kolasCertList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(2.4rem,2.8vw,3.8rem);margin:0;padding:0;list-style:none;}
.kolasCertList li{min-width:0;}
.kolasCertCard{display:flex;align-items:center;justify-content:center;height:clamp(42rem,34vw,58rem);margin:0;padding:clamp(3rem,3vw,4.6rem);border-radius:2.4rem;background:#f2f5f8;overflow:hidden;transition:transform .35s var(--ease,cubic-bezier(.19,1,.22,1)),box-shadow .35s ease;}
.kolasCertCard:hover{}
.kolasCertCard img{display:block;width:auto;max-width:100%;height:100%;object-fit:contain;}
.scopeRed{color:#f00;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasCertSec {width: calc(100% - 6%);margin: 0 auto;padding: clamp(9rem, 9vw, 15rem) 0;}
}

@media (max-width:1180px){
	.kolasCertList{gap:2rem;}
	.kolasCertCard{height:42rem;padding:2.8rem;}
}

@media (max-width:900px){
	.kolasCertSec{padding:8rem 0;}
	.kolasCertHead p br{display:none;}
}

@media (max-width:768px){
	.kolasCertList{grid-template-columns:1fr;gap:2rem;}
	.kolasCertCard{height:auto;min-height:38rem;}
	.kolasCertCard img{height:auto;max-height:52rem;}
}

@media (max-width:560px){
	.kolasCertHead p{line-height:1.75;}
	.kolasCertFrame{padding:1.4rem;border-radius:2.2rem;}
	.kolasCertCard{min-height:30rem;padding:2rem;border-radius:1.8rem;}
}

/* =============================================
   KOLAS scope
============================================= */
.kolasScopeSec{position:relative;background:#fff;overflow:hidden;}
.kolasScopeIn{width:min(150rem,100%);margin:0 auto;}
.kolasScopeHead{text-align:center;margin-bottom: 5rem;}
.kolasScopeHead h2{margin:0;color:#050505;font-size: clamp(3.8rem,3.4vw,5rem);font-weight: 700;line-height:1.2;}
.kolasScopeHead p{margin:1.6rem 0 0;color:#777;font-size:1.6rem;font-weight:600;}
.kolasScopeTableWrap{overflow:hidden;border-top:2px solid #003b91;border-bottom:1px solid #d6d6d6;}
.kolasScopeTable{width:100%;border-collapse:collapse;border-spacing:0;table-layout:fixed;font-size: clamp(1.5rem,0.9vw,1.8rem);}
.kolasScopeTable caption{overflow:hidden;position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);}
.kolasScopeTable thead th{padding:2.3rem 1.6rem;border-bottom:1px solid #d6d6d6;color:#003b91;font-size:clamp(1.6rem,1.1vw,2rem);font-weight:800;text-align:center;line-height:1.4;}
.kolasScopeTable tbody th,.kolasScopeTable tbody td{font-size: 1.65rem;padding: 1.6rem 1.2rem;border-bottom:1px solid #d6d6d6;border-left:1px solid #d6d6d6;color:#222;font-weight: 400;text-align:center;vertical-align:middle;line-height:1.65;word-break:keep-all;}
.kolasScopeTable tbody th{border-left:0;font-weight:600;}
.kolasScopeTable tbody th span{display:block;margin-top:.8rem;color:#111;font-weight:500;}
.scopeColField{width:25%;}
.scopeColStandard{width:20%;}
.scopeColName{width:32%;}
.scopeColRange{width:23%;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasScopeSec{width: calc(100% - 6%);margin: 0 auto;}
}

@media (max-width:640px){
	.kolasScopeTableWrap{overflow-x:auto;border-bottom:0;}
	.kolasScopeTable{min-width:60rem;}
	.kolasScopeTable tbody th, 
	.kolasScopeTable tbody td {font-size: 1.5rem;padding: 1rem; line-height: 1.5;}
	.scopeColRange {width: 37%;}
}

@media (max-width:560px){
	.kolasScopeHead h2{font-size:3.2rem;}
	.kolasScopeHead p{font-size:1.4rem;}
	.kolasScopeTable{font-size:1.4rem;}
	.kolasScopeTable thead th{padding:1.8rem 1.2rem;}
	.kolasScopeTable tbody th,
	.kolasScopeTable tbody td{padding:2rem 1.4rem;}
}

/* =============================================
   KOLAS agency
============================================= */
.kolasAgencySec{position:relative;padding: clamp(7rem,7vw,11rem) var(--area-padding,4rem);background:#fff;overflow:hidden;}
.kolasAgencyIn{width:min(150rem,100%);margin:0 auto;}
.kolasAgencyHead{margin-bottom: 5rem;}
.kolasAgencyHead h2{margin:0;color:#050505;font-size: clamp(3.8rem,3.4vw,5rem);font-weight: 700;line-height:1.2;}

/* support box */
.kolasSupportBox{display:grid;grid-template-columns:14rem 18rem minmax(0,1fr);align-items:center;gap:clamp(3rem,4vw,6rem);padding: 2rem;border:1px solid #d9dee7;border-radius:3rem;background:#fff;}
.kolasSupportIcon{display:flex;align-items:center;justify-content:center;width:100%;height:clamp(10rem,8vw,14rem);margin:0;border-radius:2rem;background:#f2f6fa;}
.kolasSupportIcon img{display:block;width:clamp(5.6rem,5vw,8rem);height:auto;}
.kolasSupportBox h3{margin:0;color:#050505;font-size: clamp(2.4rem,1.8vw,2.8rem);font-weight: 700;line-height:1.3;}
.kolasSupportText{color:#666;font-size:clamp(1.55rem,1.05vw,1.8rem);font-weight:500;line-height:1.85;letter-spacing:-.03em;word-break:keep-all;}
.kolasSupportText p{margin:0;}
.kolasSupportText p + p{margin-top:.8rem;}

/* agency list */
.kolasAgencyList{display:grid;gap: 5rem;margin-top:clamp(6rem,7vw,10rem);}
.kolasAgencyItem{position:relative;display:grid;grid-template-columns:minmax(36rem,.9fr) minmax(0,1.1fr);align-items:center;gap: 5rem;}
.kolasAgencyItem.kolasAgencyKr{grid-template-columns:minmax(0,1.05fr) minmax(36rem,.95fr);}
.kolasAgencyImg{display:flex;align-items:center;justify-content:center;margin:0;padding:clamp(4rem,4vw,6rem);border-radius:2.6rem;background:#f2f5f8;}
.kolasAgencyImg img{display:block;width:auto;max-width:100%;/* max-height: clamp(50rem,40vw,86rem); */object-fit:contain;}
.kolasAgencyText{position:relative;z-index:2;min-width:0;}
.kolasAgencyText h3{margin:0 0 clamp(5rem,5vw,7rem);color:#050505;font-size: clamp(4rem,4vw,5rem);font-weight: 700;line-height:1.08;position: relative;left: -11rem;}
.kolasAgencyText ul{display:grid;gap:clamp(1.6rem,1.6vw,2.4rem);margin:0;padding:0;list-style:none;}
.kolasAgencyText li{position:relative;padding-left:1.6rem;color:#666;font-size: clamp(1.6rem,0.95vw,1.95rem);font-weight:500;line-height:1.9;word-break:keep-all;}
.kolasAgencyText li::before{content:"-";position:absolute;left:0;top:0;color:#666;}
.kolasAgencyKr .kolasAgencyText{text-align:left;}
.kolasAgencyKr .kolasAgencyText h3{text-align: right;left: 13rem;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasAgencySec{width: calc(100% - 6%);margin: 0 auto;padding: 7rem 0;}
}
@media (max-width:1180px){
	.kolasSupportBox{grid-template-columns:12rem 14rem minmax(0,1fr);gap:3rem;}
	.kolasAgencyItem,.kolasAgencyItem.kolasAgencyKr{grid-template-columns:1fr;gap:4rem;}
	.kolasAgencyKr .kolasAgencyImg{order:1;}
	.kolasAgencyKr .kolasAgencyText{order:2;}
	.kolasAgencyKr .kolasAgencyText h3{text-align:left;}
	.kolasAgencyText h3 {left: 0;}
}

@media (max-width:900px){
	.kolasSupportBox{grid-template-columns: 15rem 10rem minmax(0, 1fr);gap:2.2rem;}
	.kolasSupportIcon{width:14rem;height:11rem;}
	.kolasAgencyList{gap:8rem;}
	.kolasAgencyText h3{font-size:4rem;}
	.kolasAgencyImg{padding:3rem;}
}

@media (max-width:640px){
	.kolasSupportBox{grid-template-columns:1fr;}
	.kolasSupportText {font-size: 1.7rem;font-weight: 400;line-height: 1.5;letter-spacing: 0;}
}

@media (max-width:560px){
	.kolasAgencyHead h2{font-size:3.2rem;}
	.kolasSupportBox{padding:2.4rem;border-radius:2.2rem;}
	.kolasAgencyText h3{margin-bottom:3rem;font-size:3.2rem;}
	.kolasAgencyImg{padding:2rem;border-radius:2rem;}
	.kolasAgencyText li{font-size:1.7rem;}
}

/* =============================================
   KOLAS global support
============================================= */
.kolasGlobalSec{position:relative;background:#fff;overflow:hidden;}
.kolasGlobalIn{width:min(150rem,100%);margin:0 auto;}
.kolasGlobalHead{text-align:center;margin-bottom:clamp(6rem,6vw,9rem);}
.kolasGlobalHead h2{margin:0;color:#050505;font-size: clamp(3.8rem,3.4vw,5rem);font-weight: 700;line-height:1.2;letter-spacing:-.055em;}

/* info box */
.kolasGlobalInfo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(3rem,4vw,6rem);padding:clamp(4rem,4vw,6rem);border:1px solid #d9dee7;border-radius:3rem;background:#fff;}
.kolasGlobalInfo article{min-width:0;}
.kolasGlobalInfo h3{margin:0 0 clamp(2.2rem,2vw,3rem);color:#050505;font-size: clamp(2.2rem,1.8vw,2.5rem);font-weight: 700;line-height:1.25;letter-spacing:-.045em;}
.kolasGlobalInfo p{margin:0;color:#666;font-size:clamp(1.6rem,1.05vw,1.85rem);font-weight:500;line-height:1.8;letter-spacing:-.03em;word-break:keep-all;}
.kolasGlobalInfo p span{display:inline-flex;align-items:center;margin-right:2.4rem;white-space:nowrap;}
.kolasGlobalTit{display: flex;flex-direction: row;gap: 1.5em;}
.kolasGlobalTitIcon{width: 25px;margin-top: 0.3em;}
.kolasGlobalTitIcon img{filter: brightness(0) saturate(100%) invert(37%) sepia(93%) saturate(2635%) hue-rotate(198deg) brightness(101%) contrast(104%);}

/* logo section */
.kolasLogoSec{margin-top:clamp(8rem,8vw,12rem);}
.kolasLogoSec h3{margin:0 0 clamp(4rem,4vw,6rem);color:#050505;font-size: clamp(2.8rem,2.5vw,3.2rem);font-weight: 700;line-height:1.25;letter-spacing:-.05em;}
.kolasLogoList{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(2rem,2vw,3rem);margin:0;padding:0;list-style:none;}
.kolasLogoList li{min-width:0;}
.kolasLogoList a{display:flex;align-items:center;justify-content:center;padding: 2rem;border:1px solid #d9dee7;border-radius:1.4rem;background:#fff;transition:border-color .3s ease,box-shadow .35s ease,transform .35s var(--ease,cubic-bezier(.19,1,.22,1));}
.kolasLogoList a:hover,.kolasLogoList a:focus-visible{border-color:rgba(15,125,255,.28);transform:translateY(-4px);}
.kolasLogoList img{display:block;width:auto;height:auto;object-fit:contain;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.kolasGlobalSec{width: calc(100% - 6%);margin: 0 auto;}
}

@media (max-width:1180px){
	.kolasGlobalInfo{gap:3rem;padding:4rem 3rem;}
	.kolasLogoList{grid-template-columns:repeat(4,minmax(0,1fr));}
	.kolasGlobalInfo{display: flex;flex-wrap: wrap;justify-content: space-between;}
	.kolasLogoList{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem;}
	.kolasLogoList a{height:12rem;}
}

@media (max-width:560px){
	.kolasGlobalHead h2{font-size:3.2rem;text-align: left;}
	.kolasGlobalInfo h3{font-size:2.2rem;}
	.kolasGlobalInfo p{font-size:1.7rem;line-height:1.75;}
	.kolasGlobalInfo p span{display:flex;margin-right:0;}
	.kolasLogoSec h3{font-size:2.5rem;}
	.kolasLogoList{grid-template-columns:1fr;}
}


/* =============================================
   Equipment Page List
============================================= */
.equipmentPage{position:relative;overflow-x:clip;background:#fff;color:#222;}
.equipmentListSec{position:relative;padding: 3rem 0 0;background:#fff;margin-top: 10em;}
.equipmentListIn{width:min(150rem,100%);margin:0 auto;}
.equipmentListGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap: clamp(2.4rem,2.6vw,3.6rem);margin:0;padding:0;list-style:none;align-items: start;}
.equipmentListGrid li{min-width:0;}
.equipmentListCard{position:relative;display:block;width:100%;height:100%;min-height:100%;padding:0;border:0;background:#fff;color:#222;text-align:left;cursor:pointer;overflow:hidden;transition:transform .35s var(--ease,cubic-bezier(.19,1,.22,1)),box-shadow .35s ease;}
.equipmentListCard::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;transition:border-color .3s ease;}
.equipmentListCard figure{position:relative;margin:0;/* aspect-ratio:3/4; */overflow:hidden;background:#f2f5f8;border-radius: 2em;}
.equipmentListCard figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.18));opacity:.35;transition:opacity .35s ease;}
.equipmentListCard img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.035);transition:transform 1.2s var(--ease,cubic-bezier(.19,1,.22,1));}
.equipmentListTxt{padding: 2.2rem 0 2.4rem;text-align: center;}
.equipmentListTxt span{display:inline-flex;align-items:center;justify-content:center;width:4.2rem;height:2.6rem;border-radius:999px;background:#0b2d82;color:#fff;font-size:1.3rem;font-weight:900;line-height:1;}
.equipmentListTxt h2{margin:0;color:#111;font-size: clamp(1.7rem,1vw,2.1rem);font-weight: 600;line-height:1.35;word-break:keep-all;}
.equipmentListCard:hover,.equipmentListCard:focus-visible{}
.equipmentListCard:hover::before,.equipmentListCard:focus-visible::before{}
.equipmentListCard:hover img,.equipmentListCard:focus-visible img{transform:scale(1.08);}
.equipmentListCard:hover figure::after,.equipmentListCard:focus-visible figure::after{opacity:.12;}

/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.equipmentListIn {width: min(200rem, 100%);}
}

@media (max-width:1800px){
	.equipmentListIn{width: calc(100% - 6%);}
}

@media (max-width: 1180px) {
	.equipmentListGrid{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (max-width: 860px) {
	.equipmentListSec {margin-top: 5em;}
	.equipmentListGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;}
}

@media(max-width:768px){
	.cmBiconB{display:none;}
}

@media(max-width:560px){
	.equipmentListCard{border-radius:2rem;}
	.equipmentListTxt{padding:2rem 0 2.2rem;}
}


/* =============================================
   inquiryPage
============================================= */
.inquiryPage{position:relative;background:#fff;color:#111;overflow:visible;}
.inqInner{width:min(156rem,100%);margin:0 auto;padding: 15em 0 0;}
.inqLayout{display:grid;grid-template-columns:minmax(34rem,48rem) minmax(0,1fr);gap:clamp(6rem,7vw,12rem);align-items:start;overflow:visible;}
.inqSide{position:relative;min-width:0;align-self:stretch;}
.inqSideSticky{position:sticky;top:calc(var(--header-height,9rem) + 3rem);z-index:2;}
.inqSide h2{margin:0;color:#202020;font-size: clamp(3.8rem,3.3vw,4.5rem);font-weight:800;line-height: 1.35;word-break:keep-all;}
.inqSide h2::after{content:"";display:block;width:6rem;height:.5rem;margin:3.2rem 0 0;border-radius:99rem;background:var(--main-color,#2fb3ff);}
.inqSide p{margin:3rem 0 0;color:#777;font-size: clamp(1.7rem,0.9vw,2rem);font-weight:500;line-height:1.8;letter-spacing:-.035em;word-break:keep-all;}
.inqSideInfo{display:grid;gap:1.2rem;margin-top:4rem;}
.inqSideInfo a{display:flex;align-items:center;gap:2rem;padding:1.7rem 0;color:#111;text-decoration:none;border-bottom:1px solid #e7eaf0;}
.inqSideInfo span{flex:0 0 11rem;color:#111;font-size:1.6rem;font-weight:900;}
.inqSideInfo strong{color: #5f5f5f;font-size:1.9rem;font-weight: 500;word-break:break-all;}
.inqSideInfo a:hover strong{color:var(--main-color,#2fb3ff);}
.inqQrCard{display:grid;grid-template-columns:minmax(0,1fr) 12rem;gap:2rem;align-items:center;margin-top:3rem;padding:2.6rem;border-radius:2.4rem;background:#001b72;color:#fff;}
.inqQrCard strong{display:block;color:#fff;font-size:1.7rem;font-weight: 600;letter-spacing:-.04em;}
.inqQrCard p{margin:1rem 0 0;color:rgba(255,255,255,.72);font-size:1.45rem;line-height:1.65;}
.inqQrCard figure{margin:0;padding:1.2rem;border-radius:1.2rem;background:#fff;}
.inqQrCard img{display:block;width:100%;height:auto;object-fit:contain;}
.inqFormArea{min-width:0;}
.inqForm fieldset{margin:0;padding:0;border:0;}
.inqTypeBox{margin-bottom:2.4rem;}
.inqFormLabel{display:block;margin-bottom:1.4rem;color:#111;font-size:1.7rem;font-weight:900;letter-spacing:-.04em;}
.inqFormLabel em,.inqField em{color:var(--main-color,#2fb3ff);font-style:normal;}
.inqTypeList{display:flex;flex-wrap:wrap;gap:1rem 2.8rem;}
.inqTypeList label{display:inline-flex;align-items:center;gap:.9rem;color:#222;font-size:1.7rem;font-weight:700;letter-spacing:-.035em;cursor:pointer;}
.inqTypeList input,.inqAgree input{appearance:none;width:1.8rem;height:1.8rem;border:1px solid #cbd1db;border-radius:.2rem;background:#fff;transition:border-color .2s ease,background .2s ease;}
.inqTypeList input:checked,.inqAgree input:checked{border-color:var(--main-color,#2fb3ff);background:var(--main-color,#2fb3ff);}
.inqTypeList input:checked::after,.inqAgree input:checked::after{content:"";display:block;width:.9rem;height:.5rem;margin:.42rem auto 0;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);}
.inqFormGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2rem 2.2rem;}
.inqField{grid-column:span 2;min-width:0;}
.inqField.inqHalf{grid-column:span 3;}
.inqField.inqFull{grid-column:1 / -1;}
.inqField label{display:block;margin-bottom:1rem;color:#111;font-size:1.65rem;font-weight:900;letter-spacing:-.04em;}
.inqField input,.inqField textarea{display:block;width:100%;border:1px solid #dfe3ea;border-radius: 1rem;background:#fff;color:#111;font-family:inherit;font-size:1.6rem;font-weight:500;letter-spacing:-.03em;outline:none;transition:border-color .25s ease,box-shadow .25s ease;}
.inqField input{height:6.6rem;padding:0 2rem;}
.inqField textarea{height:22rem;padding:2rem;line-height:1.7;resize:vertical;}
.inqField input::placeholder,.inqField textarea::placeholder{color:#9aa1ad;}
.inqField input:focus,.inqField textarea:focus{border-color:var(--main-color,#2fb3ff);box-shadow:0 0 0 .4rem rgba(47,179,255,.1);}
.inqFileBox{display:grid;grid-template-columns:12rem minmax(0,1fr);align-items:center;margin-top:2.8rem;padding-bottom:2.2rem;border-bottom:1px solid #dfe3ea;}
.inqFileBox strong{color:#111;font-size:1.65rem;font-weight:900;letter-spacing:-.04em;}
.inqFileBox > div{display:flex;align-items:center;gap:1.6rem;min-width:0;}
.inqFileBtn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;height:4.8rem;padding:0 2.2rem;border-radius:.8rem;background:#001b72;color:#fff;font-size:1.5rem;font-weight:900;letter-spacing:-.035em;cursor:pointer;}
.inqFileBtn:hover{background:var(--main-color,#2fb3ff);}
.inqFileInput{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;}
.inqFileName{min-width:0;color:#777;font-size:1.5rem;font-weight:500;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.inqAgreeArea{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:3.2rem;}
.inqAgree{display:inline-flex;align-items:center;gap:1rem;color:#606773;font-size:1.6rem;font-weight:500;letter-spacing:-.035em;cursor:pointer;}
.inqPrivacyOpen{padding:0;border:0;background:none;color:#111;font-size:1.6rem;font-weight:900;letter-spacing:-.035em;text-decoration:underline;text-underline-offset:.3rem;cursor:pointer;}
.inqPrivacyOpen:hover{color:var(--main-color,#2fb3ff);}
.inqSubmitArea{display:flex;justify-content:flex-end;margin-top:3rem;}
.inqSubmit{height:7.2rem;background: #123274;padding: 1em 3em 1em 0;font-size:1.7rem;font-weight: 800;cursor:pointer;transition:background .25s ease,transform .3s var(--ease,cubic-bezier(.19,1,.22,1)),box-shadow .3s ease;}
.inqSubmit span{margin-left: 1em;}

.inqPrivacyModal{width:min(104rem,calc(100% - 4rem));max-width:none;padding:0;border:0;background:transparent;overflow:visible;}
.inqPrivacyModal::backdrop{background:rgba(0,0,0,.68);}
.inqPrivacyBox{position:relative;display:flex;flex-direction:column;max-height:calc(100dvh - 9rem);background:#fff;box-shadow:0 3rem 9rem rgba(0,0,0,.3);overflow:hidden;}
.inqPrivacyClose{position:absolute;right:2.8rem;top:2.8rem;width:4.8rem;height:4.8rem;border:0;background:transparent;cursor:pointer;z-index:10;}
.inqPrivacyClose::before,.inqPrivacyClose::after{content:"";position:absolute;left:50%;top:50%;width:3.4rem;height:1px;background:#999;transform-origin:center;transition:background .2s ease;}
.inqPrivacyClose::before{transform:translate(-50%,-50%) rotate(45deg);}
.inqPrivacyClose::after{transform:translate(-50%,-50%) rotate(-45deg);}
.inqPrivacyClose:hover::before,.inqPrivacyClose:hover::after{background:#111;}
.inqPrivacyHead{padding:5rem 8rem 2.8rem;border-bottom:1px solid #edf0f4;background:#fff;}
.inqPrivacyHead p{margin:0 0 1rem;color:var(--main-color,#2fb3ff);font-size:1.4rem;font-weight:900;letter-spacing:.14em;}
.inqPrivacyHead h3{margin:0;color:#111;font-size:3.2rem;font-weight:900;line-height:1.25;letter-spacing:-.05em;}
.inqPrivacyBody{padding:4rem 8rem;overflow-y:auto;color:#222;font-size:1.62rem;font-weight:500;line-height:1.9;letter-spacing:-.035em;word-break:keep-all;}
.inqPrivacyBody::-webkit-scrollbar{width:.8rem;}
.inqPrivacyBody::-webkit-scrollbar-track{background:#f1f3f6;}
.inqPrivacyBody::-webkit-scrollbar-thumb{border-radius:99rem;background:#b6beca;}
.inqPolicyIntro{padding:2.6rem 3rem;border-radius:1.8rem;background:#f6f8fb;}
.inqPolicyIntro p{margin:0;color:#333;}
.inqPolicyIntro p + p{margin-top:1.2rem;}
.inqPolicyDate{font-weight:800;color:#111!important;}
.inqPolicySec{margin-top:3.8rem;}
.inqPolicySec h4{margin:0 0 1.4rem;color:#111;font-size:2rem;font-weight:900;line-height:1.35;letter-spacing:-.045em;}
.inqPolicySec h5{margin:2.2rem 0 1rem;color:#001b72;font-size:1.65rem;font-weight:900;letter-spacing:-.04em;}
.inqPolicySec p{margin:0;color:#333;}
.inqPolicySec p + p{margin-top:1rem;}
.inqPolicySec ul,.inqPolicySec ol{margin:1.2rem 0 0;padding:0;list-style:none;}
.inqPolicySec li{position:relative;margin:.6rem 0;padding-left:1.6rem;color:#333;}
.inqPolicySec ul li::before{content:"";position:absolute;left:0;top:1.25rem;width:.45rem;height:.45rem;border-radius:50%;background:#111;}
.inqPolicySec ol{counter-reset:policyNum;}
.inqPolicySec ol li{counter-increment:policyNum;padding-left:2.4rem;}
.inqPolicySec ol li::before{content:counter(policyNum) ".";position:absolute;left:0;top:0;color:#111;font-weight:900;}
.inqPolicyInfo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.2rem;margin:1.8rem 0 2rem;}
.inqPolicyInfo dl{display:grid;grid-template-columns:15rem minmax(0,1fr);margin:0;padding:1.3rem 1.6rem;border:1px solid #e3e7ee;border-radius:1rem;background:#fff;}
.inqPolicyInfo dt{color:#111;font-size:1.45rem;font-weight:900;letter-spacing:-.035em;}
.inqPolicyInfo dd{margin:0;color:#555;font-size:1.45rem;font-weight:600;letter-spacing:-.03em;word-break:break-all;}
.inqPrivacyFoot{display:flex;justify-content:flex-end;padding:2.4rem 8rem;border-top:1px solid #edf0f4;background:#fff;}
.inqPrivacyConfirm{height:5.4rem;padding:0 3rem;border:0;border-radius:.9rem;background:#111;color:#fff;font-size:1.6rem;font-weight:900;letter-spacing:-.035em;cursor:pointer;transition:background .25s ease;}
.inqPrivacyConfirm:hover{background:var(--main-color,#2fb3ff);}
.inqPrivacyBox{display:flex;flex-direction:column;max-height:calc(100dvh - 9rem);overflow:hidden;border-radius: 5rem;}
.inqPrivacyBody{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
html.isPrivacyOpen,body.isPrivacyOpen{overflow:hidden;}
.inqPrivacyModal .sound_only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;border:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;}

/* =============================================
   Responsive
============================================= */
@media (min-width: 2100px) {
	.inqInner {width: min(1840px, 100%);}
	.inqLayout {grid-template-columns: minmax(34rem, 63rem) minmax(0, 1fr);}
}

@media (max-width: 1800px) {
	.inqInner {width: calc(100% - 6%);padding: 10em 0 0;}
}
@media (max-width:1180px){
	.inqLayout{grid-template-columns:36rem minmax(0,1fr);gap:5rem;}
}
@media (max-width:900px){
	.inqLayout{display:block;}
	.inqSideSticky{position:relative;top:auto;margin-bottom:5rem;}
	.inqSideInfo{grid-template-columns:repeat(3,minmax(0,1fr));}
	.inqSideInfo a{display:block;padding:1.6rem;border:1px solid #e7eaf0;border-radius:1.4rem;}
	.inqSideInfo span{display:block;margin-bottom:.8rem;}
}

@media (max-width:768px){
	.inqPrivacyModal{width:calc(100% - 2rem);}
	.inqPrivacyBox{max-height:calc(100dvh - 4rem);border-radius:8px;}
	.inqPrivacyHead{padding:3.8rem 2.4rem 2rem;}
	.inqPrivacyHead h3{font-size:2.5rem;}
	.inqPrivacyBody{padding:2.6rem 2.4rem;font-size:1.5rem;line-height:1.8;}
	.inqPolicyIntro{padding:2rem;}
	.inqPolicyInfo{grid-template-columns:1fr;}
	.inqPolicyInfo dl{grid-template-columns:1fr;gap:.5rem;}
	.inqPrivacyFoot{padding:2rem 2.4rem;}
	.inqPrivacyConfirm{width:100%;}
	.inqPrivacyClose{right:1.2rem;top:1.2rem;}
}

@media (max-width:640px){
	.inqInner {padding: 5em 0 0;}
	.inqFormGrid{display:block;}
	.inqField{margin-bottom:1.8rem;}
	.inqField input{height:6.2rem;border-radius:1.2rem;}
	.inqField textarea{height:18rem;border-radius:1.2rem;}
	.inqQrCard{grid-template-columns:1fr 10rem;}
	.inqFileBox{display:block;}
	.inqFileBox > div{display:block;margin-top:1.2rem;}
	.inqFileBtn{width:100%;}
	.inqFileName{display:block;margin-top:1.2rem;}
	.inqSideInfo {grid-template-columns: repeat(2, minmax(0, 1fr));}
}


/* =============================================
   processPage
============================================= */
.processPage{position:relative;background:#fff;color:#111;overflow:hidden;}
.processIn{position:relative;width:min(150rem,100%);margin:0 auto;padding: 13rem 0 0;}
.processIn .cmBtn{position: absolute;right: 0;z-index: 1;}
.processList{display:grid;gap:1.4rem;}
.processItem{display:grid;grid-template-columns:12rem 14rem 5rem minmax(18rem,24rem) minmax(0,1fr);align-items:center;gap:clamp(2rem,2.8vw,5rem);min-height:13rem;padding:1.4rem clamp(3rem,3vw,4.6rem) 1.4rem 1.4rem;border:1px solid #dfe3ea;border-radius:2rem;background:#fff;transition:border-color .3s ease,box-shadow .35s ease,transform .35s var(--ease,cubic-bezier(.19,1,.22,1));}
.processItem:hover{border-color:rgba(47,179,255,.35);box-shadow:0 2.4rem 6rem rgba(20,34,58,.08);transform:translateY(-3px);}
.processIcon{display:flex;align-items:center;justify-content:center;width:10rem;height:10rem;border-radius:1.6rem;background:linear-gradient(135deg,#f2f8ff,#f7f8fc);}
.processIcon img{display:block;width:5.8rem;height:5.8rem;object-fit:contain;}
.processMeta{display:flex;align-items:center;gap:1.6rem;min-width:0;}
.processMeta span{color:var(--main-color,#2fb3ff);font-size:1.6rem;font-weight: 700;letter-spacing:-.02em;white-space:nowrap;}
.processActor{display:inline-flex;align-items:center;justify-content:center;min-width:5.4rem;height:3rem;padding:0 1rem;border-radius:99rem;font-size:1.35rem;font-style:normal;font-weight:900;letter-spacing:-.035em;white-space:nowrap;}
.processActor.isClient{background:#eef6ff;color:#001b72;}
.processActor.isCenter{min-width:3.6rem;width:3.6rem;height:3.6rem;padding:0;border-radius:50%;background:#f5f8ff;box-shadow:0 .6rem 1.6rem rgba(0,27,114,.08);}
.processActor.isCenter img{display:block;width:2.4rem;height:2.4rem;object-fit:contain;}
.processTitle h3{margin:0;color:#111;font-size: clamp(2rem,1.4vw,2.4rem);font-weight: 800;line-height:1.35;word-break:keep-all;}
.processDesc p{margin:0;color:#777;font-size:clamp(1.7rem,.95vw,1.75rem);font-weight:500;line-height:1.75;letter-spacing:-.035em;word-break:keep-all;}
.processDots{display:flex;align-items:center;justify-content:center;gap:.7rem;}
.processDots i{display:block;width:.58rem;height:.58rem;border-radius:50%;background:var(--main-color,#2fb3ff);opacity:.28;transform:scale(.8);animation:processDotCalm 2.8s ease-in-out infinite;}
.processDots i:nth-child(2){animation-delay:.38s;}
.processDots i:nth-child(3){animation-delay:.76s;}

@keyframes processDotCalm{
	0%,100%{opacity:.25;transform:scale(.78);}
	45%{opacity:.85;transform:scale(1.08);}
}
/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.processIn {width: min(200rem, 100%);}
	.processList {grid-template-columns: repeat(2, minmax(0px, 1fr));}
	.processItem {grid-template-columns: 8rem 13rem 4rem minmax(10rem, 16rem) minmax(0, 1fr);gap: clamp(2rem, 2.8vw, 4rem);}
}

@media (max-width:1800px){
	.processIn{width: calc(100% - 6%);padding: 7rem 0 0;}
}

@media(max-width:1180px){
	.processItem{grid-template-columns:9rem 13rem 4rem minmax(14rem,17rem) minmax(0,1fr);gap:2.4rem;padding-right:3rem;}
	.processIcon{width:8rem;height:8rem;}
	.processIcon img{width:4.8rem;height:4.8rem;}
}

@media(max-width:900px){
	.processList {grid-template-columns: repeat(2, minmax(0px, 1fr));}
	.processItem{grid-template-columns:8rem minmax(0,1fr);gap:1.8rem 2rem;align-items:start;padding:2rem;border-radius:1.8rem;}
	.processIcon{grid-row:1 / span 3;width:7.2rem;height:7.2rem;border-radius:1.4rem;}
	.processIcon img{width:4.2rem;height:4.2rem;}
	.processMeta{grid-column:2;}
	.processDots{display:none;}
	.processTitle{grid-column:2;}
	.processDesc{grid-column:2;}
}

@media(max-width:640px){
	.processItem {display: flex;gap: 0.8rem 2rem;flex-direction: column;}
}

@media(max-width:560px){
    .processList {grid-template-columns: repeat(1, minmax(0px, 1fr));}
	.processItem{display:grid;gap: 0 1rem;}
	.processIcon{width:7rem;height:7rem;margin-bottom:2rem;}
	.processMeta{margin-bottom:1.4rem;}
	.processTitle h3{font-size:2.2rem;}
	.processDesc p{margin-top:1rem;}
}

@media(prefers-reduced-motion:reduce){
	.processDots i{animation:none;opacity:1;transform:none;}
}

.processContactSec{position:relative;padding:10rem 0 5rem;background:#fff;color:#111;overflow:hidden;}
.processContactIn{width:min(150rem,100%);margin:0 auto;}
.processContactTit{margin:0 0 clamp(4rem,4vw,6rem);color:#111;font-size:clamp(3.4rem,3vw,5rem);font-weight: 700;line-height:1.15;}
.processContactGrid{display:grid;grid-template-columns:minmax(48rem,.95fr) minmax(0,1.05fr);gap:clamp(2.8rem,3vw,4.2rem);align-items:stretch;}
.processContactCard{display:flex;flex-direction:column;justify-content:space-between;min-height:56rem;padding:clamp(5rem,5vw,7rem);border-radius: 5rem;background: linear-gradient(135deg, #123274 0%, #071763 100%);color:#fff;overflow:hidden;}
.processContactTop{min-width:0;}
.processContactTop > strong{display:block;margin:0 0 3.4rem;color: #fff;font-size:clamp(2.4rem,2vw,3rem);border-bottom: 1px solid rgba(255, 255, 255, .74);padding-bottom: 1em;}
.processAddr{display:grid;grid-template-columns:3.2rem minmax(0,1fr);gap:1.6rem;align-items:start;}
.processContactIcon{display:flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;color:#fff;}
.processContactIcon svg{display:block;width:2.2rem;height:2.2rem;fill:currentColor;}
.processAddr p{margin:0;color:#fff;font-size: clamp(2rem,1.35vw,2.2rem);font-weight: 500;line-height:1.65;word-break:keep-all;}
.processAddr small{display:block;margin-top:1.2rem;color: rgb(255 255 255 / 71%);font-size: 1.8rem;font-weight: 500;line-height:1.5;}
.processContactList{display:grid;gap:2rem;margin-top:3.2rem;}
.processContactList a{display:inline-flex;align-items:center;gap:1.4rem;width:fit-content;color:#fff;font-size: clamp(2rem,1.6vw,2.8rem);font-weight: 500;}
.processContactList a span{display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;color:#fff;}
.processContactList a svg{display:block;width:2.2rem;height:2.2rem;fill:currentColor;}
.processContactList a:hover{text-decoration:underline;text-underline-offset:.5rem;}
.processDocList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:clamp(4rem,4vw,6rem);}
.processDocItem{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4rem;min-height:13rem;padding:2rem;border-radius:1.4rem;background:rgba(255,255,255,.12);color:#fff;text-decoration:none;transition:background .25s ease,transform .3s var(--ease,cubic-bezier(.19,1,.22,1));}
.processDocItem:hover{background:rgba(255,255,255,.2);transform:translateY(-3px);}
.processDocIcon{display:flex;align-items:center;justify-content:center;width: 5rem;height: 5rem;border-radius:.9rem;background:#fff;color:#111;font-size:2.2rem;font-weight:900;line-height:1;}
.processDocIcon svg{display:block;width: 2.5rem;height: 2.5rem;fill:currentColor;}
.processDocIcon.isNaver{background: #00a5c8;color:#fff;}
.processDocIcon.isBank{background:#ffdc00;color:#0054d1;}
.processDocIcon.isGoogle{background:#fff;color:#4285f4;}
.processDocItem strong{color:#fff;font-size: 1.8rem;font-weight: 500;}
.processMapBox{position:relative;min-height:56rem;border-radius:2.8rem 0 0 0;overflow:hidden;background:#edf1f5;}
.processMapBox iframe,.processMapBox img{display:block;width:100%;height:100%;border:0;object-fit:cover;}

/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.processContactIn {width: min(200rem, 100%);}
}

@media (max-width:1800px){
	.processContactIn{width: calc(100% - 6%);padding: 7rem 0 0;}
	.processContactSec {padding: 10rem 0 0;}
}

@media(max-width:1180px){
	.processContactGrid{grid-template-columns:1fr;}
	.processContactCard{min-height:auto;}
	.processMapBox{min-height:42rem;border-radius:2.4rem;}
}
@media(max-width:768px){
	.processContactSec{padding:7rem 0 0;}
	.processContactCard{padding:3.4rem 2.4rem;border-radius:0 2.4rem 0 0;}
	.processAddr{grid-template-columns:2.8rem minmax(0,1fr);}
	.processAddr p{font-size:1.8rem;}
	.processContactList a{font-size:2rem;}
	.processMapBox{min-height:34rem;}
}
@media(max-width:480px){
	.processContactTit{font-size:3.2rem;}
	.processAddr p{font-size:1.65rem;}
	.processContactList a{font-size:1.75rem;}
	.processMapBox{min-height:28rem;}
	.processDocItem strong {font-size: 1.65rem;}
}


/* =============================================
   Schedule Page
============================================= */
.schedulePage{position:relative;padding: 3rem 0;color:#111;overflow:visible;}
.scheduleIn{width:min(150rem,100%);margin:0 auto;}

.scheduleLayout{display:grid;grid-template-columns:minmax(0,1fr) minmax(32rem,40rem);gap:clamp(4rem,5vw,8rem);align-items:start;}

.scheduleLayout.isLoading { opacity: .55; pointer-events: none; transition: opacity .2s ease; }
.scheduleCalendar{min-width:0;background:#fff;}
.scheduleSide{position:relative;min-width:0;}
.scheduleSideSticky{position:sticky;top:calc(var(--header-height,9rem) + 3rem);}

.scheduleCalTop{display:flex;align-items:center;gap:1rem;margin-bottom: 1rem;}
.scheduleCalTop h2{margin:0 auto;color:#111;font-size: clamp(2.8rem,1.5vw,4rem);font-weight: 500;}
.scheduleNavBtn{display:flex;align-items:center;justify-content:center;width:4.8rem;height:4.8rem;border:1px solid #dfe3ea;border-radius:50%;background:#fff;color:#111;font-size:3rem;font-weight:400;line-height: 1.8;cursor:pointer;transition:border-color .25s ease,background .25s ease,color .25s ease;}
.scheduleNavBtn:hover{border-color: var(--main-color);background: var(--main-color);color:#fff;}
.scheduleNavBtn .btnR{transform: rotate(180deg);}
.scheduleNavBtn:hover span{filter: brightness(0) invert(1);}
.scheduleWeek{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:2px solid #111;border-bottom:1px solid #dfe3ea;}
.scheduleWeek span{display:flex;align-items:center;justify-content:center;height:5.4rem;color:#667085;font-size:1.45rem;font-weight: 600;}
.scheduleWeek span:first-child{color:#df3a3a;}
.scheduleWeek span:last-child{color: var(--main-color);}
.scheduleGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
.scheduleDay{position:relative;display: flex;min-height: 11.5rem;padding:1.2rem;border:0;border-right:1px solid #eef1f5;border-bottom:1px solid #eef1f5;background:#fff;text-align:left;cursor:pointer;transition:background .2s ease,box-shadow .2s ease;align-items: flex-start;flex-direction: column;}
.scheduleDay:nth-child(7n){border-right:0;}
.scheduleDay:hover{background:#f8fbff;}
.scheduleDay.isOther{background:#fafafa;}
.scheduleDay.isSelected{background:#f2f8ff;}
.scheduleDay.hasUnavailable{background:#fff8f7;}
.scheduleDay.hasUnavailable.isSelected{background:#fff0ee;}
.scheduleDayHead{display:flex;align-items:center;gap:.45rem;max-width:100%;min-width:0;}
.scheduleDayNum{display:flex;flex:0 0 auto;justify-content:center;width:3rem;height:3rem;border-radius:50%;color: #414141;font-size:1.45rem;font-weight: 400;align-items: center;}
.scheduleDayAvailability{display:inline-flex;align-items:center;min-width:0;min-height:2.1rem;padding:.15rem .6rem;border-radius:999px;background:#fee4e2;color:#b42318;font-size:1rem;font-style:normal;font-weight:800;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.scheduleDay.isOther .scheduleDayNum{color:#bdc3ce;}
.scheduleDay.isSelected .scheduleDayNum{background: var(--main-color);color:#fff;}
.scheduleEvents{display:grid;width:100%;min-width:0;gap:.5rem;margin-top:1rem;}
.scheduleEvent{display:flex;align-items:center;gap:.6rem;width:100%;min-width:0;height:2.8rem;padding:0 .8rem;border-radius:.8rem;/* background:#eef8ff; */color:#00518a;font-size:1.25rem;font-weight:800;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;box-sizing:border-box;}
.scheduleEvent::before{content:"";flex:0 0 auto;width: .4rem;height: .4rem;border-radius:50%;background:var(--main-color,#2fb3ff);}
.scheduleEventTitle{display:block;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.scheduleEvent.isUnavailable{color:#b42318;}
.scheduleEvent.isUnavailable::before{background:#e5484d;}
.scheduleAvailabilityBadge{display:inline-flex;align-items:center;justify-content:center;min-height:2.2rem;padding:.2rem .7rem;border-radius:999px;background:#fee4e2;color:#b42318;font-size:1.05rem;font-style:normal;font-weight:800;line-height:1.2;white-space:nowrap;}

.scheduleMonthBox{padding: 3rem 0 1rem;}
.scheduleMonthBox strong{display:block;color: #040404;font-size: clamp(4rem,4vw,4.8rem);font-weight: 600;line-height:1;}
.scheduleMonthBox span{display:block;margin-top:2rem;color: #3d3d3d;font-size:1.6rem;font-weight: 500;}
.scheduleMonthBox em{color: var(--main-color);font-style:normal;font-weight: 500;}
.scheduleSelectedBox{margin-top:2rem;padding:2.8rem;border-radius:2.2rem;background:#f5f8fc;}
.scheduleSelectedBox h3{margin: 0 0 1rem;color:#111;font-size: 1.5rem;font-weight: 500;}
.scheduleSelectedItem{position:relative;padding:2rem;border-radius:1.4rem;background:#fff;border: 1px solid #e1e6efad;margin: 0.5rem 0;}
.scheduleSelectedItem::before{content:"";position:absolute;left:2rem;top: 3.1rem;width: .5rem;height: .5rem;border-radius:50%;background:var(--main-color,#2fb3ff);}
.scheduleSelectedItem strong{display:block;padding-left:1.6rem;margin:0 0 .8rem;color:#111;font-size:1.7rem;font-weight: 700;}
.scheduleSelectedItem p{margin:0 0 .8rem;padding-left:1.6rem;color:var(--main-color,#2fb3ff);font-size:1.45rem;font-weight: 700;letter-spacing:-.02em;}
.scheduleSelectedItem span{display:block;padding-left:1.6rem;color:#667085;font-size:1.45rem;font-weight:500;line-height:1.65;letter-spacing:-.035em;}
.scheduleSelectedItem.isUnavailable{border-color:#f5b7b1;background:#fffafa;}
.scheduleSelectedItem.isUnavailable::before{background:#e5484d;}
.scheduleSelectedItem > .scheduleAvailabilityBadge{margin:0 0 .8rem 1.6rem;}
.scheduleNoticeBox{margin-top:2rem;padding:2.6rem;border:1px solid #e1e6ef;border-radius:2.2rem;background:#fff;}
.scheduleNoticeBox strong{display:block;color:#111;font-size:1.75rem;font-weight:900;}
.scheduleNoticeBox p{margin:1rem 0 0;color:#777;font-size:1.5rem;font-weight:500;line-height:1.75;word-break:keep-all;}
.scheduleInquiryBtn{margin-top:2rem;width: 226px;height: 72px;background: #123274;padding: 1em 3em 1em 0;font-size: 17px;font-weight: 800;}

/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.scheduleIn {width: min(180rem, 100%);}
	.scheduleLayout {grid-template-columns: minmax(0, 1fr) minmax(32rem, 60rem);}
}

@media (max-width:1800px){
	.scheduleIn{width: calc(100% - 6%);overflow: hidden;}
}

@media(max-width:1180px){
	.schedulePage{padding: 0;}
	.scheduleLayout{grid-template-columns:1fr;gap: 0;}
	.scheduleSideSticky{position:relative;top:auto;}
}
@media(max-width:768px){
	.scheduleCalTop{flex-wrap:wrap;}
	.scheduleDay{min-height:10rem;padding:.8rem;}
	.scheduleEvent{height:2.4rem;padding:0 .6rem;font-size:1.1rem;}
}
@media(max-width:560px){
	.scheduleWeek span{height:4.2rem;font-size:1.2rem;}
	.scheduleDay{min-height:7.8rem;padding:.5rem;}
	.scheduleDayNum{width:2.4rem;height:2.4rem;font-size:1.2rem;}
	.scheduleDayHead{gap:.2rem;}
	.scheduleDayAvailability{min-height:1.7rem;padding:.1rem .35rem;font-size:.78rem;}
	.scheduleSelectedItem span {font-size: 1.6rem;}
	.scheduleInquiryBtn {height: 66px;}
}

/* =============================================
   Government Page
============================================= */
.governmentPage{position:relative;background:#fff;color:#111;overflow-x:clip;font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;}
.gIn{width: min(160rem,100%);margin:0 auto;}

/* =============================================
   R&D Purpose
============================================= */
.govRdSec{position:relative;padding: 0 0 4rem;background:#fff;overflow:hidden;}
.govRdIn{display:grid;grid-template-columns:minmax(44rem,.95fr) minmax(54rem,1.05fr);align-items:center;gap:clamp(7rem,8vw,14rem);width: min(144rem,100%);margin:0 auto;}
.govTit{margin: 0 0 3rem;color:#111;font-size: clamp(2.2rem,2.25vw,5.4rem);font-weight: 700;line-height:1.12;}
.govRdList{display:grid;gap:clamp(6rem,6vw,9rem);margin:0;list-style:none;padding-top: 7rem;}
.govRdList li{display:grid;grid-template-columns:16rem minmax(0,1fr);align-items: center;gap:3rem;min-width:0;}
.govRdList li > span{display:block;color:#f3f4f6;font-size:clamp(8rem,8vw,13rem);font-weight: 700;line-height:.82;letter-spacing:-.08em;}
.govRdList h3{margin: 0 0 1.2rem;color:#111;font-size: clamp(2.6rem,1.2vw,3.6rem);font-weight: 700;line-height:1.2;letter-spacing:-.05em;}
.govRdList p{margin:0;color: #666;font-size:clamp(1.6rem,1vw,1.9rem);font-weight: 400;line-height: 1.5;letter-spacing:-.04em;word-break:keep-all;}
.govRdPic{position:relative;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:2.4rem;height:clamp(56rem,46vw,80rem);margin:0;}
.govRdPic img{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;}
.govPicCol{position:relative;width:100%;height:74%;border-radius:2rem;background-image:var(--img);background-repeat:no-repeat;background-size:300% 100%;overflow:hidden;clip-path:inset(0 100% 0 0);transform:translateX(-4rem);opacity:0;box-shadow:0 3rem 7rem rgba(20,34,58,.08);}
.govPicCol::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,31,95,.08));pointer-events:none;}
.govPic01{background: url(../img/content/3-1gove01.jpg) no-repeat 50% 50% / cover;align-self:end;height:70%;}
.govPic02{background: url(../img/content/3-1gove02.jpg) no-repeat 50% 50% / cover;align-self:center;background-position:50% 50%;height:78%;}
.govPic03{background: url(../img/content/3-1gove03.jpg) no-repeat 50% 50% / cover;align-self:start;background-position:100% 50%;height:86%;}
.govRdSec [data-gov-item]{opacity:0;transform:translateY(3.6rem);filter:blur(.6rem);}
.govRdSec.isOn [data-gov-item]{opacity:1;transform:translateY(0);filter:blur(0);transition:opacity .8s ease,transform .9s cubic-bezier(.19,1,.22,1),filter .9s ease;}
.govRdSec.isOn [data-gov-item]:nth-child(1){transition-delay:.05s;}
.govRdSec.isOn .govRdList li:nth-child(1){transition-delay:.18s;}
.govRdSec.isOn .govRdList li:nth-child(2){transition-delay:.52s;}
.govRdSec.isOn .govRdList li:nth-child(3){transition-delay:.66s;}
.govRdSec.isOn .govPicCol{clip-path:inset(0 0 0 0);transform:translateX(0);opacity:1;transition:clip-path 1.15s cubic-bezier(.19,1,.22,1),transform 1.15s cubic-bezier(.19,1,.22,1),opacity .75s ease;}
.govRdSec.isOn .govPic01{transition-delay:.22s;}
.govRdSec.isOn .govPic02{transition-delay:.62s;}
.govRdSec.isOn .govPic03{transition-delay:.82s;}

/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.govRdIn,
	.gIn {width: min(180rem, 100%);}
}

@media (max-width:1800px){
	.govRdIn,
	.gIn{width: calc(100% - 6%);margin: 0 3%;}
	.govTit {font-size: 3.8rem;}
}

@media(max-width:1280px){
	.govRdIn{grid-template-columns:minmax(38rem,.9fr) minmax(48rem,1.1fr);gap:2rem;}
	.govRdList li{grid-template-columns:0 minmax(0,1fr);}
	.govRdList p br{display:none;}
}
@media(max-width:980px){
	.govRdIn {grid-template-columns: 1fr;gap: 7rem;}
	.govRdList li{grid-template-columns:8rem minmax(0,1fr);}
	.govRdList {padding-top: 0;}
	.govTit{margin-bottom:5rem;}
	.govRdPic{height:52rem;}
}
@media(max-width:640px){
	.govTit{font-size:3.6rem;}
	.govRdList{gap:4rem;}
	.govRdList li{grid-template-columns:8rem minmax(0,1fr);gap:2rem;}
	.govRdList li > span{font-size:6.4rem;}
	.govRdList h3{font-size:2.8rem;margin-bottom:1.2rem;}
	.govRdList p{font-size:1.8rem;line-height:1.75;}
	.govRdPic{gap:1rem;height:38rem;}
	.govPicCol{border-radius:1.4rem;}
}
@media(prefers-reduced-motion:reduce){
	.govRdSec [data-gov-item],.govPicCol{opacity:1!important;transform:none!important;filter:none!important;clip-path:inset(0)!important;transition:none!important;}
}

/* =============================================
   R&D Field
============================================= */
.fldSec{position:relative;padding: clamp(5rem,4vw,9rem) 0;background:#fff;}
.fldSec1{padding: 0;}
.fldWrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem;padding: clamp(2.2rem,2.4vw,3rem);border: 1px solid #d9dee7;border-radius: 3rem;background:#fff;}
.fldBox{display:grid;grid-template-columns:24rem minmax(0,1fr);align-items: start;gap:clamp(3rem,4vw,5rem);padding: clamp(3rem,3vw,4.6rem);border-radius: 2.4rem;background: #f2f5f8;}
.fldTit{margin-top: 0.2em;color: #050505;font-size: clamp(2.6rem,2.2vw,3rem);font-weight: 700;line-height: 1.2;letter-spacing:-.055em;word-break:keep-all;}
.fldList{display:grid;gap:1.4rem;margin:0;padding:0;list-style:none;}
.fldList li{position:relative;padding-left:3.2rem;color: #666;font-size: clamp(1.6rem,0.9vw,1.8rem);font-weight: 400;line-height: 1.65;word-break:keep-all;}
.fldList li::before{content:"";background: url(../img/content/arr.svg) no-repeat 50% 50% / cover;position:absolute;left:0;top: .15rem;width: 2.65rem;height: 2.65rem;}
@media(max-width:1600px){
	.fldBox{grid-template-columns:14rem minmax(0,1fr);gap: 2em;}
}
@media(max-width:1100px){
	.fldBox{grid-template-columns:1fr;gap:2.6rem;min-height:auto;border-radius:2rem;}
	.fldTit br{display:none;}
}
@media(max-width:900px){
	.fldWrap{grid-template-columns:1fr;padding:2rem;border-radius:2.4rem;}
}
@media(max-width:640px){
	.fldWrap{padding:1.4rem;}
	.fldBox{padding:3rem 2.4rem;}
	.fldTit{font-size:2.5rem;}
	.fldList{gap:1.1rem;}
	.fldList li{font-size:1.7rem;line-height:1.65;}
}

/* =============================================
   Task Organization
============================================= */
.tskSec{position:relative;padding:clamp(5rem,6vw,9rem) 0;background:#fff;overflow:hidden;}
.tskGrid{display:grid;grid-template-columns:34rem minmax(0,1fr);align-items: start;gap: clamp(5rem,10vw,20rem);}
.tskTit{margin:0;word-break:keep-all;color: #111;font-size: clamp(2.2rem, 1.8vw, 5.4rem);font-weight: 700;line-height: 1.12;margin-top: 3rem;}
.tskFlow{display:grid;grid-template-columns:clamp(26rem,20vw,34rem) minmax(32rem,1fr) clamp(26rem,20vw,34rem);align-items:center;gap: clamp(3rem,2vw,5rem);}
.tskNode{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;aspect-ratio:1;border-radius:50%;background:#fff;text-align:center;}
.tskRing{position:absolute;inset:0;z-index:1;display:block;pointer-events:none;}
.tskRing svg{display:block;width:100%;height:100%;transform:rotate(-90deg);}
.tskRing circle{fill:none;stroke: #0f7dff;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;}
.tskNode.isOn .tskRing circle{animation:tskRing 2.8s cubic-bezier(.16,1,.3,1) forwards;}
.tskB.isOn .tskRing circle{animation-delay:.35s;}
.tskMsg.isRight.isOn{animation-delay:.12s;}
.tskIcon{position:relative;z-index:2;width:7.8rem;height:7.8rem;margin:0 0 2.2rem;}
.tskIcon img{display:block;width:100%;height:100%;object-fit:contain;}
.tskLogo{position:relative;z-index:2;width:9.2rem;height:9.2rem;margin:0 0 2.2rem;}
.tskLogo img{display:block;width:100%;height:100%;object-fit:contain;}
.tskNode strong{position:relative;z-index:2;color:#111;font-size: clamp(2.4rem,1.5vw,3.4rem);font-weight: 700;line-height:1.2;}
.tskNode p{position:relative;z-index:2;margin:1rem 0 0;color:#777;font-size:clamp(1.6rem,1vw,2rem);font-weight:600;}
.tskMid{display:grid;gap:clamp(4rem,4vw,6rem);}
.tskMsg{position:relative;display:flex;align-items: center;min-height:7rem;color:#001f5f;font-size: clamp(1.7rem,0.9vw,2rem);font-weight: 600;line-height:1.55;text-align:center;letter-spacing:-.04em;transform:translateX(-2rem);width: 100%;}
.tskMsg::before{content:"";position:absolute;inset:0;z-index:0;width: 85px;height: 66px;background: url(../img/content/3-1goveicon02.png) no-repeat;}
.tskMsg span{position:relative;z-index:2;}
.tskMsg.isLeft::before{transform: rotate(180deg);left: 0;}
.tskMsg.isRight::before{margin-left: 247px;margin-top: -4px;}
.tskMsg.isRight{align-items: flex-end;flex-direction: column;}
.tskMsg.isLeft span{margin-left: 2em;}
.tskMsg.isRight span{margin-right: 2em;}
@keyframes tskRing{
	0%{stroke-dashoffset:1;}
	100%{stroke-dashoffset:0;}
}


/* =============================================
   Responsive
============================================= */
@media(min-width:2100px){
	.tskGrid {grid-template-columns: 44rem minmax(0, 1fr);}
	.tskFlow{gap:10rem;}
}

@media(max-width:1600px){
	.tskGrid {grid-template-columns: 20rem minmax(0, 1fr);}
	.tskTit{font-size:3.8rem;}
}
@media(max-width:1300px){
	.tskSec {padding: 3rem 0;}
	.tskGrid {grid-template-columns: 1fr;gap: 4em;}
	.tskFlow {max-width: 500px;}
}
@media(max-width:980px){
	.tskFlow{margin-top: 3rem;grid-template-columns:1fr;justify-items:center;max-width: 100%}
	.tskNode{width:min(34rem,100%);}
	.tskMid{justify-items: center;justify-content: center;}
	.tskMsg.isLeft::before {transform: rotate(270deg);left: 50%;margin-left: -42.5px;}
	.tskMsg.isRight::before {transform: rotate(90deg);left: 50%;margin-left: -42.5px;}
	.tskMsg{flex-direction: column;justify-content: center;transform: none;}
	.tskMsg.isRight {align-items: center;}
	.tskMsg.isRight span {margin-right: 0;}
	.tskMsg.isLeft span {margin-left: 0;}
}
@media(max-width:560px){
	.tskTit{font-size:3rem;}
	.tskMsg {font-size: 1.8rem;}
}
@media(prefers-reduced-motion:reduce){
	.tskRing circle{stroke-dashoffset:0!important;}
	.tskSec.isOn .tskA .tskRing circle,.tskSec.isOn .tskB .tskRing circle,.tskSec.isOn .tskMsg{animation:none!important;opacity:1!important;transform:none!important;}
}


/* =============================================
   Center Link
============================================= */
.linkSec{position:relative;padding:clamp(5rem,6vw,9rem) 0;background:#fff;overflow:hidden;}
.linkBox{display:grid;grid-template-columns:20rem minmax(30rem,.9fr) minmax(0,1.3fr);align-items:center;gap:clamp(5rem,6vw,9rem);padding:clamp(3rem,3vw,4.2rem);border:1px solid #d7dde8;border-radius:3rem;background:#fff;}
.linkIcon{display:flex;align-items:center;justify-content:center;width:16rem;height:16rem;margin:0;border-radius:2.2rem;background:#f4f6fb;}
.linkIcon img{display:block;width:8rem;height:8rem;object-fit:contain;}
.linkTit{margin:0;margin-top: 0.2em;color: #050505;font-size: clamp(2.6rem, 2.2vw, 3rem);font-weight: 700;line-height: 1.5;letter-spacing: -.055em;word-break: keep-all;}
.linkList{display:grid;gap:3rem;}
.linkList article{position:relative;padding-left:4rem;}
.linkList article::before{content:"";background: url(../img/content/arr.svg) no-repeat 50% 50% / cover;position:absolute;left:0;top: .15rem;width: 2.65rem;height: 2.65rem;}
.linkList h3{margin:0 0 1rem;color:#1f2937;font-size:clamp(1.8rem,1.15vw,2.2rem);font-weight:900;line-height:1.35;letter-spacing:-.04em;}
.linkList p{margin:0;color:#777;font-size:clamp(1.55rem,1vw,1.85rem);font-weight:500;line-height:1.65;letter-spacing:-.035em;word-break:keep-all;}

/* =============================================
   Department
============================================= */
.deptBox{margin-top:clamp(5rem,5vw,7rem);padding:clamp(4rem,4vw,6rem);border:1px solid #d7dde8;border-radius:3rem;background:#fff;}
.deptTit{letter-spacing:-.055em;margin: 0 0 4rem;color: #111;font-size: clamp(2.2rem, 1.8vw, 4.4rem);font-weight: 700;line-height: 1.12;}
.deptList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem clamp(6rem,7vw,12rem);}
.deptList dl{position:relative;display:grid;grid-template-columns:18rem minmax(0,1fr);gap: 1rem;margin:0;padding-left:3.8rem;}
.deptList dl::before{content:"";background: url(../img/content/arr.svg) no-repeat 50% 50% / cover;position:absolute;left:0;top: .15rem;width: 2.65rem;height: 2.65rem;}
.deptList dt{color:#1f2937;font-size:clamp(1.65rem,1vw,1.95rem);font-weight:700;line-height:1.55;letter-spacing:-.04em;word-break:keep-all;}
.deptList dd{margin:0;color:#777;font-size:clamp(1.55rem,.95vw,1.85rem);font-weight:500;line-height:1.75;letter-spacing:-.035em;word-break:keep-all;}

/* =============================================
   Responsive
============================================= */
@media(max-width:1180px){
	.linkBox{grid-template-columns:16rem minmax(26rem,.8fr) minmax(0,1.2fr);gap:4rem;}
	.linkIcon{width:13rem;height:13rem;}
	.deptList{gap:2.4rem 5rem;}
	.deptList dl{grid-template-columns:15rem minmax(0,1fr);}
}
@media(max-width:900px){
	.linkBox{grid-template-columns:1fr;gap:3rem;padding:3rem;border-radius:2.4rem;}
	.linkIcon{width:12rem;height:12rem;}
	.linkList{gap:2.4rem;}
	.deptBox{padding:3rem;border-radius:2.4rem;}
	.deptList{grid-template-columns:1fr;gap:2.4rem;}
}
@media(max-width:560px){
	.linkIcon{width:10rem;height:10rem;border-radius:1.8rem;}
	.linkIcon img{width:6.4rem;height:6.4rem;}
	.linkTit,.deptTit{font-size:2.6rem;}
	.linkList article{padding-left:3.2rem;}
	.deptList dl{grid-template-columns:1fr;gap:.6rem;padding-left:3.2rem;}
	.deptList dt{font-size:1.7rem;}
	.deptList dd{font-size:1.7rem;line-height:1.65;}
}

/* =============================================
   R&D Preparation
============================================= */
.prepSec{position:relative;padding: 0 0 5rem;overflow:hidden;}
.prepTit{position:relative;padding-bottom:2.2rem;margin: 0 0 3rem;color: #111;font-size: clamp(2.2rem, 2vw, 5.4rem);font-weight: 700;line-height: 1.12;}
.prepTit::after{content:"";position:absolute;left:0;bottom:0;width:100%;height: 1px;background:#111;}
.prepGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.4rem;}
.prepBox{min-width:0;padding: clamp(3rem, 3vw, 4.6rem);border-radius: 2.4rem;background: #f2f5f8;}
.prepBox h3{margin-bottom: 1em;color: #050505;font-size: clamp(2.6rem, 2.2vw, 3rem);font-weight: 700;line-height: 1.2;letter-spacing: -.055em;word-break: keep-all;}
.prepWide{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(5rem,7vw,12rem);}
.ckList{display:grid;gap:1.2rem;margin:0;padding:0;list-style:none;}
.ckList li{letter-spacing:-.035em;position: relative;padding-left: 3.2rem;color: #666;font-size: clamp(1.6rem, 0.9vw, 1.8rem);font-weight: 400;line-height: 1.65;word-break: keep-all;}
.ckList li::before{content:"";background: url(../img/content/arr.svg) no-repeat 50% 50% / cover;position:absolute;left:0;top: .15rem;width: 2.65rem;height: 2.65rem;}
.ckList strong{color:#111;font-weight:900;}
.prepArrow{width:0;height:0;margin: 0 auto 2rem;border-left: 4rem solid transparent;border-right: 4rem solid transparent;border-top: 5.6rem solid #eef2f8;}
.prepCta{display:flex;align-items:center;justify-content:center;width: 80%;margin:  0 auto;min-height: 15.8rem;padding:2rem 4rem;border:3px solid #001f5f;border-radius:999rem;background:#001f5f;color:#fff;text-align:center;text-decoration:none;box-shadow:inset 0 0 0 .7rem #fff;transition:background .25s ease,transform .3s cubic-bezier(.19,1,.22,1),box-shadow .3s ease;}
.prepCta span{color:#fff;font-size:clamp(2.1rem,1.6vw,3rem);font-weight: 500;line-height:1.35;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.prepSec{padding:0;}
	.prepTit {font-size: 3rem;}
}
@media(max-width:980px){
	.prepGrid{grid-template-columns:1fr;}
	.prepWide{grid-template-columns:1fr;gap:3.4rem;}
	.prepBox{padding:3.6rem 3rem;border-radius:2.2rem;}
}
@media(max-width:640px){
	.prepTit{font-size:3rem;}
	.prepBox{padding:3rem 2.2rem;}
	.prepBox h3{font-size:2.3rem;margin-bottom:2.4rem;}
	.ckList li{font-size:1.7rem;line-height:1.7;}
	.ckList li::after{left:.47rem;top:.86rem;}
	.prepCta{min-height:10rem;padding:1.8rem 2.4rem; width: 100%;}
	.prepCta span{font-size:2rem;}
}


/* =============================================
   Simulation Page
============================================= */
.analysisPage{position:relative;background:#fff;color:#111;font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;}
.simSec{position:relative;margin-top: 3rem;}
.simIn{width: min(160rem,100%);margin:0 auto;}
.analysisPage h2{margin: 0 0 3rem;color: #111;font-size: clamp(2.2rem, 2.25vw, 5.4rem);font-weight: 700;line-height: 1.12;}

.simTop{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:3rem;}
.simTop h2{margin:0;}
.simAllBtn{display:inline-flex;align-items:center;justify-content:center;height:4.8rem;padding:0 2.2rem;border:1px solid #dfe6f0;border-radius:99rem;background:#fff;color:#111;font-size:1.5rem;font-weight:800;letter-spacing:-.035em;cursor:pointer;transition:border-color .25s ease,background .25s ease,color .25s ease;}
.simAllBtn:hover,.simAllBtn.isOn{border-color:var(--main-color,#007aff);background:var(--main-color,#007aff);color:#fff;}

@media(max-width:560px){
	.simAllBtn{height:4.4rem;font-size:1.4rem;}
}

/* =============================================
   Simulation Accordion
============================================= */
.simAcc{border-top:2px solid #111;}
.simItem{border-bottom:1px solid #dfe5ef;}
.simBtn{display:grid;grid-template-columns: 8rem minmax(0,1fr) 4rem;align-items:center;gap:2rem;width:100%;min-height: 8rem;padding:0;border:0;background:#fff;color:#111;text-align:left;cursor:pointer;}
.simBtn span{color:#d9dee7;font-size: clamp(1.8rem,1.5vw,5.4rem);font-weight: 700;line-height:1;}
.simBtn strong{color:#111;font-size: clamp(1.2rem,1.12vw,3rem);font-weight: 800;line-height:1.3;}
.simBtn i{position:relative;display:block;width: 1.4rem;height: 1.4rem;margin-left:auto;}
.simBtn i::before,.simBtn i::after{content:"";position:absolute;left:50%;top:50%;width: 1.5rem;height:2px;border-radius:99rem;background:#111;transform:translate(-50%,-50%);transition:transform .25s ease,background .25s ease;}
.simBtn i::after{transform:translate(-50%,-50%) rotate(90deg);}
.simItem.isOpen .simBtn i::after{transform:translate(-50%,-50%) rotate(0);}
.simItem.isOpen .simBtn strong,.simBtn:hover strong{color:var(--main-color,#007aff);}
.simItem.isOpen .simBtn i::before,.simItem.isOpen .simBtn i::after,.simBtn:hover i::before,.simBtn:hover i::after{background:var(--main-color,#007aff);}
.simPanel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.19,1,.22,1);}
.simItem.isOpen .simPanel{grid-template-rows:1fr;}
.simPanelIn{overflow:hidden;}
.simItem .simPanelIn{display: flex;gap: 2rem;}
.simItem.isOpen .simPanelIn{padding: 0 0 3em;}
.simView{display:flex;align-items:center;justify-content:center;width: 100%;height: 67rem;margin:0;border:1px solid #dfe5ef;border-radius:2rem;overflow:hidden;padding: 5em 0;}
.simView img{display:block;width:100%;height:100%;object-fit:contain;}
.simThumb{grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin-top:1.4rem;display: flex;flex-direction: column;width: 180px;}
.simThumb button{padding:0;border:2px solid transparent;border-radius:1rem;background:#f5f7fb;overflow:hidden;cursor:pointer;opacity:.55;transition:border-color .2s ease,opacity .2s ease,transform .2s ease;}
.simThumb button.isOn,.simThumb button:hover{border-color:var(--main-color,#007aff);opacity:1;transform:translateY(-2px);}
.simThumb img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;}

/* =============================================
   Responsive
============================================= */
@media(min-width:2100px){
	.simBtn {min-height: 11rem;}
	.simView {height: 90rem;}
}

@media(max-width:1800px){
	.simBtn {grid-template-columns: 3rem minmax(0, 1fr) 4rem;}
	.simBtn strong {font-size: 2.2rem;}
}

@media(max-width:768px){
	.simItem .simPanelIn{flex-direction: column;}
	.simSec{margin-top: 0;}
	.simBtn{min-height:8.4rem;}
	.simBtn i{grid-column:3;}
	.simView{height: 60svh;padding: 3rem;}
	.simThumb{display: grid;grid-template-columns: repeat(8, minmax(0, 1fr));width: 100%;gap: 0.5rem;margin-top: 0;}
}
@media(max-width:560px){
	.simHead h2{font-size:3.4rem;}
	.simBtn span{font-size:1.8rem;}
	.simView{height: 100%;max-height:60svh;}
	.simThumb{display: grid;grid-template-columns: repeat(5, minmax(0, 1fr));}
}

/* =============================================
   Analysis Process
============================================= */
.anaProcSec{position:relative;padding: 7rem 0;background:#fff;color:#111;overflow:visible;}
.anaProcIn{width:min(160rem,100%);margin:0 auto;overflow:visible;}
.anaProcTit{margin:0 0 clamp(3.6rem,4vw,5.2rem);color:#111;font-size:clamp(3.4rem,2.8vw,5rem);font-weight:900;line-height:1.15;letter-spacing:-.055em;}
.anaProcGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(36rem,40rem);gap:clamp(2.8rem,3.4vw,5rem);align-items:stretch;overflow:visible;}
.anaStepList{display:grid;gap:1.4rem;min-width:0;}
.anaStepCard{display:grid;grid-template-columns:10rem 5.8rem minmax(18rem,26rem) minmax(0,1fr);align-items:center;gap: 3.5rem;min-height:12.2rem;padding:2.2rem 3rem;border:1px solid #dfe6f0;border-radius:1.8rem;background:#fff;box-shadow:0 2rem 5rem rgba(10,30,70,.035);transition:border-color .25s ease,box-shadow .3s ease,transform .3s cubic-bezier(.19,1,.22,1);}
.anaStepCard.isActive{border-color:#8dccff;box-shadow:0 2.6rem 6rem rgba(0,76,180,.06);}
.anaStepCard:hover{border-color: rgba(47, 179, 255, .35);box-shadow: 0 2.4rem 6rem rgba(20, 34, 58, .08);}
.anaStepMeta{display:flex;align-items:center;gap: 3.2rem;min-width:0;}
.anaNum{display:inline-flex;color:#007aff;font-size:1.6rem;font-weight:900;line-height:1;letter-spacing:-.04em;}
.anaBadge{display: inline-flex;align-items: center;justify-content: center;min-width: 5.4rem;height: 3rem;padding: 0 1rem;border-radius: 99rem;font-size: 1.35rem;font-style: normal;font-weight: 900;letter-spacing: -.035em;white-space: nowrap;background: #eef6ff;color: #001b72;}
.anaMark{display:inline-flex;align-items:center;justify-content:center;width: 3.6rem;height: 3.6rem;border-radius:50%;background:#f2f6fc;box-shadow:0 .8rem 1.8rem rgba(0,31,95,.06);}
.anaMark img{display:block;width: 2.4rem;height: 2.4rem;object-fit:contain;}
.anaDots{display:flex;align-items:center;justify-content:center;gap:.7rem;}
.anaDots i{display:block;width:.52rem;height:.52rem;border-radius:50%;background:#6eb7ff;opacity:.28;transform:translateX(-.4rem) scale(.75);animation:anaDotFlow 1.9s ease-in-out infinite;}
.anaDots i:nth-child(2){animation-delay:.2s;}
.anaDots i:nth-child(3){animation-delay:.4s;}
.anaStepCard h3{margin:0;color:#111;font-size: clamp(2rem,1.25vw,2.6rem);font-weight: 700;line-height:1.35;letter-spacing:-.055em;word-break:keep-all;}
.anaStepCard h3 small{display:block;margin-top:.3rem;color:#777;font-size:.72em;font-weight: 500;}
.anaStepCard p{margin:0;color: #777;font-size: clamp(1.5rem,.95vw,1.75rem);font-weight:500;line-height: 1.75;letter-spacing: -.035em;word-break:keep-all;}

/* =============================================
   Analysis Guide
============================================= */
.anaGuide{position:relative;min-width:0;align-self:stretch;height:100%;overflow:visible;}
.anaGuideBox{position:sticky;top:calc(var(--header-height,9rem) + 3rem);padding:3.6rem 3.2rem;border:1px solid #dfe6f0;border-radius:2.4rem;background:#fff;box-shadow:0 2.8rem 8rem rgba(10,30,70,.07);}
.anaGuideBox h3{display:flex;align-items:center;gap:1.6rem;margin:0 0 3.6rem;color:#111;font-size: clamp(2.6rem,1.25vw,3.4rem);font-weight: 900;line-height:1.2;}
.anaGuideBox h3 i{display:flex;align-items:center;justify-content:center;width: 3.4rem;height: 3.4rem;border-radius:50%;color: #ffffff;font-size:2.3rem;font-style:normal;font-weight: 700;font-family:Georgia,serif;background: var(--main-color);}
.anaGuideList{display:grid;gap:0;margin:0;padding:0;list-style:none;}
.anaGuideList li{position:relative;padding: 0 0 2.2rem 3.2rem;border-bottom:1px solid #e5ebf3;color: #666;font-size: clamp(1.5rem,.92vw,1.6rem);font-weight: 400;line-height: 1.65;word-break:keep-all;}
.anaGuideList li + li{margin-top: 2.2rem;}
.anaGuideList li::before{content: "";background: url(../img/content/arr.svg) no-repeat 50% 50% / cover;position: absolute;left: 0;top: .15rem;width: 2.65rem;height: 2.65rem;}
.anaSecure{display:grid;grid-template-columns: 5rem minmax(0,1fr);gap: 1rem;align-items:center;margin-top:3rem;padding: 2rem;border-radius:1.6rem;background:#f4f7fc;}
.anaSecure i{display:flex;align-items:center;justify-content:center;width:5.2rem;height:5.2rem;color:#0054d1;}
.anaSecure svg{display:block;width:4.4rem;height:4.4rem;fill:currentColor;}
.anaSecure p{margin:0;color:#17366f;font-size:1.55rem;font-weight: 700;line-height:1.65;letter-spacing:-.04em;word-break:keep-all;}
.anaGuideBtn{display:flex;align-items:center;justify-content:space-between;height:7rem;margin-top:3rem;padding:0 2.8rem;border-radius:1rem;background: var(--main-color);color:#fff;text-decoration:none;}
.anaGuideBtn span{color:#fff;font-size: 1.9rem;font-weight: 600;}
.anaGuideBtn em{color:#fff;font-size: 2rem;font-style:normal;font-weight:300;line-height:1;}
.anaGuideBtn:hover{background: #001f5f;}

/* =============================================
   Analysis Motion
============================================= */
@keyframes anaDotFlow{
	0%{opacity:.2;transform:translateX(-.4rem) scale(.75);}
	45%{opacity:1;transform:translateX(0) scale(1.15);}
	100%{opacity:.25;transform:translateX(.4rem) scale(.75);}
}

/* =============================================
   Responsive
============================================= */
@media(max-width:1280px){
	.anaProcSec {overflow: hidden;}
	.anaProcGrid{grid-template-columns:1fr;}
	.anaGuideBox{position:relative;top:auto;}
}
@media(max-width:900px){
	.anaStepCard{grid-template-columns:8rem minmax(0,1fr) 4rem;gap:1rem 3.5rem;align-items:start;}
	.anaStepMeta{grid-column:1;}
	.anaDots{grid-column:3;grid-row:1;}
	.anaStepCard h3{grid-column:2;grid-row:1;}
	.anaStepCard p{grid-column:1 / 4;font-size: 1.7rem;}
}
@media(max-width:560px){
	.anaProcTit{font-size:3.2rem;}
	.anaStepCard{display:block;min-height:auto;padding:2.4rem;border-radius:1.6rem;}
	.anaStepMeta{margin-bottom:1.6rem;}
	.anaDots{display:none;}
	.anaStepCard h3{font-size:2.1rem;}
	.anaStepCard p{margin-top:1.4rem;line-height:1.72;}
	.anaGuideBox{padding:3rem 2.4rem;border-radius:1.8rem;}
	.anaGuideBox h3{font-size:2.6rem;}
	.anaGuideList li{padding-left:3.8rem;font-size:1.7rem;line-height:1.75;}
	.anaSecure p{font-size:1.7rem;}
	.anaGuideBtn{height:6.4rem;padding:0 2.4rem;}
}
@media(prefers-reduced-motion:reduce){
	.anaDots i{animation:none;opacity:1;transform:none;}
}

/* =============================================
   Analysis Purpose
============================================= */
.anaPurposeSec{position:relative;padding: 3em 0;background:#fff;color:#111;overflow:hidden;}
.anaPurposeIn{width:min(160rem,100%);margin:0 auto;}
.anaPurposeTit{margin:0 0 clamp(5rem,5vw,8rem);color:#111;font-size:clamp(3.4rem,2.8vw,5rem);font-weight:900;line-height:1.15;letter-spacing:-.055em;}
.anaPurposeGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap: 3rem;}
.anaPurposeCard{min-width:0;border:1px solid #d9d9d9;border-radius: 3rem;background:#fff;overflow:hidden;transition:border-color .3s ease,box-shadow .35s ease,transform .35s cubic-bezier(.19,1,.22,1);}
.anaPurposeCard:hover{border-color:#b9d9ff;}
.anaPurposeCard figure{position:relative;margin:0;background:#111;overflow:hidden;}
.anaPurposeCard figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,31,95,.08));pointer-events:none;}
.anaPurposeCard img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1s cubic-bezier(.19,1,.22,1);}
.anaPurposeCard:hover img{transform:scale(1.06);}
.anaPurposeTxt{padding: 3rem;}
.anaPurposeTxt h3{margin: 0 0 1.2rem;color: #111;font-size: clamp(2.6rem, 1.2vw, 3.6rem);font-weight: 700;line-height: 1.2;letter-spacing: -.05em;}
.anaPurposeTxt p{margin: 0;color: #666;font-size: clamp(1.6rem, 1vw, 1.9rem);font-weight: 400;line-height: 1.5;letter-spacing: -.04em;word-break: keep-all;}

/* =============================================
   Responsive
============================================= */
@media (min-width:2100px){
	.anaPurposeIn,
	.anaProcIn,
	.simIn{width: min(180rem, 100%);}
}

@media (max-width:1800px){
	.anaPurposeIn,
	.anaProcIn,
	.simIn{width: calc(100% - 6%);margin: 0 3%;}
	.analysisPage h2 {font-size: 3.8rem;}
	.anaPurposeSec{padding:0;}
}

@media(max-width:1180px){
	.anaPurposeGrid{gap:2.4rem;}
	.anaPurposeTxt{padding:3.2rem 2.8rem 4rem;}
	.anaPurposeTxt p br{display:none;}
}
@media(max-width:900px){
	.analysisPage h2 {font-size: 3.2rem;}
	.anaPurposeGrid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.anaPurposeCard{border-radius:0 2.4rem 2.4rem 2.4rem;}
	.anaPurposeCard figure{aspect-ratio:16/8;}
}
@media(max-width:560px){
	.anaPurposeGrid {grid-template-columns: 1fr;}
	.anaPurposeTit{font-size:3.2rem;margin-bottom:3.6rem;}
	.anaPurposeCard figure{aspect-ratio:16/9;}
	.anaPurposeTxt{padding:2.8rem 2.2rem 3.2rem;}
	.anaPurposeTxt h3{font-size:2.4rem;margin-bottom:1.8rem;}
	.anaPurposeTxt p{font-size:1.7rem;line-height:1.72;}
}


.scheduleDayAdd { position: absolute; right: .8rem; top: .8rem; display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border-radius: 50%; background: rgba(15, 125, 255, .1); color: var(--main-color, #0f7dff); font-size: 1.8rem; font-weight: 800; line-height: 1; opacity: 0; transition: opacity .2s ease, background .2s ease, color .2s ease; pointer-events: none; }
.scheduleDay:hover .scheduleDayAdd { opacity: 1; }
.scheduleDayAdd + .scheduleEvents { width: calc(100% - 2.8rem); margin-right: 2.8rem; }
@media(max-width:560px){
	.scheduleDayAdd { right: .4rem; top: .4rem; width: 1.8rem; height: 1.8rem; font-size: 1.4rem; opacity: 1; }
}
/* =============================================
   Schedule Admin Modal
============================================= */
.isScheduleModalOpen { overflow: hidden; }
.scheduleModal[hidden] { display: none !important; }
.scheduleModal { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 2rem; }
.scheduleModalDim { position: absolute; inset: 0; background: rgba(10, 18, 32, .56); backdrop-filter: blur(3px); }
.scheduleModalBox { position: relative; z-index: 1; width: min(88rem, 100%); max-height: calc(100vh - 4rem); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; margin: 0; border-radius: 2rem; background: #fff; box-shadow: 0 2.4rem 7rem rgba(15, 23, 42, .28); }
.scheduleModalHead { display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; padding: 2.2rem 2.4rem; border-bottom: 1px solid #e7edf5; }
.scheduleModalHead h3 { margin: 0; color: #111; font-size: 2.1rem; font-weight: 800; }
.scheduleModalClose { display: grid; place-items: center; width: 3.6rem; height: 3.6rem; border: 0; border-radius: 50%; background: #f1f5f9; color: #111; font-size: 2.4rem; cursor: pointer; }
.scheduleModalBody { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.6rem; padding: 2.4rem; }
.scheduleModalFull { grid-column: 1 / -1; }
.scheduleModalBody label { display: grid; gap: .8rem; color: #26334a; font-size: 1.4rem; font-weight: 800; }
.scheduleModalBody input[type="text"], .scheduleModalBody input[type="date"], .scheduleModalBody input[type="number"], .scheduleModalBody textarea { width: 100%; min-height: 4.4rem; padding: 0 1.2rem; border: 1px solid #d8e1ee; border-radius: .8rem; background: #fff; color: #111; font: inherit; font-weight: 500; box-sizing: border-box; }
.scheduleModalBody textarea { min-height: 10rem; padding-top: 1.2rem; resize: vertical; line-height: 1.55; }
.scheduleModalRow { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.6rem; align-items: end; }
.scheduleModalCheck { display: flex !important; align-items: center; gap: .8rem !important; min-height: 4.4rem; padding: 0 1.2rem; border: 1px solid #d8e1ee; border-radius: .8rem; }
.scheduleAvailabilityField { min-width: 0; margin: 0; padding: 0; border: 0; }
.scheduleAvailabilityField legend { margin: 0 0 .8rem; padding: 0; color: #26334a; font-size: 1.4rem; font-weight: 800; }
.scheduleAvailabilityOptions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.scheduleAvailabilityOptions label { display: flex; align-items: center; justify-content: center; min-height: 4.4rem; padding: 0 1.2rem; border: 1px solid #d8e1ee; border-radius: .8rem; cursor: pointer; }
.scheduleAvailabilityOptions label:has(input:checked) { border-color: var(--main-color, #0f7dff); background: #f2f8ff; color: var(--main-color, #0f7dff); }
.scheduleAvailabilityOptions input { margin: 0; accent-color: var(--main-color, #0f7dff); }
.scheduleAvailabilityHelp { margin: .7rem 0 0; color: #667085; font-size: 1.2rem; font-weight: 500; line-height: 1.5; }
.scheduleModalFoot { display: flex; justify-content: flex-end; gap: .8rem; padding: 1.8rem 2.4rem 2.4rem; }
.scheduleModalFoot button { min-width: 8.4rem; height: 4.2rem; border: 0; border-radius: .8rem; font-size: 1.4rem; font-weight: 800; cursor: pointer; }
.scheduleSaveBtn { background: var(--main-color, #0f7dff); color: #fff; }
.scheduleCancelBtn { background: #eef2f7; color: #26334a; }
.scheduleDeleteBtn { margin-right: auto; background: #fee2e2; color: #b42318; }
.scheduleAdminGuide { border-color: rgba(15, 125, 255, .28); background: #f2f8ff; }

/* =============================================
   Responsive
============================================= */
@media(max-width:560px){
	.scheduleModal { padding: 1.2rem; }
	.scheduleModalBox { border-radius: 1.4rem; }
	.scheduleModalBody { grid-template-columns: 1fr; }
	.scheduleModalFull { grid-column: auto; }
	.scheduleModalRow { grid-template-columns: 1fr; }
	.scheduleModalFoot { flex-wrap: wrap; }
	.scheduleModalFoot button { flex: 1 1 auto; }
}

.scheduleSelectedItem + .scheduleSelectedItem { margin-top: 1rem; }
.scheduleSelectedItem.isEmpty strong { color: #475467; }

/* =============================================
   프로그램
============================================= */
.companyStatsAdminFloatingBtn { position: absolute; right: 24px; bottom: 24px; z-index: 9998; padding: 10px 14px; border: 0; border-radius: 6px; background: #111; color: #fff; font-size: 14px; line-height: 1.2; cursor: pointer; box-shadow: 0 10px 24px rgba(0,0,0,.24); }
.companyStatsAdminLayer[hidden] { display: none; }
.companyStatsAdminLayer { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 20px; }
.companyStatsAdminDim { position: absolute; inset: 0; background: rgba(0,0,0,.55); }
.companyStatsAdminBox { position: relative; width: min(380px, 100%); padding: 24px; border-radius: 8px; background: #fff; color: #111; box-shadow: 0 20px 50px rgba(0,0,0,.25); }
.companyStatsAdminBox h3 {margin: 0 0 18px;font-size: 2.5rem;font-weight: 700;}
.companyStatsAdminBox label { display: block; margin-top: 12px; }
.companyStatsAdminBox label span {display: block;margin-bottom: 6px;font-size: 1.8rem;font-weight: 600;}
.companyStatsAdminBox input[type="number"] {width: 100%;height: 42px;padding: 0 12px;border: 1px solid #ddd;border-radius: 4px;box-sizing: border-box;font-size: 1.7rem;}
.companyStatsAdminMsg { min-height: 20px; margin: 12px 0 0; color: #d33; font-size: 13px; }
.companyStatsAdminActions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 18px; }
.companyStatsAdminActions button {min-width: 72px;height: 38px;border: 0;border-radius: 4px;cursor: pointer;font-size: 1.5rem;}
.companyStatsAdminActions button[type="submit"] { background: #111; color: #fff; }

/* Process download admin modal */
.processDownloadAdminFloatingBtn { position: absolute; right: 24px; bottom: 24px; z-index: 9998; padding: 10px 14px; border: 0; border-radius: 6px; background: #111; color: #fff; font-size: 14px; line-height: 1.2; cursor: pointer; }
.processDownloadAdminLayer[hidden] { display: none; }
.processDownloadAdminLayer { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 20px; }
.processDownloadAdminDim { position: absolute; inset: 0; background: rgba(0,0,0,.55); }
.processDownloadAdminBox { position: relative; width: min(520px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; padding: 24px; border-radius: 8px; background: #fff; color: #111; box-shadow: 0 20px 50px rgba(0,0,0,.25); }
.processDownloadAdminBox h3 { margin: 0 0 18px; font-size: 2.5rem; font-weight: 700; }
.processDownloadAdminField { padding: 14px 0; border-top: 1px solid #e5e5e5; }
.processDownloadAdminField strong { display: block; margin-bottom: 6px; font-size: 15px; }
.processDownloadAdminField p { margin: 0 0 8px; color: #555; font-size: 13px; }
.processDownloadAdminField input[type="file"] { display: block; width: 100%; font-size: 13px; }
.processDownloadAdminDelete { display: inline-flex; align-items: center; gap: 6px; margin-top: 9px; color: #c22; font-size: 1.7rem; }
.processDownloadAdminMsg { min-height: 20px; margin: 12px 0 0; color: #d33; font-size: 13px; }
.processDownloadAdminActions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 18px; }
.processDownloadAdminActions button { min-width: 72px; height: 38px; border: 0; border-radius: 4px; cursor: pointer;font-size: 1.5rem; }
.processDownloadAdminActions button[type="submit"] { background: #111; color: #fff; }

/* =============================================
   홈페이지 이용안내
============================================= */
.guidePage{background:#fff;color:#1b2430;}
.guideLayout{display:grid;grid-template-columns:27rem minmax(0,1fr);align-items:start;gap:8rem;width:min(144rem,100%);margin:0 auto;}
.guideSide{position:sticky;top:12rem;padding:3rem;border:1px solid #e5eaf0;border-radius:0 2.4rem 2.4rem;background:#f8fafc;}
.guideLabel{display:block;color:#101828;font-size:1.35rem;font-weight:800;letter-spacing:.08em;}
.guideSide h2{margin:1rem 0 0;color:#101828;font-size:2.4rem;font-weight:800;letter-spacing:-.04em;}
.guideSide>p{margin:1.2rem 0 2.6rem;color:#667085;font-size:1.45rem;line-height:1.7;word-break:keep-all;}
.guideSide ul{margin:0;padding:0;border-top:1px solid #dfe5ec;list-style:none;}
.guideSide li{border-bottom:1px solid #dfe5ec;}
.guideSide a{position:relative;display:block;padding:1.6rem 2rem 1.6rem 0;color:#475467;font-size:1.55rem;font-weight:600;transition:color .2s ease;}
.guideSide a::after{content:'→';position:absolute;right:0;color:#98a2b3;}
.guideSide a:hover,.guideSide a.isActive{color:var(--main-color,#007aff);}
.guideSide a.isActive{font-weight:800;}
.guideDocument{min-width:0;padding:5.6rem 6rem;border:1px solid #e5eaf0;border-radius:2.8rem;background:#fff;box-shadow:0 2rem 6rem rgba(16,24,40,.05);}
.guideDocumentHead{margin-bottom:4.8rem;padding-bottom:3rem;border-bottom:2px solid #101828;}
.guideDocumentHead h2{margin:0;color:#101828;font-size:3.4rem;font-weight:800;letter-spacing:-.045em;}
.guideDocument h3{margin:5rem 0 1.8rem;padding-left:1.4rem;border-left:4px solid var(--main-color,#007aff);color:#101828;font-size:2rem;font-weight:800;line-height:1.5;letter-spacing:-.035em;}
.guideDocument h3.guideChapter{margin:6.4rem 0 2.4rem;padding:1.8rem 2.2rem;border:0;border-radius:1.2rem;background:#101828;color:#fff;}
.guideDocument h4{margin:4.2rem 0 1.5rem;color:#101828;font-size:2rem;font-weight:750;line-height:1.5;letter-spacing:-.035em;}
.guideDocument h4 span{color:inherit;}
.guideDocument p,.guideDocument li{color:#475467;font-size:1.62rem;font-weight:400;line-height:1.9;letter-spacing:-.02em;word-break:keep-all;}
.guideDocument p{margin:.72rem 0;}
.guideList{display:grid;gap:.72rem;margin:.72rem 0;padding:0;list-style:none;}
.guideListNumber li{padding-left:1.8rem;text-indent:-1.8rem;}
.guideListSub li{padding-left:2rem;color:#596579;}
.guideListBullet li{position:relative;padding-left:1.8rem;}
.guideListBullet li::before{content:'';position:absolute;left:.2rem;top:1.35rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--main-color,#007aff);}
.guideListAgency{margin-top:1.2rem;padding:2rem 2.2rem;border-radius:1.2rem;background:#f8fafc;}
.guideSupplement{margin-top:4rem!important;padding:2rem 2.2rem;border-radius:1.2rem;background:#f2f7ff;color:#344054!important;font-weight:700!important;}

/* =============================================
   Responsive
============================================= */
@media (max-width:1800px){
	.guidePage{width: calc(100% - 6%);margin: 0 3%;}
}

@media(max-width:1180px){
    .guideLayout{grid-template-columns:1fr;gap:3rem;}
    .guideSide{position:static;}
    .guideSide ul{display:grid;grid-template-columns:repeat(3,1fr);}
    .guideSide li+li{border-left:1px solid #dfe5ec;}
    .guideSide a{padding-right:1rem;text-align:center;}
    .guideSide a::after{display:none;}
}
@media(max-width:640px){
    .guideSide{padding:2.2rem;border-radius:0 1.8rem 1.8rem;}
    .guideSide ul{grid-template-columns:1fr;}
    .guideSide li+li{border-left:0;}
    .guideSide a{text-align:left;}
    .guideDocument{padding:3.2rem 2.2rem;border-radius:1.8rem;}
    .guideDocumentHead{margin-bottom:3.2rem;padding-bottom:2rem;}
    .guideDocumentHead h2{font-size:2.7rem;}
    .guideDocument h3.guideChapter{margin-top:4.5rem;font-size:1.75rem;}
    .guideDocument h3,.guideDocument h4{font-size:1.75rem;}
    .guideDocument p,.guideDocument li{font-size:1.48rem;line-height:1.85;word-break:normal;}
}


/* =============================================
   Simulation Case 10
============================================= */
.simCaseItem .simPanelIn{display: grid;}
.simCaseIn{}
.simCaseCards{display:grid;gap:1.6rem;margin-bottom:3rem;}
.simCaseCards article{position:relative;min-width:0;padding:1.75rem 2.4rem;border:1px solid #dfe6f0;border-radius:1.8rem;background:#fff;}
.simCaseCards article::after{content: "";position: absolute;inset: 0;width: 50px;height: 50px;background: url(../img/content/3-1goveicon02.png) no-repeat;top: 65px;background-size: 100%;transform: rotate(90deg);left: 30%;z-index: 1;}
.simCaseCards article:last-child::after{display:none;}
.simCaseCards strong{display:block;color:#111;font-size:clamp(1.9rem,1vw,2.4rem);font-weight:800;line-height:1.25;letter-spacing:-.045em;}
.simCaseCards p{margin:0.2rem 0 0;color:#667085;font-size:1.55rem;font-weight:500;line-height:1.6;letter-spacing:-.035em;word-break:keep-all;}
.simTableGWrap{display: grid;grid-template-columns: 22rem minmax(0, 1fr);gap: 2rem;align-items: start;}
.simCaseStd{margin-bottom:3rem;padding: clamp(2.6rem,2vw,4rem);border-radius:2.2rem;background:#111;color:#fff;overflow:hidden;}
.simCaseStdHead{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem;}
.simCaseStdHead h4{margin:0;color:#fff;font-size:clamp(2.4rem,1.8vw,3.2rem);font-weight:800;line-height:1.2;letter-spacing:-.045em;}
.simCaseStdHead p{margin:0;color:rgba(255,255,255,.72);font-size:1.55rem;font-weight:500;line-height:1.5;letter-spacing:-.035em;word-break:keep-all;}
.simCaseTableWrap{overflow-x:auto;border-radius:1.4rem;background:#fff;}
.simCaseTable{width:100%;min-width:64rem;border-collapse:collapse;background:#fff;color:#111;}
.simCaseTable caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0;}
.simCaseTable th,.simCaseTable td{padding: 0.9rem 1.6rem;border:1px solid #d9e0eb;color:#111;font-size:1.45rem;font-weight:600;line-height:1.45;text-align:center;vertical-align:middle;letter-spacing:-.035em;}
.simCaseTable thead th{background:#f2f5fa;font-weight:900;}
.simCaseTable tbody th{background:#f8fafc;font-weight:800;word-break:keep-all;}
.simCaseTable tbody th span{display:block;margin-top:.4rem;color:#6b7280;font-size:.9em;font-weight:600;}
.simCaseCol01{width:30%;}.simCaseCol02{width:16%;}.simCaseCol03{width:12%;}.simCaseCol04{width:12%;}.simCaseCol05{width:30%;}
.simCaseGallery{display:grid;grid-template-columns:minmax(0,1fr) 18rem;gap:2rem;align-items:start;}
.simCaseGallery .simView{height:clamp(38rem,44vw,70rem);padding:3rem;background:#fff;}
.simCaseGallery .simThumb{margin-top:0;}

@media(max-width:1280px){
	.simTableGWrap {grid-template-columns: 1fr;}
	.simCaseItem .simPanelIn {grid-template-columns: 1fr;gap: 0;}
	.simCaseCards{grid-template-columns:repeat(3,minmax(0,1fr));}
	.simCaseCards article::after {top: 35%;transform: rotate(0deg); left: 95%;}
	.simCasePic img{max-height:46rem;}
}
@media(max-width:768px){
	.simCaseCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;}
	.simCaseCards article:nth-child(even)::after {display:none;}
	.simCaseStd{padding:2.4rem 1.8rem;border-radius:1.8rem;}
	.simCaseStdHead{display:block;}
	.simCaseStdHead p{margin-top:1rem;}
	.simCaseGallery{grid-template-columns:1fr;}
	.simCaseGallery .simThumb{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;}
}
@media(max-width:560px){
	.simCaseCards article{padding:2rem;}
	.simCaseTable th,.simCaseTable td{padding:1.2rem 1rem;font-size:1.35rem;}
	.simCaseCards article::after {left: 89%;}	
	.simCaseTable {min-width: 55rem;}
	.simCaseGallery .simView{height:100%;}
}
