/* アンカーリンク共通記述変更 */
.anchor_links {
  justify-content: center;
}
.anchor_links--item span{
  white-space: nowrap;
  @media screen and (max-width: 1280px) {
    font-size: 1.4rem;
  }
}
.voice {
  margin-top: var(--sp-64);
}
.voice_head {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  @media screen and (max-width: 767px) {
    flex-direction: column;
    align-items: center;
  }
}
.voice_mv {
  max-width: 100%;
  width: calc(50% + 316px);
  margin-left: 0;
  margin-right: auto;
  display: flex;
  justify-content: flex-end;

  background: linear-gradient(
    90deg,
    #373124 0%,
    #373124 50%,
    rgba(55, 49, 36, 0.8) 60%,
    transparent 70%
  );
}
.voice_box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 464px;
  width: 90%;
  background: #f5f5f5B3;
  height: 291px;
  position: absolute;
  left: calc(50% - 98px);
  @media screen and (max-width: 767px) {
    position: relative;
    left: auto;
    height: auto;
    z-index: 1;
    padding:var(--sp-32) 5%;
    margin-top: calc(-1 * var(--sp-32));
  }
}
.voice_name{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: min(3.2rem, 8vw);
  font-weight: bold;
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 15px;
  &::after{
    content: '';
    display: block;
    height: 3px;
    width: 40px;
    background: linear-gradient(90deg, var(--main-color) 0,  var(--main-color) 50%,  var(--sub-color) 50%);
    position: absolute;
    bottom: -1.5px;
  }
}
.voice_body {
  max-width: 1200px;
  width: 90%;
  margin: auto;
  position: relative;
}
.voice_row{
  margin-top: var(--sp-32);
  display: flex;
  gap: var(--sp-32);
  @media screen and (max-width: 767px) {
    flex-direction: column;
    align-items: center;
  }
  &:nth-child(odd){
    flex-direction: row-reverse;
    @media screen and (max-width: 767px) {
      flex-direction: column;
    }
  }
}
.voice_main{
  width: calc(100% - var(--sp-32) - 505px);
  @media screen and (max-width: 767px) {
    width: 100%;
  }
}
.voice_tag {
  display: flex;
  align-items: center;
  min-height: 50px;
  font-size: min(2rem,4.5vw);
  font-weight: bold;
  background: var(--main-color);
  color: #fff;
  padding: 5px 30px;
  position: relative;
  @media screen and (max-width: 767px) {
    padding: 5px 10px 5px 16px;
  }
  &::before{
    content: '';
    display: block;
    width: 3px;
    height: 100%;
    position: absolute;
    left: 3px;
    top: 0;
    background: #fff;
  }
}
.voice_com{
  margin-top: 15px;
}
.voice_bot{
  max-width: 950px;
  width: 100%;
  margin-top: var(--sp-64);
  margin-left: auto;
  margin-right: auto;
  padding: var(--sp-64);
  display: flex;
  align-items: center;
  gap: var(--sp-32);
  border: 1px solid var(--main-color);
  background: #fff;
  @media screen and (max-width: 767px) {
    flex-direction: column-reverse;
    padding: var(--sp-32) 5%;
  }
}
.bot_main{
  width: calc(100% - var(--sp-32) - 309px);
  @media screen and (max-width: 767px) {
    width: 100%;
  }
}
.bot_tag {
  display: inline-flex;
  align-items: center;
  min-height: 50px;
  background: var(--sub-color);
  font-size: min(2rem,4.5vw);
  font-weight: bold;
  color: #fff;
  padding: 5px 15px;
}
.bot_com{
  margin-top: var(--sp-32);
}

.rev{
  padding-bottom: var(--sp-64);
  position: relative;
  &::before{
    content: '';
    display: block;
    width: 97.5%;
    height: calc(100% - 50px);
    background: #f5f5f5;
    position: absolute;
    top: 50px;
    left: 0;
  }
  .voice_mv {
    margin-left: auto;
    margin-right: 0;
    justify-content: flex-start;
    background: linear-gradient(-90deg, #efefef 0, #efefef 50%, transparent 50%);
  }
  .voice_box {
    left: auto;
    right: calc(50% - 98px);
    background: #ffffffB3;
    @media screen and (max-width: 767px) {
      position: relative;
      right: auto;
    }
  }
  .voice_row{
    &:nth-child(odd){
      flex-direction: row;
      @media screen and (max-width: 767px) {
        flex-direction: column;
      }
    }
    &:nth-child(even){
      flex-direction: row-reverse;
      @media screen and (max-width: 767px) {
        flex-direction: column;
      }
    }
  }
  .voice_bot{
    flex-direction: row-reverse;
    @media screen and (max-width: 767px) {
      flex-direction: column-reverse;
    }
  }
}
.anchor_links--item {
  max-width: 270px;
}
.mv_top{
   @media screen and (max-width: 767px) {
    picture {
      display: flex;
      width: 100%;
      justify-content: flex-end;
    }
   }
}