/*! Writen  by SCSS */
.brown {
  color: #a97836; }

.inner_main .main_bg {
  background-image: url("../images/location/main.png"); }

.sec01 {
  padding-bottom: clamp(60px, 10.834vw, 130px); }
  .sec01 .big_image {
    margin-bottom: clamp(40px, 4.167vw, 50px); }
  @media screen and (max-width: 480px) {
    .sec01 .sec_ttl {
      font-size: 5.2vw; } }
  .sec01 .sec01_item01 {
    flex-wrap: wrap;
    row-gap: clamp(50px, 7.5vw, 90px);
    margin-bottom: clamp(60px, 7.5vw, 90px); }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_item01 {
        row-gap: 50px; } }
    .sec01 .sec01_item01 .item_in {
      width: 46.67%; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item01 .item_in {
          width: 100%; } }
      .sec01 .sec01_item01 .item_in.full {
        width: 100%; }
      .sec01 .sec01_item01 .item_in .photo_group.grid {
        display: grid;
        gap: 20px;
        grid-template-columns: repeat(4, 1fr); }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_item01 .item_in .photo_group.grid {
            gap: 10px;
            grid-template-columns: repeat(2, 1fr); } }
        .sec01 .sec01_item01 .item_in .photo_group.grid .photo.big {
          grid-row: 1/3;
          grid-column: 1/3; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_item01 .item_in .photo_group.grid .photo.big {
              grid-column: span 2; } }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item01 .item_in .photo_group.flex {
          flex-direction: column;
          row-gap: 10px; } }
      .sec01 .sec01_item01 .item_in .photo_group.flex .photo {
        width: 49.17%; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_item01 .item_in .photo_group.flex .photo {
            width: 100%; } }
      .sec01 .sec01_item01 .item_in .text_group {
        flex-direction: column; }
        .sec01 .sec01_item01 .item_in .text_group .t01 {
          text-align: center;
          font-size: clamp(18px, 2vw, 24px);
          color: #265858;
          padding-bottom: 20px;
          margin: 30px 0 20px;
          border-bottom: 3px double #265858;
          line-height: 1.4; }
          @media screen and (max-width: 820px) {
            .sec01 .sec01_item01 .item_in .text_group .t01 {
              margin-top: 20px; } }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_item01 .item_in .text_group .t01 {
              margin-top: 15px;
              padding-bottom: 15px;
              padding-bottom: 15px; } }
          .sec01 .sec01_item01 .item_in .text_group .t01 .small {
            font-size: 70%; }
        .sec01 .sec01_item01 .item_in .text_group .t02 {
          font-size: clamp(12px, 1.334vw, 16px); }
  .sec01 .sec01_item02 {
    padding: 30px;
    padding-right: 20px;
    background: linear-gradient(to right, #9fc7c4 0%, #d5eae3 50%, #9fc7c4 100%);
    position: relative; }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_item02 {
        padding-right: 30px;
        flex-direction: column; } }
    .sec01 .sec01_item02:after {
      content: "";
      position: absolute;
      inset: 10px;
      border: 1px solid #FFF;
      pointer-events: none; }
    .sec01 .sec01_item02 .left {
      width: 49.14%;
      padding-right: 1.67%;
      flex-direction: column;
      position: relative;
      justify-content: flex-start; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item02 .left {
          width: 100%;
          padding-bottom: 20px;
          margin-bottom: 20px;
          border-bottom: 1px solid #000; } }
      .sec01 .sec01_item02 .left:after {
        content: "";
        position: absolute;
        inset: 0;
        left: auto;
        background: #000;
        width: 1px; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_item02 .left:after {
            content: none; } }
      .sec01 .sec01_item02 .left .left_in.over {
        padding-bottom: 30px;
        margin-bottom: 30px;
        border-bottom: 1px solid #000; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_item02 .left .left_in.over {
            padding-bottom: 20px;
            margin-bottom: 20px;
            flex-direction: column;
            row-gap: 20px; } }
        .sec01 .sec01_item02 .left .left_in.over .text_group {
          width: 60.56%; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_item02 .left .left_in.over .text_group {
              width: 100%; } }
        .sec01 .sec01_item02 .left .left_in.over .image {
          width: 37.99%; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_item02 .left .left_in.over .image {
              width: 100%;
              max-width: 207px;
              margin: 0 auto; } }
      .sec01 .sec01_item02 .left .left_in.under {
        align-items: flex-end; }
        .sec01 .sec01_item02 .left .left_in.under .text_group {
          width: 71.56%; }
        .sec01 .sec01_item02 .left .left_in.under .image {
          width: 22.39%; }
    .sec01 .sec01_item02 .right {
      width: 47.83%;
      display: flex;
      flex-direction: column;
      row-gap: 30px;
      justify-content: space-between; }
      @media screen and (max-width: 1200px) {
        .sec01 .sec01_item02 .right {
          justify-content: flex-start; } }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item02 .right {
          width: 100%; } }
      @media screen and (max-width: 820px) {
        .sec01 .sec01_item02 .right .map_group {
          flex-direction: column;
          row-gap: 10px; } }
      .sec01 .sec01_item02 .right .map_group .map01 {
        width: 67.28%;
        position: relative; }
        @media screen and (max-width: 820px) {
          .sec01 .sec01_item02 .right .map_group .map01 {
            width: 100%; } }
        .sec01 .sec01_item02 .right .map_group .map01:after {
          content: "";
          position: absolute;
          inset: 0;
          border: 1px solid #000; }
      .sec01 .sec01_item02 .right .map_group .map02 {
        width: 30.91%; }
        @media screen and (max-width: 820px) {
          .sec01 .sec01_item02 .right .map_group .map02 {
            width: 100%; } }
    .sec01 .sec01_item02 .txt01 {
      font-size: clamp(16px, 2.154vw, 28px);
      line-height: 1.42;
      margin-bottom: 5px; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item02 .txt01 {
          font-size: 18px;
          line-height: 1.5; } }
    .sec01 .sec01_item02 .txt02 {
      font-size: clamp(13px, 1.847vw, 24px);
      line-height: 1.66;
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item02 .txt02 {
          font-size: 14px;
          margin-bottom: 15px; } }
    .sec01 .sec01_item02 .txt03 {
      font-size: clamp(11px, 1.231vw, 16px);
      line-height: 1.66; }
    .sec01 .sec01_item02 .cap {
      font-size: clamp(10px, 0.924vw, 12px); }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_item02 .cap {
          font-size: 10px;
          line-height: 1.4; } }

.sec02 .main_image {
  position: relative; }
  .sec02 .main_image .main_ttl {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: clamp(20px, 2.5vw, 30px);
    letter-spacing: 0.2em;
    color: #FFF; }
    @media screen and (max-width: 480px) {
      .sec02 .main_image .main_ttl {
        font-size: 4.4vw; } }
.sec02 .map_image {
  margin: clamp(60px, 7.5vw, 90px) auto clamp(60px, 9.167vw, 110px);
  position: relative; }
  @media screen and (max-width: 480px) {
    .sec02 .map_image {
      margin: 40px auto; } }
  .sec02 .map_image:after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid #000;
    pointer-events: none; }
.sec02 .sec02_item {
  display: flex;
  flex-direction: column; }
  .sec02 .sec02_item .item_in {
    padding-bottom: clamp(60px, 8.334vw, 100px);
    position: relative; }
    .sec02 .sec02_item .item_in.last {
      padding-bottom: clamp(40px, 6.667vw, 80px); }
    .sec02 .sec02_item .item_in .bg_butterfly {
      position: absolute;
      left: 0;
      bottom: 100px;
      width: 36.82%;
      z-index: -1; }
      @media screen and (max-width: 480px) {
        .sec02 .sec02_item .item_in .bg_butterfly {
          bottom: 0%; } }
      .sec02 .sec02_item .item_in .bg_butterfly.bottom {
        bottom: -7%; }
        @media screen and (max-width: 480px) {
          .sec02 .sec02_item .item_in .bg_butterfly.bottom {
            bottom: 0%; } }
      .sec02 .sec02_item .item_in .bg_butterfly.right {
        left: auto;
        right: 0; }
.sec02 .key_visual_wrap {
  margin: 0 auto clamp(40px, 5vw, 60px); }
  @media screen and (max-width: 480px) {
    .sec02 .key_visual_wrap {
      margin: 0 auto 30px; } }
  .sec02 .key_visual_wrap.rev {
    flex-direction: row-reverse; }
  .sec02 .key_visual_wrap.p-view .v_in .title_group .butterfly {
    opacity: 1; }
    .sec02 .key_visual_wrap.p-view .v_in .title_group .butterfly.left {
      transform: translate(20px, 0); }
      @media screen and (max-width: 480px) {
        .sec02 .key_visual_wrap.p-view .v_in .title_group .butterfly.left {
          transform: translate(15px, 0); } }
    .sec02 .key_visual_wrap.p-view .v_in .title_group .butterfly.right {
      transform: translate(0, 0); }
      @media screen and (max-width: 480px) {
        .sec02 .key_visual_wrap.p-view .v_in .title_group .butterfly.right {
          transform: translate(-10px, 0); } }
  @media screen and (max-width: 480px) {
    .sec02 .key_visual_wrap.ex .visual_half {
      width: 100%;
      flex-direction: row;
      align-items: stretch; } }
  .sec02 .key_visual_wrap.ex .visual_half .v_in {
    width: 100%; }
    .sec02 .key_visual_wrap.ex .visual_half .v_in.title {
      padding: 65px 10px; }
      @media screen and (max-width: 480px) {
        .sec02 .key_visual_wrap.ex .visual_half .v_in.title {
          padding: 0; } }
  @media screen and (max-width: 480px) {
    .sec02 .key_visual_wrap.ex.rev .visual_half {
      flex-direction: row-reverse; } }
  .sec02 .key_visual_wrap .visual_half {
    width: 50%;
    display: flex;
    align-items: flex-start;
    flex-direction: column; }
    .sec02 .key_visual_wrap .visual_half .v_in {
      width: 100%; }
    .sec02 .key_visual_wrap .visual_half.pc_block {
      flex-direction: column-reverse; }
      @media screen and (max-width: 480px) {
        .sec02 .key_visual_wrap .visual_half.pc_block {
          display: none !important; } }
  .sec02 .key_visual_wrap .v_in {
    width: 50%; }
    .sec02 .key_visual_wrap .v_in.title {
      display: flex;
      justify-content: center;
      align-items: center;
      background: url("../images/location/main_bg.jpg") center top repeat; }
    .sec02 .key_visual_wrap .v_in .title_group {
      width: fit-content;
      position: relative; }
      .sec02 .key_visual_wrap .v_in .title_group .title {
        font-size: clamp(20px, 2vw, 32px);
        color: #265858;
        text-align: center;
        letter-spacing: 0.05em;
        line-height: 1.5; }
        @media screen and (max-width: 480px) {
          .sec02 .key_visual_wrap .v_in .title_group .title {
            font-size: 4.5vw; } }
        .sec02 .key_visual_wrap .v_in .title_group .title .small {
          display: block;
          font-size: 70%; }
      .sec02 .key_visual_wrap .v_in .title_group .butterfly {
        position: absolute;
        top: -55%;
        max-width: 101px;
        width: 100%;
        mix-blend-mode: multiply;
        opacity: 0;
        transition: 0.5s opacity ease-in-out 0.5s,0.5s transform ease-in-out 0.5s;
        will-change: opacity,transform; }
        @media screen and (max-width: 480px) {
          .sec02 .key_visual_wrap .v_in .title_group .butterfly {
            width: 50px; } }
        .sec02 .key_visual_wrap .v_in .title_group .butterfly.left {
          right: 100%;
          transform: translate(0px, -20px); }
          @media screen and (max-width: 480px) {
            .sec02 .key_visual_wrap .v_in .title_group .butterfly.left {
              transform: translate(0px, -10px); } }
        .sec02 .key_visual_wrap .v_in .title_group .butterfly.right {
          left: 100%;
          transform: translate(20px, -20px); }
          @media screen and (max-width: 480px) {
            .sec02 .key_visual_wrap .v_in .title_group .butterfly.right {
              transform: translate(10px, -10px); } }
.sec02 .lifeinfo_wrap {
  margin-bottom: clamp(30px, 5vw, 60px); }
  @media screen and (max-width: 480px) {
    .sec02 .lifeinfo_wrap {
      flex-direction: column; } }
  .sec02 .lifeinfo_wrap.ex {
    margin-bottom: 0; }
    @media screen and (max-width: 480px) {
      .sec02 .lifeinfo_wrap.ex {
        row-gap: 60px; } }
  .sec02 .lifeinfo_wrap .lifeinfo_box {
    width: 46.67%; }
    .sec02 .lifeinfo_wrap .lifeinfo_box .sp_block {
      display: none !important; }
      @media screen and (max-width: 480px) {
        .sec02 .lifeinfo_wrap .lifeinfo_box .sp_block {
          display: flex !important;
          margin: 0 -20px 30px; } }
    .sec02 .lifeinfo_wrap .lifeinfo_box.height_same {
      display: flex;
      flex-direction: column; }
      .sec02 .lifeinfo_wrap .lifeinfo_box.height_same .lifeinfo_item {
        margin-bottom: clamp(40px, 5vw, 60px); }
      @media screen and (max-width: 480px) {
        .sec02 .lifeinfo_wrap .lifeinfo_box.height_same .photo_group {
          flex-direction: row;
          gap: 0; } }
      .sec02 .lifeinfo_wrap .lifeinfo_box.height_same .photo_group .photo {
        width: 48.22%; }
        .sec02 .lifeinfo_wrap .lifeinfo_box.height_same .photo_group .photo.full {
          width: 100%; }
    @media screen and (max-width: 480px) {
      .sec02 .lifeinfo_wrap .lifeinfo_box {
        width: 100%; } }
    .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table {
      width: 100%;
      border-spacing: 0;
      border-collapse: collapse; }
      .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table th, .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td {
        font-size: clamp(11px, 1.231vw, 16px);
        font-weight: 400;
        line-height: 1.5;
        padding-top: 10px;
        padding-bottom: 10px;
        vertical-align: top; }
        @media screen and (max-width: 820px) {
          .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table th, .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td {
            font-size: 12px; } }
        @media screen and (max-width: 480px) {
          .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table th, .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td {
            padding-top: 6px;
            padding-bottom: 6px; } }
      .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table th {
        text-align: left; }
        .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table th.line2 {
          line-height: 1.2; }
      .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td {
        text-align: right; }
        .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td.time {
          width: 6em;
          padding-right: 0.5em; }
        .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table td.range {
          width: 6em; }
      .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table tr:last-child th, .sec02 .lifeinfo_wrap .lifeinfo_box .lifeinfo_table tr:last-child td {
        border-bottom: none; }
@media screen and (max-width: 480px) {
  .sec02 .photo_group {
    flex-wrap: wrap;
    gap: 15px 4%; } }
.sec02 .photo_group.photo03 {
  max-width: 890px;
  margin: 0 auto; }
  @media screen and (max-width: 480px) {
    .sec02 .photo_group.photo03 {
      justify-content: center; } }
  .sec02 .photo_group.photo03 .photo {
    width: 30.34%; }
    @media screen and (max-width: 480px) {
      .sec02 .photo_group.photo03 .photo {
        width: 48%; } }
.sec02 .photo_group .photo {
  width: 22.5%; }
  @media screen and (max-width: 480px) {
    .sec02 .photo_group .photo {
      width: 48%; } }
  .sec02 .photo_group .photo.double {
    width: 46.67%; }
.sec02 .photo_group .photo_cap {
  font-size: clamp(10px, 1vw, 12px);
  text-align: right;
  line-height: 1.3;
  margin-top: 5px; }

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