@charset "UTF-8";
/*
	私たちの想い
-----------------------------------------------------------------------------------------------*/
#philosophy{
	position: relative;
	z-index: -1;
	&::before{
		content: "";
		display: block;
		width: 1000px;
		height: 1000px;
		background: url(/images/bg_about_message_pc.png) no-repeat center center/ contain;
		position: absolute;
		top: 60%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: -1;
	}
	
	.philosophyCtsFirst {
		display: flex;
		flex-direction: column;
		margin-top: 50px;
	}

	.ctsArea{
		display: flex;
		align-items: center;
		width: 950px;
		margin: 0 auto;
		
		.txtArea {
			width: 500px;

			.txt {
				text-align: justify;
				line-height: 2.0;
				font-size: 1.8rem;
			}
			.name{
				display: flex;
				align-items: baseline;
				justify-content: end;
				margin-top: 30px;
				font-size: 2.5rem;
			}
			/* テキストsmall */
			.small{
				font-size: 1.6rem;
			}
			.orange{
				color: var(--c-orange);
			}
		}
	}
	/* 画像 */
	.photoArea{
		width: 450px;

		.list{
			display: flex;
			flex-direction: column;
			gap: 50px;

			li{
				border-radius: 20px;
				overflow: hidden;
				&:first-of-type{
					margin: 0 0 0 auto;
				}
				&:last-of-type{
					width: calc((100% - 200px));
				}

				img{
					width: 100%;
				}
			}
		}
	}
}


/*
	私たちの歴史
-----------------------------------------------------------------------------------------------*/
#history{
	.ctsArea {
		width: var(--width-base);
		margin: 0 auto;
		padding: 80px 30px;
		margin-bottom: 120px;
	}
	.txt {
		text-align: center;
	}

	.tblAreaBox1col {
		width: 800px;

		/* 沿革の表 */
		[class *= "tblBase"]{

			tr{
				> *{
					line-height: 1.7;
					padding: 30px 25px;
				}
			}
			th{
				color: var(--c-orange);
				font-size: 2.2rem;
				font-family: var(--ff-en-lato);
				
				span {
					color: #000;
					font-size: 1.2rem;
					font-family: YakuHanJP, 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', YuGothic, Meiryo, sans-serif;
				}
			}
			td{
				background-color: transparent;
			}
		}
	}
}


/*
	会社概要
-----------------------------------------------------------------------------------------------*/
#company{
	margin-bottom: 120px;

	.tblAreaBox100 {
		width: 800px;
	}
	[class *= "tblBase"]{
		tr{
			> *{
				padding: 20px;
			}
		}
		th{
			width: 200px;
		}
		td{
			padding: 20px 25px;
		}
	}
}


/*
	グループ会社一覧
-----------------------------------------------------------------------------------------------*/
#groupCompany{
	width: 900px;
	margin: 0 auto;

	.cmnCtsSecond {
		padding-bottom: 0px;
		border-bottom: none;
	}
	/* グループ会社一覧の表 */
	[class *= "tblBase"]{
		tr{
			> *{
				padding: 20px 30px;
			}
		}
		th{
			width: 200px;
			text-align: left;
		}
	}
	.listCompany {
			display: flex;
			gap: 30px;
		/* 各会社ロゴ */
		.logo {
			width: 200px;
			height: 200px;
			border: 1px solid var(--c-grey);
			border-radius: 20px;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		.tblAreaBox {
			width: 670px;
		}
	}
}


@media screen and (width < 750px){
	/*
	私たちの想い
	-----------------------------------------------------------------------------------------------*/
	#philosophy{
		position: relative;
		&::before{
			width: 100%;
			height: 100%;
			background: url(/images/bg_about_message_sp.png) no-repeat center center/ contain;
			top: 50%;
		}
		
		.philosophyCtsFirst {
			margin-top: 20px;
		}

		.ctsArea{
			width: 100%;
			flex-direction: column;
			gap: 20px;

			.txtArea {
				width: 100%;

				.txt {
					line-height: 2.0;
					font-size: 1.5rem;
				}

				.name{
					margin-top: 7px;
					font-size: 1.6rem;
				}
				/* テキストsmall */
				.small{
					font-size: 1.2rem;
				}
			}
		}

		/* 画像 */
		.photoArea{
			width: 100%;
			max-width: 350px;

			.list{
				display: flex;
				flex-wrap: wrap;
				gap: 20px;

				li{
					border-radius: 10px;
					overflow: hidden;
					&:first-of-type{
						width: 50%;
						margin-left: auto;
					}
					&:last-of-type{
						width: 45%;
						margin-top: -80px;
					}

					img{
						width: 100%;
					}
				}
			}
		}
	}


	/*
		私たちの歴史
	-----------------------------------------------------------------------------------------------*/
	#history{
		.ctsArea {
			max-width: 500px;
			padding: 60px 20px;
			margin-bottom: 80px;
		}

		.txt {
			text-align: left;
		}

		.tblAreaBox1col {
			width: 100%;
			max-width: 500px;

			[class *= "tblBase"]{
				width: 100%;

				tr{
					> *{
						padding: 12px 10px;
					}
				}
				th{
					width: 70px;
					font-size: 1.5rem;
					line-height: 1.3;
					
					span {
						font-size: 1.1rem;
					}
				}
				td {
					font-size: 1.3rem;
					line-height: 1.5;
				}
			}
		}
	}


	/*
		会社概要
	-----------------------------------------------------------------------------------------------*/
	#company{
		margin-bottom: 80px;

		.tblAreaBox100 {
			width: 100%;
		}
		[class *= "tblBase"]{
			tr{
				> *{
					padding: 10px;
				}
			}
			th{
				width: 100%;
			}
			td{
				padding: 10px 15px 20px;
			}
		}
	}


	/*
		グループ会社一覧
	-----------------------------------------------------------------------------------------------*/
	#groupCompany{
		width: 100%;
		.cmnCtsSecond {
			gap: 20px;
		}
		[class *= "tblBase"]{
			width: 100%;
			tr{
				> *{
					padding: 8px;
					font-size: 1.2rem;
				}
			}	
			th{
				width: 80px;
			}
		}
		.listCompany {
				flex-direction: column;
				align-items: center;
				gap: 13px;

			.logo {
				width: 150px;
				height: 150px;
				border-radius: 10px;

				img {
					max-width: 120px;
				}
			}
			li:last-of-type {
				width: 100%;
			}
			.tblAreaBox {
				width: 100%;
			}
		}
	}
}
