@charset "UTF-8";
/* CSS Document */

/*---------------------------------------------------------------------------------

  utilities

---------------------------------------------------------------------------------*/

.m_auto {
	margin-right: auto;
	margin-left: auto;
}

/*　画像切り替え　*/
.d_sp {
	display: block;
}
.d_tab {
	display: none;
}

@media (min-width: 980px) {
	.d_sp {
		display: none !important;
	}
	.d_tab {
		display: block !important;
	}
}

/*br切り替え*/
.br_sp, .br_tab {
	display: inline-block;
}
.br_pc {
	display: none;
}

@media (min-width: 768px) {
	.br_sp {
		display: none;
	}
}

@media (min-width: 980px) {
	.br_tab {
		display: none;
	}
	.br_pc {
		display: inline-block;
	}
}

.d_none {
	display: none;
}
.p_relative {
	position: relative;
}

.line_height_0 {
	line-height: 0;
}

.txt_center {
	text-align: center !important;
}

.d_flex,
.d_flex_sp {
	display: -ms-flexbox;
	display: flex;
}
@media (min-width: 768px) {
	.d_tab_flex {
		display: -ms-flexbox;
		display: flex;
	}
  .d_tab_flex_mg {
		display: -ms-flexbox;
		display: flex;
		margin-right: -10px;
		margin-left: -10px;
	}
  .d_tab_flex_mg > * {
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
		margin-right: 10px;
		margin-left: 10px;
	}
}
@media (min-width: 1100px) {
	.d_pc_flex {
		display: -ms-flexbox;
		display: flex;
	}
  .d_pc_flex_mg {
		display: -ms-flexbox;
		display: flex;
    margin-right: -10px;
    margin-left: -10px;
	}
  .d_pc_flex_mg > * {
		-webkit-box-flex: 1;
        -ms-flex: 1;
    flex: 1;
    margin-right: 10px !important;
    margin-left: 10px !important;
	}
}

.f_column { /*縦並び*/
	-ms-flex-direction: column;
	flex-direction: column;
}
.j_c_center {
	-ms-flex-pack: center;
	justify-content: center;
}

.j_c_spc_btw {
	-ms-flex-pack: justify;
  justify-content: space-between;
}

.j_c_spc_ard {
	-ms-flex-pack: distribute;
  justify-content: space-around;
}

.a_i_center {
	-ms-flex-align: center;
	align-items: center;
}
.a_s_center {
	-ms-flex-align: center;
	align-self: center
}
.flex_wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
	.pc_a_i_start {
		-ms-flex-pack: start;
		align-items: flex-start;
	}
}

.flex_d_row {
  -ms-flex-direction: column;
  flex-direction: column;
}
.flex_grow {
	-ms-flex-positive: 1;
	flex-grow: 1;
}
