@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');
body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	line-height: 1 !important;
}

/* contents section *
/* --------------------------------------------------------------------------- */
#contents {
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	color: #333;
}
.contents, .contents:after {
	content : "";
	display : block;
}
.contents:after {
	clear : both;
}
.contents {
	padding: 60px 0;
	margin: 0 auto;
	width: 1200px !important;
}

section:before, section:after {
	content : "";
	display : block;
}
section:after {
	clear : both;
}
section {
	padding: 0 !important;
}
img {
	max-width: 100%;
	height: auto;
}
a:hover {
	opacity: 0.8;
}

.pc-br {
	display: block;
}
.sp-br {
	display: none;
}
@media (max-width: 768px) {
	.pc-br {
		display: none;
	}
	.sp-br {
		display: block;
	}
}

/* contents section *
/* --------------------------------------------------------------------------- */
@media (max-width: 1220px) {
		.contents {
		padding: 60px 0;
		margin: 0 auto;
		width: 900px !important;
	}
}

@media (max-width: 1020px) {
.contents {
	padding: 20px 5% 20px;
	width: 90% !important;
	min-height: 0 !important;
}
section {
	width: 100%;
	padding: 0 !important;
}
img {
	max-width: 100%;
	height: auto;
}

}

/* --------------------------------------------------------------------------- */
/*header*/
/* --------------------------------------------------------------------------- */
#header .contents {
	padding: 0;
	display: flex;
	justify-content: space-between;
}
#header .contents .logo {
	padding: 20px 0 10px;
}
#header .contents .header_ctc {
	display: flex;
	margin-left: auto;
	margin-top: 22px;
}
#header .contents .header_ctc .headet_tel {
}
#header .contents .header_ctc .header_tel .tel_num {
	position: relative;
	margin-bottom: 10px;
	padding-left: 55px;
	font-size: 2.5em;
	font-weight: bold;
}
#header .contents .header_ctc .header_tel .tel_num::before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 47px;
	height: 27px;
	background: url("../images/f_logo.png") top left no-repeat;
	background-size: 47px;
}
#header .contents .header_ctc .header_tel .tel_txt {
	font-size: 1.5em;
	text-align: right;
}
#header .contents .header_ctc .header_btn a {
	display: block;
	position: relative;
	margin-left: 20px;
	padding: 18px 25px;
	width: 135px;
	background-color: #009245;
	color: #fff;
	font-size: 2em;
	font-weight: bold;
	text-align: right;
	text-decoration: none;
	border-radius: 5px;
}
#header .contents .header_ctc .header_btn a::before {
	display: block;
	position: absolute;
	content: "";
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 29px;
	height: 26px;
	background: url("../images/ctc_icon.png") top left no-repeat;
	background-size: 29px;
}
@media (max-width: 1020px) {
	#header .contents .logo {
		width: 300px;
	}
	#header .contents .header_ctc .header_tel .tel_num {
		padding-left: 40px;
		font-size: 1.7em;
	}
	#header .contents .header_ctc .header_tel .tel_num::before {
		width: 35px;
		height: 20px;
		background-size: 35px;
	}
	#header .contents .header_ctc .header_tel .tel_txt {
		font-size: 1.1em;
	}
	#header .contents .header_ctc .header_btn a {
		font-size: 1.4em;
		padding: 15px 20px 15px 40px;
		width: auto;
	}
	#header .contents .header_ctc .header_btn a::before {
		left: 10px;
		width: 25px;
		height: 24px;
		background: url("../images/ctc_icon.png") top left no-repeat;
		background-size: 25px;
	}
}

@media (max-width: 768px) {
	#header .contents .logo {
		width: 200px;
		padding: 15px 0 10px;
	}
	#header .contents .header_ctc {
		margin-top: 10px;
	}
	#header .contents .header_ctc .header_tel {
		display: none;
	}
	#header .contents .header_ctc .header_btn a {
		padding: 20px 25px;
	}
	#header .contents .header_ctc .header_btn a span {
		display: none;
	}
}

/* --------------------------------------------------------------------------- */
/*header_img_area*/
/* --------------------------------------------------------------------------- */
#header_img_area {
	background-color: #b2ddea;
}
#header_img_area .contents {
	position: relative;
	padding: 0;
}
#header_img_area .contents .main_img {
	width: 100%;
	height: 350px;
	background: url("../images/main_img.png") top right no-repeat;
	background-size: contain;
}
#header_img_area .contents .header_txt {
	padding-top: 40px;
	font-size: 2.7em;
	font-weight: bold;
	line-height: 2;
	color: #333;
}
#header_img_area .contents .header_txt span {
	padding: 5px 20px;
}
#header_img_area .contents .header_txt span.bg_b {
	font-size: 120%;
	background-color: #004097;
	color: #fff;
}
#header_img_area .contents .header_txt span.u_line {
	font-size: 120%;
	padding: 0;
	margin-left: 20px;
  background: linear-gradient(transparent 60%, #fff 30%);
  display: inline-block;
	line-height: 1.4;
}

@media (max-width: 1200px) {
	#header_img_area .contents .header_txt {
		font-size: 2em;
	}
}
@media (max-width: 1020px) {
	#header_img_area .contents {
		width: 100% !important;
	}
	#header_img_area .contents .main_img {
		height: 250px;
		font-size: 0.8em;
	}
	#header_img_area .contents .header_txt {
		padding: 60px 0 0 5%;	
	}
	#header_img_area .contents .header_txt span {
		padding: 5px 10px;
	}
	#header_img_area .contents .header_txt span.u_line {
	margin-left: 10px;
	}
}
@media (max-width: 768px) {
	#header_img_area .contents .main_img {
		
	}
}

/* --------------------------------------------------------------------------- */
/*lead_area*/
/* --------------------------------------------------------------------------- */
#lead_area .contents {
	position: relative;
	padding: 0;
}
#lead_area .contents .lead_top_txt {
	position: absolute;
	display: inline-block;
	top: -40px;
	left: 20px;
	padding: 30px 25px;
	font-size: 2.1em;
	font-weight: bold;
	background-color: #2aacd4;
	color: #fff;
}
#lead_area .contents .lead_btm_txt {
	padding-top: 100px;
	font-size: 2.2em;
	font-weight: bold;
	line-height: 2;
	text-align: center;
}
#lead_area .contents .lead_btm_txt span.bg_y {
	padding: 10px 20px;
	margin-right: 20px;
	background-color: #eacb43;
}
#lead_area .contents .lead_btm_txt span.f_red {
	font-size: 150%;
	color: #e50012;
	font-weight: 900;
}
@media (max-width: 1220px) {
	#lead_area .contents .lead_top_txt {
		font-size: 1.5em;
		padding: 20px 15px;
		line-height: 1.5;
	}
}
@media (max-width: 1020px) {
	#lead_area .contents .lead_top_txt {
		position: relative;
		display: block;
		top: 0;
		left: 0;
		padding: 15px 15px;
		text-align: center;
	}
	#lead_area .contents .lead_btm_txt {
		padding-top: 30px;
		font-size: 1.5em;
		line-height: 1.5;
	}
	#lead_area .contents .lead_btm_txt span.bg_y {
		padding: 5px 10px;
		margin-right: 10px;
	}
}



/* --------------------------------------------------------------------------- */
/*main_area*/
/* --------------------------------------------------------------------------- */
.main_area {
	position: relative;
	margin: 100px 0 60px;
	background-color: #f5f7f9;
}
.main_area .contents {
	padding: 80px 0 60px;
}
.main_area h2 {
	position: absolute;
	display: inline-block;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	padding: 15px 70px;
	font-size: 2.2em;
	font-weight: bold;
	line-height: 1.7;
	background-color: #004097;
	color: #fff;
}
.main_area h2::before,
.main_area h2::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 30px;
	height: 3px;
	background-color: #fff;
	
}
.main_area h2::before {
	left: 15px;
}
.main_area h2::after {
	right: 15px;
}

@media (max-width: 1020px) {
	.main_area {
		margin: 60px 0 30px;
	}
	.main_area h2 {
		top: -20px;
		font-size: 1.5em;
		padding: 10px 35px;
	}
	.main_area h2::before,
	.main_area h2::after {
		width: 20px;
	}
	.main_area h2::before {
		left: 10px;
	}
	.main_area h2::after {
		right: 10px;
	}
}
@media (max-width: 768px) {
	.main_area .contents {
		padding: 80px 0 30px;
	}
	.main_area h2 {
		position: relative;
		display: block;
		text-align: center;
		margin-top: -80px;
	}
}

/* m01 *
/* --------------------------------------------------------------------------- */
.main_area.m01 {
	margin-bottom: 0;
}
.m01_box {
	margin: 0 0 20px;
	padding: 20px;
	background-color: #fff;
	border: 10px solid #b2ddea;
}
.m01_box h3 {
	display: inline-block;
	padding: 20px;
	font-size: 2.4em;
	background-color: #004097;
	color: #fff;
	font-weight: bold;
}
.m01_box ul {
	display: flex;
	flex-wrap:wrap;
  justify-content:space-between;
	margin: 20px;
	line-height: 1.2;
}
.m01_box ul li {
	position: relative;
	margin-bottom: 20px;
	padding-left: 30px;
	font-size: 2.1em;
	font-weight: bold;
	width: 46%;
}
.m01_box ul li::before {
	display: block;
	position: absolute;
	content: "";
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 15px;
	height: 15px;
	border-radius: 10px;
	background-color: #b2ddea;
}
.m01_txt {
	text-align: center;
	line-height: 1;
}
.m01_txt div:nth-child(1) {
	margin-bottom: 20px;
	font-size: 5em;
	font-weight: bold;
}
.m01_txt div:nth-child(2) {
	margin-bottom: 30px;
	font-size: 3.2em;
	font-weight: bold;
	color: #004097;
}
.m01_col3 > div {
	display: flex;
	flex-wrap:wrap;
  justify-content:space-between;
	margin: -30px 0;
}
.m01_col3 > div > div.col {
	width: 33.33333333333%;
}
.m01_col3 > div > div.col .col_inner {
	padding: 30px;
}
.m01_col3 .col_icon {
	margin-bottom: 20px;
	text-align: center;
}
.m01_col3 .col_ttl {
	margin-bottom: 20px;
	font-size: 2.1em;
	font-weight: bold;
	color: #004097;
	text-align: center;
}
.m01_col3 .col_txt {
	font-size: 2em;
	line-height: 1.5;
}

@media (max-width: 1020px) {
	.m01_box h3 {
		padding: 15px;
		font-size: 1.8em;
	}
	.m01_box ul {
		margin-bottom: 0;
	}
	.m01_box ul li {
		margin-bottom: 10px;
		padding-left: 20px;
		font-size: 1.5em;
		width: 98%;
	}
	.m01_box ul li::before {
		width: 8px;
		height: 8px;
		border-radius: 10px;
	}
	.m01_txt div:nth-child(1) {
		margin-bottom: 15px;
		font-size: 3em;
	}
	.m01_txt div:nth-child(2) {
		margin-bottom: 20px;
		font-size: 2em;
	}
	.m01_col3 .col_icon {
		width: 100px;
		margin: 0 auto 10px;
	}
	.m01_col3 .col_ttl {
		margin-bottom: 10px;
		font-size: 1.5em;
	}
	.m01_col3 .col_txt {
		font-size: 1.4em;
		line-height: 1.5;
	}
}
@media (max-width: 768px) {
	.m01_col3 > div {
		flex-flow: column;
		margin-top: 10px;
	}
	.m01_col3 > div > div.col {
		width: 100%;
	}
	.m01_col3 > div > div.col .col_inner {
		padding: 10px;
	}
}

/* m02 *
/* --------------------------------------------------------------------------- */
.m02_lead {
	margin-bottom: 40px;
	text-align: center;
	font-size: 2.1em;
	font-weight: bold;
	line-height: 1.5;
}
.m02_flow .flow_inner {
	display: flex;
	align-items: center;
	margin: 20px 0;
}
.m02_flow .flow_inner .col_left {
	display: flex;
	align-items: center;
}
.m02_flow .flow_inner .flow_step {
	padding: 10px 0;
	width: 100px;
	background-color: #003e8b;
	color: #fff;
	text-align: center;
	font-size: 2.2em;
	font-weight: bold;
	line-height: 1.4;
	border-radius: 10px;
}
.m02_flow .flow_inner .flow_ttl {
	width: 180px;
	color: #003e8b;
	text-align: center;
	font-size: 2.2em;
	font-weight: bold;
}
.m02_flow .flow_inner .flow_txt {
	position: relative;
	padding: 20px 215px 20px 20px;
	flex: 1;
	background-color: #fff;
	font-size: 2.1em;
	font-weight: bold;
}
.m02_flow .flow_inner .flow_txt::after {
	position: absolute;
	content: "";
	width: 140px;
	height: 110px;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-size: 140px !important;
}
.m02_flow .flow_inner .flow_txt.txt01::after {
	background: url("../images/flow_icon01.png") top center no-repeat;
}
.m02_flow .flow_inner .flow_txt.txt02::after {
	background: url("../images/flow_icon02.png") top center no-repeat;
}
.m02_flow .flow_inner .flow_txt.txt03::after {
	background: url("../images/flow_icon03.png") top center no-repeat;
}
.m02_flow .flow_inner .flow_txt.txt04::after {
	background: url("../images/flow_icon04.png") top center no-repeat;
}
.m02_flow .flow_inner .flow_txt.txt05::after {
	background: url("../images/flow_icon05.png") top center no-repeat;
}
.m02_flow .flow_inner .flow_txt ul li {
	position: relative;
	padding: 7px 0 7px 20px;
}
.m02_flow .flow_inner .flow_txt ul li::before {
	display: block;
	position: absolute;
	content: "";
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 5px;
	height: 5px;
	border-radius: 5px;
	background-color: #333;
}
@media (max-width: 1200px) {
	.m02_flow .flow_inner .flow_txt {
		padding-right: 150px;
	}
	.m02_flow .flow_inner .flow_txt::after {
		width: 100px;
		height: 90px;
		background-size: 100px !important;
	}
}
@media (max-width: 1020px) {
	.m02_lead {
		font-size: 1.6em;
	}
	.m02_flow .flow_inner .flow_step {
		padding: 10px 0;
		width: 80px;
		font-size: 1.7em;
		border-radius: 10px;
	}
	.m02_flow .flow_inner .flow_ttl {
		width: 150px;
		font-size: 1.7em;
	}
	.m02_flow .flow_inner .flow_txt {
		flex: 1;
		font-size: 1.6em;
	}
}
@media (max-width: 768px) {
	.m02_flow .flow_inner {
		flex-wrap: wrap;
		flex-direction:column;
	}
	.m02_flow .flow_inner .col_left {
		margin-bottom: 10px;
	}
	.m02_flow .flow_inner .flow_step {
		width: auto;
		padding: 10px;
	}
	.m02_flow .flow_inner .flow_ttl {
		width: auto;
		margin-left: 15px;
	}
	.m02_flow .flow_inner .flow_txt {
		padding: 15px;
		width: 90%;
	}
	.m02_flow .flow_inner .flow_txt::after {
		display: none;
	}
}

/* m03 *
/* --------------------------------------------------------------------------- */
.main_area.m03 {
	margin-bottom: 0;
	text-align: center;
}
.m03_lead {
	text-align: center;
	font-size: 2.4em;
	font-weight: bold;
	line-height: 1.5;
}
.m03_txt {
	padding: 20px 0;
	text-align: center;
	font-size: 3em;
	font-weight: bold;
}
.m03_txt .m03_red {
	color: #e50012;
}
.m03_txt .m03_price {
	font-size: 180%;
	font-weight: 900;
}
.m03_notes {
	display: inline-block;
	margin: 20px auto 0;
	text-align: left;
	font-size: 2em;
	text-indent: -1em;
	margin-left: 1em;
	line-height: 1.5;
}
@media (max-width: 1020px) {
	.m03_lead {
		font-size: 1.8em;
	}
	.m03_txt {
		padding: 10px 0;
		font-size: 2.3em;
	}
	.m03_notes {
		font-size: 1.4em;
	}
}
@media (max-width: 768px) { 
	.m03_lead {
		font-size: 1.6em;
	}
	.m03_txt {
		padding: 10px 0;
		font-size: 2em;
	}
	.m03_notes {
		font-size: 1.3em;
	}
}
/* m04 *
/* --------------------------------------------------------------------------- */
.main_area.m04 {
	margin-bottom: 0;
}
.faq_inner {
	margin: 30px 0;
}
.q_area {
	display: flex;
	align-items: center;
	padding: 15px;
	background-color: #004097;
	font-weight: bold;
}
.q_area .q_icon {
	width: 55px;
	font-size: 2.8em;
	text-align: center;
	background-color: #fff;
}
.q_area .q_icon span {
	display: block;
	padding: 5px 10px 15px;
}
.q_area .q_txt {
	flex: 1;
	padding-left: 35px;
	font-size: 2.1em;
	line-height: 1.2;
	color: #fff;
}
.a_area {
	display: flex;align-items: flex-start;
	padding: 15px;
	background-color: #fff;
	font-weight: bold;
}
.a_area .a_icon {
	width: 55px;
	font-size: 2.8em;
	background-color: #b2ddea;
}
.a_area .a_icon span {
	display: block;
	padding: 5px 10px 15px;
}
.a_area .a_txt {
	flex: 1;
	padding:10px 0 10px 35px;
	font-size: 2.1em;
	font-weight: normal;
	line-height: 1.2;
}
@media (max-width: 1020px) {
	.q_area {
		padding: 10px;
	}
	.q_area .q_icon {
		width: 45px;
		font-size: 2.1em;
	}
	.q_area .q_txt {
		padding-left: 20px;
		font-size: 1.6em;
	}
	.q_area .q_icon span {
		padding: 5px 7px 10px;
	}
	.a_area {
		padding: 10px;
}
	.a_area .a_icon {
		width: 45px;
		font-size: 2.1em;
	}
	.a_area .a_icon span {
		padding: 5px 7px 10px;
	}
	.a_area .a_txt {
		padding:5px 0 5px 25px;
		font-size: 1.6em;
	}
}

/* m05 *
/* --------------------------------------------------------------------------- */
.main_area.m05 {
	margin: 0;
	background-color: #daebf0;
}
.m05_box {
	margin: 0 0 20px;
	padding: 40px;
	background-color: #fff;
	border: 10px solid #b2ddea;
	text-align: center;
}
.m05_lead {
	position: relative;
	display: inline-block;
	margin: 0 auto 30px;
	font-size: 2em;
	text-align: center;
	font-weight: bold;
	line-height: 1.4;
}
.m05_lead .m05_red {
	color: #e50012;
	font-size: 130%;
	font-weight: 900;
}
.m05_lead::before {
	position: absolute;
	content: "";
	left: -50px;
	bottom: -5px;
	width: 33px;
	height: 58px;
	background: url("../images/ctc_line01.png") top left no-repeat;
	background-size: 33px;
}
.m05_lead::after {
	position: absolute;
	content: "";
	right: -50px;
	bottom: -5px;
	width: 33px;
	height: 58px;
	background: url("../images/ctc_line02.png") top left no-repeat;
	background-size: 33px;
}
.m05_tel {
	margin: 0 auto 40px;
	padding-bottom: 40px;
	width: 900px;
	border-bottom: 5px solid #b2ddea;
}
.m05_tel .tel_num {
	position: relative;
	display: inline-block;
	margin-bottom: 20px;
	padding-left: 140px;
	font-size: 6em;
	font-weight: bold;
}
.m05_tel .tel_num::before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 111px;
	height: 63px;
	background: url("../images/f_logo.png") top left no-repeat;
	background-size: 111px;
}
.m05_tel .tel_notes {
	font-size: 1.6em;
}
.m05_mail .mail_txt {
	margin-bottom: 20px;
	font-size: 2.4em;
	font-weight: bold;
}
.m05_mail .mail_btn a {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 30px 20px;
	width: 640px;
	background-color: #009245;
	color: #fff;
	font-size: 2.5em;
	font-weight: bold;
	text-decoration: none;
	border-radius: 10px;
}
.m05_mail .mail_btn a::after {
	display: block;
	position: absolute;
	content: "";
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 32px;
	height: 32px;
	background: url("../images/ctc_arrow.png") top right no-repeat;
	background-size: 32px;
}
@media (max-width: 1020px) {
	.main_area.m05 .contents {
		padding: 30px 0;
	}
	.m05_box  {
		padding: 20px;
	}
	.m05_lead {
		margin-bottom: 15px;
		font-size: 1.4em;
	}
	.m05_lead::before,
	.m05_lead::after {
		width: 25px;
		height: 45px;
		background-size: 25px;
	}
	.m05_lead::before {
		left: -30px;
	}
	.m05_lead::after {
		right: -30px;
	}
	.m05_tel {
		margin: 0 auto 20px;
		padding-bottom: 20px;
		width: 100%;
	}
	.m05_tel .tel_num {
		margin-bottom: 20px;
		padding-left: 50px;
		font-size: 2.5em;	
	}
	.m05_tel .tel_num::before {
	bottom: 0;
	left: 0;
	width: 40px;
	height: 33px;
	background: url("../images/f_logo.png") bottom left no-repeat;
	background-size: 40px;	
	}
	.m05_tel .tel_notes {
		font-size: 1.1em;
	}
	.m05_mail .mail_txt {
		font-size: 1.7em;
	}
	.m05_mail .mail_btn a {
		padding: 20px 10px;
		width: 400px;
		font-size: 1.8em;
	}
	.m05_mail .mail_btn a::after {
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
}
@media (max-width: 768px) {
	.m05_mail .mail_btn a {
		width: 90%;
		font-size: 1.2em;
	}
}

/* --------------------------------------------------------------------------- */
/*ctc_area*/
/* --------------------------------------------------------------------------- */
.ctc_area {
	background-color: #daebf0;
	text-align: center;
}
.ctc_area .contents {
	background: url("../images/ctc_bg_img.png") top right 130px no-repeat;
}
.ctc_area .ctc_txt {
	position: relative;
	display: inline-block;
	margin: 0 auto 30px;
	font-size: 2em;
	text-align: center;
	font-weight: bold;
	line-height: 1.1;
}
.ctc_area .ctc_txt .ctc_red {
	font-size: 130%;
	font-weight: 900;
	color: #e50012;
  background: linear-gradient(transparent 60%, #fff 10%);
}
.ctc_area .ctc_txt::before {
	position: absolute;
	content: "";
	left: -50px;
	bottom: -5px;
	width: 33px;
	height: 58px;
	background: url("../images/ctc_line01.png") top left no-repeat;
	background-size: 33px;
}
.ctc_area .ctc_txt::after {
	position: absolute;
	content: "";
	right: -50px;
	bottom: -5px;
	width: 33px;
	height: 58px;
	background: url("../images/ctc_line02.png") top left no-repeat;
	background-size: 33px;
}
.ctc_area .ctc_btn a {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 30px 20px;
	width: 500px;
	background-color: #009245;
	color: #fff;
	font-size: 2.5em;
	font-weight: bold;
	text-decoration: none;
	border-radius: 10px;
}
.ctc_area .ctc_btn a::after {
	display: block;
	position: absolute;
	content: "";
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 32px;
	height: 32px;
	background: url("../images/ctc_arrow.png") top right no-repeat;
	background-size: 32px;
}

@media (max-width: 1220px) {
	.ctc_area .contents {
		background: url("../images/ctc_bg_img.png") top right 0 no-repeat;
	}
}
@media (max-width: 1020px) {
	.ctc_area .contents {
		background: url("../images/ctc_bg_img.png") top right 20px no-repeat;
	}
	.ctc_area .ctc_txt {
		margin-bottom: 15px;
		font-size: 1.4em;
	}
	.ctc_area .ctc_btn a {
		padding: 20px 10px;
		width: 350px;
		font-size: 1.8em;
	}
	.ctc_area .ctc_btn a::after {
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
	.ctc_area .ctc_txt::before,
	.ctc_area .ctc_txt::after {
		width: 25px;
		height: 45px;
		background-size: 25px;
	}
}
@media (max-width: 768px) {
	.ctc_area .contents {
		background-image: none;
	}
	.ctc_area .ctc_btn a {
		width: 90%;
	}
	.ctc_area .ctc_txt::before {
		left: -30px;
	}
	.ctc_area .ctc_txt::after {
		right: -30px;
	}
}


/* --------------------------------------------------------------------------- */
/*footer*/
/* --------------------------------------------------------------------------- */
footer {
	text-align: center;
	color: #333;
	font-size: 1.2em;
	height: auto;
	padding: 25px 0;
}
@media (max-width: 768px) {
	footer {
		font-size: 1em;
	}
}
