@charset "UTF-8";
:root {
  --screen-height:100vh; }

/*********************************************************************
 * Hover Scale系.
 *********************************************************************/
@-webkit-keyframes hover-scale {
  0%, 50%, 70% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0); }
  10% {
    -webkit-transform: scale(1.15, 1.15) translate(0, 0);
            transform: scale(1.15, 1.15) translate(0, 0); }
  30% {
    -webkit-transform: scale(0.95, 0.95) translate(0, 0);
            transform: scale(0.95, 0.95) translate(0, 0); } }
@keyframes hover-scale {
  0%, 50%, 70% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0); }
  10% {
    -webkit-transform: scale(1.15, 1.15) translate(0, 0);
            transform: scale(1.15, 1.15) translate(0, 0); }
  30% {
    -webkit-transform: scale(0.95, 0.95) translate(0, 0);
            transform: scale(0.95, 0.95) translate(0, 0); } }

@-webkit-keyframes hover-scale-small {
  0%, 50%, 70% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0); }
  10% {
    -webkit-transform: scale(1.01, 1.01) translate(0, 0);
            transform: scale(1.01, 1.01) translate(0, 0); }
  30% {
    -webkit-transform: scale(0.99, 0.99) translate(0, 0);
            transform: scale(0.99, 0.99) translate(0, 0); } }

@keyframes hover-scale-small {
  0%, 50%, 70% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0); }
  10% {
    -webkit-transform: scale(1.01, 1.01) translate(0, 0);
            transform: scale(1.01, 1.01) translate(0, 0); }
  30% {
    -webkit-transform: scale(0.99, 0.99) translate(0, 0);
            transform: scale(0.99, 0.99) translate(0, 0); } }

@-webkit-keyframes pin-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-40%);
            transform: translateY(-40%); }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  50% {
    opacity: 1;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  70% {
    opacity: 1;
    -webkit-transform: translateY(-7%);
            transform: translateY(-7%); }
  75% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); } }

@keyframes pin-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-40%);
            transform: translateY(-40%); }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  50% {
    opacity: 1;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  70% {
    opacity: 1;
    -webkit-transform: translateY(-7%);
            transform: translateY(-7%); }
  75% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0%);
            transform: translateY(0%); } }

@-webkit-keyframes shadow-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%) translateX(40%);
            transform: translateY(-15%) translateX(40%); }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  50% {
    opacity: 1;
    -webkit-transform: translateY(-5%) translateX(15%);
            transform: translateY(-5%) translateX(15%); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  70% {
    opacity: 1;
    -webkit-transform: translateY(-3%) translateX(7%);
            transform: translateY(-3%) translateX(7%); }
  75% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); } }

@keyframes shadow-fall {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%) translateX(40%);
            transform: translateY(-15%) translateX(40%); }
  30% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  50% {
    opacity: 1;
    -webkit-transform: translateY(-5%) translateX(15%);
            transform: translateY(-5%) translateX(15%); }
  60% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  70% {
    opacity: 1;
    -webkit-transform: translateY(-3%) translateX(7%);
            transform: translateY(-3%) translateX(7%); }
  75% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(0%);
            transform: translateY(0) translateX(0%); } }

/*********************************************************************
 * Bounce系.
 *********************************************************************/
@-webkit-keyframes bounce-delay {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  79% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  83% {
    -webkit-transform: scale(0.95, 0.95);
            transform: scale(0.95, 0.95); }
  86% {
    -webkit-transform: scale(1.05, 1.05);
            transform: scale(1.05, 1.05); }
  89% {
    -webkit-transform: scale(0.98, 0.98);
            transform: scale(0.98, 0.98); }
  92% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); } }
@keyframes bounce-delay {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  79% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  83% {
    -webkit-transform: scale(0.95, 0.95);
            transform: scale(0.95, 0.95); }
  86% {
    -webkit-transform: scale(1.05, 1.05);
            transform: scale(1.05, 1.05); }
  89% {
    -webkit-transform: scale(0.98, 0.98);
            transform: scale(0.98, 0.98); }
  92% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); } }

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  40% {
    -webkit-transform: translateY(-20%);
            transform: translateY(-20%); }
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes bounce {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  40% {
    -webkit-transform: translateY(-20%);
            transform: translateY(-20%); }
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes bounce-small {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  40% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%); }
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes bounce-small {
  0% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  40% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%); }
  70% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  80% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes bounce-shadow {
  0% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  40% {
    -webkit-transform: translateX(20%) translateY(-10%);
            transform: translateX(20%) translateY(-10%); }
  70% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  80% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  100% {
    -webkit-transform: translateX(0%) translateY(0);
            transform: translateX(0%) translateY(0); } }

@keyframes bounce-shadow {
  0% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  40% {
    -webkit-transform: translateX(20%) translateY(-10%);
            transform: translateX(20%) translateY(-10%); }
  70% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  80% {
    -webkit-transform: translateX(0%) translateY(0%);
            transform: translateX(0%) translateY(0%); }
  100% {
    -webkit-transform: translateX(0%) translateY(0);
            transform: translateX(0%) translateY(0); } }

@-webkit-keyframes bounce-cloud {
  0% {
    -webkit-transform: translateX(50%) scale(1.05);
            transform: translateX(50%) scale(1.05); }
  50% {
    -webkit-transform: translateX(50%) scale(1);
            transform: translateX(50%) scale(1); }
  100% {
    -webkit-transform: translateX(50%) scale(1.05);
            transform: translateX(50%) scale(1.05); } }

@keyframes bounce-cloud {
  0% {
    -webkit-transform: translateX(50%) scale(1.05);
            transform: translateX(50%) scale(1.05); }
  50% {
    -webkit-transform: translateX(50%) scale(1);
            transform: translateX(50%) scale(1); }
  100% {
    -webkit-transform: translateX(50%) scale(1.05);
            transform: translateX(50%) scale(1.05); } }

@-webkit-keyframes bounce-arrow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes bounce-arrow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-15%);
            transform: translateY(-15%); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes bounce-arrow-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20%);
            transform: translateY(-20%); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(50%);
            transform: translateY(50%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(50%);
            transform: translateY(50%); } }

@keyframes bounce-arrow-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20%);
            transform: translateY(-20%); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(50%);
            transform: translateY(50%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(50%);
            transform: translateY(50%); } }

@-webkit-keyframes top-current-position {
  0% {
    opacity: .5;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(39px);
            transform: translateY(39px); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(39px);
            transform: translateY(39px); } }

@keyframes top-current-position {
  0% {
    opacity: .5;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(39px);
            transform: translateY(39px); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(39px);
            transform: translateY(39px); } }

@-webkit-keyframes top-current-position-sp {
  0% {
    opacity: .5;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(10.5vw);
            transform: translateY(10.5vw); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(10.5vw);
            transform: translateY(10.5vw); } }

@keyframes top-current-position-sp {
  0% {
    opacity: .5;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  80% {
    opacity: 1;
    -webkit-transform: translateY(10.5vw);
            transform: translateY(10.5vw); }
  100% {
    opacity: 0;
    -webkit-transform: translateY(10.5vw);
            transform: translateY(10.5vw); } }

@-webkit-keyframes intro-logo-bounce {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes intro-logo-bounce {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  50% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-webkit-keyframes FloatHorizontal {
  0% {
    -webkit-transform: translate3d(2.5vw, 0, 0);
            transform: translate3d(2.5vw, 0, 0); }
  50% {
    -webkit-transform: translate3d(-2.5vw, 0, 0);
            transform: translate3d(-2.5vw, 0, 0); }
  100% {
    -webkit-transform: translate3d(2.5vw, 0, 0);
            transform: translate3d(2.5vw, 0, 0); } }

@keyframes FloatHorizontal {
  0% {
    -webkit-transform: translate3d(2.5vw, 0, 0);
            transform: translate3d(2.5vw, 0, 0); }
  50% {
    -webkit-transform: translate3d(-2.5vw, 0, 0);
            transform: translate3d(-2.5vw, 0, 0); }
  100% {
    -webkit-transform: translate3d(2.5vw, 0, 0);
            transform: translate3d(2.5vw, 0, 0); } }

@-webkit-keyframes FloatVertical {
  0% {
    -webkit-transform: translate3d(-50%, 0px, 0);
            transform: translate3d(-50%, 0px, 0); }
  50% {
    -webkit-transform: translate3d(-50%, -20px, 0);
            transform: translate3d(-50%, -20px, 0); }
  100% {
    -webkit-transform: translate3d(-50%, 0px, 0);
            transform: translate3d(-50%, 0px, 0); } }

@keyframes FloatVertical {
  0% {
    -webkit-transform: translate3d(-50%, 0px, 0);
            transform: translate3d(-50%, 0px, 0); }
  50% {
    -webkit-transform: translate3d(-50%, -20px, 0);
            transform: translate3d(-50%, -20px, 0); }
  100% {
    -webkit-transform: translate3d(-50%, 0px, 0);
            transform: translate3d(-50%, 0px, 0); } }

@-webkit-keyframes wrong-anim {
  0% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }

@keyframes wrong-anim {
  0% {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }

/* ----------------------------------------------------------------------------------------

	reset

---------------------------------------------------------------------------------------- */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/* --------------------------------------------------
 Normailze styles
 Adapted from Normalize.css http://github.com/necolas/
--------------------------------------------------- */
article, aside, details, figcaption, figure, footer,
header, hgroup, nav, section, summary {
  display: block; }

audio, canvas, video {
  display: inline-block; }

html.no-cssanimations audio, html.no-cssanimations canvas, html.no-cssanimations video {
  display: inline;
  zoom: 1; }

audio:not([controls]) {
  display: none; }

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

a:hover, a:active {
  outline: 0; }

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

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

q {
  quotes: none; }

q:before, q:after {
  content: '';
  content: none; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

nav ul, nav ol {
  list-style: none;
  list-style-image: none; }

img {
  max-width: 100%;
  height: auto;
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: bottom; }

svg:not(:root) {
  overflow: hidden; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
  font-family: inherit; }

caption, th, td {
  text-align: left; }

button, input, select, textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: baseline; }

button, input {
  line-height: normal; }

html.no-postmessage button, html.no-postmessage input {
  overflow: visible; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button; }

input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none; }

button {
  -webkit-appearance: none;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  line-height: 0; }

textarea {
  overflow: auto;
  vertical-align: top; }

::-webkit-input-placeholder {
  color: #222;
  opacity: 1; }

*::-moz-placeholder {
  color: #222;
  opacity: 1; }

:-moz-placeholder-shown {
  color: #222;
  opacity: 1; }

:-ms-input-placeholder {
  color: #222;
  opacity: 1; }

:placeholder-shown {
  color: #222;
  opacity: 1; }

/* Resetting default margin and padding
-------------------------------------------------*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6,
object, iframe, pre, code, p, blockquote, form, fieldset, legend,
table, th, td, caption, tbody, tfoot, thead, figure {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1.2; }

ul {
  list-style: none;
  list-style-image: none; }

em {
  font-style: normal; }

small {
  font-size: 100%; }

label {
  cursor: pointer; }

textarea {
  overflow: auto; }

legend {
  display: none; }

fieldset {
  border: none; }

input, textarea, select, label {
  font-family: inherit; }

object {
  vertical-align: middle;
  outline: none; }

abbr, acronym {
  border: none;
  font-variant: normal; }

address, caption, cite, code, dfn, var {
  font-weight: normal;
  font-style: normal; }

hr {
  display: none; }

html.no-postmessage body, html.no-postmessage br {
  letter-spacing: 0; }

html.no-postmessage div {
  zoom: 1; }

* {
  -webkit-tap-highlight-color: transparent; }

html {
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%; }

body {
  min-height: 100%;
  font-family: "Avenir", "Helvetica Neue", "Helvetica", "Arial", "Hiragino Sans", "ヒラギノ角ゴシック", "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: .03em;
  color: #111;
  word-wrap: break-word; }
  @media all and (-ms-high-contrast: none) {
    body {
      font-family: "メイリオ", Meiryo, sans-serif; } }
  body.open-modal {
    height: 100%;
    overflow: hidden; }

a {
  color: #111;
  text-decoration: none; }

@media screen and (max-width: 812px) {
  .pc {
    display: none !important; } }

@media screen and (min-width: 813px) {
  .sp {
    display: none !important; } }

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

/************************************************
 * ヘッダー
 ************************************************/
.global-header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10000;
  width: 100%;
  background-color: #fff; }
  @media screen and (min-width: 813px) {
    .global-header {
      top: 30px;
      left: 0;
      right: 0;
      margin: auto;
      border-radius: 39px;
      min-width: 980px;
      max-width: 1200px; } }
  @media screen and (max-width: 812px) {
    .global-header {
      -webkit-transition: -webkit-transform .3s;
      transition: -webkit-transform .3s;
      transition: transform .3s;
      transition: transform .3s, -webkit-transform .3s; } }
  .global-header .global-nav {
    display: none; }
  .global-header .global-header-button.global-header-button__menu .header-menu-button-bg {
    -webkit-transition: fill .3s;
    transition: fill .3s; }
  .global-header .global-header-button.global-header-button__menu:hover .header-menu-button-bg {
    fill: #ededed; }
  ._openMenu .global-header {
    height: 27.73333vw; }
    @media screen and (min-width: 813px) {
      ._openMenu .global-header {
        height: auto;
        border-radius: 39px 39px 0 0; } }
    @media screen and (min-width: 813px) {
      ._openMenu .global-header .global-header__inner {
        border-radius: 39px 39px 0 0; } }
    ._openMenu .global-header .global-nav {
      display: block; }
      @media screen and (min-width: 813px) {
        ._openMenu .global-header .global-nav {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; } }
    ._openMenu .global-header #global-header-button__menu {
      display: none; }
    ._openMenu .global-header #global-header-button__menuClose {
      display: block; }
    @media screen and (max-width: 812px) {
      ._openMenu .global-header .global-header-button__shop {
        display: block; } }
    @media screen and (max-width: 812px) {
      ._openMenu .global-header .global-header-button__favorite {
        width: 42.4vw;
        height: 10.66667vw;
        position: absolute;
        bottom: -13.33333vw;
        left: auto;
        right: 6.4vw; } }
    @media screen and (max-width: 812px) {
      ._openMenu .global-header .global-header-button__favorite ._close {
        display: none; } }
    @media screen and (max-width: 812px) {
      ._openMenu .global-header .global-header-button__favorite ._open {
        display: block; } }
    @media screen and (max-width: 812px) {
      ._openMenu .global-header .global-header-button__menu {
        width: 46.13333vw;
        height: 10.66667vw;
        bottom: -12.8vw;
        right: 2.66667vw; } }
    @media screen and (min-width: 813px) {
      ._openMenu .global-header .global-header-button__menu {
        border-radius: 0 39px 0 0; } }
  .global-header__inner {
    height: 100%;
    -webkit-box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.08);
            box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.08);
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 813px) {
      .global-header__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        height: 78px;
        -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
                box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
        border-radius: 39px; } }
  .global-header__head-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 16vw;
    padding: 0 4.4vw 0 4.26667vw; }
    @media screen and (min-width: 813px) {
      .global-header__head-inner {
        width: calc(766 / 1200 * 100%);
        height: auto;
        padding: 0 0 0 40px; } }
  .global-header__logo {
    width: 100%; }
    @media screen and (min-width: 813px) {
      .global-header__logo {
        width: auto;
        margin-right: auto;
        margin-left: 0; } }
    .global-header__logo-inner {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .global-header__logo-inner img {
        width: 100%;
        height: auto; }
        @media screen and (max-width: 812px) {
          .global-header__logo-inner img.hamburger {
            width: 74%; } }
    .global-header__logo > a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .global-header__logo > a img {
        width: 100%;
        height: auto; }
        @media screen and (max-width: 812px) {
          .global-header__logo > a img.hamburger {
            width: 74%; } }
    .global-header__logo-01 {
      width: calc(27.73333vw + 2.66667vw);
      padding-right: 2.66667vw;
      margin-right: 2.66667vw;
      position: relative; }
      @media screen and (min-width: 813px) {
        .global-header__logo-01 {
          width: calc(189px + 21px);
          padding-right: 21px;
          margin-right: 18px; } }
      .global-header__logo-01::after {
        content: "";
        display: block;
        width: 1px;
        height: 9.33333vw;
        background-color: #DEDEDE;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto; }
        @media screen and (min-width: 813px) {
          .global-header__logo-01::after {
            display: none; } }
    .global-header__logo-02 {
      width: 16vw; }
      @media screen and (min-width: 813px) {
        .global-header__logo-02 {
          width: 95px; } }
      .global-header__logo-02 a {
        display: inline-block;
        width: 100%; }
  .global-header-button {
    outline: none;
    display: block; }
    @media screen and (min-width: 813px) {
      .global-header-button {
        margin-left: 10px; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-header-button {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-header-button:hover {
      opacity: 0.8; } }
    .global-header-button__howto {
      display: block;
      width: 39.46667vw;
      height: 8vw; }
      @media screen and (min-width: 813px) {
        .global-header-button__howto {
          width: 186px;
          height: 40px; } }
    .global-header-button__favorite {
      width: 50.93333vw;
      height: 15.46667vw;
      position: absolute;
      bottom: -15.46667vw;
      left: 0.26667vw;
      z-index: 1; }
      @media screen and (min-width: 813px) {
        .global-header-button__favorite {
          width: 125px;
          height: 40px;
          position: static; } }
      @media screen and (max-width: 812px) {
        .global-header-button__favorite ._open {
          display: none; } }
    .global-header-button__shop {
      width: 42.4vw;
      height: 10.66667vw;
      position: absolute;
      bottom: -13.33333vw;
      left: 6.4vw;
      z-index: 1;
      display: none; }
      @media screen and (min-width: 813px) {
        .global-header-button__shop {
          width: 145px;
          height: 40px;
          position: static;
          display: block; } }
    .global-header-button__menu {
      margin-left: 2.66667vw;
      width: 50.93333vw;
      height: 15.46667vw;
      position: absolute;
      bottom: -15.46667vw;
      right: 0.26667vw;
      z-index: 1; }
      @media screen and (min-width: 813px) {
        .global-header-button__menu {
          width: 124px;
          height: 100%;
          margin-left: 20px;
          position: relative;
          bottom: auto;
          right: auto;
          border-radius: 0 39px 39px 0;
          overflow: hidden; } }
      @media screen and (min-width: 813px) {
        .global-header-button__menu::after {
          content: "";
          display: block;
          width: 1px;
          height: 78px;
          background-color: #dedede;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          margin: auto; } }
      .global-header-button__menu#global-header-button__menuClose {
        display: none; }
        @media screen and (max-width: 812px) {
          .global-header-button__menu#global-header-button__menuClose {
            width: 91.46667vw;
            height: 10.66667vw;
            position: relative;
            top: 0;
            left: 0;
            margin: -1.86667vw auto 0; } }
        @media screen and (min-width: 813px) {
          .global-header-button__menu#global-header-button__menuClose {
            background-color: #EDEDED; } }
    .global-header-button.disabled {
      -webkit-filter: grayscale(1);
              filter: grayscale(1);
      pointer-events: none;
      opacity: .5; }
    .global-header-button img {
      max-width: none;
      width: 100%;
      height: auto; }

.global-nav {
  width: 100%;
  height: calc(100vh - 16vw);
  position: absolute;
  top: 27.73333vw;
  left: 0;
  background-color: #fff;
  overflow-y: auto;
  padding-top: 21.86667vw;
  font-size: 4.26667vw;
  font-weight: 600;
  line-height: 1.57; }
  @media screen and (min-width: 813px) {
    .global-nav {
      min-width: 980px;
      max-width: 1200px;
      height: auto;
      top: 78px;
      border-radius: 0 0 39px 39px;
      border-top: 1px solid #DEDEDE;
      padding-top: 0;
      font-size: 14px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .global-nav-inner {
    width: 87.73333vw;
    margin: 0 auto; }
    @media screen and (min-width: 813px) {
      .global-nav-inner {
        width: calc(1134 / 1200 * 100%);
        padding: 27px 0 40px; } }
    .global-nav-inner dt {
      position: relative; }
  @media screen and (min-width: 813px) {
    .global-nav-head {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  @media screen and (min-width: 813px) {
    .global-nav-head-box {
      display: block;
      width: calc(668 / 1134 * 100%);
      margin-top: 26px; } }
  .global-nav-head-box:last-of-type {
    display: block;
    margin-top: 5.86667vw; }
    @media screen and (min-width: 813px) {
      .global-nav-head-box:last-of-type {
        width: calc(398 / 1134 * 100%);
        margin-top: 0; } }
  @media screen and (min-width: 813px) {
    .global-nav-campaign {
      margin-bottom: 20px; } }
  .global-nav-campaign dt {
    margin-bottom: 2.66667vw; }
    @media screen and (min-width: 813px) {
      .global-nav-campaign dt {
        margin-top: 12px;
        margin-bottom: 15px; } }
  .global-nav-campaign dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .global-nav-campaign-item {
    width: 100%; }

@media screen and (min-width: 813px) and (min-width: 813px) {
  .global-nav-campaign-item {
    -webkit-transition: opacity .3s;
    transition: opacity .3s; } }

@media screen and (min-width: 813px) and (min-width: 813px) {
  .global-nav-campaign-item:hover {
    opacity: 0.8; } }
    .global-nav-campaign-item a {
      display: block;
      width: 100%; }
    .global-nav-campaign-item-img {
      width: 100%; }
      .global-nav-campaign-item-img img {
        max-width: none;
        width: 100%;
        height: auto;
        vertical-align: top; }
  .global-nav-contents._contents-crop dt {
    display: block;
    margin-bottom: 1.86667vw; }
    @media screen and (min-width: 813px) {
      .global-nav-contents._contents-crop dt {
        margin-bottom: 4px; } }
  @media screen and (min-width: 813px) {
    .global-nav-contents._contents-crop .global-nav-contents-list {
      width: 100%; } }
  @media screen and (min-width: 813px) {
    .global-nav-contents._contents-crop .global-nav-contents-list-item {
      width: calc(126 / 398 * 100%);
      margin-right: calc(8 / 398 * 100%); } }
  .global-nav-contents._contents-crop .global-nav-contents-list-item:nth-of-type(3n) {
    margin-right: 0; }
  .global-nav-contents dt {
    display: none; }
  .global-nav-contents dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .global-nav-contents-list {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media screen and (min-width: 813px) {
      .global-nav-contents-list {
        width: calc(663 / 668 * 100%);
        margin-left: calc(3 / 668 * 100%); } }
    .global-nav-contents-list-item {
      width: 28vw;
      margin-right: 1.84vw;
      margin-bottom: 2.13333vw; }
      @media screen and (min-width: 813px) {
        .global-nav-contents-list-item {
          width: calc(126 / 663 * 100%);
          margin-right: calc(8 / 663 * 100%);
          margin-bottom: 16px; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-contents-list-item {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-contents-list-item:hover {
      opacity: 0.8; } }
      @media screen and (max-width: 812px) {
        .global-nav-contents-list-item:nth-of-type(3n) {
          margin-right: 0; } }
      @media screen and (min-width: 813px) {
        .global-nav-contents-list-item:nth-of-type(5n) {
          margin-right: 0; } }
      .global-nav-contents-list-item a {
        display: block;
        position: relative;
        background-color: #fff;
        border: 1px solid #F1F1F1;
        border-radius: 4.26667vw; }
        @media screen and (min-width: 813px) {
          .global-nav-contents-list-item a {
            border-radius: 16px; } }
        .global-nav-contents-list-item a > div {
          width: 100%;
          height: 100%; }
        .global-nav-contents-list-item a span {
          display: inline-block;
          width: 100%;
          min-height: 4.8vw;
          font-size: 2.93333vw;
          font-weight: 600;
          line-height: 1.1;
          text-align: center;
          position: absolute;
          bottom: 1.06667vw;
          left: 0; }
          @media screen and (min-width: 813px) {
            .global-nav-contents-list-item a span {
              min-height: 27.5%;
              font-size: 14px;
              line-height: 1.2;
              bottom: 4px;
              left: 0;
              right: 0;
              margin: auto;
              padding: 0 calc(3 / 126 * 100%); } }
      .global-nav-contents-list-item._groundbreakers a span {
        font-size: 2.13333vw; }
        @media screen and (min-width: 813px) {
          .global-nav-contents-list-item._groundbreakers a span {
            font-size: 10px; } }
  .global-nav-btn {
    margin-top: 10.66667vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (min-width: 813px) {
      .global-nav-btn {
        margin-top: 24px; } }
    .global-nav-btn-item {
      width: 42.4vw;
      height: 10.66667vw;
      font-size: 3.2vw; }
      @media screen and (min-width: 813px) {
        .global-nav-btn-item {
          width: calc(330 / 668 * 100%);
          min-width: 158px;
          height: 40px;
          font-size: 12px;
          font-weight: 600;
          margin-bottom: 0; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-btn-item {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-btn-item:hover {
      opacity: 0.8; } }
      .global-nav-btn-item a {
        width: 100%;
        height: 100%;
        color: #fff;
        border-radius: 5.33333vw;
        background-color: #00A8A9;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        @media screen and (min-width: 813px) {
          .global-nav-btn-item a {
            border-radius: 20px; } }
        .global-nav-btn-item a span {
          display: inline-block;
          position: relative; }
          .global-nav-btn-item a span::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            margin: auto; }
        .global-nav-btn-item a:focus {
          color: #fff; }
      .global-nav-btn-item._goods a {
        background-color: #cc3f19; }
      .global-nav-btn-item._goods span {
        padding-left: 4.13333vw; }
        @media screen and (min-width: 813px) {
          .global-nav-btn-item._goods span {
            padding-left: 23px; } }
        .global-nav-btn-item._goods span::before {
          background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_bag_01.svg");
          background-size: 2.93333vw 3.73333vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 2.93333vw;
          height: 3.73333vw;
          display: block;
          position: relative;
          position: absolute; }
          @media screen and (min-width: 813px) {
            .global-nav-btn-item._goods span::before {
              background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_bag_01.svg");
              background-size: 16px 20px;
              background-repeat: no-repeat;
              background-position: center top;
              width: 16px;
              height: 20px;
              display: block;
              position: relative;
              position: absolute; } }
      .global-nav-btn-item._questionnaire span {
        padding-left: 5.33333vw; }
        @media screen and (min-width: 813px) {
          .global-nav-btn-item._questionnaire span {
            padding-left: 26px; } }
        .global-nav-btn-item._questionnaire span::before {
          background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_document_01.svg");
          background-size: 3.73333vw 4.53333vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 3.73333vw;
          height: 4.53333vw;
          display: block;
          position: relative;
          position: absolute; }
          @media screen and (min-width: 813px) {
            .global-nav-btn-item._questionnaire span::before {
              background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_document_01.svg");
              background-size: 17px 21px;
              background-repeat: no-repeat;
              background-position: center top;
              width: 17px;
              height: 21px;
              display: block;
              position: relative;
              position: absolute; } }
      .global-nav-btn-item._search span {
        padding-left: 6.93333vw; }
        @media screen and (min-width: 813px) {
          .global-nav-btn-item._search span {
            padding-left: 26px; } }
        .global-nav-btn-item._search span::before {
          background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_store_01.svg");
          background-size: 4.8vw 4.26667vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 4.8vw;
          height: 4.26667vw;
          display: block;
          position: relative;
          position: absolute; }
          @media screen and (min-width: 813px) {
            .global-nav-btn-item._search span::before {
              background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_store_01.svg");
              background-size: 18px 16px;
              background-repeat: no-repeat;
              background-position: center top;
              width: 18px;
              height: 16px;
              display: block;
              position: relative;
              position: absolute; } }
      .global-nav-btn-item._contact span {
        padding-left: 7.73333vw; }
        @media screen and (min-width: 813px) {
          .global-nav-btn-item._contact span {
            padding-left: 29px; } }
        .global-nav-btn-item._contact span::before {
          background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_question_01.svg");
          background-size: 5.6vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 5.6vw;
          height: 5.6vw;
          display: block;
          position: relative;
          position: absolute; }
          @media screen and (min-width: 813px) {
            .global-nav-btn-item._contact span::before {
              background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_question_01.svg");
              background-size: 21px;
              background-repeat: no-repeat;
              background-position: center top;
              width: 21px;
              height: 21px;
              display: block;
              position: relative;
              position: absolute; } }
      .global-nav-btn-item.disabled {
        -webkit-filter: grayscale(1);
                filter: grayscale(1);
        pointer-events: none;
        opacity: .5; }
        .global-nav-btn-item.disabled a {
          background-color: gray; }
  .global-nav-banner {
    margin-top: 6.4vw; }
    @media screen and (min-width: 813px) {
      .global-nav-banner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        margin-top: 0; } }
    .global-nav-banner li {
      margin-bottom: 4.26667vw;
      border-radius: 2.13333vw;
      overflow: hidden; }
      @media screen and (min-width: 813px) {
        .global-nav-banner li {
          width: calc(195 / 390 * 100%);
          margin-right: calc(8 / 390 * 100%);
          margin-bottom: 0;
          border-radius: 8px; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-banner li {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) and (min-width: 813px) {
    .global-nav-banner li:hover {
      opacity: 0.8; } }
      .global-nav-banner li:nth-of-type(2n) {
        margin-right: 0; }
      .global-nav-banner li:last-of-type {
        margin-bottom: 0; }
      .global-nav-banner li a {
        display: block; }
        .global-nav-banner li a img {
          width: 100%;
          height: auto;
          vertical-align: top; }
  .global-nav-foot {
    background-color: rgba(0, 168, 169, 0.15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 5.33333vw 5.33333vw 28vw;
    margin-top: 10.66667vw; }
    @media screen and (min-width: 813px) {
      .global-nav-foot {
        padding: 11px 40px;
        margin-top: auto; } }
  .global-nav-back-btn {
    font-size: 3.2vw; }
    @media screen and (min-width: 813px) {
      .global-nav-back-btn {
        font-size: 12px; } }
    .global-nav-back-btn a {
      display: block;
      padding: 2.66667vw 0; }
      @media screen and (min-width: 813px) {
        .global-nav-back-btn a {
          padding: 10px 0; } }
      .global-nav-back-btn a span {
        display: inline-block;
        position: relative;
        padding-left: 4.8vw; }
        @media screen and (min-width: 813px) {
          .global-nav-back-btn a span {
            padding-left: 18px; } }
        .global-nav-back-btn a span::before {
          content: "";
          background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_arrow_l_black_01.svg");
          background-size: 1.86667vw 2.66667vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 1.86667vw;
          height: 2.66667vw;
          display: block;
          position: relative;
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          margin: auto; }
          @media screen and (min-width: 813px) {
            .global-nav-back-btn a span::before {
              background-image: url("/special/virtual-exhibition-2026/assets/img/common/ico_arrow_l_black_01.svg");
              background-size: 7px 10px;
              background-repeat: no-repeat;
              background-position: center top;
              width: 7px;
              height: 10px;
              display: block;
              position: relative;
              position: absolute; } }
  .global-nav-sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .global-nav-sns-txt {
      display: none; }
      @media screen and (min-width: 813px) {
        .global-nav-sns-txt {
          display: block;
          font-size: 12px;
          margin-right: 12px; } }
    .global-nav-sns-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .global-nav-sns-list li {
        width: 6.13333vw;
        height: 6.13333vw;
        margin-right: 2.72vw; }
        @media screen and (min-width: 813px) {
          .global-nav-sns-list li {
            width: 23px;
            height: 23px;
            margin-right: 10.2px; } }
        .global-nav-sns-list li.youtube {
          width: 7.61867vw;
          height: 5.33333vw; }
          @media screen and (min-width: 813px) {
            .global-nav-sns-list li.youtube {
              width: 28.57px;
              height: 20px; } }
        .global-nav-sns-list li.X {
          width: 5.48vw;
          height: 5.6vw; }
          @media screen and (min-width: 813px) {
            .global-nav-sns-list li.X {
              width: 20.55px;
              height: 21px; } }
        .global-nav-sns-list li.line {
          width: 6.93333vw;
          height: 6.66667vw;
          margin-right: 0; }
          @media screen and (min-width: 813px) {
            .global-nav-sns-list li.line {
              width: 26px;
              height: 25px; } }
        .global-nav-sns-list li a {
          display: block;
          width: 100%;
          height: 100%; }
          .global-nav-sns-list li a img {
            width: 100%; }

/************************************************
 * コンテンツラッパー.
 ************************************************/
.global-wrapper {
  position: relative;
  padding-top: 16vw;
  min-width: 100%;
  width: 100%;
  min-height: 100vh;
  overflow: hidden; }
  @media screen and (min-width: 813px) {
    .global-wrapper {
      padding-top: 108px;
      min-width: 980px; } }

/************************************************
 * コンテナ
 ************************************************/
.global-container {
  padding-top: 55.73333vw;
  padding-bottom: 77.33333vw;
  position: relative; }
  @media screen and (min-width: 813px) {
    .global-container {
      padding-top: 82px;
      padding-bottom: 453px; } }
  .global-container::before {
    content: "";
    background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-head-01_sp.svg");
    background-size: 100vw 233.33333vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100vw;
    height: 233.33333vw;
    display: block;
    position: relative;
    position: absolute;
    top: 0;
    left: 0; }
    @media screen and (min-width: 813px) {
      .global-container::before {
        background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-head-01_pc.svg");
        background-size: 2560px 769px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 2560px;
        height: 769px;
        display: block;
        position: relative;
        position: absolute;
        top: 43px;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
  .global-container::after {
    content: "";
    background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-foot-01_sp.svg");
    background-size: 100vw 31.73333vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100vw;
    height: 31.73333vw;
    display: block;
    position: relative;
    position: absolute;
    bottom: 48vw;
    left: 0; }
    @media screen and (min-width: 813px) {
      .global-container::after {
        background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-foot-01_pc.svg");
        background-size: 3411px 378px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 3411px;
        height: 378px;
        display: block;
        position: relative;
        position: absolute;
        bottom: 153px;
        left: calc(50% + 300px);
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
  .is-Night .global-container::before {
    background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-head-01-night_sp.svg");
    background-size: 100vw 233.33333vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100vw;
    height: 233.33333vw;
    display: block;
    position: relative;
    position: absolute;
    top: 36.53333vw; }
    @media screen and (min-width: 813px) {
      .is-Night .global-container::before {
        background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-head-01-night_pc.svg");
        background-size: 2560px 769px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 2560px;
        height: 769px;
        display: block;
        position: relative;
        position: absolute;
        top: 23px; } }
  .is-Night .global-container::after {
    background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-foot-01-night_sp.svg");
    background-size: 100vw 31.73333vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100vw;
    height: 31.73333vw;
    display: block;
    position: relative;
    position: absolute; }
    @media screen and (min-width: 813px) {
      .is-Night .global-container::after {
        background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-wave-foot-01-night_pc.svg");
        background-size: 3411px 378px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 3411px;
        height: 378px;
        display: block;
        position: relative;
        position: absolute; } }
  .global-container-head {
    margin-bottom: 8vw;
    border-radius: 5.33333vw;
    padding: 6.66667vw 8vw;
    max-width: 128.8vw;
    background-color: #fff;
    font-size: 3.73333vw;
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 813px) {
      .global-container-head {
        margin-bottom: 70px;
        border-radius: 20px;
        max-width: 483px;
        padding: 50px;
        font-size: 14px; } }
    .global-container-head-title span {
      font-size: 6.93333vw;
      font-weight: 600;
      letter-spacing: .1em; }
      @media screen and (min-width: 813px) {
        .global-container-head-title span {
          font-size: 32px; } }
    .global-container-head-title i {
      display: block;
      margin-top: .5em;
      font-family: "Montserrat", sans-serif;
      font-style: normal;
      font-weight: 600;
      color: #00A8A9; }
      @media screen and (min-width: 813px) {
        .global-container-head-title i {
          font-size: 20px; } }
      .global-container-head-title i ._jp {
        font-size: 3.73333vw;
        padding: 0 0 0 2.93333vw;
        margin-left: 3.73333vw;
        border-left: 1px solid #179098; }
        @media screen and (min-width: 813px) {
          .global-container-head-title i ._jp {
            font-size: 16px;
            padding: 1.8px 0 1.8px 13px;
            margin-left: 15px; } }
    .global-container-head-text {
      margin-top: 1em;
      letter-spacing: .1em;
      line-height: 1.71; }
      @media screen and (min-width: 813px) {
        .global-container-head-text {
          font-size: 16px;
          line-height: 1.875; } }
  .global-container-head-02 {
    margin-bottom: 8vw;
    border-radius: 5.33333vw;
    padding: 6.66667vw 8vw;
    max-width: 128.8vw;
    background-color: #fff;
    font-size: 3.73333vw;
    position: relative;
    z-index: 1; }
    @media screen and (min-width: 813px) {
      .global-container-head-02 {
        margin-bottom: 70px;
        border-radius: 29px;
        overflow: hidden;
        padding: 0;
        font-size: 14px;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    @media screen and (min-width: 813px) {
      .global-container-head-02-title-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    @media screen and (min-width: 813px) {
      .global-container-head-02-title {
        width: calc(407 / 1110 * 100%);
        padding: 47.5px 0 47.5px 60px; } }
    .global-container-head-02-title span {
      font-size: 6.93333vw;
      font-weight: 600;
      letter-spacing: .1em; }
      @media screen and (min-width: 813px) {
        .global-container-head-02-title span {
          font-size: 32px; } }
    .global-container-head-02-title small {
      display: block;
      font-size: 3.46667vw;
      font-weight: 300;
      line-height: 1.3;
      letter-spacing: 0.03em; }
      @media screen and (min-width: 813px) {
        .global-container-head-02-title small {
          font-size: 12px;
          line-height: 1.41;
          padding-top: 2px; } }
    .global-container-head-02-title i {
      display: block;
      margin-top: .5em;
      font-family: "Montserrat", sans-serif;
      font-style: normal;
      font-weight: 600;
      color: #179098; }
      @media screen and (min-width: 813px) {
        .global-container-head-02-title i {
          font-size: 20px;
          line-height: 1.2;
          margin-top: 3px; } }
      .global-container-head-02-title i ._jp {
        font-size: 3.73333vw;
        padding: 0 0 0 2.93333vw;
        margin-left: 3.73333vw;
        border-left: 1px solid #179098; }
        @media screen and (min-width: 813px) {
          .global-container-head-02-title i ._jp {
            font-size: 16px;
            padding: 1.8px 0 1.8px 13px;
            margin-left: 15px; } }
    .global-container-head-02-text {
      margin-top: 4.8vw;
      letter-spacing: .1em;
      line-height: 1.7; }
      @media screen and (min-width: 813px) {
        .global-container-head-02-text {
          font-size: 16px;
          line-height: 1.87;
          width: calc(703 / 1110 * 100%);
          background-color: #F4F4F4;
          margin-top: 0;
          padding: 50px 60px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center; } }
  .global-container-body {
    min-height: 138.66667vw;
    background: #aee400; }
    @media screen and (min-width: 813px) {
      .global-container-body {
        min-height: 500px;
        background: linear-gradient(to bottom, transparent 0px, transparent 113px, #aee400 114px, #aee400 410px, #aee400 1860px); } }
    .is-Night .global-container-body {
      background: #00298C; }
      @media screen and (min-width: 813px) {
        .is-Night .global-container-body {
          background: linear-gradient(to bottom, transparent 0px, transparent 113px, #00298C 114px, #00298C 100%); } }

/************************************************
 * フッター
 ************************************************/
.global-footer {
  margin-top: auto; }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-item {
      width: 50%; } }
  .global-footer-navigation-item a.disabled {
    background-color: #C0C0C0 !important;
    pointer-events: none; }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-item:nth-child(1) {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2; } }
  .global-footer-navigation-item:nth-child(1) a {
    border-radius: 8vw 8vw 0 0;
    background-color: #cc3f19; }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-item:nth-child(1) a {
        border-radius: 30px 30px 0 0; } }
    .global-footer-navigation-item:nth-child(1) a:hover {
      background-color: #ad2d0a; }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-item:nth-child(2) {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; } }
  .global-footer-navigation-item:nth-child(2) a {
    background-color: #009098; }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-item:nth-child(2) a {
        border-radius: 30px 30px 0 0; } }
    .global-footer-navigation-item:nth-child(2) a:hover {
      background-color: #077a81; }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-item:nth-child(3) {
      -webkit-box-ordinal-group: 4;
          -ms-flex-order: 3;
              order: 3; } }
  .global-footer-navigation-item:nth-child(3) a {
    background-color: #069DA5; }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-item:nth-child(3) a {
        background-color: #00A8A9; } }
    .global-footer-navigation-item:nth-child(3) a:hover {
      background-color: #077a81; }
  @media screen and (min-width: 813px) {
    .global-footer-navigation-item:nth-child(4) {
      -webkit-box-ordinal-group: 5;
          -ms-flex-order: 4;
              order: 4; } }
  .global-footer-navigation-item:nth-child(4) a {
    background-color: #00A8A9; }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-item:nth-child(4) a {
        background-color: #09A0A8; } }
    .global-footer-navigation-item:nth-child(4) a:hover {
      background-color: #077a81; }
  .global-footer-navigation-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding-right: 4.53333vw;
    padding-left: 6.4vw;
    min-height: 21.33333vw;
    font-size: 4.8vw;
    color: #fff;
    text-decoration: none; }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-link {
        -webkit-transition: background-color 0.3s ease-out;
        transition: background-color 0.3s ease-out; } }
    @media screen and (min-width: 813px) {
      .global-footer-navigation-link {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        padding-right: 17px;
        padding-left: 24px;
        min-height: 0;
        height: 110px;
        font-size: 20px; } }
    .global-footer-navigation-link:focus {
      color: #fff; }
    .global-footer-navigation-link i {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 15.2vw;
      height: 15.2vw; }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link i {
          width: 63px;
          height: 63px; } }
    .global-footer-navigation-link img[src$="ico_bag_01.svg"] {
      width: calc(7.42933vw * .7);
      height: calc(9.36267vw * .7); }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link img[src$="ico_bag_01.svg"] {
          width: 27px;
          height: 35px; } }
    .global-footer-navigation-link img[src$="ico_document_01.svg"] {
      width: calc(6.66667vw * .7);
      height: calc(8.26667vw * .7); }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link img[src$="ico_document_01.svg"] {
          width: 25px;
          height: 31px; } }
    .global-footer-navigation-link img[src$="ico_store_01.svg"] {
      width: calc(9.36533vw * .7);
      height: calc(8.34667vw * .7); }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link img[src$="ico_store_01.svg"] {
          width: 35px;
          height: 31px; } }
    .global-footer-navigation-link img[src$="ico_question_01.svg"] {
      width: calc(10.016vw * .7);
      height: calc(10.016vw * .7); }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link img[src$="ico_question_01.svg"] {
          width: 34px;
          height: 34px; } }
    .global-footer-navigation-link::after {
      content: '';
      display: block;
      margin-left: auto;
      width: 5.86667vw;
      height: 5.86667vw;
      background: url("/special/virtual-exhibition-2026/assets/img/common/ico_arrow_r_transparent_01.svg") no-repeat left top/contain; }
      @media screen and (min-width: 813px) {
        .global-footer-navigation-link::after {
          position: absolute;
          right: 30px;
          top: calc(50% - 15px);
          width: 30px;
          height: 30px; } }
  .global-footer-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 9.06667vw 0 14.93333vw;
    background-color: #fff; }
    @media screen and (min-width: 813px) {
      .global-footer-info {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        padding: 0 40px;
        height: 120px; } }
  .global-footer-links {
    margin-bottom: 1.5em; }
    @media screen and (min-width: 813px) {
      .global-footer-links {
        margin-bottom: 0;
        margin-top: 3px;
        width: 80%; } }
    .global-footer-links-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 100%; }
      @media screen and (min-width: 813px) {
        .global-footer-links-list {
          width: calc(816 / 1028 * 100%); } }
    .global-footer-links-item {
      width: 50%;
      text-align: center;
      margin-bottom: 1.33333vw; }
      @media screen and (min-width: 813px) {
        .global-footer-links-item {
          width: auto;
          text-align: left;
          margin-right: 23px;
          margin-bottom: 5px; } }
      .global-footer-links-item:last-of-type {
        width: 100%; }
        @media screen and (min-width: 813px) {
          .global-footer-links-item:last-of-type {
            width: auto;
            margin-right: 0; } }
    .global-footer-links-link {
      font-size: 2.93333vw;
      font-weight: 600;
      color: #111;
      text-decoration: none; }
      @media screen and (min-width: 813px) {
        .global-footer-links-link {
          font-size: 13px;
          letter-spacing: 0.03em; } }
      .global-footer-links-link:hover {
        text-decoration: underline; }
  .global-footer-logo a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    pointer-events: none; }
    @media screen and (min-width: 813px) {
      .global-footer-logo a {
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end; } }
  .global-footer-logo img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    max-width: none;
    width: 34.66667vw;
    height: auto; }
    @media screen and (min-width: 813px) {
      .global-footer-logo img {
        width: 120px; } }
  .global-footer-logo span {
    display: block;
    margin-top: 2.66667vw;
    font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
    font-size: 3.2vw;
    font-weight: 400;
    letter-spacing: .05em; }
    @media screen and (min-width: 813px) {
      .global-footer-logo span {
        margin-top: 10px;
        font-size: 12px; } }

/************************************************
 * サイト共通インナー
 ************************************************/
.global-inner {
  margin-right: auto;
  margin-left: auto;
  padding-right: 6.4vw;
  padding-left: 6.4vw; }
  @media screen and (min-width: 813px) {
    .global-inner {
      padding-right: 30px;
      padding-left: 30px;
      width: 100%;
      min-width: 920px;
      max-width: 1170px; } }

.global-footer-info {
  padding-bottom: 29.33333vw; }
  @media screen and (min-width: 813px) {
    .global-footer-info {
      padding-top: 40px;
      padding-bottom: 120px;
      height: auto; } }

/************************************************
 * ページ下、イラスト背景設定(パララックス)
 ************************************************/
.bg-illust-02 {
  width: 198.26667vw;
  height: 106.66667vw;
  position: absolute;
  bottom: -29.33333vw;
  left: -53.86667vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  overflow: hidden;
  z-index: -1; }
  @media screen and (min-width: 813px) {
    .bg-illust-02 {
      width: 2194px;
      height: 1000px;
      position: absolute;
      bottom: -220px; } }
  .bg-illust-02 .bg-illust {
    background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-illust_sp.jpg");
    background-size: 198.26667vw 168.4vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 198.26667vw;
    height: 168.4vw;
    display: block;
    position: relative;
    background-position: left top;
    position: absolute;
    top: -30.4vw;
    left: 0;
    -ms-interpolation-mode: nearest-neighbor;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: pixelated; }
    @media screen and (min-width: 813px) {
      .bg-illust-02 .bg-illust {
        background-image: url("/special/virtual-exhibition-2026/assets/img/common/bg-illust_pc.jpg");
        background-size: 2194px 1404px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 2194px;
        height: 1404px;
        display: block;
        position: relative;
        background-position: left top;
        position: absolute;
        top: 120px;
        left: 36px; } }

/************************************************
 * ChatBot関連
 ************************************************/
#chat-wrapper {
  position: relative; }

div.chat-open-button {
  -webkit-transition: -webkit-transform .7s;
  transition: -webkit-transform .7s;
  transition: transform .7s;
  transition: transform .7s, -webkit-transform .7s; }

.chat-open-button {
  width: 76.8vw;
  min-width: 282px;
  position: fixed;
  bottom: 0px;
  padding-bottom: 16px;
  left: 1.6vw;
  z-index: 10;
  cursor: pointer;
  -webkit-transform: translateY(120%);
          transform: translateY(120%); }
  @media screen and (min-width: 813px) {
    .chat-open-button {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) {
    .chat-open-button:hover {
      opacity: 0.8; } }
  @media screen and (min-width: 813px) {
    .chat-open-button {
      width: 288px;
      right: 20px;
      left: auto; } }
  .chat-open-button-content {
    width: 100%;
    height: 60px;
    padding: 4px 16px 4px 74px;
    overflow: hidden;
    background-color: #CBAF00;
    color: #FFFFFF;
    border-radius: 30px;
    display: table;
    line-height: 14px;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
    .chat-open-button-content::after {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      padding-left: 12px;
      border-bottom-left-radius: 30px;
      bottom: 16px;
      height: 80px;
      width: 56px;
      background: url("/special/virtual-exhibition-2026/assets/img/common/chatbot-btn-wo.png") no-repeat right bottom/contain; }
    .chat-open-button-content div {
      display: table-cell;
      vertical-align: middle;
      height: 100%; }
      .chat-open-button-content div span.header1 {
        font-size: 13px;
        line-height: 18px;
        font-weight: 600; }
      .chat-open-button-content div span.header2 {
        font-size: 12px; }

.chat-close-button {
  display: none;
  width: 44px;
  height: 44px;
  padding: 8px 8px 16px 16px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 99999;
  cursor: pointer; }
  @media screen and (min-width: 813px) {
    .chat-close-button {
      -webkit-transition: opacity .3s;
      transition: opacity .3s; } }
  @media screen and (min-width: 813px) {
    .chat-close-button:hover {
      opacity: 0.8; } }
  .chat-close-button-content {
    width: 100%;
    height: 100%; }
    .chat-close-button-content img {
      width: 100%;
      height: auto;
      vertical-align: baseline; }

#konnect-chat-initializer-wrap {
  display: none !important; }

#konnect-container {
  right: 0 !important;
  left: 0 !important; }
  @media screen and (min-width: 813px) {
    #konnect-container {
      right: 5px !important;
      left: auto !important; } }

/*# sourceMappingURL=maps/common.css.map */
