@charset "UTF-8";

/*///////////////////// font-face 読み込み例 ///////////////////////////*/

/* Zen Kaku Gothic New 400 (Regular) */
@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Regular.woff2);
    font-weight: 400;
    font-display: swap;
}

/* Zen Kaku Gothic New 500 (Medium) */
@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Medium.woff2);
    font-weight: 500;
    font-display: swap;
}

/* Zen Kaku Gothic New 700 (Bold) */
@font-face {
    font-family: 'Zen Kaku Gothic New';
    src: url(/fonts/ZenKakuGothicNew-Bold.woff2);
    font-weight: 700;
    font-display: swap;
}

/* Roboto 700 (Regular) */
@font-face {
    font-family: 'Roboto';
    src: url(/fonts/Roboto-Regular.woff2) format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

.l-main{
    width: 100%;
    padding: 0;
    overflow: hidden;
}

.l-main svg{
    fill: none;
}

.l-main *{
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

/* メイン画像 */

.main__img{
    width: 100%;
}

.main__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main__inner{
    position: relative;
    width: 1140px;
    margin: 0 auto;
}

.main__count{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: baseline;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    gap: 4px;
    width: 1920px;
    height: 80px;
    background-color: #074322;
    padding: 9px 0 0;
}

.count__txt{
    color: #FFF;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 1.2px;
}

.count__num{
    color: #FFF;
    font-family: "Roboto", sans-serif;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 2.4px;
}

/* お客様の声 */

.voice {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding: 60px 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.voice__head-inner {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

.voice__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
}

.voice__sub {
    margin: 0;
    color: #074322;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.voice__title {
    margin: 0;
    color: #263238;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.voice__slider-wrap {
    width: 1140px;
    margin: 0 auto;
    box-sizing: border-box;
}

.voice__list-outer {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 25px;
}

.voice-swiper.swiper {
    overflow: visible;
}

.voice__list.swiper-wrapper {
    margin: 0;
    padding: 0;
    list-style: none;
}

.voice__item.swiper-slide {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    box-sizing: border-box;
    width: 341px;
    height: auto;
}

.voice__thumb {
    position: relative;
    width: 341px;
    height: 227px;
    overflow: hidden;
    border-radius: 6px;
    transition: transform 0.3s ease;
    background-color: #f5f5f5;
}

.voice__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.voice__item a:hover{
    opacity: 1;
}

.voice__item a:hover .voice__thumb img {
    transform: scale(1.08);
    opacity: 1;
}

.voice__thumb-label {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    margin: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.21;
    text-align: center;
    transform: translate(-50%, -50%);
}

.voice__body {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    gap: 8px;
    width: 100%;
    margin-top: 11px;
}

.voice__name {
    margin: 0;
    color: #074322;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    text-align: center;
}

.voice__text {
    margin: 0;
    color: #263238;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.voice__foot-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.voice__pager {
    display: flex;
    align-items: center;
    gap: 25px;
}

.voice__pager .swiper-button-prev,
.voice__pager .swiper-button-next {
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    margin: 0;
    width: 5px;
    height: 10px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.voice__pager .swiper-button-prev::after,
.voice__pager .swiper-button-next::after {
    display: none;
}

.voice__pager .swiper-button-prev svg,
.voice__pager .swiper-button-next svg {
    display: block;
}

.voice__pager .swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

.voice__pager .swiper-pagination {
    position: static;
    width: auto;
    margin: 0;
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
}

.voice__pager .swiper-pagination .swiper-pagination-current,
.voice__pager .swiper-pagination .swiper-pagination-total {
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
}

.voice__more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 35px;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    padding: 12px 20px 11px 57px;
    border: 1px solid transparent;
    border-radius: 9999px;
    background: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
    text-decoration: none;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.voice__more:hover {
    border-color: #074322;
    background: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
}

.voice__more .voice__more-icon path {
    transition: stroke 0.2s ease;
}

.voice__more:hover .voice__more-icon path {
    stroke: #074322;
}

.voice__more-text {
    display: block;
}

.voice__more-icon {
    display: flex;
    flex-shrink: 0;
    line-height: 0;
}

.voice__more-icon svg {
    display: block;
}


/* 物件検索 SEARCH（org2）Figma 12012:134 */

.freesearch{
    padding-block: 60px;
    background: linear-gradient(311deg, #074322 42.69%, #1E4E22 71.35%, #345923 100%);
}

.freesearch__inner{
    width: 1140px;
    margin: 0 auto;
}

.ttl__box{
    text-align: center;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

h3.freewordSearch__ttl {
    box-sizing: border-box;
    color: #FFF;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 1.4px;
        text-align: center;
}

.search__sub-ttl{
    color: #FFF;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 46px;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: 4.6px;
}

.conditions-search__content {
    box-sizing: border-box;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.map__box{
    position: relative;
}

.map__img{
    position: relative;
    width: 517px;
    z-index: 0;
}

.map__img::before{
    position: absolute;
    content: "";
    background: url(/images/top/deco01.webp) no-repeat center / cover;
    width: 1317px;
    height: 808px;
    z-index: -1;
    left: -410px;
    top: -136px;
}

.map__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

[class*="label__txt--"] a{
    position: absolute;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 170%;
    width: fit-content;
    height: 46px;
    padding: 0 30px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background-color: #074322;
    border: 1px solid transparent;
    border-radius: 5px;
    text-decoration: none;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, background-color 0.2s ease;
}

[class*="label__txt--"] a:hover {
    border-color: #074322;
    background: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    opacity: 1;
}

[class*="label__txt--"] .label__txt__label {
    flex-shrink: 0;
}

[class*="label__txt--"] .label__txt__arrow {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    line-height: 0;
    color: inherit;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 11px;
}

[class*="label__txt--"] .label__txt__arrow svg {
    display: block;
    color: inherit;
}

[class*="label__txt--"] .label__txt__arrow svg path {
    transition: stroke 0.2s ease;
}

.label__txt--tonda a{
    bottom: 321px;
    left: 222px;
    padding: 0 37px;
}

.label__txt--kouno a{
    bottom: 135px;
    left: 247px;
}

.label__txt--habikino a{
    top: 108px;
    right: 58px;
    padding: 0 38px;
}

.label__txt--fujiitera a{
    top: 38px;
    right: 100px;
    padding: 0 37px;
}

.label__txt--nangokonan a{
    bottom: 303px;
    right: -1px;
    padding: 0 47px;
}

.label__txt--nangokotai a{
    bottom: 378px;
    right: 1px;
    padding: 0 46px;
}

.label__txt--bihara a{
    bottom: 422px;
    left: 162px;
}

.label__txt--nangokotakashima a{
    bottom: 200px;
    right: 8px;
}

.price__box {
    display: flex;
    align-items: center;
    gap: 4px;
}

.price__txt{
    color: #FFF;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 170%;
}

.form__box{
    position: relative;
    width: 544px;
}

.form__box::before{
    position: absolute;
    content: "";
    background: url(/images/top/deco02.webp) no-repeat center / cover;
    width: 967px;
    height: 808px;
    right: -439px;
    top: -142px;
}

.station__box {
    display: flex;
    margin-top: 8px;
    gap: 21px;
    margin-bottom: 20px;
}

.station__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.search__ttl{
    color: #FFF;
    text-align: center;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
    margin-bottom: 10px;
}

.conditions-search__content form {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    width: 100%;
    max-width: 544px;
    padding: 32px 30px 30px;
    border-radius: 5px;
    background-color: rgba(255, 255, 255, 0.3);
    margin-top: 37px;
    position: relative;
    z-index: 1;
}

.conditions-search__content form > * {
    width: 100%;
}

[class*="conditions-search__item"] {
    margin: 0;
}

[class*="conditions-search__item"]:hover{
    cursor: pointer;
}

.form__type--select {
    position: relative;
    width: fit-content;
    height: 45px;
}

.form__type--select:hover{
    cursor: pointer;
}

.form__type--select::after {
    content: "";
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    width: 0;
    height: 0;
    margin: auto 0;
    background: url(/images/top/icon_arrow-room.svg) no-repeat center / cover;
    width: 11px;
    height: 6px;
    pointer-events: none;
}

.area__img{
    width: 23px;
    display: block;
}

.area__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.form__type--checkbox {
    position: relative;
    width: fit-content;
    margin: 0;
}

.area__bpx{
    position: relative;
}

.area__bpx::before{
    position: absolute;
    content: "";
    background-color: #fff;
    width: 1px;
    height: 95px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -10px;
}

.form__type--checkbox.area__bpx dt{
    position: relative;
    justify-content: center;
}

.form__type--checkbox.area__bpx dt::before{
    position: absolute;
    content: "";
    background: url(/images/top/icon_arrow-room.svg) no-repeat center / cover;
    width: 11px;
    height: 6px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 24px;
}

.form__type--checkbox::after {
    display: none;
}

.form__type--select select {
    box-sizing: border-box;
    width: 100%;
    height: 45px;
    padding: 9px 36px 9px 12px;
    border: 1px solid #cccccc;
    border-radius: 5px;
    background-color: #ffffff;
    color: #263238;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    appearance: none;
}

.years__box.form__type--select select{
    width: 147px;
    height: 45px;
}

.price__box.form__type--select select{
    width: 140px;
    height: 45px;
}

.conditions-search__content .years__box.form__type--select:hover select,
.conditions-search__content .price__box.form__type--select:hover select {
    cursor: pointer;
}

.form__type--checkbox dl {
    box-sizing: border-box;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 9px 12px;
    border: 1px solid #cccccc;
    border-radius: 5px;
    background-color: #ffffff;
    position: relative;
}

.form__type--checkbox.conditions-search__item--madori.years__box {
    height: 45px;
}

.area__bpx.form__type--checkbox dl{
    width: 159px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 7px;
    padding-top: 16px;
}

.years__box.form__type--checkbox dl{
    position: relative;
    width: 147px;
    height: 45px;
    padding: 9px 24px 9px 12px;
}

.years__box.form__type--checkbox dl::before{
    position: absolute;
    content: "";
    background: url(/images/top/icon_arrow-room.svg) no-repeat center / cover;
    width: 11px;
    height: 6px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 14px;
}

.price__box.form__type--checkbox dl{
    width: 140px;
    height: 45px;
}

.conditions-search__item--area .form__type--checkbox dl {
    min-height: 100px;
}

.form__type--checkbox dt {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 27px;
    padding: 0;
    color: #263238;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.conditions-search__item--madori.years__box dt{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.form__type--checkbox dd {
    display: none;
    position: absolute;
    bottom: calc(100% + 4px);
    left: 0;
    z-index: 5;
    box-sizing: border-box;
    width: 100%;
    max-height: 300px;
    margin: 0;
    padding: 10px;
    overflow-y: auto;
    border: 1px solid #cccccc;
    border-radius: 5px;
    background-color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.form__type--checkbox dd.is-open {
    display: block;
}

.form__type--checkbox dd.is-open li label {
    display: block;
    width: 100%;
    padding: 6px 0;
    color: #263238;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}

.button__box{
    display: flex;
    gap: 9px;
}

[class*="button__search--"]{
    width: 237px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #263238;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 170%;
    background-color: #d3dad6;
    border: 1px solid transparent;
    border-radius: 5px;
    box-sizing: border-box;
    cursor: pointer;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, background-color 0.2s ease;
}

.button__search--prev:hover {
    border-color: #074322;
    background: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #fff;
    opacity: 1;
}

.button__search--room{
    background-color: #074322;
    color: #fff;
}

.button__search--room:hover {
    border-color: #074322;
    background: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    opacity: 1;
}

/* 家賃下限・上限の間に ～（Figma 相当） */
.conditions-search__content form > .conditions-search__item--price-ceil {
    position: relative;
}

.conditions-search__content form > .conditions-search__item--price-ceil::before {
    content: "～";
    position: absolute;
    left: -5px;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    pointer-events: none;
}

/* こだわりの条件から探す */

.commitment__box{
    margin-top: 32px;
}

.commitment__ttl{
    color: #FFF;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 140%;
    margin-bottom: 14px;
}

.commitment__list{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.commitment__img{
    width: 30px;
    display: block;
}

.commitment__img.house__img{
    width: 37px;
}

.commitment__img.fifth__img{
    width: 38px;
}

.commitment__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

[class*="commitment__item--"] a{
    position: relative;
    width: 130px;
    height: 86px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    background-color: #fff;
    border-radius: 5px;
    padding-top: 12px;
}

[class*="diff__mrg--"] a{
    width: 176px;
}

[class*="commitment__item--"] a p{
    position: relative;
    color: #263238;
    text-align: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 170%;
    min-width: 64px;
}

[class*="diff__mrg--"] a p{
    min-width: 113px;
}

[class*="commitment__item--"] a p::before{
    position: absolute;
    content: "";
    background: url(/images/top/icon_arrow-kodawari.svg) no-repeat center / cover;
    width: 5px;
    height: 9px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -21px;
}

/* =========================================
   新着物件 NEW Figma 12058:220
   ========================================= */

.newbkn {
    padding: 60px 0 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.newbkn__inner {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
    min-height: 715px;
    box-sizing: border-box;
    width: 1140px;
}

.newbkn__bg {
    position: absolute;
    top: 0;
    left: -390px;
    width: 900px;
    height: 715px;
    background-color: #074322;
}

.newbkn__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 60px 0;
    box-sizing: border-box;
}

.newbkn__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.newbkn__sub {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

.newbkn__title {
    margin: 0;
    color: #ffffff;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

.newbkn__slider-wrap {
    width: 100%;
    box-sizing: border-box;
}

.newbkn-swiper.swiper {
    overflow: visible;
    clip-path: inset(0 -230% 0 0);
}

.newbkn__list.swiper-wrapper {
    margin: 0;
    padding: 0;
    list-style: none;
}

.newbkn__list > .swiper-slide {
    width: 340px;
    height: auto;
    box-sizing: border-box;
}

.newbkn-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    box-sizing: border-box;
    width: 340px;
    padding: 0 0 20px;
    border-radius: 6px;
    background-color: #ffffff;
    margin: 0;
}

.newbkn-card a:hover{
    opacity: 1;
}

.newbkn-card__detail {
    display: block;
    width: 300px;
    color: inherit;
    text-decoration: none;
}

.newbkn-card__thumb {
    position: relative;
    width: 340px;
    height: 227px;
    overflow: hidden;
    border-radius: 6px 6px 0 0;
    background-color: #f5f5f5;
}

.newbkn-card__media {
    position: relative;
    z-index: 0;
    display: block;
    line-height: 0;
}

.newbkn-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.newbkn-card:hover .newbkn-card__media img {
    transform: scale(1.08);
    opacity: 1;
}

.newbkn-card__badge {
    position: absolute;
    top: 9px;
    left: 9px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 25px;
    background-color: #da1111;
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
}

.newbkn-card__fav {
    position: absolute;
    top: 9px;
    right: 10px;
    z-index: 3;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    line-height: 0;
}

.newbkn-card__fav img {
    display: block;
}

.newbkn-card__sample {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    margin: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.21;
    text-align: center;
    transform: translate(-50%, -50%);
}

.newbkn-card__body {
    display: flex;
    flex-direction: column;
    width: 300px;
    box-sizing: border-box;
    padding: 11px 20px 0;
}

.newbkn-card__name {
    margin: 0;
    width: 300px;
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.newbkn-card__price-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0;
    margin-bottom: 3px;
}

.newbkn-card__price {
    color: #263238;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
}

.newbkn-card__price span{
    color: #DA1111;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
}

.newbkn-card__fee {
    color: #263238;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
}

.newbkn-card__spec {
    margin: 0;
    color: #263238;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
    text-align: left;
    margin-bottom: 7px;
}

.newbkn-card__meta {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.newbkn-card__addr,
.newbkn-card__access {
    margin: 0;
    width: 300px;
    color: #8f8f8f;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.newbkn__foot,
.recommend__foot {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 64px;
}

.recommend__foot {
    align-self: flex-end;
}

.newbkn__pager,
.recommend__pager {
    display: flex;
    align-items: center;
    gap: 25px;
}

.newbkn__pager .swiper-button-prev,
.newbkn__pager .swiper-button-next,
.recommend__pager .swiper-button-prev,
.recommend__pager .swiper-button-next {
    position: static;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    margin: 0;
    width: 5px;
    height: 10px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.newbkn__pager .swiper-button-prev::after,
.newbkn__pager .swiper-button-next::after,
.recommend__pager .swiper-button-prev::after,
.recommend__pager .swiper-button-next::after {
    display: none;
}

.newbkn__pager .swiper-button-prev svg,
.newbkn__pager .swiper-button-next svg,
.recommend__pager .swiper-button-prev svg,
.recommend__pager .swiper-button-next svg {
    display: block;
}

.newbkn__pager .swiper-button-disabled,
.recommend__pager .swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

.newbkn__pager .swiper-pagination,
.recommend__pager .swiper-pagination {
    position: static;
    width: auto;
    margin: 0;
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
}

.newbkn__pager .swiper-pagination .swiper-pagination-current,
.newbkn__pager .swiper-pagination .swiper-pagination-total,
.recommend__pager .swiper-pagination .swiper-pagination-current,
.recommend__pager .swiper-pagination .swiper-pagination-total {
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
}

.newbkn__more,
.recommend__more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 35px;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    padding: 12px 15px 11px 54px;
    border: 1px solid #074322;
    border-radius: 9999px;
    background: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
    text-decoration: none;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.newbkn__more:hover,
.recommend__more:hover {
    background: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #ffffff;
    border-color: #fff;
    opacity: 1;
}

.newbkn__more .newbkn__more-icon path,
.recommend__more .recommend__more-icon path {
    transition: stroke 0.2s ease;
}

.newbkn__more:hover .newbkn__more-icon path,
.recommend__more:hover .recommend__more-icon path {
    stroke: #ffffff;
}

.newbkn__more-text,
.recommend__more-text {
    display: block;
}

.newbkn__more-icon,
.recommend__more-icon {
    display: flex;
    flex-shrink: 0;
    line-height: 0;
}

.newbkn__more-icon svg,
.recommend__more-icon svg {
    display: block;
}

.favorite__icon {
    background: url(/images/top/icon_favorite.svg) no-repeat center / cover;
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 10px;
    right: 10px;
}
.favorite__icon.is-checked {
    background: url(/images/top/icon_favorite_on.svg) no-repeat center / cover;
}


/* おすすめ物件 RECOMMEND（org3）Figma 12058:218 */

.recommend {
    padding: 60px 0 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.recommend__inner {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
    min-height: 715px;
    box-sizing: border-box;
    width: 1140px;
}

.recommend__bg {
    position: absolute;
    top: 0;
    right: -390px;
    left: auto;
    width: 900px;
    height: 715px;
    background-color: #074322;
}

.recommend__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: stretch;
    padding: 60px 0;
    box-sizing: border-box;
}

.recommend__header {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
}

.recommend__sub {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: right;
}

.recommend__title {
    margin: 0;
    color: #ffffff;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: right;
}

.recommend__slider-wrap {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.recommend-swiper.swiper {
    width: 1082px;
    max-width: 100%;
    margin: 0 0 0 auto;
    padding: 0;
    overflow: visible;
    box-sizing: border-box;
    clip-path: inset(0 0 0 -230%);
}

.recommend__list.swiper-wrapper {
    margin: 0;
    padding: 0;
    list-style: none;
}

.recommend__list > .swiper-slide {
    width: 340px;
    height: auto;
    box-sizing: border-box;
    direction: ltr;
}

/* bnr */

.bnr{
    padding-block: 60px;
}

.bnr__inner{
    width: 1140px;
    margin: 0 auto;
}

.bnr__img a{
    display: flex;
    width: 800px;
    margin: 0 auto;
}

.bnr__img a img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* CONTACT（org5） */
.contact-cta {
    position: relative;
    min-height: 355px;
    overflow: hidden;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.contact-cta__media {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url('/images/top/contact_bg.webp');
    background-position: center center;
    background-size: cover;
}

.contact-cta__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(22, 56, 37, 0.7);
    backdrop-filter: blur(18px);
}

.contact-cta__inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    box-sizing: border-box;
    max-width: 1920px;
    min-height: 355px;
    margin: 0 auto;
    padding: 60px 62px;
    gap: 115px;
}

.contact-cta__intro {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    width: 425px;
    color: #ffffff;
}

.contact-cta__header {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.contact-cta__sub {
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    color: #fff;
}

.contact-cta__title {
    margin: 0;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    color: #fff;
    margin-bottom: 14px;
}

.contact-cta__lead {
    margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    color: #fff;
    margin-bottom: 79px;
}

.contact-cta__hours {
    display: flex;
    gap: 10px;
}

.contact-cta__hours-line {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    color: #fff;
}

.contact-cta__actions {
    flex-shrink: 0;
    width: 600px;
}

.contact-cta__grid {
    display: grid;
    grid-template-columns: 290px 290px;
    grid-template-rows: auto auto;
    column-gap: 20px;
    row-gap: 20px;
    align-items: start;
}

.contact-cta__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 290px;
    height: 100px;
    border-radius: 10px;
    color: #ffffff;
    text-decoration: none;
    opacity: 1;
    transition:
        color 0.2s ease,
        border-color 0.2s ease,
        background-color 0.2s ease,
        background-image 0.2s ease,
        opacity 0.2s ease;
}

.contact-cta__btn:hover {
    opacity: 1;
}

.contact-cta__btn--reserve {
    position: relative;
    margin-top: 12px;
    border: 1px solid #ffffff;
    background-image: linear-gradient(90deg, #074322 0%, #277d3a 100%);
}

.contact-cta__btn--reserve:hover {
    border-color: #074322;
    background-image: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    opacity: 1;
}

.contact-cta__btn--reserve:hover .contact-cta__badge--hours {
    border-color: #074322;
    background-color: #ffffff;
    color: #074322;
}

.contact-cta__btn--reserve:hover .contact-cta__icon {
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(18%) sepia(35%) saturate(1200%) hue-rotate(95deg) brightness(0.92) contrast(0.95);
}

.contact-cta__line-cell {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 290px;
}

.contact-cta__badge {
    box-sizing: border-box;
    padding: 0 12px 0 21px;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    width: fit-content;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition:
        color 0.2s ease,
        border-color 0.2s ease,
        background-color 0.2s ease;
}

.contact-cta__badge--hours {
    position: absolute;
    top: -15px;
    left: 50%;
    border: 1px solid #ffffff;
    background-color: #ffffff;
    color: #084523;
    transform: translateX(-50%);
}

.contact-cta__badge--easy {
    position: absolute;
    top: -2px;
    left: 50%;
    border: 1px solid #ffffff;
    background-color: #ffffff;
    color: #06af62;
    transform: translateX(-50%);
    padding: 0 15px 0 16px;
}

.contact-cta__btn--line {
    margin-top: 12px;
    border: 1px solid #ffffff;
    background-image: linear-gradient(142deg, #06ac64 0%, #06c755 100%);
}

.contact-cta__btn--line:hover {
    border-color: #06af62;
    background-image: linear-gradient(142deg, #e8f8f0 0%, #f2fff6 100%);
    color: #027c3e;
    opacity: 1;
}

.contact-cta__btn--line:hover .contact-cta__badge--easy {
    border-color: #06af62;
    background-color: #ffffff;
    color: #06af62;
    opacity: 1;
}

.contact-cta__btn--line:hover .contact-cta__icon--line {
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(32%) sepia(95%) saturate(750%) hue-rotate(118deg) brightness(0.95) contrast(1);
    opacity: 1;
}

.contact-cta__btn--tel {
    border: 1px solid transparent;
    background-color: #7aa18b;
    color: #ffffff;
}

.contact-cta__btn--mail {
    border: 1px solid #ffffff;
    background: linear-gradient(102deg, #23776D 16.86%, #43BD92 121.14%);
}

.contact-cta__btn--mail:hover {
    border-color: #23776d;
    background: linear-gradient(102deg, #e0f5f2 0%, #ecfaf7 100%);
    color: #0d4a42;
    opacity: 1;
}

.contact-cta__btn--mail:hover .contact-cta__icon--mail {
    opacity: 1;
    filter: brightness(0) saturate(100%) invert(23%) sepia(28%) saturate(900%) hue-rotate(125deg) brightness(0.88) contrast(1.05);
    opacity: 1;
}

.contact-cta__btn-row {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 0 20px 0 76px;
    position: relative;
}

.contact-cta__btn-row.contact__line-row{
    padding: 0 0 0 92px;
}

.contact-cta__btn-row.contact__mail-row{
    padding: 0 0 0 86px;
}

.contact-cta__btn-row--tel {
    padding: 0 5px 0 55px;
}

.contact-cta__btn-label {
    flex: 1 1 auto;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

.contact-cta__btn-row--tel .contact-cta__tel-num {
    flex: none;
}

.contact-cta__tel-num {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}

.contact-cta__chevron {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 30px;
    color: inherit;
}

.contact-cta__chevron svg {
    display: block;
    color: inherit;
    opacity: 1;
}

.contact-cta__chevron svg path {
    transition: stroke 0.2s ease, opacity 0.2s ease;
}

.contact-cta__icon {
    display: block;
    flex-shrink: 0;
    margin-right: 14px;
    opacity: 1;
    transition: filter 0.2s ease, opacity 0.2s ease;
}

.contact-cta__icon--line {
    width: 38px;
    height: auto;
}

.contact-cta__icon--mail {
    width: 32px;
    height: auto;
}

/* REASON（org6） */
.reason {
    padding: 60px 0;
    background-color: #f6f6f6;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.reason__inner {
    width: 1140px;
    margin: 0 auto;
    box-sizing: border-box;
}

.reason__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
}

.reason__sub {
    margin: 0;
    color: #074322;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.reason__title {
    margin: 0;
    color: #263238;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.reason__list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.reason__row {
    position: relative;
    display: flex;
    justify-content: flex-end;
    width: 1140px;
    min-height: 374px;
    box-sizing: border-box;
}

.reason__row--reverse {
    justify-content: flex-start;
}

.reason__media {
    position: absolute;
    top: 0;
    left: -175px;
    width: 630px;
    height: 374px;
    overflow: hidden;
}

.reason__row--reverse .reason__media {
    right: -175px;
    left: auto;
}

.reason__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reason__index {
    position: absolute;
    z-index: 2;
    top: 246px;
    left: 0;
    overflow: hidden;
    color: #ffffff;
    font-size: 200px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
}

.reason__index--02 {
    left: 949px;
    width: 191px;
    text-align: right;
}

.reason__index--03 {
    width: 197px;
}

.reason__card {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 25px;
    box-sizing: border-box;
    width: 675px;
    margin-top: 40px;
    margin-left: auto;
    padding: 60px 70px;
    background-color: #ebf5eb;
}

.reason__row--reverse .reason__card {
    margin-right: auto;
    margin-left: 0;
}

.reason__card--tall {
    min-height: 394px;
}

.reason__card-title {
    margin: 0;
    color: #074322;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.6;
}

.reason__card-body {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.reason__text {
    margin: 0;
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.72;
}

.reason__card-body .reason__text + .reason__text {
    margin-top: 10px;
}

/* STAFF（org7） */
.staff {
    padding: 60px 0;
    background-color: #074322;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.staff__inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    gap: 230px;
}

.staff__head {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    justify-content: center;
    gap: 60px;
}

.staff__header {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.staff__sub {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

.staff__title {
    margin: 0;
    color: #ffffff;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

.staff__more {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    padding: 12px 14px 11px 12px;
    border: 1px solid #074322;
    border-radius: 9999px;
    background-image: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-decoration: none;
    gap: 35px;
    position: relative;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, background-image 0.2s ease;
}

.staff__more:hover {
    border-color: #074322;
    background-image: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #ffffff;
    opacity: 1;
    border-color: #fff;
}

.staff__more .staff__more-icon path {
    transition: stroke 0.2s ease;
}

.staff__more:hover .staff__more-icon path {
    stroke: #ffffff;
}

.staff__more-label {
    flex: 1 1 auto;
    text-align: center;
}

.staff__more-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 20px;
}

.staff__slider-wrap {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 712px;
}

.staff-swiper {
    width: 100%;
    overflow: hidden;
}

.staff-swiper .swiper-slide {
    width: 340px;
    height: auto;
    box-sizing: border-box;
}

.staff__list.swiper-wrapper {
    align-items: stretch;
}

.staff-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 340px;
    gap: 10px;
}

.staff-card a:hover{
    opacity: 1;
}

.staff-card__thumb {
    position: relative;
    width: 341px;
    height: 227px;
    overflow: hidden;
    border-radius: 6px;
}

.staff-card__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    object-fit: contain;
    transition: all .3s;
    background-color: #f5f5f5;
}

.staff-card a:hover .staff-card__thumb img{
    transform: scale(1.08);
    opacity: 1;
}

.staff-card__sample {
    position: absolute;
    top: 135px;
    left: 50%;
    z-index: 1;
    width: 68px;
    margin: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.21;
    text-align: center;
    transform: translateX(-50%);
}

.staff-card__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    align-self: stretch;
    width: 100%;
    margin-top: 11px;
}

.staff-card__name {
    margin: 0;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    text-align: center;
}

.staff-card__comment {
    margin: 0;
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    word-break: break-all;
}

/* BLOG タブ（org9） */
.blog-tab {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 60px 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.blog-tab__intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin-bottom: 33px;
}

.blog-tab__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
}

.blog-tab__sub {
    margin: 0;
    color: #074322;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.blog-tab__title {
    margin: 0;
    color: #263238;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.blog-tab__lead {
    width: 1140px;
    margin: 0;
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
    text-align: center;
}

.blog-tab__tablist-wrap {
    width: 1140px;
    margin: 0 auto;
    box-sizing: border-box;
}

.blog-tab__tablist {
    display: flex;
    flex-direction: row;
    justify-content: center;
    box-sizing: border-box;
    border-bottom: 1px solid #e3e3e3;
    margin-bottom: 27px;
}

.blog-tab__tab {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    margin: 0;
    padding: 0;
    border: none;
    border-bottom: 1px solid transparent;
    margin-bottom: -1px;
    background: transparent;
    color: #aaaaaa;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    cursor: pointer;
}

.blog-tab__tab.is-active {
    border-bottom-color: #074322;
    color: #074322;
}

.blog-tab__tab:focus {
    outline: 2px solid #074322;
    outline-offset: 2px;
}

.blog-tab__tab:focus:not(:focus-visible) {
    outline: none;
}

.blog-tab__panels {
    width: 100%;
}

.blog-tab__panel {
    display: none;
}

.blog-tab__panel.is-active {
    display: block;
}

.blog-tab-swiper {
    width: 1140px;
    margin: 0 auto 25px;
    overflow: hidden;
    box-sizing: border-box;
}

.blog-tab__cards.swiper-wrapper {
    align-items: stretch;
}

.blog-tab-swiper .swiper-slide {
    width: 360px;
    height: auto;
    box-sizing: border-box;
}

.blog-card {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    gap: 12px;
    width: 360px;
}

.blog-card a:hover{
    opacity: 1;
}

.blog-card__media {
    display: block;
    text-decoration: none;
}

.blog-card__thumb {
    position: relative;
    width: 360px;
    height: 240px;
    overflow: hidden;
    border-radius: 6px;
    background-color: #f5f5f5;
}

.blog-card__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: all .3s;
}

.blog-card a:hover .blog-card__thumb img{
    transform: scale(1.08);
    opacity: 1;
}

.blog-card__sample {
    position: absolute;
    top: 122px;
    left: 50%;
    z-index: 1;
    width: 72px;
    margin: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.21;
    text-align: center;
    transform: translateX(-50%);
}

.blog-card__body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    width: 100%;
    margin-top: 13px;
}

.blog-card__title {
    margin: 0;
    color: #074322;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
    text-align: left;
    text-decoration: none;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.blog-card__excerpt {
    margin: 0;
    color: #263238;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.blog-card__date {
    display: block;
    margin: 0;
    color: #074322;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    text-align: right;
}

.blog-tab__pager {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 25px;
}

.blog-tab__pager-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}

.blog-tab__pager-fraction {
    color: #263238;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
    text-align: center;
}

.blog-tab__more {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    padding: 12px 20px 11px 57px;
    border: 1px solid transparent;
    border-radius: 9999px;
    background-image: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-decoration: none;
    gap: 35px;
    margin-top: 30px;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, background-image 0.2s ease;
}

.blog-tab__more:hover {
    border-color: #074322;
    background-image: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    opacity: 1;
}

.blog-tab__more .blog-tab__more-icon path {
    transition: stroke 0.2s ease;
}

.blog-tab__more:hover .blog-tab__more-icon path {
    stroke: #074322;
}

.blog-tab__more-label {
    flex: 1 1 auto;
    text-align: center;
}

.blog-tab__more-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
}

/* NEWS（org9） */
.news-sec {
    padding: 60px 0;
    background-color: #074322;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

.news__inner{
    width: 1140px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.news-sec__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
}

.news-sec__sub {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.news-sec__title {
    margin: 0;
    color: #ffffff;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: center;
}

.news-sec__content {
    box-sizing: border-box;
    width: 1103px;
    margin-right: auto;
}

.news-sec__list {
    display: flex;
    flex-direction: column;
    gap: 1px;
    margin: 0;
    padding: 0;
    list-style: none;
    max-height: 340px;
}

/* シンプルバー */

.simplebar-track.simplebar-vertical {
    right: -36px;
    width: 6px;
    top: 0;
    background: #B9B9B9;
    border-radius: 12px;
}
.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: #fff;
    opacity: 1;
    border-radius: 12px;
}

.news-sec__row {
    margin: 0;
    display: flex;
    flex-direction: row;
    gap: 20px;
    box-sizing: border-box;
    padding: 30px 40px;
    background-color: #ffffff;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid #074322;
}

.news-sec__date {
    flex-shrink: 0;
    color: #074322;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
}

.news-sec__text {
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: stretch;
    min-width: 0;
}

.news-sec__item-title {
    margin: 0;
    color: #263238;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    text-align: left;
}

.news-sec__excerpt {
    margin: 0;
    color: #263238;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-align: left;
}

.news-sec__more {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 200px;
    height: 50px;
    padding: 14px 17px 11px 58px;
    border: 1px solid #074322;
    border-radius: 9999px;
    background-image: linear-gradient(90deg, #d8f5e0 0%, #fafede 100%);
    color: #074322;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
    text-decoration: none;
    gap: 35px;
    transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, background-image 0.2s ease;
}

.news-sec__more:hover {
    background-image: linear-gradient(90deg, #074322 0%, #277d3a 100%);
    color: #ffffff;
    opacity: 1;
    border-color: #fff;
}

.news-sec__more .news-sec__more-icon path {
    transition: stroke 0.2s ease;
}

.news-sec__more:hover .news-sec__more-icon path {
    stroke: #ffffff;
}

.news-sec__more-label {
    flex: 1 1 auto;
    text-align: center;
}

.news-sec__more-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
}

/* フリーワード検索 */

.top-rent__form {
    width: 100%;
}

.top-rent__field {
    width: 100%;
}

.top-rent__field-row {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    min-height: 48px;
    padding: 0 10px 0 20px;
    border: 1px solid #9f9f9f;
    border-radius: 5px;
    background-color: #fff;
}

.top-rent__input {
    flex: 1;
    min-width: 0;
    padding: 0;
    border: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: #231f20;
    background: transparent;
}

.top-rent__input::placeholder {
    color: #9f9f9f;
}

.top-rent__input:focus {
    outline: none;
}

/* サジェスト選択時の青背景を input だけでなく行全体に表示 */
.top-rent__input:-webkit-autofill,
.top-rent__input:-webkit-autofill:hover,
.top-rent__input:-webkit-autofill:focus,
.top-rent__input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px transparent inset;
    box-shadow: 0 0 0 1000px transparent inset;
    -webkit-text-fill-color: #231f20;
    caret-color: #231f20;
    transition: background-color 99999s ease-out;
}

.top-rent__field-row:has(.top-rent__input:-webkit-autofill),
.top-rent__field-row:has(.top-rent__input:autofill) {
    background-color: #e8f0fe;
}

.top-rent__submit {
    display: flex;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    margin-left: 8px;
    padding: 0;
    border: 0;
    border-radius: 9999px;
    cursor: pointer;
    transition: box-shadow 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
}

.top-rent__submit-icon {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-rent__visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
