@charset "UTF-8";
/* ------------------------------
　　ベース
------------------------------ */
body {
    font-size: 16px;
    font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

p {
         font-size: 16px;   
    margin-top: 0;
    margin-bottom: 30px;

    line-height: 1.7;
}
@media (min-width: 1024px){
.header-logo {
    padding: 0 0 0 20px;
}}

.navbar-side {
    font-size: 1em;
        right: 40px;

}
@media (min-width: 768px){
.site-name {
    font-size: 30px;
}}
.site-name {
    margin: 15px 10px;
}
.site-name,.site-name a, .site-name a:active, .site-name a:focus, .site-name a:hover, .site-name a:visited{
    color: #0074e8;
}
.navbar ul {
    margin: 0;
    padding: 20px 40px 0 0;
    list-style: none;
}
@media (min-width: 1440px){
.navbar ul li a {
    font-size: 18px;
}}
@media (min-width: 1024px){
.navbar li a {
    padding:0 15px;
}}
@media (min-width: 1024px){
.navbar a.btn-attention {
    background: #0074e8;
    padding: 10px 15px;
    border-radius: 0px;
}}
.navbar-side-list{
    background: #3894ed;
    padding: 5px 10px;
}


.main-visual {
background-position:50%;
backgroud-size: cover;
background-repeat:no-repeat ;
}
.main-visual-title{
text-shadow: 2px 2px 2px black, 2px 2px 2px black, 2px 2px 2px black, 2px 2px 2px black;
}

/* 見出し */
.acms-page-header {
    border-style:none;
}
@media screen and (min-width: 768px) {
h1{
    font-size: 2.4em;
}}


.entry-column h3 {
    font-size: 1.6em;
    padding: 20px 10px;
    background: #fff;
    border-left:6px solid #3894ed;
}
@media screen and (min-width: 768px){
.entry-column h3 {
    margin: 20px 10px 20px;
}}
.entry-column h4{
    color:#213f99;
    font-size: 1.4em;
}
/* モジュール見出し */
.module-header {
    position: relative;
    margin: 0;
    padding: 10px;
     border-style:none;
    color: #213f99;
}
.main .module-heading{
 font-size: 1.4em;   
}


.side .module-header {
    position: relative;
    margin: 0;
    padding: 10px;
     border:2px solid #213f99;
    color: #213f99;
}

.section-heading{
	color:#000;
}
.module-group-heading {
    margin: 0 0 20px;
    font-size: 18px;
    line-height: 1.2;
    color:#0074e8;
}
.entry-column h2.entry-heading-center:before {
    background: #0074e8;/*main-color*/
}

.btn {
    animation: fade-in .2s 1.2s 1 both;
}
.btn {
    opacity: 0;
    will-change: transform,opacity;
}
@media screen and (min-width: 768px)
.btn {
    font-size: 18px;
}
.btn {
    position: relative;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    background: #fff;
    color:#333;
}


.btn:after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 0 0 10px;
    background: #3894ed no-repeat;
    background-image: url(../../images/arrow-border-white-32px.svg);
    background-position: 50%;
    background-size: 5px 10px;
    border-radius: 100%;
}
.btn:hover,
.btn:visited {
	color: #3894ed;
	text-decoration:none ;
}
.btn:focus,
.btn:active {
	color: #3894ed;
	-webkit-box-shadow: none;
	        box-shadow: none;
}
.btn:hover {
	color: #3894ed;
	background-color: #fff;
	background-image: none;
	background-image: none;
}
.btn:active,
.btn:focus {
	background: fff;
}


.foot-wrapper {
    padding: 30px 0;
    background: #3894ed;
}
.company-name {
	font-weight: 700;
    margin: 0 0 15px;
    color: #fff;
    font-size: 20px;
    font-style: normal;
}
.footer-nav-item {
    width: 33%;
}
.footer-nav-title {
    font-size: 18px;
    margin-right:10px;
    padding-left:5px;
}
.footer-nav-list a {
    color: #fff;
    padding-left:5px;
}
.footer-nav {
    float: right;
    width: 800px;
    max-width: 100%;
    margin: 0 -10px;
}

@media screen and (max-width: 767px) {
	.footer-nav {
		display: block;
	}}
	@media screen and (max-width: 480px){
	.footer-nav-item {
	width: 100%;
}}

@media screen and (max-width: 480px){
.footer-nav-list{
	font-size: 1.2em;
}}
.suggest-tel {
    color: #003774;
      font-size: 1.8em;
}

.entry-column .entry-btn-default, .entryFormLiteEditor .entry-btn-default {
    background: #0074e8;
    padding: 10px 15px;
    border-radius: 0px;
}
.entry-column .entry-btn-default:hover,
.entryFormLiteEditor .entry-btn-default:hover {
    color: #FFF;
    background-color: #3894ed;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#3894ed), to(#3894ed));
    background-image: linear-gradient(to bottom, #3894ed, #3894ed);
}
.entry-column .entry-btn-default::after, .entryFormLiteEditor .entry-btn-default::after {
    font-family: "Font Awesome 5 Free";
  content: "\f101";
  margin-left: 1em;
}


.entry-column th {
    background: #f5f5f5;
        white-space: nowrap;
}
.entry-column td {
    background: #fff;
    }
.entry-column td, .entry-column th {
    border: 1px solid #3894ed;
}

.entry-info time{
    color:#3894ed;
    font-weight: 700;
}
.acms-label {
    display: inline-block;
    padding: 2px 5px;
    color: #fff;
    line-height: 1.3;
    vertical-align: middle;
    background-color: #0074e8;
    border-radius: 3px;
    font-size: 11px;
}
a.acms-label:active, a.acms-label:focus, a.acms-label:link, a.acms-label:visited{
    color:#fff;
}

.top-info-title{
    font-weight: 700;
    text-align: center;
    color:#0074e8;
    font-size: 1.1em;
}

.top-info-text{
	font-weight: 700;
}

.clinic-list-title{
   color: #213f99;
   font-size: 1.4em;
}

.medical-table{
    width:100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ddd;
    background: #fff;
    font-size: 16px;
}
@media screen and (min-width: 768px){
.medical-table th {
    white-space: nowrap;
    width:300px;
}}
.medical-table th {
    text-align: left;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-weight: bold;
    font-size: 1em;
    background-color: #f2f5fc;
       padding: 10px 10px 5px;
}
@media screen and (max-width: 480px){
 .medical-table th{
      font-size: 0.8em; 
 }   
}
.medical-table td {
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
       padding: 10px 10px 5px;
           font-weight: bold;
}
table.medical-table-responsive{
    border-collapse : collapse;
    margin-bottom: 20px;
}
.medical-table-responsive td,
.medical-table-responsive th{
    background: #fff;
}

@media screen and (max-width: 480px) {
  .medical-table-responsive {
    width: 90%;

  }
  .medical-table-responsive th,
  .medical-table-responsive td {
    display: block;
      border-bottom: none;
        }
    table.medical-table-responsive tr:last-child td{
    border-bottom:1px solid #3894ed;
    }
}

.realestate-search-group{
box-sizing: border-box;
width: 100%;
border: solid #5B6DCD 5px;
padding: 5px;
margin-bottom:20px;
}
.realestate-search-group, .realestate-search-item {
    display: block;
}
@media (min-width: 768px){
.acms-form select {
    min-height: 26px;
    padding: 10px 30px 10px 10px;
    font-size: 14px;
}}
.realestate-search-label {
    max-width: 6em;
    padding: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.object-checkbox {
    width:180px;
}

.acms-admin-form-checkbox{
    font-size: 1.2em;
    line-height: 1.8em;
}
}

.btn-medical-search{
    font-size: 1.4em;
    width:100%;
    max-width:100px;
    background: #fff;
    border:3px solid #5B6DCD;
    font-weight: 700;
    border-radius: 3px;
    padding:5px 3px;
}
.medical-object-title{
    display: block;
    font-size: 1.2em;
    font-weight: 700;
    text-align: center;
    border-bottom: 1px solid #e5e5e5;
    margin: 20px 5px 10px;
    padding: 5px;
}
/* sideー検索モジュール */
.search-form .btn-search {
    background: #213f99;
    border: 1px solid #213f99;
}
.side input[type=search].search-form-input {
    font-size: 16px;
}
@media (min-width: 768px){
.acms-form input[type=date], .acms-form input[type=datetime-local], 
.acms-form input[type=datetime], .acms-form input[type=email],
 .acms-form input[type=month], .acms-form input[type=number], 
 .acms-form input[type=password], .acms-form input[type=search], 
 .acms-form input[type=tel], .acms-form input[type=text], .acms-form input[type=time],
  .acms-form input[type=url], .acms-form input[type=week] {
    min-height: 26px;
    padding-right: 4px;
    padding-left: 4px;
    font-size: 16px;
}}

.card-link {
    display: block;
    margin: 0 auto;
    padding: 10px;
    color: #333;
}

@media screen and (min-width: 768px){
.googlemap {
    position: relative;
    width: 100%;
    height: 500px;

}}
.border-radius {
  width: 10px;
  height: 10px;
  background-color: red;
  border-radius: 50%;
  color: #fff;
  text-align: center;
}

.notfound{
    font-weight: bold;
}

.original-list-group {
      display: flex;
    flex-wrap: wrap;
    justify-content: left;
    width: 100%;
}
.original-list-group-item {
    color: #213f99;
    font-size: 1.1em;
    border: 1px solid #213f99;
    display: table;
    line-height: 200%;
    margin: 0.2em;
    text-align: center;
    width: 280px;
}
.original-list-group-item:link,.original-list-group-item:visited,
.original-list-group-item:hover,.original-list-group-item:active{
    color: #213f99;
}
/*ページャーサイズ*/
@media screen and (min-width: 768px){
.serial-nav a {
font-size: 1.2em;
}}

.btn-square-pop {
    max-width: 500px;
  position: relative;
  display: block;
  padding: 1em 1em;
  text-decoration: none;
  color: #FFF;
  background: #213f99;/*背景色*/
  border-bottom: solid 2px #213f99;/*少し濃い目の色に*/
  border-radius: 4px;/*角の丸み*/
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  font-weight: bold;
  font-size: 1.2em;
  margin-left:auto;
margin-right:auto;
text-align: center;
}

a.btn-square-pop:active {
  border-bottom: solid 2px #fff;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
  color: #fff;
}
a.btn-square-pop:link,
a.btn-square-pop:visited,
a.btn-square-pop:hover{
    color:#fff;
}
.btn-square-pop::after{
  font-family: "Font Awesome 5 Free";
  content: "\f101";
  margin-left: 1em;
}

.medical-object-title-naika,
.medical-object-title-geka,
.medical-object-title-syoni,
.medical-object-title-hifu,
.medical-object-title-ganka,
.medical-object-title-other,
.medical-object-title-all {
border-bottom: 1px solid #ddd;
margin-top: 40px;
margin-bottom: 10px;
padding-bottom: 5px;
}
.medical-object-title-naika span{/*内科*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #ff0000;
    border-top: solid 1px #ff0000;
    border-right: solid 1px #ff0000;
    border-left: solid 1px #ff0000;
    border-radius: 5px 5px 0 0;
}
.medical-object-title-geka span{/*外科*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #0070c0;
    border-top: solid 1px #0070c0;
    border-right: solid 1px #0070c0;
    border-left: solid 1px #0070c0;
    border-radius: 5px 5px 0 0;
    }
.medical-object-title-syoni span{/*小児科産婦人科*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #ff99ff;
    border-top: solid 1px #ff99ff;
    border-right: solid 1px #ff99ff;
    border-left: solid 1px #ff99ff;
    border-radius: 5px 5px 0 0;
    }
.medical-object-title-hifu span{/*皮膚科耳鼻科*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #00b050;
    border-top: solid 1px #00b050;
    border-right: solid 1px #00b050;
    border-left: solid 1px #00b050;
    border-radius: 5px 5px 0 0;
    }
.medical-object-title-ganka span{/*眼科精神科*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #333;
    background-color: #ffff00;
    border-top: solid 1px #ffff00;
    border-right: solid 1px #ffff00;
    border-left: solid 1px #ffff00;
    border-radius: 5px 5px 0 0;
    }
.medical-object-title-other span{/*その他*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #ffc000;
    border-top: solid 1px #ffc000;
    border-right: solid 1px #ffc000;
    border-left: solid 1px #ffc000;
    border-radius: 5px 5px 0 0;
    }
.medical-object-title-all  span{/*総合*/
    padding: 5px 10px;
    font-weight: 700;
    font-size: 1.2em;
    color: #fff;
    background-color: #7030a0;
    border-top: solid 1px #7030a0;
    border-right: solid 1px #7030a0;
    border-left: solid 1px #7030a0;
    border-radius: 5px 5px 0 0;
    }