@charset "utf-8";
/**
 * 住宅ホットナビ Webサイト用 スタイルシート
 * Flow/FAQ設定
 *
 * :::::: ::::::::: ::::::::: ::::::::: :::::::
 * 最終更新日:	2021.05.10
 * 作成日:		2021.03.16
 * :::::: ::::::::: ::::::::: ::::::::: :::::::
 */


.intro .icon-paste{
    content: url(../images/common/paste-solid.svg);
}
.intro .icon-circle-question{
    content: url(../images/common/circle-question-solid.svg);
}

/* ::::::	[SECTION : FLOWCAHRT]	::::::: */
p{
	margin-bottom: 0;
}

/* フローチャートブロック
--------- --------- --------- ------- */
.flowchart-block-area{
    width: 100%;
    display: flex;
    justify-content: center;
}

.flowchart-block {
    width: 80vw;
	display: flex;
    flex-direction: row-reverse;
    min-height: 400px;
}
@media (max-width: 1299px) {
	.flowchart-block {
		width: 85vw;
		min-height: unset;
	}
}
@media (max-width: 991px) {
	.flowchart-block {
		width: 90vw;
	}
}

/* フローチャート
--------- --------- --------- ------- */
.flowchart {
	counter-reset: number 0;
	background-color: #ffffff;
}
.flowchart ul,
.flowchart ol {
	margin-left: 0;
	padding-left: 0;
}

/* 処理終了
--------- --------- --------- ------- */
.flowchart-end {
	background-color: rgba(0, 0, 0, 0.1);
	color: #ffffff;
	display: inline-block;
}
.flowchart-end::before {
	content: "完了！";
	width: 100%;
	height: 100%;
	padding: 0.5em;
	border-radius: 3px;
	display: inline-block;
	background-color: rgba(255, 0, 0, 0.1);
}

/* フローチャート テキスト用設定
--------- --------- --------- ------- */
.flowchart-text{
	margin-bottom: 10rem;
	color: #003366;
}
.flowchart-text dd{
    box-shadow: 0 2px 6px 0px rgba(0, 0, 0, 0.4);
    border-radius: 10px;
	padding: 2rem 2.5rem;
    background-color: #ffffff;
    width: 63vw;
}
.flowchart-text dt{
	color: #003366;
	font-size: 1.8rem;
	background-color: #ffffff;
    padding: 1.3rem 0;
	width: fit-content;
	margin-bottom: 0;
	font-weight: 600;
}
.under-line{
	background: linear-gradient(transparent 50%, #ffffcd 50%);
}
@media (max-width: 1299px) {
	.flowchart-text{
		margin-left: 1.5rem;
		margin-bottom: 7rem;
	}
	.flowchart-text dd{
		width: 70vw;
		padding: 2rem 2rem;
	}
}
@media (max-width: 991px) {
	.flowchart-text{
		margin-left: 1.5rem;
		margin-bottom: 6rem;
	}
	.flowchart-text dd{
		width: 75vw;
		padding: 2rem;
	}
	.flowchart-text dt{
		font-size: 1.5rem;
	}
}
@media (max-width: 767px) {
	.flowchart-text{
		margin-left: 0.3rem;
	}
	.flowchart-text dd{
		width: 77vw;
        padding: 1.5rem;
        margin-left: -1rem;
	}
	.flowchart-text dt{
		font-size: 1.3rem;
		padding: 0.8rem 0;
	}
}
@media (max-width: 575px) {
	.flowchart-text dd{
		box-shadow: none;
		border-radius: 0px;
		background-color: transparent;
        width: 84vw;
		padding: 0 0.7rem 0 3.5rem;
        margin-left: -1rem;
	}
	.flowchart-text dt{
		font-size: 1.3rem;
        display: flex;
		padding-bottom: 0.8rem;
		padding-top: 0;
        flex-direction: column;
        align-items: flex-start;
		.under-line{
			margin-left: 2.5rem;
		}
	}
}

/* フローチャート 画像
--------- --------- --------- ------- */
.flowchart-image {
	width: 17vw;
	position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.flowchart img {
	max-width: 170px;
	width: 67%;
    position: relative;
    z-index: 5;
	background-color: #ffffff;
    padding: 0.7rem 0;
	margin-top: -60px;
	border-radius: 50%;
}
@media (max-width: 1299px) {
	.flowchart-image {
		width: 15vw;
	}
	.flowchart img {
        margin-top: -24px;
        min-width: 110px;
        max-width: 130px;
		padding: 0.5rem 0;
	}
}
@media (max-width: 991px) {
	.flowchart-image {
		width: 15vw;
	}
	.flowchart img {
        margin-top: -6px;
	    min-width: 90px;
	}
}
@media (max-width: 767px) {
	.flowchart img {
        margin-top: -19px;
        min-width: 74px;
	}
}
@media (max-width: 575px) {
	.flowchart-image {
		width: 1vw;
	}
	.flowchart img {
        margin-top: -6px;
        width: 80%;
        min-width: 67px;
		padding: 0.3rem 0;
	}
}

/* フローチャート ライン
--------- --------- --------- ------- */
.border-line {
    position: absolute;
    left: 50%;
    top: 0;
    width: 2px;
    height: 98%;
    border: dashed 2px #2b619796;
    z-index: 1;
}
@media (max-width: 991px) {
	.border-line {
		height: 99%;
	}
}
@media (max-width: 767px) {
	.border-line {
		border: dashed 1px #2b619796;
	}
}

/* 見出し　ステップ（買取）
--------- --------- --------- ------- */
.step-buy{
	color: #66cccc;
	font-size: 2rem;
	padding-bottom: 0.2rem;
    font-family: "Cascadia Code";
    font-weight: 900;
    position: relative;
    z-index: 5;
	margin-right: 1.5rem;
}
.step-buy::after {
	counter-increment: number 1;
	content: "0" counter(number);
	display: inline-block;
}
@media (max-width: 1299px) {
	.step-buy{
		font-size: 1.8rem;
	}
}
@media (max-width: 991px) {
	.step-buy{
		font-size: 1.5rem;
		padding-bottom: 0;
	}
}
@media (max-width: 767px) {
	.step-buy{
		font-size: 1.3rem;
		padding-bottom: 0;
		margin-right: 1rem;
	}
}
@media (max-width: 575px) {
	.step-buy{
		font-size: 0.9rem;
		margin-left: 2.5rem;
		margin-right: 0;
        margin-bottom: -0.2rem;
	}
}

/* 見出し　ステップ（仲介）
--------- --------- --------- ------- */
.step-sale{
	color: #ff9933;
	font-size: 2rem;
	padding-bottom: 0.2rem;
    font-family: "Cascadia Code";
    font-weight: 900;
    position: relative;
    z-index: 5;
	margin-right: 1.5rem;
}
.step-sale::after {
	counter-increment: number 1;
	content: "0" counter(number);
	display: inline-block;
}
@media (max-width: 1299px) {
	.step-sale{
		font-size: 1.8rem;
	}
}
@media (max-width: 991px) {
	.step-sale{
		font-size: 1.5rem;
		padding-bottom: 0;
	}
}
@media (max-width: 767px) {
	.step-sale{
		font-size: 1.3rem;
		padding-bottom: 0;
		margin-right: 1rem;
	}
}
@media (max-width: 575px) {
	.step-sale{
		font-size: 0.9rem;
		margin-left: 2.5rem;
		margin-right: 0;
        margin-bottom: -0.2rem;
	}
}

/* 大見出し
--------- --------- --------- ------- */
.flowchart-block h3 {
	color: #003366;
	font-size: 1.3rem;
	text-align: left;
	margin-bottom: 1rem;
	font-family: "游ゴシック";
	font-weight: 600;
}
@media (max-width: 1299px) {
	.flowchart-block h3 {
		font-size: 1.1rem;
	}
}
@media (max-width: 991px) {
	.flowchart-block h3 {
		font-size: 1.1rem;
	}
}
@media (max-width: 767px) {
	.flowchart-block h3 {
		font-size: 1rem;
	}
}
@media (max-width: 575px) {
	.flowchart-block h3 {
		font-size: 0.95rem;
	}
}

/* 中見出し
--------- --------- --------- ------- */
.flowchart-block h4 {
	font-size: 1.2rem;
	color: #003366;
	font-family: "游ゴシック";
	font-weight: 600;
}
@media (max-width: 1299px) {
	.flowchart-block h4 {
		font-size: 1.1rem;
        margin-bottom: 0;
	}
}
@media (max-width: 991px) {
	.flowchart-block h4 {
		font-size: 1.1rem;
	}
}
@media (max-width: 767px) {
	.flowchart-block h4 {
		font-size: 1rem;
	}
}
@media (max-width: 575px) {
	.flowchart-block h4 {
		font-size: 0.9rem;
	}
}

/* Address
--------- --------- --------- ------- */
.list-address li:not(:last-child) {
    margin-bottom: 0;
}
@media (max-width: 767px) {
	.list-address li{
		font-size: 0.9rem;
	}
	.tel2{
		margin-left: 4.2rem;
	}
}
@media (max-width: 575px) {
	.tel1{
		margin-left: 1.4rem;
		white-space: nowrap;
	}
	.tel2{
		margin-left: 1.4rem;
	}
}

/* 買取、仲介　小見出し
--------- --------- --------- ------- */
.flowchart-block .buy h4,
.flowchart-block .sale h4 {
	margin-bottom: 0;
}

.flowchart-block .buy h4::before,
.flowchart-block .sale h4::before {
	color: #ffffff;
	font-size: 1rem;
	margin-right: 1em;
	padding: .3rem .8rem;
	border-radius: 5px;
	display: inline-block;
}
@media (max-width: 767px) {
	.flowchart-block .buy h4::before,
	.flowchart-block .sale h4::before {
		font-size: 0.8rem;
		padding: .1rem .6rem;
	}
}

/* 買取　小見出し
--------- --------- --------- ------- */
.flowchart-block .buy h4::before {
	content: "買取";
	background-color: #66cccc;
}

/* 仲介　小見出し
--------- --------- --------- ------- */
.flowchart-block .sale h4::before {
	content: "仲介";
	background-color: #ff9933;
}

/* 本文
--------- --------- --------- ------- */
.flowchart-text p{
	word-break: break-all;
	text-justify: inter-ideograph;
	word-wrap: break-word;
	overflow-wrap: break-word;
	text-align: justify;
}
.flowchart-block .buy p,
.flowchart-block .sale p {
    margin-left: 4em;
    margin-top: .4rem;
    margin-bottom: 2.1rem;
}
@media (max-width: 1299px) {
	.flowchart-text p{
		font-size: 1rem;
	}
	.flowchart-block .buy p,
	.flowchart-block .sale p {
	    margin-bottom: 1.5rem;
	}
}
@media (max-width: 991px) {
	.flowchart-text p{
		font-size: 0.98rem;
	}
	.flowchart-block .buy p,
	.flowchart-block .sale p {
		margin-left: 4.8em;
	}
}
@media (max-width: 767px) {
	.flowchart-text p{
		font-size: 0.9rem;
	}
	.flowchart-block .buy p,
	.flowchart-block .sale p {
		margin-top: 0.5em;
		margin-left: auto;
	}
}



/* ::::::	[SECTION : FAQ]	::::::: */
/* FAQ
--------- --------- --------- ------- */
.faq {
	background-color: #ffffff;
}

/* FAQブロック
--------- --------- --------- ------- */
.faq-block {
	padding: 1.5rem;
}

/* 見出し
--------- --------- --------- ------- */
.faq-block h3 {
	font-size: 1.5em;
	text-align: left;
	margin-bottom: 1em;
}
.faq-block h3::before {
	counter-increment: faq-number 1;
	content: "\f075";
	font-size: 1.5rem;
    font-family: "Font Awesome 6 Free";
	font-weight: 900;
	vertical-align: bottom;
	margin-right: 0.3em;
}

/* 説明リスト
--------- --------- --------- ------- */
.faq-block dl {
	counter-reset: number-answer;
	margin: 0;
	padding: 0;
}

.faq-block dt {
	counter-increment: number-answer 1;
	font-weight: 700;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.faq-block dt::before {
	content: counter(number-answer) ".";
	margin-right: 0.3em;
}

.faq-block dd {
	margin-left: 2em;
}
.faq-block dd:not(:last-child) {
	margin-bottom: 1.5em;
}

/* アコーディオン
--------- --------- --------- ------- */
#accordion-faq .accordion-button {
	font-size: 1.1rem;
	font-family: "游ゴシック";
	font-weight: 600;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0;
	border: 3px solid #2a8180;
    text-align: justify;
    align-items: flex-start;
}
#accordion-faq .accordion-button:not(.collapsed) {
    background-color: #2a8180;
    color: #ffffff;
}
.accordion-button:focus{
	box-shadow: 0 0 0 .25rem rgb(0 0 0 / 18%);
}
@media (max-width: 767px) {
	#accordion-faq .accordion-button {
		font-size: 1rem;
		padding: 1rem;
	}
}
.accordion-button::after{
    color: #1c6b6a !important;
	font-size: 1.5rem;
}
.accordion-button:not(.collapsed)::after{
	display: inline-block;
	width: 1rem;
	height: 1rem;
}

#accordion-faq .accordion-button span{
    padding-right: 0.5rem;
}
#accordion-faq .accordion-button i{
    color: #1c6b6a;
    width: 1em;
    height: 1em;
    padding-top: 0.1rem;
    content: url(../images/common/message.svg);
	display: inline-block;
}
@media (max-width: 575px) {
	#accordion-faq .accordion-button i{
		padding-top: 0.2rem;
	}
}
.accordion-button:not(.collapsed) i{
    content: url(../images/common/message-w.svg) !important;
}

.accordion-item .accordion-button,
.accordion-item:first-of-type .accordion-button,
.accordion-item:last-of-type .accordion-collapse{
	border-radius: 10px !important;
}

.accordion-collapse{
    box-shadow: 0 2px 6px 0px rgba(0, 0, 0, 0.4);
    border-radius: 10px;
    padding: 1rem 1.5rem;
    width: 95%;
    margin: 1rem auto 3rem auto;
}
@media (max-width: 767px) {
	.accordion-collapse{
		box-shadow: none;
		border-radius: 0px;
		padding: 0;
		width: 100%;
		border: none;
	}
}


.contact{
    display: inline-block;
}
.contact:hover{
    box-shadow: none;
    opacity: 1;
}
@media (max-width: 767px) {
	.contact{
		width: 100%;
        max-width: 18rem;
	}
}


/* 説明リスト
--------- --------- --------- ------- */
#accordion-faq .accordion-body {
    color: #003366;
}

.accordion-body ul{
	font-size: 1.1rem;
	margin-bottom:  0;
}

#accordion-faq .accordion-body dl {
	counter-reset: number-answer;
	margin: 0;
	padding: 0;
}

#accordion-faq .accordion-body dt {
    counter-increment: number-answer 1;
    font-weight: 700;
    font-size: 1.1rem;
    margin-bottom: 0.5em;
}
#accordion-faq .accordion-body dt::before {
	content: counter(number-answer) ".";
	margin-right: 0.3em;
}

#accordion-faq .accordion-body dd {
	margin-left: 2em;
}
#accordion-faq .accordion-body dd:not(:last-child) {
	margin-bottom: 1.5em;
}
#accordion-faq .accordion-body p {
	font-size: 1.1rem;
}

@media (max-width: 1299px) {
	#accordion-faq .accordion-body p,
	#accordion-faq .accordion-body li{
		font-size: 1.1rem;
	}

}
@media (max-width: 991px) {
	#accordion-faq .accordion-body p,
	#accordion-faq .accordion-body li{
		font-size: 1.05rem;
	}
}
@media (max-width: 767px) {
	#accordion-faq .accordion-body p,
	#accordion-faq .accordion-body li{
		font-size: 0.9rem;
	}
}

