@charset "utf-8";
/* ----------------------------------------------- header(※secondのみ) */
header {
  padding: 20px 120px 0px 20px;
}
/* -------------------------------------------------- global_nav(※secondのみ) */
/*toggleクリックでクラス付与*/
#global_nav .toggle {
  top: 17px;
}
/* -------------------------------------------------- nav（※secondのみ） */
nav {
  box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.1);
}
/* ----------------------------------------------- タイトル */
.second_title {
  width: 100%;
  margin-top: -1px;
  padding: 50px 0 70px 0;
  background-color: rgba(10, 70, 167, 0.09);
  text-align: center;
}
.second_title ul.breadcrumb { /*カテゴリトップ以外*/
  margin: 0 auto;
  max-width: 1300px;
  width: 90%;
  text-align: left;
}
ul.breadcrumb li {
  display: inline-block;
  font-size: 1.3rem;
  padding-right: 10px;
}
ul.breadcrumb li a, ul.breadcrumb li span {
  position: relative;
  padding-right: 15px;
}
ul.breadcrumb li a::before, ul.breadcrumb li span::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 1px solid #222;
  border-right: 1px solid #222;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
ul.breadcrumb li a:link, ul.breadcrumb li a:active, ul.breadcrumb li a:visited {
  color: #222;
  text-decoration: none;
}
.second_title p, .second_title h1 {
  position: relative;
  margin: 0 auto;
  max-width: 1300px;
  width: 90%;
  margin-top: 5px;
  padding: 0 0 0 30px;
  font-size: 4.0rem;
  text-align: left;
  font-family: "GenJyuuGothic-Medium";
}
.second_title p::before, .second_title h1::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 8px;
  height: 20px;
  border-radius: 10px;
  background-color: #0240ab;
}
#about p::before, #about h1::before { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu p::before, #shinryoubu h1::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#general p::before, #general h1::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical p::before, #medical h1::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit p::before, #recruit h1::before { /*採用・研修*/
  background-color: #0192be;
}
/* ----------------------------------------------- conteiner */
#conteiner {
  display: -webkit-flex;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-start;
  margin: -40px auto 0 auto;
  padding-bottom: 50px;
  max-width: 1300px;
  width: 90%;
}
/* ----------------------------------------------- conteiner > content */
#conteiner .content {
  flex: 1;
  margin: 90px 0 150px 0;
  width: calc(100% - 340px);
  max-width: 1030px;/*960px?*/
}
#conteiner .content.single {/*サイドメニューなしver*/
  width: calc(100%);
  max-width: 100%;
}
/**/
#conteiner .content h1 {
  position: relative;
  margin: 5px 0;
  padding: 40px 0 40px 0;
  font-size: 3.5rem;
  line-height: 140%;
  color: #0240ab;
}
#conteiner .content h1:first-child { /*一番上のh2のみ*/
  margin-top: 0;
}
#about #conteiner .content h1 { /*当院について*/
  color: #f5c300;
}
#shinryoubu #conteiner .content h1 { /*診療部のご案内*/
  color: #ff5973;
}
#general #conteiner .content h1 { /*一般の方へ*/
  color: #45ae6c;
}
#medical #conteiner .content h1 { /*医療関係者の方へ*/
  color: #bb93e9;
}
#recruit #conteiner .content h1 { /*採用・研修*/
  color: #0192be;
}
#conteiner .content h1::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-radius: 5px;
  background-color: #E6ECF6;
}
#conteiner .content h1::after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 180px;
  height: 5px;
  border-radius: 5px;
  background-color: #0240ab;
}
#about #conteiner .content h1::after { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu #conteiner .content h1::after { /*診療部のご案内*/
  background-color: #ff5973;
}
#general #conteiner .content h1::after { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical #conteiner .content h1::after { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit #conteiner .content h1::after { /*採用・研修*/
  background-color: #0192be;
}
/**/
#conteiner .content h2 {
  position: relative;
  margin: 80px 0 0 0;
  padding: 30px 0 10px 0;
  font-size: 2.8rem;
  line-height: 140%;
  color: #0240ab;
  clear: both;
}
#conteiner .content h1 + h2 { /* h1とh2が隣接している場合 */
  margin-top: 20px;
}
#conteiner .content h2:first-child { /*一番上のh2のみ*/
  margin-top: 0;
}
#about #conteiner .content h2,
#about #conteiner .content h2 sub { /*当院について*/
  color: #f5c300;
}
#shinryoubu #conteiner .content h2,
#shinryoubu #conteiner .content h2 sub { /*診療部のご案内*/
  color: #ff5973;
}
#general #conteiner .content h2,
#general #conteiner .content h2 sub { /*一般の方へ*/
  color: #45ae6c;
}
#medical #conteiner .content h2,
#medical #conteiner .content h2 sub { /*医療関係者の方へ*/
  color: #bb93e9;
}
#recruit #conteiner .content h2,
#recruit #conteiner .content h2 sub { /*採用・研修*/
  color: #0192be;
}
#conteiner .content h2::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-radius: 5px;
  background-color: #E6ECF6;
}
#conteiner .content h2::after {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 50px;
  height: 5px;
  border-radius: 5px;
  background-color: #0240ab;
}
#about #conteiner .content h2::after { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu #conteiner .content h2::after { /*診療部のご案内*/
  background-color: #ff5973;
}
#general #conteiner .content h2::after { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical #conteiner .content h2::after { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit #conteiner .content h2::after { /*採用・研修*/
  background-color: #0192be;
}
/**/
#conteiner .content h3 {
  position: relative;
  margin: 60px 0 30px 0;
  padding: 0 0 0 25px;
  font-size: 2.7rem;
  line-height: 130%;
  clear: both;
}
#conteiner .content h2 + h3 { /* h2とh3が隣接している場合 */
  margin-top: 30px;
}
#conteiner .content h3::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 8px;
  height: 80%;
  border-radius: 10px;
  background-color: #0240ab;
}
#about #conteiner .content h3::before { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu #conteiner .content h3::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#general #conteiner .content h3::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical #conteiner .content h3::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit #conteiner .content h3::before { /*採用・研修*/
  background-color: #0192be;
}
/**/
#conteiner .content h4 {
  position: relative;
  margin: 40px 0 10px 0;
  padding: 0 0 10px 0;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 140%;
  color: #0240ab;
  clear: both;
}
#conteiner .content h4::before {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 99%;
  height: 2px;
  border-radius: 5px;
  background-color: #E6ECF6;
}
#conteiner .content h3 + h4 { /* h3とh4が隣接している場合 */
  margin-top: 20px;
}
#about #conteiner .content h4 { /*当院について*/
  color: #f5c300;
}
#shinryoubu #conteiner .content h4 { /*診療部のご案内*/
  color: #ff5973;
}
#general #conteiner .content h4 { /*一般の方へ*/
  color: #45ae6c;
}
#medical #conteiner .content h4 { /*医療関係者の方へ*/
  color: #bb93e9;
}
#recruit #conteiner .content h4 { /*採用・研修*/
  color: #0192be;
}
/**/
#conteiner .content h5 {
  position: relative;
  margin: 25px 0 10px 0;
  padding: 0 0 0 25px;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 140%;
  color: #333;
  clear: both;
}
#conteiner .content h5::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 10px;
  height: 5px;
  border-radius: 5px;
  background-color: #0240ab;
}
#about #conteiner .content h5::after { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu #conteiner .content h5::after { /*診療部のご案内*/
  background-color: #ff5973;
}
#general #conteiner .content h5::after { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical #conteiner .content h5::after { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit #conteiner .content h5::after { /*採用・研修*/
  background-color: #0192be;
}
#conteiner .content h4 + h5 { /* h4とh5が隣接している場合 */
  margin-top: 15px;
}
#conteiner .content table h5 {
  margin: 4px 0;
}
/**/
#conteiner .content h6 {
  margin: 10px 0;
  padding: 0;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 140%;
  clear: both;
}
#conteiner .content table h6 {
  margin: 4px 0;
}
/**/
#conteiner .content p {
  margin: 5px 0 15px 0;
}
/**/
#conteiner .content ul, #conteiner .content ol {
  margin: 20px 0 20px 20px;
  padding: 0;
}
#conteiner .content ul {
  list-style-type: circle;
}
#conteiner .content ol {
  list-style-type: decimal;
}
/*list*/
#conteiner .content ul.list li {
  position: relative;
  list-style: none;
  padding-left: 5px;
}
#conteiner .content ul.list li::before {
  position: absolute;
  content: '';
  top: 11px;
  left: -15px;
  width: 7px;
  height: 7px;
  border-radius: 10px;
  background-color: #0240ab;
}
#about #conteiner .content ul.list li::before { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu #conteiner .content ul.list li::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#general #conteiner .content ul.list li::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical #conteiner .content ul.list li::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit #conteiner .content ul.list li::before { /*採用・研修*/
  background-color: #0192be;
}
/*link_list + anchor_list*/
#conteiner .content ul.link_list, #conteiner .content ol.link_list, #conteiner .content ul.anchor_list, #conteiner .content ol.anchor_list {
  margin: 15px 0 0 0;
  padding: 20px 30px 30px 30px;
  background-color: #e6ecf6;
  border-radius: 8px;
}
#conteiner .content ul.link_list, #conteiner .content ul.anchor_list {
  list-style: none;
}
#conteiner .content ol.link_list, #conteiner .content ol.anchor_list {
  list-style: decimal;
  list-style-position: inside;
}
#conteiner .content ul.link_list li, #conteiner .content ol.link_list li, #conteiner .content ul.anchor_list li, #conteiner .content ol.anchor_list li {
  position: relative;
  margin: 0;
  padding: 10px 10px 10px 25px;
  border-bottom: 1px dotted #ccc;
}
#conteiner .content ul.link_list li::after, #conteiner .content ol.link_list li::after, #conteiner .content ul.anchor_list li::after, #conteiner .content ol.anchor_list li::after {
  position: absolute;
  content: '';
  left: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 5px;
  height: 5px;
  border-top: 1px solid #013fa4;
  border-right: 1px solid #013fa4;
}
#conteiner .content ul.link_list li::after, #conteiner .content ol.link_list li::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#conteiner .content ul.anchor_list li::after, #conteiner .content ol.anchor_list li::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
#conteiner .content ul.link_list li a:link, #conteiner .content ol.link_list li a:link, #conteiner .content ul.anchor_list li a:link, #conteiner .content ol.anchor_list li a:link {
  color: #013fa4;
  text-decoration: none;
}
#conteiner .content ul.link_list li a:hover, #conteiner .content ol.link_list li a:hover, #conteiner .content ul.anchor_list li a:hover, #conteiner .content ol.anchor_list li a:hover {
  color: #013fa4;
}
/*table*/
#conteiner .content table {
  width: auto !important;
  height: auto !important;
  margin: 15px 0;
  border-collapse: collapse;
}
#conteiner .content table.w100 { /*横幅100%*/
  width: 100% !important;
}
#conteiner .content table th,
#conteiner .content table td {
  width: auto !important;
  height: auto !important;
  padding: 5px;
}
#conteiner .content table th {
  text-align: center;
}
#conteiner .content table.border th,
#conteiner .content table.border td { /*ボーダー有*/
  border: 1px solid #999;
  padding: 7px 15px;
  vertical-align: middle;
}
#conteiner .content table.border th {
  background-color: #e6e6e6;
}
#conteiner .content table.narrow th, 
#conteiner .content table.narrow td { /*余白狭い*/
  padding: 3px 8px;
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle;
}
#conteiner .content table.narrow.left th,
#conteiner .content table.narrow.left td { /*余白狭い（左揃え）*/
  text-align: left;
  vertical-align: middle;
}
/*table day*/
#conteiner .content table.day td {
  text-align: left;
  vertical-align: middle !important;
  padding-right: 20px;
}
#conteiner .content table.day td h3, #conteiner .content table.day td h4, #conteiner .content table.day td h5, #conteiner .content table.day td h6 {
  margin: 0;
}
/*table class*/
#conteiner .content table.class {
  width: 100% !important;
}
#conteiner .content table.class th, #conteiner .content table.class td {
  border: 1px solid #999;
  padding: 10px 20px;
}
#conteiner .content table.class th {
  width: 180px !important;
  background-color: #e6e6e6;
}
/* tablescroll */
#conteiner .content .tablescroll {}
#conteiner .content .tablescroll .sp {
  display: none;
}
/* tablescroll_pc(PCでもスクロールバーが出る) */
.tablescroll_pc {
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
/*video*/
#conteiner .content video {
  width: 100%; /* 動画をレスポンシブ化 */
  max-width: 700px; /* 動画の最大幅 */
  height: auto;
}
/*box*/
#conteiner .content .box {
  margin: 35px 0;
  padding: 25px 40px;
  background-color: #f2f2f2;
  border-radius: 10px;
}
#conteiner .content .box h3, #conteiner .content .box h4 {
  margin-top: 20px;
}
/*interview box*/
#conteiner .content .interview_box {
  margin: 35px 0;
  padding: 15px 20px;
  border: 3px solid #e8e8e8;
  border-radius: 10px;
}
#conteiner .content .interview_box table td {
  vertical-align: top;
}
#conteiner .content .interview_box table td.face {
  width: 180px !important;
  text-align: center;
}
/*link*/
.text_link {
  position: relative;
  padding-left: 15px;
}
.text_link::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 7px;
  height: 7px;
  background-color: transparent !important;
  border-top: 1px solid #013FA4;
  border-right: 1px solid #013FA4;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.text_link:hover::before {
  opacity: 0.5;
}
.link_btn {
  padding: 15px 0;
}
.link_btn a {
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding: 12px 30px 12px 50px;
  color: #fff;
  background-color: #013fa4;
  border: 2px solid #fff;
  border-radius: 40px;
  text-decoration: none;
  vertical-align: middle;
}
.link_btn a:hover {
  color: #013fa4;
  border: 2px solid #668bc8;
  background-color: #e5ebf5;
}
.link_btn a::before {
  position: absolute;
  content: '';
  left: 30px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.link_btn a:hover::before {
  left: 35px;
  border-color: #013fa4;
}
.link_btn a img {
  vertical-align: middle;
}
/*youtube*/
.youtube { /*動画をレスポンシブ*/
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/*googlemap*/
.gmap {
  position: relative;
  width: 100%;
  /*  padding-top: 56.25%;*/
  margin: 10px 0;
  padding-bottom: 400px;
}
.gmap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/* ----------------------------------------------- conteiner > content > menu_list */
#conteiner .menu_list {}
#conteiner .menu_list ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 15px 0 50px 0;
  list-style: none;
}
#conteiner .menu_list ul li {
  width: 47%;
  margin: 8px;
  border: 1px solid #d6d6d6;
  border-radius: 10px;
  box-shadow: 0 0 12px -7px rgba(0, 0, 0, 0.6);
}
#conteiner .menu_list li a {
  position: relative;
  display: block;
  padding: 15px 15px 15px 50px;
}
#conteiner .menu_list li a:link, #conteiner .menu_list li a:active, #conteiner .menu_list li a:visited {
  color: #222;
  text-decoration: none;
}
#conteiner .menu_list li a:hover {
  box-shadow: 0 0 12px -7px rgba(0, 0, 0, 0);
}
#conteiner .menu_list li a::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 20px;
  margin: auto;
  width: 16px;
  height: 16px;
  border-radius: 50px;
}
.about .menu_list li a::before { /*当院について*/
  background-color: #f5c300;
}
.shinryoubu .menu_list li a::before { /*診療部のご案内*/
  background-color: #ff5973;
}
.general .menu_list li a::before { /*一般の方へ*/
  background-color: #45ae6c;
}
.medical .menu_list li a::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
.recruit .menu_list li a::before { /*採用・研修*/
  background-color: #0192be;
}
#conteiner .menu_list li a::after {
  position: absolute;
  z-index: 1;
  content: '';
  top: 0;
  bottom: 0;
  left: 25px;
  margin: auto;
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* ----------------------------------------------- conteiner > content > menu_top */
#conteiner .menu_top {
  margin: 0 0 20px 0;
  padding: 25px;
  border-radius: 5px;
  background-color: #e6ecf6;
}
#conteiner .menu_top ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0;
  padding: 0;
  list-style: none;
}
#conteiner .menu_top ul li {
  display: block;
  width: 33.3%;
  margin: 0;
  padding: 0;
  position: relative;
}
#conteiner .menu_top ul li::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  width: 20px;
  height: 20px;
  border-radius: 30px;
  background-color: #013fa4;
}
#conteiner .menu_top ul li:hover::before {
  background-color: #fff;
}
#conteiner .menu_top ul li::after {
  position: absolute;
  content: '';
  right: 23px;
  top: 45%;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
#conteiner .menu_top ul li:hover::after {
  border-top: 1px solid #013fa4;
  border-right: 1px solid #013fa4;
}
#conteiner .menu_top ul li a {
  position: relative;
  display: block;
  margin: 0 15px;
  padding: 20px 25px 20px 0;
  font-size: 1.5rem;
  line-height: 130%;
  border-bottom: 1px solid #ccc;
}
#conteiner .menu_top ul li a:link, #conteiner .menu_top ul li a:active, #conteiner .menu_top ul li a:visited {
  color: #013fa4;
  text-decoration: none;
}
#conteiner .menu_top p {
  position: relative;
  margin: 10px 15px;
  padding: 0 0 0 15px;
}
#conteiner .menu_top p::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: 70%;
  width: 5px;
  background-color: #013fa4;
  border-radius: 5px;
}
/* ----------------------------------------------- conteiner > content > スタッフ紹介（診療部のご案内） */
#conteiner .content .staff_b {
  position: relative;
  width: 100% !important;
  border: 1px solid #e6e6e6;
  background-image: linear-gradient(0deg, #ffffffb3, #ffffff 53%);
  border-radius: 5px;
  border-collapse: separate;
  box-shadow: 0px 0px 10px -6px rgba(0, 0, 0, 0.3);
}
#conteiner .content .staff_b th {
  width: 190px !important;
  padding: 30px 0;
  text-align: center;
  vertical-align: top !important;
}
#conteiner .content .staff_b table.name {
  position: relative;
  width: 100% !important;
}
#conteiner .content .staff_b table.name::before {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-radius: 5px;
  background-color: #E6ECF6;
}
#conteiner .content .staff_b table.name th {
  position: relative;
  padding: 20px 0 20px 30px;
  font-size: 2.5rem;
  font-weight: bold;
  text-align: left;
}
#conteiner .content .staff_b table.name th::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: #ff5973;
}
#conteiner .content .staff_b table.name td {
  padding: 0;
  font-weight: bold;
  vertical-align: middle
}
#conteiner .content .staff_b td {
  padding: 0 30px 30px 0;
}
#conteiner .content .staff_b dl {}
#conteiner .content .staff_b dt {
  padding: 15px 0 0 0;
  color: #ff5973;
  font-weight: bold;
}
#conteiner .content .staff_b dd {
  padding: 5px 0 15px 0;
  border-bottom: 1px solid #ccc;
}
#conteiner .content .staff_b dd:last-child {
  border: none;
}
/* ----------------------------------------------- conteiner > content > 診療科トップイメージ */
#conteiner .content .shinryoubu_top {
  width: 100% !important;
  border-radius: 5px;
  background-color: rgba(255, 89, 115, 0.5)
}
#conteiner .content .shinryoubu_top td {
  text-align: center;
  padding: 10px;
}
/* ----------------------------------------------- conteiner > content > 診療科別週間予定表table */
#conteiner .content .yotei {
  width: 100% !important;
}
#conteiner .content .yotei th, #conteiner .content .yotei td {
  border: 1px solid #999;
  text-align: center;
  vertical-align: middle;
  font-size: 1.6rem;
}
#conteiner .content .yotei th {
  background-color: rgba(96, 174, 108, 0.2)
}
/* ----------------------------------------------- conteiner > content > 採用情報table（th幅固定） */
#conteiner .content table.recruit {
  width: 100% !important;
  margin-bottom: 20px;
}
#conteiner .content table.recruit th, #conteiner .content table.recruit td {
  border: 1px solid #999;
  padding: 10px 20px;
}
#conteiner .content table.recruit th {
  width: 200px !important;
  background-color: #e6e6e6;
}
/* ----------------------------------------------- conteiner > content > 最新情報 */
.news_list {}
.news_list a {
  position: relative;
  display: block;
  padding: 20px 10px;
  border-bottom: 1px solid #ccc;
}
.news_list a:link, .news_list a:active, .news_list a:visited, .news_list a:hover {
  text-decoration: none;
}
.news_list a:hover {
  background-color: rgba(2, 64, 171, 0.05)
}
.news_list a::before {
  position: absolute;
  content: '';
  right: 25px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 1px solid #83a1d2;
  border-right: 1px solid #83a1d2;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.news_list a:hover::before {
  right: 20px;
  border-top: 1px solid #013fa4;
  border-right: 1px solid #013fa4;
}
.news_list a::after {
  display: none;
}
.news_list dl {
  align-items: center;
}
.news_list dl dt {
  color: #646464;
  font-weight: normal;
  padding-bottom: 10px;
}
.news_list dl dt time {
  padding-right: 10px;
  color: #646464;
  font-size: 1.5rem;
  font-weight: normal;
}
.news_list dd {
  line-height: 120%;
}
/*file icon*/
.news_list a[href$=".pdf"] dd:after,
.news_list a[href$=".doc"] dd:after,
.news_list a[href$=".docx"] dd:after,
.news_list a[href$=".xls"] dd:after,
.news_list a[href$=".xlsx"] dd:after {
  display: inline-block;
  padding: 1px 26px 1px 0;
  background-repeat: no-repeat;
  background-size: 20px auto;
  background-position: 5px center;
  content: ".";
  bottom: 0;
  text-indent: -9999px;
}
.news_list a[href$=".pdf"] dd:after {
  background-image: url(../img/pdf.svg);
}
.news_list a[href$=".doc"] dd:after {
  background-image: url(../img/doc.svg);
}
.news_list a[href$=".docx"] dd:after {
  background-image: url(../img/doc.svg);
}
.news_list a[href$=".xls"] dd:after {
  background-image: url(../img/xls.svg);
}
.news_list a[href$=".xlsx"] dd:after {
  background-image: url(../img/xls.svg);
}
/*pager*/
.pager {
  padding-top: 90px;
  text-align: center;
}
.pager a, .pager span {
  display: inline-block;
  margin: 0 10px;
}
.pager a {
  padding: 10px 20px;
  border: 1px solid #e6e6e6;
  border-radius: 30px;
  box-shadow: 0px 0px 16px -6px rgba(0, 0, 0, 0.2);
}
.pager a:link, .pager a:active, .pager a:visited {
  text-decoration: none;
}
.pager span {
  padding: 10px 20px;
  border: 1px solid #013fa4;
  border-radius: 30px;
  color: #013fa4;
}
/*個別記事の日付*/
.detail {
  margin-bottom: 40px;
  padding-bottom: 20px;
  text-align: right;
  font-size: 1.7rem;
  color: #555;
  border-bottom: 1px solid #e6e6e6;
}
/*カテゴリ*/
.news_list dl span,
.detail span {
  color: #013fa4;
  margin: 0 3px;
  padding: 5px 20px;
  text-align: center;
  font-size: 1.3rem;
  border-radius: 50px;
  background-color: rgba(1, 63, 164, 0.15)
}
.news_list dl span.important,
.detail span.important {
  color: #cc0000;
  background-color: rgba(204,0,0,0.15)
}
/* ----------------------------------------------- conteiner > content > 募集要項 */
.rec_end {
  padding: 15px;
  border-radius: 10px;
  text-align: center;
  font-size: 1.9rem;
  font-weight: bold;
  color: #cc0000;
  background-color: rgba(204, 0, 0, 0.05)
}
/* ----------------------------------------------- conteiner > content > サイトマップ */
#conteiner .content .sitemap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#conteiner .content .sitemap::after {
  display: block;
  content: "";
  width: 30%;
}
#conteiner .content .sitemap .sitemap_box {
  width: 30%;
}
/*h2*/
#conteiner .content .sitemap .about h2 { /*当院について*/
  color: #f5c300;
}
#conteiner .content .sitemap .shinryoubu h2 { /*診療部のご案内*/
  color: #ff5973;
}
#conteiner .content .sitemap .general h2 { /*一般の方へ*/
  color: #45ae6c;
}
#conteiner .content .sitemap .medical h2 { /*医療関係者の方へ*/
  color: #bb93e9;
}
#conteiner .content .sitemap .recruit h2 { /*採用・研修*/
  color: #0192be;
}
#conteiner .content .sitemap .about h2::after { /*当院について*/
  background-color: #f5c300;
}
#conteiner .content .sitemap .shinryoubu h2::after { /*診療部のご案内*/
  background-color: #ff5973;
}
#conteiner .content .sitemap .general h2::after { /*一般の方へ*/
  background-color: #45ae6c;
}
#conteiner .content .sitemap .medical h2::after { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#conteiner .content .sitemap .recruit h2::after { /*採用・研修*/
  background-color: #0192be;
}
/**/
#conteiner .content .sitemap .sitemap_box button {
  pointer-events: none;
}
/**/
#conteiner .content .sitemap .sitemap_box ul {
  margin: 0;
  padding: 20px 20px 80px 0;
  list-style: none;
}
#conteiner .content .sitemap .sitemap_box ul li {
  padding-bottom: 15px;
}
#conteiner .content .sitemap .sitemap_box ul li button {
  position: relative;
  display: block;
  line-height: 140%;
  padding-left: 20px;
}
#conteiner .content .sitemap .sitemap_box ul li button::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border-radius: 10px;
}
#conteiner .content .sitemap .about ul li button::before { /*当院について*/
  background-color: #f5c300;
}
#conteiner .content .sitemap .shinryoubu ul li button::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#conteiner .content .sitemap .general ul li button::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#conteiner .content .sitemap .medical ul li button::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#conteiner .content .sitemap .recruit ul li button::before { /*採用・研修*/
  background-color: #0192be;
}
#conteiner .content .sitemap .sitemap_box ul li button::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 3px;
  margin: auto;
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#conteiner .content .sitemap .sitemap_box ul li ul {
  margin: 0;
  padding: 0 0 0 20px;
}
#conteiner .content .sitemap .sitemap_box ul li ul li {
  padding-bottom: 0;
}
#conteiner .content .sitemap .sitemap_box ul li ul li a {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  font-size: 1.5rem;
}
#conteiner .content .sitemap .sitemap_box ul li ul li a::before {
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 5px;
  height: 5px;
  border-top: 1px solid #013fa4;
  border-right: 1px solid #013fa4;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#conteiner .content .sitemap .about ul li ul li a::before { /*当院について*/
  border-top: 1px solid #f5c300;
  border-right: 1px solid #f5c300;
}
#conteiner .content .sitemap .shinryoubu ul li ul li a::before { /*診療部のご案内*/
  border-top: 1px solid #ff5973;
  border-right: 1px solid #ff5973;
}
#conteiner .content .sitemap .general ul li ul li a::before { /*一般の方へ*/
  border-top: 1px solid #45ae6c;
  border-right: 1px solid #45ae6c;
}
#conteiner .content .sitemap .medical ul li ul li a::before { /*医療関係者の方へ*/
  border-top: 1px solid #bb93e9;
  border-right: 1px solid #bb93e9;
}
#conteiner .content .sitemap .recruit ul li ul li a::before { /*採用・研修*/
  border-top: 1px solid #0192be;
  border-right: 1px solid #0192be;
}
/**/
#conteiner .content .sitemap .sitemap_box a:link, #conteiner .content .sitemap .sitemap_box a:visited, #conteiner .content .sitemap .sitemap_box a:active {
  color: #222;
  text-decoration: none;
}
#conteiner .content .sitemap .sitemap_box a:hover {
  color: #0b5394
}
/* ----------------------------------------------- conteiner > aside */
#conteiner aside {
  order: 1;
  width: 270px;
  min-width: 270px;
  margin-right: 70px;
  padding-bottom: 30px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.1);
}
#conteiner aside .cate_title {
  margin: 15px;
  padding: 20px;
  border-radius: 10px;
  color: #fff;
  font-size: 2.4rem;
  text-align: center;
  background-color: #0240ab;
}
#about aside .cate_title { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu aside .cate_title { /*診療部のご案内*/
  background-color: #ff5973;
}
#general aside .cate_title { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical aside .cate_title { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit aside .cate_title { /*採用・研修*/
  background-color: #0192be;
}
/* ここからアコーディオン用 */
.sidemenu .dropmenu {
  display: none;
}
/* ここからアコーディオン内メニュー */
aside ul.side_menu {
  padding: 0 15px;
}
aside ul.side_menu li {
  border-bottom: 1px dotted #222;
}
aside ul.side_menu button {
  position: relative;
  width: 100%;
  padding: 15px 20px 15px 5px;
  cursor: pointer;
  line-height: 120%;
}
aside ul.side_menu button::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  right: 6px;
  margin: auto;
  width: 7px;
  height: 1px;
  background-color: #222;
}
aside ul.side_menu button::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  right: 6px;
  margin: auto;
  width: 7px;
  height: 1px;
  background-color: #222;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
aside ul.side_menu li.active button::before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  opacity: 0;
  transition: .5s;
}
aside ul.side_menu li.active button::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  transition: .5s;
}
aside ul.side_menu ul {
  overflow: hidden;
  height: 0;
  margin: 0 0 0 5px;
  padding: 0;
  transition: .5s;
}
aside ul.side_menu li.active ul {
  height: auto;
}
aside ul.side_menu li li {
  margin-left: 15px;
  border: none;
  border-top: 1px dotted #333;
  line-height: 120%;
}
aside ul.side_menu li li a {
  position: relative;
  display: block;
  padding: 15px 0 15px 30px;
  line-height: 120%;
}
aside ul.side_menu li li a::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
  width: 10px;
  height: 10px;
  border-radius: 10px;
}
#about aside ul.side_menu li li a::before { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu aside ul.side_menu li li a::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#general aside ul.side_menu li li a::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical aside ul.side_menu li li a::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit aside ul.side_menu li li a::before { /*採用・研修*/
  background-color: #0192be;
}
aside ul.side_menu li li a::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 7px;
  margin: auto;
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
aside ul.side_menu li li a:link, aside ul.side_menu li li a:active, aside ul.side_menu li li a:visited {
  font-size: 1.4rem;
  color: #333;
  text-decoration: none;
}
/*buttonなしver*/
aside ul.side_menu.other li {
  border: none;
  border-bottom: 1px dotted #333;
  line-height: 120%;
}
aside ul.side_menu.other li a {
  position: relative;
  display: block;
  padding: 15px 0 15px 30px;
  line-height: 120%;
}
aside ul.side_menu.other li a::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: #0240ab
}
aside ul.side_menu.other li a::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 7px;
  margin: auto;
  width: 4px;
  height: 4px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
aside ul.side_menu.other li a:link, aside ul.side_menu.other li a:active, aside ul.side_menu.other li a:visited {
  font-size: 1.4rem;
  color: #333;
  text-decoration: none;
}
/*sub*/
aside ul.side_menu li.sub {
  margin-left: 30px;
}
aside ul.side_menu li.sub a::before {
  display: none;
}
#about aside ul.side_menu li li.sub a::after { /*当院について*/
  border-top: 1px solid #f5c300;
  border-right: 1px solid #f5c300;
}
#shinryoubu aside ul.side_menu li li.sub a::after { /*診療部のご案内*/
  border-top: 1px solid #ff5973;
  border-right: 1px solid #ff5973;
}
#general aside ul.side_menu li li.sub a::before { /*一般の方へ*/
  border-top: 1px solid #45ae6c;
  border-right: 1px solid #45ae6c;
}
#medical aside ul.side_menu li li.sub a::before { /*医療関係者の方へ*/
  border-top: 1px solid #bb93e9;
  border-right: 1px solid #bb93e9;
}
#recruit aside ul.side_menu li li.sub a::before { /*採用・研修*/
  border-top: 1px solid #0192be;
  border-right: 1px solid #0192be;
}
/*もどるボタン*/
aside .back {
  padding: 0 0 10px 20px;
}
aside .back a {
  display: block;
  position: relative;
  padding-left: 25px;
  font-weight: bold;
}
aside .back a::before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 15px;
  height: 15px;
  border-radius: 10px;
}
#about aside .back a::before { /*当院について*/
  background-color: #f5c300;
}
#shinryoubu aside .back a::before { /*診療部のご案内*/
  background-color: #ff5973;
}
#general aside .back a::before { /*一般の方へ*/
  background-color: #45ae6c;
}
#medical aside .back a::before { /*医療関係者の方へ*/
  background-color: #bb93e9;
}
#recruit aside .back a::before { /*採用・研修*/
  background-color: #0192be;
}
aside .back a::after {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  left: 6px;
  margin: auto;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
aside .back a:link, aside .back a:active, aside .back a:visited, aside .back a:hover {
  color: #ff5973;
  text-decoration: none;
}
/*--------------------------------------------------251118追加*/
/*バナー（インスタ、医療クラーク室）*/
#conteiner .content .snd_insta_banner {
  width: 100%;
  margin: 10px auto;
  border-radius: 5px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
  position: relative;
  background: linear-gradient(45deg, rgba(229, 61, 93, 1) 0%, rgba(194, 49, 134, 1) 50%, rgba(156, 56, 187, 1) 100%);
}
#conteiner .content .snd_insta_banner a {
  text-align: center;
  margin: 0;
  padding: 20px 0;
  font-size: 1.8rem;
  font-size: 600;
  text-decoration: none;
  display: block;
  color: #fff;
}
#conteiner .content .snd_insta_banner a::after {
  position: absolute;
  content: "";
  width: 28px;
  height: 28px;
  background-image: url("../img/icon_insta.png");
  background-repeat: no-repeat;
}
#conteiner .content .snd_insta_banner:hover {
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}
#conteiner .content .snd_insta_banner a br.sp {
  display: none;
}
@media screen and (max-width: 450px) {
  #conteiner .content .snd_insta_banner a br.sp {
    display: block;
  }
}
/*長い英数字（URLとか）のリンクを改行*/
#conteiner .content table td a, #conteiner .content .link_btn a, #conteiner .content a.text_link {
  word-break: break-all;
}
/*先輩インタビューindex*/
#conteiner .content .interview-link {
  width: 100% !important;
  margin: 20px 0;
  background-color: rgba(63, 173, 208, 0.2);
}
#conteiner .content .interview-link td {
  padding: 20px;
  text-align: left;
}
#conteiner .content .interview-link td.photo {
  width: 130px !important;
  vertical-align: top;
}
#conteiner .content .interview-link td.photo img {
  width: 90px !important;
  height: auto;
}
#conteiner .content .interview-link td .voice {
  background-color: #fff;
  border-radius: 10px;
  color: #31AD95;
  text-align: left;
  margin: 0 10px 20px 0;
  padding: 10px 16px;
}
#conteiner .content .interview-link td span {
  color: #018EB9;
  margin: 0 10px 0 0;
}
/*先輩インタビューsecond*/
#conteiner .content .balloon {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 0;
  width: 100%;
  color: #333;
  background-color: rgba(63, 173, 208, 0.2);
  border-radius: 10px;
  clear: both;
}
#conteiner .content .balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 40px;
  margin-left: -9px;
  border: 9px solid transparent;
  border-top: 9px solid #e0edff;
}
#conteiner .content .balloon p {
  margin: 0;
  padding: 15px 20px;
}
#conteiner .content .balloon p span {
  margin: 0 8px 0 0;
  padding: 0;
  font-size: 1.8rem;
  color: #3FADD0;
}