@charset "UTF-8";
/*
カラー・フォント定義
*/
/* =========================== 共通 =========================== */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

select::-ms-expand {
  display: none; }

a {
  color: #1f1715;
  text-decoration: none; }
  a:hover {
    color: #1f1715;
    text-decoration: underline; }

ul {
  list-style-type: none; }

figure {
  margin: 0px 0px 0px 0px; }

body {
  font-family: "Noto Sans JP", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  color: #1f1715;
  background-color: #fff;
  position: relative;
  font-size: 16px;
  line-height: 1;
  padding: 0px;
  overflow: hidden;
  padding: 0px 0px 0px 0px; }
  body.no_scroll {
    overflow: hidden !important; }
  @media only screen and (max-width: 959px) {
    body {
      font-size: 14px;
      padding: 0px 0px 0px 0px; } }

/* =========================== 汎用スタイル =========================== */
@media only screen and (min-width: 960px) {
  .pc {
    display: block; } }
@media only screen and (max-width: 959px) {
  .pc {
    display: none; } }

@media only screen and (min-width: 960px) {
  .sp {
    display: none; } }
@media only screen and (max-width: 959px) {
  .sp {
    display: block; } }

.anchorlink {
  position: relative;
  top: -64px;
  display: block; }

.mb8 {
  margin-bottom: 8px !important; }

.mb12 {
  margin-bottom: 12px !important; }

.mb16 {
  margin-bottom: 16px !important; }

.mb24 {
  margin-bottom: 24px !important; }

.mb32 {
  margin-bottom: 32px !important; }

.mb48 {
  margin-bottom: 48px !important; }

.mb64 {
  margin-bottom: 64px !important; }

.mb96 {
  margin-bottom: 96px !important; }

.mb128 {
  margin-bottom: 128px !important; }

.fadein {
  opacity: 0;
  transform: translate(0, 40px);
  transition: 1000ms; }

.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  transition-timing-function: ease-in-out; }
  .fadein.scrollin.del01 {
    transition-delay: 0.1s; }
  .fadein.scrollin.del02 {
    transition-delay: 0.2s; }
  .fadein.scrollin.del03 {
    transition-delay: 0.3s; }
  .fadein.scrollin.del04 {
    transition-delay: 0.4s; }
  .fadein.scrollin.del05 {
    transition-delay: 0.5s; }
  .fadein.scrollin.del06 {
    transition-delay: 0.6s; }
  .fadein.scrollin.del07 {
    transition-delay: 0.7s; }
  .fadein.scrollin.del08 {
    transition-delay: 0.8s; }
  .fadein.scrollin.del09 {
    transition-delay: 0.9s; }
  .fadein.scrollin.del1 {
    transition-delay: 1s; }

.fadeinX {
  opacity: 0;
  transform: translate(40px, 0);
  transition: all 1000ms; }

.fadeinX.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  transition-timing-function: ease-in-out; }
  .fadeinX.scrollin.del01 {
    transition-delay: 0.1s; }
  .fadeinX.scrollin.del02 {
    transition-delay: 0.2s; }
  .fadeinX.scrollin.del03 {
    transition-delay: 0.3s; }
  .fadeinX.scrollin.del04 {
    transition-delay: 0.4s; }
  .fadeinX.scrollin.del05 {
    transition-delay: 0.5s; }
  .fadeinX.scrollin.del06 {
    transition-delay: 0.6s; }
  .fadeinX.scrollin.del07 {
    transition-delay: 0.7s; }
  .fadeinX.scrollin.del08 {
    transition-delay: 0.8s; }
  .fadeinX.scrollin.del09 {
    transition-delay: 0.9s; }
  .fadeinX.scrollin.del1 {
    transition-delay: 1s; }

footer .smooz-btn {
  width: 100%;
  max-width: 1000px;
  margin: -64px auto 0px auto;
  background-color: #29abe2;
  text-align: center; }
  @media only screen and (max-width: 959px) {
    footer .smooz-btn {
      margin: 0px 0px 0px 0px; } }
  footer .smooz-btn a {
    display: block; }
    @media only screen and (max-width: 959px) {
      footer .smooz-btn a {
        padding: 16px 16px; } }
    footer .smooz-btn a img {
      margin: -64px 0px 0px 0px;
      width: 80%;
      height: auto;
      padding: 0px 0px 64px 0px;
      transition: 0.3s; }
      @media only screen and (max-width: 959px) {
        footer .smooz-btn a img {
          margin: 0px 0px 0px 0px;
          padding: 0px 0px 0px 0px;
          width: 100%; } }
      footer .smooz-btn a img:hover {
        transform: scale(1.05); }
footer .seibu-logo {
  width: 100%;
  max-width: 1000px;
  margin: 0px auto;
  background-color: #fff;
  text-align: center;
  padding: 32px 0px; }
  @media only screen and (max-width: 959px) {
    footer .seibu-logo {
      padding: 24px 0px; } }
  footer .seibu-logo img {
    margin: 0px 0px 0px 0px;
    width: 240px;
    height: auto; }
    @media only screen and (max-width: 959px) {
      footer .seibu-logo img {
        width: 180px; } }

body.vs-ueda .mv {
  width: 100%;
  overflow: hidden; }
  body.vs-ueda .mv .mv_video {
    display: block;
    width: 100%;
    height: auto; }
body.vs-ueda .base-container {
  width: 100%;
  margin: 0px auto 128px auto;
  background-color: #3aa4c1; }
  @media only screen and (max-width: 959px) {
    body.vs-ueda .base-container {
      margin: 0px auto 96px auto; } }
  body.vs-ueda .base-container:nth-last-of-type(1) {
    margin: 0px auto 0px auto; }
  body.vs-ueda .base-container .inner {
    width: 100%;
    max-width: 1000px;
    padding: 64px 0px 0px 0px;
    margin: 0px auto 0px auto;
    position: relative;
    color: #fff; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container .inner {
        padding: 32px 10px 0px 10px; } }
  body.vs-ueda .base-container h2 {
    text-align: center;
    margin: 0px 0px 32px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container h2 {
        margin: 0px 0px 16px 0px; } }
    body.vs-ueda .base-container h2 img {
      width: 80%;
      height: auto; }
  body.vs-ueda .base-container h3 {
    width: 100%;
    position: absolute;
    left: 0px;
    top: -48px;
    height: 48px;
    line-height: 48px;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    background-color: #fcdd00;
    text-align: center; }
    body.vs-ueda .base-container h3 img {
      width: 300px;
      height: auto;
      vertical-align: text-top; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .base-container h3 img {
          max-width: 240px;
          width: 100%;
          vertical-align: middle; } }
  body.vs-ueda .base-container .property {
    display: block;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    margin: 0px 0px 48px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container .property {
        font-size: 16px;
        margin: 0px 0px 24px 0px; } }
  body.vs-ueda .base-container .time {
    color: #fcdd00;
    font-weight: bold;
    text-align: center;
    margin: 0px 0px 0px 0px; }
    body.vs-ueda .base-container .time dt {
      background-color: #4c041e;
      font-size: 20px;
      padding: 12px 0px; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .base-container .time dt {
          font-size: 18px;
          padding: 8px 0px; } }
    body.vs-ueda .base-container .time dd {
      background-color: #650021;
      font-size: 96px;
      padding: 24px 0px; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .base-container .time dd {
          font-size: 54px;
          padding: 12px 0px; } }
  body.vs-ueda .base-container .youtube-container {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 0px 0px 48px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container .youtube-container {
        margin: 0px 0px 32px 0px; } }
    body.vs-ueda .base-container .youtube-container iframe {
      display: block;
      width: 100%;
      height: 100%;
      border: 0; }
  body.vs-ueda .base-container .text-block {
    margin: 0px 0px 32px 0px; }
    body.vs-ueda .base-container .text-block h4 {
      font-size: 36px;
      font-weight: bold;
      text-align: center;
      margin: 0px 0px 24px 0px;
      line-height: 1.6; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .base-container .text-block h4 {
          font-size: 20px;
          margin: 0px 0px 12px 0px; } }
    body.vs-ueda .base-container .text-block p {
      line-height: 1.8; }
  body.vs-ueda .base-container .photo {
    margin: 0px 0px 32px 0px; }
    body.vs-ueda .base-container .photo ul {
      display: flex;
      gap: 12px;
      margin: 0;
      padding: 0;
      list-style: none; }
      body.vs-ueda .base-container .photo ul li {
        flex: 1;
        min-width: 0; }
        body.vs-ueda .base-container .photo ul li img {
          display: block;
          width: 100%;
          height: auto; }
  body.vs-ueda .base-container .map {
    height: 800px;
    margin: 0px 0px 64px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container .map {
        height: 600px;
        margin: 0px 0px 32px 0px; } }
  body.vs-ueda .base-container .warning {
    text-align: center;
    margin: 0px 0px 64px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .base-container .warning {
        margin: 0px 0px 32px 0px; } }
    body.vs-ueda .base-container .warning span {
      display: inline-block;
      font-size: 16px;
      background-position: left bottom;
      padding: 0px 0px 12px 0px;
      line-height: 1.6;
      background-image: url("../img/vs-ueda/border-bottom.svg");
      color: #fff; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .base-container .warning span {
          font-size: 14px;
          text-align: left; } }
body.vs-ueda header {
  width: 100%;
  max-width: 1000px;
  margin: 0px auto 64px auto;
  padding: 64px 64px 64px 64px;
  background-color: #fff; }
  @media only screen and (max-width: 959px) {
    body.vs-ueda header {
      padding: 32px 32px 32px 32px; } }
  body.vs-ueda header .top {
    display: flex;
    align-items: center;
    gap: 16px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda header .top {
        flex-direction: column; } }
    body.vs-ueda header .top figure,
    body.vs-ueda header .top h1 {
      margin: 0; }
    body.vs-ueda header .top figure {
      flex: 1;
      width: 45%; }
      body.vs-ueda header .top figure img {
        display: block;
        width: 100%;
        height: auto; }
    body.vs-ueda header .top h1 {
      flex: 1;
      width: 55%; }
      body.vs-ueda header .top h1 img {
        display: block;
        width: 100%;
        height: auto; }
  body.vs-ueda header > p {
    margin: 48px 0 0;
    line-height: 1.8; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda header > p {
        margin: 32px 0 0; } }
body.vs-ueda .station {
  width: calc(100% + 48px);
  margin: 0px 0px 0px -24px;
  position: relative;
  padding: 48px 24px 32px 24px;
  background-color: #2d7882; }
  body.vs-ueda .station .station-inner {
    width: 100%;
    max-width: 1000px;
    padding: 12px 0px 0px 0px;
    margin: 0px auto 0px auto;
    position: relative;
    color: #fff; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .station .station-inner {
        padding: 32px 10px 0px 10px; } }
  body.vs-ueda .station h3 {
    position: absolute;
    top: -48px;
    left: calc(50% - 60px);
    margin: 0px 0px 0px 0px;
    width: 120px;
    height: 48px;
    line-height: 48px;
    text-align: center;
    font-size: 24px;
    background-color: #fcdd00;
    color: #000;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .station h3 {
        font-size: 30px; } }
  body.vs-ueda .station .station-header {
    color: #fff;
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
    margin: 0px 0px 16px 0px; }
    @media only screen and (max-width: 959px) {
      body.vs-ueda .station .station-header {
        margin: 0px 0px 8px 0px; } }
    body.vs-ueda .station .station-header h4 {
      width: 70%;
      font-size: 24px; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .station .station-header h4 {
          width: 100%;
          margin: 0px 0px 16px 0px;
          font-size: 28px; } }
      body.vs-ueda .station .station-header h4 span {
        font-size: 24px; }
        @media only screen and (max-width: 959px) {
          body.vs-ueda .station .station-header h4 span {
            font-size: 20px; } }
    body.vs-ueda .station .station-header p {
      width: 30%;
      text-align: right;
      display: -webkit-flex;
      /* Safari */
      display: flex;
      -webkit-flex-direction: row;
      /* Safari */
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      /* Safari */
      flex-wrap: wrap;
      align-items: flex-end;
      justify-content: flex-end; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .station .station-header p {
          width: 100%; } }
      body.vs-ueda .station .station-header p em {
        font-style: normal;
        text-align: right;
        display: inline-block; }
  body.vs-ueda .station .station-photo {
    display: -webkit-flex;
    /* Safari */
    display: flex;
    -webkit-flex-direction: row;
    /* Safari */
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap; }
    body.vs-ueda .station .station-photo li {
      width: 33.3%;
      padding: 0px 8px 0px 8px;
      margin: 0px 0px 24px 0px; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .station .station-photo li {
          padding: 0px 2px 0px 2px;
          margin: 0px 0px 16px 0px; } }
      body.vs-ueda .station .station-photo li img {
        width: 100%;
        height: auto; }
  body.vs-ueda .station .bottom-text {
    display: block; }
    body.vs-ueda .station .bottom-text li {
      color: #fff;
      display: block;
      font-size: 16px;
      margin: 0px 0px 8px 0px;
      line-height: 1.6; }
      @media only screen and (max-width: 959px) {
        body.vs-ueda .station .bottom-text li {
          font-size: 14px; } }
