/*Global*/
:root {
    /*Color*/
    --color-white: #ffffff;
    --color-light-white: #eeeeee;
    --color-dark-white: #bdbdbd;
    --color-pink: #fe918d;
    --color-dark-pink: #ff6863;
    --color-dark-grey: #4d4d4d;
    --color-grey: #5e5e5e;
    --color-light-grey: #7c7979;
    --color-blue: #0065e9;
    --color-skyblue: #73aace;
    --color-yellow: #fff7d1;
    --color-orange: #feb546;
    --color-black: #000000;
  
    /*Font-size*/
    --font-biglarge:60px;
    --font-smalllarge:45px;
    --font-large: 35px;
    --font-medium: 25px;
    --font-semi-regular: 20px;
    --font-regular: 17px;
    --font-small: 14px;
    --font-micro: 12px;
  
    /*Font-weight*/
    --weight-bold: 700;
    --weight-close-bold: 600;
    --weight-semi-bold: 500;
    --weight-regular: 400;
    --weight-thin: 200;
  
    /*Radius*/
    --size-border-radius: 50%;
  }

  /*Universal tags*/

  @font-face { font-family: 'NotoSansKR'; 
		font-display: auto;
		font-style: normal;
		font-weight: 100;
		src: 	url(img/NotoSansKR-Thin.otf) format('opentype'); }

  @font-face { font-family: 'NotoSansKR'; 
  font-display: auto;
  font-style: normal;
  font-weight: 200;
  src: 	url(img/NotoSansKR-Light.otf) format('opentype'); }

  @font-face { font-family: 'NotoSansKR'; 
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  src: 	url(img/NotoSansKR-Regular.woff2) format('woff2'), 
					url(img/NotoSansKR-Regular.woff) format('woff'), 
					url(img/NotoSansKR-Regular.otf) format('opentype'); }

  @font-face { font-family: 'NotoSansKR'; 
  font-display: auto;
  font-style: normal; 
  font-weight: 500;
  src: 	url(img/NotoSansKR-Medium.woff2) format('woff2'), 
					url(img/NotoSansKR-Medium.woff) format('woff'), 
					url(img/NotoSansKR-Medium.otf) format('opentype'); }

  @font-face { font-family: 'NotoSansKR'; 
  font-display: auto;
  font-style: bold; 
  font-weight: 700;
  src: 	url(img/NotoSansKR-Bold.woff2) format('woff2'), 
        url(img/NotoSansKR-Bold.woff) format('woff'), 
        url(img/NotoSansKR-Bold.otf) format('opentype'); }
          
  @font-face { font-family: 'NotoSansKR'; 
  font-display: auto;
  font-style: bold; 
  font-weight: 900;
  src: 	url(img/NotoSansKR-Black.otf) format('opentype'); }

  * {
    box-sizing: border-box;
    font-family: 'NotoSansKR', sans-serif;
    image-rendering: -webkit-optimize-contrast;
  }

  html, body{
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      scroll-behavior: smooth;
      position: relative;
  }
  
  body {
    cursor: default;
    font-family: "Open Sans", sans-serif;
    overflow-x: hidden;
  }
  
  a {
    text-decoration: none;
    color: var(--color-black);
  }
  
  ul {
    padding: 0;
    margin: 0;
  }
  
  li {
    list-style: none;
    font-size: var(--font-regular);
  }
  
  button {
    background-color: transparent;
    cursor: pointer;
    border: none;
    outline: none;
  }
  
  /* Typography */
  
  h1 {
    font-size: var(--font-large);
    font-weight: var(--weight-bold);
    color: var(--color-black);
    margin: 0;
  }
  
  h2 {
    font-size: var(--font-medium);
    font-weight: var(--weight-close-bold);
    color: var(--color-black);
    margin: 0;
  }
  
  h3 {
    font-size: var(--font-regular);
    font-weight: var(--weight-regular);
    color: var(--color-black);
    margin: 0;
  }
  
  p {
    font-size: var(--font-regular);
    font-weight: var(--weight-regular);
    color: var(--color-black);
    margin: 0;
    color: var(--color-grey);
  }


  /* fade-in, out */
.fade-class {
  left: 200px;
  opacity: 0;
  transition: left 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s linear;
}
.fade-in {
  transition: left 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s linear;
  left: 0px;
  opacity: 1;
  position: relative;
}


/*header*/
#header{
  height: 300px;
  width: 100%;
  border-bottom: 1px solid #e1e1e5;
  background: no-repeat url(img/solutionheader.png) ;
}
.header__wrap{
  max-width: 1400px;
  text-align: center;
  margin: 0 auto;
}
.header__title{
  padding-top: 100px;
  font-size: var(--font-smalllarge);
  color: white;
}
.header__nav{
  margin-top: 80px;
  height: 54px;
  line-height: 53px;
  display: flex;
}
.header__menu{
  border: 1px solid #e1e1e5;
  background-color: white;
  flex-grow: 1;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.header__menu a{
  display: block;
  width: 100%;
  height: 100%;
}
.subactive{
  background-color: #eef8ff;
  border: 1px solid #3086f6;
}
.subactiveA{
  color: #3086f6;
  font-weight: var(--weight-bold);
}
.header__menu:hover {
  background-color: #eef8ff;
  border: 1px solid #3086f6;
  color: #3086f6;
  font-weight: var(--weight-bold);
}


/*공통된 title과 description*/
.sub__title{
  text-align: center;
  padding-top: 50px;
}
.sub__description{
  font-size: var(--font-regular);
  font-weight: var(--weight-regular);
  color: var(--color-black);
  margin: 0;
  color: var(--color-grey);
  text-align: center;
  margin-top: 10px;
}

/*주요실적 보기 버튼*/
.reference__btn{
    display: block;
    color: white;
    cursor: pointer;
    background: #1462ff;
    border-radius: 10px;
    box-shadow: 0 6px 30px -10px #4a74c9;
    width: 220px;
    height: 60px;
    margin: 0 auto;
    font-size: var(--font-semi-regular);
    margin-top: 50px;
    position: relative;
    text-indent: -10px;
  }
  .reference__btn::after{
    content: ">";
    font-size: var(--font-semi-regular);
    font-weight: var(--weight-bold);
    color: white;
    position: absolute;
    right: 30px;
  }
  
  .reference__btn:hover{
    border-radius: 50px;
    transition: all 0.2s ease-in-out;
  }

  /*콘텐츠개발 유지관리 작업순서*/
#cProcedure{
    height: 780px;
  }
  
  .cProcedure__wrap{
    max-width: 1400px;
    margin: 0 auto;
    margin-top: 50px;
  }
  .cProcedure__container{
    display: flex;
  }
  .cProcedure__item{
    width: 100%;
    flex-basis: auto;
    position: relative;
  }
  
  .cProcedure__img{
    display: block;
    width: 247px;
    height: 247px;
    text-align: center;
    line-height: 247px;
    margin: 0 auto;
  }
  .cProcedure__title{
    text-align: center;
    font-weight: var(--weight-semi-bold);
    font-size: var(--font-semi-regular);
    margin-top: 30px;
  }
  .cProcedure__description{
    text-align: center;
    font-size: var(--font-semi-regular);
    margin-top: 10px;
  }
  
  /*화살표*/
  .cProcedure__container li:nth-child(1)::after{
    content: " ";
    display: block;
    width: 86px;
    height: 86px;
    position: absolute;
    top: 25%;
    right: -43px;
    background: url(img/dsProcedurearrow.png);
  }
  .cProcedure__container li:nth-child(2)::after{
    content: " ";
    display: block;
    width: 86px;
    height: 86px;
    position: absolute;
    top: 25%;
    right: -43px;
    background: url(img/dsProcedurearrow.png);
  }
  .cProcedure__container li:nth-child(3)::after{
    content: " ";
    display: block;
    width: 86px;
    height: 86px;
    position: absolute;
    top: 25%;
    right: -43px;
    background: url(img/dsProcedurearrow.png);
  }


  /*화면 구성 예시*/
#cInterface{
    height: 1000px;
    background-color: #f3f3f8;
  }
#cInterface h1{
    padding-top: 150px;
}
  .cInterface__wrap{
    max-width: 1282px;
    margin: 0 auto;
    display: flex;
    margin-top: 50px;
  }
  .cInterface__left{
    width: 100%;
  }
  .cInterface__right{
    width: 100%;
  }
  
  .cInterface__title{
    height: 100px;
    line-height: 100px;
    font-size: var(--font-medium);
    font-weight: var(--weight-semi-bold);
    position: relative;
    padding-left: 80px;
  }
  .cInterface__title::before{
    content: " ";
    display: block;
    width: 50px;
    height: 50px;
    top: 23px;
    left: 0;
    position: absolute;
    background: no-repeat url(img/dsInterfaceimgcheck.png);
    background-size: contain;
  }
  
  /*이미지*/
  .cInterface__container{
    display: flex;
    flex-wrap: wrap;
    width: 602px;
  }
  .cInterface__img{
    display: block;
    outline: 1px solid rgb(223, 223, 223);
    width: 281px;
    height: 500px;
    margin: 10px;
    object-fit: cover;
    background: white;
  }


  /*실시간 뉴스 콘텐츠*/
  #cNewscontents{
    height: 1000px;
    position: relative;
  }

  #cNewscontents h1{
    padding-top: 150px;
}

.cNewscontents__list{
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    margin-top: 30px;
}
.cNewscontents__listitem{
    width: 100%;
    margin: 10px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 10px;
    background-color: #3da626;
    color: white;
    font-size: var(--font-semi-regular);
}

.cNewscontents__window{
    overflow: hidden;  /*check out container's movement : command + */
    position: relative;
    transform: translateY(-50%);
    transform: translateX(-50%);
    width: 63%;
    height: 440px;
    left: 50%;
    top: 50px;
  }
  
  .cNewscontents__container{
    position: absolute;
    text-align: center;
  }
  
  .cNewscontents__item{
    display: inline-block;
    padding: 10px;
  }
  .cNewscontents__img{
    display: block;
    height: 420px;
    object-fit: contain;
    border: 1px solid #d6d6d6;
  }
  

  /*이전버튼*/
.before__btn{
    position: absolute;
    top: 600px;
    left: 10%;
    width: 40px;
    height: 40px;
    background-image:url(img/before_btn.png);
  }
  .before__btn em{
    display: none;
  }

  /*이후버튼*/
  .after__btn{
    position: absolute;
    top: 600px;
    right: 10%;
    width: 40px;
    height: 40px;
    background-image:url(img/after_btn.png);
  }
  .after__btn em{
    display: none;
  }



    /*대기정보 & 주가정보 콘텐츠*/
    #cWeathercontents{
        height: 1000px;
        background-color: #f3f3f8;
        position: relative;
      }
    
      #cWeathercontents h1{
        padding-top: 150px;
    }
    
    .cWeathercontents__list{
        max-width: 1400px;
        margin: 0 auto;
        display: flex;
        margin-top: 30px;
    }
    .cWeathercontents__listitem{
        width: 100%;
        margin: 10px;
        height: 50px;
        line-height: 50px;
        text-align: center;
        border-radius: 10px;
        background-color: #3086f6;
        color: white;
        font-size: var(--font-semi-regular);
    }
    
    .cWeathercontents__window{
      overflow: hidden;  /*check out container's movement : command + */
      position: relative;
      transform: translateY(-50%);
      transform: translateX(-50%);
      width: 63%;
      height: 440px;
      left: 50%;
      top: 50px;
      }
      
      .cWeathercontents__container{
        position: absolute;
        text-align: center;
      }
      
      .cWeathercontents__item{
        display: inline-block;
        padding: 10px;
      }
      .cWeathercontents__img{
        display: block;
        height: 420px;
        object-fit: contain;
        border: 1px solid #d6d6d6;
      }
      
    
      /*이전버튼*/
    .before__btn2{
        position: absolute;
        top: 600px;
        left: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/before_btn.png);
      }
      .before__btn2 em{
        display: none;
      }
    
      /*이후버튼*/
      .after__btn2{
        position: absolute;
        top: 600px;
        right: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/after_btn.png);
      }
      .after__btn2 em{
        display: none;
      }

      /*생활정보 콘텐츠*/
    #cTipcontents{
        height: 1000px;
        position: relative;
      }
    
      #cTipcontents h1{
        padding-top: 150px;
    }
    
    .cTipcontents__list{
        max-width: 1400px;
        margin: 0 auto;
        display: flex;
        margin-top: 30px;
    }
    .cTipcontents__listitem{
        width: 100%;
        margin: 10px;
        height: 50px;
        line-height: 50px;
        text-align: center;
        border-radius: 10px;
        background-color: #ffa3a3;
        color: white;
        font-size: var(--font-semi-regular);
    }
    
    .cTipcontents__window{
        overflow: hidden;  /*check out container's movement : command + */
        position: relative;
        transform: translateY(-50%);
        transform: translateX(-50%);
        width: 63%;
        height: 440px;
        left: 50%;
        top: 50px;
      }
      
      .cTipcontents__container{
        position: absolute;
        text-align: center;
      }
      
      .cTipcontents__item{
        display: inline-block;
        padding: 10px;
      }
      .cTipcontents__img{
        display: block;
        height: 420px;
        object-fit: contain;
        border: 1px solid #d6d6d6;
      }
      
    
      /*이전버튼*/
    .before__btn3{
        position: absolute;
        top: 600px;
        left: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/before_btn.png);
      }
      .before__btn3 em{
        display: none;
      }
    
      /*이후버튼*/
      .after__btn3{
        position: absolute;
        top: 600px;
        right: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/after_btn.png);
      }
      .after__btn3 em{
        display: none;
      }

      /*키오스크 콘텐츠*/
      #cKiosk{
        height: 1000px;
        background: linear-gradient(to top, #a6c1ee 0%, #fbc2eb 100%);
        overflow: hidden;
        position: relative;
    }

      /*키오스크.ver 공통된 title과 description*/
    .cKiosk__title{
        text-align: center;
        width: 70%;
        background-color: #000000;
        margin: 0 auto;
        margin-top: 200px;
        height: 150px;
        border-top-left-radius: 50px;
        border-top-right-radius: 50px;
    }
    .sub__title2{
        text-align: center;
        color: white;
        padding-top: 50px;
    }
    .sub__description2{
        font-size: var(--font-regular);
        font-weight: var(--weight-regular);
        color: var(--color-white);
        margin: 0;
        text-align: center;
    }

    /*키오스크 내용들*/
    .cKiosk__window{
        overflow: hidden;  /*check out container's movement : command + */
        position: relative;
        transform: translateY(-50%);
        transform: translateX(-50%);
        width: 70%;
        height: 450px;
        left: 50%;
        top: 10px;
        background-color: white;
      }
      
      .cKiosk__container{
        text-align: center;
      }

      /*a 링크*/
      .cKiosk__rink1{
        display: inline-block;
        vertical-align: middle;
        background: no-repeat url(img/cKioskimg01.png);
        width: 50%;
        height: 337px;
        margin: 50px;
      }
      .cKiosk__rink2{
        display: inline-block;
        vertical-align: middle;
        background: no-repeat url(img/cKioskimg02.png);
        width: 45%;
        height: 337px;
        margin: 50px;
      }

      .cKiosk__titlecontainer{
        display: inline-block;
        vertical-align: middle;
      }
      .cKiosk__date{
        font-size: var(--font-small);
        text-align: left;
      }
      .cKiosk__insidetitle{
        font-size: 28px;
        font-weight: var(--weight-bold);
        position: relative;
        text-align: left;
      }
      .cKiosk__description{
        margin-top: 20px;
        margin-bottom: 20px;
        text-align: left;
      }

      /*cKiosk title before 구분선 */
      .cKiosk__insidetitle::before{
        content: "";
        position: absolute;
        width: 6px;
        height: 30px;
        background-color: #43b29f;
        border-radius: 50px;
        left: -20px;
        top: 5px;
      }

       /*이전버튼*/
    .before__btn4{
        position: absolute;
        top: 600px;
        left: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/before_btn.png);
      }
      .before__btn4 em{
        display: none;
      }
    
      /*이후버튼*/
      .after__btn4{
        position: absolute;
        top: 600px;
        right: 10%;
        width: 40px;
        height: 40px;
        background-image:url(img/after_btn.png);
      }
      .after__btn4 em{
        display: none;
      }