@charset "UTF-8";
/* -------------------------/ 

common

------------------------- */
.page-location {
  background: url("../location/images/bg.jpg") no-repeat center;
  background-size: cover;
  color: #FFF; }

/* ページタイトル */
.page-title {
  background: url("../location/images/mv-page.jpg") no-repeat center; }

/* リンクボタン */
.page-link ul {
  margin: 0 auto 4rem;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  -webkit-justify-content: space-between; }
  @media screen and (max-width: 750px) {
    .page-link ul {
      margin: 0 auto 2.5rem; } }
  .page-link ul li {
    width: 49%;
    font-size: 2.0rem;
    text-align: center; }
    @media screen and (max-width: 750px) {
      .page-link ul li {
        font-size: 1.4rem; } }
    .page-link ul li a {
      display: block;
      border: 2px solid #A89F8D;
      background: #A89F8D;
      padding: 2rem 0;
      color: #FFF;
      transition: all 0.3s ease 0s; }
      .page-link ul li a:hover {
        opacity: 0.6; }
    .page-link ul li.on a {
      border: 2px solid #A89F8D;
      background: none;
      color: #A89F8D;
      position: relative;
      cursor: default; }
      .page-link ul li.on a:before {
        content: '';
        position: absolute;
        display: block;
        z-index: 1;
        border-style: solid;
        border-color: #A89F8D transparent;
        border-width: 10px 10px 0 10px;
        bottom: -10px;
        left: 50%;
        margin-left: -10px; }
      .page-link ul li.on a:hover {
        opacity: inherit; }
.page-link.bottom ul {
  margin: 4.5rem auto 0;
  padding-bottom: 4.5rem;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  -webkit-justify-content: space-between; }
  @media screen and (max-width: 970px) {
    .page-link.bottom ul {
      width: 90%; } }
  @media screen and (max-width: 750px) {
    .page-link.bottom ul {
      margin: 2.5rem auto 0;
      padding-bottom: 2.5rem; } }
  .page-link.bottom ul li.on a:before {
    content: '';
    position: absolute;
    display: block;
    z-index: 1;
    border-style: solid;
    border-color: #bca960 transparent;
    border-width: 0px 10px 10px 10px;
    bottom: 100%;
    left: 50%;
    margin-left: -10px; }

/* title */
.title-cate-en {
  font-family: "EB Garamond", serif;
  font-size: 6rem;
  margin-bottom: 1.5rem;
  color: #A89F8D;
  font-weight: 500;
  letter-spacing: 0.05em; }
  .title-cate-en span {
    font-size: 10rem; }

/* -------------------------/ 

location

------------------------- */
/* tradition ****************************/
.block-location-tradition {
  background: url("../location/images/bg-tradition.jpg") no-repeat center bottom;
  padding-bottom: 12rem; }
  @media screen and (max-width: 750px) {
    .block-location-tradition {
      padding: 12rem 0 7rem;
      background-size: cover;
      margin-top: 15rem; } }
  @media screen and (max-width: 750px) {
    .block-location-tradition .container {
      margin-top: -25rem; } }
  .block-location-tradition .castle-area {
    margin-top: 3rem; }
    .block-location-tradition .castle-area .wrapper {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      -webkit-justify-content: space-between;
      flex-wrap: wrap;
      flex-wrap: -webkit-wrap; }
      .block-location-tradition .castle-area .wrapper .text-unit {
        max-width: 560px;
        width: 54.5%; }
        @media screen and (max-width: 1170px) {
          .block-location-tradition .castle-area .wrapper .text-unit {
            max-width: inherit; } }
        @media screen and (max-width: 750px) {
          .block-location-tradition .castle-area .wrapper .text-unit {
            width: 100%;
            margin-bottom: 3rem; } }
        .block-location-tradition .castle-area .wrapper .text-unit .title {
          color: #BCB3A1;
          font-size: 2.4rem;
          line-height: 1.6;
          margin-bottom: 1rem; }
          @media screen and (max-width: 750px) {
            .block-location-tradition .castle-area .wrapper .text-unit .title {
              font-size: 2.2rem;
              margin-bottom: .5rem; } }
        .block-location-tradition .castle-area .wrapper .text-unit .title-sub {
          font-size: 2.4rem;
          padding-bottom: 1rem;
          margin-bottom: 1rem;
          border-bottom: 1px solid #7B715F; }
          @media screen and (max-width: 750px) {
            .block-location-tradition .castle-area .wrapper .text-unit .title-sub {
              font-size: 2.0rem; } }
          .block-location-tradition .castle-area .wrapper .text-unit .title-sub .text-middle {
            font-size: 1.8rem; }
          .block-location-tradition .castle-area .wrapper .text-unit .title-sub .text-big {
            font-size: 6.0rem;
            color: #BCB3A1;
            font-family: "EB Garamond", serif;
            font-weight: 500; }
          .block-location-tradition .castle-area .wrapper .text-unit .title-sub .text-small {
            font-size: 1.2rem; }
        .block-location-tradition .castle-area .wrapper .text-unit .text {
          line-height: 2.3;
          margin-top: 1.5rem; }
          @media screen and (max-width: 1170px) {
            .block-location-tradition .castle-area .wrapper .text-unit .text {
              font-size: 1.2rem; } }
          @media screen and (max-width: 750px) {
            .block-location-tradition .castle-area .wrapper .text-unit .text {
              font-size: 1.6rem; } }
      .block-location-tradition .castle-area .wrapper .img {
        max-width: 450px;
        width: 45%; }
        .block-location-tradition .castle-area .wrapper .img img {
          width: 100%; }
        @media screen and (max-width: 1170px) {
          .block-location-tradition .castle-area .wrapper .img {
            max-width: inherit; } }
        @media screen and (max-width: 750px) {
          .block-location-tradition .castle-area .wrapper .img {
            width: 100%;
            margin-bottom: 3rem; } }
  .block-location-tradition .column-box {
    background: rgba(38, 31, 21, 0.8);
    padding: 3rem;
    border: 3px solid #6D6455;
    margin-top: 5rem; }
    @media screen and (max-width: 750px) {
      .block-location-tradition .column-box {
        margin-top: 3rem;
        padding: 2rem; } }
    .block-location-tradition .column-box .wrapper {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      -webkit-justify-content: space-between;
      flex-wrap: wrap;
      flex-wrap: -webkit-wrap;
      align-items: flex-start;
      -webkit-align-items: flex-start; }
      @media screen and (max-width: 1170px) {
        .block-location-tradition .column-box .wrapper .text-unit {
          width: 70%; } }
      @media screen and (max-width: 750px) {
        .block-location-tradition .column-box .wrapper .text-unit {
          width: 100%;
          margin-bottom: 3rem; } }
      .block-location-tradition .column-box .wrapper .text-unit .title {
        font-size: 2.0rem;
        padding-bottom: 1rem;
        margin-bottom: 1rem;
        color: #BCB3A1;
        border-bottom: 1px solid #7B715F;
        line-height: 1.4; }
      .block-location-tradition .column-box .wrapper .text-unit .text {
        line-height: 2.3; }
        @media screen and (max-width: 1170px) {
          .block-location-tradition .column-box .wrapper .text-unit .text {
            font-size: 1.2rem; } }
        @media screen and (max-width: 750px) {
          .block-location-tradition .column-box .wrapper .text-unit .text {
            font-size: 1.6rem; } }
      .block-location-tradition .column-box .wrapper .text-unit .tanka {
        border: 1px solid #707070;
        padding: 1.5rem;
        font-size: 1.8rem;
        color: #BCB3A1;
        margin-top: 1.0rem; }
        @media screen and (max-width: 1170px) {
          .block-location-tradition .column-box .wrapper .text-unit .tanka {
            line-height: 1.6; } }
        .block-location-tradition .column-box .wrapper .text-unit .tanka p {
          font-size: 1.4rem;
          margin-top: .7rem;
          text-align: right; }
      @media screen and (max-width: 1170px) {
        .block-location-tradition .column-box .wrapper .img {
          width: 28%; } }
      @media screen and (max-width: 750px) {
        .block-location-tradition .column-box .wrapper .img {
          width: 100%; } }

/* ハザードマップ ****************************/
.block_hazard-map_flooded-area {
  background: #C9BC9C;
  padding: 12rem 0;
  color: #333; }
  @media screen and (max-width: 750px) {
    .block_hazard-map_flooded-area {
      padding: 5rem 0 2rem 0; } }
  .block_hazard-map_flooded-area img {
    width: 100%; }
  .block_hazard-map_flooded-area .caption {
    font-size: 1.2rem;
    text-align: right; }
  .block_hazard-map_flooded-area .title_block-title {
    font-size: 2.8rem;
    line-height: 1.6;
    margin-bottom: 2rem; }
    @media screen and (max-width: 750px) {
      .block_hazard-map_flooded-area .title_block-title {
        font-size: 2.4rem; } }
  .block_hazard-map_flooded-area .text_hazard-map {
    font-size: 1.8rem;
    line-height: 2.0;
    margin-bottom: 3rem;
    font-weight: 500; }
    @media screen and (max-width: 750px) {
      .block_hazard-map_flooded-area .text_hazard-map {
        font-size: 1.6rem; } }
  .block_hazard-map_flooded-area .caption-hanrei {
    margin-top: 1rem;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    flex-wrap: wrap;
    flex-wrap: -webkit-wrap; }
    .block_hazard-map_flooded-area .caption-hanrei .hanrei {
      width: min(51%, 513px);
      margin-top: 1.5rem; }
      @media screen and (max-width: 750px) {
        .block_hazard-map_flooded-area .caption-hanrei .hanrei {
          width: 100%;
          margin-top: 1rem; } }
    .block_hazard-map_flooded-area .caption-hanrei .caption {
      width: 47%; }
      @media screen and (max-width: 750px) {
        .block_hazard-map_flooded-area .caption-hanrei .caption {
          width: 100%;
          margin-top: 2rem; } }
  .block_hazard-map_flooded-area .wrap_flooded-area {
    margin: 7rem auto; }
    .block_hazard-map_flooded-area .wrap_flooded-area .caption {
      margin-top: 1rem; }

/* education & hospital ****************************/
.block-location-education,
.block-location-hospital {
  padding: 12rem 0 0 0; }
  @media screen and (max-width: 750px) {
    .block-location-education,
    .block-location-hospital {
      padding: 5rem 0 0 0; } }
  .block-location-education .wrapper,
  .block-location-hospital .wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    flex-wrap: wrap;
    flex-wrap: -webkit-wrap; }
    .block-location-education .wrapper .unit .info,
    .block-location-hospital .wrapper .unit .info {
      border-left: 2px solid #A89F8D;
      margin-top: 1.5rem; }
      .block-location-education .wrapper .unit .info .name,
      .block-location-education .wrapper .unit .info .distance,
      .block-location-hospital .wrapper .unit .info .name,
      .block-location-hospital .wrapper .unit .info .distance {
        margin-left: 1.5rem;
        font-size: 1.8rem; }
        .block-location-education .wrapper .unit .info .name .text-big,
        .block-location-education .wrapper .unit .info .distance .text-big,
        .block-location-hospital .wrapper .unit .info .name .text-big,
        .block-location-hospital .wrapper .unit .info .distance .text-big {
          font-family: "EB Garamond", serif;
          font-weight: 500;
          color: #BCB3A1;
          font-size: 3.4rem; }
        .block-location-education .wrapper .unit .info .name .text-small,
        .block-location-education .wrapper .unit .info .distance .text-small,
        .block-location-hospital .wrapper .unit .info .name .text-small,
        .block-location-hospital .wrapper .unit .info .distance .text-small {
          font-size: 1.2rem; }
    .block-location-education .wrapper .wrap-main,
    .block-location-hospital .wrapper .wrap-main {
      width: 570px; }
      @media screen and (max-width: 1170px) {
        .block-location-education .wrapper .wrap-main,
        .block-location-hospital .wrapper .wrap-main {
          width: 55%; } }
      @media screen and (max-width: 750px) {
        .block-location-education .wrapper .wrap-main,
        .block-location-hospital .wrapper .wrap-main {
          width: 100%;
          margin-bottom: 3rem; } }
    .block-location-education .wrapper .wrap-sub,
    .block-location-hospital .wrapper .wrap-sub {
      width: 425px; }
      @media screen and (max-width: 1170px) {
        .block-location-education .wrapper .wrap-sub,
        .block-location-hospital .wrapper .wrap-sub {
          width: 41%; } }
      @media screen and (max-width: 750px) {
        .block-location-education .wrapper .wrap-sub,
        .block-location-hospital .wrapper .wrap-sub {
          width: 100%; } }
      .block-location-education .wrapper .wrap-sub .unit:first-child,
      .block-location-hospital .wrapper .wrap-sub .unit:first-child {
        margin-bottom: 3rem; }
      @media screen and (max-width: 750px) {
        .block-location-education .wrapper .wrap-sub .unit,
        .block-location-hospital .wrapper .wrap-sub .unit {
          margin-bottom: 3rem; } }

/* others ****************************/
.block-location-others .title-cate-en {
  font-size: 3.6rem;
  margin-bottom: 2.5rem;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center; }
  @media screen and (max-width: 1170px) {
    .block-location-others .title-cate-en {
      font-size: 2.8rem; } }
  .block-location-others .title-cate-en:after {
    border-top: 1px solid;
    content: "";
    flex-grow: 1;
    margin-left: 1rem; }
.block-location-others .others-shopping,
.block-location-others .others-public,
.block-location-others .others-park {
  margin-top: 7rem; }
  @media screen and (max-width: 1170px) {
    .block-location-others .others-shopping,
    .block-location-others .others-public,
    .block-location-others .others-park {
      margin-top: 4.5rem; } }
  .block-location-others .others-shopping .wrapper,
  .block-location-others .others-public .wrapper,
  .block-location-others .others-park .wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    flex-wrap: wrap;
    flex-wrap: -webkit-wrap; }
    .block-location-others .others-shopping .wrapper::after,
    .block-location-others .others-public .wrapper::after,
    .block-location-others .others-park .wrapper::after {
      content: "";
      display: block;
      width: 31.5%;
      height: 0;
      visibility: hidden; }
    @media screen and (max-width: 750px) {
      .block-location-others .others-shopping .wrapper::after,
      .block-location-others .others-public .wrapper::after,
      .block-location-others .others-park .wrapper::after {
        width: 47%; } }
    .block-location-others .others-shopping .wrapper .unit,
    .block-location-others .others-public .wrapper .unit,
    .block-location-others .others-park .wrapper .unit {
      margin-bottom: 3.5rem; }
      @media screen and (max-width: 1170px) {
        .block-location-others .others-shopping .wrapper .unit,
        .block-location-others .others-public .wrapper .unit,
        .block-location-others .others-park .wrapper .unit {
          width: 31.5%; } }
      @media screen and (max-width: 750px) {
        .block-location-others .others-shopping .wrapper .unit,
        .block-location-others .others-public .wrapper .unit,
        .block-location-others .others-park .wrapper .unit {
          width: 47%; } }
      .block-location-others .others-shopping .wrapper .unit .info,
      .block-location-others .others-public .wrapper .unit .info,
      .block-location-others .others-park .wrapper .unit .info {
        font-size: 1.8rem;
        margin-top: 1.5rem; }
        @media screen and (max-width: 750px) {
          .block-location-others .others-shopping .wrapper .unit .info,
          .block-location-others .others-public .wrapper .unit .info,
          .block-location-others .others-park .wrapper .unit .info {
            font-size: 1.6rem;
            line-height: 1.3; } }
        .block-location-others .others-shopping .wrapper .unit .info .distance,
        .block-location-others .others-public .wrapper .unit .info .distance,
        .block-location-others .others-park .wrapper .unit .info .distance {
          margin-top: .5rem; }
          @media screen and (max-width: 750px) {
            .block-location-others .others-shopping .wrapper .unit .info .distance,
            .block-location-others .others-public .wrapper .unit .info .distance,
            .block-location-others .others-park .wrapper .unit .info .distance {
              margin-top: .6rem; } }
          .block-location-others .others-shopping .wrapper .unit .info .distance .text-small,
          .block-location-others .others-public .wrapper .unit .info .distance .text-small,
          .block-location-others .others-park .wrapper .unit .info .distance .text-small {
            font-size: 1.2rem; }

/* life-info ****************************/
.block-location-life {
  padding: 12rem 0; }
  @media screen and (max-width: 750px) {
    .block-location-life {
      padding: 7rem 0; } }
  @media screen and (max-width: 750px) {
    .block-location-life h3 {
      text-align: center; } }
  .block-location-life .list {
    color: #FFF;
    font-size: 1.4rem;
    margin-top: 6rem; }
    @media screen and (max-width: 1170px) {
      .block-location-life .list {
        font-size: 1.3rem;
        margin-top: 4rem; } }
    .block-location-life .list .list-title {
      color: #A89F8D;
      font-size: 2.0rem;
      padding-bottom: 1rem;
      margin-bottom: 2rem;
      border-bottom: 1px solid #A89F8D; }
    .block-location-life .list .wrapper {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      flex-wrap: wrap;
      flex-wrap: -webkit-wrap;
      justify-content: space-between;
      -webkit-justify-content: space-between; }
      .block-location-life .list .wrapper ul {
        width: 48%;
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        flex-wrap: -webkit-wrap; }
        @media screen and (max-width: 970px) {
          .block-location-life .list .wrapper ul {
            width: 100%; } }
        .block-location-life .list .wrapper ul li {
          padding-bottom: 1.5rem;
          margin-bottom: 1.5rem; }
          .block-location-life .list .wrapper ul li.name {
            width: 60%;
            border-bottom: 1px solid #646464; }
          .block-location-life .list .wrapper ul li.time {
            width: 40%;
            border-bottom: 1px solid #646464;
            text-align: right; }

/* -------------------------/ 

access

------------------------- */
.block-access {
  background: url("../location/images/bg-access.jpg") no-repeat center;
  background-size: cover;
  padding: 12rem 0 0 0; }
  @media screen and (max-width: 750px) {
    .block-access {
      padding: 7rem 0 0 0; } }
  .block-access .block-access-bus .wrapper,
  .block-access .block-access-train .wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    flex-wrap: -webkit-wrap;
    justify-content: space-between;
    -webkit-justify-content: space-between; }
  .block-access .block-access-bus .text {
    background: rgba(0, 0, 0, 0.9);
    padding: 2rem 0;
    text-align: center;
    margin-bottom: 3rem; }
    @media screen and (max-width: 750px) {
      .block-access .block-access-bus .text {
        padding: 1rem; } }
    .block-access .block-access-bus .text p {
      display: inline-block;
      max-width: 754px;
      width: 90%;
      margin: 0 auto; }
      @media screen and (max-width: 750px) {
        .block-access .block-access-bus .text p {
          width: 80%;
          padding-top: 1.5rem; } }
  @media screen and (max-width: 1170px) {
    .block-access .block-access-bus .unit {
      width: 47.5%; } }
  @media screen and (max-width: 750px) {
    .block-access .block-access-bus .unit {
      width: 100%;
      margin-bottom: 4rem; } }
  .block-access .block-access-train {
    padding-top: 7rem; }
    @media screen and (max-width: 1170px) {
      .block-access .block-access-train .photo-unit {
        width: 45%; } }
    @media screen and (max-width: 750px) {
      .block-access .block-access-train .photo-unit {
        width: 100%; } }
    .block-access .block-access-train .photo-unit .unit {
      margin-bottom: 3rem; }
      .block-access .block-access-train .photo-unit .unit p {
        font-size: 2.0rem;
        margin-top: 1rem; }
    @media screen and (max-width: 1170px) {
      .block-access .block-access-train .rosenzu {
        width: 50%; } }
    @media screen and (max-width: 750px) {
      .block-access .block-access-train .rosenzu {
        width: 100%; } }
