.jaket-wrap {
  width: 100%;
  margin: 0 auto 4rem;
  padding: 0 0 4rem;
  border-bottom: #ccc 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: 20px;
  font-weight: 500;
}

.cd-title {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 38px;
  font-weight: 500;
  transform: translateX(-0.2em);
}

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

.cd-release {
  font-size: 16px;
  font-weight: 400;
}

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

.jaket-image {
  margin: 0 0 1rem;
  aspect-ratio: 1 / 1;
}

.jaket-item-text {
  height: 12.5em;
  font-size: 12px;
}

.jaket-item-text span {
  display: block;
  font-size: 16px;
  font-weight: 600;
}

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

.music-item {
  width: 50%;
  padding: 0 4rem 0 0;
  border-right: #ccc solid 1px;
}

.music-item:nth-child(2) {
  padding: 0 0 0 4rem;
  border-right: none;
}

.music-title {
  padding: 0 0 1em;
  font-size: 16px;
  font-weight: 600;
}

.music-item p {
  font-size: 14px;
  margin: 0 0 1em;
}

.music-item p span {
  font-size: 12px;
  display: block;
}

.music-note {
  padding: 0.5em 0 0;
  font-size: 12px;
}

.tokuten-wrap {
  width: 100%;
}

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

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

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

.shop-name {
  margin: 0 0 0.3em;
  padding: 0 0 0 0.8em;
  border-left: var(--c-2) solid 2px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}

.shop-note {
  height: 1.5em;
  margin: 0 0 0.6em;
  padding: 0 0 0 1.4em;
  font-size: 12px;
  line-height: 1;
}

.tokuten-name {
  margin: 0 0 0.6em;
  font-size: 16px;
  font-weight: 400;
}

@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 auto 1rem;
  }

  .jaket-text {
    width: 100%;
  }

  .cd-sub-title {
    font-size: 4.10vw; /* 16px */
  }

  .cd-title {
    font-size: 7.18vw; /* 28px */
  }

  .cd-release {
    font-size: 3.59vw; /* 14px */
  }

  .jaket-inner {
    margin: 0 auto 2rem;
    padding: 0 0 2rem;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 10px;
  }

  .jaket-item:last-child {
    margin: 2rem 0 0;
  }

  .jaket-item-text {
    height: 17em;
    margin: 0 0 0.6em;
    font-size: 2.82vw; /* 11px */
  }

  .jaket-item-text-h {
    height: auto;
  }

  .jaket-item-text span {
    font-size: 3.59vw; /* 14px */
  }

  .tokuten-btn-w {
    width: 100% !important;
    padding: 0.4em !important;
  }

  .button.tokuten-btn-w a::before {
    padding-top: 30% !important;
  }

  .music-wrap {
    margin: 0 auto 2rem;
    padding: 0 0 2rem;
  }

  .music-item {
    width: 100%;
    padding: 0;
    border-right: none;
    border-bottom: #ccc solid 1px;
  }

  .music-item:nth-child(2) {
    padding: 2rem 0 0;
    border-bottom: 0;
  }

  .music-title {
    padding: 0 0 1em;
    font-size: 4.10vw; /* 16px */
  }

  .music-item p {
    font-size: 3.59vw; /* 14px */
    margin: 0 0 0.5em;
  }

  .music-item p span {
    font-size: 3.08vw; /* 12px */
  }

  .music-note {
    font-size: 3.08vw; /* 12px */
  }

  .tokuten-wrap {
    width: 100%;
  }

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

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

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

  .shop-name {
    margin: 0 0 0.4em;
    padding: 0 0 0 0.5em;
    border-left: var(--c-2) solid 2px;
    font-size: 4.10vw; /* 16px */
    font-weight: 500;
    line-height: 1;
  }

  .shop-note {
    height: auto;
    margin: 0 0 1em;
    padding: 0 0 0 0.8em;
    font-size: 3.08vw; /* 12px */
    line-height: 1;
  }

  .tokuten-name {
    margin: 0 0 0.6em;
    font-size: 4.10vw; /* 16px */
  }
}

@media screen and (min-width: 744px) and (max-width: 1024px) {
  .jaket-wrap {
    margin: 0 auto 3rem;
    padding: 0 0 3rem;
  }

  .cd-sub-title {
    font-size: 2.44vw;
    /* 20px */
  }

  .cd-title {
    font-size: 4.63vw;
    /* 38px */
  }

  .cd-release {
    font-size: 1.95vw;
    /* 16px */
  }

  .jaket-inner {
    margin: 0 auto 3rem;
    padding: 0 0 3rem;
    column-gap: 20px;
  }

  .jaket-item-text {
    height: 14em;
    font-size: 1.46vw;
    /* 12px */
  }

  .jaket-item-text span {
    font-size: 1.95vw;
    /* 16px */
  }

  .music-wrap {
    margin: 0 auto 3rem;
    padding: 0 0 3rem;
  }

  .music-item {
    padding: 0 3rem 0 0;
  }

  .music-item:nth-child(2) {
    padding: 0 0 0 3rem;
  }

  .music-title {
    font-size: 1.95vw;
    /* 16px */
  }

  .music-item p {
    font-size: 1.71vw;
    /* 14px */
  }

  .music-item p span {
    font-size: 1.46vw;
    /* 12px */
  }

  .music-note {
    font-size: 1.46vw;
    /* 12px */
  }

  .shop-wrap {
    column-gap: 20px;
  }

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

  .shop-name {
    font-size: 1.95vw;
    /* 16px */
  }

  .shop-note {
    font-size: 1.46vw;
    /* 12px */
  }

  .tokuten-name {
    font-size: 1.95vw;
    /* 16px */
  }
}

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