@media (min-width: 769px), print {
  #contact_section {
    background: url(/img/performance/mansion/contact_bg_pc.jpg) center center no-repeat;
    background-size: cover;
  }
}
@media screen and (max-width: 768px) {
  #contact_section {
    background: url(/img/performance/mansion/contact_bg_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}

@media (min-width: 769px), print {
  .pfm_header {
    background-image: url(/img/performance/mansion/kv_bg_pc.jpg);
  }
}
@media screen and (max-width: 768px) {
  .pfm_header {
    background-image: url(/img/performance/mansion/kv_bg_sp.jpg);
  }
}
@media screen and (max-width: 768px) {
  .pfm_row .block.half.bg01::before {
    background: #f1f1f1;
  }
  .pfm_row .block.half.bg02::before {
    background: #fff;
  }
}
@media (min-width: 769px), print {
  .pfm_row .block .thumb.landscape {
    width: 43.334%;
  }
}
@media screen and (max-width: 768px) {
  .pfm_row .block .thumb.landscape {
    width: 60rem;
  }
}
@media (min-width: 769px), print {
  .pfm_row .block .thumb.portrait {
    width: min(100%, 32rem);
  }
}
@media screen and (max-width: 768px) {
  .pfm_row .block .thumb.portrait {
    width: 50rem;
  }
}
@media (min-width: 769px), print {
  .pfm_row + .pfm_row.reverce {
    margin-top: 6.4rem;
  }
  .pfm_row + .pfm_row.reverce .block:last-of-type {
    order: -5;
  }
}
@media screen and (max-width: 768px) {
  .pfm_row + .pfm_row.reverce .block.bg01::before {
    background: #f1f1f1;
  }
  .pfm_row + .pfm_row.reverce .block.bg02::before {
    background: #fff;
  }
}
.pfm_caption {
  position: relative;
  width: 100%;
}
@media (min-width: 769px), print {
  .block.half .pfm_caption {
    padding-bottom: 6rem;
  }
}
@media (min-width: 769px), print {
  .pfm_caption .bg {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .pfm_caption .bg {
    margin-top: 5.5rem;
  }
}
@media (min-width: 769px), print {
  .pfm_caption .bg.wid01 {
    width: 22.88rem;
    right: -4rem;
  }
}
@media screen and (max-width: 768px) {
  .pfm_caption .bg.wid01 {
    width: 28rem;
  }
}
@media print {
  .pfm_caption .bg.wid01 {
    right: 8rem;
  }
}
@media (min-width: 769px), print {
  .block.half .pfm_caption .bg.wid01 {
    right: -2.8rem;
    bottom: -6.4rem;
  }
}
@media (min-width: 769px), print {
  .pfm_caption .bg.wid02 {
    width: 26.241rem;
    right: -8rem;
  }
}
@media screen and (max-width: 768px) {
  .pfm_caption .bg.wid02 {
    width: 34.6rem;
  }
}
@media print {
  .pfm_caption .bg.wid02 {
    right: 4rem;
  }
}
@media (min-width: 769px), print {
  .block.half .pfm_caption .bg.wid02 {
    bottom: -3.6rem;
  }
}
@media (min-width: 769px), print {
  .pfm_caption .bg.wid03 {
    width: 23.28rem;
    right: -8rem;
  }
}
@media screen and (max-width: 768px) {
  .pfm_caption .bg.wid03 {
    width: 33rem;
  }
}
@media print {
  .pfm_caption .bg.wid03 {
    right: 4rem;
  }
}
@media (min-width: 769px), print {
  .pfm_caption .bg.wid04 {
    width: 28.08rem;
    right: -8rem;
  }
}
@media screen and (max-width: 768px) {
  .pfm_caption .bg.wid04 {
    width: 46rem;
  }
}
@media print {
  .pfm_caption .bg.wid04 {
    right: 4rem;
  }
}
@media (min-width: 769px), print {
  .block.full .pfm_caption .bg.wid04 {
    bottom: -3.6rem;
  }
}