/*----------------------------------------------------------------------------共通CSS---------------------------------------------------------------------------------------------------------------------------------------------*/
div {
	box-sizing: border-box;
}
html {
    color: #141414;
}
p {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8em;
    padding: 0;
    margin: 0;
}
img {
    max-width: 100%;
    height: auto;
}
hr {
    height: 0;
    margin: 0;
    padding: 0;
}
/*flex*/
.wflexbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.flexbox_center {
	justify-content: center!important;
	align-items: center;
}
.divall_a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}
/*absoluteの位置*/
.absolute_center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.absolute_tate {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}
.absolute_yoko {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
/*PC,SP切り替え*/
.sphide {display: none;}

/*PCだけ改行*/
.br-pc {display: none;}

/*色を被せる overlay*/
.overlay {
	position: relative;
	z-index: 1;
}
.overlay::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.re_table, .re_table tbody,	.re_table thead, .re_table tr, .re_table th, .re_table td {
	width: 100%;
	table-layout: fixed;
	box-sizing: border-box;
	display: block;
}
.re_table {
	table-layout: fixed!important;
	border-collapse: collapse;
}



/*共通cssレスポンシブ*/
/*--------タブレット--------*/
@media screen and (min-width: 768px) {
    .br-sp {
        display: none;
    }
    .br-pc {display: inline;}
    .flexbox {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
	.pchide {display: none;}
	.sphide {display: block;}
	.re_table tr {
		display: table-cell;
		width: auto;
	}
	.re_table, .re_table tr {
		display: table;
		width: 100%;
		box-sizing: border-box;
	}
    .re_table th {
		display: table-cell;
		width: auto;
	}
	.re_table td {
		display: table-cell;
		width: auto;
	}
}
/*--------PC--------*/
@media screen and (min-width: 1080px) {
}



/*後から上書きしたい共通CSS*/
.bg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}