@charset "utf-8";
/* サイト全体 */
.l-site-wrapper--locale,
.l-site-wrapper--locale .is-root-container {
  font-family: var(--ff-locale);
}

.l-site-wrapper--locale .c-heading-a .-main {
  line-height: 1.1;
}

.c-locale-txt {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.78;
}

@media (max-width: 768px) {
  .c-locale-txt {
    font-size: 16px;
    line-height: 1.6;
  }
}

/* ヘッダー */
.l-site-wrapper--locale .l-header-logo img {
  max-height: 50px;
}

@media (max-width: 768px) {
  .l-site-wrapper--locale .l-header-logo img {
    max-height: 40px;
  }
}

@media not all and (max-width: 1080px) {
  /* 多言語対応 */
  .l-header-nav.l-header-nav--locale {
    margin-top: 0;
  }

  .l-header-content__locale-main {
    display: flex;
    align-items: center;
    gap: 40px;
  }

  .l-header-nav-has-child.l-header-nav-has-child--locale {
    position: relative;
  }

  .l-header-nav--locale .l-header-nav__link {
    font-family: var(--ff-ubuntu);
    font-size: 20px;
    font-weight: 500;
  }
  .l-header-mega-menu.l-header-mega-menu--locale {
    top: calc(100% + 30px);
    left: 50%;
    translate: -50% 0;
    width: max-content;
    padding: 0;
  }

  .l-header-mega-menu--locale .l-header-mega-menu__parent {
    padding: 12px 32px;
    font-size: 24px;
    letter-spacing: 0;
  }

  .l-header-mega-menu--locale .l-header-mega-menu__overlay {
    left: 50%;
    translate: -50% 0;
    width: 200vw;
  }

  .l-header-mega-menu--locale .l-header-mega-menu__inner {
    max-width: fit-content;
  }

  .l-header-mega-menu--locale .l-header-sub-menu {
    width: auto;
    min-height: 0;
    padding: 15px;
  }

  .l-header-mega-menu--locale .l-header-sub-menu__link {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media (max-width: 1080px) {
  .l-header-nav--locale .l-header-nav-part {
    border-radius: 5px;
  }
}

/* 開館情報 */
.l-header-info-widget__title-en {
  font-family: var(--ff-ubuntu);
  font-weight: 500;
}

@media not all and (max-width: 1080px) {
  .l-header-info-widget__title-en {
    scale: -1 -1;
    font-size: 18px;
    letter-spacing: 0.02em;
  }
}

@media (max-width: 1080px) {
  .l-header-info-opening__txt.l-header-info-opening__txt--locale {
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
  }
}

/* 新ヘッダーナビ */
@media not all and (max-width: 1080px) {
  .l-header-nav.l-header-nav--wrap {
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .l-header-nav.l-header-nav--wrap .l-header-sns-list {
    margin-left: 12px;
  }

  .l-header-nav__selector {
    --selector-color: var(--page-type-main);
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 200px;
    min-height: 40px;
    padding-right: 1em;
    border-radius: 9999px;
    border: 1px solid currentColor;
    background-color: #fff;
    color: var(--selector-color);
    text-decoration: none !important;
  }

  .l-header-nav__selector::after {
    content: "";
    position: absolute;
    right: 12px;
    top: 50%;
    translate: 0 -45%;
    rotate: 90deg;
    width: 0.4em;
    height: 0.8em;
    mask: var(--svg-sm-arrow) no-repeat center / contain;
    background-color: currentColor;
  }

  .l-header-nav__selector img {
    align-self: flex-end;
    width: 32px;
    height: 36px;
    object-fit: cover;
    object-position: top;
  }

  .l-header-nav__selector[aria-expanded="true"] {
    background-color: var(--selector-color);
    color: #fff;
  }

  .l-header-nav__selector[aria-expanded="true"]::after {
    rotate: -90deg;
  }

  .l-header-nav-part.part-type-overview .l-header-nav__selector {
    --selector-color: #101010;
  }

  .l-header-nav-part.part-type-overview .l-header-nav__selector img {
    width: 36px;
    object-fit: contain;
    object-position: center;
  }

  .l-header-nav-part.part-type-overview .l-header-mega-menu__parent--selector {
    --page-type-main: #101010;
  }

  /* メガメニューの最大幅 */
  .l-header-mega-menu:not(:has(.l-header-sub-menu.level-3)) {
    --mega-menu-size: fit-content;
  }
  .l-header-mega-menu:has(.l-header-sub-menu.level-3) {
    --mega-menu-size: min(660px, calc(100vw - 90px - 20px));
    --sub-menu-width: calc(var(--mega-menu-size) / 2);
  }
  .l-header-mega-menu:has(.l-header-sub-menu.level-4) {
    --mega-menu-size: min(990px, calc(100vw - 90px - 20px));
    --sub-menu-width: calc(var(--mega-menu-size) / 3);
  }

  .l-header-sub-menu__item:not(.is-parent) {
    margin-left: 1em;
  }
}

@media (max-width: 1080px) {
  .l-header-nav__selector {
    pointer-events: none;
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 50px;
    padding: 0 15px;
    background-color: var(--page-type-main);
    color: #fff;
    font-size: 18px;
    font-weight: bold;
  }

  .l-header-nav__selector img {
    align-self: flex-end;
    height: 42px;
    object-fit: cover;
    object-position: top;
  }

  .l-header-nav-part.part-type-overview .l-header-nav__selector img {
    display: none;
  }

  /* 上書き */
  .l-header-nav-part.part-type-overview {
    display: block !important;
  }

  .l-header-nav-part.part-type-research {
    border-radius: 0;
  }

  .l-header-nav-part.part-type-overview {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
  }

  .l-header-mega-menu {
    padding-right: 20px;
    padding-left: 20px;
    background-color: var(--page-type-bgc);
  }

  .l-header-mega-menu__parent-link {
    display: block;
  }

  /* 「施設・観覧案内TOP」→「TOP」へ */
  .l-header-nav-part.part-type-public .l-header-mega-menu__parent-link > span {
    display: none;
  }

  /* 最上位のリンク */
  .l-header-mega-menu__parent-link,
  .l-header-sub-menu__item.level-2 > .l-header-sub-menu__link,
  .l-header-sub-menu__item.level-2 > .l-header-sub-menu-has-child > .l-header-sub-menu__link {
    padding: 14px 0;
    font-size: 15px;
    font-weight: 500;
  }

  .l-header-sub-menu__item.level-2:last-child .l-header-sub-menu.level-3 {
    margin-bottom: 20px;
  }

  .l-header-sub-menu.level-3 {
    margin: 0;
    background-color: #fff;
  }

  .l-header-sub-menu.level-4 {
    margin-right: 15px;
    margin-bottom: 15px;
    margin-left: 15px;
    background-color: var(--page-type-bgc);
  }
}

/* フッター */
@media not all and (max-width: 1080px) {
  .l-footer--locale .l-footer-info {
    padding-right: 80px;
  }

  .l-footer--locale .l-footer-nav {
    gap: 20px 32px;
  }
}

@media (max-width: 768px) {
  .l-footer--locale .l-footer-nav {
    display: none;
  }
}

.l-footer-nav__parent {
  font-family: var(--ff-ubuntu);
  font-size: 16px;
  font-weight: 500;
  text-decoration: underline;
}

.l-footer-bottom__inner {
  flex-wrap: wrap;
  gap: 16px 68px;
}

.l-footer-bottom-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-grow: 1;
}

.l-footer-bottom-nav {
  display: flex;
  flex-wrap: wrap;
  font-size: clamp(12px, 2.5vw, 14px);
  font-weight: 400;
}

.l-footer-bottom-nav__item {
}

.l-footer-bottom-nav__item:not(:last-child)::after {
  content: "|";
  margin: 0 10px;
}

/* Cookie Notice
---------------------------------------------- */
#cookie-notice {
  right: 64px;
  bottom: 32px;
  left: 10px;
  max-width: 512px;
  min-width: 0;
  margin-left: auto;
  border-radius: 10px;
  font-family: inherit;
  font-size: 15px !important;
}

#cookie-notice.cookie-notice-visible {
  padding: 5px;
  border: 1px solid #00a1e9;
}

.cookie-notice-container {
  padding: 12px 16px 16px;
  border-radius: 5px;
  background-color: #101010;
  text-align: left;
}

.cookie-notice-heading {
  margin-bottom: 0.5em;
  color: #00a1e9;
  font-size: 16px;
  font-weight: bold;
}

.cn-text-container {
  margin-bottom: 1em;
  line-height: 1.6;
}

.cn-buttons-container {
  display: flex !important;
  justify-content: flex-end;
}

.cn-button {
  padding: 8px 12px !important;
  font-family: inherit !important;
  font-size: 15px !important;
}

.cn-close-icon {
  display: none;
}

@media (max-width: 1080px) {
  #cookie-notice {
    right: 10px;
  }
}

/* TOPページ
---------------------------------------------- */
/* TOPページ動画埋め込み */
.hm-mv.hm-mv--locale {
  --mv-min-height: 850px;
}

.hm-mv-video-background {
  pointer-events: none;
  overflow: hidden;
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
}

.hm-mv-video-background__embed,
.hm-mv-video-background__embed iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  /*
   * 画面のアスペクト比に関わらず、
   * 常に全体を覆うようにするためのサイズ指定
   */
  width: 150vw;
  height: 200vw;
  object-fit: cover;
}

.hm-mv-video-background__video {
  position: relative;
  translate: -50% 0;
  left: 50%;
  width: 118%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1080px) {
  .hm-mv-video-background__embed,
  .hm-mv-video-background__embed iframe {
    min-width: 178vh;
  }
}

@media (max-width: 768px) {
  .hm-mv.hm-mv--locale {
    --mv-min-height: 150vw;
  }
}

/* TOPページインフォメーション */
.l-site-wrapper--locale .hm-information-desc__row {
  grid-template-columns: var(--info-dt-size, 120px) 1fr;
  gap: 8px 40px;
}

@media (max-width: 768px) {
  .l-site-wrapper--locale .hm-information-desc__row {
    grid-template-columns: minmax(0, 1fr);
  }
}

.hm-information-grid {
  --bg-border-y-color: rgba(170, 170, 170, 0.1);
  --bg-border-x-color: rgba(170, 170, 170, 0.2);
  --mv-gap: -10vw;

  margin-top: var(--mv-gap);
  padding-top: calc(54px - var(--mv-gap));
  padding-bottom: clamp(50px, 12vw, 60px);
  border-bottom: 1px solid #555;
  /* background-color: var(--page-type-header-bgc); */
  background-color: #f5f5f5;
  background-image: repeating-linear-gradient(90deg, var(--bg-border-y-color), var(--bg-border-y-color) 1px, transparent 1px, transparent 21px),
    repeating-linear-gradient(0deg, var(--bg-border-x-color), var(--bg-border-x-color) 1px, transparent 1px, transparent 21px);
  background-repeat: repeat;
  background-size: 21px 21px;
}

.hm-information-grid-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--information-btns-width, 520px);
  gap: 20px;
}

.l-site-wrapper--locale .hm-information-grid-wrap {
  --information-btns-width: 346px;
}

@media (max-width: 1080px) {
  .hm-information-grid {
    --mv-gap: 0px;
  }
}

@media (max-width: 768px) {
  .hm-information-grid-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* イントロ */
.hm-intro {
  padding-top: clamp(48px, 10vw, 72px);
}

.hm-intro__wrap {
  display: flex;
  gap: 32px 40px;
}

.hm-intro__main {
}

.hm-intro__header {
  font-family: var(--ff-ubuntu);
  line-height: 1.4;
}

.hm-intro__header-title {
  font-size: clamp(32px, 7.5vw, 40px);
  font-weight: 500;
}

.hm-intro__header-txt {
  color: #1168c3;
  font-size: clamp(20px, 4.5vw, 24px);
  font-style: italic;
  font-weight: 400;
}

.hm-intro__content {
  margin-top: 1em;
}

.hm-intro__pic {
  flex-shrink: 0;
  padding-top: 16px;
}

@media (max-width: 768px) {
  .hm-intro__wrap {
    flex-direction: column-reverse;
    align-items: center;
  }
}

/* The Day Everything Changed */
.hm-change {
}

.hm-change-wrap {
  position: relative;
  margin-top: 80px;
  padding-top: clamp(64px, 15vw, 90px);
  padding-bottom: clamp(64px, 15vw, 90px);
  color: #fff;
}

.hm-change-wrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100%;
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  background-color: #111;
}

@media (max-width: 1080px) {
  .hm-change-wrap::before {
    right: calc(var(--inner-gutter) * -1);
    border-radius: 0;
  }
}

.hm-change-media {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "pic header"
    "pic body";
  gap: 24px 60px;
  max-width: 1140px;
}

.hm-change-media__header {
  grid-area: header;
}

.hm-change-media__pic {
  grid-area: pic;
}

.hm-change-media__pic img {
  border-radius: 10px;
}

.hm-change-media__body {
  grid-area: body;
}

.hm-change-media__title {
  font-family: var(--ff-ubuntu);
  font-size: clamp(32px, 7.5vw, 40px);
  font-weight: 500;
  line-height: 1.1;
}

@media (max-width: 1080px) {
  .hm-change-media {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "header"
      "pic"
      "body";
  }

  .hm-change-media__pic img {
    width: 100%;
  }
}

/* Featured Exhibitions */
.hm-featured {
  margin-top: clamp(60px, 12vw, 90px);
}

.hm-featured-content > * + * {
  margin-top: clamp(32px, 8vw, 40px);
}

.hm-featured-content-media {
  display: flex;
  gap: 24px 40px;
}

.hm-featured-content-media__pic {
  display: flex;
  gap: 20px;
  min-width: fit-content;
}

.hm-featured-content-media__pic img {
  border-radius: 10px;
}

.hm-featured-content-media__content > * + * {
  margin-top: 1em;
}

.hm-featured-view-more {
  margin-top: 40px;
  text-align: right;
}

.hm-featured-view-more .c-btn {
  width: 250px;
  font-family: var(--ff-ubuntu);
  font-size: 18px;
}

.hm-featured-view-more .c-btn[href*=".pdf"]::after {
  content: "PDF";
  display: inline-block;
  margin-left: 6px;
  padding: 0 8px;
  border: 1px solid;
  border-radius: 9999px;
  font-size: 13px;
}

@media not all and (max-width: 1080px) {
  .hm-featured-content-media.reverse {
    flex-direction: row-reverse;
  }
}

@media (max-width: 1080px) {
  .hm-featured-content-media {
    flex-direction: column;
  }

  .hm-featured-view-more {
    text-align: center;
  }
}

/* アクセス */
.hm-access-locale-content {
  color: #fff;
}

.hm-access-btns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.hm-access-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 80px;
  border-radius: 5px;
  border: 1px solid transparent;
  background-color: var(--c-main);
  color: #fff;
  font-family: var(--ff-ubuntu);
  font-size: clamp(18px, 4vw, 24px);
  font-weight: 500;
  transition: 0.3s ease-in-out;
}

.hm-access-btn:hover,
.hm-access-btn:focus {
  opacity: 1;
  border-color: currentColor;
  background-color: #fff;
  color: var(--c-main);
}

@media (max-width: 1080px) {
  .l-site-wrapper--locale .hm-access-wrap__main {
    order: 2;
  }

  .l-site-wrapper--locale .hm-access-map__deco {
    top: 90%;
  }
}

@media (max-width: 480px) {
  .hm-access-btn {
    min-height: 60px;
  }
}

/* フロアガイド */
.hm-floor-guide-map-container--locale .hm-floor-guide-modal-trigger[aria-controls="floor-guide-west-5f-1"] {
  left: 27%;
}

.hm-floor-guide-map-container--en .hm-floor-guide-modal-trigger[aria-controls="floor-guide-west-5f-1"],
.hm-floor-guide-map-container--pt .hm-floor-guide-modal-trigger[aria-controls="floor-guide-west-5f-1"],
.hm-floor-guide-map-container--fr .hm-floor-guide-modal-trigger[aria-controls="floor-guide-west-5f-1"] {
  left: 19%;
}

/* カレンダー */
.l-site-wrapper--locale .is-root-container .xo-event-calendar .month-prev::after,
.l-site-wrapper--locale .is-root-container .xo-event-calendar .month-next::before {
  content: none !important;
}

/* ブロックエディター */
.l-site-wrapper--locale .kt-blocks-accordion-header {
  font-family: inherit !important;
}

/* イベント情報
---------------------------------------------- */
/* 共通メタ情報 */
.p-event-cat {
  --bullet-size: 8px;
  font-size: clamp(16px, 3.5vw, 18px);
  font-weight: bold;
  color: var(--c-main);
}
.p-event-cat::before {
  content: "";
  display: inline-block;
  width: var(--bullet-size);
  aspect-ratio: 1;
  margin-right: var(--bullet-size);
  border-radius: 50%;
  background-color: currentColor;
  vertical-align: 0.2em;
}

.p-event-status {
  --status-border: transparent;
  --status-bgc: #00a1e9;
  --status-color: #fff;
  padding: 0 0.9375em;
  border: 1px solid var(--status-border);
  border-radius: 9999px;
  background-color: var(--status-bgc);
  color: var(--status-color);
  font-size: clamp(14px, 3vw, 16px);
  font-weight: bold;
  line-height: 1.625;
}

/* 開催前、開催直近 */
.p-event-status.upcoming,
.p-event-status.coming-soon {
  --status-border: #00a1e9;
  --status-bgc: transparent;
  --status-color: #00a1e9;
}

/* 開催終了 */
.p-event-status.finished {
  --status-bgc: #888;
  --status-color: #fff;
}

/* 日程変更 */
.p-event-status.change {
  --status-border: #c31111;
  --status-bgc: #fff;
  --status-color: #c31111;
}

/* 開催中止 */
.p-event-status.cancel {
  --status-bgc: #c31111;
  --status-color: #fff;
}

.p-event-icon-meta {
  --meta-icon-size: 24px;
  position: relative;
  padding-left: calc(var(--meta-icon-size) + 10px);
}

.p-event-icon-meta::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: var(--meta-icon-size);
  height: var(--meta-icon-size);
  mask: var(--meta-icon-svg) no-repeat center / contain;
  background-color: currentColor;
}

.p-event-date {
  --meta-icon-svg: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 22 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.556 2.4H18.333V0H15.889V2.4H6.111V0H3.667V2.4H2.444C2.12654 2.39723 1.81167 2.45719 1.51744 2.57642C1.22321 2.69566 0.955434 2.87183 0.729468 3.09482C0.503503 3.31781 0.323801 3.58324 0.200679 3.87586C0.0775562 4.16848 0.0134364 4.48254 0.0120001 4.8L0 21.6C0.00607265 22.2423 0.266918 22.8559 0.725205 23.3059C1.18349 23.7559 1.80172 24.0056 2.444 24H19.556C20.1977 24.0037 20.8149 23.7535 21.2728 23.3038C21.7307 22.8542 21.9921 22.2417 22 21.6V4.8C21.9921 4.15831 21.7307 3.54579 21.2728 3.09615C20.8149 2.64651 20.1977 2.39625 19.556 2.4ZM19.556 21.6H2.444V9.6H19.556V21.6ZM7.333 14.4H4.889V12H7.333V14.4ZM12.222 14.4H9.778V12H12.222V14.4ZM17.111 14.4H14.667V12H17.111V14.4ZM7.333 19.2H4.889V16.8H7.333V19.2ZM12.222 19.2H9.778V16.8H12.222V19.2ZM17.111 19.2H14.667V16.8H17.111V19.2Z" /></svg>');
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  font-size: clamp(16px, 3.5vw, 18px);
  font-weight: bold;
  line-height: 1;
}

.p-event-date .num {
  display: inline-block;
  translate: 0 2%;
  margin: 0 0.15em;
  font-family: var(--ff-ubuntu);
  font-size: clamp(22px, 5vw, 28px);
  font-weight: 500;
}

.p-event-date .num:first-child {
  margin-left: 0;
}

.p-event-date .week {
  margin-right: -0.5em;
  margin-left: -0.3em;
}

.p-event-time {
  --meta-icon-svg: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 0C14.3734 0 16.6935 0.703788 18.6668 2.02236C20.6402 3.34094 22.1783 5.21509 23.0866 7.4078C23.9948 9.60051 24.2324 12.0133 23.7694 14.3411C23.3064 16.6689 22.1635 18.8071 20.4853 20.4853C18.8071 22.1635 16.6689 23.3064 14.3411 23.7694C12.0133 24.2324 9.60051 23.9948 7.4078 23.0866C5.21509 22.1783 3.34094 20.6402 2.02236 18.6668C0.703788 16.6935 0 14.3734 0 12C0.00370522 8.81854 1.26918 5.76844 3.51881 3.51881C5.76844 1.26918 8.81854 0.00370522 12 0ZM12 21.818C13.9418 21.818 15.84 21.2422 17.4546 20.1634C19.0691 19.0846 20.3275 17.5512 21.0707 15.7572C21.8138 13.9632 22.0082 11.9891 21.6294 10.0846C21.2505 8.1801 20.3154 6.4307 18.9424 5.05763C17.5693 3.68455 15.8199 2.74948 13.9154 2.37065C12.0109 1.99182 10.0368 2.18625 8.24281 2.92935C6.44881 3.67245 4.91545 4.93085 3.83663 6.54541C2.75782 8.15997 2.182 10.0582 2.182 12C2.18491 14.603 3.22024 17.0986 5.06084 18.9392C6.90144 20.7798 9.397 21.8151 12 21.818Z" /><path d="M17.517 14.302H11.844C11.547 14.302 11.2621 14.184 11.052 13.974C10.842 13.7639 10.724 13.479 10.724 13.182V4.672C10.724 4.37482 10.8421 4.08982 11.0522 3.87969C11.2623 3.66955 11.5473 3.5515 11.8445 3.5515C12.1417 3.5515 12.4267 3.66955 12.6368 3.87969C12.8469 4.08982 12.965 4.37482 12.965 4.672V12.061H17.517C17.8142 12.061 18.0992 12.1791 18.3093 12.3892C18.5194 12.5993 18.6375 12.8843 18.6375 13.1815C18.6375 13.4787 18.5194 13.7637 18.3093 13.9738C18.0992 14.1839 17.8142 14.302 17.517 14.302Z" /></svg>');
  font-family: var(--ff-ubuntu);
  font-size: clamp(16px, 3.5vw, 18px);
  font-weight: normal;
}

.p-event-location {
  --meta-icon-svg: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 20 24" xmlns="http://www.w3.org/2000/svg"><path d="M9.441 23.6232C7.73753 22.4197 6.16761 21.0375 4.758 19.5002C3.48493 18.1525 2.39367 16.644 1.512 15.0132C0.559199 13.2853 0.0403258 11.3519 0 9.37918C0.00964731 8.13316 0.277268 6.90265 0.786 5.76518C1.29944 4.61315 2.03946 3.57623 2.962 2.71618C4.85805 0.958436 7.35156 -0.0125164 9.937 0.000176588H10.063C12.6462 -0.0150615 15.1378 0.956402 17.029 2.71618C17.9519 3.57645 18.6931 4.61283 19.209 5.76418C19.7201 6.90001 19.9895 8.1297 20 9.37518C19.9555 11.3499 19.4369 13.2849 18.488 15.0172C17.6028 16.6463 16.5115 18.1547 15.241 19.5052C13.828 21.0396 12.2559 22.4194 10.551 23.6212L10 24.0002L9.441 23.6232ZM4.3 4.01018C3.55619 4.69432 2.9604 5.52356 2.54935 6.44679C2.13831 7.37001 1.92072 8.36764 1.91 9.37818C1.94798 11.0634 2.39406 12.7142 3.21 14.1892C4.01932 15.6768 5.01575 17.0546 6.175 18.2892C7.34522 19.5518 8.62524 20.708 10 21.7442C11.3738 20.7073 12.6529 19.5504 13.822 18.2872C14.9816 17.0552 15.975 15.6768 16.777 14.1872C17.5913 12.7096 18.0404 11.0587 18.087 9.37218C18.0741 8.36149 17.8546 7.36413 17.4418 6.44148C17.0291 5.51883 16.4319 4.6904 15.687 4.00718C14.1582 2.58296 12.1434 1.79607 10.054 1.80718H9.954C7.85731 1.79334 5.83462 2.58145 4.3 4.01018ZM10 13.4532H9.973C8.84976 13.4601 7.76614 13.0385 6.943 12.2742C6.53627 11.9084 6.21102 11.4613 5.98838 10.9616C5.76574 10.462 5.65068 9.92116 5.65068 9.37418C5.65068 8.8272 5.76574 8.28634 5.98838 7.78672C6.21102 7.2871 6.53627 6.83991 6.943 6.47418C7.76733 5.71172 8.85115 5.29192 9.974 5.30018H10.025C11.1454 5.29674 12.2254 5.71845 13.047 6.48018C13.4527 6.84587 13.7771 7.29271 13.9992 7.79177C14.2212 8.29082 14.336 8.83095 14.336 9.37718C14.336 9.9234 14.2212 10.4635 13.9992 10.9626C13.7771 11.4616 13.4527 11.9085 13.047 12.2742C12.226 13.0348 11.1472 13.4561 10.028 13.4532H10ZM8.286 7.77218C8.06282 7.9769 7.88377 8.22501 7.7598 8.50133C7.63582 8.77765 7.56954 9.07636 7.565 9.37918C7.57399 9.68029 7.6424 9.97665 7.76631 10.2512C7.89021 10.5258 8.06717 10.7732 8.287 10.9792C8.7497 11.4063 9.35731 11.6418 9.987 11.6382H10.02C10.6452 11.6402 11.2479 11.4046 11.706 10.9792C11.9327 10.7778 12.1141 10.5307 12.2384 10.2542C12.3627 9.97762 12.4269 9.67787 12.4269 9.37468C12.4269 9.07148 12.3627 8.77173 12.2384 8.49517C12.1141 8.21861 11.9327 7.97152 11.706 7.77018C11.2469 7.34417 10.6433 7.10828 10.017 7.11018H9.983C9.35388 7.10779 8.74732 7.34441 8.286 7.77218Z" /></svg>');
  letter-spacing: 0.03em;
}

.p-event-application-txt {
  --application-txt-fz: 16px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 4px 10px;
  color: #009944;
  font-size: var(--application-txt-fz);
  font-weight: bold;
  letter-spacing: 0.03em;
}

.p-event-application-txt dt {
  padding: 0 8px;
  background-color: #009944;
  color: #fff;
  font-size: calc(var(--application-txt-fz) - 1px);
  letter-spacing: 0;
}

.p-event-note-txt {
  --note-txt-fz: 16px;
  max-width: fit-content;
  padding: 2px 8px;
  border: 1px solid #ccc;
  font-size: var(--note-txt-fz);
  font-weight: normal;
  letter-spacing: 0;
  line-height: 1.5;
}

/* 詳細ページ */
.p-event-detail {
}

.p-event-detail.finished {
  --overlay-txt: "開催終了";
}

.p-event-detail.cancel {
  --overlay-txt: "開催中止";
}

.p-event-detail-header {
  display: flex;
  align-items: flex-start;
  gap: 32px 50px;
  margin-bottom: 56px;
  padding-bottom: 48px;
  border-bottom: 1px solid #555;
}

.p-event-detail-header__thumb {
  --border-radius: clamp(5px, 1.25vw, 10px);
  position: relative;
}

.p-event-detail-header__thumb::after {
  content: var(--overlay-txt, none);
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  border-radius: var(--border-radius);
  background-color: rgba(17, 17, 17, 0.3);
  color: #fff;
  font-size: clamp(24px, 5vw, 32px);
  letter-spacing: 0.03em;
}

.p-event-detail-header__thumb img {
  width: 100%;
  border-radius: var(--border-radius);
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

@media not all and (max-width: 768px) {
  .p-event-detail-header__thumb {
    flex-basis: 500px;
  }

  .p-event-detail-header__main {
    flex-grow: 1;
    flex-basis: 530px;
  }
}

.p-event-detail-header__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 20px;
  margin-bottom: clamp(10px, 2vw, 14px);
}

.p-event-detail-header__title {
  font-size: clamp(24px, 5.5vw, 32px);
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.375;
}

.p-event-detail-header__info {
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 2vw, 16px);
  margin-top: clamp(20px, 4.5vw, 24px);
}

@media (max-width: 768px) {
  .p-event-detail-header {
    flex-direction: column;
    margin-bottom: 40px;
    padding-bottom: 32px;
  }

  .p-event-detail-header__thumb {
    width: 100%;
  }

  .p-event-detail-header__thumb img {
    width: 100%;
  }
}

/* 一覧ページ */
.p-event-cards {
  --event-card-border: 1px dashed #555;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-left: -1px;
  border-top: var(--event-card-border);
  border-left: var(--event-card-border);
}

.p-event-cards__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-left: -1px;
  border-right: var(--event-card-border);
  border-bottom: var(--event-card-border);
}

.p-event-cards__item.finished {
  --overlay-txt: "開催終了";
}

.p-event-cards__item.cancel {
  --overlay-txt: "開催中止";
}

@media (max-width: 1080px) {
  .p-event-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .p-event-cards {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

/* イベントが1件だけの場合 */
@media not all and (max-width: 768px) {
  .p-event-cards.p-event-cards--count-1 {
    grid-template-columns: minmax(0, 1fr);
    max-width: calc(100% / 2);
  }
}

@media not all and (max-width: 1080px) {
  .p-event-cards.p-event-cards--count-1 {
    max-width: calc(100% / 3);
  }
}

/* イベントが2件だけの場合 */
@media not all and (max-width: 1080px) {
  .p-event-cards.p-event-cards--count-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: calc(100% * 2 / 3);
  }
}

.p-event-card {
  padding: 32px;
}

.p-event-card:hover,
.p-event-card:focus {
  background-color: rgba(219, 231, 246, 0.5);
  opacity: 1;
}

.p-event-card__thumb {
  --border-radius: clamp(5px, 1.25vw, 10px);
  position: relative;
  margin-bottom: 16px;
}

.p-event-card__thumb::after {
  content: var(--overlay-txt, none);
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  border-radius: var(--border-radius);
  background-color: rgba(17, 17, 17, 0.3);
  color: #fff;
  font-size: clamp(18px, 4vw, 20px);
  letter-spacing: 0.03em;
}

.p-event-card__thumb img {
  width: 100%;
  border-radius: var(--border-radius);
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

.p-event-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.p-event-card__meta .p-event-cat {
  --bullet-size: 6px;
  font-size: clamp(13px, 3vw, 14px);
}

.p-event-card__meta .p-event-status {
  margin-left: auto;
  font-size: 13px;
}

.p-event-card__title {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.02em;
  line-height: 1.5;
}

.p-event-card__info {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 16px 8px;
  margin-top: 16px;
}

.p-event-card__info .p-event-icon-meta {
  padding-left: calc(var(--meta-icon-size) + 4px);
}

.p-event-card__info .p-event-date {
  --meta-icon-size: 20px;
  flex-grow: 1;
  font-size: 12px;
  margin-right: -24px;
}

.p-event-card__info .p-event-date .num {
  margin: 0 0.05em;
  font-size: clamp(17px, 4vw, 18px);
}

.p-event-card__info .p-event-date .week {
  margin-right: -0.5em;
  margin-left: -0.5em;
  font-size: 14px;
}

.p-event-card__info .p-event-time {
  --meta-icon-size: 16px;
  font-size: 14px;
  line-height: 1;
}

.p-event-card__info .p-event-application-txt {
  --application-txt-fz: 14px;
}

.p-event-card__info .p-event-note-txt {
  --note-txt-fz: 14px;
}

@media (max-width: 600px) {
  .p-event-card {
    padding: 24px;
  }
}

/* 特殊なグリッドレイアウト（PC時） */
@media not all and (max-width: 1080px) {
  .p-event-cards-grid {
    display: grid;
    grid-template-columns: 3fr 2fr;
    grid-template-rows: auto 1fr;
  }

  .p-event-cards-grid__left,
  .p-event-cards-grid__right {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .p-event-cards-grid__left .p-event-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto 1fr;
    height: 100%;
  }

  .p-event-cards-grid__left .p-event-cards__item:first-child .p-event-card {
    display: grid;
    grid-template-columns: 54% minmax(0, 1fr);
    align-items: start;
    gap: 24px;
  }

  .p-event-cards-grid__right .p-event-cards {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    border-left: none;
  }

  .p-event-cards-grid__right .p-event-card {
    display: grid;
    grid-template-columns: 125px minmax(0, 1fr);
    align-items: start;
    gap: 24px;
  }

  .p-event-cards-grid__right .p-event-cat {
    font-size: 13px;
  }

  .p-event-cards-grid__right .p-event-card__info {
    row-gap: 12px;
  }

  .p-event-cards-grid__right .p-event-date .num {
    font-size: 16px;
  }

  .p-event-cards-grid__right .p-event-note-txt {
    font-size: 13px;
  }
}

@media not all and (max-width: 768px) {
  .p-event-cards-grid__left .p-event-cards__item:first-child {
    grid-column: 1 / 3;
  }

  .p-event-cards-grid__left .p-event-cards__item:first-child .p-event-card__title {
    font-size: 20px;
  }

  .p-event-cards-grid__left .p-event-card__title {
    font-size: 18px;
  }
}

.p-event-cards-grid-btn {
  justify-self: center;
  margin-top: clamp(24px, 5vw, 52px);
}

@media (max-width: 1080px) {
  .p-event-cards-grid-btn {
    justify-self: center;
  }
}

/* イベント絞り込みウィジェット */
.p-event-filter-form {
  margin-bottom: 50px;
  padding: 40px 60px;
  border-radius: 10px;
  background-color: #f5f5f5;
}

.p-event-filter-form-block {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  align-items: center;
  gap: 16px 60px;
}

.p-event-filter-form-block + .p-event-filter-form-block {
  margin-top: 28px;
}

.p-event-filter-form-block__label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.03em;
}

.p-event-filter-form-block__item {
}

.p-event-filter-btns {
  display: flex;
  gap: 8px;
}

.p-event-filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 0.25em 0.5em;
  border: 1px solid var(--c-main);
  border-radius: 5px;
  background-color: #fff;
  color: var(--c-main);
}

.p-event-filter-btn.is-active {
  border-color: transparent;
  background-color: var(--c-main);
  color: #fff;
  font-weight: bold;
}

.p-event-filter-select {
  appearance: none;
  max-width: 330px;
  width: 100%;
  min-height: 48px;
  padding: 0.25em 40px 0.25em 20px;
  border: 1px solid var(--c-main);
  border-radius: 5px;
  background-color: #fff;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 13 8" xmlns="http://www.w3.org/2000/svg"><path d="M6.08115 7.16183L0.000303304 1.08099L0.848279 0.233012L6.08115 5.46588L11.314 0.233012L12.162 1.08099L6.08115 7.16183Z" fill="%231168c3" /></svg>');
  background-repeat: no-repeat;
  background-position: right 20px top 55%;
  background-size: 13px 8px;
  color: var(--c-main);
}

@media (max-width: 1080px) {
  .p-event-filter-form {
    padding: 28px 32px;
  }

  .p-event-filter-form-block {
    column-gap: 32px;
  }

  .p-event-filter-form-block__label {
    font-size: 20px;
  }
}

@media (max-width: 768px) {
  .p-event-filter-form-block {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 480px) {
  .p-event-filter-btns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* SNSシェア
---------------------------------------------- */
.p-detail-sns-widget {
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px dashed #555;
  border-bottom: 1px dashed #555;
}

.p-detail-sns-widget__content {
  --sns-widget-gap: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px 20px;
}

.p-detail-sns-widget__label-share {
  font-family: var(--ff-ubuntu);
  font-weight: 500;
  letter-spacing: 0;
}

.p-detail-sns-widget__label-official {
  font-weight: 500;
  letter-spacing: 0.03em;
}

.p-detail-sns-list {
  display: flex;
  align-items: center;
  gap: var(--sns-list-gap, 16px);
}

.p-detail-sns-list.-official {
  --sns-list-gap: 26px;
}

.p-detail-sns-list > li {
}

.p-detail-sns-list > li > a {
  display: grid;
}

.p-detail-sns-list img {
  width: auto;
  height: 24px;
}

@media not all and (max-width: 768px) {
  .p-detail-sns-widget__content {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  .p-detail-sns-widget__content + .p-detail-sns-widget__content {
    margin-left: var(--sns-widget-gap);
    padding-left: var(--sns-widget-gap);
    border-left: 1px dashed #555;
  }
}

@media (max-width: 1080px) {
  .p-detail-sns-widget__content {
    --sns-widget-gap: 32px;
  }
}

@media (max-width: 768px) {
  .p-detail-sns-widget {
    flex-direction: column;
    align-items: stretch;
    padding: 24px 0;
  }

  .p-detail-sns-widget__content {
    --sns-widget-gap: 24px;
    flex-wrap: wrap;
  }

  .p-detail-sns-widget__content + .p-detail-sns-widget__content {
    margin-top: var(--sns-widget-gap);
    padding-top: var(--sns-widget-gap);
    border-top: 1px dashed #555;
  }
}

/* TOPページ：イベント情報
---------------------------------------------- */
.hm-exhibitions {
  padding-top: 80px;
}

.hm-exhibitions-archive {
}

@media (max-width: 480px) {
  .hm-exhibitions .c-heading-a .-main {
    font-size: 32px;
  }
}

/* instagram フィード */
.hm-exhibitions-instagram .sbi {
  margin-top: clamp(60px, 12.5vw, 90px) !important;
}

.p-instagram-feed .sbi {
  padding: 30px 60px 24px !important;

  --bg-border-y-color: rgba(170, 170, 170, 0.1);
  --bg-border-x-color: rgba(170, 170, 170, 0.2);
  border-radius: 30px;
  border: 1px solid #707070;
  background-color: #f5f5f5;
  background-image: repeating-linear-gradient(90deg, var(--bg-border-y-color), var(--bg-border-y-color) 1px, transparent 1px, transparent 21px),
    repeating-linear-gradient(0deg, var(--bg-border-x-color), var(--bg-border-x-color) 1px, transparent 1px, transparent 21px);
  background-repeat: repeat;
  background-size: 21px 21px;
}

.p-instagram-feed .sb_instagram_header {
  padding: 0 !important;
}

.p-instagram-feed .sb_instagram_header h3 {
  color: var(--c-main) !important;
  font-size: 15px !important;
}

.p-instagram-feed .sb_instagram_header p {
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.03em !important;
}

.p-instagram-feed #sbi_images {
  padding: 20px 0 !important;
}

@media (max-width: 1080px) {
  .p-instagram-feed .sbi {
    padding: 20px !important;
  }
}

/* TOPページ：新着お知らせ
---------------------------------------------- */
.hm-information-archive-section {
}

.hm-information-archive-grid {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 80px;
}

.hm-information-archive-more__link {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  font-weight: bold;
}

@media (max-width: 1080px) {
  .hm-information-archive-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hm-information-archive-more {
    position: absolute;
    top: 32px;
    right: 0;
  }
}

@media (max-width: 768px) {
  .hm-information-archive-grid {
    padding-bottom: 60px;
  }

  .hm-information-archive-more {
    top: auto;
    bottom: 0;
  }
}

.hm-information-archive + .hm-information-archive {
  margin-top: 44px;
}

.hm-information-archive__heading {
  margin-bottom: clamp(20px, 4.5vw, 30px);
}

/* お知らせ一覧
---------------------------------------------- */
.p-information-archive {
}

.p-information-archive-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin-bottom: 60px;
}

.p-information-archive__heading {
  font-size: clamp(24px, 5vw, 28px);
  font-weight: bold;
  letter-spacing: 0.03em;
}

.p-information-category-select {
  max-width: 100%;
  width: 240px;
}
.p-information-category-select select {
  appearance: none;
  width: 100%;
  min-height: 48px;
  padding: 0.25em 40px 0.25em 20px;
  border: 1px solid var(--c-main);
  border-radius: 5px;
  background-color: #fff;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 13 8" xmlns="http://www.w3.org/2000/svg"><path d="M6.08115 7.16183L0.000303304 1.08099L0.848279 0.233012L6.08115 5.46588L11.314 0.233012L12.162 1.08099L6.08115 7.16183Z" fill="%231168c3" /></svg>');
  background-repeat: no-repeat;
  background-position: right 20px top 55%;
  background-size: 13px 8px;
  color: var(--c-main);
}

@media (max-width: 768px) {
  .p-information-archive-header {
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: 28px;
  }
}

/* meta */
.p-information-date {
  display: inline-block;
  min-width: 86px;
  font-family: var(--ff-ubuntu);
  color: #555;
  letter-spacing: 0.03em;
  line-height: 1;
}
.p-information-tag {
  flex-shrink: 0;
  align-self: baseline;
  /* min-width: 98px; */
  min-width: 112px;
  padding: 4px 10px 5px;
  border-radius: 9999px;
  background-color: var(--tag-color, #00a1e9);
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.p-information-tag.important {
  --tag-color: #c31111;
}

.p-information-tag.management {
  /* 色指定が必要であれば */
}

.p-information-tag.research {
  --tag-color: #009944;
}

.p-information-tag.recruit {
  --tag-color: #1168c3;
}

.p-information-tag.bid,
.p-information-tag.bidding,
.p-information-tag.other {
  --tag-color: #555555;
}

@media (max-width: 768px) {
  .p-information-tag {
    min-width: 0px;
  }
}

/* loop */
.p-information-article-list {
}

.p-information-article-list__item {
  border-bottom: 1px dashed #555;
}

.p-information-article-list__item:first-child {
  border-top: 1px dashed #555;
}

.p-information-article {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  gap: 10px 28px;
  padding: 24px 12px;
  font-size: clamp(15px, 3.5vw, 16px);
  font-weight: normal;
}

.p-information-article:hover,
.p-information-article:focus {
  --title-color: var(--page-type-main);
  opacity: 1;
}

.p-information-article__meta {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p-information-article__title {
  display: flex;
  align-items: center;
  gap: 1em;
  padding-right: 1em;
  color: var(--title-color);
  transition: color 0.3s ease-in-out;
}

@media (max-width: 768px) {
  .p-information-article {
    grid-template-columns: minmax(0, 1fr);
    padding: 16px 10px;
    font-size: 15px;
  }
}

/* 詳細 */
.p-information-detail {
}

.p-information-detail-header {
  margin-bottom: 56px;
  padding-bottom: 24px;
  border-bottom: 1px solid #555;
}

.p-information-detail-header__title {
  font-size: clamp(24px, 5.5vw, 32px);
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.375;
}

.p-information-detail-header__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin-bottom: clamp(12px, 3vw, 20px);
}

.p-information-detail-header__meta .p-information-tag {
  min-width: 0;
  padding: 5px 16px 6px;
  font-size: clamp(14px, 3vw, 16px);
}

.p-information-detail-header__meta .p-information-date {
  font-size: clamp(16px, 3.5vw, 18px);
}

@media (max-width: 768px) {
  .p-information-detail-header {
    margin-bottom: 40px;
    padding-bottom: 16px;
  }
}
