@charset "utf-8";
/* reset — 기본 세팅 · 색 · 간격 · 글자 토큰 */
/* 변수 */
:root {
	/* 기준 */
	--inner: 1920;
	--shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.08);
	--font-sans: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--container: 1200px;
	/* 글자 */
	--font-size-11: clamp(10px, calc(11 / var(--inner) * 100vw), 11px);
	--font-size-12: clamp(11px, calc(12 / var(--inner) * 100vw), 12px);
	--font-size-13: clamp(12px, calc(13 / var(--inner) * 100vw), 13px);
	--font-size-14: clamp(13px, calc(14 / var(--inner) * 100vw), 14px);
	--font-size-15: clamp(14px, calc(15 / var(--inner) * 100vw), 15px);
	--font-size-16: clamp(14px, calc(16 / var(--inner) * 100vw), 16px);
	--font-size-17: clamp(15px, calc(17 / var(--inner) * 100vw), 17px);
	--font-size-18: clamp(15px, calc(18 / var(--inner) * 100vw), 18px);
	--font-size-19: clamp(15px, calc(19 / var(--inner) * 100vw), 19px);
	--font-size-20: clamp(16px, calc(20 / var(--inner) * 100vw), 20px);
	--font-size-22: clamp(17px, calc(22 / var(--inner) * 100vw), 22px);
	--font-size-23: clamp(17px, calc(23 / var(--inner) * 100vw), 23px);
	--font-size-24: clamp(18px, calc(24 / var(--inner) * 100vw), 24px);
	--font-size-25: clamp(18px, calc(25 / var(--inner) * 100vw), 25px);
	--font-size-26: clamp(19px, calc(26 / var(--inner) * 100vw), 26px);
	--font-size-28: clamp(19px, calc(28 / var(--inner) * 100vw), 28px);
	--font-size-30: clamp(20px, calc(30 / var(--inner) * 100vw), 30px);
	--font-size-32: clamp(22px, calc(32 / var(--inner) * 100vw), 32px);
	--font-size-33: clamp(23px, calc(33 / var(--inner) * 100vw), 33px);
	--font-size-34: clamp(24px, calc(34 / var(--inner) * 100vw), 34px);
	--font-size-35: clamp(25px, calc(35 / var(--inner) * 100vw), 35px);
	--font-size-36: clamp(24px, calc(36 / var(--inner) * 100vw), 36px);
	--font-size-40: clamp(27px, calc(40 / var(--inner) * 100vw), 40px);
	--font-size-42: clamp(24px, calc(42 / var(--inner) * 100vw), 42px);
	--font-size-44: clamp(26px, calc(44 / var(--inner) * 100vw), 44px);
	--font-size-45: clamp(27px, calc(45 / var(--inner) * 100vw), 45px);
	--font-size-48: clamp(28px, calc(48 / var(--inner) * 100vw), 48px);
	--font-size-50: clamp(29px, calc(50 / var(--inner) * 100vw), 50px);
	--font-size-52: clamp(30px, calc(52 / var(--inner) * 100vw), 52px);
	--font-size-56: clamp(32px, calc(56 / var(--inner) * 100vw), 56px);
	--font-size-64: clamp(37px, calc(64 / var(--inner) * 100vw), 64px);
	/* 간격 */
	--space-1: clamp(1px, calc(1 / var(--inner) * 100vw), 1px);
	--space-2: clamp(1px, calc(2 / var(--inner) * 100vw), 2px);
	--space-3: clamp(2px, calc(3 / var(--inner) * 100vw), 3px);
	--space-4: clamp(3px, calc(4 / var(--inner) * 100vw), 4px);
	--space-5: clamp(4px, calc(5 / var(--inner) * 100vw), 5px);
	--space-6: clamp(3px, calc(6 / var(--inner) * 100vw), 6px);
	--space-7: clamp(4px, calc(7 / var(--inner) * 100vw), 7px);
	--space-8: clamp(5px, calc(8 / var(--inner) * 100vw), 8px);
	--space-9: clamp(6px, calc(9 / var(--inner) * 100vw), 9px);
	--space-10: clamp(5px, calc(10 / var(--inner) * 100vw), 10px);
	--space-11: clamp(6px, calc(11 / var(--inner) * 100vw), 11px);
	--space-12: clamp(7px, calc(12 / var(--inner) * 100vw), 12px);
	--space-13: clamp(8px, calc(13 / var(--inner) * 100vw), 13px);
	--space-14: clamp(7px, calc(14 / var(--inner) * 100vw), 14px);
	--space-15: clamp(8px, calc(15 / var(--inner) * 100vw), 15px);
	--space-16: clamp(9px, calc(16 / var(--inner) * 100vw), 16px);
	--space-17: clamp(10px, calc(17 / var(--inner) * 100vw), 17px);
	--space-18: clamp(9px, calc(18 / var(--inner) * 100vw), 18px);
	--space-19: clamp(10px, calc(19 / var(--inner) * 100vw), 19px);
	--space-20: clamp(11px, calc(20 / var(--inner) * 100vw), 20px);
	--space-22: clamp(12px, calc(22 / var(--inner) * 100vw), 22px);
	--space-23: clamp(13px, calc(23 / var(--inner) * 100vw), 23px);
	--space-24: clamp(12px, calc(24 / var(--inner) * 100vw), 24px);
	--space-25: clamp(13px, calc(25 / var(--inner) * 100vw), 25px);
	--space-26: clamp(14px, calc(26 / var(--inner) * 100vw), 26px);
	--space-27: clamp(15px, calc(27 / var(--inner) * 100vw), 27px);
	--space-28: clamp(14px, calc(28 / var(--inner) * 100vw), 28px);
	--space-29: clamp(15px, calc(29 / var(--inner) * 100vw), 29px);
	--space-30: clamp(16px, calc(30 / var(--inner) * 100vw), 30px);
	--space-32: clamp(17px, calc(32 / var(--inner) * 100vw), 32px);
	--space-35: clamp(18px, calc(35 / var(--inner) * 100vw), 35px);
	--space-36: clamp(19px, calc(36 / var(--inner) * 100vw), 36px);
	--space-37: clamp(20px, calc(37 / var(--inner) * 100vw), 37px);
	--space-40: clamp(21px, calc(40 / var(--inner) * 100vw), 40px);
	--space-43: clamp(22px, calc(43 / var(--inner) * 100vw), 43px);
	--space-45: clamp(23px, calc(45 / var(--inner) * 100vw), 45px);
	--space-48: clamp(24px, calc(48 / var(--inner) * 100vw), 48px);
	--space-50: clamp(25px, calc(50 / var(--inner) * 100vw), 50px);
	--space-55: clamp(28px, calc(55 / var(--inner) * 100vw), 55px);
	--space-56: clamp(29px, calc(56 / var(--inner) * 100vw), 56px);
	--space-60: clamp(30px, calc(60 / var(--inner) * 100vw), 60px);
	--space-63: clamp(32px, calc(63 / var(--inner) * 100vw), 63px);
	--space-66: clamp(33px, calc(66 / var(--inner) * 100vw), 66px);
	--space-70: clamp(35px, calc(70 / var(--inner) * 100vw), 70px);
	--space-80: clamp(40px, calc(80 / var(--inner) * 100vw), 80px);
	--space-90: clamp(45px, calc(90 / var(--inner) * 100vw), 90px);
	--space-100: clamp(50px, calc(100 / var(--inner) * 100vw), 100px);
	--space-110: clamp(55px, calc(110 / var(--inner) * 100vw), 110px);
	--space-120: clamp(60px, calc(120 / var(--inner) * 100vw), 120px);
	--space-130: clamp(65px, calc(130 / var(--inner) * 100vw), 130px);
	--space-140: clamp(70px, calc(140 / var(--inner) * 100vw), 140px);
	--space-150: clamp(75px, calc(150 / var(--inner) * 100vw), 150px);
	--space-160: clamp(80px, calc(160 / var(--inner) * 100vw), 160px);
	--space-170: clamp(85px, calc(170 / var(--inner) * 100vw), 170px);
	--space-180: clamp(90px, calc(180 / var(--inner) * 100vw), 180px);
	--space-200: clamp(100px, calc(200 / var(--inner) * 100vw), 200px);
	--space-240: clamp(20px, calc(240 / var(--inner) * 100vw), 240px);
	--container-space: var(--space-240);
	/* 색 */
	--color-primary: #0070c9;
	--color-secondary: #4A58A3;
	--color-brand: #0070c9;
	--color-brand-dark: #005999;
	--color-title: #2c2c2c;
	--color-body: #505050;
	--color-body-muted: #676767;
	--color-text: #2c2c2c;
	--color-text-muted: #676767;
	--color-line: #eeeeee;
	--color-line-strong: #dfdfdf;
	--color-border: #dfdfdf;
	--color-border-light: #eeeeee;
	--color-bg-soft: #f7f7f7;
	--color-navy: #0a1628;
	--color-navy-soft: #132238;
	/* 둥글기 */
	--radius-2: 2px;
	--radius-4: 4px;
	--radius-6: 6px;
	--radius-8: 8px;
	--radius-10: 10px;
	--radius-15: clamp(8px, calc(15 / var(--inner) * 100vw), 15px);
	--radius-16: clamp(8px, calc(16 / var(--inner) * 100vw), 16px);
	--radius-18: clamp(9px, calc(18 / var(--inner) * 100vw), 18px);
	--radius-20: clamp(10px, calc(20 / var(--inner) * 100vw), 20px);
	--radius-24: clamp(12px, calc(24 / var(--inner) * 100vw), 24px);
	--radius-30: clamp(15px, calc(30 / var(--inner) * 100vw), 30px);
	--radius-32: clamp(16px, calc(32 / var(--inner) * 100vw), 32px);
	--radius-40: clamp(20px, calc(40 / var(--inner) * 100vw), 40px);
	--radius-50: clamp(25px, calc(50 / var(--inner) * 100vw), 50px);
	--radius-lg: 24px;
	--radius-pill: 999px;
	/* 헤더 */
	--header-height: 88px;
	--lnb-height: clamp(48px, calc(60 / var(--inner) * 100vw), 60px);
	--header-inset-x: var(--space-100);
	--header-logo-height: 64px;
	--header-gnb-gap: var(--space-80);
	--header-gnb-font-size: var(--font-size-20);
	--header-gnb-line-height: 34px;
	--header-gnb-weight: 600;
	--header-gnb-color: #2c2c2c;
	--lnb-font-size: var(--font-size-18);
	--lnb-line-height: 28px;
	--lnb-color: #676767;
	--lnb-color-hover: #0070c9;
	--header-height-md: 72px;
	--header-height-sm: 64px;
	--header-height-xs: 56px;
	/* 히어로 */
	--hero-height-min-sm: 240px;
	--hero-width-ref: 1920;
	--hero-height-ref: 854;
	--hero-artboard-width: 1920px;
	--hero-height-aspect: calc(100vw * var(--hero-height-ref) / var(--hero-width-ref));
	--hero-height-max: 854px;
	--hero-height-viewport: calc(100vh - var(--header-height));
	--hero-height: min(var(--hero-height-max), var(--hero-height-aspect));
	--hero-wide-min-width: 1920px;
	--hero-bar-padding-bottom: var(--space-36);
	--hero-dot-size: 8px;
	--hero-dot-active-width: 32px;
	--hero-dot-gap: var(--space-10);
	--hero-fade-ms: 800ms;
	--hero-autoplay-ms: 5500ms;
	--hero-ease: ease-in-out;
	--hero-caption-out-ms: calc(var(--hero-fade-ms) * 0.35);
	--hero-caption-in-ms: calc(var(--hero-fade-ms) * 0.55);
	--hero-caption-unlock-ratio: 0.45;
	--hero-caption-shift: 12px;
	--hero-dot-transition-ms: calc(var(--hero-fade-ms) * 0.4);
	--hero-ken-burns-duration: 16s;
	--hero-ken-burns-scale: 1.05;
	--hero-title-line-stagger-ms: 90ms;
	--hero-title-width: min(692px, calc(100% - 48px));
	--hero-title-size: clamp(32px, calc(64 / 1920 * 100vw), 64px);
	--hero-title-size-max: var(--font-size-64);
	--hero-title-leading: 1.3125;
	--hero-title-leading-px: 84px;
	--hero-title-weight: 600;
	--hero-title-color: #ffffff;
	/* 메인 */
	--main-product-photo-fade-ms: 360ms;
	--main-header-scroll-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
	--main-product-head-gap: var(--space-100);
	--main-product-layout-max: 1720px;
	--main-product-layout-gap: var(--space-80);
	--main-product-layout-columns: repeat(2, minmax(0, 1fr));
	--main-product-visual-width: 720px;
	--main-product-visual-ratio: 720 / 540;
	--main-product-visual-bg: linear-gradient(145deg, #f5f9fc 0%, #e8eef4 46%, #d2dfea 100%);
	--main-product-visual-inset: var(--space-40);
	--main-product-photo-radius: 16px;
	--main-product-panel-max: none;
	--main-product-tab-height: 48px;
	--main-product-tab-gap: var(--space-8);
	--main-product-tab-padding-x: var(--space-22);
	--main-product-tab-padding-y: var(--space-10);
	--main-product-tab-font-size: var(--font-size-18);
	--main-product-tab-line-height: 28px;
	--main-product-tab-inactive-bg: #f2f2f2;
	--main-product-tab-inactive-color: #2c2c2c;
	--main-product-tab-inactive-weight: 500;
	--main-product-tab-active-weight: 600;
	--main-product-tab-to-name: var(--space-48);
	--main-product-name-size: var(--font-size-64);
	--main-product-name-line-height: 72px;
	--main-product-name-weight: 600;
	--main-product-name-to-desc: var(--space-32);
	--main-product-desc-size: var(--font-size-20);
	--main-product-desc-line-height: 34px;
	--main-product-desc-gap: 0;
	--main-product-desc-block-gap: var(--space-12);
	--main-product-foot-gap: var(--space-48);
	--main-product-cta-bg: #1a1a1a;
	--main-product-cta-color: #ffffff;
	--main-product-cta-height: 54px;
	--main-product-cta-font-size: var(--font-size-18);
	--main-product-cta-line-height: 28px;
	--main-product-cta-font-weight: 600;
	--main-product-cta-padding-top: var(--space-14);
	--main-product-cta-padding-bottom: var(--space-14);
	--main-product-cta-padding-left: var(--space-24);
	--main-product-cta-padding-right: var(--space-24);
	--main-product-cta-radius: 8px;
	--main-product-cta-gap: var(--space-16);
	--main-product-cta-icon-color: var(--main-product-cta-color);
	--main-product-cta-icon-size: 8px;
	--main-product-cta-icon-weight: 2px;
	--main-product-pager-gap: var(--space-10);
	--main-product-pager-btn-size: 52px;
	--main-product-pager-btn-bg: #ffffff;
	--main-product-pager-btn-border: #eeeeee;
	--main-product-pager-icon-width: 8px;
	--main-product-pager-icon-height: 13px;
	--main-product-pager-icon-color: #676767;
	--main-product-eyebrow-size: var(--font-size-18);
	--main-product-eyebrow-line-height: 28px;
	--main-product-eyebrow-weight: 500;
	--main-product-eyebrow-color: #0070c9;
	--main-product-title-size: var(--font-size-56);
	--main-product-title-line-height: 70px;
	--main-product-title-weight: 600;
	--main-product-title-color: #2c2c2c;
	/* 푸터 */
	--footer-bg: #121212;
	--footer-logo-height: 60px;
	--footer-padding-y: var(--space-40);
	--footer-padding-bottom: var(--space-32);
	--footer-min-height: 266px;
	--footer-top-gap: var(--space-50);
	--footer-meta-gap: var(--space-40);
	--footer-copyright-padding-top: var(--space-20);
	--footer-info-font-size: var(--font-size-20);
	--footer-info-line-height: 34px;
	--footer-info-block-min-height: 78px;
	--footer-info-row-gap: var(--space-10);
	--footer-info-label-gap: var(--space-10);
	--footer-info-item-gap: var(--space-48);
	--footer-info-text-color: rgba(255, 255, 255, 0.8);
	--footer-info-label-color: rgba(255, 255, 255, 0.4);
	--footer-info-label-weight: 500;
	--footer-meta-btn-gap: var(--space-12);
	--footer-nav-font-size: var(--font-size-18);
	--footer-nav-line-height: 28px;
	--footer-nav-weight: 500;
	--footer-nav-gap: var(--space-32);
	--footer-nav-color: #ffffff;
	--footer-top-btn-size: 64px;
	--footer-top-btn-radius: 8px;
	--footer-top-btn-bg: linear-gradient(135deg, #01e9dd 0%, #0070c9 100%);
	--footer-top-btn-bg-hover: linear-gradient(135deg, #01e9dd 0%, #0070c9 100%);
	--footer-top-icon-width: 24px;
	--footer-top-icon-height: 24px;
	--footer-copyright-font-size: var(--font-size-16);
	--footer-copyright-line-height: 26px;
	--footer-copyright-color: rgba(255, 255, 255, 0.64);
	--footer-design-credit-color: #222222;
	--footer-copyright-font-weight: 400;
	--footer-copyright-credit-gap: var(--space-8);
	--footer-divider: rgba(255, 255, 255, 0.14);
	/* 서브비주얼 */
	--sub-visual-bg: #0070c9;
	--sub-visual-color: #ffffff;
	--sub-visual-title-size: var(--font-size-40);
	--sub-visual-title-weight: 600;
	--sub-visual-height: 480px;
	--sub-visual-height-fluid: clamp(200px, calc(480 / 1920 * 100vw), 480px);
	--sub-visual-overlay: transparent;
	--sub-visual-eyebrow-size: var(--font-size-18);
	--sub-visual-eyebrow-line-height: 28px;
	--sub-visual-eyebrow-weight: 500;
	--sub-visual-eyebrow-opacity: 0.8;
	--sub-visual-band-title-size: var(--font-size-64);
	--sub-visual-band-title-line-height: 78px;
	--sub-visual-band-title-weight: 600;
	--sub-visual-tab-gap: var(--space-8);
	--sub-visual-tab-font-size: var(--font-size-18);
	--sub-visual-tab-line-height: 28px;
	--sub-visual-tab-padding-x: var(--space-22);
	--sub-visual-tab-padding-y: var(--space-10);
	--sub-visual-tab-active-bg: #0070c9;
	--sub-visual-tabs-offset-bottom: var(--space-48);
	/* 서브페이지 */
	--sub-page-head-bg: #ffffff;
	--sub-page-head-padding-top: var(--space-120);
	--sub-page-head-padding-bottom: var(--space-100);
	--sub-page-head-title-size: var(--font-size-52);
	--sub-page-head-title-line-height: 66px;
	--sub-page-head-title-weight: 600;
	--sub-page-head-title-color: #2c2c2c;
	--sub-page-head-intro-gap: var(--space-32);
	--sub-page-head-border: #eeeeee;
	--sub-page-body-bg: #ffffff;
	--sub-page-body-padding-top: 0;
	--sub-page-body-padding-bottom: var(--space-140);
	/* 오시는 길 */
	--location-map-height: 560px;
	--location-map-base-width: 1440px;
	--location-map-base-height: 560px;
	--location-map-radius: 16px;
	--location-map-contact-gap: var(--space-40);
	--location-contact-item-min-height: 120px;
	--location-contact-padding: var(--space-28);
	--location-contact-icon-gap: var(--space-20);
	--location-contact-icon-box-size: 48px;
	--location-contact-icon-box-bg: #f1f1f1;
	--location-contact-icon-box-radius: 8px;
	--location-contact-icon-size: 20px;
	--location-contact-label-size: var(--font-size-22);
	--location-contact-label-line-height: 36px;
	--location-contact-label-weight: 500;
	--location-contact-label-color: #2c2c2c;
	--location-contact-label-value-gap: 0;
	--location-contact-value-size: var(--font-size-20);
	--location-contact-value-line-height: 34px;
	--location-contact-value-weight: 400;
	--location-contact-value-color: #505050;
	/* 제품 */
	--product-section-gap: var(--space-80);
	--product-table-border: #eeeeee;
	--product-table-th-bg: #fafafa;
	--product-title-color: #2c2c2c;
	--product-muted-color: #676767;
	--product-accent: #0070c9;
	--product-tab-font-size: var(--font-size-20);
	--product-tab-line-height: 34px;
	--product-tab-font-weight: 500;
	--product-tab-color-inactive: #878787;
	--product-tab-active-weight: 600;
	--product-tab-gap: var(--space-40);
	--product-tab-padding-x: 0;
	--product-tab-bar-color: #eeeeee;
	--product-tab-indicator-height: 2px;
	--product-tab-padding-y: var(--space-14);
	--product-tab-min-height: 64px;
	--product-tab-figma7522-height: 51px;
	--product-tab-figma7522-max-width: 1440px;
	--product-tab-figma7525-padding-x: var(--space-20);
	--product-tab-figma7525-padding-bottom: var(--space-16);
	--product-detail-visual-bg: var(--main-product-visual-bg);
	--product-figma7392-layout-max: 1720px;
	--product-figma7392-image-width: 560px;
	--product-figma7392-image-height: 605px;
	--product-figma7392-hero-gap: var(--space-60);
	--product-figma7392-tabs-to-detail: var(--space-60);
	--product-figma7392-section-gap: var(--space-60);
	--product-figma7392-title-size: var(--font-size-40);
	--product-figma7392-title-line-height: 54px;
	--product-figma7392-title-weight: 500;
	--product-figma7392-title-color: #2c2c2c;
	--product-figma7392-model-size: var(--font-size-20);
	--product-figma7392-model-line-height: 34px;
	--product-figma7392-model-weight: 400;
	--product-figma7392-model-color: #676767;
	--product-figma7392-cap-photo-size: 258px;
	--product-figma7392-section-title-size: var(--font-size-28);
	--product-figma7392-section-title-line-height: 42px;
	--product-figma7392-section-title-weight: 500;
	--product-figma7392-section-title-color: #2c2c2c;
	--product-figma7392-section-title-gap: var(--space-24);
	--product-figma7392-part-caption-size: var(--font-size-20);
	--product-figma7392-part-caption-line-height: 34px;
	--product-figma7392-part-caption-weight: 500;
	--product-figma7392-part-caption-color: #2c2c2c;
	--product-figma7392-valve-photo-width: 400;
	--product-figma7392-valve-photo-height: 258;
	--product-figma7392-title-to-model: var(--space-10);
	--product-figma7392-block-gap: var(--space-80);
	--product-figma7392-accessories-gap: var(--space-80);
	--product-figma7392-spec-heading-bg: #e8f4fc;
	--product-figma7392-spec-heading-color: #0070c9;
	--product-figma7392-spec-radius: 12px;
	--product-figma7392-spec-heading-size: var(--font-size-20);
	--product-figma7392-spec-heading-line-height: 34px;
	--product-figma7392-spec-heading-weight: 500;
	--product-figma7392-spec-heading-padding-y: var(--space-14);
	--product-figma7392-spec-heading-padding-x: var(--space-24);
	--product-figma7392-spec-body-size: var(--font-size-18);
	--product-figma7392-spec-body-line-height: 28px;
	--product-figma7392-spec-label-weight: 500;
	--product-figma7392-spec-label-bg: #fafafa;
	--product-figma7392-spec-label-color: #2c2c2c;
	--product-figma7392-spec-value-weight: 400;
	--product-figma7392-spec-value-color: #676767;
	--product-figma7392-spec-cell-padding-y: var(--space-16);
	--product-figma7392-spec-cell-padding-x: var(--space-24);
	--product-figma7392-spec-group-gap: var(--space-24);
	--product-figma7392-un-gap: var(--space-24);
	--product-figma7665-un-max-width: 820px;
	--product-figma7665-un-height: 72px;
	--product-figma7665-un-padding: var(--space-16);
	--product-figma7665-un-icon-size: 40px;
	--product-figma7665-un-icon-gap: var(--space-12);
	--product-figma7665-un-radius: 12px;
	--product-figma7665-un-bg: #000;
	--product-figma7665-un-font-size: var(--font-size-18);
	--product-figma7665-un-line-height: 28px;
	--product-figma7665-un-font-weight: 500;
	/* 게시판 */
	--board-notice-search-margin-bottom: var(--space-20);
	--board-notice-list-border-top: #2c2c2c;
	--board-notice-th-color: #2c2c2c;
	--board-notice-th-bg: #fafafa;
	--board-notice-row-border: #eeeeee;
	--board-notice-subject-color: #2c2c2c;
	--board-notice-table-paginate-gap: var(--space-60);
	--board-notice-write-btn-height: 44px;
	--board-notice-paginate-color: #555555;
}
/* 기본 */
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
:after, :before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,input,textarea,button,select,figure,figcaption { margin: 0; padding: 0; }
body { font-family: 'Pretendard',sans-serif; font-size: var(--font-size-16); font-weight: 400; line-height: 1.75em; color: #121212; word-break: keep-all; -webkit-text-size-adjust: none; }
input,textarea,select,button,table { font-family: inherit; font-size: inherit; line-height: inherit; }
img { border: 0; max-width: 100%; vertical-align: top; }
ul,ol { list-style: none; }
fieldset { border: none; }
fieldset legend { overflow: hidden; width: 0; height: 0; margin: 0; padding: 0; font-size: 0; line-height: 0; text-indent: -999em; }
button { cursor: pointer; }
header,hgroup,article,nav,footer,figure,figcaption,canvas,section,time { display: block; }
hr { clear: both; display: none; }
img[usemap] { border: none; height: auto; max-width: 100%; width: auto; }
a { color: inherit; text-decoration: none; -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -ms-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
a:hover, a:active { -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -ms-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
::-webkit-input-placeholder { color: #9F9F9F; }
:-moz-placeholder { color: #9F9F9F; }
::-moz-placeholder { color: #9F9F9F; }
:-ms-input-placeholder { color: #9F9F9F; }
:placeholder-shown { color: #9F9F9F; }
table caption { overflow: hidden; width: 0; height: 0; margin: 0; padding: 0; font-size: 0; line-height: 0; text-indent: -999em; }
input[type="radio"], input[type="checkbox"] { vertical-align: middle !important; margin: -.2em var(--space-3) 0 0 !important; }
input,select { vertical-align: middle; background: #fff; }
input,textarea,button { -webkit-appearance: none; -webkit-border-radius: 0; }
input[type='checkbox'] { -webkit-appearance: checkbox; }
input[type='radio'] { -webkit-appearance: radio; }
h1,h2,h3,h4,h5,h6,strong,th,.bold { font-weight: 700; }
.semibold { font-weight: 500; }
.clear { clear: both; }
.clearfix:after { content: " "; display: block; clear: both; }
.blind { position: absolute; overflow: hidden; width: 0; height: 0; margin: 0; padding: 0; font-size: 0; line-height: 0; }
.pointer { cursor: pointer; }
.input { height: 44px; padding: var(--space-6) var(--space-16); color: #505050; font-size: var(--font-size-15); line-height: 1.5em; border: 1px solid #ddd; border-radius: 4px; }
.input[readonly] { background-color: #e8e8e8; color: #aaaaaa; }
.input.datepicker { padding-right: var(--space-40); background: #fff url('../images/bbs/datepicker_icon.png') right 10px center no-repeat; }
textarea.input { height: auto; padding: var(--space-13) var(--space-16); overflow: auto; resize: none; }
select.input { padding-right: var(--space-40); background: #fff url('../images/bbs/select.svg') right 14px center no-repeat; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select.input::-ms-expand { display: none; }
input[type=file].input { padding: 0; }
input[type=password] { font-family: "Noto Sans KR",sans-serif; }
.mgb2 { margin-bottom: var(--space-2) !important; }
.mgb3 { margin-bottom: var(--space-3) !important; }
.mgb4 { margin-bottom: var(--space-4) !important; }
.mgb5 { margin-bottom: var(--space-5) !important; }
.mgb6 { margin-bottom: var(--space-6) !important; }
.mgb7 { margin-bottom: var(--space-7) !important; }
.mgb8 { margin-bottom: var(--space-8) !important; }
.mgb9 { margin-bottom: var(--space-9) !important; }
.mgb10 { margin-bottom: var(--space-10) !important; }
.mgb15 { margin-bottom: var(--space-15) !important; }
.mgb20 { margin-bottom: var(--space-20) !important; }
.mgb30 { margin-bottom: var(--space-30) !important; }
.mgb40 { margin-bottom: var(--space-40) !important; }
.mgb50 { margin-bottom: var(--space-50) !important; }
.mgb60 { margin-bottom: var(--space-60) !important; }
.fl { float: left; }
.fr { float: right; }
.space-center { text-align: center !important; }
.space-right { text-align: right !important; }
.space-left { text-align: left !important; }
.inline-block { display: inline-block; }
.video-container { position: relative; padding-bottom: 56.25%; overflow: hidden; }
.video-container video, .video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.radiobox { display: inline-block; position: relative; vertical-align: middle; margin-top: -.2em; }
.radiobox input { position: absolute; top: 0; left: 0; width: 0; height: 0; border: 0; opacity: 0; z-index: -1; }
.radiobox label { display: inline-block; }
.radiobox label:before { content: ""; display: inline-block; vertical-align: middle; margin: -.2em var(--space-8) 0 0; width: 20px; height: 20px; background-color: #fff; border: 1px solid #ccc; border-radius: 100%; }
.radiobox input:checked + label:before { background: #fff url("../images/bbs/radiobox.svg") 50% 50% no-repeat; background-size: 10px; border-color: var(--color-primary); }
.radiobox input:focus + label:before { outline: 2px solid highlight; }
.checkbox { display: inline-block; position: relative; vertical-align: middle; margin-top: -.2em; }
.checkbox input { position: absolute; top: 0; left: 0; width: 0; height: 0; border: 0; opacity: 0; z-index: -1; }
.checkbox label { display: inline-block; }
.checkbox label:before { content: ""; display: inline-block; vertical-align: middle; margin: -.2em var(--space-8) 0 0; width: 20px; height: 20px; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; }
.checkbox input:checked + label:before { background: var(--color-primary) url("../images/bbs/checkbox.svg") 50% 50% no-repeat; border-color: var(--color-primary); }
.checkbox input:focus + label:before { outline: 2px solid highlight; }
.table-responsive { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.text-primary { color: var(--color-primary); }
.text-secondary { color: var(--color-secondary); }
.text-danger { color: #ff3838; }
.text-gradient { display: inline-block; background: linear-gradient(to right, var(--color-primary), var(--color-secondary)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.text-dark { color: #242424; }
.ui-datepicker { z-index: 2 !important; display: none; background: #fff; margin-top: var(--space-2); border-radius: 10px; padding: 0 var(--space-8) var(--space-8); width: 250px; box-shadow: 0 0 3px rgba(0,0,0,.3); }
.ui-datepicker-header { position: relative; margin: 0 calc(var(--space-8) * -1) var(--space-6); padding: var(--space-5) 0; background: var(--color-primary); border-radius: 10px 10px 0 0; }
.ui-datepicker-prev, .ui-datepicker-next { position: absolute; width: 32px; height: 32px; top: 50%; cursor: pointer; margin-top: calc(var(--space-16) * -1); border-radius: 100%; overflow: hidden; text-indent: -999em; background-position: 50% 50%; background-repeat: no-repeat; }
.ui-datepicker-prev { left: 0; background-image: url("../images/bbs/datepicker_prev.png"); }
.ui-datepicker-next { right: 0; background-image: url("../images/bbs/datepicker_next.png"); }
.ui-datepicker-title { text-align: center; color: #fff; font-size: var(--font-size-18); line-height: 30px; font-weight: 500; }
.ui-datepicker-title select { border: 0; margin: -.2em var(--space-2) 0; width: 70px; height: 30px; color: #000; font-size: var(--font-size-15); padding: 0 var(--space-10) 0 var(--space-6); vertical-align: middle; }
.ui-datepicker-calendar { width: 100%; border-collapse: collapse; border-spacing: 0px; }
.ui-datepicker-calendar th { padding: var(--space-2) 0; text-align: center; font-size: var(--font-size-14); font-weight: 500; line-height: 30px; color: #222; }
.ui-datepicker-calendar td { padding: 0; text-align: center; font-size: var(--font-size-13); font-weight: 400; line-height: 30px; color: #666; }
.ui-datepicker-calendar .ui-state-default { display: inline-block; width: 30px; border-radius: 4px; }
.ui-datepicker-calendar .ui-state-hover { background-color: #eee; color: #222; }
.ui-datepicker-calendar .ui-state-active { background-color: var(--color-primary); color: #fff; }
.ui-datepicker-other-month .ui-state-default { color: #ccc; }
.ui-datepicker-last { margin-left: calc(var(--space-43) * -1); }
.ui-datepicker-trigger { width: 44px; height: 44px; margin-left: calc(var(--space-1) * -1); background: url('../images/bbs/datepicker_icon.png') 50% 50% no-repeat; border: 1px solid #aaa; vertical-align: middle; overflow: hidden; text-indent: -999em; }
.fr-box [data-aos] { opacity: 1 !important; transform: none !important; }
