
/* ============ ▼ 2023/05 新規追加(大成住宅固有) =========== */
.bg_color_beige{
	background-color : var(--color-ligth_beige);
}
.bg_color_gray{
	background-color : var(--color-gray);
}


.flex_box{
	display : flex;
}
.text_center{
	text-align : center;
}
.bg_color_blue{
	background-color : var(--color-light_blue);
}

/* hover ふわっと */
#BG_LINK_BTN .button_style,
.btn_blue,
.news_list_link,
#ESATE_COUNT a,
#INDEX_SEARCH_BOX div a{
	transition : 0.5s;
}

.estate_scroll {
    display: block;
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto;
    scrollbar-track-color: var(--color-gray);
    scrollbar-face-color: var(--color-ligth_block);
    scrollbar-shadow-color: var(--color-gray);
    scrollbar-arrow-color: var(--color-gray);
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
}
.estate_scroll::-webkit-scrollbar {
	height : 10px;
}
.estate_scroll::-webkit-scrollbar-track {
	background : var(--color-gray);
}
.estate_scroll::-webkit-scrollbar-thumb {
	background : var(--color-ligth_block);
	border-radius : 10px;
}

.button_style_center{
	margin : 10px auto;
}
.btn_blue{
	color : var(--color-blue);
	border : 1px solid var(--color-blue);
	background-color : var(--color-white);
}
.btn_blue:hover{
	background-position : left;
}
/* ぶち抜き */
.display_area_100{
	margin-left: calc((((100vw - 100%) / 2) * -1) + -20px);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	padding-left: calc((100vw - (100% - 35px)) / 2);
    padding-right: calc((100vw - (100% - 35px)) / 2);
	box-sizing: border-box;
    padding-top: 20px;
    padding-bottom: 20px;
    max-width: 100vw;
}
.index_subtitle span{
	font-size : 0.5em;
	display : block;
	margin : 5px auto;
	font-weight : normal;
}
.index_subtitle{
	margin : 50px auto;
}
/* ============ ▲ 2023/05 新規追加(大成住宅固有) =========== */



/* wbrを使用するときはその親要素に br_specificationを指定すること*/

.br_specification {
	word-break: keep-all;
}
.br_specification wbr:before {
	content: "\200B";
}

/* リンク系 */
.wrapper_link{
	position : absolute;
	width : 100%;
	height: 100%;
	display: block;
	z-index: 10;
	top : 0;
	left: 0;
}
.text_underline {
	text-decoration : underline;
}
.text_underline:hover {
	text-decoration : none;
}

/* フォント系 */
.font_size_0 {
	font-size: 0px;
}
.font_size_10 {
	font-size: 0.625rem;
}
.font_size_12 {
	font-size: 0.75rem;
}
.font_size_14 {
	font-size: 0.875rem;
}
.font_size_18 {
	font-size: 1.1rem;
}
.font_size_21 {
	font-size: 1.3rem;
}
.font_size_24 {
	font-size: 1.5rem;
}
.font_size_28 {
	font-size: 1.75rem;
}
.font_size_32 {
	font-size: 2rem;
}
.font_size_36 {
	font-size: 2.25rem;
}
.font_size_40 {
	font-size: 2.5rem;
}
.font_size_48 {
	font-size: 3rem;
}
.font_size_60{
	font-size : 3.8rem;
}
.font_size_72{
	font-size : 4.5rem;
}
.number_letter_spacing{
	letter-spacing: 0.01em;
}
.letter_spacing_0{
	letter-spacing: 0.01em;
}
.line_height_1rem{
	line-height: 1rem;
}
.line_height_1em{
	line-height: 1em;
}
.line_height_1point3em{
	line-height: 1.3em;
}
.line_height_2em{
	line-height: 2em;
}
.font_weight_bold{
    font-weight: bold;
}
.font_weight_normal{
    font-weight: normal;
}

.max_width_1200 {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
.max_width_950 {
	max-width: 950px;
	margin-right: auto;
	margin-left: auto;
}
.max_width_750 {
	max-width: 750px;
	margin-right: auto;
	margin-left: auto;
}
.max_width_600 {
	max-width: 600px;
	margin-right: auto;
	margin-left: auto;
}
.width_minus_40{
	width: calc(100% - 40px);
	margin-right: auto;
	margin-left: auto;
}
.width_100vw {
    position: relative;
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    padding-left: calc((100vw - 100%) / 2);
    padding-right: calc((100vw - 100%) / 2);
    max-width: initial;
    max-width: none;
    overflow: hidden;
}
/* ▼余白系(t=top b=bottom r=right l=left) */
/* margin */
.margin_250_tb {
	margin-bottom: 250px;
	margin-top: 250px;
}
.margin_250_t {
	margin-top: 250px;
}
.margin_250_b {
	margin-bottom: 250px;
}
.margin_200_tb {
	margin-bottom: 200px;
	margin-top: 200px;
}
.margin_200_t {
	margin-top: 200px;
}
.margin_200_b {
	margin-bottom: 200px;
}
.margin_150_tb {
	margin-bottom: 150px;
	margin-top: 150px;
}
.margin_150_t {
	margin-top: 150px;
}
.margin_150_b {
	margin-bottom: 150px;
}
.margin_100_tb {
	margin-bottom: 100px;
	margin-top: 100px;
}
.margin_100_t {
	margin-top: 100px;
}
.margin_100_b {
	margin-bottom: 100px;
}
.margin_75_tb {
	margin-top: 75px;
	margin-bottom: 75px;
}
.margin_75_t {
	margin-top: 75px;
}
.margin_75_b {
	margin-bottom: 75px;
}
.margin_50_tb {
	margin-top: 50px;
	margin-bottom: 50px;
}
.margin_50_t {
	margin-top: 50px;
}
.margin_50_b {
	margin-bottom: 50px;
}
.margin_40_tb {
	margin-top: 40px;
	margin-bottom: 40px;
}
.margin_40_t {
	margin-top: 40px;
}
.margin_40_b {
	margin-bottom: 40px;
}
.margin_30_tb {
	margin-top: 30px;
	margin-bottom: 30px;
}
.margin_30_t {
	margin-top: 30px;
}
.margin_30_b {
	margin-bottom: 30px;
}
.margin_20_tb {
	margin-top: 20px;
	margin-bottom: 20px;
}
.margin_20_t {
	margin-top: 20px;
}
.margin_20_b {
	margin-bottom: 20px;
}
.margin_20_r {
	margin-right: 20px;
}
.margin_20_l {
	margin-left: 20px;
}
.margin_15_tb {
	margin-top: 15px;
	margin-bottom: 15px;
}
.margin_15_t {
	margin-top: 15px;
}
.margin_15_b {
	margin-bottom: 15px;
}
.margin_10_tb {
	margin-top: 10px;
	margin-bottom: 10px;
}
.margin_10_t {
	margin-top: 10px;
}
.margin_10_b {
	margin-bottom: 10px;
}
.margin_10_r {
	margin-right: 10px;
}
.margin_10_l {
	margin-left: 10px;
}
.margin_5_t {
	margin-top: 5px;
}
.margin_5_b {
	margin-bottom: 5px;
}
.margin_5_tb {
	margin-bottom: 5px;
	margin-top: 5px;
}
.margin_5_r {
	margin-right: 5px;
}
.margin_5_l {
	margin-left: 5px;
}
/* ▲余白系 */

/* ----------------------------------------------------------------------------- */
/* 950px以下 */
/* ----------------------------------------------------------------------------- */
@media screen and (max-width : 950px){
	.max_width_950{
		width : 95%;
	}
}

/* ----------------------------------------------------------------------------- */
/* 750px以下 */
/* ----------------------------------------------------------------------------- */
@media screen and (max-width : 750px){
	.max_width_750{
		width : 95%;
	}
}
/* ----------------------------------------------------------------------------- */
/* 600px以下 */
/* ----------------------------------------------------------------------------- */
@media screen and (max-width : 600px){
	.max_width_600{
		width : 95%;
	}
}
/* ----------------------------------------------------------------------------- */
/* 800px以下 */
/* ----------------------------------------------------------------------------- */
@media screen and (max-width : 800px){
	.margin_200_tb {
		margin-top: 21vw;
		margin-bottom: 21vw;
	}
	.margin_200_t {
		margin-top: 21vw;
	}
	.margin_200_b {
		margin-bottom: 21vw;
	}
	.margin_150_tb {
		margin-top: 18vw;
		margin-bottom: 18vw;
	}
	.margin_150_t {
		margin-top: 18vw;
	}
	.margin_150_b {
		margin-bottom: 18vw;
	}
	.margin_100_tb {
		margin-top: 16vw;
		margin-bottom: 16vw;
	}
	.margin_100_t {
		margin-top: 16vw;
	}
	.margin_100_b {
		margin-bottom: 16vw;
	}
	.margin_75_tb {
		margin-top: 12vw;
		margin-bottom: 12vw;
	}
	.margin_75_t {
		margin-top: 12vw;
	}
	.margin_75_b {
		margin-bottom: 12vw;
	}
	.margin_50_tb {
		margin-top: 8vw;
		margin-bottom: 8vw;
	}
	.margin_50_t {
		margin-top: 8vw;
	}
	.margin_50_b {
		margin-bottom: 8vw;
	}
	.font_size_24 {
		font-size: 1.3rem;
	}
	.font_size_28 {
		font-size: 1.4rem;
	}
	.font_size_32 {
		font-size: 1.5rem;
	}
	.font_size_36 {
		font-size: 1.6rem;
	}
	.font_size_40 {
		font-size: 1.8rem;
	}
	.font_size_48 {
		font-size: 2rem;
	}
	.font_size_60{
		font-size : 2.5rem;
	}
}