@charset "utf-8";

/*==================================================================
    IPすまいる2026 ／ step.css
    ご利用の流れ（step.php）専用スタイル
==================================================================*/
@media screen and (max-width: 767px) {
	#pagehead {
		min-height: 100svw;
	}
}

/*------------------------------------------------------------------
    #flow ／ ご相談から入居・入居後までの流れ
------------------------------------------------------------------*/
#flow {
    padding-block: 75px 135px;
    background: #fff;
}
#flow .title { margin-block-start: .55lh; }

#flow .row {
    display: block;
    margin-block-start: var(--m8);
}
#flow .block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 60px;
    max-width: 960px;
    margin-inline: auto;
}
#flow .block + .block { margin-block-start: 90px; }

/* 写真＋ナンバー */
#flow .figure {
    position: relative;
    flex: none;
    width: 300px;
}
#flow .figure .image {
    border-radius: 18px;
}
#flow .figure .number {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    top: 0;
    translate: -50% -50%;
    width: var(--m5);
    height: var(--m5);
    border-radius: 50%;
    background: var(--yellow);
    color: white;
    font-size: var(--medium-size);
    font-weight: 700;
    line-height: 1;
}

/* 本文 */
#flow .body { flex: 1; }
#flow .body .balloon { margin-inline: 0; }
#flow .body h3 {
    font-size: var(--medium-size);
    font-weight: 700;
    line-height: 1.5;
}
#flow .body .balloon + h3 { margin-block-start: .6lh; }
#flow .body h3 small { font-size: var(--regular-size); }
#flow .body hr {
    height: 0;
    margin-block-start: 15px;
    border: 0;
    border-block-start: 1px solid #ddd;
}
#flow .body p { margin-block-start: .65lh; }
#flow .body .buttons {
    justify-content: flex-start;
    margin-block-start: 30px;
}

@media screen and (max-width: 767px) {
    #flow { padding-block: var(--m2) var(--m4); }
    #flow .row { margin-block-start: var(--m4); }
    #flow .block { gap: var(--m2); }
    #flow .block + .block { margin-block-start: var(--m5); }
    #flow .figure { width: 100%; max-width: calc(300 * var(--px)); margin-inline: auto; }
    #flow .body { flex-basis: 100%; }
    #flow .body .balloon {
        padding-inline: 0.5em;
        margin-inline: auto;
        text-align: center;
    }
    #flow .body .buttons { justify-content: center; margin-block-start: var(--m); }
    #flow .body h3 {
        text-align: center;
    }
}
