@charset "euc-kr";

@font-face {
    font-family: 'NanumSquareNeoBold';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.ttf) format("truetype");
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.ttf) format("truetype");
}

BODY,TD,input,DIV,form,a,p,span,TEXTAREA,center,pre,blockquote {font-family:'NanumSquareNeo';}

/* 1. 모든 링크(a 태그) 기본 파란색 글자 및 밑줄, 모바일 하이라이트 제거 */
a, a:hover, a:focus, a:active, a:visited {
    color: inherit;                       /* 부모 요소 글자색 상속 */
    text-decoration: none;                /* 밑줄 제거 */
    -webkit-tap-highlight-color: transparent !important; /* 모바일 터치 시 파란 박스 제거 */
}

/* 2. 포커스/클릭 시 나타나는 파란색/검은색 테두리 완벽 차단 (:focus-visible 포함) */
*:focus,
*:focus-visible,
*:active,
a:focus,
a:focus-visible,
a:active,
button:focus,
button:focus-visible {
    outline: none !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

/* 3. 모바일 및 WebKit 전체 터치 하이라이트 안나오게 처리 */
* {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
}

/* 4. a 태그 안의 이미지에 생기는 테두리 방지 */
a img {
    border: none !important;
}

/* ==============================================
   layout
   ============================================== */

  /* 반응형 컨테이너 설정 */
  .responsive-instagram-wrap {
    max-width: 1300px;         /* PC 최대 너비 1300px */
    width: 100%;               /* 기본 너비 100% */
    margin: 0 auto;            /* 가운데 정렬 */
    padding: 0 15px;           /* 모든 해상도에서 좌우 15px 여백 */
    box-sizing: border-box;    /* 패딩 포함 크기 계산 */
    text-align: left;
  }

  /* 인스타그램 타이틀 및 아이콘 정렬 */
  .insta-header {
    margin-bottom: 30px;
    text-align: center !important;
  }

  .insta-header img {
    width: 40px;
    height: auto;             /* 비율 유지 */
    border: 0;
  }

  .insta-title {
    font-size: 16px;
    color: #333;
    display: block;
    margin-top: 5px;
    margin-bottom: 5px;
  }

  .insta-handle {
    font-size: 14px;
    color: #333;
    display: block;
  }

  /* 아이프레임 반응형 스타일 */
  .lightwidget-widget {
    width: 100% !important;
    border: 0;
    overflow: hidden;
  }


li {
    list-style:none;
}

    /* 로더 화면 전체 커버 */
    #loader {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: white;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 9999;
      opacity: 1;
      transition: opacity 0.8s ease; /* 부드럽게 사라지게 */
    }

    /* 로딩 스피너 */
    .spinner {
      border: 6px solid #f3f3f3;
      border-top: 6px solid #636363;
      border-radius: 50%;
      width: 50px;
      height: 50px;
      animation: spin 1s linear infinite;
    }
    @keyframes spin {
      to {
        transform: rotate(360deg);
      }
    }


/* 모바일 하단 sns버튼 */
  .mobile-fixed-bar {
    display: none;
  }

  @media (max-width: 768px) {
    .mobile-fixed-bar {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 40px;
      display: flex;
      z-index: 9999;
    }

    .mobile-fixed-bar a {
      display: flex;
      align-items: center;
      justify-content: center;
      flex: 1;
      height: 40px;
      text-decoration: none;
      color: #000;
      font-weight: bold;
      font-size: 14px;
    }

    .mobile-fixed-bar .instagram {
      background-color: #303f9f;
      color: #fff;
    }
    .mobile-fixed-bar .kakao {
      background-color: #f7a600;
      color: #000;
    }

    .mobile-fixed-bar i {
      margin-right: 6px;
      font-size: 16px;
    }
  }


/* 푸터 전체 컨테이너 격리 */
.wrapper2 {
  width: 100%;
  background: #fff;
  padding: 0px 0px 80px 0px;
}

/* PC용 컨테이너(가로 1400, 가운데 정렬). 모바일에서는 max-width로 제어 */
.container2 {
  width: 1300px;
  max-width: 100%;
  margin: 0 auto;
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  padding: 0 10px; /* 좌우 기본 10px */
}

/* 좌/우 컬럼 기본 설정 */
.footer-left,
.footer-right {
  display: flex;
  flex-direction: column;
}

/* 제목: PC/태블릿/모바일 모두 동일한 크기(명시적으로 통일) */
.footer-title {
  font-size: 18px;        /* **모든 기기 동일** */
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 20px;    /* 제목 아래 20px 간격 */
  padding-left: 7px;
  padding-right: 7px;
  font-family:'NanumSquareNeoBold', sans-serif;
}

.footer-title1 {
  font-size: 18px;        /* **모든 기기 동일** */
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 20px;    /* 제목 아래 20px 간격 */
  font-family:'NanumSquareNeoBold', sans-serif;
}

/* FOLLOW 아이콘 가로배치 */
.follow-icons {
  display: flex;
  align-items: center;
  gap: 16px;
}

.follow-icons img {
  width: 40px;
  height: auto;
}

/* CONTACT 내부 텍스트 - 기본(PC)에서는 오른쪽 정렬 */
.footer-right {
  align-items: flex-end;  /* PC: 오른쪽 정렬(블록 내부 요소 우측 정렬) */
  text-align: right;      /* 텍스트 오른쪽 정렬 */
}

.footer-right .info {
  font-size: 15px;
  color: #444;
  margin-bottom: 6px;
  font-family:'NanumSquareNeo', sans-serif;
}

/* COPYRIGHT */
.footer-right .copy {
  margin-top: 10px;
  color: #777;
  font-size: 14px;
  font-family:'NanumSquareNeo', sans-serif;
}

/* -------- 반응형 (태블릿 & 모바일) -------- */
/* 태블릿 이하에서는 세로 정렬 + 중앙정렬, 좌우 여백 10px 유지 */
@media (max-width: 1299px) {
  .container2 {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding-left: 10px;  /* 좌우 10px 고정 */
    padding-right: 10px;
    gap: 24px;
  }

  .footer-left,
  .footer-right {
    align-items: center;  /* 중앙 정렬 */
    text-align: center;
  }

  /* 제목 크기 변화 없음(동일 유지) - 명시적으로 동일하게 두었으므로 아래는 생략 가능 */
  .footer-title {
    /* font-size: 18px; */ 
  }

  .follow-icons img {
    width: 40px;
  }

  .footer-right .info {
    font-size: 14px;
  }

  .footer-right .copy {
    font-size: 13px;
  }
}

/* 모바일(작은 화면) */
@media (max-width: 600px) {
  .wrapper2 {
    padding: 0px 0px 120px 0px;
  }

  .follow-icons img {
    width: 40px;
  }

  .footer-right .info {
    font-size: 13px;
  }

  .footer-right .copy {
    font-size: 12px;
  }
}



#subBodyLine { width: 100%; min-height: 1px; border-top: 1px solid #eeeeee; padding-top: 30px; margin: 0 auto 30px; }
#subBodyLine_foot { width: 100%; min-height: 1px; border-top: 1px solid #eeeeee; padding-top: 10px; margin: 0 auto 10px; }

@media only screen and (max-width: 1200px) {

/* sub body */
#subBodyLine { width: 100%; min-height: 1px; border-top: 0px solid #FFFFFF; padding-top: 0px; margin: 0 auto 0px; }
}