/*! Writen  by SCSS */
/* common */
.main_wrap {
  background-image: url("../images/location/main.jpg"); }
  @media screen and (max-width: 480px) {
    .main_wrap {
      background-image: url("../images/location/main_sp.jpg"); } }

/* common */
/* location */
.location {
  padding: 110px 0 100px; }
  @media screen and (max-width: 768px) {
    .location {
      padding: 70px 0 80px; } }
  .location .map {
    position: relative; }
    .location .map:after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      pointer-events: none;
      border: 1px solid #382e2b; }
    .location .map .map_prot {
      position: absolute;
      left: 0;
      top: 0;
      font-size: 20px;
      font-weight: bold;
      color: #382e2b;
      background: #FFF;
      padding: 2px 10px; }
      @media screen and (max-width: 768px) {
        .location .map .map_prot {
          font-size: 15px; } }
  .location .area_text {
    padding: 10px;
    text-align: center;
    background: #382e2b;
    font-size: 26px;
    line-height: 1.4;
    color: #FFF; }
    @media screen and (max-width: 768px) {
      .location .area_text {
        font-size: 22px; } }
    @media screen and (max-width: 480px) {
      .location .area_text {
        font-size: 19px; } }
    .location .area_text .small {
      font-size: 70%; }
  .location .map_txt {
    font-size: 25px;
    text-align: center;
    padding: 5px;
    border: 1px solid #382e2b; }
    @media screen and (max-width: 980px) {
      .location .map_txt {
        font-size: 20px; } }
    @media screen and (max-width: 480px) {
      .location .map_txt {
        font-size: 17px; } }
    .location .map_txt .small {
      font-size: 80%; }

/* location */
/* access */
.access {
  padding: 0px 0 100px; }
  @media screen and (max-width: 768px) {
    .access {
      padding: 0px 0 80px; } }
  @media screen and (max-width: 480px) {
    .access .station_wrap {
      flex-wrap: wrap; } }
  .access .station_wrap .sta_left {
    width: 62.5%; }
    @media screen and (max-width: 480px) {
      .access .station_wrap .sta_left {
        width: 100%;
        margin-bottom: 30px; } }
  .access .station_wrap .sta_right {
    width: 33.34%; }
    @media screen and (max-width: 480px) {
      .access .station_wrap .sta_right {
        width: 100%; } }
  .access .station_wrap .sta_obi {
    padding: 3px 5px;
    font-size: 21px;
    color: #FFF;
    margin-bottom: 20px;
    text-align: center;
    background: #171c61; }
    @media screen and (max-width: 768px) {
      .access .station_wrap .sta_obi {
        font-size: 18px; } }
  .access .station_wrap .sta_img {
    display: flex;
    justify-content: flex-start;
    align-items: center; }
  .access .minutes {
    border: 1px solid #f0e3d8;
    margin-bottom: 40px; }
    @media screen and (max-width: 480px) {
      .access .minutes {
        flex-wrap: wrap; } }
    .access .minutes li {
      width: 25%;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 30px 10px; }
      @media screen and (max-width: 480px) {
        .access .minutes li {
          width: 50%; } }
      .access .minutes li:nth-child(odd) {
        background: #f0e3d8; }
      @media screen and (max-width: 480px) {
        .access .minutes li:nth-child(1), .access .minutes li:nth-child(4) {
          background: #f0e3d8; } }
      @media screen and (max-width: 480px) {
        .access .minutes li:nth-child(3) {
          background: #FFF; } }
      .access .minutes li .m01 {
        font-size: 19px;
        font-weight: bold;
        color: #382e2b;
        line-height: 1.5;
        position: relative; }
        @media screen and (max-width: 1024px) {
          .access .minutes li .m01 {
            font-size: 1.8vw; } }
        @media screen and (max-width: 480px) {
          .access .minutes li .m01 {
            font-size: 3.5vw; } }
        .access .minutes li .m01 span {
          display: inline-block;
          line-height: 1; }
          .access .minutes li .m01 span.big01 {
            font-size: 150%; }
          .access .minutes li .m01 span.big02 {
            font-size: 130%; }
          .access .minutes li .m01 span.big03 {
            font-size: 240%; }
          .access .minutes li .m01 span.min_sub {
            position: absolute;
            left: 0;
            top: 100%;
            font-size: 12px;
            letter-spacing: normal;
            color: #382e2b; }
            @media screen and (max-width: 1024px) {
              .access .minutes li .m01 span.min_sub {
                font-size: 10px; } }
      .access .minutes li .m02 {
        font-size: 14px;
        text-align: center;
        font-weight: bold;
        line-height: 1.5;
        color: #382e2b;
        letter-spacing: normal; }
        @media screen and (max-width: 1024px) {
          .access .minutes li .m02 {
            font-size: 10px; } }
  @media screen and (max-width: 480px) {
    .access .train_wrap {
      flex-wrap: wrap; } }
  .access .train_wrap .tra_l {
    width: 40.625%; }
    @media screen and (max-width: 480px) {
      .access .train_wrap .tra_l {
        width: 100%; } }
    .access .train_wrap .tra_l .image .en {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      font-size: 24px;
      color: #FFF;
      letter-spacing: normal;
      text-shadow: 0px 0px 0px rgba(56, 46, 43, 0.5), 0px 0px 1px rgba(56, 46, 43, 0.5), 0px 0px 2px rgba(56, 46, 43, 0.5), 0px 0px 3px rgba(56, 46, 43, 0.5), 0px 0px 4px rgba(56, 46, 43, 0.5), 0px 0px 5px rgba(56, 46, 43, 0.5), 0px 0px 6px rgba(56, 46, 43, 0.5), 0px 0px 7px rgba(56, 46, 43, 0.5), 0px 0px 8px rgba(56, 46, 43, 0.5), 0px 0px 9px rgba(56, 46, 43, 0.5), 0px 0px 10px rgba(56, 46, 43, 0.5);
      display: flex;
      justify-content: center;
      align-items: center; }
  .access .train_wrap .tra_r {
    width: 59.375%;
    padding: 20px;
    background: rgba(23, 28, 97, 0.05);
    display: flex;
    justify-content: center;
    align-items: center; }
    @media screen and (max-width: 480px) {
      .access .train_wrap .tra_r {
        width: 100%;
        padding: 20px 15px; } }
    .access .train_wrap .tra_r .tra_r_in {
      justify-content: center; }
      .access .train_wrap .tra_r .tra_r_in .train > div {
        text-align: left;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        position: relative;
        font-size: 18px;
        font-weight: bold;
        letter-spacing: normal; }
        @media screen and (max-width: 1024px) {
          .access .train_wrap .tra_r .tra_r_in .train > div {
            font-size: 1.75vw; } }
        @media screen and (max-width: 768px) {
          .access .train_wrap .tra_r .tra_r_in .train > div {
            font-size: 1.9vw; } }
        @media screen and (max-width: 480px) {
          .access .train_wrap .tra_r .tra_r_in .train > div {
            flex-wrap: wrap;
            font-size: 3.2vw; } }
        .access .train_wrap .tra_r .tra_r_in .train > div dt {
          width: 9em;
          position: relative; }
        .access .train_wrap .tra_r .tra_r_in .train > div dd.arrow {
          margin: 0 20px; }
          @media screen and (max-width: 768px) {
            .access .train_wrap .tra_r .tra_r_in .train > div dd.arrow {
              margin: 0 15px; } }
          @media screen and (max-width: 480px) {
            .access .train_wrap .tra_r .tra_r_in .train > div dd.arrow {
              margin: 0 10px; } }
          @media screen and (max-width: 480px) {
            .access .train_wrap .tra_r .tra_r_in .train > div dd.arrow img {
              width: 30px; } }

/* access */
/* history */
.history_wrap {
  padding: 70px 0 80px;
  background: url("../images/location/bg_history.jpg") center top/cover; }
  @media screen and (max-width: 768px) {
    .history_wrap {
      padding: 50px 0 60px; } }
  .history_wrap .history {
    text-align: center; }
    .history_wrap .history span {
      display: inline-block;
      background: #FFF;
      font-size: 20px;
      line-height: 1.2;
      color: #171c61;
      padding: 5px 15px; }
      @media screen and (max-width: 768px) {
        .history_wrap .history span {
          font-size: 17px; } }
  .history_wrap .his_ttl {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    color: #FFF; }
    @media screen and (max-width: 768px) {
      .history_wrap .his_ttl {
        font-size: 26px; } }
    @media screen and (max-width: 480px) {
      .history_wrap .his_ttl {
        font-size: 20px; } }
  .history_wrap .his_read {
    font-size: 16px;
    color: #FFF; }
    @media screen and (max-width: 768px) {
      .history_wrap .his_read {
        font-size: 14px; } }
  @media screen and (max-width: 480px) {
    .history_wrap .photo {
      flex-direction: column;
      row-gap: 20px; } }
  .history_wrap .photo .photo_in {
    width: 48.96%; }
    @media screen and (max-width: 480px) {
      .history_wrap .photo .photo_in {
        width: 100%; } }
  .history_wrap .photo .photo_l {
    width: 41.67%; }
    .history_wrap .photo .photo_l .cap_l {
      position: absolute;
      top: 100%;
      left: 0;
      color: #FFF; }
  .history_wrap .photo .photo_r {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 56.25%; }

.caparea {
  padding: 30px 20px;
  margin: 0 auto; }

/*# sourceMappingURL=location.css.map */
