@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* 新規の場合使用 */
:root {
    --main-color: #21514F;
    --sub-color: #7FACAA;
}

html,
body,
button,
input,
select,
textarea,
body>* {
    font-family: "Noto Sans JP", sans-serif;
}

.f-sub {
    font-family: "Noto Serif JP", serif;
}

.f-en {
    font-family: "times-new-roman", sans-serif;
}

body {
    color: #5E5E5E !important;
    font-size: 13px !important;
    line-height: 1.84 !important;
    padding-top: 100px;
    min-width: 1440px !important;
}

.wrap {
    width: 1140px;
    margin: 0 auto;
}

.wrap.mid {
    width: 1240px;
}

a[href $='.pdf'] {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    text-decoration: underline;
    color: #fff;
    line-height: 1.5;
}

a[href $='.pdf']::before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 30px;
    height: 38px;
    mask-image: url(/wp-content/themes/swell_child/image/icon/icon_pdf.svg);
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;
    margin-right: 15px;
    background: #fff;
}

a[href $='.pdf']:hover {
    text-decoration: none;
}

/* PC固定ページ 共通設定 */

.common_page_wrap {
    padding: 75px 0 150px;
}

.not_found .text {
    text-align: center;
}

.reserve_text {
    text-align: center;
    font-size: 30px;
}

/* パンくず */
.breadcrumb {
    font-size: 12px;
    color: #3E3E3E;
    letter-spacing: .08em;
}

.breadcrumb a {
    text-decoration: none;
    color: #3E3E3E;
}

/* PC固定ページ 404ページ */
#page_404 {
    text-align: center;
}

#page_404 .num {
    font-size: 100px;
    font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#page_404 .text {
    margin-bottom: 1em;
    font-size: 16px;
}

/* ヘッダー */
.site-header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    padding: 15px 50px 0;
    background-color: #FFF;
    z-index: 100;
    min-height: 100px;
}

.site-header__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.site-header__logo a {
    display: block;
}

.site-header__logo-text {
    color: #959595;
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 0;
    letter-spacing: .12em;
}

.site-header__logo img {
    width: 311px;
    margin-top: -3px;
}

.site-header__link-box {
    display: flex;
    align-items: center;
    padding-bottom: 14px;
}

.site-header__top-menu-flex {
    display: flex;
    align-items: center;
    gap: 0 20px;
    justify-content: flex-end;
    margin-bottom: 14px;
}

.site-header__top-menu-item a {
    display: flex;
    align-items: center;
    gap: 0 8px;
    transition: .3s;
}

.icon-star {
    width: 30px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: #E6F0F0;
    display: grid;
    place-content: center;
}

.icon-star svg {
    width: 19px;
    height: auto;
}

.icon-time {
    width: 30px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: #E6F0F0;
    display: grid;
    place-content: center;
}

.icon-time svg {
    width: 18px;
    height: auto;
}

.site-header__top-menu-item-text {
    font-size: 12px;
    color: var(--main-color);
    letter-spacing: .12em;
    line-height: 1.5;
}

.site-header__menu {
    padding-right: 30px;
}

.site-header__bottom-menu-flex {
    display: flex;
    gap: 0 56px;
    align-items: center;
}

.site-header__bottom-menu-item a {
    font-size: 14px;
    font-weight: 500;
    color: #2B2B2B;
    letter-spacing: .12em;
    transition: .3s;
}

.site-header__bottom-menu-item+.site-header__bottom-menu-item::before {
    content: "";
    width: 1px;
    height: 14px;
    background-color: #B1AFAF;
    position: absolute;
    top: 50%;
    left: -28px;
    translate: 0 -50%;
}

.site-header__bottom-menu-item {
    position: relative;
}

.site-header__cta-box {
    padding-left: 30px;
    border-left: solid 1px #B1AFAF;
    flex-shrink: 0;
}

.site-header__cta-text {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .12em;
    line-height: 1.42;
    margin-bottom: 3px;
    text-align: center;
}

.hd-contact-btn a {
    display: flex;
    align-items: center;
    background-color: #074541;
    min-block-size: 50px;
    width: 250px;
    padding: 10px 15px 10px 13.5px;
    transition: .3s;
    border: solid 1px #074541;
}

.icon-hd-request {
    width: 23px;
    flex-shrink: 0;
    line-height: 1;
    margin-right: 15px;
}

.icon-hd-request svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hd-contact-btn__text {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .11em;
    color: #FFF;
    display: flex;
    align-items: center;
    gap: 0 16px;
    width: 100%;
    justify-content: space-between;
}

.hd-contact-btn__text::after {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 1.5px #FFF;
    border-width: 1.5px 1.5px 0 0;
    rotate: 45deg;
    transition: .3s;
}

.site-header__logo {
    flex-shrink: 0;
}

.icon-hd-request svg path {
    transition: .3s;
}

/* TOP メインビジュアル */
.top-mv-sec {
    padding-block: 144px 76px;
    background-image: url(/wp-content/themes/swell_child/image/top_mv.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.top-mv__ttl {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: .16em;
    line-height: 1.45;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 0 16px;
    padding-left: 2px;
}

.top-mv-sec::before {
    content: "";
    inset: 0;
    position: absolute;
    background: linear-gradient(to right, rgba(0, 0, 0, .45) 27%, transparent 61%, transparent 100%);
    mix-blend-mode: multiply;
    z-index: -1;
}

.top-mv__cont {
    color: #FFF;
}

.top-mv__ttl::before {
    content: "";
    width: 40px;
    height: 1px;
    background-color: #FFF;
    flex-shrink: 0;
}

.top-mv__main {
    font-size: 42px;
    letter-spacing: .22em;
    font-weight: 500;
    margin-bottom: 30px;
    line-height: 1.47;
}

.top-mv__main .small {
    font-size: 34px;
}

.top-mv__scroll-en {
    letter-spacing: .042em;
    line-height: 1;
    writing-mode: tb-rl;
    margin-left: -0.4em;
}

.top-mv__scroll-box {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.top-mv__scroll-arrow {
    width: 24px;
    flex-shrink: 0;
}

.top-mv__scroll-arrow img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.mv-bg-font {
    position: absolute;
    bottom: -22px;
    left: -11px;
}

.mv-bg-font__en {
    font-size: 160px;
    letter-spacing: .1em;
    color: #FFF;
    opacity: .1;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

/* TOP 物件を探す */
.top-search-sec {
    padding-top: 150px;
}

.common-sec-ttl {
    text-align: center;
    margin-bottom: 49px;
}

.common-sec-ttl__en {
    font-size: 20px;
    letter-spacing: .04em;
    font-weight: 700;
    line-height: 1.1;
    color: #87AAA9;
    margin-bottom: 3px;
}

.common-sec-ttl__jp {
    font-size: 42px;
    font-weight: 600;
    letter-spacing: .14em;
    line-height: 1.43;
    color: #2B2B2B;
    margin-bottom: 12px;
}

.common-sec-ttl__catch {
    font-size: 15px;
    letter-spacing: .12em;
}

.top-search__btn ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 20px;
}

.top-search__btn li a {
    display: flex;
    background-image: url(/wp-content/themes/swell_child/image/top_search_item_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.top-search__btn-img {
    width: 120px;
    flex-shrink: 0;
    overflow: hidden;
}

.top-search__btn-inner {
    width: 100%;
    position: relative;
    z-index: 0;
    padding: 40px 22px;
}

.top-search-box {
    width: 100%;
    padding-right: 45px;
}

.top-search__cont {
    display: flex;
    justify-content: space-between;
}

.common-btn-arrow-box {
    width: 30px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: var(--main-color);
    display: grid;
    place-content: center;
    position: absolute;
    bottom: 0;
    right: 0;
    border: solid 1px var(--main-color);
    transition: .3s;
}

.top-search__request-btn {
    flex-shrink: 0;
    padding-left: 45px;
    border-left: dashed 1px #707070;
}

.top-search__btn-img img {
    width: 100%;
    aspect-ratio: 6/7;
    min-width: 0;
    object-fit: cover;
    transition: .3s;
}

.common-btn-arrow-box::before {
    content: "";
    width: 10px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 2px #FFF;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    translate: -2px 0;
    transition: .3s;
}

.top-search__btn-ttl-en {
    font-size: 18px;
    font-weight: 700;
    color: #BCD5D3;
    letter-spacing: .02em;
    line-height: 1.1;
    margin-bottom: 3px;
}

.top-search__btn-ttl-jp {
    font-weight: 600;
    font-size: 18px;
    letter-spacing: .12em;
    color: #2B2B2B;
    line-height: 1.44;
}

.top-search__btn-text {
    width: fit-content;
    padding-bottom: 10px;
    border-bottom: dashed 1px #AAA;
}

.top-search__request-btn a {
    width: 330px;
    display: block;
    text-align: center;
    background-color: var(--main-color);
    border: solid 1px var(--main-color);
    padding: 35px 0 37px;
    position: relative;
    transition: .3s;
}

.top-search__btn-inner::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #F7F7F7;
    opacity: .6;
    z-index: -1;
}

.top-search__request-icon {
    width: 110px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: #FFF;
    border-radius: 50%;
    margin: 0 auto 16px;
    display: grid;
    place-content: center;
    transition: .3s;
}

.top-search__request-icon svg {
    width: 66.42px;
    height: auto;
}

.top-search__request-ttl-jp {
    font-size: 20px;
    color: #FFF;
    font-weight: 600;
    letter-spacing: .13em;
    line-height: 1.45;
    transition: .3s;
}

.top-search__request-ttl-en {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.1;
    color: #568682;
    margin-bottom: 4px;
}

.top-search__request-top-treat::before,
.top-search__request-top-treat::after {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    min-width: 0;
    position: absolute;
    border: solid 1px #6C9391;
    border-width: 1px 1px 0 0;
    top: 0;
}

.top-search__request-top-treat {
    position: absolute;
    top: 15px;
    left: 15px;
    width: 300px;
}

.top-search__request-top-treat::before {
    left: 0;
    rotate: -90deg;
}

.top-search__request-top-treat::after {
    right: 0;
}

.top-search__request-bottom-treat::before,
.top-search__request-bottom-treat::after {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    min-width: 0;
    position: absolute;
    border: solid 1px #6C9391;
    border-width: 0 0 1px 1px;
    top: 0;
}

.top-search__request-bottom-treat {
    position: absolute;
    bottom: 35px;
    left: 15px;
    width: 300px;
}

.top-search__request-bottom-treat::before {
    left: 0;
}

.top-search__request-bottom-treat::after {
    right: 0;
    rotate: -90deg;
}

.top-search__btn {
    margin-bottom: 27px;
}

.top-search__free-ttl {
    display: flex;
    align-items: center;
    padding-left: 12px;
    border-left: solid 2px var(--sub-color);
    justify-content: space-between;
    margin-bottom: 12px;
}

.top-search__free-ttl-en {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--sub-color);
    line-height: 1;
}

.top-search__free-ttl-jp {
    color: #2B2B2B;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: .12em;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 0 10px;
    justify-content: space-between;
}

.top-search__free-ttl-jp::after {
    content: "";
    width: 302px;
    height: 1px;
    background-color: #888888;
}

.top-search__keyword-form {
    border: solid 1px #E3E3E3;
    border-radius: 4px;
}

.top-search__keyword-form .text {
    width: 100%;
    padding: 13px 0 13px 20px;
    border: none;
    color: #5E5E5E;
}

.top-search__keyword-form .submit {
    width: 62px;
    border: none;
    padding: 12px 18px;
    flex-shrink: 0;
    background-image: url(/wp-content/themes/swell_child/image/icon_search.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 26px;
}

.top-search__keyword-form .text::placeholder {
    font-size: 13px;
    letter-spacing: .12em;
    color: #A7A7A7;
}

.top-search__keyword-form form {
    display: flex;
}

.top-search__request-icon svg path {
    transition: .3s;
}

/* TOP おすすめ物件特集 */
.top-feature-sec {
    padding-block: 150px 120px;
}

.top-feature__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 30px;
}

.top-feature__list li a {
    display: block;
    position: relative;
}

.top-feature__item-img img {
    width: 100%;
    aspect-ratio: 2/1;
    min-width: 0;
    object-fit: cover;
    transition: .3s;
}

.top-feature__item-img {
    margin-bottom: 12px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.top-feature__item-ttl-box {
    width: 100%;
    position: absolute;
    top: 114px;
    left: 0;
    display: flex;
    justify-content: space-between;
    padding-inline: 17px 11px;
    align-items: center;
}

.top-feature__item-ttl-en {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #FFF;
    opacity: .7;
    line-height: 1.05;
    margin-bottom: 2px;
}

.top-feature__item-ttl-jp {
    color: #FFF;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: .12em;
    line-height: 1.45;
}

.top-feature__ttl-num {
    color: #FFF;
    font-size: 60px;
    letter-spacing: .04em;
    line-height: 1.1;
    opacity: .2;
}

.top-feature__ttl-num .small {
    font-size: 50px;
}

.top-feature__item-img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, .5) 100%);
    transition: .3s;
    z-index: 1;
}

.top-feature__item-main {
    padding-right: 40px;
    letter-spacing: .13em;
    line-height: 1.53;
}

/* TOP 新着物件 */
.top-arrivals-sec {
    padding-block: 130px 144px;
    background-image: url(/wp-content/themes/swell_child/image/top_arrivals_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 0;
}

.top-arrivals-sec::before {
    content: "";
    inset: 0;
    position: absolute;
    background-color: #F7F7F7;
    opacity: .7;
    z-index: -1;
}

.top-arrivals__list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 80px 32px;
}

.top-arrivals__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
    min-width: 0;
}

.top-arrivals__item-img {
    margin-bottom: 16px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .08);
    position: relative;
    overflow: hidden;
    z-index: 0;
    aspect-ratio: 261 / 310;
    min-width: 0;
}

.top-arrivals__item-ttl {
    margin-bottom: 16px;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: .12em;
    color: #2B2B2B;
    line-height: 1.44;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top-arrivals__item-access {
    margin-bottom: 5px;
    color: #767676;
    letter-spacing: .12em;
    line-height: 1.46;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top-arrivals__item-text-box {
    margin-bottom: 17px;
}

.top-arrivals__item-price-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 14px;
    border-bottom: solid 1px #AAA;
}

.top-arrivals__item-price-box .common-btn-arrow-box {
    position: unset;
    flex-shrink: 0;
    background-color: #DEE8E8;
    border: none;
    transition: .3s;
}

.top-arrivals__item-price-box .common-btn-arrow-box::before {
    border-color: #093B38;
}

.top-arrivals__item-mador {
    color: #767676;
    letter-spacing: .12em;
    line-height: 1.46;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top-arrivals__item-price-text {
    font-size: 26px;
    font-weight: 600;
    color: #2B2B2B;
    line-height: 1.42;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top-arrivals__item-price-text .small {
    font-size: 15px;
}

.top-arrivals__item-tab {
    position: absolute;
    top: 20px;
    left: -10px;
    width: 66px;
    text-align: center;
    line-height: 30px;
    padding: 0 .5em;
    font-size: 19px;
    color: #FFF;
    letter-spacing: .04em;
    background-color: var(--main-color);
}

.top-arrivals__list li a {
    position: relative;
    display: block;
}

.top-arrivals__item-price-text .color {
    color: #093B38;
}

.top-arrivals-sec .common-sec-ttl {
    margin-bottom: 59px;
}

.top-arrivals__item-img::before {
    content: "";
    inset: 0;
    position: absolute;
    background-color: transparent;
    transition: .3s;
    z-index: 1;
}

/* TOP 高齢者向け住宅 */
.top-nursing-sec {
    padding-top: 130px;
}

.top-nursing-sec .common-sec-ttl__en {
    color: #D99795;
    margin-bottom: 13px;
}

.common-sec-ttl__jp .small {
    font-size: 24px;
    display: block;
}

.top-nursing-sec .common-sec-ttl__jp .color {
    color: #CB716E;
}

.top-nursing-sec .common-sec-ttl__jp {
    margin-bottom: 20px;
}

.top-nursing-sec .common-sec-ttl {
    margin-bottom: 44px;
}

.top-nursing__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 30px;
}

.top-nursing__list li a {
    display: block;
}

.top-nursing__item-img img {
    aspect-ratio: 36/23;
    width: 100%;
    object-fit: cover;
    transition: .3s;
}

.top-nursing__item-img {
    margin-bottom: 12px;
    overflow: hidden;
}

.top-nursing__item-ttl-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-nursing__item-ttl-box .common-btn-arrow-box {
    position: unset;
    width: 32px;
    background-color: #FFF4F4;
    border: none;
}

.top-nursing__item-ttl-box .common-btn-arrow-box::before {
    border-color: #CB716E;
}

.top-nursing__item-ttl {
    font-size: 18px;
    color: #2B2B2B;
    letter-spacing: .12em;
    font-weight: 600;
    line-height: 1.44;
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.top-nursing__item-ttl::before {
    content: "";
    width: 30px;
    height: 1px;
    background-color: #9B9B9B;
}

.nursing-link-btn a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 250px;
    min-block-size: 60px;
    background-color: #CB716E;
    margin: 0 auto;
    padding-inline: 30px 20px;
    transition: .3s;
}

.top-nursing__list {
    margin-bottom: 56px;
}

.nursing-link-btn__text {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: .12em;
    color: #FFF;
}

.nursing-link-btn__arrow svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nursing-link-btn__arrow {
    width: 15px;
    line-height: 1;
    flex-shrink: 0;
    opacity: .7;
}

.nursing-link-btn a svg path {
    transition: .3s;
}

/* TOP 充実のサービス */
.top-service-sec {
    padding-block: 130px 140px;
}

.top-service-sec .common-sec-ttl__en {
    margin-bottom: 13px;
}

.top-service-sec .common-sec-ttl__jp {
    margin-bottom: 20px;
}

.top-service-sec .common-sec-ttl {
    margin-bottom: 66px;
}

.top-service__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 30px;
}

.top-service__list li {
    text-align: center;
    padding: 46px 35px 45px;
    position: relative;
    background-image: url(/wp-content/themes/swell_child/image/top_service_item_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
}


.top-service__item-icon {
    width: 120px;
    aspect-ratio: 1/1;
    min-width: 0;
    background-color: #FFF;
    border-radius: 50%;
    margin: 0 auto 7px;
    display: grid;
    place-content: center;
    overflow: hidden;
}

.top-service__item-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-service__item-ttl {
    font-size: 20px;
    color: #093B38;
    font-weight: 600;
    letter-spacing: .12em;
    line-height: 1.45;
    display: grid;
    align-items: flex-end;
}

.top-service__item-top-treat::before,
.top-service__item-top-treat::after {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    min-width: 0;
    position: absolute;
    border: solid 1px #8DA2A1;
    border-width: 1px 1px 0 0;
    top: 0;
}

.top-service__item-top-treat {
    position: absolute;
    top: 14px;
    left: 14px;
    width: 332px;
}

.top-service__item-top-treat::before {
    left: 0;
    rotate: -90deg;
}

.top-service__item-top-treat::after {
    right: 0;
}

.top-service__item-bottom-treat::before,
.top-service__item-bottom-treat::after {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    min-width: 0;
    position: absolute;
    border: solid 1px #8DA2A1;
    border-width: 0 0 1px 1px;
    top: 0;
}

.top-service__item-bottom-treat {
    position: absolute;
    bottom: 34px;
    left: 14px;
    width: 332px;
}

.top-service__item-bottom-treat::before {
    left: 0;
}

.top-service__item-bottom-treat::after {
    right: 0;
    rotate: -90deg;
}

.top-service__item-cont {
    padding-bottom: 11px;
    border-bottom: solid 1px #C7C7C7;
    margin-bottom: 10px;
    display: grid;
}

.top-service__item-text {
    letter-spacing: .14em;
    line-height: 1.69;
}

.top-service__item-ttl .small {
    display: block;
    font-size: 16px;
    color: #2B2B2B;
}

.top-service__item-num {
    position: absolute;
    top: -23px;
    left: 50%;
    translate: -50% 0;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #87AAA9;
}

/* フッターお問い合わせ */
.ft-contact {
    padding-block: 63px 69px;
    background-image: url(/wp-content/themes/swell_child/image/ft_contact_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 2;
}

.ft-contact::before {
    content: "";
    inset: 0;
    position: absolute;
    background-color: #000;
    opacity: .74;
    mix-blend-mode: multiply;
    z-index: -1;
}

.ft-contact .common-sec-ttl__en {
    color: #FFF;
    opacity: .8;
}

.ft-contact .common-sec-ttl__jp {
    color: #FFF;
}

.ft-contact .common-sec-ttl__catch {
    color: #FFF;
    opacity: .8;
}

.ft-contact .common-sec-ttl {
    margin-bottom: 29px;
}

.ft-contact__btn-area {
    border-block: solid 2px rgba(255, 255, 255, .35);
    padding-block: 30px 35px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    justify-content: center;
}

.ft-contact__btn-catch {
    font-size: 14px;
    letter-spacing: .12em;
    font-weight: 600;
    line-height: 1.42;
    margin-bottom: 10px;
    color: #FFF;
    text-align: center;
}

.common-cta__btn a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 340px;
    min-block-size: 68px;
    margin: 0 auto;
    padding-inline: 21px 20px;
    color: #FFF;
    font-size: 17px;
    letter-spacing: .12em;
    font-weight: 700;
    transition: .3s;
}

.common-cta__btn.-contact a {
    background: linear-gradient(to bottom, #EF6F03, #B55400);
}

.icon-mail {
    width: 25.38px;
    flex-shrink: 0;
    line-height: 1;
}

.icon-mail svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.common-cta__btn a::after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 2px #FFF;
    border-width: 2px 2px 0 0;
    flex-shrink: 0;
    rotate: 45deg;
}

.common-cta__btn.-request a {
    background: #DEE8E7;
    color: #093B38;
}

.common-cta__btn.-request a::after {
    border-color: #093B38;
}

.ft-contact__btn-box+.ft-contact__btn-box {
    border-left: solid 2px rgba(255, 255, 255, .35);
}

.icon-request {
    width: 29.15px;
    line-height: 1;
}

.icon-request svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* フッター */
.site-footer {
    padding-top: 90px;
    background-color: #F4F4F4;
    position: relative;
    z-index: 2;
}

.site-footer__top {
    background-color: #FFF;
    padding: 62px 70px 61px;
    display: flex;
    gap: 0 50px;
    align-items: center;
    margin-bottom: 65px;
}

.site-footer__company-img {
    width: 400px;
    flex-shrink: 0;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .08);
}

.site-footer__company-img img {
    width: 100%;
    aspect-ratio: 400/267;
    object-fit: cover;
}

.site-footer__info {
    border-left: solid 1px #D9D9D9;
    padding-left: 50px;
}

.site-footer__logo-text {
    font-size: 12px;
    letter-spacing: .14em;
    color: #959595;
}

.site-footer__logo a {
    display: block;
    width: fit-content;
}

.site-footer__logo a img {
    width: 343px;
    margin-top: -2px;
    margin-left: -12px;
}


.site-footer__logo {
    margin-bottom: 9px;
}

.site-footer__other-link a {
    color: #3C3C3C;
    letter-spacing: .1em;
    display: flex;
    align-items: center;
    padding-bottom: 10px;
    border-bottom: dashed 1px #A2A2A2;
    line-height: 1.46;
    gap: 0 54px;
    padding-right: 10px;
    transition: .3s;
}

.site-footer__other-link a::after {
    content: "";
    width: 7px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 1px #4E4E4E;
    border-width: 1px 1px 0 0;
    rotate: 45deg;
    flex-shrink: 0;
}

.site-footer__other-link {
    width: fit-content;
    margin-bottom: 22px;
}

.site-footer__info-text {
    color: #838383;
    letter-spacing: .09em;
    line-height: 1.84;
}

.site-footer__menu-list ul {
    display: flex;
    align-items: center;
    gap: 15px 46px;
    flex-wrap: wrap;
}

.site-footer__menu-list li a {
    color: #2B2B2B;
    font-weight: 600;
    letter-spacing: .12em;
    display: flex;
    align-items: center;
    font-size: 15px;
    line-height: 1.4;
    gap: 0 10px;
    transition: .3s;
}

.site-footer__menu-list {
    margin-bottom: 55px;
}

.site-footer__recommend-menu-ttl {
    font-size: 15px;
    letter-spacing: .12em;
    font-weight: 600;
    color: #2B2B2B;
    display: flex;
    gap: 0 13px;
    align-items: center;
    line-height: 1.4;
    margin-bottom: 14px;
}

.site-footer__recommend-menu-ttl::after {
    content: "";
    height: 1px;
    background-image: repeating-linear-gradient(to right,
            #B1B1B1 0,
            #B1B1B1 3px,
            transparent 3px,
            transparent 6px);
    width: 992px;
}

.site-footer__recommend-menu ul {
    display: flex;
    align-items: center;
    gap: 0 40px;
}

.site-footer__recommend-menu {
    margin-bottom: 140px;
}

.site-footer__recommend-menu li a {
    display: block;
    letter-spacing: .12em;
    color: #5D5D5D;
    line-height: 1.46;
    transition: .3s;
}

.site-footer__small-menu ul {
    display: flex;
    justify-content: center;
    gap: 0 56px;
}

.site-footer__small-menu li a {
    color: #868686;
    display: block;
    letter-spacing: .12em;
    line-height: 1.46;
    transition: .3s;
}

.site-footer__copyright {
    margin-top: 20px;
    background-color: var(--main-color);
    padding-block: 15px 17px;
    text-align: center;
}

.site-footer__copyright small {
    font-size: 12px;
    color: #D5E5E4;
    letter-spacing: .12em;
    display: block;
    line-height: 1.5;
}

.site-footer__small-menu li+li::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 15px;
    background-color: #B9B9B9;
    top: 50%;
    left: -28px;
    translate: 0 -50%;
}

.site-footer__small-menu li {
    position: relative;
}

.icon-link {
    width: 11px;
    flex-shrink: 0;
    line-height: 1;
}

.icon-link svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-footer__menu-list .icon-link svg path {
    stroke: #969696;
}

/* 追従ボタン */
.site-fixed {
    position: fixed;
    top: 210px;
    right: 0;
    z-index: 1001;
}

.site-fixed-btn a {
    display: grid;
    place-content: center;
    height: 200px;
    width: 64px;
    background: linear-gradient(110deg, #EF6F03, #B55400);
    gap: 11px;
    transition: .3s;
}

.site-fixed-btn__text {
    writing-mode: tb-rl;
    font-size: 17px;
    color: #FFF;
    font-weight: 700;
    letter-spacing: .12em;
    line-height: 1;
}

.site-fixed-btn+.site-fixed-btn {
    margin-top: 15px;
}

.site-fixed-btn__icon {
    line-height: 1;
    width: 13.5px;
    translate: 2px 0;
    opacity: .7;
}

.site-fixed-btn__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-fixed-btn.-management a {
    background: linear-gradient(110deg, #0C6A67, #0A615F, #064E4C);
}

/* ホバー */
.site-header__top-menu-item a:hover {
    opacity: .6;
}

.site-header__bottom-menu-item a:hover {
    opacity: 0.6;
}

.hd-contact-btn a:hover {
    background-color: #E7F2F1;
}

.hd-contact-btn a:hover .hd-contact-btn__text {
    color: #074541;
}

.hd-contact-btn a:hover .hd-contact-btn__text::after {
    border-color: #074541;
}

.hd-contact-btn a:hover .icon-hd-request svg path {
    fill: #074541;
}

.site-fixed-btn a:hover {
    opacity: 0.8;
}

.top-search__btn li a:hover .top-search__btn-img img {
    scale: 1.2;
}

.top-search__btn li a:hover .common-btn-arrow-box {
    background-color: #FFF;
    border-color: #093B38;
}

.top-search__btn li a:hover .common-btn-arrow-box::before {
    border-color: #093B38;
}

.top-search__request-btn a:hover {
    background-color: #E7F2F1;
}

.top-search__request-btn a:hover .top-search__request-icon {
    background-color: var(--main-color);
}

.top-search__request-btn a:hover .top-search__request-ttl-jp {
    color: #093B38;
}

.top-search__request-btn a:hover .top-search__request-icon svg path {
    fill: #FFF;
}

.top-feature__list li a:hover img {
    scale: 1.2;
}

.top-feature__list li a:hover .top-feature__item-img::before {
    background: #1D938E;
    opacity: .4;
}

.top-feature__list li a:hover .common-btn-arrow-box {
    background-color: #FFF;
    border-color: #093B38;
}

.top-feature__list li a:hover .common-btn-arrow-box::before {
    border-color: #093B38;
}

.top-arrivals__list li a:hover .top-arrivals__item-img::before {
    background-color: #1D938E;
    opacity: .2;
}

.top-arrivals__list li a:hover .top-arrivals__item-img img {
    scale: 1.2;
}

.top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box {
    background-color: var(--main-color);
}

.top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box::before {
    border-color: #FFF;
}

.top-nursing__list li a:hover .top-nursing__item-img img {
    scale: 1.2;
}

.top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box {
    background-color: #CB716E;
}

.top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box::before {
    border-color: #FFF;
}

.nursing-link-btn a:hover {
    background-color: #FFECEB;
}

.nursing-link-btn a:hover .nursing-link-btn__text {
    color: #CB716E;
}

.nursing-link-btn a:hover svg path {
    stroke: #CB716E;
}

.common-cta__btn a:hover {
    opacity: 0.8;
}

.site-footer__menu-list li a:hover {
    opacity: 0.6;
}

.site-footer__recommend-menu li a:hover {
    opacity: .6;
}

.site-footer__small-menu li a:hover {
    opacity: .6;
}

.common-link-btn a:hover {
    opacity: .8;
}

.site-footer__other-link a:hover {
    opacity: .5;
}

/* 共通 */
.common_page_h1_cont {
    background-color: #fff;
    padding: 20px 30px;
    border-radius: 10px;
    width: 820px;
}

.common_page_h1_cont .en {
    color: #87AAA9;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.common_page_h1_box {
    background-image: url(/wp-content/themes/swell_child/image/top_arrivals_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 0;
}

.common_page_h1_box::before {
    content: "";
    inset: 0;
    position: absolute;
    background-color: #F7F7F7;
    opacity: .7;
    z-index: -1;
}

.common_page_h1_box .wrap {
    padding: 60px 0 60px;
}

.common_page_h1_cont h1 {
    font-size: 24px;
    letter-spacing: .1em;
    font-weight: 600;
}

/* TOP追加 */
.top-office-map__inner {
    width: 1110px;
    background-color: #F5F5F5;
    padding: 30px 85px;
    position: relative;
    z-index: 0;
}

.top-office-map__inner svg {
    width: 939.98px;
    height: 490px;
}

.top-office-map {
    background-color: #FFF;
    padding: 15px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, .1);
    margin-bottom: 50px;
}

.top-office-sec {
    padding-bottom: 140px;
}

.top-office-map__inner::before {
    content: "";
    background-image: url(/wp-content/themes/swell_child/image/top_map_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .5;
}

.common-link-btn a {
    width: 250px;
    margin: 0 auto;
    display: flex;
    min-block-size: 60px;
    background-color: #3B6C61;
    padding-inline: 32px 22px;
    align-items: center;
    justify-content: space-between;
    transition: .3s;
}

.common-link-btn__text {
    color: #FFF;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: .12em;
}

.common-link-btn a::after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid 2px #FFF;
    border-width: 2px 2px 0 0;
    flex-shrink: 0;
    rotate: 45deg;
}

.site-footer__recommend-menu.-office {
    margin-bottom: 50px;
}

.site-footer__recommend-menu.-office .site-footer__recommend-menu-ttl::after {
    width: 1009px;
}

.map-tooltip {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    padding: 16px 20px 29px;
    background-color: #FFF;
    width: 310px;
    box-shadow: 0 1px 10px rgba(0, 0, 0, .1);
    z-index: 0;
}

.map-tooltip.is-active {
    opacity: 1;
    visibility: visible;
}

.map-tooltip#data-saitama {
    top: 18%;
    left: 2.3%;
}

.map-tooltip .top-search__request-top-treat {
    top: 10px;
    left: 10px;
    width: 290px;
}

.map-tooltip .top-search__request-top-treat::before,
.map-tooltip .top-search__request-top-treat::after {
    width: 16px;
    border-color: #B7C9C7;
}

.map-tooltip__ttl {
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .12em;
    color: #5AB2A6;
    padding-bottom: 6px;
    line-height: 1.5;
    border-bottom: dashed 1px #707070;
    margin-bottom: 12px;
}

.map-tooltip .top-search__request-bottom-treat {
    bottom: 26px;
    left: 10px;
    width: 290px;
}

.map-tooltip .top-search__request-bottom-treat::before,
.map-tooltip .top-search__request-bottom-treat::after {
    width: 16px;
    border-color: #B7C9C7;
}

.map-tooltip__flex {
    display: flex;
    gap: 0 11px;
    align-items: flex-start;
}

.map-tooltip__area {
    flex-shrink: 0;
    padding-inline: 8px 9px;
    background-color: #F0F0F0;
    min-block-size: 24px;
    width: fit-content;
    display: grid;
    place-content: center;
}

.map-tooltip__area-text {
    font-size: 13px;
    letter-spacing: .12em;
    font-weight: 600;
    color: #2B2B2B;
    line-height: 1.46;
}

.map-tooltip__text {
    width: 100%;
    font-size: 12px;
    letter-spacing: .1em;
    line-height: 1.58;
}

.map-tooltip::before {
    content: "";
    position: absolute;
    top: -13px;
    left: 50%;
    translate: -50% 0;
    width: 40px;
    height: 20px;
    box-shadow: 0 1px 10px rgba(0, 0, 0, .1);
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    background-color: #FFF;
    z-index: -1;
}

.map-tooltip#data-nerima {
    top: 24.7%;
    left: 18.6%;
}

.map-tooltip#data-tama {
    top: 57.7%;
    left: 3.6%;
}

.map-tooltip#data-kanagawa {
    bottom: -4.9%;
    left: 1.1%;
}

.map-tooltip#data-matsudo {
    top: 15.8%;
    right: 16.6%;
}

.map-tooltip#data-yachiyo {
    top: 44.3%;
    right: 2.9%;
}

.map-tooltip#data-jyoto {
    top: 51.9%;
    right: 18.4%;
}

.map-tooltip#data-ginza {
    bottom: -6.4%;
    right: 27.9%;
}

.map-tooltip#data-fukuoka {
    bottom: -11.5%;
    right: 28.2%;
}

.map-tooltip__flex+.map-tooltip__flex {
    margin-top: 8px;
}

/* 営業所一覧ページ */
.shop-list__item-list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}

.shop-list__item-btn {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 10px;
    margin-top: 20px;
}

.shop-list__item-ttl {
    font-size: 22px;
    letter-spacing: .1em;
    color: #1A1A1A;
    font-weight: 700;
    line-height: 1.8;
    margin-bottom: 12px;
    border-left: solid 4px var(--main-color);
    padding-left: 0.5em;
}

.shop-list__item-ttl .color {
    color: #2B2B2B;
}

.shop-list__item-cont {
    border-top: dashed 1px #AAA;
    padding-top: 8px;
}

.shop-list__item-list li {
    padding: 20px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, .1);
}

.shop-list__item-btn .common-link-btn a {
    width: 100%;
    min-block-size: 50px;
    background-color: #DEE8E7;
}

.shop-list__item-btn .common-link-btn__text {
    font-size: 16px;
    color: var(--main-color);
}

.shop-list__item-btn .common-link-btn a::after {
    width: 9px;
    border-color: var(--main-color);
}

.shop-list__item-text {
    font-size: 13px;
    letter-spacing: .05em;
    line-height: 1.6;
    font-weight: 400;
    color: #707070;
}

.shop-list__item-text.-tel .large {
    font-size: 200%;
    line-height: 1;
    color: var(--main-color);
    font-weight: 600;
}

.shop-list__item-text.-fax .mid {
    font-size: 150%;
    line-height: 1;
    color: #2B2B2B;
    font-weight: 600;
}

.shop-list__item-text.-tel {
    margin-top: 1em;
    font-weight: 500;
}

.shop-list__item-text.-fax {
    margin-top: 0.5em;
    font-weight: 500;
}

/* 営業所詳細ページ */
.page_shop_single .common_page_wrap {
    padding: 75px 0 0;
}

.company_profile_sec .common-link-btn {
    margin-top: 50px;
}

.top-arrivals-sec.shop-single-property .common-link-btn {
    margin-top: 60px;
}

.page_shop_single .company_profile_sec {
    padding-bottom: 120px;
}

@media screen and (min-width: 750px) and (max-width: 1280px) {
    body {
        font-size: 0.902777vw !important;
        padding-top: 6.94444vw;
        min-width: 100% !important;
    }

    .wrap {
        width: 79.16666vw;
    }

    .wrap.mid {
        width: 86.11111vw;
    }

    a[href $='.pdf']::before {
        width: 2.0833vw;
        height: 2.6389vw;
        margin-right: 1.0417vw;
    }

    /* PC固定ページ 共通設定 */
    .common_page_wrap {
        padding: 5.2083vw 0 10.4167vw;
    }

    .reserve_text {
        font-size: 2.0833vw;
    }

    /* パンくず */
    .breadcrumb {
        font-size: 0.8333vw;
    }

    /* PC固定ページ 404ページ */
    #page_404 .num {
        font-size: 6.9444vw;
    }

    #page_404 .text {
        font-size: 1.1111vw;
    }

    /* ヘッダー */
    .site-header {
        padding: 1.0416vw 3.4722vw 0;
        min-height: 6.9444vw;
    }

    .site-header__logo-text {
        font-size: 0.8333vw;
        margin-bottom: 0.4861vw;
    }

    .site-header__logo img {
        width: 21.597vw;
        margin-top: -0.2083vw;
    }

    .site-header__top-menu-flex {
        gap: 0 1.3889vw;
        margin-bottom: 0.9722vw;
    }

    .site-header__top-menu-item a {
        gap: 0 0.5556vw;
    }

    .icon-star {
        width: 2.0833vw;
    }

    .icon-star svg {
        width: 1.3194vw;
    }

    .icon-time {
        width: 2.0833vw;
    }

    .icon-time svg {
        width: 1.25vw;
    }

    .site-header__top-menu-item-text {
        font-size: 0.8333vw;
    }

    .site-header__menu {
        padding-right: 2.0833vw;
    }

    .site-header__bottom-menu-flex {
        gap: 0 3.8889vw;
    }

    .site-header__bottom-menu-item a {
        font-size: 0.9722vw;
    }

    .site-header__bottom-menu-item+.site-header__bottom-menu-item::before {
        height: 0.9722vw;
        left: -1.9444vw;
        width: 0.0694vw;
    }

    .site-header__cta-box {
        padding-left: 2.0833vw;
        border-left: solid 0.0694vw #B1AFAF;
    }

    .site-header__cta-text {
        font-size: 0.8333vw;
        margin-bottom: 0.2083vw;
    }

    .hd-contact-btn a {
        min-block-size: 3.4722vw;
        width: 17.3611vw;
        padding: 0.6944vw 0.9vw 0.6944vw 0.8vw;
        border: solid 0.06vw #074541;
    }

    .icon-hd-request {
        width: 1.5972vw;
        margin-right: 1.0417vw;
    }

    .hd-contact-btn__text {
        font-size: 0.9722vw;
        gap: 0 1.1111vw;
    }

    .hd-contact-btn__text::after {
        width: 0.6944vw;
        border: solid 0.1041vw #FFF;
        border-width: 0.1041vw 0.1041vw 0 0;
    }

    .site-header__link-box {
        padding-bottom: 0.9722vw;
    }

    /* TOP メインビジュアル */
    .top-mv-sec {
        padding-block: 10vw 5.2778vw;
    }

    .top-mv__ttl {
        font-size: 1.3889vw;
        margin-bottom: 1.6667vw;
        gap: 0 1.1111vw;
        padding-left: 0.1389vw;
    }

    .top-mv__ttl::before {
        width: 2.7778vw;
        height: 0.0694vw;
    }

    .top-mv__main {
        font-size: 2.9167vw;
        margin-bottom: 2.0833vw;
    }

    .top-mv__main .small {
        font-size: 2.3611vw;
    }

    .top-mv__scroll-arrow {
        width: 1.6667vw;
    }

    .mv-bg-font {
        bottom: -1.5278vw;
        left: -0.7639vw;
    }

    .mv-bg-font__en {
        font-size: 11.1111vw;
    }

    /* TOP 物件を探す */
    .common-sec-ttl {
        margin-bottom: 3.4028vw;
    }

    .common-sec-ttl__en {
        font-size: 1.3889vw;
        margin-bottom: 0.2083vw;
    }

    .common-sec-ttl__jp {
        font-size: 2.9167vw;
        margin-bottom: 0.8333vw;
    }

    .common-sec-ttl__catch {
        font-size: 1.0417vw;
    }

    .top-search-sec {
        padding-top: 10.4167vw;
    }

    .top-search__btn ul {
        gap: 0 1.3889vw;
    }

    .top-search__btn-inner {
        padding: 2.7778vw 1.5278vw;
    }

    .top-search__btn-img {
        width: 8.3333vw;
    }

    .top-search-box {
        padding-right: 3.125vw;
    }

    .common-btn-arrow-box {
        width: 2.0833vw;
        border: solid 0.0694vw var(--main-color);
    }

    .common-btn-arrow-box::before {
        width: 0.6944vw;
        translate: -0.1389vw 0;
        border: solid 0.1388vw #FFF;
        border-width: 0.1388vw 0.1388vw 0 0;
    }

    .top-search__request-btn {
        padding-left: 3.125vw;
        border-left: dashed 0.0694vw #707070;
    }

    .top-search__btn-ttl-en {
        font-size: 1.25vw;
        margin-bottom: 0.2083vw;
    }

    .top-search__btn-ttl-jp {
        font-size: 1.25vw;
    }

    .top-search__btn-text {
        padding-bottom: 0.6944vw;
        border-bottom: dashed 0.0694vw #AAA;
    }

    .top-search__request-btn a {
        width: 22.9167vw;
        padding: 2.4305vw 0 2.5694vw;
    }

    .top-search__request-icon {
        width: 7.6389vw;
        margin: 0 auto 1.1111vw;
    }

    .top-search__request-icon svg {
        width: 4.6125vw;
    }

    .top-search__request-ttl-jp {
        font-size: 1.3889vw;
    }

    .top-search__request-ttl-en {
        font-size: 1.3889vw;
        margin-bottom: 0.2778vw;
    }

    .top-search__request-top-treat {
        top: 1.0417vw;
        left: 1.0417vw;
        width: 20.8333vw;
    }

    .top-search__request-bottom-treat {
        bottom: 2.4306vw;
        left: 1.0417vw;
        width: 20.8333vw;
    }

    .top-search__btn {
        margin-bottom: 1.875vw;
    }

    .top-search__free-ttl {
        padding-left: 0.8333vw;
        margin-bottom: 0.8333vw;
        border-left: solid 0.1388vw var(--sub-color);
    }

    .top-search__free-ttl-en {
        font-size: 1.6667vw;
    }

    .top-search__free-ttl-jp {
        font-size: 1.0417vw;
        gap: 0 0.6944vw;
    }

    .top-search__free-ttl-jp::after {
        width: 20.9722vw;
        height: 0.0694vw;
    }

    .top-search__keyword-form .text {
        padding: 0.9028vw 0 0.9028vw 1.3889vw;
    }

    .top-search__keyword-form .submit {
        width: 4.3056vw;
        padding: 0.8333vw 1.25vw;
        background-size: 1.8056vw;
    }

    .top-search__keyword-form .text::placeholder {
        font-size: 0.9028vw;
    }

    .top-search__keyword-form {
        border: solid 0.0694vw #E3E3E3;
    }

    .top-search__request-top-treat::before,
    .top-search__request-top-treat::after {
        width: 1.3888vw;
        border: solid 0.0694vw #6C9391;
        border-width: 0.0694vw 0.0694vw 0 0;
    }

    .top-search__request-bottom-treat::before,
    .top-search__request-bottom-treat::after {
        width: 1.3888vw;
        border: solid 0.0694vw #6C9391;
        border-width: 0 0 0.0694vw 0.0694vw;
    }

    /* TOP おすすめ物件特集 */
    .top-feature-sec {
        padding-block: 10.4167vw 8.3333vw;
    }

    .top-feature__list ul {
        gap: 2.7778vw 2.0833vw;
    }

    .top-feature__item-img {
        margin-bottom: 0.8333vw;
    }

    .top-feature__item-ttl-box {
        top: 7.9167vw;
        padding-inline: 1.1806vw 0.7639vw;
    }

    .top-feature__item-ttl-en {
        font-size: 1.1111vw;
        margin-bottom: 0.1389vw;
    }

    .top-feature__item-ttl-jp {
        font-size: 1.3889vw;
    }

    .top-feature__ttl-num {
        font-size: 4.1667vw;
    }

    .top-feature__ttl-num .small {
        font-size: 3.4722vw;
    }

    .top-feature__item-main {
        padding-right: 2.7778vw;
    }

    /* TOP 新着物件 */
    .top-arrivals-sec {
        padding-block: 9.0278vw 10vw;
    }

    .top-arrivals__list ul {
        gap: 5.5556vw 2.2222vw;
    }

    .top-arrivals__item-img {
        margin-bottom: 1.1111vw;
        box-shadow: 0 0.0694vw 0.2778vw rgba(0, 0, 0, .08);
    }

    .top-arrivals__item-ttl {
        margin-bottom: 1.1111vw;
        font-size: 1.25vw;
    }

    .top-arrivals__item-access {
        margin-bottom: 0.3472vw;
    }

    .top-arrivals__item-text-box {
        margin-bottom: 1.1806vw;
    }

    .top-arrivals__item-price-box {
        padding-bottom: 0.9722vw;
        border-bottom: solid 0.0694vw #AAA;
    }

    .top-arrivals__item-price-text {
        font-size: 1.8056vw;
    }

    .top-arrivals__item-price-text .small {
        font-size: 1.0417vw;
    }

    .top-arrivals__item-tab {
        top: 1.3889vw;
        left: -0.6944vw;
        width: 4.5833vw;
        line-height: 2.0833vw;
        font-size: 1.3194vw;
    }

    .top-arrivals-sec .common-sec-ttl {
        margin-bottom: 4.0972vw;
    }

    /* TOP 高齢者向け住宅 */
    .top-nursing-sec {
        padding-top: 9.0278vw;
    }

    .top-nursing-sec .common-sec-ttl__en {
        margin-bottom: 0.9028vw;
    }

    .common-sec-ttl__jp .small {
        font-size: 1.6667vw;
    }

    .top-nursing-sec .common-sec-ttl__jp {
        margin-bottom: 1.3889vw;
    }

    .top-nursing-sec .common-sec-ttl {
        margin-bottom: 3.0556vw;
    }

    .top-nursing__list ul {
        gap: 0 2.0833vw;
    }

    .top-nursing__item-img {
        margin-bottom: 0.8333vw;
    }

    .top-nursing__item-ttl-box .common-btn-arrow-box {
        width: 2.2222vw;
    }

    .top-nursing__item-ttl {
        font-size: 1.25vw;
        gap: 0 0.6944vw;
    }

    .top-nursing__item-ttl::before {
        width: 2.0833vw;
        height: 0.0694vw;
    }

    .nursing-link-btn a {
        width: 17.3611vw;
        min-block-size: 4.1667vw;
        padding-inline: 2.0833vw 1.3889vw;
    }

    .top-nursing__list {
        margin-bottom: 3.8889vw;
    }

    .nursing-link-btn__text {
        font-size: 1.25vw;
    }

    .nursing-link-btn__arrow {
        width: 1.0417vw;
    }

    /* TOP 充実のサービス */
    .top-service-sec {
        padding-block: 9.0278vw 9.7222vw;
    }

    .top-service-sec .common-sec-ttl__en {
        margin-bottom: 0.9028vw;
    }

    .top-service-sec .common-sec-ttl__jp {
        margin-bottom: 1.3889vw;
    }

    .top-service-sec .common-sec-ttl {
        margin-bottom: 4.5833vw;
    }

    .top-service__list ul {
        gap: 0 2.0833vw;
    }

    .top-service__list li {
        padding: 3.1944vw 2.4306vw 3.125vw;
    }

    .top-service__item-icon {
        width: 8.3333vw;
        margin: 0 auto 0.4861vw;
    }

    .top-service__item-ttl {
        font-size: 1.3889vw;
    }

    .top-service__item-top-treat {
        top: 0.9722vw;
        left: 0.9722vw;
        width: 23.0556vw;
    }

    .top-service__item-bottom-treat {
        bottom: 2.3611vw;
        left: 0.9722vw;
        width: 23.0556vw;
    }

    .top-service__item-cont {
        padding-bottom: 0.7639vw;
        margin-bottom: 0.6944vw;
        border-bottom: solid 0.0694vw #C7C7C7;
    }

    .top-service__item-ttl .small {
        font-size: 1.1111vw;
    }

    .top-service__item-num {
        top: -1.5972vw;
        font-size: 1.5972vw;
    }

    .top-service__item-bottom-treat::before,
    .top-service__item-bottom-treat::after {
        width: 1.3888vw;
    }

    .top-service__item-top-treat::before,
    .top-service__item-top-treat::after {
        width: 1.3888vw;
    }

    /* フッターお問い合わせ */
    .ft-contact {
        padding-block: 4.375vw 4.7917vw;
    }

    .ft-contact .common-sec-ttl {
        margin-bottom: 2.0139vw;
    }

    .ft-contact__btn-area {
        padding-block: 2.0833vw 2.4306vw;
        border-block: solid 0.13888vw rgba(255, 255, 255, .35);
    }

    .ft-contact__btn-catch {
        font-size: 0.9722vw;
        margin-bottom: 0.6944vw;
    }

    .common-cta__btn a {
        width: 23.6111vw;
        min-block-size: 4.7222vw;
        padding-inline: 1.4583vw 1.3889vw;
        font-size: 1.1806vw;
    }

    .icon-mail {
        width: 1.7625vw;
    }

    .common-cta__btn a::after {
        width: 0.8333vw;
        border: solid 0.1388vw #FFF;
        border-width: 0.1388vw 0.1388vw 0 0;
    }

    .icon-request {
        width: 2.0243vw;
    }

    .ft-contact__btn-box+.ft-contact__btn-box {
        border-left: solid 0.1388vw rgba(255, 255, 255, .35);
    }

    /* フッター */
    .site-footer {
        padding-top: 6.25vw;
    }

    .site-footer__top {
        padding: 4.3056vw 4.8611vw 4.2361vw;
        gap: 0 3.4722vw;
        margin-bottom: 4.5139vw;
    }

    .site-footer__company-img {
        width: 27.7778vw;
        box-shadow: 0 0.0694vw 0.2778vw rgba(0, 0, 0, .08);
    }

    .site-footer__info {
        padding-left: 3.4722vw;
        border-left: solid 0.0694vw #D9D9D9;
    }

    .site-footer__logo-text {
        font-size: 0.8333vw;
    }

    .site-footer__logo a img {
        width: 23.8194vw;
        margin-top: -0.1389vw;
        margin-left: -0.8333vw;
    }

    .site-footer__logo {
        margin-bottom: 0.625vw;
    }

    .site-footer__other-link a {
        padding-bottom: 0.6944vw;
        gap: 0 3.75vw;
        padding-right: 0.6944vw;
        border-bottom: dashed 0.0694vw #A2A2A2;
    }

    .site-footer__other-link a::after {
        width: 0.4861vw;
        border: solid 0.0694vw #4E4E4E;
        border-width: 0.0694vw 0.0694vw 0 0;
    }

    .site-footer__other-link {
        margin-bottom: 1.5278vw;
    }

    .site-footer__menu-list ul {
        gap: 1.0416vw 3.1944vw;
    }

    .site-footer__menu-list li a {
        font-size: 1.0417vw;
        gap: 0 0.6944vw;
    }

    .site-footer__menu-list {
        margin-bottom: 3.8194vw;
    }

    .site-footer__recommend-menu-ttl {
        font-size: 1.0417vw;
        gap: 0 0.9028vw;
        margin-bottom: 0.9722vw;
    }

    .site-footer__recommend-menu-ttl::after {
        width: 68.8889vw;
        height: 0.0694vw;
        background-image: repeating-linear-gradient(to right, #B1B1B1 0, #B1B1B1 0.2083vw, transparent 0.2083vw, transparent 0.4166vw);
    }

    .site-footer__recommend-menu ul {
        gap: 0 2.7778vw;
    }

    .site-footer__recommend-menu {
        margin-bottom: 9.7222vw;
    }

    .site-footer__small-menu ul {
        gap: 0 3.8889vw;
    }

    .site-footer__copyright {
        margin-top: 1.3889vw;
        padding-block: 1.0417vw 1.1806vw;
    }

    .site-footer__copyright small {
        font-size: 0.8333vw;
    }

    .site-footer__small-menu li+li::before {
        height: 1.0417vw;
        left: -1.9444vw;
        width: 0.06944vw;
    }

    .icon-link {
        width: 0.7639vw;
    }

    /* 追従ボタン */
    .site-fixed {
        top: 14.5833vw;
    }

    .site-fixed-btn a {
        height: 13.8889vw;
        width: 4.4444vw;
        gap: 0.7639vw;
    }

    .site-fixed-btn__text {
        font-size: 1.1806vw;
    }

    .site-fixed-btn+.site-fixed-btn {
        margin-top: 1.0417vw;
    }

    .site-fixed-btn__icon {
        width: 0.9375vw;
        translate: 0.1389vw 0;
    }

    /* ホバー */
    .site-header__top-menu-item a:hover {
        opacity: 1;
    }

    .site-header__bottom-menu-item a:hover {
        opacity: 1;
    }

    .hd-contact-btn a:hover {
        background-color: #074541;
    }

    .hd-contact-btn a:hover .hd-contact-btn__text {
        color: #FFF;
    }

    .hd-contact-btn a:hover .hd-contact-btn__text::after {
        border-color: #FFF;
    }

    .hd-contact-btn a:hover .icon-hd-request svg path {
        fill: #89aaa8;
    }

    .site-fixed-btn a:hover {
        opacity: 1;
    }

    .top-search__btn li a:hover .top-search__btn-img img {
        scale: 1;
    }

    .top-search__btn li a:hover .common-btn-arrow-box {
        background-color: var(--main-color);
        border-color: var(--main-color);
    }

    .top-search__btn li a:hover .common-btn-arrow-box::before {
        border-color: #FFF;
    }

    .top-search__request-btn a:hover {
        background-color: var(--main-color);
    }

    .top-search__request-btn a:hover .top-search__request-icon {
        background-color: #FFF;
    }

    .top-search__request-btn a:hover .top-search__request-ttl-jp {
        color: #FFF;
    }

    .top-search__request-btn a:hover .top-search__request-icon svg path {
        fill: #21514f;
    }

    .top-feature__list li a:hover img {
        scale: 1;
    }

    .top-feature__list li a:hover .top-feature__item-img::before {
        background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, .5) 100%);
        opacity: 1;
    }

    .top-feature__list li a:hover .common-btn-arrow-box {
        background-color: var(--main-color);
        border-color: var(--main-color);
    }

    .top-feature__list li a:hover .common-btn-arrow-box::before {
        border-color: #FFF;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-img::before {
        background-color: transparent;
        opacity: 1;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-img img {
        scale: 1;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box {
        background-color: #DEE8E8;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box::before {
        border-color: #093B38;
    }

    .top-nursing__list li a:hover .top-nursing__item-img img {
        scale: 1;
    }

    .top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box {
        background-color: #FFF4F4;
    }

    .top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box::before {
        border-color: #CB716E;
    }

    .nursing-link-btn a:hover {
        background-color: #CB716E;
    }

    .nursing-link-btn a:hover .nursing-link-btn__text {
        color: #FFF;
    }

    .nursing-link-btn a:hover svg path {
        stroke: #fff;
    }

    .common-cta__btn a:hover {
        opacity: 1;
    }

    .site-footer__menu-list li a:hover {
        opacity: 1;
    }

    .site-footer__recommend-menu li a:hover {
        opacity: 1;
    }

    .site-footer__small-menu li a:hover {
        opacity: 1;
    }

    .common-link-btn a:hover {
        opacity: 1;
    }

    .site-footer__other-link a:hover {
        opacity: 1;
    }

    /* 共通 */
    .common_page_h1_cont {
        padding: 1.3889vw 2.0833vw;
        border-radius: 0.6944vw;
        width: 56.9444vw;
    }

    .common_page_h1_cont .en {
        font-size: 1.3194vw;
    }

    .common_page_h1_box .wrap {
        padding: 4.1667vw 0 4.1667vw;
    }

    .common_page_h1_cont h1 {
        font-size: 1.6667vw;
    }

    /* TOP追加 */
    .top-office-map__inner {
        width: 77.0833vw;
        padding: 2.0833vw 5.9028vw;
    }

    .top-office-map__inner svg {
        width: 65.2764vw;
        height: 34.0278vw;
    }

    .top-office-map {
        padding: 1.0417vw;
        box-shadow: 0 0.0694vw 0.4167vw rgba(0, 0, 0, .1);
        margin-bottom: 3.4722vw;
    }

    .top-office-sec {
        padding-bottom: 9.7222vw;
    }

    .common-link-btn a {
        width: 17.3611vw;
        min-block-size: 4.1667vw;
        padding-inline: 2.2222vw 1.5278vw;
    }

    .common-link-btn__text {
        font-size: 1.25vw;
    }

    .common-link-btn a::after {
        width: 0.8333vw;
        border: solid 0.1389vw #FFF;
        border-width: 0.1389vw 0.1389vw 0 0;
    }

    .site-footer__recommend-menu.-office .site-footer__recommend-menu-ttl::after {
        width: 70.0694vw;
    }

    .site-footer__recommend-menu.-office {
        margin-bottom: 3.4722vw;
    }

    .map-tooltip {
        padding: 1.1111vw 1.3889vw 2.0139vw;
        width: 21.5278vw;
        box-shadow: 0 0.0694vw 0.6944vw rgba(0, 0, 0, .1);
    }

    .map-tooltip .top-search__request-top-treat {
        top: 0.6944vw;
        left: 0.6944vw;
        width: 20.1389vw;
    }

    .map-tooltip .top-search__request-top-treat::before,
    .map-tooltip .top-search__request-top-treat::after {
        width: 1.1111vw;
    }

    .map-tooltip__ttl {
        font-size: 1.1111vw;
        padding-bottom: 0.4167vw;
        border-bottom: dashed 0.0694vw #707070;
        margin-bottom: 0.8333vw;
    }

    .map-tooltip .top-search__request-bottom-treat {
        bottom: 1.8056vw;
        left: 0.6944vw;
        width: 20.1389vw;
    }

    .map-tooltip .top-search__request-bottom-treat::before,
    .map-tooltip .top-search__request-bottom-treat::after {
        width: 1.1111vw;
    }

    .map-tooltip__flex {
        gap: 0 0.7639vw;
    }

    .map-tooltip__area {
        padding-inline: 0.5556vw 0.625vw;
        min-block-size: 1.6667vw;
    }

    .map-tooltip__area-text {
        font-size: 0.9028vw;
    }

    .map-tooltip__text {
        font-size: 0.8333vw;
    }

    .map-tooltip::before {
        top: -0.9028vw;
        width: 2.7778vw;
        height: 1.3889vw;
        box-shadow: 0 0.0694vw 0.6944vw rgba(0, 0, 0, .1);
    }

    .map-tooltip__flex+.map-tooltip__flex {
        margin-top: 0.5556vw;
    }

    /* 営業所一覧ページ */
    .shop-list__item-list ul {
        gap: 3.4722vw;
    }

    .shop-list__item-btn {
        gap: 0 0.6944vw;
        margin-top: 1.3889vw;
    }

    .shop-list__item-ttl {
        font-size: 1.527vw;
        margin-bottom: 0.8333vw;
        border-left: solid 0.2778vw var(--main-color);
    }

    .shop-list__item-cont {
        border-top: dashed 0.0694vw #AAA;
        padding-top: 0.5556vw;
    }

    .shop-list__item-list li {
        padding: 1.3889vw;
        box-shadow: 0 0.0694vw 0.4167vw rgba(0, 0, 0, .1);
    }

    .shop-list__item-btn .common-link-btn a {
        min-block-size: 3.4722vw;
    }

    .shop-list__item-btn .common-link-btn__text {
        font-size: 1.1111vw;
    }

    .shop-list__item-btn .common-link-btn a::after {
        width: 0.625vw;
    }

    .shop-list__item-text {
        font-size: 0.9027vw;
    }

    /* 営業所詳細ページ */
    .page_shop_single .common_page_wrap {
        padding: 5.2083vw 0 0;
    }

    .company_profile_sec .common-link-btn {
        margin-top: 3.4722vw;
    }

    .top-arrivals-sec.shop-single-property .common-link-btn {
        margin-top: 4.1667vw;
    }

    .page_shop_single .company_profile_sec {
        padding-bottom: 8.3333vw;
    }

}

@media (max-width: 750px) {

    .wrap {
        max-width: 90%;
    }

    a[href $='.pdf']::before {
        width: 7vw;
        height: 8vw;
        margin-right: 2.5vw;
    }

    a[href $='.pdf']:hover {
        text-decoration: underline;
    }

    body {
        font-size: 3.07vw !important;
        padding-top: 70px;
        min-width: 100% !important;
        line-height: 1.66 !important;
    }

    /* SP固定ページ 共通設定 */
    .common_page_wrap {
        padding: 15vw 0;
    }

    .reserve_text {
        font-size: 6vw;
    }

    /* パンくず */
    .breadcrumb {
        font-size: 2.5vw;
    }

    /* SP固定ページ 404ページ */
    #page_404 .num {
        font-size: 20vw;
        line-height: 1.5;
    }

    #page_404 .text {
        font-size: 3.5vw;
    }

    /* SP固定ページ サイトマップ */
    ul#sitemap_list li {
        margin: 0;
    }

    body #sitemap_list li a {
        font-size: 4vw;
        padding: 1vw 2vw;
        line-height: 9vw;
        margin-bottom: 1vw;
    }

    body #sitemap_list li.home-item {
        margin-bottom: 4vw;
    }

    body #sitemap_list {
        padding: 0;
    }

    /* ヘッダー */
    .sp-site-header {
        width: 100%;
        height: 70px;
        position: fixed;
        top: 0;
        left: 0;
        background-color: #FFF;
        padding: 11.5px 20px 11.5px 4px;
        z-index: 10002;
    }

    .sp-header__logo {
        width: 227px;
    }

    .sp-header__logo a {
        display: block;
    }

    .sp-header__logo a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .sp-header__menu .site-header__top-menu-flex {
        position: absolute;
        top: 18px;
        right: 64px;
        margin-bottom: 0;
        gap: 0 7px;
    }

    .sp-header__menu .icon-star {
        width: 35px;
    }

    .sp-header__menu .icon-time {
        width: 35px;
    }

    .sp-header__menu .icon-star svg {
        width: 21.15px;
    }

    .sp-header__menu .icon-time svg {
        width: 20px;
    }

    .hamburger-text-en {
        position: absolute;
        bottom: -15px;
        left: 0;
        line-height: 1;
        font-size: 12px;
        text-align: center;
        letter-spacing: .04em;
        color: #2B2B2B;
        transition: .5s;
    }

    .hamburger-text-en.-close {
        opacity: 0;
        visibility: hidden;
    }

    /* TOP メインビジュアル */
    .top-mv-sec {
        padding-block: 73.58vw 10.25vw;
        background-image: url(/wp-content/themes/swell_child/image/top_mv_sp.webp);
    }

    .top-mv__ttl {
        font-size: 4.1vw;
        line-height: 1.68;
        margin-bottom: 4.1vw;
    }

    .top-mv__ttl::before {
        content: none;
    }

    .top-mv__main {
        font-size: 6.41vw;
        line-height: 1.56;
        margin-bottom: 4.19vw;
    }

    .top-mv__main .small {
        font-size: 5.12vw;
    }

    .top-mv-sec .wrap.mid {
        max-width: 100%;
        padding-inline: 5% 0;
    }

    .top-mv__scroll-arrow {
        width: 4.54vw;
    }

    .mv-bg-font {
        bottom: auto;
        top: 0;
        right: 0;
        left: auto;
        writing-mode: vertical-rl;
    }

    .mv-bg-font__en {
        font-size: 20.51vw;
    }

    .top-mv-sec::before {
        background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .49));
    }

    /* TOP 物件を探す */
    .top-search-sec {
        padding-top: 20.51vw;
    }

    .common-sec-ttl {
        margin-bottom: 7.69vw;
    }

    .common-sec-ttl__en {
        font-size: 4.61vw;
        margin-bottom: 0.51vw;
    }

    .common-sec-ttl__jp {
        font-size: 7.17vw;
        margin-bottom: 2.56vw;
    }

    .common-sec-ttl__catch {
        font-size: 3.33vw;
        line-height: 1.61;
    }

    .top-search__cont {
        flex-direction: column;
        gap: 6.41vw;
    }

    .top-search__btn ul {
        grid-template-columns: 1fr;
        gap: 3.07vw;
    }

    .top-search-box {
        padding-right: 0;
    }

    .top-search__btn-img {
        width: 25.64vw;
    }

    .top-search__btn-img img {
        aspect-ratio: 1/1;
    }

    .top-search__btn-inner {
        padding: 6.15vw 5.12vw;
    }

    .top-search__btn-text {
        padding-bottom: 2.05vw;
    }

    .top-search__btn-ttl-en {
        font-size: 3.84vw;
        margin-bottom: 1.02vw;
    }

    .top-search__btn-ttl-jp {
        font-size: 3.84vw;
    }

    .common-btn-arrow-box {
        width: 7.17vw;
    }

    .common-btn-arrow-box::before {
        width: 2.56vw;
        translate: -0.5vw 0;
    }

    .top-search__btn {
        margin-bottom: 6.41vw;
    }

    .top-search__free-ttl-en {
        font-size: 4.61vw;
    }

    .top-search__free-ttl-jp {
        font-size: 3.07vw;
        display: block;
    }

    .top-search__free-ttl-jp::after {
        content: none;
    }

    .top-search__free-ttl {
        justify-content: unset;
        gap: 0 2.05vw;
        padding-left: 2.56vw;
        margin-bottom: 2.56vw;
    }

    .top-search__keyword-form .text {
        padding: 3.84vw 0 3.84vw 4.87vw;
    }

    .top-search__keyword-form .submit {
        width: 12.96vw;
        padding: 3.07vw 3.46vw;
        background-size: 6.038vw;
    }

    .top-search__keyword-form .text::placeholder {
        font-size: 3.07vw;
    }

    .top-search__request-btn {
        padding-left: 0;
        border: dashed 1px #707070;
        border-width: 1px 0 0;
        padding-top: 6.41vw;
    }

    .top-search__request-btn a {
        width: 100%;
        padding: 4.82vw 7.69vw;
        display: flex;
        align-items: center;
        gap: 0 4.1vw;
        text-align: left;
    }

    .top-search__request-top-treat {
        top: 2.05vw;
        left: 2.05vw;
        width: 85.64vw;
    }

    .top-search__request-top-treat::before,
    .top-search__request-top-treat::after {
        width: 3.07vw;
    }

    .top-search__request-bottom-treat {
        width: 85.64vw;
        left: 2.05vw;
        bottom: 5.12vw;
    }

    .top-search__request-bottom-treat::before,
    .top-search__request-bottom-treat::after {
        width: 3.07vw;
    }

    .top-search__request-icon {
        margin: 0;
        width: 12.82vw;
        flex-shrink: 0;
    }

    .top-search__request-icon svg {
        width: 7.52vw;
    }

    .top-search__request-ttl-en {
        font-size: 3.84vw;
        margin-bottom: 0.25vw;
    }

    .top-search__request-ttl-jp {
        font-size: 4.35vw;
    }

    /* TOP おすすめ物件特集 */
    .top-feature-sec {
        padding-block: 25.64vw 20.51vw;
    }

    .top-feature__list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 7.69vw 3.58vw;
    }

    .top-feature__item-ttl-box {
        padding-inline: 0;
        position: relative;
        top: 0;
        margin-bottom: 1vw;
    }

    .top-feature__item-ttl-en {
        color: #CBD5D5;
        font-size: 3.84vw;
        margin-bottom: 0.25vw;
    }

    .top-feature__item-ttl-jp {
        font-size: 3.84vw;
        color: #093B38;
    }

    .top-feature__ttl-num {
        font-size: 11.53vw;
        color: #F5F5F5;
        opacity: 1;
        position: absolute;
        top: -1.6vw;
        right: 0;
        z-index: -1;
    }

    .top-feature__ttl-num .small {
        font-size: 9.74vw;
    }

    .top-feature__item-main {
        padding-right: 0;
        letter-spacing: 0;
        color: #727272;
    }

    .top-feature-sec .common-btn-arrow-box {
        top: 18.5vw;
        bottom: auto;
    }

    .top-feature__item-img img {
        aspect-ratio: 42/25;
    }

    .top-feature__item-img::before {
        content: none;
    }

    .top-feature__list li a {
        padding-bottom: 6.15vw;
        border-bottom: dashed 1px #707070;
    }

    /* TOP 新着物件 */
    .top-arrivals-sec {
        padding-block: 17.94vw 20.76vw;
    }

    .top-arrivals-sec .common-sec-ttl {
        margin-bottom: 8.2vw;
    }

    .top-arrivals__list {
        overflow-x: scroll;
    }

    .top-arrivals__list ul {
        display: flex;
        gap: 0 6.15vw;
        padding-left: 1.28vw;
    }

    .top-arrivals__list li {
        flex-shrink: 0;
        width: 56.41vw;
    }

    .top-arrivals__item-img {
        margin-bottom: 3.07vw;
        aspect-ratio: 22 / 25;
    }

    .top-arrivals__item-text-box {
        margin-bottom: 4.61vw;
    }

    .top-arrivals__item-ttl {
        font-size: 3.84vw;
        margin-bottom: 2.82vw;
    }

    .top-arrivals__item-access {
        margin-bottom: 1.02vw;
    }

    .top-arrivals__item-price-box {
        padding-bottom: 3.07vw;
    }

    .top-arrivals__item-price-text {
        font-size: 5.64vw;
    }

    .top-arrivals__item-price-text .small {
        font-size: 3.07vw;
    }

    .top-arrivals__item-price-box .common-btn-arrow-box {
        width: 6.66vw;
    }

    .top-arrivals__item-price-box .common-btn-arrow-box::before {
        width: 2.05vw;
        translate: -0.3vw 0;
    }

    .top-arrivals__item-tab {
        width: 13.84vw;
        font-size: 4.1vw;
        top: 2.56vw;
        left: -1.28vw;
        line-height: 7.17vw;
    }

    /* TOP 高齢者向け住宅 */
    .top-nursing-sec {
        padding-top: 17.94vw;
    }

    .top-nursing-sec .common-sec-ttl {
        margin-bottom: 7.69vw;
    }

    .top-nursing-sec .common-sec-ttl__en {
        margin-bottom: 3.33vw;
    }

    .top-nursing-sec .common-sec-ttl__jp {
        margin-bottom: 3.33vw;
        letter-spacing: .1em;
    }

    .common-sec-ttl__jp .small {
        font-size: 4.1vw;
    }

    .top-nursing__list {
        margin-bottom: 8.97vw;
    }

    .top-nursing__list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 5.12vw 3.58vw;
    }

    .top-nursing__item-img {
        margin-bottom: 2.3vw;
    }

    .top-nursing__item-img img {
        aspect-ratio: 84/55;
    }

    .top-nursing__item-ttl {
        font-size: 3.58vw;
        gap: 0 1.79vw;
    }

    .top-nursing__item-ttl::before {
        width: 4.35vw;
    }

    .top-nursing__item-ttl-box .common-btn-arrow-box {
        width: 6.66vw;
    }

    .top-nursing__item-ttl-box {
        padding-bottom: 2.56vw;
        border-bottom: dashed 1px #B7B7B7;
    }

    .nursing-link-btn a {
        width: 56.41vw;
        min-block-size: 13.84vw;
        padding-inline: 5.12vw 4.1vw;
    }

    .nursing-link-btn__text {
        font-size: 4.1vw;
    }

    .nursing-link-btn__arrow {
        width: 3.84vw;
    }

    /* TOP 充実のサービス */
    .top-service-sec {
        padding-block: 20.51vw 20.51vw;
    }

    .top-service-sec .common-sec-ttl {
        margin-bottom: 11.28vw;
    }

    .top-service-sec .common-sec-ttl__en {
        margin-bottom: 3.33vw;
    }

    .top-service-sec .common-sec-ttl__jp {
        margin-bottom: 3.58vw;
    }

    .top-service__list ul {
        grid-template-columns: 1fr;
        gap: 6.66vw;
    }

    .top-service__list li {
        display: block;
        grid-row: unset;
        text-align: left;
        padding: 5.89vw 7.69vw 7.69vw;
    }

    .top-service__item-cont {
        display: flex;
        align-items: center;
        padding-bottom: 2.56vw;
        margin-bottom: 1.79vw;
        gap: 0 3.33vw;
    }

    .top-service__item-icon {
        width: 14.35vw;
        margin: 0;
        flex-shrink: 0;
    }

    .top-service__item-ttl {
        font-size: 4.35vw;
        display: block;
        align-items: unset;
        letter-spacing: .08em;
    }

    .top-service__item-text {
        font-size: 3.33vw;
        letter-spacing: .12em;
        line-height: 1.53;
    }

    .top-service__item-top-treat {
        width: 83.58vw;
        top: 3.07vw;
        left: 3.07vw;
    }

    .top-service__item-top-treat::before,
    .top-service__item-top-treat::after {
        width: 3.58vw;
    }

    .top-service__item-bottom-treat {
        width: 83.58vw;
        bottom: 6.66vw;
        left: 3.07vw;
    }

    .top-service__item-bottom-treat::before,
    .top-service__item-bottom-treat::after {
        width: 3.58vw;
    }

    .top-service__item-num {
        font-size: 5.12vw;
        color: #CFDEDD;
        top: -4.2vw;
    }

    /* フッターお問い合わせ */
    .ft-contact {
        padding-block: 14.61vw 14.1vw;
        background-image: url(/wp-content/themes/swell_child/image/ft_contact_bg_sp.webp);
    }

    .ft-contact .common-sec-ttl {
        margin-bottom: 6.92vw;
    }

    .ft-contact .common-sec-ttl__en {
        opacity: .7;
    }

    .ft-contact__btn-area {
        grid-template-columns: 1fr;
        padding-block: 3.07vw 4.61vw;
    }

    .ft-contact__btn-box+.ft-contact__btn-box {
        border-left: 0;
        margin-top: 4.61vw;
        padding-top: 3.33vw;
        border-top: solid 2px rgba(255, 255, 255, .35);
    }

    .ft-contact__btn-catch {
        font-size: 3.58vw;
        margin-bottom: 2.05vw;
    }

    .common-cta__btn a {
        width: 79.48vw;
        min-block-size: 15.38vw;
        font-size: 4.1vw;
        padding-inline: 5.46vw 4.87vw;
    }

    .icon-mail {
        width: 6.13vw;
    }

    .common-cta__btn a::after {
        width: 3.07vw;
    }

    .icon-request {
        width: 7.21vw;
    }

    /* フッター */
    .site-footer {
        padding-block: 10.25vw 32.3vw;
    }

    .site-footer__top {
        display: block;
        padding: 7.69vw 5.3vw 6.41vw;
        margin-bottom: 8.97vw;
    }

    .site-footer__company-img {
        width: 100%;
        margin-bottom: 2.56vw;
    }

    .site-footer__company-img img {
        aspect-ratio: 31/16;
    }

    .site-footer__info {
        border-left: 0;
        padding-left: 0;
    }

    .site-footer__logo {
        text-align: center;
        margin-bottom: 3.07vw;
    }

    .site-footer__logo a {
        width: 100%;
    }

    .site-footer__logo-text {
        font-size: 3.07vw;
        letter-spacing: .08em;
        line-height: 1.5;
    }

    .site-footer__logo a img {
        width: 68.07vw;
        margin-top: 0;
    }

    .site-footer__other-link {
        margin: 0 auto;
        margin-bottom: 6.15vw;
    }

    .site-footer__other-link a {
        padding-bottom: 3.07vw;
        gap: 0 4.1vw;
        padding-right: 2.17vw;
    }

    .site-footer__info-text {
        letter-spacing: .07em;
        line-height: 1.66;
    }

    .site-footer__small-menu ul {
        flex-wrap: wrap;
        gap: 1.53vw 10.25vw;
    }

    .site-footer__small-menu li+li::before {
        height: 3.84vw;
        left: -5.4vw;
    }

    .site-footer__small-menu li:last-child::before {
        content: none;
    }

    .site-footer__copyright {
        background-color: transparent;
        padding-block: 0;
        margin-top: 4.87vw;
    }

    .site-footer__copyright small {
        font-size: 3.07vw;
        color: #A2A2A2;
        letter-spacing: .05em;
    }

    /* 追従ボタン */
    .sp-site-fixed {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 99;
    }

    .sp-site-fixed a {
        display: block;
        background-color: #074541;
        padding: 2.05vw;
    }

    .sp-site-fixed__text {
        font-size: 3.84vw;
        letter-spacing: .12em;
        color: #FFF;
        font-weight: 700;
        line-height: 1.4;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
    }

    .icon-fixed-request {
        width: 6.03vw;
        line-height: 1;
        flex-shrink: 0;
    }

    .icon-fixed-request img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .sp-site-fixed__inner {
        display: flex;
        min-block-size: 15.89vw;
        align-items: center;
        border: solid 1.53vw #FFF;
        padding-inline: 18vw 5.12vw;
        gap: 0 8vw;
    }

    .sp-site-fixed__text::after {
        content: "";
        aspect-ratio: 1 / 1;
        min-width: 0;
        border: solid 2px #FFF;
        border-width: 2px 2px 0 0;
        rotate: 45deg;
        transition: .3s;
        width: 2.56vw;
        flex-shrink: 0;
    }

    /* ホバー */
    .site-header__top-menu-item a:hover {
        opacity: 1;
    }

    .site-header__bottom-menu-item a:hover {
        opacity: 1;
    }

    .hd-contact-btn a:hover {
        background-color: #074541;
    }

    .hd-contact-btn a:hover .hd-contact-btn__text {
        color: #FFF;
    }

    .hd-contact-btn a:hover .hd-contact-btn__text::after {
        border-color: #FFF;
    }

    .hd-contact-btn a:hover .icon-hd-request svg path {
        fill: #89aaa8;
    }

    .site-fixed-btn a:hover {
        opacity: 1;
    }

    .top-search__btn li a:hover .top-search__btn-img img {
        scale: 1;
    }

    .top-search__btn li a:hover .common-btn-arrow-box {
        background-color: var(--main-color);
        border-color: var(--main-color);
    }

    .top-search__btn li a:hover .common-btn-arrow-box::before {
        border-color: #FFF;
    }

    .top-search__request-btn a:hover {
        background-color: var(--main-color);
    }

    .top-search__request-btn a:hover .top-search__request-icon {
        background-color: #FFF;
    }

    .top-search__request-btn a:hover .top-search__request-ttl-jp {
        color: #FFF;
    }

    .top-search__request-btn a:hover .top-search__request-icon svg path {
        fill: #21514f;
    }

    .top-feature__list li a:hover img {
        scale: 1;
    }

    .top-feature__list li a:hover .top-feature__item-img::before {
        background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, .5) 100%);
        opacity: 1;
    }

    .top-feature__list li a:hover .common-btn-arrow-box {
        background-color: var(--main-color);
        border-color: var(--main-color);
    }

    .top-feature__list li a:hover .common-btn-arrow-box::before {
        border-color: #FFF;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-img::before {
        background-color: transparent;
        opacity: 1;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-img img {
        scale: 1;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box {
        background-color: #DEE8E8;
    }

    .top-arrivals__list li a:hover .top-arrivals__item-price-box .common-btn-arrow-box::before {
        border-color: #093B38;
    }

    .top-nursing__list li a:hover .top-nursing__item-img img {
        scale: 1;
    }

    .top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box {
        background-color: #FFF4F4;
    }

    .top-nursing__list li a:hover .top-nursing__item-ttl-box .common-btn-arrow-box::before {
        border-color: #CB716E;
    }

    .nursing-link-btn a:hover {
        background-color: #CB716E;
    }

    .nursing-link-btn a:hover .nursing-link-btn__text {
        color: #FFF;
    }

    .nursing-link-btn a:hover svg path {
        stroke: #fff;
    }

    .common-cta__btn a:hover {
        opacity: 1;
    }

    .site-footer__menu-list li a:hover {
        opacity: 1;
    }

    .site-footer__recommend-menu li a:hover {
        opacity: 1;
    }

    .site-footer__small-menu li a:hover {
        opacity: 1;
    }

    .common-link-btn a:hover {
        opacity: 1;
    }

    .site-footer__other-link a:hover {
        opacity: 1;
    }

    /* 共通 */
    .common_page_h1_cont {
        padding: 3vw 5vw;
        height: auto;
        border-radius: 5px;
        text-align: center;
        width: 100%;
    }

    .common_page_h1_cont .en {
        font-size: 5vw;
    }

    .common_page_h1_box {
        padding: 10vw 0;
        background-image: url(/wp-content/themes/swell_child/image/top_arrivals_bg.webp);
    }

    .common_page_h1_box .wrap {
        padding: 0;
    }

    .common_page_h1_cont h1 {
        font-size: 5.5vw;
    }

    /* TOP追加 */
    .top-office-link ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2.05vw;
    }

    .top-office-link li a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-block-size: 12.3vw;
        background-color: #E8EDED;
        font-size: 3.33vw;
        font-weight: 600;
        letter-spacing: .12em;
        line-height: 1.46;
        padding-inline: 3.84vw 3.58vw;
        color: #093B38;
    }

    .top-office-link li a::after {
        content: "";
        width: 2.56vw;
        aspect-ratio: 1/1;
        min-width: 0;
        border: solid #093B38;
        border-width: 1.5px 1.5px 0 0;
        flex-shrink: 0;
        rotate: 45deg;
    }

    .top-office-link {
        margin-bottom: 8.97vw;
    }

    .common-link-btn a {
        width: 56.41vw;
        min-block-size: 13.84vw;
        padding-inline: 5.12vw 4.87vw;
    }

    .common-link-btn__text {
        font-size: 4.1vw;
    }

    .common-link-btn a::after {
        width: 3.07vw;
    }

    .top-office-sec {
        padding-bottom: 20.51vw;
    }

    .top-office-link li .office-link__other-color {
        background-color: #E4EFEF;
    }

    /* 営業所一覧ページ */
    .shop-list__item-list ul {
        grid-template-columns: 1fr;
        gap: 6vw;
    }

    .shop-list__item-btn {
        gap: 1.5vw;
        margin-top: 3vw;
    }

    .shop-list__item-ttl {
        font-size: 4.6vw;
        margin-bottom: 1.5vw;
        border-left: solid 3px var(--main-color);
        letter-spacing: .03em;
        line-height: 1.5;
    }

    .shop-list__item-cont {
        padding-top: 2vw;
    }

    .shop-list__item-list li {
        padding: 4vw 3vw;
    }

    .shop-list__item-btn .common-link-btn a {
        min-block-size: 13vw;
    }

    .shop-list__item-btn .common-link-btn__text {
        font-size: 3.3vw;
    }

    .shop-list__item-btn .common-link-btn a::after {
        width: 1.8vw;
    }

    .shop-list__item-text {
        font-size: 3.1vw;
    }


    .shop-list__item-text.-tel {
        font-size: 3.6vw;
        margin-top: 2.5vw;
    }

    .shop-list__item-text.-fax {
        font-size: 3.6vw;
    }

    .shop-list__item-text.-tel .large {
        font-size: 180%;
    }

    .page-template-page-shop_list .site-footer,
    .page-template-page-company .site-footer {
        padding-block: 10.25vw 12.3vw;
    }

    /* 営業所詳細ページ */
    .page_shop_single .common_page_wrap {
        padding: 15vw 0 0;
    }

    .company_profile_sec .common-link-btn {
        margin-top: 7vw;
    }

    .top-arrivals-sec.shop-single-property .common-link-btn {
        margin-top: 12vw;
    }

    .page_shop_single .company_profile_sec {
        padding-bottom: 17.94vw;
    }
}