@charset "UTF-8";
/* アウトポール設計
----------------------------------------*/
.c-page-sub__outpole-item01 .read-block {
	text-align: center;
	background: linear-gradient(to left, #285aa0, #008caa, #285aa0);
	color: #fff;
	padding: 7rem 0;
}
.c-page-sub__outpole-item01 .read-block h3 {
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.042em;
	margin-bottom: 3rem;
}
.c-page-sub__outpole-item01 .read-block p {
	font-size: 2rem;
	line-height: 2.25;
	letter-spacing: 0.025em;
}


.c-page-sub__outpole-item01 .detail-block {
	background: url("../img/outpole/bg-contents01.png") no-repeat;
	background-size: cover;
	padding: 10rem 0;
}
.c-page-sub__outpole-item01 .detail-block > * {
	max-width: 100rem;
	margin: 0 auto;
}
.c-page-sub__outpole-item01 .detail-block h3 {
	font-family: "Noto Sans JP",YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
	background: linear-gradient(to left, #285aa0, #008caa, #285aa0);
	color: #fff;
	padding: 1rem 0;
	margin-bottom: 2.5rem;
}
.c-page-sub__outpole-item01 .detail-block h3.not {
	background: #666666;
}

.c-page-sub__outpole-item01 .detail-block .flex-box {
	display: flex;
	column-gap: 5.8rem;
	justify-content: center;
	margin-bottom: 9rem;
}
.c-page-sub__outpole-item01 .detail-block .flex-box h3 {
	max-width: 40rem;
	margin: 0 auto 2.5rem;
	font-size: 2.5rem;
	padding: 1.5rem 0;
}
.c-page-sub__outpole-item01 .detail-block .flex-box figure {
	max-width: 43rem;
	margin: 0 auto;
}

.c-page-sub__outpole-item01 .detail-block .flex-box02 {
	display: flex;
	column-gap: 2.4rem;
	margin-bottom: 3.5rem;
}

@media only screen and (max-width: 767px) {
	.c-page-sub__outpole-item01 .read-block {
		padding: calc(50 / 375 * 100vw) calc(15 / 375 * 100vw) calc(60 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .read-block h3 {
		font-size: calc(23 / 375 * 100vw);
		margin-bottom: calc(20 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .read-block p {
		text-align: left;
		font-size: calc(16 / 375 * 100vw);
		line-height: 1.8;
	}


	.c-page-sub__outpole-item01 .detail-block {
		padding: calc(50 / 375 * 100vw) calc(15 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .detail-block h3 {
		font-size: calc(16 / 375 * 100vw);
		padding: calc(10 / 375 * 100vw) 0;
		margin-bottom: calc(15 / 375 * 100vw);
	}

	.c-page-sub__outpole-item01 .detail-block .flex-box {
		display: block;
		margin-bottom: calc(40 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .detail-block .flex-box .flex-item + .flex-item {
		margin-top: calc(30 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .detail-block .flex-box h3 {
		max-width: 90%;
		margin: 0 auto calc(15 / 375 * 100vw);
		font-size: calc(20 / 375 * 100vw);
		padding: calc(10 / 375 * 100vw) 0;
	}
	.c-page-sub__outpole-item01 .detail-block .flex-box figure {
		max-width: 80%;
		margin: 0 auto;
	}

	.c-page-sub__outpole-item01 .detail-block .flex-box02 {
		display: block;
		margin-bottom: calc(35 / 375 * 100vw);
	}
	.c-page-sub__outpole-item01 .detail-block .flex-item + .flex-item {
		margin-top: calc(10 / 375 * 100vw);
	}
}


.c-page-sub__outpole-item02 .read-block {
	text-align: center;
	background: linear-gradient(to left, #46a050, #2d784f, #46a050);
	color: #fff;
	padding: 7rem 0;
}
.c-page-sub__outpole-item02 .read-block h3 {
	font-size: 3rem;
	font-weight: 500;
	letter-spacing: 0.042em;
	margin-bottom: 3rem;
}
.c-page-sub__outpole-item02 .read-block p {
	font-size: 2rem;
	line-height: 2.25;
	letter-spacing: 0.025em;
}


.c-page-sub__outpole-item02 .detail-block {
	background: url("../img/outpole/bg-contents02.png") no-repeat;
	background-size: cover;
	padding: 10rem 0;
}
.c-page-sub__outpole-item02 .detail-block > * {
	max-width: 100rem;
	margin: 0 auto;
}

.c-page-sub__outpole-item02 .detail-block h3 {
	font-family: "Noto Sans JP",YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
	background: linear-gradient(to left, #46a050, #2d784f, #46a050);
	color: #fff;
	padding: 1rem 0;
	margin-bottom: 2.5rem;
}
.c-page-sub__outpole-item02 .detail-block h3.not {
	background: #666666;
}
.c-page-sub__outpole-item02 .detail-block h3.color-green {
	font-family: "Noto Serif JP",YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	background: #46a050;
	font-size: 2.5rem;
	letter-spacing: 0.042em;
	padding: 1.5rem 0;
}

.c-page-sub__outpole-item02 .detail-block .img-box {
	background: #fffac8;
	padding: 5rem 7.5rem 4rem;
	margin-top: 5rem;
	margin-bottom: 10rem;
	position: relative;
}
.c-page-sub__outpole-item02 .detail-block .img-box::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background:
    repeating-linear-gradient(
      to right,
      #46a050 0,
      #46a050 20px,
      transparent 20px,
      transparent 34px
    ),
    repeating-linear-gradient(
      to bottom,
      #46a050 0,
      #46a050 20px,
      transparent 20px,
      transparent 34px
    ),
    repeating-linear-gradient(
      to left,
      #46a050 0,
      #46a050 20px,
      transparent 20px,
      transparent 34px
    ),
    repeating-linear-gradient(
      to top,
      #46a050 0,
      #46a050 20px,
      transparent 20px,
      transparent 34px
    );
	background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;
	background-position: top, right, bottom, left;
	background-repeat: no-repeat;
	pointer-events: none;
}
.c-page-sub__outpole-item02 .detail-block .img-box p {
	font-family: "Noto Sans JP",YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	text-align: center;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.025em;
}
.c-page-sub__outpole-item02 .detail-block .img-plan {
	max-width: 65.5rem;
	margin: 0 auto 8.5rem;
}
.c-page-sub__outpole-item02 .detail-block .img-plan figcaption {
	max-width: 56.5rem;
	margin: 0 auto 1rem;
	font-family: "Noto Sans JP",YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 2.5rem;
	font-weight: 500;
	text-align: center;
	background: #46a050;
	color: #fff;
	padding: 1.5rem 0;
}
.c-page-sub__outpole-item02 .detail-block .flex-box02 {
	display: flex;
	column-gap: 2.4rem;
	margin-bottom: 3.5rem;
}

.c-page-sub__outpole .btn-block {
	padding: 10rem 0;
}
.c-page-sub__outpole .btn-block h3 {
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-bottom: 2rem;
}
.c-page-sub__outpole .btn-block a {
	display: block;
	max-width: 80rem;
	margin: 0 auto;
}

@media only screen and (max-width: 767px) {
	.c-page-sub__outpole-item02 .read-block {
		padding: calc(50 / 375 * 100vw) calc(15 / 375 * 100vw) calc(60 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .read-block h3 {
		font-size: calc(23 / 375 * 100vw);
		margin-bottom: calc(20 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .read-block p {
		text-align: left;
		font-size: calc(16 / 375 * 100vw);
		line-height: 1.8;
	}

	.c-page-sub__outpole-item02 .detail-block {
		padding: calc(50 / 375 * 100vw) calc(15 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .detail-block h3 {
		font-size: calc(16 / 375 * 100vw);
		padding: calc(10 / 375 * 100vw) 0;
		margin-bottom: calc(15 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .detail-block h3.color-green {
		font-size: calc(20 / 375 * 100vw);
		padding: calc(10 / 375 * 100vw) 0;
	}

	
	.c-page-sub__outpole-item02 .detail-block .img-box {
		padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw);
		margin-top: calc(50 / 375 * 100vw);
		margin-bottom: calc(50 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .detail-block .img-box p {
		font-size: calc(15 / 375 * 100vw);
		line-height: 1.8;
		text-align: left;
	}
	.c-page-sub__outpole-item02 .detail-block .img-plan {
		max-width: 90%;
		margin: 0 auto calc(50 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .detail-block .img-plan figcaption {
		max-width: 100%;
		margin: 0 auto calc(10 / 375 * 100vw);
		font-size: calc(20 / 375 * 100vw);
		padding: calc(10 / 375 * 100vw) 0;
	}
	
	
	.c-page-sub__outpole-item02 .detail-block .flex-box02 {
		display: block;
		margin-bottom: calc(35 / 375 * 100vw);
	}
	.c-page-sub__outpole-item02 .detail-block .flex-item + .flex-item {
		margin-top: calc(10 / 375 * 100vw);
	}
	
	.c-page-sub__outpole .btn-block {
		padding: calc(50 / 375 * 100vw) calc(20 / 375 * 100vw);
	}
	.c-page-sub__outpole .btn-block h3 {
		font-size: calc(18 / 375 * 100vw);
		margin-bottom: calc(20 / 375 * 100vw);
	}
	.c-page-sub__outpole .btn-block a {
		max-width: 100%;
	}

}




