@charset "utf-8";
@import url("/css/font.css");
:root {
  --logo: linear-gradient(to bottom, #00F277, #03C75A);
  --logoLine: linear-gradient(to right, #871cde, #1696ff);
  --menucolor: #98FF7B;
  --skycolor: #03C75A;
  --purple: #70FFF8;
  --naver : #00c73c;

  --headerborder: linear-gradient(
    to left,
    #98FF7B 0%,
    #98FF7B 26%,
    #70FFF8 100%
  );
  --leftarrow: linear-gradient(
    to left,
    #98FF7B 0%,
    #98FF7B 26%,
    #70FFF8 100%);
  --rightarrow: linear-gradient(
    to right,
    #98FF7B 0%,
    #98FF7B 26%,
    #70FFF8 100%
  );
  --home: linear-gradient(to bottom, #98FF7B 0%, #00F277 26%, #03C75A 100%);
  --move: all 0.3s linear;
}

/* 초기화 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
ul,
li {
  list-style: none;
}
a {
  text-decoration: none;
  color: #333;
}
img {
  vertical-align: top;
}
button {
  outline: none;
  border: none;
}

/* 공통클래스 */
section{
  width: 100%;
}
.container {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
}
html,
body {
  font-family: "Pretendard", sans-serif;
  font-size: 16px;
}
html {
    overflow: hidden;
}
span.fz, i.fz {
  font-size: 80px;
}
span.whiteSpan {
  color: #fff;
}
span.blackSpan {
  color: #000;
}

/* 섹션 이동메뉴 */
.section-menu {
  position: fixed;
  top: 50%;
  right: 50px;
  transform: translateY(-50%);
  z-index: 999;
}
.section-menu li {
  padding-bottom: 30px;
  position: relative;
}
.section-menu li a {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.section-menu li a span {
  font-size: 20px;
  color: #fff;
  transition: all .2s;
  opacity: 0;
  visibility: hidden;
}
.section-menu li a.active span {
  visibility: visible;
  opacity: 1;
}
.section-menu li a.green span {
  color: var(--menucolor);
}

/* N모양 */
.section-menu li a i {
  color: rgba(121, 121, 121, 0.451);
  font-size: 20px;
}
.section-menu li a i {
  visibility: visible;
  opacity: 1;
}
.section-menu li a.green i {
  color: var(--menucolor);
}

/* === header ==================================== */
header {
  width: 100%;
  background-color: #000;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}
/* mobile-menu ===============*/
.mobile-menu {
  display: none;
}
.mobile-menu li {
  width: calc(100% / 7);
  opacity: 0;
  visibility: hidden;
  transition: var(--move);
}
.mobile-menu li.on {
  opacity: 1;
  visibility: visible;
}
.mobile-menu li a {
  display: block;
  text-align: center;
  width: 100%;
  font-size: 1.1rem;
  line-height: 45px;
  color: #fff;
}
.mobile-menu li a.on {
  color: var(--menucolor);
  font-weight: 600;
}
.mobile-menu li.hamburger {
  opacity: 1;
  visibility: visible;
}
.mobile-menu li.hamburger a {
  height: 20px;
  position: relative;
}
.mobile-menu li.hamburger a i {
  font-size: 30px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-image: linear-gradient(to left, #98FF7B 0%,  #98FF7B 26%, #dfff88 75%,  #70FFF8 100%);;
  color: transparent;
  background-size: 200% 200%;
  background-clip: text;
  animation: N-bg 5s ease-in infinite;
}
@keyframes N-bg {
    0% {background-position: 0% 50%;}
    50% {background-position: 100% 50%;}
    100% {background-position: 0% 50%;}
}
.mobile-menu li.hamburger.on a i {
  color: var(--naver);
}
/* //mobile-menu ============= */

/* header-top ============= */
.header-top .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  position: relative;
}

.header-top .header-tab {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.header-top .header-tab li a {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  display: block;
  text-align: center;
  line-height: 63px;
}
.header-top .h-logo {
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.header-top .h-logo a {
  display: block;
  width: 100%;
  background-image: var(--logo);
  color: transparent;
  background-clip: text;
  font-size: 2.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 63px;
}
.header-top .login {
  display: flex;
  align-items: center;
  gap: 20px;
}
.header-top .login button {
  width: 80px;
  height: 25px;
  font-weight: 400;
  font-size: 0.875rem;
  cursor: pointer;
}
.header-top .login span {
  color: var(--menucolor);
  font-size: 2.1875rem;
  line-height: 0;
  display: block;
  text-align: center;
  cursor: pointer;
}
/* header-bottom ============= */
.header-bottom {
  border-width: 1px 0 1px;
  border-color: transparent;
  border-style: solid;
  background-image: linear-gradient(black, black), var(--headerborder);
  background-origin: border-box;
  background-clip: content-box, border-box;
}
.header-bottom .container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.header-bottom nav .header-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.header-bottom nav .header-menu li {
  height: 56px;
}
.header-bottom nav .header-menu li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  color: #fff;
  text-align: center;
}
.header-bottom nav .header-menu li:hover a {
  background-image: var(--home);
  color: transparent;
  background-clip: text;
  font-weight: 700;
}
.header-bottom nav .header-menu li a span {
  background-image: var(--home);
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 1.875rem;
}
.header-bottom .bgm {
  gap: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header-bottom .bgm span {
  background-image: var(--home);
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  cursor: pointer;
}
.header-bottom .bgm span.play_arrow {
  font-size: 35px;
}
.header-bottom .bgm span.pause {
  display: none;
}
.header-bottom .bgm span.volume_up {
  display: none;
}
/* === //header ==================================== */

/* === main ==================================== */
main {
  background-color: #000;
}
/* section.visual ============= */
section.visual {
  height: 100vh;
  overflow: hidden;
  position: relative;
  background-color: #000;
}
/* section.visual 배너 유튜브 */
section.visual .youtube-area {
  margin-top: 50px;
  position: absolute;
  padding: 20px 10px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100vh;
}
section.visual .youtube-area .swiper-slide {
  width: 100%;
  height: 85%; 
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid transparent;
  position: relative;
  background-image:linear-gradient(#000, #000),linear-gradient(0deg, #ffffff 0%, #adadad 100%);
  background-origin: border-box;
  background-clip: content-box, border-box;
}
section.visual .youtube-area .swiper-slide iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1.2);
}
/* 유튜브 배너 타이틀 */
section.visual .youtube-area .swiper-slide .banner-title {
  position: absolute;
  bottom: 10%;
  left: 8%;
  width: 200px;
}
section.visual .youtube-area .swiper-slide .banner-title img {
  width: 100%;
}
section.visual .youtube-area .swiper-slide .banner-title .banner-button {
  margin-top: 20px;
}
section.visual .youtube-area .swiper-slide .banner-title .banner-button a {
  font-size: 1.5rem;
  color: #fff;
  background-color: var(--naver);
  padding: 5px 20px;
  border-radius: 40px;
  width:fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
}
section.visual .youtube-area .swiper-slide .banner-title p {
  background-image: linear-gradient(45deg, #5c5151, rgb(77, 5, 5), rgb(141, 27, 27));
  color: transparent;
  background-clip: text;
  font-size: 3rem;
  font-weight: 900;
  -webkit-text-stroke: 1px #ffffff;
}
section.visual .youtube-area .swiper-slide .banner-slide {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
/* 유튜브 컨트롤 박스 */
section.visual .youtube-area .controlbox {
  display: flex;
  justify-content: center;
  text-align: center;
  color: #fff;
  position: absolute;
  bottom: 75px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 80;
  font-weight: 500;
  gap: 20px;
  font-size: 20px;
}
section.visual .youtube-area .controlbox .visu-prev {
  cursor: pointer;
}
section.visual .youtube-area .controlbox .visu-prev:hover span {
  color: var(--naver);
}
section.visual .youtube-area .controlbox .visu-pagination {
  width: auto;
}
section.visual .youtube-area .controlbox .visu-pagination .swiper-pagination-bullet {
  width: 20px;
  height: 20px;
  background-color: #fff;
  opacity: 0.5;
  transition: var(--move);
}
section.visual .youtube-area .controlbox .visu-next {
  cursor: pointer;
}
section.visual .youtube-area .controlbox .visu-next:hover span {
  color: var(--naver);
}
/* section.visual mb-scroll ============= */
section.visual .mb-scroll {
  display: none;
  color: var(--naver);
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0;
}
section.visual .mb-scroll span {
  font-size: 1.5rem;
  font-weight: 700;
  vertical-align: middle;
}
section.visual .mb-scroll .material-icons {
  fill: #fff;
  font-size: 3rem;
  text-align: center;
}

/* section.variable ============= */
section.variable {
  width: 100%;
  height: 100vh;
  position: relative;
  background-color: #000;
  padding-top: calc(122px + 10px);
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}
section.variable .var1 {
  height: auto;
  margin-bottom: 20px;
}
/* section.variable var1 네이버 유튜브 바로가기 */
section.variable .var1 .var-title {
  padding: 0 20px;
  margin-bottom: 15px;
}
section.variable .var1 .var-title a {
  font-size: 2.1rem;
  background-image: var(--leftarrow);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
/* section.variable var1 네이버 쇼츠(흘러가는 스와이퍼) */
section.variable .var1 .varMovie {
  width: 100%;
  height: auto;
}
.varMovie .swiper-wrapper {
  transition-timing-function: linear !important;
}
.varMovie .swiper-slide {
  overflow: hidden;
  border-radius: 8px;
  cursor: pointer;
}
.varMovie .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.18, 1.18);
}
/* section.variable var2 네이버 웹툰 바로가기 */
section.variable .var2 {
  height: 55%;
  padding-bottom: 50px;
}
section.variable .var2 .var-title {
  padding: 0 20px;
  margin-bottom: 20px;
}
section.variable .var2 .var-title a {
  font-size: 2.1rem;
  background-image: var(--leftarrow);
  background-clip: text;
  color: transparent;
}
/* section.variable var2 네이버 웹툰(흘러가는 스와이퍼) */
section.variable .var2 .varImg {
  flex: 1;
  direction: rtl;
  width: 100%;
  height: 100%;
}
section.variable .var2 .varImg .swiper-wrapper {
  transition-timing-function: linear;
}
section.variable .var2 .varImg .swiper-slide {
  overflow: hidden;
  border-radius: 8px;
  cursor: pointer;
  position: relative;
  transition: var(--move);
}
section.variable .var2 .varImg .swiper-slide:hover {
  transform: translateY(-5px);
}
section.variable .var2 .varImg .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
section.variable .var2 .varImg .swiper-slide .textbox {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  opacity: 0;
  text-align: left;
  background-color: rgba(0,0,0,0.8);
  padding: 20px;
  direction: ltr;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transition: var(--move);
}
section.variable .var2 .varImg .swiper-slide:hover .textbox {
  visibility: visible;
  opacity: 1;
}
section.variable .var2 .varImg .swiper-slide .textbox p {
  color: #fff;
}
section.variable .var2 .varImg .swiper-slide .textbox p.webTitle {
  font-size: 1.5rem;
  text-align: center;
  font-weight: 600;
  margin-bottom: 10px;
  background-image: var(--leftarrow);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
section.variable .var2 .varImg .swiper-slide .textbox p.webStar {
  margin-bottom: 10px;
  text-align: center;
}
section.variable .var2 .varImg .swiper-slide .textbox p.webStar span {
  color: var(--menucolor);
}
section.variable .var2 .varImg .swiper-slide .textbox p.webAuthor {
  text-align: center;
  font-size: 1rem;
  margin-bottom: 20px;
  color: var(--menucolor);
}
section.variable .var2 .varImg .swiper-slide .textbox p.webExplain {
  width: 100%;
  margin-bottom: 20px;
  text-overflow : ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  font-size: 0.9rem;
}
section.variable .var2 .varImg .swiper-slide .textbox p.webGo {
  text-align: center;
  cursor: pointer;
  opacity: 0.7;
}
section.variable .var2 .varImg .swiper-slide .textbox p.webGo:hover {
  color: var(--menucolor);
  text-decoration: underline;
  opacity: 1;
}

/* section.variable var3 sw-mobileMovie */
section.variable .var3 {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100vh;
  width: 100%;
}
/* 폰 이미지 */
section.variable .var3 .mobile-phone {
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 310px;
}
section.variable .var3 .mobile-phone img {
  width: 100%;
  height: 100%;
}
/* 비쥬얼 모바일 컨트롤 */
section.variable .var3 .mobile-phone .mo-cotrols {
  position: absolute;
  z-index: 101;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 45px;
  width: 87%;
  border-radius: 0 0 30px 30px;
  background-color: #000000;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
  padding: 5px 0;
}
section.variable .var3 .mobile-phone .mo-cotrols .mo-prev i {
  background-image: var(--logo);
  background-clip: text;
  color: transparent;
}
section.variable .var3 .mobile-phone .mo-cotrols .mo-pagination {
  font-size: 20px;
  text-align: center;
  color: var(--naver);
  font-weight: 500;
}
section.variable .var3 .mobile-phone .mo-cotrols .mo-next i {
  background-image: var(--logo);
  background-clip: text;
  color: transparent;
}
/* 비쥬얼 모바일 스와이퍼 */
section.variable .var3 .sw-mobileMovie {
  display: none;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
}
.sw-mobileMovie .swiper-slide {
  overflow: hidden;
  cursor: pointer;
  width: 300px;
  position: relative;
  transition: var(--move);
}
.sw-mobileMovie .swiper-slide::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  opacity: 0.6;
  z-index: 10;
}
.sw-mobileMovie .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.sw-mobileMovie .swiper-slide.swiper-slide-active::after{
  opacity: 0;
}

/* section.variable .varModal 모달창 */
section.variable .varModal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  display: none;
}
section.variable .varModal.block {
  display: block;
}
section.variable .varModal .dim {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.7;
}
section.variable .varModal .pc-itembox {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1000px;
  height: 562.5px;
  z-index: 1001;
}
section.variable .varModal .pc-itembox iframe {
  width: 100%;
  height: 100%;
}
section.variable .varModal .mb-itembox {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 400px;
  height: 711.11px;
  z-index: 101;
}
section.variable .varModal .mb-itembox iframe {
  width: 100%;
  height: 100%;
}

/* section.webToon ============= */
section.webToon {
  width: 100%;
  height: 100vh;
  background-color: #000;
  position: relative;
  overflow: hidden;
}
/* 섹션 웹툰 배경 스와이퍼 */
section.webToon .sw-webTBg {
  width: 100%;
  height: 80vh;
  position: relative;
  top: 140px;
}
section.webToon .sw-webTBg .swiper-wrapper {
  transition-timing-function: linear !important;
}
section.webToon .sw-webTBg::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
}
section.webToon .sw-webTBg .swiper-slide {
  border-radius: 10px;
  overflow: hidden;
}
section.webToon .sw-webTBg .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
/* section.webToon .leftMove 왼쪽 */
section.webToon .leftMove {
  position: absolute;
  top: 57%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 20;
}
section.webToon .leftMove.on {
  left: 23%;
}
section.webToon .leftMove .container {
  overflow: hidden;
}
section.webToon .leftMove.on .container {
  width: 60%;
}
/* section.webToon .leftMove 오늘의 웹툰/장르별 탭메뉴*/
section.webToon .leftMove .webTTabmenu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-bottom: 20px;
}
section.webToon .leftMove .webTTabmenu > li > h3 {
  text-align: center;
  width: 150px;
}
section.webToon .leftMove .webTTabmenu > li > h3 a {
  color: white;
  font-size: 2.25rem;
  transition: var(--move);
}
section.webToon .leftMove .webTTabmenu > li > h3 a span {
  visibility: hidden;
  opacity: 0;
  transition: var(--move);
  display: block;
  width: 0;
  height: 3px;
  margin: 0 auto;
}
section.webToon .leftMove .webTTabmenu > li > h3 a.on {
  background-image: var(--leftarrow);
  background-clip: text;
  color: transparent;
}
section.webToon .leftMove .webTTabmenu > li > h3 a.on span {
  background: linear-gradient(90deg, transparent, var(--menucolor), transparent);
  opacity: 1;
  visibility: visible;
  width: 100%;
}

/* section.webToon .leftMove 서브메뉴 */
section.webToon .leftMove .webTSubmenu {
  margin-bottom: 30px;
}
section.webToon .leftMove .webTSubmenu .vi-submenu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
}
section.webToon .leftMove .webTSubmenu .vi-submenu li a {
  display: block;
  color: #fff;
  transition: var(--move);
  text-align: center;
  font-size: 1.1875rem;
  font-weight: 600;
}
section.webToon .leftMove .webTSubmenu .vi-submenu li a.on {
  color: var(--skycolor);
}

/* section.webToon .leftMove 오늘의 웹툰 스와이퍼 */
section.webToon .leftMove .todayToon {
  width: 100%;
  height: 57vh;
  padding: 0 20px;
  position: relative;
}
section.webToon .leftMove .todayToon .sw-today {
  width: 100%;
  position: relative;
}
section.webToon .leftMove .todayToon .sw-today .swiper-slide {
  overflow: hidden;
  width: 370px;
  cursor: pointer;
}
/* leftMove.on */
/* section.webToon .leftMove.on .todayToon .sw-today .swiper-slide {
  width: 300px;
} */
section.webToon .leftMove .todayToon .sw-today .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: all 0.5s linear;
}
section.webToon .leftMove .todayToon .sw-today .swiper-slide:hover img {
  transform: scale(1.1);
}
section.webToon .leftMove .todayToon .sw-today .today-control {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 300px;
  color: #000000;
  font-weight: 900;
  -webkit-text-stroke:0.8px var(--skycolor);
  opacity: 0.7;
  pointer-events: none;
}
section.webToon .leftMove .todayToon .sw-today .today-control .today-prev {
  width: 100px;
  height: 100px;
  position: relative;
  cursor: pointer;
}
section.webToon .leftMove .todayToon .sw-today .today-control .today-prev span{
  position: absolute;
  top: 50%;
  left: 25%;
  transform: translateY(-50%);
  font-size: 100px;
}
section.webToon .leftMove .todayToon .sw-today .today-control .today-next {
  width: 100px;
  height: 100px;
  position: relative;
  cursor: pointer;
}
section.webToon .leftMove .todayToon .sw-today .today-control .today-next span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 100px;
}

/* section.webToon .leftMove 장르별 스와이퍼 */
section.webToon .leftMove .genre {
  width: 100%;
  height: 57vh;
  overflow-y:auto;
  scrollbar-width: none;
  position: relative;
  padding: 0 20px;
}
section.webToon .leftMove .genre .sw-genre {
  position: relative;
  margin-bottom: 20px;
  padding: 20px 0;
}

section.webToon .leftMove.on .genre .sw-genre {
  margin-bottom: 10px;
}

.genre .sw-genre:last-child {
  margin-bottom: 300px;
}
.leftMove.on .genre .sw-genre:last-child {
  margin-bottom: 150px;
}
.genre .sw-genre .swiper-slide {
  width: 240px;
}
.genre .sw-genre .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* section.webToon rightMove 오른쪽*/
section.webToon .rightMove {
  display: none;
  position: absolute;
  width: 50%;
  height: 75%;
  right: -100%;
  top: 55%;
  transform: translate(50%, -50%);
  overflow-y: auto;
  scrollbar-width: none;
}
section.webToon .rightMove.on {
  display: block;
  right: 27%;
  z-index: 100;
}
section.webToon .rightMove > span {
  position: sticky;
  top: 10px;
  left: 10px;
  font-size: 50px;
  color: var(--skycolor);
  z-index: 101;
  cursor: pointer;
}
section.webToon .rightMove .toon-today {
  position: relative;
  top: -50px;
  left: 0;
}
section.webToon .rightMove .toon-today.on {
  display: none;
}
section.webToon .rightMove .toon-genre {
  position: relative;
  top: -50px;
  left: 0;
}
section.webToon .rightMove .toon-genre.on {
  display: none;
}

/* section.webToon toon/webImg 공통 */
section.webToon .rightMove .toon {
  position: relative;
}
section.webToon .rightMove .toon .webImg {
  position: absolute;
  top: -3px;
  left: 0;
}
section.webToon .rightMove .toon .webImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
/* toon 설명 */
section.webToon .rightMove .toon .webImg .webImgdesc {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background-color: rgba(0, 0, 0, .8);
  transition: all .5s linear;
}
section.webToon .rightMove .toon .webImg:hover .webImgdesc {
  visibility: hidden;
  opacity: 0;
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap {
  position: sticky;
  width: 60%;
  top: 120px;
  left: 50%;
  transform: translateX(-50%);
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap p {
  margin-bottom: 20px;
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap .toon-title {
  font-size: 2.25rem;
  color: var(--menucolor);
  font-weight: 600;
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap .toon-author {
  font-size: 1.1rem;
  color: var(--menucolor);
  opacity: 0.8;
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap .toon-desc {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.5;
}
section.webToon .rightMove .toon .webImg .webImgdesc .p-wrap .toon-shop {
  color: rgba(255, 255, 255, .6);
}
section.webToon .rightMove .toon .webImg .toon-go {
  cursor: pointer;
  font-size: 1.5rem;
  color: var(--skycolor);
  position: fixed;
  top: 15px;
  right: 15px;
  width: auto;
  border-radius: 50px;
  padding: 10px 15px;
}
section.webToon .rightMove .toon .webImg:hover .toon-go {
  background-color: rgba(0, 0, 0, .8);
  color: #fff;
}

/* section.dailyPlus 매일 플러스 ============*/
section.dailyPlus {
  height: 100vh;
  padding-top: 140px;
}
section.dailyPlus .container {
  position: relative;
}
section.dailyPlus .daily-plus-header {
  text-align: center;
  margin-bottom: 50px;
}
section.dailyPlus .daily-plus-header .daily-plus-title {
  font-size: 2.25rem;
  font-weight: 700;
  background-image: var(--leftarrow);
  -webkit-background-clip: text;
  color: transparent;
  background-clip: text;
  margin-bottom: 16px;
  position: relative;
}
section.dailyPlus .daily-plus-header .daily-plus-title::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--menucolor), transparent);
}
section.dailyPlus .daily-plus-header .daily-plus-subtitle {
  color: rgba(255, 255, 255, 1);
  font-size: 18px;
  font-weight: 400;
}

section.dailyPlus .dailyContents {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin-top: 30px;
}
/* section.webToon 매일 장르 */
section.dailyPlus .dailyContents .dailySection {
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(20px);
  border-radius: 24px;
  padding: 25px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.5s linear;
  position: relative;
  overflow-y: scroll;
  scroll-snap-type: y mandatory;
  scrollbar-width: none;
  color: var(--menucolor);
  height: 60vh;
}
section.dailyPlus .dailyContents .dailySection::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, currentColor, transparent);
  opacity: 0.6;
}
section.dailyPlus .dailyContents .dailySection:hover {
  transform: translateY(-8px);
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--menucolor);
}
section.dailyPlus .dailyContents .dailySection .genre-header {
  text-align: center;
  margin-bottom: 32px;
  padding-bottom: 25px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 1.1875rem;
  font-weight: 600;
  color: var(--menucolor);
  letter-spacing: -0.5px;
}
/* section.webToon 로맨스, 판타지, 액션, 코믹 */
section.dailyPlus .dailyContents .dailySection .webtoon-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item {
  display: flex;
  align-items: center;
  padding: 10px;
  background: rgba(255, 255, 255, 0.02);
  backdrop-filter: blur(10px);
  border-radius: 5px;
  transition: var(--move);
  cursor: pointer;
  border: 1px solid rgba(255, 255, 255, 0.05);
  position: relative;
  overflow: hidden;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item:hover{
  background: rgba(255, 255, 255, 0.05);
  transform: translateX(8px);
  border-color: rgba(255, 255, 255, 0.1);
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.05), transparent);
  transition: left 0.6s ease;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item:hover::before {
  left: 100%;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-thumbnail {
  width: 60px;
  height: 100px;
  border-radius: 5px;
  background: linear-gradient(135deg, currentColor, rgba(255, 255, 255, 0.1));
  color: white;
  font-weight: 600;
  font-size: 16px;
  margin-right: 16px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  position: relative;
  overflow: hidden;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-thumbnail .tumbimg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-thumbnail .clock {
  position: absolute;
  top: 1px;
  left: 1px;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-info {
  flex: 1;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-info .webtoon-title {
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 4px;
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 15px;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-info .webtoon-title span.update-badge {
  background: linear-gradient(45deg, #ff4757, #ff6b9d);
  color: white;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 12px;
  animation: pulse 3s infinite;
  letter-spacing: 0.5px;
}
@keyframes pulse {
  0%, 100% { 
      transform: scale(1);
  }
  50% { 
      transform: scale(1.05);
  }
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-info .webtoon-author {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  margin-bottom: 4px;
  font-weight: 400;
}
section.dailyPlus .dailyContents .dailySection .webtoon-list .webtoon-item .webtoon-info .webtoon-stats {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  font-weight: 400;
}

/* ======= section.challenge ======================= */
section.challenge {
  padding-top: 67px;
  height: 100vh;
  overflow: hidden;
}
section.challenge .challengesectionBg {
  width: 100%;
  position: relative;
}
/* 베스트도전 */
section.challenge .challengesectionBg .bestBg {
  width: 57.5vw;
  clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%);
  background-color: rebeccapurple;
  overflow: hidden;
  position: relative;
  height: 100vh;
}
section.challenge .challengesectionBg .bestBg .toptxt {
  position: absolute;
  z-index: 150;
  top: 132px;
  right: 10%;
}
section.challenge .challengesectionBg .bestBg .toptxt .downarrow {
  transform: translateY(-10%) rotate(-90deg);
}
section.challenge .challengesectionBg .bestBg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scaleX(-1);
  object-position: left top;
}
section.challenge .challengesectionBg .bestBg > span {
  position: absolute;
  z-index: 150;
  bottom: 122px;
  right: 23%;
}
section.challenge .challengesectionBg .bestBg::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 149;
}
/* 이미지맵 */
section.challenge .challengesectionBg .bestMap {
  position: absolute;
  top: 50%;
  left: 25%;
  width: 45%;
  height: 45%;
  z-index: 500;
  transform: translate(-50%, -50%);
}
section.challenge .challengesectionBg .bestMap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
section.challenge .challengesectionBg .challengeMap {
  position: absolute;
  top: 50%;
  left: 73%;
  width: 45%;
  height: 45%;
  z-index: 500;
  transform: translate(-50%, -50%);
}
section.challenge .challengesectionBg .challengeMap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
/* ============================================= */

/* 도전만화 */
section.challenge .challengesectionBg .challengeBg {
  width: 57.5vw;
  clip-path: polygon(25% 0, 100% 0%, 100% 100%, 0% 100%);
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
  height: 100vh;
}
section.challenge .challengesectionBg .challengeBg::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 149;
}
/* (베스트) 도전 */
section.challenge .challengesectionBg .challengeBg > span {
  position: absolute;
  z-index: 150;
  top: 136px;
  left: 23%;
}
section.challenge .challengesectionBg .challengeBg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.challenge .challengesectionBg .challengeBg .bottomtxt {
  position: absolute;
  z-index: 150;
  bottom: 122px;
  left: 8%;
}
section.challenge .challengesectionBg .challengeBg .bottomtxt .uparrow {
  transform: translateY(40%) rotate(90deg);
}
/* === //main =========================== */

/* === footer =========================== */
footer {
  padding: 20px 0;
}
/* 푸터 탑 */
footer .footer-top {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 30px;
  margin-bottom: 5px;
}
footer .footer-top li a {
  font-size: 13px;
  font-weight: 600;
  transition: var(--move);
  position: relative;
  padding: 8px 0;
  display: block;
}
footer .footer-top li a::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: var(--skycolor);
  transition: var(--move);
  transform: translateX(-50%) scale(0);
}
footer .footer-top li a:hover {
  color: #00c73c;
}
footer .footer-top li a:hover::after {
  transform: translateX(-50%) scale(1);
}
footer .footer-top a.customer-center:hover {
  background-color: #00a632;
  transform: translateY(-1px);
}
/* 푸터 컨텐트 */
footer .footer-content {
  margin-bottom: 15px;
}
footer .footer-content .footer-section {
  background: rgba(255, 255, 255, 0.7);
  padding: 15px;
  border-radius: 8px;
  border: 1px solid #e9ecef;
  margin-bottom: 15px;
}
footer .footer-content .footer-section h3 {
  color: #212529;
  font-size: 12.5px;
  font-weight: 600;
  margin-bottom: 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid #00c73c;
  display: inline-block;
}
footer .footer-content .footer-links ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 15px;
}
footer .footer-content .footer-links ul li {}
footer .footer-content .footer-links ul li a {
  color: #6c757d;
  font-size: 11px;
  transition: var(--move);
  padding: 3px 6px;
  border-radius: 3px;
}
footer .footer-content .footer-links ul li a:hover {
  color: var(--naver);
}
footer .footer-content .footer-links ul li a b {
  color: #495057;
  font-weight: 600;
}
footer .footer-content .footer-links ul li a:hover b {
  color: var(--naver);
}
footer .footer-content .company-info ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 15px;
  margin-bottom: 10px;
}
footer .footer-content .company-info ul:last-child {
  margin-bottom: 0;
}
footer .footer-content .company-info ul li a {
  color: #495057;
  font-size: 11px;
  line-height: 1.4;
  transition: var(--move);
}
footer .footer-content .company-info ul li a:hover {
  color: var(--naver);
}
footer .footer-content .company-info ul:first-child li:first-child a {
  font-weight: 600;
  color: #212529;
  font-size: 11px;
}
footer .footer-content .footer-notice p {
  color: #6c757d;
  font-size: 11px;
  line-height: 1.4;
  margin-bottom: 10px;
}
footer .copyright {
  color: #495057;
  font-weight: 500;
  font-size: 11px;
  text-align: center;
  padding: 12px;
  background: rgba(0, 199, 60, 0.05);
  border-radius: 6px;
  border: 1px solid rgba(0, 199, 60, 0.1);
}
/* === //footer === */
