@charset "utf-8";
@import url(normalize.css);
@import url(all.min.css);


@import url(https://fonts.googleapis.com/css?family=Monomakh&display=swap|Sulphur+Point:300,700|Noto+Sans+KR);
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");


/*font*/
body {
  font-family: 'Pretendard';
}

/*color*/
body {
  /* background: #7a8eb3; */
  color: #222;
}

.wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  background:  rgb(157, 203, 255);
}

/* right */
.right-wrap {
  position: fixed;
  width: 50%;
  height: 100%;
  background: #ffffff;
  overflow: hidden;
  font-family: "Monomakh", serif;
  z-index: 100;
}
.right .folder-front, .right .folder-text, .right .folder-back {
  position: absolute;
  width: 100%;
  top: 25%;
  bottom: 25%;
  text-align: center;
}
.right img {
  width: 400px;
}
.right .folder-text {
  position: absolute;
  font-size: 80px;
  top: 34%;
  bottom: 50%;
  line-height: 120px;
  width: 100%;
  /* background: blue; */
}
.right .folder-text p {
  position: absolute;
  width: 700px;
  left: 50%;
  margin-left: -350px;
  /* background: red; */
  top: 0;
}
.right .folder-text p {
  left: 150%;
}
.right .folder-text p:nth-child(1) {
  left: 50%;
}

/* navigation */
header .gnb {
  position: absolute;
  top: 30px;
  width: 560px;
  left: 50%;
  margin-left: -280px;
}
header .gnb a {
  float: left;
  display: block;
  padding: 3px 5px;
  margin-right: 15px;

  font-size: 18px;

  transition: all .5s
}
header .gnb a:first-child {
  display: none;
}
header .gnb a:last-child {
  margin-right: 0;
}
header .gnb a::before {
  content: '';
  position: absolute;
  display: block;
  top: -5px;
  margin-left: -15px;
  width: 20px;
  height: 20px;
  border-radius: 100px;
  z-index: -1;
  background: rgb(157, 203, 255);
  display: none;
}
header .gnb a:hover::before,
header .gnb a.on::before {
  display: block;
}

/* 텍스트 위치 조정 */
@media screen and (max-height:1000px) {
  .right .folder-text {
    top: 36%;
  }
}
@media screen and (max-height:900px) {
  .right .folder-text {
    top: 37%;
  }
}
@media screen and (max-height:800px) {
  .right .folder-text {
    top: 38%;
  }
}
@media screen and (max-height:700px) {
  .right .folder-text {
    top: 39%;
  }
}
.right address {
  position: absolute;
  width: 100%;
  bottom: 50px;
  text-align: center;
  font-style: normal;
  font-size: 20px;
}

/* left */
.wrap .left-wrap {
  position: absolute;
  width: 50%;
  margin-left: 50%;
  background:  rgb(157, 203, 255);
}
.left {
  width: 100%;
}

/* layout */
main {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
main section {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  overflow: hidden;
}

/* 공통 */
main section .content {
  position: absolute;
  top: 0;
  left: 50%;
  width: 50%;
  height: 100%
}

/* section 0 */


#sec0 .content img {
  position: absolute;
  top: 0;
  width: 100%;
}
#top-image {
  background:url("../image/portfolio.png") -25px -50px no-repeat;
  position: absolute;
  top:0;
  width:100%;
  z-index:0;
  height:100%;
  background-size: calc(100% + 50px);
  filter: hue-rotate(-20deg);
  }
.mouse {
  display: block;
  margin: 0 auto;
  width: 80px;
  height: 120px;
  border-radius: 50px;
  border: 2px solid rgb(255, 241, 158);
  position: absolute;
  bottom: 40px;
  position: absolute;
  left: 50%;
  margin-left: -40px;
}
.mouse span {
  display: block;
  margin: 10px auto;
  width: 4px;
  height: 6px;
  border-radius: 4px;
  background: rgb(255, 241, 158);
  border: 1px solid transparent;
  animation-duration: 1.5s;
  animation-fill-mode: both;
  animation-iteration-count: infinite;
  animation-name: scroll;
}
@keyframes scroll {
  0% {
    opacity: 1;
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
#sec0 .content h5 {
  position: absolute;
  bottom: 180px;
  width: 80px;
  left: 50%;
  font-size: 1em;
  margin-left: -25px;
  color: rgb(255, 241, 158);
}

/* section 1 */
#sec1 .content article {
  float: left;
  margin: 0 40px;
  margin-top: 35px;
  margin-bottom: 40px;
  /* width: 320px; */
  width: calc(50% - 80px);
  height: 200px;
  box-sizing: border-box;
  overflow: hidden;

  letter-spacing: -0.5px;
  font-size: 15px;
}
#sec1 .content article:nth-child(2n) {
  margin-left: 0;
}
#sec1 .content article:nth-child(n+3) {
  margin-top: 20px;
  height: 600px;
}
#sec1 .content article:nth-child(1) {
  /* padding-left: 30px; */
  padding-left: 7%
}
#sec1 .content article:nth-child(1) .bg {
  margin-top: 10px;
  width: 170px;
  height: 170px;
  background: rgb(255, 241, 158);
  border-radius: 500px;
  overflow: auto;
}
#sec1 .content article:nth-child(1) img {
  position: absolute;
  top: 40px;
  margin-left: 12%;
  width: calc(10% + 100px)
}
#sec1 .content article > p {
  height: 40px;
  font-family: "Monomakh", serif;
  font-weight: 600;
  color: rgb(255, 241, 158);
}
#sec1 .content article .box {
  background: white;
  width: 100%;
  height: calc(100% - 40px);
  padding: 10% 15%;
  border-radius: 20px;
  box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
  box-sizing: border-box;
}
#sec1 .content article .box table {
  width: 100%;
  height: 100%;
}
#sec1 .content article .box table b {
  font-weight: 800;
}
#sec1 .content article .box p {
  margin-top: 20px;
  margin-bottom: 20px;
  line-height: 1.3em;
}
#sec1 .content article .box span {
  line-height: 1.3em;
}
#sec1 .content article .box b {
  color: rgb(29, 119, 234);
}
#sec1 .content article .box h5 {
  font-size: 1.2em;
  display: inline;
  color: rgb(29, 119, 234);
}
#sec1 .content article h3 {
  color: rgb(29, 119, 234);
}
#sec1 .content article .skillname h4 {
  position: relative;
  font-size: 0.8em;
  font-weight: 900;
  letter-spacing: 0px;
  color: rgb(29, 119, 234);
  margin-bottom: 15px;
}
#sec1 .content article .skillname h4::before {
  content: '';
  position: absolute;
  display: block;
  top: 4px;
  /* left: 90px; */
  /* width: 135px; */
  height: 4px;
  background: rgb(255, 241, 158);
  right: 6%;
  width: 50%
}
#sec1 .content article .skillname h4::after {
  content: '';
  position: absolute;
  display: block;
  top: 0px;
  width: 12px;
  height: 12px;
  border-radius: 50px;
  background: rgb(29, 119, 234);
}
#sec1 .content article .skillname .ps::after {
  right: 7%
}
#sec1 .content article .skillname .ai::after {
  right: 7%
}
#sec1 .content article .skillname .id::after {
  right: 14%
}
#sec1 .content article .skillname .pr::after {
  right: 28%;
}
#sec1 .content article .skillname .html::after {
  right: 14%
}
#sec1 .content article .skillname .css::after {
  right: 14%
}
#sec1 .content article .skillname .java::after {
  right: 28%;
}
#sec1 .content article .skillname .jq::after {
  right: 28%;
}
#sec1 .content article .skillname .fig::after {
  right: 24%;
}
#sec1 .content article .skillname .can::after {
  right: 10%;
}

/* section 2 */
#sec2 .content {
  background: white;
}
#sec2 .content .line {
  position: absolute;
  top: 0;
  width: 120px;
  height: 100%;
  border-right: 2px solid rgb(157, 203, 255);;
}
#sec2 .content .exp p {
  margin-top: 40px;
}
#sec2 .content .exp p:nth-child(8) {
  margin: 0;
}
#sec2 .content .exp p b {
  font-family: "Monomakh", serif;
  font-weight: normal;
  font-size: 1.4em;
  position: relative;
  display: inline-block;
  width: 120px;
  padding-left: 40px;
  color: rgb(157, 203, 255);
  box-sizing: border-box;
}
#sec2 .content .exp p:nth-of-type(3) b, #sec2 .content .exp p:nth-of-type(4) b, #sec2 .content .exp p:nth-of-type(10) b {
  opacity: 0;
}
#sec2 .content .exp p b:before {
  content: '';
  position: absolute;
  right: -8px;
  top: 4px;
  width: 14px;
  height: 14px;
  border-radius: 50px;
  background: rgb(157, 203, 255);
}
#sec2 .content .exp p b:after {
  content: '';
  position: absolute;
  right: -6px;
  top: 6px;
  width: 10px;
  height: 10px;
  border-radius: 50px;
  background: white
}
#sec2 .content .exp p:nth-child(8) b:before, #sec2 .content .exp p:nth-child(8) b:after {
  display: none;
}
#sec2 .content .exp p span {
  padding-left: 30px;
  letter-spacing: -0.8px;
  font-weight: 700;
  font-size: 1.1em;
}
#sec2 .content .exp p i {
  display: inline-block;
  padding-left: 160px;
  margin-top: 5px;
  font-style: normal;
  font-weight: 500;
  color: rgb(157, 203, 255);
  font-size: .9em;
}
#sec2 .content .exp p i::before {
  content: '- ';
}

/* sec 3 */
#sec3 .content {
  background: #333;
}
#sec3 .content article {
  float: left;
  width: 50%;
  height: 33.33%;
  overflow: hidden;
  color: white;
  text-align: center;

  position: relative;
  isolation: isolate;
}
#sec3 .content article::after {
  content: '';
  position: absolute;
  background: black;
  z-index: -1;
  inset: 0;
  opacity: 0
}
#sec3 .content article a {
  display: inline-block;
  width: 100%;
  height: 100%;
}
#sec3 .content article h3 {
  position: relative;
  margin-top: 28%;
  line-height: 1.8em;
  font-weight: 500;
  font-size: 2em;
  opacity: 0;
  transition: all 0.5s;
}
#sec3 .content article h3::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: calc(50% - 10px);
  width: 20px;
  height: 2px;
  background: white;
  transition: all 1s;
}
#sec3 .content article p {
  margin-top: 10px;
  opacity: 0;
}
#sec3 .content article:nth-child(1) {
  background: url(../image/web1.jpg) center center / cover no-repeat;
}
#sec3 .content article:nth-child(2) {
  background: url(../image/web2.jpg) center center / cover no-repeat;
}
#sec3 .content article:nth-child(3) {
  background: url(../image/web3.jpg) center center / cover no-repeat;
}
#sec3 .content article:nth-child(4) {
  background: url(../image/web4.jpg) center center / cover no-repeat;
}
#sec3 .content article:nth-child(5) {
  background: url(../image/web5.jpg) center center / cover no-repeat;
}
#sec3 .content article:nth-child(6) {
  background: url(../image/web6.jpg) center center / cover no-repeat;
}
#sec3 .content article:hover h3, #sec3 .content article:hover p {
  opacity: 1;
}
#sec3 .content article:hover::after {
  opacity: 0.6;
  transition: all .5s;
}
#sec3 .content article:hover h3::after {
  width: 300px;
  left: calc(50% - 150px);
}

/* sec 4 */
#sec4 .content {
  background: white;
}
#sec4 .content .gallery {
  display: flex;
  gap: 5px;
  justify-content: left;
  flex-wrap: wrap;
  padding-top: 5px;
}
#sec4 .content .gallery .imgbox {
  width: 120px;
  height: 120px;
  overflow: hidden;
  /* background: blue; */
}
#sec4 .content .gallery img {
  width: 120px;
  cursor: pointer;
  transition: transform 0.3s;
}
#sec4 .content .gallery .imgbox:nth-of-type(4) img, #sec4 .content .gallery .imgbox:nth-of-type(30) img, #sec4 .content .gallery .imgbox:nth-of-type(32) img, #sec4 .content .gallery .imgbox:nth-of-type(33) img, #sec4 .content .gallery .imgbox:nth-of-type(39) img {
  height: 120px;
  width: auto;
}
#sec4 .content .gallery img:hover {
  transform: scale(1.1);
}
#sec4 .content .lightbox {
  position: fixed;
  top: 0; left: 50%; width: 50%; height: 100%;
  background: rgba(0, 0, 0, 0.8);
  display: none;
  justify-content: center;
  align-items: center;
}
#sec4 .content .lightbox img {
  max-width: 90%;
  max-height: 90%;
  border-radius: 10px;
}


/* sec 5 */
.container{
  margin: 0 auto;
  width: 100%;
  height: 100%;
}
.gallery-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.item {
  flex: 1;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: none;
  transition: flex 0.8s ease;
}
.item:hover {
  flex: 10;
}

.item-1 { 
  background-image: url(../image/324.jpg);
}
.item-2 { 
  background-image: url(../image/569.jpg);
}
.item-3 { 
  background-image: url(../image/11779.jpg);
}
.item-4 { 
  background-image: url(../image/37.jpg);
}
.item-5 { 
  background-image: url(../image/468.jpg);
}
.item-6 p { 
  text-align: center;
  font-family: "Monomakh", serif;
  font-size: 6em;
  position: relative;
  top: 200px;
}

/* indicator */
.indicator {
  position: fixed;
  right: 15px;
  height: 110px;
  top: 50%;
  margin-top: -55px;
}
.indicator a {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50px;
  background: white;
  transition: all .3s;
  margin-bottom: 12px;
  opacity: 0.5;
}
.indicator a:last-child {
  margin-right: 0;
}
.indicator a:hover,
.indicator a.on {
  opacity: 1;
}



@media screen and (max-width:1500px) {
  .right-wrap {
    display: none;;
  }
  .wrap .left-wrap {
    width: 100%;
    margin-left: 0;
  }
  main section .content {
    left: 0;
    width: 100%;
  }
  #sec3 .content article h3 {
    margin-top: 15%;
  }
  #sec1 .content article:nth-child(2) .box {
    padding-top: 50px;
  }
  #sec1 .content article:nth-child(n+3) {
    height: 550px;
  }
}
