@charset "UTF-8";

/* company */
.overview_table{
	width: 100%;
	margin-bottom: 6.5rem;
}
.overview_table th{
	width: 20%;
	padding: 0.5em 0;
	text-align: center;
	font-weight: normal;
	border-right: solid 1px #000;
	background: #EFEFEF;
}
.overview_table td{
	padding: 0.5em 2em;
}
.overview_table tr{
	border: solid 1px #000;
}

.history_table{
	width: 100%;
	position: relative;
}
.history_table::before{
	position: absolute;
	content: "";
	height: 100%;
	left: 0.5rem;
	border-right: solid 6px #C9CACA;
	z-index: -1;
}
.history_table th{
	text-align: center;
	vertical-align: top;
	padding: 1rem 0;
}
th.year{
	width: 7em;
	padding: 0;
	text-align: right;
}
th.year span{
  font-size: 1.9rem;
	width: 90%;
	display: block;
	position: relative;
}
th.year span::before{
	position: absolute;
	content: "";
	background: url(../assets/img/company/01.png) no-repeat;
	background-size: contain;
	display: block;
	width: 1em;
	height: 1em;
	top: 50%;
	left: -0.25rem;
	transform: translateY(-50%);}
.jc{
	width: 6rem;
}
.month{
	width: 3rem;
}
.history_table td{
	padding: 1em 0;
}
.h16 th.jc,.h16 th.month,.h16 td{
	width: auto;
	padding: 1em 0 0 0;
}
.h16_2 th,.h16_2 td{
	padding: 0;
}
.philosophy{
	font-size: 1.8rem;
	font-weight: bold;
}
.philosophy li{
	margin-bottom: 0.5em;
}

.com-flx{
	display: flex;
}
.ecoaction{
	justify-content: space-between;
	gap: 6rem;
	margin-bottom: 3rem;
}
.action-subttl{
	font-weight: bold;
	margin: 2em 0 0.5em;
	letter-spacing: 0.1rem;
}
ol.action-list_sub{
	list-style: none;
	padding: 0;
}

.jis{
	justify-content: space-between;
	gap: 6rem;
	margin-top: 3rem;
	align-items: center;
}
.jis div{
	flex-basis: 50%;
}
.jis div>p{
	text-align: center;
	margin-top: 1.5em;
}

.storage,.vehicle{
	gap: 3rem;
	flex-wrap: wrap;
}
.storage_item,.vehicle_item{
	width: calc((100% - 4rem) / 2);
}
.storage_item p,.vehicle_item p{
	margin-top: 1em;
	font-size: 1.4rem;
	font-weight: bold;
}
.storage_table{
	width: 100%;
	text-align: center;
}
.storage_table caption{
	caption-side: top;
	text-align: right;
	padding: 0;
	font-size: 0.8em;
}
.storage_table thead th {
	background-color: #9FA0A0;
	color: #fff;
	/* width: calc(100% / 6); */
}
.storage_table tbody th {
	background-color: #EFEFEF;
	/* color: #fff; */
	/* width: calc(100% / 6); */
}

.vehicle{
	margin-bottom: 6.5rem;
}
.vehicle_table{
	width: 100%;
	text-align: center;
}
.vehicle_table th{
	background-color: #9FA0A0;
	color: #fff;
	width: calc(100% / 6);
}
.vehicle_table tr:nth-of-type(odd){
	background-color: #EFEFEF;
}
.storage_table th,.storage_table td,.vehicle_table th,.vehicle_table td,.permit_table th,.permit_table td{
	padding: 0.5em 0;
	border: solid 1px #000;
}

.permit_table{
	width: 100%;
	text-align: center;
	margin-bottom: 6.5rem;
}
.permit_table tr.tbhead th{
	background-color:#9FA0A0;
	color: #fff;
	vertical-align:middle;
}
.permit_table th{
	background-color:#EFEFEF;
}
.permit_table th.factory{
	width:20%;
}
.permit_table th.number{
	width:20%;
}
.permit_table th.item{
	text-align: left;
	width: 1em;
	writing-mode: vertical-rl;
}
.permit_table td{
	font-size:140%;
	vertical-align:middle;
}
.permit_table td.color_01{
	color:#96131f;
}
.permit_table td.color_02{
	color:#bb9505;
}
.permit_table td.color_03{
	color:#050300;
}
.permit_table td.color_04{
	color:#d21562;
}
.permit_table td.color_05{
	color:#072562;
}
.permit_table td.color_06{
	color:#e98700;
}
.permit_table td.color_07{
	color:#babf07;
}
.permit_table td.color_08{
	color:#c62e51;
}
.permit_table td.color_09{
	color:#8e0a62;
}
.permit_table td.color_10{
	color:#227435;
}
.permit_table td.color_11{
	color:#d2a40d;
}
.permit_table td.color_12{
	color:#e19d89;
}
.permit_table td.color_13{
	color:#0082bd;
}
.permit_table td.color_14{
	color:#b70617;
}
.permit_table td.color_15{
	color:#b6a75d;
}
.permit_table td.color_16{
	color:#757979;
}

.table-flex{
	display: flex;
	justify-content: center;
	align-items: center;
}
.yuryo{
	position: relative;
}
.yuryo::after{
	content: "";
	width: 2rem;
	height: 2rem;
	background:bottom / contain no-repeat url(../assets/img/company/yuryo.png) ;
	margin-left: 0.3rem;
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
}
.tsumikae{
	font-size: 0.65em;
	text-align: left;
	margin-left: 0.5em;
}
caption.yuryo{
	caption-side: bottom;
	margin-left: 4.5rem;
	color: #000;
	font-size: 1.2em;
}
caption.yuryo::after{
	left: -3.5rem;
	width: 2.5rem;
	height: 2.5rem;
}

.sv03_btn {
	position: relative;
	display: block;
	text-align: center;
	width: 70%;
	font-size: min(2.5vw, 1.7rem);
	font-weight: bold;
	margin: 5rem auto;
	padding: 1em 0;
	background-color: #F6AB00;
}
.sv03_btn span {
	color: #fff;
}
.sv03_btn::after {
	position: absolute;
	content: "\f061";
	font-family: 'Font Awesome 5 Free';
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
	background: #fff;
	color: #F6AB00;
	padding: 0 0.3em;
	border-radius: 50%;
	font-size: 0.9em;
}

.disclosure{
	gap: 3rem;
	justify-content: center;
	align-items: center;
	margin: 3rem auto;
	width: 90%;
}
.disclosure p{
	text-align: right;
	width: calc((100% - 3rem) / 2);
	margin: 0;
}
.disclosure a{
	font-size: 1.3rem;
	width: calc((100% - 3rem)/2);
	border: 3px solid red;
	padding: 1.3em 0;
	text-align: center;
}
.announcement{
	gap: 3rem;
	justify-content: center;
	align-items: center;
}
.announcement a{
	font-size: 1.3rem;
	width: calc((100% - 3rem)/2);
	border: 3px solid red;
	padding: 1.3em 0;
	text-align: center;
}
.pdf_icon{
	width: 1.3em;
	margin-right: 0.5em;
	vertical-align: bottom;
}
@media screen and (max-width: 959px){
	.table-flex {
    flex-direction: column;
	}
	.disclosure p {
    text-align: left;
	}
}


@media screen and (max-width: 768px){
	.ceo_name {
    font-size: 1.2rem;
	}
	.ceo_name span {
    font-size: 1.3em;
}

	.overview_table th,.overview_table td{
    width: 100%;
    display: block;
		padding: 0.7em 0;}
	.overview_table th {
    border-right: none;
	}
	.overview_table td {
    border-top: 1px solid #000;		
		text-align: center;
	}
	.history_table tr,.history_table th,.history_table td{
		display: inline-block;
	}
	.history_table td {
		margin-left: 1.5em;
	}
	.h16_2 th {
    margin-left: 1.5em;
    display: block;
    text-align: left;
	}
	.com-flx {
    display: flex;
    flex-direction: column;
	}
	.storage_item, .vehicle_item {
    width: 100%;
	}
	.permit_table-wrap{
		overflow-x: scroll;
		margin-bottom: 4rem;
	}
	.permit_table {
    margin-bottom: 0;
	}
	.yuryo {
    display: inline-block;
    padding-bottom: 2rem;
	}
	.yuryo::after {
		left: 50%;
		transform: translateX(-50%);
		margin: 0;
		top: unset;
		bottom: 0;
		background-position: center;
	}
	.tsumikae {
    margin-left: 0;
	}
	caption.yuryo {
		display: table-caption;
    padding: 0;
    margin: 1em 0 1em 4.5rem;
	}
	caption.yuryo::after {
    left: -2rem;
		background-position: bottom;
		transform: translate(-50%, 0);
	}
	.sv03_btn {
		width: 100%;
		font-size: 1.3rem;
	}
	.sv03_btn::after {
		display: none;
	}
	.disclosure p,.disclosure a ,.announcement a{
   width: 100%;
	}
}