@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400..800&family=Libre+Baskerville:wght@400;700&family=Marcellus+SC&family=Shippori+Mincho:wght@400;500;600&display=swap");
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

li {
  list-style: none;
}

input[type=submit], input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: border-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration, input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]:focus, input[type=button]:focus {
  outline-offset: -2px;
}

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

input[type=submit]:focus, input[type=password]:focus, input[type=button]:focus {
  outline: 0;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input, button, select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox], input[type=radio] {
  display: none;
}

input[type=submit], input[type=button], label, button, select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

html {
  font-size: 10px;
}

@media screen and (max-width: 1300px) {
  html {
    font-size: 0.7692307692vw;
  }
}
@media screen and (max-width: 750px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media screen and (min-width: 751px) {
  ._sp {
    display: none !important;
  }
}
@media screen and (max-width: 750px) {
  ._pc {
    display: none !important;
  }
}
* {
  -webkit-transition: all 0s ease;
  transition: all 0s ease;
  margin: 0;
  padding: 0;
}

html {
  overflow: auto;
}

body {
  -webkit-text-size-adjust: 100%;
}

main {
  display: block;
  position: relative;
  overflow: hidden;
  padding: 10rem 0 0;
}

@media screen and (max-width: 750px) {
  main {
    width: 100%;
    padding: 70px 0 0;
  }
}
section {
  position: relative;
  overflow: hidden;
}

img,
svg,
video {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

body {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  color: #000000;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
body a,
body button {
  color: inherit;
}

@media screen and (max-width: 750px) {
  body {
    font-size: 2.6rem;
  }
}
.f-gara {
  font-family: "EB Garamond", serif;
}

.f-bask {
  font-family: "Libre Baskerville", serif;
}

header.header {
  -webkit-transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  width: 100%;
  height: 10rem;
  background-color: rgba(255, 255, 255, 0.8);
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 9999;
}
header.header .header-wrap {
  max-width: 1300px;
  padding: 1rem 2rem 0;
  margin: 0 auto;
}
header.header .header-wrap .top-area {
  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;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
header.header .header-wrap .top-area .logo-box {
  width: 17.5rem;
  display: block;
}
header.header .header-wrap .top-area .btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 0.5rem;
}
header.header .header-wrap .top-area .btn-box .flex-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
header.header .header-wrap .top-area .btn-box .btn {
  -webkit-transition: all 500ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  transition: all 500ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
}
header.header .header-wrap .top-area .btn-box .txt {
  -webkit-transition: all 500ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  transition: all 500ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  font-size: 1.2rem;
  text-align: center;
}
header.header .header-wrap .top-area .btn-box .flex-inner-1 {
  gap: 0 2rem;
  margin: 0 2rem 0 0;
}
header.header .header-wrap .top-area .btn-box .flex-inner-1 .txt:hover {
  opacity: 0.7;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 {
  gap: 0 1rem;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 10rem;
  height: 3.5rem;
  background: #928e65;
  border: 1px solid #928e65;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 .btn.reserve {
  background: #6d000d;
  border: 1px solid #6d000d;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 .txt {
  color: #fff;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 .btn:hover {
  background: #fff;
}
header.header .header-wrap .top-area .btn-box .flex-inner-2 .btn:hover .txt {
  color: #9d8c7b;
}

@media screen and (max-width: 750px) {
  header.header {
    height: 70px;
  }
  header.header .header-wrap {
    max-width: none;
    padding: 15px;
  }
  header.header .header-wrap .top-area {
    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;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  header.header .header-wrap .top-area .logo-box {
    width: auto;
    height: 40px;
  }
  header.header .header-wrap .top-area .logo-box .img {
    width: auto;
    height: 100%;
  }
  header.header .header-wrap .top-area .logo-box img {
    width: auto;
    height: 100%;
  }
}
@media screen and (max-width: 750px) {
  .float-nav {
    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;
    width: 100%;
    height: 50px;
    background: #928e65;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
  }
  .float-nav .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 33.3333333333%;
    height: 100%;
    text-align: center;
    position: relative;
  }
  .float-nav .list::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background: #fff;
  }
  .float-nav .list:first-child::before {
    display: none;
  }
  .float-nav .list span {
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.4;
    color: #fff;
    margin: 0 auto;
  }
  .float-nav .list.map {
    background: #595757;
  }
  .float-nav .list.tel {
    background: #595757;
  }
  .float-nav .list.reserve {
    background: #6d000d;
  }
  .float-nav .icon-fukidashi {
    width: 14.5rem;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    margin: auto;
  }
}
footer.footer {
  background: #fff;
  position: relative;
}
footer.footer .f_note {
  padding: 5rem 0 0;
}
footer.footer .bnr-wrap {
  padding: 6.6rem 0 6rem;
}
footer.footer .bnr-wrap .bnr-box .bnr {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  display: block;
}
footer.footer .bnr-wrap .bnr-box .bnr:hover {
  opacity: 0.7;
}
footer.footer .bnr-wrap .bnr-box .swiper-slide {
  width: 30rem;
  margin-right: 3rem;
}
footer.footer .bnr-wrap .bnr-box .swiper-footer-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 1.4rem 0 0;
}
footer.footer .bnr-wrap .bnr-box .swiper-pagination-bullet {
  margin: 0 0.5rem;
}
footer.footer .bnr-wrap .bnr-box .swiper-pagination-bullet-active {
  background: #201e1e;
}
footer.footer .bnr-wrap .btn_box {
  margin: 6rem 0 0;
}
footer.footer .bnr-wrap .btn_box .btn {
  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;
  margin: 0 auto;
  width: 100%;
  height: auto;
}
footer.footer .bnr-wrap .btn_box .btn a {
  width: 48%;
  margin: 0;
  height: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-inline: auto;
}
footer.footer .bnr-wrap .btn_box .btn a span {
  margin: auto;
}
@media screen and (max-width: 750px) {
  footer.footer .bnr-wrap .btn_box .btn a {
    width: 80%;
    margin: 0 auto 3rem;
  }
}
footer.footer .link-wrap .nav-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 3.4rem;
  height: 3rem;
  background: #595757;
}
footer.footer .link-wrap .nav-ul li {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  height: 100%;
}
footer.footer .link-wrap .nav-ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
footer.footer .link-wrap .nav-ul li span.ttl {
  font-size: 1.2rem;
  letter-spacing: 0;
  color: #fff;
  position: relative;
}
footer.footer .link-wrap .nav-ul li:hover {
  opacity: 0.6;
}
footer.footer .link-wrap .nav-ul li.dis {
  opacity: 0.5;
  pointer-events: none;
}
footer.footer .cbtn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #fff;
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_wrap {
    -ms-grid-columns: 1fr [2];
    grid-template-columns: repeat(2, 1fr);
  }
}
footer.footer .cbtn_item {
  background: url("../img/common/cbtn_top.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_top.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
  background-blend-mode: multiply;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #fff;
  aspect-ratio: 445/275;
  padding-top: 2%;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  width: 25%;
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_item {
    width: 33.33%;
    aspect-ratio: 445/375;
  }
}
footer.footer .cbtn_item:nth-child(n+5) {
  width: 20%;
  aspect-ratio: 325/250;
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_item:nth-child(n+5) {
    width: 33.33%;
    aspect-ratio: 445/375;
  }
}
footer.footer .cbtn_item:hover {
  opacity: 0.7;
}
footer.footer .cbtn_item .lead {
  width: 100%;
  font-size: 3.5rem;
  line-height: 1.4;
  text-align: center;
  -webkit-filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.4));
  filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.4));
  font-family: "EB Garamond", serif;
  position: relative;
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_item .lead {
    font-size: 3.2rem;
  }
}
footer.footer .cbtn_item .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  font-family: "EB Garamond", serif;
  font-size: 1.4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 1rem;
  line-height: 0.6;
  margin-top: 4.5rem;
  background-color: rgba(146, 142, 101, 0.6);
  padding: 1rem 2rem;
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_item .btn {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 750px) {
  footer.footer .cbtn_item .btn {
    font-size: 2rem;
  }
}
footer.footer .cbtn_item .btn .arrow_icon {
  -webkit-transform: scaleX(0.4);
          transform: scaleX(0.4);
}
footer.footer .cbtn_item.concept {
  background: url("../img/common/cbtn_concept.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_concept.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.location {
  background: url("../img/common/cbtn_location.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_location.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.access {
  background: url("../img/common/cbtn_access.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_access.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.design {
  background: url("../img/common/cbtn_design.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_design.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.plan {
  background: url("../img/common/cbtn_plan.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_plan.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.quality {
  background: url("../img/common/cbtn_quality.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_quality.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.brand {
  background: url("../img/common/cbtn_brand.jpg") center/cover no-repeat, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: url("../img/common/cbtn_brand.jpg") center/cover no-repeat, linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
footer.footer .cbtn_item.dis {
  pointer-events: none;
}
footer.footer .cbtn_item.dis .btn {
  background-color: transparent;
}
footer.footer .cbtn_item.dis .lead .lead_inner {
  opacity: 0.2;
}
footer.footer .contact-wrap .tel-box {
  padding: 4.5rem 0 3rem;
}
footer.footer .contact-wrap .tel-box .tel-inner {
  width: 56rem;
  margin: 0 auto;
}
footer.footer .contact-wrap .tel-box .p1 {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.4;
  text-align: center;
}
footer.footer .contact-wrap .tel-box .tel-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 1.5rem;
  margin: 1.5rem 0 0;
}
footer.footer .contact-wrap .tel-box .tel {
  width: 28rem;
  pointer-events: none;
}
footer.footer .contact-wrap .tel-box .p2 {
  font-size: 1.1rem;
  letter-spacing: 0.02em;
  line-height: 1.4;
}
footer.footer .contact-wrap .tel-box .p3 {
  font-size: 1.2rem;
  line-height: 1.4;
  letter-spacing: 0;
  margin: 1rem 0 0;
}
footer.footer .contact-wrap .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 4.5rem;
  padding: 3rem 0 0;
}
footer.footer .contact-wrap .flex-box p {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.2;
  margin: 0 0 0.5rem;
}
footer.footer .contact-wrap .flex-box a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 6.2rem;
}
footer.footer .contact-wrap .escon-box p {
  margin-bottom: 0;
}
footer.footer .contact-wrap .escon-box img {
  width: 15.4rem;
}
footer.footer .contact-wrap .li-vest-box p {
  margin-bottom: 0;
}
footer.footer .contact-wrap .li-vest-box img {
  width: 21.3rem;
}
footer.footer .contact-wrap .a-class-box p {
  margin-bottom: 0;
}
footer.footer .contact-wrap .a-class-box img {
  width: 22rem;
}
footer.footer .com-cr-wrap {
  color: #000;
  text-align: center;
  padding: 0 2rem;
  padding: 4.5rem 0 1.5rem;
}
footer.footer .com-cr-wrap .disclaimer {
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
footer.footer .com-cr-wrap .copy {
  display: block;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.05em;
  margin: 1rem 0 0;
}

@media (751px <= width < 1181px) {
  footer.footer .link-wrap .nav-ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0;
    padding: 0 2rem;
  }
  footer.footer .link-wrap .nav-ul li span.ttl {
    letter-spacing: 0;
  }
}
@media screen and (max-width: 750px) {
  footer.footer .bnr-wrap {
    padding: 9rem 0;
  }
  footer.footer .bnr-wrap .bnr-box .bnr:hover {
    opacity: 1;
  }
  footer.footer .bnr-wrap .bnr-box .swiper-slide {
    width: 100%;
    margin-right: 0;
  }
  footer.footer .bnr-wrap .bnr-box .swiper-footer-pagination {
    margin: 2.6rem 0 0;
  }
  footer.footer .bnr-wrap .bnr-box .swiper-pagination-bullet {
    margin: 0 1rem;
    width: 1.8rem;
    height: 1.8rem;
  }
  footer.footer .bnr-wrap .btn_box {
    margin: 8rem 0 0;
  }
  footer.footer .link-wrap .nav-ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    height: 47rem;
    padding: 6rem 5rem;
  }
  footer.footer .link-wrap .nav-ul li {
    width: 32rem;
    height: 7rem;
  }
  footer.footer .link-wrap .nav-ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
  }
  footer.footer .link-wrap .nav-ul li span.ttl {
    font-size: 2.6rem;
  }
  footer.footer .link-wrap .nav-ul li:hover {
    opacity: 1;
  }
  footer.footer .contact-wrap .tel-box {
    padding: 9rem 0 6rem;
  }
  footer.footer .contact-wrap .tel-box .tel-inner {
    width: 100%;
  }
  footer.footer .contact-wrap .tel-box .p1 {
    font-size: 2.2rem;
    letter-spacing: -0.08em;
    text-align: center;
  }
  footer.footer .contact-wrap .tel-box .tel-flex {
    gap: 1.5rem 0;
  }
  footer.footer .contact-wrap .tel-box .tel {
    width: 59rem;
    pointer-events: auto;
  }
  footer.footer .contact-wrap .tel-box .p2 {
    font-size: 2.2rem;
    text-align: center;
  }
  footer.footer .contact-wrap .tel-box .p3 {
    font-size: 2.2rem;
    margin: 2rem 0 0;
  }
  footer.footer .contact-wrap .flex-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 9rem 0;
    padding: 6rem 0 0;
  }
  footer.footer .contact-wrap .flex-box p {
    font-size: 2rem;
    margin-bottom: 1.5rem;
  }
  footer.footer .contact-wrap .flex-box a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: auto;
  }
  footer.footer .contact-wrap .escon-box img {
    width: 30.8rem;
  }
  footer.footer .contact-wrap .li-vest-box img {
    width: 42.6rem;
  }
  footer.footer .contact-wrap .a-class-box img {
    width: 44rem;
  }
  footer.footer .com-cr-wrap {
    padding: 9rem 0 18rem;
  }
  footer.footer .com-cr-wrap .disclaimer {
    letter-spacing: 0.05em;
  }
  footer.footer .com-cr-wrap .copy {
    letter-spacing: 0.05em;
    margin: 1rem 0 0;
  }
}
nav.nav-h {
  -webkit-transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
  opacity: 1;
}
nav.nav-h .nav-ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1.5rem;
  height: 4.5rem;
}
nav.nav-h .nav-ul li {
  position: relative;
}
nav.nav-h .nav-ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 2.8rem;
  padding: 0 1rem;
  position: relative;
}
nav.nav-h .nav-ul li a::before {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  content: "";
  width: 0%;
  height: 1px;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 0;
}
nav.nav-h .nav-ul li .ttl {
  font-size: 1.2rem;
  letter-spacing: 0;
}
nav.nav-h .nav-ul li.new::before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  content: "NEW";
  width: 4rem;
  height: 1.6rem;
  font-size: 1rem;
  letter-spacing: 0.1em;
  color: #fff;
  background: rgb(168, 6, 6);
  position: absolute;
  top: -1.1rem;
  left: 0;
  right: 0;
  margin: auto;
}
nav.nav-h .nav-ul li:hover a::before {
  width: 100%;
}
nav.nav-h .nav-ul li.dis {
  opacity: 0.5;
  pointer-events: none;
}

#pageTop nav.nav-h .nav-ul li.top a::before,
#pageStory nav.nav-h .nav-ul li.story a::before,
#pageLandscape nav.nav-h .nav-ul li.landscape a::before,
#pageDesign nav.nav-h .nav-ul li.design a::before,
#pageLocation nav.nav-h .nav-ul li.location a::before,
#pageAccess nav.nav-h .nav-ul li.access a::before,
#pagePlan nav.nav-h .nav-ul li.plan a::before,
#pageType nav.nav-h .nav-ul li.plan a::before,
#pageModelroom nav.nav-h .nav-ul li.modelroom a::before,
#pageConceptroom nav.nav-h .nav-ul li.conceptroom a::before,
#pageEquipment nav.nav-h .nav-ul li.equipment a::before,
#pageZeh nav.nav-h .nav-ul li.zeh a::before,
#pageLpInterview nav.nav-h .nav-ul li.interview a::before,
#pageDevelopment nav.nav-h .nav-ul li.development a::before,
#pageBrand nav.nav-h .nav-ul li.brand a::before,
#pageOutline nav.nav-h .nav-ul li.outline a::before,
#pageMap nav.nav-h .nav-ul li.map a::before,
#pageConcept nav.nav-h .nav-ul li.concept a::before {
  width: 100%;
}

@media (751px <= width < 1240px) {
  nav.nav-h .nav-ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0;
  }
  nav.nav-h .nav-ul li a {
    padding: 0 0.8rem;
  }
  nav.nav-h .nav-ul li .ttl {
    letter-spacing: -0.06em;
  }
}
@media screen and (max-width: 750px) {
  nav.nav-h {
    -webkit-transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
    transition: all 1000ms cubic-bezier(0.545, 0.08, 0.52, 0.975);
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: rgba(155, 141, 125, 0.95);
    padding: 13rem 0 6rem 0;
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: 0;
    opacity: 0;
    z-index: 9998;
    pointer-events: none;
  }
  nav.nav-h .nav-ul li {
    width: 48%;
    height: 7.2rem;
  }
  nav.nav-h .nav-ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0;
  }
  nav.nav-h .nav-ul li a::before {
    background: #fff;
  }
  nav.nav-h .nav-ul li .ttl {
    width: 100%;
    font-size: 2.8rem;
    text-align: center;
    color: #fff;
  }
  nav.nav-h .nav-ul li.new::before {
    width: 8rem;
    height: 4rem;
    font-size: 2.2rem;
    top: 50%;
    left: 2rem;
    right: auto;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  nav.nav-h .nav-ul li:hover a::before {
    width: 0;
  }
  nav.nav-h.active {
    right: 0;
    opacity: 1;
    pointer-events: auto;
  }
}
@media screen and (max-width: 750px) {
  button.nav-btn {
    width: 35px;
    height: 26px;
    position: relative;
    top: 0;
    right: 0;
    z-index: 9999;
  }
  button.nav-btn span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
  }
  button.nav-btn.active span {
    background-color: #fff;
  }
  button.nav-btn,
  button.nav-btn span {
    display: inline-block;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  button.nav-btn span:nth-of-type(1) {
    top: 0;
  }
  button.nav-btn span:nth-of-type(2) {
    top: 12px;
  }
  button.nav-btn span:nth-of-type(3) {
    bottom: 0;
  }
  button.nav-btn span:nth-of-type(1) {
    -webkit-animation: btn07-bar01 0.75s forwards;
            animation: btn07-bar01 0.75s forwards;
  }
  @-webkit-keyframes btn07-bar01 {
    0% {
      -webkit-transform: translateY(12px) rotate(45deg);
              transform: translateY(12px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(12px) rotate(0);
              transform: translateY(12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @keyframes btn07-bar01 {
    0% {
      -webkit-transform: translateY(12px) rotate(45deg);
              transform: translateY(12px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(12px) rotate(0);
              transform: translateY(12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  button.nav-btn span:nth-of-type(2) {
    -webkit-transition: all 0.25s 0.25s;
    transition: all 0.25s 0.25s;
    opacity: 1;
  }
  button.nav-btn span:nth-of-type(3) {
    -webkit-animation: btn07-bar03 0.75s forwards;
            animation: btn07-bar03 0.75s forwards;
  }
  @-webkit-keyframes btn07-bar03 {
    0% {
      -webkit-transform: translateY(-12px) rotate(-45deg);
              transform: translateY(-12px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-12px) rotate(0);
              transform: translateY(-12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  @keyframes btn07-bar03 {
    0% {
      -webkit-transform: translateY(-12px) rotate(-45deg);
              transform: translateY(-12px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-12px) rotate(0);
              transform: translateY(-12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
  }
  button.nav-btn.active span:nth-of-type(1) {
    -webkit-animation: active-btn07-bar01 0.75s forwards;
            animation: active-btn07-bar01 0.75s forwards;
  }
  @-webkit-keyframes active-btn07-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(12px) rotate(0);
              transform: translateY(12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(12px) rotate(45deg);
              transform: translateY(12px) rotate(45deg);
    }
  }
  @keyframes active-btn07-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(12px) rotate(0);
              transform: translateY(12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(12px) rotate(45deg);
              transform: translateY(12px) rotate(45deg);
    }
  }
  button.nav-btn.active span:nth-of-type(2) {
    opacity: 0;
  }
  button.nav-btn.active span:nth-of-type(3) {
    -webkit-animation: active-btn07-bar03 0.75s forwards;
            animation: active-btn07-bar03 0.75s forwards;
  }
  @-webkit-keyframes active-btn07-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-12px) rotate(0);
              transform: translateY(-12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-12px) rotate(-45deg);
              transform: translateY(-12px) rotate(-45deg);
    }
  }
  @keyframes active-btn07-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
              transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-12px) rotate(0);
              transform: translateY(-12px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-12px) rotate(-45deg);
              transform: translateY(-12px) rotate(-45deg);
    }
  }
}
.com_btn {
  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;
  max-width: 670px;
  width: 100%;
  margin: auto;
}
.com_btn a {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  display: block;
  width: 48%;
  background: #928e65;
  position: relative;
  text-align: center;
  padding: 2rem 0;
}
.com_btn a.reserve {
  background: #6d000d;
}
.com_btn .btn_txt {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  font-size: 2.2rem;
  letter-spacing: 0.16em;
  color: #fff;
  text-align: center;
}
.com_btn .arrow {
  color: #fff;
  position: absolute;
  top: 50%;
  right: 2rem;
  translate: 0 -50%;
  scale: 0.5 1;
  font-size: 2rem;
}
.com_btn a:hover {
  background: #39332d;
}

.com_btn.flash {
  overflow: hidden;
}
.com_btn.flash a::before {
  content: "";
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 2;
  display: block;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.3)));
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  -webkit-transform: skewX(-30deg);
          transform: skewX(-30deg);
  -webkit-animation: shine 4s infinite;
          animation: shine 4s infinite;
}
@-webkit-keyframes shine {
  0% {
    left: -75%;
  }
  40% {
    left: 150%;
  }
  100% {
    left: 150%;
  }
}
@keyframes shine {
  0% {
    left: -75%;
  }
  40% {
    left: 150%;
  }
  100% {
    left: 150%;
  }
}

@media screen and (max-width: 750px) {
  .com_btn {
    width: 50rem;
    height: 10rem;
  }
  .com_btn .btn_txt {
    font-size: 3.2rem;
  }
  .com_btn .arrow {
    width: 1.6rem;
    right: 2rem;
  }
  .com_btn a:hover {
    background: #9d8c7b;
  }
}
.com-cap {
  font-size: 1rem;
  letter-spacing: 0;
  color: #fff;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5), -1px 1px 3px rgba(0, 0, 0, 0.5), 1px -1px 3px rgba(0, 0, 0, 0.5), -1px -1px 3px rgba(0, 0, 0, 0.5);
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
}

.com-cap.left {
  right: auto;
  left: 0.5rem;
}

.com-cap.clr-w {
  color: #fff;
  text-shadow: none;
}

.com-cap.clr-b {
  color: #333333;
  text-shadow: none;
}

.com-cap.w100 {
  right: 2.5rem;
}

.com-cap.left.w100 {
  left: 2.5rem;
}

@media screen and (max-width: 750px) {
  .com-cap {
    font-size: 2rem;
    bottom: 1rem;
    right: 1rem;
  }
  .com-cap.left {
    left: 1rem;
  }
  .com-cap.w100 {
    right: 1rem;
  }
  .com-cap.left.w100 {
    left: 1rem;
  }
}
.com-note {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.2;
}
.com-note.right {
  text-align: right;
}

@media screen and (max-width: 750px) {
  .com-note {
    font-size: 2rem;
  }
}
.com-ttl {
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  text-align: center;
  padding: 0 0 4rem;
  position: relative;
}
.com-ttl::before {
  content: "";
  width: 6.7rem;
  height: 1px;
  background: #231815;
  opacity: 0.7;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.com-lead {
  font-size: 2.3rem;
  letter-spacing: 0.1em;
  line-height: 1.8;
  text-align: center;
  margin: 3rem 0 0;
}

.com-txt {
  font-size: 1.9rem;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
.com-txt sup {
  font-size: 1.2rem;
  -webkit-transform: translateY(-0.5rem);
          transform: translateY(-0.5rem);
  display: inline-block;
}

@media screen and (max-width: 750px) {
  .com-ttl {
    font-size: 3.8rem;
    padding: 0 0 5rem;
  }
  .com-ttl::before {
    width: 10rem;
  }
  .com-lead {
    font-size: 3.2rem;
    margin: 4rem 0 0;
  }
  .com-txt {
    font-size: 3rem;
  }
}
.com-sup {
  font-size: 1rem;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}

@media screen and (max-width: 750px) {
  .com-sup {
    font-size: 2rem;
  }
}
.com-content {
  width: 100rem;
  padding: 0 2rem;
  margin: 0 auto;
}

@media screen and (max-width: 750px) {
  .com-content {
    width: 75rem;
    padding: 0 4rem;
  }
}
.com-loadwrap {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999999;
  background: #fff;
  opacity: 1;
}
.com-loadwrap.no_active {
  -webkit-animation-name: loadAnime;
          animation-name: loadAnime;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
}
@-webkit-keyframes loadAnime {
  0% {
    z-index: 99999;
    opacity: 1;
  }
  90% {
    z-index: 99999;
  }
  100% {
    z-index: -1;
    opacity: 0;
  }
}
@keyframes loadAnime {
  0% {
    z-index: 99999;
    opacity: 1;
  }
  90% {
    z-index: 99999;
  }
  100% {
    z-index: -1;
    opacity: 0;
  }
}

.com_intro_wrap {
  padding: 9rem 0 11rem;
}

.m_img .img_box,
.com_main_wrap .img_box {
  width: 100%;
  height: 72rem;
  position: relative;
  overflow: hidden;
}
.m_img .img_box .img,
.com_main_wrap .img_box .img {
  width: 100%;
  height: calc(100% + 200px);
  position: relative;
}
.m_img .img_box .img_bg::after,
.com_main_wrap .img_box .img_bg::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
  mix-blend-mode: multiply;
  content: "";
  z-index: 2;
}
.m_img .img_box .img_bg video,
.com_main_wrap .img_box .img_bg video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  pointer-events: none;
}
.m_img .img_box img,
.com_main_wrap .img_box img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  -webkit-transition: all 2s;
  transition: all 2s;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  z-index: -1;
}
.m_img .com-ttl,
.com_main_wrap .com-ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #fff;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 4.5rem;
  z-index: 3;
}
.m_img .com-ttl::before,
.com_main_wrap .com-ttl::before {
  display: none;
}
.m_img .com-ttl.concept,
.com_main_wrap .com-ttl.concept {
  width: 80%;
  max-width: 600px;
}
.m_img.act .img_box img,
.com_main_wrap.act .img_box img {
  -webkit-filter: blur(0px);
          filter: blur(0px);
  -webkit-transform: scale(1);
          transform: scale(1);
}

#pageMap .com_intro_wrap .copy_box .ttl,
#pageOutline .com_intro_wrap .copy_box .ttl {
  padding: 0;
}
#pageMap .com_intro_wrap .copy_box .ttl::before,
#pageOutline .com_intro_wrap .copy_box .ttl::before {
  display: none;
}

@media screen and (max-width: 750px) {
  .com_main_wrap .img_box {
    height: 80rem;
  }
  .com_main_wrap .img_box .img {
    height: calc(100% + 80px);
  }
  #pageAccess .com_main_wrap .img_box img {
    -o-object-position: -60vw center;
       object-position: -60vw center;
  }
}
.com_bg_wrap {
  width: 100vw;
  height: 100vh;
  opacity: 0.7;
  position: fixed;
  top: 0;
  left: 0;
}
.com_bg_wrap .bg_box {
  width: 100%;
  height: 100%;
}
.com_bg_wrap .bg_box .bg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  margin: auto;
  width: 110%;
  height: 110%;
}
.com_bg_wrap .bg_box img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  -webkit-animation: 2s ease-in-out infinite alternate bgAnime;
          animation: 2s ease-in-out infinite alternate bgAnime;
}
@-webkit-keyframes bgAnime {
  0% {
    -webkit-transform: scale(1) translateY(-30px) translateX(-25px);
            transform: scale(1) translateY(-30px) translateX(-25px);
    -webkit-filter: brightness(1);
            filter: brightness(1);
  }
  50% {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    -webkit-filter: brightness(1.05);
            filter: brightness(1.05);
  }
  100% {
    -webkit-transform: scale(1) translateY(30px) translateX(25px);
            transform: scale(1) translateY(30px) translateX(25px);
    -webkit-filter: brightness(1);
            filter: brightness(1);
  }
}
@keyframes bgAnime {
  0% {
    -webkit-transform: scale(1) translateY(-30px) translateX(-25px);
            transform: scale(1) translateY(-30px) translateX(-25px);
    -webkit-filter: brightness(1);
            filter: brightness(1);
  }
  50% {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    -webkit-filter: brightness(1.05);
            filter: brightness(1.05);
  }
  100% {
    -webkit-transform: scale(1) translateY(30px) translateX(25px);
            transform: scale(1) translateY(30px) translateX(25px);
    -webkit-filter: brightness(1);
            filter: brightness(1);
  }
}

@media screen and (max-width: 750px) {
  .com_bg_wrap .bg_box .bg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    margin: auto;
    width: 130%;
    height: 130%;
  }
}
.c-backtop {
  display: none;
  position: fixed;
  bottom: 2.5rem;
  right: 20px;
  z-index: 9999;
  width: 60px;
  cursor: pointer;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
@media screen and (max-width: 750px) {
  .c-backtop {
    width: 50px;
    right: 5px;
    bottom: 11rem;
  }
}
.c-backtop:hover {
  opacity: 0.7;
}

.topics_wrap {
  background: #fff;
  padding: 6rem 0 0;
}
.topics_wrap .topics_area {
  width: 79rem;
  font-weight: 500;
  display: block;
  margin: 0 auto;
}
.topics_wrap .topics_area .ttl_box {
  text-align: center;
  position: relative;
}
.topics_wrap .topics_area .ttl_box::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #77131b;
  position: absolute;
  top: 50%;
  left: 0;
}
.topics_wrap .topics_area .ttl_box .ttl_inner {
  line-height: 1.6;
  background: #fff;
  display: inline-block;
  padding: 0 1rem;
  position: relative;
}
.topics_wrap .topics_area .ttl_box .ttl {
  font-size: 2.6rem;
  color: #77131b;
}
.topics_wrap .topics_area .ttl_box .sub_ttl {
  font-size: 1.6rem;
}
.topics_wrap .topics_area .topics_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 1.6rem 0 0;
}
.topics_wrap .topics_area .topics_box .img {
  width: 40rem;
}
.topics_wrap .topics_area .topics_box .img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
}
.topics_wrap .topics_area .topics_box .copy {
  width: calc(100% - 40rem);
  background: #efeddf;
  text-align: center;
  padding: 2rem 2rem;
}
.topics_wrap .topics_area .topics_box .p1 {
  font-size: 2rem;
  line-height: 1.5;
  color: #77131b;
}
.topics_wrap .topics_area .topics_box .inner_copy {
  background: #fff;
  border-radius: 0.6rem;
  padding: 0.5rem 0.5rem 1.5rem;
  margin: 1.5rem 0 0;
}
.topics_wrap .topics_area .topics_box .p2 {
  font-size: 1.2rem;
  color: #fff;
  background: #847c4f;
  border-radius: 0.6rem 0.6rem 0 0;
  padding: 0.7rem 0;
}
.topics_wrap .topics_area .topics_box .p3 {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  line-height: 2;
  margin: 1.4rem 0 0;
}
.topics_wrap .topics_area .topics_box .line {
  position: relative;
  z-index: 1;
}
.topics_wrap .topics_area .topics_box .line::before {
  content: "";
  width: 100%;
  height: 0.5rem;
  background: #efeddf;
  border-radius: 100vh;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.topics_wrap .topics_area .topics_box .line:first-child::before {
  border-radius: 100vh 0 0 100vh;
}
.topics_wrap .topics_area .topics_box .line_2::before {
  border-radius: 0 100vh 100vh 0;
}
.topics_wrap .topics_area .btn_box {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 6rem;
  background: #77131b;
  position: relative;
}
.topics_wrap .topics_area .btn_box .btn_txt {
  font-size: 2.2rem;
  color: #fff;
}
.topics_wrap .topics_area .btn_box .arrow {
  width: 1.1rem;
  position: absolute;
  top: 50%;
  right: 2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.topics_wrap .topics_area .btn_box:hover {
  background: #000;
}

@media screen and (max-width: 750px) {
  .topics_wrap {
    padding: 4rem 0 0;
  }
  .topics_wrap .topics_area {
    width: 100%;
  }
  .topics_wrap .topics_area .ttl_box .ttl {
    font-size: 3.6rem;
  }
  .topics_wrap .topics_area .ttl_box .sub_ttl {
    font-size: 2.6rem;
  }
  .topics_wrap .topics_area .topics_box {
    margin: 3rem 0 0;
  }
  .topics_wrap .topics_area .topics_box .img {
    width: 100%;
  }
  .topics_wrap .topics_area .topics_box .copy {
    width: 100%;
    padding: 3rem 3rem 4rem;
  }
  .topics_wrap .topics_area .topics_box .p1 {
    font-size: 3rem;
  }
  .topics_wrap .topics_area .topics_box .inner_copy {
    border-radius: 1.6rem;
    padding: 2rem 2rem 3rem;
    margin: 2rem 0 0;
  }
  .topics_wrap .topics_area .topics_box .p2 {
    font-size: 2.4rem;
    border-radius: 1.6rem 1.6rem 0 0;
    padding: 1.4rem 0;
  }
  .topics_wrap .topics_area .topics_box .p3 {
    font-size: 2.4rem;
    margin: 1.4rem 0 0;
  }
  .topics_wrap .topics_area .topics_box .line {
    position: relative;
    z-index: 1;
  }
  .topics_wrap .topics_area .topics_box .line::before {
    height: 1.3rem;
  }
  .topics_wrap .topics_area .topics_box .line:first-child::before {
    border-radius: 100vh;
  }
  .topics_wrap .topics_area .topics_box .line_2::before {
    border-radius: 100vh;
  }
  .topics_wrap .topics_area .btn_box {
    height: 8rem;
  }
  .topics_wrap .topics_area .btn_box .btn_txt {
    font-size: 3rem;
    letter-spacing: 0;
  }
  .topics_wrap .topics_area .btn_box .arrow {
    width: 1.6rem;
    right: 3rem;
  }
}
.com_action_box {
  margin: 3.5rem 0 0;
}
.com_action_box .copy {
  text-align: center;
}
.com_action_box .copy .p1 {
  font-size: 2.2rem;
  letter-spacing: 0.2em;
  line-height: 1.4;
  color: #eada7d;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .p1 {
    font-size: 3rem;
  }
}
.com_action_box .copy .p1 .s1 {
  font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .p1 .s1 {
    font-size: 2.6rem;
  }
}
.com_action_box .copy .p2 {
  font-size: 1.5rem;
  color: #fff;
  margin: 2rem 0 0;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .p2 {
    font-size: 2.6rem;
    margin: 3rem 0 0;
  }
}
.com_action_box .copy .btn {
  width: 30rem;
  height: 6.5rem;
  margin: 2.4rem auto 0;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .btn {
    width: 50rem;
    height: 10rem;
    margin: 3rem auto 0;
  }
}
.com_action_box .copy .btn_txt {
  font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .btn_txt {
    font-size: 2.6rem;
  }
}
.com_action_box .copy .btn_txt_2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 17rem;
  height: 2.4rem;
  font-size: 1rem;
  letter-spacing: 0.05em;
  color: #eada7d;
  border: 1px solid #eada7d;
  margin: 0.8rem auto 0;
}
@media screen and (max-width: 750px) {
  .com_action_box .copy .btn_txt_2 {
    width: 35rem;
    height: 4rem;
    font-size: 2rem;
  }
}
.com_action_box .copy .btn:hover a {
  -webkit-filter: brightness(110%) saturate(150%);
          filter: brightness(110%) saturate(150%);
  background: #77131b;
}
.com_action_box .price {
  color: #fff;
  letter-spacing: 0.16em;
  display: inline-block;
  padding: 4rem 0 0;
  position: relative;
}
.com_action_box .price .s1 {
  font-size: 1rem;
  letter-spacing: 0.02em;
  border-top: 1px solid rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid rgba(255, 255, 255, 0.8);
  vertical-align: text-top;
  padding: 0.7rem 1rem;
  margin: 0 1.4rem 0 0;
}
.com_action_box .price .s2 {
  font-size: 2.8rem;
}
.com_action_box .price .s3 {
  font-size: 4rem;
  color: #eada7d;
}
.com_action_box .price .s4 {
  font-size: 2.2rem;
}
.com_action_box .price .note {
  font-size: 1rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 750px) {
  .com_action_box .price {
    text-align: center;
    letter-spacing: 0.07em;
    padding: 0 0 1.5rem;
    width: 100%;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin: 5rem 0 0;
  }
  .com_action_box .price .s1 {
    font-size: 2rem;
    text-align: left;
    border: none;
    margin: 0 0 1rem;
  }
  .com_action_box .price .s2 {
    font-size: 3rem;
  }
  .com_action_box .price .s3 {
    font-size: 4.6rem;
  }
  .com_action_box .price .s4 {
    font-size: 2.6rem;
  }
  .com_action_box .price .note {
    bottom: 0;
    font-size: 2rem;
  }
}
.com_action_box .res_table {
  width: 40rem;
  margin: 4rem auto 0;
}
@media screen and (max-width: 750px) {
  .com_action_box .res_table {
    width: 100%;
  }
}
.com_action_box .table_txt {
  font-size: 1.1rem;
  text-align: right;
  color: #fff;
  margin: 1rem 0 0;
}
@media screen and (max-width: 750px) {
  .com_action_box .table_txt {
    font-size: 2rem;
    margin: 1.6rem 0 0;
  }
}

.modal__overlay {
  z-index: 10;
}

.modal__container {
  position: relative;
  max-width: 1300px;
  width: 95%;
  height: 80vh;
  background: none !important;
  overflow-y: scroll !important;
  padding: 6rem 0;
}
@media screen and (max-width: 750px) {
  .modal__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 !important;
    max-height: none !important;
    height: calc(100dvh - 70px - 50px) !important;
  }
}

.modal__content {
  width: 90%;
  max-height: none !important;
  padding: 7rem 0 0 !important;
  margin: 0 auto !important;
  position: relative;
}
.modal-close {
  background: transparent;
  border: 0;
  color: #fff;
  font-size: 5rem;
  position: absolute;
  top: 0;
  right: 0;
}

.modal-close::before {
  content: "✕";
}

/*動き*/
.m_left {
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
  opacity: 0;
  -webkit-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}
.m_left_on {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.m_right {
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
  opacity: 0;
  -webkit-transform: translate(50px, 0);
  transform: translate(50px, 0);
}
.m_right_on {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.m_op {
  -webkit-transition: all 1s;
  transition: all 1s;
  opacity: 0;
}
.m_op_on {
  opacity: 1;
}

.m_down {
  -webkit-transition: all 1.3s;
  transition: all 1.3s;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  opacity: 0;
}
.m_down_on {
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  opacity: 1;
}

.m_up {
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
  opacity: 0;
}
.m_up_on {
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  opacity: 1;
}

.m_scale {
  -webkit-transition: all 2s;
  transition: all 2s;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
  opacity: 0;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.m_scale_on {
  opacity: 1;
  -webkit-filter: blur(0px);
          filter: blur(0px);
  -webkit-transform: scale(1);
          transform: scale(1);
}

figure.m_scale {
  overflow: hidden;
}
figure.m_scale img {
  -webkit-transition: all 2s;
  transition: all 2s;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
figure.m_scale.m_scale_on img {
  -webkit-filter: blur(0px);
          filter: blur(0px);
  -webkit-transform: scale(1);
          transform: scale(1);
}

@-webkit-keyframes mask-animation {
  0% {
    mask-position: 130% 130%;
    -webkit-mask-position: 130% 130%;
  }
  100% {
    mask-position: 0 0;
    -webkit-mask-position: 0 0;
  }
}

@keyframes mask-animation {
  0% {
    mask-position: 130% 130%;
    -webkit-mask-position: 130% 130%;
  }
  100% {
    mask-position: 0 0;
    -webkit-mask-position: 0 0;
  }
}
@media screen and (min-width: 769px) {
  .m_op_d1 {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .m_op_d2 {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .m_op_d3 {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .m_op_d4 {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s;
  }
  .m_op_d5 {
    -webkit-transition-delay: 0.9s;
            transition-delay: 0.9s;
  }
  .m_op_d6 {
    -webkit-transition-delay: 1.1s;
            transition-delay: 1.1s;
  }
  .m_op_d7 {
    -webkit-transition-delay: 1.3s;
            transition-delay: 1.3s;
  }
  .m_op_d8 {
    -webkit-transition-delay: 1.5s;
            transition-delay: 1.5s;
  }
  .m_op_d9 {
    -webkit-transition-delay: 1.7s;
            transition-delay: 1.7s;
  }
}
figure {
  position: relative;
}
figure .p_fig-capB-right {
  position: absolute;
  color: black;
  font-size: 12px;
  bottom: 4px;
  right: 8px;
  line-height: 1.3;
  z-index: 2;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capB-right {
    font-size: 10px;
  }
  figure .p_fig-capB-right.__spWhiteBg {
    color: white;
    background-color: black;
    right: 0;
    bottom: 0;
    padding: 5px;
  }
}
figure .p_fig-cap-right {
  position: absolute;
  font-size: 12px;
  bottom: 4px;
  right: 8px;
  line-height: 1.3;
  z-index: 2;
  color: white;
  text-align: right;
}
@media screen and (max-width: 750px) {
  figure .p_fig-cap-right {
    font-size: 10px;
    color: black;
  }
}
figure .p_fig-capW-right {
  position: absolute;
  font-size: 12px;
  bottom: 4px;
  right: 8px;
  line-height: 1.3;
  z-index: 2;
  color: white;
  text-align: right;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capW-right {
    font-size: 10px;
  }
}
figure .p_fig-capW-outRight {
  display: block;
  text-align: right;
  font-size: 12px;
  margin: 5px 0 0;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capW-outRight {
    font-size: 10px;
    margin: 8px 0 0;
  }
}
figure .p_fig-capB-left {
  position: absolute;
  left: 8px;
  bottom: 4px;
  font-size: 12px;
  color: black;
  line-height: 1.3;
  z-index: 2;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capB-left {
    font-size: 10px;
  }
}
figure .p_fig-capW-left {
  position: absolute;
  left: 8px;
  bottom: 4px;
  font-size: 12px;
  line-height: 1.3;
  z-index: 2;
  color: white;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capW-left {
    font-size: 10px;
  }
}
figure .p_fig-capBg-left {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  background-image: -webkit-gradient(linear, left top, right top, from(black), to(transparent));
  background-image: linear-gradient(to right, black, transparent);
  padding: 10px;
  color: white;
  font-size: 12px;
  line-height: 1.3;
  z-index: 2;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capBg-left {
    font-size: 10px;
  }
}
figure .p_fig-capBg-right {
  position: absolute;
  width: 100%;
  right: 0;
  bottom: 0;
  background-image: -webkit-gradient(linear, right top, left top, from(black), to(transparent));
  background-image: linear-gradient(to left, black, transparent);
  padding: 10px;
  text-align: right;
  color: white;
  font-size: 12px;
  line-height: 1.3;
  z-index: 2;
}
@media screen and (max-width: 1025px) {
  figure .p_fig-capBg-right {
    font-size: 10px;
  }
}

.p_main {
  padding: 130px 0 0;
}
@media screen and (max-width: 1025px) {
  .p_main {
    padding: 80px 0 0;
  }
}
@media screen and (max-width: 750px) {
  .p_main {
    padding: 60px 0 0;
  }
}

.p_ttl {
  text-align: center;
  letter-spacing: 1px;
  padding: 100px 0;
  font-size: 45px;
}
@media screen and (max-width: 1025px) {
  .p_ttl {
    padding: 60px 0;
  }
}
@media screen and (max-width: 750px) {
  .p_ttl {
    padding: 40px 0;
    font-size: 25px;
  }
}

.p_txt {
  opacity: 0;
  -webkit-transition: opacity 1s ease-in-out 0.5s;
  transition: opacity 1s ease-in-out 0.5s; /* opacityの変化をアニメーション化するためのトランジション */
}

.p_txt.__show {
  opacity: 1;
}

.p_mv {
  position: relative;
  overflow: hidden;
}
.p_mv.__white::after {
  display: none;
}
.p_mv.__white h3 {
  color: white;
  text-shadow: 0px 0px 10px white;
}
.p_mv::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.1);
  background-image: radial-gradient(closest-side, white, transparent, transparent);
  width: 100%;
  height: 100%;
}
.p_mv h3 {
  position: absolute;
  top: 53%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, -53%);
          transform: translate(-50%, -53%);
  width: 100%;
  color: #8A7657;
  text-align: center;
  font-size: 45px;
  letter-spacing: 5px;
  font-weight: 500;
}
.p_mv-img img {
  -webkit-animation: 1.8s fadeInKv 0s forwards;
          animation: 1.8s fadeInKv 0s forwards;
}
@media screen and (max-width: 1025px) {
  .p_mv h3 {
    font-size: 35px;
  }
}
@media screen and (max-width: 750px) {
  .p_mv h3 {
    font-size: 25px;
    text-shadow: 0.5px 0.5px 10px white;
  }
}

@-webkit-keyframes fadeInKv {
  0% {
    opacity: 0.5;
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes fadeInKv {
  0% {
    opacity: 0.5;
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.p_lead {
  text-align: center;
  letter-spacing: 0.5px;
  line-height: 1.5;
  padding: 80px 0;
  font-size: 25px;
}
@media screen and (max-width: 1025px) {
  .p_lead {
    padding: 60px 0;
    font-size: 20px;
  }
}
@media screen and (max-width: 750px) {
  .p_lead {
    padding: 40px 0;
    font-size: 14px;
  }
}

.p_ctns {
  padding: 70px 0;
}
.p_ctns:last-of-type {
  padding: 70px 0 0;
}
@media screen and (max-width: 1025px) {
  .p_ctns {
    padding: 30px 0;
  }
  .p_ctns:last-of-type {
    padding: 30px 0 0;
  }
}
.p_ctns-ttl {
  font-size: 45px;
  margin: 0 0 30px;
  color: #C39A70;
  text-align: center;
}
@media screen and (max-width: 1025px) {
  .p_ctns-ttl {
    font-size: 40px;
    margin: 0 0 50px;
    text-align: center;
  }
}
@media screen and (max-width: 750px) {
  .p_ctns-ttl {
    font-size: 30px;
    margin: 0 0 15px;
  }
}
.p_ctns-txt {
  line-height: 1.7;
  text-align: center;
}
.p_ctns-txt dt {
  font-size: 20px;
  margin: 0 0 20px;
}
.p_ctns-txt dd {
  line-height: 2;
  font-size: 15px;
}
@media screen and (max-width: 1025px) {
  .p_ctns-txt dt {
    margin: 0 0 15px;
  }
  .p_ctns-txt dd {
    text-align: left;
  }
}
@media screen and (max-width: 750px) {
  .p_ctns-txt dt {
    font-size: 15px;
  }
  .p_ctns-txt dd {
    font-size: 13px;
  }
}

.p_ctnsBg {
  background-color: white;
}

.sa {
  opacity: 0;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.sa--up {
  -webkit-transform: translate(0, 20px);
          transform: translate(0, 20px);
}

.sa.show {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
  -webkit-animation-name: fadein;
          animation-name: fadein;
  -webkit-animation-delay: 0;
          animation-delay: 0;
  -webkit-animation-duration: 1.3s;
          animation-duration: 1.3s;
}

#pageTop .mv {
  position: relative;
  aspect-ratio: 1920/1080;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  #pageTop .mv {
    aspect-ratio: 1080/1920;
  }
}
#pageTop .mv_media {
  position: absolute;
  inset: 0;
}
#pageTop .mv_media .jsMV_video,
#pageTop .mv_media .jsMV_image_sp,
#pageTop .mv_media .jsMV_image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right center;
     object-position: right center;
}
#pageTop .mv_media .jsMV_video {
  z-index: 4;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
#pageTop .mv_media .jsMV_image_sp,
#pageTop .mv_media .jsMV_image {
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 1.8s;
  transition: opacity 1.8s;
}
#pageTop .mv button {
  position: absolute;
  top: 2rem;
  right: 2rem;
  background: white;
  color: #231815;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  padding: 0.8rem 2rem;
  display: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: 4;
}
#pageTop .mv button.active {
  display: inline-block;
}
#pageTop .mv button:hover {
  opacity: 0.6;
}
#pageTop.mv-afterVideo .mv_txt {
  opacity: 1;
  translate: -50% 0;
  z-index: 10;
}
#pageTop.mv-afterVideo .mv_txt_2_1 {
  z-index: 11;
}
#pageTop.mv-afterVideo #jsMV .mv_media video {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
#pageTop.mv-ready .mv_media .jsMV_video {
  opacity: 0;
}
#pageTop.mv-ready .mv_media .jsMV_image_sp,
#pageTop.mv-ready .mv_media .jsMV_image {
  opacity: 1;
}
#pageTop.mv-showVideo #jsMV .mv_media video {
  opacity: 1;
}
#pageTop.mv-instantHide #jsMV .mv_media .jsMV_image_sp,
#pageTop.mv-instantHide #jsMV .mv_media .jsMV_image {
  -webkit-transition: none !important;
  transition: none !important;
}
#pageTop.mv-instantHide #jsMV .mv_txt {
  -webkit-transition: none !important;
  transition: none !important;
}
#pageTop .merit_wrap {
  background-image: url("../../build/img/top/merit_bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  padding: 6rem 0;
}
#pageTop .merit_wrap .com-content {
  width: 104rem;
  position: relative;
  z-index: 1;
}
#pageTop .merit_wrap .p_name {
  width: 70%;
  max-width: 350px;
  margin-inline: auto;
}
#pageTop .merit_wrap .com-lead {
  color: #fff;
  letter-spacing: -0.06em;
}
#pageTop .merit_wrap .com-note {
  color: #fff;
  text-align: center;
}
#pageTop .merit_wrap .main_merit {
  max-width: 582px;
  width: 100%;
  margin: 3rem auto 5rem;
}
#pageTop .merit_wrap .merits {
  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;
  row-gap: 3rem;
}
#pageTop .merit_wrap .merits .merit {
  border-right: 1px solid rgba(255, 255, 255, 0.6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#pageTop .merit_wrap .merits .merit figure {
  margin: auto;
}
#pageTop .merit_wrap .merits .merit_1 {
  border-left: 1px solid rgba(255, 255, 255, 0.6);
}
#pageTop .merit_wrap .merits .merit_1 figure {
  width: 73.4%;
}
#pageTop .merit_wrap .merits .merit_2 figure {
  width: 87%;
}
#pageTop .merit_wrap .merits .merit_3 figure {
  width: 55.2%;
}
#pageTop .merit_wrap .merits .merit_1, #pageTop .merit_wrap .merits .merit_2, #pageTop .merit_wrap .merits .merit_3 {
  width: 33.3333333333%;
}
#pageTop .merit_wrap .merits .merit_4 {
  border-left: 1px solid rgba(255, 255, 255, 0.6);
}
#pageTop .merit_wrap .merits .merit_4 figure {
  width: 59.5%;
}
#pageTop .merit_wrap .merits .merit_5 figure {
  width: 66.6%;
}
#pageTop .merit_wrap .merits .merit_6 figure {
  width: 85.4%;
}
#pageTop .merit_wrap .merits .merit_7 figure {
  width: 53.4%;
}
#pageTop .merit_wrap .merits .merit_4, #pageTop .merit_wrap .merits .merit_5, #pageTop .merit_wrap .merits .merit_6, #pageTop .merit_wrap .merits .merit_7 {
  width: 25%;
}
@media screen and (max-width: 750px) {
  #pageTop .merit_wrap .com-content {
    width: 75rem;
    padding: 0 0.5rem;
  }
  #pageTop .merit_wrap .com-lead {
    font-size: 2.5rem;
  }
  #pageTop .merit_wrap .merits {
    row-gap: 5rem;
  }
  #pageTop .merit_wrap .merits .merit_1 {
    border-left: none;
  }
  #pageTop .merit_wrap .merits .merit_1 figure {
    width: 70.9%;
  }
  #pageTop .merit_wrap .merits .merit_2 figure {
    width: 98%;
  }
  #pageTop .merit_wrap .merits .merit_3 figure {
    width: 33.4%;
  }
  #pageTop .merit_wrap .merits .merit_1, #pageTop .merit_wrap .merits .merit_2, #pageTop .merit_wrap .merits .merit_3 {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
    width: 85%;
    margin-inline: auto;
    padding-bottom: 5rem;
  }
  #pageTop .merit_wrap .merits .merit_4 {
    border-left: 1px solid rgba(255, 255, 255, 0.6);
    margin-left: auto;
  }
  #pageTop .merit_wrap .merits .merit_4 figure {
    width: 59.5%;
  }
  #pageTop .merit_wrap .merits .merit_5 {
    margin-right: auto;
  }
  #pageTop .merit_wrap .merits .merit_5 figure {
    width: 66.6%;
  }
  #pageTop .merit_wrap .merits .merit_6 {
    border-left: 1px solid rgba(255, 255, 255, 0.6);
    margin-left: auto;
  }
  #pageTop .merit_wrap .merits .merit_6 figure {
    width: 85.4%;
  }
  #pageTop .merit_wrap .merits .merit_7 {
    margin-right: auto;
  }
  #pageTop .merit_wrap .merits .merit_7 figure {
    width: 53.4%;
  }
  #pageTop .merit_wrap .merits .merit_4, #pageTop .merit_wrap .merits .merit_5, #pageTop .merit_wrap .merits .merit_6, #pageTop .merit_wrap .merits .merit_7 {
    width: 40%;
    height: 10rem;
  }
}
#pageTop .info_wrap {
  position: relative;
  padding: 8rem 0;
  background-image: url("../../build/img/top/info_bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
#pageTop .info_wrap .info_ttl {
  text-align: center;
  font-size: 1.5rem;
  color: #928e65;
  margin-bottom: 2rem;
}
#pageTop .info_wrap a {
  margin-inline: auto;
}
#pageTop .info_wrap .action {
  font-size: 2.8rem;
  color: #5b584c;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 3rem;
}
#pageTop .info_wrap .action span {
  font-size: 1.96rem;
}
@media screen and (max-width: 750px) {
  #pageTop .info_wrap {
    background-position: left center;
  }
  #pageTop .info_wrap .info_ttl {
    font-size: 2.5rem;
  }
  #pageTop .info_wrap .action {
    font-size: 3.8rem;
    display: block;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 3rem;
  }
  #pageTop .info_wrap .action span {
    font-size: 2.96rem;
  }
  #pageTop .info_wrap .com_btn {
    height: auto;
  }
  #pageTop .info_wrap .com_btn a {
    width: 100%;
  }
  #pageTop .info_wrap .com_btn a + a {
    margin-top: 3rem;
  }
}
#pageTop .link {
  padding: 10rem 0 0;
  background-image: url("../../build/img/top/link_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
#pageTop .link_txt {
  max-width: 420px;
  width: 50%;
  margin: 0 auto 3rem;
}
#pageTop .link p {
  color: #928e65;
  text-align: center;
}
#pageTop .link_txt_1 {
  font-size: 2rem;
  margin-bottom: 5rem;
  line-height: 1.5;
}
#pageTop .link_txt_2 {
  font-size: 1.5rem;
  line-height: 2;
}
#pageTop .link .com-cap {
  color: #fff;
}
@media screen and (max-width: 750px) {
  #pageTop .link .com-content {
    padding: 0 1rem;
  }
  #pageTop .link_txt_1 {
    font-size: 3rem;
  }
  #pageTop .link_txt_2 {
    font-size: 2.5rem;
    letter-spacing: -0.06em;
  }
}
#pageTop .cBtn_wrap .cBtn {
  position: relative;
  aspect-ratio: 1300/600;
}
#pageTop .cBtn_wrap .cBtn_bg {
  position: absolute;
  width: 100%;
  inset: 0;
}
#pageTop .cBtn_wrap .cBtn_txt_wrap {
  position: absolute;
  right: 0;
  top: 10rem;
}
#pageTop .cBtn_wrap .cBtn_txt {
  position: relative;
  padding: 7rem 12rem;
}
#pageTop .cBtn_wrap .cBtn_txt_bg {
  width: 100%;
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  mix-blend-mode: multiply;
  z-index: 1;
}
#pageTop .cBtn_wrap .cBtn_t1 {
  position: relative;
  color: #908c65;
  font-size: 2.6rem;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 2;
}
#pageTop .cBtn_wrap .cBtn_t2 {
  position: relative;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 3rem;
  z-index: 2;
}
#pageTop .cBtn_wrap .cBtn_link {
  display: block;
  background: rgba(146, 142, 101, 0.5);
  padding: 1rem 2rem;
  position: relative;
  z-index: 2;
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
}
#pageTop .cBtn_wrap .cBtn_link .txt {
  color: #fff;
  font-size: 1.4rem;
}
#pageTop .cBtn_wrap .cBtn_link .arrow {
  color: #fff;
  font-size: 2rem;
  scale: 0.5 1;
  translate: 0 -50%;
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
}
#pageTop .cBtn_wrap .cBtn_link:hover {
  opacity: 0.7;
}
#pageTop .cBtn_wrap .cBtn_link:hover .arrow {
  right: 0.5rem;
}
#pageTop .cBtn_wrap .cBtn.even .cBtn_txt_wrap {
  right: inherit;
  left: 0;
}
@media screen and (max-width: 750px) {
  #pageTop .cBtn_wrap .cBtn {
    aspect-ratio: 750/750;
  }
  #pageTop .cBtn_wrap .cBtn_bg img {
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #pageTop .cBtn_wrap .cBtn_txt {
    padding: 5rem 10rem;
  }
  #pageTop .cBtn_wrap .cBtn_t1 {
    font-size: 3.6rem;
  }
  #pageTop .cBtn_wrap .cBtn_t2 {
    font-size: 2.5rem;
  }
  #pageTop .cBtn_wrap .cBtn_link .txt {
    font-size: 2.4rem;
  }
  #pageTop .cBtn_wrap .cBtn_link .arrow {
    font-size: 3rem;
  }
}
#pageAccess {
  --ratio: 1.5;
}
#pageAccess .p_mv {
  position: relative;
}
#pageAccess .p_mv-ttl {
  position: absolute;
  translate: -50% -50%;
  top: 48.5%;
  left: 50%;
  color: #a29f7f;
  font-size: 2.5rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  text-shadow: 0 0 5px #fff;
  z-index: 5;
}
#pageAccess .p_mv .com-cap {
  text-shadow: none;
}
#pageAccess .intro_wrap {
  padding: 6rem 0 7rem;
  background-image: url("../../build/img/access/txt_bg-1.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
#pageAccess .intro_wrap .p_ttl {
  color: #fff;
  text-align: center;
  font-size: 2.3rem;
  line-height: 2;
  font-weight: 400;
}
#pageAccess section:not(.cbtn-wrap) p:not(.com-cap) {
  color: #5b584c;
}
#pageAccess .p_sub.f-gara {
  font-size: 1.7rem;
  line-height: 1.9;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageAccess .p_sub.f-gara {
    font-size: 2.3rem;
  }
}
#pageAccess .banner {
  position: relative;
}
@media screen and (max-width: 750px) {
  #pageAccess .banner {
    width: 100%;
    height: 30rem;
  }
}
@media screen and (max-width: 750px) {
  #pageAccess .banner_img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
    width: 100%;
    height: 100%;
    position: absolute;
  }
}
#pageAccess .banner_ttl {
  position: absolute;
  font-size: 2.2rem;
  color: #fff;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  #pageAccess .banner_ttl {
    font-size: 3rem;
  }
}
#pageAccess .place_list {
  display: -ms-grid;
  display: grid;
}
#pageAccess .place_list .place_img {
  margin-bottom: 2rem;
}
#pageAccess .place_list.place_3col {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 750px) {
  #pageAccess .place_list.place_3col {
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 6rem 2rem;
  }
}
#pageAccess .place_list.place_4col {
  -ms-grid-columns: 1fr 1.2rem 1fr 1.2rem 1fr 1.2rem 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 6rem 1.2rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .place_list.place_4col {
    -ms-grid-columns: 1fr 2rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 6rem 2rem;
  }
}
#pageAccess .place_list.place_4col .transportInfo-route {
  font-size: 2.1rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .place_list.place_4col .transportInfo-route {
    font-size: calc(2.1rem * var(--ratio));
  }
}
#pageAccess .place_list.place_4col .transportInfo-main {
  font-size: 2.1rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .place_list.place_4col .transportInfo-main {
    font-size: calc(2.1rem * var(--ratio));
  }
}
#pageAccess .place_list.place_4col .transportInfo-note {
  font-size: 1.3rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .place_list.place_4col .transportInfo-note {
    font-size: calc(1.3rem * var(--ratio));
  }
}
#pageAccess .transportInfo p {
  color: #5b584c;
}
#pageAccess .transportInfo-route, #pageAccess .transportInfo-note {
  font-size: 1.1rem;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-route, #pageAccess .transportInfo-note {
    font-size: calc(1.1rem * var(--ratio));
  }
}
#pageAccess .transportInfo-route {
  padding-left: 1.4rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-route {
    padding-left: 2rem;
  }
}
#pageAccess .transportInfo-note {
  text-align: right;
  margin-top: 5px;
}
#pageAccess .transportInfo-main {
  font-size: 2.2rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-main {
    font-size: calc(2.2rem * var(--ratio));
  }
}
#pageAccess .transportInfo-main .spot {
  font-size: 2.8rem;
  margin-right: -0.3em;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-main .spot {
    font-size: calc(2.8rem * var(--ratio));
  }
}
#pageAccess .transportInfo-main .time {
  font-size: 3.3rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-main .time {
    font-size: calc(3.3rem * var(--ratio));
  }
}
#pageAccess .transportInfo-main .s1 {
  font-size: 1.8rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo-main .s1 {
    font-size: calc(1.8rem * var(--ratio));
  }
}
#pageAccess .transportInfo.center p {
  text-align: center;
}
#pageAccess .transportInfo.center .transportInfo-route {
  margin-bottom: 5px;
  padding-left: 0;
}
#pageAccess .transportInfo_flex {
  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;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 2.5rem 2.7rem;
  border-top: 1px dotted #5b584c;
}
#pageAccess .transportInfo_flex:last-child {
  border-bottom: 1px dotted #5b584c;
}
#pageAccess .transportInfo_flex .transportInfo-route {
  font-size: 1.4rem;
  margin-bottom: 5px;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo_flex .transportInfo-route {
    font-size: calc(1.4rem * var(--ratio));
  }
}
#pageAccess .transportInfo_flex .transportInfo-main {
  font-size: 2.1rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo_flex .transportInfo-main {
    font-size: calc(2.1rem * var(--ratio));
  }
}
#pageAccess .transportInfo_flex .transportInfo-main .spot {
  font-size: 2.6rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo_flex .transportInfo-main .spot {
    font-size: calc(2.6rem * var(--ratio));
  }
}
#pageAccess .transportInfo_flex .transportInfo-main .time {
  font-size: 3.1rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .transportInfo_flex .transportInfo-main .time {
    font-size: calc(3.1rem * var(--ratio));
  }
}
#pageAccess .intro_wrap {
  background: url(../img/access/txt_bg-1.jpg) center/cover no-repeat;
}
#pageAccess .train_bg {
  background: url(../img/access/train_bg.jpg) top center/cover no-repeat;
  padding-bottom: 12rem;
}
#pageAccess .train_transportInfo {
  padding: 6rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
#pageAccess .train_transportInfo .p1 {
  font-size: 2.8rem;
  color: #5b584c;
  margin-top: 1.9rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .train_transportInfo .p1 {
    font-size: calc(2.8rem * var(--ratio));
    margin-top: calc(1.9rem * var(--ratio));
  }
}
#pageAccess .train_transportInfo .transportInfo-main {
  font-size: 2rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .train_transportInfo .transportInfo-main {
    font-size: calc(2rem * var(--ratio));
  }
}
#pageAccess .train_transportInfo .transportInfo-main .spot {
  font-size: 2.8rem;
  margin-right: -0.3em;
}
@media screen and (max-width: 750px) {
  #pageAccess .train_transportInfo .transportInfo-main .spot {
    font-size: calc(2.8rem * var(--ratio));
  }
}
#pageAccess .train_transportInfo .transportInfo-main .time {
  font-size: 3.8rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .train_transportInfo .transportInfo-main .time {
    font-size: calc(3.8rem * var(--ratio));
  }
}
#pageAccess .train_route {
  margin: 10rem auto 6rem;
}
#pageAccess .train_route .com-note {
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  #pageAccess .train_route {
    width: 84rem;
  }
}
#pageAccess .train_box {
  margin-top: 8rem;
  background-color: rgba(255, 255, 255, 0.4);
}
#pageAccess .train_box .p_sub {
  position: relative;
  padding: 4.5em 7rem;
  letter-spacing: 0;
  background: url(../img/access/txt_bg-2.jpg) center/cover no-repeat;
}
@media screen and (max-width: 750px) {
  #pageAccess .train_box .p_sub {
    padding: 2.5em 4rem;
  }
}
#pageAccess .train_box .p_sub span {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
}
#pageAccess .train_box-content {
  padding: 4.5rem 4.5rem 7rem;
  position: relative;
}
#pageAccess .train_box-content .com-note {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
}
#pageAccess .car_bg {
  background: url(../img/access/car_bg.jpg) top center/cover no-repeat;
  padding: 7rem 0;
}
#pageAccess .car_box {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 7rem;
  row-gap: 5rem;
}
#pageAccess .car_route, #pageAccess .car_tbox {
  width: 48.5%;
}
@media screen and (max-width: 750px) {
  #pageAccess .car_route, #pageAccess .car_tbox {
    width: 100%;
  }
}
#pageAccess .car_tbox .p_sub {
  margin-bottom: 2em;
}
#pageAccess .bicycle_wrap .place_list {
  margin-top: 1.5rem;
}
#pageAccess .bicycle_bg {
  background: url(../img/access/bicycle_bg.jpg) top center/cover no-repeat;
  padding: 4rem 0 12rem;
}
#pageAccess .bicycle_bg .p_note {
  font-size: 1.3rem;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageAccess .bicycle_bg .p_note {
    font-size: 1.8rem;
  }
}
#pageAccess .bicycle_box {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2rem;
  row-gap: 5rem;
}
#pageAccess .bicycle_route {
  width: 64.7%;
  margin-left: -5.5rem;
}
#pageAccess .bicycle_route img {
  display: block;
}
@media screen and (max-width: 750px) {
  #pageAccess .bicycle_route {
    width: 100%;
    margin-left: 0;
  }
}
#pageAccess .bicycle_tbox {
  width: 38.5%;
}
@media screen and (max-width: 750px) {
  #pageAccess .bicycle_tbox {
    width: 100%;
  }
}
#pageAccess .bicycle_tbox .p_sub {
  font-size: 1.9rem;
  line-height: 1.95;
  letter-spacing: -0.04em;
}
@media screen and (max-width: 750px) {
  #pageAccess .bicycle_tbox .p_sub {
    font-size: 2.5rem;
    letter-spacing: 0;
  }
}
#pageAccess .bicycle_tbox .p_sub sup {
  vertical-align: super;
  font-size: 1.2rem;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageAccess .bicycle_tbox .p_sub sup {
    font-size: 1.7rem;
  }
}
#pageAccess .bus_wrap .access_method {
  border: 1px solid rgba(162, 159, 127, 0.6);
  padding: 1.2rem 3rem 2.8rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_wrap .access_method {
    padding: 5rem;
  }
  #pageAccess .bus_wrap .access_method figure {
    min-width: 650px;
  }
}
#pageAccess .bus_wrap .com-note:last-child {
  margin-top: 5rem;
}
#pageAccess .bus_bg {
  background: url(../img/access/bicycle_bg.jpg) top center/cover no-repeat;
  padding: 8rem 0 12rem;
}
#pageAccess .bus_bg .p_sub.txt_center {
  text-align: center;
  line-height: 1.9;
  font-size: 1.9rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_bg .p_sub.txt_center {
    font-size: 2.5rem;
  }
}
#pageAccess .bus_box {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 5rem auto;
  row-gap: 5rem;
}
#pageAccess .bus_route {
  width: 49%;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_route {
    width: 100%;
  }
}
#pageAccess .bus_tbox {
  width: 44%;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_tbox {
    width: 100%;
  }
}
#pageAccess .bus_tbox .p_sub {
  margin-bottom: 2em;
}
#pageAccess .bus_tbox .transportInfo_flex {
  padding-inline: 0;
}
#pageAccess .bus_tbox .transportInfo_flex p {
  letter-spacing: 0;
}
#pageAccess .bus_tbox .transportInfo_flex .transportInfo-main {
  font-size: 1.8rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_tbox .transportInfo_flex .transportInfo-main {
    font-size: calc(1.8rem * var(--ratio));
  }
}
#pageAccess .bus_tbox .transportInfo_flex .transportInfo-main .spot {
  font-size: 2.5rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_tbox .transportInfo_flex .transportInfo-main .spot {
    font-size: calc(2.5rem * var(--ratio));
  }
}
#pageAccess .bus_tbox .transportInfo_flex .transportInfo-main .time {
  font-size: 2.8rem;
}
@media screen and (max-width: 750px) {
  #pageAccess .bus_tbox .transportInfo_flex .transportInfo-main .time {
    font-size: calc(2.8rem * var(--ratio));
  }
}
#pageLocation figure {
  position: relative;
}
#pageLocation .main_wrap .main {
  position: relative;
}
#pageLocation .main_wrap .main_txt {
  position: absolute;
  translate: -50% -50%;
  top: 50%;
  left: 50%;
  color: #fff;
  font-size: 2.5rem;
  text-shadow: 0 0 5px #000;
}
#pageLocation .main_wrap .com_lead_box {
  padding: 5rem 0;
  background-image: url("../../build/img/plan/com_lead_bg.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
#pageLocation .main_wrap .com_lead_box .com_lead {
  color: #fff;
  text-align: center;
  font-size: 2.3rem;
  line-height: 2;
}
@media screen and (max-width: 750px) {
  #pageLocation .main_wrap .com_lead_box .com_lead {
    font-size: 2.2rem;
  }
}
#pageLocation .main_wrap .tabs {
  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;
  max-width: 720px;
  width: 100%;
  margin: 5rem auto 0;
  cursor: pointer;
}
#pageLocation .main_wrap .tabs .tab {
  width: 49%;
  background: #fff;
  padding: 1rem 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (max-width: 750px) {
  #pageLocation .main_wrap .tabs .tab {
    width: 100%;
  }
  #pageLocation .main_wrap .tabs .tab + .tab {
    margin-top: 3rem;
  }
}
#pageLocation .main_wrap .tabs .tab_txt {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #5B584C;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageLocation .main_wrap .tabs .tab_txt {
    font-size: 2.4rem;
  }
}
#pageLocation .main_wrap .tabs .tab_txt span {
  letter-spacing: 0.1em;
}
#pageLocation .main_wrap .tabs .tab:hover, #pageLocation .main_wrap .tabs .tab.active {
  background: #5B584C;
}
#pageLocation .main_wrap .tabs .tab:hover .tab_txt, #pageLocation .main_wrap .tabs .tab.active .tab_txt {
  color: #fff;
}
#pageLocation .main_wrap .tabs .tab:hover .tab_txt span, #pageLocation .main_wrap .tabs .tab.active .tab_txt span {
  color: #fff;
}
#pageLocation .loc_txt {
  font-size: 1.5rem;
  line-height: 1.8;
}
#pageLocation .loc_flex {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#pageLocation .loc_flex figure, #pageLocation .loc_flex div {
  width: 47%;
}
@media screen and (max-width: 750px) {
  #pageLocation .loc_flex figure, #pageLocation .loc_flex div {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  #pageLocation .loc_flex div {
    margin-top: 5rem;
  }
}
#pageLocation .tab_content {
  display: none;
}
#pageLocation .tab_content.active {
  display: block;
}
#pageLocation .sec_location .aerial {
  position: relative;
}
#pageLocation .sec_location .aerial::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  z-index: -1;
  left: 0;
  top: 0;
  background-image: url("../../build/img/location/brown_bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
#pageLocation .sec_location .aerial_img1::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 45%;
  left: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(46, 40, 37, 0)), to(rgb(37, 33, 31)));
  background: linear-gradient(180deg, rgba(46, 40, 37, 0) 0%, rgb(37, 33, 31) 100%);
}
#pageLocation .sec_location .aerial_img1 .com-cap {
  z-index: 5;
  text-align: right;
}
#pageLocation .sec_location .aerial_img1 .merit_copy {
  position: absolute;
  bottom: 7.3rem;
  left: 17rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .sec_location .aerial_img1 .merit_copy {
    bottom: 4rem;
    left: 4rem;
    width: 33rem;
  }
}
#pageLocation .sec_location .aerial_img1 .merit_copy div {
  position: relative;
  padding: 1rem;
}
#pageLocation .sec_location .aerial_img1 .merit_copy div::before {
  content: "";
  background: #5b584c;
  mix-blend-mode: multiply;
  position: absolute;
  inset: 0;
  z-index: 0;
}
#pageLocation .sec_location .aerial_img1 .merit_copy img {
  position: relative;
  z-index: 1;
  width: 32.5rem;
}
#pageLocation .sec_location .aerial .sp_note {
  color: #fff;
  font-size: 2rem;
  line-height: 1.2;
  margin: 2rem 1rem;
}
#pageLocation .sec_location .aerial .loc_flex {
  padding: 10.1rem 0 11.6rem;
}
#pageLocation .sec_location .aerial .loc_flex .txt_wrap {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#pageLocation .sec_location .aerial .loc_flex .txt_wrap .com-txt {
  letter-spacing: 0.03em;
  margin-bottom: 3rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .sec_location .aerial .loc_flex .txt_wrap .com-txt {
    font-size: 2.7rem;
  }
}
#pageLocation .sec_location .aerial .loc_flex .txt_wrap .com-note {
  margin-top: auto;
}
@media screen and (max-width: 750px) {
  #pageLocation .sec_location .aerial .loc_flex .txt_wrap .com-note {
    font-size: 1.5rem;
  }
}
#pageLocation .aerial_box {
  padding-bottom: 5.7rem;
}
#pageLocation .aerial_box01 {
  background: url("../img/location/bg1.jpg") no-repeat center/cover;
}
#pageLocation .aerial_box02 {
  background: url("../img/location/bg2.jpg") no-repeat center/cover;
}
#pageLocation .aerial_box03 {
  background: url("../img/location/bg3.jpg") no-repeat center/cover;
}
#pageLocation .aerial_box04 {
  background: url("../img/location/bg4.jpg") no-repeat center/cover;
}
#pageLocation .aerial_box05 {
  background: url("../img/location/bg5.jpg") no-repeat center/cover;
}
#pageLocation .lifestyle_wrap {
  background: url("../img/location/bg6.jpg") no-repeat center/cover;
  padding: 7rem 0 14rem;
}
#pageLocation .aerial_title {
  font-size: 2.8rem;
  color: #928E65;
  text-align: center;
  font-weight: normal;
  padding: 4.3rem 0 4rem;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_title {
    font-size: 3.2rem;
  }
}
#pageLocation .aerial_banner .info {
  padding-right: 1.6rem;
}
#pageLocation .aerial_banner .time {
  margin-right: 8px;
}
#pageLocation .info {
  text-align: right;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 9px;
}
#pageLocation p.location {
  font-size: 1.2rem;
  color: #5B584C;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 750px) {
  #pageLocation p.location {
    font-size: 1.8rem;
  }
}
#pageLocation p.location .location_note {
  font-size: 1rem;
  line-height: 1.2;
}
@media screen and (max-width: 750px) {
  #pageLocation p.location .location_note {
    font-size: 1.6rem;
  }
}
#pageLocation .time,
#pageLocation .walk,
#pageLocation .bicycle,
#pageLocation .text_time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.7rem;
  color: #5B584C;
}
@media screen and (max-width: 750px) {
  #pageLocation .time,
  #pageLocation .walk,
  #pageLocation .bicycle,
  #pageLocation .text_time {
    font-size: 2.2rem;
  }
}
#pageLocation .time {
  margin-top: 8px;
}
@media screen and (max-width: 750px) {
  #pageLocation .time {
    margin-top: 5px;
  }
}
#pageLocation .bicycle {
  margin-left: 25px;
}
@media screen and (max-width: 750px) {
  #pageLocation .bicycle {
    margin-left: 15px;
  }
}
#pageLocation .walk_icon {
  width: 1.2rem;
  margin-right: 8px;
}
@media screen and (max-width: 750px) {
  #pageLocation .walk_icon {
    width: 1.6rem;
  }
}
#pageLocation .bicycle_icon {
  width: 2.4rem;
  margin-right: 6px;
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
}
@media screen and (max-width: 750px) {
  #pageLocation .bicycle_icon {
    width: 3.4rem;
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
}
#pageLocation .aerial_subTitle {
  font-size: 2.2rem;
  text-align: center;
  font-weight: normal;
  color: #928E65;
  letter-spacing: 0.01em;
  margin-top: 1.9rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_subTitle {
    font-size: 2.8rem;
    margin-top: 9rem;
  }
}
#pageLocation .aerial_subTitle + .aerial_desc {
  text-align: center;
  margin-top: 2rem;
  letter-spacing: -0.03em;
  margin-bottom: -1.7rem;
}
#pageLocation .aerial_desc {
  font-size: 1.9rem;
  line-height: 1.9;
  font-weight: normal;
  color: #5B584C;
  margin-top: 12px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_desc {
    font-size: 2.4rem;
    margin-top: 7rem;
  }
}
#pageLocation .aerial_list {
  margin-top: 7.3rem;
  position: relative;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_list {
    margin-top: 5rem;
  }
}
#pageLocation .aerial_item {
  margin: 0 2rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_item {
    margin: 0;
    padding: 0 4rem;
  }
}
#pageLocation .aerial_itemImg {
  height: 22.3vw;
  max-height: 30rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_itemImg {
    height: 50vw;
  }
}
#pageLocation .aerial_itemImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#pageLocation .slick-list {
  margin: 0 -2rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .slick-list {
    margin: 0;
  }
}
#pageLocation .text_time {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
#pageLocation .distance {
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  margin: 0 -5px;
}
@media screen and (max-width: 750px) {
  #pageLocation .distance {
    font-size: 1.6rem;
  }
}
#pageLocation .slick-arrow {
  font-size: 0;
  top: 43%;
  width: 3rem;
  height: 3rem;
  border-right: 1px solid #5B584C;
  border-bottom: 1px solid #5B584C;
  position: absolute;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
#pageLocation .slick-arrow:hover {
  opacity: 0.7;
}
#pageLocation .slick-arrow.slick-disabled {
  display: none !important;
}
#pageLocation .slick-prev {
  left: -5rem;
  -webkit-transform: translateY(-50%) rotate(135deg);
          transform: translateY(-50%) rotate(135deg);
}
@media screen and (max-width: 750px) {
  #pageLocation .slick-prev {
    left: -1rem;
  }
}
#pageLocation .slick-next {
  right: -5rem;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}
@media screen and (max-width: 750px) {
  #pageLocation .slick-next {
    right: -1rem;
  }
}
#pageLocation .aerial_boxCenter {
  margin-top: 7.5rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .aerial_boxCenter {
    margin-top: 5rem;
  }
}
#pageLocation .lifestyle_box .aerial_subTitle {
  margin-top: 0;
}
#pageLocation .lifestyle_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;
  margin-top: 5.1rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .lifestyle_list {
    gap: 5rem 0;
  }
}
#pageLocation .lifestyle_item {
  width: 31.3%;
}
@media screen and (max-width: 750px) {
  #pageLocation .lifestyle_item {
    width: 48%;
  }
}
#pageLocation .lifestyle_box02 {
  margin-top: 9.4rem;
}
#pageLocation .lifestyle_box03 {
  margin-top: 10.3rem;
}
#pageLocation .lifestyle_box03 .lifestyle_list {
  margin: 5.1rem auto 0;
  width: 65.1rem;
  gap: 3.1rem 0;
}
@media screen and (max-width: 750px) {
  #pageLocation .lifestyle_box03 .lifestyle_list {
    width: 100%;
    gap: 5rem 0;
  }
}
#pageLocation .lifestyle_box03 .lifestyle_item {
  width: 46%;
}
@media screen and (max-width: 750px) {
  #pageLocation .lifestyle_box03 .lifestyle_item {
    width: 48%;
  }
}
#pageLocation .location-map {
  background: url("../img/location/brown_bg.jpg") no-repeat center/cover;
  padding: 9.7rem 0 11rem;
}
#pageLocation .location-map .location-map_flex {
  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;
}
#pageLocation .location-map .location-map_title,
#pageLocation .location-map .location-map_desc {
  color: #fff;
}
#pageLocation .location-map .location-map_txtBox {
  padding-top: 4.3rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .location-map .location-map_txtBox {
    padding-top: 0;
    text-align: center;
  }
}
#pageLocation .location-map .location-map_title {
  margin-top: 0;
}
#pageLocation .location-map .location-map_desc {
  font-size: 1.5rem;
  line-height: 1.9;
  margin-top: 5.2rem;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  #pageLocation .location-map .location-map_desc {
    font-size: 1.8rem;
    margin-top: 3.5rem;
  }
  #pageLocation .location-map .location-map_desc .com-note {
    font-size: 1.6rem;
  }
}
#pageLocation .location-map .location-map_txtBox,
#pageLocation .location-map .location-map_img {
  width: 45.8%;
}
@media screen and (max-width: 750px) {
  #pageLocation .location-map .location-map_txtBox,
  #pageLocation .location-map .location-map_img {
    width: 100%;
  }
  #pageLocation .location-map .location-map_txtBox img,
  #pageLocation .location-map .location-map_img img {
    margin: 0 auto;
    width: 60%;
    margin-top: 5rem;
    display: block;
  }
}
#pageLocation .location-map .location-map_terrain {
  margin-top: 5.5rem;
  position: relative;
}
#pageLocation .location-map .location-map_terrain::before, #pageLocation .location-map .location-map_terrain::after {
  position: absolute;
  content: "";
  height: 1px;
  background-color: #fff;
  opacity: 0.5;
}
#pageLocation .location-map .location-map_terrain::before {
  width: 77%;
  top: -38%;
  left: -3.6rem;
  -webkit-transform: rotate(-26deg);
          transform: rotate(-26deg);
}
@media screen and (max-width: 750px) {
  #pageLocation .location-map .location-map_terrain::before {
    width: 60%;
    top: -51.5%;
    left: -6.4rem;
    -webkit-transform: rotate(-48deg);
            transform: rotate(-48deg);
  }
}
#pageLocation .location-map .location-map_terrain::after {
  width: 37.9%;
  top: -38.3%;
  right: -10.3rem;
  -webkit-transform: rotate(64deg);
          transform: rotate(64deg);
}
@media screen and (max-width: 750px) {
  #pageLocation .location-map .location-map_terrain::after {
    width: 61%;
    top: -51%;
    right: -6.4rem;
    -webkit-transform: rotate(47deg);
            transform: rotate(47deg);
  }
}
#pageLocation .location-map .location-map_terrain .com-note.right {
  color: #fff;
  padding-top: 1rem;
  line-height: 1.3;
}
#pageLocation .area-info {
  background: #e9e8e0;
  padding: 11rem 0 21rem;
}
#pageLocation .area-info .area-info_title {
  letter-spacing: 0.09em;
}
@media screen and (max-width: 750px) {
  #pageLocation .area-info .area-info_title {
    margin-top: 0;
  }
}
#pageLocation .area-info figure {
  margin-top: 6.9rem;
}
#pageLocation .area-info .area-info_box {
  margin-top: 8rem;
}
#pageLocation .area-info .area-info_tabs {
  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;
}
#pageLocation .area-info .area-info_tabs .area-info_tab {
  width: 15.7%;
  height: 4.5rem;
  background-color: #fff;
  border: 1px solid #666666;
  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;
  font-size: 1.3rem;
  letter-spacing: 0.09em;
  color: #000;
  -webkit-transition: background-color 0.3s ease, color 0.3s ease;
  transition: background-color 0.3s ease, color 0.3s ease;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .area-info .area-info_tabs .area-info_tab {
    width: 32%;
    font-size: 1.9rem;
    height: 6.5rem;
  }
}
#pageLocation .area-info .area-info_tabs .area-info_tab:hover, #pageLocation .area-info .area-info_tabs .area-info_tab.is-active {
  color: #fff;
  background-color: #666666;
}
#pageLocation .area-info .area-info_panel {
  display: none;
}
#pageLocation .area-info .area-info_panel.is-active {
  display: block;
}
#pageLocation .area-info .area-info_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;
  margin-top: 2.9rem;
  gap: 2.9rem 0;
}
#pageLocation .area-info .area-info_item {
  width: 46.5%;
  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;
  border-bottom: 1px solid #666666;
  padding-bottom: 10px;
}
@media screen and (max-width: 750px) {
  #pageLocation .area-info .area-info_item {
    width: 100%;
  }
}
#pageLocation .area-info .area-info_txt,
#pageLocation .area-info .area-info_distance {
  font-size: 1.3rem;
  letter-spacing: 0.01em;
  color: #000;
}
@media screen and (max-width: 750px) {
  #pageLocation .area-info .area-info_txt,
  #pageLocation .area-info .area-info_distance {
    font-size: 1.9rem;
  }
}
#pageLocation .area-info .area-info_distance {
  margin-left: -2rem;
}
#pageLocation .area-info .area-info_note {
  font-size: 1rem;
  color: #000;
  line-height: 1.75;
  letter-spacing: -0.08em;
  margin-top: 7.4rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .area-info .area-info_note {
    font-size: 1.6rem;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 750px) {
  #pageLocation {
    /* 奇数→偶数に並び替え */
  }
  #pageLocation .area-info_item {
    width: 100%;
  }
  #pageLocation .area-info_item:nth-child(odd) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  #pageLocation .area-info_item:nth-child(even) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
#pageLocation .history_hero {
  position: relative;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform;
}
#pageLocation .history_hero .history_main {
  position: relative;
}
#pageLocation .history_hero .history_main .history_mainTxt {
  position: absolute;
  translate: -50% -50%;
  top: 50%;
  left: 50%;
  color: #000;
  font-size: 2.5rem;
}
#pageLocation .history_hero .history_main .history_mainImg {
  opacity: 0.5;
  height: 100vh;
}
#pageLocation .history_hero .history_main .history_mainImg img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#pageLocation .history_hero .story-section {
  opacity: 0;
  position: absolute;
  top: 57%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  width: 100%;
  max-width: 100rem;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_hero .story-section {
    top: 50%;
  }
}
#pageLocation .history_hero .history_mainTxt {
  opacity: 1;
  visibility: visible;
}
#pageLocation .history_hero .story_flex {
  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;
}
#pageLocation .history_hero .story_flex .com-note.right {
  padding-top: 1rem;
  line-height: 1.3;
  color: #5B584C;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_hero .story_flex .com-note.right {
    text-align: center;
  }
}
#pageLocation .history_hero .section-2 .story_flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
#pageLocation .history_hero .section-2 .story_flex .story_txtBox .com-note {
  padding-right: 13rem;
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_hero .section-2 .story_flex .story_txtBox .com-note {
    padding-right: 0;
    text-align: center;
  }
}
#pageLocation .history_hero .story_title,
#pageLocation .history_hero .story_desc {
  color: #5B584C;
}
#pageLocation .history_hero .story_txtBox {
  padding-top: 4.3rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_hero .story_txtBox {
    padding-top: 0;
    text-align: center;
  }
}
#pageLocation .history_hero .story_title {
  margin-top: 0;
}
#pageLocation .history_hero .story_desc {
  font-size: 1.5rem;
  line-height: 1.9;
  margin-top: 5.2rem;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_hero .story_desc {
    font-size: 1.8rem;
    margin-top: 3.5rem;
  }
}
#pageLocation .story_txtBox,
#pageLocation .story_img {
  width: 45.8%;
}
@media screen and (max-width: 750px) {
  #pageLocation .story_txtBox,
  #pageLocation .story_img {
    width: 100%;
  }
  #pageLocation .story_txtBox img,
  #pageLocation .story_img img {
    margin: 0 auto;
    width: 60%;
    margin-top: 5rem;
    display: block;
  }
}
#pageLocation .history_content {
  text-align: center;
  background: url("../img/location/history_bg.jpg") no-repeat center top/cover;
  padding: 7.8rem 0 9.5rem;
}
#pageLocation .history_content .com-note {
  text-align: left;
  line-height: 1.5;
}
#pageLocation .history_title {
  font-size: 1.9rem;
  line-height: 1.9;
  font-weight: normal;
  color: #5B584C;
  letter-spacing: 0;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_title {
    font-size: 2.4rem;
  }
}
#pageLocation .history_desc {
  font-size: 1.5rem;
  line-height: 1.9;
  font-weight: normal;
  color: #5B584C;
  letter-spacing: 0;
  margin-top: 3rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_desc {
    font-size: 1.8rem;
  }
}
#pageLocation .history_banner--flex {
  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;
}
#pageLocation .history_banner--flex figure {
  width: 50%;
}
#pageLocation .history_banner .com-cap {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_banner .com-cap {
    font-size: 1.6rem;
    line-height: 1.4;
  }
}
#pageLocation .history_box03 .history_banner .com-cap {
  position: relative;
  bottom: 0;
  right: 0;
  text-align: right;
  margin-top: 1rem;
  text-shadow: none;
  color: #5B584C;
}
#pageLocation .history_box03 .history_content {
  margin-top: -2.5rem;
  padding: 11.5rem 0 12rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_box03 .history_content {
    margin-top: -5.5rem;
  }
}
#pageLocation .history_list {
  margin-top: 6.2rem;
}
#pageLocation .history_item {
  margin: 0 2rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_item {
    margin: 0;
    padding: 0 4rem;
  }
}
#pageLocation .history_itemImg {
  height: 22.3vw;
  max-height: 30rem;
}
@media screen and (max-width: 750px) {
  #pageLocation .history_itemImg {
    height: 50vw;
  }
}
#pageLocation .history_itemImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#pagePlan .main_wrap .main {
  position: relative;
}
#pagePlan .main_wrap .main_txt {
  position: absolute;
  translate: -50% -50%;
  top: 50%;
  left: 50%;
  color: #fff;
  font-size: 2.5rem;
  text-shadow: 0 0 5px #000;
}
#pagePlan .main_wrap .com_lead_box {
  padding: 5rem 0;
  background-image: url("../../build/img/plan/com_lead_bg.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
#pagePlan .main_wrap .com_lead_box .com_lead {
  color: #fff;
  text-align: center;
  font-size: 2.3rem;
  line-height: 2;
}
#pagePlan .type_wrap {
  padding: 12rem 0;
  background-image: url("../../build/img/plan/plan_bg.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
#pagePlan .type_wrap .com-content {
  max-width: 785px;
}
#pagePlan .type_wrap .type_name {
  background: #928e65;
  padding: 2rem 0;
  color: #fff;
  text-align: center;
  font-size: 1.9rem;
  margin-bottom: 3rem;
}
#pagePlan .type_wrap .type_name span {
  font-size: 3.2rem;
}
#pagePlan .type_wrap .type_spec {
  color: #5b584c;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  margin-bottom: 3rem;
}
#pagePlan .type_wrap .type_spec_1 {
  font-size: 3.2rem;
  padding-right: 2rem;
  border-right: 1px solid #928e65;
}
#pagePlan .type_wrap .type_spec_1 .s1 {
  font-size: 4.6rem;
}
#pagePlan .type_wrap .type_spec_2 {
  font-size: 1.5rem;
  padding-left: 2rem;
}
#pagePlan .type_wrap .type_spec_2 .s1 {
  font-size: 4.6rem;
}
#pagePlan .type_wrap .type_spec_2 .s2 {
  font-size: 3.2rem;
}
#pagePlan .type_wrap .type_spec_2 .s3 {
  font-size: 2.1rem;
}
#pagePlan .type_wrap .type_spec .com-note {
  position: absolute;
  right: 8.2rem;
  bottom: -2rem;
}
@media screen and (max-width: 750px) {
  #pagePlan .type_wrap .type_spec .com-note {
    right: 2.4rem;
    bottom: -3rem;
  }
}
#pagePlan .type_wrap .type .params {
  line-height: 1.8;
  text-align: center;
  color: #5b584c;
}
#pagePlan .type_wrap .type .layout {
  width: 85%;
  margin: 3rem auto 6rem;
}
#pagePlan .type_wrap .type .merits {
  border-top: 1px solid #5b584c;
  padding-top: 3rem;
  color: #5b584c;
  line-height: 1.8;
  margin-bottom: 3rem;
}
#pagePlan .type_wrap .type .layout_note {
  font-size: 1rem;
  color: #5b584c;
}
#pagePlan .type_wrap .type .layout_note span {
  display: inline-block;
  height: 1.2rem;
  margin-right: 0.5rem;
  vertical-align: middle;
}
#pagePlan .type_wrap .type .layout_note span img {
  width: auto;
  height: 100%;
}
#pagePlan .type_wrap .type .layout_note span.out {
  height: 2.8rem;
}
#pagePlan .type_wrap .type + .type {
  margin-top: 10rem;
}
#pagePlan .type_wrap .com_btn {
  display: block;
  margin-top: 10rem;
}
#pagePlan .type_wrap .com_btn a {
  margin: auto;
  width: 48%;
}
@media screen and (max-width: 750px) {
  #pagePlan .type_wrap .com_btn a {
    width: 100%;
  }
}
#pagePlan .type_wrap .com_btn p {
  text-align: center;
  font-size: 1.9rem;
  padding-top: 3rem;
}
#pageBrand {
  background-color: #f0edec;
}
#pageBrand .main_wrap .img_box .cap {
  line-height: 1.2;
}
#pageBrand .t_wrap {
  width: 1000px;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_wrap {
    width: 88%;
  }
}
#pageBrand .t_inner {
  width: 1100px;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_inner {
    width: 88%;
  }
}
#pageBrand .t_inner_brand {
  width: 1100px;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_inner_brand {
    width: 88%;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .t_inner_brand {
    width: 95%;
  }
}
#pageBrand .t_wrapper {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_wrapper {
    width: 88%;
  }
}
#pageBrand .t_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#pageBrand .t_rFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_rFlex {
    display: block;
  }
}
#pageBrand .t_pc_only {
  display: block;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_pc_only {
    display: none;
  }
}
#pageBrand .t_md_only {
  display: block;
}
@media screen and (max-width: 750px) {
  #pageBrand .t_md_only {
    display: none;
  }
}
#pageBrand .t_sp_only {
  display: none !important;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_sp_only {
    display: block !important;
  }
}
#pageBrand .t_sp_only_brand {
  display: none !important;
}
@media screen and (max-width: 750px) {
  #pageBrand .t_sp_only_brand {
    display: block !important;
  }
}
#pageBrand .t_notLink {
  color: rgba(201, 202, 202, 0.8) !important;
  pointer-events: none !important;
  cursor: none !important;
}
#pageBrand .t_notLink a::after {
  display: none !important;
}
#pageBrand .t_caption {
  display: block;
  text-align: left;
  line-height: 1.5;
  width: 900px;
  margin: 0 auto 200px;
  font-size: 12px;
}
@media screen and (max-width: 1025px) {
  #pageBrand .t_caption {
    width: 88%;
    margin: 0 auto 80px;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .t_caption {
    margin: 0 auto 50px;
  }
}
#pageBrand .t_sup {
  font-size: 10px;
}
#pageBrand .t_en {
  font-family: "Cinzel", serif;
  font-style: normal;
}
#pageBrand .t_trajan {
  font-family: "trajan-pro-3", serif;
  font-weight: 400;
  font-style: normal;
}
#pageBrand .t_right {
  text-align: right;
  margin: 0 0 5px !important;
}
@media screen and (max-width: 750px) {
  #pageBrand .t_right {
    border-bottom: none !important;
    padding: 0 !important;
  }
}
#pageBrand .brand_lead {
  text-align: center;
  letter-spacing: 1px;
  padding: 16rem 0 15rem;
  color: #5d6164;
}
#pageBrand .brand_lead h4 {
  display: block;
  font-size: 35px;
  letter-spacing: 0.1em;
  margin: 0 0 50px;
}
#pageBrand .brand_lead p {
  font-size: 2.4rem;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1025px) {
  #pageBrand .brand_lead {
    padding: 60px 0;
  }
  #pageBrand .brand_lead h4 {
    font-size: 30px;
    margin: 0 0 30px;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .brand_lead {
    padding: 40px 0;
  }
  #pageBrand .brand_lead h4 {
    font-size: 25px;
    margin: 0 0 20px;
  }
  #pageBrand .brand_lead p {
    width: 90%;
    margin: 0 auto;
    line-height: 1.5;
  }
}
#pageBrand .brand_about {
  padding: 100px 0;
  line-height: 1.5;
  color: #5d6164;
}
#pageBrand .brand_about h4 {
  font-size: 23px;
  margin: 0 auto 80px;
  text-align: center;
}
#pageBrand .brand_about-img {
  display: block;
  width: 60%;
  margin: 0 auto 50px;
}
#pageBrand .brand_about p {
  display: block;
  width: 60%;
  margin: 0 auto;
}
@media screen and (max-width: 1025px) {
  #pageBrand .brand_about {
    padding: 60px 0;
  }
  #pageBrand .brand_about h4 {
    font-size: 23px;
    margin: 0 auto 30px;
  }
  #pageBrand .brand_about-img {
    width: 60%;
    margin: 0 auto 30px;
  }
  #pageBrand .brand_about p {
    width: 80%;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .brand_about {
    padding: 40px 0;
  }
  #pageBrand .brand_about h4 {
    font-size: 18px;
    margin: 0 auto 10px;
  }
  #pageBrand .brand_about-img {
    width: 100%;
    margin: 0 auto 10px;
  }
  #pageBrand .brand_about p {
    width: 100%;
  }
}
#pageBrand .brand_ctns {
  padding: 80px 0 120px;
  color: #5d6164;
}
#pageBrand .brand_ctns h4 {
  font-size: 23px;
  margin: 0 0 100px;
  text-align: center;
  line-height: 1.5;
}
#pageBrand .brand_ctns-icon {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 80px;
}
#pageBrand .brand_ctns-icon-item {
  display: block;
  width: 163px;
}
#pageBrand .brand_ctns-icon-item:first-child {
  width: 395px;
  margin: 0 100px 0 0;
}
#pageBrand .brand_ctns-txt {
  display: block;
  width: 60%;
  margin: 0 auto 50px;
  line-height: 1.5;
}
#pageBrand .brand_ctns small {
  display: block;
  text-align: right;
  font-size: 12px;
  margin: 0 0 50px;
}
#pageBrand .brand_ctns-about {
  border-top: 1px solid #231815;
  padding: 50px 0 0;
  margin: 0 0 80px;
}
#pageBrand .brand_ctns-about:nth-of-type(2) {
  margin: 0;
}
#pageBrand .brand_ctns-about h5 {
  text-align: center;
  font-size: 18px;
  margin: 0 0 50px;
}
#pageBrand .brand_ctns-about-list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#pageBrand .brand_ctns-about-list-item {
  display: block;
  width: 47%;
  margin: 0 0 30px;
}
#pageBrand .brand_ctns-about-list-item:nth-child(n+3) {
  margin: 0;
}
#pageBrand .brand_ctns-about-list-item p {
  text-align: center;
  margin: 10px 0 0;
  font-size: 15px;
  line-height: 1.5;
}
@media screen and (max-width: 1025px) {
  #pageBrand .brand_ctns {
    padding: 60px 0 80px;
  }
  #pageBrand .brand_ctns h4 {
    margin: 0 0 50px;
  }
  #pageBrand .brand_ctns-icon {
    margin: 0 0 50px;
  }
  #pageBrand .brand_ctns-icon-item {
    width: 100px;
  }
  #pageBrand .brand_ctns-icon-item:first-child {
    width: 250px;
    margin: 0 50px 0 0;
  }
  #pageBrand .brand_ctns-txt {
    width: 100%;
    margin: 0 auto 30px;
  }
  #pageBrand .brand_ctns small {
    font-size: 12px;
    margin: 0 0 40px;
  }
  #pageBrand .brand_ctns-about {
    padding: 50px 0 0;
    margin: 0 0 80px;
  }
  #pageBrand .brand_ctns-about h5 {
    font-size: 16px;
    margin: 0 0 40px;
  }
  #pageBrand .brand_ctns-about-list-item {
    width: 47%;
    margin: 0 0 30px;
  }
  #pageBrand .brand_ctns-about-list-item:nth-child(n+3) {
    margin: 0;
  }
  #pageBrand .brand_ctns-about-list-item p {
    line-height: 1.5;
    font-size: 14px;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .brand_ctns {
    padding: 40px 0 50px;
  }
  #pageBrand .brand_ctns h4 {
    font-size: 20px;
  }
  #pageBrand .brand_ctns-icon {
    display: block;
    margin: 0 0 40px;
  }
  #pageBrand .brand_ctns-icon-item {
    display: block;
    margin: 0 auto;
  }
  #pageBrand .brand_ctns-icon-item:first-child {
    margin: 0 auto 40px;
  }
  #pageBrand .brand_ctns-txt {
    width: 90%;
    margin: 0 auto 30px;
  }
  #pageBrand .brand_ctns small {
    font-size: 12px;
    margin: 0 0 30px;
  }
  #pageBrand .brand_ctns-about {
    padding: 40px 0 0;
    margin: 0 0 40px;
  }
  #pageBrand .brand_ctns-about:nth-of-type(2) {
    margin: 0;
  }
  #pageBrand .brand_ctns-about h5 {
    margin: 0 0 30px;
  }
  #pageBrand .brand_ctns-about-list-item {
    width: 48%;
    margin: 0 0 30px;
  }
  #pageBrand .brand_ctns-about-list-item p {
    font-size: 11px;
  }
}
#pageBrand .brand_develop {
  padding: 100px 0;
  color: #5d6164;
}
#pageBrand .brand_develop h5 {
  text-align: center;
  font-size: 25px;
  margin: 0 auto 40px;
}
#pageBrand .brand_develop p {
  display: block;
  line-height: 1.5;
  width: 60%;
  margin: 0 auto 50px;
  font-size: 15px;
}
#pageBrand .brand_develop-list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#pageBrand .brand_develop-list-item {
  display: block;
  width: 31%;
}
#pageBrand .brand_develop-list-item h6 {
  border: 1px solid #5D6164;
  font-size: 16px;
  padding: 10px 0;
  margin: 0 0 15px;
  text-align: center;
}
#pageBrand .brand_develop-list-item dl {
  margin: 10px 0 0;
}
#pageBrand .brand_develop-list-item dl dt {
  font-size: 12px;
  text-align: center;
  line-height: 1.3;
  margin: 0 0 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#pageBrand .brand_develop-list-item dl dd {
  line-height: 1.5;
  font-size: 14px;
}
@media screen and (max-width: 1025px) {
  #pageBrand .brand_develop {
    padding: 70px 0 100px;
  }
  #pageBrand .brand_develop h5 {
    line-height: 1.5;
    margin: 0 auto 20px;
  }
  #pageBrand .brand_develop p {
    width: 90%;
    margin: 0 auto 40px;
    font-size: 15px;
  }
  #pageBrand .brand_develop-list-item {
    width: 32%;
  }
  #pageBrand .brand_develop-list-item h6 {
    font-size: 15px;
  }
  #pageBrand .brand_develop-list-item dl dt {
    font-size: 12px;
  }
}
@media screen and (max-width: 750px) {
  #pageBrand .brand_develop {
    padding: 40px 0;
  }
  #pageBrand .brand_develop h5 {
    font-size: 20px;
  }
  #pageBrand .brand_develop p {
    width: 100%;
    margin: 0 auto 30px;
    font-size: 15px;
  }
  #pageBrand .brand_develop-list {
    display: block;
  }
  #pageBrand .brand_develop-list-item {
    width: 100%;
    margin: 0 0 30px;
  }
  #pageBrand .brand_develop-list-item:last-child {
    margin: 0;
  }
  #pageBrand .brand_develop-list-item h6 {
    font-size: 14px;
  }
}
#pageMap .map_wrap-2 {
  margin-top: 10rem;
}
#pageMap .map_wrap-2 .map {
  border: none !important;
}
#pageMap .map_wrap .map_box .ttl {
  color: #fff;
  background: #5d6164;
  text-align: center;
  font-size: 2rem;
  padding: 1rem 0;
}
#pageMap .map_wrap .map_box .map {
  border: 1px solid rgba(93, 97, 100, 0.3490196078);
  margin: 1.6rem 0 0;
}
#pageMap .map_wrap .map_box .btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#pageMap .map_wrap .map_box .btn {
  -webkit-transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  transition: all 400ms cubic-bezier(0.36, 0.1, 0.16, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30rem;
  height: 6rem;
  text-align: center;
  border: 1px solid rgba(93, 97, 100, 0.831372549);
  font-size: 1.6rem;
  line-height: 1.5;
  margin: 8rem 1rem 0;
}
#pageMap .map_wrap .map_box .btn:hover {
  background: rgba(93, 97, 100, 0.831372549);
  color: #fff;
}
@media screen and (max-width: 750px) {
  #pageMap .map_wrap .map_box .ttl {
    font-size: 3rem;
    padding: 1.6rem 0;
  }
  #pageMap .map_wrap .map_box .map {
    position: relative;
    margin: 2rem 0 0;
    white-space: nowrap;
    overflow: auto;
  }
  #pageMap .map_wrap .map_box .img {
    position: relative;
    width: 200%;
  }
  #pageMap .map_wrap .map_box .img img {
    width: 100%;
    display: block; /* 余計な下余白を防ぐ */
  }
  #pageMap .map_wrap .map_box .btn {
    width: 40rem;
    height: 8rem;
    font-size: 2.6rem;
    margin: 6rem auto 0;
  }
  #pageMap .map_wrap .map_box .scroll-hint-text {
    margin-top: 0;
  }
}
#pageOutline .outline_wrap .outline_area {
  margin: 0 0 14rem;
}
#pageOutline .outline_wrap .outline_area .ttl_box .ttl {
  font-size: 2rem;
}
#pageOutline .outline_wrap .outline_area .outline_box {
  margin: 3rem auto 0;
}
#pageOutline .outline_wrap .outline_area .outline_box table {
  width: 100%;
  border-top: solid 1px #CCCCCC;
}
#pageOutline .outline_wrap .outline_area .outline_box tr {
  border-bottom: solid 1px #CCCCCC;
}
#pageOutline .outline_wrap .outline_area .outline_box th,
#pageOutline .outline_wrap .outline_area .outline_box td {
  padding: 1.5rem 0rem 1.5rem 1.5rem;
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: left;
}
#pageOutline .outline_wrap .outline_area .outline_box th {
  width: 22rem;
  padding: 1.5rem 0rem 1.5rem 3rem;
}
#pageOutline .outline_wrap .outline_area .outline_box td {
  width: calc(100% - 22rem);
}
@media screen and (max-width: 750px) {
  #pageOutline .outline_wrap .outline_area .ttl_box .ttl {
    font-size: 3rem;
  }
  #pageOutline .outline_wrap .outline_area .outline_box th,
  #pageOutline .outline_wrap .outline_area .outline_box td {
    padding: 2rem 0rem 2rem 0rem;
    font-size: 2.2rem;
    letter-spacing: 0;
  }
  #pageOutline .outline_wrap .outline_area .outline_box td {
    padding: 2rem 0rem 2rem 2rem;
  }
  #pageOutline .outline_wrap .outline_area .outline_box th {
    width: 22rem;
    padding: 2rem 0rem 2rem 0rem;
  }
  #pageOutline .outline_wrap .outline_area .outline_box td {
    width: calc(100% - 22rem);
  }
  #pageOutline .outline_wrap .outline_area .info-box {
    width: auto;
  }
  #pageOutline .outline_wrap .outline_area .info-box .ttl {
    padding: 1.6rem 0;
    font-size: 2.6rem;
  }
  #pageOutline .outline_wrap .outline_area .info-box th,
  #pageOutline .outline_wrap .outline_area .info-box td {
    padding: 2rem 0rem 2rem 0rem;
    font-size: 2.2rem;
    letter-spacing: 0.01em;
  }
  #pageOutline .outline_wrap .outline_area .info-box td {
    padding: 2rem 0rem 2rem 2rem;
  }
  #pageOutline .outline_wrap .outline_area .info-box th {
    width: 20rem;
  }
  #pageOutline .outline_wrap .outline_area .info-box td {
    width: calc(100% - 20rem);
  }
  #pageOutline .outline_wrap .outline_area .note-box {
    width: 100%;
    padding: 2rem 0rem 2rem 0rem;
  }
  #pageOutline .outline_wrap .outline_area .note-box .note {
    font-size: 2.2rem;
    letter-spacing: 0.01em;
  }
}
#pageOutline .notice_wrap {
  padding: 2rem 0 0;
}
#pageOutline .notice_wrap .notice_box {
  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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}
#pageOutline .notice_wrap .notice_box .left {
  width: 12rem;
  padding: 2.4rem 0;
  border: solid 1px #ccc;
}
#pageOutline .notice_wrap .notice_box .left p {
  font-size: 1.5rem;
  text-align: center;
}
#pageOutline .notice_wrap .notice_box .right {
  width: calc(100% - 14rem);
}
#pageOutline .notice_wrap .notice_box .right p {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.5;
}
#pageOutline .notice_wrap .note_box {
  margin: 5rem 0 0;
}
#pageOutline .notice_wrap .note_box .note {
  font-size: 1.4rem;
}
@media screen and (max-width: 750px) {
  #pageOutline .notice_wrap .notice_box {
    display: block;
  }
  #pageOutline .notice_wrap .notice_box .left {
    width: 100%;
    padding: 1.2rem 0;
    margin: 0 0 2rem;
  }
  #pageOutline .notice_wrap .notice_box .left p {
    font-size: 2.6rem;
  }
  #pageOutline .notice_wrap .notice_box .right {
    width: 100%;
  }
  #pageOutline .notice_wrap .notice_box .right p {
    font-size: 2.4rem;
    line-height: 1.6;
  }
  #pageOutline .notice_wrap .note_box .note {
    font-size: 2.4rem;
    letter-spacing: 0.1em;
    line-height: 1.5;
  }
}
#pageOutline .sec-updata {
  margin: 6rem 0 0;
}
#pageOutline .sec-updata .updata-box .txt {
  font-size: 1.4rem;
  text-align: right;
  line-height: 1.6;
}
@media screen and (max-width: 750px) {
  #pageOutline .sec-updata .updata-box {
    width: auto;
  }
  #pageOutline .sec-updata .updata-box .txt {
    font-size: 2.4rem;
  }
}