.row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px; }

.row + .row {
	margin-top: 1rem; }

@media only screen and (min-width: 0) {
	[class*="col-xs"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-xs {
		display: none !important; }
	.col-xs-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-xs-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-xs-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-xs-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-xs-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-xs-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-xs-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-xs-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-xs-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-xs-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-xs-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-xs-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 0) {
	.hidden-before-xs {
		display: none !important; } }

@media only screen and (min-width: 425px) {
	[class*="col-sm"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-sm {
		display: none !important; }
	.col-sm-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-sm-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-sm-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-sm-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-sm-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-sm-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-sm-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-sm-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-sm-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-sm-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-sm-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-sm-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 425px) {
	.hidden-before-sm {
		display: none !important; } }

@media only screen and (min-width: 769px) {
	[class*="col-md"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-md {
		display: none !important; }
	.col-md-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-md-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-md-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-md-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-md-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-md-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-md-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-md-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-md-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-md-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-md-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-md-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 769px) {
	.hidden-before-md {
		display: none !important; } }

@media only screen and (min-width: 1025px) {
	[class*="col-lg"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-lg {
		display: none !important; }
	.col-lg-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-lg-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-lg-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-lg-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-lg-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-lg-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-lg-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-lg-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-lg-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-lg-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-lg-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-lg-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 1025px) {
	.hidden-before-lg {
		display: none !important; } }

@media only screen and (min-width: 1201px) {
	[class*="col-xl"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-xl {
		display: none !important; }
	.col-xl-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-xl-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-xl-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-xl-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-xl-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-xl-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-xl-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-xl-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-xl-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-xl-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-xl-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-xl-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 1201px) {
	.hidden-before-xl {
		display: none !important; } }

@media only screen and (min-width: 1441px) {
	[class*="col-xxl"] {
		box-sizing: border-box;
		padding-right: 15px;
		padding-left: 15px; }
	.hidden-xxl {
		display: none !important; }
	.col-xxl-1 {
		flex-basis: 8.33333%;
		max-width: 8.33333%; }
	.col-xxl-2 {
		flex-basis: 16.66667%;
		max-width: 16.66667%; }
	.col-xxl-3 {
		flex-basis: 25%;
		max-width: 25%; }
	.col-xxl-4 {
		flex-basis: 33.33333%;
		max-width: 33.33333%; }
	.col-xxl-5 {
		flex-basis: 41.66667%;
		max-width: 41.66667%; }
	.col-xxl-6 {
		flex-basis: 50%;
		max-width: 50%; }
	.col-xxl-7 {
		flex-basis: 58.33333%;
		max-width: 58.33333%; }
	.col-xxl-8 {
		flex-basis: 66.66667%;
		max-width: 66.66667%; }
	.col-xxl-9 {
		flex-basis: 75%;
		max-width: 75%; }
	.col-xxl-10 {
		flex-basis: 83.33333%;
		max-width: 83.33333%; }
	.col-xxl-11 {
		flex-basis: 91.66667%;
		max-width: 91.66667%; }
	.col-xxl-12 {
		flex-basis: 100%;
		max-width: 100%; } }

@media only screen and (max-width: 1441px) {
	.hidden-before-xxl {
		display: none !important; } }

/* ba-common */
.ba-text-center {
	text-align: center; }

.ba-text-left {
	text-align-last: left; }

.ba-text-right {
	text-align: right; }

.ba-text-justify {
	text-align: justify; }

.visually-hidden {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px);
	/* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden; }
