/* -----------------------
  cv
----------------------- */
.cta_catch_set{
  position: absolute;
  bottom: min(calc(120 / 750 * 100vw), 120px);
  left: min(calc(125 / 750 * 100vw), 125px);
  width: min(calc(413 / 750 * 100vw), 413px);
}
.cv {
  background: url(../img/cv_bg.png) no-repeat center top / cover;
}
.cv_shoes{
  position: absolute;
  bottom: 0;
  z-index: 1;
}
.cv_in li{
  position: absolute;
  top: min(calc(545 / 750 * 100vw), 545px);
  z-index: 0;
  width: min(calc(133 / 750 * 100vw), 133px);
}

.cv_in li:nth-child(1){
  top: min(calc(535 / 750 * 100vw), 535px);
  left: min(calc(50 / 750 * 100vw), 50px);
}

.cv_in li:nth-child(2){
  left: min(calc(365 / 750 * 100vw), 365px);
}

.cv_in li:nth-child(3){
  right: min(calc(150 / 750 * 100vw), 150px);
}

.cv_top{
  position: relative;
  margin-bottom: min(calc(659 / 750 * 100vw), 659px);
}

.tab-container {
  width: min(calc(750 / 750 * 100vw), 750px);
  margin: 0 auto;
}

.tab-buttons {
  width: min(calc(720 / 750 * 100vw), 720px);
  margin: 0 auto;
  display: flex;
  align-items: flex-end;
  justify-content: end;
  background: url(../img/cv_tab_bg.png) no-repeat center bottom / contain;
}

.tab-buttons .tab-button{
  width: min(calc(237/ 750 * 100vw),237px);
  cursor: pointer;
  height: auto;
  position: relative;
}

.tab-buttons .tab-button.active{
  width: min(calc(251/ 750 * 100vw),251px);
}

/* 線の共通スタイル */
.tab-button::before,
.tab-button::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 2px;
  height: min(calc(125 / 750 * 100vw), 125px);
  background-color: #90723e;
  display: none;
}

/* 左端タブの右線（右がアクティブのとき） */
.tab-button:first-child.show-right::after {
  right: 0;
  display: block;
}

/* 右端タブの左線（左がアクティブのとき） */
.tab-button:last-child.show-left::before {
  left: 0;
  display: block;
}

.tab-content {
  display: none;
}

.tab-content.active {
  display: block;
}

.tab-content img{
  width: min(calc(842 / 750 * 100vw),842px);
}
.tab1{
  background: url(../img/cv06_bg.png) no-repeat center top / min(calc(720 / 750 * 100vw), 720px);
  padding-top: min(calc(4 / 750 * 100vw), 4px);
}
.tab2{
  background: url(../img/cv04_bg.png) no-repeat center top / min(calc(720 / 750 * 100vw), 720px);
  padding-top: min(calc(4 / 750 * 100vw), 4px);
}
.tab3{
  background: url(../img/cv02_bg.png) no-repeat center top / min(calc(720 / 750 * 100vw), 720px);
  padding-top: min(calc(4 / 750 * 100vw), 4px);
}
.cv_price .cv_pop {
  position: absolute;
  top: min(calc(86 / 750 * 100vw), 86px);
  right: max(calc(-28 / 750 * 100vw), -28px);
  width: min(calc(248 / 750 * 100vw), 248px);
}
.tab1 .cv_price .cv_pop{
  top: min(calc(90 / 750 * 100vw), 90px);
}
.tab3 .cv_price .cv_pop{
  top: max(calc(-40 / 750 * 100vw), -40px);
  right: max(calc(-10 / 750 * 100vw), -10px);
  width: min(calc(202 / 750 * 100vw), 202px);
}

.cv_btn a{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(calc(650 / 750 * 100vw), 650px);
  animation: move_btn 2s ease infinite
}

@keyframes move_btn {
  0% {
    left: 50%;
  }

  50% {
    left: 50%;
  }

  85% {
    left: 50%;
  }

  90% {
    left: 56%;
  }

  95% {
    left: 50%;
  }

  100% {
    left: 50%;
  }
}



.cv_in li:nth-child(1).scaleUp.move {
  transition-delay: 0s;
}
.cv_in li:nth-child(2).scaleUp.move {
  transition-delay: 0.5s;
}
.cv_in li:nth-child(3).scaleUp.move {
  transition-delay: 1.0s;
}
