@charset "UTF-8";

/* パンくずリスト */
.breadcrumb_bg {
	background: #FFF;
	width: 100%;
	padding: 0;
}
ul.breadcrumb {
   width: 960px;
   margin: 0 auto;
	font-size: 16px;
   padding-top: 18px;
}
ul.breadcrumb li {
	display: inline-block;
	position: relative;
	*display: inline;  
   *zoom: 1;
	padding-bottom: 18px;
	padding-left: 30px;
	font-size: 0.625em;
	font-weight: 400;
	color: #222;
}
ul.breadcrumb li:before {
	content: ">";
	position: absolute;
	left: 10px;
}
ul.breadcrumb li:first-child { padding-left: 20px;}
ul.breadcrumb li:first-child:before { content: none;}
ul.breadcrumb li a {
	color: #222;
}
ul.breadcrumb li a.bread_home:before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 11px;
	height: 10px;
	top: 0px;
	left: 0px;
	background: url(../image/bread_home.png) left center no-repeat;
	background-size: 100%;
}
ul.breadcrumb a:hover {
	text-decoration: none;
}

@media screen and (max-width:1280px) {
	.breadcrumb_bg {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	ul.breadcrumb {
      box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		width: 100%;
		margin: 0;
	}
}/*/mediaquery*/

.Top_title_bg {
	background: #0063b0;
	width: 100%;
	padding: 30px 0;
}
.Top_title_inner {
   width: 960px;
   margin: 0 auto;
	font-size: 16px;
}
.Top_title_inner h1 {
   color: #FFF;
	font-size: 1.7em;
	font-weight: 500;
}

@media screen and (max-width:480px) {
   .Top_title_inner { width: 100%; }
   .Top_title_inner h1 {
      font-size: 1.4em;
      line-height: 1.7em;
   }
}/*/mediaquery*/

/* ~~ index_img ~~ */
.index_img {
	width: 100%;
}
.index_img img {
	width: 100%;
	height: auto;
}

/* ~~ Jbgr_PC_img ~~ */
.Jbgr_PC_img {
	width: 100%;
}
.Jbgr_PC_img img {
	width: 100%;
	height: auto;
}
.Jbgr_media_img { display: none; }

/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.Jbgr_PC_img { display: none; }
	.Jbgr_media_img {
      display: block;
		width: 100%;
	}
        .Jbgr_media_img img {
		width: 100%;
	        height: auto;
	}
}/*/mediaquery*/

/* ~~ title ~~ */
.headline {
	color: #0063b0;
	font-size: 1.7em;
	font-weight: 500;
	margin: 50px 0 20px;
}
/* ~~ border_title ~~ */
.border_title {
	padding: 30px 0;
}
.border_title h2,
.border_title p {
	font-size: 1.4em;
	line-height: 1.4em;
	color: #222;
	font-weight: 500;
	text-align: center;
}
.border_title h2:before,
.border_title p:before {
	content: "";
	display: inline-block;
	position: relative;
	top: -7px;
	width: 36px;
	height: 1px;
	background: #b3b3b3;
	margin-right: 20px;
}
.border_title h2:after,
.border_title p:after {
	content: "";
	display: inline-block;
	position: relative;
	top: -7px;
	width: 36px;
	height: 1px;
	background: #b3b3b3;
	margin-left: 20px;
}
.head_title {
	display: inline-block;
	font-size: 1.4em;
	font-weight: 500;
	letter-spacing: 0.05em;
	color: #222;
	padding: 0;
	margin-top: 50px;
}
.head_title:after {
   content: "";
	display: inline-block;
	background: #eee;
   width: 100%;
   height: 3px;
   position: relative;
   left: 0;
   bottom: 0;
	border-radius: 2px;
}
.heading_topl {
	position: relative;
	font-size: 1.5em;
	font-weight: 400;
	color: #222;
	padding-left: 20px;
	margin: 50px 0;
}
.heading_topl::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #0098d9;
	width: 4px;
	height: 100%;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.h_border {
	height: 60px;
	line-height: 60px;
	font-size: 1.4em;
	font-weight: 500;
	color: #222;
	padding: 0;
	margin: 20px 0 15px;
}
.h_border:after {
   content: "";
	display: block;
	background: #222;
   width: 100%;
   height: 1px;
   position: relative;
   left: 0;
   bottom: 0;
	border-radius: 1px;
}
.detail_li {
	position: relative;
	font-size: 1.2em;
	margin: 15px 0;
	font-weight: 400;
	color: #222;
	padding-left: 20px;
}
.detail_li:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #004da0;
	width: 10px;
	height: 10px;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.ttl02 {
   background: #eee;
   padding: 15px;
   color: #222;
   font-size: 1.2em;
   font-weight: 500;
   border-radius: 2px;
}
h1 small,
h2 small,
h3 small {
   font-size: 0.675em;
   font-weight: 200;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.head_title {
		font-size: 1.2em;
		line-height: 1.7em;
	}
	.heading_topl { font-size: 1.2em; }
	.h_border { font-size: 1.2em; }
	.border_title {
		padding-bottom: 30px;
	}
}/*/mediaquery*/

/* ~~ location ~~ */
.location {
	font-size: 16px;
	padding: 15px 0 0;
	margin-bottom: 30px;
}
.location span {
	display: block;
	letter-spacing: 0.1em;
	font-size: 1em;
	font-weight: 500;
	color: #aaa;
}
.location span:before {
	content: '';
	display: inline-block;
	position: relative;
	top: -3px;
	width: 17px;
	height: 25px;
	margin-right: 6px;
	vertical-align: middle;
	background: url(../image/location_icon.png) no-repeat;
	background-size: 100%;
}
.location p {
	display: block;
	letter-spacing: 0.1em;
	padding: 15px 0 0;
	font-size: 1.6em;
	font-weight: 500;
	color: #222;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.location {
		padding-bottom: 15px;
	}
	.heading_topl { font-size: 1.2em; }
	.h_border { font-size: 1.2em; }
}/*/mediaquery*/

/* ~~ description ~~ */
.description {
	padding: 10px 0;
	margin: 15px 0 50px;
	overflow: hidden;
	font-size: 16px;
}
.description p {
	color: #222;
	line-height: 1.8em;
	font-size: 0.9375em;
	letter-spacing: .08em;
	font-weight: 300;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.description {
		padding: 0;
	}
}/*/mediaquery*/

/* ~~ greeting_area ~~ */
.greeting_area {
	padding: 20px 0 50px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	font-size: 16px;
}
.textArea {
	width: 70%;
}
.textArea p {
	color: #222;
	line-height: 1.7em;
	font-size: 0.875em;
	letter-spacing: 0.05em;
	font-weight: 200;
}
.textArea p.copy {
	line-height: 1.7em;
	font-size: 1.2em;
	letter-spacing: 0.05em;
	font-weight: 200;
}
.photoArea {
	width: 25%;
}
.photoArea img {
	width: 100%;
	height: auto;
	border-radius: 4px;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.greeting_area {
		display: block;
		padding-top: 0;
		padding-left: 30px;
		padding-right: 30px;
		font-size: 14px;
	}
	.photoArea,
	.textArea { width: 100% }
	.photoArea {
		text-align: center;
		margin-bottom: 30px;
	}
	.photoArea img { width: 80%; }
}/*/mediaquery*/

.map {
	margin: 15px 0 30px;
	padding: 0;
}
.map iframe {
	width: 100%;
	height: 450px;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.map iframe {
		max-width: 100%;
		height: 190px;
	}
}/*/mediaquery*/
/* ~~ sitemap ~~ */
.site_map {
	padding: 30px 0;
}
.site_map dl {
	line-height: 2em;
	font-size: 16px;
}
.site_map dl a:hover {
	text-decoration: underline;
}
.site_map dt {
	display: block;
	margin: 10px 0;
	font-size: 1em;
}
.site_map dt:before {
	content: '';
	display: inline-block;
	position: relative;
	top: 0;
	width: 17px;
	height: 17px;
	margin-right: 8px;
	vertical-align: middle;
	border-radius: 50%;
	background: url(../image/btn_arrow_circle_222.png) no-repeat;
	background-size: 100%;
}
.site_map dt a {
	color: #0098d9;
}
.site_map dd {
	display: block;
	font-size: 0.875em;
	color: #444;
	font-weight: 300;
	text-decoration: underline;
	margin-left: 25px;
}
.site_map dd a {
	color: #444;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:420px) {
	.site_map dl {
		font-size: 14px;
	}
}/*/mediaquery*/

/* ~~ table ~~ */
.table {
	margin: 30px 0 50px;
	padding-bottom: 30px;
	font-size: 16px;
}
.table table {
    font-size: 0.9em;
	color: #222;
	line-height: 2em;
    letter-spacing: 0.1em;
    margin: 0px;
	width: 100%;
}
.table table tr th {
	background: #f5f6f8;
	width: 20%;
	padding: 20px;
    color: #000;
	font-weight: 400;
    text-align: left;
	vertical-align: top;
	border-top: solid 1px #e3e3e3;
}
.table table tr td {
    padding: 20px;
	color: #444;
	font-weight: 200;
    border-top: solid 1px #e3e3e3;
}
.table table tr td a {
	color:#09F ;
	text-decoration: underline;
}
.table table tr td a:hover {
	text-decoration: none;
}
.table table .last {
    border-bottom: solid 1px #e3e3e3;
}
.table table td iframe {
	width: 100%;
	height: 400px;
}
/* ul */
ul.table_li {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul.table_li li {
	color: #222;
	padding-left: 13px;
	background: url(../image/table_li_mk.png) left center no-repeat;
	margin-bottom: 4px;
}
/* ~~ Recruit_table ~~ */
.Recruit_table {
	margin: 15px 0;
	padding: 30px 0;
	font-size: 16px;
}
.Recruit_table dl {
	display: table;
	table-layout: fixed;
	width: 100%;
    font-size: 0.9em;
	color: #222;
	line-height: 2em;
    letter-spacing: 0.1em;
	padding: 5px 0;
	margin: 0;
	border-top: 1px solid #e3e3e3;
	*overflow: auto;
}
.Recruit_table dl.last {
	border-bottom: 1px solid #e3e3e3;
}
.Recruit_table dt {
	display: table-cell;
	vertical-align: top;
	width: 25%;
	font-weight: 400;
	color: #222;
	background: #f8f8f8;
	border-radius: 2px;
	padding: 13px;
	margin: 0;
	*float:left;
}
.Recruit_table dd {
	display: table-cell;
	vertical-align: top;
	padding: 15px;
	margin: 0;
	*float:left;
	font-weight: 200;
	color: #000;
}
.Recruit_table dd iframe  {
	display: block;
	width: auto;
	height: auto;
}
@media screen and (max-width:480px) {
	.table table tr th {
		background: #f5f6f8;
		display: block;
		width: 100%;
		font-weight: bold;
		font-size: 90%;
		color: #444;
		border-left: none; 
		border-right: none;
		border-bottom: none;
		padding: 10px;
		letter-spacing: 1px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.table table tr td {
		display: block;
		font-size: 90%; 
		padding: 10px;
		border-top: none; 
	}
	.table table tr th.last { border: none; border-top: solid 1px #eee; }
}/*/mediaquery*/

/* ~~ itabashi_table ~~ */
.date01 {
	border-left: 1px solid #e3e3e3;
}
.date02 {
	border-right: 1px solid #e3e3e3;
   border-bottom: 1px solid #e3e3e3;
}
.date02 span {
	position: relative;
	padding-left: 15px;
}
.date02 span:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #222;
	width: 3px;
	height: 100%;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.vehicle_table {
	margin: 30px 0 50px;
	font-size: 16px;
}
.vehicle_table table {
    font-size: 1em;
	color: #222;
	line-height: 2em;
    letter-spacing: 0.1em;
	width: 100%;
	border-left: 1px solid #e3e3e3;
	border-bottom: 1px solid #e3e3e3;
}
.vehicle_table table tr th {
	width: 20%;
	padding: 20px 30px;
	font-weight: 400;
    text-align: left;
	vertical-align: top;
	border-top: solid 1px #e3e3e3;
	border-right: 1px solid #e3e3e3;
}
.vehicle_table table tr td {
	width: 40%;
    padding: 20px 30px;
	font-weight: 100;
    border-top: solid 1px #e3e3e3;
	border-right: 1px solid #e3e3e3;
}
.vehicle_table table small {
	font-size: 12px;
}
@media screen and (max-width:480px) {
	.date01 {
		border-top: 1px solid #e3e3e3;
	}
	.vehicle_table { font-size: 12px; }
	.vehicle_table table {
		text-align: center;
	}
	.vehicle_table table tr th,
	.vehicle_table table tr td {
		padding: 5px;
	}
}/*/mediaquery*/

.sf_table {
	padding: 15px 0;
	font-size: 16px;
}
.sf_table table {
    letter-spacing: 0.1em;
	line-height: 1.2em;
	width: 100%;
	border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
}
.sf_table table tr th,
.sf_table table tr td {
	font-size: 0.875em;
	color: #222;
	width: 20%;
	border-right: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
}
.sf_table table tr th:first-child,
.sf_table table tr td:first-child {
	border-left: 1px solid #e3e3e3;
}
.sf_table table tr th {
    font-weight: 400;
	text-align: center;
	vertical-align: middle;
    padding: 15px 0;
	background: #f8f8f8;
}
.sf_table table tr td {
	font-weight: 200;
	text-align: center;
	vertical-align: middle;
    padding: 15px;
	background: #FFF;
}
.sf_table table .last {
	border-bottom: none;
}
@media screen and (max-width:480px) {
	.sf_table table {
		font-size: 12px;
		width: 100%;
	}
}/*/mediaquery*/

/* ~~ Contact_form ~~ */
.Contact_form {
	margin: 15px 0;
	padding: 0 0 50px;
	font-size: 16px;
}
.Contact_form table,
.Contact_form tbody {
	width: 100%;
}
.Contact_form th {
    color: #222;
	font-size: 1em;
	font-weight: 500;
    width: 200px;
    text-align: left;
	vertical-align: middle;
    padding: 25px 0 25px 0;
}
.Contact_form td {
	text-align: left;
    padding: 25px 0;
}
::-ms-expand {
    display: none;
}
input[type="name"],
input[type="age"],
input[type="email"],
input[type="tel"],
input[type="text"],
textarea {
	outline: none;
	width: 50%;
	box-sizing: border-box;
	background: #FFF;
	border: 2px solid #e3e3e3;
	border-radius: 3px;
	margin: 0;
	padding: 8px 10px;
	font-size: 15px;
}
input[type="email"] {
	margin: 5px 0;
}
input[type="name"]:focus,
input[type="age"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
input[type="text"]:focus,
textarea:focus {
    border: 2px solid #3498db;
}
textarea {
	width: 100%;
	background: #FFF;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border: 2px solid #e3e3e3;
	border-radius: 3px;
    box-sizing: border-box;
	margin: 0;
	padding: 15px 10px;
    outline: none;
}
.tlt{
	text-align: center;
	margin: 5px 0;
}
input[type="submit"] {
	-webkit-appearance: none;
	font-size: 0.75em;
	cursor: pointer;
	padding: 15px 25px;
	background: #0092d7;
	border: none;
	color: #FFF;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
input[type="submit"]:hover {
	background: #0a85c9;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
input[type="button"] {
	-webkit-appearance: none;
	margin-left: 15px;
	font-size: 0.75em;
	cursor: pointer;
	padding: 15px 25px;
	background: #aaa;
	border: none;
	color: #FFF;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
input[type="button"]:hover {
	background: #c6c6c6;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
span.Contact_form_presence {
	display: inline-block;
	vertical-align: middle;
	color: transparent;
	font-size: 0.5625em;
	margin-left: 10px;
}
span.Contact_form_presence::before {
	content: '必須';
	display: inline-block;
	background: #ed1c24;
	color: #FFF;
	border-radius: 2px;
	margin: 0;
	padding: 5px;
}
.tipped {
	font-size: 0.675em;
	color: #CCC;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.Contact_form {
		border: none;
	}
	.Contact_form table,
	.Contact_form table tbody,
	.Contact_form table tr,
	.Contact_form table th,
	.Contact_form table td {
		display: block;
		width: 100%;
		letter-spacing: 1px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.Contact_form table {
		border: none;
		padding: 0;
	}
	.Contact_form table th {
		padding: 20px 0 10px;
		border-bottom: none;
	}
	.Contact_form table td {
		padding: 10px 0 20px;
	}
	label { width: 100%;}
	input[type="name"] { width: 40%; } 
	input[type="file"],input[type="email"],input[type="text"],input[type="password"] {
		width: 100%;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	span.Contact_form_presence {
		float: none;
		margin-left: 15px;
	}
}/*/mediaquery*/

/* ~~ entry_date ~~ */
.entry_date {
	margin: 50px 0 30px;
	font-size: 16px;
}
.entry_date p {
	color: #222;
	line-height: 1.4em;
	font-size: 1.2em;
	font-weight: 400;
}
.entry_date p.call_num {
	font-family: "Open Sans", Helvetica, Arial, sans-serif;
	font-weight: bold;
	font-size: 2.6em;
	color: #2284c4;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.entry_date p.call_num,
   .entry_date .call_num {
		font-size: 1.4em;
		color: #2284c4;
      line-height: 1.7em;
	}
}/*/mediaquery*/

/* ~~ entry btn ~~ */
.entry_btn_area {
	margin: 30px 0 50px;
	font-size: 16px;
}
.entry_btn_area p {
   color: #222;
	line-height: 1.8em;
	font-size: 0.9375em;
	letter-spacing: .08em;
	font-weight: 300;
}
.entry_btn_item {
	width: 40%;
}
.entry_btn_item a {
	display: block;
   background: #0092d7;
   background-size: 25%;
	padding: 25px 0;
	font-size: 1.2em;
	font-weight: 600;
	text-align: center;
	color: #FFF;
}
.entry_btn_item a:hover {
	background: #363581;
   background-size: 25%;
}

/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.entry_btn_item {
		width: 80%;
		margin: 15px auto;
   }
}

/* ~~ entry form ~~ */
.entry_form {
	overflow: hidden;
	background: #FFF;
	margin: 50px 0;
	padding: 0;
	font-size: 16px;
	border: solid 1px #e3e3e3;
	border-radius: 4px;
	padding-bottom: 20px;
}
.entry_form table,
.entry_form tbody {
	width: 100%;
}
.entry_form th {
	background: #FFF;
    color: #000;
	font-size: 1em;
	font-weight: 400;
    width: 30%;
    text-align: left;
	vertical-align: middle;
    padding: 25px 50px 25px 30px;
    border-bottom: solid 1px #e3e3e3;
}
.entry_form td {
	text-align: left;
    padding: 25px 30px 25px;
    border-bottom: solid 1px #e3e3e3;
}
label {
	outline: none;
   position: relative;
   display: block;
   width: 70%;
}

label:before {
   content: "";
   position: absolute;
   top: 50%;
   right: 10px;
   display: block;
   width: 0;
   height: 0;
   margin: -2px 0 0 0;
   border: 5px solid transparent;
   border-top: 7px solid #0ba4d3;
}
select {
	outline: none;
   cursor: pointer;
   position: relative;
   -webkit-appearance: none;
   appearance: none;
   display: block;
   width: 100%;
   padding: 8px 10px;
   color: #000;
   border: none;
   border-radius: 2px;
   background: transparent;
	border: 1px solid #e3e3e3;
   border-radius: 2px;
	font-size: 12px;
}
.entry_form ::-ms-expand {
    display: none;
}
.entry_form input[type="name"],
.entry_form input[type="age"],
.entry_form input[type="email"],
.entry_form input[type="tel"],
.entry_form input[type="text"] {
	outline: none;
	width: 50%;
	box-sizing: border-box;
	background: #FFF;
	border: 1px solid #e3e3e3;
	border-radius: 2px;
	margin: 0;
	padding: 8px 10px;
	font-size: 15px;
}
.Confirmation input[type="text"].age,
.entry_form input[type="text"].age {
	width: 50px;
	margin-right: 15px;
}
.Confirmation textarea.job_type,
.entry_form textarea.job_type {
	width: 100%;
	line-height: 1.7em;
	color: #222;
	height: 25px;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
    outline: none;
    background: transparent;
}
.entry_form input[type="text"].tel {
	width: auto;
}
.entry_form input[type="age"] {
	width: 50px;
	margin-right: 15px;
}
.entry_form input[type="name"] {
	width: 150px;
	margin-right: 10px;
}
.entry_form input[type="email"] {
	margin: 5px 0;
}
.entry_form input[type="name"]:focus,
.entry_form input[type="age"]:focus,
.entry_form input[type="email"]:focus,
.entry_form input[type="tel"]:focus,
.entry_form input[type="text"]:focus,
.entry_form input[type="text"]:focus,
.entry_form textarea:focus {
    box-shadow: 0 0 2px #3498db;
    border: 1px solid #3498db;
}
.entry_form textarea.job_type:focus {
	box-shadow: none;
    border: none;
}
.entry_form textarea {
	width: 100%;
	background: #FFF;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border: 1px solid #e2e6e8;
    box-sizing: border-box;
	margin: 0;
	padding: 15px 10px;
    outline: none;
	border-radius: 2px;
	font-size: 15px;
}
.entry_form .tlt{
	text-align: center;
	margin: 5px 0;
}
.entry_form input[type="submit"] {
	-webkit-appearance: none;
	font-size: 0.875em;
	letter-spacing: 0.1em;
	cursor: pointer;
	padding: 10px 30px;
	background: #FFF;
	border-radius: 2px;
	border: 1px solid #0092d7;
	color: #0092d7;
	font-weight: 400;
	letter-spacing: 0.0.5em;
	box-shadow: 0 3px 0px 0px rgba(115, 115, 115, .6);
	transition: all .2s cubic-bezier(.02, .01, .47, 1) 0s;
}
.entry_form input[type="submit"]:hover {
	background: #0092d7;
	color: #FFF;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.entry_form input[type="button"] {
	-webkit-appearance: none;
	margin-left: 15px;
	font-size: 0.875em;
	letter-spacing: 0.1em;
	cursor: pointer;
	padding: 10px 30px;
	background: #FFF;
	border-radius: 2px;
	border: 1px solid #222;
	color: #222;
	font-weight: 400;
	letter-spacing: 0.0.5em;
	box-shadow: 0 3px 0px 0px rgba(115, 115, 115, .6);
	transition: all .2s cubic-bezier(.02, .01, .47, 1) 0s;
}
.entry_form input[type="button"]:hover {
	background: #eee;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.entry_form span.entry_form_presence {
	display: inline-block;
	vertical-align: middle;
	color: transparent;
	font-size: 0.5625em;
	float: right;
}
span.entry_form_presence::before {
	content: '必須';
	display: inline-block;
	background: #0092d7;
	color: #FFF;
	border-radius: 2px;
	margin: 0;
	padding: 5px;
}
.entry_form .tipped {
	color: #CCC;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.entry_form {
		margin: 30px 0;
	}
	.entry_form table,
	.entry_form table tbody,
	.entry_form table tr,
	.entry_form table th,
	.entry_form table td {
		display: block;
		width: 100%;
		letter-spacing: 1px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.entry_form table {
		border: none;
	}
	.entry_form table th {
		background: none;
		border-bottom: none;
		padding: 20px 15px 10px;
	}
	.entry_form table td {
		padding: 15px 15px 20px;
	}
	.entry_form label { width: 100%;}
	.entry_form input[type="file"],
	.entry_form input[type="email"],
	.entry_form input[type="text"],
	.entry_form input[type="password"] {
		width: 100%;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.entry_form input[type="name"] { width: 45%; }
	.entry_form span.entry_form_presence {
		float: none;
		margin-left: 15px;
	}
	.Confirmation textarea.job_type,
	.entry_form textarea.job_type {
		height: 50px;
	}
}/*/mediaquery*/

.Confirmation {
	background: #FFF;
	margin: 10px 0 80px;
	padding: 40px 50px;
	font-size: 16px;
	border-radius: 2px;
	border: 2px solid #e3e3e3;
	box-shadow: 0 4px 0 0 rgba(0,0,0,.11);
}
/* table */
.Confirmation table {
	width: 100%;
	line-height: 1.7em;
	margin-bottom: 30px;
}
.Confirmation table th,
.Confirmation table td {
	font-size: 1em;
	padding: 30px 0;
	border-bottom: 1px dotted #e3e3e3;
}
.Confirmation table th {
	width: 25%;
	text-align: left;
	vertical-align: top;
	font-weight: 400;
	color: #222;
	font-size: 1em;
	padding-left: 15px;
	position: relative;
}
.Confirmation table th:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #0092d7;
	width: 3px;
	height: 15px;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.Confirmation table td {
	font-size: 0.9375em;
	font-weight: 200;
	color: #222;
}
.error_messe {
	color: red;
}
@media screen and (max-width:480px) {
	.Confirmation { padding: 30px;}
	.Confirmation table th {
		display: block;
		width: 100%;
		font-size: 1em;
		font-weight: 400;
		padding: 10px 10px 10px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		border: none;
	}
	.Confirmation table td {
		display: block;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		font-size: 1em;
		padding: 0px 10px 10px;
		margin-bottom: 20px;
	}
}/*/mediaquery*/

ul.index_contents {
	width: 100%;
	margin: 50px auto 20px;
	font-size: 16px;
	display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
   -ms-flex-wrap: wrap;
   -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
ul.index_contents li {
	width: 48%;
	overflow: hidden;
	margin-bottom: 50px;
	transition: all .2s cubic-bezier(.02, .01, .47, 1) 0s;
   background: #FFF url("../image/index_contents_arrow_bg.png") no-repeat right 90%;
   background-size: 50%;
   border: 10px solid #F2F2F2;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}
.index_contents_item {
	display: block;
	width: 100%;
	overflow: hidden;
}
ul.index_contents .image_block {
	width: 100%;
   overflow: hidden;
}
ul.index_contents .image_block img {
	width: 100%;
	height: auto;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
ul.index_contents .title_area {
	overflow: hidden;
	line-height: 1.4em;
	font-size: 24px;
	margin-bottom: 20px;
}
ul.index_contents .title_area h2,
ul.index_contents .title_area h3 {
	color: #2284c4;
	font-size: 1em;
	font-weight: 500;
	letter-spacing: 0.09em;
}
ul.index_contents .txt_block {
	padding: 30px 30px 30px;
	overflow: hidden;
}
ul.index_contents .txt_block p {
	font-size: 0.875em;
	line-height: 1.7em;
	color: #222;
	font-weight: 300;
}

/* ~~ Recruit_block ~~ */
ul.index_contents .Jbgr_PC_imgblock {
	width: 100%;
   overflow: hidden;
}
ul.index_contents .Jbgr_PC_imgblock img {
	width: 100%;
	height: auto;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
ul.index_contents .Jbgr_media_imgblock { display: none; }
.Recruit_block {
   padding: 30px;
}
.Recruit_block_title {
   color: #2284c4;
	font-size: 1.2em;
   line-height: 1.5em;
	font-weight: 500;
   margin-bottom: 30px;
}
.Recruit_block_date table {
   font-size: 0.9375em;
	color: #222;
	line-height: 1.6em;
   margin: 0px;
	width: 100%;
}
.Recruit_block_date table tr th {
	width: 20%;
   color: #000;
   padding: 5px 0;
	font-weight: 500;
   text-align: left;
	vertical-align: top;
	border-top: solid 1px #e3e3e3;
}
.Recruit_block_date table tr td {
	color: #222;
   padding: 5px 0;
	font-weight: 400;
   border-top: solid 1px #e3e3e3;
}

a:hover .txt_block p {
	text-decoration: underline;
}
a:hover .image_block img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:hover ul.index_contents li { border: 10px solid #363581; }
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	ul.index_contents {
		width: 100%;
		display: block;
		overflow: hidden;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		margin: 30px 0 0;
	}
	ul.index_contents li { width: 100%; }
   ul.index_contents li {
      background: #FFF url("../image/index_contents_arrow_bg.png") no-repeat 95% 60%;
      background-size: 70%;
   }
   ul.index_contents .txt_block { padding: 15px; }
   ul.index_contents .txt_block p { font-weight: 400;}
   .Recruit_block_title {
      line-height: 1.5em;
      margin-bottom: 10px;
   }
   .Recruit_block_date table tr th,
   .Recruit_block_date table tr td {
      display: block;
		width: 100%;
      padding: 10px;
      box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
   }
   .Recruit_block_date table tr th {
		background: #f5f6f8;
   }
   ul.index_contents .Jbgr_PC_imgblock { display: none; }
	ul.index_contents .Jbgr_media_imgblock {
      display: block;
      width: 100%;
      overflow: hidden;
	}
   ul.index_contents .Jbgr_PC_imgblock img {
		width: 100%;
      height: auto;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out;
	}
}/*/mediaquery*/

/* ~~ index_contents_lv1 ~~ */
.index_contents_lv1 {
	font-size: 16px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	align-items: center;
	-webkit-align-items: center;
	background: #f9fafa;
	margin-bottom: 50px;
}
.index_contents_lv1_inner {
	width: 50%;
}
.index_contents_lv1_img img {
	width: 100%;
	height: auto;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.index_contents_lv1_main {
	padding: 0 50px;
}
.index_contents_lv1_copy {
	line-height: 2em;
   margin-bottom: 30px;
}
.index_contents_lv1_copy h2 {
	font-size: 1.6em;
	color: #333;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.index_contents_lv1_description {
	margin-bottom: 30px;
}
.index_contents_lv1_description p {
	color: #222;
	line-height: 1.7em;
	font-size: 0.9375em;
	font-weight: 400;
}
.index_contents_lv1_description p.catch {
	color: #222;
	font-size: 1em;
	font-weight: 200;
}
/* ~~ bnt_stream ~~ */
.index_contents_lv1 .bnt_stream {
	display: block;
	margin: 10px 0 0;
}
.index_contents_lv1 .bnt_stream span {
	display: block;
	position: relative;
	background: #FFF;
	width: 40%;
 	padding: 15px;
	margin: 0;
	border-radius: 2px;
	text-align: center;
	color: #222;
	font-weight: 500;
	font-size: 0.75em;
	border: 1px solid #222;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	box-shadow: 0 4px 0 0 rgba(0,0,0,.11);
}
.index_contents_lv1 .bnt_stream span:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
	width: 25px;
	height: 20px;
	margin-left: 10px;
	background: url(../image/btn_arrow_222.png) no-repeat;
	background-size: 80%;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:hover .index_contents_lv1 .bnt_stream span:after {
	background-image: url(../image/btn_arrow_FFF.png);
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:hover .index_contents_lv1_description p { text-decoration: underline; }
a:hover .index_contents_lv1 .bnt_stream span {
	background: #999;
	color: #FFF;
}
a:hover .index_contents_lv1_img img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.index_contents_lv1_inner_media_img { display: none; }
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.index_contents_lv1_inner_media_img { display: block; }
	.index_contents_lv1_inner_media_img img { width: 100%; height: auto; }
	.index_contents_lv1_bg {
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		padding-top: 5%;
		padding-left: 5%;
		padding-right: 5%;
	}
	.index_contents_lv1 {
		display: block;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		font-size: 14px;
		margin: 0px 15px 50px;
	}
	.index_contents_lv1_inner { width: 100%;}
	.index_contents_lv1_main {
		padding: 50px 20px 20px;
		text-align: center;
	}
	.index_contents_lv1_copy span {
		font-family: "Open Sans", Helvetica, Arial, sans-serif;
		font-size: 1.4em;
	}
	.index_contents_lv1_copy h2:after {
		height: 1px;
		width: 20px;
		top: 10px;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		margin-bottom: 30px;
	}
	.index_contents_lv1 .bnt_stream span {
		width: 40%;
		margin: 0 auto 30px;
		background: #009844;
		color: #FFF;
		border: none;
		box-shadow: none;
	}
	.index_contents_lv1 .bnt_stream span:after {
		margin-left: 0;
		background-image: url(../image/btn_arrow_FFF.png);
	}
}/*/mediaquery*/

/* ~~ flow ~~ */
dl.flow {
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	line-height: 1.8em;
	font-size: 16px;
	padding: 50px 0 0;
}
dl.flow:last-child { padding-bottom: 50px; }
dl.flow dt,
dl.flow dd {
	padding: 15px 0 30px;
}
dl.flow dt {
	width: 30%;
	padding-right: 15px;
	font-size: 1.2em;
	color: #009fe8;
	font-weight: 400;
	border-bottom: 1px solid #009fe8;
}
dl.flow dt span {
	font-family: CenturyGothic-Bold, "CenturyGothicStd", "Century Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Sans-Serif;
	font-weight: bold;
	display: block;
	font-size: 1em;
	color: #222;
	margin-bottom: 15px;
}
dl.flow dd {
	width: 70%;
	padding-left: 15px;
	font-size: 0.875em;
	color: #222;
	font-weight: 200;
	border-bottom: 1px solid #e3e3e3;
}
dl.flow .last { border: none; }
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	dl.flow,
	dl.flow dt,
	dl.flow dd {
		display: block;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		width: 100%;
	}
	dl.flow {
		padding: 15px 0;
		font-size: 14px;
	}
	dl.flow dt,
	dl.flow dd { padding: 15px 0; }
	dl.flow dt.last { border-bottom: 1px solid #004da0; }
}/*/mediaquery*/

.contents_box {
   background: #fcfcfc;
   border-radius: 3px;
   padding: 50px;
   margin-bottom: 100px;
   border-radius: 5px;
	border: 1px solid #e3e3e3;
	box-shadow: 0 4px 0 0 rgba(0,0,0,.11);
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}
.contents_box_inner {
   font-size: 16px;
   margin-bottom: 50px;
}
.contents_box .last {
   margin-bottom: 0;
}
.contents_box_inner .ttl {
   color: #555;
   font-weight: 500;
   font-size: 1.2em;
   letter-spacing: 0.05em;
	line-height: 1.7em;
   margin-bottom: 30px;
}
.contents_box_inner .ttl:after {
	content: "";
	display: block;
	background: #e3e3e3;
	width: 100%;
	height: 1px;
	position: relative;
	left: 0;
	bottom: 0;
	border-radius: 1px;
   margin-top: 10px;
}
.contents_box_inner p {
   color: #333;
	line-height: 1.7em;
	font-size: 0.9375em;
	font-weight: 300;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:780px) {
   .contents_box {
      padding: 30px;
   }
   .contents_box_inner .ttl {
      font-size: 1em;
   }
}/*/mediaquery*/

.infographics_img {
   width: 80%;
   margin: 0 auto;
   text-align: center;
}
.infographics_img img {
   width: 90%;
   height: auto;
}
.infographics_description {
   padding: 30px 0;
   text-align: left;
}
.infographics_description p {
   font-size: 1.2em;
   line-height: 1.7em;
   color: #222;
   font-weight: 500;
}
@media screen and (max-width:780px) {
   .infographics_img {
      width: 100%;
      margin: 30px 0 0;
   }
}/*/mediaquery*/
@media screen and (max-width:480px) {
   .infographics_img {
      width: 100%;
      margin: 0;
   }
}/*/mediaquery*/

.philosophy {
   margin: 30px 0;
   padding-left: 30px;
   line-height: 1.7em;
   font-size: 16px;
   position: relative;
}
.philosophy:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #0098d9;
	width: 4px;
	height: 100%;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.philosophy .copy01 {
   font-size: 1.6em;
   letter-spacing: 0.09em;
   font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
   color: #333;
   font-weight: 300;
   margin-bottom: 15px;
}
.philosophy .copy02 {
   color: #222;
	font-size: 0.9375em;
	letter-spacing: .08em;
	font-weight: 300;
}
.philosophy_ttl {
	margin-top: 50px;
	padding: 20px 0;
}
.philosophy_ttl ul {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.philosophy_ttl ul li {
   display: inline-block;
}
.philosophy_ttl ul li h2{
   font-size: 1.8em;
   letter-spacing: 0.09em;
   color: #0098d9;
   font-weight: 400;
}
.philosophy_ttl ul li span {
	font-style: oblique;
	display: block;
	font-size: 1.2em;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #eee;
}

/* ~~ check_point ~~ */
.check_point {
   padding: 30px;
	margin: 15px 0 100px;
	font-size: 14px;
   border: 10px solid #efefef;
   position: relative;
}
.check_point p {
   color: #222;
	line-height: 1.6em;
	font-size: 0.9375em;
	letter-spacing: .05em;
	font-weight: 300;
}
.check_point a {
   display: block;
   line-height: 1.7em;
}
p.check_p {
   display: inline-block;
   position: absolute;
   background: #FFF;
   top: -20px;
   left: 10px;
   padding: 0 15px;
   color: #009a3e;
	line-height: 1.6em;
	font-size: 1.2em;
	font-weight: 700;
}
p.check_mk {
   color: #222;
	line-height: 1.6em;
	font-size: 1em;
	font-weight: 700;
   padding-left: 30px;
   text-indent: -30px;
}
p.check_mk:before {
   content: "";
	display: inline-block;
	background: url("../img/check_mk.png");
   background-size: 100%;
   width: 20px;
   height: 20px;
   position: relative;
   top: 4px;
   left: 0;
   margin-right: 10px;
}

/* ~~ check_point ~~ */
.point {
   padding: 30px;
	margin: 15px 0 50px;
	font-size: 16px;
   border: 10px solid #e7f3e7;
}
.point p {
   color: #222;
	line-height: 1.8em;
	font-size: 1.2em;
	font-weight: 700;
}
.border_box {
   padding: 30px;
   border: 10px solid #e7f3e7;
}