.topMain{
  display: none !important;
}

.topMain__catch{
  display: none !important;
}

@media screen and (max-width: 600px) {
  .topMain,
  .topMain img.wp-block-cover__image-background.wp-image-27.size-large {
    height: 100vh !important;
    min-height: 100vh !important;
    object-position: 57% 0% !important;
  }

  /* .topMain {
    justify-content: flex-start !important;
  } */

  .has-global-padding:has(.header__catch-sp) {
    padding-left: 0 !important;
  }

  .topAbout{
    padding-top: var(--wp--preset--spacing--s-200) !important;
  }

  .topAbout__top {
    gap: var(--wp--preset--spacing--s-120);
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .topAbout__wrap {
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .topAbout__bottom {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .topAbout__bottom-wrap {
    flex-direction: column-reverse;
    gap: var(--wp--preset--spacing--s-120);
  }

  .topAbout__catch{
    font-size: 24px !important;
  }

  .topAbout__img-1 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .topAbout__img-1 img {
    width: 250px !important;
  }

  .topAbout__img-2{
    margin-block-start: 80px;
  }

  .topWorks{
    padding-top: var(--wp--preset--spacing--s-120) !important;
  }

  .topContact{
    padding-top: var(--wp--preset--spacing--s-120) !important;
    padding-bottom: var(--wp--preset--spacing--s-120) !important;
  }

  .topContact__con-sp{
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

@media screen and (max-width: 600px) {
  .topMain__catch-pc,.topContact__con-pc {
    display: none !important;
  }
}

@media screen and (min-width: 601px) {
  .topMain__catch-sp,.topContact__con-sp {
    display: none !important;
  }

  .topAbout__wrap{
    display: flex;
    justify-content: flex-end;
  }

  .topAbout__catch{
    width: fit-content;
  }
}

/* スライダー画像 */
.p-heroSwiper__con{
  padding-right: 75px;
}

.p-heroSwiper {
  width: 100%;
  height: 100vh;
}

/* @supports (height: 100svh) {
  .p-heroSwiper {
    height: 100svh;
  }
} */

@media screen and (max-width:600px){

  .p-heroSwiper__con{
    padding-right: 0;
  }

  .p-heroSwiper {
    height: 83vh;
  }
}

.p-heroSwiper .swiper-slide,
.p-heroSwiper img {
  width: 100%;
  /* width: 95vw; */
  height: 100%;
}

.p-heroSwiper img {
  object-fit: cover;
  display: block;
}

.swiper-pagination,
.swiper-button-prev,
.swiper-button-next {
  display: none !important;
}

/* スクロールインジケーター全体 */
.scroll-indicator {
  position: absolute;
  right: 15px;
  bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  z-index: 5;
}

@media screen and (max-width: 600px) {
  .scroll-indicator {
    right: 50%;
        bottom: -30px;
  }

  .scroll-text{
    display: none;
  }
}

/* テキスト */
.scroll-text {
  font-size: 11px;
  letter-spacing: 0.2em;
  /* color: rgba(255, 255, 255, 0.8); */
  color: rgba(0, 0, 0, 0.8);
  /* writing-mode: vertical-rl; */
}

/* 縦線（ベース） */
.scroll-line {
  position: relative;
  width: 1px;
  height: 80px;
  /* background: rgba(255, 255, 255, 0.3); */
  background: rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

/* 流れる線 */
.scroll-line::before {
  content: '';
  position: absolute;
  top: -40px;
  left: 0;
  width: 1px;
  height: 40px;
  /* background: rgba(255, 255, 255, 0.9); */
  background: rgba(0, 0, 0, 0.9);
  animation: scrollLine 2.2s ease-in-out infinite;
}

/* アニメーション */
@keyframes scrollLine {
  0% {
    top: -40px;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    top: 80px;
    opacity: 0;
  }
}