@charset "UTF-8";
/*! Writen  by SCSS */
.color_red {
  color: #d90714 !important; }

.breadlist li:nth-child(2) {
  display: inline-block; }

.pageback {
  position: fixed;
  bottom: 80px;
  left: -200px;
  transition: all 0.5s ease-in-out 0s;
  z-index: 20; }
  .pageback.scrolled {
    left: 20px; }
  .pageback a {
    padding: 0.5em 1em;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.1em;
    gap: 0 0.15em;
    line-height: 1.29;
    background: #471b1b;
    color: #fff;
    text-align: left;
    transition: opacity 0.3s ease-in-out; }
    @media (hover: hover) {
      .pageback a:hover {
        opacity: 0.7; } }
    @media screen and (max-width: 480px) {
      .pageback a {
        font-size: 12px; } }
    .pageback a::before {
      content: "";
      display: block;
      width: 0.71em;
      height: 0.71em;
      border-top: 1px solid;
      border-right: 1px solid;
      transform: rotate(-135deg);
      margin-top: 0.15em; }

.bg {
  background-color: #f9f8f6; }

.text_dummy {
  color: #f0c; }

.sec .sec_ttl {
  margin-bottom: clamp(30px, 5.834vw, 70px);
  line-height: 1; }
.sec .list_inner {
  max-width: 1080px; }
  .sec .list_inner .sec_list {
    justify-content: flex-start;
    flex-wrap: wrap;
    grid-gap: clamp(20px, 3.704vw, 40px) calc(39%/10.8); }
    @media screen and (max-width: 768px) {
      .sec .list_inner .sec_list {
        margin: 0 auto; } }
    .sec .list_inner .sec_list .item {
      width: calc(240%/10.8); }
      @media screen and (max-width: 768px) {
        .sec .list_inner .sec_list .item {
          width: 48%;
          max-width: 100%; } }
      @media screen and (max-width: 768px) {
        .sec .list_inner .sec_list .item .img {
          text-align: center; } }
      .sec .list_inner .sec_list .item .text {
        padding: clamp(10px, 1.389vw, 15px) 0 clamp(5px, 0.893vw, 10px);
        border-bottom: 1px solid #ccc; }
        .sec .list_inner .sec_list .item .text.mb {
          margin-bottom: 5px; }

.main {
  background-color: #370601; }
  .main .inner {
    max-width: 1560px; }
  .main .text_wrap {
    color: #fff;
    padding: 35px 0; }
    .main .text_wrap .ttl {
      line-height: 1;
      margin-bottom: 15px; }
    .main .text_wrap .text {
      line-height: 1;
      font-size: clamp(14px, 1.334vw, 16px); }
  .main .tag {
    background: rgba(255, 255, 255, 0.3);
    padding-block: 20px;
    margin-bottom: clamp(30px, 4.167vw, 50px); }
    @media screen and (max-width: 480px) {
      .main .tag {
        padding: 10px;
        margin-bottom: 10px; } }
    .main .tag .list {
      display: flex;
      justify-content: center;
      column-gap: 10px;
      color: #fff; }
      @media screen and (max-width: 480px) {
        .main .tag .list {
          flex-wrap: wrap;
          grid-gap: 10px 0; } }
      .main .tag .list li {
        border-left: 1px solid #fff;
        padding-left: 10px;
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .main .tag .list li {
            font-size: 12px;
            width: 30%;
            text-align: center; }
            .main .tag .list li:nth-child(3), .main .tag .list li:last-child {
              border-right: 1px solid #fff; } }

.vsp600 {
  display: none; }
  @media screen and (max-width: 600px) {
    .vsp600 {
      display: block; } }

@media screen and (max-width: 480px) {
  .property_head {
    font-size: 26px;
    line-height: 1.4; } }
.property_head.property_head_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.8em 1em; }
  .property_head.property_head_wrap .link_button {
    font-size: 0.6em;
    position: relative;
    padding: 0.87em 1.25em;
    transition: color 0.3s ease-in-out;
    line-height: 1; }
    @media screen and (max-width: 960px) {
      .property_head.property_head_wrap .link_button {
        padding: 0.87em 0.4em; } }
    @media screen and (max-width: 480px) {
      .property_head.property_head_wrap .link_button {
        width: 80%; } }
    .property_head.property_head_wrap .link_button::before, .property_head.property_head_wrap .link_button::after {
      content: "";
      display: block;
      position: absolute;
      inset: 0; }
    .property_head.property_head_wrap .link_button::before {
      transform: scaleX(0);
      transform-origin: left center;
      transition: transform 0.3s ease-in-out; }
    @media (hover: hover) {
      .property_head.property_head_wrap .link_button:hover::before {
        transform: scaleX(1); } }
    .property_head.property_head_wrap .link_button .text_in {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0 0.5em; }
      .property_head.property_head_wrap .link_button .text_in .text {
        margin-left: auto;
        margin-right: auto; }
    .property_head.property_head_wrap .link_button.link_more {
      background: #453f35;
      color: #fff; }
      .property_head.property_head_wrap .link_button.link_more .text_in {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0 0.5em; }
        .property_head.property_head_wrap .link_button.link_more .text_in::after {
          content: "";
          display: block;
          line-height: 0;
          width: 1.75em;
          aspect-ratio: 28 / 6;
          transform: skewX(45deg);
          border-right: 1px solid currentColor;
          border-bottom: 1px solid currentColor; }
      .property_head.property_head_wrap .link_button.link_more::before {
        background: #fff; }
      .property_head.property_head_wrap .link_button.link_more::after {
        border: 1px solid #453f35; }
      @media (hover: hover) {
        .property_head.property_head_wrap .link_button.link_more:hover {
          color: #453f35; } }
    .property_head.property_head_wrap .link_button.link_contact {
      color: #370601; }
      .property_head.property_head_wrap .link_button.link_contact .icon {
        width: 1.25em; }
        .property_head.property_head_wrap .link_button.link_contact .icon svg {
          width: 100%;
          fill: currentColor; }
      .property_head.property_head_wrap .link_button.link_contact::before {
        background: #370601; }
      .property_head.property_head_wrap .link_button.link_contact::after {
        border: 1px solid #370601; }
      @media (hover: hover) {
        .property_head.property_head_wrap .link_button.link_contact:hover {
          color: #fff; } }
.property_head.ls01 {
  line-height: 1.4; }

.sec01 {
  padding-top: clamp(50px, 7.5vw, 90px);
  padding-bottom: clamp(50px, 7.5vw, 90px); }
  @media screen and (max-width: 480px) {
    .sec01 {
      padding: 30px 0; } }
  .sec01 .merit_wrap {
    font-size: clamp(20px, 2.58vw, 32px);
    line-height: 1;
    display: flex;
    justify-content: center;
    margin-bottom: clamp(40px, 5%, 60px);
    gap: 1em;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .sec01 .merit_wrap {
        font-size: 24px;
        flex-wrap: wrap; } }
    .sec01 .merit_wrap .item {
      display: flex;
      flex-direction: column;
      gap: 0.25em; }
      .sec01 .merit_wrap .item:not(:last-child) {
        padding-right: 1em;
        border-right: 1px solid; }
      @media screen and (max-width: 480px) {
        .sec01 .merit_wrap .item:nth-child(even) {
          padding-right: 0;
          border-right: none; } }
      @media screen and (max-width: 480px) {
        .sec01 .merit_wrap .item.sp_border_none:not(:last-child) {
          padding-right: 0;
          border-right: none; } }
      .sec01 .merit_wrap .item .text_top {
        font-size: 0.6em; }
      .sec01 .merit_wrap .item .text_bottom {
        margin-top: auto;
        display: flex;
        align-items: baseline;
        justify-content: center; }
        .sec01 .merit_wrap .item .text_bottom .text_lg {
          font-size: 1.5em; }
        .sec01 .merit_wrap .item .text_bottom .text_min {
          font-size: 0.6em; }
      .sec01 .merit_wrap .item.item_col .text_bottom {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.25em; }
      .sec01 .merit_wrap .item.item_col.item_col_center .text_bottom {
        height: 100%;
        align-self: center; }
  .sec01 .text_wrap .ttl_in {
    align-items: center;
    justify-content: center;
    column-gap: clamp(5px, 1.25vw, 15px);
    border-bottom: 1px solid #7f7f7f;
    padding-bottom: clamp(10px, 1.667vw, 20px);
    margin-bottom: clamp(10px, 1.667vw, 20px);
    line-height: 1;
    max-width: 700px;
    margin-inline: auto; }
    .sec01 .text_wrap .ttl_in .icon {
      padding: 8px 15px;
      line-height: 1;
      background-color: #9b8380;
      color: #fff; }
      @media screen and (max-width: 480px) {
        .sec01 .text_wrap .ttl_in .icon {
          padding-inline: 5px; } }
      .sec01 .text_wrap .ttl_in .icon.new {
        background: linear-gradient(90deg, #e4d450 0%, #ab7f15 100%); }
    .sec01 .text_wrap .ttl_in .ttl {
      font-size: clamp(20px, 3.167vw, 38px); }
      .sec01 .text_wrap .ttl_in .ttl span {
        font-size: 60%; }
  .sec01 .text_wrap .text_in {
    width: 84.17%;
    margin-inline: auto;
    justify-content: center;
    grid-gap: 0 1em; }
    @media screen and (max-width: 1200px) {
      .sec01 .text_wrap .text_in {
        flex-direction: column;
        grid-gap: 10px 0;
        width: fit-content;
        max-width: 400px;
        align-items: flex-start; } }
    .sec01 .text_wrap .text_in .text {
      font-size: clamp(12px, 1.334vw, 16px);
      line-height: 1;
      column-gap: 10px;
      align-items: center; }
      @media screen and (max-width: 1200px) {
        .sec01 .text_wrap .text_in .text {
          justify-content: center; } }
      .sec01 .text_wrap .text_in .text .icon {
        width: 70px;
        color: #9b8380;
        border: 1px solid;
        display: block;
        text-align: center;
        font-size: clamp(10px, 1vw, 12px);
        line-height: 1;
        height: fit-content;
        padding-block: 4px; }
  .sec01 .banner_anoa {
    margin-top: 40px;
    margin-inline: auto;
    max-width: 620px; }

.vr_wrap {
  margin-top: clamp(60px, 8.34%, 100px); }
  .vr_wrap .vr_head {
    font-size: clamp(16px, 1.93vw, 24px);
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.5em;
    margin-bottom: 1.5em; }
    .vr_wrap .vr_head .text {
      flex-shrink: 0; }
    .vr_wrap .vr_head::before, .vr_wrap .vr_head::after {
      content: "";
      display: block;
      flex-grow: 1;
      height: 1px;
      background: currentColor; }
  .vr_wrap .sec_ttl {
    font-size: clamp(16px, 1.93vw, 24px);
    margin-bottom: 0.8em !important; }
  .vr_wrap .vr_box {
    max-width: 1200px; }
    .vr_wrap .vr_box .txt01 {
      font-size: clamp(14px, 2vw, 24px);
      margin-bottom: 0.4em;
      text-align: center;
      line-height: 1; }
    .vr_wrap .vr_box iframe {
      display: block;
      line-height: 0;
      width: 100%;
      height: 100%;
      aspect-ratio: 4 / 3; }

.kosodate_banner {
  margin-top: clamp(40px, 5%, 60px); }

.sec02 {
  background-color: #fff;
  padding-block: clamp(40px, 6.667vw, 80px) clamp(60px, 9.167vw, 110px); }
  .sec02 .inner {
    max-width: 720px; }
  @media screen and (max-width: 600px) {
    .sec02 .list {
      flex-direction: column;
      max-width: 400px;
      margin: 0 auto;
      grid-gap: 30px 0; } }
  .sec02 .list.col1 {
    justify-content: center; }
  .sec02 .list.col3 {
    flex-wrap: wrap;
    justify-content: center;
    grid-gap: 30px; }
  .sec02 .list .item {
    position: relative;
    width: 47.23%;
    padding-top: clamp(8px, 1.084vw, 13px);
    padding-bottom: clamp(15px, 2.084vw, 25px); }
    @media screen and (max-width: 600px) {
      .sec02 .list .item {
        width: 100%;
        max-width: 100%; } }
    .sec02 .list .item::after {
      content: '';
      width: 100%;
      height: 100%;
      position: absolute;
      inset: 0;
      border: 1px solid #cccccc;
      pointer-events: none; }
    .sec02 .list .item .icon {
      width: 30px;
      aspect-ratio: 1;
      background-color: #000;
      display: inline-block;
      position: absolute;
      top: 0;
      right: 0;
      cursor: pointer;
      transition: all 0.3s ease-in-out 0s;
      text-align: center;
      z-index: 3; }
      @media (hover: hover) {
        .sec02 .list .item .icon:hover {
          opacity: .6; } }
    .sec02 .list .item .img {
      margin-bottom: 10px; }
    .sec02 .list .item .text_wrap {
      display: flex;
      flex-direction: column;
      grid-row-gap: clamp(10px, 1.667vw, 20px); }
      .sec02 .list .item .text_wrap .name {
        font-size: clamp(16px, 1.667vw, 20px);
        background-color: #453f35;
        text-align: center;
        color: #fff; }
      .sec02 .list .item .text_wrap .p1 {
        font-size: clamp(14px, 1.334vw, 16px);
        line-height: 1.6; }
      .sec02 .list .item .text_wrap .text_in {
        text-align: center; }
        .sec02 .list .item .text_wrap .text_in .p2 {
          background-color: #e5e5e5;
          text-align: center;
          font-size: clamp(13px, 1.25vw, 15px);
          line-height: 1;
          padding-block: clamp(5px, 0.667vw, 8px); }
        .sec02 .list .item .text_wrap .text_in .p3 {
          margin-top: clamp(15px, 1.25vw, 15px);
          font-size: clamp(18px, 1.834vw, 22px);
          line-height: 1; }
          .sec02 .list .item .text_wrap .text_in .p3 .small {
            font-size: 70%; }
          .sec02 .list .item .text_wrap .text_in .p3 .big {
            font-size: 130%; }
      .sec02 .list .item .text_wrap .text_flex .text_in {
        width: 46.67%; }
        .sec02 .list .item .text_wrap .text_flex .text_in.border {
          position: relative; }
          .sec02 .list .item .text_wrap .text_flex .text_in.border::after {
            content: '';
            width: 1px;
            height: 100%;
            background-color: #e5e5e5;
            position: absolute;
            left: -10px;
            top: 0; }
        .sec02 .list .item .text_wrap .text_flex .text_in .p2 {
          font-size: clamp(12px, 1.25vw, 15px); }
        .sec02 .list .item .text_wrap .text_flex .text_in .p3 {
          font-size: clamp(14px, 1.5vw, 18px); }

.sec03 {
  padding-top: clamp(50px, 10vw, 120px);
  padding-bottom: clamp(50px, 8.334vw, 100px); }
  .sec03 .anoa_bnr {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    width: 51.67%; }
    @media screen and (max-width: 600px) {
      .sec03 .anoa_bnr {
        width: 90%; } }
  .sec03 .tag_wrap {
    margin-bottom: clamp(30px, 5vw, 60px); }
    @media screen and (max-width: 600px) {
      .sec03 .tag_wrap {
        flex-wrap: wrap; } }
    .sec03 .tag_wrap .item {
      width: 15.75%;
      padding-block: clamp(15px, 1.852vw, 20px);
      background-color: #000;
      color: #fff;
      text-align: center;
      cursor: pointer; }
      @media screen and (max-width: 600px) {
        .sec03 .tag_wrap .item {
          width: 32%; }
          .sec03 .tag_wrap .item:nth-child(-n+3) {
            margin-bottom: 2%; } }
      @media (hover: hover) {
        .sec03 .tag_wrap .item:hover .text {
          opacity: 1; } }
      .sec03 .tag_wrap .item.active .text {
        opacity: 1; }
      .sec03 .tag_wrap .item .text {
        opacity: .7;
        line-height: 1;
        transition: all 0.3s ease-in-out 0s; }
      .sec03 .tag_wrap .item .en {
        font-size: clamp(12px, 1.334vw, 16px);
        margin-bottom: 10px;
        font-family: "Cinzel", serif;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 480px) {
          .sec03 .tag_wrap .item .en {
            font-size: 14px;
            margin-bottom: 0.3em; } }
      .sec03 .tag_wrap .item .ja {
        font-size: clamp(10px, 1.084vw, 13px); }
        @media screen and (max-width: 480px) {
          .sec03 .tag_wrap .item .ja {
            font-size: 12px; } }
  .sec03 .list:not(.active) {
    display: none; }
  .sec03 .list .b_item {
    width: 48.15%; }
    @media screen and (max-width: 768px) {
      .sec03 .list .b_item {
        text-align: center;
        width: 100%;
        max-width: 100%; } }
    .sec03 .list .b_item .ttl {
      margin: clamp(10px, 1.667vw, 20px) 0 clamp(20px, 3.334vw, 40px);
      text-align: left;
      line-height: 1; }

.sec04 {
  padding-top: clamp(50px, 10vw, 120px);
  padding-bottom: clamp(50px, 6.667vw, 80px);
  background-color: #fff; }
  .sec04 .small {
    font-size: clamp(12px, 1.084vw, 13px); }
  @media screen and (max-width: 600px) {
    .sec04 .sec_list .item .text {
      line-height: 1.4; }
      .sec04 .sec_list .item .text.ex {
        height: 4em;
        display: flex;
        align-items: center; } }
  .sec04 .sec_list .item .text2 {
    display: none; }

.sec05 {
  padding-top: clamp(50px, 10vw, 120px); }
  .sec05 .inner {
    max-width: 960px; }
  .sec05 .map {
    margin-bottom: clamp(30px, 4.167vw, 50px); }
  .sec05 .link_box {
    max-width: 320px;
    margin-inline: auto; }
    .sec05 .link_box .link_button {
      width: 100%; }
  .sec05 .ggmap {
    margin-bottom: clamp(30px, 4.167vw, 50px);
    padding-bottom: calc(620%/9.6);
    position: relative; }
    @media screen and (max-width: 600px) {
      .sec05 .ggmap {
        padding-bottom: calc(480%/5.6); } }
    .sec05 .ggmap iframe,
    .sec05 .ggmap object,
    .sec05 .ggmap embed {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

.sec06 {
  padding-top: clamp(60px, 10vw, 120px);
  padding-bottom: clamp(60px, 10vw, 120px); }
  .sec06 .inner {
    max-width: 960px; }
  .sec06 .list_wrap {
    /*.link_box {
    	max-width: 320px;
    	margin-inline: auto;
    }*/ }
    .sec06 .list_wrap .sud_ttl {
      margin-bottom: 15px;
      line-height: 1; }
    .sec06 .list_wrap .list {
      display: flex;
      flex-direction: column;
      row-gap: 10px;
      margin-bottom: clamp(40px, 6.667vw, 80px); }
      @media screen and (max-width: 900px) {
        .sec06 .list_wrap .list dl {
          display: block; } }
      .sec06 .list_wrap .list dl.big_dl dd {
        padding-top: 1em;
        padding-bottom: 1em; }
      .sec06 .list_wrap .list dl dt, .sec06 .list_wrap .list dl dd {
        padding: 5px 15px;
        line-height: 2; }
      .sec06 .list_wrap .list dl dt {
        width: 16.67%;
        background-color: #9b8380;
        color: #fff; }
        @media screen and (max-width: 900px) {
          .sec06 .list_wrap .list dl dt {
            width: 100%;
            max-width: 100%; } }
      .sec06 .list_wrap .list dl dd {
        width: 82.3%;
        border: 1px solid #cccccc; }
        @media screen and (max-width: 900px) {
          .sec06 .list_wrap .list dl dd {
            width: 100%;
            max-width: 100%;
            line-height: 1.6; } }

.ls03 {
  letter-spacing: -0.03em; }

.link_box {
  max-width: 660px;
  margin-inline: auto;
  margin-top: clamp(50px, 6.67%, 80px);
  text-align: center;
  font-size: clamp(12px, 1.11vw, 16px);
  line-height: 1;
  display: flex;
  justify-content: center;
  gap: 0.62em 3.03%; }
  @media screen and (max-width: 480px) {
    .link_box {
      max-width: 320px;
      flex-direction: column; } }
  .link_box a {
    width: 48.49%;
    position: relative;
    padding: 0.87em 1.25em;
    transition: color 0.3s ease-in-out; }
    @media screen and (max-width: 960px) {
      .link_box a {
        padding: 0.87em 0.4em; } }
    @media screen and (max-width: 480px) {
      .link_box a {
        width: 100%; } }
    .link_box a::before, .link_box a::after {
      content: "";
      display: block;
      position: absolute;
      inset: 0; }
    .link_box a::before {
      transform: scaleX(0);
      transform-origin: left center;
      transition: transform 0.3s ease-in-out; }
    @media (hover: hover) {
      .link_box a:hover::before {
        transform: scaleX(1); } }
    .link_box a .text_in {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0 0.5em; }
      .link_box a .text_in .text {
        margin-left: auto;
        margin-right: auto; }
    .link_box a.link_more {
      background: #453f35;
      color: #fff; }
      .link_box a.link_more .text_in {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0 0.5em; }
        .link_box a.link_more .text_in::after {
          content: "";
          display: block;
          line-height: 0;
          width: 1.75em;
          aspect-ratio: 28 / 6;
          transform: skewX(45deg);
          border-right: 1px solid currentColor;
          border-bottom: 1px solid currentColor; }
      .link_box a.link_more::before {
        background: #fff; }
      .link_box a.link_more::after {
        border: 1px solid #453f35; }
      @media (hover: hover) {
        .link_box a.link_more:hover {
          color: #453f35; } }
    .link_box a.link_contact {
      color: #370601; }
      .link_box a.link_contact .icon {
        width: 1.25em; }
        .link_box a.link_contact .icon svg {
          width: 100%;
          fill: currentColor; }
      .link_box a.link_contact::before {
        background: #370601; }
      .link_box a.link_contact::after {
        border: 1px solid #370601; }
      @media (hover: hover) {
        .link_box a.link_contact:hover {
          color: #fff; } }
    .link_box a.link_line {
      color: #06c755; }
      .link_box a.link_line .icon {
        width: 1.25em; }
        .link_box a.link_line .icon svg {
          width: 100%;
          fill: currentColor; }
      .link_box a.link_line::before {
        background: #06c755; }
      .link_box a.link_line::after {
        border: 1px solid #06c755; }
      @media (hover: hover) {
        .link_box a.link_line:hover {
          color: #fff; } }

.slider_wrap .swiper-pagination {
  position: static !important;
  padding: 35px 0 40px;
  line-height: 1; }
  @media screen and (max-width: 480px) {
    .slider_wrap .swiper-pagination {
      padding: 15px 0; } }
.slider_wrap .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  opacity: 1;
  background: #9b8380;
  border-radius: 0;
  border: 1px solid #370601;
  position: relative; }
  .slider_wrap .swiper-pagination-bullet::before {
    content: "";
    position: absolute;
    pointer-events: none;
    inset: -3px;
    border: 1px solid #370601; }
.slider_wrap .swiper-pagination-bullet-active::before {
  border-color: #9b8380; }

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #FFF;
  position: static; }

.type_list_wrap .version_txt {
  text-align: center;
  font-size: clamp(20px, 2.5vw, 30px);
  color: #900;
  line-height: 1;
  margin-bottom: 30px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .type_list_wrap .version_txt .big {
    margin: 0 20px;
    padding: 5px;
    font-size: 150%;
    background: #900;
    color: #FFF;
    line-height: 0.95; }
.type_list_wrap .old_version_txt {
  text-align: center;
  margin-bottom: 30px; }
  .type_list_wrap .old_version_txt a {
    display: inline-block;
    font-size: clamp(14px, 2.344vw, 18px);
    color: #900;
    text-decoration: underline; }
    body:not(.mobile) .type_list_wrap .old_version_txt a:hover {
      text-decoration: none; }

.type_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 40px;
  gap: 1.33% 0; }
  @media screen and (max-width: 480px) {
    .type_list {
      flex-wrap: wrap;
      gap: 10px 0; } }
  .type_list li {
    width: 24%;
    border: 1px solid #900;
    display: flex; }
    @media screen and (max-width: 768px) {
      .type_list li {
        width: 48%; } }
    .type_list li a {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      width: 100%;
      line-height: 1.2;
      padding: 10px 5px;
      font-size: 18px;
      color: #900;
      text-align: center;
      transition: 0.3s all ease-in-out 0s; }
      @media screen and (max-width: 1200px) {
        .type_list li a {
          font-size: 1.4vw; } }
      @media screen and (max-width: 768px) {
        .type_list li a {
          font-size: 1.6vw; } }
      @media screen and (max-width: 480px) {
        .type_list li a {
          font-size: 3vw; } }
      .type_list li a.cr, body:not(.mobile) .type_list li a:hover {
        color: #FFF;
        background: #900; }
      .type_list li a .sub {
        display: block;
        font-size: 80%; }

.slide_thumb {
  margin-top: 30px;
  overflow: hidden; }
  .slide_thumb .swiper-wrapper {
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 26px 0; }
    .slide_thumb .swiper-wrapper .swiper-slide {
      width: 23.34% !important;
      cursor: pointer;
      transition: 0.3s opacity ease-in-out 0s; }
      .slide_thumb .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
        opacity: 0.5; }
    .slide_thumb .swiper-wrapper.full {
      gap: 0;
      flex-wrap: nowrap; }

.swiper-button-next,
.swiper-button-prev {
  width: 80px;
  filter: drop-shadow(0px 0px 2px #000); }
  @media screen and (max-width: 480px) {
    .swiper-button-next,
    .swiper-button-prev {
      width: 20px;
      top: 0;
      bottom: 0;
      margin: auto; }
      .swiper-button-next img,
      .swiper-button-prev img {
        width: 100%; } }

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after,
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: none !important; }

.main_slider .swiper-slide {
  padding: 0 3vw; }
  @media screen and (max-width: 1500px) {
    .main_slider .swiper-slide {
      padding: 0 1.5vw; } }
  @media screen and (max-width: 1280px) {
    .main_slider .swiper-slide {
      padding: 0 1vw; } }
  @media screen and (max-width: 960px) {
    .main_slider .swiper-slide {
      padding: 0; } }
  .main_slider .swiper-slide.swiper-slide-active .slide_image p {
    opacity: 1; }
  .main_slider .swiper-slide .slide_image {
    position: relative;
    background: #000; }
    .main_slider .swiper-slide .slide_image p {
      transition: 0.5s opacity ease-in-out 0s;
      opacity: 0.4; }
      .main_slider .swiper-slide .slide_image p:after {
        content: "";
        display: block;
        padding-bottom: 58.768%; }
        @media screen and (max-width: 480px) {
          .main_slider .swiper-slide .slide_image p:after {
            padding-bottom: 108.834%; } }
      .main_slider .swiper-slide .slide_image p:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat; }

.button {
  max-width: 300px;
  margin: 0 auto; }
  .button a {
    display: block;
    background: #900;
    border: 1px solid #900;
    font-size: 20px;
    color: #FFF;
    text-align: center;
    padding: 20px;
    transition: 0.3s all ease-in-out 0s; }
    body:not(.mobile) .button a:hover {
      color: #900;
      background: #FFF; }

/*	モーダルmp4	*/
.movie_wrap {
  position: relative; }
  .movie_wrap:before {
    content: "";
    display: block;
    padding-bottom: 56.25%;
    pointer-events: none; }
  .movie_wrap video, .movie_wrap iframe {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%; }

/*	モーダル	*/
.modal_cont {
  display: none; }

.iziModal {
  background: none !important;
  box-shadow: none !important;
  width: 100% !important;
  max-width: 100% !important; }

.modal_box {
  margin: auto;
  position: relative;
  max-width: 1100px;
  max-height: fit-content;
  height: 90vh;
  max-width: 669px; }
  @media screen and (max-width: 768px) {
    .modal_box {
      padding: 30px 20px; } }
  @media screen and (max-width: 600px) {
    .modal_box {
      display: flex;
      justify-content: center;
      align-items: center; } }
  .modal_box > figure {
    position: relative;
    text-align: center;
    max-height: fit-content;
    height: 100%;
    width: fit-content;
    margin: 0 auto; }
    @media screen and (max-width: 600px) {
      .modal_box > figure {
        height: auto;
        width: 100%; } }
    .modal_box > figure img {
      max-height: fit-content;
      height: 100%;
      width: auto; }
      @media screen and (max-width: 600px) {
        .modal_box > figure img {
          width: 100%;
          height: auto; } }
  .modal_box .m_box {
    border: 3px solid #060;
    padding: 22px 17px;
    position: relative;
    background: #FFF;
    border-radius: 10px;
    flex-direction: row-reverse; }
    @media screen and (max-width: 768px) {
      .modal_box .m_box {
        flex-wrap: wrap;
        padding: 20px 17px; } }
    .modal_box .m_box p {
      font-size: 15px;
      line-height: 2.2;
      color: #060; }
      @media screen and (max-width: 960px) {
        .modal_box .m_box p {
          font-size: 13px; } }
      @media screen and (max-width: 768px) {
        .modal_box .m_box p {
          font-size: 15px; } }
      @media screen and (max-width: 480px) {
        .modal_box .m_box p {
          font-size: 13px; } }
  .modal_box a.close {
    position: absolute;
    right: 0;
    top: 0;
    border: none;
    width: auto;
    height: auto;
    background: none;
    cursor: pointer; }
    .modal_box a.close span {
      font-size: 40px;
      color: #000;
      display: block;
      line-height: 1;
      transform-origin: center;
      transition: 0.6s all ease-in-out 0s; }
      .modal_box a.close span:hover {
        transform: rotate(360deg); }
  .modal_box .controls {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0; }
    @media screen and (max-width: 768px) {
      .modal_box .controls {
        position: relative;
        max-width: 120px;
        margin: 20px auto 0;
        display: flex;
        justify-content: space-between; } }
    .modal_box .controls li {
      position: absolute;
      top: 50%;
      margin-top: -35px;
      cursor: pointer;
      width: 50px;
      height: 50px;
      border: 1px solid #FFF;
      border-radius: 100px; }
      @media screen and (max-width: 768px) {
        .modal_box .controls li {
          position: static;
          margin-top: 0; } }
      .modal_box .controls li span {
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 0;
        height: 0;
        border: 8px solid transparent; }
      .modal_box .controls li.prev {
        left: 10px; }
        .modal_box .controls li.prev span {
          margin-left: 8px;
          border-right: 14px solid #FFF; }
      .modal_box .controls li.next {
        right: 10px; }
        .modal_box .controls li.next span {
          margin-right: 8px;
          border-left: 14px solid #FFF; }

.swiper-slide {
  position: relative; }
  .swiper-slide::after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.8); }

.swiper-slide-active::after {
  background: none; }

.bg_none {
  background: none !important; }

.bg_w {
  background: #fff !important; }

/*-----------------------------------------------
下上津役元町
-----------------------------------------------*/
.banner-sp {
  display: none;
  /* デフォルトはSP画像を非表示 */ }

@media screen and (max-width: 480px) {
  .banner-pc {
    display: none;
    /* 480px以下ではPC用バナーを非表示 */ }

  .banner-sp {
    display: block;
    /* 480px以下ではSP用バナーを表示 */ } }
/*-----------------------------------------------
里中
-----------------------------------------------*/
@media screen and (max-width: 480px) {
  .satonaka .main .tag .list li {
    width: 40%; }
    .satonaka .main .tag .list li:nth-child(2) {
      border-right: 1px solid #fff; }
    .satonaka .main .tag .list li:nth-child(3) {
      border-right: 0; } }

.slide_cap {
  position: absolute;
  text-align: right;
  bottom: 5px;
  right: 5px;
  position: absolute;
  font-size: 10px;
  -webkit-text-stroke: 2px #fcfbd8;
  text-stroke: 2px #fcfbd8;
  paint-order: stroke; }
  @media screen and (max-width: 1200px) {
    .slide_cap {
      font-size: 0.7vw; } }
  @media screen and (max-width: 480px) {
    .slide_cap {
      font-size: 1.1vw; } }
  .slide_cap.b {
    color: #333;
    -webkit-text-stroke: 2px #fff;
    text-stroke: 2px #fff; }

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