@charset "UTF-8";

#wrapper{
	overflow: clip !important;
}

.m_img {background-image: url(../images/recruit/m_img@2x.jpg);}


/*---------------------------------------------------------
 com_lead_box
---------------------------------------------------------*/
.com_lead_box .com_ank_list {
	margin-top: 0;
}
.com_lead_box .com_ank_list::before {
	display: block;
	content: "";
	background-color: #E5E5E5;
	width: 100%;
	height: 1px;
	margin: 50px 0 40px;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.com_lead_box .lead_txt {
	text-align: center;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_lead_box .lead_txt {
	text-align: center; /*停止時*/
}
.com_lead_box .com_ank_list::before {
	margin: 8% 0 3%;
}
}

/* tab-ank
---------------------------------------------------------*/
.tab-ank {
	display: grid;
	justify-content: center;
	grid-template-columns: repeat(3,min(240px,30%));
	gap: 1em 1.8%;
	margin: 3.5% auto 0;
}
.tab-ank > li {
	position: relative;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	gap: .6em 0;
	max-width: 240px;
}
.tab-ank a {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	text-align: center;
	color: #808080;
	font-size: min(129%);
	letter-spacing: .1em;
	line-height: 1.2;
	border: 1px solid #ccc;
	box-sizing: border-box;
	padding: 1em 5px 5px;
	border-radius: 16px;
	cursor: pointer;
	transition-property: color, background-color, border;
	transition-duration: .5s;
}
.tab-ank > li .job,
.tab-ank > li .status {
	pointer-events: none;
}
.tab-ank > li .job {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: "tot-shizukamin-stdn", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.tab-ank > li .job span {
	display: block;
	font-size: 78%;
}
.tab-ank > li .status {
	color: #FFF;
	font-size: 68%;
	letter-spacing: .08em;
	padding: 1.2em 1%;
	border-radius: 0 0 16px 16px;
}
.tab-ank > li .status::after {
	display: inline-block;
	font-family: 'fontello';
	content: '\e801';
	font-size: 60%;
	vertical-align: 0.2em;
	rotate: 90deg;
	margin-left: .5em;
}
.tab-ank > li:not(.active) {
	pointer-events: none;
}
.tab-ank > li:not(.active) .status {
	background-color: #999 !important;
}
.tab-ank > li.tab-nurse:hover a {background-color: #F9F1ED;}
.tab-ank > li.tab-nurse .job {	color: #BB8B6F;}
.tab-ank > li.tab-nurse .status {	background-color: #BB8B6F;}
.tab-ank > li.tab-ma:hover a {background-color: #FCF8F0;}
.tab-ank > li.tab-ma .job {	color: #C8A24F;}
.tab-ank > li.tab-ma .status {	background-color: #C8A24F;}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.tab-ank {
	grid-template-columns: repeat(3,32%);
	margin-top: 6%;
}
.tab-ank a {
	font-size: 100%;
	border-radius: 10px;
	padding: .8em 4px 4px;
}
.tab-ank > li .status {
	letter-spacing: normal;
	border-radius: 0 0 10px 10px;
}
}


/*---------------------------------------------------------
 about
---------------------------------------------------------*/
#about,
#about .ft_agenda_t {
	color: #FFF;
}
#about .com_title1 {
	margin-bottom: 1em;
}
.abo_box_wrap .com_box_radi {
	text-align: center;
	color: #000;
}
.abo_box_wrap .com_box_radi .com_h__min {
	color: #78BF5A;
	font-size: min(3.5vw,229%);
	margin-bottom: .8em;
}
.abo_box_wrap .img_wrap {
	display: grid;
	justify-content: center;
	grid-template-columns: repeat(3,min(330px,33.33%));
}
.abo_box_wrap .img_wrap img {
	display: block;
	margin: 0;
}
.abo_box_wrap .com_list.list__point {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 55% 40%;
	font-size: min(2.2vw,164%);
	font-weight: bold;
}
.abo_box_wrap .com_list.list__point > li::before {
	color: rgba(120,191,90,0.6);
	font-size: 78%;
	top: .2em;
}
.abo_box_wrap .sub_txt {
	font-size: min(2vw,135%);
	font-weight: bold;
	line-height: 1.5;
	margin-top: 1em;
}
.abo_box_wrap .ava_age {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	column-gap: .6em;
	color: #78BF5A;
	font-size: min(2.5vw,164%);
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 5%;
}
.abo_box_wrap .ava_age .ft_min {
	font-size: 150%;
}
.abo_box_wrap .ava_age .ft_min span {
	font-family: agenda-one, sans-serif;
	font-weight: 200;
	font-style: italic;
	font-size: 238%;
	line-height: 0.8;
	margin-right: .1em;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#about .com_title1 + p {
	text-align: center;
}
.abo_box_wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	row-gap: 2.3em;
}
.abo_box_wrap .com_box_radi {
	width: 100%;
	max-width: 100%;
	padding: 5%;
	margin: 0;
}
.abo_box_wrap .com_box_radi.box_half {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	width: 48.4%;
	border-radius: 20px;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.abo_box_wrap > div:not(:last-of-type) {
	margin-bottom: 4%;
}
.abo_box_wrap > div {
	padding: 6% 6% 8%;
	border-radius: 20px;
}
.abo_box_wrap .com_box_radi .com_h__min {
	font-size: 130%;
}

.abo_box_wrap .com_list.list__point {
	font-size: 110%
}
.abo_box_wrap .sub_txt {
	font-size: 105%
}
.abo_box_wrap .ava_age {
	font-size: 120%;
}
.abo_box_wrap .ava_age .ft_min {
	font-size: 150%;
}
}

/*abo_list_number
---------------------------------------------------------*/
.abo_list_number {
	display: grid;
	grid-template-columns: repeat(5,20%);
	row-gap: 1.5em;
	text-align: center;
	font-size: min(2.2vw,164%);
	line-height: 1.4;
	margin-top: 5%;
}
.abo_list_number > li {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: .3em;
	border-right: 1px solid #ccc;
}
.abo_list_number > li:last-of-type {
	border-right: none;
}
.abo_list_number .job {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-weight: bold;
}
.abo_list_number .number {
	font-family: "tot-shizukamin-stdn", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #78BF5A;
}
.abo_list_number .number span {
	font-family: agenda-one, sans-serif;
	font-weight: 200;
	font-style: italic;
	font-size: 225%;
	line-height: 1;
	vertical-align: -0.05em;
	margin-right: .1em;
}
.abo_list_number .detail {
	color: #4C4C4C;
	font-size: max(46%,11px);
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.abo_list_number {
	grid-template-columns: repeat(3,33%);
	font-size: 100%;
	margin-top: 5%;
}
.abo_list_number > li:nth-of-type(3n) {
	border-right: none;
}
/* 2カラムで終わる場合 */
.abo_list_number > li:nth-last-child(-n + 2) {
	translate: 50% 0;
}
}


/*---------------------------------------------------------
 message
---------------------------------------------------------*/
#message .obj {
	position: absolute;
	width: 40%;
	right: 0;
	top: 0;
	translate: 20% 10%;
	z-index: -1;
}
.msg_inbox .box_img img {
	border-radius: 7.3% / 5.3%;
}
.msg_inbox .sign {
	text-align: right;
	line-height: 1.5;
	letter-spacing: .06em;
	margin-top: 5%;
}
.msg_inbox .sign dt {
	font-size: 88%;
}
.msg_inbox .sign dd {
	font-size: 152%;
}
.msg_inbox .sign dd span {
	font-size: 73%;
	vertical-align: 0.1em;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.msg_inbox {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 34% 60%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#message .obj {
	width: 50%;
}
.msg_inbox .box_img {
	width: 60%;
	margin: 0 auto 5%;
}
}


/*---------------------------------------------------------
 wanted
---------------------------------------------------------*/
#wanted {
	color: #FFF;
}
#wanted > div {
	background-color: #A9B26B;
}
#wanted .abs_deco {
	position: absolute;
	display: block;
	width: 40%;
	max-width: 420px;
	inset: 0;
	opacity: 0.3;
	margin: auto;
}
#wanted .com_h__min {
	text-align: center;
}
#wanted p {
	position: relative;
	font-size: 112%;
}
#wanted p b {
	font-size: 115%;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#wanted .abs_deco {
	width: 70% !important;
}
#wanted p {
	font-size: 105%;
}
}

/*---------------------------------------------------------
 tbl_rec
---------------------------------------------------------*/
.tbl_rec {
	width: 100%;
	max-width: 1220px;
	font-size: min(1.7vw,100%);
	line-height: 1.5;
	margin-left: auto;
	margin-right: auto;
}
.tbl_rec caption {
	text-align: right;
	font-size: 88%;
	margin-bottom: 1em;
}
.tbl_rec tr:nth-of-type(odd) {
	background-color: #FFF;
}
.tbl_rec th,
.tbl_rec td {
	padding: 3rem 4.5%;
}
.tbl_rec th {
	width: 27%;
	min-width: max-content;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
	letter-spacing: .16em;
	white-space: nowrap;
}
.tbl_rec th.va_t {
	vertical-align: top;
}
.tbl_rec th .req {
	display: inline-block;
	color: #63A665;
	font-size: 64%;
	letter-spacing: .2em;
	background-color: #fff;
	padding: .2em .8em;
	border-radius: .5em;
	vertical-align: 0.25em;
	margin-right: 1em;
}
.tbl_rec td {
	padding-left: 0;
}
.tbl_rec td label {
	white-space: nowrap;
	margin-right: 1em;
}
.tbl_rec td .kakunin_txt {
	font-size: 88%;
	margin: .6em 0 .4em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.tbl_rec {
	font-size: 100%;
}
.tbl_rec th,
.tbl_rec td {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.tbl_rec th {
	width: 30%;
	font-size: 105%;
	letter-spacing: .08em;
}
.tbl_rec td {
	width: 72%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.tbl_rec {
	font-size: 90%;
}
.tbl_rec tr,
.tbl_rec th,
.tbl_rec td {
	display: block;
	width: 100%;
	box-sizing: border-box;
}
.tbl_rec th,
.tbl_rec td {
	padding: 1rem 5%;
}
.tbl_rec th {
	font-size: 105%;
	letter-spacing: .08em;
}
.tbl_rec th.va_t {
	padding-top: 1em;
}
.tbl_rec td {
	padding-top: 0;
	padding-bottom: 1.4rem;
}
}


/*---------------------------------------------------------
 guidelines
---------------------------------------------------------*/
#guidelines .tbl_rec th {
	color: #BB8B6F;
}
#guidelines .tbl_rec td {
	line-height: 2;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#guidelines .tbl_rec th {
	width: 23%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#guidelines .tbl_rec td {
	line-height: 1.6;
}
}

/* guidelines: tab
---------------------------------------------------------*/
/* tabs */
.guideline-tabs {
	display: flex;
	justify-content: center;
	width: 90%;
	max-width: 900px;
	margin: 0 auto 2em;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
}
.guideline-tabs input {
	position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}
.guideline-tabs > label {
	position: relative;
	flex: 1;
	text-align: center;
	color: #808080;
	font-size: min(117%);
	letter-spacing: .1em;
	line-height: 1.2;
	border: 1px solid #CCCCCC;
	box-sizing: border-box;
	padding: 1.1em 1%;
	cursor: pointer;
	transition-property: color, background-color, border;
	transition-duration: .5s;
}
.guideline-tabs > label span {
	display: inline-block;
	font-size: 80%;
}
.guideline-tabs > label::before {
	position: absolute;
	content: "";
	background: inherit;
	width: 0.9em;
	height: .62em;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	inset: 95% 0 auto 0;
	margin: auto;
	opacity: 0;
	transition-property: opacity, top;
	transition-duration: .5s;
}
.guideline-tabs > label:hover,
.guideline-tabs input:checked + label {
	color: #FFF;
	background-color: #BB8B6F;
	border-color: #BB8B6F;
}
.guideline-tabs > label:hover::before,
.guideline-tabs input:checked + label::before {
	top: 99%;
	opacity: 1;
}
.guideline-tabs > label:first-of-type {
	border-radius: 10px 0 0 10px;
}
.guideline-tabs > label:last-of-type {
	border-radius: 0 10px 10px 0;
}
.guideline-tabs > input:not(:checked) + label + input + label {
	border-left-color: transparent;
}

.guideline-tabs > label.tab-ma:hover,
.guideline-tabs input:checked + .tab-ma {
	background-color: #C8A24F;
	border-color: #C8A24F;
}
#guidelines .guideline-contents .inbox-ma .tbl_rec th {
	color: #C8A24F;
}

/* guideline-contents */
.tab-inbox {
	display: none;
}
.guideline-tabs:has(#tab-rn:checked) ~ .guideline-contents .tab-inbox#registered-nurse,
.guideline-tabs:has(#tab-ln:checked) ~ .guideline-contents .tab-inbox#licensed-nurse,
.guideline-tabs:has(#tab-ma:checked) ~ .guideline-contents .tab-inbox#medical-assistant {
	display: block;
}
.guideline-tabs:has(#tab-rn:disabled) ~ .guideline-contents .tab-inbox#registered-nurse,
.guideline-tabs:has(#tab-ln:disabled) ~ .guideline-contents .tab-inbox#licensed-nurse,
.guideline-tabs:has(#tab-ma:disabled) ~ .guideline-contents .tab-inbox#medical-assistant {
	display: none;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.guideline-tabs {
	width: 96%;
	border-radius: 6px;
	margin-bottom: 1.2em;
}
.guideline-tabs > label {
	font-size: 90%;
	padding: .8em;
}
.guideline-tabs > label:first-of-type {
	border-radius: 6px 0 0 6px;
}
.guideline-tabs > label:last-of-type {
	border-radius: 0 6px 6px 0;
}
}


/*---------------------------------------------------------
 entry
---------------------------------------------------------*/
#entry,
#entry .ft_agenda_t {
	color: #FFF;
}
#entry .tbl_rec tr:nth-of-type(odd) {
	background-color: #8FAB43;
}


/*---------------------------------------------------------
 
---------------------------------------------------------*/

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {


}