@charset "UTF-8";

.p-sec {
}

.p-sec_ttl {
	position: relative;
	width: fit-content;
	margin: 0 auto;
	padding: 0 18px;
	font-weight: bold;
	font-size: 30px;
	line-height: 1;
}

.p-sec_ttl::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -6px;
	left: 0;
	width: 100%;
	height: 12px;
	background: #c4ff00;
}

.p-sec_ttl h2 {
	position: relative;
	z-index: 2;
}

.philosophy {
	width: 710px;
	margin: 0 auto;
	padding: 110px 0 70px;
	text-align: center;
}

.philosophy_ttl {
	margin-bottom: 78px;
}

.philosophy_intro {
	margin-bottom: 70px;
}

.philosophy_intro_catch {
	position: relative;
	margin-bottom: 35px;
	font-weight: bold;
	font-size: 81px;
	line-height: 1;
}

.philosophy_intro_catch::after,
.philosophy_intro_catch::before {
	content: "";
	display: block;
	opacity: 0.4;
	position: absolute;
	bottom: 50%;
	z-index: -1;
	width: 169px;
	height: auto;
	transform: translateY(50%);
	aspect-ratio: 1;

	-ms-filter: blur(35px);
	    filter: blur(35px);
}

.philosophy_intro_catch::after {
	left: calc(50% - 10px);
	background: #00ebff;
}

.philosophy_intro_catch::before {
	right: calc(50% - 10px);
	background: #ff86da;
}

.philosophy_intro_cnt {
	font-weight: bold;
	font-size: 20px;
	line-height: 2;
}

.philosophy_cnt {
}

.philosophy_grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 78px 36px;
	position: relative;
	margin-bottom: 30px;
}

.philosophy_grid_cnt {
	position: relative;
	width: 100%;
	height: auto;
	padding-top: 25%;
	aspect-ratio: 1;
}

.philosophy_grid_cnt::before,
.philosophy_grid_cnt::after {
	content: "";
	display: block;
	position: absolute;
	right: 50%;
	bottom: 50%;
	border-radius: 50%;
	transform: translate(50%, 50%);
}

.philosophy_grid_cnt::before {
	z-index: 1;
	width: 100%;
	background: #f1ffc4;
	aspect-ratio: 1;
}

.philosophy_grid_cnt::after {
	z-index: 1;
	width: calc(100% - 40px);
	background: #c4ff00;
	aspect-ratio: 1;
}

.philosophy_grid_hd {
	position: relative;
	z-index: 5;
}

.philosophy_grid_hd_jp {
	font-weight: bold;
	font-size: 30px;
	line-height: 1;
}

.philosophy_grid_hd_en {
	color: #198e3f;
	font-size: 20px;
}

.philosophy_grid_txt {
	position: relative;
	z-index: 5;
	font-weight: bold;
}

.philosophy_grid_txt.fs14 {
	font-size: 14px;
}

.philosophy_grid_item {
	position: absolute;
	right: 50%;
	bottom: 50%;
	z-index: 10;
	width: max-content;
	transform: translate(50%, 50%);
}

.philosophy_txt {
	font-weight: bold;
	font-size: 20px;
	line-height: 2;
}

.message {
	padding-top: 110px;
}

.message_ttl {
	margin-bottom: 55px;
}

.message_wrap {
}

.message_cnt {
	padding: 0 100px;
}

.message_cnt.chairperson_cnt {
	margin-bottom: 110px;
	padding-bottom: 100px;
	border-bottom: #cecece 1px solid;
}

.message_cnt.principal_cnt {
	display: flex;
	flex-flow: row-reverse;
	gap: 60px;
}

.message_img {
	flex-shrink: 0;
}

.chairperson_cnt .message_img {
	margin-bottom: 60px;
}

.message_txt {
}

.message_txt_catch {
	margin-bottom: 45px;
	font-weight: bold;
	font-size: 30px;
}

.message_txt_catch span {
	display: inline-flex;
	position: relative;
	padding: 0 5px;
	line-height: 1;
}

.message_txt_catch span::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -6px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 12px;
	background: #c4ff00;
}

.message_txt_cnt {
	font-weight: bold;
}

.message_txt_name {
	margin-top: 20px;
	text-align: end;
}

.message_txt_name span {
	font-size: 20px;
}

@media screen and (max-width:1240px) {
}

@media screen and (max-width:768px) {
	.p-sec {
	}

	.p-sec_ttl {
	}

	.p-sec_ttl::before {
	}

	.p-sec_ttl h2 {
	}

	.philosophy {
		width: 100%;
		padding: 60px 0 30px;
	}

	.philosophy_ttl {
		margin-bottom: 48px;
	}

	.philosophy_intro {
	}

	.philosophy_intro_catch {
		font-size: 53px;
	}

	.philosophy_intro_catch::after,
	.philosophy_intro_catch::before {
	}

	.philosophy_intro_catch::after {
	}

	.philosophy_intro_catch::before {
	}

	.philosophy_intro_cnt {
	}

	.philosophy_cnt {
	}

	.philosophy_grid {
		grid-template-columns: 1fr;
		gap: 10px;
		max-width: 330px;
		margin: 0 auto;
		padding-top: 150px;
	}

	.philosophy_grid_cnt {
		padding-top: 22%;
	}

	.philosophy_grid_cnt::before,
	.philosophy_grid_cnt::after {
	}

	.philosophy_grid_cnt::before {
	}

	.philosophy_grid_cnt::after {
		width: calc(100% - 25px);
	}

	.philosophy_grid_hd {
	}

	.philosophy_grid_hd_jp {
	}

	.philosophy_grid_hd_en {
	}

	.philosophy_grid_txt {
	}

	.philosophy_grid_txt.fs14 {
	}

	.philosophy_grid_item {
		top: 0;
		bottom: unset;
		width: 300px;
		transform: translateX(50%);
	}

	.philosophy_txt {
		font-size: 18px;
	}

	.message {
		padding-top: 30px;
	}

	.message_ttl {
	}

	.message_wrap {
	}

	.message_cnt {
	}

	.message_cnt.chairperson_cnt {
		margin-bottom: 60px;
		padding: 0 0 60px;
	}

	.message_cnt.principal_cnt {
		flex-flow: column;
		align-items: center;
		gap: 20px;
		padding: 0;
	}

	.message_img {
	}

	.chairperson_cnt .message_img {
		margin-bottom: 20px;
	}

	.principal_cnt .message_img {
		width: 140px;
		margin: 0 auto;
	}

	.message_txt {
	}

	.message_txt_catch {
		margin-bottom: 20px;
		font-size: 17px;
	}

	.message_txt_catch span {
	}

	.message_txt_catch span::before {
	}

	.message_txt_cnt {
	}

	.message_txt_name {
	}

	.message_txt_name span {
	}
}
