/* ov add */
.hd-cover-fix-rb{
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 30px 40px 20px 40px;
    background: #edf6ff;
    border-radius: 7px 0 0 0;
    width: 370px;
    color: #555;
}
.hd-cover-fix-rb .round-lbl {
    font-size: 18px;
    color: #ffffff;
    background-color: #0361f9;
    border-radius: 6px;
    padding: 10px 14px;
    text-align: center;
}

.mobile-ft-fix {
  width:100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 99;
  background: #fff;
  color: #353543;
}
.mobile-ft-fix a { color: #353543; text-decoration: none; }
.mobile-ft-fix i { margin-right: 7px; }
.mobile-ft-fix .wp-block-columns { gap:0; }
.mobile-ft-fix .wp-block-column { padding: 10px 0; }
.mobile-ft-fix .wp-block-column > p { padding: 10px; }
.mobile-ft-fix .access > p { border-left: 1px dotted #353543; border-right: 1px dotted #353543; }

.mobile-ft-fix .tel i { color: #5BC0DE; }
.mobile-ft-fix .access i { color: #FFB400; }
.mobile-ft-fix .recruit i { color: #5CB85C; }

.greeting-right-img img { margin-left: 25px; margin-bottom: 12px; width: 160px; }
.copyright { text-align: right; }

/* Mobile Portrait View */
@media screen and (max-width:767px) {
	*{box-sizing:border-box;}
	.wp-block-group.Hdr-Top-Strip{ padding:0 20px !important;}

	.wp-block-group.Banner-Caption h2{ font-size:30px !important;}
	.wp-block-navigation__responsive-container.is-menu-open.has-modal-open{ padding:25px;}
	.top-fourbx{ margin-bottom:20px !important;}
	.wp-block-group.about-BlueBX{ position:relative !important; right:0 !important; padding:15px !important;}
	.About-head{ font-size:30px !important;}
	.about-last-2col{ margin-bottom:20px !important;}

	/* ov add */
	.hd-top-buttons { margin-left: -20px; margin-right: -20px; }
    .hd-top-buttons > .wp-block-button, .sp-full-btn > .wp-block-button {
        flex-basis: 100% !important;
    }
    .hd-top-buttons > .wp-block-button > a, .sp-full-btn > .wp-block-button > a {
        display: block;
    }
    .page-navi-btns > .wp-block-button {
        flex-basis: 100% !important;
    }
    .page-navi-btns > .wp-block-button > a {
        display: block;
    }

   .wp-block-group.Hdr-Top-Strip .is-layout-flex { gap: 0; }
   .xs-hide{ display: none !important; }
   .xs-disp{ display: block !important; }

    /* 767px未満でカラムが横並び解除になるように設定 */
 	.wp-block-columns {
        flex-wrap: wrap !important;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }

    /* スマホナビ関連 */
    .my-mobile-nav {
      margin: 0;
    }

    .my-mobile-nav .wp-block-navigation__responsive-container-open {
    	background: #103195;
    	padding: 4px 8px;
    	margin-top: 10px;
    }
    .my-mobile-nav .wp-block-navigation__responsive-container-open svg {
    	height: 40px;
    	width: 40px;
    	fill: #fff;
	}
	.my-mobile-nav.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
    	background-color: #103195;
	}

	.my-mobile-nav.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open {
    	color: #fff;
	}
	.my-mobile-nav .wp-block-navigation__responsive-container-close {
	    left: 0;
	    right: auto;
	}
	.my-mobile-nav .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
    	align-items: start;
	}
	.my-mobile-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
		align-items: flex-start;
	}
	
	.my-mobile-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
    	padding: 6px 0;
    }
    
    .my-mobile-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,
    .my-mobile-nav .wp-block-navigation .wp-block-navigation-item {
    	align-items: start;
 	}
 	.my-mobile-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
 		padding-top: 0;
    	padding-left: 15px;
    	padding-right: 15px;
	}

	footer { padding-bottom: 60px; }
	footer .cfc-phone, footer .cfc-phone a { font-size: 24px !important; }
	.font-medium-sp1 { font-size: 1.2em !important; }
	.font-medium-sp2 { font-size: 1.6em !important; }
	.section-title { font-size: 1.3em; }
	.section-title-xs-small{ font-size: 1.1em !important; }
	.fs-xs-small{ font-size: 1em !important; }
	.greeting-noline { font-size: 1.3em; }
	.box-title { font-size: 1rem; }
	.doctor-list h3{ font-size: 1.3em; }
	.copyright { text-align: left; }
	h2.page-title { font-size: 24px !important; }
	/* ov addednd */
}

@media (max-width: 768px) {
}

@media screen and (max-width: 1024px){
    /* home main cover */
    .home-main-cover {
      min-height: auto !important;
      display: block !important;
      position: relative;
    }
    .hd-cover-fix-rb {
        position: relative;
        bottom: auto;
        right: auto;
        padding: 30px;
        background: #fff;
        border-radius: 0;
        width: auto;
        margin: 0;
    }    
    .home-main-cover .wp-block-cover__image-background {
      height: auto;
      display: block;
      position: relative;
      left: auto;
      right: auto;
      top: auto;
      bottom: auto;
    }
    .home-main-cover .has-background-dim {
    	display: none;
    }
    .doctor-list .wp-block-table,
    .tbl-responsive .wp-block-table {
        width: 100%;
        overflow-y: hidden;
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
    .doctor-list th, .doctor-list table td { min-width: 120px; }
	.tbl-responsive th, .tbl-responsive table td { min-width: 160px; }
	
	.rpd-clear { padding-right: 0 !important; }
}

/* Tablet View */
@media screen and (min-width:768px) and (max-width: 1024px){
   .sm-hide{ display: none !important; }
   .sm-disp{ display: block !important; }

	.fse-overlap-image{ position:relative !important; right:auto !important; bottom:auto !important; margin:25px 0 !important;}
	.wp-block-section-01 h2, .wp-block-section-02 h2{ font-size:28px !important; }
	.wpcf7 input[type="text"], 
	.wpcf7 input[type="tel"], 
	.wpcf7 input[type="email"], 
	.wpcf7 textarea{ 
		width:100%;
	}

 	.home-post-section .wp-block-columns {
        flex-wrap: wrap !important;
    }
    .home-post-section .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }

	.home-section-point .wp-block-columns {
        flex-wrap: wrap !important;
    }
    .home-section-point .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        /*flex:0 0 48.33% !important;*/
        flex-basis: 48.33% !important;
		max-width: 48.33%;
        flex-grow: 1 !important;
    }

 	.sm-col-1 .wp-block-columns {
        flex-wrap: wrap !important;
    }
    .sm-col-1 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 100% !important;
    }
	.sm-col-2 .wp-block-columns,
	.sm-col-2-1 .wp-block-columns {
        flex-wrap: wrap !important;
    }
    .sm-col-2 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 45.7% !important;
		max-width: 45.7%;
        flex-grow: 1 !important;
    }
    .sm-col-2-1 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
        flex-basis: 44.7% !important;
		max-width: 44.7%;
        flex-grow: 1 !important;
    }
    .sm-col-2-1 .top-fourbx {
        margin-bottom: 20px !important;
    }
    
    /* 2025.09.12 add */
	.hd-top-buttons > .wp-block-button,
	.hd-top-buttons > .wp-block-button > a {
		width:100%;
	}
}

/* PC View */
@media screen and (max-width:1200px) and (min-width:1024px) { 
	html{overflow-x:hidden; }
   .md-hide{ display: none !important; }
   .md-disp{ display: block !important; }
}

/* ov add large pc view */
@media (min-width: 1200px) {
	.lg-hide { display: none !important; }
	.lg-disp { display: block !important; }
}
@media (max-width: 1370px) {
  .side-contact-info { display: none !important; }
}


