/* IMPORT RESET */
@import url("reset.css");

/* IMPORT 12 COLUMN RESPONSIVE GS */
@import url("responsive.gs.12col.css");


/*	for Typekit */
/*
html {
	visibility: hidden;
}
html.wf-active {
	visibility: visible;
}
*/

/* for Flexbox
----------------------------- */
html, body, main {
	height: 100%;
}
html {
	/* 	overflow: auto; */
}
body {
	font-family: source-han-sans-cjk-ja, sans-serif;
	color: #333;
	font-size: 16px;
	overflow-x: hidden;
}

/* loading */
#loader-bg {
	background: #fff;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	z-index: 200;
}

#loading {
	position: relative;
	left: 50%;
	top: 50%;
	margin: -100px 0 0 -100px;
}
#loading img {
	width: 200px;
	height: auto;
}


#main-contents {
}

/* Basics
----------------------------- */

.sp {	display: block; }
.pc { display: none; }

@media ( min-width : 959px ) { /* +960px */
	.sp { display: none; }
	.pc { display: block; }
	.brsp {display: none; }
}



.col.sp0 {	/* empty column */
	height: 0;
}

@media ( min-width : 959px ) { /* +960px */
	.col.sp0 {
	height: auto;
	}
}



.img-responsive {
	width: 100%;
	height: auto;
}
.img-responsive_no {
	width: 100%;
	height: auto;
}
.img-rsp {
	width: 90%;
	height: auto;
	margin: 0 auto;
}
.center {
	text-align: center;
}
@media ( min-width : 959px ) { /* +960px */
	.img-rsp {
	width: 100%;
}
}


/* color / text */

h2 {
	font-size: 1.8rem;
	color: #333;
}
h2.l1 {
	margin-left: 1rem;	
}
h3 {
	font-size: 1.4rem;
	font-weight: 700;
	color: #333;
}

h4 {
	font-size: 1.2rem;
	color: #333;
}

h5 {
	font-size: 1rem;
	color: #333;
	font-weight: 700;
}
.right {
	float: right;
	clear: both;
}

@media ( min-width : 959px ) { /* +960px */
}

b { color: #3300FF; font-weight: 900;}

.em08 { font-size: 80%; }
.em09 { font-size: 90%; }
.em10 { font-size: 100%; }
.em11 { font-size: 110%; }
.em12 { font-size: 120%; }

.caption {
	font-size: 88%!important;
	margin-left: 1rem!important;
}

.mt2 { margin-top: 2rem; }



/****** Menu ******/

#head {
	position: fixed;
	width: 100%;
	height: 84px;
	background: #fff;
	z-index: 99;
	top: 0;
}

#menu {
/* 	position: fixed; */	/* 左寄せ回避 */
	width: 100%;
	background: #fff;
	height: 84px;
	z-index: 100;
	top: 0;
}
#menu h1 {
	width: 60%;
	height: auto;
	margin: 15px 0 0 15px;
}
#menu ul {
	display: none;
}


@media ( min-width : 959px ) { /* +960px */
	#overlay_menu {
		display: none;
	}
	#menu {
		max-width: 1440px;
		margin: auto;
		padding: 0;
	}
	#menu h1 {
		width: 400px;
		margin: 20px 0 0 10px;
	}
	#menu ul {
	  margin: 0;
	  padding: 0;
	  display: -webkit-flex;
	  display: flex;
	  flex-direction: row;
	  list-style: none;
	}
	
	#menu li {
	  margin: 15px 10px;
	  padding: 0px;
	  line-height: 1;
	  color: #333;
	}
	
	#menu li:first-child { /* logo */
	   margin: -8px auto 0 0;
	   padding: 0; 
	   width: 420px;
	   height: 72px;
/*
	   background: url(/img/logo_izumi-engineering_420-50.png) no-repeat;
	   background-size: contain;
	   overflow: hidden;
	   text-indent: 100%;
	   white-space: nowrap;
*/
	}
	#menu li:last-child {
	  border: 2px solid #a3a3a3;
  	  border-radius: 5px;
	  color: #333;
	  background: #fff;
	}
	
	#menu li a {
	  display: block;
	  margin: 0;
	  padding: 16px 0px;
	  color: #333;
	  text-decoration: none;
	}
	#menu li a:link, menu li a:visited {
	color: #333;
	text-decoration: none;
	transition: .4s;
	}
	#menu li a:hover {
		color: #3300ff;
		transition: .4s;
	}
}

@media ( min-width : 1023px ) { /* +1024px */
	#menu li a {
		  padding: 16px 10px;
	}
}




/*
	header
	---------------------------------- */

header[role="header"] {
	width: 100%;
/* 	height: 100vh; */
	height: auto;
	margin-top: 84px;
}


/* Video
----------------------------- */

.video-wrap {
/*
	background-color: #000;
	position: relative;
	/*   z-index: -10; *
	width: 100%;
	/* padding-top: 56.25%; *
*/
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: -100;
/* 	background: url(xxx.jpg) no-repeat; */
	background-size: cover;
}
/*
.video-wrap iframe {
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}
*/



video#top-mov {
	display: block;
	/*   max-width: 100%; */
	/* 	width: auto; */
	width: 100%;
	height: auto;
	margin: 84px auto 0 auto;
	overflow: hidden;
	z-index: -100;
}

#bg-video {
	/*  making the video fullscreen  */
	position: relative;
	right: 0; 
	bottom: 0;
	min-width: auto; 
	min-height: 100%;
	width: auto;
	height: 100%;
	height: 100vh;
	z-index: 1;
	overflow: hidden;
}


.overlay-bg {
	background-color: rgba(255, 255, 255, 0.3);
	position:absolute;
	left:0;
	width:100%;
	height:100%;
	top:0;
	right:0;
	z-index: 1;
	
}

header[role="header"] .catch_pc {
	display: none;
}

.catch_sp {
	width: 100%;
	height: auto;
	animation: fadeIn 8s ease 0s 1 normal;
	-webkit-animation: fadeIn 8s ease 0s 1 normal;
	margin: 220px auto 20px auto;
	z-index: 10;
}
@keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
0% {opacity: 0}
100% {opacity: 1}
}
.catch-box {
	width: 100%;
	height: auto;
	background-color:rgba(255, 255, 255, 0.9);
	padding: 40px 36px;
	justify-content: center;
	align-items: center;
}


header[role="header"] .catch .catch-box > h1 {
	width: 100%;
	font-size: 1rem;
	text-align: center;
	color: #3300FF;
}
header[role="header"] .catch .catch-box > h1 img {
	width: 80%;
	margin: auto;
}

@media ( min-width : 424px ) { /* +425px */
	.catch_sp {
		display: none;
	}
	header[role="header"] .catch_pc {
		width: 40%;
		height: 50vh;
/* 		background-color:rgba(255, 255, 255, 0.8); */
		margin-left: 8%;
		
		animation: fadeIn 8s ease 0s 1 normal;
	-webkit-animation: fadeIn 8s ease 0s 1 normal;
	
		display: flex;
		justify-content: center;
		align-items: center;
	}
}
@media ( min-width : 959px ) { /* +960px */
	header[role="header"] {
		min-height: 60vh;
		background-attachment: fixed;
	}
	
	.catch-box > h1 {
		width: 80%;	
		margin-left: 2rem;
	}
	.catch-box > h1 img {
		width: 100%;
		margin: 0 auto;
	}
}
@media ( min-width : 1159px ) { /* +1200px */
	.catch-box > h1 {
		width: 70%;
	}
}
@media ( min-width : 1399px ) { /* +1400px */
	.catch-box > h1 {
		width: 60%;
	}
}

@media ( min-width : 959px ) { /* +960px */
	#logo {
	width: 100px;
	top: 20px;
	left: 50px;
}
	#logo img {
		width: 100px;
	}
}



/*
	Main Contents
---------------------------------- */

/* flexbox 上下中央揃え*/
/*
main {
	display: flex;
	justify-content: center;
	align-items: center;
	}
*/


section {
	position: relative;
	width: 100%;
	min-height: 30vh;
	background-color: #fff;
}


article[role="introduction"] {
	position: relative;
	/* 	margin-bottom: 100px; */
}


/* LINK */
article[role="introduction"] a {
	color: #3300FF;
	/* 	transition: 1.0s; */
}
article[role="introduction"] a:link {
	text-decoration: underline;
	font-weight: 900;
	color: #3300FF;
}
article[role="introduction"] a:active, article[role="introduction"] a:visited {
	text-decoration: underline;
	color: #3300FF;
}
article[role="introduction"] a:hover {
	text-decoration: none;
	color: #3300FF;
	transition: .4s;
}


/* Buttons */
.btn-flat-logo {
  position: relative;
  display: inline-block;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  padding: 0.8rem 1.8rem 1rem;
  background: #333;
  transition: .4s;
  margin: 0 0 0.8rem 0;
}

.btn-flat-logo:hover {
  background: #505050;
}


.btn-flat-logo.cnsl {
	width: 12rem;
	text-align: center;
	background: #3300ff;
	border: 1px solid #3300ff;
}
.btn-flat-logo.cnsl:hover {
  background: rgba(52, 0, 255, 0.80);
}
.btn-flat-logo.tel {
	width: 12rem;
	text-align: center;
	background: #fff;
	color: #3300ff;
	border: 1px solid #3300ff;
}
.btn-flat-logo.tel:hover {
	border: 1px solid rgb(52, 0, 255, 0.40);
}


@media ( min-width : 959px ) { /* +960px */
	.btn-flat-logo {
		margin-top: 2rem;
	}
	.btn-flat-logo.cnsl {
		margin-right: 0.5rem;
	}
	.btn-flat-logo.tel {
		margin-left: 0.5rem;
	}
}

article[role="introduction"] .btn-flat-logo:link,
article[role="introduction"] .btn-flat-logo:active,
article[role="introduction"] .btn-flat-logo:visited,
article[role="introduction"] .btn-flat-logo:hover {
	color: #fff!important;
	font-weight: 100!important;
	text-decoration: none;
}

article[role="introduction"] .btn-flat-logo.tel:link,
article[role="introduction"] .btn-flat-logo.tel:active,
article[role="introduction"] .btn-flat-logo.tel:visited,
article[role="introduction"] .btn-flat-logo.tel:hover {
	color: #3300ff!important;
	font-weight: 500!important;
}



article[role="introduction"] > h1.ttl {
	font-size: 1.2rem;
	text-align: center;
	padding: 0 1rem;
	margin: 2rem auto 1rem auto;
}


/* Section Title */
article[role="introduction"] > .col > header {
	text-align: center;
}

article[role="introduction"] > .col > header > h2 {
	display: inline-block;
	font-size: 2.2rem;
	font-weight: 700;
	color: #6d6d6d;
	text-align: center;
	text-transform: uppercase;
	padding: 0 1rem 0.4rem;
	border-bottom: 2px solid #6d6d6d;
	margin: 0 auto;
}
article[role="introduction"] > .col > header > h3 {
	font-size: 1.2rem;
	color: #3300FF;
	text-align: center;
	margin-top: 0.6rem;
}
article[role="introduction"] > .col > header > h4 {
	font-size: 1.2rem;
	color: #333;
	text-align: left;
}

article[role="introduction"] > .col p {
	font-size: 1rem;
	line-height: 1.4rem;
	color: #333;
	text-align: left;
	padding: 0 2rem;
	margin: 2rem auto;
}
article[role="introduction"].bg_gray {
	background-color: #f2f2f2;
}


@media (min-width: 601px) and (max-width: 959px) { /* tablet  */
	article[role="introduction"] > .col p {
		font-size: 1rem;
		padding: 1.5rem;
	}
}


@media ( min-width : 959px ) { /* +960px */
	section.box70 {
		min-height: 60vh;
		margin-top: 100px;
		/* 		display: flex; */
	}
	article[role="introduction"] {
		background-color: #fff;
		padding: 50px 0 50px 0;
		margin-bottom: 0;
		/*display: flex;	 flexbox */
	}
	
	article[role="introduction"] > .col p {
		font-size: 1.1rem;
		line-height: 2rem;
		color: #333;
		padding: 1rem 2rem 0;
		margin: 0 auto 0 auto;
	}
	article[role="introduction"] > .vc img.img-responsive {
		margin-top: 4rem;
	}
}


/* basic articles */



/*
.col {
	border: 1px solid #f00;
	}
	*/

/****** INFORMATION ******/


/* News */


#news .topics {
	margin: 0 0 2rem 0;
}

#news .tw {
	width: 100%;
	max-height: 400px;
	padding: 0.5rem 1rem;
	margin: 1rem 0 1rem 0;
}
#news .twbtn {
	margin: 2rem auto 0 1rem;
}
#news dl, #contact dl {
	font-size: 1rem;
	line-height: 1.8rem;
	margin: 1rem;
}
#news dt, #contact dt {
	font-size: 0.9rem;
	font-weight: 900;
	margin-top: 1rem;
}
#news dd, #contact dd {
	font-size: 1rem;
	line-height: 1.6rem;
	margin-left: 1rem;
	margin-bottom: 0.2rem;
	border-bottom: 1px solid rgba(120, 120, 120, 0.46);
}
#news dd a:link {
	font-weight: 400;
	text-decoration: none!important;
}

#news .badge {
	background-color: #3300FF;
	width: auto;
	max-width: 8rem;
	padding: 0.3rem 0.6rem;
	margin-bottom: 0.4rem;
	margin-top: 1.6rem;
}
#news .badge.w {
	min-width: 17rem!important;
}
#news .badge.w p {
	text-align: left;
	margin-left: 1rem;
}
#news .badge p {
	font-size: 1rem;
	color: #fff;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}

@media ( min-width: 960px ) { /* +960px */
	#news .tw {
	max-height: 600px;
}
}




#photo-col-r {
	position: absolute;
	bottom: -160px;
	right: 0;
	z-index: 1;
	overflow: visible;
	margin-bottom: 0rem;
}



#photo-col-l {
	position: relative;
	z-index: 10;
	overflow: visible;
	margin-bottom: 4rem;
}

@media (min-width: 601px) and (max-width: 959px) { /* tablet  */
	#photo-col-r {
	position: relative;
	bottom: 0;
}
}



/*	Service
------------------------------ */

/* Service / Flexbox */

.flex_service {
	display: flex;

	justify-content: center;
	flex-direction: column; /* 縦ならび */
	text-align: center;
}

#service .flex-item {
/* 	width: 42%!important; */
	background-color: #fff;
	color:  #fff;
	padding: 2rem 1rem;
	margin: 1rem 1rem 0;
	
	text-align: center;
}

#service .flex-item:last-child {
	margin-bottom: 2rem;
}
#service .flex-item p {
	text-align: left!important;
}

.flex-item img {
	width: 150px;
	height: 150px;
	border-radius: 50%;
	margin-bottom: 1.4rem;
}
.flex-item > h4 {
	font-size: 1.2rem;
	font-weight: 700;
	text-align: center;
}
.flex-item > p {
	font-size: 0.85rem!important;
	line-height: 1.4rem!important;
	text-align: center!important;
}


@media ( min-width : 959px ) { /* +960px */
	.flex_service {
		flex-direction: row; /* 横並び */
	}
	.flex_service .flex-item {
		flex: 1;
		margin: 2rem 1rem;
	}
	#service .flex-item:last-child {
		margin-bottom: inherit;
	}
	.flex_service .flex-item.pc {
		border: none;
	}
/*
	.flex-item::before {
		content:"";
		display: block;
		width:22%;
		order:1;
	}
	.flex-item::after {
	  content:"";
	  display: block;
	  width:22%;
	}
	*/
}


/*	Recruit / Contact
------------------------------ */

#recruit h3, #recruit table {
	width: 96%;
	margin-left: 2%;
}
#recruit h3 {
	font-size: 1rem;
}

.para_c {
	width: auto;
	margin: 2.4rem auto;
}
.para_c p {
	text-align: center!important;
	line-height: 2rem;
	margin: 1rem auto!important;
}
.para_c_btn {
	text-align: center!important;
	margin: 2rem auto 2rem!important; 
}

@media ( min-width : 959px ) { /* +960px */
	#recruit h3 {
	font-size: 1.2rem;
	}
}


/*	/Service/
------------------------------ */
#cat-service {
	padding: 100px 0;
}

.public_head {
	width: 100%;
	background-color: #f2f2f2!important;
	padding: 1rem 0;
	margin: 2rem 0;
}

/*
#cat-service .contents {
	width: 100%;
	margin: auto;
	padding: 0;
}
*/

.cont-grid {
	display: -webkit-flex;
	display: flex;
	list-style: none;
	padding: 0;
	margin: 1rem auto;
	
	align-items: center;
}



.grid-cell {

	line-height: 2rem;
	color: #333;
	
	display: -webkit-flex;
	display: flex;
	/* align-items: center;  IE10-11 バグ */
	justify-content: center;
}

.cont-grid.title .grid-cell {
	background: transparent;
}


.grid-inner {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.flexible {
	flex: 1;
	flex-direction: column;
}

.fixed {
	width: 38%;
}
.grid-cell h3 {
	width: 94%;
	font-size: 0.9rem;
	color: #3300ff;
	margin: 0.5rem 1rem 0 0.5rem;
}
.grid-cell h3 span {
	margin-left: 0.6rem;
}

.grid-cell p {
	display: block;
	font-size: 0.9rem;
	color: #333;
	line-height: 1.8rem;
	text-decoration: none;
	padding: 0!important;
	padding: 0 1rem 0.5rem!important;
	margin: 0;

}

.badge {
	width: 40px;
	height: 40px;
	text-align: center;
	background-image: url("/img/cmn/badge_blue.png");
	background-position: center center;
	background-repeat: no-repeat;
	/*   background-attachment: fixed; */
	background-size: cover;
	line-height: 38px;
	font-size: 1.2rem;
	font-weight: 700;
	color: #fff;
	margin-left: 1rem;
}
h2.badge-h2 {
	font-size: 1rem;
	font-weight: 700;
	padding-top: 0;
	margin: 0 0 0 0.8rem!important;
}

img.thumb {
	width: 120px;
	height: 120px;
	object-fit: cover;
}


@media ( min-width : 959px ) { /* +960px */
	.fixed {
		width: 280px;
		margin-left: 0;
	}
	.badge {
		width: 3rem;
		height: 3rem;
		line-height: 2.8rem;
		font-size: 1.4rem;
		font-weight: 700;
	}
	h2.badge-h2 {
		font-size: 1.3rem;
		font-weight: 700;
		margin-left: 1rem;
	}
	.grid-cell h3 {
		width: 98%;
		font-size: 1rem;
		color: #3300ff;
		margin: 0.5rem 0 0 1rem;
	}
	.grid-cell h3 span {
		margin-left: 1rem;
	}
}




/*	/Company/
------------------------------ */
#cat-company {
	padding: 100px 0;
}
.rinen {
/* 	width: 80%; */
	font-family: source-han-serif-japanese, serif;
	font-weight: 300;
	font-style: normal;
	margin: 0 auto 0.5rem auto;
}
.rinen > p {
	font-size: 1.2rem;
	font-weight: 900;
	line-height: 1.8rem;
	margin: 0.5rem 1rem;
}
.rinen > p span {
	margin-left: 1rem;
}
.greeting {
	font-family: source-han-serif-japanese,serif;
	font-weight: 400;
	font-style: normal;
	padding: 0;
	margin: 1rem auto 0.5rem auto;
}
.greeting > p {
	padding: 0 1rem!important;
}
.greeting > p.right {
	margin-top: 1.6rem!important;
}
.greeting > p span {
	margin-left: 1rem;
}
.greeting > p img {
	width: 160px;
	height: auto;
	float: left;
	margin: 0 1.6rem 1rem 0;
}
#company_profile {
	margin: 1rem auto;
}
.org_chart {
	width: 90%;
	margin: 1rem auto;
	border: 1px solid #ccc;
}
#company_profile .appearance {
	width: 80%;
	margin: 2rem auto;
}
#company_profile .para_c_btn {
	margin: 2rem auto 2rem!important;
}

@media ( min-width : 959px ) { /* +960px */
	.rinen {
		width: 100%;
		margin: 1rem auto;
	}
	.rinen > p {
		font-size: 1.4rem;
		line-height: 2rem;
		margin: 0.5rem 0 1.5rem 0;
	}
	.greeting > p {
		padding: 0!important;
	}
	.greeting > p img {
	width: 200px;
}
	.org_chart {
		width: 680px;
	}
	#company_profile .appearance {
		width: 45%;
		margin: 2rem auto;
	}
	#company_profile .para_c_btn {
		margin: 0 auto 3rem!important;
	}
}

#access_info {}

.access_infom .logo {
	width: 80%;
	margin: 0 auto 1rem auto;
}
.access_infom .adress {
	width: 90%;
	margin: 1rem auto;
}
.access_infom .adress p {
	text-align: center;
	line-height: 2rem;
}
.access_infom .adress p span {
	margin-left: 1rem;
}
.gmap {
	width: 100%;
	margin: 2rem auto 4rem auto;
}

@media ( min-width : 959px ) { /* +960px */
	.access_infom .logo {
		width: 40%;
	}
	.access_infom .adress {
		width: 50%;
	}
	.access_infom .adress p {
		white-space: nowrap;
	}
}


/*	/recruit/
------------------------------ */
#cat-recruit {
	padding: 100px 0;
}




/*	Footer
------------------------------ */

footer {
	width: 100%;
	background: #979797;
	color: #000;
	padding: 3rem 0 5rem 0;
}

.foot-nav {
	padding-bottom: 2rem;
}
.foot-nav ul {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.foot-nav li {
	width: 8rem;
	height: 2rem;
	font-weight: 700;
	text-align: center;
}
.foot-nav li a:last-child {
	white-space: nowrap;
}

.foot-nav a:link, .foot-nav a:visited {
	color: #000;
	text-decoration: none;
	transition: .4s;
}
.foot-nav a:hover {
	color: #505050;
	transition: .4s;
}
.copyright p {
	text-align: center;
	font-size: 0.8rem;
	padding-top: .5rem;
	padding-bottom: 2rem;
}
.foot-bnr {
	width: 94%;
	margin: 0 3%;
}
.m-ems {
	width: 22%;
	height: auto;
	margin: 0 .5rem 0 0;
	float: left;
}
.pow {
	width: 74%;
	height: auto;
	margin: 0;
	float: right;
}
.m-ems img,
.pow img {
	width: 100%;
	height: auto;
}

.foot-bnr2 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	margin: 0;
}
.foot-bnr2 a {
	width: auto;
	height: 90px;
  margin: 0 5px 1rem;	
}
.foot-bnr2 img {
	width: auto;
	height: 100%;
}


@media ( min-width : 959px ) { /* +960px */
	.foot-nav ul {
 	   justify-content: flex-start;
	}
	.foot-nav li:last-child {
		width: 16.2rem;
	}
	.copyright p {
		font-size: 0.9rem;
		padding-bottom: 0;
		padding-top: .1rem;
	}
}







/* Google Map */

.map {
	width: 100%;
	/* 	min-height: 500px; */
	margin: 50px auto;
}
.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.gmap iframe, .gmap object, .gmap embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/* for layout */

.mt-1rem {
	margin-top: 1rem;
}

.box {
	width: 98%;
	margin-left: 1rem;
	margin-right: 1rem;
}


/* ----------
	table
	---------- */

table.tbl {
	font-size: 0.9rem;
	margin: 2rem auto;
	border: 3px solid #000;
}
.tbl th {
/* 	background: #3300FF; */
	background: #fff;
	border-top: solid 1px #000;
	border-right: solid 3px #000;
	color: #333;
	padding: 10px;
}
.tbl td {
	border-top: solid 1px #000;
	padding: 10px;
}
.tbl th,
	.tbl td {
		vertical-align: middle;
	}
.tbl td.cols {
	border-right: solid 1px #000;
}
.tbl span {
	margin-left: 1rem;
}

/* Company_Profile's table */
#company_profile table.tbl {
	width: 96%;
	margin-bottom: 4rem;
}
#company_profile table.tbl th,
#recruit table.tbl th {
	width: 6rem;
	text-align: center;
	background: #d5d5d5;
	padding: 0;
}
#company_profile table.tbl td.cols {
	width: 10rem;
}

@media ( min-width : 959px ) { /* +960px */
	.last td:last-child {
		border-bottom: solid 1px #ccc;
		width: 100%;
	}
	.tbl {
		width: 90%;
		margin: 20px auto;
		border: 5px solid #000;
	}
	.tbl th,
	.tbl td {
		border-bottom: none;
	}

	#company_profile table.tbl {
		width: 80%;
		margin-bottom: 4rem;
	}
	#company_profile table.tbl th {
		width: 8rem;
		text-align: center;
	}
	#company_profile table.tbl td.cols {
		width: 12rem;
	}
}


/*	Privacy
------------------------------ */
#cat-privacy {
	margin: 100px 0;
}
#privacy h2 {
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.6;
	margin: 1.6rem 0 0.4rem 0.5rem;
}

#privacy p {
	font-size: 1rem;
	line-height: 1.6;
	margin: 1rem 1rem 0 1rem;
}
#privacy p.head {
	margin-left: 0 1rem;
}

@media ( min-width : 959px ) { /* +960px */

}





/* ====================================
	FORM
	==================================== */
.bg_white {
	background-color: #fff;
}

.form {
	padding: 1rem;
}

/* 注意書き */
.form-notes {
    font-weight: bold;
    background-color: #ff00000a;
    padding: 1rem;
    border: 1px solid #e45151;
    margin-bottom: 2rem!important;
}

.form h3 {
	margin: 1.4rem 0 0 0;
}
.form p {
	text-align: left!important;
	padding-top: 0.4rem!important;
}
.form #subject {
	align-items: left!important;
}
/* .form input[type="text"], */
.form input,
.form textarea {
	padding: 0.8em;
	outline: none;
	border: 1px solid #DDD;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 16px;
}
.form textarea {
	width: 300px;
}
/* .form input[type="text"]:focus, */
.form input:focus,
.form texture:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}
/* .form input[type="text"], */
.form input,
.form textarea {
	padding: 0.8em;
	outline: none;
	border: 1px solid #DDD;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 16px;
}
.form textarea {
	width: 100%;
}

/* .form input[type="text"] */
.form input {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 100%;
}
/* .form input[type="text"]:focus */
.form input:focus {
	width: 100%;
}

.form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.form select {
	width: 100%;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #cfcfcf;
	background: #eee;
	background: url(../img/arrow01.png) right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#efebe1 100%);
	background: url(../img/arrow01.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#efebe1 100%);
	background-size: 20px, 100%;
}

.form_caution {
	font-size: 1rem!important;
	text-align: left!important;
}
.form hr {
	width: 70%;
	border: none;
	border-bottom: 1px solid #60b1a5;
}


/* ====================================
	Parallax
	==================================== */

/* ====================================
	simpleParallax
	==================================== */

/*
.thumbnail {
	width: auto;
	height: 400px;
	}
	@media ( min-width : 768px ) {
	.thumbnail {
		height: 400px;
	}
	}
	*/

/* object-fit JS */
.object-fit-img {
  object-fit: contain;
  font-family: 'object-fit: contain;'
}
/*
.object-fit-img {
  object-fit: cover;
  object-position: bottom;
  font-family: 'object-fit: cover; object-position: bottom;'
}
*/


/* WP SINGLE
--------------------------------- */
.alignright {
	float: right;
}
.alignleft {
	float: left;
}

img.alignright {
	margin: 0.5em 0 0.5em 1em;
}
img.alignleft {
	margin: 0.5em 1em 0.5em 0;
}

/* text */

#info-cms p {
	line-height: 1.8;
	margin: 0.5rem;
}
#info-cms p.date {
	font-size: 0.8rem;
	text-align: right;
	margin: 0 0.5rem 0.8rem 0;
}

.navig {
	overflow: hidden;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background: url(images/gray.gif) repeat-y 50% 0;
	margin-top: 2em;
	margin-bottom: 40px;
}
.navig > div {
	width: 50%;
}

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

.navig a {
	display: block;
	padding: 1em;
	border: none;
}
.navig a:hover {
	background: #efefef;
	color: #000;
}
.navig .alignright a:hover {
	border-left: 1px solid #ddd;
}

.clearfix {
	clear: both;
	line-height: 0;
}

.border-none {
	border: 0px;
}




