@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: #101A4F;
    --sub-color: #B71B1B;
    --black-color: #2B2B2B;
    --font-color: #150500;
}

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

.f-en {
    font-family: "Inter", sans-serif;
}

body {
    color: #150500 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    min-width: 1440px !important;
    padding-top: 100px;
    background-color: #F9F9F9 !important;
    font-weight: 400;
}

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

.wrap.mid {
    width: 1240px;
}

.wrap.lr {
    width: 1340px;
}

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;
}

.flex {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
}

.flex-sb {
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    justify-content: space-between;
}

/* PC固定ページ 共通設定 */
.common_page_wrap {
    padding: 100px 0;
}

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

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

/* パンくず */
.breadcrumb {
    font-size: 13px;
    font-weight: 500;
    letter-spacing: .025em;
    color: #B8B5B5;
    margin-top: 10px;
}

.single-staff-fv .breadcrumb {
    margin-top: 0;
    margin-bottom: 80px;
}

.breadcrumb a {
    color: #B8B5B5;
    border-bottom: solid 1px currentColor;
    display: inline-block;
    line-height: 1.3;
}

.breadcrumb span {
    display: inline-block;
    margin-inline: 7px;
}

.breadcrumb span:first-of-type {
    margin-left: 0;
}

.breadcrumb span:last-of-type {
    margin-right: 0;
}

.breadcrumb .current-item {
    color: #150500;
}

/* 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;
    top: 0;
    left: 0;
    width: 100%;
    padding: 17px 50px 15px;
    background-color: var(--main-color);
    z-index: 100;
    min-width: 1440px;
}

.site-header__logo {
    width: 180px;
    flex-shrink: 0;
}

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

.site-header__top {
    display: flex;
    align-items: center;
    gap: 0 30px;
    margin-bottom: 15px;
}

.site-header__bottom {
    display: flex;
    align-items: center;
    gap: 0 46px;
    justify-content: flex-end;
}

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

.site-header__top-menu-box {
    display: flex;
    align-items: center;
    gap: 0 20px;
}

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

.icon-favorite {
    width: 18px;
    flex-shrink: 0;
    line-height: 1;
}

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

.site-header__top-menu-text {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.46;
    letter-spacing: .025em;
    color: #FFF;
    display: block;
}

.icon-check {
    width: 18px;
    line-height: 1;
    flex-shrink: 0;
}

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

.site-header__tel-box {
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.site-header__tel {
    display: flex;
    align-items: center;
    gap: 0 3px;
}

.icon-tel {
    width: 16px;
    flex-shrink: 0;
    line-height: 1;
}

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

.site-header__tel-text {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.18;
    letter-spacing: .025em;
    color: #FFF;
}

.site-header__time-text {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .025em;
    line-height: 1.3;
    color: #FFF;
}

.site-header__btn-box {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.site-header__btn a {
    width: 136px;
    display: grid;
    place-content: center;
    min-block-size: 29px;
    border-radius: 100vmax;
    border: solid 1px #FFF;
    font-size: 13px;
    letter-spacing: .025em;
    line-height: 1.46;
    font-weight: 500;
    color: #FFF;
    transition: .3s;
}

.site-header__btn.-line a {
    background-color: #00B829;
    border-color: #00B829;
}

.site-header__search-menu-item a {
    color: #FFF;
    display: block;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .025em;
    transition: .3s;
}

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

.site-header__search-menu-item+.site-header__search-menu-item::before {
    content: "";
    width: 1px;
    height: 19px;
    background-color: #F0EEEC;
    opacity: .3;
    position: absolute;
    top: 50%;
    left: -30px;
    translate: 0 -50%;
}

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

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

.top-mv__voice-box {
    width: 460px;
    background-color: rgba(255, 255, 255, .2);
    margin-right: -30px;
    margin-top: 10px;
    padding: 25px 30px 20px;
}

.top-mv__main-text {
    font-size: 20px;
    color: #FFF;
    font-weight: 500;
    letter-spacing: .055em;
}

.top-mv__ttl {
    display: flex;
    align-items: center;
    gap: 0 8px;
}

.top-mv__ttl-en {
    color: #FFF;
    font-size: 60px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.2;
}

.top-mv-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #1D1D1D;
    opacity: .36;
    mix-blend-mode: multiply;
    z-index: -1;
}

.top-mv__cont {
    padding-left: 50px;
}

.top-mv__ttl-img {
    width: 277px;
    flex-shrink: 0;
    margin-bottom: 24px;
}

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

.top-mv__voice-box .top-mv__voice-slider {
    margin-bottom: 10px;
}

.top-mv__voice-slider .slick-slide img {
    width: 100px;
    aspect-ratio: 1/1;
    min-width: 0;
    object-fit: cover;
    flex-shrink: 0;
}

.top-mv__voice-slider .slick-slide a {
    display: flex;
    gap: 0 20px;
    align-items: center;
    color: #FFF;
}

.top-mv__voice-item-cont {
    width: 100%;
}

.top-mv__voice-date {
    font-size: 12px;
    font-weight: 300;
    letter-spacing: .025em;
    line-height: 1.25;
    margin-bottom: 5px;
}

.top-mv__voice-ttl {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .025em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    margin-bottom: 10px;
}

.top-mv__voice-item-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 10px;
    line-height: 1.7;
    letter-spacing: .025em;
}

.top-mv__voice-more-btn a {
    color: #FFF;
    letter-spacing: .025em;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0 10px;
    width: fit-content;
    margin-left: auto;
    line-height: 1.43;
}

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

.top-mv__voice-slider .slick-dots {
    bottom: -30px;
    left: 20px;
    width: fit-content;
}

.top-mv__voice-slider .slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 6px;
}

.top-mv__voice-slider .slick-dots li button {
    width: 8px;
    height: 8px;
    background-color: #FFF;
    padding: 0;
    border-radius: 50%;
    transition: .3s;
}

.top-mv__voice-slider .slick-dots li button::before {
    content: none;
}

.top-mv__voice-slider .slick-dots li.slick-active button {
    opacity: 0.6;
}

.top-mv__voice-arrow-prev {
    rotate: -135deg;
}

.top-mv__voice-slider .slick-arrow {
    width: 12px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #FFF;
    border-width: 2px 2px 0 0;
    position: absolute;
    bottom: -31px;
    cursor: pointer;
}

.top-mv__voice-arrow-next {
    rotate: 45deg;
    left: 85px;
}

/* TOP バナー */
.top-banner-item {
    width: 370px;
    margin-left: 16px;
}

.top-banner-item a {
    display: block;
    width: 100%;
    height: 100%;
    transition: .3s;
}

.top-banner-item a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-banner-sec.pc {
    margin-bottom: 120px;
}

.top-banner-slider.slick-initialized {
    margin-bottom: 0;
}

.top-banner-sec {
    margin-bottom: 120px;
}

/* TOP ナイター営業 */
.cta-night-sec__outer {
    background-image: url(/wp-content/themes/swell_child/image/top_night_bg.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    padding-block: 168px 148px;
    z-index: 0;
    clip-path: polygon(0 85px, 100% 0%, 100% calc(100% - 85px), 0% 100%);
}

.cta-night__bg-text-track {
    position: absolute;
    display: flex;
    align-items: center;
    width: max-content;
    gap: 0 4em;
    will-change: transform;
    transform: translateZ(0);
}

.cta-night__bg-text {
    font-size: 160px;
    color: #555555;
    letter-spacing: .025em;
    font-weight: 300;
    line-height: 1;
    display: inline-block;
    flex-shrink: 0;
}

.cta-night__bg-text-track.-top {
    top: 0;
    left: 0;
    animation: text-scroll 40s linear infinite;
}

@keyframes text-scroll {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-25%, 0, 0);
    }
}

.cta-night__bg-text-track.-bottom {
    bottom: -37px;
    left: 0;
    transform: scale(1, -1);
    animation: text-scroll-rever 40s linear infinite;
}

@keyframes text-scroll-rever {
    from {
        transform: translate3d(-25%, 0, 0) scale(1, -1);
    }

    to {
        transform: translate3d(0, 0, 0) scale(1, -1);
    }
}

.cta-night__ttl {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .055em;
    margin-bottom: 20px;
    padding-bottom: 4px;
    border-bottom: solid 2px #FFF;
    display: inline-block;
}

.cta-night__ttl-en {
    font-size: 72px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.2;
    margin-bottom: 25px;
}

.cta-night__main {
    font-size: 18px;
    letter-spacing: .055em;
    line-height: 1.64;
    margin-bottom: 44px;
}

.cta-night__btn-box {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 15px;
}

.cta-night__cont {
    text-align: center;
    color: #FFF;
}

.cta-night-sec__outer::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #150500;
    opacity: 1;
    mix-blend-mode: multiply;
    z-index: -1;
    transition: .3s;
}

.cta-night-sec {
    position: relative;
}

.cta-night-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--main-color);
    clip-path: polygon(0 0, 100% 85px, 100% 100%, 0 calc(100% - 85px));
}

.cta-night__btn a {
    display: grid;
    place-content: center;
    min-block-size: 70px;
    border: solid 2px #FFF;
    width: 320px;
    border-radius: 5px;
    font-size: 18px;
    letter-spacing: .025em;
    font-weight: 700;
    transition: .3s;
}

/* TOP スタッフをご紹介 */
.top-staff-sec {
    padding-top: 159px;
}

.top-staff-ttl__main {
    font-size: 32px;
    letter-spacing: .025em;
    font-weight: 700;
    line-height: 1.46;
    margin-bottom: 33px;
}

.top-staff-ttl__main .large {
    display: block;
    font-size: 56px;
    letter-spacing: .055em;
}

.top-staff-ttl {
    margin-bottom: 64px;
}

.top-staff-ttl__catch {
    font-size: 18px;
    letter-spacing: .025em;
    line-height: 2;
}

.top-staff__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px 10px;
}

.top-staff__list {
    padding-right: 100px;
    position: relative;
}

.top-staff__list li a {
    display: grid;
    align-items: flex-end;
    position: relative;
    height: 100%;
}

.top-staff-list__item-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    transition: .3s;
}

.top-staff-list__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-staff__list li {
    height: 520px;
    border-radius: 10px;
    overflow: hidden;
}

.top-staff-list__item-ttl-box {
    padding: 0 30px 34px;
    color: #FFF;
}

.top-staff-list__item-num {
    font-size: 10px;
    font-weight: 500;
    line-height: 1.22;
    border-bottom: solid 1px #FFF;
    display: inline-block;
    margin-bottom: 8px;
}

.top-staff-list__item-img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(29, 29, 29, .5), rgba(104, 104, 104, 0));
}

.top-staff-ttl__main .color {
    color: var(--main-color);
}

.top-staff-list__item-num .large {
    font-size: 14px;
}

.top-staff-list__item-ttl-jp {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
}

.top-staff-list__item-ttl-en {
    letter-spacing: .025em;
    font-weight: 500;
    line-height: 1.21;
}

.top-staff-list__item-ttl {
    display: flex;
    align-items: baseline;
    gap: 0 10px;
    margin-bottom: 2px;
}

.top-staff-list__item-post {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .015em;
}

.top-staff-bg-font {
    font-size: 152px;
    font-weight: 700;
    letter-spacing: .025em;
    color: var(--main-color);
    opacity: .1;
    line-height: 1.21;
    position: absolute;
    top: -383px;
    right: -86px;
    writing-mode: tb-rl;
    white-space: nowrap;
}

/* 不動産・賃貸物件を探す */
.top-search-sec {
    padding-block: 141px 87px;
    position: relative;
}

.common-sec-ttl__main {
    font-size: 38px;
    font-weight: 700;
    letter-spacing: .09em;
    line-height: 1.45;
    margin-bottom: 26px;
}

.common-sec-ttl__main .large {
    font-size: 50px;
    display: block;
}

.common-sec-ttl {
    text-align: center;
}

.common-sec-ttl__main .color {
    color: var(--main-color);
}

.common-sec-ttl__catch {
    font-size: 18px;
    letter-spacing: .08em;
    line-height: 1.55;
}

.top-search-sec .common-sec-ttl {
    margin-bottom: 34px;
}

.top-search__bg {
    position: absolute;
    width: 100%;
    z-index: -1;
    bottom: 0;
    left: 0;
}

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

.top-search__btn-bg {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: .3s;
}

.top-search__btn-line .top-search__btn-bg {
    background-image: url(/wp-content/themes/swell_child/image/top_search_img1.webp);
}

.top-search__btn-area .top-search__btn-bg {
    background-image: url(/wp-content/themes/swell_child/image/top_search_img2.webp);
}

.top-search__btn-request .top-search__btn-bg {
    background-image: url(/wp-content/themes/swell_child/image/top_search_img3.webp);
}

.top-search__btn li a {
    display: grid;
    place-content: center;
    height: 100%;
    position: relative;
    z-index: 0;
}

.top-search__btn li {
    height: 370px;
    overflow: hidden;
}

.top-search__btn-ttl-jp {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.17em;
    writing-mode: vertical-rl;
    color: #FFF;
    margin: 0 auto;
    border: solid 1px #FFF;
    line-height: 1;
    width: 54px;
    min-height: 260px;
    padding: 15px;
    display: grid;
    place-content: center;
    border-radius: 1px;
}

.top-search__btn-ttl-en {
    rotate: -6deg;
    margin-top: -19px;
}

.top-search__btn-ttl-en img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.top-search__btn li a::before {
    content: "";
    background-color: #150500;
    position: absolute;
    inset: 0;
    opacity: .45;
    z-index: 0;
    mix-blend-mode: multiply;
}

.top-search__btn li a::after {
    content: "";
    width: calc(100% - 20px);
    aspect-ratio: 1/1;
    position: absolute;
    top: 10px;
    left: 10px;
    border: solid 2px #F0EEEC;
}

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

.top-search__free {
    text-align: center;
    color: #FFF;
    margin-bottom: 24px;
}

.top-search__tag ul {
    display: flex;
    align-items: center;
    gap: 0 20px;
    justify-content: center;
}

.top-search__bg::before {
    content: "";
    background: linear-gradient(to top, rgba(16, 26, 79, .8), #000A34 60%);
    position: absolute;
    inset: 0;
}

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

.top-search__free-ttl-jp {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .025em;
    margin-bottom: 7px;
}

.top-search__free-ttl-en {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.21;
}

.top-search__free-ttl {
    margin-bottom: 9px;
}

.top-search__free-catch {
    font-size: 16px;
    letter-spacing: .025em;
    margin-bottom: 24px;
}

.top-search__tag li a {
    display: block;
    color: #FFF;
    font-weight: 500;
    letter-spacing: .025em;
    line-height: 1.42;
    border-bottom: solid 1px #FFF;
    transition: .3s;
}

.top-search__keyword-form {
    border: solid 1px #D3D3D3;
    border-radius: 5px;
    overflow: hidden;
    width: 580px;
    margin: 0 auto;
    text-align: left;
}

.top-search__keyword-form .text {
    width: 100%;
    padding: 13px 0 13px 20px;
    border: none;
    color: #150500;
    background-color: #F4F4F4;
    font-size: 16px;
}

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

.top-search__keyword-form .text::placeholder {
    font-size: 16px;
    letter-spacing: .025em;
    color: rgba(21, 5, 0, .3);
}

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

.top-search__btn-text {
    position: relative;
}

/* TOP こだわり不動産・賃貸条件特集 */
.top-feature-sec {
    padding-top: 120px;
}

.top-feature-sec .wrap {
    width: 1400px;
}

.top-feature__ttl-box {
    display: flex;
    align-items: center;
    margin: 0 0 42px 130px;
    gap: 0 10px;
}

.top-feature__ttl-en {
    font-size: 32px;
    letter-spacing: .025em;
    font-weight: 700;
    color: var(--main-color);
    line-height: 1.21;
}

.top-feature__ttl-jp {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .025em;
}

.top-feature__grid-items ul {
    display: grid;
    grid-template-columns: 412fr 465fr 503fr;
    grid-template-rows: repeat(6, 1fr);
    gap: 10px;
}

.top-feature__flex-box {
    display: flex;
    gap: 0 20px;
    overflow-x: scroll;
}

.top-feature__grid-items {
    flex-shrink: 0;
    width: 100%;
}

.feature-grid-item.-item1 {
    grid-area: 1 / 1 / 4 / 3;
}

.feature-grid-item.-item2 {
    grid-area: 4 / 1 / 7 / 2;
}

.feature-grid-item.-item3 {
    grid-area: 4 / 2 / 7 / 3;
}

.feature-grid-item.-item4 {
    grid-area: 1 / 3 / 3 / 4;
    height: 230px;
}

.feature-grid-item.-item5 {
    grid-area: 3 / 3 / 5 / 4;
    height: 230px;
}

.feature-grid-item.-item6 {
    grid-area: 5 / 3 / 7 / 4;
    height: 230px;
}

.feature-grid-item.-item7 {
    grid-area: 1 / 1 / 4 / 3;
}

.feature-grid-item.-item8 {
    grid-area: 4 / 1 / 7 / 2;
}

.feature-grid-item.-item9 {
    grid-area: 4 / 2 / 7 / 3;
}

.feature-grid-item.-item10 {
    grid-area: 1 / 3 / 3 / 4;
    height: 230px;
}

.feature-grid-item.-item11 {
    grid-area: 3 / 3 / 5 / 4;
    height: 230px;
}

.feature-grid-item.-item12 {
    grid-area: 5 / 3 / 7 / 4;
    height: 230px;
}

.feature-grid-item.-item1 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img1.webp);
}

.feature-grid-item.-item2 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img2.webp);
}

.feature-grid-item.-item3 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img3.webp);
}

.feature-grid-item.-item4 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img4.webp);
}

.feature-grid-item.-item5 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img5.webp);
}

.feature-grid-item.-item6 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img6.webp);
}

.feature-grid-item.-item7 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img7.webp);
}

.feature-grid-item.-item8 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img8.webp);
}

.feature-grid-item.-item9 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img9.webp);
}

.feature-grid-item.-item10 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img10.webp);
}

.feature-grid-item.-item11 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img11.webp);
}

.feature-grid-item.-item12 .feature-grid-item__bg {
    background-image: url(/wp-content/themes/swell_child/image/top_feature_img12.webp);
}

.feature-grid-item a {
    display: block;
    height: 100%;
    position: relative;
}

.feature-grid-item {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 350px;
    border-radius: 5px;
    overflow: hidden;
}

.feature-grid-item__bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #1D1D1D;
    opacity: .28;
}

.feature-grid-item__text-box {
    color: #FFF;
    padding: 0 25px 30px;
    position: relative;
}

.feature-grid-item__ttl {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .055em;
    border-bottom: solid 1px #FFF;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 11px;
}

.feature-grid-item__main {
    letter-spacing: .005em;
}

/* アニメーション こだわり不動産・賃貸条件特集 */
.feature-grid-item__inner {
    position: absolute;
    inset: 0;
    display: grid;
    align-items: flex-end;
}

.page-top .feature-grid-item__inner {
    transition: transform 1s cubic-bezier(0.6, 0, 0.1, 1);
}

/* 上から */
.page-top .-item1 .feature-grid-item__inner {
    transform: translateY(-120%) scale(1.12);
}

/* 左から */
.page-top .-item2 .feature-grid-item__inner,
.page-top .-item3 .feature-grid-item__inner {
    transform: translateX(-120%) scale(1.12);
}

/* 右から */
.page-top .-item4 .feature-grid-item__inner,
.page-top .-item5 .feature-grid-item__inner,
.page-top .-item6 .feature-grid-item__inner {
    transform: translateX(120%) scale(1.12);
}

.page-top .feature-grid-item.is-show .feature-grid-item__inner {
    transform: translate(0, 0) scale(1);
}

.feature-grid-item__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: .3s;
}

/* 上から */
.page-top .-item7 .feature-grid-item__inner {
    transform: translateY(-120%) scale(1.12);
}

/* 左から */
.page-top .-item8 .feature-grid-item__inner,
.page-top .-item9 .feature-grid-item__inner {
    transform: translateX(-120%) scale(1.12);
}

/* 右から */
.page-top .-item10 .feature-grid-item__inner,
.page-top .-item11 .feature-grid-item__inner,
.page-top .-item12 .feature-grid-item__inner {
    transform: translateX(120%) scale(1.12);
}

.page-top .top-feature__grid-items:nth-child(2) .feature-grid-item {
    opacity: 0;
}

.page-top .top-feature__grid-items:nth-child(2) .feature-grid-item.is-show {
    opacity: 1;
}

.page-top .feature-grid-item {
    transition: opacity 0.3s ease;
}

/* TOP 不動産ブログ */
.top-blog-sec {
    padding-block: 187px 104px;
}

.top-blog__top {
    margin-bottom: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

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

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

.top-blog-item__img {
    height: 155px;
    margin-bottom: 15px;
    border-radius: 5px;
    overflow: hidden;
}

.top-blog-item__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.top-blog-item__main-ttl {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.4;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.top-blog-item__main-text {
    letter-spacing: .015em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.common-left-ttl {
    display: flex;
    align-items: center;
    gap: 0 13px;
}

.common-left-ttl__en {
    font-size: 48px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.23;
}

.common-left-ttl__jp {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.6;
}

.common-more-btn {
    flex-shrink: 0;
}

.common-more-btn a {
    display: grid;
    place-content: center;
    width: 300px;
    min-block-size: 64px;
    border-radius: 5px;
    background-color: var(--main-color);
    padding: 15px;
    transition: .3s;
    border: solid 1px var(--main-color);
}

.common-more-btn__text {
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .025em;
    transition: .3s;
}

.common-left-ttl__en .color {
    color: var(--main-color);
}

/* TOP 不動産お役立ちコンテンツ */
.top-useful-sec {
    position: relative;
    padding-block: 147px 133px;
}

.top-useful-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #EBEBEB;
    z-index: -1;
    clip-path: polygon(0 50px, 100% 0%, 100% calc(100% - 50px), 0% 100%);
}

.top-useful-sec .common-left-ttl {
    margin-bottom: 35px;
}

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

.top-useful__list li:nth-child(3n+2) {
    margin-top: 30px;
}

.top-useful__list li:nth-child(3n+3) {
    margin-top: 60px;
}

.top-useful-item__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.top-useful-item__img {
    border-radius: 5px;
    overflow: hidden;
    height: 260px;
    margin-bottom: 20px;
}

.top-useful-item__ttl-box {
    display: flex;
    align-items: center;
    gap: 0 9px;
    margin-bottom: 12px;
}

.top-useful-item__ttl-num {
    font-weight: 500;
    line-height: 1.21;
    translate: 0 -0.2em;
    flex-shrink: 0;
}

.top-useful-item__ttl {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.2;
    border-bottom: solid 1px;
}

.top-useful-item__text {
    letter-spacing: .015em;
}

/* TOP お客様の声・Google口コミ */
.top-voice__flex-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: flex-start;
}

.top-voice__common-box {
    background-color: #FFF;
    padding: 45px 30px;
}

.top-voice__common-box.-kuchikomi {
    background-color: var(--main-color);
    margin-top: 70px;
}

.top-voice-sec {
    padding-top: 112px;
}

.top-voice-ttl {
    margin-bottom: 25px;
}

.top-voice__common-box.-kuchikomi .top-voice-ttl {
    margin-bottom: 35px;
    color: #FFF;
}

.top-voice-ttl__en {
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .025em;
    line-height: 1.21;
    margin-bottom: 35px;
}

.top-voice__common-box.-kuchikomi .top-voice-ttl__en {
    margin-bottom: 25px;
}

.top-voice-ttl__jp {
    font-size: 40px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.47;
    margin-bottom: 9px;
}

.top-voice-ttl__catch {
    letter-spacing: .055em;
    font-weight: 500;
}

.top-voice__item-list {
    height: 366px;
    overflow-y: scroll;
    margin-bottom: 35px;
}

.top-voice-item a {
    display: flex;
    gap: 0 20px;
    padding: 20px;
}

.voice-item__img {
    width: 120px;
    aspect-ratio: 1/1;
    min-width: 0;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 5px;
}

.voice-item__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.top-voice-item__main {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.top-voice-item__main-top {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.top-voice-item__tag {
    font-weight: 700;
    letter-spacing: .025em;
    width: 78px;
    min-block-size: 30px;
    background-color: #EAE7E7;
    border-radius: 2px;
    display: grid;
    place-content: center;
    margin-right: 10px;
}

.top-voice-item__star img {
    width: 21px;
}

.top-voice-item__stra-num {
    font-size: 26px;
    font-weight: 700;
    color: #B71B1B;
    margin-left: 8px;
    letter-spacing: .025em;
    line-height: 1.19;
}

.top-voice-item__main-ttl {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 8px;
}

.top-voice-item__main-more {
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0 10px;
    margin-top: auto;
}

.top-voice-item__main-more::before {
    content: "";
    width: 9px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #150500;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    flex-shrink: 0;
}

.top-voice-item {
    border-radius: 5px;
    overflow: hidden;
    border: solid 1px #EAE7E7;
}

.top-voice-item+.top-voice-item {
    margin-top: 10px;
}

.top-voice-kuchikomi-item__top {
    display: flex;
    align-items: center;
    gap: 0 20px;
    padding-bottom: 15px;
    border-bottom: solid 1px #F0EEEC;
    margin-bottom: 20px;
}

.top-voice-kuchikomi-item {
    background-color: #FFF;
    border-radius: 5px;
    overflow: hidden;
    padding: 33px 25px 31px;
}

.top-voice-kuchikomi-item+.top-voice-kuchikomi-item {
    margin-top: 10px;
}

.top-voice-kuchikomi-item__top-img {
    width: 60px;
    flex-shrink: 0;
}

.top-voice-kuchikomi-item__top-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.top-voice-kuchikomi-item__top-text {
    width: 100%;
}

.top-voice-kuchikomi-item__star-box {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
    gap: 0 10px;
}

.top-voice-item__star {
    display: flex;
    align-items: center;
    gap: 0 2px;
}

.top-voice-kuchikomi-item__star {
    display: flex;
    align-items: center;
    gap: 0 3px;
}

.top-voice-kuchikomi-item__star img {
    width: 20px;
}

.top-voice-kuchikomi-item__stra-num {
    font-size: 24px;
    font-weight: 700;
    color: #B71B1B;
    line-height: 1.2;
}

.top-voice-kuchikomi-item__main-ttl {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .025em;
}

.top-voice-kuchikomi-item__main-text {
    letter-spacing: .015em;
}

.top-voice__common-box.-kuchikomi .common-more-btn a {
    border: solid 2px #FFF;
}

/* TOP 選ばれる理由 */
.top-reason-sec {
    padding-block: 130px;
}

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

.common-center-ttl__en {
    font-size: 48px;
    font-weight: 700;
    color: var(--main-color);
    letter-spacing: .025em;
    line-height: 1.22;
    margin-bottom: 10px;
}

.common-center-ttl__jp {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .055em;
}

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

.top-reason__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

.top-reason__item-img {
    height: 260px;
    margin-bottom: 20px;
}

.top-reason__item-ttl {
    font-size: 20px;
    text-align: center;
    font-weight: 700;
    letter-spacing: .025em;
    margin-bottom: 15px;
}

.top-reason__item-text {
    letter-spacing: .015em;
}

.top-reason__item-ttl .color {
    color: var(--main-color);
    display: inline-block;
    background: linear-gradient(to top, #DDD4D3 20%, transparent 20%);
    line-height: 1.25;
}

/* TOP 新着不動産・賃貸物件情報 */
.top-arrival-sec {
    background-color: var(--main-color);
    padding-block: 120px 218px;
}

.top-arrival-sec .common-left-ttl {
    color: #FFF;
    margin-bottom: 25px;
}

.common-arrival__tab-box ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    align-items: center;
    border-bottom: solid 1px #F0EEEC;
}

.common-arrival__tab-box ul li {
    color: #FFF;
    display: grid;
    place-content: center;
    min-block-size: 60px;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .025em;
    border-radius: 5px 5px 0 0;
    transition: .3s;
    cursor: pointer;
}

.common-arrival__tab-box ul li.active {
    background-color: #FFF;
    color: #150500;
}

.top-arrival__catch {
    font-size: 16px;
    color: #FFF;
    letter-spacing: .025em;
    line-height: 2;
    margin-bottom: 35px;
}

.common-arrival__list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.common-arrival__list-count {
    font-size: 24px;
    color: #FFF;
    font-weight: 900;
    letter-spacing: .025em;
    position: absolute;
    top: -83px;
    right: 0;
}

.common-arrival__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.common-arrival__item-img {
    height: 195px;
    margin-bottom: 15px;
    border-radius: 5px;
    overflow: hidden;
}

.common-arrival__item-name {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .025em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    margin-bottom: 9px;
}

.common-arrival__item-text {
    color: #FFF;
}

.common-arrival__item-flex {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    justify-content: space-between;
    padding-right: 11px;
    gap: 0 5px;
}

.common-arrival__item-madori {
    display: flex;
    align-items: center;
    gap: 0 5px;
}

.common-arrival__item-yachin {
    display: flex;
    align-items: center;
    gap: 0 5px;
}

.common-arrival__item-tag {
    font-size: 12px;
    letter-spacing: .015em;
    color: #1D1D1D;
    background-color: #FFF;
    min-block-size: 19px;
    width: 34px;
    display: grid;
    place-content: center;
    flex-shrink: 0;
    font-weight: 700;
}

.common-arrival__item-madori-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .015em;
}

.common-arrival__item-yachin-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .015em;
}

.common-arrival__item-access {
    background-color: #2B2B2B;
    padding: 8px 10px 7px;
}

.common-arrival__item-access-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 12px;
    letter-spacing: .015em;
}

.common-arrival__tab-box {
    margin-bottom: 25px;
}

.common-arrival-box {
    position: relative;
}

.common-arrival__list-count .num {
    font-size: 200%;
    font-weight: 700;
    line-height: 1.22;
}

.common-arrival__item-yachin-text .num {
    font-size: 16px;
}

/* TOP 人気ランキング */
.top-ranking-sec {
    padding: 80px 50px 82px;
    width: 1240px;
    margin: 0 auto;
    background-color: #FFF;
    margin-top: -136px;
}

.common-ranking-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 15px;
}

.common-ranking-item {
    border-radius: 5px;
    border: solid 1px #EAE7E7;
    padding: 26px 35px 25px;
}

.common-ranking-item__head {
    display: flex;
    align-items: baseline;
    gap: 0 8px;
    padding-bottom: 10px;
    border-bottom: solid 2px #1D1D1D;
    margin-bottom: 3px;
}

.common-ranking-item__head-en {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.2;
}

.common-ranking-item__head-jp {
    letter-spacing: .025em;
    font-weight: 500;
    line-height: 1.42;
}

.common-ranking-list li a {
    padding: 15px;
    display: flex;
    align-items: center;
    gap: 0 15px;
    transition: .3s;
}

.common-ranking-list li {
    border-bottom: solid 1px #F0EEEC;
}

.common-ranking-item__num {
    width: 26px;
    aspect-ratio: 1/1;
    min-width: 0;
    flex-shrink: 0;
    display: grid;
    place-content: center;
    border-radius: 50%;
    line-height: 1.3;
    font-weight: 700;
    color: #FFF;
}

.common-ranking-item__num.-no1 {
    background-color: #E3B942;
}

.common-ranking-item__num.-no2 {
    background-color: #9F9C9C;
}

.common-ranking-item__num.-no3 {
    background-color: #936424;
}

.common-ranking-item__num.-no4 {
    background-color: #D0CDCD;
}

.common-ranking-item__num.-no5 {
    background-color: #D0CDCD;
}

.common-ranking-item__name {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .025em;
}

.common-ranking-list li:last-child {
    border-bottom: none;
}

/* TOP お部屋探しの流れ */
.top-flow-sec {
    padding-block: 155px 101px;
}

.top-flow__flex {
    display: flex;
    gap: 0 125px;
}

.common-flex-ttl__en {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.2;
    margin-bottom: 30px;
}

.common-flex-ttl__jp {
    font-size: 40px;
    font-weight: 700;
    letter-spacing: .055em;
    margin-bottom: 34px;
    color: var(--main-color);
    line-height: 1.3;
}

.common-flex-ttl__jp .small {
    font-size: 30px;
    display: block;
    color: #150500;
}

.common-flex-ttl {
    margin-bottom: 71px;
}

.top-flow__ttl-box {
    flex-shrink: 0;
    margin-bottom: 8.97vw;
}

.common-flex-ttl__catch {
    font-size: 16px;
    letter-spacing: .015em;
    line-height: 2;
}

.top-flow__list {
    width: 100%;
    margin-bottom: 1.28vw;
}

.top-flow__item {
    display: flex;
    align-items: center;
    gap: 0 35px;
    padding: 35px 30px 35px 0;
}

.top-flow__item-head-img {
    width: 130px;
    aspect-ratio: 1/1;
    min-width: 0;
}

.top-flow__item-head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

.top-flow__item-head {
    flex-shrink: 0;
    display: flex;
    width: 221px;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 15px;
}

.top-flow__item+.top-flow__item {
    border-top: solid 1px #F0EEEC;
}

.top-flow__item-head-en {
    font-size: 10px;
    font-weight: 300;
    color: var(--main-color);
    line-height: 1.25;
}

.top-flow__item-head-en .num {
    font-size: 16px;
}

.top-flow__item-ttl {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .025em;
    margin-bottom: 9px;
}

.top-flow__item-text {
    letter-spacing: .015em;
    line-height: 1.63;
}

.top-flow__item-cont {
    width: 100%;
}

.top-flow__item:first-child {
    padding-top: 0;
}

/* TOP スタッフコラム */
.top-column-sec {
    padding-block: 83px 77px;
    background-color: #EBEBEB;
}

.common-post__list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 35px;
}

.common-post-item__img {
    height: 200px;
    margin-bottom: 20px;
    border-radius: 5px;
    overflow: hidden;
}

.common-post-item__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
}

.common-post-item__main-ttl {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-bottom: 10px;
}

.common-post-item__main-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    letter-spacing: .015em;
    margin-bottom: 15px;
}

.common-post-item__date {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: .025em;
    line-height: 1.25;
    color: var(--main-color);
}

/* TOP 新着情報 */
.top-news-sec {
    padding-top: 90px;
}

.top-news-sec .common-post__list {
    padding-bottom: 70px;
    border-bottom: solid 1px #D5D0CB;
}

/* TOP 店舗一覧 */
.top-store-sec {
    padding-block: 80px 110px;
}

.top-store__flex {
    display: flex;
    align-items: flex-start;
    gap: 0 130px;
}

.top-store__ttl-box {
    width: 300px;
    flex-shrink: 0;
}

.top-store__ttl-box .common-flex-ttl {
    margin-bottom: 64px;
}

.top-store__ttl-box .common-flex-ttl__en {
    font-size: 20px;
    margin-bottom: 25px;
}

.common-store__item a {
    display: block;
}

.common-flex-ttl__jp .color {
    display: block;
    color: #150500;
}

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

.common-store__item-img {
    height: 221px;
    overflow: hidden;
}

.common-store__item {
    border-radius: 5px;
    overflow: hidden;
}

.common-store__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s;
    object-position: top;
}

.common-store__item-cont {
    padding: 25px 35px 29px;
    background-color: #FFF;
}

.common-store__item-ttl {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0 10px;
    padding-bottom: 10px;
    border-bottom: solid 1px #F0EEEC;
    margin-bottom: 15px;
}

.common-store__item-ttl-jp {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.45;
}

.common-store__item-ttl-en {
    font-weight: 300;
    letter-spacing: .025em;
    color: var(--main-color);
    line-height: 1.21;
}

.common-store__item-add {
    letter-spacing: .015em;
    margin-bottom: 9px;
}

.common-store__item-tel {
    display: flex;
    align-items: center;
    gap: 0 5px;
    margin-bottom: 5px;
}

.common-store__icon-tel {
    width: 13px;
    line-height: 1;
    flex-shrink: 0;
}

.common-store__icon-tel img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.common-store__item-tel-text {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
}

.common-store__item-date {
    font-size: 12px;
    letter-spacing: .015em;
}

/* TOP フッター */
.ft-info-sec {
    padding-block: 85px 80px;
    background-color: #F0EEEC;
}

.ft-info__flex {
    display: flex;
    gap: 0 50px;
    margin-bottom: 35px;
}

.ft-info__info-area {
    width: 380px;
    flex-shrink: 0;
}

.ft-info__cta-area {
    width: 100%;
    margin-top: 23px;
}

.ft-info__cta-box {
    background-color: #FFF;
    padding: 45px 50px;
    border-radius: 5px;
    margin-bottom: 35px;
}

.site-ft__logo a {
    display: block;
}

.site-ft__logo a img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-ft__logo {
    width: 250px;
    margin: 0 auto 35px;
}

.site-ft__map iframe {
    width: 100%;
    height: 100%;
}

.site-ft__map {
    aspect-ratio: 19/10;
    min-width: 0;
    margin-bottom: 15px;
}

.site-ft__add {
    letter-spacing: .015em;
    margin-bottom: 25px;
}

.site-ft__num {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 3px;
    color: var(--main-colo);
}

.site-ft__time {
    letter-spacing: .025em;
}

.ft-info__cta-tel-box {
    background-color: #F0EEEC;
    border-radius: 5px;
    padding: 25px 45px;
    margin-bottom: 35px;
    display: flex;
    gap: 0 37px;
}

.ft-info__cta-btn-box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.ft-info__cta-btn-box .common-more-btn a {
    width: 100%;
    min-block-size: 50px;
}

.ft-info__tel-head-en {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.21;
    margin-bottom: 6px;
}

.ft-info__tel-head-jp {
    letter-spacing: .025em;
    font-weight: 700;
    line-height: 1.43;
}

.ft-info__cta-tel-main {
    display: flex;
    align-items: center;
    padding-left: 40px;
    border-left: solid 1px #D8D2D2;
    width: 100%;
    gap: 0 15px;
}

.ft-info__tel-main-num {
    display: flex;
    align-items: center;
    gap: 0 8px;
    flex-shrink: 0;
}

.ft-info__cta-tel-head {
    flex-shrink: 0;
}

.ft-info__tel-num-icon {
    width: 20px;
    flex-shrink: 0;
}

.ft-info__tel-num-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ft-info__tel-num-text {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: .025em;
}

.ft-info__tel-main-date {
    width: 100%;
    font-size: 12px;
    letter-spacing: .015em;
    line-height: 1.42;
}

.ft-info__cta-btn-box .common-more-btn__text {
    font-size: 16px;
}

.ft-info__credit-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ft-info__credit-list {
    display: flex;
    gap: 0 20px;
    flex-shrink: 0;
}

.ft-info__credit-item img {
    width: auto;
    height: 100%;
    object-fit: contain;
}

.ft-info__credit-item {
    height: 40px;
}

.ft-info__credit-text {
    font-size: 16px;
    letter-spacing: .015em;
}

.ft-info__main-text {
    line-height: 1.7;
    font-size: 16px;
    letter-spacing: .015em;
}

.site-footer {
    padding-block: 80px 99px;
    background-color: var(--main-color);
}

.site-footer__menu-item a {
    gap: 0 10px;
    color: #F0EEEC;
    letter-spacing: .015em;
    line-height: 1.42;
    display: inline-flex;
    align-items: center;
    transition: .3s;
}

.site-footer__menu {
    display: flex;
    gap: 0 120px;
    margin-bottom: 80px;
}

.site-footer__menu-item+.site-footer__menu-item {
    margin-top: 15px;
}

.site-footer__menu-item a::before {
    content: "";
    width: 6px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #FFF;
    border-width: 1px 1px 0 0;
    rotate: 45deg;
    flex-shrink: 0;
}

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

.copyright {
    color: #F0EEEC;
}

.site-footer__end-menu li a {
    color: #F0EEEC;
    font-size: 12px;
    letter-spacing: .015em;
    display: block;
}

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

.copyright small {
    font-size: 12px;
    letter-spacing: .025em;
}

.site-footer__menu.sp {
    display: none;
}

/* ホバー */
.cta-night__btn a:hover {
    background-color: #FFF;
    color: #1D1D1D;
}

.cta-night-sec__outer:hover::before {
    opacity: .7;
}

.site-header__top-menu a:hover {
    opacity: .7;
}

.site-header__btn a:hover {
    background-color: #FFF;
    color: var(--main-color);
}

.site-header__btn.-line a:hover {
    opacity: .7;
    background-color: #00B829;
    color: #FFF;
}

.site-header__search-menu-item a:hover {
    opacity: .7;
}

.top-banner-item a:hover {
    opacity: .8;
}

.top-staff__list li a:hover .top-staff-list__item-img {
    scale: 1.1;
}

.top-search__btn li a:hover .top-search__btn-bg {
    scale: 1.1;
}

.top-search__tag li a:hover {
    color: #B8B5B5;
}

.common-more-btn a:hover {
    background-color: #FFF;
}

.common-more-btn a:hover .common-more-btn__text {
    color: var(--main-color);
}

.top-blog__list li a:hover .top-blog-item__img img {
    scale: 1.1;
}

.top-useful__list li a:hover .top-useful-item__img img {
    scale: 1.1;
}

.common-arrival__list li a:hover .common-arrival__item-img img {
    scale: 1.1;
}

.common-ranking-list li a:hover {
    opacity: 0.6;
}

.common-post__list li a:hover .common-post-item__img img {
    scale: 1.1;
}

.site-footer__menu-item a:hover {
    opacity: .7;
}

.feature-grid-item a:hover .feature-grid-item__bg {
    scale: 1.1;
}

.top-voice-item a:hover .voice-item__img img {
    scale: 1.2;
}

.common-store__item a:hover .common-store__item-img img {
    scale: 1.1;
}

/* スタッフ紹介 */
.single-staff-fv__cont {
    display: flex;
    gap: 0 100px;
}

.single-staff-fv {
    background-color: #F0EEEC;
    padding-bottom: 90px;
}

.single-staff-fv__img-box {
    flex-shrink: 0;
    width: 700px;
    height: 530px;
    margin-right: -100px;
}

.single-staff-fv__img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

.single-staff-fv__info-box {
    width: 100%;
    position: relative;
    padding-top: 30px;
}

.single-staff-fv__ttl-en {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 25px;
    line-height: 1.21;
    letter-spacing: .025em;
}

.single-staff-fv__ttl-jp {
    font-size: 40px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.47;
}

.single-staff-fv__ttl {
    display: flex;
    align-items: baseline;
    gap: 0 35px;
}

.single-staff-fv__post {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: .025em;
    color: #B8B5B5;
}

.single-staff-fv__ttl-box {
    padding-bottom: 54px;
}

.single-staff-fv__message {
    border-top: solid 1px #D8D2D2;
    padding-top: 35px;
}

.single-staff-fv__message-head {
    display: flex;
    align-items: baseline;
    gap: 0 7px;
    margin-bottom: 30px;
}

.single-staff-fv__message-head-en {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .025em;
    color: var(--main-color);
}

.single-staff-fv__message-head-jp {
    font-weight: 500;
    letter-spacing: .025em;
    line-height: 1.43;
}

.single-staff-fv__message-text {
    font-size: 18px;
    letter-spacing: .015em;
    line-height: 1.77;
}

.single-staff-fv__bg-font {
    font-size: 168px;
    color: var(--main-color);
    opacity: .05;
    font-weight: 700;
    letter-spacing: .025em;
    writing-mode: sideways-rl;
    line-height: 1.21;
    position: absolute;
    top: -4px;
    left: -141px;
}

.single-staff .common_page_wrap {
    padding: 0 0 150px;
}

.single-staff-main__cont {
    padding: 150px 100px;
    background-color: #FFF;
}

.single-staff-main {
    position: relative;
}

.single-staff-main::before {
    content: "";
    width: 100%;
    height: 323px;
    background-color: #F0EEEC;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.single-staff-main__item {
    display: flex;
    align-items: center;
    gap: 0 50px;
}

.single-staff-main__item:nth-child(even) {
    flex-direction: row-reverse;
}

.single-staff-main__item-img {
    width: 520px;
    height: 345px;
    flex-shrink: 0;
}

.single-staff-main__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-staff-main__item-ttl-en {
    font-size: 48px;
    color: var(--main-color);
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.23;
}

.single-staff-main__item-ttl {
    display: flex;
    align-items: center;
    gap: 0 15px;
    margin-bottom: 35px;
}

.single-staff-main__item-ttl-jp {
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.7;
}

.single-staff-main__item-text {
    font-size: 18px;
    line-height: 1.77;
    letter-spacing: .015em;
}

.single-staff-main__item+.single-staff-main__item {
    margin-top: 160px;
}

.single-staff-promise {
    padding-top: 150px;
}

.single-staff-promise__ttl {
    text-align: center;
    margin-bottom: 35px;
}

.single-staff-promise__ttl-jp {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .055em;
    border-bottom: solid 2px currentColor;
    display: inline-block;
    line-height: 1.7;
    margin-bottom: 60px;
}

.single-staff-promise__ttl-en {
    font-weight: 700;
    letter-spacing: .025em;
    color: var(--main-color);
    font-size: 72px;
    line-height: 1.21;
}

.single-staff-promise__main-text {
    text-align: center;
    width: 906px;
    margin: 0 auto;
    margin-bottom: 79px;
    font-size: 18px;
    line-height: 2.2;
    letter-spacing: .055em;
}

.single-staff-promise__img-box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.single-staff-promise__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-staff-promise__img {
    height: 200px;
}

.archive-staff-cont .top-staff__list {
    padding-right: 0;
}

/* 共通FV */
.common-page-fv {
    padding-block: 100px;
    background-image: url(/wp-content/themes/swell_child/image/common_page_fv.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    z-index: 0;
}

.common-page-fv__ttl-en {
    font-size: 42px;
    font-weight: 700;
    letter-spacing: .025em;
    line-height: 1.21;
    color: #FFF;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.common-page-fv__ttl-jp {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .055em;
    color: #FFF;
}

.common-page-fv::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #1D1D1D;
    opacity: .28;
    z-index: -1;
}

/* 治安ページ */
.page_security_introduction .new_life_price {
    background-color: unset;
    padding-bottom: unset;
}

.page_security_introduction .flow_box {
    background-color: unset;
    padding-bottom: unset;
}

.page_security_main .common-more-btn a {
    width: 270px;
    padding: 15px 5px;
}

.page_security_introduction .common-more-btn a {
    margin: 50px auto 0;
    width: fit-content;
    min-width: 300px;
}

.page_security .top-blog-sec {
    padding-block: 0 104px;
}

.page_security_review .common-more-btn a {
    margin: 50px auto 0;
    width: fit-content;
}

.page_security_average {
    padding-block: 100px;
}

.page_security_spot .common-more-btn a {
    margin: 50px auto 0;
    width: fit-content;
}

.page_security .top-arrival-sec {
    padding-block: 100px;
}

.page_security_main .common-more-btn__text {
    font-size: 15px;
}


.page_security_main {
    padding: 100px 0 80px;
}

.page_security_main .wrap {
    padding: 40px 35px;
    background-color: #FFF;
    align-items: center;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .15);
}

.page_security_main .image {
    width: 27%;
}

.page_security_main .textBox {
    width: 71%;
}

.page_security_main .textBox .title {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 0 0 10px;
}

.page_security_main .textBox .text {
    font-size: 16px;
    letter-spacing: 0.06em;
    text-align: justify;
    line-height: 1.8;
}

.page_security_introduction {
    padding: 80px 0 80px;
}

.couple_ver .page_security_introduction,
.minamimorimachi_single_ver .page_security_introduction,
.tamade_kaden_ver .page_security_introduction,
#horie_school .page_security_introduction {
    background-color: #fff;
    padding: 0;
}

.common_new_version .page_security_introduction {
    background-color: #fff;
    padding: 0;
    margin-bottom: 100px;
}


.minamimorimachi_single_ver .page_security_introduction,
.tamade_kaden_ver .page_security_introduction {
    margin-bottom: 100px;
}

.page_security_titleBox {
    text-align: center;
    margin: 0 0 50px;
}

.page_security_titleBox .sub_title {
    font-size: 25px;
    letter-spacing: 0.04em;
    color: var(--font-color);
    margin: 0 0 5px;
}

.page_security_titleBox .title {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 0 0 15px;
}

.page_security_titleBox .text {
    font-size: 14px;
    color: var(--font-color);
    letter-spacing: 0.06em;
    line-height: 1.7;
}

.page_security_introduction_list li {
    align-items: center;
}

.page_security_introduction_list li.stretch {
    align-items: stretch;
}

.page_security_introduction_list li.stretch .image img {
    height: 100%;
    object-fit: cover;
}

.page_security_introduction_list li:nth-child(n + 2) {
    margin-top: 70px;
}

.page_security_introduction_list li:nth-child(even) {
    flex-direction: row-reverse;
}

.page_security_introduction .note_box {
    margin-top: 100px;
    background-color: #fff;
    border-radius: 10px;
    padding: 60px 50px;
}

.page_security_introduction .note_box .note_lest {
    margin-bottom: 40px;
}

.page_security_introduction .note_box .note_lest ul li {
    display: flex;
    gap: 0 20px;
    align-items: flex-start;
}

.page_security_introduction .note_box .note_lest ul li+li {
    margin-top: 15px;
}

.page_security_introduction .note_box .note_lest ul li .theme {
    flex-shrink: 0;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    display: flex;
    gap: 0 10px;
    align-items: center;
    width: 180px;
}

.page_security_introduction .note_box .note_lest ul li .theme::before {
    content: "";
    display: block;
    background-image: url(/penguin/resources/image/sumot/precious-h04/icon_check_blue.svg  );
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    aspect-ratio: 1/1;
    min-width: 0;
}

.page_security_introduction .note_box .note_lest ul li .text {
    font-size: 16px;
    letter-spacing: .03em;
    line-height: 1.7;
}

.page_security_introduction .note_box .ttl {
    font-size: 24px;
    letter-spacing: .06em;
    font-weight: 700;
    margin-bottom: 1em;
    text-align: center;
}

.page_security_introduction .note_box .item_box {
    display: flex;
    gap: 0 20px;
    justify-content: space-between;
}

.page_security_introduction .note_box .item_box .item .catch {
    font-size: 20px;
    letter-spacing: .03em;
    font-weight: 600;
    margin-bottom: .5em;
}

.page_security_introduction .note_box .item_box .item .text_box .text {
    font-size: 16px;
    letter-spacing: .03em;
}

.page_security_introduction .note_box .item_box .item .text_box .text+.text {
    margin-top: 10px;
}


.female_single_page .page_security_introduction_list li:nth-child(odd) {
    flex-direction: row-reverse;
}

.female_single_page .page_security_introduction_list li:nth-child(even) {
    flex-direction: row;
}

.female_single_page .female_note .page_security_introduction_list li:nth-child(odd) {
    flex-direction: row;
}

.female_single_page .female_note .page_security_introduction_list li:nth-child(even) {
    flex-direction: row-reverse;
}

.female_single_page .minamimorimachi_single_ver .female_recommend {
    padding: 100px 0;
    background-color: #FFF;
}

#category_search_term {
    margin-bottom: 100px;
}

#category_search_term .term_list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

#category_search_term .term_list ul li .link {
    display: block;
    text-align: center;
    font-size: 15px;
    letter-spacing: .08em;
    color: #fff;
    background-color: #000F33;
    padding: .7em;
    line-height: 1.5;
    font-weight: 700;
    border-radius: 7px;
    transition: .3s;
    border: 2px solid #000F33;
}

#category_search_term .term_list ul li .link:hover {
    color: #000F33;
    background-color: #fff;
}

.page_security_introduction_list li .image {
    width: 38%;
}

.page_security_introduction_list li .image img {
    border-radius: 7px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .15);
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_security_introduction_list li .textBox {
    width: 58%;
}

.page_security_introduction_list li .textBox .point {
    font-size: 25px;
    letter-spacing: 0.04em;
    color: var(--sub-color);
    margin: 0 0 5px;
    font-weight: 700;
}

.page_security_introduction_list li .textBox .title {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 0 0 15px;
}

.page_security_introduction_list li .textBox .sub_title {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 0 0 25px;
}

.page_security_introduction_list li .textBox .third_title {
    font-size: 15px;
    margin: 1em 0 .5em 0;
}

.page_security_introduction_list li .textBox .text {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 1.9;
}

.page_security_introduction_list li .textBox .theme {
    font-size: 14px;
    letter-spacing: .03em;
    margin-bottom: .5em;
}

.page_security_introduction_list li .textBox .text+.text {
    margin-top: 10px;
}

.page_security_introduction_list li .textBox .catch {
    font-size: 18px;
    margin: 1em 0 .5em 0;
    border-left: 4px solid;
    padding-left: .5em;
}

.page_security_introduction_list li .textBox .text .accent {
    font-weight: bold;
}

.page_security_introduction_list li .textBox .common_area_btn a {
    margin: 30px 0 0;
}

.page_security_review {
    padding: 100px 0 80px;
}

.page_security_review_list li {
    align-items: center;
}

.page_security_review_list li:nth-child(n + 2) {
    margin-top: 30px;
}

.page_security_review_list li .icon {
    width: 150px;
}

.page_security_review_list li .textBox {
    width: calc(100% - 190px);
    padding: 30px;
    border: 1px solid #ccc;
    position: relative;
}

.page_security_review_list li .textBox::before {
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-right: 20px solid #fff;
    border-bottom: 20px solid transparent;
    position: absolute;
    top: 0;
    left: -15px;
    bottom: 0;
    margin: auto;
}

.page_security_review_list li .textBox::after {
    display: block;
    content: "";
    width: 20px;
    height: 20px;
    border: solid #ccc;
    border-width: 1px 1px 0 0;
    transform: rotate(-135deg);
    position: absolute;
    top: 0;
    left: -11px;
    bottom: 0;
    margin: auto;
}

.page_security_review_list li .text {
    font-size: 15px;
    letter-spacing: 0.06em;
    line-height: 1.9;
}

.page_security_average .priceBox {
    width: 40%;
    padding: 20px 30px;
    border: 2px solid #ccc;
    border-radius: 6px;
}

.page_security_average .priceBox li {
    border-bottom: 2px dashed #ccc;
    padding: 20px 0;
    position: relative;
}

.page_security_average .priceBox li::before {
    display: block;
    content: "";
    width: 1px;
    height: 20px;
    background-color: #ccc;
    position: absolute;
    top: 0;
    left: -60px;
    right: 0;
    bottom: 0;
    margin: auto;
}

.page_security_average .priceBox li:last-child {
    border-bottom: none;
}

.page_security_average .priceBox li .madori {
    width: 40%;
    text-align: center;
    font-size: 15px;
}

.page_security_average .priceBox li .madori a {
    text-decoration: underline;
    display: block;
    color: var(--main-color);
    font-weight: 700;
}

.page_security_average .priceBox li .price {
    width: 50%;
    text-align: center;
    font-size: 15px;
}

.page_security_average .textBox {
    width: 55%;
    padding: 30px;
    border: 2px solid #ccc;
    border-radius: 6px;
}

.page_security_average .textBox .block {
    width: 80%;
    margin: 0 auto 20px;
    align-items: center;
}

.page_security_average .textBox .block .image {
    width: 30%;
}

.page_security_average .textBox .block .title {
    width: 66%;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.page_security_average .textBox .text {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 1.9;
}

.page_security_spot {
    padding: 80px 0 100px;
}

.page_security_spot_list li+li {
    margin-top: 50px;
}

ul.page_security_spot_list li .image {
    width: 33%;
    position: relative;
}

.page_security_spot_list li {
    width: 100%;
    box-shadow: 0 0px 6px rgba(0, 0, 0, .15);
    min-height: 300px;
    border-radius: 10px;
    overflow: hidden;
}

.page_security_spot_list li .textBox {
    padding: 30px;
    width: 66%;
}

.page_security_introduction .common_message_box {
    margin: 50px 0 0;
}

ul.page_security_spot_list li .image img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.page_security_spot_list li .textBox .title {
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.06em;
    margin: 0 0 5px;
}

.page_security_spot_list li .textBox .text {
    font-size: 14px;
    letter-spacing: 0.06em;
    line-height: 1.9;
}

.security_title {
    font-size: 22px;
    letter-spacing: 0.1em;
    margin: 0 0 30px;
    padding: 5px 0 5px 20px;
    border-left: 5px solid var(--main-color);
    font-weight: 700;
}

.page_security_spot .ttl_box {
    margin-bottom: 20px;
}

.page_security_spot .ttl_box .text {
    font-size: 16px;
    letter-spacing: .03em;
}

.female_single_page .page_security_spot_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.female_single_page .page_security_spot_list li+li {
    margin-top: 0;
}

.female_single_page .page_security_spot_list li {
    flex-direction: column;
    justify-content: unset;
}

.female_single_page ul.page_security_spot_list li .image {
    width: 100%;
    height: 250px;
}

.female_single_page .page_security_spot_list li .textBox {
    width: 100%;
    padding: 20px;
}

.female_single_page .page_security_spot {
    padding-bottom: 0;
}

.female_single_page .page_security_review {
    padding-bottom: 0;
}

.page_security_terms {
    padding: 100px 0 0;
}

.page_security_terms .page_security_titleBox {
    margin-bottom: 30px;
}

.page_security_review .list .slick-track {
    display: flex;
}

.page_security_review .list .slide {
    background: #fff;
    border: 1px solid #707070;
    padding: 20px;
    margin: 0 5px;
    height: auto !important;
    border-radius: 5px;
    overflow: hidden;
}

.page_security_review .list .slide .icon {
    width: 100px;
    margin: 0 auto 20px;
}

.page_security_review .list .slide .text_box .text {
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1.7;
}

.page_security_pickup {
    background: #E7EAEB;
    padding: 70px 0;
}

.page_security .common_area_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    margin: 50px auto 0;
    background: #000F33;
    min-block-size: 55px;
    border-radius: 35px;
    padding: 0.5em 4em;
    color: #fff;
    font-size: 16px;
    letter-spacing: .05em;
    font-weight: 700;
    position: relative;
    transition: .3s;
}

.page_security .common_area_btn a::after {
    content: "";
    width: 8px;
    aspect-ratio: 1/1;
    min-width: 0;
    border: solid #fff;
    border-width: 2px 2px 0 0;
    rotate: 45deg;
    position: absolute;
    top: 50%;
    right: 25px;
    translate: 0 -50%;
}

.page_security .common_area_btn a:hover {
    opacity: 0.7;
}

.page_security_arrival .tab_box {
    margin-bottom: 30px;
}

.page_security_arrival .tab_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1em;
}

.page_security_arrival .tab_box li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-block-size: 50px;
    border: 2px solid #000F33;
    background: #fff;
    border-radius: 6px;
    padding: 0.5em;
    margin: 0;
    color: #000F33;
    font-size: 16px;
    letter-spacing: .05em;
    font-weight: 700;
    cursor: pointer;
    transition: .3s;
}

.page_security_arrival .tab_box li.active {
    background: #000F33;
    color: #fff;
}

.page_security .btn_box {
    display: flex;
    gap: 0 9px;
    margin: 20px 0 0;
}

.page_security .btn_box .btn .fukidashi::before {
    content: '';
    width: 12px;
    height: 7px;
    position: absolute;
    bottom: -6px;
    left: 50%;
    translate: -50% 0;
    background-color: #fff;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}

.page_security .btn_box .btn.reserve .fukidashi {
    border: 2px solid #EE7221;
}

.page_security .btn_box .btn.reserve .fukidashi span {
    color: #EE7221;
}

.page_security .btn_box .btn.request .fukidashi {
    border: 2px solid #d0a242;
}

.page_security .btn_box .btn.request .fukidashi span {
    color: #d0a242;
}

.page_security .btn_box .btn.property .fukidashi {
    border: 2px solid #4375bf;
}

.page_security .btn_box .btn.property .fukidashi span {
    color: #4375bf;
}

.page_security .btn_box .btn .link:hover {
    opacity: .85;
}

.page_security .btn_box .btn .link::after {
    content: "";
    width: 7px;
    aspect-ratio: 1;
    min-width: 0;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    rotate: -45deg;
}

.page_security .btn_box .btn.line .link {
    background-color: #00b900;
}

.page_security .btn_box .btn.reserve .link {
    background-color: #EE7221;
}

.page_security .btn_box .btn.request .link {
    background-color: #d0a242;
}

.page_security .btn_box .btn.property .link {
    background-color: #4375bf;
}

.page_security_introduction .new_life_price .new_life_price_tableBox table th {
    background-color: #000F33;
}

.page_security_introduction .new_life_price .new_life_price_tableBox {
    position: relative;
}

.page_security_introduction .new_life_price .cont {
    position: relative;
}

.page_security_introduction .new_life_price .cont::before {
    content: "";
    display: block;
    width: 180px;
    height: 40px;
    background-color: #dfc50f;
    margin: 40px auto 0;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.page_security_introduction .new_life_price .note_area {
    padding: 35px 50px;
    border: 2px solid #143582;
    background-color: #fff;
    margin-top: 40px;
}

.page_security_introduction .new_life_price .note_area .ttl {
    font-size: 24px;
    letter-spacing: .06em;
    font-weight: 700;
    margin-bottom: .5em;
    text-align: center;
    color: #143582;
}

.page_security_introduction .new_life_price .note_area .text {
    font-size: 16px;
    letter-spacing: .03em;
    text-align: center;
    font-weight: 500;
}

.page_security_introduction .new_life_price .new_life_price_tableBox .text {
    font-size: 15px;
    margin-bottom: 1em;
    letter-spacing: .03em;
}

.page_security_spot .catch {
    font-size: 15px;
    letter-spacing: .03em;
    margin-bottom: 1em;
    line-height: 1.9;
}

/* 共通swell打ち消し */
.icon-home:before {
    content: none;
}

.icon-link:before {
    content: none;
}

.icon-share:before {
    content: none;
}

.icon-info:before {
    content: none;
}

.icon-alert:before {
    content: none;
}

.icon-contact:before,
.icon-envelope:before,
.icon-mail:before,
.icon-markunread:before {
    content: none;
}

.icon-cart:before,
.icon-shopping_cart:before {
    content: none;
}

.icon-phone1:before,
.icon-phone:before {
    content: none;
}

.icon-flag:before {
    content: none;
}

.icon-circle:before {
    content: none;
}

.icon-check:before,
.icon-checkmark:before {
    content: none;
}

.icon-search:before {
    content: none;
}

.icon-tiktok:before {
    content: none;
}

.icon-facebook:before {
    content: none;
}

.icon-instagram:before {
    content: none;
}

.icon-line:before {
    content: none;
}

/* こだわりページ */
.common_page-kodawari {
    padding: 0;
}

.common_page-kodawari .top-feature__grid-items {
    margin-block: 40px;
}

.common_page-kodawari .feature-grid-item__ttl {
    font-size: 22px;
}

.common_lifestyle_page .lifestyle_intro_sec {
    padding: 80px 0 80px;
}

.common_lifestyle_page .lifestyle_intro_sec .block .ttl {
    font-size: 28px;
    letter-spacing: 0.1rem;
    font-weight: 600;
    color: var(--main-color);
    margin-bottom: 30px;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box {
    flex-wrap: nowrap;
    align-items: center;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box.stretch {
    align-items: stretch;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box.stretch .img img {
    height: 100%;
    object-fit: cover;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box .text_box .text {
    font-size: 16px;
    letter-spacing: 0.08em;
    line-height: 2;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box .text_box .text .accent {
    font-weight: bold;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box .img {
    width: 40%;
    margin-left: 5%;
    flex-shrink: 0;
    line-height: 1;
}

.common_lifestyle_page .lifestyle_intro_sec .block .box .img img {
    width: 100%;
    vertical-align: bottom;
}

.common_lifestyle_page .common_lifestyle_search_sec {
    padding: 85px 0;
    background-color: #EBEBEB;
}

.common_lifestyle_page .common_lifestyle_search_sec .top_text {
    margin-bottom: 30px;
}

.common_lifestyle_page .common_lifestyle_search_sec .top_text .ttl {
    font-size: 28px;
    letter-spacing: 0.1rem;
    font-weight: 600;
    color: var(--main-color);
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap {
    align-items: flex-end;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts {
    position: relative;
    width: 21%;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts .label {
    font-size: 16px;
    letter-spacing: 0.03em;
    margin: 0 0 15px;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap select,
.common_lifestyle_page .common_lifestyle_search_sec .form_wrap input#sbox02 {
    width: 100%;
    height: 35px;
    border: none;
    background: #fff;
    box-shadow: 1px 1px 5px #ccc;
    padding: 0 10px;
    border-radius: 5px;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::before {
    left: -16%;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::before,
.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::after {
    content: "×";
    position: absolute;
    font-size: 14px;
    bottom: 6px;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::after {
    right: -16%;
}

.common_lifestyle_page .common_lifestyle_search_sec .form_wrap input#btnQuickSearch {
    width: 100%;
    height: 35px;
    background: var(--sub-color);
    border: none;
    color: #fff;
    border-radius: 5px;
    box-shadow: 1px 1px 2px #909090;
    cursor: pointer;
    text-align: center;
}

.common_lifestyle_page .common_lifestyle_info_sec .top_text {
    margin-bottom: 30px;
}

.common_lifestyle_page .common_lifestyle_info_sec .top_text .ttl {
    font-size: 28px;
    letter-spacing: 0.1rem;
    font-weight: 600;
    color: var(--main-color);
}

.common_lifestyle_page .common_lifestyle_info_sec .cont {
    align-items: center;
    flex-wrap: nowrap;
}

.common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .sub_ttl {
    font-size: 21px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .text {
    font-size: 15px;
    letter-spacing: 0.08em;
    line-height: 2;
    margin: 1em 0 15px;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box {
    background-color: #f2f2f2;
    padding: 50px;
    border: 2px solid #ddd;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area+.text_area {
    margin-top: 30px;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area .sub_ttl {
    border-bottom: 1px dashed #000;
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: .05em;
    font-weight: 700;
    padding-bottom: .5em;
    color: #000f33;
    display: flex;
    align-items: center;
    gap: 0 10px;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area .sub_ttl .num {
    background-color: #E0C634;
    border-radius: 50%;
    width: 35px;
    aspect-ratio: 1;
    min-width: 0;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0em;
    color: #fff;
    display: inline-grid;
    place-content: center;
    flex-shrink: 0;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box .text_box {
    margin-top: 1em;
}

.common_lifestyle_page .common_lifestyle_info_sec .block_box .text_box .text {
    font-size: 16px;
    line-height: 1.7;
    letter-spacing: .05em;
}

.common_lifestyle_page .common_lifestyle_info_sec:nth-child(odd) .cont .img {
    margin-left: 5%;
}

.common_lifestyle_page .common_lifestyle_info_sec .cont .img {
    width: 40%;
    flex-shrink: 0;
    line-height: 1;
}

.common_lifestyle_page .common_lifestyle_info_sec .cont .img img {
    width: 100%;
    vertical-align: bottom;
}

.common_lifestyle_page .common_lifestyle_info_sec:nth-child(even) .cont {
    flex-direction: row-reverse;
}

.common_lifestyle_page .common_lifestyle_info_sec:nth-child(even) .cont .img {
    margin-right: 5%;
}

.common_lifestyle_page .common_lifestyle_info_sec .cont .block+.block {
    margin-top: 20px;
}

.common_lifestyle_page .lifestyle_search_sec {
    margin: 80px 0;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .ttl {
    font-size: 18px;
    letter-spacing: 0.05em;
    margin: 0 0 20px;
    font-weight: 700;
    color: var(--main-color);
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box {
    background-color: #EBEBEB;
    border-radius: 10px;
    padding: 20px 30px;
    line-height: 1.8;
    flex-wrap: nowrap;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_ttl {
    flex-shrink: 0;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.08em;
    width: 240px;
    margin-right: 25px;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li {
    margin-right: 15px;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li a {
    font-size: 15px;
    text-decoration: underline;
    letter-spacing: 0.05em;
    color: var(--main-color);
    display: block;
    font-weight: 500;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont+.search_cont {
    margin-top: 50px;
}

.common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box+.box {
    margin-top: 15px;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_block {
    padding: 40px;
    background-color: #EBEBEB;
    border-radius: 10px;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box {
    padding: 15px;
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    align-items: center;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box:last-child {
    border-bottom: none;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .title {
    width: 15%;
    padding: 0 15px;
    text-align: center;
    margin: 0;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list {
    width: 85%;
    align-items: center;
    counter-reset: count 0;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li {
    width: 20%;
    position: relative;
    padding-left: 40px;
    padding-right: 10px;
    font-size: 14px;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li a {
    text-decoration: underline;
    color: #000f33;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li::before {
    display: block;
    content: counter(count) "";
    counter-increment: count 1;
    width: 30px;
    line-height: 30px;
    height: 30px;
    background-color: var(--sub-color);
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto 0;
    color: #FFF;
}

.common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li:nth-child(n + 4):before {
    background-color: #e4e4e4;
    color: var(--font-color);
}

.terms_termlist_sec {
    padding: 100px 0 0;
}

.common_lifestyle_page .terms_termlist_sec .terms_termlist_wrap {
    padding: 40px;
    background-color: #EBEBEB;
    border-radius: 10px;
}

.common_lifestyle_page .terms_termlist_sec .terms_termlist {
    padding: 20px 20px 10px;
    background-color: #fff;
}

.common_lifestyle_page .terms_termlist_sec .terms_termlist li {
    margin: 0 20px 10px 0;
    font-size: 15px;
}

.common_lifestyle_page .terms_termlist_sec .terms_termlist li a {
    text-decoration: underline;
    color: #000f33;
}

.common_lifestyle_page .terms_ranking_sec .ttl,
.common_lifestyle_page .terms_termlist_sec .ttl {
    font-size: 18px;
    letter-spacing: 0.05em;
    margin: 0 0 20px;
    font-weight: 700;
    color: var(--main-color);
}

.common_lifestyle_page .recommend_note_text {
    margin-top: 15px;
    color: #FFF;
    text-align: right;
    font-size: 13px;
}

.search_cont .tab-area {
    display: flex;
    border: 2px solid #000f33;
    color: #000f33;
    cursor: pointer;
}

.search_cont .tab {
    width: calc(100%/4);
    padding: 10px;
    text-align: center;
    background-color: #fff;
    font-size: 15px;
}

.search_cont .tab:nth-child(n+2) {
    border-left: 2px solid var(--main-color);
}

.search_cont .tab.active {
    background-color: var(--main-color);
    color: #fff;
}

.search_cont .panel {
    display: none;
    text-align: center;
    padding: 30px;
    background-color: #fff;
    margin-top: 20px;
}

.search_cont .panel.active {
    display: block;
}

.search_cont .price_table_wrap {
    padding: 40px;
    background-color: #EBEBEB;
    border-radius: 10px;
}

.search_cont .price_table_wrap table {
    width: 100%;
    border-collapse: collapse;
}

.search_cont .price_table_wrap table a {
    text-decoration: underline;
    color: #000f33;
}

.search_cont .price_table_wrap table th,
.search_cont .price_table_wrap table td {
    padding: 10px 20px;
    text-align: left;
    border: 1px solid #ccc;
    font-size: 15px;
}

.search_cont .price_table_wrap table th {
    background-color: var(--main-color);
    color: #fff;
    text-align: center;
}

.search_cont .price_table_wrap table .th01,
.search_cont .price_table_wrap table .td01 {
    width: 30%;
}

.search_cont .price_table_wrap table .td02 {
    width: 25%;
}

.search_cont .price_table_wrap table .td03 {
    width: 45%;
    vertical-align: middle;
}

.search_cont .price_table_wrap table .td03 .bar {
    display: block;
    background-color: var(--sub-color);
    height: 10px;
}

.lifestyle_search_sec .search_cont .area_cont .box {
    background-color: #f5f5f5;
    border-radius: 10px;
    padding: 20px 30px;
    line-height: 1.8;
    flex-wrap: nowrap;
}

.lifestyle_search_sec .search_cont .area_cont .box .area_ttl {
    flex-shrink: 0;
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 0.08em;
    width: 180px;
    margin-right: 25px;
}

.lifestyle_search_sec .search_cont .area_cont .box .area_list ul li {
    margin-right: 15px;
}

.lifestyle_search_sec .search_cont .area_cont .box .area_list ul li a {
    font-size: 15px;
    text-decoration: underline;
    letter-spacing: 0.05em;
    color: #000f33;
}

.lifestyle_search_sec .search_cont+.search_cont {
    margin-top: 50px;
}

.lifestyle_search_sec .search_cont .area_cont .box+.box {
    margin-top: 15px;
}

section.lifestyle_search_sec.butken-heya {
    margin: 50px 0;
}

section.lifestyle_search_sec.butken-heya .ttl {
    margin-bottom: 20px;
}

.top_about {
    padding: 130px 0 0;
}

.top_about .inbox {
    display: grid !important;
    grid-template-columns: 1fr 375px;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    background: #FFF;
}

.top_about .inbox .img {
    width: 100%;
    height: 340px
}

.top_about .inbox .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_about .inbox .text_box {
    padding: 50px;
}

.top_about .inbox .text_box .title {
    font-size: 16px;
    letter-spacing: .05em;
    background: var(--main-color);
    display: inline-block;
    color: #fff;
    border-radius: 6px;
    padding: 0 20px;
    line-height: 35px;
    margin-bottom: 15px;
}

.top_about .inbox .text_box .text {
    font-size: 15px;
    letter-spacing: .05em;
    height: 180px;
    line-height: 1.8;
    overflow-y: scroll;
}

.terms_slider .slick-arrow {
    width: 50.4px;
    height: 50.4px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 50;
    margin: 0;
    position: absolute;
    top: 40%;
    cursor: pointer;
    border: 2px solid var(--main-color);
}

.terms_slider .slick-arrow.slick_prev::before,
.terms_slider .slick-arrow.slick_next::before,
.terms_slider .slick-arrow.slick_prev::after,
.terms_slider .slick-arrow.slick_next::after {
    content: "";
    background-size: cover !important;
    width: 2.88px;
    height: 11.52px;
    background-color: var(--main-color);
    position: absolute;
}

.terms_slider .slick-arrow.slick_next {
    right: -99.36px;
}

.terms_slider .slick-arrow.slick_prev {
    left: -99.36px;
}

.terms_slider .slick-arrow.slick_next::before {
    transform: rotate(-45deg);
    top: 12.96px;
}

.terms_slider .slick-arrow.slick_next::after {
    transform: rotate(-125deg);
    top: 20.16px;
}

.terms_slider .slick-arrow.slick_prev::before {
    rotate: 45deg;
    top: 12.96px;
}

.terms_slider .slick-arrow.slick_prev::after {
    rotate: -45deg;
    top: 20.16px;
}

#top_faq {
    padding: 80px 0;
}

.top_faq_dlBox {
    margin: 40px 0 0;
}

.top_faq_dl {
    width: 49%;
    border: 1px solid #ccc;
    margin: 0;
    display: flex;
    flex-direction: column;
    border-radius: 5px;
    overflow: hidden;
}

.top_faq_dl:nth-child(n + 3) {
    margin-top: 2%;
}

.top_faq_dl dt {
    background-color: var(--main-color);
    color: #fff;
    font-size: 20px;
    letter-spacing: 0.1rem;
    padding: 15px 15px 15px 60px;
    position: relative;
}

.top_faq_dl dt::before {
    display: block;
    content: "Q";
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-weight: 600;
    border: 2px solid #fff;
    background-color: #fff;
    text-align: center;
    color: #000f33;
    line-height: 30px;
    font-size: 18px;
    position: absolute;
    top: 0;
    left: 15px;
    bottom: 0;
    margin: auto;
    line-height: 1.3;
}

.top_faq_dl dd {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0.04rem;
    line-height: 1.7;
    padding: 15px 15px 15px 60px;
    position: relative;
    margin: 0;
    background-color: #FFF;
    flex-grow: 1;
}

.top_faq_dl dd::before {
    display: block;
    content: "A";
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-weight: 600;
    border: 2px solid #d51717;
    color: #d51717;
    background-color: #fff;
    text-align: center;
    line-height: 30px;
    font-size: 18px;
    position: absolute;
    top: 15px;
    left: 15px;
    line-height: 1.2;
}

.category_page .top_faq_dl:nth-child(n + 3) {
    margin-top: 0;
}

.category_page .top_faq_dl {
    width: 100%;
}

.category_page .top_faq_dl+.top_faq_dl {
    margin-top: 20px;
}

.common_lifestyle_info_sec {
    padding-block: 80px;
}

.common_lifestyle_page .top-arrival-sec {
    padding-block: 100px;
}

.search_cont .price_table_text {
    margin-top: 8px;
    text-align: right;
}

.common_lifestyle_page .top-voice-sec {
    padding-top: 80px;
}

/* サイトマップ */
#page_sitemap #sitemap_list {
    background: #F9F9F9;
}

#sitemap_list li.page_item a {
    background-color: #FFF;
}

.new_life_price .common-more-btn.center {
    margin: 2em auto 0;
}

.common-more-btn.center {
    width: fit-content;
    margin-inline: auto;
}

/* 店舗情報ページ */
.company_profile_sec .cont dl {
    border-top: 1px solid #C4C4C4;
    display: flex;
}

.company_profile_sec .cont dl dt {
    flex-shrink: 0;
    width: 19.5%;
    border-top: 4px solid var(--main-color);
    padding: 1em;
    font-size: 20px;
    letter-spacing: .08em;
    font-weight: 700;
}

.company_profile_sec .cont dl dd {
    width: 100%;
    font-size: 16px;
    letter-spacing: .08em;
    line-height: 1.5;
    padding: 1.8em 5.3em;
}

/* 店舗一覧ページ */
.page_company .company_profile_sec#shop-namba {
    margin-block: 100px;
    padding-block: 100px;
    background-color: #EBEBEB;
}

.page_company .company_profile_sec .shop-name {
    margin-bottom: 1em;
    font-size: 32px;
    letter-spacing: .05em;
    font-weight: 700;
}

.page_company .shop-list_area ul {
    display: grid;
    grid-template-columns: repeat(2, 350px);
    justify-content: center;
    gap: 0 15px;
}

.page_company .shop-list_area ul li a {
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 15px;
    font-size: 20px;
    min-block-size: 70px;
    font-weight: 700;
    letter-spacing: .05em;
    color: #fff;
    background-color: var(--main-color);
    border: 1px solid var(--main-color);
    transition: all .3s;
}

.page_company .shop-list_area ul li a::after {
    content: '';
    display: block;
    width: 30px;
    aspect-ratio: 1;
    min-width: 0;
    mask-image: url(./image/icon_arrow.svg);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    background-color: #fff;
    transition: all .3s;
}

.page_company .shop-list_area ul li a:hover::after {
    background-color: var(--main-color);
}

.page_company .shop-list_area ul li a:hover {
    background-color: #fff;
    color: var(--main-color);
}

/* オンライン相談 */
.common_page_h2_box .title {
    font-size: 24px;
    letter-spacing: .05em;
    font-weight: 800;
    color: var(--main-color);
    border-bottom: 1px solid #C4C4C4;
    padding-bottom: .3em;
}

.common_page_h2_box .text {
    font-size: 15px;
    letter-spacing: 0.04em;
    line-height: 1.8;
    margin-top: 1em;
}

.page_online .online_main {
    padding: 70px 0;
    text-align: center;
    background: url(./image/online_main_bg.webp) center center / cover no-repeat;
    background-attachment: fixed;
    position: relative;
    z-index: 1;
}

.page_online .online_main::before {
    display: block;
    content: "";
    inset: 0;
    background-color: rgba(235, 235, 235, .8);
    position: absolute;
    z-index: -1;
}

.page_online .online_main .title {
    font-size: 30px;
    letter-spacing: .08em;
    color: var(--main-color);
    margin: 0 0 20px;
    font-weight: 900;
}

.page_online .online_main .text {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: .08em;
}

.page_online .online_merit {
    padding: 100px 0;
    background-color: #EBEBEB;
}

.page_online .online_merit_list {
    margin-top: 40px;
}

.page_online .online_merit_list li {
    align-items: center;
}

.page_online .online_merit_list li:nth-of-type(even) {
    flex-direction: row-reverse;
}

.page_online .online_merit_list li+li {
    margin-top: 60px;
}

.page_online .online_merit_list li .image {
    width: 40%;
    border-radius: 10px;
    box-shadow: 1px 1px 5px 1px rgba(51, 51, 51, 0.18);
    overflow: hidden;
}

.page_online .online_merit_list li .image img {
    display: block;
}

.page_online .online_merit_list li .textBox {
    width: 57%;
}

.page_online .online_merit_list li .textBox .title {
    font-size: 22px;
    letter-spacing: 0.08em;
    font-weight: 700;
    margin: 0 0 20px;
}

.page_online .online_merit_list li .textBox .title span {
    color: var(--main-color);
    display: block;
    font-weight: 700;
}

.page_online .online_merit_list li .textBox .text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: .08em;
    text-align: justify;
}

.page_online .online_flow {
    padding: 100px 0;
}

.page_online .online_flow_list {
    padding: 80px 0 50px;
}

.page_online .online_flow_list li {
    padding: 40px;
    border: 4px solid var(--font-color);
    background-color: #EBEBEB;
    align-items: center;
    box-shadow: 1px 1px 7px 3px rgba(112, 112, 112, 0.2);
    position: relative;
}

.page_online .online_flow_list li+li {
    margin-top: 80px;
}

.page_online .online_flow_list li::before {
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-top: 40px solid var(--main-color);
    border-right: 40px solid transparent;
    border-bottom: 40px solid transparent;
    border-left: 40px solid transparent;
    position: absolute;
    bottom: -105px;
    left: 0;
    right: 0;
    margin: auto;
}

.page_online .online_flow_list li:last-child::before {
    display: none;
}

.page_online .online_flow_list li .image {
    width: 40%;
    border-radius: 10px;
    box-shadow: 1px 1px 5px 1px rgba(51, 51, 51, 0.18);
    overflow: hidden;
}

.page_online .online_flow_list li .image img {
    display: block;
}

.page_online .online_flow_list li .textBox {
    width: 57%;
}

.page_online .online_flow_list li .textBox .title {
    font-size: 22px;
    letter-spacing: .08em;
    font-weight: 700;
    margin: 0 0 20px;
}

.page_online .online_flow_list li .textBox .step {
    color: #fff;
    background-color: var(--main-color);
    display: inline-block;
    padding: 5px 25px;
    margin: 0 0 10px;
    font-size: 20px;
    letter-spacing: .08em;
    font-weight: 700;
    border-radius: 30px;
}

.page_online .online_flow_list li .textBox .text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: .08em;
    text-align: justify;
}

.page_online .common-more-btn {
    margin-inline: auto;
    width: fit-content;
}

/* EDIONコラボレーション */
.page_edion_banner {
    margin-inline: auto;
    width: fit-content;
}

.page_edion_about {
    margin: 80px 0 0;
    padding: 100px 0;
    background: url(./image/edion_bg.png) center center / cover no-repeat;
    position: relative;
    z-index: 1;
}

.page_edion_about .title {
    font-size: 50px;
    color: #3e3a3a;
    font-style: italic;
    margin-bottom: 30px;
    text-align: center;
    text-shadow: 1px 1px 1px #fff;
    letter-spacing: 2px;
    font-weight: 900;
}

.page_edion_about .title span.red {
    color: #951e24;
}

.page_edion_about .title span.blue {
    color: var(--main-color);
}

.page_edion_about .text {
    font-size: 20px;
    line-height: 2;
    text-align: center;
}

.page_edion_about img {
    display: block;
    position: absolute;
    z-index: -1;
}

.page_edion_about img.image01 {
    width: 130px;
    top: 50px;
    left: 60px;
    -moz-transform: rotate(-10deg);
    -webkit-transform: rotate(-10deg);
    -o-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.page_edion_about img.image02 {
    width: 100px;
    top: 80px;
    right: 65px;
    -moz-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
    -o-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    transform: rotate(10deg);
}

.page_edion_about img.image04 {
    width: 80px;
    bottom: 50px;
    left: 60px;
    -moz-transform: rotate(-10deg);
    -webkit-transform: rotate(-10deg);
    -o-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.page_edion_about img.image03 {
    width: 150px;
    bottom: 60px;
    right: 90px;
    -moz-transform: rotate(10deg);
    -webkit-transform: rotate(10deg);
    -o-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    transform: rotate(10deg);
}

.page_edion_cont {
    margin-top: 50px;
}

.page_edion_cont .img_box {
    width: 40%;
}

.page_edion_cont .img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_edion_cont .text_box {
    width: 53%;
}

.page_edion_cont .text_box .img {
    width: 68%;
    margin: 0 auto 30px;
}

.page_edion_cont .text_box .text {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: .05em;
}

.page_edion_info {
    margin-top: 80px;
    background: var(--main-color);
    color: #fff;
    padding: 3vw;
}

.page_edion_info .center_box {
    width: 23%;
}

.page_edion_info .center_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_edion_info .right_box {
    width: 43%;
}

.page_edion_info .left_box {
    width: 30%;
}

.page_edion_info .left_box .en {
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.05em;
    padding: 8px 30px;
    background: #fff;
    color: #000;
}

.page_edion_info .left_box .logo {
    width: 50%;
    margin: 30px 0;
}

.page_edion_info .left_box .title {
    font-size: 22px;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
    font-weight: 900;
}

.page_edion_info .left_box .text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

/* 女性スタッフ在籍中 */
.page_female .page_cont {
    display: grid;
    align-items: center;
    grid-template-columns: 38% 1fr;
    gap: 0 40px;
    background-color: #EBEBEB;
    padding: 50px 30px;
    border-radius: 10px;
}

.page_female .page_cont .img img {
    width: 100%;
}

.page_female .page_cont .text_box .ttl {
    font-size: 22px;
    font-weight: 900;
    letter-spacing: .05em;
    color: var(--main-color);
}

.page_female .page_cont .text_box .text {
    font-size: 16px;
    letter-spacing: .05em;
    margin-top: 1.5em;
}

/*お部屋探しの流れ*/
.page_flow .flow_box {
    padding: 80px 0 120px;
    position: relative;
    background-color: #EBEBEB;
}

.page_flow .flow_box+.flow_box {
    padding-top: 140px;
}

.page_flow .flow_box:nth-of-type(even) {
    background-color: var(--main-color);
    color: #fff;
}

.page_flow .flow_box::before {
    display: block;
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1;
    margin: auto;
    border-top: 70px solid #EBEBEB;
    border-right: 70px solid transparent;
    border-bottom: 70px solid transparent;
    border-left: 70px solid transparent;
}

.page_flow .flow_box:nth-of-type(even)::before {
    border-top: 70px solid var(--main-color);
    border-right: 70px solid transparent;
    border-bottom: 70px solid transparent;
    border-left: 70px solid transparent;
}

.page_flow .flow_box:last-child {
    padding-bottom: 80px;
}

.page_flow .flow_box:last-child::before {
    display: none;
}

.page_flow .flow_h2 {
    font-size: 32px;
    letter-spacing: 0.2rem;
    text-align: center;
    margin: 0 0 40px;
    padding: 0 0 15px;
    color: var(--main-color);
    font-weight: 900;
    position: relative;
}

.page_flow .flow_h2::before {
    display: block;
    content: "";
    width: 80px;
    height: 3px;
    background-color: var(--main-color);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.page_flow .flow_box:nth-of-type(even) .flow_h2 {
    color: #fff;
}

.page_flow .flow_box:nth-of-type(even) .flow_h2::before {
    background-color: #EBEBEB;
}

.page_flow .flow_h2 span {
    display: inline-block;
    width: 60px;
    line-height: 60px;
    background-color: var(--main-color);
    text-align: center;
    letter-spacing: 0.02rem;
    margin-right: 20px;
    border-radius: 50%;
    font-weight: 700;
    color: #fff;
}

.page_flow .flow_box:nth-of-type(even) .flow_h2 span {
    background-color: #fff;
    color: var(--main-color);
}

.page_flow .flow_box .contents {
    width: 48.5%;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 1px 1px 5px 1px rgba(51, 51, 51, 0.15);
    overflow: hidden;
}

.page_flow .flow_box .contents .image img {
    display: block;
}

.page_flow .flow_box .contents .textBox .title {
    font-size: 20px;
    letter-spacing: .1em;
    font-weight: 800;
    color: #fff;
    background-color: var(--main-color);
    text-align: center;
    padding: 10px 0;
    margin: -22px auto 10px;
    width: 80%;
    position: relative;
    border-radius: 5px;
}

.page_flow .flow_box:nth-of-type(even) .contents .textBox .title {
    background-color: var(--main-color);
}

.page_flow .flow_box .contents .textBox .text {
    font-size: 16px;
    letter-spacing: .04em;
    line-height: 1.8;
    padding: 10px 20px 20px;
    color: var(--font-color);
}

.page_flow .flow_contact {
    margin: 50px 0 0;
}

.page_flow .flow_contact .textBox {
    background-color: #fff;
}

.page_flow .flow_contact .textBox,
.page_flow .flow_contact .buttonBox {
    width: 48.5%;
}

.page_flow .flow_contact .textBox {
    position: relative;
    z-index: 1;
    background-image: url(/penguin/resources/image/sumot/_common/flow_image10.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 50px;
}

.page_flow .flow_contact .textBox .text {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 2;
    text-align: center;
}

.page_flow .flow_contact .textBox .text span {
    color: #B71B1B;
}

.page_flow .flow_contact .buttonBox a {
    padding: 15px 0;
    display: block;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: .1em;
    text-align: center;
    background-color: #E3B942;
    border: 2px solid #E3B942;
    color: #fff;
    transition: .2s;
}

.page_flow .flow_contact .buttonBox a span {
    font-size: 18px;
    letter-spacing: 0.06em;
    display: block;
}

.page_flow .flow_contact .buttonBox a:hover {
    background-color: #fff;
    color: #E3B942;
}

.page_flow .flow_contact .buttonBox a+a {
    margin-top: 15px;
}

.page_flow .flow_contact .buttonBox a:nth-of-type(even) {
    background-color: #B71B1B;
    border: 2px solid #B71B1B;
}

.page_flow .flow_contact .buttonBox a:nth-of-type(even):hover {
    background-color: #fff;
    color: #B71B1B;
}

.page_flow .flow_textBox {
    background-color: #fff;
    padding: 30px;
    border-radius: 10px;
    margin: 0 0 50px;
}

.page_flow .flow_textBox .text {
    font-size: 16px;
    line-height: 2;
    color: var(--font-color);
}

.page_flow .flow_list li {
    width: 32%;
    margin-right: 2%;
    border-radius: 10px;
    overflow: hidden;
    background-color: #fff;
}

.page_flow .flow_list li:nth-of-type(3n) {
    margin-right: 0;
}

.page_flow .flow_list li .image img {
    display: block;
}

.page_flow .flow_list li .small_list {
    padding: 0 20px 20px;
}

.page_flow .flow_list li .small_list .title {
    font-size: 16px;
    letter-spacing: 0.1em;
    font-weight: 800;
    color: #fff;
    background-color: var(--main-color);
    text-align: center;
    padding: 10px 0;
    margin: -22px auto 10px;
    width: 80%;
    position: relative;
    border-radius: 5px;
}

.page_flow .flow_list li .small_list p {
    font-size: 15px;
    font-weight: 600;
    position: relative;
    padding-left: 20px;
    letter-spacing: 0.06rem;
}

.page_flow .flow_list li .small_list p+p {
    margin-top: 10px;
}

.page_flow .flow_list li .small_list p::before {
    display: block;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #E3B942;
    position: absolute;
    top: 5px;
    left: 0;
}

.page_flow .flow_box_flex02 {
    position: relative;
    padding-top: 100px;
}

.page_flow .flow_box_flex02 .flow_textBox {
    width: 55%;
    position: relative;
    z-index: 1;
    margin: 0 0 0 auto;
    border: 2px solid var(--main-color);
}

.page_flow .flow_box_flex02.yellow .flow_textBox {
    border: 2px solid var(--main-color);
}

.page_flow .flow_box_flex02 .flow_image {
    width: 55%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 10px;
    overflow: hidden;
}

/* 引越し手続きマニュアル */
.page_moving .moving_main {
    padding: 65px 0;
}

.page_moving .moving_main .image {
    width: 45%;
    overflow: hidden;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.16);
    border-radius: 20px;
}

.page_moving .moving_main .textBox {
    width: 52%;
}

.page_moving .moving_main .textBox .title {
    font-size: 28px;
    font-weight: 700;
    color: var(--main-color);
    letter-spacing: 0.1em;
    margin: 0 0 15px;
}

.page_moving .moving_main .textBox .text {
    font-size: 18px;
    letter-spacing: 0.06em;
    line-height: 2;
}

.page_moving .moving_point {
    padding: 60px 0;
    margin: 0 0 60px;
    background-color: #EBEBEB;
}

.page_moving .moving_point .moving_point_list {
    margin: 40px 0 0;
}

.page_moving .moving_point .moving_point_list li {
    width: 32%;
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.16);
    overflow: hidden;
    border-radius: 10px;
}

.page_moving .moving_point .moving_point_list li:nth-of-type(n + 4) {
    margin-top: 2%;
}

.page_moving .moving_point .moving_point_list li .title {
    background-color: var(--main-color);
    color: #fff;
    padding: 12px 0;
    text-align: center;
    font-size: 20px;
    letter-spacing: .1em;
    font-weight: 700;
}

.page_moving .moving_point .moving_point_list li:nth-of-type(even) .title {
    background-color: var(--black-color);
    color: #fff;
}

.page_moving .moving_point .moving_point_list li .image img {
    display: block;
}

.page_moving .moving_point .moving_point_list li .text {
    font-size: 15px;
    letter-spacing: 0em;
    line-height: 1.8;
    padding: 15px;
}

/*新社会人・新入生応援*/
.page_new-life .new_life_main {
    padding: 70px 0;
}

.page_new-life .new_life_main .flex-sb {
    flex-direction: row-reverse;
    align-items: center;
}

.page_new-life .new_life_main .image {
    position: relative;
    width: 45%;
    padding-bottom: 50px;
}

.page_new-life .new_life_main .image img {
    width: 75%;
    display: block;
}

.page_new-life .new_life_main .image img.small {
    width: 55%;
    position: absolute;
    bottom: 0;
    right: 0;
}

.page_new-life .new_life_main .textBox {
    width: 50%;
}

.page_new-life .new_life_main .textBox .title {
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.6;
    font-weight: 700;
    color: var(--font-color);
    margin: 0 0 15px;
}

.page_new-life .new_life_main .textBox .text {
    font-size: 16px;
    letter-spacing: 0.04em;
    line-height: 1.8;
}

.page_new-life .new_life_price {
    padding: 70px 0;
    background-color: #e7eaeb;
}

.page_new-life .page_security_introduction .new_life_price {
    background-color: unset;
    padding-bottom: unset;
}

.page_new-life .new_life_price .flow_box {
    background-color: unset;
}

.page_new-life .page_security_introduction .flow_box {
    background-color: unset;
    padding-bottom: unset;
}


.page_new-life .new_life_price .new_life_price_tableBox {
    margin-top: 40px;
}

.page_new-life .new_life_price .new_life_price_tableBox .title {
    background-color: var(--main-color);
    color: #fff;
    padding: 4px 0;
    border-radius: 4px;
    font-size: 20px;
    display: inline-block;
    padding: 0 25px;
    line-height: 2;
    font-weight: 600;
    letter-spacing: 0.06rem;
    margin: 0 0 20px;
}

.page_new-life .new_life_price .new_life_price_tableBox table {
    width: 100%;
    border-collapse: collapse;
    background-color: #fff;
}

.page_new-life .new_life_price .new_life_price_tableBox table th,
.page_new-life .new_life_price .new_life_price_tableBox table td {
    padding: 15px 20px;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    border: 1px solid var(--black-color);
    line-height: 1.8;
}

.page_new-life .new_life_price .new_life_price_tableBox table th {
    width: 30%;
    background-color: var(--black-color);
    color: #fff;
    border-bottom: solid #fff;
    font-weight: 700;
}

.page_new-life .new_life_price .new_life_price_tableBox table tr:last-child th {
    border-bottom: 1px solid var(--black-color);
}

.page_new-life .new_life_price .new_life_price_tableBox table td {
    width: 70%;
}

.page_new-life .new_life_price .common_btn {
    margin-top: 40px;
}

.page_new-life .new_life_point {
    padding: 70px 0;
}

.page_new-life .new_life_point_list {
    margin-top: 40px;
}

.page_new-life .new_life_point_list li {
    width: 32%;
    overflow: hidden;
    border-radius: 10px;
}

.page_new-life .new_life_point_list li img {
    display: block;
}

.page_new-life .new_life_point_list li .textBox {
    padding: 15px;
    background-color: #fff;
    text-align: center;
}

.page_new-life .new_life_point_list li .textBox .title {
    font-size: 16px;
    font-weight: 600;
    background-color: var(--main-color);
    border-radius: 50px;
    margin: 0 auto 10px;
    padding: 7px 0 5px;
    width: 70%;
    color: #fff;
}

.common_page-kodawari {
    padding: 0 0 70px;
}

/* 人気の地域・鉄道駅ランキング */
.page_ranking .ranking_Area .rankingBox {
    width: 48%;
}

.page_ranking .ranking_Area .rankingBox .rank_h2 {
    font-size: 25px;
    font-weight: 700;
    color: var(--black-color);
    letter-spacing: 0.1em;
    text-align: center;
    margin: 0 0 30px;
    position: relative;
    z-index: 1;
}

.page_ranking .ranking_Area .rankingBox .rank_h2::before {
    display: block;
    content: "";
    width: 100%;
    height: 2px;
    background-color: #E3B942;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: -1;
}

.page_ranking .ranking_Area .rankingBox .rank_h2 span {
    padding: 0 20px;
    background-color: #F9F9F9;
}

.page_ranking .ranking_Area .rankingBox .rank_list li {
    border-bottom: 1px solid #e7eaeb;
    border-right: 1px solid #e7eaeb;
    padding: 0 0 0 90px;
    line-height: 70px;
    position: relative;
}

.page_ranking .ranking_Area .rankingBox .rank_list li:nth-of-type(odd) {
    background-color: #f0f0f0;
}

.page_ranking .ranking_Area .rankingBox .rank_list li:first-child {
    border-top: 1px solid #e7eaeb;
}

.page_ranking .ranking_Area .rankingBox .rank_list li a {
    color: var(--font-color);
}

.page_ranking .ranking_Area .rankingBox .rank_list li .rank {
    text-align: center;
    width: 70px;
    height: 70px;
    line-height: 70px;
    font-size: 22px;
    font-weight: 600;
    background-color: var(--black-color);
    color: #fff;
    border-top: 1px solid #fff;
    position: absolute;
    top: -1px;
    left: 0;
}

.page_ranking .ranking_Area .rankingBox .rank_list li .rank .small {
    font-size: 15px;
    display: inline-block;
    margin-left: 3px;
}

.page_ranking .ranking_Area .rankingBox .rank_list li:nth-of-type(1) .rank,
.page_ranking .ranking_Area .rankingBox .rank_list li:nth-of-type(2) .rank,
.page_ranking .ranking_Area .rankingBox .rank_list li:nth-of-type(3) .rank {
    background-color: #E3B942;
    color: var(--font-color);
}

.page_ranking .ranking_Area .rankingBox .rank_list li .name {
    font-size: 18px;
    font-weight: 700;
    text-decoration: underline;
    letter-spacing: 0.1em;
    transition: .3s;
}

.page_ranking .ranking_Area .rankingBox .rank_list li a:hover .name {
    opacity: .5;
}

/* オーナー様へ */
.page_owner_intro_box {
    padding: 32px 26px 20px;
    background-color: #fff;
    border-radius: 8px;
    margin-top: 1em;
}

.page_owner_intro_box .trouble_list li {
    border: 2px solid var(--black-color);
    padding: 2px 16px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 100px;
    margin-right: 8px;
    letter-spacing: 0.04em;
}

.page_owner_intro_box .text_box {
    margin-top: 16px;
}

.page_owner_intro_box .text_box .text {
    font-size: 15px;
    letter-spacing: .04em;
    line-height: 1.7;
}

.page_owner_intro_box .text_box .text+.text {
    margin-top: 8px;
}

.page_owner_flow {
    margin-top: 65px;
}

.page_owner_flow_list {
    margin-top: 0;
}

.page_owner_flow_list ul li {
    border-bottom: 1px solid #eee;
    position: relative;
    padding: 26px 80px 26px 120px;
}

.page_owner_flow_list ul li .num {
    position: absolute;
    left: 40px;
    background-color: var(--main-color);
    color: #fff;
    width: 60px;
    font-size: 30px;
    text-align: center;
    height: 50px;
    border-radius: 8px;
    font-weight: 700;
    line-height: 52px;
}

.page_owner_flow_list ul li .label {
    font-size: 16px;
    letter-spacing: 0.04em;
    font-weight: 900;
    padding-top: 9px;
}

.page_owner_flow_list ul li .text {
    font-size: 14px;
    letter-spacing: 0.04em;
    line-height: 1.6;
    margin-top: 8px;
}

.page_owner_flow_list ul li:nth-child(even) {
    background-color: #ffff;
}

.page_owner_flow_box {
    margin-top: 16px;
}

.page_owner_trouble {
    margin-top: 65px;
}

.page_owner_trouble_box {
    background-color: #fff;
    padding: 32px 26px 20px;
    margin-top: 1em;
}

.page_owner_trouble_box .text_box .text {
    font-size: 15px;
    letter-spacing: .04em;
    line-height: 1.7;
}

.page_owner_trouble_box .text_box .text+.text {
    margin-top: 8px;
}

.page_owner_management_flow {
    margin-top: 65px;
}

.page_owner_management_flow_box {
    margin-top: 16px;
}

.page_owner_management_flow_box ul li {
    border: 2px solid var(--main-color);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    background-color: #fff;
    width: 23%;
    display: grid;
    place-content: center;
    padding-left: 30px;
    border-radius: 100px;
    position: relative;
    min-block-size: 50px;
}

.page_owner_management_flow_box ul li:nth-child(n + 5) {
    margin-top: 12px;
}

.page_owner_management_flow_box ul li .num {
    position: absolute;
    top: -1px;
    left: -1px;
    color: #fff;
    display: grid;
    place-content: center;
    background-color: var(--main-color);
    border-radius: 100px;
    width: 48px;
    height: 48px;
    font-size: 22px;
}

.page_owner_management_flow_box ul li::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -20px;
    width: 0;
    height: 0;
    border-top: 15px solid var(--main-color);
    border-left: 15px solid transparent;
    transform: rotate(45deg);
    margin: auto;
}

.page_owner_management_flow_box ul li:last-child::before {
    display: none;
}

.page_owner_bring ul li {
    background-image: url(./image/icon_check.svg);
    background-position: left 15px center;
    background-repeat: no-repeat;
    background-size: 20px;
    letter-spacing: .04em;
    background-color: #F0EEEC;
    width: 25%;
    padding: 12px 6px 12px 45px;
    border: 2px solid #fff;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 13px;
    font-weight: 700;
}

.page_owner_bring {
    margin-top: 24px;
}

.page_owner_bring ul {
    margin-top: 14px;
}

.page_owner_bring ul li.big {
    width: 50%;
}

/* 不動産用語集 */
.page_glossary .page-gro-contents {
    margin: 20px 0 0;
}

.page_glossary .glossary-items {
    width: 31%;
}

.page_glossary .glossary-line {
    display: flex;
    font-size: 18px;
    margin-bottom: 30px;
    align-items: center;
}

.page_glossary .glossary-line.big {
    padding-right: 0;
}

.page_glossary .a-line {
    padding-right: 15px;
    padding-left: 15px;
    color: var(--main-color);
    font-weight: bold;
    margin: 0;
}

.page_glossary .glossary-line .a-line.big {
    padding-right: 0;
}

.page_glossary .glossary-line a {
    padding: 10px 12px;
    margin-left: 15px;
    background: #fff;
    text-decoration: none;
    color: var(--main-color);
    box-shadow: 1px 1px 2px 1px rgba(51, 51, 51, 0.15);
    border-radius: 5px;
    transition: 0.3s;
}

.page_glossary .glossary-line a:hover {
    background: var(--black-color);
    color: #fff;
}

.page_glossary .glossary_index {
    margin-top: 80px;
}

.page_glossary .glossary_index h2:first-child {
    margin-top: 0;
}

.page_glossary .glossary_index h2 {
    letter-spacing: 0.1rem;
    font-size: 20px;
    margin: 30px 0 20px;
    font-weight: bold;
    background-color: var(--main-color);
    color: #fff;
    display: inline-block;
    padding: 7px 20px 7px 5px;
    border-radius: 4px;
}

.page_glossary .glossary_box {
    margin-bottom: 20px;
}

.page_glossary .glossary_box .page_h3 {
    font-size: 18px;
    letter-spacing: 0.1rem;
    font-weight: 600;
    color: var(--main-color);
    background-color: #F0EEEC;
    padding: 10px 40px 10px 20px;
    position: relative;
}

.page_glossary .glossary_box .page_h3::before {
    display: block;
    content: "";
    width: 10px;
    height: 10px;
    border: solid var(--black-color);
    border-width: 2px 2px 0 0;
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: -6px;
    right: 20px;
    bottom: 0;
    margin: auto;
}

.page_glossary .glossary_box .text {
    padding: 0 20px 15px;
    background-color: #F0EEEC;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.06rem;
    text-align: justify;
}

.page_glossary .glossary_search {
    padding: 50px 0;
    background-color: #F0EEEC;
}

.page_glossary .glossary_box .closeBtnHat {
    display: none;
}

@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.58vw !important;
        padding-top: 60px;
        min-width: 100% !important;
    }

    /* 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固定ページ 共通設定 */
    .common_page_wrap {
        padding: 10vw 0;
    }

    .reserve_text {
        font-size: 6vw;
    }

    /* パンくず */

    .breadcrumb {
        font-size: 3.07vw;
        margin-top: 7.69vw;
        margin-bottom: 3.58vw;
    }

    .breadcrumb span {
        margin-inline: 1.79vw;
    }

    .single-staff-fv .breadcrumb {
        margin-bottom: 5.64vw;
        margin-left: -2.56vw;
    }

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

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

    /* ヘッダー */
    .sp-site-header {
        position: fixed;
        width: 100%;
        top: 0;
        left: 0;
        background-color: var(--main-color);
        z-index: 10000;
        padding: 12px 60px 11px 10px;
    }

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

    .sp-header__logo {
        width: 120px;
        flex-shrink: 0;
    }

    .sp-header__menu {
        display: flex;
        gap: 0 10px;
        align-items: center;
    }

    .sp-header-btn__text {
        font-size: 10px;
        color: #FFF;
        font-weight: 500;
        letter-spacing: .025em;
    }

    .sp-header-btn .icon-check {
        margin: 0 auto 4px;
    }

    .sp-header-btn a {
        display: block;
    }

    .sp-header-btn .icon-favorite {
        margin: 0 auto 6px;
    }

    .sp-header__logo a {
        display: block;
        height: 100%;
    }

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

    /* TOP メインビジュアル */
    .top-mv-sec {
        padding-block: 41.5vw 0;
        margin-bottom: 15.38vw;
    }

    .top-mv__cont {
        padding-left: 0;
    }

    .top-mv__ttl-img {
        width: 74.12vw;
        margin-bottom: 0;
    }

    .top-mv__ttl {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        margin-bottom: 5.12vw;
        padding-left: 2.56vw;
    }

    .top-mv__ttl-en {
        font-size: 10.25vw;
        margin-left: auto;
    }

    .top-mv__bottom {
        flex-direction: column;
    }

    .top-mv__main-text {
        font-size: 3.84vw;
        padding-left: 2.56vw;
    }

    .top-mv__voice-box {
        width: 100%;
        margin-top: 19.4vw;
        margin-right: 0;
        padding: 3.84vw 2.56vw;
    }

    .top-mv-sec .wrap.lr {
        width: 100%;
        max-width: 95%;
    }

    .top-mv__voice-box .top-mv__voice-slider {
        margin-bottom: 2.56vw;
    }

    .top-mv__voice-slider .slick-arrow {
        width: 3.07vw;
        bottom: -6.6vw;
    }

    .top-mv__voice-slider .slick-slide a {
        gap: 0 2.56vw;
    }

    .top-mv__voice-slider .slick-slide img {
        width: 20.51vw;
    }

    .top-mv__voice-item-text {
        font-size: 2.56vw;
    }

    .top-mv__voice-ttl {
        font-size: 3.58vw;
        margin-bottom: 1.28vw;
    }

    .top-mv__voice-date {
        font-size: 3.07vw;
        margin-bottom: 0.76vw;
    }

    .top-mv__voice-slider .slick-dots {
        bottom: -6.4vw;
        left: 5vw;
    }

    .top-mv__voice-more-btn a {
        font-size: 3.58vw;
        gap: 0 2.56vw;
    }

    .top-mv__voice-more-btn a::after {
        width: 2.05vw;
    }

    .top-mv__voice-slider .slick-dots li {
        width: 2.05vw;
        height: 2.05vw;
        margin: 0 1.53vw;
    }

    .top-mv__voice-slider .slick-dots li button {
        width: 2.05vw;
        height: 2.05vw;
    }

    .top-mv__voice-arrow-next {
        left: 21.6vw;
    }

    .top-mv__voice-arrow-prev {
        left: 0.76vw;
    }

    /* TOP バナー */
    .top-banner-item {
        margin-left: 2.56vw;
        width: 76.92vw;
    }

    .top-banner-sec {
        margin-bottom: 21.41vw;
    }

    /* TOP ナイター営業 */
    .cta-night-sec::before {
        clip-path: polygon(0 0, 100% 10.76vw, 100% 100%, 0 calc(100% - 10.76vw));
    }

    .cta-night-sec__outer {
        clip-path: polygon(0 10.76vw, 100% 0%, 100% calc(100% - 10.76vw), 0% 100%);
        padding-block: 26.92vw 23.07vw;
        background-image: url(/wp-content/themes/swell_child/image/top_night_bg_sp.webp);
    }

    .cta-night__bg-text {
        font-size: 14.35vw;
        color: #FFF;
        opacity: .13;
    }

    .cta-night-sec__outer::before {
        background-color: #1D1D1D;
        opacity: .7;
    }

    .cta-night__bg-text-track.-bottom {
        bottom: 1vw;
    }

    .cta-night__ttl {
        font-size: 4.6vw;
        margin-bottom: 4.6vw;
        padding-bottom: 1vw;
    }

    .cta-night__ttl-en {
        font-size: 14.35vw;
        margin-bottom: 3.58vw;
    }

    .cta-night__main {
        font-size: 3.58vw;
        margin-bottom: 5.1vw;
    }

    .cta-night__btn-box {
        flex-direction: column;
        gap: 2.56vw 0;
    }

    .cta-night__btn a {
        width: 76.92vw;
        min-block-size: 15.38vw;
        font-size: 4.6vw;
    }

    /* TOP スタッフをご紹介 */
    .top-staff-sec {
        padding-top: 25.64vw;
    }

    .top-staff-ttl {
        margin-bottom: 29.23vw;
    }

    .top-staff-ttl__main {
        font-size: 5.1vw;
        margin-bottom: 3.58vw;
    }

    .top-staff-ttl__main .large {
        font-size: 7.17vw;
    }

    .top-staff-ttl__catch {
        font-size: 3.58vw;
        line-height: 1.67;
    }

    .top-staff-bg-font {
        font-size: 28.2vw;
        top: -98vw;
        right: 67.5vw;
        opacity: .05;
    }

    .top-staff__list {
        position: relative;
    }

    .top-staff-slider {
        padding-left: 18.15vw;
        height: 89.74vw;
    }

    .top-staff-slider .slick-list {
        overflow: visible;
    }

    .top-staff-slider li {
        width: 51.28vw;
        height: 64.10vw;
        margin-right: 2.56vw;
        flex: none;
        transition: 0.3s ease;
    }

    .top-staff-list__item-img {
        width: 100%;
        height: 100%;
    }

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

    .staff-slider-nav {
        position: absolute;
        top: -19.72vw;
        right: 0;
        z-index: 10;
        display: flex;
        align-items: center;
        gap: 0 6.41vw;
    }

    .top-staff-slider .slick-track {
        display: flex !important;
        align-items: flex-end;
    }

    .top-staff-list__item-ttl-box {
        padding: 0 5.12vw 3.84vw;
    }

    .top-staff-list__item-num {
        font-size: 2.56vw;
        margin-bottom: 2.05vw;
    }

    .top-staff-list__item-num .large {
        font-size: 3.58vw;
    }

    .top-staff-list__item-ttl {
        gap: 0 2.56vw;
        margin-bottom: .51vw;
    }

    .top-staff-list__item-ttl-jp {
        font-size: 6.15vw;
    }

    .staff-count {
        font-size: 4.61vw;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 0 2.56vw;
    }

    .staff-arrows .slick-arrow {
        background-color: var(--main-color);
        border: none;
        color: #FFF;
        padding: 0;
        width: 12.82vw;
        aspect-ratio: 1/1;
        min-width: 0;
        display: grid;
        place-content: center;
    }

    .staff-arrows {
        display: flex;
        gap: 0 2.56vw;
    }

    .staff-arrows .slick-arrow::before {
        content: "";
        width: 3.07vw;
        aspect-ratio: 1/1;
        min-width: 0;
        border: solid #FFF;
        border-width: 2px 2px 0 0;
    }

    .staff-arrows .staff-prev::before {
        rotate: -135deg;
        translate: 0.6vw 0;
    }

    .staff-arrows .staff-next::before {
        rotate: 45deg;
        translate: -0.6vw 0;
    }

    .staff-count__border {
        display: inline-block;
        width: 2.56vw;
        height: 2px;
        background-color: #150500;
    }

    .top-staff-list__item-ttl-box {
        opacity: 0;
        transform: translateY(2.56vw);
        transition: 0.3s ease;
    }

    .top-staff-slider .slick-current .top-staff-list__item-ttl-box {
        opacity: 1;
        transform: translateY(0);
        transition-delay: 0.8s;
    }

    /* 不動産・賃貸物件を探す */
    .top-search-sec {
        padding-block: 21.28vw 16.92vw;
    }

    .top-search-sec .common-sec-ttl {
        margin-bottom: 5.12vw;
    }

    .common-sec-ttl__main {
        font-size: 5.12vw;
        margin-bottom: 3.58vw;
    }

    .common-sec-ttl__main .large {
        font-size: 7.17vw;
    }

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

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

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

    .top-search__btn li {
        height: 38.46vw;
    }

    .top-search__btn-ttl-jp {
        writing-mode: unset;
        width: 51.28vw;
        font-size: 4.61vw;
        min-block-size: 11.79vw;
        padding: 2.56vw 2vw;
    }

    .top-search__btn-ttl-en {
        rotate: 0deg;
    }

    .top-search__btn-line .top-search__btn-ttl-en {
        width: 22.05vw;
        margin: 2.05vw auto 0;
    }

    .top-search__btn li a::after {
        width: calc(100% - 5.12vw);
        top: 2.56vw;
        left: 2.56vw;
        aspect-ratio: 33/13;
    }


    .top-search__btn li a {
        padding-top: 7.5vw;
    }

    .top-search__btn-area .top-search__btn-ttl-en {
        width: 21.79vw;
        margin: 2.05vw auto 0;
    }

    .top-search__btn-request .top-search__btn-ttl-en {
        width: 14.61vw;
        margin: 2.05vw auto 0;
    }

    .top-search__free {
        margin-bottom: 4.61vw;
    }

    .top-search__free-ttl {
        margin-bottom: 3.84vw;
    }

    .top-search__free-ttl-jp {
        font-size: 4.1vw;
        margin-bottom: 1.53vw;
    }

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

    .top-search__free-catch {
        font-size: 3.58vw;
        margin-bottom: 5.89vw;
    }

    .top-search__keyword-form {
        width: 100%;
    }

    .top-search__keyword-form .text {
        padding: 3.84vw 0 3.84vw 5.12vw;
        font-size: 3.58vw;
    }

    .top-search__keyword-form .submit {
        width: 15.25vw;
        background-size: 5vw;
        padding: 3.84vw 5.12vw;
    }

    .top-search__tag ul {
        flex-wrap: wrap;
        gap: 3.07vw 2.56vw;
        justify-content: flex-start;
    }

    .top-search__tag li a {
        font-size: 3.33vw;
    }

    /* TOP こだわり不動産・賃貸条件特集 */
    .top-feature-sec {
        padding-top: 20.51vw;
    }

    .top-feature__ttl-box {
        flex-direction: column;
        margin: 0;
        gap: 1.28vw;
        align-items: flex-start;
        margin-bottom: 3.84vw;
        padding-left: 5.12vw;
    }

    .top-feature__ttl-en {
        font-size: 5.12vw;
    }

    .top-feature__ttl-jp {
        font-size: 3.58vw;
    }

    .feature-grid-item {
        height: 51.28vw;
    }

    .feature-grid-item.-item4 {
        height: 33.33vw;
    }

    .feature-grid-item.-item5 {
        height: 33.33vw;
    }

    .feature-grid-item.-item6 {
        height: 33.33vw;
    }

    .top-feature__grid-items ul {
        gap: 2.56vw;
        grid-template-columns: 41.7vw 46.9vw 89.74vw;
    }

    .feature-grid-item__text-box {
        padding: 0 2vw 2.3vw 3.84vw;
    }

    .feature-grid-item__ttl {
        font-size: 4.61vw;
        margin-bottom: 0;
    }

    .top-feature-sec .wrap {
        width: 100%;
        max-width: 100%;
    }

    .top-feature__flex-box {
        padding-inline: 2.56vw;
        gap: 0 2.56vw;
    }

    .feature-grid-item.-item10 {
        height: 33.33vw;
    }

    .feature-grid-item.-item11 {
        height: 33.33vw;
    }

    .feature-grid-item.-item12 {
        height: 33.33vw;
    }

    .feature-grid-item.-item1 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img1_sp.webp);
    }

    .feature-grid-item.-item2 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img2_sp.webp);
    }

    .feature-grid-item.-item3 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img3_sp.webp);
    }

    .feature-grid-item.-item4 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img4_sp.webp);
    }

    .feature-grid-item.-item5 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img5_sp.webp);
    }

    .feature-grid-item.-item6 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img6_sp.webp);
    }

    .feature-grid-item.-item7 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img7_sp.webp);
    }

    .feature-grid-item.-item8 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img8_sp.webp);
    }

    .feature-grid-item.-item9 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img9_sp.webp);
    }

    .feature-grid-item.-item10 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img10_sp.webp);
    }

    .feature-grid-item.-item11 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img11_sp.webp);
    }

    .feature-grid-item.-item12 .feature-grid-item__bg {
        background-image: url(/wp-content/themes/swell_child/image/top_feature_img12_sp.webp);
    }

    .feature-grid-item.-item2 .feature-grid-item__ttl,
    .feature-grid-item.-item3 .feature-grid-item__ttl,
    .feature-grid-item.-item8 .feature-grid-item__ttl,
    .feature-grid-item.-item9 .feature-grid-item__ttl {
        border: none;
    }

    .feature-grid-item__ttl .border {
        display: inline-block;
        border-bottom: solid 1px #FFF;
    }

    .top-feature__grid-items {
        width: auto;
    }

    /* TOP 不動産ブログ */
    .top-blog-sec {
        padding-block: 17.43vw;
    }

    .top-blog__top {
        margin-bottom: 6.41vw;
        justify-content: center;
    }

    .common-left-ttl {
        flex-direction: column;
        align-items: center;
        gap: 1.28vw;
    }

    .common-left-ttl__en {
        font-size: 8.2vw;
    }

    .common-left-ttl__jp {
        font-size: 3.58vw;
    }

    .top-blog__list ul {
        display: flex;
        gap: 0 3.84vw;
    }

    .top-blog__list li {
        width: 69.23vw;
        flex-shrink: 0;
    }

    .top-blog__list {
        overflow-x: scroll;
        padding-left: 2.56vw;
        margin-bottom: 6.4vw;
    }

    .top-blog-sec .wrap.mid {
        width: 100%;
        max-width: 95%;
    }

    .top-blog-item__img {
        height: 39.74vw;
        margin-bottom: 3.84vw;
    }

    .top-blog-item__main-ttl {
        font-size: 4.1vw;
        margin-bottom: 2.56vw;
    }

    .common-more-btn a {
        width: 76.92vw;
        min-block-size: 15.38vw;
        padding: 4.1vw;
        margin: 0 auto;
    }

    .common-more-btn__text {
        font-size: 4.61vw;
    }

    /* TOP 不動産お役立ちコンテンツ */
    .top-useful-sec {
        padding-block: 20.51vw 19.28vw;
    }

    .top-useful-sec::before {
        clip-path: polygon(0 7.69vw, 100% 0%, 100% calc(100% - 7.69vw), 0% 100%);
    }

    .top-useful-sec .wrap.mid {
        width: 100%;
        max-width: 100%;
    }

    .top-useful-sec .common-left-ttl {
        margin-bottom: 6.4vw;
    }

    .top-useful__list {
        overflow-x: scroll;
        padding-left: 5.12vw;
    }

    .top-useful__list ul {
        display: flex;
        gap: 0 5.12vw;
    }

    .top-useful__list li {
        flex-shrink: 0;
        width: 69.23vw;
    }

    .top-useful-item__img {
        height: 84.61vw;
        margin-bottom: 3.84vw;
    }

    .top-useful-item__ttl-box {
        margin-bottom: 2.56vw;
        gap: 0 2.3vw;
    }

    .top-useful-item__ttl-num {
        font-size: 3vw;
        translate: 0 -.1em;
    }

    .top-useful-item__ttl {
        font-size: 4.1vw;
    }

    .top-useful__list li:nth-child(3n+2) {
        margin-top: 0;
    }

    .top-useful__list li:nth-child(3n+3) {
        margin-top: 0;
    }

    /* TOP お客様の声・Google口コミ */
    .top-voice-sec {
        padding-top: 16.1vw;
    }

    .top-voice-sec .wrap.mid {
        width: 100%;
        max-width: 95%;
    }

    .top-voice__flex-box {
        display: block;
    }

    .top-voice__common-box {
        border-radius: 5px;
        padding: 15.38vw 0 12.82vw;
    }

    .top-voice-ttl {
        margin-bottom: 6.41vw;
        padding-inline: 2.56vw;
    }

    .top-voice-ttl__en {
        font-size: 8.2vw;
        font-weight: 700;
        color: var(--main-color);
        margin-bottom: 1.28vw;
    }

    .top-voice-ttl__catch {
        font-weight: 700;
    }

    .top-voice__item-list {
        overflow-y: unset;
        height: auto;
        margin-bottom: 6.41vw;
        overflow-x: scroll;
        padding-left: 2.56vw;
    }

    .top-voice__item-outer {
        display: flex;
        gap: 0 5.12vw;
    }

    .top-voice-item {
        width: 69.23vw;
        flex-shrink: 0;
        border: none;
    }

    .top-voice-item a {
        flex-direction: column;
        padding: 0;
        gap: 3.84vw 0;
    }

    .top-voice-item__main-more.pc {
        display: none;
    }

    .top-voice-item__main-ttl.pc {
        display: none;
    }

    .top-voice__common-box.-kuchikomi .top-voice__item-outer {
        display: block;
    }

    .voice-item__img {
        width: 100%;
        aspect-ratio: 27/22;
    }

    .top-voice-item+.top-voice-item {
        margin-top: 0;
    }

    .top-voice-item__main-top {
        margin-bottom: 0;
    }

    .top-voice-item__tag {
        width: 18.46vw;
        flex-shrink: 0;
        min-block-size: 7.43vw;
        margin-right: 2.56vw;
        border: solid 1px var(--main-color);
        background-color: #FFF;
        color: var(--main-color);
    }

    .top-voice-item__star {
        gap: 0 .5vw;
    }

    .top-voice-item__star img {
        width: 5.1vw;
    }

    .top-voice-item__stra-num {
        font-size: 6.15vw;
        margin-left: 1.79vw;
    }

    .top-voice__common-box.-kuchikomi {
        margin-top: 5.12vw;
        padding: 12.82vw 0 11.28vw;
    }

    .top-voice__common-box.-kuchikomi .top-voice-ttl {
        margin-bottom: 6.41vw;
    }

    .top-voice__common-box.-kuchikomi .top-voice-ttl__en {
        color: #FFF;
        margin-bottom: 1.28vw;
    }

    .top-voice__common-box.-kuchikomi .top-voice__item-list {
        height: 82.05vw;
        overflow-y: scroll;
        overflow-x: unset;
        padding-inline: 2.56vw;
    }

    .top-voice-kuchikomi-item {
        padding: 5.12vw;
    }

    .top-voice-kuchikomi-item__top {
        gap: 0 2.56vw;
        padding-bottom: 2.56vw;
        margin-bottom: 3.84vw;
    }

    .top-voice-kuchikomi-item__top-img {
        width: 12.8vw;
    }

    .top-voice-kuchikomi-item__star-box {
        gap: 0 1.28vw;
        margin-bottom: .76vw;
    }

    .top-voice-kuchikomi-item__star img {
        width: 3.84vw;
    }

    .top-voice-kuchikomi-item__star {
        gap: 0 1.28vw;
    }

    .top-voice-kuchikomi-item__stra-num {
        font-size: 5.12vw;
    }

    .top-voice-kuchikomi-item__main-ttl {
        font-size: 4.1vw;
    }

    .top-voice-kuchikomi-item__main-text {
        font-size: 3.33vw;
    }

    .top-voice__common-box.-kuchikomi .common-more-btn a {
        background-color: #FFF;
    }

    .top-voice__common-box.-kuchikomi .common-more-btn a .common-more-btn__text {
        color: var(--main-color);
    }

    /* TOP 選ばれる理由 */
    .top-reason-sec {
        padding-block: 13vw 15.38vw;
    }

    .common-center-ttl {
        margin-bottom: 7.17vw;
    }

    .common-center-ttl__en {
        font-size: 8.2vw;
        margin-bottom: 1.28vw;
    }

    .common-center-ttl__jp {
        font-size: 3.58vw;
    }

    .top-reason__list ul {
        grid-template-columns: 1fr;
        gap: 5.12vw;
    }

    .top-reason__item-img {
        height: 58.97vw;
        margin-bottom: 3.84vw;
    }

    .top-reason__item-ttl {
        font-size: 5.12vw;
        margin-bottom: 2.56vw;
    }

    /* TOP 新着不動産・賃貸物件情報 */
    .top-arrival-sec {
        padding-block: 15.38vw;
    }

    .top-arrival-sec .common-left-ttl {
        align-items: flex-start;
        margin-bottom: 3.84vw;
    }

    .top-arrival__catch {
        line-height: 1.7;
        font-size: 3.84vw;
        margin-bottom: 21.28vw;
    }

    .common-arrival__tab-box ul {
        grid-template-columns: repeat(3, 1fr);
        border: none;
        gap: 1.28vw 0;
    }

    .common-arrival__tab-box ul li {
        border-bottom: solid 1px #F0EEEC;
        min-block-size: 10.25vw;
        font-size: 3.33vw;
    }

    .common-arrival__tab-box {
        margin-bottom: 5.12vw;
    }

    .common-arrival__list-count {
        font-size: 5.12vw;
        top: -13.56vw;
    }

    .common-arrival__list ul {
        display: block;
    }

    .common-arrival__list li a {
        display: flex;
        align-items: center;
        gap: 0 2.56vw;
        margin-top: 2.56vw;
    }

    .common-arrival__item-img {
        width: 30.76vw;
        flex-shrink: 0;
        height: 25.64vw;
        margin-bottom: 0;
    }

    .common-arrival__item-text {
        width: 100%;
    }

    .common-arrival__item-name {
        margin-bottom: 1.53vw;
        font-size: 3.33vw;
    }

    .common-arrival__item-flex {
        margin-bottom: 3.58vw;
        padding-right: 6.92vw;
        gap: 0 1vw;
    }

    .common-arrival__item-madori {
        gap: 0 1.28vw;
    }

    .common-arrival__item-tag {
        font-size: 2.56vw;
        min-block-size: 4.35vw;
        width: 7.69vw;
    }

    .common-arrival__item-madori-text {
        font-size: 3.33vw;
    }

    .common-arrival__item-yachin-text {
        font-size: 2.05vw;
    }

    .common-arrival__item-yachin-text .num {
        font-size: 3.33vw;
    }

    .common-arrival__item-access {
        padding: 1.53vw 2.56vw;
    }

    .common-arrival__item-access-text {
        font-size: 2.56vw;
        line-height: 1.3;
    }

    .common-arrival__list {
        overflow-y: scroll;
        height: 76.92vw;
    }

    /* TOP 人気ランキング */
    .top-ranking-sec {
        margin-top: 0;
        width: 100%;
        padding: 0;
        position: relative;
        z-index: 0;
    }

    .common-ranking-list {
        grid-template-columns: 1fr;
        gap: 2.56vw;
    }

    .top-ranking__outer {
        width: 95%;
        margin: 0 auto;
        background-color: #F0EEEC;
        padding: 15.38vw 2.56vw;
    }

    .top-ranking-sec::before {
        content: "";
        width: 100%;
        height: 15.38vw;
        background-color: var(--main-color);
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    }

    .top-ranking__outer .wrap {
        max-width: 100%;
    }

    .common-ranking-item {
        background-color: #FFF;
        padding: 5.12vw;
    }

    .top-ranking__outer .common-center-ttl {
        margin-bottom: 5.12vw;
    }

    .common-ranking-item__head-en {
        font-size: 5.12vw;
    }

    .common-ranking-item__head {
        gap: 0 2.3vw;
        padding-bottom: 2.56vw;
        margin-bottom: 1.02vw;
    }

    .common-ranking-list li a {
        padding: 2.56vw 3.84vw;
        gap: 0 2.56vw;
    }

    .common-ranking-item__num {
        width: 6.66vw;
    }

    .common-ranking-item__name {
        font-size: 3.58vw;
    }

    /* TOP お部屋探しの流れ */
    .top-flow-sec {
        padding-block: 14.1vw 15.38vw;
    }

    .top-flow__flex {
        flex-direction: column;
        gap: 0;
    }

    .common-flex-ttl {
        margin-bottom: 0;
    }

    .common-flex-ttl__en {
        font-size: 5.12vw;
        margin-bottom: 6.41vw;
    }

    .common-flex-ttl__jp {
        font-size: 7.69vw;
        margin-bottom: 4.87vw;
    }

    .common-flex-ttl__jp .small {
        font-size: 7.69vw;
    }

    .common-flex-ttl__catch {
        font-size: 3.84vw;
        line-height: 1.7;
    }

    .top-flow__item {
        padding: 7.69vw 0;
        gap: 0 5.12vw;
        align-items: baseline;
    }

    .top-flow__item-head {
        flex-direction: column;
        gap: 3.84vw;
        width: auto;
    }

    .top-flow__item-head-img {
        width: 20.51vw;
    }

    .top-flow__item-head-en {
        font-size: 2.56vw;
    }

    .top-flow__item-head-en .num {
        font-size: 4.1vw;
    }

    .top-flow__item-ttl {
        font-size: 4.61vw;
        margin-bottom: 2.3vw;
    }

    /* TOP スタッフコラム */
    .top-column-sec {
        padding-block: 15.38vw 12.82vw;
    }

    .top-column-sec .wrap.mid {
        width: 100%;
        max-width: 100%;
    }

    /* TOP 新着情報 */
    .common-post__list {
        padding-left: 5.12vw;
        overflow-x: scroll;
        margin-bottom: 8.97vw;
        overflow-y: hidden;
    }

    .common-post__list ul {
        display: flex;
        gap: 0 4.87vw;
    }

    .common-post__list li {
        flex-shrink: 0;
        width: 69.23vw;
    }

    .common-post-item__img {
        height: 51.28vw;
        margin-bottom: 3.84vw;
    }

    .common-post-item__main-ttl {
        font-size: 4.1vw;
        margin-bottom: 2.56vw;
    }

    .common-post-item__main-text {
        margin-bottom: 2.56vw;
    }

    .common-post-item__date {
        font-size: 3.33vw;
    }

    .top-news-sec {
        padding-top: 15.38vw;
    }

    .top-news-sec .wrap.mid {
        width: 100%;
        max-width: 100%;
    }

    .top-news-sec .common-post__list {
        padding-bottom: 0;
        border-bottom: none;
    }

    .top-news-sec .common-post-item__main-ttl {
        font-size: 5.12vw;
    }

    .top-store-sec {
        padding-block: 23.07vw 15.38vw;
    }

    /* TOP 店舗一覧 */
    .top-store__flex {
        flex-direction: column;
        gap: 0;
        align-items: center;
    }

    .top-store__list {
        grid-template-columns: 1fr;
        gap: 2.56vw 0;
        width: 100%;
        margin-bottom: 6.4vw;
    }

    .top-store__ttl-box {
        width: 100%;
        margin-bottom: 6.15vw;
    }

    .top-store__ttl-box .common-flex-ttl {
        margin-bottom: 0;
    }

    .top-store__ttl-box .common-flex-ttl__en {
        font-size: 5.12vw;
        margin-bottom: 6.41vw;
    }

    .top-store__ttl-box .common-flex-ttl__jp {
        margin-bottom: 0;
    }

    .common-store__item-img {
        height: 46.15vw;
    }

    .common-store__item-cont {
        padding: 3.84vw 3.84vw 4.87vw;
    }

    .common-store__item-ttl {
        gap: 0 1.5vw;
        padding-bottom: 2.3vw;
        margin-bottom: 3.84vw;
    }

    .common-store__item-ttl-jp {
        font-size: 4.61vw;
    }

    .common-store__item-add {
        margin-bottom: 2.56vw;
    }

    .common-store__item-tel {
        gap: 0 1.28vw;
        margin-bottom: 1.28vw;
    }

    .common-store__icon-tel {
        width: 3.33vw;
    }

    .common-store__item-tel-text {
        font-size: 6.15vw;
    }

    .common-store__item-date {
        font-size: 3.07vw;
    }

    /* TOP フッター */
    .ft-info-sec {
        padding-block: 12.82vw;
    }

    .ft-info__flex {
        flex-direction: column;
        gap: 0;
        margin-bottom: 6.41vw;
    }

    .ft-info__credit-box {
        flex-direction: column;
        gap: 2.41vw 0;
    }

    .ft-info__cta-tel-box {
        flex-direction: column;
        padding: 6.41vw 5.12vw 6.15vw;
        gap: 0;
        margin-bottom: 5.12vw;
    }

    .ft-info__info-area {
        width: 100%;
    }

    .site-ft__logo {
        width: 51.28vw;
        margin: 0 auto 3.89vw;
    }

    .site-ft__map {
        aspect-ratio: 7/4;
        margin-bottom: 2.56vw;
    }

    .site-ft__add {
        margin-bottom: 3.84vw;
    }

    .ft-info__cta-tel-main {
        flex-direction: column;
        padding-left: 0;
        border-left: none;
        border-top: solid 1px #D8D2D2;
        padding-top: 2.56vw;
        gap: 0;
        align-items: center;
    }

    .ft-info__cta-area {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 0;
        gap: 8.2vw 0;
    }

    .ft-info__credit-text {
        font-size: 3.07vw;
        text-align: center;
    }

    .ft-info__credit-list {
        gap: 0 5.12vw;
    }

    .ft-info__credit-item {
        height: 10.15vw;
    }

    .ft-info__cta-box {
        padding: 6.41vw 5.12vw;
        margin-bottom: 0;
    }

    .ft-info__cta-tel-head {
        display: flex;
        align-items: center;
        gap: 0 2.3vw;
        padding-bottom: 1.28vw;
    }

    .ft-info__tel-head-en {
        margin-bottom: 0;
        font-size: 6.15vw;
    }

    .ft-info__tel-main-num {
        gap: 0 2.05vw;
    }

    .ft-info__tel-num-icon {
        width: 5.12vw;
    }

    .ft-info__tel-num-text {
        font-size: 7.17vw;
    }

    .ft-info__tel-main-date {
        font-size: 3.07vw;
        text-align: center;
    }

    .ft-info__cta-btn-box {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.56vw;
    }

    .ft-info__cta-btn-box .common-more-btn a {
        min-block-size: 12.82vw;
    }

    .ft-info__cta-btn-box .common-more-btn__text {
        font-size: 3.58vw;
    }

    .ft-info__main-text {
        font-size: 3.33vw;
        line-height: 1.5;
    }

    .site-footer__menu {
        flex-direction: column;
        gap: 0;
        margin-bottom: 8.97vw;
    }

    .site-footer__end {
        flex-direction: column-reverse;
        gap: 4.87vw 0;
    }

    .site-footer__menu.pc {
        display: none;
    }

    .site-footer__menu-group ul {
        display: none;
        padding-block: 5.12vw 2.3vw;
    }

    .site-footer__menu-ttl {
        color: #FFF;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 4.1vw;
        font-weight: 700;
        letter-spacing: .025em;
        padding-bottom: 2.56vw;
        border-bottom: solid 1px #F0EEEC;
    }

    .site-footer__menu-ttl::after {
        content: "";
        width: 2.3vw;
        aspect-ratio: 1/1;
        min-width: 0;
        display: block;
        border: solid #F0EEEC;
        border-width: 0 0 1px 1px;
        rotate: -45deg;
        flex-shrink: 0;
    }

    .site-footer__menu-group+.site-footer__menu-group {
        margin-top: 4.1vw;
    }

    .site-footer__menu-item a {
        gap: 0 2.56vw;
    }

    .site-footer__menu-item a::before {
        width: 1.53vw;
    }

    .site-footer__menu-item+.site-footer__menu-item {
        margin-top: 3.84vw;
    }

    .site-footer {
        padding-block: 12.82vw 36.35vw;
    }

    .copyright small {
        font-size: 3.07vw;
    }

    .site-footer__end-menu li a {
        font-size: 3.07vw;
    }

    .site-footer__end-menu ul {
        gap: 0 7.69vw;
    }

    .ft-info__tel-num-text.f-en.sp {
        display: block;
    }

    .site-footer__menu.sp {
        display: flex;
    }

    /* SP追従 */
    .sp-site-fixed {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background-color: var(--main-color);
        padding: 1.79vw 1.79vw 1.28vw;
        z-index: 9999;
    }

    .sp-fixed-btn__box {
        display: grid;
        gap: 0 1.28vw;
        grid-template-columns: repeat(4, 1fr);
        justify-content: center;
        margin-bottom: .76vw;
    }

    .sp-fixed-btn {
        border: solid 1px #FFF;
        border-radius: 3px;
        overflow: hidden;
    }

    .sp-fixed-btn a {
        display: grid;
        place-content: center;
        min-block-size: 12.8vw;
        padding-top: 1vw;
    }

    .site-fixed-btn__text {
        color: #FFF;
        font-size: 2.56vw;
        font-weight: 500;
        letter-spacing: .025em;
    }

    .sp-fixed__icon-tel {
        width: 4.6vw;
        margin: 0 auto .51vw;
        line-height: 1;
    }

    .sp-fixed-btn img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .sp-fixed__icon-mail {
        width: 4.61vw;
        margin: 0 auto 1.02vw;
        line-height: 1;
    }

    .sp-fixed__icon-reserve {
        width: 4.1vw;
        margin: 0 auto .76vw;
        line-height: 1;
    }

    .sp-fixed__icon-line {
        width: 5.12vw;
        margin: 0 auto .25vw;
        line-height: 1;
    }

    .sp-fixed-btn.-line a {
        background-color: #00B829;
    }

    .sp-fixed-btn.-line {
        border-color: #00B829;
    }

    .sp-site-fixed__end {
        color: #FFF;
        font-size: 2.56vw;
        font-weight: 500;
        letter-spacing: .025em;
        text-align: center;
    }

    /* ホバー */
    .cta-night__btn a:hover {
        background-color: transparent;
        color: #FFF;
    }

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

    .site-header__btn a:hover {
        background-color: var(--main-color);
        color: #FFF;
    }

    .site-header__btn.-line a:hover {
        opacity: 1;
        background-color: #00B829;
        color: #FFF;
    }

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

    .top-banner-item a:hover {
        opacity: 1;
    }

    .top-staff__list li a:hover .top-staff-list__item-img {
        scale: 1;
    }

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

    .top-search__tag li a:hover {
        color: #FFF;
    }

    .common-more-btn a:hover {
        background-color: var(--main-color);
    }

    .common-more-btn a:hover .common-more-btn__text {
        color: #FFF;
    }

    .top-blog__list li a:hover .top-blog-item__img img {
        scale: 1;
    }

    .top-useful__list li a:hover .top-useful-item__img img {
        scale: 1;
    }

    .common-arrival__list li a:hover .common-arrival__item-img img {
        scale: 1;
    }

    .common-ranking-list li a:hover {
        opacity: 1;
    }

    .common-post__list li a:hover .common-post-item__img img {
        scale: 1;
    }

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

    .feature-grid-item a:hover .feature-grid-item__bg {
        scale: 1;
    }

    .top-voice-item a:hover .voice-item__img img {
        scale: 1;
    }

    .common-store__item a:hover .common-store__item-img img {
        scale: 1;
    }

    /* 詳細ページ スタッフ紹介 */
    .single-staff-fv__cont {
        flex-direction: column-reverse;
        gap: 10.76vw 0;
        align-items: baseline;
    }

    .single-staff-fv {
        padding-block: 7.69vw 15.38vw;
    }

    .single-staff-fv__img-box {
        width: 94.87vw;
        height: 62.82vw;
    }

    .single-staff-fv__ttl-box {
        padding-bottom: 8.71vw;
    }

    .single-staff-fv__ttl-en {
        font-size: 5.12vw;
        margin-bottom: 6.41vw;
    }

    .single-staff-fv__ttl-jp {
        font-size: 7.69vw;
    }

    .single-staff-fv__post {
        font-size: 5.12vw;
    }

    .single-staff-fv__ttl {
        gap: 0 5.12vw;
    }

    .single-staff-fv__message {
        padding-top: 6.41vw;
    }

    .single-staff-fv__message-head {
        gap: 0 1.79vw;
        margin-bottom: 3.84vw;
    }

    .single-staff-fv__message-head-en {
        font-size: 6.15vw;
    }

    .single-staff-fv__message-text {
        font-size: 4.1vw;
        line-height: 1.8;
    }

    .single-staff-fv__bg-font {
        font-size: 30.76vw;
        top: -11.4vw;
        left: -14.8vw;
    }

    .single-staff-main::before {
        height: 38.46vw;
    }

    .single-staff-main .wrap.lr {
        max-width: 95%;
    }

    .single-staff-main__cont {
        padding: 12.82vw 2.56vw;
    }

    .single-staff-main__item {
        flex-direction: column;
        gap: 5.12vw;
    }

    .single-staff-main__item-img {
        width: 100%;
        height: 51.28vw;
    }

    .single-staff-main__item-ttl {
        flex-direction: column;
        align-items: baseline;
        gap: 1.28vw 0;
        margin-bottom: 3.84vw;
    }

    .single-staff-main__item-ttl-en {
        font-size: 8.2vw;
    }

    .single-staff-main__item-ttl-jp {
        font-size: 3.58vw;
        line-height: 1.5;
    }

    .single-staff-main__item-text {
        font-size: 4.1vw;
        line-height: 1.8;
    }

    .single-staff-main__item+.single-staff-main__item {
        margin-top: 17.94vw;
    }

    .single-staff-main__item:nth-child(even) {
        flex-direction: column;
    }

    .single-staff-promise {
        padding-top: 15.38vw;
    }

    .single-staff-promise__ttl {
        margin-bottom: 6.41vw;
    }

    .single-staff-promise__ttl-jp {
        font-size: 4.61vw;
        margin-bottom: 10vw;
    }

    .single-staff-promise__ttl-en {
        font-size: 12.3vw;
        line-height: 1.1;
    }

    .single-staff-promise__main-text {
        font-size: 3.58vw;
        width: 100%;
        text-align: left;
        line-height: 1.8;
        margin-bottom: 10.25vw;
    }

    .single-staff-promise__img {
        height: 17.94vw;
    }

    .single-staff .common_page_wrap {
        padding: 0 0 15.38vw;
    }

    .single-staff-fv__info-box {
        padding-top: 0;
    }

    .archive-staff-cont .top-staff__list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    .archive-staff-cont .top-staff__list li {
        height: 65vw;
        border-radius: 5px;
    }

    .archive-staff-cont .top-staff-list__item-ttl-box {
        opacity: 1;
        padding: 0 3vw 3vw;
        transform: translateY(0);
    }

    .archive-staff-cont .top-staff-list__item-ttl {
        flex-direction: column-reverse;
        gap: 0.3vw;
        margin-bottom: 1.6vw;
    }

    .archive-staff-cont .top-staff-list__item-ttl-jp {
        font-size: 4.8vw;
    }

    .archive-staff-cont .top-staff-list__item-ttl-en {
        font-size: 2.8vw;
    }

    .archive-staff-cont .top-staff-list__item-post {
        font-size: 3.3vw;
    }

    /* 共通FV */
    .common-page-fv {
        padding: 0;
        background: no-repeat;
    }

    .common-page-fv .wrap.mid {
        width: 100%;
        max-width: 95%;
    }

    .common-page-fv__img {
        position: relative;
        border-radius: 5px;
        overflow: hidden;
        margin-bottom: 7.69vw;
    }

    .common-page-fv__img::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: #1D1D1D;
        opacity: .28;
    }

    .common-page-fv::before {
        content: none;
    }

    .common-page-fv__img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .common-page-fv__ttl {
        text-align: center;
    }

    .common-page-fv__ttl-en {
        color: var(--main-color);
        font-size: 8.2vw;
        margin-bottom: 1.28vw;
    }

    .common-page-fv__ttl-jp {
        font-size: 3.58vw;
        color: #150500;
    }

    .breadcrumb .wrap.mid {
        width: 100%;
        max-width: 95%;
    }

    /* 治安ページ */
    .page_security_main .common-more-btn a {
        width: 100%;
        padding: 4.1vw 1.5vw;
    }

    .page_security_introduction .common-more-btn a {
        margin: 8vw auto 0;
        min-width: 76.92vw;
        max-width: 100%;
    }

    .page_security_review .common-more-btn a {
        margin: 8vw auto 0;
    }

    .page_security_average {
        padding-block: 10vw;
    }

    .page_security .top-arrival-sec {
        padding-block: 12vw;
    }

    .page_security_spot .common-more-btn a {
        margin: 8vw auto 0;
    }

    .page_security .top-blog-sec {
        padding-block: 0 12vw;
    }

    .page_security_main .common-more-btn__text {
        font-size: 4.21vw;
    }

    .page_security_main {
        padding: 10vw 0;
    }

    .page_security_main .wrap {
        padding: 6vw;
    }

    .page_security_main .image {
        width: 100%;
        margin: 0 0 4vw;
    }

    .page_security_main .textBox {
        width: 100%;
    }

    .page_security_main .textBox .title {
        font-size: 4.5vw;
        margin: 0 0 2.5vw;
    }

    .page_security_main .textBox .text {
        font-size: 3.4vw;
        line-height: 1.6;
    }

    .page_security_introduction {
        padding: 10vw 0 12vw;
    }

    .page_security_titleBox {
        margin: 0 0 7vw;
    }

    .page_security_titleBox .sub_title {
        font-size: 4.5vw;
        margin: 0 0 1vw;
    }

    .page_security_titleBox .title {
        font-size: 4.5vw;
        margin: 0 0 3vw;
    }

    .page_security_titleBox .text {
        font-size: 3.4vw;
        text-align: justify;
        line-height: 1.7;
    }

    .page_security_introduction_list li {
        flex-direction: column !important;
    }

    .page_security_introduction_list li:nth-child(n + 2) {
        margin-top: 10vw;
    }

    .page_security_introduction_list li .image {
        width: 100%;
        margin: 0 0 3vw;
    }

    .page_security_introduction_list li .textBox {
        width: 100%;
    }

    .page_security_introduction_list li .textBox .point {
        font-size: 4.5vw;
        margin: 0 0 1vw;
    }

    .page_security_introduction_list li .textBox .title {
        font-size: 4.5vw;
        margin: 0 0 2.5vw;
    }

    .page_security_introduction .note_box {
        margin-top: 10vw;
        padding: 5vw 3.5vw;
    }

    .page_security_introduction .note_box .ttl {
        font-size: 4.7vw;
    }

    .page_security_introduction .note_box .note_lest {
        margin-bottom: 5vw;
    }

    .page_security_introduction .note_box .note_lest ul li {
        flex-direction: column;
        gap: 2vw 0;
    }

    .page_security_introduction .note_box .note_lest ul li .theme {
        font-size: 4.6vw;
        gap: 0 2vw;
        width: unset;
    }

    .page_security_introduction .note_box .note_lest ul li .text {
        font-size: 3.6vw;
    }

    .page_security_introduction .note_box .note_lest ul li .theme::before {
        width: 5.5vw;
    }

    .page_security_introduction .note_box .note_lest ul li+li {
        margin-top: 2.5vw;
    }

    .page_security_introduction .note_box .item_box {
        flex-direction: column;
        gap: 5vw 0;
    }

    .page_security_introduction .note_box .item_box .item .catch {
        font-size: 4.6vw;
    }

    .page_security_introduction .note_box .item_box .item .text_box .text {
        font-size: 3.6vw;
    }

    .page_security_introduction .note_box .item_box .item .text_box .text+.text {
        margin-top: 2vw;
    }

    .page_security_introduction_list li .textBox .sub_title {
        font-size: 4vw;
    }

    .page_security_introduction_list li .textBox .text {
        font-size: 3.4vw;
        line-height: 1.7;
    }

    .page_security_introduction_list li .textBox .text+.text {
        margin-top: 2vw;
    }

    .page_security_introduction_list li .textBox .text {
        font-size: 3.5vw;
        line-height: 1.7;
    }

    .page_security_introduction_list li .textBox .common_area_btn a {
        margin: 6vw 0 0;
        width: 100%;
    }

    .page_security_review {
        padding: 12vw 0;
    }

    .page_security_review_list li:nth-child(n + 2) {
        margin-top: 6vw;
    }

    .page_security_review_list li .icon {
        width: 18%;
    }

    .page_security_review_list li .textBox {
        width: 75%;
        padding: 5vw;
    }

    .page_security_review_list li .text {
        font-size: 3.4vw;
        line-height: 1.6;
        text-align: justify;
    }

    .security_title {
        font-size: 4.5vw;
        margin: 0 0 6vw;
        padding: 1vw 0 1vw 2.5vw;
        border-left: 3px solid var(--main-color);
    }

    .page_security_average .priceBox {
        width: 100%;
        padding: 2vw 5vw 1vw;
        margin: 0 0 8vw;
    }

    .page_security_average .priceBox li {
        padding: 3vw 0;
    }

    .page_security_average .priceBox li::before {
        height: 3vw;
        left: -14vw;
    }

    .page_security_average .priceBox li .madori,
    .page_security_average .priceBox li .price {
        font-size: 3.4vw;
    }

    .page_security_average .priceBox li .price {
        width: 53%;
    }

    .page_security_average .textBox {
        width: 100%;
        padding: 0;
        border: none;
        border-radius: 0;
    }

    .page_security_average .textBox .block {
        width: 100%;
        margin: 0 0 3vw;
    }

    .page_security_average .textBox .block .image {
        width: 100%;
        margin: 0 0 5vw;
    }

    .page_security_average .textBox .block .title {
        width: 100%;
        font-size: 4.5vw;
        text-align: center;
    }

    .page_security_average .textBox .text {
        font-size: 3.4vw;
        text-align: justify;
    }

    .page_security_spot {
        padding: 10vw 0 22vw;
    }

    .page_security_introduction .common_message_box {
        margin: 10vw 0 0;
    }

    .page_security_spot_list li {
        width: 100%;
        min-height: auto;
        border-radius: 5px;
    }

    .page_security_spot_list li:nth-child(n + 2) {
        margin-top: 6vw;
    }

    .page_security_spot_list li .textBox {
        padding: 4vw;
        width: 100%;
    }

    .page_security_spot_list li .textBox .title {
        font-size: 4vw;
        margin: 0 0 2vw;
    }

    .page_security_spot_list li .textBox .text {
        font-size: 3.5vw;
        line-height: 1.7;
        text-align: justify;
    }

    ul.page_security_spot_list li .image {
        width: 100%;
        height: 45vw;
        position: relative;
    }

    .female_single_page .page_security_spot_list {
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .female_single_page ul.page_security_spot_list li .image {
        width: 100%;
        height: 50vw;
    }

    .female_single_page .page_security_spot_list li .textBox {
        width: 100%;
        padding: 4vw;
    }


    .page_security_terms {
        padding: 15vw 0 0;
    }

    .page_security_terms .page_security_titleBox {
        margin-bottom: 5vw;
    }

    .page_security_terms .top_kodawari_slider ul {
        flex-wrap: nowrap;
        overflow: scroll;
        padding-bottom: 2vw;
    }

    .page_security_terms .top_kodawari_slider li.swiper-slide {
        width: 52.5% !important;
        margin-right: 3% !important;
        padding: 0 !important;
    }

    .page_security_review .list .slide {
        padding: 5vw;
        margin: 0 1vw;
    }

    .page_security_review .list .slide .icon {
        width: 23vw;
        margin: 0 auto 4vw;
    }

    .page_security_review .list .slide .icon img {
        width: 100%;
    }

    .page_security_review .list .slide .text_box .text {
        font-size: 3.5vw;
    }

    .page_security_pickup {
        padding: 13vw 0;
    }

    .page_security .common_area_btn a {
        width: 85%;
        margin: 10vw auto 0;
        min-block-size: 13vw;
        border-radius: 10vw;
        padding: 0.5em;
        font-size: 3.5vw;
    }

    .page_security .common_area_btn a::after {
        width: 1.8vw;
        right: 5vw;
    }

    .page_security .common_area_btn a:hover {
        opacity: 1;
    }

    .page_security_arrival .tab_box {
        margin-bottom: 5vw;
    }

    .page_security_arrival .tab_box ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.5em;
        height: auto;
    }

    .page_security_arrival .tab_box li {
        min-block-size: 12vw;
        border-radius: 1vw;
        font-size: 3.5vw;
    }

    .page_security_arrival .tab_box li:not(:first-child) {
        margin: 0;
    }

    .page_security .btn_box {
        flex-direction: column;
        gap: 5vw 0;
        margin: 5vw 0 0;
    }

    .page_security .btn_box .btn .fukidashi {
        font-size: 3.3vw;
    }

    .page_security .btn_box .btn .fukidashi::before {
        width: 4vw;
        height: 3vw;
    }

    .page_security .btn_box .btn .link {
        gap: 2.5vw;
        width: 100%;
        font-size: 3.7vw;
    }

    .page_security .btn_box .btn .link:hover {
        opacity: 1;
    }

    .page_security .btn_box .btn .link::after {
        width: 3vw;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
    }

    .page_security_introduction .new_life_price {
        padding: unset;
    }

    .page_security_introduction .flow_box {
        padding-bottom: unset;
    }

    .page_security_introduction .new_life_price .note_area {
        padding: 3.5vw;
        margin-top: 5vw;
    }

    .page_security_introduction .new_life_price .cont::before {
        width: 25vw;
        height: 6vw;
        margin: 5vw auto 0;
    }

    .page_security_introduction .new_life_price .note_area .ttl {
        font-size: 4.7vw;
    }

    .page_security_introduction .new_life_price .note_area .text {
        font-size: 3.8vw;
    }

    .page_security_introduction .new_life_price .new_life_price_tableBox .text {
        font-size: 3.4vw;
        line-height: 1.7;
    }

    .page_security_spot .catch {
        font-size: 3.3vw;
    }

    /* こだわりページ */
    .common_page-kodawari {
        padding: 0;
    }

    .common_page-kodawari .top-feature__grid-items {
        margin-block: 5vw;
        overflow-x: scroll;
    }

    .common_lifestyle_page .lifestyle_intro_sec {
        padding: 60px 0;
    }

    .common_lifestyle_page .lifestyle_intro_sec .block .ttl {
        font-size: 5vw;
        margin-bottom: 20px;
    }

    .common_lifestyle_page .lifestyle_intro_sec .block .box {
        flex-direction: column-reverse;
    }

    .common_lifestyle_page .lifestyle_intro_sec .block .box .text_box {
        width: 100%;
    }

    .common_lifestyle_page .lifestyle_intro_sec .block .box .text_box .text {
        font-size: 3.5vw;
        line-height: 1.8;
    }

    .common_lifestyle_page .lifestyle_intro_sec .block .box .img {
        width: 100%;
        margin-left: 0;
        flex-shrink: 0;
        margin-bottom: 15px;
    }

    .common_lifestyle_page .common_lifestyle_search_sec {
        padding: 12vw 0;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .top_text {
        margin-bottom: 30px;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .top_text .ttl {
        font-size: 5vw;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap {
        align-items: flex-end;
        display: flex;
        justify-content: space-between;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts {
        width: 30%;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts .label {
        margin: 0 0 10px;
        font-size: 3.6vw;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap select,
    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap input#sbox02 {
        width: 100%;
        height: 35px;
        padding: 0 2vw;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::before {
        left: -14%;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::before,
    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts:nth-child(2)::after {
        font-size: 3.5vw;
        bottom: 6px;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts .label {
        margin: 0 0 10px;
        font-size: 3.6vw;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap .parts.btn {
        width: 100%;
        margin-top: 40px;
    }

    .common_lifestyle_page .common_lifestyle_search_sec .form_wrap input#btnQuickSearch {
        width: 100%;
        height: 45px;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .top_text {
        margin-bottom: 30px;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .top_text .ttl {
        font-size: 5vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont {
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .sub_ttl {
        margin: 0 0 10px;
        font-size: 4.5vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .text {
        font-size: 3.5vw;
        line-height: 1.8;
    }

    .common_lifestyle_page .common_lifestyle_info_sec:nth-child(odd) .cont .img {
        margin-left: 0;
    }

    .common_lifestyle_page .common_lifestyle_info_sec:nth-child(even) .cont {
        flex-direction: column-reverse;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .sub_ttl {
        margin: 0 0 10px;
        font-size: 4.5vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont .text_box .text {
        font-size: 3.5vw;
        line-height: 1.8;
    }

    .common_lifestyle_page .common_lifestyle_info_sec:nth-child(even) .cont .img {
        margin-right: 0;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont {
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .cont .img {
        width: 100%;
        margin-bottom: 25px;
        margin-left: 0;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .block_box {
        padding: 7vw 5vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area+.text_area {
        margin-top: 6vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area .sub_ttl {
        font-size: 4vw;
        line-height: 1.5;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .block_box .text_area .sub_ttl .num {
        width: 8vw;
        font-size: 5vw;
    }

    .common_lifestyle_page .common_lifestyle_info_sec .block_box .text_box .text {
        font-size: 3.6vw;
    }

    .common_lifestyle_page .lifestyle_search_sec {
        margin-top: 12vw;
        margin-bottom: 12vw;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont .ttl {
        font-size: 4.6vw;
        margin: 0 0 20px;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box {
        border-radius: 5px;
        padding: 15px 3.5vw;
        line-height: 1.8;
        display: block;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_ttl {
        font-size: 3.7vw;
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li {
        margin-right: 3vw;
        margin-bottom: 3px;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li a {
        font-size: 3.4vw;
    }

    .common_lifestyle_page .lifestyle_search_sec .search_cont+.search_cont {
        margin-top: 25px;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_block {
        padding: 15px;
        border-radius: 5px;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .title {
        width: 100%;
        padding: 0 0 10px;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li {
        width: 50%;
        padding-left: 30px;
        padding-right: 10px;
        font-size: 3.4vw;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li:nth-child(n + 3) {
        margin-top: 10px;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li:last-child {
        width: 100%;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list li::before {
        width: 24px;
        line-height: 24px;
        height: 24px;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list.railway li {
        width: 100%;
        font-size: 3.4vw;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .terms_ranking_list.railway li:nth-child(n + 2) {
        margin-top: 10px;
    }

    .terms_termlist_sec {
        padding: 40px 0 0;
    }

    .common_lifestyle_page .terms_termlist_sec .terms_termlist_wrap {
        padding: 15px;
        border-radius: 5px;
    }

    .common_lifestyle_page .terms_termlist_sec .terms_termlist {
        padding: 15px 15px 5px;
    }

    .common_lifestyle_page .terms_ranking_sec .ttl,
    .common_lifestyle_page .terms_termlist_sec .ttl {
        font-size: 4.6vw;
        margin: 0 0 20px;
    }

    .common_lifestyle_page .terms_termlist_sec .terms_termlist li {
        font-size: 3.4vw;
    }

    .common_lifestyle_page .terms_ranking_sec .terms_ranking_box .title {
        font-size: 3.7vw;
    }

    .common_lifestyle_page .recommend_note_text {
        margin-top: 3vw;
        font-size: 3vw;
    }

    .search_cont .price_table_wrap {
        padding: 15px;
        border-radius: 5px;
    }

    .search_cont .tab {
        padding: 5px 10px;
        font-size: 12px;
    }

    .search_cont .panel {
        padding: 15px;
    }

    .search_cont .price_table_wrap table .th01,
    .search_cont .price_table_wrap table .td01,
    .search_cont .price_table_wrap table .td02 {
        width: 50%;
    }

    .search_cont .price_table_wrap table .td03 {
        display: none;
    }

    .search_cont .price_table_wrap table th,
    .search_cont .price_table_wrap table td {
        padding: 7px 10px;
        font-size: 12px;
    }

    .lifestyle_search_sec .search_cont .area_cont .box {
        border-radius: 8px;
        padding: 15px 3.5vw;
        line-height: 1.8;
        display: block;
    }

    .lifestyle_search_sec .search_cont .area_cont .box .area_ttl {
        font-size: 3.7vw;
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }

    .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li {
        margin-right: 3vw;
        margin-bottom: 3px;
    }

    .lifestyle_search_sec .search_cont .area_cont .box .area_list ul li a {
        font-size: 3.4vw;
    }

    .lifestyle_search_sec .search_cont+.search_cont {
        margin-top: 25px;
    }

    .top_about {
        padding: 17vw 0 0;
    }

    .top_about .inbox+.inbox {
        margin-top: 0vw;
        box-shadow: none;
    }

    .top_about .inbox {
        display: flex;
        flex-direction: column-reverse;
        border-radius: 5px;
        overflow: hidden;
    }

    .top_about .inbox .img {
        width: 100%;
        height: 45vw;
    }

    .top_about .inbox .img img {}

    .top_about .inbox .text_box {
        padding: 5vw;
    }

    .top_about .inbox .text_box .title {
        font-size: 3.8vw;
        padding: 0 4vw;
        line-height: 9vw;
        margin-bottom: 3.5vw;
    }

    .top_about .inbox .text_box .text {
        font-size: 3.5vw;
        height: 35vw;
    }


    .top_about .inbox {
        display: flex !important;
    }


    .terms_slider .slick-arrow.slick_prev::before,
    .terms_slider .slick-arrow.slick_next::before,
    .terms_slider .slick-arrow.slick_prev::after,
    .terms_slider .slick-arrow.slick_next::after {
        width: 3vw;
        height: 0.8vw;
    }

    .terms_slider .slick-arrow.slick_next {
        right: 0vw;
    }

    .terms_slider .slick-arrow.slick_prev {
        left: 0vw;
    }

    .terms_slider .slick-arrow.slick_next::before {
        top: 3.9vw;
        rotate: 90deg;
    }

    .terms_slider .slick-arrow.slick_next::after {
        transform: rotate(-225deg);
        top: 5.8vw;
    }

    .terms_slider .slick-arrow.slick_prev::before {
        rotate: 45deg;
        top: 5.7vw;
    }

    .terms_slider .slick-arrow.slick_prev::after {
        rotate: -45deg;
        top: 4vw;
    }

    .terms_slider .slick-arrow {
        width: 12vw;
        height: 12vw;
        top: auto;
        bottom: -14vw;
    }

    #top_faq {
        padding: 12vw 0;
    }

    .top_faq_dlBox {
        margin: 7vw 0 0;
    }

    .top_faq_dl {
        width: 100%;
    }

    .top_faq_dl:nth-child(n + 2) {
        margin-top: 5vw;
    }

    .top_faq_dl dt {
        font-size: 3.6vw;
        letter-spacing: 0.04rem;
        padding: 10px 10px 10px 40px;
    }

    .top_faq_dl dt::before,
    .top_faq_dl dd::before {
        width: 6vw;
        height: 6vw;
        font-size: 3.4vw;
        top: 2.8vw;
        left: 2.5vw;
        margin: 0;
        line-height: 1.4;
    }

    .top_faq_dl dd {
        font-size: 3.5vw;
        letter-spacing: 0.02rem;
        padding: 7px 7px 7px 40px;
        text-align: justify;
    }

    .common_lifestyle_page .lifestyle_intro_sec {
        padding: 12vw 0;
    }

    .common_lifestyle_info_sec {
        padding-block: 10vw;
    }

    #category_search_term {
        margin-bottom: 15vw;
    }

    #category_search_term .term_list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 2vw;
    }

    #category_search_term .term_list ul li .link {
        font-size: 3.2vw;
        padding: .7em .2em;
        letter-spacing: .03em;
    }

    #category_search_term .term_list ul li .link:hover {
        color: #fff;
        background-color: #000F33;
    }

    .common_lifestyle_page .top-arrival-sec {
        padding-block: 12vw;
    }

    .common_lifestyle_page .top-voice-sec {
        padding-top: 6vw;
    }

    /* 店舗情報ページ */
    .company_profile_sec .cont dl {
        display: block;
        padding: 5vw 5vw 4vw;
        position: relative;
    }

    .company_profile_sec .cont dl dt {
        width: 100%;
        border: none;
        padding: 0;
        font-size: 4.1vw;
        margin-bottom: 0.8em;
    }

    .company_profile_sec .cont dl dd {
        font-size: 3.6vw;
        padding: 0;
    }

    .company_profile_sec .cont dl::before {
        content: "";
        width: 18vw;
        height: 4px;
        background: var(--main-color);
        position: absolute;
        top: 0;
        left: 0;
    }

    /* 店舗一覧ページ */
    .page_company .company_profile_sec#shop-namba {
        margin-block: 15vw;
        padding-block: 15vw;
    }

    .page_company .company_profile_sec .shop-name {
        font-size: 5.5vw;
    }

    .page_company .shop-list_area {
        margin-bottom: 15vw;
    }

    .page_company .shop-list_area ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 0 2vw;
    }

    .page_company .shop-list_area ul li a {
        gap: 0 2vw;
        font-size: 3.4vw;
        min-block-size: 13vw;
    }

    .page_company .shop-list_area ul li a::after {
        width: 5vw;
    }

    .page_company .shop-list_area ul li a:hover::after {
        background-color: #fff;
    }

    .page_company .shop-list_area ul li a:hover {
        background-color: var(--main-color);
        color: #fff;
    }

    /* オンライン相談 */
    .common_page_h2_box .title {
        font-size: 5vw;
    }

    .common_page_h2_box .text {
        font-size: 3.6vw;
    }

    .page_online .online_main {
        padding: 12vw 0;
    }

    .page_online .online_main .title {
        font-size: 5.5vw;
        margin: 0 0 4vw;
    }

    .page_online .online_main .text {
        font-size: 3.6vw;
    }

    .page_online .online_merit {
        padding: 18vw 0;
    }

    .page_online .online_merit_list {
        margin-top: 12vw;
    }

    .page_online .online_merit_list li {
        flex-direction: column;
        gap: 5vw;
    }

    .page_online .online_merit_list li+li {
        margin-top: 10vw;
    }

    .page_online .online_merit_list li .image {
        width: 100%;
    }

    .page_online .online_merit_list li .textBox {
        width: 100%;
    }

    .page_online .online_merit_list li .textBox .title {
        font-size: 4.8vw;
        margin: 0 0 4vw;
    }

    .page_online .online_merit_list li .textBox .text {
        font-size: 3.6vw;
    }

    .page_online .online_flow {
        padding: 18vw 0;
    }

    .page_online .online_flow_list {
        padding: 10vw 0;
    }

    .page_online .online_flow_list li {
        padding: 5vw;
        flex-direction: column;
        gap: 5vw;
    }

    .page_online .online_flow_list li+li {
        margin-top: 15vw;
    }

    .page_online .online_flow_list li::before {
        border-top: 10vw solid var(--main-color);
        border-right: 10vw solid transparent;
        border-bottom: 10vw solid transparent;
        border-left: 10vw solid transparent;
        bottom: -24vw;
    }

    .page_online .online_flow_list li .image {
        width: 100%;
    }

    .page_online .online_flow_list li .textBox {
        width: 100%;
    }

    .page_online .online_flow_list li .textBox .title {
        font-size: 4.5vw;
        margin: 0 0 4vw;
    }

    .page_online .online_flow_list li .textBox .step {
        padding: 1vw 4vw;
        font-size: 4.5vw;
        border-radius: 10px;
    }

    .page_online .online_flow_list li .textBox .text {
        font-size: 3.6vw;
    }

    /* EDIONコラボレーション */
    .page_edion .page_edion_about {
        margin: 6vw 0 0;
        padding: 10vw 0;
    }

    .page_edion .page_edion_about .title {
        font-size: 6vw;
        margin-bottom: 5vw;
    }

    .page_edion .page_edion_about .text {
        font-size: 3.3vw;
    }

    .page_edion .page_edion_about img.image01 {
        width: 17vw;
        top: 8vw;
        left: 2vw;
    }

    .page_edion .page_edion_about img.image02 {
        width: 12vw;
        top: 7vw;
        right: 2vw;
    }

    .page_edion .page_edion_about img.image03 {
        width: 17vw;
        bottom: 5vw;
        right: 2vw;
    }

    .page_edion .page_edion_about img.image04 {
        width: 10vw;
        bottom: 3vw;
        left: 4vw;
    }

    .page_edion .page_edion_cont {
        flex-direction: column-reverse;
        gap: 5vw 0;
    }

    .page_edion .page_edion_cont .img_box {
        width: 100%;
    }

    .page_edion .page_edion_cont .text_box {
        width: 100%;
    }

    .page_edion .page_edion_cont .text_box .img {
        width: 100%;
        margin: 0 auto 5vw;
    }

    .page_edion .page_edion_cont .text_box .text {
        font-size: 3.6vw;
    }

    .page_edion .page_edion_info {
        margin-top: 10vw;
        padding: 3vw;
    }

    .page_edion .page_edion_info .center_box {
        width: 38%;
    }

    .page_edion .page_edion_info .right_box {
        width: 100%;
        margin-top: 4vw;
        height: 45vw;
    }

    .page_edion .page_edion_info .left_box {
        width: 60%;
    }

    .page_edion .page_edion_info .left_box .en {
        font-size: 3.2vw;
        padding: 1.2vw 6vw;
    }

    .page_edion .page_edion_info .left_box .logo {
        width: 50%;
        margin: 3vw 0;
    }

    .page_edion .page_edion_info .left_box .title {
        font-size: 4.5vw;
        margin-bottom: 4vw;
    }

    .page_edion .page_edion_info .left_box .text {
        font-size: 3vw;
    }

    /* 女性スタッフ在籍中 */
    .page_female .page_cont {
        grid-template-columns: 1fr;
        gap: 7vw 0;
        padding: 5vw;
    }

    .page_female .page_cont .text_box .ttl {
        font-size: 4.8vw;
        text-align: center;
    }

    .page_female .page_cont .text_box .text {
        font-size: 3.6vw;
    }

    /*お部屋探しの流れ*/
    .page_flow .flow_box {
        padding: 15vw 0;
    }

    .page_flow .flow_box+.flow_box {
        padding-top: 18vw;
    }

    .page_flow .flow_box::before {
        border-top: 40px solid #EBEBEB;
        border-right: 40px solid transparent;
        border-bottom: 40px solid transparent;
        border-left: 40px solid transparent;
    }

    .page_flow .flow_box:nth-of-type(even)::before {
        border-top: 40px solid var(--main-color);
        border-right: 40px solid transparent;
        border-bottom: 40px solid transparent;
        border-left: 40px solid transparent;
    }

    .page_flow .flow_h2 {
        font-size: 4.8vw;
        margin: 0 0 7vw;
        padding: 0 0 3vw;
    }

    .page_flow .flow_h2::before {
        width: 12vw;
    }

    .page_flow .flow_h2 span {
        width: 10vw;
        line-height: 10vw;
        margin-right: 2vw;
    }

    .page_flow .flow_box .contents {
        width: 100%;
        border-radius: 5px;
    }

    .page_flow .flow_box .contents .textBox .title {
        font-size: 3.8vw;
    }

    .page_flow .flow_box .contents .textBox .text {
        font-size: 3.5vw;
        letter-spacing: 0;
        padding: 0 5vw 5vw;
        text-align: justify;
    }

    .page_flow .flow_box .contents+.contents {
        margin-top: 7vw;
    }

    .page_flow .flow_contact {
        margin: 7vw 0 0;
    }

    .page_flow .flow_contact .textBox {
        width: 100%;
        padding: 5vw;
    }

    .page_flow .flow_contact .buttonBox {
        margin-top: 3vw;
        width: 100%;
    }

    .page_flow .flow_contact .textBox .text {
        font-size: 3.8vw;
    }

    .page_flow .flow_contact .buttonBox a {
        padding: 4vw 0;
        font-size: 3.8vw;
    }

    .page_flow .flow_contact .buttonBox a span {
        font-size: 3.6vw;
    }

    .page_flow .flow_contact .buttonBox a+a {
        margin-top: 3vw;
    }

    .page_flow .flow_textBox {
        padding: 4vw;
        border-radius: 5px;
        margin: 0 0 7vw;
    }

    .page_flow .flow_textBox .text {
        font-size: 3.5vw;
        line-height: 1.8;
    }

    .page_flow .flow_list li {
        width: 100%;
        margin-right: 0;
        border-radius: 5px;
    }

    .page_flow .flow_list li+li {
        margin-top: 6vw;
    }

    .page_flow .flow_list li .small_list .title {
        font-size: 3.6vw;
        width: 90%;
    }

    .page_flow .flow_box_flex02 {
        padding-top: 0;
    }

    .page_flow .flow_box_flex02 .flow_textBox {
        width: 100%;
        border-radius: 0;
        border: none;
    }

    .page_flow .flow_box_flex02 .flow_image {
        width: 100%;
        position: static;
        border-radius: 0;
    }

    .page_flow .flow_box_flex02.yellow .flow_textBox {
        border: none;
    }

    .page_flow .flow_box:last-child {
        padding-bottom: 15vw;
    }

    /* 引越し手続きマニュアル */
    .page_moving .moving_main {
        padding: 10vw 0;
    }

    .page_moving .moving_main .image {
        width: 100%;
        box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.16);
        border-radius: 10px;
        margin: 0 0 5vw;
    }

    .page_moving .moving_main .textBox {
        width: 100%;
    }

    .page_moving .moving_main .textBox .title {
        font-size: 4.8vw;
        margin: 0 0 3vw;
    }

    .page_moving .moving_main .textBox .text {
        font-size: 3.6vw;
        line-height: 1.6;
    }

    .page_moving .moving_point {
        padding: 10vw 0;
        margin: 0 0 10vw;
    }

    .page_moving .moving_point .moving_point_list {
        margin: 5vw 0 0;
    }

    .page_moving .moving_point .moving_point_list li {
        width: 100%;
        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.16);
    }

    .page_moving .moving_point .moving_point_list li:nth-of-type(n + 2) {
        margin-top: 5vw;
    }

    .page_moving .moving_point .moving_point_list li .title {
        padding: 2.5vw 0;
        font-size: 4.3vw;
    }

    .page_moving .moving_point .moving_point_list li .text {
        font-size: 3.6vw;
        line-height: 1.6;
        padding: 3vw 4vw;
    }

    /* 新社会人・新入生応援 */
    .page_new-life .new_life_main {
        padding: 12vw 0;
    }

    .page_new-life .new_life_main .flex-sb {
        flex-direction: inherit;
    }

    .page_new-life .new_life_main .textBox {
        width: 100%;
        margin: 0 0 5vw;
    }

    .page_new-life .new_life_main .image {
        width: 100%;
        padding-bottom: 8vw;
    }

    .page_new-life .new_life_price {
        padding: 12vw 0;
    }

    .page_new-life .new_life_price .new_life_price_tableBox {
        margin-top: 7vw;
    }

    .page_new-life .new_life_price .new_life_price_tableBox .title {
        font-size: 4.5vw;
        margin: 0 0 5vw;
    }

    .page_new-life .new_life_price .new_life_price_tableBox table th,
    .page_new-life .new_life_price .new_life_price_tableBox table td {
        padding: 3.5vw;
        font-size: 3.5vw;
        display: block;
        width: 100%;
    }

    .page_new-life .new_life_price .new_life_price_tableBox table th {
        border: none;
    }

    .page_new-life .new_life_price .common_btn {
        margin-top: 6vw;
    }

    .page_new-life .new_life_point {
        padding: 12vw 0;
    }

    .page_new-life .new_life_point_list {
        margin-top: 6vw;
    }

    .page_new-life .new_life_point_list li {
        width: 100%;
    }

    .page_new-life .new_life_point_list li+li {
        margin-top: 4vw;
    }

    .page_new-life .new_life_point_list li .image {
        height: 50vw;
        overflow: hidden;
    }

    .page_new-life .new_life_point_list li .textBox {
        padding: 3.5vw;
    }

    .page_new-life .new_life_point_list li .textBox .title {
        font-size: 4vw;
        margin: 0 auto 2vw;
        width: 55%;
    }

    .page_new-life .new_life_point_list li .textBox .text {
        font-size: 3.6vw;
        line-height: 1.6;
        text-align: justify;
    }

    /* 人気の地域・鉄道駅ランキング */
    .page_ranking .ranking_Area .rankingBox {
        width: 100%;
    }

    .page_ranking .ranking_Area .rankingBox+.rankingBox {
        margin-top: 10vw;
    }

    .page_ranking .ranking_Area .rankingBox .rank_h2 {
        font-size: 4.2vw;
        margin: 0 0 5vw;
    }

    .page_ranking .ranking_Area .rankingBox .rank_list li {
        padding: 4vw 4vw 4vw 20vw;
        line-height: 1.4;
    }

    .page_ranking .ranking_Area .rankingBox .rank_list li .rank {
        width: 15vw;
        height: 14vw;
        line-height: 14vw;
        font-size: 4vw;
    }

    .page_ranking .ranking_Area .rankingBox .rank_list li .rank .small {
        margin-left: 2px;
        font-size: 3.6vw;
    }

    .page_ranking .ranking_Area .rankingBox .rank_list li .name {
        font-size: 3.6vw;
        letter-spacing: .02em;
    }

    /* オーナー様へ */
    .page_owner_intro_box .trouble_list li {
        font-size: 3vw;
        width: 49%;
        padding: 1vw 0;
        text-align: center;
        margin-right: 0;
    }

    .page_owner_intro_box {
        padding: 5vw;
    }

    .page_owner_intro_box .trouble_list {
        justify-content: space-between;
    }

    .page_owner_intro_box .trouble_list li:nth-child(n + 3) {
        margin-top: 2vw;
    }

    .page_owner_intro_box .text_box .text {
        font-size: 3.4vw;
    }

    .page_owner_intro_box .text_box .text+.text {
        margin-top: 2vw;
    }

    .page_owner_flow {
        margin-top: 12vw;
    }

    .page_owner_flow_list ul li {
        padding: 3vw 0 3vw 16vw;
    }

    .page_owner_flow_list ul li .num {
        font-size: 4.3vw;
        left: 3vw;
        width: 9vw;
        height: 9vw;
        line-height: 9vw;
    }

    .page_owner_flow_list ul li .label {
        font-size: 4vw;
        padding-top: 1vw;
    }

    .page_owner_flow_list ul li .text {
        font-size: 3.5vw;
    }

    .page_owner_trouble_box {
        padding: 5vw;
    }

    .page_owner_trouble_box .text_box .text {
        font-size: 3.6vw;
    }

    .page_owner_trouble_box .text_box .text+.text {
        margin-top: 3vw;
    }

    .page_owner_trouble {
        margin-top: 12vw;
    }

    .page_owner_management_flow {
        margin-top: 12vw;
    }

    .page_owner_bring ul li {
        width: 100%;
        background-size: 4vw;
        padding: 2vw 5vw 2vw 11vw;
        font-size: 3.5vw;
    }

    .page_owner_bring ul li.big {
        width: 100%;
    }

    .page_owner_management_flow_box ul li {
        width: 49%;
        padding: 1vw 0 1vw 5vw;
        font-size: 3.2vw;
        min-block-size: 9vw;
    }

    .page_owner_management_flow_box ul li .num {
        height: 9vw;
        line-height: 9vw;
        font-size: 4.2vw;
        width: 9vw;
        top: -1px;
    }

    .page_owner_management_flow_box ul li::before {
        display: none;
    }

    .page_owner_management_flow_box ul li:nth-child(n + 5) {
        margin-top: 0;
    }

    .page_owner_management_flow_box ul li:nth-child(n + 3) {
        margin-top: 2vw;
    }

    /* 不動産用語集 */
    .page_glossary .glossary-search-title02 {
        font-size: 4vw;
        padding-left: 5%;
    }

    .page_glossary .glossary-items {
        width: 100%;
    }

    .page_glossary .glossary-line {
        font-size: 4vw;
        margin-bottom: 2vw;
    }

    .page_glossary .a-line {
        padding-left: 5%;
    }

    .page_glossary .glossary-line a {
        display: flex;
        align-items: center;
    }

    .page_glossary .glossary_index {
        margin-top: 10vw;
    }

    .page_glossary .glossary_index h2 {
        font-size: 4vw;
        margin: 6vw 0 4vw;
    }

    .page_glossary .page_h3 {
        font-size: 5vw;
        padding-bottom: 1vw;
    }

    .page_glossary .glossary_search {
        padding: 10vw 0;
    }

    .page_glossary .glossary_index {
        margin-top: 10vw;
    }

    .page_glossary .glossary_box .page_h3 {
        font-size: 3.8vw;
        letter-spacing: 0.06em;
        padding: 2vw 6vw 2vw 2vw;
        position: relative;
    }

    .page_glossary .glossary_box .page_h3::before {
        right: 2vw;
        width: 2vw;
        height: 2vw;
    }

    .page_glossary .glossary_box .text {
        padding: 0 2vw 2vw;
        font-size: 3.2vw;
        line-height: 1.8;
        letter-spacing: .04em;
    }

    .page_glossary .glossary_box {
        margin-bottom: 4vw;
    }

}