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

/* ============================
		reset
 ============================ */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Old+Mincho:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

.m-plus-rounded-1c-light {
font-family: "Zen Old Mincho", sans-serif;
font-weight: 400;
font-style: normal;
}

.m-plus-rounded-1c-regular {
font-family: "Zen Old Mincho", sans-serif;
font-weight: 500;
font-style: normal;
}

.m-plus-rounded-1c-medium {
font-family: "Zen Old Mincho", sans-serif;
font-weight: 600;
font-style: normal;
}

.m-plus-rounded-1c-bold {
font-family: "Zen Old Mincho", sans-serif;
font-weight: 700;
font-style: normal;
}


header div, header span, header object, header p, header blockquote, header pre, header img, header small, header strong, header sub, header sup, header var, header b, header i, header dl, header dt, header dd, header ol, header ul, header li, header fieldset, header form, header label, header legend, header table, header caption, header tbody, header tfoot, header thead, header tr, header th, header td, header figcaption, header figure,  header hgroup, header menu, header nav, header section, header summary, header time, header mark, header audio, header video {
margin: 0 !important;
padding: 0 !important;
border: 0;
outline: 0;
font-size: 1.6rem ;
vertical-align: baseline;
background: transparent;
}

header * {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Segoe UI, "Helvetica Neue", HelveticaNeue, "SF Pro JP", "SF Pro Text", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", Arial, sans-serif;
font-weight: 400;
font-style: normal;
/*background-color:#fff;*/
background-color: transparent;
font-size: 1.6rem ;
line-height:1.0em;
text-align:left;
color: #000;
-webkit-text-size-adjust: 100%;
font-feature-settings : "palt" 1;
/*
animation: headerFadeIn 3s ease 0s 1 normal;
-webkit-animation: headerFadeIn 3s ease 0s 1 normal;
*/
}

body {
/*
opacity: 0;
animation: appeare 0.5s ease 0.5s 1 normal forwards running;
*/
}

header .cfx:before,
header .cfx:after{
content:"";
display: table;
}
header .cfx:after { clear:both; }
header .cfx { *zoom:1; }

/* unnuber list is clear fix */
header ul:before,
header ul:after,
header ol:before,
header ol:after {
content:"";
display: table;
}
header ul:after,
header ol:after { clear:both; }
header ul,header ol { *zoom:1; }
header li { list-style:none; }

header li:before, header li:after {
content:"";
display: table;
}
header li:after { clear:both; }
header li { *zoom:1; }

/* data list is clear fix */
header dl:before, header dl:after {
content:"";
display: table;
}
header dl:after { clear:both; }
header dl { *zoom:1; }

/* basic : all hits media class */
.spDisplayNone {}
.tbDisplayNone {}
.pcDisplayNone {}
.smartContainer {}
.spDisplayOn,
.tbDisplayOn,
.pxDisplayOn,
.pcDisplayOn {
display: none;
}

/* for SP */
@media screen and (max-width: 767px) {
.spDisplayNone {display:none;}
.spDisplayOn {display: inline}
}

/* for TB */
@media screen and (max-width: 991px) and (min-width: 768px){
.tbDisplayNone {display:none;}
.tbDisplayOn {display: inline}
}

/* for PC */
@media screen and (min-width: 992px) {
.pcDisplayNone {display:none;}
.pcDisplayOn {display: inline}
}



@keyframes appeare {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


/* ============================
		header
 ============================ */

header#header {
position: sticky;
border-top: 8px solid #3d78bb;
height: 70px;
margin: 0;
padding: 0;
top: 0;
z-index: 1000;
background-color: #fff;
filter: drop-shadow(0 0 4px #0006);
box-sizing: border-box;
}



header#header a {
text-decoration: none;
}
header#header a:hover {
color: #000;
}

header#header .container {
height: 80px;
margin: 0;
padding: 0;
}

header#header .groupLogo {
position: absolute;
top: -5px;
left: 15px;
}

header#header .groupLogo a {
display: block;
}

header#header .groupLogo img {
width: 90px;
height: auto;
}

header#header .headerLogo {
position: absolute;
top: 22px;
left: 15px;
padding: 0;
margin: 0;
}

header#header .headerLogo a {
display: block;
font-size: 1.6rem;
color: #444;
line-height: 1em;
}


header#header .headerGroupList {
display: none;
}

header#header .headerGroupList a {
padding: 5px 10px !important;
}

header#header .headerGroupList .btn-outline-recruit {
background-color: #ed7499;
color: #fff;
}
header#header .headerGroupList .btn-outline-recruit:hover {
background-color: #fff;
color: #ed7499;
}
header#header .headerGroupList .btn-outline-recruit::after {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(../images/iconAnotherWindow.svg) no-repeat center;
	background-size: cover;
	margin-left: 0.8em;
}
header#header .headerGroupList .btn-outline-recruit:hover::after {
	background: url(../images/iconAnotherWindow2.svg) no-repeat center;
	background-size: cover;
}

header#header .headerGroupList .btn-outline-akitsu {
background-color: #217ac0;
color: #fff;
}
header#header .headerGroupList .btn-outline-akitsu:hover {
background-color: #fff;
color: #217ac0;
}

header#header .headerGroupList .btn-outline-kounoikesou {
background-color: #e96e1a;
color: #fff;
}
header#header .headerGroupList .btn-outline-kounoikesou:hover {
background-color: #fff;
color: #e96e1a;
}

header#header .headerGroupList .btn-outline-care {
background-color: #ac6991;
color: #fff;
}
header#header .headerGroupList .btn-outline-care:hover {
background-color: #fff;
color: #ac6991;
}

header#header .headerGroupList .btn-outline-kounoikekai {
background-color: #000080;
color: #fff;
}
header#header .headerGroupList .btn-outline-kounoikekai:hover {
background-color: #fff;
color: #000080;
}


header#header .headerAddress {
display: none;
}

header#header .headerCall {
display: none;
}


#h_top * {
font-size: 1.0rem;
color: #444;
letter-spacing: 0.26em;
}


/* for SP */
@media screen and (max-width: 767px) {

	header#header .globalNav li.recruit.desktop {
	display: none;
	}

	header#header .globalNav li.recruit.smart {

	}
	header#header .globalNav li.recruit.smart a {
	background-color: #ed7499;
	color: #fff !important;
	}


}

/* for PC */
@media screen and (min-width: 992px) {

/*
	#h_top {
	display: none;
	}
*/

	header#header {
	height: 155px;
	}

	header#header .groupLogo {
	position: absolute;
	top: 10px;
	left: 30px;
	}


	header#header .groupLogo img {
	width: 130px;
	height: auto;
	}

	header#header .headerLogo {
	position: absolute;
	top: 45px;
	left: 30px;
	padding: 0;
	margin: 0;
	}


	header#header .headerLogo a {
	display: block;
	font-size: 2.4rem;
	color: #444;
	line-height: 1em;
	}

	header#header .headerGroupList {
	display: inline-block;
	position: absolute;
	top: -2px;
	right: 30px;
	}

	header#header .headerGroupList li {
	display: inline-block;
	}

	header#header .headerGroupList li a {
	font-size: 1.0rem !important;
	padding: 0 10px !important;
	font-weight: normal !important;
	}

	header#header .headerGroupList li ul li a {
		padding: 0 2px !important;
	}

	header#header .snsList {
	position: relative;
	top: 8px;
	margin-left: 6px;
	}

	header#header .snsList a {
	padding: 0 4px !important;
	}


	header#header .headerAddress {
	display: inline-block;
	position: absolute;
	top: 46px;
	right: 30px;
	font-size: 1.0rem;
	}

	header#header .headerCall {
	display: inline-block;
	position: absolute;
	top: 63px;
	right: 30px;
	}

	header#header .headerCall a {
	display: block;
	font-size: 2.0rem !important;
	color: #135bad;
	background-image: url("../images/fig_call_bule001.svg");
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 33px;
	}

	header#header .headerCall i {
	color: #135bad;
	display: inline-block;
	top: 3px;
	border: 1px solid #135bad;
	border-radius: 100%;
	}

	#h_top * {
	font-size: 1.0rem;
	color: #444;
	letter-spacing: 0;
	}

	nav#gNav {
	position: fixed;
	top: 110px;
	left: 0;
	width: 100%;
	margin: 0 auto;
	background-color: transparent;
	}
	.globalNav {
	display: flex;
	justify-content: flex-start;
	height: 60px;
	}
	.globalNav > li {
	width: calc((100% / 8) - 0px);
	background-color: transparent;
	position: relative;
	line-height: 60px;
	text-align: center;
	}

	#h_top a.active {
		color: #ad131a;
	}

	.globalNav .sub-menu li a.active {
	color: #ad131a !important;
	}

	#cat_kounoikekai .globalNav > li {
	width: calc((100% / 9) - 15px);
	}
	#cat_kounoikekai .globalNav > li.katsuragi {
	width: calc((100% / 9) + 60px);
	}
	#cat_kounoikekai .globalNav > li.care {
	width: calc((100% / 9) + 10px);
	}

	#cat_kounoikesou .globalNav > li {
	width: calc((100% / 7) - 10px);
	}
	#cat_kounoikesou .globalNav > li.katsuragi {
	width: calc((100% / 7) + 60px);
	}

	#cat_care .globalNav > li {
	width: calc((100% / 6) - 0px);
	}


	.globalNav > li::after {
	content: "｜";
	color: #DDD;
	display: inline-block;
	position: absolute;
	right: -7px;
	top: -21px;
	}
	.globalNav > li:nth-last-child(2)::after {
	display: none;
	}

	.globalNav > li > a {
	text-decoration: none;
	color: #000;
	font-size: 18px !important;
	text-align: center !important;
	display: block;
	}

	.globalNav > li.withSubMenu > a::after {
	content: "▼";
	font-size: 10px;
	position: relative;
	top: -0.2em;
	margin-left: 1.5em;
	}






  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    /* width: calc((100vw / 7) - 40px);
	min-width: 230px; */
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }

  #cat_care #gNav .sub-menu {
  	/* width: calc((100vw / 5) - 20px); */
  }


  #gNav .sub-menu a {
    display: block;
    border-bottom: none;
    padding: 20px;
    line-height: 1.2em;
  }
  #gNav .sub-menu a:hover:after {
    content: none;
  }
  #gNav .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }
  #gNav .sub-menu li:last-child {
    border-bottom: none;
  }
  #gNav ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  #gNav ul > li:hover a,
  #gNav .current-menu-item a,
  #gNav .current-menu-parent a {
    color: #3d78bb;
  }
  #gNav li:hover ul.sub-menu {
    top: 80px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  #gNav li ul li:after {
    content: none;
  }
 #gNav li:hover ul.sub-menu a {
    color: #111;
  }
  #gNav .sub-menu li a:hover {
    background: #fff;
  }
  #gNav .contact_btn a:hover {
    color: #fff;
  }


	.globalNav .sub-menu {
	display: none;
	padding: 0 !important;
	margin: 0 !important;
	position: relative;
	top: 37px !important;
	left: 2px !important;
	width: calc(100% + 3px);
	background: #FFF;
	}


	/* #cat_care .globalNav .sub-menu {
	left: 10px !important;
	} */


	.globalNav .sub-menu li {
	text-align: center;
	/*transition: all .5s;*/
	color: #fff;
	background-color: rgba(255, 255, 255, 1) !important;
	border: 1px solid #ccc !important;
	border-top: none !important;
	padding: 0 !important;
	margin: 0 !important;
	/* width: calc(100% - 0.5px); */
	}

	.globalNav .sub-menu li:first-child {
	border-top: 1px solid #ccc !important;
	}

	.globalNav .sub-menu li a {
	display: block;
	font-size: 15px !important;
	color: #135bad !important;
	line-height: 1.2em;
	padding: 10px !important;
	margin: 0;
	text-align: left;
	background-color: #fff;
	text-decoration: none;
	letter-spacing: 0 !important;
	}

	.globalNav .sub-menu li a:hover {
		background: #F1F9FF !important;
	}




	header#header .globalNav li.recruit.smart {
	display: none;
	}




}


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


	#cat_hosp .globalNav > li.withSubMenu > a::after {
	margin-left: 0.0em;
	}



}

@media screen and (min-width: 1400px) {

	.globalNav .sub-menu {
	top: 5px;
	left: -5px;
	}

	/* .globalNav .sub-menu li {
	width: calc(100% - 5px);
	} */

	.globalNav .sub-menu li a {
	font-size: 15px !important;
	padding: 10px;
	line-height: 1.5em;
	}

}


#backToTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 100;
}

a.pdfLink {
	position: relative;
}

a.pdfLink::after {
	content: '';
	display: inline-block;
	width: 15px;
	height: 18px;
	background: url(../images/pdficon.svg) center;
	background-size: cover;
	vertical-align: middle;
	margin-left: 0.5em;
	position: relative;
	top: -2px;
}


/* for PC */
@media screen and (min-width: 992px) {

#backToTop {
bottom: 20px;
right: 40px;
z-index: 100;
}


}




/* ============================
		akitusSideButtum
 ============================ */

.akitusSideButtum {
position: fixed;
top: 80px;
right: -1px;
z-index: 100;
width: auto;
}

.akitusSideButtum li {
list-style-type: none;
margin-bottom: 5px;
}

.akitusSideButtum li img {
width: 40px;
filter: drop-shadow(0px 0px 2px rgba(255,255,255,1)) drop-shadow(0px 0px 2px rgba(255,255,255,1)) drop-shadow(0px 0px 2px rgba(255,255,255,1));
}

/* for PC */
@media screen and (min-width: 992px) {

	.akitusSideButtum {
	display: none;
	}

}


/* for SP */
@media screen and (max-width: 767px) {


	.wmpr-page__body {
/*	padding-right: 45px;*/
	}

	.alkituUtililityAside002 {
		width: 100vw;
	}
	

}


footer .footerList .col-auto {
margin: 5px 0;

}



/* ============================
	smartPhone用 header SNSマーク
 ============================ */


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

	header#header .headerGroupList {
	display: inline-block ;
	}

	header#header .headerGroupList > li {
	display: none;
	}

	header#header .headerGroupList > li:nth-child(6) {
	display: inline-block ;
	position: relative;
	}

	header#header .snsList {
	display: flex;
	position: fixed;
	top: 15px;
	right: 50px;
	}

	_::-webkit-full-page-media, _:future, :root header#header .snsList {
	top: 23px;
	}

	header#header .snsList {
	}

	header#header .headerGroupList a {
	padding-left: 5px !important;
	padding-right: 5px !important;
	}

}



/* ============================
		other
 ============================ */

/* for SP */
@media screen and (max-width: 767px) {
}

/* for TB */
@media screen and (max-width: 991px) and (min-width: 768px){
}

/* for PC */
@media screen and (min-width: 992px) {
}


