@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
/* =========================
 * Unit / Size
 * ========================= */
/* =========================
 * Spacing / Token
 * ========================= */
/* =========================
 * Z-index
 * ========================= */
/* =========================
 *メディアクエリ
 * ========================= */
/* =========================
 * レイアウト
 * ========================= */
/* =========================
 * Flexbox Center
  * @include flex-center(0);
 * ========================= */
/* =========================
 * タイポグラフィ
 *  通常
 * @include fontSize(14);
 * calc
 * @include fontSize(calc(14px + 0.2vw));
 * clamp
 * @include fontSize(clamp(14px, 1.2vw, 18px));
 * CSS変数
 * @include fontSize(var(--font-size-md));
 * ========================= */
/* =========================
 * Media
  * @include fontSize(14);
 * ========================= */
#body_wrap.is-bg-dark {
  background-color: var(--color_text);
  color: #fff;
}
#body_wrap.is-bg-dark .l-header {
  background-color: #fff;
  color: var(--color_text);
}
#body_wrap.is-bg-dark .l-header .c-gnav > .menu-item:not(.nav_cta) > a {
  color: var(--color_text);
}
#body_wrap.is-bg-dark .l-header .glink {
  color: var(--color_text);
}
#body_wrap.is-bg-dark .l-fixHeader:before {
  background-color: #fff;
}
#body_wrap.is-bg-dark .l-fixHeader .c-gnav > .menu-item:not(.nav_cta) > a {
  color: var(--color_text);
}
#body_wrap.is-bg-dark .l-fixHeader .glink {
  color: var(--color_text);
}

@media screen and (min-width: 961px) {
  .l-container {
    margin-left: auto;
    margin-right: auto;
    max-width: calc(var(--container_size, 0px) + 40px);
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

#body_wrap:not(.blog):not(.page-id-2243) .l-content {
  margin-bottom: 0;
}

.l-content {
  padding-top: 0;
}

.l-mainContent__inner > .post_content {
  margin: 2.4em 0;
}

@media screen and (min-width: 961px) {
  .l-wide {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (min-width: 961px) {
  .l-wide .l-wide__inner {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (min-width: 961px) {
  .l-inner_wide_auto {
    margin-left: calc(50% - 50vw + max(20px, (100vw - 1200px) / 2));
    margin-right: calc(50% - 50vw + max(20px, (100vw - 1440px) / 2));
    padding: 0 20px;
  }
}

.l-article {
  max-width: 100%;
}

.l-section {
  padding-top: 4.5em;
  padding-bottom: 4.5em;
}

.l-inner {
  margin-inline: auto;
  padding-inline: 20px !important;
  max-width: calc(var(--container_size, 0px) + 40px);
}

.l-nav-panel {
  padding-top: 4.5em;
  padding-bottom: 4.5em;
}

@media screen and (min-width: 961px) {
  .l-announcement {
    overflow: hidden;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}

.l-about {
  padding-top: 0.5em;
}

.l-news {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background-image: url("../images/top/news_bg.png");
}
.l-news .p-lv2__heading-wrapper {
  color: #fff;
}

.l-film {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background-color: var(--color_main);
}

@media screen and (min-width: 961px) {
  #body_wrap:not(.is-bg-dark) .gtranslate_wrapper select {
    border: 1px solid #fff;
    color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  }
}

.gtranslate_wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  height: 100%;
  font-size: 0.875rem;
  gap: 0.5em;
}
@media screen and (min-width: 961px) {
  .gtranslate_wrapper {
    margin: 0 0.5em;
  }
}
@media screen and (max-width: 960px) {
  .gtranslate_wrapper {
    font-size: 1.125rem;
  }
}
.gtranslate_wrapper select {
  background-color: transparent;
  border: 1px solid var(--color_text);
  color: var(--color_text);
  border-radius: 0;
  padding: 0.25em 3em 0.25em 1.25em;
  height: 42px;
  border-radius: 555px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%232e2e2e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 10px 6px;
  background-position: right 0.8em center;
}
@media screen and (max-width: 960px) {
  .gtranslate_wrapper select {
    width: 100%;
  }
}
.gtranslate_wrapper select option {
  color: var(--color_text);
  background-color: #fff;
}
.gtranslate_wrapper select option:first-of-type {
  display: none;
}

@media screen and (min-width: 961px) {
  .l-header,
  .l-fixHeader {
    height: 135px;
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 961px) {
  .l-header .l-header__inner,
  .l-header .l-fixHeader__inner,
  .l-fixHeader .l-header__inner,
  .l-fixHeader .l-fixHeader__inner {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .l-header .l-header__logo,
  .l-fixHeader .l-header__logo {
    padding-left: 4vw;
  }
}
@media screen and (max-width: 960px) {
  .l-header .c-headLogo__img,
  .l-fixHeader .c-headLogo__img {
    max-width: 256px;
    width: 100%;
  }
}
.l-header .nav_cta,
.l-fixHeader .nav_cta {
  transition: box-shadow 0.25s;
}
.l-header .nav_cta .ttl,
.l-fixHeader .nav_cta .ttl {
  background-color: var(--color_main);
  padding: 1em 2.75em;
  border-radius: 50px;
  font-weight: 600;
}
.l-header .nav_cta:hover > a::after,
.l-fixHeader .nav_cta:hover > a::after {
  transform: scale(0);
}
.l-header .nav_cta:hover > a .ttl,
.l-fixHeader .nav_cta:hover > a .ttl {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
}
.l-header .c-gnav > li:not(.nav_cta):hover > a .ttl,
.l-fixHeader .c-gnav > li:not(.nav_cta):hover > a .ttl {
  color: var(--color_main);
}

@media screen and (max-width: 960px) {
  .l-fixHeader .l-container {
    padding: 0;
  }
  .l-fixHeader .l-fixHeader__logo {
    padding: 0;
  }
}

.c-spnav .nav_translate {
  margin-top: 1em !important;
}
.c-spnav .nav_translate a::before {
  content: none;
}
@media screen and (max-width: 960px) {
  .c-spnav .nav_cta {
    margin-top: 1em !important;
  }
}
.c-spnav .nav_cta a {
  background-color: var(--color_main);
  padding: 1em 2.75em;
  border-radius: 50px;
  color: #fff;
}
.c-spnav .nav_cta a::before {
  content: none;
}

.bl_footer-info .bl_footer-info__company p {
  font-size: 1.125rem;
}

.l-footer__inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-columns: 1fr 377px;
  padding-top: 80px;
}
@media screen and (max-width: 960px) {
  .l-footer__inner {
    display: block;
  }
}
.l-footer__inner .l-footer__nav-group {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 960px) {
  .l-footer__inner .l-footer__nav-group {
    padding: 2em 0;
  }
}
.l-footer__inner .l-footer__nav {
  justify-content: flex-end;
  row-gap: 30px;
  padding: 0;
}
@media screen and (max-width: 960px) {
  .l-footer__inner .l-footer__nav:not(.l-footer__nav--sub) {
    padding-bottom: 2em;
    display: block;
    border-top: 1px solid #fff;
  }
}
.l-footer__inner .l-footer__nav:first-child a {
  border-left: none;
}
.l-footer__inner .l-footer__nav a {
  font-size: 1rem;
  border-right: none;
}
@media screen and (min-width: 961px) {
  .l-footer__inner .l-footer__nav a::after {
    content: "";
    background-color: #fff;
    width: 100%;
    height: 1px;
  }
  .l-footer__inner .l-footer__nav a:hover {
    text-decoration: unset;
  }
}
.l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a {
  position: relative;
}
@media screen and (min-width: 961px) {
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a {
    padding: 0;
    margin: 0 0.75em;
  }
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a::before, .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
  }
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a::before {
    background-color: rgba(255, 255, 255, 0.35);
  }
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a::after {
    background-color: #fff;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.3s ease;
  }
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a:hover::after, .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a:focus-visible::after {
    transform: scaleX(1);
  }
}
@media screen and (max-width: 960px) {
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a {
    padding: 0.5em 0;
    border-bottom: 1px solid #fff;
  }
  .l-footer__inner .l-footer__nav .menu-item:not(.nav_cta__footer) a::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 12px;
    background-image: url(../images/icon/chevron.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
.l-footer__inner .l-footer__group {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1em;
}
@media screen and (max-width: 960px) {
  .l-footer__inner .l-footer__group {
    justify-content: center;
  }
}
.l-footer__inner .c-widget {
  margin-top: 0;
}
.l-footer__inner .w-footer__box {
  padding: 0;
}
.l-footer__inner .c-iconList {
  margin-bottom: 0;
}
.l-footer__inner .c-iconList__link {
  width: 44px;
  height: 44px;
}
.l-footer__inner .copyright {
  grid-column: span 2/span 2;
  font-size: 0.875rem;
  padding-bottom: 40px;
}
.l-footer__inner .l-footer__nav--sub {
  order: 1;
}
.l-footer__inner .nav_cta__footer {
  transition: box-shadow 0.25s;
}
.l-footer__inner .nav_cta__footer a {
  background-color: var(--color_main);
  padding: 0.4em 1.75em;
  border-radius: 50px;
  padding: 0.5em 2em;
}
@media screen and (max-width: 960px) {
  .l-footer__inner .nav_cta__footer a {
    width: 170px;
    text-align: center;
    padding-top: 0.875em;
    padding-bottom: 0.875em;
  }
}
.l-footer__inner .nav_cta__footer:hover a {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
}

.l-footer__widgetArea .l-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

footer .p-blogParts[data-partsid="50"],
footer .p-blogParts[data-partsid="2307"] {
  display: none;
}

html[lang^=ja] footer .p-blogParts[data-partsid="50"] {
  display: block;
}

html[lang^=en] footer .p-blogParts[data-partsid="2307"] {
  display: block;
}

.swiper-button-prev,
.swiper-button-next {
  background-color: transparent !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  transform: unset !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
}

.swiper-button-prev::after {
  border-bottom: none !important;
  border-left: none !important;
}

.swiper-button-next::after {
  border-right: none !important;
  border-top: none !important;
}

.js-locate-thumb-swiper .swiper-button-prev,
.js-locate-thumb-swiper .swiper-button-next,
.js-film-detail-main-swiper .swiper-button-prev,
.js-film-detail-main-swiper .swiper-button-next {
  width: 36px !important;
  height: 36px !important;
}
.js-locate-thumb-swiper .swiper-button-prev::after,
.js-locate-thumb-swiper .swiper-button-next::after,
.js-film-detail-main-swiper .swiper-button-prev::after,
.js-film-detail-main-swiper .swiper-button-next::after {
  width: 36px !important;
  height: 36px !important;
}
@media screen and (max-width: 960px) {
  .js-locate-thumb-swiper .swiper-button-prev,
  .js-film-detail-main-swiper .swiper-button-prev {
    left: 22px;
  }
}
.js-locate-thumb-swiper .swiper-button-prev::after,
.js-film-detail-main-swiper .swiper-button-prev::after {
  background-image: url("../images/icon/slider_prev.svg");
}
@media screen and (max-width: 960px) {
  .js-locate-thumb-swiper .swiper-button-next,
  .js-film-detail-main-swiper .swiper-button-next {
    right: 22px;
  }
}
.js-locate-thumb-swiper .swiper-button-next::after,
.js-film-detail-main-swiper .swiper-button-next::after {
  background-image: url("../images/icon/slider_next.svg");
}

.p-film-slider .js-film-swiper {
  overflow: visible;
}
.p-film-slider .js-film-swiper .swiper-wrapper {
  align-items: flex-end;
}
.p-film-slider .js-film-swiper .swiper-slide {
  width: 19.53125vw;
  transition: width 0.4s ease, opacity 0.4s ease, transform 0.4s ease;
  transform-origin: center bottom;
  will-change: transform;
}
.p-film-slider .js-film-swiper .swiper-slide.is-lv0 {
  transform: scale(1.43);
  z-index: 4;
}
.p-film-slider .js-film-swiper .swiper-slide.is-lv1 {
  transform: scale(1.21);
  z-index: 3;
}
.p-film-slider .js-film-swiper .swiper-slide.is-lv2 {
  transform: scale(1.03);
  z-index: 2;
}
.p-film-slider .js-film-swiper .swiper-slide.is-lv3 {
  transform: scale(1);
  z-index: 1;
}
.p-film-slider .p-film-list__link {
  display: grid;
  grid-template-rows: auto 2.8em;
  row-gap: 10px;
  height: 100%;
}
.p-film-slider .p-film-list__title {
  line-height: 1.4;
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 1.3125rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 960px) {
  .p-film-slider .p-film-list__title {
    font-size: 1rem;
  }
}
.p-film-slider .p-film-list__thumb img {
  aspect-ratio: 0.7099236641;
  object-fit: cover;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.p-film-slider .js-film-swiper .swiper-button-prev,
.p-film-slider .js-film-swiper .swiper-button-next {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.88);
  color: #333;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-button-prev,
  .p-film-slider .js-film-swiper .swiper-button-next {
    width: 33px;
    height: 33px;
  }
}
.p-film-slider .js-film-swiper .swiper-button-prev::after,
.p-film-slider .js-film-swiper .swiper-button-next::after {
  width: 44px;
  height: 44px;
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-button-prev::after,
  .p-film-slider .js-film-swiper .swiper-button-next::after {
    width: 33px;
    height: 33px;
  }
}
.p-film-slider .js-film-swiper .swiper-button-prev {
  left: -12px;
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-button-prev {
    top: 45%;
    left: 0;
  }
}
.p-film-slider .js-film-swiper .swiper-button-prev::after {
  background-image: url("../images/icon/filmSlider_prev.svg");
}
.p-film-slider .js-film-swiper .swiper-button-next {
  right: -12px;
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-button-next {
    top: 45%;
    right: 0;
  }
}
.p-film-slider .js-film-swiper .swiper-button-next::after {
  background-image: url("../images/icon/filmSlider_next.svg");
}
.p-film-slider .js-film-swiper .swiper-pagination {
  bottom: -2.5em;
}
.p-film-slider .js-film-swiper .swiper-pagination-bullet {
  margin: 0 0.4em !important;
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-pagination-bullet {
    margin: 0 0.2em !important;
  }
}
.p-film-slider .js-film-swiper .swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
  width: 10px;
  height: 10px;
}
@media screen and (max-width: 960px) {
  .p-film-slider .js-film-swiper .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
  }
}
.p-film-slider .js-film-swiper .swiper-pagination-bullet-active {
  background-color: #ffd700;
}
@media screen and (min-width: 961px) {
  .p-film-slider .js-film-swiper .swiper-slide {
    width: 261px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv0 {
    width: 372px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv1 {
    width: 318px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv2 {
    width: 280px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv3 {
    width: 261px;
    transform: none;
  }
}
@media screen and (min-width: 961px) {
  .p-film-slider .js-film-swiper .swiper-slide {
    width: 148px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv0 {
    width: 214px;
    transform: none;
  }
  .p-film-slider .js-film-swiper .swiper-slide.is-lv1 {
    width: 181px;
    transform: none;
  }
}

@media screen and (max-width: 960px) {
  .en-slide-slider {
    position: relative;
    padding-left: 16px;
  }
  .en-slide-slider .swiper {
    overflow: hidden;
    padding-bottom: 2em;
  }
  .en-slide-slider .swiper-slide {
    box-sizing: border-box;
  }
  .en-slide-slider .swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
  }
  .en-slide-slider .swiper-button-prev,
  .en-slide-slider .swiper-button-next {
    width: 20px;
    height: 20px;
  }
  .en-slide-slider .swiper-button-prev::after,
  .en-slide-slider .swiper-button-next::after {
    width: 20px;
    height: 20px;
  }
  .en-slide-slider .swiper-button-prev {
    left: auto;
    right: 45px;
    top: auto;
    bottom: -1.5em;
  }
  .en-slide-slider .swiper-button-prev::after {
    background-image: url("../images/icon/slider_prev.svg");
  }
  .en-slide-slider .swiper-button-next {
    left: auto;
    right: 20px;
    top: auto;
    bottom: -1.5em;
  }
  .en-slide-slider .swiper-button-next::after {
    background-image: url("../images/icon/slider_next.svg");
  }
}
.c-btn-wrapper {
  padding-top: 3.5em;
}
@media screen and (max-width: 960px) {
  .c-btn-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
  }
}
.c-btn-wrapper .c-btn {
  display: inline-block;
  width: 300px;
  height: 80px;
  background-color: var(--color_main);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 50px;
  transition: box-shadow 0.25s;
}
.c-btn-wrapper .c-btn--primary {
  border: 1px solid #fff;
}
.c-btn-wrapper .c-btn {
  transition: box-shadow 0.25s;
}
.c-btn-wrapper .c-btn:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
}
.c-btn-wrapper .c-btn--primary {
  transition: all 0.25s;
}
.c-btn-wrapper .c-btn--primary:hover {
  background-color: #fff;
  color: var(--color_main);
  border: 0;
}

@media screen and (max-width: 960px) {
  .c-tabList {
    justify-content: flex-start;
  }
}
@media screen and (max-width: 960px) {
  .c-tabList .c-tabList__item {
    flex: 0 0 33.333%;
  }
}
.c-tabList .c-tabList__button {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  font-size: 1.125rem;
}
@media screen and (min-width: 961px) {
  .c-tabList .c-tabList__button {
    height: 80px;
  }
}
@media screen and (max-width: 960px) {
  .c-tabList .c-tabList__button {
    font-size: 0.8125rem;
  }
}
.c-tabList .c-tabList__button:before {
  display: none !important;
}

.is-style-balloon > .c-tabList .c-tabList__button[aria-selected=true] {
  border: 1px solid var(--color_main) !important;
}

.is-style-balloon > .c-tabList .c-tabList__button {
  background: transparent;
  border: 1px solid #2a2a2a !important;
}

.swell-block-button a {
  height: 80px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 960px) {
  .swell-block-button a {
    width: 300px;
  }
}
.swell-block-button a span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  height: 100%;
}
.swell-block-button.blue_ a:hover {
  color: var(--color_main) !important;
}

.bl_download-btn span {
  flex-direction: column;
}

.c-arrow_icon {
  display: inline-block;
  width: 50px;
  height: 50px;
  flex: 0 0 auto;
}
@media screen and (max-width: 960px) {
  .c-arrow_icon {
    position: absolute;
    right: 0;
  }
}
@media screen and (max-width: 960px) {
  .c-arrow_icon {
    top: 1em;
  }
}
@media screen and (max-width: 599px) {
  .c-arrow_icon {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 0.25em;
    right: 0;
  }
}

.page-numbers {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  font-size: 1.125rem;
  font-weight: bold;
  color: var(--color_text);
}
@media screen and (max-width: 960px) {
  .page-numbers {
    width: 37px;
    height: 37px;
  }
}

.page-numbers:not(.current) {
  border: 1px solid var(--color_text);
}

.c-pagination__dot {
  color: var(--color_text);
}

#body_wrap.is-bg-dark .page-numbers:not(.current) {
  color: #fff;
  border: 1px solid #fff;
}
#body_wrap.is-bg-dark .c-pagination__dot {
  color: #fff;
}

.p-announcement {
  overflow: hidden;
}
.p-announcement .p-announcement__ttl {
  font-size: 4.625rem;
  font-weight: bold;
  color: var(--color_text);
  position: relative;
  line-height: 1.5;
}
.p-announcement .p-announcement__ttl::after {
  content: "";
  width: 50px;
  height: 50px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("../images/icon/arrow.svg");
  position: absolute;
  top: 50%;
  right: -55px;
  transform: translateY(-50%);
}
@media screen and (max-width: 960px) {
  .p-announcement .p-announcement__ttl {
    font-size: 2.8125rem;
  }
}
@media screen and (max-width: 599px) {
  .p-announcement .p-announcement__ttl {
    font-size: 1.625rem;
  }
}
.p-announcement .p-announcement__subTtl {
  text-align: right;
  display: block;
  line-height: 1;
  padding-right: 0.5em;
  color: #c8c8c8;
  letter-spacing: 0.05em;
  font-size: 1.3125rem;
}
@media screen and (max-width: 960px) {
  .p-announcement .p-announcement__subTtl {
    font-size: 0.875rem;
    text-align: left;
  }
}
.p-announcement .p-announcement__marquee {
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 961px) {
  .p-announcement .p-announcement__track {
    display: flex;
    align-items: center;
    gap: 1em;
    width: max-content;
    animation: announcement-marquee 18s linear infinite;
  }
}
.p-announcement .p-announcement__track:hover {
  animation-play-state: paused;
}
@media screen and (min-width: 961px) {
  .p-announcement .p-announcement__link {
    padding-right: 4rem;
    text-decoration: none;
    white-space: nowrap;
  }
}
@media screen and (max-width: 960px) {
  .p-announcement .p-announcement__link {
    white-space: normal;
    flex-wrap: wrap;
    position: relative;
  }
}
@keyframes announcement-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

.p-about__flex {
  display: flex;
  align-items: center;
  gap: 6em;
}
.p-about__flex .p-about__content {
  flex: 0 0 calc((100% - 6em) * 0.655);
}
.p-about__flex .p-about__content .p-about__features {
  display: flex;
  gap: 1em;
}
@media screen and (max-width: 960px) {
  .p-about__flex .p-about__content .p-about__features {
    gap: 0.25em;
  }
}
.p-about__flex .p-about__content .p-about__features .p-about__feature {
  width: clamp(140px, 8.854vw, 170px);
  height: clamp(140px, 8.854vw, 170px);
  border: 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  box-sizing: border-box;
  padding: 0.6em;
  border-radius: 50%;
  font-size: clamp(1.188rem, 1rem + 0.31vw, 1.375rem);
  text-align: center;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
@media screen and (max-width: 960px) {
  .p-about__flex .p-about__content .p-about__features .p-about__feature {
    width: 84px;
    height: 84px;
    font-size: 0.75rem;
  }
}
.p-about__flex .p-about__image {
  flex: 0 0 calc((100% - 6em) * 0.345);
}

.p-heroMarquee {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: relative;
  --hero-set-width: 106.6667vw;
  --hero-bleed-left: 23.1771vw;
  --hero-bleed-right: 7.2917vw;
  --hero-set-total-width: calc(var(--hero-set-width) + var(--hero-bleed-left) + var(--hero-bleed-right));
  --hero-marquee-duration: 40s;
}
@media screen and (max-width: 960px) {
  .p-heroMarquee {
    --hero-marquee-duration: 50s;
    --hero-set-width: 421vw;
  }
}
.p-heroMarquee .p-heroMarquee__track {
  display: flex;
  width: max-content;
  gap: 0;
  will-change: transform;
  animation: hero-marquee var(--hero-marquee-duration) linear infinite;
  height: 43.5417vw;
}
@media screen and (max-width: 960px) {
  .p-heroMarquee .p-heroMarquee__track {
    gap: 4em;
  }
}
@media screen and (max-width: 960px) {
  .p-heroMarquee .p-heroMarquee__track {
    height: 90dvh;
  }
}
@media screen and (max-width: 599px) {
  .p-heroMarquee .p-heroMarquee__track {
    height: 80dvh;
  }
}
.p-heroMarquee .p-heroMarquee__item .p-heroMarquee__ttl {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  font-size: 0.875rem;
  line-height: 1.5;
}
.p-heroMarquee .p-heroMarquee__item .p-heroMarquee__ttl .p-heroMarquee__label {
  font-size: 0.75rem;
  font-style: italic;
}

.p-heroMarquee__set {
  position: relative;
  flex: 0 0 var(--hero-set-total-width);
  width: var(--hero-set-total-width);
  box-sizing: border-box;
  padding-left: var(--hero-bleed-left);
  padding-right: var(--hero-bleed-right);
  height: 43.5417vw;
  overflow: visible;
  isolation: isolate;
}
@media screen and (max-width: 960px) {
  .p-heroMarquee__set {
    height: 90dvh;
  }
}
@media screen and (max-width: 599px) {
  .p-heroMarquee__set {
    height: 80dvh;
  }
}

.p-heroMarquee__item {
  position: absolute;
  margin: 0;
  translate: var(--hero-bleed-left) 0;
}

.p-heroMarquee__item img {
  display: block;
  width: 100%;
  height: auto;
}

.p-heroMarquee__copy {
  position: absolute;
  top: 4.2083vw;
  right: 24%;
  writing-mode: vertical-rl;
  font-size: 1.125rem;
  font-weight: bold;
  letter-spacing: 0.3em;
  z-index: 3;
}
@media screen and (max-width: 960px) {
  .p-heroMarquee__copy {
    right: 35.5%;
  }
}

.item-01 {
  bottom: 8.9063vw;
  left: -23.1771vw;
  z-index: 2;
}
.item-01 img {
  width: 31.6667vw;
  height: 17.8125vw;
}
@media screen and (max-width: 960px) {
  .item-01 img {
    width: 103.6154vw;
    height: 62.359vw;
  }
}
@media screen and (max-width: 599px) {
  .item-01 img {
    width: 114.6154vw;
    height: 64.359vw;
  }
}

.item-02 {
  top: 3.6458vw;
  left: -3.8542vw;
  z-index: 2;
}
.item-02 img {
  width: 16.6667vw;
  height: 9.375vw;
}
@media screen and (max-width: 960px) {
  .item-02 img {
    width: 54.4103vw;
    height: 29.7949vw;
  }
}
@media screen and (max-width: 599px) {
  .item-02 img {
    width: 56.4103vw;
    height: 31.7949vw;
  }
}

.item-03 {
  top: 29%;
  left: 20.5%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
.item-03::before {
  content: "";
  display: inline-block;
  width: 3.5417vw;
  height: 3.5417vw;
  background-image: url(../images/hero/hero_triangle01.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -2.1875vw;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-03::before {
    width: 9.4872vw;
    height: 9.4872vw;
  }
}
@media screen and (max-width: 960px) {
  .item-03::before {
    top: -11.0417vw;
  }
}
@media screen and (max-width: 599px) {
  .item-03::before {
    top: -21.0417vw;
  }
}
.item-03::after {
  content: "";
  display: inline-block;
  width: 5.0521vw;
  height: 5.0521vw;
  background-image: url(../images/hero/hero_triangle02.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.0417vw;
  right: 0.6771vw;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-03::after {
    width: 15.3846vw;
    height: 15.3846vw;
    top: -11.0417vw;
  }
}
.item-03 img {
  width: 22.5vw;
  height: 12.6563vw;
}
@media screen and (max-width: 960px) {
  .item-03 img {
    width: 81.3333vw;
    height: 44.9231vw;
  }
}
@media screen and (max-width: 599px) {
  .item-03 img {
    width: 83.3333vw;
    height: 46.9231vw;
  }
}

.item-04 {
  bottom: 6%;
  left: 16%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.item-04::before {
  content: "";
  display: inline-block;
  width: 7.5521vw;
  height: 7.5521vw;
  background-image: url(../images/hero/hero_triangle03.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -70%;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-04::before {
    width: 27.4359vw;
    height: 27.6923vw;
    top: -100%;
    transform: translateY(-50%);
  }
}
.item-04 img {
  width: 16.6667vw;
  height: 9.375vw;
}
@media screen and (max-width: 960px) {
  .item-04 img {
    width: 54.4103vw;
    height: 29.7949vw;
  }
}
@media screen and (max-width: 599px) {
  .item-04 img {
    width: 56.4103vw;
    height: 31.7949vw;
  }
}

.item-05 {
  top: 22%;
  left: 43%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.item-05::before {
  content: "";
  display: inline-block;
  width: 10.4167vw;
  height: 10.4167vw;
  background-image: url(../images/hero/hero_triangle04.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -9.2188vw;
  left: 0.7813vw;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-05::before {
    width: 35.1282vw;
    height: 35.1282vw;
  }
}
@media screen and (max-width: 599px) {
  .item-05::before {
    bottom: -42.2188vw;
  }
}
.item-05 img {
  width: 31.6667vw;
  height: 17.8125vw;
}
@media screen and (max-width: 960px) {
  .item-05 img {
    width: 101.8718vw;
    height: 60.6154vw;
  }
}
@media screen and (max-width: 599px) {
  .item-05 img {
    width: 114.8718vw;
    height: 64.6154vw;
  }
}

.item-06 {
  bottom: 37%;
  left: 31%;
  transform: translate(-50%, 50%);
  z-index: 2;
}
.item-06::before {
  content: "";
  display: inline-block;
  width: 9.6354vw;
  height: 9.6354vw;
  background-image: url(../images/hero/hero_triangle05.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -10.7813vw;
  left: -2.9688vw;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-06::before {
    width: 37.9487vw;
    height: 37.9487vw;
  }
}
@media screen and (max-width: 599px) {
  .item-06::before {
    bottom: -43.7813vw;
  }
}
.item-06 img {
  width: 16.6667vw;
  height: 9.375vw;
}
@media screen and (max-width: 960px) {
  .item-06 img {
    width: 54.4103vw;
    height: 31.7949vw;
  }
}
@media screen and (max-width: 599px) {
  .item-06 img {
    width: 56.4103vw;
    height: 31.7949vw;
  }
}

.item-07 {
  bottom: 2%;
  right: 52.5%;
  transform: translate(50%, -50%);
  z-index: 2;
}
.item-07 img {
  width: 22.5vw;
  height: 12.6563vw;
}
@media screen and (max-width: 960px) {
  .item-07 img {
    width: 79.0769vw;
    height: 42.6667vw;
  }
}
@media screen and (max-width: 599px) {
  .item-07 img {
    width: 83.0769vw;
    height: 46.6667vw;
  }
}

.item-08 {
  top: 26%;
  right: 31%;
  transform: translate(50%, -50%);
  z-index: 2;
}
.item-08::before {
  content: "";
  display: inline-block;
  width: 11.5625vw;
  height: 11.5625vw;
  background-image: url(../images/hero/hero_triangle06.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.9792vw;
  left: 36%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-08::before {
    width: 42.0513vw;
    height: 42.3077vw;
  }
}
@media screen and (max-width: 960px) and (max-width: 599px) {
  .item-08::before {
    top: auto;
    bottom: -15vw;
  }
}
.item-08 img {
  width: 16.6667vw;
  height: 9.375vw;
}
@media screen and (max-width: 960px) {
  .item-08 img {
    width: 82.0769vw;
    height: 44.6667vw;
  }
}
@media screen and (max-width: 599px) {
  .item-08 img {
    width: 83.0769vw;
    height: 46.6667vw;
  }
}

.item-09 {
  bottom: 38%;
  right: 28.5%;
  transform: translate(50%, 50%);
  z-index: 2;
}
.item-09::before {
  content: "";
  display: inline-block;
  width: 19.4792vw;
  height: 19.5313vw;
  background-image: url(../images/hero/hero_triangle07.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 26%;
  left: -4.5313vw;
  z-index: -1;
}
@media screen and (max-width: 960px) {
  .item-09::before {
    width: 71.2821vw;
    height: 71.2821vw;
    top: auto;
    left: -13.5313vw;
    bottom: -9vw;
  }
}
.item-09 img {
  width: 22.5vw;
  height: 12.6563vw;
}
@media screen and (max-width: 960px) {
  .item-09 img {
    width: 81.0769vw;
    height: 44.6667vw;
  }
}
@media screen and (max-width: 599px) {
  .item-09 img {
    width: 83.0769vw;
    height: 46.6667vw;
  }
}

.item-10 {
  top: 2.1354vw;
  right: 10.4167vw;
  z-index: 2;
}
.item-10 img {
  width: 16.6667vw;
  height: 9.375vw;
}
@media screen and (max-width: 960px) {
  .item-10 img {
    width: 81.0769vw;
    height: 44.6667vw;
  }
}
@media screen and (max-width: 599px) {
  .item-10 img {
    width: 83.0769vw;
    height: 46.6667vw;
  }
}

@keyframes hero-marquee {
  from {
    transform: translateX(calc(var(--hero-bleed-left) * -1));
  }
  to {
    transform: translateX(calc(var(--hero-bleed-left) * -1 + -1 * var(--hero-set-total-width)));
  }
}
.p-heroMarquee:hover .p-heroMarquee__track {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  .p-heroMarquee .p-heroMarquee__track {
    animation: none;
  }
}
@media screen and (max-width: 960px) {
  .item-01 {
    bottom: 0;
    left: -16.9%;
  }
  .item-02 {
    top: 11.37%;
    left: -2.81%;
  }
  .item-03 {
    top: 35%;
    left: 20.5%;
  }
  .item-04 {
    bottom: 5%;
    left: 16%;
    transform: translate(-50%, 0);
  }
  .item-05 {
    top: 29%;
    left: 45%;
  }
  .item-06 {
    bottom: 15%;
    left: 31%;
    transform: translate(-50%, 0);
  }
  .item-07 {
    bottom: 2%;
    right: 52.5%;
    transform: translate(50%, 0);
  }
  .item-08 {
    top: 26%;
    right: 31%;
  }
  .item-09 {
    right: 28.5%;
    bottom: 0;
    transform: translate(50%, 0);
  }
  .item-10 {
    top: 4.9%;
    right: 1.6%;
  }
}
.p-nav-panel__title-wrapper {
  display: flex;
  align-self: stretch;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  overflow: hidden;
  padding-left: 3.125vw;
  border-radius: clamp(12px, 1.3021vw, 25px);
}
@media screen and (max-width: 599px) {
  .p-nav-panel__title-wrapper {
    display: grid;
    grid-template-columns: clamp(120px, 16%, 160px) 1fr;
    padding-left: 1em;
    border-radius: 17px;
  }
}
.p-nav-panel__title-wrapper .p-nav-panel__title {
  font-size: clamp(1.125rem, 0.937rem + 0.31vw, 1.313rem);
  font-weight: 600;
}
@media screen and (max-width: 960px) {
  .p-nav-panel__title-wrapper .p-nav-panel__title {
    font-size: 1rem;
  }
}
.p-nav-panel__title-wrapper > picture {
  display: block;
  align-self: stretch;
  flex-shrink: 0;
  overflow: hidden;
}
.p-nav-panel__title-wrapper > picture > img {
  height: 100%;
  display: block;
  object-fit: cover;
}

.l-grid-2 {
  display: flex;
  gap: 2em;
}
@media screen and (max-width: 960px) {
  .l-grid-2 {
    flex-direction: column;
  }
}
.l-grid-2 .p-nav-panel__links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 1em;
  border-radius: 25px;
}
@media screen and (max-width: 960px) {
  .l-grid-2 .p-nav-panel__links {
    grid-template-columns: 1fr;
    border-radius: 15px;
  }
}
.l-grid-2 .p-nav-panel__links .p-nav-panel__link a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 1.5em 0.5em;
  column-gap: 1em;
  row-gap: 1.5em;
  font-size: clamp(0.688rem, 0.374rem + 0.52vw, 1rem);
}
@media screen and (max-width: 960px) {
  .l-grid-2 .p-nav-panel__links .p-nav-panel__link a {
    padding: 1em 0.5em;
  }
}
.l-grid-2 .p-nav-panel__link-icon {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.p-nav-panel--producer {
  flex: 0 0 calc((100% - 2em) * 0.6);
}
.p-nav-panel--producer .p-nav-panel__title {
  color: #fff;
}
.p-nav-panel--producer .p-nav-panel__links {
  background-color: var(--color_main);
}
@media screen and (max-width: 960px) {
  .p-nav-panel--producer .p-nav-panel__links {
    display: block;
  }
}
@media screen and (min-width: 961px) {
  .p-nav-panel--producer .p-nav-panel__title-wrapper > picture > img {
    width: 22.6042vw;
  }
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(1) {
  border-bottom: 1px solid #fff;
}
@media screen and (min-width: 961px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(1) {
    border-right: 1px solid #fff;
  }
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(1) .p-nav-panel__link-icon img {
  width: clamp(1.125rem, 0.982rem + 0.59vw, 1.688rem);
  height: clamp(1.125rem, 0.982rem + 0.59vw, 1.688rem);
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(2) {
  border-bottom: 1px solid #fff;
}
@media screen and (min-width: 961px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(2) {
    border-right: 1px solid #fff;
  }
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(2) .p-nav-panel__link-icon img {
  width: clamp(1.625rem, 1.466rem + 0.65vw, 2.25rem);
  height: clamp(0.938rem, 0.842rem + 0.39vw, 1.313rem);
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(3) {
  border-bottom: 1px solid #fff;
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(3) .p-nav-panel__link-icon img {
  width: clamp(1.188rem, 1.06rem + 0.52vw, 1.688rem);
  height: clamp(1.125rem, 0.934rem + 0.78vw, 1.875rem);
}
@media screen and (min-width: 961px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(4) {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 960px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(4) {
    border-bottom: 1px solid #fff;
  }
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(4) .p-nav-panel__link-icon img {
  width: clamp(1.563rem, 1.339rem + 0.92vw, 2.438rem);
  height: clamp(1.188rem, 1.108rem + 0.33vw, 1.5rem);
}
@media screen and (min-width: 961px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(5) {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 960px) {
  .p-nav-panel--producer .p-nav-panel__link:nth-child(5) {
    border-bottom: 1px solid #fff;
  }
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(5) .p-nav-panel__link-icon img {
  width: clamp(1.438rem, 1.278rem + 0.65vw, 2.063rem);
  height: clamp(1.063rem, 0.935rem + 0.52vw, 1.563rem);
}
.p-nav-panel--producer .p-nav-panel__link:nth-child(6) .p-nav-panel__link-icon img {
  width: clamp(0.938rem, 0.874rem + 0.26vw, 1.188rem);
  height: clamp(1.5rem, 1.388rem + 0.46vw, 1.938rem);
}
.p-nav-panel--producer .p-nav-panel__link a {
  color: #fff;
}
.p-nav-panel--producer .p-nav-panel__title-wrapper {
  background-color: var(--color_main);
}

.p-nav-panel--location {
  flex: 0 0 calc((100% - 2em) * 0.4);
}
@media screen and (min-width: 961px) {
  .p-nav-panel--location .p-nav-panel__title-wrapper > picture > img {
    width: 16.0938vw;
  }
}
.p-nav-panel--location .p-nav-panel__title {
  color: var(--color_text);
}
.p-nav-panel--location .p-nav-panel__links {
  background-color: #ffd700;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 960px) {
  .p-nav-panel--location .p-nav-panel__links {
    display: block;
  }
}
@media screen and (min-width: 961px) {
  .p-nav-panel--location .p-nav-panel__link:nth-child(1) {
    border-right: 1px solid #fff;
  }
}
.p-nav-panel--location .p-nav-panel__link:nth-child(1) {
  border-bottom: 1px solid #fff;
}
.p-nav-panel--location .p-nav-panel__link:nth-child(1) .p-nav-panel__link-icon img {
  width: clamp(1.625rem, 1.466rem + 0.65vw, 2.25rem);
  height: clamp(0.938rem, 0.842rem + 0.39vw, 1.313rem);
}
.p-nav-panel--location .p-nav-panel__link:nth-child(2) {
  border-bottom: 1px solid #fff;
}
.p-nav-panel--location .p-nav-panel__link:nth-child(2) .p-nav-panel__link-icon img {
  width: clamp(0.875rem, 0.732rem + 0.59vw, 1.438rem);
  height: clamp(1.313rem, 1.137rem + 0.72vw, 2rem);
}
.p-nav-panel--location .p-nav-panel__link:nth-child(3) {
  grid-column: span 2/span 2;
}
.p-nav-panel--location .p-nav-panel__link:nth-child(3) .p-nav-panel__link-icon img {
  width: clamp(1.438rem, 1.278rem + 0.65vw, 2.063rem);
  height: clamp(1.063rem, 0.935rem + 0.52vw, 1.563rem);
}
.p-nav-panel--location .p-nav-panel__link a {
  color: var(--color_text);
}
.p-nav-panel--location .p-nav-panel__title-wrapper {
  background-color: #ffd700;
}

.post_content :not(pre).bl_form-list h2 {
  display: flex;
  line-height: 2;
}
.post_content :not(pre).bl_form-list h2 code {
  background-color: var(--color_main);
  border-radius: 50%;
  color: #fff;
  width: 39px;
  height: 39px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  margin-left: 0;
}

.bl_contact-tabList .c-tabBody {
  margin-top: 2em;
}

.bl_form-note .swl-inline-icon:after {
  background: var(--color_main) !important;
}

.bl_contactArea {
  padding: 3.1em 7.9em;
  border-radius: 20px;
}

.bl_contact-phone span {
  font-size: 2.25rem;
}

.bl_contact-info {
  align-items: flex-end;
  gap: 0.5em;
}
@media screen and (max-width: 960px) {
  .bl_contact-info {
    flex-direction: column;
    align-items: flex-start;
  }
  .bl_contact-info .u-mb-5 {
    line-height: 1 !important;
  }
}

.p-contactForm .p-contactForm__row {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 1.75em;
  margin-bottom: 32px;
  align-items: center;
}
.p-contactForm .p-contactForm__row.p-contactForm__row--textarea {
  align-items: start;
}
@media screen and (max-width: 960px) {
  .p-contactForm .p-contactForm__row {
    grid-template-columns: 1fr;
    gap: 1em;
  }
}
.p-contactForm .p-contactForm__label {
  font-weight: 700;
}
.p-contactForm .p-contactForm__label .is-required {
  color: var(--color_main);
  margin-left: 0.2em;
}
.p-contactForm .p-contactForm__field input[type=file] {
  border: 0;
  cursor: pointer;
}
.p-contactForm .p-contactForm__input,
.p-contactForm .p-contactForm__textarea {
  width: 100%;
  border: 1px solid var(--color_text);
  border-radius: 999px;
  padding: 20px 30px;
  background: #fff;
  box-sizing: border-box;
  font-size: 1rem;
}
.p-contactForm .p-contactForm__input::placeholder,
.p-contactForm .p-contactForm__textarea::placeholder {
  color: #c8c8c8;
}
.p-contactForm .p-contactForm__input {
  height: 50px;
}
.p-contactForm .p-contactForm__textarea {
  min-height: 240px;
  border-radius: 5px;
  padding: 20px 30px;
  resize: vertical;
}
.p-contactForm .p-contactForm__notice {
  margin: 56px 0 20px;
  font-weight: 700;
}
.p-contactForm .p-contactForm__agreementBox {
  border: 1px solid var(--color_text);
  border-radius: 24px;
  overflow: hidden;
  padding-top: 24px;
  padding-bottom: 24px;
  padding-right: 15px;
  background-color: #fff;
}
.p-contactForm .p-contactForm__agreementInner {
  height: 245px;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 24px;
  box-sizing: border-box;
  scrollbar-width: thin;
  /* Firefox */
  scrollbar-color: var(--color_main) #e6e6e6;
  /* Firefox */
}
.p-contactForm .p-contactForm__agreementInner h2 {
  margin: 1em 0 0.5em;
  font-size: 1.3125rem;
}
.p-contactForm .p-contactForm__agreementInner::-webkit-scrollbar-track {
  background: #e6e6e6;
  border-radius: 999px;
}
.p-contactForm .p-contactForm__agreementInner::-webkit-scrollbar-thumb {
  background: var(--color_main);
  border-radius: 999px;
  border: 2px solid #e6e6e6;
}
.p-contactForm .p-contactForm__submit {
  margin: 2em auto;
}
.p-contactForm .p-contactForm__submit .p-contactForm__submitBtn {
  width: 300px;
  height: 80px;
  border: none;
  border-radius: 999px;
  background: var(--color_main);
  color: #fff;
  font-weight: bold;
  font-size: 1.125rem;
  cursor: pointer;
  transition: box-shadow 0.25s;
}
.p-contactForm .p-contactForm__submit .p-contactForm__submitBtn:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 12px 24px -12px rgba(0, 0, 0, 0.2);
  opacity: 1;
}
.p-contactForm .p-contactForm__radio .wpcf7-list-item-label {
  font-weight: bold;
}
.p-contactForm .p-contactForm__note {
  font-size: 1rem;
  color: #747373;
  padding: 10px 20px 0;
}
.p-contactForm .p-contactForm__checkGenre .p-contactForm__input {
  margin-top: 1em;
}
.p-contactForm .p-contactForm__checkGenre .p-contactForm__input:disabled {
  cursor: not-allowed;
  background: #f5f5f5;
  opacity: 1;
}
.p-contactForm .wpcf7-not-valid-tip {
  font-size: 1rem;
}
.p-contactForm .contact-note-strong {
  font-size: 1.3125rem;
}
.p-contactForm .p-contactForm__bottomNote.-tel {
  margin-top: 0.5em;
}

.bl_supportReq {
  gap: 15px;
}
.bl_supportReq .bl_support_point {
  width: clamp(140px, 8.854vw, 170px);
  height: clamp(140px, 8.854vw, 170px);
  border: 1px solid var(--color_text);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 50%;
}
.bl_supportReq .bl_support_point p {
  font-size: 1.3125rem;
}
@media screen and (max-width: 960px) {
  .bl_supportReq .bl_support_point {
    width: 100px;
    height: 100px;
  }
}

@media screen and (min-width: 961px) {
  .page-id-47 .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}

.bl_about-intro {
  margin-bottom: 200px;
}
@media screen and (max-width: 960px) {
  .bl_about-intro {
    margin-bottom: 100px;
  }
}

.bl_about {
  margin-bottom: 200px;
}
.bl_about .wp-block-media-text__content {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1em 0 2em;
}
@media screen and (max-width: 599px) {
  .bl_about .wp-block-media-text__content .wp-block-group {
    max-width: fit-content;
    margin: 0 auto;
  }
}
.bl_about code {
  background-color: unset !important;
  border: 0 !important;
  color: var(--color_main) !important;
  font-size: 2.25rem !important;
}
.bl_about h2 {
  font-size: 2.875rem;
  margin-bottom: 100px;
  font-weight: 600;
}
@media screen and (max-width: 960px) {
  .bl_about h2 {
    font-size: 1.3125rem;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 599px) {
  .bl_about h2 {
    text-align: center;
  }
}
@media screen and (max-width: 599px) {
  .bl_about p {
    text-align: center;
  }
}
.bl_about .swell-block-button {
  margin: 0;
}
@media screen and (max-width: 599px) {
  .bl_about .swell-block-button {
    margin: 2em auto 0;
  }
}

.bl_about-left .wp-block-media-text__content {
  align-items: flex-end;
}

.bl_about-right .wp-block-media-text__content {
  align-items: flex-start;
}

.bl_about-1 {
  position: relative;
}
@media screen and (min-width: 961px) {
  .bl_about-1::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 120px;
    background-image: url(../images/bg_typography.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: -20%;
    z-index: -1;
  }
}
.bl_about-1 .wp-block-media-text__media {
  position: relative;
}
@media screen and (min-width: 961px) {
  .bl_about-1 .wp-block-media-text__media::before {
    content: "";
    display: inline-block;
    width: 26.46vw;
    height: 26.51vw;
    background-image: url("../images/about/triangle_blue.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -50px;
    left: -50px;
    z-index: -1;
  }
}

.bl_about-2 .wp-block-media-text__media {
  position: relative;
}
@media screen and (min-width: 961px) {
  .bl_about-2 .wp-block-media-text__media::before {
    content: "";
    display: inline-block;
    width: 44.64vw;
    height: 44.74vw;
    background-image: url("../images/about/triangle_yellow.svg");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -50px;
    left: 50%;
    z-index: -1;
  }
}

.bl_about-3 {
  position: relative;
}
@media screen and (min-width: 961px) {
  .bl_about-3::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 120px;
    background-image: url(../images/bg_typography.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
  }
}

.bl_about-info .swell-block-dl {
  row-gap: 2.8em;
}
@media screen and (max-width: 960px) {
  .bl_about-info .swell-block-dl {
    display: block;
  }
}
.bl_about-info .swell-block-dl__dt {
  padding-right: 0;
}
.bl_about-info .swell-block-dl__dt:after {
  display: none;
}
@media screen and (max-width: 960px) {
  .bl_about-info .swell-block-dl__dd {
    margin-bottom: 1em;
  }
}

@media screen and (min-width: 961px) {
  .page-id-2243 .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}

.bl_en-contents {
  position: relative;
}
.bl_en-contents::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 140px;
  background-image: url(../images/bg_typography.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.bl_en-column .wp-block-image img {
  width: 100%;
  border-radius: 15px;
}

.bl_en-access h3 {
  padding-left: 0.5em;
  position: relative;
}
.bl_en-access h3::before {
  content: "";
  background-color: var(--color_main);
  width: 4px;
  height: 18px;
  display: inline-block;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.bl_en-access h3 {
  font-size: 1.3125rem;
}
.bl_en-access .has-inline-color {
  display: inline-block;
  padding: 0.25em 0.5em;
  width: 100%;
  border-radius: 10px;
}
.bl_en-access .bl_en-accessInline {
  gap: 0.5em !important;
}
.bl_en-access .bl_en-accessInline .wp-block-columns {
  gap: 0.5em !important;
}
.bl_en-access .bl_en-accessInline .wp-block-columns .wp-block-image img {
  vertical-align: middle;
}

.p-searchLabels {
  margin-top: 20px;
}

.p-searchLabels__title {
  margin: 0 0 8px;
  font-size: 0.875rem;
  font-weight: 700;
  color: #666;
}

.p-searchLabels__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.p-searchLabels__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--color_main);
  font-size: 0.8125rem;
  line-height: 1.4;
}

.p-searchLabels__label {
  font-weight: bold;
}

.p-searchResultCount {
  margin: 12px 0 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fff;
}

body,
.post_content :not(pre) > code {
  font-size: 1.125rem;
  line-height: 2;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 960px) {
  body,
  .post_content :not(pre) > code {
    font-size: 1rem;
  }
}

#body_wrap.home {
  font-size: 1.125rem;
}
@media screen and (max-width: 960px) {
  #body_wrap.home {
    font-size: 1rem;
  }
}

.font-mincho {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

.p-lv2__heading-wrapper {
  position: relative;
  padding: 3.5em 0;
}
@media screen and (max-width: 960px) {
  .p-lv2__heading-wrapper {
    padding: 3em 0;
  }
}
.p-lv2__heading-wrapper .p-lv2__label {
  font-size: 4.0625rem;
  color: rgba(46, 46, 46, 0.15);
  font-family: "Noto Serif JP", serif;
  white-space: nowrap;
}
@media screen and (max-width: 960px) {
  .p-lv2__heading-wrapper .p-lv2__label {
    font-size: 3.25rem;
  }
}
.p-lv2__heading-wrapper .p-lv2__label--primary {
  color: rgba(0, 110, 218, 0.4);
}
.p-lv2__heading-wrapper .p-lv2__label--white {
  color: rgba(255, 255, 255, 0.3);
}
.p-lv2__heading-wrapper .p-lv2__heading {
  font-size: 2rem;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  .p-lv2__heading-wrapper .p-lv2__heading {
    font-size: 1.4375rem;
  }
}

.p-lv2__text {
  padding-bottom: 3.5em;
}

.c-pageTitle {
  font-size: 1.875rem;
  border-bottom: 1px solid transparent !important;
  font-weight: 600;
}
.c-pageTitle:after {
  display: none;
}
.c-pageTitle .c-pageTitle__inner {
  padding-left: 0 !important;
  border-bottom: 1px solid transparent !important;
  float: unset !important;
}

.c-postTitle__ttl {
  font-size: 1.75rem;
  font-weight: 600;
}
@media screen and (max-width: 960px) {
  .c-postTitle__ttl {
    font-size: 1.4375rem;
  }
}

.c-postTitle {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.c-postTitle__ttl {
  font-size: 1.875rem;
}

.c-postTitle__ttl-sub {
  font-size: 1.75rem;
  font-weight: 600;
}

.c-postTitle__ttl-en {
  font-size: 1rem;
}

.c-pageTitle,
.c-postTitle {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
}
@media screen and (min-width: 961px) {
  .c-pageTitle,
  .c-postTitle {
    white-space: nowrap;
  }
}

.single:not(.single-post):not(.single-creator):not(.single-film):not(.single-locate) .c-postTitle__ttl-subWrap {
  position: relative;
  font-family: "Noto Serif JP", serif;
}

.single:not(.single-post):not(.single-creator):not(.single-film):not(.single-locate) .c-postTitle__ttl-subWrap {
  white-space: nowrap;
}

.c-pageTitle__subTitle {
  font-size: 4.0625rem;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  margin-left: 0;
  font-style: normal;
  font-weight: 500;
}
@media screen and (max-width: 960px) {
  .c-pageTitle__subTitle {
    font-size: 2.125rem;
  }
}

.post_content > h2 {
  margin-left: 0;
  margin-right: 0;
}

.p-related-links {
  background-color: #fff;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  color: var(--color_text);
  padding-top: 3em;
}
@media screen and (max-width: 960px) {
  .p-related-links {
    padding-top: 6em;
  }
}
.p-related-links .p-related-links__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 50px;
}
@media screen and (max-width: 960px) {
  .p-related-links .p-related-links__grid {
    gap: 25px;
    grid-template-columns: 1fr;
  }
}
.p-related-links .p-related-links__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border: 1px solid var(--color_text);
  border-radius: 8px;
  padding: 0.25em;
}
@media screen and (max-width: 960px) {
  .p-related-links .p-related-links__item:not(.grid-item-5) {
    height: 90px;
  }
}
@media screen and (max-width: 599px) {
  .p-related-links .p-related-links__item img {
    max-width: 250px;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-1 {
    order: 0;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-2 {
    order: 1;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-3 {
    order: 2;
  }
}
@media screen and (min-width: 961px) {
  .p-related-links .grid-item-4 {
    grid-column: span 3/span 3;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-4 {
    order: 3;
  }
}
@media screen and (min-width: 961px) {
  .p-related-links .grid-item-5 {
    grid-column: span 2/span 2;
    grid-row-start: 3;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-5 {
    order: 5;
  }
}
@media screen and (min-width: 961px) {
  .p-related-links .grid-item-6 {
    grid-column-start: 3;
    grid-row-start: 3;
    height: 90px;
  }
}
@media screen and (max-width: 960px) {
  .p-related-links .grid-item-6 {
    order: 4;
  }
}

.p-related-links.is-no-before-footer-widget {
  padding-bottom: 5em;
}

.w-beforeFooter {
  padding: 6em 0 3.5em;
  margin: 0 auto;
  background-color: #fff;
}

.p-breadcrumb {
  margin-top: 200px;
  font-weight: bold;
}
@media screen and (max-width: 960px) {
  .p-breadcrumb {
    margin-top: 2em;
  }
}
.p-breadcrumb .p-breadcrumb__list {
  font-size: 0.875rem;
}
.p-breadcrumb .p-breadcrumb__list .p-breadcrumb__text .__home:before {
  display: none;
}
.p-breadcrumb .p-breadcrumb__list .p-breadcrumb__item:last-child span {
  opacity: 1;
  color: var(--color_main);
  display: block !important;
}
.p-breadcrumb .p-breadcrumb__list .p-breadcrumb__item:not(:last-child):after {
  -webkit-clip-path: unset;
  clip-path: unset;
  content: "/";
  display: block;
  height: auto;
  opacity: 1;
  width: auto;
  background-color: unset;
}

@media screen and (max-width: 960px) {
  .single .p-breadcrumb__item:last-child span {
    opacity: 0 !important;
    display: none !important;
  }
}

.home .p-search-filterArea {
  background: var(--color_text);
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  transition: width 0.28s ease, height 0.28s ease, border-radius 0.28s ease, bottom 0.28s ease, opacity 0.28s ease, visibility 0s linear 0.28s;
  overflow: visible;
}
.home .p-search-filterArea .p-search-filter__inner {
  transition: padding 0.2s ease;
}
.home .p-search-filterArea.is-docked {
  left: auto;
  right: 0;
  bottom: 0;
  width: clamp(140px, 16vw, 182px);
  height: clamp(110px, 12vw, 135px);
  border-radius: 220px 0 0 220px;
  background: rgba(46, 46, 46, 0.9);
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .home .p-search-filterArea.is-docked {
    width: 80px;
    height: 80px;
  }
}
.home .p-search-filterArea.is-docked .p-search-filter__inner {
  display: none;
}
.home .p-search-filterArea.is-docked .c-filter-close {
  display: none;
}
.home .p-search-filterArea.is-docked .c-filter-docked-trigger {
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  width: 100%;
  height: clamp(110px, 12vw, 135px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 20px 18px 20px 24px;
}
@media screen and (max-width: 960px) {
  .home .p-search-filterArea.is-docked .c-filter-docked-trigger {
    height: 80px;
  }
}
.home .p-search-filterArea.is-docked .c-filter-docked-trigger__icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--color_main);
  display: grid;
  place-items: center;
  flex: 0 0 50px;
}
.home .p-search-filterArea.is-docked .c-filter-docked-trigger__icon img {
  width: 20px;
  height: 20px;
  display: block;
}
.home .p-search-filterArea.is-docked .c-filter-docked-trigger__label {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 1rem;
}
.home .p-search-filterArea.is-footer-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.p-search-filterArea .p-search-filter__inner {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
  padding-top: 1.4286em;
  padding-bottom: 1.4286em;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 960px) {
  .p-search-filterArea .p-search-filter__inner {
    padding-left: 0;
    padding-right: 0;
  }
}

.p-search-filter.filter .c-filter-close {
  position: absolute;
  top: 0.5em;
  right: 24px;
  padding: 0;
  border: 0;
  display: grid;
  place-items: center;
  background: transparent;
  color: #fff;
  cursor: pointer;
  line-height: 1;
  z-index: 50;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .c-filter-close {
    top: auto;
    bottom: 0.5em;
    right: 0.5em;
  }
}
.p-search-filter.filter .c-filter-docked-trigger {
  display: none;
}
.p-search-filter.filter .p-search-filter__row {
  display: grid;
  grid-template-columns: 300px 300px minmax(420px, 1fr) 50px;
  gap: 27px;
  align-items: center;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .p-search-filter__row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto auto;
    gap: 8px;
  }
}
.p-search-filter.filter .c-select,
.p-search-filter.filter .c-search-input__field {
  font-size: 1rem;
  height: 64px;
  border-radius: 999px;
  border: 1px solid #f3f3f3;
  color: #f3f3f3;
  background: transparent;
  font-weight: bold;
}
.p-search-filter.filter .c-select {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.2rem;
  cursor: pointer;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .c-select[data-open=locate_tag] {
    grid-column: span 2/span 2;
  }
  .p-search-filter.filter .c-select[data-open=area] {
    grid-column: span 2/span 2;
    grid-column-start: 3;
  }
}
.p-search-filter.filter .c-select.is-open {
  border: 1px solid var(--color_main);
  color: var(--color_main);
}
.p-search-filter.filter .c-select__arrow,
.p-search-filter.filter .c-search-input__arrow {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 12px;
}
.p-search-filter.filter .c-select__arrow img,
.p-search-filter.filter .c-search-input__arrow img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.p-search-filter.filter .c-select__arrow .c-select__arrow-open,
.p-search-filter.filter .c-search-input__arrow .c-select__arrow-open {
  opacity: 0;
}
.p-search-filter.filter .c-select.is-open .c-select__arrow-default {
  opacity: 0;
}
.p-search-filter.filter .c-select.is-open .c-select__arrow-open {
  opacity: 1;
}
.p-search-filter.filter .c-search-input {
  position: relative;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .c-search-input {
    grid-column: span 3/span 3;
    grid-row-start: 2;
  }
}
.p-search-filter.filter .c-search-input .c-search-input__field {
  width: 100%;
  padding: 0 3rem 0 3rem;
  background-image: url("../images/icon/search.svg");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: 1.2rem 50%;
}
.p-search-filter.filter .c-search-input .c-search-input__field:focus-visible {
  outline: 1px solid var(--color_main);
  outline-offset: 1px;
  border: 0;
}
.p-search-filter.filter .c-search-input .c-search-input__field::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.p-search-filter.filter .c-search-input .c-search-input__arrow {
  position: absolute;
  right: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  color: #f3f3f3;
  pointer-events: none;
}
.p-search-filter.filter .c-search-input .c-search-input__arrow .c-select__arrow-default {
  opacity: 1;
}
.p-search-filter.filter .c-search-input .c-search-input__arrow .c-select__arrow-open {
  opacity: 0;
}
.p-search-filter.filter .c-search-input__field:focus-visible + .c-search-input__arrow .c-select__arrow-default {
  opacity: 0;
}
.p-search-filter.filter .c-search-input__field:focus-visible + .c-search-input__arrow .c-select__arrow-open {
  opacity: 1;
}
.p-search-filter.filter .c-search-btn {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 0;
  background: var(--color_main);
  cursor: pointer;
  display: grid;
  place-items: center;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .c-search-btn {
    grid-column-start: 4;
    grid-row-start: 2;
    margin: 0 auto;
  }
}
.p-search-filter.filter .c-search-btn__icon img {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}
.p-search-filter.filter .c-select-menu {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% - 1px);
  margin: 0;
  background: #2a2a2e;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0;
  padding: 2rem 0;
  box-shadow: 0 20px 36px rgba(0, 0, 0, 0.25);
  z-index: 40;
  max-height: min(64vh, 560px);
  overflow: auto;
}
.p-search-filter.filter .c-select-menu .c-select-menu__inner {
  margin-inline: auto;
  padding-inline: 20px !important;
  max-width: calc(var(--container_size, 0px) + 40px);
}
.p-search-filter.filter .c-select-menu .c-select-menu__item {
  border: 0;
  background: transparent;
  color: #fff;
  padding: 0.6rem 1rem;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1rem;
}
.p-search-filter.filter .c-select-menu .c-select-menu__close {
  position: absolute;
  top: 14px;
  right: 18px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #fff;
  cursor: pointer;
  display: grid;
  place-items: center;
  z-index: 3;
}
.p-search-filter.filter .c-select-menu__item::before {
  content: "";
  width: 14px;
  height: 14px;
  border: 1px solid rgba(255, 255, 255, 0.85);
  display: inline-block;
  flex: 0 0 14px;
}
.p-search-filter.filter .c-select-menu__item:hover {
  background: rgba(255, 255, 255, 0.08);
}
.p-search-filter.filter .c-select-menu[data-menu=locate_tag] .c-select-menu__item {
  width: calc(20% - 1.2rem);
  margin: 0.2rem;
}
@media screen and (max-width: 960px) {
  .p-search-filter.filter .c-select-menu[data-menu=locate_tag] .c-select-menu__item {
    width: calc(50% - 1.2rem);
    text-align: left;
    padding: 0.5em 0.25em;
  }
}
.p-search-filter.filter .c-select__label {
  text-align: left;
}

.p-search-filter.filter.filter_open .p-search-filter__inner {
  padding-bottom: 3.2rem;
}

.box-area {
  width: 940px;
  height: 615px;
  margin: 0 auto;
}
@media screen and (max-width: 960px) {
  .box-area {
    width: 100%;
    height: auto;
  }
}

.box-area__content {
  position: relative;
}
@media screen and (max-width: 960px) {
  .box-area__content {
    width: 100%;
    height: auto;
  }
}

.text-region {
  font-size: 15px;
  font-weight: bold;
  white-space: pre-line;
  pointer-events: none;
}

.text-spot {
  opacity: 0;
  font-size: 12px;
  transition: opacity 0.2s ease, filter 0.2s ease;
  white-space: pre-line;
  pointer-events: none;
}

.js-spot,
.js-spot path {
  transition: fill 0.2s ease, opacity 0.2s ease, filter 0.2s ease;
}

.js-spot:hover,
.js-spot.is-hover,
.js-spot[data-hover=true],
.js-spot:hover path,
.js-spot.is-hover path,
.js-spot[data-hover=true] path {
  fill: var(--spot-hover, #ff9fbe);
}

.js-spot[data-active=true],
.js-spot[data-active=true] path {
  fill: var(--spot-active, #ff5d92);
}

/* munakata */
.munakatashi-spot,
.fukutsushi-spot {
  --spot-hover: #ff9fbe;
  --spot-active: #ff5d92;
}

/* chikushi */
.chikushinoshi-spot,
.dazaifushi-spot,
.kasugashi-spot,
.onojoshi-spot,
.nakagawashi-spot {
  --spot-hover: #e9bf57;
  --spot-active: #d79d1f;
}

/* kasuya */
.sasagurimachi-spot,
.umimachi-spot,
.hisayamamachi-spot,
.kogashi-spot,
.suemachi-spot,
.kasuyamachi-spot-wrap,
.shimemachi-spot,
.shingumachi-spot-wrap {
  --spot-hover: #5fd6d8;
  --spot-active: #2fb7ba;
}

/* fukuoka */
.hakataku-spot-wrap,
.chuoku-spot,
.minamiku-spot,
.jonanku-spot,
.sawaraku-spot,
.higashiku-spot-wrap,
.nishiku-spot-wrap {
  --spot-hover: #a8bcff;
  --spot-active: #6b8bff;
}

/* itoshima */
.itoshimashi-spot-wrap {
  --spot-hover: #b1d95b;
  --spot-active: #88b93b;
}

.text-spot.is-hover,
.text-spot.is-active {
  opacity: 1;
}

.text-spot.is-active {
  filter: url(#bg-text-active);
}

.js-spot {
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.js-spot.is-hover {
  filter: brightness(0.9);
}

.js-area-link {
  transition: background-color 0.2s ease, color 0.2s ease;
}

.js-area-link.is-hover {
  background-color: #d9d9d9;
  color: #222;
}

.c-select-menu__item.js-area-link:hover,
.c-select-menu__item.js-area-link.is-hover,
.c-select-menu__item.js-area-link.is-active {
  background-color: #666 !important;
  border-color: #666 !important;
  color: #fff !important;
}

.area-group {
  max-width: 940px;
  width: 100%;
  margin: 0 auto;
  padding: 1em 1em 0;
}
@media screen and (max-width: 960px) {
  .area-group {
    max-width: 100%;
  }
}

.area-group .row {
  display: flex;
}
@media screen and (max-width: 960px) {
  .area-group .row {
    display: block;
  }
}

.area-group .row__parent {
  width: 100px;
  min-width: 100px;
  max-width: 100px;
  flex: 0 0 100px;
  padding-top: 0.6rem;
}

.area-group .row__children {
  flex: 1 1 auto;
  min-width: 0;
}

.area-group__parent {
  font-size: 1rem;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.25em;
}

.area-group__parent::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background-color: var(--area-group-bg, #e0e0e0);
}

@media screen and (max-width: 960px) {
  .area-group__children > .checkbox-inline.c-select-menu__item.js-area-link {
    padding-left: 0;
  }
}

.post-type-archive-locate .p-search-filter.filter {
  position: static;
  right: auto;
  bottom: auto;
  width: 100%;
  z-index: 1;
}
.post-type-archive-locate .p-search-filter.filter .c-filter-close,
.post-type-archive-locate .p-search-filter.filter .c-filter-docked-trigger {
  display: none !important;
}
.post-type-archive-locate .p-search-filter.filter .p-search-filter__row {
  align-items: start;
}
.post-type-archive-locate .p-search-filter.filter .c-select[data-open=locate_tag] {
  grid-column: 1;
  grid-row: 1;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-search-filter.filter .c-select[data-open=locate_tag] {
    grid-column: span 2/span 2;
  }
}
.post-type-archive-locate .p-search-filter.filter .c-select[data-open=area] {
  grid-column: 2;
  grid-row: 1;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-search-filter.filter .c-select[data-open=area] {
    grid-column: span 2/span 2;
    grid-column-start: 3;
  }
}
.post-type-archive-locate .p-search-filter.filter .c-search-input {
  grid-column: 3;
  grid-row: 1;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-search-filter.filter .c-search-input {
    grid-column: span 3/span 3;
    grid-row-start: 2;
  }
}
.post-type-archive-locate .p-search-filter.filter .c-search-btn {
  grid-column: 4;
  grid-row: 1;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-search-filter.filter .c-search-btn {
    grid-column-start: 4;
    grid-row-start: 2;
    margin: 0.25em auto 0;
  }
}
.post-type-archive-locate .p-search-filter.filter .c-select-menu {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  grid-column: 1/-1;
  grid-row: 2;
  width: 100%;
  margin-top: 12px;
  box-shadow: none;
  border-top: 0;
  padding-top: 1.5rem;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-search-filter.filter .c-select-menu {
    grid-row: 3;
  }
}

.single:not(.single-post):not(.single-film):not(.single-creator) .p-articleMetas.-top .p-articleMetas__times {
  display: none;
}
.single:not(.single-post):not(.single-film):not(.single-creator) .p-articleMetas.-top .p-articleMetas__termList {
  display: none;
}

.single:not(.single-locate) .p-articleMetas.-bottom .p-articleMetas__times {
  display: none;
}
.single:not(.single-locate) .p-articleMetas.-bottom .p-articleMetas__termList {
  display: none;
}

.p-articleFoot {
  border-top: 0;
}

.p-postListTab {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.p-postList__label {
  display: flex;
  gap: 0.5em;
  align-items: center;
  margin-bottom: 0.875em;
}
.p-postList__label .p-postList__tax {
  font-size: 0.875rem;
  border: 1px solid;
  display: inline-block;
  padding: 0.25em 2em;
  line-height: 1;
  border-radius: 15px;
  min-height: 24px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}
.p-postList__label .p-postList__tax.is-empty {
  border: none;
  background: transparent;
  padding: 0;
}
.p-postList__label .p-postList__jyoueibi-y {
  font-size: 1rem;
  line-height: 1;
}

.p-postList__more {
  font-size: 1rem;
  display: inline-block;
  width: 170px;
  height: 50px;
  text-align: center;
  color: #fff;
  background-color: var(--color_main);
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.p-postList.-type-card {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 7em;
  margin: 0;
  padding: 0;
  list-style: none;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .p-postList.-type-card {
    gap: 3em;
  }
}
@media screen and (max-width: 599px) {
  .p-postList.-type-card {
    flex-direction: column;
    gap: 2em;
  }
}
.p-postList.-type-card .p-postList__link {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.p-postList.-type-card .p-postList__body {
  padding: 1.3em 2em 0;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0.5em;
  align-items: center;
}
.p-postList.-type-card .p-postList__title {
  font-size: 1.125rem;
}
.p-postList.-type-card .p-postList__thumb {
  border-radius: 12px;
}
.p-postList.-type-card .p-postList__item {
  display: flex;
  padding: 0;
}
.p-postList.-type-card .p-postList__more {
  margin-top: auto;
}

.p-articleHead {
  margin-bottom: 2.75em;
}

body.home .p-postList__title,
body.front-page .p-postList__title {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.single-post .c-categoryList:before {
  display: none;
}
.single-post .c-categoryList__link {
  font-size: 0.875rem;
  white-space: nowrap;
  min-width: 120px;
  border-radius: 50px;
  padding: 0.25em 0.5em;
  text-align: center;
  line-height: 1;
}
.single-post .p-articleMetas__times {
  opacity: 1;
}
.single-post .p-articleMetas__times .c-postTimes__posted {
  font-size: 1rem;
  font-weight: bold;
  color: var(--color_text);
}
.single-post .p-articleMetas__times .icon-posted:before {
  content: none;
}
.single-post .c-postTitle__ttl-subWrap {
  border-bottom: 1px solid;
  padding-bottom: 1em;
}
.single-post .c-postTitle__ttl-subWrap .c-postTitle__ttl-en {
  color: #646464;
  font-size: 1.3125rem;
  font-style: italic;
  font-weight: bold;
}
.single-post .p-articleHead__detail {
  display: flex;
  flex-direction: column;
}
.single-post .p-articleHead__detail .c-postTitle__ttl-subWrap {
  border-bottom: 1px solid var(--color_text);
  padding-bottom: 1em;
  order: 1;
}
.single-post .p-articleHead__detail .p-articleMetas.-top {
  order: 0;
}

.post_content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.post_content ul {
  padding-left: 1em;
}

.p-postList__times {
  opacity: 1;
}
.p-postList__times .c-postTimes__posted {
  font-size: 1rem;
  font-weight: bold;
  color: var(--color_text);
}
.p-postList__times .icon-posted:before {
  content: none;
}

.p-postList__meta {
  display: flex;
  flex-wrap: nowrap;
}
.p-postList__meta .p-postList__cat {
  font-size: 0.875rem;
  white-space: nowrap;
  min-width: 120px;
  border-radius: 50px;
  padding: 0.25em 0.5em;
  text-align: center;
  line-height: 1;
  opacity: 1;
  max-width: 130px;
  width: 100%;
  margin: 0 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-postList__link {
  transform: translateX(0);
}
.p-postList__link:hover::after {
  transform: translateX(5px);
}
.p-postList__link .icon-folder:before {
  content: none;
}

.archive:not(.post-type-archive-film):not(.post-type-archive-creator) .c-pageTitle__subTitle {
  display: none;
}

.l-news .-type-simple .p-postList__title {
  font-size: 1.1875rem;
}
.l-news .l-flex-column {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 960px) {
  .l-news .l-flex-column {
    display: block;
  }
}
.l-news .p-postList.-type-simple {
  border-top: 0;
}
.l-news .p-postList.-type-simple .p-postList__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.l-news .p-postList__item:not(:last-child) {
  margin-bottom: 1.25em;
}
.l-news .p-postList__item .p-postList__link {
  background-color: rgba(255, 255, 255, 0.9);
  border: 0;
  border-radius: 15px;
  padding: 1.5em 3em;
  display: grid;
  gap: 0.5em;
  grid-template-columns: 1fr 50px;
  align-items: center;
}
@media screen and (max-width: 960px) {
  .l-news .p-postList__item .p-postList__link {
    grid-template-columns: 1fr 30px;
    padding: 1em 1em 1em 1.25em;
  }
}
.l-news .p-postList__item .p-postList__link::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background-image: url(../images/icon/arrow.svg);
  background-repeat: no-repeat;
  transition: transform 0.25s ease;
}
@media screen and (max-width: 960px) {
  .l-news .p-postList__item .p-postList__link::after {
    width: 25px;
    height: 25px;
  }
}
.l-news .p-news__intro {
  order: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
}
.l-news .p-postList {
  order: 0;
  width: 60%;
}
@media screen and (max-width: 960px) {
  .l-news .p-postList {
    width: 100%;
  }
}

.blog .c-pageTitle {
  text-align: center;
}
.blog .p-breadcrumb__list {
  justify-content: center;
}
.blog .p-breadcrumb__list.l-container {
  padding: 0 !important;
}
.blog .p-postList__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.43em 0.25em;
}
.blog .p-postList__link::after {
  content: "";
  display: inline-block;
  width: 28px;
  height: 28px;
  background-image: url(../images/icon/arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform 0.25s ease;
}
.blog .p-postList__link .p-postList__body {
  display: flex;
  flex: 0.9;
}
@media screen and (max-width: 960px) {
  .blog .p-postList__link .p-postList__body {
    display: block;
  }
}

.-sidebar-off .-type-card.-pc-col3 .p-postList__item {
  box-sizing: border-box;
  flex: 0 0 calc((100% - 14em) / 3);
  min-width: 0;
}
@media screen and (max-width: 960px) {
  .-sidebar-off .-type-card.-pc-col3 .p-postList__item {
    flex: 0 0 calc((100% - 3em) / 2);
  }
}

.c-tabBody {
  margin-top: 5.5em;
}

.p-postList.-type-card .p-postList__body {
  gap: 1.3em;
}

@media screen and (min-width: 961px) {
  .post-type-archive-locate .l-container,
  .tax-locate_area .l-container,
  .tax-locate_tag .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}
.post-type-archive-locate .p-breadcrumb__list.l-container,
.tax-locate_area .p-breadcrumb__list.l-container,
.tax-locate_tag .p-breadcrumb__list.l-container {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
  padding-left: 0 !important;
}
.post-type-archive-locate .c-pageTitle,
.tax-locate_area .c-pageTitle,
.tax-locate_tag .c-pageTitle {
  text-align: center;
}
.post-type-archive-locate .p-breadcrumb__list,
.tax-locate_area .p-breadcrumb__list,
.tax-locate_tag .p-breadcrumb__list {
  justify-content: center;
}
.post-type-archive-locate .p-breadcrumb__list.l-container,
.tax-locate_area .p-breadcrumb__list.l-container,
.tax-locate_tag .p-breadcrumb__list.l-container {
  padding: 0 !important;
}
.post-type-archive-locate .p-breadcrumb__item:first-of-type,
.tax-locate_area .p-breadcrumb__item:first-of-type,
.tax-locate_tag .p-breadcrumb__item:first-of-type {
  margin-left: -1.5em;
}
.post-type-archive-locate .p-search-filterArea,
.tax-locate_area .p-search-filterArea,
.tax-locate_tag .p-search-filterArea {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  margin-top: 1.5em;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.post-type-archive-locate .p-search-filterArea .c-select-menu,
.tax-locate_area .p-search-filterArea .c-select-menu,
.tax-locate_tag .p-search-filterArea .c-select-menu {
  max-height: none;
  position: relative !important;
}
.post-type-archive-locate .p-search-filterArea__count,
.tax-locate_area .p-search-filterArea__count,
.tax-locate_tag .p-search-filterArea__count {
  font-size: 1rem;
  color: #fff;
  font-weight: bold;
  padding-top: 1.25em;
}
.post-type-archive-locate .p-locateMap,
.tax-locate_area .p-locateMap,
.tax-locate_tag .p-locateMap {
  height: 800px;
  width: 100%;
}
.post-type-archive-locate .p-locateMap iframe,
.tax-locate_area .p-locateMap iframe,
.tax-locate_tag .p-locateMap iframe {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 960px) {
  .post-type-archive-locate .p-postList__label,
  .tax-locate_area .p-postList__label,
  .tax-locate_tag .p-postList__label {
    justify-content: center;
  }
}

@media screen and (max-width: 960px) {
  .single-locate .p-articleMetas__termList {
    justify-content: center;
  }
}
.single-locate .l-mainContent__inner {
  display: grid;
  grid-template-columns: 500px 1fr;
  grid-template-areas: "head main" "detail main" "thumb main" "desc desc" "locate locate" "foot foot";
  gap: 24px 40px;
  align-items: start;
}
@media screen and (max-width: 960px) {
  .single-locate .l-mainContent__inner {
    display: block;
  }
}
.single-locate .l-mainContent__inner > * {
  min-width: 0;
}
.single-locate .p-articleHead {
  grid-area: head;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.single-locate .p-articleHead__detail {
  grid-area: detail;
}
.single-locate .c-postTitle__ttl-en {
  font-style: italic;
}
.single-locate .p-locate-thumb-swiper {
  grid-area: thumb;
  height: 100%;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 960px) {
  .single-locate .p-locate-thumb-swiper {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.single-locate .p-locate-thumb-swiper .js-locate-thumb-swiper {
  align-self: end;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 0 0.5em;
}
@media screen and (min-width: 961px) {
  .single-locate .p-locate-thumb-swiper .js-locate-thumb-swiper {
    height: 145px;
  }
}
.single-locate .p-locate-main-swiper {
  grid-area: main;
  align-self: end;
}
@media screen and (max-width: 960px) {
  .single-locate .p-locate-main-swiper {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.single-locate .js-locate-main-swiper {
  width: 100%;
  max-width: none;
  justify-self: stretch;
  overflow: hidden;
}
@media screen and (min-width: 961px) {
  .single-locate .js-locate-main-swiper {
    height: 502px;
  }
}
.single-locate .js-locate-main-swiper .swiper-wrapper,
.single-locate .js-locate-main-swiper .swiper-slide {
  width: 100%;
  height: 100%;
}
.single-locate .post_content {
  grid-area: desc;
}
.single-locate .p-locateContent {
  grid-area: locate;
}
@media screen and (max-width: 960px) {
  .single-locate .p-locateContent {
    display: block;
  }
}
.single-locate .p-articleFoot {
  grid-area: foot;
}
.single-locate .p-breadcrumb__list.l-container {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
}
@media screen and (max-width: 960px) {
  .single-locate .p-breadcrumb__list.l-container {
    padding: 0 !important;
  }
}
@media screen and (min-width: 961px) {
  .single-locate .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
.single-locate .p-articleFoot {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  border-top: 0;
  position: relative;
  margin-bottom: 0;
}
.single-locate .p-articleFoot::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -60px;
  width: calc(100% + 400px);
  margin: 0 -200px;
  height: 60px;
  border-radius: 0 0 50% 50%;
  background: var(--color_text);
  border-radius: 0 0 50% 50%/0 0 70px 70px;
}
.single-locate .p-articleMetas.-bottom {
  justify-content: center;
}
.single-locate .p-articleMetas.-bottom .c-tagList:before {
  display: none;
}
.single-locate .p-articleMetas.-bottom .c-tagList__link {
  font-size: 0.875rem;
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
  padding: 0.85em 1em;
}

.p-locateDesc {
  display: flex;
  gap: 300px;
  align-items: flex-start;
}
@media screen and (max-width: 960px) {
  .p-locateDesc {
    flex-direction: column;
    gap: 1em;
    justify-content: center;
  }
}

.js-locate-main-swiper {
  overflow: hidden;
  position: relative;
  margin-bottom: 16px;
  background: #111;
}
@media screen and (min-width: 961px) {
  .js-locate-main-swiper {
    border-radius: 20px;
  }
}

.js-locate-main-swiper .swiper-slide {
  aspect-ratio: 16/9;
  background: #111;
}

.js-locate-main-swiper .swiper-slide > img,
.p-locateSlider__youtubeBtn > img,
.p-locateSlider__youtube iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.p-locateSlider__youtube,
.p-locateSlider__youtubeBtn {
  width: 100%;
  height: 100%;
}

.p-locateSlider__youtubeBtn {
  border: 0;
  padding: 0;
  cursor: pointer;
  position: relative;
  background: #111;
}

.p-locateSlider__youtubePlay {
  position: absolute;
  width: 72px;
  height: 50px;
  border-radius: 14px;
  background: #ff0000;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-locateSlider__youtubePlay::before {
  content: "";
  position: absolute;
  left: 30px;
  top: 16px;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #fff;
}

.js-locate-thumb-swiper .swiper-slide {
  overflow: hidden;
  cursor: pointer;
  opacity: 0.65;
  position: relative;
  display: flex;
  align-items: flex-end;
  border-radius: 15px;
}
@media screen and (max-width: 960px) {
  .js-locate-thumb-swiper .swiper-slide {
    aspect-ratio: 16/9;
    height: auto;
    overflow: hidden;
  }
}

.js-locate-thumb-swiper .swiper-slide-thumb-active {
  opacity: 1;
}

.js-locate-thumb-swiper .swiper-slide img {
  width: 100%;
  object-fit: cover;
  display: block;
  height: 100%;
  padding-bottom: 0.5em;
  border-radius: 15px;
}
@media screen and (max-width: 960px) {
  .js-locate-thumb-swiper .swiper-slide img {
    aspect-ratio: 16/9;
    height: auto;
    overflow: hidden;
  }
}

.p-locateSlider__thumbPlay {
  position: absolute;
  width: 28px;
  height: 20px;
  background: rgba(255, 0, 0, 0.92);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-locateSlider__thumbPlay::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 5px;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #fff;
}

@media screen and (max-width: 960px) {
  .p-locateShare {
    margin: 0 auto;
  }
}
.p-locateShare .p-locateShare__label {
  font-size: 1.25rem;
  font-weight: 900;
  text-align: right;
  display: block;
}
@media screen and (max-width: 960px) {
  .p-locateShare .p-locateShare__label {
    text-align: center;
  }
}
.p-locateShare .p-locateShare-sns {
  display: flex;
  gap: 0.5em;
  margin-top: 0.5em;
}
.p-locateShare .p-locateShare__btn {
  grid-row-start: 2;
  display: block;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 960px) {
  .p-locateShare .p-locateShare__btn:first-of-type {
    margin-left: auto;
  }
}

.p-locateContent {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 50px;
  column-gap: 70px;
}
.p-locateContent .p-locateMap {
  grid-row: span 2/span 2;
  height: 450px;
}
@media screen and (max-width: 960px) {
  .p-locateContent .p-locateMap {
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 960px) {
  .p-locateContent .p-locateMap {
    height: 400px;
  }
}
@media screen and (max-width: 599px) {
  .p-locateContent .p-locateMap {
    height: 200px;
  }
}
.p-locateContent .p-locateMap iframe {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  border: 0;
}
.p-locateContent .p-locateLabel {
  background-color: var(--color_main);
  padding: 0.25em 2.25em;
  border-radius: 30px;
  display: inline-block;
  margin-bottom: 2em;
  line-height: 1;
}
.p-locateContent .p-locateInfo {
  font-size: 1.125rem;
}
.p-locateContent .p-locateInfo .p-locateMeta__icon {
  width: 24px;
  height: 21px;
}
.p-locateContent .p-locateInfo .p-locateMeta__iconMap {
  width: 24px;
  height: 32px;
}
.p-locateContent .p-locateInfo .p-locateMeta {
  display: block;
}
.p-locateContent .p-locateInfo .p-locateMeta dt,
.p-locateContent .p-locateInfo .p-locateMeta dd {
  margin: 0;
}
.p-locateContent .p-locateInfo .p-locateMeta dt {
  float: left;
  clear: left;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-right: 12px;
  margin-bottom: 10px;
}
.p-locateContent .p-locateInfo .p-locateMeta dt::after {
  content: "/";
}
.p-locateContent .p-locateInfo .p-locateMeta dt:has(.p-locateMeta__icon)::after, .p-locateContent .p-locateInfo .p-locateMeta dt:has(.p-locateMeta__iconMap)::after {
  content: "";
}
.p-locateContent .p-locateInfo .p-locateMeta dd {
  overflow: hidden;
  margin-bottom: 10px;
}
.p-locateContent .p-locateInfo .p-locateMeta__ttl {
  clear: both;
}
.p-locateContent .p-locateInfo .p-locateMeta__address {
  clear: both;
}
.p-locateContent .p-locateNote {
  grid-column-start: 2;
}

.p-locateMeta__iconArea {
  height: 36px;
}

.p-articleMetas__locate {
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 1em;
}

.home .p-search-filter.filter .c-select-menu {
  top: auto;
  bottom: calc(100% - 1px);
  box-shadow: 0 -20px 36px rgba(0, 0, 0, 0.25);
}

.post-type-archive-film .c-postThumb__figure:before,
.tax-film_cat .c-postThumb__figure:before {
  padding-top: 141.36%;
}
@media screen and (min-width: 961px) {
  .post-type-archive-film .l-container,
  .tax-film_cat .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}
.post-type-archive-film .p-breadcrumb__list,
.tax-film_cat .p-breadcrumb__list {
  justify-content: center;
}
.post-type-archive-film .p-breadcrumb__list.l-container,
.tax-film_cat .p-breadcrumb__list.l-container {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
  padding: 0 !important;
}
.post-type-archive-film .p-breadcrumb__item:first-of-type,
.tax-film_cat .p-breadcrumb__item:first-of-type {
  margin-left: -1.5em;
}
.post-type-archive-film .l-content .c-pagination,
.tax-film_cat .l-content .c-pagination {
  position: relative;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
.post-type-archive-film .l-content .c-pagination::after,
.tax-film_cat .l-content .c-pagination::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -100px;
  width: calc(100% + 400px);
  margin: 0 -200px;
  height: 100px;
  border-radius: 0 0 50% 50%;
  background: var(--color_text);
  border-radius: 0 0 50% 50%/0 0 70px 70px;
}
.post-type-archive-film .c-pageTitle,
.tax-film_cat .c-pageTitle {
  text-align: center;
}
.post-type-archive-film .c-pageTitle__subTitle,
.tax-film_cat .c-pageTitle__subTitle {
  color: rgba(255, 255, 255, 0.3);
}
@media screen and (min-width: 961px) {
  .post-type-archive-film .c-tabList,
  .tax-film_cat .c-tabList {
    flex-wrap: nowrap;
    justify-content: space-between;
  }
}
.post-type-archive-film .c-tabList .c-tabList__item,
.tax-film_cat .c-tabList .c-tabList__item {
  color: #fff;
}
@media screen and (min-width: 961px) {
  .post-type-archive-film .c-tabList .c-tabList__item,
  .tax-film_cat .c-tabList .c-tabList__item {
    flex: auto;
  }
}
.post-type-archive-film .c-tabList .c-tabList__item .c-tabList__button[aria-selected=false],
.tax-film_cat .c-tabList .c-tabList__item .c-tabList__button[aria-selected=false] {
  background: transparent;
  border: 1px solid #fff !important;
  color: #fff;
}
.post-type-archive-film .p-related-links,
.tax-film_cat .p-related-links {
  padding-top: 5em;
}

.single-film .p-breadcrumb__list.l-container {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
  justify-content: center;
  padding-left: 0;
}
.single-film .p-articleFoot {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: relative;
  margin-bottom: 0;
}
.single-film .p-articleFoot::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -60px;
  width: calc(100% + 400px);
  margin: 0 -200px;
  height: 60px;
  border-radius: 0 0 50% 50%;
  background: var(--color_text);
  border-radius: 0 0 50% 50%/0 0 70px 70px;
}
.single-film .c-postTitle {
  position: relative;
}
.single-film .c-postTitle .c-postTitle__ttl {
  text-align: center;
}
.single-film .c-postTitle .c-pageTitle__subTitle {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  top: 0;
  color: rgba(255, 255, 255, 0.3);
}
@media screen and (max-width: 960px) {
  .single-film .c-postTitle .c-pageTitle__subTitle {
    transform: translate(-50%, 0);
  }
}
.single-film .c-taxList:before {
  display: none;
}
.single-film .c-taxList__link {
  font-size: 0.875rem;
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
  padding: 0.25em 2em;
  line-height: 1;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}
.single-film .l-mainContent__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "head head" "thumb detail" "thumb meta" "content content";
  margin-inline: auto;
  gap: 40px 80px;
}
@media screen and (max-width: 960px) {
  .single-film .l-mainContent__inner {
    display: flex;
    flex-direction: column;
  }
}
.single-film .p-articleHead {
  grid-area: head;
  margin-bottom: 4.56em;
}
@media screen and (max-width: 960px) {
  .single-film .p-articleHead {
    order: 0;
  }
}
.single-film .p-articleHead__detail {
  grid-area: detail;
  display: flex;
  flex-direction: column;
  align-self: start;
}
@media screen and (max-width: 960px) {
  .single-film .p-articleHead__detail {
    order: 2;
  }
}
.single-film .p-articleHead__detail .c-postTitle__ttl-subWrap {
  order: 1;
}
@media screen and (max-width: 960px) {
  .single-film .p-articleHead__detail .c-postTitle__ttl-subWrap .c-postTitle__ttl-sub {
    font-size: 1.375rem;
  }
}
.single-film .p-articleHead__detail .c-postTitle__ttl-subWrap .c-postTitle__ttl-en {
  color: #969696;
}
.single-film .p-articleHead__detail .p-articleMetas {
  order: 0;
}
.single-film .p-articleHead__detail .p-articleMetas .p-articleMetas__jyoueibi-y {
  font-size: 1rem;
}
.single-film .p-filmMeta {
  grid-area: meta;
  font-size: 1.125rem;
  align-self: start;
}
@media screen and (max-width: 960px) {
  .single-film .p-filmMeta {
    order: 3;
    display: block;
  }
}
.single-film .p-articleThumb {
  grid-area: thumb;
  margin: 0;
  aspect-ratio: 0.7078014184;
}
@media screen and (max-width: 960px) {
  .single-film .p-articleThumb {
    aspect-ratio: 0.701754386;
    order: 1;
  }
}
.single-film .p-articleThumb .p-articleThumb__img {
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}
.single-film .post_content {
  grid-area: content;
}
@media screen and (max-width: 960px) {
  .single-film .post_content {
    order: 4;
  }
}
.single-film .post_content h3 {
  font-size: 1.25rem;
  margin-bottom: 1em;
}
.single-film .p-related-links {
  padding-top: 5em;
}

.p-filmMeta {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px 20px;
}
.p-filmMeta dt,
.p-filmMeta dd {
  margin: 0;
}
.p-filmMeta dt {
  display: flex;
  gap: 6px;
}
@media screen and (max-width: 960px) {
  .p-filmMeta dd {
    margin-bottom: 1em;
  }
}

.p-filmMeta__icon {
  width: 24px;
  height: 21px;
}

.p-filmSlider {
  margin-bottom: 2.5em;
}
@media screen and (max-width: 960px) {
  .p-filmSlider .p-film-detail-main-swiper {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.p-filmSlider .js-film-detail-main-swiper {
  overflow: hidden;
  position: relative;
  margin-bottom: 16px;
  padding: 0 1em;
}
.p-filmSlider .js-film-detail-main-swiper .swiper-slide {
  aspect-ratio: 16/9;
  background: #111;
  border-radius: 15px;
  overflow: hidden;
}
.p-filmSlider .js-film-detail-main-swiper .swiper-slide > img,
.p-filmSlider .p-filmSlider__youtubeBtn > img,
.p-filmSlider .p-filmSlider__youtube iframe,
.p-filmSlider .p-filmSlider__imageBtn > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p-filmSlider .p-filmSlider__youtube,
.p-filmSlider .p-filmSlider__youtubeBtn,
.p-filmSlider .p-filmSlider__imageBtn {
  width: 100%;
  height: 100%;
}
.p-filmSlider .p-filmSlider__youtubeBtn,
.p-filmSlider .p-filmSlider__imageBtn {
  border: 0;
  padding: 0;
  cursor: zoom-in;
  position: relative;
  background: #111;
}
.p-filmSlider .p-filmSlider__youtubePlay {
  position: absolute;
  width: 72px;
  height: 50px;
  border-radius: 14px;
  background: #ff0000;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-filmSlider .p-filmSlider__youtubePlay::before {
  content: "";
  position: absolute;
  left: 30px;
  top: 16px;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid #fff;
}
.p-filmSlider .js-film-detail-main-swiper .swiper-button-prev,
.p-filmSlider .js-film-detail-main-swiper .swiper-button-next {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.4);
  color: #fff;
}
.p-filmSlider .js-film-detail-main-swiper .swiper-button-prev::after,
.p-filmSlider .js-film-detail-main-swiper .swiper-button-next::after {
  font-size: 0.875rem;
  font-weight: 700;
}
.p-filmSlider .js-film-detail-thumb-swiper .swiper-slide {
  border-radius: 15px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.65;
  position: relative;
}
.p-filmSlider .js-film-detail-thumb-swiper .swiper-slide-thumb-active {
  opacity: 1;
  box-shadow: 0 0 0 2px var(--color_main) inset;
}
.p-filmSlider .js-film-detail-thumb-swiper .swiper-slide img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
  border-radius: 15px;
}
.p-filmSlider .p-filmSlider__thumbPlay {
  position: absolute;
  width: 28px;
  height: 20px;
  border-radius: 6px;
  background: rgba(255, 0, 0, 0.92);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-filmSlider .p-filmSlider__thumbPlay::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 5px;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #fff;
}

.is-media-modal-open {
  overflow: hidden;
}

.p-mediaModal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.82);
  padding: 20px;
}
.p-mediaModal .p-mediaModal__inner {
  width: min(1100px, 100%);
  position: relative;
}
.p-mediaModal .p-mediaModal__close {
  position: absolute;
  right: 0;
  top: -42px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
}
.p-mediaModal .p-mediaModal__content {
  width: 100%;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
}
.p-mediaModal .p-mediaModal__content img {
  width: 100%;
  height: auto;
  display: block;
  max-height: 80vh;
  object-fit: contain;
}
.p-mediaModal .p-mediaModal__content iframe {
  width: 100%;
  aspect-ratio: 16/9;
  border: 0;
  display: block;
}

.p-mediaModal.is-open {
  display: flex;
}

@media screen and (min-width: 961px) {
  .post-type-archive-creator .l-container,
  .tax-creator_cat .l-container {
    max-width: min(1440px, 100vw - 20px * 2);
    margin-inline: auto;
    width: 100%;
  }
}
.post-type-archive-creator .p-breadcrumb__list,
.tax-creator_cat .p-breadcrumb__list {
  justify-content: center;
}
.post-type-archive-creator .p-breadcrumb__list.l-container,
.tax-creator_cat .p-breadcrumb__list.l-container {
  max-width: min(1440px, 100vw - 20px * 2);
  margin-inline: auto;
  width: 100%;
  padding: 0 !important;
}
.post-type-archive-creator .p-breadcrumb__item:first-of-type,
.tax-creator_cat .p-breadcrumb__item:first-of-type {
  margin-left: -1.5em;
}
.post-type-archive-creator .p-postList__furi,
.tax-creator_cat .p-postList__furi {
  font-size: 0.875rem;
  color: #646464;
}
.post-type-archive-creator .c-pageTitle,
.tax-creator_cat .c-pageTitle {
  text-align: center;
}
.post-type-archive-creator .c-pageTitle__subTitle,
.tax-creator_cat .c-pageTitle__subTitle {
  color: rgba(46, 46, 46, 0.15);
}
@media screen and (max-width: 960px) {
  .post-type-archive-creator .c-pageTitle__subTitle,
  .tax-creator_cat .c-pageTitle__subTitle {
    white-space: nowrap;
    transform: translate(-50%, 0);
    bottom: auto;
    top: 25%;
  }
}
.post-type-archive-creator .l-mainContent,
.tax-creator_cat .l-mainContent {
  position: relative;
}
@media screen and (min-width: 961px) {
  .post-type-archive-creator .l-mainContent::after,
  .tax-creator_cat .l-mainContent::after {
    content: "";
    width: 90vw;
    height: 120px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url(../images/bg_typography.svg);
    background-repeat: no-repeat;
    z-index: -1;
  }
}
@media screen and (max-width: 960px) {
  .post-type-archive-creator .p-postList__label,
  .tax-creator_cat .p-postList__label {
    justify-content: center;
  }
}

.single-creator ul {
  list-style: none !important;
  padding-left: 0 !important;
}
.single-creator .c-taxList:before {
  display: none;
}
.single-creator .p-articleMetas.-top {
  margin-top: 2.7em;
}
.single-creator .c-taxList__link {
  font-size: 0.875rem;
  background-color: transparent;
  color: var(--color_text);
  border: 1px solid var(--color_text);
  padding: 0.25em 2em;
  line-height: 1;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}
.single-creator .l-mainContent__inner {
  display: grid;
  grid-template-columns: 500px 1fr;
  grid-template-areas: "head head" "thumb detail" "thumb profile" "content content";
  margin-inline: auto;
  gap: 40px 80px;
}
@media screen and (max-width: 960px) {
  .single-creator .l-mainContent__inner {
    display: flex;
    flex-direction: column;
  }
}
.single-creator .p-articleHead {
  grid-area: head;
  margin-bottom: 4.56em;
}
@media screen and (max-width: 960px) {
  .single-creator .p-articleHead {
    order: 0;
  }
}
.single-creator .p-articleHead__detail {
  grid-area: detail;
}
@media screen and (max-width: 960px) {
  .single-creator .p-articleHead__detail {
    order: 2;
  }
}
.single-creator .p-articleHead__detail .c-postTitle__ttl-subWrap .c-postTitle__furi {
  font-size: 1rem;
  color: #969696;
}
.single-creator .post_content {
  grid-area: content;
}
@media screen and (max-width: 960px) {
  .single-creator .post_content {
    order: 4;
    margin-top: 0;
  }
}
@media screen and (max-width: 960px) {
  .single-creator .p-articleFoot {
    order: 5;
  }
}

.p-creatorMeta {
  grid-area: meta;
  font-size: 1.125rem;
}
.p-creatorMeta dd {
  margin-bottom: 2.5em;
}

.p-articleThumb {
  grid-area: thumb;
  aspect-ratio: 0.7078014184;
  margin: 0;
}
@media screen and (max-width: 960px) {
  .p-articleThumb {
    order: 1;
    aspect-ratio: 0.701754386;
    margin-top: -80px;
  }
}
.p-articleThumb .p-articleThumb__img {
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.p-creatorProfile {
  grid-area: profile;
  line-height: 1.5;
}
@media screen and (max-width: 960px) {
  .p-creatorProfile {
    order: 3;
  }
}

.p-creatorProfile__title {
  margin-bottom: 1em;
  font-size: 1.3125rem;
}

.post_supporter p,
.post_supporter dt,
.post_supporter dd,
.post_supporter a {
  font-size: 1rem;
}
.post_supporter button {
  font-size: 1.3125rem;
}
@media screen and (max-width: 960px) {
  .post_supporter button {
    font-size: 1.125rem;
  }
}
.post_supporter ul {
  list-style: none !important;
  padding-left: 0 !important;
}

.p-supporterGroup {
  margin-bottom: 1em;
}
.p-supporterGroup .p-supporterGroup__toggle {
  background-color: var(--color_main);
  border-radius: 50px;
  padding: 0.5em 1.5em;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.5em;
  width: 100%;
  font-weight: bold;
  position: relative;
  border: 0;
}
.p-supporterGroup .p-supporterGroup__toggle::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: calc(1.5em + 7.5px);
  background-color: #fff;
}
.p-supporterGroup .p-supporterGroup__toggle::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5em;
  background-color: #fff;
}

.p-supporterAccordion .p-supporterAccordion__item,
.p-supporterAccordion .p-supporterAccordion__innItem {
  margin: 0.5em 0;
  background-color: #f3f3f3;
  border-radius: 50px;
  padding: 0.5em 1.5em;
}
.p-supporterAccordion .p-supporterAccordion__toggle,
.p-supporterAccordion .p-supporterAccordion__innToggle {
  background-color: transparent;
  width: 100%;
  border: 0;
  position: relative;
  text-align: left;
  font-weight: bold;
  padding-right: 1.5em;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion .p-supporterAccordion__toggle,
  .p-supporterAccordion .p-supporterAccordion__innToggle {
    padding-right: 2em;
  }
}
.p-supporterAccordion .p-supporterAccordion__toggle::before,
.p-supporterAccordion .p-supporterAccordion__innToggle::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 7.5px;
  background-color: var(--color_text);
}
.p-supporterAccordion .p-supporterAccordion__toggle::after,
.p-supporterAccordion .p-supporterAccordion__innToggle::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background-color: var(--color_text);
}
.p-supporterAccordion .p-supporterAccordion__innToggle {
  display: flex;
  gap: 0.5em;
}
.p-supporterAccordion .p-supporterAccordion__body {
  padding: 2em 1.5em;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion .p-supporterAccordion__body {
    padding: 1em 0;
  }
}
.p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__grid {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5em;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__grid {
    display: block;
  }
}
.p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__meta {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px 1.5em;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__meta {
    display: block;
  }
}
.p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__content {
  margin-top: 2em;
}
.p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__thumb {
  aspect-ratio: 1.3344827586;
  max-width: 387px;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__thumb {
    aspect-ratio: 1;
    margin-top: 1.5em;
  }
}
.p-supporterAccordion .p-supporterAccordion__body .p-supporterAccordion__thumb img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  object-fit: cover;
}

.p-supporterGroup--all {
  margin-bottom: 1em;
}

.p-supporterAccordion--child .p-supporterAccordion__toggle {
  display: flex;
  align-items: center;
  gap: 12px;
}
.p-supporterAccordion--child .p-supporterAccordion__toggle span:first-child {
  flex: 0 0 95px;
  width: 95px;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion--child .p-supporterAccordion__toggle span:first-child {
    flex: 0 0 72px;
    width: 72px;
  }
}
.p-supporterAccordion--child .p-supporterAccordion__toggle::before {
  display: none;
}
.p-supporterAccordion--child .p-supporterAccordion__toggle::after {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  background: url("../images/icon/toggle_close.svg") no-repeat center/contain;
}
.p-supporterAccordion--child .p-supporterAccordion__toggle {
  border-bottom: 1px solid var(--color_text);
  border-radius: 0;
  padding-bottom: 1em;
}
.p-supporterAccordion--child .p-supporterAccordion__item {
  padding-left: 1em;
  padding-right: 0;
}
@media screen and (max-width: 960px) {
  .p-supporterAccordion--child .p-supporterAccordion__item {
    padding-left: 0;
  }
}
.p-supporterAccordion--child .p-supporterAccordion__toggle[aria-expanded=true],
.p-supporterAccordion--child .p-supporterAccordion__innToggle[aria-expanded=true] {
  border-bottom: 0;
  padding-bottom: 1em;
  padding-top: 1em;
}

.p-supporterAccordion__item:has(.p-supporterAccordion__toggle[aria-expanded=true]),
.p-supporterAccordion__innItem:has(.p-supporterAccordion__innToggle[aria-expanded=true]) {
  border-radius: 20px;
}

.p-supporterAccordion__toggle[aria-expanded=true],
.p-supporterAccordion__innToggle[aria-expanded=true] {
  border-bottom: 1px solid var(--color_text);
  padding-bottom: 1em;
  padding-top: 1em;
}

.p-supporterGroup__toggle[aria-expanded=true]::before,
.p-supporterAccordion__innToggle[aria-expanded=true]::before {
  display: none;
}

.p-supporterAccordion__toggle[aria-expanded=true]::before,
.p-supporterAccordion__innToggle[aria-expanded=true]::before {
  display: none;
}

.p-supporterAccordion--child .p-supporterAccordion__toggle[aria-expanded=true]::after {
  background-image: url("../images/icon/toggle_open.svg");
}

.p-supporterSearch {
  position: relative;
}
.p-supporterSearch input {
  width: 100%;
  height: 48px;
  padding: 0.5em 4em 0.5em 40px;
  border-radius: 50px;
  background-color: transparent;
  border: 1px solid var(--color_text);
  font-size: 1rem;
  background-image: url("../images/icon/search.svg");
  background-repeat: no-repeat;
  background-position: left 1rem center;
  background-size: 16px 16px;
}
.p-supporterSearch .p-supporterSearch__btn {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
  display: grid;
  place-items: center;
  line-height: 1;
}
.p-supporterSearch .p-supporterSearch__btn img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-supporterSearch .p-supporterSearch__clear {
  margin-top: 0.5em;
  margin-left: 0.5em;
}
.p-supporterSearch .p-supporterSearch__clear a {
  padding: 0.25em 2em;
  background-color: var(--color_main);
  display: inline-block;
  border-radius: 8px;
  color: #fff;
  font-size: 0.9375rem;
}

.p-supporterMap iframe {
  width: 100%;
  height: 485px;
}

.post_faq p,
.post_faq dt,
.post_faq dd,
.post_faq a {
  font-size: 1rem;
}
.post_faq button {
  font-size: 1.3125rem;
}
@media screen and (max-width: 960px) {
  .post_faq button {
    font-size: 1rem;
  }
}
.post_faq ul {
  list-style: none !important;
  padding-left: 0 !important;
}

.p-faqGroup {
  margin-bottom: 1em;
}
.p-faqGroup .p-faqGroup__toggle {
  background-color: var(--color_main);
  border-radius: 50px;
  padding: 0.5em 3em 0.5em 1.5em;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.5em;
  width: 100%;
  font-weight: bold;
  position: relative;
  border: 0;
}
.p-faqGroup .p-faqGroup__toggle::before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: calc(1.5em + 7.5px);
  background-color: #fff;
}
.p-faqGroup .p-faqGroup__toggle::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 3px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 1.5em;
  background-color: #fff;
}

.p-faqAccordion,
.p-faqSearchResult {
  list-style: none;
  padding-left: 0 !important;
}
.p-faqAccordion .p-faqAccordion__item,
.p-faqSearchResult .p-faqAccordion__item {
  margin: 0.5em 0;
  background-color: #f3f3f3;
  border-radius: 50px;
  padding: 0.5em 1.5em;
}
.p-faqAccordion .p-faqAccordion__item-q,
.p-faqSearchResult .p-faqAccordion__item-q {
  font-weight: 900;
  font-size: 1.75rem;
}
.p-faqAccordion .p-faqAccordion__toggle,
.p-faqSearchResult .p-faqAccordion__toggle {
  background-color: transparent;
  width: 100%;
  border: 0;
  position: relative;
  text-align: left;
  font-weight: bold;
  padding: 0;
  display: flex;
  gap: 0.5em;
  align-items: center;
  padding-right: 2em;
}
.p-faqAccordion .p-faqAccordion__toggle::after,
.p-faqSearchResult .p-faqAccordion__toggle::after {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background: url("../images/icon/toggle_close.svg") no-repeat center/contain;
}
.p-faqAccordion .p-faqAccordion__body-a,
.p-faqSearchResult .p-faqAccordion__body-a {
  font-weight: 900;
  font-size: 2.0625rem;
  color: var(--color_main);
}
.p-faqAccordion .p-faqAccordion__body,
.p-faqSearchResult .p-faqAccordion__body {
  padding: 1em 0;
}
.p-faqAccordion .p-faqAccordion__body .p-faqAccordion__grid,
.p-faqSearchResult .p-faqAccordion__body .p-faqAccordion__grid {
  display: flex;
  gap: 0.5em;
  align-items: center;
}

.p-faqAccordion__item:has(.p-faqAccordion__toggle[aria-expanded=true]) {
  border-radius: 20px;
}

.p-faqAccordion__toggle[aria-expanded=true]::before {
  display: none;
}

.p-faqAccordion .p-faqAccordion__toggle[aria-expanded=true]::after,
.p-faqSearchResult .p-faqAccordion__toggle[aria-expanded=true]::after {
  background-image: url("../images/icon/toggle_open.svg");
}

.p-faqSearch {
  position: relative;
}
.p-faqSearch input {
  width: 100%;
  height: 48px;
  padding: 0.5em 4em 0.5em 40px;
  border-radius: 50px;
  background-color: transparent;
  border: 1px solid var(--color_text);
  font-size: 1rem;
  background-image: url("../images/icon/search.svg");
  background-repeat: no-repeat;
  background-position: left 1rem center;
  background-size: 16px 16px;
}
.p-faqSearch .p-faqSearch__btn {
  position: absolute;
  top: 50%;
  right: 0.2rem;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
  display: grid;
  place-items: center;
  line-height: 1;
}
.p-faqSearch .p-faqSearch__btn img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-faqSearch .p-faqSearch__clear {
  margin-top: 0.5em;
  margin-left: 0.5em;
}
.p-faqSearch .p-faqSearch__clear a {
  padding: 0.25em 2em;
  background-color: var(--color_main);
  display: inline-block;
  border-radius: 8px;
  color: #fff;
  font-size: 0.9375rem;
}

@media screen and (max-width: 960px) {
  .u-text-center_sp {
    text-align: center !important;
  }
}

@media screen and (max-width: 960px) {
  .u-text-left_sp {
    text-align: left !important;
  }
}

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

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

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

.u-text-white {
  color: #fff;
}

.u-relative-left {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

.u-relative-right {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}

.u-relative-center {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.u-block-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.u-m5 {
  padding-top: 5em;
}

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