@charset "utf-8";
/*
 * Copyright 2022 マサクリエイツ
 * https://www.masa-cr.com/
 *
 * Breakpoint
 * 576px(sm) 768px(md) 992px(lg) 1200px(xl) 1400px(xxl)
 */
/* ------------------------------
	初期設定
------------------------------ */
html {
	line-height: 1.75;
	font-size:15px;
	font-family: 'Open Sans', 'Noto Sans JP', sans-serif;
	color:#4d4537;
	background-color:transparent;
}
blockquote {border:dotted 1px #999}
dl {border:solid 1px #ccc}
table {border-top:solid 1px #ddd}
caption {background: #999;color: #fff}
th {background: #f6f6f6;border-bottom:solid 1px #ddd}
td {background:#fff;border-bottom:solid 1px #ddd}
hr {color:#ccc;background-color:#ccc}
fieldset {border:1px solid #ccc}
a {text-decoration:underline;color:#4d4537}
a:visited {}
a:hover {text-decoration:none;color:;}
a:active {text-decoration:none;color:#b8812b}
::-webkit-input-placeholder {color:#999}
:-moz-placeholder {color:#999}
@media screen and (min-width: 576px), print {
    html {font-size:16px}
}


/* ------------------------------
	loading
------------------------------ */
#loading {
    width:100vw;
    height:100vh;
    transition:all 1s;
    background-color:#fff;
    position:fixed;
    top:0;
    left:0;
    z-index:9999;
}
.spinner {
    width:100px;
    height:100px;
    margin:auto;
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-color:#ddd;
    border-radius:100%;
    animation:sk-scaleout 1.0s infinite ease-in-out;
}
/* animation:sk-scaleout */
@keyframes sk-scaleout {
    0% {
        transform:scale(0);
    } 100% {
        transform:scale(1.0);
        opacity:0;
    }
}
.loaded {
    opacity:0;
    visibility:hidden;
}


/* ------------------------------
	レイアウト
------------------------------ */
#container {overflow:hidden}
.mxW {
    max-width:1230px;
    margin-left:auto;
    margin-right:auto;
}
.pdLR {
    padding-left:5%;
    padding-right:5%;
}
.pdLRw {
    padding-left:8%;
    padding-right:8%;
}
.pdT {padding-top:3em}
.pdB {padding-bottom:3em}
.mainSubWrap #sub {
    padding-left:10%;
    padding-right:10%;
}
@media screen and (min-width: 576px), print {
    .pdT {padding-top:4em}
    .pdB {padding-bottom:4em}
}
@media screen and (min-width: 992px), print {
    .pdT {padding-top:5em}
    .pdB {padding-bottom:5em}
    .mainSubWrap {
        display:flex;
        flex-direction:row-reverse;
        gap:0 5%;
        padding-left:3%;
    }
    .mainSubWrap #main {
        flex:1;
    }
    .mainSubWrap #sub {
        width:220px;
        margin-top:4em;
        padding-left:0;
        padding-right:0;
    }
}
@media print {
    #container {width:1000px}
}


/* ------------------------------
	header
------------------------------ */
#header {
    position:relative;
    padding:1em;
    box-shadow:0 0 2em rgba(0,0,0,.2);
}
.headerLogo {
    margin:0;
    padding:0;
    line-height:1;
    width:230px;
}
ul.nav {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-around;
    list-style:none;
    margin:50px 0 0;
    padding:1em 3%;
}
ul.nav li {
    margin:0 0 1em;
    padding:0;
}
ul.nav li.home {
    width:100%;
}
ul.nav li.btn {
    width:100%;
}
ul.nav li a {
    text-decoration:none;
    display:block;
    line-height:1.2;
    text-align:center;
}
ul.nav li a:hover {
    opacity:.7;
}
ul.nav li.btn a {
    font-size:.875em;
    font-weight:bold;
    background:#999;
    color:#fff;
    height:35px;
    padding-top:17px;
    border-radius:10px;
}
ul.nav li.btn.home a {
    background:#fff;
    color:#4d4537;
    border:solid 1px #ccc;
}
ul.nav li.btn.clinic a {
    background:#eb6877;
}
ul.nav li.btn.carecenter a {
    background:#9dc244;
}
ul.nav li.btn.break a br {
    display:none;
}
ul.nav li.btn.space a {
    background:#448aca;
}
ul.nav li.icon {
    border-left:solid 1px #ccc;
    width:24%;
    margin-top:1em;
}
ul.nav li.icon:last-child {
    border-right:solid 1px #ccc;
}
ul.nav li.icon a {
    font-size:.875em;
    padding-top:42px;
    background-repeat:no-repeat;
    background-position:center 3px;
}
ul.nav li.icon.facility a {
    background-image:url('../images/icon_facility.png');
}
ul.nav li.icon.event a {
    background-image:url('../images/icon_event.png');
}
ul.nav li.icon.access a {
    background-image:url('../images/icon_access.png');
}
ul.nav li.icon.contact a {
    background-image:url('../images/icon_contact.png');
}
ul.nav li.btn > ul {
	list-style:none;
	margin:0;
	padding:0;
}
ul.nav li.btn > ul li {
	margin:0;
	padding:;
	border-bottom: dashed 1px #999;
}
ul.nav li.btn > ul li a {
	background:#fff!important;
	color:#4d4537;
	height:auto;
	padding-bottom:17px;
	font-weight:normal;
}

@media screen and (min-width: 992px), print {
    #header {
        display:flex;
        align-items:center;
        padding:1.5em;
    }
    .headerLogo {
        width:300px;
    }
    .nav-wrap {
        flex:1;
    }
    ul.nav {
        justify-content:flex-end;
        margin:0;
        padding:0;
    }
    ul.nav li {
        margin:0;
    }
    ul.nav li.home {
        display:none;
    }
    ul.nav li.btn {
        width:96px;
        margin-right:10px;
    }
    ul.nav li.btn.break a {
        height:42px;
        padding-top:10px;
    }
    ul.nav li.btn.break a br {
        display:inline-block;
    }
    ul.nav li.icon {
        width:72px;
        margin-top:0;
    }
    ul.nav li.icon a {
        font-size:.7em;
        padding-top:38px;
    }
	ul.nav li.btn > ul {
		display:none;
	}
}
@media screen and (min-width: 1200px), print {
    #header {
        padding:1.5em 2.5em;
    }
    ul.nav li.btn {
        width:112px;
    }
    ul.nav li.icon {
        width:84px;
    }
    ul.nav li.btn a {
        font-size:.9375em;
        height:39px;
        padding-top:19px;
    }
    ul.nav li.btn.break a {
        height:47px;
        padding-top:11px;
    }
    ul.nav li.icon a {
        font-size:.75em;
        margin-left:15px;
        margin-right:15px;
        padding-top:42px;
        background-position:center 5px;
    }
    .headerLogo {
        width:365px;
    }
}

/* グローバールメニュー切り替え */
.nav-button {display:none}
.nav-wrap.open {
    display:block;
    opacity:0;
    animation-name:fadein;
    animation-duration:.3s;
    animation-timing-function:ease-out;
    animation-fill-mode:forwards;
}
@keyframes fadein {
    0% {
       opacity: 0;
       transform: translateY(16px);
    }
    100% {
       opacity: 1;
       transform: translateY(0);
    }
}
.nav-wrap.close {display:none}
@media screen and (min-width: 992px), print {
    .nav-wrap {display:block !important}
}
@media screen and (max-width: 991px) {
    .nav-wrap {
        display:none;
        width:100%;
        height:100%;
        position:fixed;
        z-index:100;
        left:0;
        top:0;
        overflow-x:hidden;
        overflow-y:auto;
        background:#fff;
    }
    .nav-button {
        display:block;
        width:30px;
        height:30px;
        position:absolute;
        z-index:101;
        top:16px;
        right:14px;
        cursor:pointer;
    }
    .nav-button.active {position:fixed}
    .nav-button span {
        /*transition:all 0.4s;*/
        display:inline-block;
        width:22px;
        height:2px;
        box-sizing:border-box;
        position:absolute;
        left:4px;
        background:#4d4537;
    }
    .nav-button span:nth-of-type(1) {top:8px}
    .nav-button span:nth-of-type(2) {top:14px}
    .nav-button span:nth-of-type(3) {bottom:8px}
    .nav-button.active span:nth-of-type(1) {
        -webkit-transform: translateY(6px) rotate(-45deg);
        transform: translateY(6px) rotate(-45deg);
    }
    .nav-button.active span:nth-of-type(2) {
        opacity:0;
    }
    .nav-button.active span:nth-of-type(3) {
        -webkit-transform: translateY(-6px) rotate(45deg);
        transform: translateY(-6px) rotate(45deg);
    }
    .nav-wrap .nav {position:relative}
}


/* ------------------------------
	footer
------------------------------ */
#footer a {
    text-decoration:none;
}
#footer a:hover {
    color:#b8812b;
}
ul.subNav {
    margin:0;
    padding:0;
    list-style:none;
    display:flex;
    flex-wrap:wrap;
}
ul.subNav li {
    margin:0 0 1em;
    padding:1em;
    width:50%;
    text-align:center;
    box-sizing:border-box;
    border-left:solid 1px #b8812b;
}
ul.subNav li:nth-child(even),
ul.subNav li:last-child {
    border-right:solid 1px #b8812b;
}
ul.subNav li a {
    text-decoration:none;
}
.footer {
    background:url('../images/back_footer.png') repeat-x center top #f5e7d0;
    padding-top:10em;
}
.footer .mxW {
    max-width:268px;
}
ul.footerNav {
    margin:0;
    padding:1.5em 0;
    list-style:none;
    border-top:solid 2px #fff;
    position:relative;
}
ul.footerNav::before {
    content:"";
    display:block;
    width:1.5em;
    height:2px;
    background:#b8812b;
    position:absolute;
    top:-2px;
}
ul.footerNav li {
    margin-bottom:1em;
}
#pagetop a {
    display:block;
    text-align:center;
    padding:.5em;
    font-size:1.2em;
    color:#b8812b;
}
@media screen and (min-width: 576px), print {
    .footer .mxW {
        display:flex;
        max-width:1230px;
    }
    .footer nav {
        display:flex;
        gap:0 10%;
    }
    ul.footerNav {
        width:100%;
    }
    ul.footerNav li {
        margin-bottom:.8em;
    }
    .copyright {
        display:flex;
    }
    .copyright > div:first-child {
        flex:1;
    }
}
@media screen and (min-width: 768px), print {
    .footer {
        padding-top:12em;
    }
    #pagetop {
        position:fixed;
        right:1em;
        bottom:1em;
        width:40px;
    }
    #pagetop a {
        font-size:30px;
        padding:5px 0 0;
        height:35px;
        position:relative;
        top:0;
        line-height:1;
    }
    #pagetop a:hover {
        padding-top:0;
        height:40px;
    }
}
@media screen and (min-width: 992px), print {
    ul.subNav li {
        width:16.666%;
        margin-bottom:0;
    }
    ul.subNav li:nth-child(even) {
        border-right:none;
    }
    ul.subNav li:last-child {
	    border-right:solid 1px #b8812b;
    }
}


/* ------------------------------
	pageTitle / eyecatch
------------------------------ */
.pageTitle {
    margin:0;
    padding:2em 5%;
    border-bottom:solid 1px #b8812b;
    font-weight:normal;
    background:url('../images/back_pagetitle-circle.png') no-repeat right -45px center;
    background-size:170px;
}
.indexEyecatch {
    position:relative;
    text-align:center;
    width:100%;
}
.indexEyecatch .backSlideWrap,
.indexEyecatch .backSlide,
.indexEyecatch .catchcopy {
    height:18em;
}
.indexEyecatch .catchcopy {
    position:relative;
    text-align:center;
    background:#faf4eb;
}
.indexEyecatch .catchcopy::after {
    /*content:"";
    display:inline-block;
    width:1px;
    height:5em;
    background:#b8812b;
    position:absolute;
    bottom:-2.5em;*/
}
.indexEyecatch .catchcopy span {
    font-size:.9333em;
}
.indexEyecatch .catchcopy img {
    padding:2.5em 0 1em;
}
.pageEyecatch {
	overflow:hidden;
	border-radius:0 0 2em 2em;
}
@media screen and (min-width: 768px), print {
    .pageTitle {
        background-position:right 5% center;
        background-size:250px;
    }
    .indexEyecatch,
    .indexEyecatch .backSlideWrap,
    .indexEyecatch .backSlide,
    .indexEyecatch .catchcopy {
        height:32em;
    }
    .indexEyecatch .backSlideWrap,
    .indexEyecatch .catchcopy {
        width:100%;
        position:absolute;
        top:0;
    }
    .indexEyecatch .catchcopy {
        font-size:1em;
        background:transparent;
    }
    .indexEyecatch .catchcopy::after {
        /*content:none;*/
    }
    .indexEyecatch .catchcopy img {
        width:160px;
        padding:8em 0 1em;
    }
    .indexEyecatch .catchcopy span {
        display:inline-block;
        background:#fff;
        padding:1px .25em 1px .75em;
        margin-top:1em;
        line-height:1.4;
    }
}
@media screen and (min-width: 992px), print {
    .indexEyecatch,
    .indexEyecatch .backSlideWrap,
    .indexEyecatch .backSlide,
    .indexEyecatch .catchcopy {
        height:44em;
    }
    .indexEyecatch .catchcopy span {
        font-size:1.125em;
    }
    .indexEyecatch .catchcopy img {
        width:229px;
        padding:12em 0 1em;
    }
}

/* ------------------------------
	sub
------------------------------ */
ul.breadcrumb {
    margin:0 0 2em;
    padding:0;
    list-style:none;
}
ul.breadcrumb li::before {
    content:"\f0da";
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    margin-left:.2em;
    margin-right:.2em;
    color:#b8812b;
}
ul.breadcrumb li:last-child {
    color:#aaa;
}
ul.breadcrumb li:last-child:before {
    content:none;
}
ul.breadcrumb li a {
    text-decoration:none;
}

/* ------------------------------
	main
------------------------------ */
.hentry th,
.hentry td {
	border:solid 1px #b8812b;
}
.hentry th {
	background:#faf4eb;
}
table.txa_c td,
table.txa_c th {
	text-align:center;
}
.shadowBox {
    box-shadow:1em 1em 2em rgba(0,0,0,.2);
    border-radius:1em;
    overflow:hidden;
}
.inline-title {
    background:#f0f0f0;
    padding:3px .6em;
    font-weight:bold;
}
a.tel-number {
    display:inline-block;
    font-size:1.25em;
    font-weight:bold;
    text-decoration:none;
    vertical-align:-2px;
    color:#666;
}
a.tel-number .fas {
    font-size:.833em;
    margin-right:.25em;
    vertical-align:1px;
}
table.shinryojikan {
    width:100%;
    border:none
}
table.shinryojikan th,
table.shinryojikan td {
    text-align:center;
    line-height:1.4;
    border-color:#ccc;
    padding:.6em .3em;
    vertical-align:middle;
}
table.shinryojikan th {
    background:#999;
    color:#fff;
    border:none;
    border-right:solid 1px #fff;
    width:8%;
}
table.shinryojikan th:first-child {
	width:auto;
}
table.shinryojikan td {
    border-left:none;
    border-right:none;
}
table.shinryojikan td:first-child span {
	display:block;
}
.shinryojikan .naika {
	color:#6fb0e0;
}
.shinryojikan .shonika {
	color:#f69897;
}
@media screen and (min-width: 768px), print {
	table.shinryojikan td:first-child span {
		display:inline-block;
		margin-left:.5em;
	}
}

.widget-title,
.widget .wp-block-heading {
    font-size:1em;
    padding:.5em;
    background:#faf4eb;
}
.widget-sidebar ul,
.widget-sidebar ol {
    list-style:none;
    padding:0;
}
.widget-sidebar ul a {
    text-decoration:none;
}
.widget-sidebar ul ul {
    padding-left:1.5em;
    text-indent:-1.4em;
}
.widget-sidebar ul ul li::before {
    content:"－";
    margin-right:.4em;
}

ul.latestPosts {
    margin:0 auto;
    padding:0;
    list-style:none;
}
ul.latestPosts.event {
    border-bottom:solid 1px #ddd;
}
ul.latestPosts.event li + p {
    display:none;
}
ul.latestPosts li {
    margin:0;
    padding:0;
    border-top:solid 1px #ddd;
}
ul.latestPosts li:last-child {
        border-bottom:solid 1px #ddd;
}
ul.latestPosts.notice li:last-child {
    border-bottom:none;
}
ul.latestPosts li a {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    position:relative;
    text-decoration:none;
    padding:.5em 3%;
}
ul.latestPosts.notice li a {
    padding:1em 3%;
    font-weight:bold;
}
ul.latestPosts li a .postDate {
    flex:1;
    font-size:.9333;
}
ul.latestPosts li a .eventDate {
    flex:1;
    font-size:.9333;
    color:#999;
}
ul.latestPosts li a .postCat {
    font-size:.8em;
    line-height:1.2;
    background:#666;
    color:#fff;
    border-radius:1em;
    padding:.2em .8em;
}
ul.latestPosts li a .postCat.clinic {
    background:#eb6877;
}
ul.latestPosts li a .postCat.carecenter {
    background:#9dc244;
}
ul.latestPosts li a .postCat.space {
    background:#448aca;
}
ul.latestPosts li a .postTitle {
    width:100%;
}
ul.latestPostsClose {
	padding:0 0 0 1em;
	list-style-type: "―";
}
ul.latestPostsClose li {
	margin-bottom:1em;
}
ul.latestPostsClose li a {
	text-decoration:none;
}
.shadowBox ul.latestPosts {
    border-bottom:solid 1px #4d4537;
}
.shadowBox ul.latestPosts:last-child {
    border-bottom:none;
}
.shadowBox ul.latestPosts li {
    border-top:none;
    border-bottom:solid 1px #ddd;
}
.shadowBox ul.latestPosts li:last-child {
    border-bottom:none;
}
.indexFacility .shadowBox {
    border-top:solid 1.5em #666;
    margin-bottom:3em;
}
.indexFacility .shadowBox h3 {
    font-size:2.4em;
    margin:0;
    padding:.8em 5% .8em 2.25em;
    background-repeat:no-repeat;
    background-position:left .8em center;
    background-size:45px;
}
.indexFacility .shadowBox.clinic {
    border-color:#eb6877;
}
.indexFacility .shadowBox.clinic h3 {
    background-image:url('../images/back_clinic-circle.png');
    color:#eb6877;
}
.indexFacility .shadowBox.carecenter {
    border-color:#9dc244;
}
.indexFacility .shadowBox.carecenter h3 {
    background-image:url('../images/back_carecenter-circle.png');
    color:#9dc244;
}
.indexFacility .shadowBox.space {
    border-color:#448aca;
}
.indexFacility .shadowBox.space h3 {
    background-image:url('../images/back_space-circle.png');
    color:#448aca;
}
ul.subMenu {
    margin:0 0 1.5em;
    padding:0;
    list-style:none;
}
ul.subMenu li {
    margin:0;
    padding:0;
    border-top:dashed 1px #999;
}
ul.subMenu li:last-child {
    border-bottom:dashed 1px #999;
}
ul.subMenu li a {
    position:relative;
    text-decoration:none;
    display:block;
    padding:.8em 5%;
}
@media screen and (min-width: 768px), print {
    #page-index #main {
        background:url('../images/back_big-circle.png') no-repeat left -200px;
    }
    .latestPostsWrap {
        padding:2em 5%;
    }
    ul.latestPosts li a,
    ul.latestPosts.notice li a {
        flex-wrap:nowrap;
        padding:1.2em calc(2% + 1em) 1.2em 2%;
    }
    ul.latestPosts li a:hover,
    ul.latestPosts li a:hover::after {
        background:#f6f6f6;
        padding-left:3%;
    }
    ul.latestPosts li a .postDate {
        flex:none;
        width:6em;
    }
    ul.latestPosts li a .eventDate {
        flex:none;
        width:12em;
    }
    ul.latestPosts li a .postCat {
        width:10.5em;
        text-align:center;
    }
    ul.latestPosts li a .postTitle {
        width:auto;
        flex:1;
        margin-left:1em;
    }
    ul.latestPosts li a::after {
        content:"\f138";
        font-family:"Font Awesome 5 Free";
        font-weight:900;
        position:absolute;
        margin:auto;
        line-height:1;
        height:1em;
        top:0;
        bottom:0;
        right:1%;
        transition:all .2s;
        color:#999;
    }
    ul.latestPosts li a:hover::after {
        right:2%;
	}
    .indexFacility .shadowBox h3 {
        font-size:3em;
        padding:.6em 5%;
        background-position:right 5% center;
        background-size:164px;
    }
    ul.subMenu li a:hover {
        background:#f6f6f6;
        padding:.8em 5.5%;
    }
    ul.subMenu li a::after {
        content:"\f138";
        font-family:"Font Awesome 5 Free";
        font-weight:900;
        position:absolute;
        margin:auto;
        line-height:1;
        height:1em;
        top:0;
        bottom:0;
        right:4%;
        transition:all .2s;
        color:transparent;
    }
    ul.subMenu li a:hover::after {
        color:#999;
        right:5%;
    }
    #sub ul.subMenu li a::after {
        content:none;
    }
}
@media screen and (min-width: 992px), print {
    /*.indexFacility {
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between;
    }
    .indexFacility > div {
        width:48%;
    }*/
}

@media screen and (min-width: 576px), print {
	.clinic-closed-daysWrap {
		display:flex;
		align-items:baseline;
	}
	.clinic-closed-daysWrap h3 {
		margin-right:5%;
	}
	.clinic-closed-daysWrap > div {
		flex:1;
	}
}

/* mainNav */
.mainNavWrap {
	box-shadow: 0 1em .75em rgba(0, 0, 0, .1);
	position:relative;
}
ul.mainNav {
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-wrap:wrap;
}
ul.mainNav li {
	margin:0;
	padding:2%;
	width:46%;
	text-align:center;
	position:relative;
}
ul.mainNav li::before {
    position: absolute;
    content: '';
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 60%;
    background-color: #ddd;
}
ul.mainNav li:nth-child(even)::before {
	content:none;
}
ul.mainNav li::after {
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    height: 1px;
    background-color: #ddd;
}
ul.mainNav li:last-child::after {
	content:none;
}
ul.mainNav li a {
	display:block;
	padding:5.5em .5em 1em;
	text-decoration:none;
	background-image:url('../images/icon_gairai.png');
	background-repeat:no-repeat;
	background-position:center top 1em;
    border-radius:1em;
}
ul.mainNav li.gairai a {
	background-image:url('../images/icon_gairai.png');
}
ul.mainNav li.houmon a {
	background-image:url('../images/icon_houmon.png');
}
ul.mainNav li.checkup a {
	background-image:url('../images/icon_checkup.png');
}
ul.mainNav li.rehabili a {
	background-image:url('../images/icon_rehabili.png');
}
ul.mainNav li.kaigo a {
	background-image:url('../images/icon_kaigo.png');
}
ul.mainNav li.clinic a:hover {
	background-color:#f7e0e2;
}
ul.mainNav li.carecenter a:hover {
	background-color:#e8f1d4;
}
@media screen and (min-width: 576px), print {
    ul.mainNav li {
    	width:29.333%;
    }
    ul.mainNav li:nth-child(even)::before {
		content:"";
	}
    ul.mainNav li:nth-child(3)::before {
		content:none;
	}
    ul.mainNav li:nth-last-child(2)::after {
		content:none;
	}
}
@media screen and (min-width: 992px), print {
    ul.mainNav li {
    	width:16%;
    }
    ul.mainNav li:nth-child(3)::before {
		content:"";
	}
    ul.mainNav li:last-child::before {
		content:none;
	}
    ul.mainNav li::after {
		content:none;
	}
}

dl.scheduleList {
    border:none;
    padding:0 0 0 .666em;
}
dl.scheduleList dt {
    background:#f0771e;
    color:#fff;
    border-radius:1em;
    width:4.5em;
    text-align:center;
    float:left;
    font-size:.875em;
    margin-top:.1em;
}
dl.scheduleList dd {
    margin-left:5em;
}

.xo-event-calendar a {
    text-decoration:none;
}
.xo-event-calendar caption {
    color:#4d4537;
}
.xo-event-calendar table.xo-month .month-header {
    padding-bottom:1em;
}
.month-week {
    height:6em;
}
.xo-event-calendar td,
.xo-event-calendar th {
}
.xo-event-calendar table.xo-month .month-event-title {
    margin: .2em;
    padding: 4px;
    white-space:normal;
    /*background:#b8812b!important;*/
    color:#fff!important;
    line-height:1.4;
}
.xo-event-meta {
    padding:1em 3%;
    background:#f0f0f0;
    margin-bottom:2em;
}

ul.voiceList {
	list-style:none;
	padding:0;
}
ul.voiceList li {
	margin:0 50px 1.25em;
	padding:0;
	padding:1em;
	border:solid 2px #f0771e;
	border-radius:18px;
	position:relative;
}
ul.voiceList li:before {
	content:"";
	border: 7px solid transparent;
	border-left-color:#f0771e;
	position:absolute;
	right:-16px;
	bottom:12px;
}
ul.voiceList li:after {
	content:"\f118";
	font-family:"Font Awesome 5 Free";
	font-weight:400;
	font-size:2.25em;
	line-height:1;
	color:#f0771e;
	position:absolute;
	right:-50px;
	bottom:0;
}
ul.voiceList li:nth-child(even):before {
	border-left-color:transparent;
	border-right-color:#f0771e;
	right:auto;
	left:-16px;
}
ul.voiceList li:nth-child(even):after {
	right:auto;
	left:-50px;
}

/* formArea */
.formArea {
}
.wpcf7-form > table {
    border-collapse:collapse;
    width:100%;
}
.wpcf7-form > table > tbody > tr {
    border-bottom:solid 1px #ddd;
}
.wpcf7-form > table > tbody > tr > th,
.wpcf7-form > table > tbody > tr > td {
    vertical-align:middle;
    text-align:left;
    margin:0;
    padding:1.2em 0;
    background:#fff;
    border:none;
}
.wpcf7-form > table > tbody > tr > th {
    width:12em;
    padding-right:1.2em;
    font-weight:bold;
}
.formArea input[type="text"],
.formArea input[type="password"],
.formArea input[type="email"],
.formArea input[type="tel"],
.formArea input[type="date"],
.formArea select,
.formArea textarea {
    border:solid 1px #a5a5a5;
    background:#fff;
    color:#222;
    padding:.6em .2em;
    box-shadow:none;
    border-radius:4px;
}
.formArea input[type="text"],
.formArea input[type="password"],
.formArea input[type="email"],
.formArea input[type="tel"],
.formArea textarea {
    box-sizing:border-box;
    width:100%;
    max-width:100%;
}
.formArea button,
.formArea input[type="submit"],
.formArea input[type="reset"],
.formArea input[type="button"] {
	-webkit-appearance:none;
    padding:1em 1.5em;
    border:none;
    border-radius:.2em;
    background:#ddd;
    color:#222;
}
.formArea button:hover,
.formArea input[type="reset"]:hover,
.formArea input[type="button"]:hover {
    background:#ccc;
    color:#000;
}
.formArea input[type="submit"] {
    background:#4cae4c;
    color:#fff;
}
.formArea input[type="submit"]:hover {
    background:#5cb85c;
}
.formArea .en {
	display:block;
	font-size:.8125em;
	color:#777;
}
.formArea .hissu,
.formArea .ninni {
	font-size:.75em;
	background:#666;
	color:#fff;
	padding:.1em .5em;
	border-radius:4px;
}
.formArea .hissu {
	background:#d43f3a;
}
.formArea .ninni {
	background:#2e6da4;
}
.wpcf7-list-item {
margin:.5em;
}
.wpcf7-not-valid-tip {
	font-size:.875em;
}
.wpcf7-submit.has-spinner {
	margin-left:72px;
}
@media screen and (max-width: 799px) {
    .wpcf7-form > table,
    .wpcf7-form > table > tbody > tr {
    	border:none;
    }
    .wpcf7-form > table > tbody > tr > th,
    .wpcf7-form > table > tbody > tr > td {
        display:block;
    }
    .wpcf7-form > table > tbody > tr > th {
    	width:auto!important;
        padding:.8em;
        background:#faf4eb;
    }
    .wpcf7-form > table > tbody > tr > td {
    	margin-bottom:.8em;
    }
	.formArea .en {
		display:inline-block;
		margin-left:.8em;
		margin-right:.8em;
	}
}

/***** ページネーション *****/
.navigation {
	margin-top:2em;
}
.nav-links {
    font-size:0;
}
.navigation .screen-reader-text {
    display:none;
}
.navigation .nav-links {
    text-align:center;
    font-size:13px;
}
.navigation .nav-links .page-numbers {
    display:inline-block;
    margin:1px;
    padding:.5em 1em;
    background:#fff;
    border-radius:.6em;
}
.navigation .nav-links a.page-numbers:hover {
    background:#b8812b;
    color:#fff;
}
@media screen and (min-width: 560px), print {
    .navigation .nav-links {
        font-size:16px;
    }
}

/* conceptCatch */
.conceptCatch {
	text-align: center;
}
.conceptCatch > div {
	margin-bottom:2em;
}
.conceptCatch > div:first-child {
	margin-top:2em;
}
@media screen and (min-width: 768px) {
	.conceptCatch {
		display: flex;
		align-items: center;
		justify-content: space-around;
	}
	.conceptCatch > div,
	.conceptCatch > div:first-child {
		margin:0;
	}
	.conceptCatch > div:last-child {
		width: 16em;
	}
}

/* sideBnr */
.sideBnr a {
	display: block;
	border: solid 2px #aaa;
	padding: 1.4em .5em;
	text-align: center;
	text-decoration: none;
	border-radius: 10px;
	font-size: .9375em;
	background: #fff;
}
.sideBnr a:hover {
	background: #f0f0f0;
}

/* gridLayout, pagesNav, contentsNav  */
ul.grid,
ul.pagesNav,
ul.contentsNav {
	padding:0;
	list-style:none;
}
ul.grid li,
ul.pagesNav li {
	margin:0 0 3%;
	padding:0;
}
ul.contentsNav li {
	margin:0;
}
ul.pagesNav a,
ul.contentsNav a {
	display:flex;
	justify-content: space-between;
    text-decoration:none;
}
ul.pagesNav a {
	background:#fff;
    border-radius: 2em;
	padding: 1em 1.2em 1em 1.5em;
    box-shadow: .2em .2em 1em rgba(0, 0, 0, .2);
    font-weight:bold;
}
ul.pagesNav a::after {
	content:"\f138";
	font-family:"Font Awesome 5 Free";
	font-weight:900;
	display:flex;
	align-items:center;
    margin-left:.5em;
}
ul.pagesNav a:hover {
	padding: 1em 1.45em 1em 1.75em;
}
ul.pagesNav a:hover::after {
	margin-left:0;
}
ul.pagesNav.clinic a {
	color:#eb6877;
}
ul.contentsNav {
	align-items:end;
}
ul.contentsNav a {
	padding:.8em .5em;
	border-bottom:solid 1px #4d4537;
}
ul.contentsNav a:hover {
	 background:#f6f6f6;
}
ul.contentsNav a::after {
	content:"\f358";
	font-family:"Font Awesome 5 Free";
	font-weight:400;
	display:flex;
	align-items:center;
    margin-left:.5em;
}
@media screen and (min-width: 576px), print {
	ul.grid,
	ul.pagesNav,
	ul.contentsNav {
		display:flex;
		flex-wrap:wrap;
		gap:2%;
	}
	ul.grid li,
	ul.pagesNav li,
	ul.contentsNav li {
		width:100%;
		margin-bottom:2%;
	}
	ul.grid li,
	ul.pagesNav.col-2 li,
	ul.contentsNav.col-2 li {
		width:49%;
	}
}
@media screen and (min-width: 1200px), print {
	ul.grid.col-3 li,
	ul.pagesNav.col-3 li,
	ul.contentsNav.col-3 li {
		width:32%;
	}
	ul.grid.col-4 li,
	ul.pagesNav.col-4 li,
	ul.contentsNav.col-4 li {
		width:23.5%;
	}
}

ul.tabMenu {
	position:relative;
	display:flex;
	gap:6px;
	list-style:none;
	margin:;
	padding:0;
}
ul.tabMenu::before {
	content:"";
	display:block;
	width:100%;
	height:1px;
	background:#ccc;
	position:absolute;
	bottom:0;
	z-index:0;
}
ul.tabMenu li {
	width:100%;
	margin:0;
	padding:0;
}
ul.tabMenu li a {
	display:block;
	padding:1.2em 1em;
	text-align:center;
	text-decoration:none;
	background:#f0f0f0;
	color:#999;
	border-radius:6px 6px 0 0;
	font-weight:bold;
}
ul.tabMenu li a:hover {
	color:#4d4537;
}
ul.tabMenu li.active {
	position:relative;
	z-index:1;
}
ul.tabMenu li.active a {
	background:#fff;
	color:#4d4537;
	border:solid 1px #ccc;
	border-bottom:none;
}

/* ------------------------------
	class
------------------------------ */

/***** 文字色 *****/
.txc_01,a.txc_01 {color:#b8812b;}
.txc_02,a.txc_02 {}
.txc_03,a.txc_03 {}
.txc_clinic,a.txc_clinic {color:#eb6877}
.txc_carecenter,a.txc_carecenter {color:#9dc244}
.txc_space,a.txc_space {color:#448aca}
.txc_rehabili,a.txc_rehabili {color:#e89253}
.txc_naika,a.txc_naika {color:#6fb0e0}
.txc_shonika,a.txc_shonika {color:#f69897}
.txc_checkup,a.txc_checkup {color:#55c08a}
.txc_vaccination,a.txc_vaccination {color:#cc7ddd}

/***** 背景 *****/
.bgc_01 {background:#faf4eb}/* 薄茶 */
.bgc_02 {}/*  */
.bgc_03 {}/*  */

/***** 見出し *****/
.h_01 {
    font-family:'Quicksand', sans-serif;
    text-align:center;
    color:#b8812b;
    font-size:2.4em;
}
.h_02 {
    text-align:center;
}
.h_02 .title {
    font-weight:normal;
    font-size:1.333em;
    margin:0 0 1.5em;
}
.h_03 {
    background:#faf4eb;
    padding:1.2em .8em;
    font-weight:normal;
}
.h_04 {
    border-left:solid 4px #b8812b;
    padding-left:.5em;
}
.h_05 {
    position:relative;
    padding-bottom:.5em;
}
.h_05::before,
.h_05::after {
    content:"";
    display:block;
    height:2px;
    position:absolute;
    bottom:0;
}
.h_05::before {
    width:100%;
    background:#f5e7d0;
}
.h_05::after {
    width:1.5em;
    background:#b8812b;
}
@media screen and (min-width: 768px), print {
    .h_01 {
        font-size:3.75em;
        text-align:right;
    }
    .h_02 {
        display:flex;
        align-items:center;
    }
    .h_02 .title {
        flex:1;
        text-align:left;
        font-size:1.875em;
        margin:0 1em 0 0;
    }
}
.h_step {
	display:flex;
	align-items:center;
	background:#faf4eb;
	color:#b8812b;
}
.h_step span {
	padding:.6em .5em;
	background:#b8812b;
	color:#fff;
	font-size:.8em;
	margin-right:1em;
}

/***** ボタン *****/
.btn_01,
.btn_02,
.btn_03 {
    display:inline-block;
    text-decoration:none;
    line-height:1.4;
    position:relative;
    text-align:center;
}
.btn_01.d_block,
.btn_02.d_block,
.btn_03.d_block {
    display:block;
}
.btn_01 {
    border:solid 1px #4d4537;
    border-radius:2em;
    padding:1em 1.5em;
    font-size:.8666em;
    background:#fff;
}
.btn_01:hover {
    border-color:#827c73;
}
.btn_02 {
    background:#666;
    color:#fff;
    padding:1em;
    border-radius:10px;
}
.btn_02:active {
    color:#fff;
}
.btn_02:hover {
	opacity:.7;
}
.btn_02.clinic {
    background:#eb6877;
}
.btn_02.clinic_2 {
	background:#fff;
	color:#eb6877;
	border:solid 2px #eb6877;
}
.btn_02.carecenter {
    background:#9dc244;
}
.btn_02.space {
    background:#448aca;
}
.btn_03::before {
    content:"\f0da";
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    margin-left:.2em;
    margin-right:.2em;
    color:#b8812b;
}
       

@media screen and (min-width: 768px), print {
    .btn_01 {
        font-size:1em;
        vertical-align: middle;
        -webkit-transform: perspective(1px) translateZ(0);
        transform: perspective(1px) translateZ(0);
        box-shadow: 0 0 1px transparent;
        -webkit-transition-property: color;
        transition-property: color;
        -webkit-transition-duration: 0.2s;
        transition-duration: 0.2s;
        overflow:hidden;
    }
    .btn_01:before {
        content: "";
        position: absolute;
        z-index: -1;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #f0f0f0;
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%;
        -webkit-transition-property: transform;
        transition-property: transform;
        -webkit-transition-duration: 0.2s;
        transition-duration: 0.2s;
        -webkit-transition-timing-function: ease-out;
        transition-timing-function: ease-out;
    }
    .btn_01:hover:before, .btn_01:focus:before, .btn_01:active:before {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}

/***** リスト *****/
.listStyleNone {
    padding-left:0;
    list-style:none;
}

/***** その他 *****/
.font_en {
    font-family:'Quicksand', sans-serif;
}
.exLink {
	position:relative;
    padding-left:1.2em;
}
.exLink::before,
.exLink::after {
    content:"";
	position:absolute;
	display:block;
	width:.5em;
	height:.375em;
	border:1px solid #4d4537;
}
.exLink::before {
	top:5px;
	left:0;
	border-right:none;
    border-bottom:none;
}
.exLink::after {
	top:7px;
	left:2px;
}
table.txa_c th,
table.txa_c td {
	text-align:center;
}
table.basicTable th,
table.basicTable td {
	border:solid 1px #ccc;
}
.lineMarker {
	    background-image: linear-gradient(to top, #FFEA76 0.4em, rgba(255, 255, 255, 0) 0.5em);
}
a.linkCard {
	display:block;
	background:#fff;
	box-shadow: .5em .5em 1em rgba(0, 0, 0, .2);
	border-radius: 1em;
	overflow: hidden;
	text-decoration:none;
}
a.linkCard:hover {
	opacity:.7;
}
a.linkCard img {
	display:block;
	opacity:1;
}
a.linkCard .linkCardText {
	display:block;
	padding:2em 5%;
}
