@charset "UTF-8";


.philosophy_leaf {
	position: absolute;
	top: 51.3908%;
	left: 50%;
	transform: translateX(-50%);
	max-width: 2748px;
	width: 143.125%;
}

.title_container {
	text-align: center;
}

.philosophy_guide-text {
	font-size: clamp(0.938rem, 0.769rem + 0.35vw, 1rem);
	line-height: 25px;
	text-align: center;
}

.philosophy_visual-container {
	position: relative;
	max-width: 1000px;
	width: 95%;
	margin: 0 auto;
}
.philosophy_visual-container::before , .philosophy_visual-container::after {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 0;
	transform: translateX(-50%);
	width: 100%;
	content: "";
}
.philosophy_visual-container::before {
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-blend-mode: luminosity;
	opacity: 0.37;
}
.philosophy_visual-container::after {
	width: 100%;
	background: linear-gradient(120deg,#2e58b1 0%, #3362c6 30%, #22918d 100%);

	mix-blend-mode: multiply;
}

.philosophy_visual-contents {
	display: flex;
	position: relative;
	z-index: 1;
	max-width: 1000px;
	width: 100%;
	padding-top: clamp(1.563rem, -1.806rem + 7.02vw, 2.813rem) !important;
	justify-content: space-between;

	row-gap: 20px;
}



.philosophy_visual-theme {
	color: #ffffff;
	line-height: clamp(2.063rem, -0.801rem + 5.96vw, 3.125rem);
}
.philosophy_visual-theme p {
	font-weight: 500;
	font-size: clamp(1.313rem, -0.035rem + 2.81vw, 1.813rem);
	letter-spacing: 0.1em;
	text-shadow: 5px -2px 2px rgba(0, 0, 0, 0.22);
}

.philosophy_visual-theme p:nth-of-type(2) strong {
	font-weight: 500;
	font-size: 21px;
}
.philosophy_visual-theme p {
	padding-left: 1em;
}
.philosophy_visual-theme p:nth-of-type(3) strong {
	font-size: clamp(2.375rem, 1.028rem + 2.81vw, 2.875rem);
	letter-spacing: 0.1em;
}
.philosophy_visual-theme p:nth-of-type(3) strong span:nth-of-type(1)::before , .philosophy_visual-theme p:nth-of-type(3) strong span:nth-of-type(2)::after {
	font-weight: 500;
}

.philosophy_visual-theme p:nth-of-type(3) strong span:nth-of-type(1)::before {
	content: "「";
}

.philosophy_visual-theme p:nth-of-type(3) strong span:nth-of-type(2)::after {
	content: "」";
}

.philosophy_visual-theme p:nth-of-type(3) strong span {
	display: inline-block;
	font-weight: bold;
}



.philosophy_profile-img img {
	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center;
}


.philosophy_visual-en {
	position: absolute;
	z-index: 1;
	width: 100%;
	opacity: 0.52;
	font-weight: normal;
	font-size: clamp(2.563rem, -3.332rem + 12.28vw, 4.75rem);
	line-height: clamp(3rem, -4.074rem + 14.74vw, 5.625rem);
	letter-spacing: 0.2em;
}
.philosophy_visual-en span {
	display: inline-block;
	position: relative;
	color: rgba(43, 43, 43, 0.55);

	mix-blend-mode: multiply;
}
.philosophy_visual-en span::after {
	position: absolute;
	top: clamp(0.063rem, -0.274rem + 0.7vw, 0.188rem);
	right: clamp(0.188rem, -0.149rem + 0.7vw, 0.313rem);
	z-index: 1;
	color: transparent;
	white-space: nowrap;
	content: attr(date-edge);

	text-stroke: 1px #1dcf80;
	-webkit-text-stroke: 1px #1dcf80;
	mix-blend-mode: color-dodge;
}
@media screen and (min-width: 768px) {
	.common_page-title {
		margin-bottom: 30px;
	}
	.philosophy_guide-text {
		margin-bottom: 55px;
	}
	.philosophy_visual-container {
		width: 95%;
		margin-bottom: 120px;
	}
	.philosophy_visual-container::before , .philosophy_visual-container::after {
		aspect-ratio: 2/1;
	}
	.philosophy_visual-container::before {
		background-image: url(../images1/philosophy_bg-pc.jpg);
		background-position: center top;
		background-size: 100%;
	}

	.philosophy_visual-contents {
		transform: translateX(clamp(0.313rem, -7.477rem + 14.93vw, 3.438rem));
	}



	/*.philosophy_visual-theme p:nth-child(-n+2) {
		margin-bottom: 5px;
	}*/
	.philosophy_visual-theme p:nth-of-type(3) {
		margin: 0.3em 0 -0.1em;
	}

	.philosophy_visual-theme p br {
		display: none;
	}
	.philosophy_profile-img {
		position: relative;
		max-width: 315px;
		min-width: 250px;
		width: 31.5%;
		margin-top: 45px;

		aspect-ratio: 63/94;
	}
	.philosophy_profile-img::before , .philosophy_profile-img::after {
		display: block;
		position: absolute;
		border-radius: 10px;
		background: linear-gradient(to right bottom, #3362c6 0%, #3362c6 30.58%, #26a19e 100%);
		opacity: 0.35;
		content: "";
	}
	.philosophy_profile-img::before {
		top: calc(100% - 25.5286%);
		left: 65.0794%;
		max-width: 175px;
		width: 55.5556%;

		aspect-ratio: 35/34;
	}
	.philosophy_profile-img::after {
		bottom: 140px;
		left: calc(100% + 50px);
		max-width: 40px;
		width: 29.6297%;

		aspect-ratio: 1/1;
	}
	.philosophy_visual-en {
		top: calc(100% - clamp(9.688rem, 2.109rem + 15.79vw, 12.5rem));
		left: 5%;
		max-width: 485px;
		width: clamp(16.25rem, -21.645rem + 78.95vw, 30.313rem);
		/*bottom: calc(15px + 5.2632%);*/
	}
}
@media screen and (max-width: 767px) {
	.common_page-title {
		margin-bottom: 30px;
	}
	.philosophy_guide-text {
		margin-bottom: 15px;
		padding: 0 30px;
	}
	@media screen and (max-width: 655px) {
		.philosophy_guide-text {
			text-align: justify;
		}
	}
	.philosophy_visual-container {
		width: calc(100% - 60px);
		margin-bottom: 25px;
	}
	.philosophy_visual-container::before , .philosophy_visual-container::after {
		height: calc(100% - 35px);
	}
	.philosophy_visual-container::before {
		background-image: url(../images1/philosophy_bg-pc.jpg);
		background-position: center;
		background-size: cover;
	}
	.philosophy_visual-contents {
		padding: 0 5px;
		flex-direction: column;
	}




	@media screen and (max-width: 500px) {
		.philosophy_visual-theme {
			max-width: 320px;
		}
		.philosophy_visual-theme p:nth-of-type(3) strong span:nth-of-type(2) {
			padding-left: 1.14em;
		}
	}
	/*.philosophy_visual-theme p:nth-child(2) {
		margin-bottom: 15px;
	}*/

	.philosophy_visual-theme p:nth-of-type(3) {
		margin: 0.56em 0 0.3em;
		line-height: 37px;
	}

	.philosophy_profile-img {
		max-width: calc(100% - 25px);
		width: 100%;
		margin: 0 auto;

		aspect-ratio: 59/43;
	}
	.philosophy_visual-en {
		bottom: 2px;
		left: 50%;
		z-index: 5;
		transform: translateX(-50%);
		max-width: 355px;
		width: 107.5758%;
	}
	/*.philosophy_visual-en {
		bottom: calc(100px + 18.8406%);
		z-index: 0;
		transform: translateX(-50%);
	}*/
}











.philosophy_main {
	position: relative;
}


.philosophy_main::before {
	display: block;
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, rgba(51, 98, 198, 1) 28.142401342693564%, rgba(50, 98, 197, 1) 28.142401342693564%, rgba(38, 161, 158, 1) 100%);
	content: "";

	mix-blend-mode: multiply;
}

.philosophy_main-bg {
	position: relative;
	z-index: -1;
	width: 100%;
	opacity: 0.37;
}

.philosophy_sub {
	position: absolute;
	bottom: 0;
	max-width: 420px;
}


.philosophy_sub::before , .philosophy_sub::after {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	max-width: 285px;
	border-radius: 10px;
	content: "";

	aspect-ratio: 57/56;
}

.philosophy_sub::before {
	z-index: -1;
	background-image: url(../images/philosophy_profile-bg.webp);
	background-repeat: no-repeat;
	background-size: 100%;
}

.philosophy_sub::after {
	background: linear-gradient(135deg, rgba(51, 98, 198, 1) 28.142401342693564%, rgba(50, 98, 197, 1) 28.142401342693564%, rgba(38, 161, 158, 1) 100%);
	opacity: 0.35;

	mix-blend-mode: multiply;
}

.philosophy_profile {
	width: 100%;
	border-radius: 10px;
}


.philosophy_main-text {
	position: absolute;
	z-index: 10;
	color: #ffffff;
}

.philosophy_main-text p {
	font-weight: 500;
	font-size: clamp(1.313rem, 0.955rem + 1.79vw, 1.813rem);
	letter-spacing: 0.1em;
	text-shadow: 5px -2px 2px rgba(0, 0, 0, 0.22);
}


.philosophy_main-text p:nth-of-type(2) strong {
	font-weight: 500;
	font-size: clamp(1rem, 0.776rem + 1.12vw, 1.313rem);
}

.philosophy_main-text p:nth-of-type(3) strong {
	margin-right: -0.5em;
	font-size: clamp(2.375rem, 2.017rem + 1.79vw, 2.875rem);
	letter-spacing: 0.1em;
}

.philosophy_main-text p:nth-of-type(3) strong::before , .philosophy_main-text p:nth-of-type(3) strong::after {
	font-weight: 500;
}

.philosophy_main-text p:nth-of-type(3) strong::before {
	content: "「";
}

.philosophy_main-text p:nth-of-type(3) strong::after {
	content: "」";
}



.common_philosophy-en {
	position: absolute;
	left: 50px;
	max-width: 485px;
	width: 100%;
	opacity: 0.52;
	font-weight: normal;
	font-size: 76px;
	line-height: 90px;
	letter-spacing: 0.2em;
}
.common_philosophy-en span {
	display: inline-block;
	position: relative;
	color: rgba(43, 43, 43, 0.55);

	mix-blend-mode: multiply;
}
.common_philosophy-en span::after {
	position: absolute;
	top: 3px;
	left: -5px;
	z-index: 1;
	color: transparent;
	content: attr(date-edge);

	text-stroke: 1px #1dcf80;
	-webkit-text-stroke: 1px #1dcf80;
	mix-blend-mode: color-dodge;
}


.middle_text {
	margin-right: -0.15em;
	font-weight: bold;
	font-size: clamp(1.25rem, -0.771rem + 4.21vw, 2rem);
	line-height: clamp(2.25rem, -1.455rem + 7.72vw, 3.625rem);
	text-align: center;
	letter-spacing: 0.15em;
}

.middle_text strong {
	border-bottom-width: clamp(0.313rem, -0.024rem + 0.7vw, 0.438rem);
	border-bottom-style: solid;
	font-weight: 900;
}

.vision_color {
	border-bottom-color: #3362c6;
	color: #3362c6;
}

.mission_color {
	border-bottom-color: #1dcf80;
	color: #1dcf80;
}



.philosophy_items {
	display: flex;
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
	flex-direction: column;
}


.philosophy_item-head {
	display: flex;
	column-gap: 5px;
	justify-content: center;
	align-items: flex-end;
}

.philosophy_item-head dt {
	display: flex;
	font-weight: normal;
	font-size: clamp(0.938rem, -0.747rem + 3.51vw, 1.563rem);
	letter-spacing: 0.2em;
	column-gap: calc(10px - 0.2em);
	align-items: center;
}

.philosophy_item-head dt::after {
	font-family: "icomoon" !important;
	font-size: clamp(1.125rem, -0.054rem + 2.46vw, 1.563rem);
	content: "\e908";
}


#vision_item .philosophy_item-head dt {
	color: #3362c6;
}


#mission_item .philosophy_item-head dt {
	color: #1dcf80;
}


.philosophy_item-head dd {
	padding: 0 5px;
	border-bottom-width: 3px;
	border-bottom-style: solid;
	font-weight: bold;
	font-size: clamp(1.813rem, -0.882rem + 5.61vw, 2.813rem);
	line-height: clamp(2.625rem, -1.249rem + 8.07vw, 4.063rem);
}

#vision_item .philosophy_item-head dd {
	border-bottom-color: #3362c6;
}

#mission_item .philosophy_item-head dd {
	border-bottom-color: #1dcf80;
}

.philosophy_container {
	display: flex;
	position: relative;
	flex-direction: column;
}
.philosophy_container::before {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	content: "";
	filter: blur(7px);
}

.philosophy_content-list {
	display: flex;
	max-width: 800px;
	margin: 0 auto;
	align-items: flex-start;
	flex-wrap: wrap;
}

.philosophy_content-item {
	display: flex;
	max-width: 380px;
	flex-direction: column;
}

.philosophy_content-title {
	display: flex;
	width: 100%;
	height: 100%;
	margin-bottom: 20px;
	border-bottom-width: 3px;
	border-bottom-style: solid;
	font-weight: bold;
	font-size: clamp(1.313rem, 0.302rem + 2.11vw, 1.688rem);
	line-height: clamp(1.875rem, 1.538rem + 0.7vw, 2rem);
	letter-spacing: 0.1em;
	column-gap: clamp(0.313rem, -0.53rem + 1.75vw, 0.625rem);
	align-items: flex-end;
}

#vision_item .philosophy_content-title {
	border-bottom-color: #3362c6;
}

#mission_item .philosophy_content-title {
	border-bottom-color: #1dcf80;
}

.philosophy_content-title img {
	max-width: 60px;
	width: clamp(2.813rem, 0.286rem + 5.26vw, 3.75rem);

	aspect-ratio: 1/1;
}

.philosophy_content-title figcaption {
	display: flex;
	height: 100%;
	align-items: flex-end;
}

.philosophy_content-text {
	width: 100%;
	padding: 0 clamp(0.313rem, -0.53rem + 1.75vw, 0.625rem);
	background-position: bottom 2px center;
	background-size: 100% 30px;
	font-weight: 500;
	font-size: 15px;
	line-height: 30px;
	text-align: justify;
}

#vision_item .philosophy_content-text {
	background-image: linear-gradient(180deg, rgba(51, 98, 198, 0.27) 2px, transparent 2px);
}

#mission_item .philosophy_content-text {
	background-image: linear-gradient(180deg, rgba(29, 207, 128, 0.27) 2px, transparent 2px);
}


@media screen and (min-width: 768px) {
	.main_container {
		position: relative;
		padding-bottom: 70px;
	}

	.main_container::before {
		position: absolute;
		top: -55px;
		left: 50%;
		z-index: -1;
		transform: translateX(-50%);
		width: 1920px;
		background-image: url(../images1/philosophy_logo-bg.png);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100%;
		opacity: 0.1;
		content: "";

		aspect-ratio: 1920/677;
	}

	.title_container {
		margin-bottom: 110px;
	}

	/*.philosophy_container {
		width: 95%;
		margin-bottom: 80px;
		padding-bottom: 15px;
	}*/

	.philosophy_main {
		width: 82.5%;
	}

	.philosophy_sub {
		right: 0;
		width: 42%;
		padding-right: 4.5%;
		padding-bottom: 7%;
	}

	.philosophy_sub::before , .philosophy_sub::after {
		width: 67.8572%;
	}


	.philosophy_main-text {
		top: 10.6871%;
		padding-left: 5%;
	}

	.philosophy_main-text p:not(:nth-of-type(3)) {
		padding-left: 1em;
	}

	.philosophy_main-text p:nth-child(-n+2) {
		margin-bottom: 5px;
	}

	.philosophy_main-text p br {
		display: none;
	}

	.common_philosophy-en {
		bottom: calc(15px + 5.2632%);
		left: 8%;
		z-index: 5;
	}

	.middle_text {
		margin-bottom: 30px;
	}

	.philosophy_container::before {
		top: 110px;
		width: 2730px;
		background-image: url(../images1/philosophy_leaf-pc.png);
		opacity: 0.57;

		aspect-ratio: 42/13;
	}
	.philosophy_items {
		width: 95%;
		padding: 60px 0 90px;
	}
	.philosophy_items::before , .philosophy_items::after {
		display: block;
		position: absolute;
		max-width: 85px;
		width: clamp(3.75rem, -0.461rem + 8.77vw, 5.313rem);
		opacity: 0.5;
		content: "";

		mask-size: 100%;
		-webkit-mask-size: 100%;
		mask-repeat: no-repeat;
		-webkit-mask-repeat: no-repeat;
		aspect-ratio: 1/1;
	}

	.philosophy_items::before {
		top: 0;
		right: 0;

		mask-position: right top;
		-webkit-mask-position: right top;
		mask-image: url(../images/border_top.webp);
		-webkit-mask-image: url(../images/border_top.webp);
	}

	.philosophy_items::after {
		bottom: 0;
		left: 0;

		mask-position: left bottom;
		-webkit-mask-position: left bottom;
		mask-image: url(../images/border_bottom.webp);
		-webkit-mask-image: url(../images/border_bottom.webp);
	}

	#vision_item.philosophy_items::before , #vision_item.philosophy_items::after {
		background-color: #3362c6;
	}

	#mission_item.philosophy_items::before , #mission_item.philosophy_items::after {
		background-color: #1dcf80;
	}

	#vision_item {
		margin-bottom: 20px;
	}

	.philosophy_item-head {
		margin-bottom: 45px;
	}


	.philosophy_content-list {
		width: 95%;
		column-gap: 5%;

		row-gap: 30px;
	}

	.philosophy_content-item {
		width: 47.5%;
	}
	.philosophy_content-title {
		margin-bottom: 20px;
	}

	.philosophy_content-title figcaption {
		padding-bottom: 5px;
	}.common_contact-link {
		margin-top: 115px;
	}
	.main_container {
		padding-bottom: 170px;
	}
}

@media screen and (max-width: 767px) {
	.main_container {
		padding-bottom: 50px;
	}

	.title_container {
		margin-bottom: 50px;
	}

	.main_bg-container {
		display: none;
	}

	/*.philosophy_container {
		width: 100%;
		margin-bottom: 40px;
		padding: 0 10px 100px;
	}*/

	.philosophy_main {
		overflow: hidden;
		width: calc(100% - 20px);
		margin: 0 auto;
	}

	.philosophy_main-bg {
		height: 590px;

		object-fit: cover;
	}

	.philosophy_sub {
		right: 10px;
		z-index: 3;
		width: 60%;
		padding-right: 5.3334%;
		padding-bottom: 9.3334%;
	}

	.philosophy_sub::before , .philosophy_sub::after {
		display: none;
		width: 68.8889%;
	}

	.philosophy_main-text {
		top: 50px;
	}

	@media screen and (max-width: 500px) {
		.philosophy_main-text {
			left: 50%;
			transform: translateX(-50%);
			max-width: 340px;
			min-width: 300px;
			width: 85%;
		}
	}

	.philosophy_main-text p:not(:nth-of-type(3)) {
		padding-left: 0.8em;
	}

	.philosophy_main-text p:nth-child(2) {
		margin-bottom: 15px;
	}

	.philosophy_main-text p:nth-of-type(3) {
		margin-bottom: 5px;
		padding-left: 1.7em;
		line-height: 43px;
		text-indent: -1.95em;
	}

	.common_philosophy-en {
		bottom: calc(100px + 18.8406%);
		left: 50%;
		z-index: 0;
		transform: translateX(-50%);
	}

	.middle_text {
		margin-bottom: 55px;
	}


	.philosophy_container::before {
		top: -70px;
		width: 630px;
		background-image: url(../images1/philosophy_leaf-mb.png);
		opacity: 0.2;

		aspect-ratio: 18/31;
	}
	.philosophy_items {
		width: calc(100% - 60px);
	}

	#vision_item {
		margin-bottom: 40px;
	}

	.philosophy_item-head {
		margin-bottom: 20px;
	}


	/*.philosophy_item-head dt::after {
		transform: rotate(90deg);
	}*/

	.philosophy_content-list {
		width: 100%;

		row-gap: 25px;
	}

	@media screen and (min-width: 551px) {
		.philosophy_content-list {
			justify-content: space-between;
		}
		.philosophy_content-item {
			width: calc(50% - 10px);
		}.philosophy_content-title {
			height: auto;
		}
	}
	@media screen and (max-width: 550px) {
		.philosophy_content-list {
			flex-direction: column;
			align-items: center;
		}
		.philosophy_content-item {
			width: 100%;
		}
		@media screen and (min-width: 390px) {
			.philosophy_content-title figcaption br {
				display: none;
			}
		}
	}
	@media screen and (max-width: 389px) {
		.philosophy_visual-theme p {
			font-size: 20px;
		}
	}

	.philosophy_content-title {
		margin-bottom: 5px;
	}
	.common_contact-link {
		margin-top: 60px;
	}
	.main_container {
		padding-bottom: 115px;
	}
}
