@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
* {-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box
  }

body{
  font-size:14px;
  font-family: sans-serif ;
  color:#333; 
  position: relative;
  word-wrap: break-word;
}
@media screen and (min-width:641px) {
  body{margin-left: 48px;}
}
a {
  color:#333;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a img:hover{
  opacity: 0.7;
}
.font-min{font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;}

/*----------------------------------------------------
 display
----------------------------------------------------*/
.dispN  { display: none !important; }
.dispB  { display: block !important; }
.dispI  { display: inline !important; }
.dispIB { display: inline-block !important; }
.dispT  { display: table !important; }
.dispTC { display: table-cell !important; }

/*----------------------------------------------------
 header
----------------------------------------------------*/
header.toppage{
  background: rgba(241,241,241,0.85); 
  position: fixed;
  top:0;
  left:0;
  z-index: 999;
} 

header {
  background: #fff; 
  position: fixed;
  top:0;
  left:0;
  z-index: 999;
}
@media screen and (min-width:641px) { 
  header {
    width: 100%;
    min-width: 1150px;
  }
}

#headerInner {
  width: 1150px;
  height: 45px; 
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
}
#headerInner .hdr_flexItem{
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-left: 30px;
}
#headerInner .hdr_flexItem.flexTop{
  align-items: flex-start;
}
#headerInner .hdr_flexItem a.access{
  background: url(../img/common/header_ico_access.png) no-repeat;
  background-size: 11px 16px;
  padding-left: 19px;
}
#headerInner .hdr_flexItem a.inquiry{
  background: url(../img/common/header_ico_inquiry.png) no-repeat;
  background-size: 16px 10px;
  padding-left: 24px;
}
ul.fontSizeInner {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
ul.fontSizeInner li{
  margin-right: 8px;
}
ul.fontSizeInner li:hover{
  opacity: 0.7;
}

/* 検索ボックス */
header.toppage #search{
  opacity: 1.0 !important;
}
/**:focus {
  outline: none;
}*/
#search{
    display: none;
    position: absolute;
    top: 45px;
    right: 0;
    background-color: #fff;
    padding: 3px 3px;
    margin-top: 10px;
}
#search:before{
    position: absolute;
    content: "";
    right: 14px;
    top: -10px;
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 0px solid transparent;
    border-bottom: 10px solid #fff;
}
.icoSearch{
    padding: 10px 5px 10px 10px;
}
.searchTxt{
  border:none;
  border: none;
  padding: 8px 0;
}
input[type="text"]:focus {
  outline: 0;
}
.searchBtn{
    background-color: #1d6c4c;
    color:#fff;
    border: none;
    padding: 9px 17px;
}

/* 言語ボックス */
header.toppage #langPc{
  opacity: 1.0 !important;
}
header.toppage #langPc:hover{
  opacity: 0.8 !important;
}
#langPc{
    display: none;
    position: absolute;
    top: 45px;
    right: 20px;
    background-color: #1d6c4c;
    color: #fff;
    margin-top: 10px;
}
#langPc:before{
    position: absolute;
    content: "";
    right: 15px;
    top: -10px;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #1d6c4c;
}
#langPc a{
  display: block;
  color:#fff;
  padding:10px 15px;
  font-weight: 700;
}
#langPc a:hover{
  text-decoration: none;
}

/* secWrapperFixed */
/*.secWrapperFixed{
  position: fixed;
  bottom:2vh;
}
.secOuter.mvArea{
  position: relative; 
}*/
ul.mvNavi{display: none !important;}
/*ul.mvNavi{
  position: fixed;
  right: 100px;
  bottom:40px;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding:15px 20px;
  background-color: rgba(0,0,0,0.65);
}
ul.mvNavi li{
  display: inline-block;
}
ul.mvNavi li a{
  display: block;
  color:#fff;
  font-weight: 700;
  border-left: solid 1px #fff;
  padding:0 10px;
}
ul.mvNavi li a:last-child{
  border-right: solid 1px #fff;
}
ul.mvNavi li a:hover{
  text-decoration: none;
  opacity: 0.8;
}*/


/*----------------------------------------------------
 megaMenu
----------------------------------------------------*/
#megaMenu {
    background: #fff;
    position: fixed;
    width: 100%;
    min-width: 1150px;
    top: 45px;
    left: 0;
    z-index: 1;
}
.megaMenuInner {
  width: 1150px;
  height: 45px;
  margin: 0 auto;
  background-color: #fff;
}
.megaMenuInner ul.megaMenu1st{
  display: flex;
  align-items: center;
  justify-content: flex-start; 
  width: 100%; 
  position: relative;
}
.megaMenuInner ul.megaMenu1st > li{
  width: calc( 100% / 6 );
}
.megaMenuInner ul.megaMenu1st > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 0 16px 0;
}
.megaMenuInner ul.megaMenu1st > li > a:hover {
  text-decoration: none;
  background-color: #c7f2e1;
  color: #1d6c4c;
  font-weight: 700;
}
.megaMenuInner ul.megaMenu1st > li > a.hover {
  text-decoration: none;
  background-color: #c7f2e1;
  color: #1d6c4c;
  font-weight: 700;
}

.megaMenuInner ul.megaMenu1st > li > a > p{
  width: 100%;
  text-align: center;
  border-left: solid 1px #b1b1b1;
}
.megaMenuInner ul.megaMenu1st > li:last-child > a > p{
  border-right: solid 1px #b1b1b1;
}
.megaMenuInner ul.megaMenu1st > li > a > p > span{ padding-left: 20px;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_home{ background:url(../img/common/ico_mega_home.png) left center no-repeat;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_overview{ background:url(../img/common/ico_mega_overview.png) left center no-repeat;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_research{ background:url(../img/common/ico_mega_research.png) left center no-repeat;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_education{ background:url(../img/common/ico_mega_education.png) left center no-repeat;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_hospital{ background:url(../img/common/ico_mega_hospital.png) left center no-repeat;}
.megaMenuInner ul.megaMenu1st > li > a > p > span.ico_mega_others{ background:url(../img/common/ico_mega_others.png) left center no-repeat;}

ul.megaMenu2nd {
  display: none;
}
ul.megaMenu2nd.active {
  position: absolute;
  left: 0;
  top: 45px;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  background-color: #c7f2e1;
  width: 1150px;
}
ul.megaMenu2nd > li{
  width: calc( 100% / 4 );
  border-bottom: solid 1px #e3f9f0;
}
ul.megaMenu2nd > li > a{
  display: flex;
  height: 100%;
  align-items: center;
  padding:16px 0 16px 45px;
  position: relative;
  line-height: 1.4;
}
ul.megaMenu2nd > li > a:before{
    font-family: FontAwesome;
    content: '\f105';
    color: #1d6c4c;
    position: absolute;
    left: 25px;
    top:calc(50% - 10px);
    font-size: 120%;
    font-weight: 100;
}

/*----------------------------------------------------
 pcSideNavi
----------------------------------------------------*/
/*--- pcSideNavi ---*/
#pcSideNavi{
  position: fixed;
  top:0;
  left:0;
  background-color: #1d6c4c;
  width: 48px;
  height:100vh; 
  padding-top:30px;
  z-index: 1000;
}
/*--- pcSideNaviInner ---*/
#pcSideNaviInner {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  background: transparent;
  width: 245px;
  height: 100vh;
  z-index: 1000;
  background-color: #fff;
  border-left: solid 10px #1d6c4c;
}
#pcSideNaviInner p#snavi_close_btn{
  position: absolute;
  top:0;
  right:-45px;
}
#pcSideNaviInner .naviCenter{
    display: flex;
    align-items: center;
    height: 100vh;
}
#pcSideNaviInner .naviCenter .naviCenterInner p.logo{
  text-align: center;
  margin-bottom: 30px;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul{
  width:100%;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li{
  padding:0 15px ;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > a{
  display: block;
  padding: 16px 0 16px 9px;
  border-bottom: solid 1px #e5e5e5;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > a:after{
  font-family: FontAwesome;
  content: '\f105';
  color: #1d6c4c;
  position: absolute;
  right: 16px;
  font-size:120%;
  font-weight: 700;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li.active{
  background-color: #1d6c4c;
  color: #fff;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li.active > a:after{
  color: #fff;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li.active > a{
  border-bottom: solid 1px #1d6c4c;
  color: #fff;
}

#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > ul{
  padding:15px 0 5px; 
  border-bottom: solid 1px #e5e5e5;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > ul > li{
  float:left;
  padding:0 9px;
  border-right: solid 1px #e5e5e5;
  margin-bottom: 10px;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > ul > li:last-child{
  border-right: none;
}
#pcSideNaviInner .naviCenter .naviCenterInner > ul > li > ul > li.bdrNone{
  border-right: none;
}
p#snavi_btn:hover {
    cursor: pointer;
}

/*--- pcSideNaviInner2nd ---*/
#pcSideNaviInner .pcSideNaviInner2nd .snavi_close_btn2nd{
  position: absolute;
  top:0;
  right:-45px;
}
#pcSideNaviInner .pcSideNaviInner2nd {
    display: none;
}
#pcSideNaviInner.open .pcSideNaviInner2nd {
    position: fixed;
    top: 0;
    left: 245px;
    width: 245px;
    height: 100vh;
    z-index: 1000;
    background-color: #d4f4e7;
}
#pcSideNaviInner.open .pcSideNaviInner2nd > .flexOuter{
    height: 100vh;
    display: flex;
    align-items: center;
    overflow-y: auto;
}
#pcSideNaviInner.open .pcSideNaviInner2nd  > .flexOuter > ul{
  width:100%;
}
#pcSideNaviInner.open .pcSideNaviInner2nd  > .flexOuter > ul > li{
  padding:0 15px ;
}
#pcSideNaviInner.open .pcSideNaviInner2nd  > .flexOuter > ul > li > a{
  display: block;
  padding: 16px 0 16px 9px;
  border-bottom: solid 1px #e5e5e5;
}
#pcSideNaviInner.open .pcSideNaviInner2nd  > .flexOuter > ul > li > a:after{
  font-family: FontAwesome;
  content: '\f105';
  color: #1d6c4c;
  position: absolute;
  right: 16px;
  font-size:120%;
  font-weight: 100;
}

/* PC Only margin-leftMenu */
@media screen and (min-width:641px) { 
  .margin-leftMenu{
    margin-top: 45px;
  }
}
/*----------------------------------------------------
 footer
----------------------------------------------------*/
/*--- footerAccess ---*/
#footerAccessWrap {
  width: 100%;
  background: #1d6c4c; 
}
#footerAccess {
  width: 1150px;
  height: 370px; 
  margin: 0 auto;
  background: #1d6c4c; 
}
#footerAccess .addressCol{
  float: left ;
  padding:40px 0 0 90px;
  color:#fff;
}
#footerAccess .addressCol .logo{margin-bottom: 10px;}
#footerAccess .addressCol .address{margin-bottom: 20px;}
#footerAccess .addressCol .tel{margin-bottom: 25px; font-size: 1.285em; font-weight: 700; line-height: 1.8em;}
#footerAccess .addressCol .tel {color: #fff !important;}
#footerAccess .addressCol .tel span.num{font-size: 1.571em; color: #fff !important;}
#footerAccess .addressCol .tel span.num a{color: #fff !important;}
p.ftr_AddBtn{display: inline-block; }
p.ftr_AddBtn a{display:block; padding:20px 50px; background-color: #31b781; color: #fff; font-size:1.571em; font-weight: 700;}
p.ftr_AddBtn a:hover{text-decoration: none; opacity:0.7;}
p.ftr_AddBtn a span.mail:before{
  content: "";
  display: inline-block;
  width: 34px;
  height: 23px;
  background: url(../img/common/ico_mailBtn.png) no-repeat;
  background-size: contain;
  margin-right: 15px;
}

#footerAccess .mapCol{
  float:right;
  width:600px;
}

/*--- footerNavi  ---*/
#footerNaviWrap {
  width: 100%;
  background: #f4f4f4; 
}
#footerNavi {
  width: 1150px;
  margin: 0 auto;
  padding: 50px 0 50px 90px;
  background: #f4f4f4; 
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  font-size:0.857em;
}
.ftrNaviCol{
  width:25%;
}
.ftrNaviCol ul.ftrNavi1st > li{
  margin-bottom: 15px;
}
.ftrNaviCol ul.ftrNavi1st > li > a {
  font-weight: 700;
  display: inline-block;
  margin-bottom: 15px;
}
.ftrNaviCol ul.ftrNavi1st > li:before {
    font-family: FontAwesome;
    content: '\f105';
    color: #279a52;
    margin-right: 10px;
}
.ftrNaviCol ul.ftrNavi1st > li > ul.ftrNavi2nd{
  padding-left: 10px;
}
.ftrNaviCol ul.ftrNavi2nd > li > a {
    display: block;
    padding-left: .75em;
    text-align: left;
}
.ftrNaviCol ul.ftrNavi1st > li > ul.ftrNavi2nd > li:before {
    font-family: FontAwesome;
    content: '\f105';
    float: left;
    color: #b2b2b2;
    margin-right: 8px;
}
.ftrNaviCol ul.ftrNavi1st > li > ul.ftrNavi2nd > li{
  margin-bottom: 15px;
}
.ftrNaviCol ul.ftrNavi1st > li > ul.ftrNavi2nd > li:last-child{
  margin-bottom: 25px;
}

/*--- footer ---*/
footer {
  width: 100%;
  background: #1d6c4c; 
/*  border-top:solid 7px #287154;*/
}
#footerInner {
  width: 1150px;
  padding-left: 90px;
  margin: 0 auto;
  background: #1d6c4c; 
}
#footerInner .logo{
  padding:20px 0 25px;
  position: relative;
}
#footerInner ul.ftrLink{
  position: absolute;
  top:20px;
  right:0;
}
#footerInner ul.ftrLink li{
  float: right;
  margin-left: 20px;
}
#footerInner ul.ftrLink li a{
  color:#fff;
  font-size:0.857em;
}
#footerInner ul.ftrLink li:after{
  font-family: FontAwesome;
  content: '\f105';
  color: #fff;
  margin-left: 8px;
}
#footerInner p.copyright{
  position: absolute;
  right:0;
  bottom:25px;
  text-align: right;
  color: #fff;
  font-size:0.785em;
}
/*--- pagetopButton ---*/
#pagetop {
  /* 表示位置 */
  position: fixed;
/*  right: 100px;
  bottom: 170px;*/
  right: 60px;
  bottom: 120px;
  /* 初期非表示 */
  display: none;
}
#pagetop a {
  /* マウスカーソルをポインター (指) に */
  cursor: pointer;
  /* ブロック表示 */
  display: block;
  /* カーソルホバー時アニメーション */
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
#pagetop a:hover {
  opacity: 0.7;
}
/*--- footerNaviSp ---*/
@media screen and (min-width:641px) { 
  .footerNaviSp{
    display: none !important;
  }
  #menu-gnaviarea{
    display: none !important;
  }
}
/*====================================================
 toppage
====================================================*/
/*----------------------------------------------------
 slider
----------------------------------------------------*/
ul.slider{
  margin:0 auto; 
}
@media screen and (min-width:641px) { 
  ul.slider {
    width: 100%;
    min-width: 1150px;
  }
}
ul.slider img{
  width:100%;
}
ul.slider .slick-dots{
  display:none !important;
}
ul.slider .slick-arrow{
  display:none !important;
}

/*----------------------------------------------------
 section
----------------------------------------------------*/
.secWrapper{
  width: 100%;
  background: #fff;
}
.secOuter {
  width: 1150px;
  margin: 0 auto;
  background: #fff;
  zoom: 1;
}
.secInner {
  width: 970px;
  margin: 0 auto;
  padding-top: 100px;
  background: #fff;
  zoom: 1;
}

/*----------------------------------------------------
 warning
----------------------------------------------------*/
.warning{
  width:100%;
  margin-top: 10px;
}
.warning dl{
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
}
.warning dl dt{
  background-color: #c14d46;
  width:120px;
  text-align: center;
  padding:15px 0;
  font-size:1.285rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
}
.warning dl dd{
  background-color: #f6d4d1;
  font-size:1.142rem;
  width: 1030px;
  display: flex;
  align-items: center;
}
.warning dl dd a{
  display: block;
  padding:15px 0 15px 30px;
  width: 100%;
}
.warning dl dd span.title{
  font-weight: 700;
  margin-left: 30px;
}
/*----------------------------------------------------
 btnFlexArea
----------------------------------------------------*/
.btnFlexArea{
  display: flex;
  justify-content: space-around;
  align-items: center;
}

/*----------------------------------------------------
 flexBox
----------------------------------------------------*/
.flexBox{
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
.flexBox .news,.flexBox .information{
  /*width:470px;*/
  width:100%;
  word-wrap: break-word;
}
/* newsList */
dl.newsList{
  padding:20px 0 15px;
  border-bottom: solid 1px #e0e0e0;
}
dl.newsList a{
  display: block;
  line-height: 1.6em;
}
dl.newsList dt{
  color:#545454;
  margin-bottom: 8px;
}
dl.newsList dt p.date{
  display: inline-block;
  width: 6em;
}
dl.newsList dt span.icon{
  font-size:0.785rem;
  padding:2px 10px 0;
  border:solid 1px #868686;
}
dl.newsList dd{
  font-weight: 700;
}

/* tabNav */
/*タブ切り替え全体のスタイル*/
.tabNav {
width: 100%;
margin: 0 auto;
}
/*タブのスタイル*/
.tab_item {
width: 50%;
color: #363636;
display: block;
float: left;
text-align: center;
transition: all 0.2s ease;
border-right:solid 1px #8d8c8f;
}
.tab_item:hover {
opacity: 0.7;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] {
display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
display: none;
clear: both;
overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#test:checked ~ #test_content,
#course:checked ~ #course_content,
#bid:checked ~ #bid_content,
#job:checked ~ #job_content,
#recruit:checked ~ #recruit_content {
display: block;
}
/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
background-color: #5ab4bd;
color: #fff;
}
/*各タブスタイル*/
.tab_item{
  align-items: center;
  justify-content: center;
  padding: 5px 0;
  margin: 26px 0;
}
.tab_item.test{
  border-left:solid 1px #8d8c8f;
  text-align: center;
}
.tab_item.test span{
   background: url(../img/top/tavNav_ico_test.png) no-repeat; 
   padding-left: 22px;
}
.tab_item.course{
  text-align: center;
}
.tab_item.course span{
  background: url(../img/top/tavNav_ico_course.png) no-repeat;
  padding-left: 22px;
}

.tab_content .newsList:first-child{
  border-top: solid 1px #e0e0e0;
}
.tab_content .newsList dt p.date{
  display: block;
  width: auto;
}

/* GoogleCalendar */
.googleCalendar{
  height: 700px !important;
}
/*----------------------------------------------------
 Topics 
----------------------------------------------------*/

.flexBox .flexCol.topics{
  margin-right: 10px;
  word-wrap: break-word;
}
.flexBox .flexCol.topics:last-child{
  margin-right: 0;
}
.flexBox .flexCol.topics img{
  margin-bottom: 20px;
}
h4.topTit04{
  font-size:107%;
  margin-bottom: 10px;
}
.topics p.lead{
  margin-bottom: 10px;
  line-height: 1.6em;
}
.topics p.date{
  text-align: right;
  color: #adadad;
}


/*----------------------------------------------------
 flexBtnArea
----------------------------------------------------*/
.btnFlexArea{
  display: flex;
  justify-content: space-around;
  align-items: center;
}


/*----------------------------------------------------
 topicsBnr
----------------------------------------------------*/
.topicsBnr li{
  width:33.3%;
  float: left;
}
/*----------------------------------------------------
 linkBnr
----------------------------------------------------*/
/*--- .secWrapper.link ---*/
.secWrapper.link{
  background: url(../img/top/bg_link.jpg) no-repeat 0 0;
  background-size: cover;
}
@media screen and (min-width:641px) { 
  .secWrapper.link{
    width: 100%;
    min-width: 1150px;
  }
}
.secWrapper.link .secOuter,.secWrapper.link .secInner{ background: transparent;}
.linkBnr li{
  width:186px;
  float:left;
  margin-right: 10px;
}
.secWrapper.link .secInner{
  padding-bottom: 50px;
}
.linkBnr li:nth-child(5n){
  margin-right: 0;
}
/*----------------------------------------------------
 title
----------------------------------------------------*/
h2.topTit02{
}

/*====================================================
 pages
====================================================*/

/*----------------------------------------------------
 content
----------------------------------------------------*/
#content {
  width: 100%;
  background: #fff;
}
#contentInner {
  width: 1150px;
  margin: 0 auto;
  background: #fff;
  zoom: 1;
}
#contentInner:after {
  content: "";
  display: block;
  clear: both;
}
#mainContent {
  width: 810px;
  padding: 60px 0 80px 90px;
  position: relative;
  float: left;
}

/*----------------------------------------------------
 #breadcrumb
----------------------------------------------------*/
#breadcrumb {
  margin-bottom: 0px;
  background-color: #e4e4e4;
  padding:15px 0;
}
@media screen and (min-width:641px) { 
  #breadcrumb{
    width: 100%;
    min-width: 1150px;
  }
}

#breadcrumb li {
  display: inline-block;
  padding: 0 0.25em;
  color: #666;
}

#breadcrumb li:after {
  content: "＞";
  padding-left: 0.5em;
}

#breadcrumb li:last-child:after {
  content: "";
  display: inherit;
}

#breadcrumb li a {
  color: #666;
  text-decoration: none;
}

.breadcrumbInner {
  width: 1150px;
  line-height:1.3;
  margin: 0 auto;
  font-size: 15px;
}

/*----------------------------------------------------
 .pageTit
----------------------------------------------------*/
.pageTit{
  background:url(../img/common/pageTit_bg.png);
  background-size: cover;
}
@media screen and (min-width:641px) { 
  .pageTit{
    width: 100%;
    min-width: 1150px;
  }
}
.pageTitInner{
  width:1150px;
  margin:0 auto;
  height: 220px;
  display: flex;
  align-items: center;
}
.pageTitInner h2{
  font-size:2.85rem;
  font-weight:700;
  color:#fff;
  line-height: 1em;
}
.pageTitInner h2 span{
  font-size:1.14rem;
}

h3.tit03{
  padding: 13px 0 10px 20px;
  border-left: solid 5px #1d6c4c;
  font-size: 1.785em;
  margin-bottom: 35px;
  color: #1d6c4c;
  line-height: 1.4em;
}
h3.infoTit{
  font-size:1.571em;
  padding:10px 0 10px 25px;
  background-color: #f3f3f3;
  color: #1d6c4c;
  border-left: solid 5px #1d6c4c;
  border-bottom: solid 1px #1d6c4c;
  font-weight: 700;
}
h3.infoTit.event{
  color: #4e549b;
  border-left: solid 5px #4e549b;
  border-bottom: solid 1px #4e549b;
}
h4.tit04{
  position: relative;
  font-size: 1.285em;
  font-weight: 700;
  margin-bottom: 15px;
}
h4.tit04:before{
    content: "◆";
    font-size: 22px;
    color: #1d6c4c;
    margin-right: 8px;
}
h5.tit05{
  color: #1d6c4c;
  margin-bottom: 10px;
}
/*----------------------------------------------------
 .pdfPage
----------------------------------------------------*/
p.pdfPage{
  display: inline-block;
  position: absolute;
  top:20px;
  right:0;
  font-size:0.928rem;
}
p.pdfPage a{
  display: block;
  padding: 8px 15px 6px;
  background-color: #747474;
  color: #fff;
}

p.pdfPage a:before{
  content: "";
  background: url(../img/common/pdfPage_ico.png) no-repeat #747474;
  background-position-y:8px; 
  background-position-y: 4px;
  background-size: 10px 13px;
  padding-left: 20px;
}
p.pdfPage a:hover{
  text-decoration: none;
  opacity: 0.7;
}
/*----------------------------------------------------
 page-style
----------------------------------------------------*/
.sec{
  margin-bottom: 60px
}
.imgR img{
  float: right;
  margin-left: 30px;
  margin-bottom: 15px;
}
p.lead{
  line-height: 1.857em;
  margin-bottom: 20px;
}
.signature{
  text-align: right;
  color: #1d6c4c;
  font-weight: 700;
}
.signature .author{
  font-size: 1.142em;
}
.signature .author span{
  font-size: 1.428em;
  margin-left: 10px;
}

/*--- infoList ---*/
dl.infoList {
  padding:10px 0;
  line-height: 1.4em;
}
dl.infoList dt {
  float: left ;
  clear: both ;
  width: 130px ;
  padding:10px 0;
}
dl.infoList dd {
  margin-left: 130px ;
  width: 590px ;
  padding:10px 0;
}
p.infoLink{
  text-align: right;
  font-size: 1.071em;
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: dotted 1px #1d6c4c;
}
p.infoLink a{
  color: #1d6c4c;
}
p.infoLink.event{
  border-bottom: dotted 1px #4e549b;
}
p.infoLink.event a{
  color: #4e549b;
}

/*----------------------------------------------------
 catList
----------------------------------------------------*/
.catFlex{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: stretch;
}
.catFlex .catList{
  width: 235px;
  flex-basis: 235px;
  flex-shrink: 0;
  margin-bottom: 20px;
}
.catListTit{
  font-size: 1.142em;
}
.catListTit a{
  display: block;
  color: #1d6c4c;
  padding:13px 0 10px 15px;
  font-weight: 700;
  background: url(../img/common/catList_ico01.png) no-repeat #f3f3f3;
  background-size: 15px 15px;
  background-position: 10px 13px;
  padding-left: 30px;
}
.catList > ul{
  padding: 20px 10px 20px 25px;
}
.catList > ul > li{
    margin-bottom: 15px;
    text-indent: -15px;
    padding-left: 15px;
}
.catList > ul > li a{
  background: url(../img/common/catList_ico02.png) no-repeat;
  background-size: 6px 9px;
  background-position-y: 5px;
  padding-left: 14px;
  line-height: 1.4em;
}
/*----------------------------------------------------
 #subMenu
----------------------------------------------------*/
#subMenu{
  width: 300px;
  float: right;
  padding: 60px 0 80px;
}
#subMenu a:hover{
  text-decoration: none;
  opacity: 0.8;
}
/* 1階層目 */
#subMenu > ul > li > a{
  padding:15px 0 15px 30px;
  display: block;
  border-bottom: solid 1px #fff;
  background: url(../img/common/subMenu_arw01.png) right no-repeat;
  background-color: #e4e4e4;
  background-size: 8px 12px;
  background-position: 270px center;
}
#subMenu > ul > li.active > a{
  padding:15px 0 15px 30px;
  display: block;
  color:#fff;
  border-bottom: solid 1px #fff;
  background: url(../img/common/subMenu_arw02.png) right no-repeat;
  background-color: #747474;
  background-size: 12px 6px;
  background-position: 270px center;
}
/* 2階層目 */
#subMenu > ul > li > ul{
  display: none !important;
}
#subMenu > ul > li.active > ul{
  display: block !important;
}
#subMenu > ul > li > ul > li > a{
  padding:15px 40px 15px 40px;
  display: block;
  border-bottom: solid 1px #fff;
  background: url(../img/common/subMenu_arw01.png) right no-repeat;
  background-color: #f4f4f4;
  background-size: 8px 12px;
  background-position: 270px center;
}

/*----------------------------------------------------
 table
----------------------------------------------------*/
table{
  border-collapse:collapse;
}
table tbody th,
table tbody td{
  padding:5px 10px ;
  border:solid 1px #ccc;
}

/* table内tableのスタイルキャンセル */
table table tbody th,
table table tbody td{
  padding:3px 5px ;
  border:none;
}
/*====================================================
 adjust
====================================================*/
/* adjust margin-top */
.mt00 {margin-top: 0 !important;}
.mt05 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt35 {margin-top: 35px !important;}
.mt40 {margin-top: 40px !important;}
.mt45 {margin-top: 45px !important;}
.mt50 {margin-top: 50px !important;}
.mt55 {margin-top: 55px !important;}
.mt60 {margin-top: 60px !important;}
.mt65 {margin-top: 65px !important;}
.mt70 {margin-top: 70px !important;}
.mt75 {margin-top: 75px !important;}
.mt80 {margin-top: 80px !important;}
.mt85 {margin-top: 85px !important;}
.mt90 {margin-top: 90px !important;}
.mt95 {margin-top: 95px !important;}
.mt100 {margin-top: 100px !important;}

/* adjust margin-bottom */
.mb00 {margin-bottom: 0 !important;}
.mb05 {margin-bottom: 5px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb25 {margin-bottom: 25px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb35 {margin-bottom: 35px !important;}
.mb40 {margin-bottom: 40px !important;}
.mb45 {margin-bottom: 45px !important;}
.mb50 {margin-bottom: 50px !important;}
.mb55 {margin-bottom: 55px !important;}
.mb60 {margin-bottom: 60px !important;}
.mb65 {margin-bottom: 65px !important;}
.mb70 {margin-bottom: 70px !important;}
.mb75 {margin-bottom: 75px !important;}
.mb80 {margin-bottom: 80px !important;}
.mb85 {margin-bottom: 85px !important;}
.mb90 {margin-bottom: 90px !important;}
.mb95 {margin-bottom: 95px !important;}
.mb100 {margin-bottom: 100px !important;}

/* adjust margin-right */
.mr00 {margin-right: 0 !important;}
.mr05 {margin-right: 5px !important;}
.mr10 {margin-right: 10px !important;}
.mr15 {margin-right: 15px !important;}
.mr20 {margin-right: 20px !important;}
.mr25 {margin-right: 25px !important;}
.mr30 {margin-right: 30px !important;}
.mr35 {margin-right: 35px !important;}
.mr40 {margin-right: 40px !important;}
.mr45 {margin-right: 45px !important;}
.mr50 {margin-right: 50px !important;}
.mr55 {margin-right: 55px !important;}
.mr60 {margin-right: 60px !important;}
.mr65 {margin-right: 65px !important;}
.mr70 {margin-right: 70px !important;}
.mr75 {margin-right: 75px !important;}
.mr80 {margin-right: 80px !important;}
.mr85 {margin-right: 85px !important;}
.mr90 {margin-right: 90px !important;}
.mr95 {margin-right: 95px !important;}
.mr100 {margin-right: 100px !important;}

/* adjust padding-top */
.pt00 {padding-top: 0 !important;}
.pt05 {padding-top: 5px !important;}
.pt10 {padding-top: 10px !important;}
.pt15 {padding-top: 15px !important;}
.pt20 {padding-top: 20px !important;}
.pt25 {padding-top: 25px !important;}
.pt30 {padding-top: 30px !important;}
.pt35 {padding-top: 35px !important;}
.pt40 {padding-top: 40px !important;}
.pt45 {padding-top: 45px !important;}
.pt50 {padding-top: 50px !important;}
.pt55 {padding-top: 55px !important;}
.pt60 {padding-top: 60px !important;}
.pt65 {padding-top: 65px !important;}
.pt70 {padding-top: 70px !important;}
.pt75 {padding-top: 75px !important;}
.pt80 {padding-top: 80px !important;}
.pt85 {padding-top: 85px !important;}
.pt90 {padding-top: 90px !important;}
.pt95 {padding-top: 95px !important;}
.pt100 {padding-top: 100px !important;}

/* adjust width */
.w05{width: 5%;}
.w10{width: 10% !important;}
.w15{width: 15% !important;}
.w20{width: 20% !important;}
.w25{width: 25% !important;}
.w30{width: 30% !important;}
.w33{width: 33.3% !important;}
.w40{width: 40% !important;}
.w45{width: 45% !important;}
.w50{width: 50% !important;}
.w55{width: 55% !important;}
.w60{width: 60% !important;}
.w65{width: 65% !important;}
.w70{width: 70% !important;}
.w75{width: 75% !important;}
.w80{width: 80% !important;}
.w85{width: 85% !important;}
.w90{width: 90% !important;}
.w95{width: 95% !important;}
.w100{width: 100% !important;}

/* text-align */
.alnR {text-align: right !important;}
.alnL { text-align: left !important; }
.alnC { text-align: center !important; }


/*----------------------------------------------------
 clearfix
----------------------------------------------------*/
.clearfix:after {
  content:".";
  display:block;
  height:0.1px;
  visibility:hidden;
  clear:both;
  font-size:0.1em;
  line-height:0;
  }
.clearfix { min-height:1px; }
* html .clearfix  { height:1px; };


/*----------------------------------------------------
 tree
----------------------------------------------------*/
.tree ul > li{
  margin-bottom: 15px;
}
.tree ul > li > a {
  /*font-weight: 700;*/
  display: inline-block;
  margin-bottom: 15px;
}
.tree ul > li:before {
    font-family: FontAwesome;
    content: '\f105';
    color: #279a52;
    margin-right: 10px;
}
.tree ul > li > ul{
  padding-left: 10px;
}
.tree ul > li> ul > li > a {
    display: block;
    padding-left: .75em;
    text-align: left;
}
.tree ul > li > ul > li:before {
    font-family: FontAwesome;
    content: '\f105';
    float: left;
    color: #b2b2b2;
    margin-right: 8px;
}
.tree ul > li > ul > li{
  margin-bottom: 15px;
}
.tree ul > li > ul > li:last-child{
  margin-bottom: 25px;
}
.tree ul > li > ul > li > ul{
  margin-top: 15px;
}

/* guiエディタ内のh1, h2, div, pの調整 */
#maincontent h1, #maincontent h2 {
	font-size: initial;
}
#mainContent div, #mainContent p {
  line-height: 1.857em;
  margin-bottom: 20px;
}

/* 旧サイトのテーブルスタイル */
table.gray-simple {
	width: 100%;
	border: 1px #CCCCCC solid;
	border-collapse: collapse;
	border-spacing: 0;
}
table.gray-simple th {
	padding: 10px;
	border: 1px #CCCCCC solid;
	background: #EEEEEE;
	font-weight: normal;
	text-align: center;
}
table.gray-simple tbody th {
	text-align: left;
}
table.gray-simple td {
	padding: 5px;
	border: 1px #CCCCCC solid;
}

/* 病院一覧用 */
#hospitalsMap {
	margin:5px 0px 10px 0;
	width:695px;
	height:400px;
}
.hospitalList table {
	width: 100%;
	border: 1px #CCCCCC solid;
	border-collapse: collapse;
	border-spacing: 0;
}

.hospitalList table th {
    padding: 10px;
    border: #CCCCCC solid;
    border-bottom: #CCCCCC double;
    border-width: 0 0 3px 1px;
    background: #DDDDDD;
    font-weight: bold;
    text-align: center;
}
.hospitalList table td {
    padding: 5px;
    border: 1px #CCCCCC solid;
    border-width: 0 0 1px 1px;
}
.hospitalList table tr:nth-child(2n) {
    background: #EEEEEE;
}
.hospitalList table tr:nth-child(2n+1) {
	background: #FFFFFF;
}

/* h1 体裁修正 ADD 181219 */
#mainContent h1{
  font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  background-color: #1d6c4c;
  padding:20px 0 20px 20px;
  font-size:2em;
  font-weight: 700;
  color:#fff;
  margin-bottom: 30px;
}
/* カテゴリページ ボタン体裁修正 ADD 181219 */
.catFlex .catList {
    margin-right: 7.5px;
}
.catFlex .catList:nth-child(3n){
  margin-right: 0;
}
@media screen and (max-width:640px) {
  .catFlex .catList{
    margin-right: 0;
  }
  .catFlex .catList:nth-child(odd) {
      margin-right: 1%;
  }
}
/* table内マージン修正 ADD 181219 */
#mainContent table p{
  margin-bottom:0 !important;
}
#mainContent table div{
  margin-bottom:0 !important;
}
/* リスト修正 */
#mainContent > ul{
  margin-bottom: 30px;
  line-height: 1.857em;
}
#mainContent > ul > li{
  margin-bottom: 5px;
  list-style: disc;
  list-style-position: inside;
  text-indent: -20px;
  padding-left: 20px;
} 
#mainContent dl{
  margin:10px 0;
  padding:10px;
}
#mainContent ol{
  list-style-position: inside;
  line-height: 1.857em;
}
#mainContent ol > li{
  text-indent: -20px;
  padding-left: 20px;
}