@charset "UTF-8";
/*--------------------------------------------
  common
-------------------------------------------- */
.location {
  position: relative;
}

.c-title--page--full {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .c-title--page--full {
    -ms-grid-rows: calc(50vh - clamp(59.2px, 5.331vw, 88.8px)) 100vh;
    grid-template-rows: calc(50vh - clamp(59.2px, 5.331vw, 88.8px)) 100vh;
  }
}
@media screen and (max-width: 768px) {
  .c-title--page--full__image {
    -o-object-position: 85% center;
       object-position: 85% center;
  }
}

.txt--ttl {
  font-family: "futura-pt", sans-serif;
  font-weight: 300 !important;
  color: #745f49;
  font-size: clamp(30.4px, 2.738vw, 45.6px);
  letter-spacing: 0.05em;
  line-height: 1.26;
}
@media screen and (max-width: 768px) {
  .txt--ttl {
    font-size: clamp(24px, 8vw, 36px);
  }
}

.txt--main {
  font-family: "Zen Old Mincho", serif;
  color: #2b2b2b;
  font-size: clamp(20px, 1.801vw, 30px);
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .txt--main {
    font-size: clamp(16px, 5.333vw, 24px);
  }
}

.txt--sub {
  font-family: "Zen Old Mincho", serif;
  color: #2b2b2b;
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 2.5;
}
@media screen and (max-width: 768px) {
  .txt--sub {
    font-size: clamp(10.4px, 3.467vw, 15.6px);
    letter-spacing: 0.05em;
    line-height: 2.15;
  }
}

img {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .l-content .swiper-pagination {
    gap: 0 clamp(22.4px, 2.017vw, 33.6px);
    -webkit-margin-before: min(4.323vw, 72px);
            margin-block-start: min(4.323vw, 72px);
  }
}
@media screen and (max-width: 768px) {
  .l-content .swiper-pagination {
    gap: 0 clamp(22.4px, 7.467vw, 33.6px);
    -webkit-margin-before: min(12vw, 54px);
            margin-block-start: min(12vw, 54px);
  }
}
.l-content .swiper-pagination-bullet {
  background-color: transparent;
  border: 1px solid #745f49;
}
@media screen and (min-width: 769px) {
  .l-content .swiper-pagination-bullet {
    width: clamp(11.2px, 1.009vw, 16.8px);
    height: clamp(11.2px, 1.009vw, 16.8px);
  }
}
@media screen and (max-width: 768px) {
  .l-content .swiper-pagination-bullet {
    width: clamp(11.2px, 3.733vw, 16.8px);
    height: clamp(11.2px, 3.733vw, 16.8px);
  }
}
.l-content .swiper-pagination-bullet-active {
  background-color: #745f49;
}
.l-content .swiper-slide img {
  width: 100%;
}
.l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(1) {
  font-family: "Zen Old Mincho", serif;
  color: #745f49;
  font-weight: 400;
  font-size: clamp(16px, 1.441vw, 24px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(1) {
    font-size: clamp(14.4px, 4.8vw, 21.6px);
  }
}
.l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(1) span {
  color: #745f49;
  font-weight: 400;
  font-size: clamp(11.2px, 1.009vw, 16.8px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(1) span {
    font-size: clamp(9.6px, 3.2vw, 14.4px);
  }
}
.l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(2) {
  display: block;
  font-family: "Zen Old Mincho", serif;
  color: #5a5a5a;
  font-weight: 400;
  font-size: clamp(11.2px, 1.009vw, 16.8px);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .l-content .swiper-slide p:nth-of-type(1) > span:nth-of-type(2) {
    font-size: clamp(9.6px, 3.2vw, 14.4px);
  }
}

/*--------------------------------------------
  POSITION
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .position {
    -webkit-margin-before: min(8.213vw, 136.8px);
            margin-block-start: min(8.213vw, 136.8px);
  }
}
@media screen and (max-width: 768px) {
  .position {
    -webkit-margin-before: min(22.133vw, 99.6px);
            margin-block-start: min(22.133vw, 99.6px);
  }
}
@media screen and (max-width: 768px) {
  .position .l-inner {
    padding-inline: 0;
  }
}
.position .txt--ttl {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .position .box01 {
    -webkit-margin-before: min(6.34vw, 105.6px);
            margin-block-start: min(6.34vw, 105.6px);
  }
}
@media screen and (max-width: 768px) {
  .position .box01 {
    -webkit-margin-before: min(9.6vw, 43.2px);
            margin-block-start: min(9.6vw, 43.2px);
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item01 {
    padding-inline: min(5.333vw, 24px);
  }
}
.position .box01 .item01 .txt--main {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .position .box01 .item01 .txt--sub {
    -webkit-margin-before: min(2.161vw, 36px);
            margin-block-start: min(2.161vw, 36px);
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item01 .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.position .box01 .item02 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .position .box01 .item02 {
    -ms-grid-columns: 1fr min(2.161vw, 36px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(2.161vw, 36px);
    -webkit-margin-before: min(7.133vw, 118.8px);
            margin-block-start: min(7.133vw, 118.8px);
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(5.067vw, 22.8px);
    -webkit-margin-before: min(11.467vw, 51.6px);
            margin-block-start: min(11.467vw, 51.6px);
  }
}
.position .box01 .item02 li {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .position .box01 .item02 li {
    gap: min(1.153vw, 19.2px);
  }
}
.position .box01 .item02 li figure {
  position: relative;
  width: 100%;
}
.position .box01 .item02 li figure figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  padding-inline: 1em;
  padding-block: 0.5em;
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li .figcaption span {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li:nth-of-type(1) {
    -ms-grid-columns: 1fr clamp(100px, 33.333vw, 150px);
    grid-template-columns: 1fr clamp(100px, 33.333vw, 150px);
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li:nth-of-type(1) .figcaption {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-block: auto 0;
    padding-inline: min(2.667vw, 12px) 0;
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li:nth-of-type(2) {
    -ms-grid-columns: clamp(100px, 33.333vw, 150px) 1fr;
    grid-template-columns: clamp(100px, 33.333vw, 150px) 1fr;
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li:nth-of-type(2) figure {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
  }
}
@media screen and (max-width: 768px) {
  .position .box01 .item02 li:nth-of-type(2) .figcaption {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-block: auto 0;
    padding-inline: min(2.667vw, 12px);
    text-align: right;
  }
}
.position .box02 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .position .box02 {
    -ms-grid-columns: 1fr min(2.233vw, 37.2px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: auto min(4.323vw, 72px) 1fr;
    grid-template-rows: auto 1fr;
    gap: min(4.323vw, 72px) min(2.233vw, 37.2px);
    -webkit-margin-before: min(7.853vw, 130.8px);
            margin-block-start: min(7.853vw, 130.8px);
  }
  .position .box02 > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .position .box02 > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .position .box02 > *:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .position .box02 > *:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 {
    -ms-grid-columns: 1fr 0 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(12.533vw, 56.4px) 0;
    -webkit-margin-before: min(18.4vw, 82.8px);
            margin-block-start: min(18.4vw, 82.8px);
  }
}
.position .box02 .item01 {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 769px) {
  .position .box02 .item01 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item01 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    padding-inline: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item01 .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .position .box02 .item01 .txt--sub {
    -webkit-margin-before: min(2.161vw, 36px);
            margin-block-start: min(2.161vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item01 .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.position .box02 .item02 {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 769px) {
  .position .box02 .item02 {
    margin-block: auto min(7.853vw, 130.8px);
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item02 {
    width: 66.6666666667vw;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-inline: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .position .box02 .item02 figcaption {
    text-align: right;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item02 figcaption {
    padding-inline: 1em;
  }
}
.position .box02 .item03 {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 769px) {
  .position .box02 .item03 {
    width: 60%;
    margin-block: auto 0;
    margin-inline: auto max(-70px, -5.043vw);
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item03 {
    -webkit-margin-before: 51.2vw;
            margin-block-start: 51.2vw;
    padding-inline: min(2.667vw, 12px) 0;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-column: 2/3;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
@media screen and (max-width: 768px) {
  .position .box02 .item03 figcaption {
    text-align: right;
    padding-inline: 1em;
  }
}

/*--------------------------------------------
  SHOPPING & GOURMET
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .shopping_gourmet {
    -webkit-margin-before: min(9.366vw, 156px);
            margin-block-start: min(9.366vw, 156px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet {
    -webkit-margin-before: min(24.533vw, 110.4px);
            margin-block-start: min(24.533vw, 110.4px);
  }
}
.shopping_gourmet .txt--ttl {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box01 {
    -webkit-margin-before: min(7.277vw, 121.2px);
            margin-block-start: min(7.277vw, 121.2px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 {
    -webkit-margin-before: min(9.6vw, 43.2px);
            margin-block-start: min(9.6vw, 43.2px);
  }
}
.shopping_gourmet .box01 .item01 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box01 .item01 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 .item01 {
    gap: min(3.467vw, 15.6px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box01 .item01 > div {
    margin-block: auto;
    margin-inline: 0 auto;
    padding-inline: min(4.899vw, 81.6px);
    padding-block: min(1.153vw, 19.2px) 0;
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 .item01 > div {
    padding-inline: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 .item01 > div .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box01 .item01 > div .txt--sub {
    -webkit-margin-before: min(2.161vw, 36px);
            margin-block-start: min(2.161vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 .item01 > div .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.shopping_gourmet .box01 .item01 figure {
  width: 100%;
  position: relative;
}
.shopping_gourmet .box01 .item01 figcaption {
  padding-inline: 1em;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box01 .item01 figcaption {
    position: absolute;
    bottom: 0;
    left: 0;
    padding-block: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box01 .item01 figcaption {
    text-align: right;
    color: #2b2b2b;
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box02 {
    -webkit-margin-before: min(14.625vw, 243.6px);
            margin-block-start: min(14.625vw, 243.6px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box02 {
    -webkit-margin-before: min(10.667vw, 48px);
            margin-block-start: min(10.667vw, 48px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box02 p {
    -webkit-margin-before: min(0.865vw, 14.4px);
            margin-block-start: min(0.865vw, 14.4px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box02 p {
    -webkit-margin-before: min(1.867vw, 8.4px);
            margin-block-start: min(1.867vw, 8.4px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 {
    background: url(/asset/img/common/bg.webp) repeat top center;
    background-size: max(100%, 1388px) auto;
    -webkit-margin-before: min(10.086vw, 168px);
            margin-block-start: min(10.086vw, 168px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 {
    background: url(/asset/img/common/bg_sp.webp) repeat top center;
    background-size: 100% auto;
    padding-block: min(17.6vw, 79.2px) min(13.6vw, 61.2px);
    -webkit-margin-before: min(12.533vw, 56.4px);
            margin-block-start: min(12.533vw, 56.4px);
  }
}
.shopping_gourmet .box03 .item01 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item01 {
    -ms-grid-columns: 1fr min(2.233vw, 37.2px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(2.233vw, 37.2px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item01 {
    gap: min(7.733vw, 34.8px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item01 > div {
    margin-block: auto 0;
    padding-inline: 0 min(5.548vw, 92.4px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item01 > div {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
.shopping_gourmet .box03 .item01 > div .txt--main {
  color: #745f49;
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item01 > div .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item01 > div .txt--sub {
    -webkit-margin-before: min(2.954vw, 49.2px);
            margin-block-start: min(2.954vw, 49.2px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item01 > div .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.shopping_gourmet .box03 .item01 figure {
  position: relative;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item01 figcaption {
    position: absolute;
    bottom: min(0.36vw, 6px);
    right: min(0.72vw, 12px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item01 figcaption {
    text-align: right;
    color: #2b2b2b;
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item02 {
    -webkit-margin-before: min(9.078vw, 151.2px);
            margin-block-start: min(9.078vw, 151.2px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item02 {
    -webkit-margin-before: min(12.267vw, 55.2px);
            margin-block-start: min(12.267vw, 55.2px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item02 p {
    -webkit-margin-before: min(0.865vw, 14.4px);
            margin-block-start: min(0.865vw, 14.4px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item02 p {
    -webkit-margin-before: min(1.867vw, 8.4px);
            margin-block-start: min(1.867vw, 8.4px);
  }
}
.shopping_gourmet .box03 .item03 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item03 {
    -ms-grid-columns: 1fr min(2.233vw, 37.2px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(2.233vw, 37.2px);
    -webkit-margin-before: min(7.565vw, 126px);
            margin-block-start: min(7.565vw, 126px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item03 {
    gap: min(4.267vw, 19.2px);
    -webkit-margin-before: min(14.133vw, 63.6px);
            margin-block-start: min(14.133vw, 63.6px);
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item03 > div {
    margin-block: max(-12px, -0.865vw) auto;
    padding-inline: min(3.818vw, 63.6px) 0;
    padding-block: 0 min(3.602vw, 60px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item03 > div {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
.shopping_gourmet .box03 .item03 > div .txt--main {
  color: #745f49;
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item03 > div .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item03 > div .txt--sub {
    -webkit-margin-before: min(2.954vw, 49.2px);
            margin-block-start: min(2.954vw, 49.2px);
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item03 > div .txt--sub {
    -webkit-margin-before: min(6.933vw, 31.2px);
            margin-block-start: min(6.933vw, 31.2px);
  }
}
.shopping_gourmet .box03 .item03 figure {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-block: auto 0;
}
@media screen and (min-width: 769px) {
  .shopping_gourmet .box03 .item03 figcaption {
    position: absolute;
    bottom: 0;
    left: 100%;
    padding-inline: 1em;
    padding-block: 1em;
    white-space: nowrap;
  }
}
@media screen and (max-width: 768px) {
  .shopping_gourmet .box03 .item03 figcaption {
    text-align: right;
  }
}

/*--------------------------------------------
  NATURE & CULTURE
-------------------------------------------- */
@media screen and (min-width: 769px) {
  .nature_culture {
    -webkit-margin-before: min(11.527vw, 192px);
            margin-block-start: min(11.527vw, 192px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture {
    -webkit-margin-before: min(20.267vw, 91.2px);
            margin-block-start: min(20.267vw, 91.2px);
  }
}
.nature_culture .txt--ttl {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .nature_culture .box01 {
    -webkit-margin-before: min(8.069vw, 134.4px);
            margin-block-start: min(8.069vw, 134.4px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box01 {
    -webkit-margin-before: min(14.133vw, 63.6px);
            margin-block-start: min(14.133vw, 63.6px);
  }
}
.nature_culture .box01 .item01 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .nature_culture .box01 .item01 {
    -ms-grid-columns: min(42.795vw, 712.8px) 50%;
    grid-template-columns: min(42.795vw, 712.8px) 50%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box01 .item01 {
    gap: min(9.333vw, 42px);
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box01 .item01 > div {
    margin-block: auto;
    margin-inline: 0 auto;
    padding-inline: 0 min(4.899vw, 81.6px);
    padding-block: 0 min(1.441vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box01 .item01 > div {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    padding-inline: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box01 .item01 > div .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box01 .item01 > div .txt--sub {
    -webkit-margin-before: min(2.161vw, 36px);
            margin-block-start: min(2.161vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box01 .item01 > div .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.nature_culture .box01 .item01 figure {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.nature_culture .box01 .item01 figcaption {
  position: relative;
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
.nature_culture .box01 .item01 figcaption span {
  padding-inline: 1em;
  padding-block: 0.5em;
  display: block;
  text-align: right;
}
.nature_culture .box01 .item01 figcaption span:nth-of-type(1) {
  position: absolute;
  bottom: 100%;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .nature_culture .box02 {
    -webkit-margin-before: min(15.706vw, 261.6px);
            margin-block-start: min(15.706vw, 261.6px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box02 {
    -webkit-margin-before: min(9.6vw, 43.2px);
            margin-block-start: min(9.6vw, 43.2px);
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box02 p {
    -webkit-margin-before: min(0.865vw, 14.4px);
            margin-block-start: min(0.865vw, 14.4px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box02 p {
    -webkit-margin-before: min(1.867vw, 8.4px);
            margin-block-start: min(1.867vw, 8.4px);
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box03 {
    -webkit-margin-before: min(7.853vw, 130.8px);
            margin-block-start: min(7.853vw, 130.8px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 {
    -webkit-margin-before: min(15.2vw, 68.4px);
            margin-block-start: min(15.2vw, 68.4px);
  }
}
.nature_culture .box03 .item01 {
  display: -ms-grid;
  display: grid;
}
@media screen and (min-width: 769px) {
  .nature_culture .box03 .item01 {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 .item01 {
    gap: min(6.133vw, 27.6px);
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box03 .item01 > div {
    margin-block: auto;
    margin-inline: 0 auto;
    padding-inline: min(4.899vw, 81.6px);
    padding-block: 0 min(1.801vw, 30px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 .item01 > div {
    padding-inline: min(5.333vw, 24px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 .item01 > div .txt--main {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box03 .item01 > div .txt--sub {
    -webkit-margin-before: min(2.233vw, 37.2px);
            margin-block-start: min(2.233vw, 37.2px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 .item01 > div .txt--sub {
    -webkit-margin-before: min(6.4vw, 28.8px);
            margin-block-start: min(6.4vw, 28.8px);
  }
}
.nature_culture .box03 .item01 figure {
  width: 100%;
}
.nature_culture .box03 .item01 figcaption {
  padding-inline: 1em;
}
@media screen and (max-width: 768px) {
  .nature_culture .box03 .item01 figcaption {
    text-align: right;
  }
}
@media screen and (min-width: 769px) {
  .nature_culture .box04 {
    -webkit-margin-before: min(11.095vw, 184.8px);
            margin-block-start: min(11.095vw, 184.8px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box04 {
    -webkit-margin-before: min(10.133vw, 45.6px);
            margin-block-start: min(10.133vw, 45.6px);
  }
}
.nature_culture .box04 li figure {
  width: 100%;
}
.nature_culture .box04 li figcaption {
  min-height: 1lh;
  text-align: right;
}
.nature_culture .box04 li .txt--detail {
  color: #5a5a5a;
  font-weight: 400;
  letter-spacing: 0.06em;
  -webkit-border-before: 1px solid #2b2b2b;
          border-block-start: 1px solid #2b2b2b;
}
@media screen and (min-width: 769px) {
  .nature_culture .box04 li .txt--detail {
    font-size: clamp(9.6px, 0.865vw, 14.4px);
    -webkit-padding-before: min(1.081vw, 18px);
            padding-block-start: min(1.081vw, 18px);
    -webkit-margin-before: min(1.081vw, 18px);
            margin-block-start: min(1.081vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .nature_culture .box04 li .txt--detail {
    font-size: clamp(8px, 2.667vw, 12px);
    letter-spacing: 0.03em;
    line-height: 1.5;
    -webkit-padding-before: min(5.333vw, 24px);
            padding-block-start: min(5.333vw, 24px);
    -webkit-margin-before: min(4vw, 18px);
            margin-block-start: min(4vw, 18px);
  }
}
.nature_culture .box04 li .txt--detail span {
  display: block;
}

/*--------------------------------------------
  LIFE INFORMATION
-------------------------------------------- */
.lifeinfo {
  position: relative;
  z-index: 2;
  padding-top: min(9.438vw, 157.2px);
  padding-bottom: min(3.602vw, 60px);
  background-color: rgba(43, 43, 43, 0.1);
  -webkit-margin-before: min(7.565vw, 126px);
          margin-block-start: min(7.565vw, 126px);
}
@media screen and (max-width: 768px) {
  .lifeinfo {
    padding-top: min(15.2vw, 68.4px);
    padding-bottom: min(13.333vw, 60px);
    -webkit-margin-before: min(16vw, 72px);
            margin-block-start: min(16vw, 72px);
  }
}
.lifeinfo__title {
  max-width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .lifeinfo__title {
    max-width: 92%;
    margin: 0 auto;
  }
}
.lifeinfo__title h2 {
  max-width: var(--txtlength);
  text-align: center;
  border: 0;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .lifeinfo__title h2 {
    padding: 0;
    margin: 0;
  }
}
@media screen and (min-width: 769px) {
  .lifeinfo__wrap {
    margin: min(7.853vw, 130.8px) auto 0;
  }
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap {
    margin: min(12.533vw, 56.4px) auto 0;
  }
}
.lifeinfo__wrap .tab_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: clamp(8px, 0.72vw, 12px);
     -moz-column-gap: clamp(8px, 0.72vw, 12px);
          column-gap: clamp(8px, 0.72vw, 12px);
  max-width: min(115.274vw, 1920px);
  width: 85.6%;
  margin: 0 auto;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .tab_area {
    max-width: 90%;
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px;
    margin: 0 auto;
  }
}
.lifeinfo__wrap .tab_area label {
  position: relative;
  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;
  gap: 10px;
  width: 20%;
  min-height: clamp(40px, 3.602vw, 60px);
  padding: min(0.72vw, 12px);
  font-family: "Zen Old Mincho", serif;
  color: #745f49;
  background-color: #fff;
  font-size: clamp(11.2px, 1.009vw, 16.8px);
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .tab_area label {
    width: calc(50% - 5px);
    min-height: clamp(29.6px, 9.867vw, 44.4px);
    padding: min(2.667vw, 12px) min(1.333vw, 6px);
    font-size: clamp(10.4px, 3.467vw, 15.6px);
  }
}
.lifeinfo__wrap .tab_area label:hover, .lifeinfo__wrap .tab_area label.active {
  opacity: 1;
  background: #745f49;
}
.lifeinfo__wrap .tab_area label:hover span, .lifeinfo__wrap .tab_area label.active span {
  color: #fff;
}
.lifeinfo__wrap .tab_area label.active {
  pointer-events: none;
}
.lifeinfo__wrap .tab_area label svg {
  width: 14px;
}
.lifeinfo__wrap .tab_area label > span > span {
  display: inline-block;
}
.lifeinfo__wrap .tab_area label .ls {
  letter-spacing: -0.05em;
}
.lifeinfo__wrap .panel_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 769px) {
  .lifeinfo__wrap .panel_wrap {
    -webkit-border-before: 1px solid #745f49;
            border-block-start: 1px solid #745f49;
    -webkit-padding-before: min(3.53vw, 58.8px);
            padding-block-start: min(3.53vw, 58.8px);
  }
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_wrap {
    display: block;
    -webkit-padding-before: min(5.333vw, 24px);
            padding-block-start: min(5.333vw, 24px);
  }
}
.lifeinfo__wrap .panel_wrap .tab_panel {
  display: none;
}
.lifeinfo__wrap .panel_wrap .tab_panel.active {
  display: block;
}
.lifeinfo__wrap .panel_wrap .mapbox {
  width: calc(100% - clamp(320px, 28.818vw, 480px));
  height: 600px;
  border-right: solid 1px #eeeeee;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_wrap .mapbox {
    width: 100%;
    height: 50vh;
  }
}
.lifeinfo__wrap .panel_area {
  padding: 0 min(2.161vw, 36px);
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_area {
    padding: min(5.333vw, 24px) min(5.333vw, 24px);
  }
}
.lifeinfo__wrap .panel_area .databox {
  width: calc(clamp(320px, 28.818vw, 480px) - min(4.323vw, 72px));
  max-height: 600px;
  overflow: hidden;
  overflow-y: scroll;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_area .databox {
    width: 100%;
    max-height: calc((clamp(19.2px, 6.4vw, 28.8px) + 22px) * 5);
  }
}
.lifeinfo__wrap .panel_area .databox::-webkit-scrollbar {
  width: 10px;
}
.lifeinfo__wrap .panel_area .databox {
  /*スクロールバーの軌道*/
}
.lifeinfo__wrap .panel_area .databox::-webkit-scrollbar-track {
  border-radius: 0;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
          box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}
.lifeinfo__wrap .panel_area .databox {
  /*スクロールバーの動く部分*/
}
.lifeinfo__wrap .panel_area .databox::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
          box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}
.lifeinfo__wrap .panel_area .data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: clamp(11.2px, 1.009vw, 16.8px) min(1.729vw, 28.8px);
  cursor: pointer;
  border-bottom: 1px solid #dbd6d4;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_area .data {
    position: relative;
    padding: 8px 8px;
  }
}
.lifeinfo__wrap .panel_area .data:hover {
  background: #fff;
}
.lifeinfo__wrap .panel_area .data p {
  font-family: "Zen Old Mincho", serif;
  letter-spacing: 0;
  line-height: 1.2;
}
.lifeinfo__wrap .panel_area .data_img {
  width: 19px;
  margin: 0 5px 0 0;
}
.lifeinfo__wrap .panel_area .data_img img {
  width: 100%;
  height: auto;
}
.lifeinfo__wrap .panel_area .data:first-of-type {
  border-top: none;
}
.lifeinfo__wrap .panel_area .data_txt {
  width: calc(100% - 25px);
}
.lifeinfo__wrap .panel_area .data_txt1 {
  font-size: clamp(12.8px, 1.153vw, 19.2px);
  text-align: left;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_area .data_txt1 {
    font-size: clamp(9.6px, 3.2vw, 14.4px);
  }
  .lifeinfo__wrap .panel_area .data_txt1 img {
    width: 10px;
  }
}
.lifeinfo__wrap .panel_area .data_txt2 {
  margin: 8px 0 0;
  font-size: clamp(9.6px, 0.865vw, 14.4px);
  text-align: left;
}
@media screen and (max-width: 768px) {
  .lifeinfo__wrap .panel_area .data_txt2 {
    margin: 5px 0 0;
    font-size: clamp(9.6px, 3.2vw, 14.4px);
  }
}
/*# sourceMappingURL=location.css.map */