body {
    word-break: keep-all;
    line-height: 1.4;
}

.inner {
    width: calc(100% - 32px);
    height: 100%;
    margin: 0 auto;
    padding: 0 16px;
}

/***** sns-btn *****/
.sns-btn {
    height: 100vh;
    right: 16px;
    bottom: 16px;
}

.sns-btn ul {
    position: fixed;
    right: 0;
    bottom: 16px;
    transform: none;
    width: 60px;
    height: 305px;
    padding: 20px 0;
}

.sns-btn ul li {
    margin: 0 0 6px 0;
}

.sns-btn ul li a {
    padding: 30px 0 0;
    font-size: 11px;
}

.sns-btn .tell:before {
    width: 22px;
    height: 22px;
    margin: 0 0 0 18px;
    background-size: 22px auto;
}

.sns-btn .kakao-talk:before {
    width: 22px;
    height: 22px;
    margin: 0 0 0 18px;
    background-size: 22px auto;
}

.sns-btn .naver-talk:before {
    width: 22px;
    height: 22px;
    margin: 0 0 0 18px;
    background-size: 22px auto;
}

.sns-btn .blog:before {
    width: 22px;
    height: 22px;
    margin: 0 0 0 18px;
    background-size: 22px auto;
}

.sns-btn .mail:before {
    width: 22px;
    height: 22px;
    margin: 0 0 0 18px;
    background-size: 22px auto;
}

.sns-btn .top-btn {
    margin: 20px 0 0 0;
}

.sns-btn .top-btn a {
    padding: 20px 12px;
    margin: 0;
    border-radius: 50px;
}

/***** tb-header *****/
.tb-header {
    padding: 10px 0;
}

.tb-header .logo a {
    width: 135px;
    height: 36px;
    margin: 0;
    background-size: 135px auto;
}

.tb-header .menu > ul {
    top: 61px;
}

.tb-header .menu > ul.on {
    width: 300px;
    height: calc(100vh - 61px);
}

.tb-header .menu > ul > li {
    padding: 20px 20px 15px;
}

.tb-header .menu > ul > li > a {
    font-size: 16px;
}

.tb-header .menu .open-btn {
    top: 23px;
    right: 20px;
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
}

.tb-header .menu .open-btn.on {
    background-size: 14px 14px;
}

.tb-header .menu .sub-menu li a {
    padding: 16px 0;
    font-size: 16px;
}

.tb-header.scroll .logo a {
    height: 36px;
    background-size: 135px auto;
}

.gnb-btn {
    right: 16px;
    width: 18px;
    height: 18px;
    background: url(../images/gnb_btn.png)no-repeat 0 0;
    background-size: 18px 18px;
}

.gnb-btn.scroll {
    background-size: 18px 18px;
}

.gnb-btn.close {
    background-size: 18px 18px;
}

.gnb-btn.scroll.close {
    background-size: 18px 18px;
}

/***** main *****/
.main-visual {
    height: 450px;
}

.main-visual .slide {
    height: 450px;
}

.main-visual .slide .text-wrap {
    position: relative;
    width: 100%;
    height: 450px;
}

.main-visual .slide .title {
    left: 16px;
    bottom: 180px;
    padding: 0;
    font-size: 34px;
}

.main-visual .slide .title:after {
    width: 40px;
    margin: 0 0 2px;
}

.main-visual .slide .text {
    bottom: 130px;
    padding: 0 80px 0 16px;
    font-size: 15px;
}

.main-visual .slide2 {
    background: url(../images/visual_img2.jpg)no-repeat 30% 0;
    background-size: cover;
}

.main-visual .slide3 {
    background: url(../images/visual_img3.jpg)no-repeat 60% 0;
    background-size: cover;
}

.main-visual .slide4 {
    background: url(../images/visual_img4.jpg)no-repeat 42% 0;
    background-size: cover;
}

.slick-dots {
    bottom: 50px;
}

.slick-dots li button {
    width: 40px;
}

/***** intro *****/
.section {
    padding: 50px 0;
}

.section .text-wrap .title {
    font-size: 26px;
}

.section .text-wrap .text {
    font-size: 15px;
}

.intro {
    position: relative;
    width: 100%;
    height: 520px;
}

.intro .intro-img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 260px;
}

.intro .text-wrap {
    margin: 0 0 0 0;
    padding: 0 16px;
}

.intro .title:before {
    display: none;
}

.intro .text {
    width: 100%;
    margin: 30px 0 0 0;
}

/***** bg-logo *****/
.bg-logo {
    top: 450px;
    height: 100%;
    background-size: 50% auto;
}

/***** intro2 *****/
.intro2 .text-wrap .text {
    margin: 30px 0 0 0;
}
.intro2 .text-box {
    display: block;
    margin: 20px 0 0 0;
}

.intro2 .text-box .box {
    width: calc(100% - 50px);
    padding: 30px 25px 35px;
}

.intro2 .text-box .box ~ .box {
    margin: 16px 0 0 0;
}

.intro2 .text-box .box:hover {
    outline: 1px solid #3f63fc;
}

.intro2 .text-box .box .title {
    font-size: 17px;
}

.intro2 .text-box .box .text {
    margin: 16px 0 0 0;
    font-size: 15px;
}

/***** banner *****/
.banner {
    padding: 80px 0;
}

.banner .text-wrap .title span:after {
    width: 100px;
    margin: 0 0 10px 16px;
}

/***** intro-use *****/
.section .text-wrap .title span.sub {
    font-size: 14px;
}

.intro-use .card-wrap {
    margin: 14px 0 0 0;
}

.intro-use .card-wrap .card {
    flex-basis: 100%;
    margin: 16px 0 0 0;
    padding: 30px 25px 35px;
}

.intro-use .card-wrap .card .more-btn a {
    font-size: 15px;
}

.intro-use .card-wrap .card .title {
    font-size: 17px;
}

.intro-use .card-wrap .card .title:before {
    margin: -19px 0 0 0;
    background-size: auto 50px;
}

.intro-use .card-wrap .card .text {
    font-size: 15px;
}

/***** point *****/
.point {
    background-size: cover;
}

.point .text-wrap {
    margin: 0 0 50px 0;
}

.point .card-wrap .card {
    display: none;
}

.point .card-wrap .card-mb {
    display: block;
}

.point .card-wrap .card-mb img {
    width: 100%;
}

/***** guide *****/
.guide .guide-img .img {
    display: none;
}

.guide .guide-img .img-mb {
    display: block;
}

.guide .guide-img .img-mb img {
    width: 100%;
    margin: 50px 0 0 0;
}

/***** review *****/
.review .slide-wrap {
    height: 100%;
    margin: 50px 0 0 0;
}

.review .slide-wrap .slider-nav {
    top: 280px;
    width: 100%;
    height: 120px;
    overflow: hidden;
}

.review .slide-wrap .slide-img {
    width: 100px !important;
    height: 120px;
    margin: 0 14px 0 0;
}

.review .slide-wrap .slide {
    flex-wrap: wrap;
}

.review .slide-wrap .slide > div {
    width: 100%
}

.review .slide-wrap .slide .img {
    order: 1;
    width: 60%;
    height: 300px;
    margin: 0 auto;
}

.review .slide-wrap .left-text {
    order: 2;
}

.review .slide-wrap .right-text {
    order: 3;
}

.review .slide-wrap .left-text .name {
    margin: 130px 0 0 0;
    -webkit-text-stroke: 1px #111;
    font-size: 22px;
}

.review .slide-wrap .left-text .name span {
    font-size: 17px;
}

.review .slide-wrap .left-text .career {
    margin: 10px 0 0 0;
    font-size: 15px;
}

.review .slide-wrap .right-text .top {
    margin: 30px 0 0 0;
    font-size: 13px;
}

.review .slide-wrap .right-text .top:after {
    width: 14px;
    height: 14px;
}

.review .slide-wrap .right-text .bottom {
    font-size: 13px;
}

.review .slide-wrap .right-text .bottom:before{
    height: 30px;
    margin: 10px 0 10px 10px;
}

/***** 탭 *****/
.tab li a {
    padding: 16px 30px;
    font-size: 16px;
}

.center .top-visual {
    height: 200px;
    background: url(../images/center_visual.jpg)no-repeat center 0;
    background-size: cover;
}

.rehabilitation .top-visual {
    height: 200px;
    background: url(../images/rehabilitation_visual.jpg)no-repeat center 0;
    background-size: cover;
}

.program .top-visual {
    height: 200px;
    background: url(../images/program_visual.jpg)no-repeat center 0;
    background-size: cover;
}

.use-guide .top-visual {
    height: 200px;
    background: url(../images/use_guide_visual.jpg)no-repeat center 0;
    background-size: cover;
}

.top-visual .text-wrap {
    padding: 90px 0 0 0;
}

.top-visual .text-wrap .title {
    font-size: 26px;
}

.top-visual .text-wrap .title:after {
    width: 35px;
    margin: 5px 0 10px;
}

.top-visual .text-wrap .text {
    font-size: 15px;
}

/***** 센터소개 *****/
.center .tabcont {
    padding: 0 0 100px 0;
}

.center .tabcont .text-wrap {
    padding: 50px 0 80px;
}

.center .tabcont .text-wrap .title p {
    font-size: 26px;
}

.center .tabcont .text-wrap .title img {
    width: 60px;
}

.center .tabcont .text-wrap .title p:before {
    width: 30px;
    margin: 16px auto 10px;
}

.center .tabcont .text-wrap .text {
    margin: 50px 0 0 0;
    font-size: 26px;
}

.center .tabcont1 .introduction {
    background: url(../images/center_bg_img.png)no-repeat right bottom;
    background-size: 100% auto;
    margin: 50px 16px;
    padding: 0 0 100px;
}

.center .tabcont1 .introduction .title {
    font-size: 26px;
}

.center .tabcont1 .introduction .title:after {
    height: 80px;
    margin: 20px 0 20px 10px;
}
    
.center .tabcont1 .introduction .text {
    width: 100% !important;
    margin: 0 0 400px 0;
    font-size: 15px;
}

@media all and (max-width: 500px) {
    .center .tabcont1 .introduction .text {
        margin: 0 0 320px 0;
    }
}

@media all and (max-width: 400px) {
    .center .tabcont1 .introduction .text {
        margin: 0 0 220px 0;
    }
}

.center .tabcont1 .letter img.pc {
    display: none;
}

.center .tabcont1 .letter img.mb {
    display: block;
}

.center .tabcont2 .vision img.pc {
    display: none;
}

.center .tabcont2 .vision img.mb {
    display: block;
}

/***** 전문가 소개 *****/
.rehabilitation .section {
    padding: 0 0 100px 0;
}

.rehabilitation .section .text-wrap {
    padding: 50px 0 80px;
}

.rehabilitation .section .text-wrap .title p {
    font-size: 26px;
}

.rehabilitation .section .text-wrap .title img {
    width: 60px;
}

.rehabilitation .section .text-wrap .title p:before {
    width: 30px;
    margin: 16px auto 10px;
}

.rehabilitation .section .text-wrap .text {
    margin: 50px 0 0 0;
    font-size: 26px;
}

.rehabilitation .card-top .text .career {
    display: block;
}

.rehabilitation .card-top .text .career .txt {
    border: none;
    font-size: 15px;
}

.rehabilitation .card-top .text .career .txt:last-of-type {
    padding: 0 0 20px 0;
    border-bottom: 1px solid rgba(000,000,000,.1);
}

.rehabilitation .card-top .text .career .txt span {
    margin: 0 0 10px 0;
    font-size: 18px;
}

.rehabilitation .card-top .text .other {
    display: block;
    padding: 20px 0 0 0;
    font-size: 15px;
}

.rehabilitation .card-wrap .card .text .career {
    display: block;
}

.rehabilitation .card-wrap .card .text .career .txt {
    border: none;
    font-size: 15px;
}

.rehabilitation .card-wrap .card .text .career .txt:last-of-type {
    padding: 0 0 20px 0;
    border-bottom: 1px solid rgba(000,000,000,.1);
}

.rehabilitation .card-wrap .card .text .career .txt span {
    margin: 0 0 10px 0;
    font-size: 18px;
}

.rehabilitation .card-wrap .card .text .other {
    display: block;
    font-size: 15px;
}

/***** 재활 프로그램 *****/
.program .tab {
    width: 100%;
    justify-content: flex-start;
    align-items: flex-start;
    overflow-x: scroll;
    white-space: nowrap;
}

.program .tab li a {
    padding: 16px 30px;
}

.program .tab li.on a {
    margin: 0;
}

.program .tabcont {
    padding: 0 0 100px 0;
}

.program .tabcont .text-wrap {
    padding: 50px 0 80px;
}

.program .tabcont .text-wrap .title p {
    font-size: 26px;
}

.program .tabcont .text-wrap .title img {
    width: 60px;
}

.program .tabcont .text-wrap .title p:before {
    width: 30px;
    margin: 16px auto 10px;
}

.program .tabcont .text-wrap .text {
    margin: 50px 0 0 0;
    font-size: 26px;
}

.program .program-img .img {
    width: 100%;
}

.program .more-wrap .text-wrap .title {
    margin: -80px 0 20px 0;
    font-size: 26px;
}

.program .more-wrap .text-wrap .title:before {
    height: 100px;
    margin: 0 auto 16px;
}

.program .more-wrap .text-wrap .text {
    margin: 0;
    font-size: 15px;
}

.program .more-wrap .text-wrap .text span {
    margin: 0 0 16px 0;
    font-size: 18px;
}

.program .more-wrap .diagram img.pc {
    display: none;
}

.program .more-wrap .diagram img.mb {
    display: block;
    width: 70%;
    margin: 0 auto;
}

/***** use-guide *****/
.use-guide .tabcont {
    padding: 0 0 100px 0;
}

.use-guide .tabcont .text-wrap {
    padding: 50px 0 80px;
}

.use-guide .tabcont .text-wrap .title p {
    font-size: 26px;
}

.use-guide .tabcont .text-wrap .title img {
    width: 60px;
}

.use-guide .tabcont .text-wrap .title p:before {
    width: 30px;
    margin: 16px auto 10px;
}

.use-guide .tabcont .text-wrap .text {
    margin: 50px 0 0 0;
    font-size: 26px;
}

.use-guide .tabcont2 .map .map-wrap {
    display: block;
}

.use-guide .tabcont2 .map .map-wrap > div {
    width: 100%;
}

.use-guide .tabcont2 .map .text-wrap {
    padding: 50px 0 0;
}

.use-guide .tabcont2 .map .text-wrap .text {
    margin: 10px 0 0 0;
    font-size: 15px;
}

.use-guide .tabcont2 .map .text-wrap .text span {
    font-size: 17px;
}

.use-guide .tabcont2 .map .text-wrap .text:nth-of-type(3) {
    padding: 0 0 30px 0;
}

.use-guide .tabcont2 .map .text-wrap .more-text {
    font-size: 15px;
}

.use-guide .tabcont2 .map-info .inner > div {
    display: block;
}

.use-guide .tabcont2 .map-info .text-info li {
    font-size: 15px;
}

.use-guide .tabcont2 .map-info .text-info li ~ li {
    margin: 10px 0 0;
}

.use-guide .tabcont2 .map-info .text-info li:before {
    width: 20px;
    margin: 0 16px 0 0;
}

.use-guide .tabcont2 .map-info .text-info .time {
    background-size: 20px auto;
}

.use-guide .tabcont2 .map-info .text-info .tell {
    background-size: 20px auto;
}

.use-guide .tabcont2 .map-info .text-info .mail {
    background-size: 20px auto;
}

.use-guide .tabcont2 .map-info .img {
    width: 100%;
    height: 280px;
    margin: 50px 0 0 0;
}

.use-guide .tabcont2 .map-info .text-wrap .title {
    font-size: 22px;
}

.use-guide .tabcont2 .map-info .text-wrap .text {
    margin: 10px 0 30px;
    opacity: .8;
    font-size: 15px;
}

/***** footer *****/
footer {
    font-size: 12px;
}

footer .top .footer-logo img {
    height: 40px;
}

footer .top {
    padding: 20px 0;
}

footer .top ul {
    display: none;
}

footer .bottom {
    padding: 30px 0 35px;
}

footer .bottom .address div ul {
    display: block;
}

footer .bottom .address div ul li:first-of-type {
    margin: 0 0 10px 0;
}

footer .contact {
    display: block;
}

footer .contact ul {
    display: block;
}

footer .contact ul li {
    margin: 0 0 8px 0;
}

footer .contact .copy {
    margin: 20px 0 0 0;
    font-size: 10px;
}














































