@charset "UTF-8";
/************************************************
@PC - style.css v1.0.0
(c) ULM Co.,Ltd. - https://www.ulm-design.com
************************************************/
/* 1-foundation import */
article, aside, details, figcaption, figure, footer, header, hgroup, hr, menu, nav, section {
  display: block; }

a, hr {
  padding: 0; }

abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0; }

ins, mark {
  background-color: #ff9;
  color: #000; }

body {
  line-height: 1; }

li, ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none; }

a {
  margin: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0; }

ins {
  text-decoration: none; }

mark {
  font-style: italic;
  font-weight: 700; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0; }

input, select {
  vertical-align: middle; }

/************************************************
common
************************************************/
/* breakpoints setting */
/* all selecter */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/* type selecter */
html, body {
  /* font: 13px/1em "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; */
  letter-spacing: 1px;
  word-break: break-all;
  word-wrap: break-word;
  /*-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;*/
  font-feature-settings: "palt";
  /*文字間詰め*/
  -webkit-text-size-adjust: 100%;
  /* adjust */ }

body {
  /*   background: url(../img/common/bg-pc.jpg) center center;
    background-attachment: fixed;
    background-size: cover; */
  background: #000;
  min-width: 1124px; }

@media screen and (max-width: 768px) {
  html, body {
    overflow-x: hidden; }

  body {
    /* background: transparent; */
    background: #000;
    min-width: 0;
    width: 100%; }

  /*   body:after{
      content: "";
      display: block;
      position: fixed;
      z-index: -1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      background: url(../img/common/bg-sp.jpg) center center;
      background-size: cover;
    }   */ }
iframe[name='google_conversion_frame'] {
  height: 0 !important;
  width: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  margin-top: -13px; }

a {
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
  transition: all .4s; }

picture {
  pointer-events: none;
  display: block; }

img {
  pointer-events: none;
  width: 100%;
  vertical-align: middle; }

source {
  pointer-events: none;
  width: 100%;
  vertical-align: middle; }

/* id selecter */
#wrapper {
  width: 100%;
  display: block;
  position: relative; }

/* class selecter */
.hover {
  -webkit-transition: all .2s ease;
  transition: all .2s ease; }

.click {
  -webkit-transition: all .4s ease;
  transition: all .4s ease; }

.click:active {
  -webkit-transition: all .1s ease;
  transition: all .1s ease;
  transform: scale(0.95); }

.flex {
  display: -webkit-flex;
  display: flex; }

.flex-wrap {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }

.flex-center {
  -webkit-justify-content: center;
  justify-content: center; }

.flex-left {
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }

.flex-right {
  -webkit-justify-content: flex-end;
  justify-content: flex-end; }

.bold {
  font-weight: bold; }

.italic {
  font-style: italic; }

.none {
  display: none; }

.block {
  display: block; }

.relative {
  position: relative; }

.margin-auto {
  margin: 0 auto; }

.pc {
  display: block; }
  @media screen and (max-width: 768px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }

/* @font-face {
	font-family:'Montserrat-Bold';
	src: url('../fonts/Montserrat-Bold.ttf') format('truetype');
} */
/* @font-face {
	font-family:'###';
	src: url('###.otf') format('opentype');
} */
/* 2-layout import */
/*******************************************************
header
********************************************************/
.l-header {
  width: 100%;
  background: #fff; }
  .l-header__img {
    display: block;
    width: 100%; }
    .l-header__img img {
      display: block;
      width: 100%;
      height: auto; }

/*******************************************************
main
********************************************************/
/*******************************************************
footer
********************************************************/
.l-footer {
  width: 100%;
  background: #000;
  padding: 60px 0 80px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .l-footer {
      padding: calc(60 / 750 * 100vw) 0 calc(80 / 750 * 100vw); } }
  .l-footer__inquiry {
    display: inline-block;
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.04em;
    text-decoration: underline;
    text-underline-offset: 6px; }
    @media screen and (max-width: 768px) {
      .l-footer__inquiry {
        font-size: calc(26 / 750 * 100vw); } }
  .l-footer__copy {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.02em;
    margin: 60px auto 0; }
    @media screen and (max-width: 768px) {
      .l-footer__copy {
        font-size: calc(20 / 750 * 100vw);
        margin: calc(70 / 750 * 100vw) auto 0; } }

.footer__link {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%; }
.footer__title {
  color: #fff;
  background: #C10F1A;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-weight: bold;
  font-size: 28px;
  letter-spacing: 0.04em;
  padding: 10px 0 10px;
  margin: 0 auto;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .footer__title {
      line-height: 1.5;
      font-size: calc(48 / 750 * 100vw); } }
  .footer__title__annotation {
    font-size: 12px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .footer__title__annotation {
        width: 95%;
        line-height: 1.2;
        display: inline-block;
        text-align: left; } }

/* 3-object import */
/* pages */
.hero {
  width: 100%;
  text-align: center;
  background: #000; }
  .hero__mv {
    width: 100%; }
  .hero__mv-sp {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    background: #000; }
    .hero__mv-sp img {
      display: block;
      height: auto; }
  .hero .hero__mv-sp-poster {
    width: 100%;
    transform-origin: center;
    animation: hero-poster-fade-in 1.4s cubic-bezier(0.22, 0.61, 0.36, 1) both paused; }
  .hero .hero__mv-sp-poster.is-visible {
    animation-play-state: running; }
  .hero .hero__mv-sp-roadshow {
    width: 84%;
    margin-top: 6%;
    animation: hero-roadshow-slide-in 1.1s cubic-bezier(0.34, 1.56, 0.64, 1) 0.6s both paused; }
  .hero .hero__mv-sp-roadshow.is-visible {
    animation-play-state: running; }
  .hero .hero__mv-sp-limit {
    width: 92%;
    margin-top: 6%;
    margin-bottom: 6%; }
  .hero__mv-pc {
    display: none; }
  @media (min-width: 768px) {
    .hero__mv-sp {
      display: none; }
    .hero__mv-pc {
      display: flex;
      width: 100%;
      background: #000;
      align-items: stretch; }
    .hero__mv-pc-left {
      width: 50%; }
      .hero__mv-pc-left img {
        display: block;
        width: 100%;
        height: auto;
        transform-origin: center;
        animation: hero-poster-fade-in 1.4s cubic-bezier(0.22, 0.61, 0.36, 1) both; }
    .hero__mv-pc-right {
      width: 50%;
      display: flex;
      flex-direction: column; }
    .hero__mv-pc-right-top {
      flex: 3;
      display: flex;
      align-items: flex-start;
      justify-content: center;
      padding-top: 8%; }
      .hero__mv-pc-right-top img {
        display: block;
        max-width: 58%;
        height: auto;
        animation: hero-roadshow-slide-in 1.1s cubic-bezier(0.34, 1.56, 0.64, 1) 0.6s both; }
    .hero__mv-pc-right-bottom {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center; }
      .hero__mv-pc-right-bottom img {
        display: block;
        max-width: 80%;
        height: auto; } }
  .hero__lead-sp {
    position: relative;
    display: block;
    width: 100%;
    max-width: 691px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 8%;
    aspect-ratio: 691 / 359;
    overflow: hidden; }
  .hero__lead-sp-line {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: translateX(10px);
    animation-timing-function: steps(20, end);
    animation-fill-mode: forwards;
    animation-duration: 0.6s;
    animation-play-state: paused; }
  .hero__lead-sp.is-visible .hero__lead-sp-line {
    animation-play-state: running; }
  .hero__lead-sp-line--1 {
    clip-path: inset(0 100% 85.23% 0);
    animation-name: hero-lead-sp-typing-1;
    animation-delay: 0.1s; }
  .hero__lead-sp-line--2 {
    clip-path: inset(14.77% 100% 67.13% 0);
    animation-name: hero-lead-sp-typing-2;
    animation-delay: 0.7s; }
  .hero__lead-sp-line--3 {
    clip-path: inset(32.87% 100% 44.28% 0);
    animation-name: hero-lead-sp-typing-3;
    animation-delay: 1.3s; }
  .hero__lead-sp-line--4 {
    clip-path: inset(55.72% 100% 0 0);
    animation-name: hero-lead-sp-typing-4;
    animation-delay: 1.9s; }
  .hero__lead-pc {
    display: none; }
  @media (min-width: 768px) {
    .hero__lead-sp {
      display: none; }
    .hero__lead-pc {
      position: relative;
      display: block;
      width: 100%;
      max-width: 1148px;
      margin-left: auto;
      margin-right: auto;
      margin-top: 60px;
      aspect-ratio: 1148 / 289;
      overflow: hidden; }
    .hero__lead-pc-line {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: contain;
      transform: translateX(20px);
      animation-timing-function: steps(20, end);
      animation-fill-mode: forwards;
      animation-duration: 0.6s;
      animation-play-state: paused; }
    .hero__lead-pc.is-visible .hero__lead-pc-line {
      animation-play-state: running; }
    .hero__lead-pc-line--1 {
      clip-path: inset(0 100% 78.89% 0);
      animation-name: hero-lead-typing-1;
      animation-delay: 0.1s; }
    .hero__lead-pc-line--2 {
      clip-path: inset(21.11% 100% 54.67% 0);
      animation-name: hero-lead-typing-2;
      animation-delay: 0.7s; }
    .hero__lead-pc-line--3 {
      clip-path: inset(45.33% 100% 0 0);
      animation-name: hero-lead-typing-3;
      animation-delay: 1.3s; } }
@keyframes hero-lead-typing-1 {
  from {
    clip-path: inset(0 100% 78.89% 0); }
  to {
    clip-path: inset(0 0 78.89% 0); } }
@keyframes hero-lead-typing-2 {
  from {
    clip-path: inset(21.11% 100% 54.67% 0); }
  to {
    clip-path: inset(21.11% 0 54.67% 0); } }
@keyframes hero-lead-typing-3 {
  from {
    clip-path: inset(45.33% 100% 0 0); }
  to {
    clip-path: inset(45.33% 0 0 0); } }
@keyframes hero-lead-sp-typing-1 {
  from {
    clip-path: inset(0 100% 85.23% 0); }
  to {
    clip-path: inset(0 0 85.23% 0); } }
@keyframes hero-lead-sp-typing-2 {
  from {
    clip-path: inset(14.77% 100% 67.13% 0); }
  to {
    clip-path: inset(14.77% 0 67.13% 0); } }
@keyframes hero-lead-sp-typing-3 {
  from {
    clip-path: inset(32.87% 100% 44.28% 0); }
  to {
    clip-path: inset(32.87% 0 44.28% 0); } }
@keyframes hero-lead-sp-typing-4 {
  from {
    clip-path: inset(55.72% 100% 0 0); }
  to {
    clip-path: inset(55.72% 0 0 0); } }
  .hero__slide {
    width: 100%;
    overflow: hidden; }
  .hero__slide-track {
    display: flex;
    width: max-content;
    animation: hero-slide-loop 40s linear infinite; }
  .hero__slide-img {
    display: block;
    width: auto;
    height: 80px;
    flex-shrink: 0; }
    @media (min-width: 768px) {
      .hero__slide-img {
        height: auto; } }
@keyframes hero-slide-loop {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-50%); } }
@keyframes hero-poster-fade-in {
  from {
    opacity: 0;
    transform: scale(1.18); }
  to {
    opacity: 1;
    transform: scale(1); } }
@keyframes hero-roadshow-slide-in {
  from {
    opacity: 0;
    transform: translateX(60%); }
  to {
    opacity: 1;
    transform: translateX(0); } }
.youtube {
  padding: 50px 0 80px; }
  @media screen and (max-width: 768px) {
    .youtube {
      padding: calc(50 / 750 * 100vw) 0 calc(80 / 750 * 100vw); } }
  .youtube__contents {
    position: relative;
    display: block;
    width: 50%;
    height: 0;
    padding-bottom: calc(0.5625 * 50%);
    margin: 0 auto 0;
    border: solid 1px red;
    background: #000; }
    @media screen and (max-width: 768px) {
      .youtube__contents {
        width: 90%;
        padding-bottom: calc(0.5625 * 90%); } }
    .youtube__contents > video {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

.apply1 {
  width: 100%;
  text-align: center;
  padding: 85px 0;
  background: #000; }
  @media screen and (max-width: 768px) {
    .apply1 {
      padding: calc(85 / 750 * 100vw) 0; } }
  .apply1 > h2 {
    display: block;
    width: 180px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .apply1 > h2 {
        width: calc(360 / 750 * 100vw); } }
    .apply1 > h2 img {
      display: block;
      width: 100%;
      height: auto; }
  .apply1__text {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    width: 90%;
    max-width: 680px;
    margin: 40px auto 0;
    text-align: left; }
    @media screen and (max-width: 768px) {
      .apply1__text {
        font-size: calc(36 / 750 * 100vw);
        margin: calc(60 / 750 * 100vw) auto 0;
        line-height: 1.8; } }
  .apply1__text-em {
    color: #9bb195; }
  .apply1__caution-top {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.7;
    width: 90%;
    max-width: 680px;
    margin: 30px auto 0;
    text-align: left;
    letter-spacing: 0.04em; }
    @media screen and (max-width: 768px) {
      .apply1__caution-top {
        font-size: calc(28 / 750 * 100vw);
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .apply1__visual {
    width: 100%;
    margin: 40px 0 0; }
    @media screen and (max-width: 768px) {
      .apply1__visual {
        margin: calc(50 / 750 * 100vw) 0 0; } }
    .apply1__visual img {
      display: block;
      width: 100%;
      height: auto; }

.apply_end {
  color: #fff; }

.apply2 {
  width: 100%;
  text-align: center;
  padding: 85px 0;
  background: #6f7c73; }
  @media screen and (max-width: 768px) {
    .apply2 {
      padding: calc(85 / 750 * 100vw) 0; } }
  .apply2 > h2 {
    width: 325px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .apply2 > h2 {
        width: 60%;
        margin: 0 auto; } }
  .apply2__subttl {
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .apply2__subttl {
        font-size: calc(30 / 750 * 100vw);
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .apply2__box {
    display: flex;
    justify-content: space-between;
    width: 80%;
    max-width: 1080px;
    margin: 60px auto 0; }
    @media screen and (max-width: 768px) {
      .apply2__box {
        flex-wrap: wrap;
        width: 90%;
        max-width: auto;
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .apply2__step {
    display: flex;
    justify-content: space-between;
    width: 70%; }
    @media screen and (max-width: 768px) {
      .apply2__step {
        width: 100%; } }
    .apply2__step > li {
      width: 48%;
      transition: all .4s; }
    .apply2__step > li:hover {
      opacity: 0.8; }
  .apply2__present {
    width: 27%; }
    @media screen and (max-width: 768px) {
      .apply2__present {
        width: 100%;
        margin: 5% auto 0; } }

.caution {
  width: 800px;
  margin: 80px auto; }
  @media screen and (max-width: 768px) {
    .caution {
      width: 90%;
      margin: calc(80 / 750 * 100vw) auto; } }
  .caution > p {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 28px;
    font-weight: bold;
    margin: 75px 0 0;
    color: #fff;
    text-align: center;
    letter-spacing: 0.06em; }
    @media screen and (max-width: 768px) {
      .caution > p {
        width: 90%;
        font-size: calc(32 / 750 * 100vw);
        margin: calc(75 / 750 * 100vw) auto 0; } }
  .caution > ul {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 24px;
    border-top: 2px solid #fff;
    margin: 25px 0 0;
    padding: 25px 0 0;
    color: #fff;
    text-align: justify;
    letter-spacing: 0.06em; }
    @media screen and (max-width: 768px) {
      .caution > ul {
        width: 90%;
        font-size: calc(24 / 750 * 100vw);
        margin: calc(25 / 750 * 100vw) auto 0;
        padding: calc(25 / 750 * 100vw) 0 0; } }
    .caution > ul > li {
      margin: 0 0 20px;
      line-height: 1.5; }
      @media screen and (max-width: 768px) {
        .caution > ul > li {
          margin: 0 0 calc(20 / 750 * 100vw); } }
      .caution > ul > li > p > span:first-of-type {
        color: #FFE4C4;
        text-decoration: underline; }
      .caution > ul > li > p > span:last-of-type {
        display: block;
        margin: 15px 0 0; }
        @media screen and (max-width: 768px) {
          .caution > ul > li > p > span:last-of-type {
            margin: calc(15 / 750 * 100vw) 0 0; } }

.upload__logo {
  width: 40%;
  padding: 10px 0;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .upload__logo {
      width: 60%;
      padding: calc(10 / 750 * 100vw) 0; } }
.upload__ttl {
  width: 100%; }
.upload__step {
  width: 95%;
  padding: 20px 0;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .upload__step {
      width: 95%;
      padding: calc(20 / 750 * 100vw) 0; } }

.form {
  width: 100%;
  min-height: 100vh;
  padding: 0 0 50px;
  /* margin: 100px auto; */ }
  @media screen and (max-width: 768px) {
    .form {
      /* margin: calc(100 / 750 * 100vw) auto; */
      padding: 0 0 calc(50 / 750 * 100vw); } }
  .form__wrap {
    background: #fff;
    width: 768px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .form__wrap {
        width: 100%; } }
  .form__inner {
    width: 100%; }
  .form__box {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .form__box {
        width: 90%;
        max-width: auto;
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .form__receiptBox {
    width: 90%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .form__receiptBox {
        width: 90%;
        margin: calc(40 / 750 * 100vw) auto 0; } }
    .form__receiptBox > .form__boxL {
      width: 100%; }
      .form__receiptBox > .form__boxL > .form__itemName {
        width: 100%;
        line-height: 1.5; }
    .form__receiptBox > .form__boxR {
      width: 100%; }
  .form__agreeBox {
    cursor: pointer;
    display: flex;
    align-items: center;
    width: 90%;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .form__agreeBox {
        margin: calc(30 / 750 * 100vw) auto 0; } }
    .form__agreeBox > .form__boxR {
      display: block;
      line-height: 1;
      padding-left: 15px; }
      @media screen and (max-width: 768px) {
        .form__agreeBox > .form__boxR {
          padding-left: calc(15 / 750 * 100vw); } }
    .form__agreeBox > .form__boxL > input[type=checkbox] {
      font-size: 100%;
      height: 24px;
      width: 24px;
      margin: 0; }
      @media screen and (max-width: 768px) {
        .form__agreeBox > .form__boxL > input[type=checkbox] {
          font-size: 100%;
          height: calc(24 / 750 * 100vw);
          width: calc(24 / 750 * 100vw); } }
  .form__red {
    color: #bb121a;
    margin-left: 15px; }
    @media screen and (max-width: 768px) {
      .form__red {
        margin-left: calc(15 / 750 * 100vw); } }
  .form__black {
    color: #000; }
  .form__itemName {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.04em; }
    @media screen and (max-width: 768px) {
      .form__itemName {
        font-size: calc(28 / 750 * 100vw); } }
  .form__itemNameSub1 {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 30px;
    margin: 20px 0 20px;
    font-weight: bold;
    color: yellow; }
    @media screen and (max-width: 768px) {
      .form__itemNameSub1 {
        font-size: calc(52 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) 0 calc(20 / 750 * 100vw);
        text-align: justify; } }
  .form__radioLabel {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 14px; }
    @media screen and (max-width: 768px) {
      .form__radioLabel {
        font-size: calc(26 / 750 * 100vw); } }
  .form__select {
    display: block;
    width: 100%;
    background: #eeefef;
    border: solid 1px #646464;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 18px;
    color: #646464;
    line-height: 1.5;
    letter-spacing: 0.06em;
    padding: 15px 0 15px 15px;
    cursor: pointer;
    margin: 20px auto 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #646464 50%), linear-gradient(135deg, #646464 50%, transparent 50%);
    background-size: 10px 10px, 10px 10px;
    background-position: calc(100% - 25px) 50%, calc(100% - 15px) 50%;
    background-repeat: no-repeat; }
    @media screen and (max-width: 768px) {
      .form__select {
        width: 100%;
        font-size: calc(28 / 750 * 100vw);
        padding: calc(20 / 750 * 100vw) 0 calc(20 / 750 * 100vw) calc(20 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) auto 0; } }
  .form__input {
    width: 100%;
    background: #eeefef;
    border: solid 1px #646464;
    font-size: 16px;
    padding: 15px 0 15px 15px;
    margin: 15px 0 0; }
    @media screen and (max-width: 768px) {
      .form__input {
        font-size: calc(28 / 750 * 100vw);
        padding: calc(20 / 750 * 100vw) 0 calc(20 / 750 * 100vw) calc(20 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) 0 0; } }
  .form__previewImg {
    width: 80%;
    margin: 20px auto 0; }
    @media screen and (max-width: 768px) {
      .form__previewImg {
        margin: calc(20 / 750 * 100vw) auto 0; } }
  .form__uploadBtn {
    width: 60%;
    background: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 26px;
    font-weight: bold;
    color: #000;
    text-align: center;
    letter-spacing: 0.06em;
    padding: 0.6em 0 0.6em 0;
    border: solid 2px #000;
    border-radius: 7.5px;
    cursor: pointer;
    transition: all .4s;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .form__uploadBtn {
        width: 60%;
        font-size: calc(26 / 750 * 100vw);
        padding: calc(20 / 750 * 100vw) 0;
        margin: calc(30 / 750 * 100vw) auto 0; } }
  .form__uploadBtn:hover {
    background: #000;
    color: #fff; }
  .form__checkBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #646464;
    width: 300px;
    margin: 50px auto 0;
    padding: 10px 0;
    border: 2px solid #646464;
    border-radius: 7.5px;
    transition: all .4s;
    cursor: pointer;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0.04em;
    color: #fff;
    display: block;
    text-align: center;
    font-size: 24px; }
    @media screen and (max-width: 768px) {
      .form__checkBtn {
        width: 50%;
        font-size: calc(28 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0;
        padding: calc(20 / 750 * 100vw) 0; } }
  .form__checkBtn:hover {
    background: #fff;
    color: #000; }
  .form__text {
    width: 90%;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .form__text {
        margin: calc(75 / 750 * 100vw) auto 0; } }
  .form__text-ttl {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 24px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
    letter-spacing: 0.06em;
    background: #eeefef;
    color: #000;
    padding: 5px 0 5px 10px;
    margin: 0 auto 30px; }
    @media screen and (max-width: 768px) {
      .form__text-ttl {
        font-size: calc(24 / 750 * 100vw);
        padding: calc(5 / 750 * 100vw) 0 calc(5 / 750 * 100vw) calc(10 / 750 * 100vw);
        margin: 0 auto calc(30 / 750 * 100vw); } }
  .form__text-list {
    margin: 0 auto 30px; }
    @media screen and (max-width: 768px) {
      .form__text-list {
        margin: 0 auto calc(30 / 750 * 100vw); } }
    .form__text-list > li {
      display: flex;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-size: 24px;
      color: #000;
      line-height: 1.7;
      letter-spacing: 0.04em;
      text-align: justify; }
      @media screen and (max-width: 768px) {
        .form__text-list > li {
          font-size: calc(24 / 750 * 100vw); } }
      .form__text-list > li > span > a {
        display: inline;
        text-decoration: underline;
        word-wrap: break-word;
        color: #000; }
      .form__text-list > li > span:first-of-type {
        display: block;
        width: 2%; }
      .form__text-list > li > span:last-of-type {
        display: block;
        width: 95.5%;
        margin-left: 2.5%; }
  .form__red {
    color: #bb121a; }
  .form__text-caution {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    font-size: 24px;
    color: #000;
    line-height: 1.7;
    letter-spacing: 0.04em;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .form__text-caution {
        font-size: calc(24 / 750 * 100vw); } }
  .form__confirmBtnWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .form__confirmBtnWrap {
        margin: calc(50 / 750 * 100vw) auto 0; } }
    .form__confirmBtnWrap > button:first-of-type {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #646464;
      width: 300px;
      margin: 0 auto 30px;
      padding: 10px 0;
      border: 2px solid #646464;
      border-radius: 7.5px;
      transition: all .4s;
      cursor: pointer;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-weight: bold;
      line-height: 1.3;
      letter-spacing: 0.04em;
      color: #fff;
      display: block;
      text-align: center;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .form__confirmBtnWrap > button:first-of-type {
          width: 50%;
          font-size: calc(28 / 750 * 100vw);
          margin: 0 auto calc(30 / 750 * 100vw);
          padding: calc(20 / 750 * 100vw) 0; } }
    .form__confirmBtnWrap > button:first-of-type:hover {
      background: #fff;
      color: #000; }
    .form__confirmBtnWrap > button:last-of-type {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      width: 300px;
      margin: 0 auto 30px;
      padding: 10px 0;
      border: 2px solid #646464;
      border-radius: 7.5px;
      transition: all .4s;
      cursor: pointer;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-weight: bold;
      line-height: 1.3;
      letter-spacing: 0.04em;
      color: #000;
      display: block;
      text-align: center;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .form__confirmBtnWrap > button:last-of-type {
          width: 50%;
          font-size: calc(28 / 750 * 100vw);
          margin: 0 auto calc(30 / 750 * 100vw);
          padding: calc(20 / 750 * 100vw) 0; } }
    .form__confirmBtnWrap > button:last-of-type:hover {
      background: #646464;
      color: #fff; }

#J-file-upload-input {
  display: none; }

.confirm {
  width: 100%;
  min-height: 100vh;
  padding: 0 0 50px; }
  @media screen and (max-width: 768px) {
    .confirm {
      padding: 0 0 calc(50 / 750 * 100vw); } }
  .confirm__inner {
    width: 100%; }
  .confirm__box {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .confirm__box {
        width: 90%;
        margin: calc(30 / 750 * 100vw) auto 0; } }
  .confirm__itemName {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 18px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
    letter-spacing: 0.06em; }
    @media screen and (max-width: 768px) {
      .confirm__itemName {
        font-size: calc(28 / 750 * 100vw); } }
  .confirm__confirmTxt {
    background: #eeefef;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 18px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
    letter-spacing: 0.06em;
    margin: 15px auto 0;
    padding: 15px 0 15px 15px; }
    @media screen and (max-width: 768px) {
      .confirm__confirmTxt {
        font-size: calc(28 / 750 * 100vw);
        margin: calc(15 / 750 * 100vw) auto 0;
        padding: calc(15 / 750 * 100vw) 0 calc(15 / 750 * 100vw) calc(15 / 750 * 100vw); } }
  .confirm__confirmImg {
    display: block;
    width: 80%;
    margin: 15px auto 0; }
    @media screen and (max-width: 768px) {
      .confirm__confirmImg {
        margin: calc(15 / 750 * 100vw) auto 0; } }
  .confirm__confirmImgNone {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .confirm__confirmImgNone {
        font-size: calc(24 / 750 * 100vw); } }
  .confirm__confirmBtnWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .confirm__confirmBtnWrap {
        margin: calc(50 / 750 * 100vw) auto 0; } }
    .confirm__confirmBtnWrap > button:first-of-type {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #646464;
      width: 300px;
      margin: 0 auto 30px;
      padding: 10px 0;
      border: 2px solid #646464;
      border-radius: 7.5px;
      transition: all .4s;
      cursor: pointer;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-weight: bold;
      line-height: 1.3;
      letter-spacing: 0.04em;
      color: #fff;
      display: block;
      text-align: center;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .confirm__confirmBtnWrap > button:first-of-type {
          width: 50%;
          font-size: calc(28 / 750 * 100vw);
          margin: 0 auto calc(30 / 750 * 100vw);
          padding: calc(20 / 750 * 100vw) 0; } }
    .confirm__confirmBtnWrap > button:first-of-type:hover {
      background: #fff;
      color: #000; }
    .confirm__confirmBtnWrap > button:last-of-type {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      width: 300px;
      margin: 0 auto 30px;
      padding: 10px 0;
      border: 2px solid #646464;
      border-radius: 7.5px;
      transition: all .4s;
      cursor: pointer;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-weight: bold;
      line-height: 1.3;
      letter-spacing: 0.04em;
      color: #000;
      display: block;
      text-align: center;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .confirm__confirmBtnWrap > button:last-of-type {
          width: 50%;
          font-size: calc(28 / 750 * 100vw);
          margin: 0 auto calc(30 / 750 * 100vw);
          padding: calc(20 / 750 * 100vw) 0; } }
    .confirm__confirmBtnWrap > button:last-of-type:hover {
      background: #646464;
      color: #fff; }
  .confirm__confirmBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #009944;
    width: 320px;
    margin: 20px 10px 0;
    padding: 10px 0;
    border: 2px solid #009944;
    border-radius: 10px;
    transition: all .4s;
    cursor: pointer;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0.04em;
    color: #000;
    display: block;
    text-align: center;
    font-size: 28px; }
    @media screen and (max-width: 768px) {
      .confirm__confirmBtn {
        width: 60%;
        font-size: calc(26 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) auto 0;
        padding: calc(30 / 750 * 100vw) 0; } }
  .confirm__confirmBtn:last-of-type {
    background-color: #e60012;
    border: 2px solid #e60012; }
  .confirm__confirmBtn:hover {
    background-color: #fff; }

.compleat {
  width: 100%;
  min-height: 100vh;
  padding: 0 0 50px;
  /* margin: 100px auto; */ }
  @media screen and (max-width: 768px) {
    .compleat {
      /* margin: calc(100 / 750 * 100vw) auto; */
      padding: 0 0 calc(50 / 750 * 100vw); } }
  .compleat > p {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.06em;
    text-align: center;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .compleat > p {
        font-size: calc(28 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0; } }
  .compleat__topBtnWrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 70px auto 0; }
    @media screen and (max-width: 768px) {
      .compleat__topBtnWrap {
        margin: calc(70 / 750 * 100vw) auto 0; } }
    .compleat__topBtnWrap > a {
      display: flex;
      align-items: center;
      justify-content: center;
      background: #646464;
      width: 300px;
      margin: 0 auto;
      padding: 10px 0;
      border: 2px solid #646464;
      border-radius: 7.5px;
      transition: all .4s;
      cursor: pointer;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
      font-weight: bold;
      line-height: 1.3;
      letter-spacing: 0.04em;
      color: #fff;
      display: block;
      text-align: center;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .compleat__topBtnWrap > a {
          width: 50%;
          font-size: calc(28 / 750 * 100vw);
          margin: 0 auto;
          padding: calc(20 / 750 * 100vw) 0; } }
    .compleat__topBtnWrap > a:first-of-type:hover {
      background: #fff;
      color: #000; }

.present {
  width: 100%;
  background: url(../img/present/metallic-background.png) center center;
  background-size: cover;
  padding: 85px 0;
  position: relative; }
  @media screen and (max-width: 768px) {
    .present {
      padding: calc(85 / 750 * 100vw) 0; } }
  .present > h2 {
    display: block;
    width: 320px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .present > h2 {
        width: calc(320 / 750 * 100vw); } }
  .present__list {
    list-style: none;
    margin: 40px auto 0;
    padding: 0;
    width: 90%;
    max-width: 1080px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px; }
    @media screen and (max-width: 768px) {
      .present__list {
        grid-template-columns: 1fr;
        width: 80%;
        gap: calc(20 / 750 * 100vw);
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .present__item {
    display: block;
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.9s cubic-bezier(0.22, 0.61, 0.36, 1); }
    .present__item:nth-child(3n+1) {
      transform: translateX(-40px); }
    .present__item:nth-child(3n+2) {
      transform: translateY(40px); }
    .present__item:nth-child(3n) {
      transform: translateX(40px); }
    @media screen and (max-width: 768px) {
      .present__item:nth-child(3n+1), .present__item:nth-child(3n+2), .present__item:nth-child(3n) {
        transform: translateX(40px); } }
    .present__item.is-visible {
      opacity: 1;
      transform: translate(0, 0); }
    .present__item img {
      display: block;
      width: 100%;
      height: auto; }
  .present__entry-btn {
    display: block;
    width: 100%;
    max-width: 417px;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .present__entry-btn {
        max-width: calc(600 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0; } }
    .present__entry-btn img {
      display: block;
      width: 100%;
      height: auto; }
    .present__entry-btn--disabled {
      cursor: not-allowed;
      pointer-events: none; }
      .present__entry-btn--disabled img {
        filter: grayscale(100%);
        opacity: 0.5; }
  .present__entry-note {
    color: #fff;
    text-align: center;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: 0.04em;
    margin: 20px auto 0; }
    @media screen and (max-width: 768px) {
      .present__entry-note {
        font-size: calc(26 / 750 * 100vw);
        margin: calc(20 / 750 * 100vw) auto 0; } }

.version {
  width: 100%;
  background: url(../img/present/metallic-background.png) center center;
  background-size: cover;
  padding: 85px 0; }
  @media screen and (max-width: 768px) {
    .version {
      padding: calc(85 / 750 * 100vw) 0; } }
  .version__list {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    width: 90%;
    max-width: 1080px;
    display: flex;
    flex-direction: column;
    gap: 40px; }
    @media screen and (max-width: 768px) {
      .version__list {
        width: 90%;
        gap: calc(40 / 750 * 100vw); } }
  .version__item {
    background: #000;
    padding: 40px; }
    @media screen and (max-width: 768px) {
      .version__item {
        padding: calc(40 / 750 * 100vw);
        display: flex;
        flex-direction: column; } }
  .version__logo {
    display: block;
    margin: 0 auto;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .version__logo {
        order: 2;
        margin: calc(40 / 750 * 100vw) auto 0; } }
    .version__logo img {
      display: inline-block;
      width: auto;
      height: auto; }
    .version__logo--imax img {
      height: 38px; }
      @media screen and (max-width: 768px) {
        .version__logo--imax img {
          height: calc(40 / 750 * 100vw); } }
    .version__logo--4dx img {
      height: 56px; }
      @media screen and (max-width: 768px) {
        .version__logo--4dx img {
          height: calc(56 / 750 * 100vw); } }
    .version__logo--screenx img {
      height: 36px; }
      @media screen and (max-width: 768px) {
        .version__logo--screenx img {
          height: calc(38 / 750 * 100vw); } }
  .version__media {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 16px;
    width: 70%;
    margin: 28px auto 0; }
    @media screen and (max-width: 768px) {
      .version__media {
        order: 1;
        flex-direction: column;
        align-items: center;
        width: 100%;
        gap: calc(24 / 750 * 100vw);
        margin: 0 auto; } }
  .version__poster {
    flex: 0 0 auto;
    width: 30%;
    aspect-ratio: 230 / 308;
    background: #000; }
    @media screen and (max-width: 768px) {
      .version__poster {
        width: 100%; } }
    .version__poster img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain; }
  .version__movie {
    flex: 1 1 auto;
    aspect-ratio: 486 / 308;
    background: #5a5a5a;
    position: relative; }
    @media screen and (max-width: 768px) {
      .version__movie {
        width: 100%;
        flex: 0 0 auto; } }
    .version__movie img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .version__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 24px; }
    @media screen and (max-width: 768px) {
      .version__bottom {
        order: 3;
        flex-direction: column;
        gap: calc(24 / 750 * 100vw);
        margin-top: calc(30 / 750 * 100vw); } }
  .version__desc {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 500;
    font-size: 22px;
    line-height: 1.7;
    letter-spacing: 0.04em;
    text-align: center;
    flex: 1 1 auto; }
    @media screen and (max-width: 768px) {
      .version__desc {
        font-size: calc(28 / 750 * 100vw); } }
    .version__desc-em {
      color: #9bb195;
      font-weight: 700;
      text-decoration: underline;
      text-decoration-thickness: 1px;
      text-underline-offset: 4px; }
  .version__btn {
    display: block;
    flex: 0 0 auto;
    width: 206px; }
    @media screen and (max-width: 768px) {
      .version__btn {
        width: calc(310 / 750 * 100vw); } }
    .version__btn img {
      display: block;
      width: 100%;
      height: auto; }

.about {
  width: 100%;
  background: #000;
  padding: 85px 0;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .about {
      padding: calc(85 / 750 * 100vw) 0; } }
  .about__title {
    display: block;
    width: 320px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .about__title {
        width: calc(560 / 750 * 100vw); } }
    .about__title img {
      display: block;
      width: 100%;
      height: auto; }
  .about__youtube {
    display: block;
    width: 80%;
    max-width: 880px;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .about__youtube {
        width: 90%;
        max-width: auto;
        margin: calc(40 / 750 * 100vw) auto 0; } }
    .about__youtube > div {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: calc(9 / 16 * 100%); }
      .about__youtube > div > iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
  .about__visual {
    width: 90%;
    max-width: 1080px;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .about__visual {
        width: 90%;
        margin: calc(60 / 750 * 100vw) auto 0; } }
    .about__visual img {
      display: block;
      width: 100%;
      height: auto; }
  .about__lead {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 0.04em;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .about__lead {
        font-size: calc(26 / 750 * 100vw);
        margin: calc(60 / 750 * 100vw) auto 0; } }
  .about__credit {
    color: #fff;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.04em;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .about__credit {
        font-size: calc(24 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0; } }
    .about__credit dt {
      color: #9bb195;
      font-weight: 700;
      margin-top: 20px; }
      @media screen and (max-width: 768px) {
        .about__credit dt {
          margin-top: calc(28 / 750 * 100vw); } }
      .about__credit dt:first-child {
        margin-top: 0; }
    .about__credit dd {
      margin: 0; }
  .about__logo {
    display: block;
    width: 280px;
    margin: 60px auto 0; }
    @media screen and (max-width: 768px) {
      .about__logo {
        width: calc(440 / 750 * 100vw);
        margin: calc(70 / 750 * 100vw) auto 0; } }
    .about__logo img {
      display: block;
      width: 100%;
      height: auto; }
  .about__btns {
    list-style: none;
    margin: 40px auto 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px; }
    @media screen and (max-width: 768px) {
      .about__btns {
        margin: calc(50 / 750 * 100vw) auto 0;
        gap: calc(20 / 750 * 100vw); } }
  .about__btn {
    display: block;
    width: 280px; }
    @media screen and (max-width: 768px) {
      .about__btn {
        width: calc(440 / 750 * 100vw); } }
    .about__btn img {
      display: block;
      width: 100%;
      height: auto; }

.story {
  width: 100%;
  padding: 85px 0;
  background: url(../img/story/story_bg_pc.png) center center;
  background-size: cover;
  position: relative; }
  @media screen and (max-width: 768px) {
    .story {
      padding: calc(85 / 750 * 100vw) 0;
      background: url(../img/story/story_bg_sp.png) center center;
      background-size: cover; } }
  .story > h2 {
    display: block;
    width: 70%;
    max-width: 760px;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .story > h2 {
        width: 90%;
        max-width: auto;
        margin: 0 auto; } }
  .story__youtube {
    display: block;
    width: 80%;
    max-width: 880px;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .story__youtube {
        width: 90%;
        max-width: auto;
        margin: calc(40 / 750 * 100vw) auto 0; } }
    .story__youtube > div {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: calc(9 / 16 * 100%); }
      .story__youtube > div > iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    .story__youtube > img {
      width: 100%;
      height: auto;
      display: block; }
  .story__red {
    display: block;
    width: 80%;
    max-width: 1080px;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    text-align: center;
    font-size: 32px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 40px auto 0; }
    @media screen and (max-width: 768px) {
      .story__red {
        width: 90%;
        max-width: auto;
        font-size: calc(42 / 750 * 100vw);
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .story__black {
    display: block;
    width: 80%;
    max-width: 1080px;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    text-align: left;
    font-size: 18px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .story__black {
        width: 90%;
        max-width: auto;
        font-size: calc(28 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0; } }
  .story__credit {
    display: block;
    width: 80%;
    max-width: 1080px;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-weight: bold;
    text-align: left;
    font-size: 18px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 30px auto 0; }
    @media screen and (max-width: 768px) {
      .story__credit {
        width: 90%;
        max-width: auto;
        font-size: calc(22 / 750 * 100vw);
        margin: calc(50 / 750 * 100vw) auto 0; } }
  .story > h3 {
    display: block;
    width: 60%;
    max-width: 660px;
    margin: 60px auto 0; }
    @media screen and (max-width: 768px) {
      .story > h3 {
        width: 80%;
        max-width: auto;
        margin: calc(100 / 750 * 100vw) auto 0; } }
  .story__roadshow {
    display: block;
    width: 40%;
    max-width: 320px;
    margin: 40px auto 0;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.04em; }
    @media screen and (max-width: 768px) {
      .story__roadshow {
        width: 40%;
        max-width: auto;
        margin: calc(40 / 750 * 100vw) auto 0;
        font-size: calc(36 / 750 * 100vw); } }
  .story__copy {
    display: block;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    text-align: center;
    font-size: 12px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .story__copy {
        font-size: calc(20 / 750 * 100vw);
        margin: calc(60 / 750 * 100vw) auto 0; } }
  .story__btn {
    display: flex;
    justify-content: space-between;
    width: 60%;
    max-width: 660px;
    margin: 50px auto 0; }
    @media screen and (max-width: 768px) {
      .story__btn {
        flex-direction: column;
        width: 80%;
        max-width: auto;
        margin: calc(60 / 750 * 100vw) auto 0; } }
    .story__btn > li {
      text-align: center;
      width: 47.5%;
      background: #ae0008;
      border: solid #ae0008 2px;
      border-radius: 100vw;
      transition: all .4s;
      margin: 0 auto; }
      @media screen and (max-width: 768px) {
        .story__btn > li {
          width: 100%;
          padding: calc(15 / 750 * 100vw) 0;
          margin-bottom: calc(30 / 750 * 100vw); } }
      .story__btn > li > a {
        width: 100%;
        display: block;
        font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
        font-weight: bold;
        color: #fff;
        font-size: 16px;
        padding: 15px 0; }
        @media screen and (max-width: 768px) {
          .story__btn > li > a {
            font-size: calc(30 / 750 * 100vw);
            padding: calc(15 / 750 * 100vw) 0; } }
    .story__btn > li:hover {
      background: #fff; }
      .story__btn > li:hover > a {
        color: #0b0c0b; }
  .story__inquiry {
    display: block;
    color: #fff;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    text-align: center;
    text-decoration: underline;
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 1.7;
    margin: 50px auto 0;
    transition: all .4s; }
    @media screen and (max-width: 768px) {
      .story__inquiry {
        font-size: calc(20 / 750 * 100vw);
        margin: calc(40 / 750 * 100vw) auto 0; } }
  .story__inquiry:hover {
    opacity: 0.8; }

/* componentes */
/* @import '3-object/_c-xxx.scss'; */

/* ② link button hover */
.version__btn:hover {
  transform: translateY(-4px);
  opacity: 0.85; }

.about__btn:hover {
  transform: translateY(-4px);
  opacity: 0.85; }

.present__entry-btn:hover {
  transform: translateY(-4px); }

/* ③ version movie YouTube */
.version__movie {
  aspect-ratio: 16 / 9; }

.version__movie-yt {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%; }

.version__movie-yt iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none; }

/* ④ apply1 slideshow */
.apply1__slideshow {
  position: relative;
  width: 100%; }

.apply1__slide-img {
  display: block;
  width: 100%;
  height: auto;
  animation: apply1-crossfade 12.5s infinite; }

.apply1__slide-img:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.apply1__slide-img:nth-child(1) { animation-delay: 0s; }
.apply1__slide-img:nth-child(2) { animation-delay: -10s; }
.apply1__slide-img:nth-child(3) { animation-delay: -7.5s; }
.apply1__slide-img:nth-child(4) { animation-delay: -5s; }
.apply1__slide-img:nth-child(5) { animation-delay: -2.5s; }

@keyframes apply1-crossfade {
  0%    { opacity: 0; }
  4%    { opacity: 1; }
  16%   { opacity: 1; }
  20%   { opacity: 0; }
  100%  { opacity: 0; }
}

/*# sourceMappingURL=style.css.map */
