@charset "UTF-8";
body {
    word-wrap:break-word;
}

img {
	width: 100%;
	height: auto;
}
.brssp, .brtab {
	display: none;
}
.mbtm {
	margin-bottom: 80px!important;
}
.sp {
	 display: none;
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Header
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
#header {
	width: 100%;
	max-width: 1116px;
	margin: 0 auto;
	height: 85px;
	position: relative;
	z-index: 10000;
}
.logo {
	width: 250px;
	position: absolute;
	top: 18px;
	left: 0;
}
.logo img {
	width: 100%;
	height: auto;
}
.header_btn {
	position: absolute;
	right: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 360px;
	padding: 30px 0 0;
}
.header_btn li {
	margin-left: 10px; 
}
.sp_btn {
	display: none;
}

@media screen and (max-width: 1115px) {
.logo {
	width: 200px;
	top: 22px;
	left: 20px;
}
.header_btn {
	right: 20px;
}
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
gloval navi
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
#gnaviBox {
	width: 100%;
	height: auto;
	background: url(../img/common_img/gmenu_bg.jpg) repeat-x top left;
	background-size: auto 100%;
	z-index: 2147483647;
	position: relative;
}
#gnaviBox ul li.li01 {
	background: url(../img/common_img/gmenu_line.jpg) no-repeat top left;
	padding-left: 3px;
}
.gmenu {
  *zoom: 1;
  list-style-type: none;
	width: 100%;
  max-width: 1116px;
  margin: 0 auto;
	display: flex;
	background: url("../img/common_img/gmenuline.png") no-repeat left top;
}
.gmenu:before, .gmenu:after {
  content: "";
  display: table;
}
.gmenu:after {
  clear: both;
}
.gmenu li {
  position: relative;
  width: 14.28%;
	box-sizing: border-box;
  margin: 0;
  padding: 0;
  text-align: center;
	
}
.gmenu > li a {
  display: block;
  margin: 0;
	padding: 15px 0;
	box-sizing: border-box;
  background: url("../img/common_img/gmenuline.png") no-repeat right top;
  color: #fff;
  font-size: 12px;
  line-height: 1.6em;
  text-decoration: none;
}
.gmenu > li a span {
	display: block;
	font-size: 90%;
	color: #4365C1;
}

.gmenu li ul {
  list-style: none;
  position: absolute;
  z-index: 9999;
	width: 100%;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
}
.gmenu li ul li {
  width: 100%;
}
.gmenu li ul li a {
  padding: 8px 10px;
  border-top: 1px solid #2c3d62;
  background: url(../img/common_img/subm_bg.png) repeat top left;
  text-align: center;
}
.gmenu li:hover > a {
  background: #204391 url("../img/common_img/gmenuline.png") no-repeat right top;;
}
.gmenu li ul li a:hover{
  background: url(../img/common_img/subm_bg_on.png) repeat top left;
}
@media screen and (max-width: 1000px) {
.gmenu li a {
  font-size: 10px;
}
.gmenu li ul li a {
  padding: 8px 2px;
}
}
#flip > li{
  perspective: 500px;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
}
#flip li ul{
  visibility: hidden;
  transform: rotateX(-82deg);
  transform-origin: 50% 0;
  transition: .3s;
}
#flip li:hover ul{
  visibility: visible;
  transform: rotateX(0);
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Footer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
#footerBox {
	width: 100%;
	background: #8a8a8a;
}
.footer {
	width: 90%;
	max-width: 1110px;
	margin: 0 auto;
	position: relative;
	padding: 40px 0 40px;
	display: flex;
	flex-wrap: wrap;
}
.footer a {
	color: #FFF;
	font-size: 12px;
	text-decoration: none;
}
.footer a:hover {
	text-decoration: underline;
}
#pagetop {
	position: absolute;
	top: -33px;
	right: 0px;
	cursor: pointer;
}
.fb01 p {
	color: #FFF;
	font-size: 14px;
	font-weight: bold;
}
.fb01 {
	width: 25%;
	box-sizing: border-box;
	border-left: #FFF solid 1px;
	padding-left: 20px;
	margin-bottom: 45px;
}
.fb01 ul li {
	line-height: 1.6em;
}
.fb01 ul {
	margin-bottom: 20px;
}
.btmlink {
	width: 300px;
	display: flex;
	flex-wrap: wrap;
}
.btmlink li {
	background: url(../img/common_img/arrow.gif) no-repeat left center;
	padding-left: 10px;
	margin-right: 20px;
}
.cr {
	color: #FFF;
	width: calc(100% - 300px);
	position: relative;
	right: 0;
	text-align: right;
	font-size: 12px;
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
TOP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
#topslide {
	width: 100%;
	height:	480px;
}
.topbnrBox {
	width: 100%;
	padding: 40px 0;
	background: #ececec;
	margin-bottom: 40px;
}
.topbnrBox ul {
	max-width: 1116px;
	width: 96%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.topbnrBox ul li {
	width: 31.33%;
}
.topCont ul {
	max-width: 1116px;
	width: 96%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.topCont ul li {
	width: 32.33%;
	min-height: 300px;
	border: #ececec 4px solid;
	float: left;
	margin: 0 0 30px;
	box-sizing: border-box;
}
@media screen and (max-width: 1050px) {
.topCont ul {
	width: 90%;
	max-width: 800px;
}
.topCont ul li {
	width: 48%;
	padding-bottom: 15px;
}
}
.linkBox01 a:link,.linkBox02 a:link,.linkBox03 a:link {
	color: #000;
	font-size: 13px;
	line-height: 1.4em;
}
.linkBox01 a:hover,.linkBox02 a:hover,.linkBox03 a:hover {
	text-decoration: none;
}
.linkBox01 {
	padding: 10px 0 0 15px;
	box-sizing: border-box;
}
.linkBox02 {
	padding: 10px 0 0 15px;
	box-sizing: border-box;
	width: 50%;
	float: left;
}
.linkBox03 {
	padding: 10px 0 0 15px;
	box-sizing: border-box;
	width: 50%;
	float: left;
}
.topCont2 {
	max-width: 1116px;
	width: 96%;
	margin: 10px auto 80px;
}
@media screen and (max-width: 1050px) {
.topCont2 {
	max-width: 1116px;
	width: 90%;
	margin: 10px auto 60px;
}
}
/*	トップニュース
------------------------------------*/
.newsTitle {
	padding: 0 0 10px;
	width: 40%;
	max-width: 137px;
}
.topNews {
	width: 67%;
	max-width: 700px;
	height: 375px;
	float: left;
}
.topNewsin {
	width: 100%;
	color: #000;
	font-size: 16px;
	padding-top: 10px;
	height: 280px;
	overflow:hidden;
	padding-left:0px;
}
.article {
	width: 95%;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: solid 1px #000;
}
.article .date {
	display: table-cell;
	float: left;
	width: 100%;
	font-weight: bold;
}
.article .ntitle {
	padding-left: 10px;
	display: table-cell;
	float: right;
	width: 100%;
	color: #1c5aa5;
}
.article .ntitle a {
	color: #1c5aa5;
}
.article .ntitle a:hover {
	text-decoration: none;
}

/*	トップミニバナー
------------------------------------*/
.topsub { 
	width: 32.33%;
	max-width: 362px;
	float: right;
}
.topsub ul li {
	padding-bottom: 8px;
}
.topsub ul li img {
	width: 100%;
	height:auto;
	}
.bcb {
	text-align: center;
	margin-bottom: 10px;
}
.bcbsp {
	display: none;
}
/*トピックパス
--------------------------------------------------------------------------- */
#topicPath {
	width: 96%;
	max-width: 1110px;
	padding: 20px 0 10px;
	margin: 0 auto;
} 
#topicPath li {
	display:inline;
	line-height:110%;
	list-style-type:none;
	font-family: Verdana, Geneva, sans-serif;
	font-size: 11px;
	color: #000;
}  
#topicPath li a {
	font-size: 11px;
	padding-right:14px;
	color: #000;
	background-image: url(../img/common_img/tp_line.gif);
	background-repeat: no-repeat;
	background-position: right center;
	text-decoration: underline;
}
#topicPath li.nolink {
	font-size: 11px;
	padding-right:14px;
	color: #000;
	background-image: url(../img/common_img/tp_line.gif);
	background-repeat: no-repeat;
	background-position: right center;
	text-decoration: none;
}

/*基礎パーツ
--------------------------------------------------------------------------- */
#contBox {
	width: 100%;
	margin: 0 auto;
	padding: 10px 0 50px;
}
.contBox100 {
	width: 100%;
	margin: 0 auto;
	padding: 10px 0 0;
}
.h101 {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 45px;
	height: 200px;
	border: 2px solid #efefef;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
}
.h1box {
	width: 300px;
	height: 100%;
	box-sizing: border-box;
	display: flex;
  align-items: center;
}
.h1box h1 {
	flex: 1;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1.8em;
}
.h1c {
	text-align: center;
}
.h1box h1 span {
	display: block;
	font-size: 13px;
	font-weight: 400;
}
.h1bg {
	width: calc(100% - 300px);
	height: 100%;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: cover;
}
.h1_com .h1bg {
	background-image: url("../img/h1n_img/h1n_outline.jpg");
}
.h1_about .h1bg {
	background-image: url("../img/h1n_img/h1n_about.jpg");
}
.h1_awards .h1bg {
	background-image: url("../img/h1n_img/h1n_awards.jpg");
}
.h1_training .h1bg {
	background-image: url("../img/h1n_img/h1n_training.jpg");
}
.h1_recruit .h1bg {
	background-image: url("../img/h1n_img/h1n_recruit.jpg");
}
.h1_mission .h1bg {
	background-image: url("../img/h1n_img/h1n_mission.jpg");
}
.h1_message .h1bg {
	background-image: url("../img/h1n_img/h1n_top.jpg");
}
.h1_psales .h1bg {
	background-image: url("../img/h1n_img/h1n_psales.jpg");
}
.h1_privacy .h1bg {
	background-image: url("../img/h1n_img/h1n_privacy.jpg");
}
.h1_contact .h1bg {
	background-image: url("../img/h1n_img/h1n_contact.jpg");
}
@media screen and (max-width: 1115px) {
.h101 {
	width: 96%;
	height: 150px;
}
}
.h201 {
	margin: 0 auto 50px;
	display: table;
	border-bottom: #1e408a solid 4px;
	font-size: 18px;
	font-weight: bold;
	padding: 0 5px;
}
.h301 {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 10px;
}
.catch01 {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	padding: 30px 0 100px;
}
.catch04 {
	width: 90%;
	max-width: 550px;
	padding: 30px 0 50px 5%;
}
.catch05 {
	width: 90%;
	max-width: 750px;
	padding: 30px 0 50px 5%;
}
.catch_btmp01 {
	padding-left: 5%;
	font-size: 15px;
	max-width: 600px;
}
.catch_btmp02 {
	padding-left: 55px;
	font-size: 15px;
	width: 900px;
	margin-bottom: 50px;
}
.catch02 {
	width: 80%;
	max-width: 750px;
	margin: 0 auto;
	padding: 0 0 100px;
}
.catch03 {
	width: 80%;
	max-width: 650px;
	margin: 0 auto;
	padding: 40px 0 80px;
}
.img_c01 {
	width: 90%;
	max-width: 850px;
	margin: 0 auto;
}
.tblue {
	color: #1e408a;
}
.wrap55 {
	width: 90%;
	margin: 0 auto;
	max-width: 1100px;
	padding: 0;
}
.wrap105 {
	width: 90%;
	margin: 0 auto;
	max-width: 1100px;
	padding: 0;
}
.wrap100 {
	width: 100%;
	padding: 50px 0;
	margin: 70px 0;
}
.wrap1116 {
	width: 90%;
	margin: 0 auto;
	max-width: 1100px;
	padding: 0;
}
.wrap1000 {
	width: 90%;
	margin: 0 auto;
	max-width: 1000px;
	padding: 0;
}
.cs {
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	margin: 100px 0 300px;
}
.pmini {
	font-size: 11px;
}
/*会社概要
--------------------------------------------------------------------------- */
.outlineWrap {
	width: 96%;
	max-width: 1100px;
	margin: 0 auto 70px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.outlineBox {
	width: 70%;
	padding-left: 0;
}
.outline_photo {
	width: 27%;
	padding-right: 0;
}
.mapBox {
	width: 96%;
	max-width: 1100px;
	height: 400px;
	position: relative;
	margin: 0 auto 100px;
}
.mapBox iframe {
	width: 100%;
	height: 100%;
}
.table_outline {
	width: 100%;
	border-top: 1px #cecece solid;
	margin-bottom: 80px;
}
.table_outline td,
.table_outline th{
	padding: 10px 10px 10px 20px;
	border-bottom: 1px #cecece solid;
	vertical-align: top;
	line-height: 1.6em;
}
.table_outline th{
	width: 19%;
	text-align: left;
	background: #f6f5f5;
}
.table_outline  a {
	color: #000;
}
/*社長挨拶
--------------------------------------------------------------------------- */
.topmsg {
	width: 80%;
	margin: 0 auto;
	padding: 0 0 200px;
}
/*企業ミッション
--------------------------------------------------------------------------- */
.mp01 {
	font-size: 115%;
	font-weight: bold;
}
.mp02 {
	color: #1e408a;
	padding-bottom: 3px;
}
.mp03 {
	border-bottom: dotted 1px #dedede;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
/*人材育成
--------------------------------------------------------------------------- */
.ep01 {
	font-size: 115%;
	font-weight: bold;
	color: #1e408a;
	padding-bottom: 3px;
}
.ep02 {
	border-bottom: dotted 1px #dedede;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
/*採用情報
--------------------------------------------------------------------------- */
.table_yoko {
	width: 96%;
	max-width: 1000px;
	margin: 0 auto 65px;
	border-top: 1px #cecece solid;
}
.table_yoko td,
.table_yoko th{
	padding: 10px 10px 10px 20px;
	border-bottom: 1px #cecece solid;
	vertical-align: top;
	line-height: 1.6em;
}
.table_yoko th{
	width: 15%;
	text-align: left;
	background: #f6f5f5;
}
.table_yoko  a {
	color: #000;
}
.commentBox {
	width: 90%;
	max-width: 900px;
	margin: 0 auto 60px;
	background: #1e408a;
	box-shadow: 0 0 0 6px #fff, 0 0 0 8px #1e408a;
}
.commentTitle {
	text-align: center;
	padding: 40px 0 10px;
	color: #FFF;
	font-size: 24px;
	font-weight: 600;
}
.cp01 {
	color: #FFF;
	line-height: 1.6em;
	padding: 10px 10% 40px;
}
.cp02 {
	color: #FFF;
	font-weight: bold;
	line-height: 1.6em;
	padding: 0 10% 5px;
}
.staff_img {
	text-align: center;
	margin-bottom: 60px;
}
/*表彰実績
--------------------------------------------------------------------------- */
.awards_ul {
	margin-bottom: 100px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.awards_ul li {
	width: 14.66%;
	min-height: 250px;
	text-align: center;
	padding: 0 1% 0;
	margin: 0 0 25px;
}
.awards_ul li p {
	padding: 10px 0 0;
	font-size: 11px;
	line-height: 1.2em;
}
@media screen and (max-width: 1115px) {
.awards_ul li {
	width: 18%;
	text-align: center;
	padding: 0 1% 0;
	margin: 0 0 15px;
}
}
/*プライバシーポリシー
--------------------------------------------------------------------------- */
.privacyUl {
	margin: 0 120px;
	padding: 35px 0;
}
.privacyUl li {
	list-style-type: decimal;
	list-style-position: outside;
	line-height: 1.6em;
	padding-bottom: 15px;
}
	
/*フォーム
--------------------------------------------------------------------------- */
.form {
	text-align: left;
	max-width: 800px;
	width: 100%;
	margin: 50px auto;
}
.form table {
	border: 1px solid #ccc;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.form table .abs {
margin-left: 3px;
color: #f00;
}
.form table th {
background: #eee;
border-bottom: 1px dashed #ccc;
width: 20%;
}
.form table td {
border-bottom: 1px dashed #ccc;
}
.form table th,
.form table td {
padding: 10px;
vertical-align: top;
text-align: left;
font-weight: normal;
}
.form table td.submit {
border: 0;
text-align: center;
}
.form table td, .form table th{
	padding: 10px;
	font-size: 12px;
	color: #333;
}
#submitbox {
	text-align: center;
	padding: 15px;
}
.formbt {
	text-align: center;
	padding-bottom: 15px;
}
.red {
	color: #F00;
}
.form input {
	padding: 2px;
	font-size: 13px;
}


.catch_about {
	width: 80%;
	max-width: 600px;
	margin: 0 auto 0;
	padding: 60px 0;
	position: relative;
}
.aboutBox {
	background: url(../img/company_img/about_bg.jpg) no-repeat center top;
	height: 1400px;
}
@media screen and (max-width: 1115px) {
.aboutBox {
	background: url(../img/company_img/about_bg.jpg) no-repeat center top;
	background-size: cover;
	height: auto;
	padding: 80px 0 200px;
}
}
.about_img01 {
	max-width: 730px;
	width: 60%;
	margin: 0 auto;
}

.mt {
display: inline-block;
width: 6.5em;
}
.aqbtn {
	text-align: center;
}

.tb {
	font-weight: bold;
}

#menuArea {
	display: none;
}



.youtube2 {
  position: relative;
	width: 720px;
	height: 405px;
	margin: 0 auto 80px;
}
.youtube2 iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.mtop {
	margin-top: 60px;
}