:root{
  --inner_sm_mw:  87%;
  --inner_base_mw: 1600px;
  --point1: #2196f3;
  --point2:  #9340FF;
  --point3:  #3DAF8B;
  --red: #FF0004;
  --gray1: #999999;
  --gray2: #cccccc;
  --gray3: #545454;
  --gray4: #666666;
  --black1: #000;
  --black2: #292929;
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 900;
  font-display: block;
  src: local('Pretendard Black'), url("/fonts/Pretendard-Black.woff2") format('woff2');
}
@font-face {
    font-family: 'GmarketSansMedium';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
/* ÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã‚Â¬Ãƒâ€šÃ‚ÂµÃƒÆ’Ã‚Â¥ ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¸ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã…â€™ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â²Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Playfair Display */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;900&display=swap');

/* ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¹ÃƒÆ’Ã‚Â ÃƒÆ’Ã¢â‚¬Â¦ÃƒÆ’Ã‹Å“Ãƒâ€šÃ‚Â½Ãƒâ€šÃ‚ÂºÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â®Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');
/* ÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã‚Â¬Ãƒâ€šÃ‚ÂµÃƒÆ’Ã‚Â¥ ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¸ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã…â€™ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â²Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Noto Sans Display */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Display:wght@600;700;900&display=swap');

/* ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¹ÃƒÆ’Ã‚Â ÃƒÆ’Ã¢â‚¬Â¦ÃƒÆ’Ã‹Å“Ãƒâ€šÃ‚Â½Ãƒâ€šÃ‚ÂºÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â®Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Noto Sans */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@300;400;500;600&display=swap');
/* ÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã‚Â¬Ãƒâ€šÃ‚ÂµÃƒÆ’Ã‚Â¥ ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¸ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã…â€™ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â²Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Archivo Black */
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&display=swap');

/* ÃƒÆ’Ã¢â€šÂ¬ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¹ÃƒÆ’Ã‚Â ÃƒÆ’Ã¢â‚¬Â¦ÃƒÆ’Ã‹Å“Ãƒâ€šÃ‚Â½Ãƒâ€šÃ‚ÂºÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â®Ãƒâ€šÃ‚Â¿ÃƒÆ’Ã‚Â« ÃƒÆ’Ã¢â‚¬Â ÃƒÆ’Ã‚Â¹ÃƒÆ’Ã¢â‚¬Â Ãƒâ€šÃ‚Â® - Archivo */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@300;400;500;600&display=swap');

@font-face {
  font-family: 'Pretendard';
  font-weight: 800;
  font-display: block;
  src: local('Pretendard ExtraBold'), url("/fonts/Pretendard-ExtraBold.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 700;
  font-display: block;
  src: local('Pretendard Bold'), url("/fonts/Pretendard-Bold.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 600;
  font-display: block;
  src: local('Pretendard SemiBold'), url("/fonts/Pretendard-SemiBold.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 500;
  font-display: block;
  src: local('Pretendard Medium'), url("/fonts/Pretendard-Medium.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 400;
  font-display: block;
  src: local('Pretendard Regular'), url("/fonts/Pretendard-Regular.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 300;
  font-display: block;
  src: local('Pretendard Light'), url("/fonts/Pretendard-Light.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 200;
  font-display: block;
  src: local('Pretendard ExtraLight'), url("/fonts/Pretendard-ExtraLight.woff2") format('woff2');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 100;
  font-display: block;
  src: local('Pretendard Thin'), url("/fonts/Pretendard-Thin.woff2") format('woff2');
}
body{
  font-family: "Montserrat", "Montserrat Placeholder", sans-serif;
}
html, body {
    overflow-x: hidden;
    max-width: 100%;
}
.quick_menu_wrap {
      position: fixed;
      top: 30%;
      right: 0;
      display: flex;
      z-index: 1000;
      transition: right 0.3s ease;
    }

    .quick_menu_wrap.closed .quick_menu {
      display: none;
    }

    .quick_toggle {
      width: 50px;
      height: 50px;
      background: #333;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: background 0.3s;
    }

    .quick_toggle:hover {
      background: #555;
    }

    .quick_toggle i {
      font-size: 18px;
      transition: transform 0.3s;
    }

    .quick_menu {
      display: flex;
      flex-direction: column;
      background: #fff;
      box-shadow: 0 0 10px rgba(0,0,0,0.2);
    }

    .quick_menu_item {
      width: 100px;
      height: 100px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      text-decoration: none;
      font-size: 13px;
      font-weight: bold;
      color: #fff;
    }

    .quick_menu_item img {
      width: 50px;
      height: 50px;
      margin-bottom: 6px;
    }

    .quick_1 { background: #2196F3; }
    .quick_2 {background: #ffe700;color: #000;}
    .quick_3 {background: #0a66c2;color: #ffffff;}
    .quick_4 { background: #4ddadf; color: #333; }

    .quick_menu_item:hover {
      filter: brightness(1.1);
    }
* {
    box-sizing: border-box;
}
.fc_red{
  color: var(--red) !important;
}
.fc_point1{
  color: #000000 !important;
  font-weight: 500;
  margin-bottom: 30px;
}
.fc_point2{
  color: var(--point2) !important;
}
.fc_point3{
  color: var(--point3) !important;
}
.fc_gray1{
  color: #9a9a9a !important;
  font-family: "Montserrat", "Montserrat Placeholder", sans-serif;
}
.fc_gray2{
  color: var(--gray2) !important;
}
.fc_gray3{
  color: var(--gray3) !important;
}
.fc_gray4{
  color: var(--gray4) !important;
}
.fc_black1{
  color: var(--black1) !important;
}

.dot.indent{
  margin-left: 0;
}
.dot{
  gap: .5rem;
}
.dot::before{
  font-weight: 600;
  padding-left: 0.25rem;
}
button{
  font-family: inherit;
}
.hov_btn{
  transition: background-color .2s ease-in-out, border-color .2s ease-in-out;
}
.hov_btn:hover{
  background-color: var(--point1) !important;
  border-color: var(--point1);
}
.ss {background: linear-gradient(135deg, #0eaa93, #15b1c1, #1a9d88, #0eaa57);}
.sw {color:#fff;height: 134px;}
.inner_base.fk_inner{
  width : calc(100% - 20rem) !important;text-align: center;
  /* margin-top: 7%; */
}
.inner_base.fk_inner h5 {
    text-align: center;
    color: #fff;
    font-size: 5em;
    letter-spacing: -2px;
    }
.line {background-color: #ffffff87;height:1px;width: 17%;margin: 16px auto;}
.sm_txt {
    color: #ffffffd1;
    width: 50%;
    margin: auto;
    text-align: center;
    line-height: 135%;
    font-size: 1em;
    letter-spacing: 0;
}
.bb {
    margin: 20px auto;
    text-align: center;
}
.more_b {
  display: inline-block;
  width: 150px !important;!i;!;
  padding: 10px 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #ffffff; /* ÃªÂ²â‚¬Ã¬Â â€¢ ÃªÂ¸â‚¬Ã¬Å¾Â */
  background-color: #FFC107; /* ÃªÂ¸Â°Ã«Â³Â¸ Ã«â€¦Â¸Ã«Å¾â‚¬Ã¬Æ’â€° */
  border-radius: 45px;
  text-decoration: none;
  transition: background-color 0.3s, color 0.3s;
}

.more_b:hover {
  background-color: #0099ca; /* Ã«Â§Ë†Ã¬Å¡Â°Ã¬Å Â¤ Ã¬ËœÂ¤Ã«Â²â€ž Ã¬â€¹Å“ Ã¬Â§â€žÃ­â€¢Å“ Ã«â€¦Â¹Ã¬Æ’â€° */
  color: white; /* ÃªÂ¸â‚¬Ã¬Å¾ÂÃ«Å â€ Ã­ÂÂ°Ã¬Æ’â€°Ã¬Å“Â¼Ã«Â¡Å“ */
}

@media all and (max-width: 768px){

  .inner_base.fk_inner{
    width : calc(100% - 40px) !important;
  }
}

.image-style-align-left{
  margin-left: 0 !important;
}
.image-style-align-center{
  margin: .9em auto !important;
}
.image-style-align-right{
  margin-right: 0 !important;
}


.intro{
  position: fixed;
  top:0; left:0;
  z-index: 1001;
  width : 100%;
  height: 100%;
  opacity: 0;
}
.intro svg{
  position: fixed;
  top: calc(100% + -40vw); left: 50%;
  transform: translateX(-50%);
  overflow: visible;
  width : calc(100vw - 10rem);
  transition: width 1s ease-in-out, top 1s ease-in-out;
}
.intro .logo_txt{
  width : 100vw;
}
.intro .move_heart{
  transform: scale(20) translate(-86%, -12%);
}
.intro.intro_anim_done svg{
  top: 10px;
  width : 10rem;
}
.intro .move_heart{
  fill: #F74D66;
  transition: fill 1s ease-in-out;
}
.intro.intro_anim_done svg .move_heart{
  fill : #000;
}
.intro.intro_hidden{
  display : none;
}


header{
      position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    height: 7.313rem;
    background-color: #00000075;
}
header .logo{
  position: absolute;
  top: 0.625rem; left:50%;
  transform: translateX(-50%);
}
header .logo img{
  width: 15rem;
}
header .gnb ul{
  display: flex;
  align-items: center;
  gap: 1.25rem
}
header .gnb ul a{
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
}
header .gnb ul li{
  display : flex;
  align-items: center;
  position: relative;
  height: 100%;
}
header .gnb ul li .depth2{
  display: flex;
  position: absolute;
  top: 100%;
  width: max-content;
  height: 5.313rem;
  margin-left: -1.25rem;
  background-color: var(--white1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
header .gnb ul li .depth2::after{
  display:block;
  position:fixed;
  top: 7.313rem;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 100vw;
  height: 5.313rem;
  border-bottom: 1px solid #ddd;
  background-color: var(--white1);
}
header .gnb ul li .depth2 a{
  display : flex;
  align-items: center;
  position: relative;
  z-index: 10;
  padding: 0 1.25rem;
  text-align: center;
  font-size: 1rem;
  font-weight:400;
  transition: color .2s ease-in-out;
  color: #000;
}
header .gnb ul li .depth2 a:hover,
header .gnb ul li .depth2 a.active{
  color: var(--point1);
}
header .gnb ul li:hover .depth2{
  opacity: 1;
  visibility: visible;
}
header .sub a{
  display : flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  font-weight: 600;
}
header .sub a:not(.search){
  padding: 0.313rem 0.938rem;
  border-radius: 1.875rem;
  border: 1px solid var(--black1);
  filter: invert(1);
}
header .sub .search{
  width : 1.875rem;
  height: 1.875rem;
  border-radius: 1.875rem;
  border: 1px solid #000;
  background: url("/images/ico_search_b.svg") no-repeat center / 1.5rem;
  filter: invert(1);
}
header .sub .playlist_link{
  background-color: var(--black1);
  color: #ffffff;
}

footer{
  height: 15.938rem;
  padding: 3.125rem 0;
  background-color: var(--black1);
  border-top: 1px solid #ffffff40;
}
footer .logo1{
  width: 12.75rem;
}
footer .logo2{
  width : 11.25rem;
}
footer .desc{
  margin-left: 3.625rem;
}
footer .desc h2{
  color: var(--white1);
}
footer dl{
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 150%;
  color: rgba(255, 255, 255, 0.8);
}
footer dt{
  min-width: 3.25rem;
  font-weight: 600;
}
footer .ft_youtube,
footer .ft_instagram{
  width : 1.875rem;
  height: 1.875rem;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
footer .ft_youtube{background-image: url("/images/ft_youtube.svg");}
footer .ft_instagram{background-image: url("/images/ft_instagram.svg");}
footer .ft_link{
  padding: 0.188rem 0.563rem;
  border-radius: 1.563rem;
  border: 1px solid rgba(255,255,255,0.8);
  font-size: 0.875rem;
  font-weight: 400;
  color: rgba(255,255,255,0.8);
}
footer .ft_link2{
  font-size: 0.875rem;
  color: rgba(255,255,2550.8);
}
footer .ft_link2:not(:last-child){
  display: flex;
  align-items: center;
}
footer .ft_link2:not(:last-child):after{
  content: "";
  width : 1px;
  height: 13px;
  background-color: #666;
  margin: 0 10px;
  transform: translateY(1px);
}
footer .copyrights,
footer .ft_txt{
  color: var(--white1)
}



.newsletter{
  position: relative;
  height: 17.5rem;display: flex;
}
.newsletter::after{
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  z-index : 0;
  transform: translate(-50%,-50%);
  background: url("/images/newsletter_deco.svg") no-repeat center / cover;
  width : 76.813rem;
  height: 11.5rem;
}
.newsletter a{
  padding: 0.375rem 1.625rem;
  border-radius: 2.625rem;
  border: 1px solid #ffffff;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
}
.newsletter a:hover{
  background-color: var(--black1);
  color: var(--white1);
}
.newsletter > div{
  position: relative;
  z-index : 2;
}
.consulting{
  position: relative;
  height: 17.5rem;
  background-color: #455ca3;
    color: #fff;
}
.consulting::after{
  content: "";
  position: absolute;
  left: 50%; top: 50%;
  z-index : 0;
  transform: translate(-50%,-50%);
  background: url("/images/consulting_deco.svg") no-repeat center / cover;
  width : 76.813rem;
  height: 11.5rem;
}
.consulting a{
  padding: 0.375rem 1.625rem;
  border-radius: 2.625rem;
  border: 1px solid #ffffff;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
}
.consulting a:hover{
  background-color: var(--black1);
  color: var(--white1);
}
.consulting > div{
  position: relative;
  z-index : 2;
}
.halfb1 {width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;    background-color: #7dba55;color:#fff;}
.halfb2 {width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;    background-color: #6255ba;color:#fff;}



/* pagination */
.pagination{
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination .next,
.pagination .prev{
  width : 1.5rem;
  height: 1.5rem;
  background: url("/images/ico_pagination_arrow.svg") no-repeat center / cover;
}
.pagination .prev.disabled,
.pagination .next.disabled{
  opacity: .2
}
.pagination .prev{
  transform: rotate(180deg);
  margin-right : 0.625rem;
}
.pagination .next{
  margin-left: 0.625rem;
}
.pagination .page_num{
  position: relative;
  width : 0.625rem;
  height: 0.625rem;
  margin: 0 1.25rem;
  transition: opacity 0.2s ease-in-out,
  transform 0.2s ease-in-out,
  background-color 0.2s ease-in-out;
}
.pagination .page_num::before{
  display : block;
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width : 0.625rem;
  height: 0.625rem;
  background-color: rgba(0,0,0,1);
  opacity: .2;
  border-radius: 50%;
  transition: opacity 0.2s ease-in-out,
  transform 0.2s ease-in-out,
  background-color 0.2s ease-in-out;
}
.pagination .page_num span{
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.pagination .page_num:hover::before{
  transform: translate(-50%,-50%) scale(3);
  opacity: 1;
  background-color: #5B5B5B;
}
.pagination .page_num:hover span{
  opacity: 1;
}
.pagination .page_num.on::before{
  transform: translate(-50%,-50%) scale(3);
  opacity: 1;
  background-color: #5B5B5B;
}
.pagination .page_num.on span{
  opacity: 1;
}
/* pagination END */




/* Category Tab */
.category_tab{
  margin: 0 auto;
}
.category_tab ul{
  display: flex;
  justify-content: center;
  width : max-content;
  height: 4rem;
  margin: 0 auto;
  margin-bottom: 0;
}
.category_tab a,
.category_tab button{
  display : flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 150%;
  color: #808080;
  border-bottom: 1px solid #ddd;
}
.category_tab a.on,
.category_tab button.on{
  color: #000;
  border-bottom: 3px solid #000;
}
.category_tab.type1 a,
.category_tab.type1 button{
  width : 10rem;
}
.category_tab.type2 a,
.category_tab.type2 button{
  width: 14.375rem;
}
.category_tab.type3 ul{
  width : 100%;
}
.category_tab.type3 li{
  flex: 1;
}
.category_tab.bd_t a,
.category_tab.bd_t button{
  border-bottom: none;
}
.category_tab.bd_t a.on,
.category_tab.bd_t button.on{
  color: #179f7e;
  border-top: 3px solid #ffffff;
}
/* Category Tab END */




/* Modal */
.dim{
  position: fixed;
  top: 0; left: 0;
  z-index : 1000;
  width : 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
}
.dim.active{
  opacity: 1;
  visibility: visible;
}

.wv_modal{
  position : fixed;
  left: 50%; top: 50%;
  transform: translate(-50%,-50%);
  z-index : 1001;
  width : calc(100% - 40px);
  border-radius: 1.875rem;
  max-width: 31.5rem;
  padding: 3.75rem 3.25rem;
  background-color: var(--white1);
  box-shadow: 0 0 1.25rem 0 rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
}
.wv_modal.active{
  opacity: 1;
  visibility: visible;
}
.wv_modal.big{
  max-width: 900px;
  padding: 5rem 3.75rem;
}

.alertModal{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: fixed;
  left: 50%; top: 50%;
  transform: translate(-50%,-50%);
  z-index : 1000;
  width : calc(100% - 40px);
  max-width: 31.5rem;
  padding: 3.75rem 0;
  border-radius: 1.875rem;
  background-color: var(--white1);
  box-shadow: 0 0 1.25rem 0 rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
}
.alertModal.show{
  opacity: 1;
  visibility: visible;
}
.alertModal .close_btn{
  width : 9.375rem;
  height: 3.125rem;
  border-radius: 3.125rem;
  margin: 0 auto;
  background-color: var(--black1);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 150%;
  color: var(--white1);
}
/* Modal END */



/* button */
.w_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width : max-content;
  height: max-content;
  border-radius: 3.125rem;
  border: 1px solid var(--black1);
  background-color: var(--white1);
}
.b_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width : max-content;
  height: max-content;
  border-radius: 3.125rem;
  border: 1px solid var(--black1);
  background-color: var(--black1);
  color: var(--white1);
}
.g_btn{
  display: flex;
  justify-content: center;
  align-items: center;
  width : max-content;
  height: max-content;
  border-radius: 3.125rem;
  background-color: #F0F0F0;
  color: #CCCCCC;

}
/* button END */


/* Accordion */
.wv_accordion li:not(:last-child){
  margin-bottom: 0.625rem;
}
.wv_accordion .wv_accordion_btn{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width : 100%;
  padding: 1.125rem 1.25rem;
  border: 1px solid #bbb;
  font-size: 1.25rem;
  font-weight: 600;
  text-align: left;
}
.wv_accordion .wv_accordion_btn::after{
  display : block;
  content: "";
  width : 1.25rem;
  height: 1.25rem;
  background: url("/images/ico_accordion_arrow.svg") no-repeat center / cover;
  transform: rotate(0);
  transition: transform 0.2s ease-in-out;
}
.wv_accordion li.active .wv_accordion_btn::after{
  transform: rotate(180deg);
}
.wv_accordion li .wv_accordion_panel{
  max-height: 0;
  padding: 0 2.5rem;
  line-height: 150%;
  background-color: #F5F5F5;
  overflow: hidden;
  transition: padding .35s ease-in-out, max-height .35s ease-in-out;
}
.wv_accordion li.active .wv_accordion_panel{
  max-height: 1000px;
  height: max-content;
  padding: 1.875rem 2.5rem;
}
/* Accordion END */

#inquiryModal .close_modal{
  font-size: 1.25rem;
  width : 9.375rem;
  height: 3.125rem;
}

main{
  padding-top: 0;
  height: max-content;
  min-height: calc(100vh - 15.938rem);
}


.search_wrap{
  display: flex;
  justify-content: center;
  width : 52.5rem;
  height: 3.875rem;
  margin: 0 auto;
}
.search_wrap input[type=text]{
  width : calc(100% - 3.875rem);
  height: 100%;
  border: 1px solid var(--gray1);
  border-radius: 3.875rem;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 150%;
  padding: 1rem 2.5rem;
}
.search_wrap button{
  min-width : 3.875rem;
  min-height: 3.875rem;
  border-radius: 50%;
  background: #000 url("/images/ico_search_w.svg") no-repeat center / 2.5rem 2.5rem;
  transition: background-color .2s ease-in-out;
}
.search_wrap button:hover{
  background-color: var(--point1);
}




@media all and (max-width: 768px){
  .intro svg{
    left: 50%; top: 50%;
    transform: translate(-50%,-50%);
    transition: width 1s ease-in-out, top 1s ease-in-out, left 1s ease-in-out, transform 1s ease-in-out;
  }
  .intro.intro_anim_done svg{
    top: 14px;
    left: 20px;
    width : 64px;
    transform: translateX(0);
  }
  .intro .move_heart{
    transform: scale(40) translate(-86%, -12%);
  }


  header{
    height: 60px;
  }
  header .logo{
    top: -2px;
    left: 20px;
    transform: none;
  }
  header .logo a{display : block;}
  header .logo img{
    width: 158px;
  }
  header .gnb{
    position: fixed;
    top: 217px; left: 0;
    width : 100%;
    height: calc(100vh - 217px) !important;
    background-color: var(--white1);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  header.open .gnb{
    opacity: 1;
    visibility: visible;
  }
  header .gnb ul li .depth2::after{display : none;}
  header .sub{
    margin-top: 60px;
    width : 100% !important;
    height: 0px !important;
  }
  header .sub::after{
    content: "";
    position: absolute;
    z-index : -1;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width : 100vw;
    height: 157px;
    background-color: var(--point1);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  header.open .sub::after{
    opacity: 1;
    visibility: visible;
  }
  header .sub .search{
    position: absolute;
    right : 60px;
    top: 20px;
    width : 20px;
    height: 20px;
    border: none;
  }
  header .sub .menu_btn{
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width : 20px;
    height: 20px;
    background: url("/images/ico_menu.svg") no-repeat center / cover;
    transition: background-image .2s ease-in-out;
    filter: invert(1);
  }
  header.open .sub .menu_btn{
    background-image: url("/images/ico_menu_close.svg");
  }
  header .sub .login{
    display : none;
  }
  header .sub a:not(.search){
    border: none;
    padding: 0;
    border-radius: 0;
  }
  header .sub > div{
    width : 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out;
  }
  header.open .sub > div{
    opacity: 1;
    visibility: visible;
    transition: opacity .2s .1s ease-in-out, visibility .2s .1s ease-in-out;
  }
  header .sub a{
    flex-direction: column;
    align-items: center;
    gap: 16px;
    margin: 0 auto;
  }
  header .sub a .profile{
    width : 60px;
    height: 60px;
    font-size: 14px;
    font-weight: 400;
  }
  header .sub a p{
    display : flex;
    gap: 4px;
    align-items: center;
    font-size: 14px;
    font-weight: 400;
  }
  header .sub a p i{
    width : 12px;
    height: 12px;
    background: url("/images/ico_pagination_arrow.svg") no-repeat center / cover;
  }
  header .gnb{
    overflow-y: scroll;
  }
  header .gnb::-webkit-scrollbar{
    width : 8px;
  }
  header .gnb::-webkit-scrollbar-thumb{
    background-color: rgba(0,0,0,0.2);
    border-radius: 4px;
    border: 3px solid #fff;
  }

  header .gnb ul{
    flex-direction: column;
    padding-top: 30px;
    height: max-content !important;
  }
  header .gnb ul li{
    flex-direction: column;
    align-items: flex-start;
    width : calc(100% - 40px);
    height: max-content;
  }
  header .gnb ul a{
    font-size: 14px;
    font-weight: 400;
    color: #999;
    width : 100%;
    padding: 12px 0;
    border-bottom: 1px solid #ddd;
  }
  header .gnb ul li .depth2{
    position: static;
    opacity: 0;
    visibility : hidden;
    margin: 0;
    width : 100%;
    height: 60px;
  }
  header.open .gnb ul li .depth2{
    width : 100%;
    opacity: 1;
    visibility: visible;
  }
  header .gnb ul li .depth2 a{
    width : 50%;
    padding: 0;
    color: #000;
    font-weight: 600;
    border: none;
  }
  header .gnb::after{
    display : block;
    /* position: absolute; */
    /* left: 50%; bottom: 40px; */
    /* transform: translateX(-50%); */
    content: "";
    width : 167px;
    height: 35px;
    margin: 80px auto 40px;
    background: url("/images/menu_logo.svg") no-repeat center / cover;
  }
  header .before_login{
    padding-top: 120px;
    text-align: center;
    /* color: #fff; */
  }
  header .before_login .btns{
    display: flex;
    justify-content: center;
    gap: 10px;
  }
  header .before_login .btns a{
    display : flex;
    justify-content: center;
    align-items: center;
    width : max-content;
    padding: 4px 9px;
    margin: 0;
    border-radius: 12px;
    border: 1px solid #000;
    font-size: 12px;
  }
  header .after_login{
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: auto;
    padding-top: 120px;
  }
  header .after_login .profile{
    position: relative;
    width : 60px;
    height: 60px;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 50%;
    overflow: hidden;
  }
  header .after_login .profile img{
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%,-50%);
    width : 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
  }
  header .after_login .btns a{
    width : max-content;
    height: max-content;
    padding: 4px 9px;
    border-radius: 14px;
    border: 1px solid #000;
    font-size: 12px;
    font-weight: 400;
  }



  footer{
    position : relative;
    height: 398px;
    padding: 74px 0 30px;
  }
  footer .logo1{
    width : 54px;
  }
  footer .logo2{
    width : 70px;
  }
  footer .desc{
    margin-left: 0;
  }
  footer dl{
    font-size: 10px;
  }
  footer dt{
    min-width : 44px;
  }
  footer .etc{
    position: absolute;
    top: 30px;
    left: 20px;
  }
  footer .ft_link{
    font-size: 12px;
  }
  footer .ft_youtube,
  footer .ft_instagram{
    width : 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.8);
    background-size: 18px;
  }
  footer .ft_link2{
    font-size: 12px;
  }


  main{
    padding-top: 0px;
  }
.inner_base.fk_inner h5 {
   font-size: 2.5em;
}
.sm_txt {
    width: 74%;
}

  .pagination .page_num{
    width : 6px;
    height: 6px;
    margin: 0 12px;
  }
  .pagination .page_num::before{
    width : calc(20px / 3);
    height: calc(20px / 3);
  }
  .pagination .page_num span{font-size: 12px;}
  .pagination .next{margin-left: 12px;}
  .pagination .prev{margin-right: 12px;}
  .pagination .next, .pagination .prev{
    width : 16px;
    height: 16px;
  }

  .category_tab{
    width : 100%;
  }
  .category_tab ul{
    width : 100%;
    height: max-content;
  }
  .category_tab ul li{
    flex: 1;
  }
  .category_tab a, .category_tab button{
    font-size: 14px;
    width: auto;
    min-width: 86px;
  }
  .category_tab.type1 a, .category_tab.type1 button{
    flex: 1;
    width : 100%;
    height: 48px;
    font-size: 14px;
  }
  .category_tab.md_scr{
    overflow-x: scroll;
    touch-action: auto;
  }
  .category_tab.md_scr::-webkit-scrollbar{
    height: 14px;
  }
  .category_tab.md_scr::-webkit-scrollbar-thumb{
    background-color: rgba(0,0,0,0.2);
    border: 6px solid #fff;
    border-left: 0; border-right : 0;
  }
  .sec_maumtalk .category_tab.md_scr::-webkit-scrollbar-thumb{
    border-color: #f5f5f5;
  }
  .category_tab.md_scr ul{
    justify-content: flex-start;
    width : max-content;
    height: 48px;
    gap: 20px;
  }
  .category_tab.md_scr.type2 a,
  .category_tab.md_scr.type2 button{
    width : 100px;
    font-size: 14px;
  }


  .search_wrap{
    width : 100%;
    height: 36px;
  }
  .search_wrap input[type=text]{
    padding: 8.5px 19px;
    font-size: 14px;
  }
  .search_wrap button{
    min-width : 36px;
    min-height: 36px;
    background-size: 24px;
  }

  .wv_accordion .wv_accordion_btn{
    padding: 14.5px 15px;
    font-size: 14px;
  }
  .wv_accordion .wv_accordion_btn::after{
    width : 16px;
    height: 16px;
  }
  .wv_accordion li .wv_accordion_panel{
    padding: 0 16px;
    font-size: 12px;
    line-height: 150%;
  }
  .wv_accordion li.active .wv_accordion_panel{
    padding: 20px 16px;
  }


  .wv_modal{
    border-radius: 20px;
    padding: 40px 20px;
  }
  .alertModal{
    border-radius: 20px;
    padding: 40px 0;
  }

  #inquiryModal .close_modal{
    width : 100px;
    height: 44px;
    font-size: 14px;
  }
  .halfb1 {width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;    background-color: #7dba55;}
.halfb2 {width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;    background-color: #6255ba;}
}



.ico_diagnosis {
  transition: color .4s ease-in-out;
  background: url(/images/diagnosis_24dp_5F6368_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}
.ico_assignment {
  transition: color .4s ease-in-out;
  background: url(/images/assignment_24dp_5F6368_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}
.ico_quiz {
  transition: color .4s ease-in-out;
  background: url(/images/quiz_24dp_5F6368_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}
.ico_group {
  transition: color .4s ease-in-out;
  background: url(/images/group_24dp_5F6368_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}
.ico_contract_edit {
  transition: color .4s ease-in-out;
  background: url(/images/contract_edit_24dp_5F6368_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}

.wv_target_btn.on .ico_diagnosis,
.wv_target_btn:hover .ico_diagnosis {
  background: url(/images/diagnosis_24dp_FFFFFF_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}

.wv_target_btn.on .ico_assignment,
.wv_target_btn:hover .ico_assignment {
  background: url(/images/assignment_24dp_FFFFFF_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}

.wv_target_btn.on .ico_quiz,
.wv_target_btn:hover .ico_quiz {
  background: url(/images/quiz_24dp_FFFFFF_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}

.wv_target_btn.on .ico_group,
.wv_target_btn:hover .ico_group {
  background: url(/images/group_24dp_FFFFFF_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}

.wv_target_btn.on .ico_contract_edit,
.wv_target_btn:hover .ico_contract_edit {
  background: url(/images/contract_edit_24dp_FFFFFF_FILL0_wght400_GRAD0_opsz24.svg) center / cover;
}


@media all and (max-width : 1600px){
  .res_1600_s{display : block !important}
  .res_1600_h{display : none !important}
  #wv, html{font-size : 14px}
}
@media all and (max-width : 1280px){
  #wv, html{font-size : 12px}
  .res_1280_s{display : block !important}
  .res_1280_h{display : none !important}
}
@media all and (max-width : 1024px){
  #wv, html{font-size : 10px}
  .res_1024_s{display : block !important}
  .res_1024_h{display : none !important}
}
@media all and (max-width : 768px){
  #wv, html{font-size : 16px}
}

@media (max-width: 768px) {
    body {
        width: 100%;
    }
    
    img, video {
        max-width: 100%;
        height: auto;
    }
	
.sw {
    color: #fff;
    height: 190px;
}

.quick_menu_wrap {
      position: fixed;
      top: 30%;
      right: 0;
      display: flex;
      z-index: 1000;
      transition: right 0.3s ease;
    }

    .quick_menu_wrap.closed .quick_menu {
      display: none;
    }

    .quick_toggle {
      width: 50px;
      height: 50px;
      background: #333;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: background 0.3s;
    }

    .quick_toggle:hover {
      background: #555;
    }

    .quick_toggle i {
      font-size: 18px;
      transition: transform 0.3s;
    }

    .quick_menu {
      display: flex;
      flex-direction: column;
      background: #fff;
      box-shadow: 0 0 10px rgba(0,0,0,0.2);
    }

    .quick_menu_item {
      width: 100px;
      height: 100px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      text-decoration: none;
      font-size: 13px;
      font-weight: bold;
      color: #fff;
    }

    .quick_menu_item img {
      width: 50px;
      height: 50px;
      margin-bottom: 6px;
    }

    .quick_1 { background: #2196F3; }
    .quick_2 {background: #ffe700;color: #000;}
    .quick_3 {background: #0a66c2;color: #ffffff;}
    .quick_4 { background: #4ddadf; color: #333; }

    .quick_menu_item:hover {
      filter: brightness(1.1);
    }