
@charset "utf-8";

.skip_links {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2000
}

.skip_links a {
    overflow: hidden;
    display: block;
    height: 0;
    font-size: 0;
    line-height: 0
}

.skip_links a:focus {
    height: auto;
    padding: 10px 5px;
    background: #000;
    color: #fff;
    font-size: 16px;
    text-align: center;
    line-height: 1em
}

.wrapper {
    width:100%;
    min-width:1400px;
}

header {
    width: 100%; /* 전체 너비 사용 */
}

.header {
    width:100%;
    position:relative;
    background:#fff;
    z-index:100;
    transition: all 0.3s ease-in-out;
}

/* 헤더가 고정될 때의 스타일 */
.header.header_fixed {
    position: fixed;
    top: 0;
    left: 0;
}

/* 헤더 숨김 상태 (스크롤 다운) */
.header.header_hide {
    transform: translateY(-100%); /* 헤더를 위로 완전히 숨김 */
    opacity: 0;
}

/* 헤더 보임 상태 (스크롤 업) */
.header.header_show {
    transform: translateY(0); /* 헤더를 원래 위치로 */
    opacity: 1;
}


.utility_area {
    width:100%;
    height:42px;
    background: #008758;
}

header.mobile {
    display:none;
}


header .header_inner {
    display:flex;
    align-items:center;
    width: 1400px;
    max-width: 1400px; /* 최대 너비로 변경 */
    height:100%;
    margin:0 auto;
}

header ul {
    display:flex;
    align-items:center;
}

header .center_link {
    height:100%;
    background: #006C46;
}

header .center_link .sub {
  height:100%;
  background: #005839;
}

header .center_link li {
  border-right: 1px solid #008758;
}


header .center_link ul li a {
    display:flex;
    align-items:center;
    min-width:80px;
    width:auto;
    height:42px;
    padding:13px 15px;
    color:#fff;
    font-weight: 700;
    font-size: 15px;
    white-space: nowrap;
}

header .center_link ul li.eng a {
    font-weight: 600;
}


header .center_link ul li.kywa a {
    background:url("../images/logo_k.png") center no-repeat;
    background-size:53px auto;
    font-size:0;
}

header .center_link ul li.now a {
    background:#fff;
    color: #006C46;
}

header .user_nav {
    margin-left:auto;
}

header .user_nav ul {
    gap:24px;
}

header .user_nav li a {
    color:#fff;
    white-space: nowrap;
}

header .user_nav li.blog a {
    display:block;
    width:26px;
    height:26px;
    background:url("../images/btn_blog.svg") center no-repeat;
    background-size:100%
}

header .user_nav li.is a {
    display:block;
    width:26px;
    height:26px;
    background:url("../images/btn_insta.svg") center no-repeat;
    background-size:100%
}

.gnb {
    height:100px;
    border-bottom:1px solid #d2d2d2;
    width: 100%; /* 전체 너비 사용 */
}

.gnb h1 a {
    display:block;
    width:226px;
    height:auto;
}

.gnb ul {
    gap:70px;
    margin-left:auto;
}

.gnb ul a {
    display:flex;
    align-items:center;
    font-size: 22px;
    font-weight: 700;
}

.gnb ul a.link::after {
    content:'';
    display:block;
    width: 16px;
    height: 16px;
    margin-left:10px;
    background:url("../images/icon_link.svg") center no-repeat;
    background-size:100%;
}

footer {
    background: #363636;
}

.footer_top {
    display:flex;
    align-items:center;
    width:1400px;
    margin:0 auto;
}

.footer_wrap .f_menu {
    display:flex;
    align-items:center;
    height:70px;
    gap:32px;
}

.footer_wrap .f_menu a {
    display:block;
    height:100%;
    color:#fff;
}

.footer_wrap .f_menu .text_green a {
    color: #00C580;
    text-decoration: underline;
}

.footer_wrap .site {
    width:240px;
    margin-left:auto;
    position:relative;
    border:1px solid #555;
    border-style:none solid;
    color:#fff;
}

.footer_wrap .site.mobile {
    display:none;
}

.footer_wrap .site strong,
.footer_wrap .site a {
    color:#fff;
}

.footer_wrap .site strong {
    display:flex;
    align-items:center;
    width:100%;
    height:70px;
    padding:0 25px 0 20px;
    cursor: pointer;
}

.footer_wrap .site strong::after {
    content:'';
    display:block;
    width:11px;
    height:6px;
    margin-left:auto;
    background:url("../images/bul_family.svg") center no-repeat;
    background-size:100%;
    transition:transform 0.3s ease;
}

.footer_wrap .site strong.on::after {
    transform:rotate(180deg);
}

/* 250825 수정 */
.footer_wrap .site ul {
    display: none;
    position: absolute;
    top: -361px;
    left: -1px;
    width: 240px;
    border: 1px solid #555;
    border-bottom: 0;
    background: #363636;
    z-index: 100;  /* z-index 추가하여 다른 요소 위에 표시 */
}

.footer_wrap .site ul.on {
    display:block;
}

.footer_wrap .site ul li a {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    height:40px;
    padding-left:20px;
}

.footer_bottom {
    border-top:1px solid #555;
}

.footer_info {
    display:flex;
    width:1400px;
    margin:0 auto;
    padding:40px 0;
    position:relative;
}

.footer_info ul {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:16px 20px;
    width:530px;
    margin-left:40px;
}

.footer_info li {
    position:relative;
    color: #AFAFAF;
    font-size:15px;
}

.footer_info li.bul::before {
    content:'';
    display:block;
    width:1px;
    height:11px;
    position:absolute;
    top:50%;
    left:-10px;
    background: #616161;
    transform: translateY(-50%);
}

.footer_info p {
    margin-left:40px;
    color: #AFAFAF;
    font-size:15px;
    margin-top:16px;
}

.footer_info .address {
  margin-left:40px;
  color: #AFAFAF;
  font-size:15px;
  margin-top: 0;
  margin-bottom: 16px;
}

.chatbot {
    display:flex;
    flex-direction: column;
    align-items:center;
    justify-content:center;
    width:120px;
    height:120px;
    position:fixed;
    top:718px;
    right:70px;
    border-radius:50%;
    background:#01283B;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.24));
    z-index:20;
}

.chatbot span {
  font-size: 18px;
  font-weight: 600;
  color: #7ED9E0;
}

.f_logo {
    display:flex;
    align-items:center;
    position:absolute;
    top:40px;
    right:0;

}

.f_logo a + a {
    margin-left:20px;
}

.f_logo img {
    width:auto;
    height:24px;
}

.f_logo a:first-child img {
    width:auto;
    height:34px;
}

/* 250825 추가 */
select {
    -webkit-appearance: none; /* 크롬, 사파리 */
    -moz-appearance: none;    /* 파이어폭스 */
    appearance: none;         /* 표준 */

    background: url('../images/bul_select.svg') right 18px center no-repeat;
    background-size: 12px;
}
@media screen and (max-width: 1023px) {
    .wrapper {
        min-width:100%;
    }

    .utility_area {
        display:none;
    }

    header.pc {
        display:none;
    }

    header.mobile {
        display:flex;
        align-items:center;
        justify-content: space-between;
        height:13.9vw;
        padding:0 3.9vw 0 5vw;
        border-bottom:1px solid #d2d2d2;
        position:fixed;
        top:0;
        left:0;
        z-index: 100;
        background-color: #FFFFFF;
    }

    header.mobile .menu_toggle {
        width:6.1vw;
        height:6.1vw;
    }

    header.mobile .menu_toggle svg {
        width:100%;
        height:100%;
    }

    header .header_inner {
        width:100%;
    }

    header h1 a {
        display:block;
        width:auto;
        height:6.1vw;
    }

    header h1 a img {
        height:100%;
    }

    .mobile_menu {
        display:none;
        width:100%;
        height:100%;
        position:absolute;
        top:0;
        right:0;
        background:rgba(0,0,0,0.7);
        z-index:100;
    }

    .mobile_menu.on {
        display:block;
        height: 100vh;
    }

    .mobile_menu .menu_inner {
        overflow-y:auto;
        width:78.1vw;
        height:100vh;
        margin-left:auto;
        position:relative;
        background:#fff;
        z-index:99;
    }

    .mobile_menu .menu_top {
        display:flex;
        align-items:center;
        justify-content:space-between;
        width:100%;
        padding:3.9vw 5vw;
    }

    .mobile_menu .menu_top h1 img {
        width:auto;
        height:6.1vw;
    }

    .mobile_menu .user_nav {
        background:#006C46;
    }

    .mobile_menu .user_nav ul {
        gap:0;
    }

    .mobile_menu .user_nav li {
        flex:1;
    }

    .mobile_menu .user_nav li + li {
        border-left:1px solid rgba(255,255,255,0.2);
    }

    .mobile_menu .user_nav li a {
        display:flex;
        align-items:center;
        justify-content:center;
        height:11.1vw;
        font-size:3.6vw;
        font-weight: 600;
    }

    .main_menu {
        display:flex;
        align-items:flex-start;
        flex-direction:column;
        width:100%;
    }

    .main_menu li {
        width:100%;
    }

    .main_menu li a {
        display:flex;
        align-items:center;
        width:100%;
        height:13.9vw;
        padding:0 5vw;
        border-bottom:1px solid #e2e2e2;
        font-size:3.9vw;
        font-weight:600;
    }

    .main_menu li a.link::after {
        content:'';
        display:block;
        width:3.3vw;
        height:3.3vw;
        margin-left:2.2vw;
        background:url("../images/icon_link_m.svg") center no-repeat;
        background-size:100%;
    }

    main {
      padding-top:13.9vw;
    }

  .family_site {
        width:100%;
        padding:5.5vw 5vw;
    }

    .family_site select {
        width:100%;
        height:11.1vw;
        padding:0 3.3vw;
        border:1px solid #C2C2C2;
        font-size:3.6vw;
    }

    .sns_link {
        width:100%;
        position:absolute;
        bottom:0;
        left:0;
    }

    .sns_link ul {
        width:100%;
    }

    .sns_link ul li {
        flex:1;
    }

    .sns_link ul li + li {
        border-left:1px solid #e2e2e2;
    }

    .sns_link a {
        display:flex;
        align-items:center;
        justify-content:center;
        height:11.1vw;
        background: #F9F9F9;
        color:#666;
        font-size:3.9vw;
        font-weight:600;
    }

    .sns_link a::before {
        content:'';
        display:block;
        width:6.7vw;
        height:6.7vw;
        margin-right:2.2vw;
        border-radius:50%;
    }

    .sns_link .blog a::before {
        background:#42D31A url("../images/icon_blog_m.svg") center no-repeat;
        background-size:4vw auto;
    }

    .sns_link .is a::before {
        background:url("../images/icon_insta_m.svg") center no-repeat;
        background-size:100%;
    }

    footer {
        padding:8.3vw 5vw;
    }

    .footer_top {
        width:100%;
    }

    .footer_wrap .f_menu {
        flex-wrap:wrap;
        height:auto;
        gap:4.6vw 0;
        padding-bottom:5.5vw
    }

    .footer_wrap .f_menu li {
        display:flex;
        align-items:center;
    }

    .footer_wrap .f_menu li::before {
        content:'';
        display:block;
        width:1px;
        height:3.3vw;
        margin:0 2.8vw;
        background:#555;
    }

    .footer_wrap .f_menu li:first-child::before,
    .footer_wrap .f_menu li:nth-child(4)::before {
        display:none;
    }

    .footer_wrap .f_menu a {
        font-size:3.6vw;
    }

    .footer_info {
        flex-direction:column;
        width:100%;
        padding:5.5vw 0;
    }

    .footer_info h2 img {
        width:auto;
        height:6.1vw;
    }

    .footer_info ul {
        gap:3.3vw 5.5vw;
        width:100%;
        margin:3.3vw 0 0 0;
    }

    .footer_info li {
        font-size:3.3vw;
        letter-spacing:-0.05em;
    }

    .footer_info li.bul::before {
        height:3.3vw;
        left:-2.4vw;
    }

    .footer_info li.bul.pc::before {
        display: none;
    }

    .footer_info li:nth-child(4)::before {
        display:none;
    }

    .footer_info p {
        width:100%;
        margin:3.3vw 0 0 0;
        font-size:3.3vw;
        line-height:1.4;
    }

    .footer_info .address {
      width:100%;
      margin:4.2vw 0 0 0;
      font-size:3.3vw;
      line-height:1.4;
      letter-spacing: -0.05em;
    }

    .footer_wrap .site.pc {
        display:none;
    }

    .footer_wrap .site.mobile {
        display:block;
        width:90vw;
        height:11.1vw;
        padding:4.2vw;
        border:1px solid #555;
    }

    .footer_wrap .site strong {
        width:100%;
        height:100%;
        padding:0;
        font-size:3.3vw;
    }

    .footer_wrap .site strong::after {
        width:2.5vw;
        height:1.4vw;
    }

    /* 250825 수정 */
    .footer_wrap .site ul {
        width:90vw;
        top:-85.1vw;
        z-index:100
    }

    .footer_wrap .site ul li a {
        height:9.4vw;
        font-size:3.3vw;
    }

    .chatbot {
        display:none;
    }

    .f_logo {
        position:static;
        margin-top:4.2vw;
    }

    .f_logo a + a {
        margin-left:4.2vw;
    }

    .f_logo img {
        max-width:35.1vw;
        height:6.1vw;
    }

    .f_logo a:first-child img {
        width:auto;
        height:7vw;
    }

    /* 250825 추가 */
    select {
        background-position:right 3.5vw center;
        background-size: 2.2vw;
    }
}