@charset "UTF-8";
/*========================
SETTINGS	
=========================*/
p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

.no-gutter > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

a.disable {
  cursor: default;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  font-size: 13px;
}

/*========================
COMMON	
=========================*/
a:hover {
  text-decoration: none;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.w100 {
  width: 100%;
  overflow: hidden;
}

p {
  font-size: 13px;
  line-height: 1.7em;
  color: #666;
}

@media (min-width: 768px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1200px;
  }
}

.thumbnail {
  padding: 8px;
}

.thumbnail .caption {
  padding: 5px 9px;
  color: #454545;
}

.narrower {
  letter-spacing: -1.5px;
}

.p40 {
  padding: 40px 0;
}

.p50 {
  padding: 50px 0;
}

.p50i {
  padding: 50px inherit;
  background: red;
}

.p2020 {
  padding: 20px;
}

.p3020 {
  padding: 30px 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt15 {
  margin-top: 15px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb0 {
  margin-bottom: 0 !important;
  border-bottom: none !important;
}

.bg-green {
  background: #70c25d !important;
}

.bg-green p {
  color: white;
}

.marker_green {
  color: #454545;
  background: linear-gradient(transparent 0%, #fff200 0%);
}

/*======= トップページ（ヘッダー） ========*/
.kh-top-header--z1 {
  background: url(../img/wallpaper.png) repeat left top #f0f0f0;
  z-index: -1;
  height: 550px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.kh-top-header--z1 .container {
  padding-left: 0;
  padding-right: 0;
}

.kh-top-slide-wrap {
  /* 		background:pink; */
  height: 650px;
}
@media screen and (min-width: 768px) {
  .kh-top-slide-wrap {
    margin-right: 200px;
  }
}
.kh-top-slide-wrap .pic {
  width: 100%;
  height: 550px;
  background-repeat: no-repeat;
  background-position: center top;
}
.kh-top-slide-wrap .pic1 {
  background-image: url(../img/visual01@1,5x.jpg);
}
.kh-top-slide-wrap .pic2 {
  background-image: url(../img/visual02@1,5x.jpg);
}
.kh-top-slide-wrap .pic3 {
  background-image: url(../img/visual03@1,5x.jpg);
}
.kh-top-slide-wrap .pic4 {
  background-image: url(../img/visual04@1,5x.jpg);
}
.kh-top-slide-wrap .pic5 {
  background-image: url(../img/visual05@1,5x.jpg);
}
.kh-top-slide-wrap .pic6 {
  background-image: url(../img/visual06@1,5x.jpg);
}

.pic {
  background-size: cover;
}

.bx-wrapper {
  box-shadow: none;
  border: none;
}

.kh-top-header {
  position: relative;
  height: 550px;
}
.kh-top-header > * {
  position: absolute;
}
.kh-top-header h1 {
  bottom: 195px;
  left: 10px;
  line-height: 18px;
}
@media screen and (min-width: 768px) {
  .kh-top-header h1 {
    bottom: 30px;
    left: 30px;
    line-height: 30px;
  }
}
.kh-top-header h2 {
  top: 0;
  left: 1;
  margin-left: -15px;
  padding: 15px 30px 15px 15px;
  background: white;
  width: 100%;
}
.kh-top-header h2 img {
  height: 40px;
  width: auto;
}
@media screen and (min-width: 768px) {
  .kh-top-header h2 {
    width: auto;
    padding: 15px 30px;
  }
}
.kh-top-header .kh-icon-hamburger-sm {
  top: 0;
  right: 0;
  height: 75px;
  width: 70px;
  left: auto;
  text-align: center;
  padding-top: 18px;
}
.kh-top-header .kh-top-nav-util {
  top: 20px;
  right: 215px;
  background: rgba(255, 255, 255, 0.5); /* @include box-r(2px); */
  padding: 0 10px;
}
.kh-top-header .kh-top-nav-util > li > a {
  font-size: 12px;
  color: #333;
  /*
  				text-shadow: 2px 2px 0 #fff,
  				-2px 2px 0 #fff,
  				2px -2px 0 #fff,
  				-2px -2px 0 #fff;
  */
}
.kh-top-header .kh-top-nav-util > li > a:hover {
  color: #333;
}
@media screen and (min-width: 768px) {
  .kh-top-header {
    height: 500px;
  }
}

.tcatch {
  display: inline-block;
  line-height: 18px;
  padding: 6px;
  margin-right: 1px;
  font-size: 18px;
  font-weight: normal;
}
@media screen and (min-width: 768px) {
  .tcatch {
    line-height: 30px;
    font-size: 30px;
    padding: 10px;
  }
}

.tc1 {
  background: white;
  color: #333;
}

.tc2 {
  background: #2a67c2;
  color: white;
  margin-top: 1px;
}

.tc3 {
  background: #333;
  color: white;
  margin-top: 1px;
}

@media screen and (min-width: 820px) {
  .tcatch-br {
    display: none;
  }
}

.kh-top-boxnav-head {
  position: absolute;
  width: 100%;
  height: 185px;
  bottom: 0;
  right: 0;
  overflow: hidden;
  background: #ccc;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head {
    position: absolute;
    width: 200px;
    height: 500px;
    top: 0;
    right: 0;
    background: #000;
  }
}

.kh-top-boxnav-head li {
  position: absolute;
  box-sizing: border-box;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head li {
    width: 100px;
  }
}

.kh-top-boxnav-head-s {
  height: 85px;
  width: 25%;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head-s {
    height: 100px;
    width: 100px;
    left: auto;
  }
}
.kh-top-boxnav-head-s a {
  color: white;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  font-size: 12px;
  padding-top: 20px;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head-s a {
    padding-top: 26px;
  }
}

.kh-top-boxnav-head-l {
  height: 100px;
  width: 33%;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head-l {
    height: 167px;
    width: 100px;
  }
}
.kh-top-boxnav-head-l i {
  padding-bottom: 5px;
}
.kh-top-boxnav-head-l a {
  color: white;
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding-top: 22px;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head-l a {
    padding-top: 50px;
  }
}

.kh-top-boxnav-head-l:last-child {
  width: 34%;
}
@media screen and (min-width: 768px) {
  .kh-top-boxnav-head-l:last-child {
    height: 166px;
    width: 100px;
  }
}

.kh-icon-hamburger {
  top: 0;
  left: 0;
  right: auto;
}
@media screen and (min-width: 768px) {
  .kh-icon-hamburger {
    top: 0;
    right: 0;
    left: auto;
  }
}
.kh-icon-hamburger a {
  color: #3c9e3c;
  background: white;
}

.kh-icon-mapmarker {
  top: 0;
  left: 0%;
  right: auto;
}
@media screen and (min-width: 768px) {
  .kh-icon-mapmarker {
    top: 100px;
    right: 0;
    left: auto;
  }
}
.kh-icon-mapmarker a {
  background: #1b6a1b;
}

.kh-icon-bookmark {
  top: 0;
  left: 25%;
}
@media screen and (min-width: 768px) {
  .kh-icon-bookmark {
    top: 200px;
    right: 0;
    left: auto;
  }
}
.kh-icon-bookmark a {
  background: #F4D637;
  color: #333;
}

.kh-icon-fb {
  top: 0;
  left: 50%;
  right: auto;
}
@media screen and (min-width: 768px) {
  .kh-icon-fb {
    top: 300px;
    right: 0;
    left: auto;
  }
}
.kh-icon-fb a {
  background: #3b5998;
}

.kh-icon-envelop {
  top: 0;
  left: 75%;
  right: auto;
}
@media screen and (min-width: 768px) {
  .kh-icon-envelop {
    top: 400px;
    right: 0;
    left: auto;
  }
}
.kh-icon-envelop a { /* color:#333; */
  background: #3c9e3c;
}

.kh-icon-calendar {
  top: auto;
  bottom: 0;
  left: 0;
  right: auto;
}
@media (min-width: 768px) {
  .kh-icon-calendar {
    top: auto;
    right: 100px;
    left: auto;
    bottom: 333px;
  }
}
.kh-icon-calendar a {
  background: #3c9e3c;
}

.kh-icon-recruit {
  top: auto;
  bottom: 0;
  left: 33%;
  right: auto;
}
@media (min-width: 768px) {
  .kh-icon-recruit {
    top: 167px;
    right: 100px;
    left: auto;
    bottom: auto;
  }
}
.kh-icon-recruit a {
  background: #5295fa;
}

.kh-icon-hospital {
  top: 85px;
  left: 66%;
  right: auto;
}
@media (min-width: 768px) {
  .kh-icon-hospital {
    top: 334px;
    right: 100px;
    left: auto;
  }
}
.kh-icon-hospital a {
  background: #2a67c2;
}

/*======= トップページ（メイン） ========*/
.kh-top-main {
  background: linear-gradient(to right, #6d9de3 52%, #6E6E6E 56%);
}
.kh-top-main h3 {
  color: white;
  font-size: 24px;
  margin-top: 10px;
  margin-bottom: 10px;
}
.kh-top-main p {
  color: white;
}

.kh-top-main-time {
  background: #2a67c2;
}
@media (min-width: 768px) {
  .kh-top-main-time {
    border-top: none;
  }
}
.kh-top-main-time .kh-top-main-time-feature {
  font-size: 16px;
}
.kh-top-main-time table {
  margin-top: 15px;
}
.kh-top-main-time th {
  background: #BCD1ED;
  text-align: center;
  color: #25569f;
}
.kh-top-main-time td {
  background: white;
  color: #666;
  font-weight: normal;
  text-align: center;
  color: #2a67c2;
}
.kh-top-main-time td.td-time {
  font-size: 10px;
  text-align: center;
  line-height: 1em;
  color: #25569f;
  font-weight: bold;
}
.kh-top-main-time .kh-top-main-time-note li {
  color: white;
  font-size: 12px;
}
.kh-top-main-time .table-bordered > thead > tr > th, .kh-top-main-time .table-bordered > tbody > tr > th, .kh-top-main-time .table-bordered > tfoot > tr > th, .kh-top-main-time .table-bordered > thead > tr > td, .kh-top-main-time .table-bordered > tbody > tr > td, .kh-top-main-time .table-bordered > tfoot > tr > td {
  border: 1px solid #2a67c2;
}

.kh-top-boxnav-main-wrap {
  font-size: 16px;
  padding-left: 15px;
  padding-right: 15px;
  background: #3c9e3c;
}
.kh-top-boxnav-main-wrap li {
  background: #3c9e3c; /* #51992c;  border-bottom:solid 1px white; &:nth-child(odd){border-right:solid 1px white}*/
}
.kh-top-boxnav-main-wrap li.pale {
  background: #70c25d; /* #67c138; */
}
.kh-top-boxnav-main-wrap .kh-top-boxnav-main {
  box-sizing: border-box;
  padding: 35px 0;
}
.kh-top-boxnav-main-wrap a {
  font-size: 24px;
  color: white;
  font-weight: bold;
}
.kh-top-boxnav-main-wrap .kh-sub {
  font-size: 12px;
  color: white;
}

.kh-h3sub {
  font-size: 16px;
  font-stretch: extra-condensed;
}

.kh-top-main-cat {
  background: #343434;
}

.kh-top-cat-menu a {
  display: block;
  color: white;
  font-size: 16px;
  line-height: 1em;
  padding: 14px 0;
  border-bottom: dotted 1px #ccc;
}

.kh-footer {
  background: #ccc;
}

.kh-footer-ul {
  border: solid 0px red;
  margin-bottom: 20px;
}

/*========== トップページ（お知らせ） ===========*/
.kh-top-info {
  background: url(../img/wallpaper02.png) repeat left top;
}

.kh-top-info-tit {
  background: #e9e9e9;
  position: relative;
}
.kh-top-info-tit h3 {
  text-align: center;
  width: 100%;
  height: 50px;
  font-size: 24px;
  color: #333;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.kh-top-info-tit h3 .sub {
  display: block;
  text-align: center;
  font-size: 14px;
  color: #999;
  margin-top: 4px;
}

.kh-top-info-list {
  background: white;
}
.kh-top-info-list dl {
  margin: 0 20px;
}
@media (min-width: 768px) {
  .kh-top-info-list dl {
    margin: 0 35px;
  }
}
.kh-top-info-list dt, .kh-top-info-list dd {
  font-size: 14px;
  padding-bottom: 9px;
}
.kh-top-info-list dt {
  font-family: "Courier New", Consolas, monospace;
  padding-bottom: 0;
}
.kh-top-info-list dd a {
  color: #3c9e3c;
}

@media (min-width: 768px) {
  .kh-top-info-tit, .kh-top-info-tit, .kh-top-fb {
    min-height: 400px;
  }
}

.kh-top-fb {
  background: #3b5998;
}

.kh-top-fb-inner {
  width: 320px;
  margin: 0 auto;
  padding: 30px 0;
}

/*========== トップページ（バナー） ===========*/
.kh-top-banner-wrap {
  background: url(../img/wallpaper03.png) repeat left top;
}

.kh-top-banner {
  background: white;
  margin-top: 30px;
  margin-bottom: 30px;
}
.kh-top-banner .kh-top-banner-photo {
  border-bottom: 10px solid #2a67c2;
}
.kh-top-banner h3 {
  padding: 15px 15px 0;
  font-size: 16px;
}
.kh-top-banner h3 > a {
  color: #25569f;
  font-weight: bold;
}
.kh-top-banner p {
  padding: 10px 15px 15px;
  font-size: 12px;
  font-weight: normal;
  color: #666;
}

.linkbox {
  cursor: pointer;
  transition: 0.5s;
}
.linkbox:hover {
  box-shadow: 0px 0px 10px -3px rgba(0, 0, 0, 0.7);
}

/*========== トップページ（フッター） ===========*/
.kh-footer {
  background: #222;
  padding-bottom: 100px;
}
.kh-footer li {
  margin: 7px 0;
  text-align: center;
}
@media (min-width: 992px) {
  .kh-footer li {
    text-align: left;
  }
}
.kh-footer a, .kh-footer p {
  color: white;
}
.kh-footer a:hover {
  color: white;
}
.kh-footer .kh-footer-name {
  font-size: 26px;
  margin-top: 14px;
}
.kh-footer .kh-footer-name, .kh-footer .kh-footer-address, .kh-footer .kh-footer-tel, .kh-footer .kh-footer-fax, .kh-footer .kh-footer-copy {
  text-align: center;
}
@media (min-width: 992px) {
  .kh-footer .kh-footer-name, .kh-footer .kh-footer-address, .kh-footer .kh-footer-tel, .kh-footer .kh-footer-fax, .kh-footer .kh-footer-copy {
    text-align: right;
  }
}
.kh-footer .kh-footer-copy {
  font-size: 10px;
  margin-top: 30px;
  color: #999;
}

/*======キーフレームアニメーションテスト========*/
/*
.kh-top-boxnav-head-s::after {
  animation-duration: .5s;
  animation-timing-function: ease-in-out;
  animation-name: skew;
}


@keyframes skew { 
  0%  {width:100%; height:100%;} 
  0%  {transform: scaleY(1); transform-origin:left top;} 
  50% {transform: scaleY(0.5); transform-origin:left top;}
  100% {transform: scaleY(0); transform-origin:left top;} 
} 

@keyframes matrix {
  from {
	  width:100%; height:100%;
	   transform-origin:right top;
     transform: matrix(1, 0, -1, 1, 0, 0);
  }

  to {
     transform: matrix(1, 0, 0, 1, 0, 0);
  }
}
*/
.nav > li > span {
  position: relative;
  display: block;
  padding: 10px 8px;
}

.nav-tabs > li > span {
  cursor: pointer;
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-radius: 4px 4px 0 0;
}

.nav-tabs > li.active > span, .nav-tabs > li.active > span:hover, .nav-tabs > li.active > span:focus {
  color: #555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: rgb(221, 221, 221);
  border-bottom-color: transparent;
}

.nav-tabs > li > span:hover {
  border-color: #eee #eee #ddd;
}

.nav > li > span:hover, .nav > li > span:focus {
  text-decoration: none;
  background-color: #eee;
}

/*=======================
LOWER COMMON
=========================*/
.khl-head {
  height: 65px;
  padding-left: 0;
  padding-right: 0;
  transition: 0.5s;
  background: white;
}

.khl-logo {
  box-sizing: border-box;
  width: 210px;
  padding: 10px 15px;
  text-align: left;
  float: left;
}

.khl-logo img {
  height: 40px;
  width: auto;
}

.khl-wrap {
  position: relative;
  padding-left: 0;
  padding-right: 0;
  background: white;
}

.khl-main {
  box-sizing: border-box;
  margin-left: 0;
  margin-right: 0;
  background: #f3f3f3; /* padding:10px; */
  margin-top: 0;
  min-height: 1150px;
  /* transition: .5s; */
}

.khl-left {
  position: absolute;
  width: 210px;
  top: 0px;
  left: -210px;
  transition: 0.5s;
  background: #3c9e3c;
}

.khl-left-btn {
  position: absolute;
  width: 45px;
  height: 50px;
  background: #1b6a1b;
  top: 20px;
  right: -45px;
  color: white;
  font-size: 20px;
  line-height: 50px;
  text-align: center;
  -webkit-border-top-right-radius: 5px;
  -webkit-border-bottom-right-radius: 5px;
  -moz-border-radius-topright: 5px;
  -moz-border-radius-bottomright: 5px;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}

.left0 {
  left: 0;
  height: 100%;
  border-right: solid 3px #1b6a1b;
}

.khl-right {
  display: none;
  transition: 0.5s;
  width: 0;
}

@media screen and (min-width: 992px) {
  .khl-head {
    height: 80px;
  }
  .khl-logo {
    text-align: center;
    width: 210px;
    padding: 15px;
    float: left;
  }
  .khl-left {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
  }
  .khl-main {
    margin-left: 210px;
    margin-right: 70px;
    margin-top: -30px;
  }
  .khl-right {
    display: block;
    position: absolute;
    width: 70px;
    top: 0;
    right: 0;
  }
}
.khl-nav-util {
  font-size: 12px;
}
.khl-nav-util a {
  color: #666;
  margin-right: 1em;
}
.khl-nav-util a:hover {
  color: #999;
}
@media screen and (min-width: 768px) {
  .khl-nav-util {
    float: right;
    margin-top: 25px;
  }
}
@media screen and (min-width: 992px) {
  .khl-nav-util {
    margin-top: 16px;
  }
}

.khl-icon-hamburger {
  width: 70px;
  float: right;
}
.khl-icon-hamburger a {
  color: #3c9e3c;
  background: white;
  display: block;
  padding: 12px 0;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .khl-icon-hamburger a {
    padding: 20px 0;
  }
}

.khl-content {
  padding-top: 30px;
  padding-bottom: 30px;
  box-shadow: inset 0px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.khl-content h2 {
  font-size: 24px;
  padding: 10px;
  padding-left: 0;
  margin-bottom: 30px;
  border-bottom: solid 1px #3c9e3c;
  border-top: solid 0px #1b6a1b;
  border-left: solid 0px #3c9e3c; /* background:white; */
  color: #3c9e3c;
}
.khl-content .khl-gen-lead {
  font-size: 14px;
  color: #666;
  margin-bottom: 15px;
}
@media screen and (min-width: 992px) {
  .khl-content {
    padding-left: 30px;
    padding-right: 30px;
  }
}

.khl-section {
  margin-bottom: 50px;
}

.khl-section:first-child {
  margin-top: 0px;
}

.tate {
  writing-mode: vertical-rl;
}

.list-mark-ul-wrap {
  margin-left: 0;
}
.list-mark-ul-wrap ul {
  padding-left: 0;
  margin-left: 1.2em;
  margin-bottom: 30px;
  padding-top: 3px;
}
.list-mark-ul-wrap ul li {
  list-style: none;
  position: relative;
  line-height: 1.2em;
  padding-bottom: 8px;
  padding-top: 7px;
  font-size: 13px;
  color: #666;
  border-bottom: solid 1px #ccc;
}
.list-mark-ul-wrap ul li:before {
  position: absolute;
  left: -1.2em;
  font-family: "FontAwesome";
  content: "\f14a";
  color: #3c9e3c;
}

.list-wrap-border {
  border-top-style: solid;
  border-top-width: 2px;
  border-top-color: #ccc;
}

.list-wrap-border-green {
  border-top-color: #3c9e3c;
}

.list-wrap-border-blue {
  border-top-color: #2a67c2;
}

/*--LOWER LEFT NAVI--*/
.khl-boxnav-head-l {
  width: 50%;
  text-align: center;
  float: left;
}
.khl-boxnav-head-l i {
  padding-bottom: 3px;
}
.khl-boxnav-head-l a {
  color: white;
  display: block;
  font-size: 10px;
  padding: 15px 0;
}

.khl-icon-calendar {
  top: auto;
  bottom: 0;
  left: 0;
  right: auto;
}
@media (min-width: 768px) {
  .khl-icon-calendar {
    top: auto;
    right: 100px;
    left: auto;
    bottom: 250px;
  }
}
.khl-icon-calendar a {
  background: #3c9e3c;
}
.khl-icon-calendar a:hover {
  background: #1b6a1b;
}

.khl-icon-hospital {
  top: 85px;
  left: 50%;
  right: auto;
}
@media (min-width: 768px) {
  .khl-icon-hospital {
    top: 250px;
    right: 100px;
    left: auto;
  }
}
.khl-icon-hospital a {
  background: #2a67c2;
}
.khl-icon-hospital a:hover {
  background: #25569f;
}

.khl-leftnav-main > li > a {
  display: block;
  color: white;
  border-top: solid 1px white;
  padding: 12px;
  font-size: 14px;
}
.khl-leftnav-main > li > a:hover {
  color: white;
}
.khl-leftnav-main > li > a:hover:after {
  content: "\f054";
  float: right;
  font-family: "FontAwesome";
}
.khl-leftnav-main > li.cat01 > a {
  background: #3c9e3c;
}
.khl-leftnav-main > li.cat01 > a:hover {
  background: #1b6a1b;
}
.khl-leftnav-main > li.cat02 > a {
  background: #70c25d; /* #5cc15c; */
}
.khl-leftnav-main > li.cat02 > a:hover {
  background: #3c9e3c;
}
.khl-leftnav-main > li.cat03 > a {
  background: #1b6a1b; /* #1b6a1b; */
}
.khl-leftnav-main > li.cat04 > a {
  color: #1b6a1b;
  padding: 12px;
  border-bottom: solid 1px #3c9e3c;
  background: white;
}
.khl-leftnav-main > li.cat04 > a:hover {
  color: #3c9e3c;
}
.khl-leftnav-main > li.cat01 > a.active, .khl-leftnav-main > li.cat02 > a.active, .khl-leftnav-main > li.cat03 > a.active {
  background: #276727;
}
.khl-leftnav-main > li.cat01 > a.active:after, .khl-leftnav-main > li.cat02 > a.active:after, .khl-leftnav-main > li.cat03 > a.active:after {
  content: "\f054";
  float: right;
  font-family: "FontAwesome";
}
.khl-leftnav-main > li.cat04 > a.active {
  font-weight: bold;
}
.khl-leftnav-main > li.cat04 > a.active:after {
  content: "\f054";
  float: right;
  font-family: "FontAwesome";
}
.khl-leftnav-main > li > dl {
  margin-bottom: 0;
}
.khl-leftnav-main > li > dl > dt.cat01 {
  color: white;
  padding: 12px;
  font-size: 14px;
  background: #3c9e3c;
  border-top: solid 1px white;
  cursor: hand;
  cursor: pointer;
}
.khl-leftnav-main > li > dl > dt.cat01:hover {
  background: #1b6a1b;
}
.khl-leftnav-main > li > dl > dt.cat01:after {
  content: "\f067";
  float: right;
  font-family: "FontAwesome";
}
.khl-leftnav-main > li > dl > dt.cat01.selected::after {
  content: "\f068";
  float: right;
  font-family: "FontAwesome";
}

ul.subcat > li > a {
  display: block;
  padding: 5px 12px;
  color: #3c9e3c;
  border-bottom: dotted 1px #70c25d;
  background: white;
}
ul.subcat > li > a:hover {
  background: #cfe8ca;
}

ul.subcat > li > a.active {
  color: #1b6a1b;
  font-weight: bold;
}
ul.subcat > li > a.active:after {
  content: "\f054";
  float: right;
  font-family: "FontAwesome";
}

ul.subcat > li:last-child > a {
  border-bottom: none;
}

/*--LOWER RIGHT NAVI--*/
.khl-boxnav-head-s {
  width: 70px;
  text-align: center;
}
.khl-boxnav-head-s i {
  padding-bottom: 3px;
}
.khl-boxnav-head-s a {
  color: white;
  display: block;
  font-size: 10px;
  padding: 15px 0;
}

.khl-boxnav-head-xs {
  width: 20%;
  text-align: center;
  float: left;
}
.khl-boxnav-head-xs i {
  padding-bottom: 3px;
}
.khl-boxnav-head-xs a {
  color: white;
  display: block;
  font-size: 10px;
  padding: 15px 0;
}

.khl-boxnav-header {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}

.khl-icon-mapmarker a {
  background: #1b6a1b;
}

.khl-icon-bookmark a {
  color: #333;
  background: #F4D637;
}

.khl-icon-fb a {
  background: #3b5998;
}

.khl-icon-envelop a {
  background: #43b043;
}

.khl-icon-pagetop a {
  background: #3c9e3c;
}

/*--LOWER MAIN HEADER--*/
.khl-pagetitle {
  background: white;
  padding: 20px 15px;
  border-top: 5px solid #3c9e3c;
  text-align: center; /* border-bottom:3px solid $kh-green; */
}
@media screen and (min-width: 992px) {
  .khl-pagetitle {
    padding: 50px 30px;
    text-align: left;
  }
}
.khl-pagetitle h1, .khl-pagetitle p.en {
  color: #3c9e3c;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .khl-pagetitle h1, .khl-pagetitle p.en {
    text-align: left;
    display: inline-block;
  }
}
.khl-pagetitle h1 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 6px;
}
@media screen and (min-width: 992px) {
  .khl-pagetitle h1 {
    font-size: 30px;
    margin-bottom: 0;
    line-height: 1em;
  }
}
.khl-pagetitle p.en {
  line-height: 1em;
  color: white;
  padding: 3px 8px;
  background: #3c9e3c;
  border-radius: 10px;
  display: inline-block;
  margin: 0 8px;
  font-family: "Arial";
}

.khl-visual img {
  border: none;
}
@media screen and (min-width: 768px) {
  .khl-visual img {
    border: solid 7px white;
    border-top: none;
  }
}

.khl-pagenavi {
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 40px;
  display: block;
}
.khl-pagenavi .khl-pagenavi-item {
  border-bottom: 1px solid white;
  border-right: 1px solid white;
}
@media screen and (min-width: 768px) {
  .khl-pagenavi .khl-pagenavi-item {
    border-right: 1px solid white;
    border-top: 0px solid #1b6a1b;
    border-bottom: none;
  }
}
.khl-pagenavi a {
  display: block;
  background: #3c9e3c;
  padding: 10px;
  color: white;
  text-align: left;
  font-size: 14px;
  transition: 0.3s;
}
.khl-pagenavi a:after {
  content: "\f107";
  float: right;
  font-family: "FontAwesome";
}
.khl-pagenavi a:hover {
  background: #1b6a1b;
  color: white;
}

.khl-hidden {
  display: none;
}

/*---- useful tools ----*/
article {
  margin-bottom: 50px;
}

.mat-tit {
  display: inline-block;
  background: #3c9e3c;
  color: white;
  line-height: 1em;
  padding: 3px 10px;
  margin-bottom: 10px;
}

.mat-tit-gray {
  background: #666;
}

.mat-tit-blue {
  background: #2a67c2;
}

.text {
  color: #666;
  line-height: 1.8em;
}

hr {
  margin-top: 0;
  margin-bottom: 50px;
  border: 0;
  border-top-color: currentcolor;
  border-top-style: none;
  border-top-width: 0px;
  border-top: 1px solid #ccc;
}

.note {
  font-size: 10px;
  font-weight: normal;
  margin-top: 7px;
}

.note12 {
  font-size: 12px;
  font-weight: normal;
  margin-top: 7px;
}

.note-blue {
  color: #2a67c2;
}

.note-red {
  color: #b92b2b;
}

.note-green {
  color: #3c9e3c;
}

.note-asta:before {
  content: "\f069";
  font-family: "FontAwesome";
}

hr.hr-p {
  margin: 10px 0;
}

a.khl-btn {
  display: block;
  padding: 0 10px;
  font-size: 16px;
  font-weight: bold;
  height: 45px;
  line-height: 45px;
  color: white;
}
a.khl-btn:hover {
  color: white;
}

a.khl-btn-inline {
  display: inline-block;
  padding: 0 20px;
  font-size: 16px;
  font-weight: bold;
  height: 38px;
  line-height: 38px;
  color: white;
  border-radius: 6px;
}

.khl-btn-green {
  background: #3c9e3c;
  transition: 0.5s;
}
.khl-btn-green:hover {
  background: #1b6a1b;
}

.khl-btn-blue {
  background: #2a67c2;
  transition: 0.5s;
}
.khl-btn-blue:hover {
  background: #25569f;
}

.khl-btn-pdf:after {
  content: "\f14c";
  float: right;
  font-family: "FontAwesome";
}

.font-s6 {
  font-size: 0.6em;
}

.font-s7 {
  font-size: 0.7em;
}

.font-s8 {
  font-size: 0.8em;
}

.font-s9 {
  font-size: 0.9em;
}

.font-l2 {
  font-size: 1.2em;
}

.kh-font-blue {
  color: #2a67c2;
}

.kh-font-green {
  color: #3c9e3c;
}

.khl-table-th-green th {
  color: #3c9e3c;
}

.khl-table-th-blue th {
  color: #2a67c2;
}

.kh-green-wrap {
  background: #3c9e3c;
  padding: 15px;
  margin-bottom: 15px;
  border-bottom: solid 1px #ddd;
  border-right: solid 1px #eee;
}

.khl-white-wrap {
  background: white;
  padding: 15px;
  margin-bottom: 30px;
  border-bottom: solid 1px #ddd;
  border-right: solid 1px #eee;
}

.khl-photo-wrap {
  padding-bottom: 15px;
  margin-bottom: 30px;
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .khl-photo-wrap {
    margin-top: 0;
    background: white;
    padding: 15px;
    margin-bottom: 30px;
    border-bottom: solid 1px #ddd;
    border-right: solid 1px #eee;
  }
}

.caption {
  font-size: 11px;
  text-align: center;
}

.khl-ul-border {
  border-top-style: solid;
  border-top-width: 3px;
  border-top-color: #ccc;
}
.khl-ul-border li {
  color: #666;
  padding: 10px 0;
  border-bottom: solid 1px #ccc;
}

.khl-ul-border-green {
  border-top-color: #3c9e3c;
}

.am {
  padding: 1px 3px 0px;
  background: #6d9be0;
  display: inline-block;
  border-radius: 2px;
  color: white;
}

.pm {
  padding: 1px 3px 0px;
  background: #85c385;
  display: inline-block;
  border-radius: 2px;
  color: white;
}

/*About us*/
@media screen and (min-width: 768px) {
  .khl-photo-message {
    height: auto;
    overflow: visible;
  }
}

.khl-aboutus-message p.mess {
  margin-bottom: 1em;
  line-height: 1.6em;
  color: #666;
  text-align: justify;
  text-justify: inter-ideograph;
}

.khl-table-wrap {
  padding: 20px;
  padding-top: 30px;
  background: white;
}
.khl-table-wrap .table > tbody > tr > th, .khl-table-wrap .table > tbody > tr > td {
  padding: 4px 8px;
}

.mes-p {
  margin: 1em 0;
  text-align: justify;
  text-justify: inter-ideograph;
}

.kh-rinen-p {
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: bold;
  color: #1b6a1b;
}

.kh-rinen-ul {
  margin-bottom: 15px;
}

.kh-rinen-ul > li {
  color: #666;
  margin: 5px 0;
  margin-left: 2em;
  text-indent: -2em;
}
.kh-rinen-ul > li:before {
  content: "一、";
}

.khl-gaiyo {
  margin-bottom: 0;
}
.khl-gaiyo th {
  color: #3c9e3c;
  white-space: nowrap;
}

.khl-dr-wrap {
  background: white;
  padding: 15px;
  margin-bottom: 30px;
  border-bottom: solid 1px #ddd;
  border-right: solid 1px #eee;
}

.khl-dr-name {
  font-size: 13px;
  font-weight: bold;
  color: #3c9e3c;
  padding-top: 8px;
  text-align: center;
  line-height: 1.2em;
}

.khl-dr-text {
  font-size: 12px;
  color: #666;
  line-height: 1.4em;
  text-align: justify;
  text-justify: inter-ideograph;
}

.khl-access {
  border-top: dotted 1px #aaa;
  padding: 10px 0;
}
.khl-access ul > li {
  color: #666;
  margin: 8px 0;
}

.khl-access-address {
  color: #666;
  font-size: 14px;
}

.ope-cat {
  background: #3c9e3c;
}

.khl-ope-tit {
  font-size: 16px;
  margin: 15px 0 10px;
  color: #2a67c2;
}

table.klh-ope > tbody > tr > th, table.klh-ope > tbody > tr > td {
  border-color: #999;
  font-size: 12px;
}
table.klh-ope > tbody > tr > th {
  background: #dae6f7;
  font-weight: normal;
}
table.klh-ope > tbody > tr > th.ope-cat {
  background: #d2eed2;
}
table.klh-ope > tbody > tr > td {
  text-align: right;
}

/*----- Inforiation -----*/
.kh-infomation article {
  margin: 0 0 50px;
}

/**/
.khl-weekly-table p.khl-weekly-tit {
  color: #2a67c2;
  margin-bottom: 0px;
  font-weight: bold;
  font-size: 15px;
}
.khl-weekly-table table {
  margin-bottom: 0;
  border: solid 1px #215198;
}
.khl-weekly-table .table > tbody > tr > th, .khl-weekly-table .table > tbody > tr > td {
  text-align: center;
  vertical-align: middle;
  font-family: sans-serif;
}
.khl-weekly-table .table-bordered > tbody > tr > th {
  border: 1px solid white;
  border: none;
}
.khl-weekly-table .table-bordered > tbody > tr > td {
  border: 1px solid #2a67c2;
}
.khl-weekly-table th {
  background: #215198;
  color: white;
}
.khl-weekly-table td {
  background: #f1f1f1;
}
.khl-weekly-table .table-bordered > tbody > tr > th.khl-th-col {
  background: #d5e1f2;
  color: #2a67c2;
  border-bottom: solid 1px #2a67c2;
}
.khl-weekly-table .table-bordered > tbody > tr > th.khl-am {
  border: none;
  background: #2a67c2;
}
.khl-weekly-table .table-bordered > tbody > tr > th.khl-pm {
  border: none;
  background: #5d90dc;
}
.khl-weekly-table .table-bordered > tbody > tr > th.th-bb {
  border-bottom: solid 1px #0f2444;
}

/*----- Neurosurgery（脳神経外科） ------*/
.kh-dept-catch {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #1b6a1b;
}

/*----- rehab.html -----*/
.rehab {
  margin-bottom: 30px;
}

/*----- Care Support ------*/
.khl-support-h2-s {
  font-size: 0.9em;
}

.table-bordered > tbody > tr > th.care1 {
  background: #4881d7;
}

.table-bordered > tbody > tr > th.care2 {
  background: #2a67c2;
}

.table-bordered > tbody > tr > th.care3 {
  background: #215198;
}

.table-bordered > tbody > tr > th.care4 {
  background: #183a6e;
}

.table-bordered > tbody > tr > th.care5 {
  background: #0f2444;
}

.table-bordered > tbody > tr > th.supp1 {
  background: #4881d7;
}

.table-bordered > tbody > tr > th.supp2 {
  background: #2a67c2;
}

.table-bordered > tbody > tr > th.supp-tit {
  background: #0f2444;
}

/*------ Inpatient --------*/
.khl-inpatient-desc h3 {
  color: #3c9e3c;
  font-size: 16px;
  padding: 10px 0;
  border-bottom: solid #3c9e3c 1px;
  margin-bottom: 15px;
}
.khl-inpatient-desc ol {
  margin: 15px 0 30px;
  color: #666;
  padding-left: 1.5em;
}
.khl-inpatient-desc li {
  margin: 7px 0;
}

/*----- Outpatient Care -------*/
.khl-outpatient-cat {
  padding-top: 15px;
}
.khl-outpatient-cat a {
  display: block; /* text-align: center; */
  color: white;
  background: #3c9e3c;
  padding: 12px 10px;
  line-height: 1em;
  margin-bottom: 1px;
  font-size: 14px;
  font-weight: bold;
}
.khl-outpatient-cat a:after {
  content: "\f054";
  float: right;
  font-family: "FontAwesome";
}
.khl-outpatient-cat a:hover {
  background: #1b6a1b;
}
@media screen and (min-width: 768px) {
  .khl-outpatient-cat a {
    margin-bottom: 10px;
  }
}

.khl-outpatient-desc h3 {
  color: #3c9e3c;
  font-size: 16px;
  padding: 10px 0;
  border-bottom: solid #3c9e3c 1px;
  margin-bottom: 15px;
}
.khl-outpatient-desc ul {
  margin: 1px 0 30px;
  color: #666;
}
.khl-outpatient-desc li {
  margin: 10px 0;
}

.kh-for {
  margin-bottom: 5px;
}
.kh-for h4 {
  color: white;
  padding: 8px;
  width: 70px;
  height: 70px;
  border-radius: 35px;
  text-align: center;
  padding: 20px 0;
  float: left;
  margin-right: 10px;
  margin-bottom: 5px;
  line-height: 0.8em;
  font-size: 20px;
}
.kh-for ul {
  margin-bottom: 0;
}
.kh-for li {
  padding: 0 5px;
  margin: 0 0 5px;
}

.kh-for-initial h4 {
  background: #2a67c2;
}
.kh-for-initial li {
  color: #2a67c2;
}

.outpatient_initial {
  border-top: solid 7px #2a67c2;
}

.outpatient_repeat {
  border-top: solid 7px #3c9e3c;
}
@media screen and (min-width: 768px) {
  .outpatient_repeat {
    margin-top: 0;
  }
}

.kh-for-repeat h4 {
  background: #3c9e3c;
}
.kh-for-repeat li {
  color: #3c9e3c;
}

.kh-step {
  border-style: solid;
  border-width: 3px;
  border-radius: 6px;
  padding: 8px;
  background: #fffce5;
  position: relative;
}
.kh-step:after {
  content: "\f063";
  font-family: "FontAwesome";
  display: block;
  text-align: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
  font-size: 16px;
}

.kh-step-initial {
  border-color: #2a67c2;
  margin-bottom: 20px;
}
.kh-step-initial:after {
  color: #2a67c2;
}
.kh-step-initial h5 {
  color: #2a67c2;
}

.kh-step-repeat {
  border-color: #3c9e3c;
  margin-bottom: 20px;
}
.kh-step-repeat:after {
  color: #3c9e3c;
}
.kh-step-repeat h5 {
  color: #3c9e3c;
}

.kh-step-fill {
  margin-bottom: 20px;
  color: white;
  padding: 10px;
}
.kh-step-fill h5, .kh-step-fill p {
  color: white;
}
.kh-step-fill:after {
  content: "\f063";
  font-family: "FontAwesome";
  display: block;
  text-align: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
}

.kh-step-common02 {
  border-color: #1b6a1b;
  margin-bottom: 20px;
  background: #1b6a1b;
}
.kh-step-common02 h5, .kh-step-common02 p {
  color: white;
}
.kh-step-common02:after {
  content: "";
}

.kh-step-initial-2 {
  background: #2a67c2 !important;
}
.kh-step-initial-2:after {
  color: #2a67c2;
}

.kh-step-initial-3 {
  background: #25569f !important;
}
.kh-step-initial-3:after {
  content: none;
}

.kh-step-repeat-2 {
  background: #3c9e3c !important;
}
.kh-step-repeat-2:after {
  color: #3c9e3c;
}

.kh-step-repeat-3 {
  background: #1b6a1b !important;
}
.kh-step-repeat-3:after {
  content: none;
}

/*------ Magasinze ------*/
.khl-mz-wrap {
  background: white;
  padding: 15px;
  margin-bottom: 30px;
  border-bottom: solid 1px #ddd;
  border-right: solid 1px #eee;
}

.khl-mz-photo {
  text-align: center;
}

.khl-mz-no {
  font-size: 14px;
  font-weight: bold;
  color: #3c9e3c;
  padding-top: 5px;
  text-align: center;
}

/*----- recruit.html -----*/
.kh-recruit h2 {
  border-bottom: none;
}
.kh-recruit h3.fukuri {
  font-size: 20px;
  color: #2a67c2;
  text-align: center;
  padding: 10px;
  background: white;
  margin-bottom: 0;
  border-top: dotted 1px #ccc;
}
.kh-recruit .kh-text-green {
  color: #3c9e3c;
  font-weight: bold;
}
.kh-recruit .kh-text-blue {
  color: #2a67c2;
  font-weight: bold;
}

.kh-recruit-pagenav {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
@media (min-width: 576px) {
  .kh-recruit-pagenav {
    gap: 15px;
  }
}
.kh-recruit-pagenav a {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: space-between;
  background-color: #3c9e3c;
  color: white;
  padding: 12px 5px 8px;
  text-align: center;
  line-height: 1;
  font-size: 14px;
  font-weight: 400;
  transition: background-color 0.5s;
}
@media (min-width: 576px) {
  .kh-recruit-pagenav a {
    font-size: 16px;
  }
}
.kh-recruit-pagenav a:after {
  content: "\f107";
  font-family: "FontAwesome";
}
.kh-recruit-pagenav a:hover {
  background-color: #1b6a1b;
}

.pagetop {
  font-size: 12px;
}
.pagetop a {
  color: #2a67c2;
}

.kh-recruit-fukuri {
  background: #2a67c2;
  padding: 30px 15px 15px;
}
.kh-recruit-fukuri h4 {
  font-size: 18px;
  color: white;
  padding-bottom: 15px;
  border-bottom: solid 1px white;
}
.kh-recruit-fukuri p, .kh-recruit-fukuri h4 {
  color: white;
  padding-bottom: 15px;
}

.kh-recruit-shokuin-wrap {
  padding: 15px;
  background: white;
  border: solid 1px #ccc;
  margin-bottom: 10px;
}
.kh-recruit-shokuin-wrap img.shokuin {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.kh-recruit-shokuin {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 15px;
}
.kh-recruit-shokuin a {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.kh-recruit-shokuin a p {
  text-align: center;
}
.kh-recruit-shokuin .occupation {
  font-size: 12px;
  color: #2a67c2;
}
.kh-recruit-shokuin .go_message {
  font-size: 10px;
  line-height: 22px;
  height: 22px;
  border: solid 1px #ccc;
  padding: 0 8px;
  dusplay: block;
}
.kh-recruit-shokuin .go_message:hover {
  background-color: #e9e9e9;
}

.kh-recruit-want {
  padding: 15px;
  background: white;
  border: solid 1px #ccc;
}
.kh-recruit-want ul {
  margin: 0;
  padding: 0;
}
.kh-recruit-want ul > li {
  margin-right: 0;
  padding-right: 0;
  padding-left: 0;
  color: #2a67c2;
  font-size: 16px;
  font-weight: bold;
}

ul.recruiting {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-top: 16px;
}
ul.recruiting > li > a {
  display: block;
  line-height: 30px;
  height: 30px;
  font-size: 14px;
  background-color: #dae4f5;
  border-radius: 3px;
  padding: 0 12px;
  text-align: center;
  color: #2a67c2;
  border: solid 1px #2a67c2;
  transition: background-color 0.3s, color 0.3s;
}
ul.recruiting > li > a:hover {
  background-color: #2a67c2;
  color: white;
}

.kh-recruiting-tit {
  font-size: 20px;
  color: #2a67c2;
  text-align: center;
  margin: 0 auto 15px;
  padding-top: 30px;
}

details summary::-webkit-details-marker {
  display: none;
}

details.kh-recruiting-details {
  padding: 15px;
  background: white;
  border: solid 1px #ccc;
  margin-bottom: 15px;
}
details.kh-recruiting-details summary {
  color: white;
  background-color: #2a67c2;
  line-height: 36px;
  height: 36px;
  font-size: 16px;
  font-weight: 500;
  display: flex;
  padding: 0 12px;
  cursor: pointer;
  justify-content: space-between;
  transition: background-color 0.5s;
}
details.kh-recruiting-details summary:after {
  content: "\f067";
  display: inline-block;
  font-family: "FontAwesome";
}
details.kh-recruiting-details summary:hover {
  background-color: #3888ff;
}

details[open] summary:after {
  content: "\f068";
}

.kh-recruiting-details > dl {
  display: grid;
  grid-template-columns: 10rem 1fr;
  margin-top: 15px;
}
.kh-recruiting-details > dl dt, .kh-recruiting-details > dl dd {
  padding: 10px;
  border-bottom: solid 1px #ccc;
}
.kh-recruiting-details > dl dt {
  color: #2a67c2;
  font-weight: normal;
}
.kh-recruiting-details > dl dd {
  letter-spacing: 0.05rem;
}
.kh-recruiting-details > dl dd p {
  line-height: 1.2;
}
.kh-recruiting-details > dl dd > p {
  margin-bottom: 5px;
}
.kh-recruiting-details > dl dd > ul li:not(last-child) {
  margin-bottom: 10px;
}
.kh-recruiting-details > dl dt:nth-child(4n+1), .kh-recruiting-details > dl dt:nth-child(4n+1) + dd {
  background-color: #f0f0f0;
}

/*------ Facilities ------*/
.khl-floor-table p.khl-weekly-tit {
  color: #2a67c2;
  margin-bottom: 0px;
  font-weight: bold;
  font-size: 15px;
}
.khl-floor-table table {
  margin-bottom: 0;
}
.khl-floor-table .table-bordered {
  border: none;
  border-top: solid 1px #729ee0;
}
.khl-floor-table .table > tbody > tr > th, .khl-floor-table .table > tbody > tr > td {
  vertical-align: middle;
  font-family: sans-serif;
}
.khl-floor-table .table-bordered > tbody > tr > th {
  border: none;
  border-top: none;
}
.khl-floor-table .table-bordered > tbody > tr > th {
  border-bottom: 1px solid #255cad;
  text-align: center;
  color: white;
}
.khl-floor-table .table-bordered > tbody > tr > th.f1 {
  background: #255cad;
  border-bottom: 1px solid #2a67c2;
}
.khl-floor-table .table-bordered > tbody > tr > th.f2 {
  background: #3373d3;
}
.khl-floor-table .table-bordered > tbody > tr > th.f3 {
  background: #4881d7;
}
.khl-floor-table .table-bordered > tbody > tr > th.f4 {
  background: #5d90dc;
}
.khl-floor-table .table-bordered > tbody > tr > th.f5 {
  background: #729ee0;
}
.khl-floor-table .table-bordered > tbody > tr > td {
  border: none;
  border-bottom: 1px solid #2a67c2;
  background: white;
}
.khl-floor-table .table-bordered > tbody > tr > td a.fmap {
  display: inline-block;
  padding: 0px 8px;
  background: #2a67c2;
  color: white;
  font-size: 12px;
  border-radius: 6px;
  height: 18px;
  line-height: 18px;
  font-family: "Arial";
}
.khl-floor-table ul > li {
  float: left;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .khl-floor-table ul > li {
    width: 25%;
  }
}

/*------ Cooporation ----------*/
.coop-group {
  font-size: 18px;
  color: #3c9e3c;
  font-weight: bold;
}

/*----- CheckUp -----*/
.kh-bold {
  font-weight: bold;
  color: #2a67c2;
}

.khl-checkup-table table {
  margin-bottom: 0;
  border: solid 1px #215198;
}
.khl-checkup-table .table > tbody > tr > th, .khl-checkup-table .table > tbody > tr > td { /* text-align: center; */
  vertical-align: middle;
  font-family: sans-serif;
}
.khl-checkup-table .table-bordered > tbody > tr > th {
  border: 1px solid white;
  border: none;
  white-space: nowrap;
}
.khl-checkup-table .table-bordered > tbody > tr > td {
  border: 1px solid #2a67c2;
  color: #666;
}
.khl-checkup-table th {
  background: #255cad;
  color: white;
}
.khl-checkup-table td {
  background: #f3f3f3;
}
.khl-checkup-table .table-bordered > tbody > tr > th.khl-th-col {
  background: #d5e1f2;
  color: #2a67c2;
  border-bottom: solid 1px #2a67c2;
}
.khl-checkup-table .table-bordered > tbody > tr > th.khl-am {
  border: none;
  background: #2a67c2;
}
.khl-checkup-table .table-bordered > tbody > tr > th.khl-pm {
  border: none;
  background: #5d90dc;
}
.khl-checkup-table .table-bordered > tbody > tr > th.th-bb {
  border-bottom: solid 1px #0f2444;
}
.khl-checkup-table .h2-inbody {
  color: #2a67c2;
  border-bottom: solid 1px #2a67c2;
}
.khl-checkup-table .khl-checkup-ul li {
  color: #666;
  font-size: 13px;
  margin: 5px 0;
}

/*----- sitemap.html -----*/
.kh-sitemap li.sitemap {
  padding: 10px 15px;
  background: white;
  margin: 5px 0;
  border-radius: 6px;
  /* border-bottom:dotted 1px #999; */
}
.kh-sitemap ul.sitemap-sub {
  margin-bottom: 0;
  margin-left: 2em;
  margin-top: 5px;
  line-height: 24px;
}
.kh-sitemap li a {
  color: #3c9e3c;
  padding-right: 1.5em;
  font-size: 14px;
}
.kh-sitemap li a:before {
  content: "\f054";
  font-family: "FontAwesome";
  color: #ccc;
  padding-right: 5px;
  font-size: 12px;
}

/*------- Privacy Policy --------*/
.khl-privacy h3 {
  font-size: 20px;
  font-weight: bold;
  color: #3c9e3c;
}
.khl-privacy h4 {
  font-size: 16px;
  font-weight: bold;
  color: white;
  background: #3c9e3c;
  padding: 8px;
}

.list-privacy-ul-wrap {
  margin-left: 0;
}
.list-privacy-ul-wrap ul {
  padding-left: 0;
  margin-left: 1.4em;
  margin-bottom: 30px;
  padding-top: 3px;
}
.list-privacy-ul-wrap ul li {
  list-style: none;
  position: relative;
  line-height: 1.2em;
  padding-bottom: 8px;
  padding-top: 7px;
  font-size: 13px;
  color: #666;
  border-bottom: solid 1px #ccc;
}
.list-privacy-ul-wrap ul li:before {
  position: absolute;
  left: -1.4em;
  font-family: "FontAwesome";
  content: "\f0c8";
  color: #3c9e3c;
}

.list-privacy-ul-wrap ul > li > ul.privacy-sub {
  margin-bottom: 0;
}
.list-privacy-ul-wrap ul > li > ul.privacy-sub li:last-child {
  border-bottom: none;
}

.khl-privacy-ol {
  margin-left: 0;
}
.khl-privacy-ol li {
  font-size: 13px;
  color: #666;
  margin: 7px 0;
}

/*------ contact.html --------*/
.kh-contact-text {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .kh-contact-text {
    text-align: left;
  }
}

/*=======================
OVERLAY NAVIGATION
=========================*/
/* The Overlay (background) */
.overlay {
  /* Height & width depends on how you want to reveal the overlay (see JS below) */
  height: 0;
  width: 100%;
  position: fixed; /* Stay in place */
  z-index: 999; /* Sit on top */
  left: 0;
  top: 0;
  background-color: #333; /* Black fallback color */
  overflow-x: hidden; /* Disable horizontal scroll */
  transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

/* Position the content inside the overlay */
.overlay-content {
  position: relative;
  top: 0%; /* 25% from the top */
  width: 100%; /* 100% width */
  text-align: left; /* Centered text/links */
  margin-top: 0; /* 30px top margin to avoid conflict with the close button on smaller screens */
}

/* The navigation links inside the overlay */
.overlay ul li a {
  padding: 10px 0;
  text-decoration: none;
  line-height: 1em;
  font-size: 16px;
  color: #ccc;
  border-bottom: solid 1px #999;
  display: block; /* Display block instead of inline */
  transition: 0.3s; /* Transition effects on hover (color) */
}

.overlay ul li:last-child a {
  border-bottom: none;
}

span.nav-en {
  font-size: 11px;
  color: #777;
}

/* When you mouse over the navigation links, change their color */
.overlay a:hover, .overlay a:focus {
  color: #fff;
}

/* Position the close button (top right corner) */
.closebtn-wrap {
  position: relative;
  height: 60px;
  line-height: 60px;
}

.overlay .closebtn {
  position: absolute;
  top: 0px;
  right: 0px;
  font-size: 60px;
  color: #ccc;
  text-align: right;
}

/*
@media screen and (max-height: 740px) {
    .overlay ul li a {font-size: 14px;}
    .overlay .closebtn {font-size: 40px;}
} 
*/
/* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
/*
@media screen and (max-height: 740px) {
    .overlay a {font-size: 16px; padding:10px;}
    .overlay .closebtn {
        font-size: 40px;
        top: 20px;
        padding:0;
        right: 25px;
    }
} 
*/
/*---------------------------------*/
/*
.subcat >ul > li > a{
  animation-duration: .5s;
  animation-timing-function: ease-in-out;
  //animation-delay: 1s;
  animation-name: kh-spread;
  transform-origin:top left;
}



@keyframes kh-spread { 
  from  {transform: scaleY(0); opacity: 0;} 
  to {transform: scaleY(1); opacity: 1;} 
} 
*/
/*----- COMMON FOR STEP ------*/
.kh-dl-green dt {
  float: left;
}
.kh-dl-green dt {
  color: #3c9e3c;
  width: 9em;
  clear: left;
}
.kh-dl-green dt > p.mat-tit {
  width: 9em;
  text-align: center;
  padding: 3px 0;
  margin-bottom: 5px;
}
.kh-dl-green dd {
  color: #666;
  margin-left: 10em;
  margin-bottom: 5px;
}

.kh-checkup-for {
  margin-bottom: 5px;
}

.kh-step {
  border-style: solid;
  border-width: 3px;
  border-radius: 6px;
  padding: 8px;
  background: #fffce5;
  position: relative;
}
.kh-step:after {
  content: "\f063";
  font-family: "FontAwesome";
  display: block;
  text-align: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
  font-size: 16px;
}

.kh-step-blue {
  border-color: #2a67c2;
  margin-bottom: 20px;
}
.kh-step-blue:after {
  color: #2a67c2;
}
.kh-step-blue h5 {
  color: #2a67c2;
}

.kh-step-green {
  border-color: #3c9e3c;
  margin-bottom: 20px;
}
.kh-step-green:after {
  color: #3c9e3c;
}
.kh-step-green h5 {
  color: #3c9e3c;
}

.kh-step-fill {
  margin-bottom: 20px;
  color: white;
  padding: 10px;
}
.kh-step-fill h5, .kh-step-fill p {
  color: white;
}
.kh-step-fill:after {
  content: "\f063";
  font-family: "FontAwesome";
  display: block;
  text-align: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
}

.kh-step-fill-green {
  border-color: #3c9e3c;
  margin-bottom: 20px;
  background: #3c9e3c;
}
.kh-step-fill-green h5, .kh-step-fill-green p {
  color: white;
}
.kh-step-fill-green:after {
  content: "";
}

.kh-step-fill-blue {
  background: #2a67c2;
}
.kh-step-fill-blue:after {
  content: none;
}

.ggmap {
  margin: 0 auto;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border: solid 1px #ccc;
}

.ggmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box !important;
  border: solid 10px white !important;
}

.mb10 {
  margin-bottom: 10px;
}

.font16 {
  font-size: 16px;
}

.font18 {
  font-size: 18px;
}

.font24 {
  font-size: 24px;
}

.text-normal {
  font-weight: normal;
}

.text-bold {
  font-weight: bold;
}

.text-blue {
  color: #2a67c2;
}

.text-blue-deep {
  color: #25569f;
}

.text-green {
  color: #3c9e3c;
}

.text-green-deep {
  color: #1b6a1b;
}

.border-bottom {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

.border-green {
  border-color: #3c9e3c;
}

.border-blue {
  border-color: #2a67c2;
}

.lh12 {
  line-height: 1.2em;
}

.table-solt th, .table-solt td {
  padding: 5px 0;
  vertical-align: top;
}
.table-solt th {
  width: 5em;
}
/*# sourceMappingURL=main.css.map */

/*当番医師追加 20240619 */
.duty-doc {
  color: #ff0000 !important;
  font-size: 0.8rem;
}
.sat-box{
  padding: 0px !important;
}
.sat-box i {
  margin-top: 10.5px;
}

/* 求人情報 - 福利厚生レイアウト修正 2025.10.20 */
:root {
--space-unit: 8px; /*Default gap unit*/
}

.kh-fukuri-grid{
	display: grid;
	grid-template-columns : repeat(auto-fill, minmax(min(100%, 280px), 1fr));
	gap: calc(var(--space-unit) * 4);
}

.kh-fukuri{
	display: flex;
	gap: clamp(0.5rem, 0.143rem + 1.79vw, 1rem);
	margin:0;
}

.kh-fukuri__text,.kh-fukuri__img{
	width: 50%;
	flex-grow: 1;
}

.kh-fukuri__text{
	color: white;
	h4{
		margin:0;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		padding-bottom: calc(var(--space-unit) * 2);
		margin-bottom: calc(var(--space-unit) * 2);
		font-size:16px;
	}
	p{
		font-size:13px;
		line-height: 1.7em;
	}

	.kh-fukuri:nth-child(even){
			flex-direction: row-reverse;
	}
	@media screen and (min-width:568px) {
		.kh-fukuri,.kh-fukuri:nth-child(even){
        flex-direction: row;
		}
	}
}    
