@charset "UTF-8";
/* Googleフォント */
@import url('https://fonts.googleapis.com/css2?family=Allura&family=M+PLUS+2:wght@400;500;600;700;800&display=swap');

/* ---------------------------------
Common
---------------------------------- */
@media screen and (max-width: 640px) {

  .inner-style,
  .detail h1,
  h3,
  .floormap-area {
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
  }
}

/* ---------------------------------
bread
---------------------------------- */
.bread-area {
  background: #f2f2f2;
  margin: 182px 0 40px;
}
@media screen and (max-width: 1200px) {
	.bread-area {
		margin-top: 110px;
	}
}

.bread-area ul {
  padding-top: .6em;
  padding-bottom: .6em;
}

.bread-area .bread_crumb {
  width: 1200px;
  margin: 0 auto;
}

@media screen and (min-width: 641px) and (max-width: 1279px) {
  .bread-area .bread_crumb {
    width: 100%;
    padding-right: 60px;
    padding-left: 60px;
  }
}

@media screen and (max-width: 640px) {
  .bread-area .bread_crumb {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
  }
}

.bread-area li {
  display: inline-block;
  font-size: 0.84rem;
  position: relative;
}

.bread-area li:not(:last-child) {
  margin-right: 1em;
  padding-right: 1.3em;
}

.bread-area li:not(:last-child):after {
  content: '/';
  position: absolute;
  top: 0;
  right: 0;
}

.bread-area a {
  color: #014ad0;
  transition: all 0.1s ease;
}

.bread-area a:hover {
  color: #222;
}

@media screen and (max-width: 959px) {
  .bread-area {
    margin: 110px 0 40px;
  }
}

@media screen and (max-width: 640px) {
  .bread-area {
    white-space: nowrap;
    margin: 60px 0 0;
    position: relative;
  }

  .bread-area ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    height: 40px;
    overflow-x: scroll;
    padding: 0;
  }

  .bread-area .top {
    margin-left: 15px;
  }

  .bread-area .current {
    padding-right: 15px;
  }

  .bread-area:before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 40px;
    background: -moz-linear-gradient(left, rgba(242, 242, 242, 0), #f2f2f2);
    background: -webkit-linear-gradient(left, rgba(242, 242, 242, 0), #f2f2f2);
    background: linear-gradient(to right, rgba(242, 242, 242, 0), #f2f2f2);
    position: absolute;
    right: 0;
    z-index: 1;
  }
}

/* ---------------------------------
contents-area
---------------------------------- */
.contents-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 60px;
}

@media screen and (min-width: 1280px) and (max-width: 1330px) {
  .contents-area {
    max-width: 1160px;
  }
}

@media screen and (max-width: 1279px) {
  .contents-area {
    max-width: 100%;
    padding: 0 60px 60px;
  }
}

@media screen and (max-width: 899px) {
  .contents-area {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 100%;
  }
}

@media screen and (max-width: 640px) {
  .contents-area {
    padding: 0;
  }
}

@media screen and (min-width: 900px) {
  main {
    flex: 1;
  }
}

@media screen and (max-width: 899px) {
  aside {
    order: 2;
    width: 100%;
  }

  main {
    order: 1;
    width: 100%;
    padding-bottom: 60px;
  }
}

/* ---------------------------------
aside
---------------------------------- */
aside:not(.english) {
  width: 260px;
  margin-right: 60px;

  /* WEB_SKGH-814 表示方法の変更について */
  display: none;
}

aside.english {
  width: 260px;
  margin-right: 60px;
}

aside a {
  display: block;
}

@media screen and (max-width: 1279px) {
  aside {
    margin-right: 40px;
  }
}

/* @media screen and (max-width: 959px) {
  aside {
    width: 220px;
  }
} */
@media screen and (max-width: 899px) {
  aside {
    width: 100%;
    margin: 0 0 40px;
  }
}

@media screen and (max-width: 640px) {
  aside {
    background: #f2f2f2;
    padding: 30px 15px;
    margin: 0;
  }
}

aside .drawer-menu-item {
  background: #395295;
  color: #fff;
  font-size: 1.25rem;
  font-weight: bold;
  text-align: center;
  padding: .8em 0;
}

@media screen and (min-width: 900px) {
  aside .drawer-menu-item {
    pointer-events: none;
  }
}

aside .drawer-dropdown-menu {
  border-bottom: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
}

aside .drawer-dropdown-menu>li:not(:last-child) {
  border-bottom: 1px solid #cccccc;
}

aside .drawer-dropdown-menu>li>a {
  background: #fff;
  padding: 10px 10px 10px 20px;
  text-indent: -10px;
  transition: all 0.2s ease;
}

aside .drawer-dropdown-menu>li>a:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  background-size: 7px 7px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow1.png");
  margin-right: .4em;
  position: relative;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

aside .drawer-dropdown-menu>li>a:hover,
aside .drawer-dropdown-menu>li.current>a {
  background: #f2f2f2;
}

aside .drawer-dropdown-menu>li>a:hover:before,
aside .drawer-dropdown-menu>li.current>a:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  background-size: 7px 7px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow1-red.png");
  margin-right: .4em;
  position: relative;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

aside .drawer-dropdown-menu>li>a:hover {
  padding-left: 23px;
  padding-right: 7px;
}

aside .drawer-dropdown-menu>li.current>a {
  font-weight: bold;
}

aside .drawer-dropdown-menu .children {
  border-top: 1px solid #cccccc;
}

aside .drawer-dropdown-menu .children li:not(:last-child) {
  border-bottom: 1px dotted #ccc;
}

aside .drawer-dropdown-menu .children a {
  background: #f2f2f2;
  padding: 7px 7px 7px 30px;
  text-indent: -20px;
  transition: all 0.2s ease;
}

aside .drawer-dropdown-menu .children a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2.png");
  background-size: 7px 7px;
  width: 7px;
  height: 7px;
  margin-right: .5em;
}

aside .drawer-dropdown-menu .children a:hover:before,
aside .drawer-dropdown-menu .children .current>a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2-red.png");
  background-size: 7px 7px;
  width: 7px;
  height: 7px;
}

aside .drawer-dropdown-menu .children a:hover {
  padding-left: 33px;
  padding-right: 4px;
}

aside .drawer-dropdown-menu .children .current>a {
  font-weight: bold;
}

aside .drawer-dropdown-menu .children .children {
  border: none;
}

aside .drawer-dropdown-menu .children .children li:not(:last-child) {
  border-bottom: none;
}

aside .drawer-dropdown-menu .children .children a {
  font-size: 0.875rem;
  padding: 7px 7px 7px 40px;
}

aside .drawer-dropdown-menu .children .children a:hover {
  padding-left: 43px;
  padding-right: 4px;
}

aside .drawer-dropdown-menu .children .children .current>a {
  font-weight: bold;
}

aside .drawer-dropdown-menu li:not(.current) ul.children {
  display: none;
}

aside .drawer-dropdown-menu .department_type:not(:first-child) {
  margin-top: 3px;
}

aside .drawer-dropdown-menu .department_type a {
  background-color: rgba(18, 137, 192, 0.6);
  color: #fff;
}

aside .drawer-dropdown-menu .department_type a:hover {
  background-color: rgba(18, 137, 192, 0.4);
}

aside .drawer-dropdown-menu .shinryoka_type a {
  background-color: rgba(17, 184, 190, 0.6);
  color: #fff;
  pointer-events: none;
}

aside .drawer-dropdown-menu .shinryoka_type a:hover {
  background-color: rgba(17, 184, 190, 0.4);
}

aside .drawer-dropdown-menu>li.shinryoka_type>a:before {
  display: none;
}

@media screen and (max-width: 899px) {
  aside .drawer-menu-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    cursor: pointer;
    line-height: 1.1em;
    text-align: left;
    padding: 15px;
    position: relative;
  }

  aside .drawer-menu-item:before {
    content: "";
    display: inline-block;
    width: 13px;
    height: 12px;
    background-size: 13px 12px;
    background-repeat: no-repeat;
    background-image: url("../img/icon-menu.png");
    margin-right: .5em;
  }

  aside .drawer-menu-item span {
    flex: 1;
    padding-right: 2em;
  }

  aside .drawer-menu-item:after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-size: 10px 10px;
    background-repeat: no-repeat;
    background-image: url("../img/icon-arrow2-white.png");
    transform: rotate(90deg);
    position: absolute;
    right: 1em;
    transition: all 0.2s ease;
  }

  aside .drawer-menu-item.open:after {
    transform: rotate(-90deg);
  }

  aside .drawer-dropdown-menu {
    display: none;
  }

  aside .drawer-dropdown-menu>li>a {
    padding: 15px 15px 15px 25px;
  }

  aside .drawer-dropdown-menu>li>a:hover {
    padding-left: 28px;
  }

  aside .drawer-dropdown-menu .children li>a {
    padding: 12px 12px 12px 45px;
  }

  aside .drawer-dropdown-menu .children li>a:hover {
    padding-left: 48px;
  }

  aside .drawer-dropdown-menu .children .children a {
    padding: 7px 7px 7px 55px;
  }

  aside .drawer-dropdown-menu .children .children a:hover {
    padding-left: 58px;
  }
}

aside .link-out {
  position: relative;
}

aside .link-out:after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 10px;
  background-size: 12px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-blank.png");
  margin-left: .4em;
  position: absolute;
  right: 10px;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

/* ---------------------------------
main
---------------------------------- */
main p {
  line-height: 1.8em;
  margin-bottom: 1.2em;
}

@media screen and (max-width: 640px) {
  main p {
    line-height: 1.6em;
  }
}

main *+h2 {
  margin-top: 40px;
}

main *:not(h2)+h3,
main *:not(p)+h3 {
  margin-top: 30px;
}

main *:not(h3)+h4,
main *:not(p)+h4 {
  margin-top: 30px;
}

main *:not(h4)+h5,
main *:not(p)+h5 {
  margin-top: 20px;
}

main a {
  color: #014ad0;
}

main a>img {
  transition: all 0.2s ease;
}

main a:hover {
  color: #222;
}

main a:hover img {
  opacity: .6;
}

@media screen and (max-width: 640px) {
  main a {
    line-height: 1.6em;
  }
}

main ul+p,
main ol+p {
  margin-top: 20px;
}

main ul p:last-child,
main ol p:last-child {
  margin-bottom: 0;
}

.detail h1 {
  /* font-family: "FOT-ロダン Pro M", sans-serif; */
  /* font-family: "Shippori Mincho", serif; */
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 2.25rem;
  margin-bottom: 40px;
  padding-bottom: .5em;
  position: relative;
}

.detail h1:before {
  content: "";
  display: inline-block;
  width: 50%;
  height: 3px;
  background: #27356b;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.detail h1:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 3px;
  background: #e8e8e8;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (max-width: 640px) {
  .detail h1 {
    font-size: 1.4rem;
    padding-bottom: .7em;
  }
}

h2:not(.english):not(.h2_faq) {
  background: -moz-linear-gradient(left, #27356b, #1d3a84);
  background: -webkit-linear-gradient(left, #27356b, #1d3a84);
  background: linear-gradient(to right, #27356b, #1d3a84);
  color: #fff;
  font-size: 1.3rem;
  /* font-family: "FOT-ロダン Pro DB", sans-serif; */
  /* font-family: "Shippori Mincho", serif; */
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  margin-bottom: 30px;
  line-height: 1.3em;
  padding: 10px 15px;
}

h2:not(.english) .h2_ruby {
  padding-top: 19px;
}

@media screen and (max-width: 640px) {
  h2:not(.english) {
    position: relative;
  }

  h2:not(.english):before {
    content: '';
    display: inline-block;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #fff;
    border-left: 5px solid transparent;
    line-height: 1.3em;
    position: absolute;
    left: 15px;
    bottom: 0;
  }
}

h3:not(.english) {
  background: #f2f2f2;
  border-left: #27356b solid 6px;
  font-size: 1.13rem;
  line-height: 1em;
  margin-bottom: 30px;
  padding: 13px;
}

h3:not(.english).h3_ruby {
  padding-top: 23px;
}

@media screen and (max-width: 640px) {
  h3:not(.english) {
    line-height: 1.3em;
    margin-bottom: 30px;
  }
}

h4 {
  border-bottom: 2px solid #cccccc;
  font-size: 1.13rem;
  margin-bottom: 30px;
  padding-bottom: 7px;
  padding-left: 1em;
  text-indent: -1em;
}

h4:before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 18px;
  background: #27356b;
  margin-right: .7em;
}

h5 {
  font-size: 1rem;
  margin-bottom: 10px;
  padding-left: 1em;
  text-indent: -1em;
}

h5:before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 18px;
  background: -moz-linear-gradient(top, #27356b 50%, #3ca7ca 50%);
  background: -webkit-linear-gradient(top, #27356b 50%, #3ca7ca 50%);
  background: linear-gradient(to bottom, #27356b 50%, #3ca7ca 50%);
  margin-right: .7em;
}

h6 {
  font-size: 1rem;
  margin-bottom: 10px;
  padding-left: 1em;
  text-indent: -1em;
}

h6:before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 14px;
  background: #3ca7ca;
  margin-right: .7em;
}

/* ---------------------------------
second-index
---------------------------------- */
.h1-area {
  background: #00a5c1;
  height: 240px;
  margin-bottom: 40px;
  position: relative;
  overflow: hidden;
}

.h1-area h1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  color: #fff;
  /* font-family: "FOT-ロダン Pro M", sans-serif; */
  font-family: "Shippori Mincho", serif;
  font-size: 2.25rem;
  height: 100%;
  padding-left: 40px;
  position: relative;
  z-index: 2;
}

.h1-area h1:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  background: url("../img/h1-bg.png") repeat-y;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.h1-area img {
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (max-width: 640px) {
  .h1-area {
    height: auto;
    margin: 0 0 40px;
  }

  .h1-area h1 {
    font-size: 1.4rem;
    min-height: 100px;
    padding: 20px 50px 20px 15px;
  }

  .h1-area h1:after {
    width: 85%;
    background-size: 100%;
  }

  .h1-area img {
    height: 100%;
  }
}

.list-second-index,
.list-department-index {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

.list-second-index li,
.list-department-index li {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
  padding: .5em 1em;
  transition: all 0.2s ease;
  padding: 0;
}

.list-second-index li:hover,
.list-department-index li:hover {
  background: #f7f7f7;
  box-shadow: none;
  color: #222;
}

.list-second-index a,
.list-department-index a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  height: 100%;
  padding: 5px 30px 5px 5px;
  position: relative;
}

.list-second-index a:after,
.list-department-index a:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2-blue.png");
  position: absolute;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  right: 20px;
}

.list-second-index span:not(.img),
.list-department-index span:not(.img) {
  flex: 1;
  margin-left: 15px;
}

.list-second-index span.img,
.list-department-index span.img {
  background: #f2f2f2;
}

.list-second-index a:hover,
.list-department-index a:hover {
  color: #222;
}

.list-second-index a:hover img,
.list-department-index a:hover img {
  opacity: 1;
}

.list-second-index .link-out,
.list-department-index .link-out {
  position: relative;
}

.list-second-index .link-out:after,
.list-department-index .link-out:after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 10px;
  background-size: 12px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-blank.png");
  margin-left: .4em;
  position: absolute;
  right: 20px;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.list-second-index li {
  width: calc((100% - 21px) / 2);
  margin-bottom: 20px;
}

.list-second-index li:nth-child(odd) {
  margin-right: 10px;
}

.list-second-index li:nth-child(even) {
  margin-left: 10px;
}

.list-second-index a {
  min-height: 70px;
}

.list-second-index span.img {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 60px;
  width: 60px;
  overflow: hidden;
}

.list-second-index span.img img {
  height: 60px;
}

.list-department-index li {
  width: calc((100% - 21px) / 3);
  margin-bottom: 10px;
}

.list-department-index li:not(:nth-child(3n)) {
  margin-right: 10px;
}

.list-department-index span.img {
  height: 40px;
  width: 40px;
}

.list-department-index .img:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background: url("../../department/img/icons.png") no-repeat;
  background-size: 120px;
}

.list-department-index .general:before {
  background-position: 0 0;
}

.list-department-index .neurology:before {
  background-position: -40px 0;
}

.list-department-index .diabetes:before {
  background-position: -80px 0;
}

.list-department-index .blood:before {
  background-position: 0 -40px;
}

.list-department-index .respiratory:before {
  background-position: -40px -40px;
}

.list-department-index .pediatrics:before {
  background-position: -80px -40px;
}

.list-department-index .chinese-medicine:before {
  background-position: 0 -80px;
}

.list-department-index .psychiatry:before {
  background-position: -40px -80px;
}

.list-department-index .heart-treatment:before {
  background-position: -80px -80px;
}

.list-department-index .surgery:before {
  background-position: 0 -120px;
}

.list-department-index .mammary:before {
  background-position: -40px -120px;
}

.list-department-index .respiratory-surgery:before {
  background-position: -80px -120px;
}

.list-department-index .hbps:before {
  background-position: 0 -160px;
}

.list-department-index .chest-wall:before {
  background-position: -40px -160px;
}

.list-department-index .cardiovascular:before {
  background-position: -80px -160px;
}

.list-department-index .urology:before {
  background-position: 0 -200px;
}

.list-department-index .rheumatism:before {
  background-position: -40px -200px;
}

.list-department-index .circulatory:before {
  background-position: -80px -200px;
}

.list-department-index .stroke:before {
  background-position: 0 -240px;
}

.list-department-index .neurosurgery:before {
  background-position: -40px -240px;
}

.list-department-index .orthopedics:before {
  background-position: -80px -240px;
}

.list-department-index .birth-center:before {
  background-position: 0 -280px;
}

.list-department-index .plastic-surgery:before {
  background-position: -40px -280px;
}

.list-department-index .ocular:before {
  background-position: -80px -280px;
}

.list-department-index .medical-physicist:before {
  background-position: 0px -875px;
}

.list-department-index .neonatology:before {
  background-position: -40px -875px;
}

.list-department-index .otolaryngology:before {
  background-position: 0 -320px;
}

.list-department-index .dermatology:before {
  background-position: -40px -320px;
}

.list-department-index .ra-comedical:before {
  background-position: -80px -320px;
}

.list-department-index .radiation-diagnosis:before {
  background-position: 0 -360px;
}

.list-department-index .tomo-therapy:before {
  background-position: -40px -360px;
}

.list-department-index .anesthesiology:before {
  background-position: -80px -360px;
}

.list-department-index .er:before {
  background-position: 0 -400px;
}

.list-department-index .reha:before {
  background-position: -40px -400px;
}

.list-department-index .visit:before {
  background-position: -80px -400px;
}

.list-department-index .kidney:before {
  background-position: 0 -440px;
}

.list-department-index .digestive:before {
  background-position: -40px -440px;
}

.list-department-index .sas:before {
  background-position: -80px -440px;
}

.list-department-index .aortic:before {
  background-position: 0 -480px;
}

.list-department-index .shunt-care:before {
  background-position: -40px -480px;
}

.list-department-index .spinal:before {
  background-position: -80px -480px;
}

.list-department-index .trauma-center:before {
  background-position: 0 -520px;
}

.list-department-index .birth:before {
  background-position: -40px -520px;
}

.list-department-index .oncology:before {
  background-position: -80px -520px;
}

.list-department-index .health-care:before {
  background-position: 0 -560px;
}

.list-department-index .ivr:before {
  background-position: -40px -560px;
}

.list-department-index .joint:before {
  background-position: -80px -560px;
}

.list-department-index .nutrition:before {
  background-position: 0 -600px;
}

.list-department-index .region:before {
  background-position: -40px -600px;
}

.list-department-index .trial:before {
  background-position: -80px -600px;
}

.list-department-index .clinical:before {
  background-position: 0 -640px;
}

.list-department-index .inclusion:before {
  background-position: -40px -640px;
}

.list-department-index .foot:before {
  background-position: -80px -640px;
}
.list-department-index .kansen:before {
  background-position: -40px -1076px;
}

.list-department-index .nurse:before {
  background-position: 0 -680px;
}

.list-department-index .pharmacy:before {
  background-position: -40px -680px;
}

.list-department-index .inspection:before {
  background-position: -80px -680px;
}

.list-department-index .me:before {
  background-position: 0 -720px;
}

.list-department-index .clinical-psychology:before {
  background-position: -40px -720px;
}

.list-department-index .genome:before {
  background-position: -80px -720px;
}

.list-department-index .visit-nursing:before {
  background-position: 0 -760px;
}

.list-department-index .houmon-kaigo:before {
  background-position: -40px -800px;
}

.list-department-index .oneday:before {
  background-position: 0 -835px;
}

.list-department-index .head-and-neck:before {
  background-position: -40px -835px;
}

.list-department-index .oral-surgery:before {
  background-position: -80px -835px;
}

.list-department-index .pathology:before {
  background-position: -40px -760px;
}

.list-department-index .organ_transplantation:before {
  background-position: -80px -875px;
}

.list-department-index .heart_center:before {
  background-position: 0px -918px;
}

.list-department-index .infection:before {
  background-position: -40px -920px;
}

.list-department-index .advanced:before {
  background-position: -80px -918px;
}

.list-department-index .radiology:before {
  background-position: 0px -963px;
}

.list-department-index .allergie:before {
  background-position: 0px -800px;
}

.list-department-index .qqc:before {
  background-position: -80px -760px;
}

.list-department-index .general2:before {
  background-position: -80px -800px;
}

.list-department-index .oncology_internal_medicine:before {
  background: url("../../department/img/icons_oncology_internal_medicine.png") no-repeat;
  background-size: cover;
}

.list-department-index .acute-phase:before {
  background-position: -40px -963px;
}

.list-department-index .comprehensive:before {
  background-position: -80px -963px;
}

.list-department-index .sports_medical:before {
  background-position: 0px -1006px;
}

.list-department-index .sportsmedicinecenter:before {
  background-position: -40px -1006px;
}

.list-department-index .gynecology:before {
  background-position: -80px -1006px;
}

.list-department-index .vaccine_travel:before {
  background-position: 0px -1041px;
}

.list-department-index .cough:before {
  background-position: -40px -1041px;
}

.list-department-index .lifestyle_habit:before {
  background-position: -80px -1041px;
}

.list-department-index .medical_checkup:before {
  background-position: 0px -1075px;
}
.list-department-index .medical_genetics:before {
  background-position: -80px -1075px;
}
.list-department-index .intensive-care:before {
  background-position: 0px -1108px;
}
.list-department-index .stroke_center:before {
  background-position: -40px -1108px;
}
.list-department-index .robotic-surgery-center:before {
  background-position: -80px -1108px;
}

.list-department-index .prostate:before {
  background: url("../../department/img/icons_prostate.png") no-repeat !important;
  background-size: cover !important;
}
.list-department-index .respiratory_center:before {
  background: url("../../department/img/icons_respiratory_center.png") no-repeat !important;
  background-size: cover !important;
}
.list-department-index .female-pelvic-sugery-and-reproductive-medicine:before {
  background: url("../../department/img/icons_female-pelvic-sugery-and-reproductive-medicine.png") no-repeat !important;
  background-size: cover !important;
}
.list-department-index .emergency-surgery:before {
  background: url("../../department/img/icon_emergency-surgery.png") no-repeat !important;
  background-size: cover !important;
}



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

  .list-second-index,
  .list-department-index {
    display: block;
    margin: 0 15px;
  }

  .list-second-index li,
  .list-second-index li:nth-child(odd),
  .list-second-index li:nth-child(even),
  .list-department-index li,
  .list-department-index li:nth-child(odd),
  .list-department-index li:nth-child(even) {
    width: 100%;
    margin: 0 0 15px 0;
  }

  .list-second-index img,
  .list-department-index img {
    height: 60px;
  }
}

/* ---------------------------------
detail
---------------------------------- */
.detail img {
  max-width: 100%;
}

.detail:not(.advanced) img {
  width: auto;
}

@media screen and (max-width: 640px) {
  .detail {
    margin-top: 20px;
  }
}

.detail a[href^="tel:"] {
  display: inline-block;
}

.child-area {
  background: #f2f2f2;
  border-radius: 3px;
  margin-bottom: 20px;
  padding: 15px 15px 10px;
  position: relative;
}

.child-area:before {
  content: '';
  border: 15px solid transparent;
  border-bottom: 15px solid #f2f2f2;
  margin-left: -15px;
  position: absolute;
  top: -30px;
  left: 50%;
}

.child-area .sp-toggle {
  display: none;
}

.child-area a {
  color: #222;
  display: inline-block;
  position: relative;
  left: 0;
  transition: all 0.2s ease;
}

.child-area a:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  background-size: 7px 7px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow1.png");
  margin-right: .4em;
  position: relative;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  margin-right: .4em;
}

.child-area a:hover {
  left: 3px;
}

.child-area a:hover:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  background-size: 7px 7px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow1-red.png");
  margin-right: .4em;
  position: relative;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

@media screen and (min-width: 641px) {
  .child-area ul {
    zoom: 1;
    display: block !important;
  }

  .child-area ul:after {
    display: table;
    clear: both;
    content: "";
  }

  .child-area ul:before {
    display: table;
    content: "";
  }

  .child-area li {
    float: left;
    margin-right: 20px;
    margin-bottom: .5em;
  }

  .child-area a {
    border-bottom: 1px dashed #666666;
  }

  .child-area a:hover {
    border-bottom: 1px dashed #f2f2f2;
  }

  .sp-toggle__open,
  .sp-toggle__close {
    display: none;
  }
}

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

  .sp-toggle__open,
  .sp-toggle__close {
    display: inline-block;
    white-space: nowrap;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    flex-shrink: 10000;
    margin-right: 10px;
  }

  .sp-toggle__open {
    display: none;
  }

  .sp-toggle.open .sp-toggle__close {
    display: none;
  }

  .sp-toggle.open .sp-toggle__open {
    display: inline-block;
  }

  .sp-toggle__title {
    width: 100%;
  }

  .child-area {
    padding: 0px;
  }

  .child-area:before {
    border-bottom: 15px solid #f9aa28;
  }

  .child-area .sp-toggle {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    justify-content: space-between;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    background: #f9aa28;
    cursor: pointer;
    padding: 15px 20px;
  }

  .child-area .sp-toggle:after {
    content: "";
    display: inline-block;
    max-width: 10px;
    min-width: 10px;
    min-height: 10px;
    max-height: 10px;
    background-size: 10px 10px;
    background-repeat: no-repeat;
    background-image: url("../img/icon-arrow2-white.png");
    transform: rotate(-90deg);
    transition: all 0.2s ease;
    margin-left: auto;
  }

  .child-area .sp-toggle.open:after {
    transform: rotate(90deg);
  }

  .child-area ul {
    padding: 10px 20px 20px;
  }

  .child-area li {
    border-bottom: 1px dashed #666666;
  }

  .child-area li:not(:last-child) {
    margin-bottom: .7em;
  }

  .child-area a {
    display: block;
    text-indent: -.8em;
    padding-left: .8em;
    padding-bottom: .3em;
  }
}

.ank-area,
.ank-area-2 {
  margin-bottom: 30px;
}

.ank-area ul,
.ank-area-2 ul {
  zoom: 1;
}

.ank-area ul:after,
.ank-area-2 ul:after {
  display: table;
  clear: both;
  content: "";
}

.ank-area ul:before,
.ank-area-2 ul:before {
  display: table;
  content: "";
}

.ank-area li,
.ank-area-2 li {
  float: left;
  margin-right: 10px;
}

.ank-area a,
.ank-area-2 a {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
  padding: .5em 1em;
  transition: all 0.2s ease;
}

.ank-area a:hover,
.ank-area-2 a:hover {
  background: #f7f7f7;
  box-shadow: none;
  color: #222;
}

.ank-area a:after,
.ank-area-2 a:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 13px;
  background-size: 8px 13px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow3-blue.png");
  margin-left: .7em;
  position: relative;
  top: 0;
  transition: all 0.2s ease;
}

.ank-area a:hover:after,
.ank-area-2 a:hover:after {
  top: .2em;
}

.ank-area a:before,
.ank-area-2 a:before {
  display: none !important;
}

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

  .ank-area li,
  .ank-area-2 li {
    margin-bottom: 10px;
  }
}

.ank-area a.icon-blank {
  display: inline-block;
}

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

  .ank-area,
  .ank-area-2 {
    max-width: 100%;
    background-color: #e0e0e0;
  }

  .ank-area ul,
  .ank-area-2 ul {
    border: 1px solid #cccccc;
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
    border-radius: 3px;
  }

  .ank-area li,
  .ank-area-2 li {
    float: none;
    width: 100%;
    margin: 0;
  }

  .ank-area li:not(:last-child),
  .ank-area-2 li:not(:last-child) {
    border-bottom: 1px solid #cccccc;
  }

  .ank-area a,
  .ank-area-2 a {
    border: none;
    border-radius: 0;
    box-shadow: none;
    display: block;
  }

  .ank-area a.icon-blank {
    display: block;
  }
}

@media screen and (max-width: 640px) {
  .ank-area-2 ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .ank-area-2 li {
    width: 50%;
  }

  .ank-area-2 li:nth-child(odd) {
    border-right: 1px solid #cccccc;
  }

  .ank-area-2 li:nth-last-child(2) {
    border-bottom: none;
  }

  .ank-area-2 a {
    border-radius: 0;
    height: 100%;
  }
}

.accordion,
.accordion-2,
.accordion-3  {
  cursor: pointer;
  position: relative;
}

.accordion:after,
.accordion-2:after,
.accordion-3:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2.png");
  transform: rotate(90deg);
  position: absolute;
  right: 0;
  top: .3em;
  transition: all 0.2s ease;
}

.accordion.open:after,
.open.accordion-2:after,
.open.accordion-3:after {
  transform: rotate(-90deg);
}

.accordion+*,
.accordion-2+*,
.accordion-3+* {
  display: none;
}

.accordion-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.accordion-2:after {
  background-color: #85c8de;
  background-image: url("../img/icon-arrow2-white.png");
  background-position: center;
  border-radius: 14px;
  width: 28px;
  height: 28px;
  top: auto;
}

.accordion-2.open:after,
.accordion-2:hover:after {
  background-color: #36a3c7;
}

h3.accordion-2:after {
  margin-right: 10px;
}

.accordion-3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  background: #e0f0ff !important;
  border: 2px solid #478CC6 !important;
  color: #1b6aaf !important;
  font-weight: bold;
}

.accordion-3:after {
  background-color: #478cc6;
  background-image: url("../img/icon-arrow2-white.png");
  background-position: center;
  border-radius: 14px;
  width: 28px;
  height: 28px;
  right: 21px;
  top: auto;
}

.accordion-3.open:after,
.accordion-3:hover:after {
  background-color: #36a3c7;
}

h3.accordion-3:after {
  margin-right: 10px;
}


.accordion-toggle:not(#js-accordion-toggle-button) {
  display: none;
}


@media screen and (max-width: 640px) {
  .accordion-toggle:not(#js-accordion-toggle-button) {
    display: block;
  }
}

.accordion-toggle,
.accordion-toggle-style {
  display: block;
  cursor: pointer;
  color: #014ad0;
  text-align: right;
  padding-right: 1.3em;
  position: relative;
}

.accordion-toggle::after,
.accordion-toggle-style::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2.png");
  transform: rotate(90deg);
  position: absolute;
  right: 0;
  top: .3em;
}

.accordion-toggle.close,
.accordion-toggle-style.close,
  {
  margin-top: 20px;
}

.accordion-toggle.close:after,
.accordion-toggle-style.close:after {
  transform: rotate(-90deg);
}


.relation-area {
  border: 1px solid #dfdfdf;
  border-radius: 3px;
  padding: 20px;
  position: relative;
}

.relation-area:before {
  content: "";
  display: inline-block;
  width: auto;
  height: 3px;
  background: #85c8de;
  position: absolute;
  top: -1px;
  right: 20px;
  left: 20px;
}

.relation-area .title {
  font-weight: bold;
  margin-bottom: 15px;
}

.relation-area .title:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background-size: 12px 12px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-clip.png");
  margin-right: .4em;
}

.relation-area li:not(:last-child) {
  margin-bottom: .6em;
}

.relation-area a {
  display: inline;
}

.relation-area a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow4.png");
  margin-right: .4em;
  margin-left: .4em;
}

.relation-area a:hover {
  color: #222;
}

@media screen and (max-width: 640px) {
  .relation-area {
    max-width: 100%;
    margin: 0 15px 30px;
  }
}

.box-news h2,
.box-news-2 h2 {
  background: none;
  color: #27356b;
  margin: 0;
  padding: 0 25px 0 0;
}

.box-news p.blue {
  background: none;
  color: #27356b;
  margin: 0;
  padding: 0 25px 0 0;
}

.box-news h2:before,
.box-news-2 h2:before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 16px;
  background-size: 14px 16px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-news.png");
  margin-right: .3em;
}

.box-news h2+*,
.box-news-2 h2+* {
  margin-top: 1em;
}

.box-news li,
.box-news-2 li {
  padding-bottom: .7em;
}

.box-news li:not(:last-child),
.box-news-2 li:not(:last-child) {
  border-bottom: 1px solid #cccccc;
  margin-bottom: .7em;
}

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

  .box-news h2:before,
  .box-news-2 h2:before {
    position: relative;
    left: 0;
  }
}

.box-news-2 li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.box-news-2 .news-area__title {
  color: #222;
}

@media screen and (max-width: 640px) {
  .box-news-2 li {
    display: block;
  }
}

.box-blog li,
.box-blog li:not(:last-child) {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 0;
  padding-bottom: 0;
}

.box-blog a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  padding: .7em 15px;
  transition: all 0.2s ease;
}

.box-blog a:hover {
  background: #f9f9f9;
}

@media screen and (max-width: 640px) {
  .box-blog a {
    display: block;
  }

  .box-blog .news-area__title {
    min-width: calc(100% - 30px);
  }
}

.youtube-area_wide {
  border: none;
}

@media screen and (min-width: 641px) {
  .youtube-area_wide {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .youtube-area_wide {

    max-width: 700px !important;
    width: 100%;
    height: 395px !important;
  }
}

@media screen and (max-width: 640px) {
  .youtube-area_wide {
    overflow: hidden;
    max-width: 560px;
    width: calc(100% - 30px);
    height: 0;
    margin: 0 auto;
    position: relative;
  }

  .youtube-area_wide iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}


.youtube-area iframe {
  border: none;
}

@media screen and (min-width: 641px) {
  .youtube-area {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .youtube-area iframe {
    max-width: 500px;
    width: 100%;
    height: 300px;
  }
}

@media screen and (max-width: 640px) {
  .youtube-area {
    overflow: hidden;
    max-width: 560px;
    width: calc(100% - 30px);
    height: 0;
    margin: 0 auto;
    padding-top: 56.25%;
    position: relative;
  }

  .youtube-area iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}

/* ---------------------------------
summary
---------------------------------- */
.list-history li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.list-history span:first-child {
  color: #2b829f;
  width: 9em;
  position: relative;
}

.list-history span:first-child:after {
  content: "";
  display: inline-block;
  width: 0.7em;
  height: 0.7em;
  background: #85c8de;
  border-radius: .35em;
  margin: .4em .7em 0;
  position: absolute;
  right: 0;
}

.list-history span:first-child:before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 100%;
  background: #85c8de;
  position: absolute;
  right: 1em;
}

.list-history li:not(:last-child) span:first-child {
  padding-bottom: 7px;
}

.list-history span:last-child {
  flex: 1;
}

@media screen and (max-width: 640px) {
  .list-history li {
    display: block;
  }

  .list-history li:not(:last-child) {
    margin-bottom: 7px;
  }

  .list-history li:not(:last-child) span:first-child {
    padding-bottom: 0;
  }

  .list-history span {
    display: block;
  }

  .list-history span:first-child {
    padding-left: 1em;
  }

  .list-history span:first-child:after {
    margin: .4em 0 0;
    left: 0;
  }

  .list-history span:first-child:before {
    display: none;
  }
}

/* ---------------------------------
shonanmail
---------------------------------- */
.list-shonanmail li {
  background: #e9f5f9;
  border-radius: 5px;
}

.list-shonanmail a {
  display: block;
  padding: 20px 10px;
}

.list-shonanmail img {
  margin-bottom: 10px;
}

.list-shonanmail p {
  color: #222;
  line-height: 1.5em;
  font-size: 0.875rem;
  text-align: center;
  margin-bottom: 0;
}

.list-shonanmail span {
  color: #3093b3;
  font-size: 1rem;
  font-weight: bold;
}

/* ---------------------------------
concert
---------------------------------- */
.concert-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 calc(20px / 2* -1);
}

.concert-area>div {
  width: calc((100% - 41px) / 2);
  margin: 0 calc(20px / 2) 20px;
}

.concert-area .day {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  margin-bottom: .7em;
}

.concert-area .day>span {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  background: #49adce;
  color: #fff;
  font-weight: bold;
  width: 60px;
  height: 60px;
  margin-right: 10px;
}

.concert-area .day p {
  flex: 1;
  font-size: 1.13rem;
  font-weight: bold;
  line-height: 1.4em;
}

.concert-area .day p span {
  color: #666666;
  display: block;
  font-size: 0.95rem;
  font-weight: normal;
}

.concert-area .musician {
  font-size: 1.13rem;
  margin-bottom: .5em;
}

.concert-area .musician:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 17px;
  background-size: 15px 17px;
  background-repeat: no-repeat;
  background-image: url("../../about/concert/img/icon-concert.png");
  margin-right: .7em;
}

@media screen and (max-width: 640px) {
  .concert-area {
    display: block;
    margin: 0 15px;
  }

  .concert-area>div {
    width: 100%;
    margin: 0 0 20px;
  }

  .concert-area .day p,
  .concert-area .musician {
    font-size: 1rem;
  }
}

.concert-old-area .day>span {
  background: #ababab;
}

/* ---------------------------------
outpatient
---------------------------------- */
.flow-area .title-area,
.flow-area-2 .title-area,
.flow-area-3 .title-area {
  border-bottom: 1px solid #85c8de;
  font-size: 1.13rem;
  font-weight: bold;
  margin-bottom: 15px;
  padding: 0 0 13px 0;
}

.flow-area .title-area span,
.flow-area-2 .title-area span,
.flow-area-3 .title-area span {
  background: #85c8de;
  border-radius: 14px;
  color: #fff;
  display: inline-block;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
  width: 28px;
  height: 28px;
  margin-right: 10px;
}

.flow-area-box,
.flow-area .flow-area-box-nb,
.flow-area-2 .flow-area-box-nb,
.flow-area-3 .flow-area-box-nb {
  border: 1px solid #cccccc;
  border-radius: 3px;
  padding: 20px;
  position: relative;
}

.flow-area-box:not(:last-of-type),
.flow-area .flow-area-box-nb:not(:last-of-type),
.flow-area-2 .flow-area-box-nb:not(:last-of-type),
.flow-area-3 .flow-area-box-nb:not(:last-of-type) {
  margin-bottom: 60px;
}

.flow-area-box:not(:last-of-type):after,
.flow-area .flow-area-box-nb:not(:last-of-type):after,
.flow-area-2 .flow-area-box-nb:not(:last-of-type):after,
.flow-area-3 .flow-area-box-nb:not(:last-of-type):after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 13px;
  background-size: 8px 13px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow3-blue.png");
  background-size: 16px;
  display: block;
  width: 16px;
  height: 26px;
  position: absolute;
  bottom: -45px;
  left: 50%;
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.flow-area .half,
.flow-area-2 .half,
.flow-area-3 .half {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.flow-area .half>div,
.flow-area-2 .half>div,
.flow-area-3 .half>div {
  width: calc((100% - 21px) / 2);
}

.flow-area .half>div:first-child,
.flow-area-2 .half>div:first-child,
.flow-area-3 .half>div:first-child {
  margin-right: 10px;
}

.flow-area .half>div:last-child,
.flow-area-2 .half>div:last-child,
.flow-area-3 .half>div:last-child {
  margin-left: 10px;
}

.flow-area p,
.flow-area-2 p,
.flow-area-3 p {
  margin-bottom: 0;
}

.flow-area .flow-title,
.flow-area-2 .flow-title,
.flow-area-3 .flow-title,
.flow-area .title-gr,
.flow-area-2 .title-gr,
.flow-area-3 .title-gr,
.flow-area .title-ye,
.flow-area-2 .title-ye,
.flow-area-3 .title-ye {
  border-radius: 3px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
  padding: 3px 10px;
}

.flow-area .title-gr,
.flow-area-2 .title-gr,
.flow-area-3 .title-gr {
  background: #e8f1e7;
}

.flow-area .title-ye,
.flow-area-2 .title-ye,
.flow-area-3 .title-ye {
  background: #f7eed1;
}

.flow-area .flow-area-box>img,
.flow-area-2 .flow-area-box>img,
.flow-area-3 .flow-area-box>img,
.flow-area .flow-area-box-nb>img,
.flow-area-2 .flow-area-box-nb>img,
.flow-area-3 .flow-area-box-nb>img {
  display: block;
  margin: 0 auto 10px;
}

.flow-area .flow-area-box-nb,
.flow-area-2 .flow-area-box-nb,
.flow-area-3 .flow-area-box-nb {
  border: none;
  padding: 0;
}

.flow-area .flow-area-box-nb>div:not(:last-child),
.flow-area-2 .flow-area-box-nb>div:not(:last-child),
.flow-area-3 .flow-area-box-nb>div:not(:last-child) {
  margin-bottom: 10px;
}

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

  .flow-area .half,
  .flow-area-2 .half,
  .flow-area-3 .half {
    display: block;
  }

  .flow-area .half>div,
  .flow-area-2 .half>div,
  .flow-area-3 .half>div {
    width: 100%;
  }

  .flow-area .half>div:first-child,
  .flow-area-2 .half>div:first-child,
  .flow-area-3 .half>div:first-child {
    margin-right: 0;
    margin-bottom: 20px;
  }

  .flow-area .half>div:last-child,
  .flow-area-2 .half>div:last-child,
  .flow-area-3 .half>div:last-child {
    margin-left: 0;
  }
}

.flow-area-2 .flow-area-box,
.flow-area-3 .flow-area-box,
.flow-area-2 .flow-area-box-nb,
.flow-area-3 .flow-area-box-nb {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.flow-area-2 .num-area,
.flow-area-3 .num-area {
  background: #85c8de;
  border-radius: 14px;
  color: #fff;
  display: inline-block;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
  width: 28px;
  height: 28px;
  margin-right: 10px;
}

.flow-area-2 .text-area,
.flow-area-3 .text-area {
  flex: 1;
}

@media screen and (min-width: 1279px) {
  .flow-area-3 {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    margin-right: calc(40px / 2 * -1);
    margin-left: calc(40px / 2 * -1);
  }

  .flow-area-3 .flow-area-box,
  .flow-area-3 .flow-area-box-nb {
    width: 100%;
    margin: 0 calc(40px / 2);
  }

  .flow-area-3 .flow-area-box:after,
  .flow-area-3 .flow-area-box-nb:after {
    bottom: auto;
    left: auto;
    right: -30px;
    transform: rotate(-90deg);
  }
}

/* ---------------------------------
seminar
---------------------------------- */
.seminar-area .title {
  color: #27356b;
  font-size: 1.13rem;
  font-weight: bold;
  margin-bottom: 1em;
}

.seminar-area .list-new li {
  background: url("../../customer/seminar/img/icon-new.png") no-repeat left top;
  background-size: 26px;
  min-height: 26px;
  padding-left: 32px;
}

.seminar-area .list-new li:not(:last-child) {
  margin-bottom: 5px;
}

/* ---------------------------------
floormap
---------------------------------- */
.floormap-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.floormap-area>div {
  width: 50%;
}

.floormap-area .image-area {
  text-align: center;
}

.floormap-area .map-ank-area ul {
  margin-bottom: 20px;
}

.floormap-area .map-ank-area li:not(:last-child) {
  margin-bottom: .6em;
}

.floormap-area .map-ank-area li a {
  display: inline-block;
}

.floormap-area .map-ank-area li a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow4.png");
  margin-right: .4em;
}

.floormap-area .map-ank-area li a:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 13px;
  background-size: 8px 13px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow3-blue.png");
  margin-left: .7em;
  position: relative;
  top: 0;
  transition: all 0.2s ease;
}

.floormap-area .map-ank-area li a:hover {
  color: #222;
}

.floormap-area .map-ank-area li a:hover:after {
  top: .2em;
}

@media screen and (max-width: 640px) {
  .floormap-area .image-area {
    display: none;
  }

  .floormap-area .map-ank-area {
    width: 100%;
  }
}

.m-text-gr {
  color: #1a946b;
}

.m-text-bl {
  color: #108baf;
}

.m-text-bro {
  color: #966325;
}

.m-text-pur {
  color: #8051a0;
}

/* ---------------------------------
faq
---------------------------------- */
.faq-style {
  background: none;
  border: none;
  color: #222;
  line-height: 1.3em;
  text-indent: -1.5em;
  margin-bottom: 20px;
  padding: 0 0 0 1.5em;
}

.faq-style:before {
  content: 'Q.';
  color: #27356b;
  margin-right: .3em;
  background: none;
  width: auto;
  height: auto;
  display: inline;
  font-weight: bold;
}

@media screen and (min-width: 641px) {
  .faq-style+* {
    margin-left: 2em;
  }

  .faq-style+table {
    width: calc(100% - 2em);
  }
}

@media screen and (max-width: 640px) {
  .faq-style {
    padding: 0 15px 0 2.2em;
  }

  .faq-style:before {
    border: none;
    position: relative;
    left: 0;
  }

  .faq-style+* {
    margin-right: 15px;
    margin-left: 15px;
  }

  h3.faq-style {
    margin-left: 0;
    margin-right: 0;
  }

  h4.faq-style {
    padding-left: 1.5em;
  }
}

/* ---------------------------------
アコーディオン
---------------------------------- */
.accordion_list,
.faq-list {
  details {
    margin-bottom: 20px;

    .details_content {
      padding: 20px;
    }
  }

  li {
    text-indent: 0 !important;
  }
}

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

  .accordion_list,
  .faq-list li {
    padding-left: 0;
  }
}

.faq-list summary {
  background: none;
  border: none;
  color: #222;
  line-height: 1.3em;
  margin-bottom: 20px;
  text-indent: -1.8em;
  padding: 10px 1.8em;
}

.faq-list summary,
.accordion_list summary {
  margin-bottom: 10px;
  border-bottom: 1px dotted #666;
}

.faq-list summary:before {
  content: 'Q.';
  color: #27356b;
  margin-right: .3em;
  background: none;
  width: auto;
  height: auto;
  display: inline;
  font-weight: bold;
  padding-left: 0.5em;
}
.accordion_list summary::after,
.faq-list summary::after {
  content: '+';
  color: #27356b;
  margin-right: .3em;
  background: none;
  width: auto;
  height: auto;
  display: inline;
  float: right;
  font-weight: bold;
}
.accordion_list details[open] summary{
background-color: #27356b;
color: #fff;
font-weight: bold;
padding: 10px;
  }
.faq-list details[open] {
  border: 1px dotted #333;
  .details_content {
    padding-top: 0;
  }
}

.faq-list details[open] summary {
  background: #ddd;
}

.faq-list details[open] summary::after {
  content: '-';
}
.accordion_list details[open] summary::after {
  content: '-';
  color: #fff;
}



/* @media screen and (min-width: 641px) {
  .faq-list summary + * {
    margin-left: 2em;
  }

  .faq-list summary + table {
    width: calc(100% - 2em);
  }
}

@media screen and (max-width: 640px) {
  .faq-list summary {
    padding: 0 15px 0 2.2em;
  }

  .faq-list summary:before {
    border: none;
    position: relative;
    left: 0;
  }

  .faq-list summary + * {
    margin-right: 15px;
    margin-left: 15px;
  }

  .faq-list summary {
    margin-left: 0;
    margin-right: 0;
  }

} */

/* ---------------------------------
department
---------------------------------- */
.doctor-area .name {
  color: #27356b;
  font-size: 1.13rem;
  font-weight: bold;
}

.doctor-area .grad {
  color: #666666;
  margin-left: 1em;
}

.doctor-area .table-noline th {
  width: 5em;
}

@media screen and (max-width: 640px) {
  .doctor-name {
    line-height: 1.6em;
  }
}

@media screen and (max-width: 640px) {
  .doctor-info {
    border-top: 1px solid #cccccc;
    margin-top: 20px;
    padding-top: 20px;
  }
}

.doctor-name+.doctor-info {
  margin-top: 30px;
}

/* kidney */
.chart-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.chart-area li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.chart-area li:not(:last-child) {
  padding-bottom: 10px;
}

.chart-area a {
  border: 2px solid #85c8de;
  border-radius: 3px;
  padding: 10px 15px;
  background: #fff;
  transition: all 0.2s ease;
}

.chart-area a:hover {
  background: #f2f2f2;
}

.chart-area .top {
  margin-left: auto;
}

.chart-area .top li:after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 1px;
  background: #85c8de;
}

.chart-area .second {
  margin-right: auto;
}

.chart-area .second li {
  border-left: 1px solid #85c8de;
}

.chart-area .second li:before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 1px;
  background: #85c8de;
}

.chart-area .second li:first-child {
  border: none;
  padding: 0;
  position: relative;
}

.chart-area .second li:first-child:after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 100%;
  background: -moz-linear-gradient(top, #fff 50%, #85c8de 50%);
  background: -webkit-linear-gradient(top, #fff 50%, #85c8de 50%);
  background: linear-gradient(to bottom, #fff 50%, #85c8de 50%);
  position: absolute;
  left: 0;
  top: 0;
}

.chart-area .second li:nth-child(2) {
  padding-top: 10px;
}

.chart-area .second li:last-child {
  border: none;
  position: relative;
}

.chart-area .second li:last-child:after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 100%;
  background: -moz-linear-gradient(top, #85c8de 50%, #fff 50%);
  background: -webkit-linear-gradient(top, #85c8de 50%, #fff 50%);
  background: linear-gradient(to bottom, #85c8de 50%, #fff 50%);
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (max-width: 640px) {
  .chart-area {
    display: block;
  }

  .chart-area a {
    width: 100%;
  }

  .chart-area .top li {
    display: block;
  }

  .chart-area .top li:after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 20px;
    display: block;
    position: relative;
    left: 20px;
  }

  .chart-area .second {
    margin-left: 20px;
  }

  .chart-area .second li:first-child {
    border-left: 1px solid #85c8de;
  }

  .chart-area .second li:first-child:after {
    display: none;
  }
}

/* birth */
.birth-blog-area li {
  border: none !important;
}

.birth-blog-area li:not(:last-child) {
  margin-bottom: 10px;
}

.birth-blog-area .news-area__date {
  color: #a9894a;
}

.birth-blog-area .news-area__title {
  color: #6c4603;
  font-size: 1rem;
}

.birth-blog-area a {
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  border: 1px solid #ccae5a;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(113, 77, 13, 0.2);
  transition: all 0.2s ease;
}

.birth-blog-area a:hover {
  background: #fdf7e8 !important;
  box-shadow: none;
}

.birth-blog-area a:before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background-size: 17px 17px;
  background-repeat: no-repeat;
  background-image: url("../../department/birth/img/icon-birth.png");
  background-position: center;
  background-color: #c7aa77;
  border-radius: 15px;
  width: 30px;
  height: 30px;
  margin-right: .7em;
}

/* ---------------------------------
recruit
---------------------------------- */
.recruit-area li {
  border-bottom: 1px solid #cccccc;
}

.recruit-area a {
  background: #fff;
  border-radius: 3px;
  display: block;
  text-indent: -1.5em;
  padding: .7em 1em .7em 2.5em;
  padding-right: 30px;
  position: relative;
  transition: all 0.2s ease;
}

.recruit-area .icon-blank::after {
  background-image: url("../img/icon-blank.png");
  width: 12px;
  height: 10px;
  background-size: cover;
}

.recruit-area a::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2-blue.png");
  position: absolute;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  right: 1em;
}

.recruit-area a::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 16px;
  background-size: 17px 16px;
  background-repeat: no-repeat;
  background-image: url("../../recruit/img/icon-recruit.png");
  margin-right: .5em;
  margin-left: 0;
  position: relative;
  top: .2em;
}

.recruit-area a:hover {
  background: #f7f7f7;
  color: #222;
}

@media screen and (max-width: 640px) {
  .recruit-area {
    display: block;
    margin: 0 15px;
  }
}

.rec-style-flow {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
  position: relative;
}

.rec-style-flow:after {
  content: '';
  background-image: linear-gradient(90deg, transparent, transparent 50%, #fff 50%, #fff 100%), linear-gradient(90deg, #3ca7ca, #2783c4);
  background-size: 10px 10px, 100% 10px;
  width: calc(100% - 20px);
  height: 10px;
  position: absolute;
  top: 53.5%;
  right: 0;
  z-index: -1;
}

.rec-style-flow>div {
  width: calc((100% - 121px) / 3);
  position: relative;
}

.rec-style-flow span {
  border-radius: 35px;
  color: #fff;
  font-family: "FOT-ロダン Pro DB", sans-serif;
  font-size: 1.25rem;
  line-height: 70px;
  text-align: center;
  width: 70px;
  height: 70px;
  position: absolute;
  left: 0;
  top: 0;
}

.rec-style-flow p {
  background: #fff;
  border-radius: 3px;
  margin: 30px 0 0 20px;
  padding: 40px 20px 20px;
}

.rec-style-flow>div:nth-child(1) {
  margin-right: 30px;
}

.rec-style-flow>div:nth-child(1) span {
  background: #3ca7ca;
}

.rec-style-flow>div:nth-child(1) p {
  border: 2px solid #3ca7ca;
}

.rec-style-flow>div:nth-child(2) {
  margin-right: 30px;
  margin-left: 30px;
}

.rec-style-flow>div:nth-child(2) span {
  background: #179cc7;
}

.rec-style-flow>div:nth-child(2) p {
  border: 2px solid #179cc7;
}

.rec-style-flow>div:nth-child(3) {
  margin-left: 30px;
}

.rec-style-flow>div:nth-child(3) span {
  background: #2783c4;
}

.rec-style-flow>div:nth-child(3) p {
  border: 2px solid #2783c4;
}

@media screen and (max-width: 640px) {
  .rec-style-flow {
    display: block;
    margin: 40px 15px 30px;
  }

  .rec-style-flow:after {
    background-image: linear-gradient(transparent, transparent 50%, #fff 50%, #fff 100%), linear-gradient(#3ca7ca, #2783c4);
    background-size: 10px 10px, 100% 10px;
    width: 10px;
    height: 100%;
    top: 0;
    left: 50%;
  }

  .rec-style-flow>div {
    width: 100%;
  }

  .rec-style-flow span {
    position: absolute;
    top: -30px;
  }

  .rec-style-flow p {
    margin: 0 0 0 20px;
    padding: 40px 20px 20px;
  }

  .rec-style-flow>div:nth-child(1),
  .rec-style-flow>div:nth-child(2) {
    margin: 0 0 60px;
  }

  .rec-style-flow>div:nth-child(3) {
    margin: 0;
  }
}

.rec-style-point li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.rec-style-point li:not(:last-child) {
  margin-bottom: 15px;
}

.rec-style-point .point {
  border-radius: 30px;
  background: #d3f4ff;
  line-height: 60px;
  font-family: "FOT-ロダン Pro DB", sans-serif;
  text-align: center;
  width: 200px;
  height: 60px;
  margin-right: 30px;
  position: relative;
}

.rec-style-point .point:after {
  content: "";
  display: inline-block;
  width: 27px;
  height: 23px;
  background-size: 27px 23px;
  background-repeat: no-repeat;
  background-image: url("../../recruit/img/icon-point.png");
  position: absolute;
  right: -13px;
  top: -13px;
}

.rec-style-point p {
  flex: 1;
}

@media screen and (max-width: 640px) {
  .rec-style-point li {
    display: block;
  }

  .rec-style-point .point {
    margin: 0 0 20px;
    width: 100%;
  }
}

.rec-style-point2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 calc(20px / 2* -1);
}

.rec-style-point2 li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  border: 2px solid #3ca7ca;
  border-radius: 3px;
  width: calc((100% - 41px) / 2);
  margin: 0 calc(20px / 2) 20px;
  padding: 20px 20px 20px 10px;
}

.rec-style-point2 .point {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  background: -moz-linear-gradient(-45deg, #3ca7ca 50%, #2891c2 50%);
  background: -webkit-linear-gradient(-45deg, #3ca7ca 50%, #2891c2 50%);
  background: linear-gradient(135deg, #3ca7ca 50%, #2891c2 50%);
  border-radius: 35px;
  color: #fff;
  font-size: 0.875rem;
  font-family: "FOT-ロダン Pro DB", sans-serif;
  text-align: center;
  width: 70px;
  height: 70px;
  margin-right: 15px;
}

.rec-style-point2 .point span {
  display: block;
  font-size: 1.25rem;
}

.rec-style-point2 p {
  flex: 1;
  margin-bottom: 0;
}

.rec-style-point2 p span {
  color: #287892;
  font-size: 1.13rem;
  font-weight: bold;
}

@media screen and (max-width: 640px) {
  .rec-style-point2 {
    display: block;
    margin: 0 15px;
  }

  .rec-style-point2 li {
    width: 100%;
    margin: 0 0 10px;
  }
}

/* ---------------------------------
access
---------------------------------- */
.map-img {
  background: url("../../access/img/map.png") no-repeat center;
  background-size: 100%;
  margin-bottom: 10px;
}

.map-img:after {
  content: '';
  display: block;
  padding-top: 45.46%;
}

@media screen and (max-width: 640px) {
  .map-img {
    background: url("../../access/img/map-sp.png") no-repeat center;
    background-size: 100%;
  }

  .map-img:after {
    padding-top: 67.5%;
  }
}

.list-access li {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}

.list-access li .text>p:before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: .7em;
}

.list-access li:not(:last-child) {
  margin-bottom: 1em;
}

.list-access li.shuttle {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 1em;
}

.list-access li.shuttle .text>p:before {
  background: url("../../access/img/icon-shuttle.png") no-repeat center center, #3ca7ca;
  background-size: 17px 14px;
}

.list-access li.taxi .text>p:before {
  background: url("../../access/img/icon-taxi.png") no-repeat center center, #78c569;
  background-size: 18px 15px;
}

.list-access li.bus-kana .text>p:before {
  background: url("../img/icon-bus.png") no-repeat center center, #e0c65d;
  background-size: 16px 16px;
}

.list-access li.bus-eno .text>p:before {
  background: url("../img/icon-bus.png") no-repeat center center, #56a491;
  background-size: 16px 16px;
}

.list-access p {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  line-height: 1.3em;
  margin-bottom: 0;
}

.list-access p span {
  flex: 1;
}

.list-access li.bus-kana p,
.list-access li.bus-eno p {
  margin-bottom: 10px;
}

.list-access .button-pdf span {
  color: #222;
  display: inline-block;
  font-size: .85em;
  margin-left: .3em;
}

.list-access .list-none li {
  border-bottom: none;
  padding-bottom: 0;
}

.list-access .list-none li:not(:last-child) {
  margin-bottom: .5em;
}

@media screen and (min-width: 641px) {
  .list-access .text {
    flex: 1;
    margin-right: 20px;
  }

  .list-access a.button-pdf {
    width: 220px;
    height: 45px;
    margin-left: auto;
  }
}

@media screen and (max-width: 640px) {
  .list-access li {
    display: block;
  }

  .list-access li.shuttle p {
    margin-bottom: 10px;
  }

  .list-access a.button-pdf {
    width: 100%;
  }
}

.table-access-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin: 0 calc(40px / 2 * -1);
}

.table-access-area>div {
  width: 100%;
  margin: 0 calc(40px / 2);
}

@media screen and (max-width: 640px) {
  .table-access-area {
    display: block;
    margin: 0 15px;
  }

  .table-access-area>div {
    margin: 0 0 20px;
  }
}

.table-access,
.table-weekday,
.table-holiday {
  width: 100%;
}

.table-access th,
.table-weekday th,
.table-holiday th,
.table-access td,
.table-weekday td,
.table-holiday td {
  border: 1px solid #cccccc;
  font-size: 0.875rem;
  padding: 3px 7px;
}

.table-access th,
.table-weekday th,
.table-holiday th {
  width: 6em;
}

.table-weekday thead th {
  background: #e9f5f9;
}

.table-holiday thead th {
  background: #fceff2;
}

/* ---------------------------------
news
---------------------------------- */
/* news-index */
.archive-area {
  margin-bottom: 40px;
}

.archive-area li {
  border-bottom: 1px solid #cccccc;
}

.archive-area a {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  padding: .7em 15px;
  transition: all 0.2s ease;
}

.archive-area a:hover {
  background: #f9f9f9;
  border-radius: 3px;
}

@media screen and (max-width: 640px) {
  .archive-area li {
    border-bottom: 1px solid #cccccc;
  }

  .archive-area li:last-child {
    margin-bottom: 0;
  }

  .archive-area a {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: .7em 15px;
  }
}

.pager-area,
.pager-birth-blog-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.pager-area .page-numbers,
.pager-birth-blog-area .page-numbers {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
  padding: .5em 1em;
  transition: all 0.2s ease;
  border-radius: 70px;
  box-shadow: none;
  margin: 0 5px;
  padding: .3em .8em;
}

.pager-area .page-numbers:hover,
.pager-birth-blog-area .page-numbers:hover {
  background: #f7f7f7;
  box-shadow: none;
  color: #222;
}

.pager-area .page-numbers.current,
.pager-birth-blog-area .page-numbers.current {
  background: #ccc;
  color: #fff;
  font-weight: bold;
  pointer-events: none;
}

.pager-area .page-numbers:first-child,
.pager-birth-blog-area .page-numbers:first-child {
  margin-left: auto;
}

.pager-area .page-numbers:last-child,
.pager-birth-blog-area .page-numbers:last-child {
  margin-right: auto;
}

.pager-birth-blog-area .page-numbers {
  border-color: #c7aa77;
  color: #6c4603;
}

.pager-birth-blog-area .page-numbers:hover {
  background: #fdf7e8;
}

.pager-birth-blog-area .page-numbers.current {
  background: #c7aa77;
}

/* news-detail */
.dates-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 40px;
}

.dates-area .news-area__label_area,
.dates-area .news-area__label-important {
  margin-right: 0;
  margin-left: auto;
}

.dates-area .news-area__date {
  margin-right: 0;
  margin-left: 20px;
}

@media screen and (max-width: 640px) {
  .dates-area {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.detail .back-area {
  border-top: 1px solid #cccccc;
  margin-top: 40px;
  padding-top: 40px;
}

@media screen and (max-width: 640px) {
  .detail .back-area {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.dates-area.dep-date {
  display: block;
  text-align: right;
}

/* ---------------------------------
sitemap
---------------------------------- */
.list-sitemap {
  /* tab */
  /* sp */
}

.list-sitemap>li {
  margin-bottom: 40px;
}

.list-sitemap>li>a {
  display: inline-block;
  font-size: 1.13rem;
  font-weight: bold;
  margin-bottom: 20px;
}

.list-sitemap>li>a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow4.png");
  margin-right: .4em;
}

.list-sitemap>li>a:hover {
  color: #222;
}

.list-sitemap .children {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 calc(20px / 3 * -1);
}

.list-sitemap .children li {
  width: calc((100% - 41px) / 3);
  margin: 0 calc(20px / 3) 15px;
}

.list-sitemap .children a {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
  padding: .5em 1em;
  transition: all 0.2s ease;
  display: block;
  padding: 15px;
  position: relative;
}

.list-sitemap .children a:hover {
  background: #f7f7f7;
  box-shadow: none;
  color: #222;
}

.list-sitemap .children a:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow2-blue.png");
  position: absolute;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  right: 1em;
}

@media screen and (min-width: 641px) and (max-width: 959px) {
  .list-sitemap .children {
    margin: 0 calc(20px / 2 * -1);
  }

  .list-sitemap .children li {
    width: calc((100% - 41px) / 2);
    margin: 0 calc(20px / 2) 15px;
  }
}

@media screen and (max-width: 640px) {
  .list-sitemap .children {
    display: block;
    margin: 0;
  }

  .list-sitemap .children li {
    width: 100%;
    margin: 0 0 15px;
  }
}

/* ---------------------------------
form
---------------------------------- */
.table-form {
  /* iOS */
}

.table-form table {
  width: 100%;
  margin-bottom: 30px;
}

.table-form th,
.table-form td {
  padding: .7em 0;
}

.table-form th {
  text-align: left;
  vertical-align: top;
  width: 180px;
  padding-right: 20px;
}

.table-form .require {
  color: #c81f4e;
}

.table-form input[type="submit"],
.table-form input[type="button"] {
  -webkit-appearance: none;
  border-radius: 0;
}

.table-form input {
  font-size: 0.95rem;
}

.table-form input[type="text"],
.table-form input[type="email"] {
  border: 1px solid #cccccc;
  background: #f3f3f3;
  border-radius: 3px;
  width: 100%;
  padding: 6px;
}

.table-form input[type="number"] {
  border: 1px solid #cccccc;
  background: #f3f3f3;
  border-radius: 3px;
  padding: 6px;
}

.table-form input[type="radio"] {
  margin: 0 5px 0 0;
}

.table-form input[name="age"],
.table-form input[name="school_year"] {
  width: 5em;
  margin-right: .5em;
}

.table-form .w_5em {
  width: 5em !important;
  margin-right: .5em;
}

.table-form .w_10em {
  width: 10em !important;
  margin-right: .5em;
}

.table-form .w_20em {
  width: 20em !important;
  margin-right: .5em;
}

.table-form input:focus {
  border: 1px solid #3FCF53;
  box-shadow: 0 0 4px 0 #3FCF53;
}

.table-form textarea,
.table-form select {
  border: 1px solid #cccccc;
  background: #f3f3f3;
  border-radius: 3px;
  font-size: 0.95rem;
  padding: 6px;
}

.table-form textarea {
  width: 100%;
  resize: none;
}

.table-form textarea:focus {
  border: 1px solid #3FCF53;
  box-shadow: 0 0 4px 0 #3FCF53;
}

.table-form select {
  width: 300px;
}

.table-form .select_date select {
  width: 5em;
  margin-right: .3em;
}

.table-form .select_date__line:not(:last-child) {
  margin-bottom: 10px;
}

.table-form .select_date__label {
  margin-right: 10px;
}

.table-form .horizontal-item {
  margin-right: 20px;
}

.table-form .no_confirm {
  margin-bottom: 10px;
}

.table-form option {
  font-size: 0.875rem;
}

.table-form input[type="submit"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px;
  box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
  padding: .5em 1em;
  transition: all 0.2s ease;
  background: #36a3c7;
  border: none;
  color: #fff;
  cursor: pointer;
  font-family: "FOT-ロダン Pro DB", sans-serif;
  font-size: 1.25rem;
  width: 300px;
  margin: 0 auto;
  padding: 1em;
  position: relative;
}

.table-form input[type="submit"]:hover {
  background: #f7f7f7;
  box-shadow: none;
  color: #222;
}

.table-form input[type="submit"]:hover {
  background: #2e8cab;
  color: #fff;
}

@media screen and (max-width: 640px) {
  .table-form input[type="submit"] {
    width: 100%;
  }
}

.table-form input[name="submitBack"] {
  background: #999999;
  margin-bottom: 20px;
}

.table-form input[name="submitBack"]:hover {
  background: gray;
  color: #fff;
}

@media screen and (max-width: 640px) {
  .table-form th {
    padding-bottom: 0;
    width: 100%;
  }

  .table-form tr:not(:last-child) td {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 1em;
  }

  .table-form th,
  .table-form td {
    display: block;
  }

  .table-form input[type="text"],
  .table-form input[type="email"] {
    padding-top: .7em;
    padding-bottom: .7em;
  }

  .table-form textarea,
  .table-form select {
    padding-top: .7em;
    padding-bottom: .7em;
  }

  .table-form select {
    width: 100%;
  }

  .table-form .select_date__label {
    display: block;
    margin-bottom: 10px;
  }

  .table-form .select_date__month,
  .table-form .select_date__day {
    width: 4em;
  }

  .table-form .horizontal-item {
    display: block;
    margin-left: 0 !important;
    margin-bottom: 10px;
  }

  .table-form .mwform-tel-field input:first-child {
    width: 4em;
  }

  .table-form .mwform-tel-field input:not(:first-child) {
    width: 5em;
  }
}

/* ---------------------------------
404
---------------------------------- */
.not-found-area {
  text-align: center;
}

.not-found-area .title span {
  font-size: 1.9rem;
  font-family: "FOT-ロダン Pro DB", sans-serif;
}

/* ---------------------------------
post
---------------------------------- */
.post ul:not(.cp_list) li {
  list-style: none;
  text-indent: -1em;
  padding-left: 1em;
}

.post ul:not(.cp_list) li:not(:last-child) {
  margin-bottom: .6em;
}

.post ul:not(.cp_list) li:before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #27356b;
  border-radius: 3px;
  margin-right: .5em;
  position: relative;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.post ol {
  counter-reset: num;
}

.post ol li {
  list-style: none;
  text-indent: -1.6em;
  padding-left: 1.6em;
}

.post ol li:not(:last-child) {
  margin-bottom: .6em;
}

.post ol li:before {
  counter-increment: num;
  content: counter(num) "．";
  color: #27356b;
  font-weight: bold;
}

.post a {
  display: inline-block;
}

.post a:hover {
  color: #222;
}

.post-dep-blog img {
  max-width: 300px;
}

@media screen and (max-width: 640px) {
  .post-dep-blog img {
    width: 100%;
  }
}

/* ---------------------------------
Style-memo
---------------------------------- */
pre.prettyprint {
  display: block;
  font-size: 0.84rem;
  font-family: Menlo, Consolas, 'DejaVu Sans Mono', monospace;
  width: auto !important;
  margin-bottom: 40px !important;
}

@media screen and (max-width: 640px) {
  pre.prettyprint {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
}

pre.prettyprint ol.linenums {
  margin-left: 1.5em;
}

pre.prettyprint li.L0,
pre.prettyprint li.L1,
pre.prettyprint li.L2,
pre.prettyprint li.L3,
pre.prettyprint li.L4,
pre.prettyprint li.L5,
pre.prettyprint li.L6,
pre.prettyprint li.L7,
pre.prettyprint li.L8,
pre.prettyprint li.L9 {
  list-style: decimal outside !important;
}

.red_text {
  color: #ff0000;
}

.bordered {
  border: 1px solid #eee;
}

@media screen and (max-width: 640px) {
  .sp_block {
    display: block !important;
  }

  .sp_mt20 {
    margin-top: 20px;
  }

  .table-form .sp_w100 {
    width: 100% !important;
  }
}

.bold {
  font-weight: bold !important;
}

.flex_container {
  display: flex;
  flex-wrap: wrap;
}

.flex_container.column2>* {
  width: 50%;
}

@media screen and (max-width: 640px) {
  .flex_container.column2>* {
    width: 100%;
  }
}
.pc_column2>* {
  width: 50%;
}

@media screen and (max-width: 640px) {
  .pc_column2>* {
    width: 100%;
  }
}

.flex_container img {
  max-width: 100%;
}

.booking_tel_box {
  background: #f2f2f2;
  margin-bottom: 30px;
}

.booking_tel_box.ai {
  background: #fff;
  border: solid 2px #27356b;

}

.booking_tel_box .head_text {
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 10px;
  background-color: #27356b;
}

.booking_tel_box .box_content {
  padding: 30px 20px 10px;
}

@media screen and (max-width: 768px) {
  .booking_tel_box .box_content {
    padding-top: 10px;
  }
}

.box_content .number {
  font-size: 250%;
  font-family: 'Allura', cursive;
  font-family: 'M PLUS 2', sans-serif;
  font-weight: 700;
  color: #466acc;
}
.booking_tel_box .icon-text::before
{display: none;
}
.booking_tel_box .icon-text{
margin-left: 15px;
}
@media screen and (max-width: 768px) {
  .box_content .number {
    font-size: 200%;
  }
}

.m_plus {
  font-family: 'Allura', cursive;
  font-family: 'M PLUS 2', sans-serif;
}

@media(min-width: 768px) {

  a.number[href^="tel:"],
  a.tel_link[href^="tel:"] {
    pointer-events: none;
  }

  a.tel_link {
    color: #000;
  }
}
/* 日帰り手術センター */
.bg_blue{
  background:#eafafc;
}
.day-surgery_flow{
  display: flex;
  gap: 20px;

}
.day-surgery_flow .column2{
  flex: 2;
  .flow-area-box{
    min-height: 180px;
  }
   .flow-area-box:last-child{
    margin-bottom: 60px;
   }
  .flow-area-box:after{
  content: "";
  display: inline-block;
  width: 8px;
  height: 13px;
  background-size: 8px 13px;
  background-repeat: no-repeat;
  background-image: url("../img/icon-arrow3-blue.png");
  background-size: 16px;
  display: block;
  width: 16px;
  height: 26px;
  position: absolute;
  bottom: -45px;
  left: 50%;
  transform: translate(-50%, 0);
}
}
  @media(max-width: 767px){
   .day-surgery_flow .column2 .flow-area-box{
    min-height: 350px;
  }
  }


#day-surgery .flow-area .flow-area-box{
  background:#eafafc;
}
#day-surgery .flow-area .flow-area-box.bg_light_blue{
  background:#f0f8ff;
}
.surgical_flow_small {
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 60px;
    @media(max-width: 767px){
   & {
    flex-direction: column;
    gap: 30px;
  }
}
}

.surgical_flow_small > li {
  padding: 10px;
  margin: 0;
  /* border: 2px solid #E26B5D; */
  position: relative;
  font-weight: bold;
  text-align: center;
  background-color: #cee8f0;

  @media(min-width: 767px){
   & {
    writing-mode: vertical-rl;
  }
}

}
/* .surgical_flow_small > li:not(:first-child) ::before { */
 .surgical_flow_small > li ::before {
  content: "";
  width: 14px;
  height: 14px;
  margin-right: 10px;
  display: inline-block;
  border-top: 3px solid #27356b;
  border-right: 3px solid #27356b;
  position: absolute;
  top: 45%;
  left: -45px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
  @media(min-width: 767px){
.surgical_flow_small > li:first-child ::before {
display: none;
}
  }

@media(max-width: 767px){
.surgical_flow_small > li ::before {
    transform: rotate(135deg);
    left: calc(50% - 14px);
    top:45px;
}
.surgical_flow_small > li:last-child ::before {
display: none;
}
}
.phone_font{
     font-size:clamp(1rem, 0.882rem + 0.59vw, 1.25rem);
}
.phone_font_cap{
  font-size:clamp(1rem, 0.955rem + 0.23vw, 1.125rem);
}
/* .surgical_flow_small > li dl dt {
  font-size: 1.3em;
  font-weight: 600;
  color: #E26B5D;
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
  margin-bottom: 10px;
  text-align: center;
}

.surgical_flow_small > li dl dd {
  margin-left: 0;
} */

/* @media(max-width: 767px){
  .surgical_flow_small {
    gap: 20px;
  }
  .surgical_flow_small > li {
    max-width: unset;
    display: block;
  }
  .surgical_flow_small > li:not(:first-child) dl::before {
    display: none;
  }
} */