@charset "utf-8";

div.heading {
	min-width: 100%;
	background-color: rgba(247, 245, 235, 1.00);
	background-image: url("../img/top/about-bg.jpg");
	background-repeat: no-repeat;
	background-position: left;
	background-size: contain;
}

div.heading>div.body {
	margin: 0 auto;
	max-width: 1000px;
	height: 220px;
}

div.heading>div.body>h2 {
	padding-top: 40px;
	text-align: center;
}

div.heading>div.body>h2>img {
	height: 70px;
}

div.heading>div.body>ul.breadcrumbs {
	padding-top: 10px;
}

div.heading>div.body>ul.breadcrumbs>li {
	padding-left: 10px;
	display: inline-block;
	position: relative;
	font-size: 1.1rem;
	vertical-align: top;
}

div.heading>div.body>ul.breadcrumbs>li>a {
	color: rgba(51, 51, 51, 1.00);
	text-decoration: underline;
}

div.heading>div.body>ul.breadcrumbs>li:first-child {
	padding-left: 0;
}

div.heading>div.body>ul.breadcrumbs>li::before {
	margin-top: -3px;
	content: "";
	display: inline-block;
	border-right: solid 1px rgba(217, 70, 64, 1.00);
	border-bottom: solid 1px rgba(217, 70, 64, 1.00);
	width: 4px;
	height: 4px;
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 0;
}

div.heading>div.body>ul.breadcrumbs>li:first-child::before {
	display: none;
}

section>div.body {
	margin: auto;
	padding: 60px 0 80px;
	max-width: 1000px;
}

section>div.body h3 {
	margin-top: 2.5em;
	margin-bottom: 0.6em;
	padding-bottom: 10px;
	border-bottom: solid 3px rgba(229, 229, 229, 1.00);
	position: relative;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.3;
}

section>div.body h3::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -3px;
	left: 0;
	height: 3px;
	width: 20%;
	background-color: rgba(217, 70, 64, 1.00);
}

section>div.body h3:first-child {
	margin-top: 0;
}

section>div.body h4 {
	margin-top: 1.5em;
	margin-bottom: 0.3em;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.5;
	color: rgba(217, 70, 64)
}

section>div.body p {
	margin-bottom: 1em;
	line-height: 1.6;
	text-align: justify;
}

section>div.body a {
	color: rgba(64, 114, 217, 1.00);
	text-decoration: underline;
}

section>div.body table {
	margin: 0 15px 30px;
	width: calc(100% - 30px);
}

section>div.body table>tbody>tr {
	border-bottom: solid 1px rgba(224, 224, 224, 1.00);
}

section>div.body table th {
	vertical-align: top;
	white-space: nowrap;
	padding: 30px 8px;
	text-align: left;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.6;
}

section>div.body table td {
	vertical-align: top;
	padding: 30px 8px;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.6;
}

section>div.body table td dd:not(:last-child) {
	margin-bottom: 15px;
}

section>div.body table .suppliers td ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

section>div.body table .suppliers td ul li,
section>div.body table .partners td ul li,
section>div.body table .works td ul li ul li {
	width: 45%;
	padding-left: 10px;
	position: relative;
}

section>div.body table .works td ul li ul li {
	width: 100%;
}

section>div.body table .works td>ul {
	margin-bottom: 20px;
}

section>div.body table .works td>ul>li {
	font-weight: bold;
}

section>div.body table .works td>ul>li>ul {
	padding-left: 10px;
}

section>div.body table .suppliers td ul li::before,
section>div.body table .partners td ul li::before,
section>div.body table .works td ul li ul li::before {
	content: "";
	background-image: url(../img/contents/company/list-company.png);
	background-size: 5px 5px;
	background-repeat: no-repeat;
	display: inline-block;
	width: 10px;
	height: 10px;
	position: absolute;
	left: 0;
	top: 0.8rem;
}

section>div.body ol {
	margin-left: 3em;
	margin-bottom: 1.5em;
}

section>div.body ol>li {
	margin-bottom: 0.6em;
	line-height: 1.5;
}

section>div.body>div.paging>ul.page-nav {
	margin-top: 40px;
	vertical-align: top;
}

section>div.body>div.paging>ul.page-nav>li {
	text-align: center;
	font-size: 0;
}

section>div.body>div.paging>ul.page-nav>li>span,
section>div.body>div.paging>ul.page-nav>li>a {
	margin-right: 6px;
	padding: 8px 10px;
	display: inline-block;
	border: solid 1px rgba(217, 70, 64, 1.00);
	line-height: 1.0;
	vertical-align: top;
	font-size: 1.6rem;
}

section>div.body>div.paging>ul.page-nav>li>a {
	color: rgba(217, 70, 64, 1.00);
}

section>div.body>div.paging>ul.page-nav>li>span,
section>div.body>div.paging>ul.page-nav>li>a:hover {
	color: rgba(255, 255, 255, 1.00);
	background-color: rgba(217, 70, 64, 1.00);
}

section>div.body>div.paging>ul.page-nav>li>span:last-child,
section>div.body>div.paging>ul.page-nav>li>a:last-child {
	margin-right: 0;
}

section>div.body>div.paging>ul.page-nav>li>span.dots {
	border: none;
	color: rgba(217, 70, 64, 1.00);
	background-color: transparent;
}

@media screen and (max-width: 1000px) {
	section>div.body {
		padding: 60px 15px 80px;
		box-sizing: border-box;
	}

	div.heading>div.body>ul.breadcrumbs {
		padding-left: 15px;
	}
}

@media screen and (max-width: 599px) {
	div.heading {
		min-width: 0;
	}

	div.heading>div.body {
		width: 100%;
		height: 21.33vw;
	}

	div.heading>div.body>h2 {
		padding-top: 5.33vw;
	}

	div.heading>div.body>h2>img {
		height: 10.67vw;
	}

	div.heading>div.body>ul.breadcrumbs {
		display: none;
	}

	section>div.body {
		margin: 0 auto;
		padding: 12vw 2.67vw 12vw;
		width: 100%;
		/* overflow: hidden; */
		box-sizing: border-box;
	}

	section>div.body>div.paging>ul.page-nav>li>span,
	section>div.body>div.paging>ul.page-nav>li>a {
		margin-right: 1.6vw;
		padding: 1.6vw 2.13vw;
		display: inline-block;
		font-size: 1.4rem;
	}

	section>div.body h3 {
		font-size: 2.2rem;
	}

	section>div.body ol {
		margin-left: 8vw;
	}

	section>div.body table {
		margin: 0 0 5.33vw;
		width: 100%;
	}

	section>div.body table th {
		padding: 4vw 1.33vw 0;
		font-size: 1.5rem;
		display: block;
	}

	section>div.body table td {
		padding: 1vw 1.33vw 3vw;
		font-size: 1.5rem;
		display: block;
	}


	section>div.body table .suppliers td ul {
		display: block;
	}

	section>div.body table .suppliers td ul li,
	section>div.body table .partners td ul li {
		width: 100%;
	}
}