@charset "UTF-8";

body {
    margin: 0;
}

.l-main {
    width: auto;
    padding: 0;
    background: #fff;
}
.l-main *{
    
    
    
    
    
     /* 27px */
    box-sizing: border-box;
    font-family: "Zen Kaku Gothic New";
}


/* 共通化 */
[class*="section__box--"] {
    padding: 40px 0;
    background-color: #fff;
}
.contents__inner {
    width: 1140px;
    margin: 0 auto;
}
.contents__ttl-box {

margin-bottom: 39px;
}
.contents__ttl {
color: #363636;
font-size: 24px;
font-weight: 700;
text-align: center;
}
.contents__ttl--en { 
color: #1E437B; 
text-align: center;
font-size: 56px;
font-weight: 900;
display: block;  
margin-bottom: 7px;
}

/* メイン画像 */

.mv,
.mv * {
    box-sizing: border-box;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.mv {
    background-color: #f3f9ff;
    margin-bottom: 40px;
    overflow: visible;
}

.mv__svg-sprite {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.mv__box {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-end;
    width: 1140px;
    min-height: 510px;
    margin: 0 auto;
    padding-bottom: 40px;
    z-index: 1;
}

.mv__map {
    position: absolute;
    flex-shrink: 0;
    width: 849px;
    left: -216px;
    z-index: 0;
}

.mv__map-hint {
    position: absolute;
    top: 28px;
    left: 216px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 10px 15px;
    background-color: #edffef;
}

.mv__map-hint-icon {
    display: block;
    width: 15px;
    height: 21px;
    flex-shrink: 0;
}

.mv__map-hint-text {
    color: #363636;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.mv__map-hint-text--accent {
    color: #1e437b;
}

.mv__map-inner {
    position: relative;
    width: 849px;
    height: 510px;
}

.mv__map-stage {
    position: relative;
    width: 849px;
    height: 510px;
}

.mv__map-img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 849px;
    height: 510px;
    pointer-events: none;
    user-select: none;
}

.mv__map-img--base {
    z-index: 0;
}

.mv__map-img--hover {
    z-index: 1;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.mv__map-hits {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
    width: 849px;
    height: 510px;
}

.mv__map-labels {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 849px;
    height: 510px;
    margin: 0;
    padding: 0;
    list-style: none;
    pointer-events: none;
}

.mv__map-label {
    position: absolute;
    color: #fff;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
    white-space: nowrap;
    transform: translateX(-50%);
}

.mv__map-label--saitama {
    top: 159px;
    left: 354px;
}

.mv__map-label--ibaraki {
    top: 112px;
    left: 565px;
}

.mv__map-label--tokyo-shitamachi {
    top: 282px;
    left: 318px;
}

.mv__map-label--tokyo-23 {
    top: 288px;
    left: 458px;
}

.mv__map-label--kanagawa {
    top: 395px;
    left: 303px;
}

.mv__map-label--chiba {
    top: 321px;
    left: 649px;
}

.mv__map-area {
    cursor: pointer;
    outline: none;
}

.mv__map-area path {
    fill: transparent;
    cursor: pointer;
}

.mv__map-stage:has(.mv__map-area[data-area="kanagawa"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="kanagawa"],
.mv__map-stage:has(.mv__map-area[data-area="tokyo-shitamachi"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="tokyo-shitamachi"],
.mv__map-stage:has(.mv__map-area[data-area="saitama"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="saitama"],
.mv__map-stage:has(.mv__map-area[data-area="tokyo-23"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="tokyo-23"],
.mv__map-stage:has(.mv__map-area[data-area="ibaraki"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="ibaraki"],
.mv__map-stage:has(.mv__map-area[data-area="chiba"]:is(:hover, :focus-visible, .is-active)) .mv__map-img--hover[data-area="chiba"] {
    opacity: 1;
}

.mv__freeword {
    position: relative;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100%;
}

.mv__freeword-inner {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
    padding: 20px;
    background-color: #e4f7ff;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.13);
    transition: background-color 0.3s ease;
}

.mv__freeword-inner:has(.js-freeword--buy.is-active) {
    background-color: #FFEBD7;
}

.mv__freeword-count {
    flex-shrink: 0;
    text-align: center;
    min-width: 110px;
}

.mv__freeword-count-label {
    margin: 0;
    color: #363636;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1;
    padding-top: 13px;
}

.mv__freeword-count-value {
    display: flex;
    align-items: baseline;
    justify-content: center;
}

.mv__freeword-count-num {
    color: #1e437b;
    font-size: 44px;
    font-weight: 700;
    line-height: 1;
}

.mv__freeword-count-unit {
    margin-left: 1px;
    color: #363636;
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1px;
}

.mv__freeword-search {
    flex: 1;
    min-width: 0;
}

.mv__freeword-ttl {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 0 0 4px;
    color: #363636;
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1px;
}

.mv__freeword-ttl-dot {
    display: block;
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #1e437b;
}

.mv__freeword-form {
    display: flex;
    align-items: center;
    gap: 5px;
    width: 100%;
}

.mv__freeword-switch-wrap {
    flex-shrink: 0;
}

.mv__freeword-switch-wrap .js-mv-freeword-switch {
    display: none;
}

.mv__freeword-switch-wrap .js-mv-freeword-switch.is-active {
    display: flex;
}

.mv__freeword-row {
    display: none;
    align-items: center;
    gap: 5px;
    flex: 1;
    min-width: 0;
}

.mv__freeword-row.is-active {
    display: flex;
}

.mv__freeword-form > .mv__freeword-row:only-child {
    display: flex;
}

.mv__freeword-switch--label {
    cursor: pointer;
}

.mv__freeword-switch {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-shrink: 0;
    height: 45px;
    margin: 0;
    padding: 10px 27px 10px 15px;
    border: 1px solid #627ba3;
    border-radius: 4px;
    background-color: #fff;
    color: #363636;
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    white-space: nowrap;
    cursor: pointer;
    position: relative;
}
.mv__freeword-switch::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 2;
    right: 12px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #627BA3;
    border-bottom: 0;
    pointer-events: none;
    z-index: 1;
}

.mv__freeword-switch-icon {
    display: block;
    width: 7px;
    height: 5px;
    flex-shrink: 0;
}

.mv__freeword-field {
    position: relative;
    flex: 1;
    min-width: 0;
    height: 45px;
}
.mv__freeword-field input {height: 45px;border: 1px solid #627BA3;padding: 0 0 0 15px;}

.mv__freeword-input {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0 45px 0 16px;
    border: 1px solid #627ba3;
    border-radius: 4px;
    background-color: #fff;
    color: #363636;
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
}

.mv__freeword-input::placeholder {
    color: #b5b5b5;
}

.mv__freeword-submit {
    position: absolute;
    top: 0;
    right: 16px;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    margin: auto 0;
    padding: 0;
    border: 0;
    background-color: transparent;
    cursor: pointer;
}

.mv__freeword-submit img {
    display: block;
    width: 25px;
    height: 25px;
}

.mv__catch {
    position: relative;
    z-index: 2;
    flex-shrink: 0;
    width: 523px;
    margin-left: auto;
}

.mv__catch-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 525px;
    margin-top: 28px;
}

.mv__catch-head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.mv__catch-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mv__catch-tag {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 26px;
    padding: 0 11px;
    background-color: #d4eaff;
    color: #1e437b;
    font-size: 14px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.7px;
    white-space: nowrap;
}

.mv__catch-copy {
    width: 100%;
    text-align: center;
}

.mv__catch-lead {
    margin: 0 0 2px;
    color: #363636;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 1.5px;
}

.mv__catch-ttl {
    margin: 0;
    color: #122f95;
    font-size: 50px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 2.5px;
}

.mv__catch-btns {
    display: flex;
    align-items: center;
    gap: 10px;
}

.mv__catch-btn {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 220px;
    height: 70px;
    border-radius: 9999px;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.13);
}

.mv__catch-btn--rent {
    background-color: #1e437b;
    border: 1px solid #1e437b;
}

.mv__catch-btn--rent:hover {
    background-color: #fff;
    color: #1e437b;
    opacity: 1;
}

.mv__catch-btn--buy {
    background-color: #f39801;
    border: 1px solid #f39801;
}

.mv__catch-btn--buy:hover {
    background-color: #fff;
    color: #f39801;
    opacity: 1;
}

.mv__catch-btn-main {
    font-size: 30px;
    line-height: 1;
    letter-spacing: 1.5px;
}

.mv__catch-btn-sub {
    margin-top: 8px;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.9px;
}

.mv__catch-btn-arrow {
    position: absolute;
    top: 0;
    right: 18px;
    display: block;
    width: 19px;
    height: 12px;
    bottom: 0;
    margin: auto;
    color: currentColor;
}

.mv__catch-btn-arrow svg {
    display: block;
    width: 100%;
    height: 100%;
}

.mv__catch-strength {
    position: absolute;
    left: 50%;
    bottom: -44px;
    z-index: 2;
    display: flex;
    align-items: stretch;
    gap: 10px;
    width: 980px;
    max-width: calc(100% - 40px);
    transform: translateX(-50%);
}

.mv__catch-strength-label {
    position: relative;
    flex: 0 0 140px;
    width: 140px;
    min-height: 115px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mv__catch-strength-label-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 115px;
    height: 140px;
    transform: translate(-50%, -50%) rotate(90deg);
    object-fit: fill;
}

.mv__catch-strength-label-text {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0px;
    color: #fff;
    text-align: center;
    padding-bottom: 14px;
}

.mv__catch-strength-label-name {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0.8px;
    color: #fff;
}

.mv__catch-strength-label-ttl {
    margin: 0;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.9px;
    color: #fff;
}

.mv__catch-strength-label-num {
    font-size: 32px;
    letter-spacing: 1.6px;
}

.mv__catch-strength-list {
    display: flex;
    align-items: stretch;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    flex: 1 1 auto;
    min-width: 0;
}

.mv__catch-strength-item {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: start;
    gap: 7px;
    min-height: 115px;
    padding: 19px 15px 25px 15px;
    background: #fff9f0;
    border: 1px solid #f39801;
    box-sizing: border-box;
    text-align: center;
}

.mv__catch-strength-item-ttl {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 5px;
    margin: 0;
    white-space: nowrap;
}

.mv__catch-strength-item-num {
    color: #f39801;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1.2px;
}

.mv__catch-strength-item-name {
    color: #1e437b;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1px;
}

.mv__catch-strength-item-lead {
    margin: 0;
    color: #363636;
    font-size: 13px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 0.65px;
}
/* banner */

.section__box--banner {
    padding: 45px 0 3px;
}

.section__box--sub-banner {
    padding: 100px 0 0px;
}

.section__box--sub-banner .top-bnr__sub-list {
    margin: 0;
}
.top-bnr {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.top-bnr__sub-list {
    display: flex;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.top-bnr__sub-item {
    flex: 1;
    min-width: 0;
}

.top-bnr__item {
    display: block;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.13);
    transition: transform 0.3s ease;
    text-decoration: none;
}

.top-bnr__item:hover {
    transform: translateY(-5px);
    opacity: 1;
}

.top-bnr__item img {
    display: block;
    width: 100%;
    height: auto;
}
/* bkn */
.section__box--bkn {
    padding: 52px 0 0;
}

.bkn__tabbtn {
    display: flex;
    justify-content: center;
    gap: 10px;
    width: 1140px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    }
.bkn__tabbtn-item { 
    border-radius: 5px 5px 0 0; 
    background: #EDF0F4;  
    display: flex;   
    height: 45px; 
    flex: 1 1 0;
    flex-direction: column;
    justify-content: center; 
    align-items: center;  
    gap: 10px;  
    color:  #1E437B;  
    text-align: center;  
    font-size: 18px;
    font-weight: 700;
    min-width: 0;
    border: 0;
    cursor: pointer;
    }
.bkn__tabbtn-item.is-active {
    background: #DDE9FD;
    }
.tab-content {
    display: none;
    }
.tab-content.is-active {
    display: block;
    }
.bkn__empty {
    width: 1140px;
    max-width: calc(100% - 40px);
    margin: 40px auto;
    color: #1E437B;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    }
.section__box--bkn .swiper-option__wrap {
    margin-top: 52px;
}
.section__box--bkn .swiper-option__wrap .swiper-pagination {
    gap: 18px;
}
.section__box--bkn .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: #B4BBC8;
    opacity: 1;
    margin: 0 9px!important;
}
.section__box--bkn .swiper-pagination-bullet-active {
    width: 12px;
    background: #1E437B;
    border-radius: 50%;
}

/* slider共通 */

/* 物件 */
.property-card {
    overflow: hidden;
    transition: all 0.3s ease;
    background: #fff;
    box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.13);
}
.property-card a:hover {
    opacity: 1;
}
.property-card:hover .property-card__image img {
    transform: scale(1.08);
}
.property-card:hover {
    opacity: 1;
}
.property-card__image {
    position: relative;
    overflow: hidden;
    height: 173px;
    overflow: hidden;
}
.property-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease-in-out;
    overflow: hidden;
}
.property-card__labels {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    gap: 0px;
}
.property-card__label {
    font-weight: bold;
    color: #fff;
    padding: 0 12px 2px 13px;
    font-size: 16px;
}
.property-card__label--new {
    background: #CA0000;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    padding: 0 8px 1px 10px;
    line-height: 1.3;
    letter-spacing: 0.05em;
}
.property-card__label--type {
    background: #005024;
}
.property-card__favorite {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.property-card__favorite svg {
    width: 25px;
    height: 23px;
}
.property-card__content {
    padding: 10px 15px 17px;
}
.property-card__price {
    font-weight: bold;
    font-size: 16px;
    color: #1E437B;
}
.property-card__title {
    font-size: 18px;
    color: #263238;
    margin-bottom: 3px;
    line-height: 1.5;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: bold;
}
.property-card__detail,
.property-card__address,
.property-card__access {
    font-size: 16px;
    color: #656565;
    margin-bottom: 0px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}
.btn--primary {
    margin: 20px auto 0;
    width: 260px;
    height: 70px;
    border-radius: 9999px;
    border: 2px solid #1E437B;
    background: #fff;
    color: #1E437B;
    display: flex;
    justify-content: end;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    gap: 66px;
    padding-right: 67px;
    box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.13);
    position: relative;
}
/* Swiperオプションのレイアウト */
.swiper-option__wrap {
    margin-top: 41px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    z-index: 1;
}
/* Swiper 〇件以下で発火させない場合のレイアウト */

.content__block--slider {
    background: #DDE8FD;
    padding: 30px 0 80px;
}
.noslide .swiper-wrapper {
    display: flex;
    justify-content: center;
    gap: 30px;
}
.noslide .swiper-option__wrap {
    display: none;
}
.contents__area{
	margin: 0 auto;
	width: 260px;
}
.contents__img {
    height: 210px;
}
.contents__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
} 
.l-page .contents__text {
    margin-top: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.more__btn {
display: flex;
width: 280px;
height: 60px;
padding: 15px 100px;
justify-content: center;
align-items: center;
gap: 10px;
border-radius: 100px;
border: 1px solid #333;
background: #FFF;
}
.more__btn {
    display: flex;
    width: 280px;
    height: 60px;
    padding: 15px 45px 15px 51px;
    justify-content: end;
    align-items: center;
    gap: 56px;
    border-radius: 100px;
    border: 1px solid #333;
    background: #FFF;
    margin: 31px auto 0;
}
.property-pagination-btn .swiper-button-prev,
.property-pagination-btn .swiper-button-next {
    position: static;
    margin: 0;
    border: 1px solid #000;
    border-radius: 4px;
    color: #3D3D3D;
    font-size: 18px;
    font-weight: bold;
    transition: all 0.3s ease;
    width: 44px;
    height: 44px;
    border-radius: 50px;
}
.property-pagination-btn .swiper-button-prev:after,
.property-pagination-btn .swiper-button-next:after {
    content: "";
}
.property-pagination-btn .swiper-button-prev:hover,
.property-pagination-btn .swiper-button-next:hover {
    background-color: #E9EEEB;
    border: 1px solid #005024;
}
.property-pagination-btn .swiper-button-disabled {
    opacity: 0.3;
    cursor: not-allowed;
}
.property-pagination-btn .swiper-button-disabled:hover {
    background-color: #F4EFE8;
    color: #3D3D3D;
}
/* swiper-pagination のスタイル */
.property-pagination-btn .swiper-pagination,
.morebtn__box .swiper-pagination {
    position: static;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.property-pagination-btn .swiper-pagination,
.morebtn__box .swiper-pagination {
    position: static;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.main__imgbox .morebtn__box .swiper-pagination {
    justify-content: end;
    gap: 14px;
}
.main__imgbox .morebtn__box {
    margin-top: 0;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 14px;
    z-index: 1;
}
.swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #ccc;
    opacity: 1;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
}
.swiper-pagination-bullet-active {
    background: #005024;
    width: 25px;
    border-radius: 10px;
}
.property-pagination-btn {
    display: flex;
    justify-content: end;
    gap: 2px;
    position: relative;
    z-index: 1;
}
.property-card-flex {
    display: flex;
    gap: 10px;
    align-items: baseline;
}
.property-card__price span {
    color: #1E437B;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    /* letter-spacing: 0.03em; */
}
.morebtn__box {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 281px;
    width: 1140px;
    margin: 0 auto;
}

.morebtn__box .mv__catch-btn-arrow {
    position: absolute;
    width: 22px;
    height: 14px;
    margin: 0;
    color: currentColor;
    flex-shrink: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 21px;
}
.section-pager__btn svg {
    fill: rgba(25, 25, 25, 0);
}
.l-contents {
    position: relative;
}
.priced-downtext {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 35px;
    background: rgba(255,255,255,0.8);
    color: #ED1111;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn--primary:hover {
    color: #fff;
    border: 1px solid #1E437B;
    opacity: 1;
    background: #1E437B;
}

.member__image {
    position: relative;
    overflow: hidden;
    height: 330px;
}

.member__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.member__content {
    position: absolute;
    bottom: 51px;
    left: 0;
    right: 0;
    margin: auto;
    }
.member__text {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    }
.member__btn {
    width: 200px;
    height: 50px;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    background: #FFA807;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 999px;
    margin: 25px auto 0;
    }
    .member__btn:hover {
    background: #fff;
    color: #FFA807;
    border: 1px solid #FFA807;
    }

/* AI ARTICLE PROPOSAL */

.section__box--aiarticleproposal {
    position: relative;
    overflow: visible;
    padding: 73px 0 110px;
    background-color: #fffdf1;
}
.section__box--aiarticleproposal .contents__ttl-box {
    margin-bottom: 42px;
}
.ai-proposal__content {
    display: flex;
    flex-direction: column;
    gap: 80px;
}
.ai-proposal__sub-ttl {
    margin: 0 0 30px;
    color: #f39801;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
}
.ai-proposal__merit .ai-proposal__sub-ttl {
    text-align: center;
}
.ai-proposal__merit-list {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.ai-proposal__merit-item {
    width: 555px;
}
.ai-proposal__merit-card {
    display: flex;
    flex-direction: column;
}
.ai-proposal__merit-image {
    width: 555px;
    height: 240px;
    overflow: hidden;
}
.ai-proposal__merit-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom;
}
.ai-proposal__merit-body {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 29px 20px 20px;
    background: #fff;
    text-align: center;
}
.ai-proposal__merit-label {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    padding: 3px 15px 5px;
    background: #f39801;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    white-space: nowrap;
}
.ai-proposal__merit-ttl {
    margin: 0;
    color: #363636;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
}
.ai-proposal__merit-text {
    margin: 0;
    color: #292929;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.ai-proposal__flow-wrap {
    position: relative;
    min-height: 526px;
}
.ai-proposal__flow {
    position: relative;
    z-index: 1;
    width: 560px;
}
.ai-proposal__flow-list {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.ai-proposal__flow-list::before {
    content: '';
    position: absolute;
    top: 7px;
    left: 24px;
    width: 2px;
    height: 260px;
    background: #FFEFC2;
}
.ai-proposal__flow-item {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.ai-proposal__flow-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: -5px;
}
.ai-proposal__flow-num {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 9999px;
    background: #ffefc2;
    color: #f39801;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    z-index: 1;
}
.ai-proposal__flow-ttl {
    margin: 0;
    color: #363636;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.ai-proposal__flow-text {
    padding-left: 60px;
}
.ai-proposal__flow-text p {
    margin: 0;
    color: #292929;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.ai-proposal__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 450px;
    height: 90px;
    margin-top: 30px;
    border-radius: 9999px;
    background: #ffa807;
    box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.13);
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    position: relative;
    border: 2px solid #ffa807;
}
.ai-proposal__btn:hover {
    opacity: 1;
    background: #ffffff;
    color: #f39801;
    border: 2px solid #f39801;
}
.ai-proposal__btn:hover .ai-proposal__btn-arrow {
    color: #f39801;
}
.ai-proposal__btn-icon {
    flex-shrink: 0;
    display: block;
    width: 40px;
    height: 40px;
    background: url("/images/top/merit__icon.svg") no-repeat center / contain;
}
.ai-proposal__btn:hover .ai-proposal__btn-icon {
    background-image: url("/images/top/merit__icon__on.svg");
}
.ai-proposal__btn-text {
    flex-shrink: 0;
}
.ai-proposal__btn-arrow {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 12px;
    color: #fff;
    transition: color 0.3s ease;
}
.ai-proposal__btn-arrow svg {
    display: block;
    width: 100%;
    height: 100%;
}
.ai-proposal__btn:hover .ai-proposal__btn-arrow {
    color: #f39801;
}
.ai-proposal__visual {
    position: absolute;
    top: 2px;
    left: 612px;
    width: 918px;
    height: 563px;
    pointer-events: none;
}
.ai-proposal__visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* BLOG */

.section__box--blog {
    padding: 76px 0;
}
.section__box--blog .contents__ttl-box {
    margin-bottom: 40px;
}
.blog__content {
    display: flex;
    flex-direction: column;
    gap: 34px;
}
.blog__list {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.blog__item {
    width: 360px;
}
.blog__card {
    box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.13);
}
.blog__card a {
    display: block;
    text-decoration: none;
}
.blog__card a:hover {
    opacity: 1;
}
.blog__image {
    width: 360px;
    height: 240px;
    overflow: hidden;
}
.blog__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease-in-out;
}
.blog__card:hover .blog__image img {
    transform: scale(1.08);
}
.blog__body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 12px 20px 16px;
    background: #fff;
}
.blog__ttl {
    margin: 0;
    overflow: hidden;
    color: #363636;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.blog__text {
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #656565;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.section__box--blog .btn--primary {
    margin: 0 auto;
    font-weight: 700;
}

.section__box--blog .mv__catch-btn-arrow {
    width: 25px;
    height: 14px;
    }

/* ACHIEVEMENTS */

.section__box--achievements {
    overflow: visible;
    padding: 123px 0 84px;
}
.section__box--achievements .contents__inner {
    position: relative;
}
.section__box--achievements .contents__inner::before {
    content: '';
    position: absolute;
    background: #F3F9FF;
    width: 1530px;
    height: 588px;
    left: 0;
    top: -100px;
}
.achievements__wrap {
    position: relative;
    min-height: 380px;
    padding-left: 82px;
}
.achievements__wrap .mv__catch-btn-arrow {
    width: 25px;
    height: 14px;
    right: 20px;
    }
.section__box--achievements .contents__ttl-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 50px;
    width: 413px;
    margin-bottom: 0;
    padding-top: 58px;
}
.section__box--achievements .contents__ttl {
    text-align: left;
}
.section__box--achievements .contents__ttl--en {
    text-align: left;
}
.section__box--achievements .btn--primary {
    margin: 0;
    font-weight: 700;
}
.achievements__slider {
    position: absolute;
    top: 0;
    left: 536px;
    width: 994px;
    overflow: hidden;
}
.section__box--achievements .content__block--slider {
    padding: 0;
    background: transparent;
}
.section__box--achievements .contents__area {
    margin: 0;
    width: 360px;
}
.section__box--achievements .contents__item {
    width: 360px;
}
.achievements__card {
    box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.13);
    border-radius: 5px;
    overflow: hidden;
}
.achievements__card a {
    display: block;
    text-decoration: none;
}
.achievements__card a:hover {
    opacity: 1;
}
.achievements__image {
    width: 360px;
    height: 240px;
    overflow: hidden;
}
.achievements__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease-in-out;
}
.achievements__card:hover .achievements__image img {
    transform: scale(1.08);
}
.achievements__body {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 14px 20px 20px;
    background: #fff;
    min-height: 108px;
}
.achievements__text {
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #363636;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.achievements__labels {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.achievements__label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1px 10px 3px;
    background-color: #1e437b;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: normal;
    white-space: nowrap;
}
.section__box--achievements .swiper-option__wrap {
    margin-top: 55px;
    justify-content: flex-end;
}
.section__box--achievements .swiper-option__wrap .swiper-pagination {
    gap: 18px;
}
.section__box--achievements .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: #B4BBC8;
    opacity: 1;
    margin: 0 9px!important;
}
.section__box--achievements .swiper-pagination-bullet-active {
    width: 12px;
    background: #1e437b;
    border-radius: 50%;
}

/* REASON */

.section__box--reason {
    overflow: visible;
    padding: 100px 0 126px;
}
.section__box--reason .contents__inner {
    overflow: visible;
}
.section__box--reason .contents__ttl-box {
    margin-bottom: 40px;
}
.reason__list {
    display: flex;
    flex-direction: column;
    gap: 80px;
}
.reason__item {
    position: relative;
    height: 494px;
}
.reason__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 13.44%;
    overflow: hidden;
    width: 1530px;
    height: 470px;
}
.reason__item--reverse .reason__image {
    left: 0;
}
.reason__item--reverse {
    height: 524px;
}
.reason__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom;
}
.reason__body {
    top: 266px;
    right: 0;
    bottom: 0;
    left: 360px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    width: 780px;
    padding: 26px 42px 33px 40px;
    position: relative;
    z-index: 1;
}
.reason__body::before {
    content: "";
    width: 1980px;
    height: 251px;
    background: #F3F9FF;
    position: absolute;
    left: 0;
    top: 0px;
    z-index: -1;
 }
 .reason__item:first-child .reason__body::before {
    height: 230px;
 }
.reason__item--reverse .reason__body {
    right: 0;
    left: 0;
    position: relative;
    z-index: 1;
}

.reason__item--reverse .reason__body::before {
    content: "";
    position: absolute;
    top: 0;
    /* right: 0; */
    left: -1199px;
    height: 255px;
    background: #f3f9ff;
    z-index: -1;
}
.reason__head {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
}
.reason__num {
    margin: 0px 0 13px;
    flex-shrink: 0;
    color: transparent;
    font-size: 70px;
    font-weight: 900;
    line-height: 1;
    -webkit-text-stroke: 1px #1E437B;
}
.reason__head-text {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}
.reason__ttl {
    margin: 0;
    color: #1e437b;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.reason__ttl-en {
    margin: 0;
    color: #ccd0db;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
}
.reason__text {
    margin: 0;
    max-width: 700px;
    color: #292929;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}

/* NEWS */

.section__box--news {
    padding: 100px 0;
    background-color: #f3f9ff;
}
.news__wrap {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}
.section__box--news .contents__ttl-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 50px;
    flex-shrink: 0;
    width: 260px;
    margin-bottom: 0;
    margin-top: 75px;
}
.section__box--news .contents__ttl {
    text-align: left;
}
.section__box--news .contents__ttl--en {
    text-align: left;
}
.section__box--news .btn--primary {
    margin: 0;
    font-weight: 700;
}
.news__list {
    width: 840px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.news__item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 20px 0;
    border-top: 1px solid #e4e8ef;
}
.news__item:last-child {
    border-bottom: 1px solid #e4e8ef;
}
.news__date {
    color: #1e437b;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
}
.news__text {
    margin: 0;
    color: #292929;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.section__box--news .mv__catch-btn-arrow {
    width: 23px;
    height: 13px;
}
/* bannerGroup */

.section__box--banner-group {
    padding: 80px 0;
}
.banner-group {
    display: flex;
    gap: 30px;
}
.banner-group__item {
    position: relative;
    display: block;
    width: 555px;
    border-radius: 4px;
    overflow: hidden;
    transition: transform 0.3s ease;
}
.banner-group__item:hover {
    transform: translateY(-6px);
    opacity: 1;
}
.banner-group__item img {
    display: block;
    width: 100%;
    height: auto;
}
.banner-group__content {
    position: absolute;
    right: 25px;
    bottom: 26px;
    left: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.banner-group__content::before {
    content: '';
    position: absolute;
    right: -25px;
    bottom: -26px;
    left: -25px;
    height: 86px;
    background: linear-gradient(180deg, rgba(30, 67, 123, 0) 0%, rgba(30, 67, 123, 0.9) 100%);
    z-index: 0;
}
.banner-group__title {
    position: relative;
    color: #ffffff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
    z-index: 1;
}
.banner-group__arrow {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    color: #ffffff;
    z-index: 1;
}
.banner-group__arrow svg {
    display: block;
    width: 19px;
    height: 12px;
}

/* CONTACT */

.section__box--contact {
    position: relative;
    padding: 87px 0 100px;
    background-color: transparent;
}
.contact__svg-sprite {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}
.contact__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
}
.contact__bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.section__box--contact .contents__inner {
    position: relative;
    z-index: 1;
}
.contact__head {
    display: flex;
    align-items: center;
    gap: 27px;
    margin-bottom: 12px;
}
.contact__ttl-text {
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    flex-shrink: 0;
    padding-bottom: 17px;
    }
.contact__ttl-box {
    flex-shrink: 0;
}
.contact__ttl {
    margin: 0;
    color: #ffffff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
}
.contact__ttl--en {
    display: block;
    margin-bottom: 25px;
    color: #ffffff;
    font-size: 56px;
    font-weight: 900;
    line-height: 1;
}
.contact__lead {
    margin: 0px 0 13px 23px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
.contact__list {
    display: flex;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.contact__item {
    width: 360px;
}
.contact__btn {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 144px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease;
    gap: 10px;
}
.contact__btn-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding-bottom: 12px;
    transition: color 0.3s ease;
}
.contact__btn-icon svg {
    fill: none;
}
.contact__btn-icon svg path {
    fill: none;
}
.contact__btn-text {
    font-weight: 700;
    line-height: 1;
    transition: color 0.3s ease;
}
.contact__btn-arrow {
    position: absolute;
    right: 13px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    transition: color 0.3s ease;
}
.contact__btn-arrow svg {
    display: block;
    width: 28px;
    height: 14px;
}
.contact__btn--tel {
    gap: 10px;
    background-color: #ffffff;
    pointer-events: none;
}
.contact__btn--tel .contact__btn-icon {
    margin-bottom: 0;
    color: #1e437b;
    padding-bottom: 0px;
}
.contact__btn--tel .contact__btn-text {
    color: #1e437b;
    font-size: 36px;
}
.contact__btn--tel:hover {
    opacity: 1;
}

.contact__btn--mail {
    background-color: #fffdf1;
}
.contact__btn--mail .contact__btn-icon {
    color: #f39801;
}
.contact__btn--mail .contact__btn-text {
    color: #f39801;
    font-size: 28px;
}
.contact__btn--mail .contact__btn-arrow {
    color: #f39801;
}
.contact__btn--mail:hover {
    background-color: #f39801;
    opacity: 1;
}
.contact__btn--mail:hover .contact__btn-icon,
.contact__btn--mail:hover .contact__btn-text,
.contact__btn--mail:hover .contact__btn-arrow {
    color: #ffffff;
}
.contact__btn--proposal {
    background-color: #e6f8ff;
}
.contact__btn--proposal .contact__btn-icon {
    color: #008fd0;
}
.contact__btn--proposal .contact__btn-text {
    color: #008fd0;
    font-size: 28px;
}
.contact__btn--proposal .contact__btn-arrow {
    color: #008fd0;
}
.contact__btn--proposal:hover {
    background-color: #008fd0;
    opacity: 1;
}
.contact__btn--proposal:hover .contact__btn-icon,
.contact__btn--proposal:hover .contact__btn-text,
.contact__btn--proposal:hover .contact__btn-arrow {
    color: #ffffff;
}

/* Q＆A */

.section__box--faq {
    padding: 73px 0 100px;
}
.section__box--faq .contents__ttl-box {
    margin-bottom: 40px;
}
.faq__list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.faq__item {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 19px 0;
    border-top: 1px solid #e4e8ef;
    border-bottom: 1px solid #e4e8ef;
}
.faq__question {
    display: flex;
    align-items: center;
    gap: 12px;
}
.faq__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    background: url(/images/top/qa__bg.svg) no-repeat center;
    color: #ffffff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    padding-bottom: 4px;
}
.faq__question-text {
    margin: 0;
    color: #1e437b;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.faq__answer {
    padding-left: 46px;
}
.faq__text {
    margin: 0;
    color: #292929;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}

/* search modal */
body.is-search-modal-open {
    overflow: hidden;
}

.search-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
}

.search-modal.is-open {
    display: flex;
}

.search-modal__overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.6);
}

.search-modal__dialog {
    position: relative;
    z-index: 1;
    width: 1139px;
    max-width: 100%;
    max-height: calc(100vh - 80px);
    overflow: auto;
    border-radius: 25px;
    background-color: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.search-modal__header {
    position: relative;
    padding: 42px 100px 29px;
    text-align: center;
}

.search-modal__title {
    margin: 0;
    color: #363636;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
}

.search-modal__close {
    position: absolute;
    top: 25px;
    right: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background-color: #b4bbc8;
    color: #fcfcfc;
    font-size: 40px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
}

.search-modal__close span {
    display: block;
    margin-top: -2px;
}

.search-modal__body {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    padding: 0 100px;
}

.search-modal__type-wrap {
    position: relative;
    flex-shrink: 0;
    width: 160px;
}
.search-modal__type-list {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-modal__type-item + .search-modal__type-item {
    margin-top: 5px;
}

.search-modal__type {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 45px;
    margin: 0;
    padding: 8px 16px;
    border: 0;
    border-bottom: 1px solid #edf0f4;
    border-radius: 5px 0 0 5px;
    background-color: #edf0f4;
    color: #1e437b;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    cursor: pointer;
    min-height: 60px;
}

.search-modal:has(.search-modal__type[data-type="rent"].is-active) .search-modal__type {
    min-height: 60px;
}

.search-modal__type[data-type="rent"].is-active {
    border-bottom-color: #008fd0;
    background-color: #008fd0;
    color: #fff;
}

.search-modal__type[data-type="buy"].is-active {
    border-bottom-color: #f39801;
    background-color: #f39801;
    color: #fff;
}

.search-modal__type[data-type="invest"].is-active {
    border-bottom-color: #b1cf21;
    background-color: #b1cf21;
    color: #fff;
}

.search-modal:has(.search-modal__type[data-type="invest"].is-active) .search-modal__type:not(.is-active) {
    /* background-color: #fff; */
    /* color: #adadad; */
    /* font-size: 18px; */
}

.search-modal__main {
    flex: 1;
    min-width: 0;
}

.search-modal__panel {
    display: none;
}

.search-modal__panel.is-active {
    display: block;
}

.search-modal__category-list {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.search-modal__panel[data-type="rent"] .search-modal__category-list {
    gap: 3px;
}

.search-modal__panel[data-type="buy"] .search-modal__category-list,
.search-modal__panel[data-type="invest"] .search-modal__category-list {
    /* margin-bottom: 30px; */
}

.search-modal__category {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    margin: 0;
    padding: 0 30px;
    border: 0;
    border-radius: 9999px;
    background-color: #edf0f4;
    color: #8f8f8f;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.search-modal__panel[data-type="rent"] .search-modal__category {
    border: 1px solid #a5b4ca;
}

.search-modal__panel[data-type="rent"] .search-modal__category.is-active {
    border-color: #008fd0;
    background-color: #008fd0;
    color: #fff;
}

.search-modal__panel[data-type="buy"] .search-modal__category {
    background-color: #fff5de;
    color: #AEA287;
    border: 1px solid #e4d7ba;
}

.search-modal__panel[data-type="buy"] .search-modal__category.is-active {
    background-color: #f39801;
    color: #fff;
    border: 1px solid #f39801;
}

.search-modal__panel[data-type="invest"] .search-modal__category {
    background-color: #eef3d2;
    color: #A0A875;
    border: 1px solid #cdd59c;
}

.search-modal__panel[data-type="invest"] .search-modal__category.is-active {
    background-color: #b1cf21;
    color: #fff;
    border: 1px solid #b1cf21;
}

.search-modal__footer {
    display: flex;
    gap: 10px;
    margin-top: 40px;
    padding: 0 0 50px;
}

.search-modal__footer-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 260px;
    height: 50px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 5px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.13);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    cursor: pointer;
}

.search-modal__footer-btn--clear {
    background-color: #efefef;
    color: #8f8f8f;
}

.search-modal__footer-btn--search {
    background-color: #1e437b;
    color: #fff;
}

.search-modal__map {
    width: 739px;
    max-width: 100%;
    padding: 0;
}

.search-modal__map.scrollbar-content.vertical {
    max-height: 500px;
}
@media screen and (max-width: 1280px) {
    .search-modal__map.scrollbar-content.vertical {
        max-height: 310px;
    }
}

.search-modal .simplebar-track.simplebar-vertical {
    background: #d9d9d9;
    width: 8px;
    overflow: visible;
    right: 0;
    margin: 0;
    border-radius: 30px;
    pointer-events: all;
}

.search-modal .simplebar-scrollbar.simplebar-visible:before {
    width: 8px;
    background-color: #008fd0;
    opacity: 1;
    left: 0;
    top: 0;
    border-radius: 30px;
    z-index: 2;
    cursor: pointer;
}

.search-modal[data-active-type="buy"] .simplebar-scrollbar.simplebar-visible:before {
    background-color: #f39801;
}

.search-modal[data-active-type="invest"] .simplebar-scrollbar.simplebar-visible:before {
    background-color: #b1cf21;
}

.search-modal__map-area {
    display: none;
}

.search-modal__map-area.is-active {
    display: block;
}

.search-modal__map-inner {
    position: relative;
    width: 100%;
    height: 400px;
}

.search-modal__map-inner--detail {
    height: 600px;
}

.search-modal__map-img {
    position: absolute;
    display: block;
    width: 692px;
    height: 400px;
    object-fit: cover;
    right: 45px;
}

.search-modal__map-img--detail {
    position: relative;
    right: auto;
    width: 721px;
    height: 600px;
    max-width: 100%;
    object-fit: contain;
}

.search-modal__map-list {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-modal__map-item {
    position: absolute;
}

.search-modal__map-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 2px 19px;
    border: 0;
    border-radius: 9999px;
    background-color: #fff;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.13);
    color: #0ca836;
    font-size: 20px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 2px;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
}

.search-modal__map-btn--city {
    position: relative;
    padding: 1px 10px;
    color: #0ca836;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    cursor: pointer;
}

.search-modal__map-btn--city.is-disabled {
    color: #ccc;
    cursor: not-allowed;
    pointer-events: none;
}

.search-modal .search-modal__map-check,
.search-modal .search-modal__map-check--hidden {
    appearance: none;
    position: absolute;
    width: 1px;
    height: 1px;
    min-width: 0;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    border: 0;
    pointer-events: none;
}

.search-modal__map-btn-text {
    display: block;
}

.search-modal[data-active-type="rent"] .search-modal__map-btn.is-active,
.search-modal[data-active-type="rent"] .search-modal__map-btn--city.is-active,
.search-modal[data-active-type="rent"] .search-modal__map-btn--city:has(:checked) {
    background-color: #008fd0;
    color: #fff;
}

.search-modal[data-active-type="buy"] .search-modal__map-btn.is-active,
.search-modal[data-active-type="buy"] .search-modal__map-btn--city.is-active,
.search-modal[data-active-type="buy"] .search-modal__map-btn--city:has(:checked) {
    background-color: #f39801;
    color: #fff;
}

.search-modal[data-active-type="invest"] .search-modal__map-btn.is-active,
.search-modal[data-active-type="invest"] .search-modal__map-btn--city.is-active,
.search-modal[data-active-type="invest"] .search-modal__map-btn--city:has(:checked) {
    background-color: #b1cf21;
    color: #fff;
}

.search-modal__map-item--saitama {
    top: 27.42%;
    left: 29.36%;
}

.search-modal__map-item--ibaraki {
    top: 15.2%;
    left: 55.38%;
}

.search-modal__map-item--chiba {
    top: 58.93%;
    left: 64.71%;
}

.search-modal__map-item--kanagawa {
    top: 79%;
    left: 26.46%;
}

.search-modal__map-item--tokyo-shitamachi {
    top: 51.47%;
    left: 22.5%;
}

.search-modal__map-item--tokyo-23 {
    top: 56.95%;
    left: 50%;
    transform: translateX(-50%);
}

/* 神奈川県 市区町村配置（Figma 721x600基準） */
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14100 { top: 224px; left: 520px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14130 { top: 58px; left: 558px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14150 { top: 80px; left: 158px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14201 { top: 472px; left: 608px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14203 { top: 340px; left: 281px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14204 { top: 368px; left: 498px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14205 { top: 325px; left: 421px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14206 { top: 429px; left: 115px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14207 { top: 355px; left: 357px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14208 { top: 394px; left: 547px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14210 { top: 552px; left: 592px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14211 { top: 284px; left: 163px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14212 { top: 200px; left: 296px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14213 { top: 195px; left: 414px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14214 { top: 271px; left: 253px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14215 { top: 254px; left: 338px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14216 { top: 172px; left: 355px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14217 { top: 386px; left: 30px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14218 { top: 231px; left: 404px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14301 { top: 432px; left: 560px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14321 { top: 309px; left: 347px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14341 { top: 373px; left: 257px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14342 { top: 400px; left: 217px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14361 { top: 345px; left: 195px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14362 { top: 369px; left: 143px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14363 { top: 289px; left: 95px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14364 { top: 254px; left: 24px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14366 { top: 346px; left: 90px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14382 { top: 479px; left: 14px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14383 { top: 545px; left: 129px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14384 { top: 545px; left: 33px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14401 { top: 127px; left: 269px; }
.search-modal__map-area[data-area="kanagawa"] .search-modal__map-item--14402 { top: 178px; left: 193px; }

/* 東京都下 市区町村配置（Figma 721x600基準） */
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13308 { top: 89px; left: 35px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13307 { top: 218px; left: 61px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13205 { top: 105px; left: 243px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13305 { top: 161px; left: 209px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13228 { top: 207px; left: 169px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13227 { top: 161px; left: 320px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13218 { top: 208px; left: 346px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13303 { top: 134px; left: 372px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13223 { top: 168px; left: 395px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13207 { top: 253px; left: 368px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13201 { top: 316px; left: 281px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13202 { top: 228px; left: 424px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13220 { top: 195px; left: 455px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13213 { top: 161px; left: 501px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13214 { top: 238px; left: 490px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13215 { top: 274px; left: 468px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13212 { top: 312px; left: 423px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13224 { top: 363px; left: 463px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13209 { top: 435px; left: 471px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13211 { top: 211px; left: 541px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13210 { top: 260px; left: 556px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13206 { top: 303px; left: 530px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13225 { top: 363px; left: 547px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13221 { top: 131px; left: 578px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13222 { top: 179px; left: 578px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13229 { top: 211px; left: 613px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13203 { top: 242px; left: 628px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13204 { top: 281px; left: 633px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13208 { top: 320px; left: 605px; }
.search-modal__map-area[data-area="tokyo-shitamachi"] .search-modal__map-item--13219 { top: 359px; left: 647px; }

/* 東京23区 配置（Figma 721x600基準） */
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13121 { top: 90px; left: 425px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13117 { top: 114px; left: 341px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13119 { top: 119px; left: 264px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13120 { top: 146px; left: 174px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13122 { top: 149px; left: 508px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13118 { top: 158px; left: 401px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13116 { top: 178px; left: 304px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13106 { top: 204px; left: 409px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13107 { top: 207px; left: 477px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13105 { top: 207px; left: 341px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13114 { top: 210px; left: 235px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13123 { top: 239px; left: 534px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13104 { top: 239px; left: 293px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13115 { top: 244px; left: 174px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13101 { top: 252px; left: 365px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13108 { top: 278px; left: 458px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13102 { top: 285px; left: 391px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13113 { top: 293px; left: 264px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13103 { top: 320px; left: 342px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13112 { top: 335px; left: 177px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13110 { top: 358px; left: 271px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13109 { top: 394px; left: 335px; }
.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13111 { top: 464px; left: 311px; }

.search-modal__map-area[data-area="tokyo-23"] .search-modal__map-item--13111 { top: 464px; left: 311px; }

/* 茨城県 市区町村配置（Figma 721x600基準） */
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08215 { top: 25px; left: 491px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08214 { top: 62px; left: 454px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08364 { top: 54px; left: 337px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08212 { top: 110px; left: 387px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08225 { top: 144px; left: 305px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08202 { top: 143px; left: 462px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08341 { top: 228px; left: 458px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08226 { top: 221px; left: 389px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08310 { top: 216px; left: 316px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08221 { top: 264px; left: 437px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08201 { top: 275px; left: 368px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08216 { top: 284px; left: 294px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08309 { top: 319px; left: 441px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08302 { top: 326px; left: 362px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08236 { top: 366px; left: 332px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08205 { top: 338px; left: 278px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08231 { top: 307px; left: 227px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08227 { top: 322px; left: 158px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08210 { top: 370px; left: 168px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08230 { top: 394px; left: 259px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08203 { top: 428px; left: 284px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08220 { top: 424px; left: 203px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08211 { top: 452px; left: 176px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08521 { top: 398px; left: 128px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08207 { top: 343px; left: 91px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08204 { top: 381px; left: 63px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08542 { top: 428px; left: 32px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08546 { top: 426px; left: 100px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08228 { top: 460px; left: 107px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08443 { top: 472px; left: 269px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08442 { top: 479px; left: 341px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08219 { top: 503px; left: 263px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08208 { top: 532px; left: 261px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08447 { top: 560px; left: 305px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08564 { top: 566px; left: 239px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08217 { top: 537px; left: 197px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08235 { top: 492px; left: 141px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08224 { top: 519px; left: 136px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08234 { top: 378px; left: 416px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08233 { top: 449px; left: 395px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08229 { top: 521px; left: 344px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08223 { top: 514px; left: 420px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08222 { top: 478px; left: 462px; }
.search-modal__map-area[data-area="ibaraki"] .search-modal__map-item--08232 { top: 547px; left: 478px; }

/* 埼玉県 市区町村配置（Figma 721x600基準） */
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11385 {top: 64px;left: 120px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11211 {top: 99px;left: 142px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11383 {top: 106px;left: 76px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11381 {top: 141px;left: 146px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11218 {top: 124px;left: 212px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11202 {top: 149px;left: 282px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11206 {top: 152px;left: 351px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11216 {top: 127px;left: 407px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11210 {top: 171px;left: 454px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11232 {top: 223px;left: 464px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11240 {top: 217px;left: 542px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11464 {top: 247px;left: 568px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11214 {top: 297px;left: 578px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11465 {top: 331px;left: 606px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11243 {top: 369px;left: 635px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11237 {top: 415px;left: 645px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11234 {top: 447px;left: 606px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11221 {top: 398px;left: 582px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11203 {top: 425px;left: 551px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11223 {top: 421px;left: 499px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11224 {top: 452px;left: 516px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11100 {top: 362px;left: 465px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11238 {top: 301px;left: 498px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11442 {top: 272px;left: 528px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11246 {top: 248px;left: 482px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11301 {top: 275px;left: 462px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11219 {top: 310px;left: 434px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11231 {top: 279px;left: 397px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11233 {top: 252px;left: 403px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11217 {top: 206px;left: 382px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11347 {top: 232px;left: 342px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11346 {top: 307px;left: 366px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11239 {top: 304px;left: 301px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11212 {top: 258px;left: 291px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11348 {top: 282px;left: 251px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11349 {top: 286px;left: 158px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11327 {top: 313px;left: 213px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11241 {top: 335px;left: 301px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11201 {top: 347px;left: 379px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11245 {top: 377px;left: 364px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11235 {top: 401px;left: 410px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11228 {top: 426px;left: 433px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11227 {top: 451px;left: 440px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11229 {top: 478px;left: 477px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11230 {top: 483px;left: 400px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11324 {top: 428px;left: 370px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11208 {top: 459px;left: 334px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11215 {top: 402px;left: 314px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11225 {top: 437px;left: 268px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11242 {top: 369px;left: 257px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11326 {top: 344px;left: 223px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11209 {top: 370px;left: 157px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11361 {top: 311px;left: 113px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11207 {top: 345px;left: 42px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11365 {top: 262px;left: 15px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11362 {top: 216px;left: 86px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11369 {top: 248px;left: 148px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11343 {top: 219px;left: 199px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11341 {top: 207px;left: 271px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11342 {top: 246px;left: 230px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11408 {top: 188px;left: 169px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11363 {top: 179px;left: 98px;}
.search-modal__map-area[data-area="saitama"] .search-modal__map-item--11222 {top: 366px;left: 566px;}

/* 千葉県 市区町村配置（Figma 721x600基準） */
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12208 { top: 18px; left: 214px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12220 { top: 62px; left: 196px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12222 { top: 58px; left: 294px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12217 { top: 86px; left: 265px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12207 { top: 94px; left: 192px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12329 { top: 61px; left: 384px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12342 { top: 46px; left: 445px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12236 { top: 78px; left: 502px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12349 { top: 98px; left: 561px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12202 { top: 129px; left: 601px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12215 { top: 135px; left: 550px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12347 { top: 123px; left: 480px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12235 { top: 161px; left: 508px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12410 { top: 192px; left: 496px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12409 { top: 172px; left: 440px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12237 { top: 210px; left: 445px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12403 { top: 257px; left: 476px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12424 { top: 303px; left: 456px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12423 { top: 329px; left: 448px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12421 { top: 357px; left: 449px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12238 { top: 403px; left: 423px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12443 { top: 456px; left: 433px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12218 { top: 478px; left: 379px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12441 { top: 432px; left: 350px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12422 { top: 378px; left: 383px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12427 { top: 345px; left: 363px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12210 { top: 317px; left: 387px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12426 { top: 291px; left: 354px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12239 { top: 264px; left: 378px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12213 { top: 235px; left: 412px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12230 { top: 207px; left: 381px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12100 { top: 229px; left: 319px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12229 { top: 320px; left: 264px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12206 { top: 353px; left: 219px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12219 { top: 367px; left: 317px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12225 { top: 414px; left: 279px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12226 { top: 436px; left: 210px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12223 { top: 478px; left: 292px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12234 { top: 517px; left: 230px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12463 { top: 484px; left: 188px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12205 { top: 560px; left: 191px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12233 { top: 144px; left: 423px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12211 { top: 82px; left: 426px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12322 { top: 106px; left: 383px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12227 { top: 205px; left: 214px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12203 { top: 164px; left: 198px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12216 { top: 178px; left: 263px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12204 { top: 151px; left: 263px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12224 { top: 122px; left: 237px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12231 { top: 87px; left: 325px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12228 { top: 181px; left: 346px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12212 { top: 153px; left: 358px; }
.search-modal__map-area[data-area="chiba"] .search-modal__map-item--12221 { top: 126px; left: 315px; }

/* catch search modal */
body.is-catch-search-modal-open {
    overflow: hidden;
}

.catch-search-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 52px 20px;
}

.catch-search-modal.is-open {
    display: flex;
}

.catch-search-modal__overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.6);
}

.catch-search-modal__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    width: 1140px;
    max-width: 100%;
    max-height: calc(100vh - 40px);
    height: fit-content;
    border-radius: 40px;
    background-color: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.catch-search-modal__header {
    position: relative;
    flex-shrink: 0;
    padding: 40px 100px 0;
    text-align: center;
}

.catch-search-modal__title {
    margin: 0;
    color: #363636;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.4;
}

.catch-search-modal__close {
    position: absolute;
    top: 25px;
    right: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background-color: #b4bbc8;
    color: #fcfcfc;
    font-size: 40px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
}

.catch-search-modal__close span {
    display: block;
    margin-top: -2px;
}

.catch-search-modal__body {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    flex: 1;
    min-height: 0;
    padding: 30px 100px 0;
    overflow-y: auto;
}

.catch-search-modal__type-wrap {
    flex-shrink: 0;
    width: 160px;
    border-right: 1px solid #e0e0e0;
    height: 100%;
}

.catch-search-modal__type-list {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.catch-search-modal__type-item + .catch-search-modal__type-item {
    margin-top: 5px;
}

.catch-search-modal__type {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 60px;
    margin: 0;
    padding: 0 10px;
    border: 0;
    border-radius: 5px 0 0 5px;
    background-color: #edf0f4;
    color: #1e437b;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    cursor: pointer;
}

.catch-search-modal__type[data-type="rent"].is-active {
    background-color: #008fd0;
    color: #fff;
}

.catch-search-modal__type[data-type="buy"].is-active {
    background-color: #f39801;
    color: #fff;
}

.catch-search-modal__type[data-type="invest"].is-active {
    background-color: #b1cf21;
    color: #fff;
}

.catch-search-modal__main {
    flex: 1;
    min-width: 0;
}

.catch-search-modal__form {
    display: contents;
}

.catch-search-modal__category-panel {
    display: none;
}

.catch-search-modal__category-panel.is-active {
    display: block;
}

.catch-search-modal__category-list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.catch-search-modal__category {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    margin: 0;
    padding: 0 30px;
    border: 1px solid #a5b4ca;
    border-radius: 9999px;
    background-color: #edf0f4;
    color: #8f8f8f;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.catch-search-modal[data-active-type="rent"] .catch-search-modal__category-panel[data-type="rent"] .catch-search-modal__category.is-active {
    border-color: #008fd0;
    background-color: #008fd0;
    color: #fff;
}

.catch-search-modal[data-active-type="buy"] .catch-search-modal__category-panel[data-type="buy"] .catch-search-modal__category {
    background-color: #fff5de;
    color: #aea287;
    border-color: #e4d7ba;
}

.catch-search-modal[data-active-type="buy"] .catch-search-modal__category-panel[data-type="buy"] .catch-search-modal__category.is-active {
    background-color: #f39801;
    color: #fff;
    border-color: #f39801;
}

.catch-search-modal[data-active-type="invest"] .catch-search-modal__category-panel[data-type="invest"] .catch-search-modal__category {
    background-color: #eef3d2;
    color: #a0a875;
    border-color: #cdd59c;
}

.catch-search-modal[data-active-type="invest"] .catch-search-modal__category-panel[data-type="invest"] .catch-search-modal__category.is-active {
    background-color: #b1cf21;
    color: #fff;
    border-color: #b1cf21;
}

.catch-search-modal__scroll-wrap {
    width: 739px;
    max-width: 100%;
}

.catch-search-modal__scroll.scrollbar-content.vertical {
    max-height: 500px;
}
@media screen and (max-width: 1280px) {
    
    .catch-search-modal__scroll.scrollbar-content.vertical {
        max-height: 295px;
    }
}

.catch-search-modal__scroll .select-list {
    width: 721px;
    max-width: 100%;
}

.catch-search-modal .simplebar-track.simplebar-vertical {
    background: #d9d9d9;
    width: 4px;
    overflow: visible;
    right: -1px;
    margin: 4px 0;
    border-radius: 30px;
    pointer-events: all;
}

.catch-search-modal .simplebar-scrollbar.simplebar-visible:before {
    width: 4px;
    background-color: #45acd8;
    opacity: 1;
    left: 0;
    top: 0;
    border-radius: 30px;
    z-index: 2;
    cursor: pointer;
}

.catch-search-modal[data-active-type="buy"] .simplebar-scrollbar.simplebar-visible:before {
    background-color: #f39801;
}

.catch-search-modal[data-active-type="invest"] .simplebar-scrollbar.simplebar-visible:before {
    background-color: #b1cf21;
}

.catch-search-modal .select-list {
    margin: 0;
}

.catch-search-modal .select-list + .select-list {
    margin-top: 0;
}

.catch-search-modal .select-list__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 45px;
    margin: 0;
    padding: 12px 20px 12px 10px;
    border: 0;
    background-color: #e3f1f8;
    color: #363636;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    list-style: none;
    cursor: pointer;
}

.catch-search-modal[data-active-type="buy"] .select-list__toggle {
    background-color: #fff5de;
}

.catch-search-modal[data-active-type="invest"] .select-list__toggle {
    background-color: #eef3d2;
}

.catch-search-modal .select-list__toggle::-webkit-details-marker {
    display: none;
}

.catch-search-modal .select-list__toggle label {
    display: flex;
    gap: 5px;
    align-items: center;
    cursor: pointer;
}

.catch-search-modal .select-list__toggle label.is-disabled {
    color: #ccc;
    cursor: not-allowed;
    pointer-events: none;
}

.catch-search-modal .select-list__toggle input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    cursor: pointer;
    appearance: auto;
}

.catch-search-modal .select-list__arrow {
    display: block;
    flex-shrink: 0;
    width: 10px;
    height: 4px;
    color: #008fd0;
    transition: transform 0.2s;
}

.catch-search-modal .select-list__arrow svg {
    display: block;
    width: 10px;
    height: 4px;
    fill: #ECEFF1;
}

.catch-search-modal .select-list[open] .select-list__arrow {
    transform: scaleY(-1);
}

.catch-search-modal[data-active-type="buy"] .select-list__arrow {
    color: #f39801;
}

.catch-search-modal[data-active-type="invest"] .select-list__arrow {
    color: #b1cf21;
}

.catch-search-modal .select-list__list {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}

.catch-search-modal .select-list__list--grid {
    border-top: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
}

.catch-search-modal .select-list__list--grid .select-list__items {
    width: 180px;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}

.catch-search-modal .select-list__list--grid .select-list__items.is-disabled {
    display: none;
}

.catch-search-modal .ui-check-item {
    display: flex;
    gap: 5px;
    align-items: center;
    min-height: 42px;
    padding: 12px 10px;
    background-color: #fcfcfc;
    color: #363636;
    font-size: 12px;
    line-height: 1.5;
    cursor: pointer;
}

.catch-search-modal .ui-check-item input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    flex-shrink: 0;
    cursor: pointer;
    appearance: auto;
}

.catch-search-modal .ui-check-item.is-disabled {
    color: #ccc;
    cursor: not-allowed;
    pointer-events: none;
}

.catch-search-modal__footer {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-shrink: 0;
    padding: 42px 100px 50px;
}

.catch-search-modal__footer-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 260px;
    height: 50px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 5px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.13);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    cursor: pointer;
}

.catch-search-modal__footer-btn--clear {
    background-color: #efefef;
    color: #8f8f8f;
}

.catch-search-modal__footer-btn--search {
    background-color: #1e437b;
    color: #fff;
}