@charset "UTF-8";
html {
  scroll-behavior: smooth;
}

body {
  background-image: url("../images/bg_pc.webp");
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  color: var(--color-gray);
  font-family: "游ゴシック体", "Yu Gothic", "游ゴシック", "YuGothic", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.8;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 935px) {
  body {
    font-size: 1rem;
    line-height: 1.65;
  }
}
body.no-scroll {
  overflow: hidden;
}

section {
  margin-top: -25px;
  padding-top: 0;
}

@media screen and (max-width: 540px) {
  section {
    margin-top: 0;
    padding-top: 0;
  }
}
img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
  width: 100%;
}

ul, ol, li {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  transition: 0.3s;
  opacity: 0.7;
}

.cont-inner {
  width: 80%;
  margin: 0 auto;
  padding: 30px 0;
}

h2 {
  width: 100%;
  margin: 0 auto 30px;
  text-align: center;
}

h2 img {
  height: 30px;
  width: auto;
}

/*================================================

pc header 

================================================*/
.pc_top_header {
  display: none;
}

@media screen and (min-width: 935px) {
  .pc_top_header {
    display: block;
    height: 100dvh;
    left: 0;
    position: fixed;
    top: 0;
    width: 50.9259259259vw;
  }
}
@media screen and (min-width: 1024px) {
  .pc_top_header {
    width: 54.1005291005vw;
  }
}
.top_omc_logo_pc {
  display: grid;
  height: min(134px, 8.8624338624vw);
  left: min(24px, 1.5873015873vw);
  place-content: center;
  position: absolute;
  top: 0;
  width: min(146px, 9.6560846561vw);
}

.top_omc_logoImg {
  width: min(117px, 7.7380952381vw);
}

.pc_headerMenu {
  display: grid;
  gap: min(31px, 3.1568228106vh);
  height: 100dvh;
  place-content: center;
}

.pc_headerMenu_ttl {
  height: min(450px, 40vh);
}

.pc_headerMenu_ttl img {
  height: 100%;
  width: auto;
}

.top_menu {
  display: flex;
  gap: min(23px, 2.3421588595vh);
  justify-content: center;
  align-content: center;
  text-align: center;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
}

.top_menuLink {
  display: block;
}

@media (any-hover: hover) {
  .top_menuLink:hover span {
    background-color: var(--color-white);
  }
}
.top_menuLink span {
  background-color: var(--color-gray);
  display: block;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  transition: background-color 0.3s;
}

.top_menu_exhibition span {
  aspect-ratio: 550/104;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_exhibition.svg");
  mask-image: url("../../assets/images/top_menu_exhibition.svg");
}

.top_menu_guest span {
  aspect-ratio: 718/104;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_guest.svg");
  mask-image: url("../../assets/images/top_menu_guest.svg");
}

.top_menu_access span {
  aspect-ratio: 396/96;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_access.svg");
  mask-image: url("../../assets/images/top_menu_access.svg");
}

.top_menu_faq span {
  aspect-ratio: 226/99;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_faq.svg");
  mask-image: url("../../assets/images/top_menu_faq.svg");
}

.top_menu_research span {
  aspect-ratio: 221/104;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_research.svg");
  mask-image: url("../../assets/images/top_menu_research.svg");
}

.top_menu_conect span {
  aspect-ratio: 725/104;
  height: min(38px, 2.2403258656vh);
  -webkit-mask-image: url("../../assets/images/top_menu_conect.svg");
  mask-image: url("../../assets/images/top_menu_conect.svg");
}

/*================================================

sp-header

================================================*/
/* 初期状態では非表示 */
.header_sp {
  display: none;
}

.omc_logo_sp {
  display: none;
}

/* 935px以下のときだけ表示 */
@media screen and (max-width: 935px) {
  .header_sp {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 390px;
    z-index: 1002;
    margin: 0 auto;
    right: 0;
  }
  .omc_logo_sp {
    display: block;
    width: 20%;
    margin: 10px 0 20px 10px;
  }
}
@media screen and (max-width: 935px) and (max-width: 540px) {
  .omc_logo_sp {
    margin: 0 0 20px 10px;
  }
}
/* 540px以下のときだけ表示 */
@media screen and (max-width: 540px) {
  .header_sp {
    width: 100%;
    right: 0;
    left: 0;
  }
}
.hamburgerBtn {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 32px;
  height: 12px;
  background: none;
  border: none;
  z-index: 1001;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
  z-index: 1003;
}
.hamburgerBtn.active span:first-child {
  transform: rotate(45deg) translate(3px, 4px);
}
.hamburgerBtn.active span:last-child {
  transform: rotate(-45deg) translate(3px, -4px);
}

.hamburgerBtn span {
  display: block;
  height: 2px;
  width: 100%;
  background: #9c9596 !important;
  border-radius: 2px;
}

.menuOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: var(--color-beige);
  background-image: url(../images/bg_pc.png);
  background-position: center;
  display: none;
  z-index: 1000;
}
.menuOverlay .dialogWrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.menuOverlay .menu_sp {
  list-style: none;
  padding: 0;
  justify-content: center;
  align-items: center;
  text-align: center;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}
.menuOverlay .menu_sp li {
  margin: 10px 0;
}
.menuOverlay .menu_sp li a {
  font-size: 24px;
  color: #000;
  text-decoration: none;
}
.menuOverlay .snsIcons_mesu_sp {
  display: flex;
  gap: 20px;
  margin-top: 40px;
}
.menuOverlay .snsIcons_mesu_sp img {
  width: 48px;
  height: auto;
}

/*================================================

hero_sp

================================================*/
.hero_sp {
  background-image: url(../images/bg_sp.webp);
  background-size: cover;
  background-position: center;
  padding: 30px 0 30px;
  position: relative;
}
.hero_sp .kv-sp {
  width: 80%;
  margin: 30px auto 30px;
}

@media screen and (max-width: 935px) {
  .hero_sp {
    padding: 30px 0 30px;
  }
  .hero_sp .kv-sp {
    margin: 0 auto 30px;
  }
}
@media screen and (max-width: 540px) {
  .hero_sp {
    padding: 10px 0 30px;
  }
}
.floating {
  position: absolute;
  max-width: 110px;
  height: auto;
  bottom: 13%;
  right: 3%;
  width: 35%;
}

/*================================================

read-area

================================================*/
.read-area {
  background-color: var(--color-beige);
}

.read-inner {
  width: 80%;
  margin: 0 auto;
  padding: 30px 0;
}
.read-inner p span {
  font-size: 0.8em;
}

.lead-contents {
  margin: 50px auto 0;
  width: 100%;
}

.lead-contents__md {
  margin-bottom: 30px;
}

.lead-contentsNote {
  line-height: 1rem;
  margin-bottom: 30px;
}

/*================================================

exhibition-area

================================================*/
.exhibition-lead {
  margin-bottom: 30px;
}

.exhibit-box {
  background-color: var(--color-beige);
  padding: 0 min(20px, 6.1538461538vw) 10px;
  margin-bottom: 30px;
}
.exhibit-box h3 {
  padding: 10px;
  text-align: center;
}
.exhibit-box h3 img {
  height: min(25px, 7vw);
  width: auto;
}
.exhibit-box .exhibit-img {
  margin-bottom: 10px;
}

/*================================================

guest-area

================================================*/
.guest-area {
  background-color: var(--color-lightb);
}

.guest-lead {
  margin-bottom: 30px;
}

.guest-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guest-list img {
  width: 45%;
  margin-bottom: 30px;
}

.moredoor {
  padding: 0 0 25px;
  text-align: center;
}
.moredoor .logo {
  max-height: 180px;
  width: auto;
}
.moredoor .ttl img {
  height: 20px;
  width: auto;
}

/*================================================

access-area

================================================*/
.access-box {
  background-color: var(--color-beige);
  padding: 0 min(20px, 6.1538461538vw) 10px;
  margin-bottom: 30px;
  text-align: center;
}
.access-box iframe {
  width: 100%;
  aspect-ratio: 4/3;
  height: auto;
  margin-top: 20px;
}
.access-box .venue {
  font-size: 1em;
  font-weight: 900;
  margin-bottom: 30px;
}
.access-box .add-box {
  margin-bottom: 20px;
}
.access-box .add-box p {
  font-size: 0.8em;
}
.access-box .add-box .sub-ttl {
  font-size: 0.8em;
  font-weight: 900;
}

/*================================================

faq-area

================================================*/
.faq-area {
  background-color: var(--color-beige);
}

.faq-cont {
  border-bottom: 1px solid #fff;
  margin-top: 20px;
  background-color: #fff;
  border-radius: 27px;
}

.faqBlock {
  padding-top: 6.1538461538vw;
}

@media screen and (min-width: 540px) {
  .faqBlock {
    padding-top: min(24px, 6.1538461538vw);
  }
}
.faqBlock:not(:first-child) {
  border-top: 1px solid var(--color-gray);
}

.question,
.answer {
  font-size: 3.5897435897vw;
  padding-left: 8.7179487179vw;
  position: relative;
  text-align: left;
  margin-bottom: 20px;
}
.question span,
.answer span {
  font-weight: 900;
}

@media screen and (min-width: 540px) {
  .question,
  .answer {
    font-size: min(14px, 3.5897435897vw);
    padding-left: min(34px, 8.7179487179vw);
  }
}
.question::before,
.answer::before {
  content: "";
  display: block;
  left: 0;
  position: absolute;
  top: 0;
}

.question::before {
  content: "Q";
}

.answer {
  margin-top: 6vw;
}
.answer .subttl {
  margin-top: 10px;
}
.answer .detail {
  margin-top: 40px;
}

@media screen and (min-width: 540px) {
  .answer {
    margin-top: min(16px, 6vw);
  }
}
.answer::before {
  content: "A";
}

.answerNote {
  font-size: 3.0769230769vw;
  margin-top: 2.0512820513vw;
}

@media screen and (min-width: 540px) {
  .answerNote {
    font-size: min(12px, 3.0769230769vw);
    margin-top: min(8px, 2.0512820513vw);
  }
}
#faqContainer {
  display: none;
  overflow: hidden;
  transition: all 0.3s ease;
}

._toggleButton_1lcj5_105 {
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: var(--color-gray);
  padding: 15px;
  border-radius: 50px;
  position: relative;
}
._toggleButton_1lcj5_105 p {
  text-align: center;
  color: #fff;
}
._toggleButton_1lcj5_105 ._open_1lcj5_114 {
  display: inline-block;
}
._toggleButton_1lcj5_105 ._close_1lcj5_123 {
  display: none;
}
._toggleButton_1lcj5_105[aria-expanded=true] ._open_1lcj5_114 {
  display: none;
}
._toggleButton_1lcj5_105[aria-expanded=true] ._close_1lcj5_123 {
  display: inline-block;
}

._toggleButton_1lcj5_105 {
  position: relative;
  cursor: pointer;
}
._toggleButton_1lcj5_105 ._open_1lcj5_114::after,
._toggleButton_1lcj5_105 ._close_1lcj5_123::after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  margin-left: 8px;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  position: absolute;
  top: 35%;
  right: 8%;
}
._toggleButton_1lcj5_105[aria-expanded=true] ._close_1lcj5_123::after {
  transform: rotate(-135deg);
}

._open_1lcj5_114::after {
  top: 35%;
  right: 8%;
}

._close_1lcj5_123::after {
  top: 40% !important;
  right: 8%;
}

/*================================================

research-area

================================================*/
.research-area .link-btn {
  margin: 0 auto;
  text-align: center;
  width: 100%;
  background-color: var(--color-gray);
  border-radius: 50px;
  position: relative;
}
.research-area .link-btn a {
  display: block;
  color: var(--color-white);
  padding: 15px;
}
.research-area .link-btn a::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  right: 20px;
  margin-top: 2px;
  background: url("../images/link_icon.png") no-repeat;
  background-size: contain;
}

/*================================================

conect-area

================================================*/
.conect-area {
  background-color: var(--color-beige);
}
.conect-area p {
  text-align: center;
}
.conect-area p span {
  font-size: 0.8em;
}

/*================================================

top-btn

================================================*/
.top-btn {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 999;
  max-width: 100px;
  border-radius: 8px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.top-btn img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.top-btn.is-visible {
  opacity: 1;
  visibility: visible;
}

@media screen and (max-width: 540px) {
  .top-btn {
    width: 30%;
    right: 10px;
    bottom: 10px;
  }
}
/*================================================

share-area

================================================*/
.share-area {
  overflow: hidden;
  position: relative;
}

.share-wrapper {
  border-bottom: 3px dotted var(--color-gray);
  margin: 0 auto;
  overflow: hidden;
  padding: 20.5128205128vw 0;
  text-align: center;
  width: 91.7948717949vw;
}

@media screen and (min-width: 540px) {
  .share-wrapper {
    padding: min(30px, 3.512821vw) 0;
    width: min(358px, 91.7948717949vw);
  }
}
.share-wrapper.share-wrapper-home {
  padding-top: 8.4615384615vw;
}

@media screen and (min-width: 540px) {
  .share-wrapper.share-wrapper-home {
    padding-top: min(33px, 8.4615384615vw);
  }
}
.oneMoreChoice {
  margin: 0 auto;
  width: 69.4871794872vw;
  transition: opacity 0.3s;
}

@media (any-hover: hover) {
  .oneMoreChoice:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 540px) {
  .oneMoreChoice {
    width: min(271px, 69.4871794872vw);
  }
}
.icons {
  align-items: center;
  display: flex;
  gap: 6.1538461538vw;
  justify-content: center;
  margin-top: 10.2564102564vw;
}

@media screen and (min-width: 540px) {
  .icons {
    gap: min(24px, 6.1538461538vw);
    margin-top: min(40px, 10.2564102564vw);
  }
}
.iconLink {
  display: block;
  height: 12.3076923077vw;
  position: relative;
  width: 12.3076923077vw;
}

.iconLink::before {
  background: var(--color-white);
  border-radius: 50%;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.3s;
  width: 100%;
  z-index: 1;
}

@media (any-hover: hover) {
  .iconLink:hover::before {
    opacity: 0.2;
  }
}
@media screen and (min-width: 540px) {
  .iconLink {
    height: min(48px, 12.3076923077vw);
    width: min(48px, 12.3076923077vw);
  }
}
.footer {
  border-bottom: 3px dotted var(--color-gray);
  margin: 0 auto;
  overflow: hidden;
  padding: 6.1538461538vw 0;
  text-align: center;
  width: 91.7948717949vw;
}

@media screen and (min-width: 540px) {
  .footer {
    padding: min(24px, 6.1538461538vw) 0;
    width: min(358px, 91.7948717949vw);
  }
}
.footer p {
  font-size: 0.7em;
  text-align: left;
  margin-bottom: 20px;
}
.footer p small {
  font-size: 0.6rem;
}

.footer_logo {
  display: block;
  margin: 0 auto;
  width: 30vw;
  transition: opacity 0.3s;
}

@media (any-hover: hover) {
  .footer_logo:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 540px) {
  .footer_logo {
    width: min(117px, 30vw);
  }
}
.copyRigh {
  display: block;
  font-size: 2.8205128205vw;
  margin-top: 4.1025641026vw;
  text-align: center;
  color: #000;
}

@media screen and (min-width: 540px) {
  .copyRigh {
    font-size: min(11px, 2.8205128205vw);
    margin-top: min(16px, 4.1025641026vw);
  }
}
.sponsorship {
  background-color: var(--color-beige);
  padding: 40px 0 40px;
  margin-top: 50px;
}
.sponsorship .sponsor-ttl {
  text-align: center;
  color: #000;
  margin-bottom: 10px;
}
.sponsorship ul {
  display: flex;
  width: 80%;
  margin: 0 auto;
  justify-content: space-around;
}
.sponsorship ul li {
  text-align: center;
}
.sponsorship ul li p {
  color: #000;
}
.sponsorship ul li img {
  margin-top: 10px;
  height: 55px;
  width: auto;
}

.tsumura_omc_main {
  width: 100%;
  margin-top: -20px;
}

@media screen and (min-width: 540px) {
  .tsumura_omc_main {
    box-shadow: 0 10px 30px #7d7d7d;
    left: 0;
    margin: 0 auto;
    max-width: min(390px, 100%);
    padding-bottom: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 390px;
  }
}
@media screen and (max-width: 539px) {
  .tsumura_omc_main {
    margin-top: 0;
  }
}
@media screen and (min-width: 935px) {
  .tsumura_omc_main {
    left: 50.9259259259vw;
    right: revert;
    transform: revert;
    width: 100%;
  }
}
@media screen and (min-width: 1024px) {
  .tsumura_omc_main {
    left: 54.1005291005vw;
  }
}
.share-area {
  overflow: hidden;
  position: relative;
}

.oneMoreChoice {
  margin: 0 auto;
  width: 69.4871794872vw;
  transition: opacity 0.3s;
}

@media (any-hover: hover) {
  .oneMoreChoice:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 540px) {
  .oneMoreChoice {
    width: min(271px, 69.4871794872vw);
  }
}
html {
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  -moz-tab-size: 4;
    -o-tab-size: 4;
       tab-size: 4;
  word-break: normal;
}

*, ::after, ::before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

::after, ::before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  margin: 0;
  padding: 0;
}

hr {
  color: inherit;
  height: 0;
  overflow: visible;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

a {
  background-color: transparent;
}
a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
  text-transform: none;
}

select {
  text-transform: none;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}

:root {
  --color-white:#fff;
  --color-beige:#fffbe9;
  --color-lightb:#ebfcfc;
  --color-white-rgb:255, 255, 255;
  --color-black:#000;
  --color-gray:#9c9596;
  --color-orange-rgb:180, 68, 6;
  --color-brown-rgb:182, 61, 1;
  --z-index-page-header:100;
  --z-index-page-top-button:10;
}

/* Start Project Wallace extracted inline styles */
iframe {
  border: 0;
}

/** End Project Wallace extracted inline styles *//*# sourceMappingURL=style.css.map */