#page-custom-css-id .bg_section {
	position: relative;
}

#page-custom-css-id .back_bg {
	position: absolute;
}

@media screen and (width <= 1281px) {
	#page-custom-css-id .back_bg .inner .row {
		padding: 0 !important;
	}
}

#page-custom-css-id
	.service_01_textbox
	:is(.component-1, .component-2, .component-3, .component-4) {
	max-width: 438px;
	padding-right: 10px !important;
	padding-left: 10px !important;
	margin: 0 auto !important;
}

@media screen and (width >= 770px) {
	#page-custom-css-id .service_01_imgbox.col-1 {
		width: 53% !important;
	}

	#page-custom-css-id .col.col-1.width52-3 {
		width: 52.3% !important;
	}
}

#page-custom-css-id .contents .back_bg .row.row-1 .col.col-1 .component.image {
	margin: 0;
}

#page-custom-css-id .back_bg .inner .row img {
	width: 100vw !important;
	max-width: 100vw !important;
}

#page-custom-css-id .theme-fo-base .contents .bg_section .component.heading h2 {
	margin: 0;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box,
	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box2 {
		padding: 65px 28px 143px !important;
	}
}

#page-custom-css-id .point_box :is(span, p, a, img) {
	max-width: 520px;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .point_box :is(span, p, a, img) {
		margin: 0 auto !important;
	}
}

#page-custom-css-id .theme-fo-base .row.point_box_inner {
	display: flex;
	align-items: end;
	margin-top: 67px;
}

#page-custom-css-id .theme-fo-base .row.point_box_inner.point_box_inner_second {
	align-items: center;
	justify-content: flex-end;
	margin-top: 46px;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .theme-fo-base .row.point_box_inner {
		flex-direction: column;
	}

	#page-custom-css-id
		.theme-fo-base
		.row.point_box_inner.point_box_inner_second {
		flex-direction: column-reverse !important;
	}
}

#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img {
	width: 42% !important;
	margin-left: -100px;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img {
		width: auto !important;
		margin: -103px auto 0;
	}

	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img img {
		display: block;
		max-width: 514px !important;
		padding: 0 28px;
		margin: 0 auto !important;
	}
}

#page-custom-css-id .point_box2 :is(span, p, a, img) {
	max-width: 520px;
}

#page-custom-css-id .theme-fo-base .row.point_box_inner .left_inner.richtext {
	max-width: 520px;
	margin-left: auto;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .theme-fo-base .row.point_box_inner .left_inner.richtext {
		margin: 0 auto;
	}
}

#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img_2 {
	z-index: 1;
	width: 41% !important;
	margin-right: -100px;
}

#page-custom-css-id
	.theme-fo-base
	.row.point_box_inner
	.point_box_img_2.max428 {
	max-width: 428px;
}

@media screen and (width <= 769px) {
	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img_2 {
		width: auto !important;
		margin: -103px auto 0;
	}

	#page-custom-css-id .theme-fo-base .row.point_box_inner .point_box_img_2 img {
		display: block;
		max-width: 514px !important;
		padding: 0 28px;
		margin: 0 auto !important;
	}
}

#page-custom-css-id .theme-fo-base .wrapper .contents .content-3.back_bg_blue {
	position: relative;
	width: 100vw;
}

#page-custom-css-id
	.theme-fo-base
	.wrapper
	.contents
	.content-3.back_bg_blue
	.image {
	margin: 0;
}

#page-custom-css-id
	.theme-fo-base
	.wrapper
	.contents
	.content-3.back_bg_blue
	.inner {
	position: absolute;
	max-width: 100vw;
}

#page-custom-css-id
	.theme-fo-base
	.wrapper
	.contents
	.content-3.back_bg_blue
	.inner
	.row {
	padding: 0 !important;
}

#page-custom-css-id .bg_section_2 {
	margin-top: 116px;
}

@media screen and (width <= 1355px) {
	#page-custom-css-id .bg_section_2 {
		background: #e1f6f6;
	}
}

@media screen and (width <= 769px) {
	#page-custom-css-id .bg_section_2 {
		padding: 122px 0 0 !important;
		margin: 0;
		background: #e1f6f6;
	}

	#page-custom-css-id .bg_section_2 h2 {
		padding-bottom: 10px !important;
		margin-bottom: 0 !important;
	}

	#page-custom-css-id .bg_section_2 .component.component-2 {
		padding: 10px 0 !important;
		margin: 0 !important;
	}

	#page-custom-css-id
		.theme-fo-base
		.wrapper
		.contents
		.content-3.back_bg_blue
		.inner {
		z-index: 1;
	}
}

@media screen and (width <= 769px) {
	#page-custom-css-id .service_01_textbox {
		padding: 0 !important;
	}

	#page-custom-css-id .max-width520 {
		max-width: 520px;
		margin: 0 auto !important;
	}

	#page-custom-css-id .content-5 .row-6 .component {
		margin: 0;
	}
}
