#cookiealert {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
#cookiealert .acceptcookies {
  text-align: center;
}
.ui-content {
  padding-inline: var(--side);
}
.ui-curve {
  --opacity: 0.5;
  --stroke: var(--pink);
  pointer-events: none;
  opacity: var(--opacity);
}
.ui-curve svg {
  display: block;
  width: 100%;
}
.ui-curve svg path {
  fill: none;
  stroke: var(--stroke);
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
}
.ui-title {
  --ff: var(--font-times-new-roman);
  --fz: 1.4rem;
  --ls: 0.14em;
  --lh: 1.5em;
  color: var(--color, var(--base-font-color));
  font-family: var(--ff);
  font-size: var(--fz);
  font-weight: var(--fw, 400);
  letter-spacing: var(--ls);
  line-height: var(--lh);
  text-align: center;
}
.ui-heading {
  --fz: 1.8rem;
  --ls: 0.16em;
  --lh: 2em;
  margin-block: calc((1em - var(--lh)) / 2);
  color: var(--color, var(--base-font-color));
  font-family: var(--ff, var(--base-font-family));
  font-size: var(--fz, var(--base-font-size));
  font-weight: var(--fw, 400);
  letter-spacing: var(--ls, var(--base-letter-spacing));
  line-height: var(--lh);
}
.ui-leading {
  --fz: 1.3rem;
  --lh: calc(26em/13);
  font-family: var(--ff, var(--base-font-family));
  font-size: var(--fz, var(--base-font-size));
  letter-spacing: var(--ls, var(--base-letter-spacing));
  line-height: var(--lh, var(--base-line-height));
}
.ui-leading p {
  font-size: inherit;
  line-height: inherit;
}
.ui-more {
  --width: 120px;
  --height: 35px;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  min-width: var(--width);
  min-height: var(--height);
  -webkit-padding-after: 10px;
  padding-block-end: 10px;
}
.ui-more:hover {
  opacity: 1;
}
.ui-more:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--pink);
}
.ui-more-label {
  --fz: 1.3rem;
  --ls: 0.16em;
  font-family: var(--font-cormorant);
  font-size: var(--fz);
  letter-spacing: var(--ls);
  line-height: 1;
  text-transform: uppercase;
}
.ui-more-arrow {
  fill: var(--pink);
  display: block;
  width: 10px;
}
.ui-button {
  --fz: 1.3rem;
  --ls: 0.1em;
  --width: 280px;
  --height: 60px;
  --hover: 0.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: var(--width);
  max-width: 100%;
  min-height: var(--height);
  border: 1px solid var(--border-color, var(--pink));
  font-size: var(--fz);
  font-weight: var(--fw, 400);
  letter-spacing: var(--ls);
}
.ui-button span {
  color: var(--color, var(--base-font-color));
}
.ui-button-primary {
  --color: #fff;
  --fw: 500;
  border: none;
  background-color: var(--pink-d);
  -webkit-box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.25);
  box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.25);
}
.ui-request a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.ui-request a:not(.is-booking) {
  border: 1px solid var(--pink);
  background-color: #fff;
}
.ui-request a.is-booking {
  background-color: var(--pink-d);
  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.15);
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.15);
  color: #fff;
}
.ui-call {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  row-gap: var(--gap-mb);
}
.ui-call-title {
  letter-spacing: 0.15em;
  text-align: center;
}
.ui-call-number {
  color: var(--pink-d);
  font-family: var(--font-shippori-mincho);
  letter-spacing: 0.1em;
}
.ui-call-number:-moz-any-link {
  color: var(--pink-d);
}
.ui-call-number:any-link {
  color: var(--pink-d);
}
.ui-call-note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 0.15em;
}
.site-header {
  position: fixed;
  z-index: 9;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  font-family: var(--base-font-family);
}
.site-header div {
  font-family: var(--base-font-family);
}
.site-header-layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 30px 10px 30px 10px 1fr 10px 30px 10px 30px;
  grid-template-columns: 30px 30px 1fr 30px 30px;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: var(--header-height);
  padding-inline: max(20px, calc(25 / 390 * 100vw));
}
.site-header-hum {
  -ms-grid-column: 1;
  grid-column: 1;
}
.site-header-hum:not(.js-menu-trigger) {
  pointer-events: none;
  visibility: hidden;
}
.site-header-hum button {
  display: block;
  width: 30px;
  height: 30px;
  padding-block: 8px;
}
.site-header-hum svg {
  fill: none;
  stroke: var(--gray-d);
  display: block;
  width: 30px;
  height: 15px;
}
.site-header-logo {
  -ms-grid-column: 3;
  grid-column: 3;
  -ms-grid-column-align: center;
  justify-self: center;
  width: 130px;
}
.site-header-social {
  -ms-grid-column: 4;
  grid-column: 4;
}
.site-header-social a {
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(../../img/common/i-instagram_hover.svg);
  background-image: url(../../img/common/i-instagram.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  translate: 5px 0;
}
.site-header-request {
  display: none;
}
.site-header-request a {
  min-width: 190px;
  min-height: 50px;
  font-size: 1.2rem;
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.05em;
}
.site-lang {
  position: fixed;
  z-index: 10;
  top: 0;
  right: max(20px, calc(25 / 390 * 100vw));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: var(--header-height);
  font-family: var(--base-font-family);
}
.site-lang div {
  font-family: var(--base-font-family);
}
.site-lang > div {
  pointer-events: auto;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 3px;
  -moz-column-gap: 3px;
  column-gap: 3px;
  translate: 5px 0;
}
.site-lang i {
  display: block;
  width: 30px;
  padding: 5px;
}
.site-lang i svg {
  fill: none;
  stroke: var(--gray-d);
  stroke-miterlimit: 10;
  stroke-width: 2px;
  display: block;
  width: 100%;
}
.site-lang span {
  font-size: 1.2rem;
  line-height: 1;
  white-space: nowrap;
}
.site-lang .langswitch {
  position: absolute;
  right: 0;
  -webkit-padding-before: 5px;
  padding-block-start: 5px;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}
.site-lang .langswitch .wovn-lang-list {
  font-size: 1.2rem;
  -webkit-box-shadow: 0px 0px 15px -5px var(--gray-d);
  box-shadow: 0px 0px 15px -5px var(--gray-d);
}
.site-lang .langswitch .wovn-lang-list .wovn-switch {
  cursor: pointer;
  position: relative;
  display: block;
  width: auto;
  margin-top: -1px;
  padding: 8px 14px 8px 10px;
  border: 1px solid var(--gray-d);
  background-color: #fff;
}
.site-nav {
  pointer-events: none;
  position: -webkit-sticky;
  position: sticky;
  z-index: 9;
  top: 100px;
  width: 100%;
  margin-block: calc(var(--header-height) * -1) var(--header-height);
  padding-inline: 100px;
}
@supports (mix-blend-mode: difference) {
  .site-nav {
    mix-blend-mode: difference;
  }
}
.site-nav div {
  font-family: var(--font-cormorant);
}
.site-nav > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 36px;
  -moz-column-gap: 36px;
  column-gap: 36px;
  height: var(--header-height);
  font-family: var(--font-cormorant);
  font-size: 1.2rem;
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.16em;
}
.site-nav .has-list {
  position: relative;
}
.site-nav .has-list .nested-list {
  opacity: 0;
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  max-height: 0;
  -webkit-margin-before: -1px;
  margin-block-start: -1px;
  -webkit-padding-before: 11px;
  padding-block-start: 11px;
  white-space: nowrap;
  -webkit-transition:
    opacity 300ms,
    max-height 0ms;
  transition:
    opacity 300ms,
    max-height 0ms;
  -webkit-transition-delay: 0ms, 300ms;
  transition-delay: 0ms, 300ms;
}
.site-nav .has-list .nested-list ul {
  overflow: hidden;
  position: relative;
  z-index: 1;
  display: -ms-grid;
  display: grid;
  row-gap: 10px;
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.95);
}
@supports (mix-blend-mode: difference) {
  .site-nav .has-list .nested-list ul {
    background-color: #111;
  }
}
.site-nav li a,
.site-nav li button {
  pointer-events: auto;
}
main {
  overflow-x: clip;
  font-family: var(--base-font-family);
}
main div {
  font-family: var(--base-font-family);
}
.site-footer {
  background-color: var(--gray-l);
  color: var(--black);
}
.site-footer-contact {
  padding-block: 80px 40px;
  padding-inline: max(20px, calc(25 / 390 * 100vw));
}
.site-footer-contact-title {
  color: var(--pink);
  font-family: var(--font-times-new-roman);
  font-size: 1.8rem;
  letter-spacing: 0.14em;
  text-align: center;
  text-transform: uppercase;
}
.site-footer-contact-request {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  row-gap: 5px;
}
.site-footer-contact-request a {
  width: 100%;
  max-width: 340px;
  min-height: 80px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}
.site-footer-contact-call {
  --gap-mb: 30px;
  --gap-tb: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
}
.site-footer-contact-call .ui-call-title {
  font-size: 1.6rem;
}
.site-footer-contact-call .ui-call-number {
  --height: 70px;
  font-size: 2.5rem;
}
.site-footer-contact-call .ui-call-note {
  font-size: 1.3rem;
  line-height: calc(26em / 13);
}
.site-footer-nav {
  display: none;
}
.site-footer-nav-title {
  -webkit-padding-after: 1em;
  padding-block-end: 1em;
  border-bottom: 1px solid;
  color: var(--pink);
  font-family: var(--font-times-new-roman);
  font-size: 1.4rem;
  letter-spacing: 0.13em;
  line-height: 1;
  text-transform: uppercase;
}
.site-footer-nav-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-block: 40px 60px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: calc(22em / 12);
}
.site-footer-nav-menu ul {
  -webkit-padding-after: 0.5em;
  padding-block-end: 0.5em;
}
.site-footer-nav-menu ul:not(:first-child) {
  -webkit-padding-start: 30px;
  padding-inline-start: 30px;
  border-left: 1px solid #c7c7c6;
}
.site-footer-nav-menu ul.in-two-rows {
  display: -ms-grid;
  display: grid;
  grid-auto-flow: column;
  -ms-grid-columns: auto 30px auto;
  grid-template-columns: repeat(2, auto);
  -webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px;
  -ms-grid-rows: (auto) [5];
  grid-template-rows: repeat(5, auto);
}
.site-footer-nav-menu ul.in-two-rows > :first-child {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(2) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(3) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(4) {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(5) {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(6) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(7) {
  -ms-grid-row: 2;
  -ms-grid-column: 3;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(8) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(9) {
  -ms-grid-row: 4;
  -ms-grid-column: 3;
}
.site-footer-nav-menu ul.in-two-rows > :nth-child(10) {
  -ms-grid-row: 5;
  -ms-grid-column: 3;
}
.site-footer-nav-menu li {
  -webkit-margin-after: calc(10em / 12);
  margin-block-end: calc(10em / 12);
}
.site-footer-nav-menu li:first-child {
  -webkit-margin-before: calc((1em - 22em / 12) / 2);
  margin-block-start: calc((1em - 22em / 12) / 2);
}
.site-footer-nav-menu .in-two-rows .in-a-row {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1 / span 2;
}
.site-footer-nav-menu .has-top-adjust {
  -webkit-margin-before: calc(20em / 12);
  margin-block-start: calc(20em / 12);
}
.site-footer-nav-menu .has-bar:before {
  content: "- ";
}
.site-footer-breadcrumbs {
  padding-block: 20px;
  padding-inline: max(20px, calc(25 / 390 * 100vw));
  border-top: 1px solid #c7c7c6;
  color: var(--gray-d);
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: calc(20em / 10);
}
.site-footer-breadcrumbs ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 0.5em;
  -moz-column-gap: 0.5em;
  column-gap: 0.5em;
}
.site-menu {
  --track-color: var(--gray);
  --thumb-color: var(--pink);
  --thumb-radius: 5px;
  overflow: hidden scroll;
  overscroll-behavior-y: contain;
  opacity: 0;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: none;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.9);
}
html.is-menu-show .site-menu {
  display: block;
}
.site-menu-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  row-gap: 40px;
  min-height: calc(100vh + 1px);
  -webkit-padding-after: 140px;
  padding-block-end: 140px;
  padding-inline: max(20px, calc(25 / 390 * 100vw));
}
.site-menu-header {
  --height: var(--header-height);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 30px 10px 1fr 10px 30px;
  grid-template-columns: 30px 1fr 30px;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: var(--height);
  -webkit-margin-after: -30px;
  margin-block-end: -30px;
}
.site-menu-cross {
  position: fixed;
  top: 0;
  left: max(20px, calc(25 / 390 * 100vw));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: var(--height);
}
.site-menu-cross:not(.js-menu-trigger) {
  pointer-events: none;
  visibility: hidden;
}
.site-menu-cross button {
  display: block;
  width: 30px;
  height: 30px;
  padding-block: 8px;
}
.site-menu-cross svg {
  fill: none;
  stroke: var(--gray-d);
  display: block;
  width: 30px;
  height: 15px;
}
.site-menu-logo {
  -ms-grid-column: 2;
  grid-column: 2;
  -ms-grid-column-align: center;
  justify-self: center;
  width: 130px;
}
.site-menu-social {
  -ms-grid-column: 3;
  grid-column: 3;
}
.site-menu-social a {
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(../../img/common/i-instagram_hover.svg);
  background-image: url(../../img/common/i-instagram.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  translate: 5px 0;
}
.site-menu-request {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
}
.site-menu-request a {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-height: 50px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}
.site-menu-nav {
  --gap: 15px;
  display: -ms-grid;
  display: grid;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
  row-gap: var(--gap);
  font-size: 1.4rem;
  letter-spacing: 0.18em;
  line-height: calc(26em / 14);
}
.site-menu-nav a {
  display: inline-block;
}
.site-menu-nav li:not([data-lang="ja"]) {
  font-family: var(--font-times-new-roman);
}
.site-menu-nav .has-list {
  -webkit-padding-start: 1.5em;
  padding-inline-start: 1.5em;
}
.site-menu-nav .has-list > button span {
  position: relative;
  display: block;
}
.site-menu-nav .has-list > button span:before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: calc(4em / 14);
  left: -1.5em;
  width: calc(12em / 14);
  height: 1em;
  background-image:
    -webkit-gradient(
      linear,
      left top,
      right top,
      from(var(--pink)),
      to(var(--pink))
    ),
    -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(var(--pink)),
        to(var(--pink))
      );
  background-image:
    linear-gradient(to right, var(--pink), var(--pink)),
    linear-gradient(to bottom, var(--pink), var(--pink));
  background-position:
    0 calc(50% + 1px),
    50% 2px;
  background-repeat: no-repeat;
  background-size:
    100% 1px,
    1px 100%;
  -webkit-transition: background-size 200ms;
  transition: background-size 200ms;
}
.site-menu-nav .nested-list {
  -webkit-transition: grid-template-rows 300ms ease-out;
  transition: grid-template-rows 300ms ease-out;
  transition:
    grid-template-rows 300ms ease-out,
    -ms-grid-rows 300ms ease-out;
}
.site-menu-nav .nested-list ul {
  display: -ms-grid;
  display: grid;
  row-gap: var(--gap);
}
.site-menu-nav .has-list .nested-list ul {
  overflow: hidden;
  -webkit-margin-before: -1px;
  margin-block-start: -1px;
}
.site-menu-nav .has-list .nested-list ul li:first-child {
  -webkit-padding-before: calc(var(--gap) + 1px);
  padding-block-start: calc(var(--gap) + 1px);
}
.site-menu-return a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 320px;
  max-width: 100%;
  min-height: 50px;
  margin-inline: auto;
  background-color: var(--gray);
  color: var(--gray-d);
  font-size: 1.2rem;
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.05em;
}
.site-menu-call {
  --gap-mb: 15px;
  --gap-tb: 10px;
}
.site-menu-call .ui-call-title {
  font-size: 1.4rem;
}
.site-menu-call .ui-call-number {
  --height: 60px;
  font-size: 2rem;
}
.site-menu-call .ui-call-note {
  font-size: 1.2rem;
  line-height: calc(22em / 12);
}
.home-news {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.home-news-layout {
  display: -ms-grid;
  display: grid;
  row-gap: 10px;
}
.home-news-layout > hr {
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--pink);
}
.home-news-title .ui-title {
  text-align: left;
}
.home-news-list {
  display: -ms-grid;
  display: grid;
  row-gap: 20px;
  -webkit-margin-before: 5px;
  margin-block-start: 5px;
}
.home-news-item > a {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 10px 1fr 10px auto;
  grid-template-columns: auto 1fr auto;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  row-gap: 8px;
}
.home-news-item > a:hover {
  opacity: 1;
}
.home-news-item time {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
}
.home-news-item > a > svg {
  fill: var(--pink);
  display: block;
  width: 10px;
}
.home-news-item-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  row-gap: 10px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  text-align: center;
}
.home-news-item-label span {
  display: block;
  padding: calc(2em / 12) calc(14em / 12);
  background-color: var(--pink);
  color: #fff;
}
.home-news-item-title {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: calc(22em / 12);
}
.home-news-more {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.home-concept {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.home-concept .ui-curve {
  --opacity: 0.8;
  --stroke: #fff;
  -webkit-margin-after: 20px;
  margin-block-end: 20px;
}
.home-concept-layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
}
.home-concept-layout > * {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
}
.home-concept-back {
  z-index: 0;
}
.home-concept-content {
  z-index: 1;
  -webkit-padding-before: 75px;
  padding-block-start: 75px;
}
.home-concept-symbol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.home-concept-symbol img {
  width: 280px;
  max-width: 100%;
}
.home-concept-leading {
  --lh: calc(30em/13);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  row-gap: 20px;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
  text-align: center;
  word-break: keep-all;
}
.home-concept-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 50px;
  margin-block-start: 50px;
}
.home-concept-more .ui-button {
  --width: 260px;
  --border-color: #fff;
}
.home-chapel {
  -webkit-margin-before: 85px;
  margin-block-start: 85px;
}
.home-chapel-title {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.home-chapel-slider {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.home-chapel-description {
  -webkit-margin-before: 45px;
  margin-block-start: 45px;
}
.home-chapel-heading {
  text-align: center;
  word-break: keep-all;
}
.home-chapel-leading {
  display: -ms-grid;
  display: grid;
  row-gap: 20px;
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.home-chapel-leading p {
  text-align: center;
  word-break: keep-all;
}
.home-chapel-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.home-chapel-small-wedding {
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.home-banquet {
  -webkit-margin-before: 120px;
  margin-block-start: 120px;
}
.home-banquet-heading {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
  text-align: center;
  word-break: keep-all;
}
.home-banquet-leading {
  -webkit-margin-before: 35px;
  margin-block-start: 35px;
}
.home-banquet-leading p {
  font-size: inherit;
  line-height: inherit;
  text-align: center;
  word-break: keep-all;
}
.home-banquet .banquet-rooms {
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.home-plan {
  -webkit-margin-before: 100px;
  margin-block-start: 100px;
}
.home-segment {
  position: relative;
  z-index: 0;
}
.home-segment-description .ui-title {
  text-align: left;
}
.home-segment-description .ui-heading {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.home-segment-description .ui-leading {
  -webkit-margin-before: 25px;
  margin-block-start: 25px;
}
.home-segment-description .ui-leading p {
  word-break: keep-all;
}
.home-segment-more {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.home-segment-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.home-segment-list figure {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.home-segment-list figure img {
  aspect-ratio: 1;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
.home-segment-list figure figcaption {
  -webkit-margin-before: 5px;
  margin-block-start: 5px;
  color: var(--pink);
  font-family: var(--font-times-new-roman);
  font-size: 1.5rem;
  letter-spacing: 0.14em;
  text-align: center;
}
.home-cuisine {
  position: relative;
  z-index: 0;
  -webkit-margin-before: 100px;
  margin-block-start: 100px;
}
.home-cuisine-figure {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5px calc(145 / 365 * 100%);
  grid-template-columns: 1fr calc(145 / 365 * 100%);
  -webkit-column-gap: 5px;
  -moz-column-gap: 5px;
  column-gap: 5px;
  -webkit-margin-start: var(--side);
  margin-inline-start: var(--side);
}
.home-cuisine-back {
  margin-block: 35px -50px;
}
.home-cuisine .home-segment-description {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
  margin-inline: var(--side);
}
.home-dress {
  position: relative;
  z-index: 0;
  -webkit-margin-before: 100px;
  margin-block-start: 100px;
}
.home-dress-figure {
  position: relative;
  z-index: 1;
  margin-inline: calc(115 / 390 * 100%) var(--side);
}
.home-dress-back {
  position: relative;
  z-index: 0;
  -webkit-margin-before: min(-30px/390 * 320, -30/390 * 100%);
  margin-block-start: min(-30px/390 * 320, -30/390 * 100%);
}
.home-dress .home-segment-description {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
  margin-inline: var(--side);
}
.home-party-report {
  -webkit-margin-before: 120px;
  margin-block-start: 120px;
}
.home-party-report-content {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.home-party-report-hash {
  -webkit-margin-before: 8px;
  margin-block-start: 8px;
  font-family: var(--font-cormorant);
  font-size: 1.1rem;
  letter-spacing: 0.18em;
  line-height: calc(13em / 11);
  text-align: center;
}
.home-party-report-slider {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.home-party-report-slider .swiper-slide > a {
  display: block;
}
.home-party-report-slider .swiper-slide > a figure img {
  aspect-ratio: 1;
  -o-object-fit: cover;
  object-fit: cover;
}
.home-party-report-slider .swiper-slide > a .ui-leading {
  -webkit-margin-before: 15px;
  margin-block-start: 15px;
}
.home-party-report-slider-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 17px;
  -moz-column-gap: 17px;
  column-gap: 17px;
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.home-party-report-slider-pagination .swiper-pagination-bullet {
  opacity: 1;
  display: block;
  width: 5px;
  height: 5px;
  background-color: var(--gray);
  -webkit-transition: background-color 500ms;
  transition: background-color 500ms;
}
.home-party-report-slider-pagination .swiper-pagination-bullet-active {
  background-color: var(--pink);
}
.home-party-report-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.home-service {
  -webkit-margin-before: 120px;
  margin-block-start: 120px;
}
.home-service-lists {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  row-gap: 10px;
}
.home-service-item {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
  aspect-ratio: 1;
}
.home-service-item-back {
  --alpha: 0;
  position: relative;
  z-index: 0;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
}
.home-service-item-back.has-alpha-10 {
  --alpha: 0.1;
}
.home-service-item-back.has-alpha-20 {
  --alpha: 0.2;
}
.home-service-item-back.has-alpha-40 {
  --alpha: 0.4;
}
.home-service-item.is-other .home-service-item-back {
  background-color: var(--gray-l);
}
.home-service-item-back:before {
  content: "";
  position: absolute;
  z-index: 9;
  inset: 0;
  background-color: rgba(0, 0, 0, var(--alpha));
}
.home-service-item-back img {
  aspect-ratio: 1;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
@-webkit-keyframes homeServiceHoverEnter {
  0% {
    opacity: 1;
    scale: 1;
  }
  50% {
    opacity: 0.45;
  }
  to {
    opacity: 1;
    scale: 1.1;
  }
}
@keyframes homeServiceHoverEnter {
  0% {
    opacity: 1;
    scale: 1;
  }
  50% {
    opacity: 0.45;
  }
  to {
    opacity: 1;
    scale: 1.1;
  }
}
@-webkit-keyframes homeServiceHoverLeave {
  0% {
    scale: 1.1;
  }
  to {
    scale: 1;
  }
}
@keyframes homeServiceHoverLeave {
  0% {
    scale: 1.1;
  }
  to {
    scale: 1;
  }
}
.home-service-item-content {
  z-index: 1;
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
  -ms-grid-row-align: center;
  align-self: center;
  text-align: center;
}
.home-service-item:not(.is-other) .home-service-item-content {
  color: #fff;
}
.home-service-item-content .lang-en {
  font-family: var(--font-times-new-roman);
  font-size: 1.6rem;
  letter-spacing: 0.14em;
  line-height: calc(26em / 16);
}
.home-service-item-content .lang-ja {
  -webkit-margin-before: 5px;
  margin-block-start: 5px;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: calc(16em / 13);
}
.home-access {
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.home-access-content {
  -webkit-margin-before: 50px;
  margin-block-start: 50px;
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#fff),
    to(var(--gray-l))
  );
  background-image: linear-gradient(to bottom, #fff, var(--gray-l));
  background-repeat: no-repeat;
}
.home-access-map {
  background-color: var(--gray-l);
}
.home-access-map iframe {
  aspect-ratio: 390/220;
}
.home-access-description {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.home-access-description .ui-leading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 20px;
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.home-access-description .ui-leading .has-map-link {
  -webkit-margin-before: -20px;
  margin-block-start: -20px;
}
.home-access-description .ui-leading .has-map-link a {
  display: inline-block;
  padding-block: 3px;
  background-image: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--pink)),
    to(var(--pink))
  );
  background-image: linear-gradient(to right, var(--pink), var(--pink));
  background-position: 0% 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
}
.home-access-description-title {
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  word-break: keep-all;
}
.home-access-more {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.page-key {
  overflow-x: clip;
}
.page-key svg {
  opacity: 0.5;
  display: block;
  width: 100%;
}
.page-key svg path {
  fill: none;
  stroke: var(--pink);
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
}
.page-key-title {
  margin-inline: max(25px/390 * 320, var(--side));
  font-family: var(--font-times-new-roman);
  font-size: 1.4rem;
  letter-spacing: 0.28em;
  text-align: center;
}
.chapel-slider-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 17px;
  -moz-column-gap: 17px;
  column-gap: 17px;
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.chapel-slider-pagination .swiper-pagination-bullet {
  opacity: 1;
  display: block;
  width: 5px;
  height: 5px;
  background-color: var(--gray);
  -webkit-transition: background-color 500ms;
  transition: background-color 500ms;
}
.chapel-slider-pagination .swiper-pagination-bullet-active {
  background-color: var(--pink);
}
.chapel-small-wedding {
  background-color: var(--gray-l);
  -webkit-box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.13);
}
.chapel-small-wedding-description {
  padding-block: 30px;
  padding-inline: 28px;
}
.chapel-small-wedding-heading-en {
  color: var(--pink);
  font-family: var(--font-times-new-roman);
  font-size: 1.3rem;
  letter-spacing: 0.14em;
}
.chapel-small-wedding-heading {
  -webkit-margin-before: 12px;
  margin-block-start: 12px;
  word-break: keep-all;
}
.chapel-small-wedding-leading {
  display: -ms-grid;
  display: grid;
  row-gap: 15px;
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.chapel-small-wedding-leading p {
  text-align: justify;
}
.chapel-small-wedding-more {
  -webkit-margin-before: 35px;
  margin-block-start: 35px;
}
.banquet-rooms {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4px 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 4px;
  -moz-column-gap: 4px;
  column-gap: 4px;
  row-gap: 20px;
}
.banquet-rooms > a {
  display: block;
}
.banquet-room-tumbnail {
  aspect-ratio: 1;
}
.banquet-room-tumbnail img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
.banquet-room-name {
  -webkit-margin-before: 10px;
  margin-block-start: 10px;
  font-family: var(--font-times-new-roman);
  font-size: 1.2rem;
  letter-spacing: 0.14em;
  text-align: center;
}
.banquet-room-description {
  -webkit-margin-before: -3px;
  margin-block-start: -3px;
  color: var(--pink);
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  text-align: center;
}
.concept-key .ui-curve {
  --opacity: 0.8;
  --stroke: #fff;
}
.concept-key-layout {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr;
  -ms-grid-columns: 1fr;
  grid-template: 1fr/1fr;
}
.concept-key-layout > * {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: 1/1;
}
.concept-key-back {
  z-index: 0;
}
.concept-key-content {
  z-index: 1;
  -webkit-padding-before: 100px;
  padding-block-start: 100px;
}
.concept-symbol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.concept-symbol img {
  width: 280px;
  max-width: 100%;
}
.concept-key-leading {
  --lh: calc(30em/13);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  row-gap: 20px;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
  text-align: center;
  word-break: keep-all;
}
.concept-history-back-gray {
  padding-block: 60px 80px;
  background-color: var(--gray-l);
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(var(--gray-l)),
    to(#fff)
  );
  background-image: linear-gradient(to bottom, var(--gray-l), #fff);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 80px;
}
.concept-history-introduction {
  -webkit-margin-before: 50px;
  margin-block-start: 50px;
}
.concept-history-introduction-description {
  -webkit-margin-before: 50px;
  margin-block-start: 50px;
}
.concept-history-introduction-leading {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.concept-history-introduction-leading p {
  text-align: justify;
}
.concept-history-world {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.concept-history-world-figure {
  position: relative;
}
.concept-history-world-leading {
  display: -ms-grid;
  display: grid;
  row-gap: 20px;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.concept-history-slider {
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.concept-history-slider .swiper {
  padding-inline: max(15px/390 * 320, 15/390 * 100%);
}
.concept-history-slider-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 17px;
  -moz-column-gap: 17px;
  column-gap: 17px;
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.concept-history-slider-pagination .swiper-pagination-bullet {
  opacity: 1;
  display: block;
  width: 5px;
  height: 5px;
  background-color: var(--gray);
  -webkit-transition: background-color 500ms;
  transition: background-color 500ms;
}
.concept-history-slider-pagination .swiper-pagination-bullet-active {
  background-color: var(--pink);
}
.concept-episode-layout {
  display: -ms-grid;
  display: grid;
  row-gap: 40px;
}
.concept-episode-description img {
  display: block;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.concept-episode-leading {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.faq-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr max(8px/390 * 320, 8/390 * 100vw) 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: max(8px/390 * 320, 8/390 * 100vw);
  -moz-column-gap: max(8px/390 * 320, 8/390 * 100vw);
  column-gap: max(8px/390 * 320, 8/390 * 100vw);
  row-gap: max(8px/390 * 320, 8/390 * 100vw);
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.faq-nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 50px;
  padding: 3px 21px;
  border: 1px solid var(--pink);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011%2010%22%3E%3Cpath%20fill%3D%22%23d3b5a3%22%20d%3D%22M5.5%2C10l-2.3-4.38L0%2C0s4.91%2C5%2C5.5%2C5S11%2C0%2C11%2C0l-3.2%2C5.62-2.3%2C4.38Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: right 10px top 50%;
  background-repeat: no-repeat;
  background-size: 11px auto;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
}
.faq-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 80px;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.faq-section .ui-curve {
  -webkit-margin-after: 10px;
  margin-block-end: 10px;
  margin-inline: calc(var(--side) * -1);
}
.faq-section-body {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.faq-section-link {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.faq-block {
  --pad-y: 20px;
}
.faq-block-summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: var(--pad-y);
  border-bottom: 1px solid var(--gray);
}
.faq-block-summary:after,
.faq-block-summary:before {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  display: block;
  line-height: 1;
}
.faq-block-summary:before {
  content: "Q";
  width: 25px;
  font-family: var(--font-cormorant);
  font-size: 1.8rem;
  translate: 0 0.2em;
}
.faq-block-summary:after {
  content: "";
  width: 15px;
  height: 15px;
  -webkit-margin-start: 10px;
  margin-inline-start: 10px;
  background-image:
    -webkit-gradient(linear, left top, right top, from(currentColor)),
    -webkit-gradient(linear, left top, left bottom, from(currentColor));
  background-image:
    linear-gradient(to right, currentColor),
    linear-gradient(to bottom, currentColor);
  background-position:
    0 7px,
    7px 0;
  background-repeat: no-repeat;
  background-size:
    100% 1px,
    1px 100%;
  color: var(--pink);
  translate: 0 0.45em;
  -webkit-transition: background-size 300ms;
  transition: background-size 300ms;
}
.faq-block[open] .faq-block-summary:after {
  background-position:
    0 7px,
    7px 100%;
  background-size:
    100% 1px,
    1px 0%;
}
.faq-block-summary span {
  -webkit-box-flex: 1;
  -ms-flex: auto;
  flex: auto;
  display: block;
  font-size: inherit;
}
.faq-block.js-toggle .faq-block-content {
  overflow: hidden;
  -webkit-transition: height 200ms ease-out;
  transition: height 200ms ease-out;
}
.faq-block.js-toggle.is-open .faq-block-content {
  -webkit-transition-duration: 400ms;
  transition-duration: 400ms;
}
.faq-block-content > div {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 30px;
  padding-block: 20px;
  padding-inline: 25px;
}
.faq-block.js-toggle .faq-block-content > div {
  opacity: 0;
  translate: 0 -10px;
  -webkit-transition: opacity, translate;
  transition: opacity, translate;
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
}
.faq-block.js-toggle.is-open .faq-block-content > div {
  opacity: 1;
  translate: 0 0px;
  -webkit-transition-duration: 300ms;
  transition-duration: 300ms;
  -webkit-transition-delay: 100ms;
  transition-delay: 100ms;
}
.faq-block-content > div:before {
  content: "A";
  position: absolute;
  top: 20px;
  left: 0;
  display: block;
  color: var(--pink);
  font-family: var(--font-cormorant);
  font-size: 1.8rem;
}
.faq-block-more {
  --width: 212px;
}
.guest-content .ui-curve {
  -webkit-margin-before: 100px;
  margin-block-start: 100px;
  margin-inline: calc(var(--side) * -1);
}
.guest-subtitle {
  -webkit-margin-before: 5px;
  margin-block-start: 5px;
  text-align: center;
}
.guest-cover {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
  margin-inline: calc(var(--side) * -1);
}
.guest-header-leading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 40px;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 2.2;
  text-align: center;
}
.guest-header-leading p {
  font-size: inherit;
  line-height: inherit;
}
.guest-header-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.guest-header-more .ui-more {
  --width: 120px;
}
.guest-section-title-ja {
  text-align: center;
}
.guest-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr max(8px/390 * 320, 8/390 * 100vw) 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: max(8px/390 * 320, 8/390 * 100vw);
  -moz-column-gap: max(8px/390 * 320, 8/390 * 100vw);
  column-gap: max(8px/390 * 320, 8/390 * 100vw);
  row-gap: max(8px/390 * 320, 8/390 * 100vw);
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
.guest-nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 50px;
  padding: 3px 21px;
  border: 1px solid var(--pink);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011%2010%22%3E%3Cpath%20fill%3D%22%23d3b5a3%22%20d%3D%22M5.5%2C10l-2.3-4.38L0%2C0s4.91%2C5%2C5.5%2C5S11%2C0%2C11%2C0l-3.2%2C5.62-2.3%2C4.38Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: right 10px top 50%;
  background-repeat: no-repeat;
  background-size: 11px auto;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
}
.guest-access {
  -webkit-margin-before: 100px;
  margin-block-start: 100px;
}
.guest-access-heading {
  --fz: 1.6rem;
  -webkit-margin-after: 20px;
  margin-block-end: 20px;
  -webkit-padding-after: 20px;
  padding-block-end: 20px;
  border-bottom: 1px solid var(--gray);
}
.guest-access-description {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.guest-access-leading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 25px;
}
.guest-access-leading .ui-more {
  --width: 280px;
  --height: 30px;
}
.guest-access-address {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.guest-access-map {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.guest-access-map iframe {
  display: block;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}
.guest-access-transportation {
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.guest-access-airport-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 10px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.guest-access-airport-link .ui-more-label {
  --fz: 1.2rem;
  --ls: 0.1em;
}
.guest-facility-title .ui-heading {
  --fz: 1.6rem;
}
.guest-facility-title .ui-title {
  --fz: 2.4rem;
}
.guest-facility-location {
  --fz: 1.2rem;
  text-align: center;
}
.guest-facility-leading {
  -webkit-margin-before: 30px;
  margin-block-start: 30px;
}
.guest-facility-more {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.guest-facility-slider {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.bridal-fair {
  padding-block: 60px 100px;
  background-color: #f2e9e3;
}
body:not(.home) .bridal-fair {
  -webkit-margin-before: 120px;
  margin-block-start: 120px;
}
.bridal-fair-title {
  -webkit-margin-before: 10px;
  margin-block-start: 10px;
}
.bridal-fair-title .ui-title {
  text-align: center;
}
.bridal-fair-body {
  -webkit-margin-before: 45px;
  margin-block-start: 45px;
}
.bridal-fair-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
}
.bridal-plan {
  position: relative;
  z-index: 0;
  padding-block: 70px 100px;
  background-color: #f2e9e3;
}
.bridal-plan-header .ui-curve {
  position: relative;
  z-index: -1;
}
.bridal-plan-list {
  -webkit-margin-before: 70px;
  margin-block-start: 70px;
}
.bridal-plan-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.wedding-contents {
  padding-block: 25px 100px;
}
.wedding-contents-header .ui-curve {
  opacity: 0.5;
}
.wedding-contents-title .ui-title {
  text-align: center;
}
.wedding-contents-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr max(20px/390 * 320, 20/390 * 100%) 1fr
    max(20px/390 * 320, 20/390 * 100%) 1fr;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: max(20px/390 * 320, 20/390 * 100%);
  -moz-column-gap: max(20px/390 * 320, 20/390 * 100%);
  column-gap: max(20px/390 * 320, 20/390 * 100%);
  row-gap: 30px;
  -webkit-margin-before: 70px;
  margin-block-start: 70px;
}
.wedding-contents-item {
  font-family: var(--font-times-new-roman);
  font-size: 0.9rem;
  line-height: calc(18em / 9);
  letter-spacing: 0.14em;
  -moz-text-align-last: center;
  text-align-last: center;
}
.wedding-contents-item img {
  aspect-ratio: 1;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
.wedding-contents-item p {
  -webkit-margin-before: 10px;
  margin-block-start: 10px;
  -webkit-margin-start: -0.14em;
  margin-inline-start: -0.14em;
}
.wedding-contents-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 50px;
  margin-block-start: 50px;
}
.archive-search-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 8px 1fr;
  grid-template-columns: 1fr 1fr;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  row-gap: 8px;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.archive-search-item {
  position: relative;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
}
.archive-search-item > a,
.archive-search-item > button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  min-height: 50px;
  border: 1px solid var(--pink);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011%2010%22%3E%3Cpath%20fill%3D%22%23d3b5a3%22%20d%3D%22M5.5%2C10l-2.3-4.38L0%2C0s4.91%2C5%2C5.5%2C5S11%2C0%2C11%2C0l-3.2%2C5.62-2.3%2C4.38Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: right 15px top 50%;
  background-repeat: no-repeat;
  background-size: 11px auto;
}
.archive-search-item:first-child > a {
  background-color: var(--pink);
}
.archive-search-item-branch {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: -1px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-block: 6px;
  padding-inline: 5px;
  -webkit-transition:
    visibility 0ms 200ms,
    opacity 200ms;
  transition:
    visibility 0ms 200ms,
    opacity 200ms;
}
.archive-search-item-branch:hover,
.archive-search-item > button:hover + .archive-search-item-branch {
  opacity: 1;
  visibility: visible;
  -webkit-transition:
    visibility 0ms 0ms,
    opacity 300ms;
  transition:
    visibility 0ms 0ms,
    opacity 300ms;
}
.archive-search-item-branch div {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 5px;
  min-width: 12em;
  padding: 10px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 4px 0 rgba(211, 181, 163, 0.5);
  box-shadow: 0 0 4px 0 rgba(211, 181, 163, 0.5);
}
.archive-search-item-branch div button:not(.is-selected) {
  pointer-events: none;
  opacity: 0.5;
}
.archive-search-item-branch div a {
  position: relative;
  display: block;
  padding-block: 3px;
  padding-inline: 3px 21px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011%2010%22%3E%3Cpath%20fill%3D%22%23d3b5a3%22%20d%3D%22M5.5%2C10l-2.3-4.38L0%2C0s4.91%2C5%2C5.5%2C5S11%2C0%2C11%2C0l-3.2%2C5.62-2.3%2C4.38Z%22%2F%3E%3C%2Fsvg%3E");
  background-position: right 5px top 50%;
  background-repeat: no-repeat;
  background-size: 6px auto;
}
.archive-search-item-branch div a.is-active {
  pointer-events: none;
  color: var(--pink-d);
}
.archive-search-item-branch div a.is-disabled {
  pointer-events: none;
}
.archive-search-item-branch div a.is-disabled span {
  opacity: 0.45;
}
.archive-search-item-branch div a:before {
  content: "";
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--pink);
}
.archive-search-item-branch div a.is-disabled:before {
  opacity: 1;
}
.archive-list {
  -webkit-margin-before: -30px;
  margin-block-start: -30px;
  -webkit-transition: opacity 400ms ease-out;
  transition: opacity 400ms ease-out;
}
.archive-list-loader {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 90px;
  margin-block-start: 90px;
}
.archive-list-loader img {
  width: 38px;
  height: 38px;
}
.archive-item {
  position: relative;
  z-index: 0;
  -webkit-margin-before: 90px;
  margin-block-start: 90px;
}
.archive-item-featured,
.archive-item-no-featured {
  -ms-grid-row: 1;
  grid-row: 1;
  aspect-ratio: 380/270;
}
.archive-item-no-featured {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: var(--gray-l);
  color: var(--pink);
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}
.archive-item-featured img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
.archive-item-title {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
  font-size: 1.6rem;
  letter-spacing: 0.16em;
  line-height: 2;
  word-break: keep-all;
}
.archive-item-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 15px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  row-gap: 7px;
  -webkit-margin-before: 15px;
  margin-block-start: 15px;
  -webkit-padding-before: 20px;
  padding-block-start: 20px;
  border-top: 1px solid;
  color: var(--pink);
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
.archive-item-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
}
.archive-item-more span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 340px;
  max-width: 100%;
  min-height: 50px;
  border: 1px solid var(--pink);
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}
.archive-item-new {
  z-index: 2;
  -ms-grid-row: 1;
  grid-row: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background-color: rgba(211, 181, 163, 0.7);
  color: #fff;
  font-family: var(--font-cormorant);
  font-weight: 600;
  font-size: 1.3rem;
  letter-spacing: 0.18em;
  translate: -10px -10px;
}
.article-header {
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
  padding-inline: var(--side);
}
.article-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 20px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-margin-before: 60px;
  margin-block-start: 60px;
}
.article-title h1 {
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: center;
  word-break: keep-all;
}
.article-new {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 210px;
  height: 30px;
  background-color: var(--pink);
  color: #fff;
  font-family: var(--font-cormorant);
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  line-height: calc(18em / 15);
}
.article-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 1em;
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.article-label-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2em;
  -moz-column-gap: 2em;
  column-gap: 2em;
}
.article-label-item h2 {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  min-width: 8.8em;
  color: var(--pink);
}
.article-label-item p {
  -webkit-box-flex: 1;
  -ms-flex: auto;
  flex: auto;
}
.article-body {
  --lh: calc(28em/13);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: calc(35px - var(--lh));
  -webkit-margin-before: 40px;
  margin-block-start: 40px;
  padding-inline: var(--side);
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  line-height: var(--lh);
}
.article-body > p {
  -webkit-margin-before: var(--margin, 0);
  margin-block-start: var(--margin, 0);
  font-size: inherit;
}
.article-body > .wp-block-columns,
.article-body > figure {
  -webkit-margin-before: var(--margin, 0);
  margin-block-start: var(--margin, 0);
}
.article-body .wp-block-columns + p,
.article-body .wp-block-image + p,
.article-body figure + p,
.article-body p + .wp-block-columns {
  --margin: calc(80px + var(--lh) / 2);
}
.article-body .wp-block-columns,
.article-body figure {
  font-size: inherit;
}
.article-body .wp-block-columns + figure,
.article-body figure + .wp-block-columns,
.article-body figure + figure {
  --margin: calc(80px + var(--lh));
}
.article-body p + .wp-block-columns,
.article-body p + figure {
  --margin: calc(80px + var(--lh) / 2);
}
.article-body .wp-block-columns.is-layout-flex {
  --gap: 8px;
  display: -ms-grid;
  display: grid;
  -webkit-column-gap: var(--gap);
  -moz-column-gap: var(--gap);
  column-gap: var(--gap);
  margin-inline: -10px;
}
.article-body
  .wp-block-columns.is-layout-flex:has(.wp-block-column:nth-child(2)) {
  -ms-grid-columns: (1fr) [2];
  grid-template-columns: repeat(2, 1fr);
}
.article-body
  .wp-block-columns.is-layout-flex
  .wp-block-column:has(.wp-block-image:nth-child(2)) {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr var(--gap) 1fr;
  grid-template-rows: repeat(2, 1fr);
  row-gap: var(--gap);
}
.article-body
  .wp-block-columns.is-layout-flex
  .wp-block-column
  .wp-block-image {
  height: 100%;
}
.article-body .wp-block-columns .wp-block-column .wp-block-image img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%;
}
.article-credit {
  position: relative;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
  -webkit-padding-before: 60px;
  padding-block-start: 60px;
}
.article-credit:before {
  content: "";
  position: absolute;
  inset: 0 -10px;
  display: block;
  height: 1px;
  background-color: var(--pink);
}
.article-credit-term {
  font-family: var(--font-times-new-roman);
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.18em;
}
.article-credit-description {
  -webkit-margin-before: 20px;
  margin-block-start: 20px;
  font-size: inherit;
}
.article-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-margin-before: 80px;
  margin-block-start: 80px;
}
@media screen and (min-width: 481px) {
  .article-label {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .article-label-item {
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    width: 50%;
  }
  .article-label-item h2 {
    min-width: 6.8em;
    color: inherit;
  }
}
@media not screen and (min-width: 768px) {
  .hide-mb {
    display: none;
  }
  .ui-curve svg.is-tb {
    display: none;
  }
  .ui-call-number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 340px;
    max-width: 100%;
    min-height: var(--height);
    margin-inline: auto;
    border: 1px solid var(--pink);
  }
  .site-lang span {
    display: none;
  }
  .site-nav {
    display: none;
  }
  main {
    -webkit-padding-before: calc(var(--header-height) + 30px);
    padding-block-start: calc(var(--header-height) + 30px);
  }
  .site-footer-contact-request {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .site-footer-contact-call {
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
    -webkit-padding-before: 30px;
    padding-block-start: 30px;
    border-top: 1px solid var(--pink);
  }
  .site-menu-call .ui-call-number {
    background-color: #fff;
  }
  .home-news-item time {
    -ms-grid-column: 1;
    grid-column: 1;
    translate: 0 0.1em;
  }
  .home-news-item-label {
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-column: 2 / span 2;
  }
  .home-news-item-title {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / span 2;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .home-news-item-arrow {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .home-news-item-arrow .ui-more-arrow {
    translate: 0 6px;
  }
  .home-concept-layout {
    height: 1170px;
  }
  .home-concept-back {
    overflow: hidden;
  }
  .home-concept-back img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 75% 100%;
    object-position: 75% 100%;
    width: 100%;
    height: 100%;
  }
  .home-concept-title .ui-title--m {
    --ls: 0.18em;
  }
  .home-chapel-leading p {
    margin-inline: -0.25em;
  }
  .home-segment-more .ui-button {
    --width: 340px;
  }
  .home-access-more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .page-key svg.is-tb {
    display: none;
  }
  .concept-key-layout {
    height: 1170px;
  }
  .concept-key-back {
    overflow: hidden;
  }
  .concept-key-back img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 75% 100%;
    object-position: 75% 100%;
    width: 100%;
    height: 100%;
  }
  .concept-title .ui-title--m {
    --ls: 0.18em;
  }
  .concept-history-introduction-image {
    margin-inline: calc(var(--side) * -1);
  }
  .concept-history-introduction-leading {
    display: -ms-grid;
    display: grid;
    row-gap: 20px;
  }
  .concept-history-world-figure {
    margin-inline: calc(var(--side) * -1);
  }
  .concept-episode-leading {
    display: -ms-grid;
    display: grid;
    row-gap: 20px;
  }
  .faq-section-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .faq-block-summary {
    -webkit-margin-end: calc(var(--side) * -1);
    margin-inline-end: calc(var(--side) * -1);
    -webkit-padding-end: var(--side);
    padding-inline-end: var(--side);
  }
  .guest-section-title-en {
    --ls: 0.18em;
  }
  .guest-section-title-ja {
    --fz: 1.4rem;
  }
  .guest-access-heading {
    -webkit-margin-end: calc(var(--side) * -1);
    margin-inline-end: calc(var(--side) * -1);
    -webkit-padding-end: var(--side);
    padding-inline-end: var(--side);
  }
  .guest-access-map iframe {
    aspect-ratio: 1;
  }
  .guest-facility-title {
    text-align: center;
  }
  .guest-facility-more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .guest-facility-slider .swiper {
    padding-inline: max(30px/390 * 320, 30/390 * 100vw);
  }
  .archive-search-item:first-child {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / span 2;
  }
  .archive-search-item:nth-child(odd) .archive-search-item-branch {
    left: 0;
  }
  .archive-search-item:nth-child(odd) .archive-search-item-branch {
    right: 0;
  }
  .archive-item-new {
    position: absolute;
    top: 0;
    left: 0;
  }
  .article-featured {
    margin-inline: calc(var(--side) * -1);
  }
}
@media screen and (min-width: 768px) {
  .hide-tb {
    display: none;
  }
  .ui-container {
    width: 1366px;
    max-width: 100%;
    margin-inline: auto;
  }
  .ui-content.ui-content--l {
    padding-inline: 130px;
  }
  .ui-curve {
    -webkit-mask-image: linear-gradient(
      to left,
      rgba(0, 0, 0, 0),
      rgb(0, 0, 0) 400px,
      rgb(0, 0, 0) calc(100% - 400px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to left,
      rgba(0, 0, 0, 0),
      rgb(0, 0, 0) 400px,
      rgb(0, 0, 0) calc(100% - 400px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: -100px 0;
    mask-position: -100px 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 1566px 100%;
    mask-size: 1566px 100%;
  }
  .ui-curve svg.is-mb {
    display: none;
  }
  .ui-title--s {
    --fz: 1.5rem;
  }
  .ui-title--m {
    --fz: 1.8rem;
  }
  .ui-title--l {
    --fz: 2rem;
  }
  .ui-heading--m {
    --fz: 2rem;
  }
  .ui-heading--l {
    --fz: 2.4rem;
  }
  .ui-leading {
    --lh: calc(30em/13);
  }
  .ui-call {
    row-gap: var(--gap-tb);
  }
  .ui-call-title {
    text-align: unset;
  }
  .ui-call-number {
    margin-block: calc((1 - var(--base-line-height)) * 0.5em);
  }
  .ui-call-note {
    -webkit-box-pack: unset;
    -ms-flex-pack: unset;
    justify-content: unset;
  }
  .site-header {
    position: -webkit-sticky;
    position: sticky;
  }
  .site-header-layout {
    -ms-grid-columns: auto 20px auto 20px 1fr;
    grid-template-columns: auto auto 1fr;
    -ms-grid-rows: 100px 60px;
    grid-template-rows: 100px 60px;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    padding-inline: 40px;
  }
  .site-header-layout > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .site-header-layout > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .site-header-layout > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .site-header-layout > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .site-header-layout > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
  .site-header-layout > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 5;
  }
  .site-header-hum {
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .site-header-logo {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / span 3;
    -ms-grid-row: 1;
    grid-row: 1;
    width: 160px;
  }
  .site-header-social {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .site-header-social a {
    translate: -5px 0;
  }
  .site-header-request {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / span 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-column-align: end;
    justify-self: end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
    column-gap: 5px;
  }
  .site-lang {
    pointer-events: none;
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    left: 0;
    right: auto;
    -webkit-margin-before: calc(var(--header-height) * -1);
    margin-block-start: calc(var(--header-height) * -1);
    -webkit-padding-start: 40px;
    padding-inline-start: 40px;
  }
  @supports (mix-blend-mode: difference) {
    .site-lang {
      mix-blend-mode: difference;
    }
  }
  .site-lang > div {
    translate: -5px 0;
  }
  @supports (mix-blend-mode: difference) {
    .site-lang i svg {
      stroke: #fff;
    }
  }
  @supports (mix-blend-mode: difference) {
    .site-lang span {
      color: #fff;
    }
  }
  .site-footer-contact {
    max-width: 1366px;
    margin-inline: auto;
    padding-block: 120px 80px;
    padding-inline: 80px;
  }
  .site-footer-contact-title {
    text-align: unset;
  }
  .site-footer-contact-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
  }
  .site-footer-contact-request {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
  }
  .site-footer-contact-request a {
    width: 340px;
    max-width: 100%;
  }
  .site-footer-contact-call {
    -webkit-margin-start: 80px;
    margin-inline-start: 80px;
    -webkit-padding-start: 60px;
    padding-inline-start: 60px;
    border-left: 1px solid var(--pink);
  }
  .site-footer-nav {
    display: block;
    padding-inline: 80px;
  }
  .site-footer-breadcrumbs {
    padding-inline: 40px;
  }
  .site-menu {
    width: 610px;
  }
  .site-menu::-webkit-scrollbar {
    width: calc(var(--thumb-radius) * 2);
    border-radius: var(--thumb-radius);
  }
  .site-menu::-webkit-scrollbar-track {
    background: var(--track-color);
    border-radius: var(--thumb-radius);
  }
  .site-menu::-webkit-scrollbar-thumb {
    background: var(--thumb-color);
    border: 2px solid var(--track-color);
    border-radius: var(--thumb-radius);
  }
  @supports (scrollbar-color: pink gray) {
    .site-menu {
      scrollbar-color: var(--thumb-color) var(--track-color);
    }
  }
  .site-menu-layout {
    row-gap: 30px;
    -webkit-padding-after: 60px;
    padding-block-end: 60px;
    padding-inline: 80px;
  }
  .site-menu-header {
    --height: 100px;
  }
  .site-menu-cross {
    left: 80px;
  }
  .site-menu-nav {
    --gap: 12px;
  }
  .site-menu-return a {
    width: 100%;
  }
  .site-menu-call .ui-call-title {
    -webkit-margin-before: 10px;
    margin-block-start: 10px;
  }
  .home-news {
    -webkit-margin-before: 60px;
    margin-block-start: 60px;
  }
  .home-news-layout {
    -ms-grid-columns: auto 78px 1px 78px 1fr;
    grid-template-columns: auto 1px 1fr;
    -webkit-column-gap: 78px;
    -moz-column-gap: 78px;
    column-gap: 78px;
    row-gap: 0;
  }
  .home-news-layout > hr {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / span 3;
    width: 1px;
    height: 100%;
  }
  .home-news-title {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .home-news-list {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / span 3;
    -ms-grid-columns: auto auto 1fr auto;
    grid-template-columns: auto auto 1fr auto;
    -webkit-margin-before: 0;
    margin-block-start: 0;
  }
  .home-news-item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: subgrid;
    grid-template-columns: subgrid;
    -ms-grid-column-span: 4;
    grid-column: span 4;
  }
  .home-news-item > a {
    -ms-grid-columns: inherit;
    grid-template-columns: inherit;
    -ms-grid-column-span: 4;
    grid-column: span 4;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
    row-gap: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .home-news-item-arrow {
    -webkit-margin-start: 15px;
    margin-inline-start: 15px;
  }
  .home-news-more {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .home-concept .ui-curve {
    -webkit-margin-after: 0;
    margin-block-end: 0;
  }
  .home-concept-back {
    width: calc(100% + 100px);
    -webkit-mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 60px,
      rgb(0, 0, 0) 120px,
      rgb(0, 0, 0) calc(100% - 120px),
      rgba(0, 0, 0, 0.7) calc(100% - 60px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 60px,
      rgb(0, 0, 0) 120px,
      rgb(0, 0, 0) calc(100% - 120px),
      rgba(0, 0, 0, 0.7) calc(100% - 60px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: top center;
    mask-position: top center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    translate: -50px 0;
  }
  .home-concept-content {
    -webkit-padding-before: 180px;
    padding-block-start: 180px;
  }
  .home-concept-symbol {
    -webkit-margin-before: 150px;
    margin-block-start: 150px;
  }
  .home-concept-symbol img {
    width: 480px;
  }
  .home-concept-leading {
    --lh: calc(32em/13);
    row-gap: 10px;
    -webkit-margin-before: 70px;
    margin-block-start: 70px;
  }
  .home-concept-more {
    -webkit-margin-before: 40px;
    margin-block-start: 40px;
  }
  .home-chapel {
    -webkit-margin-before: 45px;
    margin-block-start: 45px;
  }
  .home-chapel-title {
    -webkit-margin-before: -50px;
    margin-block-start: -50px;
  }
  .home-chapel-slider {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .home-chapel-leading {
    -webkit-margin-before: 25px;
    margin-block-start: 25px;
  }
  .home-chapel-more {
    -webkit-margin-before: 35px;
    margin-block-start: 35px;
  }
  .home-chapel-small-wedding {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .home-banquet {
    -webkit-margin-before: -30px;
    margin-block-start: -30px;
  }
  .home-banquet-leading {
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
  }
  .home-plan {
    -webkit-margin-before: 140px;
    margin-block-start: 140px;
  }
  .home-segment-description {
    -ms-flex-item-align: end;
    -ms-grid-row-align: end;
    align-self: end;
  }
  .home-segment-description .ui-heading {
    -webkit-margin-before: 25px;
    margin-block-start: 25px;
  }
  .home-segment-description .ui-leading {
    -webkit-margin-before: 20px;
    margin-block-start: 20px;
  }
  .home-segment-list {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .home-segment-list figure figcaption {
    -webkit-margin-before: 10px;
    margin-block-start: 10px;
    text-align: left;
  }
  .home-cuisine {
    -webkit-margin-before: 120px;
    margin-block-start: 120px;
  }
  .home-cuisine-layout {
    --side: calc(130 / 1366 * 100%);
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: var(--side) 1fr calc(735 / 1366 * 100%);
    grid-template-columns: var(--side) 1fr calc(735 / 1366 * 100%);
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
  }
  .home-cuisine-layout > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .home-cuisine-layout > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .home-cuisine-layout > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .home-cuisine-figure {
    z-index: 1;
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-columns: 1fr calc(290 / 735 * 100%);
    grid-template-columns: 1fr calc(290 / 735 * 100%);
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
  .home-cuisine-back {
    z-index: 0;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1/4;
    -ms-grid-row: 1;
    grid-row: 1;
    margin-block: 0;
    -webkit-padding-before: 200px;
    padding-block-start: 200px;
  }
  .home-cuisine .home-segment-description {
    z-index: 1;
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    margin-inline: 0;
  }
  .home-dress {
    -webkit-margin-before: 120px;
    margin-block-start: 120px;
  }
  .home-dress-layout {
    --side: calc(130 / 1366 * 100%);
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: var(--side) calc(440 / 1366 * 100%) 1fr var(--side);
    grid-template-columns: var(--side) calc(440 / 1366 * 100%) 1fr var(--side);
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
  }
  .home-dress-layout > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .home-dress-layout > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .home-dress-layout > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .home-dress-layout > :nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 4;
  }
  .home-dress-figure {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    margin-inline: 0;
  }
  .home-dress-back {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    grid-column: 1/5;
    -ms-grid-row: 1;
    grid-row: 1;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    translate: 0 -20px;
  }
  .home-dress .home-segment-description {
    z-index: 1;
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-grid-row-align: end;
    align-self: end;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    margin-inline: 106px 0;
  }
  .home-dress .home-segment-description .ui-heading {
    -webkit-margin-before: 20px;
    margin-block-start: 20px;
  }
  .home-dress .home-segment-description .ui-leading {
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
  }
  .home-dress .home-segment-description .home-segment-more {
    -webkit-margin-before: 35px;
    margin-block-start: 35px;
  }
  .home-party-report {
    -webkit-margin-before: 180px;
    margin-block-start: 180px;
  }
  .home-party-report-hash {
    font-size: 1.2rem;
  }
  .home-party-report-slider {
    -webkit-margin-before: 80px;
    margin-block-start: 80px;
    padding-inline: calc(132 / 1206 * 100%);
  }
  .home-party-report-more {
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .home-service {
    -webkit-margin-before: 140px;
    margin-block-start: 140px;
  }
  .home-service-lists {
    -ms-grid-columns: 1fr 20px 1fr 20px 1fr;
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    row-gap: 20px;
  }
  .home-service-item-content .lang-en {
    font-size: 1.8rem;
    line-height: calc(26em / 18);
  }
  .home-access {
    -webkit-margin-before: 20px;
    margin-block-start: 20px;
  }
  .home-access-content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 670px 90px 1fr;
    grid-template-columns: 670px 1fr;
    -webkit-column-gap: 90px;
    -moz-column-gap: 90px;
    column-gap: 90px;
    -webkit-margin-before: 60px;
    margin-block-start: 60px;
    background-position: 0 100%;
    background-size: 100% 244px;
  }
  .home-access-map iframe {
    aspect-ratio: 670/430;
  }
  .home-access-description .ui-leading {
    row-gap: 25px;
  }
  .page-key svg.is-mb {
    display: none;
  }
  .page-key-line {
    margin-inline: -100px;
    padding-inline: 100px;
    -webkit-mask-image: linear-gradient(
      to left,
      rgba(0, 0, 0, 0),
      rgb(0, 0, 0) 400px,
      rgb(0, 0, 0) calc(100% - 400px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to left,
      rgba(0, 0, 0, 0),
      rgb(0, 0, 0) 400px,
      rgb(0, 0, 0) calc(100% - 400px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 1566px 100%;
    mask-size: 1566px 100%;
  }
  .page-key-title {
    margin-inline: var(--side);
    font-size: 2rem;
    letter-spacing: 0.14em;
  }
  .chapel-slider {
    width: calc(100% + 320px);
    padding-inline: 160px;
    -webkit-mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 100px,
      rgb(0, 0, 0) 160px,
      rgb(0, 0, 0) calc(100% - 160px),
      rgba(0, 0, 0, 0.7) calc(100% - 100px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 100px,
      rgb(0, 0, 0) 160px,
      rgb(0, 0, 0) calc(100% - 160px),
      rgba(0, 0, 0, 0.7) calc(100% - 100px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: center top;
    mask-position: center top;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    translate: -160px 0;
  }
  .chapel-small-wedding-layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .chapel-small-wedding-figure {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .chapel-small-wedding-description {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-padding-start: 70px;
    padding-inline-start: 70px;
  }
  .chapel-small-wedding-heading-en {
    font-size: 1.6rem;
  }
  .chapel-small-wedding-leading {
    --fz: 1.2rem;
    row-gap: 10px;
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .chapel-small-wedding-more {
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .banquet-rooms {
    -ms-grid-columns: 1fr 8px 1fr 8px 1fr;
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    row-gap: 70px;
  }
  .banquet-room-tumbnail {
    aspect-ratio: 398/260;
  }
  .banquet-room-name {
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
    font-size: 1.5rem;
  }
  .banquet-room-description {
    -webkit-margin-before: 2px;
    margin-block-start: 2px;
  }
  .concept-key-back {
    width: calc(100% + 100px);
    -webkit-mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 60px,
      rgb(0, 0, 0) 120px,
      rgb(0, 0, 0) calc(100% - 120px),
      rgba(0, 0, 0, 0.7) calc(100% - 60px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 60px,
      rgb(0, 0, 0) 120px,
      rgb(0, 0, 0) calc(100% - 120px),
      rgba(0, 0, 0, 0.7) calc(100% - 60px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: top center;
    mask-position: top center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    translate: -50px 0;
  }
  .concept-key-content {
    -webkit-padding-before: 20px;
    padding-block-start: 20px;
  }
  .concept-symbol {
    -webkit-margin-before: 150px;
    margin-block-start: 150px;
  }
  .concept-symbol img {
    width: 480px;
  }
  .concept-key-leading {
    --lh: calc(32em/13);
    row-gap: 10px;
    -webkit-margin-before: 70px;
    margin-block-start: 70px;
  }
  .concept-history-back-gray {
    padding-block: 110px 175px;
    background-size: 100% 175px;
  }
  .concept-history-introduction {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 90px 732px;
    grid-template-columns: 1fr 732px;
    -webkit-column-gap: 90px;
    -moz-column-gap: 90px;
    column-gap: 90px;
    -webkit-margin-before: 90px;
    margin-block-start: 90px;
    -webkit-margin-end: calc(var(--side) * -1);
    margin-inline-end: calc(var(--side) * -1);
  }
  .concept-history-introduction-image {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .concept-history-introduction-description {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .concept-history-world {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 635px 1fr;
    grid-template-columns: 635px 1fr;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
    -webkit-margin-start: calc(var(--side) * -1);
    margin-inline-start: calc(var(--side) * -1);
  }
  .concept-history-world-figure img {
    min-width: 740px;
    translate: -106px 0;
  }
  .concept-history-world-leading {
    -webkit-margin-before: 0;
    margin-block-start: 0;
  }
  .concept-history-slider {
    position: relative;
    width: calc(100% + 320px);
    -webkit-margin-before: -30px;
    margin-block-start: -30px;
    padding-inline: 160px;
    -webkit-mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 100px,
      rgb(0, 0, 0) 160px,
      rgb(0, 0, 0) calc(100% - 160px),
      rgba(0, 0, 0, 0.7) calc(100% - 100px),
      rgba(0, 0, 0, 0)
    );
    mask-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0.7) 100px,
      rgb(0, 0, 0) 160px,
      rgb(0, 0, 0) calc(100% - 160px),
      rgba(0, 0, 0, 0.7) calc(100% - 100px),
      rgba(0, 0, 0, 0)
    );
    -webkit-mask-position: center top;
    mask-position: center top;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    translate: -160px 0;
  }
  .concept-history-slider .swiper {
    padding-inline: 100px;
  }
  .concept-history-slider-pagination {
    -webkit-margin-before: 25px;
    margin-block-start: 25px;
  }
  .concept-episode-layout {
    -ms-grid-columns: 520px 1fr 540px;
    grid-template-columns: 520px 1fr 540px;
  }
  .concept-episode-description {
    -ms-grid-column: 3;
    grid-column: 3;
    display: -ms-grid;
    display: grid;
  }
  .concept-episode-description .ui-heading {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .concept-episode-description img {
    margin-block: 0 60px;
  }
  .concept-episode-leading {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .concept-episode-leading p {
    display: inline;
  }
  .faq-nav {
    -ms-grid-columns: 1fr 8px 1fr 8px 1fr 8px 1fr 8px 1fr;
    grid-template-columns: repeat(5, 1fr);
    -webkit-column-gap: 8px;
    -moz-column-gap: 8px;
    column-gap: 8px;
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .faq-nav a {
    background-position: right 18px top 50%;
  }
  .faq-list {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .faq-section {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 350px 6px 1fr;
    grid-template-columns: 350px 1fr;
    -webkit-column-gap: 6px;
    -moz-column-gap: 6px;
    column-gap: 6px;
  }
  .faq-section .ui-curve {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / span 2;
    -webkit-margin-after: 60px;
    margin-block-end: 60px;
  }
  .faq-section-body {
    -webkit-margin-before: 0;
    margin-block-start: 0;
  }
  .faq-block:first-child {
    -webkit-margin-before: calc(var(--pad-y) * -1);
    margin-block-start: calc(var(--pad-y) * -1);
  }
  .faq-block-summary {
    --fz: 1.4rem;
  }
  .faq-block-summary:before {
    width: 50px;
    translate: 0 0.4em;
  }
  .faq-block-summary:after {
    -webkit-margin-end: 25px;
    margin-inline-end: 25px;
  }
  .faq-block-content > div {
    row-gap: 20px;
    -webkit-padding-after: 30px;
    padding-block-end: 30px;
    padding-inline: 50px;
  }
  .guest-subtitle {
    --fz: 1.4rem;
    --ls: 0.14em;
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
  }
  .guest-cover {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .guest-header-leading {
    -webkit-margin-before: 120px;
    margin-block-start: 120px;
    font-size: 1.5rem;
  }
  .guest-section {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 900px;
    grid-template-columns: 1fr 900px;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .guest-section-title-en {
    --fz: 1.6rem;
    text-align: left;
  }
  .guest-section-title-ja {
    -webkit-margin-before: 1em;
    margin-block-start: 1em;
    text-align: left;
  }
  .guest-nav {
    -ms-grid-columns: 1fr 7px 1fr 7px 1fr 7px 1fr 7px 1fr 7px 1fr;
    grid-template-columns: repeat(6, 1fr);
    -webkit-column-gap: 7px;
    -moz-column-gap: 7px;
    column-gap: 7px;
  }
  .guest-nav a {
    background-position: right 18px top 50%;
  }
  .guest-access-description {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr) [6];
    grid-template-columns: repeat(6, 1fr);
    -webkit-margin-before: 0;
    margin-block-start: 0;
  }
  .guest-access-image {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / span 2;
    -ms-grid-row: 1;
    grid-row: 1;
    height: 400px;
  }
  .guest-access-image img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  .guest-access-address {
    -ms-grid-column: 1;
    -ms-grid-column-span: 6;
    grid-column: 1 / span 6;
  }
  .guest-access-map {
    -ms-grid-column: 3;
    -ms-grid-column-span: 4;
    grid-column: 3 / span 4;
    -ms-grid-row: 1;
    grid-row: 1;
    height: 400px;
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-padding-start: 8px;
    padding-inline-start: 8px;
  }
  .guest-access-map iframe {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  .guest-access-transportation.is-train {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / span 3;
    -ms-grid-row: 3;
    grid-row: 3;
    -webkit-margin-before: 50px;
    margin-block-start: 50px;
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
  }
  .guest-access-transportation.is-airplane {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / span 3;
    -ms-grid-row: 4;
    grid-row: 4;
    -webkit-padding-end: 20px;
    padding-inline-end: 20px;
  }
  .guest-access-transportation.is-car {
    -ms-grid-column: 4;
    -ms-grid-column-span: 3;
    grid-column: 4 / span 3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    grid-row: 3 / span 2;
    -webkit-margin-before: 50px;
    margin-block-start: 50px;
    -webkit-padding-start: 20px;
    padding-inline-start: 20px;
  }
  .guest-facility-leading {
    -webkit-margin-before: 35px;
    margin-block-start: 35px;
  }
  .bridal-fair {
    padding-block: 35px 120px;
  }
  body:not(.home) .bridal-fair {
    -webkit-margin-before: 160px;
    margin-block-start: 160px;
  }
  .bridal-fair-title {
    -webkit-margin-before: -120px;
    margin-block-start: -120px;
  }
  .bridal-fair-body {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .bridal-fair-more {
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .bridal-plan {
    padding-block: 45px 120px;
  }
  .bridal-plan-title {
    -webkit-margin-before: -140px;
    margin-block-start: -140px;
  }
  .bridal-plan-list {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .wedding-contents {
    padding-block: 80px 140px;
  }
  .wedding-contents-title {
    -webkit-margin-before: 20px;
    margin-block-start: 20px;
  }
  .wedding-contents-list {
    -ms-grid-columns: 1fr 25px 1fr 25px 1fr 25px 1fr 25px 1fr 25px 1fr;
    grid-template-columns: repeat(6, 1fr);
    -webkit-column-gap: 25px;
    -moz-column-gap: 25px;
    column-gap: 25px;
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .wedding-contents-item {
    font-size: 1.3rem;
  }
  .wedding-contents-more {
    -webkit-margin-before: 70px;
    margin-block-start: 70px;
  }
  .archive-search-list {
    -ms-grid-columns: (1fr) [5];
    grid-template-columns: repeat(5, 1fr);
    -webkit-margin-before: 110px;
    margin-block-start: 110px;
  }
  .archive-list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 33px 1fr 33px 1fr;
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 33px;
    -moz-column-gap: 33px;
    column-gap: 33px;
    -ms-grid-rows: (auto) [3] minmax(0, 1fr) auto;
    grid-template-rows: repeat(3, auto) minmax(0, 1fr) auto;
    -webkit-margin-before: 10px;
    margin-block-start: 10px;
  }
  .archive-list > :first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .archive-list > :nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .archive-list > :nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .archive-list > :nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .archive-list > :nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }
  .archive-list > :nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 5;
  }
  .archive-list > :nth-child(7) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .archive-list > :nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .archive-list > :nth-child(9) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  .archive-list > :nth-child(10) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .archive-list > :nth-child(11) {
    -ms-grid-row: 4;
    -ms-grid-column: 3;
  }
  .archive-list > :nth-child(12) {
    -ms-grid-row: 4;
    -ms-grid-column: 5;
  }
  .archive-list > :nth-child(13) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .archive-list > :nth-child(14) {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
  .archive-list > :nth-child(15) {
    -ms-grid-row: 5;
    -ms-grid-column: 5;
  }
  .archive-list-loader {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / span 3;
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .archive-list-loader img {
    width: 48px;
    height: 48px;
  }
  .archive-item {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: subgrid;
    grid-template-rows: subgrid;
    -ms-grid-row-span: 5;
    grid-row: span 5;
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
  .archive-item > a {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: subgrid;
    grid-template-rows: subgrid;
    -ms-grid-row-span: 5;
    grid-row: span 5;
  }
  .archive-item > a > * {
    -ms-grid-column: 1;
    grid-column: 1;
  }
  .archive-item-title {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
  }
  .archive-item-label {
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  .archive-item-more {
    grid-row: -1;
    -webkit-margin-before: 30px;
    margin-block-start: 30px;
  }
  .archive-item-more span {
    width: 100%;
  }
  .article-header {
    width: 1000px;
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
    margin-inline: auto;
    padding-inline: 0;
  }
  .article-title {
    row-gap: 40px;
  }
  .article-title h1 {
    color: var(--gray-d);
    font-size: 2rem;
    letter-spacing: 0.16em;
  }
  .article-new {
    width: 340px;
    height: 40px;
  }
  .article-label {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-margin-before: 80px;
    margin-block-start: 80px;
    margin-inline: auto;
  }
  .article-label-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    width: 224px;
    text-align: center;
  }
  .article-label-item p {
    -webkit-margin-before: 15px;
    margin-block-start: 15px;
    -webkit-padding-before: 15px;
    padding-block-start: 15px;
    border-top: 1px solid var(--gray);
  }
  .article-body {
    row-gap: 20px;
    width: 898px;
    -webkit-margin-before: 80px;
    margin-block-start: 80px;
    margin-inline: auto;
  }
  .article-body > p {
    width: 600px;
    margin-inline: auto;
  }
  .article-body .wp-block-columns + p,
  .article-body .wp-block-image + p,
  .article-body figure + p,
  .article-body p + .wp-block-columns {
    --marign: calc(100px + var(--lh) / 2);
  }
  .article-body .wp-block-columns + figure,
  .article-body figure + .wp-block-columns,
  .article-body figure + figure {
    --margin: calc(100px + var(--lh));
  }
  .article-body p + .wp-block-columns,
  .article-body p + figure {
    -webkit-margin-before: calc(100px + var(--lh) / 2);
    margin-block-start: calc(100px + var(--lh) / 2);
  }
  .article-body .wp-block-columns.is-layout-flex {
    --gap: 20px;
    margin-inline: 0;
  }
  .article-credit:before {
    left: 0;
    right: 0;
  }
  .article-credit-term {
    font-size: 2rem;
    letter-spacing: 0.14em;
    text-align: center;
  }
  .article-credit-description {
    text-align: center;
  }
  .article-footer {
    -webkit-margin-before: 100px;
    margin-block-start: 100px;
  }
}
@media (any-hover: hover) {
  .ui-more:after {
    -webkit-transform-origin: 0% 50%;
    -ms-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition:
      transform 300ms,
      -webkit-transform 300ms;
  }
  .ui-more:hover:after {
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
  }
  .ui-more-arrow {
    -webkit-transition: translate 300ms;
    transition: translate 300ms;
  }
  .ui-more:hover .ui-more-arrow {
    translate: 50% 0;
  }
  .ui-button {
    -webkit-transition: opacity 400ms;
    transition: opacity 400ms;
  }
  .ui-button:hover {
    opacity: var(--hover);
  }
  .ui-request a {
    -webkit-transition: opacity 400ms;
    transition: opacity 400ms;
  }
  .ui-request a:hover {
    opacity: 0.5;
  }
  .ui-call-number {
    pointer-events: none;
  }
  .site-header-hum svg {
    -webkit-transition: stroke 400ms;
    transition: stroke 400ms;
  }
  .site-header-hum button:hover svg {
    stroke: var(--pink-d);
  }
  .site-header-logo a {
    -webkit-transition: opacity 350ms;
    transition: opacity 350ms;
  }
  .site-header-logo a:hover {
    opacity: 0.5;
  }
  .site-header-social a {
    -webkit-transition: background-image 350ms;
    transition: background-image 350ms;
  }
  .site-header-social a:hover {
    background-image: url(../../img/common/i-instagram_hover.svg);
  }
  .site-nav .has-list .nested-list:hover,
  .site-nav .has-list button:hover + .nested-list {
    pointer-events: auto;
    opacity: 1;
    max-height: 300px;
    -webkit-transition-delay: 0ms, 0ms;
    transition-delay: 0ms, 0ms;
  }
  .site-nav li a,
  .site-nav li button {
    -webkit-transition: color 350ms;
    transition: color 350ms;
  }
  .site-nav li a:hover,
  .site-nav li button:hover {
    color: var(--pink);
  }
  @supports (mix-blend-mode: difference) {
    .site-nav li a:-moz-any-link {
      color: #fff;
    }
    .site-nav li a:any-link,
    .site-nav li button {
      color: #fff;
    }
    .site-nav li a:-moz-any-link:hover {
      color: darkslategray;
    }
    .site-nav li a:any-link:hover,
    .site-nav li button:hover {
      color: darkslategray;
    }
  }
  .site-footer-nav-menu a {
    -webkit-transition: color 350ms;
    transition: color 350ms;
  }
  .site-footer-nav-menu a:hover {
    color: var(--pink);
  }
  .site-footer-breadcrumbs a {
    -webkit-transition: color 350ms;
    transition: color 350ms;
  }
  .site-footer-breadcrumbs a:hover {
    color: var(--pink);
  }
  .site-menu-cross svg {
    -webkit-transition: stroke 400ms;
    transition: stroke 400ms;
  }
  .site-menu-cross button:hover svg {
    stroke: var(--pink-d);
  }
  .site-menu-logo a {
    -webkit-transition: opacity 350ms;
    transition: opacity 350ms;
  }
  .site-menu-logo a:hover {
    opacity: 0.5;
  }
  .site-menu-social a {
    -webkit-transition: background-image 350ms;
    transition: background-image 350ms;
  }
  .site-menu-social a:hover {
    background-image: url(../../img/common/i-instagram_hover.svg);
  }
  .site-menu-nav a {
    -webkit-transition: color 350ms;
    transition: color 350ms;
  }
  .site-menu-nav a:hover {
    color: var(--pink);
  }
  .site-menu-nav .has-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .site-menu-nav .has-list:hover > button span:before {
    background-position:
      0 calc(50% + 1px),
      50% calc(100% - 2px);
    background-size:
      100% 1px,
      1px 0%;
  }
  .site-menu-nav .nested-list {
    pointer-events: none;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
    -webkit-padding-end: 1em;
    padding-inline-end: 1em;
  }
  .site-menu-nav .has-list > button:hover + .nested-list,
  .site-menu-nav .nested-list:hover {
    pointer-events: auto;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
  }
  .site-menu-return a {
    border: 1px solid var(--gray);
    -webkit-transition: background-color 300ms;
    transition: background-color 300ms;
  }
  .site-menu-return a:hover {
    background-color: #fff;
  }
  .home-news-item > a {
    position: relative;
    z-index: 0;
  }
  .home-news-item > a:after {
    content: "";
    opacity: 0;
    position: absolute;
    z-index: -1;
    inset: -8px -5px;
    background-color: var(--pink);
    scale: 0.95;
    -webkit-transition:
      opacity 300ms,
      scale 300ms;
    transition:
      opacity 300ms,
      scale 300ms;
  }
  .home-news-item > a:hover:after {
    opacity: 0.2;
    scale: 1;
  }
  .home-news-item > a > svg {
    -webkit-transition: translate 300ms;
    transition: translate 300ms;
  }
  .home-news-item > a:hover > svg {
    translate: 50% 0;
  }
  .home-news-item-arrow .ui-more-arrow {
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition:
      transform 300ms,
      -webkit-transform 300ms;
  }
  .home-news-item > a:hover .home-news-item-arrow .ui-more-arrow {
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }
  .home-concept-more .ui-button {
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: background-color 400ms;
    transition: background-color 400ms;
  }
  .home-concept-more .ui-button:hover {
    opacity: 1;
    background-color: white;
  }
  .home-service-item-back {
    overflow: hidden;
  }
  .home-service-item-back:hover {
    opacity: 1;
  }
  .home-service-item-back img {
    -webkit-animation: homeServiceHoverLeave 400ms;
    animation: homeServiceHoverLeave 400ms;
  }
  .home-service-item:hover .home-service-item-back img {
    -webkit-animation: homeServiceHoverEnter forwards 400ms;
    animation: homeServiceHoverEnter forwards 400ms;
  }
  .home-access-description .ui-leading .has-map-link a {
    -webkit-transition: background-size 300ms;
    transition: background-size 300ms;
  }
  .home-access-description .ui-leading .has-map-link a:hover {
    opacity: 1;
    background-position: 100% 100%;
    background-size: 0% 1px;
  }
  .banquet-rooms > a:hover {
    opacity: 0.87;
  }
  .banquet-room-tumbnail {
    overflow: hidden;
    background-color: var(--pink);
  }
  .banquet-room-tumbnail img {
    -webkit-transition:
      opacity 300ms,
      scale 300ms;
    transition:
      opacity 300ms,
      scale 300ms;
  }
  .banquet-rooms > a:hover .banquet-room-tumbnail img {
    opacity: 0.75;
    scale: 1.025;
  }
  .wedding-contents-item figure {
    overflow: hidden;
    background-image: -webkit-gradient(
      linear,
      left top,
      right bottom,
      from(var(--pink)),
      to(transparent)
    );
    background-image: linear-gradient(
      to bottom right,
      var(--pink),
      transparent
    );
    background-repeat: no-repeat;
  }
  .wedding-contents-item img {
    -webkit-transition: opacity, scale;
    transition: opacity, scale;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
  }
  .wedding-contents-item img:hover {
    opacity: 0.68;
    scale: 1.03;
  }
  .wedding-contents-item p {
    -webkit-transition: color 300ms;
    transition: color 300ms;
  }
  .wedding-contents-item > a:hover p {
    color: var(--pink-d);
  }
}
@media not (any-hover: hover) {
  .site-menu-nav .has-list[data-open] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .site-menu-nav .has-list[data-open="true"] > button span:before {
    background-position:
      0 calc(50% + 1px),
      50% calc(100% - 2px);
    background-size:
      100% 1px,
      1px 0%;
  }
  .site-menu-nav .has-list[data-open] .nested-list {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 0fr;
    grid-template-rows: 0fr;
    -webkit-padding-end: 1em;
    padding-inline-end: 1em;
  }
  .site-menu-nav .has-list[data-open="true"] .nested-list {
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
  }
}
