@charset "UTF-8";
/*
 * 色の設定
 */
/*
 * BEM関連
 */
/*
 * clearfix
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap");
.sponly {
  display: block !important;
}

@media (min-width: 801px) {
  .sponly {
    display: none !important;
  }
}
.pconly {
  display: none !important;
}

@media (min-width: 801px) {
  .pconly.is-inline {
    display: inline !important;
  }
}
@media (min-width: 801px) {
  .pconly.is-block {
    display: block !important;
  }
}
.l-header {
  z-index: 10;
}

.l-footer {
  margin-top: 0;
}

/* CMギャラリーページ */
@media screen and (max-width: 800px) {
  .p-cm_wrap * img {
    width: 100%;
    height: auto;
  }
}
.p-cm_wrap main {
  max-width: 1600px;
  margin: 0 auto;
}
.p-cm_wrap main.p-cm {
  max-width: 1600px;
  margin: 0 auto;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm {
    width: 100%;
    margin-top: 60px;
  }
}
.p-cm_wrap main.p-cm .p-cm__kv {
  position: relative;
}
.p-cm_wrap main.p-cm .p-cm__kv .p-cm__kv__text {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
}
.p-cm_wrap main.p-cm .p-cm__kv .p-cm__kv__text .p-cm__kv__ttl {
  width: 75%;
  height: auto;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__kv .p-cm__kv__text .p-cm__kv__ttl {
    width: 70.7692307692%;
  }
}
.p-cm_wrap main.p-cm .p-cm__kv .p-cm__kv__text .p-cm__kv__ttl img {
  width: 100%;
  height: auto;
}
.p-cm_wrap main.p-cm .p-cm__ttl__lv2 {
  margin-bottom: 64px;
  padding-bottom: 24px;
  font-size: 4.8rem;
  display: inline-block;
  border-bottom: solid 6px #e60000;
}
.p-cm_wrap main.p-cm .p-cm__concept,
.p-cm_wrap main.p-cm .p-cm__movie {
  padding-left: 10px;
  padding-right: 10px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__concept,
  .p-cm_wrap main.p-cm .p-cm__movie {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.p-cm_wrap main.p-cm .p-cm__concept {
  min-height: 636px;
  padding-top: 100px;
  padding-bottom: 100px;
  position: relative;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__concept {
    min-height: unset;
    padding-top: 50px;
    padding-bottom: 50px;
    overflow: hidden;
  }
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__bg {
  width: 713px;
  height: 508px;
  position: absolute;
  top: 54px;
  right: 27px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__bg {
    width: 89.7435897436%;
    padding-top: 9.7435897436%;
    top: 0;
    right: 0;
  }
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text {
  max-width: 1200px;
  margin: 0 auto;
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__ttl__lv2 {
  color: #e60000;
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__txt__lead {
  font-size: 18px;
  font-weight: 500;
  line-height: 43.2px;
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst {
  max-width: 900px;
  margin-bottom: 18px;
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst:last-of-type {
  margin-bottom: 0;
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__ttl {
  font-size: 28px;
  font-weight: 700;
  line-height: 3;
  letter-spacing: 2px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__ttl {
    font-size: 24px;
  }
}
.p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__item {
  font-size: 18px;
  font-weight: 500;
  line-height: 2.3;
  letter-spacing: 2px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__item {
    font-size: 15px;
  }
}
.p-cm_wrap main.p-cm .p-cm__movie {
  padding-top: 120px;
  padding-bottom: 354px;
  background: url(/images/corporate/cm/bg_movie_pc@2x.png) left top no-repeat;
  background-size: 100%;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie {
    padding-top: 80px;
    padding-bottom: 180px;
    background: url(/images/corporate/cm/bg_movie_sp.png) left top no-repeat;
    background-size: 100%;
  }
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__ttl__lv2,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__ttl__lv2 {
  font-size: 4.8rem;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  row-gap: 52px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst,
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst {
    display: block;
  }
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item {
  width: calc(50% - 52px);
  max-width: 548px;
  margin-right: 104px;
  flex-shrink: 0;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item:nth-child(even),
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item:nth-child(even) {
  margin-right: 0;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item:last-of-type,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item:last-of-type {
  margin-right: 0;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item:last-of-type,
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item:last-of-type {
    margin: 0 auto 0;
  }
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item,
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item {
    width: 100%;
    margin: 0 auto 48px;
  }
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure:after,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure:after {
  content: "";
  width: 100px;
  height: 100px;
  margin: auto;
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22none%22%20height%3D%22100%22%20viewBox%3D%220%200%20100%20100%22%20width%3D%22100%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20d%3D%22m0%200h100v100h-100z%22%2F%3E%3C%2FclipPath%3E%3Cg%20clip-path%3D%22url%28%23a%29%22%3E%3Cpath%20d%3D%22m50%2098c26.5097%200%2048-21.4903%2048-48s-21.4903-48-48-48-48%2021.4903-48%2048%2021.4903%2048%2048%2048z%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22m72%2050-34%2019.63v-39.26z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") left top no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure:after,
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item .p-cm__link .p-cm__figure:after {
    width: 65px;
    height: 65px;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2065%2065%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22m32.5%2065c-17.92%200-32.5-14.58-32.5-32.5s14.58-32.5%2032.5-32.5%2032.5%2014.58%2032.5%2032.5-14.58%2032.5-32.5%2032.5zm0-61.02c-15.73%200-28.52%2012.79-28.52%2028.52s12.79%2028.52%2028.52%2028.52%2028.52-12.8%2028.52-28.52-12.79-28.52-28.52-28.52z%22%2F%3E%3Cpath%20d%3D%22m46.48%2032.5-21.61%2012.48v-24.96z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") left top no-repeat;
  }
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery .p-cm__lst .p-cm__item .p-cm__link .p-cm__ttl__movie,
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__making .p-cm__lst .p-cm__item .p-cm__link .p-cm__ttl__movie {
  padding-top: 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 32.4px;
  text-align: center;
}
.p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery {
  margin-bottom: 80px;
}
@media screen and (max-width: 800px) {
  .p-cm_wrap main.p-cm .p-cm__movie .p-cm__gallery {
    margin-bottom: 100px;
  }
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__kv .p-cm__kv__text .p-cm__kv__ttl {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.75s ease-in-out, top 0.75s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__concept .p-cm__concept__bg {
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__ttl {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s 0.25s ease-in-out, top 0.5s 0.25s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__item {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s 0.25s ease-in-out, top 0.5s 0.25s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__gallery .p-cm__ttl__lv2 {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s ease-in-out, top 0.5s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__gallery .p-cm__lst {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s ease-in-out, top 0.5s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__making .p-cm__ttl__lv2 {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s ease-in-out, top 0.5s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.p-cm__making .p-cm__lst {
  position: relative;
  top: 30px;
  opacity: 0;
  transition: opacity 0.5s ease-in-out, top 0.5s ease-in-out;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__kv .p-cm__kv__text .p-cm__kv__ttl {
  position: relative;
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__concept .p-cm__concept__bg {
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__ttl {
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__concept .p-cm__concept__text .p-cm__concept__lst .p-cm__concept__item {
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__gallery .p-cm__ttl__lv2 {
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__gallery .p-cm__lst {
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__making .p-cm__ttl__lv2 {
  top: 0;
  opacity: 1;
}
.p-cm_wrap main.p-cm .js-scroll-action.is-active.p-cm__making .p-cm__lst {
  top: 0;
  opacity: 1;
}