@charset "utf-8";

/*PCSP表示切り替え
----------------------------------------*/
.disp_pc {
	display: block !important;
}

.disp-_sp {
	display: none !important;
}

@media only screen and (max-width:750px) {
	.disp_pc {
		display: none !important;
	}

	.disp_sp {
		display: block !important;
	}
}
/*/PCSP表示切り替え
----------------------------------------*/


/*共通カラー
----------------------------------------*/

/*
:root {

--basered: #ce0942;

}
*/

/*/共通カラー
----------------------------------------*/


html,
body {

	font-size: 14px;
	/*font-family: arial, sans-serif;*/
	/*font-family: arial,serif;*/
	font-family: "メイリオ", Meiryo, sans-serif;

	height: 100%;

	color: #000000;
	line-height: 1.5;
	background-color: #ffffff;


}

body {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

a {
	color: #0000ff;
	text-decoration: none;
}

a:link {
	color: #0000ff;
}

a:visite {
	color: #0000cc;
}

a:hover {
	color: #ff0033;
}

a:active {
	color: #ff0033;
}

/*
a:hover {
opacity: .5;
}
*/

/*ヘッダ
----------------------------------------*/

header {
/*	height: 70px;*/
}


header .info {

/*	height: 100%;*/

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;

	padding: 12px;
}

header .info p:first-child {
width: 50%;
}

header .info p:last-child {
width: 40%;
}


/*/ヘッダ
----------------------------------------*/


/*標準レイアウト
----------------------------------------*/

main {
	width: 100%;
	flex: 1;
}

.inbody {
	margin: 0 auto;
	text-align: center;
	width: 98%;
	height: 100%;
}

/*/標準レイアウト
----------------------------------------*/

/*FV
----------------------------------------*/

#sec_fv {
background-color: #e8e8e8;
	/* background-image: url(../images/top_sp_c.jpg);
	background-repeat: no-repeat;
	background-size: contain; */
}

#sec_fv .title {
margin: 0 auto;
padding: 2%;
}

#sec_fv .mv img {
width: 100%;
}


#sec_fv .topbox {
padding: 0 10px 10px 10px;
margin-top: 20px;

}

#sec_fv .topbox li.emb {
text-align: right;
padding-right: 5%;
}

#sec_fv .topbox li.emb img {
width: 20%;
}

#sec_fv .topbox li+li {
margin-top: 15px;
}

#sec_fv .pt {
width:90%;
margin: 0 auto;
margin-top: 50px;
margin-bottom: 50px;
}

#sec_fv .pt li {


}

#sec_fv .pt li+li {
margin-top: 20px;
}

#sec_fv .copyblock {
width: 70%;
margin: 0 auto;
padding-bottom: 50px;
}

/*/FV
----------------------------------------*/

/*青ボタン並び
----------------------------------------*/



.bt_blue{
margin: 20px 10px;

}

.bt_blue p:last-child{
margin: 0 auto;
margin-top: 15px;
padding-bottom: 15px;
width: 70%;
}


/*/青ボタン並び
----------------------------------------*/


/*update 20210110*/

/*勤務地
----------------------------------------*/

#sec_dorm .work {
margin-top: 40px;
margin-bottom: 40px;
}


#sec_dorm .work .ttl {
font-size: 30px;
font-weight: bold;
/*color: #ff0000;*/

margin-bottom: 10px;
}

#sec_dorm .work .dorm {
	display: flex;
	flex-direction: column;;
	justify-content: center;
	align-items: stretch;
margin-bottom: 10px;
}

/*
#sec_dorm .work .dorm li {
width: calc( 100% / 3 );
}
*/

#sec_dorm .work .dorm li {
/*
	margin-bottom: 20px;
	border-bottom: 2px dotted #cccccc;
*/

	border: 2px solid #eeeeee;
	border-radius: 10px;
	padding: 20px;
	margin-bottom: 10px;

}

#sec_dorm .work .dorm li .pic {
margin-bottom: 10px;
}

#sec_dorm .work .dorm li .name {
text-align: center;
font-size: 20px;
color: #003366;
font-weight: bold;
}

#sec_dorm .work .dorm li .addr{
text-align: center;
margin-bottom: 10px;
}

#sec_dorm .work .dorm li .map{

}

/*/勤務地
----------------------------------------*/

/*/update 20210110*/


/*働こう
----------------------------------------*/

#sec_letswork {
margin-top: 20px;
margin-bottom: 30px;
}

#sec_letswork .ttl {
width: 60%;
margin: 0 auto;
}

#sec_letswork .box {
width: 70%;
margin: 0 auto;
margin-top: 18px;
}


/*/働こう
----------------------------------------*/


/*メリット
----------------------------------------*/

#sec_merit {
background-color: #e8e8e8;
padding-top: 20px;
padding-bottom: 30px;
}

#sec_merit .hd {
width: 80%;
margin: 0 auto;
margin-bottom: 20px;
}

#sec_merit .box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

width: 90%;
margin: 0 auto;
}

#sec_merit .box li {
background-color: #1069a1;
color: #ffffff;
width: 100%;
padding: 10px;

}

#sec_merit .inbody .txt {
text-align: left;
margin: 0 20px;
}

#sec_merit .box li > p {
font-size: 14px;
text-align: center;
line-height: 1.2;
}

#sec_merit .box li img {
width: 40%;
margin-bottom: 10px;
}

#sec_merit .box li+li {
margin-top: 20px;
}

/*/メリット
----------------------------------------*/


/*給与
----------------------------------------*/

#sec_salary {

margin-top: 20px;
margin-bottom: 20px;

}

#sec_salary .hd {
margin: 0 auto 10px auto;
width: 60%;
}


#sec_salary .title {

width: 30%;
margin: 0 auto;
margin-bottom: 10px;

}

#sec_salary .box {

padding: 5px;
border: 1px solid #000000;
margin: 0 auto;
font-size: 14px;
margin-bottom: 10px;

width: 90%;
}

#sec_salary .box.red {
background-color: #1069a1;
font-weight: bold;
color: #ffffff;
font-size: 14px;
line-height: 1.2;
/* margin-bottom: 30px; */
}

#sec_salary .box.red span {
font-size: 24px;
}

#sec_salary .box.fee {

}




#sec_salary .fee {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;

	flex-wrap: nowrap;




width: 90%;
margin: 0 auto;
	margin-bottom: 20px;
}

#sec_salary .fee li {
width: 100%;
border: 1px solid #1069a1;
padding: 10px;
line-height: 1.2;

color: #1069a1;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;




}

#sec_salary .fee li+li {
margin-top: 10px;
}

#sec_salary .fee li .hd {
font-size: 20px;
font-weight: bold;
}

#sec_salary .fee li .num {
font-size: 24px;
font-weight: bold;
}

#sec_salary .fee li .doc {
font-size: 14px;
}


#sec_salary .feesub {
margin: 0 auto;
text-align: left;
margin-bottom: 20px;
font-size: 12px;
width: 90%;

}

#sec_salary .graf {
padding: 0 10px;

margin: 0 auto;
}

/*/給与
----------------------------------------*/

/*ワンルーム
----------------------------------------*/

#sec_oneroom {

margin-top: 30px;
padding-top: 40px;
background-color: #e8e8e8;
padding-bottom: 40px;

}

#sec_oneroom .ttl {
margin: 0 auto;
width: 85%;
margin-bottom: 50px;
}

#sec_oneroom .box {
background-color: #ffffff;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

margin: 0 20px;
padding: 20px;
}

#sec_oneroom .box .pic {
width: 90%;
padding: 20px;
}

#sec_oneroom .box .doc p.hd {
font-weight: bold;
text-align: center;
font-size: 18px;
}

#sec_oneroom .box .doc {
font-size: 14px;

text-align: left;
line-height: 1.3;
}

#sec_oneroom .box .doc p+p {
margin-top: 20px;
}




/*/ワンルーム
----------------------------------------*/


/*グレー背景
----------------------------------------*/

#sec_graypic {
background-color: #e8e8e8;
}

#sec_graypic img {
width: 70%;
}

/*/グレー背景
----------------------------------------*/

/*募集要項
----------------------------------------*/

#sec_recruit {
margin-top: 30px;
margin-bottom: 30px;
}

#sec_recruit .title {

font-size: 24px;
font-weight: bold;
text-align: center;
margin-bottom: 10px;

}

#sec_recruit table {
width: 100%;

font-size: 18px;

line-height: 1.2;


}

/*
#sec_recruit table tr:not(:last-child) {
	border-bottom: 1px solid #000000;
}
*/

#sec_recruit table tr td {
padding: 10px;
}

#sec_recruit table tr td {

background-color: #ffffff;
text-align: left;
vertical-align: top;


}

#sec_recruit table tr:nth-child(odd) td {

text-align: left;
vertical-align: top;
background-color: #d7d7d7;
}

#sec_recruit table p.sm {
font-size: 14px;

}

#sec_recruit table tr td.sp {
padding: 0;
font-size: 18px;
}

#sec_recruit table tr td.sp div {

padding: 20px;

}

#sec_recruit table tr td.sp div:not(:last-child) {
border-bottom: 1px dotted #cccccc;
}

#sec_recruit table tr td.sp div .graf img {

}

#sec_recruit table tr td.sp div p.red {
color: #ff0000;
}

#sec_recruit table tr td.sp div p.mark {
text-indent: -25px;
margin-left: 25px;

}

#sec_recruit table tr td.sp div p.mark::before {
	display: inline-block;
	background-image: url(../images/mark.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	width: 20px;
	height: 20px;
	vertical-align: middle;
	margin-top: -5px;
	margin-right: 5px;
}

#sec_recruit table tr td.sp div p span {
font-weight: bold;
font-size: 18px;
}

/*/募集要項
----------------------------------------*/

/*about
----------------------------------------*/

#sec_about {
margin-bottom: 20px;

}

#sec_about .box {
/*border: 1px solid #000000;*/
width: 100%;
padding: 10px;

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

#sec_about p.title {
width: 70%;
margin-bottom: 20px;
}

#sec_about .box .logo {
width: 75%;
font-size: 14px;
text-align: left;
margin-right: 20px;
}



#sec_about .box .logo p+p{
margin-top: 20px;
}

#sec_about .box .logo img {
width: 70%;
}

#sec_about .box .char {
width: 25%;
}

#sec_about p.marks {
padding: 0 20px;
margin-bottom: 20px;
}


/*/about
----------------------------------------*/


/*給与2
----------------------------------------*/

#sec_salary2 {

/* margin-top: 40px; */
margin-bottom: 20px;

}

#sec_salary2 .box {

padding: 8px;
border: 1px solid #000000;
margin: 0 auto;
font-size: 14px;
}

#sec_salary2 .detail {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;

	flex-wrap: nowrap;
	margin: 10px auto;
	width: 90%;
	/* margin-top: 20px;
	margin-bottom: 10px; */

}

#sec_salary2 .detail li {

border: 1px solid #1069a1;
padding: 20px 40px;
line-height: 1.2;

color: #1069a1;


}

#sec_salary2 .detail li+li {
margin-top: 10px;
}

#sec_salary2 .detail li .hd {
text-align: center;
font-weight: bold;
font-size: 16px;
margin-bottom: 10px;
}

#sec_salary2 .detail li .minute {
font-size: 14px;
text-align: left;
}

/*
#sec_salary2 .detail li .sum {
font-size: 20px;
text-align: left;
margin-top: 30px;
}
*/

/*
#sec_salary2 .detail li .ac1,
#sec_salary2 .detail li .ac2,
#sec_salary2 .detail li .ac3 {
margin-top: 10px;
background-color: #f2f0f0;
color: #000000;
padding: 10px;
border-radius: 9999px;
width: 100%;
}
*/

/*
#sec_salary2 .detail li .ac1::before,
#sec_salary2 .detail li .ac2::before,
#sec_salary2 .detail li .ac3::before {
content: "詳細を見る";
}
*/

/*
#sec_salary2 .detail li .ac1::after,
#sec_salary2 .detail li .ac2::after,
#sec_salary2 .detail li .ac3::after {
content: "▼";
}
*/

/*
#sec_salary2 .detail li .ac1.close::before,
#sec_salary2 .detail li .ac2.close::before,
#sec_salary2 .detail li .ac3.close::before {
content: "閉じる";
}
*/

/*
#sec_salary2 .detail li .ac1.close::after,
#sec_salary2 .detail li .ac2.close::after,
#sec_salary2 .detail li .ac3.close::after {
content: "▲";
}
*/

/*/給与2
----------------------------------------*/


/*作業工程など
----------------------------------------*/

#sec_workflow {

margin-bottom: 40px;
background-color: #e8e8e8;

padding-bottom: 40px;
}

#sec_workflow .title {
padding: 20px 0;
width: 50%;
margin: 0 auto;
}

#sec_workflow .tab {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;

width: 100%;

margin-bottom: 10px;
}

#sec_workflow .tab li {
width: calc( 100% / 5 );
background-color: #c1c1c1;
color: #000000;
font-size: 14px;
font-weight: bold;
white-space: nowrap;
text-align: center;
padding: 10px;

cursor: pointer;
}

#sec_workflow .tab li.active {
background-color: #ffffff
}

#sec_workflow .tab li+li{
margin-left: 5px;
}



#sec_workflow .box {
background-color: #ffffff;

padding: 10px;
padding-bottom: 10px;

}

#sec_workflow .box .set
{

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;



}

#sec_workflow .box .set li.pic {
text-align: center;

}

#sec_workflow .box .set li.doc p.title {
text-align: center;
font-weight: bold;
padding: 0 0 10px 0;
}

#sec_workflow .box .set li.doc {
text-align: left;

font-size: 14px;
padding: 20px 0;
}



#sec_workflow .box .set li.doc div {
height: 80%;

	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;


}



/*/作業工程など
----------------------------------------*/




/*よくあるご質問
----------------------------------------*/

#sec_qa {

margin-top: 40px;
font-size: 14px;

}

#sec_qa .ttl {
margin: 0 auto;
margin-bottom: 20px;
width: 60%;
}

#sec_qa .toc {
background-color: #1069a1;
border: 3px solid #1069a1;

margin-bottom: 25px;
}

#sec_qa .toc .q {

position: relative;
cursor: pointer;
text-align: left;
color: #ffffff;
font-weight: bold;

min-height: 60px;

padding: 0 60px 0 60px;

	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;


}

#sec_qa .toc .q::before {

position: absolute;

	background-image: url(../images/icon_q.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	width: 40px;
	height: 40px;
	vertical-align: middle;

top: 10px;
left: 10px;

}

#sec_qa .toc .q::after {

position: absolute;

	background-image: url(../images/icon_open.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	width: 30px;
	height: 30px;
	vertical-align: middle;

top: 10px;
right: 10px;

}

#sec_qa .toc .q.close::after {
	background-image: url(../images/icon_close.png);
}

#sec_qa .toc .a {

position: relative;
text-align: left;
color: #000000;
font-weight: normal;

background-color: #ffffff;

padding: 10px 10px 20px 60px;

}


#sec_qa .toc .a::before {

position: absolute;

	background-image: url(../images/icon_a.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	width: 40px;
	height: 40px;
	vertical-align: middle;

top: 10px;
left: 10px;

}


#sec_qa .qa_flow {
text-align: center;
}

/*/よくあるご質問
----------------------------------------*/

/*会場
----------------------------------------*/

#sec_place {

font-size: 14px;

}

#sec_place .ttl {
text-align: center;
margin-top: 40px;
margin-bottom: 20px;
font-size: 24px;
font-weight: bold;
}

#sec_place .toc {
background-color: #e8e8e8;
border: 3px solid #000000;

margin-bottom: 25px;
text-align: left;
}

#sec_place .toc .q {
padding: 10px;
cursor: pointer;
position: relative;

padding-right: 100px;

color: #ffffff;
font-weight: bold;

}


#sec_place .toc .q::after {
	position: absolute;
	display: inline-block;
	background-image: url(../images/icon_open.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	width: 24px;
	height:24px;
	top: 10px;
	right: 10px;
}

#sec_place .toc .q.close::after {
	background-image: url(../images/icon_close.png);
}


#sec_place .toc .a .office {
padding: 10px;
background: #d7d7d7;
font-weight: bold;
}

#sec_place .toc .a .addr {
padding: 10px;
background: #ffffff;
border-bottom: 1px solid #000000;
}

#sec_place .toc .a .accept {
padding: 10px;
background: #ffffff;
/*border-top: 2px solid #d7d7d7;*/
}


/*/会場
----------------------------------------*/

/*エントリー4
----------------------------------------*/

#sec_entry4 {
margin-bottom: 180px;
}

/*/エントリー2
----------------------------------------*/



/*下部リンク
----------------------------------------*/
.other {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.other .title{
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	border: 4px solid #115eac;
	padding: 1.2em;
/*	margin-bottom: 0.5em;*/
	margin: 0.5em;
	margin-top: 1em;
}

.other table,
.other table tr,
.other table td {
	border-style: none;

}


.other table {
width: 100%;
border-collapse: separate;
border-spacing: 20px;
margin-bottom: 40px;
}

.other table td {
vertical-align: top;
margin: 0 auto;
width: 90%;
}

.other table td a {

color: #000000;
text-decoration: none;
font-size: 18px;

display: block;
border: 1px solid #cccccc;
padding: 1em;

background-color: #ffffff;

-webkit-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
-moz-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
-ms-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));

}

.other table td a:hover {
opacity: 0.5;
}

.other table td .layout {

	height: 60px;

	display: flex;
	flex-direction: rows;
	align-items: center;
}

.other table td .layout .logo {
width: 100px;
}

.other table td .layout .logo img {
width: 100%;
height: auto;
}

.other table td .layout .text {
width: 100%;
padding-left: 1em;
text-align: left;
}

/*/下部リンク
----------------------------------------*/


/*フッタ
----------------------------------------*/

footer {

background: #e8e8e8;
color: #ffffff;
height: 160px;

}

footer .copy {

	height: 100%;

	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;

/*IE11*/
width: 100%;
}


/*/フッタ
----------------------------------------*/
#fv {
	width: 100%;
}

#fv .head {
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

#fv .head p.logo {
	margin-right: 15px;
}

#fv .topbar-container {
	width: 100%;
	background-color: #ce0808;
}

#fv .topbar-container .headcopy {
	margin: 0 auto;
	text-align: center;
}

#fv .body-container {
	width: 100%;
	height: auto;
}

#fv .body-container .main {
	text-align: center;
	margin: 0 auto;
}

#bt-container {
	margin: 20px auto;
}

#bt-container.top {
	margin: 0px auto;
	margin-bottom: 30px;
}

#bt-container .body {
	margin: 0 auto;
	width: 90%;
}

#bt-container .tel {
	margin: 0 auto;
	margin-top: 15px;
	width: 60%;
}

#pt1 {}

#pt1 .head {
	margin: 0 auto;
	cursor: pointer;
}

#pt1 .body {
	margin: 0 auto;
}

#pt2 {}

#pt2 .head {
	margin: 0 auto;
	cursor: pointer;
}

#pt2 .body {
	margin: 0 auto;
}

#pt3 {}

#pt3 .head {
	margin: 0 auto;
	cursor: pointer;
}

#pt3 .body {
	margin: 0 auto;
}

#recruit-container {
	margin-bottom: 5px;
}

#recruit-container .title {
	text-align: center;
	margin-bottom: 10px;
	font-size: 24px;
	font-weight: bold;
}

#recruit-container table {
	width: 100%;
	border-collapse: collapse;
}

#recruit-container table td {
	padding: 20px;
}

#recruit-container table td.head {
	background-color: #cae1f5;
	width: 150px;
}

#recruit-container table td.head p {
	font-size: 16px;
}

#recruit-container table td.value {}

#recruit-container table td.value p {
	font-size: 16px;
}

#recruit-container table td.value p.dot {
	border-bottom: 1px dotted #cccccc;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

#recruit-container table td.value p span.red {
	font-size: 16px;
	color: #ff0000;
}

#recruit-container table td.value span {
	font-size: 16px;
}

#recruit-container table td.value p .dotcolor {
	color: #c2e3f6;
	margin-right: 2px;
}

#merit-container {
	margin-bottom: 10px;
}

#merit-container .body {
	height: auto;
	margin: 0 10px;
	border: 1px solid #cccccc;
}

#workflow-container {
	margin-bottom: 10px;
}

#workflow-container .title {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}

#workflow-container .body {
	height: auto;
	margin: 0 auto;
	text-align: center;
}

#steps-container {
	margin-bottom: 40px;
}

#steps-container .body {
	height: auto;
	margin: 0 auto;
	text-align: center;
}

.footer {
	background-color: #000000;
	font-size: 12px;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	padding: 2em;
}

/*下部リンク
----------------------------------------*/
.other {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.other .title{
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	border: 4px solid #115eac;
	padding: 1.2em;
/*	margin-bottom: 0.5em;*/
	margin: 0.5em;
	margin-top: 1em;
}

.other table,
.other table tr,
.other table td {
	border-style: none;

}


.other table {
width: 100%;
border-collapse: separate;
border-spacing: 20px;
margin-bottom: 40px;
}

.other table td {
vertical-align: top;
margin: 0 auto;
width: 90%;
}

.other table td a {

color: #000000;
text-decoration: none;
font-size: 18px;

display: block;
border: 1px solid #cccccc;
padding: 1em;

background-color: #ffffff;

-webkit-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
-moz-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
-ms-filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));
filter:drop-shadow(1px 3px 2px rgba(0, 0, 0, 0.2));

}

.other table td a:hover {
opacity: 0.5;
}

.other table td .layout {

	height: 60px;

	display: flex;
	flex-direction: rows;
	align-items: center;
}

.other table td .layout .logo {
width: 100px;
}

.other table td .layout .logo img {
width: 100%;
height: auto;
}

.other table td .layout .text {
width: 100%;
padding-left: 1em;
text-align: left;
}


.flex {
  display: flex; /*横並び*/
}
.flex .image {
  width: 100%; /*画像サイズ指定*/
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
}
.flex .right {
  margin: 0 0 0 20px;
  padding: 0;
}
.flex .title2 {
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-size: 16px;
}
.flex .text2 {
  margin: 10px 0 0;
  padding: 0;
}

/*/下部リンク
----------------------------------------*/