@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css');

* {margin:0; padding:0; border: 0; box-sizing: border-box;}
body {background:var(--point-white); color:var(--black-color01); font-style:normal; font-size:var(--text-16); font-family:var(--font-type01); line-height: 1.4; letter-spacing:-0.04em; word-break: keep-all; text-wrap: balance; /* text-wrap: pretty; */ overflow-wrap: anywhere; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
html {/*scroll-behavior: smooth;*/ -webkit-text-size-adjust: 100%;}

div, ul, ol, li, dl, dt, dd, form, fieldset, input,textarea, button, p, h1, h2, h3, h4, h5, h6, blockquote, iframe, th, td {-webkit-text-size-adjust:none;}
img, picture, video, canvas, svg {vertical-align:middle; max-width:100%; max-height: 100%;}
li {list-style:none;}
button{background:transparent; cursor:pointer; vertical-align:middle; }
button, input[type="submit"], input[type="button"] {background:transparent; cursor:pointer;font-family:inherit;}
input, button {-webkit-appearance: none; -webkit-border-radius: 0; }
h1, h2, h3, h4, h5, h6{font-size:inherit; letter-spacing: inherit; font-style:normal;}
dl :is(dt, dd){font-weight: inherit;}


/* table */
table { border-collapse:unset; border-spacing:0; width:100%;table-layout:fixed;}
th {vertical-align:middle;}
th, td { border-collapse:collapse; }
legend, hr { display:none; }
caption{text-indent:-9999em;overflow:hidden;height:0;font-size:0;line-height:0; }

/* form */
form { display:inline; }
select, input, textarea, button{color:inherit;font-family:inherit;font-size:inherit; vertical-align:middle;outline:none;}
fieldset, blockquote, iframe, button { border:none; }
:where(input, select, textarea):focus{outline: none;}

/* font */
i, em, u, cite {font-style:normal;}
em{font-weight:bold;}

/* link */
a {color:inherit; text-decoration:none; cursor:pointer;}
a:visited{text-decoration: none}
a:focus{text-decoration: none}
a:active{text-decoration: none}
a:hover{text-decoration: none}

h2.blind {display:none; font-size:0; letter-spacing:-9999px;}

.file_list img {padding-left:3px;}

.dn{display: none;}

/* Utility */
:focus-visible { outline: 2px solid var(--point-color01); outline-offset: 2px; }
::selection { background-color: var(--point-color01); color: var(--point-white); }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--point-color01); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--point-color02); }


/* custom */
:root{
    --trans-color:transparent;
    --point-white:#fff;
    --point-color01:#349949;
    --point-color02:#236831;
	--border-color01:#ddd;
    --border-color02:#ccc;
	--border-color03:#eee;
    --black-color00:#000;
    --black-color01:#111;
    --black-color02:#222;
    --black-color03:#333;
    --black-color04:#444;
    --black-color05:#555;
    --black-color06:#666;
    --black-color07:#777;
    --black-color08:#888;
    --black-color09:#999;
    --black-color10:#aaa;
	--black-color11:#bbb;
    --gray-bg01:#F5F5F5;
    --gray-bg02:#F8F8F8;
    --gray-bg03:#FAFAFA;
    --gray-bg04:#d9d9d9;
    --font-type01:'Roboto', 'Pretendard', 'Malgun Gothic', '맑은 고딕', dotum, sans-serif;
    --font-type02:'Pretendard', 'Malgun Gothic', '맑은 고딕', dotum, sans-serif;
    --filter-white:brightness(0) invert(1);
    --filter-black:brightness(0);
	/* 1440px 기준 최적화 */
	--shadow-01: 0 0 clamp(15px, 2.08vw, 30px) rgb(0 0 0 / 10%);
    --shadow-02: 0 clamp(7.5px, 1.04vw, 15px) clamp(7.5px, 1.04vw, 15px) rgb(0 0 0 / 15%);
    --shadow-03: 0 0 clamp(10px, 1.39vw, 20px) rgb(0 0 0 / 15%);
    --shadow-04: clamp(5px, 0.69vw, 10px) clamp(5px, 0.69vw, 10px) clamp(5px, 0.69vw, 10px) rgb(0 0 0 / 10%);
    --radius-40: clamp(20px, 2.78vw, 40px);
    --radius-30: clamp(15px, 2.08vw, 30px);
    --radius-20: clamp(10px, 1.39vw, 20px);
    --radius-16: clamp(8px, 1.11vw, 16px);
    --radius-15: clamp(7.5px, 1.04vw, 15px);
    --radius-14: clamp(7px, 0.97vw, 14px);
    --radius-10: clamp(5px, 0.69vw, 10px);
	--text-letter:normal;
	--text-90: clamp(68px, 6.25vw, 90px);
    --text-80: clamp(61px, 5.56vw, 80px);
    --text-70: clamp(54px, 4.86vw, 70px);
    --text-69: clamp(53px, 4.79vw, 69px);
    --text-68: clamp(52px, 4.72vw, 68px);
    --text-67: clamp(52px, 4.65vw, 67px);
    --text-66: clamp(51px, 4.58vw, 66px);
    --text-65: clamp(50px, 4.51vw, 65px);
    --text-64: clamp(49px, 4.44vw, 64px);
    --text-63: clamp(49px, 4.38vw, 63px);
    --text-62: clamp(48px, 4.31vw, 62px);
    --text-61: clamp(47px, 4.24vw, 61px);
    --text-60: clamp(47px, 4.17vw, 60px);
    --text-59: clamp(46px, 4.1vw, 59px);
    --text-58: clamp(45px, 4.03vw, 58px);
    --text-57: clamp(45px, 3.96vw, 57px);
    --text-56: clamp(44px, 3.89vw, 56px);
    --text-55: clamp(43px, 3.82vw, 55px);
    --text-54: clamp(42px, 3.75vw, 54px);
    --text-53: clamp(42px, 3.68vw, 53px);
    --text-52: clamp(41px, 3.61vw, 52px);
    --text-51: clamp(40px, 3.54vw, 51px);
    --text-50: clamp(40px, 3.47vw, 50px);
    --text-49: clamp(39px, 3.4vw, 49px);
    --text-48: clamp(38px, 3.33vw, 48px);
    --text-47: clamp(37px, 3.26vw, 47px);
    --text-46: clamp(37px, 3.19vw, 46px);
    --text-45: clamp(36px, 3.13vw, 45px);
    --text-44: clamp(35px, 3.06vw, 44px);
    --text-43: clamp(35px, 2.99vw, 43px);
    --text-42: clamp(34px, 2.92vw, 42px);
    --text-41: clamp(33px, 2.85vw, 41px);
    --text-40: clamp(32px, 2.78vw, 40px);
    --text-39: clamp(32px, 2.71vw, 39px);
    --text-38: clamp(31px, 2.64vw, 38px);
    --text-37: clamp(30px, 2.57vw, 37px);
    --text-36: clamp(30px, 2.5vw, 36px);
    --text-35: clamp(29px, 2.43vw, 35px);
    --text-34: clamp(28px, 2.36vw, 34px);
    --text-33: clamp(27px, 2.29vw, 33px);
    --text-32: clamp(27px, 2.22vw, 32px);
    --text-31: clamp(26px, 2.15vw, 31px);
    --text-30: clamp(25px, 2.08vw, 30px);
    --text-29: clamp(25px, 2.01vw, 29px);
    --text-28: clamp(24px, 1.94vw, 28px);
    --text-27: clamp(23px, 1.88vw, 27px);
    --text-26: clamp(23px, 1.81vw, 26px);
    --text-25: clamp(22px, 1.74vw, 25px);
    --text-24: clamp(21px, 1.67vw, 24px);
    --text-23: clamp(20px, 1.6vw, 23px);
    --text-22: clamp(20px, 1.53vw, 22px);
    --text-21: clamp(19px, 1.46vw, 21px);
    --text-20: clamp(18px, 1.39vw, 20px);
    --text-19: clamp(18px, 1.32vw, 19px);
    --text-18: clamp(17px, 1.25vw, 18px);
    --text-17: 17px;
    --text-16: 16px;
    --text-15: 15px;
    --text-14: 14px;
    --text-13: 13px;
    --text-12: 12px;
    --row-gap180: clamp(130px, 12.5vw, 180px);
    --row-gap160: clamp(116px, 11.11vw, 160px);
    --row-gap155: clamp(112px, 10.76vw, 155px);
    --row-gap150: clamp(109px, 10.42vw, 150px);
    --row-gap145: clamp(105px, 10.07vw, 145px);
    --row-gap140: clamp(102px, 9.72vw, 140px);
    --row-gap135: clamp(98px, 9.38vw, 135px);
    --row-gap130: clamp(94px, 9.03vw, 130px);
    --row-gap125: clamp(91px, 8.68vw, 125px);
    --row-gap120: clamp(87px, 8.33vw, 120px);
    --row-gap115: clamp(84px, 7.99vw, 115px);
    --row-gap110: clamp(80px, 7.64vw, 110px);
    --row-gap105: clamp(77px, 7.29vw, 105px);
    --row-gap100: clamp(73px, 6.94vw, 100px);
    --row-gap95: clamp(70px, 6.6vw, 95px);
    --row-gap90: clamp(66px, 6.25vw, 90px);
    --row-gap85: clamp(62px, 5.9vw, 85px);
    --row-gap80: clamp(59px, 5.56vw, 80px);
    --row-gap75: clamp(55px, 5.21vw, 75px);
    --row-gap70: clamp(52px, 4.86vw, 70px);
    --row-gap65: clamp(48px, 4.51vw, 65px);
    --row-gap60: clamp(45px, 4.17vw, 60px);
    --row-gap55: clamp(41px, 3.82vw, 55px);
    --row-gap50: clamp(38px, 3.47vw, 50px);
    --row-gap45: clamp(34px, 3.13vw, 45px);
    --row-gap40: clamp(30px, 2.78vw, 40px);
    --row-gap35: clamp(27px, 2.43vw, 35px);
    --row-gap30: clamp(23px, 2.08vw, 30px);
    --row-gap25: clamp(20px, 1.74vw, 25px);
    --row-gap20: clamp(16px, 1.39vw, 20px);
    --row-gap15: clamp(13px, 1.04vw, 15px);
    --row-gap10: clamp(9px, 0.69vw, 10px);
    --col-gap60: clamp(45px, 4.17vw, 60px);
    --col-gap55: clamp(41px, 3.82vw, 55px);
    --col-gap50: clamp(38px, 4vw, 50px);
    --col-gap45: clamp(34px, 3.13vw, 45px);
    --col-gap40: clamp(30px, 2.78vw, 40px);
    --col-gap35: clamp(27px, 2.43vw, 35px);
    --col-gap30: clamp(23px, 2.08vw, 30px);
    --col-gap24: clamp(19px, 1.67vw, 24px);
    --col-gap22: clamp(18px, 1.53vw, 22px);
    --col-gap20: clamp(16px, 1.39vw, 20px);
    --col-gap17: clamp(14px, 1.18vw, 17px);
    --grid-array01:repeat(1, 1fr);
    --grid-array02:repeat(2, 1fr);
    --grid-array03:repeat(3, 1fr);
    --grid-array04:repeat(4, 1fr);
    --grid-array05:repeat(5, 1fr);
    --grid-array06:repeat(6, 1fr);
}
@media (max-width: 1023px) {
    :root {
        --text-90: clamp(48px, 8.5vw, 68px);
        --text-80: clamp(44px, 7.5vw, 61px);
        --text-70: clamp(40px, 6.5vw, 54px);
        --text-69: clamp(40px, 6.4vw, 53px);
        --text-68: clamp(39px, 6.3vw, 52px);
        --text-67: clamp(39px, 6.2vw, 52px);
        --text-66: clamp(38px, 6.1vw, 51px);
        --text-65: clamp(37px, 6vw, 50px);
        --text-64: clamp(36px, 5.9vw, 49px);
        --text-63: clamp(36px, 5.8vw, 49px);
        --text-62: clamp(35px, 5.7vw, 48px);
        --text-61: clamp(34px, 5.6vw, 47px);
        --text-60: clamp(34px, 5.5vw, 47px);
        --text-59: clamp(33px, 5.4vw, 46px);
        --text-58: clamp(32px, 5.3vw, 45px);
        --text-57: clamp(32px, 5.2vw, 45px);
        --text-56: clamp(32px, 5.1vw, 44px);
        --text-55: clamp(31px, 5vw, 43px);
        --text-54: clamp(30px, 4.9vw, 42px);
        --text-53: clamp(30px, 4.8vw, 42px);
        --text-52: clamp(29px, 4.7vw, 41px);
        --text-51: clamp(29px, 4.6vw, 40px);
        --text-50: clamp(29px, 4.5vw, 40px);
        --text-49: clamp(28px, 4.4vw, 39px);
        --text-48: clamp(28px, 4.3vw, 38px);
        --text-47: clamp(27px, 4.2vw, 37px);
        --text-46: clamp(27px, 4.1vw, 37px);
        --text-45: clamp(26px, 4vw, 36px);
        --text-44: clamp(25px, 3.9vw, 35px);
        --text-43: clamp(25px, 3.8vw, 35px);
        --text-42: clamp(24px, 3.7vw, 34px);
        --text-41: clamp(25px, 3.84vw, 33px);
        --text-40: clamp(24px, 3.72vw, 32px);
        --text-39: clamp(24px, 3.72vw, 32px);
        --text-38: clamp(23px, 3.6vw, 31px);
        --text-37: clamp(23px, 3.49vw, 30px);
        --text-36: clamp(22px, 3.49vw, 30px);
        --text-35: clamp(22px, 3.37vw, 29px);
        --text-34: clamp(21px, 3.26vw, 28px);
        --text-33: clamp(21px, 3.14vw, 27px);
        --text-32: clamp(21px, 3.14vw, 27px);
        --text-31: clamp(20px, 3.02vw, 26px);
        --text-30: clamp(20px, 2.91vw, 25px);
        --text-29: clamp(20px, 2.91vw, 25px);
        --text-28: clamp(19px, 2.79vw, 24px);
        --text-27: clamp(19px, 2.67vw, 23px);
        --text-26: clamp(19px, 2.67vw, 23px);
        --text-25: clamp(18px, 2.56vw, 22px);
        --text-24: clamp(18px, 2.44vw, 21px);
        --text-23: clamp(17px, 2.33vw, 20px);
        --text-22: clamp(17px, 2.33vw, 20px);
        --text-21: clamp(16px, 2.21vw, 19px);
        --text-20: clamp(16px, 2.09vw, 18px);
        --text-19: clamp(15px, 2.09vw, 18px);
        --text-18: clamp(15px, 1.98vw, 17px);
        --text-17: clamp(14px, 1.98vw, 17px);
        --text-16: clamp(13px, 1.74vw, 15px);
        --text-15: clamp(13px, 1.74vw, 15px);
        --text-14: clamp(12px, 1.63vw, 14px);
        --text-13: clamp(11px, 1.51vw, 13px);
        --text-12: clamp(10px, 1.4vw, 12px);
        --row-gap180: clamp(80px, 15vw, 130px);
        --row-gap160: clamp(75px, 13vw, 116px);
        --row-gap155: clamp(70px, 12.5vw, 112px);
        --row-gap150: clamp(68px, 12vw, 107px);
        --row-gap145: clamp(65px, 11.5vw, 103px);
        --row-gap140: clamp(65px, 11vw, 102px);
        --row-gap135: clamp(62px, 10.5vw, 98px);
        --row-gap130: clamp(60px, 10vw, 92px);
        --row-gap125: clamp(60px, 9.5vw, 91px);
        --row-gap120: clamp(60px, 9vw, 87px);
        --row-gap115: clamp(55px, 8.5vw, 84px);
        --row-gap110: clamp(55px, 8vw, 80px);
        --row-gap105: clamp(50px, 7.8vw, 77px);
        --row-gap100: clamp(50px, 7.5vw, 71px);
        --row-gap95: clamp(50px, 7.2vw, 68px);
        --row-gap90: clamp(45px, 6.9vw, 64px);
        --row-gap85: clamp(40px, 6.5vw, 60px);
        --row-gap80: clamp(40px, 6vw, 57px);
        --row-gap75: clamp(40px, 5.8vw, 53px);
        --row-gap70: clamp(40px, 5.5vw, 50px);
        --row-gap65: clamp(35px, 5.2vw, 48px);
        --row-gap60: clamp(30px, 4.8vw, 45px);
        --row-gap55: clamp(30px, 4.4vw, 41px);
        --row-gap50: clamp(30px, 4vw, 38px);
        --row-gap45: clamp(25px, 3.6vw, 34px);
        --row-gap40: clamp(25px, 3.2vw, 30px);
        --row-gap35: clamp(20px, 3.14vw, 27px);
        --row-gap30: clamp(15px, 2.67vw, 23px);
        --row-gap25: clamp(15px, 2.33vw, 20px);
        --row-gap20: clamp(12px, 1.86vw, 16px);
        --row-gap15: clamp(10px, 1.51vw, 13px);
        --row-gap10: clamp(6px, 1.05vw, 9px);
        --col-gap60: clamp(28px, 4.8vw, 45px);
        --col-gap55: clamp(26px, 4.4vw, 41px);
        --col-gap50: clamp(24px, 4vw, 38px);
        --col-gap45: clamp(22px, 3.6vw, 34px);
        --col-gap40: clamp(20px, 3.2vw, 30px);
        --col-gap35: clamp(18px, 3.14vw, 27px);
        --col-gap30: clamp(14px, 2.67vw, 23px);
        --col-gap24: clamp(12px, 2.21vw, 19px);
        --col-gap22: clamp(11px, 2.09vw, 18px);
        --col-gap20: clamp(11px, 1.86vw, 16px);
        --col-gap17: clamp(10px, 1.63vw, 14px);
    }
}
@media (max-width:860px){
    :root{
        --grid-array04:repeat(3, 1fr);
        --grid-array05:repeat(3, 1fr);
        --grid-array06:repeat(3, 1fr);
    }
}
@media (max-width:640px){
    :root{
        --grid-array03:repeat(2, 1fr);
        --grid-array04:repeat(2, 1fr);
        --grid-array05:repeat(2, 1fr);
        --grid-array06:repeat(2, 1fr);
    }
}
@media (max-width:479px){
    :root{
        --grid-array02:repeat(1, 1fr);
        --grid-array03:repeat(1, 1fr);
        --grid-array04:repeat(1, 1fr);
        --grid-array05:repeat(1, 1fr);
        --grid-array06:repeat(1, 1fr);
    }
}