@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;
      overflow-x: scroll;
      word-break: keep-all;
      white-space: nowrap;
      -webkit-overflow-scrolling: touch;
	}
}/*/mediaquery*/

.Top_title_bg {
	background: #d51918;
	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*/

/* ~~ title ~~ */
.headline {
	color: #d51918;
	font-size: 1.7em;
	font-weight: 500;
	margin: 50px 0 20px;
}
.headline_02 {
   background: #d51918 url("../image/Top_title_bg.png") no-repeat left center / cover;
	color: #FFF;
   border-radius: 2px;
	font-size: 1.7em;
	font-weight: 500;
   padding: 20px 20px;
	margin: 50px 0 20px;
}
.heading_topl {
	position: relative;
	font-size: 1.5em;
	font-weight: 400;
	color: #222;
	padding-left: 20px;
	margin: 30px 0;
}
.heading_topl::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #d51918;
	width: 4px;
	height: 100%;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.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;
}
.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;
}
.h_border02 {
   height: 60px;
	line-height: 60px;
	font-size: 1.4em;
	font-weight: 500;
	color: #222;
	padding: 0;
	margin: 20px 0 15px;
}
.h_border02:after {
   content: "";
	display: block;
	background: url("../image/h_border_bg.png") no-repeat left bottom / cover;
   width: 100%;
   height: 3px;
   position: relative;
   left: 0;
}
.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: #d51918;
	width: 10px;
	height: 10px;
	-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;
}
/* ~~ location ~~ */
.location {
	display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
	-webkit-box-align: end;
   -ms-flex-align: end;
   align-items: flex-end;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
	width: 960px;
	margin: 50px auto 0;
	font-size: 16px;
   background: #eee;
   padding: 15px;
   border-radius: 2px;
}
.location span {
	display: block;
	letter-spacing: 0.1em;
	font-size: 1.2em;
	font-weight: 500;
	color: #222;
	padding-right: 30px;
	position: relative;
}
.location span:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0, -50%);
   -ms-transform: translate(0, -50%);
   transform: translate(0, -50%);
	width: 25px;
	height: 20px;
	background: url(../image/btn_arrow_222.png) no-repeat;
	background-size: 90%;
}
.location p {
	padding: 0;
	font-size: 1.8em;
	font-weight: 500;
	color: #222;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:1280px) {
	.location {
      width: 100%;
		overflow: hidden;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
      padding-left: 5%;
      padding-right: 5%;
	}
}
@media screen and (max-width:480px) {
	.location {
		font-size: 14px;
		padding-bottom: 15px;
	}
}/*/mediaquery*/
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.heading_topl { font-size: 1.2em; }
   .head_title {
		font-size: 1.2em;
		line-height: 1.7em;
	}
	.h_border,
   .h_border02 {
      height: auto;
      font-size: 1.2em;
      line-height: 1.7em;
   }
   .h_border:after,
   .h_border02:after {
      margin-top: 10px;
   }
}/*/mediaquery*/

.head_img {
   width: 100%;
   height: 320px;
   background-attachment: local;
   background-position: center top;
   background-size: cover;
   background-repeat: no-repeat;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
   .head_img {
      width: 100%;
      height: 120px;
   }
}/*/mediaquery*/

/* ~~ heading_top_lv3 ~~ */
.heading_top_lv3 {
	width: 100%;
	height: 300px;
	position: relative;
	background-position: bottom center;
   background-repeat: no-repeat;
   background-size: cover;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	-webkit-align-items: center;
	border-bottom: 1px solid #e3e3e3;
}
.heading_top_lv3 ul {
	padding: 0 5%;
}
.heading_top_lv3 ul li {
	line-height: 2em;
	font-size: 24px;
}
.heading_top_lv3 ul li span {
	font-family: CenturyGothic-Bold, "CenturyGothicStd", "Century Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Sans-Serif;
	font-weight: bold;
	display: block;
	font-size: 1.4em;
	color: #eee;
}
.heading_top_lv3 ul li h1,
.heading_top_lv3 ul li h2 {
	font-size: 0.9375em;
	color: #222;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.heading_top_lv3 ul li h1:after,
.heading_top_lv3 ul li h2:after {
	content: "";
    width: 20px;
    height: 2px;
    display: block;
    position: relative;
    left: 5px;
    top: 20px;
    background: #2e3192;
}

/* ~~ 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;
}
.center {text-align: center;}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.description {
		padding: 0;
	}
   .description p { font-weight: 400; }
}/*/mediaquery*/

.img_area {
	padding: 30px 0;
	display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	font-size: 16px;
}
.img_description {
	width: 61.8%;
}
.img_description h2 {
	position: relative;
	font-size: 1.5em;
	font-weight: 400;
	color: #222;
	padding-left: 20px;
	margin: 0 0 30px;
}
.img_description h2:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #d51918;
	width: 4px;
	height: 100%;
	border-radius: 2px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.img_description h3 {
	line-height: 1.8em;
	font-size: 1em;
	font-weight: 500;
	color: #d51918;
	margin: 20px 0 0;
}
.img_description p {
	color: #222;
	line-height: 1.8em;
	font-size: 0.9375em;
	letter-spacing: .08em;
	font-weight: 300;
}
.img_block {
	width: 35%;
}
.img_block img {
	width: 100%;
	height: auto;
	border-radius: 2px;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.img_area {
		display: block;
		padding: 15px 0 30px;
	}
   .img_area,
   .img_area.last { border: none; }
	.img_description,
	.img_block { width: 100%; }
	.img_block {
      margin: 30px 0;
   }
}/*/mediaquery*/

/* ~~ greeting_area ~~ */
.greeting_area {
	padding: 50px 0;
	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;
	}
	.photoArea,
	.textArea { width: 100% }
	.photoArea {
		text-align: center;
		margin-bottom: 30px;
	}
   .textArea p { font-size: 1em;}
	.photoArea img { width: 80%; }
}/*/mediaquery*/

.Map {
	margin: 15px auto 50px;
	padding: 0;
}
.Map iframe {
	width: 100%;
	height: 593px;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
   .Map {
      width: 100%;
   }
	.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: #222;
}
.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 {
	background: #FFF;
   padding: 20px;
	color: #222;
	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: 1em;
	color: #222;
	line-height: 2em;
   letter-spacing: 0.1em;
	padding: 5px 0;
	margin: 0;
	border-top: 1px solid #eee;
	*overflow: auto;
}
.Recruit_table dl.last {
	border-bottom: 1px solid #eee;
}
.Recruit_table dt {
	display: table-cell;
	vertical-align: top;
	width: 25%;
	font-weight: 500;
	color: #222;
	background: #F2F2F2;
	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: 300;
	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;
		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;
		padding: 10px;
		border-top: none; 
	}
	.table table tr th.last { border: none; border-top: solid 1px #eee; }
}/*/mediaquery*/

/* ~~ table ~~ */
.date01 {
	border-bottom: 1px solid #e3e3e3;
	border-right: 1px solid #e3e3e3;
}
.date02 {
	border-left: 1px solid #e3e3e3;
}
.date02 span {
   letter-spacing: 0;
	font-weight: 400;
}
@media screen and (max-width:480px) {
	.date01 {
		border-top: 1px solid #e3e3e3;
	}
}/*/mediaquery*/

/* ~~ entry btn ~~ */
.entry_btn_area {
	margin: 30px 0 50px;
	font-size: 16px;
}
.entry_btn_item {
	width: 40%;
}
.entry_btn_item a {
	display: block;
   background: #d51918;
   background-size: 25%;
	padding: 25px 0;
	font-size: 1.2em;
	font-weight: 600;
	text-align: center;
	color: #FFF;
}
.entry_btn_item a:hover {
	background: #d51918;
   background-size: 25%;
}

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

/* ~~ entry_date ~~ */
.entry_date {
	margin: 50px 0 30px;
	font-size: 16px;
}
.entry_date p {
	color: #222;
	line-height: 1.7em;
	font-size: 0.9375em;
	font-weight: 400;
   letter-spacing: 0.09em;
}
.entry_date p.call_num {
	font-family: "Open Sans", Helvetica, Arial, sans-serif;
	font-weight: bold;
	font-size: 1.8em;
   letter-spacing: 0em;
	color: #222;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.entry_date p.call_num,
   .entry_date .call_num {
		font-size: 1.4em;
		color: #222;
      line-height: 1.7em;
	}
}/*/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="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="email"]:focus,
input[type="tel"]: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: #d51918;
	border: none;
   border-radius: 0;
	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: #cc0833;
	-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;
   border-radius: 0;
	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="file"],input[type="name"],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;
	}
   .tlt {
      padding: 0 20px;
   }
   input[type="submit"],
   input[type="button"] {
      width: 100%;
      margin: 0 0 10px 0;
   }
}/*/mediaquery*/

/* ~~ entry form ~~ */
.entry_form {
	overflow: hidden;
	background: #FFF;
	margin: 30px 0 50px;
	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: #f8f8f8;
   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 #222;
}
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="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;
}
.entry_form input[type="text"].day {
	width: auto;
}
.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="email"]:focus,
.entry_form input[type="tel"]:focus,
.entry_form input[type="text"]:focus,
.entry_form textarea:focus {
    box-shadow: 0 0 2px #3498db;
    border: 1px solid #3498db;
}
.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: 25px 0 0;
}
.entry_form input[type="submit"] {
	-webkit-appearance: none;
	font-size: 0.75em;
	cursor: pointer;
	padding: 15px 25px;
	background: #d51918;
	border: none;
   border-radius: 0;
	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="submit"]:hover {
	background: #cc0833;
	-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.75em;
	cursor: pointer;
	padding: 15px 25px;
	background: #aaa;
	border: none;
   border-radius: 0;
	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"]: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;
}
.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: #d51918;
	color: #FFF;
	border-radius: 2px;
	margin: 0;
	padding: 5px;
}
.entry_form .tipped {
	color: #CCC;
}
.pvtxt {
   margin: 20px 0 10px;
   padding: 15px;
	text-align: center;   
}
.pvtxt p {
   font-size: 0.875em;
   text-decoration: underline;
   color: #444;
   line-height: 1.7em;
}
/*---------------------------------*/
/*-------    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: #f8f8f8;
		border-bottom: none;
		padding: 20px 15px 20px;
	}
	.entry_form table td {
		padding: 15px 15px 20px;
	}
	.entry_form label { width: 100%;}
	.entry_form input[type="email"],
	.entry_form input[type="text"] {
		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;
	}
}/*/mediaquery*/

.Confirmation {
	background: #FFF;
	margin: 10px 0 80px;
	padding: 40px 50px;
	font-size: 16px;
	border: solid 1px #e3e3e3;
	border-radius: 4px;
}
/* table */
.Confirmation table {
	width: 100%;
	line-height: 1.5em;
	margin-bottom: 30px;
}
.Confirmation table th,
.Confirmation table td {
	font-size: 1em;
	padding: 20px 0;
	border-bottom: 1px dotted #e3e3e3;
}
.Confirmation table th {
	width: 25%;
	text-align: left;
	vertical-align: top;
	font-weight: 600;
	color: #222;
	font-size: 1em;
}
.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,
	.Confirmation table tbody,
	.Confirmation table tr,
	.Confirmation table th,
	.Confirmation table td {
		display: block;
		width: 100%;
		letter-spacing: 1px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.Confirmation table th {
		font-size: 1em;
		padding: 10px 0 10px;
		border: none;
	}
	.Confirmation table td {
		font-size: 1em;
		padding: 0 0 10px;
		margin-bottom: 20px;
	}
}/*/mediaquery*/

.check_contents,
.check_box,
.cc_ttl {
   border: solid 1px #e3e3e3;
}
.check_contents {
   padding: 0 50px;
	overflow: hidden;
	font-size: 16px;
}
.cc_ttl {
   background: #FFF;
   border-bottom: none;
   padding: 0;
   font-size: 1.6em;
	line-height: 1.4em;
	color: #222;
	font-weight: 500;
}
.cc_ttl2 {
   border-bottom: 1px solid #e3e3e3;
   padding: 10px 0;
   font-size: 1.6em;
	line-height: 1.4em;
	color: #222;
	font-weight: 500;
}
.check_contents p {
   color: #222;
	line-height: 1.8em;
	font-size: 0.9375em;
	letter-spacing: .08em;
	font-weight: 300;
}
.check_box {
   background: #f8f8f8;
   border-top: none;
   text-align: center;
   padding-top: 15px;
   padding-bottom: 15px;
   margin-bottom: 50px;
}
/* チェックボックス01 */

.checkbox01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}
.checkbox01::before {
    background: #fff;
    border: 1px solid #222;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.checkbox01::after {
    border-right: 3px solid #d51918;
    border-bottom: 3px solid #d51918;
    content: '';
    display: block;
    height: 9px;
    left: 10px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}
input[type=checkbox]:checked + .checkbox01::after {
    opacity: 1;
}
@media screen and (max-width:480px) {
   .check_contents {
      padding: 10px 30px;
   }
}/*/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 {
   background: #FFF;
	width: 48%;
	overflow: hidden;
	margin-bottom: 50px;
	transition: all .2s cubic-bezier(.02, .01, .47, 1) 0s;
   background-size: 50%;
	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;
}
.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 {
	color: #222;
	font-size: 1em;
	font-weight: 500;
	letter-spacing: 0.09em;
   padding-bottom: 15px;
   border-bottom: 1px solid #d51918;
}
ul.index_contents li:hover .title_area h2 {
	color: #d51918;
}
ul.index_contents .title_area h2:before {
	content: '';
	display: inline-block;
	position: relative;
	top: -2px;
	width: 15px;
	height: 15px;
	margin-right: 8px;
	vertical-align: middle;
	border-radius: 50%;
	background: url("../image/li_arrow.svg") no-repeat center center;
   background-size: 70%;
   filter: invert(16%) sepia(90%) saturate(6219%) hue-rotate(358deg) brightness(111%) contrast(121%);
}
ul.index_contents .title_area h2 {
	-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_area03 {
   display: flex;
   align-items: center;
   height: 160px;
   line-height: 1.4em;
	font-size: 24px;
   background-size: cover;
}
ul.index_contents .title_area03 h2 {
	color: #222;
	font-size: 1em;
	font-weight: 500;
   padding-left: 30px;
	letter-spacing: 0.09em;
}
.home_li_bg1 { background: url("../image/Top_index_Thum_01.jpg") no-repeat top center; }
.home_li_bg2 { background: url("../image/Top_index_Thum_02.jpg") no-repeat top center; }
.home_li_bg3 { background: url("../image/Top_index_Thum_03.jpg") no-repeat top center; }
.home_li_bg4 { background: url("../image/Top_index_Thum_04.jpg") no-repeat top center; }
.home_li_bg5 { background: url("../image/Top_index_Thum_05.jpg") no-repeat top center; }

ul.index_contents .title_area02 h2,
ul.index_contents .title_area02 h3 {
   color: #222;
	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 ~~ */
.Recruit_block {
   padding: 30px;
}
.Recruit_block_title {
   color: #d51918;
	font-size: 1.2em;
	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;
}

/* ~~ btn_block_01 ~~ */
.btn_block_01 {
   width: 100%;
   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;
   margin-top: 30px;
}
.btn_block_01 a {
   width: 45%;
	font-size: 0.875em;
   color: #FFF;
   font-weight: 500;
   text-align: center;
	cursor: pointer;
	padding: 15px 0;
   border-radius: 1px;
	-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;
}
.btn_block_01 a:first-child {
   background: #06c56d;
}
.btn_block_01 a:nth-child(2) {
   background: #d51918;
}
.btn_block_01 a:first-child:hover {
	background: #06a57f;
	-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;
}
.btn_block_01 a:nth-child(2):hover {
	background: #cc0833;
	-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 .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 #d51918; }
/*---------------------------------*/
/*-------    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 .txt_block { padding: 20px; }
   ul.index_contents .txt_block p { font-weight: 400;}
   .Recruit_block_title { line-height: 1.5em; }
   .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;
   }
}/*/mediaquery*/

.sf_news_home {
   width: 960px;
   margin: 0 auto;
   display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
	align-items: center;
	-webkit-align-items: center;
   font-size: 16px;
   border: 10px solid #F2F2F2;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}
.sf_news_home_ttl,
.sf_news_home_link {
   padding: 15px 30px;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}
.sf_news_home_ttl p {
   color: #222;
   font-weight: 500;
}
.sf_news_home_link a {
   color: 222;
}
@media screen and (max-width:1280px) {
   .sf_news_home {
      width: 100%;
		padding-left: 50px;
		padding-right: 50px;
      box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
   }
}
@media screen and (max-width:480px) {
   .sf_news_home {
      display: block;
      padding: 15px;
   }
   .sf_news_home_ttl,
   .sf_news_home_link {
      padding: 0px;
      line-height: 1.7em;
   }
}/*/mediaquery*/

.contents_box {
   background: #fcfcfc;
   border-radius: 3px;
   padding: 50px;
   margin-bottom: 50px;
   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: #222;
   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 .ttl:before {
	content: '';
	display: inline-block;
	position: relative;
	top: -2px;
	width: 15px;
	height: 15px;
	margin-right: 8px;
	vertical-align: middle;
	border-radius: 50%;
	background: url("../image/li_arrow.svg") no-repeat center center;
   background-size: 70%;
   filter: invert(20%) sepia(83%) saturate(3689%) hue-rotate(353deg) brightness(85%) contrast(96%);
}
.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*/

.news_home {
   width: 100%;
   margin: 30px 0 70px;
   font-size: 16px;
   border: 10px solid #F2F2F2;
   padding-left: 50px;
   padding-right: 50px;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}
.news_home_block {
   display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
}
.news_home_ttl,
.news_home_link {
   line-height: 1.5em;
   padding: 15px 0;
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   border-bottom: 1px solid #F2F2F2;
}
.news_home_ttl {
   width: 20%;
   text-align: left;
}
.news_home_link {
   width: 80%;
}
.news_home_ttl p {
   color: #222;
   font-weight: 500;
}
.news_home_link a {
   color: 222;
}
@media screen and (max-width:1280px) {
   .news_home {
      width: 100%;
		padding-left: 50px;
		padding-right: 50px;
      box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
   }
}
@media screen and (max-width:780px) {
   .news_home {
      width: 100%;
		padding-left: 30px;
		padding-right: 30px;
      font-size: 14px;
   }
}
@media screen and (max-width:480px) {
   .news_home {
      display: block;
      padding: 15px;
   }
   .news_home_block {
      display: block;
      box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
   }
   .news_home_ttl,
   .news_home_link {
      width: 100%;
      padding: 0px;
      line-height: 1.7em;
      border: none;
   }
}/*/mediaquery*/

.infographics_img {
   width: 80%;
   margin: 0 auto;
   text-align: center;
}
.infographics_img img {
   width: 100%;
   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*/

.office_index {
	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-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
   margin: 30px 0 100px;
}
.office_index_contens { width: 58%; }
.office_index_map { width: 38%; }
/* ~~ table ~~ */
.office_index_contens table {
   font-size: 0.9em;
	color: #222;
	line-height: 1.5em;
   letter-spacing: 0.1em;
   margin: 0px;
	width: 100%;
}
.office_index_contens table tr th {
	background: #f5f6f8;
	width: 20%;
	padding: 10px;
   color: #000;
	font-weight: 400;
   text-align: left;
	vertical-align: top;
	border-top: solid 1px #e3e3e3;
}
.office_index_contens table tr td {
	background: #FFF;
   padding: 10px;
	color: #222;
	font-weight: 200;
   border-top: solid 1px #e3e3e3;
}
.office_index_contens table .last {
    border-bottom: solid 1px #e3e3e3;
}
.office_index_map iframe {
	width: 100%;
	height: 250px;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	.office_index {
		display: block;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.office_index_contens,.office_index_map { width: 100%;}
   .office_index_contens table tr th {
		background: #f5f6f8;
		display: block;
		width: 100%;
		font-weight: bold;
		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;
	}
	.office_index_contens table tr td {
		display: block;
		padding: 10px;
		border-top: none; 
	}
	.office_index_contens table tr th.last { border: none; border-top: solid 1px #eee; }
   .office_index_map {margin-top: 30px;}
}/*/mediaquery*/

ul.group_block {
   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.group_block li {
   background: #FFF;
	width: 48%;
	overflow: hidden;
	margin-bottom: 30px;
	transition: all .2s cubic-bezier(.02, .01, .47, 1) 0s;
   background-size: 50%;
	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;
}
ul.group_block li .group_block_ttl {
   padding: 15px 30px;
   background: #eee;
   border-top: 1px solid #ee0000;
}
.group_block_ttl h3 {
   font-size: 1.2em;
   color: #222;
   font-weight: 500;
}
.group_block_txt {
   padding: 30px;
   text-align: center;
}
ul.group_block li .group_block_txt img {
   width: 80%;
   height: auto;
   margin: 15px 0 20px;
}
.group_block_txt p {
   text-align: left;
   font-size: 0.875em;
	line-height: 1.7em;
	color: #222;
	font-weight: 300;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
	ul.group_block {
		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.group_block li { width: 100%; }
   ul.group_block .txt_block { padding: 20px; }
}/*/mediaquery*/

.Recruit_top_box {
   background: #f9fafa;
   border: solid 1px #e3e3e3;
   padding: 0 50px;
   margin-top: 50px;
	overflow: hidden;
	font-size: 16px;
}
.Recruit_top_ttl {
   color: #d51918;
	font-size: 1.4em;
	font-weight: 500;
	margin: 50px 0 20px;
}
/* ~~ table ~~ */
.must_doc {
	margin: 30px 0 50px;
	font-size: 14px;
}
.must_doc table {
   font-size: 0.9em;
	color: #222;
	line-height: 1.5em;
   letter-spacing: 0.1em;
   margin: 0px;
	width: 100%;
   border-right: solid 1px #e3e3e3;
   border-left: solid 1px #e3e3e3;
}
.must_doc table tr th {
	background: #FFF;
	width: 25%;
	padding: 10px;
   color: #000;
	font-weight: 400;
   text-align: left;
	vertical-align: top;
	border-top: solid 1px #e3e3e3;
}
.must_doc table tr td {
	background: #FFF;
   padding: 10px;
	color: #222;
	font-weight: 200;
   border-top: solid 1px #e3e3e3;
}
.must_doc table tr td a {
	color:#09F ;
	text-decoration: underline;
}
.must_doc table tr td a:hover {
	text-decoration: none;
}
.must_doc table .last {
    border-bottom: solid 1px #e3e3e3;
}
.must_doc table td iframe {
	width: 100%;
	height: 400px;
}
@media screen and (max-width:480px) {
   .Recruit_top_box {
      padding: 30px 30px 0;
      margin-top: 20px;
   }
   .Recruit_top_ttl {
      font-size: 1.2em;
      margin: 0px 0 10px;
   }
   .must_doc {
      margin: 0 0 30px;
   }
	.must_doc table tr th {
		background: #f5f6f8;
		display: block;
		width: 100%;
		font-weight: bold;
		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;
	}
	.must_doc table tr td {
		display: block;
		padding: 10px;
		border-top: none; 
	}
	.must_doc table tr th.last { border: none; border-top: solid 1px #eee; }
}/*/mediaquery*/

.index_video {
   width: 100%;
}
.index_video video {
   width: 100%;
   height: auto;
}
/*---------------------------------*/
/*-------    RESPONSIVE    --------*/
/*---------------------------------*/
@media screen and (max-width:480px) {
   .index_video_bg {
      position: relative;
      width: 100%;
      height: 180px;
   }
   .index_video {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      overflow: hidden;
   }
   .index_video video {
      position: absolute;
      top: 50%;
      left: 50%;
      object-fit: cover;
      transform: translate(-50%, -50%);
      width: 100%;
      height: 100%;
   }
}/*/mediaquery*/

/* ~~ collect_form ~~ */
.collect_form {
	display: block;
	margin: 0;
	padding: 30px 0;
}
.collect_form span {
	display: block;
   background: #3f48cc url("../image/collect_form_bg.png") no-repeat center center;
   background-size: 100%;
	width: 50%;
 	padding: 20px 0;
	margin: 0;
	border-radius: 2px;
	text-align: center;
	color: #FFF;
	font-weight: 500;
	font-size: 0.9375em;
	
}
a.collect_form:hover span {
   text-decoration: underline;
}

/* ~~ index_contents_lv1 ~~ */
.index_contents_lv1_bg {
	background: #f8f8f8;
	display: block;
	padding: 80px 0 20px;
	border-top: 1px solid #e3e3e3;
}
.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: #FFF;
	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-right: 30px;
}
.index_contents_lv1_copy {
	line-height: 2em;
}
.index_contents_lv1_copy h2 {
	font-size: 1.4em;
	color: #222;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.index_contents_lv1_copy h2:after {
   content: "";
   width: 20px;
   height: 2px;
   display: block;
   position: relative;
   left: 0;
   top: 15px;
   background: #d51918;
	margin-bottom: 40px;
}
.index_contents_lv1_description {
	margin-bottom: 30px;
}
.index_contents_lv1_description p {
	color: #222;
	line-height: 1.7em;
	font-size: 0.9375em;
	letter-spacing: .05em;
	font-weight: 400;
}
.index_contents_lv1_description p.catch {
	color: #222;
	font-size: 1em;
	font-weight: 200;
}
/* ~~ list ~~ */
.index_contents_lv1_description ul {
	margin: 15px 0;
}
.index_contents_lv1_description ul li {
	float: left;
	margin-right: 15px;
	padding-left: 13px;
	background: url(../image/table_li_mk.png) left center no-repeat;
	color: #222;
	line-height: 1.7em;
	font-size: 0.75em;
	letter-spacing: .05em;
	font-weight: 400;
}
/* ~~ 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 {
	-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: #ffcd3d;
}
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: 30px;
		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: 16px;
		margin: 10px 10px 50px;
	}
	.index_contents_lv1_inner { width: 100%;}
	.index_contents_lv1_main {
		padding: 20px 0;
	}
	.index_contents_lv1_description ul li {
		float: none;
	}
}/*/mediaquery*/

/* ~~ 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: #222;
	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;
}