/* 1. wrapper1 ¼öÁ¤: background-image Á¦°Å, relative ¼³Á¤ */
.wrapper1 {
    width: 100%;
    position: relative; /* ÀÚ½Ä ¿ä¼ÒÀÇ absolute ±âÁØ */
    /* background-image ¼Ó¼º Á¦°Å */
    /* background-size, background-position ¼Ó¼º Á¦°Å */
    overflow: hidden; /* ÀÌ¹ÌÁö°¡ È®´ëµÉ ¶§ ¿µ¿ª ¹ÛÀ¸·Î ³ª°¡´Â °ÍÀ» ¼û±è */
}

/* 2. ÀÌ¹ÌÁö ¾Ö´Ï¸ÞÀÌ¼ÇÀ» À§ÇÑ ±âº» ½ºÅ¸ÀÏ ¼³Á¤ */
.background-image-animate {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* ÀÌ¹ÌÁö°¡ wrapper1À» ²Ë Ã¤¿ìµµ·Ï ¼³Á¤ (±âÁ¸ background-size: cover ¿ªÇÒ) */
    z-index: 0; /* ´Ù¸¥ ¿ä¼Òµé(overlay, banner)º¸´Ù µÚ¿¡ À§Ä¡ */
    
    /* ¾Ö´Ï¸ÞÀÌ¼Ç Àû¿ë */
    animation: zoomOut 2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards; 
}


/* 3. Transform ¾Ö´Ï¸ÞÀÌ¼Ç Å°ÇÁ·¹ÀÓ Á¤ÀÇ */
@keyframes zoomOut {
    0% {
        /* ½ÃÀÛ ½ÃÁ¡: 1.05¹è È®´ëµÈ »óÅÂ */
        transform: scale(1.25); 
    }
    100% {
        /* Á¾·á ½ÃÁ¡: ¿ø·¡ Å©±â (1¹è) */
        transform: scale(1); 
    }
}
  .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2); /* ¾îµÎ¿î ¹ÝÅõ¸í ¿À¹ö·¹ÀÌ */
    z-index: 1;
  }

  .banner {
    position: relative;
    height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.8);
    z-index: 2;
  }

  .banner-text h1 {
    font-size: 40px;
    color: white;
    margin-bottom: 10px;	  
    font-family:'NanumSquareNeoBold', sans-serif;
  }

  .banner-text p {
    font-size: 20px;
    color: white;
    font-family:'NanumSquareNeoBold', sans-serif;
  }

  @media (max-width: 1024px) {
    .banner {
      height: 200px;
      padding: 20px;
    }

    .banner-text h1 {
      font-size: 28px;
    }

    .banner-text p {
      font-size: 15px;
    }
  }

  /* ====== ABOUT ¹Ù ¿µ¿ª ====== */
.top-bar {
  width: 100%;
  height: 80px; /* PC¿¡¼­ ³ôÀÌ 80px */
  background-color: #f66f0d;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.top-container {
  width: 1400px;
  max-width: 95%;
  margin: 0 auto;
  padding-left: 10px;
}

.top-content {
  display: flex;
  flex-direction: column; /* ¼¼·Î Á¤·Ä */
  align-items: flex-start; /* ÁÂÃø Á¤·Ä */
  opacity: 0;
  transform: translateX(100px);
  animation: slideIn 1s ease forwards;
  animation-delay: 0.3s;
}

.top-line {
  width: 40px;
  height: 1px;
  background: #fff;
  margin-bottom: 5px; /* ¼±°ú ±ÛÀÚ °£°Ý */
}

.top-text {
  font-size: 30px;
  color: #fff;
  font-family: 'NanumSquareNeoBold', sans-serif;
}

  /* ====== ¾Ö´Ï¸ÞÀÌ¼Ç ====== */
  @keyframes slideIn {
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  /* ====== ¸ð¹ÙÀÏ ´ëÀÀ ====== */
  @media (max-width: 1024px) {
    .top-bar {
      height: 50px;
    }

    .top-line {
      width: 25px;
    }

    .top-text {
      font-size: 20px;
    }

    .top-content {
      transform: translateX(50px);
      animation: slideIn 1s ease forwards;
      animation-delay: 0.2s;
    }
  }




 /* È¸»ç¼Ò°³ºÎºÐ */
  .wrapper4 {
    width: 100%;
    background-color: #fff;
  }

  .container4 {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 1400px;
    margin: 0 auto;
    padding: 50px 0;
    gap: 50px;
  }

  /* ÀÌ¹ÌÁö ¿µ¿ª */
  .about-image {    
    width: 55%;
    overflow: hidden;
    border-top-right-radius: 80px;
    border-bottom-right-radius: 80px;
    animation: fadeUp 1s ease-out forwards;
    opacity: 0;
    transform: translateY(40px);
    height: 800px; /* PC¿¡¼­ ¼¼·Î °íÁ¤ */
  }

  .about-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* ÀÌ¹ÌÁö ºñÀ² À¯ÁöÇÏ¸é¼­ ²Ë Ã¤¿ì±â */
    transition: transform 1.2s ease;
    display: block;
  }

  .about-image:hover img {
    transform: scale(1.05);
  }


/* ·Î°í ¿µ¿ª */
.logo {
  width: 250px;
  margin: 0 auto 30px auto; /* °¡¿îµ¥ Á¤·Ä */
  text-align: center; /*  ÀÌ¹ÌÁö Áß¾Ó ¹èÄ¡ */
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 1s ease-out forwards;
}

.logo img {
  width: 100%;
  height: auto;
  display: block;
}

  /* ÅØ½ºÆ® ¿µ¿ª */
  .about-text {
    width: 45%;
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 1s ease-out forwards;
    animation-delay: 0.6s;
	padding-right: 10px;
  }

  .about-text h2 {
    font-size: 35px;
    text-align: center; /*  Áß¾Ó ¹èÄ¡ */
    margin-bottom: 25px;
    font-weight: 600;
  }

  .about-text p {
    font-size: 16.5px;
    margin-bottom: 12px;
  }

  .about-text p strong {
    font-weight: 600;
  }

  /* ¾Ö´Ï¸ÞÀÌ¼Ç */
  @keyframes fadeDown {
    0% {
      opacity: 0;
      transform: translateY(-40px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes fadeUp {
    0% {
      opacity: 0;
      transform: translateY(40px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

/* ¹ÝÀÀÇü */
@media screen and (max-width: 1024px) {
  .container4 {
    flex-direction: column;
    padding: 60px 10px;
    gap: 20px;
  }

  .about-image {
    width: 100%;
    border-radius: 30px;
    height: auto; /* ÅÂºí¸´ ÀÌÇÏ¿¡¼­´Â ÀÚµ¿ ³ôÀÌ */
    animation-delay: 0s;
  }

  .about-image img {
    height: auto;
    object-fit: contain;
  }

  .about-text {
    width: 100%; /* ÅØ½ºÆ® ¿µ¿ªÀ» ÀüÃ¼ ³Êºñ·Î È®Àå */
    text-align: left; /* ¿ÞÂÊ Á¤·Ä */
    padding: 0 10px; /* ÁÂ¿ì ¿©¹é */
    animation-delay: 0.4s;
  }

  .about-text h2 {
    font-size: 24px;
  }

  .about-text1 p {
    font-size: 17px;
  }

  .logo {
    text-align: center; /* ÅÂºí¸´/¸ð¹ÙÀÏ¿¡¼­´Â °¡¿îµ¥ Á¤·Ä */
    margin: 0 auto 30px auto;
  }
}

@media screen and (max-width: 768px) {
  .container4 {
    padding: 40px 10px;
  }

  .about-text {
    width: 100%;
    text-align: left;
    padding: 0 10px;
  }

  .about-text h2 {
    font-size: 22px;
  }

  .about-text p {
    font-size: 14px;
  }

  .logo {
    text-align: center; /* ÅÂºí¸´/¸ð¹ÙÀÏ¿¡¼­´Â °¡¿îµ¥ Á¤·Ä */
    margin: 0 auto 30px auto;
  }
}


div a:hover {
  text-decoration: none;
}


/* Áöµµ */
        /* ±âº» wrapper: °¡·Î 100%, ¹è°æ»ö #fff */
        #wrapper6 {
            width: 100%;
            background-color: #fff;
            padding: 0;
            margin: 0;
        }

        /* PC¿ë container: ÃÖ´ë 1400px, Å×µÎ¸®, µÕ±Ù ¸ð¼­¸®, ¹è°æ»ö #fff */
        #container6 {
            max-width: 1400px;
            margin: 0 auto; /* °¡¿îµ¥ Á¤·Ä */
            background-color: #fff;
            border: 1px solid #c7c7c7; /* Å×µÎ¸® 1px, #a0a0a0 */
            border-radius: 15px; /* µÕ±Ù ¹Ú½º ÇüÅÂ */
        }

        /* ±âÁ¸ CSS ½ÃÀÛ */
        .section {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            min-height: 45vh;
            overflow: hidden;
            padding: 0px 20px 0px 20px;
        }

        .left-image {
            flex: 1 1 53%;
            min-height: 400px;
            opacity: 0;
            transform: translateY(80px);
            animation: slideUp 1s ease-out forwards;
            /* PC¿¡¼­ ÀÌ¹ÌÁö ¾Ö´Ï¸ÞÀÌ¼Ç delay: line1 ³¡³­ µÚ ½ÇÇà (0.4s) */
        }

        .left-image.pc {
            animation-delay: 0.4s;
			margin-top: 20px;
			margin-bottom: 20px;
        }

        .right-text {
            flex: 1 1 47%;
            display: flex;
            align-items: flex-start;
            justify-content: flex-start;
            padding: 40px 40px;
            padding-left: 50px;
            flex-direction: column;
        }

        .text-content {
            max-width: 700px;
            margin-bottom: 0;
        }

        .line {
            opacity: 0;
            transform: translateY(60px);
            animation: slideUp 1s ease-out forwards;
        }

        .line1 {
            animation-delay: 0.2s;
            font-size: 2.9rem;
            font-weight: bold;
            margin-bottom: 30px;
        }

        .line2 {
            animation-delay: 0.6s;
            font-size: 1.1rem;
            line-height: 1.8;
        }

        .line3 {
            animation-delay: 1.0s;
            font-size: 1.6rem;
        }

        .line4 {
            animation-delay: 1.2s;
            font-size: 1.1rem;
            font-weight: bold;
        }

        @keyframes slideUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* ¸ð¹ÙÀÏ/ÅÂºí¸´ ½ºÅ¸ÀÏ (max-width: 1024px) */
        @media (max-width: 1024px) {
            /* container6ÀÇ ÁÂ¿ì ¿©¹é 10px */
            #container6 {
                margin-left: 10px;
                margin-right: 10px;
            }
            
            .section {
                display: block;
                min-height: auto;
                padding: 0px 10px 0px 10px; /* ¸ð¹ÙÀÏ section ÁÂ¿ì ¿©¹é 10px */
                margin: 0;
            }

            .left-image {
                width: 100%;
                height: 400px;
                min-height: 400px;
                flex-shrink: 0;
                order: 0;
                animation-delay: 0.2s;
            }

            .left-image.pc {
                animation-delay: 0s; /* ¹«È¿È­ */
            }

            .right-text {
                order: 1;
                padding: 30px 20px;
                padding-bottom: 0 !important;
                padding-left: 20px; /* ÁÂÃø ÆÐµù Á¶Á¤ */
            }

            .text-content {
                margin-bottom: 0;
            }

            .line1 {
                font-size: 2.4rem;
                animation-delay: 0.4s;
            }

            .line2 {
                font-size: 1.0rem;
                animation-delay: 0.8s;
            }

            .line3 {
                font-size: 1.3rem;
                animation-delay: 1.2s;
            }

            .line4 {
                font-size: 0.85rem;
                animation-delay: 1.2s;
                margin-bottom: 30px;
            }
        }

        /* Ä«Å×°í¸® ½ºÅ¸ÀÏ (±âÁ¸ ÄÚµå À¯Áö) */
        #bo_admin {float:left;}
        #bo_cate1 {text-align:center; float:center; margin-bottom:20px;}
        #bo_cate1 h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
        #bo_cate1 ul {zoom:1}
        #bo_cate1 ul:after {display:block;visibility:hidden;clear:both;content:""}
        #bo_cate1 li {
            display: inline-block;
            position: relative;
            padding: 0 10px;
        }

        #bo_cate1 a {
            font-family: 'NanumSquareNeo';
            font-size: 12px;
            display: block;
            line-height: 26px;
            padding: 3px 0;
            background: #fff;
            color: #444;
        }

        #bo_cate1 li a:hover {
            color: #000;
        }

        #bo_cate1 #bo_cate_on {
            position: relative;
            display: inline-block;
            padding-bottom: 3px;
            font-weight:bold;
            color: #111;
        }

        #bo_cate1 #bo_cate_on::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 1px;
            background: #111;
        }

        /* ¹öÆ° ½ºÅ¸ÀÏ (±âÁ¸ ÄÚµå À¯Áö) */
        .consult-btn {
            display: inline-block;
            padding: 20px 40px;
            background-color: #f66f0d;
            color: #fff;
            border: 2px solid #f66f0d;
            border-radius: 35px;
            text-align: center;
            font-size: 18px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
        }
            
        .consult-btn:hover {
            background-color: #fff;
            color: #111;
            border: 2px solid #f66f0d;
        }

        /* ¸Å¿ì ÀÛÀº ¸ð¹ÙÀÏ (¼±ÅÃ »çÇ×) */
        @media (max-width: 768px) {
            .consult-btn {
                padding: 15px 30px;
                font-size: 16px;
            }
        }
        /* ±âÁ¸ CSS ³¡ */