/*! Writen  by SCSS */
.mainvisual {
  overflow: hidden;
  position: relative;
  aspect-ratio: 1920 / 1300;
  /*
  .last_copy_wrap{
  	position: absolute;
  	inset:0;
  	top:16%;
  	bottom:auto;
  	display: flex;
  	align-items:center;
  	flex-direction: column;
  	row-gap:20px;
  	@include mq($br_sp){
  		top:21%;
  	}
  	.maincopy_wrap{
  		color:#FFF;
  		&.copy03{
  			@include mq($br_sp){
  				text-indent:1.1em;
  			}
  			.maincopy{
  				font-size:clamp_gm(40,1600,80);
  				letter-spacing: 0.35em;
  				line-height: 1;
  				span{
  					&:nth-of-type(2){transition-delay:0.1s!important;}
  					&:nth-of-type(3){transition-delay:0.2s!important;}
  					&:nth-of-type(4){transition-delay:0.3s!important;}
  					&:nth-of-type(5){transition-delay:0.4s!important;}
  					&:nth-of-type(6){transition-delay:0.5s!important;}
  				}
  			}
  		}
  		&.copy04{
  			.maincopy{
  				font-size:clamp_gm(16,1600,30);
  				letter-spacing: 0.5em;
  				span{
  					&:nth-of-type(2){transition-delay:0.1s!important;}
  					&:nth-of-type(3){transition-delay:0.2s!important;}
  					&:nth-of-type(4){transition-delay:0.3s!important;}
  					&:nth-of-type(5){transition-delay:0.4s!important;}
  					&:nth-of-type(6){transition-delay:0.5s!important;}
  					&:nth-of-type(7){transition-delay:0.6s!important;}
  					&:nth-of-type(8){transition-delay:0.7s!important;}
  					&:nth-of-type(9){transition-delay:0.8s!important;}
  					&:nth-of-type(10){transition-delay:0.9s!important;}
  					&:nth-of-type(11){transition-delay:1s!important;}
  					&:nth-of-type(12){transition-delay:1.1s!important;}
  				}
  			}
  		}
  	}
  	
  }
  */ }
  @media screen and (max-width: 1050px) {
    .mainvisual {
      margin-top: 83px; } }
  @media screen and (max-width: 480px) {
    .mainvisual {
      margin-top: 82px;
      aspect-ratio: 414 / 605; } }
  .mainvisual:after {
    content: "";
    position: absolute;
    inset: 0;
    background: #FFF;
    opacity: 0;
    transition: 0.5s opacity linear 0s !important;
    pointer-events: none; }
  .mainvisual .inset {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center; }
  .mainvisual .main_bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .mainvisual .main_bg:before {
      position: absolute;
      inset: 0;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center; }
  .mainvisual .maincopy_wrap {
    text-align: center;
    bottom: auto;
    top: 40%; }
    .mainvisual .maincopy_wrap .maincopy {
      font-size: clamp(26px, 2.5vw, 40px);
      line-height: 1.4;
      letter-spacing: 0.05em;
      transition: 1s opacity ease-in-out 0s !important; }
      @media screen and (max-width: 480px) {
        .mainvisual .maincopy_wrap .maincopy {
          font-size: 7vw; } }
      .mainvisual .maincopy_wrap .maincopy span {
        transition: 0.8s opacity ease-in-out 0s !important;
        opacity: 0;
        position: relative; }
        .mainvisual .maincopy_wrap .maincopy span.main_num i {
          display: inline-block;
          font-style: normal;
          position: absolute;
          inset: 0; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(2) {
          transition-delay: 0.07s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(3) {
          transition-delay: 0.14s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(4) {
          transition-delay: 0.21s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(5) {
          transition-delay: 0.28s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(6) {
          transition-delay: 0.35s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(7) {
          transition-delay: 0.42s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(8) {
          transition-delay: 0.49s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(9) {
          transition-delay: 0.56s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(10) {
          transition-delay: 0.63s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(11) {
          transition-delay: 0.7s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(12) {
          transition-delay: 0.77s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(13) {
          transition-delay: 0.84s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(14) {
          transition-delay: 0.91s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(15) {
          transition-delay: 0.98s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(16) {
          transition-delay: 1.05s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(17) {
          transition-delay: 1.12s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(18) {
          transition-delay: 1.19s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(19) {
          transition-delay: 1.26s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(20) {
          transition-delay: 1.33s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(21) {
          transition-delay: 1.4s !important; }
        .mainvisual .maincopy_wrap .maincopy span:nth-of-type(22) {
          transition-delay: 1.47s !important; }
@keyframes big_fadeout {
  0% {
    transform: scale(1);
    opacity: 1; }
  100% {
    transform: scale(1.6);
    opacity: 0; } }
  .mainvisual .scene01 .main_bg {
    opacity: 0;
    transition: 1s opacity ease-in-out 0s !important;
    background: linear-gradient(to right, #FFF 0%, rgba(154, 125, 68, 0.4) 100%);
    /*
    background-image:url("../images/main/main_bg01.jpg");
    @include mq($br_sp){
    	background-image:url("../images/main/main_bg01_sp.jpg");
    }
    */ }
  .mainvisual .scene02 {
    background: #FFF;
    opacity: 0;
    transition: 1s filter linear 0s, 1s opacity ease-in-out 0s !important; }
    .mainvisual .scene02 .main_view_wrap {
      transition: 2.2s transform ease-in-out 0s !important; }
      .mainvisual .scene02 .main_view_wrap .main_view {
        position: absolute;
        inset: 0;
        line-height: 0;
        /*
        &:after{
        	content:"";
        	position: absolute;
        	inset:0;
        	height: 100vh;
        	background: linear-gradient(to right, #FFF 0%,rgba(#FFF,0) 100%);
        	transition:1s opacity ease-in-out 0s!important;
        }
        */ }
        .mainvisual .scene02 .main_view_wrap .main_view .main_view_in {
          display: block;
          position: absolute;
          inset: 0;
          opacity: 0;
          width: 100%;
          opacity: 0;
          filter: blur(10px) brightness(10);
          transition: 1.6s opacity ease-in-out 0s, 1.6s filter ease-in-out 0s !important;
          transform-origin: top center; }
      .mainvisual .scene02 .main_view_wrap .main_shine,
      .mainvisual .scene02 .main_view_wrap .main_line,
      .mainvisual .scene02 .main_view_wrap .main_prot {
        position: absolute;
        inset: 0;
        line-height: 0;
        aspect-ratio: 1920 / 930; }
        @media screen and (max-width: 480px) {
          .mainvisual .scene02 .main_view_wrap .main_shine,
          .mainvisual .scene02 .main_view_wrap .main_line,
          .mainvisual .scene02 .main_view_wrap .main_prot {
            aspect-ratio: 414 / 514; } }
        .mainvisual .scene02 .main_view_wrap .main_shine img,
        .mainvisual .scene02 .main_view_wrap .main_line img,
        .mainvisual .scene02 .main_view_wrap .main_prot img {
          display: block;
          position: absolute;
          inset: 0;
          width: 100%; }
      .mainvisual .scene02 .main_view_wrap .main_shine {
        clip-path: inset(100% 0 0 0);
        transition: 2s clip-path ease-in-out 0s !important;
        mix-blend-mode: screen; }
      .mainvisual .scene02 .main_view_wrap .main_line img {
        clip-path: inset(100% 0 0 0);
        transition: 1.5s clip-path ease-in-out 0s !important; }
      .mainvisual .scene02 .main_view_wrap .main_prot img {
        opacity: 0;
        transform: translateY(20px);
        transition: 1s transform ease-in-out 0s, 1s opacity ease-in-out 0s !important; }
  .mainvisual .scene03 {
    opacity: 0;
    background: #FFF;
    transition: 1s opacity ease-in-out 0s !important; }
    .mainvisual .scene03 .main_bg {
      overflow: hidden;
      transition: 1s filter ease-in-out 0s !important; }
      .mainvisual .scene03 .main_bg.bg02 {
        width: 61.46%; }
        @media screen and (max-width: 480px) {
          .mainvisual .scene03 .main_bg.bg02 {
            width: 100%; } }
        .mainvisual .scene03 .main_bg.bg02:before {
          content: "";
          opacity: 0;
          filter: sepia(100%);
          transition: 1s opacity ease-in-out 0s, 3s transform ease-in-out 0s, 3s filter ease-in-out 0s !important;
          filter: blur(10px);
          transform: scale(1.3);
          transform-origin: center;
          will-change: opacity,filter,transform;
          background-image: url("../images/main/main_bg02.jpg"); }
          @media screen and (max-width: 480px) {
            .mainvisual .scene03 .main_bg.bg02:before {
              background-image: url("../images/main/main_bg02_sp.jpg"); } }
      .mainvisual .scene03 .main_bg.bg02_grad:before {
        content: "";
        opacity: 0;
        transition: 1s opacity ease-in-out 0s !important;
        background: linear-gradient(to right, #FFF 0%, rgba(154, 125, 68, 0.4) 100%); }
      .mainvisual .scene03 .main_bg .main_cap {
        position: absolute;
        right: 0;
        bottom: 0;
        font-size: 10px;
        color: #FFF;
        padding: 5px;
        text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.6), 0px 0px 1px rgba(0, 0, 0, 0.6), 0px 0px 2px rgba(0, 0, 0, 0.6), 0px 0px 3px rgba(0, 0, 0, 0.6), 0px 0px 4px rgba(0, 0, 0, 0.6), 0px 0px 5px rgba(0, 0, 0, 0.6), 0px 0px 6px rgba(0, 0, 0, 0.6), 0px 0px 7px rgba(0, 0, 0, 0.6), 0px 0px 8px rgba(0, 0, 0, 0.6), 0px 0px 9px rgba(0, 0, 0, 0.6), 0px 0px 10px rgba(0, 0, 0, 0.6); }
    .mainvisual .scene03 .main_right {
      overflow: hidden;
      position: absolute;
      inset: 0;
      left: auto;
      width: 38.54%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      row-gap: 120px; }
      @media screen and (max-width: 1400px) {
        .mainvisual .scene03 .main_right {
          row-gap: 60px; } }
      @media screen and (max-width: 480px) {
        .mainvisual .scene03 .main_right {
          left: 0;
          bottom: auto;
          width: 100%;
          top: 5%; } }
      .mainvisual .scene03 .main_right:before {
        content: "";
        position: absolute;
        inset: 0;
        opacity: 0;
        filter: sepia(100%);
        transition: 1s opacity ease-in-out 0s, 3s transform ease-in-out 0s, 3s filter ease-in-out 0s !important;
        filter: blur(10px);
        transform: scale(1.3);
        transform-origin: center;
        background-size: cover;
        will-change: opacity,filter,transform;
        background-image: url("../images/main/main_bg03.png"); }
        @media screen and (max-width: 480px) {
          .mainvisual .scene03 .main_right:before {
            content: none; } }
      .mainvisual .scene03 .main_right .main_copy {
        width: 71.39%;
        margin: 0 auto;
        opacity: 0;
        transform: scale(1.2);
        transition: 1s opacity ease-in-out 0s, 1s transform ease-in-out 0s !important; }
        @media screen and (max-width: 820px) {
          .mainvisual .scene03 .main_right .main_copy {
            width: 85%; } }
        @media screen and (max-width: 480px) {
          .mainvisual .scene03 .main_right .main_copy {
            width: 60.38%; } }
      .mainvisual .scene03 .main_right .main_merit {
        width: 59%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        row-gap: 30px; }
        @media screen and (max-width: 1400px) {
          .mainvisual .scene03 .main_right .main_merit {
            row-gap: 20px; } }
        @media screen and (max-width: 820px) {
          .mainvisual .scene03 .main_right .main_merit {
            width: 75%; } }
        @media screen and (max-width: 480px) {
          .mainvisual .scene03 .main_right .main_merit {
            display: none; } }
        .mainvisual .scene03 .main_right .main_merit .main_merit_img {
          opacity: 0;
          transform: translateY(20px);
          transition: 1s opacity ease-in-out 0s, 1s transform ease-in-out 0s !important; }
          .mainvisual .scene03 .main_right .main_merit .main_merit_img:nth-of-type(2) {
            transition-delay: 0.3s !important; }
          .mainvisual .scene03 .main_right .main_merit .main_merit_img:nth-of-type(3) {
            transition-delay: 0.6s !important; }
          .mainvisual .scene03 .main_right .main_merit .main_merit_img:nth-of-type(4) {
            transition-delay: 0.9s !important; }
          .mainvisual .scene03 .main_right .main_merit .main_merit_img:nth-of-type(5) {
            transition-delay: 1.2s !important; }
  .mainvisual .twincle {
    position: absolute;
    inset: 0;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: 2s opacity ease-in-out 0s !important;
    width: 100%; }
    .mainvisual .twincle li {
      position: absolute;
      inset: 0;
      background: center center/cover no-repeat;
      opacity: 0; }
      .mainvisual .twincle li.tw01 {
        animation-delay: -0.5s !important;
        animation-duration: 24s !important;
        background-image: url(../images/main/tw01.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw01 {
            background-image: url(../images/main/tw01_sp.png); } }
      .mainvisual .twincle li.tw02 {
        animation-delay: -1.5s !important;
        animation-duration: 36s !important;
        background-image: url(../images/main/tw02.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw02 {
            background-image: url(../images/main/tw02_sp.png); } }
      .mainvisual .twincle li.tw03 {
        animation-delay: -3.5s !important;
        animation-duration: 18s !important;
        background-image: url(../images/main/tw03.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw03 {
            background-image: url(../images/main/tw03_sp.png); } }
      .mainvisual .twincle li.tw04 {
        animation-delay: -2s !important;
        animation-duration: 26s !important;
        background-image: url(../images/main/tw04.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw04 {
            background-image: url(../images/main/tw04_sp.png); } }
      .mainvisual .twincle li.tw05 {
        animation-delay: -1s !important;
        animation-duration: 30s !important;
        background-image: url(../images/main/tw05.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw05 {
            background-image: url(../images/main/tw05_sp.png); } }
      .mainvisual .twincle li.tw06 {
        animation-delay: -2.5s !important;
        animation-duration: 17s !important;
        background-image: url(../images/main/tw06.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw06 {
            background-image: url(../images/main/tw06_sp.png); } }
      .mainvisual .twincle li.tw07 {
        animation-delay: -3s !important;
        animation-duration: 32s !important;
        background-image: url(../images/main/tw07.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw07 {
            background-image: url(../images/main/tw07_sp.png); } }
      .mainvisual .twincle li.tw08 {
        animation-delay: -3s !important;
        animation-duration: 24s !important;
        background-image: url(../images/main/tw07.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw08 {
            background-image: url(../images/main/tw07_sp.png); } }
      .mainvisual .twincle li.tw09 {
        animation-delay: -2.5s !important;
        animation-duration: 20s !important;
        background-image: url(../images/main/tw06.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw09 {
            background-image: url(../images/main/tw06_sp.png); } }
      .mainvisual .twincle li.tw10 {
        animation-delay: -4s !important;
        animation-duration: 18s !important;
        background-image: url(../images/main/tw05.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw10 {
            background-image: url(../images/main/tw05_sp.png); } }
      .mainvisual .twincle li.tw11 {
        animation-delay: -2s !important;
        animation-duration: 28s !important;
        background-image: url(../images/main/tw03.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw11 {
            background-image: url(../images/main/tw03_sp.png); } }
      .mainvisual .twincle li.tw12 {
        animation-delay: -3.5s !important;
        animation-duration: 34s !important;
        background-image: url(../images/main/tw04.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw12 {
            background-image: url(../images/main/tw04_sp.png); } }
      .mainvisual .twincle li.tw13 {
        animation-delay: -2s !important;
        animation-duration: 20s !important;
        background-image: url(../images/main/tw02.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw13 {
            background-image: url(../images/main/tw02_sp.png); } }
      .mainvisual .twincle li.tw14 {
        animation-delay: -0.5s !important;
        animation-duration: 32s !important;
        background-image: url(../images/main/tw01.png); }
        @media screen and (max-width: 480px) {
          .mainvisual .twincle li.tw14 {
            background-image: url(../images/main/tw01_sp.png); } }
@keyframes hikari {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  5% {
    opacity: 1; }
  7.5% {
    opacity: 0; }
  10% {
    opacity: 1; }
  12.5% {
    opacity: 0; }
  15% {
    opacity: 1; }
  17.5% {
    opacity: 0; }
  20% {
    opacity: 1; }
  22.5% {
    opacity: 0; }
  25% {
    opacity: 1; }
  27.5% {
    opacity: 0; }
  30% {
    opacity: 1; }
  32.5% {
    opacity: 0; }
  35% {
    opacity: 1; }
  37.5% {
    opacity: 0; }
  40% {
    opacity: 1; }
  42.5% {
    opacity: 0; }
  45% {
    opacity: 1; }
  47.5% {
    opacity: 0; }
  50% {
    opacity: 1; }
  52.5% {
    opacity: 0; }
  55% {
    opacity: 1; }
  57.5% {
    opacity: 0; }
  60% {
    opacity: 1; }
  62.5% {
    opacity: 0; }
  65% {
    opacity: 1; }
  67.5% {
    opacity: 0; }
  70% {
    opacity: 1; }
  72.5% {
    opacity: 0; }
  75% {
    opacity: 1; }
  77.5% {
    opacity: 0; }
  80% {
    opacity: 1; }
  82.5% {
    opacity: 0; }
  85% {
    opacity: 1; }
  87.5% {
    opacity: 0; }
  90% {
    opacity: 1; }
  92.5% {
    opacity: 0; }
  95% {
    opacity: 1; }
  /*
  20%,60% {opacity: 1;}
  40%,80% {opacity: 0.2;}
  */
  100% {
    opacity: 0;
    transform: translateY(-100%); } }
@keyframes hikari_sp {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  5% {
    opacity: 1; }
  7.5% {
    opacity: 0; }
  10% {
    opacity: 1; }
  12.5% {
    opacity: 0; }
  15% {
    opacity: 1; }
  17.5% {
    opacity: 0; }
  20% {
    opacity: 1; }
  22.5% {
    opacity: 0; }
  25% {
    opacity: 1; }
  27.5% {
    opacity: 0; }
  30% {
    opacity: 1; }
  32.5% {
    opacity: 0; }
  35% {
    opacity: 1; }
  37.5% {
    opacity: 0; }
  40% {
    opacity: 1; }
  42.5% {
    opacity: 0; }
  45% {
    opacity: 1; }
  47.5% {
    opacity: 0; }
  50% {
    opacity: 1; }
  52.5% {
    opacity: 0; }
  55% {
    opacity: 1; }
  57.5% {
    opacity: 0; }
  60% {
    opacity: 1; }
  62.5% {
    opacity: 0; }
  65% {
    opacity: 1; }
  67.5% {
    opacity: 0; }
  70% {
    opacity: 1; }
  72.5% {
    opacity: 0; }
  75% {
    opacity: 1; }
  77.5% {
    opacity: 0; }
  80% {
    opacity: 1; }
  82.5% {
    opacity: 0; }
  85% {
    opacity: 1; }
  87.5% {
    opacity: 0; }
  90% {
    opacity: 1; }
  92.5% {
    opacity: 0; }
  95% {
    opacity: 1; }
  /*
  20%,60% {opacity: 1;}
  40%,80% {opacity: 0.2;}
  */
  100% {
    opacity: 0;
    transform: translateY(-100%); } }
  .mainvisual .main_ui {
    position: absolute;
    top: 110px;
    right: 10px;
    overflow: hidden;
    z-index: 3; }
    @media screen and (max-width: 1050px) {
      .mainvisual .main_ui {
        top: 20px;
        right: 20px; } }
    @media screen and (max-width: 480px) {
      .mainvisual .main_ui {
        right: 5px;
        top: 10px; } }
    .mainvisual .main_ui .skip_replay {
      float: left;
      width: 70px;
      text-align: center;
      font-size: 12px;
      line-height: 1;
      color: #FFF;
      padding: 5px 0;
      background: radial-gradient(circle, #a08b15 0%, #806100 100%);
      border: 1px solid rgba(217, 203, 172, 0.5);
      letter-spacing: 0.05em;
      transition: opacity 0.5s ease-in-out 0s !important;
      cursor: pointer; }
      @media screen and (max-width: 480px) {
        .mainvisual .main_ui .skip_replay {
          font-size: 11px;
          width: 60px; } }
      body:not(.mobile) .mainvisual .main_ui .skip_replay:hover {
        opacity: 0.7; }

.mainvisual:not(.main_end) .main_ui .skip_replay .replay {
  display: none; }

.mainvisual:not(.main_end) .main_ui .skip_replay .reload {
  display: none; }

.mainvisual.main_end .main_ui .skip_replay .skip {
  display: none; }

.mainvisual.moving *,
.mainvisual.moving *:before,
.mainvisual.moving *:after {
  transition: 0s all ease-in-out 0.5s !important; }

.mainvisual.moving:after {
  opacity: 1 !important;
  transition: 0.5s all ease-in-out 0s !important; }

#mainvisual.s1 .scene01 .main_bg {
  opacity: 1; }
#mainvisual.s1 .twincle {
  opacity: 1; }
  #mainvisual.s1 .twincle li {
    opacity: 1;
    animation-name: hikari !important;
    animation-timing-function: linear !important;
    animation-iteration-count: infinite !important;
    animation-fill-mode: forwards !important; }
#mainvisual.s1-2 .maincopy_wrap.copy01 .maincopy span {
  opacity: 1; }
  #mainvisual.s1-2 .maincopy_wrap.copy01 .maincopy span.main_num i {
    animation: 1.5s big_fadeout ease-in-out forwards !important;
    animation-delay: 1.26s !important; }
#mainvisual.s2 .twincle {
  opacity: 0; }
#mainvisual.s2 .scene02 {
  opacity: 1; }
  #mainvisual.s2 .scene02 .main_view_wrap .main_view .main_view_in {
    opacity: 1;
    filter: blur(0) brightness(1); }
#mainvisual.s2 .scene2 {
  pointer-events: all; }
  #mainvisual.s2 .scene2 .scene2_main {
    opacity: 1;
    filter: blur(0) saturate(100%) contrast(100%) brightness(100%); }
    #mainvisual.s2 .scene2 .scene2_main:before {
      transform: scale(1.1); }
#mainvisual.s2-2 .scene02 .main_view_wrap .main_view .main_view_in {
  filter: sepia(0);
  opacity: 1; }
#mainvisual.s2-2 .maincopy_wrap.copy01 .maincopy {
  opacity: 0; }
#mainvisual.s2-3 .scene02 .main_view_wrap .main_shine {
  clip-path: inset(0 0 0 0); }
#mainvisual.s2-3 .scene02 .main_view_wrap .main_line img {
  clip-path: inset(0 0 0 0); }
#mainvisual.s2-4 .main_view_wrap .main_prot img {
  opacity: 1;
  transform: translateY(0); }
#mainvisual.s3 .maincopy_wrap.copy01 {
  opacity: 0; }
#mainvisual.s3 .scene02 {
  opacity: 0;
  filter: blur(55px) saturate(0%) contrast(0%) brightness(500%); }
#mainvisual.s3 .scene03 {
  opacity: 1; }
  #mainvisual.s3 .scene03 .main_bg.bg02:before {
    opacity: 0.2; }
  #mainvisual.s3 .scene03 .main_bg.bg02_grad:before {
    opacity: 1; }
  #mainvisual.s3 .scene03 .main_right:before {
    opacity: 0.2; }
#mainvisual.s3 .twincle {
  opacity: 1; }
#mainvisual.s3-2 .maincopy_wrap {
  /*
  &.copy02{
  	.maincopy{
  		span{
  			opacity: 1;
  		}
  	}
  }
  */ }
#mainvisual.s3-2 .scene03 {
  opacity: 1; }
  #mainvisual.s3-2 .scene03 .main_bg {
    filter: brightness(2); }
    #mainvisual.s3-2 .scene03 .main_bg.bg02:before {
      transform: scale(1);
      filter: blur(0) sepia(0); }
    #mainvisual.s3-2 .scene03 .main_bg.bg02_grad:before {
      opacity: 0; }
  #mainvisual.s3-2 .scene03 .main_right:before {
    transform: scale(1);
    filter: blur(0) sepia(0); }
#mainvisual.s3-3 .scene03 .main_bg {
  filter: brightness(1);
  transition: 1.5s filter ease-in-out 0s !important; }
  #mainvisual.s3-3 .scene03 .main_bg.bg02:before {
    opacity: 1;
    transition: 1s opacity ease-in-out 0s, 3s transform ease-in-out 0s, 1s filter ease-in-out 0s !important; }
#mainvisual.s3-3 .scene03 .main_right:before {
  opacity: 1;
  transition: 1s opacity ease-in-out 0s, 3s transform ease-in-out 0s, 1s filter ease-in-out 0s !important; }
#mainvisual.s3-4 .scene03 .main_bg.bg02:before {
  filter: brightness(1); }
#mainvisual.s3-4 .scene03 .main_right:before {
  filter: brightness(1); }
#mainvisual.s3-4 .maincopy_wrap.copy02 .maincopy span {
  opacity: 0;
  transition-delay: 0s !important; }
#mainvisual.s4 {
  /*
  .last_copy_wrap{
  	.maincopy_wrap{
  		&.copy03,
  		&.copy04{
  			.maincopy{
  				span{
  					opacity: 1;
  				}
  			}
  		}
  	}
  }
  */ }
  #mainvisual.s4 .scene03 .main_right .main_copy {
    opacity: 1;
    transform: scale(1); }
  #mainvisual.s4 .twincle {
    opacity: 0; }
#mainvisual.s4-2 .scene03 .main_right .main_merit .main_merit_img {
  opacity: 1;
  transform: translateY(0); }

/*# sourceMappingURL=mainvisual.css.map */
