@charset "utf-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
/*foucusReset*/
input[type="text"], 
input[type="password"], 
input[type="submit"],
textarea, 
button,
select {
	-webkit-appearance: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
body {
	line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}
nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	color: #000000;
}
/* change colours to suit your needs */
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}
/* change colours to suit your needs */
mark {
	background-color:#ff9;
	color:#000; 
	font-style:italic;
	font-weight:bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
/* change border colour to suit your needs */
hr {
	display:block;
	height:1px;
	border:0;   
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}
input, select {
	vertical-align:middle;
}
ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
ol{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
/*borderLineInBox*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
/*aReset*/
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a img {
	border-width: 0px;
	border-style: none;
	border-color: #fff;
	background: transparent;
}
/* pageNaviCss */
.wp-pagenavi:before,
.wp-pagenavi:after,
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.wp-pagenavi:after,
.cf:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf,
.wp-pagenavi {
	zoom:1;
}
::selection {
	background: #FFF000; /* Safari */
}
::-moz-selection {
	background: #FFF000; /* Firefox */
}
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
}
select::-ms-expand {
  display: none;
}
select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}
input {
	display: block;
	margin: auto;
	margin-bottom: 3em;
}
address{
	font-size: 12px;
	line-height: 1.8em;
	font-style: normal;
}

/* ABSOLUTE-CENTER_
{
    position: absolute;
    top: 50%;
    bottom: auto;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
 }
 */
 .mark{
	background: linear-gradient(transparent 60%, #ffff00 0%);
	font-weight: bold
}
/*-------------------------------------------------------------------------
FLEX-STYLE
------------------------------------------------------------------------*/
/*初期値　横並び(左詰)*/
.fle_l{
    display: flex;
    flex-wrap: wrap;
}
/*横並び(右詰)*/
.fle_r{
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}
/*横並び(センタリング)*/
.fle_c{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
/*横並び(左右均等振り*コンテンツの間)*/
.fle_btw{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
/*横並び(左右均等振り*コンテンツの両端)*/
.fle_ard{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
/*コンテンツの横位置　右寄せ*/
.ps_right {
    justify-content: flex-end
}
/*コンテンツの高さ位置　中央*/
.ps_ctr {
    align-items: center
}
/*コンテンツの高さ位置　下揃え*/
.ps_btm {
    align-items: flex-end
}
/*コンテンツの並び順 右から左*/
.order_r-rv{
	flex-direction: row-reverse;
}
/*コンテンツの並び順 下から上*/
.order_c-rv{
	flex-direction: column-reverse;
}
@media only screen and (max-width: 750px){
	/*コンテンツの並び順 右から左*/
	.sp_order_r-rv{
		flex-direction: row-reverse;
	}
	/*コンテンツの並び順 下から上*/
	.sp_order_c-rv{
		flex-direction: column-reverse;
	}
}
/*-------------------------------------------------------------------------
WRAP
------------------------------------------------------------------------*/
.wide_inner{
	position: relative;
	width: 100%;
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 40px;
}
.inner{
	position: relative;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 40px;
}
.mv_inner{
	width: 100%;
	height: 100%;
	position: relative;
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 40px;
	z-index: 11;
}
.narrow_inner{
	position: relative;
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 0 40px;
}
/*-------------------------------------------------------------------------
MARGIN-BASE
------------------------------------------------------------------------*/
.mrg_base{
	margin-bottom: 60px;
}
/*-------------------------------------------------------------------------
BTN-BASE
------------------------------------------------------------------------*/
.mrg_base{
	margin-bottom: 60px;
}
/*-------------------------------------------------------------------------
BODY
------------------------------------------------------------------------*/
body{
	width: 100%;
	color: #323232;
	font-weight: normal;
	letter-spacing: 0.1em;
	font-size: 14px;
	text-align: justify;
	text-justify: inter-ideograph;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	font-weight: normal;
	font-family: arial, sans-serif;
}
p{
	line-height: 1.8em;
}
img{
	width: 100%;
}
.sp_txt_l{
	text-align: center;
}
.small_note{
	font-size: 80%;
}
.a_line {
    border-bottom: 1px solid #0b71ff;
    color: #0b71ff
}
/*-------------------------------------------------------------------------
HEADER
------------------------------------------------------------------------*/
header{
	background: #FFF;
	width: 100%;
	border-bottom: 1px solid #dddddd;
}
h1{
	width: 290px;
}
.header_sns_list{
	margin-left: 20px;
}
.header_sns_list li:nth-child(1){
	margin-right: 10px;
}
.header_sns_list li a{
	display: block;
	line-height: 30px;
	height: 30px;
	width: 30px;
	background: #c4291e;
	color: #FFF;
	text-align: center;
	border-radius: 50%;
	letter-spacing: 0;
	transition: 0.3s;
}
.header_sns_list li a:hover{
	opacity: 0.7;
}
.header_menu{
	border-bottom: 1px solid #dddddd;
}
.header_menu{
	padding: 10px 15px;
}
.header_content_top_tel_ttl{
	display: block;
	width: 100%;
	font-size: 11px;
	font-weight: bold;
	padding: 6px 10px;
	text-align: center;
	background: #323232;
	margin-bottom: 5px;
	color: #FFF;
}
.header_content_top_tel_num_txt{
	font-weight: bold;
	letter-spacing: 0;
	font-size: 13px;
}
.header_content_top_tel_num{
	font-size: 24px;
	font-weight: bold;
	font-style: italic;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.05em;
}
.header_content_top_tel_open{
	display: block;
	width: 100%;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin-top: 5px;
}
nav li{
	border-right: 1px solid #dddddd;
}
nav li a{
	display: block;
	text-align: center;
	padding: 20px 40px;
	font-size: 11px;
	position: relative;
	transition: 0.3s;
	font-weight: bold
}
nav > ul > li > a:hover{
	color: #c4291e
} 
nav > ul > li > a:after{
	content: "";
	display: block;
	height: 3px;
	width: 0;
	position: absolute;
	bottom: -2px;
	left: calc( 50% - 30px );
	background: #c4291e;
	transition: 0.3s;
}
nav li a:hover:after{
	width: 60px;
}
nav li.parent{
	display: block;
	text-align: center;
	padding: 20px 40px;
	font-size: 11px;
	position: relative;
	transition: 0.3s;
	font-weight: bold
}
nav > ul > li.parent:hover{
	color: #c4291e
}
nav li.parent span{
	display: block;
	font-weight: 400;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	margin-bottom: 6px;
}
.nav_child{
	position: absolute;
	z-index: 100;
	width: 100%;
	bottom: -109px;
	left: 0;
	padding-top: 6px;
}
.nav_child a{
	display: block;
	background: #c4291e;
	width: 130%;
	font-weight: bold;
	color: #FFF;
	text-align: left;
	padding: 20px;
	font-size: 13px;
	position: relative;
	transition: 0.3s;
}
.nav_child a:hover{
	background: #000000;
}
nav li.parent .nav_child a{
	transform: translateX(20px);
	opacity: 0;
}
nav li.parent .nav_child a:nth-child(1){
	transition-delay: 0.1s;
	transition-duration: 0.2s;
}
nav li.parent .nav_child a:nth-child(2){
	transition-delay: 0.2s;
	transition-duration: 0.2s;
}
nav li.parent:hover .nav_child a:nth-child(1),
nav li.parent:hover .nav_child a:nth-child(2){
	transform: translateX(0);
	opacity: 1;
}
.nav_child a i{
	position: absolute;
	right: 20px;
}
.nav_child > *:nth-child(1){
	border-bottom: 1px solid #FFF;
}
nav li a span{
	display: block;
	font-weight: 400;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	margin-bottom: 6px;
}
.header_contact a{
	display: block;
	text-align: center;
	padding: 20px 65px;
	font-size: 11px;
	color: #FFF;
	background: #c4291e;
	font-weight: bold;
	transition: 0.3s;
}
.header_contact a:hover{
	background: #000000;
}
.header_contact a span{
	display: block;
	font-weight: 400;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	margin-bottom: 6px;
}
/*-------------------------------------------------------------------------
MV
------------------------------------------------------------------------*/
.mv{
	position: relative;
	overflow: hidden;
	width: 100%;
}
.mv:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
    background: url(img/movie_overlay_02.png) repeat top left;
    background-size: 24px;
    z-index: 10;
    opacity: 0.3
}
.mv_catch{
	width: 500px;
    position: absolute;
    top: 50%;
	left:40px;
    transform: translateY(-50%) translateX(0);
}
.mv_most_under_bg{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
    z-index: -11;
}
#video{
    position: absolute;
    top: 30%;
	left: 50%;
    transform: translateY(-30%) translateX(-50%);
	display: block;
	width: 100%;
	z-index: 5;
}
.mv_inner_btn{
	width: 270px;
	position: absolute;
	right: 40px;
	bottom: 0;
}
.mv_inner_btn a{
	background: #000000;
	line-height: 70px;
	display: block;
	font-weight: bold;
	font-size: 12px;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.4em;
	color: #FFF;
	text-align: center;
	padding-right: 20px;
	transition: 0.3s;
}
.mv_inner_btn a:hover{
	background: #c4291e
}
.mv_inner_btn_arrow{
	width: 30px;
	position: absolute;
	right: 20px;
	bottom: 25px;
}


/*-------------------------------------------------------------------------
TOP ABOUT
------------------------------------------------------------------------*/
.top_about{
	padding: 100px 0;
	overflow: hidden
}
.top_about .inner:after{
	content: "";
	position: absolute;
	top: -50px;
	left: -150px;
	background: url(img/top_company_logo.png) no-repeat center center;
	background-size: cover;
	display: block;
	width: 458px;
	height: 600px;
	opacity: 0.3;
}
.top_about_content{
	position: relative;
	padding: 40px;
	background: #FFF;
	z-index: 1;
	width: calc( 40% + 80px );
	margin-right: -80px;
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, .1), 0 4px 20px 0 rgba(0, 0, 0, .08)
}
.top_about_img{
	width: 60%;
	margin-bottom: 50px;
	position: relative
}
.top_about_img:after{
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	position: absolute;
	bottom: 50px;
	left: 50px;
	background: url(img/gray_pattern_02.png) repeat;
	background-size: 3px;
	opacity: 0.5;
	z-index: -1;
}

/*-------------------------------------------------------------------------
TOP ABOUT
------------------------------------------------------------------------*/
.footer_contact{
	padding: 50px 0px;
	color: #FFF;
}
.footer_contact_ttl span{
	font-size: 25px;
	margin-top: 10px;
	display: block;
	color: #FFF;
	margin-bottom: 20px;
}
.footer_contact_list_normal{
	margin-bottom: 30px;
}
.footer_contact_ttl{
	text-align: center;
	font-size: 12px;
}
.footer_contact_list p{
	margin-bottom: 20px;
	text-align: center;
	font-weight: bold;
}
.footer_contact_list_tel{
	margin-right: 30px;
}
.footer_contact_list_tel a{
	color: #FFF;
}
.footer_contact_list_tel_ttl{
	display: block;
	width: 130px;
	font-size: 11px;
	font-weight: bold;
	padding: 6px 10px;
	text-align: center;
	background: #eeeeee;
	border-radius: 5px;
	margin: 0 auto 10px;
}
.footer_contact_list_tel_num_txt{
	font-weight: bold;
	letter-spacing: 0;
	font-size: 13px;
}
.footer_contact_list_tel_num{
	font-size: 24px;
	font-weight: bold;
	font-style: italic;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.05em;
}
.footer_contact_list_tel_open{
	display: block;
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	margin-top: 5px;
}
.footer_contact_sns_list li:nth-child(1){
	margin-right: 20px;
}
.footer_contact_sns_list li a{
	display: block;
	line-height: 40px;
	height: 40px;
	width: 40px;
	background: #c4291e;
	color: #FFF;
	text-align: center;
	border-radius: 50%;
	letter-spacing: 0;
	transition: 0.3s;
}
.footer_contact_sns_list li a:hover{
	background: #000000;
}
.header_sns_list li a:hover{
	background: #000000;
}
.top_ttl{
	font-size: 28px;
	font-family: 'Montserrat', sans-serif;
	line-height: 1.4em;
	color: #c4291e;
	margin-bottom: 10px;
}
.top_ttl span{
	font-size: 13px;
	display: block;
	line-height: 1.3em;
	margin-bottom: 2px;
}
.top_strong{
	font-size: 18px;
	margin-bottom: 20px;
	font-weight: bold;
}
.btn_base{
	margin-top: 30px;
}
.footer_contact_btn_base.btn_base{
	margin-top: 0;
}
.btn_base a{
	height: 60px;
	width: 230px;
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, .1), 0 4px 20px 0 rgba(0, 0, 0, .08);
	font-weight: bold;
	font-size: 15px;
}
.btn_base_arrow{
	display: block;
	height: 60px;
	width: 40px;
	text-align: center;
	letter-spacing: 0;
	background: #c4291e;
	color: #FFF;
	position: relative;
}
.btn_base_txt{
	height: 60px;
	width: 190px;
	line-height: 60px;
	position: relative;
	background: #c4291e;
	font-family: 'Montserrat', sans-serif;
	color: #FFF;
	font-size: 12px;
}
.btn_base_txt > *{
	position: absolute;
    top: 50%;
	left: calc( 50% + 15px );
    transform: translateY(-50%) translateX(-50%);
    width: 100%;
    display: block;
    text-align: center;
    line-height: 1em
}
.btn_base_txt_after > *{
	transition: 0.3s;
}
.btn_base_txt_after > *:nth-child(even){
    transform: translateY(0);
}
.btn_base_txt_after > *:nth-child(odd){
    transform: translateY(0);
}
.btn_base a:hover .btn_base_txt_after > *:nth-child(even){
    transform: translateY(20px);
    display: inline-block;
	opacity: 0;
}
.btn_base a:hover .btn_base_txt_after > *:nth-child(odd){
    transform: translateY(-20px);
    display: inline-block;
	opacity: 0;
}

.btn_base_txt_before > *{
	opacity: 0;
	transition: 0.3s;
}
.btn_base_txt_before > *:nth-child(even){
    transform: translateY(20px);
    display: inline-block;
}
.btn_base_txt_before > *:nth-child(odd){
    transform: translateY(-20px);
    display: inline-block
}
.btn_base a:hover .btn_base_txt_before > *:nth-child(even){
    transform: translateY(0);
	opacity: 1;
}
.btn_base a:hover .btn_base_txt_before > *:nth-child(odd){
    transform: translateY(0);
	opacity: 1;
}
.btn_base_arrow i{
	position: absolute;
    top: 50%;
	left: calc( 50% + 1px );
    transform: translateY(-50%) translateX(-50%);
    font-size: 24px;
    line-height: 1em;
    transition: 0.3s;
}
.btn_base_arrow i.btn_base_arrow_after{
	left: calc( 50% - 20px );
	opacity: 0;
}
.btn_base a:hover .btn_base_arrow i.btn_base_arrow_after{
	left: calc( 50% + 1px );
	opacity: 1;
}
.btn_base a:hover .btn_base_arrow i.btn_base_arrow_before{
	left: calc( 50% + 20px );
	opacity: 0;
}
/*-------------------------------------------------------------------------
LOWER WORK_01
------------------------------------------------------------------------*/
.lower_intro_header_02{
	font-size: 16px;
	text-align: center;
	margin-bottom: 50px;
	font-family: 'Montserrat', sans-serif;
	color: #c4291e;
	position: relative;
}
.lower_intro_header_02_inner{
	display: block;
	width: 100%;
	position: relative;
	margin-top: -13px;
}
.lower_intro_header_02_inner span{
	display: block;
	width: 290px;
	background: #c4291e;
	color: #FFF;
	font-weight: bold;
	padding: 10px 10px;
	font-size: 17px;
	text-align: center;
	margin: 0 auto 15px;
	margin-top: 10px;
	line-height: 1.4em;
}
.lower_intro_header_02_inner:after{
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #c4291e;
	position: absolute;
	bottom: 50%;
	left: 0;
	z-index: -1;
}
.lower_owner_list li{
	width: calc( 33.33333% - 40px );
}
.lower_shikumi_img{
	display: block;
	max-width: 900px;
	margin: 0 auto 20px;
}
.lower_shikumi_setsumei_img{
	width: 200px;
	margin-right: 20px;
}
.lower_shikumi_setsumei_content{
	width: calc( 100% - 260px );
	padding: 20px;
	font-weight: bold;
	line-height: 1.8em;
	border-radius: 10px;
	border: 4px solid #c4291e;
	background: url(img/yerrow_dot.jpg) repeat;
	background-size: 6px
}
.lower_shikumi_setsumei_content span{
	color: #c4291e;
	border-bottom: 1px solid #c4291e;
	padding: 10px;
	background: #c4291e;
	color: #FFF;
	line-height: 1.4em;
	display: inline-block;
	margin-top: 10px;
}
.lower_shikumi_setsumei_content strong{
	color: #c4291e;
	font-size: 16px;
	border-bottom: 1px solid #c4291e;
}
.lower_work_01_wrap{
	margin-top: 30px;
}
.lower_work_01_wrap > *{
	margin-bottom: 100px;
}
.lower_work_01_wrap > *:last-child{
	margin-bottom: 50px;
}
.lower_work_02_wrap img{
	max-width: 800px;
	display: block;
	margin: 0 auto 20px;
}
.lower_merit_sec_ttl{
	text-align: center;
	margin-bottom: 15px;
}
.lower_merit_sec_ttl_no{
	font-family: 'Montserrat', sans-serif;
	color: #c4291e;
	font-size: 15px;
	font-weight: bold;
	font-style: italic;
	display: block;
	margin-bottom: 15px;
}
.lower_merit_sec_ttl_no span{
	font-size: 26px;
}
.lower_merit_sec_ttl_txt{
	font-size: 20px;
	font-weight: bold;
}
.lower_merit_sec_img{
	max-width: 500px;
	margin: 0 auto;
	display: block;
	margin-top: 20px;
}
.lower_merit_sec_img_02{
	max-width: 900px;
	margin: 0 auto;
	display: block;
	margin-top: 20px;
	margin-bottom: 20px;
}
.lower_merit_sec > *{
	margin-bottom: 50px;
	padding-bottom: 50px;
	border-bottom: 1px solid #dddddd;
}
.lower_merit_sec > *:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border: none;
}
.lower_works_01_qa{
	font-weight: bold;
	line-height: 1.8em;
}
.lower_works_01_qa dt{
	font-size: 16px;
	padding-top: 30px;
	position: relative;
}
.lower_works_01_qa dt:before{
	content: "QUESTION";
	position: absolute;
	top: 0;
	left: 0;
	color: #c4291e;
	font-family: 'Montserrat', sans-serif;
	font-style: italic;	
}
.lower_works_01_qa dd{
	font-size: 16px;
	padding: 15px;
	position: relative;
	background: #c4291e;
	color: #FFF;
	margin-top: 30px;
}
.lower_works_01_qa dd:after{
	content: "ANSWER";
	position: absolute;
	top: -17px;
	left: 20px;
	color: #c4291e;
	font-family: 'Montserrat', sans-serif;
	font-style: italic;	
}
.lower_risk_sec > *{
	margin-bottom: 50px;
	padding: 20px;
	border: 3px solid #c4291e;
	border-radius: 3px;
}
.lower_risk_sec h5{
	background: #f8f8f8;
	padding-top: 20px;
	padding-bottom: 20px;
	border: 1px solid #dddddd
}
.works_footer p{
	font-size: 18px;
	font-weight: bold;
	text-align: center
}
.works_footer .btn_base a{
	margin: 0 auto;
}
/*-------------------------------------------------------------------------
LOWER NEWS
------------------------------------------------------------------------*/
.news_wrap > *{
	margin-bottom: 30px;
}
.lower_news_list_ttl{
	padding: 15px;
	background: #f8f8f8;
	font-size: 18px;
	line-height: 1.4em;
	position: relative;
	margin-bottom: 10px;
}
.lower_news_list_cate{
	display: inline-block;
	width: 100px;
	padding: 10px 5px;
	font-size: 11px;
	background: #c4291e;
	color: #FFF;
	line-height: 1em;
	text-align: center;
	font-weight: bold;
    margin-right: 20px;
}
.lower_news_list_info{
	margin-bottom: 10px;
}
.lower_news_list_date{
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
    line-height: 1em;
	font-weight: normal;
	padding: 10px 5px;
}
.lower_news_list .lower_news_list_txt{
	border-bottom: 1px solid #eeeeee;
	padding-bottom: 20px;
}
.lower_news_list:last-child .lower_news_list_txt{
	border: none
}
.lower_news_list_img{
	padding: 10px;
	border: 1px solid #eeeeee;
	margin-bottom: 10px;
}
.lower_news_list_img img{
	width: 100%;
}
.lower_news_list_txt p{
	margin-bottom: 15px;
}
.lower_news_list_txt > p{
	margin-bottom: 15px;
}
.lower_news_list_txt > p:last-child{
	margin-bottom: 0;
}
.lower_news_list_txt a{
    border-bottom: 1px solid #0b71ff;
    color: #0b71ff
}
.lower_news_list_txt a:hover{
    opacity: .7
}
/*-------------------------------------------------------------------------
TOP SERVICE
------------------------------------------------------------------------*/
.top_service .inner{
	padding-bottom: 50px;
	margin-bottom: 100px;
}
.top_service .inner:after{
	content: "";
	display: block;
	height: 100%;
	width: 70%;
	position: absolute;
    top: 40px;
	left: 50%;
    transform: translateX(-50%);
	background: url(img/gray_pattern_02.png) repeat;
	background-size: 3px;
	opacity: 0.5;
	z-index: -1;
}
.top_service_head{
	text-align: center
}
.top_service_ttl{
	font-size: 45px;
	font-family: 'Montserrat', sans-serif;
	line-height: 1em;
	color: #c4291e;
	margin-bottom: 10px;
}
.top_service_ttl span{
	font-size: 13px;
	display: block;
	line-height: 1.3em;
	margin-bottom: 2px;
}
.top_service_strong{
	margin-bottom: 20px;
}
.top_service_strong span{
	display: inline-block;
	font-weight: bold;
	background: #c4291e;
	padding: 10px 25px;
	color: #FFF;
	margin: 5px auto;
}
.top_service_list li{
	width: calc( 50% - 10px );
	background: #FFF;
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, .1), 0 4px 20px 0 rgba(0, 0, 0, .08)
}
.top_service_list_txt{
	padding: 20px;
}
.top_service_list_txt h3{
	font-size: 16px;
	line-height: 1.8em;
	margin-bottom: 10px;
	padding-bottom: 10px;
	position: relative;
	text-align: center
}
.top_service_list_txt h3:after{
	content: "";
	display: block;
	height: 2px;
	width: 30px;
	background: #c4291e;
	position: absolute;
	left: calc( 50% - 15px );
	bottom: 0;
}
.btn_base.top_service_btn a{
	margin: 0 auto;
}
/*-------------------------------------------------------------------------
TOP RECRUIT
------------------------------------------------------------------------*/
.top_recruit{
	padding: 50px 0;
	position: relative;
	margin: 50px auto 0;
}
/*
.top_recruit:after{
	content: "";
	display: block;
	height: calc( 100% + 100px );
	width: 70%;
	position: absolute;
	top: -50px;
	left: 0;
	background: url(img/gray_pattern_02.png) repeat;
	background-size: 3px;
	opacity: 0.5;
	z-index: -3;
}
*/
.top_recruit:before{
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: url(img/top_recruit_bg.jpg) no-repeat right center;
	background-size: cover;
	z-index: -2;
}
.top_rec_com_txt{
	font-size: 37px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	letter-spacing: 0.02em;
	color: #c4291e;
	font-style: italic;
	line-height: 1.3em;
	text-align: start;
	opacity: 0;
}
.top_recruit_link_accountant .fle_btw{
	flex-direction: row-reverse;
}
.top_rec_com_txt span{
	font-size: 15px;
	line-height: 1.8em;
	letter-spacing: 0.2em;
	display: block
}
.top_rec_com_txt{
	width: calc( 100% - 650px );
}
.top_rec_com_content{
	width: 600px;
	background: #FFF;
	padding: 30px;
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, .1), 0 4px 20px 0 rgba(0, 0, 0, .08)
}
/*-------------------------------------------------------------------------
TOP COMPANY
------------------------------------------------------------------------*/
.top_company{
	padding: 50px 0;
	position: relative;
	margin: 0 auto 50px;
}
.top_company:before{
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: url(img/top_company_bg.jpg) no-repeat center center;
	background-size: cover;
	z-index: -2;
}

/*-------------------------------------------------------------------------
TOP NEWS
------------------------------------------------------------------------*/
.top_news{
	padding: 100px 0;
}
.news_ttl h2{
	font-family: 'Montserrat', sans-serif;
	color: #c4291e;
	font-size: 40px;
}
.news_ttl p{
	font-size: 14px;
	font-weight: bold;
	color: #c4291e;
}
.news_ttl{
	width: 370px;
}
.news_list{
	width: calc( 100% - 390px )
}
.news_list > *:nth-child(1) a{
	border-top: 1px solid #eeeeee;
}
.news_list > *{
	border-bottom: 1px solid #eeeeee;
}
.news_list a{
	display: block;
	padding: 20px 70px 20px 0;
	position: relative;
	transition: 0.3s;
}
.news_list a:before{
	content: "";
	display: block;
	height: 1px;
	width: 0;
	background: #c4291e;
	position: absolute;
	bottom: -1px;
	left: 0;
	transition: 0.3s;
}
.news_list a:hover:before{
	width: 100%;
}
.news_list a:after{
	content: "\f061";
	font-family: FontAwesome;
	font-size: 12px;
	color: #c4291e;
	position: absolute;
    top: 50%;
	right: 20px;
    transform: translateY(-50%);
}
.news_list_head{
	margin-bottom: 20px;
}
.news_list_head_time{
	font-family: 'Montserrat', sans-serif;
	color: #7f7f7f;
	font-weight: normal;
	font-size: 12px;
	margin-right: 15px;
}
.news_list_head_cate{
	display: inline-block;
	padding: 5px 25px;
	background: #eeeeee;
	border: 1px solid #eeeeee;
	font-size: 12px;
	letter-spacing: 0;
	border-radius: 3px;
}
.news_list_ttl{
	font-weight: normal;
	transition: 0.3s;
	line-height: 1.8em;
}
.news_list a:hover .news_list_ttl{
	color: #c4291e;
}

/*-------------------------------------------------------------------------
COMPANY
------------------------------------------------------------------------*/
.gmap{
	height: 400px;
	width: 100%;
}
/*-------------------------------------------------------------------------
ABOUT US
------------------------------------------------------------------------*/
.lower_about_wrap > *{
	margin-bottom: 50px;
	/*padding-bottom: 50px;*/
	position: relative
}
/*
.lower_about_wrap > *:after{
	content: "";
	display: block;
	height: 1px;
	width: calc( 100% - 80px );
	position: absolute;
	left: 40px;
	bottom: 0;
	background: #dddddd;
}
*/
.lower_member_txt_header{
	position: relative;
}
.lower_member_txt_img{
	width: 100%;
	position: relative;
}
.lower_member_txt_img img{
	width: 100%;
}
.lower_member_txt{
	margin-bottom: 10px;
}
.lower_member_header{
	position: absolute;
	bottom: 25px;
	left: 25px;
	z-index: 1;
	background: #FFF;
	padding: 15px 20px;
}
.lower_member_txt_header_ttl{
	color: #c4291e;
	display: block;
	margin-bottom: 15px;
	display: block;
}
.lower_member_txt_header_yakushoku{
	font-size: 13px;
	margin-bottom: 0;
	display: block;
	line-height: 1em;
	margin-bottom: -10px;
}
.lower_member_header_ttl{
	font-size: 18px;
}
.lower_member_txt_name_eng{
	font-size: 13px;
	color: #c4291e;
}
.lower_member_txt_message span{
	display: inline-block;
	padding: 7px 20px;
	font-size: 12px;
	color: #FFF;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	background: #c4291e;
	margin: 10px auto 10px 0
	
}
/*-------------------------------------------------------------------------
CONTACTFORM form_3
----------------------------------------------------------------*/
.lower_contact_step_chart{
	text-align: center
}
.lower_contact_ttl{
	font-size: 18px;
	margin-bottom: 10px;
}
.lower_contact_ttl span{
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	color: #c4291e;
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
}
.form_3{
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 15px;
  border-left: 1px dotted #dddddd;
  border-right: 1px dotted #dddddd;
}
.form_3 th,
.form_3 td {
	position: relative;
    text-align: left;
    vertical-align: top;
    padding: 10px 20px;
	border-top: 1px dotted #dddddd;
	vertical-align: middle;
}
.form_3 th{
	background: #f8f8f8;
}
.form_3 tr:last-child th,
.form_3 tr:last-child td{
	border-bottom: 1px dotted #dddddd;
}
.form_3.confirm tr th,
.form_3.confirm tr td{
	padding: 20px 15px;
}
.form_3 th h2{
	font-size: 14px;
	color: #000000;
	font-weight: bold;
}
.form_3 th{
	width: 250px;
}
.form_3 th{
	padding-right: 10px;
}
.form_3 .fix-txt{
	margin-top: 30px;
	line-height: 1.8em;
}
.form_3 .fix-txt a{
	display: block;
	line-height: 1.8em;
	color: #4e4d4d;
	font-size: 25px;
	margin-top: 40px;
}
.form_3 .fix-txt a i{
	color: #FFAB00;
}
.form_3 .fix-title{
	font-size: 20px;
	padding-bottom: 30px;
	border-bottom: 1px solid #000000;
}
/*---formDesign---*/
.form_3 input[type="text"], 
.form_3 input[type="submit"],
.form_3 input[type="tel"],
.form_3 input[type="search"],
.form_3 input[type="email"],
.form_3 input[type="mail"],
.form_3 input[type="password"],
.form_3 textarea, 
.form_3 button,
.form_3 select{
  outline: 0;
  width: 100%;
  padding: 15px;
  margin: 5px auto;
  outline: 0;
  border: 1px solid #DDDDDD;
  font-size: 16px;
  line-height: 1.2em;
  background: #FFF;
 }
input[type="file"]{
  padding: 15px;
  margin: 5px auto;
  outline: 0;
}
.form_3 .satsusu > div{
	width: 200px;
	float: left;
}
.form_3 .satsusu span{
	display: block;
	width: 20px;
	float: left;
	margin: 20px 10px;
}
.form_3 textarea{
	height: 10em;
}
.form_3 input[type="text"]:focus,
.form_3 input[type="tel"]:focus,
.form_3 select:focus,
.form_3 textarea:focus{
  border-color: #0096e5;
  }
  
.required{
	font-size: 10px;
	background: #f00000;
	display: inline-block;
	padding: 3px 10px;
	line-height: 1.4em;
	color: #FFF;
	border-radius: 3px;
	margin-left: 15px;
}
.any{
	font-size: 10px;
	background: #f0f0f0;
	display: inline-block;
	padding: 3px 10px;
	line-height: 1.4em;
	border-radius: 3px;
	margin-left: 15px;
	border: 1px solid #dddddd;
}
.radio_magazine input{
	display: none;
}
.radio_magazine label {
	display: block;
	font-weight: bold;
	display: block;
	font-weight: bold;
	position: relative;
	padding-left: 22px;
	padding-top: 0;
	padding-bottom: 0;
	transition: 0.3s;
	cursor: pointer;
	letter-spacing: 0;
	margin-right: 15px;
	line-height: 1.4em;
}
.radio_magazine label i{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 18px;
	color: #a8a8a8;
}
.radio_magazine input:checked + label {
}
.radio_magazine input:checked + label i{
	color: #e61e19;
}
.form_3 .select_wrap{
	position: relative;
}
.form_3 .select_wrap:after{
	content: "";
	display: block;
	height: 13px;
	width: 13px;
	border-bottom: 2px solid #105aa3;
	border-right: 2px solid #105aa3;
	transform: rotate(45deg);
	position: absolute;
	top: calc( 50% - 8px );
	right: 15px;
	z-index: 1;
}
/*PRIVACY*/

.privacy_chack{
	margin-bottom: 30px;
}
.lower_privacy_content_inner{
	background: #FFF;
	font-weight: normal
}
.contact_privecy_address{
	font-style: normal
}
.lower_privacy_content_inner.lower_contact_privacy{
	padding: 10px;
	text-align: left;
	height: 300px;
	overflow-y: scroll;
	margin: 10px auto 20px;
	border: 1px solid #dddddd;
	font-size: 13px;
}
.lower_contact_privacy_ttl{
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #eeeeee;
	font-weight: bold
}
.lower_privacy_content_inner{
	text-align: left
}
.lower_contact_privacy p{
	font-size: 13px;
	line-height: 2em;
}
.lower_contact_privacy dl{
	margin-bottom: 20px;
	line-height: 2em;
	font-size: 13px;
}
.lower_contact_privacy dt{
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #eeeeee;
	font-weight: bold
}
.lower_contact_privacy dl ul li{
	padding-left: 30px;
	position: relative;
}
.lower_contact_privacy dl ul li:after{
	content: "(1)";
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
}
.table_type02_list_no{
	margin-bottom: 0;
}
.lower_contact_privacy dl ul li:nth-child(2):after{
	content: "(2)";
}
.lower_contact_privacy dl ul li:nth-child(3):after{
	content: "(3)";
}
.lower_contact_privacy dl ul li:nth-child(4):after{
	content: "(4)";
}
.lower_contact_privacy dl ul li:nth-child(5):after{
	content: "(5)";
}
.lower_contact_privacy dl ul li:nth-child(6):after{
	content: "(6)";
}
.lower_contact_privacy dl ul li:nth-child(7):after{
	content: "(7)";
}
.lower_contact_privacy dl ul li:nth-child(8):after{
	content: "(8)";
}
.lower_contact_privacy dl ul li:nth-child(9):after{
	content: "(9)";
}
.lower_contact_privacy dl ul li:nth-child(10):after{
	content: "(10)";
}
.contact_privecy_address{
	font-style: normal;
	line-height: 2em;
	font-size: 13px;
}/*PRIVACY CHECK*/
.check_box01_wrap{
	margin: 0 auto 10px;
	text-align: center
}
.check_box01_inner{
	padding: 15px 30px;
	background: #f8f8f8;
	display: inline-block;
	margin: 0 auto;
	border: 1px solid #dddddd;
}
/*CHECK BOX*/
.check_box01 input{
	display: none;
}
.check_box01{
	padding-left: 27px;
	position: relative;
}
.check_box01 span{
	font-weight: bold;
}
.check_box01 span:after{
	content:"\f096";
	font-family: FontAwesome;
	margin-right: 7px;
	color: #ccc;
	font-size: 23px;
	position: absolute;
	top: -5px;
	left: 0;
}
.check_box01 span:before{
	content:"\f14a";
	font-family: FontAwesome;
	margin-right: 7px;
	color: #e61e19;
	font-size: 23px;
	position: absolute;
	top: -5px;
	left: 0;
	z-index: 1;
	transition: 0.3s;
	opacity: 0;
}
.check_box01 input[type="checkbox"]:checked + span:before{
	opacity: 1;
}
/*CHECK BOX*/
.check_box_multi li{
	margin-right: 24px;
	margin-bottom: 5px;
}
.check_box02 input{
	display: none;
}
.check_box02{
	padding-left: 19px;
	font-size: 13px;
	position: relative;
	letter-spacing: 0em;
}
.check_box02 span:after{
	content:"\f096";
	font-family: FontAwesome;
	margin-right: 7px;
	color: #ccc;
	font-size: 18px;
	position: absolute;
	top: -4px;
	left: 0;
}
.check_box02 span:before{
	content:"\f14a";
	font-family: FontAwesome;
	margin-right: 7px;
	color: #e61e19;
	font-size: 18px;
	position: absolute;
	top: -4px;
	left: 0;
	z-index: 1;
	transition: 0.3s;
	opacity: 0;
}
.check_box02 input[type="checkbox"]:checked + span:before{
	opacity: 1;
}
.contact_btn{
	margin: 20px auto 20px;
}
.contact_btn_inner{
	width: 270px;
	margin: 0 auto;
	position: relative;
}
.contact_btn_inner:before{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background: #c4291e;
	position: absolute;
	top: 0;
	right: 0;
	transition: 0.3s;
	z-index: 1;
}
.contact_btn_inner:after{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background: #000000;
	position: absolute;
	top: 0;
	right: 0;
	transition: 0.3s;
	z-index: 0;
}
.contact_btn.contact_btn_back .contact_btn_inner:before{
	background: #818181;
}
.contact_btn.contact_btn_back .contact_btn_inner:after{
	background: #000000;
}
.contact_btn_inner:hover:before{
	width: 0;
}
.contact_btn a,
.contact_btn input{
	display: block;
	width: 100%;
	padding: 20px 10px;
	text-align: center;
	font-size: 14px;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 0.2em;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.contact_btn a{
	font-size: 16px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
}
.thanks_btn{
	margin-top: 20px;
}
.thanks_btn li:nth-child(1){
	margin-bottom: 20px;
}
.thanks_btn li{
	margin-top: 0;
}
.thanks_btn_tel{
	width: 270px;
	background: #f8f8f8;
	text-align: center;
	padding: 13px 0;
	border: 1px solid #dddddd;
	margin: 0 auto;
}
.thanks_btn_tel_num_txt{
	font-weight: bold;
	letter-spacing: 0;
	font-size: 13px;
}
.thanks_btn_tel_num{
	font-size: 24px;
	font-weight: bold;
	font-style: italic;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.05em;
}
.thanks_btn_tel_open{
	display: block;
	width: 100%;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin-top: 5px;
}
.thanks_btn .contact_btn{
	margin-top: 0;
	margin-bottom: 0;
}
.privacy_chack .error,
.form_3 .error{
	font-size: 11px;
	color: #f00000
}
.privacy_chack .error{
	text-align: center
}

.lower_contact_step_chart ul{
	position: relative;
	margin: 30px auto 20px;
}
.lower_contact_step_chart li{
	position: relative;
	padding: 15px 15px;
	width: calc( 33% - 20px );
	text-align: center;
	margin-right: 30px;
	border-radius: 3px;
	border: 1px solid #dddddd;
	line-height: 1em;
	font-weight: bold;
	background: #f8f8f8;
	letter-spacing: 0.02em;
	color: #aaaaaa;
	z-index: 1;
}
.lower_contact_step_chart li:after{
	content: "";
	display: block;
	height: 1px;
	width: 32px;
	background: #dddddd;
	position: absolute;
	top: 50%;
	right: 100%;
	z-index: 0;
}
.lower_contact_step_chart li:nth-child(2).active:after,
.lower_contact_step_chart li:nth-child(3).active:after{
	background: #c4291e;
}
.lower_contact_step_chart li:last-child{
	margin-right: 0;
}
.lower_contact_step_chart li:first-child:after{
	display: none;
}
.lower_contact_step_chart li span{
	font-family: 'Montserrat', sans-serif;
	font-weight: 800;
	display: block;
	line-height: 1em;
	font-size: 13px;
	margin-bottom: 6px;
}
.lower_contact_step_chart li.active{
	background: #c4291e;
	color: #FFF;
}
@media screen and (max-width:700px) {
	.lower_contact_step_chart li{
		padding: 15px 10px;
		width: calc( 33% - 6px );
		margin-right: 9px;
	}
	.lower_contact_step_chart li:after{
		width: 10px;
	}
	.lower_contact_step_chart li:last-child{
		margin-right: 0;
	}
	.radia_contact_type label {
		width: calc( 50% - 5px );
		margin-bottom: 10px;
		border-left: 1px solid #dddddd;
	}
	.radia_contact_type {
		border: none
	}
	.form_3{
		margin-bottom: 15px;
		border-left: none;
		border-right: none;
	}
	.form_3 th{
		width: 100%;
		display: block;
	}
	.form_3 td{
		width: 100%;
		display: block;
		padding: 10px 0 30px 0;
	}
	.form_3 tr:last-child td{
		padding: 10px 0 0 0;
		border: none
	}
	.page_content_inner_head>div:nth-child(1) {
		margin-bottom: 10px;
	}
	.page_content_inner_head>div {
	  width: 100%
	}
	.page_content_inner_head:after {
		display: none;
	}

}
/*-------------------------------------------------------------------------
FOOTER CONTACT
------------------------------------------------------------------------*/
.footer_contact{
	position: relative;
	padding: 40px 0;
}
.footer_contact:after{
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	background: url(img/top_contact_bg.jpg) no-repeat left center;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -5;
}
.footer_contact:before{
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -4;
	background-image: linear-gradient(-50deg, #f9d423 0%, #c4291e 100%);
	opacity: 0.7;
}
.ttl_company_eng{
	font-family: 'Montserrat', sans-serif;
	font-size: 80px;
	position: relative;
	display: block;
    z-index: 2;
 }
.ttl_contact_eng{
	color: #FFF;
}
.ttl_contact_jp{
	color: #FFF;
	margin-top: 15px;
	font-size: 16px;
	display: block
}
.ttl_contact_eng{
	font-family: 'Montserrat', sans-serif;
	font-size: 50px;
	position: relative;
	display: block;
    z-index: 2;
}
.top_contact .btn_base{
	margin-top: 0;
}
/*-------------------------------------------------------------------------
LOWER HEADER
------------------------------------------------------------------------*/
.lower_header{
	padding: 100px 0;
	text-align: center
}
.lower_header{
    position: relative;
    color: #FFF;
}
.ol_bg:after{
    background: url(img/movie_overlay.png) top left;
    opacity: .4;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    content: '';
    display: block;
    z-index: -1;
}
.lower_header:before{
    content: "";
    z-index: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: block;
    z-index: -1;
}
.lower_header.recruit:before{
	background: url(img/lower_recruit_req_head.jpg) center center;
	background-size: cover;
}
.lower_header.company:before{
	background: url(img/lower_company_head.jpg) center center;
	background-size: cover;
}
.lower_header.works_01:before{
	background: url(img/lower_works_01_head.jpg) center center;
	background-size: cover;
}
.lower_header.works_02:before{
	background: url(img/lower_works_02_head.jpg) center center;
	background-size: cover;
}
.lower_header.contact:before{
	background: url(img/lower_contact_head.jpg) center center;
	background-size: cover;
}
.lower_header.about:before{
	background: url(img/lower_about_head.jpg) center center;
	background-size: cover;
}
.lower_header.news:before{
	background: url(img/lower_news_head.jpg) center center;
	background-size: cover;
}
.lower_header_jp{
	display: block;
	margin-bottom: 10px;
	font-size: 10px;
}
.lower_header_en{
	font-size: 30px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
}
.breadcrumb_wrap{
	background: #f8f8f8;
	margin-bottom: 70px;
}
.breadcrumb li{
	position: relative;
}
.breadcrumb li:after{
	content: "";
	display: block;
	height: 5px;
	width: 5px;
	border-right: 1px solid #323232;
	border-bottom: 1px solid #323232;
	transform: rotate(-45deg);
	position: absolute;
	right: -15px;
	top: 17px;
}
.breadcrumb li:last-child:after{
	display: none
}
.breadcrumb li a{
	font-size: 11px;
	font-family: 'Montserrat', sans-serif;
	font-weight: lighter;
	padding: 15px 0;
	display: inline-block;
}
.breadcrumb li{
	margin-right: 30px;
}
/*-------------------------------------------------------------------------
LOWER RECRUIT 
------------------------------------------------------------------------*/
.contents_wrap > *{
	margin-bottom: 70px;
}
.lower_intro_header{
	font-size: 25px;
	line-height: 1.6em;
	font-weight: bolder;
	position: relative;
	padding-top: 20px;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.lower_intro_header:after{
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #e5e5e5;
	position: absolute;
	bottom: 0;
	left: 0;
}
.lower_intro_header:before{
	content: "";
	display: block;
	height: 1px;
	width: 100px;
	background: #000000;
	position: absolute;
	top: 0;
	left: 0;
}
.lower_intro_header span{
	display: block;
	font-size: 13px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bolder;
	line-height: 1em;
	margin-bottom: 10px;
	color: #c4291e
}
.lower_intro_strong{
	padding: 14px 20px;
	background: #f8f8f8;
	display: inline-block;
	margin-bottom: 10px;
	font-weight: bolder;
	font-size: 18px;
	border: 1px solid #dddddd;
}
.lower_intro_footer_txt{
	width: calc( 65% - 30px )
}
.lower_intro_footer_img{
	width: 35%
}
.lower_recruit_req_img{
	width: 100%;
}
.lower_recruit_req_table{
	background: #FFF;
}
.lower_intro_header.border_none{
	padding-bottom: 0;
}
.lower_intro_header.border_none:after{
	display: none;
}
.lower_recruit_flow{
	position: relative;
}
.lower_recruit_flow:after{
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #dddddd;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: -1;
}
.lower_recruit_flow li{
	width: calc( 25% - 10px );
	text-align: center;
	border-radius: 4px;
	border: 1px solid #dddddd;
	padding-bottom: 20px;
	background: #FFF;
	font-weight: bolder;
	overflow: hidden;
}
.lower_recruit_flow li > span{
	display: block;
	padding: 10px;
	font-size: 13px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bolder;
	background: #f8f8f8;
	margin-bottom: 20px;
}
.lower_recruit_flow li:last-child > span{
	background: #c4291e;
	color: #FFF;
}
.lower_recruit_flow li > span > span{
	font-size: 20px;
}
.lower_recruit_entry .btn_base a{
	margin: 0 auto;
}

/*-------------------------------------------------------------------------
LOWER SERVICE 
------------------------------------------------------------------------*/
.lower_service_cate{
	position: relative;
	padding-bottom: 70px;
}
.lower_service_cate:after{
	content: "";
	display: block;
	height: calc( 100% - 240px );
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: #f8f8f8;
	z-index: -1
}
.contents_wrap > *.lower_service_cate{
	margin-bottom: 0;
}
.lower_service_list_wrap{
	padding: 15px;
	background: #f8f8f8;
	border: 1px solid #dddddd;
	margin-top: 20px;
}
.lower_service_list_ttl{
	margin-bottom: 10px;
	padding-left: 18px;
	position: relative;
}
.lower_service_list_ttl:after{
	content: "";
	display: block;
	height: 13px;
	width: 13px;
	background: #000000;
	position: absolute;
	left: 0;
	top: 1px;
	border-radius: 50%;
}
.lower_service_list li{
	display: inline-block;
	padding: 8px 13px;
	background: #c4291e;
	color: #FFF;
	font-size: 12px;
	line-height: 1.4em;
	font-weight: bold;
	margin-right: 15px;
}
.lower_service_cate_list li{
	width: calc( 50% - 15px );
}
.lower_service_cate_list_content{
	padding: 20px;
	background: #FFF;
}
.top_service_list_txt .btn_base{
	margin-top: 15px;
}
.top_service_list_txt .btn_base a{
	width: 100%;
}
.top_service_list_txt .btn_base a .btn_base_txt{
	width: calc( 100% - 40px );
}
.table_type02 {
  border: 1px solid #eeeeee;
  width: 100%;
  margin: 20px auto 0;
}

.table_type02 tr {
  border-bottom: 1px solid #eeeeee
}

.table_type02 tr th {
  width: 200px;
  vertical-align: middle;
  background-color: #f6f6f6
}

.table_type02 tr td {
  text-align: left;
  line-height: 1.6em;
}

.table_type02_title {
  display: block;
  font-weight: bold
}

.table_indent {
  margin-left: 1.2em;
  margin-top: -20px
}

.table_indent ul li {
  text-indent: -1.1em;
  padding-left: 1.1em
}

.fukuri_list li {
  text-indent: -1.1em;
  padding-left: 1.1em
}

.table_type02_list_no li{
	padding-left: 30px;
	position: relative;
}
.table_type02_list_no li:after{
	content: "(1)";
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
}
.table_type02_list_no{
	margin-bottom: 0;
}
.table_type02_list_no li:nth-child(2):after{
	content: "(2)";
}
.table_type02_list_no li:nth-child(3):after{
	content: "(3)";
}
.table_type02_list_no li:nth-child(4):after{
	content: "(4)";
}
.table_type02_list_no li:nth-child(5):after{
	content: "(5)";
}
.table_type02_list_no li:nth-child(6):after{
	content: "(6)";
}
.table_type02_list_no li:nth-child(7):after{
	content: "(7)";
}
.table_type02_list_no li:nth-child(8):after{
	content: "(8)";
}
.table_type02_list_no li:nth-child(9):after{
	content: "(9)";
}
@media only screen and (min-width: 751px) {
  .table_type02 tr th {
    width: 200px;
    padding: 20px
  }
  .table_type02 tr td {
    padding: 20px 40px;
    font-size: 14px
  }
}

@media only screen and (max-width: 750px) {
  .table_type02 tr th {
    width: 100%;
    padding: 20px
  }
  .table_type02 tr th, .table_type02 tr td {
    display: block
  }
  .table_type02 tr th {
    padding: 10px 15px
  }
  .table_type02 tr td {
    padding: 20px 15px
  }
}

.table_type02 th span {
  font-size: 11px;
  line-height: 1em;
  display: block;
  margin-top: -3px;
}
/*-------------------------------------------------------------------------
FOOTER 
------------------------------------------------------------------------*/
footer{
	background: #000000;
	padding: 50px 0;
}
.footer_head{
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #9a9a9a;
}
.footer_list{
}
.footer_list li{
	margin-right: 25px;
}
.footer_list li.parent{
	color: #9a9a9a;
}
.footer_list li.parent > *{
}
.footer_list li.parent > div{
	margin-top: 10px;
}
.footer_list li.parent > div a{
	padding-left: 15px;
}
.footer_list li a{
	color: #9a9a9a;
	transition: 0.3s;
}
.footer_list li a:hover{
	color: #c4291e;
}

.footer_sitemap_list_sns{
	margin-left: 10px;
}
.footer_sitemap_list_sns li:nth-child(1){
	margin-right: 10px;
}
.footer_sitemap_list_sns li a{
	display: block;
	line-height: 30px;
	height: 30px;
	width: 30px;
	background: #9a9a9a;
	color: #FFF;
	text-align: center;
	border-radius: 50%;
	letter-spacing: 0;
	transition: 0.3s;
}
.footer_sitemap_list_sns li a:hover{
	background: #c4291e
}
.footer_address{
	text-align: center
}
.footer_address h2{
	width: 250px;
	margin: 0 auto 10px;
	transition: 0.3s
}
.footer_address h2:hover{
	opacity: 0.7;
}
.footer_address address{
	color: #9a9a9a;
}
small{
	display: block;
	padding: 15px 10px;
	text-align: center;
	font-size: 11px;
	font-family: 'Montserrat', sans-serif;
}
/*-------------------------------------------------------------------------
SP NAV
------------------------------------------------------------------------*/
.sp_header{
	position:fixed;
	top: 0;
	left: 0;
	height: 50px;
	width: 100%;
	z-index: 1000;
	transition: 0.2s;
	background: #FFF;
	padding: 13px 10px;
	box-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.10), 0 1px 5px 0 rgba(0, 0, 0, 0.08);
}
.sp_header_logo{
	width: 220px;
	transition: 0.2s;
	margin-top: -3px;
}
.sp_nav_btn_1_square{
	width: 50px;
	height: 50px;
	background: #000000;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1001;
	transition: 0.2s;
}
.sp_nav_btn_1_square .sp_nav_btn_inner{
	width: 30px;
	height: 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
   	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	transition: .2s ease-in-out;
	cursor: pointer;
}

.sp_nav_btn_1_square .sp_nav_btn_inner span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	background: #FFF;
	border-radius: 9px;
	opacity: 1;
	right: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

.sp_nav_btn_1_square .sp_nav_btn_inner span:nth-child(1) {
  top: 0px;
}

.sp_nav_btn_1_square .sp_nav_btn_inner span:nth-child(2) {
  top: 8px;
}

.sp_nav_btn_1_square .sp_nav_btn_inner span:nth-child(3) {
  top: 16px;
}

.sp_nav_btn_1_square.open .sp_nav_btn_inner span:nth-child(1) {
  top: 6px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

.sp_nav_btn_1_square.open .sp_nav_btn_inner span:nth-child(2) {
  opacity: 0;
  left: auto;
  right: -60px;
}

.sp_nav_btn_1_square.open .sp_nav_btn_inner span:nth-child(3) {
  top: 6px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
/*SP_MENU*/
/*SP_NAV_WRAP*/
.sp_nav_wrap {
	position: fixed;
	top: 50px;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	overflow-y: hidden;
	visibility: hidden;
	z-index: 20;
	height: 100%;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	transition: 0.3s;
	line-height: 1em;
	transform: translate( 100% , 0);
	background: #FFF;
	padding-bottom: 70px;
}
.sp_nav_wrap.open {
	visibility: visible;
	transform: translate( 0 , 0);
}
.sp_nav_sitemap > li > a{
	padding: 18px 20px;
	display: block;
	background: #FFF;
	color: #323232;
	position: relative;
	font-weight: bold;
	border-bottom: 1px solid #dddddd
}

.sp_nav_sitemap > li > a:after{
	content: "";
	display: block;
	position: absolute;
	right: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 7px;
	width: 7px;
	border-right: 2px solid #323232;
	border-bottom: 2px solid #323232;
	transform: rotate(-45deg);
}
.sp_nav_sitemap > li.sp_nav_parent{
	background: #f8f8f8;
	color: #323232;
	position: relative;
	border-bottom: 1px solid #dddddd
}
.sp_nav_sitemap > li.sp_nav_parent span{
	display: block;
	padding: 18px 20px;
	position: relative;
	font-weight: bold;
}
li.sp_nav_parent span div{
	display: block;
	position: absolute;
	right: 17px;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 10px;
	width: 10px;
	transition: 0.3s;
}
li.sp_nav_parent span div:after{
	content: "";
	display: block;
	position: absolute;
	right: calc( 50% - 1px );
	top: 0;
	height: 10px;
	width: 2px;
	background: #323232;
}
li.sp_nav_parent span div:before{
	content: "";
	display: block;
	position: absolute;
	top: calc( 50% - 1px );
	right: 0;
	width: 10px;
	height: 2px;
	background: #323232;
}
.sp_nav_child li{
	padding: 0 20px 0 20px;
}
.sp_nav_child li a{
	padding: 18px 0 18px 15px;
	display: block;
	border-bottom: 1px solid #dddddd;
	color: #323232;
	position: relative;
	font-weight: bold;
}
.sp_nav_child li:last-child a{
	border: none;
}
.sp_nav_child li a:before{
	content: "";
	position: absolute;
	display: block;
	height: 6px;
	width: 6px;
	border-bottom: 1px solid #323232;
	border-left: 1px solid #323232;
	top: calc( 50% - 5px );
	left: 0;
}
.sp_nav_child li a:after{
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 7px;
	width: 7px;
	border-right: 2px solid #323232;
	border-bottom: 2px solid #323232;
	transform: rotate(-45deg);
}
.sp_nav_sitemap > li.sp_nav_parent span.active div{
	transform: rotate(315deg);
}
.sp_nav_sitemap > li.sp_nav_contact > a{
	color: #FFF;
		background: #c4291e;
}
.sp_nav_sitemap > li.sp_nav_contact > a:after{
	border-right: 2px solid #FFF;
	border-bottom: 2px solid #FFF;
}
.sp_nav_tel{
	margin: 20px auto 0;
	width: calc( 100% - 30px );
	background: #f8f8f8;
	padding: 20px 10px;
	text-align: center;
	border: 1px solid #dddddd
}
.sp_nav_tel_ttl{
	display: block;
	width: 100%;
	font-size: 11px;
	font-weight: bold;
	margin-bottom: 5px;
}
.sp_nav_tel_num_txt{
	font-weight: bold;
	letter-spacing: 0;
	font-size: 13px;
}
.sp_nav_tel_num{
	font-size: 24px;
	font-weight: bold;
	font-style: italic;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.05em;
}
.sp_nav_tel_open{
	display: block;
	width: 100%;
	font-size: 11px;
	font-weight: normal;
	text-align: center;
	margin-top: 5px;
}

.sp_nav_child{
    display:none;
}
.sp_nav_child.active{
    display:block;
}
.sp_nav_sarch{
	margin: 10px auto 0;
	width: calc( 100% - 30px )
}
.sp_nav_wrap .btn_base a{
	height: auto
}
.sp_header,
.sp_nav_wrap{
	display: none;
}
.sp_nav_sns_list{
	margin-top: 20px;
}
.sp_nav_sns_list li:nth-child(1){
	margin-right: 20px;
}
.sp_nav_sns_list li a{
	display: block;
	line-height: 30px;
	height: 30px;
	width: 30px;
	background: #c4291e;
	color: #FFF;
	text-align: center;
	border-radius: 50%;
	letter-spacing: 0;
	transition: 0.3s;
}
.sp_nav_sns_list li a:hover{
	opacity: 0.7;
}
/*-------------------------------------------------------------------------
RESPONSIVE
------------------------------------------------------------------------*/

@media only screen and (max-width: 1340px){
	nav{
		width: 84%;
	}
	nav ul{
		width: 100%;
	}
	nav li{
		width: 16%;
	}
	nav li.width_20{
		width: 20%;
	}
	nav li a{
		display: block;
		text-align: center;
		padding: 20px 10px;
		width: 100%;
		font-size: 11px;
	}
	nav li a span{
		font-size: 12px;
		letter-spacing: 0;
	}
	.header_contact{
		width: 16%;
	}
	.header_contact a{
		padding: 20px 5px;
	}
	#video{
		width: 135%;
	}
	.mv_catch{
		width: 400px;
	    position: absolute;
	    top: 50%;
		left:40px;
	    transform: translateY(-50%) translateX(0);
	}
	.top_about_content{
		width: calc( 40% + 80px );
		margin-right: calc( -80px - 10% );
	}
	.top_about_img{
		width: 70%;
	}
	.top_recruit_txt{
		font-size: 40px;
	}
}

@media only screen and (max-width: 1000px){
	.top_recruit > .fle_btw{
		display: block;
	}
	.top_company .inner{
		flex-direction: column-reverse;
	}
	.top_rec_com_txt{
		width: 100%;
		margin-bottom: 20px;
	}
	.top_rec_com_content{
		width: 100%;
	}
	.top_recruit:before{
		height: 60%;
	}
	.top_rec_com_txt_br_hide{
		display: none;
	}
	.top_recruit:after{
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		bottom: 0;
		right: 0;
		background: url(img/gray_pattern_02.png) repeat;
		background-size: 3px;
		opacity: 0.5;
		z-index: -3;
	}
	.top_recruit{
		padding: 230px 0 50px;
		position: relative;
		margin: 50px auto 0;
	}
	.top_company{
		padding: 230px 0 50px;
		position: relative;
		margin: 0 auto 0 ;
	}
	.top_company:before{
		height: 60%;
	}
	.top_company:after{
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		bottom: 0;
		right: 0;
		background: url(img/gray_pattern_02.png) repeat;
		background-size: 3px;
		opacity: 0.5;
		z-index: -3;
	}
}
@media only screen and (max-width: 940px){
	#video{
	    position: absolute;
	    top: 50%;
		left: 50%;
	    transform: translateY(-50%) translateX(-50%);
		display: block;
		width: auto;
		height: 120%;
		z-index: 5;
	}
	.top_service_list li{
		width: calc( 50% - 10px );
	}
	.top_service_list li:last-child{
		margin: 20px auto 0;
	}
	.top_about_content{
		width: calc( 50% + 80px );
		margin-right: calc( -80px - 30% );
	}
	.top_about_img{
		width: 80%;
	}
	.wide_inner{
		padding: 0 10px;
	}
	.inner{
		padding: 0 10px;
	}
	.mv_inner{
		padding: 0 10px;
	}
	.narrow_inner{
		padding: 0 10px;
	}
	.top_contact{
		position: relative;
		padding: 80px 0;
	}
	.ttl_contact_eng{
		font-size: 36px;
	}
	.ttl_contact_jp{
		font-size: 12px;
	}
	.mv_catch{
		width: 350px;
		left:10px;
	}
	.mv_inner_btn{
		right: 10px;
	}
	.top_about_img:after{
		bottom: -35px;
		left: -35px;
	}
	.top_about .inner:after{
		display: none;
	}
	.top_service .inner:after{
		content: "";
		display: block;
		height: 100%;
		width: 90%;
		position: absolute;
	    top: 30px;
		left: 50%;
	    transform: translateX(-50%);
		background: url(img/gray_pattern_02.png) repeat;
		background-size: 3px;
		opacity: 0.5;
		z-index: -1;
	}
	.top_rec_com_txt{
		font-size: 20px;
	}
	.top_rec_com_txt span{
		font-size: 10px;
	}
	.top_strong{
		line-height: 1.4em;
		font-size: 16px;
	}
}
.top_news > .btn_base{
	display: none;
}
@media only screen and (max-width: 860px){
	header{
		display: none;
	}
	.sp_header,
	.sp_nav_wrap{
		display: block;
	}
	.news_ttl{
		width: 100%;
		margin-bottom: 20px;
	}
	.news_ttl .btn_base{
		display: none
	}
	.news_list{
		width: 100%;
	}
	.news_list a{
		display: block;
		padding: 20px 50px 20px 0;
		position: relative;
		transition: 0.3s;
	}
	.top_news > .btn_base{
		display: block;
		margin: 30px auto 0;
	}
	.top_news > .btn_base a{
		margin: 0 auto;
	}
	.footer_list li{
		margin-right: 15px;
	}
	.footer_list li a{
		color: #9a9a9a;
		transition: 0.3s;
		font-size: 12px;
	}
	.lower_header{
		padding: 120px 0 100px;
		text-align: center
	}
	.lower_owner_list li{
		width: calc( 50% - 20px );
	}
	.lower_owner_list li:nth-child(3){
		margin: 0 auto;
	}
}
@media only screen and (max-width: 700px){
	.top_about{
		overflow: hidden;
		padding: 70px 0 40px;
	}
	.top_about_content{
		width: 90%;
		margin: -130px 0 0 10%;
	}
	.top_about_img{
		width: 90%;
		margin: 0 auto 0 0;
		margin-left: -10px;
	}
	.top_about_img:after{
		bottom: 35px;
		left: 35px;
	}
	.top_about > .fle_btw{
		flex-direction: column-reverse;
	}
	.top_service .inner{
		padding-bottom: 10px;
		margin-bottom: 100px;
	}
	.top_recruit:after{
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		bottom: 0;
		right: 0;
		background: url(img/gray_pattern_02.png) repeat;
		background-size: 3px;
		opacity: 0.5;
		z-index: -3;
	}
	.top_recruit{
		padding: 230px 0 25px;
		position: relative;
		margin: 25px auto 0;
	}
	.top_company{
		padding: 230px 0 25px;
		position: relative;
		margin: 0 auto 0 ;
	}
	.top_company:before{
		height: 60%;
	}
	.top_company:after{
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		bottom: 0;
		right: 0;
		background: url(img/gray_pattern_02.png) repeat;
		background-size: 3px;
		opacity: 0.5;
		z-index: -3;
	}
	.top_news{
		padding: 30px 0 50px;
	}
	.top_about_content{
		position: relative;
		padding: 20px;
	}
	.top_recruit_content{
		padding: 20px;
	}
	.top_rec_com_content{
		padding: 15px;
	}
	.top_service_list_txt{
		padding: 15px;
	}
	.footer_list{
		display: none;
	}
	.footer_address h2{
		width: 180px;
		margin: 0 auto 10px;
	}
	.footer_address{
		text-align: center;
	}
	.top_ttl{
		margin-bottom: 10px;
	}
	.top_strong{
		margin-bottom: 10px;
	}
	.btn_base{
		margin-top: 20px;
	}
	.footer_contact_list_normal{
		display: block;
	}
	.footer_contact_list_tel{
		margin: 0 auto 20px;
		text-align: center
	}
	.footer_contact_btn_base a{
		margin: 0 auto;
	}
	.lower_intro_header{
		font-size: 18px;
		padding-top: 15px;
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	.lower_intro_header:before{
		width: 70px;
	}
	.lower_member_header{
		bottom: 0;
		left: 0;
		background: #FFF;
		padding: 10px;
	}
	.lower_member_txt_header_ttl{
		margin-bottom: 7px;
		display: none
	}
	.lower_about_wrap > *{
		margin-bottom: 25px;
		position: relative
	}
	.contents_wrap > *{
		margin-bottom: 25px;
	}
	.breadcrumb_wrap{
		background: #f8f8f8;
		margin-bottom: 25px;
	}
	.lower_news_list_ttl{
		padding: 10px;
		font-size: 16px;
	}
	.lower_intro_footer_txt{
		width: 100%;
		margin-bottom: 10px;
	}
	.lower_intro_footer_img{
		width: 100%;
	}
	.lower_intro_header br{
		display: none
	}
	.lower_intro_strong{
		padding: 10px 12px;
		font-size: 15px;
	}
	.lower_work_01_wrap > *{
		margin-bottom: 40px;
	}
	.lower_shikumi_setsumei_img{
		display: none;
	}
	.lower_shikumi_setsumei_content{
		width: 100%;
	}
	.lower_intro_header_02{
		font-size: 14px;
		margin-bottom: 20px;
	}
	.lower_risk_sec > *{
		margin-bottom: 15px;
		padding: 10px;
	}
	.lower_merit_sec > *{
		margin-bottom: 25px;
		padding-bottom: 25px;
		border-bottom: 1px solid #dddddd;
	}
	.works_footer p{
		font-size: 16px;
		text-align: left
	}
	.works_footer p br{
		display: none
	}
	.works_footer{
		margin-top: -30px;
	}
	.lower_merit_sec_ttl_no{
		font-size: 12px;
		margin-bottom: 6px;
	}
	.lower_merit_sec_ttl_no span{
		font-size: 18px;
	}
	.lower_merit_sec_ttl_txt{
		font-size: 17px;
	}
}
@media only screen and (max-width: 570px){	
	.mv_inner_btn{
		width: 200px;
	}
	.mv_inner_btn a{
		line-height: 40px;
		font-size: 11px;
		letter-spacing: 0.1em;
		padding-right: 10px;
	}
	.mv_inner_btn_arrow{
		width: 24px;
		position: absolute;
		right: 20px;
		bottom: 15px;
	}	
	.mv_catch{
		width: 270px;
	    position: absolute;
	    top: 50%;
	    transform: translateY(-50%) translateX(0);
	}
	.top_about_content{
		width: 100%;
		margin: -130px 0 0 0;
	}
	.top_service_list li{
		width: 100%;
		margin: 0 auto 20px;
	}
	.top_service_list li:last-child{
		margin: 0 auto 0
	}
	.footer_contact_list p{
		text-align: left
	}
	.footer_contact_list p br{
		display: none;
	}
	.lower_recruit_flow{
		display: block;
	}
	.lower_recruit_flow li{
		width: 100%;
		margin: 0 auto 20px;
		position: relative;
		overflow: visible;
	}
	.lower_recruit_flow li:last-child{
		margin-bottom: 0;
	}
	.lower_recruit_flow li:last-child:after{
		display: none
	}
	.lower_recruit_flow li:after{
		content: "";
		display: block;
		height: 21px;
		width: 1px;
		background: #dddddd;
		position: absolute;
		bottom: -20px;
		left: 50%;
		z-index: -1;
	}
	.lower_recruit_flow:after{
		display: none;
	}
}
@media only screen and (max-width: 500px){
	.top_contact_content{
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}
	.top_contact .btn_base{
		width: 100%;
	}
	.top_contact .btn_base a{
		margin: 0 auto;
	}
	.lower_header.recruit:before{
		background: url(img/lower_recruit_req_head.jpg) right center;
		background-size: cover;
	}
}
@media only screen and (max-width: 460px){
	.top_about{
		overflow: hidden;
		padding: 15px 0 40px;
	}
	.top_about_content{
		width: 100%;
		margin: -30px 0 0 0;
	}
	.top_about_img{
		width: 100%;
		margin: 0 auto 0;
		margin-left: auto;
		vertical-align: middle
	}
	.top_about_img:after{
		top: 50%;
		left: -10px;
		width: calc( 100% + 20px );
		height: 100%;
	}
	.lower_owner_list li{
		width: 100%;
		margin: 0 auto 30px;
	}
	.lower_owner_list li:nth-child(3){
		margin: 0 auto;
	}
}
@media only screen and (max-width: 350px){
	.lower_intro_strong{
		padding: 10px 12px;
		font-size: 14px;
		letter-spacing: 0;
		width: 100%;
		text-align: center
	}
}
/*LOADING*/
.loading_wrap {
	width: 100%;
	width: 100vw;
	height: 100%;
	height: 100vh;
	position: fixed;
	z-index: 10000;
	overflow: hidden;
	transition: 0;
	color: #1687a7;
}
.loading_wrap_bg{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #FFF;
}
.loading_wrap.is_shown{
	visibility: hidden;
	transition-delay: 0;
	transition-duration: 0.4s; 
	opacity: 0;
	height: 0;	
}
.loading_wrap.is_shown:before{
	content: "";
	position: fixed;
	top: 0;
	display: block;
	height: 100%;
	width: 100%;
	background: #FFF;
}
.loading_wrap.is_shown:before{
	display: none;
}
.spinner{
	position: fixed;
    top: 50%;
    left: calc( 50% - 20px );
    transform: translateY(-50%) translateX(-50%);
	z-index: 100;
	width: 40px;
	height: 40px;
	margin: 0 auto;
	background: #c4291e;
	border-radius: 100%;  
	-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
	animation: sk-scaleout 1.0s infinite ease-in-out;
	transition: 0.6s;
}
.loading_wrap.is_shown .spinner{
	display: none;
}
@-webkit-keyframes sk-scaleout {
  0% { -webkit-transform: scale(0) }
  100% {
    -webkit-transform: scale(1.0);
    opacity: 0;
  }
}

@keyframes sk-scaleout {
  0% { 
    -webkit-transform: scale(0);
    transform: scale(0);
  } 100% {
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
    opacity: 0;
  }
}

/*TEL*/
.tel_link{
	pointer-events: none;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.tel_link{
		pointer-events: none;
	}
}
@media screen and (max-width:480px) {
	.tel_link{
		pointer-events: auto;
	}
}
