@charset "UTF-8";
/* CSS Document */


/******************************************************

PC設定 1200px以上の場合に適用 

*******************************************************/
/* 共通 */
.left {
	float: left;
}

.right {
	float: right;
}

.recruit__ttl {
	font-size: 26px;
	text-align: center;
	color: #009580;
	border-bottom: 1px solid #009580;
	padding-bottom: 20px;
}

/* recruitContainer */
.recruitContainer {
	margin-bottom: 60px;
}

.recruitTtl {
  font-size: 30px;
  text-align: center;
  margin-bottom: 45px;
}

.recruitContainer__img {
  width: 100%;
  margin-bottom: 45px;
}

.recruitTtl--sub {
  font-size: 28px;
  text-align: center;
  color: #009580;
  margin-bottom: 20px;
}

.recruitContainer__box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-bottom: 60px;
}

.recruitContainer__item {
  width: 40%;
  font-size: 22px;
  padding-bottom: 5px;
  margin-bottom: 20px;
  border-bottom: 1px solid #009580;
  text-align: center;
}

.recruitContainer__text {
  font-size: 18px;
}

/* recruitmentPolicy */
.recruitmentPolicy {
  padding: 110px 0;
	margin-bottom: 80px;
  background-color: #F0F0F0;
}

.recruitmentPolicy__ttl {
  margin-bottom: 45px;
}

.recruitmentPolicy__ttl--sub {
  font-size: 22px;
  text-align: center;
}

.recruitmentPolicy__box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 40px;
}

.recruitmentPolicy__item {
	width: 48%;
	border-radius: 13px;
	border: 2px solid #BEA6A1;
  margin-bottom: 35px;
}

.recruitmentPolicy__item--ttl {
	font-size: 26px;
	background: #BEA6A1;
	color: #FFF;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	text-align: center;
	padding: 15px 0;
}

.recruitmentPolicy__item--text {
	font-size: 18px;
	padding: 20px 25px;
}

/* resource-d */
.resource-d {
  margin-bottom: 100px;
}

.resource-d__ttl--sub {
  margin-top: 45px;
  margin-bottom: 10px;
  font-size: 22px;
}

.resource-d__ttl--sub span {
  color: #009580;
  margin-right: 5px;
}

.resource-d__text {
  font-size: 18px;
  margin-bottom: 30px;
}

.resource-d__img {
  width: 100%;
}

.resource-d__img02 {
  width: 100%;
}

.resource-d__img--sp {
  display: none;
}

.resource-d__img--wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.resource-d__img--box {
  width: 48%;
}

.resource-d__img--text {
  font-size: 16px;
  margin-top: 5px;
}

/* communication */
.communication {
  padding: 110px 0;
	margin-bottom: 80px;
  background-color: #F0F0F0;
}

/* requirements */
.requirements {
	margin-bottom: 100px;
}

.requirements__ttl--sub {
	font-size: 22px;
	color: #FFF;
	background: #009580;
	padding: 5px 0 5px 20px;
}

.requirements__text {
	font-size: 18px;
	margin: 20px 0 50px 0;
}

.requirements__text--first {
	margin: 20px 0 10px;
}

.requirements__box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 40px;
	margin-bottom: 70px;
}

.requirements__item {
	width: 48%;
}

.requirements__item:first-child {
	width: 100%;
}

.requirements__place {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.requirements__place--box {
	width: 48%;
	margin-bottom: 25px;
}

.requirements__place--name {
	font-size: 26px;
}

.requirements__time--box {
	display: flex;
}

.requirements__time--ttl span {
	background-color: #000;
    color: #FFF;
    border-radius: 10px;
    padding: 2px 10px;
    font-size: 16px;
}

.requirements__time--text {
	margin-left: 10px;
	font-size: 18px;
}

.requirements__nav {
	width: 100%;	
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}
	
.requirements__nav-item {
	width: 22%;
	height: 100px;
	border: 2px solid #009580;
	border-radius: 10px;
	color: #009580;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	transition: .2s;
}

.requirements__nav-item:hover,
.requirements__nav-item.selected {
	background: #009580;
    color: #fff;
}

.requirements__nav-item:hover {
 	cursor: pointer;
}

.requirements__content-active {
	display: none;
}

.requirements__content01.active,
.requirements__content02.active,
.requirements__content03.active,
.requirements__content04.active {
	display: block;
}

table {
	width: 100%;
	margin-bottom: 70px;
}

table tr th {
	width: 15%;
	background-color: #009580;
	color: #FFF;
	font-size: 18px;
	padding: 15px;
	border: 1px solid #000;
	text-align: center;
  	text-align-last: justify;
  	text-justify: inter-ideograph; 
}	
	
table tr td {
	width: 85%;
	font-size: 18px;	
	padding: 15px;
	border: 1px solid #000;
}

/* visitContainer */
.visitContainer {
	margin-bottom: 120px;
}

.visitContainer__ttl {
	font-size: 22px;
	text-align: center;
	color: #009580;
	margin-bottom: 30px;
}

.visitContainer__form {
	text-align: center;
	border: 1px solid #009580;
	padding: 30px 0 45px 0;
}

.visitContainer__form--ttl {
	font-size: 22px;
	color: #009580;
	margin-bottom: 10px;
}

.visitContainer__form--text {
	font-size: 18px;
	margin-bottom: 30px;
}

.visitContainer__form--link {
	width: 290px;
	background-color: #009580;
	color: #FFF;
	padding: 15px 20px;
	font-size: 18px;
	border: 1px solid #009580;
}

.visitContainer__form--link:hover {
	background: #FFF;
	color: #000;
	transition: .2s;
}

/******************************************************

タブレットの設定 1024px〜1199pxの場合に適用 

*******************************************************/

@media screen and (max-width: 1199px){
	
	
}



/******************************************************

タブレットの設定 768px〜1023pxの場合に適用 

*******************************************************/

@media screen and (max-width: 1023px){
.requirements__time--box {
	flex-wrap: wrap;		
}	
	
.requirements__time--ttl {
	width: 100%;		
}

.requirements__time--text {
	width: 100%;	
	margin-left: 0;
}
	
}



/******************************************************

SPの設定 767px以下の場合に適用 

*******************************************************/

@media screen and (max-width: 767px){
.left {
	float: none;		
}
	
.right {
	float: none;		
}
	
.recruit__ttl {
	font-size: 18px;
	padding-bottom: 15px;
}
  
.recruitmentPolicy__ttl--sub {
  font-size: 16px;
}
	
/* recruitContainer */
.recruitContainer {
	margin-bottom: 80px;	
}
  
.recruitContainer__box {
  margin-bottom: 30px;
}
	
.recruitTtl {
	font-size: 22px;
	margin-bottom: 15px;
}

.recruitContainer__text {
	font-size: 16px;		
}
  
.recruitTtl--sub {
  font-size: 20px;  
}

.recruitContainer__item {
  width: 100%;
  font-size: 16px;
}
  
.recruitContainer__text {
  font-size: 16px;    
}
  
.recruitmentPolicy__item--ttl {
  font-size: 18px;
}
  
.recruitmentPolicy__item--text {
  font-size: 14px;    
}
  
/* resource-d */
.resource-d__ttl--sub {
  font-size: 18px;    
}
  
.resource-d__text {
  font-size: 14px;
}
  
.resource-d__img--box {
  width: 100%;
  margin-bottom: 20px;
}
  
.resource-d__img02 {
  display: none;
}

.resource-d__img--sp {
  display: block;
  width: 100%;
}
  
.resource-d__img--text {
  font-size: 12px;    
}
  
/* recruitmentPolicy */
.recruitmentPolicy {
	margin-bottom: 60px;	
}
	
.recruitmentPolicy__box {
	margin-top: 20px;
}
	
.recruitmentPolicy__item {
	width: 100%;
	margin-bottom: 30px;
}
	
.recruitmentPolicy__item--ttl {
	font-size: 18px;
	padding: 15px 0;
}

.recruitmentPolicy__item--text {
	font-size: 14px;
	padding: 15px;
  text-align: center;
}
	
/* requirements	*/
.requirements {
	margin-bottom: 0;
} 
	
.requirements__box {
	margin-top: 30px;	
	margin-bottom: 20px;
}
	
.requirements__item {
	width: 100%;
}
	
.requirements__ttl--sub {
	font-size: 16px;
	padding-left: 10px;
}
	
.requirements__text {
	font-size: 16px;
	margin: 10px 0 30px 0;
}

.requirements__text--first {
	margin: 10px 0 10px;
}	
	
.requirements__place--box {
	width: 100%;
	margin-bottom: 15px;
}
	
.requirements__place--name {
	font-size: 18px;		
}
	
.requirements__time--ttl span {
	font-size: 14px;
}
	
.requirements__time--text {
	font-size: 14px;
}
	
.requirements__nav {
	margin-bottom: 10px;		
}
	
.requirements__nav-item {
	width: 46%;
	height: 60px;
	font-size: 14px;
	margin-bottom: 15px;
}
	
table {
	border: 1px solid #000;		
}
	
table tr {
	display: flex;
	flex-wrap: wrap;
}
	
table tr th {
	width: 100%;
	border: none;
	font-size: 16px;
	padding: 10px 30%;
}	
	
table tr td {
	width: 100%;	
	border: none;
	font-size: 16px;
}
	
/* visitContainer */	
.visitContainer {
	margin-bottom: 70px;
}
	
.visitContainer__ttl {
	font-size: 18px;		
}
	
.visitContainer__form {
	padding: 10px 0 50px;
}
	
.visitContainer__form--ttl {
	font-size: 18px;		
}
	
.visitContainer__form--text {
	font-size: 16px;
	text-align: left;
	padding: 0 10px;
}
	
.visitContainer__form--link {
	width: 280px;
	font-size: 16px;		
}
	
}