@charset "UTF-8";

/*---------------------mv_text---------------------------*/
#mv .mv_text.wmode_horizontal>div {
	height:100%;
	padding: calc((77vh - 560px)/ 2) 10vw 0 0;
	align-items: flex-start;
	justify-content: flex-start;
	margin-right: 0;
}
#mv .mv_text.wmode_horizontal h2{
	display: inline-block;
	line-height: 1!important;
}

#mv .mv_text.wmode_horizontal p,
#mv_outer #mv .mv_text.wmode_horizontal p.static{
	padding-top: 0;
	padding-right: 40px;
	display: inline-block!important;
	line-height: 1.8!important;
}
#mv .mv_text.wmode_horizontal p+ p{
	line-height: 1!important;
}

#mv .mv_text.wmode_horizontal div .text-combine {
	text-orientation: upright;
	vertical-align: sub;
}


@media screen and (max-width: 600px) {
	#mv{
		height: 600px;
	}
	#mv .mv_text.wmode_horizontal>div {
		padding: calc((600px - 446px)/ 2) calc(50px - 5%) 0 0;
	}
	#mv .mv_text.wmode_horizontal h2 {
		font-size: 27px !important;
	}

	#mv_outer #mv .mv_text.wmode_horizontal p {
		font-size: 1.9rem!important;
		padding-right: 15px;
	}
	#mv .mv_text.wmode_horizontal h2+p {
		margin-top: 0;
	}
#mv .mv_text.wmode_horizontal p,
#mv_outer #mv .mv_text.wmode_horizontal p.static {
    padding-right: 20px;
}
}

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

@media screen and (max-width:600px){
	#first_hr+div{
		padding-top: 50px;
	}
}
/*---------------------新着求人情報のデザイン変更---------------------------*/

#recruit + section .inner_item_txt{
    padding: 10px 20px 10px 30px !important;
}

#recruit + section .wrapper_item {
	flex-flow: column;
	margin-bottom: 0;
}

#recruit + section .inner_item {
  display: flex;
  flex-flow:row;
  justify-content: flex-start;
  border:none;
  width: 100%;
  margin:0 auto 50px;
}
#recruit + section .inner_item:last-child{
	margin-bottom: 0;
}

#recruit + section .inner_item_img{
  width:25%;
  background:transparent!important;
}

#recruit + section .inner_item_img a{
  padding-top: 46%;
}

#recruit + section .inner_item_txt{
  width:75%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  position:relative;
  padding: 10px 20px;
}

#recruit + section .inner_item_txt p.station,
#recruit + section .inner_item_txt .heading.block_header_4 {
  width: 100%;
}

#recruit + section .inner_item_txt .heading.block_header_4 {
  margin-bottom: 0;
}

#recruit + section .inner_item_txt .heading.block_header_4 .h{
  margin-bottom: 0;
}

#recruit + section .inner_item_txt .contents_btn01{
    text-align: left;
    margin: 5px 0 0 0;
}

#recruit + section .inner_item_txt .contents_btn01 a {
    width: initial!important;
    background: transparent;
    color: var(--i_main_color);
    font-weight: bold;
    padding: 0;
    border:none!important;
}

#recruit + section .inner_item_txt .contents_btn01 a:hover{
    border:none;
    opacity:0.7;
}

#recruit + section .inner_item_txt .contents_btn01 a span {
    padding: 0;
    text-decoration: underline;
}

#recruit + section .inner_item_txt .contents_btn01 a:after {
    content: none;
}
@media screen and (max-width:1200px){
	#recruit + section > .content_wrapper{
		padding: 0 60px;
	}
}

@media screen and (max-width:630px){
  #recruit + section .inner_item {
    flex-flow: column;
  }

  #recruit + section .inner_item_img{
    width:100%;
  }

  #recruit + section .inner_item_txt{
	width:100%;
	padding: 10px 0 0!important;
  }

  #recruit + section .inner_item_txt .contents_btn01{
    position: initial;
    transform: initial;
  }
#recruit + section .inner_item_txt .contents_btn01{
    margin: 10px 0 0 0;
}


}

@media screen and (max-width:730px){
   #recruit + section .inner_item {
      width:100%;
    }
}


@media screen and (min-width:631px) and (max-width:1210px){
  #recruit + section .inner_item {
    justify-content: space-between;
    margin:0 auto 30px;
  }

  #recruit + section .inner_item_img{
    width:37%;
  }

  #recruit + section .inner_item_txt{
    width:63%;
  }

  #recruit + section .inner_item_txt .contents_btn01{
    position: initial;
    transform: initial;
  }

}

/*---------------------主な仕事内容---------------------------*/
#top_service1+div > .content_wrapper{
	display: flex;

	align-items: flex-end;
}
#top_service1+div .heading.block_header_6{
	margin-bottom: 0;
}
#top_service1+div .content_wrapper a{
	margin-left: 50px;
}
#top_service2+div .inner_item{
	width: auto!important;
	min-width: 37%;
}
@media screen and (min-width: 901px) {
	#sp_btn+.contents_btn01 {
		display: none;
	}
}

	
@media screen and (max-width: 900px) {
	#top_service1+div > .content_wrapper{
		display: block;
	}
	#top_service1+div > .content_wrapper a{
		display: none;
	}
	#top_service2+div .wrapper_item{
		display: block;
	}
	#top_service2+div .inner_item{
		width: 100%!important;
		margin: 0 auto!important;
	}
	#top_service2+div .inner_item .inner_item_txt{
		text-align: center;
		margin-top: 5px;
	}
	#top_service2+div .inner_item:last-child .inner_item_txt{
		margin-top: 0;
	}
}
@media screen and (max-width:600px){
	#top_service1+div{
		padding-top: 50px;
	}
	#top_service2+div{
		padding-bottom: 30px;
	}
	top_service2+div .inner_item .inner_item_txt{
		margin-top: 5px!important;
	}
	#top_service2+div .inner_item:last-child .inner_item_txt{
		margin-top: 0!important;
	}
}


/* --------福利厚生調整------------------------------- */
.welfare_list {
  display:flex;
  flex-flow:row;
  justify-content: center;
  width: 100%;
  gap: 5%;
  margin: 0 auto;
}

.welfare_item {
  width: min(20%,200px);
  list-style: none!important;
  padding-left: 0!important;

}
.welfare_title {
  text-align: center;
  font-weight: bold;
}

.welfare_image {
  background-color:var(--i_main_color);
  border-radius:50%;
  padding: 50px;
}
  .welfare_title {
	  margin-top: 10px;
  }

@media screen and (min-width:900px) {
  .welfare_title {
    font-size:2rem;
	  margin-top: 15px;
  }
  #welfare + section .welfare_image img{
	transform: scale(0.8)
  }
}

@media screen and (min-width:768px) and (max-width:900px){
  .welfare_list {
    width:90%;
  }
}

@media screen and (min-width:601px) and (max-width:767px){
  .welfare_list {
    width:100%;
  }
.welfare_item {
  width: min(24%,200px);
}
}

@media screen and (max-width:600px) {
  .welfare_list {
    flex-flow:column;
    align-items: center;
    gap: 105px;
  }
	#welfare+section{
		padding-top: 50px;
		padding-bottom: 75px;
	}
	.welfare_image{
		width: 20%;
		margin: auto;
	}
	#part0+section{
		padding-top: 50px;
	}
}

@media screen and (max-width:400px) {
  .welfare_title {
    font-size:6vw;
  }

  .welfare_item {
    width: 50vw;
  }
}

@media screen and (min-width:401px) and (max-width:600px) {
  .welfare_title {
    font-size:5vw;
  }

  .welfare_item {
    width: 40vw;
  }
}


#welfare + .contents_box01 .inner_item_txt,
#welfare_2 + .contents_box01 .inner_item_txt,
#welfare_3 + .contents_box01 .inner_item_txt,
#welfare_1 + .contents_box01 .inner_item_txt{
    max-width: 40%;
}
#welfare + .contents_box01 .wrapper_item,
#welfare_2 + .contents_box01 .wrapper_item,
#welfare_3 + .contents_box01 .wrapper_item,
#welfare_1 + .contents_box01 .wrapper_item{
    justify-content: space-around;
}
/*---------------------余白調整---------------------------*/
@media screen and (max-width:600px) {
	div[id*="nbp2140022"]{
		padding-bottom: 50px!important;
	}
}


/*---------------------代表からみなさまへ---------------------------*/
#top_seo1 + section >.content_wrapper{
    background: rgba(255, 255, 255, 0.85) !important;
    padding: 60px;
    width: 96%;
}
#top_seo1 + section .heading.block_header_6,
#top_seo1 + section .wrapper_item{
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
#top_seo1+section .inner_item_txt .contents_btn01{
	padding-top: 60px;
}
#top_seo1+section .inner_item_txt .contents_btn01 > .content_wrapper{
	text-align: left;
}
#top_seo1+section .inner_item_img{
	background: transparent!important;
}
#top_seo1+section .inner_item_txt{
	padding-right: 10%;
}



@media screen and (max-width:900px){
	#top_seo1+section .inner_item_txt .contents_btn01 > .content_wrapper{
		text-align: center;
	}
	#top_seo1+section .heading.block_header_6 .h{
		text-align: center;
	}
}

@media screen and (max-width: 600px) {
	#top_seo1 + section >.content_wrapper{
		width: calc(100% - 40px);
		padding: 75px 40px;
	}
	#top_seo1 + section.contents_box01.block_image_text_8 .inner_item_img{
		max-width: 100%!important;
		padding-top: 100%!important;
	}
	#top_seo1 + section{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	#top_seo1+section .inner_item_txt .contents_btn01{
		padding-top: 30px;
	}

}



/*---------------------TOP会社概要---------------------------*/
#top_access + div .wrapper_item .inner_item_img {
  background:initial!important;
}

@media screen and (max-width: 700px){
	#top_access + div.widget_shop01 dt {
		border-bottom: 1px dotted #909090!important;
	}
}

/* --------------------メンバー紹介------------------------------ */
#top_staff+.widget_staff01{
	padding-top: 150px;
}
#top_staff+.widget_staff01 > .content_wrapper{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
#top_staff+.widget_staff01 .heading {
	width: 100%;
}
#top_staff+.widget_staff01 .wrapper_item{
	width: 65%;
	margin: 0;
}
#top_staff+.widget_staff01 .contents_btn01{
	width: auto;
	margin-top: auto;
	margin-right: 30px;
}
#top_staff+.widget_staff01 .contents_btn01 a{
	margin-bottom: 0;
}
#top_staff+.widget_staff01 .inner_item{
	margin-bottom: 0;
}
#top_staff+.widget_staff01 .inner_item_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 20%;
}
@media screen and (max-width: 900px) {
	#top_staff+.widget_staff01 .wrapper_item{
		width: 100%;
		margin: 0;
	}
	#top_staff+.widget_staff01 .contents_btn01{
		margin-top: 50px;
		margin-right: auto;
		width: 100%;
	}
	#top_staff + .widget_staff01 .inner_item{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		padding: 0;
		align-items: flex-end;
		margin-left: 0;
		margin-bottom: 20px;
	}
	#top_staff + .widget_staff01 .inner_item:last-child{
		margin-bottom: 0;
	}
	#top_staff + .widget_staff01 .inner_item_img{
		width: 30%;
		height: calc((100vw - 60px)* 0.3)!important;
	}
	#top_staff + .widget_staff01 .inner_item_txt{
		width: 70%!important;
		padding-left: 15px;
		box-sizing: border-box;
	}
	#top_staff +.widget_staff01 .inner_item .inner_item_txt .heading{
		margin-top: 0!important;
		margin-bottom: 15px;

	}
}
@media screen and (max-width: 600px) {
	#top_staff+.widget_staff01{
		padding-top: 50px;
		padding-bottom: 50px;
	}
}


/*---------------------社長日記--------------------------*/
#top_news + div{
	padding-top: 150px;
}
#top_news + div>.content_wrapper{
	display: flex;
	flex-wrap: wrap;
}
#top_news + div .heading.block_header_3{
	width: 100%;
}
#top_news + div .content_wrapper li{
	border-top:none;
	border-bottom:none;
	margin-bottom:15px;
}
#top_news + div .content_wrapper li:nth-of-type(3),
#top_news + div .content_wrapper li:nth-of-type(4){
	margin-bottom: 0;
}
#top_news + div .content_wrapper li a{
	padding: 0px 0 0px 228px;
	min-height: 133px;
}
#top_news + div .content_wrapper li a>*{
	padding-left:0;
}

#top_news + div .content_wrapper li a div p{
	font-weight: 400;
}
#top_news + div .content_wrapper li a div p:first-child{
	font-weight: 600;
}
#top_news+.block_news_1.add_design6 .content_wrapper ul{
	width: calc(100% - 350px);
}
#top_news+.block_news_1.add_design6 .contents_btn01{
	width: auto;
	margin-top: auto;
	margin-right: 30px;
	margin-left: auto;
}
#top_news+.block_news_1.add_design6 .contents_btn01 a{
	margin-bottom: 0;
}
#top_news + div .content_wrapper li a p:before {
    content:none;
}
.block_news_1.add_design6 .content_wrapper li a {
    align-content: flex-end;
}

#top_news + div .content_wrapper li a div p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
@media screen and (max-width: 900px) {
	#top_news+.block_news_1.add_design6 .content_wrapper ul{
		width: 100%;
	}
	#top_news+.block_news_1.add_design6 .contents_btn01{
		margin-right: auto;
		padding-top: 50px;
	}
}
@media screen and (max-width: 850px) {
	#top_news+.block_news_1.add_design6 .content_wrapper li a span {
		width: 30%;
		padding: 0 0 calc((100vw - 60px)* 0.3) 0;
		top: calc(50% - (100vw - 60px)* .3/2);
	}
	#top_news+.block_news_1.add_design6 .content_wrapper li a{
		padding: 10px 0 10px calc(30% + 15px)!important;
		min-height: calc((100vw - 60px)* 0.3);
	}
	#top_news + div .content_wrapper li:nth-of-type(3){
		margin-bottom: 15px;
	}
	#top_news+.block_news_1.add_design6 .content_wrapper li a p:nth-last-of-type(2) {
		font-weight: 600!important;
		margin: 5px 0;
	}
}
@media screen and (max-width: 600px) {
	#top_news+.block_news_1{
		padding-top: 50px;
		padding-bottom: 50px;
	}
}
/*---------------------施工事例--------------------------*/
#top_gallery + div{
	padding-top: 150px;
	padding-bottom: 200px;
}
#top_gallery + div>.content_wrapper{
	display: flex;
	flex-wrap: wrap;
}
#top_gallery + div .heading.block_header_3{
	width: 100%;
}
#top_gallery+div .wrapper_item{
	width: 65%;
	margin: 0;
	padding-bottom: 0;
}
#top_gallery+div .contents_btn01{
	width: auto;
	margin-top: auto!important;
	margin-right: 30px;
}
#top_gallery+div .contents_btn01 a{
	margin-bottom: 0;
}
#top_gallery+div .inner_item{
	margin-bottom: 0;
}
@media screen and (max-width: 900px) {
	#top_gallery+div .wrapper_item{
		width: 100%;
		padding-bottom: 50px;
	}
	#top_gallery+div .contents_btn01{
		margin-right: auto;
	}
	
}
@media screen and (max-width: 600px) {
	#top_gallery+div{
		padding-top: 50px; 
		padding-bottom: 100px;
	}
}

/*--------------------仕事内容（下部）-------------------------*/
/*#top_works+section{
	padding-bottom: 150px;
}
#top_works+section>.content_wrapper{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#top_works+section .heading.block_header_3{
	width: 100%;
}
#top_works+section .wrapper_item{
	width: calc(100% - 360px);
	margin: 0;
	padding-bottom: 0;
	align-items: stretch;
}
#top_works+section .contents_btn01{
	width: auto;
	margin-top: auto!important;
	margin-right: 30px;
}
#top_works+section .contents_btn01 a{
	margin-bottom: 0;
}
#top_works+section .inner_item{
	margin-bottom: 0;
}
#top_works+section .inner_item_txt{
	margin-top: auto;
}
#top_works+section .inner_item_img img{
	height: 100%;
	object-fit: cover;
}
#top_works+.contents_box01 .inner_item_txt .heading {
  margin-bottom: 10px;
}
@media screen and (max-width: 900px) {
	#top_works+section .wrapper_item{
		width: 100%;
	}
	#top_works+section .contents_btn01{
		margin-right: auto;
		margin-left: auto;
		padding-top: 50px;
	}
}
@media screen and (max-width: 600px) {
	#top_works+section{
		padding-bottom: 75px;
	}
}
*/
/* --------画像の背景色------------------------------- */

#employee + .widget_staff01 .inner_item_img{
    background-color: #f1f1f1 !important;
}
/* --------見出し変更------------------------------- */
.index .heading.block_header_3{
	padding: 5px 10px 5px 30px;
}
.index .heading.block_header_3 .h{
	font-size: 1.65rem;
}
@media screen and (max-width: 800px) {
	.index .heading.block_header_3{
		padding: 5px 5px 5px 40px;
	}
	.index .heading.block_header_3 .h{
		font-size: 1.65rem;
	}
}
/*--------------------タイトル中央に----------------------*/
@media screen and (max-width: 900px) {
	#top_seo1+section .heading.block_header_6 {
	  align-items: center;
	}
#top_service1 + .contents_btn01 .heading.block_header_6 {
    align-items: center;
}
}
