@charset "UTF-8";
/*
A modern CSS reset 2023 / 9 / 18
https://github.com/Andy-set-studio/modern-css-reset
*/
*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
      text-size-adjust: none;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul[role=list], ol[role=list] {
  list-style: none;
}

body {
  min-height: 100vh;
  line-height: 1.5;
}

h1, h2, h3, h4, button, input, label {
  line-height: 1.1;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

img, picture {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

textarea:not([rows]) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 5ex;
}

@-webkit-keyframes fadeIn {
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes clipPath {
  100% {
    clip-path: inset(0);
  }
}
@keyframes clipPath {
  100% {
    clip-path: inset(0);
  }
}
@-webkit-keyframes clipPathCircle {
  100% {
    clip-path: circle(100% at 50% 50%);
  }
}
@keyframes clipPathCircle {
  100% {
    clip-path: circle(100% at 50% 50%);
  }
}
p,
ul,
ol,
h1,
h2,
h3,
figure,
dl,
dd,
button,
pre {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

ul,
ol {
  list-style: none;
}

img,
video {
  max-width: 100%;
  vertical-align: bottom;
  line-height: 1;
}

button {
  color: currentColor;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) {
  button:hover {
    opacity: 0.5;
  }
}

a {
  color: currentColor;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) {
  a:hover {
    opacity: 0.5;
  }
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body {
  font-family: "Shuei NijimiMGo B JIS2004", sans-serif;
  font-size: 1.5rem;
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  word-break: normal; /* 単語の分割はデフォルトに依存 */
  line-break: strict; /* 禁則処理を厳格に適用 */
}

[x-cloak],
[v-cloak] {
  display: none !important;
}

@media (min-width: 641px) {
  .device-sp {
    display: none;
  }
}

.device-pc {
  display: none;
}
@media (max-width: 600px) {
  .device-pc {
    display: block;
  }
}

br:not(.sp-br):not(.sp) {
  display: none;
}
@media (min-width: 641px) {
  br:not(.sp-br):not(.sp) {
    display: block;
  }
}

body {
  color: #414141;
  overflow-x: hidden;
  width: 100vw;
}

.fade-in {
  opacity: 0; /* 初期状態は透明 */
  -webkit-transition: opacity 1.8s ease-in-out;
  transition: opacity 1.8s ease-in-out;
}

.fade-in.is-visible {
  opacity: 1;
}

@-webkit-keyframes revealFromCenter {
  0% {
    clip-path: inset(0 50% 0 50%); /* top right bottom left */
    opacity: 0; /* 最初は透明 */
  }
  30% {
    opacity: 0.8;
  }
  100% {
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1;
  }
}

@keyframes revealFromCenter {
  0% {
    clip-path: inset(0 50% 0 50%); /* top right bottom left */
    opacity: 0; /* 最初は透明 */
  }
  30% {
    opacity: 0.8;
  }
  100% {
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1;
  }
}
@-webkit-keyframes revealFromCenter2 {
  0% {
    clip-path: inset(50% 0 50% 0); /* top right bottom left */
    opacity: 0; /* 最初は透明 */
  }
  30% {
    opacity: 0.8;
  }
  100% {
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1;
  }
}
@keyframes revealFromCenter2 {
  0% {
    clip-path: inset(50% 0 50% 0); /* top right bottom left */
    opacity: 0; /* 最初は透明 */
  }
  30% {
    opacity: 0.8;
  }
  100% {
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1;
  }
}
#top {
  position: relative;
}
#top .text-area .brand {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  width: 63px;
}
@media (min-width: 641px) {
  #top .text-area .brand {
    width: initial;
    right: 2rem;
  }
}
@media (max-width: 600px) {
  #top .text-area .brand {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 20px;
    top: auto;
  }
}
#top .text-area .brand img {
  -webkit-filter: invert(92%) sepia(93%) saturate(27%) hue-rotate(249deg) brightness(106%) contrast(100%);
          filter: invert(92%) sepia(93%) saturate(27%) hue-rotate(249deg) brightness(106%) contrast(100%);
}
#top .text-area h1 {
  position: absolute;
  width: 87.435vw;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
@media (min-width: 641px) {
  #top .text-area h1 {
    width: 100vw;
  }
}
@media (max-width: 600px) {
  #top .text-area h1 {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    margin-top: -3vw;
  }
}
#top .mv-area {
  position: relative;
  z-index: -1;
}

#yodogawa {
  font-size: 1.6rem;
  line-height: 180%; /* 28.8px */
  letter-spacing: 0.4px;
  padding: 62px 10.25vw;
}
@media (min-width: 641px) {
  #yodogawa {
    padding: 100px 0;
    font-size: 1.8rem;
    letter-spacing: 1.17px;
  }
}
#yodogawa p {
  -webkit-transform: translateY(1.5em);
          transform: translateY(1.5em);
}
@media (min-width: 641px) {
  #yodogawa p {
    text-align: center;
  }
}
#yodogawa p.observe-target {
  opacity: 0;
}
#yodogawa p.observe-target.on {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-animation: fadeIn 1s forwards;
          animation: fadeIn 1s forwards;
}
#yodogawa p + p {
  margin-top: 1em;
}
@media (min-width: 641px) {
  #yodogawa p + p {
    margin-top: 2em;
  }
}
#yodogawa p.img {
  max-width: 400px;
  margin: 2em auto;
}
@media (min-width: 641px) {
  #yodogawa p.img {
    margin: 3em auto;
  }
}
#yodogawa p.img img {
  border-radius: 4px;
}/*# sourceMappingURL=trailer.css.map */