@charset "utf-8"; /* CSS Document */ /* ================================================ 初期化設定 ================================================ */
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

address, caption, cite, code, dfn, th, var {
    font-style: normal;
    font-weight: normal;
}

caption, th {
    text-align: left;
}

ol, ul {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

img, abbr, acronym, fieldset {
    border: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: "";
}

img {
    vertical-align: top;
    max-width: 100%;
    height: auto;
}

a {
    outline: none;
}

/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html version: 3.1.1 build: 47 body{font:14px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} */ /* ================================================ 基本レイアウト ================================================ */
body {
    line-height: 1.5;
    font-family: "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #000;
    padding: 0px;
    margin: 0px;
    font-weight: normal;
    -webkit-text-size-adjust: 100%;
    font-size: 14px;
    overflow-y: scroll;
    width: 100%;
}

@media screen and (max-width:1200px) {
    body {
        width: 1200px;
    }
}

a {
    color: #000;
    text-decoration: none;
}

a:hover {
    opacity: 0.7;
}

body.fixed {
    overflow: hidden;
}

/* ================================================ ヘッダー ================================================ */
header {
    width: 1100px;
    margin: auto;
    padding: 0 50px;
    letter-spacing: -.5em;
}

header h1, .header-middle, .header-right {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
}

header h1 {
    width: 23%;
    padding: 1%;
    box-sizing: border-box;
    margin-top: 20px;
}

.header-middle {
    width: 60%;
    margin-right: 1%;
    margin-top: 10px;
}

.header-middle nav {
    margin-top: 10px;
}

.header-right {
    width: 16%;
}

.header-middle p span {
    color: #c93c71;
    font-family: "Lato";
    font-size: 21px;
    font-weight: bold;
    padding-left: 30px;
    margin: 0 20px 0 10px;
    background: url(../img/tel-icon.png) no-repeat 5% center;
}

.header-middle nav ul {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
}

.header-middle nav ul li {
    margin-right: 30px;
    position: relative;
    font-weight: bold;
    padding-bottom: 25px;
    margin-left: 50px;
}

.header-middle nav ul li:last-child {
    margin-right: 0;
}

.header-middle nav ul li a {
    position: relative;
}

.header-middle nav ul li a:after {
    content: "";
    display: block;
    position: absolute;
    width: 7px;
    height: 7px;
    background: #01b6c7;
    transform: rotate(45deg);
    top: 0;
    bottom: 0;
    margin: auto;
    right: -45px;
}

.header-middle nav ul li:last-child a:after {
    display: none;
}

.header-middle nav ul li:hover {
    box-shadow: 0 5px 0 #01b6c7;
    padding-bottom: 25px;
}

.header-right ul {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
}

.header-right ul li {
    text-align: center;
    box-sizing: border-box;
    width: 50%;
}

.header-right ul li:nth-child(1) {
    background: #c93c71;
}

.header-right ul li:nth-child(2) {
    background: #f39800;
}

.header-right ul li a {
    color: #fff;
    line-height: 2;
    display: block;
    padding: 26px 0;
}

/* ================================================ トップメインビジュアル ================================================ */
.main-visual-bg {
    background: #01b6c7;
    position: relative;
    margin-top: 20px;
}

.main-visual-inr {
    width: 1200px;
    margin: auto;
}

.main-visual-bg:before {
    content: "";
    display: block;
    width: 100%;
    height: 20px;
    background: url(../img/mv-bg.jpg) repeat top left;
}

.main-visual-bg:after {
    content: "";
    display: block;
    width: 100%;
    height: 20px;
    background: url(../img/mv-bg.jpg) repeat top left;
}

.mv-lr {
    letter-spacing: -.5em;
}

.mv-l, .mv-r {
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
}

.mv-l {
    width: 65%;
}

.mv-r {
    width: 35%;
    box-sizing: border-box;
    padding-right: 50px;
    padding-left: 30px;
    position: relative;
}

.mv-r h3 {
    font-size: 28px;
    color: #fff;
    margin-top: 100px;
    font-weight: bold;
}

.mv-r p {
    margin-top: 20px;
    font-size: 19px;
    color: #fff;
}

.mv-btn {
    position: absolute;
    bottom: -230px;
    left: -150px;
    width: 520px;
}

.mv-btn ul {
    display: flex;
    flex-wrap: wrap;
    display: -webkit-flex;
}

.mv-btn ul li {
    width: 49%;
    background: #fff;
    border-radius: 4px;
    margin-bottom: 2%;
    box-shadow: 0 0 10px #888;
}

.mv-btn ul li:nth-child(even) {
    margin-left: 1%;
}

.mv-btn ul li:nth-child(odd) {
    margin-right: 1%;
}

.mv-btn ul li a {
    display: block;
    padding: 20px 20px 20px 70px;
    font-size: 18px;
    position: relative;
}

.mv-btn ul li:nth-child(1) a {
    background: url(../img/mv-btn1.png) no-repeat 10px center;
}

.mv-btn ul li:nth-child(2) a {
    background: url(../img/mv-btn2.png) no-repeat 10px center;
}

.mv-btn ul li:nth-child(3) a {
    background: url(../img/mv-btn3.png) no-repeat 10px center;
}

.mv-btn ul li:nth-child(4) a {
    background: url(../img/mv-btn4.png) no-repeat 10px center;
}

.mv-btn ul li a:after {
    content: "";
    background: url(../img/arrow1.png) no-repeat center center;
    width: 22px;
    height: 16px;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 20px;
}
@media screen and (max-width:1200px) {
    .main-visual-inr {
    width:auto;
    max-width:100%;
    margin: auto;
}
}
/* ================================================ インフォメーション ================================================ */
.top-information {
    width: 1100px;
    margin: 40px auto 0;
    padding: 0 50px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    position: relative;
}

.top-information-l, .top-information-r {
    width: 48%;
    border-radius: 5px;
}

.top-information-l {
    margin-right: 2%;
    background: url(../img/top-information-bg.jpg) no-repeat center center;
    background-size: cover;
    box-sizing: border-box;
    padding: 30px;
}

.top-information-r {
    margin-left: 2%;
    background: #f6f5f3;
}

.top-information-l h3 {
    font-size: 36px;
    color: #f39800;
    font-family: "Robot";
    font-style: italic;
    margin-bottom: 10px;
}

p.top-information-txt {
    font-size: 16px;
    color: #01b6c7;
    font-weight: bold;
    margin-bottom: 40px;
}

.top-information-l ul {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    margin-top: 20px;
}

.top-information-l ul li:nth-child(1) {
    width: 44%;
    margin-left: 5%;
    margin-right: 1%;
    background: #01b6c7;
    border-radius: 3px;
}

.top-information-l ul li:nth-child(2) {
    width: 44%;
    margin-right: 5%;
    margin-left: 1%;
    background: #c93c71;
    border-radius: 3px;
}

.top-information-l ul li a {
    font-size: 15px;
    padding: 15px 40px 15px 20px;
    box-sizing: border-box;
    display: block;
    color: #fff;
    background: url(../img/arrow2.png) no-repeat 95% center;
}

.top-infobox {
    background: #fff;
    margin: 30px;
}

.top-infobox iframe {
    width: 100%;
    height: 300px;
}

.side-txt {
    position: absolute;
    left: -10px;
    top: 0;
    writing-mode: vertical-lr;
    color: #01b6c7;
    font-size: 13px;
    letter-spacing: .1em;
    padding-top: 30px;
    border-top: 1px dotted #01b6c7;
}

.side-txt span {
    font-family: "Robot";
    font-size: 15px;
    font-weight: bold;
}

@media all and (-ms-high-contrast: none) {
    .side-txt {
        writing-mode: bt-lr;
    }
}

/* ================================================ トップ物件 ================================================ */
.top-article {
    padding: 0 50px;
    position: relative;
    width: 1100px;
    margin: auto;
}

.top-article-inr {
    background: #f6f5f3;
    padding: 40px;
    margin: 40px auto 0;
}

.top-article-ttl {
    letter-spacing: -.5em;
}

.top-article-ttl-l, .top-article-ttl-r {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: bottom;
}

.top-article-ttl-l {
    width: 50%;
}

.top-article-ttl-r {
    width: 20%;
    margin-left: 30%;
}

h3.top-tintai-ttl {
    text-align: center;
    font-size: 24px;
    color: #01b6c7;
    font-weight: bold;
    margin-bottom: 30px;
}

h3.top-baibai-ttl {
    text-align: center;
    font-size: 24px;
    color: #c93c71;
    font-weight: bold;
    margin-bottom: 30px;
}

h3.top-tintai-ttl span, h3.top-baibai-ttl span {
    font-size: 14px;
    color: #000;
    font-weight: normal;
    margin-left: 1em;
}

.top-article-ttl-l h3 {
    padding-left: 40px;
    background: url(../img/top-article-icon.png) no-repeat left top;
    margin-bottom: 20px;
}

.top-article-ttl-l h3 span {
    font-family: "Robot";
    font-size: 30px;
    font-weight: bold;
    color: #01b6c7;
    margin-right: .5em;
}

.top-article-ttl-l p {
    line-height: 2;
}

.top-article-ttl-r ul li:nth-child(2) {
    border-bottom: 1px solid #01b6c7;
    margin-bottom: 10px;
}

.top-article-ttl-r ul li:nth-child(1) {
    border-bottom: 1px solid #c93c71;
}

.top-article-ttl-r ul li a {
    display: block;
    padding: 10px 40px 10px 10px;
}

.top-article-ttl-r ul li:nth-child(2) a {
    background: url(../img/arrow1.png) no-repeat 95% center;
}

.top-article-ttl-r ul li:nth-child(1) a {
    background: url(../img/arrow3.png) no-repeat 95% center;
}

.top-article-contents {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    display: -webkit-flex;
}

.top-article-contents-l, .top-article-contents-r {
    width: 48%;
    vertical-align: top;
    background: #fff;
    padding: 30px 30px 20px;
    box-sizing: border-box;
}

.top-article-contents-l {
    margin-right: 2%;
}

.top-article-contents-r {
    margin-left: 2%;
}

.top-article-contents-l table, .top-article-contents-r table {
    width: 100%;
}

table.top-table {
    table-layout: fixed;
    width: 100%;
}

table.top-table tr td {
    width: 48%;
    display: inline-block;
    font-size: 13px;
    margin-bottom: 10px;
}

tr.top-space {
    line-height: 110%;
    min-height: 170px;
    width: 100%;
}

.top-table tr:nth-child(2) {
    margin-bottom: 10px;
}

table.top-table tr td:nth-child(even) {
    margin-left: 2%;
}

table.top-table tr td:nth-child(odd) {
    margin-right: 2%;
}

table.top-table tr {
    display: none;
}

table.top-table tr:nth-child(1), table.top-table tr:nth-child(2), table.top-table tr:nth-child(3), table.top-table tr:nth-child(4), table.top-table tr:nth-child(5), table.top-table tr:nth-child(6) {
    display: table;
}

/* ================================================ トップ中部 ================================================ */
.top-planning {
    padding: 0 50px;
    width: 1100px;
    margin: 40px auto 0;
    position: relative;
}

.top-planning-inr {
    background: #ffebf3;
    padding: 40px;
    display: flex;
    flex-wrap: wrap;
    display: -webkit-flex;
}

.top-planning-l {
    width: 48%;
    margin-right: 2%;
}

.top-planning-r {
    width: 40%;
    margin: 0px 5%;
    background: #fff;
    text-align: center;
    padding: 20px 0;
    box-sizing: border-box;
}

.top-planning-l h3 {
    padding-left: 50px;
    background: url(../img/top-planning-icon.png) no-repeat left center;
    margin-bottom: 20px;
}

.top-planning-l h3 span {
    font-size: 30px;
    color: #c93c71;
    font-family: "Robot";
    font-weight: bold;
    margin-right: .5em;
}

.top-planning-l p {
    font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 21px;
    font-weight: bold;
    line-height: 2;
}

.top-planning-r a {
    display: block;
    max-width: 300px;
    margin: 20px auto 0;
    background: url(../img/arrow2.png) no-repeat 95% center #c93c71;
    color: #fff;
    padding: 15px 40px;
    box-sizing: border-box;
    border-radius: 4px;
}

/* ================================================ トップ下部 ================================================ */
.top-company {
    width: 1100px;
    margin: 40px auto 100px;
    padding: 0 50px;
    position: relative;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
}

.top-company-l, .top-company-r {
    width: 48%;
    border-radius: 4px;
    padding: 40px;
    box-sizing: border-box;
}

.top-company-l {
    margin-right: 2%;
    background: #f6f5f3;
}

.top-company-r {
    margin-left: 2%;
    background: #dcfafd;
}

.top-company-l h3 {
    margin-bottom: 20px;
    padding-left: 40px;
    background: url(../img/top-company-icon1.png) no-repeat left top;
}

.top-company-l h3 span {
    font-size: 30px;
    color: #01b6c7;
    font-family: "Robot";
    font-weight: bold;
    margin-right: .5em;
}

.sns-lr {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    background: #fff;
    padding: 40px 20px;
    margin-top: 20px;
    border-radius: 4px;
}

.sns-lr a {
    color: #fff;
    display: block;
}

.sns-r {
    width: 48%;
    margin-left: 2%; /* background: #4ecd00; */
    box-sizing: border-box;
    text-align: center;
    font-size: 15px;
    border-radius: 4px; /* background: url(../img/sns-icon1.jpg) no-repeat 25px center #4ecd00; */
}

.sns-r a {
    padding: 30px 20px 30px 100px;
}

.sns-l {
    width: 48%;
    margin-right: 2%;
    background: url(../img/sns-icon2.jpg) no-repeat 30px center #3b5998;
    text-align: center;
    box-sizing: border-box;
    border-radius: 4px;
}

.sns-l a {
    padding: 30px 20px 30px 70px;
}

.top-company-r h3 {
    padding-left: 40px;
    margin-bottom: 20px;
    background: url(../img/top-company-icon2.png) no-repeat left center;
}

.top-company-r h3 span {
    font-size: 30px;
    font-family: "Lato";
    margin-right: .5em;
    color: #01b6c7;
    font-weight: bold;
}

.top-company-r-lr {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    background: #fff;
    padding: 20px 20px;
    border-radius: 4px;
}

.top-company-r-l {
    width: 37%;
    text-align: center;
}

.top-company-r-r {
    width: 59%;
    margin-left: 4%;
}

.top-company-r-r p {
    margin-bottom: 10px;
}

.top-company-r-r p.b {
    font-weight: bold;
}

/* ================================================ フッター ================================================ */
footer {
    background: #f6f5f3;
}

.footer-inr {
    width: 1100px;
    margin: auto;
    padding: 50px;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
}

.footer-inr-l {
    width: 48%;
    margin-right: 2%;
}

.footer-inr-l h1 {
    max-width: 280px;
}

.footer-inr-l p {
    margin-top: 20px;
}

.footer-inr-r {
    width: 48%;
    margin-left: 2%;
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
}

.footer-inr-r h3 {
    color: #01b6c7;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 20px;
}

.footer-inr-r1, .footer-inr-r2, .footer-inr-r3 {
    width: 33.333%;
}

.footer-inr-r2 {
    margin-top: 35px;
}

.footer-inr-r ul li {
    margin-bottom: 5px;
}

.copyright {
    background: #01b6c7;
    color: #fff;
    padding: 50px 50px 0;
    text-align: center;
}

/* ================================================ info.html ================================================ */
.info-list {
    padding: 40px 30px;
}

.info-list ul li {
    border-bottom: 1px dashed #dadad6;
    padding: 20px 0;
    letter-spacing: -.5em;
    display: flex;
}

.info-list ul li:first-child {
    padding-top: 0;
}

.info-list ul li p {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: middle;
}

p.date {
    width: 20%;
    margin-right: 5%;
}

div.message {
    width: 75%;
}

/* ================================================ 下層共通 ================================================ */
.bread-crumbs {
    background: url(../img/mv-bg.jpg) repeat top left;
    margin-top: 20px;
    padding: 10px 50px;
    margin-bottom: 50px;
}

.bread-crumbs ul {
    width: 1100px;
    margin: auto;
    text-align: left;
    display: flex;
}

.bread-crumbs ul li {
    margin-right: 30px;
    font-size: 11px;
    position: relative;
}

.bread-crumbs ul li:after {
    content: ">";
    position: absolute;
    right: -15px;
    display: block;
    top: 0;
    bottom: 0;
    margin: auto;
}

.bread-crumbs ul li:last-child {
    margin-right: 0;
}

.bread-crumbs ul li:last-child:after {
    display: none;
}

.contents-wrap {
    width: 1100px;
    margin: auto;
    padding: 0 50px 60px;
}

td.table-right {
    padding-left: 50px;
    width: 860px;
    margin: auto;
}

td.side-menu {
    padding-bottom: 30px;
}

td.side-menu h3 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
}

td.side-menu h3 span {
    color: #01b6c7;
}

td.side-menu ul li {
    font-size: 15px;
    font-weight: bold;
    border-bottom: 1px solid #cccccc;
}

td.side-menu ul li:nth-child(1) {
    border-top: 1px solid #cccccc;
}

td.side-menu ul li a {
    display: block;
    padding: 10px 10px 10px 60px;
    background-size: 30px !important;
}

td.side-menu ul li:nth-child(1) a {
    background: url(../img/mv-btn1.png) no-repeat 5px center;
}

td.side-menu ul li:nth-child(2) a {
    background: url(../img/mv-btn2.png) no-repeat 5px center;
}

td.side-menu ul li:nth-child(3) a {
    background: url(../img/mv-btn3.png) no-repeat 5px center;
}

td.side-menu ul li:nth-child(4) a {
    background: url(../img/mv-btn4.png) no-repeat 5px center;
}

.sb-ttl h3 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 20px;
}

.sb-ttl h3 span {
    color: #01b6c7;
}

.sb-ttl p {
    font-size: 11px;
    margin-bottom: 10px;
}

.map-area {
    font-size: 15px;
}

div#search_map1 {
    margin: 10px 0;
}

td.side-btn a:first-child {
    display: block;
    color: #fff;
    background: url(../img/side-btn1.png) no-repeat 10px center, url(../img/arrow2.png) no-repeat 95% center #c93c71;
    margin-bottom: 10px;
    padding: 10px 10px 10px 60px;
    border-radius: 5px;
}

td.side-btn a:last-child {
    display: block;
    color: #fff;
    background: url(../img/side-btn2.png) no-repeat 10px center, url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    padding: 10px 10px 10px 60px;
    border-radius: 5px;
}

h2.ul-ttl {
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}

h2.ul-ttl span {
    position: relative;
    padding: 0 20px;
}

h2.ul-ttl span:after {
    width: 100%;
    height: 1px;
    background: #ccc;
    position: absolute;
    content: "";
    bottom: -10px;
    right: 0;
    left: 0;
}

/* ================================================ 会社概要 ================================================ */
table.company-table tr th {
    width: 21%;
    padding: 2% 2% 2% 0;
    box-sizing: border-box;
    border-bottom: 1px solid #cccccc; /* letter-spacing: .5em; */
    vertical-align: top;
}

table.company-table tr td {
    padding: 2% 0;
    border-bottom: 1px solid #cccccc;
    width: 79%;
    box-sizing: border-box;
    vertical-align: top;
}

.gmap {
    margin: 20px 0 0;
}

/* ================================================ お問合わせ ================================================ */
.form-txt p {
    margin-bottom: 20px;
}

.form-txt a {
    color: #01b6c7;
    text-decoration: underline;
}

table.form-table {
    width: 100%;
}

table.form-table tr th {
    width: 26%;
    box-sizing: border-box;
    padding: 2% 2% 2% 0;
    border-bottom: 1px solid #ccc;
}

table.form-table tr td {
    width: 74%;
    box-sizing: border-box;
    padding: 2% 0;
    border-bottom: 1px solid #ccc;
}

table.form-table tr td input[type="text"],
table.form-table tr td input[type="tel"],
table.form-table tr td input[type="email"] {
    font-size: 16px;
    width: 100%;
    padding: 3px;
    border-radius: 3px;
    border: 1px solid #cccccc;
    box-shadow: 0px 0px 3px #888 inset;
}

table.form-table textarea {
    box-shadow: 0 0 5px #888 inset;
    border-radius: 3px;
    border: 1px solid #ccc;
    padding: 3px;
}

table.form-table textarea {
    box-shadow: 0 0 5px #888 inset;
    border-radius: 3px;
    border: 1px solid #ccc;
    padding: 3px;
    width: 100%;
    height: 250px;
    overflow-y: scroll;
}

.form-btn ul {
    display: flex;
    flex-wrap: wrap;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    margin-top: 10px;
}

.form-btn ul li:first-child {
    margin-right: 1%;
}

.form-btn ul li:last-child {
    margin-left: 1%;
}

.form-btn ul li input {
    width: 180px;
    box-sizing: border-box;
    padding: 10px 20px 10px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
}

.form-btn ul li:first-child input {
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
}

.form-btn ul li:last-child input {
    background: url(../img/arrow2.png) no-repeat 95% center #b1b1b1;
}

.thanks-txt {
    text-align: center;
}

.thanks-txt p {
    margin-bottom: 20px;
}

.thanks-txt input {
    width: 180px;
    box-sizing: border-box;
    padding: 10px 20px 10px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    display: block;
    margin: 20px auto;
}

/* ================================================ プライバシーポリシー ================================================ */
ul.privacy-list li {
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    padding-bottom: 10px;
}

ul.privacy-list h3 {
    font-size: 24px;
    color: #01b6c7;
    margin-bottom: 10px;
}

ul.privacy-list li p {
    font-size: 16px;
    margin-bottom: 15px;
}

ul.privacy-list li p a {
    text-decoration: underline;
    color: #01b6c7;
}

/* ================================================ 不動産相談 ================================================ */
.toiawase-form {
    margin-top: 40px;
}

.toiawase-form table {
    width: 100%;
    table-layout: fixed;
}

table.toiawase-table tr th {
    width: 25%;
    box-sizing: border-box;
    padding: 2% 2% 2% 0;
    border-bottom: 1px solid #ccc;
    vertical-align: top;
}

table.toiawase-table tr td {
    width: 75%;
    box-sizing: border-box;
    padding: 2% 0;
    border-bottom: 1px solid #ccc;
    vertical-align: top;
}

table.toiawase-table tr td input[type="text"],
table.toiawase-table tr td input[type="email"],
table.toiawase-table tr td input[type="tel"] {
    font-size: 16px;
    width: 100%;
    padding: 3px;
    border-radius: 3px;
    border: 1px solid #cccccc;
    box-shadow: 0px 0px 3px #888 inset;
}

td.form-text1 span {
    display: inline-block;
    margin-right: 2%;
    /*width: 15%;*/
    letter-spacing: .1em;
    margin-bottom: 20px;
}

td.form-text1 input {
    width: 83% !important;
}

td.form-text2 span {
    /*width: 7%;*/
    /*display: inline-block;*/
    margin-right: 2%;
    /*margin-bottom: 20px;*/
}

td.form-text2 p {
    margin-bottom: 20px;
}

td.form-text2 input[type="text"] {
    width: 30% !important;
    margin-right: 2%;
}

td.form-text3 input {
    width: 8% !important;
    margin-right: 2%;
}

td.form-text4 input {
    width: 15% !important;
    margin-right: 2%;
}

td.form-text4 span {
    /*margin: 0 2%;*/
}

td.form-text5 ul {
    display: flex;
    flex-wrap: wrap;
    display: -webkit-flex;
}

td.form-text5 ul li {
    margin-bottom: 10px;
    width: 49%;
}

td.form-text5 ul li:nth-child(odd) {
    margin-right: 2%;
}

table.toiawase-table textarea {
    box-shadow: 0 0 5px #888 inset;
    border-radius: 3px;
    border: 1px solid #ccc;
    padding: 3px;
    width: 100%;
    height: 250px;
    overflow-y: scroll;
}

.checkbox01-input {
    display: none;
}

.checkbox01-parts {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
}

.checkbox01-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #999;
    border-radius: 4px;
    bottom: 0;
    margin: auto;
}

.checkbox01-input:checked + .checkbox01-parts {
    color: #01b6c7;
}

.checkbox01-input:checked + .checkbox01-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 5px;
    width: 7px;
    height: 14px;
    transform: rotate(40deg);
    border-bottom: 3px solid #01b6c7;
    border-right: 3px solid #01b6c7;
}

.toiawase-btn input {
    width: 180px;
    box-sizing: border-box;
    padding: 10px 20px 10px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    display: block;
    margin: 20px auto;
}

/* ================================================ 賃貸検索 ================================================ */
td.table-right.tintai-right table {
    width: 100%;
    table-layout: fixed;
}

p.tintai-txt {
    margin-bottom: 40px;
    text-align: center;
}

td.padb {
    padding-bottom: 2%;
    border-bottom: 1px solid #ccc;
}

tr.padt {
    padding-top: 2%;
}

tr.padt h3 {
    padding-top: 20px;
    padding-bottom: 5px;
    color: #01b6c7;
}

table.tintai-form select {
    padding: 3px;
    font-size: 16px;
    border-radius: 3px;
    border: 1px solid #cccccc;
    box-shadow: 0px 0px 3px #888 inset;
}

.radio02-input {
    display: none;
}

.radio02-input + label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
}

.radio02-input + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #999;
    border-radius: 50%;
    bottom: 0;
    margin: auto;
}

.radio02-input:checked + label {
    color: #009a9a;
}

.radio02-input:checked + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 3px;
    width: 11px;
    height: 11px;
    background: #009a9a;
    border-radius: 50%;
    bottom: 0;
    margin: auto;
}

input.tintai-btn {
    width: 180px;
    box-sizing: border-box;
    padding: 10px 20px 10px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    display: block;
    margin: 20px auto;
}

tr.last-none {
    line-height: 130%;
}

/* ================================================ 詳細情報 ================================================ */
td.table-right.shosai-right table {
    table-layout: fixed;
    width: 100%;
}

th.shosai-ttl {
    background: #1eb6c6 !important;
    color: #fff;
}

table.shosai-table tr th {
    background: #eee;
    text-align: center;
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 20px;
    letter-spacing: .2em;
}

table.shosai-table tr td {
    padding: 20px;
    border: 1px solid #ccc;
}

td.shosai-btn1 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
}

td.shosai-btn1 a {
    width: 180px;
    box-sizing: border-box;
    padding: 14px 20px 14px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    display: block;
    margin-right: 20px;
    text-align: center;
    line-height: 100%;
}

td.shosai-btn1 input {
    width: 250px;
    box-sizing: border-box;
    padding: 10px 20px 10px 10px;
    border: none;
    font-size: 16px;
    color: #fff;
    border-radius: 5px;
    background: url(../img/arrow2.png) no-repeat 95% center #01b6c7;
    display: block; /* margin: 20px auto; */
    margin-right: 20px;
    text-align: center;
}

/* ================================================ add ================================================ */
.center {
    text-align: center;
}

.f14 {
    font-size: 14px;
}

a.search-back {
    color: #01b6c7;
    text-decoration: underline;
}

img.list_photo {
    width: 100%;
    height: 100%;
    display: block;
    padding: 10px;
    box-sizing: border-box;
    max-height: 197px;
    aspect-ratio: 224 / 155;
    overflow: clip;
    object-fit: cover;
}

td.bukken-border-b { /* padding-top: 10px !important; */
    /*display: block;*/
    border-top: 2px solid #01b6c7;
    margin-top: 10px;
}

/* ===== 物件詳細ページ用レイアウト調整 ===== */
.detail-wrap {
    width: 960px; /* サイト幅に合わせて調整 */
    margin: 0 auto 60px;
}

.detail-wrap .ul-ttl {
    margin: 30px 0;
    text-align: center;
}

.detail-main {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}

/* 写真エリア */
.detail-photo {
    flex: 0 0 420px; /* 左側：写真幅 */
    padding-right: 30px;
}

.detail-photo img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 20px;
}

/* 情報エリア */
.detail-info {
    flex: 1;
    font-size: 14px;
    line-height: 1.8;
}

.detail-info p {
    margin-bottom: 8px;
}

/* おすすめポイント */
.detail-comment {
    margin-top: 30px;
    padding: 20px;
    border: 1px solid #eee;
    background: #f9f9f9;
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 30px;
}

/* 一覧に戻るリンク */
.detail-wrap .center a.search-back {
    display: inline-block;
    margin-top: 10px;
}


.topBukkenList {
    display: flex;
    flex-wrap: wrap;
    gap: 40px 20px;
    align-items: start;
}

.topBukkenList > div {
    width: calc(50% - 20px);
    display: block;
}
.topBukkenList > div a div p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.topBukkenList > div a div p:last-child {
    display: -webkit-box;
    -webkit-line-clamp: 3; /* 表示する最大行数 */
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
}

/*----------------物件詳細ページ修正20251218--*/

/* =========================================================
   太基不動産 物件詳細（売買/賃貸 共通デザイン）
========================================================= */
.taiki-detail-page{ background:#fff; }
.taiki-inner{ width:1000px; max-width:calc(100% - 24px); margin:0 auto; }

.taiki-breadcrumb{
  background:#eaf6f7; border-bottom:1px solid #d7eef0;
  padding:10px 0; font-size:12px; color:#666;
}
.taiki-breadcrumb a{ color:#2aa3ad; text-decoration:none; }
.taiki-breadcrumb a:hover{ text-decoration:underline; }
.taiki-breadcrumb span{ margin:0 4px; }

.taiki-layout{ display:flex; gap:24px; padding:20px 0 40px; }
.taiki-side{ width:190px; flex:0 0 190px; }
.taiki-main{ flex:1 1 auto; min-width:0; }

.taiki-page-title{
  text-align:center; font-size:22px; letter-spacing:.08em;
  margin:0 0 10px; color:#222; font-weight:700;
}
.taiki-title-rule{ height:1px; background:#d7eef0; margin:0 0 18px; }

.taiki-card{ border:1px solid #d7eef0; background:#fff; }
.taiki-card-head{
  background:#27a9b4; color:#fff;
  padding:10px 14px; display:flex; align-items:center; gap:10px;
  font-size:14px; font-weight:700;
}
.taiki-badge{
  display:inline-block;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.35);
  padding:2px 8px; border-radius:2px;
  font-size:12px; letter-spacing:.06em;
}
.taiki-head-title{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.taiki-table-wrap{ overflow-x:auto; }
.taiki-detail-table{
  width:100%; border-collapse:collapse; table-layout:fixed;
  font-size:13px;
}
.taiki-detail-table th,
.taiki-detail-table td{
  border:1px solid #e6e6e6; padding:10px 10px; vertical-align:top;
}
.taiki-detail-table th{
  width:6%; background:#f3f3f3; color:#333;
  font-weight:700; text-align:left;
}
.taiki-detail-table td{ width:32%; background:#fff; color:#333; }
.taiki-detail-table td.taiki-price{ font-weight:800; }
.taiki-multiline{ line-height:1.7; }

.taiki-photo-row .taiki-photo-th{
  background:#f3f3f3; width:18%;
  vertical-align:middle; text-align:center;
  font-weight:700; letter-spacing:.06em;
}
.taiki-photo-row .taiki-photo-td{ padding:18px 14px; }
.taiki-photo-main-wrap{ width:100%; max-width:430px; margin:0 auto; }
.taiki-photo-main-wrap img{ width:100%; height:auto; display:block; }
.taiki-photo-thumbs{ display:flex; gap:10px; justify-content:center; margin-top:10px; }
.taiki-thumb{ width:120px; }
.taiki-thumb img{ width:100%; height:auto; display:block; }
.taiki-floorplan{ max-width:420px; }

.taiki-actions{
  display:flex; gap:12px; justify-content:center;
  padding:18px 14px 20px;
  border-top:1px solid #d7eef0; background:#fff;
}
.taiki-btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:220px; height:44px; padding:0 16px;
  text-decoration:none; border-radius:2px;
  font-weight:700; letter-spacing:.06em; font-size:13px;
}
.taiki-btn-primary{ background:#2aa3ad; color:#fff; border:1px solid #2aa3ad; }
.taiki-btn-primary:hover{ opacity:.9; }
.taiki-btn-ghost{ background:#2aa3ad; color:#fff; border:1px solid #2aa3ad; }
.taiki-btn-ghost:hover{ opacity:.9; }

@media (max-width:980px){
  /*.taiki-layout{ flex-direction:column; }*/
  .taiki-side{ width:100%; flex:0 0 auto; }
}
@media (max-width:600px){
  .taiki-btn{ min-width:0; width:100%; }
  .taiki-actions{ flex-direction:column; }
  .taiki-detail-table{ font-size:12px; }
}

/*----------------物件詳細ページ追加修正20251218--*/
.taiki-spec-table{
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #d9d9d9;
  font-size: 13px;
  color: #333;
}

.taiki-spec-table col.c-th  { width: 140px; }
.taiki-spec-table col.c-td1 { width: 170px; }
.taiki-spec-table col.c-td2 { width: 120px; }
.taiki-spec-table col.c-th2 { width: 110px; }
.taiki-spec-table col.c-tdr { width: 110px; }

.taiki-spec-table th,
.taiki-spec-table td{
  border: 1px solid #d9d9d9;
  padding: 10px 12px;
  vertical-align: middle;
  line-height: 1.4;
  word-break: break-word;
}

.taiki-spec-table > tbody > tr:not(.taiki-spec-head) > th{
  background: #efefef;
  font-weight: 700;
  text-align: left;
}

.taiki-spec-head th{
  background: #2aa7b6;
  color: #fff;
  border-color: #2aa7b6;
  padding: 10px 12px;
  text-align: left;
}

.taiki-spec-head .taiki-badge{
  display:inline-block;
  background:#0e7f8e;
  color:#fff;
  font-size:12px;
  font-weight:700;
  padding:4px 10px;
  border-radius:3px;
  margin-right:10px;
}

.taiki-val-sqm{ font-weight:600; }
.taiki-val-sub{ color:#666; font-size:12px; }
.taiki-price{ font-weight:800; }

.taiki-multiline{ white-space: normal; }

/* 1列行の中だけ “見た目2列” を作る（表の中央線は出さない） */
.taiki-split{
  display: flex;
  gap: 0;
  align-items: center;
}

.taiki-split-left{
  display:block;
  width: 55%;
  padding-right: 12px;
  border-right: 1px solid #d9d9d9;
  font-weight: 600;
}

.taiki-split-right{
  display:block;
  width: 45%;
  padding-left: 12px;
  color:#666;
  font-size:12px;
}

/* ㎡ と （約◯◯坪）を “同じ間隔” に揃える */
.taiki-area-split{
  display: grid;
  grid-template-columns: max-content max-content; /* ←ここがポイント */
  column-gap: 14px; /* ←建物面積と同じ見え方になるように調整 */
  align-items: center;
  width: 100%;
}

.taiki-area-split .taiki-sqm{
  padding-right: 0;
}

.taiki-area-split .taiki-tsubo{
  padding-left: 14px;            /* column-gap と合わせる */
  border-left: 1px solid #e6e6e6;
  white-space: nowrap;
}

/* 写真等：サブ画像もメインと同じ横幅にする */
.taiki-photo-thumbs,
.taiki-thumb {
  width: 100%;
  max-width: 430px;
  margin: auto;
}

/* 基本：横並び（PC/タブレット） */
.taiki-layout{
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.taiki-side{
  flex: 0 0 260px;   /* サイド固定幅 */
}

.taiki-main{
  flex: 1 1 auto;
  min-width: 0;      /* はみ出し防止（超重要） */
}

/* スマホでも横並びを維持（サイドを細くして同画面に収める） */
@media (max-width: 768px){
  .taiki-layout{
    flex-wrap: nowrap; /* 縦に落とさない */
    gap: 12px;
  }

  .taiki-side{
    flex: 0 0 clamp(120px, 32vw, 180px); /* スマホ用にサイド幅を可変で細く */
  }

  .taiki-main{
    flex: 1 1 auto;
    min-width: 0;
  }

  /* 文字がきつい場合の保険（任意） */
  .taiki-detail-table th,
  .taiki-detail-table td{
    font-size: 14px;
  }
}




