@charset "UTF-8";
/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@600&display=swap");
*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

* {
  margin: 0; }

html, body {
  height: 100%; }

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased; }

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%; }

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

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word; }

/* 
#root, #__next {
  isolation: isolate;
}
 */
:root {
  --baseW: 1180px;
  --keyC: #004B82;
  --keyCp: #DCE6F0;
  --full-bgC: #DBE5EF;
  --stationzero: #9d150f; }

body {
  font-family: var(--font-ss);
  font-size: var(--px15);
  font-weight: 500;
  color: #323232; }

.wrap {
  display: grid;
  grid-template-rows: auto 1fr auto;
  min-height: 100vh;
  overflow: hidden; }

.bracket {
  width: min(800px, 90vw);
  margin-right: auto;
  margin-left: auto; }

.full-w {
  background-color: var(--full-bgC);
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  padding-top: 90px;
  padding-bottom: 90px;
  margin-bottom: 90px; }

a {
  color: inherit;
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

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

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

:root {
  --font-ss: "游ゴシック", "游ゴシック体", "Yu Gothic", "YuGothic", "Meiryo", "メイリオ", "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  --font-serif: "游明朝", "游明朝体", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  --font-latin: "Montserrat", sans-serif;
  --px8: 0.5rem;
  --px9: 0.5625rem;
  --px10: 0.625rem;
  --px11: 0.6875rem;
  --px12: 0.750rem;
  --px13: 0.8125rem;
  --px14: 0.875rem;
  --px15: 0.9375rem;
  --px16: 1rem;
  --px17: 1.0625rem;
  --px18: 1.125rem;
  --px19: 1.1875rem;
  --px20: 1.25rem;
  --px21: 1.3125rem;
  --px22: 1.375rem;
  --px24: 1.5rem;
  --px26: 1.78rem;
  --px27: 1.6875rem;
  --px28: 1.75rem;
  --px30: 1.875rem;
  --px32: 2rem;
  --px36: 2.25rem;
  --px38: 2.375rem;
  --px39: 2.4375rem;
  --px40: 2.5rem;
  --px50: 3.125rem; }

.latin {
  font-family: var(--font-latin); }

@media screen and (min-width: 768px) {
  header {
    width: 100%;
    height: 95px;
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 20px;
    padding-left: 30px;
    padding-right: 50px; }
  .header-logo {
    text-align: center;
    line-height: 1;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    font-size: var(--px15);
    font-weight: normal; }
    .header-logo a:hover {
      text-decoration: none; }
    .header-logo span {
      font-size: var(--px10);
      letter-spacing: 4px;
      color: var(--keyC); }
    .header-logo img {
      display: block;
      height: 75px;
      margin-top: -20px;
      color: #fff;
      fill: #fff; }
      .header-logo img svg {
        fill: #fff; }
  .header-humburger {
    margin-left: auto;
    margin-right: 0;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .header-nav {
    color: var(--keyC);
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .header-nav ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 1;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      margin-bottom: 0;
      max-width: 850px;
      margin-left: auto;
      padding: 0; }
    .header-nav li {
      list-style: none;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .header-nav a:hover {
      text-decoration: none; }
    .header-nav-item {
      padding-left: 0.3em;
      padding-right: 0.3em;
      -webkit-transition: 0.5s;
      transition: 0.5s;
      padding-bottom: 2px;
      position: relative; }
      .header-nav-item::after {
        background-color: var(--keyC);
        bottom: -6px;
        content: '';
        display: block;
        height: 2px;
        left: 0;
        position: absolute;
        -webkit-transition: .4s all;
        transition: .4s all;
        width: 0;
        opacity: .1; }
      .header-nav-item:hover::after {
        width: 100%;
        opacity: 1; }
      .header-nav-item.active::after {
        width: 100%;
        opacity: 1; }
  .header__btn {
    width: 135px;
    height: 40px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border: 1px solid;
    -webkit-transition: 0.5s;
    transition: 0.5s; }
    .header__btn:hover {
      background-color: var(--keyC);
      color: #fff;
      -webkit-transition: 0.5s;
      transition: 0.5s; } }

.header-top {
  position: absolute;
  background-color: transparent;
  z-index: 10; }
  .header-top .pc span {
    color: #fff; }
  .header-top .header-nav {
    color: #fff; }
    .header-top .header-nav-item::after {
      background-color: #fff; }
  .header-top .header__btn:hover {
    background-color: transparent; }

#sp-menu-btn {
  display: none; }

.menu-cover {
  display: none; }

.humburger {
  -webkit-transition: all .5s;
  transition: all .5s;
  position: fixed;
  top: 10px;
  right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 45px;
  width: 45px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 90;
  background-color: rgba(219, 229, 239, 0.75);
  border-radius: 3px; }
  .humburger span,
  .humburger span::before,
  .humburger span::after {
    content: '';
    display: block;
    height: 3px;
    width: 30px;
    border-radius: 3px;
    background-color: var(--keyC);
    position: absolute;
    -webkit-transition: all .5s;
    transition: all .5s; }
  .humburger span::before {
    bottom: 12px; }
  .humburger span::after {
    top: 12px; }

@media screen and (min-width: 768px) {
  .humburger {
    display: none; } }

#sp-menu-btn:checked ~ .humburger span::before {
  -webkit-transform: translateY(12px) rotate(-315deg);
          transform: translateY(12px) rotate(-315deg); }

#sp-menu-btn:checked ~ .humburger span {
  background-color: rgba(255, 255, 255, 0); }

#sp-menu-btn:checked ~ .humburger span::after {
  -webkit-transform: translateY(-12px) rotate(315deg);
          transform: translateY(-12px) rotate(315deg); }

#sp-menu-btn:checked ~ .header-nav {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

#sp-menu-btn:checked ~ .menu-cover {
  display: block;
  z-index: 50;
  opacity: .6;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px); }

@media screen and (max-width: 767px) {
  header {
    padding: 2vw 5vw; }
  .header {
    padding: 5px; }
    .header a {
      color: var(--txt-color); }
    .header-nav {
      --row-padding: 15px;
      position: fixed;
      z-index: 70;
      left: 0;
      top: 0;
      -webkit-transition: all .5s;
      transition: all .5s;
      -webkit-transform: translateY(-100%);
              transform: translateY(-100%);
      background-color: rgba(255, 255, 255, 0.6);
      display: block;
      width: 100%;
      text-align: center;
      padding-top: 60px;
      padding-bottom: 5px; }
      .header-nav ul {
        padding: 0;
        margin-bottom: 0; }
      .header-nav li {
        list-style: none;
        color: var(--keyC);
        padding: 20px;
        border-bottom: 1px solid var(--keyC); }
    .header__btn {
      display: block;
      padding: var(--row-padding);
      border-bottom: 1px solid var(--bg-color2); }
      .header__btn br {
        display: none; }
  .menu-cover {
    height: 100%;
    width: 100vw;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -100;
    background-color: #fff;
    opacity: 0; }
  .header-top {
    position: static;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center; }
    .header-top .header__btn {
      border: none; }
  .header-logo {
    font-size: var(--px15);
    font-weight: normal; }
    .header-logo img {
      height: 13vw; } }

footer {
  margin-top: auto;
  background-color: var(--keyC); }

.footer {
  color: #fff;
  padding-top: 37px; }
  .footer__inner {
    width: min(1000px, 90vw);
    margin-left: auto;
    margin-right: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .footer__inner.footer {
      padding-bottom: 50px; }
  .footer__header {
    font-size: var(--px14);
    margin-top: 0;
    margin-bottom: 0; }
    .footer__header::before {
      content: '-';
      padding-right: 0.5em; }
  .footer__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    /* justify-content: space-between; */
    padding-top: 3px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .footer__logo span {
      font-size: var(--px10);
      letter-spacing: 4px; }
  .footer__addr {
    font-size: var(--px12);
    line-height: 1.8; }
  .footer__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 0 auto; }
  .footer__linkunit {
    margin-left: 38px; }
  .footer__sub {
    font-size: var(--px11);
    list-style-type: '-';
    margin-top: 0.6rem;
    margin-bottom: 0.5em;
    line-height: 1.8;
    padding-left: 2em; }
    .footer__sub li {
      padding-left: 3px; }
  .footer__others {
    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-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .footer__under {
    background-color: #fff;
    font-size: var(--px12);
    padding-top: 2em;
    padding-bottom: 1em;
    line-height: 1; }
  .footer__copy {
    margin-left: auto;
    margin-right: 0; }

@media screen and (max-width: 767px) {
  .footer__links {
    display: none; }
  .footer__inner.footer {
    padding-bottom: 38px; }
  .footer__addr {
    margin-top: 18px; }
  .footer__under .footer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px 0; } }

.home-title {
  text-align: center;
  margin-bottom: 80px; }
  .home-title__head {
    font-size: var(--px40);
    color: var(--keyC);
    display: block;
    font-family: var(--font-latin);
    letter-spacing: 2px;
    margin-bottom: 42px; }
  .home-title__lead {
    font-family: var(--font-serif);
    font-size: var(--px22);
    line-height: 2; }
    .home-title__lead span {
      display: block;
      font-size: var(--px32);
      color: var(--keyC);
      margin-bottom: 1rem; }

@media screen and (max-width: 767px) {
  .home-title__lead {
    font-size: 4vw; }
    .home-title__lead span {
      font-size: 8vw; } }

.card {
  /*  width: 46.25%;
  margin-bottom: 7.5%;*/
  text-align: center;
  position: relative;
  overflow: hidden; }
  .card img {
    -webkit-transition: 1s all;
    transition: 1s all;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .card:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transition: 1s all;
    transition: 1s all; }
  .card__txt {
    position: absolute;
    bottom: 0;
    background-color: var(--keyC);
    opacity: 0.8;
    width: 100%;
    height: 120px;
    color: #fff;
    font-size: var(--px18);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 24px 0px; }
  .card__title {
    font-size: var(--px22); }
  .card__list {
    width: min(1000px, 90vw);
    margin: auto;
    /*    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;*/
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(355px, 90vw), 1fr));
    gap: 30px; }

.s0-banner {
  width: min(1000px, 90vw);
  margin: 90px auto;
  position: relative;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid 5px #9D150F; }
  .s0-banner:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transition: 1s all;
    transition: 1s all; }

.home-recruit {
  width: min(1000px, 90vw);
  margin: 90px auto;
  position: relative;
  overflow: hidden; }
  .home-recruit:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transition: 1s all;
    transition: 1s all; }
  .home-recruit img {
    -webkit-transition: 1s all;
    transition: 1s all;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center; }
  .home-recruit__txt {
    position: absolute;
    left: 50%;
    top: 0;
    background-color: var(--keyC);
    color: #fff;
    text-align: center;
    height: 100%;
    width: 51.5%;
    z-index: 1;
    -webkit-transform: skewX(-5deg);
            transform: skewX(-5deg); }
    .home-recruit__txt p {
      font-size: var(--px18); }
    .home-recruit__txt button {
      margin-top: 26px;
      margin-bottom: 35px;
      border: 1px solid #fff;
      background-color: transparent;
      color: #fff;
      padding: 10px 30px;
      height: 44px;
      border-radius: 22px; }
      .home-recruit__txt button span {
        display: inline-block;
        padding-right: 18px;
        position: relative; }
        .home-recruit__txt button span::after {
          position: absolute;
          content: "";
          top: 0;
          bottom: 0;
          right: 0;
          margin: auto;
          width: 5px;
          height: 5px;
          border-top: 2px solid #fff;
          border-right: 2px solid #fff;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg); }
  .home-recruit__envertical {
    -webkit-transform: skewX(5deg);
            transform: skewX(5deg); }
  .home-recruit__title {
    font-size: var(--px27);
    margin-top: 38px;
    margin-bottom: 26px;
    position: relative; }
    .home-recruit__title::after {
      position: absolute;
      content: "";
      border-bottom: 1px solid #fff;
      width: 78px;
      left: calc(50% - 39px);
      bottom: -8px; }

@media screen and (max-width: 767px) {
  .home-recruit__txt {
    position: static;
    width: 100%;
    -webkit-transform: none;
            transform: none; }
  .home-recruit__envertical {
    -webkit-transform: none;
            transform: none; }
  .home-recruit__title {
    margin-top: 0; } }

.page-title {
  text-align: center;
  font-size: var(--px32);
  margin-bottom: 64px; }
  .page-title span {
    font-size: var(--px20);
    color: var(--keyC);
    display: block;
    font-family: var(--font-latin);
    letter-spacing: 2px; }
  .page-title--aboutus {
    margin-bottom: 50px; }

.page-subtitle {
  background-color: var(--keyC);
  color: #fff;
  min-height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 28px;
  margin-bottom: 24px;
  font-size: var(--px22);
  font-weight: bold; }
  .page-subtitle--group {
    background-image: -webkit-gradient(linear, left top, right top, from(#094F92), to(#0064A4));
    background-image: linear-gradient(to right, #094F92 0%, #0064A4 100%); }
  .page-subtitle--related {
    background-image: -webkit-gradient(linear, left top, right top, from(#00A4C7), to(#64C7DB));
    background-image: linear-gradient(to right, #00A4C7 0%, #64C7DB 100%); }
  .page-subtitle--business {
    background-image: -webkit-gradient(linear, left top, right top, from(#094F92), to(#4A86BA));
    background-image: linear-gradient(to right, #094F92 0%, #4A86BA 100%);
    padding-left: 25px; }

.list {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 56px;
  padding-left: 28px; }
  .list li {
    font-size: var(--px18);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 24px;
    margin-bottom: 24px;
    background: left center/14px no-repeat; }
  .list--business li {
    background-image: url(../img/circle.png);
    background-size: 15px;
    margin-bottom: 2px; }
  .list--group li {
    background-image: url(../img/square1.png);
    color: var(--keyC); }
    .list--group li::after {
      padding-left: 0.5em;
      content: url(../img/arrow-r.png); }
  .list--related li {
    background-image: url(../img/square2.png); }
    .list--related li.newwindow::after {
      padding-left: 0.5em;
      content: url(../img/newwindow.png); }

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid var(--keyC); }
  tr:last-of-type {
    border-bottom-width: 0; }

td {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 80%;
          flex: 0 0 80%; }

th {
  font-weight: normal;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 20%;
          flex: 1 0 20%; }

@media screen and (max-width: 767px) {
  tr {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  td,
  th {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%; }
  th {
    padding-top: 38px; }
  td {
    padding-top: 18px; } }

.table-outline {
  margin: 56px auto;
  border: 0px solid var(--keyC);
  border-bottom: none; }
  .table-outline td {
    min-height: 88px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 30px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .table-outline th {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .table-outline thead th {
    color: var(--keyC);
    font-size: var(--px20);
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    -ms-flex-line-pack: start;
        align-content: flex-start;
    font-weight: bold;
    background-color: var(--keyCp);
    min-height: 55px;
    padding-left: 40px; }
    .table-outline thead th h2 {
      font-size: var(--px20); }

@media screen and (max-width: 767px) {
  .table-outline th {
    padding-top: 10vw; }
  .table-outline td {
    padding: 5vw 5vw 10vw; }
  .table-outline thead th {
    padding: 5vw 3vw; } }

.table-profile {
  margin-top: -28px;
  margin-bottom: 45px; }
  .table-profile td {
    padding: 28px 30px 28px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .table-profile th {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 20px;
    text-align: left; }

.managementphilosophy {
  border: 1px solid var(--keyC);
  border-top: none;
  padding: max(3.5%, 58px) 0;
  background-color: #fff;
  position: relative; }
  .managementphilosophy__outer {
    background-color: #DBE5EF;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    padding-top: 90px;
    padding-bottom: 90px;
    margin-bottom: 90px; }
  .managementphilosophy::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 8px;
    content: "";
    display: block;
    background-image: -webkit-gradient(linear, left top, right top, from(var(--keyC)), to(#5A9BC8));
    background-image: linear-gradient(to right, var(--keyC) 0%, #5A9BC8 100%); }
  .managementphilosophy-keywords {
    width: min(687px, 90vw);
    margin: auto; }
    .managementphilosophy-keywords__item {
      position: relative;
      margin: 43px auto;
      padding-bottom: 4px; }
      .managementphilosophy-keywords__item::after {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 4px;
        content: "";
        display: block;
        background-image: -webkit-gradient(linear, left top, right top, from(#094F92), to(#fff));
        background-image: linear-gradient(to right, #094F92 0%, #fff 100%); }
    .managementphilosophy-keywords__keyword {
      font-size: var(--px22);
      font-weight: bold;
      color: var(--keyC);
      margin-right: 36px;
      display: inline-block;
      width: 6em;
      -moz-text-align-last: justify;
           text-align-last: justify; }
  .managementphilosophy-action {
    width: min(687px, 90vw, 90%);
    margin: auto; }
    .managementphilosophy-action__title {
      color: var(--keyC);
      font-size: var(--px22);
      margin-bottom: 14px; }
      .managementphilosophy-action__title .latin {
        font-size: var(--px15);
        margin-left: 15px; }
  .managementphilosophy-hr {
    width: min(744px, 93%);
    margin: 48px auto;
    border: none;
    border-top: 1px solid #07396F; }

@media screen and (max-width: 767px) {
  .managementphilosophy-keywords__item {
    width: 90%; }
  .managementphilosophy-keywords__keyword {
    display: block;
    margin-left: -5%; } }

.message {
  margin-bottom: 86px; }
  .message-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 58px; }
  .message-txt p {
    line-height: 1.93;
    margin-bottom: 1.5em; }
  .message-ph {
    margin-bottom: 57px; }
  .message-signature {
    text-align: right; }
    .message-signature span {
      font-size: var(--px20); }

.hero {
  margin-bottom: 85px;
  height: min(370px, 42vw); }
  .hero img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%; }

.hero-top {
  /* --offset: calc(50vh / 3.464); */
  position: relative;
  min-height: 100vh;
  margin-bottom: 90px;
  overflow: hidden; }
  .hero-top--pre {
    position: absolute;
    z-index: 300;
    top: 0;
    left: 0;
    height: 100%;
    width: 100vw;
    background-color: #fff;
    color: #fff;
    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;
    font-family: var(--font-serif);
    font-size: var(--px50); }
    .hero-top--pre p {
      -webkit-animation: pretext 1.2s ease-in-out 0s forwards;
              animation: pretext 1.2s ease-in-out 0s forwards; }
    .hero-top--pre.active {
      display: none; }
    .hero-top--pre::after {
      -webkit-animation: pretext-wiper 0.8s linear 1.8s forwards;
              animation: pretext-wiper 0.8s linear 1.8s forwards;
      content: "";
      height: 100%;
      width: 0vw;
      background-color: #fff;
      position: absolute;
      right: 0;
      z-index: 100;
      /* transition: 0.5s all;
      opacity: 1;
      border-left: 30px solid var(--keyC); */ }
  .hero-top__img {
    width: 50vw;
    height: 100%;
    position: absolute;
    overflow: hidden;
    background-size: cover;
    opacity: 0;
    -webkit-transition: all 1.8s;
    transition: all 1.8s; }
    .hero-top__img--fin {
      -webkit-transition: all 2s;
      transition: all 2s; }
    .hero-top__img--static {
      opacity: 1; }
    .hero-top__img--inner {
      width: 100%;
      height: 100%; }
      .hero-top__img--inner::after {
        content: "";
        height: 100%;
        width: 100%;
        position: absolute;
        background-size: cover;
        background-position: center; }
    .hero-top__img--left div::after {
      background-image: url(/img/top-hero-l01.jpg); }
    .hero-top__img--left div.hero-top__img--inner-pre::after {
      background-image: url(/img/top-hero-l02.jpg); }
    .hero-top__img--right div::after {
      background-image: url(/img/top-hero-r01b.jpg); }
    .hero-top__img--right div.hero-top__img--inner-pre::after {
      background-image: url(/img/top-hero-r02.jpg); }
    .hero-top__img.active {
      opacity: 1; }
  .hero-top__txt {
    opacity: 0;
    position: absolute;
    top: calc(50% - 45px);
    left: 0;
    right: 0;
    margin: auto;
    width: min(850px, 90vw);
    min-height: 90px;
    background-color: var(--keyC);
    mix-blend-mode: hard-light;
    color: #fff;
    font-family: var(--font-serif);
    font-size: var(--px50);
    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; }
    .hero-top__txt span {
      opacity: 0;
      -webkit-filter: blur(10px);
              filter: blur(10px); }
      .hero-top__txt span.hero-static {
        opacity: 1;
        -webkit-filter: none;
                filter: none; }
    .hero-top__txt.active {
      opacity: 1;
      -webkit-transition: all 0.6s;
      transition: all 0.6s;
      -webkit-transition-delay: 0s;
              transition-delay: 0s; }
      .hero-top__txt.active span {
        opacity: 1;
        -webkit-filter: blur(0px);
                filter: blur(0px);
        -webkit-transition: all 1.2s;
        transition: all 1.2s;
        -webkit-transition-delay: 0.6s;
                transition-delay: 0.6s; }

@supports (-webkit-touch-callout: none) {
  .hero-top {
    min-height: -webkit-fill-available; } }

@media screen and (min-width: 768px) {
  .hero-top__img--left {
    right: 50%;
    top: 100vh; }
  .hero-top__img--right {
    left: 50%;
    top: -100vh; }
  .hero-top__img.active {
    top: 0; }
  .hero-top__img--static {
    top: 0; }
  .hero-logo__upper, .hero-logo__lower {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
    -webkit-transition: 1.2s;
    transition: 1.2s;
    -webkit-filter: blur(10px);
            filter: blur(10px); }
  .hero-logo__upper {
    top: calc(50% - 225px); }
  .hero-logo__lower {
    top: calc(50% + 93px); }
  .hero-logo.active .hero-logo__upper, .hero-logo.active .hero-logo__lower {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0); } }

@media screen and (max-width: 767px) {
  .hero-top {
    min-height: 60vh; }
    .hero-top__img {
      width: 100vw;
      height: 50%; }
      .hero-top__img--left {
        left: 100%; }
        .hero-top__img--left div::after {
          background-image: url(/img/top-hero-l01-sp.jpg); }
        .hero-top__img--left.active {
          left: 0; }
      .hero-top__img--right {
        bottom: 0;
        right: 100%;
        /* div {
          &::after {
            background-image: url(/img/top-hero-r01-sp.jpg);
          }
        } */ }
        .hero-top__img--right.active {
          right: 0; }
      .hero-top__img--static {
        left: 0;
        right: 0; }
    .hero-top__txt {
      top: calc(50% - 10.5vw);
      font-size: 7vw;
      width: 64vw;
      min-height: auto; }
  .hero-logo__upper, .hero-logo__lower {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
    -webkit-transition: 1.2s;
    transition: 1.2s;
    -webkit-filter: blur(10px);
            filter: blur(10px); }
  .hero-logo__upper {
    width: 18vw;
    top: calc(50% - 35vw); }
  .hero-logo__lower {
    width: 38vw;
    top: calc(50% + 16vw); }
  .hero-logo.active .hero-logo__upper, .hero-logo.active .hero-logo__lower {
    opacity: 1;
    -webkit-filter: blur(0);
            filter: blur(0); } }

.hero-static {
  opacity: 1;
  -webkit-filter: none;
          filter: none; }

#hero-static {
  display: none; }

@-webkit-keyframes pretext {
  0% {
    color: #fff;
    -webkit-filter: blur(12px);
            filter: blur(12px); }
  100% {
    color: var(--keyC);
    -webkit-filter: blur(0);
            filter: blur(0); } }

@keyframes pretext {
  0% {
    color: #fff;
    -webkit-filter: blur(12px);
            filter: blur(12px); }
  100% {
    color: var(--keyC);
    -webkit-filter: blur(0);
            filter: blur(0); } }

@-webkit-keyframes pretext-wiper {
  0% {
    width: 0;
    border-left: 0 solid rgba(255, 255, 255, 0); }
  30% {
    border-left: 20vw solid var(--keyC); }
  75% {
    border-left: 15vw solid var(--keyC); }
  100% {
    width: 100%;
    border-left: 0 solid rgba(255, 255, 255, 0); } }

@keyframes pretext-wiper {
  0% {
    width: 0;
    border-left: 0 solid rgba(255, 255, 255, 0); }
  30% {
    border-left: 20vw solid var(--keyC); }
  75% {
    border-left: 15vw solid var(--keyC); }
  100% {
    width: 100%;
    border-left: 0 solid rgba(255, 255, 255, 0); } }

.map {
  margin-top: 56px;
  margin-bottom: 90px;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 320px; }
  .map__outer {
    margin-top: 90px; }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.business {
  margin-bottom: 90px; }
  .business-ph {
    margin-bottom: 90px; }

.swiper-button-prev,
.swiper-button-next {
  background-color: var(--keyC);
  min-height: 50px;
  min-width: 50px; }
  .swiper-button-prev::after,
  .swiper-button-next::after {
    font-size: 30px; }

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  /* left: 10px; */
  left: 0; }

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  /* right: 10px; */
  right: 0; }

.head-band {
  background-color: var(--full-bgC);
  height: min(370px, 42vw);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .head-band__title {
    color: var(--keyC);
    font-size: var(--px32);
    position: relative;
    padding-bottom: 23px; }
    .head-band__title::after {
      position: absolute;
      content: "";
      border-bottom: 4px solid var(--keyC);
      bottom: 0;
      left: calc(50% - 35px);
      width: 70px; }

.privacypolicy {
  margin-bottom: 70px; }
  .privacypolicy p {
    font-size: var(--px16);
    margin-bottom: 3rem; }
  .privacypolicy dt {
    font-size: var(--px22);
    margin-bottom: 1em; }
  .privacypolicy dd {
    margin-bottom: 3em; }
  .privacypolicy ul {
    padding-left: 1em; }

.products-hero {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background-image: url(/img/products-hero_ph.jpg);
  background-size: cover;
  background-position: top center;
  height: min(690px, 80vw);
  margin-bottom: min(90px, 10vw); }
  .products-hero__title {
    margin: auto;
    max-width: 80vw;
    height: min(530px, 77%); }
    .products-hero__title img {
      -o-object-fit: contain;
         object-fit: contain;
      -o-object-position: top;
         object-position: top;
      margin: auto;
      max-height: 100%; }

.products-lead {
  font-size: var(--px32);
  font-family: var(--font-serif);
  text-align: center;
  margin-bottom: 52px; }

.products-ph {
  margin-bottom: 54px; }

.products-desc {
  font-size: var(--px15);
  font-family: var(--font-serif);
  line-height: 1.9;
  margin-bottom: 40px; }

.products-title {
  font-size: var(--px28);
  font-family: var(--font-serif);
  text-align: center;
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 42px; }
  .products-title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    border-bottom: 1px solid #323232;
    width: 116px; }

.products-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.products-item {
  margin-bottom: 40px;
  max-width: 32%; }
  .products-item__name {
    margin: 16px auto;
    text-align: center;
    font-size: var(--px17);
    font-weight: bold; }
    .products-item__name--spec {
      text-align: left;
      margin: 0;
      line-height: 1; }
  .products-item__spec {
    width: 47.5%; }
    .products-item__spec-wrap {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      margin: auto; }
  .products-item__detail {
    font-size: var(--px15);
    line-height: 1.9;
    margin-top: 0.8em;
    margin-bottom: 2em; }

.products-catalog {
  margin-bottom: 90px; }
  .products-catalog__pdf {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

@media screen and (max-width: 767px) {
  .products-item {
    max-width: 100%; }
    .products-item__spec {
      width: 100%; } }

.products-button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  background: #323232;
  height: 40px;
  line-height: 40px;
  margin: 0 auto 36px; }
  .products-button a {
    display: inline-block;
    height: 100%;
    width: 100%; }
  .products-button span {
    position: relative;
    padding: 0 50px; }
    .products-button span::after {
      position: absolute;
      content: "";
      top: 0;
      bottom: 0;
      right: 25px;
      margin: auto;
      width: 5px;
      height: 5px;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }

.products-howto {
  font-size: var(--px15);
  margin-bottom: 45px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .products-howto__head {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 6.5em;
            flex: 0 0 6.5em; }
  .products-howto__body {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 calc(100% - 6.5em);
            flex: 1 1 calc(100% - 6.5em); }

.products-arrange__hero {
  margin: 0 calc(50% - 50vw) 50px;
  width: 100vw;
  height: min(490px, 61.25vw); }
  .products-arrange__hero img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%; }

.products-arrange__list {
  margin-bottom: 80px; }

.recruit-lead {
  font-size: var(--px32);
  text-align: center;
  font-family: var(--font-serif);
  margin-bottom: 58px; }

.recruit-menu {
  padding: 0;
  margin-bottom: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .recruit-menu::after {
    content: "";
    display: block;
    width: 29%;
    height: 0; }
  .recruit-menu__item {
    list-style: none;
    width: 29%;
    color: #fff;
    background-color: var(--keyC);
    text-align: center;
    height: 53px;
    font-size: var(--px22);
    font-weight: bold;
    line-height: 55px;
    position: relative;
    margin-bottom: 35px; }
    .recruit-menu__item::after {
      position: absolute;
      right: 6px;
      bottom: 6px;
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 0 15px 15px;
      border-color: transparent transparent #ffffff transparent; }
    .recruit-menu__item.recruit-sub-color {
      background-color: #00A79B; }
    .recruit-menu__item a {
      display: inline-block;
      width: 100%;
      height: 100%; }

@media screen and (max-width: 767px) {
  .recruit-menu__item {
    width: 49%; } }

.recruit-table {
  margin-bottom: 40px; }
  .recruit-table thead {
    font-size: var(--px22);
    font-weight: bold; }
    .recruit-table thead th {
      font-weight: bold; }
    .recruit-table thead td {
      padding: 14px 30px; }
  .recruit-table tr:last-of-type {
    border-bottom-width: 1px; }
  .recruit-table td {
    padding: 28px 30px 28px 30px; }
  .recruit-table th {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 20px;
    text-align: left;
    color: #004b82;
    font-weight: bold; }
    .recruit-table th span {
      -moz-text-align-last: justify;
           text-align-last: justify;
      width: 5.5rem;
      text-align: center; }

@media screen and (max-width: 767px) {
  .recruit-table thead {
    font-size: 4.8vw; } }

.recruit-button {
  background-color: var(--keyC);
  width: 197px;
  height: 40px;
  margin: 0 auto;
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 40px;
  margin-bottom: 75px; }
  .recruit-button a {
    display: inline-block;
    width: 100%;
    height: 100%; }
  .recruit-button span {
    display: inline-block;
    padding-right: 15px;
    position: relative; }
    .recruit-button span::after {
      position: absolute;
      content: "";
      top: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      width: 5px;
      height: 5px;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }

.no-accepting {
  border-bottom: none;
  padding-bottom: 50px; }

.recruit-sub-color tr {
  border-bottom-color: #00A79B; }
  .recruit-sub-color tr:last-of-type {
    border-bottom-width: 1px; }

.recruit-sub-color th {
  color: #00A79B; }

.recruit-sub-color .recruit-button {
  background-color: #00A79B; }

.inquiry {
  font-size: var(--px18);
  margin: 0 calc(50% - 50vw) 90px;
  width: 100vw;
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .inquiry__inner {
    width: min(920px, 90vw);
    margin: auto; }
  .inquiry__lead {
    margin-bottom: 40px;
    text-align: center; }
  .inquiry__privacy {
    font-size: var(--px15);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    margin-bottom: 30px; }
    .inquiry__privacy a {
      text-decoration: underline; }
  .inquiry__thanks {
    min-height: 30vw;
    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; }
    .inquiry__thanks p {
      text-align: center; }
  .inquiry .mail-form {
    margin-bottom: 30px; }
    .inquiry .mail-form tr {
      border: none;
      margin-bottom: 65px; }
    .inquiry .mail-form th {
      text-align: left;
      width: 40%;
      -ms-flex-preferred-size: 40%;
          flex-basis: 40%;
      line-height: 50px; }
    .inquiry .mail-form td {
      width: 60%;
      -ms-flex-preferred-size: 60%;
          flex-basis: 60%;
      line-height: 50px; }
  .inquiry .require {
    display: inline-block;
    margin-left: 0.5em;
    color: #C84D81; }
  .inquiry input[type=text], .inquiry input[type=email] {
    width: min(322px, 90%);
    height: 48px;
    background-color: #f1f1f1;
    border: none;
    border-radius: 3px; }
  .inquiry input[type=radio], .inquiry input[type=checkbox] {
    margin-right: 0.5em; }
  .inquiry input[type=submit], .inquiry input[type=button] {
    font-size: var(--px20);
    display: block;
    margin: auto;
    width: 200px;
    height: 56px;
    background-color: var(--full-bgC);
    color: var(--keyC);
    border: none;
    -webkit-transition: 0.2s;
    transition: 0.2s; }
    .inquiry input[type=submit]:hover, .inquiry input[type=button]:hover {
      cursor: pointer;
      opacity: 0.8; }
  .inquiry textarea {
    background-color: #f1f1f1;
    width: 100%;
    border: none;
    border-radius: 3px;
    line-height: 1.5;
    padding: 0.2em 0.5em; }
  .inquiry label {
    margin-right: 2em; }
    .inquiry label:hover {
      cursor: pointer; }

@media screen and (max-width: 767px) {
  .inquiry__cbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .inquiry__cbox label {
      width: 30%; }
  .inquiry label {
    margin: 0; }
  .inquiry .mail-form tr {
    margin-bottom: 0; }
  .inquiry .mail-form th,
  .inquiry .mail-form td {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    width: 100%;
    line-height: 1; }
  .inquiry input[type=radio], .inquiry input[type=checkbox] {
    margin-right: 0.2em; } }

/*
    確認画面用 css
*/
#formWrap {
  width: 700px;
  margin: 0 auto;
  color: #555;
  line-height: 120%;
  font-size: 90%; }
  #formWrap h3, #formWrap h4 {
    margin-bottom: 3em; }
  #formWrap input[type=submit], #formWrap input[type=button] {
    display: inline-block;
    margin: 1em; }

table.formTable {
  width: 100%;
  margin: 2em auto;
  border-collapse: collapse; }

table.formTable td, table.formTable th {
  padding: 20px; }

table.formTable th {
  width: 30%;
  font-weight: normal;
  text-align: left; }

p.error_messe {
  margin: 5px 0;
  color: red;
  margin-bottom: 2em; }

/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width: 572px) {
  #formWrap {
    width: 95%;
    margin: 0 auto; }
  table.formTable th, table.formTable td {
    width: auto;
    display: block; }
  table.formTable th {
    margin-top: 5px;
    border-bottom: 0; }
  form input[type="submit"], form input[type="reset"], form input[type="button"] {
    display: block;
    width: 100%;
    height: 40px; } }

.station0 {
  display: grid;
  justify-items: center;
  margin-bottom: min(90px, 18vw); }
  .station0 h2 {
    max-width: 70vw; }
  .station0__hero {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    margin-bottom: 0; }
  .station0__title {
    margin-top: max(-208px, -20.8vw);
    margin-bottom: min(62px, 6.2vw);
    max-width: 80vw; }
  .station0__copy {
    margin-bottom: min(75px, 7.5vw);
    max-width: 55vw; }
  .station0__lead {
    margin-bottom: min(115px, 11.5vw);
    justify-items: left;
    font-family: var(--font-serif);
    font-size: min(20px, 4vw);
    line-height: 2.2; }
  .station0__insta + img {
    max-width: 45vw; }
  .station0__insta .instalogo {
    max-width: 45vw; }
  .station0__open {
    row-gap: 18px;
    margin-bottom: min(74px, 15vw); }
    .station0__open h3 {
      color: var(--stationzero);
      font-size: min(40px, 6.5vw);
      letter-spacing: -1px;
      -webkit-font-feature-settings: "palt";
              font-feature-settings: "palt";
      margin-bottom: -0.3em; }
    .station0__open em {
      font-style: normal;
      -webkit-transform: scale(1, 1.7) translateY(-0.1em);
              transform: scale(1, 1.7) translateY(-0.1em);
      display: inline-block; }
    .station0__open--time {
      font-size: min(40px, 6.5vw);
      font-weight: bold; }
    .station0__open--inquire {
      font-size: var(--px16);
      font-weight: bold; }
    .station0__open img {
      max-width: 666px; }
  .station0__fee {
    row-gap: 23px;
    margin-bottom: min(90px, 18vw); }
  .station0__taiken {
    row-gap: 17px;
    margin-bottom: min(93px, 19vw);
    max-width: 698px; }
    @media (max-width: 767px) {
      .station0__taiken img:nth-child(3), .station0__taiken img:nth-child(7) {
        display: none;
        position: absolute !important;
        clip: rect(1px, 1px, 1px, 1px);
        pointer-events: none; } }
    .station0__taiken img:nth-child(5), .station0__taiken img:nth-child(6) {
      justify-self: start;
      padding-left: 15px; }
      @media (max-width: 767px) {
        .station0__taiken img:nth-child(5), .station0__taiken img:nth-child(6) {
          padding-left: 6px;
          position: relative;
          top: 5px; } }
    .station0__taiken img:nth-child(5) {
      position: relative;
      top: 9px; }
  .station0__taiken-notes {
    font-size: 3vw;
    padding-left: 0;
    list-style-type: "※";
    margin-top: -1em; }
    @media (min-width: 768px) {
      .station0__taiken-notes {
        position: absolute !important;
        clip: rect(1px, 1px, 1px, 1px);
        pointer-events: none; } }
  .station0__access {
    row-gap: min(60px, 6vw); }
  .station0__map {
    margin-top: 0;
    margin-bottom: 0; }
  .station0__fullwidth {
    width: 100vw;
    margin-inline: calc(50% - 50vw); }
  .station0__2409 {
    background-color: #ffd900; }
    .station0__2409--title {
      width: 100vw;
      margin-inline: calc(50% - 50vw);
      margin-top: max(-60px, -12vw);
      margin-bottom: 0; }
    .station0__2409--fee {
      row-gap: 0; }
    @media screen and (max-width: 767px) {
      .station0__2409--notes {
        display: none; } }
    .station0__2409--taiken-notes {
      margin-top: 0; }
  .station0__2410ootamu--title {
    position: relative; }
  .station0__2410ootamu--pdfdl {
    position: absolute;
    bottom: 30px; }
    @media screen and (max-width: 767px) {
      .station0__2410ootamu--pdfdl {
        bottom: 0; } }
    .station0__2410ootamu--pdfdl img {
      margin: auto; }

#insta {
  list-style: none;
  padding: 0;
  max-width: 666px;
  display: grid;
  grid-template-columns: repeat(3, 1fr); }
  #insta li {
    position: relative; }
    #insta li:hover .captionTxt {
      -webkit-transition: .5s opacity, .25s filter;
      transition: .5s opacity, .25s filter;
      opacity: 1; }
  #insta img {
    aspect-ratio: 1/1;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  #insta a {
    text-decoration: none; }
  #insta .captionTxt {
    /* display: block; */
    display: none;
    width: 100%;
    height: 100%;
    padding: 16px;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.75);
    color: #fff;
    opacity: 0; }
  #insta .like_count {
    font-size: 12px;
    line-height: 2;
    /* display: block; */
    display: none;
    text-align: center;
    position: absolute;
    right: 5%;
    bottom: 5%;
    background-color: rgba(255, 255, 255, 0.75);
    padding: 0 0.5em;
    border-radius: 100vmax; }
    #insta .like_count::before {
      content: "\02665";
      color: #d4245f;
      font-size: 14px;
      vertical-align: middle;
      padding-right: 0.25em; }

.monomina__center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.monomina__hero {
  margin-top: min(58px, 7vw);
  margin-bottom: min(49px, 6vw); }

.monomina__logo {
  margin-bottom: min(60px, 7.5vw); }

.monomina__ph {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  margin-bottom: min(30px, 4vw); }

.monomina__btn {
  margin-top: min(66px, 8vw);
  margin-bottom: min(80px, 10vw);
  text-align: center;
  line-height: 1.25; }
  .monomina__btn img {
    display: inline-block; }
  .monomina__btn--head {
    margin-bottom: min(11px, 1.4vw); }
  .monomina__btn > a img {
    margin-bottom: 20px; }
  .monomina__btn a:hover {
    opacity: .75; }

.monomina-hr {
  margin-bottom: min(30px, 3.75vw); }

.monomina__teaser {
  --vpadding: min(37px, 4vw);
  --vpaddingnega: calc(100% - min(37px, 4vw));
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr min(500px, 65vw) 1fr;
  grid-template-rows: 1fr; }
  .monomina__teaser--wrap {
    margin-top: min(30px, 3.75vw);
    margin-bottom: min(30px, 3.75vw);
    width: 100vw;
    margin-inline: calc(50% - 50vw); }
  .monomina__teaser--poster {
    grid-column: 2/3;
    grid-row: 1/3;
    padding-top: var(--vpadding);
    padding-bottom: var(--vpadding); }
    .monomina__teaser--poster img {
      max-width: 500px;
      width: 100%; }
  .monomina__teaser--left {
    grid-column: 1/2;
    grid-row: 1/2; }
  .monomina__teaser--right {
    grid-column: 3/4;
    grid-row: 1/2; }
  .monomina__teaser--fill {
    background-color: #E6E6E5;
    width: 100%;
    height: 100%; }
    .monomina__teaser--fill-left {
      -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% var(--vpaddingnega), 100% var(--vpadding));
              clip-path: polygon(0% 0%, 0% 100%, 100% var(--vpaddingnega), 100% var(--vpadding)); }
    .monomina__teaser--fill-right {
      -webkit-clip-path: polygon(0% var(--vpadding), 0% var(--vpaddingnega), 100% 100%, 100% 0%);
              clip-path: polygon(0% var(--vpadding), 0% var(--vpaddingnega), 100% 100%, 100% 0%); }
/*# sourceMappingURL=stdin.map */