#page {
  -moz-transition: all 300ms linear;
  -webkit-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  transition: all 300ms linear;
}
@media screen and (max-width: 480px) {
  #page {
    position: absolute;
    top: 0;
    margin: 0!important;
  }
}
.homepage {
  background: black;
  color: white;
  overflow: hidden;
}
.homepage .title-menu .logo {
  filter: invert(0);
}
.homepage.safari_navigator .logo path:not(#text),
.homepage.safari_navigator .logo path:not(#text-mob),
.homepage.safari_navigator .logo rect {
  fill: white;
}
.homepage.safari_navigator .logo #text,
.homepage.safari_navigator .logo #text-mob {
  fill: black!important;
}
.homepage #colophon {
  display: none;
}
.homepage .entry-header {
  margin-top: 0;
  display: none;
}
.homepage #masthead {
  padding: 0;
}
.homepage .site-content {
  height: 100svh;
}
.homepage.iPhone .site-content {
  height: auto;
}
.homepage #primary {
  height: 100%;
  display: flex;
}
@media (max-width: 768px) {
  .homepage #primary {
    height: calc(100% - 30px * 2);
  }
}
.homepage.iPhone #primary {
  height: calc(100% - var(--sp-xl) * 2);
  display: flex;
}
@media (max-width: 768px) {
  .homepage.edge #primary,
  .homepage.os-windows #primary {
    height: 100vh;
  }
}
.homepage #main {
  display: flex;
  width: 100%;
  margin: var(--sp-xl);
  min-height: calc(100% - var(--sp-xl) * 2);
}
@media (min-width: 1440px) {
  .homepage #main {
    margin: 88px;
    min-height: calc(100% - 88px * 2);
  }
}
@media (max-width: 1080px) {
  .homepage #main {
    margin: 64px;
    min-height: calc(100% - 64px * 2);
  }
}
@media (max-width: 768px) {
  .homepage #main {
    margin: 30px 30px 46px 30px;
    min-height: calc(100svh - 76px);
  }
}
.homepage .container {
  position: relative;
  max-width: 100%;
  margin: 0;
  min-height: 100%;
  min-height: -moz-available;
  /* WebKit-based browsers will ignore this. */
  min-height: -webkit-fill-available;
  /* Mozilla-based browsers will ignore this. */
  min-height: fill-available;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0;
}
.homepage article {
  max-width: 40%;
}
@media (max-width: 820px) {
  .homepage article {
    max-width: 60%;
  }
}
@media (max-width: 768px) {
  .homepage article {
    max-width: 100%;
  }
}
.homepage article p a.caption {
  border-color: white;
}
.homepage figure img {
  width: auto;
  height: 100px;
}
@media (max-width: 820px) {
  .homepage figure img {
    width: 300px!important;
    height: auto!important;
  }
}
@media (max-width: 768px) {
  .homepage figure img {
    width: 150px!important;
    height: auto!important;
  }
}
.homepage #select_lang {
  margin: 0;
  margin-top: var(--sp-md);
  padding: 0;
  list-style: none;
  background: unset;
}
@media (max-width: 1080px) {
  .homepage #select_lang {
    margin-top: 18px;
  }
}
@media (max-width: 768px) {
  .homepage #select_lang {
    font-size: 16px;
    line-height: 20px;
    margin-top: 14px;
  }
}
.homepage #select_lang li {
  display: inline-block;
  position: relative;
}
.homepage #select_lang li a {
  font-family: var(--font-bold);
  margin-right: 24px;
  display: block;
  position: relative;
  background: transparent!important;
  color: white;
}
.homepage #select_lang li a.active {
  border-bottom: 2px solid white;
}
.homepage #select_lang li a:after {
  content: "• ";
  color: white;
  display: block;
  position: absolute;
  right: -16px;
  top: 0;
}
.homepage #select_lang li:last-child a:after {
  display: none;
}
.homepage #bottom-nav {
  cursor: pointer;
  width: 50%;
}
@media (max-width: 768px) {
  .homepage #bottom-nav {
    margin-bottom: 0px;
  }
}
@media (max-width: 768px) {
  .homepage.iPhone #bottom-nav {
    margin-bottom: 0px;
  }
}
.homepage.iPad #bottom-nav {
  margin-bottom: 15px;
}
@media (max-width: 820px) {
  .homepage.iPad #bottom-nav {
    margin-bottom: 8px;
  }
}
@media (max-width: 768px) {
  .homepage.iPad #bottom-nav {
    margin-bottom: 10px;
  }
}
.homepage.edge #bottom-nav,
.homepage.os-windows #bottom-nav {
  margin-bottom: 10px;
}
@media (max-width: 1080px) {
  .homepage.edge #bottom-nav,
  .homepage.os-windows #bottom-nav {
    margin-bottom: 14px;
  }
}
@media (max-width: 820px) {
  .homepage.edge #bottom-nav,
  .homepage.os-windows #bottom-nav {
    margin-bottom: 4px;
  }
}
@media (max-width: 768px) {
  .homepage.edge #bottom-nav,
  .homepage.os-windows #bottom-nav {
    margin-bottom: 8px;
  }
}
.homepage .menu-main-container {
  color: white;
}
.homepage .menu-main-container .point {
  background: white;
}
.homepage .menu-main-container a {
  color: white;
}
.homepage .menu-main-container a:hover {
  color: white;
}
.homepage h2 {
  color: white;
  margin: 0;
}
.homepage .dark-layer {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  opacity: 0.2;
  background-size: cover!important;
  background-repeat: no-repeat !important;
  background-position: center!important;
  z-index: -1;
}
@media (max-width: 640px) {
  .homepage .dark-layer {
    background-size: auto 100%!important;
    background-position: center!important;
  }
}
.homepage .dark-layer:after {
  content: "";
  background: rgba(0, 0, 0, 0.4);
  display: block;
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
}
/*# sourceMappingURL=homepage.css.map */