@charset "utf-8";
*{
 box-sizing:border-box;
 }
html{
 scroll-behavior: smooth;
 }
body{
 padding:0;
 margin:0;
 box-sizing: border-box;
 font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
 }
ul,ol,li,h1,h2,h3,h4,h5,h6{
 margin:0;
 padding:0;
 }
a{
 color:#333;
 }
.pc{
  display:block;
 }
.sp{
  display:none;
 }

nav ul li{
 list-style:none;
 }
header{
 display:flex;
 justify-content:space-between;
 height:113px;
 max-width:1200px;
 margin:0 auto;
 align-items:center;
 }
#logo{
 width:600px;
 padding:2vw 0;
 }
#logo h1{
 }
#logo h1 a{
 display:block;
 }
#logo img{
 width:100%;
 }
#topmenu{
 width:240px;
 display:flex;
 gap:5px;
 }
#topmenu{
 position:relative;
 justify-content:end;
 }
input.togglebox{
  display:none;
  }
#searcharea{
 width:75px;
 }
#searchmenu{
 }
#searchbar{
 height:60px;
 }
#searchbar > label,#menubar > label{
 width:75px;
 height:62px;
 }
#searchbar > label{
 }
#menubar{
 }
#menubar > label{
 right:5px;
 }
#menubar,#searchbar{
 display:block;
 }
a.topmenu_access{
 text-decoration:none;
 }
.hmb a, a.topmenu_access{
  display:flex;
  background-color:#fff;
  justify-content: center;
  align-items: center;
  width:75px;
  height:60px;
  cursor:pointer;
  border:1px solid #ccc;
 }
.hmb a img{
 display:block;
 margin:0 auto 10px auto;
 width:55%;
 }
a.topmenu_access img{
 display:block;
 margin:0 auto 10px auto;
 width:45%;
 }
.hmb a#menuclose img{
 margin:0 auto 7px auto;
 width:45%;
 }
.hmb a#searchclose img{
 margin:0 auto 7px auto;
 width:45%;
 }
.hmb a#searchopen img{
 margin:0 auto 7px auto;
 width:45%;
 }
#searchmenu a span.title{
 width:4em;
 }
.hmb a span, a.topmenu_access span{
 text-align:center;
 display:block;
 }
.hmb a span.title, a.topmenu_access span.title{
 line-height:1em;
 font-size:0.8em;
 }
.openbtn,.closebtn{
  cursor:pointer;
 }
.openbtn[aria-hidden=false]{
  display:flex;
 }
.openbtn[aria-hidden=true]{
  display:none;
 }
.closebtn[aria-hidden=true]{
  display:none;
 }
.closebtn[aria-hidden=false]{
  display:flex;
 }
.verticaldrawer[aria-hidden=true]{
  max-height: 0;
 }
.verticaldrawer[aria-hidden=false]{
  max-height: 500vh;
 }
.horizontaldrawer[aria-hidden=true]{
 max-width: 0;
 }
.horizontaldrawer[aria-hidden=false]{
  max-width: 100vw;
 }
label.togglebox{
 display:block;
 }
input.togglebox:checked + .btnarea > label .closebtn{
 display:flex;
 }
input.togglebox:checked + .btnarea > label .openbtn{
  display:none;
 }
input.togglebox:checked + .btnarea + .horizontaldrawer{
  display:block;
  max-width: 100vw;
 }
input.togglebox:checked + .btnarea + .verticaldrawer{
  display:block;
  max-height: 500vh;
 }
#searchdrawer{
 top:70px;
 right:0;
 margin:0 auto;
 position:absolute;
 transition: 0.3s;
 z-index:200;
 text-align:right;
 background-color:#fff;
 width:375px;
 height:50px;
 display:flex;
 justify-content:center;
 align-items:center;
 }
#searchdrawer form{
 display:none;
 }
#searchdrawer input#search{
 font-size:1.3em;
 margin-right:0.5em;
 }
#searchdrawer input#search_submit{
 font-size:1.1em;
 padding:0 1em;
 }
input#semenu:checked ~ .horizontaldrawer form{
 display:flex;
 justify-content:center;
 align-items:center;
 }
#spdrawer{
 position:absolute;
 top:75px;
  width:400px;
  background-color:#fff;
  padding:0;
  overflow:hidden;
  transition: 0.3s;
  z-index:200;
  }
#spdrawer li{
  padding:0;
  margin:0;
  }
#spdrawer li a{
  padding:15px;
  text-decoration:none;
  color:#333;
  border-bottom:1px solid #eee;
  width:100%;
  box-sizing:border-box;
  }
#spdrawer li.link > a{
  display:block;
  }
#spdrawer li ul{
  width:100%;
  overflow:hidden;
  transition: 0.3s;
  }
#spdrawer li.link a{
 display:block;
 padding-left:2em;
 background-image:url("../img/icon_arrow.png");
 background-repeat:no-repeat;
 background-position:right 30px center;
  }
#spdrawer li li a.openbtn,#spdrawer li li a.closebtn{
 background-color:#c7a2cd;
 color:#fff;
 }
#spdrawer li li.link a{
  background-color:#f7f7f7;
  }
#spdrawer li a span.icon{
  width:70px;
  text-align:right;
  }
#spdrawer li a span.icon img{
  vertical-align:middle;
  }
#spdrawer li a span.title{
  flex:1;
  }
#spdrawer li.external a{
  background-image:url("../img/icon_external_w.png");
  }
nav#globalmenu{
 margin:0 auto;
 padding:0;
 border-top:1px solid #ccc;
 background-color:#fff;
 }

#nav_global{
 max-width:1200px;
 margin:0 auto;
 display:flex;
 padding:15px 0;
 }
#nav_global li{
 width:100%;
 text-align:center;
 }
#nav_global li a{
 display:block;
 color:#333;
 font-size:1.2em;
 text-decoration:none;
 border-right:1px solid #ccc;
 }
#nav_global li:last-child a{
 border-right:none;
 }
#headerimage{
 background-repeat:no-repeat;
 background-size:cover;
 padding:4vw 0;
 background-image:url("../img/h1bg.png");
 }
.about #headerimage{
 background-image:url("../img/h1bg_about.jpg");
 }
.department #headerimage{
 background-image:url("../img/h1bg_department.jpg");
 }
.outpatient #headerimage{
 background-image:url("../img/h1bg_outpatient.jpg");
 }
.hospitalization #headerimage{
 background-image:url("../img/h1bg_hospitalization.jpg");
 }
.hottopics #headerimage{
 background-image:url("../img/h1bg_hottopics.jpg");
 }
#headerimage h1{
 max-width:1200px;
 margin:0 auto;
 font-size:2rem;
 }
#headerimage h1 span{
 background-color:rgba(255,255,255,0.85);
 padding:0.5em 1em;
 }
ul#nav_breadcrumb{
 max-width:1200px;
 margin:15px auto;
 display:flex;
 font-size:0.9em;
 }
ul#nav_breadcrumb li::before{
 content:">";
 font-size:0.8em;
 margin:0 5px;
 }
ul#nav_breadcrumb li:first-child::before{
 content:"";
 margin:0;
 }
ul#nav_breadcrumb a{
 color:#333;
 text-decoration:none;
 }
#content{
 max-width:1200px;
 margin:35px auto;
 display: flex;
 justify-content: center;
 flex-direction : row-reverse;
 gap:44px;
 }
#sidemenu{
 }
#sidebar{
 width:240px;
 margin-right:30px;
 background-color:#fff;
 z-index:50;
 }
#sidebar h2{
 background-color:#9a3c8a;
 color:#fff;
 margin:0;
 font-size:16px;
 padding:15px 20px;
 font-weight:normal;
 }
#sidebar h3{
 background-color:#c7a2cd;
 color:#fff;
 margin:10px 0 0 0;
 font-size:16px;
 padding:15px 20px;
 font-weight:normal;
 }
#sidebar ul{
 z-index:50;
 margin:0;
 padding:0;
 border-top:1px solid #ccc;
 border-left:1px solid #ccc;
 border-bottom:1px solid #ccc;
 margin-bottom:1em;
 }
#sidebar ul li{
 position:relative;
 }
#sidebar ul li a{
 display:block;
 background-color:#fff;
 text-decoration:none;
 color:#000;
 padding:15px 30px 15px 20px;
 background-image:url("../img/icon_arrow.png");
 background-repeat:no-repeat;
 background-position:right 15px center;
 background-size:6px 11px;
 border-right:1px solid #ccc;
 border-bottom:1px solid #ccc;
 }
#sidebar ul li:last-child a{
 border-bottom:none;
 }
#sidebar ul li a:hover{
 background-color:#eee;
 }
#sidebar ul li.external::after{
  content:none;
  }
#sidebar ul li.external a{
  background-color:#d8fb9b;
  background-image:url("../img/icon_external.png");
  background-size:13px 10px;
  }
#sidebar ul li a:hover,#sidebar ul li a.current{
  background-color:#efefef;
  }
#sidebar ul li.external a:hover{
  background-color:#d8fb9b;
  opacity:0.6;
  background-image:url("../img/icon_external.png");
  color:#333;
  }
#main{
 flex: 1;
 display:flex;
 box-sizing: border-box;
 }
div.toppage{
 padding:30px;
 background:linear-gradient(#fff, #d7f682);
 }
div.page{
 padding:0;
 background-color:#fff;
 }
#main.page ul#nav_department_top{
 display:flex;
 gap:3px;
 margin:0;
 width:100%;
 padding:0;
 }
#nav_department_top li{
 width:100%;
 display:flex;
 align-items: stretch;
 }
#nav_department_top li a{
 width:100%;
 display:flex;
 justify-content: center;
 align-items: center;
 border:1px solid #d1a4cb;
 text-decoration:none;
 color:#9a3c8a;
 text-align:center;
 padding:18px;
 }
#nav_department_top li a.current,#nav_department_top li a:hover{

 border:1px solid #9a3c8a;
 text-decoration:none;
 background-color:#9a3c8a;
 color:#fff;
 }

.presidentbox{
 display:flex;
 background-color:#f5f5f5;
 padding:25px;
 gap:25px;
 }
.presidentbox .image{
 width:80px;
 }
.presidentbox .text{
 flex: 1;
 }
#main.page #maincolumn .section ul.official,#maincolumn .section ul.related{
 list-style:none;
 text-align:center;
 margin:30px 0;
 display:flex;
 align-items: stretch;
 flex-wrap:wrap;
 justify-content: center;
 gap:10px;
 box-sizing:border-box;
 }
#maincolumn .section ul.official li,#maincolumn .section ul.related li{
 margin-left:0;
 padding:0;
 }
ul.official li{
/* width:32%;*/
 display:flex;
 align-items: stretch;
 }
ul.related li{
 width:49%;
 display:flex;
 align-items: stretch;
 }
ul.official li a,ul.related li a{
 width:100%;
 display:flex;
 justify-content: center;
 align-items: center;
 color:#333;
 border:1px solid #cbcbcb;
 text-decoration:none;
 padding:15px 25px;
 background-image:url("../img/icon_arrow.png");
 background-repeat:no-repeat;
 background-position:right 15px center;
 background-size:6px 11px;
 }
ul.official li a:hover,ul.related li a:hover{
 background-color:#eee;
 }

#main.page #maincolumn ul.box2{
 list-style:none;
 text-align:center;
 margin:30px 0;
 display:flex;
 align-items: stretch;
 flex-wrap:wrap;
 justify-content: center;
 gap:36px;
 box-sizing:border-box;
 }
#maincolumn .section ul.box2 li{
 margin-left:0;
 padding:0;
 }
ul.box2 li{
 width:calc(50% - 18px);
 display:flex;
 align-items: stretch;
 }
ul.box2 li a{
 width:100%;
 display:flex;
 justify-content: center;
 align-items: center;
 color:#333;
 border:1px solid #cbcbcb;
 text-decoration:none;
 padding:15px 0;
 background-image:url("../img/icon_arrow.png");
 background-repeat:no-repeat;
 background-position:right 15px center;
 background-size:6px 11px;
 }
ul.box2 li a:hover{
 background-color:#eee;
 }

ul.purple li a{
 border:1px solid #c7a2cd;
 color:#9a3c8a;
 background-image:url("../img/icon_arrow_p.png");
 }
#maincolumn .section ul.purple li::before{
 content:none;
 }
div.column2{
 display:flex;
 align-items: stretch;
 flex-wrap:wrap;
 justify-content:flex-start;
 gap:36px;
 box-sizing:border-box;
 margin-bottom:36px;
 }

div.column2 > a{
 width:calc(50% - 18px);
 display:flex;
 padding:25px;
 border:1px solid #eee;
 text-decoration:none;
 color:#333;
 box-sizing:border-box;
 }
div.column2 > a:hover{
 background-color:#eee;
 }
div.column2 > a > dl,div.column2 > a > .dl{
 width:100%;
 margin:0;
 padding:0;
 }
div.column2 > a > dl > dt, div.column2 > a > .dl > .dt{
 box-sizing:border-box;
 height:130px;
 border-bottom:1px solid #c7a2cd;
 font-size:1.1em;
 font-weight:bold;
 text-align:center;
 vertical-align:bottom;
 margin:0;
 padding:95px 0 0 0;
 background-repeat:no-repeat;
 background-position:top center;
 }
div.column2 > a > dl > dd, div.column2 > a > .dl > .dd{
 padding:15px 0 0 0;
 margin:0;
 }
div.dlbox > a{
 box-sizing:border-box;
 border:1px solid #eee;
 display:block;
 width:100%;
 padding:30px 30px 30px 200px;
 text-decoration:none;
 color:#333;
 }
div.dlbox > a:hover{
 background-color:#eee;
 }
div.dlbox > a > dl > dt, div.dlbox > a > .dl > .dt{
 border-bottom:1px solid #c7a2cd;
 padding:0 0 15px 20px;
 font-size:1.1em;
 font-weight:bold;
 margin:0;
 }
div.dlbox > a > dl > dd, div.dlbox > a > .dl > .dd{
 padding:15px 0 0 0;
 margin:0;
 }
.outpatient #out_account{
 background-image:url("../img/icon_outpatient.png");
 background-repeat:no-repeat;
 }
.outpatient #out_reception{
 background-image:url("../img/icon_reception.png");
 background-repeat:no-repeat;
 }
.outpatient #out_department{
 background-image:url("../img/icon_doctors.png");
 background-repeat:no-repeat;
 }
.outpatient #out_administration{
 background-image:url("../img/icon_schedule.png");
 background-repeat:no-repeat;
 }
.outpatient #out_map{
 background-image:url("../img/icon_floor.png");
 background-repeat:no-repeat;
 }
.outpatient #out_interview{
 background-image:url("../img/icon_checklist.png");
 background-repeat:no-repeat;
 }
.outpatient #out_path{
 background-image:url("../img/icon_hospitalization.png");
 background-repeat:no-repeat;
 }
.outpatient #out_resume{
 background-image:url("../img/icon_resume.png");
 background-repeat:no-repeat;
 }
.outpatient #out_reserve{
 background-image:url("../img/icon_reserve.png");
 background-repeat:no-repeat;
 background-position:left 80px center;
 }
.hospitalization #hosp_procedures{
 background-image:url("../img/icon_hottopics.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_discharge{
 background-image:url("../img/icon_checklist.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_fee{
 background-image:url("../img/icon_department.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_rule{
 background-image:url("../img/icon_hospitalization.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_visit{
 background-image:url("../img/icon_support.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_resume{
 background-image:url("../img/icon_resume.png");
 background-repeat:no-repeat;
 }
.hospitalization #hosp_notice{
 background-image:url("../img/icon_doctors.png");
 background-repeat:no-repeat;
 background-position:left 60px center;
 }

#main.page .presidentbox h2{
 color:#333;
 border:none;
 margin:0;
 }
#main.page ul{
 margin-left:1em;
 }
#main.page h1{
 font-size:1.5em;
 margin:1em 0;
 padding:0 0 0 15px;
 border-left:6px solid #983e88;
 }
#main.page section h2{
 font-size:1.2em;
 margin:1em 0;
 padding:0;
 color:#983e88;
 border-bottom:1px solid #c7a2cd;
 position:relative;
 }
#main p{
 margin-top:0;
 }
#main p.cimg{
 text-align:center;
 }
#main p.rimg{
 width:50%;
 float:right;
 }
#main img{
 max-width:100%;
 }
#main section{
 margin-top:50px;
 }
#main section:first-child{
 margin-top:0;
 }
ul.filelist{
 padding:0;
 }
ul.filelist li{
 list-style:none;
 background-image: url("../img/icon_arrow.png");
 background-repeat: no-repeat;
 background-position: left center;
 background-size: 6px 11px;
 padding-left:20px;
 margin-bottom:0.5em;
}
ul.filelist li a{
 color:#333;
}
ul.filelist li a,#covidinfo dd a{
  background-repeat:no-repeat;
  background-size:16px 19px;
  background-position:right 0 bottom 4px;
  padding:4px 20px 4px 0;
}
.infobox a span.title{
  background-repeat:no-repeat;
  background-size:16px 19px;
  background-position:right 0 center;
  padding-right:20px;
}
ul.filelist li a.pdf, .infobox a.pdf span.title,#covidinfo dd a.pdf{
  content:"[PDF]";
  background-image:url(../img/icon_pdf.png);
}
ul.filelist li a.doc {
  content:"[DOC]";
  background-image:url(../img/icon_doc.png);
}
ul.filelist li a.xls {
  content:"[XLS]";
  background-image:url(../img/icon_xls.png);
}

ul.filelist li a.ppt {
  content:"[PPT]";
  background-image:url(../img/icon_ppt.png);
}
footer{
 border-top:1px solid #ccc;
 }

#footer{
 display:flex;
 max-width:1200px;
 margin:35px auto;
 }
#signature{
 width:40%;
 }
#signature p{
  margin:0;
 }
#signature p.title{
  line-height:1em;
 font-size:1.1em;
  background-image:url("../img/icon_logo.png");
  background-repeat:no-repeat;
  background-position:left center;
  background-size:44px 38px;
 padding:10px 0 10px 60px;
 }
#signature p.address{
 margin-top:1em;
 }
#footer nav{
 flex:1;
 }
ul#topslick{
 list-style:none;
 width:100%;
 max-width:1200px;
 height:300px;
 margin:15px auto;
 padding:0;
 }
ul#topslick li{
 margin:0 10px;
 padding:0;
 z-index:10;
 }
ul#topslick a{
 display:block;
 width:310px;
 height:300px;
 }
ul#topslick li img{
 width:310px;
 height:300px;
 }
ul#topslick .slide-arrow{
 position:absolute;
 width:30px;
 height:300px;
 display:flex;
 justify-content:center;
 align-items: center;
 background-color:#eee;
 z-index:20;
 top:0;
 border:0;
 cursor:pointer;
 }
ul#topslick .slide-arrow img{
 width:11px;
 height:26px;
 }
ul#topslick .next-arrow{
 right:0;
 }
ul#nav_info{
 display:flex;
 gap:25px;
 }
ul#nav_info li{
 width:100%;
 display:flex;
 }
ul#nav_info li a{
 width:100%;
 display:flex;
 justify-content: center;
 align-items: center;
 border:1px solid #ccc;
 text-decoration:none;
 text-align:center;
 color:#333;
 padding:20px 30px;
 }
ul#nav_info li a:hover{
 background-color:#eee;
 }
nav.top_submenu{
 background-color:#f2f2f2;
 padding:50px 0;
 width:100%;
 display:block;
 }
nav.top_submenu ul{
 width:100%;
 max-width:1200px;
 margin:0 auto;
 display:flex;
 flex-wrap:wrap;
 gap:16px;
 box-sizing:border-box;
 }
nav.top_submenu ul li{
 width:calc(50% - 8px);
 }
nav.top_submenu ul li a{
 display:block;
 padding:45px 0 45px 215px;
 background-repeat:no-repeat;
 text-decoration:none;
 color:#333;
 background-color:#fff;
 }
#sub_medical{
 background-image:url("../img/eyecatch_doctors.jpg");
 }
#sub_nurse{
 background-image:url("../img/eyecatch_nurse.jpg");
 }
#sub_recruit{
 background-image:url("../img/eyecatch_recruit.jpg");
 }
#sub_intern{
 background-image:url("../img/eyecatch_intern.jpg");
 }
#sub_regional{
 background-image:url("../img/eyecatch_regional.jpg");
 }
#sub_support{
 background-image:url("../img/eyecatch_support.jpg");
 }
#sub_voice{
 background-image:url("../img/eyecatch_voice.jpg");
 }

#footernavi{
 border-top:1px solid #ccc;
 }
#footernavi ul{
 display:flex;
 justify-content: center;
 margin:30px;
 }
#footernavi ul li{
 border-right:1px solid #ccc;
 }
#footernavi ul li:last-child{
 border-right:none;
 }
#footernavi ul li a{
 display:block;
 text-align:center;
 padding:0 20px;
 text-decoration:none;
 line-height:1em;
 color:#333;
 font-size:0.9em;
 }
#copyright{
 text-align:center;
 font-size:0.8em;
 }
.right{
 text-align:right;
 }
span.img{
 width:30%;
 }
.imgright{
 float:right;
 margin-left:1em;
 margin-bottom:1em;
 }
.imgleft{
 float:left;
 margin-right:1em;
 margin-bottom:1em;
 }
p.button{
 text-align:center;
 }
a.button{
  margin:15px auto;
  display:inline-block;
  text-align:center;
  background-color:#35ad23;
  border:1px solid #fff;
  padding:15px 60px;
  text-decoration:none;
  color:#fff;
  border-radius:30px;
  box-shadow: 2px 2px 4px gray;
  background-image:url("../img/icon_arrow_w.png");
  background-repeat:no-repeat;
  background-position:right 30px center;
  background-size:8px 13px;
  font-weight:bold;
  min-width:50%;
 }
a.button:hover{
 opacity:0.7;
 }

ul.subjectlist{
 background-color:#fff;
 margin-bottom:0;
 }
ul.subjectlist > li{
 display:flex;
 border-top:1px solid #ccc;
 padding:20px 10px
 }
ul.subjectlist > li div.information{
 width:60%;
 }
ul.subjectlist > li div.button{
 display:flex;
 align-items: center;
 flex: 1;
 }
ul.subjectlist > li p.genre{
 color:#35ad23;
 margin:0;
 font-size:1.5em;
 font-weight:bold;
 }
ul.subjectlist > li p.sid{
 margin-bottom:5px;
 }
ul.category{
 display:flex;
 padding:0;
 }
ul.category li{
 list-style:none;
 margin-right:20px;
 padding:3px 10px;
 background-color:#f7fdcd;
 color:#333;
 }
#main > *:first-child{
 width:100%;
 }
#main ul.subjectlist > li p.author{
 font-weight:bold;
 margin:20px 0 10px 0;
 }
#main h1{
 margin-bottom:50px;
 }
#main ul.subjectlist > li h4{
 margin:0;
 font-size:1.2rem;
 }
#main ul.bnlist{
 margin-top:20px;
 padding:0;
 }
#main ul.bnlist li{
 list-style:none;
 margin-bottom:20px;
 border-bottom:1px solid #c5d991;
 background:linear-gradient(90deg,#d6f977, #ecfcc3);
 }
#main ul.bnlist li a{
 display:block;
 text-decoration:none;
 color:#333;
 padding:20px 30px;
 background-image:url("../img/icon_arrow.png");
 background-repeat:no-repeat;
 background-position:right 30px center;
 background-size:6px 11px;
 }
#main ul.bnlist li a:hover{
 color:#fff;
 background-image:url("../img/icon_arrow_w.png");
 background-color:#35ad23;
 }
#totop{
 text-align:right;
 position:fixed;
 right:40px;
 bottom:60px;
 opacity: 0;
 transition: 0.3s;
 }
#totop.active{
 opacity: 1;
 }

#totop a{
 display:block;
 background-color:#c7a2cd;
 background-image:url("../img/icon_top.png");
 background-repeat:no-repeat;
 background-position:top 10px center;
 padding:30px 15px 15px 15px;
 border-radius:5px;
 transition:0.4s;
 opacity:0.7;
 color:#fff;
 font-size:0.9em;
 line-height:1em;
 text-align:center;
 text-decoration:none;
 }
#totop a:hover{
 opacity:1;
 }
#totop a img{
 width:25px;
 }
.home #globalmenu{
 display:none;
 }
.home #mainimage{
 background-image:url("../img/bgsky.jpg");
 background-repeat:no-repeat;
 background-size:cover;
 height:30vw;
 }
.home #mainimage .img{
 width:100%;
 max-width:1200px;
 margin:0 auto;
 max-height: 30vw;
 overflow: hidden;
 }
.home #mainimage .img >img{
 object-fit: cover;
 width:100%;
 max-width:1200px;
 }
#nav_toppage{
 box-sizing: border-box;
 display:flex;
 list-style:none;
 width:100%;
 max-width:1200px;
 margin:0 auto;
 margin-top:-30vw;
 padding:10px;
 gap:10px;
 height:30vw;
 align-items:flex-end;
 }
#nav_toppage li{
 width:100%;
 text-align:center;
 }
#nav_toppage li a{
 height:120px;
 vertical-align:bottom;
 display:block;
 background-color:rgba(255,255,255,0.85);
 color:#333;
 font-size:1em;
 text-decoration:none;
 border-radius:5px;
 opacity:0.9;
 background-repeat:no-repeat;
 background-position:center top 10px;
 position:relative;
 }
#nav_toppage li a span.title{
 position:absolute;
 bottom:5px;
 display:block;
 text-align:center;
 width:100%;
 }
#covidinfo{
 display:flex;
 border:1px solid #ffd7d7;
 line-height:1em;
 box-sizing: border-box;
 margin-bottom:50px;
 }
a.icon_about{
 background-image:url("../img/icon_about.png");
 background-repeat:no-repeat;
 }
a.icon_department{
 background-image:url("../img/icon_department.png");
 background-repeat:no-repeat;
 }
a.icon_outpatient{
 background-image:url("../img/icon_outpatient.png");
 background-repeat:no-repeat;
 }
a.icon_hospitalization{
 background-image:url("../img/icon_hospitalization.png");
 background-repeat:no-repeat;
 }
a.icon_support{
 background-image:url("../img/icon_support.png");
 background-repeat:no-repeat;
 }
a.icon_access{
 background-image:url("../img/icon_access.png");
 background-repeat:no-repeat;
 }
a.icon_hottopics{
 background-image:url("../img/icon_hottopics.png");
 background-repeat:no-repeat;
 }
a.icon_webyoyaku{
 background-image:url("../img/icon_webyoyakunew.png");
 background-repeat:no-repeat;
 }
a.icon_recruit{
 background-image:url("../img/icon_resume.svg");
 background-repeat:no-repeat;
 background-size:auto 60px;
 }
/*a.icon_reserve{
 background-image:url("../img/icon_reserve.png");
 background-repeat:no-repeat;
 }*/
#mainimage p{
 width:100%;
 max-width:1200px;
 margin:0 auto;
 margin-top:-30vw;
 font-size: 1em;
 line-height:1.2em;
 text-align:right;
 }
#mainimage p a{
 display:inline-block;
 background-color:#fff;
 text-decoration:none;
 padding:10px 30px;
 margin:10px;
 }
@media screen and (max-width: 640px){
  #mainimage p{
   font-size: 3vmin;
   }
  #mainimage p a{
   padding:10px 20px;
   }
 }

#covidinfo dt{
 box-sizing: border-box;
 width:310px;
 background-color:#ffd7d7;
 color:#c00;
 padding:0;
 margin:0;
 }
#covidinfo dt h2{
 font-size:1em;
 padding:0;
 margin:0;
 }
#covidinfo dt h2 a{
 display:block;
 background-image:url("../img/icon_alert.png");
 background-repeat:no-repeat;
 background-position:left 20px center;
 background-size:23px 20px;
 padding:15px 20px 15px 48px;
 text-decoration:none;
 color:#c00;
 }

#covidinfo dd{
 margin:0;
 padding:15px 20px;
 flex: 1;
 }
#covidinfo dd a{
 text-decoration:none;
 color:#333;
 display:flex;
 flex-wrap:wrap;
 align-items: flex-end;
 }
#covidinfo dd a span{
 display:inline-block;
 }
#covidinfo dd a span.date{
 width:5em;
 margin-right:1em;
 }
#covidinfo dd a span.title{
 flex:1;
 }
#article_topinfo{
 display:flex;
 }
#article_topinfo input{
 display:none;
 }
#article_topinfo #nav_info{
 width:250px;
 }
#article_topinfo #infolist{
 flex:1;
 margin-left:50px;
 }
#main #nav_info h1{
 margin:20px 0;
 font-size:1.3em;
 }
#nav_info ul{
 list-style:none;
 }
#nav_info ul li{
 margin-bottom:5px;
 }
#nav_info ul li a{
 display:block;
 padding:10px;
 }
#infolist .infobox{
 display:none;
 }
#infolist .infobox ul{
 list-style:none;
 }
#infolist .infobox ul li{
 position: relative;
 border-bottom:1px solid #ccc;
 }
#infolist .infobox ul li::before{
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 120px;
  height: inherit;
  border-bottom: 1px solid #c7a2cd;
 }
#infolist .infobox li a{
 display:flex;
 gap:20px;
 text-decoration:none;
 color:#333;
 padding:20px 0;
 align-items: flex-end;
 }
#infolist .infobox li span.date{
 width:5em;
 }
#infolist .infobox p.readmore{
 text-align:right;
 margin-top:10px;
 }
#infolist .infobox p.readmore a{
 text-align:right;
 background-color:#9a3c8a;
 color:#fff;
 text-decoration:none;
 padding:5px 20px;
 }
input#info_all:checked ~ #infolist #info_all_box{
 display:block;
 }
input#info_patient:checked ~#infolist #info_patient_box{
 display:block;
 }
input#info_medical:checked ~#infolist #info_medical_box{
 display:block;
 }
input#info_recruit:checked ~#infolist #info_recruit_box{
 display:block;
 }
#nav_info ul li a{
 border:1px solid #eee;
 background-color:#fff;
 color:#333;
 cursor:pointer;
 }
input#info_all:checked ~ #nav_info ul li#tab_all a,
input#info_patient:checked ~ #nav_info ul li#tab_patient a,
input#info_medical:checked ~ #nav_info ul li#tab_medical a,
input#info_recruit:checked ~ #nav_info ul li#tab_recruit a{
 border:1px solid #9a3c8a;
 background-color:#9a3c8a;
 color:#fff;
 position:relative;
 }
input#info_all:checked ~ #nav_info ul li#tab_all a::before,
input#info_patient:checked ~ #nav_info ul li#tab_patient a::before,
input#info_medical:checked ~ #nav_info ul li#tab_medical a::before,
input#info_recruit:checked ~ #nav_info ul li#tab_recruit a::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -10px;
  border: 10px solid transparent;
  border-left: 10px solid #9a3c8a;
 }

#maincolumn table{
border-collapse:collapse;
margin:15px auto;
}
#maincolumn table.noborder{
margin:15px 0;
 }
#maincolumn table th,#maincolumn table td{
padding:2px 5px;
}
#maincolumn table th{
font-size:95%;
padding:11px;
font-weight:normal;
}
#maincolumn table td{
font-size:95%;
padding:10px;
}

#maincolumn .section_announce{
border:1px solid #ccc;
}
.box{
border:1px solid #ccc;
padding:15px;
}
#maincolumn .section_announce dt{
border-bottom:1px dotted #ccc;
 padding:0 15px;
}
#maincolumn table th,#maincolumn table tr{
border:1px solid #844979;
}
#maincolumn table.tdborder td,#maincolumn table.specialisttable td,#maincolumn table.stafftable td,#maincolumn table.administrationtable td{
border:1px solid #844979;
}
#maincolumn table tr tr{
border:none;
}
#maincolumn table th{
background-color:#E2CADD;
color:#000;
}
#maincolumn table td{
}
#maincolumn table.noborder th,#maincolumn table.noborder td{
 background-color:#fff;
}
#maincolumn .floormap tr,#maincolumn .floormap th{
 background-color:#fff;
 border-top:none;
 border-left:none;
 border-right:none;
 border-bottom:1px solid #ccc;
 }

#maincolumn .section ul li::before{
 content:"●";
 color:#c7a2cd;
 position:absolute;
 top:5px;
 left:0;
 }
#maincolumn .section ul.black{
 list-style:disc;
 margin-left:25px;
 margin-top:-1em;
 }
#maincolumn .section ul.black li{
 list-style:disc;
 margin-left:25px;
 padding-left:0;
 }
#maincolumn .section ul.black li::before{
 content:none;
 }

#maincolumn .section ul.official li::before,#maincolumn .section ul.related li::before{
 content:none;
 }
#maincolumn .section ul.filelist li::before{
 content:none;
 }
#maincolumn .section ul.map li::before{
 content:none;
 }

#maincolumn table.specialisttable,#maincolumn table.stafftable,#maincolumn table.administrationtable{
 width:100%;
}

#maincolumn table.specialisttable th,#maincolumn table.stafftable th{
padding:10px;
}
#maincolumn table.specialisttable td,#maincolumn table.stafftable td{
padding:9px;
}
#maincolumn table.administrationtable th,#maincolumn table.administrationtable td{
padding:5px;
}
#maincolumn table.noborder th,#maincolumn table.noborder td{
font-size:100%;
}
#maincolumn table.tdright td{
 text-align:right;
 }
#maincolumn .section dl, .dl{
 margin:15px 25px 25px 0;
 display:block;
}
#maincolumn .section dt, .dt{
border-left:5px solid #9a3c8a;
margin:20px 20px 10px 20px;
padding-left:20px;
font-weight:bold;
 display:block;
}
#maincolumn .section dd, .dd{
margin:0 20px 0 30px;
 display:block;
}

#maincolumn .section table td table,#maincolumn .section table td table tr,#maincolumn .section table td table td{
 margin:0;
 border:none;
 font-size:100%;
 padding:3px 0 0 0;
 }

#maincolumn .section_announce{
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
-o-border-radius: 5px;
-ms-border-radius: 5px;
behavior: url("ie-css3.htc");
margin:25px auto;
padding:0;
}
#main.page #maincolumn section .section_announce h2{
background-image:url("../img/announceh2.png");
background-repeat:no-repeat;
background-position:10px center;
margin:0;
padding:12px 10px 8px 20px;
}
#maincolumn .section_announce dl{
margin:5px;
}
#maincolumn .section_announce dt{
border-left:none;
text-align:right;
font-size:90%;
background-image:none;
margin:0;
}
#maincolumn .section_announce dd p{
margin:0.5em;
}
#maincolumn .section_announce dd dl{
border:none;
margin:0;
padding:0 10px;
}
#maincolumn .section_announce dd dt{
border:none;
text-align:left;
background-image:url("../img/li.png");
background-position:left 7px;
background-repeat:no-repeat;
padding-left:10px;
margin:0;
}
#maincolumn .section_announce dd dd{
margin:0 0 0 10px;
font-size:90%;
}
#maincolumn .section dd ul,#maincolumn .section dd ol{
margin-left:0;
}
#maincolumn .section p{
margin:15px 25px;
}
#maincolumn .section .map p{
 margin:0;
 text-align:center;
}
#maincolumn .section .map p.dlbtn{
 margin:15px 0;
 text-align:center;
}

#maincolumn .section ul,#maincolumn .section ol,#maincolumn .section dl{
 overflow:hidden;
}
#maincolumn .section ul,#maincolumn .section ol{
 margin:15px 25px 25px 0;
}
#maincolumn .section ul.map{
 margin:0;
 }

#maincolumn .section table.noborder{
margin:15px 0;
}
#maincolumn .section ul li{
list-style:none;
margin-left:10px;
padding:5px 5px 5px 1em;
position: relative
}
#maincolumn .section ul.noborder li,#maincolumn .section ul.related li,#maincolumn .section ul.official li,#maincolumn .section ul#ul_changebg li{
border:none;
}
#maincolumn .section ul.map li{
padding:5px 0;
margin:0;
}

#maincolumn .section ol li{
margin-left:2em;
}

ul.department{
 }
#maincolumn .section ul.department li{
 display:inline-block;
 width:calc(50% - 8px);
 margin:0;
 padding:5px 5px 5px 1em;
 }
#maincolumn .section ul.department li.hassub{
 width:100%;
 }
#maincolumn .section ul.department li ul{
 margin:0;
 }
#maincolumn .section ul.department li li{
 margin-left:20px;
 width:calc(50% - 50px);
 }
#maincolumn .section ul.department li.hassub li::before{
 color:#ccc;
 }
#floormap img{
 max-width:440px;
 }
#floormap #floorguide img{
 max-height:750px;
 }
#floormap .mapset{
 display:flex;
 gap:10px;
 }
#floormap .mapset .img{
 width:500px;
 text-align:center;
 }
#floormap .mapset .table{
 flex:1;
 }
#floormap .table ul{
 list-styke:none;
 }
#floormap h2::before{
 content:"●";
 color:#c7a2cd;
 }
#floormap a{
 text-decoration:none;
 }
#maincolumn #floormap table{
 margin-top:0;
 }
#maincolumn #floormap table th,#maincolumn #floormap table td{
 border-top:none;
 border-left:none;
 border-right:none;
 }
#maincolumn #floormap table th{
 width:5em;
 }
#floormap .table td li{
 display:inline-block;
 }
#floormap .table td li::after{
 content:"｜";
 }
#floormap .table td li:last-child::after{
 content:none;
}

#maincolumn .section dl.horizontal{
 display:flex;
 flex-wrap:wrap;
 gap:15px;
 box-sizing:border-box:
 margin:0;
 padding:0;
 }
#maincolumn .section dl.horizontal dt{
 width:30%;
 margin:0;
 padding:0;
 border:none;
 display:flex;
 align-items: center;
 justify-content: center;
 }
#maincolumn .section dl.horizontal dd{
 margin:0;
 padding:0;
 width:calc(70% - 15px);
 }
#maincolumn .section dl.horizontal dd dl{
 display:flex;
 flex-wrap:wrap;
 gap:15px;
 box-sizing:border-box;
 margin:0;
 padding:0;
 }
.rbox{
 background-color:#521e2d;
 color:#fff;
 padding:5px 10px;
 border-radius:5px;
 font-size:1.5em;
 font-weight:bold;
 text-align:center;
 }
.rbox2{
 border-radius:5px;
 background-color:#f1cec1;
 color:#521e2d;
 font-size:1.5em;
 font-weight:bold;
 text-align:center;
 display:flex;
 align-items: center;
 justify-content: center;
 }
div.time{
 font-size:2em;
 font-weight:bold;
 color:#521e2d;
 }
ol.nonumber{
 list-style:none;
 }
h2 span.icon{
 vertical-align:bottom;
 line-height:0;
 display:inline-block;
 }
h2 span.icon img{
 width:50px;
 }
#maincolumn .section p.caution{
 margin:0;
 position:relative;
 padding-left:1em;
 }
p.caution::before{
 content:"※";
 position:absolute;
 left:0;
 top:0;
 }
div.col2{
 display:flex;
 gap:16px;
 box-sizing:border-box;
 }
div.col2.callmachine > .img{
 width:40%;
 }
div.col2.callmachine > .txt{
 flex:1;
 }
ol.callmachine li{
 margin-bottom:1em;
 }
#maincolumn .section .callmachine p{
 margin:0;
 }
.callmachine div.col2 > .img{
 width:40%;
 }
.callmachine div.col2 > .txt{
 flex:1;
 }
#faq label img{
 width:16px;
 }
#faq dl dd{
  display:block;
  overflow:hidden;
  transition: 0.3s;
  }
#faq dt a span.title{
  flex:1;
  }
table.administrationtable td{
 width:15%;
 text-align:center;
 }
table.stafftable .job{
 width:8em;
 }
table.stafftable .name{
 width:7em;
 }
strong{
 background:linear-gradient(transparent 60%, #efd5f3 60%);
 }
.hospitalflow{
 width:80%;
  margin:0 auto;
 }
@media screen and (max-width: 640px){
  body{
  font-size:4vmin;
  }
 .hmb a, a.topmenu_access{
  width:60px;
  height:60px;
  }
  .hmb a span.title, a.topmenu_access span.title{
  font-size:2.8vmin;
  }
  #nav_toppage li a span.title{
  font-size:3vmin;
  }
  #nav_info ul li a{
  font-size:3vmin;
  padding:5px;
  }
 }
@media screen and (max-width: 960px){
 .pc{
  display:none;
 }
 .sp{
  display:block;
 }
 header{
 width:100vw;
 height:70px;
 padding:5px;
 justify-content:end;
 gap:10px;
 }
 #topmenu{
 width:auto;
 }
 #logo{
 flex:1;
 max-height:62px;
 padding:0;
 }
 #logo h1{
 margin:0 auto;
 width:100%;
 }
 #logo img{
 width:100%;
 max-width:340px;
 }
 #searcharea{
  width:60px;
  height:60px;
 }
 #searchbar > label, #menubar > label{
  width:60px;
  height:60px;
 }
 #searchdrawer{
 width:calc(100vw - 10px);
 }
 #spdrawer{
 top:70px;
 width:calc(100vw - 10px);
 }
 #headerimage{
  z-index:10;
 }
 #nav_global{
  display:none;
  }
 #content{
  z-index:100;
 }
#headerimage{
 padding:15px 0;
 }
#headerimage h1{
 text-align:center;
 font-size:1em;
 }
 #headerimage h1 span{
  padding:5px 7px;
 }
 ul#nav_breadcrumb{
  margin:10px;
  display:block;
  font-size:0.9em;
 }
 #main section{
 margin-top:25px;
 }
 #content{
 display:block;
 margin:15px;
 }
 
 #main.page ul#nav_department_top{
  flex-wrap:wrap;
 }
 #nav_department_top li{
  width:calc(33% - 1px);
  }
 #nav_department_top li a{
  padding:5px;
  font-size:0.9em;
  }
 .presidentbox{
  display:block;
  padding:5px;
  }
 .presidentbox .image{
  text-align:center;
  width:auto;
  }
 #main.page .presidentbox h2{
  text-align:center;
  }
 .department #maincolumn table{
  display: block;
  overflow-x: scroll;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  max-width:100%;
  }
 #sidebar{
  display:none;
  }
 #footer{
  display:block;
  margin:0;
  }
 #signature{
  width:100%;
  padding:15px;
  }
 #floormap img{
  max-width:100%;
  }
 #floormap .mapset .table{
  margin-top:5px;
  }
 div.colulmn2{
  margin-bottom:15px;
  }
 div.column2 > a{
  padding:10px;
  }
 div.dlbox  dl,, div.dlbox .dl{
  width:100%;
  }
 div.dlbox > a{
  padding:10px;
  }
 #maincolumn .section .column2 dl, #maincolumn .section .dlbox dl{
  margin:0;
  }
 #maincolumn .section .column2 dt, #maincolumn .section .dlbox dt{
  margin:0;
  }
 #maincolumn .section .column2 dd, #maincolumn .section .dlbox dd{
  margin:0;
  }
  div.column2 > a > dl > dt, div.column2 > a > .dl > .dt{
  background-position:top 5px center;
  }
  div.dlbox > a > dl > dt, div.dlbox > a > .dl > .dt{
  padding: 95px 0 0 0;
  text-align: center;
  }
 .outpatient #out_reserve,.hospitalization #hosp_notice{
  background-position:top 15px center;
  }
  #maincolumn .section ul li{
  margin:0;
  }
  #maincolumn .section ul.box2 li{
  padding:5px;
  }
  ul#nav_info{
   flex-wrap:wrap;
   margin:0 15px 15px 15px;
   gap:16px;
  }
  ul#nav_info li{
  width:calc(50% - 8px);
  line-height:1em;
  }
  ul#nav_info li a{
  width:100%;
  }
 nav.top_submenu{
  padding:30px 0;
  }
 nav.top_submenu ul{
  display:block;
  }
 nav.top_submenu ul li{
  width:calc(100% - 32px);
  margin:16px;
  }
 #footernavi ul{
  display:block;
  margin:0 0 15px 0;
  }
 #footernavi ul li{
  border-right:none;
  border-bottom:1px solid #ccc;
  }
 #footernavi ul li a{
  display:block;
  text-align:left;
  padding:15px 15px;
  }
 a.button{
  max-width:100%;
  }
 #nav_toppage{
  margin-top:15px;
  background-color:#eee;
  flex-wrap:wrap;
  justify-content: center;
  height:auto;
  }
  #nav_toppage li{
  width:calc(24% - 6px);
  }
  #nav_toppage li.hidesp{
  display:none;
  }
  #nav_toppage li a{
  height:90px;
  background-size:auto 40px;
  }
 #covidinfo{
  display:block;
  }
 #covidinfo dt{
  width:100%;
  box-sizing: border-box;
  }
 #covidinfo dd a{
  display:block;
  vertical-align:baseline;
  }
 #covidinfo dd span{
  display:block;
  width:100%;
  box-sizing: border-box;
  margin-bottom:5px;
  }
 #covidinfo dd a span.title{
  width:100%;
  }
 #article_topinfo{
  display:block;
  }
 #article_topinfo #nav_info{
  width:100%;
  }
 #article_topinfo #nav_info ul{
  display:flex;
  align-items: stretch;
  }
 #article_topinfo #nav_info li{
  width:25%;
  text-align:center;
  }
 #article_topinfo #nav_info li a{
  height:3em;
  line-height:1.3em;
  display:flex;
  justify-content: center;
  align-items: center;
  }
 input#info_all:checked ~ #nav_info ul li#tab_all a::before,
 input#info_patient:checked ~ #nav_info ul li#tab_patient a::before,
 input#info_medical:checked ~ #nav_info ul li#tab_medical a::before,
 input#info_recruit:checked ~ #nav_info ul li#tab_recruit a::before{
   content: "";
   position: absolute;
   top: 100%;
   left: 50%;
   margin-left: -10px;
   border: 10px solid transparent;
   border-top: 10px solid #9a3c8a;
  }
 #article_topinfo #infolist{
  margin-left:0;
  }
 #infolist .infobox li a{
  display:block;
  }
 #infolist .infobox li a span{
  display:block;
  }
 #infolist .infobox li a span.date{
  margin-bottom:10px;
  }
 #maincolumn .section ul.official{
  display:block;
  box-sizing:border-box;
  }
 #maincolumn .section ul.official li{
  width:100%;
  display:block;
  margin-bottom:5px;
  }
 #maincolumn .section ul.official li a{
  width:auto;
  }
 #main.page #maincolumn ul.box2{
  display:block;
  }
 ul.box2 li{
  width:100%;
  margin-bottom:15px;
  }
 div.column2{
  display:block;
  }
 div.column2 > a{
  width:100%;
  margin-bottom:15px;
  }
 #floormap .mapset{
  display:block;
  }
 #floormap .mapset .img{
  width:100%;
  }
 dl.horizontal{
  display:block;
  }
 .hospitalflow{
  width:90%;
  margin:0 auto;
  }
 #maincolumn .section ul.department li{
  display:block;
  width:100%;
  }
 #maincolumn .section ul.department li li{
  display:block;
  width:100%;
  }
 div.col2.callmachine{
  display:block;
  }
 .callmachine div.col2{
  display:block;
  }
 div.col2.callmachine > .img{
  width:100%;
  text-align:center;
  }
 .callmachine div.col2 > .img{
  width:100%;
  text-align:center;
  }
  .callmachine img{
  width:60%;
  margin:10px 0;
  }
  #main.page #maincolumn .section ul.official,#maincolumn .section ul.related{
  display:block;
  }
  ul.official li{
  width:98%;
  }
  ul.related li{
  width:98%;
  }
 #totop{
  right:10px;
  bottom:10px;
  }
 }

#main section.announce.only{
 margin-top:20px;
 }
details.news summary{
 text-align:right;
 display:block;
 }
details.news summary span{
 cursor:pointer;
 background-color: #9a3c8a;
 color:#fff;
 border-radius:5px;
 padding:10px 30px;
 }
details.news summary::-webkit-details-marker {
 none;
 }
details.news summary span:after{
 content:"▼";
 margin-left:10px;
 }
details[open].news summary span:after{
 content:"▲";
 }
ul.flex{
 display:flex;
 flex-wrap:wrap;
 }
