@charset "utf-8";



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

会社概要

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

/* 会社情報のトップ画像 */
.back_title-company {
    height: 100px;
    padding: 0;
    background: url(../../company/img/title_back-b.jpg?250327) left top -20px no-repeat!important;
    background-size: 100%!important;
}

.management {
	width:100%;
	margin: 20px auto 0 auto;
	position: relative;
}

.management img {
	width:100%;
	margin: 0 auto;
}

.imege-contents {
	text-align: center;
}

.c-bottom {
	margin-bottom:-40px;
}

.buil-pc {
		display:none;
	}

.yajirusi {
	font-size:30px!important;
	text-align: center;
	font-weight: 900;
	color: #323232;
	margin-top:-40px;
}

.kanri {
	bottom:40px;
	position: relative;
	z-index: 3;
}

.buil {
	text-align: center;
	font-size:12px;
	background-color: #1A589E;
	color:#fff;
	padding:6px 10px;
	margin:0;
}

.b-banner {
	text-align: center;
}

.b-color {
	background-color:#9acd32;
	color:#fff;
}

.b-cap {
	border-bottom:solid 1px #9acd32;
	border-top:solid 1px #9acd32;
	color:#9acd32;
	padding:2px 0;
	margin-bottom:6px;
}

.contents-top {
	margin-bottom:20px;
}

table {
	box-sizing: border-box;
	margin-top:10px;
	margin-bottom:40px;
}

table tr th {
	width:30%;
}

table tr td {
	width:75%;
}

table .b-cap {
	text-align: center;
	font-weight: 900;
}

table.b-table tr th {
	width:39%;
}

table.b-table tr td {
	width:60%;
}
    

table.b-table tbody tr th {
	background-color:#9acd32;
	border-bottom:solid 1px #fff;
	vertical-align: middle;
	padding:10px!important;
	color:#fff;
}

table tbody tr th {
	background-color:#dfdfdf;
	border-bottom:solid 1px #fff;
	vertical-align: middle;
	padding:10px!important;
	color:#333;
}

table tr td a {
	color: #1A589E;
    text-decoration: underline;
}

table tr td a:hover {
	text-decoration: none;
	color:#87cefa;
}

table tbody td {
	border-bottom:solid 1px #dfdfdf;
	vertical-align: middle;
	padding:10px;
}

table tbody td.last {
	border-bottom:none;
}

.align-right {
	display: inline-block;
	float: right;
}

.construction-txt {
  text-align: center;
  font-size: 20px !important;
  font-weight: 600;
}
@media screen and (max-width:767px) {
.construction-txt {
  font-size: 100% !important;
} 
}

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

会社情報

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

.back_title h2,
.back_title h2 span {
	text-shadow: 1px 1px 2px #aaa;
 	}
	

.img_negishi{
	padding:10px 0 40px;
	text-align:right;
	}
	
.box_company01{
  display: flex;
	margin:0 0 40px;
	}
	
.box_company01_left{
	width:430px;
	}
	
.box_company01_right{
	width:200px;
  margin: 0 auto;
	}

.historybar {
	margin-top:40px;
}

.accesslist dt,
.historylist dt {
	font-size:12px;
	font-weight: 900;
	margin-top:10px;
	color:#1A589E;
}

.accesslist dd,
.historylist dd {
	border-bottom:1px solid  #1A589E;
	padding:0 0 10px 0;

}

.patent-contact {
	padding:10px;
	border:solid 2px #1A589E;
	color:#1A589E;
	display:block;
	text-align: center;
	width:75%;
	margin:20px auto;
	position: relative;
	font-weight: 900;
	font-size:12px;
}

.patent-contact::after {
	font-family: FontAwesome;
	content: '\f105';
	font-weight: 900;
	position: absolute;
	top:8px;
	right:10px;
}

.patent-contact:hover {
	border:solid 2px #1A589E;
	color:#fff;
	background-color:#1A589E;
}

.access-b {
	font-size:12px;
	margin:10px 0 40px 0;
	display: block;
}


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

.kaigyo {
	display: block;
}

.kaigyo-r {
	display:none;
}
/* ------------------------

事業所一覧 

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

.bar-office h3 {
	margin:50px 0 20px 0;
	padding:10px 15px;
	background:#E5ECF4;
	line-height:1.4;
	font-size:129%;
	font-weight:bold;
	}

.bar-office h3.first {
	margin:0 0 20px 0;
	}

.shop {
	width:100%;
}

.office-flex {
	margin-bottom:20px;
	display: block;
}

.office-flex ul {
	margin:-10px 0;
}

.office-address {
	font-size:14px;
}

.office-tel {
	font-size:16px;
	font-weight: 900;
}

.telmark {
	padding:1px 6px;;
	background-color:#dc143c;
	color:#fff;
	font-size:10px;
	display:inline-block;
	position: relative;
	top:-2px;
	left:0;
	margin-right:5px;
}

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

事業内容

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

.c-bottom {
	margin-bottom:20px;
}

.kaigyo1 {
		display:none;
}
	

.b-photo img {
	width:100%;
	height:auto;
}

.b-copy {
	margin-bottom:10px;
}

.b-box img {
		width:100%;
		height:auto;
		margin:0 0 20px 0;
	}
.b-block p {
	margin-bottom: 20px;
}

.bar01sub {
	margin-top:40px;
}

.b-bottom {
	margin:30px auto 40px auto;
	text-align: center;
}

.p-contact {
	color:#333;
	font-size:12px;
	font-weight: 900;
	border-bottom:dotted 1px #333;
	margin-top:10px;
	margin-bottom:10px;
}

.b-contact-tel {
	color:#dc143c;
	font-size:20px!important;
	font-weight: 900;
	margin-bottom:-6px;
	position: relative;
	
}

.b-telmark {
	color:#fff;
	background-color:#dc143c;
	width:50px;
	margin:-5px 10px 0 4px;
	display: inline-block;
	padding:0 6px;
	font-size:12px;
	font-weight: 900;
	text-align: center;
	position: relative;
	bottom:4px;
}

.b-contact {
	font-size:14px;
	font-weight: 900;
	margin-bottom:4px;
}

.b-contact-bottom {
	margin-bottom:40px;
	margin-top:16px;
	font-size:12px;
}

.b-dl dt,
h4 {
	font-weight: 900;
	font-size:18px;
	border-bottom: 3px solid #dfdfdf;
	margin:40px 0 10px 0;
	padding-bottom:5px;
}

.b-copy h4 {
	margin-top:40px;
}

.b-dl dt:first-child {
	margin:0 0 10px 0;
}

.bu-ul {
	margin:12px 0;
}

.bu-li {
	font-size:16px;
	font-weight: 900;
	color:#004593;
	list-style-type:disc;
	list-style-position: inside;
	padding-left:16px;
	text-indent: -16px;
	margin:5px 0 5px 3px;
}
.btn-wrap-flex01 {
  display: flex;
  justify-content: center;
  margin-top: 1em;
}
.btn-wrap-flex01 >a:not(:first-of-type) {
  margin-left: 1.5rem;
}
.pdf-btn {
  display: block;
  color: #004593;
  border: solid 1px #004593;
  text-align: center;
  transition: 0.2s ease-in-out;
  width: 100%;
  max-width: 320px;
  padding: .85em 1em 1em;
}
.pdf-btn:hover {
  color: #fff;
  background-color: #004593;
  transition: 0.2s ease-in-out;
}
.pdf-btn > span {
  position: relative;
  padding-right: 1.5em;
}
.pdf-btn > span::after {
  content: "";
  display: inline-block;
  position: absolute;
  background-image: url(../img/pdf.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 15px;
  height: 16px;
  right: 0;
  bottom: 0;
}
.blue-btn{
	display: block;
	width: 100%;
	max-width: 320px;
  border: solid 1px #004593;
	background-color: #004593;
	color: #ffffff;
	text-align: center;
	padding: .85em 1em 1em;
}
.blue-btn:hover {
  color: #004593;
  border: solid 1px #004593;
  background-color: #fff;
  transition: 0.2s ease-in-out;
}

@media screen and (max-width:767px) {
.btn-wrap-flex01 {
  flex-direction: column;
  align-items: center;
}
.btn-wrap-flex01 >a:not(:first-of-type) {
  margin: 1em 0 0 0;
}
.pdf-btn {
  padding: .5em .85em .5em;
}
.blue-btn {
  padding: .5em .85em .5em;
}
}


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

会社情報

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

.back_top01 {
	width:100%;
	padding:60px 0 45px;
	background:#E5ECF4;
 	}
	
.box_top01 {
	max-width:1080px;
	margin:0 auto;
 	}


.box_top02 {
	max-width:980px;
	margin:0 auto;
	padding:75px 0 80px;
	text-align: center;
 	}


.box01 a{
	padding:0 0 15px;
	display:block;
	background:#E5ECF4;
	text-align:center;
	color:#004593;
	font-size:122%;
	font-weight:bold;

 	}
	

.box01 a:hover {
	background:#004593;
	color:#FFF;
 	}
	
.box01 a img{
	margin:0 0 15px;
	display:block;
 	}
	
.box01 {
	width:30%;
 	}



.box01 a:hover {
	background:#004593;
	color:#FFF;
 	}

.info-flex {
	display: flex;
	justify-content: space-between;
	margin-bottom:40px;
}


.box_top02 {
	padding:25px 15px;
 	}

.illust-b-pc {
	display:block;
	margin:10px auto;
	text-align: center;
}
	
.illust-b-pc img {
	width:75%;
}

.illust-b-sp {
	display:none;
}

@media screen and (max-width:767px) {
.illust-b-pc {
	display:none;
}


.illust-b-sp {
	margin:10px auto;
	text-align: center;
	display: block;
}

.illust-b-sp img {
	width:75%;
	margin:0 auto;
	text-align: center;
}
	

}

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

.c-bottom {
	margin-bottom:-10px;
}
	

	
.info-flex {
	display: block;
	margin-bottom:0;
}

.box_top02 h2 {
	margin:0 0 20px;
	padding:0 0 15px;
	font-size:200%;
	}

	
.box01 {
	width:100%;
	margin:0 auto 30px;
 	}

.box01 a {
	padding:0 0 15px;
	font-size:100%;	
}

.box01 a img{
	width:100%;
 	}

.img_negishi{
	padding:5px 5px 25px;
	}
	
.img_negishi img {
	width:130px;
	}
	
.box_company01 {
  flex-direction: column;
	margin:0 0 25px;
	}
	
.box_company01_left {
	width:100%;
	margin:0 0 10px;
	}
  
.box_company01_right{
  width: 120px;
}
	
.box_contents_left {
		margin-bottom:30px;
	}

.b-bottom {
	margin:20px auto -10px auto;
	text-align: center;
}

.strong-size {
	height:auto!important;
	}
}


@media screen and (min-width:1079px) {
  .back_title {
    width:100%;
    height:280px;
    padding:80px 0 0;
    background: url(../../company/img/title_back-b.jpg) left top 40px no-repeat!important;
    background-size: 100%!important;
  }
  .back_title-company {
    background: url(../../company/img/title_back-b.jpg?250327) center top -80px no-repeat !important;
  }
	
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

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

事業内容

------------------------*/
.kaigyo1 {
		display: block;
	}


.contents-top {
	margin-bottom:20px;
	magin-top:-20px;
	}


.b-box h4,
.b-copy h4 {
	margin-top:0;
}

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

.b-box {
		width:48%;
	}
	
.b-box img {
		width:100%;
		height:auto;
	}

.b-copy {
	float:left;
	width:48%;
	}
	
.b-photo {
	float:right;
	width:50%;
	height:230px;
	margin-top:6px;
	background-color:#dfdfdf;
	}
	
.b-even-img {
	float:left;	
	}
	
.b-even {
	float:right;
	}
	
section.b-block {
	margin-bottom:40px;		
	}


.historylist dt {
	float:left;
	width:25%;
	margin:0;
	padding:10px 0;
	font-size:14px;
	box-sizing: border-box;
	border-bottom:1px solid  #1A589E;
}

.historylist dd {
	font-size:14px;
	float:right;
	width:75%;
	margin:0;
	padding:10px 0;
	box-sizing: border-box;
}
	
.accesslist dt {
	font-size:14px;
}
	
.accesslist dd {
	font-size:16px;
}

.kaigyo {
	display:none;
}
	
.kaigyo-r {
	display:block;
}
	
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
	
.patent-contact {
	width:50%;
}

	
/*   事業所一覧  */

.bar-office h3 {
	margin:0 0 20px 0;
	}

.shop {
	width:48%;
}

.office-flex {
	display:flex;
	justify-content: space-between;
	margin-top:20px;
	margin-bottom:50px;
}

}

.pdf_link{
	margin-top: 10px;
}

.pdf_link a {
    color: #004593;
}

.pdf_link a:hover{
	text-decoration: underline;
}

.bg-blue-link {
	margin-top: 1em;
}
.pdf_link a.bg-blue-link:hover{
	text-decoration: underline;
}
.bg-blue-link {
	display: inline-block;
    background-color: #edf5fe;
    font-weight: bold;
    color: #275593;
    padding: .4em .5em;
    font-size: 16px;
}

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

企業理念

------------------------*/
.txt-lead span {
  display: block;
  margin-bottom: .4em;
}

.txt-lead span:nth-child(n+2) {
  margin-left: 2em;
}

.txt-lead span:nth-child(n+3) {
  margin-left: 4em;
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.ol_list {
  padding-left: 1.6em;
}

.ol_list ::marker {
  color: #004593;
  font-weight: bold;
}

/*　採用情報　*/
/*　文中の幅にimgを中央揃えにする設定（.mainbiを随時、文字数+1em にすること）　*/
.mainbi {
	max-width: 27em;
}
.mainbi img{
  display: block;
  margin: auto;
  width: 130px;
  margin-top: 1em;
}

@media screen and (min-width:1079px) {
/*　沿革　*/
.strong-size {
	height:65px!important;
	display: flex;          /* 1 */
    justify-content: flex-start;/* 2 */
    align-items: center; 
	box-sizing: border-box;
}

.sp_off {
	display:block;
}
}

.dl-margin {
	margin-top:50px;
}

@media screen and (max-width:767px) {
.sp_off {
	display:none;
}

}

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

採用情報

------------------------*/
.recruit_wrap {
  display: flex;
  justify-content: center;
}
.recruit_Kul_logo {
  max-width: 150px;
  padding: 22px 20px 20px;
  border: 1px solid #004593;
}
.mynavi_link {
  max-width: 300px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  position: relative;
  transition: all 0.2s ease-in;
  background-image: linear-gradient(135deg, rgba(29, 32, 135, 1) 0%, rgba(0, 91, 170, 1) 70%, rgba(0, 138, 213, 1) 100%);
  transition: all 0.2s ease-in;
}
.mynavi_link::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background-image: linear-gradient(135deg, rgba(29, 32, 135, 1) 0%, rgba(0, 91, 170, 1) 50%, rgba(0, 138, 213, 1) 100%);
}
.mynavi_link:hover::after {
  opacity: 0;
}
.mynavi_link p {
  font-size: 18px;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 1;
}
.mynavi_link p > span {
  display: inline-block;
  font-size: .8em;
  margin-top: 5px;
}
.mynavi_link .arrow {
  position: relative;
  padding-right: 1em;
  margin-right: 10px;
  margin-left: 10px; 
}
.mynavi_link .arrow::before,
.mynavi_link .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: .7em;
  height: 2px;
  border-radius: 9999px;
  background-color: #fff;
  transform-origin: calc(100% - 1px) 50%;
  transition: all 0.2s ease-in;
}
.mynavi_link .arrow::before {
  transform: rotate(40deg);
}
.mynavi_link .arrow::after {
  transform: rotate(-40deg);
}
.mynavi_link:hover .arrow::before,
.mynavi_link:hover .arrow::after {
  right: -5px;
}

@media screen and (min-width:1079px) {

}
@media screen and (max-width:1079px) {
  .mynavi_link p {
    font-size: 16px;
  }
}
@media screen and (max-width:767px) {
  .recruit_Kul_logo {
    max-width: 120px;
    padding: 15px 12px 13px;
  }
}