@charset "UTF-8";

#land main {
  background: #f9f5e9;
}

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px), print {
  #land .form-Box p.sonota {
    font-size: 14px;
    font-size: clamp(0.75rem, 0.667rem + 0.17vw, 0.875rem);
    line-height: 1.6;
    font-weight: 400;
    margin-block: 8px 0;
    margin-inline: 14px 0;
  }

  .p-mv {
    border-bottom: 2px solid #181c62;
    margin-bottom: -26px;
  }

  .p-mv .l-inner.l-mv {
    width: min(90%, 1100px);
    margin-inline: auto;
  }

  .p-mv .c-mv__ttl {
    width: min(95%, 965px);
    margin-bottom: 12px;
  }

  .p-mv .c-mv__ttl img {
    height: auto;
    width: 100%;
  }

  .p-mv .p-mv__img {
    margin-bottom: 40px;
    text-align: center;
  }

  .p-mv .p-mv__img img {
    height: auto;
    width: 100%;
  }

  .p-mv .c-mv__subttl {
    color: #181c62;
    font-size: 24px;
    font-size: clamp(1.25rem, 1.083rem + 0.35vw, 1.5rem);
    font-weight: 700;
    line-height: 2.25;
    margin-bottom: 40px;
    text-align: center;
  }

  .p-mv .p-mv__txt {
    color: #212529;
    margin-bottom: 66px;
    text-align: center;
  }

  .p-mv .p-mv__txt p {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 2;
    margin-bottom: 29px;
  }

  .p-mv .p-mv__txt p.bottom {
    margin-bottom: 0;
  }

  .p-mv .p-mv__txt p.bottom span {
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.5789473684;
  }

  .p-mv__icon {
    margin-left: auto;
    margin-right: auto;
    text-align: right;
    width: min(95%, 812px);
  }

  .p-mv__icon img {
    height: auto;
    width: 259px;
  }

  .c-btn {
    text-align: center;
    margin-bottom: -39px;
  }

  /* No.96でMVの人物イラストを削除したため、ボタン下の余白を付け直す（上余白49pxと対称）*/
  .p-mv .c-btn {
    margin-bottom: 56px;
  }

  .c-btn a {
    background: #fff;
    border: 2px solid #181c62;
    border-radius: 200px;
    box-shadow: 0 4px 0 0 #181c62;
    color: #040404;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.8571428571;
    padding-block: 14px;
    padding-inline: 79px 107px;
    position: relative;
    top: -4px;
    transition: all 0.3s ease-in-out;
  }

  .c-btn a::after {
    background: url(../images/land/btn_arrow.svg) no-repeat center
      center/contain;
    content: "";
    height: 20px;
    position: absolute;
    right: 78px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
  }

  @media (any-hover: hover) {
    .c-btn a:hover {
      box-shadow: 0 0 #181c62;
      text-decoration: none;
      top: 9px;
    }
  }

  .side-fix {
    top: 202px;
  }

  .side-fix .list-01 a {
    display: block;
  }

  .side-fix .list-01 a img {
    height: auto;
    width: 80px;
    width: clamp(4rem, 3.333rem + 1.39vw, 5rem);
  }

  .p-point {
    background: #fff;
    position: relative;
    border-top: 2px solid #171C61;
    border-bottom: 2px solid #171C61;
  }

  .p-point .l-inner.l-point {
    padding-bottom: 80px;
    padding-top: 80px;
  }

  .p-point .c-point__ttl {
    margin-bottom: 31px;
    text-align: center;
  }

  .p-point .c-point__ttl img {
    height: auto;
    width: 714px;
    width: clamp(37.5rem, 32.75rem + 9.9vw, 44.625rem);
  }

  .p-point .p-point__items {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-inline: auto;
    width: min(85%, 1200px);
    grid-gap: 60px 0;
    gap: 60px 0;
  }

  .p-point .p-point__item {
    display: grid;
    grid-template-columns: 41.3% 53%;
    gap: 0 1.7%;
    justify-content: flex-end;
  }

  .p-point .p-point__item.reverse {
    grid-template-columns: 53% 40.3%;
    gap: 0 5.6%;
    justify-content: flex-start;
  }

  .p-point .p-point__item.reverse .con {
    order: 2;
  }

  .p-point .p-point__item .con .num {
    position: relative;
    left: -16px;
    margin-bottom: -14px;
  }

  .p-point .p-point__item.reverse .img {
    order: 1;
  }

  .p-point .p-point__item .con h3 {
    color: #181c62;
    font-size: 32px;
    font-size: clamp(1.5rem, 1.167rem + 0.69vw, 2rem);
    font-weight: 700;
    line-height: 1.6875;
    margin-bottom: 26px;
  }

  .p-point .p-point__item .con h3 span {
    display: block;
    -webkit-text-decoration: underline;
    text-decoration: underline;
    text-decoration-color: #fff100;
    text-decoration-thickness: 12px;
    text-underline-offset: -6px;
  }

  .p-point .p-point__item .con .txt p {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 2;
    margin-bottom: 29px;
  }

  .p-point .p-point__item .con .txt p.bottom {
    margin-bottom: 0;
  }

  .p-point .p-point__item .img img {
    height: auto;
    width: 100%;
  }

  .p-land {
    padding-bottom: 0px;
    padding-top: 120px;
    border-top: 2px solid #171C61;
  }

  .p-land .l-inner.l-land {
    background: url(../images/land/land_bg.png) no-repeat top center/cover;
    margin-left: auto;
    margin-right: auto;
    max-width: 1920px;
    padding-bottom: 107px;
    /* No.98でイラストを削除。イラストが担っていた見出し上の余白(190px-54px=136px)を付け直す */
    padding-top: 136px;
    width: 100%;
  }

  .p-land .p-land__img {
    margin-bottom: -54px;
    margin-left: auto;
    margin-right: auto;
    width: min(95%, 864px);
  }

  .p-land .p-land__img img {
    height: auto;
    width: 105px;
    width: clamp(4.375rem, 2.917rem + 3.04vw, 6.563rem);
  }

  .p-land .c-land__ttl {
    color: #ffffff;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 40px;
    text-align: center;
  }

  .p-land .c-land__ttl span {
    font-size: 46px;
    font-weight: 700;
    line-height: 1;
  }

  .p-land .system-list {
    color: #ffffff;
    display: block;
    margin-inline: auto;
    width: min(95%, 976px);
  }

  .p-land .system-list__item {
    display: grid;
    grid-template-columns: 43.4% 42.3%;
    align-items: center;
    gap: 0 4.4%;
  }

  .p-land .system-land-pic {
    position: relative;
  }

  .p-land .system-land-pic .icon {
    background: #ffffff;
    color: #181c62;
    font-size: 14px;
    font-weight: 500;
    left: 0;
    letter-spacing: 0.02em;
    line-height: 1.5714285714;
    padding: 0 13px;
    position: absolute;
    top: 0;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 1;
  }

  .p-land .system-land-pic .system-pic img {
    height: 300px;
    width: 100%;
  }

  .p-land .system-land-con {
    border-bottom: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
    padding-bottom: 30px;
    padding-top: 30px;
  }

  .p-land .system-land-area {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 2.1428571429;
    margin-bottom: 0;
  }

  .p-land .system-ttl {
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9333333333;
    margin-bottom: 0;
  }

  .p-land .system-land-price {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 2.1428571429;
    margin-bottom: 8px;
  }

  .p-land .wysiwyg {
    margin-bottom: 0;
  }

  .p-land .wysiwyg p {
    font-size: 15px;
    font-size: clamp(0.813rem, 0.729rem + 0.17vw, 0.938rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9333333333;
  }

  /* 土地情報を複数件並べる：件の間隔と、各件の下の「お問い合わせする」ボタン */
  .p-land .system-land-entry + .system-land-entry {
    margin-top: 64px;
  }

  .p-land .c-btn.system-land-btn {
    margin: 36px 0 0;
  }

  .p-land .c-btn.system-land-btn a {
    background: #fff100;
  }

  @media (any-hover: hover) {
    .c-btn a:hover {
      box-shadow: 0 0 #181c62;
      -webkit-text-decoration: none;
      text-decoration: none;
      top: 9px;
    }
  }
}

/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
  .p-mv {
    border-bottom: 2px solid #181c62;
    margin-bottom: -11vw;
  }

  .p-mv .l-inner.l-mv {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }

  .p-mv .c-mv__ttl {
    margin-inline: auto;
    width: min(95%, 81.1594202899vw);
    margin-bottom: -1vw;
  }

  .p-mv .c-mv__ttl img {
    height: auto;
    width: 100%;
  }

  .p-mv .p-mv__img {
    margin-bottom: 7.246vw;
    text-align: center;
  }

  .p-mv .p-mv__img img {
    height: auto;
    width: 100%;
  }

  .p-mv .c-mv__subttl {
    color: #181c62;
    font-size: 4.831vw;
    font-weight: 700;
    line-height: 1.9;
    margin-bottom: 7.246vw;
    text-align: center;
  }

  .p-mv .p-mv__txt {
    color: #212529;
    margin-bottom: 10.246vw;
    text-align: center;
  }

  .p-mv .p-mv__txt p {
    font-size: 3.623vw;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9333333333;
    margin-bottom: 6.899vw;
  }

  .p-mv .p-mv__txt p.bottom {
    margin-bottom: 0;
  }

  .p-mv .p-mv__txt p.bottom span {
    font-size: 4.589vw;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.5789473684;
  }

  .p-mv__icon {
    text-align: center;
  }

  .p-mv__icon img {
    height: auto;
    width: 47.585vw;
  }

  .p-point {
    background: #fff;
    position: relative;
    border-top: 0.4vw solid #171C61;
    border-bottom: 0.4vw solid #171C61;
  }

  .p-point .l-inner.l-point {
    padding-bottom: 9.662vw;
    padding-top: 9.662vw;
  }

  .p-point .c-point__ttl {
    margin-bottom: -4vw;
    text-align: center;
  }

  .p-point .c-point__ttl img {
    height: auto;
    width: 75.362vw;
  }

  .p-point .p-point__items {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    margin-left: auto;
    margin-right: auto;
    width: min(95%, 89.3vw);
    grid-gap: 9.662vw 0;
    gap: 9.662vw 0;
  }

  .p-point .p-point__item {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0px 0;
  }

  .p-point .p-point__item .con {
    display: contents;
    order: 2;
  }

  .p-point .p-point__item .con .num {
    order: 1;
    margin-bottom: -18vw;
    position: relative;
  }

  .p-point .p-point__item .con .num img {
    height: auto;
    width: 25.604vw;
  }

  .p-point .p-point__item .con h3 {
    color: #181c62;
    font-size: 6.763vw;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 4.831vw;
    order: 3;
  }

  .p-point .p-point__item .con h3 span {
    display: block;
    -webkit-text-decoration: underline;
    text-decoration: underline;
    text-decoration-color: #fff100;
    text-decoration-thickness: 2.899vw;
    text-underline-offset: -1.449vw;
  }

  .p-point .p-point__item .con .txt {
    order: 4;
  }

  .p-point .p-point__item .con .txt p {
    font-size: 3.623vw;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9333333333;
    margin-bottom: 6.899vw;
  }

  .p-point .p-point__item .con .txt p.bottom {
    margin-bottom: 0;
  }

  .p-point .p-point__item .img {
    order: 2;
    margin-bottom: 5vw;
  }

  .p-point .p-point__item .img img {
    height: auto;
    width: 100%;
  }

  .p-land {
    padding-bottom: 0;
    padding-top: 14.493vw;
  }

  .p-land .l-inner.l-land {
    background: url(../images/land/land_bg_sp.png) no-repeat top center/cover;
    margin-inline: auto;
    padding-bottom: 4.493vw;
    /* No.98でイラストを削除。元の6vw + イラストが担っていた5.836vw */
    padding-top: 11.836vw;
    width: 100%;
  }

  .p-land .p-land__img {
    margin-bottom: -30.155vw;
    margin-left: auto;
    margin-right: auto;
    width: min(95%, 89.8550724638vw);
  }

  .p-land .p-land__img img {
    height: auto;
    width: 16.184vw;
  }

  .p-land .c-land__ttl {
    color: #ffffff;
    font-size: 6.763vw;
    font-weight: 700;
    left: 25.155vw;
    line-height: 1.5;
    margin-bottom: 11.662vw;
    position: relative;
    text-align: left;
  }

  .p-land .c-land__ttl span {
    font-size: 11.111vw;
    font-weight: 700;
    line-height: 1.3913043478;
  }

  .p-land .system-list {
    color: #ffffff;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: min(95%, 89.3vw);
  }

  .p-land .system-list__item {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 3.039vw 0;
  }

  .p-land .system-land-pic {
    position: relative;
  }

  .p-land .system-land-pic .icon {
    background: #ffffff;
    color: #181c62;
    font-size: 3.382vw;
    font-weight: 500;
    left: 0;
    letter-spacing: 0.02em;
    line-height: 1.5714285714;
    padding: 0 2.6vw;
    position: absolute;
    top: 0;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 1;
  }

  .p-land .system-land-pic .system-pic img {
    height: 63.285vw;
    width: 100%;
  }

  .p-land .system-land-con {
    border-bottom: 1px solid #ffffff;
    border-top: 1px solid #ffffff;
    padding-bottom: 7.246vw;
    padding-top: 7.246vw;
  }

  .p-land .system-land-area {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 2.0714285714;
    margin-bottom: 0;
  }

  .p-land .system-ttl {
    font-size: 3.623vw;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.9333333333;
    margin-bottom: 0;
  }

  .p-land .system-land-price {
    font-size: 3.382vw;
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 2.0714285714;
  }

  /* 土地情報を複数件並べる：件の間隔と、各件の下の「お問い合わせする」ボタン */
  .p-land .system-land-entry + .system-land-entry {
    margin-top: 12vw;
  }

  .p-land .c-btn.system-land-btn {
    margin: 7vw 0 0;
  }

  .p-land .c-btn.system-land-btn a {
    background: #fff100;
  }

  .c-btn {
    text-align: center;
    margin-bottom: 9vw;
  }

  /* No.96でMVの人物イラストを削除したため、ボタン下の余白を付け直す（上余白40pxと対称／.p-mvの-11vw分を加味）*/
  .p-mv .c-btn {
    margin-bottom: 20.74vw;
  }

  .c-btn a {
    background: #fff;
    border: 2px solid #181c62;
    border-radius: 48.309vw;
    box-shadow: 0 4px 0 0 #181c62;
    padding-block: 3vw;
    padding-inline: 5.488vw 12.043vw;
    font-size: 3.382vw;
    font-weight: 500;
    line-height: 6.28vw; /* 185.714% */
    letter-spacing: 0.135vw;
    display: block;
    width: 69.8vw;
    margin-inline: auto;
    position: relative;
  }

  .c-btn a::after {
    background: url(../images/land/btn_arrow.svg) no-repeat center
      center/contain;
    content: "";
    height: 4.899vw;
    position: absolute;
    right: 17.5vw;
    top: 4vw;
    width: 5.899vw;
  }


}
