
/*---------------------------------------------------*/

.max1520 {
	max-width: 1520px;
	width: calc(100% - 80px);
	margin: 20px auto;
}
@media all and (max-width: 1700px){
	.max1520 {
		width: calc(100% - 80px);
	}
}
@media all and (max-width: 500px) {
	.max1520 {
		width: calc(100% - 40px);
	}
}

.max1200 {
	max-width: 1200px;
	width: calc(100% - 80px);
	margin: 20px auto;
}

@media all and (max-width: 500px) {
	.max1200 {
		width: calc(100% - 40px);
	}
}

.max980 {
	max-width: 980px;
	width: calc(100% - 80px);
	margin: 20px auto;
}
@media all and (max-width: 500px) {
	.max980 {
		width: calc(100% - 40px);
	}
}

@media all and (max-width: 1700px){
	.gray_contents_sec .max1520,
	.gray_contents_sec .max980 {
		width: 100%;
	}
}
@media all and (max-width: 640px){
	.gray_contents_sec .max1520,
	.gray_contents_sec .max980 {
		width: calc(100% - 40px);
	}
}

/*---------------------------------------------------*/

.flex_wrap {
	max-width: 1520px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 10px auto;
}
.flex_wrap.start {
	justify-content: start;
}
.flex_wrap.alignC {
	align-items: center;
}

@media all and (max-width: 500px) {
	.flex_wrap {
		width: calc(100% - 40px);
		margin: 0 auto;
	}
	.max980 .flex_wrap,
	.max1200 .flex_wrap,
	.max1520 .flex_wrap {
		width: 100%;
  }
}

/*---------------------------------------------------*/
.flex_wrap.w980 {
	max-width: 980px;
}

@media all and (max-width: 500px) {
	.flex_wrap.w980 {
		width: calc(100% - 10px);
		margin: 0 auto;
	}
}

/*---------------------------------------------------*/

.two_column_flex_img {
	width: 45%;
}
.two_column_flex_text {
	width: 50%;
}
.two_column_flex_text p {
  font-size: 1.5rem;
  line-height: 1.7!important;
}
@media all and (max-width: 640px) {
	.two_column_flex_img {
		order: 1;
		width: 100%;
		flex-direction: column;
		margin-bottom: 20px;
	}
	.two_column_flex_text {
		order: 2;
		width: 100%;
		flex-direction: column;
		margin-bottom: 10px;
	}
  .two_column_flex_text p {
    font-size: 1.4rem;
  }
}

/*---------------------------------------------------*/

.title_1 {
	font-size: 2.8rem;
	margin: 0 auto 20px;
	line-height: 1.8;
}
.title_2 {
	font-size: 2.2rem;
	margin: 0 auto 20px;
}
.title_3 {
	font-size: 1.8rem;
}
.text_lead {
	font-size: 1.5rem;
	margin: 0 auto 5px;
	line-height: 1.7!important;
}
.text_cap {
	font-size: 1.2rem;
	margin-top: 0;
}
.text_link  {
	display: inline-block;
	font-size: 1.4rem;
	text-decoration: underline;
}
.text_link a:hover {
	text-decoration: none;
}
._center {
	text-align: center;
}

@media all and (max-width: 1024px) {
	.title_1 {
		font-size: 1.8rem;
		margin: 0 auto 1rem;
	}
	.title_2 {
		font-size: 1.8rem;
		margin-bottom: 10px;
	}
	.title_3 {
		font-size: 1.7rem;
		margin-bottom: 1rem;
	}
	.text_lead {
		font-size: 1.5rem;
		line-height: 1.7;
	}
	.text_cap {
		text-align: left;
	}
	.text_link {
		font-size: 1.5rem;
	}
}
@media all and (max-width: 500px) {
	.title_1 {
		font-size: 1.8rem;
		margin: 0 auto 2rem;
	}
	.title_2 {
		font-size: 1.7rem;
		line-height: 1.7!important;
	}
	.title_3 {
		font-size: 1.6rem;
		margin: 0 auto 1rem;
	}
	.text_lead {
		font-size: 1.5rem;
		line-height: 1.7;
	}
  ._center {
    text-align: left;
  }
}

/*---------------------------------------------------*/

.block_mt3 {
	margin-top: 3rem;
}
.block_mt5 {
	margin-top: 5rem;
}
.block_mt8 {
	margin-top: 8rem;
}
.block_mt10 {
	margin-top: 10rem;
}
.block_mt12 {
	margin-top: 12rem;
}
.block_mb3 {
	margin-bottom: 3rem;
}
.block_mb5 {
	margin-bottom: 5rem;
}
.block_mb8 {
	margin-bottom: 8rem;
}
.block_mb10 {
	margin-bottom: 10rem;
}
.block_mb12 {
	margin-bottom: 12rem;
}
.block_mb15 {
	margin-bottom: 15rem;
}

@media all and (max-width: 640px) {
	.block_mb5 {
		margin-bottom: 4rem;
	}
	.block_mb8 {
		margin-bottom: 5rem;
	}
	.block_mb10 {
		margin-bottom: 6rem;
	}
	.block_mb12 {
		margin-bottom: 7rem;
	}
	.block_mb15 {
		margin-bottom: 8rem;
	}
}

/*---------------------------------------------------*/

/* 3style overwrite */
.two_column_img {
    width: 40%;
}
.two_column_text {
    width: 55%;
}
/*---------------------------------------------------*/
