@charset "utf8";
/*=============================
  - header
	- fotter
	- navigation
==============================*/

/*----------------------------------------------------
	header
----------------------------------------------------*/
#header{
	width:100%;
	position:relative;
}
.head-content{
	position:relative;
	padding:10px 0;
}
.head-content .discription {
	font-size:14px;
}
.head-content .title {
	font-size:44px;
	font-weight:bold;
}
.head-content .title span {
	font-size:28px;
	padding-right:10px;
	font-weight:normal;
}
.head-content .tel-wrap .tel {
	font-size:18px;
	font-weight:bold;
	padding:0 5px;
}
.head-content .tel-wrap .btn01 {
	width:100%;
	font-size:18px;
	font-weight:bold;
	padding:7px 15px;
}
.head-content .tel-wrap .btn01 i {
	padding-right:7px;
	position:relative;
	top:-2px;
	font-size:22px;
}
.head-content .tel-wrap .tel:before {
/* 	content:"\f095";
	font-family:"FontAwesome";
	font-size:28px;
	position:relative;
	top:1px;
	padding-right:3px; */
}
.head-content .maru-btn01 {
	max-width:220px;
}
@media screen and (max-width:650px){
	#header{
		width:100%;
		position:relative;
	}
	.head-content {
		position:fixed;
		top:0;
		left:0;
		right:0;
		background:#fff;
		min-height:60px;
		border-bottom:3px solid;
		z-index:90;
		padding:5px 10px 0 !important;
	}
	.head-content .discription {
		width:100%;
		overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color:#555;
		font-size:10px;
	}
	.head-content h1 {
		margin-top:0;
	}
	.head-content .title {
		font-size:26px;
		width:250px;
		color:#555;
	}
	.head-content .title span {
		font-size:16px;
		padding-right:5px;
		font-weight:normal;
	}
}

/*  main-v  */
#home .main-v  {
	height:600px;
}
#home .main-v .slider-wrap {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
}
#home .main-v .slider-wrap .img-wrap img {
	width:100%;
	height:600px;
	object-fit:cover;
}
.main-v {
	position:relative;
	width:100%;
	height:250px;
	z-index:1;
}
/*  ページ別background画像  */
#company .main-v {
	background:url(../images/main-v01.jpg) no-repeat center / cover;
}
#recruit .main-v {
	background:url(../images/recruit.png) no-repeat center / cover;
}
#shinrinseibi .main-v {
	background:url(../images/shinrinseibi.png) no-repeat center / cover;
}
#sozaiseisan .main-v {
	background:url(../images/sozaiseisan.png) no-repeat center / cover;
}

/* end  */
.main-v:after {
/*  content:"";
 display:block;
 position:absolute;
 left:0;
 right:0;
 top:0;
 bottom:0;
  background:url(../images/dots.png) repeat; */
}
.main-v .mywidth {
	z-index:3;
	position:relative;
}
.main-v .main-v-title {
	display:block;
	width:100%;
	font-size:40px;
	text-align:center;
	background:rgba(255,255,255,0.7);
	font-weight:normal;
	padding:10px;
	line-height:1.6em;
	z-index:5;
}
#home .main-v .main-v-title {
	font-size:46px;
}
.main-v .main-v-title img {
	margin:auto;
}
@media screen and (max-width:650px){
	#home .main-v {
		height:100vh;
	}
	.main-v {
		max-height:580px;
	}
	#home .main-v .main-v-title {
		width:100%;
		font-size:26px;
		text-align:center;
		margin-top:0;
	}
	.main-v .main-v-title {
		width:100%;
		font-size:26px;
		text-align:center;
		margin-top:50px;
	}
	#home .main-v .slider-wrap .img-wrap img {
		height:100vh;
		max-height:580px;
		object-fit:cover;
	}
}


/*----------------------------------------------------
	footer
----------------------------------------------------*/
#footer{
	width:100%;
	/* background:url(../images/foot-bg.png) no-repeat center / cover; */
	padding-top:50px;
	position:relative;
}
.foot-contact-wrap {
	margin-bottom:60px;
}
.foot-contact-wrap .title {
	font-size:30px;
}
.foot-contact-wrap .add-text {
	font-size:14px;
	color:#7c7c7c;
}
.foot-contact-wrap .maru-btn01 {
	max-width:400px;
}
.foot-contact-wrap .tel {
	font-size:34px;
	font-weight:bold;
	line-height:1em;
}
.foot-contact-wrap .btn01 {
	font-size:20px;
	font-weight:bold;
	padding:15px;
}
.foot-contact-wrap .btn01 i {
	font-size:24px;
	padding-right:10px;
	position:relative;
	top:0px;
}
#scroll-top a {
	border-radius: 50%;
	bottom: 70px;
	display: flex;
	align-items:center;
	justify-content:center;
	float: right;
	height: 70px;
	width: 70px;
	padding: 5px;
	position: fixed;
	right: 30px;
}
#scroll-top a:before {
	content:"\f106";
	font-family:"FontAwesome";
	color:#fff;
	font-size:30px;
	position:relative;
	top:-2px;
}
.copy {
	font-size:12px;
	text-align:center;
	padding:15px 0;
}
@media screen and (max-width:650px){
	.foot-contact-wrap .title {
		font-size:28px;
	}
	.foot-contact-wrap .add-text {
		font-size:16px;
	}
	.foot-contact-wrap .btn01 {
    font-size: 20px;
    font-weight: bold;
    padding: 15px;
    max-width:300;
    margin-bottom:20px;
	}
	.foot-contact-wrap .tel {
		font-size:24px;
		font-weight:bold;
		text-align:center;
	}
	.foot-contact-wrap .tel:before {
		font-size:24px;
	}
	.foot-contact-wrap .maru-btn01 {
		max-width:100%;
	}
	#scroll-top a {
		display:none;
	}
}

/*----------------------------------------------------
	sp ハンバーガーメニューcss
----------------------------------------------------*/
.menu-ani-button{
	cursor: pointer;
	position: absolute;
	width:30px;/*---線の長さ---*/
	height:25px;/*---線の太さ長さによって調整---*/
	margin-top:12px;
}
.bar,.bar:before,.bar:after{
	height: 3px;/*---線の太さ---*/
	border-radius:3px;
	width: 100%;
	background-color: #106133;
	transition: all .25s;
	position: absolute;
}
.bar {
	left: 0;
	top: 10px;
}
.bar:before {
	content: "";
	left: 0;
	top: -10px;
}
.bar:after {
	content: "";
	left: 0;
	top: 10px;
}

.menu-animated .bar {
	background-color: transparent;
	transition: all .25s;
}
.menu-animated .bar:before {
	transition: all .25s;
	content: "";
	transform: rotate(45deg);
	top: 0px;
}
.menu-animated .bar:after {
	transition: all .25s;
	content: "";
	transform: rotate(-45deg);
	top: 0px;
}

/*----------------------------------------
ナビゲーション(ヘッダー)
----------------------------------------*/
#head-navi{
	padding:15px 0;
/* 	background:#999; */
}
#head-navi > ul {
	text-align: center;
	display: table;
	table-layout: fixed;
}
#head-navi > ul > li {
	position:relative;
	display: table-cell;
	vertical-align:middle;
/* 	border-right:1px dotted ; */
}
#head-navi > ul > li:first-child {
/* 	border-left:1px dotted ; */
}
#head-navi > ul > li > a {
	padding: 5px 0;
	display: block;
	font-size:16px;
	color:#fff;
}
#head-navi > ul > li > a:hover {
	opacity:0.5;
}

@media screen and (max-width:650px){
	#head-navi{
		display:none;
		width:100%;
		background:#fff;
		z-index:10;
		position:fixed;
		top:60px;
		left:0;
		right:0;
		padding:0;
	}
	#head-navi > ul{
		display:block;
	}
	#head-navi > ul > li {
		list-style:none;
		border-top: 1px dotted;
		display:block;
		text-align:left;
	}
	#head-navi > ul > li:first-child {
		border-top:none;
	}
	#head-navi > ul > li > a {
		font-size:13px;
		display: block;
		padding-top: 15px;
		padding-bottom: 15px;
		padding-left: 10px;
		color:#333;
	}
	#head-navi > ul > li > a:hover {
		opacity:0.5;
	}
}
/*----------------------------------------
ナビゲーションPC(フッター)
----------------------------------------*/
.foot-contact-wrap .logo-wrap {
	min-width:400px;
}
#foot-navi-pc{
	padding:20px 0;
}
#foot-navi-pc > .ul-wrap > ul {
	display: flex;
}
#foot-navi-pc > .ul-wrap > ul > li {
border-left:1px solid #999;
padding:0 20px;
}
#foot-navi-pc > .ul-wrap > ul > li:first-child {
}
#foot-navi-pc > .ul-wrap > ul > li > a {
	display: block;
	font-size:14px;
}
#foot-navi-pc > .ul-wrap > ul > li > a:hover {
	opacity:0.5;
}
@media screen and (max-width:650px){
	.foot-contact-wrap .logo-wrap {
		min-width:300px;
		width:100%;
		text-align:center;
	}
}
/*----------------------------------------
ナビゲーションSP(フッター)
----------------------------------------*/
#foot-navi-sp > .ul-wrap > ul > li > a {
	display: block;
	color: #555;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 32px;
	border-top: 1px solid #FFF;
	border-bottom: 1px solid #AFAFAF;
	background: url(../images/top_111.png) no-repeat 95% center;
	text-shadow: 0px -1px 0px #FFF !important;
}
#foot-navi-sp > .ul-wrap > ul > li {
	border-top: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	background: #fff;
}
#foot-navi-sp > .ul-wrap > ul > li > a:hover {
	opacity:0.5;
}
