@charset "UTF-8";

/*----------------------------mv-----------------------------------*/

#mv_outer {
  position: relative;
}
header.nofixed + #mv_outer {
  border-top-width: 0 !imporatnt;
}
@media screen and (min-width: 901px) {
  body:not(.ss) header:not(.over) + #mv_outer {
    border-top-width: 0;
  }
}
#mv {
  margin: 0 auto;
  position: relative;
  padding: 0;
}
#mv:after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6;
  pointer-events: none;
}
.ind #mv:after {
  opacity: 0 !important;
}

/*--mv_img--*/

#mv .mv_img li img {
  opacity: 0;
}

/*下記アニメーションkeyframes名を指定*/
/*参考　http://www.knockknock.jp/archives/184 */
#mv.slide01 .mv_img li.show img {
  animation-name: slide01;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
#mv.slide02 .mv_img li.show img {
  animation-name: slide02;
  animation-timing-function: ease-out;
}
#mv.slide03 .mv_img li.show img {
  animation-name: slide03;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
#mv.slide04 .mv_img li.show img {
  animation-name: slide04;
  animation-timing-function: ease-out;
}
#mv.slide05 .mv_img li.show img {
  animation-name: slide05;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
#mv.slide06 .mv_img li.show img {
  animation-name: slide06;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
#mv.slide07 .mv_img li.show img {
  animation-name: slide07;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
#mv.slide09 .mv_img li.show img {
  animation-name: slide09;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
#mv.slide10 .mv_img li.show img {
  animation-name: slide10;
  animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
@keyframes slide01 {
  /*ズームイン ease-out推奨*/
  0% {
    opacity: 0;
    transform: scale(1, 1) translate(0, 0);
  }
  15% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1.12, 1.12) translate(0, 0) rotate(0.1deg);
  }
}
@keyframes slide02 {
  /*ズームアウト ease-out推奨*/
  0% {
    opacity: 0;
    transform: scale(1.12, 1.12) translate(0, 0);
  }
  15% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1, 1) translate(0, 0) rotate(0.1deg);
  }
}
@keyframes slide03 {
  /*横スライド cubic-bezier(0.645, 0.045, 0.355, 1)推奨*/
  0% {
    opacity: 0;
    transform: translate(30%, 0);
  }
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  70% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
@keyframes slide04 {
  /*フェードアウト トリミングなし ease-out推奨*/
  0% {
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  85% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes slide05 {
  /*横スライド トリミングなし cubic-bezier(0.645, 0.045, 0.355, 1)推奨*/
  0% {
    opacity: 0;
    transform: translate(30%, 0);
  }
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  70% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
@keyframes slide06 {
  /*ズームイン ease-out推奨*/
  0% {
    opacity: 0;
    transform: scale(1, 1) translate(0, 0);
  }
  15% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1.12, 1.12) translate(0, 0) rotate(0.1deg);
  }
}
@keyframes slide07 {
  /*ズームイン ease-out推奨*/
  0% {
    opacity: 0;
    transform: scale(1.12, 1.12) translate(0, 0);
  }
  15% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: scale(1, 1) translate(0, 0) rotate(0.1deg);
  }
}
@keyframes slide09 {
  /*横スライドズームイン cubic-bezier(0.645, 0.045, 0.355, 1)推奨*/
  0% {
    opacity: 0;
    transform: translate(30%, 0);
  }
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  70% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
@keyframes slide10 {
  /*横スライドズームアウト cubic-bezier(0.645, 0.045, 0.355, 1)推奨*/
  0% {
    opacity: 0;
    transform: translate(30%, 0);
  }
  20% {
    opacity: 1;
    transform: translate(0, 0);
  }
  70% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
#mv .mv_img li.no_animation img {
  opacity: 1 !important;
  animation: none !important;
  transform: none !important;
}
#mv .mv_img {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  z-index: 6;
}
#mv .mv_img li {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  z-index: 1;
}
#mv .mv_img li:nth-of-type(n + 2) {
  display: none;
}
#mv .mv_img li.show {
  display: block;
}
#mv .mv_img li img {
  max-width: none;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
#mv .mv_img li.pos_lt img {
  object-position: 10% 5%;
}
#mv .mv_img li.pos_ct img {
  object-position: 50% 5%;
}
#mv .mv_img li.pos_rt img {
  object-position: 90% 5%;
}
#mv .mv_img li.pos_l img {
  object-position: 10% 50%;
}
#mv .mv_img li.pos_c img {
  object-position: 50% 50%;
}
#mv .mv_img li.pos_r img {
  object-position: 90% 50%;
}
#mv .mv_img li.pos_lb img {
  object-position: 10% 95%;
}
#mv .mv_img li.pos_cb img {
  object-position: 50% 95%;
}
#mv .mv_img li.pos_rb img {
  object-position: 90% 95%;
}

/*---*/

#mv.slide04 .mv_img li:nth-of-type(1):nth-last-of-type(1) img {
  opacity: 1 !important;
  animation-name: none !important;
}

/*---*/

#mv.slide06 .mv_img li,
#mv.slide07 .mv_img li {
  width: 50%;
  left: 0;
}
#mv.slide06 .mv_img li.r,
#mv.slide07 .mv_img li.r {
  left: 50%;
}
@media screen and (max-width: 768px) {
  #mv.slide06 .mv_img li,
  #mv.slide07 .mv_img li,
  #mv.slide06 .mv_img li.r,
  #mv.slide07 .mv_img li.r {
    width: 100%;
    left: 0;
  }
}

/*---*/

#mv.slide08 {
  overflow: hidden;
}
#mv.slide08 .mv_imgs {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  animation-name: slide08;
  /*animation-duration: ;/*js*/
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
@keyframes slide08 {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
#mv.slide08 .mv_img {
  display: flex;
  width: auto;
  align-items: stretch;
  justify-content: flex-start;
  position: static;
}
#mv.slide08 .mv_img li {
  min-width: 40vw; /*vwで指定 33.3～100vw*/
  position: relative;
  opacity: 1 !important;
  display: block;
}
@media screen and (max-width: 1400px) {
  #mv.slide08 .mv_img li {
    min-width: 50vw; /*vwで指定 33.3～100vw*/
  }
}
@media screen and (max-width: 800px) {
  #mv.slide08 .mv_img li {
    min-width: 70vw; /*vwで指定 33.3～100vw*/
  }
}
@media screen and (max-width: 500px) {
  #mv.slide08 .mv_img li {
    min-width: 90vw; /*vwで指定 33.3～100vw*/
  }
}
#mv.slide08 .mv_img li img {
  opacity: 1 !important;
  width: 140% !important;
  animation-name: slide08_i;
  /*animation-duration: ;/*js*/
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
@keyframes slide08_i {
  0% {
    transform: translateX(-28.57%); /*140*0.2857=40*/
  }
  100% {
    transform: translateX(0);
  }
}
#mv.slide08 .mv_img li:first-child:last-child {
  width: 100%;
}
#mv.slide08 .mv_img li:first-child:last-child img {
  margin: 0;
}
#mv.slide08 .mv_arrow,
#mv.slide08 .mv_pointer {
  display: none;
}
#mv.slide08 .mv_scroll {
  bottom: 20px;
}

/*---*/

#mv.slide09 .mv_img li,
#mv.slide10 .mv_img li {
  display: block !important;
}
#mv.slide09 .mv_img li.show {
  animation-name: slide09_i;
}
#mv.slide10 .mv_img li.show {
  animation-name: slide10_i;
}
#mv.slide09 .mv_img li.show,
#mv.slide10 .mv_img li.show {
  /*animation-duration: ;/*js*/
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}
@keyframes slide09_i {
  /*ズームイン ease-out推奨*/
  0% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(1.2, 1.2) rotate(0.1deg);
  }
}
@keyframes slide10_i {
  /*ズームイン ease-out推奨*/
  0% {
    transform: scale(1.2, 1.2);
  }
  100% {
    transform: scale(1, 1) rotate(0.1deg);
  }
}

/*--mp4--*/

#mv .mv_mp4 {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
.edit_view #mv .mv_mp4 {
  pointer-events: none;
}
#mv .mv_mp4 video {
  display: block;
}
#mv.mv_mp4_cover .mv_mp4 video,
#mv.mv_mp4_cover2 .mv_mp4 video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#mv.mv_mp4_contain .mv_mp4 video {
  width: 100%;
  height: 100%;
}
#mv.mv_mp4_contain {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}
#mv .mv_mp4 ~ .mv_nav .mv_pointer,
#mv .mv_mp4 ~ .mv_nav .mv_arrow {
  display: none;
}
@media screen and (max-width: calc(100vh * (5/4))) {
  #mv.mv_mp4_cover {
    /*最小アスペクト比5:4*/
    height: calc(100vw / (5 / 4)) !important;
    min-height: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  #mv.mv_mp4_cover2 {
    height: 90vh;
    height: 90dvh;
  }
  header.over ~ #mv_outer #mv.mv_mp4_cover2 {
    height: 100vh;
    height: 100dvh;
  }
}

/*15秒MP4 IPP3_CORRECTION-3665*/
#mv.mv_mp4_pv .mv_nav {
  display: none;
}
#mv.mv_mp4_pv:after {
  display: none;
}
body:not(.edit_view).done #mv.mv_mp4_pv .mv_text,
body:not(.edit_view).done #mv.mv_mp4_pv .mv_textimg {
  transition: opacity 1s 10s ease-in-out;
  opacity: 0;
}

/*--mv_mov--*/

#mv .mv_mov {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
#mv:not(.playstop) .mv_mov {
  pointer-events: none;
}
#mv .mv_mov iframe {
  min-width: 100%;
  min-height: 100%;
  transform: scale(1.01);
  transform-origin: 50% 50%;
}
#mv .mv_mov ~ .mv_nav .mv_pointer,
#mv .mv_mov ~ .mv_nav .mv_arrow {
  display: none !important;
}

/*--mv_text--*/

#mv .mv_text {
  position: absolute;
  display: flex;
  z-index: 10;
  width: 1200px;
  left: calc(50% - 600px);
  pointer-events: none;
}
.edit_view #mv .mv_text {
  pointer-events: auto;
}
.MvP {
  padding-top: 50px;
}
main > section:not(.composite_box01).MvP.align-center .inner_item_txt {
  text-align: center;
}
@media screen and (max-width: 1300px) {
  #mv .mv_text {
    left: 50px;
    width: calc(100% - 100px);
  }
}
@media screen and (max-width: 600px) {
  #mv .mv_text p.move {
    display: none;
  }
  /*/IPP3_CORRECTION-3693*/
  #mv .mv_text p:not(.static) {
    display: none !important;
  }
  /**/
  .MvP {
    padding-top: 50px;
  }
}
@media screen and (max-width: 400px) {
  #mv .mv_text {
    left: var(--i_padding, 20px);
    width: calc(100% - var(--i_padding, 20px) * 2);
  }
}
#mv .mv_text > div {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#mv .mv_text.wmode_horizontal > div {
  width: auto;
}
#mv .mv_text.wmode_horizontal.t_align_center > div {
  width: auto;
}
#mv .mv_text.wmode_horizontal.t_align_left > div {
  margin-left: 0;
  margin-right: auto;
}
#mv .mv_text.wmode_horizontal.t_align_right > div {
  margin-left: auto;
  margin-right: 0;
}
#mv .mv_text h2,
#mv .mv_text p {
  display: block;
  min-height: 3rem;
}

.edit_view #mv #conv {
  pointer-events: none;
}
#mv #conv {
  padding: 20px 0 0;
}
#mv .mv_text.wmode_horizontal #conv {
  writing-mode: horizontal-tb;
}
#mv #conv:not(:first-child) {
  padding-top: 50px;
}
#mv #conv .w {
  pointer-events: auto;
  display: inline-block;
  text-align: center;
  border-top: 1px solid;
  border-bottom: 1px solid;
  padding: 10px 10px;
  line-height: 1.5;
  position: relative;
}
#mv #conv .p {
  font-size: 1.8rem;
  margin-bottom: 5px;
}
#mv #conv .tel {
  font-size: 4.5rem;
  letter-spacing: 0.1em;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
#mv #conv .tel:has(+ div:not(.ic)) {
  margin-bottom: 10px;
}
#mv #conv .tel svg {
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-right: 10px;
  margin-top: 5px;
}
#mv #conv .ic {
  width: 85px;
  height: 85px;
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(89%) translateY(-55%);
}
#mv #conv .ic a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border-radius: 300px;
  background-color: var(--i_btn_color);
  color: var(--i_btn_txt_color);
  overflow: hidden;
}
#mv #conv .ic a:hover {
  background-color: var(--i_btn_hover_color);
  color: var(--i_btn_hover_txt_color);
}
#mv #conv .ic img {
  display: block;
  width: 30px;
  height: 30px;
  object-fit: contain;
}
#mv #conv .ic a i {
  font-style: normal;
  font-size: 1.2rem;
  line-height: 1.4;
  letter-spacing: 0;
}
#mv #conv .ic a img + i {
  padding-top: 4px;
}
#mv:has(.mv_textimg) #conv,
#mv:has(.mv_textimg) #conv .tel a {
  color: #fff;
}
#mv:has(.mv_textimg) #conv .w {
  border-color: #fff;
}
#mv:has(.mv_textimg) #conv svg {
  fill: #fff;
}
@media screen and (max-width: 768px) {
  #mv #conv {
    display: none;
  }
}

.ind #mv li .mv_text_ind {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  pointer-events: none;
  box-sizing: border-box;
  padding: 30px;
  line-height: 1.6;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
  animation-duration: 0.5s;
}
.ind #mv li.show .mv_text_ind {
  animation-name: mv_text_ind;
}
@keyframes mv_text_ind {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.ind #mv li .mv_text_ind h2,
.ind #mv li .mv_text_ind p {
  color: #fff;
  opacity: 0;
}
.ind #mv li .mv_text_ind h2 {
  font-size: 2.8rem;
}
.ind #mv li .mv_text_ind p {
  font-size: 2rem;
}
.ind #mv li .mv_text_ind h2 + p {
  padding-top: 5px;
}
.ind #mv li.show .mv_text_ind h2,
.ind #mv li.show .mv_text_ind p {
  animation-name: li_p;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  animation-duration: 0.7s;
  animation-delay: 0.6s;
}
.ind #mv.slide03 li.show .mv_text_ind h2,
.ind #mv.slide05 li.show .mv_text_ind h2,
.ind #mv.slide09 li.show .mv_text_ind h2,
.ind #mv.slide10 li.show .mv_text_ind h2,
.ind #mv.slide03 li.show .mv_text_ind p,
.ind #mv.slide05 li.show .mv_text_ind p,
.ind #mv.slide09 li.show .mv_text_ind p,
.ind #mv.slide10 li.show .mv_text_ind p {
  animation-name: li_p3;
}
.ind #mv.slide08 li .mv_text_ind h2,
.ind #mv.slide08 li .mv_text_ind p {
  opacity: 1;
}
@keyframes li_p {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes li_p3 {
  0% {
    opacity: 0;
    transform: translateX(30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@media screen and (max-width: 600px) {
  .ind #mv li .mv_text_ind h2 {
    font-size: 2.6rem;
  }
  .ind #mv li .mv_text_ind p {
    font-size: 1.6rem;
    line-height: 1.6;
  }
}

/*t_align_center*/
#mv .mv_text.t_align_center {
  text-align: center;
}
#mv .mv_text.t_align_center > div {
  margin-left: auto;
  margin-right: auto;
}

/*t_align_right*/
#mv .mv_text.t_align_right {
  text-align: right;
}
#mv .mv_text.t_align_right > div {
  margin-left: auto;
  margin-right: 0;
}

/*wmode_horizontal*/
#mv .mv_text.wmode_horizontal {
  align-items: center;
}
#mv .mv_text.wmode_horizontal > div {
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
#mv .mv_text.wmode_horizontal h2 {
  line-height: 1.5;
}
#mv .mv_text.wmode_horizontal p {
  padding-top: 0;
  padding-right: 30px;
  line-height: 2;
}
/*wmode_horizontal || t_align_left*/
#mv .mv_text.wmode_horizontal.t_align_left {
  align-items: flex-end;
}
/*wmode_horizontal || t_align_center*/
#mv .mv_text.wmode_horizontal.t_align_center > div {
  text-align: left;
}
/*wmode_horizontal || t_align_right*/
#mv .mv_text.wmode_horizontal.t_align_right > div {
  text-align: left;
}

#mv .mv_scroll {
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: 20px;
  left: calc(50% - 25px);
  z-index: 15;
}
#mv .mv_scroll a {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -10000px;
  outline: none;
  line-height: 1px;
  font-size: 1px;
}
#mv .mv_scroll a:before {
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 9.5px;
}

#mv .mv_pointer {
  display: block;
  width: 100%;
  height: 20px;
  position: absolute;
  bottom: 10px;
  left: 0;
  box-sizing: border-box;
  padding: 0 20px;
  z-index: 10;
}
#mv .mv_pointer li {
  display: inline-block;
  width: 40px;
  height: 20px;
  margin: 0 5px 0 0;
  cursor: pointer;
  transition: 0.3s ease-in-out;
}
#mv .mv_pointer li:before {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  margin-top: 9px;
  transition: 0.3s ease-in-out;
}
#mv .mv_pointer li.current {
  width: 60px;
}

#mv .mv_arrow {
  position: absolute;
  top: calc(50% - 25px);
  left: 0;
  height: 0;
  width: 100%;
  overflow: visible;
  display: block;
  z-index: 10;
}
#mv .mv_arrow li {
  display: block;
  width: 50px;
  height: 50px;
}
#mv .mv_arrow li.mv_arrow_prev {
  float: left;
}
#mv .mv_arrow li.mv_arrow_next {
  float: right;
}
#mv .mv_arrow li span {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -10000px;
  outline: none;
  line-height: 1px;
  font-size: 1px;
  cursor: pointer;
  position: relative;
}
#mv .mv_arrow li.mv_arrow_prev span:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  transform: rotate(-45deg);
  position: absolute;
  top: 14px;
  left: 17px;
}
#mv .mv_arrow li.mv_arrow_next span:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  transform: rotate(135deg);
  position: absolute;
  top: 14px;
  left: 10px;
}

@media screen and (max-width: 800px) {
  #mv .mv_pointer {
    bottom: 0;
  }
  #mv .mv_pointer li {
    width: 20px;
  }
  #mv .mv_pointer li.current {
    width: 30px;
  }
}
@media screen and (max-width: 100vh) {
  #mv.spfullheight {
    height: 100vh !important;
  }
}

#mv_outer #mv .mv_text div p.static {
  display: inherit !important;
}
@media screen and (max-width: 600px) {
  #mv_outer #mv .mv_text div p.static {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  #mv_outer #mv .mv_text.none,
  #mv_outer #mv .mv_text div p.none {
    display: none !important;
  }
}

#mv.slide04,
#mv.slide05 {
  max-width: 1980px;
  max-height: none !important;
  min-height: 0 !important;
}
#mv.slide04 .mv_img li img,
#mv.slide05 .mv_img li img {
  object-fit: contain;
  object-position: 50% 50%;
  max-width: none;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1980px) {
  #mv.slide04,
  #mv.slide05 {
    margin-left: auto;
    margin-right: auto;
  }
}

/*--------------------------------MVFIXED--------------------------------*/

body.index.fixedmv main {
  transform: translateY(90vh);
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 100vh) {
  body.index.fixedmv main {
    transform: translateY(65vh);
  }
}
body.fixedmv #mv_outer {
  height: 90vh;
  width: 100%;
  z-index: 1;
  position: fixed;
  top: 0;
  left: 0;
}
body.index.fixedmv footer {
  margin-top: 90vh;
}
@media screen and (max-width: 100vh) {
  body.fixedmv #mv_outer {
    height: 65vh;
  }
  body.index.fixedmv footer {
    margin-top: 65vh;
  }
}
@media screen\0 {
  /*ie8-11*/
  body.index.fixedmv main {
    transform: translateY(0) !important;
  }
  body.fixedmv #mv_outer {
    position: relative !important;
  }
  body.fixedmv footer {
    margin-top: 0 !important;
  }
}
body.fixedmv.edit_view #mv_outer {
  position: relative !important;
}

/*--------------------------------MV mp4 追加デザイン--------------------------------*/

#mv_outer:has(.d1) {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
#mv.d1 {
  height: auto;
  border-radius: 40px;
  overflow: hidden;
}
#mv.d1:after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
  height: 40%;
  top: auto;
  bottom: 0;
}
#mv.d2 .mv_mp4 {
  height: auto;
}
#mv.d1 .mv_text {
  height: calc(100% - 100px);
  bottom: 50px;
  align-items: flex-end;
}
#mv.d1 .mv_scroll,
#mv.d1 .mv_pointer,
#mv.d1 .mv_arrow,
#mv.d1:before {
  display: none;
}
@media screen and (max-width: 768px) {
  #mv_outer:has(.d1) {
    border-radius: 7vw;
  }
}

/*---------*/

/*mv_mp4_cover mv_mp4_cover2 mv_mp4_contain 無効*/
#mv_outer:has(.d2) {
  width: 100%;
  z-index: 1;
}
#mv.d2 .mv_mp4,
#mv.d2:after {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
}
#mv.d2 .mv_scroll,
#mv.d2 .mv_pointer,
#mv.d2 .mv_arrow,
#mv.d2:before {
  display: none;
}

/*---------*/

#mv_outer:has(.d3) {
  background: none;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
}
#mv.d3 {
  height: auto;
}
#mv.d3 .mv_mp4 {
  height: 100%;
  width: 75%;
  margin-left: 25%;
  border-bottom-left-radius: 40vh;
}
#mv.d3.mv_mp4_contain .mv_mp4 {
  /*元サイズ*/
  height: auto !important;
}
#mv.d3 .mv_text * {
  color: var(--i_txt_color);
}
#mv.d3 .mv_text > div {
  max-width: 80vw !important;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
#mv.d3:before,
#mv.d3:after,
#mv.d3 .mv_scroll,
#mv.d3 .mv_pointer,
#mv.d3 .mv_arrow {
  display: none;
}
/*元サイズ*/
#mv.d3.mv_mp4_contain {
  min-height: 0 !important;
}
#mv.d3.mv_mp4_contain .mv_mp4 {
  /*元サイズ*/
  height: auto !important;
}
@media screen and (max-width: 1400px) {
  #mv.d3 .mv_text > div {
    max-width: 1200px !important;
  }
}
@media screen and (max-width: 768px) {
  #mv.d3 .mv_mp4 {
    width: 82%;
    border-bottom-left-radius: 30vh;
  }
  #mv.d3.mv_mp4_cover2 .mv_mp4 {
    /*トリミング（SP時フルスクリーン）=サイズ任意*/
    height: 90vh !important;
  }
  #mv.d3 .mv_text {
    height: auto;
    bottom: 20px;
  }
}
@media screen and (max-width: 600px) {
  #mv.d3 .mv_mp4 {
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
  #mv.d3 .mv_mp4 {
    border-bottom-left-radius: 40vw;
  }
}

/*---------*/

#mv_outer:has(.d4) {
  background: none;
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
}
#mv.d4 {
  height: auto;
  padding-bottom: 100px;
}
#mv.d4:after,
#mv.d4.mv_mp4_pv:after {
  display: block;
  height: auto;
  width: 80%;
  background: var(--i_main_color);
  height: calc(100% - 100px);
  z-index: -1;
  top: auto;
  bottom: 0;
}
#mv.d4 .mv_mp4 {
  height: 100%;
  width: 80%;
  margin-left: 20%;
  box-shadow: 10px 10px 50px rgba(0, 0, 0, 0.2);
}
#mv.d4 .mv_text {
  height: calc(100% - 140px);
  bottom: 120px;
}
#mv.d4 .mv_text > div {
  max-width: 1500px !important;
  margin-left: auto;
  margin-right: auto;
}
#mv.d4:before,
#mv.d4 .mv_scroll,
#mv.d4 .mv_pointer,
#mv.d4 .mv_arrow {
  display: none;
}
/*元サイズ*/
#mv.d4.mv_mp4_contain {
  min-height: 0 !important;
}
#mv.d4.mv_mp4_contain .mv_mp4 {
  height: auto !important;
}
@media screen and (max-width: 900px) {
  #mv.d4 {
    height: auto !important;
    padding-bottom: 50px;
  }
  #mv.d4:after {
    width: 90%;
    height: calc(100% - 50px);
  }
  #mv.d4 .mv_mp4 {
    width: 90%;
    margin-left: 10%;
  }
  #mv.d4 .mv_text {
    height: calc(100% - 140px);
    align-items: flex-end;
    bottom: 70px;
  }
}
@media screen and (max-width: 768px) {
  #mv.d4 {
    padding-bottom: 5vw;
  }
  #mv.d4 .mv_mp4 {
    width: 95%;
    margin-left: 5%;
  }
  #mv.d4.mv_mp4_cover2 .mv_mp4 {
    /*トリミング（SP時フルスクリーン）=サイズ任意*/
    height: 90vh !important;
  }
  #mv.d4 .mv_text {
    height: calc(100% - 6vw);
    bottom: 5vw;
  }
}

/*---------*/

/*mv_mp4_cover mv_mp4_cover2 mv_mp4_contain 無効*/
#mv_outer:has(.d5) {
  width: 100%;
  z-index: 1;
}
#mv.d5 {
  height: 100vh;
}
#mv.d5:after,
#mv.d5.mv_mp4_pv:after {
  display: block;
  content: '';
  display: block;
  width: 100%;
  height: 100%;
}
#mv.d5 .mv_mp4,
#mv.d5:after {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
}
#mv.d5 .mv_text,
#mv.d5:after {
  transition: 0.8s ease-in-out;
}
.scrolled #mv.d5 .mv_text,
.scrolled #mv.d5 .mv_nav,
body:has(#fixbtn.scrolled) #mv.d5 .mv_text,
body:has(#fixbtn.scrolled) #mv.d5 .mv_nav {
  opacity: 0;
}
.scrolled #mv.d5:after,
body:has(#fixbtn.scrolled) #mv.d5:after {
  background: var(--i_main_color);
}
#mv_outer:has(.d5) + main {
  background: transparent;
  z-index: 2;
}
#mv_outer:has(.d5) + main > * {
  background: var(--i_bg_color);
}
#mv_outer:has(.d5) + main > div:nth-child(2),
#mv_outer:has(.d5) + main > section:nth-child(2),
#mv_outer:has(.d5) + main > a:nth-child(2) + div,
#mv_outer:has(.d5) + main > a:nth-child(2) + section {
  background: transparent;
}
#mv.d5 .mv_scroll,
#mv.d5 .mv_pointer,
#mv.d5 .mv_arrow,
#mv.d5:before {
  display: none;
}

/*-----------------mv_textimg----------------*/

#mv .mv_textimg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex !important;
  z-index: 10;
  pointer-events: none;
}
#mv .mv_textimg .mv_textimg_pc,
#mv .mv_textimg .mv_textimg_sp {
  position: relative;
  display: inline-block;
}
#mv .mv_textimg img {
  display: block;
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
}
#mv .mv_textimg a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: auto;
}
@media screen and (min-width: 769px) {
  /*pc*/
  #mv .mv_textimg:has(.mv_textimg_pc.pos_lt),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_ct),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_rt) {
    align-items: flex-start;
  }
  #mv .mv_textimg:has(.mv_textimg_pc.pos_l),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_c),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_r) {
    align-items: center;
  }
  #mv .mv_textimg:has(.mv_textimg_pc.pos_lb),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_cb),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_rb) {
    align-items: flex-end;
  }
  #mv .mv_textimg:has(.mv_textimg_pc.pos_lt),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_l),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_lb) {
    justify-content: flex-start;
  }
  #mv .mv_textimg:has(.mv_textimg_pc.pos_ct),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_c),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_cb) {
    justify-content: center;
  }
  #mv .mv_textimg:has(.mv_textimg_pc.pos_rt),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_r),
  #mv .mv_textimg:has(.mv_textimg_pc.pos_rb) {
    justify-content: flex-end;
  }
  #mv .mv_textimg .mv_textimg_pc {
    display: inline-block;
  }
  #mv .mv_textimg .mv_textimg_sp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  /*sp*/
  #mv .mv_textimg:has(.mv_textimg_sp.pos_lt),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_ct),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_rt) {
    align-items: flex-start;
  }
  #mv .mv_textimg:has(.mv_textimg_sp.pos_l),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_c),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_r) {
    align-items: center;
  }
  #mv .mv_textimg:has(.mv_textimg_sp.pos_lb),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_cb),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_rb) {
    align-items: flex-end;
  }
  #mv .mv_textimg:has(.mv_textimg_sp.pos_lt),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_l),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_lb) {
    justify-content: flex-start;
  }
  #mv .mv_textimg:has(.mv_textimg_sp.pos_ct),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_c),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_cb) {
    justify-content: center;
  }
  #mv .mv_textimg:has(.mv_textimg_sp.pos_rt),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_r),
  #mv .mv_textimg:has(.mv_textimg_sp.pos_rb) {
    justify-content: flex-end;
  }
  #mv .mv_textimg .mv_textimg_pc {
    display: none;
  }
  #mv .mv_textimg .mv_textimg_sp {
    display: inline-block;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  content: '';
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}
