@charset "UTF-8";


@media screen and (min-width: 768px) {
	.l-about .p-kv {
		margin-top: 60px;
		height: 600px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.l-about .p-kv {
		margin-top: 4.1666666667vw;
		height: 41.6666666667vw;
	}
}
@media screen and (max-width: 767px) {
	.l-about .p-kv {
		margin-bottom: 18vw;
		padding-top: 24vw;
	}
}
.l-about .p-kv__inner {
	display: flex;
	align-items: center;
}
@media screen and (min-width: 768px) {
	.l-about .p-kv__inner {
		height: 100%;
		justify-content: space-between;
	}
}
@media screen and (max-width: 767px) {
	.l-about .p-kv__inner {
		flex-direction: column;
		row-gap: 8vw;
	}
}
.l-about .p-kv__text-ttl {
	line-height: 1.4642857143;
	letter-spacing: 0em;
	font-weight: 700;
}
@media screen and (min-width: 768px) {
	.l-about .p-kv__text-ttl {
		font-size: 56px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.l-about .p-kv__text-ttl {
		font-size: 3.8888888889vw;
	}
}
@media screen and (max-width: 767px) {
	.l-about .p-kv__text-ttl {
		font-size: calc(30 / 375 * 100vw);
	}
}
@media screen and (min-width: 768px) {
	.l-about .p-kv__text-ttl {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.l-about .p-kv__text-ttl {
		margin-bottom: 2.0833333333vw;
	}
}
@media screen and (max-width: 767px) {
	.l-about .p-kv__text-ttl {
		margin-bottom: 5.3333333333vw;
	}
}

.l-about .p-kv__img {
	border-radius: 30px;
	overflow: hidden;
	height: 380px;
	width: 620px;
}
.l-about .p-kv__img img {
	object-fit: cover;
	object-position: 0 0;
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.l-about .p-kv__img {
		height: 28vw;
        width: 46vw;
	}
	.l-about .p-kv__img img {
		object-fit: cover;
		object-position: 0 0;
	}
}
@media screen and (max-width: 767px) {
	.l-about .p-kv__img {
		border-radius: 2.6666666667vw;
		height: 58vw;
		width: 100%;
	}
	.l-about .p-kv__img img {
		object-fit: cover;
		object-position: 0 0;
	}
}

.greeting {
	margin-bottom: 120px;
}

.greeting_box {
	background-color: #ffffff;
	border-radius: 30px;
	display: flex;
	flex-wrap: wrap;
	padding: 40px 80px;
}
.greeting_box .name {
	font-size: 30px;
	font-weight: bold;
	width: 300px;
}
.greeting_box .text {
	margin-left: 40px;
	width: calc(100% - 340px);
}
@media screen and (max-width: 767px) {
	.greeting {
		margin-bottom: 20vw;
	}

	.greeting_box {
		border-radius: 2.6666666667vw;
		display: block;
		padding: 10vw 6vw;
	}
	.greeting_box .name {
		font-size: 6vw;
		font-weight: bold;
		width: auto;
	}
	.greeting_box .text {
		margin-left: 0;
		margin-top: 6vw;
		width: auto;
	}
}