@charset utf-8;


/*-----------------------------------------*\
    固定ページ「対応エリア > エリア詳細ページ」
\*-----------------------------------------*/

/*----------------------------------*\
    $CONTENTS
\*----------------------------------*/

/**
 * CONTENTS
 *
 * 見出し
 * レイアウト
 * 背景、画像
 *
 */

html {
  scroll-padding-top: 130px;
}



/* 見出し */

.wp-block-group.problem h2,
.wp-block-group.service h2,
.wp-block-group.reason h2,
.wp-block-group.flow h2,
.wp-block-group.works h2,
.wp-block-group.case_study h2 {
	background: none;
	border-bottom: 1px solid #004f2e;
	color: #004f2e;
	display: inline-block;
	font-size: 30px;
	font-weight: 600;
	line-height: 2;
	margin: 0;
	padding: 0;
	text-align: center;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.problem h2,
	.wp-block-group.service h2,
	.wp-block-group.reason h2,
	.wp-block-group.flow h2,
	.wp-block-group.works h2,
	.wp-block-group.case_study h2 {
		font-size: 26px;
		line-height: 1.8;
	}
}
@media screen and (max-width: 550px) {
	.wp-block-group.problem h2,
	.wp-block-group.service h2,
	.wp-block-group.reason h2,
	.wp-block-group.flow h2,
	.wp-block-group.works h2,
	.wp-block-group.case_study h2 {
		font-size: 22px;
		line-height: 1.8;
	}
}
.wp-block-group.problem h3,
.wp-block-group.service h3,
.wp-block-group.flow h3,
.wp-block-group.case_study h3 {
  background: url(../images/icon-leaf.png) no-repeat;
  background-color: #f6eee0;
  background-position: left 16px center;
  background-size: 32px;
  border: none;
  color: #222;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.8;
  margin: 0 0 25px;
  padding: 5px 10px 5px 62px;
  text-align: left;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.problem h3,
	.wp-block-group.service h3,
	.wp-block-group.flow h3,
	.wp-block-group.case_study h3 {
		background-position: left 14px center;
		background-size: 28px;
		font-size: 20px;
		margin: 0 0 20px;
		padding-left: 54px;
	}
}
@media screen and (max-width: 650px) {
	.wp-block-group.problem h3,
	.wp-block-group.service h3,
	.wp-block-group.flow h3,
	.wp-block-group.case_study h3 {
		background-position: left 10px center;
		background-size: 22px;
		font-size: 18px;
		margin: 0 0 20px;
		padding-left: 48px;
	}
}

.wp-block-group.reason h3 {
	background: none;
	border: none;
	color: #004f2e;
	font-size: 28px;
	font-weight: 600;
	line-height: 2;
	margin: 0 0 30px 0;
	padding: 0;
	text-align: left;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.reason h3 {
		font-size: 24px;
		line-height: 1.8;
		margin: 0 0 25px 0;
	}
}
@media screen and (max-width: 781px) {
	.wp-block-group.reason h3 {
		font-size: 22px;
	}
}
@media screen and (max-width: 550px) {
	.wp-block-group.reason h3 {
		font-size: 20px;
	}
}



/* レイアウト */
.post_content .wp-block-image.sp_only {
	margin-bottom: 25px;
}
@media screen and (min-width: 782px) {
	.sp_only {
		display: none;
	}
}
@media screen and (max-width: 781px) {
	.pc_only {
		display: none;
	}
}

.wp-block-group.problem,
.wp-block-group.service,
.wp-block-group.reason,
.wp-block-group.flow,
.wp-block-group.works,
.wp-block-group.case_study {
	margin-top: 85px;
	text-align: center;
}
@media screen and (max-width: 781px) {
	.wp-block-group.problem,
	.wp-block-group.service,
	.wp-block-group.reason,
	.wp-block-group.flow,
	.wp-block-group.works,
	.wp-block-group.case_study {
		margin-top: 70px;
	}
}
.wp-block-group.problem .problem_group,
.wp-block-group.service .service_group,
.wp-block-group.flow .flow_group,
.wp-block-group.case_study .case_study_group {
	margin-top: 50px;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.problem .problem_group,
	.wp-block-group.service .service_group,
	.wp-block-group.flow .flow_group,
	.wp-block-group.case_study .case_study_group {
		margin-top: 40px;
	}
}
@media screen and (max-width: 650px) {
	.wp-block-group.problem .problem_group,
	.wp-block-group.service .service_group,
	.wp-block-group.flow .flow_group,
	.wp-block-group.case_study .case_study_group {
		margin-top: 30px;
	}
}
.wp-block-group.problem p,
.wp-block-group.service p,
.wp-block-group.reason p,
.wp-block-group.flow p,
.wp-block-group.works p,
.wp-block-group.case_study p {
	text-align: left;
	margin: 0 0 15px 0;
}
.wp-block-group.works .works_lead,
.wp-block-group.case_study .case_study_lead {
	margin-top: 40px;
}

.wp-block-group.problem .problem_img {
	margin-top: 40px;
}
.wp-block-group.reason .reason_box {
	margin-top: 115px;
	padding: 20px 0 20px 35px;
	position: relative;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.reason .reason_box {
		margin-top: 85px;
		padding: 15px 0 15px 30px;
	}
}
@media screen and (max-width: 781px) {
	.wp-block-group.reason .reason_box {
		margin-top: 75px;
		padding: 0;
	}
}
.wp-block-group.reason .reason_box:before {
	background: #f6f6f6;
	border-radius: 40px;
	content: "";
	height: 115%;
	inset: 0 auto 0 0;
	margin: auto;
	position: absolute;
	width: 90%;
	z-index: -1;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.reason .reason_box:before {
		border-radius: 40px;
		height: 115%;
	}
}
@media screen and (max-width: 781px) {
	.wp-block-group.reason .reason_box:before {
		height: 108%;
	}
}
.wp-block-group.reason .reason_box.reversed {
	padding: 20px 35px 20px 0;
}
.wp-block-group.reason .reason_box.reversed:before {
	inset: 0 0 0 auto;
}

@media screen and (max-width: 781px) {
	.wp-block-group.reason .reason_box.reversed {
		padding: 0;
	}
	.wp-block-group.reason .reason_box.reversed:before {
		inset: 0 0 0 auto;
	}
}

.wp-block-group.works .works-list {
	justify-content: center;
	margin-top: 50px;
	margin-bottom: 30px;
}
@media screen and (max-width: 1050px) {
	.wp-block-group.works .works-list {
		margin-top: 40px;
	}
}
@media screen and (max-width: 650px) {
	.wp-block-group.works .works-list {
		margin-top: 30px;
	}
}
.wp-block-group.works .works-list img {
	height: 100%;
}



/* 背景、画像 */

.wp-block-group.about .wp-block-group__inner-container {
	position: relative;
}
.wp-block-group.about .wp-block-group__inner-container:before {
	background: #f6f6f6;
	border-radius: 40px;
	content: "";
	height: 85%;
	inset: 30px 0 0 70px;
	margin: auto;
	position: absolute;
	width: 75%;
	z-index: -1;
}
.wp-block-image.about_b_radius img {
	border-radius: 40px;
}
@media screen and (max-width: 781px) {
	.wp-block-image.about_b_radius img {
		border-radius: 40px;
		padding: 20px;
		margin: -20px 0;
	}
}




