@charset "utf-8";

/*-------------------------------------------------------------------
　pageVisual
-------------------------------------------------------------------*/
.pageVisual{
	width:100%;
	height: 700px;/*height: 600px;*/
	display: flex;
	align-items: center;
	justify-content: center;
	border:0px solid #000;
}

.pageVisual h2{
	font-family: "Kaushan Script", cursive;
	font-size: 80px;
	font-weight: normal;
	text-align: center;
	letter-spacing: 0.05em;
	text-shadow: 0 0 8px #424242,
				 0 0 8px #424242,
				 0 0 8px #424242;
}

.pageVisual h2 span{
	font-family: "Shippori Mincho", serif;
	display: block;
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.03em;
	margin-top: -30px;
}

.career_bg{background: url("../images/hd_career_bg.jpg") no-repeat center center / cover;}
.flow_bg{background: url("../images/hd_flow_bg.jpg") no-repeat center center / cover;}
.cont_bg{background: url("../images/hd_cont_bg.jpg") no-repeat top center / cover;}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
.pageVisual{
	width:100%;
	height: 600px;
}

.career_bg{background: url("../images/hd_career_bg1024.jpg") no-repeat top center / cover;}
}

/* ---- sp 767 ------------- */
@media only screen and (max-width:767px){
.pageVisual{
	height: 500px;
}

.career_bg{background: url("../images/hd_career_bg767.jpg") no-repeat top center / cover;}
.flow_bg{background: url("../images/hd_flow_bg767.jpg") no-repeat center center / cover;}

.pageVisual h2{font-size: 45px;}
.pageVisual h2 span{font-size: 25px;}
}

/* ---- sp 480 ------------- */
@media only screen and (max-width:480px){
.pageVisual{
	height: 350px;
}

.pageVisual h2{font-size: 35px;}

.pageVisual h2 span{
	font-size: 20px;
	margin-top: -10px;
}
}


/*-------------------------------------------------------------------
　common
-------------------------------------------------------------------*/
.content{
	width: 1300px;
	margin: 150px auto;
	border:0px solid #000;
}

.content:last-child{
	margin: 150px auto;
}

.content0{
	width: 1300px;
	margin: 0 auto;
}

.color_bg_wrap{
	width: 100%;
	background: #FFF8F6;
	padding: 150px 0;
}

.color_bg_wrap:last-child{
	width: 100%;
	background: #FFF8F6;
	padding: 150px 0;
	margin-bottom: 150px;
}

/* ---- pc 1400px ---------- */
@media only screen and (max-width:1400px){
.content{width: 90%;}
.content0{width: 90%;}
}

/* ---- pc 1200px ---------- */
@media only screen and (max-width:1200px){

}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
.content{
	width: 90%;
	margin: 100px auto;
}

.content:last-child{
	margin: 100px auto;
}

.content0{width: 90%;}

.color_bg_wrap{
	padding: 100px 0;
}

.color_bg_wrap:last-child{
	padding: 100px 0;
	margin-bottom: 100px;
}
}

/* ---- sp 767 ------------- */
@media only screen and (max-width:767px){
.content{
	width: 85%;
	margin: 80px auto;
}

.content:last-child{
	margin: 80px auto;
}

.content0{width: 85%;}

.color_bg_wrap{
	padding: 80px 0;
}

.color_bg_wrap:last-child{
	padding: 80px 0;
	margin-bottom: 80px;
}
}


/*-------------------------------------------------------------------
　title
-------------------------------------------------------------------*/
.mainTit{
	font-size: 40px;
	line-height: 1.3;
	margin-bottom: 30px;
	font-weight: bold;
}

.mainTit span{
	display: block;
	font-family: "Afacad Flux", sans-serif;
	font-size: 25px;
	color: #E50112;
	margin-bottom: 10px;
}

.titC{text-align: center;}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
.mainTit{
	text-align: center;
}
}

/* ---- sp 767 ------------- */
@media only screen and (max-width:767px){
.mainTit{
	font-size: 35px;
	margin-bottom: 30px;
}

.mainTit span{
	font-size: 22px;
	margin-bottom: 10px;
}
}

/* ---- sp 480 ------------- */
@media only screen and (max-width:480px){
.mainTit{
	font-size: 25px;
	margin-bottom: 30px;
}

.mainTit span{
	font-size: 18px;
	margin-bottom: 10px;
}
}


/*-------------------------------------------------------------------
　仕事とキャリア　career.html
-------------------------------------------------------------------*/
.career_flowBox{
	display: flex;
	align-items: flex-start;
	margin-bottom: 30px;
	border:0px solid #000;
}

.career_step{
	width: 150px;
	text-align: center;
	color: #FFF;
	background: #E60013;
	border-radius: 50px 50px;
	margin: 5px 20px 0 0;
}

.career_det{
	flex:1;
}

.career_det h4{
	font-size: 25px;
	color: #E60013;
	margin: 0 0 5px;
	line-height: 1.5;	
}

#day_wrap{
	width: 100%;
	margin: 0 auto;
	padding: 50px 50px;
	background: #FFF;
	border-radius: 20px;
	box-sizing: border-box;
}

.dayBox{
	display: flex;
	gap:25px;
	align-items: flex-start;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px dashed #838282;
}

.dayBox:last-child{
	margin-bottom: 0px;
	border-bottom: 0px dashed #838282;
}

.time{
	flex:0 0 200px;
	text-align: center;
	color: #FFF;
	background: #E60013;
	border-radius: 50px;
}

.action{
	flex:0 0 100px;
	color: #E60013;
}

.day_det{
	flex:1;
	min-width:0;
}

#income_wrap{
	display: flex;
	justify-content: space-between;
	margin: 50px 0 50px;
}

.incomeBox{
	width: 31%;
	background: linear-gradient(135deg, #E64930, #E60013);
	color: #FFF;
	padding:5px 30px 20px;
	border-radius: 20px;
}

.incomeBox h4{
	font-size: 35px;
	text-align: center;
}

.incomeBox h4 span{font-size: 25px;}

#income{
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 70px 0 0;
	padding: 50px;
	/*background: #FFF8F6;*/
	border:3px solid #E60013;
	border-radius: 20px;
	box-sizing:  border-box;
}

#income_det{width: 550px;}
#income_ph{width: 700px;}

.income_tit{
	font-size: 40px;
	line-height: 1.3;
	margin-bottom: 20px;
}

.income_tit span{
	font-size: 35px;
}

.income_smTit{
	font-size: 25px;
	line-height: 1.5;
	margin-bottom: 20px;
}

.income_Tx{
	width: 320px;
}

/*-- 募集要項 table ----*/
.job_wrap{
	width: 1300px;
	background: #fff;
	border-radius: 20px;
	padding: 30px;
	margin: 0 auto;
	box-sizing: border-box;
}

.job_TB{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	box-sizing: border-box;
	border-width: 0px 0px 0px 0px;
	border-style: solid;
	border-color: #000;	
}

.job_TB th {
	width: 200px;
	padding: 20px 15px 20px 20px;
	border-width: 0px 0px 1px 0px;
	border-style: dashed;
	border-color: #EC799F;	
	color: #E60013;
	/*background: #ECF9F5;*/
}

.job_TB td {
	padding: 20px 15px 20px 10px;
	border-width:0px 0px 1px 0px;
	border-style: dashed;
	border-color: #EC799F;	
	text-align:left;
}

.job_TB tr:last-child th,
.job_TB tr:last-child td{
	border-bottom: none;
}

ul.job_List{margin: 15px 0 0 30px;}
ul.job_List0{margin: 0 0 0 30px;}

ul.job_List li,
ul.job_List0 li{
	list-style-type: disc;
}

.attention_wrap{
	margin-top: 20px;
}

.attentionBox{
	display:inline-block;
	padding: 5px 20px;
	color: #FFF;
	background: #E60013;
	border-radius: 10px;
}

/* ---- pc 1400px ---------- */
@media only screen and (max-width:1400px){

/*-- 募集要項 table ----*/
.job_wrap{
	width: 90%;
	padding: 30px;
}
}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
#income{
	flex-direction: column;
	margin: 70px 0 0;
	padding: 50px 40px;
}

#income_det{
	width: 100%;
	margin-bottom: 50px;
}

#income_ph{
	width: 80%;
	margin: 0 auto;
}

.income_tit{
	text-align: center;
}

.income_smTit{
	text-align: center;
	margin-bottom: 20px;
}

.income_Tx{
	width: 100%;
	text-align: center;
}

/*-- 募集要項 table ----*/
.job_TB th {
	width: 180px;
	padding: 20px 15px 20px 0;
}

.attentionBox{
	padding: 10px 20px;
	line-height: 1.5;
}
}

/* ---- sp 767 ------------- */
@media only screen and (max-width:767px){
.career_step{
	width: 80px;
	margin: 5px 20px 0 0;
}

.career_det h4{
	font-size: 22px;
	margin: 0 0 5px;
}

#day_wrap{
	padding: 30px 30px;
}

.dayBox{
	flex-wrap:wrap;
}

.time{
	flex:0 0 120px;
	text-align: center;
}

.action{
	flex:0 0 100px;
	color: #E60013;
}

.day_det{
	flex:0 0 100%;
	margin-top: -15px;
}

#income_wrap{
	flex-direction: column;
	margin: 50px 0 50px;
}

.incomeBox{
	width: 100%;
	padding:5px 30px 20px;
	margin-bottom: 40px;
}

.incomeBox:last-child{margin-bottom: 0;}

.incomeBox h4{font-size: 30px;}
.incomeBox h4 span{font-size: 20px;}

#income{
	flex-direction: column;
	margin: 70px 0 0;
	padding: 50px 40px;
}

#income_det{
	width: 100%;
	margin-bottom: 50px;
}

#income_ph{
	width: 100%;
}

.income_tit{
	font-size: 35px;
	margin-bottom: 20px;
}

.income_tit span{
	font-size: 30px;
}

.income_smTit{
	font-size: 22px;
	margin-bottom: 20px;
}

/*-- 募集要項 table ----*/
.job_wrap{
	width: 85%;
	padding: 30px;
}

.job_TB th {
	display: block;
	width: 100%;
	padding: 20px 15px 0 0;
	border-width: 0;
}

.job_TB td {
	display: block;
	width: 100%;
	padding: 10px 10px 20px 10px;
	text-align:left;
}

ul.job_List{margin: 15px 0 0 35px;}
ul.job_List0{margin: 0 0 0 35px;}

ul.job_List li,
ul.job_List0 li{
	list-style-type: disc;
}
}

/* ---- sp 480 ------------- */
@media only screen and (max-width:480px){
.career_flowBox{
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	margin-bottom: 50px;
}

.career_flowBox:last-child{
	margin-bottom: 0;
}

.career_step{
	width: 100px;
	margin: 0 auto 10px;
}

.career_det h4{
	font-size: 20px;
	margin: 0 0 5px;
	text-align: center;
}

.dayBox{
	flex-wrap:wrap;
	gap:15px;
}

.action{
	flex:0 0 100px;
}

.day_det{
	flex:0 0 100%;
	margin-top: -5px;
}

#income_wrap{
	margin: 30px 0 30px;
}

.incomeBox{
	width: 100%;
	padding:5px 20px 20px;
	margin-bottom: 30px;
}

.incomeBox h4{font-size: 27px;}
.incomeBox h4 span{font-size: 17px;}

#income{
	margin: 50px 0 0;
	padding: 25px 15px;
}

#income_det{
	width: 100%;
	margin-bottom: 15px;
}

#income_ph{
	width: 100%;
}

.income_tit{
	font-size: 25px;
	margin-bottom: 20px;
}

.income_tit span{
	font-size: 20px;
}

.income_smTit{
	font-size: 20px;
	text-align: left;
	margin-bottom: 20px;
}

.income_Tx{
	text-align: left;
}

/*-- 募集要項 table ----*/
.job_wrap{
	width: 85%;
	padding: 10px 20px;
}

ul.job_List li,
ul.job_List0 li{
	line-height: 1.5;
	margin-bottom: 15px;
}

ul.job_List li:last-child,
ul.job_List0 li:last-child{
	line-height: 1.5;
	margin-bottom: 0;
}
}


/*-------------------------------------------------------------------
　採用までの流れ　flow.html
-------------------------------------------------------------------*/
#rec_flow_wrap{
	width: 1300px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	margin: 0 auto;
	padding: 50px 50px;
	background: #FFF;
	border-radius: 20px;
	box-sizing: border-box;
}

.rec_flow_ph{width: 550px;}
.rec_flow_ph img{border-radius: 20px;}

.rec_flow_det{
	width: 600px;
}

.rec_flowBox{
	padding-left:50px;
	position:relative;
	margin-bottom: 15px;
}

.rec_flowBox:last-child{margin-bottom: 0;}

.flowTIt{
	position:relative;
	font-size: 25px;
	color: #E60013;
}

.stepNum{
	position:absolute;
	font-size: 20px;
	left:-50px;
	top:50%;
	transform:translateY(-50%);
	display:flex;
	align-items:center;
	justify-content:center;
	width:34px;
	height:34px;
	background:#E60013;
	color:#FFF;
	border-radius:50%;
	font-weight:bold;
}

/*-- よくある質問 --*/
.faq_list{
	width: 100%;
	margin: 0 auto;
}

.faq_list dl {
	position: relative;
	margin:0;
	cursor: pointer;
	border-top: 0px dashed #CCC;
	margin-bottom: 5px;
}

.faq_list dl:last-child {
  margin-top: 0;
	border-bottom: 0px dashed #CCC;
}

.faq_list dl::after {
	position: absolute;
	top: 30px;
	right: 30px;
	display: block;
	width: 10px;
	height: 10px;
	margin: auto;
	content: '';
	transform: rotate(135deg);
	border-top: 3px solid #E60013;
	border-right: 3px solid #E60013;
}

.faq_list .open::after {
	transform: rotate(-45deg);
}

.faq_list dl dt {
	position: relative;
	margin: 0;
	padding: 20px 40px 20px 50px;
	background: #FFF8F6;
}

.faq_list dl dt::before {
	font-family: "Alata", sans-serif;
	line-height: 1;
	position: absolute;
	top: 28px;
	left: 20px;
	display: block;
	content: 'Q.';
	color: #E60013;
}

.faq_list dl dd::before {
	font-family: "Alata", sans-serif;
	line-height: 1;
	position: absolute;
	top:30px;
	left: 20px;
	display: block;
	content: 'A.';
	color: #000;
}

.faq_list dl dd {
	position: relative;
	margin: 0;
	padding: 20px 40px 30px 50px;
}

.faq_tx{
	padding-top: 40px;
	padding-left: 1em;
	text-indent: -1em;
}

#com_wrap{
	width: 1300px;
	margin: 0 auto;
	padding: 50px 50px;
	background: #FFF;
	border-radius: 20px;
	box-sizing: border-box;
}

#com_mainTx{margin-bottom: 50px;}

#com_textBox{
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}

#com_textPh{width:460px;}
#com_textDet{width:690px;}
#com_textPh img{border-radius: 20px;}

#ph_text{
	text-align: center;
	margin-top: 10px;
	line-height: 1.5;
}

#com_info{
	width: 1300px;
	display: flex;
	justify-content: space-between;
	margin: 100px auto 0;
}

.com_info_Box{
	width: 48%;
	background: #FFF;
	border-radius: 20px 20px 0 0;
}

.com_info_Box_ph{width: 100%;}
.com_info_Box_ph img{border-radius: 20px 20px 0 0;}

.com_info_Box_logo{
	width: 65%;
	margin: 30px auto 40px;
}

.com_TB{
	width: 90%;
	border-collapse: collapse;
	border-spacing: 0;
	box-sizing: border-box;
	border-width: 0px 0px 0px 0px;
	border-style: solid;
	border-color: #AFAEAE;	
	margin: 0 auto 30px;
}

.com_TB th {
	width: 150px;
	padding: 20px 15px 20px 20px;
	border-width: 0px 0px 1px 0px;
	border-style: dashed;
	border-color: #AFAEAE;	
	color: #E60013;
	/*background: #ECF9F5;*/
}

.com_TB th.tods_tx{
	color: #005BAC;
}

.com_TB td {
	padding: 20px 15px 20px 10px;
	border-width:0px 0px 1px 0px;
	border-style: dashed;
	border-color: #AFAEAE;	
	text-align:left;
}

.com_TB tr:last-child th,
.com_TB tr:last-child td{
	border-bottom: none;
}

.com_TB tr:first-child th,
.com_TB tr:first-child td{
	border-top: 1px dashed #AFAEAE;
}

#course_info{
	width: 1300px;
	display: flex;
	justify-content: space-between;
	margin: 100px auto 0;
	gap:40px;
}

#course_tit{
	width: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 30px;
	color: #FFF;
	background: #E60013;
	border-radius: 10px;
}

#course_det{
	flex:1;
	min-width:0;	
}

#course_det ul{
	margin-left: 20px;
}

#course_det ul li{
	list-style: disc;
}

/* ---- pc 1400px ---------- */
@media only screen and (max-width:1400px){
#rec_flow_wrap{
	width: 90%;
	padding: 50px 50px;
}

.rec_flow_ph{width: 45%;}
.rec_flow_det{width: 50%;}

#com_wrap{
	width: 90%;
	margin: 0 auto;
	padding: 50px 50px;
}

#com_textPh{width:41%;}
#com_textDet{width:57%;}

#com_info{
	width: 90%;
	margin: 100px auto 0;
}

#course_info{
	width: 90%;
	margin: 100px auto 0;
	gap:20px;
}
}

/* ---- pc 1200px ---------- */
@media only screen and (max-width:1200px){
.rec_flow_ph{width: 40%;}
.rec_flow_det{width: 55%;}

#com_textBox{
	flex-direction: column-reverse;
}

#com_textPh{
	width:70%;
	margin: 0 auto;
}

#com_textDet{
	width:100%;
	margin-bottom: 60px;
}

#course_tit{
	width: 180px;
}
}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
#rec_flow_wrap{
	width: 90%;
	flex-direction: column;
	padding: 50px 50px;
}

.rec_flow_ph{width: 100%; margin-bottom: 50px;}
.rec_flow_det{width: 100%;}

.com_TB{
	margin: 0 auto 20px;
}

.com_TB th {
	display: block;
	width: 100%;
	padding: 20px 15px 0px 10px;
	border-width: 0px 0px 0px 0px;
}

.com_TB td {
	display: block;
	width: 100%;
	padding: 0px 15px 20px 10px;
	border-width:0px 0px 1px 0px;
}

.com_TB tr:first-child td{
	border-top: 0px dashed #AFAEAE;
}

#course_info{
	width: 90%;
	flex-direction: column;
	margin: 100px auto 0;
}

#course_tit{
	width: 100%;
	font-size: 30px;
}
}

/* ---- sp 767 ------------- */
@media only screen and (max-width:767px){
#rec_flow_wrap{
	width: 85%;
	padding: 30px 30px;
}

.rec_flow_ph{margin-bottom: 30px;}

.flowTIt{
	font-size: 22px;
}

.stepNum{
	font-size: 17px;
	width:30px;
	height:30px;
}

#com_wrap{
	width: 85%;
	padding: 30px 30px;
}

#com_mainTx{margin-bottom: 30px;}
#com_textPh{width:100%;}
#com_textDet{margin-bottom: 50px;}

#com_info{
	width: 85%;
	flex-direction: column;
	margin: 50px auto 0;
}

.com_info_Box{
	width: 100%;
	border-radius: 20px 20px 0 0;
	margin-bottom: 50px;
}

.com_info_Box:last-child{margin-bottom: 0;}

.com_info_Box_logo{
	width: 80%;
	margin: 30px auto 40px;
}

#course_info{
	width: 85%;
	margin: 50px auto 0;
}

#course_tit{
	font-size: 25px;
}
}

/* ---- sp 480 ------------- */
@media only screen and (max-width:480px){
.flowTIt{
	font-size: 20px;
	line-height: 1.5;
	margin-bottom: 5px;
}

.faq_list dl dt::before {
	top: 28px;
	left: 12px;
	content: 'Q.';
}

.faq_list dl dd::before {
	top:30px;
	left: 12px;
	content: 'A.';
}

.faq_list dl::after {
	position: absolute;
	top: 30px;
	right: 20px;
}

.faq_list dl dt {
	padding: 20px 40px 20px 45px;
}

.faq_list dl dd {
	padding: 20px 10px 30px 45px;
}

.com_info_Box_logo{
	width: 90%;
	margin: 20px auto 30px;
}

#course_tit{font-size: 22px;}

#course_det ul li{margin-bottom: 15px;}
#course_det ul li:last-child{margin-bottom: 0;}
}


/*-------------------------------------------------------------------
　お問い合わせ
-------------------------------------------------------------------*/
.thanksTx{
	width: 1100px;
	margin: 0 auto;
}

/* ---- pc 1400px ---------- */
@media only screen and (max-width:1400px){
.thanksTx{
	width: 90%;
	margin: 0 auto;
}
}

/* ---- tablet ------------- */
@media only screen and (max-width:1024px){
.thanksTx{
	width: 100%;
	margin: 0 auto;
}
}

