@media all and (max-width: 1024px) {
  .main-medicine {
    height: auto;
    padding: 230px 0;
  }
  .main-partner__desc {
    grid-template-columns: repeat(2, 1fr);
    gap: 120px 0;
  }
  .main-partner__desc li {
    position: relative;
  }
  .main-partner__desc li:nth-child(3)::after,
  .main-partner__desc li:nth-child(4)::after {
    content: '';
    height: 2px;
    width: 80%;
    background-color: #eee;
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .main-health {
    min-height: 150vw;
    padding-top: 40%;
  }
  .main-health .hover-layer {
    flex-direction: column;
  }
  .main-health .hover-layer > div {
    width: 100%;
    height: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
  .main-health .hover-layer__contents--right .cards {
    grid-template-columns: repeat(3, 1fr);
  }
  .main-health .hover-layer__contents--right .cards::before {
    display: none;
  }
}

@media all and (max-width: 768px) {
  .main-banner {
    padding-bottom: 130.4vw;
    height: 216.533vw;
  }
  .main-banner b {
    font-size: 9.6vw;
  }
  .main-banner__scroll p {
    font-size: 3.2vw;
  }
  .main-banner__scroll div {
    height: 32vw;
  }
  .main-medicine {
    height: auto;
    padding: 16vw 0;
  }
  .main-medicine figure {
    width: 42.047vw;
  }
  .main-tit__area strong {
    font-size: 5.333vw;
  }
  .main-medicine .inner {
    gap: 10.667vw;
    margin-bottom: 16.8vw;
  }
  .main-tit__area p {
    margin-top: 5.333vw;
    font-size: 4.267vw;
  }
  .main-medicine .carousel-item {
    width: 40vw;
    height: 16.8vw;
    padding: 0 2.667vw;
  }
  .main-partner__banner {
    height: 61.333vw;
    margin-top: 27.467vw;
  }
  .main-partner__desc li figure {
    height: 13.333vw;
    margin-bottom: 3.2vw;
  }
  .main-partner__desc li figure img {
    width: auto;
    height: 100%;
  }
  .main-partner__desc li p {
    font-size: 3.733vw;
    margin-top: 1.333vw;
  }
  .main-partner__desc li b {
    font-size: 4.267vw;
  }
  .main-partner__desc li:nth-child(3)::after,
  .main-partner__desc li:nth-child(4)::after {
    width: 34.4vw;
    top: -8vw;
  }
  .main-partner__desc {
    gap: 16vw 0;
    margin-top: 16vw;
  }
  .main-partner {
    padding: 16vw 0;
  }
  .main-partner__phrase li b {
    padding: 6.267vw 0;
    font-size: 6.4vw;
  }
  .main-partner__phrase li b::before,
  .main-partner__phrase li b::after {
    width: 4.267vw;
    height: 3.6vw;
  }
  .main-partner__phrase {
    margin-top: 29.333vw;
  }
  .main-partner__phrase li {
    gap: 8.533vw;
    flex-direction: column;
    align-items: flex-start;
  }
  .main-partner__phrase li > figure {
    order: 1;
  }
  .main-partner__phrase li > div {
    order: 2;
    padding: 0 3.90625%;
  }
  .main-partner__phrase li:last-child {
    gap: 8.533vw;
    margin-top: 16vw;
  }
  .main-partner__phrase::after {
    bottom: 18.067vw;
    height: 60.315vw;
    width: 119.156vw;
    right: -25.956vw;
  }
  .main-partner__phrase li p {
    font-size: 3.2vw;
    margin-top: 4.267vw;
  }
  .main-partner__phrase::before {
    width: 90.462vw;
    height: 119.156vw;
    left: -24vw;
    top: -62.667vw;
  }
  .main-provider {
    padding: 16vw 0;
  }
  .main-provider__top {
    gap: 8.533vw;
  }
  .main-provider__top p {
    font-size: 6.4vw;
  }
  .main-provider__top picture {
    width: 52vw;
  }
  .main-provider ul {
    margin-top: 15.733vw;
    grid-gap: 2.667vw;
  }
  .main-provider ul li {
    height: 34.933vw;
    gap: 0;
    justify-content: space-between;
    padding: 0 7.467vw;
  }
  .main-provider ul li p {
    font-size: 4.267vw;
    text-align: left;
  }
  .main-provider ul li figure {
    width: 29.76vw;
  }
}

@media all and (max-width: 640px) {
  .main-health > h3 {
    font-size: 6vw;
  }
  .main-health .hover-layer > div h3 {
    font-size: 6vw;
  }
  .main-health .hover-layer__contents--left .list {
    width: 60vw;
  }
  .main-health .hover-layer__contents--left .list > li {
    font-size: 4vw;
    height: 10vw;
  }
  .main-health .hover-layer__contents--left .ending h4 {
    font-size: 6vw;
  }
  .main-health .hover-layer__contents--right .cards {
    gap: 1vw;
  }
  .main-health .hover-layer__contents--right .cards > li {
    width: 30vw;
    height: 30vw;
    border-radius: 2vw;
  }
  .main-health .hover-layer__contents--right .cards > li h5 {
    font-size: 3.25vw;
    margin-bottom: 1.25vw;
  }
  .main-health .hover-layer__contents--right .cards > li h5::before {
    display: none;
  }
  .main-health .hover-layer__contents--right .cards > li p {
    font-size: 3vw;
  }
}
