@charset "UTF-8";

/* --------------------------------------------------------------------------------------
	会社概要
--------------------------------------------------------------------------------------- */

.page-company .key-sub { background-image: url(../img/company/key_image.jpg); }

.page-company main { background-color: #f0f0f0; }

.company-wrap { margin-top: 60px; }

.company-lead { padding-bottom: 80px; }

.company-lead::before {
	border-bottom-style: solid;
	border-bottom-width: 96px;
	border-radius: 0 0 126px 0;
	border-right-style: solid;
	border-right-width: 96px;
	content: '';
	height: 526px;
	position: absolute;
	right: -170px;
	top: -114px;
	width: 168px;
	z-index: -1;
}

.company-lead::after {
	border-left-style: solid;
	border-left-width: 96px;
	border-radius: 126px 0 0 0;
	border-top-style: solid;
	border-top-width: 96px;
	bottom: 0;
	content: '';
	height: 557px;
	left: -190px;
	position: absolute;
	width: 191px;
	z-index: -1;
}

.company-lead h2 {
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: 1px;
	margin-bottom: 60px;
	text-align: center;
}

.company-lead .table-style { margin-top: 50px; }

@media (max-width: 1000px) {

	.page-company .key-sub { background-image: url(../img/company/key_image_sp.jpg); }

	.page-company .key-sub .box::after { display: none; }

	.company-wrap { margin-top: 13.333vw; }

	.company-lead { padding-bottom: 16vw; }

	.company-lead::before {
		border-right: none;
		height: 12.8vw;
		right: -34.667vw;
		top: 74.333vw;
		width: 100%;
	}

	.company-lead::after {
		border-radius: 16.8vw 0 0 0;
		border-width: 13.067vw;
		bottom: 0;
		height: 47.333vw;
		left: 0;
		transform: scale(-1,1);
		width: 42vw;
	}

	.company-lead h2 {
		font-size: 5.867vw;
		margin-bottom: 13.333vw;
	}
}

/* --------------------------------------------------------------------------------------
	表のデザイン
--------------------------------------------------------------------------------------- */

.table-style {
	background-color: #fff;
	border-radius: 0 32px 0 32px;
	margin: auto;
	padding: 40px;
}

.table-style table { width: 100%; }

.table-style th {
	font-weight: 700;
	width: 235px;
}

.table-style th,
.table-style td {
	border: none !important;
	border-top: 1px solid #cdcdcd !important;
	padding: 16px 0;
}

.table-style tr:first-child th,
.table-style tr:first-child td { border-top: none !important; }

@media (max-width: 1000px) {

	.table-style {
		border-radius: 0 6.4vw 0 6.4vw;
		margin-left: 5.333vw;
		margin-right: 5.333vw;
		padding: 5.333vw;
	}

	.table-style tr {
		border-top: 1px solid #cdcdcd;
		display: block;
		margin-top: 4.267vw;
		padding-top: 4.267vw;
	}

	.table-style tr:first-child {
		border-top: none !important;
		margin-top: 0;
		padding-top: 0;
	}

	.table-style th,
	.table-style td {
		border-top: none !important;
		display: block;
		padding: 0;
	}

	.table-style th {
		font-weight: 700;
		width: auto;
	}

	.table-style td {
		padding-top: 1.267vw;
	}
}

/* --------------------------------------------------------------------------------------
	経営理念
--------------------------------------------------------------------------------------- */

.company-idea {
	color: #fff;
	overflow: hidden;
}

.company-idea article { padding: 100px 0; }

.company-idea article::before {
	border-bottom-style: solid;
	border-bottom-width: 96px;
	border-radius: 0 0 126px 0;
	border-right-style: solid;
	border-right-width: 96px;
	content: '';
	height: 718px;
	left: calc(-100% - 94px);
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.company-idea article::after {
	border-radius: 0 126px 0 0;
	border-right: 96px solid rgba(255, 255, 255, .5);
	border-top: 96px solid rgba(255, 255, 255, .5);
	content: '';
	height: 100%;
	left: calc(-100% + 117px);
	position: absolute;
	top: 622px;
	width: 100%;
	z-index: -1;
}

.company-idea article section {
	border-top: 1px solid #cee6f8;
	display: flex;
	justify-content: space-between;
	margin: 70px auto auto;
	padding-top: 70px;
}

.company-idea article section:nth-of-type(1) {
	border-top: none;
	padding-top: 0;
}

.company-idea article section h3 strong {
	display: block;
	font-size: 5.6rem;
	font-weight: 800;
	line-height: .8;
}

.company-idea article section h3 span {
	display: block;
	font-size: 2rem;
	font-weight: 700;
	margin-top: 14px;
}

.company-idea article section p,
.company-idea article section ul {
	font-size: 2rem;
	font-weight: 700;
	width: 680px;
}

.company-idea article section li {
	font-weight: 700;
	margin-top: 16px;
	padding-left: 34px;
	position: relative;
}

.company-idea article section li:first-child { margin-top: 0; }

.company-idea article section li::before {
	background-color: #fff;
	border-radius: 100vw;
	content: '';
	display: block;
	height: 12px;
	left: 0;
	position: absolute;
	top: .5em;
	width: 12px;
}

@media (max-width: 1000px) {

	.company-idea article { padding: 13.333vw 4.267vw 21.333vw; }

	.company-idea article::before {
		border-radius: 0 16.8vw 16.8vw 0;
		border-top-style: solid;
		border-width: 13.067vw;
		bottom: 6.333vw;
		height: 114vw;
		left: 0;
		top: auto;
		width: 44.533vw;
	}

	.company-idea article::after {
		border-radius: 0 16.8vw 0 0;
		border-width: 13.067vw;
		bottom: 0;
		height: 19.2vw;
		left: 0;
		top: auto;
		width: 75.2vw;
	}

	.company-idea article section {
		display: block;
		margin-top: 12vw;
		padding-top: 12vw;
	}

	.company-idea article section h3 { text-align: center; }

	.company-idea article section h3 strong { font-size: 11.733vw; }

	.company-idea article section h3 span {
		font-size: 4.8vw;
		margin-top: 4.533vw;
	}

	.company-idea article section p,
	.company-idea article section ul {
		font-size: 4.8vw;
		margin-top: 8.067vw;
		width: auto;
	}

	.company-idea article section p br { display: none; }

	.company-idea article section li {
		margin-top: 3.733vw;
		padding-left: 8vw;
	}

	.company-idea article section li::before {
		height: 3.333vw;
		width: 3.333vw;
	}
}