.jaket-wrap {
  width: 100%;
  margin: 0 auto 4rem;
  padding: 0 0 4rem;
  border-bottom: #fff solid 1px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.jaket {
  width: 46%;
}

.jaket-text {
  width: 50%;
}

.cd-sub-title {
  font-size: var(--fs-heading);
  font-weight: 500;
}

.cd-title {
  transform: translateX(-0.5em);
  font-size: 42px;
  font-weight: 500;
}

.cd-title span {
  font-weight: 500;
  letter-spacing: 0.05em;
}

.cd-release {
  font-size: var(--fs-lg);
  font-weight: 400;
}

.jaket-inner {
  width: 100%;
  margin: 0 auto 4rem;
  padding: 0 0 4rem;
  border-bottom: #fff solid 1px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.jaket-image {
  margin: 0 0 1rem;
  aspect-ratio: 1 / 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.jaket-item-text {
  font-size: var(--fs-base);
  font-weight: 400;
}

.jaket-item-text span {
  display: block;
  font-size: var(--fs-subheading);
  font-weight: 600;
}

.jaket-item-text small {
  font-size: var(--fs-caution-text);
}

.music-title {
  padding: 2em 0 1em;
  font-size: var(--fs-lg);
  font-weight: 600;
}

.music-title span {
  font-size: var(--fs-base);
}

.music-item {
  font-size: var(--fs-base);
  margin: 0 0 1em;
}

.music-item span {
  font-size: var(--fs-note);
  display: block;
}

.music-note {
  padding: 0.5em 0 0;
  font-size: var(--fs-note);
}

.tokuten-wrap {
  width: 100%;
}

.tokuten-image {
  width: 100%;
  margin-bottom: 2rem;
}

.tokuten-multi-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;

  .tokuten-image {
    margin-bottom: initial;
  }
}

.shop-wrap {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 24px;
}

.shop-item {
  margin: 4rem 0 0;
}

.shop-name {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  row-gap: 0.2em;
  min-height: 2.2em;
  margin: 0 0 1em;
  padding: 0 0 0 0.6em;
  border-left: var(--color) solid 2px;
  font-size: var(--fs-name);
  font-weight: 500;
  line-height: 1;
}

.shop-wrap .btn-box-3 {
  margin-block: 1em;
}

.shop-note {
  height: 1.5em;
  font-size: var(--fs-note);
  line-height: 1;
}

.tokuten-name {
  margin: 0 0 0.6em;
  font-size: var(--fs-lg);
  font-weight: 400;
}

.tokuten-name > span {
  display: inline-block;
  padding: 0.1em 0.4em;
  color: #d8c0f4;
  font-weight: 500;
  background-color: #502e86;
}

.tokuten-name > span:not(:first-child) {
  margin-top: 0.8em;
}

@media screen and (min-width: 1px) and (max-width: 743px) {
  .jaket-wrap {
    margin: 0 auto 2rem;
    padding: 0 0 2rem;
  }

  .jaket {
    width: 100%;
    margin: 0 0 1rem;
  }

  .jaket-text {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
  }

  .cd-title {
    font-size: 28px;
  }

  .cd-sub-title {
    padding: 0 0.5em 0 0;
  }

  .cd-release {
    width: 100%;
  }

  .jaket-inner {
    margin: 0 auto 2rem;
    padding: 0 0 2rem;
    border-bottom: #fff solid 1px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 36px 20px;
  }

  .jaket-item {
    width: 100%;
  }

  .music-item {
    width: 100%;
    margin: 0 auto 2rem;
  }

  .music-note {
    padding: 0.5em 0 0;
  }

  .shop-wrap {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }

  .tokuten-multi-wrap {
    grid-template-columns: 1fr;
  }

  .shop-item {
    margin: 3rem 0 0;
  }

  .shop-name {
    margin: 0 0 0.4em;
    padding: 0 0 0 0.5em;
    border-left: var(--color) solid 2px;
    font-weight: 500;
    line-height: 1;
  }

  .shop-note {
    height: auto;
    margin: 0 0 1em;
    padding: 0 0 0 0.8em;
    line-height: 1;
  }

  .tokuten-name {
    margin: 0 0 0.6em;
  }
}

@media screen and (min-width: 744px) and (max-width: 1024px) {

  .tokuten-btn-box {
    width: 100%;
    margin: 3rem 0 0;
  }
}

@media screen and (min-width: 1025px) {}