@charset "UTF-8";
:root {
  /* Brand Colors - 테마 변경의 핵심 변수 */
  --main-color: #2B82B3;
  --color-main: #2B82B3;
  /* --main-color alias */
  --color-main-20: #D6D6FF;
  --color-main-10: #EBEAFF;
  --color-main-5: #F5F5FF;
  --color-sub: #FFB904;
  /* Fonts */
  --font-main: GmarketSans, sans-serif;
  --font-sub: Pretendard, sans-serif;
  /* Text Colors */
  --txt-color-base: #060303;
  --txt-color-tit: #111;
  --txt-color-active: #111;
  --txt-color-form: #666;
  /* Base Colors */
  --color-white: #fff;
  --color-black: #000;
  --color-border: #EDEDED;
  --color-danger: #E52E2C;
  --color-success: #11ae5b;
  /* Layout */
  --layout-max-width: 1440px;
  /* Pager */
  --pager-bg-active: #e4205b;
  --pager-color-active: #00287A; }

.sub-contents {
  margin: 100px auto;
  padding: 0 20px; }
  @media (min-width: 1200px) {
    .sub-contents {
      margin: 185px auto 230px; } }

.sub-tit {
  color: #000;
  text-align: center;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 30px; }
  @media (min-width: 768px) {
    .sub-tit {
      font-size: 4.8rem;
      margin-bottom: 100px; } }

.sub-container {
  max-width: 1400px;
  margin: 0 auto; }

.section-tit {
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: normal; }
  @media (min-width: 768px) {
    .section-tit {
      margin-bottom: 30px;
      font-size: 2.4rem; } }
  .section-tit::before {
    content: '';
    width: 2rem;
    height: 2.5rem;
    margin-right: 4px;
    display: inline-block;
    background: url("/_user/basicFolder/img/sub/icon-simbol.svg") no-repeat; }

/* 공통 텍스트 s */
.common-txt {
  width: 100%;
  margin-bottom: 30px;
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 80px;
  color: #FFF;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.3px;
  background: url("/_user/basicFolder/img/sub/common-txt-bg-m.svg") center center no-repeat, linear-gradient(90deg, #12A6B1 2.22%, #E96789 51.16%, #D2DD30 97.75%);
  background-size: cover; }
  @media (min-width: 768px) {
    .common-txt {
      padding: 30px 40px;
      margin-bottom: 50px;
      border-radius: 100px;
      font-size: 2.7rem;
      font-weight: 700;
      background: url("/_user/basicFolder/img/sub/common-txt-bg.svg") center center no-repeat, linear-gradient(90deg, #12A6B1 2.22%, #E96789 51.16%, #D2DD30 97.75%);
      background-size: cover; } }

/* 공통 텍스트 e */
/* 공통 슬라이드 s */
.common-slide {
  margin: 0 auto;
  padding: 0 16px;
  position: relative; }
  .common-slide__slide .swiper-slide:first-child img {
    object-position: bottom center; }
  .common-slide__slide .swiper-slide img {
    width: 100%;
    object-fit: cover;
    object-position: center center;
    border-radius: 20px; }
    @media (min-width: 768px) {
      .common-slide__slide .swiper-slide img {
        height: 600px; } }
  @media (min-width: 1200px) {
    .common-slide__slide {
      max-width: 1400px;
      padding: 0 100px;
      margin: 0 auto; } }
  .common-slide__prev, .common-slide__next {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    z-index: 1; }
    @media (min-width: 768px) {
      .common-slide__prev, .common-slide__next {
        width: 5rem;
        height: 5rem; } }
  .common-slide__prev {
    background: #060303 url("/_user/basicFolder/img/main/icon-arrow.svg") center center no-repeat;
    left: 16px;
    transform: translateY(-50%) rotate(180deg); }
  .common-slide__next {
    background: #060303 url("/_user/basicFolder/img/main/icon-arrow.svg") center center no-repeat;
    right: 16px;
    transform: translateY(-50%); }
  .common-slide__txt {
    margin-top: 16px;
    color: #000;
    text-align: center;
    line-height: normal;
    letter-spacing: -0.39px;
    font-size: 1.6rem;
    font-weight: 600; }
    @media (min-width: 768px) {
      .common-slide__txt {
        margin-top: 30px;
        font-size: 2.6rem;
        font-weight: 600; } }

/* 공통 슬라이드 e */
/* sub-top background */
.sub-top {
  width: 100%;
  height: 180px;
  margin: 80px 0 55px;
  padding: 16px;
  position: relative;
  background-image: url("/_user/basicFolder/img/sub/img-subvisual.png");
  /* 기본 1뎁스(사이트맵) */
  background-size: cover;
  background-position: 80% 42%;
  background-repeat: no-repeat;
  box-sizing: border-box;
  /* 서브비주얼 배경 분기 */ }
  @media (min-width: 768px) {
    .sub-top {
      height: 400px; } }
  @media (min-width: 1200px) {
    .sub-top {
      background-position: center bottom !important;
      margin-top: 160px; } }
  .sub-top__wrap {
    max-width: 1260px;
    height: 100%;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column; }
  .sub-top__tit {
    margin-bottom: 20px;
    color: #fff;
    box-sizing: border-box;
    letter-spacing: -0.7px;
    font-size: 2.6rem;
    font-weight: 700; }
    @media (min-width: 768px) {
      .sub-top__tit {
        padding-bottom: 20px;
        font-size: 3.6rem;
        font-weight: 700;
        letter-spacing: 0; } }
  .sub-top.intro {
    /* 대회소개 */
    background-image: url("/_user/basicFolder/img/sub/img-subvisual-intro.png");
    background-position: 40% 5%; }
  .sub-top.info {
    /* 경기정보 */
    background-image: url("/_user/basicFolder/img/sub/img-subvisual-info.png");
    background-position: 47% 98%; }
  .sub-top.guide {
    /* 방문가이드 */
    background-image: url("/_user/basicFolder/img/sub/img-subvisual-guide.png");
    background-position: 80% 5%; }
  .sub-top.tour {
    /* 투어 */
    background-image: url("/_user/basicFolder/img/sub/img-subvisual-tour.png");
    background-position: 80% 42%; }
  .sub-top.community {
    /* 대회소식 */
    background-image: url("/_user/basicFolder/img/sub/img-subvisual-community.png");
    background-position: 50% 42%; }

.breadcrumbs {
  display: flex;
  max-width: 1400px;
  box-sizing: border-box; }
  .breadcrumbs__list {
    display: flex;
    align-items: center; }
  .breadcrumbs__item {
    display: flex;
    align-items: center;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 600; }
    .breadcrumbs__item::after {
      content: "";
      display: inline-block;
      width: 0.7rem;
      height: 1.4rem;
      margin: 0 8px;
      background: url("/_user/basicFolder/img/sub/icon-bread-arrow.svg") no-repeat center/contain; }
      @media screen and (min-width: 1200px) {
        .breadcrumbs__item::after {
          margin-right: 12px; } }
    .breadcrumbs__item:last-child::after {
      display: none; }
  .breadcrumbs__link {
    display: inline-block;
    padding-left: 8px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 600; }
    .breadcrumbs__link:first-of-type {
      padding-left: 0; }
  .breadcrumbs.active {
    font-weight: 500; }

.icon-home {
  position: relative;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  margin-top: 1px;
  text-indent: -9999px;
  background: url("/_user/basicFolder/img/sub/icon-home.svg") no-repeat center/cover;
  background-size: cover; }
  @media (min-width: 1200px) {
    .icon-home {
      width: 1.5rem;
      height: 1.5rem; } }

.category {
  width: 100%;
  max-width: 1260px;
  background: #2B82B3;
  position: absolute;
  left: 50%;
  bottom: -55px;
  z-index: 4;
  transform: translateX(-50%); }
  @media (min-width: 768px) {
    .category {
      bottom: 0;
      background: transparent; } }
  .category .arrow::before {
    content: '';
    position: absolute;
    top: 50%;
    width: 0.7rem;
    height: 0.7rem;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translateY(-50%) rotate(135deg); }
  .category li.active .tab-btn {
    background: #F6FAFF; }
  .category__btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 55px;
    padding: 16px;
    background: var(--point-color);
    color: #fff;
    font-size: 15px; }
    .category__btn .arrow {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 1.8rem;
      height: 1.8rem;
      transition: all 0.3s ease; }
    .category__btn.active .arrow {
      transform: rotate(180deg); }
    @media (min-width: 768px) {
      .category__btn {
        display: none; } }
  .category__wrap {
    position: absolute;
    z-index: 5;
    display: none;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #e5e5e5;
    overflow-y: auto; }
    @media (min-width: 768px) {
      .category__wrap li {
        max-width: 210px; } }
    .category__wrap li .tab-btn {
      width: 100%;
      height: 55px;
      padding: 16px;
      display: flex;
      align-items: center;
      box-sizing: border-box;
      color: #000;
      background: #fff;
      line-height: 1.5;
      font-size: 1.4rem;
      font-weight: 500; }
      .category__wrap li .tab-btn:hover {
        background: #E4EAF0; }
    @media (min-width: 768px) {
      .category__wrap {
        position: static !important;
        display: flex !important;
        flex-wrap: wrap;
        justify-content: center;
        border: none; }
        .category__wrap li {
          flex: 1; }
          .category__wrap li .tab-btn {
            justify-content: center;
            height: 80px;
            color: #000;
            font-size: 1.8rem;
            font-weight: 600;
            background: rgba(255, 255, 255, 0.6);
            transition: background 0.3s ease; }
          .category__wrap li.active .tab-btn {
            color: #fff;
            background: #2B82B3; } }

/* ## 인사말 s ## */
.greeting .tab__list {
  margin-bottom: 70px; }
  @media (min-width: 768px) {
    .greeting .tab__list {
      margin-bottom: 150px; } }
  @media (min-width: 1200px) {
    .greeting .tab__list {
      margin-bottom: 300px; } }
@media (min-width: 768px) {
  .greeting .tab__item {
    min-width: 320px;
    max-width: 320px; } }
.greeting__box {
  position: relative; }
  @media (min-width: 768px) {
    .greeting__box {
      padding: 80px 20px; } }
  .greeting__box::after {
    content: '';
    width: calc(100% + 40px);
    height: calc(100% - 100px);
    display: block;
    background: #F7F9FA;
    position: absolute;
    top: 120px;
    left: -20px;
    z-index: -1; }
    @media (min-width: 1200px) {
      .greeting__box::after {
        height: 100%;
        top: 0; } }
  .greeting__box .sub-container {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    flex-direction: column; }
    @media (min-width: 768px) {
      .greeting__box .sub-container {
        height: 100%; } }
    @media (min-width: 1200px) {
      .greeting__box .sub-container {
        flex-direction: row; } }
.greeting__img-box {
  width: 100%;
  max-width: 280px;
  margin: 0 auto 100px;
  position: relative;
  z-index: 1;
  text-align: right;
  display: flex;
  justify-content: center; }
  @media (min-width: 768px) {
    .greeting__img-box {
      max-width: 450px;
      margin: 0 auto; } }
  @media (min-width: 1200px) {
    .greeting__img-box {
      flex: 470px;
      min-width: 470px;
      max-width: 100%;
      margin-right: 70px;
      padding-right: 90px;
      justify-content: flex-end; } }
  .greeting__img-box::before, .greeting__img-box::after {
    content: '';
    display: block;
    position: absolute;
    z-index: -1; }
  .greeting__img-box::before {
    width: 150%;
    height: 280px;
    background: linear-gradient(334deg, #C0332D 12.78%, #1C498C 79.28%);
    left: -64%;
    bottom: -11%; }
    @media (min-width: 768px) {
      .greeting__img-box::before {
        width: 95rem;
        height: 47.3rem;
        background: linear-gradient(287deg, #C0332D 9.95%, #1C498C 80.87%);
        top: -53px;
        left: -128%; } }
    @media (min-width: 1200px) {
      .greeting__img-box::before {
        width: 95rem;
        height: 57.3rem;
        top: -180px;
        left: auto;
        right: 0; } }
  .greeting__img-box::after {
    width: 75rem;
    height: 2.4rem;
    background: url("/_user/basicFolder/img/sub/greeting-txt.svg") no-repeat;
    left: -466px;
    bottom: -70px; }
    @media (min-width: 768px) {
      .greeting__img-box::after {
        top: 430px;
        left: -375px; } }
    @media (min-width: 1200px) {
      .greeting__img-box::after {
        width: 75rem;
        height: 2.4rem;
        top: 410px;
        left: auto;
        right: 0; } }
.greeting__img {
  position: relative; }
  @media (min-width: 768px) {
    .greeting__img {
      top: -140px; } }
  @media (min-width: 1200px) {
    .greeting__img {
      top: -265px; } }
.greeting__name-box {
  color: #FFF;
  font-size: 1.3rem;
  line-height: normal;
  position: absolute;
  bottom: -10px; }
  @media (min-width: 768px) {
    .greeting__name-box {
      font-size: 1.6rem;
      bottom: 130px; } }
  @media (min-width: 1200px) {
    .greeting__name-box {
      right: 115px;
      bottom: 246px; } }
.greeting__name {
  font-size: 1.3rem;
  font-weight: 600; }
  @media (min-width: 768px) {
    .greeting__name {
      font-size: 1.6rem;
      font-weight: 600; } }
@media (min-width: 1200px) {
  .greeting__txt-box {
    flex: 800px;
    max-width: 800px; } }
.greeting__tit {
  width: fit-content;
  margin-bottom: 24px;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 800;
  line-height: normal;
  letter-spacing: -0.36px;
  background: linear-gradient(90deg, #C0332D 0%, #1C498C 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
  @media (min-width: 768px) {
    .greeting__tit {
      text-align: left;
      background: linear-gradient(100deg, #C0332D 9.42%, #1C498C 49.12%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-size: 3.2rem;
      font-weight: 800; } }
.greeting__desc {
  margin-bottom: 20px;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  /* 28.8px */
  letter-spacing: -0.18px;
  word-break: keep-all;
  overflow-wrap: break-word; }
  @media (min-width: 768px) {
    .greeting__desc {
      margin-bottom: 10px;
      font-size: 1.8rem;
      font-weight: 500; } }

/* ## 인사말 e ## */
/* ## 대회개요 s ## */
.overview__box {
  margin-bottom: 30px; }
  @media (min-width: 768px) {
    .overview__box {
      margin-bottom: 130px; } }
  .overview__box:last-child {
    margin-bottom: 0; }
.overview__list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px; }
  @media (min-width: 768px) {
    .overview__list {
      justify-content: flex-start;
      gap: 20px; } }

/* ## 대회개요 e ## */
/* ## 상징물 s ## */
.simbol__box {
  margin-bottom: 60px; }
  @media (min-width: 1200px) {
    .simbol__box {
      display: flex;
      align-items: flex-start; }
      .simbol__box .section-tit {
        min-width: 90px;
        margin-right: 130px;
        margin-bottom: 0; } }
  .simbol__box:last-child {
    margin-bottom: 0; }
.simbol__wrap {
  margin-bottom: 40px; }
  .simbol__wrap:last-child {
    margin-bottom: 0; }
  @media (min-width: 1200px) {
    .simbol__wrap {
      width: 100%; } }
  @media (min-width: 1200px) {
    .simbol__wrap--v2 {
      display: flex;
      align-items: center;
      margin-bottom: 35px;
      padding-bottom: 35px;
      border-bottom: 1px solid #EBEDF1; }
      .simbol__wrap--v2 .simbol__img-box {
        min-width: 400px;
        height: 350px;
        margin-right: 50px;
        margin-bottom: 0; } }
.simbol__img-box {
  margin-bottom: 18px;
  padding: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: url("/_user/basicFolder/img/sub/icon-grid.png");
  background-size: 8px 8px;
  border: 1px solid #D9D9D9; }
.simbol__img--logo {
  width: 210px; }
  @media (min-width: 768px) {
    .simbol__img--logo {
      width: auto; } }
.simbol__img--char {
  width: 180px; }
  @media (min-width: 768px) {
    .simbol__img--char {
      width: auto; } }
.simbol__img--txt {
  color: #767676;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.5;
  /* 19.5px */
  letter-spacing: -0.13px;
  position: absolute;
  top: 14px;
  left: 16px; }
  @media (min-width: 768px) {
    .simbol__img--txt {
      font-size: 1.5rem;
      font-weight: 600; } }
.simbol__txt-box {
  margin-bottom: 30px; }
  .simbol__txt-box--v2 {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px dashed #DFDFDF; }
.simbol__tit {
  margin-bottom: 12px;
  color: #000;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
  /* 19.6px */ }
  @media (min-width: 768px) {
    .simbol__tit {
      font-size: 1.8rem;
      font-weight: 700; } }
.simbol__txt {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.4;
  /* 19.6px */ }
  @media (min-width: 768px) {
    .simbol__txt {
      font-size: 1.8rem; } }
  .simbol__txt--tiger {
    color: #4AA1C8; }
  .simbol__txt--bird {
    color: #BC2E36; }
.simbol__sub-tit {
  padding: 4px 8px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.4;
  /* 18.2px */
  border-radius: 100px;
  background: linear-gradient(100deg, #C0332D 9.42%, #1C498C 49.12%); }
  @media (min-width: 768px) {
    .simbol__sub-tit {
      font-size: 1.6rem;
      font-weight: 700; } }
.simbol__motive {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px; }
  @media (min-width: 768px) {
    .simbol__motive {
      grid-template-columns: repeat(4, 1fr); } }
.simbol__motive-list {
  padding: 24px 10px;
  background: #F7F9FA;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column; }
  .simbol__motive-list .simbol__sub-tit {
    margin-bottom: 16px; }
.simbol__motive-item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color: #000;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.4;
  /* 19.6px */ }
  @media (min-width: 768px) {
    .simbol__motive-item {
      font-size: 1.8rem; } }
  .simbol__motive-item span {
    font-size: 1.4rem;
    font-weight: 700; }
    @media (min-width: 768px) {
      .simbol__motive-item span {
        font-size: 1.8rem;
        font-weight: 700; } }
    .simbol__motive-item span::after {
      content: '';
      width: 3rem;
      height: 1.4rem;
      display: block;
      margin: 8px auto;
      background: url("/_user/basicFolder/img/sub/simbol-arrow.svg") no-repeat;
      background-size: cover; }
      @media (min-width: 768px) {
        .simbol__motive-item span::after {
          margin: 12px auto; } }
.simbol__explanation li {
  margin-bottom: 8px;
  display: flex;
  align-items: flex-start;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.3;
  /* 18.2px */ }
  @media (min-width: 768px) {
    .simbol__explanation li {
      font-size: 1.8rem; } }
  .simbol__explanation li:last-child {
    margin-bottom: 0; }
  .simbol__explanation li .simbol__sub-tit {
    min-width: 50px;
    margin-right: 8px; }
    @media (min-width: 768px) {
      .simbol__explanation li .simbol__sub-tit {
        min-width: 66px; } }
.simbol__poster {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 12px; }
  @media (min-width: 768px) {
    .simbol__poster {
      flex-direction: row; } }
  .simbol__poster li {
    padding: 30px 50px;
    background: #F7F9FA;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column; }
    @media (min-width: 768px) {
      .simbol__poster li {
        flex: 1; } }

/* ## 상징물 e ## */
/* ## 조직도 s ## */
.organization {
  position: relative; }
  .organization::after {
    content: '';
    width: 134.4rem;
    height: 125.1rem;
    display: block;
    background: url("/_user/basicFolder/img/sub/organization-bg.svg") center center no-repeat;
    position: absolute;
    top: -200px;
    left: 56%;
    transform: translateX(-50%);
    z-index: -1; }
  .organization__box {
    margin: 0 auto 50px;
    padding: 0 15px; }
  .organization__wrap {
    max-width: 850px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center; }
  .organization__list {
    width: 100%;
    margin-bottom: 30px;
    display: flex;
    justify-content: center;
    position: relative; }
    @media (min-width: 768px) {
      .organization__list {
        margin-bottom: 50px; } }
    .organization__list::after {
      content: '';
      width: 0.1rem;
      height: 5rem;
      position: absolute;
      top: 100%;
      left: 50%;
      transform: translateX(-50%);
      background: #A8A8A8;
      z-index: -1; }
  .organization__tit--circle {
    width: 13rem;
    height: 13rem;
    border-radius: 50%;
    margin: 0 auto;
    background: url("/_user/basicFolder/img/sub/organization-circle.svg") center center no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    position: relative; }
    @media (min-width: 768px) {
      .organization__tit--circle {
        width: 17rem;
        height: 17rem; } }
  .organization__tit--v2, .organization__tit--v3 {
    width: 16rem;
    height: 4.4rem;
    margin: 0 auto;
    padding: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 30px;
    color: #fff;
    z-index: 1;
    font-size: 1.4rem;
    font-weight: 700; }
    @media (min-width: 768px) {
      .organization__tit--v2, .organization__tit--v3 {
        width: 24rem;
        height: 7rem;
        font-size: 1.8rem;
        font-weight: 700; } }
  .organization__tit--v2 {
    background: #1e355c; }
  .organization__tit--v3 {
    background: #a7282a; }
  .organization__branch {
    width: 100%;
    max-width: 320px;
    padding-top: 25px;
    display: flex;
    flex-direction: column;
    position: relative; }
    @media (min-width: 768px) {
      .organization__branch {
        /* 아이템이 4개로 늘어났으므로 800px -> 900px로 수정하여 공간 확보 */
        max-width: 900px;
        padding-top: 0;
        align-items: center; } }
    .organization__branch::before {
      content: '';
      width: 0.1rem;
      height: 2.5rem;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      background: #A8A8A8;
      z-index: -1; }
      @media (min-width: 768px) {
        .organization__branch::before {
          height: 110px; } }
    .organization__branch::after {
      content: '';
      height: 1px;
      position: absolute;
      top: 25px;
      left: 20px;
      right: 15%;
      background: #A8A8A8;
      z-index: -1; }
      @media (min-width: 768px) {
        .organization__branch::after {
          top: 40px;
          left: 50%;
          right: 15%; } }
  .organization__special {
    margin-top: -24px;
    align-self: flex-end;
    position: relative;
    z-index: 1; }
    @media (min-width: 768px) {
      .organization__special {
        margin-top: 0;
        position: absolute;
        top: 10px;
        right: 70px; } }
    .organization__special-box {
      padding: 2px;
      border-radius: 12px;
      background: linear-gradient(135deg, #cc2e30, #304e8d);
      display: inline-block; }
    .organization__special-item {
      padding: 12px 25px;
      background: #f8f9fc;
      color: #111;
      border-radius: 10px;
      font-size: 1.4rem;
      font-weight: 700; }
      @media (min-width: 768px) {
        .organization__special-item {
          padding: 15px 35px;
          font-size: 1.8rem;
          font-weight: 700; } }
  .organization__dept {
    margin-top: 30px;
    padding-left: 50px;
    display: flex;
    flex-direction: column;
    position: relative;
    gap: 15px;
    /* 부모 그룹의 선 (모바일 세로선 유지, PC 가로선 숨김) */ }
    @media (min-width: 768px) {
      .organization__dept {
        width: 100%;
        margin-top: 140px;
        padding-left: 0;
        flex-direction: row;
        justify-content: space-between;
        gap: 30px; } }
    .organization__dept::before {
      content: '';
      width: 1px;
      height: calc(100% + 30px);
      background: #A8A8A8;
      position: absolute;
      top: -55px;
      left: 20px;
      z-index: -1; }
      @media (min-width: 768px) {
        .organization__dept::before {
          display: none;
          /* PC에서는 부모 선을 숨기고 아래 아이템별로 가로선을 연결합니다. */ } }
    .organization__dept-item {
      width: 16rem;
      height: 5rem;
      display: flex;
      justify-content: center;
      align-items: center;
      color: #fff;
      background: #404246;
      border-radius: 8px;
      font-size: 1.4rem;
      font-weight: 500;
      position: relative;
      z-index: 1;
      /* 위로 올라가는 세로선 */
      /* [핵심 수정] 다음 아이템까지 연결하는 가로선 */
      /* 마지막 아이템은 오른쪽으로 뻗는 선이 없어야 하므로 숨김 */ }
      @media (min-width: 768px) {
        .organization__dept-item {
          width: 100%;
          max-width: 200px;
          height: 60px;
          font-size: 1.8rem;
          font-weight: 500; } }
      .organization__dept-item::before {
        content: '';
        width: 3rem;
        height: 0.1rem;
        position: absolute;
        top: 50%;
        left: -30px;
        background: #A8A8A8;
        z-index: -1; }
        @media (min-width: 768px) {
          .organization__dept-item::before {
            width: 0.1rem;
            height: 3rem;
            top: -30px;
            left: 50%;
            background: #A8A8A8; } }
      @media (min-width: 768px) {
        .organization__dept-item::after {
          content: '';
          position: absolute;
          top: -30px;
          left: 50%;
          width: calc(100% + 30px);
          /* 자신의 중앙에서 다음 아이템 중앙까지의 반응형 거리 */
          height: 1px;
          background: #A8A8A8;
          z-index: -1; } }
      @media (min-width: 768px) {
        .organization__dept-item:last-child::after {
          display: none; } }

/* ## 조직도 e ## */
/* ## 오시는 길 s ## */
.directions__map-box {
  margin-bottom: 55px; }
  @media (min-width: 768px) {
    .directions__map-box {
      margin-bottom: 130px; } }
.directions__map {
  width: 100%;
  height: 170px;
  margin-bottom: 24px;
  border-radius: 15px;
  border: 1px solid #EBEDF1;
  background: lightgray 50% / cover no-repeat; }
  @media (min-width: 768px) {
    .directions__map {
      height: 500px;
      margin-bottom: 30px; } }
@media (min-width: 768px) {
  .directions__map-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; } }
.directions__map-item ul {
  flex: 1;
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .directions__map-item ul {
      margin-right: 20px;
      margin-bottom: 0; } }
.directions__map-txt {
  margin-bottom: 4px;
  color: #000;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: normal; }
  @media (min-width: 768px) {
    .directions__map-txt {
      margin-bottom: 10px;
      font-size: 2rem;
      font-weight: 600; } }
  .directions__map-txt:last-child {
    margin-bottom: 0; }
  .directions__map-txt span {
    margin-right: 16px; }
    @media (min-width: 768px) {
      .directions__map-txt span {
        margin-right: 40px; } }
.directions__btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  flex: 2; }
  @media (min-width: 768px) {
    .directions__btn-box {
      max-width: 532px; } }
.directions__btn {
  flex: 1;
  max-width: 260px;
  height: 45px;
  padding: 8px 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  position: relative;
  font-size: 1.4rem;
  font-weight: 600; }
  @media (min-width: 768px) {
    .directions__btn {
      height: 60px;
      padding: 16px 24px;
      font-size: 1.8rem;
      font-weight: 600; } }
  .directions__btn::before {
    content: '';
    width: 1.6rem;
    height: 2.3rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 24px;
    transform: translateY(-50%); }
  .directions__btn--kakao {
    background: #FAE100;
    border: 1px solid #FAE100; }
    .directions__btn--kakao:hover {
      color: #FAE100;
      background: #000; }
    .directions__btn--kakao::before {
      background: url("/_user/basicFolder/img/sub/icon-marker-kakao.svg") no-repeat;
      background-size: cover; }
  .directions__btn--google {
    color: #fff;
    background: #004FA9;
    border: 1px solid #004FA9; }
    .directions__btn--google:hover {
      color: #004FA9;
      background: #fff; }
    .directions__btn--google::before {
      background: url("/_user/basicFolder/img/sub/icon-marker-google.svg") no-repeat;
      background-size: cover; }
.directions .section-tit {
  margin-bottom: 0;
  padding-bottom: 30px;
  border-bottom: 2px solid #000; }
.directions__item {
  padding: 58px 8px 20px;
  border-bottom: 1px solid #EBEDF1;
  position: relative; }
  @media (min-width: 768px) {
    .directions__item {
      padding: 50px 50px 50px 190px; } }
  .directions__item:before {
    content: '';
    width: 3rem;
    height: 3rem;
    display: inline-block;
    position: absolute;
    top: 20px;
    left: 4px; }
    @media (min-width: 768px) {
      .directions__item:before {
        width: 4.4rem;
        height: 4.4rem;
        top: 50%;
        left: 50px;
        transform: translateY(-50%); } }
  .directions__item:nth-child(1):before {
    background: url("/_user/basicFolder/img/sub/icon-directions-train.svg") no-repeat;
    background-size: cover; }
  .directions__item:nth-child(2):before {
    background: url("/_user/basicFolder/img/sub/icon-directions-car.svg") no-repeat;
    background-size: cover; }
  .directions__item:nth-child(3):before {
    background: url("/_user/basicFolder/img/sub/icon-directions-bus.svg") no-repeat;
    background-size: cover; }
.directions__tit {
  margin-bottom: 16px;
  color: #000;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal; }
  @media (min-width: 768px) {
    .directions__tit {
      margin-bottom: 24px;
      font-size: 2rem;
      font-weight: 700; } }
.directions__desc {
  margin-bottom: 12px;
  padding-left: 12px;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.3;
  /* 18.2px */
  letter-spacing: -0.28px;
  position: relative; }
  @media (min-width: 768px) {
    .directions__desc {
      margin-bottom: 20px;
      font-size: 1.8rem; } }
  .directions__desc:last-child {
    margin-bottom: 0; }
  .directions__desc::before {
    content: '';
    width: 0.6rem;
    height: 0.6rem;
    display: inline-block;
    background: url("/_user/basicFolder/img/sub/icon-directions-dot.svg") no-repeat;
    position: absolute;
    top: 6px;
    left: 0; }
    @media (min-width: 768px) {
      .directions__desc::before {
        top: 9px; } }

/* ## 오시는 길 e ## */
/* ## 대회요강 s ## */
.outline__box {
  margin-bottom: 50px; }
  @media (min-width: 768px) {
    .outline__box {
      margin-bottom: 100px; } }
.outline__wrap {
  overflow-x: auto;
  overflow-y: hidden; }
  .outline__wrap::-webkit-scrollbar {
    height: 6px; }
  .outline__wrap::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 10px; }
  .outline__wrap::-webkit-scrollbar-track {
    background-color: transparent; }
.outline__dot-box {
  margin-top: 16px; }
.outline__dot-list {
  padding-left: 12px;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.3;
  /* 18.2px */
  letter-spacing: -0.28px;
  position: relative; }
  @media (min-width: 768px) {
    .outline__dot-list {
      font-size: 1.8rem; } }
  .outline__dot-list:last-child {
    margin-bottom: 0; }
  .outline__dot-list::before {
    content: '';
    width: 0.6rem;
    height: 0.6rem;
    display: inline-block;
    background: url("/_user/basicFolder/img/sub/icon-directions-dot.svg") no-repeat;
    position: absolute;
    top: 6px;
    left: 0; }
    @media (min-width: 768px) {
      .outline__dot-list::before {
        top: 9px; } }
.outline__link {
  margin-left: 8px;
  padding: 8px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 6px;
  color: #000;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: normal;
  background: #EBEDF1; }
  @media (min-width: 768px) {
    .outline__link {
      margin-left: 24px;
      padding: 12px;
      font-size: 1.6rem;
      font-weight: 500; } }
  .outline__link:hover {
    color: #fff;
    background: #2B82B3; }
.outline__list {
  padding-bottom: 10px; }
.outline__item {
  margin-bottom: 16px;
  display: flex; }
  @media (min-width: 768px) {
    .outline__item {
      margin-bottom: 20px;
      padding-bottom: 20px;
      border-bottom: 2px dotted #EBEDF1; } }
  .outline__item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }
    .outline__item:last-child .outline__tit {
      background: #1E3A6D url("/_user/basicFolder/img/sub/outline-bg.svg") no-repeat; }
.outline__tit {
  width: 100%;
  max-width: 80px;
  margin-right: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  color: #FFF;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: normal;
  background: #C0332D url("/_user/basicFolder/img/sub/outline-bg.svg") no-repeat; }
  @media (min-width: 768px) {
    .outline__tit {
      max-width: 140px;
      margin-right: 10px;
      font-size: 2.2rem;
      font-weight: 700; } }
  @media (min-width: 1200px) {
    .outline__tit {
      max-width: 200px; } }
.outline__category {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 4px; }
  @media (min-width: 768px) {
    .outline__category {
      gap: 10px; } }
.outline__category-list {
  border-radius: 10px;
  display: inline-flex;
  border: 1px solid; }
  @media (min-width: 768px) {
    .outline__category-list {
      height: 90px; } }
  .outline__category-list--individual {
    color: #009543; }
    .outline__category-list--individual .outline__category-tit {
      border-color: #009543;
      background: rgba(0, 149, 67, 0.12); }
  .outline__category-list--team {
    color: #E47200; }
    .outline__category-list--team .outline__category-tit {
      border-color: #E47200;
      background: rgba(228, 114, 0, 0.12); }
  .outline__category-list--doubles {
    color: #0074AA; }
    .outline__category-list--doubles .outline__category-tit {
      border-color: #0074AA;
      background: rgba(0, 116, 170, 0.12); }
  .outline__category-list--mixed {
    color: #C52626; }
    .outline__category-list--mixed .outline__category-tit {
      border-color: #C52626;
      background: rgba(197, 38, 38, 0.12); }
  .outline__category-list:last-child {
    margin-bottom: 0; }
.outline__category-tit {
  min-width: 154px;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: normal;
  border-right: 1px solid; }
  @media (min-width: 768px) {
    .outline__category-tit {
      min-width: 183px;
      font-size: 1.8rem;
      font-weight: 700; } }
  @media (min-width: 1200px) {
    .outline__category-tit {
      min-width: 240px; } }
.outline__category-desc {
  padding: 10px;
  border-right: 1px solid;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .outline__category-desc:last-child {
    border-right: none; }
  @media (min-width: 1200px) {
    .outline__category-desc {
      min-width: 108px; } }

/* ## 대회요강 e ## */
/* ## 대회일정 s ## */
.schedule__box {
  margin-bottom: 50px; }
  @media (min-width: 768px) {
    .schedule__box {
      margin-bottom: 70px; } }
  .schedule__box:last-child {
    margin-bottom: 0; }

.sports-category {
  margin-bottom: 20px;
  display: flex;
  justify-content: flex-end;
  align-items: center; }
  @media (min-width: 768px) {
    .sports-category {
      margin-bottom: 30px; } }
  .sports-category--v2 {
    margin-bottom: 0;
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start; }
    .sports-category--v2 .sports-category__list {
      margin-bottom: 4px;
      justify-content: flex-start; }
      .sports-category--v2 .sports-category__list:last-child {
        margin-bottom: 0; }
    .sports-category--v2 .sports-category__item {
      width: 100%;
      max-width: 104px;
      padding: 8px; }
      @media (min-width: 768px) {
        .sports-category--v2 .sports-category__item {
          min-width: 136px; } }
  .sports-category__list {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px; }
    @media (min-width: 768px) {
      .sports-category__list {
        width: auto; } }
  .sports-category__item {
    flex: 1;
    padding: 8px 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: normal; }
    @media (min-width: 768px) {
      .sports-category__item {
        flex: auto; } }
    .sports-category__item--individual {
      color: #009543;
      background: rgba(0, 149, 67, 0.1); }
    .sports-category__item--team {
      color: #E47200;
      background: rgba(228, 114, 0, 0.1); }
    .sports-category__item--doubles {
      color: #0074AA;
      background: rgba(0, 116, 170, 0.1); }
    .sports-category__item--mixed {
      color: #C52626;
      background: rgba(197, 38, 38, 0.1); }

/* ## 대회일정 e ## */
/* ## 경기장안내 s ## */
.info .prepare {
  padding: 20px;
  background: #ddd;
  border-radius: 8px; }
  .info .prepare img {
    width: auto;
    height: auto;
    object-fit: contain; }
  .info .prepare .preparing {
    margin-bottom: 20px;
    padding-top: 26px;
    font-size: 35px; }
.info .common-slide {
  margin-bottom: 55px; }
  @media (min-width: 768px) {
    .info .common-slide {
      margin-bottom: 100px; } }
.info .section-tit {
  margin-bottom: 0;
  padding-bottom: 30px;
  border-bottom: 2px solid #000; }
.info__map-name {
  margin-bottom: 30px;
  padding: 24px 8px;
  color: #000;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  border-bottom: 1px solid #EBEDF1;
  display: flex;
  align-items: center; }
  @media (min-width: 768px) {
    .info__map-name {
      font-size: 2rem;
      font-weight: 700;
      padding: 40px; } }
  .info__map-name::before {
    content: '';
    width: 2rem;
    height: 2rem;
    margin-right: 8px;
    display: inline-block;
    background: url("/_user/basicFolder/img/sub/icon-marker-info.svg") no-repeat;
    background-size: cover; }
    @media (min-width: 768px) {
      .info__map-name::before {
        width: 4rem;
        height: 4rem;
        margin-right: 40px; } }
.info__section {
  margin-bottom: 55px; }
  @media (min-width: 768px) {
    .info__section {
      margin-bottom: 100px; } }
.info__map {
  width: 100%;
  height: 160px;
  margin-bottom: 40px;
  border-radius: 20px;
  background: #ddd; }
  @media (min-width: 768px) {
    .info__map {
      height: 500px; } }
.info__txt {
  color: #000;
  font-size: 1.4rem;
  padding: 12px;
  line-height: 1.6;
  /* 28.8px */ }
  @media (min-width: 768px) {
    .info__txt {
      font-size: 1.8rem;
      padding: 24px; } }
.info__btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px; }
.info__btn {
  width: 100%;
  max-width: 260px;
  height: 60px;
  padding: 16px 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  position: relative;
  font-size: 1.4rem;
  font-weight: 600; }
  @media (min-width: 768px) {
    .info__btn {
      font-size: 1.8rem;
      font-weight: 600; } }
  .info__btn::before {
    content: '';
    width: 1.6rem;
    height: 2.3rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 24px;
    transform: translateY(-50%); }
  .info__btn--kakao {
    background: #FAE100;
    border: 1px solid #FAE100; }
    .info__btn--kakao:hover {
      color: #FAE100;
      background: #000; }
    .info__btn--kakao::before {
      background: url("/_user/basicFolder/img/sub/icon-marker-kakao.svg") no-repeat;
      background-size: cover; }
  .info__btn--google {
    color: #fff;
    background: #004FA9;
    border: 1px solid #004FA9; }
    .info__btn--google:hover {
      color: #004FA9;
      background: #fff; }
    .info__btn--google::before {
      background: url("/_user/basicFolder/img/sub/icon-marker-google.svg") no-repeat;
      background-size: cover; }

/* ## 경기장안내 e ## */
/* ## 공식숙소 s ## */
.lodging .common-slide__slide {
  margin-bottom: 200px; }
@media (min-width: 1200px) {
  .lodging .common-slide {
    margin: 0 auto 400px; } }
.lodging__box {
  border-top: 2px solid #000; }
.lodging__item {
  padding: 40px 0;
  border-bottom: 1px solid #EBEDF1; }
  @media (min-width: 768px) {
    .lodging__item {
      display: flex;
      align-items: flex-start;
      padding: 60px 0; } }
.lodging__img {
  width: 100%;
  object-fit: cover;
  margin-bottom: 24px;
  border-radius: 15px; }
  @media (min-width: 768px) {
    .lodging__img {
      max-width: 350px;
      margin-right: 30px;
      margin-bottom: 0; } }
  @media (min-width: 1200px) {
    .lodging__img {
      max-width: 450px;
      margin-right: 50px; } }
.lodging__wrap {
  flex: 1; }
.lodging__tit {
  margin-bottom: 15px;
  color: #000;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal; }
  @media (min-width: 768px) {
    .lodging__tit {
      margin-bottom: 35px;
      font-size: 2.4rem;
      font-weight: 700; } }
.lodging__desc {
  margin-bottom: 24px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 10px;
  color: #000;
  font-size: 1.4rem;
  line-height: normal; }
  @media (min-width: 768px) {
    .lodging__desc {
      margin-bottom: 30px;
      font-size: 1.8rem; } }
  .lodging__desc li {
    display: flex;
    align-items: center;
    padding-left: 24px;
    position: relative; }
    @media (min-width: 1200px) {
      .lodging__desc li {
        padding-left: 34px; } }
.lodging__icon {
  width: 1.6rem;
  height: 1.6rem;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0; }
  @media (min-width: 768px) {
    .lodging__icon {
      width: 2rem;
      height: 2rem; } }
  .lodging__icon--marker {
    background: url("/_user/basicFolder/img/sub/icon-marker.svg") no-repeat;
    background-size: cover;
    top: 3px; }
  .lodging__icon--car {
    background: url("/_user/basicFolder/img/sub/icon-car.svg") no-repeat;
    background-size: cover; }
  .lodging__icon--time {
    background: url("/_user/basicFolder/img/sub/icon-time.svg") no-repeat;
    background-size: cover; }
  .lodging__icon--hotel {
    background: url("/_user/basicFolder/img/sub/icon-hotel.svg") no-repeat;
    background-size: cover; }
.lodging__map-btn {
  margin-left: 16px;
  padding: 4px 6px;
  border-radius: 4px;
  border: 1px solid #EBEDF1;
  background: #F7F9FA;
  color: #555;
  text-align: center;
  font-size: 1.2rem;
  line-height: normal; }
.lodging__btn-box {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 8px; }
  @media (min-width: 768px) {
    .lodging__btn-box {
      justify-content: flex-start;
      flex-direction: row;
      gap: 8px; } }
.lodging__btn {
  width: 100%;
  padding: 15px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 6px;
  color: #000;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: normal;
  position: relative; }
  @media (min-width: 768px) {
    .lodging__btn {
      max-width: 170px; } }
  @media (min-width: 1200px) {
    .lodging__btn {
      font-size: 1.6rem;
      font-weight: 500;
      padding: 16px 24px; } }
  .lodging__btn--reservation {
    color: #fff;
    background: #2B82B3;
    border: 1px solid #2B82B3; }
    .lodging__btn--reservation:hover {
      color: #2B82B3;
      background: #fff; }
  .lodging__btn--kakao, .lodging__btn--google {
    border: 1px solid #EBEDF1;
    background: #F7F9FA; }
    @media (min-width: 768px) {
      .lodging__btn--kakao, .lodging__btn--google {
        justify-content: flex-end;
        text-align: right; } }
    .lodging__btn--kakao:hover, .lodging__btn--google:hover {
      color: #fff;
      background: #2B82B3; }
    .lodging__btn--kakao::after, .lodging__btn--google::after {
      content: '';
      width: 2.7rem;
      height: 2.7rem;
      display: inline-block;
      position: absolute;
      top: 10px;
      left: 12px; }
  .lodging__btn--kakao::after {
    background: url("/_user/basicFolder/img/sub/icon-kakao-map.svg") no-repeat;
    background-size: cover; }
  .lodging__btn--google::after {
    background: url("/_user/basicFolder/img/sub/icon-google-map.svg") no-repeat;
    background-size: cover; }

/* ## 공식숙소 e ## */
/* ## 춘천소개 s ## */
.introduction__top {
  margin-bottom: 220px;
  position: relative;
  background-size: 100% 40%; }
  @media (min-width: 768px) {
    .introduction__top {
      margin-bottom: 250px; } }
  @media (min-width: 1200px) {
    .introduction__top {
      margin-bottom: 300px; } }
.introduction__top-txt-box {
  width: 100%;
  padding: 100px 16px 35px;
  background: #2B82B3;
  position: absolute;
  left: 0;
  bottom: -170px;
  z-index: -1; }
  @media (min-width: 768px) {
    .introduction__top-txt-box {
      padding: 150px 16px 55px; } }
.introduction__top-txt {
  position: relative;
  text-align: center;
  font-size: 1.4rem;
  color: #fff; }
  @media (min-width: 768px) {
    .introduction__top-txt {
      font-size: 1.8rem; } }
  .introduction__top-txt::before, .introduction__top-txt::after {
    content: '';
    width: 8rem;
    height: 6.4rem;
    display: inline-block;
    position: absolute;
    z-index: 0;
    opacity: 0.1; }
    @media (min-width: 768px) {
      .introduction__top-txt::before, .introduction__top-txt::after {
        width: 13rem;
        height: 10.4rem; } }
  .introduction__top-txt::before {
    background: url("/_user/basicFolder/img/sub/ico-quotes01.svg");
    background-size: cover;
    top: -50px;
    left: -30px; }
    @media (min-width: 768px) {
      .introduction__top-txt::before {
        top: -70px;
        left: -60px; } }
  .introduction__top-txt::after {
    background: url("/_user/basicFolder/img/sub/ico-quotes02.svg");
    background-size: cover;
    right: -30px;
    bottom: -50px; }
    @media (min-width: 768px) {
      .introduction__top-txt::after {
        right: -70px;
        bottom: -55px; } }
  .introduction__top-txt span {
    font-size: 1.4rem;
    font-weight: 700;
    display: block;
    margin-bottom: 10px; }
    @media (min-width: 768px) {
      .introduction__top-txt span {
        font-size: 1.8rem;
        margin-bottom: 0; } }
.introduction__slide-box {
  margin-bottom: 100px; }
  @media (min-width: 1200px) {
    .introduction__slide-box {
      margin-bottom: 150px; } }
.introduction__intro {
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  border-radius: 15px;
  background: #F7F9FA; }
  @media (min-width: 1200px) {
    .introduction__intro {
      min-width: 528px;
      margin-right: 40px; } }
@media (min-width: 1200px) {
  .introduction__slide-wrap {
    display: flex;
    align-items: flex-start; } }
.introduction__tit {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  margin-bottom: 8px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  /* 26px */ }
  .introduction__tit.blue {
    color: #00A4C0; }
  .introduction__tit.green {
    color: #00A4C0; }
  @media (min-width: 768px) {
    .introduction__tit {
      font-size: 3rem;
      margin-bottom: 20px; } }
.introduction__desc {
  color: #000;
  font-size: 1.3rem;
  line-height: 1.4;
  /* 18.2px */
  letter-spacing: -0.26px; }
  @media (min-width: 768px) {
    .introduction__desc {
      font-size: 1.8rem; } }
.introduction__btn-box {
  width: 100%;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 15px;
  border: 1px solid #FFF;
  background: #FFF;
  box-shadow: 0 0 10px 0 rgba(0, 68, 74, 0.11);
  color: #04666D;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.4;
  /* 21px */ }
  @media (min-width: 768px) {
    .introduction__btn-box {
      padding: 16px 16px 16px 24px;
      flex-direction: row;
      font-size: 2rem;
      border-radius: 100px; } }
.introduction__btn {
  width: 100%;
  padding: 8px 8px 8px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 100px;
  background: #12A6B1;
  color: #FFF;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.4;
  /* 21px */
  flex: 1; }
  .introduction__btn::after {
    content: '';
    width: 3rem;
    height: 3rem;
    display: inline-block;
    border-radius: 100%;
    background: #04666D url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M12.985 7.67676L12.7018 7.96094L12.5251 8.13867L12.5251 8.1377L9.30927 11.3535L8.38641 10.4307L8.56317 10.2539L10.6657 8.15234L1.94208 8.15234L1.94208 6.84766L10.6657 6.84766L8.56317 4.74609L8.38641 4.56934L9.30927 3.64648L9.48602 3.82324L12.5251 6.86133L12.7018 7.03906L12.985 7.32324L13.1618 7.5L12.985 7.67676Z' fill='%23ffffff' stroke='%23ffffff' stroke-width='0.5'/%3E%3C/svg%3E") center center no-repeat;
    background-size: 15px 15px; }
    @media (min-width: 768px) {
      .introduction__btn::after {
        width: 4rem;
        height: 4rem;
        background-size: 20px 20px; } }
  .introduction__btn:hover::after {
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 15 15' fill='none'%3E%3Cpath d='M12.985 7.67676L12.7018 7.96094L12.5251 8.13867L12.5251 8.1377L9.30927 11.3535L8.38641 10.4307L8.56317 10.2539L10.6657 8.15234L1.94208 8.15234L1.94208 6.84766L10.6657 6.84766L8.56317 4.74609L8.38641 4.56934L9.30927 3.64648L9.48602 3.82324L12.5251 6.86133L12.7018 7.03906L12.985 7.32324L13.1618 7.5L12.985 7.67676Z' fill='%2304666D' stroke='%2304666D' stroke-width='0.5'/%3E%3C/svg%3E") center center no-repeat; }
    @media (min-width: 768px) {
      .introduction__btn:hover::after {
        background-size: 20px 20px; } }
  @media (min-width: 768px) {
    .introduction__btn {
      margin-left: 35px;
      font-size: 2.2rem; } }
.introduction__basic {
  margin-bottom: 30px;
  padding: 30px 8px;
  border-top: 2px solid #000; }
  @media (min-width: 768px) {
    .introduction__basic {
      margin-bottom: 85px;
      padding: 30px 24px; } }
  .introduction__basic:last-child {
    margin-bottom: 0; }
.introduction__link-box {
  gap: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; }
  @media (min-width: 768px) {
    .introduction__link-box {
      flex-direction: row; } }
  .introduction__link-box li {
    width: 100%; }
.introduction__link {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.6;
  /* 22.4px */
  letter-spacing: -0.21px;
  border-radius: 10px;
  padding: 20px 30px;
  border: 1px solid #EBEDF1;
  background: #F7F9FA; }
  @media (min-width: 768px) {
    .introduction__link {
      font-size: 1.8rem; } }
  .introduction__link::after {
    content: '';
    width: 1.6rem;
    height: 1.6rem;
    margin-left: 4px;
    display: inline-block;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M7.33325 3.33398H3.33325V12.6673H12.6666V8.66732' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.6665 7.33268L13.3332 2.66602' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 2H14V6' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center; }
  .introduction__link:hover {
    color: #fff;
    background: #2B82B3; }
    .introduction__link:hover::after {
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M7.33325 3.33398H3.33325V12.6673H12.6666V8.66732' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.6665 7.33268L13.3332 2.66602' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 2H14V6' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center; }
.introduction__slide {
  overflow: visible !important;
  clip-path: inset(-100vh -100vw -100vh 0);
  -webkit-clip-path: inset(-100vh -100vw -100vh 0); }
  .introduction__slide .swiper-slide {
    max-width: 230px !important;
    text-align: center;
    color: #000;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: normal; }
    .introduction__slide .swiper-slide a {
      display: inline-block; }
      .introduction__slide .swiper-slide a img {
        border-radius: 12px;
        margin-bottom: 8px;
        width: 100%;
        transition: opacity 0.3s ease; }
      .introduction__slide .swiper-slide a span {
        position: relative;
        display: inline-block;
        padding-bottom: 2px; }
        .introduction__slide .swiper-slide a span::after {
          content: '';
          position: absolute;
          width: 0;
          height: 2px;
          bottom: 0;
          left: 0;
          background-color: #2B82B3;
          transition: width 0.3s ease; }
      .introduction__slide .swiper-slide a:hover img {
        opacity: 0.85; }
      .introduction__slide .swiper-slide a:hover span {
        color: #2B82B3; }
        .introduction__slide .swiper-slide a:hover span::after {
          width: 100%; }
    @media (min-width: 768px) {
      .introduction__slide .swiper-slide {
        max-width: 500px !important;
        text-align: right;
        font-size: 1.8rem; } }
  .introduction__slide .intro-pagination {
    margin-top: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative; }
    @media (min-width: 1200px) {
      .introduction__slide .intro-pagination {
        justify-content: flex-start; } }
    .introduction__slide .intro-pagination .swiper-pagination-bullet {
      width: 1rem;
      height: 1rem;
      /* 이미지처럼 동그라미 크기 지정 */
      background: #EBEDF1;
      /* 비활성 회색 */
      border-radius: 100%;
      /* 동그라미 형태로 */
      opacity: 1;
      /* 기본 반투명 제거 */
      margin: 0 4px;
      /* 불릿 사이 간격 지정 */
      transition: all 0.4s ease;
      /* 활성화될 때 부드러운 애니메이션 */
      display: inline-block;
      cursor: pointer; }
    .introduction__slide .intro-pagination .swiper-pagination-bullet-active {
      width: 50px;
      /* 이미지처럼 길쭉한 너비 지정 */
      background: #2B82B3;
      /* 활성 파란색 */
      border-radius: 100px;
      /* 양 끝을 둥글게 */
      opacity: 1;
      /* 기본 반투명 제거 */ }

/* ## 춘천소개 e ## */
/* ## 사이트맵 s ## */
.site-map__list {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px 0; }
  @media (min-width: 768px) {
    .site-map__list {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1200px) {
    .site-map__list {
      grid-template-columns: repeat(3, 1fr);
      gap: 90px 0; } }
  .site-map__list > li {
    padding: 0 10px; }
    @media (min-width: 768px) {
      .site-map__list > li {
        padding: 0 30px; } }
.site-map__item {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 12px; }
  @media (min-width: 768px) {
    .site-map__item {
      gap: 24px; } }
.site-map__tit {
  margin-bottom: 15px;
  padding-bottom: 6px;
  color: #000;
  border-bottom: 3px solid;
  /* 선 두께 설정 */
  border-image: linear-gradient(to right, #E52E2C 50%, #1E3A6D 50%) 1;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 24px;
  /* 100% */
  letter-spacing: -0.672px; }
  @media (min-width: 768px) {
    .site-map__tit {
      margin-bottom: 30px;
      padding-bottom: 12px;
      font-size: 2.4rem;
      font-weight: 600; } }
.site-map__link {
  display: flex;
  align-items: center;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 24px;
  /* 120% */
  letter-spacing: -0.448px; }
  @media (min-width: 768px) {
    .site-map__link {
      font-size: 2rem;
      font-weight: 500; } }
  .site-map__link:hover {
    color: #0F3F98; }
  .site-map__link .icon__link {
    margin-left: 4px;
    background: url("/_user/basicFolder/img/icon/icon-link-blue.svg") no-repeat; }

/* ## 사이트맵 e ## */

/*# sourceMappingURL=sub.css.map */
