@charset "UTF-8";
/*------------------------------------------------------------パーパス*/
.purpose{
	background-color: var(--gray);
	padding: 80px 0;
	margin-bottom: 150px;
}
.purpose__title{
	margin-bottom: 60px;
}
.purpose__lead{
	font-size: 3rem;
	line-height: 1.75em;
	color: var(--main-color);
	text-align: center;
	margin-bottom: 45px;
}
.purpose__img{
	width: 625px;
	display: block;
	margin: 0 auto 60px;
}
.purpose__text{
	line-height: 1.75em;
	font-size: 2rem;
	width: 90vw;
	max-width: 800px;
	margin: 0 auto;
	text-align: justify;
}
@media screen and (max-width: 767px){
 .purpose{
	padding: 30px 0;
	margin-bottom: 100px;
	}
 .purpose__title{
	margin-bottom: 30px;
	}
 .purpose__lead{
	font-size: 2rem;
	line-height: 1.6em;
	margin-bottom: 35px;
	}
	.purpose__lead br{
		display: none;
	}
 .purpose__img{
	width: 100%;
	margin: 0 auto 25px;
	}
 .purpose__text{
	font-size: 1.5rem;
	width: 100%;
	}
}
/*------------------------------------------------------------企業姿勢*/
.corporatephilosophy {
	margin-top: 70px;
	margin-bottom: 150px;
}
.corporatephilosophy__title{
	margin-bottom: 55px;
}
.corporatephilosophy__lead{
	margin-bottom: 70px;
	line-height: 1.75;
	font-size: 2.0rem;
}
.corporatephilosophy__list li{
	font-size: 2.0rem;
	line-height: 1.75;
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 1em;
	text-align: justify;
}
.corporatephilosophy__list li:last-child{
	margin-bottom: 0;
}
.corporatephilosophy__list li p{
	font-weight: 700;
	color: var(--main-color);
}
.corporatephilosophy__list li p::before{
	content: "●";
}
@media screen and (max-width: 767px){
	.corporatephilosophy {
		margin-top: 40px;
		margin-bottom: 100px;
	}
	.corporatephilosophy__lead{
		font-size: 1.5rem;
	}
	.corporatephilosophy__list li{
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------会社概要*/
.companyprofile{
	margin-bottom: 150px;
	font-size: 2.0rem;
}
.companyprofile__title{
	margin-bottom: 55px;
}
.companyprofile__lead{
	margin-bottom: 35px;
	line-height: 1.75;
}
.companyprofile__table tr{
	border-top: 1px solid var(--gray2);
}
.companyprofile__table tr:last-child{
	border-bottom: 1px solid var(--gray2);
}
.companyprofile__table tr th{
	background-color: var(--gray);
	color: var(--main-color);
	font-weight: normal;
	text-align: center;
    vertical-align: middle;
	width: min(220px, 20vw);
}
.companyprofile__table tr td{
	padding: 25px;
	line-height: 1.75;
}
.companyprofile__table div{
	padding: 10px 0;
}
.companyprofile__table div:first-child{
	padding-top: 0px;
}
.companyprofile__table div:last-child{
	padding-top: 10px;
	padding-bottom: 0px;
}
.office-place{
	border-bottom: 1px solid var(--gray2);
}
.qualification__year{
  text-align: right;
  font-size: 2rem;
  margin-top: 1em;
}
@media screen and (max-width: 767px){
	.companyprofile{
		margin-bottom: 100px;
		font-size: 1.5rem;
	}
	.companyprofile__title{
		margin-bottom: 65px;
	}
	.companyprofile__lead{
		margin-bottom: 25px;
	}
	.companyprofile__table th,
	.companyprofile__table td{
        display: block;
        width: 100%;
		word-break: break-word;
	}
	.companyprofile__table tr th{
		width: 100%;
		height: 40px;
		display: flex;
		justify-content: center;
   		align-items: center;
	}
	.companyprofile__table tr td{
		padding: 10px;
	}
	.companyprofile__table div{
		padding: 10px 0;
	}
	.companyprofile__table div:first-child{
		padding-top: 0px;
	}
	.companyprofile__table div:last-child{
		padding-top: 10px;
		padding-bottom: 0px;
	}
	.qualification__year{
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------アクセス*/
.access{
	margin-bottom: 150px;
}
.access__item{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px;
	font-size: 2rem;
	margin-bottom: 150px;
}
.access__item h4{
	color: var(--main-color);
	margin-bottom: 45px;
}
.access__title{
	margin-bottom: 80px;
}
.access__map{
	aspect-ratio: 19 / 11;
	width: 100%;
}
.access__map iframe{
	width: 100%;
	height: 100%;
	border: 0;
}
.access__route{
	line-height: 1.5em;
}
.access__route li{
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 1rem;
}
.access__item:last-child{
	margin-bottom: 0;
}
.access__route li::before{
	content: "・";
}
@media screen and (max-width: 767px){
	.access{
		margin-bottom: 100px;
	}
	.access__item{
		grid-template-columns: 1fr;
		gap: 30px;
		font-size: 1.5rem;
		margin-bottom: 50px;
	}
	.access__title{
		margin-bottom: 70px;
	}
	.access__map{
		aspect-ratio: 13 / 11;
	}
	.access__item h4{
		margin-bottom: 15px;
	}
}
/*------------------------------------------------------------会社沿革*/
.corporatehistory{
	margin-bottom: 150px;
	font-size: 2.0rem;
}
.corporatehistory__title{
	margin-bottom: 55px;
}
.corporatehistory__table tr{
	border-top: 1px solid var(--gray2);
}
.corporatehistory__table tr:last-child{
	border-bottom: 1px solid var(--gray2);
}
.corporatehistory__table tr th{
	background-color: var(--gray);
	color: var(--main-color);
	font-weight: normal;
	text-align: center;
    vertical-align: middle;
	width: min(220px, 20vw);
}
.corporatehistory__table tr td{
	padding: 25px;
	line-height: 1.75;
}
.corporatehistory__table div{
	padding: 10px 0;
}
.corporatehistory__table div:first-child{
	padding-top: 0px;
}
.corporatehistory__table div:last-child{
	padding-top: 10px;
	padding-bottom: 0px;
}
.office-place{
	border-bottom: 1px solid var(--gray2);
}

@media screen and (max-width: 767px){
	.corporatehistory{
		margin-bottom: 100px;
		font-size: 1.5rem;
	}
	.corporatehistory__title{
		margin-bottom: 65px;
	}
	.corporatehistory__table{
        width: 100%;
	}
	.corporatehistory__table tr,
	.corporatehistory__table tr th,
	.corporatehistory__table tr td{
        display: block;
        width: 100%;
		word-break: break-word;
	}
	.corporatehistory__table tr th{
		width: 100%;
		height: 40px;
		display: flex;
		justify-content: center;
   		align-items: center;
	}
	.corporatehistory__table tr td{
		padding: 10px;
	}
	.corporatehistory__table div{
		padding: 10px 0;
	}
	.corporatehistory__table div:first-child{
		padding-top: 0px;
	}
	.corporatehistory__table div:last-child{
		padding-top: 10px;
		padding-bottom: 0px;
	}
}
/*------------------------------------------------------------有資格者*/
.qualification{
	margin-bottom: 150px;
	font-size: 2.0rem;
}
.qualification__title{
	margin-bottom: 55px;
}
.qualification__table {
    width: 100%;
}
.qualification__lead{
	margin-bottom: 35px;
	line-height: 1.75;
}
.qualification__table tr{
	border-top: 1px solid var(--gray2);
	line-height: 1.75;
}
.qualification__table tr:last-child{
	border-bottom: 1px solid var(--gray2);
}
.qualification__table tr th{
	background-color: var(--gray);
	color: var(--main-color);
	font-weight: normal;
    vertical-align: middle;
	width: min(500px, 50vw);
	padding: 30px;
}
.qualification__table tr td{
	padding: 30px;
	vertical-align: middle;
}
@media screen and (max-width: 767px){
	.qualification{
		margin-bottom: 100px;
		font-size: 1.5rem;
	}
	.qualification__table tr{
		line-height: 1.75;
	}
	.qualification__table th,
	.qualification__table td{
        display: block;
        width: 100%;
	}
	.qualification__table tr th{
		width: 100%;
		height: 40px;
		display: flex;
		justify-content: center;
   		align-items: center;
	}
	.qualification__table tr td{
		padding: 10px;
		text-align: right;
		line-height: 1.75;
	}
}
/*------------------------------------------------------------基本理念*/
.quality-philosophy{
	margin-top: 100px;
	padding-bottom: 50px;
	line-height: 1.75;
}
.quality-philosophy__title{
	color: #000;
	padding-bottom: 1em;
	font-size: 2rem;
}
.quality-philosophy__text{
	font-size: 2rem;
	text-align: justify;
	padding-bottom: 1.5em;
}
@media screen and (max-width: 767px){
	.quality-philosophy{
		margin-top: 20px;
		padding-bottom: 30px;
	}
	.quality-philosophy__title,
	.quality-philosophy__text{
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------品質・環境・情報統合方針*/
.quality-integrated-policy{
	padding-bottom: 100px;
	line-height: 1.75;
}
.quality-integrated-policy__title{
	color: #000;
	padding-bottom: 1em;
	font-size: 2rem;
}
.quality-integrated-policy__items{
	font-size: 2rem;
	text-align: justify;
	counter-reset: number;
	list-style-type: none;
}
.quality-integrated-policy__item{
	position: relative;
	counter-increment: item;
	padding-bottom: 1em;
	padding-left: 2em;
}
.quality-integrated-policy__item:before {
	content: counter(number)".";
	counter-increment: number;
	position: absolute;
	left: 0;
	top: 0;
}
.quality-integrated-policy__footer{
	font-size: 2.0rem;
	text-align: right;
}
.quality-integrated-policy__item dl{
  display: grid;
  grid-template-columns: 4em 1fr;
}
.quality-integrated-policy__item dt,
.quality-integrated-policy__item dd {
  margin: 0;
  font-weight: normal;
}
@media screen and (max-width: 767px){
	.quality-integrated-policy{
		padding-bottom: 70px;
	}
	.quality-integrated-policy__title,
	.quality-integrated-policy__items,
	.quality-integrated-policy__footer {
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------適用する製品及びサービスの業務の範囲*/
.quality-scope{
	padding-bottom: 100px;
}
@media screen and (max-width: 767px){
	.quality-scope{
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------適用する組織*/
.quality-organization{
	padding-bottom: 100px;
}
.quality-organization__item{
	padding-bottom: 1em;
}
.quality-organization__item p {
  padding-left: 0.5em;
}
.quality-organization__item p:first-child {
  padding-left: 0.5em;
  text-indent: -0.5em;
}
@media screen and (max-width: 767px){
	.quality-organization{
		padding-bottom: 70px;
	}	
}
/*------------------------------------------------------------個人情報保護方針*/
.privacy-policy{
	margin-top: 50px;
	padding-bottom: 100px;
	line-height: 1.75;
}
.privacy-policy__title{
	color: #000;
	text-align: center;
	padding-bottom: 1em;
	font-size: 2rem;
	font-weight: 700;
}
.privacy-policy__text{
	font-size: 2rem;
	text-align: justify;
	padding-bottom: 1.5em;
}
.privacy-policy__items{
	font-size: 2rem;
	text-align: justify;
	counter-reset: number;
	list-style-type: none;
}
.privacy-policy__item{
	counter-increment: item;
	padding-bottom: 1em;
	padding-left: 2em;
}
.privacy-policy__item p:nth-of-type(1){
	padding-left: 2em;
	text-indent: -2em;
	font-weight: 700;
}
.privacy-policy__item p:nth-of-type(1):before {
	content:  counter(number)".";
	counter-increment: number;
	display: inline-block;
}
.privacy-policy__footer{
	font-size: 2.0rem;
	text-align: right;
}
@media screen and (max-width: 767px){
	.privacy-policy{
		padding-bottom: 70px;
	}
	.privacy-policy__title,
	.privacy-policy__text,
	.privacy-policy__items,
	.privacy-policy__footer {
		font-size: 1.5rem;
	}
}
/*------------------------------------------------------------個人情報保護理念*/
.privacy-philosophy{
	padding-bottom: 100px;
}
@media screen and (max-width: 767px){
	.privacy-philosophy{
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------内部管理体制の確立*/
.privacy-system{
	padding-bottom: 100px;
}
.privacy-system__items{
	text-align: justify;
	counter-reset: number;
	list-style-type: none;
}
.privacy-system__item{
	position: relative;
	counter-increment: item;
	padding-bottom: 1em;
	padding-left: 2em;
}
.privacy-system__item::before {
  content: "(" counter(item) ")";
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (max-width: 767px){
	.privacy-system{
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------個人情報の取得と利用*/
.privacy-whattouse{
	padding-bottom: 100px;
}
.privacy-whattouse__items{
	text-align: justify;
	counter-reset: number;
	list-style-type: none;
}
.privacy-whattouse__item{
	position: relative;
	counter-increment: item;
	padding-bottom: 1em;
	padding-left: 2em;
}
.privacy-whattouse__item::before {
  content: "(" counter(item) ")";
  position: absolute;
  left: 0;
  top: 0;
}
.privacy-whattouse__subitems{
	list-style: none;
	padding-left: 1em; /* 親項目から1字下げ */
}
.privacy-whattouse__subitem {
	text-indent: -1em;
	padding-left: 1em;
}
@media screen and (max-width: 767px){
	.privacy-whattouse{
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------個人情報に関するお問い合わせ対応*/
.privacy-inquiry{
	padding-bottom: 100px;
}
.privacy-inquiry__item{
	position: relative;
	counter-increment: item;
	padding-bottom: 1em;
	padding-left: 2em;
}
.privacy-inquiry__item::before {
  content: "(" counter(item) ")";
  position: absolute;
  left: 0;
  top: 0;
}
.privacy-inquiry__subitems{
	list-style: none;
	padding-left: 1em; /* 親項目から1字下げ */
}
.privacy-inquiry__subitem {
	text-indent: -1em;
	padding-left: 1em;
}
@media screen and (max-width: 767px){
	.privacy-inquiry{
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------認定個人情報保護団体について*/
.privacy-group{
	padding-bottom: 100px;
}
.privacy-group__items{
	list-style: none;
	padding-left: 1em; /* 親項目から1字下げ */
}
.privacy-group__item {
	text-indent: -1em;
	padding-left: 1em;
}
@media screen and (max-width: 767px){
	.privacy-group{
		padding-bottom: 70px;
	}	
}
/*------------------------------------------------------------推進法に基づく一般事業主行動計画*/
.actionplan__date{
	text-align: right;
	padding-bottom: 1em;
}
.actionplan__title{
	text-align: center;
	padding-bottom: 1em;
}
.actionplan__heading {
  font-weight: 700;
}
.actionplan__period {
  text-indent: 1em;
  padding-bottom: 1.5em;
}
.actionplan__goal {
	display: grid;
	grid-template-columns: 4em 1fr;
}
.actionplan-women .actionplan__goal {
	display: grid;
	grid-template-columns: 3em 1fr;
}
.actionplan__goal dt,
.actionplan__goal dd {
  margin: 0;
  font-weight: normal;
}
.actionplan-schedule {
  display: grid;
  grid-template-columns: 7.5em 1fr;
  gap: 0.5em;
}
.actionplan-schedule dt,
.actionplan-schedule dd {
  margin: 0;
  font-weight: normal;
}
/*------------------------------------------------------------次世代育成支援対策推進法*/
.actionplan-nextgeneration{
	margin-top: 50px;
	padding-bottom: 100px;
}
@media screen and (max-width: 767px){
	.actionplan-nextgeneration{
		margin-top: 20px;
		padding-bottom: 50px;
	}	
}
/*------------------------------------------------------------女性活躍推進法*/
.actionplan-women{
	padding-bottom: 100px;
}
@media screen and (max-width: 767px){
	.actionplan-women{
		padding-bottom: 70px;
	}	
}
/*------------------------------------------------------------FSC®中核的労働要求事項に関する方針声明*/
.fsc_humanrights{
	margin-top: 50px;
	padding-bottom: 100px;
	font-size: 2rem;
	line-height: 1.75;
}
.fsc_humanrights__items{
	margin-top: 2em;
	text-align: justify;
	counter-reset: number;
	list-style-type: none;
}
.fsc_humanrights__item{
	position: relative;
	counter-increment: item;
	padding-bottom: 1.75em;
	padding-left: 2em;
}
.fsc_humanrights__item:before {
	content: counter(number)".";
	counter-increment: number;
	position: absolute;
	left: 0;
	top: 0;
}
.fsc_humanrights__item img{
	max-width: 320px;
}
.fsc_humanrights__footer{
	text-align: right;
}
@media screen and (max-width: 767px){
	.fsc_humanrights{
		padding-bottom: 70px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------品質管理への取り組み（ISO9001）*/
.iso9001{
	margin-top: 50px;
	padding-bottom: 100px;
	font-size: 2rem;
}
.iso9001_items{
	margin-top: 2em;
}
.iso9001_items dt{
	font-weight: 700;
}
.iso9001_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.iso9001{
		margin-top: 20px;
		padding-bottom: 50px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------JapanColorへの取り組み*/
.japancolor{
	padding-bottom: 100px;
	font-size: 2rem;
}
.japancolor_items dt{
	font-weight: 700;
}
.japancolor_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.japancolor{
		padding-bottom: 50px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------個人情報保護への取り組み（JISQ15001）*/
.jisq15001{
	padding-bottom: 100px;
	font-size: 2rem;
}
.jisq15001_items dt{
	font-weight: 700;
}
.jisq15001_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.jisq15001{
		padding-bottom: 50px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------ISMSへの取り組み（JISQ27001）*/
.isms_jisq27001{
	padding-bottom: 100px;
	font-size: 2rem;
}
.isms_jisq27001_items dt{
	font-weight: 700;
}
.isms_jisq27001_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.isms_jisq27001{
		padding-bottom: 50px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------環境への取り組み（ISO14001）*/
.iso14001{
	padding-bottom: 100px;
	font-size: 2rem;
}
.iso14001_items img{
	width: 100%;
	max-width: 350px;
	margin: 2em auto;
	display: block;
}
.iso14001_items dt{
	font-weight: 700;
}
.iso14001_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.iso14001{
		padding-bottom: 50px;
		font-size: 1.5rem;
	}	
}
/*------------------------------------------------------------FSC®森林認証製品への取り組み*/
.fsc{
	padding-bottom: 100px;
	font-size: 2rem;
}
.fsc_items img{
	width: 100%;
	margin: 2em auto;
	display: block;
}
.fsc_items dt{
	font-weight: 700;
}
.fsc_items dd{
	padding-left: 1em;
	padding-bottom: 2em;
}
@media screen and (max-width: 767px){
	.fsc{
		padding-bottom: 70px;
		font-size: 1.5rem;
	}
}