@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .sp {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .third-component-container {
    margin-top: calc(80 / 1366 * 100vw - 80 / 1366 * var(--scrollbar-size-px));
    margin-bottom: calc(15 / 1366 * 100vw - 15 / 1366 * var(--scrollbar-size-px));
    margin-left: calc(20 / 1366 * 100vw - 20 / 1366 * var(--scrollbar-size-px));
    margin-right: calc(20 / 1366 * 100vw - 20 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container {
    margin-top: 80px;
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container {
    margin-bottom: 15px;
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container {
    margin-left: 20px;
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container {
    margin-right: 20px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container {
    margin-top: calc(60 / 375 * 100vw - 60 / 375 * var(--scrollbar-size-px));
    padding-left: calc(20 / 375 * 100vw - 20 / 375 * var(--scrollbar-size-px));
    padding-right: calc(20 / 375 * 100vw - 20 / 375 * var(--scrollbar-size-px));
    padding-bottom: calc(10 / 375 * 100vw - 10 / 375 * var(--scrollbar-size-px));
    overflow: hidden;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container {
    margin-top: 218.56px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container {
    padding-left: 72.85333px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container {
    padding-right: 72.85333px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container {
    padding-bottom: 36.42667px;
  }
}

.third-component-container .third-component-title-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.third-component-container .third-component-title {
  font-weight: bold;
  font-family: "IBMPlexSemiMono", sans-serif;
  color: #000 !important;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-component-title {
    font-size: calc(64 / 1366 * 100vw - 64 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-component-title {
    font-size: 64px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-component-title {
    font-size: calc(30 / 375 * 100vw - 30 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-component-title {
    font-size: 109.28px;
  }
}

.third-component-container .third-component-title-link {
  font-weight: bold;
  text-decoration: underline;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-component-title-link {
    opacity: 1;
    font-size: calc(15 / 1366 * 100vw - 15 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-component-title-link {
    font-size: 15px;
  }
}

@media screen and (min-width: 768px) {
  .third-component-container .third-component-title-link:hover {
    opacity: 0.7;
    transition: 0.3s;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-component-title-link-sp {
    display: flex;
    justify-content: flex-end;
    font-size: calc(15 / 375 * 100vw - 15 / 375 * var(--scrollbar-size-px));
    padding-right: calc(20 / 375 * 100vw - 20 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-component-title-link-sp {
    font-size: 54.64px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-component-title-link-sp {
    padding-right: 72.85333px;
  }
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container {
    width: 100%;
    margin-top: calc(20 / 1366 * 100vw - 20 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container {
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container {
    margin-top: calc(20 / 375 * 100vw - 20 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container {
    margin-top: 72.85333px;
  }
}

.third-component-container .third-container .swiper-container {
  position: relative;
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper-container {
    width: 100%;
    padding-bottom: calc(30 / 375 * 100vw - 30 / 375 * var(--scrollbar-size-px));
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .swiper-container {
    padding-bottom: 109.28px;
  }
}

.third-component-container .third-container .swiper {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: auto;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper {
    overflow: visible;
  }
}

.third-component-container .third-container .swiper .swiper-wrapper {
  height: auto;
}

.third-component-container .third-container .swiper.swiper-initialized .swiper-slide {
  width: auto;
}

.third-component-container .third-container .swiper-slide {
  display: flex;
  height: auto;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .swiper-slide {
    width: 25%;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper-slide {
    flex-direction: column;
    align-items: center;
  }
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .third-text-area {
    margin-right: calc(60 / 1366 * 100vw - 60 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-text-area {
    margin-right: 60px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .third-text-area {
    margin-top: calc(120 / 375 * 100vw - 120 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .third-text-area {
    margin-top: 437.12px;
  }
}

.third-component-container .third-container .third-text {
  font-weight: 600;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .third-text {
    font-size: calc(17 / 1366 * 100vw - 17 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-text {
    font-size: 17px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .third-text {
    font-size: calc(14 / 375 * 100vw - 14 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .third-text {
    font-size: 50.99733px;
  }
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .third-text:nth-child(2n) {
    margin-top: calc(30 / 1366 * 100vw - 30 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-text:nth-child(2n) {
    margin-top: 30px;
  }
}

.third-component-container .third-container .third-img-box {
  position: relative;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .third-img-box {
    padding-left: calc(5 / 1366 * 100vw - 5 / 1366 * var(--scrollbar-size-px));
    padding-right: calc(5 / 1366 * 100vw - 5 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-img-box {
    padding-left: 5px;
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-img-box {
    padding-right: 5px;
  }
}

.third-component-container .third-container .third-img-box img {
  width: 100%;
}

.third-component-container .third-container .third-img-box a {
  display: block;
}

@media screen and (min-width: 768px) {
  .third-component-container .third-container .third-title {
    margin-top: calc(10 / 1366 * 100vw - 10 / 1366 * var(--scrollbar-size-px));
    min-height: calc(43 / 1366 * 100vw - 43 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-title {
    margin-top: 10px;
  }
}

@media screen and (min-width: 768px) and (min-width: 1366px) {
  .third-component-container .third-container .third-title {
    min-height: 43px;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .third-title {
    min-height: calc(63 / 375 * 100vw - 63 / 375 * var(--scrollbar-size-px));
    margin-top: calc(10 / 375 * 100vw - 10 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .third-title {
    min-height: 229.488px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .third-title {
    margin-top: 36.42667px;
  }
}

.third-component-container .third-container .third-title span {
  color: #c41230;
}

.third-component-container .third-container .swiper-scrollbar {
  margin-top: 20px;
  position: absolute;
  width: 100%;
  bottom: 0;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper-scrollbar {
    overflow: visible;
  }
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper-scrollbar {
    bottom: calc(0 / 375 * 100vw - 0 / 375 * var(--scrollbar-size-px));
    left: calc(0 / 375 * 100vw - 0 / 375 * var(--scrollbar-size-px));
    background-color: #D9D9D9;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .swiper-scrollbar {
    bottom: 0px;
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .swiper-scrollbar {
    left: 0px;
  }
}

.third-component-container .third-container .swiper-scrollbar .swiper-scrollbar-drag {
  background-color: #000;
  transition: background-color 0.3s;
  border-radius: 2px;
}

@media screen and (max-width: 767px) {
  .third-component-container .third-container .swiper-scrollbar .swiper-scrollbar-drag {
    height: calc(3 / 375 * 100vw - 3 / 375 * var(--scrollbar-size-px));
  }
}

@media screen and (max-width: 767px) and (min-width: 1366px) {
  .third-component-container .third-container .swiper-scrollbar .swiper-scrollbar-drag {
    height: 10.928px;
  }
}
