.music__anchor {
  opacity: 0;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4.1vw;
}
.-load .music__anchor {
  animation: ItemFadeIn 1s forwards;
}

.music__anchor__item {
  display: flex;
  font-size: 3.5vw;
  font-weight: 600;
  border-top: 1px solid #858585;
  border-bottom: 1px solid #858585;
  justify-content: space-between;
  position: relative;
}
.music__anchor__item a {
  display: block;
  padding: 2.5vw 0.6vw 2.5vw 0;
  width: 100%;
}
.music__anchor__item .c-arw {
  content: "";
  transform: rotate(135deg) translateY(-50%);
}
.music__anchor__item span {
  transform: scaleX(0.9);
  transform-origin: left;
  display: inline-block;
}

.music__section {
  scroll-margin-top: 120px;
}

.music__section {
  position: relative;
  display: grid;
  grid-template-columns: 1fr minmax(240px, 1fr);
  gap: 2.5vw;
  opacity: 0;
}
.music__section.-reveal {
  animation: ItemFadeIn 1s 0.2s forwards;
}
.music__section.music_ed {
  margin-top: 10.4vw;
}

.op__ttl,
.ed__ttl {
  position: absolute;
  top: -80px;
  left: -100px;
  width: 280px;
  height: 128px;
  z-index: -1;
  opacity: 0;
}
.-reveal .op__ttl,
.-reveal .ed__ttl {
  animation: tapeInLeft 1s 0.5s forwards cubic-bezier(1, 0, 0, 1);
}

.music__ph {
  overflow: hidden;
  position: relative;
  aspect-ratio: 1.4439655172;
}
.music__ph img {
  opacity: 0;
}
.-reveal .music__ph img {
  animation: ImgGrayIn 1.2s 0.5s forwards;
}

.music__profile {
  opacity: 0;
}
.-reveal .music__profile {
  animation: ItemFadeIn 1.5s 0.5s forwards;
}

.music__profile__text {
  font-size: 0.75rem;
  line-height: 1.8333333333;
  margin-top: 1.5vw;
  color: #858585;
  text-align: justify;
}

.music__info {
  width: 100%;
  display: flex;
  flex-direction: column;
  opacity: 0;
}
.music__info.-reveal {
  animation: itemInRL 0.6s 0.5s forwards ease;
}

.music__meta {
  font-size: 1.25rem;
  line-height: 1;
  padding-bottom: 16px;
  font-weight: 600;
  position: relative;
}
.music__meta::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  background: #858585;
  display: none;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left;
  width: 100%;
}
.-reveal .music__meta::after {
  animation: itemInScaleX 0.6s 0.5s forwards ease;
}
.music__meta span {
  display: inline-block;
  transform: scaleX(0.9);
  transform-origin: left;
}

.music__meta__label {
  position: relative;
  display: inline-block;
  opacity: 0;
  padding: 0.1em 0;
  font-weight: 600;
}
.music__meta__label::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0.15em;
  width: 100%;
  height: 1em;
  z-index: -1;
}
[data-time=dark] .music__meta__label::after {
  background-color: #000;
}
[data-time=light] .music__meta__label::after {
  background-color: #e6e4e3;
}
.-reveal .music__meta__label {
  animation: tapeInLeft 0.5s 0.7s forwards cubic-bezier(1, 0, 0, 1);
}

.music__info__title {
  display: flex;
  margin-top: 36px;
  line-height: 1.3;
  font-weight: 600;
  flex-wrap: nowrap;
}

.music__info__title__artist,
.music__info__title__name {
  display: flex;
  align-items: center;
  transform: scaleX(0.9);
  transform-origin: left;
}

.music__info__title__name {
  font-size: 2.5rem;
}

.music__info__title__artist {
  font-size: 1.625rem;
}

.music__info__title__label {
  display: inline-block;
  font-size: 1.25rem;
  color: #858585;
  transform: scaleX(0.9);
  transform-origin: left;
  margin-top: 5px;
  font-weight: 600;
  line-height: 1;
}

.music_credit {
  margin-top: 25px;
  transform: scaleX(0.9);
  transform-origin: left;
  line-height: 1.5;
  font-weight: 600;
}
.music_credit.category {
  color: #858585;
}

.music__streaming {
  margin-top: 25px;
  width: 340px;
  max-width: 100%;
  min-width: 240px;
}

.music__streaming__btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-width: 240px;
  padding: 10px 18px;
  background-color: #ec1014;
  color: #000;
  opacity: 0;
  font-size: 1.25rem;
  font-weight: 600;
  text-decoration: none;
  border: none;
  cursor: pointer;
}
.-reveal .music__streaming__btn {
  animation: tapeInLeft 1s 1s forwards cubic-bezier(1, 0, 0, 1);
}

.music__streaming__txt {
  transform: scaleX(0.9);
  transform-origin: left;
  margin: 0 auto;
}

.music__streaming__icon {
  width: 18px;
  height: 18px;
}

.artist__comment__ttl {
  font-size: 1rem;
  color: #858585;
  margin-top: 40px;
}

.artist__comment__text {
  font-size: 1rem;
  text-align: justify;
  line-height: 1.75;
}

.music__link {
  display: flex;
  text-align: right;
  z-index: 2;
}

.music__sns {
  align-items: center;
  display: flex;
}

.music__official__link,
.music__staff__link {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}

.music__link__txt {
  color: #ec1014;
  line-height: 1;
}

.music__official__ico {
  align-items: center;
  justify-content: center;
  display: flex;
  background: #ec1014;
  content: "";
  position: relative;
  z-index: 2;
}
.music__official__ico .arw {
  border-color: #000;
  display: inline-block;
  height: 100%;
  position: relative;
  width: 100%;
}
.music__official__ico .arw::after {
  background: #000;
}

.music__sns__item {
  line-height: 1;
  pointer-events: all;
  /* & + & {
         @include MQ_WIDE {
             margin-left: 10px;
         }
     }
  */
}
.music__sns__item a {
  align-items: center;
  display: flex;
  height: 100%;
  width: 100%;
}
.music__sns__item.-tiktok a {
  padding: 0 6.2% 0 16.6%;
}
.music__sns__item.-instagram a {
  padding: 0 8.3% 0;
}
.music__sns__item.-x a {
  padding: 0 16.6%;
}
.music__sns__item:hover {
  filter: brightness(3);
}

.music__staff__link {
  justify-content: end;
  /* 
  .music__sns__item {
      margin-left: 10px;

      @include MQ_NARROW {
          &:nth-of-type(2) {
              margin-left: getVW(40);
          }
      }
  } */
}

@keyframes newsItemIn {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (min-width: 780px) {
  .music__anchor {
    display: none;
  }
  .music__meta::after {
    display: block;
  }
  .music__link {
    bottom: 16px;
    justify-content: flex-end;
    margin-top: 45px;
  }
  .music__sns {
    gap: 8px;
  }
  .music__official__link:hover .music__official__ico,
  .music__staff__link:hover .music__official__ico {
    transform: translateX(5px);
  }
  .music__official__link {
    margin-right: 32px;
  }
  .music__link__txt {
    font-size: 0.9375rem;
    margin-right: 8px;
  }
  .music__official__ico {
    height: 26px;
    width: 26px;
    transition: transform 0.3s 0s;
  }
  .music__official__ico .arw {
    transform: translate(1px, -1px);
    height: 10px;
    width: 10px;
  }
  .music__sns__item {
    transition: filter 0.3s 0s;
    width: 24px;
  }
  .music__staff__link {
    margin-left: 24px;
  }
  .music__staff__link.-nrw {
    display: none;
  }
}

@media (min-width: 780px) and (max-width: 1300px) {
  .music__anchor {
    display: grid;
    width: 52vw;
    gap: 1.6vw;
    margin: 0 auto;
  }
  .music__anchor__item {
    font-size: 1.25rem;
  }
  .music__anchor__item a {
    padding: 1.5vw 0.5vw 1.5vw 0;
  }
  .music__anchor__item .c-arw {
    position: absolute;
    top: 24%;
    right: 0;
    height: 1.5vw;
    width: 1.5vw;
  }
  .music__section {
    margin-top: 17.9vw;
    grid-template-columns: 1fr;
  }
  .music__section.music_op {
    margin-top: 6.2vw;
  }
  .op__ttl,
  .ed__ttl {
    top: -3.9vw;
  }
  .music__profile.c-visible_wide {
    display: none;
  }
  .music__meta::after {
    display: none;
  }
  .music__meta {
    border-bottom: inherit;
    padding-bottom: 0;
  }
  .music__meta.c-visible_wide {
    display: none;
  }
  .music__info__title {
    margin-top: 2vw;
  }
}

@media (max-width: 779px) {
  .music__anchor__item .c-arw {
    position: absolute;
    top: 24%;
    right: 0;
    height: min(2.5vw, 20px);
    width: min(2.5vw, 20px);
  }
  .music__section {
    margin-top: 17.9vw;
    grid-template-columns: 1fr;
  }
  .music__section.music_ed {
    margin-top: 38.4vw;
  }
  .op__ttl,
  .ed__ttl {
    top: -9vw;
    left: -16.7vw;
    width: 58.9vw;
    height: 26.2vw;
  }
  .music__profile__text {
    margin-top: 10.2vw;
    font-size: 3vw;
    line-height: 1.8333333333;
  }
  .music__meta {
    border-bottom: inherit;
    font-size: 4.6vw;
    padding-bottom: 1.7vw;
  }
  .music__info__title {
    margin-top: 2.5vw;
    flex-wrap: wrap;
  }
  .music__info__title__artist,
  .music__info__title__name {
    width: 100%;
  }
  .music__info__title__name {
    font-size: 7.1vw;
  }
  .music__info__title__artist {
    font-size: 4.6vw;
  }
  .music__info__title__label {
    font-size: 3.5vw;
  }
  .music_credit {
    font-size: 3.5vw;
    margin-top: 4.6vw;
  }
  .music__streaming {
    width: 100%;
    margin-top: 5.1vw;
  }
  .music__streaming__btn {
    font-size: 3.8vw;
  }
  .music__streaming__icon {
    width: 3.8vw;
    height: 3.8vw;
  }
  .artist__comment__ttl {
    font-size: 5.1vw;
  }
  .artist__comment__text {
    font-size: 3.5vw;
    line-height: 2;
  }
  .music__link {
    width: 100%;
    bottom: min(2vw, 16px);
    align-items: center;
    margin-top: 5.1vw;
    justify-content: space-between;
  }
  .music__link .music__staff__link {
    display: none;
  }
  .music__sns {
    gap: 0 4.1vw;
  }
  .music_op .music__sns {
    gap: 0 2.8vw;
  }
  .music__link__txt {
    font-size: 3.5vw;
    margin-right: min(1.9vw, 15px);
  }
  .music__official__ico {
    height: min(6.1vw, 48px);
    width: min(6.1vw, 48px);
  }
  .music__official__ico .arw {
    height: min(3vw, 24px);
    width: min(3vw, 24px);
  }
  .music__sns__item {
    display: inline-block;
    transition: transform 0.4s 0s;
    transform-origin: bottom;
    height: 6.1vw;
    width: 6.1vw;
  }
  .music__staff__link {
    margin-top: 4.1vw;
    margin-right: inherit;
  }
}