/* 共通 */
/* 色memo
#EB5E00：オレンジ
#494D9E：青紫
#6DAA31：緑
*/

/* ---- 共通タグ ---------------- */
label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
}
input[type=checkbox], input[type=radio] {
    width: 20px;
    height: 14px;
    margin: 0 0 2px 2px;
    line-height: normal;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
}
input, button, textarea, select {
    max-width: 100%;
}

/* テキスト */
.text-center {text-align: center !important;}
.text-right  {text-align: right !important;}
.text-left   {text-align: left !important;}

/* margin */
.ms-0 {margin-left: 0 !important;}
.ms-1 {margin-left: 0.25rem !important;}
.ms-2 {margin-left: 0.5rem !important;}
.ms-3 {margin-left: 1.0rem !important;}
.ms-4 {margin-left: 1.5rem !important;}
.ms-5 {margin-left: 2.0rem !important;}
.me-0 {margin-right: 0 !important;}
.me-1 {margin-right: 0.25rem !important;}
.me-2 {margin-right: 0.5rem !important;}
.me-3 {margin-right: 1.0rem !important;}
.me-4 {margin-right: 1.5rem !important;}
.me-5 {margin-right: 2.0rem !important;}
.mt-0 {margin-top: 0 !important;}
.mt-1 {margin-top: 0.25rem !important;}
.mt-2 {margin-top: 0.5rem !important;}
.mt-3 {margin-top: 1.0rem !important;}
.mt-4 {margin-top: 1.5rem !important;}
.mt-5 {margin-top: 2.0rem !important;}
.mb-0 {margin-bottom: 0 !important;}
.mb-1 {margin-bottom: 0.25rem !important;}
.mb-2 {margin-bottom: 0.5rem !important;}
.mb-3 {margin-bottom: 1.0rem !important;}
.mb-4 {margin-bottom: 1.5rem !important;}
.mb-5 {margin-bottom: 2.0rem !important;}
@media screen and (max-width: 768px) {
    .sp-ms-0 {margin-left: 0 !important;}
    .sp-ms-1 {margin-left: 0.25rem !important;}
    .sp-ms-2 {margin-left: 0.5rem !important;}
    .sp-ms-3 {margin-left: 1.0rem !important;}
    .sp-ms-4 {margin-left: 1.5rem !important;}
    .sp-ms-5 {margin-left: 2.0rem !important;}
    .sp-me-0 {margin-right: 0 !important;}
    .sp-me-1 {margin-right: 0.25rem !important;}
    .sp-me-2 {margin-right: 0.5rem !important;}
    .sp-me-3 {margin-right: 1.0rem !important;}
    .sp-me-4 {margin-right: 1.5rem !important;}
    .sp-me-5 {margin-right: 2.0rem !important;}
    .sp-mt-0 {margin-top: 0 !important;}
    .sp-mt-1 {margin-top: 0.25rem !important;}
    .sp-mt-2 {margin-top: 0.5rem !important;}
    .sp-mt-3 {margin-top: 1.0rem !important;}
    .sp-mt-4 {margin-top: 1.5rem !important;}
    .sp-mt-5 {margin-top: 2.0rem !important;}
    .sp-mb-0 {margin-bottom: 0 !important;}
    .sp-mb-1 {margin-bottom: 0.25rem !important;}
    .sp-mb-2 {margin-bottom: 0.5rem !important;}
    .sp-mb-3 {margin-bottom: 1.0rem !important;}
    .sp-mb-4 {margin-bottom: 1.5rem !important;}
    .sp-mb-5 {margin-bottom: 2.0rem !important;}
}
/* padding */
.ps-0 {padding-left: 0 !important;}
.ps-1 {padding-left: 0.25rem !important;}
.ps-2 {padding-left: 0.5rem !important;}
.ps-3 {padding-left: 1.0rem !important;}
.ps-4 {padding-left: 1.5rem !important;}
.ps-5 {padding-left: 2.0rem !important;}
.pe-0 {padding-right: 0 !important;}
.pe-1 {padding-right: 0.25rem !important;}
.pe-2 {padding-right: 0.5rem !important;}
.pe-3 {padding-right: 1.0rem !important;}
.pe-4 {padding-right: 1.5rem !important;}
.pe-5 {padding-right: 2.0rem !important;}
.pt-0 {padding-top: 0 !important;}
.pt-1 {padding-top: 0.25rem !important;}
.pt-2 {padding-top: 0.5rem !important;}
.pt-3 {padding-top: 1.0rem !important;}
.pt-4 {padding-top: 1.5rem !important;}
.pt-5 {padding-top: 2.0rem !important;}
.pb-0 {padding-bottom: 0 !important;}
.pb-1 {padding-bottom: 0.25rem !important;}
.pb-2 {padding-bottom: 0.5rem !important;}
.pb-3 {padding-bottom: 1.0rem !important;}
.pb-4 {padding-bottom: 1.5rem !important;}
.pb-5 {padding-bottom: 2.0rem !important;}
@media screen and (max-width: 768px) {
    .sp-ps-0 {padding-left: 0 !important;}
    .sp-ps-1 {padding-left: 0.25rem !important;}
    .sp-ps-2 {padding-left: 0.5rem !important;}
    .sp-ps-3 {padding-left: 1.0rem !important;}
    .sp-ps-4 {padding-left: 1.5rem !important;}
    .sp-ps-5 {padding-left: 2.0rem !important;}
    .sp-pe-0 {padding-right: 0 !important;}
    .sp-pe-1 {padding-right: 0.25rem !important;}
    .sp-pe-2 {padding-right: 0.5rem !important;}
    .sp-pe-3 {padding-right: 1.0rem !important;}
    .sp-pt-4 {padding-top: 1.5rem !important;}
    .sp-pt-5 {padding-top: 2.0rem !important;}
    .sp-pt-0 {padding-top: 0 !important;}
    .sp-pt-1 {padding-top: 0.25rem !important;}
    .sp-pt-2 {padding-top: 0.5rem !important;}
    .sp-pt-3 {padding-top: 1.0rem !important;}
    .sp-pt-4 {padding-top: 1.5rem !important;}
    .sp-pt-5 {padding-top: 2.0rem !important;}
    .sp-pb-0 {padding-bottom: 0 !important;}
    .sp-pb-1 {padding-bottom: 0.25rem !important;}
    .sp-pb-2 {padding-bottom: 0.5rem !important;}
    .sp-pb-3 {padding-bottom: 1.0rem !important;}
    .sp-pb-4 {padding-bottom: 1.5rem !important;}
    .sp-pb-5 {padding-bottom: 2.0rem !important;}
}

.px-5pct {
    padding-left: 5%;
    padding-right: 5%;
}

/* セクション間のトップマージン */
/* （施工事例） */
.section-margin-top {
    margin-top: 60px;
}

/* トップ画像 */
.main-header::before {
    content: "";
    position: absolute;
    top: 0;  bottom: 0;
    left: 0;  right: 0;
    background: black;
    opacity:0.2;
}
.main-header.optdark0::before { opacity:0.0; }
.main-header.optdark1::before { opacity:0.1; }
.main-header.optdark2::before { opacity:0.2; }
.main-header.optdark3::before { opacity:0.3; }
.main-header.optdark4::before { opacity:0.4; }
.main-header.optdark5::before { opacity:0.5; }
.main-header.optdark6::before { opacity:0.6; }
.main-header.optdark7::before { opacity:0.7; }
.main-header.optdark8::before { opacity:0.8; }
.main-header.optdark9::before { opacity:0.9; }
.main-header.optdark10::before { opacity:1.0 }

.btn-navi {
/*    border: 1px solid transparent;*/
}
.btn-navi:hover {
    opacity: 0.9;
    transition: all .2s;
/*    background-color: rgb(235 94 0 / 40%);*/
}

/* ただいま〇〇情報はございません */
.contents-infomation {
    margin: 40px 0;
    padding: 40px 0;
    text-align: center;
}
.contents-notdata p {
    margin-top: 0;
    font-size: 21px;
    color: #585858;
}

/* テーブル */
table.d_table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}
.d_table th, .d_table td {
    padding: 10px;
    border: 1px solid #ddd;
}
.d_table th {
    width: 30%;
    text-align: left;
    vertical-align: middle;
    min-width: 110px;
}
.d_table th {
    background: #f4f4f4;
}
@media screen and (max-width: 768px) {
    table.d_table{
        font-size: 90%;
    }
}

/* デフォルトボタン */
.btn-default {
    border: solid 1px #585858;
    border-radius: 2px;
    background: #fff;
    width: 300px;
    padding: 10px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    letter-spacing: 1px;
    line-height: 1.4;
    color: #333;
}
.btn-default:hover {
    background-color: #585858;
    color: #fff;
}
@media screen and (max-width: 768px) {
    .btn-default {
        width: 130px;
    }
}


/* 共通 */
.red {
    color: #F00;
}
.main-header.no-header {
    height: 0;
    background-image: none;
}
.main-header.no-header:before {
 content: none;
}
.main-header.no-header:after {
 content: none;
}
.w-100 {
    width: 100%;
}
.w-auto {
    width: auto;
}

/* 共通トップビュー */
.contents-header {
    background: #EFEFEF;
    margin: 0;
    padding: 20px 10px;
}

.contents-title{
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing:0.1em;
}




/* ---- 会社紹介 ---------------- */
/* タイトル */
.about-title{
    margin: 30px 0;
    padding: 15px 3%;
    border-top: solid #E5E5E5 2px;
    border-bottom: solid #E5E5E5 2px;
    font-size: 1.5em;
    font-weight: 700;
}
/* 会社概要 */
.about-table{
    margin: 10px 30px;
    border: solid #E5E5E5 1.4px;
}
.about-table .table-row{
    border: solid #E5E5E5 1.4px;
    display: flex;
}
.about-table .th{
    padding: 15px;
    background-color: #DCDDDD;
    border-right: solid #E5E5E5 1.4px;
    flex-basis: 30%;
}
.about-table .td{
    padding: 15px 20px;
    flex-basis: 70%;
}

/* 店舗紹介 */
.orange.btn:hover{
    background-color: #EB5E00;
    color: #fff;
}
.intro{
    margin-top: 100px;
}
.about-tenpo{
    padding: 0 3%;
}
.about-tenpo-1{
    display: flex;
    align-items: center;
    gap: 1%;
}
.about-tenpo-1-1{
    flex-basis: 45%;
}
.about-tenpo-1-2{
    flex: 1;
}
.about-tenpo-1-1 h3{
    color: #EB5E00;
    font-size: 26px;
    font-weight: normal;
    margin-bottom: 5px;
}
.kyouto .about-tenpo-1-1 h3{
    color: #494D9E;
}
.about-tenpo-1-1-1{
    border: solid 1px #000;
    padding: 10px;
    margin-bottom: 10px;
}
.about-tenpo-1-1-3{
    margin-top: 10px;
    max-width: 380px;
}
.about-tenpo-2{
    display: flex;
    gap: 1%;
    justify-content: space-between;
    margin-top: 30px;
}
.about-tenpo-2-1{
    flex-basis: 32%;
}
.about-tenpo-3{
    margin-top: 30px;
    margin-bottom: 50px;
}
.about-tenpo-3-1 span{
    color: #EB5E00;
    margin-right: 3px;
    font-size: 18px;
}
.about-tenpo-3-2{
    margin: 10px 0;
}
.about-tenpo-3-3{
    border: solid 1px #CCCCCC;
    max-width: 300px;
    padding: 15px;
    text-align: center;
    margin: 0 auto;
    position: relative;
}

@media screen and (max-width: 768px) {
    /* 会社紹介 */
    .about-table{
        margin: 0;
    }
    .about-tenpo-1{
        flex-direction: column;
    }
    .about-tenpo-3-2 iframe{
        height: 300px;
    }
}




/* ---- 買いたい／借りたい ---------------- */

/* フォーム */
.form-group {
    min-height: 50px;
    margin: 0px 15px;
    padding: 5px;
}
@media screen and (min-width: 992px) {
    .form-group {
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
.form-horizontal .form-group {
    margin-right: -5px;
    margin-left: -5px;
}
.form-group label {
    margin-bottom: 0px;
}
.form-standard .form-group label {
    font-weight: 400;
}
.form-standard input[type="radio"]+label, .select-label {
    margin-right: 20px;
}


/* ページング */
.page-right {
    text-align: right;
}
.page-center {
    text-align: center;
}
.pagination,
.searchselect {
    margin-top: 20px;
    margin-bottom: 10px;
}
.pagination {
    display: inline-block;
    padding-left: 0;
    margin: 20px 0;
    border-radius: 4px;
}
.pagination>li {
    display: inline;
}
.pagination>li>a,
.pagination>li>span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    text-decoration: none;
    background-color: #fff;
}
.pagination>li>a,
.pagination>li>span {
    border: 1px solid #8A8A8A;
    color: #585858;
    font-size: 0.9rem;
}
.pagination>li:first-of-type>a,
.pagination>li:first-of-type>span {
    margin-right: 2px;
}
.pagination>li:last-of-type>a,
.pagination>li:last-of-type>span {
    margin-left: 2px;
}
.pagination>li:not(:first-of-type):not(:last-of-type)>a,
.pagination>li:not(:first-of-type):not(:last-of-type)>span {
    margin: 0 2px;
}

.pagination a:hover,
.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
    cursor: pointer;
    border-color: #8A8A8A;
    background-color: #585858;
    color: #fff;
    z-index: 3;
}


/* 物件条件 */
.search{
    font-size: 0.9rem;
}
.search select {
    font-size: 0.9rem;
    font-weight: 400;
}
.search-title{
    padding: 10px 1%;
    border: none;
    border-bottom: solid #808080 1px;
    font-size: 1.4rem;
    font-weight: 400;
}
.panel {
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
    box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
}
.panel-search {
    border: 3px solid #585858;
    margin: 10px 30px;
}
.panel-search .panel-body {
    padding: 5px 15px;
}
.panel-footer {
    padding: 10px 15px;
    background-color: #f5f5f5;
    border-top: 1px solid #ddd;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}
.form-group:not(:last-child) {
    border-bottom: 1px dashed #ccc;
}

.btn-standard {
    margin: 0;
    padding: 0;
    border: solid 1px #585858;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    background: #fff;
    color: #585858;
    min-width: 200px;
    padding: 10px;
    text-align: center;
    letter-spacing: 1px;
    z-index: 9;
}
.btn-base {
    padding: 0.65rem;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    color: #585858;
    background-color: transparent;
    border: 1px solid #585858;
    border-radius: 0.2rem;
    box-shadow: inset 0 1px 0 hsla(0,0%,100%,.15),0 1px 1px rgba(0,0,0,.075);

    cursor: pointer;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
}
.motion {
    -webkit-transition: all .2s ease;
    -moz-transition: all .2s ease;
    -ms-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
}

.btn-search {
    border: solid 2px #6C6C6C;
    border-radius: 2px;
    background: #fff;
    max-width: 300px;
    min-width: 200px;
    padding: 10px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    letter-spacing: 0.5px;
    color: #333;
}
.btn-searcht:hover {
/*
    background-color: #585858;
    color: #fff;
*/
    opacity: 0.7;
    transition: all .2s;
}
@media screen and (max-width: 768px) {
    .panel-search {
        margin: 10px 0px;
    }
}



/* ---- 物件一覧 ---------------- */
@media (min-width: 768px) {
    .sm-row-eq-height {
        display: flex;
        flex-wrap: wrap;
    }
}

.search,
.estste,
.rental {
    margin-top: 40px;
}

/* （買いたい） */
.estste-box {
    background-color: rgba(0,0,0,0.0);
    padding: 10px 15px;
    overflow: hidden;
    margin-bottom: 40px;
}
.estste-box-inner {
    background-color: #fff;
    height: 100%;
    border: 1px solid #585858;

    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-between;
}

.estste-kbn {
    display: inline-block;
    background-color: #444;
    color: #fff;
    margin: 0;
    padding: 8px;
    width: 100%;
    text-align: center;
    line-height: 1.2;
}
.estste-link {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 100%;
}
.estste-link a {
    display: block;
    background-color: #444;
    color: #fff;
    margin: 0;
    padding: 8px;
    width: 100%;
    text-align: center;
    line-height: 1.4;
    font-size: 0.9rem;
}
.estste-link a:hover {
    opacity: 0.7;
    transition: all .2s;
}

.estste-photo {
    padding: 10px 10px 0 10px;
    position: relative;
    margin-bottom: 0px;
    height: 175px;
}

.estste-photo ul{
    display: flex;
    justify-content: center;
    max-height: 200px;
}
.estste-photo ul {
    text-align: center;
}
.estste-photo ul li:nth-child(2) {
    margin: 0 0 0 10px;
}
.estste-photo img {
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 100%;
    max-height: 150px;
}

.estste-info {
    padding: 10px;
}
.estste-info-text {
    font-size: 0.8rem;
    line-height: 1.5;
    letter-spacing: 0.02rem;
}
.estste-info-price {
    margin: 0.5rem 0;
    font-size: 0.8rem;
    text-align: center;
}
.estste-info-price span {
    color: #EB5E00;
    font-family: sans-serif;
    font-size: 2.2rem;
    font-weight: 600;
}
.estste-info-price img {
    max-width: 100%;
    padding: 0 10%;
}
.estste-info-note {
    color: #EB5E00;
    font-size: 0.9rem;
    line-height: 1.6;
    min-height: 3.0rem;
    letter-spacing: 0em;
}

.ellipsis,
.ellipsis1,
.ellipsis2 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.ellipsis1 {
    -webkit-line-clamp: 1;
}
.ellipsis2 {
    -webkit-line-clamp: 2;
}

/* （買いたい） */
.rental .estste-kbn {
    background-color: #6DAA31;
    color: #fff;
}
.rental .estste-link a {
    background-color: #6DAA31;
}
.rental .estste-info-price span {
    color: #6DAA31;
}
.rental .estste-info-note {
    color: #6DAA31;
}


/* 京都・滋賀以外の物件をお探しの方はコチラ */
.a-text-btn {
    width: 380px;
    margin: 0 auto;
    max-width: 100%;
}
.a-text-btn a.btn {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 10px;
    border-radius: 2px;
    border: 1px solid #585858;
    letter-spacing: 0.5px;
    line-height: 1.3;
    min-height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.estste-other{
    margin-top: 40px;
}
.estste-other-button {
    border-top: 1px solid #585858;
    padding: 20px 0;
}
.estste-other-button .a-text-btn {
    margin-top: 30px;
    margin-bottom: 20px;
}

/* 矢印 */
.arrow-right {
  display: flex;
}
.arrow-right::after {
    content: '';
    width: 100px;
    height: 15px;
    border-bottom: solid 1px;
    border-right: solid 1px;
    transform: skew(45deg);
    margin-right: 10px;
    margin-left: 10px;
}

.arrow-left {
    display: flex;
}
.arrow-left::after {
    content: '';
    width: 100px;
    height: 15px;
    border-bottom: solid 1px;
    border-left: solid 1px;
    transform: skew(135deg);
    margin-right: 10px;
    margin-left: 10px;
}

/* 矢印（買いたい） */
.estste-arrow-right {
    display: inline-flex;
  }
.estste-arrow-right::after {
    content: '';
    width: 80px;
    height: 10px;
    border-bottom: solid 1px;
    border-right: solid 1px;
    transform: skew(45deg);
    margin-right: 0px;
    position: relative;
    bottom: 3px;
}

/* ただいま物件情報はございません */
.estste-infomation {
    margin: 40px 0;
    padding: 40px 0;
    text-align: center;
}
.estste-notdata p {
    margin-top: 0;
    font-size: 21px;
    color: #585858;
}




/* ---- 施工事例 ---------------- */
/* （施工事例一覧）*/
.example {
    margin-top: 40px;
}
.example-title{
    padding: 10px 2%;
    border: 2px solid #585858;
    font-weight: 700;
    font-size: 28px;
    text-shadow: 4px 4px 4px rgb(200 200 200);
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 30px;
}
.example-box {
    margin-bottom: 30px;
}
.example-box-inner {
    height: 100%;
}
.example-photo-box {
    padding: 0px;
    position: relative;
/*    margin-bottom: 5px;*/
    border: 1px solid #585858;
    display: flex;
    justify-content: space-between;
}
.example-photo{
    width: 100%;
    background: #eee;
    position: relative;
    overflow: hidden;
}
.example-photo::before{
    content: "";
    padding-top: 100%;
    display: block;
}
.example-photo img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: contain;
}
.example-info {
    padding: 10px 15px;
}
.example-info-text {
    font-size: 0.9rem;
    line-height: 1.5;
}
.example-info-note {
    color: #EB5E00;
    font-size: 0.9rem;
    line-height: 1.6;
    min-height: 3.0rem;
    text-align: center;
}
.example-link {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 100%;
}
.example-link a {
    display: block;
    background-color: #444;
    color: #fff;
    margin: 0;
    padding: 8px;
    width: 100%;
    text-align: center;
    line-height: 1.4;
    font-size: 0.9rem;
}
.example-link a:hover {
    opacity: 0.7;
    transition: all .2s;
}

.example-button-block-start {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.example-button-block-end {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.example-button-block-center {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.example-button {
    padding: 10px 0;
}
@media screen and (max-width: 768px) {
    .example-title {
        padding: 8px 2%;
        font-size: 1.6rem;
        margin-bottom: 20px;
    }
}
/* (施工事例詳細) */
.example-first-box {
    border-top: 1.5px solid #444;
    border-bottom: 1.5px solid #444;
    padding: 15px;
    margin-bottom: 30px;
}
.example-details-box {
    padding: 0px;
    margin-bottom: 30px;
}
.example-details-box-inner {
    height: 100%;
}

.example-details-info {
    padding: 10px 10px;
}
.example-details-info-title {
    font-size: 1.6rem;
    line-height: 1.8;
    font-weight: 400;
}
.example-details-info-note {
    color: #EB5E00;
    font-size: 1.0rem;
    line-height: 1.8;
    margin-top: 10px;
}
.example-details-info-text {
    font-size: 1.0rem;
    line-height: 1.6;
    min-height: 3.0rem;
    text-align: center;
}
.example-details-photo-box {
    padding: 0px;
    position: relative;
    border: 1px solid #898989;
    display: flex;
    justify-content: space-between;
}
.example-first-box .example-details-photo-box {
    padding: 0px;
    position: relative;
    border: 0;
}
.example-details-photo{
    width: 100%;
    background: transparent;
    position: relative;
    overflow: hidden;
}
.example-details-photo::before{
    content: "";
    padding-top: 100%;
    display: block;
}
.example-details-photo img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: contain;
}
.example-button-block {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
}




/* ---- お問い合わせ・無料査定 ---------------- */
.contact,
.satei {
    margin-top: 40px;
}

/* 進捗 */
.contact-progress {
    margin: 25px auto 0px;
    display: flex;
    justify-content: space-around;
}
.contact-progress-group {
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.contact-progress-group > * + * {
    margin-left: 0.5em;
}
.contact-progress-line {
    margin-left: 0.75em;
    margin-right: 0.75em;
    content: '';
    width: 50px;
    height: 1px;
    display: inline-block;
    background-color: #585858;
    position: relative;
    flex-grow: 1;
}
.contact-progress-item{
    font-size: 1.3rem;
    display: flex;
    align-items: center;
}
.contact-progress-item:not(:first-child) {
    flex-grow: 1;
}
.contact-progress-item:last-child {
    margin-left: auto;
}
@media screen and (max-width: 768px) {
    .contact-progress {
        font-size: 1.0rem;
    }
    .contact-progress-line {
        margin-left: 0.5em;
        margin-right: 0.5em;
        width: 30px;
        top: -6px;
    }
}

/* 進捗番号（丸囲い数値） */
.circle_number {
    width: 2.0rem;
    height: 2.0rem;
    position: relative;
    font-size: 1.5rem;
    background-color: #fff;
    border-radius: 50%;
    text-align: center;
    box-sizing: border-box;
    margin-right: 5px;
    display: inline-block;
    padding-top: 3px;
    line-height: 1;
}
.circle_number.active {
    background-color: #EB5E00;
    color: #fff;
}
.satei-progress .circle_number.active {
    background-color: #494D9E;
    color: #fff;
}

@media screen and (max-width: 768px) {
    .contents-title{
        font-size: 1.4rem;
    }
    .circle_number {
        width: 1.4rem;
        height: 1.4rem;
        padding-top: 0.1rem;
        top: -0.1rem;
        font-size: 1.0rem;
    }
}

/* お問い合わせコンテンツ */
.contact-info{
    font-size: 0.9rem;
    line-height: 1.4;
    padding-bottom: 10px;
}
.contact-table {
    font-size: 0.8rem;
    margin-bottom: 30px;
}
.contact-table p {
    line-height: 1.4;
    padding-bottom: 5px;
}
.contact-footer {
    margin-top: 50px;
    padding: 30px 10px 40px;
    background: #EFEFEF;
}
.contact-body {
    margin-top: 10px;
    background: #fff;
    padding: 10px;
}

/* inputサイズ用 */
.size2, .size3, .size4, .size5,
.size6, .size7, .size8, .size9,
.size10, .size15, .size20, .size30, .size40,
.size50, .size60, .size70, .size80, .size90 {
    width: 100%;
}
.size2 {max-width: 2em;}
.size3 {max-width: 3em;}
.size4 {max-width: 4em;}
.size5 {max-width: 5em;}
.size6 {max-width: 6em;}
.size7 {max-width: 7em;}
.size7 {max-width: 8em;}
.size8 {max-width: 9em;}
.size10 {max-width: 10em;}
.size15 {max-width: 15em;}
.size20 {max-width: 20em;}
.size30 {max-width: 30em;}
.size40 {max-width: 40em;}
.size50 {max-width: 50em;}
.size60 {max-width: 60em;}
.size70 {max-width: 70em;}
.size80 {max-width: 80em;}
.size90 {max-width: 90em;}

/* お問い合わせのプライバシー表示 */
.privacy-simpltext-box {
    font-size: 0.8rem;
    padding: 0 10%;
    line-height: 1.6;
}
.privacy-simpltext-box p {
    margin-bottom: 1rem;
}

.privacy-link {
    margin-top: 10px;
    text-align: end;
    font-size: 0.9rem;
}
.link-default {
    /*text-decoration:underline;*/
    border-bottom:1px solid;
}
.link-default:hover {
    color:#EB5E00;
}




/* ---- 個人情報の取り扱いについて（プライバシーポリシー）---------------- */
.privacy {
    margin-top: 40px;
}
.privacy-header,
.privacy-body {
    padding: 0 5%;
    line-height: 1.8;
}
.privacy-header {
    padding-bottom: 20px;
}
.privacy-body {
    padding-bottom: 30px;
}
.privacy-header p {
    font-size: 0.9rem;
    text-indent: -0.5em;
    padding-left: 0em;
}
.privacy-body h2 {
    font-size: 1.0rem;
    margin-top: 1rem;
    font-weight: 700;
}
.privacy-body ol,
.privacy-body p {
    font-size: 0.8rem;
    margin-left: 1rem;
}
/* 区切り線（共通） */
.separat-line {
    background-image : linear-gradient(to right, #808080, #808080 3px, transparent 3px);  /* 幅2の線を作る */
    background-size: 6px 0.5px;          /* グラデーションの幅・高さを指定 */
    background-position: left bottom;  /* 背景の開始位置を指定 */
    background-repeat: repeat-x;       /* 横向きにのみ繰り返す */
    margin: 25px 0;
    height: 1px;
}

/* ol ul インデント */
ul.indent1 li, ol.indent1 li {
    text-indent: -1em;
    padding-left: 1em;
}
ul.indent2 li, ol.indent2 li {
    text-indent: -2em;
    padding-left: 2em;
}
ul.indent3 li, ol.indent3 li {
    text-indent: -3em;
    padding-left: 3em;
}




/* ---- 物件詳細 ---------------- */
/* （共通）*/
.header-line {
    border-top: 1px solid #9FA0A0;
    height: 1px;
}
.header-initial {
    height: auto;
    background-image: none;
    margin: 0;
}
.header-initial::before {
    position:inherit;
    background:inherit;
    opacity:inherit;
}

/* （物件詳細） */
.estste-details-media {
    margin-top: 20px;
}
.estste-details-body {
    margin-top: 40px;
}
.estste-details-footer {
    margin-top: 30px;
}

.details-caption {
    position: relative;
    margin: 20px 30px;
    padding: 10px 10px;
    color: #fff;
    border-radius: 4px;
    background: #EB5E00;
    line-height: 1.4;
}
.estste-details {
    margin-top: 40px;
/*    padding: 0 8%; */
}
@media screen and (max-width: 768px) {
    .details-caption {
        margin: 20px 0;
        font-size: 0.9rem;
    }
}

/* 写真表示 */
.slider-for {
    width: 100%;
    height: 100%;
    background-color: #DCDDDD;
    margin: auto;
    padding: 0;
}
.slider-for img {
    display: block;
    width: 100%;
    height: 600px;
    object-fit: scale-down;
    /*object-fit: cover;*/
    padding: 20px 20px!important;
    content-visibility: auto;
    contain-intrinsic-size: 600px;
}
@media screen and (max-width: 768px) {
    .slider-for img{
        height: 400px;
    }
}
.slider-nav {
  width: 100%;
  margin: auto;
  background-color: #DCDDDD;
  margin-top: 20px;
  padding: 10px 20px;
}
@media screen and (max-width: 768px) {
    .slider-nav {
        width: calc(100% - 72px);
    }
}
.slider-nav img{
    width: 200px;
    height: 150px;
    object-fit: cover;
    object-fit: scale-down;
    padding: 0px !important;
    content-visibility: auto;
    contain-intrinsic-size: 150px;
}
.slick-prev, .slick-next {
    width: 36px;
    height: 36px;
}
.slick-prev:before,
.slick-next:before {
  color: #000;
  font-size: 36px;
}
.slick-prev{
    left: -36px;
}
.slick-next{
    right: -36px;
}

/* （物件詳細テーブル） */
.estste-details-table {
    width: 100%;
    margin: 40px auto 0px;
    line-height: 1.5;
    font-size: 0.9rem;
}
.estste-details-table th {
    border: 1px solid #ccc;
    background-color: #eee;
    font-weight: normal;
    padding: 4px 8px;
}
.estste-details-table td {
    border: 1px solid #ccc;
    background-color: #ffffff;
    padding: 6px;
}
.estste-details-table td.price img {
    height: 40px;
    object-fit: contain;
    width: auto;
}

/*（物件詳細　フッターボタン）*/
.btn-block {
    border: solid 1px #585858;
    border-radius: 2px;
    background: #fff;
    width: 100%;
    margin: 0;
    padding: 15px 20px;
    letter-spacing: 1.2px;
    line-height: 1.4;
    max-height: 72px;
    text-align: center;
    position: relative;
    box-shadow: inset 0 1px 0 hsla(0,0%,100%,.15),0 1px 1px rgba(0,0,0,.075);
}

.btn-block-box {
    margin: 0 auto;
    width: 700px;
    max-width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 50px;
    flex-wrap: wrap;
}
.btn-block-twobtn .btn {
    flex-basis: 48%;
}
@media screen and (max-width: 768px) {
    .btn-block-twobtn {
        flex-direction: column;
    }
    .btn-block-twobtn .btn {
        flex-basis: auto;
    }
    .btn-block-twobtn .btn:not(:first-child) {
        margin-top: 20px
    }
}

/* （物件詳細　一覧に戻るボタン）*/
.btn-arrow {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 15px;
    border-radius: 2px;
    border: 1px solid #585858;
    letter-spacing: 0.5px;
    line-height: 1.3;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-arrow:hover {
    color: #333;
    background-color: #f2f2f2;
    opacity: 1.0;
}
.btn-block-arrow {
    background-color: #FFF;
    font-size: 1.2rem;

    display: flex;
    justify-content: center;
    align-items: center;
}
.btn-block-arrow:hover {
    background-color: #f2f2f2;
    opacity: 1.0;
}
.btn-block-close {
    background-color: #FFF;
    font-size: 1.2rem;
}
.btn-block-close:hover {
    background-color: #f2f2f2;
    opacity: 1.0;
}


/* （物件詳細　地図を見るボタン）*/
.btn-block-maplink {
    background-color: #6DAA31;
    border-color: transparent;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;

    display: flex;
    justify-content: center;
    align-items: center;
}
a.btn-block-maplink:hover {
    color: #fff;
    background-color: #6DAA31;
    opacity: 0.8;
}
/* （物件詳細　お問い合わせボタン）*/
.btn-block-contact {
    background-color: #EB5E00;
    border-color: transparent;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;

    display: flex;
    justify-content: center;
    align-items: center;
}
a.btn-block-contact:hover {
    color: #fff;
    background-color: #EB5E00;
    opacity: 0.8;
}
.btn-block-maplink img,
.btn-block-contact img {
    width: auto;
    height: 40px;
    margin-right: 2rem;
}

/* （物件詳細　TELボタン）*/
.btn-block-tel {
    border-color: #444;
    color: #EB5E00;
    font-family: 'Noto Serif JP', serif;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 5px;
}
a.btn-block-tel:hover {
    color: #EB5E00;
    background-color: #ffede0;
    opacity: 1.0;
}
.btn-block-tel.tenpo2 {
    color: #494D9E;
}
a.btn-block-tel.tenpo2:hover {
    color: #494D9E;
    background-color: #eeeef7;
    opacity: 1.0;
}

.btn-block-tel .tel1 {
    font-size: 1.0rem;
    font-weight: 700;
    line-height: 1;
    padding-bottom: 2px;
}
.btn-block-tel .tel2 {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 0;
    padding: 0;
    margin-bottom: 4px;
    padding-bottom: 4px;
}
.bunjyo-footer .btn-block-tel .tel2 {
    font-size: 1.6rem;
}


.btn-block-tel .tel2 img {
    height: 24px;
    width: auto;
    margin-right: 0.5rem;
}
.btn-block-tel .tel2 .tel-iconimage {
    width: 24px;
    height: 24px;
 }
.tenpo2.btn-block-tel .tel2 img {
    visibility: hidden;
}
.tenpo2.btn-block-tel .tel2 .tel-icon {
    background-image: url("../img/phone-kita.png");
    background-repeat: no-repeat;
    background-position:left center;
    background-size:contain;
}

.btn-block-tel .tel2::after{
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #EB5E00;
    position: absolute;
    bottom: 0px;
    left: 0px;
}
.btn-block-tel.tenpo2 .tel2::after{
    background-color: #494D9E;
}
.btn-block-tel .tel3 {
    font-size: 0.3rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 768px) {
    .btn-block-tel {
        height: auto;
    }
    .btn-block-tel .tel1 {
        font-size: 1.2rem;
    }
    .btn-block-tel .tel2  {
        /*font-size: 1.8rem;*/
    }
    .btn-block-tel .tel3 {
        padding-top: 2px;
    }
}

/* YouTube Theta VR */
.block-margin-top {
    margin-top: 50px;
}
.block-video {
    width: 100%;
    position: relative;
    padding-top: 56.25%;
    background-color: #eee;
}

.block-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.block-theta360 {
    height: 400px;
    background-color: #eee;
}
@media screen and (max-width: 768px) {
    .block-theta360,
    .block-theta360 iframe {
        max-height: 300px ;
    }
}
.list360 {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.list360 a {
    background-color: #EB5E00;
    color: #FFF;
    margin: 5px 10px;
    padding: 8px 16px;
    font-size: 1.2rem;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.list360 a:hover {
    color: #FFF;
    background-color: #EB5E00;
    opacity: 0.8;
}
@media screen and (max-width: 768px) {
    .list360 a {
        font-size: 1.2rem;
    }
}

.block-vr {
    margin: 0 auto;
    width: 100%;
}
.btn-vr {
    background-color: #EB5E00;
    border-color: transparent;
    color: #FFF;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-vr:hover {
    color: #FFF;
    background-color: #EB5E00;
    opacity: 0.8;
}

.rental .details-caption {
    background: #6DAA31;
}
.rental .list360 a {
    background-color: #6DAA31;
}
.rental .btn-vr {
    background-color: #6DAA31;
}




/* ---- 分譲地 ---------------- */
/* （分譲地一覧） */
.bunjo {
    margin-top: 40px;
    font-family: 'Noto Serif JP', serif;
}
.bunjo-title-block {
    padding: 10px 10px 50px;
    text-align: center;

}
.bunjo-title {
    text-align: left;
    display: inline-block;
}
.bunjo-title h2 {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    font-size: 32px;
    font-weight: 700;
}
.markerUnder {
  display: inline;
  padding: 0 1px 0px;
  border-bottom: 1px solid #444;
}

/* （分譲地一覧ブロック） */
.bunjo-list-block {
    border-top: 4px solid #C9CACA;
    padding: 40px 0;
}
.bunjo-list-body {
    background-color: #fff;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 20px;
}
.bunjo-list-photo,
.bunjo-list-info {
    flex-basis: 50%;
    flex-grow: 1;
}
.bunjo-list-photo {
    flex: 1 1 calc(50% - 30px);
}
.bunjo-list-photo img {
    width: 100%;
    max-width: 100%;
    max-height: 260px;
}
.bunjo-list-info {
    flex: 1 1 calc(50% - 30px);
}
.bunjo-list-info-text {
    font-size: 0.8rem;
    line-height: 1.5;
    letter-spacing: 0.02rem;
}

.bunjo-list-info .info-top {
    display: flex;
    flex-direction: row;
    align-items: center;
}
.bunjo-list-info .info-category {
    background-color: #EB5E00;
    color: #fff;
    padding: 5px 10px;
    text-align: center;
    font-size: 1.1rem;
    min-width: 180px;
}
.bunjo-list-info .info-section {
    background-color: #fff;
    border: 1px solid #444;
    padding: 5px;
    margin-left: 5%;
    min-width: 100px;
    text-align: center;
    font-size: 1.1rem;
}
.bunjo-list-info .info-catchcopy {
    color: #EB5E00;
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 10px 0;
}
.bunjo-list-info .info-box {
    display: flex;
    flex-direction: column;
}
.bunjo-list-info .info-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-size: 1.1rem;
    line-height: 1.5;
    padding: 5px 0;
}
.bunjo-list-info .info-row:not(:last-child) {
    border-bottom: 1px solid #444;
}
.bunjo-list-info .info-text:first-child {
  flex-basis: 20%;
  text-align: left;
  margin-left: 20px;
}
.bunjo-list-info .info-text:last-child {
  flex-basis: 80%;
  text-align: left;
}
.bunjo-box-bottom {
    width: 380px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
    .bunjo {
        margin-top: 20px;
    }
    .bunjo-title-block {
        padding-bottom: 20px;
        margin-bottom: 15px;
    }
    .bunjo-title h2 {
        font-size: 22px;
    }
    .bunjo-list-photo,
    .bunjo-list-info {
        flex-basis: 100%;
    }
    .bunjo-list-info .info-category,
    .bunjo-list-info .info-section {
        font-size: 1.0rem;
    }
    .bunjo-list-info .info-catchcopy {
        font-size: 1.1rem;
    }
    .bunjo-list-info .info-row {
        font-size: 1.0rem;
    }
    .bunjo-list-info .info-text:first-child {
        margin-left: 10px;
    }
}




/* ---- 分譲地詳細 ---------------- */
/* （トップ） */
.bunjo-detail-header {
    border-top: 1px solid #9FA0A0;
}
.font-serif {
    font-family: 'Noto Serif JP', serif;
}
.bunjo-detail-title {
    color: #EB5E00;
    text-align: center;
    margin: 0;
    padding: 10px;
    font-size: 1.6rem;
    font-weight: 700;
}

.bunjo-navi {
    border-top: 1px solid #9FA0A0;
    border-bottom: 1px solid #9FA0A0;
    overflow: hidden;
    width: calc(100% - 5%);
    margin-left: auto;
    margin-right: auto;
}
.bunjo-navi ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.bunjo-navi ul li {
    text-align: center;
}
.bunjo-navi ul li a {
    display: block;
    text-align: center;
    margin: 14px 16px;
    padding-bottom: 1px;
    text-decoration: none;
    border-bottom: 1px solid transparent;
}
.bunjo-navi ul li a:hover {
    padding-bottom: 1px;
    border-bottom: 1px solid #444;
    transition: all .2s;
}

.bunjo-main-image {
}
.bunjo-main-image img {
    display: block;
    width: 100%;
    height: 600px;
    object-fit: contain;
    padding: 20px 0 0;
    content-visibility: auto;
    contain-intrinsic-size: 600px;
}
@media screen and (max-width: 768px) {
    .bunjo-navi ul li a {
        margin: 12px;
    }
    .bunjo-main-image img {
        height: auto;
    }
}

/* （分譲地詳細-共通） */
.section-header {
    border-top: 2px solid #C9CACA;
    border-bottom: 2px solid #C9CACA;
    text-align: center;
    padding: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
}
.section-header img {
    width: 400px;
    max-width: 100%;
}
@media screen and (max-width: 768px) {
    .section-header img {
        width: 200px;
    }
}

.section-contents {
    padding-bottom: 40px;
}

/* （分譲地詳細 - 概念） */
.bunjo-concept-block {
    display:flex;
    flex-wrap: wrap;

    margin: 10px;
    border-bottom: 1px solid #ccc;
    background-color: #fafafa;
}
.bunjo-concept-text {
    flex-basis: 70%;
    padding: 10px;
}
.bunjo-concept-text h4 {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-bottom: 5px;
}
.bunjo-concept-image {
    flex-basis: 30%;
    padding: 10px;
    text-align: center;
}
.bunjo-concept-text img,
.bunjo-concept-image img {
    max-width: 300px;
}
@media screen and (max-width: 768px) {
    .bunjo-concept-text,
    .bunjo-concept-image {
        flex-basis: 100%;
    }
}

/* （分譲地詳細 - 区画プラン・間取図） */
.bunjo-plan-image img {
    display: block;
    width: 100%;
    height: 600px;
    max-height: 100%;
    object-fit: contain;
    padding: 20px;
    margin-bottom: 20px;
}
.plan-block {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 10px;
}
.plan-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: auto;
    align-items: stretch;
}
.plan-item {
  padding: 10px;
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
  border-top: 1px solid #3E3A39;
  border-bottom: 1px solid #3E3A39;
  border-left: 1px solid #3E3A39;
  border-right: 0;
  background-color: #fff;
  min-height: 82px;
}
.plan-item:last-child {
    border-right: 1px solid #3E3A39;
}
.plan-item:nth-child(1),
.plan-item:nth-child(5) {
    background-color: #3E3A39;
    color: #fff;
    font-size: 1.0rem;
    justify-content: center;
}
.plan-item:nth-child(1) {
    font-size: 1.2rem;
}

.plan-item .plan-label {
    background-color: #E7E7E6;
    width: 100%;
    padding: 1px;
    font-size: 0.8rem;
}
.plan-item p {
    width: 100%;
    padding: 5px 0;
    font-size: 0.9rem;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.plan-item .plan-price {
    color: #D51819;
    font-weight: 700;
}

.plan-item img {
    padding: 5px 0 0;
    max-height: 40px;
    object-fit: contain;
}

.btn-bunjo-plan {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 5px;
    border-radius: 2px;
    border: 1px solid #fff;
    color: #fff;
    letter-spacing: 0.5px;
    line-height: 1.3;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-bunjo-plan:hover {
    background-color: #585858;
}

@media screen and (max-width: 768px) {
    .bunjo-plan-image img {
        height: auto;
    }
    .plan-block {
        grid-gap: 15px;
    }
    .plan-container {
        grid-template-columns: 1fr;
    }
    .plan-item {
        border-bottom: 0;
        border-right: 1px solid #3E3A39;
    }
    .plan-item:last-child {
        border-bottom: 1px solid #3E3A39;
    }
    .plan-item {
        min-height: auto;
    }
    .plan-item:nth-child(5) {
        min-height: 68px;
    }
}

/* （分譲地詳細 - アクセスマップ） */
.bunjo-map-image img {
    display: block;
    width: 100%;
    height: 600px;
    max-height: 100%;
    object-fit: contain;
    padding: 20px;
    margin-bottom: 20px;
}
.bunjo-map-info {
    display: block;
    width: calc(100% - 10%);
    text-align: center;
    margin: 0 5% 20px;
    padding: 10px;
    background-color: #3E3A39;
    color: #fff;
}
.map-addr {
    color: #F5E829;
    padding-left: 1rem;
    padding-right: 1rem;
}
.bunjo-map-link {
    display: block;
    width: 100%;
    padding: 0 5%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.bunjo-map-link a {
    text-decoration: underline;
    text-underline-position: under;
    text-underline-offset: 6px;
}
@media screen and (max-width: 768px) {
    .bunjo-map-image img {
        height: auto;
    }
}

/* （分譲地詳細 - ロケーション） */
.location-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-auto-rows: minmax(200px, auto);
    gap: 20px;
}
.location-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    /*background-color: #f5f5f5;*/
}
.location-item img {
    width: 100%;
    object-fit: contain;
    max-height: 180px;
    /*background-color: #DDDDDD;*/
}
.location-item p {
    padding: 15px;
}
@media screen and (max-width: 768px) {
    .location-container {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        grid-auto-rows: auto;
    }
    .location-item {
        padding: 0 15px;
    }
    .location-item img {
        max-height: 200px;
    }
}

/* （分譲地詳細 - 物件概要） */
.outline-table {
    width: 100%;
    border-collapse: collapse;
}
.outline-table td {
    border: 1px solid #aaa;
    padding: 10px;
}
.outline-table td.title {
    text-align: center;
    width: 15%;
    font-size: 0.9rem;
}
.outline-table td.text {
    text-align: left;
    width: 35%;
    font-size: 0.9rem;
}
.outline-table td.title {
    background-color: #3E3A39;
    color: #fff;
}
.bunjo-outline-info {
    margin-top: 30px;
    padding: 20px 15px;
    border-top: 1px solid #585858;
    font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
    .outline-table,
    .outline-table tbody {
        display: block;
    }
    .outline-table td.title {
        display: block;
        width: 100%;
        padding: 5px 5px;
        font-size: 0.9rem;
        border-bottom: 0;
    }
    .outline-table td.text {
        display: block;
        width: 100%;
    }
    .outline-table td.title + td.text {
        /*margin-bottom: 5px;*/
        min-height: 32px;
    }
}

/* （分譲地詳細-お問い合わせ） */
.bunjyo-footer {
    margin: 70px auto 0;
    width: 700px;
    max-width: calc(100% - 20px);
}
.bunjyo-footer h3 {
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 3px;
    margin-bottom: 30px;
}

/* 分譲お問い合わせボタン */
.btn-block-row  {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px;
}
.btn-block-column  {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.btn-item  {
    flex-grow: 1;
}
@media screen and (max-width: 768px) {
    .btn-block-row  {
        flex-direction: column;
    }
}

/* 分譲お問い合わせボタン（資料請求・ご相談／物件のお問い合わせ） */
.btn-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    background-color: #EB5E00;
    color: #fff;
    text-decoration: none;
    flex-basis: 48%;
}
.btn-contact:hover {
    color: #fff;
    background-color: #EB5E00;
    opacity: 0.8;
}
.btn-contact img {
    display: inline-block;
    height: 68px;
    object-fit: cover;
    width: 40%;
}
.btn-contact p {
    text-align: center;
    font-size: 1rem;
    font-weight: 400;
    flex-grow: 1;
}
.btn-contact i {
    margin-left: 1rem;
}

/* 分譲お問い合わせボタン（TEL） */
.btn-block-tel-separate {
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-size: 1.0rem;
}
.btn-block-tel-separate .tel-label {
    flex-grow: 1;
}
.btn-block-tel-separate .tel1 {
    padding-right: 10px;
    white-space: nowrap;
}
.btn-block-tel2 {
    border-color: #444;
    color: #EB5E00;
    font-family: 'Noto Serif JP', serif;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 5px;
}
.btn-block-tel2.tenpo2 {
    color: #494D9E;
    border: #585858;
}
@media screen and (max-width: 768px) {
    .btn-block-tel-separate .tel-label {
        display: none;
    }
}




/* ---- 分譲地ギャラリー ---------------- */
.gallery-title {
    position: relative;
    margin: 60px 0 20px;
    padding: 10px 10px;
    color: #EB5E00;
    border-top: 1px solid #585858;
    border-bottom: 1px solid #585858;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: 3px;
}
.gallery-title span {
    margin-right: 1rem;
    font-weight: 700;
}
.slider-label {
    text-align: center;
    background-color: #514947;
    color: #fff;
    padding: 10px;
    font-size: 1.2rem;
    margin: 0 10px 10px;
}




/* ---- オープンハウス ---------------- */
.openhouse {
    margin-top: 40px;
}
.openhouse-list-block {
    border-top: 2px solid #C9CACA;
    padding: 40px 0;
}
.openhouse-list-body {
    background-color: #fff;
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
    margin-bottom: 20px;
}
.openhouse-list-block .list-photo,
.openhouse-list-info {
    flex-basis: 50%;
    flex-grow: 1;
}
.openhouse-list-block .list-photo {
    flex: 1 1 calc(50% - 30px);
}
.openhouse-list-block .list-photo ul {
    text-align: center;
}
.openhouse-list-block .list-photo ul {
    display: flex;
    justify-content: center;
    max-height: 200px;
    gap: 10px;
}
.openhouse-list-block .list-photo li {
    flex-basis: 50%;
}
.openhouse-list-block .list-photo img {
    margin-left: auto;
    margin-right: auto;
    width: auto;
    max-width: 100%;
    max-height: 200px;
}

.openhouse-list-block .list-info {
    flex: 1 1 calc(50% - 30px);
}
.openhouse-list-block .openhouse-title {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-bottom: 5px;
}
.openhouse-list-block .info-cate-price {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10%;
    margin-top: 5px;
}
.openhouse-list-block .info-category {
    background-color: #444;
    color: #fff;
    padding: 4px 15px;
    text-align: center;
    font-size: 0.9rem;
}
.openhouse-list-block .info-price {
    padding: 2px 5px;
    text-align: center;
    font-size: 0.8rem;
}
.openhouse-list-block .info-price span {
    color: #EB5E00;
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0 0.5rem;
}
.openhouse-list-block .info-text {
    font-size: 0.8rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-top: 5px;
}
.openhouse-box-bottom {
    width: 380px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
    .openhouse {
        margin-top: 20px;
    }

    .openhouse-list-block .list-photo,
    .openhouse-list-block .list-info {
        flex-basis: 100%;
    }
    .openhouse-list-block .list-info .info-category,
    .openhouse-list-block .list-info .info-price {
        font-size: 1.0rem;
    }
    .openhouse-list-block .list-info .openhouse-title {
        font-size: 1.1rem;
    }
    .openhouse-list-body {
        gap: 10px;
    }

}

.openhouse-info {
    display: flex;
    flex-direction: column;
}
.openhouse-info .info-row {
    display: flex;
    flex-direction: row;
    line-height: 1.5;
    letter-spacing: 0;
}
.openhouse-info .info-item:first-child {
    text-align: left;
    white-space: nowrap;
}
.openhouse-info .info-item:last-child {
    text-align: left;
}




/* ---- お知らせ ---------------- */
.news {
    margin-top: 40px;
}
.news-title {
    margin: 10px 0 30px;
    padding: 0 10px 10px;
    font-size: 1.4rem;
    border-bottom: 1px solid #444;
}
.news-title span {
    color: #A9ABAC;
    font-size: 2.6rem;
    margin-left: 20px;
}
.notice-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 20px;
}
.notice-item {
    margin: 0 10px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
.notice-title {
    border-bottom: 1px solid #817e7e;
    margin-bottom: 10px;
    padding: 10px 20px;
    font-weight: bold;
}
.notice-date {
    margin-right: 1rem;
    font-weight: bold;
}
.notice-content {
    display: flex;
    padding: 10px 20px 30px;
}
.notice-content a:hover {
    text-decoration: underline;
}
.notice-desc {
    width: 70%;
}
.notice-image {
    width: 30%;
    overflow: hidden;
}
.notice-image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
@media screen and (max-width: 768px) {
    .notice-date {
        display: block;
    }
    .notice-content {
        display: block;
    }
    .notice-content .notice-desc {
        width: 100%;
    }
    .notice-content .notice-image {
        width: 100%;
        margin-top: 20px;
        padding: 0 5%;
    }
}




/* ---- 今週の広告 ---------------- */
.weekad {
    margin-top: 40px;
}
.weekad-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.chirashi {
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #585858;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
}
.chirashi h3 {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #585858;
    font-size: 1.4rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.chirashi h3 span {
    font-size: 0.8rem;
    white-space: nowrap;
}
.chirashi .chirashi-img {
    text-align: center;
    padding: 10px 3% 20px;
}
.chirashi .chirashi-img img {
    box-shadow: 0 0 3px rgb(0 0 0 / 10%);
    overflow: hidden;
    padding: 5px;
}

.chirashi .chirashi-txt {
    font-size: 15px;
    padding: 10px 3% 20px;
}
.chirashi .chirashi-pdf {
    display: block;
    background-color: #585858;
    padding: 15px;
    margin-top: 15px;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    text-align: right;
}
.chirashi .chirashi-pdf a {
    color: #fff;
}



/* ----- 売りたい ----- */
/* (common) */
.sell {
    margin-top: 40px;
}
.sell-contents{
    margin: 0;
    padding: 0 5%;
    width: 100%;
}
.sell-bg-gray{
    background-color: #dcdddd !important;
}
.sell-bg-gray2{
    background-color: #e9ecef !important
}
.sell-bg-orange{
    background-color: #EB5E00 !important;
}
.sell-red-text {
    color: #c30f23;
}
.sell-contents-title{
    background-color: #3f3b3a;
    color: #fff;
    width: 650px;
    max-width: 100%;
    margin: 0 auto;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.8rem;
    letter-spacing: .1em;
}
.sell-contents-inner{
    margin-left: auto;
    margin-right: auto;
}
.sell-contents-inner + .sell-contents-inner {
    margin-top: 40px;
}
.sell-inner-text{
    font-size: 1.8rem;
    padding: 20px;
    line-height: 1.4;
    text-align: left;
}
/* (Content1) */
.sell-contents-item01{
    padding: 40px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sell-contents-item01 img{
    width: auto;
    overflow: hidden;
}
.sell-inbox{
    margin: 20px auto;
    padding: 10px;
    width: 100%;
    text-align: center;
    font-size: 1.8rem;
    letter-spacing: .1em;
    background-color: #ECECEC;
}
/* (Content2) */
.sell-flex{
    display: flex;
    gap: 20px;
}
.sell-flex-item{
    margin: 30px 0;
    flex-basis: 50%;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.sell-detail-box{
    border: 5px solid #e9ecef;
    font-size: 1.7em;
    letter-spacing: .1em;
    line-height: 1.5;
    padding: 20px 20px;
    min-height: 180px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sell-detail-arrow {
    text-align: center;
}
.dli-arrow-down {
    display: inline-block;
    vertical-align: middle;
    color: #EB5E00;
    line-height: 1;
    position: relative;
    width: 0.3em;
    height: 3em;
    background: currentColor;
}
.dli-arrow-down::before {
    content: '';
    width: 1.2em;
    height: 1em;
    border: 0.3em solid currentColor;
    border-top: 0;
    border-right: 0;
    transform: rotate(-45deg);
    transform-origin: bottom left;
    position: absolute;
    left: 50%;
    bottom: -0.05em;
    box-sizing: border-box;
}
.sell-btn {
    border: 2px solid #585858;
    text-align: center;
    font-size: 1.2em;
    letter-spacing: .1em;
    padding: 0;
}
.sell-btn a.btn{
    padding: 15px;
    display: block;
}
@media screen and (max-width: 768px){
    .sell-contents-title{
        font-size: 1.2rem;
    }
    .sell-contents-item01 {
        padding: 20px 0 0;
    }
    .sell-inbox {
        font-size: 1.2rem;
    }
    .sell-inner-box {
        font-size: 1.2rem;
        padding: 10px;
    }
    .sell-inner-text {
        font-size: 1.2rem;
    }
    .sell-flex{
        flex-direction: column;
    }
    .sell-flex-item {
        margin: 20px 0;
        gap: 10px;
    }
    .sell-detail-box {
        font-size: 1.2rem;
        min-height: inherit;
    }
}




/*-- 売りたい（買取売却＋ご相談フォーム） --*/
/* (sell共通) */
.sell-margin-top {
    margin-top: 40px
}
@media screen and (max-width: 768px){
    .sell-sp-wigth {
        width: 85%;
    }
}

/* (2-Content1) */
.sell-underline-orange {
    border-bottom: 3px solid #EB5E00;
}

/* (2-Content2) */
.speechbubbles-block {
    padding: 20px 0;
}
.speechbubbles {
    position: relative;
    box-sizing: border-box;
    margin: 0 auto 15px;
    padding-bottom: 10px;
    width: 250px;
    height: 90px;
    color: black;
    background: #e6e6e6;
    border-radius: 50%;
    font-size: 1.2em;
    text-align: center;
    line-height: 1.4;
    display: flex;
    justify-content: center;
    align-items: center;
}
.speechbubbles:before {
    content: "";
    position: absolute;
    bottom: -25px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #e6e6e6;
    z-index: 0;
}

.sell-grid02 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-gap: 40px;
}
.sell-grid02-item {
  padding: 0px;
  display: flex;
  flex-direction: column;
}
.sell-grid02-item .sell-bubbles {
    position: relative;
    padding: 0;
    margin-bottom: 10px;
    width: 80px;
    height: 80px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    background: #e6e6e6;
    border-radius: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0;
}
.sell-grid02-item .sell-bubbles:before  {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #e6e6e6;
    z-index: 0;
}
.sell-grid02-item .sell-bubbles.demerit{
    background-color: #DFD7C2;
}
.sell-grid02-item .sell-bubbles.demerit:before  {
    border-top-color: #DFD7C2;
}
.sell-grid02-item .sell-inboxpic img{
	height: 200px;
	object-fit: cover;
}
.sell-grid02-item .sell-textarea {
    padding: 10px 0 0;
    background-color: #fff;
    flex-grow: 1;
}
.sell-grid02-item .sell-textarea p,
.sell-grid02-item .sell-textarea h2 {
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
    text-align: justify;
}
.sell-grid02-item .sell-textarea h2 {
    font-size: 1.3em;
    font-weight: bold;
    padding: 15px 10px;
}
@media screen and (max-width: 960px){
    .sell-grid02 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 768px){
    .sell-grid02 {
        grid-template-columns: 1fr;
    }
    .sell-grid02-item .sell-bubbles {
        width: 80px;
        height: 80px;
        font-size: 14px;
    }
}

.item-background {
    width: 100%;
    padding: 20px 0;
}
.item-background.position-down {
    position: relative;
    background-position: center;
    background-position-y: 200px;
    background-size: cover;
    background-repeat: no-repeat;
	padding-bottom: 100px;
}

.item-background-gray {
    background-color: #F2F2F2;
	padding: 20px 0 20px;
}
.sell-background-gray {
    background-color: #F2F2F2;
}
.sell3-flow {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2%;
}

/* (2-Content3) */
.sell-grid03 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-gap: 40px;
}
.sell-grid03-item {
  padding: 0px;
  display: flex;
  flex-direction: column;
}
.sell-grid03-item .sell-inboxpic {
}
.sell-grid03-item .sell-inboxpic img {
    width: 100%;
    object-fit: cover;
}
.sell-grid03-item .sell-textarea {
    margin-top: 10px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}
.sell-grid03-item .sell-textarea h2 {
    font-size: 1.6rem;
    font-weight: 700;
    padding: 10px 10px;
    background-color: #F1E3D8;
}
.sell-grid03-item .sell-textarea h3 {
    margin-top: 15px;
    font-size: 1.8rem;
    font-weight: 700;
    color: #EB5E00;
    padding: 0 5px;
    min-height: 5rem;
}

.sell-grid03-item .sell-textarea p {
    margin-top: 10px;
    font-size: 1.2rem;
    padding: 0 5px;
    text-align: justify;
}
@media screen and (max-width: 960px){
    .sell-grid03 {
		grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px){
    .sell-grid03 {
    grid-template-columns: 1fr;
  }
}


/* (2-Content4 sp) */
.sp-sell-flowchart .flowitem {
    margin: 5px 0;
}
.sp-sell-flowchart .flowitem-image {
    padding: 15px 0;
    position: relative;
}
.sp-sell-flowchart .flowitem-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 100%;
    background-color: #F6B68C;
}
.sp-sell-flowchart .flowitem-image img {
    position: relative;
    z-index: 1;
}
.sp-sell-flowchart .flowitem-title {
    text-align: center;
    padding-top: 5px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
}
.sp-sell-flowchart .flowitem-text {
    padding: 5px;
    font-size: 0.9rem;
    letter-spacing: 0;
    line-height: 1.5;
}


/* (2-Content5) */
.sell2-separeat-bar{
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #ccc;
}
/*
.sell2-guidebook-grid {
    display: grid;
    grid-template-columns: 1fr 4fr 1fr;
    grid-template-rows: 1fr 1fr 1fr 1fr;
}
.sell2-guidebook-grid div{
    display: flex;
    justify-content: center;
    align-items: center;
}
.sell2-guidebook-grid div img {
    object-fit: contain;
}
.sell2-guidebook-grid .grid-item-left{
    grid-column: 1 / 2;
    grid-row: 1 / 5;
    display: block;
}
.sell2-guidebook-grid .grid-item-right{
    grid-column: 3 / 4;
    grid-row: 1 / 5;
    display: block;
}
.sell2-guidebook-grid .grid-item-center01{
    font-size: 2.0rem;
    font-weight: 700;
    color: #EB5E00;
}
.sell2-guidebook-grid .grid-item-center03{
    font-size: 1.6rem;
}
.sell2-guidebook-grid .grid-item-bottom {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
    font-size: 1.1rem;
}
*/
.btn-guidebook {
    width: 100%;
    height: 70px;
    margin: 0 auto;
    padding: 15px;
    background-color: #fff;
    border-radius: 2px;
    border: 2px solid #585858;
    letter-spacing: 0.5px;
    line-height: 1.3;
    display: flex;
    align-items: center;
    justify-content: center;
}
/*
@media screen and (max-width: 768px){
    .sell2-guidebook-grid {
        grid-template-rows: 1fr 1fr 1fr auto;
    }
    .sell2-guidebook-grid .grid-item-left{
        grid-row: 1 / 4;
    }
    .sell2-guidebook-grid .grid-item-right{
        grid-row: 1 / 4;
    }
    .sell2-guidebook-grid .grid-item-center01 {
        font-size: 1.4rem;
    }
    .sell2-guidebook-grid .grid-item-center03{
        font-size: 1.6rem;
    }
    .sell2-guidebook-grid .grid-item-center03{
        font-size: 1.0rem;
        padding-bottom: 10px;
    }
    .sell2-guidebook-grid .grid-item-bottom {
        grid-column: 1 / 4;
        font-size: 1.1rem;
    }
}
*/
.sell2-bottom-block {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
    font-size: 1.1rem;
}
.sell-form-text {
    font-size: 2.4rem;
    font-weight: 700;
    color: #EB5E00;
    text-align: center;
    line-height: 1.8;
}
@media screen and (max-width: 768px){
    .sell-form-text {
        font-size: 1.1rem;
    }
}
/* content5 契約ガイドブック */
.sell2-guidebook-grid2{
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 40px;
}
.grid-item-bottom {
    position: absolute;
    bottom: -20px;
    height: 70px;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 640px;
}
@media screen and (max-width: 768px){
    .grid-item-bottom {
        top: 85%;
        max-width: 260px;
        font-size: 0.9rem;
        padding: 5px;
        height: 60px;
    }
}

/*-- 売りたい（仲介売却＋ご相談フォーム） --*/
.item-background-orage {
    background-color: #FDEFE5;
	padding: 20px 0 20px;
}

/* (3-Content4 sp) */
.sell-flow-circle1,
.sell-flow-circle2 {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto;
}
.sell-flow-circle1 {
    background-color: #fff;
    border: 2px solid #EB5E00;
}
.sell-flow-circle2 {
    background-color: #EB5E00;
    border: 2px solid #EB5E00;
}

.sp-sell-flowstep {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.sp-sell-flowstep .flowitem {
    margin: 5px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.sp-sell-flowstep .flowitem-point {
    text-align: center;
}
.sp-sell-flowstep .flowitem-step {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
    color: #585858;
}
.sp-sell-flowstep .flowitem-title {
    color: #EB5E00;
    padding-top: 5px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.5;
}
.sp-sell-flowstep .flowitem-text {
    font-size: 1.0rem;
    letter-spacing: 0;
    line-height: 1.5;
}
.flowitem-remarks {
    margin-top: 20px;
    text-align: center;
    font-size: 0.9rem;
}

/* (3-content3) */
.sell3-recommend {
    font-size: 1.8em;
    text-align: center;
    margin-top: 40px;
}
.sell3-buysell {
    font-size: 2.5em;
    text-align: center;
    font-weight: 700;
    color: #EB5E00;
    padding-top: 20px;
}
.sell3-testimony-block {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items:center;
    gap:30px;
}
.sell3-testimony {
    display: flex;
    background-color: #efefef;
    width: 100%;
}
.sell3-manpic {
    margin: 20px 0 20px 20px;
    width: 150px
}
.sell3-mantalk {
    width: 100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.sell3-mantalk h3 {
    font-size: 1.6rem;
    font-weight: 700;
    color: #EB5E00;
    padding: 0;
}
.sell3-saying {
    font-size: 1.2em;
    line-height: 1.5;
    letter-spacing: 0.1em;
    padding: 0;
    flex-grow: 1;
}
.sell3-quote {
    text-align: right;
    font-size: 0.9rem;
    color: #585858;
}
.sell3-quote span {
    border-bottom: 1px solid #585858;
}
@media screen and (max-width: 768px){
    .sell3-recommend{
        font-size: 1.1em;
        margin-top: 10px;
    }
    .sell3-buysell{
        font-size: 1.5rem;
        padding-top: 10px;
    }
    .sell3-testimony {
        display: flex;
        width: 100%;
        flex-direction: column-reverse;
    }
    .sell3-manpic {
        margin: 0px 20px 20px 20px;
        width: 80px;
    }
}

/* (3-Content4) */
.sell-grid04 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, auto);
    grid-gap: 40px;
}
.sell-grid04-item {
    padding: 0px;
    display: flex;
    flex-direction: column;
    background-color: #dcdddd;
    margin-top: 20px;
}
.sell-grid04-item .qmark {
    margin-top: -20px;
    margin-left: 10px;
    width: 48px;
}
.sell-grid04-item h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #EB5E00;
    padding: 10px;
    min-height: 90px;
}
.sell-grid04-item .amark {
    margin-top: 0px;
    margin-left: 10px;
    width: 48px;
}
.sell-grid04-item .answers {
    font-size: 1.1rem;
    line-height: 1.5;
    padding: 10px;
    min-height: 120px;
    text-align: justify;
}
@media screen and (max-width: 960px){
    .sell-grid04 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 768px){
    .sell-grid04 {
        grid-template-columns: 1fr;
    }
}
.sell-brackets-text {
    text-indent: -0.7rem;
}



/*-- リフォーム・リノベーション --*/
/* (Content1) */
.reform-margin-top {
    margin-top: 40px
}
.reform-content1 {
    display: flex;
    justify-content: center;
    align-items: center;
}
.reform-content1-left {
    flex: 3;
    padding: 20px;
}
.reform-content1-left img {
    height: 280px;
    object-fit: contain;
}
.reform-content1-right {
    flex: 7;
    line-height: 1.6;
    padding: 20px;
}
@media screen and (max-width: 768px){
    .sell-sp-wigth {
        width: 85%;
    }
}

.reform-grid-container {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.reform-grid-container+.reform-grid-container {
    margin-top: 40px;
}
.reform-grid-top,
.reform-grid-left,
.reform-grid-right,
.reform-grid-item {
    flex-grow: 1;
    flex-basis: 0;
    box-sizing: border-box;
/*    border: 1px solid black;*/
/*    text-align: center;*/
    padding: 15px 20px;
}
.reform-grid-top {
    flex-basis: 100%;
    background-color: #F5F1DF;
    margin-bottom: 20px;
}
.reform-part-title{
    font-size: 1.6rem;
    font-weight: 700;
}
.reform-grid-left {
    flex-basis: 50%;
}
.reform-grid-right {
    flex-basis: 50%;
}

.reform-grid-left.image-grid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.reform-grid-left img {
    object-fit: contain;
}

.reform-item-title {
    margin: 0 15px;
    font-size: 1.4rem;
    font-weight: 700;
}
.reform-item-text{
    margin: 10px 15px 5px;
    line-height: 1.6;
}
.reform-item-text hr {
    border-top: 1px solid #585858;
}
.marker-top {
    position: relative;
    border-top: 20px solid #EFEFEF;
    padding-top: 10px;
}
.marker-top::before  {
    content: "";
    position: absolute;
    top: 0px;
    width: 100%;
    height: 0;
    border-top: 30px solid #FAFAFA;
    z-index: -1;
}
@media screen and (max-width: 768px){
    .reform-content1 {
        flex-direction: column-reverse;
    }
    .reform-content1-left {
        padding-top: 0;
    }
    .reform-content1-left img {
        height: 200px;
    }
    .reform-grid-left,
    .reform-grid-right {
        flex-basis: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}



/*-- 不動産ご購入の手順 --*/
.buy-countent1-title{
    margin: 20px auto;
    padding: 5px 20px;
    width: 460px;
    max-width: 100%;
    background-color: #5B5757;
    color: #fff;
    font-size: 1.8rem;
    text-align: center;
    letter-spacing: 0.2em;
}
.buy-countent1-text{
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
    padding: 10px 20px;
    margin: 0 auto;
}

.margin-top {
    margin-top: 40px;
}
@media screen and (max-width: 768px){
    .buy-countent1-text {
        font-size: 1.1rem;
    }
}

/* (Content2) */
.buy-flow {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 10px;
}

/* */
.buy-flowstep {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.buy-flowstep .flowitem {
    margin: 5px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 0px;
}
.buy-flowstep .flowitem-point {
    text-align: center;
}
.buy-flowstep .flowitem-step {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    color: #585858;
}
.buy-flowstep .flowitem-title {
    color: #EB5E00;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    padding: 10px 20px 0;
}
.buy-flowstep .flowitem-text {
    font-size: 0.9rem;
    letter-spacing: 0;
    line-height: 1.6;
    padding: 15px 20px;
}


.stepline-top {
    position: relative;
}
.stepline-bottom {
    position: relative;
    height: 70px;
}
.stepline-top::before {
    content: '';
    position: absolute;
    top: -30px;
    left: 0;
    right: 0;
    width: 3px;
    height: 30px;
    margin: auto;
    background-color: #DCDDDD;
}

.stepline-bottom::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 3px;
    height: 30px;
    margin: auto;
    background-color: #DCDDDD;
}
.flowitem-box {
    display: flex;
}
.flowitem-box-bk-left {
    background: linear-gradient(to left, #EFEFEF 75%, transparent 50%);
}
.flowitem-box-bk-right {
    background: linear-gradient(to right, #EFEFEF 75%, transparent 50%);
}

.flowitem-box-left {
    flex-basis: 50%;
}
.flowitem-box-left.flowitem-image {
    padding: 40px 40px 0 0;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    max-height: 300px;
    position: relative;
}
.flowitem-box-right {
    flex-basis: 50%;
}
.flowitem-box-right.flowitem-image {
    padding: 40px 0 0 40px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    max-height: 300px;
    position: relative;
}
.flowitem-box-right .flowitem-title {
    padding-left: 0;
}
.flowitem-box-right .flowitem-text {
    padding-left: 0;
}
.flowitem-image img {
    width: 80%;
    z-index: 1;
}
.flowitem-image-background{
    background-color: #F9F9F9;
    opacity: 0.6;
    height: 80%;
    width: 90%;
    position: absolute;
    top: 10%;
}
@media screen and (max-width: 768px){
    .flowitem-box {
        flex-direction: column;
    }
    .stepline-top::before {
        top: -25px;
        height: 25px;
    }
}

/* */
.flowitem-grid-block {
    margin-top: 20px;
    width: 100%;
}
.flowitem-grid-title {
    font-size: 1.1rem;
    font-weight: 700;
    padding: 5px 10px;
}
.flowitem-grid-info {
    font-size: 0.8rem;
    padding: 0 10px 10px;
}

.flowitem-grid-sub-box {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap:0;
    padding: 5px 0;
    font-size: 0.8rem;
}
.flowitem-grid-sub {
    font-size: 0.9rem;
    padding-left: 10px;
    display: flex;
    align-items: center;
}
.flowitem-grid-sub span {
    font-size: 0.6rem;
    letter-spacing: 0;
}


.flowitem-grid-box {
    display: grid;
    grid-template-columns: 1.5fr 2fr 1.5fr 2fr;
/*    grid-template-rows: repeat(4, 1fr);*/
    grid-gap:0;
    padding: 0;
    border-top: 1px solid #585858;
    border-bottom: 1px solid #585858;
    font-size: 0.8rem;
    margin-bottom: 5px
}


.flowitem-grid-box .grid-item.title {
    background-color: #F4F1E7;
}
.flowitem-grid-box .grid-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 10px;
    border-left: 1px solid #585858;
}
.flowitem-grid-box .grid-item span {
    font-size: 0.7rem;
    line-height: 1.6;
}

.flowitem-grid-box .grid-item span.f-xs {
    font-size: 0.6rem;
}
.flowitem-grid-box .grid-item span.center {
    margin-left: auto;
    margin-right: auto;
}
.flowitem-grid-box .grid-item.bl {
    border-right: 1px solid #585858;
}
.flowitem-grid-box .grid-item.bg {
    background-color: #EFEFEF;
}
.flowitem-grid-box .grid-item.bt {
    border-top: 1px solid #EFEFEF;
}
.flowitem-grid-box .grid-item-2-3 {
    grid-row: 2 / span 2;
    grid-column: 3;
}
.flowitem-grid-box .grid-item-2-4 {
    grid-row: 2 / span 2;
    grid-column: 4;
}
.flowitem-grid-box .grid-item-4-1 {
    grid-row: 4 / span 2;
    grid-column: 1;
}
.flowitem-grid-box .grid-item-4-2 {
    grid-row: 4 / span 2;
    grid-column: 2;
}
.flowitem-grid-box .grid-item-6-1 {
    grid-row: 6 / span 2;
    grid-column: 1;
}
.flowitem-grid-box .grid-item-6-2 {
    grid-row: 6 / span 2;
    grid-column: 2;
}
@media screen and (max-width: 768px){
    .flowitem-grid-sub-box {
/*        grid-template-columns: 1fr 1fr 1fr;*/
        grid-template-columns: 1fr 1fr;
    }
    .flowitem-grid-box {
        grid-template-columns: 1fr 2fr;
/*        grid-template-rows: repeat(8, 1fr);*/
    }
    .flowitem-grid-box .grid-item {
        padding: 5px;
    }
    .flowitem-grid-box .grid-item.bg {
        background-color: inherit;
    }
    .flowitem-grid-box .grid-item.sp-bg {
        background-color: #EFEFEF;
    }
    .flowitem-grid-box .grid-item:nth-child(2n) {
        border-right: 1px solid #585858;
    }
    .flowitem-grid-box .grid-item.sp-bb {
        /*border-bottom: 1px solid #585858;*/
    }

    .flowitem-grid-box .grid-item-2-3,
    .flowitem-grid-box .grid-item-2-4 {
        grid-row: inherit;
        grid-column: inherit;
    }
    .flowitem-grid-box .grid-item-4-1,
    .flowitem-grid-box .grid-item-4-2 {
        grid-row: inherit;
        grid-column: inherit;
    }
    .flowitem-grid-box .grid-item-6-1,
    .flowitem-grid-box .grid-item-6-2 {
        grid-row: inherit;
        grid-column: inherit;
    }
}


/* --- ↓追加 --- */
.estste-photo li {
    flex-basis: 50%;
}
.sell.max-width-lg {
    padding: 0 40px;
}
