@keyframes visualScale {
  from {
    transform: scale(1); }
  to {
    transform: scale(1.3); } }
@keyframes upDown {
  from {
    transform: translateY(5px); }
  to {
    transform: translateY(-3px); } }
.subVisual {
  position: relative;
  height: 100vh;
  overflow: hidden; }
  .subVisual > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    animation: visualScale 30s linear infinite; }
  .subVisual .subVisualTxt {
    color: #fff;
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 30px; }
    .subVisual .subVisualTxt p:first-child {
      font-size: 3.13rem;
      font-weight: 600;
      margin-bottom: 10px; }
    .subVisual .subVisualTxt p:nth-of-type(2) {
      font-size: 1.13rem; }
  .subVisual .visualBreadcrumbTop {
    padding: 0px 160px;
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .subVisual .visualBreadcrumbTop ul {
      display: flex;
      padding: 28px 0; }
      .subVisual .visualBreadcrumbTop ul li {
        position: relative;
        width: auto; }
        .subVisual .visualBreadcrumbTop ul li a {
          color: #fff;
          font-size: 1.13rem; }
          .subVisual .visualBreadcrumbTop ul li a:hover {
            color: var(--main-color) !important; }
        .subVisual .visualBreadcrumbTop ul li::before {
          content: "";
          display: block;
          width: 1px;
          height: 24px;
          background-color: rgba(255, 255, 255, 0.5);
          position: absolute;
          right: -31px;
          top: 50%;
          transform: translateY(-50%); }
      .subVisual .visualBreadcrumbTop ul li:first-child a {
        color: var(--main-color); }
      .subVisual .visualBreadcrumbTop ul li:last-child::before {
        display: none; }
    .subVisual .visualBreadcrumbTop img {
      width: 15px;
      animation: upDown 1s infinite alternate; }

.visualBreadcrumb {
  padding: 0 160px;
  background: #fff;
  z-index: 200;
  position: sticky;
  top: 0;
  width: 100%;
  border-bottom: 1px solid #C9C9C9;
  backdrop-filter: blur(10px);
  display: flex;
  justify-content: space-between;
  align-items: center; }
  .visualBreadcrumb > ul {
    display: flex;
    gap: 63px;
    align-items: center;
    z-index: 20;
    padding: 28px 0; }
    .visualBreadcrumb > ul > li {
      font-size: 1.13rem;
      position: relative; }
      .visualBreadcrumb > ul > li::before {
        content: "";
        display: block;
        width: 1px;
        height: 24px;
        background-color: rgba(48, 45, 44, 0.5);
        position: absolute;
        right: -31px;
        top: 50%;
        transform: translateY(-50%); }
      .visualBreadcrumb > ul > li p {
        cursor: pointer; }
        .visualBreadcrumb > ul > li p::after {
          content: "";
          display: inline-block;
          width: 15px;
          height: 15px;
          background: url(../../../common/images/icon-arrow-down-b.svg);
          margin-left: 15px; }
      .visualBreadcrumb > ul > li ul {
        position: absolute;
        left: -32px;
        top: 51px;
        width: max-content;
        border-bottom: 3px solid var(--main-color);
        background: rgba(255, 255, 255, 0.9);
        display: none; }
        .visualBreadcrumb > ul > li ul li a {
          font-size: 1.13rem;
          padding: 15px 30px; }
          .visualBreadcrumb > ul > li ul li a:hover {
            color: var(--main-color); }
    .visualBreadcrumb > ul li:last-child p::after {
      background: url(../../../common/images/icon-arrow-down-c.svg); }
    .visualBreadcrumb > ul li:last-child {
      color: var(--main-color); }
      .visualBreadcrumb > ul li:last-child::before {
        display: none; }
  .visualBreadcrumb a img {
    width: 25px; }

.visualBreadcrumb.fixed {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  height: 80px; }

#content {
  padding: 85px 160px; }

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  width: 100%; }

.swiper-scrollbar-drag {
  background: #eee;
  opacity: .4; }

@media screen and (max-width: 1280px) {
  #content {
    padding: 100px 30px; }

  #content .txtTop h3 {
    font-size: 1.88rem; }

  .subVisual .subVisualTxt p:first-child {
    font-size: 1.38rem; }

  .subVisual .subVisualTxt p:nth-of-type(2) {
    font-size: 1rem; }

  .subVisual .visualBreadcrumb {
    padding: 20px 30px; }

  .subVisual .visualBreadcrumbTop, .visualBreadcrumb {
    padding: 0 30px; }

  .subVisual .visualBreadcrumbTop ul {
    padding: 26px 0; }

  .visualBreadcrumb > ul {
    padding: 24px 0; } }
@media screen and (max-width: 1024px) {
  #content {
    padding: 6rem 2rem; }

  .subVisual .visualBreadcrumbTop ul li a,
  .visualBreadcrumb > ul > li,
  .visualBreadcrumb > ul > li ul li a {
    font-size: 1rem; } }
@media screen and (max-width: 768px) {
  .visualBreadcrumb > ul {
    gap: 20px;
    width: 100%; }

  .subVisual .visualBreadcrumbTop ul li::before,
  .visualBreadcrumb > ul > li::before {
    height: 16px;
    right: -10px; }

  .visualBreadcrumb > ul > li p::after {
    margin-left: 7px;
    transform: translateY(2px); } }
@media screen and (max-width: 640px) {
  .subVisual .visualBreadcrumb ul li {
    font-size: 1rem; }

  .subVisual .visualBreadcrumbTop ul li::before {
    display: none; }

  .visualBreadcrumb > ul {
    gap: 20px;
    padding: 20px 0; }

  .visualBreadcrumb > ul > li ul {
    width: 150px; }

  .subVisual .visualBreadcrumbTop ul {
    padding: 20px 0; }

  .visualBreadcrumb > ul > li:first-child {
    display: none; }

  .visualBreadcrumb > ul > li::before {
    display: none; }

  .visualBreadcrumb > ul > li ul {
    left: 0;
    top: 44px; }

  .visualBreadcrumb > ul > li ul li a {
    padding: 15px 10px; }

  .visualBreadcrumb.fixed {
    height: auto; }

  .swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    width: 90%;
    margin-left: 0; } }
