/*! Writen  by SCSS */
@media screen and (max-width: 480px) {
  .inner_main {
    height: auto; } }
@media screen and (max-width: 480px) {
  .inner_main .img {
    object-fit: contain;
    width: 100%;
    height: auto; } }
.inner_main .cap {
  z-index: 10;
  bottom: 12%; }
  @media screen and (max-width: 480px) {
    .inner_main .cap {
      bottom: 7.5%; } }
  .inner_main .cap.lim {
    bottom: 12%; }
    @media screen and (max-width: 480px) {
      .inner_main .cap.lim {
        bottom: 7.5%; } }

div.wrap {
  padding-top: 0 !important; }

.contaner {
  padding-top: 0;
  margin-top: -4vw; }
  @media screen and (max-width: 480px) {
    .contaner {
      margin-top: -0.5vw; } }

.contents_wrap img {
  width: 100%; }

.img_c {
  position: relative; }
  .img_c .copy {
    position: absolute;
    inset: 0;
    padding: 40px; }
    @media screen and (max-width: 480px) {
      .img_c .copy {
        padding: 15px; } }
    .img_c .copy .t01 {
      color: #fff;
      font-size: clamp(18px, calc(44vw / 10.8), 44px);
      line-height: 1;
      letter-spacing: 0.04em;
      font-weight: 400;
      text-shadow: 0 0 8px rgba(0, 0, 0, 0.8); }
      @media screen and (max-width: 480px) {
        .img_c .copy .t01 {
          font-size: calc(23vw / 3.9); } }

@media screen and (max-width: 480px) {
  .sp_inn {
    width: calc(100% - 40px);
    margin-inline: auto; } }

.sec01 {
  /*.bg1 {
  		display: block;
  		position: absolute;
  		top:0;
  		left:0;
  		width: 100%;
  		height: 640px;
  		max-height: 50%;
  	&::after {
  		content: "";
  		position: absolute;
  		inset:0;
  		background: linear-gradient(0deg, rgba(#3f3d3d, 0), rgba(#3f3d3d, 1));
  	}
  		@include mq(1080){
  			height: calc(640vw / 10.8);
  		}
  		@include mq($br_sp){
  			height: 400px;
  		}
  	mask-image: url('../images/location/msk.svg');
  	mask-repeat: no-repeat;
  	mask-position: top center;
  	mask-size: 100% auto;
  }*/ }
  .sec01::before {
    mask-image: url("../images/location/msk.svg");
    mask-repeat: no-repeat;
    mask-position: top center;
    mask-size: 100% auto; }
  .sec01::after {
    display: none !important; }
  @media screen and (max-width: 480px) {
    .sec01 .sec_ttl_ja2 {
      font-size: calc(14.5vw / 3.9); } }
  .sec01 .inner,
  .sec01 .sp_inn {
    position: relative;
    z-index: 2; }
  .sec01 .box11 {
    padding: 30px 60px 0;
    margin-bottom: 10vh;
    background: rgba(255, 255, 255, 0.6);
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .sec01 .box11 {
        flex-direction: column;
        gap: 20px;
        padding: 25px 15px 0;
        margin-bottom: 10vw; } }
    .sec01 .box11 .img {
      width: calc(480% / 7.7);
      width: calc(380% / 7.7); }
      @media screen and (max-width: 480px) {
        .sec01 .box11 .img {
          width: 100%; } }
      .sec01 .box11 .img .cap11 {
        right: auto;
        left: 100%;
        width: 10em;
        text-align: left; }
        @media screen and (max-width: 480px) {
          .sec01 .box11 .img .cap11 {
            right: calc(-10% / 3.9);
            left: auto;
            text-align: right; } }
    .sec01 .box11 .txt {
      width: calc(250% / 7.7);
      width: calc(350% / 7.7);
      position: relative; }
      @media screen and (max-width: 480px) {
        .sec01 .box11 .txt {
          width: 100%; } }
      .sec01 .box11 .txt::after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 1px;
        height: calc(100% - 30px);
        background: #fff; }
        @media screen and (max-width: 480px) {
          .sec01 .box11 .txt::after {
            display: none; } }
      .sec01 .box11 .txt .t1 {
        padding-bottom: 0.6em;
        margin-bottom: 0.6em;
        border-bottom: solid 1px #fff;
        font-size: clamp(13px, calc(19vw / 10.8), 19px);
        line-height: 1.6;
        letter-spacing: 0.1em;
        font-weight: 600;
        padding-left: 25px; }
        @media screen and (max-width: 480px) {
          .sec01 .box11 .txt .t1 {
            font-size: calc(15vw / 3.9);
            padding-left: 0;
            border-color: #333; } }
      .sec01 .box11 .txt .t2 {
        font-size: clamp(11px, calc(16vw / 10.8), 16px);
        line-height: 2.4;
        letter-spacing: 0.1em;
        font-weight: 600;
        padding-left: 25px; }
        @media screen and (max-width: 480px) {
          .sec01 .box11 .txt .t2 {
            font-size: calc(12vw / 3.9);
            line-height: 1.9;
            padding: 0; } }
  .sec01 .img4 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 10px; }
    @media screen and (max-width: 480px) {
      .sec01 .img4 {
        flex-direction: column;
        gap: 10px 0; } }
    .sec01 .img4 li {
      width: calc(535% / 10.8); }
      @media screen and (max-width: 480px) {
        .sec01 .img4 li {
          width: 75%;
          width: 80%;
          margin: 0 auto; } }
      .sec01 .img4 li .cap {
        bottom: 8%;
        right: 4%; }
  .sec01 .box13 {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .sec01 .box13 {
        flex-direction: column; } }
    .sec01 .box13 .img {
      width: calc(538% / 10.8); }
      @media screen and (max-width: 480px) {
        .sec01 .box13 .img {
          width: 100%; } }
      .sec01 .box13 .img figure {
        width: 100%;
        height: 100%; }
        .sec01 .box13 .img figure img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
    .sec01 .box13 .txt {
      width: calc(534% / 10.8);
      background: #dae2e7;
      padding: 25px 30px; }
      @media screen and (max-width: 480px) {
        .sec01 .box13 .txt {
          width: 100%;
          padding: 25px 15px; } }
      .sec01 .box13 .txt .t1 {
        font-size: clamp(10px, calc(24vw / 10.8), 24px);
        line-height: 1;
        letter-spacing: 0.1em;
        font-weight: 400;
        margin-bottom: 0.3em;
        padding-bottom: 0.3em;
        border-bottom: solid 1px #000; }
        @media screen and (max-width: 480px) {
          .sec01 .box13 .txt .t1 {
            font-size: calc(18vw / 3.9); } }
    .sec01 .box13 dl {
      font-size: clamp(10px, calc(12vw / 10.8), 12px);
      font-size: clamp(10px, calc(16vw / 10.8), 16px);
      line-height: 1.5;
      line-height: 1.7;
      font-weight: 600;
      display: flex; }
      @media screen and (max-width: 480px) {
        .sec01 .box13 dl {
          font-size: calc(12vw / 3.9);
          font-size: 9px;
          line-height: 1.5; } }
      .sec01 .box13 dl dt {
        width: 3em; }
      .sec01 .box13 dl dd {
        flex: 1; }
  .sec01 .img120 {
    margin-bottom: 0; }
    @media screen and (max-width: 480px) {
      .sec01 .img120 {
        margin: 40px -20px 0 !important;
        width: calc(100% + 40px); } }
  @media screen and (max-width: 480px) {
    .sec01 .img130 {
      margin: 65px -20px 20px !important;
      width: calc(100% + 40px); } }

.sec02 .sec_ttl_ja2 {
  font-size: clamp(12px, calc(18vw / 10.8), 18px);
  line-height: 1.6;
  margin-bottom: 1.5em; }
  @media screen and (max-width: 480px) {
    .sec02 .sec_ttl_ja2 {
      font-size: calc(14vw / 3.9); } }
@media screen and (max-width: 480px) {
  .sec02 .img210 {
    margin-left: -20px !important;
    margin-right: -20px !important;
    width: calc(100% + 40px); } }
@media screen and (max-width: 480px) {
  .sec02 .img213 {
    margin-left: -20px !important;
    margin-right: -20px !important;
    width: calc(100% + 40px); } }
.sec02 .img3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 30px; }
  .sec02 .img3 li {
    width: calc(430% / 8.9); }
    .sec02 .img3 li.w {
      width: 100%; }

.sec03 {
  padding-bottom: 0 !important; }
  .sec03::after {
    display: none !important; }
  .sec03 .box31 {
    display: grid;
    grid-template-columns: calc(218% / 10.8) calc(626% / 10.8) calc(218% / 10.8);
    grid-template-rows: repeat(2, auto);
    grid-column-gap: calc(9% / 10.8);
    grid-row-gap: 10px; }
    .sec03 .box31 li:nth-child(1) {
      grid-area: 1 / 2 / 3 / 3; }
    .sec03 .box31 li:nth-child(2) {
      grid-area: 1 / 1 / 2 / 2; }
    .sec03 .box31 li:nth-child(3) {
      grid-area: 2 / 1 / 3 / 2; }
    .sec03 .box31 li:nth-child(4) {
      grid-area: 1 / 3 / 2 / 4; }
    .sec03 .box31 li:nth-child(5) {
      grid-area: 2 / 3 / 3 / 4; }
    @media screen and (max-width: 480px) {
      .sec03 .box31 {
        display: block; }
        .sec03 .box31 li:nth-child(1) {
          width: 100%; }
        .sec03 .box31 li:nth-child(2) {
          display: none; }
        .sec03 .box31 li:nth-child(3) {
          display: none; }
        .sec03 .box31 li:nth-child(4) {
          display: none; }
        .sec03 .box31 li:nth-child(5) {
          display: none; } }
  .sec03 .box32 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 10px; }
    .sec03 .box32 li {
      width: calc(354% / 10.8); }
      @media screen and (max-width: 480px) {
        .sec03 .box32 li {
          width: 48%; } }
  .sec03 .sec_ttl_ja_s {
    display: block;
    text-align: center;
    line-height: 1.5;
    font-size: 14px;
    margin-top: 1.2em; }
    @media screen and (max-width: 480px) {
      .sec03 .sec_ttl_ja_s {
        margin-top: 1em;
        font-size: 12px; } }

@media screen and (max-width: 768px) {
  .sec04 .box41 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 15px 0; } }
.sec04 .box41 .imgs {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: calc(40%/8.9); }
  @media screen and (max-width: 768px) {
    .sec04 .box41 .imgs {
      flex-direction: column; } }
.sec04 .box41 .txts {
  display: flex;
  justify-content: space-between;
  align-items: stretch; }
  @media screen and (max-width: 768px) {
    .sec04 .box41 .txts {
      flex-direction: column-reverse;
      gap: 10px 0; } }
  .sec04 .box41 .txts .txt1 {
    background: linear-gradient(90deg, #f5f2dc, #ece6ba);
    padding: 1.5em 1em;
    font-size: calc(12vw/16);
    letter-spacing: 0.1em;
    line-height: 1.5; }
    @media screen and (max-width: 768px) {
      .sec04 .box41 .txts .txt1 {
        width: calc(160%/3.35); } }
    @media screen and (max-width: 480px) {
      .sec04 .box41 .txts .txt1 {
        font-size: calc(10vw / 3.9);
        font-size: calc(8.5vw / 3.9);
        font-size: calc(8.5vw / 3.9); } }
    .sec04 .box41 .txts .txt1 p {
      text-indent: -1em;
      padding-left: 1em; }
      .sec04 .box41 .txts .txt1 p + p {
        margin-top: 0.5em; }
  .sec04 .box41 .txts .txt2 {
    font-size: calc(13vw/16);
    letter-spacing: 0.2em;
    line-height: 1.7; }
    @media screen and (max-width: 768px) {
      .sec04 .box41 .txts .txt2 {
        width: 100%; } }
    @media screen and (max-width: 480px) {
      .sec04 .box41 .txts .txt2 {
        font-size: calc(12vw / 3.9);
        font-size: calc(11vw / 3.9); } }
    .sec04 .box41 .txts .txt2 .wh {
      color: #fff; }
.sec04 .box41.box41_1 .imgs .l_cnt {
  width: calc(518%/8.9); }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_1 .imgs .l_cnt {
      width: 100%;
      margin-bottom: 10px; } }
.sec04 .box41.box41_1 .imgs .r_cnt {
  width: calc(350%/8.9);
  display: flex;
  flex-direction: column; }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_1 .imgs .r_cnt {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      width: 100%; } }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_1 .imgs .r_cnt .img3, .sec04 .box41.box41_1 .imgs .r_cnt .img2 {
      width: calc(50% - 5px); } }
  .sec04 .box41.box41_1 .imgs .r_cnt .img3 {
    margin-top: auto; }
.sec04 .box41.box41_1 .txts .txt1 {
  width: calc(425%/8.9); }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_1 .txts .txt1 {
      width: 100%; } }
.sec04 .box41.box41_1 .txts .txt2 {
  width: calc(428%/8.9); }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_1 .txts .txt2 {
      width: 100%; } }
.sec04 .box41.box41_2 .imgs {
  flex-direction: row-reverse; }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_2 .imgs {
      flex-direction: column; } }
  .sec04 .box41.box41_2 .imgs .l_cnt {
    width: calc(540%/8.9); }
    @media screen and (max-width: 768px) {
      .sec04 .box41.box41_2 .imgs .l_cnt {
        width: 100%;
        margin-bottom: 10px; } }
  .sec04 .box41.box41_2 .imgs .r_cnt {
    width: calc(330%/8.9);
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 768px) {
      .sec04 .box41.box41_2 .imgs .r_cnt {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        width: 100%; } }
    @media screen and (max-width: 768px) {
      .sec04 .box41.box41_2 .imgs .r_cnt .img3, .sec04 .box41.box41_2 .imgs .r_cnt .img2 {
        width: calc(50% - 5px); } }
    .sec04 .box41.box41_2 .imgs .r_cnt .img3 {
      margin-top: auto; }
.sec04 .box41.box41_2 .txts .txt1 {
  width: calc(425%/8.9); }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_2 .txts .txt1 {
      width: 100%; } }
.sec04 .box41.box41_2 .txts .txt2 {
  width: calc(428%/8.9);
  letter-spacing: 0.1em; }
  @media screen and (max-width: 768px) {
    .sec04 .box41.box41_2 .txts .txt2 {
      width: 100%; } }
.sec04 .Gourmet_box {
  display: flex;
  justify-content: space-between; }
  .sec04 .Gourmet_box .img1 {
    width: 58.2%; }
  .sec04 .Gourmet_box .img2 {
    width: 39.4%; }
.sec04 .sec_ttl_ja_shop {
  width: 100%;
  margin: 0 auto;
  padding: 2px 10px;
  background-color: #fff;
  font-size: clamp(13px, calc(26vw / 10.8), 22px);
  margin-bottom: 18px; }
  @media screen and (max-width: 480px) {
    .sec04 .sec_ttl_ja_shop {
      line-height: 1.3;
      padding: 6px; } }
  .sec04 .sec_ttl_ja_shop .ttl_s {
    font-size: 12px;
    font-size: 14px; }
    @media screen and (max-width: 480px) {
      .sec04 .sec_ttl_ja_shop .ttl_s {
        font-size: 10px; } }
  .sec04 .sec_ttl_ja_shop.border {
    border: 1px solid #333; }

.sec05::after {
  height: 460px !important;
  max-height: 50%; }
  @media screen and (max-width: 1080px) {
    .sec05::after {
      height: calc(460vw / 10.8) !important; } }
  @media screen and (max-width: 480px) {
    .sec05::after {
      height: 400px !important; } }
.sec05 .box51 {
  display: grid;
  grid-template-columns: calc(284% / 8.9) calc(284% / 8.9) calc(284% / 8.9);
  grid-template-rows: repeat(2, auto);
  grid-column-gap: calc(19% / 8.9);
  grid-row-gap: calc(32% / 4.16); }
  .sec05 .box51 li:nth-child(1) {
    grid-area: 1 / 2 / 3 / 3; }
  .sec05 .box51 li:nth-child(2) {
    grid-area: 1 / 1 / 2 / 2; }
  .sec05 .box51 li:nth-child(3) {
    grid-area: 2 / 1 / 3 / 2; }
  .sec05 .box51 li:nth-child(4) {
    grid-area: 1 / 3 / 2 / 4; }
  .sec05 .box51 li:nth-child(5) {
    grid-area: 2 / 3 / 3 / 4; }
  @media screen and (max-width: 480px) {
    .sec05 .box51 {
      display: flex;
      gap: 15px 4%;
      flex-wrap: wrap; }
      .sec05 .box51 li {
        width: 48%; }
        .sec05 .box51 li:nth-child(1) {
          width: 100%; } }
.sec05 .map {
  margin: 60px auto;
  width: 80%; }
  @media screen and (max-width: 480px) {
    .sec05 .map {
      width: 100%;
      margin: 30px auto; } }
  .sec05 .map figure:not(.active) {
    display: none; }
.sec05 .tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px calc(20% / 8.9);
  margin-bottom: 30px; }
  @media screen and (max-width: 480px) {
    .sec05 .tab {
      gap: 10px 3%; } }
  .sec05 .tab li {
    cursor: pointer;
    font-size: clamp(11px, calc(18vw / 10.8), 18px);
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3em;
    width: calc(207% / 8.9);
    color: #fff;
    background: #989da0;
    position: relative;
    transition: all 0.3s ease-in-out; }
    @media screen and (max-width: 480px) {
      .sec05 .tab li {
        width: 48.5%;
        height: 3.8em;
        font-size: calc(12vw / 3.9); } }
    .sec05 .tab li::after {
      content: "";
      pointer-events: none;
      position: absolute;
      inset: 6px;
      border: solid 1px #fff;
      opacity: 0;
      transition: all 0.3s ease-in-out; }
      @media screen and (max-width: 480px) {
        .sec05 .tab li::after {
          inset: 4px; } }
    .sec05 .tab li:hover::after, .sec05 .tab li.active::after {
      opacity: 1; }
    .sec05 .tab li.c01:hover, .sec05 .tab li.c01.active {
      background: #e48e00; }
    .sec05 .tab li.c02:hover, .sec05 .tab li.c02.active {
      background: #5e504a; }
    .sec05 .tab li.c03 {
      width: calc(434% / 8.9); }
      @media screen and (max-width: 480px) {
        .sec05 .tab li.c03 {
          width: 100%; } }
      .sec05 .tab li.c03:hover, .sec05 .tab li.c03.active {
        background: #0a843e; }
    .sec05 .tab li.c04:hover, .sec05 .tab li.c04.active {
      background: #a38a49; }
    .sec05 .tab li.c05:hover, .sec05 .tab li.c05.active {
      background: #6e629d; }
    .sec05 .tab li.c06:hover, .sec05 .tab li.c06.active {
      background: #076baf; }
    .sec05 .tab li.c07:hover, .sec05 .tab li.c07.active {
      background: #e84566; }
.sec05 .cont {
  position: relative; }
  .sec05 .cont > li {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    padding: 35px;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.75));
    display: flex;
    justify-content: space-between; }
    .sec05 .cont > li.active {
      opacity: 1;
      position: relative; }
    @media screen and (max-width: 768px) {
      .sec05 .cont > li {
        padding: 15px 10px;
        display: block; } }
    .sec05 .cont > li ul {
      width: 48.5%; }
      @media screen and (max-width: 768px) {
        .sec05 .cont > li ul {
          width: 100%; } }
      .sec05 .cont > li ul > li {
        font-size: clamp(11px, calc(14vw / 10.8), 14px);
        line-height: 1.5; }
        @media screen and (max-width: 480px) {
          .sec05 .cont > li ul > li {
            font-size: calc(11vw / 3.9); } }
        .sec05 .cont > li ul > li .no {
          color: #fff;
          font-size: 75%;
          width: 1.3em;
          height: 1.3em;
          margin-right: 0.3em;
          display: flex;
          justify-content: center;
          align-items: center; }
        .sec05 .cont > li ul > li dl {
          display: flex;
          align-items: baseline;
          padding: 0.3em 0; }
          .sec05 .cont > li ul > li dl dt {
            order: 1;
            display: flex;
            align-items: baseline; }
          .sec05 .cont > li ul > li dl dd {
            order: 3;
            width: 10em;
            text-align: justify;
            text-align-last: justify; }
            .sec05 .cont > li ul > li dl dd.ex1 {
              width: 4.5em; }
          .sec05 .cont > li ul > li dl::after {
            order: 2;
            content: "";
            flex: 1;
            margin-inline: 0.4em;
            height: 0.3em;
            border-top: dotted 2px #333; }
    .sec05 .cont > li.c01 .no {
      background: #e48e00; }
    .sec05 .cont > li.c02 .no {
      background: #5e504a; }
    .sec05 .cont > li.c03 .no {
      background: #0a843e; }
    .sec05 .cont > li.c04 .no {
      background: #a38a49; }
    .sec05 .cont > li.c05 .no {
      background: #6e629d; }
    .sec05 .cont > li.c06 .no {
      background: #076baf; }
    .sec05 .cont > li.c07 .no {
      background: #e84566; }

.txt_mg.sec_ttl_ja2 {
  margin: 5vh auto !important; }
  @media screen and (max-width: 480px) {
    .txt_mg.sec_ttl_ja2 {
      margin: 5vw auto !important; } }

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