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

.mt-5 {margin-top: 5rem !important;}

.mb-5{margin-bottom: 5rem !important}

.text-right {
	text-align: right;
}

.f-24 {font-size: 24px;}

.pc_br {display: block;}

.comp_img {text-align:center;}
	
.r-h3 {padding-left: 3rem;}

body {
	overflow-x:hidden!important;
  overflow:visible !important;
}

#wrapper {
	overflow-x:hidden!important;
	overflow:visible !important;
}

#recruit_colum   {
  width: 100%;
  display: -webkit-flex;
  display: flex;
}

#main_colum   {
   width: 100%;
   margin-right: 20px;
}  

#sub_colum   {
  width: 250px;
}

#sub_contents {
	position: sticky;
  margin-bottom: 0;
  top: 10px;
  z-index: 1;
}

.recruit_colum {
  width: 100%;
	clear:both;
	margin-bottom:40px;
}

.recruit_colum:after {
	content:"";
	display:block;
	height:0px;
	clear:both;
	visibility:hidden;
}

.recruit_colum .column1{
	width:47%;
	float:left;
	margin-right:6%;
}

.recruit_colum .column2 {
	width:47%;
	float:left;
}

div.recruit_box {
	width:100%;
}

.recruit_colum div.recruit_box a{
	display:block;
	color: #1a59a8;
	border-top:3px solid #003782;
	font-weight:bold;
	font-size:2rem;
	padding:14px 0 0;
	text-decoration:none;
	margin-bottom: 0;
}

.recruit_colum div.recruit_box a:hover {
	text-decoration:none;
	background: rgba(238,244,255,1.00);
}

.recruit_colum .column1 img,
.recruit_colum .column2 img{
	padding:0;
	box-sizing:border-box;
	width: 100%;
	margin-top: 1rem !important;
}

.recruit_colum div.crecruit_box p {
	margin-top:10px;
}

/* side */
#sub_contents p {
	font-size: 1.6rem;
	color: white;
	background: #173979;
	text-align: center;
	padding: 0.5rem 0;
	margin-bottom: 0;
}

/*  side_list  */
ul#side_list {
  padding: 0;
}

ul#side_list li {
  line-height: 1.5;
  padding: 1rem 0 1rem 3rem;
  list-style-type: none!important;/*ポチ消す*/
	font-size: 1.4rem !important;
	border-bottom: 2px solid #7f7f7f;
	color: #173979;
  position: relative;
}

ul#side_list li a:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f054";
  position: absolute;
  left: 0.25em;/*アイコンの位置*/
  top: 1rem;/*アイコンの位置*/
  color: #173979; /*アイコン色*/
	font-weight: 900;
}

ul#side_list li a {display: block;}

ul#side_list li:hover {
  background: #EEF4FF;
}

/* table */
.c-table{
	border-left:solid 1px #dcdcdc;
  border-top:solid 1px #dcdcdc;
  border-bottom:solid 1px #dcdcdc;
	margin-bottom: 20px;
}

.c-table th{
	padding:2rem 1.4rem;
	font-size:14px;
	background: rgba(244,249,255,1.00);
  border-right:solid 1px #dcdcdc;
  border-bottom:solid 1px #dcdcdc;
  text-align: left;
	width: 20%;
}

.c-table td{
	padding:5px 10px;
	font-size:14px;
	text-align: left;
	border-right:solid 1px #dcdcdc;
	border-bottom:solid 1px #dcdcdc;
	line-height: 2;
	width: 80%;
}

.c-table p {margin-bottom: 0;}


/* 社員の声　*/
	.v-title {
    overflow: hidden;
    align-items: center;
    background: #003782;
    color: #fff;
    height: 40px;
    line-height: 40px;
    display: flex;
		font-size: 2rem;
		padding: 1rem 0;
    position: relative;
		margin-bottom: 0;
	}

  .v-title:before,
  .v-title:after {
    content: "";
    flex: 1;
    background: #fff;
    padding: 3px 0;
    height: 0;
    transform: rotate(-45deg);
  }
	
	.v-span {
	  position: absolute;
    left: 0;
		font-size: 8rem;
    filter:alpha(opacity=20);
    -moz-opacity: 0.2;
    opacity: 0.2;	}
	
	.v-text {
  	margin-bottom: 3rem;
		padding: 1rem 2rem;
		background: rgba(237,244,255,0.50);
	}
	p.v-text:first-letter{
		font-size: 2.5rem;
    color: #003782;
	}
	
blockquote {
    position: relative;
    padding: 10px 10px 10px 32px;
    box-sizing: border-box;
    color: #ffffff;
    background: #003782;
	  margin-bottom: 2rem;
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    content: "\f10d";
    font-family: "Font Awesome 5 Pro";
    color: #003782;
    font-size: 22px;
    line-height: 1;
    z-index: 2;
    font-weight: 900;
}

blockquote:after{
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    border-width: 0 0 40px 40px;
    border-style: solid;
    border-color: transparent #ffffff;
}

blockquote p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 2;
	  color: #ffffff;
	  font-size: 1.6rem;
}
	
.v-a {
	color: white;
	text-decoration: underline;
}

.v-a:hover {
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.comp_img img {width: 100%;}
	
	
  .pc_br {display: none;}
	.sm_br {display: block;}
	
	.box {
		display: block;
	  padding: 1rem;
	}
	
  .box-left {
	  width: 100%;
		margin-bottom: 2rem;
  }
  
  .box-right {
	  width: 100%;
  }
  
  .box-right iframe {
  	width: 100%;
  	height: 260px;
  }
	
/*　社員の声　*/
  .v-title {
    overflow: hidden;
    align-items: center;
    background: #003782;
    color: #fff;
    height: 20px;
    line-height: 10px;
    display: flex;
		font-size: 2rem;
		padding: 1rem 0 1rem 1rem;
    position: relative;
		margin-bottom: 0;
	}

	.v-span {
		font-size: 5rem;
  }
	
  .v-title:before,
  .v-title:after {
    content: "";
    flex: 1;
    background: #fff;
    padding: 3px 0;
    height: 10;
    transform: rotate(-60deg);
	}
	
	.recruit h4 {
		font-size: 1.8rem !important;}
	
}
	
@media screen and (max-width: 1000px) {
  body,
  #wrapper{
  	overflow:hidden!important;
  }

  #recruit_colum   {
    width: 100%;
    display: -webkit-block;
    display:block;
  }

	#main_colum {
		width: 100%;
    margin-right: 0;
  }
	
	#sub_colum {
		width: 100%;
	}
	
}


@media screen and (max-width: 480px) {
	.v-title {
    overflow: hidden;
    align-items: center;
    background: #003782;
    color: #fff;
    height: 40px;
    line-height: 30px;
    display: block;
		font-size: 1.8rem;
		padding: 1rem 0 3rem 3rem;
		margin-bottom: 0;
	}
  .v-title:before,
  .v-title:after {
		display: none;
	}
	
	.v-span {
		font-size: 8rem;
		line-height: 0.7;
  }
	
  blockquote {
    padding: 20px 10px 10px 22px;
  }

}
	

