/* ------------------------------
    p-sec01
------------------------------ */
.p-sec01 {
	margin-top: 21.2rem;
}
@media screen and (max-width: 768px) {
	.p-sec01 {
		margin-top: 28.5rem;
	}
}
.p-sec01 .c-ttl-green32 {
	margin-bottom: 6.3rem;
}
.p-sec01 .c-ttl-line02 {
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
	.p-sec01 .c-ttl-line02 {
		margin-bottom: 2.4rem;
	}
}

section[class^=p-sec01-box0]:not(.p-sec01-box01) {
	margin-top: 6.5rem;
}
@media screen and (max-width: 768px) {
	section[class^=p-sec01-box0]:not(.p-sec01-box01) {
		margin-top: 7.2rem;
	}
}

/* ------------------------------
    p-sec02
------------------------------ */
.p-sec02 {
	overflow: hidden;
	background: #f4f8f7;
	margin-top: 9.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec02 {
		margin-top: 8.5rem;
	}
}
.p-sec02 .u-wrap__1100 {
	padding: 7.8rem 0 8.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec02 .u-wrap__1100 {
		padding: 6.3rem 0 9.1rem;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02 .c-ttl-green26 {
		text-align: center;
	}
}

.p-sec02-box01 {
	margin: 5.5rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box01 {
		margin: 4.8rem 0 0;
	}
}

.p-sec02-box01__txt {
	font-size: 1.5rem;
	line-height: 1.9;
	margin: 3.2rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box01__txt {
		font-size: 2.8rem;
		line-height: 1.6071428571;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02-box01__txt {
		margin: 2.8rem 0 0;
	}
}

.p-sec02-box01-item {
	margin-top: 3.3rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box01-item {
		margin-top: 4rem;
	}
}
.p-sec02-box01-item .c-list-disc {
	margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box01-item .c-list-disc {
		margin-top: 3.5rem;
	}
}

.p-sec03-box01-flex {
	margin-top: 3.8rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 0 1.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec03-box01-flex {
		margin-top: 5.8rem;
		display: block;
	}
}

.p-sec03-box01-flex__item {
	width: 44rem;
}
@media screen and (max-width: 768px) {
	.p-sec03-box01-flex__item {
		width: 100%;
	}
	.p-sec03-box01-flex__item:nth-of-type(2) {
		margin-top: 5rem;
	}
}

.p-sec03-box01-flex__img {
	width: 100%;
	aspect-ratio: 44/25;
	border-radius: 1rem;
	overflow: hidden;
}

.p-sec03-box01-flex__cap {
	font-size: 1.5rem;
	color: #161c22;
	margin: 1.2rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec03-box01-flex__cap {
		font-size: 2.6rem;
		margin: 1rem 0 0;
	}
}

.p-sec02-box02 {
	margin-top: 6rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box02 {
		margin-top: 5.5rem;
	}
}

.p-sec02-box02-flex {
	margin-top: 3.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 2.3rem 4.6rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box02-flex {
		display: block;
		margin-top: 2.5rem;
	}
}

.p-sec02-box02-flex__item {
	width: calc((100% - 4.6rem) / 2);
	padding-bottom: 2.3rem;
	border-bottom: 1px dashed #90aba6;
}
@media screen and (max-width: 768px) {
	.p-sec02-box02-flex__item {
		width: 100%;
		padding-bottom: 4.3rem;
	}
	.p-sec02-box02-flex__item:nth-of-type(n+2) {
		margin-top: 4.3rem;
	}
}

.p-sec02-box02-flex__txt {
	font-size: 1.5rem;
	line-height: 1.9;
	margin: 2rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box02-flex__txt {
		font-size: 2.8rem;
		line-height: 1.6071428571;
	}
}

.p-sec02-box02__img {
	width: 125rem;
	height: 46rem;
	border-radius: 3rem 0 0 3rem;
	margin: 6.5rem calc(50% - 50vw) 0 0;
	overflow: hidden;
}
.p-sec02-box02__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
@media screen and (min-width: 1400px) {
	.p-sec02-box02__img {
		border-radius: 2.1428571429vw 0 0 2.1428571429vw;
		width: 89.2857142857vw;
		height: 32.8571428571vw;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02-box02__img {
		width: 71.2rem;
		height: 50rem;
		margin: 6rem calc(50% - 50vw) 0 0;
	}
}

.p-sec02-box02__cap {
	font-size: 1.5rem;
	line-height: 1.9;
	margin: 4.2rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box02__cap {
		font-size: 2.8rem;
		line-height: 1.6071428571;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02-box02__cap {
		margin: 3.2rem 0 0;
	}
}

.p-sec02-box03 {
	margin-top: 5.7rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box03 {
		margin-top: 7.7rem;
	}
}

.p-sec02-box03__txt {
	font-size: 1.5rem;
	line-height: 1.9;
	margin: 3.2rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__txt {
		font-size: 2.8rem;
		line-height: 1.6071428571;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__txt {
		margin: 2rem 0 0;
	}
}

.p-sec02-box03__link {
	margin: 5.5rem 0 0;
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__link {
		margin: 6.5rem 0 0;
	}
}
.p-sec02-box03__link dt {
	font-size: 1.8rem;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__link dt {
		font-size: 3.2rem;
	}
}
.p-sec02-box03__link dd {
	font-size: 1.5rem;
	line-height: 1.9;
	margin-top: 1.7rem;
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__link dd {
		font-size: 2.8rem;
		line-height: 1.6071428571;
	}
}
@media screen and (max-width: 768px) {
	.p-sec02-box03__link dd {
		margin-top: 0.2rem;
	}
}
.p-sec02-box03__link dd a {
	color: #008482;
}
@media screen and (min-width: 769px) {
	.p-sec02-box03__link dd a:hover {
		text-decoration: underline;
		text-underline-offset: 3px;
	}
}
.p-sec02-box03__link dd + dt {
	margin-top: 2.5rem;
}

/* ------------------------------
    p-sec03
------------------------------ */
.p-sec03 {
	margin-top: 8.5rem;
	padding-bottom: 10.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec03 {
		margin-top: 7.5rem;
	}
}
.p-sec03 .c-ttl-green32 {
	margin-bottom: 5.5rem;
}
@media screen and (max-width: 768px) {
	.p-sec03 .c-ttl-green32 {
		margin-bottom: 7rem;
	}
}
.p-sec03 .c-ttl-line02 {
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
	.p-sec03 .c-ttl-line02 {
		margin-bottom: 2.4rem;
	}
}

section[class^=p-sec03-box0]:not(.p-sec03-box01) {
	margin-top: 6.5rem;
}
@media screen and (max-width: 768px) {
	section[class^=p-sec03-box0]:not(.p-sec03-box01) {
		margin-top: 7.2rem;
	}
}

@media screen and (max-width: 768px) {
	.p-sec03-box02 .c-ttl-line02__small {
		display: block;
	}
}
/*# sourceMappingURL=support_glc.css.map */