@charset "UTF-8";
@keyframes strokeColorAnimation {
  0% {
    stroke: #F2C5C5; }
  20% {
    stroke: #F1F2C5; }
  40% {
    stroke: #CAF2C5; }
  60% {
    stroke: #C5F2EF; }
  80% {
    stroke: #EFC5F2; }
  100% {
    stroke: #F2C5C5; }
  /* ループ */ }
@keyframes visualBgColorAnimation {
  0% {
    background-color: #F2C5C5; }
  20% {
    background-color: #F1F2C5; }
  40% {
    background-color: #CAF2C5; }
  60% {
    background-color: #C5F2EF; }
  80% {
    background-color: #EFC5F2; }
  100% {
    background-color: #F2C5C5; } }
main.home {
  position: relative; }
  main.home .wrapper {
    position: relative; }
    main.home .wrapper header.visual {
      overflow: hidden; }
        main.home .wrapper header.visual .inner {
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
          /* padding: 8px 0;
          height: calc(100svh - 64px); */
          padding: 0;
          height: 100%;
        }
        main.home .wrapper header.visual .inner::before {
          content: "";
          position: absolute;
          inset: 0;
          z-index: 0;
          pointer-events: none;
          animation: visualBgColorAnimation 16s infinite;
        }
        @media screen and (min-width: 769px) {
          main.home .wrapper header.visual .inner {
            padding: 20px 0;
            height: calc(100svh - 64px); } }
        main.home .wrapper header.visual .inner .movie {
          position: relative;
          z-index: 1;
          aspect-ratio: 480 / 360;
          height: calc(360 / 375 * 100vw);
          /* mask-image: url("../images/home/visual_mask2.svg");
          mask-size: 100% 100%; */
        }
        main.home .wrapper header.visual .inner .movie .path{
          position: relative;
          width:100vw;
          height:100%;
          left: 50%;
          transform: translateX(-50%);
          z-index: 1;
          pointer-events: none;
        }
          @media screen and (min-width: 769px) {
            main.home .wrapper header.visual .inner .movie {
              aspect-ratio: 1000 / 697;
              aspect-ratio: 16 / 9;
              /* height: calc(100svh - 40px - 64px);*/
            }
          } 
          main.home .wrapper header.visual .inner .movie video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 0;
            -webkit-mask-image: url("../images/home/logo_onthepage_overlay_knockout.svg");
            mask-image: url("../images/home/logo_onthepage_overlay_knockout.svg");
            -webkit-mask-size: calc(90vw * 1600 / 300) auto;
            mask-size: calc(90vw * 1600 / 300) auto;
            -webkit-mask-position: center;
            mask-position: center;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
          }
          /* main.home .wrapper header.visual .inner .movie .path {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 1; }
            main.home .wrapper header.visual .inner .movie .path svg {
              width: 100%;
              height: 100%; }
              main.home .wrapper header.visual .inner .movie .path svg #line {
                stroke-dasharray: 8000px;
                animation: strokeColorAnimation 16s infinite; }
                .is-loaded main.home .wrapper header.visual .inner .movie .path svg #line {
                  animation: h-written cubic-bezier(0.91, 0.01, 0.11, 0.99) 2s 1 both, strokeColorAnimation 16s infinite; } */
@keyframes h-written {
  0% {
    stroke-dashoffset: 0px; }
  100% {
    stroke-dashoffset: 8000px; } }
        main.home .wrapper header.visual .inner .copy p:nth-child(1) {
          position: absolute;
          top: 124px;
          left: 16px;
          mix-blend-mode: exclusion;
          will-change: filter;
          z-index: 2;
          opacity: 0;
          transition: top cubic-bezier(0.91, 0.01, 0.11, 0.99) 0.6s 1.8s, opacity cubic-bezier(0.91, 0.01, 0.11, 0.99) 0.6s 1.8s;
          width: calc(120 / 375 * 100vw); }
          @media screen and (min-width: 769px) {
            main.home .wrapper header.visual .inner .copy p:nth-child(1) {
              width: auto;
              height: calc(542 / 736 * 100%); } }
          .is-loaded main.home .wrapper header.visual .inner .copy p:nth-child(1) {
            opacity: 1;
            top: 16px; }
          main.home .wrapper header.visual .inner .copy p:nth-child(1) img {
            width: 100%;
            height: auto; }
            @media screen and (min-width: 769px) {
              main.home .wrapper header.visual .inner .copy p:nth-child(1) img {
                height: 100%;
                width: auto; } }
        main.home .wrapper header.visual .inner .copy p:nth-child(2) {
          position: absolute;
          right: -116px;
          bottom: 16px;
          mix-blend-mode: exclusion;
          will-change: filter;
          z-index: 2;
          transition: right cubic-bezier(0.91, 0.01, 0.11, 0.99) 0.6s 1.8s, opacity cubic-bezier(0.91, 0.01, 0.11, 0.99) 0.6s 1.8s;
          opacity: 0;
          width: calc(241 / 375 * 100vw);
          display: flex;
          justify-content: flex-end;
          align-items: flex-end; }
          @media screen and (min-width: 769px) {
            main.home .wrapper header.visual .inner .copy p:nth-child(2) {
              height: calc(247 / 736 * 100%); } }
          .is-loaded main.home .wrapper header.visual .inner .copy p:nth-child(2) {
            right: 16px;
            opacity: 1; }
          main.home .wrapper header.visual .inner .copy p:nth-child(2) img {
            width: 100%;
            height: auto; }
            @media screen and (min-width: 769px) {
              main.home .wrapper header.visual .inner .copy p:nth-child(2) img {
                height: 100%;
                width: auto; } }
    @media screen and (min-width: 769px) {
      main.home .wrapper section.pickup {
        position: absolute;
        z-index: 2;
        bottom: 0;
        left: 16px;
        bottom: 16px; } }
    main.home .wrapper section.pickup .container {
      padding: 24px calc(16 / 375 * 100vw) 8px;
      text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35), 0 0 20px rgba(0, 0, 0, 0.2);
      mix-blend-mode: exclusion;
      will-change: filter; }
      @media screen and (min-width: 769px) {
        main.home .wrapper section.pickup .container {
          padding: 0;
          gap: 16px;
          mix-blend-mode: initial;
          will-change: auto; } }
      main.home .wrapper section.pickup .container h2 {
        font-family: var(--font-primary-en);
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 100%;
        letter-spacing: 0.05em;
        color: #FFFFFF;
        margin-bottom: 8px; }
      main.home .wrapper section.pickup .container .body a .date {
        font-family: var(--font-primary);
        font-style: normal;
        font-weight: 400;
        font-size: 10px;
        line-height: 150%;
        letter-spacing: 0.1em;
        color: #FFFFFF; }
      main.home .wrapper section.pickup .container .body a .title {
        font-family: var(--font-primary);
        font-style: normal;
        font-weight: 400;
        font-size: 10px;
        line-height: 150%;
        letter-spacing: 0.05em;
        color: #FFFFFF; }
  main.home section.message .container {
    position: relative;
    width: calc(343 / 375 * 100vw);
    margin: 0 auto;
    padding: 80px 0;
    margin-top: 24px;
    /*
    position: relative;
    width: calc(100% - 16 * 2 / 375 * 100vw);
    margin: 0 auto;
    margin-top: 24px;
    padding: 80px 0 80px;
    @include pc {
    	width: calc(1024 / 1280 * 100vw);
    	margin-top: 120px;
    	padding: 120px 0 80px;
    }
    */ }
    @media screen and (min-width: 769px) {
      main.home section.message .container {
        width: calc(1024 / 1280 * 100vw); } }
    main.home section.message .container .inner {
      width: calc(100% - 56 / 375 * 100vw);
      margin: 0 0 0 auto; }
      @media screen and (min-width: 769px) {
        main.home section.message .container .inner {
          width: calc(872 / 1280 * 100vw); } }
    @media screen and (min-width: 769px) {
      main.home section.message .container {
        padding: 120px 0 120px;
        margin-top: 120px; } }
    main.home section.message .container:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      display: block;
      height: 1px;
      background-color: #fff;
      mix-blend-mode: exclusion;
      will-change: filter; }
    main.home section.message .container:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      display: block;
      height: 1px;
      background-color: #fff;
      mix-blend-mode: exclusion;
      will-change: filter; }
    main.home section.message .container .content {
      max-width: 1024px;
      max-width: 1440px;
      margin: 0 auto;
     /*
    .action {
    	mix-blend-mode: exclusion;
    	margin-top: 80px;
    	display: flex;
    	justify-content: flex-end;
    	@include pc {
    		margin-top: 124px;
    	}
    	a {
    		display: flex;
    		align-items: center;
    		gap: 24px;
    		font-family: var(--font-primary);
    		font-weight: 400;
    		font-size: 14px;
    		line-height: 150%;
    		color: #FFFFFF;
    		@include pc {
    			font-size: 24px;
    			line-height: 100%;
    		}
    		&:after {
    			content: "";
    			background-image: url("../images/home/message_arrow.svg");
    			width: 40px;
    			height: 23px;
    			display: block;
    		}
    		span {
    			@include pc {
    				position: relative;
    				display: inline-block;
    				padding: 4px 0 5px;
    				&:before {
    					content: "";
    					display: block;
    					position: absolute;
    					bottom: 0;
    					left: 0;
    					height: 1px;
    					background-color: #fff;
    					transition: all ease .3s;
    					width: 0%;
    				}
    			}
    		}
    		&:hover {
    			@include pc {
    				span {
    					&:before {
    						width: 100%;
    					}
    				}
    			}
    		}	
    	}
    }
    */ }
      main.home section.message .container .content .message {
        position: relative;
        text-align: center;
        mix-blend-mode: exclusion;
        will-change: filter; }
        main.home section.message .container .content .message p {
          position: relative;
          font-family: var(--font-primary);
          font-weight: 400;
          font-size: 14px;
          line-height: 200%;
          color: #FFFFFF; }
          @media screen and (min-width: 769px) {
            main.home section.message .container .content .message p {
              font-size: 24px;
              line-height: 56px;
              color: #FFFFFF; } }
          main.home section.message .container .content .message p + p {
            margin-top: 28px; }
            @media screen and (min-width: 769px) {
              main.home section.message .container .content .message p + p {
                margin-top: 48px; } }
          main.home section.message .container .content .message p.js-scrollin {
            top: 20px;
            opacity: 0;
            transition: all ease 1.2s; }
          main.home section.message .container .content .message p.js-scrollin-active {
            top: 0;
            opacity: 1; }
  main.home section.news {
    position: relative;
    margin-top: 40px; }
    @media screen and (min-width: 769px) {
      main.home section.news {
        margin-top: 0; } }
    main.home section.news .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0; }
      @media screen and (min-width: 769px) {
        main.home section.news .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.news .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.news .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.news .container:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        height: 1px;
        background-color: #fff;
        mix-blend-mode: exclusion;
        will-change: filter; }
      main.home section.news .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px; }
        main.home section.news .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #000000;
          text-shadow: 0 0 4px #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.news .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #000000;
              text-shadow: 0 0 4px #FFFFFF;
              padding-right: 24px; } }
          main.home section.news .container hgroup p .char {
            display: inline-block; }
        main.home section.news .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.news .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
      main.home section.news .container .inner {
        animation: bgColorAnimation 16s infinite; }
        main.home section.news .container .inner .mask {
          padding: 16px;
          margin: -16px;
          margin-right: calc(-16 / 375 * 100vw);
          overflow: hidden;
          mask-image: linear-gradient(to right, transparent 0px, black 16px); }
          @media screen and (min-width: 769px) {
            main.home section.news .container .inner .mask {
              margin-right: -8px; } }
        main.home section.news .container .inner .splide {
          width: 80%; }
          @media screen and (min-width: 769px) {
            main.home section.news .container .inner .splide {
              width: auto;
              visibility: visible; } }
        main.home section.news .container .inner .splide__arrows {
          display: none; }
        main.home section.news .container .inner .splide__pagination {
          display: none; }
        main.home section.news .container .inner .splide__track {
          overflow: visible; }
        main.home section.news .container .inner ul {
          /*
          display: flex;
          flex-wrap: wrap;
          li {
          	a {
          		display: block;
          		padding: 16px;
          		background: rgba(255, 255, 255, 0.1);
          		box-shadow: 4px 4px 16px rgba(0, 0, 0, 0.05);
          		border-radius: 4px;
          		figure {
          			margin-bottom: 16px;
          		}
          		.meta {
          			display: flex;
          			margin-bottom: 16px;
          			.category {
          				
          			}
          			.date {
          				
          			}
          		}
          		.title {
          			font-weight: 400;
          			font-size: 14px;
          			line-height: 150%;
          			text-align: justify;
          			color: #FFFFFF;
          			mix-blend-mode: exclusion;
          		}
          	}
          }
          */ }
          @media screen and (min-width: 769px) {
            main.home section.news .container .inner ul {
              gap: 64px 62px; } }
          @media screen and (min-width: 769px) {
            main.home section.news .container .inner ul {
              display: flex !important;
              gap: 28px; } }
          main.home section.news .container .inner ul li {
            animation: bgColorAnimation 16s infinite; }
            @media screen and (min-width: 769px) {
              main.home section.news .container .inner ul li {
                flex: 0 0 calc((100% - 62px * 2) / 3); } }
            @media screen and (min-width: 769px) {
              main.home section.news .container .inner ul li {
                flex: 0 0 calc((100% - 28px * 2) / 3); } }
            main.home section.news .container .inner ul li a {
              display: block;
              transition: all ease .3s;
              height: 100%;
              padding: 16px;
              background: rgba(255, 255, 255, 0.1);
              box-shadow: 4px 4px 16px rgba(0, 0, 0, 0.05);
              border-radius: 8px; }
              @media screen and (min-width: 769px) {
                main.home section.news .container .inner ul li a {
                  padding: 16px;
                  background: rgba(255, 255, 255, 0.1);
                  box-shadow: 4px 4px 16px rgba(0, 0, 0, 0.05);
                  border-radius: 8px; } }
              main.home section.news .container .inner ul li a figure {
                margin-bottom: 16px;
                border-radius: 4px;
                overflow: hidden; }
                main.home section.news .container .inner ul li a figure img {
                  width: 100%; }
              @media screen and (min-width: 769px) {
                main.home section.news .container .inner ul li a:hover {
                  background: rgba(255, 255, 255, 0.5); } }
              main.home section.news .container .inner ul li a .meta {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 16px; }
                main.home section.news .container .inner ul li a .meta .category {
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  padding: 4px 8px;
                  gap: 10px;
                  height: 18px;
                  font-family: var(--font-primary);
                  font-style: normal;
                  font-weight: 400;
                  font-size: 10px;
                  line-height: 100%;
                  letter-spacing: 0.05em;
                  color: #000000;
                  background-color: #fff;
                  mix-blend-mode: exclusion;
                  will-change: filter;
                  border-radius: 9999px; }
              main.home section.news .container .inner ul li a .meta .date {
                font-family: var(--font-primary);
                font-style: normal;
                font-weight: 400;
                font-size: 10px;
                line-height: 100%;
                letter-spacing: 0.05em;
                color: #000000;
                mix-blend-mode: normal;
                will-change: filter; }
                @media screen and (min-width: 769px) {
                  main.home section.news .container .inner ul li a .meta .date {
                    color: #FFFFFF;
                    mix-blend-mode: exclusion; } }
              main.home section.news .container .inner ul li a .title {
                font-family: var(--font-primary);
                font-style: normal;
                font-weight: 400;
                font-size: 14px;
                line-height: 150%;
                text-align: justify;
                color: #000000;
                mix-blend-mode: normal;
                will-change: filter; }
                @media screen and (min-width: 769px) {
                  main.home section.news .container .inner ul li a .title {
                    color: #FFFFFF;
                    mix-blend-mode: exclusion; } }
        main.home section.news .container .inner .action {
          display: flex;
          justify-content: center;
          margin-left: calc(-56 / 375 * 100vw);
          margin-top: 40px; }
          @media screen and (min-width: 769px) {
            main.home section.news .container .inner .action {
              justify-content: flex-end;
              margin-left: 0; } }
          main.home section.news .container .inner .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.news .container .inner .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.news .container .inner .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.news .container .inner .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.news.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.news.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.news.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.news.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.news.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.news.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.news.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.news.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
  main.home section.culture {
    position: relative; }
    main.home section.culture .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0; }
      @media screen and (min-width: 769px) {
        main.home section.culture .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.culture .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.culture .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.culture .container:after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        height: 1px;
        background-color: #fff;
        mix-blend-mode: exclusion;
        will-change: filter; }
      main.home section.culture .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px; }
        main.home section.culture .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.culture .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #FFFFFF;
              padding-right: 24px; } }
          main.home section.culture .container hgroup p .char {
            display: inline-block; }
        main.home section.culture .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.culture .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
      main.home section.culture .container .inner {
        animation: bgColorAnimation 16s infinite;
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.culture .container .inner {
            width: calc(872 / 1280 * 100vw); } }
        @media screen and (min-width: 769px) {
          main.home section.culture .container .inner ul {
            display: flex;
            flex-direction: column;
            gap: 16px; } }
        main.home section.culture .container .inner ul li {
          mix-blend-mode: exclusion;
          will-change: filter;
          border-top: 1px dashed  #FFFFFF;
          border-bottom: 1px dashed  #FFFFFF;
          padding: 24px; }
          @media screen and (min-width: 769px) {
            main.home section.culture .container .inner ul li {
              flex: 0 0 calc((100% - 40px) / 2);
              padding: 40px; } }
          main.home section.culture .container .inner ul li + li {
            margin-top: 20px; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner ul li + li {
                margin-top: 0; } }
          main.home section.culture .container .inner ul li p:nth-child(1) {
            font-family: var(--font-primary);
            font-style: normal;
            font-weight: 400;
            font-size: 10px;
            line-height: 14px;
            letter-spacing: 0.1em;
            color: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            margin-bottom: 16px; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner ul li p:nth-child(1) {
                font-size: 14px;
                line-height: 14px;
                text-align: center;
                margin-bottom: 0; }
                main.home section.culture .container .inner ul li p:nth-child(1):after {
                  content: "";
                  display: block;
                  height: 32px;
                  width: 1px;
                  background-color: #fff;
                  margin: 16px auto 8px; } }
          main.home section.culture .container .inner ul li:nth-child(1) p:nth-child(2) {
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 28px;
            line-height: 100%;
            letter-spacing: 0.05em;
            color: #FFFFFF; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner ul li:nth-child(1) p:nth-child(2) {
                font-size: 40px;
                line-height: 48px;
                text-align: center; } }
          main.home section.culture .container .inner ul li:nth-child(2) p:nth-child(2) {
            font-family: var(--font-primary);
            font-style: normal;
            font-weight: 400;
            font-size: 18px;
            line-height: 150%;
            letter-spacing: 0.05em;
            color: #FFFFFF; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner ul li:nth-child(2) p:nth-child(2) {
                font-size: 32px;
                line-height: 150%;
                text-align: center; } }
          main.home section.culture .container .inner ul li:nth-child(3) p:nth-child(2) {
            font-family: var(--font-primary);
            font-style: normal;
            font-weight: 400;
            font-size: 24px;
            line-height: 100%;
            letter-spacing: 0.05em;
            color: #FFFFFF; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner ul li:nth-child(3) p:nth-child(2) {
                font-size: 32px;
                line-height: 150%;
                text-align: center; } }
        main.home section.culture .container .inner .action {
          display: flex;
          justify-content: center;
          margin-left: calc(-56 / 375 * 100vw);
          margin-top: 40px; }
          @media screen and (min-width: 769px) {
            main.home section.culture .container .inner .action {
              justify-content: flex-end;
              margin-left: 0; } }
          main.home section.culture .container .inner .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.culture .container .inner .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.culture .container .inner .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.culture .container .inner .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.culture.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.culture.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.culture.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.culture.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.culture.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.culture.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.culture.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.culture.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
  main.home section.movie .inner {
    pointer-events: none;
    clip-path: inset(0);
    min-height: 600vh;
    margin-top: -100svh; }
    main.home section.movie .inner a {
      position: sticky;
      width: 100%;
      height: calc(100vh + 40px);
      top: 0;
      display: block;
      clip-path: circle(10vw); }
      main.home section.movie .inner a .bg {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0; }
        main.home section.movie .inner a .bg video {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          object-fit: cover; }
      main.home section.movie .inner a h2 {
        font-family: var(--font-primary-en);
        font-style: normal;
        font-weight: 400;
        font-size: 32px;
        line-height: 120%;
        color: #FFFFFF;
        position: absolute;
        right: calc(16 / 375 * 100vw);
        bottom: 80px;
        opacity: 0;
        transform: translateX(-5%);
        transition: all ease 1s .3s; }
        @media screen and (min-width: 769px) {
          main.home section.movie .inner a h2 {
            display: flex;
            gap: 24px;
            align-items: center;
            right: 64px;
            bottom: 120px;
            font-size: 64px; } }
        main.home section.movie .inner a h2:before {
          content: "";
          background-image: url("../images/home/movie_arrow_sp.svg");
          width: 226px;
          height: 14px;
          display: block;
          margin-bottom: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.movie .inner a h2:before {
              background-image: url("../images/home/movie_arrow.svg");
              width: 256px;
              height: 15px;
              margin-bottom: 0; } }
      main.home section.movie .inner a .play {
        position: absolute;
        top: calc(50% + 20px);
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0;
        transition: all ease 1s;
        font-family: var(--font-primary-en);
        font-style: normal;
        font-weight: 400;
        font-size: 24px;
        line-height: 24px;
        text-align: center;
        letter-spacing: 0.1em;
        color: #FFFFFF; }
        main.home section.movie .inner a .play:before {
          content: "";
          background-image: url("../images/home/movie_play.png");
          background-size: 100% 100%;
          display: block;
          width: 64px;
          height: 64px;
          margin: 0 auto;
          margin-bottom: 12px; }
  main.home section.movie.active .inner {
    pointer-events: auto; }
    main.home section.movie.active .inner h2 {
      transform: translateX(0%);
      opacity: 1; }
    main.home section.movie.active .inner .play {
      top: calc(50%);
      opacity: 1; }
  main.home section.movie .dialog {
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    opacity: 0;
    transition: opacity ease .3s;
    padding: 40px 16px; }
    @media screen and (min-width: 769px) {
      main.home section.movie .dialog {
        padding: 60px; } }
    main.home section.movie .dialog.active {
      opacity: 1;
      pointer-events: auto; }
    main.home section.movie .dialog > section {
      width: 1154px;
      margin: auto;
      background-color: #fff;
      display: block;
      display: none; }
      main.home section.movie .dialog > section.active {
        display: block; }
      main.home section.movie .dialog > section nav {
        position: relative;
        background-color: #000;
        padding: 12px;
        display: flex;
        justify-content: center; }
        main.home section.movie .dialog > section nav .close button {
          display: block;
          background-image: url("../images/business/business_dialog_close.svg");
          width: 34px;
          height: 34px;
          text-indent: -9999px;
          overflow: hidden; }
        main.home section.movie .dialog > section nav ul li.prev {
          position: absolute;
          left: 10px;
          top: 50%;
          transform: translateY(-50%);
          color: #fff; }
          main.home section.movie .dialog > section nav ul li.prev a {
            display: block;
            cursor: pointer;
            position: relative;
            padding-left: 20px; }
            @media screen and (min-width: 769px) {
              main.home section.movie .dialog > section nav ul li.prev a {
                padding-left: 30px; } }
            main.home section.movie .dialog > section nav ul li.prev a:before {
              content: "";
              background-image: url("../images/business/business_dialog_prev.svg");
              width: 9px;
              height: 18px;
              position: absolute;
              left: 0;
              top: 50%;
              transform: translateY(-50%); }
            main.home section.movie .dialog > section nav ul li.prev a:after {
              content: "Prev";
              font-family: var(--font-primary-en);
              font-weight: normal;
              font-size: 11px;
              letter-spacing: 0.1em;
              text-align: left;
              color: #fff; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.prev a:after {
                  display: none; } }
            main.home section.movie .dialog > section nav ul li.prev a p:nth-child(1) {
              display: none; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.prev a p:nth-child(1) {
                  display: block;
                  font-family: var(--font-primary-en);
                  font-weight: normal;
                  font-size: 16px;
                  letter-spacing: 0.1em;
                  line-height: 20px;
                  text-align: left;
                  color: #fff;
                  margin-bottom: -2px; } }
            main.home section.movie .dialog > section nav ul li.prev a p:nth-child(2) {
              display: none; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.prev a p:nth-child(2) {
                  display: block;
                  font-size: 12px;
                  letter-spacing: 0.02em;
                  line-height: 17px;
                  text-align: left;
                  color: #fff; } }
        main.home section.movie .dialog > section nav ul li.next {
          position: absolute;
          right: 10px;
          top: 50%;
          transform: translateY(-50%);
          color: #fff; }
          main.home section.movie .dialog > section nav ul li.next a {
            display: block;
            cursor: pointer;
            position: relative;
            padding-right: 20px; }
            @media screen and (min-width: 769px) {
              main.home section.movie .dialog > section nav ul li.next a {
                padding-right: 30px; } }
            main.home section.movie .dialog > section nav ul li.next a:before {
              content: "Next";
              font-family: var(--font-primary-en);
              font-weight: normal;
              font-size: 11px;
              letter-spacing: 0.1em;
              text-align: left;
              color: #fff; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.next a:before {
                  display: none; } }
            main.home section.movie .dialog > section nav ul li.next a:after {
              content: "";
              background-image: url("../images/business/business_dialog_next.svg");
              width: 9px;
              height: 18px;
              position: absolute;
              right: 0;
              top: 50%;
              transform: translateY(-50%); }
            main.home section.movie .dialog > section nav ul li.next a p:nth-child(1) {
              display: none; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.next a p:nth-child(1) {
                  display: block;
                  font-family: var(--font-primary-en);
                  font-weight: normal;
                  font-size: 16px;
                  letter-spacing: 0.1em;
                  line-height: 20px;
                  text-align: right;
                  color: #fff;
                  margin-bottom: -2px; } }
            main.home section.movie .dialog > section nav ul li.next a p:nth-child(2) {
              display: none; }
              @media screen and (min-width: 769px) {
                main.home section.movie .dialog > section nav ul li.next a p:nth-child(2) {
                  display: block;
                  font-size: 12px;
                  letter-spacing: 0.02em;
                  line-height: 17px;
                  text-align: right;
                  color: #fff; } }
    main.home section.movie .dialog .content {
      width: 100%;
      max-width: 1000px;
      margin: auto; }
      main.home section.movie .dialog .content button {
        font-family: var(--font-primary-en);
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 100%;
        text-align: center;
        letter-spacing: 0.1em;
        color: #FFFFFF;
        display: block;
        margin: 40px auto !important; }
        main.home section.movie .dialog .content button:before {
          content: "";
          background-image: url("../images/home/movie_dialog_icon_close.svg");
          width: 24px;
          height: 25px;
          display: block;
          margin: 0 auto 8px; }
  main.home section.person {
    position: relative;
    z-index: 1;
    background-color: #fff; }
    main.home section.person:before {
      content: "";
      display: block;
      background-color: #fff;
      height: 40px;
      border-radius: 40px 40px 0 0;
      position: absolute;
      bottom: 100%;
      left: 0;
      right: 0; }
    main.home section.person:after {
      content: "";
      display: block;
      background-color: #fff;
      height: 40px;
      border-radius: 0 0 40px 40px;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0; }
    main.home section.person .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0;
      padding: 40px 0; }
      @media screen and (min-width: 769px) {
        main.home section.person .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.person .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.person .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.person .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px;
        height: 0;
        z-index: 2; }
        main.home section.person .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.person .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #FFFFFF;
              padding-right: 24px; } }
          main.home section.person .container hgroup p .char {
            display: inline-block; }
        main.home section.person .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.person .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
        @media screen and (min-width: 769px) {
          main.home section.person .container hgroup {
            margin-bottom: 0; } }
      main.home section.person .container .inner {
        width: 100%;
        margin-left: 0;
        background-color: #fff; }
        @media screen and (min-width: 769px) {
          main.home section.person .container .inner {
            margin-left: auto;
            width: calc(872 / 1280 * 100vw); } }
        main.home section.person .container .inner .splide {
          position: relative; }
          @media screen and (min-width: 769px) {
            main.home section.person .container .inner .splide {
              border-bottom: 1px solid #000; } }
          main.home section.person .container .inner .splide .splide__arrows {
            position: absolute;
            bottom: 66px;
            left: 0;
            right: 0; }
            @media screen and (min-width: 769px) {
              main.home section.person .container .inner .splide .splide__arrows {
                bottom: 105px;
                left: auto;
                right: 40px;
                width: calc(420 / (1024 - 152) * 100%);
                min-width: 420px; } }
            main.home section.person .container .inner .splide .splide__arrows .splide__arrow--prev {
              opacity: 1;
              width: 40px;
              height: 40px;
              border-radius: 50%;
              background-color: #000; }
              main.home section.person .container .inner .splide .splide__arrows .splide__arrow--prev:before {
                content: "";
                background-image: url("../images/home/person_prev_arrow.svg");
                display: block;
                width: 24px;
                height: 14px;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%); }
              main.home section.person .container .inner .splide .splide__arrows .splide__arrow--prev svg {
                display: none; }
            main.home section.person .container .inner .splide .splide__arrows .splide__arrow--next {
              opacity: 1;
              width: 40px;
              height: 40px;
              border-radius: 50%;
              background-color: #000; }
              main.home section.person .container .inner .splide .splide__arrows .splide__arrow--next svg {
                display: none; }
              main.home section.person .container .inner .splide .splide__arrows .splide__arrow--next:before {
                content: "";
                background-image: url("../images/home/person_next_arrow.svg");
                display: block;
                width: 24px;
                height: 14px;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%); }
          main.home section.person .container .inner .splide .splide__pagination {
            position: static; }
            @media screen and (min-width: 769px) {
              main.home section.person .container .inner .splide .splide__pagination {
                position: absolute;
                top: 64px;
                left: 0;
                right: auto;
                bottom: auto;
                padding: 0; } }
            main.home section.person .container .inner .splide .splide__pagination li {
              margin: 0 2px; }
            main.home section.person .container .inner .splide .splide__pagination button {
              position: relative;
              width: 16px;
              height: 16px;
              border: 1px solid transparent;
              transform: scale(1);
              opacity: 1;
              background-color: transparent; }
              main.home section.person .container .inner .splide .splide__pagination button:before {
                content: "";
                display: block;
                height: 4px;
                width: 4px;
                border-radius: 50%;
                background-color: #000;
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%); }
              main.home section.person .container .inner .splide .splide__pagination button.is-active {
                border: 1px solid #000; }
          main.home section.person .container .inner .splide .splide__track {
            overflow: visible; }
            main.home section.person .container .inner .splide .splide__track ul li a {
              position: relative;
              display: block;
              background-color: #fff; }
              @media screen and (min-width: 769px) {
                main.home section.person .container .inner .splide .splide__track ul li a {
                  display: flex;
                  padding-right: 40px;
                  padding-bottom: 0;
                  justify-content: flex-end; } }
              main.home section.person .container .inner .splide .splide__track ul li a figure {
                position: relative;
                aspect-ratio: 420 / 536; }
                @media screen and (min-width: 769px) {
                  main.home section.person .container .inner .splide .splide__track ul li a figure {
                    width: calc(420 / (1024 - 152) * 100%);
                    min-width: 420px;
                    aspect-ratio: 1 / 1; } }
                main.home section.person .container .inner .splide .splide__track ul li a figure img {
                  position: absolute;
                  bottom: 0;
                  left: 0;
                  right: 0;
                  width: 100%;
                  pointer-events: none; }
                  @media screen and (min-width: 769px) {
                    main.home section.person .container .inner .splide .splide__track ul li a figure img {
                      display: block;
                      position: absolute;
                      left: 0;
                      bottom: 0;
                      width: 100%;
                      aspect-ratio: 420 / 536;
                      object-fit: cover;
                      object-position: 50% 0;
                      width: 100%; } }
              main.home section.person .container .inner .splide .splide__track ul li a .content {
                display: contents; }
                @media screen and (min-width: 769px) {
                  main.home section.person .container .inner .splide .splide__track ul li a .content {
                    position: absolute;
                    top: 0;
                    left: 0;
                    right: 0;
                    bottom: 0;
                    display: flex;
                    flex-direction: column;
                    justify-content: center;
                    flex: 0 0 100%;
                    padding-bottom: 24px;
                    padding-left: 0;
                    padding-top: 72px; } }
                main.home section.person .container .inner .splide .splide__track ul li a .content .title {
                  position: absolute;
                  top: 0;
                  left: 0;
                  right: 0;
                  display: flex;
                  flex-direction: column;
                  justify-content: flex-end;
                  aspect-ratio: 343 / 428; }
                  @media screen and (min-width: 769px) {
                    main.home section.person .container .inner .splide .splide__track ul li a .content .title {
                      position: static;
                      display: block;
                      aspect-ratio: auto; } }
                  main.home section.person .container .inner .splide .splide__track ul li a .content .title .marker {
                    font-family: var(--font-primary);
                    font-style: normal;
                    font-weight: 400;
                    font-size: 32px;
                    line-height: 100%;
                    letter-spacing: 0.1em;
                    color: #FFFFFF;
                    mix-blend-mode: exclusion;
                    will-change: filter;
                    margin-bottom: 8px; }
                    @media screen and (min-width: 769px) {
                      main.home section.person .container .inner .splide .splide__track ul li a .content .title .marker {
                        font-size: 40px;
                        margin-bottom: 40px; } }
                  main.home section.person .container .inner .splide .splide__track ul li a .content .title p:nth-child(2) {
                    margin-bottom: 18px; }
                    @media screen and (min-width: 769px) {
                      main.home section.person .container .inner .splide .splide__track ul li a .content .title p:nth-child(2) {
                        margin-bottom: 24px; } }
                    main.home section.person .container .inner .splide .splide__track ul li a .content .title p:nth-child(2) .highlight {
                      font-family: var(--font-primary);
                      font-style: normal;
                      font-weight: 400;
                      font-size: 16px;
                      line-height: 44px;
                      letter-spacing: 0.1em;
                      padding: 8px 12px;
                      color: #fff;
                      background-color: #000;
                      display: inline;
                      -webkit-box-decoration-break: clone;
                      box-decoration-break: clone; }
                      @media screen and (min-width: 769px) {
                        main.home section.person .container .inner .splide .splide__track ul li a .content .title p:nth-child(2) .highlight {
                          mix-blend-mode: exclusion;
                          will-change: filter;
                          font-size: 24px;
                          line-height: 64px;
                          padding: 11px 16px;
                          color: #000;
                          background-color: #fff; } }
                main.home section.person .container .inner .splide .splide__track ul li a .content .profile {
                  border-top: 1px solid #fff;
                  padding-top: 18px;
                  padding-bottom: 24px;
                  mix-blend-mode: exclusion;
                  will-change: filter;
                  text-align: center; }
                  @media screen and (min-width: 769px) {
                    main.home section.person .container .inner .splide .splide__track ul li a .content .profile {
                      border: none;
                      text-align: left;
                      padding: 0; } }
                  main.home section.person .container .inner .splide .splide__track ul li a .content .profile .onboard {
                    font-family: var(--font-primary);
                    font-style: normal;
                    font-weight: 400;
                    font-size: 10px;
                    line-height: 1;
                    color: #FFFFFF;
                    margin-bottom: 8px; }
                    @media screen and (min-width: 769px) {
                      main.home section.person .container .inner .splide .splide__track ul li a .content .profile .onboard {
                        font-size: 12px;
                        line-height: 16px;
                        margin-bottom: 4px; } }
                  main.home section.person .container .inner .splide .splide__track ul li a .content .profile .position {
                    font-family: var(--font-primary);
                    font-style: normal;
                    font-weight: 400;
                    font-size: 10px;
                    line-height: 1;
                    color: #FFFFFF; }
                    @media screen and (min-width: 769px) {
                      main.home section.person .container .inner .splide .splide__track ul li a .content .profile .position {
                        font-size: 12px;
                        line-height: 16px; } }
                  main.home section.person .container .inner .splide .splide__track ul li a .content .profile .name {
                    font-family: var(--font-primary);
                    font-style: normal;
                    font-weight: 400;
                    font-size: 16px;
                    line-height: 1;
                    letter-spacing: 0.1em;
                    color: #FFFFFF;
                    margin-top: 8px; }
                    @media screen and (min-width: 769px) {
                      main.home section.person .container .inner .splide .splide__track ul li a .content .profile .name {
                        font-size: 18px;
                        line-height: 24px;
                        margin-top: 16px; } }
        main.home section.person .container .inner .action {
          display: flex;
          justify-content: center;
          margin-top: 24px; }
          @media screen and (min-width: 769px) {
            main.home section.person .container .inner .action {
              justify-content: flex-end;
              margin-top: 40px; } }
          main.home section.person .container .inner .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.person .container .inner .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.person .container .inner .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.person .container .inner .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.person.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.person.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.person.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.person.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.person.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.person.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.person.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.person.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
  main.home section.job-career {
    padding: 40px 0 0;
    background-color: #fff;
    mix-blend-mode: exclusion;
    will-change: filter; }
    main.home section.job-career .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0; }
      @media screen and (min-width: 769px) {
        main.home section.job-career .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.job-career .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.job-career .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.job-career .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px; }
        main.home section.job-career .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.job-career .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #FFFFFF;
              padding-right: 24px; } }
          main.home section.job-career .container hgroup p .char {
            display: inline-block; }
        main.home section.job-career .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.job-career .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
      main.home section.job-career .container .inner {
        background-color: #fff; }
        main.home section.job-career .container .inner figure {
          mix-blend-mode: exclusion;
          will-change: filter; }
        main.home section.job-career .container .inner .action {
          display: flex;
          justify-content: center;
          margin-left: calc(-56 / 375 * 100vw);
          margin-top: 40px; }
          @media screen and (min-width: 769px) {
            main.home section.job-career .container .inner .action {
              justify-content: flex-end;
              margin-left: 0; } }
          main.home section.job-career .container .inner .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.job-career .container .inner .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.job-career .container .inner .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.job-career .container .inner .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.job-career.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.job-career.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.job-career.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.job-career.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.job-career.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.job-career.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.job-career.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.job-career.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
  main.home section.business {
    background-color: #fff; }
    @media screen and (min-width: 769px) {
      main.home section.business {
        padding: 40px 0; } }
@keyframes bgloop {
  from {
    background-position: 0 0; }
  to {
    background-position: -1920px 0; } }
    main.home section.business .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0; }
      @media screen and (min-width: 769px) {
        main.home section.business .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.business .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.business .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.business .container:before {
        content: "";
        background-image: url("../images/home/business_img.jpg");
        background-size: 1920px 480px;
        display: block;
        width: 100vw;
        height: 480px;
        position: absolute;
        top: 80px;
        left: 50%;
        transform: translateX(-50%);
        animation: bgloop 30s linear infinite;
        will-change: background-position; }
        @media screen and (min-width: 769px) {
          main.home section.business .container:before {
            animation: bgloop 20s linear infinite; } }
      main.home section.business .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px;
        mix-blend-mode: unset;
        height: 0;
        margin-bottom: 0; }
        main.home section.business .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.business .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #FFFFFF;
              padding-right: 24px; } }
          main.home section.business .container hgroup p .char {
            display: inline-block; }
        main.home section.business .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.business .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
        main.home section.business .container hgroup p {
          background-color: #fff;
          color: #000; }
        main.home section.business .container hgroup h2 {
          background-color: #fff;
          color: #000; }
      main.home section.business .container .inner {
        height: 480px; }
        @media screen and (min-width: 769px) {
          main.home section.business .container .inner {
            height: 560px; } }
      main.home section.business .container .wrapper {
        position: relative;
        padding-top: 40px; }
        @media screen and (min-width: 769px) {
          main.home section.business .container .wrapper {
            position: absolute;
            bottom: 80px;
            right: calc(-50vw + 50%);
            background-color: #fff;
            padding: 0 40px; } }
        main.home section.business .container .wrapper .copy {
          position: absolute;
          bottom: 100%;
          right: calc(-16 / 375 * 100vw);
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 18px;
          line-height: 150%;
          text-align: center;
          letter-spacing: 0.05em;
          color: #000;
          padding: 8px 16px;
          background-color: #fff; }
          @media screen and (min-width: 769px) {
            main.home section.business .container .wrapper .copy {
              position: static;
              font-weight: 400;
              font-size: 40px;
              line-height: 150%;
              text-align: center;
              letter-spacing: 0.05em;
              padding: 0;
              background-color: transparent; } }
        main.home section.business .container .wrapper .action {
          display: flex;
          justify-content: center;
          background-color: #fff; }
          @media screen and (min-width: 769px) {
            main.home section.business .container .wrapper .action {
              margin-top: 40px; } }
          main.home section.business .container .wrapper .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.business .container .wrapper .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.business .container .wrapper .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.business .container .wrapper .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.business.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.business.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.business.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.business.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.business.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.business.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.business.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.business.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
    main.home section.business.js-scrollin .wrapper {
      transform: translateY(20px);
      opacity: 0;
      transition: all ease 1.2s 1s; }
    main.home section.business.js-scrollin-active .wrapper {
      transform: translateY(0px);
      opacity: 1; }
  main.home section.work-support {
    overflow: hidden; }
    @media screen and (min-width: 769px) {
      main.home section.work-support {
        padding: 120px 0; } }
    main.home section.work-support .container {
      position: relative;
      width: calc(343 / 375 * 100vw);
      margin: 0 auto;
      padding: 80px 0; }
      @media screen and (min-width: 769px) {
        main.home section.work-support .container {
          width: calc(1024 / 1280 * 100vw); } }
      main.home section.work-support .container .inner {
        width: calc(100% - 56 / 375 * 100vw);
        margin: 0 0 0 auto; }
        @media screen and (min-width: 769px) {
          main.home section.work-support .container .inner {
            width: calc(872 / 1280 * 100vw); } }
      main.home section.work-support .container hgroup {
        position: relative;
        mix-blend-mode: exclusion;
        will-change: filter;
        margin-bottom: 48px;
        margin-bottom: 64px;
        z-index: 1; }
        main.home section.work-support .container hgroup p {
          position: absolute;
          top: -40px;
          left: 0;
          font-family: var(--font-primary-en);
          font-style: normal;
          font-weight: 400;
          font-size: 40px;
          line-height: 100%;
          color: #FFFFFF;
          transform: rotate(90deg);
          transform: rotate(90deg);
          transform-origin: 0 100%;
          padding-right: 8px; }
          @media screen and (min-width: 769px) {
            main.home section.work-support .container hgroup p {
              top: -80px;
              left: 0;
              font-size: 64px;
              line-height: 80px;
              color: #FFFFFF;
              padding-right: 24px; } }
          main.home section.work-support .container hgroup p .char {
            display: inline-block; }
        main.home section.work-support .container hgroup h2 {
          position: relative;
          font-family: var(--font-primary);
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 100%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          margin-left: 40px;
          padding: 4px calc(16 / 375 * 100vw) 4px calc(56 / 375 * 100vw - 40px);
          width: fit-content; }
          @media screen and (min-width: 769px) {
            main.home section.work-support .container hgroup h2 {
              font-size: 20px;
              letter-spacing: 0.1em;
              padding: 16px 72px 16px calc(152 / 1280 * 100vw - 80px);
              margin-left: 80px; } }
        @media screen and (min-width: 769px) {
          main.home section.work-support .container hgroup {
            margin-bottom: 131px; } }
      main.home section.work-support .container .inner {
        animation: bgColorAnimation 16s infinite; }
        main.home section.work-support .container .inner .copy {
          position: relative;
          z-index: 1;
          font-family: var(--font-primary);
          font-weight: 400;
          font-size: 20px;
          line-height: 150%;
          letter-spacing: 0.05em;
          color: #FFFFFF;
          mix-blend-mode: exclusion;
          will-change: filter;
          will-change: filter;
          margin-bottom: 40px; }
          @media screen and (min-width: 769px) {
            main.home section.work-support .container .inner .copy {
              font-size: 40px;
              line-height: 150%;
              margin-bottom: 40px; } }
        main.home section.work-support .container .inner figure {
          position: relative;
          margin-left: calc(-56 / 375 * 100vw);
          margin-top: 40px;
          margin-bottom: 22px; }
          @media screen and (min-width: 769px) {
            main.home section.work-support .container .inner figure {
              position: absolute;
              top: -283px;
              left: calc(50% - 153px);
              width: 924px;
              margin: 0; } }
        main.home section.work-support .container .inner .action {
          display: flex;
          justify-content: center;
          margin-left: calc(-56 / 375 * 100vw); }
          @media screen and (min-width: 769px) {
            main.home section.work-support .container .inner .action {
              justify-content: flex-start;
              margin-left: 0; } }
          main.home section.work-support .container .inner .action a {
            position: relative;
            font-family: var(--font-primary-en);
            font-style: normal;
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
            letter-spacing: 0.1em;
            color: #000000;
            display: flex;
            align-items: center;
            padding: 0 104px 0 40px;
            width: fit-content;
            height: 54px;
            background: #FFFFFF;
            mix-blend-mode: exclusion;
            will-change: filter;
            will-change: opacity;
            border: 1px solid #FFFFFF;
            border-radius: 1000px;
            transition: all ease .3s; }
            main.home section.work-support .container .inner .action a:after {
              content: "";
              -webkit-mask-image: url("../images/home/btn_arrow.svg");
              -webkit-mask-size: 100% 100%;
              mask-image: url("../images/home/btn_arrow.svg");
              mask-size: 100% 100%;
              display: block;
              width: 24px;
              height: 14px;
              position: absolute;
              background-color: #000;
              right: 40px;
              top: 50%;
              transform: translateY(-50%);
              transition: all ease .3s; }
            @media screen and (min-width: 769px) {
              main.home section.work-support .container .inner .action a:hover {
                background-color: transparent;
                color: #fff; }
                main.home section.work-support .container .inner .action a:hover:after {
                  background-color: #fff;
                  right: 32px; } }
    main.home section.work-support.js-scrollin hgroup p .char {
      position: relative;
      top: 20px;
      transition: all ease .3s;
      opacity: 0; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(2) {
        transition-delay: .08s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(3) {
        transition-delay: .16s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(4) {
        transition-delay: .24s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(5) {
        transition-delay: .32s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(6) {
        transition-delay: .40s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(7) {
        transition-delay: .48s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(8) {
        transition-delay: .56s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(9) {
        transition-delay: .64s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(10) {
        transition-delay: .72s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(11) {
        transition-delay: .8s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(12) {
        transition-delay: .88s; }
      main.home section.work-support.js-scrollin hgroup p .char:nth-child(13) {
        transition-delay: .96s; }
    main.home section.work-support.js-scrollin hgroup h2 span {
      position: relative;
      display: inline-block;
      opacity: 0;
      left: -10px;
      transition: all ease 1.2s 1s; }
      @media screen and (min-width: 769px) {
        main.home section.work-support.js-scrollin hgroup h2 span {
          left: -20px; } }
    main.home section.work-support.js-scrollin .inner {
      position: relative;
      opacity: 0;
      top: 20px;
      transition: opacity ease 1s 1s, top ease 1s 1s; }
    main.home section.work-support.js-scrollin-active hgroup p .char {
      position: relative;
      top: 0;
      opacity: 1; }
    main.home section.work-support.js-scrollin-active hgroup h2 span {
      opacity: 1;
      left: 0; }
    main.home section.work-support.js-scrollin-active .inner {
      opacity: 1;
      top: 0; }
  main.home nav.entry {
    position: relative;
    padding: 180px calc(40 / 375 * 100vw) 120px; }
    @media screen and (min-width: 769px) {
      main.home nav.entry {
        padding: 183px 0 80px; } }
    main.home nav.entry:before {
      content: "";
      display: block;
      width: 33px;
      height: 136px;
      background-image: url("../images/common/entry_deco.svg");
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      mix-blend-mode: exclusion;
      will-change: filter; }
    main.home nav.entry h2 {
      font-weight: 400;
      font-family: var(--font-primary);
      font-size: 16px;
      line-height: 24px;
      margin-bottom: 24px;
      text-align: center;
      letter-spacing: 0.2em;
      color: #FFFFFF;
      mix-blend-mode: exclusion;
      will-change: filter; }
      @media screen and (min-width: 769px) {
        main.home nav.entry h2 {
          font-size: 24px;
          line-height: 24px;
          margin-bottom: 48px; } }
    main.home nav.entry .action {
      text-align: center; }
      main.home nav.entry .action a {
        display: inline-flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 64px;
        background: #FFFFFF;
        border: 1px solid #FFFFFF;
        border-radius: 1000px;
        font-family: var(--font-primary-en);
        font-style: normal;
        font-weight: 400;
        font-size: 24px;
        letter-spacing: 0.1em;
        color: #000;
        mix-blend-mode: exclusion;
        will-change: filter;
        transition: all ease .3s; }
        @media screen and (min-width: 769px) {
          main.home nav.entry .action a {
            max-width: 560px;
            height: 96px;
            font-size: 40px;
            text-align: center; } }
        @media screen and (min-width: 769px) {
          main.home nav.entry .action a:hover {
            background-color: transparent;
            color: #fff; } }
