@charset "UTF-8";
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */

 @media (min-width: 768px) {
    html {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        overflow-y: scroll;
        -webkit-text-size-adjust: 100%;
        font-size: 62.5%;
        color: #222;
        background-color:#fffaf3;
    }
 }

 *,:after,:before {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}
:after,:before {
    text-decoration: inherit;
    vertical-align: inherit
}
* {
    padding: 0;
    margin: 0
}
audio:not([controls]) {
    display: none;
    height: 0
}
hr {
    overflow: visible
}
article,
aside,
details,
figcaption,
figure,
footer,
main,
menu,
nav,
summary {
    display: block
}

section {
    height: auto;
    display: block;
}

summary {
    display: list-item
}
small {
    font-size: 80%
}
[hidden],
template {
    display: none
}
abbr[title] {
    border-bottom: 1px dotted;
    text-decoration: none
}
a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}
a:active,
a:hover {
    outline-width: 0
}
code,
kbd,
pre,
samp {
    font-family: monospace, monospace
}
b,
strong {
    font-weight: bolder
}
dfn {
    font-style: italic
}
mark {
    background-color: #ff0;
    color: #000
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}
sub {
    bottom: -0.25em
}
sup {
    top: -0.5em
}
input {
    border-radius: 0
}
[role=button],
[type=button],
[type=reset],
[type=submit],
button {
    cursor: pointer
}
[disabled] {
    cursor: default
}
[type=number] {
    width: auto
}
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}
textarea {
    overflow: auto;
    resize: vertical
}
button,
input,
optgroup,
select,
textarea {
    font: inherit
}
optgroup {
    font-weight: 500
}
button {
    overflow: visible
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: 0;
    padding: 0
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}
[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button
}
button,
select {
    text-transform: none
}
button,
input,
select,
textarea {
    background-color: transparent;
    border-style: none;
    color: inherit
}
select {
    -moz-appearance: none;
    -webkit-appearance: none
}
select::-ms-expand {
    display: none
}
select::-ms-value {
    color: currentColor
}
legend {
    border: 0;
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}
[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

progress {
    vertical-align: baseline
}
svg:not(:root) {
    overflow: hidden
}
audio,
canvas,
progress,
video {
    display: inline-block
}
[aria-busy=true] {
    cursor: progress
}
[aria-controls] {
    cursor: pointer
}
[aria-disabled] {
    cursor: default
}
::-moz-selection {
    background-color: var(--accent);
    color: #000;
    text-shadow: none
}
::selection {
    background-color: var(--accent);
    color: #fff;
    text-shadow: none
}

body {
    font-family: -apple-system, blinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 1.6rem;
    line-height: 1.5;
    color: #111111;
    overflow-x: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}
@media (min-width: 768px) {
    body {
        min-width: 1150px;
    }
}

img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    max-width: 100%;
}
a,
button {
    text-decoration: none;
    color: inherit
}
a:hover,
button:hover {
    opacity: .6
}
* {
    outline-color: var(--accent) !important;
}
ul > * {
    list-style-type: none
}

.blog_foot img {
    width: 100%;
}
html,
    body {
    overflow-x: hidden!important;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    color: #222;
    background-color: #fffaf3;
    }

    .pc_header {
        display: block;
    }
    .sp_header {
        display: none;
    }
    .pc-only {
        display: block;
    }
    .sp-only {
        display: none;
    }


    .main {
        padding-top: 70px;
    }
        .en_font {
            font-family: "Noto Sans Japanese", sans-serif;
        }
    @media screen and (max-width:767px) {
        html,
            body {
                overflow-x: hidden !important;
                overflow-y: scroll;
                -webkit-overflow-scrolling: touch;
            }
            .pc_header {
                display: none;
            }
            .sp_header {
                display: block;
            }
            .pc-only {
                display: none;
            }
            .sp-only {
                display: block;
            }
            .main {
                padding-top: 15px;
            }
    }

/* =========================================================
   ✅ カラー
   ========================================================= */
:root {
    --main: #1a5a30;
    --accent: #23896b;
    --hover: #1f7a5f;
    --bg: #F6F7F9;
    --text: #222;
    --muted: #555;
}

/* =========================================================
   ✅ header
   ========================================================= */
header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background: var(--bg);
    border-bottom: 2px solid #111448;
    min-width: 1050px;
    z-index: 999;
}
.header_inner {
    padding: 0 40px 5px 20px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    max-width: 1480px;
    height: 100px;
}
.header_left {
    display: block;
    flex-wrap: wrap;
    align-items: center;
}
.header_right {
    display: flex;
    align-items: center;
}
   .header_fixed {
       position: fixed;
       right: 8px;
       z-index: 9999;
       width: 15%;
       bottom: 4rem;
   }
    .header_bnr {
        width: 95%;
        padding: 10px 0;
        margin: 0 auto;
    }

.header_btn {
    width: 130px;
}

/* ローディング */
#loading {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    background: #fff;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity .8s ease, visibility .8s ease;
}

#loading .loading_logo img {
    width: 260px;
    max-width: 70vw;
    height: auto;
    display: block;
}

#loading.is-hide {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}



@media screen and (max-width:767px) {
                .header_fixed {
                        position: fixed;
                        right: 8px;
                        z-index: 9999;
                        width: 15%;
                        bottom: 4rem;
                    }

                    .header_bnr {
                        width: 95%;
                        padding: 10px 0;
                        margin: 0 auto;
                    }
        /* SPヘッダー */
        header {
            background: #fff;
            position: fixed;
            top: 0;
            width: 100%;
            z-index: 220;
            background: #fff;
            height: 65px;
            box-sizing: border-box;
        }

        .header_logo img {
            margin: 6px 0 0 6px;
            width: 20%;
            position: absolute;
            left: 0;
            top: 0;
        }

        .header_btn {
            width: 100%;
            border: 1px solid #dcdcdc;
            text-align: center;
            padding: 10px 0;
            margin: 2rem 0;
            background: var(--accent);
        }

        nav {
            position: absolute;
            right: 680px;
            top: 0;
        }

        nav ul {
            display: flex;
            margin-top: 0;
        }

        nav ul li a {
            padding: 10px 20px;
            display: block;
            transition: 0.3s;
            font-size: 1.4rem;
            white-space: nowrap;
        }

        .sp_btn {
            position: fixed;
            bottom: 0;
            display: table;
            width: 100%;
            z-index: 999999999;
        }

        .sp_btn a {
            background-color: #ee7800;
            display: table-cell;
            padding: 8px 0 5px 0;
            text-align: center;
            width: 50%;
            font-size: 1.0rem;
            letter-spacing: -0.1rem;
            color: #FFF;
            vertical-align: middle;
            line-height: 20%;
            border-left: 1px solid;
            border-right: 1px solid;
        }

        .sp_btn a.btn_online {
            border-right: 1px solid #FFF;
            border-left: 1px solid #FFF;
        }

        .sp_btn .btn_phone {
            font-family: sans-serif;
            font-size: 1.4rem;
            background-color: var(--main);
            padding: 25px 0;
        }

        .grecaptcha-badge {
            margin-bottom: 60px;
        }

     /* SPハンバーガーメニュー */
    .menu_btn {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        position: relative;
        height: 60px;
        margin-left: auto;
    }
    .navbar_toggle {
        z-index: 20;
        cursor: pointer;
    }
    .navbar_toggle_icon {
        position: relative;
        display: block;
        height: 2px;
        width: 30px;
        background: var(--main);
        -webkit-transition: ease .5s;
        transition: ease .5s;
    }
    .navbar_toggle_icon:nth-child(1) {
        top: 0;
    }
    .navbar_toggle_icon:nth-child(2) {
        margin: 8px 0;
    }
    .navbar_toggle_icon:nth-child(3) {
        top: 0;
    }

    .navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
        top: 10px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        opacity: 0;
    }
    .navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
        top: -10px;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }


    .menu_list {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        -webkit-transition: ease .5s;
        transition: ease .5s;
        z-index: 1000;
        width: 94%;
        background: #fff;
        top: 65px;
    }
    .menu_list.open {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        position: fixed;
        height: 100%;
        top: 65px;

    }
    .menu_list ul {
        padding: 1% 4%;
        margin-left: 4%;
        margin-bottom: 150px;
    }
    .menu_list li {
        border-bottom: 1px solid #ccc;
        font-size: 1.0rem;
        padding: 1rem 6px;
        position: relative;
    }
    .menu_list li a {
        font-size: 1.2rem;
        font-family: sans-serif;
        margin-left: 11%;
    }
    .menu_list li span {
        display: block;
        margin-left: 11%;
        font-size: 1.2rem;
    }
    .menu_list li::before {
        content: "";
        background: url(./images/common/arrow.png) no-repeat;
        background-size: cover;
        width: 8%;
        height: 29%;
        vertical-align: middle;
        display: inline-block;
        top: 34%;
        position: absolute;
        left: 0%;
    }

}

/* =========================================================
   ✅ 共通
   ========================================================= */
   .top::before {
       content: "";
       position: absolute;
       top: 130%;
       right: 15%;
       width: 300px;
       height: 300px;
       background-image: url(./images/common/yatagarasu_symbol.svg);
       background-repeat: no-repeat;
       background-size: contain;
       opacity: 0.2;
       z-index: 9999;
   }
   @media screen and (max-width:767px) {
    .top::before {
            top: 140%;
            width: 180px;
            height: 200px;
        }
   }

   .top * {
       position: relative;
       z-index: 1;
   }
    .container {
        width: 1050px;
        margin: 0 auto;
    }
    .sec_title {
        text-align: center;
        font-weight: bold;
        font-size: 4.25rem;
        margin-bottom: 4rem;
        letter-spacing: 3.2px;
        font-family: "La Belle Aurore", cursive;
    }
    @media screen and (max-width:767px) {
        .container {
                width: 94%;
            }
    }
    .flexbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 3rem 0;
    }

    .flexbox + .flexbox {
        flex-direction: row;
    }

    .flexbox > * {
        width: 48%;
    }

    .text_block {
        display: block;
        padding: 1rem;
        max-width: 48%;
    }
    .img_block {
        display: block;
        padding: 1rem;
        max-width: 48%;
    }
    .img_block img {
        overflow: hidden;
        object-fit: cover;
        border-radius: 40px;
    }
    @media screen and (max-width:767px) {
        .text_block {
                max-width: 100%;
            }
            .img_block {

                max-width: 100%;
            }

            .flexbox + .flexbox {
        flex-direction: column-reverse;
    }

    .flexbox > * {
        width: 100%;
    }
    }

    /* ボタン */
     .btn_common {
        max-width: 230px;
        margin: 5rem auto 0;
    }
    .btn_common a, .btn_common input {
        font-size: 1.6rem;
        color: #fff;
        display: block;
        background: var(--hover);
        line-height: 4.7rem;
        text-align: center;
        border: none;
        cursor: pointer;
        width: 100%;
        padding: 0;
        border-radius: 10px;
    }
    @media screen and (max-width:767px) {
        .btn_common {
                max-width: 100%;
            }
    }
    /* ページナビ */
    .pagination {
        font-size: 1.4rem;
        text-align: center;
        margin-top: 20px;
    }
    /* ページトップ */
    .page_top {
        position: fixed;
        bottom: 105px;
        right: 0px;
        z-index: 250;
        cursor: pointer;
    }
    .page_top img {
        width: 23%;
        opacity: 0.4;
    }
    .page_top img:hover {
        width: 23%;
        opacity: 1.0;
    }
    .description {
        font-size: 0.1rem;
        font-family: serif;
        font-weight: 400;
        color: #888;
        white-space: nowrap;
    }
    @media screen and (max-width:767px) {
        .page_top {
                display: none !important;
            }
    }

/* =========================================================
   ✅ MV
   ========================================================= */
   .mv {
       text-align: right;
       color: #fff;
       height: auto;
   }
   .mv .copy {
       font-size: 7rem;
       font-weight: bold;
       line-height: 1.2;
   }
   .mv p {
       letter-spacing: 0.2em;
       margin-top: 15px;
   }
   .mv_pc {
        width: 100%;
        position: relative;
        left: 0px;
        top: 0px;
    }
    .mv_sp {
        display: none;
    }
    .mv .text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    text-align: center;
    text-shadow: 1px 1px 5px var(--main);
}

    @media screen and (max-width:767px) {
        /* SP_MV */
            .mv_pc {
                display: none;
            }
            .mv_sp {
                position: relative;
                display: block;
            }
            .mv .text {
                width: 90%;
            }
            .mv .copy {
                font-size: 3rem;
            }
    }

/* =========================================================
   ✅ header
   ========================================================= */
    .header_fixed {
        position: fixed;
        right: 0;
        top: 17vh;
        z-index: 9999;
        width: 4.2%;
        }
    nav {
        display: block!important;
    }
    nav ul {
        display: flex;
        margin-top: 0;
    }
    nav ul li a {
        padding: 10px 20px;
        display: block;
        transition: 0.3s;
        font-size: 1.4rem;
        white-space: nowrap;
    }

/* =========================================================
   ✅ トップ_NEWS
   ========================================================= */
    .news_sec {
        padding: 13rem 0;
        margin-bottom: 13rem;
        background-color: #e4e1d5;
    }
    .news_block + .news_block {
        margin-top: 15px;
    }
    .news_block {
        width: 680px;
        margin: 0 auto;
        display: flex;
        flex-wrap: nowrap;
        font-size: 1.6rem;
    }
    .news_block dt {
        width: 100px;
    }
    .news_block dd {
        width: 580px;
        margin-left: 2.0rem;
    }
    .news_block dd a {
        color: var(--hover);
    }
    @media screen and (max-width:767px) {
            .news_sec {
                margin: 0;
            }

            .news_block {
                width: 100%;
                font-size: 1.0rem;
            }

            .news_block dd {
                width: 100%;
                margin-left: 1rem;
            }
         }

/* =========================================================
   ✅ トップ_物件情報
========================================================= */
    .property_title {
        color: var(--main);
        font-weight: bold;
        margin: 12px 4px;
        padding-top: 15rem;
    }
    .property_datails {
        padding: 1rem;
    }
    .property_sec {
        margin-top: 13rem;
        padding: 8rem 0;
        background: #e7e7e8;
        background-image: url(./images/common/property_bg.jpeg);
    }
    .property_sec .sec_title {
        color: var(--bg);
    }
    .property_list_index {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .property_list_index .box {
        text-align: left;
        width: 30%;
        padding: 0 1rem;
        background-color: rgba(255, 255, 255, 0.8);
        border-radius: 20px;
        border: 1px solid var(--main);
    }
    .property_list_ttl {
        font-size: 2.0rem;
        margin: 2rem 0;
        font-weight: bold;
        color: var(--main);
    }
    .property_list_index .box p {
        padding: 1rem 0;
    }
        .property_image {
            display: block;
            position: relative;
            margin: 6px auto;
            padding: 0;
            width: 100%;
            height: 200px;
            border-radius: 20px;
            box-sizing: border-box;
            overflow: hidden;
        }

        .label_wrapper {
            position: relative;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

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


    @media screen and (max-width:767px) {
    .property_title {
        padding-top: 1rem;
    }

    .property_list_index .box {
        width: 100%;
        font-size: 1.2rem;
        margin-bottom: 3.0rem;
    }

    }

/* =========================================================
   ✅ トップ_事業内容（コンテンツ）
   ========================================================= */
    .contents_sec {
    padding-top: 3rem;
    padding-bottom: 3rem;
    }
    .contents_sec img {
        width: 100%;
    }
.top_contents {
    width: 1140px;
    padding: 0;
    clear: both;
    position: relative;
}

.nm {
    color: var(--main);
    font-size: 90px;
    line-height: 1.1;
    font-family: "Kalam", cursive;
        font-weight: 700;
        font-style: normal;
}
.comment {
    margin: 10px;
    font-family: 游明朝体, "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    text-orientation: upright;
}

.linken {
    padding: 0;
    position: relative;
    display: flex;
    justify-content: end;
}
.linken img {
    height: auto;
    width: 100%;
}
.linkjp {
    display: block;
    margin: 5px 0 0 0;
}
.arrow {
    transform: perspective(200px) rotateX(80deg);
    border: 3px solid var(--muted);
    border-left: 0px;
    border-top: 0px;
    position: absolute;
    width: 70px;
    height: 40px;
    left: -70px;
    top: 15px;
}


@media screen and (max-width:767px) {

    .top_contents {
    width: 100%;
    }

    .arrow {
        width: 20%;
        height: 60px;
        left: -50px;
        top: 5px;
    }
}

/* =========================================================
   ✅ トップ_コラム
   ========================================================= */
.column_sec {
    padding: 8rem 0 12rem;
    background-color: #eaebe8;
}
.column_sec ul li img {
    border-radius: 20px;
}

@media screen and (min-width: 768px) {
    .column_sec ul {
        display: flex;
        width: 100%;
        justify-content: space-around;
    }

    .column_sec li {
        width: 25%;
        padding: 8px;
    }

    .column_sec li h2 {
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 767px) {
    .column_sec ul {
        display: block;
        width: 85%;
        margin: 0 auto;
    }

    .column_sec li {
        width: 100%;
        margin-bottom: 40px;
    }

    .column_sec li h2 {
        font-size: 1.2rem;
    }
}


/* =========================================================
   ✅ 下層ページ（共通）
   ========================================================= */
.l-inner {
    width: 1024px;
    position: relative;
    margin: 0 auto;
}
.under_contents {
    padding-top: 7rem;
}
.page_heading {
    padding: 7rem;
    text-align: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    color: #fff;
}
.page_heading p {
    font-size: 1.4rem;
    letter-spacing: 0.3em;
    line-height: 1;
    margin-top: 20px;
}
.lead_center {
    margin: 40px 0 20px 0;
    text-align: center;
    width: 100%;
}
.lead_center h2 {
    color: var(--main);
    margin: 40px 0;
    font-weight: bold;
    font-family: serif;
}

.other_head {
    background-image: url(./images/common/other_head.png);
}

.column_container {
    display: flex;
    justify-content: space-between;
    padding: 135px 0;
}
.column_left_container {
    width: 800px;
}

@media screen and (max-width:767px) {
    .l-inner {
        width: 100%;
    }
    .under_contents {
        padding-top: 1rem;
    }
    .page_heading {
        padding: 2rem;
    }
    .page_heading p {
        font-size: 1.2rem;
    }
    .lead_center {
        font-size: 1.4rem;
    }
    .other_head {
        background-size: auto;
    }
    .column_container {
        display: block;
        padding: 100px 0;
    }
    .column_left_container {
        width: 95%;
        padding-bottom: 7rem;
        margin: 0 auto;
    }
}

/* =========================================================
   ✅ サイドバー
   ========================================================= */
.sidebar {
    width: 200px;
    margin-top: -3px;
}
.sidebar ul {
    display: block;
}
.sidebar li {
    margin-top: 1rem;
}
.sidebar li a {
    font-size: 1.6rem;
    margin: 12px 0;
}
.sidebar h2 {
    background-color: var(--main);
    color: #fff;
    padding: 12px;
    font-size: 1.8rem;
}

@media screen and (max-width:767px) {
        .sidebar {
            width: 98%;
            margin: 5rem auto;
        }
        .sidebar ul {
            padding: 1.6rem 1rem;
        }
        .sidebar li a {
            font-size: 1.3rem;
        }
        .sidebar h2 {
            font-size: 1.4rem;
        }
}


/* =========================================================
   ✅ シングルページ 見出し・リスト装飾
========================================================= */

/* ---------- h2 ---------- */
#single .column_left_container h2 {
    font-size: 2.8rem;
    line-height: 1.5;
    margin-bottom: 3rem;
    padding-bottom: 1rem;
    border-bottom: solid 3px var(--main);
    color: #222;
}

/* ---------- h3 ---------- */
#single .column_left_container h3 {
    position: relative;
    font-size: 2.2rem;
    line-height: 1.5;
    margin: 6rem 0 2rem;
    padding-left: 1.8rem;
    color: var(--main);
    font-weight: bold;
}

#single .column_left_container h3::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 6px;
    height: 1.2em;
    background: var(--main);
    border-radius: 10px;
}

/* ---------- h4 ---------- */
#single .column_left_container h4 {
    font-size: 1.9rem;
    margin: 4rem 0 1.5rem;
    padding-bottom: 0.8rem;
    border-bottom: 1px solid #d9d9d9;
    color: #333;
    font-weight: bold;
}

/* ---------- h5 ---------- */
#single .column_left_container h5 {
    font-size: 1.7rem;
    margin: 3rem 0 1rem;
    color: var(--main);
    font-weight: bold;
}

/* ---------- h6 ---------- */
#single .column_left_container h6 {
    font-size: 1.5rem;
    margin: 2.5rem 0 1rem;
    color: #666;
    font-weight: bold;
}

/* ---------- p ---------- */
#single .column_left_container p {
    font-size: 1.6rem;
    line-height: 2;
    margin: 2rem 0;
    color: #444;
}

/* ---------- ul ---------- */
#single .column_left_container ul {
    margin: 2rem 0;
    padding-left: 0;
}

#single .column_left_container ul li {
    position: relative;
    list-style: none;
    padding-left: 2rem;
    margin-bottom: 1rem;
    line-height: 1.9;
    font-size: 1.6rem;
}

#single .column_left_container ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    width: 8px;
    height: 8px;
    background: var(--main);
    border-radius: 50%;
}

/* ---------- ol ---------- */
#single .column_left_container ol {
    margin: 2rem 0;
    padding-left: 0;
    counter-reset: number;
}

#single .column_left_container ol li {
    position: relative;
    list-style: none;
    padding-left: 3.5rem;
    margin-bottom: 1.5rem;
    line-height: 1.9;
    font-size: 1.6rem;
}

#single .column_left_container ol li::before {
    counter-increment: number;
    content: counter(number);

    position: absolute;
    left: 0;
    top: 0.1em;

    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;

    background: var(--main);
    color: #fff;

    font-size: 1.3rem;
    font-weight: bold;

    display: flex;
    align-items: center;
    justify-content: center;
}

/* ---------- blockquote ---------- */
#single .column_left_container blockquote {
    margin: 3rem 0;
    padding: 2rem;
    background: #f7f7f7;
    border-left: 4px solid var(--main);
    font-size: 1.5rem;
    line-height: 1.9;
    color: #555;
}

/* =========================================================
   ✅ SP
========================================================= */
@media screen and (max-width: 767px) {

    #single .column_left_container h2 {
        font-size: 2rem;
        margin-bottom: 2rem;
    }

    #single .column_left_container h3 {
        font-size: 1.8rem;
        margin: 4rem 0 1.5rem;
    }

    #single .column_left_container h4 {
        font-size: 1.6rem;
    }

    #single .column_left_container h5 {
        font-size: 1.5rem;
    }

    #single .column_left_container h6 {
        font-size: 1.4rem;
    }

    #single .column_left_container p,
    #single .column_left_container ul li,
    #single .column_left_container ol li {
        font-size: 1.4rem;
        line-height: 1.9;
    }

    #single .column_left_container blockquote {
        padding: 1.5rem;
        font-size: 1.4rem;
    }
}

/* =========================================================
   single サムネイル
========================================================= */
.single_thumbnail {
    margin-bottom: 4rem;
    border-radius: 20px;
    overflow: hidden;
}

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

/* SP */
@media screen and (max-width: 767px) {
    .single_thumbnail {
        margin-bottom: 2.5rem;
        border-radius: 12px;
    }
}




/* =========================================================
   ✅ アーカイブ
   ========================================================= */
.archive_list {
    font-size: 1.4rem;
    border-top: 1px solid #dbdbdb;
}
#archive .list_item {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #dbdbdb;
    padding: 2.07em 0;
}
#archive .list_date {
    font-family: sans-serif;
    font-weight: 500;
    letter-spacing: 0.1em;
    width: 10em;
}
#archive .list_cat {
    font-weight: 700;
    text-align: center;
    width: 9.4em;
    font-size: 1.2rem;
    color: var(--main);
}

#archive .archive_property {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

#archive .property_item {
    display: block;
    align-items: center;
    width: 30%;
    border: 1px solid var(--muted);
    box-shadow: 0.347px 1.97px 2px rgb(0 0 0 / 70%);
    border-radius: 20px;
    margin: 1rem;
    padding: 1rem;
}
#archive .property_title {
    padding-top: 1rem;
}

@media screen and (max-width:767px) {
        #archive .list_item {
            display: block;
            padding: 1.2rem 0;
        }
        #archive .list_date {
            width: 50%;
            display: flex;
            font-size: 1.0rem;
        }
        #archive .list_cat {
            width: 50%;
        }
        #archive .list_title {
            font-size: 1.0rem;
        }
        #archive .property_item {
            width: 100%;
            font-size: 1.2rem;
            margin: 6px 0;
        }
}

/* =========================================================
   ✅ 事業内容ページ
   ========================================================= */
#service .service_head {
    background-image: url(./images/service/bg_head_service.png);
}
#service .service_top {
    background-image: url(./images/service/service_top.png);
    height: 570px;
    background-size: contain;
    margin-left: 170px;
    margin-top: 30px;
    position: relative;
}
#service .service_top_text {
    font-family: "Hiragino Mincho Pro","HGS明朝E","ヒラギノ明朝 Pro W3","小塚明朝 Pro EL","Kozuka Mincho Pro",Century,"Times New Roman",Times,"MS 明朝",serif;
    display: block;
    width: 100%;
    margin: 50px 0 0 0;
    font-size: 28px;
    padding: 20px 2.5% 0 2.5%;
    text-shadow: 1px 1px 2px #fff;
    line-height: 2.0;
    position: absolute;
    top: 100px;
    left: -220px;
}
#service .contents_title {
    text-align: center;
    border: 1px solid #000;
    display: block;
    width: 100%;
    font-size: 1.2rem;
    padding: 10px;
    margin: 60px 0;
}
#service .menu_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#service .menu_contents {
    display: block;
    width: 50%;
    padding: 12px;
    margin-bottom: 40px;
}
#service .menu_contents h3 {
    font-weight: bold;
    margin: 18px 0;
    font-size: 1.8rem;
}
#service .menu_contents p {
    font-size: 1.6rem;
}
#service .menu_contents ul {
    padding: 14px;
}
#service .menu_contents li {
    margin-bottom: 0.6rem;
}
@media screen and (max-width:767px) {
        #service .service_head {
            background-size: auto;
        }
        #service .service_top {
            height: 380px;
            width: 100%;
            margin-left: 0;
        }
        #service .service_top_text {
            margin: 90px 0 0 0;
            font-size: 19px;
            top: 130px;
            left: 0;
        }
        #service .contents_title {
            font-size: 1.0rem;
        }
        #service .menu_contents {
            width: 100%;
        }
        #service .menu_contents h3 {
            font-size: 1.2rem;
        }
        #service .menu_contents p {
            font-size: 1.0rem;
        }
        #service .menu_contents li {
            font-size: 1.0rem;
        }
}

/* =========================================================
   ✅ 物件売買の流れページ
   ========================================================= */
#flow .flow_head {
    background-image: url(./images/flow/bg_head_flow.png);
}
#flow .contents_title {
    text-align: center;
    border: 1px solid #000;
    display: block;
    width: 100%;
    font-size: 1.2rem;
    padding: 10px;
    margin: 60px 0;
}

.flow_list {
    margin-top: 60px;
}

.flow_item {
    position: relative;
    padding: 30px 30px 30px 100px;
    margin-bottom: 30px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.flow_step {
    position: absolute;
    left: 20px;
    top: 30px;
    font-size: 1.2rem;
    font-weight: bold;
    color: var(--main);
}

.flow_item h3 {
    font-size: 2rem;
    margin-bottom: 10px;
}

.flow_item p {
    line-height: 1.8;
    color: #555;
}

/* 縦ライン */
.flow_list {
    position: relative;
}

.flow_list::before {
    content: "";
    position: absolute;
    left: 45px;
    top: 0;
    width: 2px;
    height: 100%;
    background: #ddd;
}


/* =========================================
   CTA（お問い合わせ）
========================================= */
.flow_cta {
    position: relative;
    margin: 4rem 0;
    padding: 55px 30px;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #1a5a30, #23896b);
    border-radius: 16px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.16);
    overflow: hidden;
}

.flow_cta::before {
    content: "";
    position: absolute;
    inset: 1px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 15px;
    pointer-events: none;
}

.flow_cta p {
    position: relative;
    z-index: 1;
    font-size: 1.9rem;
    font-weight: bold;
    line-height: 1.7;
    letter-spacing: 0.04em;
    margin-bottom: 26px;
}

.flow_cta .btn_common {
    position: relative;
    z-index: 1;
    display: inline-block;
    min-width: 260px;
    padding: 16px 42px;
    font-size: 1.6rem;
    font-weight: bold;
    color: var(--main);
    background: #fff;
    border-radius: 999px;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
    transition: 0.3s ease;
}

.flow_cta .btn_common::after {
    content: " →";
    margin-left: 8px;
}

.flow_cta .btn_common:hover {
    transform: translateY(-3px);
    background: #f7f3ec;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

/* SP */
@media screen and (max-width: 767px) {
    #flow .flow_head {
            background-size: auto;
        }

    #flow .contents_title {
            font-size: 1.0rem;
        }
    .flow_item {
        padding: 20px;
    }

    .flow_step {
        position: static;
        margin-bottom: 10px;
    }

    .flow_list::before {
        display: none;
    }

    .flow_cta {
        margin-top: 50px;
        padding: 40px 20px;
        border-radius: 12px;
    }

    .flow_cta::before {
        border-radius: 11px;
    }

    .flow_cta p {
        font-size: 1.5rem;
        line-height: 1.8;
        margin-bottom: 22px;
    }

    .flow_cta .btn_common {
        width: 100%;
        max-width: 300px;
        min-width: auto;
        padding: 15px 24px;
        font-size: 1.5rem;
    }
}



/* =========================================================
   ✅ 売却の流れページ
   ========================================================= */
#sell .flow_head {
    background-image: url(./images/flow/bg_head_flow.png);
}
#sell .contents_title {
    text-align: center;
    border: 1px solid #000;
    display: block;
    width: 100%;
    font-size: 1.2rem;
    padding: 10px;
    margin: 60px 0;
}
#sell .sell_list {
    display: block;
    margin: 120px 0;
}
#sell .sell_list li {
    display: flex;
    margin-bottom: 20px;
}
#sell .text_block {
    display: block;
    width: 50%;
    padding: 5%;
}
#sell .img_block {
    display: block;
    width: 50%;
}
@media screen and (max-width:767px) {
/* 売却の流れページ */
    #sell .flow_head {
        background-size: auto;
    }
    #sell .contents_title {
        width: 90%;
        font-size: 1.0rem;
    }
    #sell .sell_list li {
        display: block;
        margin-bottom: 80px;
    }
    #sell .text_block {
        width: 100%;
    }
    #sell .img_block {
        width: 100%;
    }
    #sell .nm {
        color: #e5e5e5;
        font-size: 60px;
        line-height: 1.1;
        font-family: times;
    }
    #sell h3 {
        font-size: 1.4rem;
    }
    #sell p {
        font-size: 1.2rem;
    }
}

/* =========================================================
   ✅ 会社概要ページ
   ========================================================= */
#company.under_contents {
    position: relative;
    overflow: hidden;
}

#company.under_contents::before {
    content: "";
    position: absolute;
    top: 20%;
    right: 15%;
    width: 300px;
    height: 300px;
    background-image: url(./images/common/yatagarasu_symbol.svg);
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0.2;
    z-index: 0;
}

/* テキストを前に出す */
#company.under_contents * {
    position: relative;
    z-index: 1;
}

#company .company_head {
    background-image: url(./images/company/bg_head_company.png);
}
#company .company_list {
    width: 940px;
    margin: 120px auto;
}
#company .company_list h2 {
    text-align: center;
    color: #1a5a30;
    padding: 3rem 0;
}
#company .company_list dl {
    display: flex;
    width: 100%;
    border-bottom: 1px dotted #ccc;
    line-height: 1.8;
}
#company .company_list dl dt {
    width: 30%;
    padding: 20px;
    background: none;
}
#company .company_list dl dd {
    width: 70%;
    padding: 20px;
}
#company .map {
    width: 100%;
    height: auto;
}
#company .company_gallery {
    margin: 100px 0;
}
#company .company_gallery img {
    width: 33%;
    padding: 12px;
}

@media screen and (max-width:767px) {
        #company .l-inner {
            width: 95%;
        }
        #company .company_head {
            background-size: auto;
        }
        #company .company_list {
            width: 95%;
        }
        #company .company_list dl {
            font-size: 1.0rem;
        }
        #company .company_list dl dt {
            padding: 10px;
        }
        #company .company_list dl dd {
            padding: 10px;
        }
        #company .company_gallery {
            margin: 70px 0;
        }
        #company .company_gallery img {
            width: 48%;
        }
        #company .lead_center {
            margin: 40px 0 20px 0;
            text-align: center;
            width: 100%;
        }
        #company .lead_center h2 {
            font-size: 2rem;
        }
        #company .lead_center p {
            font-size: 1.1rem;
        }
        #company iframe {
            width: 100%;
        }
}


/* =========================================================
   ✅ 採用情報ページ
   ========================================================= */
#recruit .recruit_head {
    background-image: url(./images/recruit/bg_head_recruit.png);
}
#recruit .contents_title {
    text-align: center;
    border: 1px solid #000;
    display: block;
    width: 90%;
    font-size: 1.4rem;
    padding: 10px;
    margin: 30px auto;
}
#recruit .recruit_detailList {
    display: flex;
    flex-wrap: wrap;
}
/* 求人タブ */
.tab_container {
    padding-bottom: 1em;
    background-color: #fff;
    border: 1px solid var(--hover);
    margin: 0 auto;
}
.tab_item {
    width: calc(100%/2);
    padding: 15px 0;
    border-bottom: 3px solid var(--hover);
    background-color: #ececec;
    text-align: center;
    color: var(--hover);
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
    font-size: 1.8rem;
}
.tab_item:hover {
    opacity: 0.75;
}
input[name="tab_item"] {
    display: none;
}
.tab_content {
    display: none;
    padding: 1em 1em 0;
    clear: both;
    overflow: hidden;
}
#tab1:checked~#tab1_content,
#tab2:checked~#tab2_content {
    display: block;
}
.tab_container input:checked+.tab_item {
    background-color: var(--hover);
    color: #fff;
    font-size: 1.8rem;
}
.c-detailList,
.c-detailList_dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.c-detailList {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 1.8rem;
    border-top: 2px solid var(--hover);
    font-weight: 400;
}
.c-detailList_dt {
    border-bottom: 2px solid #e9eef7;
    width: 23%;
    padding: 1.5em 1.0em;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--hover);
    font-weight: 600;
    white-space: nowrap;
}
.c-detailList_dd {
    width: 77%;
    border-bottom: 2px solid #e9eef7;
    padding: 1.5em 0;
}

@media screen and (max-width:767px) {
    #recruit .recruit_head {
        background-size: auto;
    }
    #recruit .contents_title {
        font-size: 1.0rem;
    }
    /* 求人タブ */
    .tab_item {
        font-size: 1.0rem;
    }
    .tab_container input:checked+.tab_item {
        font-size: 1.0rem;
    }
    .c-detailList {
        font-size: 1.0rem;
    }
    .c-detailList_dt {
        width: 100%;
        padding: 1.0em 1.0em;
        font-size: 1.0rem;
    }
    .c-detailList_dd {
        width: 100%;
        font-size: 1.0rem;
    }
}

/* =========================================================
   ✅ 問い合わせページ
   ========================================================= */
#contact .contact_head {
    background-image: url(./images/contact/bg_head_contact.png);
}
#contact .form_container {
    margin: 100px auto;
    max-width: 767px;
}
#contact .form_title {
    vertical-align: middle;
    font-size: 1.8rem;
    padding-top: 1rem;
}
#contact .form_required {
    display: inline-block;
    background-color: #ff1d25;
    color: #fff;
    padding: 0 0.5em;
    margin-left: 0.8em;
    font-size: 1.4rem;
    font-weight: 400;
    vertical-align: middle;
}
#contact .form_item {
    margin-bottom: 5rem;
}
#contact .form_item input {
        background-color: #ededed;
        padding: 1.07rem;
        width: 100%;
        font-size: 1.6rem;
        border-radius: 0;
}
#contact .form_postnum input {
    background-color: #ededed;
    padding: 1.07rem;
    width: 30%;
    font-size: 1.6rem;
    border-radius: 0;
    margin-left: 12px;
}
#contact .form_item select {
    background-color: #ededed;
    padding: 1.07rem;
    width: 44%;
    font-size: 1.6rem;
    border-radius: 0;
}
#contact .selector {
    position: relative;
}
#contact .selector:after {
    content: "▼";
    position: absolute;
    right: 1em;
    top: 35%;
    transform: translateY(-50%);
    height: 1em;
    width: 1em;
}
#contact .form_item textarea {
    background-color: #ededed;
    padding: 1.07rem;
    width: 100%;
    font-size: 1.6rem;
    border-radius: 0;
}
#contact .form_privacypolicyLead {
    margin-top: 70px;
}
#contact .form_privacypolicy {
    background-color: #fff;
    padding: 2.7em 2.8em;
    height: 240px;
    overflow-y: scroll;
    border: #dbdbdb solid 1px;
    margin-top: 15px;
}
#contact .form_privacypolicy p + p {
    margin-top: 1.8em;
}
#contact .wpcf7-form-control-wrap.acceptance label {
    font-size: 1.8rem;
}

#contact .acceptance,
#contact .agree {
    margin-top: 3rem;
    text-align: center;
}

#contact .acceptance .wpcf7-list-item {
   margin: 0;
}

/* ボタン外枠：中央配置 */
#contact .submit_button {
    display: flex;
    justify-content: center;
    margin-top: 3rem;
}

/* 実際のsubmitボタン */
#contact .submit_button input[type="submit"],
#contact .submit_button .c-button03 {
    width: 300px;
    max-width: 100%;
    border: none;
    border-radius: 40px;
    padding: 1em 0;
    background-color: #ee7800;
    color: #fff;
    font-size: 1.8rem;
    text-align: center;
    letter-spacing: 0.1em;
    cursor: pointer;
    transition: opacity 0.4s;
    appearance: none;
    -webkit-appearance: none;
}

#contact .submit_button input[type="submit"]:hover,
#contact .submit_button .c-button03:hover {
    opacity: 0.75;
}

#contact .wpcf7-spinner {
    display: none !important;
}

@media screen and (max-width:767px) {
        #contact .contact_head {
            background-size: auto;
        }
        #contact .lead_center {
            font-size: 0.9rem;
        }
        #contact label {
            display: flex;
            margin-top: 12px;
            font-size: 1.2rem;
            width: 100%;
        }
        #contact .wpcf7-list-item-label {
            width: 100%;
        }
        #contact .wpcf7-radio {
            display: grid;
            margin-top: 1rem;
        }
        #contact .form_container {
            width: 95%;
        }
        #contact .form_item {
            margin-bottom: 1.6rem;
        }
        #contact .form_title {
            font-size: 1.4rem;
            display: contents;
        }
        #contact .form_item input {
            font-size: 1.2rem;
        }
        #contact .form_postnum input {
            width: 50%;
            font-size: 1.2rem;
            margin-top: 8px;
        }
        #contact input {
            margin-top: 8px;
        }
        #contact .form_item select {
            width: 100%;
            font-size: 1.2rem;
        }
        #contact .form_item textarea {
            font-size: 1.2rem;
        }
        #contact .form_privacypolicyLead {
            margin-top: 30px;
            font-size: 1.3rem;
        }
        #contact .form_privacypolicy {
            padding: 0.7em 0.8em;
            font-size: 1.0rem;
        }
        #contact .wpcf7-form-control-wrap.acceptance label {
            font-size: 1.2rem;
        }
        #contact .form_buttonWrapper {
            margin-top: 40px;
        }
        #contact .acceptance label {
            display: block;
        }
}

/* =========================================================
   ✅ プライバシーポリシー
   ========================================================= */
#privacy-policy .container {
    margin-top: 120px;
}
#privacy-policy .privacypolicy p {
    margin: 40px 0;
    font-size: 1.8rem;
}
#privacy-policy .privacypolicy h3 {
    font-size: 2.2rem;
    font-weight: bold;
    color: var(--main);
}
#privacy-policy .privacypolicy h3::before {
    content: "■";
    padding: 12px;
    color: var(--accent);
}
@media screen and (max-width:767px) {
    #privacy-policy .en_font {
        white-space: nowrap;
        font-size: 2.2rem;
    }
    #privacy-policy .privacypolicy p {
        font-size: 1.0rem;
    }
    #privacy-policy .privacypolicy h3 {
        font-size: 1.4rem;
    }
}

/* =========================================================
   ✅ サンクスページ
   ========================================================= */
#thanks .container {
    width: 1050px;
    margin: 100px auto;
}
#thanks .container p {
    margin: 18px 0;
}
@media screen and (max-width:767px) {
    #thanks .container {
        width: 95%;
    }
}

/* =========================================================
   ✅ footer
   ========================================================= */
    footer {
        position: relative;
    }
    .footer_bnr {
        text-align: center;
        margin-bottom: 100px;
    }
    .footer_bnr img {
        width: 75%;
    }
    .footer_inner {
        text-align: center;
        padding: 5rem 0 5.5rem;
        border-top: #bfbfbf 1px solid;
    }
    .footer_inner .logo {
        width: 14%;
        display: block;
        margin: 0 auto;
    }
    .footer_inner .text {
        font-size: 1.2rem;
        margin-top: 2rem;
        letter-spacing: 0.1em;
    }
    .footer_inner .tel {
        font-weight: bold;
        margin-top: 6px;
        letter-spacing: 0.1em;
        font-size: 3.5rem;
        color: var(--main);
    }
    .footer_nav {
        margin-top: 15px;
        text-align: center;
    }
    .footer_nav li {
        display: inline-block;
        font-size: 1.2rem;
    }
    .footer_nav li a {
        padding: 0 2rem;
    }
    .footer_nav li:before {
        content: "/";
        display: inline-block;
        vertical-align: text-bottom;
    }
    .footer_nav li:first-child::before{
        content: none;
      }
    address {
        font-size: 1.4rem;
        text-align: center;
        color: #fff;
        background: var(--main);
        padding: 3.5rem 0 9rem;
    }
    @media screen and (max-width:767px) {
            footer {
                margin-top: 3rem;
            }
            .footer_bnr img {
                width: 100%;
            }
            .footer_inner {
                padding: 5rem 0;
            }
            .footer_inner .logo {
                width: 60%;
            }
            .footer_inner .text {
                font-size: 1.1rem;
            }
            .footer_inner .tel {
                font-size: 2.0rem;
            }
            .footer_nav {
                display: none;
            }
            address {
                font-size: 0.9rem;
                padding: 1.5rem 0 4rem;
            }
    }

/* =========================================================
   ✅ トップ_動画エリア
   ========================================================= */
        /* 動画エリアPC */
        .movie-area {
            background: #e5e9ed;
            padding: 5rem 0;
            height: 650px;
        }
        .movie-frame {
            margin: 0 auto;
            width: 50%;
            text-align: center;
        }
        .movie-frame iframe {
            width: 100%;
            height: 500px;
        }
@media (max-width: 767px) {
.movie-area {
    padding: 3rem 1rem;
}
.movie-frame {
    width: 100%;
}
.movie-frame iframe {
    height: 250px;
}
}

/* =========================================================
   ✅ ギャラリー
   ========================================================= */
.gallery {
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
}

.gallery br {display: none;}

.gallery-item {
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon {
    text-align: center;
}
.gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 10px !important;
}
.gallery-caption {
    color: #222;
    font-size: 12px;
    margin: 0 0 10px;
    text-align: center;
}
.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
    margin-right: 0;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 23%;
    margin: 0 1%;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 18%;
    margin: 0 1%;
}

@media screen and (max-width: 640px) {
	.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
}


/* =========================================================
   ✅ 物件情報ページ
   ========================================================= */
.estate_property table {
    width: 100%;
}
.estate_property th {
    padding: 10px;
    border: 1px solid #ccc;
    width: 25%;
    background: #faf8f6 !important;
    vertical-align: top;
    overflow-wrap: break-word;
}
.estate_property td {
    padding: 10px;
    border: 1px solid #ccc;
    background: #fff;
    vertical-align: top;
    overflow-wrap: break-word;
}
.estate_datail table {
    width: 100%;
}
@media screen and (min-width: 768px) {
    .estate_property {
        text-align: left;
        font-size: 1.6rem;
        margin-bottom: 3.0rem;
        color: #686F74;
        width: 100%;
        table-layout: fixed;
    }
    .estate_datail {
        text-align: left;
        font-size: 1.3rem;
        margin-bottom: 3.0rem;
        color: #686F74;
        width: 100%;
        table-layout: fixed;
    }
    .estate_datail th {
        padding: 10px;
        border: 1px solid #ccc;
        width: 15%;
        background: #faf8f6 !important;
        vertical-align: top;
        overflow-wrap: break-word;
    }
    .estate_datail td {
        padding: 10px;
        border: 1px solid #ccc;
        background: #fff;
        vertical-align: top;
        overflow-wrap: break-word;
    }
}
@media screen and (max-width: 767px) {
    .estate_property {
        text-align: left;
        font-size: 1.0rem;
        margin-bottom: 3.0rem;
        color: #686F74;
        width: 100%;
        table-layout: fixed;
    }
    .estate_datail {
        text-align: left;
        font-size: 1.0rem;
        margin-bottom: 3.0rem;
        color: #686F74;
        width: 100%;
        table-layout: fixed;
    }

    .estate_datail th {
        padding: 10px;
        border: 1px solid #ccc;
        width: 22%;
        background: #faf8f6 !important;
        vertical-align: top;
        overflow-wrap: break-word;
    }

    .estate_datail td {
        padding: 10px;
        border: 1px solid #ccc;
        background: #fff;
        vertical-align: top;
        overflow-wrap: break-word;

    }
}

/* ページ送り */
@media screen and (min-width: 768px) {
    .page_feed {
        display: flex;
        justify-content: space-around;
        font-size: 1.6rem;
    }
}
@media screen and (max-width: 767px) {
    .page_feed {
        display: flex;
        justify-content: space-around;
        font-size: 1.2rem;
    }
}



/* banner_sec */
.banner_sec {
    padding: 4rem 0;
}

@media screen and (min-width: 768px) {
    .banner_sec ul {
        display: flex;
        width: 100%;
        justify-content: space-around;
    }
}
@media screen and (max-width: 767px) {
    .banner_sec ul {
        display: block;
        width: 100%;
        margin: 0 auto;
    }
    .banner_sec li {
        width: 70%;
        margin: 20px auto;
    }
}

/* blog */
#blog div {
    margin: 4rem auto;
}
#blog ul li{
    margin: 1rem auto;
}
