@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&family=Poppins:wght@300;400;500;600;700;800;900&display=swap");a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;font-family:Noto Sans KR;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none;-o-text-size-adjust:none}input,select{-webkit-appearance:none;-webkit-border-radius:0}input[type=reset],input[type=submit]{cursor:pointer}input[type=search]::-ms-clear,input[type=search]::-ms-reveal{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{display:none}a{text-decoration:none;color:inherit;display:inline-block}button{border:none;cursor:pointer;font-family:inherit;font-size:inherit;padding:initial;line-height:inherit}button,mark{background-color:transparent}:root{--maxWidth:1200px;--mobileSize:40px;--contentSize:calc(100% - var(--mobileSize))}body{overflow:hidden}.wrap header h1{font-family:serif}.contentWidth{max-width:1200px;width:calc(100% - 40px);margin:0 auto}#canvas{background:radial-gradient(circle,rgba(0,0,0,1) 0,rgba(37,37,37,1) 96%,rgba(29,29,29,1) 100%);z-index:-2}#canvas,#canvasText{width:100%;height:100%;position:fixed;left:0;top:0}#canvasText{z-index:-1}.wrap{line-height:1}.mainPage{align-content:center;opacity:0;animation-name:main;animation-duration:1s;animation-delay:1s;animation-fill-mode:forwards;mark{color:transparent}}@keyframes main{0%{opacity:0}to{opacity:1}}.portfolioArea{text-align:center;align-content:center;height:100vh;h2{color:white;&:after{content:"";display:block;width:1px;height:5vh;margin-inline:auto;background-color:#297dff}}.tabBtn{margin:0 auto;display:inline-flex;justify-content:center;color:transparent;-webkit-background-clip:text;position:relative;background-image:url(/images/textActive.png),url(/images/textColor.png);background-size:0,100%;background-repeat:repeat-y;transition:1s;transition-property:background-position,background-size;button{background-color:transparent;border:none;color:inherit;&:hover{color:#297dff}&.active:hover{color:transparent}}span{position:absolute;bottom:0;height:1px;background-color:#297dff;transition:1s}}.tabArea{max-width:var(--maxWidth);width:var(--contentSize);margin-inline:auto;position:relative;overflow:auto;max-height:400px;&::-webkit-scrollbar{display:none}ul{display:flex;flex-wrap:wrap;height:42.6894vh;.active{display:flex;flex-wrap:wrap;align-content:flex-start}li{position:relative;a:first-of-type{font-size:1.25rem;color:white;display:block;height:100%;text-align:center;align-content:center;border-bottom:1px solid #297dff;transition:.5s;padding-inline:.625rem;box-sizing:border-box;position:relative}>:not(a:first-of-type){position:absolute;opacity:0;transition:opacity .5s}svg{font-size:1.5rem;color:#297dff}.github{right:0;top:0}&:hover>a:first-of-type{border-bottom-color:transparent}&:hover>:not(a:first-of-type){opacity:1}time{left:0;top:0;color:#297dff}>div{right:0;bottom:0;display:flex;gap:.5rem}}}}}.portfolioArea .tabProgress{position:fixed;width:12.5rem;height:.625rem;background-color:#333;display:none;div{position:absolute;left:0;top:-1.875rem;font-size:1.25rem;color:white;text-shadow:0 0 10px #297dff,0 0 20px #297dff,0 0 40px #297dff,0 0 80px #297dff,0 0 120px #297dff,0 0 200px #297dff,0 0 300px #297dff,0 0 400px #297dff}span{display:block;width:0;height:100%;background:#297dff;pointer-events:none;&:after,&:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%}&:before{filter:blur(.625em)}&:after,&:before{background:#297dff}&:after{filter:blur(1.875rem)}}}.scrollGuide{position:fixed;left:50%;bottom:3.125rem;height:1.875rem;transform:translateX(-50%);cursor:pointer;span{display:flex;&:not(:last-of-type){margin-bottom:.313rem}&:after,&:before{content:"";width:.938rem;height:.188rem;background-color:white;transition:transform .5s;animation-duration:1s;animation-delay:1s;animation-iteration-count:infinite;animation-direction:alternate}&:first-child:after,&:first-child:before{animation-name:fade1}&:nth-child(2):after,&:nth-child(2):before{animation-name:fade2}&:nth-child(3):after,&:nth-child(3):before{animation-name:fade3}}}.mainPage+.scrollGuide span{&:before{transform:rotate(40deg);transform-origin:right}&:after{transform:rotate(-40deg);transform-origin:left}}.portfolioArea+.scrollGuide span{&:before{transform:rotate(-40deg);transform-origin:right}&:after{transform:rotate(40deg);transform-origin:left}&:after,&:before{animation-duration:1s;animation-iteration-count:infinite}}@keyframes fade1{0%{opacity:0}50%{opacity:1}to{opacity:1}}@keyframes fade2{0%{opacity:0}30%{opacity:0}70%{opacity:1}to{opacity:1}}@keyframes fade3{0%{opacity:0}50%{opacity:0}to{opacity:1}}@media screen and (min-width:641px){.mainPage{height:100vh;padding:11.7395vh 0;box-sizing:border-box;color:white;text-align:center;h1{font-size:20px;font-weight:400;margin-bottom:35px;letter-spacing:10px;&:before{content:"";display:block;width:1px;height:100px;margin:0 auto 40px;background-color:#297dff}mark{font-size:70px;font-weight:700;display:block;margin-bottom:35px;letter-spacing:-2px}}ul{display:inline-block;margin-bottom:35px;li{font-size:20px;line-height:40px;span{display:inline-block;animation-duration:.8s;animation-timing-function:cubic-bezier(.165,.44,.64,1)}a span{transition-duration:.5s}&:hover span{animation-name:jump}&:hover>span{animation-delay:1s;animation-iteration-count:infinite}&:hover a span{color:#297dff}}}p{font-size:20px;max-width:400px;margin:0 auto 35px;line-height:1.5;opacity:.2;mark{color:inherit;color:#297dff;text-shadow:0 0 5px #fff}}}@keyframes jump{20%{transform:translateY(2%) scaleY(.9)}40%{transform:translateY(-100%) scaleY(1.2)}50%{transform:translateY(10%) scaleY(.8)}70%{transform:translateY(-5%) scaleY(1)}80%,to{transform:translateY(0) scaleY(1)}}@keyframes jumpColor{20%{transform:translateY(2%) scaleY(.9);color:white}40%{transform:translateY(-100%) scaleY(1.2)}50%{transform:translateY(10%) scaleY(.8)}70%{transform:translateY(-5%) scaleY(1)}80%,to{transform:translateY(0) scaleY(1);color:#297dff}}.portfolioArea{h2{font-size:70px;margin-bottom:40px;&:after{margin-top:40px}}.tabBtn{margin-bottom:50px;button{font-size:20px;padding-block:10px;&:not(:last-of-type){margin-right:50px}}}.tabArea{&::-webkit-scrollbar{display:none}ul{display:flex;flex-wrap:wrap;height:42.6894vh;align-content:flex-start}}.tabArea ul li{height:calc((100% - 40px) / 3)}}@media screen and (min-width:1000px){.portfolioArea .tabArea ul li{width:calc((100% - 60px) / 4);&:not(:nth-child(4n)){margin-right:20px}&:nth-last-child(n+4){margin-bottom:20px}}}@media screen and (max-width:999px){.portfolioArea .tabArea ul li{width:calc((100% - 20px) / 2);&:not(:nth-child(2n)){margin-right:20px}&:nth-last-child(n+2){margin-bottom:20px}}}}@media screen and (max-width:640px){html{font-size:2.5vw}.mainPage{height:100vh;padding:11.7395vh 0;color:white;text-align:center;box-sizing:border-box;h1{font-size:1.25rem;font-weight:400;margin-bottom:2.188rem;letter-spacing:.625rem;&:before{content:"";display:block;width:1px;height:5.25rem;margin:0 auto 1.5rem;background-color:#297dff}mark{font-size:4.375rem;font-weight:700;display:block;margin-bottom:2.188rem;letter-spacing:0}}ul{display:inline-block;margin-bottom:2.188rem;li{font-size:1.25rem;line-height:2.5rem;span{display:inline-block;animation-duration:.8s;animation-timing-function:cubic-bezier(.165,.44,.64,1)}a span{transition-duration:.5s}&:hover span{animation-name:jump}&:hover>span{animation-delay:1s;animation-iteration-count:infinite}&:hover a span{color:#297dff}}}}.wrap header p{font-size:1.25rem;max-width:25rem;margin:0 auto 2.188rem;line-height:1.5;opacity:.2}.wrap header p mark{color:inherit;color:#297dff;text-shadow:0 0 .313rem #fff}.wrap header>*{transition:opacity 1s}.wrap header.active>:not(p){opacity:.2}.wrap header.active>p{opacity:1}@keyframes jump{20%{transform:translateY(2%) scaleY(.9)}40%{transform:translateY(-100%) scaleY(1.2)}50%{transform:translateY(10%) scaleY(.8)}70%{transform:translateY(-5%) scaleY(1)}80%,to{transform:translateY(0) scaleY(1);opacity:1}}@keyframes jumpColor{20%{transform:translateY(2%) scaleY(.9);color:white}40%{transform:translateY(-100%) scaleY(1.2)}50%{transform:translateY(10%) scaleY(.8)}70%{transform:translateY(-5%) scaleY(1)}80%,to{transform:translateY(0) scaleY(1);color:#297dff}}.portfolioArea{h2{font-size:4.375rem;margin-bottom:2.5rem;&:after{margin-top:2.5rem}}.tabBtn{margin-bottom:3.125rem;padding-block:1.25rem;button{font-size:1.25rem;padding:.625rem 0;&:not(:last-of-type){margin-right:3.125rem}}}.tabArea{ul{li{width:calc((100% - 1.25em) / 2);height:calc((100% - 2.5em) / 3);&:not(:nth-child(2n)){margin-right:1.25rem}&:nth-last-child(n+3){margin-bottom:1.25rem}}}}}}