@charset "utf-8";
/*******************************************
	/common/css/common.css
*******************************************/
/*------------------------------------------
	reset
------------------------------------------*/
*{
	margin: 0;
	padding: 0;
/*	text-align: left;*/
}
hr{
	display:none;
	line-height:0;
	font-size:0;
	padding:0;
	margin:0;
	border:none;
}
a{
	color:inherit;
	text-decoration:none;
	outline:none;
}
a:hover{
	color:#bbb;
}
address{
	font-style:normal;
}
p{
	line-height:1.4;
}
img{
	border:none;
	width:auto;
	max-width:100%;
}
/*------------------------------------------
	base
------------------------------------------*/
html,body{
	width:100%;
	height:auto;
}
html{
	font-size:13px;
/*	font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "MS PGothic", sans-serif;*/
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","游ゴシック", "Yu Gothic", YuGothic,  "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
body{
	font-size:1.0em;
	line-height:1.4;
	color:#222;
	position:relative;
	min-width:1100px;
}
@media screen and (max-width: 640px) {
	body{
		min-width:100%;
	}
}
/*--------------clear--------------*/
.clear:after,
.clear:before{
	content:"";
	display:block;
	overflow:hidden;
	height:0;
}
.clear:after{
	clear:both;
}
.clear{
	zoom:1;
}
/*--------------inner--------------*/
.inner{
	max-width:1080px;
	min-width:1080px;
	width:auto;
	margin:0 auto;
}
.wide{
	min-width:1080px;
	width:auto;
	margin:0 auto;
}
@media screen and (max-width: 640px) {
	.inner,
	.wide{
		width:100%;
		min-width:0;
		max-width:640px;
	}
	.wrap .inner{
		width:92%;
		margin:0 auto;
		max-width:92%;
		min-width:92%;
	}
}

/*--------------hover--------------*/
.opa{
	transition: opacity .3s ease 0s;
	-moz-transition: opacity  .3s ease 0s;
	-webkit-transition: opacity  .3s ease 0s;
	-o-transition: opacity  .3s ease 0s;
	-ms-transition: opacity  .3s ease 0s;
}
.opa:hover{
	opacity:0.5;
}
/*--------------title--------------*/
.tit01{
	font-family: "ゴシックMB101 B", sans-serif;
	font-size:2.5rem;
	text-align:center;
	font-weight:normal;
	margin-bottom:90px;
}
.tit01 span{
	font-size:1.5rem;
	font-weight:bold;
	color:#FF9641;
	text-align:center;
	display:block;
	margin-bottom:50px;
}
.tit02{
	font-family: "ゴシックMB101 B", sans-serif;
	font-size:1.5rem;
	text-align:center;
	font-weight:normal;
	margin-bottom:30px;
}
@media screen and (max-width: 640px) {
	.tit01{
		font-size:1.3rem;
		margin-bottom:20px;
	}
	.tit01 span{
		font-size:1.2rem;
		margin-bottom:20px;
	}
	.tit02{
		font-size:1.2rem;
		margin-bottom:10px;
	}
}
/**/
.sp{
	display:none;
}
.pc{
	display:block;
}
@media screen and (max-width: 640px) {
	.sp{
		display:block;
	}
	.pc{
		display:none;
	}
}

.br_sp{display:none;}
@media screen and (max-width: 768px) {
	.br_sp{display:block;}
}
/*------------------------------------------
	header
------------------------------------------*/
#header{
	position:absolute;
	top:30px;
	z-index:100000;
	width:100%;
	box-sizing:border-box;
	}

#header h1{
	width:1080px;
	text-align:center;
	box-sizing:border-box;
	vertical-align:middle;
	margin:0 auto;
}

@media screen and (max-width: 640px) {
	#header{
		position:fixed;
		top:0px;
		right:0px;
		z-index:1000000;
		height:55px;
		border-bottom:1px solid #C8C9CA;
		border-right:1px solid #C8C9CA;
		border-left:1px solid #C8C9CA;		
		box-shadow: 0px 8px 6px -6px rgba(100,100,100,0.4);
		-webkit-box-shadow: 0px 8px 6px -6px rgba(100,100,100,0.4);
		-moz-box-shadow: 0px 8px 6px -6px rgba(100,100,100,0.4);
		background-color: rgba(255, 255, 255, 0.7);
	}
	#header h1{
		width:120px;
		height:auto;
		box-sizing:content-box;
		padding:10px 0px 0px;
	}

	#header h1 img {
		width: 100px;
	}
}
/*--------------spmenu--------------*/
#spmenu{
	position:fixed;
	top:0px;
	right:0px;
	z-index:10000000;
	width:70px;
	height:70px;
}

#header #spmenu #spbtn{
	font-size:0;
	line-height:0;
	position:absolute;
	top:0;
	bottom:0;
	right:0px;
	left:0;
	display:block;
	box-sizing:border-box;
	margin:auto;
}

#header #spmenu #spbtn a{
	display:block;
	width:48%;
	height:48%;
	background:#fff;
	padding:15px;
	border:3px solid #9E9E9F;
}
#header #spmenu #spbtn span{
	display:block;
	border:2px solid #9E9E9F;
	margin:0 0 11px;
}
#header #spmenu #spbtn.active a{
	background:#9E9E9F;
	border:3px solid #9E9E9F;
}
#header #spmenu #spbtn.active span{
	border:2px solid #fff;
}

@media screen and (max-width: 640px) {
	#header #spmenu{
		display:block;
		right:6px;
		width:55px;
		height:0px;
	}
	#header #spmenu p{
		position:absolute;
		top:0;
		bottom:0;
		right:66px;
		height:1.45em;
		margin:auto;
		font-size:1.35rem;
		color:#fff;
	}
	#header #spmenu #spbtn a{
		width:46%;
		height:19px;
	}
	#header #spmenu #spbtn span{
		display:block;
		margin:0 0 5px;
	}
}


/*--------------nav--------------*/
#nav{
	position:fixed;
	top:70px;
	right:0;
	z-index:10000000;
	background:#9E9E9F;
	display:none;
}
@media screen and (max-width: 640px) {
	#nav{
		top:55px;
		width:230px;
		float:none;
		position:absolute;
		top:100% + 1px;
		z-index:999999;
		display:none;
		border-bottom:2px solid #E0E0E0;
	}
}

/*--------------gnavi--------------*/
#gnavi{
	width:300px;
	position:static;
	float:right;
}
#gnavi ul{
	list-style:none;
}
#gnavi ul li{
	float:left;
	width:100%;
	margin:0 auto;
	display:block;
	float:left;
	box-sizing:border-box;
}
#gnavi ul li a{
	position: relative;
	width:100%;
	padding:15px 10px;
	box-sizing:border-box;
	display: inline-block;
	margin-bottom: 0px;
	outline: none;
	color:#FFF;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: bold;
	text-align:center;
	text-shadow: 0 0 1px rgba(255,255,255,0.3);
	font-size: 0.8rem;
	border-top:1px solid #E0E0E0;
	border-left:1px solid #E0E0E0;
	text-align:left;
}
	

#gnavi ul li a:hover,#gnavi ul .active a{
	color:#333;
}


#gnavi ul li a span{
	text-align:left;
	margin-right: 10px;
	font-size:1.0rem;
}
#gnavi ul li a:after{
/*	content:"\f105";
*/	display:block;
	font-family: FontAwesome;
	font-size:1.4rem;
	height:1.4rem;
	width:1.4rem;
	position:absolute;
	left:auto;
	background:transparent;
	top:0;
	bottom:0;
	right:1em;
	margin:auto;
	line-height:1.0;
	transition: none;
	-moz-transition: none;
	-webkit-transition: none;
	-o-transition: width none;
	-ms-transition: width none;
	color:#fff;
	opacity:1;
}
#gnavi ul li a:hover:after{
	height:1.4rem;
	width:1.4rem;
	color:#333;
}

.menu_top{
	display:block;
	text-align:right;
}

@media screen and (max-width: 640px) {
	#gnavi{
		width:100%;
	}
}


/*--------------topへ戻る--------------*/
.gotop{
	position:absolute;
	right:0px;
	top:-66px;
	width:70px;
	height:66px;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	.gotop{
		right:4%;
		bottom:6%;
		width:40px;
		height:40px;
	}
	.gotop:hover{
		background:#D6D6D6;
	}
	i.fa-angle-up{
		font-size:29px !important;
	}
}

/*------------------------------------------
	中途採用情報
------------------------------------------*/
#information{
	margin-bottom:100px;
	padding:20px 50px 0;
}
@media screen and (max-width: 640px) {
	#information{
		padding:76px 0px 0px;
		margin-top:-56px;
		margin-bottom:40px;
	}
}



.tabpanel ul {
	list-style: none;
	margin: 0 auto;
	width: 100%;
	text-align:center;
	font-size:1.20rem;
	font-weight:bold;
/*	font-family: "ゴシックMB101 B", sans-serif;
*/}
.tabpanel li {
	width: 33.33333%;
	display: block;
	float:left;
}
.tabpanel li.is-active {
	background: #FF9641;
}
.tabpanel li.is-active a{
	color:#FFF;
}
.tabpanel div#detail01,.tabpanel div#detail03,.tabpanel div#detail04,.tabpanel div#detail05,.tabpanel div#detail06 {
	display: none;
}
/* theme-tabpanel */
.theme-tabpanel li {
	text-align: center;
	border-top:2px solid #888888;
	border-right:2px solid #888888;
	box-sizing:border-box;
}

.theme-tabpanel li:first-child {
	border-left:2px solid #888888;
	border-radius:10px 0 0 0;
}

.theme-tabpanel li:nth-child(3) {
		border-radius:0 10px 0 0;
	}
.theme-tabpanel li:nth-child(4) {
		border-left:2px solid #888888;
}

.theme-tabpanel li:last-child {
	border-radius:0;
}

.theme-tabpanel li a {
	display: block;
	color: #B4B4B5;
	padding: 15px 10px;
	text-decoration: none;
}

.theme-tabpanel li a:hover {
	color:#231C1C;
}
.theme-tabpanel li.is-active a:hover {
	background:inherit;
	color:#fff;
}

.theme-tabpanel li:first-child a:hover {
	border-radius:8px 0 0 0;
}
.theme-tabpanel li:last-child a:hover {
	border-radius:0 8px 0 0;
}

.theme-tabpanel > div {
	font-size: 14px;
	line-height: 1.5;
	overflow: hidden;
	margin:0;
}
.theme-tabpanel h2{
	text-align:center;
	margin-bottom:30px;
}
@media screen and (max-width: 640px) {
	.tabpanel ul {
	font-size:1.1rem;
	}
	.tabpanel li {
		width: 33.3333333%;
		display: block;
		float:left;
		color: #999;
	}
	/*
	.tabpanel li:nth-child(1),.tabpanel li:nth-child(2),.tabpanel li:nth-child(3) {
		width: 33.3333333%;
	}
	*/
	.tabpanel li:nth-child(3) {
		border-radius:0 10px 0 0;
	}
	.tabpanel li:nth-child(4) {
		border-left:2px solid #888888;
	}
	.theme-tabpanel li:last-child {
		border-radius:0;
	}
	.theme-tabpanel li:nth-child(3) a:hover {
		border-radius:0 8px 0 0;/*少し丸を和らげる*/
	}
	.theme-tabpanel li:last-child a:hover {
		border-radius:0;
	}
	.theme-tabpanel li a {
		display: block;
		padding: 15px 10px;
		text-decoration: none;
	}
	.theme-tabpanel > div {
		margin:0;
	}
	.theme-tabpanel h2{
		width:30%;
		margin:0 auto 20px;
	}
}


/* 募集なし */
.noRecruitment{
	box-sizing:border-box;
	width:100%;
	padding:40px 0;
	border:2px solid #888888;
	background:#fff;
	text-align:center;
}

/*tableに関する記述*/
.clearfix:after { content: ""; display: block; clear: both; }
.property_detail dl{
	float:left;
	width:100%;
	display:table;
	font-size:0.9em;
	box-sizing:border-box;
	font-size:1.30rem;
/*	font-family: "ゴシックMB101 B", sans-serif;
*/	font-weight:normal;
}
.property_detail dl:first-child{
	border-top:2px solid #888888;
}

.property_detail dl dt,.property_detail dl dd{
	box-sizing:border-box;
	padding:14px 20px;
	display:table-cell;
	margin-top:-1px;
	vertical-align:middle;
}

.property_detail dl dt{
	width:30%;
	border-right:2px solid #888888;
	border-bottom:2px solid #888888;
	border-left:2px solid #888888;
	background:#fff;
	text-align:center;
}
.property_detail dl:last-child dt{
	border-radius:0 0 0 10px;
}

.property_detail dl dd{
	width:70%;
	border-right:2px solid #888888;
	border-bottom:2px solid #888888;
	background:#fff;
}

.property_detail dl:last-child dd{
	border-radius:0 0 10px 0;
}

@media screen and (max-width: 640px) {
	.property_detail dl{
		float:none;
		width:100%;
		font-size:1.15rem;
	}
	.property_detail dl dt{
		width:84px;
	}
	.property_detail dl dd{
		width: calc(100% - 84px);
	}
	.property_detail dl dt,.property_detail dl dd{
		padding:6px 20px;
	}
}


/*------------------------------------------
	新卒採用情報
------------------------------------------*/
#shinsotsu-information{
	margin-bottom:100px;
	padding:20px 50px 0;
}
#shinsotsu-information .transmission{
	text-align: center;
	font-size: 1.2rem;
	margin: 20px;
}
#shinsotsu-information .transmission a{
	text-decoration: underline;
}

/* タブボタンの長さ（カラム数はHTMLタグで管理） */
#shinsotsu-information .tabpanel2 li{
	width: calc(100% / var(--colNum));
}

@media screen and (max-width: 640px) {
	#shinsotsu-information{
		padding:76px 0px 0px;
		margin-top:-56px;
		margin-bottom:40px;
	}

	#shinsotsu-information .transmission{
		margin: 10px;
	}
}

.tabpanel2 ul {
	list-style: none;
	margin: 0 auto;
	width: 100%;
	text-align:center;
	font-size:1.20rem;
	font-weight:bold;
/*	font-family: "ゴシックMB101 B", sans-serif;
*/}
.tabpanel2 li {
	width: 33.33333%;
	display: block;
	float:left;
}
.tabpanel2 li.is-active {
	background: #FF9641;
}
.tabpanel2 li.is-active a{
	color:#FFF;
}
/* 初期状態でタブを非表示にする (初期表示するタブには「.is_initiallyShow」を追加) */
.tabpanel2 > div:not(.is_initiallyShow) {
	display: none;
}
/* theme-tabpanel2 */
.theme-tabpanel2 li {
	text-align: center;
	border-top:2px solid #888888;
	border-right:2px solid #888888;
	box-sizing:border-box;
}

.theme-tabpanel2 li:first-child {
	border-left:2px solid #888888;
	border-radius:10px 0 0 0;
}

.theme-tabpanel2 li:nth-child(3) {
		border-radius:0 10px 0 0;
	}
.theme-tabpanel2 li:nth-child(4) {
		border-left:2px solid #888888;
}

.theme-tabpanel2 li:last-child {
	border-radius:0;
}

.theme-tabpanel2 li a {
	display: block;
	color: #B4B4B5;
	padding: 15px 10px;
	text-decoration: none;
}

.theme-tabpanel2 li a:hover {
	color:#231C1C;
}
.theme-tabpanel2 li.is-active a:hover {
	background:inherit;
	color:#fff;
}

.theme-tabpanel2 li:first-child a:hover {
	border-radius:8px 0 0 0;
}
.theme-tabpanel2 li:last-child a:hover {
	border-radius:0 8px 0 0;
}

.theme-tabpanel2 > div {
	font-size: 14px;
	line-height: 1.5;
	overflow: hidden;
	margin:0;
}
.theme-tabpanel2 h2{
	text-align:center;
	margin-bottom:30px;
}
@media screen and (max-width: 640px) {
	.tabpanel2 ul {
	font-size:1.1rem;
	}
	.tabpanel2 li {
		width: 33.3333333%;
		display: block;
		float:left;
		color: #999;
	}
	/*
	.tabpanel2 li:nth-child(1),.tabpanel2 li:nth-child(2),.tabpanel2 li:nth-child(3) {
		width: 33.3333333%;
	}
	*/
	.tabpanel2 li:nth-child(3) {
		border-radius:0 10px 0 0;
	}
	.tabpanel2 li:nth-child(4) {
		border-left:2px solid #888888;
	}
	.theme-tabpanel2 li:last-child {
		border-radius:0;
	}
	.theme-tabpanel2 li:nth-child(3) a:hover {
		border-radius:0 8px 0 0;/*少し丸を和らげる*/
	}
	.theme-tabpanel2 li:last-child a:hover {
		border-radius:0;
	}
	.theme-tabpanel2 li a {
		display: block;
		padding: 15px 10px;
		text-decoration: none;
	}
	.theme-tabpanel2 > div {
		margin:0;
	}
	.theme-tabpanel2 h2{
		width:30%;
		margin:0 auto 20px;
	}
}








.goentry_box{
/*	font-family: "ゴシックMB101 B", sans-serif;
*/	display:table;
	margin:55px auto 140px;
}
a .goentry{
	margin:0px auto 30px;
	text-align:center;
	font-size:1.1rem;
	font-weight:normal;
	background:#FF9641;
	padding:20px 150px 15px;
	box-sizing:border-box;
	color:#fff;
	line-height:2.5rem;
	border-radius:40px;
}
a .goentry h2{
	font-size:1.2rem;
}
a .goentry strong{
	font-size:3.2rem;
}
a:hover .goentry{
	opacity:0.6;
	transition:0.4s;
}
a .goentry.is_wantedly {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size:1.6rem;
	font-weight: bold;
	color:#222;
	background-color: #fff;
	border: 1px solid #222;

	&::before {
		content: '';
		display: block;
		width: 50px;
		aspect-ratio: 190 / 150;
		background-image: url(../images/common/logo_wantedly.svg);
		background-size: contain;
		background-repeat: no-repeat;
	}
}
.other_wanna h4{
	color:#bbb;
	font-size:1.05rem;
	margin-bottom:20px;
}
.other_wanna ul{
	list-style:none;
}
.other_wanna li{
	font-size:1.3rem;
	font-weight:bold;
	margin-bottom:20px;
}
.other_wanna li:before{
	content:'「';
}
.other_wanna li:after{
	content:'」';
}
.other_wanna li a:hover{
	color:inherit;
	text-decoration:underline;
}


@media screen and (max-width: 640px) {
	.goentry_box{
		margin:5px auto 35px;
	}
	a .goentry{
		margin:20px auto 40px;
		font-size:0.90rem;
		background:#fff;
		padding:20px 10px 15px;
		color:#222;
		line-height:2.5rem;
		border-radius:20px;
		border:1px solid #222;
	}
	a .goentry strong{
		font-size:2.4rem;
	}
	a .goentry.is_wantedly {
		font-size: 1.4rem;
	}
	.other_wanna li{
		font-size:1.15rem;
		margin-bottom:10px;
	}
}


/*------------------------------------------
	footer
------------------------------------------*/
@media screen and (max-width: 640px) {
	.footer_logo_area{
		width:100%;
		padding:20px 0;
		border-top:1px solid #231815;
		text-align:center;
	}
	.footer_logo_area img{
		width:45%;
	}
}


#footer{
	width:100%;
	background:#A5A5A5;
	color:#FFF;
	position:relative;
}
#footer a:hover{
	color:#333;
}


/*--------------facebook--------------*/
.fb_inner{
	width:500px;
	margin:0px auto;
	padding:30px 0;
}
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
  width: 100% !important;
}

@media screen and (max-width: 640px) {
	.fb_inner{
		display:none;
		width:100%;
	}

  .fb-page-parent > .fb-page {
    width: 300px;
  }
}


/*--------------footer-nav--------------*/
#footer nav{
	max-width:880px;
	min-width:880px;
	width:auto;
	margin:0 auto 20px;
}
#footer nav > ul{
	list-style:none;
}
#footer nav > ul > li{
	float:left;
	width:220px;
	padding:30px 20px;
	box-sizing:border-box;
}
#footer nav > ul > li a{
	font-size:1.2rem;
}

#footer nav > ul > li > ol{
	margin-top:15px;
	list-style-position:inside;
}
#footer nav > ul > li > ol li{
	line-height:2.0rem;
}
#footer nav > ul > li > ol li a{
	font-size:1rem;
}
#footer nav > ul > li.entry{
	margin-top:5px;
}

#footer nav > ul > li.entry a{
	background:#FFF;
	display:block;
	border-radius:5px;
	text-align:center;
	color:#A5A5A5;
	width:90%;
	padding:10px 40px;
	box-sizing:border-box;
}
#footer nav > ul > li.entry a:hover{
	background:#FF9641;
	color:#fff;
	transition: 0.4s;
}
#footer .footer_logo{
	display:table;
	margin:0 auto 20px;
	padding-top: 40px;
}

/*--------------footer-utility--------------*/

#footer .utility{
	list-style:none;
	display:table;
	margin:0 auto 30px;
}
#footer .utility li {
	float:left;
}
#footer .utility li a{
	border-left:1px solid #FFF;
	padding-left:7px;
	padding-right:10px;
}
#footer .utility li:first-child a{
	border-left:none;
}


/*--------------footer-sp_area--------------*/
@media screen and (max-width: 640px) {
	#footer .footer_sp_area{
		width:100%;
	}
	#footer .footer_sp_area dl{
		width:100%;
		padding:15px 20px;
		border-bottom:1px solid #fff;
		font-size:1.2rem;
		box-sizing:border-box;
	}
	
	#footer .footer_sp_area dl dt{
		float:left;
		display:inline-block;
		width:55%;
	}
	#footer .footer_sp_area dl dd{
		float:left;
		display:inline-block;
		width:45%;
	}
}
/*--------------copyright--------------*/
#footer #copyright{
	text-align:center;
	font-size:1.05rem;
	font-weight:bold;
	color:#231815;
	padding:35px 0;
	background:#fff;
}
@media screen and (max-width: 640px) {
	#footer{
	}
	#footer #copyright{
		font-size:0.85rem;
		padding:15px 0;
	}
}