@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: #E1A8F0;
    --accent-color: #E1A8F0;
    --font-color: #414141;
    --sub-color: #F7F4F7;
    --bg-color: #F7F7F7;
}

html,
button,
input,
select,
textarea {
    /* 不要な指定は消す */
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
}

.f_en {
    font-family: "kepler-std-condensed-subhead", serif;
    font-weight: 600;
}

body {
    color: #414141;
    font-size: 1.111vw;
    line-height: 1.7;
    letter-spacing: .03em;
    /* min-width: 93.056vw; */
}

.wrap {
    width: 79.167vw;
    margin: 0 auto;
}

.wrap.mid {
    width: 86.111vw;
}

.wrap.lr {
    width: 93.056vw;
}

/* サイト共通設定 */
.common_site_title.center {
    text-align: center;
}

.common_site_title .en {
    font-size: 5.556vw;
    line-height: 1.2;
    letter-spacing: 0em;
}

.common_site_title .title {
    font-size: 1.389vw;
    line-height: 1.7;
    letter-spacing: .03em;
    color: #7D777E;
}

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

.common_head_box {
    margin-top: 2.083vw;
}

.common_head_box .text {
    font-size: 1.25vw;
    line-height: 1.6;
    letter-spacing: .01em;
    font-weight: 500;
}

.common_head_box .text+.text {
    margin-top: 1.2em;
}

.common_site_btn.center .btn {
    margin-inline: auto;
}

.common_site_btn .btn {
    display: grid;
    place-content: center;
    width: 22.222vw;
    background-color: var(--font-color);
    font-size: 1.111vw;
    letter-spacing: .01em;
    color: #fff;
    min-block-size: 4.167vw;
    transition: all .3s;
    position: relative;
    z-index: 1;
}

.common_site_btn .btn::before {
    content: '';
    position: absolute;
    right: 2.083vw;
    top: 1.597vw;
    width: 0.694vw;
    aspect-ratio: 1;
    min-width: 0;
    mask-image: url(./image/icon_up.svg);
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    background: #fff;
    rotate: 90deg;
}

.common_site_btn .btn::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 0.347vw;
    background-color: var(--accent-color);
    bottom: 0;
    left: 0;
    z-index: -1;
    transition: all .3s;
}

.common_site_btn .btn:hover::after {
    height: 100%;
}

/* ローディング */
#loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    height: 100vh;
    width: 100%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
    animation: loading 3s forwards;
    pointer-events: auto;
}

@keyframes loading {
    0% {
        opacity: 1;
        visibility: visible;
    }

    20% {
        opacity: 1;
        visibility: visible;
    }

    40% {
        opacity: 1;
        visibility: visible;
    }

    60% {
        opacity: 1;
        visibility: visible;
    }

    80% {
        opacity: 1;
        visibility: visible;
    }

    100% {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }
}

#loading .catch .en {
    font-size: 5.556vw;
    line-height: 1;
    letter-spacing: .01em;
    animation: load_text .5s forwards;
}

#loading .catch .jp {
    font-size: 1.667vw;
    letter-spacing: .03em;
    margin-top: 1em;
    animation: load_text .5s forwards;
}

#loading .catch .jp .color {
    color: var(--accent-color);
}

@keyframes load_text {
    from {
        opacity: 0;
        visibility: hidden;
    }

    to {
        opacity: 1;
        visibility: visible;
    }
}

/* PCヘッダー */
#pc_header {
    background-color: #fff;
    width: 100%;
    height: auto;
    padding-inline: 3.4vw;
    /* overflow-x: scroll; */
}

#pc_header .inner {
    padding-block: 1.319vw 1.25vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#pc_header .logo a {
    width: 15.972vw;
    display: block;
}

#pc_header .logo a img {
    width: 100%;
}

#pc_header .hd_btn {
    display: flex;
    gap: 0 0.694vw;
}

#pc_header .hd_btn .link {
    display: grid;
    place-content: center;
    width: 12.5vw;
    min-block-size: 2.986vw;
    background-color: #fff;
    border: 1px solid #D3D3D3;
    font-size: 1.111vw;
    letter-spacing: .01em;
    color: var(--font-color);
    position: relative;
    z-index: 1;
}

#pc_header .hd_btn .link::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 0.208vw;
    bottom: 0;
    left: 0;
    background-color: var(--accent-color);
    transition: all .3s;
    z-index: -1;
}

#pc_header .hd_btn .link:hover::after {
    height: 100%;
    background-color: var(--accent-color);
    border: 1px solid var(--accent-color);
}

#pc_header .hd_nav {
    border-width: 0.069vw 0;
    border-color: rgba(211, 211, 211, .5);
    position: relative;
}

#pc_header .hd_nav ul {
    display: flex;
    justify-self: center;
}

#pc_header .hd_nav ul li {
    flex-shrink: 0;
    position: relative;
}

#pc_header .hd_nav ul li .menu,
#pc_header .hd_nav ul li.sub .text {
    display: block;
    font-size: 1.111vw;
    line-height: 1.5;
    letter-spacing: .01em;
    color: var(--font-color);
    padding: 0.625vw 1.8vw;
    position: relative;
}

#pc_header .hd_nav ul li .menu::after,
#pc_header .hd_nav ul li:last-child::before {
    content: '';
    position: absolute;
    width: 0.069vw;
    height: 1.667vw;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background-color: rgba(211, 211, 211, .5);
}

#pc_header .hd_nav ul li:last-child::before {
    right: 0;
    left: unset;
}

#pc_header .hd_nav ul li .menu::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0.139vw;
    bottom: -0.069vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--accent-color);
    transition: all .3s;
}

#pc_header .hd_nav ul li .menu:hover::before {
    width: 100%;
}

#pc_header .hd_nav ul li.sub {
    position: unset;
}

#pc_header .hd_nav ul li.sub .text {
    display: flex;
    align-items: center;
    gap: 0 0.694vw;
    cursor: pointer;
}

#pc_header .hd_nav ul li.sub .text img {
    transform: scale(1, -1);
    transition: all .3s;
}

#pc_header .hd_nav ul li.sub:hover .text img {
    transform: scale(-1, 1);
}

#pc_header .hd_nav ul li.sub .text::after {
    content: '';
    position: absolute;
    width: 0.069vw;
    height: 1.667vw;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background-color: rgba(211, 211, 211, .5);
}

#pc_header .hd_nav ul li.sub .text::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0.139vw;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--accent-color);
    transition: all .3s;
}

#pc_header .hd_nav ul li.sub:hover .text::before {
    width: 100%;
}

#pc_header .hd_nav ul li.sub:hover .child_menu {
    opacity: 1;
    visibility: visible;
}

#pc_header .hd_nav .child_menu {
    position: absolute;
    top: 2.986vw;
    left: 0;
    right: 0;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    height: auto;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    transition: all .3s;
    padding-top: 3.472vw;
}

#pc_header .hd_nav .child_menu .box {
    padding: 2.778vw 10.417vw 2.5vw;
    display: flex;
    align-items: center;
    gap: 0 3.472vw;
}

#pc_header .child_menu .title_box .en {
    font-size: 3.889vw;
    line-height: 1.2;
    letter-spacing: 0;
}

#pc_header .child_menu .title_box .jp {
    font-size: 1.111vw;
    letter-spacing: .03em;
    color: #7D777E;
}

#pc_header .child_menu .menu_box {
    display: flex;
    gap: 0 2.083vw;
}

#pc_header .child_menu .menu_box .sub {
    width: 13.889vw;
    display: block;
    flex-shrink: 0;
}

#pc_header .child_menu .menu_box .sub .img {
    position: relative;
}

#pc_header .child_menu .menu_box .sub .img::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(0, 82, 247, .1);
    mix-blend-mode: lighten;
}

#pc_header .child_menu .menu_box .sub .img img {
    width: 100%;
    aspect-ratio: 200/135;
    min-width: 0;
    object-fit: cover;
}

#pc_header .child_menu .menu_box .sub .head {
    font-size: 1.111vw;
    letter-spacing: .03em;
    margin-top: .4em;
    color: var(--font-color);
    border-bottom: 1px solid #F5F4F4;
    padding-bottom: .2em;
    transition: all .3s;
    position: relative;
}

#pc_header .child_menu .menu_box .sub:hover .head {
    color: var(--accent-color);
}

#pc_header .child_menu .menu_box .sub .head::before {
    content: '';
    position: absolute;
    width: 2.083vw;
    height: 0.139vw;
    left: 0;
    bottom: -0.069vw;
    background-color: var(--accent-color);
    transition: all .3s;
}

#pc_header .child_menu .menu_box .sub:hover .head::before {
    width: 100%;
}

/* PCトップ　メインビジュアル */
.parallax_bg {
    clip-path: inset(0);
}

.parallax_bg .bg_img {
    position: fixed;
    inset: 0;
    z-index: -1;
}

.parallax_bg .bg_img::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(25, 16, 18, .8);
    mix-blend-mode: multiply;
}

.parallax_bg .bg_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_fv {
    height: calc(100vh - 8.611vw);
    display: flex;
    align-items: center;
}

.top_fv .catch_box {
    position: relative;
    color: #fff;
}

.top_fv .catch_box .en {
    font-size: 6.111vw;
    line-height: 1;
    letter-spacing: 0em;
    white-space: pre-wrap;
}

.top_fv .catch_box .catch {
    margin-top: 2.222vw;
    font-size: 1.667vw;
    letter-spacing: .1em;
}

.js_anime_text {
    opacity: 0;
}

.js_anime_text span {
    display: inline-block;
    will-change: opacity, transform;
}

/* PCトップ　キャッチセクション */
.top_catch_sec {
    position: relative;
    padding-block: 9.653vw;
}

.top_catch_sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(225, 168, 240, .02);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}

.top_catch_sec .cont {
    position: relative;
    width: fit-content;
    margin-inline: auto;
}

.top_catch_sec .cont .text_box .text,
.top_catch_sec .cont .text_box .flex_box {
    font-size: 1.25vw;
    line-height: 2.5;
    letter-spacing: .035em;
    color: #fff;
}

.top_catch_sec .cont .text_box .flex_box {
    display: flex;
    margin-block: 1em 1.5em;
}

.top_catch_sec .cont .text_box .flex_box .mark {
    font-size: 1.667vw;
    display: inline-block;
    flex-shrink: 0;
    line-height: 1;
    margin-bottom: 2.083vw;
}

.top_catch_sec .cont .text_box .flex_box .text {
    flex-shrink: 0;
    margin-top: 1.25vw;
    line-height: 1;
}

.top_catch_sec .cont .text_box .flex_box img {
    flex-shrink: 0;
    margin-inline: .5em;
    width: 31.806vw;
    line-height: 1;
    margin-top: -1.111vw;
}

.top_catch_sec .cont .btn_box {
    display: grid;
    grid-template-columns: repeat(2, 19.4vw);
    gap: 0 1.389vw;
    margin-top: 2.083vw;
}

.top_catch_sec .cont .btn_box .link {
    display: grid;
    place-content: center;
    border: 1px solid #D3D3D3;
    background-color: #fff;
    min-block-size: 4.236vw;
    font-size: 1.111vw;
    letter-spacing: .01em;
    color: var(--font-color);
    transition: all .3s;
    position: relative;
    z-index: 1;
}

.top_catch_sec .cont .btn_box .link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 0.347vw;
    width: 100%;
    background-color: var(--accent-color);
    z-index: -1;
    transition: all .3s;
}

.top_catch_sec .cont .btn_box .link:hover::after {
    height: 100%;
}

/* PCトップ　相談セクション */
.common_worries_sec {
    padding-block: 9.722vw;
    background-color: var(--bg-color);
    position: relative;
}

.common_worries_sec::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50%;
    width: 93.056vw;
    height: 0.139vw;
    background-color: #B4B5BD;
}

.common_worries_sec .common_site_title .en {
    font-size: 4.444vw;
}

.common_worries_sec .common_site_title .title {
    font-size: 1.667vw;
}

.worries-item_box {
    margin-top: 2.431vw;
}

.worries-item_box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.431vw 2.083vw;
}

.worries-item_box ul li {
    flex-shrink: 0;
    width: 25vw;
    background-color: #fff;
    padding: 0 1.944vw 2.222vw;
    display: flex;
    flex-direction: column;
}

.worries-item_box ul li .num {
    margin: -1.73vw auto 2.36vw;
    font-size: 3.333vw;
    letter-spacing: 0em;
    line-height: 1.3;
    border-bottom: 2px solid var(--accent-color);
    width: fit-content;
}

.worries-item_box ul li .icon {
    width: 8.333vw;
    height: 7.361vw;
    margin-inline: auto;
    position: relative;
}

.worries-item_box ul li .icon img {
    position: absolute;
    inset: 0;
    margin: auto;
}

.worries-item_box ul li .text_box {
    flex-grow: 1;
    display: grid;
    margin-top: 1.25vw;
}

.worries-item_box ul li .text_box .text {
    font-size: 1.389vw;
    line-height: 1.5;
    letter-spacing: .01em;
    text-align: center;
    margin-top: auto;
}

.worries-item_box ul li .text_box .text .line {
    background: linear-gradient(to top, #F4E4F8 14%, transparent 14%);
}

.worries-item_box ul li:nth-child(2) .text_box,
.worries-item_box ul li:nth-child(3) .text_box {
    margin-bottom: 1.111vw;
}

/* PCトップ　サービス */
.top_service_sec {
    padding-top: 9.028vw;
    position: relative;
}

.top_service_sec::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 27.778vw;
    background-color: var(--bg-color);
}

.top_service_sec .title_box {
    position: relative;
    align-items: flex-end;
    gap: 0 3.472vw;
}

.top_service_sec .title_box .common_head_box {
    width: 55.556vw;
    flex-shrink: 0;
}

.service-item_list {
    padding-inline: 0.694vw;
    position: relative;
    margin-top: 2.431vw;
}

.service-item_list ul {
    display: flex;
    justify-content: space-between;
    gap: 0 0.694vw;
}

.service-item_list ul li {
    flex: 1;
    transition: all .3s;
}

.service-item_list ul li .link {
    display: flex;
    flex-direction: column;
    height: 40.278vw;
    position: relative;
    padding: 4.167vw 2.083vw;
    transition: all .3s;
}

.service-item_list ul li .link .img {
    position: absolute;
    inset: 0;
}

.service-item_list ul li .link .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service-item_list ul li .link .img::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(65, 65, 65, .5);
    mix-blend-mode: multiply;
}

.service-item_list ul li .link .text_box {
    position: relative;
}

.service-item_list ul li .link .sub {
    color: #fff;
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: 0em;
    position: relative;
    padding-bottom: .8em;
    transition: all .3s;
}

.service-item_list ul.is-hovering .link:not(.is-active) .sub {
    font-size: 1.389vw;
    padding-bottom: .5em;
}

.service-item_list ul li .link .sub::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 2.083vw;
    height: 0.069vw;
    background-color: #fff;
}

.service-item_list ul.is-hovering .link:not(.is-active) .sub::before {
    width: 1.389vw;
    transition: all .2s;
}

.service-item_list ul li .link .title_box {
    margin-top: 2.431vw;
    transition: all .2s;
}

.service-item_list ul.is-hovering .link:not(.is-active) .title_box {
    margin-top: 1.389vw;
}

.service-item_list ul li .link .en {
    font-size: 3.889vw;
    line-height: .7;
    letter-spacing: 0em;
    color: #fff;
    transition: all .2s;
}

.service-item_list ul.is-hovering .link:not(.is-active) .en {
    font-size: 2.222vw;
}

.service-item_list ul li .link .en .mark {
    display: inline-block;
    width: 3.681vw;
    margin-right: -.08em;
    transition: all .2s;
}

.service-item_list ul li .link .en .mark img {
    width: 100%;
}

.service-item_list ul.is-hovering .link:not(.is-active) .en .mark {
    width: 1.806vw;
}

.service-item_list ul li .link .title {
    font-size: 1.389vw;
    line-height: 1.7;
    letter-spacing: .03em;
    color: #fff;
    margin-top: .8em;
    transition: all .2s;
}

.service-item_list ul.is-hovering .link:not(.is-active) .title {
    font-size: 0.833vw;
    margin-top: .2em;
}

.service-item_list ul li .link .hover_text {
    position: relative;
    margin-top: auto;
    transition: all .2s;
    opacity: 0;
    visibility: hidden;
}

.service-item_list ul li .link .hover_text .text {
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
    color: #fff;
}

.service-item_list ul li:hover {
    flex: 3;
}

.service-item_list ul li .link:hover .hover_text {
    opacity: 1;
    visibility: visible;
}

/* PCトップ　新着物件 */
.top_properties_sec {
    padding-block: 11.111vw 13.333vw;
    position: relative;
    overflow: hidden;
}

.top_properties_sec::before {
    content: '';
    position: absolute;
    width: 96.528vw;
    height: 51.389vw;
    bottom: 0;
    left: 0;
    background-color: var(--bg-color);
}

.top_properties_sec .cont {
    display: grid;
    grid-template-columns: auto 52vw;
    gap: 0 6.042vw;
    align-items: center;
    position: relative;
}

.top_properties_sec .cont .box {
    margin-top: -4.861vw;
}

.top_properties_sec .common_site_btn {
    margin-top: 3.819vw;
}

.common_property_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 2.083vw;
}

.common_property_list ul li .link {
    display: block;
    width: 25vw;
}

.common_property_list ul li .link .img {
    position: relative;
    height: 16.667vw;
    overflow: hidden;
}

.common_property_list ul li .link .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_property_list ul li .link .img::before {
    content: '';
    position: absolute;
    top: 0.694vw;
    right: 0.694vw;
    width: 0.833vw;
    aspect-ratio: 1;
    min-width: 0;
    border-radius: 100%;
    background-color: var(--accent-color);
    transition: all .3s;
}

.common_property_list ul li .link:hover .img::before {
    top: -50%;
    right: -50%;
    width: 200%;
    mix-blend-mode: multiply;
    opacity: .15;
}

.common_property_list ul li .link .text_box {
    margin-top: 1.042vw;
}

.common_property_list ul li .link .address {
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .01em;
    color: var(--font-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all .3s;
    position: relative;
    width: fit-content;
}

.common_property_list ul li .link .address::before {
    content: '';
    position: absolute;
    width: 0%;
    height: 0.139vw;
    bottom: 0.139vw;
    left: 0;
    background-color: var(--accent-color);
    transition: all .3s;
}

.common_property_list ul li .link:hover .address {
    color: var(--accent-color);
}

.common_property_list ul li .link:hover .address::before {
    width: 100%;
}

.common_property_list ul li .link .label_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0 1em;
    margin-top: .5em;
}

.common_property_list ul li .link .cat {
    flex-shrink: 0;
    border: 1px solid var(--font-color);
    font-size: 1.111vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--font-color);
    padding: .28em .55em;
}

.common_property_list ul li .link .price {
    font-size: 1.25vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--font-color);
}

.common_property_list ul li .link .price .size {
    font-size: 2.778vw;
    line-height: 1;
    letter-spacing: 0;
    display: inline-block;
}

/* PCトップ　選べれる理由 */
.common_reason_sec {
    padding-bottom: 9.028vw;
}

body.home .common_reason_sec {
    padding: 9.028vw 0;
}

.common_reason_sec .title_box {
    text-align: right;
    position: relative;
    margin-top: -1.528vw;
}

.common_reason_sec .title_box .en {
    font-size: 18.889vw;
    line-height: .45;
    letter-spacing: .01em;
    color: var(--sub-color);
    margin-right: -6.944vw;
}

.common_reason_sec .title_box .title {
    font-size: 2.222vw;
    line-height: 1.2;
    letter-spacing: .03em;
}

.reason_list_area ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3.472vw 2.986vw;
    margin-top: -3.472vw;
}

.reason_list_area ul li {
    position: relative;
}

.reason_list_area ul li:nth-child(2) {
    margin-top: 8.333vw;
}

.reason_list_area ul li:nth-child(3) {
    margin-top: -10.417vw;
}

.reason_list_area ul li .num {
    position: absolute;
    top: 0;
    left: 0.694vw;
    display: flex;
    gap: 0 1.042vw;
    align-items: center;
    font-size: 2.222vw;
    line-height: 1;
    letter-spacing: 0em;
    writing-mode: vertical-lr;
    white-space: pre;
}

.reason_list_area ul li .num::before {
    flex-shrink: 0;
    content: '';
    width: 0.139vw;
    height: 5.556vw;
    background-color: var(--font-color);
}

.reason_list_area ul li .img {
    width: 34.722vw;
    height: 24.306vw;
    margin-left: auto;
    position: relative;
}

.reason_list_area ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.reason_list_area ul li .text_area {
    margin-top: -6.389vw;
    padding: 7.778vw 2.778vw 3.125vw 3.264vw;
    border-bottom: 5px solid var(--accent-color);
    background-color: var(--sub-color);
}

.reason_list_area ul li .catch {
    font-size: 1.667vw;
    line-height: 1.5;
    letter-spacing: 0em;
}

.reason_list_area ul li .catch .color {
    background-color: var(--accent-color);
    font-size: 1.3em;
    line-height: 1;
    padding: .1em;
    display: inline-block;
    margin-inline: .1em;
}

.reason_list_area ul li .catch .small {
    font-size: .7em;
}

.reason_list_area ul li .text_box {
    margin-top: 1.042vw;
}

.reason_list_area ul li .text_box .text {
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
}

.reason_list_area ul li .text_box .text+.text {
    margin-top: .8em;
}

/* PCトップ　コラム */
.top_column_sec {
    position: relative;
    z-index: 1;
}

.top_column_sec::before {
    content: '';
    position: absolute;
    top: 3.472vw;
    left: 50%;
    transform: translateX(-50%);
    width: 93.056vw;
    height: 22.431vw;
    background-color: var(--bg-color);
    z-index: -1;
}

.top_column_sec .common_column_list {
    margin-top: 2.431vw;
}

.common_column_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3.472vw 2.431vw;
}

.common_column_list ul li .link {
    display: block;
}

.common_column_list ul li .link .img {
    height: 18.056vw;
    overflow: hidden;
    position: relative;
    transition: all .3s;
}

.common_column_list ul li .link .img::before {
    content: '';
    position: absolute;
    top: 0.694vw;
    right: 0.694vw;
    width: 0.833vw;
    aspect-ratio: 1;
    min-width: 0;
    border-radius: 100%;
    background-color: var(--accent-color);
    transition: all .3s;
}

.common_column_list ul li .link:hover .img::before {
    top: -50%;
    right: -50%;
    width: 200%;
    mix-blend-mode: multiply;
    opacity: .15;
}

.common_column_list ul li .link .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_column_list ul li .link .title {
    font-size: 1.111vw;
    line-height: 1.3;
    letter-spacing: 0em;
    color: var(--font-color);
    margin-top: 1.042vw;
    height: 2.917vw;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.common_column_list ul li .link .time_box {
    display: flex;
    gap: 0 1em;
    align-items: center;
    margin-top: 0.694vw;
}

.common_column_list ul li .link .time {
    flex-shrink: 0;
    font-size: 1.389vw;
    line-height: 1;
    letter-spacing: 0em;
    color: #B4B5BD;
    transition: all .3s;
}

.common_column_list ul li .link:hover .time {
    color: var(--accent-color);
}

.common_column_list ul li .link .line {
    display: block;
    width: 100%;
    height: 0.069vw;
    background-color: #B4B5BD;
    position: relative;
}

.common_column_list ul li .link .line::before {
    content: '';
    position: absolute;
    top: -0.034vw;
    left: 0;
    width: 2.083vw;
    height: 0.139vw;
    background-color: var(--accent-color);
    z-index: 1;
    transition: all .3s;
}

.common_column_list ul li .link:hover .line::before {
    width: 100%;
}

.top_column_sec .common_site_btn .btn {
    margin: 2.43vw auto 0;
}

/* PCトップ　代表メッセージ */
.top_message_sec {
    /* margin-top: 10.069vw; */
    padding-bottom: 13.889vw;
    overflow: hidden;
}

.top_message_sec .bg_img {
    clip-path: inset(0);
    height: 29.167vw;
    position: relative;
}

.top_message_sec .bg_img::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(65, 65, 65, .9);
    mix-blend-mode: multiply;
    z-index: 1;
}

.top_message_sec .bg_img img {
    position: fixed;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_message_sec .cont {
    display: flex;
    margin-top: 5.347vw;
}

.top_message_sec .cont .title_box {
    flex-shrink: 0;
    margin-right: 5.278vw;
}

.top_message_sec .cont .title_box .title {
    display: flex;
    gap: 0 1.042vw;
    align-items: center;
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: .03em;
    writing-mode: vertical-lr;
    white-space: pre;
}

.top_message_sec .cont .title_box .title::before {
    flex-shrink: 0;
    content: '';
    width: 0.139vw;
    height: 5.556vw;
    background-color: var(--font-color);
}

.top_message_sec .cont .text_area {
    flex-shrink: 0;
}

.top_message_sec .cont .catch_box {
    text-align: right;
    position: relative;
    z-index: 1;
}

.top_message_sec .cont .catch_box .en {
    font-size: 5vw;
    line-height: 1;
    letter-spacing: .01em;
    background-color: #fff;
    padding: .08em .2em 0;
    display: block;
}

.top_message_sec .cont .catch_box .en.color {
    color: #B4B5BD;
}

.top_message_sec .cont .catch_box .en .color {
    color: var(--accent-color);
}

.top_message_sec .cont .catch_box .en:last-child {
    margin: .1em -2vw 0 0;
}

.top_message_sec .cont .text_box {
    margin-top: 2.083vw;
    width: fit-content;
}

.top_message_sec .cont .text_box .text {
    font-size: 1.25vw;
    line-height: 1.7;
    letter-spacing: .01em;
    font-weight: 500;
}

.top_message_sec .cont .name {
    width: 18.056vw;
    margin: 1.73vw 0 0 auto;
}

.top_message_sec .cont .name img {
    width: 100%;
}

.top_message_sec .cont .name .name_text {
    font-size: 1.181vw;
    text-align: right;
    font-family: serif;
}

.top_message_sec .cont .name .name_text.small {
    font-size: 1.111vw;
}

.top_message_sec .cont .name .name_text .large {
    font-size: 1.7em;
    font-weight: 700;
    margin-left: 0.2em;
    /* font-family: "Yuji Boku", serif; */
    font-family: ah-hakushu-running-script, sans-serif;
    font-weight: 300;
    font-style: normal;
    letter-spacing: 0;
}

.top_message_sec .cont .img {
    margin: -8.819vw 0 0 -5.556vw;
    width: 33.333vw;
    height: 47.222vw;
    flex-shrink: 0;
    position: relative;
}

.top_message_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_message_sec .cont .img::before {
    content: '';
    position: absolute;
    bottom: -3.472vw;
    right: -3.472vw;
    width: 20.833vw;
    aspect-ratio: 1;
    min-width: 0;
    background-color: var(--sub-color);
    z-index: -1;
}

.top_message_sec .common_site_btn {
    margin-top: 2.431vw;
}

/* PCトップ　会社情報 */
.common_sub_title {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 1;
    padding-top: 4.167vw;
}

.common_sub_title::before {
    content: '';
    position: absolute;
    bottom: 2.083vw;
    right: 0;
    width: 51.389vw;
    height: 0.139vw;
    background-color: var(--font-color);
}

.common_sub_title::after {
    content: '';
    position: absolute;
    left: -6.944vw;
    top: 0;
    width: 17.361vw;
    aspect-ratio: 1;
    min-width: 0;
    background-color: var(--sub-color);
    z-index: -1;
}

.common_sub_title .en {
    font-size: 8.333vw;
    line-height: 1;
    letter-spacing: .01em;
}

.common_sub_title .title {
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: .03em;
}

.top_company_sec {
    margin-block: 10.069vw 11.111vw;
}

.top_company_sec .cont {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 36.8vw 1fr;
    gap: 0 5.556vw;
    margin-top: 1.389vw;
}

.top_company_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_company_sec .cont .info_box dl {
    display: grid;
    align-items: center;
    grid-template-columns: 23% 1fr;
    border-bottom: 1px solid #E7ECE7;
    padding: 1em .5em;
}

.top_company_sec .cont .info_box dl:nth-child(4) {
    border-bottom: none;
}

.top_company_sec .cont .info_box dl dt {
    font-size: 1.25vw;
    letter-spacing: .01em;
}

.top_company_sec .cont .info_box dl dd {
    font-size: 1.111vw;
    letter-spacing: .01em;
    font-weight: 500;
}

.top_company_sec .common_site_btn {
    margin-top: 3.125vw;
}

/* PCトップ　お知らせ */
.top_news_sec {
    margin-block: 0 11.111vw;
    position: relative;
}

.top_news_sec::before {
    content: '';
    position: absolute;
    width: 93.056vw;
    height: 22.847vw;
    top: 3.125vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--bg-color);
}

.top_news_sec .common_site_title {
    position: relative;
}

.top_news_sec .common_archive_list {
    position: relative;
    margin-top: 2.431vw;
}

.common_archive_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5vw;
}

.common_archive_list ul li .link {
    display: flex;
    flex-direction: column;
    height: 18.75vw;
    border: 1px solid #D3D3D3;
    padding: 2.431vw 1.389vw;
    background-color: #fff;
    position: relative;
}

.common_archive_list ul li .link .cat {
    position: absolute;
    top: -1.042vw;
    left: 1.389vw;
    width: fit-content;
    height: auto;
    background-color: var(--font-color);
    font-size: 1.111vw;
    line-height: 1;
    letter-spacing: .01em;
    color: #fff;
    padding: .3em .9em;
}

.common_archive_list ul li .link .title {
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .03em;
    color: #7D777E;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    transition: all .3s;
}

.common_archive_list ul li .link:hover .title {
    color: var(--accent-color);
}

.common_archive_list ul li .link .time_box {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-top: 1px solid #D3D3D3;
    padding-top: 1.389vw;
}

.common_archive_list ul li .link .time_box .time {
    flex-shrink: 0;
    font-size: 1.389vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--font-color);
}

.common_archive_list ul li .link .time_box .btn {
    border: 1px solid #D3D3D3;
    width: 10.417vw;
    min-block-size: 2.917vw;
    padding-inline: 1em;
    display: flex;
    align-items: center;
    position: relative;
    transition: all .3s;
    background-color: #fff;
}

.common_archive_list ul li .link .time_box .btn .text {
    font-size: 0.972vw;
    line-height: 1;
    letter-spacing: .01em;
    font-weight: 500;
    color: #7D777E;
    transition: all .3s;
}

.common_archive_list ul li .link .time_box .btn::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0.694vw;
    transform: translateY(-50%);
    width: 0.625vw;
    aspect-ratio: 1;
    min-width: 0;
    border-bottom: 1px solid #7D777E;
    border-right: 1px solid #7D777E;
    rotate: -45deg;
    transition: all .3s;
}

.common_archive_list ul li .link:hover .time_box .btn {
    background-color: #D3D3D3;
}

.common_archive_list ul li .link:hover .time_box .btn .text {
    color: #fff;
}

.common_archive_list ul li .link:hover .time_box .btn::before {
    border-color: #fff;
}

.top_news_sec .common_site_btn .btn {
    margin: 2.43vw auto 0;
}

/* PCトップ　フッター */
.main_footer {
    background-color: var(--sub-color);
    padding-block: 7.639vw 4.861vw;
    border-bottom: 10px solid var(--font-color);
}

.main_footer .wrap {
    position: relative;
}

.main_footer .cont {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: space-between;
}

.main_footer .cont .logo a {
    width: 19.444vw;
    display: block;
}

.main_footer .cont .logo a img {
    width: 100%;
}

.main_footer .cont .address {
    font-size: 1.111vw;
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 500;
    margin-top: .6em;
}

.main_footer .cont .tel {
    display: inline-block;
    font-size: 2.778vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--font-color);
    pointer-events: none;
    margin-top: .1em;
}

.main_footer .cont .tel small {
    font-size: .4em;
    margin-right: .3em;
}

.main_footer .cont .time {
    font-size: 1.042vw;
    letter-spacing: 0em;
    font-weight: 500;
}

.main_footer .cont .ft_btn {
    margin-top: 1.042vw;
}

.main_footer .cont .ft_btn .common_site_btn .btn {
    width: 19.444vw;
}

.main_footer .cont .ft_btn .common_site_btn+.common_site_btn {
    margin-top: 0.625vw;
}

.main_footer .cont .ft_nav {
    display: grid;
    grid-template-columns: repeat(3, 17.36vw);
    gap: 0 1.389vw;
    margin-top: 2.083vw;
}

.main_footer .cont .ft_nav ul li .link {
    display: block;
    border-bottom: 1px solid #B4B5BD;
    padding: 1.2em .6em;
    font-size: 1.111vw;
    line-height: 1.5;
    letter-spacing: 0em;
    color: var(--font-color);
    position: relative;
    transition: all .3s;
}

.main_footer .cont .ft_nav ul li .link::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0.556vw;
    transform: translateY(-50%);
    width: 0.417vw;
    aspect-ratio: 1;
    min-width: 0;
    border-right: 1px solid #B4B5BD;
    border-bottom: 1px solid #B4B5BD;
    rotate: -45deg;
    transition: all .3s;
}

.main_footer .cont .ft_nav ul li .link:hover::after {
    border-color: var(--accent-color);
}

.main_footer .cont .ft_nav ul li .link:hover {
    color: var(--accent-color);
}

.main_footer .cont .ft_nav ul li .link::before {
    content: '';
    position: absolute;
    bottom: -0.104vw;
    left: 0;
    width: 1.389vw;
    height: 0.139vw;
    background-color: var(--accent-color);
    transition: all .3s;
}

.main_footer .cont .ft_nav ul li .link:hover::before {
    width: 100%;
}

.main_footer .cont .ft_nav ul li .sub_menu {
    display: inline-block;
    font-size: 1.111vw;
    letter-spacing: 0em;
    color: var(--font-color);
    margin-top: 1.042vw;
    transition: all .3s;
}

.main_footer .cont .ft_nav ul li .sub_menu .num {
    margin-right: .2em;
}

.main_footer .cont .ft_nav ul li .sub_menu:hover {
    color: var(--accent-color);
}

.main_footer .cont .ft_nav ul li .sub {
    display: inline-block;
    font-size: 0.833vw;
    letter-spacing: 0em;
    font-weight: 500;
    color: var(--font-color);
    transition: all .3s;
}

.main_footer .cont .ft_nav ul li .sub:hover {
    opacity: .7;
}

.main_footer .cont .ft_nav ul li .sub.first {
    margin-top: 2.222vw;
}

.main_footer .sns_box .icon_logo {
    width: 5.556vw;
}

.main_footer .sns_box .icon_logo img {
    width: 100%;
}

.main_footer .sns_box .sns_list {
    margin-top: 1.042vw;
    display: flex;
    gap: 0 1.389vw;
}

.main_footer .sns_box .sns_list .sns {
    width: 2.083vw;
    transition: all .3s;
}

.main_footer .sns_box .sns_list .sns:hover {
    opacity: .6;
}

.main_footer .sns_box .sns_list .sns img {
    width: 100%;
}

.main_footer .copy {
    display: inline-block;
    font-size: 1.111vw;
    line-height: 1;
    letter-spacing: .01em;
    margin-top: 1.736vw;
}

.main_footer .ft_catch {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 37.5vw;
    height: auto;
}

.main_footer .ft_catch img {
    width: 100%;
}

/* PC固定ページ 共通設定 */
.common_page_main {
    padding-block: 4.861vw;
    margin-block: 0 1em;
    background: url(./image/common_page_img.webp) center center / cover no-repeat;
    position: relative;
}

.common_page_main::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(25, 16, 18, .8);
    mix-blend-mode: multiply;
}

.common_page_main .title_box {
    color: #fff;
    position: relative;
}

.common_page_main .title_box .sub_title {
    font-size: 5.556vw;
    line-height: 1;
    letter-spacing: 0em;
    text-transform: capitalize;
}

.common_page_main .title_box .title {
    font-size: 1.389vw;
    letter-spacing: .03em;
    line-height: 1.5;
    margin-top: .5em;
}

.common_page_main .title_box .catch {
    display: flex;
    gap: 0 1em;
    align-items: center;
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .03em;
    margin-top: 1.55em;
}

.common_page_main .title_box .catch::before {
    flex-shrink: 0;
    content: '';
    width: 2.639vw;
    height: 0.139vw;
    background-color: #fff;
}

.common_page_wrap {
    padding-block: 8.333vw 11.111vw;
}

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

.reserve_text {
    text-align: center;
    font-size: 2.083vw;
}

/* パンくず */
.breadcrumb {
    font-size: 0.833vw;
    color: #3E3E3E;
    letter-spacing: .08em;
    text-align: right;
}

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

/* PC固定ページ お問い合わせ */
.contact_form_disc {
    color: #3E3E3E;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    margin-block: 0 3.8em;
}

.contact_form_disc .text {
    font-size: 1.111vw;
    margin-block: 0 1em;
    font-weight: 500;
}

.contact_form_disc .caution {
    font-size: 0.972vw;
}

.common_contact_form .form_box {
    margin-block: 0 3.472vw;
}

.common_contact_form .form_box dl {
    display: grid;
    grid-template-columns: 26.5% 1fr;
    align-items: center;
    gap: 5.556vw;
}

.common_contact_form .form_box dl.none {
    display: none;
}

.common_contact_form .form_box dl.start {
    align-items: flex-start;
}

.common_contact_form .form_box dl+dl {
    margin-block: 1.6em 0;
}

.common_contact_form .form_box dl dt {
    display: flex;
    align-items: center;
    gap: 1.3em;
    font-size: 1.111vw;
    letter-spacing: .08em;
    font-weight: 700;
    padding-inline: 0 0.5em;
    position: relative;
}

.common_contact_form .form_box dl dt .label {
    flex-shrink: 0;
    color: #3E3E3E;
    font-size: 0.833vw;
    letter-spacing: .2em;
    font-weight: 700;
    border-radius: 100vmax;
    padding: 0.2em 0.9em;
}

.common_contact_form .form_box dl dt .label.hissu {
    background: #C70000;
    color: #fff;
}

.common_contact_form .form_box dl dt .label.ninni {
    background: #E0E0E0;
}

.common_contact_form .form_box dl dt::after {
    content: "";
    width: 0.069vw;
    height: 2.083vw;
    background: #AAA;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.common_contact_form .form_box dl dd .box {
    display: grid;
    grid-template-columns: 28% 1fr;
    align-items: center;
}

.mw_wp_form_confirm .common_contact_form .form_box dl dd .box {
    grid-template-columns: 1fr;
}

.common_contact_form .form_box dl dd .box.column {
    grid-template-columns: 1fr;
}

.common_contact_form .form_box dl dd .box+.box {
    margin-top: .8em;
}

.common_contact_form input[type="text"],
.common_contact_form input[type="email"],
.common_contact_form #zip {
    width: 100%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 0.278vw;
    font-size: 0.972vw;
    letter-spacing: .08em;
    font-weight: 400;
    padding: 0.8em 1em;
}

.common_contact_form textarea {
    width: 100%;
    height: 12.5vw;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 0.278vw;
    padding: 1em;
    font-size: 0.972vw;
    letter-spacing: .08em;
    font-weight: 400;
}

.common_contact_form input::placeholder,
.common_contact_form textarea::placeholder {
    color: #C7C4C4;
}

.common_contact_form select {
    width: 47.5%;
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 0.278vw;
    font-size: 0.972vw;
    letter-spacing: .08em;
    padding: 1.1em 1em;
}

/* .common_contact_form select.empty {
    color: #C7C4C4;
} */

.common_contact_form select option {
    padding: 1.1em 1em;
}

.page_contact #btn_wrap {
    justify-content: center;
    text-align: right;
    width: 74%;
    margin: auto;
}

.page_contact #btn_wrap button {
    background-color: var(--main-color);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 21.528vw;
    line-height: 4.167vw;
    font-size: 1.25vw;
    font-weight: 900;
    transition: .3s;
    text-align: center;
    letter-spacing: .08em;
    margin: auto;
}

.page_contact #btn_wrap button[name="submitBack"] {
    background: #333;
    margin-top: 1.389vw;
}

.page_contact #btn_wrap button:hover {
    opacity: .8;
}

.privacy_term_outer .privacy_term_inner {
    height: 9.583vw;
    margin: auto;
    overflow: auto;
}

.privacy_term_outer .privacy_term_inner .privacy_index {
    font-size: 0.972vw;
}

.privacy_term_outer .privacy_term_inner .main_text {
    font-size: 0.903vw;
    margin-bottom: 1.736vw;
}

.privacy_term_outer .privacy_term_inner dl dt {
    font-size: 0.903vw;
    border-left: solid 3px #ccc;
    padding-left: 1em;
    margin-bottom: 0.347vw;
}

.privacy_term_outer .privacy_term_inner dl dd {
    font-size: 0.903vw;
}

.privacy_term_outer .privacy_term_inner dl+dl {
    margin-top: 2.083vw;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar {
    width: 0.556vw;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-track {
    background: transparent;
}

.privacy_term_outer .privacy_term_inner::-webkit-scrollbar-thumb {
    background-color: #333;
    border-radius: 0.694vw;
}

.privacy_term_outer {
    border-top: solid 1px #e3e3e3;
    padding: 2.083vw 0;
    border-bottom: solid 1px #e3e3e3;
    width: 60%;
    margin: 0 auto 3.47vw;
}

.privacy_check_list .mwform-checkbox-field-text {
    padding-right: 0;
}

.privacy_check_list .error {
    font-size: 0.833vw;
}

.privacy_term_detail {
    text-align: center;
    font-size: 0.903vw;
    margin: 1.389vw 0;
    position: relative;
    font-weight: 600;
}

.privacy_term_detail::after {
    content: "";
    margin: 0.34vw auto 0;
    border: solid #333;
    border-width: 0.139vw 0.139vw 0 0;
    width: 0.694vw;
    aspect-ratio: 1 / 1;
    min-width: 0;
    rotate: 135deg;
    display: block;
}

.mw_wp_form_confirm .privacy_check_list,
.mw_wp_form_confirm .privacy_term_detail {
    display: none;
}

/* ラジオボタン デザイン */
.radio_btns,
.checkboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em 1.5em;
    padding: .5em 0;
}

/* ラジオボタンを隠す */
.radio_btns input[type=radio].radio_btns__item {
    display: none;
}

.radio_btns label {
    display: inline-block;
    cursor: pointer;
}

/* spanの左側にボタンを配置するスペースを作る */
.radio_btns .radio_btns__item+span {
    color: #3E3E3E;
    font-size: 1.042vw;
    letter-spacing: .08em;
    font-weight: 600;
    padding-left: 2em;
    display: inline-block;
    position: relative;
}

/* 各パーツを作成 */
.radio_btns .radio_btns__item+span::before,
.radio_btns .radio_btns__item+span::after {
    content: '';
    display: block;
    position: absolute;
    border: 1px solid #E6E6E6;
    background: #F8F8F8;
    border-radius: 50%;
    width: 1.389vw;
    aspect-ratio: 1;
    min-width: 0;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

/* after上書き */
.radio_btns .radio_btns__item+span::after {
    width: 0.694vw;
    aspect-ratio: 1;
    min-width: 0;
    top: 0;
    left: 0.347vw;
    border: none;
    background: #5A5A5A;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    transition: all .3s;
}

/*
  checked状態
  文字のcolorとボタンのopacityを変更
*/
.radio_btns .radio_btns__item:checked+span::after {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/* チェックボックス デザイン */
.page_contact input[type="checkbox"] {
    /* デフォルトcheckボックス非表示*/
    display: none;
}

.mwform-checkbox-field label {
    cursor: pointer;
}

.mwform-checkbox-field-text {
    color: #3E3E3E;
    font-size: 1.042vw;
    letter-spacing: .08em;
    font-weight: 600;
    display: inline-block;
    position: relative;
    padding: 0 0 0 2.083vw;
}

.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
    content: "";
    position: absolute;
    display: block;
}

.mwform-checkbox-field-text::before {
    background: #F8F8F8;
    border: 1px solid #E6E6E6;
    border-radius: 0.139vw;
    width: 1.389vw;
    aspect-ratio: 1 / 1;
    min-width: 0;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.mwform-checkbox-field-text::after {
    border-width: 0.208vw;
    border-color: transparent transparent #333 #333;
    border-style: solid;
    width: 1.389vw;
    aspect-ratio: 2/1;
    min-width: 0;
    margin-top: -0.2em;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(-45deg);
    opacity: 0;
}

input[type="checkbox"]:checked+.mwform-checkbox-field-text::after {
    opacity: 1;
}

.mw_wp_form .horizontal-item {
    display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0 !important;
}

/* サンクスページ */

.page_contact .thanks_textArea .name {
    font-size: 1.111vw;
    line-height: 2;
    text-align: center;
    margin-bottom: 1.389vw;
}

.page_contact .thanks_textArea .contact_text {
    margin: 0 auto 3.47vw;
    width: 62%;
}

.page_contact .thanks_textArea .ichiran_link {
    background-color: var(--main-color);
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    color: #fff;
    display: block;
    width: 20.833vw;
    line-height: 3.472vw;
    border-radius: 0.278vw;
    font-size: 1.111vw;
    transition: .3s;
    margin: 0 auto;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: .08em;
    text-align: center;
}

.page_contact .thanks_textArea .ichiran_link:hover {
    opacity: .8;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
}

.page_contact .thanks_textArea .contact_text .space {
    display: block;
    margin-top: 0.694vw;
}

/* ステップバー デザイン */
.page_contact .progressbar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5.6em;
    margin-block: 0 3em;
}

.page_contact .progressbar .item {
    color: #3E3E3E;
    font-size: 0.972vw;
    letter-spacing: .08em;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;
    position: relative;
}

.page_contact .progressbar .item+.item::before {
    content: "";
    width: 3.472vw;
    height: 0.069vw;
    background: #E6E6E6;
    position: absolute;
    top: 64%;
    left: -5em;
}

.page_contact .progressbar .item .mark {
    width: 2.5vw;
    aspect-ratio: 1;
    background: #fff;
    border: 1px solid #AFAFAF;
    border-radius: 50%;
    display: block;
    margin: 0 auto 0.5em;
    position: relative;
}

.page_contact .progressbar .item .mark::before {
    content: "";
    width: 41%;
    aspect-ratio: 1;
    background: #5A5A5A;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    opacity: 0;
}

.page_contact .progressbar .item.active .mark::before {
    opacity: 1;
}

.page_contact .progressbar .item .en {
    display: block;
    color: #A7A7A7;
    letter-spacing: 0;
    font-family: 'Helvetica', 'Arial', sans-serif;
}

.privacy_check_list {
    justify-content: center;
    align-items: center;
    margin-bottom: 1.736vw;
}

.privacy_check_list .hissu {
    background: #c70200;
    color: #fff;
    padding: 0.139vw 1.042vw;
    font-size: 0.694vw;
    letter-spacing: .08em;
    border-radius: 2.083vw;
    font-weight: 600;
}

.mw_wp_form .privacy_check_list .horizontal-item {
    margin: 0;
}

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

#page_404 .num {
    font-size: 6.944vw;
    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: 1.111vw;
}

/* PC固定ページ 売りたい方へ */
.common_page_area .description_box .text {
    font-size: 1.667vw;
    line-height: 1.5;
    letter-spacing: .01em;
    text-align: center;
}

.common_heading_sec {
    padding-bottom: 8.333vw;
}

.common_heading_sec .lead_box .text .en {
    font-size: 1.5em;
}

.common_heading_sec .lead_box .text {
    text-align: center;
    font-size: 2.222vw;
    line-height: 1.4;
    letter-spacing: .01em;
}

.common_heading_sec .lead_box .text+.text {
    margin-top: 1em;
}

.heading-problem_list {
    margin-top: 3.819vw;
    background-color: #fff;
    border: 1px solid #E7ECE7;
    padding: 4.167vw 5.556vw;
}

.heading-problem_list .text {
    font-size: 1.111vw;
    letter-spacing: .03em;
    margin-block: 0 2.083vw;
}

.heading-problem_list .text:last-child {
    margin-block: 2.083vw 0;
}

.heading-problem_list ul li {
    padding-left: 2.778vw;
    font-size: 1.389vw;
    line-height: 1.3;
    letter-spacing: .01em;
    position: relative;
}

.heading-problem_list ul li+li {
    margin-top: 1.389vw;
}

.heading-problem_list ul li::before {
    content: '';
    position: absolute;
    width: 1.389vw;
    aspect-ratio: 20/30;
    min-width: 0;
    top: 0;
    left: 0;
    background: url(./image/icon_moya.svg) center center / contain no-repeat;
}

.heading-problem_list ul li .line {
    background: linear-gradient(to top, #F4E4F8 15%, transparent 15%);
}

.common_heading_sec .cont {
    display: flex;
    gap: 0 4.167vw;
    align-items: center;
    margin-top: 5.556vw;
}

.common_heading_sec .cont .img {
    width: 24.306vw;
    flex-shrink: 0;
}

.common_heading_sec .cont .img img {
    width: 100%;
}

.common_heading_sec .cont .text_box .text {
    font-size: 1.389vw;
    letter-spacing: .01em;
}

.common_page_area .catch_box {
    margin-top: 5.556vw;
}

.common_page_area .catch_box .text {
    text-align: center;
    font-size: 2.222vw;
    letter-spacing: .01em;
}

.common_page_area .catch_box .text+.text {
    margin-top: .3em;
}

.common_page_area .catch_box .text.small {
    font-size: 1.667vw;
    margin-top: .8em;
}

.common_page_area .catch_box .text .bg {
    background-color: var(--accent-color);
    line-height: 1.2;
    display: inline-block;
    margin-inline: .2em;
}

.common_page_area .catch_box .text .line {
    background: linear-gradient(to top, #E1A8F0 13%, transparent 13%);
}

.common_page_area .catch_box .text .dots {
    background-image: radial-gradient(circle at center, #E1A8F0 20%, transparent 20%);
    background-position: top right;
    background-repeat: repeat-x;
    background-size: 1em 0.3em;
    padding-top: .3em;
}

.common_page_area .common_worries_sec::before {
    display: none;
}

.page_title_box {
    position: relative;
    text-align: center;
    padding-top: 5.208vw;
}

.page_title_box .en {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    font-size: 13.889vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--sub-color);
    z-index: -1;
}

.page_title_box .title {
    font-size: 2.222vw;
    letter-spacing: .03em;
}

.page_title_box .text_box {
    margin-top: 1.528vw;
}

.page_title_box .text_box .text {
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
}

.common_about_sec {
    padding-block: 3.472vw 9.028vw;
}

.common-about_list {
    margin-block: 2.431vw 5.556vw;
}

.common-about_list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3.194vw;
}

.common-about_list ul li {
    padding: 3.472vw 2.778vw 3.472vw 3.472vw;
    background-color: var(--sub-color);
    border-bottom: 5px solid var(--accent-color);
}

.common-about_list ul li .title_box {
    display: flex;
    gap: 0 1.389vw;
    align-items: center;
}

.common-about_list ul li .title_box .icon {
    flex-shrink: 0;
    border-radius: 100%;
    background-color: #fff;
    width: 5.556vw;
    aspect-ratio: 1;
    min-width: 0;
    display: grid;
    place-content: center;
}

.common-about_list ul li .title_box .icon img {
    width: 100%;
}

.common-about_list ul li .title_box .title {
    font-size: 2.222vw;
    letter-spacing: 0em;
}

.common-about_list ul li .text_box {
    margin-top: 1.042vw;
}

.common-about_list ul li .text_box .text {
    font-size: 1.111vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
    padding-left: 1em;
    position: relative;
}

.common-about_list ul li .text_box .sub {
    font-size: 1.042vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
    margin-top: 1em;
}

.common-about_list ul li .text_box .text .small {
    font-size: .9em;
}

.common-about_list ul li .text_box .text::before {
    content: '';
    position: absolute;
    top: 0.764vw;
    left: 0;
    width: 0.347vw;
    aspect-ratio: 1;
    min-width: 0;
    border-radius: 100%;
    background-color: var(--font-color);
}

.common-about_list ul li .text_box .text+.text {
    margin-top: 1em;
}

.common_page_area .bg_color {
    position: relative;
    margin-inline: 3.472vw;
}

.common_page_area .bg_color::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 97.5%;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--bg-color);
    z-index: -1;
}

.common_page_area .common_head_box {
    margin-top: 1em;
}

.common_how_sec .wrap {
    border-bottom: 2px solid #B4B5BD;
    padding-bottom: 9.028vw;
}

.common-how_list {
    margin-block: 2.431vw 3.819vw;
}

.common-how_list .text {
    margin-bottom: 1em;
    font-size: 1.25vw;
    letter-spacing: .03em;
}

.common-how_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.597vw;
}

.common-how_list ul li {
    background-color: #fff;
    padding: 2.431vw;
    border-bottom: 5px solid var(--accent-color);
}

.common-how_list ul li .title_box {
    display: flex;
    gap: 0 1.389vw;
}

.common-how_list ul li .title_box .num {
    flex-shrink: 0;
    padding-right: 1.389vw;
    border-right: 1px solid #D3D3D3;
    font-size: 2.222vw;
    line-height: 1;
    letter-spacing: 0em;
    display: grid;
    place-content: center;
}

.common-how_list ul li .title_box .title {
    font-size: 1.389vw;
    line-height: 1.5;
    letter-spacing: .01em;
    display: grid;
    place-content: center;
}

.common-how_list ul li .text_box {
    margin-top: 1.389vw;
}

.common-how_list ul li .text_box .text {
    font-size: 1.111vw;
    line-height: 1.5;
    letter-spacing: .01em;
    font-weight: 500;
}

.common-how_list ul li .text_box .text+.text {
    margin-top: 1em;
}

.common-how_list ul li .img {
    height: 17.361vw;
    margin-top: 1.389vw;
}

.common-how_list ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_ways_sec {
    padding-block: 5.556vw 12.917vw;
}

.common-ways_list {
    margin-top: 2.431vw;
}

.common-ways_list ul li+li {
    margin-top: 0.694vw;
}

.common-ways_list ul li {
    background-color: #fff;
    padding: 2.431vw 3.472vw;
    display: flex;
    gap: 0 2.778vw;
}

.common-ways_list ul li .num {
    flex-shrink: 0;
    padding-right: 1.389vw;
    border-right: 1px solid #E7ECE7;
    display: grid;
    place-content: center;
    font-size: 3.333vw;
    line-height: 1;
    letter-spacing: 0em;
    position: relative;
}

.common-ways_list ul li .num::before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -0.069vw;
    width: 0.139vw;
    height: 3.333vw;
    background-color: var(--accent-color);
}

.common-ways_list ul li .box {
    display: grid;
    grid-template-columns: 13.88vw 1fr;
    gap: 0 3.472vw;
    align-items: center;
}

.common-ways_list ul li .img {
    position: relative;
}

.common-ways_list ul li .img::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(0, 82, 247, .1);
    mix-blend-mode: lighten;
}

.common-ways_list ul li .img img {
    width: 100%;
    aspect-ratio: 1;
    min-width: 0;
    object-fit: cover;
}

.common-ways_list ul li .text_box .title {
    font-size: 1.667vw;
    line-height: 1.5;
    letter-spacing: .01em;
    margin-bottom: 1.528vw;
}

.common-ways_list ul li .text_box .text {
    font-size: 1.111vw;
    letter-spacing: .01em;
    font-weight: 500;
}

/* 売却の流れ */
.common_step_sec {
    position: relative;
    padding-block: 9.028vw;
}

.common_step_sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: var(--bg-color);
    margin-right: 3.472vw;
}

.common_step_sec .cont {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 8.333vw;
    position: relative;
}

.common_step_sec .step_list ul li+li {
    margin-top: 2.083vw;
}

.common_step_sec .step_list ul li {
    display: flex;
    align-items: center;
    gap: 0 2.083vw;
    position: relative;
    z-index: 1;
}

.common_step_sec .step_list ul li .icon {
    flex-shrink: 0;
    width: 6.944vw;
    height: 6.944vw;
    border-radius: 100%;
    border: 1px solid #B4B5BD;
    background-color: #fff;
    display: grid;
    place-content: center;
    position: relative;
}

.common_step_sec .step_list ul li .icon img {
    width: 100%;
}

.common_step_sec .step_list ul li .icon::before {
    content: '';
    position: absolute;
    top: 3.472vw;
    left: 50%;
    transform: translateX(-50%);
    width: 0.069vw;
    height: 6.944vw;
    background: url(./image/deco_line.svg) center center / contain no-repeat;
    z-index: -1;
}

.common_step_sec .step_list ul li:last-child .icon::before {
    display: none;
}

.common_step_sec .step_list ul li .title_box {
    display: flex;
    gap: 0 1.736vw;
}

.common_step_sec .step_list ul li .title_box .en {
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: 0em;
    padding-right: 1.736vw;
    border-right: 1px solid #D3D3D3;
}

.common_step_sec .step_list ul li .title_box .title {
    font-size: 1.389vw;
    line-height: 1.3;
    letter-spacing: .01em;
}

.common_step_sec .step_list ul li .text_box {
    margin-top: 0.903vw;
}

.common_step_sec .step_list ul li .text_box .text {
    font-size: 1.25vw;
    line-height: 1.6;
    letter-spacing: .01em;
    font-weight: 500;
}

/* ケーススタディ */
.common_case_sec {
    padding-block: 9.028vw 9.722vw;
}

.common_case_sec .case_list {
    margin-block: 2.083vw 3.75vw;
}

.common_case_sec .case_list ul {
    display: flex;
    flex-wrap: wrap;
    gap: 2.778vw 2.431vw;
    justify-content: center;
}

.common_case_sec .case_list ul li {
    width: 27.083vw;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

.common_case_sec .case_list ul li .img img {
    width: 100%;
    height: 16.667vw;
    object-fit: cover;
}

.common_case_sec .case_list ul li .box {
    display: flex;
    gap: 0 1.389vw;
    margin-top: 1.042vw;
    flex: 1;
}

.common_case_sec .case_list ul li .num {
    flex-shrink: 0;
    padding-right: 1.042vw;
    border-right: 1px solid #E7ECE7;
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: 0em;
    display: grid;
    place-content: center;
    position: relative;
}

.common_case_sec .case_list ul li .num::before {
    content: '';
    position: absolute;
    width: 0.139vw;
    height: 1.667vw;
    background: var(--accent-color);
    top: 50%;
    right: -0.069vw;
    transform: translateY(-50%);
}

.common_case_sec .case_list ul li .text_box {
    display: grid;
    place-content: center;
}

.common_case_sec .case_list ul li .text {
    font-size: 1.389vw;
    line-height: 1.3;
    letter-spacing: .01em;
}

/* よくある質問 */
.common_faq_sec .common_sub_title::before {
    width: 66.667vw;
}

.common_faq_sec .common_sub_title::after {
    width: 20.833vw;
}

.common_faq_sec .common_faq_list {
    position: relative;
    z-index: 1;
    margin-top: 2.431vw;
}

.common_faq_list dl {
    background-color: #fff;
    border: 1px solid #E7ECE7;
    padding: 2.431vw 3.472vw;
}

.common_faq_list dl+dl {
    margin-top: 1.389vw;
}

.common_faq_list dl dt,
.common_faq_list dl dd {
    display: flex;
    gap: 0 0.694vw;
    align-items: first baseline;
}

.common_faq_list dl .en {
    flex-shrink: 0;
    width: 2.083vw;
    aspect-ratio: 1;
    display: grid;
    place-content: center;
    font-size: 1.667vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--accent-color);
}

.common_faq_list dl dt .en {
    background-color: var(--font-color);
}

.common_faq_list dl dd .en {
    color: var(--font-color);
    background-color: var(--accent-color);
}

.common_faq_list dl dt {
    padding-bottom: 1.181vw;
}

.common_faq_list dl dt .qu {
    font-size: 1.389vw;
    line-height: 1.5;
    letter-spacing: .01em;
}

.common_faq_list dl dd {
    padding-top: 1.736vw;
    border-top: 1px solid #E7ECE7;
}

.common_faq_list dl dd .text {
    font-size: 1.25vw;
    line-height: 1.4;
    letter-spacing: .01em;
    font-weight: 500;
}

.page_buy .common_faq_sec {
    margin-top: 5.556vw;
}

/* 相続ページ */
.page_inheritance .heading-problem_list {
    width: 62.5vw;
    margin-inline: auto;
}

.page_inheritance.common_page_area .bg_color::before {
    height: 95.5%;
}

.page_inheritance .common_how_sec {
    margin-top: 13.889vw;
}

.page_inheritance .common-how_list ul li {
    display: flex;
    flex-direction: column;
}

.page_inheritance .common-how_list ul li .title_box {
    flex-grow: 1;
}

.page_inheritance .common-how_list ul li .title_box .title {
    font-size: 1.25vw;
    letter-spacing: 0;
}

.page_inheritance .common_how_sec .wrap {
    border-bottom: none;
}

.common_page_area .caption_box {
    background-color: #fff;
    padding: 2.083vw 3.472vw;
    border: 1px solid #E7ECE7;
}

.common_page_area .caption_box .text {
    font-size: 1.25vw;
    letter-spacing: .03em;
    margin-block: 0 1em;
}

.common_page_area .caption_box .text:last-child {
    margin-block: 1em 0;
}

.common_page_area .caption_box .list_box {
    padding: 1.389vw;
    background-color: var(--sub-color);
    font-size: 1.111vw;
}

.common_page_area .caption_box .list_box .text {
    font-size: 1.111vw;
    letter-spacing: .03em;
    margin-top: 0;
    font-weight: 500;
}

.common_choice_sec {
    padding-block: 5.556vw 10.417vw;
}

.common-choice_item {
    margin-top: 4.167vw;
}

.common-choice_item:nth-child(odd) {
    position: relative;
    z-index: 1;
    padding-block: 5.556vw;
}

.common-choice_item:nth-child(odd)::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: var(--bg-color);
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    z-index: -1;
}

.common-choice_item:nth-child(odd) .common-about_list ul li {
    background-color: #fff;
}

.common-choice_item:nth-child(odd) .common-about_list ul li .title_box .icon {
    background-color: var(--sub-color);
}

.common-choice_item .cont {
    display: flex;
    align-items: center;
    gap: 0 5.556vw;
}

.common-choice_item .cont .img {
    flex-shrink: 0;
    width: 38.194vw;
}

.common-choice_item .cont .img img {
    width: 100%;
    aspect-ratio: 3/2;
    min-width: 0;
    object-fit: cover;
}

.common-choice_item .cont .title_box {
    display: flex;
    gap: 0 1.389vw;
}

.common-choice_item .cont .title_box .num {
    display: grid;
    place-content: center;
    font-size: 2.083vw;
    line-height: 1.7;
    letter-spacing: 0em;
    padding-right: 1.389vw;
    border-right: 1px solid #E7ECE7;
    position: relative;
}

.common-choice_item .cont .title_box .num::before {
    content: '';
    position: absolute;
    width: 0.139vw;
    height: 1.528vw;
    right: -0.069vw;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--accent-color);
}

.common-choice_item .cont .title_box .catch {
    font-size: 1.528vw;
    line-height: 1.5;
    letter-spacing: .01em;
    display: grid;
    place-content: center;
}

.common-choice_item .cont .text_box {
    margin-top: 1em;
}

.common-choice_item .cont .text_box .text {
    font-size: 1.111vw;
    line-height: 1.7;
    letter-spacing: .03em;
    font-weight: 500;
}

.page_investment .common_case_sec {
    padding-block: 0;
}

.page_investment .common-about_list ul li .title_box .title {
    font-size: 1.667vw;
}

.page_investment .common-about_list ul li .title_box .title .small {
    display: block;
    font-size: .7em;
}

.page_investment .common_case_sec .case_list ul li .text {
    font-size: 1.319vw;
}

.page_investment .common_faq_sec {
    margin-top: 5.556vw;
}

.page_investment .common-about_list ul li .title_box .icon {
    padding: .65em;
}

/* PC固定ページ　会社概要 */
.company_message_sec .cont {
    display: flex;
    gap: 0 5.556vw;
    margin-top: 6.944vw;
}

.company_message_sec .cont .img {
    width: 33.333vw;
    flex-shrink: 0;
}

.company_message_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.company_message_sec .cont .text_area {
    margin-top: 3.472vw;
}

.company_message_sec .cont .catch_box {
    text-align: right;
    position: relative;
    z-index: 1;
    margin-right: -10.417vw;
}

.company_message_sec .cont .catch_box .en {
    font-size: 5vw;
    line-height: 1;
    letter-spacing: .01em;
    background-color: #fff;
    padding: .08em .2em 0;
    display: block;
    white-space: nowrap;
}

.company_message_sec .cont .catch_box .en:last-child {
    margin: .1em -2.08vw 0 0;
}

.company_message_sec .cont .catch_box .en.color {
    color: #B4B5BD;
}

.company_message_sec .cont .catch_box .en .color {
    color: var(--accent-color);
}

.company_message_sec .cont .text_box {
    margin-top: 4.167vw;
}

.company_message_sec .cont .text_box .text {
    font-size: 1.111vw;
    line-height: 1.8;
    letter-spacing: .01em;
    font-weight: 500;
}

.company_message_sec .cont .text_box .text+.text {
    margin-top: 1em;
}

.company_message_sec .cont .name {
    width: 18.056vw;
    margin: 1.73vw 0 0 auto;
}

.company_message_sec .cont .name .name_text {
    font-size: 1.181vw;
    text-align: right;
    font-family: serif;
}

.company_message_sec .cont .name .name_text.small {
    font-size: 1.111vw;
}

.company_message_sec .cont .name .name_text .large {
    font-size: 1.7em;
    margin-left: 0.2em;
    /* font-weight: 700; */
    /* font-family: "Yuji Boku", serif; */
    font-family: ah-hakushu-running-script, sans-serif;
    font-weight: 300;
    font-style: normal;
    letter-spacing: 0;
}

.company_message_sec .cont .name img {
    width: 100%;
}

.company_message_sec .license_box {
    margin-top: 3.472vw;
    padding: 2.083vw 3.472vw;
    background-color: var(--sub-color);
}

.company_message_sec .license_box .title {
    text-align: center;
    font-size: 1.528vw;
    letter-spacing: .03em;
    border-bottom: 1px solid #D3D3D3;
    padding-bottom: .3em;
}

.company_message_sec .license_box .text_box {
    margin-top: 2.083vw;
}

.company_message_sec .license_box .text_box .text {
    font-size: 1.111vw;
    letter-spacing: .03em;
    font-weight: 500;
    padding-left: 1em;
    position: relative;
}

.company_message_sec .license_box .text_box .text::before {
    content: '';
    position: absolute;
    top: 0.764vw;
    left: 0;
    width: 0.347vw;
    aspect-ratio: 1;
    min-width: 0;
    border-radius: 100%;
    background-color: var(--font-color);
}

.company_profile_sec {
    background-color: var(--bg-color);
    padding-block: 6.944vw;
    margin-top: 8.333vw;
}

.company_profile_sec .profile_area {
    margin-top: 3.472vw;
    background-color: #fff;
    padding: 3.472vw;
}

.company_profile_sec .profile_area dl {
    display: grid;
    grid-template-columns: 28% 1fr;
    align-items: first baseline;
    border-bottom: 1px solid #D3D3D3;
}

.company_profile_sec .profile_area dl:last-child {
    border-bottom: none;
}

.company_profile_sec .profile_area dl dt,
.company_profile_sec .profile_area dl dd {
    padding: 1em;
}

.company_profile_sec .profile_area dl dt {
    font-size: 1.25vw;
    letter-spacing: .03em;
    margin-right: 2.083vw;
    position: relative;
}

.company_profile_sec .profile_area dl dt::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 0.069vw;
    height: 50%;
    background-color: var(--accent-color);
}

.company_profile_sec .profile_area dl dd {
    font-size: 1.111vw;
    letter-spacing: .03em;
    font-weight: 500;
}

.company_access_sec {
    padding-top: 6.944vw;
}

.company_access_sec .map {
    margin-top: 3.472vw;
}

.company_access_sec .map iframe {
    width: 100%;
    height: 24.306vw;
}

.company_access_sec .parking_img {
    margin-top: 3.472vw;
}

.company_access_sec .parking_img .modal_open {
    cursor: pointer;
}

.company_access_sec .parking_img .modal_open img {
    width: 100%;
}

.company_access_sec .parking_img .text {
    font-size: 1.25vw;
    letter-spacing: .03em;
    text-decoration: underline;
}

.company_access_sec .parking_img .modal_container {
    position: fixed;
    inset: 0;
    display: grid;
    place-content: center;
    background: rgba(0, 0, 0, .5);
    padding: 2.778vw 1.389vw;
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 1000;
}

.company_access_sec .parking_img .modal_container::before {
    content: "";
    display: inline-block;
    height: 100%;
}

.company_access_sec .parking_img .modal_container.active {
    opacity: 1;
    visibility: visible;
}

.company_access_sec .parking_img .modal_body {
    position: relative;
    width: 78%;
    margin-inline: auto;
}

.company_access_sec .parking_img .modal_body .modal_close {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: -2.778vw;
    right: -2.778vw;
    width: 2.778vw;
    height: 2.778vw;
    font-size: 2.778vw;
    color: #fff;
    cursor: pointer;
}

.company_access_sec .parking_img .modal_body .modal_img {
    width: 100%;
}

/* PC固定ページ　企業理念 */
.philosophy_sec .item {
    border-top: 2px solid #7D777E;
    padding-block: 5.556vw;
    display: grid;
    grid-template-columns: 27.7vw 1fr;
    gap: 0 10.417vw;
}

.philosophy_sec .item:last-child {
    padding-block: 5.556vw 0;
}

.philosophy_sec .item .title {
    font-size: 1.667vw;
    letter-spacing: .01em;
    ;
    line-height: 1;
    flex-shrink: 0;
    color: #7D777E;
}

.philosophy_sec .item .title .en {
    color: var(--font-color);
    font-size: 1.8em;
}


.philosophy_sec .item .text_area .text {
    font-size: 1.25vw;
    line-height: 1.8;
    letter-spacing: .01em;
    font-weight: 500;
}

.philosophy_sec .item .text_area .text+.text {
    margin-top: 1.5em;
}

.philosophy_sec .item .text_area .text .size {
    font-size: 1.6em;
}

.philosophy_sec .item .text_area .text .small {
    font-size: .6em;
}

/* PC固定ページ　採用情報 */
.page_recruit .message_box {
    margin-top: 3.819vw;
    background-color: #fff;
    border: 1px solid #E7ECE7;
    padding: 4.167vw 5.556vw;
}

.page_recruit .message_box .text {
    font-size: 1.389vw;
    line-height: 1.9;
    letter-spacing: .01em;
    text-align: center;
}

.page_recruit .message_box .text+.text {
    margin-top: 1em;
}

.page_recruit .message_box .text .line {
    font-size: 1.2em;
    background: linear-gradient(to top, #F4E4F8 15%, transparent 15%);
}

.recruit_job_sec {
    background-color: var(--bg-color);
    padding-block: 5.556vw 6.944vw;
}

.recruit_job_sec .job_list {
    margin-top: 3.819vw;
}

.recruit_job_sec .job_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.083vw;
}

.recruit_job_sec .job_list ul li {
    background-color: #fff;
    border-bottom: 5px solid var(--accent-color);
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}

.recruit_job_sec .job_list ul li .img img {
    width: 100%;
    aspect-ratio: 3/2;
    min-width: 0;
    object-fit: cover;
}

.recruit_job_sec .job_list ul li .title {
    text-align: center;
    font-size: 1.389vw;
    line-height: 1.2;
    letter-spacing: .01em;
    border-bottom: 1px solid #E7ECE7;
    padding-block: 1.38vw .5em;
    margin-inline: 2.083vw;
}

vw .recruit_job_sec .job_list ul li .title .small {
    font-size: .65em;
}

.recruit_job_sec .job_list ul li .text_box {
    padding: 1.389vw 2.083vw 2.083vw;
}

.recruit_job_sec .job_list ul li .text_box .text {
    font-size: 1.111vw;
    letter-spacing: .01em;
}

.recruit_personality_sec {
    padding-block: 8.333vw;
}

.recruit_personality_sec .personality_list {
    margin-top: 3.472vw;
}

.recruit_personality_sec .personality_list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: flex-start;
    gap: 2.083vw;
}

.recruit_personality_sec .personality_list ul li:nth-child(even) {
    margin-top: 3.472vw;
}

.recruit_personality_sec .personality_list ul li {
    background-color: var(--bg-color);
    padding: 2.083vw 1.042vw 3.472vw;
    position: relative;
}

.recruit_personality_sec .personality_list ul li::before {
    position: absolute;
    bottom: -0.347vw;
    right: 0.486vw;
    z-index: -1;
    transform: rotate(5deg);
    width: 70%;
    height: 50%;
    background-color: #d0d0d0;
    content: "";
    filter: blur(4px);
}

.recruit_personality_sec .personality_list ul li .num {
    width: 3.472vw;
    height: 3.472vw;
    border-radius: 100%;
    background-color: var(--accent-color);
    display: grid;
    place-content: center;
    font-size: 1.736vw;
    line-height: 1;
    letter-spacing: 0em;
    color: #fff;
    margin-inline: auto;
}

.recruit_personality_sec .personality_list ul li .text_box {
    margin-top: 1.389vw;
}

.recruit_personality_sec .personality_list ul li .text_box .text {
    text-align: center;
    font-size: 1.528vw;
    line-height: 1.7;
    letter-spacing: 0em;
}

.recruit_workplace_sec .cont {
    display: flex;
    gap: 0 5.556vw;
    margin-top: 3.472vw;
}

.recruit_workplace_sec .cont .img {
    width: 52.083vw;
    flex-shrink: 0;
    margin-left: calc(50% - 50vw);
}

.recruit_workplace_sec .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recruit_workplace_sec .cont .list {
    width: 100%;
}

.recruit_workplace_sec .cont .list dl dt {
    border-bottom: 1px solid #E7ECE7;
    font-size: 1.111vw;
    letter-spacing: .01em;
    position: relative;
}

.recruit_workplace_sec .cont .list dl dt::before {
    content: '';
    position: absolute;
    width: 2.083vw;
    height: 0.139vw;
    bottom: -0.069vw;
    left: 0;
    background-color: var(--accent-color);
}

.recruit_workplace_sec .cont .list dl dt,
.recruit_workplace_sec .cont .list dl dd {
    padding-block: .8em;
}

.recruit_workplace_sec .cont .list dl dd {
    font-size: 1.042vw;
    letter-spacing: .01em;
    font-weight: 500;
}

.recruit_flow_sec {
    padding-top: 8.333vw;
}

.recruit_flow_sec .cont {
    margin-top: 3.472vw;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.778vw;
}

.recruit_flow_sec .cont .item_box {
    background-color: var(--sub-color);
    padding: 3.472vw;
    border-bottom: 5px solid var(--accent-color);
}

.recruit_flow_sec .cont .item_box .label_box {
    display: flex;
    align-items: center;
    gap: 0 1.389vw;
}

.recruit_flow_sec .cont .item_box .label_box .icon {
    flex-shrink: 0;
    border-radius: 100%;
    background-color: #fff;
    width: 5.556vw;
    aspect-ratio: 1;
    min-width: 0;
    display: grid;
    place-content: center;
    padding: 1.042vw;
}

.recruit_flow_sec .cont .item_box .label_box .icon img {
    width: 100%;
}

.recruit_flow_sec .cont .item_box .label_box .text {
    font-size: 1.528vw;
    letter-spacing: 0em;
}

.recruit_flow_sec .cont .schedule {
    margin-top: 2.431vw;
    position: relative;
}

.recruit_flow_sec .cont .schedule::before {
    content: '';
    position: absolute;
    height: 90%;
    width: 0.139vw;
    top: 0;
    bottom: 0;
    margin-block: auto;
    left: 5.069vw;
    background-color: var(--accent-color);
}

.recruit_flow_sec .cont .schedule dl {
    display: grid;
    grid-template-columns: 15% 1fr;
    align-items: first baseline;
    gap: 0 2.083vw;
}

.recruit_flow_sec .cont .schedule dl dt {
    padding-right: 2.083vw;
    position: relative;
    font-size: 1.667vw;
    letter-spacing: 0;
    display: grid;
    place-content: center;
}

.recruit_flow_sec .cont .schedule dl dt::after {
    content: '';
    position: absolute;
    width: 0.694vw;
    height: 0.694vw;
    border-radius: 100%;
    background-color: var(--accent-color);
    right: -0.278vw;
    top: 1.042vw;
}

.recruit_flow_sec .cont .schedule dl dd {
    font-size: 1.111vw;
    letter-spacing: .01em;
    font-weight: 500;
}

.recruit_flow_sec .cont .schedule dl dd .small {
    font-size: .8em;
}

.recruit_flow_sec .btn_box {
    margin-top: 4.167vw;
}

.recruit_flow_sec .btn_box .text {
    text-align: center;
    font-size: 1.25vw;
    line-height: 1.7;
    letter-spacing: .01em;
    margin-bottom: 1.5em;
}


/* PCカスタム投稿　新着物件一覧ページ */
.common_cat_list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.083vw 1.806vw;
}

.common_cat_list ul li .link {
    width: 20.139vw;
    min-block-size: 3.819vw;
    background-color: var(--font-color);
    font-size: 1.111vw;
    letter-spacing: .01em;
    display: grid;
    place-content: center;
    color: #fff;
    transition: all .3s;
    position: relative;
    z-index: 1;
}

.common_cat_list ul li .link::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 0.208vw;
    bottom: 0;
    left: 0;
    background-color: var(--accent-color);
    transition: all .3s;
    z-index: -1;
}

.common_cat_list ul li .link:hover::after {
    height: 100%;
}

.page_property .archive_property_list {
    margin-top: 5.556vw;
}

.archive_property_list ul li {
    background-color: #fff;
    padding: 2.083vw;
    border: 1px solid #D3D3D3;
}

.archive_property_list ul li+li {
    margin-top: 5.556vw;
}

.archive_property_list ul li .title {
    font-size: 1.667vw;
    letter-spacing: .01em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.archive_property_list ul li .message_box {
    margin-top: 1em;
    padding: 2.083vw;
    background-color: var(--sub-color);
}

.archive_property_list ul li .message_box .text {
    font-size: 1.111vw;
    letter-spacing: .01em;
    font-weight: 500;
}

.archive_property_list ul li .cont {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 2.083vw;
    margin-top: 1.389vw;
}

.archive_property_list ul li .img_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 0.556vw;
    position: relative;
}

.archive_property_list ul li .img_box .cat {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--font-color);
    width: fit-content;
    height: auto;
    padding: 0.556vw 0.833vw;
    font-size: 0.972vw;
    line-height: 1;
    letter-spacing: .01em;
    color: #fff;
    z-index: 1;
}

.archive_property_list ul li .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background-color: var(--bg-color);
}

.archive_property_list ul li .info dl {
    display: grid;
    grid-template-columns: 130px 1fr;
    border-bottom: 1px solid #D3D3D3;
}

.archive_property_list ul li .info .flex_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.archive_property_list ul li .info dl dt,
.archive_property_list ul li .info dl dd {
    padding: .5em 1em;
    font-size: 0.972vw;
    letter-spacing: .01em;
}

.archive_property_list ul li .info dl dt {
    background-color: var(--bg-color);
    display: flex;
    align-items: center;
}

.archive_property_list ul li .info dl dd {
    font-weight: 500;
}

.archive_property_list ul li .info dl dd .num {
    font-size: 2.2em;
    color: var(--accent-color);
    line-height: 1;
}

.archive_property_list ul li .info dl dd .small {
    font-size: 1em;
}

.archive_property_list ul li .link {
    display: grid;
    place-content: center;
    width: 19.444vw;
    min-block-size: 3.125vw;
    background-color: var(--font-color);
    font-size: 1.111vw;
    letter-spacing: .01em;
    color: #fff;
    margin-top: 1.389vw;
    transition: all .3s;
    border: 1px solid var(--font-color);
}

.archive_property_list ul li .link:hover {
    background-color: #fff;
    color: var(--font-color);
}

.wp-pagenavi {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 3.472vw;
    gap: 0.694vw;
}

.wp-pagenavi span:first-child {
    width: 4.167vw;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.778vw;
    height: 2.778vw;
    margin: 0;
    padding: 0;
    border: 1px solid var(--main-color);
    border-radius: 0.347vw;
    background-color: transparent;
    color: var(--font-color);
}

.wp-pagenavi a {
    transition: background 0.3s, color 0.3s ease 0s;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last {
    width: 4.167vw;
}

.wp-pagenavi a:hover {
    border: 1px solid transparent;
    background-color: var(--main-color);
    color: #FFF;
}

.wp-pagenavi span.current {
    border: 1px solid transparent;
    background-color: var(--main-color);
    color: #FFF;
}

/* カスタム投稿　新着物件シングルページ */
.property_info_sec .head_box .title_box {
    display: flex;
    gap: 0 1em;
}

.property_info_sec .head_box .cat {
    background-color: var(--font-color);
    width: fit-content;
    padding: .5em 1.5em;
    font-size: 1.25vw;
    line-height: 1;
    letter-spacing: .01em;
    color: #fff;
    flex-shrink: 0;
}

.property_info_sec .head_box .title {
    font-size: 1.667vw;
    letter-spacing: .01em;
}

.property_info_sec .head_box .message_box {
    margin-top: 1em;
    background-color: var(--sub-color);
    padding: 2.083vw;
}

.property_info_sec .head_box .message_box .text {
    font-size: 1.111vw;
    line-height: 1.8;
    letter-spacing: .01em;
    font-weight: 500;
}

.property_info_sec .info_box {
    margin-top: 3.125vw;
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 0 2.083vw;
}

.property_info_sec .info_box .info dl {
    border-bottom: 1px solid #D3D3D3;
    display: grid;
    grid-template-columns: 25% 1fr;
}

.property_info_sec .info_box .info dl:first-child {
    border-top: 1px solid #D3D3D3;
}

.property_info_sec .info_box .info dl dt {
    background-color: var(--bg-color);
    display: flex;
    align-items: center;
}

.property_info_sec .info_box .info dl dt,
.property_info_sec .info_box .info dl dd {
    padding: .5em 1em;
    font-size: 1.111vw;
    letter-spacing: .01em;
}

.property_info_sec .info_box .info dl dd {
    font-weight: 500;
}

.property_info_sec .info_box .info dl dd .price_box .num {
    font-size: 2.2em;
    color: var(--accent-color);
}

.property_info_sec .info_box .contact_box {
    border: 2px solid var(--font-color);
    padding: 3.472vw 2.083vw;
    display: grid;
    place-content: center;
}

.property_info_sec .info_box .contact_box .text {
    text-align: center;
    font-size: 1.25vw;
    line-height: 1.5;
    letter-spacing: .01em;
    border-bottom: 1px solid #D3D3D3;
    padding-bottom: .4em;
}

.property_info_sec .info_box .contact_box .tel_box {
    margin-top: 1.042vw;
}

.property_info_sec .info_box .contact_box .tel_box .tel {
    display: block;
    width: fit-content;
    font-size: 2.778vw;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--font-color);
    pointer-events: none;
    margin-inline: auto;
}

.property_info_sec .info_box .contact_box .tel_box .tel small {
    font-size: .4em;
    margin-right: .3em;
}

.property_info_sec .info_box .contact_box .tel_box .time {
    text-align: center;
    font-size: 0.972vw;
    letter-spacing: .01em;
    font-weight: 500;
    margin-top: .5em;
}

.property_info_sec .info_box .contact_box .common_site_btn .btn {
    margin: 2.08vw auto 0;
}

.property_cont_sec {
    margin-top: 5.556vw;
}

.property_cont_sec .image_area {
    display: grid;
    grid-template-columns: repeat(2, 49%);
    justify-content: space-between;
    background-color: var(--bg-color);
    padding: 1.389vw;
}

.property_cont_sec .image_area .slider_img .img {
    height: 33.333vw;
}

.property_cont_sec .image_area .slider_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background-color: #fff;
}

.property_cont_sec .image_area .slider_img .slick-arrow {
    border-radius: 100vmax;
    background-color: var(--font-color);
    width: 2.431vw;
    height: 2.431vw;
    position: absolute;
    top: 50%;
    translate: 0% -50%;
    z-index: 10;
    cursor: pointer;
}

.property_cont_sec .image_area .slider_img .slick-arrow::before {
    content: '';
    position: absolute;
    top: 50%;
    translate: -50% -50%;
    width: 1.042vw;
    aspect-ratio: 1;
    min-width: 0;
    mask-image: url(./image/icon_up.svg);
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    background: #fff;
    rotate: -90deg;
}

.property_cont_sec .image_area .slider_img .slick_prev.slick-arrow {
    left: -0.694vw;
}

.property_cont_sec .image_area .slider_img .slick_next.slick-arrow {
    left: unset;
    right: -0.694vw;
}

.property_cont_sec .image_area .slider_img .slick_prev.slick-arrow::before {
    left: 45%;
}

.property_cont_sec .image_area .slider_img .slick_next.slick-arrow::before {
    left: unset;
    right: 5%;
    transform: scale(-1, -1);
}

.slick_prev.slick-disabled,
.slick_next.slick-disabled {
    opacity: .8;
    pointer-events: none;
}

.property_cont_sec .image_area .thumbnail {
    margin-top: 0.694vw;
}

.property_cont_sec .image_area .thumbnail .slick-track {
    margin-left: 0;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
}

.property_cont_sec .image_area .thumbnail .img {
    flex-shrink: 0;
    width: 8.958vw !important;
    height: auto;
    margin-inline: 0.208vw;
    cursor: pointer;
}

.property_cont_sec .image_area .thumbnail .img img {
    width: 100%;
    height: 6.944vw;
    object-fit: contain;
    background-color: #fff;
}

.property_cont_sec .image_area .madori_img .text {
    background-color: var(--font-color);
    display: inline-block;
    padding: .3em 1.5em;
    font-size: 0.972vw;
    line-height: 1.5;
    letter-spacing: .01em;
    color: #fff;
    margin-bottom: .8em;
}

.property_cont_sec .image_area .madori_img .img {
    height: 38.194vw;
}

.property_cont_sec .image_area .madori_img .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background-color: #fff;
}

.property_cont_sec .property_cont .item_box {
    margin-top: 4.167vw;
}

.property_cont_sec .property_cont .item_box .flex_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.property_cont_sec .property_cont .item_box dl {
    border-bottom: 1px solid #D3D3D3;
    display: grid;
    grid-template-columns: 13.88vw 1fr;
}

.property_cont_sec .property_cont .item_box dl.border {
    border-top: 1px solid #D3D3D3;
}

.property_cont_sec .property_cont .item_box dl dt {
    background-color: var(--bg-color);
    display: flex;
    align-items: center;
}

.property_cont_sec .property_cont .item_box dl dt,
.property_cont_sec .property_cont .item_box dl dd {
    padding: .5em 1em;
    font-size: 1.111vw;
    letter-spacing: .01em;
}

.property_cont_sec .property_cont .item_box dl dd {
    font-weight: 500;
}

.property_cont_sec .common_site_btn .btn {
    margin: 3.47vw auto 0;
}

.property_cont_sec .drone_gallery {
    margin-top: 6.944vw;
}

.property_cont_sec .drone_gallery .image_box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.389vw 0.694vw;
    margin-top: 2.083vw;
}

.property_cont_sec .drone_gallery .image_box .img img {
    width: 100%;
    aspect-ratio: 1;
    min-width: 0;
    object-fit: cover;
}

@media (max-width: 750px) {

    .wrap,
    .wrap.mid {
        max-width: 90%;
    }

    .wrap.lr {
        max-width: 95%;
    }

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

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

    body {
        font-size: 13px;
        padding-top: 60px;
        min-width: 100%;
    }

    /* サイト共通設定 */
    .common_site_title .en {
        font-size: 11vw;
        line-height: 1;
    }

    .common_site_title .title {
        font-size: 4.2vw;
        margin-top: 2vw;
    }


    .common_head_box {
        margin-top: 5vw;
    }

    .common_head_box .text {
        font-size: 4.2vw;
    }

    .common_site_btn .btn {
        width: 78vw;
        font-size: 3.8vw;
        min-block-size: 15vw;
        margin: 0 auto;
    }

    .common_site_btn .btn::before {
        right: 5vw;
        top: 5.3vw;
        width: 2.5vw;
    }

    .common_site_btn .btn:hover {
        background-color: var(--font-color);
    }

    /* ローディング */
    #loading {
        z-index: 999;
    }

    #loading .catch .en {
        font-size: 9vw;
    }

    #loading .catch .jp {
        font-size: 4.8vw;
    }


    /* SPヘッダー */
    #sp_header {
        position: fixed;
        left: 0;
        top: 0;
        width: 100%;
        background: #fff;
        z-index: 998;
        height: 60px;
    }

    #sp_header .logo {
        position: absolute;
        left: 10px;
        top: 19px;
        line-height: 0;
    }

    #sp_header .logo img {
        height: 22px;
    }


    /* SPトップ　メインビジュアル */
    .top_fv {
        height: 100dvh;
    }

    .top_fv .catch_box .en {
        font-size: 15vw;
        line-height: 1.2;
    }

    .top_fv .catch_box .catch {
        margin-top: 5vw;
        font-size: 5.3vw;
    }

    /* SPトップ　キャッチセクション */
    .top_catch_sec {
        padding-block: 33vw;
    }

    .top_catch_sec .cont {
        width: 100%;
    }

    .top_catch_sec .cont .text_box .text,
    .top_catch_sec .cont .text_box .flex_box {
        font-size: 3.6vw;
        line-height: 2.2;
    }

    .top_catch_sec .cont .text_box .flex_box {
        flex-wrap: wrap;
    }

    .top_catch_sec .cont .text_box .flex_box .mark {
        font-size: 3.8vw;
        margin-bottom: 0;
        line-height: 2.3;
    }

    .top_catch_sec .cont .text_box .flex_box .text {
        margin-top: 3vw;
    }

    .top_catch_sec .cont .text_box .flex_box .mark:nth-child(4) {
        margin-left: auto;
    }

    .top_catch_sec .cont .text_box .flex_box img {
        display: block;
        width: 85vw;
        margin-block: 2vw;
    }

    .top_catch_sec .cont .btn_box {
        grid-template-columns: repeat(1, 70vw);
        gap: 3vw 0;
        margin-top: 4vw;
    }

    .top_catch_sec .cont .btn_box .link {
        min-block-size: 14vw;
        font-size: 3.6vw;
    }

    .top_catch_sec .cont .btn_box .link:hover::after {
        height: 5px;
    }

    /* SPトップ　相談セクション */
    .common_worries_sec {
        padding-block: 18vw;
    }

    .common_worries_sec::before {
        width: 98vw;
    }

    .common_worries_sec .common_site_title .en {
        font-size: 11vw;
    }

    .common_worries_sec .common_site_title .title {
        font-size: 4vw;
    }

    .worries-item_box {
        margin-top: 5vw;
    }

    .worries-item_box ul {
        flex-direction: column;
        gap: 5vw 0;
    }

    .worries-item_box ul li {
        display: grid;
        grid-template-columns: repeat(2, auto);
        width: 100%;
        padding: 0 5vw 6vw;
        align-items: center;
        gap: 0 5vw;
    }

    .worries-item_box ul li .num {
        margin: -4vw auto 3vw;
        font-size: 8.5vw;
        grid-area: 1 / 1 / 2 / 3;
    }

    .worries-item_box ul li .icon {
        width: 20vw;
        height: 12vw;
        grid-area: 2 / 1 / 3 / 2;
    }

    .worries-item_box ul li .text_box {
        margin-top: 0;
        grid-area: 2 / 2 / 3 / 3;
    }

    .worries-item_box ul li .text_box .text {
        font-size: 4.2vw;
        text-align: left;
    }

    .worries-item_box ul li:nth-child(2) .text_box,
    .worries-item_box ul li:nth-child(3) .text_box {
        margin-bottom: 0;
    }

    /* SPトップ　サービス */
    .top_service_sec {
        padding-top: 15vw;
    }

    .top_service_sec::before {
        height: 90%;
    }

    .top_service_sec .title_box {
        flex-direction: column;
        align-items: flex-start;
        gap: 5vw 0;
    }

    .top_service_sec .title_box .common_head_box {
        width: 100%;
        margin-top: 0;
    }

    .service-item_list {
        padding-inline: 3vw;
        margin-top: 6vw;
    }

    .service-item_list ul {
        flex-direction: column;
        gap: 3vw 0;
    }

    .service-item_list ul li .link {
        height: 100%;
        padding: 8vw 5vw;
    }

    .service-item_list ul li .link .sub {
        font-size: 4.5vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .sub {
        font-size: 4.5vw;
        padding-bottom: .8em;
    }

    .service-item_list ul li .link .sub::before {
        width: 7vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .sub::before {
        width: 7vw;
    }

    .service-item_list ul li .link .title_box {
        margin-top: 4vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .title_box {
        margin-top: 4vw;
    }

    .service-item_list ul li .link .en {
        font-size: 10vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .en {
        font-size: 10vw;
    }

    .service-item_list ul li .link .en .mark {
        width: 9vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .en .mark {
        width: 9vw;
    }

    .service-item_list ul li .link .title {
        font-size: 4.6vw;
    }

    .service-item_list ul.is-hovering .link:not(.is-active) .title {
        font-size: 4.6vw;
        margin-top: .8em;
    }

    .service-item_list ul li .link .hover_text {
        opacity: 1;
        visibility: visible;
        margin-top: 15vw;
    }

    .service-item_list ul li .link .hover_text .text {
        font-size: 4vw;
    }

    .service-item_list ul li:hover {
        flex: 1;
    }

    /* SPトップ　新着物件 */
    .top_properties_sec {
        padding-block: 20vw;
    }

    .top_properties_sec::before {
        width: 100%;
        height: 87.1%;
        bottom: 0;
        left: 0;
        background-color: var(--bg-color);
    }

    .top_properties_sec .cont {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .top_properties_sec .cont .box {
        display: contents;
        margin-top: 0;
    }

    .top_properties_sec .common_site_btn {
        margin-top: 6vw;
        order: 1;
        position: relative;
        z-index: 1;
    }

    .common_property_list ul {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 0 5vw;
    }

    .top_properties_sec .common_property_list {
        overflow-x: scroll;
        padding-bottom: 2vw;
        margin-top: 6vw;
    }

    .top_properties_sec .common_property_list ul {
        display: flex;
        flex-direction: unset;
        flex-wrap: nowrap;
        gap: 0 3vw;
    }

    .common_property_list ul li .link {
        width: 100%;
    }

    .top_properties_sec .common_property_list ul li .link {
        width: 70vw;
        flex-shrink: 0;
    }

    .common_property_list ul li .link .img {
        height: 50vw;
    }

    .common_property_list ul li .link .img::before {
        top: 2vw;
        right: 2vw;
        width: 2.5vw;
    }

    .common_property_list ul li .link:hover .img::before {
        top: 2vw;
        right: 2vw;
        width: 3vw;
        background-color: var(--accent-color);
        opacity: 1;
        mix-blend-mode: unset;
    }

    .common_property_list ul li .link .text_box {
        margin-top: 3vw;
    }

    .common_property_list ul li .link .address {
        font-size: 4vw;
    }

    .common_property_list ul li .link .address::before {
        display: none;
    }

    .common_property_list ul li .link:hover .address {
        color: var(--font-color);
    }

    .common_property_list ul li .link:hover .address::before {
        width: 100%;
    }

    .common_property_list ul li .link .label_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 0 1em;
        margin-top: .5em;
    }

    .common_property_list ul li .link .cat {
        font-size: 3.6vw;
    }

    .common_property_list ul li .link .price {
        font-size: 4.3vw;
    }

    .common_property_list ul li .link .price .size {
        font-size: 8.8vw;
    }

    /* SPトップ　選べれる理由 */
    .common_reason_sec {
        padding-bottom: 15vw;
    }

    body.home .common_reason_sec {
        padding: 15vw 0;
    }

    .common_reason_sec .title_box {
        margin-top: -2vw;
    }

    .common_reason_sec .title_box .en {
        font-size: 25vw;
        margin-right: -3vw;
    }

    .common_reason_sec .title_box .title {
        font-size: 5.5vw;
    }

    .reason_list_area ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 5vw 0;
        margin-top: 4vw;
    }

    .reason_list_area ul li:nth-child(2) {
        margin-top: 0;
    }

    .reason_list_area ul li:nth-child(3) {
        margin-top: 0;
    }

    .reason_list_area ul li .num {
        left: 0;
        gap: 0 3vw;
        font-size: 6vw;
    }

    .reason_list_area ul li .num::before {
        height: 15vw;
    }

    .reason_list_area ul li .img {
        width: 80vw;
        height: 53vw;
    }

    .reason_list_area ul li .text_area {
        margin-top: -10vw;
        padding: 15vw 5vw 6vw 10vw;
    }

    .reason_list_area ul li .catch {
        font-size: 5vw;
    }

    .reason_list_area ul li .text_box {
        margin-top: 3vw;
    }

    .reason_list_area ul li .text_box .text {
        font-size: 4vw;
    }

    /* SPトップ　コラム */
    .top_column_sec::before {
        top: 5vw;
        width: 95vw;
        height: 75vw;
    }

    .top_column_sec .common_column_list {
        margin-top: 35px;
    }

    .top_column_sec .common_column_list ul {
        display: flex;
        flex-wrap: nowrap;
        gap: 0 3vw;
        overflow-x: scroll;
        padding-bottom: 2vw;
    }

    .top_column_sec .common_column_list ul li .link {
        flex-shrink: 0;
        width: 75vw;
    }

    .common_column_list ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 7vw 3vw;
    }

    .common_column_list ul li .link .img {
        height: 40vw;
    }

    .common_column_list ul li .link .img::before {
        top: 3vw;
        right: 3vw;
        width: 3vw;
    }

    .common_column_list ul li .link:hover .img::before {
        top: 3vw;
        right: 3vw;
        width: 3vw;
        mix-blend-mode: unset;
        opacity: 1;
    }

    .common_column_list ul li .link .title {
        font-size: 3.8vw;
        margin-top: 3vw;
        height: 10vw;
    }

    .common_column_list ul li .link .time_box {
        margin-top: 2vw;
    }

    .common_column_list ul li .link .time {
        font-size: 4.2vw;
    }

    .common_column_list ul li .link:hover .time {
        color: #B4B5BD;
    }

    .common_column_list ul li .link .line::before {
        width: 7vw;
        background-color: var(--accent-color);
    }

    .common_column_list ul li .link:hover .line::before {
        width: 7vw;
    }

    .top_column_sec .common_site_btn .btn {
        margin: 6vw auto 0;
    }

    /* SPトップ　代表メッセージ */
    .top_message_sec {
        /* margin-top: 15vw; */
        padding-bottom: 15vw;
    }

    .top_message_sec .bg_img {
        height: 65vw;
    }

    .top_message_sec .cont {
        display: grid;
        margin-top: 5vw;
    }

    .top_message_sec .cont .title_box {
        margin-right: 4vw;
        order: -1;
    }

    .top_message_sec .cont .title_box .title {
        gap: 0 3vw;
        font-size: 5vw;
    }

    .top_message_sec .cont .title_box .title::before {
        height: 10vw;
    }

    .top_message_sec .cont .text_area {
        flex-shrink: 0;
    }

    .top_message_sec .cont .catch_box {
        text-align: left;
        margin: -20vw 0 0 8vw;
    }

    .top_message_sec .cont .catch_box .en {
        font-size: 10vw;
        display: inline-block;
        margin-top: 1vw;
    }

    .top_message_sec .cont .catch_box .en:last-child {
        margin: 1vw 0 0 0;
    }

    .top_message_sec .cont .text_box {
        margin-top: 6vw;
        width: 100%;
    }

    .top_message_sec .cont .text_box .text {
        font-size: 4vw;
    }

    .top_message_sec .cont .name {
        width: 60vw;
        margin: 5vw 0 0 auto;
    }

    .top_message_sec .cont .img {
        margin: -70vw 0 0 auto;
        width: 55vw;
        height: 80vw;
        order: -1;
    }

    .top_message_sec .cont .name .name_text {
        font-size: 3.7vw;
    }

    .top_message_sec .cont .name .name_text.small {
        font-size: 3.6vw;
    }

    .top_message_sec .cont .img::before {
        bottom: -20vw;
        right: -2vw;
        width: 75vw;
    }

    .top_message_sec .common_site_btn {
        margin-top: 6vw;
    }

    /* SPトップ　会社情報 */
    .top_company_sec .sp_cont {
        display: grid;
    }

    .common_sub_title {
        padding-block: 6vw 2vw;
        order: -1;
        z-index: -1;
    }

    .common_sub_title::before {
        bottom: 0;
        width: 100%;
    }

    .common_sub_title::after {
        left: -2vw;
        width: 38vw;
        top: -8vw;
    }

    .common_sub_title .en {
        font-size: 15vw;
    }

    .common_sub_title .title {
        font-size: 4.5vw;
        margin-top: 4vw;
    }

    .top_company_sec {
        margin-block: 15vw;
    }

    .top_company_sec .cont {
        display: contents;
        gap: 0;
        margin-top: 4vw;
    }

    .top_company_sec .cont .img {
        order: -2;
        height: 55vw;
    }

    .top_company_sec .cont .info_box {
        position: relative;
        z-index: 1;
        margin-top: 6vw;
    }

    .top_company_sec .cont .info_box dl {
        grid-template-columns: 1fr;
        gap: 1vw 0;
    }

    .top_company_sec .cont .info_box dl dt {
        font-size: 4vw;
    }

    .top_company_sec .cont .info_box dl dd {
        font-size: 3.6vw;
    }

    .top_company_sec .common_site_btn {
        margin-top: 6vw;
    }

    /* SPトップ　お知らせ */
    .top_news_sec {
        margin-block: 0 15vw;
    }

    .top_news_sec::before {
        top: 5vw;
        width: 95vw;
        height: 75vw;
    }

    .top_news_sec .common_archive_list {
        margin-top: 8vw;
    }

    .common_archive_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 7vw 0;
    }

    .common_archive_list ul li .link {
        height: 40vw;
        padding: 6vw 5vw 6vw;
    }

    .common_archive_list ul li .link .cat {
        top: -3vw;
        left: 5vw;
        font-size: 3.6vw;
    }

    .common_archive_list ul li .link .title {
        font-size: 3.8vw;
        -webkit-line-clamp: 2;
    }

    .common_archive_list ul li .link:hover .title {
        color: #7D777E;
    }

    .common_archive_list ul li .link .time_box {
        padding-top: 4vw;
    }

    .common_archive_list ul li .link .time_box .time {
        font-size: 4.3vw;
    }

    .common_archive_list ul li .link .time_box .btn {
        width: 35vw;
        min-block-size: 8vw;
    }

    .common_archive_list ul li .link .time_box .btn .text {
        font-size: 3.2vw;
    }

    .common_archive_list ul li .link .time_box .btn::before {
        right: 2vw;
        width: 1.5vw;
    }

    .common_archive_list ul li .link:hover .time_box .btn {
        background-color: #fff;
    }

    .common_archive_list ul li .link:hover .time_box .btn .text {
        color: #7D777E;
    }

    .common_archive_list ul li .link:hover .time_box .btn::before {
        border-color: #7D777E;
    }

    .top_news_sec .common_site_btn .btn {
        display: none;
    }

    /* SPトップ　フッター */
    .main_footer {
        padding-block: 20vw 12vw;
    }

    .main_footer .cont {
        display: grid;
        grid-template-columns: 1fr;
    }

    .main_footer .cont .logo a {
        width: 70vw;
    }

    .main_footer .cont .address {
        font-size: 3.8vw;
    }

    .main_footer .cont .tel {
        font-size: 10vw;
        pointer-events: painted;
        margin-top: .5em;
    }

    .main_footer .cont .time {
        font-size: 3.6vw;
    }

    .main_footer .cont .ft_btn {
        margin-top: 3vw;
    }

    .main_footer .cont .ft_btn .common_site_btn .btn {
        width: 70vw;
        margin: 0 auto 0 0;
    }

    .main_footer .cont .ft_btn .common_site_btn+.common_site_btn {
        margin-top: 2vw;
    }

    .main_footer .cont .ft_nav {
        grid-template-columns: repeat(1, 100%);
        gap: 0;
        margin-top: 6vw;
    }

    .main_footer .cont .ft_nav ul li .link {
        font-size: 3.8vw;
    }

    .main_footer .cont .ft_nav ul li .link::after {
        right: 2vw;
        width: 1.5vw;
    }

    .main_footer .cont .ft_nav ul li .link:hover::after {
        border-color: #B4B5BD;
    }

    .main_footer .cont .ft_nav ul li .link:hover {
        color: var(--font-color);
    }

    .main_footer .cont .ft_nav ul li .link::before {
        width: 5vw;
    }

    .main_footer .cont .ft_nav ul li .link:hover::before {
        width: 8vw;
    }

    .main_footer .cont .ft_nav ul li.block {
        width: 49%;
        display: inline-block;
    }

    .main_footer .cont .ft_nav ul li .sub_menu {
        font-size: 3.8vw;
        margin-top: 4.2vw;
        padding-left: .5em;
    }

    .main_footer .cont .ft_nav ul li .sub_menu:hover {
        color: var(--font-color);
    }

    .main_footer .cont .ft_nav ul li .sub {
        font-size: 2.8vw;
        margin-top: 4.5vw;
    }

    .main_footer .cont .ft_nav ul li .sub:hover {
        opacity: 1;
    }

    .main_footer .cont .ft_nav ul li .sub.first {
        margin-top: 0;
    }

    .main_footer .sns_box .sns_list {
        margin-top: 10vw;
        gap: 0 4vw;
    }

    .main_footer .sns_box .sns_list .sns {
        width: 8vw;
    }

    .main_footer .sns_box .sns_list .sns:hover {
        opacity: 1;
    }

    .main_footer .copy {
        font-size: 3.6vw;
        margin-top: 5vw;
    }

    .main_footer .ft_catch {
        display: none;
    }

    /* SP固定ページ 共通設定 */
    .common_page_main {
        padding-block: 15vw;
        background: url(./image/common_page_img_sp.webp) center center / cover no-repeat;
    }

    .common_page_main .title_box .sub_title {
        font-size: 13vw;
    }

    .common_page_main .title_box .title {
        font-size: 5vw;
    }

    .common_page_main .title_box .catch {
        font-size: 3.8vw;
        margin-top: 8vw;
    }

    .common_page_main .title_box .catch::before {
        width: 7vw;
    }

    .common_page_wrap {
        padding-block: 15vw 20vw;
    }

    .reserve_text {
        font-size: 6vw;
    }

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

    /* SP固定ページ お問い合わせ */
    .contact_form_disc {
        margin-block: 0 2em;
    }

    .contact_form_disc .text {
        font-size: 3.6vw;
        margin-block: 0 0.8em;
    }

    .contact_form_disc .caution {
        font-size: 3.1vw;
        letter-spacing: .06em;
    }

    .common_contact_form .form_box {
        margin-block: 0 10vw;
    }

    .common_contact_form .form_box dl {
        grid-template-columns: 1fr;
        gap: 0.6em;
    }

    .common_contact_form .form_box dl+dl {
        margin-block: 1.3em 0;
    }

    .common_contact_form .form_box dl dt {
        flex-direction: row-reverse;
        justify-content: space-between;
        font-size: 4.1vw;
        padding-inline: 0;
    }

    .common_contact_form .form_box dl dt .label {
        font-size: 3.1vw;
    }

    .common_contact_form .form_box dl dt::after {
        content: none;
    }

    .common_contact_form .form_box dl dd .box {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .common_contact_form input[type="text"],
    .common_contact_form input[type="email"],
    .common_contact_form #zip {
        font-size: 3.6vw;
    }

    .common_contact_form select {
        width: 100%;
        font-size: 3.6vw;
    }

    .common_contact_form textarea {
        height: 33vw;
        font-size: 3.6vw;
    }

    .radio_btns,
    .checkboxes {
        gap: 0.5em 2.5em;
    }

    .page_contact #btn_wrap button {
        width: 83%;
        line-height: 15.5vw;
        font-size: 4.6vw;
    }

    .page_contact #btn_wrap button[name="submitBack"] {
        margin-top: 4vw;
    }

    .mwform-checkbox-field.horizontal-item {
        display: block;
    }

    .page_contact #btn_wrap {
        width: 100%;
        text-align: center;
    }

    .privacy_check_list .mwform-checkbox-field-text {
        font-size: 3.8vw;
        padding-left: 11vw;
    }

    .mw_wp_form .privacy_check_list .horizontal-item {
        margin-right: 4vw;
    }

    .privacy_check_list .hissu {
        padding: 0.3vw 4vw;
    }

    .privacy_check_list {
        margin-bottom: 6vw;
    }

    .privacy_term_detail {
        font-size: 3.4vw;
        margin: 5vw 0;
    }

    .privacy_term_outer {
        width: 96%;
        padding: 5vw 0;
    }

    .privacy_term_outer .privacy_term_inner .main_text {
        font-size: 3.4vw;
        line-height: 1.6;
        margin-bottom: 5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dt {
        font-size: 3.5vw;
        margin-bottom: 1.5vw;
    }

    .privacy_term_outer .privacy_term_inner dl dd {
        font-size: 3.5vw;
        line-height: 1.6;
    }

    .privacy_term_outer .privacy_term_inner dl+dl {
        margin-top: 7vw;
    }

    .privacy_term_detail::after {
        width: 2.5vw;
        margin: 1.5vw auto 0;
    }

    /* サンクスページ */
    .page_contact .thanks_textArea .name {
        font-size: 4vw;
        margin-bottom: 3vw;
    }

    .page_contact .thanks_textArea .contact_text {
        font-size: 3.5vw;
        margin-bottom: 2em;
        width: 100%;
    }

    .page_contact .thanks_textArea .ichiran_link {
        width: 80%;
        line-height: 12vw;
        font-size: 4vw;
    }

    /* ステップバー デザイン */
    .page_contact .progressbar {
        gap: 4.5em;
        margin-block: 0 2.5em;
    }

    .page_contact .progressbar .item {
        font-size: 3.1vw;
    }

    .page_contact .progressbar .item+.item::before {
        width: 5.7vw;
        top: 63%;
        left: -3.3em;
    }

    .page_contact .progressbar .item .mark {
        width: 7.7vw;
        margin: 0 auto 0.4em;
    }

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

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

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

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

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

    body #sitemap_list {
        padding: 0;
    }

    /* SP固定ページ 売りたい方へ */
    .common_page_area .description_box .text {
        font-size: 4.2vw;
    }

    .common_heading_sec {
        padding-bottom: 20vw;
    }

    .common_heading_sec .lead_box .text {
        font-size: 4.5vw;
    }

    .heading-problem_list {
        margin-top: 7vw;
        padding: 7vw 5vw;
    }

    .heading-problem_list .text {
        font-size: 3.4vw;
        margin-block: 0 5vw;
    }

    .heading-problem_list .text:last-child {
        margin-block: 5vw 0;
    }

    .heading-problem_list ul li {
        padding-left: 6.5vw;
        line-height: 1.6;
        font-size: 3.8vw;
    }

    .heading-problem_list ul li+li {
        margin-top: 5vw;
    }

    .heading-problem_list ul li::before {
        width: 4.3vw;
    }

    .heading-problem_list ul li .line {
        background: linear-gradient(to top, #F4E4F8 15%, transparent 15%);
    }

    .common_heading_sec .cont {
        flex-direction: column;
        gap: 7vw 0;
        margin-top: 15vw;
    }

    .common_heading_sec .cont .img {
        width: 60vw;
        margin-inline: auto;
    }

    .common_heading_sec .cont .text_box .text {
        font-size: 3.6vw;
    }

    .common_page_area .catch_box {
        margin-top: 15vw;
    }

    .common_page_area .catch_box .text {
        font-size: 4.5vw;
    }

    .common_page_area .catch_box .text.small {
        font-size: 3.6vw;
        margin-top: 1em;
    }

    .common_page_area .catch_box .text .bg {
        background-color: var(--accent-color);
        line-height: 1.2;
        display: inline-block;
        margin-inline: .2em;
    }

    .common_page_area .catch_box .text .line {
        line-height: 2;
    }

    .common_page_area .catch_box .text .dots {
        background-size: 1em .8em;
        padding-top: .5em;
    }

    .page_title_box {
        padding-top: 8vw;
    }

    .page_title_box .en {
        font-size: 20vw;
        top: 2vw;
    }

    .page_title_box .title {
        font-size: 5vw;
    }

    .page_title_box .text_box {
        margin-top: 7vw;
    }

    .page_title_box .text_box .text {
        font-size: 3.6vw;
    }

    .common_about_sec {
        padding-block: 12vw 18vw;
    }

    .common-about_list {
        margin-block: 7vw 0;
    }

    .common-about_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 5vw;
    }

    .common-about_list ul li {
        padding: 6vw 5vw;
    }

    .common-about_list ul li .title_box {
        gap: 0 3vw;
    }

    .common-about_list ul li .title_box .icon {
        width: 13vw;
        padding: 2.5vw;
    }

    .common-about_list ul li .title_box .title {
        font-size: 5.2vw;
    }

    .common-about_list ul li .text_box {
        margin-top: 3vw;
    }

    .common-about_list ul li .text_box .text {
        font-size: 3.6vw;
    }

    .common-about_list ul li .text_box .text::before {
        top: 2.3vw;
        width: 1.5vw;
    }

    .common_page_area .bg_color {
        margin-inline: 3vw;
    }

    .common_page_area .bg_color::before {
        height: 99.4%;
    }

    .page_investment.common_page_area .bg_color::before {
        height: 99%;
    }

    .common_how_sec .wrap {
        padding-bottom: 20vw;
    }

    .common-how_list {
        margin-block: 7vw 9vw;
    }

    .common-how_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 5vw;
    }

    .common-how_list ul li {
        padding: 6vw;
    }

    .common-how_list ul li .img {
        height: 40vw;
        margin-top: 6vw;
    }


    .common-how_list ul li .title_box {
        gap: 0 3vw;
    }

    .common-how_list ul li .title_box .num {
        padding-right: 3vw;
        font-size: 6vw;
    }

    .common-how_list ul li .title_box .title {
        font-size: 4.5vw;
    }

    .common-how_list ul li .text_box {
        margin-top: 3vw;
    }

    .common-how_list ul li .text_box .text {
        font-size: 3.6vw;
    }

    .common-how_list ul li .text_box .text+.text {
        margin-top: 1em;
    }

    .common_ways_sec {
        padding-block: 16vw;
    }

    .common-ways_list {
        margin-top: 7vw;
    }

    .common-ways_list ul li+li {
        margin-top: 4vw;
    }

    .common-ways_list ul li {
        padding: 5vw;
        flex-direction: column;
        gap: 5vw 0;
    }

    .common-ways_list ul li .num {
        padding-right: 0;
        padding-bottom: 3vw;
        font-size: 7vw;
        border-right: unset;
        border-bottom: 1px solid #E7ECE7;
    }

    .common-ways_list ul li .num::before {
        top: unset;
        bottom: -1px;
        transform: translateX(50%);
        right: 50%;
        width: 10vw;
        height: 2px;
    }

    .common-ways_list ul li .box {
        grid-template-columns: 1fr;
        gap: 6vw 0;
    }

    .common-ways_list ul li .img img {
        aspect-ratio: 3/2;
    }

    .common-ways_list ul li .text_box .title {
        font-size: 4.5vw;
        margin-bottom: 4vw;
    }

    .common-ways_list ul li .text_box .text {
        font-size: 3.6vw;
    }

    /* 売却の流れ */
    .common_step_sec {
        padding-block: 14vw;
    }

    .common_step_sec::before {
        margin-right: 3vw;
    }

    .common_step_sec .cont {
        grid-template-columns: 1fr;
        gap: 8vw 0;
    }

    .common_step_sec .step_list ul li+li {
        margin-top: 8vw;
    }

    .common_step_sec .step_list ul li {
        gap: 0 4vw;
        align-items: flex-start;
    }

    .common_step_sec .step_list ul li .icon {
        width: 18vw;
        height: 18vw;
        padding: 4vw;
    }

    .common_step_sec .step_list ul li .icon::before {
        top: 100%;
        height: 33vw;
        background: url(./image/deco_line.svg) top center / contain repeat;
    }

    .common_step_sec .step_list ul li .title_box {
        flex-direction: column;
        gap: 4vw 0;
    }

    .common_step_sec .step_list ul li .title_box .en {
        font-size: 5vw;
        padding-right: 0;
        padding-bottom: 2vw;
        border-right: unset;
        border-bottom: 1px solid #D3D3D3;
    }

    .common_step_sec .step_list ul li .title_box .title {
        font-size: 4vw;
    }

    .common_step_sec .step_list ul li .text_box {
        margin-top: 2vw;
    }

    .common_step_sec .step_list ul li .text_box .text {
        font-size: 3.6vw;
    }

    /* ケーススタディ */
    .common_case_sec {
        padding-block: 18vw;
    }

    .common_case_sec .case_list {
        margin-block: 7vw 12vw;
    }

    .page_buy .common_case_sec .case_list {
        margin-block: 7vw 0;
    }

    .common_case_sec .case_list ul {
        flex-direction: column;
        gap: 8vw 0;
    }

    .common_case_sec .case_list ul li {
        width: 100%;
    }

    .common_case_sec .case_list ul li .img img {
        height: 48vw;
    }

    .common_case_sec .case_list ul li .box {
        gap: 0 4vw;
        margin-top: 3vw;
    }

    .common_case_sec .case_list ul li .num {
        padding-right: 4vw;
        font-size: 6vw;
    }

    .common_case_sec .case_list ul li .num::before {
        height: 5vw;
    }

    .common_case_sec .case_list ul li .text {
        font-size: 4vw;
    }

    /* よくある質問 */
    .common_faq_sec .common_sub_title::before {
        width: 100%;
    }

    .common_faq_sec .common_sub_title::after {
        width: 35vw;
    }

    .common_faq_sec .common_faq_list {
        position: relative;
        z-index: 1;
        margin-top: 35px;
    }

    .common_faq_list dl {
        padding: 4vw 6vw;
    }

    .common_faq_list dl+dl {
        margin-top: 5vw;
    }

    .common_faq_list dl dt,
    .common_faq_list dl dd {
        gap: 0 2.5vw;
    }

    .common_faq_list dl .en {
        width: 7vw;
        font-size: 6vw;
    }

    .common_faq_list dl dt {
        padding-bottom: 3vw;
    }

    .common_faq_list dl dt .qu {
        font-size: 3.8vw;
    }

    .common_faq_list dl dd {
        padding-top: 6vw;
    }

    .common_faq_list dl dd .text {
        font-size: 3.5vw;
        line-height: 1.6;
    }

    .page_buy .common_faq_sec {
        margin-top: 15vw;
    }

    /* 相続ページ */
    .page_inheritance .heading-problem_list {
        width: 100%;
    }

    .page_inheritance.common_page_area .bg_color::before {
        height: 98.6%;
    }

    .page_inheritance .common_how_sec {
        margin-top: 22vw;
    }

    .page_inheritance .common-how_list ul li .title_box .title {
        font-size: 3.8vw;
    }

    .common_page_area .caption_box {
        padding: 7vw 5vw;
    }

    .common_page_area .caption_box .text {
        font-size: 3.6vw;
    }

    .common_page_area .caption_box .list_box {
        padding: 5vw;
        font-size: 3.6vw;
    }

    .common_page_area .caption_box .list_box .text {
        font-size: 3.6vw;
    }

    .common_choice_sec {
        padding-block: 15vw 22vw;
    }

    .common-choice_item {
        margin-top: 8vw;
    }

    .common-choice_item:nth-child(odd) {
        padding-block: 16vw;
    }

    .common-choice_item .cont {
        display: grid;
        gap: 2vw 0;
    }

    .common-choice_item .cont .text_area {
        display: contents;
    }

    .common-choice_item .cont .img {
        width: 100%;
    }

    .common-choice_item .cont .img img {
        height: 48vw;
        aspect-ratio: 0;
    }

    .common-choice_item .cont .title_box {
        gap: 0 4vw;
        order: -1;
    }

    .common-choice_item .cont .title_box .num {
        font-size: 6vw;
        padding-right: 4vw;
    }

    .common-choice_item .cont .title_box .num::before {
        height: 5vw;
    }

    .common-choice_item .cont .title_box .catch {
        font-size: 4.6vw;
    }

    .common-choice_item .cont .text_box .text {
        font-size: 3.6vw;
    }

    .page_investment .common-about_list ul li .title_box .title {
        font-size: 4.2vw;
    }

    .page_investment .common_case_sec .case_list ul li .text {
        font-size: 4.1vw;
    }

    .page_investment .common_faq_sec {
        margin-top: 15vw;
    }

    /* SP固定ページ　会社概要 */
    .company_message_sec .cont {
        flex-direction: column-reverse;
        gap: 8vw 0;
        margin-top: 15vw;
    }

    .company_message_sec .cont .img {
        width: 100%;
    }

    .company_message_sec .cont .img img {
        height: 90vw;
    }

    .company_message_sec .cont .text_area {
        margin-top: 0;
    }

    .company_message_sec .cont .catch_box {
        margin-right: 0;
        margin-top: -30vw;
        text-align: left;
    }

    .company_message_sec .cont .catch_box .en {
        font-size: 10.5vw;
        display: inline-block;
        margin-top: 1vw;
    }

    .company_message_sec .cont .catch_box .en:last-child {
        margin: .1em -4vw 0 0;
    }

    .company_message_sec .cont .text_box {
        margin-top: 7vw;
    }

    .company_message_sec .cont .text_box .text {
        font-size: 3.6vw;
    }

    .company_message_sec .cont .name {
        width: 65vw;
        margin: 6vw 0 0 auto;
    }

    .company_message_sec .cont .name .name_text {
        font-size: 3.7vw;
    }

    .company_message_sec .cont .name .name_text.small {
        font-size: 3.6vw;
    }

    .company_message_sec .license_box {
        margin-top: 7vw;
        padding: 5vw;
    }

    .company_message_sec .license_box .title {
        font-size: 4.3vw;
    }

    .company_message_sec .license_box .text_box {
        margin-top: 4vw;
    }

    .company_message_sec .license_box .text_box .text {
        font-size: 3.8vw;
    }

    .company_message_sec .license_box .text_box .text::before {
        top: 2.5vw;
        width: 1.5vw;
    }

    .company_profile_sec {
        padding-block: 15vw;
        margin-top: 15vw;
    }

    .company_profile_sec .profile_area {
        margin-top: 7vw;
        padding: 3vw 5vw;
    }

    .company_profile_sec .profile_area dl {
        grid-template-columns: 1fr;
    }

    .company_profile_sec .profile_area dl dt,
    .company_profile_sec .profile_area dl dd {
        padding: 1em 0;
    }

    .company_profile_sec .profile_area dl dt {
        font-size: 4vw;
        margin-right: 0;
    }

    .company_profile_sec .profile_area dl dt::before {
        top: unset;
        bottom: 0;
        right: unset;
        left: 0;
        transform: translateY(0%);
        width: 8vw;
        height: 2px;
    }

    .company_profile_sec .profile_area dl dd {
        font-size: 3.6vw;
    }

    .company_access_sec {
        padding-top: 20vw;
    }

    .company_access_sec .map {
        margin-top: 7vw;
    }

    .company_access_sec .map iframe {
        height: 40vw;
    }

    .company_access_sec .parking_img {
        margin-top: 7vw;
    }

    .company_access_sec .parking_img .text {
        font-size: 3.8vw;
    }

    .company_access_sec .parking_img .modal_container {
        padding: 10vw 5vw;
    }

    .company_access_sec .parking_img .modal_body {
        width: 100%;
    }

    .company_access_sec .parking_img .modal_body .modal_close {
        top: -8vw;
        right: -4vw;
        width: 8vw;
        height: 8vw;
        font-size: 8vw;
    }

    /* SP固定ページ　企業理念 */
    .philosophy_sec .item {
        padding-block: 15vw;
        grid-template-columns: 1fr;
        gap: 10vw 0;
    }

    .philosophy_sec .item:last-child {
        padding-block: 15vw 0;
    }

    .philosophy_sec .item .title {
        font-size: 5vw;
    }

    .philosophy_sec .item .text_area .text {
        font-size: 4vw;
    }

    /* SP固定ページ　採用情報 */
    .page_recruit .message_box {
        margin-top: 8vw;
        padding: 7vw 5vw;
    }

    .page_recruit .message_box .text {
        font-size: 4vw;
    }

    .recruit_job_sec {
        padding-block: 10vw 20vw;
    }

    .recruit_job_sec .job_list {
        margin-top: 0;
    }

    .recruit_job_sec .job_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 0;
    }

    .recruit_job_sec .job_list ul li {
        margin-top: 8vw;
    }

    .recruit_job_sec .job_list ul li .img img {
        aspect-ratio: 2/1;
    }

    .recruit_job_sec .job_list ul li .title {
        font-size: 5vw;
        padding-block: 5vw .5em;
        margin-inline: 5vw;
    }

    .recruit_job_sec .job_list ul li .text_box {
        padding: 4vw 5vw 5vw;
    }

    .recruit_job_sec .job_list ul li .text_box .text {
        font-size: 3.6vw;
    }

    .recruit_personality_sec {
        padding-block: 20vw;
    }

    .recruit_personality_sec .personality_list {
        margin-top: 8vw;
    }

    .recruit_personality_sec .personality_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 5vw;
    }

    .recruit_personality_sec .personality_list ul li:nth-child(even) {
        margin-top: 0;
    }

    .recruit_personality_sec .personality_list ul li {
        padding: 5vw 3vw 7vw;
    }

    .recruit_personality_sec .personality_list ul li .num {
        width: 10vw;
        height: 10vw;
        font-size: 6vw;
    }

    .recruit_personality_sec .personality_list ul li .text_box {
        margin-top: 5vw;
    }

    .recruit_personality_sec .personality_list ul li .text_box .text {
        font-size: 4.5vw;
    }

    .recruit_workplace_sec .cont {
        flex-direction: column;
        gap: 2vw 0;
        margin-top: 8vw;
    }

    .recruit_workplace_sec .cont .img {
        width: 100%;
        margin-left: 0;
    }

    .recruit_workplace_sec .cont .img img {
        height: 48vw;
    }

    .recruit_workplace_sec .cont .list dl dt {
        font-size: 4vw;
    }

    .recruit_workplace_sec .cont .list dl dt::before {
        width: 6vw;
    }

    .recruit_workplace_sec .cont .list dl dd {
        font-size: 3.6vw;
    }

    .recruit_flow_sec {
        padding-top: 20vw;
    }

    .recruit_flow_sec .cont {
        margin-top: 8vw;
        grid-template-columns: repeat(1, 1fr);
        gap: 8vw;
    }

    .recruit_flow_sec .cont .item_box {
        padding: 6vw 4vw;
    }

    .recruit_flow_sec .cont .item_box .label_box {
        gap: 0 3vw;
    }

    .recruit_flow_sec .cont .item_box .label_box .icon {
        width: 12vw;
        padding: 2vw;
    }

    .recruit_flow_sec .cont .item_box .label_box .text {
        font-size: 4vw;
    }

    .recruit_flow_sec .cont .schedule {
        margin-top: 5vw;
    }

    .recruit_flow_sec .cont .schedule::before {
        left: 12vw;
    }

    .recruit_flow_sec .cont .schedule dl {
        grid-template-columns: 15% 1fr;
        align-items: first baseline;
        gap: 0 4vw;
    }

    .recruit_flow_sec .cont .schedule dl dt {
        padding-right: 4vw;
        font-size: 5.2vw;
    }

    .recruit_flow_sec .cont .schedule dl dt::after {
        width: 2vw;
        height: 2vw;
        right: -1vw;
        top: 3.5vw;
    }

    .recruit_flow_sec .cont .schedule dl dd {
        font-size: 3.6vw;
    }

    .recruit_flow_sec .btn_box {
        margin-top: 12vw;
    }

    .recruit_flow_sec .btn_box .text {
        font-size: 3.8vw;
    }

    /* SPカスタム投稿　新着物件一覧ページ */
    .common_cat_list ul {
        gap: 3vw;
    }

    .common_cat_list ul li .link {
        width: 43vw;
        min-block-size: 12vw;
        font-size: 3.6vw;
    }

    .common_cat_list ul li .link:hover {
        background-color: var(--font-color);
    }

    .page_property .archive_property_list {
        margin-top: 10vw;
    }

    .archive_property_list ul li {
        padding: 5vw 3vw;
    }

    .archive_property_list ul li+li {
        margin-top: 10vw;
    }

    .archive_property_list ul li .title {
        font-size: 4.3vw;
        -webkit-line-clamp: 2;
    }

    .archive_property_list ul li .message_box {
        padding: 4vw;
    }

    .archive_property_list ul li .message_box .text {
        font-size: 3.6vw;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
    }

    .archive_property_list ul li .cont {
        grid-template-columns: repeat(1, 1fr);
        gap: 4vw 0;
        margin-top: 6vw;
    }

    .archive_property_list ul li .img_box {
        gap: 0 1vw;
        grid-template-columns: repeat(2, auto);
    }

    .archive_property_list ul li .img_box .cat {
        padding: 1.5vw 3vw;
        font-size: 3.2vw;
    }

    .archive_property_list ul li .img_box .img img {
        aspect-ratio: 1;
        min-width: 0;
        object-fit: contain;
    }

    .archive_property_list ul li .info dl {
        grid-template-columns: 32vw 1fr;
    }

    .archive_property_list ul li .info .flex_box {
        grid-template-columns: repeat(1, 100%);
    }

    .archive_property_list ul li .info dl dt,
    .archive_property_list ul li .info dl dd {
        font-size: 3.3vw;
    }

    .archive_property_list ul li .link {
        width: 65vw;
        min-block-size: 10vw;
        font-size: 3.8vw;
        color: #fff;
        margin: 5vw auto 0;
    }

    .archive_property_list ul li .link:hover {
        background-color: var(--font-color);
        color: #fff;
    }

    /* カスタム投稿　新着物件シングルページ */
    .single_property .common_page_wrap {
        padding-block: 10vw 20vw;
    }

    .property_info_sec .head_box .title_box {
        flex-direction: column;
        gap: .6em 0;
    }

    .property_info_sec .head_box .cat {
        font-size: 3.2vw;
    }

    .property_info_sec .head_box .title {
        font-size: 4.5vw;
    }

    .property_info_sec .head_box .message_box {
        padding: 5vw;
    }

    .property_info_sec .head_box .message_box .text {
        font-size: 3.6vw;
    }

    .property_info_sec .info_box {
        margin-top: 8vw;
        grid-template-columns: 100%;
        gap: 6vw 0;
    }

    .property_info_sec .info_box .info dl {
        display: grid;
        grid-template-columns: 38% 1fr;
    }

    .property_info_sec .info_box .info dl dt,
    .property_info_sec .info_box .info dl dd {
        font-size: 3.6vw;
    }

    .property_info_sec .info_box .contact_box {
        padding: 7vw 5vw;
    }

    .property_info_sec .info_box .contact_box .text {
        font-size: 4.2vw;
    }

    .property_info_sec .info_box .contact_box .tel_box {
        margin-top: 2vw;
    }

    .property_info_sec .info_box .contact_box .tel_box .tel {
        font-size: 12vw;
        pointer-events: painted;
    }

    .property_info_sec .info_box .contact_box .tel_box .time {
        font-size: 3.4vw;
    }

    .property_info_sec .info_box .contact_box .common_site_btn .btn {
        margin: 6vw auto 0;
    }

    .property_cont_sec {
        margin-top: 15vw;
    }

    .property_cont_sec .image_area {
        grid-template-columns: repeat(1, 100%);
        gap: 2vw 0;
        padding: 4vw;
    }

    .property_cont_sec .image_area .slider_img .img {
        height: 60vw;
    }

    .property_cont_sec .image_area .slider_img .slick-arrow {
        width: 8vw;
        height: 8vw;
    }

    .property_cont_sec .image_area .slider_img .slick-arrow::before {
        width: 3.5vw;
    }

    .property_cont_sec .image_area .thumbnail {
        margin-top: 2vw;
    }

    .property_cont_sec .image_area .thumbnail .img {
        width: 18.5vw !important;
        margin-inline: 1vw;
    }

    .property_cont_sec .image_area .thumbnail .img img {
        height: 25vw;
    }

    .property_cont_sec .image_area .madori_img {
        order: -1;
    }

    .property_cont_sec .image_area .madori_img .text {
        font-size: 3.2vw;
    }

    .property_cont_sec .image_area .madori_img .img {
        height: 60vw;
    }

    .property_cont_sec .property_cont .item_box {
        margin-top: 10vw;
    }

    .property_cont_sec .property_cont .item_box .flex_box {
        grid-template-columns: repeat(1, 100%);
    }

    .property_cont_sec .property_cont .item_box dl {
        grid-template-columns: 38% 1fr;
    }

    .property_cont_sec .property_cont .item_box dl dt,
    .property_cont_sec .property_cont .item_box dl dd {
        font-size: 3.6vw;
    }

    .property_cont_sec .common_site_btn .btn {
        margin: 7vw auto 0;
    }

    .property_cont_sec .drone_gallery {
        margin-top: 15vw;
    }

    .property_cont_sec .drone_gallery .image_box {
        grid-template-columns: repeat(3, 1fr);
        gap: 2vw 1vw;
        margin-top: 6vw;
    }




}