/*===========================================*/
/*== トップページ1312リニューアル ==*/
/*===========================================*/

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset,
img {
  border: 0;
}
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}
ol,
ul {
  list-style: none;
}
caption,
th {
  text-align: left;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}
q:before,
q:after {
  content: "";
}
abbr,
acronym {
  border: 0;
}

#body_top {
  background: url(../../img/top/body_bg.jpg) repeat-x 0 0 #fff;
  font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro",
    "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande",
    "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  line-height: 1.6;
}
.over_w a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
  background: #fff;
}

/*===========================================*/
/*== ヘッダー ==*/
/*===========================================*/

#header {
  background: url(../../img/top/header_bg.jpg) no-repeat center 0;
  /*height: 569px;  休暇告知掲載時 */
  height: 420px; /* 通常時 */
}
#header_inner {
  width: 900px;
  margin: 0 auto;
}
#header_inner h1 {
  text-align: right;
  padding: 62px 30px 35px 0;
}
#header_inner #copy {
  text-align: right;
  margin-bottom: 63px;
}

#header_inner #news {
  background: #fff;
  border: 1px solid #ccc;
  overflow: hidden;
  height: 40px; /*20150227 newsサイズ変更 追加*/
}
#header_inner #news h2 {
  background: #009999;
  width: 100px;
  float: left;
  text-align: center;
  /*padding: 5px 0; 20150227 newsサイズ変更 数値変更*/
  padding: 11px 0;
  height: 40px; /*20150227 newsサイズ変更 追加*/
}
#header_inner #news #ticker {
  width: 798px;
  float: right;
  /*padding-top: 2px; newsサイズ変更 数値変更*/
  padding-top: 6px;
  overflow: hidden;
  position: relative;
}
#header_inner #news #ticker ul {
  margin: 0;
  padding: 0;
  height: 1.6em;
  /*font-size: 14px; newsサイズ変更 数値変更*/
  font-size: 18px;
}
#header_inner #news #ticker ul li {
  float: left;
  display: inline;
  clear: both;
  position: relative;
  line-height: 1.6em;
  margin-bottom: -1.6em;
  white-space: nowrap;
}

/*===========================================*/
/*== メインコンテンツ ==*/
/*===========================================*/

#main {
  background: url(../../img/top/main_bg.jpg) no-repeat center bottom;
  font-size: 14px;
  padding-bottom: 60px;
}
#main_inner {
  width: 908px;
  margin: 0 auto;
  overflow: hidden;
}
#main_inner #copy {
  text-align: center;
  padding: 80px 0 50px;
}

#main_inner #service {
  overflow: hidden;
  z-index: 10;
  position: relative;
}
#main_inner #service #left {
  width: 460px;
  height: 525px;
  padding: 33px 40px 0;
  float: left;
  background: url(../../img/top/main_bg_left.png) no-repeat 0 0;
}
#main_inner #service #right {
  width: 290px;
  height: 525px;
  padding: 33px 33px 0;
  float: right;
  background: url(../../img/top/main_bg_right.png) no-repeat 0 0;
  color: #fff;
}
#main_inner #service #left h2,
#main_inner #service #right h2 {
  text-align: center;
  margin-bottom: 15px;
  padding: 0;
}

#main_inner #service #left h3 {
  border-top: 1px solid #b2e0e0;
  padding: 10px 0 0 3px;
  margin-bottom: 15px;
}

#main_inner #service #left #address {
  width: 250px;
  float: left;
  margin-top: 30px;
}
#main_inner #service #left #search_list {
  border-color: #c1c6c0;
  border-width: 1px;
  -moz-border-radius: 3%;
  -webkit-border-radius: 3%/3%;
  border-radius: 3%/3%;
  border-style: solid;
  padding: 12px;
  margin-bottom: 10px;
}
#main_inner #service #left #search_list ul {
  overflow: hidden;
}
#main_inner #service #left #search_list ul li {
  float: left;
  width: 50%;
}

#main_inner #service #left #search_more {
  width: 250px;
}
#main_inner #service #left #search_more ul {
  width: 260px;
  margin-left: -10px;
  overflow: hidden;
}
#main_inner #service #left #search_more ul li {
  width: 120px;
  float: left;
  margin-left: 10px;
  padding-top: 15px;
  background: url(../../img/top/main_bg_searchmore.png) no-repeat center 0;
}

#main_inner #service #left #mole {
  width: 190px;
  float: right;
  margin-top: 30px;
}
#main_inner #service #left #mole p {
  margin-bottom: 10px;
}

#main_inner #company {
  width: 820px;
  margin: -25px auto 30px;
  padding: 40px 40px 30px;
  background: rgba(255, 255, 255, 0.85);
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#CCffffff,EndColorStr=#CCffffff);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#CCffffff,EndColorStr=#CCffffff)";
  z-index: 1;
  float: nono;
  clear: both;
  overflow: hidden;
}
#main_inner #company #center h2 {
  text-align: center;
}
#main_inner #company #center + p {
  margin-top: 30px;
}
#main_inner #company:not(:target) {
  filter: none;
  -ms-filter: none;
}

#main_inner #company #left {
  width: 370px;
  float: left;
}
#main_inner #company #right {
  width: 370px;
  float: right;
}
#main_inner #company #left h2,
#main_inner #company #right h2 {
  text-align: center;
  margin-bottom: 20px;
}

#main_inner #result {
  width: 840px;
  margin: 0 auto;
  padding: 30px;
  background: rgba(255, 255, 255, 0.85);
  filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#CCffffff,EndColorStr=#CCffffff);
  -ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#CCffffff,EndColorStr=#CCffffff)";
  overflow: hidden;
}
#main_inner #result:not(:target) {
  filter: none;
  -ms-filter: none;
}

#main_inner #result h2 {
  border-top: 1px solid #b2e0e0;
  padding: 15px 0 0 0;
  margin-bottom: 20px;
}
#main_inner #result #list {
  width: 840px;
}
#main_inner #result #list ul {
  width: 860px;
  margin-left: -20px;
  overflow: hidden;
}
#main_inner #result #list ul li {
  width: 195px;
  margin-left: 20px;
  float: left;
  font-size: 12px;
}
#main_inner #result #list h3 {
  margin: 15px 0;
}

/*===========================================*/
/*== 下コンテンツ ==*/
/*===========================================*/

#bottom {
  width: 900px;
  margin: 0 auto;
  padding: 60px 0;
  overflow: hidden;
}

#bottom #recommend {
  width: 510px;
  float: left;
}
#bottom #recommend h2 {
  border-top: 1px solid #b2e0e0;
  padding: 15px 0 0 3px;
  margin-bottom: 20px;
}
#bottom #recommend #list {
  width: 510px;
}
#bottom #recommend #list ul {
  width: 525px;
  margin-left: -15px;
  overflow: hidden;
}
#bottom #recommend #list ul li {
  width: 160px;
  margin-left: 15px;
  float: left;
  font-size: 12px;
  line-height: 1.4;
  padding-bottom: 20px;
}
#bottom #recommend #list .photo {
  width: 159px;
  height: 159px;
  display: block;
  border: 1px solid #ccc;
}
#bottom #recommend #list .copy {
  display: block;
  margin: 7px 0;
  font-size: 14px;
}

#bottom_right {
  width: 348px;
  float: right;
}

#bottom #start {
  width: 344px;
  border: 2px solid #1ca4a4;
  margin-bottom: 20px;
}
#bottom #start ul {
  margin: 15px 20px;
}
#bottom #start ul li {
  padding-left: 14px;
  background: url(../../img/top/icon.jpg) no-repeat left 4px;
  font-size: 14px;
  margin-bottom: 3px;
}

#bottom_right #clumn {
  width: 348px;
  background: #da5019 url(../../img/top/clumn_bg.jpg) no-repeat 0 111px;
  padding-bottom: 10px;
}
#bottom_right #clumn ol {
  width: 290px;
  margin: 0 auto;
  padding: 15px 18px;
  background: #fff;
  border: 1px solid #c54616;
  font-weight: bold;
  list-style: decimal;
}
#bottom_right #clumn ol li {
  margin-left: 2.5em;
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 10px;
}
/*20150522-----------------------------------------------------*/

#bottom {
  width: 900px;
  margin: 0 auto;
  padding: 20px 0;
  overflow: hidden;
}
#seminar_schedule {
  background-color: #e31f3c;
  height: 190px;
  display: block;
  width: 900px;
  /* position: absolute; */
  /* top: 2140px; */
  margin: auto 0 40px 0;
  padding: 5px 0 0 0;
}
#seminar_schedule h2 {
  margin: 0 0 0 15px;
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
}
#seminar_schedule .seminar_box {
  /* z-index: 1; */
  width: 890px;
  margin: 0px auto;
  height: 157px;
  border: 1px solid #c2c2c2;
  overflow: scroll;
  background-color: #ffffff;
}
#seminar_schedule .seminar_box table.seminar_list {
  margin: 0 20px;
  font-size: 13px;
  line-height: 0.9em;
  width: 95%;
}
#seminar_schedule .seminar_box table.seminar_list th {
  /*  font-weight: bold;*/
  vertical-align: text-top;
  padding: 14px 0px 0px 20px;
  text-align: left;
  border-bottom: 1px dotted #ccc;
  width: 240px;
}
#seminar_schedule .seminar_box table.seminar_list td {
  vertical-align: text-top;
  padding: 14px 0 10px 20px;
  text-align: left;
  border-bottom: 1px dotted #ccc;
}
/*20150731メディカルシティシリーズ-----------------------------------------------------*/
#main {
  background-color: #c2d9e7;
}
#main #main_inner .medical_city {
  background-color: #3fafb3;
  width: 900px;
  height: 375px;
  margin: auto;
  margin-top: 20px;
}
#main #main_inner .medical_city p.ttl {
  text-align: center;
  padding-top: 19px;
  margin-top: 0px;
}
#main #main_inner .medical_city ul {
  margin: 15px auto 8px;
}
#main #main_inner .medical_city ul li {
  float: left;
  width: 289px;
  height: 268px;
  margin-left: 8px;
}
#main #main_inner .medical_city ul li a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
  background: #fff;
}

/*===========================================*/
/*== 休業期間お知らせ ==*/
/*===========================================*/

.news_bg {
  width: 900px;
  height: 40px;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
  margin: 18px 0px -58px 10px;
  z-index: 0;
  display: none;
}
.infobox {
  margin-top: -55px;
  margin-bottom: -41px;
  z-index: 10;
  /* 見出しの文字数で前後の線が文字と重なるため、背景を画像からcssで表示
	background-image:url(../../img/top/bg_info.png); */
  background-color: rgba(255, 255, 255, 0.89);
  width: 880px;
  font-size: 14px;
  /*20170420 休業お知らせの欄の下部余白調整のため　230px→125pxへ変更*/
  /* height:600px; */
  /* コンテンツに対しお知らせ部分を自動調整適用 */
  min-height: 20px;
  z-index: 10;
  padding: 10px;
  -webkit-font-smoothing: antialiased;
}

/*見出し前後の線*/
.infobox h2 {
  display: flex;
  align-items: center;
  padding-left: 90px;
  padding-right: 90px;
  font-size: 18px;
}

.infobox h2:before,
.infobox h2:after {
  border-top: 1px solid;
  content: "";
  flex-grow: 1;
}
.infobox h2:before {
  margin-right: 1rem;
}
.infobox h2:after {
  margin-left: 1rem;
}
.infobox p {
  line-height: 1.3em;
  padding-left: 43px;
  margin-bottom: 30px;
}
.infobox h2,
.infobox p span.day {
  color: #ff8400;
  font-weight: bold;
}

/*20150812メディカルシティシリーズ修正-----------------------------------------------------*/
#body_top.n_body_top {
  background: url(../../img/top/body_bg_n.jpg) repeat-x 0 0 #fff;
}
#header.n_header {
  background: url(../../img/top/header_bg_n.jpg) no-repeat center 0;
  height: 330px;
  margin-top: 14px;
}
#header.n_header #header_inner h1 {
  padding: 42px 30px 35px 0;
}
h1.n_logo {
  margin-top: -20px;
  padding-top: -20px;
}
#copy.n_copy {
  margin-top: -20px;
}
#header.n_header #news {
  margin-top: -40px;
}
.news_bg2 {
  margin-bottom: -16px;
}
#main_inner #copy.n_copy {
  text-align: center;
  padding: 50px 0 50px;
}
#main_inner #service #left.n_left {
  width: 830px;
  height: 385px;
  padding: 33px 33px 0;
  float: none;
  background: none;
  background: #eef5f9;
  background: rgba(255, 255, 255, 0.7);
}
#main_inner #service #left #address.n_address {
  width: 450px;
  float: left;
  margin-top: 0px;
  margin-right: 40px;
}
#main_inner #service #left #address.n_address p {
  margin-bottom: 30px;
}
#main_inner #service #left #search_list.n_search_list ul li {
  width: 25%;
}
#main_inner #service #left #search_more.n_search_more ul {
  width: 500px;
}
#main_inner #service #left #search_more.n_search_more ul li {
  width: 230px;
  margin-left: 10px;
}
#main_inner #service #left #search_more.n_search_more ul li:last-child {
  margin-left: 0;
}
#main_inner #service #left #search_more.n_search_more ul li a {
  text-decoration: none;
}
.n_btn {
  display: block;
  width: 210px;
  text-align: center;
  padding: 5px;
  background: #ff9934;
  color: #ffffff;
  border-radius: 3px;
}
.n_btn:hover {
  background: #ffbf80;
}
#main_inner #service #right.n_right {
  width: 830px;
  height: 440px;
  float: none;
  background: url(../../img/top/bg_about.png) no-repeat 0 0;
  position: relative;
  text-indent: -9999px;
}
#main_inner #service #right.n_right p {
  text-indent: 0;
  margin-top: 300px;
}

.medical_city_flex {
  display: flex;
  justify-content: center;
}

/*お知らせ自動取り下げ-----------------------------------------------------*/
.js-time-limited-fire {
  display: none;
}