/*! Writen  by SCSS */
div.wrap {
  padding-top: 0 !important; }

.breadlist {
  display: none; }

@media screen and (max-width: 480px) {
  .main {
    height: calc(100vh - 65px - 58px);
    height: calc(100svh - 65px - 58px); }
    .main figure {
      display: block;
      height: 100%; }
    .main img {
      width: 100%;
      height: 100%;
      object-fit: cover; } }

.ttl_wrap {
  background: url("../images/location/bg01.jpg") center center/50% auto no-repeat; }
  @media screen and (max-width: 480px) {
    .ttl_wrap {
      background: none; } }

.sec {
  padding: 100px 0 150px; }
  @media screen and (max-width: 1230px) {
    .sec {
      padding: calc(100vw / 12.3) 0 calc(100vw / 12.3); } }
  @media screen and (max-width: 480px) {
    .sec {
      padding: 50px 0 100px; } }
  .sec .sec_ttl sup {
    font-size: 40%;
    letter-spacing: 0;
    position: relative;
    left: -0.5em;
    right: -0.1em;
    bottom: -1em; }
  .sec .l_name1 {
    font-size: clamp(14px, calc(31vw / 12.7), 31px);
    font-size: clamp(14px, calc(29vw / 12.7), 29px);
    font-weight: 500;
    line-height: 1.1;
    margin-top: 0.7em;
    padding-bottom: 0.7em;
    margin-bottom: 0.6em;
    position: relative; }
    .sec .l_name1::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 6px;
      border-bottom: solid 1px #918b8a;
      border-top: solid 1px #918b8a; }
    @media screen and (max-width: 480px) {
      .sec .l_name1 {
        font-size: calc(18vw / 3.9); } }
    .sec .l_name1 .s {
      font-size: 63.871%; }
  .sec .l_name2 {
    font-size: clamp(14px, calc(25vw / 16), 25px);
    font-size: clamp(14px, calc(21vw / 16), 21px);
    line-height: 1.1;
    margin-top: 0.5em; }
    @media screen and (max-width: 480px) {
      .sec .l_name2 {
        font-size: calc(15vw / 3.9);
        font-size: calc(14vw / 3.9); } }
    .sec .l_name2 .s {
      font-size: 81.5%; }
      @media screen and (max-width: 480px) {
        .sec .l_name2 .s {
          font-size: 80.2%; } }

.bg01 {
  background: url("../images/location/bg02.jpg") bottom center/cover;
  padding: 100px 0; }
  @media screen and (max-width: 480px) {
    .bg01 {
      padding: 30px 0; } }
  .bg01 .inner {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .bg01 .inner {
        display: block; } }
    .bg01 .inner .txt {
      width: calc(520% / 12.3);
      width: calc(545% / 12.3); }
      .bg01 .inner .txt .sec_ttl {
        letter-spacing: 0.08em; }
      @media screen and (max-width: 480px) {
        .bg01 .inner .txt {
          text-align: center;
          width: 100%;
          margin-bottom: 15px; } }
    .bg01 .inner .img {
      width: calc(660% / 12.3);
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 12px 0; }
      @media screen and (max-width: 480px) {
        .bg01 .inner .img {
          width: 100%;
          gap: 15px 0; } }
      .bg01 .inner .img li {
        width: calc(208% / 6.6); }
        @media screen and (max-width: 480px) {
          .bg01 .inner .img li {
            width: 48%; } }
        .bg01 .inner .img li .ss_cap {
          text-align: center;
          font-size: clamp(10px, calc(18vw / 12.7), 18px);
          font-weight: 500;
          line-height: 1;
          margin-top: 0.1em;
          margin-top: 0.2em;
          color: #555; }
          @media screen and (max-width: 480px) {
            .bg01 .inner .img li .ss_cap {
              margin-top: 0.5em;
              font-size: calc(13vw / 3.9); } }

@media screen and (max-width: 480px) {
  .sec01 .swipe1 figure {
    width: 600px;
    max-width: 600px;
    padding-bottom: 15px; } }
.sec01 .box11 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px; }
  @media screen and (max-width: 480px) {
    .sec01 .box11 {
      display: block; } }
  .sec01 .box11 .l {
    width: calc(610% / 12.3); }
    @media screen and (max-width: 480px) {
      .sec01 .box11 .l {
        width: 100%;
        margin-bottom: 20px; } }
  .sec01 .box11 .r {
    width: calc(600% / 12.3);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 0;
    position: relative; }
    @media screen and (max-width: 480px) {
      .sec01 .box11 .r {
        width: 100%; } }
    .sec01 .box11 .r li:nth-child(1) {
      width: calc(295% / 6); }
    .sec01 .box11 .r li:nth-child(2) {
      width: calc(295% / 6); }
    .sec01 .box11 .r li:nth-child(3) {
      width: 100%; }
      @media screen and (max-width: 480px) {
        .sec01 .box11 .r li:nth-child(3) {
          width: calc(295% / 6); } }
    .sec01 .box11 .r li:nth-child(4) {
      width: 100%; }
      @media screen and (max-width: 480px) {
        .sec01 .box11 .r li:nth-child(4) {
          width: calc(295% / 6); } }
    .sec01 .box11 .r li:nth-child(5) {
      width: calc(300% / 6); }
    .sec01 .box11 .r .dummy {
      width: calc(980% / 6);
      position: absolute;
      inset: 0;
      margin: auto;
      z-index: 1; }
      @media screen and (max-width: 480px) {
        .sec01 .box11 .r .dummy {
          width: calc(100% + 20px); } }
.sec01 .box12 {
  margin-bottom: 5px;
  border: solid 1px #000;
  padding: 30px 55px; }
  @media screen and (max-width: 1170px) {
    .sec01 .box12 {
      padding: 20px 25px; } }
  @media screen and (max-width: 640px) {
    .sec01 .box12 {
      padding: 15px 10px; } }
  @media screen and (max-width: 480px) {
    .sec01 .box12 {
      padding: 10px; } }
  .sec01 .box12 ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0 1.5em;
    font-size: clamp(10px, calc(23vw / 12.7), 23px);
    font-size: clamp(10px, calc(21vw / 12.7), 21px);
    font-weight: 500;
    line-height: 1.5;
    color: #555; }
    @media screen and (max-width: 1120px) {
      .sec01 .box12 ul {
        gap: 0 1em; } }
    @media screen and (max-width: 480px) {
      .sec01 .box12 ul {
        font-size: calc(11vw / 3.9);
        gap: 0 1em; } }
    .sec01 .box12 ul li {
      letter-spacing: 0.05em; }
      @media screen and (max-width: 1120px) {
        .sec01 .box12 ul li {
          letter-spacing: 0; } }
      @media screen and (max-width: 480px) {
        .sec01 .box12 ul li {
          letter-spacing: -0.03em; }
          .sec01 .box12 ul li:nth-child(1) {
            order: 1; }
          .sec01 .box12 ul li:nth-child(13) {
            order: 2; }
          .sec01 .box12 ul li:nth-child(2) {
            order: 3; }
          .sec01 .box12 ul li:nth-child(3) {
            order: 4; }
          .sec01 .box12 ul li:nth-child(4) {
            order: 5; }
          .sec01 .box12 ul li:nth-child(5) {
            order: 6; }
          .sec01 .box12 ul li:nth-child(6) {
            order: 7; }
          .sec01 .box12 ul li:nth-child(7) {
            order: 8; }
          .sec01 .box12 ul li:nth-child(8) {
            order: 9; }
          .sec01 .box12 ul li:nth-child(9) {
            order: 10; }
          .sec01 .box12 ul li:nth-child(10) {
            order: 11; }
          .sec01 .box12 ul li:nth-child(11) {
            order: 12; }
          .sec01 .box12 ul li:nth-child(12) {
            order: 13; } }
      .sec01 .box12 ul li:nth-child(1), .sec01 .box12 ul li:nth-child(3), .sec01 .box12 ul li:nth-child(6), .sec01 .box12 ul li:nth-child(9), .sec01 .box12 ul li:nth-child(12) {
        min-width: 19em; }
        @media screen and (max-width: 480px) {
          .sec01 .box12 ul li:nth-child(1), .sec01 .box12 ul li:nth-child(3), .sec01 .box12 ul li:nth-child(6), .sec01 .box12 ul li:nth-child(9), .sec01 .box12 ul li:nth-child(12) {
            min-width: inherit; } }
      .sec01 .box12 ul li:nth-child(4), .sec01 .box12 ul li:nth-child(7), .sec01 .box12 ul li:nth-child(10) {
        min-width: 14em; }
        @media screen and (max-width: 480px) {
          .sec01 .box12 ul li:nth-child(4), .sec01 .box12 ul li:nth-child(7), .sec01 .box12 ul li:nth-child(10) {
            min-width: inherit; } }
.sec01 .box13 {
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-direction: row-reverse; }
  @media screen and (max-width: 480px) {
    .sec01 .box13 {
      display: block; } }
  .sec01 .box13 .txt {
    width: calc(580% / 12.3); }
    @media screen and (max-width: 480px) {
      .sec01 .box13 .txt {
        width: 100%; } }
    .sec01 .box13 .txt .sec_lead.ls {
      letter-spacing: 0.07em; }
  .sec01 .box13 .img {
    width: calc(610% / 12.3); }
    @media screen and (max-width: 480px) {
      .sec01 .box13 .img {
        width: 100%;
        margin-bottom: 15px; } }
  @media screen and (max-width: 480px) {
    .sec01 .box13 .icon_img {
      width: 60%; } }
.sec01 .box14 {
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 35px 0; }
  .sec01 .box14 li {
    width: calc(380% / 12.3); }
    @media screen and (max-width: 480px) {
      .sec01 .box14 li {
        width: 46%; } }
.sec01 .box15 {
  max-width: 1460px;
  margin-inline: auto;
  background: url("../images/location/bg02.jpg") bottom center/cover;
  padding: 75px 0; }
  @media screen and (max-width: 480px) {
    .sec01 .box15 {
      padding: 30px 0;
      position: relative; }
      .sec01 .box15::after {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(255, 255, 255, 0.5); }
      .sec01 .box15 .inner {
        position: relative;
        z-index: 5; } }
  .sec01 .box15 .ttl_box {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-direction: row-reverse; }
    @media screen and (max-width: 480px) {
      .sec01 .box15 .ttl_box {
        display: block;
        text-align: center; } }
  .sec01 .box15 ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px 0; }
    @media screen and (max-width: 480px) {
      .sec01 .box15 ul {
        gap: 30px 0; } }
    .sec01 .box15 ul li {
      width: calc(268% / 12.3); }
      @media screen and (max-width: 480px) {
        .sec01 .box15 ul li {
          width: 48%; } }
      .sec01 .box15 ul li .l_name2 {
        margin-top: 0.6em; }
      .sec01 .box15 ul li .sec_lead {
        margin-top: 1em;
        line-height: 1.5;
        font-size: clamp(12px, calc(18vw / 12.7), 18px); }
        .sec01 .box15 ul li .sec_lead.ls {
          letter-spacing: 0.06em; }
        @media screen and (max-width: 480px) {
          .sec01 .box15 ul li .sec_lead {
            font-size: calc(13vw / 3.9); } }

.sec02 {
  padding-bottom: 0; }
  .sec02 .link_btn01 {
    margin-top: auto; }
    .sec02 .link_btn01 a {
      display: flex;
      align-items: flex-end;
      font-size: clamp(12px, calc(18vw / 12.7), 19px);
      letter-spacing: 0.08em;
      font-weight: 400;
      line-height: 2;
      transition: all 0.5s ease-in-out; }
      @media screen and (max-width: 480px) {
        .sec02 .link_btn01 a {
          font-size: calc(13vw / 3.9);
          justify-content: center;
          margin-top: 1.5em; } }
      @media (hover: hover) {
        .sec02 .link_btn01 a:hover {
          opacity: 0.7; } }
    .sec02 .link_btn01 .link_ico {
      width: 1.5em;
      margin-left: 0.5em; }
      .sec02 .link_btn01 .link_ico img {
        width: 100%; }
    .sec02 .link_btn01 span {
      position: relative;
      display: inline-block; }
      .sec02 .link_btn01 span::before {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        left: 0;
        background: #fff;
        height: 1px;
        z-index: 1; }
  .sec02 .box21 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 50px; }
    @media screen and (max-width: 480px) {
      .sec02 .box21 {
        display: block;
        margin-bottom: 30px; } }
    .sec02 .box21 .l {
      width: calc(614% / 12.3); }
      @media screen and (max-width: 480px) {
        .sec02 .box21 .l {
          width: 100%;
          margin-bottom: 20px; } }
    .sec02 .box21 .r {
      width: calc(574% / 12.3);
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 30px 0; }
      @media screen and (max-width: 480px) {
        .sec02 .box21 .r {
          width: 100%; } }
      .sec02 .box21 .r li {
        width: calc(270% / 5.74); }
        @media screen and (max-width: 480px) {
          .sec02 .box21 .r li {
            width: 48%; } }
  .sec02 .bg {
    background: linear-gradient(90deg, #236890, #114b2e);
    padding: 100px 0;
    padding: 80px 0 100px;
    color: #fff; }
    @media screen and (max-width: 480px) {
      .sec02 .bg {
        padding: 40px 0;
        padding: 50px 0 40px; } }
    .sec02 .bg .sec_main {
      margin-bottom: 1.8em; }
      @media screen and (max-width: 480px) {
        .sec02 .bg .sec_main {
          margin-bottom: 1em; } }
  .sec02 .box22 {
    display: flex;
    justify-content: space-between;
    align-items: stretch; }
    @media screen and (max-width: 480px) {
      .sec02 .box22 {
        display: block; } }
    .sec02 .box22 .l {
      padding-top: calc(20% / 12.3);
      width: calc(580% / 12.3);
      display: flex;
      flex-direction: column; }
      @media screen and (max-width: 480px) {
        .sec02 .box22 .l {
          padding-top: 0;
          width: 100%;
          margin-bottom: 20px; } }
      .sec02 .box22 .l .sec_ttl {
        letter-spacing: 0.18em;
        font-size: clamp(16px, calc(26vw / 12.7), 26px); }
        @media screen and (max-width: 480px) {
          .sec02 .box22 .l .sec_ttl {
            font-size: calc(18vw / 3.9); } }
      .sec02 .box22 .l .sec_lead {
        letter-spacing: 0.1em;
        font-size: clamp(12px, calc(17.5vw / 12.7), 17.5px); }
        @media screen and (max-width: 480px) {
          .sec02 .box22 .l .sec_lead {
            font-size: calc(13vw / 3.9); } }
      .sec02 .box22 .l .link_btn01 {
        margin-top: 2em; }
        @media screen and (max-width: 1200px) {
          .sec02 .box22 .l .link_btn01 {
            margin-top: 1em; } }
    .sec02 .box22 .r {
      width: calc(615% / 12.3);
      position: relative; }
      @media screen and (max-width: 480px) {
        .sec02 .box22 .r {
          width: 100%;
          margin-inline: auto;
          margin-bottom: 15px; } }
      @media screen and (min-width: 481px) {
        .sec02 .box22 .r .cap_r {
          position: absolute;
          right: 0;
          bottom: -3.5em;
          line-height: 1.5; } }
  .sec02 .box23 {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 50px;
    margin-bottom: 50px;
    margin-top: calc(-10% / 12.3);
    border-bottom: solid 1px #fff; }
    @media screen and (max-width: 880px) {
      .sec02 .box23 {
        margin-top: 0; } }
    @media screen and (max-width: 480px) {
      .sec02 .box23 {
        display: block;
        padding-bottom: 30px;
        margin-bottom: 30px;
        margin-top: 0; } }
    .sec02 .box23 .l {
      width: calc(580% / 12.3); }
      @media screen and (max-width: 480px) {
        .sec02 .box23 .l {
          width: 100%;
          margin-inline: auto;
          margin-bottom: 15px; } }
    .sec02 .box23 .r {
      width: calc(615% / 12.3);
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec02 .box23 .r {
          width: 100%;
          margin-inline: auto; } }
      .sec02 .box23 .r > div {
        width: calc(300% / 6.15); }
  .sec02 .box24 {
    display: flex;
    flex-direction: column;
    grid-gap: 60px 0; }
    .sec02 .box24 > div {
      display: flex;
      justify-content: space-between;
      align-items: stretch; }
      @media screen and (max-width: 480px) {
        .sec02 .box24 > div {
          display: block; } }
      .sec02 .box24 > div .txt {
        width: calc(590% / 12.3);
        display: flex;
        flex-direction: column;
        padding-top: calc(30%/12.3);
        padding-top: calc(50%/12.3); }
        @media screen and (max-width: 480px) {
          .sec02 .box24 > div .txt {
            padding-top: 0;
            width: 100%;
            margin-bottom: 15px; } }
        .sec02 .box24 > div .txt.ex {
          padding-top: calc(90%/12.3); }
          @media screen and (max-width: 480px) {
            .sec02 .box24 > div .txt.ex {
              padding-top: 0; } }
        .sec02 .box24 > div .txt .sec_ttl {
          letter-spacing: 0.18em;
          font-size: clamp(16px, calc(26vw / 12.7), 26px);
          margin-bottom: 0.5em; }
          @media screen and (max-width: 480px) {
            .sec02 .box24 > div .txt .sec_ttl {
              font-size: calc(18vw / 3.9);
              letter-spacing: 0.15em; } }
        .sec02 .box24 > div .txt .sec_lead {
          font-size: clamp(12px, calc(18vw / 12.7), 18px); }
          @media screen and (max-width: 480px) {
            .sec02 .box24 > div .txt .sec_lead {
              font-size: calc(13vw / 3.9); } }
          .sec02 .box24 > div .txt .sec_lead.ex {
            letter-spacing: 0.17em;
            padding-right: 2.6em; }
            @media screen and (max-width: 480px) {
              .sec02 .box24 > div .txt .sec_lead.ex {
                padding-right: 0;
                letter-spacing: 0.08em; } }
      .sec02 .box24 > div .img {
        width: calc(619% / 12.3); }
        @media screen and (max-width: 480px) {
          .sec02 .box24 > div .img {
            width: 100%; } }
      .sec02 .box24 > div.rv {
        flex-direction: row-reverse; }
        .sec02 .box24 > div.rv .img {
          width: calc(561% / 12.3); }
          @media screen and (max-width: 480px) {
            .sec02 .box24 > div.rv .img {
              width: 100%; } }
        .sec02 .box24 > div.rv .txt {
          width: calc(619% / 12.3); }
          @media screen and (max-width: 480px) {
            .sec02 .box24 > div.rv .txt {
              width: 100%;
              margin-bottom: 15px; } }
      .sec02 .box24 > div.box24_top .txt {
        padding-top: 0; }
        .sec02 .box24 > div.box24_top .txt .image_box {
          margin-top: 3.39%;
          margin-bottom: 3.39%; }

.sec03 {
  padding-bottom: 0; }
  @media screen and (max-width: 480px) {
    .sec03 .img310 {
      width: calc(285.54%/3.35);
      margin-left: auto;
      margin-right: auto; } }
  .sec03 .box31 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 40px calc(45% / 12.3);
    margin-bottom: 60px; }
    @media screen and (max-width: 480px) {
      .sec03 .box31 {
        margin-bottom: 30px;
        justify-content: space-between;
        gap: 40px 0; } }
    .sec03 .box31 li {
      width: calc(380% / 12.3); }
      @media screen and (max-width: 480px) {
        .sec03 .box31 li {
          width: 48%; } }
      .sec03 .box31 li.w {
        width: calc(592% / 12.3); }
        @media screen and (max-width: 480px) {
          .sec03 .box31 li.w {
            width: 48%; } }
  .sec03 .bg3 {
    background: #c5d6d5;
    padding: 100px 0 80px; }
    @media screen and (max-width: 480px) {
      .sec03 .bg3 {
        padding: 40px 0; } }
  .sec03 .box32 {
    /*display: flex;
    justify-content: space-between;
    justify-content: center;*/
    max-width: 900px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: calc(596% / 9) calc(280% / 9);
    grid-template-rows: repeat(2, auto);
    grid-column-gap: calc(24% / 9);
    grid-row-gap: 10px;
    position: relative;
    /*&::after {
    	content: url("../images/location/icon.jpg");
    	position: absolute;
    	inset:0;
    	margin: auto;
    	display: flex;
    	justify-content: center;
    	align-items: center;
    }*/ }
    @media screen and (max-width: 480px) {
      .sec03 .box32 {
        grid-template-columns: repeat(2, 48%);
        grid-template-rows: repeat(2, auto);
        grid-column-gap: 2%;
        grid-row-gap: 10px; } }
    .sec03 .box32 li:nth-child(1) {
      grid-area: 1 / 1 / 3 / 2; }
    .sec03 .box32 li:nth-child(2) {
      grid-area: 1 / 2 / 2 / 3; }
    .sec03 .box32 li:nth-child(3) {
      grid-area: 2 / 2 / 3 / 3; }
    @media screen and (max-width: 480px) {
      .sec03 .box32 li {
        /*width: 100%;
        &:first-child {
        	margin-bottom: 15px;
        }*/ }
        .sec03 .box32 li:nth-child(1) {
          grid-area: 1 / 1 / 2 / 3; }
        .sec03 .box32 li:nth-child(2) {
          grid-area: 2 / 1 / 3 / 2; }
        .sec03 .box32 li:nth-child(3) {
          grid-area: 2 / 2 / 3 / 3; } }

.sec04 {
  padding-bottom: 0; }
  @media screen and (max-width: 480px) {
    .sec04 .img410 {
      width: calc(132%/3.35);
      width: calc(285.54%/3.35);
      width: calc(265.54%/3.35);
      margin-left: auto;
      margin-right: auto; } }
  .sec04 sup {
    font-size: 60%; }
  @media screen and (max-width: 480px) {
    .sec04 .cap_c .min {
      font-size: 8px; } }
  .sec04 .box41 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px 0;
    margin-bottom: 60px; }
    @media screen and (max-width: 480px) {
      .sec04 .box41 {
        margin-bottom: 30px; } }
    .sec04 .box41 li {
      width: calc(380% / 12.3); }
      @media screen and (max-width: 480px) {
        .sec04 .box41 li {
          width: 48%; } }
  .sec04 .bg4 {
    background: linear-gradient(90deg, #236890, #114b2e);
    padding: 100px 0 80px;
    color: #fff; }
    @media screen and (max-width: 480px) {
      .sec04 .bg4 {
        padding: 40px 0; } }

.lifeinfo_wrap {
  max-width: 1016px;
  margin: 0 auto;
  max-width: 955px; }
  .lifeinfo_wrap .lifeinfo_map {
    width: 100%;
    height: 0;
    padding-top: calc(900% / 10.16);
    position: relative;
    margin-inline: auto; }
    .lifeinfo_wrap .lifeinfo_map .gmaps {
      position: absolute;
      inset: 0; }
    @media screen and (max-width: 480px) {
      .lifeinfo_wrap .lifeinfo_map {
        width: calc(100% + 40px);
        margin-inline: -20px;
        padding-top: 0;
        height: 125vw; } }
  .lifeinfo_wrap .lifeinfo_tab {
    display: flex;
    margin-bottom: 40px;
    flex-wrap: wrap; }
    @media screen and (max-width: 480px) {
      .lifeinfo_wrap .lifeinfo_tab {
        margin-bottom: 15px;
        width: calc(100% + 40px);
        margin-inline: -20px; } }
    .lifeinfo_wrap .lifeinfo_tab li {
      cursor: pointer;
      width: calc(100% / 8);
      border: solid 1px;
      border-image: linear-gradient(to right, #236890, #114c2f) 1;
      background: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      transition: all 0.3s ease-in-out; }
      @media screen and (max-width: 480px) {
        .lifeinfo_wrap .lifeinfo_tab li {
          width: 50%; } }
      .lifeinfo_wrap .lifeinfo_tab li p {
        font-size: clamp(10px, calc(15vw / 10.56), 15px);
        font-weight: 500;
        line-height: 1.2;
        padding: 0.6em 0; }
        @media screen and (max-width: 480px) {
          .lifeinfo_wrap .lifeinfo_tab li p {
            font-size: calc(12vw / 3.9); } }
      .lifeinfo_wrap .lifeinfo_tab li.active, .lifeinfo_wrap .lifeinfo_tab li:hover {
        background: linear-gradient(to right, #236890, #114c2f);
        color: #fff; }
  .lifeinfo_wrap .lifeinfo_list {
    position: relative; }
    .lifeinfo_wrap .lifeinfo_list li {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      opacity: 0;
      transition: all 0.3s ease-in-out;
      pointer-events: none;
      display: flex;
      justify-content: space-between; }
      .lifeinfo_wrap .lifeinfo_list li.active {
        opacity: 1;
        position: relative;
        pointer-events: all; }
      @media screen and (max-width: 480px) {
        .lifeinfo_wrap .lifeinfo_list li {
          display: block; } }
      .lifeinfo_wrap .lifeinfo_list li .item_list {
        width: calc(490% / 10.16);
        font-size: clamp(10px, calc(17vw / 10.56), 17px);
        font-weight: 500;
        line-height: 1.2; }
        @media screen and (max-width: 480px) {
          .lifeinfo_wrap .lifeinfo_list li .item_list {
            width: 100%; } }
        @media screen and (max-width: 480px) {
          .lifeinfo_wrap .lifeinfo_list li .item_list {
            font-size: calc(13vw / 3.9); } }
        .lifeinfo_wrap .lifeinfo_list li .item_list .item_in {
          cursor: pointer;
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          gap: 0 1.63%;
          padding-bottom: 15px; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex01 {
            gap: 0 1.68%; }
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex01 dd.walk {
              min-width: 8.5em; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 {
            gap: 0 0.84%; }
            @media screen and (max-width: 480px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 {
                gap: 0 0.61%; } }
            @media screen and (max-width: 375px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 {
                gap: 0 1.22%; } }
            @media screen and (max-width: 480px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 dd.name {
                letter-spacing: -0.04em; } }
            @media screen and (max-width: 375px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 dd.name {
                letter-spacing: -0em; } }
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex02 dd.walk {
              min-width: 8.5em;
              column-gap: 0; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex03 {
            gap: 0 0.84%; }
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex03 dd.walk {
              min-width: 8.5em;
              gap: 0 0.42%; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex04 {
            gap: 0 1.22%; }
            @media screen and (max-width: 480px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex04 {
                gap: 0 0.61%; } }
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex04 dd.walk {
              gap: 0 1.26%; }
              @media screen and (max-width: 480px) {
                .lifeinfo_wrap .lifeinfo_list li .item_list .item_in.ex04 dd.walk {
                  gap: 0 0; } }
          @media screen and (max-width: 480px) {
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in {
              gap: 0 1.22%;
              padding-bottom: 12px; } }
          @media screen and (max-width: 390px) {
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in {
              font-size: clamp(11px, calc(14vw / 13.2), 14px); } }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in:last-child {
            padding-bottom: 0; }
            @media screen and (max-width: 480px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in:last-child {
                padding-bottom: 12px; } }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dt {
            font-size: 80%;
            line-height: 1;
            width: 1.5em;
            height: 1.5em;
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            background: #000;
            color: #fff; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dd.name .s {
            font-size: 70%; }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dd.name .s1 {
            font-size: 70%;
            display: block;
            margin-top: -0.3em; }
            @media screen and (max-width: 480px) {
              .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dd.name .s1 {
                margin-top: -0.2em; } }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dd.walk {
            flex: 1;
            max-width: calc(100% - 1.7em);
            min-width: 9.5em;
            margin-left: auto;
            display: flex;
            gap: 0 1.68%; }
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dd.walk::before {
              content: "";
              flex: 1;
              width: 1px;
              align-self: flex-end;
              margin-bottom: 0.3em;
              border-bottom: dotted 2px #000; }

.location-list {
  position: relative;
  padding-bottom: 45px; }
  @media screen and (max-width: 767px) {
    .location-list {
      padding-bottom: 38px; } }
  .location-list .swiper-pagination-progressbar.swiper-pagination-horizontal {
    left: 20px; }
    @media screen and (max-width: 767px) {
      .location-list .swiper-pagination-progressbar.swiper-pagination-horizontal {
        left: 15px; } }
  .location-list li.swiper-slide {
    padding-left: 2px !important;
    padding-right: 2px !important; }
    @media screen and (max-width: 767px) {
      .location-list li.swiper-slide {
        padding-left: 2px !important;
        padding-right: 2px !important; } }
    .location-list li.swiper-slide .img {
      margin-bottom: 12px;
      position: relative; }
      .location-list li.swiper-slide .img .cap {
        bottom: -18px; }
        @media screen and (max-width: 480px) {
          .location-list li.swiper-slide .img .cap {
            bottom: -14px;
            bottom: 0;
            color: #fff;
            background: rgba(0, 0, 0, 0.5);
            padding: 1px 8px;
            right: 0; } }
  .location-list .txt {
    text-align: center;
    padding: 0 5px; }
    .location-list .txt .name {
      /*			font-size: clamp(14px, calc(25vw / 16), 25px);
      			line-height: 1;
      			@include mq($br_tb){
      				font-size: calc(14vw / 3.9);
      			}
      			.s {
      				font-size: 75%;
      			}*/
      font-size: clamp(14px, calc(25vw / 16), 25px);
      font-size: clamp(14px, calc(21vw / 16), 21px);
      line-height: 1.1; }
      @media screen and (max-width: 480px) {
        .location-list .txt .name {
          font-size: calc(15vw / 3.9);
          font-size: calc(14vw / 3.9); } }
      .location-list .txt .name .s {
        font-size: 81.5%; }
        @media screen and (max-width: 480px) {
          .location-list .txt .name .s {
            font-size: 80.2%; } }
    .location-list .txt .list {
      font-size: clamp(12px, calc(16vw / 16), 16px);
      display: flex;
      flex-wrap: wrap;
      gap: 0em 1em; }
      .location-list .txt .list li {
        white-space: nowrap; }
        .location-list .txt .list li.item_wide {
          width: 100%; }
        .location-list .txt .list li .text_box {
          color: #777; }
        .location-list .txt .list li .cap_l {
          width: 100%; }
        .location-list .txt .list li.ex {
          width: 100%;
          margin-top: -0.3em; }
  .location-list .swiper {
    padding-top: 0; }
    @media screen and (max-width: 767px) {
      .location-list .swiper {
        padding-top: 20px; } }
  .location-list .swiper-paginationWrap {
    z-index: 10;
    position: absolute;
    top: 7.25vw;
    right: 20px;
    left: 20px; }
    @media screen and (max-width: 767px) {
      .location-list .swiper-paginationWrap {
        top: 25vw;
        right: 10px;
        left: 10px; } }
    .location-list .swiper-paginationWrap .btn-wrap {
      width: 100%;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      gap: 10px; }
      .location-list .swiper-paginationWrap .btn-wrap .prev, .location-list .swiper-paginationWrap .btn-wrap .next {
        padding: 0;
        margin: 0;
        width: 49px;
        height: 49px;
        background: none;
        border: none;
        outline: none;
        transition: 0.4s ease;
        cursor: pointer; }
        @media screen and (max-width: 767px) {
          .location-list .swiper-paginationWrap .btn-wrap .prev, .location-list .swiper-paginationWrap .btn-wrap .next {
            width: 30px;
            height: 30px; } }
  .location-list .swiper-horizontal > .swiper-pagination-bullets, .location-list .swiper-pagination-bullets.swiper-pagination-horizontal, .location-list .swiper-pagination-custom, .location-list .swiper-pagination-fraction {
    bottom: 0; }
  .location-list .swiper-pagination-bullet {
    border-radius: 0;
    width: 14px;
    height: 14px;
    background: #000;
    border: solid 1px #000;
    opacity: 1; }
    @media screen and (max-width: 767px) {
      .location-list .swiper-pagination-bullet {
        width: 10px;
        height: 10px; } }
  .location-list .swiper-pagination-bullet-active {
    background: #fff; }

.cap_ex {
  font-size: 10px;
  color: #555; }
  @media screen and (max-width: 768px) {
    .cap_ex {
      font-size: 8px; } }

@media screen and (max-width: 480px) {
  .cap_ex1 {
    letter-spacing: -0.04em; } }

/*# sourceMappingURL=location.css.map */
