@charset "utf-8";
.global_nav__menu_list__item.philosophy a::before {
	background-color: var(--color--red);
}
#philosophy {

}
		.fv {
			width: 100%;
			height: auto;
			padding: 105px 0 113px;
		}
			.fv__inner {
				width: 51.28866%;
				height: auto;
				margin: 0 auto;
			}
				.fv__heading {
					width: 100%;
					height: auto;
					margin: 0 auto 39px;
				}
					.fv__heading__main {
						width: 100%;
						height: auto;
					}
				.fv__contents {
					width: 100%;
					height: auto;
				}
					.fv__contents__txt {
						width: 100%;
						height: auto;
						font-size: 1.71875vw;
						font-weight: 700;
						line-height: 1.7;
						white-space: nowrap;
						font-feature-settings: "palt";
					}
		.philosophy__contents {
			width: 100%;
			height: auto;
		}
			.philosophy__contents__item {
				width: 100%;
				height: auto;
			}
			.philosophy__contents__item.management {
				padding-bottom: 150px;
			}
			.philosophy__contents__item.guidelines {
				padding-bottom: 137px;
			}
			.philosophy__contents__item.message {
				padding-bottom: 111px;
			}
				.philosophy__contents__item__inner {
					width: 91.6666%;
					height: auto;
					margin: 0 auto;
				}
					.philosophy__contents__item__heading {
						width: auto;
						height: 25px;
						margin-bottom: 90px;
					}
						.philosophy__contents__item__heading img {
							width: auto;
							height: 100%;
						}
					.philosophy__contents__management_txt {
						width: 85.32%;
						height: auto;
						margin: 0 auto;
						font-size: 2.03125vw;
						font-weight: 700;
						line-height: 1.7;
						letter-spacing: 0em;
						white-space: nowrap;
					}
					.philosophy__contents__guidelines_txt {
						width: 85.32%;
						height: auto;
						margin: 0 auto 167px;
						font-size: 2.03125vw;
						font-weight: 700;
						line-height: 1.7;
						letter-spacing: 0em;
						white-space: nowrap;
					}
					.philosophy__contents__guidelines_graph {
						width: 100%;
						height: auto;
						margin: 0 auto 75px;
						position: relative;
					}
						.philosophy__contents__guidelines_graph img {
							width: 68.65%;
							height: auto;
							margin: 0 auto;
						}
						.philosophy__contents__guidelines_graph__txt {
							font-size: 1.445312vw;
							font-weight: 500;
							line-height: 1.4;
							letter-spacing: 0em;
							position: absolute;
							bottom: 8px;
							left: 3.9%;
						}
					.philosophy__contents__guidelines_element {
						width: 100%;
						height: auto;
					}
						.philosophy__contents__guidelines_element_list {
							display: flex;
							justify-content: center;
							align-items: flex-start;
							width: 100%;
							height: auto;
							margin: 0 auto 43px;
						}
							.philosophy__contents__guidelines_element_list__item {
								width: 33%;
								height: auto;
							}
								.philosophy__contents__guidelines_element_list__item img {
									width: 46.32333%;
									height: auto;
									margin: 0 auto 27px;
								}
								.philosophy__contents__guidelines_element_list__item__name {
									width: 100%;
									height: auto;
									font-size: 23px;
									font-weight: 700;
									line-height: 1;
									letter-spacing: 0em;
									text-align: center;
								}
						.philosophy__contents__guidelines_element_txt {
							width: 100%;
							height: auto;
							font-size: 1.328125vw;
							font-weight: 500;
							line-height: 1.5;
							letter-spacing: 0em;
							text-align: center;
						}
					.philosophy__contents__message_copy {
						width: 78.411215%;
						height: auto;
						margin: 0 auto 76px;
					}
					.philosophy__contents__message_contents {
						display: flex;
						justify-content: space-between;
						align-items: stretch;
						width: 92%;
						height: auto;
						margin: 0 auto;
					}
						.philosophy__contents__message_contents__details {
							width: 48.5%;
							height: auto;
						}
							.philosophy__contents__message_contents__details__txt {
								width: 100%;
								height: auto;
								margin: -0.546875vw auto 0;
								font-size: 1.5625vw;
								font-weight: 500;
								line-height: 1.7;
								letter-spacing: 0.03em;
								text-align: justify;
								font-feature-settings: "palt";
							}
							.philosophy__contents__message_contents__details__name {
								width: 100%;
								height: auto;
								margin-top: 30px;
								font-size: 28px;
								font-weight: 500;
								line-height: 1;
								letter-spacing: 0em;
								text-align: right;
							}
							.philosophy__contents__message_contents__details__name.pc {
								display: flex;
								justify-content: flex-end;
								align-items: center;
							}
							.philosophy__contents__message_contents__details__name.sp {
								display: none;
							}
								.philosophy__contents__message_contents__details__name small {
									margin-top: 2px;
									margin-right: 15px;
									font-size: 18px;
								}
							.philosophy__contents__message_contents__image {
								width: 98.84%;
								height: auto;
								margin: 0 auto 26px;
							}

/* PC ================================================== */
@media all and (min-width:1280px){
					.fv__contents__txt {
						font-size: 22px;
					}
					.philosophy__contents__management_txt {
						font-size: 26px;
					}
					.philosophy__contents__guidelines_txt {
						font-size: 26px;
					}
					.philosophy__contents__guidelines_graph__txt {
						font-size: 18px;
					}
						.philosophy__contents__guidelines_element_txt {
							font-size: 17px;
						}
							.philosophy__contents__message_contents__details__txt {
								margin: -7px auto 0;
								font-size: 20px;
							}
}
@media all and (max-width:1279px){

}
@media all and (max-width:996px){

}
@media all and (min-width:769px){

}

/* SP ================================================== */
@media all and (max-width:768px){
		.fv {
			padding: 45px 0 80px;
		}
			.fv__inner {
				width: 85%;
			}
				.fv__heading {
					margin: 0 auto 6.666vw;
				}
					.fv__heading__main {
						width: 88%;
					}
					.fv__contents__txt {
						font-size: 14px;
						white-space: initial;
					}
			.philosophy__contents__item.management {
				padding-bottom: 70px;
			}
			.philosophy__contents__item.guidelines {
				padding-bottom: 60px;
			}
			.philosophy__contents__item.message {
				padding-bottom: 50px;
			}
				.philosophy__contents__item__inner {
					width: 90%;
				}
					.philosophy__contents__item__heading {
						height: 18px;
						margin-bottom: 25px;
					}
					.philosophy__contents__management_txt {
						width: 100%;
						font-size: 16px;
						white-space: initial;
					}
					.philosophy__contents__guidelines_txt {
						width: 100%;
						margin: 0 auto 40px;
						font-size: 16px;
						white-space: initial;
					}
					.philosophy__contents__guidelines_graph {
						margin: 0 auto 35px;
					}
						.philosophy__contents__guidelines_graph img {
							width: 100%;
							max-width: 400px;
							margin: 0 auto 25px;
						}
						.philosophy__contents__guidelines_graph__txt {
							font-size: 14px;
							position: initial;
							bottom: initial;
							left: initial;
						}
						.philosophy__contents__guidelines_element_list {
							margin: 0 auto 20px;
						}
							.philosophy__contents__guidelines_element_list__item {
								width: 33%;
							}
								.philosophy__contents__guidelines_element_list__item img {
									width: 80%;
									max-width: 135px;
									margin: 0 auto 15px;
								}
								.philosophy__contents__guidelines_element_list__item__name {
									font-size: 13px;
									line-height: 1.4;
								}
						.philosophy__contents__guidelines_element_txt {
							font-size: 14px;
						}
					.philosophy__contents__message_copy {
						width: 95%;
						padding: 10px 0 0;
						margin: 0 auto 25px;
					}
					.philosophy__contents__message_contents {
						flex-direction: column-reverse;
						width: 100%;
					}
						.philosophy__contents__message_contents__details {
							display: block;
							width: 100%;
							height: auto;
						}
							.philosophy__contents__message_contents__details__txt {
								margin: 0 auto;
								font-size: 14px;
							}
							.philosophy__contents__message_contents__details__name {
								font-size: 20px;
								margin-top: 19px;
							}
							.philosophy__contents__message_contents__details__name.sp {
								display: flex;
								justify-content: flex-end;
								align-items: center;
							}
							.philosophy__contents__message_contents__details__name.pc {
								display: none;
							}
								.philosophy__contents__message_contents__details__name small {
									margin-top: 0px;
									margin-right: 10px;
									font-size: 12px;
								}
							.philosophy__contents__message_contents__image {
								width: 100%;
								margin: 0 auto 20px;
							}
}
@media all and (max-width:575px){

}