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

html { 
	scroll-behavior: smooth;
}

body {
	max-width: 100%;
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	color: #474747;
	overflow-x: hidden;
}

a {
	text-decoration: none;
}

@media screen and (min-width: 1031px) {
/* 佐藤高圧 index ファーストビュー */

/* sp用メニュー 非表示 */
.drawer {
		display: none;
		list-style: none;
	}
/* firstview--------------------------------- */
#main-visual {
	width: 100%;
	height: 640px;
	background: url("img/index-img-1.jpg") no-repeat center / cover;
	position: relative;
}
/* nav-log--------------------------------- */
.header-logo {
	background: url("img/hlogo.svg") no-repeat center / contain;
	width: 140px;
	height: 65px;
	position: absolute;
	top: 30px;
	left: 40px;
	z-index: 2;
}
.header-logo a,
.footer-logo a {
  width: 0;
  height: 0;
  font-size: 0% !important;
  line-height: 0% !important;
  text-indent: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
	display: block;
}
	.header-logo a {
		width: 140px;
		height: 65px;
	}
/* pc用メニュー */
#gnav {
	position: absolute;
	right: 40px;
	top: 25px;
}

#gnav ul li {
	font-size: 16px;
	text-align: center;
	position: relative;
	display: inline-block;
	color: white;
}

#gnav ul li a {
	color: white;
}
#gnav ul li span {
	font-family: 'Montserrat', sans-serif;
	font-size: 26px;
}
#gnav ul li + li {
	margin: 0 0 0 20px;
}
.main-img {
	background: url("img/index-mv.png") no-repeat center / contain;
	width: 712px;
	height: 380px;
	position: absolute;
	top: 52%;
    left: 50%;
    transform: translate(-50%, -48%);
    -webkit-transform: translate(-50%, -48%);
    -ms-transform: translate(-50%, -48%);
}

/* indexコンセプト */
#concept {
	background: url("img/about-back.png") no-repeat center / contain;
	width: 1000px;
	height: 640px;
	margin: 120px auto 0px;
}

.concept-mv {
	background: url("img/about-mv.png") no-repeat center / contain;
	width: 443px;
	height: 265px;
	margin: 0px auto;
}

.concept-wrap {
	width: 500px;
	height: auto;
	text-align: center;
	margin: 28px auto 0px;
}

.concept-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 900;
	font-size: 20px;
	color: #014718;
}

.concept-wrap p {
	line-height: 34px;
}

/* index 事業紹介 ---------------------------------*/
#index-about {
	background: url("img/index-img-2.jpg") no-repeat center / cover;
	width: 100%;
	height: 940px;
	margin-top: 120px;
	position: relative;
}
/* リセット */
hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.index-about-wrap {
	width: 100%;
	height: 100%;
}
.about-line {
	width: 100%;
	height: 12px;
	background-image: repeating-linear-gradient(45deg, #FFFFFF 0, #FFFFFF 4px, transparent 0, transparent 50%);
	background-size: 12px 12px;
}
.about-line-bottom {
	position: absolute;
	bottom: 0px;
	width: 100%;
	height: 12px;
	background-image: repeating-linear-gradient(45deg, #FFFFFF 0, #FFFFFF 4px, transparent 0, transparent 50%);
	background-size: 12px 12px;
}

.index-business-title-back {
	background: url("img/index-business-title.png") no-repeat center / contain;
	width: 754px;
	height: 140px;
	margin: 75px auto 0px;
}

.index-business-title {
	width: 100%;
	height: auto;
	text-align: center;
	color: #FFFFFF;
	font-size: 38px;
	line-height: 54px;
	font-weight: 900;
	position: relative;
	top: 60px;
}
.index-about-pickup-wrap {
	width: 1000px;
	height: auto;
	margin: 60px auto 0px;
	display: block;
}
.index-about-pickup-wrap-2 {
	width: 660px;
	height: auto;
	margin: 0px auto;
	display: block;
}
.index-about-pickup-l {
	width: 310px;
	height: 160px;
	float: left;
	font-size: 22px;
	line-height: 32px;
	color: #FFFFFF;
	font-weight: 700;
	text-align: center;
	margin: 0px 16px 30px 0px;
	display: table;
	border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
  	border-width: 6px;
  	border-image-slice: 6;
  	border-image-repeat: round;
  	border-style: solid;
}
.index-about-pickup-l p{
  	position: relative;
  	top:25%;
  	left:50%;
  	transform:translate(-50%,-25%);
  	width:100%;
}
.index-about-pickup-l-2 {
	width: 310px;
	height: 160px;
	float: left;
	font-size: 22px;
	line-height: 32px;
	color: #FFFFFF;
	margin: 0px 0px 0px 0px;
	border: solid;
	display: block;
}
.index-about-pickup-r {
	width: 310px;
	height: 160px;
	float: right;
	font-size: 22px;
	line-height: 32px;
	color: #FFFFFF;
	text-align: center;
	font-weight: 700;
	display: table;
	border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
  	border-width: 6px;
  	border-image-slice: 6;
  	border-image-repeat: round;
  	border-style: solid;
}
.index-about-pickup-r-2 {
	width: 310px;
	height: 160px;
	float: right;
	font-size: 22px;
	line-height: 32px;
	color: #FFFFFF;
	text-align: center;
	font-weight: 700;
	display: table;
	border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
  	border-width: 6px;
  	border-image-slice: 6;
  	border-image-repeat: round;
  	border-style: solid;
}
.index-about-pickup-r p{
  position: relative;
  top:18%;
  left:50%;
  transform:translate(-50%,-20%);
  width:100%;
}
.index-about-pickup-r-2 p{
  position: relative;
  top:30%;
  left:50%;
  transform:translate(-50%,-20%);
  width:100%;
}
.box {
	width: 1000px;
	height: 30px;
	display: block;
}
.about-button {
	clear: both;
	margin: 40px auto 0px;
	width: 100%;
}
.about-button a {
	display: block;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 280px;
		height: 56px;
		color: #FFFFFF;
		background-color: #014718;
		font-weight: 900;
		font-size: 20px;
		border: 4px solid #FFFFFF;
		margin: 0px auto 20px;
		padding-top: 22px; 
}
/* 採用情報 ---------------------------------*/
#recruit-wrap {
	width: 100%;
	height: 100%;
	background-color: #E6EDE8;
	display: block;
	margin: 0px;
	padding: 0px;
}
.index-recruit {
	width: 1000px;
	height: 600px;
	margin: 0px auto;
	padding: 90px 0px 0px 0px;
}
.index-recruit-wrap-l {
	width: 430px;
	height: 70%;
	display: block;
	margin: 40px 0px 0px 0px;
	float: left;
}
h3 {
	font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 73px;
	font-weight: 900;
	color: #198A3E;
	margin: 0px;
	padding: 0px;
	line-height: 80px;
}
.index-recruit-text {
	width: 430px;
	font-size: 16px;
	line-height: 34px;
	word-break: break-all;
	display: block;
}
.index-recruit-wrap-l a {
	color: #014718;
	padding: 0px 0px 10px 0px;
	border-bottom: solid 1px #014718;
}

.index-recruit-img-wrap {
	background: url("img/recruit-back.png") no-repeat center / contain;
	width: 24px;
	height: 456px;
	float: left;
	display: block;
	margin: 0px 0px 0px 46px;
	padding: 0px;
}
.index-recruit-wrap-r {
	width: 440px;
	height: 100%;
	float: right;
	display: block;
	margin: 20px 0px 0px 0px;
	padding: 0px;
}
.index-recruit-wrap-r img {
	width: 440px;
	height: 420px;
}
.read {
	color: #014718;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 32px;
	line-height: 32px;
	font-weight: 900px;
	margin: 20px 0px 20px 0px;
	padding: 0px;
}
/* お問い合わせ ---------------------------------*/
#footer {
	width: 100%;
	clear: both;
}

.contact-wrap {
	width: 1000px;
	height: 100%;
	margin: 0 auto;
	padding: 60px 0px 30px 0px;
	position: relative;
}
.contact-title {
	width: 520px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900px;
	display: block;
}
.contact-title span {
	font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-weight: 900;
	font-size: 58px;
	line-height: 0px;
	color: #014718;
	margin: 0px;
	padding: 0px;
}
.contact-tel-fax, 
.contact-mail {
	font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	color: #014718;
	font-weight: 900;
	margin: 30px 0px 0px;
	padding: 0px;
}
.contact-tel-fax a, 
.contact-mail a {
	color: #014718;
}
.contact-tel {
	font-size: 38px;
	margin-right: 24px;
}
.contact-fax {
	font-size: 30px;
}
.contact-sub {
	font-size: 14px;
}
.contact-sub span {
	font-size: 12px;
	margin-left: 16px;
}
.contact-mail span {
	font-size: 24px;
}
.footer-menu-list {
	color: #014718;
	position: absolute;
	top: 30px;
	right: 0px;
}
.footer-menu-list ul li {
	font-size: 16px;
	text-align: center;
	position: relative;
	display: inline-block;
	color: white;
}
.footer-menu-list ul li a {
	color: #014718;
}
.footer-menu-list ul li span {
	font-family: 'Montserrat', sans-serif;
	font-size: 26px;
}
.footer-menu-list ul li + li {
	margin: 0 0 0 20px;
}
.footer-title {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900px;
	font-size: 20px;
	color: #014718;
	margin: 30px 0px 0px 0px;
	padding: 0px;
	display: inline-block;
}
.footer-title-text {
	float: left;
	margin: 0px;
	padding: 20px 0px 0px 16px;
	display: block;
	width: 400px;
	height: 30px;
}
.footer-logo {
	background: url("img/flogo.svg") no-repeat center / contain;
	width: 132px;
	height: 62px;
	z-index: 2;
	float: left;
}
.footer-title-text a {
	color: #014718;
}
#copyright {
	font-size: 12px;
	margin: 14px 0px 0px 0px;
	padding: 0px;
}
#copyright span {
	margin: 0px 0px 0px 14px;
}
	#copyright a {
		color: #474747;
		border-bottom:  solid 1px #474747;
	}
/* 会社紹介ページ ---------------------------------*/
.first-back {
	width: 100%;
	height: 420px;
	background-color: #014718;
}
.first-back-contact {
	width: 100%;
	height: 420px;
	background-color: #014718;
}
.first-back-privacy {
	width: 100%;
	height: 420px;
	background-color: #014718;
}
.first-back-title {
	width: 100%;
	padding-top: 120px; 
	font-family: 'Montserrat', sans-serif;
	font-size: 96px;
	font-weight: 900px;
	color: #FFFFFF;
	text-align: center;
}
.first-back-title-sub {
	width: 100%;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 34px;
	font-weight: 900px;
	color: #FFFFFF;
	text-align: center;
}
.about-company {
	margin: 40px auto 0px;
	width: 820px;
	position: relative;
	top: 30px;
}
.about-company a {
	display: inline-block;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
	width: 380px;
	height: 68px;
	color: #FFFFFF;
	background-color: #014718;
	font-weight: 900;
	font-size: 28px;
	border: 4px solid #FFFFFF;
	margin: 0px 14px 0px 0px;
	padding-top: 22px; 
}
/* 代表あいさつ ---------------------------------*/
.greeting {
	width: 1000px;
	height: 100%;
	margin: 90px auto 90px;
	padding: 0px;
}
.greeting-img {
	text-align: center;
	width: 900px;
	margin: 0px auto;
}
.greeting-img img {
	width: 900px;
}
h2 {
	text-align: center;
	color: #014718;
	font-size: 38px;
	font-weight: 900;
	line-height: 54px;
}
.greeting-text {
	width: 640px;
	height: auto;
	margin: 0px auto;
	line-height: 34px;
}
.greeting-name {
	text-align: center;
	margin: 24px 0px 0px 0px;
}
.greeting-name span {
	font-size: 24px;
	margin: 0px 0px 0px 12px;
}
/* 会社概要 ---------------------------------*/
.outline-wrap {
	width: 100%;
	height: 100%;
	background-color: #E6EDE8;
	padding: 90px 0px 90px 0px;
}
.outline {
	width: 640px;
	margin: 0px auto;
}
.outline table th,
.outline table td {
  	padding: 5px 0;
	display: table-cell;
}

.outline table th {
  width: 160px;
  text-align: left;
}
.outline table td span {
  font-weight: 700;
	line-height: 36px;
}
tr {
	vertical-align: baseline;
}
.map {
	width: 640px;
	height: 420px;
	margin: 40px auto 0px;
}
/* 経営理念 ---------------------------------*/
.idea-wrap {
	width: 100%;
	margin: 70px 0px 90px 0px;
}
.idea h2 {
	text-align: center;
}
.idea-text {
	font-size: 26px;
	font-weight: 700;
	text-align: center;
}
.idea-line {
	width: 700px;
	height: 12px;
	background-image: repeating-linear-gradient(45deg, #014718 0, #014718 4px, transparent 0, transparent 50%);
	background-size: 12px 12px;
	margin: 40px auto 0px;
}
h4 {
	font-size: 28px;
	text-align: center;
	color: #014718;
	font-weight: 700;
	margin: 40px 0px 14px 0px;
	padding: 0px;
}
.idea-text-2 {
	font-size: 16px;
	text-align: center;
	font-weight: 700;
}
/* 資格設備 ---------------------------------*/
.equipment-wrap {
	width: 100%;
	height: 100%;
	padding: 90px 0px;
}
dl{
	max-width: 720px;
  line-height: 5.5em;
  clear: both;
  margin-bottom: 2em;
  position: relative;
	margin-left: auto;
	margin-right: auto;
}
dt{
  float: left;
  padding-left: 0px;
}
dd{
  padding-left: 0px;
  position: relative;
	text-align: right;
}
dd:before,
dd:last-child:after{
  content: "";
  position: absolute;
  width: calc(100% + 3em);
  border-top: 1px solid #014718;
  left: -3em;
}
dd:last-child:after{
  bottom: 0;
}
dd + dd:before{
  border-top: none;
}
	
/* 資格一覧 ---------------------------------*/
.qualifications-wrap {
	width: 100%;
	height: 100%;
	background-color: #E6EDE8;
	padding: 90px 0px;
}
.qualifications-table {
	max-width: 720px !important;
	margin: 0 auto;
	}
.qualifications tr {
	max-width: 720px;
	margin: 0 auto;
	}
.qualifications th,
.qualifications td{
	border-bottom: solid 1px #014718;
	vertical-align: middle;
	padding: 30px 0px;
	}
.qualifications th {
	text-align: left;
	width: 660px;
	}
.qualifications td {
	text-align: right;
	}
/* 採用情報 ---------------------------------*/
.recruit-img {
	width: 1000px;
	height: 460px;
	margin: 60px auto 0px;
	background: url("img/recruit-img-2.jpg") no-repeat center / cover;
}
.recruit-img img {
	width: 1000px;
	height: 460px;
	text-align: center;
}
.recruit-wrap {
	width: 100%;
	height: 100%;
	margin: 460px 0px 0px 0px;
}
.recruit-text {
	text-align: center;
	line-height: 36px;
}
.recruit-pickup {
	width: 1000px;
	height: 300px;
	margin: 80px auto 40px;
}
.recruit-pickup-img {
	background: url("img/recruit-pickuppoint-img.png") no-repeat center / contain;
	width: 1000px;
	height: 180px;
}
/* 募集要項 ---------------------------------*/
.recruit-points-wrap {
	width: 100%;
	height: 100%;
	background-color: #E6EDE8;
	padding: 90px 0px;
}
.recruit-points {
	width: 720px;
	margin: 0 auto;
}
.recruit-points table th,
.recruit-points table td {
	text-align: left;
	padding: 30px 0px;
	border-bottom: solid 1px #014718;
	display: table-cell;
}
.recruit-points tbody th {
	width: 220px;
}
.recruit-points-button a {
	display: block;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 340px;
	height: 70px;
	padding: 30px 0px 0px 0px;
	color: #014718;
	font-weight: 900;
	font-size: 22px;
	border: 4px solid #014718;
	margin: 40px auto;
}
/* お問い合わせページ ---------------------------------*/
.contact-page-wrap {
	width: 1000px;
	height: 100%;
	margin: 90px auto;
}
.contact-page-info {
	font-size: 20px;
}
.contact-page-tel {
	margin: 20px 0px 0px 0px;
}
.contact-page-tel a {
	font-family: 'Montserrat', sans-serif;
	color: #014718;
	font-size: 22px;
}
.contact-page-tel span {
	font-size: 44px;
}
.contact-page-fax {
	font-family: 'Montserrat', sans-serif;
	color: #014718;
	font-size: 22px;
	margin: 20px 0px 0px 0px;
}
.contact-page-fax span {
	font-size: 32px;
}
.contact-page-mail {
	margin: 0px 0px 20px 0px;
}
.contact-page-mail a {
	font-family: 'Montserrat', sans-serif;
	color: #014718;
	font-size: 22px;
}
.contact-page-mail span{
	font-size: 34px;
}
.contact-page-mailinfo {
	background-color: #E6EDE8;
	padding: 30px;
}
.contact-page-info-sub {
	font-size: 14px;
	margin: 20px 0px 0px 0px;
	line-height: 22px;
}
.contact-page-info-sub a {
	color: #474747;
	border-bottom: solid 1px #474747;
}
.contact-page-line {
	width: 1000px;
	height: 12px;
	background-image: repeating-linear-gradient(45deg, #014718 0, #014718 4px, transparent 0, transparent 50%);
	background-size: 12px 12px;
	margin: 40px auto 40px;
}
	/* 個人情報保護方針 ---------------------------------*/
	.privacy-wrap {
		width: 720px;
		height: auto;
		padding: 90px 0px;
		margin: 0px auto;
	}
	.privacy-title {
		font-size: 20px;
	}
	.privacy-text {
		margin: 0px 0px 40px 0px;
	}
}
@media screen and (max-width: 1030px) {
/* チェックボックスは非表示に */
	.drawer-hidden {
	  display: none;
	}
	/* ハンバーガーアイコンの設置スペース */
	.drawer-open {
	  display: flex;
	  height: 60px;
	  width: 60px;
	  justify-content: center;
	  align-items: center;
	  position: relative;
	  z-index: 100;/* 重なり順を一番上に */
	  cursor: pointer;
	}
	/* ハンバーガーメニューのアイコン */
	.drawer-open span,
	.drawer-open span:before,
	.drawer-open span:after {
	  content: '';
	  display: block;
	  height: 2px;
	  width: 25px;
	  border-radius: 2px;
	  background: #FFFFFF;
	  transition: 0.5s;
	  position: absolute;
	}
	/* 三本線のうち一番上の棒の位置調整 */
	.drawer-open span:before {
	  bottom: 8px;
	}
	/* 三本線のうち一番下の棒の位置調整 */
	.drawer-open span:after {
	  top: 8px;
	}
	/* アイコンがクリックされたら真ん中の線を透明にする */
	#drawer-check:checked ~ .drawer-open span {
	  background: rgba(255, 255, 255, 0);
	}
	/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
	#drawer-check:checked ~ .drawer-open span::before {
	  bottom: 0;
	  transform: rotate(45deg);
	}
	#drawer-check:checked ~ .drawer-open span::after {
	  top: 0;
	  transform: rotate(-45deg);
	}
	/* メニューのデザイン*/
	.drawer-content {
	  width: 100%;
	  height: 100%;
	  position: fixed;
	  top: 0;
	  left: 100%;/* メニューを画面の外に飛ばす */
	  z-index: 99;
	  background: #014718;
	  transition: .5s;
	}
	/* アイコンがクリックされたらメニューを表示 */
	#drawer-check:checked ~ .drawer-content {
	  left: 0;/* メニューを画面に入れる */
	}
	.drawer {
		float: right;
		padding: 6px 10px 0 0;
	}
	.mv-logo {
		display: inline-block;
		width: 240px;
		position: absolute;
		top: 25%;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  margin: auto;
	}
	.read-2 {
		text-align: center;
		margin-top: 60px;
	}
	/* sp-メニュー画面 */
	.drawer-list li {
		border-bottom: 1px solid #FFFFFF;
		width: 90%;
	}
	.drawer-list li a {
		color: #FFFFFF;
		text-decoration: none;
		font-weight: 700;
	}
	.drawer-item {
		list-style: none;
		text-align: center;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.drawer-list {
		padding-top: 40px;
	}
	/* nav-log--------------------------------- */
	.header-logo {
		background: url("img/hlogo.svg") no-repeat center / contain;
		width: 100px;
		height: 47px;
		position: absolute;
		top: 20px;
		left: 30px;
		z-index: 2;
	}
	.header-logo a,
	.footer-logo a {
	  width: 0;
	  height: 0;
	  font-size: 0% !important;
	  line-height: 0% !important;
	  text-indent: 100% !important;
	  white-space: nowrap !important;
	  overflow: hidden !important;
	  padding: 0 !important;
	  margin: 0 !important;
		display: block;
	}
	.header-logo a {
		width: 100px;
		height: 47px;
	}
	/* pc用menu 非表示--------------------------------- */
	#gnav {
		display: none;
	}
	/* firstview--------------------------------- */
	#main-visual {
		width: 100%;
		height: 640px;
		background: url("img/index-img-1.jpg") no-repeat center / cover;
		position: relative;
	}
	/* fv-mainimg--------------------------------- */
	.main-img {
		background: url("img/index-mv-sp.png") no-repeat center / contain;
		width: 220px;
		height: 430px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	/* コンセプト--------------------------------- */
	#concept {	
		width: 85%;
		height: 100%;
		margin: 60px auto 0px;
	}
	.concept-mv {
		background: url("img/about-mv.png") no-repeat center / contain;
		width: 240px;
		height: 144px;
		margin: 0px auto;
	}
	.concept-wrap {
		width: 100%;
		height: auto;
		text-align: center;
		margin: 28px auto 0px;
	}
	.concept-wrap span {
		display: inline-block;
	}
	.concept-title {
		font-family: 'Montserrat', sans-serif;
		font-weight: 900;
		font-size: 20px;
		color: #014718;
	}
	.concept-title span {
		display: inline-block;
	}
	.concept-wrap p {
		line-height: 34px;
	}
	/* index 事業紹介 ---------------------------------*/
	#index-about {
		background: url("img/index-img-2.jpg") no-repeat center / cover;
		width: 100%;
		height: 100%;
		margin-top: 90px;
		position: relative;
	}
	/* リセット */
	hr {
	  height: 0;
	  margin: 0;
	  padding: 0;
	  border: 0;
	}
	.index-about-wrap {
		width: 100%;
		height: 100%;
	}
	.about-line {
		width: 100%;
		height: 12px;
		background-image: repeating-linear-gradient(45deg, #FFFFFF 0, #FFFFFF 4px, transparent 0, transparent 50%);
		background-size: 12px 12px;
	}
	.about-line-bottom {
		position: absolute;
		bottom: 0px;
		width: 100%;
		height: 12px;
		background-image: repeating-linear-gradient(45deg, #FFFFFF 0, #FFFFFF 4px, transparent 0, transparent 50%);
		background-size: 12px 12px;
	}
	.index-business-title-back {
		background: url("img/index-business-title.png") no-repeat center / contain;
		width: 290px;
		height: 39px;
		margin: 75px auto 120px;
	}
	.index-business-title {
		width: 100%;
		height: auto;
		text-align: center;
		color: #FFFFFF;
		font-size: 26px;
		line-height: 37px;
		font-weight: 900;
		position: relative;
		top: 20px;
	}
	.index-business-title span {
		display: inline-block;
	}
	.index-about-pickup-wrap {
		width: 100%;
		height: auto;
		margin: 60px auto 0px;
		display: block;
	}
	.index-about-pickup-wrap-2 {
		width: 100%;
		height: auto;
		margin: 0px auto;
		display: block;
	}
	.index-about-pickup-l {
		width: 310px;
		height: 160px;
		font-size: 22px;
		line-height: 32px;
		color: #FFFFFF;
		font-weight: 700;
		text-align: center;
		margin: 0px auto 20px;
		border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
		border-width: 6px;
		border-image-slice: 6;
		border-image-repeat: round;
		border-style: solid;
	}
	.index-about-pickup-l p{
		position: relative;
		top:25%;
		left:50%;
		transform:translate(-50%,-25%);
		width:100%;
	}
	.index-about-pickup-l-2 {
		width: 310px;
		height: 160px;
		font-size: 22px;
		line-height: 32px;
		color: #FFFFFF;
		margin: 0px 0px 0px 0px;
		border: solid;
	}
	.index-about-pickup-r {
		width: 310px;
		height: 160px;
		font-size: 22px;
		line-height: 32px;
		color: #FFFFFF;
		text-align: center;
		font-weight: 700;
		border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
		border-width: 6px;
		border-image-slice: 6;
		border-image-repeat: round;
		border-style: solid;
		margin: 0px auto 20px;
	}
	.index-about-pickup-r-2 {
		width: 310px;
		height: 160px;
		font-size: 22px;
		line-height: 32px;
		color: #FFFFFF;
		text-align: center;
		font-weight: 700;
		border-image-source: repeating-linear-gradient(45deg, #fff 0, #fff 3px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 6px);
		border-width: 6px;
		border-image-slice: 6;
		border-image-repeat: round;
		border-style: solid;
		margin: 0px auto 20px;
	}
	.index-about-pickup-r p{
	  position: relative;
	  top:18%;
	  left:50%;
	  transform:translate(-50%,-20%);
	  width:100%;
	}
	.index-about-pickup-r-2 p{
	  position: relative;
	  top:30%;
	  left:50%;
	  transform:translate(-50%,-20%);
	  width:100%;
	}
	.about-button {
		clear: both;
		margin: 40px auto 80px;
		width: 100%;
	}
	.about-button a {
		display: block;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 280px;
		height: 56px;
		color: #FFFFFF;
		background-color: #014718;
		font-weight: 900;
		font-size: 20px;
		border: 4px solid #FFFFFF;
		margin: 0px auto 20px;
		padding-top: 22px; 
	}
	.index-recruit-wrap-r {
		display: block;
		margin: 20px 0px 0px 0px;
		padding: 0px;
	}
	.index-recruit-wrap-r img {
		width: 300px;
		height: 100%;
	}
	/* index-採用情報 ---------------------------------*/
	#recruit-wrap {
		width: 100%;
		height: 100%;
		background-color: #E6EDE8;
		margin: 0px;
		padding: 60px 0px 60px 0px;
	}
	.index-recruit {
		width: 90%;
		height: 100%;
		margin: 0px auto;
		padding: 0px 0px 0px 0px;
	}
	.index-recruit-wrap-l {
		width: 100%;
		height: 100%;
		margin: 0px auto 0px;
	}
	h3 {
		font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		font-size: 50px;
		font-weight: 900;
		color: #198A3E;
		margin: 0px;
		padding: 0px;
		line-height: 60px;
		text-align: center;
	}
	.read {
		color: #014718;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 32px;
		line-height: 32px;
		font-weight: 900px;
		margin: 0px 0px 20px 0px;
		padding: 0px;
		text-align: center;
	}
	.index-recruit-text {
		width: 100%;
		font-size: 16px;
		line-height: 34px;
	}
	.index-recruit-wrap-l a {
		color: #014718;
		text-align: center;
		padding: 0px 0px 10px 0px;
		border-bottom: solid 1px #014718;
	}
	.index-recruit-wrap-l p {
		color: #014718;
		text-align: center;
	}
	.index-recruit-img-wrap {
		display: none;
	}
	.index-recruit-wrap-r {
		margin: 40px 0px 0px 0px;
		padding: 0px;
	}
	.index-recruit-wrap-r img {
		width: 100%;
		height: auto;
	}
	/* お問い合わせ ---------------------------------*/
	#footer {
		width: 85%;
		clear: both;
		margin: 0 auto;
	}
	.contact-wrap {
		width: 90%;
		height: 100%;
		margin: 0 auto;
		padding: 60px 0px 30px 0px;
	}
	.contact-title {
		width: 100%;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 900px;
		display: block;
		text-align: center;
	}
	.contact-title span {
		font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		font-weight: 900;
		font-size: 40px;
		line-height: 0px;
		color: #014718;
		margin: 0px;
		padding: 0px;
	}
	.contact-tel-fax, 
	.contact-mail {
		font-family: "Montserrat", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		color: #014718;
		font-weight: 900;
		margin: 20px 0px 0px;
		padding: 0px;
		text-align: center;
	}
	.contact-tel-fax a, 
	.contact-mail a {
		color: #014718;
	}
	.contact-tel {
		font-size: 32px;
		margin: 0px 0px 10px;
	}
	.contact-fax {
		font-size: 26px;
		margin: 0px 0px 10px;
	}
	.contact-sub {
		font-size: 14px;
		text-align: center;
	}
	.contact-sub span {
		font-size: 12px;
		display: inline-block;
	}
	.contact-mail span {
		font-size: 20px;
	}
	.footer-menu-list {
		color: #014718;
		text-align: center;
		padding: 0px !important; 
	}
	.footer-menu-list ul {
		padding: 0px;
	}
	.footer-menu-list ul li {
		font-size: 16px;
		text-align: center;
		display: inline-block;
		margin: 0px 0px 10px;
		padding: 0px;
	}
	.footer-menu-list ul li a {
		color: #014718;
	}
	.footer-menu-list ul li span {
		font-family: 'Montserrat', sans-serif;
		font-size: 26px;
	}
	.footer-menu-list ul li + li {
		margin: 0 10px 0 10px;
	}
	.footer-title {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 900px;
		font-size: 20px;
		color: #014718;
		margin: 30px 0px 0px 0px;
		padding: 0px;
	}
	.footer-title-text {
		margin: 0px;
		padding: 20px 0px 20px 0px;
		width: 100%;
		height: 30px;
		text-align: center;
	}
	.footer-title-text span {
		display: inline-block;
	}
	.footer-logo {
		background: url("img/flogo.svg") no-repeat center / contain;
		width: 132px;
		height: 62px;
		z-index: 2;
		margin: 0px auto;
	}
	.footer-logo a {
		display: block;
		width: 132px;
		height: 62px;
	}
	.footer-title-text a {
		color: #014718;
		text-align: center;
	}
	#copyright {
		font-size: 12px;
		margin: 14px 0px 0px 0px;
		padding: 0px;
		text-align: center;
	}
	#copyright span {
		margin: 14px 0px 0px 14px;
		display: block;
	}
	#copyright a {
		color: #474747;
		border-bottom:  solid 1px #474747;
	}
	/* 会社紹介ページ ---------------------------------*/
	.first-back {
		width: 100%;
		height: 520px;
		background-color: #014718;
	}
	.first-back-contact {
		width: 100%;
		height: 280px;
		background-color: #014718;
	}	
	.first-back-privacy {
		width: 100%;
		height: 380px;
		background-color: #014718;
	}
	.first-back-title {
		width: 100%;
		padding-top: 120px; 
		font-family: 'Montserrat', sans-serif;
		font-size: 50px;
		font-weight: 900px;
		color: #FFFFFF;
		text-align: center;
	}
	.first-back-title-sub {
		width: 100%;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 24px;
		font-weight: 900px;
		color: #FFFFFF;
		text-align: center;
	}
	.about-company {
		margin: 40px auto 0px;
		width: 100%;
	}
	.about-company a {
		display: block;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 280px;
		height: 58px;
		color: #FFFFFF;
		background-color: #014718;
		font-weight: 900;
		font-size: 20px;
		border: 4px solid #FFFFFF;
		margin: 0px auto 20px;
		padding-top: 20px; 
	}
	/* 代表あいさつ ---------------------------------*/
	.greeting {
		width: 85%;
		height: 100%;
		margin: 60px auto 60px;
		padding: 0px;
	}
	.greeting-img {
		text-align: center;
		width: 100%;
		height: auto; 
		margin: 0px auto;
	}
	.greeting-img img {
		width: 100%;
	}
	h2 {
		text-align: center;
		color: #014718;
		font-size: 26px;
		font-weight: 900;
		line-height: 42px;
	}
	.greeting-text {
		width: 100%;
		height: auto;
		margin: 0px auto;
		line-height: 34px;
	}
	.greeting-name {
		text-align: center;
		margin: 24px 0px 0px 0px;
	}
	.greeting-name span {
		display: inline-block;
		font-size: 22px;
		margin: 0px 0px 0px 12px;
	}
	/* 会社概要 ---------------------------------*/
	.outline-wrap {
		width: 100%;
		height: 100%;
		background-color: #E6EDE8;
		padding: 60px 0px 60px 0px;
	}
	.outline {
		width: 85%;
		margin: 0px auto;
	}
	.outline table th,
	.outline table td {
		padding: 5px 0;
		display: table-cell;
	}

	.outline table th {
	  width: 100px;
	  text-align: left;
	}
	.outline table td span {
 	 	font-weight: 700;
		margin: 0 0 -8px 0;
		display: block;
	}
	tr {
		vertical-align: baseline;
	}
	.map {
		width: 85%;
		height: 380px;
		margin: 40px auto 0px;
	}
	/* 経営理念 ---------------------------------*/
	.idea-wrap {
		width: 85%;
		margin: 60px auto 60px;
	}
	.idea h2 {
		text-align: center;
	}
	.idea-text {
		font-size: 20px;
		font-weight: 700;
		text-align: center;
		line-height: 38px;
	}
	.idea-text span {
		display: inline-block;
	}
	.idea-line {
		width: 100%;
		height: 12px;
		background-image: repeating-linear-gradient(45deg, #014718 0, #014718 4px, transparent 0, transparent 50%);
		background-size: 12px 12px;
		margin: 40px auto 0px;
	}
	h4 {
		font-size: 20px;
		text-align: center;
		color: #014718;
		font-weight: 700;
		margin: 40px 0px 14px 0px;
		padding: 0px;
	}
	.idea-text-2 {
		font-size: 16px;
		text-align: center;
		font-weight: 700;
	}
	.idea-text-2 span {
		display: inline-block;
	}
	/* 資格設備 ---------------------------------*/
	.equipment-wrap {
		width: 100%;
		height: 100%;
		padding: 60px 0px;
		margin: 0px auto;
	}
	dl{
		max-width: 720px;
	  line-height: 5.5em;
	  clear: both;
	  margin-bottom: 2em;
	  position: relative;
		margin-left: auto;
		margin-right: auto;
	}
	dt{
	  float: left;
	  padding-left: 0px;
	}
	dd{
	  padding-left: 0px;
	  position: relative;
		text-align: right;
	}
	dd:before,
	dd:last-child:after{
	  content: "";
	  position: absolute;
	  width: calc(100% + 3em);
	  border-top: 1px solid #014718;
	  left: -3em;
	}
	dd:last-child:after{
	  bottom: 0;
	}
	dd + dd:before{
	  border-top: none;
	}
	.qualifications-wrap {
		width: 100%;
		height: 100%;
		background-color: #E6EDE8;
		padding: 60px 0px;
	}
	.qualifications {
		width: 80%;
		margin: 0 auto;
	}
	/* 資格一覧 ---------------------------------*/
	.qualifications-wrap {
		width: 100%;
		height: 100%;
		background-color: #E6EDE8;
		padding: 90px 0px;
	}
	.qualifications-table {
		max-width: 720px !important;
		margin: 0 auto;
		}
	.qualifications tr {
		max-width: 720px;
		margin: 0 auto;
		}
	.qualifications th,
	.qualifications td{
		border-bottom: solid 1px #014718;
		vertical-align: middle;
		padding: 30px 10px;
		}
	.qualifications th {
		text-align: left;
		width: 200px;
		}
	.qualifications td {
		text-align: right;
		width: 60px;
		}
	/* 採用情報 ---------------------------------*/
	.recruit-img {
		width: 85%;
		height: 320px;
		margin: 40px auto 0px;
		background: url("img/recruit-img-2.jpg") no-repeat center / cover;
	}
	.recruit-img img {
		width: 100%;
		height: auto;
		text-align: center;
	}
	.recruit-wrap {
		width: 85%;
		height: 100%;
		margin: 120px auto 0px;
	}
	.recruit-wrap span {
		display: inline-block;
	}
	.recruit-text {
		text-align: center;
		line-height: 36px;
	}
	.recruit-text span {
		display: inline-block;
	}
	.recruit-pickup {
		width: 85%;
		height: 100%;
		margin: 80px auto 40px;
	}
	.recruit-pickup-img {
		background: url("img/recruit-pickuppoint-img-sp.png") no-repeat center / contain;
		width: 260px;
		height: 546px;
		margin:  0 auto;
	}
	/* 募集要項 ---------------------------------*/
	.recruit-points-wrap {
		width: 100%;
		height: 100%;
		background-color: #E6EDE8;
		padding: 60px 0px;
	}
	.recruit-points {
		width: 85%;
		margin: 0 auto;
	}
	.recruit-points table th,
	.recruit-points table td {
		text-align: left;
		padding: 30px 0px;
		border-bottom: solid 1px #014718;
		display: table-cell;
	}
	.recruit-points tbody th {
		width: 120px;
	}
	.recruit-points-button a {
		display: block;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 240px;
		height: 70px;
		padding: 30px 0px 0px 0px;
		color: #014718;
		font-weight: 900;
		font-size: 22px;
		border: 4px solid #014718;
		margin: 40px auto;
	}
	/* お問い合わせページ ---------------------------------*/
	.contact-page-wrap {
		width: 85%;
		height: 100%;
		margin: 60px auto;
	}
	.contact-page-info {
		font-size: 18px;
	}
	.contact-page-tel {
		margin: 20px 0px 0px 0px;
	}
	.contact-page-tel a {
		font-family: 'Montserrat', sans-serif;
		color: #014718;
		font-size: 20px;
	}
	.contact-page-tel span {
		font-size: 38px;
	}
	.contact-page-fax {
		font-family: 'Montserrat', sans-serif;
		color: #014718;
		font-size: 18px;
		margin: 20px 0px 0px 0px;
	}
	.contact-page-fax span {
		font-size: 28px;
	}
	.contact-page-mail {
		margin: 0px 0px 20px 0px;
	}
	.contact-page-mail a {
		font-family: 'Montserrat', sans-serif;
		color: #014718;
		font-size: 18px;
	}
	.contact-page-mail span{
		font-size: 24px;
	}
	.contact-page-mailinfo {
		background-color: #E6EDE8;
		padding: 30px;
	}
	.contact-page-info-sub {
		font-size: 14px;
		margin: 20px 0px 0px 0px;
		line-height: 22px;
	}
	.contact-page-info-sub a {
		color: #474747;
		border-bottom: solid 1px #474747;
	}
	.contact-page-line {
		width: 100%;
		height: 12px;
		background-image: repeating-linear-gradient(45deg, #014718 0, #014718 4px, transparent 0, transparent 50%);
		background-size: 12px 12px;
		margin: 40px auto 40px;
	}
	/* 個人情報保護方針 ---------------------------------*/
	.privacy-wrap {
		width: 85%;
		height: auto;
		padding: 60px 0px;
		margin: 0px auto;
	}
	.privacy-title {
		font-size: 20px;
	}
	.privacy-text {
		margin: 0px 0px 40px 0px;
	}
}