@charset 'UTF-8';


html {
    font-size: 62.5%;
}
body {
    font-size: 16px;
    font-size: 1.6rem;
    font-family: Arial, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;;
    background: #FAF7F2 url(../img/bg.jpg) repeat-x left top;
}

img {
    vertical-align: bottom;
}

a {
    -webkit-transition: opacity .5s;
    transition: opacity .5s;
}
a:hover {
    opacity: 0.6;
}


.container {
    width: 960px;
    margin: 0 auto 40px;
    padding: 10px 0 0;
}
.header {
    overflow: hidden;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}
.header h1 {
    margin: 0;
    padding: 30px 0 0 22px;
    float: left;
}
.headcontent {
    padding: 9px 0 16px;
    margin: 0 8px 0 0;
    float: right;
    text-align: right;
}
.header .tel {
    margin: 0 0 4px;
}
.headcontent ul {
    margin: 0;
    padding: 0;
}
.headcontent li {
    list-style-type: none;
    display: inline-block;
}
.keyvisual {
    clear: both;
    /*margin: 0 0 12px -5px;*/
    font-size: 10px;
    font-size: 1rem;
}
.titles {
    margin: 0 0 8px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}
.mtitle {
    text-align: center;
    margin: 0 0 18px;
}

.content {
    padding-bottom: 20px;
    border: solid 1px #ddd;
    background: #fff
}

/*
therapy
-----------------------------*/
.therapylist {
    padding: 28px 0;
    text-align: center;
    line-height: 1;;
    font-size: 10px;
    font-size: 1rem;
}
.therapylist h3{
    margin: 0 0 19px;
}
.therapylist h4 {
    margin: 0 0 16px;
}
.therapylist ul {
    width: 640px;
    margin: 0 auto 12px;
    text-align: left;
}
.therapylist li {
    list-style-type: none;
    background: #f6f6f6 url(../img/arrow_l.png) no-repeat 16px center;
    margin-bottom: 5px;
    padding: 10px 0 10px 53px;

}
.therapybox {
    margin-left: auto;
    margin-bottom: 0px;
    margin-right: auto;
    margin-top: 0px;
    width: 940px;
}

.therapybox ul {
  display: flex;
  justify-content: flex-start;
  width: 600px;
  margin: 30px auto;
  list-style: none;
  flex-wrap: wrap;
}

.therapybox ul li {
  font-size: 18px;
  font-weight: bold;
  flex-basis: 100%;
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
}

.therapybox ul li:last-child {
  border-bottom: none;
}




.therapybox h3 {
    background: #82D1D6;
    line-height: 1;
    margin: 0px;
    font-size: 10px;
    font-size: 1rem;
    padding: 22px 18px;
}
.therapybox .thbox {
    padding-left: 0px;
    padding-bottom: 10px;
    padding-right: 0px;
    padding-top: 0px;
    margin-top: 8px;
    margin-bottom: 10px;
    overflow: hidden;
    background: #ffffff;
}
.thbox p {
    margin: 0 0 1.8em;
    line-height: 1.8;
}
.thbox .img {
    line-height: 1;
    font-size: 10px;
    font-size: 1rem;
    border: solid 1px #ddd;
}
.thbox1 .txt {
    width: 500px;
    float: left;
}
.thbox1 .img {
    width: 354px;
    float: right;
}


.thbox2 .txt {
    width: 880px;
    float: none;
}
.thbox2 .img {
    width: 362px;
    border: solid 1px #ddd;
    float: left;
}
.txtlist ul {
    margin: 55px 0 0;
    padding: 0;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}
.txtlist li {
    list-style-type: none;
    margin: 0 0 15px;
    padding: 0 0 0 21px;
    min-height: 27px;
    background: url(../img/arrow_s.png) no-repeat left 3px;
}

.therapytable {
    width: 922px;
    margin: 0 auto 30px;
    border-bottom: solid 1px #ddd;
}
.therapytable th {
    background: #eee;
    border-top: solid 1px #ddd;
    box-shadow: inset 0 0 0 1px #fff;
}
.therapytable .cateblank {
    width: 120px;
    background: none;
}
.therapytable .cate1,
.therapytable .cate2 {
    width: 800px;
    padding: 10px 12px;
    border-top: solid 1px #ddd;
    border-left: solid 1px #ddd;
    box-shadow: inset 0 0 0 1px #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.therapytable thead th {
    border-top: none;
    border-left: none;
    text-align: left;
    border-radius: 15px 0 0 0;
}
.therapytable thead .cate1,
.therapytable thead .cate2 {
    background: #ddd;
    border-left: none;
    border-top: none;
}
.therapytable thead .cate2 {
    background: #82D1D6;
}
.therapytable .cate1 {
    background: #f6f6f6;
}
.therapytable .cate2 {
    background: #D8F1F3;
}



/*
feature
-----------------------------*/
.feature {
    padding: 20px 0 22px;
}
.featurelist {
    margin: 0 0 0 26px;
    padding: 14px 0 8px;
    position: relative;
    overflow: hidden;
    z-index: 0;
    display: table;
    width: 900px;
}
.featurelist:before {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    min-height: 489px;
    border-left: dotted 1px #bbb;
    position: absolute;
    z-index: -1;
    left: 14px;
    top: 0;
}
.featurelist li {
    list-style-type: none;
    display: table-row;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}
.featurelist span {
    display: table-cell;
    vertical-align: middle;
    height: 72px;
}
.featurelist .icon {
    width: 97px;
}
.featurelist .txt {
    width: 800px;
    padding: 12px 0 8px;
    border-bottom: dotted 1px #bbb;
}




/*
doctor
-----------------------------*/
.doctor {
    padding: 20px 6px 15px ;
    overflow: hidden;
}
.person {
    width: 922px;
    float: left;
    margin: 0 0 14px 12px;
}
.person h3 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1;
    background: #D68382;
    color: #fff;
    padding: 20px 17px;
    margin: 0;
}
.person .box {
    min-height: 230px;
    background: #f7f7f7;
    line-height: 2;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 15px 14px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.person ol {
    margin: 0;
    padding: 0;
}
.person li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.person li span {
    display: inline-block;
}
.person .year {
    width: 70px;
    position: relative;
}
.person .year:after {
    content: ':';
    display: inline-block;
    position: absolute;
    right: 0;
}
.person .txt {
    width: 350px;
    padding: 0 0 0 5px;
}
.person p {
    margin: 0;
}
.person_read {
    clear: both;
    border: solid 1px #ddd;
    color: #D88381;
    font-size: 2.0rem;
    line-height: 1.6;
    width: 922px;
    margin: 0 auto;
    padding: 20px 0 14px 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.person_read p {
    margin: 0;
    font-size: 18px;
}





/*
symp
-----------------------------*/
.symp {
    padding: 20px 10px;
}
.symp .read {
    padding-bottom: 10px;
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    line-height: 2.0;
}
.symp .stitle {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    width: 922px;
    position: relative;
    background: url(../img/symp_stitle.jpg) no-repeat;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    padding: 10px 0 14px 17px;
}
.symp .stitle span {
    position: absolute;
    right: 7px;
    top: 7px;
}
.sympbox1 {
    width: 922px;
    margin: 0 auto;
    overflow: hidden;
}
.sympbox1 ol {
    margin: 0;
    padding: 15px 0 0;
    float: left;
}
.sympbox1 li {
    list-style-type: none;
    margin: 0 0 22px;
    padding: 0;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
}
.sympbox1 .img {
    float: right;
    padding: 0 0 30px;
}

.sympbox2 {
    width: 933px;
    padding: 10px 0 0;
    margin: 0 0 20px -11px;
    overflow: hidden;
}
.sympbox2 .item {
    width: 300px;
    float: left;
    min-height: 181px;
    margin: 0 0 0 11px;
    background: #f7f7f7;
}
.sympbox2 dl {
    padding: 0;
    margin: 0;
}
.sympbox2 dt {
    background: #B5D68C;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    padding: 21px 0;
    border-bottom: solid 1px #fff;
}
.sympbox2 dd {
    line-height: 1.8;
    padding: 14px 12px;
    margin: 0;
}

.sympbox3 {
    overflow: hidden;
    width: 929px;
    margin: 0 0 10px -7px;
    padding: 11px 0 0;
}
.sympbox3 ol {
    margin: 0;
    padding: 0;
}
.sympbox3 li {
    list-style-type: none;
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    float: left;
    min-height: 530px;
    width: 225px;
    background: #f7f7f7;
    margin: 0 0 0 7px;
}
.sympbox3 .img {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    margin: 0;
}
.sympbox3 dl {
    margin: 0 10px;
    padding: 12px 0 0;
}
.sympbox3 dt {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    margin: 0 0 8px;
}
.sympbox3 dd {
    margin: 0;
    padding: 0;
}


.sympbox4 {
    width: 922px;
    margin: 0 auto;
    overflow: hidden;
    padding: 8px 0 30px;
}
.sympbox4 .text {
    width: 488px;
    float: left;
}
.sympbox4 .text p {
    margin: -5px 0 0;
    line-height: 1.85;
}
.sympbox4 .imglist {
    width: 413px;
    float: right;
    padding: 0;
    margin: 0;
}
.sympbox4 .imglist li {
    list-style-type: none;
    margin: 0 0 0 13px;
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.2;
    width: 200px;
    float: left;
}
.sympbox4 .imglist li:first-child {
    width: 200px;
    margin-left: 0;
}
.imglist span {
    display: block;
    text-align: center;
    font-weight: bold;
    margin: 10px 0 0;
}

.about {
    overflow: hidden;
    padding: 20px 19px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
}
.descript {
    width: 760px;
    float: left;
}
.descript h3 {
    margin: 0;
    line-height: 1;
    padding: 22px 10px;
    background: #eee;
}
.descript .times {
    margin: 0;
    line-height: 1;
    padding:  38px 10px;
}
.innerbox {
    overflow: hidden;
    padding: 12px 0 0;
}
.innerbox .texts {
    width: 368px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 0 0 18px;
    margin: 0;
    float: left;
}
.innerbox .tel {
    margin-top: 20px;
}
.innerbox .tel span {
    display: block;
    padding: 10px 0 0;
}
.innerbox p {
    margin: 0;
}
.innerbox .maps {
    width: 380px;
    float: right;
    text-align: right;
}
.innerbox .inmap {
    border: solid 1px #ddd;
}
.maps p a {
    color: #222;
    text-decoration: none;
}
.innerbox iframe {
    display: block;
}

.about .photolist {
    margin: 0;
    padding: 0;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    float: right;
}
.photolist li {
    margin-bottom: 11px;
    list-style-type: none;
}




.footer {
    background: #000;
    padding: 40px 0 20px;
}
.foot {
    width: 960px;
    margin: 0 auto;
    color: #fff;
    text-align: center;
}
.foot ul {
    margin: 0;
    padding: 0;
    text-align: center;
}
.foot li {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: inline-block;

}
.foot p {
    padding: 0;
    margin: 0.5em 0;
    font-size: 14px;
    font-size: 1.8rem;
}

.entry {
    padding-left: 0;
    padding-bottom: 20px;
    padding-right: 0;
    padding-top: 10px;
    background: #f9f5ee;
}


.ttl-type1{
    background-image: url(../img/ttl1-bg.png);
    background-repeat: repeat-x;
    background-position: center center;
    -webkit-background-size:100% 100%;
    background-size:100% 100%;
    font-size: 22px;
    color: #AD0000;
    font-weight: bold;
    padding: 18px 12px;
    line-height: 1;
}
.ttl-type2{
    background: #82D1D6;
    color: #ffffff;
    font-size: 18px !important;
    padding: 20px;
    line-height: 1.2;
    font-weight: normal;
}

@media screen and (max-width: 960px) {
    .container{
        width: 95%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .keyvisual img,
    .entry img{
        width: 100%;
        height: auto !important;
    }
    .therapylist iframe{
        width: 100% !important;
        height: 55vw !important;
    }
    .therapybox{
        width: 100%;
    }


    .thbox1 .txt{
        width: 60%;
    }
    .thbox1 .img{
        width: 38%;
    }
    .thbox1 .img img{
        width: 100%;
    }
    .thbox2 .txt{
        width: 100%;
    }
    .message img{
        width: 90% !important;
        height: auto !important;
    }
    .message a img{
        width: 90% !important;
    }
    .person{
        width: 100%;
        margin: 0px 0 15px 0;
    }
    .doctor{
        padding: 10px;
    }
    .therapylist{
        width: 100%;
    }
    .therapylist img{
        width: 100% !important;
        height: auto !important;
    }
    .descript{
        width: 100%;
    }
    .times img{
        width: 80% !important;
        height: auto !important;
    }
    .innerbox .texts{
        width:45vw ;
    }
    .innerbox .tel img{
        width: 80%;
    }
    .innerbox .maps{
        width:40vw;
    }
    .innerbox .maps iframe{
        width: 100% !important;
    }
    .photolist{
        float: none;
        width: 100%;
        text-align: center;
    }
    .photolist li{
        display: inline-block;
    }
    .photolist li img{
        width: 25vw;
    }
    .foot{
        width: 100%;
    }
    .spacer{
        padding: 0 20px;
    }
    .headcontent{
        padding-bottom: 10px;
    }
    .headcontent .tel img{
        width: 300px;
    }
    .headcontent ul img{
        width: 130px;
    }
    .header h1{
        padding:14px 0 0 22px;
    }

}
@media screen and (max-width: 765px) {
    .header{
        padding: 4vw 0;
    }
    .header:after{
        content: '';
        clear: both;
    }
    .header h1{
        padding: 2vw 0 0 1vw;
    }
    .header h1 img{
        width: 45vw;
    }
    .headcontent{
        padding: 0 0 2vw 0;
    }
    .headcontent .tel img{
        width: 45vw;
    }
    .headcontent ul img{
        width: 22.2vw;
    }

    .therapybox ul {
      display: flex;
      justify-content: flex-start;
      width: 86vw;
      margin: 4vw auto;
      padding: 0;
      list-style: none;
      flex-wrap: wrap;
    }

    .therapybox ul li {
      font-size: 3.4vw;
      font-weight: bold;
      flex-basis: 100%;
      border-bottom: 1px solid #ddd;
      padding: 2vw 0;
    }

    .therapybox ul li:last-child {
      border-bottom: none;
    }

    .ttl-type1{
        padding: 15px;
        font-size: 14px;
        border-left: solid 1px #eee;
        border-right: solid 1px #eee;
    }
    .ttl-type2{
        padding: 15px !important;
        font-size: 14px !important;
    }

    .thbox1 .txt{
        float: none;
        width: 100%;
    }
    .thbox1 .img{
        float: none;
        width: 80%;
        margin: auto;
    }
    .thbox1 .img img{
        width: 100%;
    }

    .innerbox .texts{
        width:100%;
        float: none;
    }
    .innerbox .tel img{
    }
    .innerbox .maps{
        float: none;
        width:100%
    }

    .thbox p{
        margin-bottom: 10px;
        line-height: 1.2
    }
    .innerbox .tel{
        margin-bottom: 20px;
    }
    .innerbox .tel img{
        width: 70%;
    }
    .person h3{
        font-size: 14px; !important;
        padding: 15px !important;
    }
    .descript h3{
        font-size: 14px; !important;
        padding: 15px !important;
    }

}
