@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@800;900&family=Montserrat:wght@800;900&display=swap');

        :root {
            --sf-img-15: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASQAAAAUCAIAAACrlteiAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpFMzFGRDYxQ0Y4NUJFNDExQjA0REU2RTY3RDdGREI1QiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFODc0QTgyQzVDMDQxMUU0Qjg1OUI4MjNBRTBDNTFCOCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFODc0QTgyQjVDMDQxMUU0Qjg1OUI4MjNBRTBDNTFCOCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkUzMUZENjFDRjg1QkU0MTFCMDRERTZFNjdEN0ZEQjVCIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkUzMUZENjFDRjg1QkU0MTFCMDRERTZFNjdEN0ZEQjVCIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WehBfQAABnBJREFUeNrsm01MXFUUx5kZRj6GMik0aFsgQeWrgzZpjJDGEBAW2oULNemKhQvYsmmTrlzUhYu6YUsXGNtN/ejGKI1i6kIbqSZaShct0Rghoo3QghOg0oK/x19vb9978wF+pJm5Jy+Tx3v3nXfu9P+//3POnUY2NzdLnDlz9t9b1H0Fzpw5sjlz5sjm7CG2s1/evjSzcnfDVQcPnUVczVZgBtNOX1zcVR7taa/qSyWSlbEdeDDnh5srX//g14aa+GBvDX/imU+dY+e+Wnrr49/ODzc21Mavza0trW7YfpIV0VR9eaa3LK/em56701FfVl0R29lM8/Qwu7DOyCyRmFkzBTO1LMYw3siUtxtwqUNngdmzT1S8OxlbWrn34bfLH323fKip4vkDVe37yvL3IEYZsvE5evHW0a4kJ1BLJ8L66c8XwTow7Vgt49bs4jooBIsgG4hza2yoXoNbj984dmSPDWV48troHAP0CkMMnIRGBeF9+A71ELQLU78Tm+aiI5R4hM0wO0KuEMwLT+/yjWQYU2amuGKODMiTeI5shWal0Uh3awKmcU4u+c0Pqxz7dsf7U4nDzYmyeCTnAm9jF+0Sr0DY0sqGYSNjXh75CcAdO5IcPjMPkbh+tDMJjiEAf9qMlVTmg0hDDMNz1BLQcwKmRwb2igOSUF3Xp8+M3BE/J9dPtTCMMOAn/omEUHOK2PhUmlmMDcXsL4QrPAjDpYSMwSGzZsrZOe/IVphG9oim2VXbz7fW3/ni9nuXl59rqezvqKqr3sa/O5ICks5NeqwTqTDghcQpjeQc/NnJZ1A0RB546BvGFbkV9Pm0OQCyEVW4MdhT8+LBKsMBOZQG4jD4ahym6mNir7cKdHmrgARtebVu/EoaNtqCZrwpHj2CEx4ni5440WTLmnilg2hRY4YZh45sxWXUac88Xnn5ez8EV//Y+HQ6zfFUQ3lfqupgY0g2BYBsUTJ5oABtM+HkK4+CM7QClRCmMxlChLxwGG9ymDMJlGKYxNUQSSdIK4yyfQbNC+/BxwnDvuIxeWtSW6tGzJSmyPXXJyshOWRjTdEjIrlPoo0HR7YitZ72RJBsxq7OrnHUVsVeOlTd3Zbw3bWhA85EJFBrFn4yOnRGkgIfkBryTASQP6UPPMIJV4x65LPwhzK/pDlj2wO3EE/pnMG9XWIRFUeyIgp5lEPyp4axQMAfLQFiO7ckVmYtEFGpS1F1kU2z4xGYqbz0vs5vOXRkK0aby9BmMNZYG0fcup4MURWTSmFkUFrIlWuJh7AIrMNDQAbmwPeFqTUqup0xypdwkje+8Wpdzhal4lEBltpfzqvRz9H3b3JlbLBeMYsMpkjbyi3LIZWyX5iDON9vzCysN3SGVJXMDq56d2vjZsWBk1zncS5yC0IigEo+HdmKy6jWJqbTobeikRIyzP5UovmxcGKARTsxA0wCLvpgmhZbFhdwoUeyMgoJOVGjDygDRCCYSZEklaFdx+Gz8/nsBMiJSiY7Cx3q3d335o9AXyxSDL4uKP69QmvRWywM2RRSsPGorg9zZ44lfzf9WQvskXw/+IHYOHFkKzojRby5fDdYyPUeSPS05dh5Uz9dRAoSpvX4DZ1cP9WinqQwfWlmKXsvTv1D1WnK1uRc9aGe9bLQhfWRgT05+Qa+zw83Bjv42v4yYYuKOXfYPK2b9OI3xZjp6PhKspGBvQj4DnbYHNkK1j679oCsIWJIGYIWjeTrATVQmw5S2bmlET0BGjhqqyBLK1LDlPUJxEAWVsABnoKEeAbNvFHiycVQhQn2ToIXoa5vYzo4TGkkh701z3SMyimGUEapxgvKLFrKp+ncOLIVi6FpKBsnj5RGKMkozBq3vxJ7HY6FbFWf2CUog0tICNDRh+qptMokbWobjOoRjR8+Mw/9vMEVsbeH9o9fSSulNNsJqgbFPaO3kMSnZvZb8CBhZADJpC9UkVxOtB9tcktVidBbv5Uxa0cW5hCeGi1aLPDAN8AKknONcGQrNPvkarquurSnPdHdlkiU7fy3r3ZrLqSS6fKab6KcGnrKKg3gzN60XIFdbTRPnGj6a++rM8lgXyMeeeG6aRvaHmCRv+e+1acxooo3/Z4jU8zcxYPaJD7nlGFe2tlTo1/AaHb5fEVeVIGftmQy99vIQrOZX+5kan786/bPf99YVObI5szZ/2Tuv9g4c+bI5sxZYdmfAgwAyQHuHKqejYAAAAAASUVORK5CYII=")
        }

        body {
            font: 13px/1.231 arial, helvetica, clean, sans-serif;
            *font-size: small;
            *font: x-small
        }

        * {
            line-height: 180%;
            word-break: break-all
        }

        img {
            border: none;
            -ms-interpolation-mode: bicubic
        }

        .clearFix {
            zoom: 100%
        }

        .clearFix:after {
            content: " ";
            clear: both;
            height: 0;
            display: block;
            visibility: hidden
        }

        body {
            margin: 0 auto;
            padding: 0px 0 0;
            text-align: center;
            color: #333333;
            font-family: Verdana, Arial, Helvetica, "meirio", "メイリオ", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", Osaka, "ＭＳ Ｐゴシック", sans-serif;
            background-color: #ffffff;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAADICAYAAAAgGSuPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3MDZGMTlFRjBGNTZFNDExOUU1N0YwODcyRUUzNDYzNyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxMzEzNzEyQjU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxMzEzNzEyQTU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjcxNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjcwNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WfOpqQAAAHFJREFUeNpi/P//PwM6YGLAAkYFRwVHBUcFRwVHBUcFRwWpK8jy9vVrjIYIy4NHj4jUzsjISIHKQaidboID7E4mJqahEEqDUZBeQTdCUjL9tO+78xpDkJFhwcv/dClpgdgEm+BZDCeN9g1HBakkCBBgAE0zFQGlwFC4AAAAAElFTkSuQmCC);
            background-repeat: repeat-x
        }

        a:link,
        a:visited {
            color: #4D82C4
        }

        a:hover,
        a:active {
            color: #CC4866
        }

        a:hover img:hover {
            opacity: 0.6;
            filter: alpha(opacity=70);
            -ms-filter: "alpha( opacity=70 )";
            -moz-opacity: 0.7;
            -khtml-opacity: 0.7
        }

        #wrapper {
            margin: 0;
            padding: 0
        }

        #headerWrapper {
            margin: 0 auto;
            width: 960px;
            text-align: left
        }

        #header {
            height: 170px;
            position: relative
        }

        .siteTitle {
            position: absolute;
            top: 12px;
            left: 1px;
            font-weight: normal;
            margin: 0;
            padding: 0
        }

        .description {
            position: absolute;
            top: 5px;
            right: 5px;
            margin: 0;
            padding: 0;
            color: #ffffff;
            font-size: 9%;
            height: 95px;
            width: 350px
        }

        .navi {
            position: absolute;
            bottom: 4px;
            left: 0px;
            height: 59px;
            line-height: 50px
        }

        .navi ul {
            list-style: none;
            margin: 0;
            padding: 0;
            width: 960px;
            height: 50px;
            overflow: hidden;
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #FFFFFF;
            border-left-color: #FFFFFF
        }

        .navi ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            float: left;
            width: 14.285714%;
            height: 50px
        }

        .navi ul li a {
            text-decoration: none;
            padding: 10px 0px 5px;
            width: 100%;
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box
        }

        .navi ul li a .titleJa {
            display: block;
            height: 20px;
            line-height: 20px;
            text-align: center;
            font-size: 95%;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a .titleEn {
            display: block;
            height: 15px;
            line-height: 15px;
            text-align: center;
            font-size: 72%;
            font-weight: bold;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a:link,
        .navi ul li a:visited {
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #CCCCCC;
            border-left-color: #CCCCCC
        }

        .navi ul li a:link .titleJa,
        .navi ul li a:visited .titleJa {
            color: #666666
        }

        .navi ul li a:link .titleEn,
        .navi ul li a:visited .titleEn {
            color: #666666
        }

        .navi ul li a:hover,
        .navi ul li a:active {
            border-left: #CCCCCC solid 1px;
            border-right: #CCCCCC solid 1px;
            color: #FFF;
            background-color: #00A0E9
        }

        .navi ul li a:hover .titleJa,
        .navi ul li a:active .titleJa {
            color: #FFFFFF
        }

        .navi ul li a:hover .titleEn,
        .navi ul li a:active .titleEn {
            color: #FFFFFF
        }

        #sliderWrapper {
            position: relative;
            padding: 25px 0;
            margin: 0 auto;
            text-align: left;
            width: 960px
        }

        #slider {
            width: 960px;
            height: 260px;
            margin: 0;
            overflow: hidden;
            position: relative
        }

        #slider #sliderItem {
            position: absolute;
            margin: 0;
            padding: 0;
            list-style: none;
            width: 4600px;
            left: 0px;
            top: 0px
        }

        #slider #sliderItem li {
            margin: 0;
            padding: 0;
            list-style: none;
            width: 960px;
            height: 260px;
            float: left
        }

        #slider #sliderItem li {
            z-index: 80;
            display: block
        }

        #slider #sliderItem li img {
            width: 960px;
            height: 260px
        }

        #sliderWrapper .leftBtn {
            position: absolute;
            width: 44px;
            height: 44px;
            top: 113px;
            left: -22px;
            z-index: 80;
            display: none
        }

        #sliderWrapper .rightBtn {
            position: absolute;
            width: 44px;
            height: 44px;
            top: 113px;
            right: -22px;
            z-index: 80;
            display: none
        }

        #contentsWrapperTop {
            width: 960px;
            text-align: left;
            margin-top: 0;
            margin-right: auto;
            margin-bottom: 0;
            margin-left: auto;
            min-height: 350px
        }

        #footerWrapper {
            margin: 20px 0 0;
            text-align: center;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC)repeat-x
        }

        #footer {
            width: 960px;
            text-align: left;
            margin: 0 auto;
            padding: 0
        }

        #footerMenu ul {
            margin: 0;
            padding: 0;
            width: 960px;
            height: 30px;
            overflow: hidden;
            list-style: none
        }

        #footerMenu ul li {
            margin: 0;
            padding: 0 6px 0 20px;
            list-style: none;
            float: left;
            width: 14.285714%;
            height: 30px;
            line-height: 30px;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAYklEQVR42pWSuwkAMAhELdzhBrGwzCoZ3U0MHqS7xsBBIO9pfnbO6UlmNoB29zazCecAuPY5ChHxQRGKZCiMLWApDWsABKBDVlWvqr73yi6mKv0hxLWw3tL60Otr3T/c+ms8+6a9tTIVTRoAAAAASUVORK5CYII=)left center no-repeat
        }

        #footerMenu ul a {
            display: block;
            height: 30px;
            line-height: 30px;
            color: #FFF;
            text-decoration: none;
            font-size: 93%;
            white-space: nowrap;
            word-break: normal
        }

        #footerMenu ul a:hover {
            text-decoration: underline
        }

        .footerAddress {
            text-align: right;
            height: 50px;
            line-height: 50px
        }

        #footer .copyright {
            margin: 0;
            padding: 10px 0;
            text-align: center;
            font-size: 93%
        }

        #menu .menuList ul li a:hover,
        #menu .menuList ul li a:active {
            color: #999
        }

        .informationbox {
            height: 320px;
            width: 294px;
            margin-top: 10px;
            margin-right: 10px;
            margin-bottom: 30px;
            margin-left: 10px;
            float: left;
            border: none;
            background-color: #FFF;
            padding-top: 2px;
            padding-right: 2px;
            padding-left: 2px;
            border-radius: 12px;
            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.10);
            transition: transform .22s cubic-bezier(.16, 1, .3, 1), box-shadow .22s;
            overflow: hidden;
        }

        .informationbox:hover {
            transform: translateY(-5px);
            box-shadow: 0 12px 32px rgba(0, 160, 233, 0.18);
        }

        /* TEL 左右シェイクアニメーション */
        @keyframes tel-shake {
            0% {
                transform: translateX(0);
            }

            15% {
                transform: translateX(-5px);
            }

            30% {
                transform: translateX(5px);
            }

            45% {
                transform: translateX(-4px);
            }

            60% {
                transform: translateX(4px);
            }

            75% {
                transform: translateX(-2px);
            }

            90% {
                transform: translateX(2px);
            }

            100% {
                transform: translateX(0);
            }
        }

        .tel-shake {
            display: inline-block;
            font-weight: bold;
            color: #00A0E9;
            text-decoration: none;
            cursor: pointer;
        }

        .tel-shake:hover {
            animation: tel-shake .55s ease;
            color: #0082c0;
        }

        /* ===== リハビリ ドロワーメニュー ===== */
        li.rehab-nav-item {
            position: relative !important;
        }

        a.rehab-nav-toggle {
            cursor: pointer !important;
            position: relative;
        }

        a.rehab-nav-toggle .titleJa::after {
            content: ' ▾';
            font-size: 10px;
            opacity: 0.75;
        }

        ul.rehab-drawer {
            display: none !important;
            position: absolute !important;
            top: calc(100% + 2px) !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
            background: #ffffff !important;
            border-radius: 10px !important;
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.16) !important;
            min-width: 210px !important;
            z-index: 9999 !important;
            list-style: none !important;
            margin: 0 !important;
            padding: 4px 0 !important;
            border: none !important;
            overflow: hidden !important;
            height: auto !important;
            width: auto !important;
        }

        ul.rehab-drawer.open {
            display: block !important;
            animation: rehabDrawerIn .18s ease !important;
        }

        @keyframes rehabDrawerIn {
            from {
                opacity: 0;
                transform: translateX(-50%) translateY(-6px);
            }

            to {
                opacity: 1;
                transform: translateX(-50%) translateY(0);
            }
        }

        ul.rehab-drawer>li {
            float: none !important;
            height: auto !important;
            display: block !important;
            margin: 0 !important;
            padding: 0 !important;
            border-bottom: 1px solid #eef2f6 !important;
            list-style: none !important;
        }

        ul.rehab-drawer>li:last-child {
            border-bottom: none !important;
        }

        ul.rehab-drawer>li>a {
            display: block !important;
            float: none !important;
            width: 100% !important;
            box-sizing: border-box !important;
            padding: 13px 20px !important;
            font-size: 13.5px !important;
            font-weight: bold !important;
            color: #1a2a38 !important;
            text-align: left !important;
            text-decoration: none !important;
            white-space: nowrap !important;
            background: #ffffff !important;
            line-height: 1.4 !important;
            height: auto !important;
            border: none !important;
            transition: background .15s, color .15s, padding-left .15s !important;
        }

        ul.rehab-drawer>li>a:hover,
        ul.rehab-drawer>li>a:focus {
            background: #e6f5fd !important;
            color: #00A0E9 !important;
            padding-left: 26px !important;
        }

        #btnmenu {
            width: 250px;
            text-align: center;
            margin-top: 0;
            margin-right: 0;
            margin-bottom: 5px;
            margin-left: 20px
        }

        #btnmenu #btnimg {
            margin-top: 5px
        }

        body {
            font: 13px/1.231 arial, helvetica, clean, sans-serif;
            *font-size: small;
            *font: x-small
        }

        * {
            line-height: 180%;
            word-break: break-all
        }

        img {
            border: none;
            -ms-interpolation-mode: bicubic
        }

        .clearFix {
            zoom: 100%
        }

        .clearFix:after {
            content: " ";
            clear: both;
            height: 0;
            display: block;
            visibility: hidden
        }

        body#sub {
            margin: 0 auto;
            padding: 0px 0 0;
            text-align: center;
            color: #333333;
            font-family: Verdana, Arial, Helvetica, "meirio", "メイリオ", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", Osaka, "ＭＳ Ｐゴシック", sans-serif;
            background-color: #ffffff;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAADICAYAAAAgGSuPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3MDZGMTlFRjBGNTZFNDExOUU1N0YwODcyRUUzNDYzNyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxMzEzNzEyQjU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxMzEzNzEyQTU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjcxNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjcwNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WfOpqQAAAHFJREFUeNpi/P//PwM6YGLAAkYFRwVHBUcFRwVHBUcFRwWpK8jy9vVrjIYIy4NHj4jUzsjISIHKQaidboID7E4mJqahEEqDUZBeQTdCUjL9tO+78xpDkJFhwcv/dClpgdgEm+BZDCeN9g1HBakkCBBgAE0zFQGlwFC4AAAAAElFTkSuQmCC);
            background-repeat: repeat-x
        }

        a:link,
        a:visited {
            color: #4D82C4
        }

        a:hover,
        a:active {
            color: #CC4866
        }

        a:hover img:hover {
            opacity: 0.6;
            filter: alpha(opacity=70);
            -ms-filter: "alpha( opacity=70 )";
            -moz-opacity: 0.7;
            -khtml-opacity: 0.7
        }

        hr {
            border-width: 2px 0px 0px 0px;
            border: solid #CCCCCC 2px
        }

        #wrapper {
            margin: 0;
            padding: 0
        }

        #headerWrapper {
            margin: 0 auto;
            width: 960px;
            text-align: left
        }

        #header {
            height: 170px;
            position: relative
        }

        .siteTitle {
            position: absolute;
            top: 12px;
            left: 1px;
            font-weight: normal;
            margin: 0;
            padding: 0
        }

        .description {
            position: absolute;
            top: 5px;
            right: 5px;
            margin: 0;
            padding: 0;
            color: #ffffff;
            font-size: 9%;
            height: 95px;
            width: 350px
        }

        .navi {
            position: absolute;
            bottom: 4px;
            left: 0px;
            height: 59px;
            line-height: 50px
        }

        .navi ul {
            list-style: none;
            margin: 0;
            padding: 0;
            width: 960px;
            height: 50px;
            overflow: hidden;
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #FFFFFF;
            border-left-color: #FFFFFF
        }

        .navi ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            float: left;
            width: 14.285714%;
            height: 50px
        }

        .navi ul li a {
            text-decoration: none;
            padding: 10px 0px 5px;
            width: 100%;
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box
        }

        .navi ul li a .titleJa {
            display: block;
            height: 20px;
            line-height: 20px;
            text-align: center;
            font-size: 95%;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a .titleEn {
            display: block;
            height: 15px;
            line-height: 15px;
            text-align: center;
            font-size: 72%;
            font-weight: bold;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a:link,
        .navi ul li a:visited {
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #CCCCCC;
            border-left-color: #CCCCCC
        }

        .navi ul li a:link .titleJa,
        .navi ul li a:visited .titleJa {
            color: #666666
        }

        .navi ul li a:link .titleEn,
        .navi ul li a:visited .titleEn {
            color: #666666
        }

        .navi ul li a:hover,
        .navi ul li a:active {
            border-left: #CCCCCC solid 1px;
            border-right: #CCCCCC solid 1px;
            color: #FFF;
            background-color: #00A0E9
        }

        .navi ul li a:hover .titleJa,
        .navi ul li a:active .titleJa {
            color: #FFFFFF
        }

        .navi ul li a:hover .titleEn,
        .navi ul li a:active .titleEn {
            color: #FFFFFF
        }

        #contentsWrapper {
            width: 960px;
            text-align: left;
            margin-top: 0;
            margin-right: auto;
            margin-bottom: 0;
            margin-left: auto
        }

        #footerWrapper {
            margin: 20px 0 0;
            text-align: center;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC)repeat-x
        }

        #footer {
            width: 960px;
            text-align: left;
            margin: 0 auto;
            padding: 0
        }

        #footerMenu ul {
            margin: 0;
            padding: 0;
            width: 960px;
            height: 30px;
            overflow: hidden;
            list-style: none
        }

        #footerMenu ul li {
            margin: 0;
            padding: 0 6px 0 20px;
            list-style: none;
            float: left;
            width: 14.285714%;
            height: 30px;
            line-height: 30px;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAYklEQVR42pWSuwkAMAhELdzhBrGwzCoZ3U0MHqS7xsBBIO9pfnbO6UlmNoB29zazCecAuPY5ChHxQRGKZCiMLWApDWsABKBDVlWvqr73yi6mKv0hxLWw3tL60Otr3T/c+ms8+6a9tTIVTRoAAAAASUVORK5CYII=)left center no-repeat
        }

        #footerMenu ul a {
            display: block;
            height: 30px;
            line-height: 30px;
            color: #FFF;
            text-decoration: none;
            font-size: 93%;
            white-space: nowrap;
            word-break: normal
        }

        #footerMenu ul a:hover {
            text-decoration: underline
        }

        .footerAddress {
            text-align: right;
            height: 50px;
            line-height: 50px
        }

        #footer .copyright {
            margin: 0;
            padding: 10px 0;
            text-align: center;
            font-size: 93%
        }

        #menu {
            margin: 0 0 20px
        }

        #main {
            margin: 0 0 20px;
            font-size: 93%
        }

        #main #titleimg {
            margin-bottom: 10px
        }

        #menu #btnimg {
            margin-top: 5px
        }

        #menu .menuListbox {
            border: 1px solid #CCC;
            margin-top: 3px;
            padding-right: 7px;
            padding-left: 7px
        }

        #menu .menuList ul li a:hover,
        #menu .menuList ul li a:active {
            color: #999
        }

        #menu .menuList .subMidashi {
            margin: 0 !important
        }

        .panList {
            height: 30px;
            line-height: 30px;
            font-size: 60%;
            color: #000
        }

        .subMidashi {
            height: 50px;
            padding: 0;
            margin: 0 0 15px;
            font-size: 123.1%;
            background-color: #f3f3f3;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 5px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #00a0e9;
            border-left-color: #ccc
        }

        .subMidashi .midashiText {
            color: #333;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAQMAAAC3/F3+AAAABlBMVEUAAACsLFO+VnYrAAAAAXRSTlMAQObYZgAAABFJREFUCFtj+HyAAY4gAEkEAMzSDZkz80YgAAAAAElFTkSuQmCC)16px center no-repeat;
            display: block;
            line-height: 50px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px
        }

        .subMidashi2 {
            height: 30px;
            padding: 0;
            font-size: 123.1%;
            background-color: #E6F8FE;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 1px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #CCCCCC;
            border-left-color: #ccc;
            margin-top: 0;
            margin-right: 0;
            margin-bottom: 15px;
            margin-left: 0
        }

        .subMidashi2 .midashiText2 {
            color: #06F;
            display: block;
            line-height: 30px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAZCAYAAAAIcL+IAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2RTU5MDI2QTI0NUFFNDExQjNGM0M0NjM1REYxNzhDMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0NTA1NjEzQjVBMkUxMUU0OEM1OUZCMTc4MUExRjYwRiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0NTA1NjEzQTVBMkUxMUU0OEM1OUZCMTc4MUExRjYwRiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjZGNTkwMjZBMjQ1QUU0MTFCM0YzQzQ2MzVERjE3OEMxIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjZFNTkwMjZBMjQ1QUU0MTFCM0YzQzQ2MzVERjE3OEMxIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+L6nVhQAAACpJREFUeNpi/P//PwNjOgMI/GfABIz/Z0IYTAxEglGFowpHFQ4ZhQABBgAZ0QYv8G9+pwAAAABJRU5ErkJggg==);
            background-repeat: no-repeat;
            background-position: 16px center
        }

        .photo {
            float: left;
            margin: 0 20px 0 0
        }

        #sub #main {
            float: right;
            width: 680px
        }

        #sub #menu {
            float: left;
            width: 250px
        }

        .businessItem {
            margin: 0 0 30px
        }

        .businessItem ul {
            list-style-position: inside;
            list-style-type: none;
            padding-left: 15px
        }

        .businessItem li {
            list-style-position: inside;
            list-style-image: url(data:image/gif;base64,R0lGODlhDwAPAMQAAOTv9/T4/FubziB3vTCBwZS+32ai0fz9/tHj8d/r9ff6/S5/wUuRydTl8j2JxSt+wL/Y7DmGxEaOyPL3+yN5ve/1+vr8/R52vLnU6rzW6zODwtfm83uu14S02ht0u////yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjEgNjQuMTQwOTQ5LCAyMDEwLzEyLzA3LTEwOjU3OjAxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOkI2MUY1MkIyMDc1RkU0MTE5MDA0ODkxM0YyRDBFMDdBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkJCQjMyQjRFNUYwNzExRTRCNTczQjcwNzc5MTBBMkJFIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkJCQjMyQjRENUYwNzExRTRCNTczQjcwNzc5MTBBMkJFIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzUuMSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QjYxRjUyQjIwNzVGRTQxMTkwMDQ4OTEzRjJEMEUwN0EiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QjYxRjUyQjIwNzVGRTQxMTkwMDQ4OTEzRjJEMEUwN0EiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAfHh0cGxoZGBcWFRQTEhEQDw4NDAsKCQgHBgUEAwIBAAAh+QQAAAAAACwAAAAADwAPAAAFTOAnjmRplhMXnCTgDOxYRR4Ri4LnDUdc6B5KgqRAiBoXnQBAyjgIq5zHYCF1gAWIztAjBToDz4PhkShYCIJuwYwlNB7MTbThzO94UQgAOw==)
        }

        body {
            font: 13px/1.231 arial, helvetica, clean, sans-serif;
            *font-size: small;
            *font: x-small
        }

        * {
            line-height: 180%;
            word-break: break-all
        }

        img {
            border: none;
            -ms-interpolation-mode: bicubic
        }

        .clearFix {
            zoom: 100%
        }

        .clearFix:after {
            content: " ";
            clear: both;
            height: 0;
            display: block;
            visibility: hidden
        }

        body#sub {
            margin: 0 auto;
            padding: 0px 0 0;
            text-align: center;
            color: #333333;
            font-family: Verdana, Arial, Helvetica, "meirio", "メイリオ", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", Osaka, "ＭＳ Ｐゴシック", sans-serif;
            background-color: #ffffff;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAADICAYAAAAgGSuPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3MDZGMTlFRjBGNTZFNDExOUU1N0YwODcyRUUzNDYzNyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxMzEzNzEyQjU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxMzEzNzEyQTU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjcxNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjcwNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WfOpqQAAAHFJREFUeNpi/P//PwM6YGLAAkYFRwVHBUcFRwVHBUcFRwWpK8jy9vVrjIYIy4NHj4jUzsjISIHKQaidboID7E4mJqahEEqDUZBeQTdCUjL9tO+78xpDkJFhwcv/dClpgdgEm+BZDCeN9g1HBakkCBBgAE0zFQGlwFC4AAAAAElFTkSuQmCC);
            background-repeat: repeat-x
        }

        a:link,
        a:visited {
            color: #4D82C4
        }

        a:hover,
        a:active {
            color: #CC4866
        }

        a:hover img:hover {
            opacity: 0.6;
            filter: alpha(opacity=70);
            -ms-filter: "alpha( opacity=70 )";
            -moz-opacity: 0.7;
            -khtml-opacity: 0.7
        }

        #wrapper {
            margin: 0;
            padding: 0
        }

        #headerWrapper {
            margin: 0 auto;
            width: 960px;
            text-align: left
        }

        #header {
            height: 170px;
            position: relative
        }

        .siteTitle {
            position: absolute;
            top: 12px;
            left: 1px;
            font-weight: normal;
            margin: 0;
            padding: 0
        }

        .description {
            position: absolute;
            top: 5px;
            right: 5px;
            margin: 0;
            padding: 0;
            color: #ffffff;
            font-size: 9%;
            height: 95px;
            width: 350px
        }

        .navi {
            position: absolute;
            bottom: 4px;
            left: 0px;
            height: 59px;
            line-height: 50px
        }

        .navi ul {
            list-style: none;
            margin: 0;
            padding: 0;
            width: 960px;
            height: 50px;
            overflow: hidden;
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #FFFFFF;
            border-left-color: #FFFFFF
        }

        .navi ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            float: left;
            width: 14.285714%;
            height: 50px
        }

        .navi ul li a {
            text-decoration: none;
            padding: 10px 0px 5px;
            width: 100%;
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box
        }

        .navi ul li a .titleJa {
            display: block;
            height: 20px;
            line-height: 20px;
            text-align: center;
            font-size: 95%;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a .titleEn {
            display: block;
            height: 15px;
            line-height: 15px;
            text-align: center;
            font-size: 72%;
            font-weight: bold;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a:link,
        .navi ul li a:visited {
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #CCCCCC;
            border-left-color: #CCCCCC
        }

        .navi ul li a:link .titleJa,
        .navi ul li a:visited .titleJa {
            color: #666666
        }

        .navi ul li a:link .titleEn,
        .navi ul li a:visited .titleEn {
            color: #666666
        }

        .navi ul li a:hover,
        .navi ul li a:active {
            border-left: #CCCCCC solid 1px;
            border-right: #CCCCCC solid 1px;
            color: #FFF;
            background-color: #00A0E9
        }

        .navi ul li a:hover .titleJa,
        .navi ul li a:active .titleJa {
            color: #FFFFFF
        }

        .navi ul li a:hover .titleEn,
        .navi ul li a:active .titleEn {
            color: #FFFFFF
        }

        #contentsWrapper {
            width: 960px;
            text-align: left;
            margin-top: 0;
            margin-right: auto;
            margin-bottom: 0;
            margin-left: auto
        }

        #footerWrapper {
            margin: 20px 0 0;
            text-align: center;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC)repeat-x
        }

        #footer {
            width: 960px;
            text-align: left;
            margin: 0 auto;
            padding: 0
        }

        #footerMenu ul {
            margin: 0;
            padding: 0;
            width: 960px;
            height: 30px;
            overflow: hidden;
            list-style: none
        }

        #footerMenu ul li {
            margin: 0;
            padding: 0 6px 0 20px;
            list-style: none;
            float: left;
            width: 14.285714%;
            height: 30px;
            line-height: 30px;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAYklEQVR42pWSuwkAMAhELdzhBrGwzCoZ3U0MHqS7xsBBIO9pfnbO6UlmNoB29zazCecAuPY5ChHxQRGKZCiMLWApDWsABKBDVlWvqr73yi6mKv0hxLWw3tL60Otr3T/c+ms8+6a9tTIVTRoAAAAASUVORK5CYII=)left center no-repeat
        }

        #footerMenu ul a {
            display: block;
            height: 30px;
            line-height: 30px;
            color: #FFF;
            text-decoration: none;
            font-size: 93%;
            white-space: nowrap;
            word-break: normal
        }

        #footerMenu ul a:hover {
            text-decoration: underline
        }

        .footerAddress {
            text-align: right;
            height: 50px;
            line-height: 50px
        }

        #footer .copyright {
            margin: 0;
            padding: 10px 0;
            text-align: center;
            font-size: 93%
        }

        #menu {
            margin: 0 0 20px
        }

        #main {
            margin: 0 0 20px;
            font-size: 93%
        }

        #main #titleimg {
            margin-bottom: 10px
        }

        #menu #btnimg {
            margin-top: 5px
        }

        #menu .menuListbox {
            border: 1px solid #CCC;
            margin-top: 3px;
            padding-right: 7px;
            padding-left: 7px
        }

        #menu .menuList ul li a:hover,
        #menu .menuList ul li a:active {
            color: #999
        }

        #menu .menuList .subMidashi {
            margin: 0 !important
        }

        .panList {
            height: 30px;
            line-height: 30px;
            font-size: 60%;
            color: #000
        }

        .subMidashi {
            height: 50px;
            padding: 0;
            margin: 0 0 15px;
            font-size: 123.1%;
            background-color: #f3f3f3;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 5px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #00a0e9;
            border-left-color: #ccc
        }

        .subMidashi .midashiText {
            color: #333;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAQMAAAC3/F3+AAAABlBMVEUAAACsLFO+VnYrAAAAAXRSTlMAQObYZgAAABFJREFUCFtj+HyAAY4gAEkEAMzSDZkz80YgAAAAAElFTkSuQmCC)16px center no-repeat;
            display: block;
            line-height: 50px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px
        }

        .subMidashi3 {
            height: 30px;
            padding: 0;
            font-size: 123.1%;
            background-color: #E6F8FE;
            margin-top: 0;
            margin-right: 0;
            margin-bottom: 15px;
            margin-left: 0
        }

        .subMidashi3 .midashiText3 {
            color: #06C;
            display: block;
            line-height: 30px;
            border: #FFF solid 1px;
            background-position: 16px center;
            padding-top: 0;
            padding-right: 0;
            padding-bottom: 0;
            padding-left: 20px
        }

        .photo {
            float: left;
            margin: 0 20px 0 0
        }

        #sub #main {
            float: right;
            width: 680px
        }

        #sub #menu {
            float: left;
            width: 250px
        }

        .businessItem {
            margin: 0 0 30px
        }

        .hospitalbox {
            height: 245px;
            width: 315px;
            margin-top: 10px;
            margin-right: 10px;
            margin-bottom: 30px;
            margin-left: 10px;
            float: left;
            border: 1px solid #CCC
        }

        body {
            font: 13px/1.231 arial, helvetica, clean, sans-serif;
            *font-size: small;
            *font: x-small
        }

        * {
            line-height: 180%;
            word-break: break-all
        }

        img {
            border: none;
            -ms-interpolation-mode: bicubic
        }

        .clearFix {
            zoom: 100%
        }

        .clearFix:after {
            content: " ";
            clear: both;
            height: 0;
            display: block;
            visibility: hidden
        }

        body#sub {
            margin: 0 auto;
            padding: 0px 0 0;
            text-align: center;
            color: #333333;
            font-family: Verdana, Arial, Helvetica, "meirio", "メイリオ", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", Osaka, "ＭＳ Ｐゴシック", sans-serif;
            background-color: #ffffff;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAADICAYAAAAgGSuPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3MDZGMTlFRjBGNTZFNDExOUU1N0YwODcyRUUzNDYzNyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxMzEzNzEyQjU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxMzEzNzEyQTU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjcxNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjcwNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WfOpqQAAAHFJREFUeNpi/P//PwM6YGLAAkYFRwVHBUcFRwVHBUcFRwWpK8jy9vVrjIYIy4NHj4jUzsjISIHKQaidboID7E4mJqahEEqDUZBeQTdCUjL9tO+78xpDkJFhwcv/dClpgdgEm+BZDCeN9g1HBakkCBBgAE0zFQGlwFC4AAAAAElFTkSuQmCC);
            background-repeat: repeat-x
        }

        a:link,
        a:visited {
            color: #4D82C4
        }

        a:hover,
        a:active {
            color: #CC4866
        }

        a:hover img:hover {
            opacity: 0.6;
            filter: alpha(opacity=70);
            -ms-filter: "alpha( opacity=70 )";
            -moz-opacity: 0.7;
            -khtml-opacity: 0.7
        }

        #wrapper {
            margin: 0;
            padding: 0
        }

        #headerWrapper {
            margin: 0 auto;
            width: 960px;
            text-align: left
        }

        #header {
            height: 170px;
            position: relative
        }

        .siteTitle {
            position: absolute;
            top: 12px;
            left: 1px;
            font-weight: normal;
            margin: 0;
            padding: 0
        }

        .description {
            position: absolute;
            top: 5px;
            right: 5px;
            margin: 0;
            padding: 0;
            color: #ffffff;
            font-size: 9%;
            height: 95px;
            width: 350px
        }

        .navi {
            position: absolute;
            bottom: 4px;
            left: 0px;
            height: 59px;
            line-height: 50px
        }

        .navi ul {
            list-style: none;
            margin: 0;
            padding: 0;
            width: 960px;
            height: 50px;
            overflow: hidden;
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #FFFFFF;
            border-left-color: #FFFFFF
        }

        .navi ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            float: left;
            width: 14.285714%;
            height: 50px
        }

        .navi ul li a {
            text-decoration: none;
            padding: 10px 0px 5px;
            width: 100%;
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box
        }

        .navi ul li a .titleJa {
            display: block;
            height: 20px;
            line-height: 20px;
            text-align: center;
            font-size: 95%;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a .titleEn {
            display: block;
            height: 15px;
            line-height: 15px;
            text-align: center;
            font-size: 72%;
            font-weight: bold;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a:link,
        .navi ul li a:visited {
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #CCCCCC;
            border-left-color: #CCCCCC
        }

        .navi ul li a:link .titleJa,
        .navi ul li a:visited .titleJa {
            color: #666666
        }

        .navi ul li a:link .titleEn,
        .navi ul li a:visited .titleEn {
            color: #666666
        }

        .navi ul li a:hover,
        .navi ul li a:active {
            border-left: #CCCCCC solid 1px;
            border-right: #CCCCCC solid 1px;
            color: #FFF;
            background-color: #00A0E9
        }

        .navi ul li a:hover .titleJa,
        .navi ul li a:active .titleJa {
            color: #FFFFFF
        }

        .navi ul li a:hover .titleEn,
        .navi ul li a:active .titleEn {
            color: #FFFFFF
        }

        #contentsWrapper {
            width: 960px;
            text-align: left;
            margin-top: 0;
            margin-right: auto;
            margin-bottom: 0;
            margin-left: auto
        }

        #footerWrapper {
            margin: 20px 0 0;
            text-align: center;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC)repeat-x
        }

        #footer {
            width: 960px;
            text-align: left;
            margin: 0 auto;
            padding: 0
        }

        #footerMenu ul {
            margin: 0;
            padding: 0;
            width: 960px;
            height: 30px;
            overflow: hidden;
            list-style: none
        }

        #footerMenu ul li {
            margin: 0;
            padding: 0 6px 0 20px;
            list-style: none;
            float: left;
            width: 14.285714%;
            height: 30px;
            line-height: 30px;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAYklEQVR42pWSuwkAMAhELdzhBrGwzCoZ3U0MHqS7xsBBIO9pfnbO6UlmNoB29zazCecAuPY5ChHxQRGKZCiMLWApDWsABKBDVlWvqr73yi6mKv0hxLWw3tL60Otr3T/c+ms8+6a9tTIVTRoAAAAASUVORK5CYII=)left center no-repeat
        }

        #footerMenu ul a {
            display: block;
            height: 30px;
            line-height: 30px;
            color: #FFF;
            text-decoration: none;
            font-size: 93%;
            white-space: nowrap;
            word-break: normal
        }

        #footerMenu ul a:hover {
            text-decoration: underline
        }

        .footerAddress {
            text-align: right;
            height: 50px;
            line-height: 50px
        }

        #footer .copyright {
            margin: 0;
            padding: 10px 0;
            text-align: center;
            font-size: 93%
        }

        #menu {
            margin: 0 0 20px
        }

        #main {
            margin: 0 0 20px;
            font-size: 93%
        }

        #main #titleimg {
            margin-bottom: 10px
        }

        #menu #btnimg {
            margin-top: 5px
        }

        #menu .menuListbox {
            border: 1px solid #CCC;
            margin-top: 3px;
            padding-right: 7px;
            padding-left: 7px
        }

        #menu .menuList ul li a:hover,
        #menu .menuList ul li a:active {
            color: #999
        }

        #menu .menuList .subMidashi {
            margin: 0 !important
        }

        .panList {
            height: 30px;
            line-height: 30px;
            font-size: 60%;
            color: #000
        }

        .subMidashi {
            height: 50px;
            padding: 0;
            margin: 0 0 15px;
            font-size: 123.1%;
            background-color: #f3f3f3;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 5px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #00a0e9;
            border-left-color: #ccc
        }

        .subMidashi .midashiText {
            color: #333;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAQMAAAC3/F3+AAAABlBMVEUAAACsLFO+VnYrAAAAAXRSTlMAQObYZgAAABFJREFUCFtj+HyAAY4gAEkEAMzSDZkz80YgAAAAAElFTkSuQmCC)16px center no-repeat;
            display: block;
            line-height: 50px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px
        }

        .photo {
            float: left;
            margin: 0 20px 0 0
        }

        #sub #main {
            float: right;
            width: 680px
        }

        #sub #menu {
            float: left;
            width: 250px
        }

        .businessItem {
            margin: 0 0 30px
        }

        .companyAddress {
            width: 450px;
            float: right
        }

        body {
            font: 13px/1.231 arial, helvetica, clean, sans-serif;
            *font-size: small;
            *font: x-small
        }

        * {
            line-height: 180%;
            word-break: break-all
        }

        img {
            border: none;
            -ms-interpolation-mode: bicubic
        }

        .clearFix {
            zoom: 100%
        }

        .clearFix:after {
            content: " ";
            clear: both;
            height: 0;
            display: block;
            visibility: hidden
        }

        body#sub {
            margin: 0 auto;
            padding: 0px 0 0;
            text-align: center;
            color: #333333;
            font-family: Verdana, Arial, Helvetica, "meirio", "メイリオ", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", Osaka, "ＭＳ Ｐゴシック", sans-serif;
            background-color: #ffffff;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAADICAYAAAAgGSuPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3MDZGMTlFRjBGNTZFNDExOUU1N0YwODcyRUUzNDYzNyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxMzEzNzEyQjU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxMzEzNzEyQTU2MTAxMUU0Qjc1Q0JBNEQzMzExOUQyMSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjcxNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjcwNkYxOUVGMEY1NkU0MTE5RTU3RjA4NzJFRTM0NjM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+WfOpqQAAAHFJREFUeNpi/P//PwM6YGLAAkYFRwVHBUcFRwVHBUcFRwWpK8jy9vVrjIYIy4NHj4jUzsjISIHKQaidboID7E4mJqahEEqDUZBeQTdCUjL9tO+78xpDkJFhwcv/dClpgdgEm+BZDCeN9g1HBakkCBBgAE0zFQGlwFC4AAAAAElFTkSuQmCC);
            background-repeat: repeat-x
        }

        a:link,
        a:visited {
            color: #4D82C4
        }

        a:hover,
        a:active {
            color: #CC4866
        }

        a:hover img:hover {
            opacity: 0.6;
            filter: alpha(opacity=70);
            -ms-filter: "alpha( opacity=70 )";
            -moz-opacity: 0.7;
            -khtml-opacity: 0.7
        }

        #wrapper {
            margin: 0;
            padding: 0
        }

        #headerWrapper {
            margin: 0 auto;
            width: 960px;
            text-align: left
        }

        #header {
            height: 170px;
            position: relative
        }

        .siteTitle {
            position: absolute;
            top: 12px;
            left: 1px;
            font-weight: normal;
            margin: 0;
            padding: 0
        }

        .description {
            position: absolute;
            top: 5px;
            right: 5px;
            margin: 0;
            padding: 0;
            color: #ffffff;
            font-size: 9%;
            height: 95px;
            width: 350px
        }

        .navi {
            position: absolute;
            bottom: 4px;
            left: 0px;
            height: 59px;
            line-height: 50px
        }

        .navi ul {
            list-style: none;
            margin: 0;
            padding: 0;
            width: 960px;
            height: 50px;
            overflow: hidden;
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #FFFFFF;
            border-left-color: #FFFFFF
        }

        .navi ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            float: left;
            width: 14.285714%;
            height: 50px
        }

        .navi ul li a {
            text-decoration: none;
            padding: 10px 0px 5px;
            width: 100%;
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box
        }

        .navi ul li a .titleJa {
            display: block;
            height: 20px;
            line-height: 20px;
            text-align: center;
            font-size: 95%;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a .titleEn {
            display: block;
            height: 15px;
            line-height: 15px;
            text-align: center;
            font-size: 72%;
            font-weight: bold;
            white-space: nowrap;
            word-break: normal;
        }

        .navi ul li a:link,
        .navi ul li a:visited {
            border-right-width: 1px;
            border-left-width: 1px;
            border-right-style: solid;
            border-left-style: solid;
            border-right-color: #CCCCCC;
            border-left-color: #CCCCCC
        }

        .navi ul li a:link .titleJa,
        .navi ul li a:visited .titleJa {
            color: #666666
        }

        .navi ul li a:link .titleEn,
        .navi ul li a:visited .titleEn {
            color: #666666
        }

        .navi ul li a:hover,
        .navi ul li a:active {
            border-left: #CCCCCC solid 1px;
            border-right: #CCCCCC solid 1px;
            color: #FFF;
            background-color: #00A0E9
        }

        .navi ul li a:hover .titleJa,
        .navi ul li a:active .titleJa {
            color: #FFFFFF
        }

        .navi ul li a:hover .titleEn,
        .navi ul li a:active .titleEn {
            color: #FFFFFF
        }

        #contentsWrapper {
            width: 960px;
            text-align: left;
            margin-top: 0;
            margin-right: auto;
            margin-bottom: 0;
            margin-left: auto
        }

        #footerWrapper {
            margin: 20px 0 0;
            text-align: center;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC)repeat-x
        }

        #footer {
            width: 960px;
            text-align: left;
            margin: 0 auto;
            padding: 0
        }

        #footerMenu ul {
            margin: 0;
            padding: 0;
            width: 960px;
            height: 30px;
            overflow: hidden;
            list-style: none
        }

        #footerMenu ul li {
            margin: 0;
            padding: 0 6px 0 20px;
            list-style: none;
            float: left;
            width: 14.285714%;
            height: 30px;
            line-height: 30px;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAYAAABWdVznAAAAYklEQVR42pWSuwkAMAhELdzhBrGwzCoZ3U0MHqS7xsBBIO9pfnbO6UlmNoB29zazCecAuPY5ChHxQRGKZCiMLWApDWsABKBDVlWvqr73yi6mKv0hxLWw3tL60Otr3T/c+ms8+6a9tTIVTRoAAAAASUVORK5CYII=)left center no-repeat
        }

        #footerMenu ul a {
            display: block;
            height: 30px;
            line-height: 30px;
            color: #FFF;
            text-decoration: none;
            font-size: 93%;
            white-space: nowrap;
            word-break: normal
        }

        #footerMenu ul a:hover {
            text-decoration: underline
        }

        .footerAddress {
            text-align: right;
            height: 50px;
            line-height: 50px
        }

        #footer .copyright {
            margin: 0;
            padding: 10px 0;
            text-align: center;
            font-size: 93%
        }

        #menu {
            margin: 0 0 20px
        }

        #main {
            margin: 0 0 20px;
            font-size: 93%
        }

        #main #titleimg {
            margin-bottom: 10px
        }

        #menu #btnimg {
            margin-top: 5px
        }

        #menu .menuListbox {
            border: 1px solid #CCC;
            margin-top: 3px;
            padding-right: 7px;
            padding-left: 7px
        }

        #menu .menuList ul li a:hover,
        #menu .menuList ul li a:active {
            color: #999
        }

        #menu .menuList .subMidashi {
            margin: 0 !important
        }

        .panList {
            height: 30px;
            line-height: 30px;
            font-size: 60%;
            color: #000
        }

        .subMidashi {
            height: 50px;
            padding: 0;
            font-size: 123.1%;
            background-color: #f3f3f3;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 5px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #00a0e9;
            border-left-color: #ccc
        }

        .subMidashi .midashiText {
            color: #333;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKAQMAAAC3/F3+AAAABlBMVEUAAACsLFO+VnYrAAAAAXRSTlMAQObYZgAAABFJREFUCFtj+HyAAY4gAEkEAMzSDZkz80YgAAAAAElFTkSuQmCC)16px center no-repeat;
            display: block;
            line-height: 50px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px
        }

        .subMidashi2 {
            height: 30px;
            padding: 0;
            font-size: 123.1%;
            background-color: #E6F8FE;
            border-top-width: 1px;
            border-right-width: 1px;
            border-bottom-width: 1px;
            border-left-width: 1px;
            border-top-style: solid;
            border-right-style: solid;
            border-bottom-style: solid;
            border-left-style: solid;
            border-top-color: #ccc;
            border-right-color: #ccc;
            border-bottom-color: #CCCCCC;
            border-left-color: #ccc;
            margin-top: 0;
            margin-right: 0;
            margin-bottom: 15px;
            margin-left: 0
        }

        .subMidashi2 .midashiText2 {
            color: #06F;
            display: block;
            line-height: 30px;
            padding: 0 0 0 36px;
            border: #FFF solid 1px;
            background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAZCAYAAAAIcL+IAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2RTU5MDI2QTI0NUFFNDExQjNGM0M0NjM1REYxNzhDMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0NTA1NjEzQjVBMkUxMUU0OEM1OUZCMTc4MUExRjYwRiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0NTA1NjEzQTVBMkUxMUU0OEM1OUZCMTc4MUExRjYwRiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjZGNTkwMjZBMjQ1QUU0MTFCM0YzQzQ2MzVERjE3OEMxIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjZFNTkwMjZBMjQ1QUU0MTFCM0YzQzQ2MzVERjE3OEMxIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+L6nVhQAAACpJREFUeNpi/P//PwNjOgMI/GfABIz/Z0IYTAxEglGFowpHFQ4ZhQABBgAZ0QYv8G9+pwAAAABJRU5ErkJggg==);
            background-repeat: no-repeat;
            background-position: 16px center
        }

        .subMidashi3 {
            height: 30px;
            padding: 0;
            font-size: 123.1%;
            background-color: #E6F8FE;
            margin-top: 0;
            margin-right: 0;
            margin-bottom: 15px;
            margin-left: 0
        }

        .subMidashi3 .midashiText3 {
            color: #06C;
            display: block;
            line-height: 30px;
            border: #FFF solid 1px;
            background-position: 16px center;
            padding-top: 0;
            padding-right: 0;
            padding-bottom: 0;
            padding-left: 20px
        }

        #sub #main {
            float: right;
            width: 680px
        }

        #sub #menu {
            float: left;
            width: 250px
        }

        .facilitybox {
            height: 320px;
            width: 315px;
            margin-top: 10px;
            margin-right: 10px;
            margin-bottom: 30px;
            margin-left: 10px;
            float: left;
            border: 1px solid #CCC
        }

        .facilitybox .photoFlame {
            border: 2px solid #ccc
        }

        .facilitybox .expText {
            padding-top: 10px;
            padding-right: 10px;
            padding-bottom: 10px;
            padding-left: 10px
        }


        /* SPA Layout and Switching Styles */
        .spa-page {
            display: none;
            width: 100%;
        }

        .spa-page.active {
            display: block;
            overflow: hidden;
            /* BFC: chứa float #sub #menu/#main, tránh footer bị lệch */
        }

        /* Ensure pages transition smoothly */
        #contentsContainer {
            width: 960px;
            margin: 0 auto;
            text-align: left;
            clear: both;
        }

        /* Active link highlight style */
        .navi ul li a.active-tab {
            background-color: #00A0E9 !important;
            color: #FFFFFF !important;
        }

        .navi ul li a.active-tab .titleJa,
        .navi ul li a.active-tab .titleEn {
            color: #FFFFFF !important;
        }

        /* === FOOTER FIX: Ensure footer always displays correctly regardless of body#sub === */
        /* footerWrapper must always be visible and use correct background */
        #footerWrapper {
            display: block !important;
            margin: 20px 0 0 !important;
            text-align: center !important;
            background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAC0CAYAAAC+Jf1MAAAAKklEQVR42u3GQQ0AAAjDQJzNv5DpGBBM8GiTJleSsoNFLvAbtjMDAN6hAS261NmIjdiXAAAAAElFTkSuQmCC) repeat-x !important;
            clear: both !important;
            float: none !important;
            width: 100% !important;
            overflow: hidden !important;
            position: relative !important;
            box-sizing: border-box !important;
        }

        /* footer container must be centered with correct width */
        #footer {
            width: 960px !important;
            text-align: left !important;
            margin: 0 auto !important;
            padding: 0 !important;
            float: none !important;
            overflow: hidden !important;
        }

        /* footerMenu links must be visible */
        #footerMenu {
            overflow: hidden !important;
        }

        #footerMenu ul {
            margin: 0 !important;
            padding: 0 !important;
            width: 960px !important;
            height: 30px !important;
            list-style: none !important;
            overflow: hidden !important;
        }

        #footerMenu ul li {
            float: left !important;
            width: 14.285714% !important;
            height: 30px !important;
            line-height: 30px !important;
            padding: 0 6px 0 20px !important;
            box-sizing: border-box !important;
            -moz-box-sizing: border-box !important;
            -webkit-box-sizing: border-box !important;
        }

        #footerMenu ul a {
            display: block !important;
            color: #FFF !important;
            text-decoration: none !important;
            font-size: 93% !important;
            white-space: nowrap !important;
            word-break: normal !important;
        }

        .footerAddress {
            text-align: right !important;
            height: 50px !important;
            line-height: 50px !important;
            clear: both !important;
        }

        #footer .copyright {
            margin: 0 !important;
            padding: 10px 0 !important;
            text-align: center !important;
            clear: both !important;
        }

        /* === END FOOTER FIX === */
    


                        /* ==========================================================================
                   Rehabilitation Pages - Modern Layout, Card, and Hover Styles
                   ========================================================================== */

                        /* 1. Header & Navigation Cards (Top Page) */
                        .rehab-nav {
                            display: flex;
                            justify-content: center;
                            gap: 20px;
                            margin: 30px 0 45px;
                        }

                        @media (max-width: 768px) {
                            .rehab-nav {
                                flex-direction: column;
                                align-items: center;
                                gap: 15px;
                            }

                            .rehab-nav a {
                                width: 100%;
                                max-width: 320px;
                            }
                        }

                        .rehab-nav a {
                            flex: 1;
                            max-width: 240px;
                            padding: 18px 24px;
                            background: #ffffff;
                            border: 1px solid rgba(0, 160, 233, 0.15);
                            border-radius: 50px;
                            text-align: center;
                            text-decoration: none;
                            color: #333333;
                            font-weight: bold;
                            font-size: 15px;
                            box-shadow: 0 4px 15px rgba(0, 160, 233, 0.05);
                            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
                            display: inline-block;
                            position: relative;
                            overflow: hidden;
                            z-index: 1;
                        }

                        .rehab-nav a::before {
                            content: '';
                            position: absolute;
                            top: 0;
                            left: 0;
                            width: 100%;
                            height: 100%;
                            background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
                            z-index: -1;
                            opacity: 0;
                            transition: opacity 0.4s ease;
                        }

                        .rehab-nav a:hover {
                            transform: translateY(-4px);
                            box-shadow: 0 12px 28px rgba(0, 160, 233, 0.16);
                            border-color: #00A0E9;
                            color: #00A0E9;
                        }

                        .rehab-nav a:hover::before {
                            opacity: 1;
                        }

                        /* 2. Highlight and About Boxes */
                        .rehab-about-box,
                        .highlight-box {
                            background: linear-gradient(135deg, #f8fafc 0%, #ffffff 100%) !important;
                            border-left: 5px solid #00A0E9 !important;
                            border-top: 1px solid #e2e8f0 !important;
                            border-right: 1px solid #e2e8f0 !important;
                            border-bottom: 1px solid #e2e8f0 !important;
                            border-radius: 8px 16px 16px 8px !important;
                            padding: 28px !important;
                            margin: 25px 0 40px !important;
                            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02) !important;
                            box-sizing: border-box;
                            transition: all 0.3s ease !important;
                        }

                        .rehab-about-box:hover,
                        .highlight-box:hover {
                            transform: translateY(-2px);
                            box-shadow: 0 8px 30px rgba(0, 160, 233, 0.08) !important;
                            border-color: rgba(0, 160, 233, 0.25) !important;
                        }

                        .rehab-about-box p,
                        .highlight-box p {
                            margin: 0 0 12px 0 !important;
                            line-height: 1.8 !important;
                            color: #4a5568 !important;
                            font-size: 14.5px !important;
                        }

                        .rehab-about-box p:last-child,
                        .highlight-box p:last-child {
                            margin-bottom: 0 !important;
                        }

                        .home-rehab-main {
                            margin-top: 40px;
                        }

                        /* Intro hero card */
                        .home-rehab-main .businessItem {
                            background: linear-gradient(135deg, #ffffff 0%, #f7fbfd 100%) !important;
                            border: 1px solid rgba(0, 160, 233, 0.15) !important;
                            border-radius: 16px !important;
                            padding: 30px !important;
                            margin-bottom: 35px !important;
                            box-shadow: 0 6px 20px rgba(0, 160, 233, 0.04) !important;
                            transition: all 0.3s ease !important;
                        }

                        .home-rehab-main .businessItem:hover {
                            transform: translateY(-2px);
                            box-shadow: 0 12px 30px rgba(0, 160, 233, 0.12) !important;
                            border-color: #00A0E9 !important;
                        }

                        .home-rehab-main .businessItem p {
                            font-size: 15px !important;
                            line-height: 1.8 !important;
                            color: #4a5568 !important;
                            margin: 0 !important;
                        }

                        /* 3. Features Cards Grid (当院リハビリの特徴) */
                        .rehab-features-grid {
                            display: grid;
                            grid-template-columns: repeat(2, 1fr);
                            gap: 24px;
                            margin: 25px 0 45px;
                        }

                        @media (max-width: 768px) {
                            .rehab-features-grid {
                                grid-template-columns: 1fr;
                                gap: 18px;
                            }
                        }

                        .rehab-feature-card {
                            background: #ffffff;
                            border: 1px solid rgba(0, 160, 233, 0.12);
                            border-radius: 16px;
                            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.01);
                            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
                            position: relative;
                            overflow: hidden;
                            display: flex;
                            flex-direction: column;
                        }

                        .rehab-feature-card:hover {
                            transform: translateY(-5px);
                            box-shadow: 0 15px 35px rgba(0, 160, 233, 0.12);
                            border-color: #00A0E9;
                        }

                        .rehab-feature-card::after {
                            content: '';
                            position: absolute;
                            left: 0;
                            top: 0;
                            bottom: 0;
                            width: 4px;
                            background: #00A0E9;
                            transform: scaleY(0);
                            transition: transform 0.3s ease;
                            z-index: 2;
                        }

                        .rehab-feature-card:hover::after {
                            transform: scaleY(1);
                        }

                        .rh-feature-img-wrapper {
                            width: 100%;
                            height: 180px;
                            overflow: hidden;
                            position: relative;
                        }

                        .rh-feature-img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
                        }

                        .rehab-feature-card:hover .rh-feature-img {
                            transform: scale(1.08);
                        }

                        .rh-feature-body {
                            padding: 24px !important;
                            flex-grow: 1;
                            display: flex;
                            flex-direction: column;
                        }

                        .rehab-feature-card .icon {
                            display: inline-block;
                            width: 48px;
                            height: 48px;
                            border-radius: 50%;
                            background-color: #f0f9ff;
                            background-position: center;
                            background-repeat: no-repeat;
                            background-size: 24px;
                            margin-bottom: 18px;
                            transition: all 0.3s ease;
                        }

                        .rehab-feature-card:hover .icon {
                            background-color: #00A0E9;
                            transform: scale(1.05) rotate(360deg);
                        }

                        .rehab-feature-card:nth-child(1) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:nth-child(2) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:nth-child(3) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M13.49 5.48c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm-3.6 13.9l.89-4.25-1.93-.84c-.4-.17-.67-.58-.67-1.02V8.5c0-.83.67-1.5 1.5-1.5h3.5c.55 0 1.05.3 1.3.77l1.32 2.44 2.24.49c.47.1.81.52.81 1s-.34.9-.81 1l-2.73-.6c-.34-.08-.65-.28-.84-.58L13.7 9.5l-.84 4 2.14 2c.29.27.46.64.46 1.04v3.96c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-2.29l-2.53-2.33-.5.5v3.62c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-4.5c0-.44.19-.85.53-1.13l2.57-2.43z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:nth-child(4) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 3L2 12h3v8h14v-8h3L12 3zm0 13c-1.66 0-3-1.34-3-3s3-5 3-5 3 3.66 3 5-1.34 3-3 3z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:hover:nth-child(1) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:hover:nth-child(2) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:hover:nth-child(3) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M13.49 5.48c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm-3.6 13.9l.89-4.25-1.93-.84c-.4-.17-.67-.58-.67-1.02V8.5c0-.83.67-1.5 1.5-1.5h3.5c.55 0 1.05.3 1.3.77l1.32 2.44 2.24.49c.47.1.81.52.81 1s-.34.9-.81 1l-2.73-.6c-.34-.08-.65-.28-.84-.58L13.7 9.5l-.84 4 2.14 2c.29.27.46.64.46 1.04v3.96c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-2.29l-2.53-2.33-.5.5v3.62c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-4.5c0-.44.19-.85.53-1.13l2.57-2.43z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card:hover:nth-child(4) .icon {
                            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M12 3L2 12h3v8h14v-8h3L12 3zm0 13c-1.66 0-3-1.34-3-3s3-5 3-5 3 3.66 3 5-1.34 3-3 3z'/%3E%3C/svg%3E");
                        }

                        .rehab-feature-card strong {
                            display: block;
                            font-size: 16px;
                            color: #2d3748;
                            margin-bottom: 10px;
                            font-weight: bold;
                        }

                        .rehab-feature-card p {
                            font-size: 13.5px;
                            color: #718096;
                            line-height: 1.6;
                            margin: 0;
                        }

                        /* 4. Category Cards Grid (対象別リハビリテーション) */
                        .rehab-category-grid {
                            display: grid;
                            grid-template-columns: repeat(3, 1fr);
                            gap: 24px;
                            margin: 25px 0 45px;
                        }

                        @media (max-width: 768px) {
                            .rehab-category-grid {
                                grid-template-columns: 1fr;
                                gap: 18px;
                            }
                        }

                        .rehab-category-card {
                            background: #ffffff;
                            border: 1px solid rgba(0, 160, 233, 0.12);
                            border-top: 4px solid #00A0E9;
                            border-radius: 12px;
                            padding: 26px;
                            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.01);
                            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
                            box-sizing: border-box;
                            position: relative;
                        }

                        .rehab-category-card:hover {
                            transform: translateY(-5px);
                            box-shadow: 0 15px 35px rgba(0, 160, 233, 0.12);
                            border-color: #00A0E9;
                        }

                        .rehab-category-card h4 {
                            font-size: 16px;
                            color: #00A0E9;
                            margin: 0 0 12px;
                            font-weight: bold;
                            transition: color 0.3s ease;
                        }

                        .rehab-category-card:hover h4 {
                            color: #0084c2;
                        }

                        .rehab-category-card p {
                            font-size: 13.5px;
                            color: #718096;
                            line-height: 1.6;
                            margin: 0;
                        }

                        /* 5. FAQ DL styling */
                        .rehab-faq-dl dt,
                        .spa-page dl dt {
                            position: relative;
                            font-weight: bold;
                            color: #2d3748;
                            padding: 16px 20px 16px 45px;
                            background: #ffffff;
                            border: 1px solid #e2e8f0;
                            border-radius: 8px 8px 0 0;
                            margin-top: 20px;
                            font-size: 14.5px;
                            transition: all 0.3s ease;
                            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.01);
                        }

                        .rehab-faq-dl dt::before,
                        .spa-page dl dt::before {
                            content: "Q";
                            font-size: 18px;
                            color: #00A0E9;
                            font-weight: 800;
                            position: absolute;
                            left: 20px;
                            top: 50%;
                            transform: translateY(-50%);
                        }

                        .rehab-faq-dl dd,
                        .spa-page dl dd {
                            padding: 16px 20px 16px 45px;
                            margin: 0;
                            line-height: 1.7;
                            font-size: 13.5px;
                            color: #4a5568;
                            background: #f8fafc;
                            border: 1px solid #e2e8f0;
                            border-top: none;
                            border-radius: 0 0 8px 8px;
                            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
                            position: relative;
                        }

                        .rehab-faq-dl dd::before,
                        .spa-page dl dd::before {
                            content: "A";
                            font-size: 18px;
                            color: #e57373;
                            font-weight: 800;
                            position: absolute;
                            left: 20px;
                            top: 16px;
                        }

                        .rehab-faq-dl dt:hover,
                        .spa-page dl dt:hover {
                            border-color: #00A0E9;
                            background-color: #f0f9ff;
                        }

                        /* 6. Consultation CTAs */
                        .rehab-consult-card {
                            background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
                            border: 1px solid #bae6fd;
                            border-radius: 16px;
                            padding: 35px 30px;
                            text-align: center;
                            margin: 35px 0;
                            box-shadow: 0 6px 20px rgba(0, 160, 233, 0.06);
                            transition: all 0.3s ease;
                        }

                        .rehab-consult-card:hover {
                            transform: translateY(-4px);
                            box-shadow: 0 15px 35px rgba(0, 160, 233, 0.15);
                            border-color: #00A0E9;
                        }

                        .rehab-consult-card p {
                            font-size: 16px;
                            color: #2d3748;
                            margin: 0 0 18px 0;
                            font-weight: bold;
                        }

                        .rehab-consult-card .tel {
                            font-size: 28px;
                            font-weight: bold;
                            color: #00A0E9;
                            display: inline-block;
                            letter-spacing: 1px;
                            border-bottom: 2px solid #00A0E9;
                            padding-bottom: 4px;
                            transition: all 0.3s ease;
                        }

                        .rehab-consult-card:hover .tel {
                            color: #0084c2;
                            border-bottom-color: #0084c2;
                            transform: scale(1.03);
                        }

                        /* 7. Subpages Specific Layouts */
                        .subpage-hero-img {
                            width: 100%;
                            max-height: 500px;
                            object-fit: cover;
                            border-radius: 12px;
                            margin-bottom: 25px;
                            box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
                            transition: all 0.4s ease;
                        }

                        .subpage-hero-img:hover {
                            transform: scale(1.015);
                            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
                        }

                        .info-card {
                            display: flex;
                            gap: 24px;
                            align-items: flex-start;
                            background: #ffffff !important;
                            border: 1px solid rgba(0, 160, 233, 0.12) !important;
                            border-radius: 16px !important;
                            padding: 24px !important;
                            margin: 25px 0 !important;
                            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.01) !important;
                            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
                        }

                        .info-card:hover {
                            transform: translateY(-3px);
                            box-shadow: 0 12px 30px rgba(0, 160, 233, 0.12) !important;
                            border-color: #00A0E9 !important;
                        }

                        .info-card img {
                            width: 300px !important;
                            height: 200px !important;
                            object-fit: cover !important;
                            border-radius: 10px !important;
                            flex-shrink: 0 !important;
                            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
                            transition: transform 0.4s ease;
                        }

                        @media (max-width: 640px) {
                            .info-card {
                                flex-direction: column !important;
                                align-items: stretch !important;
                            }
                            .info-card img {
                                width: 100% !important;
                                height: 200px !important;
                            }
                        }

                        .info-card:hover img {
                            transform: scale(1.04);
                        }

                        .info-card .text {
                            flex: 1;
                        }

                        .info-card .text h4 {
                            margin: 0 0 10px !important;
                            color: #00A0E9 !important;
                            font-size: 16px !important;
                            font-weight: bold !important;
                        }

                        .info-card .text p {
                            margin: 0 !important;
                            font-size: 13.5px !important;
                            color: #4a5568 !important;
                            line-height: 1.6 !important;
                        }

                        /* 8. Styled Lists & Sidenavs */
                        .rehab-list {
                            list-style: none !important;
                            padding-left: 0 !important;
                            margin: 15px 0 !important;
                        }

                        .rehab-list li {
                            position: relative !important;
                            padding: 10px 0 10px 25px !important;
                            border-bottom: 1px solid #f1f5f9 !important;
                            font-size: 14px !important;
                            color: #4a5568 !important;
                            transition: all 0.3s ease;
                        }

                        .rehab-list li:hover {
                            padding-left: 30px !important;
                            color: #1a202c !important;
                            background-color: #f0f9ff;
                        }

                        .rehab-list li::before {
                            content: "✓" !important;
                            color: #00A0E9 !important;
                            font-weight: bold !important;
                            position: absolute !important;
                            left: 5px !important;
                            top: 10px !important;
                            transition: all 0.3s ease;
                        }

                        .rehab-list li:hover::before {
                            left: 10px !important;
                        }

                        .rehab-sidenav {
                            list-style: none !important;
                            padding: 0 !important;
                            margin: 0 !important;
                        }

                        .rehab-sidenav li {
                            margin-bottom: 10px !important;
                            list-style: none !important;
                            padding: 0 !important;
                            background: none !important;
                        }

                        .rehab-sidenav li a {
                            display: block !important;
                            padding: 12px 18px !important;
                            border-radius: 8px !important;
                            text-decoration: none !important;
                            color: #4a5568 !important;
                            background: #ffffff !important;
                            border: 1px solid #e2e8f0 !important;
                            transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
                            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.01) !important;
                        }

                        .rehab-sidenav li a:hover {
                            background: #f0f9ff !important;
                            color: #00A0E9 !important;
                            border-color: #bae6fd !important;
                            transform: translateX(5px) !important;
                            box-shadow: 0 4px 12px rgba(0, 160, 233, 0.08) !important;
                        }

                        .rehab-sidenav li a.rehab-sidenav-active {
                            background: linear-gradient(135deg, #00A0E9 0%, #0084c2 100%) !important;
                            color: #ffffff !important;
                            border-color: #00A0E9 !important;
                            font-weight: bold !important;
                            box-shadow: 0 4px 12px rgba(0, 160, 233, 0.25) !important;
                        }

                        /* 9. Footer Message Card */
                        .footer-msg {
                            background: linear-gradient(135deg, #00A0E9 0%, #0084c2 100%) !important;
                            color: #ffffff !important;
                            text-align: center !important;
                            padding: 26px !important;
                            font-size: 16px !important;
                            font-weight: bold !important;
                            margin-top: 40px !important;
                            border-radius: 12px !important;
                            box-shadow: 0 4px 15px rgba(0, 160, 233, 0.2) !important;
                            line-height: 1.7 !important;
                            transition: all 0.3s ease !important;
                        }

                        .footer-msg:hover {
                            transform: translateY(-2px);
                            box-shadow: 0 8px 25px rgba(0, 160, 233, 0.3) !important;
                        }

                        /* Fix subMidashi style */
                        .home-rehab-main .subMidashi {
                            height: auto !important;
                            min-height: 50px;
                        }

                        .home-rehab-main .subMidashi .midashiText {
                            line-height: 1.4 !important;
                            padding: 10px 0 10px 36px !important;
                            background-position: 16px center !important;
                        }
                    


                                        /* ======================================
   リハビリページ 統合スタイル（完全改訂版）
   ====================================== */

                                        /* --- 共通 --- */
                                        .home-rehab-main * {
                                            box-sizing: border-box;
                                        }

                                        /* --- セクション見出し（中央・英日2段・大文字） --- */
                                        .rh-heading {
                                            text-align: center;
                                            margin: 2.8rem 0 1.2rem;
                                            padding-bottom: 1rem;
                                            border-bottom: 2px solid #e0f0fb;
                                        }

                                        .rh-heading-en {
                                            display: block;
                                            font-size: 11px;
                                            font-weight: bold;
                                            letter-spacing: 0.18em;
                                            color: #00A0E9;
                                            text-transform: uppercase;
                                            margin-bottom: 6px;
                                        }

                                        .rh-heading-ja {
                                            display: block;
                                            font-size: 26px;
                                            font-weight: bold;
                                            color: #0d1f2d;
                                            line-height: 1.3;
                                            letter-spacing: 0.02em;
                                        }

                                        .rh-heading-bar {
                                            display: inline-block;
                                            width: 40px;
                                            height: 3px;
                                            background: #00A0E9;
                                            border-radius: 2px;
                                            margin-top: 10px;
                                        }

                                        /* --- ヒーロー --- */
                                        .rh-hero {
                                            background: #00A0E9;
                                            border-radius: 16px;
                                            padding: 2.8rem 2.6rem 2.4rem;
                                            margin-bottom: 2rem;
                                            position: relative;
                                            overflow: hidden;
                                        }

                                        .rh-hero::after {
                                            content: '';
                                            position: absolute;
                                            top: -60px;
                                            right: -60px;
                                            width: 260px;
                                            height: 260px;
                                            border-radius: 50%;
                                            background: rgba(255, 255, 255, 0.12);
                                            pointer-events: none;
                                        }

                                        .rh-hero-label {
                                            display: inline-block;
                                            font-size: 11px;
                                            font-weight: bold;
                                            letter-spacing: 0.12em;
                                            color: #ffffff;
                                            background: rgba(255, 255, 255, 0.2);
                                            border-radius: 4px;
                                            padding: 3px 10px;
                                            margin-bottom: 1rem;
                                        }

                                        .rh-hero-bar {
                                            width: 32px;
                                            height: 2px;
                                            background: #fff;
                                            margin: 0 0 1.1rem;
                                        }

                                        .rh-hero h3 {
                                            font-size: 22px !important;
                                            font-weight: bold !important;
                                            color: #ffffff !important;
                                            margin: 0 0 1rem !important;
                                            line-height: 1.5 !important;
                                            background: none !important;
                                            border: none !important;
                                            padding: 0 !important;
                                        }

                                        .rh-hero h3::before {
                                            display: none !important;
                                        }

                                        .rh-hero p {
                                            font-size: 14px;
                                            color: rgba(255, 255, 255, 0.88);
                                            line-height: 1.9;
                                            margin: 0;
                                        }

                                        /* --- ナビカード --- */
                                        .rh-nav {
                                            display: grid;
                                            grid-template-columns: repeat(3, 1fr);
                                            gap: 14px;
                                            margin-bottom: 2.8rem;
                                        }

                                        .rh-nav a {
                                            display: block;
                                            text-decoration: none;
                                            border-radius: 10px;
                                            overflow: hidden;
                                            background: #fff;
                                            box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
                                            transition: transform .2s, box-shadow .2s;
                                        }

                                        .rh-nav a:hover {
                                            transform: translateY(-3px);
                                            box-shadow: 0 8px 24px rgba(0, 160, 233, 0.14);
                                        }

                                        .rh-nav-img {
                                            width: 100%;
                                            aspect-ratio: 4 / 3;
                                            object-fit: cover;
                                            display: block;
                                        }

                                        .rh-nav-body {
                                            padding: 12px 14px 14px;
                                        }

                                        .rh-nav-tag {
                                            display: inline-block;
                                            font-size: 10px;
                                            font-weight: bold;
                                            color: #00A0E9;
                                            background: #e6f5fd;
                                            border-radius: 3px;
                                            padding: 2px 7px;
                                            margin-bottom: 7px;
                                        }

                                        .rh-nav-title {
                                            font-size: 14px;
                                            font-weight: bold;
                                            color: #1a1a1a;
                                            margin: 0 0 5px;
                                            line-height: 1.4;
                                        }

                                        .rh-nav-desc {
                                            font-size: 11.5px;
                                            color: #666;
                                            margin: 0;
                                            line-height: 1.7;
                                        }

                                        .rh-nav-footer {
                                            display: flex;
                                            align-items: center;
                                            justify-content: space-between;
                                            margin-top: 10px;
                                            font-size: 11px;
                                            color: #aaa;
                                        }

                                        .rh-nav a:hover .rh-nav-footer {
                                            color: #00A0E9;
                                        }

                                        /* --- 写真＋テキスト カード --- */
                                        .rs-card {
                                            display: grid;
                                            grid-template-columns: 1fr 1fr;
                                            border-radius: 14px;
                                            overflow: hidden;
                                            background: #fff;
                                            box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07);
                                            margin: 0 0 2.4rem;
                                        }

                                        .rs-card.rs-rev {
                                            direction: rtl;
                                        }

                                        .rs-card.rs-rev>* {
                                            direction: ltr;
                                        }

                                        .rs-card-img {
                                            width: 100%;
                                            height: 100%;
                                            object-fit: cover;
                                            display: block;
                                        }

                                        .rs-card-body {
                                            padding: 2.2rem 2rem;
                                            display: flex;
                                            flex-direction: column;
                                            justify-content: center;
                                        }

                                        .rs-card-body.rs-grad {
                                            background: linear-gradient(145deg, #e6f5fd 0%, #d9effa 50%, #f5fbff 100%);
                                         }

                                         .rs-card-body.rs-dot {
                                             background-image: radial-gradient(circle, #b8ddf5 1px, transparent 1px);
                                             background-size: 20px 20px;
                                             background-color: #f4fafd;
                                             position: relative;
                                             overflow: hidden;
                                         }

                                         .rs-card-body.rs-dot::after {
                                             content: '';
                                             position: absolute;
                                             bottom: -50px;
                                             right: -50px;
                                             width: 180px;
                                             height: 180px;
                                             border-radius: 50%;
                                             background: #c5e9f8;
                                             opacity: 0.45;
                                         }

                                         .rs-card-body>* {
                                             position: relative;
                                             z-index: 1;
                                         }

                                         .rs-card-num {
                                             font-size: 11px;
                                             font-weight: bold;
                                             letter-spacing: 0.12em;
                                             color: #00A0E9;
                                             margin-bottom: 8px;
                                         }

                                         .rs-card-bar {
                                             width: 28px;
                                             height: 2px;
                                             background: #00A0E9;
                                             margin-bottom: 12px;
                                         }

                                         .rs-card-title {
                                             font-size: 17px;
                                             font-weight: bold;
                                             color: #0d1f2d;
                                             margin: 0 0 12px;
                                             line-height: 1.4;
                                         }

                                         .rs-card-text {
                                             font-size: 13px;
                                             color: #445566;
                                             line-height: 1.85;
                                             margin: 0;
                                         }

                                         /* --- 特徴グリッド --- */
                                         .rh-features-grid {
                                             display: grid;
                                             grid-template-columns: repeat(2, 1fr);
                                             gap: 28px;
                                             margin: 25px 0 45px;
                                             margin-bottom: 2.4rem;
                                         }

                                         @media (max-width: 768px) {
                                             .rh-features-grid {
                                                 grid-template-columns: 1fr;
                                                 gap: 20px;
                                             }
                                         }

                                         .rh-feature-card {
                                             background: #ffffff;
                                             border: 1px solid rgba(0, 160, 233, 0.12);
                                             border-radius: 16px;
                                             box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
                                             transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
                                             position: relative;
                                             overflow: hidden;
                                             display: flex;
                                             flex-direction: column;
                                             padding: 24px !important;
                                         }

                                         .rh-feature-card:hover {
                                             transform: translateY(-6px);
                                             box-shadow: 0 20px 38px rgba(0, 160, 233, 0.15);
                                             border-color: #00A0E9;
                                         }

                                         .rehab-card-img-wrapper {
                                             width: 100%;
                                             height: 180px;
                                             overflow: hidden;
                                             position: relative;
                                         }

                                         .rehab-card-img {
                                             width: 100%;
                                             height: 100%;
                                             object-fit: cover;
                                             transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
                                         }

                                         .rh-feature-card:hover .rehab-card-img {
                                             transform: scale(1.06);
                                         }

                                         .rehab-card-content {
                                             padding: 24px !important;
                                             position: relative;
                                             flex-grow: 1;
                                         }

                                         .rh-feature-card .icon {
                                             display: inline-block;
                                             width: 42px;
                                             height: 42px;
                                             border-radius: 50%;
                                             background-color: #f0f9ff;
                                             background-position: center;
                                             background-repeat: no-repeat;
                                             background-size: 20px;
                                             margin-bottom: 12px;
                                             transition: all 0.3s ease;
                                         }

                                         .rh-feature-card:hover .icon {
                                             background-color: #00A0E9;
                                             transform: scale(1.05);
                                         }

                                         .rh-feature-card:nth-child(1) .icon {
                                             background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/%3E%3C/svg%3E");
                                         }

                                         .rh-feature-card:nth-child(2) .icon {
                                             background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E");
                                         }

                                         .rh-feature-card:nth-child(3) .icon {
                                             background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M13.49 5.48c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm-3.6 13.9l.89-4.25-1.93-.84c-.4-.17-.67-.58-.67-1.02V8.5c0-.83.67-1.5 1.5-1.5h3.5c.55 0 1.05.3 1.3.77l1.32 2.44 2.24.49c.47.1.81.52.81 1s-.34.9-.81 1l-2.73-.6c-.34-.08-.65-.28-.84-.58L13.7 9.5l-.84 4 2.14 2c.29.27.46.64.46 1.04v3.96c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-2.29l-2.53-2.33-.5.5v3.62c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5v-4.5c0-.44.19-.85.53-1.13l2.57-2.43z'/%3E%3C/svg%3E");
                                         }

                                         .rh-feature-card:nth-child(4) .icon {
                                             background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2300A0E9'%3E%3Cpath d='M12 3L2 12h3v8h14v-8h3L12 3zm0 13c-1.66 0-3-1.34-3-3s3-5 3-5 3 3.66 3 5-1.34 3-3 3z'/%3E%3C/svg%3E");
                                         }
                                         }

                                         .rh-feature-card strong {
                                             display: block;
                                             font-size: 16px;
                                             color: #2d3748;
                                             margin-bottom: 10px;
                                             font-weight: bold;
                                         }

                                         .rh-feature-card p {
                                             font-size: 13.5px;
                                             color: #718096;
                                             line-height: 1.6;
                                             margin: 0;
                                            margin-bottom: 12px;
                                        }

                                        .rs-card-title {
                                            font-size: 17px;
                                            font-weight: bold;
                                            color: #0d1f2d;
                                            margin: 0 0 12px;
                                            line-height: 1.4;
                                        }

                                        .rs-card-text {
                                            font-size: 13px;
                                            color: #445566;
                                            line-height: 1.85;
                                            margin: 0;
                                        }


                                        /* --- 対象別カテゴリ --- */
                                        .rehab-category-list {
                                            margin: 35px 0 55px;
                                            display: flex;
                                            flex-direction: column;
                                            gap: 45px;
                                        }

                                        .rehab-category-row {
                                            display: flex;
                                            align-items: center;
                                            gap: 40px;
                                            background: #ffffff;
                                            border: 1px solid rgba(0, 160, 233, 0.08);
                                            border-radius: 20px;
                                            padding: 30px;
                                            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.015);
                                            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
                                        }

                                        .rehab-category-row:hover {
                                            transform: translateY(-4px);
                                            box-shadow: 0 20px 40px rgba(0, 160, 233, 0.08);
                                            border-color: rgba(0, 160, 233, 0.3);
                                        }

                                        .rehab-category-row:nth-child(even) {
                                            flex-direction: row-reverse;
                                        }

                                        .rehab-category-img-container {
                                            width: 45%;
                                            height: 250px;
                                            overflow: hidden;
                                            border-radius: 14px;
                                            flex-shrink: 0;
                                            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.03);
                                        }

                                        .rehab-category-img {
                                            width: 100%;
                                            height: 100%;
                                            object-fit: cover;
                                            transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
                                        }

                                        .rehab-category-row:hover .rehab-category-img {
                                            transform: scale(1.05);
                                        }

                                        .rehab-category-text-container {
                                            flex-grow: 1;
                                            display: flex;
                                            flex-direction: column;
                                            position: relative;
                                            padding-bottom: 40px;
                                        }

                                        .rehab-category-text-container h4 {
                                            font-size: 20px;
                                            color: #00A0E9;
                                            margin: 0 0 16px;
                                            font-weight: bold;
                                            line-height: 1.4;
                                        }

                                        .rehab-category-text-container p {
                                            font-size: 14.5px;
                                            color: #4a5568;
                                            line-height: 1.8;
                                            margin: 0;
                                        }

                                        .rehab-point-indicator {
                                            position: absolute;
                                            bottom: -5px;
                                            right: 0;
                                            display: flex;
                                            align-items: flex-end;
                                            width: 100%;
                                            justify-content: flex-end;
                                        }

                                        .rehab-category-row:nth-child(even) .rehab-point-indicator {
                                            left: 0;
                                            right: auto;
                                            flex-direction: row-reverse;
                                        }

                                        .rehab-point-indicator .line {
                                            flex-grow: 1;
                                            height: 1px;
                                            background: linear-gradient(to right, rgba(0, 160, 233, 0.02) 0%, rgba(0, 160, 233, 0.25) 100%);
                                            margin-bottom: 12px;
                                            margin-right: 18px;
                                        }

                                        .rehab-category-row:nth-child(even) .rehab-point-indicator .line {
                                            background: linear-gradient(to left, rgba(0, 160, 233, 0.02) 0%, rgba(0, 160, 233, 0.25) 100%);
                                            margin-right: 0;
                                            margin-left: 18px;
                                        }

                                        .rehab-point-label-group {
                                            display: flex;
                                            flex-direction: column;
                                            align-items: flex-start;
                                            line-height: 1;
                                        }

                                        .rehab-category-row:nth-child(even) .rehab-point-label-group {
                                            align-items: flex-end;
                                        }

                                        .rehab-point-indicator .point-label {
                                            font-size: 11px;
                                            color: #a0aec0;
                                            text-transform: uppercase;
                                            letter-spacing: 2px;
                                            font-weight: 800;
                                            margin-bottom: 2px;
                                        }

                                        .rehab-point-indicator .point-num {
                                            font-size: 58px;
                                            line-height: 0.85;
                                            color: rgba(0, 160, 233, 0.16);
                                            font-weight: 900;
                                            font-family: 'Outfit', 'Montserrat', 'Helvetica Neue', sans-serif;
                                            transition: all 0.3s ease;
                                        }

                                        .rehab-category-row:hover .point-num {
                                            color: rgba(0, 160, 233, 0.35);
                                            transform: scale(1.05);
                                        }

                                        @media (max-width: 900px) {
                                            .rehab-category-row {
                                                flex-direction: column !important;
                                                gap: 20px;
                                                padding: 20px;
                                            }

                                            .rehab-category-img-container {
                                                width: 100%;
                                                height: 200px;
                                            }

                                            .rehab-category-text-container {
                                                padding-bottom: 50px;
                                            }
                                        }

                                        /* Greeting Layout Format for Preventive & Community rehab */
                                        .rehab-greeting-section {
                                            display: flex !important;
                                            align-items: center !important;
                                            justify-content: space-between !important;
                                            gap: 50px !important;
                                            margin: 50px 0 80px 0 !important;
                                        }

                                        .rehab-greeting-content {
                                            flex: 1 !important;
                                        }

                                        .rehab-greeting-title-area {
                                            margin-bottom: 12px !important;
                                            text-align: left !important;
                                        }

                                        .rehab-greeting-eng {
                                            font-size: 34px !important;
                                            font-weight: 800 !important;
                                            color: #003B73 !important;
                                            letter-spacing: 2px !important;
                                            line-height: 1.1 !important;
                                            font-family: 'Outfit', 'Montserrat', sans-serif !important;
                                        }

                                        .rehab-greeting-jp {
                                            font-size: 18px !important;
                                            font-weight: 800 !important;
                                            color: #003B73 !important;
                                            margin-top: 8px !important;
                                            margin-bottom: 0 !important;
                                            border: none !important;
                                            padding: 0 !important;
                                            background: none !important;
                                            text-align: left !important;
                                        }

                                        .rehab-greeting-divider {
                                            height: 3px !important;
                                            width: 100% !important;
                                            background: linear-gradient(to right, #F6D27E 0%, #00A0E9 100%) !important;
                                            margin: 15px 0 25px 0 !important;
                                            border-radius: 2px !important;
                                        }

                                        .rehab-greeting-text p {
                                            font-size: 15px !important;
                                            line-height: 1.85 !important;
                                            color: #4a5568 !important;
                                            margin: 0 0 15px 0 !important;
                                            text-align: left !important;
                                        }

                                        .rehab-greeting-text p:last-child {
                                            margin-bottom: 0 !important;
                                        }

                                        .rehab-greeting-img-wrapper {
                                            width: 380px !important;
                                            min-width: 380px !important;
                                            height: 270px !important;
                                            border-radius: 16px !important;
                                            overflow: hidden !important;
                                            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
                                        }

                                        .rehab-greeting-img {
                                            width: 100% !important;
                                            height: 100% !important;
                                            object-fit: cover !important;
                                            transition: transform 0.4s ease !important;
                                        }

                                        .rehab-greeting-section:hover .rehab-greeting-img {
                                            transform: scale(1.05) !important;
                                        }

                                        .rehab-greeting-reverse {
                                            flex-direction: row-reverse !important;
                                        }

                                        @media (max-width: 900px) {
                                            .rehab-greeting-section {
                                                flex-direction: column !important;
                                                gap: 30px !important;
                                                margin: 40px 0 60px 0 !important;
                                            }

                                            .rehab-greeting-img-wrapper {
                                                width: 100% !important;
                                                min-width: 100% !important;
                                                height: 240px !important;
                                            }
                                        }

                                        /* --- FAQ アコーディオン --- */
                                        .rh-faq-wrap {
                                            margin-bottom: 2.4rem;
                                        }

                                        .rh-faq-item {
                                            margin-bottom: 10px;
                                        }

                                        .rh-faq-item summary {
                                            list-style: none;
                                            display: flex;
                                            align-items: center;
                                            gap: 14px;
                                            padding: 16px 20px;
                                            background: #fff;
                                            border-radius: 10px;
                                            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
                                            cursor: pointer;
                                            font-size: 14px;
                                            font-weight: bold;
                                            color: #1a2a38;
                                            transition: background .2s;
                                            user-select: none;
                                        }

                                        .rh-faq-item summary::-webkit-details-marker {
                                            display: none;
                                        }

                                        .rh-faq-item summary::before {
                                            content: 'Q';
                                            flex-shrink: 0;
                                            width: 28px;
                                            height: 28px;
                                            border-radius: 50%;
                                            background: #00A0E9;
                                            color: #fff;
                                            font-size: 13px;
                                            font-weight: bold;
                                            display: flex;
                                            align-items: center;
                                            justify-content: center;
                                        }

                                        .rh-faq-item summary::after {
                                            content: '＋';
                                            margin-left: auto;
                                            font-size: 18px;
                                            color: #00A0E9;
                                            transition: transform .25s;
                                            font-weight: 300;
                                        }

                                        .rh-faq-item[open] summary {
                                            border-radius: 10px 10px 0 0;
                                            background: #e6f5fd;
                                        }

                                        .rh-faq-item[open] summary::after {
                                            content: '－';
                                        }

                                        .rh-faq-answer {
                                            padding: 16px 20px 18px 62px;
                                            font-size: 13px;
                                            color: #445566;
                                            line-height: 1.8;
                                            background: #f4fafd;
                                            border-radius: 0 0 10px 10px;
                                            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
                                        }

                                        /* --- 相談CTA（ヘッダー色） --- */
                                        .rh-consult-card {
                                            background: #00A0E9;
                                            border-radius: 14px;
                                            padding: 2.4rem 2rem;
                                            text-align: center;
                                            margin: 0 0 2rem;
                                            position: relative;
                                            overflow: hidden;
                                        }

                                        .rh-consult-card::before {
                                            content: '';
                                            position: absolute;
                                            top: -60px;
                                            left: -60px;
                                            width: 200px;
                                            height: 200px;
                                            border-radius: 50%;
                                            background: rgba(255, 255, 255, 0.12);
                                        }

                                        .rh-consult-card p {
                                            font-size: 15px !important;
                                            color: rgba(255, 255, 255, 0.90) !important;
                                            margin: 0 0 16px !important;
                                            font-weight: normal !important;
                                            position: relative;
                                        }

                                        .rh-consult-card .tel {
                                            font-size: 26px;
                                            font-weight: bold;
                                            color: #ffffff;
                                            display: inline-block;
                                            letter-spacing: 1px;
                                            position: relative;
                                        }

                                        /* --- フッターメッセージ --- */
                                        .rh-footer-msg {
                                            text-align: center;
                                            font-size: 13px;
                                            color: #778899;
                                            line-height: 1.9;
                                            padding: 1rem 0 0.5rem;
                                            border-top: 1px solid #e0f0f8;
                                        }

                                        @media (max-width: 650px) {

                                            .rh-nav,
                                            .rh-features-grid {
                                                grid-template-columns: 1fr;
                                            }

                                            .rs-card {
                                                grid-template-columns: 1fr;
                                            }

                                            .rs-card.rs-rev {
                                                direction: ltr;
                                            }
                                        }
                                    
/* Fix navigation menu subtitle wrapping on one line */
.navi ul li a .titleEn {
    white-space: nowrap !important;
}