.template-rakusta-lp__root .rlp-section.rlp-section--case-study {
  position: static;
  background: #F8F8F8;
  @media (min-width: 0px) {
    padding: calc(56 * var(--as1Px)) 0;
  }
  @media (min-width: 768px) {
    padding: calc(96 * var(--as1Px)) 0;
  }
}

.template-rakusta-lp__root .rlp-section.rlp-section--case-study .rlp-section__background {
  display: none;
}

.section-rakusta-lp-case-study__root {
  margin: 0 auto;
  box-sizing: border-box;
  @media (min-width: 0px) {
    width: calc(320 * var(--as1Px));
    padding: 0 calc(16 * var(--as1Px));
  }
  @media (min-width: 768px) {
    width: calc(1120 * var(--as1Px));
    padding: 0;
  }
}

.rlp-case-study-filter {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  @media (min-width: 0px) {
    margin-top: calc(24 * var(--as1Px));
    width: 100%;
  }
  @media (min-width: 768px) {
    margin-top: calc(48 * var(--as1Px));
    width: max-content;
    margin-left: auto;
    margin-right: auto;
  }
}

.rlp-case-study-filter__label {
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0;
  color: #344054;
  @media (min-width: 0px) {
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
  @media (min-width: 768px) {
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
}

.rlp-case-study-filter__tabs {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  @media (min-width: 0px) {
    margin-top: calc(12 * var(--as1Px));
    gap: calc(8 * var(--as1Px));
    overflow: visible;
    white-space: normal;
    flex-wrap: wrap;
    padding-bottom: 0;
  }
  @media (min-width: 768px) {
    margin-top: calc(16 * var(--as1Px));
    gap: calc(10 * var(--as1Px));
    width: max-content;
    overflow: visible;
    white-space: normal;
    flex-wrap: nowrap;
    padding-bottom: 0;
  }
}

.rlp-case-study-filter__tabs::-webkit-scrollbar {
  display: none;
}

.rlp-case-study-filter__tab {
  border: 1px solid #D0D5DD;
  border-radius: calc(12 * var(--as1Px));
  background: #FFFFFF;
  color: #344054;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0;
  cursor: pointer;
  flex-shrink: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  @media (min-width: 0px) {
    min-height: calc(36 * var(--as1Px));
    padding: 0 calc(12 * var(--as1Px));
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
  @media (min-width: 768px) {
    min-height: calc(56 * var(--as1Px));
    padding: 0 calc(28 * var(--as1Px));
    font-size: min(calc(16 * var(--as1Px)), 16px);
  }

  &.is-active {
    border-color: #FACC15;
    background: #FACC15;
    color: #111827;
  }
}

.rlp-case-study-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  @media (min-width: 0px) {
    margin-top: calc(20 * var(--as1Px));
    grid-template-columns: 1fr;
    gap: calc(16 * var(--as1Px));
  }
  @media (min-width: 768px) {
    margin-top: calc(40 * var(--as1Px));
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: calc(20 * var(--as1Px));
  }
}

.rlp-case-study-grid__item {
  margin: 0;
}

.rlp-case-study-card__link {
  display: block;
  height: 100%;
  text-decoration: none;
  border: 1px solid #D0D5DD;
  border-radius: calc(18 * var(--as1Px));
  overflow: hidden;
  background: #FFFFFF;
}

.rlp-case-study-card__media {
  position: relative;
  overflow: hidden;
  @media (min-width: 0px) {
    height: calc(172 * var(--as1Px));
  }
  @media (min-width: 768px) {
    height: calc(180 * var(--as1Px));
  }
}

.rlp-case-study-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rlp-case-study-card__hashtags {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  top: calc(12 * var(--as1Px));
  left: calc(12 * var(--as1Px));
  display: flex;
  flex-wrap: wrap;
  gap: calc(6 * var(--as1Px));
}

.rlp-case-study-card__hashtag-item {
  margin: 0;
}

.rlp-case-study-card__hashtag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: calc(4 * var(--as1Px));
  background: #FFFFFF;
  color: #111827;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0;
  @media (min-width: 0px) {
    min-height: calc(24 * var(--as1Px));
    padding: 0 calc(8 * var(--as1Px));
    font-size: min(calc(12 * var(--as1Px)), 12px);
  }
  @media (min-width: 768px) {
    min-height: calc(28 * var(--as1Px));
    padding: 0 calc(10 * var(--as1Px));
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
}

.rlp-case-study-card__body {
  @media (min-width: 0px) {
    padding: calc(14 * var(--as1Px));
  }
  @media (min-width: 768px) {
    padding: calc(16 * var(--as1Px));
  }
}

.rlp-case-study-card__company {
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0;
  color: #667085;
  @media (min-width: 0px) {
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
  @media (min-width: 768px) {
    font-size: min(calc(16 * var(--as1Px)), 16px);
  }
}

.rlp-case-study-card__title {
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 140%;
  color: #0E1830;
  @media (min-width: 0px) {
    margin-top: calc(8 * var(--as1Px));
    font-size: min(calc(20 * var(--as1Px)), 18px);
    min-height: calc(84 * var(--as1Px));
  }
  @media (min-width: 768px) {
    margin-top: calc(8 * var(--as1Px));
    font-size: min(calc(20 * var(--as1Px)), 20px);
    min-height: calc(84 * var(--as1Px));
  }
}

.rlp-case-study-grid__empty {
  margin: 0;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0;
  color: #667085;
  @media (min-width: 0px) {
    margin-top: calc(20 * var(--as1Px));
    font-size: min(calc(14 * var(--as1Px)), 14px);
  }
  @media (min-width: 768px) {
    margin-top: calc(24 * var(--as1Px));
    font-size: min(calc(16 * var(--as1Px)), 16px);
  }
}

.rlp-case-link {
  display: flex;
  align-items: center;
  justify-content: center;
  @media (min-width: 0px) {
    margin-top: calc(24 * var(--as1Px));
  }
  @media (min-width: 768px) {
    margin-top: calc(32 * var(--as1Px));
  }
}
