/*! Writen  by SCSS */
div.wrap::before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100svh;
  z-index: -2;
  background: url("../images/location/bg00.jpg"); }

.breadlist {
  display: none; }

div.wrap {
  padding-top: 0 !important; }

.container {
  padding: 0; }

.inner_main {
  background: #fff; }

.tab_wrap {
  padding: 100px 0; }
  @media screen and (max-width: 767px) {
    .tab_wrap {
      padding: 50px 0; } }
  .tab_wrap ul {
    display: flex;
    justify-content: space-between;
    gap: 4px; }
    @media screen and (max-width: 480px) {
      .tab_wrap ul {
        flex-direction: column;
        gap: 8px;
        width: 65%;
        margin-inline: auto; } }
    .tab_wrap ul li {
      flex: 1; }
      @media screen and (max-width: 480px) {
        .tab_wrap ul li {
          flex-direction: column;
          gap: 8px;
          width: 100%; } }
      .tab_wrap ul li a {
        display: block;
        font-size: clamp(12px, calc(25vw / 11.8), 25px);
        font-size: clamp(12px, calc(22vw / 11.8), 22px);
        font-size: clamp(12px, calc(20vw / 11.8), 20px);
        font-weight: 400;
        line-height: 1;
        letter-spacing: 0.05em;
        padding: 0.8em 3px 0.7em;
        text-align: center;
        background: linear-gradient(90deg, #b2ddd9, #b2cbc7);
        background: linear-gradient(90deg, rgba(162, 158, 147, 0.7), rgba(123, 119, 110, 0.7), rgba(80, 75, 69, 0.7));
        background: linear-gradient(90deg, #dad9d5, #cecdca, #c2c1c0);
        transition: all 0.5s ease-in-out;
        position: relative; }
        .tab_wrap ul li a.on, body:not(.mobile) .tab_wrap ul li a:hover {
          background: linear-gradient(90deg, #008f81, #005344);
          background: linear-gradient(90deg, #a29e93, #7b776e, #504b45);
          color: #fff; }
        @media screen and (max-width: 480px) {
          .tab_wrap ul li a {
            font-size: calc(15vw / 3.9);
            padding: 0.9em 3px; } }

@media screen and (max-width: 767px) {
  .page_ttl_wrap .ttl_wrap {
    margin-bottom: 80px; } }

.sec00 {
  padding: 0 0 170px;
  background: url("../images/location/sec0_bg.jpg") bottom center/cover; }
  @media screen and (max-width: 767px) {
    .sec00 {
      padding-bottom: 50px; } }
  .sec00 .ttl_wrap {
    margin-bottom: 0;
    justify-content: center; }

.sec_train {
  padding: 110px 0 65px;
  position: relative;
  background: #fff; }
  @media screen and (max-width: 767px) {
    .sec_train {
      padding: 50px 0;
      clip-path: inset(0 0 0 0); }
      .sec_train::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        z-index: -1;
        background: url("../images/location/img_tr01_bg.png") bottom center/cover;
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
        opacity: 0.1; } }
  .sec_train .inner {
    position: relative;
    z-index: 1; }
  .sec_train .img_tr01 {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 800px;
    width: calc(800%/16); }
    @media screen and (max-width: 767px) {
      .sec_train .img_tr01 {
        display: none; } }
  @media screen and (max-width: 480px) {
    .sec_train .img_tr02 {
      margin-right: -20px;
      margin-left: -30px; } }
  .sec_train .img_tr02 .cap02 {
    bottom: 15%;
    right: 12%; }
    @media screen and (max-width: 480px) {
      .sec_train .img_tr02 .cap02 {
        bottom: 10%;
        right: 8%; } }
  .sec_train .ttl_wrap {
    justify-content: center; }
  .sec_train .img_list {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px; }
    @media screen and (max-width: 480px) {
      .sec_train .img_list {
        display: block;
        margin-inline: -20px; } }
    .sec_train .img_list figure {
      width: calc(376%/11.4);
      position: relative;
           /* figcaption {
                padding: 10px;
                line-height: 1;
                letter-spacing: 0;
                color: #fff;
			    font-size: clamp(14px, calc(25vw / 9.3), 25px);
                position: absolute;
                top: 0;
                left: 0;
                text-shadow: 0 0 3px #333, 2px 2px 3px #333, -2px 2px 3px #333, -2px -2px 3px #333, 2px -2px 3px #333;
                &.nos {
                    text-shadow: none;
                }
					@include mq($br_sp) {
						font-size: calc(19vw / 3.9);
					}
            }*/ }
      @media screen and (max-width: 480px) {
        .sec_train .img_list figure {
          width: 100%; } }

.sec08 .top_cnt {
  padding: 170px 0; }
  @media screen and (max-width: 767px) {
    .sec08 .top_cnt {
      padding: 50px 0; } }
.sec08 .bottom_cnt {
  padding: 170px 0; }
  @media screen and (max-width: 767px) {
    .sec08 .bottom_cnt {
      padding: 50px 0; } }

.sec01 {
  padding: 120px 0;
  background: #fff; }
  @media screen and (max-width: 767px) {
    .sec01 {
      padding: 50px 0; } }

.sec02 {
  padding: 120px 0; }
  @media screen and (max-width: 767px) {
    .sec02 {
      padding: 50px 0; } }
  .sec02 .box_img .inn {
    padding-bottom: calc(60% / 11.4); }
    .sec02 .box_img .inn .t211 {
      position: absolute;
      top: calc(950% / 10.02);
      left: calc(0% / 10.56); }
    .sec02 .box_img .inn .t212 {
      position: absolute;
      top: calc(881% / 10.02);
      left: calc(310% / 10.56); }
    .sec02 .box_img .inn .t213 {
      position: absolute;
      top: calc(595% / 10.02);
      left: calc(720% / 10.56); }

.sec03 {
  background: #fff;
  padding: 0 0 120px; }
  @media screen and (max-width: 767px) {
    .sec03 {
      padding: 0 0 50px; } }
  .sec03 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec03 .sec_ttl_wrap {
        padding: 65px 0 50px;
        padding: 40px 0 50px; } }
  .sec03 .inner {
    max-width: 1160px; }
  .sec03 .box_img {
    position: relative; }
    @media screen and (max-width: 1600px) {
      .sec03 .box_img {
        max-width: 1370px;
        width: calc(100% - 20px);
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        margin-left: auto; } }
    @media screen and (max-width: 767px) {
      .sec03 .box_img {
        width: calc(100% - 40px);
        margin: 0 auto; } }
    .sec03 .box_img .txts_wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      max-width: 1140px;
      max-width: 1340px;
      margin: 0 auto; }
      @media screen and (max-width: 1600px) {
        .sec03 .box_img .txts_wrap {
          position: static;
          width: calc(495%/13.7);
          margin: 0; } }
      @media screen and (max-width: 767px) {
        .sec03 .box_img .txts_wrap {
          width: 100%;
          max-width: 495px;
          margin: 0 auto; } }
      .sec03 .box_img .txts_wrap .txt .name {
        margin: 0.3em 0;
        line-height: 1.25;
        font-size: clamp(11px, calc(16vw / 11.3), 16px);
        font-size: clamp(11px, calc(14vw / 11.3), 14px);
        font-size: clamp(11px, calc(15vw / 11.3), 15px);
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .sec03 .box_img .txts_wrap .txt .name {
            font-size: calc(16vw / 3.9);
            font-size: calc(14vw / 3.9); } }
      .sec03 .box_img .txts_wrap .txt .text {
        line-height: 1.25;
        text-indent: -1em;
        padding-left: 1em;
        font-size: clamp(11px, calc(16vw / 11.3), 16px);
        font-size: clamp(11px, calc(15vw / 11.3), 15px);
        font-size: clamp(10px, calc(10vw / 11.3), 12px);
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .sec03 .box_img .txts_wrap .txt .text {
            font-size: calc(14vw / 3.9);
            font-size: calc(13vw / 3.9);
            font-size: calc(11vw / 3.9); } }
      .sec03 .box_img .txts_wrap .items01 {
        width: calc(495%/11.4);
        width: calc(495%/13.4);
        margin-right: auto;
        margin-bottom: 35px; }
        @media screen and (max-width: 1600px) {
          .sec03 .box_img .txts_wrap .items01 {
            width: 100%; } }
      .sec03 .box_img .txts_wrap .items02 {
        display: flex;
        justify-content: space-between;
        width: calc(495%/11.4);
        width: calc(495%/13.4);
        margin-right: auto; }
        @media screen and (max-width: 1600px) {
          .sec03 .box_img .txts_wrap .items02 {
            width: 100%; } }
        .sec03 .box_img .txts_wrap .items02 .item {
          width: calc(245%/4.95); }
    .sec03 .box_img .imgs {
      width: calc(860%/16);
      margin-left: auto;
      margin-right: 100px; }
      @media screen and (max-width: 1600px) {
        .sec03 .box_img .imgs {
          width: calc(870%/13.7);
          margin: 0; } }
      @media screen and (max-width: 1400px) {
        .sec03 .box_img .imgs figure {
          overflow: hidden;
          height: 100%; }
        .sec03 .box_img .imgs img {
          object-fit: cover;
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 767px) {
        .sec03 .box_img .imgs {
          display: none; } }

.sec09 {
  background: #fff;
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec09 {
      padding-bottom: 50px; } }
  .sec09 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec09 .sec_ttl_wrap {
        padding: 50px 0; } }
  .sec09 .inner {
    max-width: 1160px; }
  .sec09 .box_img {
    position: relative; }
    @media screen and (max-width: 1600px) {
      .sec09 .box_img {
        max-width: 1370px;
        width: calc(100% - 20px);
        display: flex;
        flex-direction: row-reverse;
        align-items: stretch;
        justify-content: space-between;
        margin-right: auto; } }
    @media screen and (max-width: 767px) {
      .sec09 .box_img {
        width: calc(100% - 40px);
        margin: 0 auto; } }
    .sec09 .box_img .txts_wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      max-width: 1140px;
      max-width: 1340px;
      margin: 0 auto; }
      @media screen and (max-width: 1600px) {
        .sec09 .box_img .txts_wrap {
          position: static;
          width: calc(495%/13.7);
          margin: 0; } }
      @media screen and (max-width: 767px) {
        .sec09 .box_img .txts_wrap {
          width: 100%;
          max-width: 495px;
          margin: 0 auto; } }
      .sec09 .box_img .txts_wrap .txt .name {
        margin: 0.3em 0;
        line-height: 1.25;
        font-size: clamp(11px, calc(16vw / 11.3), 16px);
        font-size: clamp(11px, calc(14vw / 11.3), 14px);
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .sec09 .box_img .txts_wrap .txt .name {
            font-size: calc(16vw / 3.9); } }
      .sec09 .box_img .txts_wrap .txt .text {
        margin: 0.3em 0;
        line-height: 1.25;
        font-size: clamp(11px, calc(16vw / 11.3), 16px);
        font-size: clamp(11px, calc(15vw / 11.3), 15px);
        font-weight: 400; }
        @media screen and (max-width: 767px) {
          .sec09 .box_img .txts_wrap .txt .text {
            font-size: calc(14vw / 3.9);
            font-size: calc(12vw / 3.9); } }
      .sec09 .box_img .txts_wrap .items01 {
        width: calc(495%/11.4);
        width: calc(495%/13.4);
        margin-left: auto;
        margin-bottom: 35px; }
        @media screen and (max-width: 1600px) {
          .sec09 .box_img .txts_wrap .items01 {
            width: 100%; } }
      .sec09 .box_img .txts_wrap .items02 {
        display: flex;
        justify-content: space-between;
        width: calc(495%/11.4);
        width: calc(495%/13.4);
        margin-left: auto; }
        @media screen and (max-width: 1600px) {
          .sec09 .box_img .txts_wrap .items02 {
            width: 100%; } }
        .sec09 .box_img .txts_wrap .items02 .item {
          width: calc(245%/4.95); }
    .sec09 .box_img .imgs {
      width: calc(860%/16);
      margin-left: 100px;
      margin-right: auto; }
      @media screen and (max-width: 1600px) {
        .sec09 .box_img .imgs {
          width: calc(870%/13.7);
          margin: 0; } }
      @media screen and (max-width: 1400px) {
        .sec09 .box_img .imgs figure {
          overflow: hidden;
          height: 100%; }
        .sec09 .box_img .imgs img {
          object-fit: cover;
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 767px) {
        .sec09 .box_img .imgs {
          display: none; } }

.tab_wrap.second, .tab_wrap.third {
  background: #fff; }

.ls_ex {
  letter-spacing: 0.02em !important; }

.sec10 {
  background: #fff;
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec10 {
      padding-bottom: 50px; } }
  .sec10 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec10 .sec_ttl_wrap {
        padding: 50px 0; } }
  .sec10 .inner {
    max-width: 1160px; }
  .sec10 .box_img {
    position: relative; }
    @media screen and (max-width: 1600px) {
      .sec10 .box_img {
        max-width: 1470px;
        width: calc(100% - 20px);
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        margin-right: auto; } }
    @media screen and (max-width: 1200px) {
      .sec10 .box_img {
        width: calc(100% - 40px);
        margin: 0 auto;
        flex-direction: column;
        gap: 40px 0; } }
    .sec10 .box_img .txts_wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      max-width: 1340px;
      max-width: 1540px;
      margin: 0 auto; }
      @media screen and (max-width: 1600px) {
        .sec10 .box_img .txts_wrap {
          max-width: 1470px;
          position: static;
          width: calc(660%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1200px) {
        .sec10 .box_img .txts_wrap {
          width: 100%;
          max-width: 660px;
          margin: 0 auto; } }
      .sec10 .box_img .txts_wrap .items01 {
        width: calc(660%/14.7);
        width: calc(600%/15.4);
        margin-left: auto; }
        @media screen and (max-width: 1600px) {
          .sec10 .box_img .txts_wrap .items01 {
            width: 100%; } }
        .sec10 .box_img .txts_wrap .items01 .in_imgs {
          display: flex;
          justify-content: space-between; }
          .sec10 .box_img .txts_wrap .items01 .in_imgs figure {
            width: calc(320%/6.6); }
        .sec10 .box_img .txts_wrap .items01 .text {
          margin-top: 1.3em;
          margin-top: 2em;
          line-height: 1.8;
          letter-spacing: -0.05em;
          font-size: clamp(11px, calc(20vw / 11.3), 20px);
          font-size: clamp(11px, calc(18vw / 11.3), 18px);
          font-size: clamp(11px, calc(15vw / 11.3), 15px);
          font-size: clamp(11px, calc(14vw / 11.3), 14px);
          font-weight: 400; }
          @media screen and (max-width: 767px) {
            .sec10 .box_img .txts_wrap .items01 .text {
              font-size: calc(12vw / 3.9); }
              .sec10 .box_img .txts_wrap .items01 .text br {
                display: none; } }
    .sec10 .box_img .name {
      margin: 0.3em 0 0;
      line-height: 1.25;
      font-size: clamp(11px, calc(20vw / 11.3), 20px);
      font-size: clamp(11px, calc(18vw / 11.3), 18px);
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      font-size: clamp(11px, calc(15vw / 11.3), 15px);
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec10 .box_img .name {
          font-size: calc(16vw / 3.9);
          font-size: calc(14vw / 3.9); } }
    .sec10 .box_img .imgs {
      width: calc(840%/16);
      margin-right: auto;
      margin-left: 100px; }
      @media screen and (max-width: 1600px) {
        .sec10 .box_img .imgs {
          width: calc(790%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1400px) {
        .sec10 .box_img .imgs figure {
          overflow: hidden;
          height: 100%; }
        .sec10 .box_img .imgs img {
          object-fit: cover;
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 1200px) {
        .sec10 .box_img .imgs {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .sec10 .box_img .imgs {
          width: calc(100% + 40px);
          margin: 0 -20px; } }
      .sec10 .box_img .imgs .name {
        padding-left: 3em; }
        @media screen and (max-width: 1200px) {
          .sec10 .box_img .imgs .name {
            padding: 0; } }

.sec11 {
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec11 {
      padding-bottom: 50px; } }
  .sec11 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec11 .sec_ttl_wrap {
        padding: 50px 0; } }
  .sec11 .inner {
    max-width: 1160px; }
  .sec11 .box_img {
    position: relative; }
    @media screen and (max-width: 1600px) {
      .sec11 .box_img {
        max-width: 1470px;
        width: calc(100% - 20px);
        display: flex;
        flex-direction: row-reverse;
        align-items: stretch;
        justify-content: space-between;
        margin-left: auto; } }
    @media screen and (max-width: 1200px) {
      .sec11 .box_img {
        width: calc(100% - 40px);
        margin: 0 auto;
        flex-direction: column;
        gap: 40px 0; } }
    .sec11 .box_img .txts_wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      max-width: 1340px;
      max-width: 1540px;
      margin: 0 auto; }
      @media screen and (max-width: 1600px) {
        .sec11 .box_img .txts_wrap {
          max-width: 1470px;
          position: static;
          width: calc(660%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1200px) {
        .sec11 .box_img .txts_wrap {
          width: 100%;
          max-width: 660px;
          margin: 0 auto; } }
      .sec11 .box_img .txts_wrap .items01 {
        width: calc(660%/14.7);
        width: calc(600%/15.4);
        margin-right: auto; }
        @media screen and (max-width: 1600px) {
          .sec11 .box_img .txts_wrap .items01 {
            width: 100%; } }
        .sec11 .box_img .txts_wrap .items01 .in_imgs {
          display: flex;
          justify-content: space-between; }
          .sec11 .box_img .txts_wrap .items01 .in_imgs figure {
            width: calc(320%/6.6); }
        .sec11 .box_img .txts_wrap .items01 .text {
          margin-top: 1.3em;
          line-height: 1.8;
          letter-spacing: -0.05em;
          font-size: clamp(11px, calc(20vw / 11.3), 20px);
          font-size: clamp(11px, calc(15vw / 11.3), 15px);
          font-size: clamp(11px, calc(14vw / 11.3), 14px);
          font-weight: 400;
          padding-left: 4em; }
          @media screen and (max-width: 767px) {
            .sec11 .box_img .txts_wrap .items01 .text {
              padding: 0;
              font-size: calc(12vw / 3.9); }
              .sec11 .box_img .txts_wrap .items01 .text br {
                display: none; } }
    .sec11 .box_img .name {
      margin: 0.3em 0 0;
      line-height: 1.25;
      font-size: clamp(11px, calc(20vw / 11.3), 20px);
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      font-size: clamp(11px, calc(15vw / 11.3), 15px);
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec11 .box_img .name {
          font-size: calc(16vw / 3.9);
          font-size: calc(14vw / 3.9); } }
    .sec11 .box_img .imgs {
      width: calc(840%/16);
      margin-left: auto;
      margin-right: 100px; }
      @media screen and (max-width: 1600px) {
        .sec11 .box_img .imgs {
          width: calc(790%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1400px) {
        .sec11 .box_img .imgs figure {
          overflow: hidden;
          height: 100%; }
        .sec11 .box_img .imgs img {
          object-fit: cover;
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 1200px) {
        .sec11 .box_img .imgs {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .sec11 .box_img .imgs {
          width: calc(100% + 40px);
          margin: 0 -20px; } }
      @media screen and (max-width: 1200px) {
        .sec11 .box_img .imgs .name {
          padding: 0; } }

.sec12 {
  background: #fff;
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec12 {
      padding-bottom: 50px; } }
  .sec12 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec12 .sec_ttl_wrap {
        padding: 50px 0; } }
  @media screen and (max-width: 480px) {
    .sec12 .ttl2 {
      font-size: calc(19vw / 3.9);
      letter-spacing: 0; } }
  .sec12 .inner {
    max-width: 1160px; }
  .sec12 .box_img {
    position: relative; }
    @media screen and (max-width: 1600px) {
      .sec12 .box_img {
        max-width: 1470px;
        width: calc(100% - 20px);
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        margin-right: auto; } }
    @media screen and (max-width: 1200px) {
      .sec12 .box_img {
        width: calc(100% - 40px);
        margin: 0 auto;
        flex-direction: column;
        gap: 40px 0; } }
    .sec12 .box_img .txts_wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
      max-width: 1340px;
      max-width: 1540px;
      margin: 0 auto; }
      @media screen and (max-width: 1600px) {
        .sec12 .box_img .txts_wrap {
          max-width: 1470px;
          position: static;
          width: calc(660%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1200px) {
        .sec12 .box_img .txts_wrap {
          width: 100%;
          max-width: 660px;
          margin: 0 auto; } }
      .sec12 .box_img .txts_wrap .items01 {
        width: calc(660%/14.7);
        width: calc(600%/15.4);
        margin-left: auto; }
        @media screen and (max-width: 1600px) {
          .sec12 .box_img .txts_wrap .items01 {
            width: 100%; } }
        .sec12 .box_img .txts_wrap .items01 .in_imgs {
          display: flex;
          justify-content: space-between; }
          .sec12 .box_img .txts_wrap .items01 .in_imgs figure {
            width: calc(320%/6.6); }
        .sec12 .box_img .txts_wrap .items01 .text {
          margin-top: 1.3em;
          line-height: 1.8;
          letter-spacing: -0.05em;
          font-size: clamp(11px, calc(20vw / 11.3), 20px);
          font-size: clamp(11px, calc(15vw / 11.3), 15px);
          font-size: clamp(10px, calc(14vw / 11.3), 14px);
          font-weight: 400; }
          @media screen and (max-width: 767px) {
            .sec12 .box_img .txts_wrap .items01 .text {
              font-size: calc(12vw / 3.9); }
              .sec12 .box_img .txts_wrap .items01 .text br {
                display: none; } }
    .sec12 .box_img .name {
      margin: 0.3em 0 0;
      line-height: 1.25;
      font-size: clamp(11px, calc(20vw / 11.3), 20px);
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      font-size: clamp(11px, calc(15vw / 11.3), 15px);
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec12 .box_img .name {
          font-size: calc(16vw / 3.9);
          font-size: calc(14vw / 3.9); } }
    .sec12 .box_img .imgs {
      width: calc(840%/16);
      margin-right: auto;
      margin-left: 100px; }
      @media screen and (max-width: 1600px) {
        .sec12 .box_img .imgs {
          width: calc(790%/14.7);
          margin: 0; } }
      @media screen and (max-width: 1400px) {
        .sec12 .box_img .imgs figure {
          overflow: hidden;
          height: 100%; }
        .sec12 .box_img .imgs img {
          object-fit: cover;
          width: 100%;
          height: 100%; } }
      @media screen and (max-width: 1200px) {
        .sec12 .box_img .imgs {
          width: 100%; } }
      @media screen and (max-width: 767px) {
        .sec12 .box_img .imgs {
          width: calc(100% + 40px);
          margin: 0 -20px; } }
      .sec12 .box_img .imgs .name {
        padding-left: 3em; }
        @media screen and (max-width: 1200px) {
          .sec12 .box_img .imgs .name {
            padding: 0; } }

.sec13 {
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec13 {
      padding-bottom: 50px; } }
  .sec13 .sec_ttl_wrap {
    padding: 120px 0; }
    @media screen and (max-width: 767px) {
      .sec13 .sec_ttl_wrap {
        padding: 50px 0; } }
  .sec13 .img_list {
    width: calc(100% - 14px);
    margin: 0 auto;
    display: flex;
    gap: 0 7px; }
    @media screen and (max-width: 480px) {
      .sec13 .img_list {
        width: calc(100% - 40px);
        flex-direction: column;
        gap: 25px 0; } }
    .sec13 .img_list figcaption {
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      margin-top: 0.6em;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec13 .img_list figcaption {
          font-size: calc(14vw / 3.9);
          line-height: 1.2; } }
  .sec13 .inner._ex {
    max-width: 1358px; }
    @media screen and (max-width: 480px) {
      .sec13 .inner._ex .img1104 {
        width: calc(100% + 40px);
        margin: 0 -20px; }
        .sec13 .inner._ex .img1104 .cap_r {
          padding-right: 1em; } }
    .sec13 .inner._ex .img1104 .t_cap_b_l {
      left: calc(110%/13.58);
      bottom: calc(100%/10.54); }
  .sec13 .item_list {
    position: relative;
    top: -40px;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .sec13 .item_list {
        top: 0;
        flex-direction: column;
        gap: 40px 0;
        max-width: 500px;
        margin: 40px auto 0; } }
    .sec13 .item_list .item {
      width: calc(345%/11.4); }
      @media screen and (max-width: 767px) {
        .sec13 .item_list .item {
          width: 100%; } }
      .sec13 .item_list .item .img_cap {
        text-align: center;
        margin: 0 auto; }
        .sec13 .item_list .item .img_cap img {
          width: 100%; }
    .sec13 .item_list .txt_box .ttl {
      margin: 0.4em 0;
      line-height: 1.6;
      font-size: clamp(14px, calc(24vw / 11.3), 24px);
      font-size: clamp(14px, calc(20vw / 11.3), 20px);
      font-size: clamp(14px, calc(19vw / 11.3), 19px);
      font-size: clamp(14px, calc(18vw / 11.3), 18px);
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec13 .item_list .txt_box .ttl {
          font-size: calc(14vw / 3.9); } }
    .sec13 .item_list .txt_box .txt1 {
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      font-size: clamp(11px, calc(16vw / 11.3), 16px);
      font-weight: 400;
      margin-bottom: 0.6em; }
      @media screen and (max-width: 767px) {
        .sec13 .item_list .txt_box .txt1 {
          font-size: calc(12vw / 3.9); } }
    .sec13 .item_list .txt_box .txt2 {
      line-height: 1.4;
      font-size: clamp(10px, calc(16vw / 11.3), 14px);
      font-size: 11px; }
      @media screen and (max-width: 767px) {
        .sec13 .item_list .txt_box .txt2 {
          font-size: calc(10vw / 3.9);
          font-size: 9px; } }
    .sec13 .item_list .txt_box a {
      display: block;
      word-break: break-all; }

.box_img .inn {
  width: fit-content;
  margin-inline: auto;
  position: relative; }
  @media screen and (max-width: 480px) {
    .box_img .inn {
      width: calc(100% + 20px);
      margin: 0 -10px; } }
  .box_img .inn ul {
    display: grid;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    grid-column-gap: 4%;
    grid-row-gap: 13px; }
    .box_img .inn ul li:nth-child(1) {
      grid-area: 1 / 1 / 2 / 3; }
    .box_img .inn ul li:nth-child(2) {
      grid-area: 2 / 1 / 5 / 2; }
    .box_img .inn ul li:nth-child(3) {
      grid-area: 2 / 2 / 3 / 3; }
    .box_img .inn ul li:nth-child(4) {
      grid-area: 3 / 2 / 4 / 3; }
    .box_img .inn ul li:nth-child(5) {
      grid-area: 4 / 2 / 5 / 3; }
.box_img .t1 {
  font-size: clamp(10px, calc(16vw / 11.8), 16px);
  line-height: 1.6; }
  @media screen and (max-width: 480px) {
    .box_img .t1 {
      margin-top: 5px;
      font-size: calc(10vw / 3.9); }
      .box_img .t1 .s {
        line-height: 1.4; } }

.sec4_bg {
  padding: 120px 0; }
  @media screen and (max-width: 767px) {
    .sec4_bg {
      padding: 50px 0; } }

.sec04 {
  padding: 120px 0; }
  @media screen and (max-width: 767px) {
    .sec04 {
      padding: 50px 0; } }

.sec041 {
  padding: 0 0 120px; }
  @media screen and (max-width: 767px) {
    .sec041 {
      padding: 0 0 80px; } }

@media screen and (max-width: 767px) {
  .crown {
    width: 85%;
    margin-inline: auto; } }

.sec05 {
  padding: 120px 0; }
  @media screen and (max-width: 767px) {
    .sec05 {
      padding: 50px 0; } }
  .sec05 .ttl3 {
    letter-spacing: 0; }
  .sec05 .box51 {
    max-width: 900px;
    margin-inline: auto; }
  .sec05 .box52 {
    max-width: 930px;
    margin-inline: auto; }
    .sec05 .box52 .t1 {
      font-size: clamp(14px, calc(25vw / 9.3), 25px);
      font-size: clamp(14px, calc(22vw / 9.3), 22px);
      line-height: 1.4;
      padding-bottom: 0.4em;
      margin-bottom: 0.4em;
      border-bottom: solid 1px #000;
      font-weight: 700;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec05 .box52 .t1 {
          font-size: 15px;
          font-size: 18px; } }
      @media screen and (max-width: 480px) {
        .sec05 .box52 .t1 {
          font-size: calc(18vw / 3.9); } }
      .sec05 .box52 .t1 .s {
        font-size: 56%;
        color: #333; }
        @media screen and (max-width: 767px) {
          .sec05 .box52 .t1 .s {
            font-size: 70%;
            margin-top: 0.3em;
            display: block;
            margin-left: 0; } }
    .sec05 .box52 .t2 {
      font-size: clamp(14px, calc(18vw / 9.3), 18px);
      font-size: clamp(12px, calc(16vw / 9.3), 15px);
      line-height: 1.7;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .sec05 .box52 .t2 {
          font-size: 12px;
          font-size: 14px; } }
      @media screen and (max-width: 480px) {
        .sec05 .box52 .t2 {
          font-size: calc(14vw / 3.9); } }
  .sec05 .location-list {
    max-width: 1120px;
    margin-inline: auto; }
    .sec05 .location-list ul {
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec05 .location-list ul {
          flex-direction: column;
          gap: 35px; } }
      .sec05 .location-list ul li {
        width: calc(340% / 11.2); }
        @media screen and (max-width: 480px) {
          .sec05 .location-list ul li {
            width: 100%; } }

.sec06 {
  padding: 120px 0; }
  @media screen and (max-width: 767px) {
    .sec06 {
      padding: 50px 0; } }
  .sec06 .box61 {
    max-width: 913px;
    max-width: 853px;
    margin-inline: auto; }
    .sec06 .box61 .t_cap {
      right: calc(475% / 11.4);
      right: calc(184% / 8.53); }
    @media screen and (max-width: 480px) {
      .sec06 .box61 {
        margin-inline: -20px; }
        .sec06 .box61 .cap_r {
          padding: 0 5px; } }

.sec07 {
  background: #fff;
  padding-bottom: 120px; }
  @media screen and (max-width: 767px) {
    .sec07 {
      padding-top: 15px;
      padding-bottom: 50px; } }
  .sec07 .li_ttl {
    text-align: center;
    font-size: clamp(18px, calc(32vw / 11.8), 32px);
    font-size: clamp(18px, calc(28vw / 11.8), 28px);
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 80px; }
    @media screen and (max-width: 480px) {
      .sec07 .li_ttl {
        font-size: calc(20vw / 3.9);
        font-size: calc(19vw / 3.9);
        margin-bottom: 40px; } }
    .sec07 .li_ttl .ja {
      display: block;
      font-weight: 400;
      letter-spacing: 0.08em;
      margin-inline: auto; }
    .sec07 .li_ttl .en {
      display: block;
      font-weight: 300;
      font-size: 120%;
      margin-inline: auto; }

.lifeinfo_wrap {
  max-width: 1140px;
  margin: 0 auto; }
  .lifeinfo_wrap .lifeinfo_map {
    width: 100%;
    height: 0;
    position: relative;
    margin-inline: auto;
    margin-bottom: 50px;
    padding-top: calc(750% / 11.4);
    padding-top: calc(650% / 11.4); }
    .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;
        margin-bottom: 20px;
        height: 125vw;
        padding-top: 0; } }
  .lifeinfo_wrap .lifeinfo_tab {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
    row-gap: 15px;
    gap: 15px calc(20% / 11.4); }
    @media screen and (max-width: 480px) {
      .lifeinfo_wrap .lifeinfo_tab {
        margin-bottom: 20px;
        gap: 10px 2%; } }
    .lifeinfo_wrap .lifeinfo_tab li {
      cursor: pointer;
      width: calc(368% / 11.4);
      width: calc(270% / 11.4);
      border: solid 2px #007373;
      background: #007373;
      color: #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: 49%; } }
      @media screen and (max-width: 480px) {
        .lifeinfo_wrap .lifeinfo_tab li:nth-last-child(1) {
          width: 70%; } }
      .lifeinfo_wrap .lifeinfo_tab li p {
        font-size: clamp(10px, calc(18vw / 11.8), 18px);
        font-weight: 700;
        font-weight: 400;
        line-height: 1.2;
        padding: 0.9em 0; }
        @media screen and (max-width: 480px) {
          .lifeinfo_wrap .lifeinfo_tab li p {
            font-size: calc(13vw / 3.9); } }
      .lifeinfo_wrap .lifeinfo_tab li.active, .lifeinfo_wrap .lifeinfo_tab li:hover {
        background: #fff;
        color: #007373; }
  .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(550% / 11.4);
        font-size: clamp(10px, calc(16vw / 11.4), 16px);
        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.02%;
          padding-bottom: 10px; }
          @media screen and (max-width: 480px) {
            .lifeinfo_wrap .lifeinfo_list li .item_list .item_in {
              gap: 0 1.22%;
              padding-bottom: 6px; } }
          @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: 6px; } }
          .lifeinfo_wrap .lifeinfo_list li .item_list .item_in dt {
            font-size: 90%;
            line-height: 1;
            width: 1.5em;
            height: 1.5em;
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            background: #007373;
            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.5em;
              border-bottom: dotted 2px #000; }

.location-list {
  position: relative; }
  .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 .img {
    margin-bottom: 12px;
    position: relative; }
    .location-list li .img img {
      width: 100%; }
    .location-list li .img .cap {
      bottom: -18px; }
      @media screen and (max-width: 480px) {
        .location-list li .img .cap {
          bottom: -14px;
          bottom: 0;
          color: #fff;
          background: rgba(0, 0, 0, 0.5);
          padding: 1px 8px;
          right: 0; } }
      .location-list li .img .cap.b0 {
        bottom: 0; }
  .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 .txt {
    text-align: left; }
    .location-list .txt .name {
      font-size: clamp(14px, calc(20vw / 16), 20px);
      font-size: clamp(12px, calc(18vw / 11.8), 18px);
      font-size: clamp(12px, calc(17vw / 11.8), 17px);
      line-height: 1.2;
      margin-bottom: 0.6em;
      font-weight: 700;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .location-list .txt .name {
          font-size: calc(17vw / 3.9);
          font-size: calc(15vw / 3.9); } }
      .location-list .txt .name .small {
        font-size: 70%; }
      .location-list .txt .name .s {
        font-size: 70%;
        color: #333; }
        @media screen and (max-width: 767px) {
          .location-list .txt .name .s {
            margin-top: 0.3em;
            margin-left: 0; } }
      .location-list .txt .name .s1 {
        font-size: 70%;
        color: #333; }
        @media screen and (max-width: 767px) {
          .location-list .txt .name .s1 {
            margin-top: 0.3em; } }
    .location-list .txt .text {
      color: #333;
      font-size: clamp(14px, calc(16vw / 16), 16px);
      font-size: clamp(12px, calc(15vw / 16), 15px);
      line-height: 1.5;
      font-weight: 400; }
      @media screen and (max-width: 767px) {
        .location-list .txt .text {
          font-size: calc(14vw / 3.9); } }
    .location-list .txt .list_ttl {
      font-size: clamp(15px, calc(24vw / 16), 24px);
      line-height: 1;
      margin-top: 0.6em;
      margin-bottom: 0.5em;
      color: #938059;
      display: flex;
      align-items: center; }
      .location-list .txt .list_ttl::after {
        content: "";
        flex: 1;
        height: 1px;
        background: #938059;
        margin-left: 1em; }
    .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 {
    padding-bottom: 80px; }
    @media screen and (max-width: 767px) {
      .location-list .swiper {
        padding-bottom: 60px; } }
  .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 {
    width: 14px;
    height: 14px;
    background: none;
    border: solid 1px #727171;
    opacity: 1;
    margin: 0 10px; }
    @media screen and (max-width: 767px) {
      .location-list .swiper-pagination-bullet {
        width: 12px;
        height: 12px;
        margin: 0 7px;
        border: solid 1px #727171; } }
  .location-list .swiper-pagination-bullet-active {
    background: #727171; }

@media screen and (max-width: 520px) {
  .sld {
    overflow-x: auto;
    overflow-y: hidden; }

  .scroll_hint_icon_wrap {
    display: block;
    z-index: 99; } }
@media screen and (max-width: 480px) {
  .sld3 img {
    width: 600px;
    max-width: none; } }

.cap_l a {
  word-break: break-all; }

.img802 {
  display: grid;
  grid-template-columns: calc(1025% / 16) calc(570% / 16);
  grid-template-rows: repeat(2, auto);
  grid-column-gap: calc(5% / 16);
  grid-row-gap: 5px; }
  .img802 > div:nth-child(1) {
    grid-area: 1 / 1 / 3 / 2; }
  .img802 > div:nth-child(2) {
    grid-area: 1 / 2 / 2 / 3; }
  .img802 > div:nth-child(3) {
    grid-area: 2 / 2 / 3 / 3; }
  .img802 img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  @media screen and (max-width: 480px) {
    .img802 {
      display: flex;
      flex-wrap: wrap;
      gap: 4px; }
      .img802 > div {
        width: calc(50% - 2px); }
      .img802 > div:nth-child(1) {
        width: 100%; } }

/*# sourceMappingURL=location.css.map */
