/* 共通部分 */
.btn{
	display: inline-block;
	text-align: center;
	text-decoration: none;
	outline: none;
	position: relative;
	z-index: 2;
	color: #fff;
	overflow: hidden;
	padding: 20px 20px 20px 0;
	line-height: 1;
	/*font-weight: bold;*/
}
.btn:hover{
	cursor: pointer;
}
.btn,
.btn::after{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.btn::after{
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
	top: 100%;
	width:100%;
	height: 100%;
	background-color: rgba(255,255,255,0.15);
	left:0;
}
.btn i{
	opacity: 1;
	position:absolute;
	right: 18%;
}
.btn:hover i{
	animation: anim_btn_icon .6s;
}
.btn:hover::after{
	animation: anim_btn_color .5s ease;
}
h3{
	font-size: 20px;
	padding-bottom: 20px;
	background: url(/common/images/bd-green.png) repeat-x 0 100%;
	margin-bottom: 60px;	
}
/*スマホ*/
@media screen and (max-width: 767px) {
h3{
	font-size: 15px;
	padding-bottom: 10px;
	background: url(/common/images/bd-green.png) repeat-x 0 100%;
	background-size: 15px;
	margin-bottom: 30px;	
}
}

/* index 募集部分*/
.career_nav{
	width: 100%;
	max-width: 1200px;
	padding: 0 15px;
	margin: 0 auto 60px;
}
.career_nav ul{
	text-align: center;
}
.career_nav li{
	text-align: center;
	font-size: 16px;
	/*font-weight: bold;*/
	padding: 0 30px;
}
.career_nav li a{
	display: block;
}
.career_nav li.slash{
	color: #d9d9d9;
	font-weight: normal;
	padding: 0;
}
.career_nav li i{
	display: block;
	opacity:1;
	margin-top: -10px;
	padding-top: 10px;
	padding-bottom: 0px;
}
.career_nav li:hover i{
	animation: anim_nav_icon .6s;
}
.contact_category{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 90px;
}
.contact_category h3{
	margin: 0 15px 25px;
}
.contact_category .contact_list{
	width: 50%;
	display: inline-block;
	padding: 0 15px;
	margin-right: -5px;
}
.contact_category h4{
	color: #0c3d4a;
	font-size: 20px;
	margin-bottom: 25px;
}
.contact_category .contact_content{
	padding:30px 100px 0;
	margin: 0 auto;
	border: solid 1px #d9d9d9;
}
.contact_category .contact_text{
	font-size: 16px;
	line-height: 1.6;
	width: 100%;
	margin-bottom: 30px;
}
.contact_category .contant_btn{
	background-color: #0c3d4a;
	width: 100%;
}

/* index recruit部分 */
.recruit {
	margin-bottom: 90px;
}
.recruit .btn{
	background-color: #0c3d4a;
	width: 220px;
}
.recruit h2{
	color: #0c3d4a;
	background: url(/common/images/bd-green.png) repeat-x 100% 100%;
	margin-bottom: 30px;
	line-height: 1.1;
	letter-spacing: -7px;
	padding-bottom: 10px;
}
.recruit .lead{
	font-family: san-serif;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0;
	padding-left: 20px;
	color: #0c3d4a;
	vertical-align: baseline;
}
.recruit .lead:before,
.recruit .lead:after{
	display: none;
}
.recruit{
	background-color: #f4f6f6;
}
.recruit_inner{
	padding: 60px 15px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.recruit_content{
	width: 585px;
	margin-right: -5px;
	margin-bottom: 20px;
	display: inline-block;
}
.recruit img{
	width: 272px;
}
.recruit .content_title{
	color: #0c3d4a;
	font-weight: bold;
	margin: 10px 0;
}
.recruit_text{
	width: 50%;
	display: inline-block;
	vertical-align: top;
	padding: 0 20px;
	margin-top: -5px;
}
.recruit .btn{
	margin-top: 20px;
}

/*スマホ*/
@media screen and (max-width: 767px) {
.page_title{
	margin-bottom: 45px;
}
.career_nav{
	padding: 0 20px;
	margin-bottom: 45px;
}
.career_nav ul{
	text-align: left;
	border-top: solid 1px #d9d9d9;
}
.career_nav li{
	font-size: 15px;
	padding: 0 5px 0 20px;
	text-align: left;
	display: block;
	position: relative;
	line-height: 3.3;
	border-bottom: solid 1px #d9d9d9;
}
.career_nav li.slash{
	display: none;
}
.career_nav li i{
	position: absolute;
	top: 0;
	left: 0;
}

.contact_category{
	margin: 0 auto 45px;
	padding: 0 20px;
}
.contact_category h3{
	margin: 0 0 15px;
}
.contact_category .contact_list{
	width: 100%;
	display: block;
	padding: 0;
	margin-right: 0;
}
.contact_category h4{
	font-size: 15px;
	margin-top: 15px;
	margin-bottom: 15px;
}
.contact_category .contact_content{
	padding:20px 20px 0;
}
.contact_category .contact_text{
	font-size: 15px;
	line-height: 1.4;
	margin-bottom: 15px;
}


.recruit {
	margin-bottom: 30px;
}
.recruit .btn{
	padding: 22px;
	display: block;
	width: 100%;
	font-size: 15px;
	margin-top: 10px;
}
.recruit h2{
	color: #0c3d4a;
	background: url(/common/images/bd-green.png) repeat-x 0 90%;
	background-size: 13px;
	margin-bottom: 30px;
	line-height: 1.1;
	letter-spacing: -6px;
	padding-left: 3px;
}
.recruit .lead{
	font-family: san-serif;
	font-style: normal;
	font-size: 11px;
	letter-spacing: 3px;
	padding-left: 20px;
	color: #0c3d4a;
	vertical-align: baseline;
}
.recruit_inner{
	padding: 30px 20px; 
	width: 100%;
	margin: 0 auto;
}
.recruit_content{
	width: 100%;
	margin-right: 0;
	display: block;
	margin-bottom: 45px;
}
.recruit_content:last-child{
	margin-bottom: 0;
}
.recruit img{
	width: 100%;
}
.recruit_text{
	width: 100%;
	display: block;
	vertical-align: top;
	padding: 0;
	margin-top: 0;
}
}


/* フォーム共通部分 */
h2{
	line-height: 0.6;
}
.career h2{
	line-height: 0.7;
}
.lead{
	letter-spacing: 2px;
	margin-top: 30px;
}
.career .lead{
	margin-top: 25px;
}
.contact_flow{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
}
.contact_flow img{
	width: 100%;
}
.contact_content{
	width: 100%;
	max-width: 1200px;
	margin: 90px auto;
	padding: 0 15px;
}
/*スマホ*/
@media screen and (max-width: 767px) {
.page_title {
	margin-bottom: 20px;
}
.lead{
	margin-top: 25px;
}
.contact_flow{
	width: 100%;
	padding: 0 20px;
}
.contact_content{
	width: 100%;
	padding: 0 20px;
	margin: 30px auto 40px;
}
}
/*fc*/
.fc .contact_owner{
	padding-bottom:120px;
	border-bottom: solid 1px #d9d9d9;
}
.contact_owner .fc_owner_text{
	margin-bottom: 50px;
}
.contact_owner .owner_step{
	margin: 30px 100px 0;
	position: relative;
}
.contact_owner .owner_step.first{
	margin-top: 100px;
}
.contact_owner .owner_step .step{
	font-size: 60px;
    font-family: 'Times New Roman', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Gothic Pro', 'ＭＳ Ｐ明朝', 'MS PMincho',serif;
    font-style: italic;
    letter-spacing: -6px;
    font-weight: normal;
    line-height: 1;
    color: #0c3d4a;
    position: absolute;
    top: 0;
    left: 0;
}
.contact_owner .owner_step .step_lead{
    margin-left: 200px;
    font-size: 20px;
    color: #0c3d4a;
    font-weight: bold;
}
.contact_owner .owner_step .step_text{
	margin-left: 200px;
}
.contact_owner .owner_step i{
    text-align: center;
    display: block;
    font-size: 30px;
    color: #0c3d4a;
    line-height: 1;
    margin-top: 40px;
}
.fc_owner_btn{
	text-align: center;
	margin: 100px auto;
	padding: 0 20px;
}
.fc_owner_btn .btn{
	width: 370px;
	border-radius: 30px;
	background-color: #c9151e;
}
.fc_owner_btn .btn i{
	margin-right: -20px;
}
/*スマホ*/
@media screen and (max-width: 767px) {
.contact_owner{
	padding-bottom: 50px;
}
.contact_owner .fc_owner_text{
	margin-bottom: 40px;
}
.contact_owner .owner_step{
	margin: 0;
	position: relative;
}
.contact_owner .owner_step .step{
	font-size: 40px;
    position: relative;
    text-align: center;
}
.contact_owner .owner_step.first{
	margin-top: 30px;
}
.contact_owner .owner_step .step_lead{
    margin-left: 0;
    margin-bottom: 5px;
    font-size: 15px;
    text-align: center;
}
.contact_owner .owner_step .step_text{
	margin-left: 0;
}
.contact_owner .owner_step i{
    font-size: 30px;
    margin-top: 40px;
    margin-bottom: 40px;
}

.fc_owner_btn{
	margin: 45px auto;
}
.fc_owner_btn .btn{
	width: 100%;
}
.fc_owner_btn .btn i{
	margin-right: -30px;
}
}
/*tenant*/
.contact_content.contact_owner{
	margin-bottom: 50px;
}
.contact_owner h3{
	margin-bottom: 30px;
}
.contact_owner .owner_text{
	margin-bottom: 80px;
}
.contact_owner table{
	width: 100%;
	border-collapse: collapse;
	border-top: solid 1px #d9d9d9;
}
.contact_owner tr{
	vertical-align: top;
	border-bottom: solid 1px #d9d9d9;
}
.contact_owner td{
	padding: 20px 0;
	font-size: 16px;
}
.contact_owner td.td_left{
	width: 170px;
}
.contact_owner td span.td_bar{
	color: #d9d9d9;
	margin-left: 5px;
}
.contact_owner td p{
	margin-bottom: 20px;
}
.contact_owner td p:last-child{
	margin-bottom: 0px;
}
.contact_owner .owner_btn{
	text-align: center;
	margin: 60px auto;
}
.contact_owner .owner_btn .btn{
	width: 270px;
	border-radius: 30px;
	background-color: #c9151e;
}
.contact_owner .owner_btn .btn i{
	margin-right: -10px;
}
/*スマホ*/
@media screen and (max-width: 767px) {

.contact_owner .owner_text{
	margin-bottom: 30px;
}
.contact_owner td{
	padding: 10px 0;
	font-size: 15px;
}
.contact_owner td.td_left{
	width: 84px;
	padding-right: 20px;
}
.contact_owner .owner_btn{
	margin: 30px auto;
}
}

/* フォーム入力 index*/
.contact_input{
	width: 1200px;
}
.contact_input .input_list {
	border-top: solid 1px #d9d9d9;
	margin-bottom: 90px;
}
.contact_input .row {
	border-bottom: solid 1px #d9d9d9;
	padding: 15px 0;
}
.contact_input .row .input_item {
	width: 160px;
	margin-right: 40px;
	display: inline-block;
}
.contact_input .row .input_item_detail {
	width: 960px;
	display: inline-block;
}
.contact_input .row .input_item span.required{
	font-size: 12px;
	color: #e60012;
	border: solid 1px;
	border-radius: 3px;
	padding: 2px;
	margin-left: 5px;
	vertical-align: baseline;
}
.contact_input .row .input_item_ex{
	margin: 10px 0 0;
}
.contact_input .row .input_item_file{
	display: inline-block;
    background-color: #f4f6f6;
    padding: 20px;
    line-height: 1;
    margin-left: 10px;
}
.contact_input .row .input_item_detail .bold{
	margin: 20px 0;
	/*font-weight: bold;*/
}
.contact_input .row .input_item_detail .bold i{
	color: #c9151e;
}
.contact_input .row .input_item_detail .bold a span{
	border-bottom: solid 1px;
	padding-bottom: 3px;
}
.contact_input .row .input_item_detail textarea{
	background-color: #f4f6f6;
	border:none;
	height: 140px;
	width: 100%;
	font-size: 16px;
    line-height: 1.5;
    padding: 15px 20px;
}
.contact_input .row .input_item_detail select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #f4f6f6;
    padding-left: 20px;
    height: 70px;
    width: 350px;
    border: none;
    border-radius: 0;
    font-size: 16px;
}
.contact_input .row .input_item_detail select::-ms-expand {
    display: none;
}
.contact_input .row .input_item_detail.select{
	position: relative;
}
.contact_input .row .input_item_detail.select i{
    position: absolute;
    bottom: 23px;
    left: 310px;  
}
.contact_input .row .input_item_detail input{
	vertical-align: baseline;
	background-color: #f4f6f6;
	border:none;
	height: 70px;
	width: 100%;
	font-size: 16px;
    line-height: 1.5;
    padding: 15px 20px;
}
.contact_input .row .input_item_detail .radiobox,
.contact_input .row .input_item_detail .checkbox {
	vertical-align: baseline;
	background-color: #f4f6f6;
	height: 70px;
	padding-top: 22px;
	padding-right: 30px;
}
.contact_input .row .input_item_detail .radiobox span,
.contact_input .row .input_item_detail .checkbox span{
	display: inline-block;
}
.contact_input .row .input_item_detail .radiobox input,
.contact_input .row .input_item_detail .checkbox input{
	height: auto;
	width: auto;
	vertical-align: baseline;
	margin-left: 30px;
	margin-right: 5px;
}
.contact_input .file_btn{
	background-color: #0c3d4a;
	width: 180px;
}
.contact_input .file_btn i{
	margin-right: -13px;
}
.contact_input .file_btn input[type="file"] {
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	font-size: 100px;
	cursor: pointer;
}
.input .input_btn{
	text-align: center;
	margin-bottom: 90px;
}
.input .input_btn .btn{
	background-color: #c9151e;
	width: 210px;
	border-radius: 30px;
}
/* 再入力 */
.contact_input .retry_message{
	color: #e60012;
	font-size: 20px;
	margin-top: -40px;
	margin-bottom: 30px;
	display: none;
}
.contact_input .retry_text{
	color: #e60012;
	display: none;
}
.contact_input .retry.retry_message{
	display: block;
}
.contact_input .retry.row .retry_text{
	display: block;
	margin-bottom: 10px;
}
.contact_input .row.retry .input_item_detail textarea,
.contact_input .row.retry .input_item_detail input,
.contact_input .row.retry .input_item_detail select,
.contact_input .row.retry .input_item_detail .radiobox,
.contact_input .row.retry .input_item_detail .checkbox{
	background-color: #fceaeb;
}

/*スマホ*/
@media screen and (max-width: 767px) {
.contact_input{
	width: 100%;
}
.contact_input .retry_message{
	font-size: 15px;
	margin-top: 30px;
}
.contact_input .input_list {
	margin-bottom: 45px;
	padding: 10px 0;
}
.contact_input .row .input_item,
.contact_input .row .input_item_detail {
	display: block;
	width: 100%;
}
.contact_input .row {
    margin-left: 0px;
    width: 100%;
    text-align:center;
}
.contact_input .row .input_item {
	width: auto;
	margin-right: 0;
	border-left: solid 6px #0c3d4a;
	padding-left: 7px;
	margin-bottom: 10px;
}
.contact_input .row .input_item span.required{
	font-size: 11px;
	border-radius: 2px;
}
.contact_input .row .input_item_detail .bold{
	margin: 10px 0;
	font-weight: normal;
}
.contact_input .row .input_item_detail textarea{
	height: 150px;
}
.contact_input .row .input_item_detail select{
	width: 100%;
}
.contact_input .row .input_item_detail.select{
	position: relative;
}
.contact_input .row .input_item_detail.select i{
    position: absolute;
    bottom: 23px;
    left: auto;
    right: 20px;
}
.contact_input .row .input_item_detail input{
	height: 60px;
	padding-left: 20px;
}
.contact_input .row .input_item_detail .radiobox,
.contact_input .row .input_item_detail .checkbox {
	height: auto;
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
}
.contact_input .row .input_item_detail .radiobox span,
.contact_input .row .input_item_detail .checkbox span{
	display: block;
	padding: 10px 0;
}
.contact_input .row .input_item_detail .radiobox input,
.contact_input .row .input_item_detail .checkbox input{
	margin-left: 20px;
}
.contact_input .btn{
	width: 100%;
}
.contact_input .file_btn i{
	margin-right: 0;
}
}
/* フォーム確認 check*/
.contact_check{
	width: 1200px;
}
.contact_check .check_list {
	border-top: solid 1px #d9d9d9;
	margin-bottom: 90px;
}
.contact_check .row {
	border-bottom: solid 1px #d9d9d9;
}
.contact_check .row p {
	display: inline-block;
	margin: 15px 0;
}
.contact_check .row p.check_item {
	width: 170px;
	margin-right: 30px;
}
.contact_check .row p.check_item_detail {
	width: 960px;
}
.check .check_btn{
	text-align: center;
	margin-bottom: 90px;
}
.check .btn{
	background-color: #c9151e;
	width: 190px;
	border-radius: 30px;
}
/*スマホ*/
@media screen and (max-width: 767px) {
.contact_check{
	width: 100%;
}
.contact_check .check_list {
	margin-bottom: 45px;
}
.contact_check .row p {
	display: block;
	margin: 10px 0;
}
.contact_check .row p.check_item {
	width: auto;
	margin-right: 0;
	border-left: solid 6px #0c3d4a;
	padding-left: 7px;
}
.contact_check .row p.check_item_detail {
	width: 100%;
}
.check .check_btn{
	margin-bottom: 50px;
}
}
/* フォーム完了 finish */
.contact_finish p{
	margin-bottom: 30px;
	font-size: 16px;
}
/*スマホ*/
@media screen and (max-width: 767px) {
.contact_finish p{
	margin-bottom: 20px;
	font-size: 15px;
}
}

/* ホバーアニメーション */
/* 色はcommonに記述 */
/* アイコン移動のみこちらに記述 */
@keyframes anim_nav_icon {
0% {
	opacity:0;
	padding-top: 0px;
	padding-bottom: 10px;
}

100%{
	opacity:1;
	padding-top: 10px;
	padding-bottom: 0px;
}
}
@keyframes anim_btn_icon {
0% {
	opacity:0;
	right: 27%;
}

100%{
	opacity:1;
	right: 18%;
}
}

/* 191115追記 */
.block_contact_category {
	margin: 0 15px 150px;
}
.common_list {
	margin: 10px 0 20px;

}
.common_list li {
	display: block;
}
.common_list li:before {
	content: '';
  background: #0c3d4a;
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
}
.txt_box {
	background: #f4f6f6;
	padding: 30px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	color: #0c3d4a;
}
.txt_box a {
	color: #0c3d4a;
	pointer-events: none;
}

/*スマホ*/
@media screen and (max-width: 767px) {
	.block_contact_category {
		margin: 0;
	}
	.txt_box {
		padding: 20px;
		font-size: 20px;
	}
	.txt_box a {
		text-decoration: underline;
	}
}