    @keyframes forwardRotate {
      from {
        transform: rotate(0deg), translate(-50% -50%);
      }

      to {
        transform: rotate(360deg);
      }
    }

    @keyframes reverseRotate {
      from {
        transform: rotate(-0deg);
      }

      to {
        transform: rotate(-360deg);
      }
    }

    @keyframes fadeInUp {
      from {
        opacity: 0;
        transform: translate3d(0, 30%, 0);
      }

      to {
        opacity: 1;
        transform: translateZ(0);
      }
    }

    @font-face {
      font-family: 'KIMM_Bold';
      src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2212@1.0/KIMM_Bold.woff2') format('woff2');
      font-weight: 700;
      font-style: normal;
    }

    /*
    * {
      padding: 0;
      margin: 0;
      list-style: none;
      box-sizing: border-box;
      text-decoration: none;
      font-family: 'Pretendard Variable', Pretendard, -apple-system,
        BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI',
        'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', 'Apple Color Emoji',
        'Segoe UI Emoji', 'Segoe UI Symbol', sans-serif;
    }

    html{
      width: 100vw;
      overflow-x: hidden!important;
    }
      */

    body {
        line-height: 1.4;
        letter-spacing: -0.02em;
        overflow-x: hidden!important;
    }

    #IBM_pc {
      /*
      width: 100vw;
      overflow-x: hidden;
      */

      h1 {
        font-weight: 500;
        font-size: 18px;
        line-height: 22px;
        cursor: pointer;
        a{
          color: #222;
        }
        a:visited{
          color: inherit;
        }
      }

      h2 {
        font-size: 70px;
        text-align: center;
        font-weight: 700;
        letter-spacing: -1px;
      }

      h3 {
        font-size: 50px;
        font-weight: 500;
      }

      h4 {
        font-size: 30px;
        font-weight: 400;
        line-height: 32px;
      }

      h5 {
        font-size: 24px;
        font-weight: 200;
        color: #333;
        line-height: 32px;
      }

      .f18 {
        font-size: 18px;
      }

      .f14 {
        font-size: 14px;
      }

      p,
      h2,
      h3,
      h4,
      h5,
      td {
        letter-spacing: -0.4px;
        color: #fff;
      }

      img {
        display: block;
        margin-bottom: -1px;
      }

      .inner {
        width: 1200px;
        margin: 0 auto;
      }

      /*
      header {
        position: fixed;
        background: #fff;
        width: 100vw;
        z-index: 99;
        border-bottom: 1px solid #E0E0E0;

        nav {
          width: 1200px;
          height: 130px;
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          align-items: center;

          ul {
            display: flex;
            gap: 50px;
          }

          li {
            text-align: center;
            align-content: center;
            font-size: 24px;

            button {
              border: none;
              background: none;
              font-size: 24px;
              cursor: pointer;
            }
          }
        }
      }
        */


      main {
        text-align: center;

        img {
          display: inline;
          vertical-align: top;
        }


        .info {
          margin-top: 80px;

          .infoTop {
            background: url(/home/images/main/ibm/info_bg.jpg) no-repeat center;
            padding: 50px 0;
          }

          .infoTitle {
            width: 100vw;

            p,
            span,
            h2,
            h3,
            h4,
            h5 {
              font-family: 'KIMM_Bold';
              text-align: left;
            }

            h2 {
              line-height: 80px;
            }

            h3 {
              line-height: 60px;
            }

            h2,
            h3 {
              letter-spacing: -1px;

              span {
                color: #C7FF43;
              }
            }

            h4 {
              padding-top: 20px;
            }

            p {
              line-height: 24px;
            }

            .sup {
              color: #fff;
              font-size: 16px;
              padding-bottom: 5px;
            }

            .btnCont {
              background: #39D201;
              display: flex;
              align-items: center;
              justify-content: center;
              border-radius: 40px 5px;
              padding: 18px 50px 24px 50px;
              margin: 15px 0;
              width: 600px;
              cursor: pointer;

              span {
                color: #fff;
                font-size: 50px;
                font-weight: 600;
                font-family: 'Pretendard Variable';
              }

              .edu {
                padding: 15px 0 5px 5px;
              }

              .apply {
                padding: 15px 30px 5px 10px;
              }

              .arrow {
                padding: 5px 0 0 0;
              }


            }
          }

          .infoCont {
            text-align: left;
            display: flex;
            position: relative;
            width: 100vw;
            padding: 80px 0 0 0;

            .inner {
              display: flex;
              justify-content: space-between;
              align-items: center;
              gap: 130px;
            }

            .title {
              padding-left: 20px;

              p {
                font-size: 18px;
                font-weight: 100;
                padding-top: 30px;
                width: 290px;
                line-height: 24px;
              }

              span {
                font-weight: 400;
              }
            }

            .cont {
              width: 750px;

              .ani {
                animation: fadeInUp 1.8s;
              }

              ul {
                margin: 0 auto;

                li {
                  display: flex;
                  align-items: top;
                  gap: 20px;
                  padding: 0 0 30px 0;
                  text-align: left;

                  h4 {
                    line-height: 44px;
                    font-weight: 500;
                    padding: 8px 0 0 5px;
                  }

                  .time {
                    font-size: 24px;
                    color: #fff;
                  }

                  span {
                    font-size: 18px;
                    font-weight: 300;
                    color: #fff;
                    padding-top: 17px;
                  }
                }

                li:last-child {
                  padding-bottom: 0;
                }

                li:first-child h5 {
                  padding-top: 30px;
                }
              }

              span {
                color: #C5C5C5;
              }

              .icon01 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/info_icon01.png) no-repeat center;
              }

              .icon02 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/info_icon02.png) no-repeat center;
              }

              .icon03 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/info_icon03.png) no-repeat center;
              }

              .icon04 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/info_icon04.png) no-repeat center;
              }

              .icon05 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/info_icon05.png) no-repeat center;
              }
            }

          }

         .infoBanner {
				background: #1B1B1B;
				padding: 40px 0;
				
				ul {
					display: flex;
					width: 1200px;
					justify-content: center;
					align-items: flex-start;
					margin: 0 auto;
					gap: 30px;
					text-align: left;
					position: relative;
					li {
						display: flex; gap: 40px; 
						& + li {margin-left: 0;}
						.icon {width: 115px;
							img {width: 100%;image-rendering: crisp-edges;}
						}
						.txt {padding-top: 20px;
							.main-txt {
								.top {
									span {font-size: 18px;font-weight: 300;
										&.t1 {color: #46ACFF;font-weight: 500;}
										&.line {margin-left: 10px;text-decoration: line-through;}
										&.low-level {color: #666;}
									}
								}
								strong {margin-top: 6px;display: block;font-size: 32px;font-weight: 600;color: #fff;letter-spacing: -0.01em;}
							}
							.sub-txt {
								margin-top: 8px;
								p {font-size: 14px;font-weight: 500;letter-spacing: -0.01em;line-height: 1.4;color: #d8d8d8;white-space: nowrap;}
							}
						}
					}
                    li:nth-of-type(2),
                    li:nth-of-type(3) {
                        strong{padding-top:10px;}
                    }
				}
			}


        }

        /* //info */


        .agent {
          padding: 50px 0;
          position: relative;
          background: #0B0B25;

          span {
            color: #1E9EFF;
            font-weight: 600;
          }


          .channel {
            padding: 0 0 50px 0;

            h3 {
              padding: 0 0 20px 0;
            }

            .sub {
              span {
                color: #C2FF33;
                font-weight: 600;
              }
            }

            ul {
              width: 810px;
              margin: 0 auto;

              li {
                display: flex;
                justify-content: space-between;
                padding-top: 50px;

                &:nth-child(1) {
                  text-align: right;
                }

                &:nth-child(2) {
                  text-align: left;
                }

                .title {
                  background: #2579E8;
                  display: inline-block;
                  text-align: center;
                  border-radius: 2px;
                  border-bottom-left-radius: 10px;
                  padding: 5px 20px;
                  font-weight: 600;
                  margin: 10px 0;
                }

                h4 {
                  line-height: 36px;
                }

                .text {
                  margin-top: 20px;
                  font-weight: 300;
                }
              }
            }
          }

          /* //channel */


          .aiHead {
            width: 100vw;
            padding-top: 50px;

            p {
              font-size: 18px;
              font-weight: 200;
              padding-top: 20px;

              span {
                color: #1E9EFF;
                font-weight: 600;
              }
            }


            .listTop {
              width: 1200px;
              display: flex;
              justify-content: center;
              flex-wrap: wrap;
              gap: 127px 60px;
              margin: 140px auto 100px;
              position: relative;

              &::after {
                content: '';
                position: absolute;
                width: 880px;
                height: 45px;
                border-bottom-left-radius: 10px;
                border-bottom-right-radius: 10px;
                border: 5px solid #3FAFF4;
                border-top: none;
                bottom: -50px;
              }

              li {
                padding: 100px 0 0 0;
                border: 5px solid #3FAFF4;
                border-radius: 20px;
                width: 240px;
                height: 200px;
                position: relative;

                img {
                  position: absolute;
                  left: 50%;
                  transform: translateX(-50%);
                  top: -90px;
                }

                span {
                  color: #fff;
                }

                h5 {
                  font-weight: 600;
                }

                &:nth-child(2)::after,
                &:nth-child(3)::after {
                  content: '';
                  background: #3FAFF4;
                  width: 5px;
                  height: 45px;
                  border-radius: 0;
                  position: absolute;
                  bottom: -50px;
                  left: 115px;
                }
              }
            }


            .listBottom {
              color: #fff;

              li {
                margin-bottom: 20px;
                position: relative;

                h4 {
                  background: #3FAFF4;
                  width: 1000px;
                  margin: 0 auto;
                  border-radius: 20px;
                  padding: 30px;
                  font-weight: 600;
                }

                &:nth-child(1)::after,
                &:nth-child(2)::after,
                &:nth-child(3)::after {
                  content: '';
                  background: #3FAFF4;
                  width: 5px;
                  height: 50px;
                  border-radius: 0;
                  position: absolute;
                  top: -50px;
                  /* left: 50%; */
                  margin: 0 auto;
                }
              }
            }

          }

          /* //aiHead */


          .aiRank {
            display: flex;
            justify-content: center;
            gap: 40px;
            margin: 50px 0;
          }

          .aiTable {

            h3 {
              padding-bottom: 10px;

              span {
                color: #1E9EFF;
              }
            }

            h4 {
              padding-bottom: 10px;
            }

            p {
              padding-bottom: 50px;
            }

            .unit {
              text-align: right;
              padding-right: 10px;
              color: #999;
            }

            .table {
              display: flex;
              justify-content: center;
              align-items: center;
              gap: 10px;
            }

            .source {
              color: #999;
              padding: 50px 0 100px 0;
            }
          }


          .aiService {
            margin-bottom: -2px;

            h3 {
              padding-bottom: 30px;
            }

            .text {
              font-weight: 300;

              span {
                color: #3FAFF4;
              }
            }

            .box {
              background: #1F1F47;
              margin: 0 auto;
              width: 800px;
              padding: 30px;
              border-radius: 5px;
              line-height: 21px;
              margin-top: 45px;

              span {
                color: #FF2474;
                font-weight: 500;
              }
            }

            .source {
              color: #999;
              padding-bottom: 100px;
            }

            ul {
              display: flex;
              flex-wrap: wrap;
              justify-content: center;
              margin: 50px 0;
              gap: 25px 40px;
            }
          }
        }

        /* // agent */

        
        .curriHead {
          background: #000;
          position: relative;

          h3 {
            padding: 15px 0 50px 0;
          }


          .curriTab {
            .tabTitle {
              width: 1200px;
              display: flex;
              color: #fff;
              margin: 0 auto;
              font-size: 20px;

              p {
                padding: 20px;
                border: 2px solid #000;
                background: #121252;


                &:nth-of-type(1) {
                  width: 150px;
                }

                &:nth-of-type(2) {
                  width: 340px;
                }

                &:nth-of-type(3) {
                  width: 700px;
                }
              }
            }

            .tabWrap {
              display: flex;

              .tabIndex {
                width: 150px;
                height: 1045px;

                p {
                  border: 2px solid #000;
                  align-content: center;
                  width: 150px;

                  &:nth-of-type(1) {
                    background: #E3E3E3;
                    color: #666;
                    height: 690px;
                  }

                  &:nth-of-type(2) {
                    background: #B4B4B4;
                    color: #666;
                    height: 345px;
                  }
                }

              }

              .tabMenu {
                width: 340px;
                height: 1045px;

                button {
                  width: 340px;
                  height: 115px;
                  cursor: pointer;
                  border: 2px solid #000;
                  background-color: #E3E3E3;
                  color: #666;
                  text-align: left;
                  padding-left: 20px;
                  font-size: 18px;
                  transition: 0.6s;
                  text-align: center;

                  &:nth-of-type(7),
                  &:nth-of-type(8),
                  &:nth-of-type(9) {
                    background: #B4B4B4;
                  }


                  &:hover {
                    background-color: #01A3E4;
                    color: #fff;
                  }
                }

                button.active {
                  background-color: #01A3E4;
                  color: #fff;
                }
              }

              .tabCont {
                text-align: left;
                font-weight: 300;
                border: 2px solid #000;
                height: 1045px;

                p {
                  color: #666;
                  letter-spacing: -0.8px;
                  line-height: 22px;
                }

                span {
                  color: #01A3E4;
                  font-weight: 600;
                  line-height: 25px;
                }

                div:not(.table) {
                  display: none;
                  width: 702px;
                  height: 1033px;
                  background-color: #fff;
                  border: 1px solid #011B5C;
                  font-size: 18px;
                  padding: 20px;
                  line-height: 24px;
                }

                div.table {
                  display: flex;
                  padding-top: 20px;

                  p:nth-of-type(1) {
                    border: 1px solid #C8C8C8;
                    display: inline-block;
                    background: #EEFAFF;
                    align-content: center;
                    text-align: center;
                    width: 200px;
                  }

                  p:nth-of-type(2) {
                    border: 1px solid #C8C8C8;
                    border-left: none;
                    display: inline-block;
                    width: 520px;
                    padding: 15px 0 15px 20px;
                  }
                }

                div.table:not(div.table:nth-of-type(1)) {
                  padding: 0;

                  p {
                    border-top: none;
                  }
                }

                div.narrow {
                  padding: 20px 0 15px 0;

                  p:nth-of-type(1) {
                    width: 160px;
                  }

                  p:nth-of-type(2) {
                    width: 540px;
                    padding: 15px 0 15px 15px;
                    font-size: 17px;
                  }
                }

                div.active {
                  display: block;
                }
              }

              /* //tabCont */
            }
          }
        }

        /* //curriHead */


        .curriTail {
          background: linear-gradient(to bottom, #0B0B25, 90%, #000);
          position: relative;
          text-align: center;
          position: relative;
          padding: 50px 0;

          img {
            margin: 0 auto;
          }

          .sup {
            font-size: 18px;
            font-weight: 200;
            padding-bottom: 15px;
          }

          p {
            padding-bottom: 40px;
          }

          h3 {
            padding-bottom: 10px;

            span {
              color: #08B1FF;
              font-weight: 600;
            }
          }

          h4 {
            padding: 100px 0 20px 0;
            line-height: 36px;
          }

          .curriEdge {
            width: 480px;
            height: 480px;
            position: absolute;
            border-radius: 50%;
            margin: 70px 0;
            top: 40%;
            left: 50%;
            transform: translate(-50%, -50%);


            .edge_wrap {
              position: absolute;
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              border-radius: 50%;
            }

            .edge_box {
              position: absolute;
              top: -20.5%;
              left: -21%;
              width: 145%;
              height: 145%;
              animation: forwardRotate 30s linear infinite;
              line-height: 1rem;
              border-radius: 50%;

              div {
                width: 165px;
                height: 165px;
                font-size: 18px;
                color: #426190;
                animation: reverseRotate 30s linear infinite;
                border-radius: 50%;
                align-content: center;

                p {
                  letter-spacing: -0.5px;
                  color: #fff;
                  padding-top: 10px;
                  font-weight: 200;
                  letter-spacing: -0.7px;
                }
              }
            }

            .edge_box1 {

              div {
                position: relative;
                top: -8%;
                left: 56%;
              }
            }

            .edge_box2 {
              div {
                position: relative;
                top: 16.5%;
                left: 83%;
              }
            }

            .edge_box3 {
              div {
                position: relative;
                top: 55%;
                left: 85%;
              }
            }

            .edge_box4 {
              div {
                position: relative;
                top: 84%;
                left: 56%;
              }
            }

            .edge_box5 {
              div {
                position: relative;
                top: 84%;
                left: 19%;
              }
            }

            .edge_box6 {
              div {
                position: relative;
                top: 54.5%;
                left: -8%;
              }
            }

            .edge_box7 {
              div {
                position: relative;
                top: 17.5%;
                left: -8%;
              }
            }

            .edge_box8 {
              div {
                position: relative;
                top: -8%;
                left: 19%;
              }
            }
          }
        }

        /* //curriTail */


        .benefit {
          background: #000;
          padding: 80px 0;

          .sup {
            font-size: 18px;
            font-weight: 200;
            padding-bottom: 15px;
          }

          h3 {
            padding-bottom: 50px;
          }

          h4 {
            line-height: 36px;
            font-weight: 200;
            padding: 20px 0;
          }

          ul {
            width: 1200px;
            margin: 0 auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 65px 60px;
          }
        }

        /* //benefit */


        .step {
          background: #000;

          h3 {
            padding-bottom: 50px;
          }

          p {
            font-size: 18px;
            font-weight: 200;
            background: #333;
            width: 950px;
            padding: 15px 0;
            border-radius: 10px;
            margin: 50px auto;
          }

          ul {
            display: flex;
            justify-content: center;
            gap: 50px;

            li {
              text-align: center;

              h4 {
                font-weight: 500;
                margin: 30px 0 0 0;
              }

              &:nth-child(4) {
                h4 {
                  color: #0BD800;
                }
              }
            }
          }
        }

        /* //step */


        .guide {
          background: #000;
          padding: 100px 0 50px 0;


          h3 {
            padding-bottom: 20px;
          }

          p:not(li p) {
            &:nth-of-type(1) {
              font-size: 18px;
              color: #fff;
              padding-bottom: 50px;
            }
          }

          ul {
            text-align: left;
            display: flex;
            justify-content: center;
            gap: 100px;

            li {
              width: 310px;

              h5,
              p {
                display: inline-block;
              }

              p {
                color: #999;
                padding: 40px 0 0 15px;

                span {
                  font-weight: 600;
                  font-size: 24px;
                  color: #fff;
                  line-height: 45px;
                }
              }
            }
          }
        }

        /* //guide */


        .faq {
          text-align: left;

          .bg {
            width: 1200px;
            margin: 0 auto;
            /* background: #FBFBFB; */
          }

          h2 {
            font-weight: 700;
            font-size: 50px;
            color: #333;
            padding: 100px 0 40px 0;
            text-align: center;
          }

          .faqAccordian {
            padding-bottom: 50px;
          }

          .firstQ {
            border-top: 2px solid #a2a2a2;
          }

          .question {
            background: #fff;
            font-size: 30px;
            font-weight: 600;
            padding: 30px 40px;
            border-top: 1px solid #E8ECEE;
            border-bottom: 2px solid #E8ECEE;

            p {
              color: #222;
              display: inline-block;
              margin-top: 2px;
            }
          }

          .question::before {
            content: '';
            display: block;
            width: 40px;
            height: 40px;
            background: url(/home/images/main/ibm/question.png) no-repeat center / cover;
            margin: 0 20px 0 0;
            float: left;
          }

          .question::after {
            content: '';
            display: block;
            width: 25px;
            height: 16px;
            background: url(/home/images/main/ibm/more_close.png) no-repeat center / cover;
            float: right;
            margin-top: 15px;
          }

          details[open] .question::after {
            transform: translate(0, -50%) rotate(180deg);
          }

          .answer {
            background: #F0FBFF;
            font-size: 18px;
            font-weight: 300;
            color: #444;
            padding: 30px 100px;
            line-height: 26px;
          }
        }
      }
      /* // main */

      .contact {
          .cont_logo {
            /* background: #f9f9f9; */
            padding: 30px 0;
            
            img{
              margin: 0 auto;
            }
          }
      }
    }

    .supermodal-container .supermodal-title .supermodal-close{color:#fff !important;}


    /*남은일정 타이머 기능 */
#timer {
	position: fixed;
	bottom: 4px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 99;
	
	.floating-cta-inner {
		position: relative;
		width: 800px;
		height: 64px;
		margin: 0 auto;
		backdrop-filter: blur(10px);
		background-color: rgba(20, 21, 22, 0.6);
		border: 1px solid rgba(164, 164, 164, 0.3);
		
		padding: 12px 12px;
		border-radius: 8px;
		box-sizing: border-box;
		
		.floating-cta-content {
			width: 100%;
			display: flex;
			align-items: center;
			gap: 12px;
			
			.floating-cta-txt {
				padding: 0 12px;
				display: flex;
				align-items: center;
				.floating-cta-course,
				.floating-cta-sep,
				.floating-cta-label {
					color: #e1e1e1;
					font-size: 20px;
					font-weight: 400;
	
					&.highlight {
						color: #fff;
						font-weight: 500;
					}
				}
				.countdown {
					display: inline-flex;
					font-size: 20px;
					strong {
						min-width: 28px;
						font-weight: 600;
						text-align: center;
						color: #fff;
					}
					.countdown-unit {
						color: #e1e1e1;
						font-weight: 400;
					}
				}
			}
			.floating-cta-action {
				position: relative;
				margin-left: auto;
				
				button {
					position: relative;
					padding: 8px 24px;
					background-color: #00eaff;
					border-radius: 8px;
					display: flex;
					justify-content: center;
					align-items: center;
					flex: none;
					order: 1;
					flex-grow: 0;
					color: #111;
					font-size: 16px;
					font-weight: 600;
					cursor: pointer;
				}
			}
		}
	}
}



    /* 추가 */
    /*
    .footerCont {
      display: flex;
      align-items: center;
      font-size: 12px;
      line-height: 18px;
      letter-spacing: -0.4px;
      width: 1200px;
      height: 120px;
      margin: 0 auto;
    }
      */

    /* 추가 */

/* 사용자가 준 기본값(그대로 적용) */
.footerCont{
  display: flex;
  align-items: center;
  font-size: 15px;
  line-height: 18px;
  letter-spacing: -0.4px;
  width: 1200px;
  height: 120px;
  margin: 0 auto;
  box-sizing: border-box;
}

/* 내부 그리드: label/value/divider x3 = 총 8컬럼 */
.footer-grid{
  width: 100%;
  display: grid;
  /* label 고정폭 / value 유연 / divider 좁게 */
  grid-template-columns: 90px 2fr 10px 90px 1.6fr 10px 80px 2fr; /* ✅ 이 라인 수정 */
  align-items: center;
  column-gap: 12px; /* 텍스트들 사이 간격 */
  row-gap: 6px;
  /* 텍스트 수직 중앙 정렬을 위해 높이 그대로 사용 */
}

/* 공통 스타일 */
.footer-grid .label {
  font-weight: 700;
  text-align: left;
  padding-left: 6px;
  color: #222;
}

.footer-grid .value {
  text-align: left;
  color: #333;
  padding-left: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.footer-grid .divider {
  text-align: center;
  color: #999;
  font-weight: 400;
}

    .topBtn{
        border: none;
        width: 60px;
        height: 60px;
        background-color: rgba(92, 100, 114, 0.5);
        background-image: url(/home/images/main/top_btn.png?ver=3);
        border-radius: 50%;
        cursor: pointer;
        z-index: 50;
        position: fixed;
        left: 90vw;
        bottom: 9vh;
        display: none;
      }

.sub-line {
  margin-left: 14px;
  font-size: 20px;
  margin-top: 2px;
  line-height: 1.4;
  margin-bottom:15px;
}
  