@charset "UTF-8";
/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
* {
  min-height: 0;
}

/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-break: normal;
  -moz-tab-size: 4;
    -o-tab-size: 4;
       tab-size: 4;
  tab-size: 4;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
}

*,
::before,
::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
}

::before,
::after {
  vertical-align: inherit;
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
}

* {
  margin: 0;
  padding: 0; /* Reset `padding` and `margin` of all elements */
}

/* # =================================================================
   # General elements
   # ================================================================= */
hr {
  overflow: visible; /* Show the overflow in Edge and IE */
  height: 0; /* Add the correct box sizing in Firefox */
  color: inherit; /* Correct border color in Firefox. */
}

details,
main {
  display: block; /* Render the `main` element consistently in IE. */
}

summary {
  display: list-item; /* Add the correct display in all browsers */
}

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden] {
  display: none; /* Add the correct display in IE */
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}

b,
strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit; /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0; /* Remove text indentation in Chrome, Edge, and Safari */
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto; /* Correct the cursor style of increment and decrement buttons in Chrome */
}

[type=search] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none; /* Remove the inner padding in Chrome and Safari on macOS */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  color: inherit;
  cursor: pointer;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button; /* Correct the inability to style clickable types in iOS */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  border-style: none;
  background-color: transparent;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; /* Firefox 36+ */
  appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge 18- and IE */
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
  color: inherit;
  /* Correct the inability to style clickable types in iOS and Safari */
  -webkit-appearance: button;
          appearance: button;
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled=true] {
  cursor: default;
}

li {
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1em;
}

[type=text],
select,
textarea {
  font-size: 100%;
}

button,
[type=submit] {
  padding: 0;
  border: 0;
  outline: 0;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: 0;
     -moz-appearance: 0;
          appearance: 0;
}

:focus:not(:focus-visible) {
  outline: none;
}

/* color */
:root {
  --primary: #fff;
  --text: #fff;
  --accent: rgba(230, 0, 18, 1);
  --bg-primary: rgba(45, 44, 43, 1);
  --layer-dark: rgba(126, 127, 128, 1);
  --layer-regular: rgba(159, 160, 160, 1);
  --layer-light: rgba(233, 230, 229, 1);
  --border-light: rgba(153, 153, 153, 1);
  --line: #999;
  --text-light: #cccccc;
  --bg-pink: #fcebeb;
  --pink-light: #ffeeed;
  --gray-light: #f2f2f2;
  --pale: rgba(101, 64, 36, 0.4);
  --enji: #f26178;
  --brown-light: #ffd480;
  --beige: #faf2ed;
  --frame-white: rgba(255, 255, 255, 0.85);
  --pink-g-line: linear-gradient(180deg, #fff8f7 5.99%, #ffeeed 26.63%);
  --beige-g-line: linear-gradient(180deg, #fcf9f5 1.49%, #faf3eb 44.3%);
  --ease-out: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-in: cubic-bezier(0.11, 0, 0.5, 0);
}

/* box width */
.en {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
}

/* --------------------------------
  変数
-------------------------------- */
/* easing */
/* --------------------------------
  mixin
-------------------------------- */
/* --------------------------------
  keyframes
-------------------------------- */
@-webkit-keyframes slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes slide-in {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes line-in {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes line-in {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@-webkit-keyframes line-out {
  0% {
    width: 100%;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  100% {
    width: 100%;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@keyframes line-out {
  0% {
    width: 100%;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  100% {
    width: 100%;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@-webkit-keyframes moveFromBottom {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
@keyframes moveFromBottom {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
}
@-webkit-keyframes zoom-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes zoom-in {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
html {
  font-size: 62.5%;
  width: 100vw;
  overflow-x: clip;
}

html > body {
  font-family: ten-mincho, "Hiragino Mincho ProN", "Meiryo", helvetica-lt-pro, serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  html > body {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
html > body {
  overflow-x: clip;
  background-color: var(--bg-primary);
  font-style: normal;
  line-height: 1.5;
  color: var(--text);
  letter-spacing: 0.2em;
}

.wf-loading body {
  visibility: hidden;
}

a {
  color: var(--text);
  text-decoration: none;
}

picture {
  display: block;
  overflow: hidden;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

p {
  margin-bottom: 2em;
  line-height: 2;
}
p:last-child {
  margin-bottom: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading {
  font-weight: 400;
}

.btn, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control,
.wp-block-button__link {
  position: relative;
  display: block;
  background-color: #fff;
  color: #000;
  width: 53.8461538462vw;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .btn, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control,
  .wp-block-button__link {
    font-size: clamp(8.28px, 0.8984375vw, 11.5px);
  }
}
.btn, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control,
.wp-block-button__link {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  border-radius: 50px;
  padding: 2.8205128205vw 5.1282051282vw;
  text-align: center;
  line-height: 1;
}
@media (768px <= width) {
  .btn, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control,
  .wp-block-button__link {
    width: clamp(135px, 17.578125vw, 225px);
    padding: clamp(6.6px, 0.859375vw, 11px) clamp(12px, 1.5625vw, 20px) clamp(6px, 0.78125vw, 10px);
  }
}
@media (768px <= width) {
  .btn.short, .smf-form--simple-table + .smf-action .smf-button-control .short.smf-button-control__control,
  .wp-block-button__link.short {
    width: clamp(60px, 7.8125vw, 100px);
    font-size: 3.0769230769vw;
    padding: clamp(6.6px, 0.859375vw, 11px) clamp(12px, 1.5625vw, 20px) clamp(6px, 0.78125vw, 10px);
  }
}
@media (768px <= width) and (768px <= width) {
  .btn.short, .smf-form--simple-table + .smf-action .smf-button-control .short.smf-button-control__control,
  .wp-block-button__link.short {
    font-size: clamp(6.48px, 0.703125vw, 9px);
  }
}
.btn.short:after, .smf-form--simple-table + .smf-action .smf-button-control .short.smf-button-control__control:after,
.btn.short .arrow-box,
.smf-form--simple-table + .smf-action .smf-button-control .short.smf-button-control__control .arrow-box,
.wp-block-button__link.short:after,
.wp-block-button__link.short .arrow-box {
  display: none;
}
@media (768px <= width) {
  .btn.large, .smf-form--simple-table + .smf-action .smf-button-control .large.smf-button-control__control, .large .btn, .large .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control, .smf-form--simple-table + .smf-action .smf-button-control .large .smf-button-control__control,
  .wp-block-button__link.large,
  .large .wp-block-button__link {
    width: clamp(190.2px, 24.765625vw, 317px);
    font-size: clamp(10.8px, 1.171875vw, 15px);
    padding: clamp(10.8px, 1.40625vw, 18px) clamp(12px, 1.5625vw, 20px) clamp(10.2px, 1.328125vw, 17px);
  }
}
.btn .text, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .text,
.wp-block-button__link .text {
  line-height: 1;
}
.btn .arrow-box, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box,
.wp-block-button__link .arrow-box {
  position: absolute;
  right: 1.2820512821vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8.2051282051vw;
  height: 3.0769230769vw;
  background-color: #fff;
  border-radius: 20px;
  padding: 0 2.0512820513vw;
}
@media (768px <= width) {
  .btn .arrow-box, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box,
  .wp-block-button__link .arrow-box {
    right: clamp(3px, 0.390625vw, 5px);
    width: clamp(22.2px, 2.890625vw, 37px);
    height: clamp(8.4px, 1.09375vw, 14px);
    padding: 0 clamp(6px, 0.78125vw, 10px);
  }
}
.btn .arrow-box .arrow-wrapper, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box .arrow-wrapper,
.wp-block-button__link .arrow-box .arrow-wrapper {
  display: block;
  position: relative;
  width: 1.5384615385vw;
  height: 100%;
  margin-left: auto;
  overflow: hidden;
}
@media (768px <= width) {
  .btn .arrow-box .arrow-wrapper, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box .arrow-wrapper,
  .wp-block-button__link .arrow-box .arrow-wrapper {
    width: clamp(4.2px, 0.546875vw, 7px);
  }
}
.btn .arrow-box .arrow, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box .arrow,
.wp-block-button__link .arrow-box .arrow {
  display: block;
  width: 1.4871794872vw;
  height: 1.1025641026vw;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (768px <= width) {
  .btn .arrow-box .arrow, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control .arrow-box .arrow,
  .wp-block-button__link .arrow-box .arrow {
    width: clamp(4.062px, 0.52890625vw, 6.77px);
    height: clamp(3px, 0.390625vw, 5px);
  }
}
.btn:hover .arrow, .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control:hover .arrow,
.wp-block-button__link:hover .arrow {
  -webkit-animation: arrow-move 0.5s var(--ease-out);
          animation: arrow-move 0.5s var(--ease-out);
}

.wp-block-buttons .wp-block-button__link {
  min-width: 53.8461538462vw;
}
@media (768px <= width) {
  .wp-block-buttons .wp-block-button__link {
    min-width: clamp(135px, 17.578125vw, 225px);
    padding: clamp(9px, 1.171875vw, 15px) clamp(12px, 1.5625vw, 20px) clamp(8.4px, 1.09375vw, 14px);
  }
}

.text-btn,
.wp-text-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .text-btn,
  .wp-text-btn {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.text-btn,
.wp-text-btn {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  gap: clamp(9.6px, 1.25vw, 16px);
}
.text-btn .text,
.wp-text-btn .text {
  line-height: 1;
}
.text-btn .arrow-box,
.wp-text-btn .arrow-box {
  display: block;
  width: 8.2051282051vw;
  height: 3.0769230769vw;
  background-color: #fff;
  border-radius: 20px;
  padding: 0 2.0512820513vw;
}
@media (768px <= width) {
  .text-btn .arrow-box,
  .wp-text-btn .arrow-box {
    width: clamp(22.2px, 2.890625vw, 37px);
    height: clamp(8.4px, 1.09375vw, 14px);
    padding: 0 clamp(6px, 0.78125vw, 10px);
  }
}
.text-btn .arrow-box .arrow-wrapper,
.wp-text-btn .arrow-box .arrow-wrapper {
  display: block;
  position: relative;
  width: 1.5384615385vw;
  height: 100%;
  margin-left: auto;
  overflow: hidden;
}
@media (768px <= width) {
  .text-btn .arrow-box .arrow-wrapper,
  .wp-text-btn .arrow-box .arrow-wrapper {
    width: clamp(4.2px, 0.546875vw, 7px);
  }
}
.text-btn .arrow-box .arrow,
.wp-text-btn .arrow-box .arrow {
  display: block;
  width: 1.4871794872vw;
  height: 1.1025641026vw;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (768px <= width) {
  .text-btn .arrow-box .arrow,
  .wp-text-btn .arrow-box .arrow {
    width: clamp(4.062px, 0.52890625vw, 6.77px);
    height: clamp(3px, 0.390625vw, 5px);
  }
}
.text-btn:hover .arrow,
.wp-text-btn:hover .arrow {
  -webkit-animation: arrow-move 0.5s var(--ease-out);
          animation: arrow-move 0.5s var(--ease-out);
}
.text-btn.prev,
.wp-text-btn.prev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.text-btn.prev .arrow-box,
.wp-text-btn.prev .arrow-box {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

@-webkit-keyframes arrow-move {
  0% {
    left: 50%;
  }
  49% {
    left: 150%;
  }
  50% {
    left: -40%;
  }
  100% {
    left: 49%;
  }
}

@keyframes arrow-move {
  0% {
    left: 50%;
  }
  49% {
    left: 150%;
  }
  50% {
    left: -40%;
  }
  100% {
    left: 49%;
  }
}
.btn-box.right {
  text-align: right;
}
.btn-box.right .text-btn {
  margin-left: auto;
}

.movie-play {
  position: relative;
  display: block;
  cursor: pointer;
}
.movie-play::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 12.0512820513vw;
  height: 12.0512820513vw;
  background: url(../images/icon_play.svg) no-repeat;
  background-size: contain;
}
@media (768px <= width) {
  .movie-play::before {
    width: 8.203125vw;
    height: 8.203125vw;
  }
}

@media (width < 768px) {
  .main-navigation {
    position: fixed;
    z-index: 20;
    top: 0;
    left: 0;
    width: 100%;
    height: 100dvh;
    max-height: 100vh;
    pointer-events: none;
  }
  .main-navigation .nav-wrapper {
    position: absolute;
    z-index: 60;
    top: 0;
    left: 0;
    display: block;
    overflow-y: auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100vw;
    height: 100%;
    background: #000;
    -webkit-transition: 0.8s all cubic-bezier(0.19, 1, 0.22, 1);
    transition: 0.8s all cubic-bezier(0.19, 1, 0.22, 1);
  }
}
@media (width < 768px) and (min-width: 900px) {
  .main-navigation .nav-wrapper {
    width: 100vw;
  }
}
@media (width < 768px) {
  .transition-none .main-navigation .nav-wrapper {
    -webkit-transition: none;
    transition: none;
    -webkit-transition-duration: 0s !important;
            transition-duration: 0s !important;
  }
  .main-navigation[data-header-over=false] {
    z-index: 60;
  }
  .main-navigation[data-slide=right] .nav-wrapper {
    -webkit-transform: translate(100vw, 0);
            transform: translate(100vw, 0);
  }
  .main-navigation[data-slide=left] .nav-wrapper {
    -webkit-transform: translate(-100vw, 0);
            transform: translate(-100vw, 0);
  }
  .main-navigation[data-slide=top] .nav-wrapper {
    opacity: 0;
    -webkit-transform: translate(0, -100vh);
            transform: translate(0, -100vh);
  }
  .main-navigation[data-slide=bottom] .nav-wrapper {
    top: auto;
    bottom: 0;
    -webkit-transform: translate(0, 100vh);
            transform: translate(0, 100vh);
  }
  .main-navigation[data-slide=zoom] .nav-wrapper {
    top: 0;
    left: 50%;
    opacity: 0;
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
  .nav-open .main-navigation {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    pointer-events: inherit;
  }
  .nav-open .main-navigation[data-slide=right] .nav-wrapper {
    -webkit-transform: translate(calc(100vw - 100vw), 0);
            transform: translate(calc(100vw - 100vw), 0);
  }
}
@media (width < 768px) and (min-width: 900px) {
  .nav-open .main-navigation[data-slide=right] .nav-wrapper {
    -webkit-transform: translate(calc(100vw - 100vw), 0);
            transform: translate(calc(100vw - 100vw), 0);
  }
}
@media (width < 768px) {
  .nav-open .main-navigation[data-slide=left] .nav-wrapper {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .nav-open .main-navigation[data-slide=top] .nav-wrapper {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .nav-open .main-navigation[data-slide=bottom] .nav-wrapper {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .nav-open .main-navigation[data-slide=zoom] .nav-wrapper {
    opacity: 1;
    -webkit-transform: translate(-50%, 0) scale(1);
            transform: translate(-50%, 0) scale(1);
  }
  .fixed-menu .site-header {
    position: fixed;
    z-index: 60;
    top: 0;
    left: 0;
    width: 100%;
    height: 100dvh;
  }
  .nav-close .nav-wrapper {
    -webkit-transition-delay: 0s !important;
            transition-delay: 0s !important;
  }
  .menu-layer {
    position: fixed;
    z-index: 20;
    top: 0;
    height: 100dvh;
    left: 0;
    overflow-x: hidden;
    opacity: 0;
    overflow-y: auto;
    width: 100%;
    background: rgba(0, 0, 0, 0.75);
  }
}
.toggle-btn {
  display: block;
  position: fixed;
  z-index: 20;
  top: 4.1025641026vw;
  right: 5.1282051282vw;
  width: 7.6923076923vw;
  height: 7.6923076923vw;
  background: url(../images/icon_open.svg) no-repeat center;
  background-size: contain;
}
@media (768px <= width) {
  .toggle-btn {
    top: clamp(25.2px, 3.28125vw, 42px);
    right: 3.75vw;
    width: 2.34375vw;
    height: 2.34375vw;
  }
}
.nav-open .toggle-btn {
  background: url(../images/icon_close.svg) no-repeat center;
  background-size: contain;
}

.nav-open .container {
  pointer-events: none;
}

.col3-block {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (768px > width) {
  .col3-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-inline: 5.1282051282vw;
    gap: 14.358974359vw;
  }
}
@media (768px <= width) {
  .col3-block {
    gap: 1.875vw;
  }
}
.col3-block .wp-block-group {
  gap: 0;
}
.col3-block .wp-block-image {
  margin-bottom: 6.1538461538vw;
  aspect-ratio: 168/109;
}
@media (768px <= width) {
  .col3-block .wp-block-image {
    margin-bottom: 2.5vw;
  }
}
.col3-block .wp-block-heading {
  font-size: 4.6153846154vw;
}
@media (768px <= width) {
  .col3-block .wp-block-heading {
    font-size: clamp(12.96px, 1.40625vw, 18px);
  }
}
.col3-block .wp-block-heading {
  font-weight: 400;
  margin-bottom: 3.0769230769vw;
}
@media (768px <= width) {
  .col3-block .wp-block-heading {
    padding-inline: 3.75vw;
    margin-bottom: 0.9375vw;
  }
}
.col3-block p {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .col3-block p {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
@media (768px <= width) {
  .col3-block p {
    padding-inline: 3.75vw;
    line-height: 2;
  }
}

@media (768px > width) {
  .img-text-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-inline: 5.1282051282vw;
    margin-bottom: 15.3846153846vw;
  }
}
@media (768px <= width) {
  .img-text-block {
    gap: 6.25vw;
    margin-bottom: 6.25vw;
  }
}
.img-text-block .wp-block-image {
  width: 100vw;
  height: 66.6666666667vw;
}
@media (768px > width) {
  .img-text-block .wp-block-image {
    margin-bottom: 8.2051282051vw;
  }
}
@media (768px <= width) {
  .img-text-block .wp-block-image {
    width: 56.09375vw;
    height: 39.296875vw;
  }
}
.img-text-block .heading-en {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .img-text-block .heading-en {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.img-text-block .heading-en {
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .img-text-block .heading-en {
    margin-bottom: 2.96875vw;
  }
}
.img-text-block .wp-block-heading {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .img-text-block .wp-block-heading {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.img-text-block .wp-block-heading {
  font-weight: 400;
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .img-text-block .wp-block-heading {
    margin-bottom: 2.96875vw;
  }
}
.img-text-block > .is-vertical {
  gap: 0 !important;
}
@media (768px <= width) {
  .img-text-block > .is-vertical {
    width: 29.6875vw;
  }
}
.img-text-block.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media (768px > width) {
  .img-text-block.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.img-text-block.vertical-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.img-text-block.vertical-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.for-sp {
  display: block !important;
}
@media (768px <= width) {
  .for-sp {
    display: none !important;
  }
}

.for-pc {
  display: none !important;
}
@media (768px <= width) {
  .for-pc {
    display: block !important;
  }
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.minus-margin {
  padding-top: 100px;
  margin-top: -100px;
}

.hide {
  display: none !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.pb05 {
  padding-block: 0.5em !important;
}

.border {
  border: 1px solid var(--pale);
}

.fz-body-s {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .fz-body-s {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
.fz-body-s {
  line-height: 2;
}

.sns-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.sns-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sns-list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (768px > width) {
  .sns-list li a img {
    width: auto;
    height: 8.7179487179vw;
  }
}
@media (768px <= width) {
  .sns-list li a img {
    width: auto;
    height: 2.34375vw;
  }
  .site-footer .sns-list li a img {
    height: clamp(18px, 2.34375vw, 30px);
  }
}
.sns-list li a span {
  display: none;
  margin-left: 2.5641025641vw;
}
@media (768px <= width) {
  .sns-list li a span {
    margin-left: 0.78125vw;
  }
}
.sns-list li a {
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.sns-list li a:hover {
  opacity: 0.7;
}

.address {
  display: inline-block;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .address {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.address {
  letter-spacing: 0.14em;
  background: url(../images/icon_map.svg) no-repeat center left;
  background-size: 2.8205128205vw 3.5897435897vw;
  padding-left: 4.6153846154vw;
}
@media (768px <= width) {
  .address {
    background-size: clamp(6.6px, 0.859375vw, 11px) clamp(8.4px, 1.09375vw, 14px);
    padding-left: clamp(10.8px, 1.40625vw, 18px);
  }
}

.mask-section {
  -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, color-stop(40%, transparent), color-stop(50%, rgba(0, 0, 0, 0.3)), color-stop(65%, rgba(0, 0, 0, 0.7)), to(rgba(0, 0, 0, 0.9)));
  -webkit-mask-image: linear-gradient(to top, transparent 40%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.7) 65%, rgba(0, 0, 0, 0.9) 100%);
          mask-image: -webkit-gradient(linear, left bottom, left top, color-stop(40%, transparent), color-stop(50%, rgba(0, 0, 0, 0.3)), color-stop(65%, rgba(0, 0, 0, 0.7)), to(rgba(0, 0, 0, 0.9)));
          mask-image: linear-gradient(to top, transparent 40%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.7) 65%, rgba(0, 0, 0, 0.9) 100%);
  -webkit-mask-size: 100% 300%;
          mask-size: 100% 300%;
  will-change: transform, mask-position;
}

.figure-parallax {
  overflow: hidden;
}
.figure-parallax picture {
  width: 100%;
  height: 100%;
}

.photo-slider {
  height: 87.1794871795vw;
  margin-bottom: 23.0769230769vw;
}
@media (768px <= width) {
  .photo-slider {
    height: 28.90625vw;
    margin-bottom: 9.375vw;
  }
}
.photo-slider .swiper-wrapper {
  height: 100%;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.photo-slider .wp-block-image img,
.photo-slider .wp-block-image picture {
  height: 100%;
  width: auto;
}
.photo-slider .swiper-slide {
  width: auto;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 2.0512820513vw;
}
@media (768px <= width) {
  .photo-slider .swiper-slide {
    margin-right: 1.25vw;
  }
}
.photo-slider .swiper-slide img {
  width: auto;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}

details.wp-block-details {
  position: relative;
  border-top: 1px solid var(--border-light);
  overflow: hidden;
}
details.wp-block-details::details-content {
  content-visibility: unset;
  display: block grid;
  font-size: 3.3333333333vw;
}
@media (768px <= width) {
  details.wp-block-details::details-content {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
details.wp-block-details::details-content {
  background: url(../images/icon_faq_a.svg) no-repeat;
  background-position: 0 7.6923076923vw;
  padding-left: 5.8974358974vw;
  padding-top: 6.1538461538vw;
}
@media (768px <= width) {
  details.wp-block-details::details-content {
    background-position: 0 clamp(18px, 2.34375vw, 30px);
    padding-left: clamp(13.8px, 1.796875vw, 23px);
    padding-top: clamp(14.4px, 1.875vw, 24px);
  }
}
@media (prefers-reduced-motion: no-preference) {
  details.wp-block-details::details-content {
    -webkit-transition-duration: 200ms;
            transition-duration: 200ms;
    -webkit-transition-property: grid-template-rows;
    transition-property: grid-template-rows;
    transition-property: grid-template-rows, -ms-grid-rows;
  }
}
details.wp-block-details:not([open])::details-content {
  -ms-grid-rows: 0fr;
  grid-template-rows: 0fr;
}
details.wp-block-details[open] summary::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
details.wp-block-details[open]::details-content {
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}
details.wp-block-details[open] > *:last-child {
  padding-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  details.wp-block-details[open] > *:last-child {
    padding-bottom: clamp(14.4px, 1.875vw, 24px);
  }
}
details.wp-block-details summary {
  display: block;
  position: relative;
  cursor: pointer;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  details.wp-block-details summary {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
details.wp-block-details summary {
  padding-top: 6.1538461538vw;
}
@media (768px <= width) {
  details.wp-block-details summary {
    padding-top: clamp(14.4px, 1.875vw, 24px);
    padding-right: clamp(18px, 2.34375vw, 30px);
  }
}
details.wp-block-details summary:after {
  content: "";
  position: absolute;
  display: block;
  top: 6.6666666667vw;
  right: 0;
  width: 4.358974359vw;
  height: 4.358974359vw;
  background: url(../images/icon_angle_white.svg) no-repeat center;
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
}
@media (768px <= width) {
  details.wp-block-details summary:after {
    top: clamp(16.8px, 2.1875vw, 28px);
    width: clamp(8.4px, 1.09375vw, 14px);
    height: clamp(8.4px, 1.09375vw, 14px);
    background-size: contain;
  }
}

details.wp-block-details:last-child {
  border-bottom: 1px solid var(--border-light);
}

.title01 {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .title01 {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}

.title02, .contents h2 {
  font-size: 4.6153846154vw;
}
@media (768px <= width) {
  .title02, .contents h2 {
    font-size: clamp(14.4px, 1.5625vw, 20px);
  }
}
.title02, .contents h2 {
  margin-bottom: 6.4102564103vw;
}
@media (768px <= width) {
  .title02, .contents h2 {
    margin-bottom: 2.578125vw;
  }
}

.title03, .contactform:has(.snow-monkey-form[data-screen=complete]) .smf-complete-content h2, .contents h3, .contents .wp-block-details summary {
  font-family: ten-mincho, "Hiragino Mincho ProN", "Meiryo", helvetica-lt-pro, serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  .title03, .contactform:has(.snow-monkey-form[data-screen=complete]) .smf-complete-content h2, .contents h3, .contents .wp-block-details summary {
    font-size: clamp(11.52px, 1.25vw, 16px);
  }
}
.title03, .contactform:has(.snow-monkey-form[data-screen=complete]) .smf-complete-content h2, .contents h3, .contents .wp-block-details summary {
  margin-bottom: 1em;
}

.title04, .contents h4 {
  font-family: ten-mincho, "Hiragino Mincho ProN", "Meiryo", helvetica-lt-pro, serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  .title04, .contents h4 {
    font-size: clamp(11.52px, 1.25vw, 16px);
  }
}
.title04, .contents h4 {
  margin-bottom: 1.2em;
}

.title05, .contents h5 {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .title05, .contents h5 {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.title05, .contents h5 {
  margin-bottom: 2.5641025641vw;
}
@media (768px <= width) {
  .title05, .contents h5 {
    margin-bottom: 10px;
  }
}

.heading-s {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .heading-s {
    font-size: clamp(12.96px, 1.40625vw, 18px);
  }
}
.heading-s {
  margin-bottom: 7.1794871795vw;
}
@media (768px <= width) {
  .heading-s {
    margin-bottom: 2.5vw;
  }
}

.heading-section {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .heading-section {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.heading-section {
  margin-bottom: 8.2051282051vw;
  padding-inline: 5.1282051282vw;
}
@media (768px <= width) {
  .heading-section {
    padding-inline: 3.75vw;
    margin-bottom: 5.625vw;
  }
}

.heading-section-en {
  font-size: 4.6153846154vw;
}
@media (768px <= width) {
  .heading-section-en {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.heading-section-en {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  margin-bottom: 14.358974359vw;
}
@media (768px <= width) {
  .heading-section-en {
    margin-bottom: 5.625vw;
  }
}

.single .eyecatch {
  margin-bottom: 9.2307692308vw;
}
@media (768px <= width) {
  .single .eyecatch {
    margin-bottom: clamp(32.4px, 4.21875vw, 54px);
  }
}
.single .eyecatch img {
  width: 100%;
  height: auto;
}
.single .post-information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5.1282051282vw;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .single .post-information {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.single .post-information {
  margin-bottom: 3.0769230769vw;
}
@media (768px <= width) {
  .single .post-information {
    gap: clamp(14.4px, 1.875vw, 24px);
    margin-bottom: clamp(12px, 1.5625vw, 20px);
  }
}
.single .post-title {
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  .single .post-title {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.single .post-title {
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .single .post-title {
    margin-bottom: clamp(26.4px, 3.4375vw, 44px);
  }
}
.single .post-nav {
  margin-top: 7.6923076923vw;
  padding-top: 10.2564102564vw;
  border-top: 1px solid var(--border-light);
}
@media (768px <= width) {
  .single .post-nav {
    margin-top: clamp(33.6px, 4.375vw, 56px);
    padding-top: clamp(38.4px, 5vw, 64px);
  }
}

.contents {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .contents {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.contents strong {
  font-weight: bold;
  font-style: normal;
}
.contents img {
  display: inline-block;
  height: auto;
}
.contents figure img {
  display: block;
}
.contents .wp-block-image + .wp-block-image {
  margin-top: 1em;
}
.contents .wp-block-image {
  margin-bottom: 7.6923076923vw;
}
@media (768px <= width) {
  .contents .wp-block-image {
    margin-bottom: clamp(24px, 3.125vw, 40px);
  }
}
.contents .wp-element-caption {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .contents .wp-element-caption {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
.contents ul:not(.category-list) {
  margin: 0 0 7.6923076923vw 1.5em;
}
@media (768px <= width) {
  .contents ul:not(.category-list) {
    margin-bottom: clamp(18px, 2.34375vw, 30px);
  }
}
.contents ul:not(.category-list) > li {
  display: list-item;
  margin-bottom: 0.5em;
  list-style-type: disc;
  line-height: 1.5;
}
.contents ul:not(.category-list) > li ul,
.contents ul:not(.category-list) > li ol {
  margin-top: 0.5em;
  margin-bottom: 0;
}
.contents ol,
.contents ol.wp-block-list {
  margin: 0 0 7.6923076923vw 1.5em;
}
@media (768px <= width) {
  .contents ol,
  .contents ol.wp-block-list {
    margin-bottom: clamp(18px, 2.34375vw, 30px);
  }
}
.contents ol li,
.contents ol.wp-block-list li {
  display: list-item;
  margin-bottom: 0.5em;
  list-style-type: auto;
  line-height: 1.5;
}
.contents p a,
.contents .wp-block-my-gutenberg-enclosure a,
.contents .enclosure a,
.contents li a {
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 2px;
  word-break: break-all;
}
@media (768px > width) {
  .contents .wp-block-embed.is-provider-youtube {
    margin-top: 10.2564102564vw;
    margin-left: -5.1282051282vw;
    margin-right: -5.1282051282vw;
  }
}
@media (768px <= width) {
  .contents .wp-block-embed.is-provider-youtube {
    width: 100%;
    margin-top: 70px;
  }
}
.contents .wp-block-embed.is-provider-youtube iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.contents iframe[title="YouTube video player"] {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.contents .wp-block-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 7.6923076923vw;
}
@media (768px <= width) {
  .contents .wp-block-gallery {
    margin-bottom: clamp(24px, 3.125vw, 40px);
  }
}
.contents .wp-block-gallery .wp-block-image {
  aspect-ratio: 3/2;
  margin-bottom: 0 !important;
}
.contents .wp-block-gallery .wp-block-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.contents .wp-block-table .has-fixed-layout {
  width: calc(100% - 1px);
}
@media (768px > width) {
  .contents .wp-block-table table {
    border-top: 1px solid var(--line);
  }
}
@media (768px > width) {
  .contents .wp-block-table table,
  .contents .wp-block-table tbody,
  .contents .wp-block-table tr {
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.contents .wp-block-table td,
.contents .wp-block-table th {
  border-color: var(--line);
  padding: 1em;
}
@media (768px > width) {
  .contents .wp-block-table td,
  .contents .wp-block-table th {
    width: 100%;
    display: block;
    border-top: 0;
  }
}
.contents .wp-block-table td:first-child,
.contents .wp-block-table th:first-child {
  background-color: var(--bg-secound);
  font-weight: bold;
  vertical-align: top;
}
@media (768px <= width) {
  .contents .wp-block-table td:first-child,
  .contents .wp-block-table th:first-child {
    width: 25%;
  }
}
.contents .wp-block-table figcaption {
  margin-top: 0.5em;
}
.contents .wp-block-details summary {
  margin-bottom: 25px;
}
.contents .wp-block-details[open] {
  padding-bottom: 50px;
}
.contents hr {
  margin-bottom: 2em;
}
.contents .wp-block-buttons {
  margin-block: 2em;
}
.contents img.aligncenter {
  display: block;
  margin-inline: auto;
}

input,
button,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

input[type=submit],
input[type=button],
label,
select,
button {
  cursor: pointer;
}

.smf-form input[type=text],
.smf-form input[type=tel],
.smf-form input[type=url],
.smf-form input[type=number],
.smf-form input[type=email],
.smf-form select,
.smf-form textarea.smf-textarea-control__control,
.smf-form .smf-item .smf-text-control__control {
  border: none;
  width: 100%;
  background-color: #fff;
  padding: 2.5641025641vw 2.5641025641vw;
  line-height: 1.4;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 3.8461538462vw;
}
@media (768px <= width) {
  .smf-form input[type=text],
  .smf-form input[type=tel],
  .smf-form input[type=url],
  .smf-form input[type=number],
  .smf-form input[type=email],
  .smf-form select,
  .smf-form textarea.smf-textarea-control__control,
  .smf-form .smf-item .smf-text-control__control {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
@media (768px <= width) {
  .smf-form input[type=text],
  .smf-form input[type=tel],
  .smf-form input[type=url],
  .smf-form input[type=number],
  .smf-form input[type=email],
  .smf-form select,
  .smf-form textarea.smf-textarea-control__control,
  .smf-form .smf-item .smf-text-control__control {
    padding: clamp(6px, 0.78125vw, 10px);
  }
}
.smf-form input[type=text]::-webkit-input-placeholder, .smf-form input[type=tel]::-webkit-input-placeholder, .smf-form input[type=url]::-webkit-input-placeholder, .smf-form input[type=number]::-webkit-input-placeholder, .smf-form input[type=email]::-webkit-input-placeholder, .smf-form select::-webkit-input-placeholder, .smf-form textarea.smf-textarea-control__control::-webkit-input-placeholder, .smf-form .smf-item .smf-text-control__control::-webkit-input-placeholder {
  color: #b3b3b3;
}
.smf-form input[type=text]::-moz-placeholder, .smf-form input[type=tel]::-moz-placeholder, .smf-form input[type=url]::-moz-placeholder, .smf-form input[type=number]::-moz-placeholder, .smf-form input[type=email]::-moz-placeholder, .smf-form select::-moz-placeholder, .smf-form textarea.smf-textarea-control__control::-moz-placeholder, .smf-form .smf-item .smf-text-control__control::-moz-placeholder {
  color: #b3b3b3;
}
.smf-form input[type=text]:-ms-input-placeholder, .smf-form input[type=tel]:-ms-input-placeholder, .smf-form input[type=url]:-ms-input-placeholder, .smf-form input[type=number]:-ms-input-placeholder, .smf-form input[type=email]:-ms-input-placeholder, .smf-form select:-ms-input-placeholder, .smf-form textarea.smf-textarea-control__control:-ms-input-placeholder, .smf-form .smf-item .smf-text-control__control:-ms-input-placeholder {
  color: #b3b3b3;
}
.smf-form input[type=text]::-ms-input-placeholder, .smf-form input[type=tel]::-ms-input-placeholder, .smf-form input[type=url]::-ms-input-placeholder, .smf-form input[type=number]::-ms-input-placeholder, .smf-form input[type=email]::-ms-input-placeholder, .smf-form select::-ms-input-placeholder, .smf-form textarea.smf-textarea-control__control::-ms-input-placeholder, .smf-form .smf-item .smf-text-control__control::-ms-input-placeholder {
  color: #b3b3b3;
}
.smf-form input[type=text]::placeholder,
.smf-form input[type=tel]::placeholder,
.smf-form input[type=url]::placeholder,
.smf-form input[type=number]::placeholder,
.smf-form input[type=email]::placeholder,
.smf-form select::placeholder,
.smf-form textarea.smf-textarea-control__control::placeholder,
.smf-form .smf-item .smf-text-control__control::placeholder {
  color: #b3b3b3;
}
.smf-form input[type=text].short,
.smf-form input[type=tel].short,
.smf-form input[type=url].short,
.smf-form input[type=number].short,
.smf-form input[type=email].short,
.smf-form select.short,
.smf-form textarea.smf-textarea-control__control.short,
.smf-form .smf-item .smf-text-control__control.short {
  width: 64.1025641026vw;
}
@media (768px <= width) {
  .smf-form input[type=text].short,
  .smf-form input[type=tel].short,
  .smf-form input[type=url].short,
  .smf-form input[type=number].short,
  .smf-form input[type=email].short,
  .smf-form select.short,
  .smf-form textarea.smf-textarea-control__control.short,
  .smf-form .smf-item .smf-text-control__control.short {
    width: clamp(150px, 19.53125vw, 250px);
  }
}
.smf-form .smf-textarea-control__control {
  border-color: var(--line);
  border-radius: 0;
}
.smf-form input[type=file] {
  width: 70%;
}
.smf-form input[type=checkbox] {
  position: relative;
  background-color: #fff;
  width: 5.1282051282vw;
  height: 5.1282051282vw;
  margin: 0 1.7948717949vw 0.7692307692vw 0;
  vertical-align: middle;
  color: #000;
}
@media (768px <= width) {
  .smf-form input[type=checkbox] {
    width: 20px;
    height: 20px;
    margin: 0 7px 3px 0;
  }
}
.smf-form input[type=checkbox]:checked::after {
  content: "✔";
  display: block;
  position: absolute;
  width: 1em;
  height: 1em;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -58%);
          transform: translate(-50%, -58%);
  color: var(--text);
  font-size: 16px;
  line-height: 1;
  text-align: center;
}
.min-cell .smf-form input[type=checkbox] {
  margin: 0;
}
.smf-form input[type=radio] {
  position: relative;
  background-color: var(--bg-primary) !important;
  border: 1px solid #fff !important;
  width: 4.1025641026vw;
  height: 4.1025641026vw;
  margin: 0 1.7948717949vw 0 0;
  border-radius: 50%;
  vertical-align: middle;
  color: var(--text);
}
@media (768px <= width) {
  .smf-form input[type=radio] {
    width: 16px;
    height: 16px;
    margin: 0 7px 0 0;
  }
}
.smf-form input[type=radio]:checked {
  background-color: var(--bg-primary);
}
.smf-form input[type=radio]:checked::before {
  display: none;
}
.smf-form input[type=radio]:checked::after {
  content: "";
  display: block;
  position: absolute;
  width: 1.0256410256vw;
  height: 1.0256410256vw;
  top: 1.2820512821vw;
  left: 1.2820512821vw;
  border-radius: 50%;
  border: 0;
  background-color: var(--accent);
}
@media (768px <= width) {
  .smf-form input[type=radio]:checked::after {
    width: 4px;
    height: 4px;
    top: 5px;
    left: 5px;
  }
}
.smf-form select {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 8px 40px 6px 10px;
}
.smf-form .select-wrapper {
  position: relative;
}
.smf-form .select-wrapper::before {
  position: absolute;
  top: 50%;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  margin-top: -3px;
  content: "";
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #333;
  pointer-events: none;
}
.smf-form input[type=radio],
.smf-form input[type=checkbox] {
  vertical-align: middle;
}
.smf-form .smf-item.form-table-row1 {
  display: block;
  margin-bottom: 10.2564102564vw;
}
@media (768px <= width) {
  .smf-form .smf-item.form-table-row1 {
    margin-bottom: clamp(30px, 3.90625vw, 50px);
  }
}
.smf-form .smf-item.form-table-row1 .smf-item__col--label {
  margin-bottom: 3.5897435897vw;
}
@media (768px <= width) {
  .smf-form .smf-item.form-table-row1 .smf-item__col--label {
    margin-bottom: clamp(14.4px, 1.875vw, 24px);
  }
}
.smf-form .error-box input[type=text],
.smf-form .error-box input[type=email],
.smf-form .error-box input[type=url],
.smf-form .error-box input[type=number],
.smf-form .error-box select,
.smf-form .error-box textarea {
  border: 1px solid var(--em);
}
.smf-form .error-input {
  border: 1px solid var(--em) !important;
}
.smf-form label {
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .smf-form label {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.smf-form .smf-item__col--controls,
.smf-form .smf-radio-button-control__label {
  font-size: 3.3333333333vw;
}
@media (768px <= width) {
  .smf-form .smf-item__col--controls,
  .smf-form .smf-radio-button-control__label {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.smf-form .required .smf-item__label__text::after {
  content: "(必須)";
  color: var(--accent);
  margin-left: 0.2em;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .smf-form .required .smf-item__label__text::after {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
@media (768px <= width) {
  .smf-form .wp-block-columns {
    gap: clamp(24px, 3.125vw, 40px);
    margin-bottom: clamp(19.2px, 2.5vw, 32px);
  }
}
.smf-form .btn:disabled, .smf-form .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control:disabled, .smf-form--simple-table + .smf-action .smf-button-control .smf-form .smf-button-control__control:disabled {
  cursor: inherit;
  pointer-events: none;
  opacity: 0.4;
}
.smf-form .btn-box.multiple {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.smf-form .btn-box.multiple .btn, .smf-form .btn-box.multiple .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control, .smf-form--simple-table + .smf-action .smf-button-control .smf-form .btn-box.multiple .smf-button-control__control {
  margin: 0 0.5em;
}
.smf-form .btn-box.multiple p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.smf-form .small {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .smf-form .small {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
@media (768px > width) {
  .smf-form .small {
    text-align: left;
  }
}

.smf-form.smf-form--simple-table .smf-item {
  padding: 0;
}

.form-block {
  width: 100%;
}
@media (1200px <= width) {
  .form-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .form-block dl {
    margin: 0 0 50px 0;
  }
}
.form-block > div {
  margin-bottom: 1em;
}
@media (768px <= width) {
  .form-block > div {
    width: calc(100% - 600px);
  }
}
.form-block dl {
  margin-bottom: 10.2564102564vw;
}
@media (768px <= width) {
  .form-block dl {
    width: 600px;
    margin: auto auto 50px;
  }
}
.form-block dl dt {
  margin-bottom: 1.2820512821vw;
}
@media (768px <= width) {
  .form-block dl dt {
    margin-bottom: 10px;
  }
}
.form-block dl dt p {
  margin-bottom: 0;
}
.form-block dl dd {
  margin-bottom: 3.8461538462vw;
}
@media (768px <= width) {
  .form-block dl dd {
    margin-bottom: 25px;
  }
}
.form-block dl dd.col-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5641025641vw;
}
@media (768px <= width) {
  .form-block dl dd.col-2 {
    gap: clamp(12px, 1.5625vw, 20px);
  }
}
.form-block p {
  line-height: 1.5;
}

/* SnowMonkeyForm ---------- */
.smf-form :where(.wp-block-columns.is-layout-flex) {
  gap: 5.1282051282vw;
}
@media (768px <= width) {
  .smf-form :where(.wp-block-columns.is-layout-flex) {
    gap: clamp(12px, 1.5625vw, 20px);
  }
}
.smf-form .smf-item {
  margin-bottom: 5.641025641vw;
}
@media (768px <= width) {
  .smf-form .smf-item {
    margin-bottom: clamp(24px, 3.125vw, 40px);
  }
}
.smf-form .smf-item .smf-item__col--label,
.smf-form .smf-item .wp-block-column p {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .smf-form .smf-item .smf-item__col--label,
  .smf-form .smf-item .wp-block-column p {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.smf-form .smf-item .smf-item__col--label,
.smf-form .smf-item .wp-block-column p {
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 1.5384615385vw;
}
@media (768px <= width) {
  .smf-form .smf-item .smf-item__col--label,
  .smf-form .smf-item .wp-block-column p {
    margin-bottom: clamp(4.8px, 0.625vw, 8px);
  }
}
.smf-form .smf-radio-button-control {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.smf-form .smf-radio-button-control__label,
.smf-form .smf-checkbox-control__label {
  line-height: 1.8;
}
@media (768px <= width) {
  .smf-form .smf-radio-button-control__label,
  .smf-form .smf-checkbox-control__label {
    line-height: 1.9;
  }
}
.smf-form input[type=checkbox]:checked::after {
  content: "";
}
.smf-form .smf-item .smf-checkbox-control__control:before {
  top: calc(50% - 6px);
}
.smf-form .smf-item .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control > .smf-label {
  margin-right: 2em;
}
@media (768px > width) {
  .smf-form .smf-item .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control > .smf-label {
    display: block;
    margin-bottom: 3.0769230769vw;
  }
  .smf-form .smf-item .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control > .smf-label:last-child {
    margin-bottom: 0;
  }
}
@media (768px <= width) {
  .smf-form .smf-item .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control > .smf-label {
    margin-bottom: clamp(3px, 0.390625vw, 5px);
  }
}
.smf-form em,
.smf-form .smf-error-messages {
  color: var(--accent);
  font-style: normal;
}
.smf-form .smf-placeholder + .smf-placeholder {
  margin-top: 1em;
}
.smf-form .smf-item__label {
  font-weight: bold;
}
.smf-form .time-box {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  gap: 5px;
}
.smf-form .time-box .wp-block-column {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -webkit-box-flex: inherit;
      -ms-flex-positive: inherit;
          flex-grow: inherit;
}
.smf-form .time-box p {
  line-height: 1.5;
}

@supports ((-webkit-appearance: none) or (-moz-appearance: none) or (appearance: none)) or (-moz-appearance: none) {
  .smf-form .smf-item .smf-radio-button-control__control:checked {
    background: #fff;
    border: 1px solid var(--pale);
  }
}
p + .snow-monkey-form {
  margin-top: 8.2051282051vw;
}
@media (768px <= width) {
  p + .snow-monkey-form {
    margin-top: clamp(42px, 5.46875vw, 70px);
  }
}

.smf-form--simple-table + .smf-action {
  margin-top: 7.6923076923vw;
}
@media (768px <= width) {
  .smf-form--simple-table + .smf-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: clamp(24px, 3.125vw, 40px);
  }
}
.smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control {
  background-image: none;
  margin: auto;
}
@media (768px <= width) {
  .smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control {
    width: clamp(189.6px, 24.6875vw, 316px);
    padding: 1.25vw 1.5625vw 1.171875vw !important;
  }
}
.smf-form--simple-table + .smf-action .smf-button-control .smf-button-control__control:disabled {
  cursor: inherit;
  pointer-events: none;
  opacity: 0.4;
}

@media (768px > width) {
  .snow-monkey-form[data-screen=confirm] .smf-button-control .smf-button-control__control {
    width: 100%;
  }
}

.contactform:has(.snow-monkey-form[data-screen=confirm]) .contact-lead {
  display: none;
}

.contactform:has(.snow-monkey-form[data-screen=complete]) .contact-lead {
  display: none;
}
.tooltip {
  position: relative;
  display: inline-block;
  cursor: pointer;
}
.tooltip .tooltip-box {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -110%);
          transform: translate(-50%, -110%);
  background-color: var(--text);
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  font-size: 12px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.tooltip .tooltip-box::before {
  content: "";
  position: absolute;
  border: 10px solid transparent;
  border-top-color: var(--text);
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 19px);
          transform: translate(-50%, 19px);
}
.tooltip .tooltip-box span {
  display: block;
  margin-top: 0.5em;
}
.tooltip .tooltip-box img {
  display: block;
  width: 300px;
  height: auto;
}
.tooltip:hover .tooltip-box {
  opacity: 1;
  visibility: visible;
}

.grecaptcha-badge {
  visibility: hidden;
}
.page.contact .grecaptcha-badge {
  visibility: visible;
}

.loading-block {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100svh;
  color: #fff;
  opacity: 1;
  background: #000;
}
.loading-block .loading-logo {
  display: none;
}
.home .loading-block .loading-logo {
  display: block;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 25.641025641vw;
  aspect-ratio: 86/35;
  opacity: 0;
}
@media (768px <= width) {
  .home .loading-block .loading-logo {
    width: clamp(103.8px, 13.515625vw, 173px);
    height: clamp(42.6px, 5.546875vw, 71px);
  }
}
.home .loading-block .loading-logo picture,
.home .loading-block .loading-logo img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}
.home .loading-block .loading-logo {
  -webkit-animation: 0.5s fade-in both 0.1s;
          animation: 0.5s fade-in both 0.1s;
}
.loading-block .bar {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  right: 5.1282051282vw;
  bottom: 5.1282051282vw;
}
@media (768px <= width) {
  .loading-block .bar {
    right: clamp(28.8px, 3.75vw, 48px);
    bottom: clamp(28.8px, 3.75vw, 48px);
  }
}
.loading-block .bar .img {
  width: 14.358974359vw;
  height: 5.1282051282vw;
}
@media (768px <= width) {
  .loading-block .bar .img {
    width: clamp(33.6px, 4.375vw, 56px);
    height: clamp(12px, 1.5625vw, 20px);
  }
}
.loading-block .bar .text {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 2.0512820513vw;
}
@media (768px <= width) {
  .loading-block .bar .text {
    font-size: clamp(5.76px, 0.625vw, 8px);
  }
}
.home .loading-block {
  -webkit-transition: opacity 1.5s var(--ease-out) 1s;
  transition: opacity 1.5s var(--ease-out) 1s;
}
.loading-block {
  -webkit-transition: opacity 2s var(--ease-out);
  transition: opacity 2s var(--ease-out);
}
.loaded-end .loading-block {
  opacity: 0;
  pointer-events: none;
}

@media (768px <= width) {
  .site-header .outer-box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    padding: clamp(20.4px, 2.65625vw, 34px) 8.59375vw 0 3.75vw;
  }
  .site-header .inner-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .site-header .site-branding {
    position: relative;
    z-index: 20;
    width: 21.953125vw;
    height: auto;
    padding-top: 0.3125vw;
  }
  .site-header .site-branding a {
    display: block;
  }
  .header-menu-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.5vw;
    padding-top: 0.625vw;
  }
  .header-menu-pc .global-navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.875vw;
  }
  .header-menu-pc .global-navigation li {
    font-family: helvetica-lt-pro, sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.28em;
    font-display: swap;
    size-adjust: 98%;
    font-size: clamp(7.2px, 0.78125vw, 10px);
    letter-spacing: 0.28em;
  }
  .main-navigation {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 19;
    width: 100%;
    height: 100vh;
    background-color: #000;
    padding: 17.96875vw 3.125vw 6.25vw;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
  }
  .main-navigation .nav-stage {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 9.375vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: auto;
  }
  .main-navigation .global-navigation {
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -ms-grid-rows: (auto)[4];
    grid-template-rows: repeat(4, auto);
    -webkit-column-gap: 9.375vw;
       -moz-column-gap: 9.375vw;
            column-gap: 9.375vw;
    font-family: helvetica-lt-pro, sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.28em;
    font-display: swap;
    size-adjust: 98%;
    font-size: clamp(12.96px, 1.40625vw, 18px);
  }
  .main-navigation .nav-item {
    text-align: center;
    width: 19.53125vw;
  }
  .main-navigation .nav-item .header-logo {
    display: block;
    width: 14.84375vw;
    margin-inline: auto;
    margin-bottom: 3.90625vw;
  }
  .main-navigation .nav-item .header-logo img {
    width: 100%;
    height: auto;
  }
  .main-navigation .nav-item .btn-box {
    margin-bottom: 1.5625vw;
  }
  .main-navigation .nav-item .btn-box .btn {
    margin: auto;
  }
  .main-navigation .nav-item .address {
    letter-spacing: 0.2em;
    margin-bottom: 1.5625vw;
  }
  .main-navigation .nav-item .sns-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 3.125vw;
  }
  .nav-open .main-navigation {
    visibility: visible;
    opacity: 1;
    pointer-events: all;
  }
}
@media (width < 768px) {
  .site-header .outer-box {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 16.4102564103vw;
  }
  .site-header .site-branding {
    position: fixed;
    top: 6.4102564103vw;
    left: 5.1282051282vw;
    z-index: 40;
    width: 53.8461538462vw;
    height: auto;
  }
  .site-header .site-branding a {
    display: block;
  }
  .site-header .site-branding a img {
    width: 100%;
    height: auto;
  }
  .site-header .header-menu-pc {
    display: none;
  }
  .main-navigation .nav-wrapper {
    position: absolute;
    z-index: 40;
    top: 0;
    left: 0;
    display: block;
    overflow-y: auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 100%;
    background: rgb(45, 44, 43);
    padding: 32.3076923077vw 6.1538461538vw 8.2051282051vw;
  }
  .main-navigation .global-navigation {
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -ms-grid-rows: (auto)[4];
    grid-template-rows: repeat(4, auto);
    -webkit-column-gap: 14.358974359vw;
       -moz-column-gap: 14.358974359vw;
            column-gap: 14.358974359vw;
    font-family: helvetica-lt-pro, sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.28em;
    font-display: swap;
    size-adjust: 98%;
    font-size: 3.5897435897vw;
    margin-bottom: 16.4102564103vw;
  }
  .main-navigation .global-navigation a {
    display: block;
    padding-block: 3.0769230769vw;
  }
  .main-navigation .nav-item {
    text-align: center;
  }
  .main-navigation .nav-item .header-logo {
    display: none;
  }
  .main-navigation .nav-item .btn-box {
    margin-bottom: 10.2564102564vw;
  }
  .main-navigation .nav-item .btn-box .btn {
    margin: auto;
  }
  .main-navigation .nav-item .address {
    letter-spacing: 0.2em;
    margin-bottom: 10.2564102564vw;
  }
  .main-navigation .nav-item .sns-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10.2564102564vw;
  }
}
.site-footer {
  position: relative;
}
.site-footer .outer-box {
  padding-top: 12.3076923077vw;
  background-color: #000;
}
@media (768px <= width) {
  .site-footer .outer-box {
    padding: clamp(48px, 6.25vw, 80px) 0 clamp(14.4px, 1.875vw, 24px);
  }
}
.site-footer .inner-box {
  width: 100%;
  padding-inline: 6.1538461538vw;
}
@media (768px <= width) {
  .site-footer .inner-box {
    max-width: clamp(710.4px, 92.5vw, 1184px);
    padding-inline: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: clamp(57.6px, 7.5vw, 96px);
    margin: 0 auto;
  }
}
.site-footer .footer-logo {
  display: block;
}
.site-footer .footer-logo img {
  display: block;
  width: 38.4615384615vw;
  height: auto;
  aspect-ratio: 13/6;
}
@media (768px > width) {
  .site-footer .footer-logo img {
    margin: auto;
    margin-bottom: 10.2564102564vw;
  }
}
@media (768px <= width) {
  .site-footer .footer-logo img {
    width: clamp(114.6px, 14.921875vw, 191px);
    height: clamp(49.2px, 6.40625vw, 82px);
  }
}
@media (768px > width) {
  .site-footer .footer-menu {
    padding-inline: 3.0769230769vw;
    margin-bottom: 11.2820512821vw;
  }
}
@media (768px <= width) {
  .site-footer .footer-menu {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.site-footer .footer-menu ul {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
}
@media (768px > width) {
  .site-footer .footer-menu ul {
    -ms-grid-rows: (auto)[4];
    grid-template-rows: repeat(4, auto);
    -webkit-column-gap: 6.1538461538vw;
       -moz-column-gap: 6.1538461538vw;
            column-gap: 6.1538461538vw;
  }
}
@media (768px <= width) {
  .site-footer .footer-menu ul {
    -ms-grid-rows: auto clamp(9.6px, 1.25vw, 16px) auto clamp(9.6px, 1.25vw, 16px) auto;
    grid-template-rows: repeat(3, auto);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-column-gap: clamp(57.6px, 7.5vw, 96px);
       -moz-column-gap: clamp(57.6px, 7.5vw, 96px);
            column-gap: clamp(57.6px, 7.5vw, 96px);
    row-gap: clamp(9.6px, 1.25vw, 16px);
  }
}
.site-footer .footer-menu ul li a {
  display: block;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .site-footer .footer-menu ul li a {
    font-size: clamp(7.92px, 0.859375vw, 11px);
  }
}
@media (768px > width) {
  .site-footer .footer-menu ul li a {
    padding: 3.3333333333vw 0;
    line-height: 1.2;
  }
}
@media (768px > width) {
  .site-footer .footer-item {
    text-align: center;
    margin-bottom: 10.2564102564vw;
  }
}
@media (768px <= width) {
  .site-footer .footer-item {
    text-align: left;
    width: clamp(135px, 17.578125vw, 225px);
  }
}
.site-footer .footer-item .btn-box {
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .site-footer .footer-item .btn-box {
    margin-bottom: clamp(9.6px, 1.25vw, 16px);
  }
}
@media (768px > width) {
  .site-footer .footer-item .btn-box .btn {
    margin: auto;
  }
}
.site-footer .footer-item .address {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .site-footer .footer-item .address {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.site-footer .footer-item .address {
  letter-spacing: 0.2em;
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .site-footer .footer-item .address {
    margin-bottom: clamp(9.6px, 1.25vw, 16px);
  }
}
.site-footer .footer-produced {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.5641025641vw;
  padding: 0 6.1538461538vw 7.1794871795vw;
}
@media (768px <= width) {
  .site-footer .footer-produced {
    gap: clamp(10.8px, 1.40625vw, 18px);
    padding: clamp(33.6px, 4.375vw, 56px) clamp(28.8px, 3.75vw, 48px) clamp(24px, 3.125vw, 40px);
  }
}
.site-footer .footer-produced .footer-produced-by {
  font-size: 2.0512820513vw;
}
@media (768px <= width) {
  .site-footer .footer-produced .footer-produced-by {
    font-size: clamp(6.48px, 0.703125vw, 9px);
  }
}
.site-footer .footer-produced .footer-produced-by {
  letter-spacing: 0.2em;
  white-space: nowrap;
}
.site-footer .footer-produced .footer-produced-name {
  font-size: 2.3076923077vw;
}
@media (768px <= width) {
  .site-footer .footer-produced .footer-produced-name {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.site-footer .footer-produced .footer-produced-name {
  letter-spacing: 0.3em;
}
.site-footer .footer-produced img {
  display: block;
  width: 3.5897435897vw;
  height: 3.5897435897vw;
}
@media (768px <= width) {
  .site-footer .footer-produced img {
    width: clamp(11.4px, 1.484375vw, 19px);
    height: clamp(10.2px, 1.328125vw, 17px);
  }
}
.site-footer .footer-copyright {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 6.1538461538vw;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 2.3076923077vw;
}
@media (768px <= width) {
  .site-footer .footer-copyright {
    font-size: clamp(6.48px, 0.703125vw, 9px);
  }
}
.site-footer .footer-copyright {
  letter-spacing: 0.3em;
  border-top: 1px solid rgb(153, 153, 153);
  padding: 7.6923076923vw 6.1538461538vw;
}
@media (768px <= width) {
  .site-footer .footer-copyright {
    border-width: clamp(0.6px, 0.078125vw, 1px);
    gap: clamp(14.4px, 1.875vw, 24px);
    padding: clamp(12px, 1.5625vw, 20px) clamp(19.2px, 2.5vw, 32px) 0;
  }
}
.site-footer .footer-copyright a {
  display: block;
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 2px;
}

.pagetop {
  position: fixed;
  z-index: 10;
  right: 5.641025641vw;
  bottom: 12.8205128205vw;
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media (768px > width) {
  .PC .pagetop {
    right: 22px;
    bottom: 50px;
  }
}
@media (768px <= width) {
  .pagetop {
    right: clamp(12px, 1.5625vw, 20px);
    bottom: clamp(12px, 1.5625vw, 20px);
  }
}
.pagetop a {
  position: relative;
  display: block;
  width: 11.2820512821vw;
  height: 11.2820512821vw;
  border-radius: 50%;
  background-color: var(--text);
  text-indent: -9999px;
}
@media (768px > width) {
  .PC .pagetop a {
    width: 44px;
    height: 44px;
  }
}
@media (768px <= width) {
  .pagetop a {
    width: clamp(26.4px, 3.4375vw, 44px);
    height: clamp(26.4px, 3.4375vw, 44px);
  }
}
.pagetop a::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 2.5641025641vw;
  height: 1.2820512821vw;
  background: url("../images/icon_pagetop.svg") no-repeat;
  background-size: contain;
  content: "";
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (768px > width) {
  .PC .pagetop a::after {
    width: 10px;
    height: 5px;
  }
}
@media (768px <= width) {
  .pagetop a::after {
    width: clamp(7.2px, 0.9375vw, 12px);
    height: clamp(3.6px, 0.46875vw, 6px);
  }
}
.pagetop a {
  -webkit-transition: background-color 2s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-color 2s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.pagetop a:hover {
  background-color: #fff;
  color: var(--text);
  border: 1px solid var(--text);
}
.pagetop a:hover::after {
  background: url(../images/icon_pagetop_w.svg) no-repeat center;
}
.pagetop.hidden {
  pointer-events: none;
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
}

.page.experience .img-text-block + .wp-block-heading {
  margin-top: 25.641025641vw;
}
@media (768px <= width) {
  .page.experience .img-text-block + .wp-block-heading {
    margin-top: 9.375vw;
  }
}

.content-body {
  padding-top: 25.641025641vw;
  padding-bottom: 23.0769230769vw;
}
@media (768px <= width) {
  .content-body {
    padding-top: 9.375vw;
    padding-bottom: 7.8125vw;
  }
}

.mask-section + .content-body {
  padding-top: 51.2820512821vw;
}
@media (768px <= width) {
  .mask-section + .content-body {
    padding-top: 17.1875vw;
  }
}

.site-main .default-page.outer-box {
  padding: 30.7692307692vw 5.1282051282vw 0;
}
@media (768px <= width) {
  .site-main .default-page.outer-box {
    padding: clamp(91.2px, 11.875vw, 152px) clamp(64.8px, 8.4375vw, 108px) 0 clamp(64.8px, 8.4375vw, 108px);
  }
}
.site-main .default-page.outer-box > .inner-box {
  width: 100%;
  margin: 0 auto;
}
@media (768px <= width) {
  .site-main .default-page.outer-box > .inner-box {
    max-width: 1062px;
  }
}
.site-main .default-page.outer-box > .inner-box .content-body {
  padding-top: 0;
}

.content-header-movie {
  position: relative;
  z-index: 30;
  width: 100%;
  height: 100svh;
}
.content-header-movie .title {
  position: absolute;
  z-index: 3;
  top: 74.358974359vw;
  left: 5.1282051282vw;
}
@media (768px <= width) {
  .content-header-movie .title {
    top: 50%;
    left: 14.0625vw;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.content-header-movie .title .en {
  display: block;
  font-size: 7.1794871795vw;
}
@media (768px <= width) {
  .content-header-movie .title .en {
    font-size: clamp(25.92px, 2.8125vw, 36px);
  }
}
.content-header-movie .title .en {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
}
.content-header-movie .title .jp {
  display: block;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .content-header-movie .title .jp {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.home .content-header-movie .title {
  left: 9.2307692308vw;
  width: 57.9487179487vw;
  height: auto;
}
@media (768px <= width) {
  .home .content-header-movie .title {
    width: 21.875vw;
    height: auto;
    left: 15.625vw;
  }
}
.home .content-header-movie .title picture,
.home .content-header-movie .title img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}
@media (768px > width) {
  .concept .content-header-movie .title {
    position: relative;
    top: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    padding-top: 37.1794871795vw;
    margin-bottom: 10.2564102564vw;
  }
}
.concept .content-header-movie .title .en {
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .concept .content-header-movie .title .en {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.concept .content-header-movie .title img {
  width: 57.9487179487vw;
  height: auto;
  margin-top: 4.1025641026vw;
}
@media (768px <= width) {
  .concept .content-header-movie .title img {
    width: 21.875vw;
    height: auto;
    margin-top: 2.34375vw;
  }
}
@media (768px > width) {
  .access .content-header-movie .title {
    top: 43.5897435897vw;
  }
}
.content-header-movie .title.column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 4.1025641026vw;
}
@media (768px <= width) {
  .content-header-movie .title.column {
    gap: 1.5625vw;
  }
}
.content-header-movie .weather-box {
  position: absolute;
  z-index: 3;
  bottom: 25.641025641vw;
  left: 5.1282051282vw;
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .content-header-movie .weather-box {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.content-header-movie .weather-box {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  line-height: 1.8;
}
@media (768px <= width) {
  .content-header-movie .weather-box {
    bottom: clamp(60px, 7.8125vw, 100px);
    left: 3.75vw;
  }
}
@media (768px <= width) {
  .content-header-movie .weather-box > div {
    margin-top: clamp(4.8px, 0.625vw, 8px);
  }
}
.content-header-movie .weather-box .weather {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.content-header-movie .weather-box .weather #weatherIcon {
  width: 3.8461538462vw;
  height: 3.8461538462vw;
  margin-right: 2.0512820513vw;
  text-indent: -9999px;
}
@media (768px <= width) {
  .content-header-movie .weather-box .weather #weatherIcon {
    width: clamp(9.6px, 1.25vw, 16px);
    height: clamp(9.6px, 1.25vw, 16px);
    margin-right: clamp(4.8px, 0.625vw, 8px);
  }
}
.content-header-movie .weather-box .weather #weatherIcon.icon-sunny {
  background: url(../images/weather_sunny.svg) no-repeat;
  background-size: contain;
}
.content-header-movie .weather-box .weather #weatherIcon.icon-cloudy {
  background: url(../images/weather_cloud.svg) no-repeat;
  background-size: contain;
}
.content-header-movie .weather-box .weather #weatherIcon.icon-rain {
  background: url(../images/weather_rain.svg) no-repeat;
  background-size: contain;
}
.content-header-movie .weather-box .weather #weatherIcon.icon-snow {
  background: url(../images/weather_snow.svg) no-repeat;
  background-size: contain;
}
.content-header-movie .catchphrase {
  position: absolute;
  z-index: 3;
  bottom: 7.6923076923vw;
  left: 5.1282051282vw;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .content-header-movie .catchphrase {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.content-header-movie .catchphrase {
  line-height: 2;
  letter-spacing: 0.2em;
}
@media (768px <= width) {
  .content-header-movie .catchphrase {
    bottom: clamp(30px, 3.90625vw, 50px);
    left: 3.75vw;
  }
}
.content-header-movie .catchphrase a {
  pointer-events: none;
  text-decoration: none;
}
@media (768px > width) {
  .content-header-movie .catchphrase span {
    display: block;
  }
}
@media (768px <= width) {
  .content-header-movie .catchphrase span:first-child:after {
    content: " ｜ ";
  }
}
.content-header-movie .movie-wrapper {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
}
.content-header-movie .movie-wrapper picture,
.content-header-movie .movie-wrapper img,
.content-header-movie .movie-wrapper video {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.business .content-header-movie .movie-wrapper picture,
.business .content-header-movie .movie-wrapper img,
.business .content-header-movie .movie-wrapper video {
  -o-object-position: bottom right;
     object-position: bottom right;
}
.content-header-movie::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-color: rgba(0, 0, 0, 0.1);
}
.concept .content-header-movie::after {
  background-color: rgba(0, 0, 0, 0.4);
}
.access .content-header-movie::after {
  display: none;
}
.content-header-movie.concept-header {
  min-height: 100svh;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}
@media (768px <= width) {
  .content-header-movie.concept-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.content-header-movie.concept-header .text-box {
  z-index: 3;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .content-header-movie.concept-header .text-box {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
@media (768px > width) {
  .content-header-movie.concept-header .text-box {
    position: relative;
    padding-inline: 5.1282051282vw;
    padding-bottom: 20.5128205128vw;
  }
}
@media (768px <= width) {
  .content-header-movie.concept-header .text-box {
    position: relative;
    margin-left: 49.296875vw;
    padding-top: clamp(102px, 13.28125vw, 170px);
    padding-bottom: clamp(48px, 6.25vw, 80px);
  }
}
.content-header-movie.concept-header .text-box p {
  line-height: 2.5;
}
@media (768px > width) {
  .content-header-movie.concept-header .text-box p {
    letter-spacing: 0.05em;
  }
}

.content-header {
  margin-bottom: 11.2820512821vw;
}
@media (768px <= width) {
  .content-header {
    margin-bottom: clamp(43.2px, 5.625vw, 72px);
  }
}
.content-header .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 4.1025641026vw;
     -moz-column-gap: 4.1025641026vw;
          column-gap: 4.1025641026vw;
}
@media (768px <= width) {
  .content-header .title {
    -webkit-column-gap: clamp(12px, 1.5625vw, 20px);
       -moz-column-gap: clamp(12px, 1.5625vw, 20px);
            column-gap: clamp(12px, 1.5625vw, 20px);
  }
}
.content-header .title .en {
  display: block;
  font-size: 7.1794871795vw;
}
@media (768px <= width) {
  .content-header .title .en {
    font-size: clamp(25.92px, 2.8125vw, 36px);
  }
}
.content-header .title .en {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
}
.content-header .title .jp {
  display: block;
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .content-header .title .jp {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}

/* archive ------- */
.news-text-list {
  border-top: 1px solid var(--border-light);
}
.news-text-list li {
  display: block;
}
.news-text-list li a {
  position: relative;
  padding-block: 7.1794871795vw;
  border-bottom: 1px solid var(--border-light);
}
@media (768px > width) {
  .news-text-list li a {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 2.0512820513vw auto;
    -ms-grid-columns: auto 1fr;
        grid-template: "date cat" auto "title title" auto/auto 1fr;
    padding-inline: 2.0512820513vw;
    row-gap: 2.0512820513vw;
  }
}
@media (768px <= width) {
  .news-text-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-block: 3.125vw;
  }
}
.news-text-list li a::before {
  content: "";
  position: absolute;
  display: block;
  bottom: -1px;
  left: 0;
  z-index: 2;
  width: 20.5128205128vw;
  height: 1px;
  background-color: #fff;
  -webkit-transition: width 1s var(--ease-out);
  transition: width 1s var(--ease-out);
}
@media (768px <= width) {
  .news-text-list li a::before {
    width: 6.25vw;
  }
}
.news-text-list li a::after {
  content: "";
  position: absolute;
  display: block;
  right: 2.0512820513vw;
  top: 50%;
  width: 2.5641025641vw;
  height: 3.0769230769vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: url(../images/icon_angle.svg) no-repeat;
  background-size: contain;
}
@media (768px <= width) {
  .news-text-list li a::after {
    right: 3.75vw;
    width: 0.625vw;
    height: 0.78125vw;
  }
}
.news-text-list li a .date {
  grid-area: date;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .news-text-list li a .date {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.news-text-list li a .date {
  margin-right: 1em;
}
.news-text-list li a .category {
  grid-area: cat;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .news-text-list li a .category {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.news-text-list li a .category {
  text-align: center;
  width: 9.375vw;
}
.news-text-list li a .post-title {
  grid-area: title;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 3.5897435897vw;
}
@media (768px > width){
  .news-text-list li a .date {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .news-text-list li a .category {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .news-text-list li a .post-title {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
}
@media (768px <= width) {
  .news-text-list li a .post-title {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.news-text-list li a .post-title {
  padding-right: 5.1282051282vw;
}
@media (768px <= width) {
  .news-text-list li a .post-title {
    padding-right: 6.25vw;
  }
}
.news-text-list li a:hover::before {
  width: 100%;
}

.news-image-list li {
  display: block;
  width: 100%;
}
.news-image-list a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6.1538461538vw;
  padding-bottom: 8.2051282051vw;
  margin-bottom: 8.2051282051vw;
  border-bottom: 1px solid var(--border-light);
}
@media (768px <= width) {
  .news-image-list a {
    gap: clamp(49.2px, 6.40625vw, 82px);
    padding-bottom: clamp(28.8px, 3.75vw, 48px);
    margin-bottom: clamp(28.8px, 3.75vw, 48px);
  }
}
.news-image-list a .thumbsnail {
  width: 30.7692307692vw;
  height: 20.5128205128vw;
}
@media (768px <= width) {
  .news-image-list a .thumbsnail {
    width: clamp(222px, 28.90625vw, 370px);
    height: clamp(124.8px, 16.25vw, 208px);
  }
}
.news-image-list a .thumbsnail picture,
.news-image-list a .thumbsnail img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.news-image-list a .text-box {
  width: 52.3076923077vw;
}
@media (768px <= width) {
  .news-image-list a .text-box {
    width: clamp(367.8px, 47.890625vw, 613px);
  }
}
.news-image-list a .post-information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5.1282051282vw;
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .news-image-list a .post-information {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.news-image-list a .post-information {
  margin-bottom: 2.5641025641vw;
}
@media (768px <= width) {
  .news-image-list a .post-information {
    gap: clamp(14.4px, 1.875vw, 24px);
    margin-bottom: clamp(12px, 1.5625vw, 20px);
  }
}
.news-image-list a .post-title {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .news-image-list a .post-title {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
@media (768px <= width) {
  .news-image-list a .post-title {
    margin-bottom: clamp(9.6px, 1.25vw, 16px);
  }
}
.news-image-list a .post-content {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .news-image-list a .post-content {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.news-image-list a .post-content {
  line-height: 2;
}
@media (768px > width) {
  .news-image-list a .post-content {
    display: none;
  }
}
.news-image-list li:last-child a {
  margin-bottom: 0;
}

/*一覧：ページ送り*/
.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  gap: 6.4102564103vw;
  margin-top: 16.4102564103vw;
}
@media (768px <= width) {
  .wp-pagenavi {
    margin-top: 5vw;
    gap: 1.5625vw;
  }
}
.wp-pagenavi a,
.wp-pagenavi span {
  font-family: helvetica-lt-pro, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.28em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 3.8461538462vw;
}
@media (768px <= width) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    font-size: clamp(11.52px, 1.25vw, 16px);
  }
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: block;
  text-align: center;
  padding-left: 0.2em;
}
.wp-pagenavi a.current, .wp-pagenavi a:hover,
.wp-pagenavi span.current,
.wp-pagenavi span:hover {
  border-bottom: 1px solid var(--text);
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink,
.wp-pagenavi span.previouspostslink,
.wp-pagenavi span.nextpostslink {
  position: relative;
  width: 1em;
}

#top-concept {
  position: relative;
  z-index: 2;
  background-color: rgb(45, 44, 43);
  width: 100%;
  -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(15%, rgb(0, 0, 0)), to(rgb(0, 0, 0)));
  -webkit-mask-image: linear-gradient(to top, transparent 0%, rgb(0, 0, 0) 15%, rgb(0, 0, 0) 100%);
          mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(15%, rgb(0, 0, 0)), to(rgb(0, 0, 0)));
          mask-image: linear-gradient(to top, transparent 0%, rgb(0, 0, 0) 15%, rgb(0, 0, 0) 100%);
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  padding-bottom: 61.5384615385vw;
}
@media (768px <= width) {
  #top-concept {
    padding-bottom: 15.625vw;
  }
}

.top-concept-text-layer {
  position: absolute;
  z-index: 30;
  top: 56.4102564103vw;
  left: 0;
  width: 100%;
  height: calc(100% - 89.7435897436vw);
}
@media (768px <= width) {
  .top-concept-text-layer {
    top: 27.34375vw;
    height: calc(100% - 39.0625vw);
  }
}
.top-concept-text-layer .top-concept-text {
  position: sticky;
  z-index: 10;
  width: 100%;
}
@media (768px > width) {
  .top-concept-text-layer .top-concept-text {
    top: 30.7692307692vw;
    left: 0;
    padding-inline: 5.1282051282vw;
  }
}
@media (768px <= width) {
  .top-concept-text-layer .top-concept-text {
    top: 4.6875vw;
    left: calc(50% - 19.53125vw);
    -webkit-transform: translateY(4.6875vw);
            transform: translateY(4.6875vw);
    width: 33.59375vw;
  }
}
.top-concept-text-layer .top-concept-text {
  opacity: 0;
  -webkit-filter: blur(12px);
          filter: blur(12px);
  -webkit-transition: all 1s;
  transition: all 1s;
}
.top-concept-text-layer .top-concept-text.is-active {
  opacity: 1;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}
.top-concept-text-layer .top-concept-text h2 {
  font-size: 5.641025641vw;
}
@media (768px <= width) {
  .top-concept-text-layer .top-concept-text h2 {
    font-size: clamp(21.6px, 2.34375vw, 30px);
  }
}
.top-concept-text-layer .top-concept-text h2 {
  letter-spacing: 0.2em;
  margin-bottom: 12.3076923077vw;
}
@media (768px <= width) {
  .top-concept-text-layer .top-concept-text h2 {
    margin-bottom: 3.28125vw;
  }
}
.top-concept-text-layer .top-concept-text p {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .top-concept-text-layer .top-concept-text p {
    font-size: clamp(11.52px, 1.25vw, 16px);
  }
}
.top-concept-text-layer .top-concept-text p {
  letter-spacing: 0.2em;
  line-height: 2.8;
  margin-bottom: 12.3076923077vw;
}
@media (768px <= width) {
  .top-concept-text-layer .top-concept-text p {
    margin-bottom: 3.28125vw;
  }
}

.top-concept-images-layer .top-concept-gallery {
  position: relative;
  z-index: 2;
  width: 100%;
  padding-top: 128.2051282051vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery {
    padding-top: 26.5625vw;
  }
}
.top-concept-images-layer .top-concept-gallery > div {
  overflow: hidden;
}
@media (768px > width) {
  .top-concept-images-layer .top-concept-gallery > div {
    position: relative;
  }
  .top-concept-images-layer .top-concept-gallery > div::before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
  }
}
.top-concept-images-layer .top-concept-gallery > div picture,
.top-concept-images-layer .top-concept-gallery > div img,
.top-concept-images-layer .top-concept-gallery > div video {
  display: block;
  width: 100%;
  height: auto;
}
.top-concept-images-layer .top-concept-gallery .img01 {
  margin-left: 43.5897435897vw;
  width: 77.4358974359vw;
  height: 46.6666666667vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery .img01 {
    margin-left: auto;
    width: 37.1875vw;
    height: 22.421875vw;
  }
}
.top-concept-images-layer .top-concept-gallery .img02 {
  margin-top: 41.5384615385vw;
  width: 60.2564102564vw;
  height: 40vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery .img02 {
    margin-right: auto;
    margin-top: -1.5625vw;
    width: 23.75vw;
    height: 15.78125vw;
  }
}
.top-concept-images-layer .top-concept-gallery .img03 {
  margin-left: auto;
  margin-top: 41.5384615385vw;
  width: 64.1025641026vw;
  height: 94.6153846154vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery .img03 {
    margin-top: 3.125vw;
    width: 30.234375vw;
    height: 44.6875vw;
  }
}
.top-concept-images-layer .top-concept-gallery .img04 {
  margin-right: auto;
  margin-top: 41.5384615385vw;
  width: 52.5641025641vw;
  height: 85.641025641vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery .img04 {
    margin-top: -10.9375vw;
    width: 33.28125vw;
    height: 54.0625vw;
  }
}
.top-concept-images-layer .top-concept-gallery .img05 {
  margin-left: auto;
  margin-top: 41.5384615385vw;
  width: 71.0256410256vw;
  height: 39.7435897436vw;
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-gallery .img05 {
    margin-top: -6.25vw;
    width: 47.34375vw;
    height: 26.5625vw;
  }
}
.top-concept-images-layer .top-concept-bg {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (768px > width) {
  .top-concept-images-layer .top-concept-bg {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(45, 44, 43)), color-stop(10%, rgba(45, 44, 43, 0))), image-set(url(../images/top_concept_bg_sp.avif) type("image/avif"), url(../images/top_concept_bg_sp.jpg) type("image/jpg"));
    background-image: linear-gradient(to bottom, rgb(45, 44, 43) 0%, rgba(45, 44, 43, 0) 10%), -webkit-image-set(url(../images/top_concept_bg_sp.avif) type("image/avif"), url(../images/top_concept_bg_sp.jpg) type("image/jpg"));
    background-image: linear-gradient(to bottom, rgb(45, 44, 43) 0%, rgba(45, 44, 43, 0) 10%), image-set(url(../images/top_concept_bg_sp.avif) type("image/avif"), url(../images/top_concept_bg_sp.jpg) type("image/jpg"));
    background-size: 100% auto;
    pointer-events: none;
  }
  .is-active .top-concept-images-layer .top-concept-bg {
    position: fixed;
    z-index: -1;
    background-image: -webkit-image-set(url(../images/top_concept_bg_sp.avif) type("image/avif"), url(../images/top_concept_bg_sp.jpg) type("image/jpg"));
    background-image: image-set(url(../images/top_concept_bg_sp.avif) type("image/avif"), url(../images/top_concept_bg_sp.jpg) type("image/jpg"));
  }
}
@media (768px <= width) {
  .top-concept-images-layer .top-concept-bg {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(45, 44, 43)), color-stop(20%, rgba(45, 44, 43, 0))), image-set(url(../images/top_concept_bg_pc.avif) type("image/avif"), url(../images/top_concept_bg_pc.jpg) type("image/jpg"));
    background-image: linear-gradient(to bottom, rgb(45, 44, 43) 0%, rgba(45, 44, 43, 0) 20%), -webkit-image-set(url(../images/top_concept_bg_pc.avif) type("image/avif"), url(../images/top_concept_bg_pc.jpg) type("image/jpg"));
    background-image: linear-gradient(to bottom, rgb(45, 44, 43) 0%, rgba(45, 44, 43, 0) 20%), image-set(url(../images/top_concept_bg_pc.avif) type("image/avif"), url(../images/top_concept_bg_pc.jpg) type("image/jpg"));
    background-size: 100% auto;
  }
}

.custom-mask-gradient-top {
  -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, color-stop(40%, transparent), color-stop(50%, rgba(0, 0, 0, 0.2)), color-stop(65%, rgba(0, 0, 0, 0.9)), to(black));
  -webkit-mask-image: linear-gradient(to top, transparent 40%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.9) 65%, black 100%);
          mask-image: -webkit-gradient(linear, left bottom, left top, color-stop(40%, transparent), color-stop(50%, rgba(0, 0, 0, 0.2)), color-stop(65%, rgba(0, 0, 0, 0.9)), to(black));
          mask-image: linear-gradient(to top, transparent 40%, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0.9) 65%, black 100%);
  -webkit-mask-size: 100% 300%;
          mask-size: 100% 300%;
}

.gradient-bg,
.gradient-bg-invert {
  padding-block: 38.4615384615vw;
}
@media (768px <= width) {
  .gradient-bg,
  .gradient-bg-invert {
    padding-block: 23.4375vw;
  }
}
.gradient-bg::before, .gradient-bg::after,
.gradient-bg-invert::before,
.gradient-bg-invert::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  left: 0;
  width: 100%;
  height: 38.4615384615vw;
}
@media (768px <= width) {
  .gradient-bg::before, .gradient-bg::after,
  .gradient-bg-invert::before,
  .gradient-bg-invert::after {
    height: 23.4375vw;
  }
}
.gradient-bg::before,
.gradient-bg-invert::before {
  top: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(45, 44, 43, 0)), to(rgb(45, 44, 43)));
  background-image: linear-gradient(180deg, rgba(45, 44, 43, 0), rgb(45, 44, 43));
}
.gradient-bg::after,
.gradient-bg-invert::after {
  bottom: 0;
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(45, 44, 43, 0)), to(rgb(45, 44, 43)));
  background-image: linear-gradient(0deg, rgba(45, 44, 43, 0), rgb(45, 44, 43));
}

#top-slide {
  position: relative;
  z-index: 3;
  width: 100%;
}
@media (768px <= width) {
  #top-slide {
    height: 100svh;
    overflow: hidden;
  }
}
#top-slide .slide-wrapper {
  position: relative;
  width: 100%;
  height: 100svh;
}
@media (768px <= width) {
  #top-slide .slide-wrapper {
    position: absolute;
    inset: 0;
    z-index: 1;
    background-color: var(--bg-primary);
  }
  #top-slide .slide-wrapper.is-current {
    z-index: 2;
  }
  #top-slide .slide-wrapper.is-prev {
    z-index: 3;
    -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #000), color-stop(50%, #000), color-stop(50%, transparent), to(transparent));
    -webkit-mask-image: linear-gradient(to bottom, #000 50%, #000 50%, transparent 50%, transparent 100%);
            mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #000), color-stop(50%, #000), color-stop(50%, transparent), to(transparent));
            mask-image: linear-gradient(to bottom, #000 50%, #000 50%, transparent 50%, transparent 100%);
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: 100% 300%;
            mask-size: 100% 300%;
    -webkit-mask-position: 0% 100%;
            mask-position: 0% 100%;
  }
}
#top-slide .slide-wrapper .wave {
  position: absolute;
  z-index: 10;
  top: calc(50% - 19.4871794872vw);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 11.1538461538vw;
}
@media (768px > width) {
  #top-slide .slide-wrapper .wave picture,
  #top-slide .slide-wrapper .wave img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
@media (768px <= width) {
  #top-slide .slide-wrapper .wave {
    top: calc(50% - 3.75vw);
    height: 4.375vw;
  }
  #top-slide .slide-wrapper .wave picture,
  #top-slide .slide-wrapper .wave img {
    -o-object-fit: contain;
       object-fit: contain;
    width: 100%;
    height: 100%;
  }
}
#top-slide .slide-wrapper .wave .wave-full {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000));
  -webkit-mask-image: linear-gradient(#000, #000);
          mask-image: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000));
          mask-image: linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0, top left;
          mask-position: 0 0, top left;
  -webkit-mask-size: 0% 100%;
          mask-size: 0% 100%;
  -webkit-transition-property: -webkit-mask-size;
  transition-property: -webkit-mask-size;
  transition-property: mask-size;
  transition-property: mask-size, -webkit-mask-size;
  -webkit-transition-duration: 8000ms;
          transition-duration: 8000ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#top-slide .slide-wrapper .wave .wave-less {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}
#top-slide .slide-wrapper .text-box {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}
@media (768px > width) {
  #top-slide .slide-wrapper .text-box {
    padding-inline: 5.1282051282vw;
  }
}
#top-slide .slide-wrapper .text-box .logo-icon {
  width: 12.8205128205vw;
  height: 5.3846153846vw;
  margin-inline: auto;
  margin-bottom: 5.1282051282vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box .logo-icon {
    width: 3.90625vw;
    height: 1.640625vw;
    margin-bottom: 2.1875vw;
  }
}
#top-slide .slide-wrapper .text-box .logo-icon picture,
#top-slide .slide-wrapper .text-box .logo-icon img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}
#top-slide .slide-wrapper .text-box .title {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box .title {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
#top-slide .slide-wrapper .text-box .title {
  margin-bottom: 30.7692307692vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box .title {
    margin-bottom: 13.4375vw;
  }
}
#top-slide .slide-wrapper .text-box h2 {
  font-size: 5.641025641vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box h2 {
    font-size: clamp(21.6px, 2.34375vw, 30px);
  }
}
#top-slide .slide-wrapper .text-box h2 {
  letter-spacing: 0.2em;
  font-weight: 400;
  margin-bottom: 8.2051282051vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box h2 {
    margin-bottom: 2.5vw;
  }
}
@media (768px > width) {
  #top-slide .slide-wrapper .text-box h2.line-2 {
    line-height: 3.1;
  }
}
#top-slide .slide-wrapper .text-box p {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box p {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
#top-slide .slide-wrapper .text-box p {
  letter-spacing: 0.1em;
  line-height: 2;
  margin-bottom: 8.2051282051vw;
}
@media (768px <= width) {
  #top-slide .slide-wrapper .text-box p {
    margin-bottom: 2.5vw;
  }
}
#top-slide .slide-wrapper .text-box .btn-box .text-btn {
  margin: auto;
}
#top-slide .slide-show {
  position: relative;
  width: 100%;
  height: 100%;
}
#top-slide .swiper-slide {
  position: relative;
  width: 100%;
  height: 100svh;
}
#top-slide .swiper-slide figure {
  display: block;
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100svh;
}
#top-slide .swiper-slide figure picture,
#top-slide .swiper-slide figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

#top-news {
  padding: 24.6153846154vw 5.1282051282vw;
}
@media (768px <= width) {
  #top-news {
    padding: 9.6875vw 0;
  }
}
@media (768px <= width) {
  #top-news .btn-box {
    padding-inline: 3.75vw;
  }
}

.top-news-box {
  margin-bottom: 12.3076923077vw;
}
@media (768px <= width) {
  .top-news-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3.75vw;
  }
}
.top-news-box h2 {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 5.8974358974vw;
}
@media (768px <= width) {
  .top-news-box h2 {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.top-news-box h2 {
  letter-spacing: 0.2em;
  font-weight: 400;
}
@media (768px > width) {
  .top-news-box h2 {
    margin-bottom: 10.7692307692vw;
  }
}
@media (768px <= width) {
  .top-news-box h2 {
    width: 15.625vw;
    text-align: center;
  }
}
@media (768px <= width) {
  .top-news-box .news-text-list {
    width: 84.375vw;
  }
}

#top-local {
  position: relative;
  z-index: 2;
}
#top-local .top-local-box {
  position: relative;
}
@media (768px > width) {
  #top-local .top-local-box {
    width: 100vw;
    height: 100svh;
  }
}
@media (768px <= width) {
  #top-local .top-local-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (768px > width) {
  #top-local .top-local-box figure {
    width: 100%;
    height: 100%;
  }
}
@media (768px <= width) {
  #top-local .top-local-box figure {
    width: 69.453125vw;
    height: 42.578125vw;
  }
}
#top-local .top-local-box figure {
  overflow: hidden;
}
#top-local .top-local-box figure picture,
#top-local .top-local-box figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (768px > width) {
  #top-local .top-local-box .text-box {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
    width: 100%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    padding-inline: 6.1538461538vw;
  }
}
@media (768px <= width) {
  #top-local .top-local-box .text-box {
    padding: 6.25vw;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#top-local .top-local-box h2 {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 5.8974358974vw;
}
@media (768px <= width) {
  #top-local .top-local-box h2 {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
#top-local .top-local-box h2 {
  letter-spacing: 0.2em;
  font-weight: 400;
}
@media (768px > width) {
  #top-local .top-local-box h2 {
    margin-bottom: 5.1282051282vw;
  }
}
@media (768px <= width) {
  #top-local .top-local-box h2 {
    margin-bottom: 2.03125vw;
  }
}

#top-access {
  position: relative;
  z-index: 1;
  background: -webkit-image-set(url(../images/top_access_bg_sp.avif) type("image/avif"), url(../images/top_access_bg_sp.png) type("image/png")) no-repeat center bottom;
  background: image-set(url(../images/top_access_bg_sp.avif) type("image/avif"), url(../images/top_access_bg_sp.png) type("image/png")) no-repeat center bottom;
  background-size: cover;
}
@media (768px > width) {
  #top-access {
    width: 100vw;
    height: 170vw;
  }
}
@media (768px <= width) {
  #top-access {
    background: -webkit-image-set(url(../images/top_access_bg_pc.avif) type("image/avif"), url(../images/top_access_bg_pc.png) type("image/png")) no-repeat center bottom;
    background: image-set(url(../images/top_access_bg_pc.avif) type("image/avif"), url(../images/top_access_bg_pc.png) type("image/png")) no-repeat center bottom;
    background-size: contain;
    margin-top: -42.578125vw;
    padding-top: 42.578125vw;
  }
}
#top-access .top-access-box {
  position: relative;
}
@media (768px <= width) {
  #top-access .top-access-box {
    width: 100%;
    height: 52.890625vw;
  }
}
#top-access .top-access-box .logo-icon {
  position: absolute;
  top: 99.4871794872vw;
  left: 47.1794871795vw;
  width: 10.2564102564vw;
  aspect-ratio: 33/14;
}
@media (768px <= width) {
  #top-access .top-access-box .logo-icon {
    top: 50%;
    left: 55.234375vw;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 3.515625vw;
  }
}
#top-access .top-access-box .logo-icon picture,
#top-access .top-access-box .logo-icon img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
#top-access .top-access-box .logo-icon::before, #top-access .top-access-box .logo-icon::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15.3846153846vw;
  opacity: 0.5;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  aspect-ratio: 1/1;
  border: 0.5px solid #fff;
  border-radius: 50%;
}
#top-access .top-access-box .logo-icon::before {
  -webkit-animation: rippleSP 5s linear infinite;
          animation: rippleSP 5s linear infinite;
}
@media (768px <= width) {
  #top-access .top-access-box .logo-icon::before {
    -webkit-animation: ripplePC 5s linear infinite;
            animation: ripplePC 5s linear infinite;
  }
}
#top-access .top-access-box .logo-icon::after {
  -webkit-animation: rippleSP 5s linear 0.8s infinite;
          animation: rippleSP 5s linear 0.8s infinite;
}
@media (768px <= width) {
  #top-access .top-access-box .logo-icon::after {
    -webkit-animation: ripplePC 5s linear 0.8s infinite;
            animation: ripplePC 5s linear 0.8s infinite;
  }
}
#top-access .text-box {
  width: 100%;
}
@media (768px > width) {
  #top-access .text-box {
    position: absolute;
    top: 48.7179487179vw;
    left: 7.1794871795vw;
  }
}
@media (768px <= width) {
  #top-access .text-box {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 13.828125vw;
  }
}
#top-access .text-box h2 {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 5.8974358974vw;
}
@media (768px <= width) {
  #top-access .text-box h2 {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
#top-access .text-box h2 {
  letter-spacing: 0.2em;
  font-weight: 400;
}
@media (768px > width) {
  #top-access .text-box h2 {
    margin-bottom: 5.1282051282vw;
  }
}
@media (768px <= width) {
  #top-access .text-box h2 {
    margin-right: 3.125vw;
  }
}

@-webkit-keyframes rippleSP {
  0% {
    opacity: 0.5;
    width: 15.3846153846vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  50% {
    opacity: 0.7;
  }
  100% {
    width: 76.9230769231vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
  }
}

@keyframes rippleSP {
  0% {
    opacity: 0.5;
    width: 15.3846153846vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  50% {
    opacity: 0.7;
  }
  100% {
    width: 76.9230769231vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
  }
}
@-webkit-keyframes ripplePC {
  0% {
    opacity: 0.5;
    width: 4.6875vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  50% {
    opacity: 0.7;
  }
  100% {
    width: 35.15625vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
  }
}
@keyframes ripplePC {
  0% {
    opacity: 0.5;
    width: 4.6875vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  50% {
    opacity: 0.7;
  }
  100% {
    width: 35.15625vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 0;
  }
}
#top-movie {
  position: relative;
}
#top-movie .top-movie-box {
  position: relative;
  width: 100%;
  height: 100svh;
}
#top-movie .top-movie-box .movie {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#top-movie .top-movie-box .movie img,
#top-movie .top-movie-box .movie video {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
#top-movie .text-box {
  position: absolute;
  z-index: 2;
}
@media (768px > width) {
  #top-movie .text-box {
    top: 48.7179487179vw;
    left: 7.1794871795vw;
  }
}
@media (768px <= width) {
  #top-movie .text-box {
    top: 50%;
    left: 9.375vw;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
#top-movie .text-box h2 {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 5.8974358974vw;
}
@media (768px <= width) {
  #top-movie .text-box h2 {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
#top-movie .text-box h2 {
  letter-spacing: 0.2em;
  font-weight: 400;
}
@media (768px > width) {
  #top-movie .text-box h2 {
    margin-bottom: 5.1282051282vw;
  }
}
@media (768px <= width) {
  #top-movie .text-box h2 {
    margin-bottom: 3.125vw;
  }
}

.stay-section01 {
  padding: 0 5.1282051282vw 14.358974359vw;
}
@media (768px <= width) {
  .stay-section01 {
    padding: 0 0 9.375vw 0;
  }
}
@media (768px <= width) {
  .stay-section01 .wp-block-group__inner-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto auto;
    -ms-grid-columns: 50vw 7.65625vw 42.34375vw;
        grid-template: "img01 text" auto "img01 img02" auto "img03 img02" auto/50vw 42.34375vw;
    -webkit-column-gap: 7.65625vw;
       -moz-column-gap: 7.65625vw;
            column-gap: 7.65625vw;
  }
}
.stay-section01 .img01 {
  grid-area: img01;
}
@media (768px > width) {
  .stay-section01 .img01 {
    width: 100%;
    margin-bottom: 8.2051282051vw;
  }
}
@media (768px <= width) {
  .stay-section01 .img01 {
    width: 50vw;
    height: 38.90625vw;
  }
}
.stay-section01 .stay01-text {
  grid-area: text;
}
@media (768px > width) {
  .stay-section01 .stay01-text {
    margin-bottom: 15.3846153846vw;
  }
}
.stay-section01 .stay01-text .wp-block-heading {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .stay-section01 .stay01-text .wp-block-heading {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.stay-section01 .stay01-text .wp-block-heading {
  margin-bottom: 3.0769230769vw;
}
@media (768px <= width) {
  .stay-section01 .stay01-text .wp-block-heading {
    margin-bottom: 2.8125vw;
    width: 29.6875vw;
  }
}
@media (768px <= width) {
  .stay-section01 .stay01-text p {
    width: 25.78125vw;
  }
}
.stay-section01 .img02 {
  grid-area: img02;
}
@media (768px > width) {
  .stay-section01 .img02 {
    width: 64.1025641026vw;
    height: 83.3333333333vw;
    margin-left: 31.7948717949vw;
    margin-right: -5.1282051282vw;
  }
}
@media (768px <= width) {
  .stay-section01 .img02 {
    width: 42.34375vw;
    height: 55.3125vw;
    margin-top: 2.8125vw;
  }
}
.stay-section01 .img03 {
  grid-area: img03;
  position: relative;
  z-index: 2;
}
@media (768px <= width){
  .stay-section01 .img01 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .stay-section01 .stay01-text {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .stay-section01 .img02 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .stay-section01 .img03 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media (768px > width) {
  .stay-section01 .img03 {
    width: 70vw;
    height: 41.2820512821vw;
    margin-top: 16.4102564103vw;
    margin-left: -5.1282051282vw;
  }
}
@media (768px <= width) {
  .stay-section01 .img03 {
    width: 49.609375vw;
    height: 29.296875vw;
    margin-top: 14.0625vw;
    margin-left: 0;
  }
}

.stay-section02 {
  padding: 0 5.1282051282vw 24.6153846154vw;
}
@media (768px <= width) {
  .stay-section02 {
    padding: 0 7.03125vw 8.75vw 12.5vw;
  }
}
@media (768px <= width) {
  .stay-section02 .wp-block-group__inner-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 9.375vw;
  }
}
@media (768px > width) {
  .stay-section02 .text-box {
    margin-bottom: 10.2564102564vw;
  }
}
@media (768px <= width) {
  .stay-section02 .text-box {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.stay-section02 .text-box .wp-block-heading {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  width: 100%;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .stay-section02 .text-box .wp-block-heading {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
.stay-section02 .text-box .wp-block-heading {
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .stay-section02 .text-box .wp-block-heading {
    margin-bottom: 3.125vw;
  }
}
.stay-section02 .text-box .wp-block-heading::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #999;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.stay-section02 .text-box ul li {
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.stay-section02 .text-box ul li {
  line-height: 2;
  padding-left: 12.8205128205vw;
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li {
    padding-left: 3.90625vw;
    margin-bottom: 3.125vw;
  }
}
.stay-section02 .text-box ul li:nth-child(1) {
  background: url(../images/icon_checkin.svg) no-repeat;
  background-size: 6.4102564103vw 6.4102564103vw;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li:nth-child(1) {
    background-size: 1.953125vw 1.953125vw;
  }
}
.stay-section02 .text-box ul li:nth-child(2) {
  background: url(../images/icon_person.svg) no-repeat;
  background-size: 4.8717948718vw 7.9487179487vw;
  background-position: 0.7692307692vw 0;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li:nth-child(2) {
    background-size: 1.484375vw 2.421875vw;
    background-position: 0.234375vw 0;
  }
}
.stay-section02 .text-box ul li:last-child {
  margin-bottom: 0;
}
.stay-section02 .text-box ul li strong {
  display: block;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li strong {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
.stay-section02 .text-box ul li strong {
  margin-bottom: 1.0256410256vw;
}
@media (768px <= width) {
  .stay-section02 .text-box ul li strong {
    margin-bottom: 0.625vw;
  }
}
@media (768px > width) {
  .stay-section02 .figure-parallax {
    width: 90.5128205128vw;
    height: 58.9743589744vw;
  }
}
@media (768px <= width) {
  .stay-section02 .figure-parallax {
    width: 39.296875vw;
    height: 25.625vw;
  }
}

.page.stay .photo-gallery {
  margin-bottom: 23.0769230769vw;
}
@media (768px <= width) {
  .page.stay .photo-gallery {
    margin-bottom: 9.375vw;
  }
}

.page.local .wp-block-cover {
  padding: 0;
}
.page.local .wp-block-cover .wp-block-cover__inner-container {
  font-size: 3.3333333333vw;
}
@media (768px <= width) {
  .page.local .wp-block-cover .wp-block-cover__inner-container {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.page.local .wp-block-cover .wp-block-cover__inner-container {
  color: #fff !important;
}
@media (768px > width) {
  .page.local .wp-block-cover .wp-block-cover__inner-container {
    padding-top: 38.4615384615vw;
    padding-inline: 9.2307692308vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover .wp-block-cover__inner-container {
    width: 31.484375vw !important;
  }
}
.page.local .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .page.local .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.page.local .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
  margin-bottom: 8.2051282051vw;
}
@media (768px <= width) {
  .page.local .wp-block-cover .wp-block-cover__inner-container .wp-block-heading {
    margin-bottom: 2.1875vw;
  }
}
.page.local .wp-block-cover .wp-block-cover__inner-container {
  opacity: 0;
  -webkit-filter: blur(12px);
          filter: blur(12px);
  -webkit-transition: all 2s var(--ease-out);
  transition: all 2s var(--ease-out);
}
.page.local .wp-block-cover.is-active .wp-block-cover__inner-container {
  opacity: 1;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section01 {
    padding-top: 11.71875vw;
    padding-left: 10.46875vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section02 {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-right: 9.375vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section02 .wp-block-cover__inner-container {
    width: 35.15625vw !important;
    margin-left: auto;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section03 {
    padding-top: 11.71875vw;
    padding-left: 9.375vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section04 {
    padding-top: 11.71875vw;
    padding-right: 13.28125vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section04 .wp-block-cover__inner-container {
    margin-left: auto;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section05 {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 11.484375vw;
  }
}
@media (768px <= width) {
  .page.local .wp-block-cover.local-section05 .wp-block-cover__inner-container {
    width: 35.15625vw !important;
  }
}

.sepalate-mark {
  padding-top: 56.1538461538vw;
  background: url(../images/logo_mark.svg) no-repeat;
  background-size: 16.9230769231vw 6.4102564103vw;
  background-position: 41.7948717949vw 24.6153846154vw;
}
@media (768px <= width) {
  .sepalate-mark {
    padding-top: 19.296875vw;
    background-size: 6.953125vw 2.8125vw;
    background-position: 46.484375vw 9.609375vw;
  }
}

@media (768px > width) {
  .introduce-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-inline: 5.1282051282vw;
    margin-bottom: 15.3846153846vw;
  }
}
@media (768px <= width) {
  .introduce-block {
    margin-bottom: 6.25vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4.6875vw;
  }
}
.introduce-block > .wp-block-image {
  width: 100vw;
  height: 66.6666666667vw;
}
@media (768px > width) {
  .introduce-block > .wp-block-image {
    margin-bottom: 8.2051282051vw;
  }
}
@media (768px <= width) {
  .introduce-block > .wp-block-image {
    width: 44.53125vw;
    height: 39.53125vw;
  }
}
.introduce-block .wp-block-heading {
  font-size: 5.1282051282vw;
}
@media (768px <= width) {
  .introduce-block .wp-block-heading {
    font-size: clamp(17.28px, 1.875vw, 24px);
  }
}
.introduce-block .wp-block-heading {
  font-weight: 400;
  margin-bottom: 6.1538461538vw;
}
@media (768px <= width) {
  .introduce-block .wp-block-heading {
    margin-bottom: 1.875vw;
  }
}
@media (768px <= width) {
  .introduce-block > .is-vertical {
    width: 47.03125vw;
  }
}
.introduce-block > .is-vertical p {
  font-size: 3.3333333333vw;
}
@media (768px <= width) {
  .introduce-block > .is-vertical p {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.introduce-block.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media (768px > width) {
  .introduce-block.reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.introduce-block .name-box {
  margin-bottom: 4.1025641026vw;
}
@media (768px <= width) {
  .introduce-block .name-box {
    margin-bottom: 1.5625vw;
  }
}
.introduce-block .name-box .degree {
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .introduce-block .name-box .degree {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.introduce-block .name-box .degree {
  line-height: 1.2;
  margin-bottom: 0;
}
@media (768px <= width) {
  .introduce-block .name-box .degree {
    margin-bottom: 0.3125vw;
  }
}
.introduce-block .name-box .name {
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  .introduce-block .name-box .name {
    font-size: clamp(12.96px, 1.40625vw, 18px);
  }
}
.introduce-block .name-box .name em {
  font-weight: normal;
  font-style: normal;
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .introduce-block .name-box .name em {
    font-size: clamp(8.64px, 0.9375vw, 12px);
  }
}
.introduce-block .name-box.flex .wp-block-group__inner-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
}
.introduce-block .name-box.flex .wp-block-group__inner-container .degree {
  margin-bottom: 0;
}
.introduce-block .profile-box {
  margin-top: 5.1282051282vw;
}
@media (768px <= width) {
  .introduce-block .profile-box {
    margin-top: 1.5625vw;
  }
}
@media (768px <= width) {
  .introduce-block .profile-box > .wp-block-group__inner-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 2.5vw;
  }
}
@media (768px > width) {
  .introduce-block .profile-box .history {
    margin-bottom: 7.6923076923vw;
  }
}
@media (768px <= width) {
  .introduce-block .profile-box .history {
    width: 32.421875vw;
  }
}
.introduce-block .profile-box p {
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .introduce-block .profile-box p {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.introduce-block .profile-box p {
  margin-bottom: 1em;
}
.introduce-block .profile-box p:last-child {
  margin-bottom: 0;
}
.introduce-block .profile-box .sns-list.wp-block-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5.1282051282vw;
}
@media (768px <= width) {
  .introduce-block .profile-box .sns-list.wp-block-gallery {
    gap: 1.875vw;
  }
}
.introduce-block .profile-box .sns-list.wp-block-gallery .wp-block-image {
  width: 8.7179487179vw;
  height: 8.7179487179vw;
}
@media (768px <= width) {
  .introduce-block .profile-box .sns-list.wp-block-gallery .wp-block-image {
    width: 2.65625vw;
    height: 2.65625vw;
  }
}
.introduce-block .profile-box .sns-list.wp-block-gallery .wp-block-image a {
  display: block;
  width: 100%;
  width: 100%;
}
.introduce-block .profile-box .sns-list.wp-block-gallery .wp-block-image a picture,
.introduce-block .profile-box .sns-list.wp-block-gallery .wp-block-image a img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.page.concept .photo-slider {
  margin-bottom: 0;
}

.page.access {
  background: -webkit-image-set(url(../images/access_bg_sp.avif) type("image/avif"), url(../images/access_bg_sp.png) type("image/png")) no-repeat #0f0f0f center top;
  background: image-set(url(../images/access_bg_sp.avif) type("image/avif"), url(../images/access_bg_sp.png) type("image/png")) no-repeat #0f0f0f center top;
  background-size: contain;
}
@media (768px <= width) {
  .page.access {
    background: -webkit-image-set(url(../images/access_bg_pc.avif) type("image/avif"), url(../images/access_bg_pc.png) type("image/png")) no-repeat #0f0f0f center top;
    background: image-set(url(../images/access_bg_pc.avif) type("image/avif"), url(../images/access_bg_pc.png) type("image/png")) no-repeat #0f0f0f center top;
    background-size: contain;
  }
}
@media (768px > width) {
  .page.access .content-body {
    padding-bottom: 0;
  }
}

.page.access .content-header-movie .logo-icon {
  aspect-ratio: 33/14;
}
@media (768px > width) {
  .page.access .content-header-movie .logo-icon {
    position: absolute;
    top: 97.4358974359vw;
    left: 44.8717948718vw;
    width: 10.2564102564vw;
  }
}
@media (768px <= width) {
  .page.access .content-header-movie .logo-icon {
    position: absolute;
    top: 30vw;
    left: 51.71875vw;
    width: 3.515625vw;
  }
}
.page.access .content-header-movie .logo-icon picture,
.page.access .content-header-movie .logo-icon img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.page.access .content-header-movie .logo-icon::before, .page.access .content-header-movie .logo-icon::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15.3846153846vw;
  opacity: 0.5;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  aspect-ratio: 1/1;
  border: 0.5px solid #fff;
  border-radius: 50%;
}
.page.access .content-header-movie .logo-icon::before {
  -webkit-animation: rippleSP 5s linear infinite;
          animation: rippleSP 5s linear infinite;
}
@media (768px <= width) {
  .page.access .content-header-movie .logo-icon::before {
    -webkit-animation: ripplePC 5s linear infinite;
            animation: ripplePC 5s linear infinite;
  }
}
.page.access .content-header-movie .logo-icon::after {
  -webkit-animation: rippleSP 5s linear 0.8s infinite;
          animation: rippleSP 5s linear 0.8s infinite;
}
@media (768px <= width) {
  .page.access .content-header-movie .logo-icon::after {
    -webkit-animation: ripplePC 5s linear 0.8s infinite;
            animation: ripplePC 5s linear 0.8s infinite;
  }
}
.page.access .content-header-movie .btn-box {
  position: absolute;
  top: 155.3846153846vw;
  left: 59.2307692308vw;
}
@media (768px <= width) {
  .page.access .content-header-movie .btn-box {
    top: 44.84375vw;
    left: 65.78125vw;
  }
}

@media (768px <= width) {
  .page.access .img-text-block {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 6.640625vw;
  }
}
@media (768px > width) {
  .page.access .img-text-block .wp-block-image {
    width: 89.7435897436vw;
    height: 66.6666666667vw;
  }
}
.page.access .img-text-block h2.wp-block-heading {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .page.access .img-text-block h2.wp-block-heading {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.page.access .img-text-block h2.wp-block-heading {
  margin-bottom: 8.2051282051vw;
}
@media (768px <= width) {
  .page.access .img-text-block h2.wp-block-heading {
    margin-bottom: 2.1875vw;
  }
}
.page.access .img-text-block h3.wp-block-heading {
  font-family: gill-sans-nova, sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em;
  font-display: swap;
  size-adjust: 98%;
  font-size: 2.5641025641vw;
}
@media (768px <= width) {
  .page.access .img-text-block h3.wp-block-heading {
    font-size: clamp(7.2px, 0.78125vw, 10px);
  }
}
.page.access .img-text-block h3.wp-block-heading {
  margin-bottom: 2.0512820513vw;
}
@media (768px <= width) {
  .page.access .img-text-block h3.wp-block-heading {
    margin-bottom: 0.625vw;
  }
}
.page.access .img-text-block p {
  font-size: 3.3333333333vw;
}
@media (768px <= width) {
  .page.access .img-text-block p {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
.page.access .img-text-block p {
  padding-left: 2.5641025641vw;
}
@media (768px <= width) {
  .page.access .img-text-block p {
    padding-left: 1.25vw;
  }
}
.page.access .img-text-block p .wp-text-btn {
  -webkit-transform: scale(0.85);
          transform: scale(0.85);
  -webkit-transform-origin: left;
          transform-origin: left;
}
.page.access .img-text-block p + h3.wp-block-heading {
  margin-top: 7.1794871795vw;
}
@media (768px <= width) {
  .page.access .img-text-block p + h3.wp-block-heading {
    margin-top: 2.1875vw;
  }
}

.access-col3-block {
  gap: 0;
  -webkit-box-align: normal;
      -ms-flex-align: normal;
          align-items: normal;
}
@media (768px > width) {
  .access-col3-block {
    background-color: var(--bg-primary);
    padding: 0 5.1282051282vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.access-col3-block h2.wp-block-heading {
  font-size: 4.1025641026vw;
}
@media (768px <= width) {
  .access-col3-block h2.wp-block-heading {
    font-size: clamp(12.96px, 1.40625vw, 18px);
  }
}
.access-col3-block h2.wp-block-heading {
  font-weight: 400;
  margin-bottom: 7.1794871795vw;
}
@media (768px <= width) {
  .access-col3-block h2.wp-block-heading {
    margin-bottom: 2.1875vw;
  }
}
.access-col3-block h3.wp-block-heading {
  font-size: 3.5897435897vw;
}
@media (768px <= width) {
  .access-col3-block h3.wp-block-heading {
    font-size: clamp(10.8px, 1.171875vw, 15px);
  }
}
.access-col3-block h3.wp-block-heading {
  font-weight: 400;
  margin-bottom: 2.0512820513vw;
}
@media (768px <= width) {
  .access-col3-block h3.wp-block-heading {
    margin-bottom: 0.15625vw;
  }
}
.access-col3-block p + h3.wp-block-heading {
  margin-top: 4.6153846154vw;
}
@media (768px <= width) {
  .access-col3-block p + h3.wp-block-heading {
    margin-top: 2.1875vw;
  }
}
.access-col3-block p {
  font-size: 3.0769230769vw;
}
@media (768px <= width) {
  .access-col3-block p {
    font-size: clamp(10.08px, 1.09375vw, 14px);
  }
}
@media (768px <= width) {
  .access-col3-block p {
    line-height: 2;
  }
}
.access-col3-block > .wp-block-group {
  gap: 0;
}
@media (768px > width) {
  .access-col3-block > .wp-block-group {
    width: 100%;
    border-bottom: 1px solid var(--border-light);
    padding-block: 14.358974359vw;
  }
}
@media (768px <= width) {
  .access-col3-block > .wp-block-group {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    padding-inline: 3.75vw;
    border-right: 1px solid var(--border-light);
  }
}
.access-col3-block > .wp-block-group:last-child {
  border: 0;
}

@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes zoom {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.slide-show .swiper-slide-prev img,
.slide-show .swiper-slide-active img,
.slide-show .swiper-slide-duplicate-active img {
  -webkit-animation-name: zoom;
          animation-name: zoom;
  -webkit-animation-duration: 15s;
          animation-duration: 15s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}