@charset "UTF-8";
/* CSS Document */


body {
	letter-spacing: 0.04em;
}
.pageWrap h2 {
	letter-spacing: 0.04em;
}
#contact p {
	white-space: normal;
}

footer .ftrNavi .ftrMainNav {
	gap: min(3vw, 20px) min(3vw, 30px);
}
@media screen and (max-width: 820px) {
	header .globalNavList li:first-child a {
		font-size: min(4.6vw, 24px);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////

	TOP MainVisual

//////////////////////////////////////////////////////////////////////////////// */

/*
.catchArea .mainCatch {
	font-size: 4vw;
	line-height: 1.6;
	letter-spacing: 0.06em;
}
*/
.catchArea .material {
/*	height: 5em;*/
  letter-spacing: 0.06em;
  font-size: 1.8vw;
}
.catchArea .material > a {
	width: fit-content;
	line-height: 1.2;
  padding: 0.5em 0.8em 0.6em;
	display: block;
  letter-spacing: 0.04em;
  font-weight: 600;
}
.catchArea .material > a span {
	font-size: 0.76em;
}

@media screen and (min-width: 821px) {
/*
	.catchArea .mainCatch {
		text-align: left;
	}
*/
}
@media screen and (max-width: 820px) {
/*
	.catchArea .mainCatch {
    font-size: 6.4vw;
	}
*/
  .catchArea .material {
    font-size: 3.6vw;
  }
}

/* ////////////////////////////////////////////////////////////////////////////////

	ABOUT PAGE

//////////////////////////////////////////////////////////////////////////////// */

.pageWrap .leadTxt .catch {
	letter-spacing: 0.04em;
	line-height: 2;
}


/* ////////////////////////////////////////////////////////////////////////////////

	COMPANY PAGE

//////////////////////////////////////////////////////////////////////////////// */

#companyPage .valueGrid {
	letter-spacing: 0;
}
#companyPage .valueGrid .title {
	font-size: min(3vw, 14px)
}
#companyPage .valueGrid > div:nth-child(15) .title {
	font-size: min(1.3vw, 15px);
}
#companyPage .valueGrid .column2 .lineList li {
	position: relative;
}
#companyPage .valueGrid .lineList li > p:first-child {
	width: 7.2em;
}
#companyPage .valueGrid .lineList li.note {
	padding-bottom: min(6.2vw, 28px);
}
#companyPage .valueGrid .lineList.line01 li > p:first-child,
#companyPage .valueGrid .lineList.line02 li > p:first-child {
	position: absolute;
	left: 1em;
	z-index: 1;
	width: auto;
}
#companyPage .valueGrid .lineList.line01 li:nth-child(2) > p:first-child,
#companyPage .valueGrid .lineList.line02 li:nth-child(2) > p:first-child {
	color: #d1e4f3;
}
#companyPage .valueGrid .lineList.line01 li:nth-child(3) > p:first-child,
#companyPage .valueGrid .lineList.line02 li:nth-child(3) > p:first-child {
	color: #ffe3a4;
}
#companyPage .valueGrid .lineList.line01 li > p:last-child {
	width: 6.2em;
}
#companyPage .valueGrid .lineList.line02 li > p:last-child {
	width: 8.5em;
}
#companyPage .valueGrid > div {
	padding: min(15vw, 88px) 0 min(4vw, 24px);
}
#companyPage .valueGrid > div:nth-child(3) {
	padding: min(14vw, 88px) min(2vw, 20px) min(1.8vw, 32px);
}
#companyPage .valueGrid > div.column2 {
	padding: min(13.6vw, 84px) 0 min(3vw, 32px);
}
.graph-wrap .circle01 {
	left: 63%;
}
.graph-wrap .circle02{
	top: 33%;
}
.graph-wrap .circle03 {
	top: 62%;
	left: 81%;
}
.graph-wrap .circle06 {
	top: 66.5%;
	left: 20%;
}

@media screen and (min-width: 821px) {
	#companyPage .valueGrid div:not(.column2) .lineList {
		font-size: min(1.3vw, 18px);
	}
}
@media screen and (max-width: 820px) {

	#companyPage dl dt {
		width: 100%;
    border-bottom: none;
    padding-bottom: 0;
    font-weight: bold;
	}
	#companyPage dl dt:first-child {
		padding-top: 0;
	}
	#companyPage dl dd {
		width: 100%;
	}


	#companyPage .valueGrid > div:nth-child(15) .title {
		font-size: min(2.6vw, 15px);
	}
	#companyPage .valueGrid .value .b_5 {
		font-size: 1.2em;
	}
	#companyPage .valueGrid .lineList li > p:first-child {
		font-size: 0.8em;
		width: 7em;
	}
	#companyPage .valueGrid .lineList li .line {
		width: 4vw;
	}
	#companyPage .valueGrid .lineList li > p:last-child {
		width: 3.4em;
	}
	#companyPage .valueGrid .lineList.line01 li > p:first-child,
	#companyPage .valueGrid .lineList.line02 li > p:first-child {
		left: 0.6em;
	}
	#companyPage .valueGrid .lineList.line02 li > p:last-child {
		width: 7.5em;
	}
}


/* ////////////////////////////////////////////////////////////////////////////////

	RECRUIT PAGE

//////////////////////////////////////////////////////////////////////////////// */

.recruitMV h2.catch .labelWrap > span {
	letter-spacing: 0.04em;
}
.personArea .lead {
	text-align: left;
}
@media screen and (max-width: 820px) {
	.recruitMV h2.catch .labelWrap > span {
		letter-spacing: 0.06em;
		font-size: min(7.2vw, 32px);
	}
}


.jobAnchorList a {
	width: 14em;
	height: 100%;
	line-height: 1.4;
}
/* ////////////////////////////////////////////////////////////////////////////////

	COMMODITY PAGE

//////////////////////////////////////////////////////////////////////////////// */

.categoryMenu .categoryMenuList li a p {
	font-size: min(3vw, 16px);
}
.commodityList > div .img > p {
	letter-spacing: 0.015em;
	font-size: min(4.8vw, 22px);
	padding: 0 0.6em;
	line-height: 1.4;
}