.music__parent--flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.music__parent--flex--item {
  /*width: calc(50% - 25px * 1 / 2);
  margin-right: 25px;*/
  width: 30%;
}
.music__parent--flex--item:nth-of-type(2n) {
  margin-right: 0;
}
.music__parent--flex--item--imgArea {
  height: min(calc(494 / 1920 * 100vw), 494px);
  height: 94%;
}
.music__parent--flex--item--imgArea img {
  object-fit: cover;
  object-position: center center;
  height: 100%;
  width: 100%;
}
.music__parent--flex--item--txtArea {
  margin-top: 31px;
  margin-top: min(calc(31 / 1920 * 100vw), 31px);
}
.music__parent--flex--item--txtArea--sub {
  display: block;
  line-height: 1;
}
.music__parent--flex--item--txtArea--ttl {
  display: block;
  line-height: 1;
  margin-top: 17px;
  margin-top: min(calc(17 / 1920 * 100vw), 17px);
}
.music__detail--description {
  margin-top: min(calc(70 / 1920 * 100vw), 70px);
}
.music__detail--description--flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.music__detail--description--flex--imgArea {
  width: min(calc(593 / 1920 * 100vw), 593px);
  margin-right: min(calc(70 / 1920 * 100vw), 593px);
  overflow: hidden;
  /*height: min(calc(470 / 1920 * 100vw), 470px);*/
  border-radius: 8px;
}
.music__detail--description--flex--imgArea img {
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  height: 100%;
  width: 100%;
}
.music__detail--description--flex--txtArea {
  width: 545px;
}
.music__detail--description--flex--txtArea--ttl span {
  display: block;
}
.music__detail--description--flex--txtArea--ttl--treat {
  font-size: min(calc(14 / 1920 * 100vw), 14px);
}
.music__detail--description--flex--txtArea--subTtl {
  font-size: min(calc(28 / 1920 * 100vw), 28px);
  font-weight: bold;
  font-family: "Kaisei Opti", serif;
  margin-top: min(calc(46 / 1920 * 100vw), 46px);
}
.music__detail--description--flex--txtArea--subTtl--name {
  display: inline !important;
}
.music__detail--description--flex--txtArea--subTtl .smallTxt {
  font-size: min(calc(15 / 1920 * 100vw), 15px);
}
.music__detail--description--flex--txtArea--lyrics {
  margin-top: 14px;
  font-size: 12px;
  font-family: "Kaisei Opti", serif;
  letter-spacing: 0.04em;
}
.music__detail--description--flex--txtArea--profile {
  margin-top: min(calc(33 / 1920 * 100vw), 33px);
}
.music__detail--description--flex--txtArea--profile .treat {
  font-family: "Dancing Script", cursive;
  color: var(--color-main);
  font-size: min(calc(24 / 1920 * 100vw), 24px);
}
.music__detail--description--flex--txtArea--profile--txt {
  letter-spacing: 0.15em;
  text-align: justify;
}
.music__detail--description--flex--txtArea--sns {
  margin-top: min(calc(30 / 1920 * 100vw), 30px);
}
.music__detail--description--flex--txtArea--sns p {
  font-size: min(calc(12 / 1920 * 100vw), 12px);
  font-family: "Libre Baskerville", serif;
  color: var(--color-main);
}
.music__detail--description--flex--txtArea--sns .flex {
  display: flex;
}
.music__detail--description--flex--txtArea--sns .flex__item {
  display: block;
  width: min(calc(50 / 1920 * 100vw), 50px);
  margin-right: min(calc(30 / 1920 * 100vw), 30px);
}
.music__detail--description--flex--txtArea--sns .flex__item img {
  width: 100%;
}
.music__detail--description--flex--txtArea--sns .flex__item:last-of-type {
  margin-right: 0;
}
.music__detail--comment {
  margin-top: min(calc(10 / 1920 * 100vw), 10px);
  max-width: min(calc(1210 / 1920 * 100vw), 1210px);
  margin-left: auto;
  margin-right: auto;
}
.music__detail--comment--box {
  margin-top: min(calc(29 / 1920 * 100vw), 29px);
  margin-left: auto;
  margin-right: auto;
  padding: 33px 55px;
}
.music__detail--comment--box--question {
  color: var(--color-main);
  font-size: min(calc(18 / 1920 * 100vw), 18px);
  font-weight: bold;
  font-family: "Kaisei Opti", serif;
  display: flex;
  letter-spacing: 0.07em;
  padding-bottom: 20px;
  margin-bottom: 25px;
}
.music__detail--comment--box--answer {
  letter-spacing: 0.14em;
}
.music__detail--comment--box--answer:not(:first-of-type) {
  margin-top: min(calc(30 / 1920 * 100vw), 18px);
}
.music__detail--special {
  margin-top: min(calc(160 / 1920 * 100vw), 160px);
  display: none;
}
.music__detail--special--flex {
  display: flex;
  flex-wrap: wrap;
  /*justify-content: center;*/
  justify-content: space-between;
  list-style: none;
  position: relative;
}
.music__detail--special--flex:before, .music__detail--special--flex:after {
  content: "";
  display: block;
  width: 23%;
}
.music__detail--special--flex:before {
  order: 1;
}
.music__detail--special--flex--item {
  /*width: calc(25% - 30px * 3 / 4);
  margin-right: 30px;*/
  width: 23%;
}
.music__detail--special--flex--item:nth-of-type(4n) {
  margin-right: 0;
}
.music__detail--special--flex--item img {
  width: 100%;
  height: auto;
  margin-bottom: 10px;
}
.music__detail--special--flex--item--txtArea {
  margin-top: 18px;
}
.music__detail--special--flex--item--txtArea--ttl {
  padding-left: min(calc(27 / 1920 * 100vw), 27px);
  font-family: "Kaisei Opti", serif;
  font-size: min(calc(18 / 1920 * 100vw), 18px);
  color: var(--color-main);
  margin: 0;
  position: relative;
  letter-spacing: 0.1em;
}
.music__detail--special--flex--item--txtArea--ttl:before {
  position: absolute;
  content: "";
  width: min(calc(20 / 1920 * 100vw), 20px);
  height: min(calc(20 / 1920 * 100vw), 20px);
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-image: url(../images/common/special_treat.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.music__detail--special--flex--item--txtArea--txt {
  margin-top: 5px;
}
.music__detail--special--flex--item ul {
  padding-left: 1.5rem;
}
.music__detail--special--flex--item ul li {
  margin-top: 5px;
  text-align: justify;
}
.music__detail--special--ttl {
  margin: 2.604vw 0 1.563vw;
  font-family: "Kaisei Opti", serif;
  font-size: min(calc(24 / 1920 * 100vw), 24px);
  color: var(--color-main);
  padding-left: 1.042vw;
  border-left: 4px solid #2157ce;
}
.music__detail--btnArea {
  margin-top: 140px;
  display: none;
}
.music__detail--btnArea--flex {
  display: flex;
  justify-content: center;
}
.music__detail--btnArea--flex .btn {
  width: 339px;
  margin-right: 60px;
}
.music__detail--btnArea--flex .btn:last-of-type {
  margin-right: 0;
}

@media screen and (max-width: 768px) {
  .music {
    padding-bottom: calc(127 / 375 * 100vw);
  }
  .music__parent--flex--item {
    width: 100%;
    margin-right: 0;
  }
  .music__parent--flex--item:nth-of-type(n + 2) {
    margin-top: calc(160 / 375 * 100vw);
  }
  .music__parent--flex--item--imgArea {
    max-height: 289px;
    min-height: 87%;
  }
  .music__parent--flex--item--txtArea {
    margin-left: auto;
    margin-right: auto;
    width: 86%;
    margin-top: calc(30 / 375 * 100vw);
  }
  .music__parent--flex--item--txtArea--sub {
    font-size: calc(14 / 375 * 100vw);
  }
  .music__parent--flex--item--txtArea--ttl {
    font-size: calc(24 / 375 * 100vw);
    margin-top: calc(14 / 375 * 100vw);
    letter-spacing: -0.04em;
  }
  .music__parent--flex--item--txtArea--commonKaiseiTtl {
    line-height: 1.8;
  }
  .music__detail--description {
    margin-top: 32px;
  }
  .music__detail--description--flex {
    flex-direction: column;
  }
  .music__detail--description--flex--imgArea {
    width: 100%;
    height: 100%;
  }
  .music__detail--description--flex--txtArea {
    margin-top: 28px;
    margin-left: auto;
    margin-right: auto;
    width: 85%;
  }
  .music__detail--description--flex--txtArea--ttl {
    margin-bottom: 0;
  }
  .music__detail--description--flex--txtArea--ttl--treat {
    font-size: calc(12 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--ttl--name {
    font-size: calc(20 / 375 * 100vw);
    margin-top: calc(5 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--ttl--name .sp {
    display: inline !important;
  }
  .music__detail--description--flex--txtArea--subTtl {
    margin-top: 0px;
    line-height: 1;
    font-size: calc(18 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--subTtl--name {
    display: none !important;
  }
  .music__detail--description--flex--txtArea--subTtl .smallTxt {
    font-size: calc(14 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--profile {
    margin-top: 48px;
  }
  .music__detail--description--flex--txtArea--profile .treat {
    font-size: calc(20 / 375 * 100vw);
    margin-bottom: calc(1 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--sns {
    margin-top: calc(25 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--sns p {
    font-size: calc(13 / 375 * 100vw);
  }
  .music__detail--description--flex--txtArea--sns .flex__item {
    width: calc(40 / 375 * 100vw);
    margin-right: calc(10 / 375 * 100vw);
  }
  .music__detail--comment {
    margin-top: calc(56 / 375 * 100vw);
    max-width: 100%;
  }
  .music__detail--comment--box {
    padding: 33px 25px;
    margin-top: calc(29 / 375 * 100vw);
  }
  .music__detail--comment--box--question {
    font-size: calc(14 / 375 * 100vw);
    margin-bottom: calc(20 / 375 * 100vw);
  }
  .music__detail--comment--box--answer {
    margin-bottom: 0;
    font-size: calc(12 / 375 * 100vw);
  }
  .music__detail--special {
    margin-top: 65px;
  }
  .music__detail--special--flex {
    /*justify-content: space-between;*/
  }
  .music__detail--special--flex--item {
    /*width: calc(50% - 23px * 1 / 2);
    margin-right: 23px;*/
    width: 48%;
    margin-right: 0;
  }
  .music__detail--special--flex--item:nth-of-type(2n) {
    margin-right: 0;
  }
  .music__detail--special--flex--item:nth-of-type(n + 3) {
    margin-top: 25px;
  }
  .music__detail--special--flex--item--txtArea {
    margin-top: 14px;
  }
  .music__detail--special--flex--item--txtArea--ttl {
    /*font-size: 1.4rem;*/
    font-size: 1.2rem;
    padding-left: 20px;
  }
  .music__detail--special--flex--item--txtArea--ttl:before {
    width: 13px;
    height: 13px;
  }
  .music__detail--special--flex--item--txtArea--txt {
    font-size: .9rem;
    margin-top: 2px;
  }
  .music__detail--special--flex--item ul li {
    font-size: 1rem;
  }
  .music__detail--special--ttl {
    margin: 13.333vw 0 8vw;
    font-size: calc(20 / 375 * 100vw);
    padding-left: 5.333vw;
  }
  .music__detail--btnArea {
    margin-top: 70px;
  }
  .music__detail--btnArea--flex {
    flex-direction: column;
  }
  .music__detail--btnArea--flex .btn {
    width: 100%;
    margin-right: 0;
  }
  .music__detail--btnArea--flex .btn:not(:first-of-type) {
    margin-top: 15px;
  }
  .music__detail--btnArea--flex .btn__link {
    padding: 13px 0;
    font-size: 1.3rem;
  }
}
