@charset "UTF-8";

html,body {
	font-family: "Roboto", "Noto Sans JP", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #353535;
    font-size: 16px;
	-webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 991px) {
    html, body {font-size: 15px;}
}
@media screen and (max-width: 767px) {
    html, body {font-size: 14px;}
}
@media screen and (max-width: 479px) {
	/* html, body {font-size: 13px;} */
    html, body {font-size: calc(100vw / 28.75);}
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p {margin: 0; font-size: 100%;}
ol, ul, p {padding: 0;}
img {max-width: 100%; height: auto;}
a:hover img {opacity: 0.85;}
/* a:hover {color: #9A9A9A !important;} */
button:hover {opacity: 0.85;}
a:hover {opacity: 0.75;}

@media (min-width: 992px) {
    .text-14 { font-size: 87.5%;}
    .text-15 { font-size: 93.75%;}
    .text-18 { font-size: 112.5%;}
    .text-20 { font-size: 125%;}
    .text-22 { font-size: 137.5%;}
    .text-24 { font-size: 150%;}
    .text-28 { font-size: 175%;}
    .text-32 { font-size: 200%;}
}
@media (max-width: 991.98px) {
    .text-14 { font-size: 100%;}
    .text-15 { font-size: 100%;}
    .text-20 { font-size: 100%;}
    .text-22 { font-size: 100%;}
    .text-24 { font-size: 106%;}
    .text-28 { font-size: 120%;}
    .text-32 { font-size: 150%;}
    .text-11sp { font-size: 73.3%;}
    .text-14sp { font-size: 93.3%;}
    .text-100sp { font-size: 100% !important;}
    .text-200sp { font-size: 200% !important;}
}

/* 共通パーツ */
.breadcrumb-block {background: #F6F6F6; padding: 0.5rem 0;}
.breadcrumb-block li, .breadcrumb-block li.active, .breadcrumb-block li a {color: #8D8D8D; font-size: 0.875rem;}
.main-title {padding-top: 1.5rem; padding-bottom: 2rem;}
.main-title h2 {font-size: 175%; font-weight: bold; margin-bottom: 0.35rem;}
.main-title p {color: #676767;}
h3.h3bg1 {margin-bottom: 5px;}
.box1 p.keisai {margin-bottom: 0;}
ul.list1 {margin: 0;}
ul.list1 li:last-child {margin-bottom: 0;}

/*住まいの維持管理のポイント(ブルーのナビゲーションのスタイル)*/
.kanri-link {
    display: flex;
    justify-content: space-between;
}
.kanri-link li {
    width: 33%;
    text-align: center;
    background: #DFE8EA;
}
.kanri-link li a {
    display: block;
    width: 100%;
    padding: 16.5px 0;
}
.kanri-link li a:link {
    color: #2375AA;
}
.kanri-link li a:visited {
    color: #2375AA;
}
.kanri-link li.current {
    background: #DBF0F5;
    padding: 16.5px 0;
    color: #2375AA;
    font-weight: bold;
    position: relative;
}
.kanri-link li.current::after {
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    position: absolute;
    bottom: 8px;
    left: 50%;
    border-left: 2px solid #2375AA;
    border-bottom: 2px solid #2375AA;
    transform: rotate(-45deg);
}
.u_line {
    text-decoration: underline;
}

/* 静的ページCSS */
.contents-wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding-bottom: 5%;
}
.contents-wrap > .w720 > .box9 > .w580 > .box10 > h3 {background: #f0f5e4;}

/* tableスタイル調整 */
table.td01-w20 td:first-child {width: 20%;}
table.td01-w25 td:first-child {width: 25%;}
table.td01-w30 td:first-child {width: 30%;}
table.td01-w35 td:first-child {width: 35%;}
table.td01-w40 td:first-child {width: 40%;}

@media (min-width: 768px) {
    /* ○○の物件情報 */
    .contents-wrap > .fl.w720 > .p-b30 > .p-b30 + .box7 {width: 429px;}
}
@media (max-width: 1199.98px) {
    .main-wrap .container {max-width: 100%;}
}
@media (max-width: 991.98px) {
    .contents-wrap > .w210 {width: 100%; padding-top: 3rem;}
}
@media (max-width: 767.98px) {
    .contents-wrap {
        margin-bottom: 0;
        padding-right: 0;
        padding-left: 0;
    }
    /* ページ */
    .contents-wrap > .w720  {width: 100%;}
    .w720,.w520  {width: 100%!important;}
    /* ○○エリア情報 */
    .contents-wrap > .w720 > .w330  {width: 100%;}
    .contents-wrap > .w720 > .w360  {width: 100%; padding-top: 3rem; display: block;}
    /* ○○の物件情報 */
    .contents-wrap > .w720 > p + div > img {float: initial;}
    .contents-wrap > .fl.w720 > .p-b30 > .p-b30 > table.area {width: 100%;}
    .contents-wrap > .fl.w720 > .p-b30 > .p-b30 + .box7 {width: 100%;}
    /* ○○のおすすめスポット */
    .contents-wrap > .w720 > h3.h3bg2 {height: 100%; padding: 10px; margin-bottom: 10px; background-size: contain;}
    .contents-wrap > .w720 > h3.h3bg2 + img,
    .contents-wrap > .w720 > h3.h3bg2 + .w150.fl,
    .contents-wrap > .w720 > h3.h3bg2 + .w160.fl {width: 40% !important;}
    .contents-wrap > .w720 > h3.h3bg2 + .w150.fl > img,
    .contents-wrap > .w720 > h3.h3bg2 + .w160.fl > img {width: 100%;}
    .contents-wrap > .w720 > h3.h3bg2 + img + .fr,
    .contents-wrap > .w720 > h3.h3bg2 + .fl + .w550.fr {width: 58%;}

    /* カラム */
    /* 不動産を探す */
    .contents-wrap > .w720 > .box9 > h2 > img {width: 3.5rem;}
    .contents-wrap > .w720 > .box9 > .w580 {width: 100%; padding-top: 0.65rem;}
    .contents-wrap > .w720 > .box9 > .w580 > .box10 {width: calc(95% / 2);}
    /* おすすめスポット、美味しいもの */
    .contents-wrap > .w720 .box8 > h2 {width: 100%; display: flex; padding-bottom: 1rem;}
    .contents-wrap > .w720 .box8 > h2.fl {justify-content: start;}
    .contents-wrap > .w720 .box8 > h2.fr {justify-content: end;}
    .contents-wrap > .w720 .box8 > h2 > img {width: 3.5rem;}
    .contents-wrap > .w720 .box8 > .fl:not(h2) {width: calc(100% / 3);}
    .contents-wrap > .w720 .box8 > .fl > p > a > img {width: 95%;}

    .contents-wrap > .w720 > p + div > img {float: initial;}
    /* 住まい探しの知識・情報 */
    .contents-wrap > .w720 > .p-b30 > .w500 {width: 100%;}

    /* 住まいの法律を知る */
    .contents-wrap > .w720 > .w380  {width: 100%;}
    /* 住まいのトラブル相談室 */
    .contents-wrap > .w720 > .w500  {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .w500  {width: 100%;}
    .contents-wrap > .w720 > .box1 > .w550  {width: 100%;}
    /*（動画）戸建てを買う流れを知ろう*/
    .contents-wrap > .w720 > iframe  {width: 100%;}
    /*住宅の瑕疵保険*/
    .contents-wrap > .w720 > .p-b30 > .w450  {width: 100%;}
    /*建物状況調査（インスペクション）*/
    .contents-wrap > .w720 > .p-b20 > .w450  {width: 100%;}
    /*防災関連情報*/
    .contents-wrap > .w720 > .w345  {width: 100%;}
    /*貸すときに知っておきたいこと*/
    .contents-wrap .w480  {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .box1 > .w500,.w150  {width: 100%!important;}
    /*売るときに知っておきたいこと*/
    .contents-wrap .w720 .w290 {width: 100%;}
    .contents-wrap > .w720 > .p-b20 > .w340 {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .w310 {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .w380 {width: 100%;}
    .contents-wrap > .w720 > .p-b20 > .w380 {width: 100%;}
    .contents-wrap > .w720 > .p-b20 > .w400 {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .w400 {width: 100%;}
    .contents-wrap > .w720 > .p-b40 > .p-b10 > .w340 {width: 100%;}

    /*float: right;解除*/
    .fr-xs-none {
        float: none!important;
        padding-left: 0!important;
    }
    /*table.border レスポンシブ対応*/
    table.border {font-size: 12px;}
    table.border td {white-space: normal!important;}
    table.fj-rent-chukai td:first-child {width: 30%;}

    /*付与した要素を非表示*/
    .hidden-xs {display: none;}

    /*重説などの画像のみ掲載のページ*/
    .imagePage {padding: 0 15px;}
    .imagePage img {width: 100%;height: auto;}
}
@media (max-width: 575.98px) {
    /* ページ */
    /* ○○の物件情報 */
    .contents-wrap > .w720 > p + div > img + div > table {width: 100%;}
    .contents-wrap > .w720 > p + div > .box7 {width: 100%;}
    /* ○○のおすすめスポット */
    .contents-wrap > .w720 > h3.h3bg2 + img,
    .contents-wrap > .w720 > h3.h3bg2 + .w150.fl,
    .contents-wrap > .w720 > h3.h3bg2 + .w160.fl {width: 100% !important;}
    .contents-wrap > .w720 > h3.h3bg2 + img + .fr,
    .contents-wrap > .w720 > h3.h3bg2 + .fl + .w550.fr {width: 100%; padding-top: 1rem;}

    /* カラム */
    /* 不動産を探す */
    .contents-wrap > .w720 > .box9 > .w580 > .box10 {width: 95%;}
    /* おすすめスポット、美味しいもの */
    .contents-wrap > .w720 .box8 > .fl:not(h2) {width: calc(100% / 2);}
    .contents-wrap > .w720 .box8 > .fl + .clear.p-b15 {clear: initial;}
}

/* header */
header nav {
    border-bottom: 1px solid #C4C4C4;
}
@media (min-width: 992px) {
	header .nav-logo {
		height: 86px;
	}
	.navbar .logo-hato {
		width: auto;
		height: 46px;
	}
}
.header-menu .item {
    border-left: 1px solid #C4C4C4;
    color: #353535;
}
.main-menu {
    border-top: 1px solid #C4C4C4;
}
.main-menu > ul > li > div, .main-menu > ul > li:nth-of-type(-n+4) > a {
    border-left: 1px solid #C4C4C4;
}
.main-menu > ul > li .arrow {
    color: #0061CF;
    opacity: 0.5;
    font-size: 16px;
}
.main-menu .icon {
    width: 30px;
    height: 30px;
}
.main-menu ul li a {
    color: #353535;
}
.main-menu ul li.has-sub {
	cursor: pointer;
    position: relative;
}
.main-menu ul li.has-sub ul.sub {
    padding: 0;
    width: 200px;
    position: absolute;
    top: 84px;
    left: 0;
    z-index: 1;
}
.main-menu ul li.has-sub ul.sub li {
    margin-bottom: -1px;
    display: block;
}
.main-menu ul li.has-sub ul.sub li:last-child {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}
.main-menu ul li.has-sub ul.sub li a {
    background-color: #F9F9F9;
    display: block;
}
.main-menu ul li.has-sub ul.sub li a:hover {
    opacity: 1;
    /* filter: brightness(1.1); */
	background: #FFF;
}
@media (min-width: 992px) {
    .icon-mypage {
        display: none;
    }
    .main-menu ul li.has-sub ul.sub {
        display: none;
    }
    .main-menu ul li.has-sub:hover ul.sub {
        display: block;
    }
}
@media (max-width: 991.98px) {
    .navbar-brand.logo {
        width: 35%;
    }
    .btn-sp.toggler-icon {font-size: 21.5px;}
    .btn-sp.toggler-icon {
        color: transparent !important;
        border-color: transparent !important;
    }
    .btn-sp.toggler-icon.collapsed span {
        background-image: url(../images/navbar-toggler-icon.svg) !important;
    }
    .btn-sp.toggler-icon span {
        background-image: url(../images/navbar-toggler-icon-close.svg) !important;
    }
    .header-menu {
        background: #F9F9F9;
        border-top: 1px solid #dee2e6;
    }
    .header-menu .item {
        border-left: none;
    }
    .main-menu {
        background: #F9F9F9;
        padding: 0 0.5rem 0.75rem;
        border-top: none;
    }
    .main-menu .icon {
        margin-right: 10px;
    }
    .main-menu > ul {
        display: block;
        padding: 0;
    }
    .main-menu > ul > li {
        background: #fff;
    }
    .main-menu > ul > li:first-child {
        border-top-right-radius: 0.5rem;
        border-top-left-radius: 0.5rem;
    }
    .main-menu > ul > li:last-child {
        border-bottom-right-radius: 0.5rem;
        border-bottom-left-radius: 0.5rem;
    }
    .main-menu > ul > li > div, .main-menu > ul > li:nth-of-type(-n+4) > a {
        border-left: none;
    }
    .main-menu > ul > li {
        border-left: 1px solid #C4C4C4;
        border-right: 1px solid #C4C4C4;
        position: relative;
    }
    .main-menu > ul > li:nth-of-type(-n+4) {
        border-top: 1px solid #C4C4C4;
    }
    .main-menu > ul > li:last-child {
        border-bottom: 1px solid #C4C4C4;
    }
    .main-menu > ul > li .arrow {
        position: absolute;
        right: 3%;
        top: 35%;
    }
    .main-menu ul li.has-sub ul.sub:not(.show) {
        display: none;
    }
    .main-menu ul li.has-sub ul.sub {
        width: 100%;
        position: initial;
    }
    .main-menu ul li.has-sub ul.sub li a {
        border-left: none;
        border-right: none;
        border-radius: 0;
        background-color: #fff;
        padding: 0.75rem 1.5rem;
    }
}
.head-text {
    color: #353535;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
    line-height: 1.65;
}
.header-menu .item span {
    font-size: 14px;
}
.header-menu .item span:first-child:not(.mypage) {
    color: #E11818;
}
.header-menu .item span.num {
    font-size: 22px;
}
.header-menu .item span.mypage {
    font-size: 24px;
    line-height: 1.35;
}
.sp-dropdown #dropdownMenuButton,
.header-menu #dropdownMenuButton {
	background: none;
	border: 0;
	border-left: 1px solid #C4C4C4;
}
.header-menu #dropdownMenuButton .auth-nickname {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 9em;
	font-size: 0.875rem;
}
.sp-dropdown #dropdownMenuButton {
	border: 0;
}
.sp-dropdown #dropdownMenuButton span.mypage {
	color: #353535;
	font-size: 16px;
}
.sp-dropdown #dropdownMenuButton .auth-nickname {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 9em;
	font-size: 0.5rem;
}
.main-menu ul li .item-a span:first-child {
    font-size: 24px;
}
.main-menu ul li .item-b span:first-child {
    font-size: 22px;
}
.main-menu ul li .item-a .small,
.main-menu ul li .item-b .small {
    font-size: 14px;
}
.main-menu ul li .item-c {
    font-size: 16px;
}
.main-menu ul li.has-sub ul.sub li a {
    font-size: 14px;
}
@media (max-width: 1199.98px) {
    .main-menu ul li .item-c {
        font-size: 15px;
    }
}
@media (max-width: 991.98px) {
    .header-menu .item span {
        font-size: 12px;
    }
    .header-menu .item span.num {
        font-size: 18px;
    }
    .main-menu ul li .item-c {
        font-size: 16px;
        padding-left: 1.5rem;
    }
}

/* footer */
footer {background: #F3F3F3;}
footer .copyright {font-size: 80%; color: #9A9A9A;}
footer .link-group {padding-left: 0;}
footer .logo-hato-icon { width: 56px;}
@media (max-width: 767px) {
    footer .logo-hato-icon { width: 36px;}
}
footer .hatosapo-link img.logo {
	height: 32px;
	width: auto;
}
footer .hatosapo-link a.text-darkgray {
	color: #353535 !important;
}
footer .hatosapo-link a.text-red {
	color: #E11818 !important;
}
@media (min-width: 992px) {
    footer .link-group {
        display: flex;
        align-items: center;
    }
}
@media (max-width: 991.98px) {
    footer .link-group {
        font-size: 14px;
        display: flex;
        flex-direction: column;
        border-radius: 0.5rem;
    }
    footer .link-group-item:first-child {
        border-top-left-radius: inherit;
        border-top-right-radius: inherit;
        margin-bottom: -1px;
    }
    footer .link-group-item:last-child {
        border-bottom-left-radius: inherit;
        border-bottom-right-radius: inherit;
    }
    footer .link-group-item {
        position: relative;
        display: block;
        padding: 0.85rem 1rem;
        background-color: #fff;
        border: 1px solid #C4C4C4;
    }
    footer .link-group-item::after {
        position: absolute;
        top: 30%;
        right: 3%;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f0da";
    }
    footer .link-group-item a {
        color: #212529;
        text-decoration: none;
    }
	footer .hatosapo-link .links {
		width: 100%;
	}
}
.footer-menu-item {background-color: transparent;}
.footer-menu-link > a {
    display: block;
    padding-bottom: 1rem;
    /* font-size: 120%; */
    color: #353535;
}
.footer-menu-sub {padding-left: 0; margin-bottom: 0;}
.footer-menu-sub li a {
    display: block;
	font-size: 0.875rem;
    padding-bottom: 0.75rem;
    color: #353535;
}
@media (min-width: 992px) {
    .footer-menu {border-top: 1px solid #C4C4C4;}
    .footer-menu-item {width: calc(100% / 4); border: none;}
    .footer-menu-item:not(:last-child) {padding-right: 2rem;}
    .footer-menu-link > a {text-decoration: none;}
    .footer-menu-item .accordion-header {display: none;}
    .footer-menu-item .accordion-collapse {display: block;}
}
@media (max-width: 991.98px) {
    .footer-menu-item:last-child {
        border-bottom: 1px solid rgba(0,0,0,.125) !important;
    }
    .footer-menu-item .accordion-header {
        font-size: 14px;
        position: relative;
    }
    .footer-menu-item .accordion-header::after {
        position: absolute;
        top: 35%;
        right: 3%;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f0d7";
    }
    .footer-menu-item .accordion-button {
        font-size: 14px;
        background-color: transparent;
    }
    .footer-menu-item .accordion-button::after {
        width: 0;
        height: 0;
        background-image: none;
    }
    .footer-menu-item .accordion-button:focus {
        border-color: transparent;
        box-shadow: none;
    }
    .footer-menu-item .accordion-button:not(.collapsed) {
        color: #212529;
    }
    .footer-menu-link {
        background: #EAEAEA;
        padding: 1rem 1.5rem;
        border-top: 1px solid #C4C4C4;
    }
}