@charset "UTF-8";

html{
    scroll-behavior: smooth;
}

.l-main *{
    font-family: "Zen Maru Gothic", sans-serif;
}

.l-main{
    width: auto;
    padding: 0;
    background: #fff;
    overflow: hidden;
}

/* メインビジュアル */

.main__box{
    position: relative;
    width: 100%;
}

.org-top-mv-slider,
.org-top-mv-static{
    width: 100%;
    height: auto;
}

.org-top-mv-slider{
    overflow: hidden;
}

.org-top-mv-slider .swiper-wrapper,
.org-top-mv-slider__slide,
.org-top-mv-slider__figure,
.org-top-mv-static .org-top-mv-slider__figure{
    height: 100%;
}

.org-top-mv-slider__slide{
    width: 100%;
}

.org-top-mv-slider__link{
    display: block;
    text-decoration: none;
}

.org-top-mv-slider__figure{
    margin: 0;
}

.l-main .org-top-mv-slider__figure.main__img{
    height: 794px;
}

.org-top-mv-static .org-top-mv-slider__figure img,
.org-top-mv-slider__figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 共通 */

[class*="section__wrapper--"]{
     position: relative;
     padding-block: 120px;
     z-index: 1;
}

[class*="section__inner--"]{
    position: relative;
    width: 1140px;
    margin: 0 auto;
    z-index: 1;
}

[class*="ttl__box--"]{
    text-align: center;
    margin-bottom: 40px;
}

[class*="section__ttl--"]{
    position: relative;
    z-index: 1;
    margin: 0;
    color: #1f1f1f;
    font-size: 38px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 3.8px;
}

[class*="section__ttl-txt--"]{
    color: #1f1f1f;
    font-weight: 500;
}

[class*="section__ttl-accent--"]{
    color: #ff9822;
}

[class*="section__sub-ttl--"]{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0;
    color: #ffffff;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 0.84px;
}

.section__ttl--contact{
    white-space: nowrap;
}

/* スライダー共通 */

[class*="common__bkn-list--"]{
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
}

[class*="common__bkn-item--"]{
    flex-shrink: 0;
    width: 261px;
}

[class*="__slider"]{
    width: 1140px;
    max-width: 100%;
    overflow: visible;
}

[class*="section__wrapper--"].is-bkn-slider-few [class*="__slider"]{
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
}

[class*="section__wrapper--"].is-bkn-slider-few [class*="common__bkn-list--"].swiper-wrapper{
    justify-content: center;
}

/* 物件カード共通（新着・おすすめ等） */

[class*="common__bkn-item--"]:not(.common__bkn-item--achievements):not(.common__bkn-item--customer):not(.common__bkn-item--staff):not(.common__bkn-item--blog){
    width: 400px;
}

[class*="common__bkn-card--"]{
    position: relative;
    width: 400px;
    height: 400px;
    transform: translateY(0);
    box-shadow: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

[class*="common__bkn-card--"]:hover{
    opacity: 1;
    transform: translateY(-10px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
}

[class*="common__bkn-link--"]{
    display: flex;
    flex-direction: column;
    width: 100%;
    text-decoration: none;
    color: inherit;
}

[class*="common__bkn-link--"]:hover{
    opacity: 1;
}

[class*="common__bkn-link--"]:not(.common__bkn-link--achievements):not(.common__bkn-link--customer):not(.common__bkn-link--staff):not(.common__bkn-link--blog){
    position: relative;
    box-sizing: border-box;
    justify-content: flex-end;
    height: 100%;
    padding: 30px;
    border-radius: 6px;
    overflow: hidden;
}

[class*="common__bkn-link--"]:not(.common__bkn-link--achievements):not(.common__bkn-link--customer):not(.common__bkn-link--blog)::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 190px;
    border-radius: 0 0 6px 6px;
    background: linear-gradient(180deg, rgba(1, 40, 106, 0) 0%, rgba(1, 40, 106, 0.323) 8.6049%, rgba(1, 40, 106, 0.8) 21.286%, rgb(1, 40, 106) 36.231%);
    pointer-events: none;
}

[class*="common__bkn-card--"] [class*="common__img--"]{
    position: absolute;
    top: 0;
    left: 0;
    width: 400px;
    height: 320px;
    margin: 0;
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

[class*="common__bkn-card--"] [class*="common__img--"] img,
[class*="common__img--"] img{
    width: 100%;
    height: 100%;
    display: block;
}

[class*="common__img--"] img{
    object-fit: cover;
}

[class*="common__bkn-card--"] [class*="common__img--"] img{
    object-fit: contain;
    background-color: #f5f5f5;
}

[class*="common__bkn-link--"]:not(.common__bkn-link--achievements):not(.common__bkn-link--customer) [class*="common__label--"]{
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 20px;
    margin: 0;
    padding: 0 5px;
    border-radius: 2px;
    background-color: #cd1212;
    color: #ffffff;
    font-family: "Zen Old Mincho", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
}

[class*="common__favorite--"]{
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

[class*="common__bkn-link--"]:not(.common__bkn-link--achievements):not(.common__bkn-link--customer):not(.common__bkn-link--blog) [class*="common__txt-box--"]{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 3px;
    width: 100%;
}

[class*="common__bkn-link--"]:not(.common__bkn-link--achievements):not(.common__bkn-link--customer):not(.common__bkn-link--blog) [class*="common__ttl--"]{
    width: 340px;
    max-width: 100%;
    margin: 0;
    overflow: hidden;
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[class*="common__detail-box--"]{
    display: flex;
    flex-direction: column;
    gap: 9px;
    width: 100%;
}

[class*="common__inner-flex--"]{
    display: flex;
    gap: 15px;
    align-items: flex-end;
    width: 100%;
}

[class*="common__txt--"]{
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
}

[class*="common__txt--"] .price{
    color: #FFF;
    font-size: 30px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 1.5px;
    margin-right: 2px;
}

[class*="common__bkn-btn--"] a{
    position: relative;
    box-sizing: border-box;
    width: 252px;
    height: 60px;
    background-color: #fff;
    border: 1px solid #333;
    display: flex;
    align-items: center;
    padding: 0 0 0 60px;
    color: #333;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
    overflow: hidden;
    isolation: isolate;
    transition: background-color 0s linear 0.45s;
}

[class*="common__bkn-btn--"] a::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    background-color: #333333;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.45s ease;
    backface-visibility: hidden;
}

[class*="common__bkn-btn--"] a:hover{
    opacity: 1;
    background-color: #ffffff;
    transition: background-color 0s;
}

[class*="common__bkn-btn--"] a:hover::before{
    transform: scaleX(1);
    transform-origin: left center;
}

[class*="common__bkn-btn--"] a span{
    position: relative;
    z-index: 1;
    transition: color 0.25s ease;
}

[class*="common__bkn-btn--"] a:hover span{
    color: #ffffff;
    transition: color 0.25s ease 0.2s;
    
}

/* ボタンホバー共通（左→右の背景流れ＋色反転） */

[class*="contact__btn-item--"],
.attention__btn,
.support__btn,
[class*="common__more-btn--"]{
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-sizing: border-box;
    border: 1px solid transparent;
    transition: color 0.25s ease, border-color 0.25s ease;
}

[class*="contact__btn-item--"]:hover,
.attention__btn:hover,
.support__btn:hover,
[class*="common__more-btn--"]:hover{
    opacity: 1;
    border-color: currentColor;
    transition: color 0.25s ease 0.2s, border-color 0.25s ease 0.2s;
}

[class*="contact__btn-item--"]::before,
.attention__btn::before,
.support__btn::before,
[class*="common__more-btn--"]::before{
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    z-index: 0;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    border-radius: inherit;
    background-color: var(--btn-hover-bg);
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform 0.45s ease;
    backface-visibility: hidden;
}

[class*="contact__btn-item--"]:hover::before,
.attention__btn:hover::before,
.support__btn:hover::before,
[class*="common__more-btn--"]:hover::before{
    transform: scaleX(1);
    transform-origin: left center;
}

[class*="contact__btn-label--"],
.attention__btn-label,
.support__btn-label,
[class*="common__more-label--"]{
    position: relative;
    z-index: 1;
    transition: color 0.25s ease;
}

[class*="contact__btn-item--"]:hover [class*="contact__btn-label--"],
.attention__btn:hover .attention__btn-label,
.support__btn:hover .support__btn-label,
[class*="common__more-btn--"]:hover [class*="common__more-label--"]{
    transition: color 0.25s ease 0.2s;
}

[class*="contact__btn-arrow--"],
.attention__btn-arrow,
.support__btn-arrow,
[class*="common__more-icon--"]{
    z-index: 1;
}

[class*="common__more-btn--"]{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 190px;
    height: 40px;
    border-radius: 9999px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
    white-space: nowrap;
}

[class*="common__more-label--"]{
    display: block;
    transition: color 0.25s ease;
}

[class*="common__more-icon--"]{
    position: absolute;
    top: 50%;
    right: 11px;
    display: block;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
}

.common__more-btn--achievements{
    --btn-hover-bg: #e88413;
    background-color: #ffefcb;
    color: #e88413;
}

.common__more-btn--achievements:hover{
    color: #ffffff;
}

.common__more-btn--customer,
.common__more-btn--staff,
.common__more-btn--news,
.common__more-btn--blog{
    --btn-hover-bg: #004680;
    background-color: #deefff;
    color: #004680;
}

.common__more-btn--customer:hover,
.common__more-btn--staff:hover,
.common__more-btn--news:hover,
.common__more-btn--blog:hover{
    color: #ffffff;
}

/* org1〜3 共通パーツ */

[class*="ttl__box--"]:not(.ttl__box--contact):not(.ttl__box--worries):not(.ttl__box--attention){
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
}

[class*="__ttl-deco"]{
    position: absolute;
    top: 50%;
    z-index: 0;
    display: block;
    width: 61px;
    height: 62px;
    pointer-events: none;
}

[class*="__ttl-deco"]:not(.contact__ttl-deco):not(.worries__ttl-deco):not(.support__ttl-deco):not(.consult__ttl-deco):not(.plan__ttl-deco):not(.flow__ttl-deco):not(.message__ttl-deco):not(.staff__ttl-deco):not(.news__ttl-deco):not(.blog__ttl-deco):not(.strengths__ttl-deco){
    left: 47%;
    transform: translate(calc(-50% - 118px), -50%);
}

[class*="__contents"]{
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: flex-end;
    width: 1140px;
    max-width: 100%;
}

.customer__contents{
    position: relative;
    gap: 0;
}

[class*="common__bkn-link--"] > [class*="common__img--"]{
    position: relative;
    z-index: 0;
    width: 261px;
    height: 196px;
    overflow: hidden;
}

/* org1 売却買取実績（Figma node 15115:1872） */

.section__wrapper--achievements{
    padding-block: 106px 103px;
}

.section__inner--achievements{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 43px;
    justify-content: center;
}

.section__inner--achievements::before{
    position: absolute;
    content: "";
    width: 1630px;
    height: 626px;
    background-color: #fffee6;
    top: -103px;
    left: -389px;
    border-radius: 0 20px 20px 0;
    pointer-events: none;
}

.common__bkn-link--achievements{
    align-items: center;
    background-color: transparent;
}

.common__bkn-link--achievements:hover{
    opacity: 1;
    background-color: transparent;
}

.common__bkn-link--achievements .common__img--achievements,
.common__bkn-link--achievements .common__txt-box--achievements{
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.common__bkn-link--achievements:hover .common__img--achievements,
.common__bkn-link--achievements:hover .common__txt-box--achievements{
    transform: translateY(-10px);
}

.common__bkn-link--achievements:hover .common__img--achievements{
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

.common__img--achievements{
    margin: 0 0 -20px;
    border-radius: 20px;
}

.common__txt-box--achievements{
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 221px;
    padding: 12px 15px;
    border-radius: 10px;
    background-color: #ffffff;
}

.common__ttl--achievements{
    width: 100%;
    margin: 0;
    color: #004680;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

/* org2 お客様の声（Figma node 15013:200） */

.section__wrapper--customer{
    padding-block: 100px 100px;
    overflow: hidden;
    background-color: #ffffff;
}

.section__wrapper--customer::before{
    position: absolute;
    content: "";
    background: url(/images/top/customer_bg.webp) no-repeat center / cover;
    width: 100%;
    height: 388px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.section__inner--customer{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 46px;
}

.common__bkn-item--customer{
    height: auto;
}

.common__bkn-item--customer:nth-child(odd){
    padding-top: 30px;
}

.common__bkn-link--customer{
    align-items: flex-start;
    background-color: transparent;
}

.common__bkn-link--customer:hover{
    opacity: 1;
    background-color: transparent;
}

.common__bkn-link--customer .common__img--customer,
.common__bkn-link--customer .common__txt-box--customer{
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.common__bkn-link--customer:hover .common__img--customer,
.common__bkn-link--customer:hover .common__txt-box--customer{
    transform: translateY(-10px);
}

.common__bkn-link--customer:hover .common__txt-box--customer{
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

.common__img--customer{
    margin: 0;
    border-radius: 20px 20px 0 0;
}

.common__img--customer img{
    object-position: center bottom;
}

.common__txt-box--customer{
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    width: 100%;
    padding: 23px 14px 13px;
    border-radius: 0 0 10px 10px;
    background-color: #ffffff;
}

.common__name--customer{
    position: absolute;
    width: 174px;
    top: -15px;
    left: 0;
    box-sizing: border-box;
    height: 30px;
    padding: 0 15px;
    border-radius: 0 5px 5px 0;
    background-color: #004680;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 30px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.common__comment--customer{
    width: 100%;
    margin: 0;
    overflow: hidden;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* org3 お問い合わせ（Figma node 15156:1649） */

.section__wrapper--contact{
    padding-block: 80px;
    overflow: hidden;
    background: url(/images/top/contact_bg.webp) no-repeat center / cover;
}

.section__inner--contact{
    box-sizing: border-box;
    width: 1300px;
    max-width: calc(100% - 40px);
    height: 352px;
    margin: 0 auto;
    border-radius: 20px;
    background-color: #ffffff;
}

.ttl__box--contact{
    position: absolute;
    top: 83px;
    left: 111px;
    display: flex;
    align-items: center;
    margin-bottom: 0;
    text-align: left;
}

.contact__ttl-deco{
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 0;
    display: block;
    width: 61px;
    height: 62px;
    transform: translate(calc(-100% + 30px), -50%);
    pointer-events: none;
}

.contact__promo{
    position: absolute;
    top: 46px;
    left: 567px;
    width: 552px;
    height: 196px;
}

.contact__promo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.contact__speech{
    position: relative;
    width: 432px;
    padding-top: 26px;
}

.contact__speech-line{
    position: absolute;
    top: 27px;
    left: 0;
    display: block;
    width: 432px;
    height: 63px;
    pointer-events: none;
}

.contact__speech-txt{
    position: relative;
    z-index: 1;
    margin: 0;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

.contact__speech-accent{
    color: #ff9822;
    font-size: 30px;
    font-weight: 700;
}

.contact__appraisal{
    position: relative;
    flex-shrink: 0;
    width: 154px;
}

.contact__appraisal-img{
    display: block;
    width: 100%;
    height: auto;
}

.contact__action-row{
    position: absolute;
    top: 179px;
    left: 100px;
    display: flex;
    gap: 40px;
    align-items: center;
    width: 1140px;
    max-width: calc(100% - 160px);
}

.contact__phone{
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    flex-shrink: 0;
}

.contact__phone-num-wrap{
    display: flex;
    gap: 4px;
    align-items: center;
}

.contact__phone-icon{
    display: block;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    fill: none;
}

.contact__phone-num{
    margin: 0;
    color: #383838;
    font-size: 42px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.contact__phone-num:hover{
    opacity: 0.85;
}

.contact__phone-info{
    color: #383838;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
}

.contact__phone-time,
.contact__phone-holiday{
    margin: 0;
}

.contact__divider{
    align-self: stretch;
    flex-shrink: 0;
    width: 1px;
    background-color: #c4c4c4;
}

.contact__btn-group{
    display: flex;
    gap: 12px;
    align-items: center;
    flex: 1;
    min-width: 0;
}

[class*="contact__btn-item--"]{
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 360px;
    max-width: 100%;
    height: 80px;
    border-radius: 9999px;
    text-decoration: none;
    color: #ffffff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    white-space: nowrap;
}

.contact__btn-item--mail{
    --btn-hover-bg: #ffffff;
    background-color: #004680;
}

.contact__btn-item--mail:hover{
    color: #004680;
}

.contact__btn-item--reservation{
    --btn-hover-bg: #ffffff;
    background-color: #0098d9;
}

.contact__btn-item--reservation:hover{
    color: #0098d9;
}

[class*="contact__btn-arrow--"]{
    position: absolute;
    top: 50%;
    right: 23px;
    display: block;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
    fill: none;
}

/* org4 こんなお悩み（Figma node 15017:245） */

.section__wrapper--worries{
    padding-block: 0 99px;
    background-color: #ffffff;
}

.section__inner--worries{
    display: flex;
    gap: 40px;
    align-items: flex-start;
    justify-content: center;
    width: auto;
    max-width: none;
    padding-top: 100px;
}

.ttl__box--worries{
    position: relative;
    flex-shrink: 0;
    margin-bottom: 0;
    text-align: left;
}

.worries__ttl-deco{
    top: -20px;
    left: 50px;
    transform: none;
}

.section__ttl--worries{
    display: flex;
    flex-direction: column;
    gap: 7px;
    align-items: flex-start;
    justify-content: flex-end;
    writing-mode: vertical-lr;
    font-size: 40px;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 2px;
    text-align: left;
}

.section__ttl-lead--worries{
    font-weight: 500;
    letter-spacing: 4.6px;
}

.section__ttl-sub--worries{
    padding-top: 48px;
    letter-spacing: 3.5px;
}

.worries__contents{
    position: relative;
    flex-shrink: 0;
    width: 1004px;
    max-width: 100%;
    height: 472px;
}

.worries__list{
    margin: 0;
    padding: 0;
    list-style: none;
}

.worries__item{
    position: absolute;
    z-index: 2;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 320px;
    height: 170px;
    padding: 20px;
    border-radius: 9999px;
    background-color: #f0f8ff;
}

.worries__item--01{
    top: 200px;
    left: 19.5px;
}

.worries__item--02{
    top: 0;
    left: 174.5px;
}

.worries__item--03{
    top: 20px;
    left: 533.5px;
}

.worries__item--04{
    top: 220px;
    left: 685.5px;
}

.worries__txt{
    margin: 0;
    color: #1f1f1f;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
}

.worries__accent{
    color: #004680;
}

.worries__deco{
    position: absolute;
    pointer-events: none;
}

.worries__item--01 .worries__deco{
    top: 84px;
    right: -35px;
}

.worries__item--02 .worries__deco{
    bottom: -33px;
    left: 164px;
}

.worries__item--03 .worries__deco{
    bottom: -32px;
    left: 110px;
    transform: scaleX(-1);
}

.worries__item--04 .worries__deco{
    top: 84px;
    left: -35px;
    transform: scaleX(-1);
}

.worries__illust{
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 1;
    width: 256px;
    margin: 0;
    transform: translateX(-50%);
    pointer-events: none;
}

.worries__illust img{
    display: block;
    width: 100%;
    height: auto;
}

/* org5 一括査定に注意（Figma node 15018:633） */

.section__wrapper--attention{
    padding-block: 35px 50px;
    padding-inline: 0;
    background-color: #ffffff;
}

.section__inner--attention{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    /* width: auto; */
    /* max-width: none; */
    /* margin: 0; */
}

.ttl__box--attention{
    position: relative;
    z-index: 2;
    display: flex;
    gap: 8px;
    align-items: center;
    padding-left: 0;
    text-align: left;
    margin-bottom: 0;
}

.attention__icon{
    display: block;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
}

.section__ttl--attention{
    color: #e33737;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 2.28px;
    white-space: nowrap;
}

.attention__contents{
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: flex-start;
    width: 100%;
    padding: 33px 160px 80px 0;
}

.attention__contents::before{
    position: absolute;
    content: "";
    background-color: #fffee6;
    width: 762px;
    height: 582px;
    top: -25px;
    left: -79px;
    border-radius: 20px;
}

.attention__img{
    position: absolute;
    top: -88px;
    right: -391px;
    width: 928px;
    height: 562px;
    margin: 0;
    border-radius: 20px 0 0 20px;
    overflow: hidden;
}

.attention__img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center bottom;
    display: block;
}

.attention__body{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 28px;
    align-items: flex-start;
    width: 522px;
    max-width: 100%;
}

.attention__txt-wrap{
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
}

.attention__lead{
    margin: 0;
    color: #1f1f1f;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.9px;
}

.attention__lead-accent{
    color: #004680;
    font-weight: 500;
}

.attention__desc{
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.9;
}

.attention__desc p{
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.9;
}

.attention__desc p + p{
    margin-top: 0;
}

.attention__btn{
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 360px;
    max-width: 100%;
    height: 70px;
    border: 1px solid #004680;
    border-radius: 9999px;
    background-color: #ffffff;
    color: #004680;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
    white-space: nowrap;
    --btn-hover-bg: #004680;
}

.attention__btn:hover{
    color: #ffffff;
}

.attention__btn-arrow{
    position: absolute;
    top: 50%;
    right: 22px;
    display: block;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
}

/* org6 ハウスドゥうるまみどり町の強み（Figma node 15029:251） */

.section__wrapper--strengths{
    padding-block: 55px 100px;
    background-color: #fff;
}

.section__wrapper--strengths::before{
    position: absolute;
    content: "";
    background: #fff url(/images/top/strengths_bg.webp) no-repeat center / cover;
    width: 100%;
    height: 1209px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.section__inner--strengths{
    display: flex;
    flex-direction: column;
    gap: 42px;
    align-items: center;
}

.l-main .strengths__ttl-deco.strengths__ttl-deco{
    left: -5%;
    top: -7%;
}

.strengths__list{
    display: flex;
    flex-direction: column;
    gap: 41px;
    align-items: flex-start;
    width: 1140px;
    max-width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.strengths__item{
    position: relative;
    display: flex;
    gap: 50px;
    align-items: center;
    width: 100%;
}

.strengths__item--reverse{
    flex-direction: row-reverse;
}

.strengths__figure-wrap{
    position: relative;
    flex-shrink: 0;
    width: 400px;
    max-width: 100%;
    aspect-ratio: 1 / 1;
}

.strengths__figure{
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
}

.strengths__figure img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.strengths__point{
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 91px;
    background: url(/images/top/strengths_point-bg.svg) no-repeat center / contain;
    color: #ffffff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
}

.strengths__body{
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    gap: 15px;
    align-items: flex-start;
    min-width: 0;
}

.strengths__lead{
    margin: 0;
    color: #004680;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.9px;
}

.strengths__desc{
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.9;
}

.strengths__desc p{
    margin: 0;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.9;
}

.strengths__desc p + p{
    margin-top: 0;
}

/* org7 不動産売却サポートバナー（Figma node 15158:2090） */

.section__wrapper--support{
    padding-block: 0;
    background-color: #0098d9;
    background-image: url(/images/top/support_bg.webp);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: 1920px 350px;
}

.section__inner--support{
    position: relative;
    box-sizing: border-box;
    width: 1140px;
    height: 350px;
    padding-top: 53px;
}

/* ボタン非表示（coming_soon）時はテキストを縦中央に */
.section__inner--support:has(.support__btn.coming_soon){
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 0;
}

.ttl__box--support{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    margin-bottom: 0;
}

.section__ttl--support{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    text-align: center;
}

.support__ttl-deco{
    /* position: relative; */
    top: auto;
    left: -31px;
    z-index: -1;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
    fill: #1EAFED;
}

.support__ttl-lines{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section__ttl-accent--support{
    color: #fff98b;
}

.section__ttl-txt--support{
    color: #fff98b;
}

.support__sub-deco{
    position: relative;
    flex-shrink: 0;
    display: block;
    width: 18px;
    height: 25px;
    z-index: 0;
}

.support__sub-deco::before{
    position: absolute;
    content: "";
    background: url(/images/top/support_deco.svg) no-repeat center / cover;
    width: 18px;
    height: 25px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    z-index: 1;
}

.support__sub-deco--right::before{
    position: absolute;
    content: "";
    background: url(/images/top/support_deco.svg) no-repeat center / cover;
    width: 18px;
    height: 25px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    transform: scaleX(-1);
    z-index: 1;
}

.support__contents{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.support__btn{
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 360px;
    max-width: 100%;
    height: 70px;
    border: 1px solid #004680;
    border-radius: 9999px;
    background-color: #ffffff;
    color: #004680;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
    white-space: nowrap;
    --btn-hover-bg: #004680;
}

.support__btn:hover{
    color: #ffffff;
}

.support__btn-arrow{
    position: absolute;
    top: 50%;
    right: 24px;
    display: block;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
}

.support__illust{
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 0;
    width: 1030px;
    max-width: calc(100% + 200px);
    margin: 0;
    transform: translateX(-50%);
    pointer-events: none;
}

.support__illust img{
    display: block;
    width: 100%;
    height: auto;
}

/* org8 どんな物件でもお気軽にお問い合わせください（Figma node 15082:1208） */

.section__wrapper--consult{
    padding-block: 100px;
    background-color: #ffffff;
}

.section__inner--consult{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.ttl__box--consult{
    position: relative;
    margin-bottom: 0;
}

.section__ttl--consult{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    text-align: center;
}

.consult__ttl-deco{
    position: absolute;
    top: -8px;
    left: 116px;
    z-index: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
}

.consult__ttl-lines{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.consult__ttl-line{
    display: block;
}

.section__ttl-txt--consult{
    color: #1f1f1f;
}

.consult__list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    width: 1140px;
    max-width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.consult__item{
    box-sizing: border-box;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    width: 270px;
    height: 120px;
    border-radius: 20px;
    background-color: #fffee6;
}

.consult__icon-wrap{
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    border-radius: 50%;
}

.consult__icon{
    display: block;
    width: 70px;
    height: 70px;
    fill: none;
}

.consult__label{
    margin: 0;
    color: #1f1f1f;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.5;
    white-space: nowrap;
}

.consult__label-line{
    display: block;
}

/* org10 あなたにピッタリの売却方法をご提案（Figma node 15159:3398） */

.section__wrapper--plan{
    padding-block: 100px 53px;
    background-color: #ffffff;
}

.section__inner--plan{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 38px;
}

.ttl__box--plan{
    margin-bottom: 0;
}

.section__ttl--plan{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.plan__ttl-deco{
    position: relative;
    top: auto;
    left: auto;
    z-index: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
    z-index: -1;
}

.section__ttl-txt--plan{
    color: #1f1f1f;
}

.plan__list{
    display: flex;
    gap: 30px;
    justify-content: center;
    width: 1140px;
    max-width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.plan__item{
    box-sizing: border-box;
    display: flex;
    flex: 0 0 360px;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    width: 360px;
    min-height: 451px;
    padding: 30px;
    border-radius: 20px;
}

.plan__item--intermediary{
    background-color: #f4fff4;
}

.plan__item--purchase{
    background-color: #fefaeb;
}

.plan__item--leaseback{
    background-color: #fff5f4;
}

.plan__head{
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: center;
    width: 100%;
    text-align: center;
}

.plan__lead{
    margin: 0;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.78px;
}

.plan__item--intermediary .plan__lead{
    color: #4ba24b;
}

.plan__item--purchase .plan__lead{
    color: #ed8355;
}

.plan__item--leaseback .plan__lead{
    color: #f68282;
}

.plan__desc{
    margin: 0;
    min-height: 50px;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

.plan__desc-line{
    display: block;
}

.plan__figure{
    width: 300px;
    max-width: 100%;
    margin: 0;
}

.plan__figure img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.plan__divider{
    width: 100%;
    height: 0;
    border-top: 2px dashed #d9d9d9;
}

.plan__item--intermediary .plan__divider{
    border-top-color: #c8e6c8;
}

.plan__item--purchase .plan__divider{
    border-top-color: #f0dcc8;
}

.plan__item--leaseback .plan__divider{
    border-top-color: #f5d4d4;
}

.plan__points{
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
    width: 100%;
}

.plan__point{
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.plan__point-ttl{
    display: flex;
    gap: 5px;
    align-items: center;
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

.plan__point-ttl::before{
    content: "";
    flex-shrink: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
}

.plan__item--intermediary .plan__point--merit .plan__point-ttl{
    color: #4ba24b;
}

.plan__item--intermediary .plan__point--merit .plan__point-ttl::before{
    background-color: #4ba24b;
}

.plan__item--purchase .plan__point--merit .plan__point-ttl{
    color: #ed8355;
}

.plan__item--purchase .plan__point--merit .plan__point-ttl::before{
    background-color: #ed8355;
}

.plan__item--leaseback .plan__point--merit .plan__point-ttl{
    color: #f68282;
}

.plan__item--leaseback .plan__point--merit .plan__point-ttl::before{
    background-color: #f68282;
}

.plan__point--demerit .plan__point-ttl{
    color: #a7a7a7;
}

.plan__point--demerit .plan__point-ttl::before{
    background-color: #a7a7a7;
}

.plan__point-txt{
    margin: 0;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

/* org10 売却の流れ（Figma node 15081:670） */

.section__wrapper--flow{
    padding-block: 50px 100px;
    background-color: #ffffff;
}

.section__inner--flow{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 45px;
}

.ttl__box--flow{
    margin-bottom: 0;
}

.section__ttl--flow{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.flow__ttl-deco{
    position: absolute;
    top: auto;
    left: -29px;
    z-index: -1;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    transform: none;
    pointer-events: none;
    fill: #FFFEE6;
}

.section__ttl-txt--flow{
    color: #1f1f1f;
}

.flow__contents{
    display: flex;
    gap: 30px;
    align-items: flex-start;
    justify-content: center;
    width: 1140px;
    max-width: 100%;
    flex-direction: row;
}

.flow__col{
    position: relative;
    display: flex;
    flex: 0 0 360px;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
    width: 360px;
}

.flow__lead{
    width: 100%;
    margin: 0;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.78px;
    text-align: center;
}

.flow__col--intermediary .flow__lead{
    color: #4ba24b;
}

.flow__col--purchase .flow__lead{
    color: #ed8355;
}

.flow__col--leaseback .flow__lead{
    color: #f68282;
}

.flow__steps-wrap{
    position: relative;
    width: 100%;
}

.flow__steps-wrap--purchase{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 543px;
}

.flow__steps-group{
    width: 100%;
}

.flow__line{
    position: absolute;
    top: 0;
    left: 174px;
    z-index: 0;
    display: block;
    width: 12px;
    height: auto;
    pointer-events: none;
}

.flow__line--leaseback{
    top: 15px;
    height: 292px;
}

.flow__steps{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.flow__steps-wrap--purchase .flow__steps{
    gap: 14px;
}

.flow__step{
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 47px;
    padding: 10px;
    border-radius: 9999px;
    background-color: #f5f5f5;
}

.flow__num{
    position: absolute;
    top: 10px;
    left: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
}

.flow__col--intermediary .flow__num{
    background-color: #4ba24b;
}

.flow__col--purchase .flow__num{
    background-color: #ed8355;
}

.flow__col--leaseback .flow__num{
    background-color: #f68282;
}

.flow__txt{
    margin: 0;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
}

.flow__note{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 174px;
    margin-top: 12px;
    border-radius: 20px;
    background-color: #fff5f4;
}

.flow__note-txt{
    margin: 0;
    color: #1f1f1f;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
}

.flow__note-line{
    display: block;
}

/* org12 代表挨拶（Figma node 15138:1976） */

.section__wrapper--message{
    padding-block: 100px 50px;
    background-color: #ffffff;
}

.section__inner--message::before{
    position: absolute;
    content: "";
    background-color: #fffee6;
    border-radius: 20px;
    width: 1340px;
    height: 1055px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.message__contents{
    position: relative;
    display: flex;
    gap: 60px;
    align-items: flex-start;
    padding: 98px 0 100px;
    flex-direction: row;
    z-index: 1;
    width: auto;
}

.message__col--left{
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    gap: 40px;
    align-items: flex-start;
}

.message__col--right{
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    gap: 22px;
    align-items: flex-end;
    justify-content: center;
    min-width: 0;
}

.ttl__box--message{
    margin-bottom: 0;
}

.section__ttl--message{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    padding-left: 30px;
}

.message__ttl-deco{
    position: absolute;
    top: auto;
    left: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    transform: none;
    pointer-events: none;
    z-index: -1;
}

.section__ttl-txt--message{
    color: #1f1f1f;
}

.message__figure{
    width: 318px;
    max-width: 100%;
    margin: 0;
    border-radius: 20px;
    overflow: hidden;
}

.message__figure img{
    display: block;
    width: 100%;
    height: auto;
}

.message__body{
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}

.message__lead{
    margin: 0;
    color: #ff9822;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.78px;
}

.message__desc{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.message__desc p{
    margin: 0;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.9;
}

.message__signature{
    display: flex;
    gap: 20px;
    align-items: flex-end;
    color: #1f1f1f;
    line-height: 1;
    white-space: nowrap;
}

.message__company{
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    font-family: "Kiwi Maru", sans-serif;
    color: #1F1F1F;
}

.message__name{
    margin: 0;
    font-size: 26px;
    font-weight: 500;
    font-family: "Kiwi Maru", sans-serif;
    color: #1F1F1F;
}

/* org13 スタッフ紹介（Figma node 15138:1918） */

.section__wrapper--staff{
    padding-block: 45px 100px;
    overflow: hidden;
    background-color: #ffffff;
}

.section__wrapper--staff::before{
    content: "";
    position: absolute;
    left: calc(50% - 145px);
    bottom: 0;
    z-index: 0;
    width: 1630px;
    max-width: none;
    height: 354px;
    border-radius: 20px 0 0 20px;
    background-color: #f0f8ff;
    transform: translateX(-50%) scaleX(-1);
    pointer-events: none;
}

.section__inner--staff{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.staff__ttl-deco{
    position: relative;
    top: auto;
    left: auto;
    z-index: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
}

.section__ttl--staff{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.section__ttl-txt--staff{
    color: #1f1f1f;
}

.staff__contents{
    align-items: center;
}

.staff__slider.swiper{
    overflow: hidden;
    padding-top: 10px;
    padding-bottom: 24px;
    box-sizing: border-box;
}

.staff__slider .swiper-wrapper{
    height: auto;
}

.staff__slider .common__bkn-item--staff{
    height: auto;
}

.common__bkn-card--staff{
    display: flex;
    flex-direction: column;
    width: 261px;
    height: auto;
    background-color: transparent;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.common__bkn-card--staff:hover{
    opacity: 1;
    background-color: transparent;
    transform: translateY(-10px);
    filter: drop-shadow(0 6px 8px rgba(0, 0, 0, 0.1));
}

.common__bkn-card--staff .common__img--staff,
.common__bkn-card--staff .common__txt-box--staff{
    transition: none;
}

.l-main .common__img--staff{
    width: 261px;
    height: 196px;
    margin: 0;
    border-radius: 20px 20px 0 0;
    position: relative;
}

.common__img--staff img{
    object-fit: cover;
}

.common__txt-box--staff{
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    width: 100%;
    padding: 23px 14px 13px;
    border-radius: 0 0 10px 10px;
    background-color: #ffffff;
}

.common__name--staff{
    position: absolute;
    top: -15px;
    left: 0;
    display: flex;
    align-items: center;
    height: 30px;
    margin: 0;
    padding: 0 15px;
    border-radius: 0 5px 5px 0;
    background-color: #004680;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    white-space: nowrap;
}

.common__comment--staff{
    width: 100%;
    margin: 0;
    overflow: hidden;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.staff__nav-wrap{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.staff__nav{
    display: flex;
    gap: 20px;
    align-items: center;
}

.staff__nav-btn{
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.staff__nav-btn:hover{
    opacity: 0.85;
}

.staff__nav-icon{
    display: block;
    width: 32px;
    height: 32px;
}

.staff__scrollbar.swiper-scrollbar{
    position: relative;
    flex-shrink: 0;
    width: 274px;
    height: 3px;
    border-radius: 9999px;
    background-color: #d9d9d9;
}

.staff__scrollbar .swiper-scrollbar-drag{
    border-radius: 9999px;
    background-color: #004680;
}

/* org14 更新情報（Figma node 15089:4458） */

.section__wrapper--news{
    padding-block: 98px 50px;
    background-color: #ffffff;
}

.section__inner--news{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.ttl__box--news{
    margin-bottom: 0;
}

.news__ttl-deco{
    position: relative;
    top: auto;
    left: auto;
    z-index: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
}

.section__ttl--news{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.news__scroll-wrap{
    width: 100%;
    height: 385px;
}

.news__list{
    width: 100%;
    height: 100%;
    padding-right: 52px;
}

.news__list .simplebar-track.simplebar-vertical{
    right: 0;
    width: 2px;
    border-radius: 9999px;
    background-color: #d9d9d9;
}

.news__list .simplebar-scrollbar::before{
    left: 0;
    right: 0;
    border-radius: 9999px;
    background-color: #004680;
}

.news__items{
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.news__item{
    padding-bottom: 40px;
    background-image: url('/images/top/topics_slide.webp');
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: auto 1px;
}

.news__item:last-child{
    padding-bottom: 0;
    border-bottom: none;
}

.news__link{
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-decoration: none;
    color: inherit;
}

.news__link:hover{
    opacity: 0.85;
}

.news__date{
    color: #004680;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    white-space: nowrap;
}

.news__txt-box{
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
}

.news__ttl{
    margin: 0;
    overflow: hidden;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.news__desc{
    margin: 0;
    overflow: hidden;
    color: #989898;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
}

/* org15 お役立ち情報（Figma node 15138:2151） */

.section__wrapper--blog{
    padding-block: 50px 100px;
    overflow: hidden;
    background-color: #ffffff;
}

.section__inner--blog{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.section__inner--blog::before{
    content: "";
    position: absolute;
    left: calc(50% + 145px);
    bottom: -100px;
    z-index: 0;
    width: 1630px;
    max-width: none;
    height: 354px;
    border-radius: 0 20px 20px 0;
    background-color: #f0f8ff;
    transform: translateX(-50%);
    pointer-events: none;
    border-radius: 20px 0 0 20px;
    z-index: -1;
}

.ttl__box--blog{
    margin-bottom: 0;
}

.blog__ttl-deco{
    position: relative;
    top: auto;
    left: auto;
    z-index: 0;
    flex-shrink: 0;
    display: block;
    width: 61px;
    height: 62px;
    margin-right: -30px;
    transform: none;
    pointer-events: none;
}

.section__ttl--blog{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.section__ttl-txt--blog{
    color: #1f1f1f;
}

.blog__contents{
    align-items: center;
}

.blog__slider{
    overflow: hidden;
}

.blog__slider .common__bkn-list--blog{
    padding-top: 10px;
    padding-bottom: 24px;
    box-sizing: border-box;
}

.common__bkn-item--blog{
    height: auto;
}

.common__bkn-link--blog{
    position: relative;
    align-items: center;
    justify-content: flex-start;
    width: 261px;
    height: auto;
    padding: 0;
    overflow: visible;
    background-color: transparent;
}

.common__bkn-link--blog:hover{
    opacity: 1;
    background-color: transparent;
}

.common__bkn-link--blog .common__img--blog,
.common__bkn-link--blog .common__txt-box--blog{
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.common__bkn-link--blog:hover .common__img--blog,
.common__bkn-link--blog:hover .common__txt-box--blog{
    transform: translateY(-10px);
}

.common__bkn-link--blog:hover .common__img--blog{
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

.common__img--blog{
    position: relative;
    z-index: 0;
    width: 261px;
    height: 196px;
    margin: 0 0 -20px;
    border-radius: 20px;
    overflow: hidden;
}

.common__img--blog img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common__txt-box--blog{
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    width: 221px;
    padding: 10px 15px 15px;
    border-radius: 10px;
    background-color: #ffffff;
}

.common__ttl--blog{
    width: 100%;
    margin: 0;
    overflow: hidden;
    color: #004680;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.common__desc--blog{
    width: 100%;
    margin: 0;
    overflow: hidden;
    color: #1f1f1f;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.blog__nav-wrap{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.blog__nav{
    display: flex;
    gap: 20px;
    align-items: center;
}

.blog__nav-btn{
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.blog__nav-btn:hover{
    opacity: 0.85;
}

.blog__nav-icon{
    display: block;
    width: 32px;
    height: 32px;
}

.blog__scrollbar.swiper-scrollbar{
    position: relative;
    flex-shrink: 0;
    width: 274px;
    height: 3px;
    border-radius: 9999px;
    background-color: #d9d9d9;
}

.blog__scrollbar .swiper-scrollbar-drag{
    border-radius: 9999px;
    background-color: #004680;
}

/* バナー */

.ctn__bnr{
    padding-block: 30px 80px;
    background-color: #fff;
}

.ctn__bnr-list-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.ctn__bnr-list-link{
    display: block;
    width: 800px;
    margin: 0 auto;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 25px;
}

.ctn__bnr-list-link:hover{
    opacity: 1;
    transform: translateY(-10px);
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 25px;
}

.ctn__bnr-list-figure {
    max-width: 100%;
    width: 800px;
    display: block;
    margin: 0 auto;
}

.ctn__bnr-list-figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}