@charset "UTF-8";
/*======================================
    Font size
======================================*/
/*======================================
    media
======================================*/
/*======================================
    color
======================================*/
/*======================================
    font
======================================*/
/*======================================
    keyframes
======================================*/
@keyframes fadePoyoyon {
  0% {
    opacity: 0;
    transform: translateY(-24px) scale(0.98);
  }
  40% {
    opacity: 1;
    transform: translateY(0) scale(0.99, 0.97);
  }
  55% {
    transform: translateY(2px) scale(1.01, 1);
  }
  75% {
    transform: translateY(-2px) scale(0.995, 1.01);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes poyoyon2 {
  0% {
    transform: scale(1, 1) translate(0, 0);
  }
  15% {
    transform: scale(0.98, 0.9) translate(0, 5px);
  }
  30% {
    transform: scale(1.02, 1) translate(0, 8px);
  }
  50% {
    transform: scale(0.98, 1.05) translate(0, -8px);
  }
  70% {
    transform: scale(1, 0.9) translate(0, 5px);
  }
  100% {
    transform: scale(1, 1) translate(0, 0);
  }
  0%, 100% {
    opacity: 1;
  }
}
@keyframes poyoyon3 {
  0%, 40% {
    transform: skew(0deg, 0deg);
  }
  5% {
    transform: skew(5deg, 5deg);
  }
  10% {
    transform: skew(-4deg, -4deg);
  }
  15% {
    transform: skew(3deg, 3deg);
  }
  20% {
    transform: skew(-2deg, -2deg);
  }
  25% {
    transform: skew(1deg, 1deg);
  }
  30% {
    transform: skew(-0.6deg, -0.6deg);
  }
  35% {
    transform: skew(0.3deg, 0.3deg);
  }
}
@keyframes yurayura {
  0%, 100% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(4deg);
  }
}
@keyframes fuwafuwa {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-1rem);
  }
}
@keyframes fuwafuwaSp {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-0.25rem);
  }
}
@keyframes scale {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
/*======================================
    animation
======================================*/
.anime {
  display: block;
}

.jumpIn {
  opacity: 0;
}
.jumpIn.trigger {
  animation: fadePoyoyon 1.2s ease-in-out forwards;
}

.yurayura.trigger {
  animation: 3s yurayura infinite;
}

.fuwafuwa.trigger {
  animation: 3s fuwafuwa infinite;
}
@media screen and (max-width: 767px) {
  .fuwafuwa.trigger {
    animation: 3s fuwafuwaSp infinite;
  }
}

.scale {
  opacity: 0;
}
.scale.trigger {
  animation-name: scale;
  animation-timing-function: ease-out;
  animation-duration: 0.3s;
  animation-fill-mode: both;
}

.fadeInUp {
  opacity: 0;
}
.fadeInUp.trigger {
  animation: fadeIn 0.3s ease forwards;
}

.fadeIn {
  opacity: 0;
  transition: opacity 0.3s ease 0.3s;
}
.fadeIn.trigger {
  opacity: 1;
}

/*======================================
    common
======================================*/
html {
  font-size: 1rem;
  font-family: "Noto Sans JP", sans-serif;
  color: #090000;
}

body {
  background-color: #f5f5ee;
  font-weight: 400;
}

.main {
  position: relative;
}

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

a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
a:hover, a:focus {
  cursor: pointer;
  opacity: 0.7;
}

button {
  cursor: pointer;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  background-color: unset;
  color: inherit;
  font-family: inherit;
}

@media (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}
@media screen and (max-width: 767px) {
  br.is_pc {
    display: none;
  }
}

br.is_sp {
  display: none;
}
@media screen and (max-width: 767px) {
  br.is_sp {
    display: block;
  }
}

.sr-only {
  display: none;
}

/*======================================
    layout
======================================*/
.container {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}

.inner {
  max-width: 87.5rem;
  margin-left: auto;
  margin-right: auto;
  width: calc(100% - 23.5rem - 5rem);
}
@media screen and (min-width: 1025px) and (max-width: 1499px) {
  .inner {
    width: calc(100% - 14.25rem);
    margin-right: 0;
    padding-right: 2.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .inner {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .inner {
    width: 92%;
  }
}

.inner_md {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
}

.inner_sm {
  max-width: 62.5rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1025px) and (max-width: 1499px) {
  .inner_sm {
    width: calc(100% - 14.25rem);
    margin-right: 0;
    padding-right: 2.5rem;
  }
}

.c-main_bg {
  background-color: #f0909e;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M0 20 L20 0 L40 20 L20 40 Z' fill='none' stroke='rgba(255,255,255,0.3)' stroke-width='1.5'/%3E%3C/svg%3E");
  background-size: 4.375rem 4.375rem;
  background-position: 0 0, 0 0;
}
@media screen and (max-width: 767px) {
  .c-main_bg {
    background-size: 2.1875rem 2.1875rem;
  }
}

.modal_bg {
  background-color: #f0909e;
  position: fixed;
  top: 0;
  inset: 0;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.modal_bg.active {
  visibility: visible;
  opacity: 0.8;
}

.c-tie {
  display: grid;
  align-items: center;
  position: absolute;
  top: 1.25rem;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 100;
}
@media screen and (max-width: 1024px) {
  .c-tie {
    top: 4.375rem;
  }
}

.c-tie_logos_wrap {
  grid-column: 1/2;
  grid-row: 1/2;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
}

.c-tie_logos {
  display: flex;
  align-items: center;
  animation: marquee 80s linear infinite;
}

.c-tie_logo {
  width: 42.8125rem;
  margin-right: 0.875rem;
}
@media screen and (max-width: 1024px) {
  .c-tie_logo {
    width: 21.375rem;
    margin-right: 0.4375rem;
  }
}

.c-tie_bg {
  grid-column: 1/2;
  grid-row: 1/2;
  height: 3.125rem;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .c-tie_bg {
    height: 1.5625rem;
  }
}

.c-main_bg_contents {
  background-color: #fff;
  border-radius: 0.625rem;
  padding: 3.125rem;
}
@media screen and (max-width: 767px) {
  .c-main_bg_contents {
    border-radius: 0.3125rem;
    padding: 1.5rem;
  }
}

.c-bg_radius_white {
  border-radius: 0.625rem;
  padding: 3.125rem 2.5rem;
  background-color: #fff;
}

/*======================================
    title
======================================*/
.c-section_title01 {
  text-align: center;
}
.c-section_title01 img {
  height: 1em;
  object-fit: contain;
}

.c-section_title01_en {
  color: #f0909e;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 1;
  font-feature-settings: "palt";
  margin-bottom: 0.625rem;
}
@media screen and (max-width: 767px) {
  .c-section_title01_en {
    font-size: 1.25rem;
    margin-bottom: 0.25rem;
  }
}
.c-section_title01_en.-lg {
  font-size: 2.8125rem;
  margin-bottom: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .c-section_title01_en.-lg {
    font-size: 1.375rem;
  }
}
.c-section_title01_en.-line {
  font-size: 3.125rem;
  margin-bottom: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .c-section_title01_en.-line {
    font-size: 1.5625rem;
  }
}

.c-section_title01_jp {
  font-size: 0.875rem;
  font-feature-settings: "palt";
  letter-spacing: 0.15em;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .c-section_title01_jp {
    font-size: 0.4375rem;
  }
}

.c-section_title02 {
  font-size: 2.25rem;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.07em;
  font-feature-settings: "palt";
  line-height: 1.3;
  text-align: center;
  color: #f0909e;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .c-section_title02 {
    font-size: 1.25rem;
  }
}
.c-section_title02 img {
  height: 1em;
  object-fit: contain;
}

/*======================================
    cards
======================================*/
.cards01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 1.625rem;
  row-gap: 3.125rem;
  margin-top: 2.5rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1024px) {
  .cards01 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .cards01 {
    grid-template-columns: repeat(auto-fill, minmax(9.375rem, 1fr));
    column-gap: 0.75rem;
    row-gap: 1.5rem;
    margin-top: 0.75rem;
  }
}

.card01 {
  display: contents;
}

.card01_link {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  row-gap: 0;
}

.card01_img {
  aspect-ratio: 330/200;
  border-radius: 1.25rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #f5f5ee;
}
@media screen and (max-width: 767px) {
  .card01_img {
    border-radius: 0.625rem;
    border-width: 2px;
  }
}
.card01_img img {
  height: 100%;
  object-fit: cover;
}

.card01_meta {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.625rem;
  align-items: start;
  margin-top: 0.75rem;
}
@media screen and (max-width: 767px) {
  .card01_meta {
    margin-top: 0.375rem;
  }
}

.card_cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.card_cat {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  border: 1px solid #f0909e;
  background-color: #fff;
  line-height: 2;
  padding: 0 2em;
  border-radius: 62.5rem;
}
@media screen and (max-width: 767px) {
  .card_cat {
    font-size: 0.375rem;
  }
}

.card_date {
  margin-left: auto;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .card_date {
    font-size: 0.5rem;
  }
}

.card01_text {
  font-size: 0.9375rem;
  font-feature-settings: "palt";
  line-height: 1.7333333333;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .card01_text {
    font-size: 0.5rem;
  }
}

.card01_title {
  font-weight: 700;
}

.card01_title,
.card01_description {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.card01_description {
  -webkit-line-clamp: 1;
}

.cards02 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(17.5rem, 1fr));
  column-gap: 2.25rem;
  row-gap: 3.75rem;
}
@media screen and (max-width: 767px) {
  .cards02 {
    grid-template-columns: repeat(auto-fill, minmax(9.375rem, 1fr));
    column-gap: 0.75rem;
    row-gap: 1.5rem;
  }
}

.card02_link {
  display: block;
}

.card02_img {
  aspect-ratio: 1/1;
  background-color: #d0d3d2;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.25rem;
  overflow: hidden;
  margin-bottom: 0.875rem;
}
@media screen and (max-width: 767px) {
  .card02_img {
    border-radius: 0.625rem;
  }
}
.card02_img img:not(.card_no_image) {
  height: 100%;
  object-fit: cover;
}
.card02_img .card_no_image {
  width: 5.25rem;
}
@media screen and (max-width: 767px) {
  .card02_img .card_no_image {
    width: 2.625rem;
  }
}

.card02_icon {
  width: 3.125rem;
  position: absolute;
  top: 0.625rem;
  right: 0.75rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .card02_icon {
    width: 1.5625rem;
    top: 0.3125rem;
    right: 0.375rem;
  }
}
.card02_icon img {
  object-fit: contain;
}

.card_cats_square {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
}

.card_cat_square {
  font-size: 0.9375rem;
  font-weight: 500;
  font-feature-settings: "palt";
  border-radius: 0.3125rem;
  border: 1px solid #f0909e;
  color: #f0909e;
  background-color: #fff;
  display: flex;
  align-items: center;
  text-align: center;
  height: 1.6em;
  padding: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .card_cat_square {
    font-size: 0.5rem;
    border-radius: 0.1875rem;
  }
}
.card_cat_square.cat-color {
  color: #fff;
  background-color: #f0909e;
}

.card02_title {
  font-size: 0.9375rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.7333333333;
  margin-top: 0.75rem;
}
@media screen and (max-width: 767px) {
  .card02_title {
    font-size: 0.75rem;
    margin-top: 0.375rem;
  }
}

.card_cats_circle {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
  margin-top: 0.625rem;
}

.card_cat_circle {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 2em;
  padding: 0 2em;
  border-radius: 6.25rem;
  border: 1px solid #000;
}
@media screen and (max-width: 767px) {
  .card_cat_circle {
    font-size: 0.5rem;
  }
}

.c-toggle_hidden {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.5s ease;
}
.c-toggle_hidden.is-open {
  grid-template-rows: 1fr;
}

.c-toggle_hidden_wrap {
  min-height: 0;
}

.c-rule_more {
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .c-rule_more {
    margin-top: 1.875rem;
  }
}

.c-ticket_section_title {
  text-align: center;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  font-feature-settings: "palt";
  margin-bottom: 1.25rem;
  margin-top: 3.125rem;
}
.c-ticket_section_title .sm {
  font-size: 0.875rem;
}

.c-rule_lists {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 4.75rem;
  row-gap: 1.875rem;
  max-width: 62.5rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .c-rule_lists {
    column-gap: 2rem;
    row-gap: 0.9375rem;
  }
}

.c-rule_list {
  padding: 1rem 1.25rem 1rem 4.625rem;
  position: relative;
  align-items: center;
  min-height: 3.75rem;
  border-radius: 2.625rem;
  background-color: #fff;
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 700;
  font-feature-settings: "palt";
  color: #505050;
}
@media screen and (max-width: 767px) {
  .c-rule_list {
    font-size: 0.5rem;
    min-height: 3.125rem;
    border-radius: 1.3125rem;
    max-width: 19.25rem;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    padding: 1rem 0.625rem 1rem 3.125rem;
  }
}
.c-rule_list::before {
  content: "";
  position: absolute;
  top: 1.875rem;
  left: 1.25rem;
  aspect-ratio: 1/1;
  width: 2.25rem;
  background: url(/img/top/rule_check.svg) no-repeat center/contain;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .c-rule_list::before {
    left: 0.9375rem;
    width: 1.5rem;
    top: 1.5625rem;
  }
}
.c-rule_list .note {
  margin-top: 0.5em;
}
.c-rule_list .note li {
  padding-left: 0.5em;
  line-height: 1.4666666667;
  position: relative;
  font-weight: 500;
}
.c-rule_list .note li::before {
  content: "";
  position: absolute;
  top: 0.7333333333em;
  left: 0;
  transform: translateY(-50%);
  width: 0.25em;
  aspect-ratio: 1/1;
  background-color: #505050;
  border-radius: 50%;
}

/*======================================
    buttons
======================================*/
.button_more {
  max-width: 17.75rem;
  height: 3.625rem;
  border-radius: 62.5rem;
  border: 0.125rem solid #000;
  background-color: #f0909e;
  color: #251e1c;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-feature-settings: "palt";
  display: flex;
  align-items: center;
  padding: 0.625rem 1.25rem;
  position: relative;
  font-size: 0.75rem;
}
@media screen and (max-width: 767px) {
  .button_more {
    max-width: 8.875rem;
    font-size: 0.375rem;
    height: 1.8125rem;
    padding: 0.3125rem 0.625rem;
    border-width: 1px;
  }
}
.button_more img {
  height: 1em;
  object-fit: contain;
  object-position: left center;
}
.button_more:hover, .button_more:focus {
  opacity: 1;
}
.button_more:hover::before, .button_more:focus::before {
  transform: translate(10%, -50%);
}
.button_more::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  aspect-ratio: 22/18;
  width: 1.375rem;
  background: url(/img/common/button_arrow.svg) no-repeat center/contain;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .button_more::before {
    right: 0.625rem;
    width: 0.6875rem;
  }
}

.button_more_toggle {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  box-shadow: none;
  border: none;
  background-color: #f0909e;
  font-family: inherit;
  font-weight: 700;
  border-radius: 6.25rem;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 26.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 1.5rem;
  letter-spacing: 0.16em;
  line-height: 1.75;
  min-height: 5.4375rem;
}
@media screen and (max-width: 767px) {
  .button_more_toggle {
    font-size: 0.75rem;
    min-height: 2.75rem;
    max-width: 13.375rem;
  }
}

.button_ticket_simple {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 8.25rem;
  border: 0.25rem solid #000;
  border-radius: 0.625rem;
  box-shadow: 0.625rem 0.625rem 0 #000;
  font-size: 2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  max-width: 35rem;
  margin-left: auto;
  margin-right: auto;
  background-color: #ffd147;
  transform: translateX(-2%);
}
@media screen and (max-width: 767px) {
  .button_ticket_simple {
    font-size: 1rem;
    max-width: 16.5625rem;
    height: 4.0625rem;
    box-shadow: 0.3125rem 0.3125rem 0 #000;
    border-width: 0.125rem;
    border-radius: 0.3125rem;
  }
}
.button_ticket_simple img {
  height: 1em;
  object-fit: contain;
}
.button_ticket_simple:hover, .button_ticket_simple:focus {
  opacity: 1;
}
.button_ticket_simple:hover::before, .button_ticket_simple:focus::before {
  transform: translate(10%, -50%);
}
.button_ticket_simple::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.75rem;
  transform: translateY(-50%);
  aspect-ratio: 22/18;
  width: 1.625rem;
  background: url(/img/common/button_arrow.svg) no-repeat center/contain;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .button_ticket_simple::before {
    right: 1.375rem;
    width: 0.8125rem;
  }
}

.button_ticket_time {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 8.25rem;
  border: 0.25rem solid #000;
  border-radius: 0.625rem;
  box-shadow: 0.625rem 0.625rem 0 #000;
  font-size: 2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  max-width: 35rem;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .button_ticket_time {
    font-size: 1rem;
    max-width: 16.5625rem;
    height: 4.0625rem;
    box-shadow: 0.3125rem 0.3125rem 0 #000;
    border-width: 0.125rem;
    border-radius: 0.3125rem;
  }
}
.button_ticket_time img {
  height: 1em;
  object-fit: contain;
}
.button_ticket_time:hover, .button_ticket_time:focus {
  opacity: 1;
}
.button_ticket_time:hover::before, .button_ticket_time:focus::before {
  transform: translate(10%, -50%);
}
.button_ticket_time::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.75rem;
  transform: translateY(-50%);
  aspect-ratio: 22/18;
  width: 1.625rem;
  background: url(/img/common/button_arrow.svg) no-repeat center/contain;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .button_ticket_time::before {
    right: 1.375rem;
    width: 0.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .button_ticket_time {
    transform: translateX(13%);
  }
}
.button_ticket_time .time {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-73%, -47%);
  display: block;
  width: 12.875rem;
}
@media screen and (max-width: 767px) {
  .button_ticket_time .time {
    width: 6.4375rem;
  }
}
.button_ticket_time .time img {
  height: auto;
}

.button_back-to-top {
  position: absolute;
  bottom: 0;
  right: 50%;
  transform: translate(min(49.25vw, 62.5rem), 2.75rem);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .button_back-to-top {
    right: 0.625rem;
    transform: translateY(4.375rem);
  }
}
.button_back-to-top .char {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.button_back-to-top .char.-linus_blanket {
  width: 15.625rem;
  transform: translateX(-17%);
}
@media screen and (max-width: 767px) {
  .button_back-to-top .char.-linus_blanket {
    width: 7.8125rem;
  }
}
.button_back-to-top .char.-franklin {
  width: 10rem;
  transform: translateX(-17%);
}
@media screen and (max-width: 767px) {
  .button_back-to-top .char.-franklin {
    width: 5rem;
  }
}
.button_back-to-top .text {
  display: block;
  font-size: 1.1875rem;
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .button_back-to-top .text {
    font-size: 0.625rem;
    margin-top: 0.5rem;
  }
}
.button_back-to-top .text img {
  height: 1em;
  object-fit: contain;
}

.c-link_view-more {
  display: block;
  font-size: 1.25rem;
  width: fit-content;
  margin: 3.125rem auto 0;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 767px) {
  .c-link_view-more {
    font-size: 0.75rem;
    margin-top: 1.875rem;
  }
}
.c-link_view-more:hover, .c-link_view-more:focus {
  opacity: 0.7;
}
.c-link_view-more img {
  height: 1em;
  object-fit: contain;
}

/*======================================
    pages
======================================*/
.page {
  padding: 13.125rem 0 8.75rem;
}
@media screen and (max-width: 767px) {
  .page {
    padding: 8.75rem 0 6.25rem;
  }
}
.page.no-pb {
  padding-bottom: 0;
}

/*======================================
    modal
======================================*/
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background-color: rgba(240, 144, 158, 0.8);
  padding: 2.5rem;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  overflow: auto;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media screen and (max-width: 767px) {
  .modal {
    padding: 2.5rem 0;
  }
}
.modal::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.modal.active {
  opacity: 1;
  visibility: visible;
}

.modal_body {
  width: 90%;
  max-width: 62.5rem;
  display: inline-block;
  vertical-align: middle;
  background-color: #fff;
  border-radius: 0.625rem;
  padding: 1.625rem;
}
@media screen and (max-width: 767px) {
  .modal_body {
    width: 92%;
    border-radius: 0.3125rem;
    padding-top: 1.25rem;
  }
}

.modal_close {
  display: block;
  width: 1rem;
  aspect-ratio: 1/1;
  position: relative;
  margin-left: auto;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .modal_close {
    margin-bottom: 1.25rem;
  }
}
.modal_close::before, .modal_close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.375rem;
  height: 0.25rem;
  border-radius: 6.25rem;
  background-color: #f0909e;
}
.modal_close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal_close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.modal_contents {
  text-align: left;
}

.modal_item_contents {
  display: grid;
  grid-template-columns: auto 47%;
  column-gap: 2.5rem;
  max-width: 56.25rem;
  margin-left: auto;
  margin-right: auto;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .modal_item_contents {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 1.25rem;
  }
}

.modal_item_texts {
  padding-left: 2.5rem;
  padding-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .modal_item_texts {
    padding-left: 0;
    padding-top: 0;
  }
}

.modal_item_title {
  font-size: 0.9375rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 2;
}

.modal_item_text {
  font-size: 0.875rem;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
  line-height: 2;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .modal_item_text {
    margin-top: 1.25rem;
  }
}

.modal_item_img {
  aspect-ratio: 1/1;
  background-color: #d0d3d2;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.25rem;
  overflow: hidden;
  margin-bottom: 0.875rem;
}
@media screen and (max-width: 767px) {
  .modal_item_img {
    width: 100%;
    margin-bottom: 0;
    border-radius: 0.625rem;
  }
}
.modal_item_img img:not(.card_no_image) {
  height: 100%;
  object-fit: cover;
}
.modal_item_img .card_no_image {
  width: 6.625rem;
}
@media screen and (max-width: 767px) {
  .modal_item_img .card_no_image {
    width: 3.3125rem;
  }
}
.modal_item_img .card02_icon {
  width: 4rem;
  position: absolute;
  top: 0.875rem;
  right: 1rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .modal_item_img .card02_icon {
    width: 2rem;
    top: 0.4375rem;
    right: 0.5rem;
  }
}
.modal_item_img .card02_icon img {
  object-fit: contain;
}
/*======================================
    coming soon
======================================*/
.c-comingsoon {
  margin: 12.5rem 0;
}
@media screen and (max-width: 767px) {
  .c-comingsoon {
    margin: 6.25rem 0;
  }
}

.c-comingsoon_text {
  text-align: center;
  color: #f0909e;
  font-weight: 900;
  font-size: 1.25rem;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  line-height: 1.35;
}
@media screen and (max-width: 767px) {
  .c-comingsoon_text {
    font-size: 0.625rem;
  }
}
.c-comingsoon_text .en {
  display: block;
  font-size: 2.5em;
  margin-bottom: 0.2em;
}
.c-comingsoon_text .en img {
  height: 1em;
  object-fit: contain;
}

.header {
  position: fixed;
  top: 55svh;
  left: 0;
  height: min(90svh, 38.75rem);
  transform: translateY(-50%);
  z-index: 1000;
}
@media screen and (max-width: 1024px) {
  .header {
    top: 0;
    left: 50%;
    width: 100%;
    max-width: 25rem;
    transform: translateX(-50%);
    height: 4.0625rem;
  }
}

.header_text_lg {
  font-size: 1.125rem;
  font-weight: 900;
}
@media screen and (max-width: 1024px) {
  .header_text_lg {
    font-size: 0.625rem;
  }
}

.header_main,
.header_nav {
  border-radius: 0 2.1875rem 2.1875rem 0;
}
@media screen and (max-width: 1024px) {
  .header_main,
  .header_nav {
    border-radius: 0 0 1rem 1rem;
  }
}

.header_main {
  width: 11.75rem;
  height: 100%;
  border: 0.25rem solid #f0909e;
  padding-top: 1.875rem;
  padding-bottom: 1.25rem;
  background-color: #fff;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 1025px) {
  .header_main {
    border-left: none;
  }
}
@media screen and (max-width: 1024px) {
  .header_main {
    border-width: 0.125rem;
    width: 100%;
    flex-direction: row;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    display: grid;
    grid-template-columns: 5rem auto auto;
    border-top: none;
  }
}

.header_char {
  display: block;
  max-width: 6.25rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1025px) {
  .header_char {
    margin-bottom: 1.875rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_char {
    max-width: 2.8125rem;
    order: 1;
    transform: translate(12%, -12%);
  }
}
.header_char:hover, .header_char:focus {
  opacity: 1;
}

.header_nav_button {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background-color: unset;
  border: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  column-gap: 0.75rem;
  width: 90%;
  max-width: 8.125rem;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
}
@media screen and (min-width: 1025px) {
  .header_nav_button {
    padding-left: 0.5rem;
    margin-bottom: 1.875rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_nav_button {
    order: 3;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    width: 3.75rem;
    justify-content: flex-end;
    padding-bottom: 0.625rem;
  }
}
.header_nav_button.active .button_dot.dot1, .header_nav_button.active .button_dot.dot2, .header_nav_button.active .button_dot.dot3, .header_nav_button.active .button_dot.dot4, .header_nav_button.active .button_dot.dot6, .header_nav_button.active .button_dot.dot7, .header_nav_button.active .button_dot.dot8, .header_nav_button.active .button_dot.dot9 {
  top: 50%;
  left: 50%;
  opacity: 0;
}
.header_nav_button.active .button_dot.dot5::before {
  transform: translate(-50%, -50%) rotate(-43deg) scale(1, 1);
}
.header_nav_button.active .button_dot.dot5::after {
  transform: translate(-50%, -50%) rotate(43deg) scale(1, 1);
}

.header_nav_button_icon {
  display: block;
  width: 1.625rem;
  height: 1.5rem;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .header_nav_button_icon {
    width: 0.8125rem;
    height: 0.75rem;
    margin-bottom: 0.375rem;
  }
}
.header_nav_button_icon .button_dot {
  position: absolute;
  transform: translate(-50%, -50%);
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 62.5rem;
  background-color: #f0909e;
  transition: top 0.5s ease, left 0.5s ease, opacity 0.5s ease;
}
@media screen and (max-width: 1024px) {
  .header_nav_button_icon .button_dot {
    width: 0.1875rem;
    height: 0.1875rem;
  }
}
.header_nav_button_icon .button_dot.dot1 {
  top: 0;
  left: 0;
}
.header_nav_button_icon .button_dot.dot2 {
  top: 0;
  left: 50%;
}
.header_nav_button_icon .button_dot.dot3 {
  top: 0;
  left: 100%;
}
.header_nav_button_icon .button_dot.dot4 {
  top: 50%;
  left: 0;
}
.header_nav_button_icon .button_dot.dot5 {
  top: 50%;
  left: 50%;
}
.header_nav_button_icon .button_dot.dot5::before, .header_nav_button_icon .button_dot.dot5::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.625rem;
  height: 0.375rem;
  background-color: #f0909e;
  border-radius: 62.5rem;
  transition: transform 0.5s ease;
}
@media screen and (max-width: 1024px) {
  .header_nav_button_icon .button_dot.dot5::before, .header_nav_button_icon .button_dot.dot5::after {
    width: 1.3125rem;
    height: 0.1875rem;
  }
}
.header_nav_button_icon .button_dot.dot5::before {
  transform: translate(-50%, -50%) rotate(-43deg) scale(0, 1);
}
.header_nav_button_icon .button_dot.dot5::after {
  transform: translate(-50%, -50%) rotate(43deg) scale(0, 1);
}
.header_nav_button_icon .button_dot.dot6 {
  top: 50%;
  left: 100%;
}
.header_nav_button_icon .button_dot.dot7 {
  top: 100%;
  left: 0;
}
.header_nav_button_icon .button_dot.dot8 {
  top: 100%;
  left: 50%;
}
.header_nav_button_icon .button_dot.dot9 {
  top: 100%;
  left: 100%;
}

.header_nav_button_text {
  font-size: 1.125rem;
  font-weight: 900;
  font-feature-settings: "palt";
  line-height: 1.4;
  transition: opacity 0.2s ease;
}
.header_nav_button_text span {
  font-weight: inherit;
}
@media screen and (max-width: 1024px) {
  .header_nav_button_text {
    font-size: 0.625rem;
  }
}
.header_nav_button_text.is-hidden {
  opacity: 0;
}

@media screen and (min-width: 1025px) {
  .header_inner {
    overflow: auto;
    padding-bottom: 1.25rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_inner {
    order: 2;
    display: flex;
    margin-left: 0.375rem;
    padding-bottom: 0.5rem;
  }
}

@media screen and (max-width: 1024px) {
  .header_main_nav {
    display: flex;
  }
}

.header_main_nav_item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0.625rem 0.625rem 0.625rem 1.625rem;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .header_main_nav_item {
    min-height: 5rem;
    margin-right: 1rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_main_nav_item {
    padding: 0 0.75rem 0.375rem;
    align-items: center;
    justify-content: flex-end;
  }
  .header_main_nav_item:first-child {
    padding-left: 0;
  }
}
.header_main_nav_item::before, .header_main_nav_item::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background-color: #f0909e;
}
@media screen and (max-width: 1024px) {
  .header_main_nav_item::before, .header_main_nav_item::after {
    width: 1px;
    height: 100%;
    left: 100%;
  }
}
.header_main_nav_item::before {
  top: 0;
}
.header_main_nav_item::after {
  bottom: 0;
}
@media screen and (min-width: 1025px) {
  .header_main_nav_item:not(:last-child)::after {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .header_main_nav_item:first-child {
    padding-top: 0;
  }
}

.header_main_nav_operation dt, .header_main_nav_operation dd {
  line-height: 1.75;
  font-feature-settings: "palt";
}
@media screen and (max-width: 1024px) {
  .header_main_nav_operation dt, .header_main_nav_operation dd {
    font-size: 0.5rem;
  }
}
.header_main_nav_operation dt {
  color: #f0909e;
  font-weight: 700;
}
.header_main_nav_operation dd {
  font-weight: 500;
}
.header_main_nav_operation dd .header_text_lg {
  display: block;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .header_main_nav_operation dd .sp_hide {
    display: none;
  }
}

.header_main_nav_item_access {
  display: block;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .header_main_nav_item_access {
    padding-left: 2em;
  }
  .header_main_nav_item_access::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 1.4em;
    aspect-ratio: 28/36;
    background: url(/img/common/header_pin.svg) no-repeat center/contain;
  }
}
@media screen and (max-width: 1024px) {
  .header_main_nav_item_access {
    line-height: 1;
  }
}

.header_ticket {
  font-size: 1.125rem;
  font-weight: 900;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .header_ticket {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 10rem;
    max-width: 100%;
    margin-top: 0.625rem;
    aspect-ratio: 176/186;
    background: url(/img/common/header_puzzle.svg) no-repeat center/cover;
    padding-right: 0.625rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_ticket {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex: 1;
    font-size: 0.625rem;
    position: relative;
    padding: 0 0.75rem 0.375rem;
    line-height: 1;
  }
  .header_ticket::before {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    background-color: #f0909e;
    width: 1px;
    height: 100%;
  }
}
.header_ticket span {
  font-weight: inherit;
}
@media screen and (max-width: 1024px) {
  .header_ticket .sp_hide {
    display: none;
  }
}
.header_ticket .pc_hide {
  display: none;
}
@media screen and (max-width: 1024px) {
  .header_ticket .pc_hide {
    display: inline-block;
  }
}

.header_nav {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  overflow: auto;
  transform: translateX(-80%);
  visibility: hidden;
  opacity: 0;
  transition: transform 0.5s ease, visibility 0.5s ease, opacity 0.5s ease;
}
@media screen and (min-width: 1025px) {
  .header_nav {
    width: 90vw;
    max-width: 42.5rem;
    padding-left: 15rem;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_nav {
    width: 100%;
    height: 100vh;
    padding-top: 6.875rem;
    padding-bottom: 5rem;
    transform: translateY(-100%);
  }
}
.header_nav.active {
  transform: translateX(0);
  visibility: visible;
  opacity: 1;
}
@media screen and (max-width: 1024px) {
  .header_nav.active {
    transform: translateY(0);
  }
}

@media screen and (max-width: 1024px) {
  .header_nav_lists {
    max-width: 14.75rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
}

.header_nav_list:nth-child(n+2) {
  margin-top: 1.75rem;
}
@media screen and (min-width: 1025px) {
  .header_nav_list:nth-child(n+2) {
    margin-top: 1.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_nav_list:nth-child(n+2) {
    margin-top: 1.5rem;
  }
}

.header_nav_list_link {
  font-size: 0.75rem;
  letter-spacing: 0.15em;
  font-feature-settings: "palt";
  line-height: 1.5;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 1024px) {
  .header_nav_list_link {
    font-size: 0.375rem;
    line-height: 1;
    display: block;
  }
}
.header_nav_list_link .en {
  display: block;
  font-size: 1.625rem;
  font-weight: 700;
  font-feature-settings: "palt";
  margin-bottom: 0.25rem;
}
.header_nav_list_link .en.-line {
  font-size: 1.875rem;
  margin-bottom: -0.125rem;
}
@media screen and (max-width: 1024px) {
  .header_nav_list_link .en.-line {
    font-size: 0.9375rem;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1024px) {
  .header_nav_list_link .en {
    font-size: 0.8125rem;
  }
}
.header_nav_list_link img {
  height: 1em;
  object-fit: contain;
  object-position: left center;
}

.header_nav_sns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1.75rem;
  row-gap: 0.625rem;
  margin-top: 3rem;
}
@media screen and (min-width: 1025px) {
  .header_nav_sns {
    margin-top: 1.875rem;
  }
}
@media screen and (max-width: 1024px) {
  .header_nav_sns {
    column-gap: 0.875rem;
    max-width: 14.75rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5rem;
  }
}

.header_nav_sns_item_link a {
  display: block;
  width: 2.8125rem;
}
@media screen and (max-width: 1024px) {
  .header_nav_sns_item_link a {
    width: 1.375rem;
  }
}

/*======================================
    ロゴアニメーション用 CSS
======================================*/
.logoani {
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
}

.logoani {
  position: relative;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.logoani.is-ani {
  opacity: 1;
}

.logoani img {
  display: block;
  width: 100%;
}

.logoani-img2,
.logoani-img3,
.logoani-img4 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
}

.logoani-img1 {
  opacity: 0;
}

.logoani .logoani-img2 {
  opacity: 1;
  overflow: hidden;
  width: 94.6%;
}

.logoani .logoani-img2 img {
  opacity: 0;
  width: 105.708%;
  max-width: none;
}

.logoani .logoani-img3 {
  opacity: 1;
  overflow: hidden;
  width: 94.6%;
}

.logoani .logoani-img3 img {
  opacity: 0;
  width: 105.708%;
  max-width: none;
}

.logoani .logoani-img4 {
  left: auto;
  right: 0;
  top: auto;
  bottom: 0;
  opacity: 1;
  overflow: hidden;
  width: 84.3%;
  height: 82.7%;
}

.logoani .logoani-img4 img {
  opacity: 0;
  width: 118.623%;
  max-width: none;
}

.logoani.is-ani .logoani-img1 {
  animation: logoani-img1 1s 0.4s both;
}

.logoani.is-ani .logoani-img2 {
  animation: logoani-img2P 1s 0.8s both;
}

.logoani.is-ani .logoani-img2 img {
  transform: translate(9.5%, 0%) scaleX(0.9);
  transform-origin: right center;
  animation: logoani-img2 1s 0.8s both;
}

.logoani.is-ani .logoani-img3 img {
  transform: translate(50%, 1%);
  animation: logoani-img3 1.2s 1s both;
}

.logoani.is-ani .logoani-img4 {
  animation: logoani-img4P 1.2s 1.6s both;
}

.logoani.is-ani .logoani-img4 img {
  transform: translate(-16%, -17%);
  animation: logoani-img4 1.2s 1.6s both;
}

@keyframes logoani-img1 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes logoani-img2P {
  0% {
    overflow: hidden;
  }
  59% {
    overflow: hidden;
  }
  60% {
    overflow: visible;
  }
  100% {
    overflow: visible;
  }
}
@keyframes logoani-img2 {
  0% {
    opacity: 1;
    transform: translate(9.5%, 0%) scaleX(0.9);
  }
  60% {
    transform: translate(-3%, 0%) scaleX(0.9);
  }
  100% {
    opacity: 1;
    transform: translate(0%, 0%) scaleX(1);
  }
}
@keyframes logoani-img3 {
  0% {
    opacity: 1;
    transform: translate(50%, 1%);
  }
  100% {
    opacity: 1;
    transform: translate(0%, 0%);
  }
}
@keyframes logoani-img4P {
  0% {
    overflow: hidden;
  }
  59% {
    overflow: hidden;
  }
  60% {
    overflow: visible;
  }
  100% {
    overflow: visible;
  }
}
@keyframes logoani-img4 {
  0% {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
  60% {
    opacity: 1;
    transform: translate(-13%, -16%);
  }
  100% {
    opacity: 1;
    transform: translate(-16%, -17%);
  }
}
.footer {
  margin-top: auto;
  background-color: #fff;
  position: relative;
  padding: 10rem 0 4.375rem;
}
@media screen and (max-width: 767px) {
  .footer {
    padding: 5rem 0 2.5rem;
  }
}
body#qa .footer_char,
body#qa .footer_faq {
  display: none;
}
body#qa .footer {
  padding-top: 1px;
}
@media screen and (max-width: 767px) {
  body#qa .footer {
    padding-top: 2.5rem;
  }
  body#stand .footer_char,
  body#market .footer_char {
    display: none;
  }
}

.footer_char {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-39%, -46%);
  width: 19.375rem;
}
@media screen and (max-width: 767px) {
  .footer_char {
    width: 9.6875rem;
  }
}

.footer_faq {
  font-size: 1.1875rem;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.07em;
  font-feature-settings: "palt";
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  row-gap: 1rem;
  max-width: 37.5rem;
  height: 12.5rem;
  background-color: #f0909e;
  border-radius: 2.5rem;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 0.875rem;
}
@media screen and (max-width: 767px) {
  .footer_faq {
    height: 6.25rem;
    border-radius: 1.25rem;
    max-width: 18.75rem;
    font-size: 0.5625rem;
    row-gap: 0.5rem;
  }
}
.footer_faq img {
  height: 1em;
  object-fit: contain;
}
.footer_faq:hover::after, .footer_faq:focus::after {
  animation: 3s fuwafuwaSp infinite;
}
.footer_faq::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 7.75rem;
  aspect-ratio: 124/168;
  background: url(/img/common/footer_char01.svg) no-repeat center/contain;
  transform: translate(6%, -47%);
}
@media screen and (max-width: 767px) {
  .footer_faq::before {
    width: 3.875rem;
  }
}
.footer_faq::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5.625rem;
  aspect-ratio: 90/78;
  background: url(/img/common/footer_char02.svg) no-repeat center/contain;
  translate: -24% -50%;
}
@media screen and (max-width: 767px) {
  .footer_faq::after {
    width: 2.8125rem;
  }
}
.footer_faq .en {
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.8125rem;
}
@media screen and (max-width: 767px) {
  .footer_faq .en {
    font-size: 1.375rem;
  }
}

.footer_logo {
  display: block;
  max-width: 16.5rem;
  margin: 7.5rem auto 4rem;
}
@media screen and (max-width: 767px) {
  .footer_logo {
    max-width: 8.25rem;
    margin: 3.75rem auto 3.25rem;
  }
}

.footer_official {
  text-align: center;
  display: block;
  font-size: 0.9375rem;
  letter-spacing: 0.07em;
  font-weight: 500;
  line-height: 1.5;
  font-feature-settings: "palt";
  margin: 1.25rem 0 2.5rem;
}
@media screen and (max-width: 767px) {
  .footer_official {
    font-size: 0.5rem;
    margin: 1rem 0 1.25rem;
  }
}

.copyright {
  font-size: 0.75rem;
  font-feature-settings: "palt";
  text-align: center;
  line-height: 1.8333333333;
}
@media screen and (max-width: 767px) {
  .copyright {
    font-size: 0.375rem;
  }
}
.copyright small {
  font-size: 1em;
}

.footer_nav {
  max-width: 76.75rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .footer_nav {
    max-width: 13.375rem;
  }
}

.footer-nav_layout {
  display: grid;
  grid-template-columns: 1fr 1.3fr 1fr;
  column-gap: 4.625rem;
}
@media screen and (min-width: 1401px) {
  .footer-nav_layout .c-sitemap_list.-ticket {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  .footer-nav_layout .c-sitemap_list.-park, .footer-nav_layout .c-sitemap_list.-others {
    grid-row: 1/3;
  }
  .footer-nav_layout .c-sitemap_list.-park ul li:nth-child(n+2) {
    margin-top: 1rem;
  }
  .footer-nav_layout .c-sitemap_list.-park ul li:nth-child(n+2) a {
    padding-bottom: 0.625rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1400px) {
  .footer-nav_layout {
    column-gap: 2.5rem;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 1.875rem;
  }
  .footer-nav_layout .c-sitemap_list.-ticket {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  .footer-nav_layout .c-sitemap_list.-park {
    grid-column: 1/2;
  }
  .footer-nav_layout .c-sitemap_list.-others {
    grid-row: 1/4;
  }
}
@media screen and (max-width: 767px) {
  .footer-nav_layout {
    grid-template-columns: 1fr;
    row-gap: 1.25rem;
  }
}
.footer-nav_layout .c-sitemap_parent .sm {
  white-space: nowrap;
  line-height: 1;
}

.footer_nav_sns {
  justify-content: center;
  margin-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .footer_nav_sns {
    margin-top: 2.5rem;
  }
}

/*======================================
    TOP
======================================*/
.t-fv {
  background-color: #f0909e;
}

.t-fv_wrap {
  width: 98.125%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 9.625rem;
  padding-bottom: 1.25rem;
}
@media screen and (min-width: 1025px) and (max-width: 1499px) {
  .t-fv_wrap {
    padding-top: 6.25rem;
  }
}
@media screen and (max-width: 767px) {
  .t-fv_wrap {
    width: 94.67%;
    padding-bottom: 0.625rem;
    padding-top: 7.5rem;
    height: 100svh;
  }
}

.t-fv_video {
  width: calc(100% - 8.125rem);
  margin-left: auto;
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .t-fv_video {
    aspect-ratio: 1740/956;
  }
}
@media screen and (max-width: 1024px) {
  .t-fv_video {
    margin-right: auto;
  }
}
@media screen and (max-width: 767px) {
  .t-fv_video {
    width: 100%;
    height: 100%;
  }
}
.t-fv_video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .t-fv_video video {
    border-radius: 0.625rem;
  }
}
.t-fv_video img {
  height: 100%;
  object-fit: contain;
}

.t-fv_button {
  width: 3.75rem;
  aspect-ratio: 1/1;
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  z-index: 2;
  background-color: #f0909e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 50%;
}

.t-fv_video_message {
  font-size: 1.25rem;
  background-color: red;
  color: #fff;
  width: fit-content;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  padding: 0.5em 1em;
  white-space: nowrap;
  text-align: center;
  line-height: 1.5;
}

.t-info {
  position: relative;
}

.t-info_char01 {
  position: absolute;
  top: 0;
  left: 50%;
  width: 16.625rem;
  transform: translate(-195%, -4%);
}
@media screen and (max-width: 767px) {
  .t-info_char01 {
    width: 8.3125rem;
    top: 100%;
    transform: translate(-50%, -4%);
    z-index: 2;
  }
}

.t-info_char_group {
  position: absolute;
  top: 0;
  right: 50%;
  z-index: 2;
  width: 100%;
  max-width: 120rem;
  transform: translate(50%, -53%);
}
@media screen and (max-width: 767px) {
  .t-info_char_group {
    transform: translate(50%, -26%);
  }
}

.t-info_char_group_inner {
  max-width: 25.875rem;
  margin-left: auto;
  position: relative;
  aspect-ratio: 414/380;
}
@media screen and (max-width: 767px) {
  .t-info_char_group_inner {
    max-width: 11.875rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.t-info_char02 {
  width: 14.5rem;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .t-info_char02 {
    width: 7.3125rem;
    top: -10%;
    right: -12%;
  }
}

.t-info_char03 {
  width: 12rem;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .t-info_char03 {
    width: 6rem;
  }
}

.t-info_wrap {
  padding: 13.125rem 0 8.5rem;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .t-info_wrap {
    padding: 9.625rem 0 3.375rem;
  }
}
.t-info_wrap.-fv-img {
  padding-top: 10rem;
}
@media screen and (max-width: 767px) {
  .t-info_wrap.-fv-img {
    padding-top: 3.125rem;
  }
  .t-info_wrap.-fv-img .t-info_puzzle03 {
    top: 15%;
  }
}

.t-info_puzzle01 {
  width: 27rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-230%, -5%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .t-info_puzzle01 {
    width: 6.75rem;
    transform: translate(-182%, -4%);
  }
}

.t-info_puzzle02 {
  width: 33.75rem;
  position: absolute;
  top: 0;
  right: 50%;
  transform: translate(184%, -14%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .t-info_puzzle02 {
    width: 8.4375rem;
    transform: translate(144%, -14%);
  }
}

.t-info_puzzle03 {
  width: 13.5rem;
  position: absolute;
  bottom: 0;
  right: 50%;
  transform: translate(458%, 19%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .t-info_puzzle03 {
    width: 3.375rem;
    bottom: unset;
    top: 5%;
    transform: translate(362%, 28%);
  }
}

.t-about {
  padding: 8.375rem 0 9.25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .t-about {
    padding: 7.5rem 0 6.25rem;
  }
}

.t-about_contents {
  padding: 4.375rem 4rem 8.75rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .t-about_contents {
    padding: 3.375rem 1.5rem 8rem;
  }
}

.t-about_char01 {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-3%, -77%);
  width: 21.375rem;
}
@media screen and (max-width: 767px) {
  .t-about_char01 {
    display: none;
  }
}

.t-about_char02 {
  position: absolute;
  top: 0;
  right: 0;
  width: 17.125rem;
  transform: translate(33%, -10%);
}
@media screen and (max-width: 767px) {
  .t-about_char02 {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .t-about_char03 {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(47%, 43%);
    width: 10rem;
  }
}
@media screen and (max-width: 767px) {
  .t-about_char03 {
    width: 5rem;
    order: 1;
    margin-left: auto;
    margin-right: auto;
  }
}

.t-about_char04 {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-56%, 32%);
  width: 10.9375rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .t-about_char04 {
    width: 5.5rem;
    transform: translate(-45%, 28%);
  }
}

@media screen and (min-width: 768px) {
  .t-about_char05 {
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translate(-5%, 84%);
    width: 15.6875rem;
  }
}
@media screen and (max-width: 767px) {
  .t-about_char05 {
    width: 8.5625rem;
    order: 1;
    margin-left: auto;
    margin-right: auto;
  }
}

.t-about_char06 {
  width: 18.125rem;
}

.t-about_title {
  font-size: 3.625rem;
  text-align: center;
  transform: translateX(2%);
}
@media screen and (max-width: 767px) {
  .t-about_title {
    display: none;
  }
}
.t-about_title img {
  height: 1em;
  width: auto;
}

.t-about_head {
  text-align: center;
  margin-top: 4.75rem;
}
@media screen and (max-width: 767px) {
  .t-about_head {
    margin-top: 0;
  }
}
.t-about_head .t-about_item_title {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.t-about_head .t-about_item_title img {
  object-position: center;
}

.t-about_item_title {
  font-size: 2.625rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  font-feature-settings: "palt";
  border-bottom: 0.1875rem solid #090000;
}
@media screen and (max-width: 767px) {
  .t-about_item_title {
    font-size: 1.3125rem;
    border-width: 0.125rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
}
.t-about_item_title img {
  height: 1em;
  object-fit: contain;
  object-position: left center;
}

.t-about_lead {
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.75;
  font-feature-settings: "palt";
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .t-about_lead {
    font-size: 0.625rem;
    margin-top: 0.5rem;
  }
}

.t-about_char_wrap {
  margin: 6.625rem calc(50% - 55vw) 7.5rem;
}
@media screen and (max-width: 767px) {
  .t-about_char_wrap {
    margin: 2.75rem calc(50% - 55vw);
  }
}

.t-about_char_wrapper {
  transform: translateX(-0.5%);
}
@media screen and (max-width: 767px) {
  .t-about_char_wrapper {
    width: 65.625rem;
  }
}

.t-about_slider {
  overflow: visible;
}

.t-about_slider_slide {
  width: 26.25rem;
  aspect-ratio: 1/1;
  position: relative;
  transition: filter 0.3s ease;
  will-change: transform;
}
.t-about_slider_slide:hover, .t-about_slider_slide:focus {
  opacity: 1;
  filter: brightness(1.05);
}
@media screen and (max-width: 767px) {
  .t-about_slider_slide {
    width: 13.125rem;
  }
}
.t-about_slider_slide.-slide01 {
  z-index: 3;
}
.t-about_slider_slide.-slide02 {
  z-index: 4;
}
.t-about_slider_slide.-slide03 {
  z-index: 1;
}
.t-about_slider_slide.-slide04 {
  z-index: 2;
}
.t-about_slider_slide.-slide05 {
  z-index: 3;
}

.t-about_slider_slide_img {
  position: absolute;
  top: 50%;
  width: 35.125rem;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  aspect-ratio: 1/1;
}
.t-about_slider_slide_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .t-about_slider_slide_img {
    width: 17.5rem;
  }
}
.t-about_slider_slide_img.-left, .t-about_slider_slide_img.-right {
  width: 30.625rem;
}
.t-about_slider_slide_img.-right {
  transform: translate(calc((100% - 4.3125rem) / 2 * -1), -50%);
}
.t-about_slider_slide_img.-left {
  transform: translate(calc((100% - 4.3125rem) / 2 * -1), -50%);
}
.t-about_slider_slide_img.-top {
  transform: translate(-50%, calc((100% - 4.3125rem) / 2 * -1));
}

.t-about_item {
  display: flex;
  column-gap: 3.125rem;
}
.t-about_item:hover, .t-about_item:focus {
  opacity: 1;
}
.t-about_item:hover .t-about_item_img img, .t-about_item:focus .t-about_item_img img {
  transform: scale(1.05);
}
@media screen and (min-width: 768px) {
  .t-about_item:nth-child(even) {
    flex-direction: row-reverse;
  }
  .t-about_item:nth-child(even) .t-about_item_texts {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .t-about_item {
    flex-direction: column;
  }
}
.t-about_item:nth-child(n+2) {
  margin-top: 3.375rem;
}
@media screen and (max-width: 767px) {
  .t-about_item:nth-child(n+2) {
    margin-top: 2.25rem;
  }
}

.t-about_item_img {
  width: 47.17%;
  aspect-ratio: 600/320;
  overflow: hidden;
}
.t-about_item_img img {
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .t-about_item_img {
    order: 3;
    width: 100%;
    margin-top: 0.875rem;
  }
}

.t-about_item_texts {
  flex: 1;
  padding-top: 1.125rem;
}
@media screen and (max-width: 767px) {
  .t-about_item_texts {
    order: 2;
  }
}

.t-about_item_text {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
  line-height: 2.2;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .t-about_item_text {
    font-size: 0.5625rem;
    margin-top: 0.9375rem;
    text-align: center;
    line-height: 2.4;
  }
}

.t-about_more {
  margin: 4.75rem auto 0;
  transform: translateX(-4%);
}
@media screen and (max-width: 767px) {
  .t-about_more {
    margin-top: 2rem;
    transform: translateX(4%);
  }
}

.t-about_ticket {
  width: fit-content;
  margin: 4rem auto 0;
  width: 100%;
  max-width: 35rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .t-about_ticket {
    margin-top: 2rem;
  }
}

.t-about_char06 {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(135%, -46%);
  width: 18.125rem;
}

.t-rule {
  padding: 16.625rem 0 13.75rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .t-rule {
    padding: 7.375rem 0 6.25rem;
  }
}

.t-rule_lists {
  margin-top: 3.5rem;
  margin-bottom: 6.25rem;
}
@media screen and (max-width: 767px) {
  .t-rule_lists {
    margin-top: 1.875rem;
    margin-bottom: 2.5rem;
  }
}

.t-rule_char01 {
  width: 19.875rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-35%, -26%);
}
@media screen and (max-width: 767px) {
  .t-rule_char01 {
    width: 10rem;
    transform: translate(-35%, -41%);
  }
}

/*======================================
    Ticket
======================================*/
.p-ticket_terms {
  display: block;
  text-align: center;
  margin-top: 5rem;
  font-weight: 500;
  text-decoration: underline;
  transition: opacity 0.3s ease;
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-ticket_terms {
    font-size: 0.75rem;
    margin-top: 2.5rem;
  }
}
.p-ticket_terms:hover, .p-ticket_terms:focus {
  opacity: 0.7;
}

.p-ticket_section_note {
  margin-top: 2.5rem;
}

.p-ticket_button {
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .p-ticket_button {
    margin-top: 1.875rem;
  }
}

.p-ticket-entry {
  margin-top: 7.75rem;
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry {
    margin-top: 3.75rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.p-ticket-section_lead {
  font-size: 1.375rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-ticket-section_lead {
    font-size: 0.625rem;
  }
}
.p-ticket-section_lead img {
  width: auto;
  height: 1em;
}
.p-ticket-section_lead.entry-time img {
  height: 2.8125em;
}

.p-ticket-entry-price_table {
  width: 100%;
  max-width: 53.75rem;
  margin: 1.5rem auto 1rem;
  border-collapse: collapse;
  table-layout: fixed;
}
.p-ticket-entry-price_table tr:first-of-type th {
  background-color: #f8c9cf;
  height: 5rem;
  text-align: left;
}
.p-ticket-entry-price_table th, .p-ticket-entry-price_table td {
  border: 2px solid #f0909e;
  vertical-align: middle;
  padding: 0.625rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table th, .p-ticket-entry-price_table td {
    padding: 0.625rem;
  }
}
.p-ticket-entry-price_table th {
  height: 6.75rem;
}
.p-ticket-entry-price_table th .category {
  font-size: 1.625rem;
}
@media screen and (min-width: 768px) {
  .p-ticket-entry-price_table th .category {
    margin-left: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table th .category {
    font-size: 0.875rem;
  }
}
.p-ticket-entry-price_table th .category img {
  width: auto;
  height: 2em;
}
.p-ticket-entry-price_table th .weekday {
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table th .weekday {
    font-size: 0.5625rem;
  }
}
.p-ticket-entry-price_table th .weekday img {
  width: auto;
  height: 1em;
}
.p-ticket-entry-price_table th .weekend {
  font-size: 1.4375rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table th .weekend {
    font-size: 0.625rem;
  }
}
.p-ticket-entry-price_table th .weekend img {
  width: auto;
  height: 2em;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table td {
    text-align: center;
  }
}
.p-ticket-entry-price_table td .price {
  font-size: 2.875rem;
}
@media screen and (min-width: 768px) {
  .p-ticket-entry-price_table td .price {
    margin-left: 2.125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table td .price {
    font-size: 1.125rem;
  }
}
.p-ticket-entry-price_table td .price.-sm {
  font-size: 2.625rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-price_table td .price.-sm {
    font-size: 1rem;
  }
}
.p-ticket-entry-price_table td .price img {
  width: auto;
  height: 1em;
}

.p-ticket-entry_present {
  background-color: #fce9ec;
  text-align: center;
  max-width: 41.25rem;
  margin: 2.5rem auto 0.625rem;
  padding: 1rem 1.25rem;
  border-radius: 2.875rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry_present {
    padding: 0.625rem;
  }
}

.p-ticket-entry_present_title {
  font-size: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry_present_title {
    font-size: 1.125rem;
  }
}
.p-ticket-entry_present_title img {
  width: auto;
  height: 1em;
}

.p-ticket-entry_present_text {
  font-size: 1.125rem;
  font-weight: 900;
  line-height: 1.3333333333;
  font-feature-settings: "palt";
  margin-top: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry_present_text {
    font-size: 0.75rem;
    margin-top: 0.625rem;
  }
}

.p-ticket-entry_present_note {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.7333333333;
  font-feature-settings: "palt";
  text-align: center;
  color: #505050;
}
.p-ticket-entry_present_note.-important {
  font-size: 1.0625rem;
  color: #eb6036;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry_present_note.-important {
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-ticket-entry_present_note {
    font-size: 0.625rem;
  }
  .p-ticket-entry_present_note.p-ticket-entry-price_note {
    text-align: left;
  }
}

.p-ticket-operation {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-operation {
    margin-top: 3.125rem;
  }
}

.p-ticket-operation_table {
  width: 100%;
  table-layout: fixed;
  max-width: 53.75rem;
  margin: 2.5rem auto 0;
  border-collapse: collapse;
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table {
    margin-top: 1.25rem;
  }
  .p-ticket-operation_table tr:nth-of-type(n + 2) th {
    border-top: none;
  }
}
.p-ticket-operation_table th, .p-ticket-operation_table td {
  border: 2px solid #f0909e;
  vertical-align: middle;
  padding: 0.75rem 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table th, .p-ticket-operation_table td {
    padding: 0.625rem;
    display: block;
  }
}
.p-ticket-operation_table th {
  text-align: left;
  background-color: #fce9ec;
}
@media screen and (min-width: 768px) {
  .p-ticket-operation_table th {
    width: 30rem;
    padding-right: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table th {
    text-align: center;
  }
}
.p-ticket-operation_table th .title_logo {
  font-size: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table th .title_logo {
    font-size: 1rem;
  }
}
.p-ticket-operation_table th .title_logo img {
  width: auto;
  height: 1em;
}
.p-ticket-operation_table th .sm {
  font-size: 0.9375rem;
  font-weight: 700;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table th .sm {
    font-size: 0.625rem;
    display: block;
    margin-top: 0.25rem;
  }
}
.p-ticket-operation_table td {
  font-size: 1.125rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-ticket-operation_table td {
    font-size: 0.875rem;
    border-top: none;
    text-align: center;
  }
}

.p-ticket-entry-time {
  position: relative;
  margin-top: 5rem;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time {
    margin-top: 6.25rem;
  }
}

.p-ticket-entry-time_duration {
  position: absolute;
  top: 0;
  left: 50%;
  width: 14.875rem;
  transform: translate(-218%, -5%);
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_duration {
    width: 7.5rem;
    transform: translate(-153%, -60%);
  }
}

.p-ticket-entry-time_char01 {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 12rem;
  transform: translate(-253%, -20%);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-ticket-entry-time_char01.-lower {
    transform: translate(-253%, 30%);
  }
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_char01 {
    width: 6rem;
    transform: translate(-210%, 50%);
  }
}

.p-ticket-entry-time_char02 {
  position: absolute;
  bottom: 0;
  right: 50%;
  width: 14.375rem;
  transform: translate(215%, -83%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_char02 {
    width: 7.1875rem;
    transform: translate(198%, -25%);
  }
}

.p-ticket-entry-time_table {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.25rem;
}
.p-ticket-entry-time_table tr {
  display: flex;
  align-items: center;
  column-gap: 1.125rem;
}
.p-ticket-entry-time_table tr:nth-child(n+2) {
  margin-top: 1.625rem;
}
.p-ticket-entry-time_table td {
  font-weight: 500;
  font-feature-settings: "palt";
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-ticket-entry-time_table td .schedule-number {
  color: #f0909e;
  font-size: 1.125rem;
  font-weight: 500;
  text-align: left;
  margin-right: 0.5em;
}
.p-ticket-entry-time_table td .time-label {
  font-size: 1.125rem;
  color: #f0909e;
  line-height: 1.6666666667;
  margin-left: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_table td .time-label {
    font-size: 0.75rem;
    margin-left: 0.3125rem;
  }
}
.p-ticket-entry-time_table td .time-value {
  font-size: 1.875rem;
  line-height: 1;
}
.p-ticket-entry-time_table td .time-value.-half-space {
  margin-left: 0.5em;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_table td .time-value {
    font-size: 1.125rem;
  }
}
.p-ticket-entry-time_table td.time-separator {
  color: rgba(255, 255, 255, 0);
  position: relative;
  width: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_table td.time-separator {
    width: 0.9375rem;
  }
}
.p-ticket-entry-time_table td.time-separator::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 0.25rem;
  background-color: #f0909e;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_table td.time-separator::before {
    height: 0.125rem;
  }
}

.p-ticket-entry-time_note {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  font-weight: 700;
  font-feature-settings: "palt";
  text-align: center;
  margin-top: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-entry-time_note {
    font-size: 0.625rem;
    margin-top: 1.875rem;
  }
}

.p-ticket_rule {
  margin-top: 7.5rem;
}
@media screen and (max-width: 767px) {
  .p-ticket_rule {
    margin-top: 3.125rem;
  }
}
.p-ticket_rule .p-ticket_button {
  margin-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-ticket_rule .p-ticket_button {
    margin-top: 3.125rem;
  }
}

/*======================================
    play ground
======================================*/
.p-playground_title {
  font-size: 3.625rem;
}
@media screen and (max-width: 767px) {
  .p-playground_title {
    font-size: 1.875rem;
  }
}
.p-playground_title img {
  height: 1em;
  object-fit: contain;
}

.p-playground_lead {
  text-align: center;
  font-feature-settings: "palt";
  line-height: 2.1;
  letter-spacing: 0.08em;
  font-weight: 700;
  margin-top: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-playground_lead {
    font-size: 0.75rem;
  }
}

.p-playground_info {
  background-color: #fff;
  margin-top: 3.75rem;
  padding: 2.5rem 0;
}
@media screen and (max-width: 767px) {
  .p-playground_info {
    margin-top: 1.875rem;
  }
}
.p-playground_info .cards01 {
  margin-top: 0;
}

.p-playground-park {
  padding-top: 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-playground-park {
    padding-top: 3.125rem;
  }
}

.p-playground-park_title img {
  height: 1em;
  object-fit: contain;
}
.p-playground-park_title h2 {
  font-size: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-playground-park_title h2 {
    font-size: 1.25rem;
  }
}
.p-playground-park_title p {
  font-size: 0.875rem;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-playground-park_title p {
    font-size: 0.625rem;
  }
}

.p-playground-park_map_wrap {
  width: calc(100% - 23.5rem);
  max-width: 92.5rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.25rem;
  transform: translateX(-2%);
}
@media screen and (max-width: 767px) {
  .p-playground-park_map_wrap {
    width: 92%;
  }
}
.p-playground-park_map_wrap a,
.p-playground-park_map_wrap button {
  transition: transform 0.3s ease;
}
.p-playground-park_map_wrap a:hover, .p-playground-park_map_wrap a:focus,
.p-playground-park_map_wrap button:hover,
.p-playground-park_map_wrap button:focus {
  transform: scale(1.05);
  opacity: 1;
}

.p-playground-park_map {
  position: relative;
}
.p-playground-park_map img {
  width: 100%;
}

.p-playground-park_map_button {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  background-color: none;
  position: absolute;
  z-index: 2;
}

.p-playground-park_map_button_01 {
  width: 10.9459459459%;
  top: 50%;
  left: 26.5%;
}

.p-playground-park_map_button_02 {
  width: 10.4054054054%;
  top: 40.5%;
  left: 10.5%;
}

.p-playground-park_map_button_03 {
  width: 11.4864864865%;
  top: 47.75%;
  left: 6.5%;
}

.p-playground-park_map_button_04 {
  width: 10.4054054054%;
  top: 54.5%;
  left: 14.5%;
}

.p-playground-park_map_button_05 {
  width: 8.6486486486%;
  top: 59%;
  left: 25.5%;
}

.p-playground-park_map_link {
  display: block;
  position: absolute;
  z-index: 2;
}

.p-playground-park_map_link01 {
  width: 22.972972973%;
  top: 36%;
  left: 42.5%;
}

.p-playground-park_map_link02 {
  width: 26.2162162162%;
  top: 3.5%;
  left: 56.5%;
}

.p-playground-park_map_link03 {
  width: 25.6756756757%;
  top: 75.5%;
  left: 72.5%;
}

.p-playground-park_ticket {
  margin-top: 6.25rem;
  margin-bottom: 6.25rem;
}
@media screen and (max-width: 767px) {
  .p-playground-park_ticket {
    margin-top: 3.125rem;
    margin-bottom: 3.125rem;
  }
}

.p-playground_others {
  background-color: #f0909e;
  margin-top: 11.25rem;
  padding: 6.25rem 0 5rem;
}
@media screen and (max-width: 767px) {
  .p-playground_others {
    margin-top: 3.75rem;
    padding: 3.75rem 0 5.625rem;
  }
}

.p-playground_others_lists {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(25rem, 1fr));
  column-gap: 4rem;
  row-gap: 5rem;
  max-width: 79rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .p-playground_others_lists {
    grid-template-columns: 1fr;
    max-width: 31.25rem;
    row-gap: 2.5rem;
  }
}

.p-playground_others_list {
  width: 100%;
  max-width: 37.5rem;
  margin-left: auto;
  margin-right: auto;
}

.p-playground_others_list_link {
  display: block;
}
.p-playground_others_list_link:hover .p-playground_others_list_img img, .p-playground_others_list_link:focus .p-playground_others_list_img img {
  transform: scale(1.05);
}

.p-playground_others_list_img {
  aspect-ratio: 600/320;
  overflow: hidden;
}
.p-playground_others_list_img img {
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.p-playground_others_list_title {
  font-size: 2.375rem;
  margin-top: 1.875rem;
}
@media screen and (max-width: 767px) {
  .p-playground_others_list_title {
    font-size: 1.5rem;
    margin-top: 0.9375rem;
  }
}
.p-playground_others_list_title img {
  height: 1em;
  object-fit: contain;
}

.p-playground_others_list_text {
  line-height: 2.2;
  font-weight: 700;
  font-feature-settings: "palt";
  letter-spacing: 0.08em;
  margin-top: 0.75rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-playground_others_list_text {
    font-size: 0.75rem;
  }
}

.p-playground_others_list_more {
  margin-left: auto;
  margin-right: auto;
  margin-top: 2.625rem;
}
@media screen and (max-width: 767px) {
  .p-playground_others_list_more {
    margin-top: 1.25rem;
  }
}

.p-playground-slider {
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3.75rem;
  margin-bottom: 8.75rem;
  overflow: visible;
}
.p-playground-slider_slide .p-playground-slider_slide_img {
  transform: scale(0.8291970803);
  aspect-ratio: 568/318;
  transition: transform 0.5s ease;
  transform-origin: center center;
  background-color: gray;
}
.p-playground-slider_slide.swiper-slide-active .p-playground-slider_slide_img {
  transform: scale(1.0832116788);
}
.p-playground-slider_slide img {
  height: 100%;
  object-fit: cover;
}

.p-playground-slider_pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 0.5rem;
  bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  .p-playground-slider_pagination {
    column-gap: 0.25rem;
    bottom: 0.25rem !important;
  }
}
.p-playground-slider_pagination .swiper-pagination-bullet {
  width: 0.625rem;
  height: 0.625rem;
  margin: 0 !important;
  border-radius: 50%;
  display: block;
  background-color: #fff;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .p-playground-slider_pagination .swiper-pagination-bullet {
    width: 0.3125rem;
    height: 0.3125rem;
  }
}
.p-playground-slider_pagination .swiper-pagination-bullet-active {
  background-color: #f0909e;
}

.p-playground-slider_button {
  width: 3.125rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #f0909e;
  color: #fff;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, calc(100% + 1.875rem));
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .p-playground-slider_button {
    font-size: 0.75rem;
    width: 2.5rem;
    transform: translate(-50%, calc(100% + 1rem));
  }
}

.p-stand-menu {
  margin-top: 5.625rem;
}
.p-stand-menu .inner {
  max-width: 90.625rem;
}
.p-stand-menu .cards02 {
  margin-top: 6.25rem;
  margin-bottom: 5.625rem;
}
@media screen and (max-width: 767px) {
  .p-stand-menu .cards02 {
    margin-top: 2.5rem;
    margin-bottom: 3.125rem;
  }
}

.p-playground_allergie {
  font-size: 1.125rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.5;
  letter-spacing: 0.08em;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.3125rem;
  border: 2px solid #090000;
  max-width: 23.375rem;
  height: 3.75rem;
  margin: 2.5rem auto;
}
@media screen and (max-width: 767px) {
  .p-playground_allergie {
    font-size: 0.5625rem;
    max-width: 11.75rem;
    height: 1.875rem;
  }
}

.p-playground_notes {
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .p-playground_notes {
    margin-top: 3.125rem;
  }
}

.p-playground_note {
  font-weight: 700;
  line-height: 1.875;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .p-playground_note {
    font-size: 0.75rem;
  }
}

.p-playground_caution {
  margin-top: 2.875rem;
}
@media screen and (max-width: 767px) {
  .p-playground_caution {
    margin-top: 1.25rem;
  }
}
.p-playground_caution dt {
  font-weight: 700;
  font-size: 1.125rem;
  font-feature-settings: "palt";
  letter-spacing: 0.08em;
  line-height: 1.75;
  margin-bottom: 0.75rem;
}
.p-playground_caution dd {
  font-weight: 500;
  line-height: 2.125;
  font-feature-settings: "palt";
  padding-left: 0.75em;
  position: relative;
}
.p-playground_caution dd::before {
  content: "";
  position: absolute;
  width: 0.5em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #090000;
  top: 1.0625em;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-playground_caution dd {
    font-size: 0.75rem;
  }
}

.modal_booth_contents {
  padding-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .modal_booth_contents {
    padding-bottom: 2.5rem;
  }
}

.modal_booth {
  display: grid;
  grid-template-columns: auto 50%;
  column-gap: 1.5rem;
  row-gap: 1.875rem;
  max-width: 52.125rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .modal_booth {
    grid-template-columns: 1fr;
  }
}

.modal_booth_title {
  max-width: 14.125rem;
}

.modal_booth_lead {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
  font-feature-settings: "palt";
  color: #eb6036;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .modal_booth_lead {
    font-size: 1.25rem;
    margin-top: 1.5em;
  }
}

.modal_booth_text {
  font-weight: 700;
  line-height: 1.875;
  font-feature-settings: "palt";
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .modal_booth_text {
    font-size: 0.9375rem;
  }
}

.modal_booth_img_wrap {
  position: relative;
  align-self: start;
}

.modal_booth_img {
  aspect-ratio: 420/290;
}
.modal_booth_img img {
  height: 100%;
  object-fit: cover;
}

.modal_booth_char {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
  transform: translate(11%, 30%);
}
.modal_booth_char.-pin01 {
  width: 24.2857142857%;
}
.modal_booth_char.-pin02 {
  width: 34.2857142857%;
  transform: translate(19%, 33%);
}
.modal_booth_char.-pin03 {
  width: 33.3333333333%;
  transform: translate(22%, 34%);
}
.modal_booth_char.-pin04 {
  width: 23.8095238095%;
}
.modal_booth_char.-pin05 {
  width: 35.7142857143%;
  transform: translate(22%, 26%);
}

.modal_booth_note {
  text-align: center;
  font-weight: 700;
  font-size: 0.9375rem;
  font-feature-settings: "palt";
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .modal_booth_note {
    font-size: 0.8125rem;
  }
}

.archive-form {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  justify-content: center;
  align-items: center;
  margin-top: 4.125rem;
}
@media screen and (max-width: 767px) {
  .archive-form {
    margin-top: 3.125rem;
  }
}

.archive-form_column {
  display: flex;
  align-items: center;
  width: 100%;
  height: 3.625rem;
  max-width: 27.75rem;
  border-radius: 62.5rem;
  padding: 0 1.25rem;
}
.archive-form_column input,
.archive-form_column select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background-color: unset;
  box-shadow: none;
  border: none;
  width: 100%;
  height: 100%;
  font-size: 1.25rem;
  font-weight: 500;
  font-family: inherit;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  color: inherit;
}
@media screen and (max-width: 767px) {
  .archive-form_column input,
  .archive-form_column select {
    font-size: 0.875rem;
  }
}
.archive-form_column input:focus,
.archive-form_column select:focus {
  outline: none;
}

.archive-form_search {
  background-color: #fff;
  column-gap: 0.625rem;
}

.archive-form_search_input {
  flex: 1;
}
.archive-form_search_input input::placeholder {
  color: #c2bfbc;
}

.archive-form_search_submit {
  display: block;
  width: 1.5rem;
}

.archive-form_select {
  background-color: #f0909e;
  position: relative;
}
.archive-form_select::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.625rem;
  transform: translateY(-50%);
  width: 1.125rem;
  aspect-ratio: 18/8;
  background: url(/img/pages/icon_select.svg) no-repeat center/contain;
}

/*======================================
    access
======================================*/
.p-access .inner {
  max-width: 62.5rem;
}

.p-access_branch {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .p-access_branch {
    margin-top: 2.5rem;
  }
}

.p-access_branch_title {
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.155em;
  font-feature-settings: "palt";
  line-height: 1.75;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-access_branch_title {
    font-size: 1.125rem;
  }
}

.p-access_branch_map {
  margin: 4rem auto 3.75rem;
  aspect-ratio: 1000/398;
}
@media screen and (max-width: 767px) {
  .p-access_branch_map {
    margin: 2rem auto 1.875rem;
    aspect-ratio: 1/1;
  }
}
.p-access_branch_map iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-access_branch_routes {
  display: grid;
  column-gap: 2.75rem;
  row-gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-access_branch_routes {
    grid-template-columns: repeat(auto-fill, minmax(12.5rem, 1fr));
    max-width: 17.5rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-access_branch_route_link {
  display: flex;
  align-items: center;
  height: 3.625rem;
  width: 100%;
  max-width: 29.75rem;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  border-radius: 62.5rem;
  border: 2px solid #f0909e;
  position: relative;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.75;
  font-feature-settings: "palt";
  color: #505050;
  padding-right: 3.75rem;
  padding-left: 1.875rem;
  column-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .p-access_branch_route_link {
    font-size: 0.75rem;
    padding-right: 2.5rem;
  }
}
.p-access_branch_route_link:hover::before, .p-access_branch_route_link:focus::before {
  transform: translate(10%, -50%);
}
.p-access_branch_route_link::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  transform: translateY(-50%);
  aspect-ratio: 22/18;
  background: url(/img/common/button_arrow_main.svg) no-repeat center/contain;
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .p-access_branch_route_link::before {
    width: 1rem;
  }
}
.p-access_branch_route_link .icon.-car {
  width: 2.25rem;
}
.p-access_branch_route_link .icon.-train {
  width: 1.75rem;
}

.p-access_branch_details {
  margin-top: 3.125rem;
}

.p-access_branch_row {
  position: relative;
  display: grid;
  grid-template-columns: 13.375rem auto;
  align-items: center;
  padding: 0.625rem 0;
}
@media screen and (min-width: 768px) {
  .p-access_branch_row {
    min-height: 6.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-access_branch_row {
    grid-template-columns: 1fr;
    row-gap: 0.625rem;
    padding: 1.25rem 1.25rem;
  }
}
.p-access_branch_row::before, .p-access_branch_row::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #f0909e;
  transform: translateY(-50%);
}
.p-access_branch_row::before {
  top: 0;
}
.p-access_branch_row::after {
  display: none;
}
.p-access_branch_row:last-child::after {
  top: 100%;
  display: block;
}
.p-access_branch_row dt, .p-access_branch_row dd {
  font-size: 1.125rem;
  font-feature-settings: "palt";
  line-height: 1.7222222222;
}
@media screen and (max-width: 767px) {
  .p-access_branch_row dt, .p-access_branch_row dd {
    font-size: 0.875rem;
  }
}
.p-access_branch_row dt {
  text-align: center;
  color: #f0909e;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .p-access_branch_row dt {
    text-align: left;
  }
}
@media screen and (min-width: 768px) {
  .p-access_branch_row dt span.justify {
    display: block;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    min-width: 5em;
    text-align-last: justify;
  }
}
.p-access_branch_row dd {
  font-weight: 500;
  display: flex;
  align-items: center;
  column-gap: 2.5rem;
  flex-wrap: wrap;
  row-gap: 0.625rem;
}
.p-access_branch_row dd a {
  font-weight: inherit;
}
@media screen and (min-width: 768px) {
  .p-access_branch_row dd {
    justify-content: space-between;
  }
}

.p-access_branch_link {
  display: flex;
  align-items: center;
  width: 13.75rem;
  height: 2.8125rem;
  background-color: #f0909e;
  color: #fff;
  border-radius: 62.5rem;
  font-size: 0.875rem;
  font-feature-settings: "palt";
  font-weight: 500;
  letter-spacing: 0.075em;
  line-height: 1.5;
  padding: 0 2.5rem 0 1.25rem;
  position: relative;
  margin-left: auto;
  margin-right: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-access_branch_link {
    margin-right: 0;
    margin-left: 0;
    font-size: 0.625rem;
    height: 1.875rem;
    width: 11.25rem;
  }
}
.p-access_branch_link:hover::before, .p-access_branch_link:focus::before {
  transform: translate(20%, -50%);
}
.p-access_branch_link::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  width: 0.3125rem;
  aspect-ratio: 5/10;
  background: url(/img/common/button_arrow_simple_white.svg) no-repeat center/contain;
  transition: transform 0.3s ease;
}

/*======================================
    faq / qa
======================================*/
.archive-cats {
  display: flex;
  flex-wrap: wrap;
  width: fit-content;
  margin: 3.375rem auto;
  max-width: 100%;
  column-gap: 0.875rem;
  row-gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  .archive-cats {
    margin: 1.875rem auto;
    column-gap: 0.375rem;
    row-gap: 0.3125rem;
  }
}

.p-qa_cats .archive-cat:nth-child(n+2) {
  min-width: 5rem;
}
@media screen and (max-width: 767px) {
  .p-qa_cats .archive-cat:nth-child(n+2) {
    min-width: 6.25rem;
  }
}

.archive-cat {
  cursor: pointer;
}
.archive-cat.current .archive-cat_link {
  background-color: #f0909e;
  color: #fff;
  border-color: #f0909e !important;
}
.archive-cat:first-child {
  width: 5rem;
}
@media screen and (max-width: 767px) {
  .archive-cat:first-child {
    width: 3.125rem;
  }
}
.archive-cat:nth-child(n+2) {
  min-width: 5rem;
}
@media screen and (max-width: 767px) {
  .archive-cat:nth-child(n+2) {
    min-width: 5rem;
  }
}

.archive-cat_link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2em;
  border-radius: 62.5rem;
  background-color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  text-align: center;
  line-height: 1.5;
  padding: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .archive-cat_link {
    font-size: 0.625rem;
  }
}
.archive-cat_link.-border {
  border: 1px solid #f0909e;
}

.p-qa_lists_tab .p-qa_lists {
  display: none;
}
.p-qa_lists_tab .p-qa_lists.show {
  display: block;
}

.p-qa_lists {
  max-width: 60rem;
  margin: 6rem auto;
}
@media screen and (max-width: 767px) {
  .p-qa_lists {
    margin: 3.75rem auto 0;
  }
}

.p-qa_list_dl {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
}
.p-qa_list_dl:nth-child(n+2) {
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-qa_list_dl:nth-child(n+2) {
    margin-top: 1.25rem;
  }
}
.p-qa_list_dl dt, .p-qa_list_dl dd {
  grid-column: 1/2;
  grid-row: 1/2;
  position: relative;
}
.p-qa_list_dl dt {
  display: flex;
  align-items: center;
  column-gap: 1.5rem;
  min-height: 3.75rem;
  border: 2px solid #f0909e;
  border-radius: 62.5rem;
  padding: 0.625rem 4.375rem 0.625rem 2rem;
  color: #505050;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  background-color: #fff;
  transform: translateY(-50%);
  z-index: 2;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-qa_list_dl dt {
    font-size: 0.875rem;
    padding-right: 2.5rem;
    padding-left: 1.25rem;
    column-gap: 0.75rem;
  }
}
.p-qa_list_dl dt::before, .p-qa_list_dl dt::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.75rem;
  width: 0.8125rem;
  height: 2px;
  background-color: #f0909e;
  transform: translate(-50%, -50%);
  transition: transform 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-qa_list_dl dt::before, .p-qa_list_dl dt::after {
    right: 1rem;
  }
}
.p-qa_list_dl dt.active::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-qa_list_dl dt .q img {
  height: 1em;
  object-fit: contain;
}
.p-qa_list_dl dd {
  z-index: 1;
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.5s ease;
  overflow: hidden;
}
.p-qa_list_dl dd a {
  word-break: break-all;
  text-decoration: underline;
  font-weight: inherit;
  color: #f0909e;
}
.p-qa_list_dl dd ul {
  list-style-type: "・";
  margin: 0.625rem 0;
  font-weight: inherit;
}
.p-qa_list_dl dd ul li {
  padding-left: 0.25em;
  margin-left: 0.5em;
  font-weight: inherit;
}
.p-qa_list_dl dd .toggle_contents_wrap {
  overflow: hidden;
  margin-bottom: 2.5rem;
}
.p-qa_list_dl dd .toggle_contents {
  margin-left: 1px;
  margin-right: 1px;
  background-color: #fff;
  padding: 4.375rem 2.5rem 1.25rem;
  line-height: 1.625;
  font-weight: 500;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .p-qa_list_dl dd .toggle_contents {
    padding: 2.5rem 1.25rem 1.25rem;
    font-size: 0.75rem;
  }
}
.p-qa_list_dl dd.active {
  grid-template-rows: 1fr;
}

.p-qa_list_close {
  display: block;
  width: fit-content;
  margin: 2.25rem auto 0;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 2.1428571429;
  color: #f0909e;
}
@media screen and (max-width: 767px) {
  .p-qa_list_close {
    margin-top: 1.25rem;
    font-size: 0.625rem;
  }
}

/*======================================
    information
======================================*/
.p-information_cards {
  margin-top: 4.875rem;
}
@media screen and (max-width: 767px) {
  .p-information_cards {
    margin-top: 2.5rem;
  }
}

.archive-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 6.25rem auto 0;
  column-gap: 0.75rem;
  row-gap: 0.375rem;
}
@media screen and (max-width: 767px) {
  .archive-pagination {
    margin-top: 3.125rem;
    column-gap: 0.375rem;
    row-gap: 0.1875rem;
  }
}

.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 2.67em;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  color: #f0909e;
  font-weight: 700;
  font-feature-settings: "palt";
  font-size: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .page-numbers {
    font-size: 0.625rem;
  }
}
.page-numbers.current {
  background-color: #f0909e;
  color: #fff;
}
.page-numbers.dots {
  background-color: unset;
  color: #f0909e;
}

.article {
  max-width: 70.875rem;
  margin: 2.5rem auto;
  background-color: #fff;
  padding: 5.625rem 2.5rem;
  padding: 2.5rem 1.25rem;
}

.article_inner {
  max-width: 48.875rem;
  margin-left: auto;
  margin-right: auto;
}

.article_title {
  font-size: 1.625rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .article_title {
    font-size: 1.25rem;
  }
}

.article_meta {
  display: flex;
  column-gap: 1.25rem;
  row-gap: 0.625rem;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .article_meta {
    column-gap: 0.625rem;
    row-gap: 0.3125rem;
  }
}
.article_meta .card_cats {
  flex: none;
}

.article_date {
  font-weight: 700;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .article_date {
    font-size: 0.625rem;
  }
}

.article_contents {
  font-feature-settings: "palt";
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 2;
  margin-top: 4.375rem;
}
@media screen and (max-width: 767px) {
  .article_contents {
    margin-top: 2.5rem;
    font-size: 0.875rem;
  }
}
.article_contents h2, .article_contents h3, .article_contents h4, .article_contents h5, .article_contents h6 {
  font-weight: 700;
  margin-top: 1.5em;
  margin-bottom: 1em;
}
.article_contents h2 {
  color: #f0909e;
  padding-left: 0.5em;
  border-left: 0.2em solid #f0909e;
  font-size: 1.25rem;
  line-height: 1.3;
}
.article_contents h3 {
  font-size: 1.125rem;
  padding-bottom: 0.2em;
  position: relative;
}
.article_contents h3::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.5em;
  height: 0.2em;
  background-color: #f0909e;
}
.article_contents h4 {
  color: #f0909e;
  font-size: 1.0625rem;
}
.article_contents h5 {
  font-size: 1rem;
}
.article_contents img {
  height: auto;
  display: block;
  margin: 1.25rem 0;
}
.article_contents p {
  margin-bottom: 2em;
}
.article_contents a {
  transition: color 0.3s ease;
}
.article_contents a:hover, .article_contents a:focus {
  text-decoration: underline;
  color: #f0909e;
}
.article_contents small {
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  display: inline-block;
}
.article_contents .bold,
.article_contents strong {
  font-weight: 700;
  font-size: 1.067em;
}
.article_contents dl {
  display: flex;
  align-items: center;
  column-gap: 1.25rem;
  margin: 1rem auto;
}
@media screen and (max-width: 767px) {
  .article_contents dl {
    flex-direction: column;
    align-items: start;
    row-gap: 0.3125rem;
  }
}
.article_contents dl dt, .article_contents dl dd {
  font-size: 1rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .article_contents dl dt, .article_contents dl dd {
    font-size: 0.875rem;
  }
}
.article_contents dl dt {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.875rem;
  height: 2.5rem;
  min-width: 7.75rem;
  border-radius: 62.5rem;
  color: #f0909e;
  border: 2px solid #f0909e;
}
@media screen and (max-width: 767px) {
  .article_contents dl dt {
    min-width: 3.75rem;
    min-height: 1.25rem;
    height: auto;
  }
}
.article_contents dl dd {
  flex: 1;
}
.article_contents ul, .article_contents ol {
  margin: 1.25rem 0;
}
.article_contents ul li {
  padding-left: 0.75em;
  position: relative;
}
.article_contents ul li::before {
  content: "";
  position: absolute;
  top: 1em;
  left: 0;
  transform: translateY(-50%);
  width: 0.25em;
  height: 0.25em;
  background-color: #f0909e;
  border-radius: 50%;
}
.article_contents ol {
  counter-reset: li;
  margin-left: 0.5em;
}
.article_contents ol li {
  padding-left: 0.5em;
  position: relative;
}
.article_contents ol li::before {
  content: counter(li) ".";
  position: absolute;
  top: 0;
  left: 0;
  color: #f0909e;
  counter-increment: li;
  transform: translateX(-100%);
  text-align: right;
}

.article_pagination {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  max-width: 15.625rem;
  margin: 6.25rem auto 0;
  column-gap: 1.25rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .article_pagination {
    margin-top: 3.125rem;
  }
}

.article_nav {
  height: 1.25rem;
  transition: transform 0.3s ease;
}

.article_prev {
  background: url(/img/pages/pagination_left.svg) no-repeat center left/0.5rem 1.25rem;
}
.article_prev:hover, .article_prev:focus {
  transform: translateX(-5%);
}

.article_archive {
  font-size: 0.9375rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.05e;
  font-feature-settings: "palt";
  color: #f0909e;
}

.article_next {
  background: url(/img/pages/pagination_right.svg) no-repeat center right/0.5rem 1.25rem;
}
.article_next:hover, .article_next:focus {
  transform: translateX(5%);
}

/*======================================
    concept
======================================*/
@media screen and (min-width: 768px) {
  .modal_concept .modal_close {
    margin-bottom: 1.25rem;
  }
}

.modal_concept_title {
  font-size: 2.125rem;
}
.modal_concept_title img {
  height: 1em;
  object-fit: contain;
}

@media screen and (min-width: 768px) {
  .modal_concept_wrap {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    column-gap: 2.5rem;
    margin-top: 3.75rem;
    max-width: 50rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .modal_concept_wrap {
    margin-top: 1.25rem;
  }
}

.modal_concept_logos {
  width: 17rem;
}
@media screen and (min-width: 768px) {
  .modal_concept_logos {
    transform: translate(-2%, 6%);
  }
}
@media screen and (max-width: 767px) {
  .modal_concept_logos {
    width: 8.5rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.modal_concept_logo_char {
  width: 11.5rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5rem;
  transform: translateX(-5%);
}
@media screen and (max-width: 767px) {
  .modal_concept_logo_char {
    margin-bottom: 0.75rem;
    width: 5.75rem;
  }
}

.modal_concept_texts {
  flex: 1;
  display: flex;
  flex-direction: column;
  row-gap: 2.2em;
}
@media screen and (max-width: 767px) {
  .modal_concept_texts {
    margin-top: 1.25rem;
    row-gap: 1.2em;
  }
}

.modal_concept_text {
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 2.2;
  font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  .modal_concept_text {
    font-size: 0.75rem;
    text-align: center;
  }
}

/*======================================
    site policy
======================================*/
.c-policy {
  line-height: 1.875;
  font-feature-settings: "palt";
  text-align: justify;
  font-weight: 500;
  color: #505050;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .c-policy {
    font-size: 0.875rem;
  }
}
.c-policy * {
  font-weight: inherit;
}
.c-policy section {
  margin: 4.375rem 0;
}
@media screen and (max-width: 767px) {
  .c-policy section {
    margin: 3.125rem 0;
  }
}
.c-policy section > section {
  margin: 3.125rem 0;
}
.c-policy .c-policy_title_type01 {
  font-size: 1.75rem;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.8928571429;
  color: #090000;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_title_type01 {
    font-size: 1.25rem;
  }
}
.c-policy .c-policy_title_type02 {
  font-size: 1.25rem;
  font-weight: 700;
  color: #090000;
  font-feature-settings: "palt";
  border-bottom: 2px solid #f0909e;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_title_type02 {
    font-size: 1.125rem;
  }
}
.c-policy .c-policy_title_type03 {
  font-weight: 700;
  color: #090000;
  font-feature-settings: "palt";
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_title_type03 {
    font-size: 1rem;
  }
}
.c-policy .c-policy_title_type04 {
  font-weight: 700;
  color: #090000;
}
.c-policy .c-policy_border_box {
  border: 1px solid #828282;
  border-radius: 0.625rem;
  padding: 1.875rem 2.5rem;
  margin: 1.25rem 0;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_border_box {
    padding: 1.25rem 1.25rem;
  }
}
.c-policy ol,
.c-policy ul {
  margin-top: 1em;
  margin-bottom: 1em;
}
.c-policy ol li > ol,
.c-policy ol li > ul,
.c-policy ul li > ol,
.c-policy ul li > ul {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.c-policy ol.-gap > li:nth-child(n+2),
.c-policy ul.-gap > li:nth-child(n+2) {
  margin-top: 1em;
}
.c-policy ol.c-policy_numbers {
  position: relative;
  counter-reset: li;
}
.c-policy ol.c-policy_numbers li {
  position: relative;
  padding-left: 0.5em;
  margin-left: 1em;
  list-style: none;
}
.c-policy ol.c-policy_numbers li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: inherit;
  counter-increment: li;
  content: counter(li) ".";
  text-align: right;
  transform: translateX(-100%);
}
.c-policy ol.c-policy_numbers_kakko {
  position: relative;
  counter-reset: li;
}
.c-policy ol.c-policy_numbers_kakko li {
  position: relative;
  padding-left: 0.5em;
  margin-left: 1em;
  list-style: none;
}
.c-policy ol.c-policy_numbers_kakko li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: inherit;
  counter-increment: li;
  content: "(" counter(li) ")";
  transform: translateX(-100%);
  text-align: right;
}
.c-policy ul.c-policy_disc li {
  padding-left: 0.75em;
  position: relative;
}
.c-policy ul.c-policy_disc li::before {
  content: "";
  position: absolute;
  top: 1em;
  left: 0;
  transform: translateY(-50%);
  width: 0.25em;
  aspect-ratio: 1/1;
  background-color: #505050;
  border-radius: 50%;
}
.c-policy a {
  word-break: break-all;
  color: #3b80c4;
  text-decoration: underline;
  transition: opacity 0.3s ease;
}
.c-policy a:hover, .c-policy a:focus {
  opacity: 0.7;
}
.c-policy p {
  margin-bottom: 1em;
}
.c-policy .c-policy_table {
  width: 100%;
  table-layout: fixed;
  max-width: 38.75rem;
  border-collapse: collapse;
  margin: 1.25rem 0;
}
.c-policy .c-policy_table.c-policy_table_color {
  max-width: 100%;
}
.c-policy .c-policy_table.c-policy_table_color th {
  background-color: #fbe3e7;
}
.c-policy .c-policy_table th, .c-policy .c-policy_table td {
  font-weight: 500;
  font-feature-settings: "palt";
  line-height: 1.625;
  vertical-align: middle;
  border: 1px solid #828282;
}
.c-policy .c-policy_table th {
  text-align: left;
  padding: 0.75rem 0.625rem 0.75rem 2.25rem;
  width: 12.5rem;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_table th {
    width: 6.25rem;
    padding: 0.75rem 0.375rem;
  }
}
.c-policy .c-policy_table td {
  padding: 0.75rem 1.25rem;
}
@media screen and (max-width: 767px) {
  .c-policy .c-policy_table td {
    padding: 0.75rem 0.375rem;
  }
}
.c-policy .rules ol, .c-policy .rules ul {
  margin-top: 0;
}

.p-policy_title_jp {
  font-size: 2.375rem;
}
@media screen and (min-width: 768px) {
  .p-policy_title_jp.-line {
    font-size: 2.5625rem;
  }
}
.p-policy_title_jp img {
  height: 1em;
  object-fit: contain;
}
/*======================================
    sitemap
======================================*/
.p-sitemap .inner {
  max-width: 58rem;
}
@media screen and (max-width: 767px) {
  .p-sitemap .inner {
    max-width: 13.375rem;
  }
}

.c-sitemap_layout {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.875rem;
  column-gap: 4.375rem;
}
@media screen and (min-width: 768px) {
  .c-sitemap_layout .c-sitemap_list.-ticket {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  .c-sitemap_layout .c-sitemap_list.-park {
    grid-column: 2/3;
    grid-row: 1/3;
  }
  .c-sitemap_layout .c-sitemap_list.-park ul li:nth-child(n+2) {
    margin-top: 1.25rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 767px) {
  .c-sitemap_layout .c-sitemap_list.-park ul li:nth-child(n+2) {
    margin-top: 0.625rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sitemap_layout .c-sitemap_list.-sns {
    grid-column: 1/2;
    grid-row: 3/4;
    margin-top: 3.75rem;
  }
  .c-sitemap_layout .c-sitemap_list.-lang {
    grid-column: 1/2;
    grid-row: 4/5;
  }
  .c-sitemap_layout .c-sitemap_list.-others {
    grid-column: 2/3;
    grid-row: 3/5;
    margin-top: 3.75rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sitemap_layout {
    grid-template-columns: 1fr;
    row-gap: 1.25rem;
  }
}

.c-sitemap_list a,
.c-sitemap_list button {
  transition: opacity 0.3s ease;
}
.c-sitemap_list a:hover, .c-sitemap_list a:focus,
.c-sitemap_list button:hover,
.c-sitemap_list button:focus {
  opacity: 0.7;
}

.c-sitemap_parent {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 2;
  font-feature-settings: "palt";
  border-bottom: 1px solid #828282;
}
@media screen and (max-width: 1024px) {
  .c-sitemap_parent {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sitemap_parent {
    font-size: 0.625rem;
  }
}
.c-sitemap_parent .sm {
  font-size: 0.8em;
  font-weight: 500;
}

.c-sitemap_arrow {
  position: relative;
  border-bottom: 2px solid #f0909e;
  padding: 0.375rem 2.5rem 0.375rem 0;
}
@media screen and (max-width: 767px) {
  .c-sitemap_arrow {
    padding: 0.1875rem 1.25rem 0.1875rem 0;
  }
}
.c-sitemap_arrow:hover::before, .c-sitemap_arrow:focus::before {
  transform: translate(0.375rem, -50%);
}
.c-sitemap_arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.625rem;
  aspect-ratio: 22/18;
  background: url(../img/common/arrow_right_main.svg) no-repeat center/contain;
  width: 1.375rem;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}
@media screen and (max-width: 767px) {
  .c-sitemap_arrow::before {
    width: 0.6875rem;
  }
}

.c-sitemap_sub {
  margin-top: 0.625rem;
  color: #505050;
}
@media screen and (max-width: 767px) {
  .c-sitemap_sub {
    margin-top: 0.3125rem;
  }
}

.c-sitemap_sub_link {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  font-feature-settings: "palt";
}
@media screen and (max-width: 1024px) {
  .c-sitemap_sub_link {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sitemap_sub_link {
    font-size: 0.5rem;
  }
}
.c-sitemap_sub_link a,
.c-sitemap_sub_link button {
  font-weight: inherit;
  font-size: inherit;
}

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