@charset "utf-8";

/* font */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
    font-size: 16px;
}

h1 {
    color: rgba(230, 24, 116, 0.8);
    font-size: 12px;
    position: absolute;
    top: 0;
    left: 0;
}

.tit-3 {
    color: rgb(230, 24, 116);
    font-size: 30px;
    line-height: 1.6;
    font-family: 'rounded';
}

.tit-4 {
    color: rgb(230, 24, 116);
    font-size: 18px;
    line-height: 1.6;
    font-weight: bold;
}

.small {
    font-size: 80%;
}

/* btn */
.btn {
    width: 240px;
    margin: 0 auto;
}

.btn a,
.btn button {
    background: #e61874;
    width: 100%;
    padding: 20px;
    color: #fff;
    text-align: center;
    border-radius: 10px;
    display: block;
    color: #fff;
    position: relative;
    z-index: 1;
    -webkit-transition: .3s;
    transition: .3s;
    font-size: 14px;
}

.btn button {
    border: none;
}

.btn a::before,
.btn button::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #fff;
    border: 1px solid #e61874;
    border-radius: 10px;
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform ease .3s;
    transition: -webkit-transform ease .3s;
    transition: transform ease .3s;
    transition: transform ease .3s, -webkit-transform ease .3s;
}

.btn a:hover,
.btn button:hover {
    color: #e61874;
    opacity: 1;
}

.btn a:hover::before,
.btn button:hover::before {
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.btn-back a::before,
.btn-back button::before {
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
}

.btn-back a:hover::before,
.btn-back button:hover::before {
    -webkit-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
}

.btn02 a {
    background: #fff;
    color: #e61874;
    border: 1px solid #e61874;
    padding: 10px 30px;
}

.btn02 a::before {
    background: #e61874;
    border: none;
}

.btn02 a:hover {
    color: #fff;
    opacity: 1;
}

.btn03 a {
    padding: 5px;
}

/* other */
a.anchor01 {
    display: block;
    padding-top: 110px;
    margin-top: -110px;
}

.color01 {
    color: rgb(230, 24, 116);
}

.ul-default li {
    list-style-type: disc;
    margin-left: 30px;
}

.bg-01 {
    background-color: #f7efdf;
}

.a-default a:link {
    color: #0000EE;
    text-decoration: underline;
}

.a-default a:visited {
    color: #551A8B;
    text-decoration: underline;
}

.a-default a:active {
    color: #FF0000;
    text-decoration: underline;
}

.bg-parent {
    position: relative;
    -webkit-box-orient: vertical;
}

.bg-parent .bg-cont {
    position: relative;
    z-index: 2;
}

.bg-parent .bg-img {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.bg-parent .bg-img img {
    width: 100%;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: "object-fit: cover; object-position: center center;";
}

.bg-parent .filter-01::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(230, 24, 116, 0.5);
    position: absolute;
    top: 0;
    left: 0;
}

@media (max-width: 1024px) {

    /* font */
    h1 {
        font-size: 10px;
        position: relative;
        line-height: 1.2;
    }

    /* other */
    a.anchor01 {
        padding-top: 0px;
        margin-top: 0px;
    }

    .tb-br {
        display: block;
    }
}

@media (max-width: 599px) {

    /* font */
    body,
    div,
    dl,
    dt,
    dd,
    ul,
    ol,
    li,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    form,
    input,
    button,
    p {
        font-size: 14px;
    }

    h1 {
        font-size: 10px;
    }

    .tit-3 {
        font-size: 24px;
    }

    .tit-4 {
        font-size: 16px;
    }

    /* other */
    .sp-br {
        display: block;
    }
}

/* header */
/* **************************************** */
.logo a {
    display: inline-block;
}

.headerinner {
    position: relative;
}

.h-address {
    width: 48%;
    margin-left: auto;
    margin-bottom: 25px;
}

#header .logo,
#header .htel {
    width: 48%;
}

#header .htel {
    max-width: 100%;
}

#header .htel .htelbox {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

#header .htel .hcontbox {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

#header .htel .hcontbox .btn {
    width: 175px;
}

#header .logo img {
    max-width: 210px !important;
    max-height: 55px !important;
    width: 100%;
}

#header .htel .btn a {
    padding: 10px 30px;
}

.hcontbox {
    width: auto;
}

.hcontbox a {
    background: rgb(230, 24, 116);
}

.hcontbox .btn .icon::before {
    content: "\f0e0";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    color: inherit;
    line-height: 100%;
    padding-right: 10px;
}

.h-contact a {
    background: rgba(230, 24, 116, 0.8);
    position: fixed;
    top: 35%;
    right: 0;
    z-index: 4;
    width: 130px;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 10px 0 0 10px;
    padding: 25px 15px 25px 15px;
}

.h-contact.type-b a {
    background: #ffb247;
}

.h-contact .btn-inner {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
}

.h-contact a {
    color: #fff;
    font-size: 16px;
}

.h-contact a::before {
    content: "\f3cd";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: inherit;
    line-height: 100%;
    font-size: 20px;
}

#header .logo.sp-logo {
    display: none;
}

/* #gnav */
#gnav li.pull ul {
    width: 340px;
    background: rgba(255, 255, 255, 1);
    opacity: 0;
}

#gnav li.pull:hover ul {
    opacity: 1;
}

#gnav li.pull {
    position: relative;
}

#gnav li.pull::after {
    content: "";
    position: absolute;
    bottom: -50%;
    left: 0;
    width: 100%;
    height: 20px;
}

#gnav li a {
    padding: 10px 0;
}

#gnav.fix {
    left: auto;
    right: 0;
}


@media (max-width: 1024px) {
    #header .htel {
        width: 70%;
        margin: 0;
    }

    #header .htel .htelbox {
        text-align: center;
    }

    #header .logo {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 25%;
    }

    .h-contact a {
        top: 17%;
    }
    
    .headerinner {
        padding-bottom: 20px;
    }

    /* #gnav */
    #gnav {
        width: 340px;
        -webkit-transform: translateX(340px);
        transform: translateX(340px);
    }

    #gnav .gnavinn {
        padding: 40px 20px 150px;
    }

    #gnav li.pull {
        padding-left: 10px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    #gnav li.pull ul {
        opacity: 1;
    }

    #gnav li.pull:hover ul {
        -webkit-transition: none;
        transition: none;
    }

    .acc-btns-h {
        position: relative;
        display: block;
    }

    .acc-btns-h:after {
        content: "\f0fe";
        display: inline-block;
        font-family: FontAwesome;
        color: rgb(230, 24, 116);
        position: absolute;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        font-size: 20px;
    }

    .acc-btns-h.action-h:after {
        content: "\f146";
    }

}

@media (max-width: 599px) {
    .h-contact a {
        top: auto;
        bottom: 2px;
        right: 55px;
        border-radius: 10px;
        padding: 15px 10px;
    }

    #header {
        padding-top: 22px;
    }

    #header .htel .hcontbox {
        display: none;
    }

    #header .logo {
        width: 30%;
    }

    #header .htel {
        width: 65%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    #header .logo.sp-logo {
        display: block;
    }

    #header .logo.pc-logo {
        display: none;
    }

    #header .logo.sp-logo img {
        width: 100%;
        max-height: 103px !important;
    }
    
    .headerinner {
        padding-bottom: 10px;
    }

}

/* mv */
/* **************************************** */
.homeSlide {
    padding: 0 0 30px;
}

.homeSlide:before {
    content: none;
}

.homeSlide:after {
    content: "";
    background: url(/import/tenant_1/160.16.100.81/html/images/index/mv-bg.png) bottom center /100% 100% no-repeat;
    height: auto;
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 100%;
    padding-top: 4%;
}

.homeSlide .slideNav {
    z-index: 1;
    position: absolute;
    bottom: 13%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    max-height: 400px;
}

.homeSlide .slideNav .bg-img {
    min-height: 160px;
    max-height: 220px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    background: url(/import/tenant_1/160.16.100.81/html/images/index/mv-txt.png) center center /100% 100% no-repeat;
    padding: 30px 20px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin: 0 auto;
    text-align: center;
    color: #573731;
    width: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.homeSlide .tbox {
    width: 90%;
    margin: auto;
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    z-index: 1;
}

.homeSlide .tbox .mv-title1 {
    color: #eb4690;
    text-shadow: #fff 2px 0px,
        #fff -2px 0px,
        #fff 0px -2px,
        #fff 0px 2px,
        #fff 2px 2px,
        #fff -2px 2px,
        #fff 2px -2px,
        #fff -2px -2px,
        #fff 1px 2px,
        #fff -1px 2px,
        #fff 1px -2px,
        #fff -1px -2px,
        #fff 2px 1px,
        #fff -2px 1px,
        #fff 2px -1px,
        #fff -2px -1px;
    text-align: center;
}

.homeSlide .tbox .mv-title2 {
    color: #573731;
    text-shadow: #fff 2px 0px,
        #fff -2px 0px,
        #fff 0px -2px,
        #fff 0px 2px,
        #fff 2px 2px,
        #fff -2px 2px,
        #fff 2px -2px,
        #fff -2px -2px,
        #fff 1px 2px,
        #fff -1px 2px,
        #fff 1px -2px,
        #fff -1px -2px,
        #fff 2px 1px,
        #fff -2px 1px,
        #fff 2px -1px,
        #fff -2px -1px;
    text-align: center;
}

.homeSlide .picbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
}

.homeSlide .picbox .pic {
    width: 32.333%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.homeSlide .picbox .pic+.pic {
    margin-left: 3px;
}

@media (max-width: 1024px) {
    /*     .homeSlide .slideNav {
    display: none;
} */

    .homeSlide .up-ofi-140:after {
        padding-top: 160%;
    }

    .homeSlide .slideNav .bg-img {
        min-height: 120px;
        padding: 15px 10px;
        width: 10px;
    }

    .homeSlide .slideNav li div {
        font-size: 12px;
    }

    .homeSlide .tbox {
        top: 10vw;
    }

    .homeSlide .slideNav {
        bottom: 15%;

    }


}

@media (max-width: 599px) {
    .homeSlide .up-ofi-140:after {
        padding-top: 180%;
    }

    .homeSlide .slideNav .bg-img {
        min-height: 100px;
        padding: 10px;
    }

    .homeSlide .tbox {
        top: 10%;
    }

    .homeSlide .slideNav {
        bottom: 19%;
    }

    .homeSlide .slideNav li div {
        font-size: 10px;
    }

    .mv-title1 {
        line-height: 1.2;
    }

}

/* ニュース・診療時間 */
/* **************************************** */
.mv-under .tit-3 {
    padding-bottom: 15px;
    border-bottom: 1px solid #b2b2b2;
    margin-bottom: 15px;
}

.mv-under dl {
    margin: 15px 0;
}

.mv-under dl a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.mv-under dt {
    width: 110px;
    color: #573731;
}

.mv-under dd {
    width: calc(100% - 110px);
}

.table table th {
    background-color: rgb(230, 24, 116);
}

.table table thead td {
    border-left: #b2b2b2 1px solid;
}

.table tbody th {
    background: #fff;
}

.table table td {
    background: rgb(230, 24, 116);
}

.table tbody td {
    background: #fff;
    color: rgb(230, 24, 116);
}

.timeattention {
    margin-top: 10px;
    font-size: 12px;
}

/* あなたのなりたいを叶える整骨院 */
/* **************************************** */
.moreg a {
    color: rgb(230, 24, 116);
    border: 1px solid rgb(230, 24, 116);
}

.hfirstinn .picbox .pic {
    position: relative;
    overflow: hidden;
    border-radius: 50%;
    width: 100%;
    display: block;
}

.hfirstinn .picbox ul li:nth-of-type(2n+1) .pic {
    max-width: 230px;
}

.hfirstinn .picbox ul li:nth-of-type(2n+2) .pic {
    max-width: 200px;
}

.hfirstinn .picbox li img {
    height: 100% !important;
}

.hfirstinn .picbox ul li.tar .pic {
    margin-left: auto;
}

.hfirstinn .picbox ul li.tar .pic {
    margin-left: auto;
}

.hfirstinn .btn {
    width: 250px;
}

@media (max-width: 1024px) {
    .hfirstinn .tbox {
        margin: 1% auto 20px;
    }
}

/* 当院が選ばれる理由 */
/* **************************************** */
.hstrong li .text-area .num {
    width: 40px;
    height: 40px;
    line-height: 40px;
    color: #fff;
    font-size: 22px;
    background: #e61874;
    border-radius: 100%;
    margin: -20px auto 15px;
    text-align: center;
    position: relative;
}

/* こんな症状ありませんか？ */
/* **************************************** */
.hmenu .li-inner {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.hmenu .li-inner .text-area {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.hmenu .li-inner .text-area .txt-li {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

@media (max-width: 599px) {
    .hmenu .li-inner {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .hmenu .li-inner .img-area {
        width: 30%;
    }

    .hmenu .li-inner .text-area {
        width: 65%;
        margin-top: 0;
        -webkit-box-flex: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
    }

}

/* お客様の声 */
/* **************************************** */
.hvoice .pic {
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.6));
}

.hvoice .tit-4 {
    font-size: 18px;
}

.hvoice .li-inner .btn {
    margin: 20px auto 0;
    width: 130px;
}

.hvoice .li-inner .btn a {
    padding: 5px 10px;
}

.hvoice .wrap>.btn {
    margin-top: 50px;
    margin-bottom: 40px;
}

.hvoice .gender span:before,
.hvoice .age span:before {
    content: "/";
    padding: 0 5px;
}

.hvoice dt,
.hvoice dd {
    font-size: 18px;
    color: rgb(230, 24, 116);
}

@media (max-width: 599px) {
    .hvoice ul li+li {
        margin-top: 50px;
    }
}

/* あいさつ */
/* **************************************** */
.hgreeting .tit-3 {
    font-weight: bold;
    color: #573731;
    font-size: 16px;
    font-family: 'メイリオ',
        Meiryo,
        'ヒラギノ角ゴ Pro W3',
        'Hiragino Kaku Gothic Pro',
        sans-serif;
    margin-bottom: 10px;
}

.hgreeting .txt {
    line-height: 2.5;
    color: #573731;
}

.hgreeting .name {
    text-align: right;
    font-size: 26px;
    color: #573731;
    padding: 20px 0;
}

@media (max-width: 1024px) {
    .hgreeting .name {
        font-size: 22px;
    }
}

@media (max-width: 599px) {
    .hgreeting .tit-3 {
        font-size: 14px;
    }

    .hgreeting .wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .hgreeting .name {
        font-size: 20px;
    }
}

/* Blog　YouTube */
/* **************************************** */
.harticle .article-btn::after {
    content: "\f054";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    color: inherit;
    line-height: 100%;
    padding-left: 10px;
}

.harticle .article-box li {
    border-bottom: 1px dashed #aaa;
    padding: 15px 0;
}

.harticle .youtube-box .pic {
    position: relative;
}

.harticle .youtube-box .pic::before {
    font-family: "Font Awesome 5 Free";
    content: "\f144";
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    font-size: 40px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    color: #e61874ad;
    background: #ffffff8f;
    border-radius: 50%;
}

.harticle .btn03 {
    margin: 30px 0 0 auto;
}

/* Instagram */
/* **************************************** */
.hinsta .btn03 {
    margin-top: 10px;
}

.hinsta .btn03 .icon::before {
    content: "\f16d";
    display: inline-block;
    margin-right: 5px;
    font-family: FontAwesome;
    color: inherit;
}

/* banner */
/* **************************************** */
.banner-wrap a {
    display: block;
}

.hbanner .banner-wrap {
    width: 48%;
    color: #e61874ad;
    border: solid 1px;
    margin: 1%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.hbanner .banner-wrap a:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.hbanner .banner-wrap .pic-wrap {
    max-height: 180px;
    overflow: hidden;
}

.hbanner .banner-wrap .txt {
    width: 90%;
    color: #e61874ad;
    font-size: 28px;
    font-family: 'rounded';
    text-align: center;
    text-shadow: 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff, 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff, 1px 1px 4px #fff, 1px -1px 4px #fff, -1px 1px 4px #fff, -1px -1px 4px #fff;
    position: absolute !important;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 3;
}

.hbanner .banner-wrap .txt::after {
    content: "\f30b";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    color: inherit;
    line-height: 100%;
}

@media (max-width: 1024px) {
    .hbanner .banner-wrap .txt {
        font-size: 24px;
    }
}

@media (max-width: 599px) {
    .hbanner .banner-wrap {
        width: 100%;
    }
}

/* footer */
/* **************************************** */
#footer {
    margin-bottom: 80px;
}

.fbnr {
    background-image: none;
    background-color: #e61874;
    padding: 60px 0;
}

.fbnr dd a {
    color: #e61874;
    background: #fff;
}

#footer .logo img {
    width: 137px;
}

.fnavl li {
    width: 25%;
    margin: 1% 0;
    padding: 0;
}

.fnavl li a {
    font-size: 12px;
}

.sp-contact {
    display: none;
}

.faccinn .instagram {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 2em;
}

.faccinn .instagram a:before {
    content: "\f16d";
    display: inline-block;
    font-family: FontAwesome;
    color: inherit;
    font-size: 30px;
    color: rgb(230, 24, 116);
}

.map {
    max-height: 400px;
}

@media (max-width: 1024px) {
    .fnavl li {
        width: 50%;
    }
}

@media (max-width: 599px) {
    #footer {
        margin-bottom: 60px;
    }

    .sp-contact {
        display: block;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #f6f3ee;
    }

    .sp-contact .tel {
        font-size: 21px;
        padding: 3% 0;
        width: 50%;
        text-align: center;
    }

    #totop {
        bottom: 5px;
    }

    .faccinn .instagram a:before {
        font-size: 24px;
    }

    .fbnr dt span:before {
        left: -30px;
        ;
    }

    .fbnr dt span:after {
        right: -30px;
    }
}

/* 下層ページ common*/
/* **************************************** */
/* メインビジュアル */
.mainImg:after {
    background: url(/import/tenant_1/160.16.100.81/html/images/under/nami.png) bottom left repeat-x;
}

.under-mv {
    font-size: 28px;
}

/* パンくず */
.breadcrumbs ul li .now {
    color: rgb(230, 24, 116);
    font-weight: 700;
}

/* font */
.under .tit-3 {
    color: rgb(230, 24, 116);
    font-size: 30px;
    line-height: 1.6;
    font-family: 'rounded';
    font-weight: normal;
}

.under .tit-4 {
    color: rgb(230, 24, 116);
    font-size: 18px;
    line-height: 1.6;
    font-weight: bold;
}

/* mv */
.mainImg .pic img {
    width: 100%;
    height: 100% !important;
    font-family: "object-fit: cover; object-position: 50% 47%;";
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.mainImg h2 {
    line-height: 1.2;
    position: absolute !important;
}

@media (max-width: 599px) {

    /* font */
    .under .tit-3 {
        font-size: 24px;
    }

    .under .tit-4 {
        font-size: 16px;
    }
}


/* 院紹・アクセス*/
/* **************************************** */

/* アクセス */
.faccl .way {
    margin-bottom: 20px;
}

.faccl .way dt {
    margin-bottom: 5px;
    font-weight: bold;
}

.about04box .btn {
    margin: 50px auto;
}

.about04box .btn a {
    padding: 10px;
}

.hgreeting .tit-min {
    font-weight: bold;
    color: #573731;
    font-size: 16px;
    font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
    margin-bottom: 10px;
}

@media (max-width: 599px) {
    .hgreeting .tit-min {
        font-size: 14px;
    }
}

/* 当院の施術 */
/* **************************************** */
.treatment-wrap .area:nth-of-type(even) {
    background-color: #f7efdf;
}

.treatment-wrap .area:nth-of-type(even) .wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse;
    flex-flow: row-reverse;
}

.table-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
}

.table-box dl {
    width: calc(100% / 3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-top: 1px solid #b2b2b2;
    border-bottom: 1px solid #b2b2b2;
    border-left: 1px solid #b2b2b2;
}

.table-box .box1 {
    background-color: #fad0e3;
}

.treatment .table-box .box2 {
    width: calc(100% * 0.66);
}

.hoge {
    opacity: 0;
}

.table-box .box01,
.table-box .box02 {
    width: calc(100% / 4);
}

.table-box .box03 {
    width: calc(100% / 2);
}

.table-box dl dt,
.table-box dl dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
    font-size: 16px;
}

.table-box dl dt {
    background-color: rgb(230, 24, 116);
    color: #fff;
}

.table-box dd {
    background-color: #fff;
}

.table-box dd+dd {
    border-top: 1px solid #b2b2b2;
}

.table-box .box1 dd {
    font-weight: bold;
    background-color: #fad0e3;
}

.table-box .box1 dl {
    background-color: #fad0e3;
}

.table-box dl:last-of-type {
    border-right: 1px solid #b2b2b2;
}

/* treatment06 */
.treatment06 .other-treatment02 .table-box .box2 {
    width: calc(100% / 3);
}

.treatment06 .other-treatment+.other-treatment {
    margin-top: 80px;
}

.treatment06 .tit-4 {
    padding-left: 2em;
    position: relative;
    margin-bottom: 10px;
}

.treatment06 .tit-4::before {
    content: "■";
    color: rgb(230, 24, 116);
    position: absolute;
    top: 0;
    left: 0;
}

/* treatment07 */
.treatment07 .treatment-box {
    width: 80%;
    margin: 0 auto;
}

.list-decimal li {
    padding-left: 2em;
    position: relative;
}

.list-decimal li+li {
    margin-top: 10px;
}

.list-decimal li::before {
    content: "●";
    color: rgb(230, 24, 116);
    position: absolute;
    top: 0;
    left: 0;
}

.list-wrap {
    width: 90%;
    margin: 30px auto;
    padding: 30px 15px;
    border: 1px solid rgb(230, 24, 116);
    border-radius: 10px;
}

@media (max-width: 1024px) {
    .treatment-wrap .area:nth-of-type(even) .wrap {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    /* treatment06 */
    .treatment06 .other-treatment02 .table-box .box1 {
        width: 50%;
    }

    .treatment06 .other-treatment02 .table-box .box2,
    .treatment06 .other-treatment02 .table-box .box3 {
        width: 25%;
    }
}

@media (max-width: 599px) {

    .table-box dl dt,
    .table-box dl dd {
        font-size: 14px;
        padding: 5px;
    }

    .table-box dl {
        width: 25%;
    }

    .treatment .table-box .box2 {
        width: 75%;
    }


    /* treatment06 */
    .treatment06 .other-treatment02 .table-box .box1 {
        width: 58%;
    }

    .treatment06 .other-treatment02 .table-box .box2,
    .treatment06 .other-treatment02 .table-box .box3 {
        width: 21%;
    }

    /* treatment07 */
    .treatment07 .treatment-box {
        width: 100%;
    }
}

/* 肩こり */
/* 腰痛 */
/* 寝違え */
/* 眼精疲労 */
/* 膝痛 */
/* 産後の不調 */
/* 身体の歪み */
/* スポーツのケガ */
/* スポーツのパフォーマンス */
/* **************************************** */
.lead-text {
    font-size: 16px;
    text-align: center;
    line-height: 2;
}

.shoulder .text {
    line-height: 2;
}

.circle img {
    border-radius: 50%;
}

.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-flow: row-reverse;
    flex-flow: row-reverse;
}

.area02 .tit-4 {
    text-align: left;
    margin-bottom: 20px;
    padding-left: 2em;
    position: relative;
}

.area02 .tit-4::before {
    content: "□";
    color: rgb(230, 24, 116);
    position: absolute;
    top: 0;
    left: 0;
}

.area02 .area02-box+.area02-box {
    margin-top: 80px;
}

.shoulder .list-box {
    background: #fdf8f1;
    -webkit-box-shadow: 20px 38px 34px -26px rgb(0 0 0 / 20%);
    box-shadow: 20px 38px 34px -26px rgb(0 0 0 / 20%);
    padding: 40px;
    margin: 30px auto 0;
    max-width: 900px;
}

.shoulder .list-box li {
    padding-left: 3em;
    position: relative;
    font-weight: bold;
}

.shoulder .list-box li::before {
    content: "\f058";
    color: rgb(230, 24, 116);
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 24px;
    line-height: 100%;
}

.shoulder .list-box li+li {
    margin-top: 20px;
}

/* shoulder05 */
.banner-box a {
    display: block;
}

.shoulder05 .banner-box {
    max-width: 800px;
    margin: 0 auto;
}

.shoulder05 .text-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.shoulder05 .text-inner .text {
    display: inline-block;
    padding: 10px 0;
    font-size: 24px;
    color: #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

@media (max-width: 599px) {
    .lead-text {
        font-size: 14px;
        text-align: left;
        line-height: 2;
    }

    .reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .shoulder .pic {
        max-width: 400px;
        margin: 0 auto;
    }

    .shoulder05 .text-inner .text {
        font-size: 20px;
    }
}


/* お客様の声一覧・詳細 */
/* **************************************** */
.caarea li a {
    background: url(/import/tenant_1/160.16.100.81/html/images/under/faqnav.png) center center /cover;
    display: block;
    padding: 15px 35px;
    color: #fff;
    position: relative;
}

.caarea dt {
    text-align: center;
    color: rgb(230, 24, 116);
    width: 100%;
    margin-bottom: 20px;
}

.fa-chevron-left,
.fa-chevron-right {
    color: rgb(230, 24, 116);
    font-size: 20px;
}

.pagenav li a {
    background: url(/import/tenant_1/160.16.100.81/html/images/pagenow.png) center center /contain no-repeat;
}

.pagenav li.next,
.pagenav li.prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pagenav li.next a,
.pagenav li.prev a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pagenav .now a {
    color: #000;
}

.voice1.hvoice .li-inner dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

.voice1.hvoice .li-inner dt,
.voice1.hvoice .li-inner dd {
    font-size: 16px;
}

.voice1.hvoice .li-inner dd::before {
    content: "/";
    padding: 0 5px;
}

/* お客様の声詳細 */
.voice-box dl {
    margin-top: 20px;
}

.voice-box dt {
    font-weight: bold;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 20px;
    padding-left: 2em;
    position: relative;
}

.voice-box dt::before {
    content: "■";
    color: rgb(230, 24, 116);
    position: absolute;
    top: 0;
    left: 0;
}

.voice-box dd {
    font-size: 14px;
    line-height: 1.5;
    padding-left: 2em;
    color: #333;
}

.under-detail .btn {
    margin-top: 100px;
}

.under-detail .btn a {
    padding: 10px 20px;
    letter-spacing: 2px;
}

.recommend {
    margin-top: 200px;
}

@media (max-width: 1024px) {
    .under-detail .btn {
        margin: 100px auto 100px;
    }
}

@media (max-width: 599px) {
    .hvoice.voice1 ul li+li {
        margin-top: 0;
    }

    .voice1.hvoice .li-inner dt,
    .voice1.hvoice .li-inner dd {
        font-size: 14px;
    }

    .under-detail .btn {
        margin: 70px auto 70px;
    }
}

/* ブログ一覧・詳細 お知らせ詳細 */
/* **************************************** */
.blog .btn,
.blog_detail .bdreco .blist li .btn {
    margin-left: auto;
    margin-right: 0;
    margin-top: 20px;
}

.blog .btn a,
.blog_detail .bdreco .btn a {
    padding: 10px 30px;
}

/* ブログ詳細 */
.blog_detail .main-btn {
    margin: 80px auto;
}

.bdrecobox h3 {
    line-height: 1.5;
}

.bdrecobox h3 {
    background: url(/import/tenant_1/160.16.100.81/html/images/under/ribon.png) center center /100% 100% no-repeat;
}

.blog_detail .bdreco .blist li+li {
    margin-top: 20px;
}

.youtube-wrap {
    width: 100%;
    margin: 50px 0;
}

.youtube {
    width: 100%;
    position: relative;
}

.youtube::before {
    content: "";
    display: block;
    padding-top: 56.25%;
}

.youtube iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.blog-text h2 {
    font-size: 20px;
    padding: 0.5em;
    border-bottom: 1px solid;
    border-top: 1px solid;
    font-weight: bold;
    color: rgb(230, 24, 116);
    margin-bottom: 20px;
}

.blog-text h3 {
    font-size: 18px;
    padding-left: 0.5em;
    border-left: 3px solid;
    font-weight: bold;
    text-align: left;
    color: rgb(230, 24, 116);
    font-family: inherit;
    margin-bottom: 15px;
}

.blog-text h4 {
    font-size: 18px;
    font-weight: bold;
    text-decoration: underline;
    margin-bottom: 10px;
}

/* お知らせ詳細 */
.news_detail .btn a {
    padding: 10px 30px;
}

@media (max-width: 599px) {
    .blog .tit a {
        font-size: 16px;
    }

    .bitem .cabox li {
        font-size: 12px;
    }

    .blog .btn,
    .blog_detail .bdreco .blist li .btn {
        width: 160px;
        margin-top: 10px;
    }

    .blog .btn a,
    .blog_detail .blist .btn a {
        padding: 5px 10px;
    }

    .bitem .tit:after {
        margin: 5px auto;
    }
}

/* よくある質問 */
/* **************************************** */
.faqnav li a {
    background: url(/import/tenant_1/160.16.100.81/html/images/under/faqnav.png) center center /cover;
}

.faqlist li+li {
    margin-top: 80px;
}

.acc-btns {
    position: relative;
}

.acc-btns:after {
    content: "\f0fe";
    display: inline-block;
    font-family: FontAwesome;
    color: rgb(230, 24, 116);
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 36px;
}

.acc-btns.action:after {
    content: "\f146";
}

.faqlist dt {
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 30px;
    cursor: pointer;
}

.faqlist .q {
    top: -10px;
    position: absolute !important;
}

.faqlist .a {
    position: absolute !important;
}

@media (max-width: 599px) {

    .acc-btns:after,
    .acc-btns.action:after {
        font-size: 28px;
    }
}

/* 求人情報 */
/* **************************************** */
/* recruit02 */
.recruit02 .li-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

.check-list li {
    padding-left: 2.5em;
    position: relative;
    font-size: 16px;
}

.check-list li::before {
    content: "\f00c";
    display: inline-block;
    font-family: "FontAwesome";
    font-weight: 900;
    font-size: 30px;
    color: rgb(230, 24, 116);
    line-height: 1;
    position: absolute;
    top: 0;
    left: 0;
}

.check-list li+li {
    margin-top: 20px;
}

.recruit02 .img-area .pic01 {
    max-width: 230px;
    margin-right: 0;
    margin-left: auto;
}

.recruit02 .img-area .pic02 {
    max-width: 200px;
}

/* recruit03 */
.recruit03 .tbox {
    background: #f7efdf;
    padding: 50px 80px;
    position: relative;
    z-index: 1;
    max-width: 800px;
    margin: 0 auto;
}

.recruit03 .tbox li+li {
    margin-top: 20px;
}

.recruit03 .tbox li {
    font-size: 28px;
    position: relative;
    padding-left: 1.5em;
}

.recruit03 .tbox li .num {
    letter-spacing: 2px;
    position: absolute !important;
    left: 0;
    top: 0;
    color: rgb(230, 24, 116);
}

/* recruit04 */
.recruit04 dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(230, 24, 116, 0.3);
}

.recruit04 dl+dl {
    margin-top: 20px;
}

.recruit04 dt,
.recruit04 dd {
    font-size: 16px;
}

.recruit04 dt {
    color: rgb(230, 24, 116);
    font-weight: bold;
    width: 20%;
}

.recruit04 dd {
    width: 75%;
}

.recruit04 .btn {
    margin-top: 50px;
}

@media (max-width: 1024px) {

    /* recruit02 */
    .recruit02 .img-area .pic01,
    .recruit02 .img-area .pic02 {
        max-width: 200px;
        margin: 0 auto;
    }
}

@media (max-width: 599px) {

    /* recruit01 */
    .under .recruit01 .tit-3 {
        margin-bottom: 20px;
    }

    /* recruit03 */
    .recruit03 .tbox {
        padding: 20px;
    }

    .recruit03 .tbox li {
        font-size: 20px;
    }

    /* recruit04 */
    .recruit04 dt,
    .recruit04 dd {
        width: 100%;
    }
}

/* 求人情報 */
/* **************************************** */
.cont01box dt {
    background: url(/import/tenant_1/160.16.100.81/html/images/under/cont01tit.png) center center /100% 100% no-repeat;
}

.contact dd input,
.contact dd textarea {
    background: rgba(230, 24, 116, 0.1);
}

.contact .radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.contact .radio input {
    width: auto;
    margin: 0 1em;
}

.contact_verification {
    margin-top: 50px;
}

.contact .btn button,
.contact_verification .btn button,
.contact_completion a {
    padding: 10px;
}

.contact .btn,
.contact_completion {
    margin-top: 50px;
}

@media (max-width: 599px) {
    .contact .radio input {
        width: 13px;
        margin: 0;
    }

    .contact .radio label {
        width: calc(100% - 13px);
        padding-left: 1em;
    }

    .contact_verification .btn {
        width: 150px;
    }
}

/* 見たまま編集 */
/* **************************************** */
[data-element-id] #header {
  padding-bottom: 350px;
}

[data-element-id] #gnav.fix {
  position: static;
}

[data-element-id] .fead-mv {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
}

/* top */
[data-element-id] #gnav li.pcnone::before {
    content: "スマホ用ナビ";
    width: 100%;
    display: block;
    padding: 5px;
    font-size: 12px;
    color: white;
    line-height: 1;
    text-align: center;
    background-color: blue;
}

[data-element-id] #gnav li.pcnone {
    display: block;
    border: 1px solid blue;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[data-element-id] #gnav li.pull ul::before {
    content: "ドロップダウンメニュー";
    width: 100%;
    display: block;
    padding: 5px;
    font-size: 12px;
    color: white;
    line-height: 1;
    text-align: center;
    background-color: blue;
}

[data-element-id] #gnav li.pull ul {
    opacity: 1;
    padding-top: 0;
    visibility: visible;
    height: auto;
    -webkit-transition: 1s all ease;
    transition: 1s all ease;
    top: 110%;
    right: 0;
    -webkit-transform: translateX(300px);
            transform: translateX(300px);
}

[data-element-id].h-contact a {
    position: absolute!important;
    top: 120%;
    right: 0;
}

[data-element-id] .h-contact .btn-inner {
  position: static;
}

[data-element-id] .homeSlide {
    margin-top: 330px;
}

.headerinner [data-common-area] {
    position: static;
}

[data-element-id] .headerinner {
    position: static;
}

[data-element-id] #gnav li.pull ul li {
    height: auto;
    visibility: visible;
}

[data-element-id] #gnav li.pull ul li a {
    visibility: visible;
    height: auto;
    -webkit-transition: 0.6s all ease;
    transition: 0.6s all ease;
}

[data-element-id] .gnavinn .up-d-none {
    display: block;
    width: 210px;
    margin-left: 20px;
    margin-top: 20px;
    display: block;
    border: 1px solid blue;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

[data-element-id] .gnavinn .up-d-none::before {
    content: "ハンバーガーメニューロゴ";
    width: 100%;
    display: block;
    padding: 5px;
    font-size: 12px;
    color: white;
    line-height: 1;
    text-align: center;
    background-color: blue;
}

/* 02.about｜院紹介・アクセス */
[data-element-id] .slickSlider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

[data-element-id] .slickSlider li {
    width: 33.33%;
}

.z-max{
  z-index: 99999;
}
