@charset "utf-8";

/*---------------------------------------------

indexスタイル

-----------------------------------------------*/

@media print, screen and (min-width: 768px) {

/* ▼共通PC */
h2 {
	width: 900px;
	margin: 0 auto;
	font-size: 28px; font-size: 2.8rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	padding: 50px 0;
	box-sizing: border-box;
}

/* ▼トップメインPC */
#top_main {
	width: 100%;
	height: 490px;
	background: url("../img/main_img.webp") center bottom no-repeat;
	background-size: cover;
	image-rendering: -webkit-optimize-contrast;
	margin-bottom: 20px;
}

.first_txt {
	width: 631px;
	margin: 0 auto;
	padding-top: 70px;
}

.first_txt img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

/* ▼ごあいさつPC */
#about h2 {
	padding-left: 85px;
	background: url("../img/h2_icon01.png") left 10px center no-repeat;
	background-size: 56px 66px;
}

.aboutbox {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.about_img {width: 368px;}

.about_img img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.about_txt {
	width: 485px;
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
}

/* ▼業務内容PC */
#service h2 {
	padding-left: 100px;
	background: url("../img/h2_icon02.png") left 10px center no-repeat;
	background-size: 67px 67px;
}

#service > .inner {
	width: 100%;
	margin-bottom: 60px;
}

.blue_area {
	background: #006cb8;
	margin-bottom: 7px;
}

.green_area {
	background: #c3d82d;
	margin-bottom: 7px;
}

.blue_area .inner, .green_area .inner {
	position: relative;
	height: 298px;
	box-sizing: border-box;
}

.blue_area .serviceimg {
	position: absolute;
	width: 492px;
	top: 0;
	right: 0;
}

.green_area .serviceimg {
	position: absolute;
	width: 492px;
	top: 0;
	left: 0;
}

.serviceimg img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

#s01 h3 {padding-top: 45px;}

#s02 h3 {padding-top: 45px;}

#s03 h3 {padding-top: 60px;}

#s04 h3 {padding-top: 115px;}

.blue_area h3 {
	font-size: 28px; font-size: 2.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	font-weight: bold;
	color: #fff;
	width: 380px;
	margin-bottom: 10px;
}

.green_area h3 {
	font-size: 28px; font-size: 2.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	font-weight: bold;
	color: #fff;
	width: 380px;
	margin: 0 0 10px 520px;
}

.blue_area p {
	font-size: 20px; font-size: 2.0rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	color: #fff;
	width: 380px;
}

.green_area p {
	font-size: 20px; font-size: 2.0rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	color: #fff;
	width: 380px;
	margin-left: 520px;
}

/* ▼会社情報PC */
#company h2 {
	padding-left: 90px;
	background: url("../img/h2_icon03.png") left 10px center no-repeat;
	background-size: 57px 58px;
}

.cobox {
	width: 900px;
	margin: 0 auto 100px auto;
	border-top: solid 1px #000;
}

.cobox th, .cobox td {
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	line-height: 2;
	border-bottom: solid 1px #000;
	padding: 18px 0;
	text-align: left;
	box-sizing: border-box;
	vertical-align: middle;
}

.cobox th {
	width: 180px;
	text-align: center;
	font-weight: bold;
}

.cobox td {padding-left: 30px;}

.cobox td span {margin-right: 25px;}

/* ▼お問い合わせPC */
#contact h2 {
	padding-left: 110px;
	background: url("../img/h2_icon04.png") left 10px center no-repeat;
	background-size: 73px 46px;
}

.contacttxt {
	font-size: 16px; font-size: 1.6rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
	margin-bottom: 35px;
}

.contact_wrap {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}

.contact_wrap > div a {
	display: block;
	width: 346px;
	height: 346px;
	background: #f6f7f7;
	border-radius: 9999px;
	box-sizing: border-box;
	margin: 0 23px;
	text-decoration: none;
	color: #000;
}

.contact_wrap > div:nth-of-type(1) a {padding-top: 45px;}

#access_tel {
	width: 112px;
	margin: 0 auto 30px auto;
}

#access_tel img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

#teltxt {
	font-size: 20px; font-size: 2.0rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}

#telnumber {
	font-size: 20px; font-size: 2.0rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	text-align: center;
	margin-bottom: 12px;
}

#telnumber a {
	color: #000;
	text-decoration: none;
}

#uketuke {
	font-size: 14px; font-size: 1.4rem;
	font-feature-settings: "palt" 1;
	line-height: 1.6;
	text-align: center;
	color: #000023;
}

.contact_wrap > div:nth-of-type(2) a {padding-top: 60px;}

#access_mail {
	width: 119px;
	margin: 0 auto 25px auto;
}

#access_mail img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

#mailbtn {
	background: #44d67d;
	color: #fff;
	padding: 12px 0;
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	text-align: center;
	font-weight: bold;
	width: 230px;
	border-radius: 9999px;
	margin: 0 auto 16px auto;
}

#mailtxt {
	font-size: 14px; font-size: 1.4rem;
	font-feature-settings: "palt" 1;
	line-height: 1.6;
	text-align: center;
	color: #000023;
}

/* ▼アクセスPC */
#access h2 {
	padding-left: 80px;
	background: url("../img/h2_icon05.png") left 10px center no-repeat;
	background-size: 44px 54px;
}

.accesstxt {
	font-size: 16px; font-size: 1.6rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
}

.addbox {
	display: flex;
	font-size: 16px; font-size: 1.6rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
	margin-bottom: 20px;
}

.addbox > p {padding-top: 30px;}

.addbox > p:nth-of-type(1) {
	padding-left: 40px;
	background: url("../img/mapicon.png") left 5px center no-repeat;
	background-size: 23px 33px;
	margin-right: 30px;
}

.gmap {margin-bottom: 50px;}

/* ▼職人募集PC */
#recruit h2 {
	padding-left: 110px;
	background: url("../img/h2_icon06.png") left 10px center no-repeat;
	background-size: 80px 55px;
}

.recruitbox {
	width: 900px;
	height: 262px;
	margin: 0 auto 30px auto;
	position: relative;
	background: #f6f7f7;
}

.recruit_img {
	position: absolute;
	width: 372px;
	top: 0;
	left: 0;
}

.recruit_img img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.recruit_title {
	margin-left: 405px;
	color: #006cb8;
	font-size: 35px; font-size: 3.5rem;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
	padding-top: 25px;
	margin-bottom: 5px;
}

.recruit_list {
	margin-left: 405px;
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	margin-bottom: 8px;
}

.recruit_txt {
	margin-left: 405px;
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	font-weight: bold;
}

.recruit_tel {margin-left: 405px;}

.recruit_tel a {
	text-decoration: none;
	font-size: 28px; font-size: 2.8rem;
	font-feature-settings: "palt" 1;
	line-height: 1.5;
	font-weight: bold;
	color: #000;
}

}

@media only screen and (max-width: 767px) {

/* ▼共通SP */
h2 {
	width: 94%;
	margin: 0 auto;
	font-size: 5.5vw;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	padding: 10vw 0;
	box-sizing: border-box;
}

/* ▼トップメインSP */
#top_main {
	width: 100%;
	height: 145vw;
	background: url("../img/main_img_sp.webp") center bottom no-repeat;
	background-size: cover;
	image-rendering: -webkit-optimize-contrast;
	margin-bottom: 8vw;
}

.first_txt {
	width: 90%;
	margin: 0 auto;
	padding-top: 14vw;
}

.first_txt img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

/* ▼ごあいさつSP */
#about h2 {
	padding-left: 18vw;
	background: url("../img/h2_icon01.png") left 2vw center no-repeat;
	background-size: 11vw;
}

.aboutbox {margin-bottom: 10vw;}

.about_img {
	width: 100%;
	margin: 0 auto 7vw auto;
}

.about_img img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.about_txt {
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
}

/* ▼業務内容SP */
#service h2 {
	padding-left: 20vw;
	background: url("../img/h2_icon02.png") left 2vw center no-repeat;
	background-size: 14vw;
}

#service .inner {
	width: 100%;
	margin-bottom: 8vw;
}

.blue_area .serviceimg {
	width: 100%;
	background: #006cb8;
}

.green_area .serviceimg {
	width: 100%;
	background: #c3d82d;
}

.serviceimg img {
	width: 90%;
	margin-left: 5%;
	image-rendering: -webkit-optimize-contrast;
}

.blue_area h3, .green_area h3 {
	padding-top: 4vw;
	width: 90%;
	margin: 0 auto 2vw auto;
	font-size: 5vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	font-weight: bold;
}

.blue_area p, .green_area p {
	width: 90%;
	margin: 0 auto 15vw auto;
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
}

/* ▼会社情報SP */
#company h2 {
	padding-left: 19vw;
	background: url("../img/h2_icon03.png") left 2vw center no-repeat;
	background-size: 13vw;
}

.cobox {
	width: 100%;
	border-top: solid 1px #000;
	background: #fff;
	margin-bottom: 6vw;
}

.cobox th, .cobox td {
	display: block;
	font-size: 3.6vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	text-align: center;
	box-sizing: border-box;
	vertical-align: middle;
}

.cobox th {
	font-weight: bold;
	padding: 3vw 2vw 1vw 2vw;
}

.cobox td {
	padding: 1vw 2vw 3vw 2vw;
	border-bottom: solid 1px #000;
}

.cobox td span {
	display: block;
}

/* ▼お問い合わせSP */
#contact h2 {
	padding-left: 22vw;
	background: url("../img/h2_icon04.png") left 2vw center no-repeat;
	background-size: 15vw;
}

.contacttxt {
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
	margin-bottom: 10vw;
}

.contact_wrap {margin-bottom: 8vw;}

.contact_wrap > div a {
	display: block;
	width: 80vw;
	height: 80vw;
	background: #f6f7f7;
	border-radius: 9999px;
	box-sizing: border-box;
	text-decoration: none;
	color: #000;
	margin: 0 auto 8vw auto;
}

.contact_wrap > div:nth-of-type(1) a {padding-top: 10vw;}

#access_tel {
	width: 32%;
	margin: 0 auto 6vw auto;
}

#access_tel img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

#teltxt {
	font-size: 5vw;
	font-feature-settings: "palt" 1;
	color: #000;
	font-weight: bold;
	text-align: center;
	margin-bottom: 3vw;
}

#telnumber {
	font-size: 6vw;
	font-feature-settings: "palt" 1;
	color: #000;
	font-weight: bold;
	text-align: center;
	margin-bottom: 4vw;
}

#telnumber a {
	color: #000023;
	text-decoration: none;
}

#uketuke {
	font-size: 3.2vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	text-align: center;
	color: #000023;
}

.contact_wrap > div:nth-of-type(2) a {padding-top: 12vw;}

#access_mail {
	width: 35%;
	margin: 0 auto 5vw auto;
}

#access_mail img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

#mailbtn {
	background: #44d67d;
	color: #fff;
	padding: 3vw 0;
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	text-align: center;
	width: 66%;
	border-radius: 9999px;
	margin: 0 auto 5vw auto;
	font-weight: bold;
}

#mailtxt {
	font-size: 3.2vw;
	font-feature-settings: "palt" 1;
	line-height: 1.6;
	text-align: center;
	color: #000023;
}

/* ▼アクセスSP */
#access h2 {
	padding-left: 18vw;
	background: url("../img/h2_icon05.png") left 4vw center no-repeat;
	background-size: 9vw;
}

#access > .inner {width: 100%;}

.accesstxt {
	width: 94%;
	margin: 0 auto 7vw auto;
	font-size: 3.6vw;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
}

.addbox {
	width: 94%;
	margin: 0 auto 5vw auto;
	display: flex;
	font-size: 3.6vw;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
}

.addbox > p:nth-of-type(1) {
	padding-left: 8vw;
	background: url("../img/mapicon.png") left top no-repeat;
	background-size: 4vw;
	margin-right: 4vw;
}

.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 10vw;
}
 
.gmap iframe,
.gmap object,
.gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ▼職人募集SP */
#recruit h2 {
	padding-left: 22vw;
	background: url("../img/h2_icon06.png") left 2vw center no-repeat;
	background-size: 16vw;
}

.recruitbox {
	width: 100%;
	margin: 0 auto 15vw auto;
	background: #f6f7f7;
}

.recruit_img {width: 100%;}

.recruit_img img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.recruit_title {
	color: #006cb8;
	font-size: 6.5vw;
	font-feature-settings: "palt" 1;
	font-weight: bold;
	line-height: 1.8;
	padding: 4vw 4vw 2vw 4vw;
}

.recruit_list {
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	padding: 0 4vw 2vw 4vw;
}

.recruit_txt {
	font-size: 4vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	padding: 0 4vw 0 4vw;
	font-weight: bold;
}

.recruit_tel {padding: 0 4vw 4vw 4vw;}

.recruit_tel a {
	text-decoration: none;
	font-size: 6vw;
	font-feature-settings: "palt" 1;
	line-height: 1.8;
	font-weight: bold;
	color: #000;
}

}
