@charset "utf-8";
/* *****************************************************
*	レイアウト																						*
* *****************************************************/
#contents {
	display: grid;
	grid-template-areas: 
		"list"
		"company";
	grid-template-columns: 100%;
	grid-auto-rows: auto auto;
	margin: 2%;
	/*grid-gap: 20px 2%;*/
}

/* *****************************************************
*	会社概要																							*
* *****************************************************/
#companyprofile {
	grid-area: company;
}

#companyprofile table {
	width: 100%;
	margin: 0 auto;
}

#companyprofile table tr {
	border-top: 1px solid #808080;
	color: #3A216A;
}

#companyprofile table tr:last-child {
	border-bottom: 1px solid #808080;
}

#companyprofile table tr:nth-child(odd) {
	background-color: #f5f5f5;
}

#companyprofile table tr:nth-child(even) {
	background-color: #fffff;
}

#companyprofile th {
	padding: 2%;
	background-color: #D8D3E1;
	text-align: center;
	font-size: 100%;
	font-weight: bold;
}

#companyprofile td {
	padding: 30px;
}

#companyprofile td a {
	color: #a0522d;
	text-decoration: none;
}

#companyprofile td a:visited{
	color: #a0522d;
	text-decoration: none;
}

#companyprofile td ul ul li {
	padding-left: 20px;
}

/* *****************************************************
*	企業理念																							*
* *****************************************************/
/*
.message：代表者メッセージ
.keieirinen：経営理念
.policy：環境方針、品質方針
.actionpolicy：行動方針
*/

#philosophy {
	grid-area: company;
}

#philosophy .message {
	font-size: 100%;
}

#philosophy .message img {
	margin-right: 20px;
	float: left;
}

#philosophy .message h3{
	color: #3A216A;
	font-size: 140%;
	font-weight: bold;
	margin: 0;
}

#philosophy .keieirinen {
	padding: 20px;
	background-image: url("../../company/img/keieirinen_2.png");
	background-repeat: no-repeat;
	background-size: cover;/*contain;*/
}

#philosophy .keieirinen p {
	padding: 20px 0;
	margin: 0;
	color: #ffffff;
	font-size: 100%;
	font-weight: bold;
	text-shadow: 1px 2px 3px #000000;
	text-align: center;
	border-top: 1px solid #ffffff;
}

#philosophy .keieirinen p:last-child {
	border-bottom: 1px solid #ffffff;
}

#philosophy .policy table {
	width: 100%;
	margin-top: 20px;
}

#philosophy .policy table tr {
	border-top: 1px solid #808080;
	color: #3A216A;
}

#philosophy .policy table tr:last-child {
	border-bottom: 1px solid #808080;
}

#philosophy .policy table tr:nth-child(odd) {
	background-color: #f5f5f5;
}

#philosophy .policy table tr:nth-child(even) {
	background-color: #fffff;
}

#philosophy .policy table tr th {
	width: 10%;
	padding: 30px;
	background-color: #D8D3E1;
	text-align: center;
	font-size: 120%;
	font-weight: bold;
}

#philosophy .policy table tr td {
	width: 90%;
	padding: 30px;
}

#philosophy .actionpolicy h4 {
	padding: 20px;
	margin-bottom: 10px;
	border: 1px solid #3A216A;
	border-radius: 35px;
	text-align: center;
	color: #3A216A;
	font-size: 110%;
	font-weight: bold;
}

#philosophy .actionpolicy table {
	width: 100%;
	margin-bottom: 20px;
	border-collapse: separate;
	border-spacing: 2px 10px;
}

#philosophy .actionpolicy table tr th{
	padding: 15px;
	border: 1px solid #614D88;
	border-radius:15px;
	color: #ffffff;
	background-color: #614D88;
	font-weight: bold;
}

#philosophy .actionpolicy table tr .measures{
	padding: 15px;
	border: 1px solid #D8D3E1;
	border-radius: 8px;
	text-align: center;
	color: #3A216A;
	background-color: #D8D3E1;
	font-weight: bold;
}

#philosophy .actionpolicy table tr .measures2::before{
	content: '●';
	color: #cccccc;
	font-size: 100%;
}


/* *****************************************************
*	沿革																									*
* *****************************************************/
#history{
	grid-area: company;
}

#history table {
	width: 100%;
	margin: 0 auto;
}

#history table tr {
	border-top: 1px solid #808080;
	color: #3A216A;
}

#history table tr:last-child {
	border-bottom: 1px solid #808080;
}

#history table tr:nth-child(odd) {
	background-color: #f5f5f5;
}

#history table tr:nth-child(even) {
	background-color: #fffff;
}

#history th {
	padding: 5px;
	background-color: #D8D3E1;
	text-align: center;
	font-size: 80%;
	font-weight: bold;
}

#history td {
	padding: 30px;
}

/* *****************************************************
*	組織図																								*
* *****************************************************/
#organization{
	grid-area: company;
}

#organization p {
	text-align: center;
	margin: 0;
}

/* *****************************************************
*	拠点																									*
* *****************************************************/
#base{
	grid-area: company;
}

#base table {
	width: 100%;
	margin: 15px auto;
	border-collapse: separate;
	border-spacing: 2px 10px;
}

#base table tr th {
	padding: 15px;
	border-radius:15px;
	color: #ffffff;
	background-color: #614D88;
	font-weight: bold;
}

#base table tr td {
	border: none;
	padding: 10px;
}

#base table tr td.address {
	border-radius: 8px;
	text-align: center;
	color: #3A216A;
	background-color: #D8D3E1;
	font-size: 90%;
	font-weight: bold;	
}

#base table tr td.img {
	text-align: center;
}

#base table tr td.img img {
	width: 100%;
}

#base iframe {
	width: 100%;
	height: 150px;
}

#base .overseas {
	width: 95%;
	margin: 15px auto;
}

#base .overseas img{
	width: 100%;
}

#base .base img {
	width: 100%;
}

#base .box .base {
	position: relative;
}

#base .box .base_1 a{
	width: 25%;
	height: 4.5%;
	top: 88%;
	right: 13%;
	position: absolute;
	background-image: url("../../company/img/basebutton_1.png");
	background-repeat: no-repeat;
	background-size: cover;
}

#base .box .base_1 a:hover{
	background-image: url("../../company/img/basebutton_1_hover.png");
	background-repeat: no-repeat;
	background-size: cover;
}

#base .box .base_2{
	width: 25%;
	height: 4.5%;
	top: 81%;
	left: 9%;
	position: absolute;
	background-image: url("../../company/img/basebutton_2.png");
	background-repeat: no-repeat;
	background-size: cover;
}
/*
#base .box .base_2 a:hover{
	background-image: url("../../company/img/basebutton_2_hover.png");
	background-repeat: no-repeat;
	background-size: cover;
}*/

#base .box .base_3 a{
	width: 25%;
	height: 4.5%;
	top: 24%;
	right: 13%;
	position: absolute;
	background-image: url("../../company/img/basebutton_3.png");
	background-repeat: no-repeat;
	background-size: cover;
}

#base .box .base_3 a:hover{
	background-image: url("../../company/img/basebutton_3_hover.png");
	background-repeat: no-repeat;
	background-size: cover;
}

#base .box .base_4 a{
	width: 25%;
	height: 4.5%;
	top: 24%;
	left: 9%;
	position: absolute;
	background-image: url("../../company/img/basebutton_4.png");
	background-repeat: no-repeat;
	background-size: cover;
}

#base .box .base_4 a:hover{
	background-image: url("../../company/img/basebutton_4_hover.png");
	background-repeat: no-repeat;
	background-size: cover;
}


/* *****************************************************
*	環境取組																							*
* *****************************************************/
#environment {
	grid-area: company;
}

#environment .policy table {
	width: 100%;
	margin-top: 20px;
}

#environment .policy table tr {
	border-top: 1px solid #808080;
	color: #3A216A;
}

#environment .policy table tr:last-child {
	border-bottom: 1px solid #808080;
}

#environment .policy table tr:nth-child(odd) {
	background-color: #f5f5f5;
}

#environment .policy table tr:nth-child(even) {
	background-color: #fffff;
}

#environment .policy table tr th {
	width: 10%;
	padding: 10px;
	background-color: #D8D3E1;
	text-align: center;
	font-size: 100%;
	font-weight: bold;
}

#environment .policy table tr td {
	width: 90%;
	padding: 30px;
}

#environment .category {
	text-align: center;
	margin: 0;
}

#environment .category .item {
	width: 60%;
	height: auto;
	margin: 10px auto;
	display: inline-block;
	text-align: center;
	position: relative;
	overflow: hidden;
}

#environment .category .item img:nth-child(2){
	cursor: pointer;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#environment .category .item:hover img:nth-child(2){
	opacity: 0;
	transition: opacity 0.5s;
}

#environment .category .item img {
	width: 100%;
}

#environment .img table {
	margin: 30px 0;
}

#environment .img table tr td{
	text-align: center;
}

#environment .solar table tr th {
	padding: 3% 1%;
	background: #D8D3E1;
}