
/* -------------------------------------------------------------------
container-fluid
------------------------------------------------------------------- */
main {
}

@media screen and (min-width: 751px) { 
main .container-fluid-inner {
    width: -webkit-calc(100%);
    width: calc(100%);
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 100;
}

#ContentsWrap {
    width: 100%;
    margin: 0 auto;
    position: relative;
}
}/* ---------------------------- pc end */






@media screen and (max-width:767px) {
main {
    width: 100%;
    box-sizing:border-box;
}
main article .container-inner{
    width: 100%;
    margin:0 auto;
    box-sizing: border-box;
}
main article .container-fluid{
    padding:0 4.25531914893617%;
    color: #222;
}

#ContentsWrap {
    width: 100%;
    margin: 0 auto;
    position: relative;
}
}/* ---------------------------- sp end */




/* -------------------------------------------------------------------
KV
------------------------------------------------------------------- */

@media screen and (min-width: 751px) { 
#breadCrumbs {
    width: 100%;
    margin: auto;
}
#breadCrumbs .inner{
    width: calc(100%  - 32px);
    max-width: 1280px;
    margin: auto;
    font-size: 1.2rem;
    color: #333;
    padding:24px 0;
}
#breadCrumbs a {
    text-decoration: none;
    font-size: 1.2rem;
    color: #333;
    text-align: left;
    margin: 0;
    display: inline-block;
}
#breadCrumbs a:hover {
    text-decoration: underline;
}
#breadCrumbs a:after {
    content: " ";
    color: transparent;
    display: inline-block;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border: solid #666 0;
    border-width: 0 1px 1px 0;
    width: 6px;
    height: 6px;
    margin:.2em 16px;
    position: relative;
    top: .5px;
}
}/* ---------------------------- pc end */


/*751〜1024px*/
@media screen and (min-width:768px) and (max-width:1024px) {
#breadCrumbs .inner{
    max-width: 1024px;
    margin: auto;
    padding:16px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
#breadCrumbs {
    display: none;
}
}/* ---------------------------- sp end */





/* -------------------------------------------------------------------
KV
------------------------------------------------------------------- */
#kv {
    width: 100%;
    position: relative;
    overflow: hidden;
}
#kv h2 {
    letter-spacing: 0.12em;
}
body#menu #kv h2,
body#clinic #kv h2,
body#doctor #kv h2{
    letter-spacing: 0.36em;
}
#kv p {
    letter-spacing: 0.12em;
}
#kv {
    background: #f6ebe9;
}
body#skin #kv {
    background: #f4f6e9;
}
body#sagging #kv  {
    background: #f7f7e7;
}
body#diet #kv {
    background: #e7f7e7;
}
body#cosmetic-surgery #kv {
    background: #f7efe7;
}
body#price #kv {
    background: #efefef;
}
body#clinic #kv {
    background: #e9e9f6;
}
body#doctor #kv {
    background: #e9f4f6;
}
body#recommend #kv {
    background: #f4f6e9;
}
body#photo #kv {
    background: #efefef;
}
body#contact #kv,
body#privacy #kv,
body#sitemap #kv{
  background: #f7f4f3;
}

/*752PX*/
@media screen and (min-width:768px) {
#kv .inner {
    max-width: 1024px;
    width: 100%;
    height: 352px;
    margin: auto;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    z-index: 2;
}
body#contact #kv .inner,
body#privacy #kv .inner,
body#sitemap #kv .inner {
    height: 206px;
}
#kv .txt {
    width: 100%;
    max-width: 1024px;
    margin: 0;
    color: #231815;
    vertical-align: middle;
    display: block;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column nowrap;
    z-index: 3;
}
#kv h2 {
    margin:0;
    font-size: 4rem;
    line-height: 1.45;
}
body#menu #kv h2 {
    font-size: 4.2rem;
    line-height: 1;
}
#kv p {
    font-size: 1.8rem;
}
#kv:after {
    content: "";
    max-width: 1280px;
    width: 100%;
    height: 100%;
    margin:auto;
    position: absolute;
    top: 0;
    right: 0;
    left:0;
}
body#menu #kv:after {
    background: url(../img/menu/kv_pc.png) no-repeat right top;
}
body#skin #kv:after {
    background: url(../img/menu/skin/kv_pc.png) no-repeat right top;
}
body#wrinkle #kv:after {
    background: url(../img/menu/wrinkle/kv_pc.png) no-repeat right top;
}
body#sagging #kv:after {
    background: url(../img/menu/sagging/kv_pc.png) no-repeat right top;
}
body#diet #kv:after {
    background: url(../img/menu/diet/kv_pc.png) no-repeat right top;
}
body#cosmetic-surgery #kv:after {
    background: url(../img/menu/cosmetic-surgery/kv_pc.png) no-repeat right top;
}
body#price #kv:after {
    background: url(../img/price/kv_pc.png) no-repeat right top;
}
body#clinic #kv:after {
    background: url(../img/clinic/kv_pc.png) no-repeat right top;
}
body#doctor #kv:after {
    background: url(../img/doctor/kv_pc.png) no-repeat right top;
}
body#recommend #kv:after {
    background: url(../img/recommend/kv_pc.png) no-repeat right top;
}
body#media #kv:after {
    background: url(../img/media/kv_pc.png) no-repeat right top;
}
body#photo #kv:after {
    background: url(../img/photo/kv_pc.png) no-repeat right top;
}
}/* --------------------------------------------- PC end */




/*751〜1024px*/
@media screen and (min-width:768px) and (max-width:1024px) {
#kv .inner {
    padding: 0 16px;
}
#kv:after {
    margin-right: -148px;
}
}/* --------------------------------------------- PC end */





/*751PX*/
@media screen and (max-width:767px) {
#kv {
    width: 100%;
    padding-top: 53.191489361702125%;
    margin: 56px auto 0;
    position: relative;
    overflow: hidden;
}
#kv .inner {
    width: 100%;
    height: 100%;
    margin: auto;
    position: absolute;
    top:0;
    left:0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    overflow: hidden;
    z-index: 2;
}
body#contact #kv,
body#privacy #kv,
body#sitemap #kv {
    padding-top: 39.8936170212766%;
}
#kv .txt {
    width: 100%;
    margin: auto;
    padding:0 16px;
    color: #333;
    vertical-align: middle;
    display: block;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column nowrap;
    z-index: 3;
}
#kv h2 {
    margin:0;
    font-size: 2.1rem;
    line-height: 1.4;
}
#kv p {
    font-size: .9rem;
}
body:not(.menu) #kv h2,
body#menu.operation #kv h2 {
    margin-top: 0;
}
#kv h2 small{
    font-size: 2rem;
}
#kv p.small {
    margin-top: 32px;
    font-size: 1.2rem;
}
#kv p.small.stuff{
    margin-top: 15px;
}
#kv:after {
    content: "";
    width: auto;
    height: 100%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    z-index: 1;
}
body#menu #kv:after {
    background: url(../img/menu/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#skin #kv:after {
    background: url(../img/menu/skin/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#wrinkle #kv:after {
    background: url(../img/menu/wrinkle/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#sagging #kv:after {
    background: url(../img/menu/sagging/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#diet #kv:after {
    background: url(../img/menu/diet/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#cosmetic-surgery #kv:after {
    background: url(../img/menu/cosmetic-surgery/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#price #kv:after {
    background: url(../img/price/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#clinic #kv:after {
    background: url(../img/clinic/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#doctor #kv:after {
    background: url(../img/doctor/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#recommend #kv:after {
    background: url(../img/recommend/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#media #kv:after {
    background: url(../img/media/kv_sp.png) no-repeat right top;
    background-size: contain;
}
body#photo #kv:after {
    background: url(../img/photo/kv_sp.png) no-repeat right top;
}
}
/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------
見出し
------------------------------------------------------------------- */

@media screen and (min-width:768px) {
    h3.heading{
        margin-bottom: 32px!important;
        padding-bottom: 8px;
        font-size: 2.4rem;
        font-weight: 600;
        border-bottom: solid 1px #d5d5d5;
    }
    h4.heading{
        margin-bottom: 40px!important;
        padding-bottom: 16px;
        font-size: 1.6rem;
        border-bottom: solid 1px #d5d5d5;
    }
    h5.heading{
        margin: 32px 0 16px;
        font-size: 1.6rem;
    }
    .heading.h5{
        margin: 48px 0 16px;
    }
     .heading.h5 h5{
        font-size: 1.6rem;
        line-height: 1;
        display: inline-block;
    }
     .heading.h5 .alignright {
        margin: -6px 0 0;
    }
}/* --------------------------------------------- PC end */
@media screen and (max-width:767px) {
    h3.heading{
        margin-bottom: 16px;
        padding-bottom: 16px;
        font-size: 1.8rem;
        font-weight: 600;
        border-bottom: solid 1px #d5d5d5;
    }
    h4.heading{
        margin-bottom: 32px!important;
        padding-bottom: 16px;
        font-size: 1.4rem;
        border-bottom: solid 1px #d5d5d5;
    }
    h5.heading{
        margin-bottom: 32px!important;
    }
    .heading.h5{
        margin: 32px 0 16px;
    }
     .heading.h5 h5{
        font-size: 1.4rem;
        line-height: 1;
        display: inline-block;
    }
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------
治療
------------------------------------------------------------------- */
/* feature-container */
.feature-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.feature-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.feature-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.feature-container#nayami .container-fluid{
   padding-bottom: 32px;
}
body.ultherma .feature-container .container-fluid{
    padding-top: 0;
}
body.ultherma .feature-container .container-fluid p.alignright{
    margin:0 auto 64px;
}
.feature-container .container-fluid .title{
    margin:0 auto;
}
.feature-container .point {
    width: 100%;
    margin:0 auto 48px;
    display: block;
}
.feature-container .point ul{
    width: 100%;
    margin:0 -12px;
    display:table;
    table-layout: fixed;
}
.feature-container .point ul li{
    width: 25%;
    /* margin: 0 12px; */
    padding-top: 25%;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    position: relative;
    text-indent: 0;
}
.feature-container .point ul li span {
    width: 80%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    overflow: hidden;
}
.feature-container .point ul li:after {
    /* background-image: url(../img/pc/operation/tarumi_point01.png); */
    /* background-size: contain; */
    content: "";
    width: 90.81632653061224%;
    height: 90.81632653061224%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    border-radius: 50%;
    border: solid 1px #7d7d7d;
}

.feature-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}

.feature-container h3 {
    margin: 0 0 40px;
    font-size: 28px;
    line-height: 1.643;
    //letter-spacing: -2px;
}
.feature-container p {
    margin: 0 0 32px;
    font-size: 13px;
    line-height: 1.769;
}
.feature-container.shiwa .container-inner p {
    text-shadow: 1px 0px 6px #f3f3f3;
}
.feature-container a.pure-button {
    width: 172px;
    min-width: 172px;
    margin: 0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}

.feature-container .nayami {
    width: 100%;
    margin:0 auto 48px;
    display: block;
    position: relative;
}
.feature-container .nayami ul{
    //width: 100%;
    margin: 0 -12px;
    //margin: 0;
    display: flex;
    //justify-content: flex-start;
    justify-content: center;
    align-items: center;
}
body.hiaruron .feature-container .nayami ul{
    width: calc(100% - 288px);
}
body.hiaruron .feature-container .nayami:after{
    content: "";
    width: 256px;
    height: 100%;
    display: block;
    background: url(../img/pc/operation/shiwa/hiaruron/hiaruron_img01.png) no-repeat right 0;
    position: absolute;
    top:0;
    right: 0;
}
.feature-container .nayami ul:not(:first-child){
    margin:24px -12px 0;
    //margin:24px 0 0;
}
.feature-container .nayami ul li{
    width: calc(25% - 24px);
    height: 91px;
    margin: 0 12px;
    //padding: 32px 0 0 0;
    padding: 0;
    display: block;
    position: relative;
    text-align: center;
    vertical-align: middle;
}
body.hiaruron .feature-container .nayami ul li{
    width: calc(33.333333% - 24px);
}

.feature-container .nayami ul li span {
    text-indent: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: -4px;
    //left: 0;
    //right: 0;
    //bottom: 0;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
}
.feature-container .nayami ul li:after{
    content: "";
    width: 104px;
    height: 91px;
    margin:auto;
    background:
    linear-gradient(to top right, rgba(255,255,255,0) 50%, #dfdfdf 50.5%) no-repeat top left/50% 100%,
    linear-gradient(to top left, rgba(255,255,255,0) 50%, #dfdfdf 50.5%) no-repeat top right/50% 100%;
    display: block;
    position: absolute;
    top:0;
    left:0;
    right: 0;
    z-index: -1;
}


.feature-container .blk {
    width: 100%;
    padding: 16px;
    margin:48px auto;
    border: solid 1px #CCC;
    background: #FFF;
    display: block;
}
.feature-container .blk ul{
    margin:0;
}

.feature-container p.large {
    font-size: 16px;
    line-height: 2;
    margin:0 0 8px;
}
.feature-container ul{
    margin:0 0 24px;
}
.feature-container ul li{
    font-size: 14px;
    line-height: 1.769;
    text-indent: -1em;
    padding: 0 0 0 1em;
    margin-bottom: 10px;
}
.feature-container ul.large li{
    font-size: 16px;
}
.feature-container .blk h4 {
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 10px;
}
.feature-container .blk ul li {
    font-size: 11px;
    line-height: 1.769;
    padding-right: 16px;
    display: inline-block;
}

.feature-container .ph_laser {
    margin:80px auto 0;
}
}/* --------------------------------------------- PC end */




@media screen and (max-width:767px) {
.feature-container .container-fluid{
    padding-top: 48px;
    padding-bottom: 32px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.feature-container .container-fluid .title{
    margin:0 auto 32px;
}
.feature-container .container-fluid .title h2,
.feature-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.feature-container .point {
    width: 100%;
    margin:0 auto 38px;
    display: block;
}
.feature-container .point ul{
    width: 96.08127721335269%;
    margin: 0 auto;
    display: table;
    table-layout: fixed;
}
.feature-container .point ul li{
    //width: 40.42553191489361%;
    width: 49%;
    margin-bottom: 0;
    //padding-top: 38.96276595744681%;
    padding-top: 50%;
    text-indent: 0;
    display: inline-block;
    position: relative;
}
.feature-container .point ul li span {
    //width: 80%;
    width: 88.51963746223565%;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    overflow: hidden;
}
.feature-container .point ul li:nth-of-type(1) span,
.feature-container .point ul li:nth-of-type(3) span {
    left:0;
}
.feature-container .point ul li:nth-of-type(2) span,
.feature-container .point ul li:nth-of-type(4) span {
    right:0;
}
.feature-container .point ul li:after {
    content: "";
    width: 88.51963746223565%;
    height: 88.51963746223565%;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    border-radius: 50%;
    border: solid 1px #7d7d7d;
}
.feature-container .point ul li:nth-of-type(1):after,
.feature-container .point ul li:nth-of-type(3):after {
    left:0;
}
.feature-container .point ul li:nth-of-type(2):after,
.feature-container .point ul li:nth-of-type(4):after {
    right:0;
}

.feature-container .point ul li:nth-of-type(1){
    padding-right: 8.767123287671232%;
}
.feature-container .point ul li:nth-of-type(2){
    padding-left: 8.767123287671232%;
}
.feature-container .point ul li:nth-of-type(3){
    padding-right: 8.767123287671232%;
}
.feature-container .point ul li:nth-of-type(4){
    padding-left: 8.767123287671232%;
}

.feature-container .container-inner {
    width: 100%;
    /* padding-left: 31.914893617021278%; */
    display: block;
    position: relative;
}
.feature-container h3 {
    margin: 0 0 22px;
    font-size: 17px;
    line-height: 1.676;
    letter-spacing: -0.1px;
    display: inline-block;
    z-index: 10;
    position: relative;
}
body.tarumi .feature-container h3 {
    display: block;
}
.feature-container p {
    margin: 0 0 18px;
    font-size: 13px;
    line-height: 1.571;
    z-index: 10;
    position: relative;
}
.feature-container .nayami {
    width: 100%;
    margin:0 auto;
    display: block;
}
.feature-container .nayami ul{
    width: 100%;
    margin: 0 auto;
    vertical-align: top;
    display: table;
    table-layout: fixed;
}
.feature-container .nayami ul li{
    width: 50%;
    margin: 0 0 32px;
    padding-top: 79px;
    display: inline-block;
    position: relative;
    font-size: 14px;
    text-align: center;
    vertical-align: middle;
    float: left;
}
.feature-container .nayami ul li span {
    text-indent: 0;
    display: block;
}
/*.feature-container .nayami ul li:last-child,
.feature-container .nayami ul li:nth-last-of-type(1){
    margin: 0 0 0;
}*/
.feature-container .nayami ul li span{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    vertical-align: middle;
    display: flex;
    justify-content: center;
    align-items: center;
}
.feature-container .nayami ul li:after{
    content: "";
    width: 92px;
    height: 79px;
    margin:auto;
    background:
    linear-gradient(to top right, rgba(255,255,255,0) 50%, #dfdfdf 50.5%) no-repeat top left/50% 100%,
    linear-gradient(to top left, rgba(255,255,255,0) 50%, #dfdfdf 50.5%) no-repeat top right/50% 100%;
    display: block;
    position: absolute;
    top:0;
    left:0;
    right: 0;
    z-index: -1;
}

.feature-container .photo {
    width:38.82978723404255%;
    margin: 0 -16px;
    padding-top: 20em;/*74.33510638297872%*/
    display: block;
    position: relative;
    float: left;
    z-index: 1;
}
.feature-container .photo:after {
    content: "";
    width: 138.23529411764704%;
    height: 100%;
    /* padding-top: 150%; */
    display: block;
    position: absolute;
    top: 0;
    left: -4.25531914893617%;
    background: url(../img/sp/operation/tarumi/doc_ph.png) no-repeat 0 bottom;
    background-size: contain;
    clear: both;
    z-index: -1;
}

.feature-container .blk {
    width: 100%;
    padding: 16px;
    margin:32px auto 32px;
    border: solid 1px #CCC;
    background: #FFF;
    display: block;
}
.feature-container p.large {
    margin:0 0 8px;
    font-size: 14px;
    line-height: 2;
}
.feature-container ul{
    margin:0 0 24px;
}
.feature-container ul li{
    font-size: 12px;
    line-height: 1.769;
    text-indent: -1em;
    padding: 0 0 0 1em;
    margin-bottom: 8px;
}
.feature-container ul.large li{
    font-size: 13px;
}
.feature-container .blk h4 {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px;
}
.feature-container .blk ul {
    margin: 0 0 0;
}
.feature-container .blk ul li {
    font-size: 11px;
    line-height: 1.6;
    text-indent: 0;
    padding: 0;
    //padding-right: 16px;
    display: inline-block;
}
.feature-container .ph_laser {
    margin:32px auto 0;
}
}/* --------------------------------------------- SP end */



@media screen and (max-width:375px) {
.feature-container .point ul li span {
    font-size: 13px;
    line-height: 1.769;
}
}/* --------------------------------------------- SP end */




/* ---------------------------------------------
文章左寄せ
--------------------------------------------- */

.table_blk{
    width: 100%;
    vertical-align: middle;
    display: table;
    table-layout: fixed;
}
.table-cell{
    vertical-align: middle;
    display: table-cell;
}

@media screen and (min-width:768px) {
.table_blk{
    margin:0 auto 80px;
}
.table_blk.last{
    margin:0 auto;
}
.table_blk.stuff{
    margin:0 auto 40px;
}
.table-cell{
    font-size: 14px;
}
body.coolsculpting .coolsculpting_imgs .table-cell{
    padding:0 16px;
    vertical-align: top;
}
.table-cell.pd-left{
    padding-left:16px;
}
.table-cell span{
    margin:16px auto 5px;
    display: block;
}
body.hari .about-treatment .table_blk p{
    margin:0;
}
}

@media screen and (max-width:767px) {
.table_blk{
    //margin:0 auto 48px;
}
.table_blk.last{
    margin:0 auto;
}
.table_blk.stuff{
    margin:0 auto 24px;
}
body.hifushower .table_blk{
    margin:0 auto 48px;
}
.table-cell{
    font-size: 13px;
}
body.coolsculpting .coolsculpting_imgs .table-cell{
    padding:0 15px;
    vertical-align: top;
}
.table-cell.pd-left{
    padding-left:16px;
}
.table-cell span{
    margin:16px auto 8px;
    display: block;
}
body.hari .about-treatment .table_blk p{
    margin:0 0 24px;
}
body.hari .about-treatment .table_blk.last p{
    margin:0;
}
}





/* ---------------------------------------------
文章左寄せ
--------------------------------------------- */
.txt-left .img img{
    margin:auto;
    text-align: center;
    display: block;
    border: solid 1px #dddddd;
}


@media screen and (min-width:768px) {
.txt-left .txt{
    width: 50%;
    padding: 0;
    margin: 0 0 48px;
    float: left;
}
.txt-left .img{
    width: 50%;
    padding-left:46px;
    margin: 0 0 48px;
    float: right;
}
/* 文章右寄せ */
.txt-right p {
    width: 50%;
    height: 100%;
    padding:48px 0 0 16px;
    margin: 0;
    float: right;
}
.txt-right ul{
    width: 50%;
    max-width: 352px;
    margin: 0 0 40px!important;
    float: left;
}
.txt-right ul img{
    margin:auto;
    text-align: center;
    display: block;
}
.txt-right ul li span{
    margin-top:12px;
    font-size: 14px;
    display: block;
}
body.madonna .txt-right p{
    width: 70%;
}
body.madonna .txt-right ul{
    width: 25%;
}

.txt-right02 div {
    width: 62.5%;
    height: 100%;
    padding-left:24px;
    margin: 0;
    float: right;
}
.txt-right02 div p{
    margin:0 0 16px;
}
.txt-right02 ul{
    width: 37.5%;
    margin: 0 0 40px!important;
    float: left;
}
.txt-right02 ul img{
    margin:auto;
    text-align: center;
    display: block;
}
.txt-right02 ul li span{
    margin-top:12px;
    font-size: 14px;
    display: block;
}

.container-inner .phRight {
    width: 100%;
    margin: 0 0 40px;
}
.container-inner .phRight p {
    //padding-right: 32px;
    margin: 0 0 40px;
}
.container-inner .phRight ul {
    width: 188px!important;
    margin: 0 0 40px;
    padding-left: 32px;
    float: right;
    display: inline-block;
}
.container-inner .phRight ul li{
    margin:0 auto 16px!important;
    padding:0!important;
    text-align: center!important;
    display: block!important;
}
.container-inner .phRight.lg ul {
    width: 304px;
    margin: 0 0 40px;
    float: right;
    display: inline-block;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.txt-left p {
    width: 100%;
    margin: 0 0 32px;
}
.txt-left ul{
    margin: 0 0 32px;
}
.txt-left .img{
    margin: 0 0 48px;
}

/* 文章右寄せ */
.txt-right p,.txt-right02 div {
    height: 100%;
    padding-top: 24px;
    margin: 0;
}
.txt-right ul,.txt-right02 ul {
    margin: 0!important;
}
.txt-right02 ul li {
    display: table-cell!important;
}
.txt-right ul img,.txt-right02 ul img {
    margin:auto;
    text-align: center;
    display: block;
}
.txt-right ul li span,.txt-right02 ul li span {
    margin-top: 12px;
    font-size: 13px;
    line-height: 1.357;
    display: block;
}

.container-inner .phRight {
    width: 100%;
    margin: 0 0 40px;
}
.container-inner .phRight p {
    margin: 0 0 24px;
}
.container-inner .phRight ul {
    width: 100%;
    margin: 0 0 40px;
    display: table;
    table-layout: fixed;
}
.container-inner .phRight div {
    float: right;
    padding-left: 12px;
}
.container-inner .phRight ul li{
    margin: 0 auto 16px;
    padding: 0;
    text-align: center;
    display: table-cell;
}
.container-inner .phRight.lg ul {
    width: 100%;
    margin: 0 0 40px;
    display: table;
    table-layout: fixed;
}
.container-inner .phRight-sp ul {
    width: 100%;
    margin: 0 0 40px;
    display: table;
    table-layout: fixed;
}
.container-inner .phRight-sp ul li{
    margin: 0 auto 16px;
    padding: 0;
    text-align: center;
    display: block;
}
}/* --------------------------------------------- SP end */



/* ---------------------------------------------
ul.feature
--------------------------------------------- */

.container-inner ul.feature{
    width: 100%;
    margin:0;
    display:table;
}

/*752PX*/
@media screen and (min-width:768px) {
.container-inner ul.feature li{
    width: 100%;
    margin: 0 0 16px;
    padding: 0 0 0 18px!important;
    font-size: 14px!important;
    display: block!important;
    background: url(../img/common/ic_li.svg) no-repeat 0 4px;
    background-size: 9px 10px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-inner ul.feature li{
    width: 100%!important;
    margin: 0 0 18px;
    padding: 0 0 0 18px!important;
    font-size: 14px!important;
    display: block!important;
    background: url(../img/common/ic_li.svg) no-repeat 0 7px;
    background-size: 9px 10px;
}
}/* --------------------------------------------- SP end */



/* ---------------------------------------------
movie
--------------------------------------------- */

.container-inner .movie{
  position:relative;
  width:100%;
}
.container-inner .movie iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

/*752PX*/
@media screen and (min-width:768px) {
.container-inner .movie{
    width: 480px;
    padding-top:270px;
    margin: 0 auto 64px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-inner .movie{
    //width: 100%;
    padding-top:56.25%;
    margin: 0 auto 44px;
}
}/* --------------------------------------------- SP end */




/* ---------------------------------------------
ul.list
--------------------------------------------- */

.container-inner ul.list{
    width: 100%;
    margin:0;
    display:table;
}

/*752PX*/
@media screen and (min-width:768px) {
.container-inner ul.list li{
    width: 100%;
    margin: 0 0 16px;
    padding: 0 0 0 0px!important;
    font-size: 14px!important;
    display: block!important;
}
.container-inner ul.list li div{
    padding-left:1em;
    margin-top:8px;
}
body.hari .container-inner ul.list,
body.prp .container-inner ul.list{
   margin: 0 0 32px;
}
body.prp .flow-container ul.list{
   margin: 0;
}
body.prp .flow-container ul.list li{
    margin: 0 0 8px;
}
body.prp .flow-container ul.list li.mb0{
    margin: 0;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-inner ul.list li{
    width: 100%!important;
    margin: 0 0 18px;
    padding: 0 0 0 1em!important;
    font-size: 14px!important;
    display: block!important;
    text-indent: -1em;
}
.container-inner ul.list li div{
    padding-left: 0;
    margin-top: 8px;
    text-indent: 0;
}
body.hari .container-inner ul.list{
   margin: 0 0 16px;
}
}/* --------------------------------------------- SP end */






/* ---------------------------------------------
.note
--------------------------------------------- */

.container-inner .note{
    width: 100%;
    margin: 0;
    background: #e7e7e7;
    display:table;
}

/*752PX*/
@media screen and (min-width:768px) {
.container-inner .note{
    margin-bottom: 32px;
    padding:16px; 
    font-size: 14px;
    line-height: 1.6;
}
body.ulthera .container-inner .note,
body.hari .container-inner .note,
body.prp .container-inner .note{
    margin-bottom: 64px;
}
.container-inner .note ul{
    margin:16px 0!important;
    padding:0;
}
body.prp .container-inner .note ul.feature{
    margin:0!important;
    padding:0;
}
.container-inner .note li{
    margin:0;
    padding:0!important;
    font-size: 14px!important;
    display: block!important;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-inner .note{
    padding:16px; 
    font-size: 13px;
    line-height: 1.6;
}
body.ulthera .container-inner .note,
body.hari .container-inner .note{
    margin-bottom: 48px;
}
.container-inner .note ul{
    margin:16px 0!important;
    padding:0;
}
.container-inner .note li{
    margin: 0;
    padding: 0 0 0 1em!important;
    font-size: 13px!important;
    display: block!important;
    text-indent: -1em;
}
body.prp .container-inner .note ul.feature{
    margin:0!important;
    padding:0;
}
body.prp .container-inner .note ul.feature li{
    text-indent: 0;
}
}/* --------------------------------------------- SP end */




/* ---------------------------------------------
.container-inner ul.photo
--------------------------------------------- */
/*752PX*/
@media screen and (min-width:768px) {
.container-inner ul.photo {
    width: 100%;
    margin:0 0 64px;
    display: table;
    table-layout: fixed;
}
.container-inner ul.photo.stuff{
    margin:0 0 16px;
}
.container-inner ul.photo li{
    padding:5px;
    font-size: 11px;
    line-height: 1.7;
    display: table-cell;
}
}/* --------------------------------------------- SP end */

@media screen and (max-width:767px) {

.container-inner ul.photo{
    width: 100%;
    margin: 0 0 32px;
    vertical-align: top;
    display: table;
    table-layout: fixed;
}
.container-inner ul.photo li{
    padding: 5px;
    font-size: 10px;
    line-height: 1.7;
    display: table-cell;
    overflow: hidden;
    vertical-align: top;
}
}/* --------------------------------------------- SP end */



/* ---------------------------------------------
.container-inner-blk
--------------------------------------------- */

.container-fluid-inner div.container-inner-blk{
    width: 100%;
    margin: 0;
    border-top: solid 1px #dfdfdf;
    border-bottom: solid 1px #dfdfdf;
    display: table;
    table-layout: fixed;
    overflow: hidden;
    position: relative;
}
/*752PX*/
@media screen and (min-width:768px) {
.container-fluid-inner div.container-inner-blk{
    padding:24px 16px 16px; 
    margin-bottom:32px;
}
.container-fluid-inner div.container-inner-blk.message p{
    margin: 16px 0;
    padding: 0 0 0 25.510204081632654%;
}
.container-fluid-inner div.container-inner-blk.message:after{
    content: "";
    width: 36.734693877551024%;
    height: 100%;
    /* padding: 100% 0 0; */
    display: block;
    margin: auto;
    position: absolute;
    top: 32px;
    /* bottom: 0; */
    left: 0;
    background: url(../img/pc/operation/common/message_ph02.png) no-repeat 0 bottom;
    background-size: contain;
    clear: both;
    z-index: -1;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-fluid-inner div.container-inner-blk{
    padding:24px 16px 16px; 
    margin-bottom:24px;
}
.container-fluid-inner div.container-inner-blk.message p{
    margin: 16px 0;
    padding: 0 0 0 36.734693877551024%;
}
.container-fluid-inner div.container-inner-blk.message:after{
    content: "";
    width: 36.734693877551024%;
    height: 100%;
    /* padding: 100% 0 0; */
    display: block;
    margin: auto;
    position: absolute;
    top: 32px;
    /* bottom: 0; */
    left: 0;
    background: url(../img/pc/operation/common/message_ph02.png) no-repeat 0 48px;
    background-size: contain;
    clear: both;
    z-index: -1;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
.container-inner-blk02
--------------------------------------------- */

.container-fluid-inner div.container-inner-blk02{
    width: 100%;
    margin: 0 0 42px;
    border: solid 1px #dfdfdf;
    border-bottom: solid 1px #dfdfdf;
    display: table;
    table-layout: fixed;
    overflow: hidden;
    position: relative;
}

.container-fluid-inner div.container-inner-blk02 hr{
    width: 100%;
    border-top: solid 1px #dfdfdf;
    border-bottom:transparent; 
}
/*752PX*/
@media screen and (min-width:768px) {
.container-fluid-inner div.container-inner-blk02{
    padding:24px 24px 0; 
}
.container-fluid-inner div.container-inner-blk02 p{
    margin: 0 0 32px;
}
body.ultherma .container-fluid-inner div.container-inner-blk02 .therme_c p.pure-u-sm-2-3{
    margin: 32px 0;
}
.container-fluid-inner div.container-inner-blk02 h4{
    font-size: 18px;
    margin: 0 0 24px;
}
.container-fluid-inner div.container-inner-blk02 hr{
    margin: 0 0 32px;

}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-fluid-inner div.container-inner-blk02{
    padding:16px 16px 0; 
}
.container-fluid-inner div.container-inner-blk02 p{
    margin: 0 0 24px;
}
.container-fluid-inner div.container-inner-blk02 h4{
    font-size: 15px;
    margin: 0 0 16px;
}
.container-fluid-inner div.container-inner-blk02 hr{
    margin: 0 0 16px;

}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
details-container
--------------------------------------------- */

.details-container {
width: 100%;
margin:auto;
position: relative;
}
.details-container.pure-g {
white-space: normal;
}
.details-container .title h2, 
.details-container .title h3 {
line-height: 1;
letter-spacing: 0.12em;
color:#333;
display: flex;
justify-content: center;
align-items: center;
background: #f6f6f6;
background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}



@media screen and (min-width:768px) {
.details-container .title h2, 
.details-container .title h3 {
    font-size: 2.6rem;
    margin:48px auto 0;
    height: 124px;
}
.details-container:not(:first-child) .title h2, 
.details-container:not(:first-child)  .title h3 {
    margin:96px auto 0;
}
.details-container .container-fluid{
    max-width: 1024px;
    width: -webkit-calc(100% - 32px);
    width: calc(100% - 32px);
    padding:48px 0 0;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.details-container .container-fluid .title h2,
.details-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.details-container .container-inner {
    width: 100%;
    position: relative;
}
.details-container .container-inner .txt{
    margin: 0 0 48px;
}
.details-container .container-inner ul{
    width: 100%;
    margin:0 0 80px;
    display: table;
    table-layout: fixed;
}
.details-container .container-inner .txt-left .img{
    width: 50%;
}
.details-container h4 {
    margin: 0 0 16px;
    padding:0;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.6;
    position: relative;
}
.details-container h4.logo{
    display: inline-block;
}
.details-container h5 {
    margin: 0 0 32px;
    font-size: 1.6rem;
    line-height: 1;
}
.details-container p {
    margin: 0 0 32px;
    font-size: 1.4rem;
    line-height: 2;
}
.details-container ul.recommend{
    width: 100%;
    margin:0;
    padding:0;
}
.details-container ul.recommend li{
    padding:16px 16px 12px;
    font-size: 1.4rem;
    border-bottom: solid 2px #f0f0f0;
}
.details-container p.mb10 {
    margin: 0 0 10px;
}
.details-container .container-inner .list-txt p{
    margin-bottom: 16px;
    text-indent: -1em;
    padding-left:1em;
}
.details-container .container-inner .link {
    width: 100%;
    margin: 32px 0 64px;
    display: table;
    text-align: right;
}
.details-container .container-inner .link a.pure-button{
    width: 162px;
    min-width: 162px;
    margin: 0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}

/**skin**/
.details-container .container-inner#pico-sure{
    margin:64px 0 0;
}
.details-container .container-inner#pico-sure .txt-left *{
    margin-bottom:0;
}
.details-container#tattoo .container-inner p:first-child {
    margin: 0 0 64px;
}

/**wrinkle**/
.details-container#cellrevive h4.logo:after{
    content: "";
    width: 134px;
    height: 52px;
    background:url(../img/menu/wrinkle/cellrevive-logo.png) 0 0 no-repeat;
    position: absolute;
    top: -24px;
    right: -100%;
    display: block;
}

/**cosmetic-surgery**/
body#cosmetic-surgery .details-container .container-inner.commentary .txt{
    margin:0;
}
body#cosmetic-surgery .details-container .container-inner:not(:first-child){
    margin:96px 0 0;
}
body#cosmetic-surgery .details-container ul.recommend li {
    width: calc(50% - 16px);
    display: inline-block;
}
body#cosmetic-surgery .details-container ul.recommend li:nth-of-type(odd) {
    margin-right:16px;
}
body#cosmetic-surgery .details-container ul.recommend li:nth-of-type(even) {
    margin-left:16px;
}
body#cosmetic-surgery .details-container .container-inner.commentary p{
    margin: 0;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.details-container .title h2, 
.details-container .title h3 {
    font-size: 2.1rem;
    margin:48px auto 0;
    height: 98px;
}
.details-container:not(:first-child) .title h2, 
.details-container:not(:first-child)  .title h3 {
    margin:64px auto 0;
}
.details-container .container-fluid{
    width: calc(100% - 32px);
    padding: 32px 0 0;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.details-container .container-fluid .title h2,
.details-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.details-container .container-inner {
    width: 100%;
    position: relative;
}
.details-container .container-inner .txt{
    margin: 0 0 32px;
}
.details-container .container-inner .txt p {
    margin: 0 0 32px;
}
.details-container .container-inner ul{
    margin:0 0 32px;
}
.details-container .container-inner ul.stuff{
    margin:0 0 30px;
}
.details-container .container-inner ul li{
    font-size: 1.4rem;
    line-height: 2;
}
.details-container h4 {
    margin:0 0 24px;
    padding:0;
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 2;
    text-align: center;
    position: relative;
}
.details-container h5 {
    margin: 0 0 32px;
    font-size: 1.4rem;
    line-height: 1;
}
.details-container p {
    font-size: 1.4rem;
    line-height: 2;
}
.details-container ul.recommend{
    width: 100%;
    margin:0;
    padding:0;
}
.details-container ul.recommend li{
    padding:8px 16px 8px calc(1em + 16px);
    text-indent:-1em;
    font-size: 1.4rem;
    border-bottom: solid 1px #f0f0f0;
}
.details-container .container-inner .list-txt{
    padding-left: 0;
    margin-bottom: 30px;
}
.details-container .container-inner .list-txt p{
    margin-bottom: 2px;
    text-indent: -1em;
    padding-left: 1em;
}
.details-container p.mb10 {
    margin: 0 0 10px;
}
.details-container .container-inner .link {
    width: 100%;
    margin: 24px 0 48px;
    display: table;
    table-layout: fixed;
    text-align: center;
}
.details-container .container-inner .link a.pure-button{
    width: 197px;
    min-width: 197px;
    margin: 0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}
.details-container .container-inner#pico-sure{
    margin:64px auto 0;
}
.details-container#about-hyaluronic .txt-right p{
    padding-top:0;
}
.details-container#about-hyaluronic .txt-right ul{
    display: table;
    table-layout: fixed;
    margin: 0 auto 32px!important;
}
.details-container#about-hyaluronic .txt-right ul li {
    padding: 8px;
    display: table-cell;
    vertical-align: middle;
    background: #FFF;
}


/**skin**/
.details-container#tattoo .container-inner p:first-child {
    margin: 0 0 32px;
}

/**cosmetic-surgery**/
body#cosmetic-surgery .details-container .container-inner.commentary .txt{
    margin:0;
}
body#cosmetic-surgery .details-container .container-inner:not(:first-child){
    margin:48px 0 0;
}
body#cosmetic-surgery .details-container p {
    margin:0 0 24px;
}
body#cosmetic-surgery .details-container .container-inner.commentary p{
    /*margin: 0;*/
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
.risks
--------------------------------------------- */
.container-inner .risks {
    width: 100%;
    display: block;
}


/*752PX*/
@media screen and (min-width:768px) {
.container-inner .risks{
    padding:16px 0;
    margin: 48px auto 0;
    font-size: 1.1rem;
    line-height: 2;
    border:solid 1px #e5e5e5;
}
.details-container .container-inner .risks{
    margin: 0 auto;
}
.container-inner .risks .container-fluid{
    width: 100%;
    padding: 0;
    display: table;
}
.container-inner .risks .sectionTitle{
    width: 180px;
    height: 100%;
    margin: 0;
    font-size: 1.2rem;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;
    border-right: solid 1px #cfcfcf;
    display: table-cell;
}
.details-container .container-inner .risks ul{
    width: auto;
    padding:8px 32px;
    margin:0;
    font-size: 1.1rem;
    line-height: 1.65;
    display: table-cell;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.container-inner .risks{
    padding:20px 0;
    margin: 40px auto 0;
    font-size: 1.4rem;
    line-height: 2;
    border:solid 2px #e5e5e5;
}
.container-inner .risks .container-fluid{
    padding: 0;
    display:block;
}
.container-inner .risks .sectionTitle{
    width: 100%;
    height: 100%;
    margin: 0;
    padding:0 0 20px;
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: center;
    vertical-align: middle;
    border-bottom: solid 1px #cfcfcf;
    display:block;
}
.details-container .container-inner .risks ul{
    width: auto;
    padding:16px 0 0;
    margin:0;
    font-size: 1.4rem;
    line-height: 2;
    display:block;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
baseBtnStyle.btn-solid
--------------------------------------------- */
/*752PX*/
@media screen and (min-width:768px) {
div:not(.contact-container) a.baseBtnStyle.btn-solid{
    width: 384px;
    margin:48px auto 0;
}
.details-container a.baseBtnStyle.btn-solid{
    background:url(../img/common/arrow.svg) right 16px center no-repeat;
    background-size: 8px 15px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
div:not(.contact-container) a.baseBtnStyle.btn-solid{
    margin:32px auto 0;
}
.details-container a.baseBtnStyle.btn-solid{
    background:url(../img/common/arrow.svg) right 16px center no-repeat;
    background-size: 8px 15px;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
Casereport-container
--------------------------------------------- */
.casereport-container {
    width: 100%;
    margin:auto;
    position: relative;
    background: #f9f9f9;
}
.casereport-container.pure-g {
    white-space: normal;
}
.casereport-container .container-inner ul{
    position: relative;
}
.casereport-container .container-inner ul:after {
    content: "";
    width: 11px;
    height: 21px;
    margin: auto;
    position: absolute;
    top: -1em;
    bottom:0;
    left: 0;
    right: 0;
    display: block;
    background: url(../img/common/arrow_line_blk02.svg) no-repeat;
    background-size: contain; 
}

/*752PX*/
@media screen and (min-width:768px) {

.casereport-container .container-fluid{
    max-width: 1024px;
    padding-top: 58px;
    padding-bottom: 64px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.casereport-container .container-fluid .title{
    margin:0 auto 48px;
}
.casereport-container .container-fluid .title h2,
.casereport-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.casereport-container .container-inner {
    width: 100%;
    position: relative;
}
.casereport-container .container-inner ul{
    //width: 100%;
    margin:0 0 40px;
    //display: table;
    //display: block;
}
.casereport-container .container-inner ul{
    display: table;
    table-layout: fixed;
}
.casereport-container .container-inner ul.left{
    width: calc(50% - 16px);
    margin-right: 16px;
    max-width: 352px;
    float: left;
}
.casereport-container .container-inner ul.right{
    width: calc(50% - 16px);
    margin-left: 16px;
    max-width: 352px;
    float: right;
}
.casereport-container .container-inner ul li{
    width: 50%;
    padding:5px 0;
    font-size: 11px;
    line-height: 1.7;
    display: table-cell;
}
.casereport-container .container-inner ul li span{
    margin-top: 12px;
    font-size: 14px;
    display: block;
}
.casereport-container .container-inner ul li:first-child{
    padding-right:16px;
}
.casereport-container .container-inner ul li:last-child{
    padding-left:16px;
}
.casereport-container h4 {
    margin: 0 auto 32px;
    padding:0;
    font-size: 20px;
    line-height: 1.6;
    position: relative;
}
.casereport-container h5 {
    margin: 0 0 32px;
    font-size: 14px;
    line-height: 1.769;
}
.casereport-container p {
    margin: 0 0 64px;
    font-size: 14px;
    line-height: 1.769;
}

}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {

.casereport-container .container-fluid{
    max-width: 1024px;
    padding-top: 58px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.casereport-container .container-fluid .title{
    margin:0 auto 56px;
}
.casereport-container .container-fluid .title h2,
.casereport-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.casereport-container .container-inner {
    width: 100%;
    position: relative;
}
.casereport-container .container-inner ul{
    width: 100%;
    margin:0 0 40px;
    display: table;
    table-layout: fixed;
}
.casereport-container .container-inner ul li{
    width: 50%;
    padding: 5px 16px;
    font-size: 11px;
    line-height: 1.7;
    display: table-cell;
}
.casereport-container .container-inner ul li span{
    margin-top: 12px;
    font-size: 13px;
    line-height: 1.357;
    display: block;
}
.casereport-container h4 {
    margin: 0 auto 16px;
    padding:0;
    font-size: 16px;
    line-height: 1.6;
    position: relative;
}
.casereport-container h4.second_step {
    margin: 32px auto 16px;
}
.casereport-container h5 {
    margin: 0 0 32px;
    font-size: 14px;
    line-height: 1.769;
}
.casereport-container p {
    margin: 28px 0 45px;
    padding: 0;
    font-size: 13px;
    line-height: 1.682;
}

}/* --------------------------------------------- SP end */







/* ---------------------------------------------
Trouble-container
--------------------------------------------- */
.trouble-container {
    width: 100%;
    margin:auto;
    position: relative;
    background: #fafaf9;
}

.trouble-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
    
.trouble-container {
    background: #e7e8ec;
    overflow: hidden;
}
.trouble-container .container-fluid{
    max-width: 1024px;
    //padding-top: 58px;
    padding-top: 96px;
    padding-bottom: 96px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    //overflow: hidden;
}
.trouble-container .container-fluid .title{
    //margin:0 auto 48px;
    margin: 0 auto 56px;
}
.trouble-container .container-fluid .title h2,
.trouble-container .container-fluid .title h3 {
    //letter-spacing: 0em;
}
.trouble-container .container-inner {
    width: 100%;
    position: relative;
}
.trouble-container .container-inner ul{
    margin:0 0 56px;
}
.trouble-container .container-inner ul li{
    font-size: 20px;
    line-height: 1.769;
    text-indent: -1em;
    padding: 0 0 0 1em;
    margin: 0 0 8px;
}
.trouble-container .h3 {
    margin: 64px auto 0;
    padding:32px 0;
    font-size: 24px;
    line-height: 1.667;
    text-align: center;
    position: relative;
}
.trouble-container .h3:after,
.trouble-container .h3:before{
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    position: absolute;
    left:0;
    right:0;
    clear: both;
    display: block;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000222+0,000222+100&0+0,1+50,0+100 */
background: -moz-linear-gradient(left, rgba(0,2,34,0) 0%, rgba(0,2,34,1) 50%, rgba(0,2,34,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000222', endColorstr='#00000222',GradientType=1 ); /* IE6-9 */
}

.trouble-container .h3:before{
    top:0;
}
.trouble-container .h3:after{
    bottom:0;
}
.trouble-container p {
    margin: 0 0 32px;
    font-size: 13px;
    line-height: 1.769;
}
.trouble-container p.large {
    font-size: 16px;
}

body.tarumi main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_tarumi.png) no-repeat right 0;
}
body.shiwa main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_shiwa.png) no-repeat right 0;
}
body#menu main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_shimi.png) no-repeat right 0;
}
body.keana main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_keana.png) no-repeat right 0;
}
body.diet main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_diet.png) no-repeat right 0;
}
body.datsumou main .trouble-container .container-inner:after {
    background: url(../img/pc/operation/common/trouble_datsumou.png) no-repeat right 0;
}
}/* --------------------------------------------- PC end */


@media screen and (min-width:768px) and (max-width:1023px) {
main .trouble-container .container-inner:after {
    content: "";
    width: 735px;
    height: 100%;
    display: block;
    margin: auto;
    position: absolute;
    top: -64px;
    //left:209px;
    right: -160px;
    clear: both;
    z-index: -1;
}
}/* --------------------------------------------- PC end */


@media screen and (min-width:1024px) {
main .trouble-container .container-inner:after {
    content: "";
    width: 735px;
    height: 100%;
    display: block;
    margin: auto;
    position: absolute;
    top: -64px;
    left:209px;
    clear: both;
    z-index: -1;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
    
.trouble-container {
    background: #e7e8ec;
}
.trouble-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.trouble-container .container-fluid .title{
    margin:0 auto 48px;
}
.trouble-container .container-fluid .title h2,
.trouble-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.trouble-container .container-inner {
    width: 100%;
    position: relative;
}
.trouble-container .container-inner ul{
    margin:0 0 40px;
}
.trouble-container .container-inner ul li{
    font-size: 14px;
    line-height: 1.5;
    text-indent: -1em;
    padding: 0 0 0 1em;
    margin-bottom: 8px;
}
.trouble-container .h3 {
    margin: 48px auto 0;
    padding:32px 0;
    font-size: 18px;
    line-height: 1.667;
    text-align: center;
    position: relative;
}
.trouble-container .h3:after,
.trouble-container .h3:before{
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    position: absolute;
    left:0;
    right:0;
    clear: both;
    display: block;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#000222+0,000222+100&0+0,1+50,0+100 */
background: -moz-linear-gradient(left, rgba(0,2,34,0) 0%, rgba(0,2,34,1) 50%, rgba(0,2,34,0) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000222', endColorstr='#00000222',GradientType=1 ); /* IE6-9 */
}
.trouble-container .h3:before{
    top:0;
}
.trouble-container .h3:after{
    bottom:0;
}
.trouble-container p {
    margin: 0 0 14px;
    font-size: 13px;
    line-height:1.571;
    //line-height: 1.769;
}
.trouble-container p.large {
    font-size: 13px;
}
main .trouble-container .container-inner:after {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    margin: auto;
    position: absolute;
    top: -29px;
    right: -4.25531914893617%;
    clear: both;
    z-index: -1;
}

body.tarumi main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_tarumi.png) no-repeat right 0;
    background-size: contain;
}
body.shiwa main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_shiwa.png) no-repeat right 0;
    background-size: contain;
}
body#menu main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_shimi.png) no-repeat right 0;
    background-size: contain;
}
body.keana main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_keana.png) no-repeat right 0;
    background-size: contain;
}
body.diet main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_diet.png) no-repeat right 0;
    background-size: contain;
}
body.datsumou main .trouble-container .container-inner:after {
    background: url(../img/sp/operation/common/trouble_datsumou.png) no-repeat right 0;
    background-size: contain;
}
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------
Banner
------------------------------------------------------------------- */
a.bnr{
    position: relative;
}
a.bnr:before {
    content: "";
    width: 100%;
    height:4px;
    background:rgba(0,0,0,.2);
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
}






/* -------------------------------------------------------------------
menu-container
------------------------------------------------------------------- */

.menu-container {
    width: 100%;
    margin:auto;
    background: #fff;
}
.menu-container .container-fluid .title_category{
    width: 100%;
    margin:auto;
    background: #f6f6f6;
    display: block;
    position: relative;
}
.menu-container.pure-g {
    white-space: normal;
}
.menu-container .container-inner li{
  position: relative;
}
.menu-container a{
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: .3s;
  transition: .3s;
}
.menu-container a{
    text-decoration: none;
}
.menu-container a:not(:.underline):hover{
    text-decoration: underline;
}
.menu-container .container-inner li{
    position: relative;
}




/*752PX*/
@media screen and (min-width:768px) {
.menu-container .container-fluid{
    padding:64px 0 0;
    margin:0 auto;
    overflow: hidden;
}
.menu-container .container-fluid .title{
    margin:0 auto 48px;
}
.menu-container .container-fluid .title h2 small{
    font-size: 1.5rem;
    line-height: 1.8;
    display: block;
}
.menu-container .container-fluid .title_category{
    width: 100%;
    height: 124px;
    margin:0 auto 48px;
    font-size: 2.8rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.menu-container .container-fluid .title_category:after{
    content: "";
    width: 100%;
    max-width: 1280px;
    height:100%;
    margin:auto;
    display: block;
    position: absolute;
    top:0;
    left: 0;
    right: 0;
}
.menu-container .container-fluid .title_category#skin:after{
    background:url(../img/menu/bg_skin.png) right top no-repeat;
    background-size: contain;
}
.menu-container .container-fluid .title_category#cosmetic-surgery:after{
    background: url(../img/menu/bg_cosmetic.png) right top no-repeat;
    background-size: contain;
}
.menu-container .container-fluid .title_category#diet:after{
    background: url(../img/menu/bg_diet.png) right top no-repeat;
    background-size: contain;
}
.menu-container .container-fluid .title_category h3{
    width: calc(100% - 32px);
    max-width: 1024px;
    margin:0 auto;
    font-size: 2.8rem;
    letter-spacing: 0.12em;
    display: block;
}
.menu-container .container-fluid .title_category h3 small{
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: 0.16em;
    display: block;
}
.menu-container .container-inner {
    width: 100%;
    margin:0 auto;
}
.menu-container .container-inner p{
    width: calc(100% - 32px);
    max-width: 1024px;
    margin:0 auto;
    font-size: 1.5rem;
    line-height: 1.8;
}
.menu-container .container-inner ul{
    width: calc(100% - 32px);
    max-width: 1280px;
    margin:0 auto 88px;
    display:flex;
    justify-content: center;
    flex-flow: row wrap;
}
.menu-container .container-inner li{
    width:-o-fit-content;
    width:-moz-fit-content;
    width:-webkit-fit-content;
    width:fit-content;
    margin: 40px 24px 0;
    display: inline-block;
}
.menu-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: block;
    background: #FFF;
}
.menu-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
    border: none;
    position: relative;
}
.menu-container dl dt .img{
    width: 144px;
    height: 144px;
    margin: 0 auto;
    display: block;
}
.menu-container dl dt img{
    width: 100%;
    height: auto;
}
.menu-container dl dd{
    width: 100%;
    padding:16px 0 0;
    margin: 0 auto;
    font-size: 1.5rem;
    line-height: 1.8;
    display: block;
    text-align: center;
}
/* IE10〜11 */
_:-ms-input-placeholder, :root .menu-container .container-inner li{
  width:auto;
}

/* Edge12〜14 */
@supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {  
  .menu-container .container-inner li{
    width:auto;
  }
}
}/* --------------------------------------------- PC end */

@supports (-ms-ime-align:auto) {
@media screen and (min-width:768px) {    
  .menu-container .container-inner li{
    width:auto;
  }
}
}/* --------------------------------------------- PC end */




@media screen and (max-width:767px) {
.menu-container .container-fluid{
    padding: 50px 0 0;
    margin:0 auto;
    overflow: hidden;
}
.menu-container .container-fluid .title{
    margin:0 auto 48px;
}
.menu-container .container-fluid .title h2{
    font-size: 2.1rem;
    line-height: 1.4;
}
.menu-container .container-fluid .title h2 small{
    font-size: 1.1rem;
    line-height: 1.4;
    display: block;
}
.menu-container .container-fluid .title_category{
    width: 100%;
    height: 122px;
    margin:0 auto 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.menu-container .container-fluid .title_category h3{
    width: calc(100% - 32px);
    margin:0 auto;
    font-size: 2.4rem;
    text-align: center;
    display: block;
}
.menu-container .container-fluid .title_category h3 small{
    font-size: 1.5rem;
    line-height: 1.2;
    display: block;
}
.menu-container .container-inner {
    width: 100%;
}
.menu-container .container-inner p{
    width: calc(100% - 32px);
    margin:0 auto 40px;
    font-size: 1.4rem;
    line-height: 1.8;
}
.menu-container .container-inner ul{
    width: calc(100% - 32px);
    margin:0 auto 20px;
    display:flex;
    justify-content: center;
    flex-flow: row wrap;
}
.menu-container .container-inner li{
    margin:0;
    display: inline-block;
}
.menu-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: block;
    background: #FFF;
}
.menu-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
    border: none;
    position: relative;
}
.menu-container dl dt .img{
    width:83.72093023255815%;
    height:auto;
    margin: 0 auto;
    display: block;
}
.menu-container dl dt img{
    max-width: 100%;
    height: auto;
}
.menu-container dl dd{
    width: 100%;
    height: 70px;
    padding:8px 0 0;
    margin: 0 auto;
    font-size: 1.4rem;
    line-height: 1.75;
    display: block;
    text-align: center;
}
}/* --------------------------------------------- SP end */


@media screen and (max-width:350px) {
.menu-container dl dd{
    font-size: 1.3rem;
}
}/* --------------------------------------------- SP end */



/* -------------------------------------------------------------------
concept-container
------------------------------------------------------------------- */

.concept-container {
    width: 100%;
    margin:auto;
    position: relative;
    background: #f8f8f8;
    background: -moz-linear-gradient(top, #f8f8f8 50%, #f8f8f8 50%, #f5f5f5 100%);
    background: -webkit-linear-gradient(top, #f8f8f8 50%,#f8f8f8 50%,#f5f5f5 100%);
    background: linear-gradient(to bottom, #f8f8f8 50%,#f8f8f8 50%,#f5f5f5 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f8f8', endColorstr='#f5f5f5',GradientType=0 );
}

.concept-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.concept-container .container-fluid{
    max-width: 1024px;
    padding:80px 0 100px;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.concept-container .container-fluid .title{
    margin:0 auto 48px;
}
.concept-container .container-fluid .title h2 {
    letter-spacing: 0em;
}
.concept-container .container-inner {
    width: 42.96875%;
    float: right;
}
.concept-container h2 {
    margin: 0 0 48px;
    font-size: 3.2rem;
    letter-spacing: 0.36rem;
}
.concept-container p {
    margin: 0 0 26px;
    font-size: 1.5rem;
    line-height: 1.8;
}
.concept-container:after {
    content: "";
    width: 100%;
    max-width: 1280px;
    height: 100%;
    margin: auto;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/clinic/concept_ph_pc.png) no-repeat left 5.390625% top 96px; 
    clear: both;
    z-index: 1;
}
}/* --------------------------------------------- PC end */


@media screen and (min-width:768px) and (max-width:1140px) {
.concept-container:after {
    content: "";
    left: 0;
    background: url(../img/clinic/concept_ph_pc.png) no-repeat left -60px top 96px; 
}
}/* --------------------------------------------- PC end */


@media screen and (min-width:1141px) {
.concept-container:after {
    content: "";
    width: 100%;
    left: 0;
    right: 0;
    background: url(../img/clinic/concept_ph_pc.png) no-repeat left 5.390625% top 96px; 
}
}/* --------------------------------------------- PC end */





@media screen and (max-width:767px) {
.concept-container {
    margin:48px auto 0;
    position: relative;
}
.concept-container .container-fluid{
    width: calc(100% - 32px);
    padding:40px 0 48px;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.concept-container .container-fluid .title{
    margin:0 auto 32px;
}
.concept-container .container-fluid .title h2 {
    font-size: 2.1rem;
    letter-spacing: 0.36em;
}
.concept-container .container-inner p.first{
    width:65.40697674418605%;
    margin-left:calc(100% - 65.40697674418605%);
}
.concept-container h3 {
    margin: 0 0 28px;
    font-size: 19px;
    text-align: center;
}
.concept-container p {
    margin: 0 0 32px;
    font-size: 1.4rem;
    line-height: 1.8;
}
.concept-container:after {
    content: "";
    width: 100%;
    height: 100%;
    margin: auto;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/clinic/concept_ph_sp.png) no-repeat 0 0;
    background-size: contain;
    z-index: 1;
}
}/* --------------------------------------------- SP end */



/* -------------------------------------------------------------------
movie-container
------------------------------------------------------------------- */

.movie-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.movie-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.movie-container .container-fluid{
    max-width: 1024px;
    padding:32px 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
body#clinic .movie-container .container-fluid,
body#doctor .movie-container .container-fluid{
    padding:0 0 32px;
    margin:112px auto 0;
}
.movie-container .container-fluid .title{
    margin:0 auto 48px;
}
.movie-container .container-fluid .title h2 {
    font-size: 3.2rem;
    line-height: 1;
    letter-spacing: 0.36em;
}
.movie-container .container-inner{
    width: calc(100% + 32px);
    margin: 48px -16px;
    display:flex;
    /*justify-content: space-between;*/
    justify-content: flex-start;
    flex-flow: row wrap;
    align-items: flex-start;
    align-content: center;
}
.movie-container .container-inner div[class*=movie0]{
    width: 33.333333%;
    max-width: 320px;
    margin:0 16px 64px;
    padding: 0;
    display: inline-block;
}
.movie-container .container-inner div h4{
    margin: 16px 0 0;
    padding:0;
    font-size: 1.4rem;
    font-weight: bold;
}
.movie-container .container-inner div p{
    margin: 16px 0 0;
    padding:0;
    font-size: 1.4rem;
}
.movie-container .container-inner div.movie-wrap {
     position: relative;
     padding-bottom: 75%;
     height: 0;
     overflow: hidden;
}
.movie-container .container-inner div.movie-wrap .thumb{
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    z-index: 3;
}
.movie-container .container-inner div.movie-wrap .thumb:before{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background: url(../img/common/play.png) no-repeat center center rgba(0,0,0,.2);
    display: block;
    z-index: 3;
}
.movie-container .container-inner div.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}    
.movie-container .container-inner div.movie-wrap i.player {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
} 
.movie-container .container-inner div.movie-wrap .thumb img{
    max-width: 100%;
    height: auto;
}
.movie-container a.underline {
    font-size: 1.8rem;
    line-height: 2;
}
body#media .movie-container .container-fluid .title h2 {
    font-size: 2.6rem;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.movie-container .container-fluid{
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.movie-container .container-fluid .title{
    margin:0 auto 40px;
}
.movie-container .container-fluid .title h2 {
    font-size: 2.1rem;
    line-height: 1;
    letter-spacing: 0.36em;
}
.movie-container .container-inner{
    width: calc(100% - 48px);
    margin:0 auto;
    display:block;
}
.movie-container .container-inner div[class*=movie0]{
    width: 100%;
    margin: 0 auto 48px;
    display:block;
}
.movie-container .container-inner div h4{
    margin: 24px 0 0;
    padding: 0 0 0 5px;
    font-size: 1.4rem;
    font-weight: bold;
}
.movie-container .container-inner div p{
    margin: 16px 0 0;
    padding: 0 0 0 5px;
    font-size: 1.4rem;
}
.movie-container .container-inner div.movie-wrap {
     position: relative;
     padding-bottom: 75%;
     height: 0;
     overflow: hidden;
}
.movie-container .container-inner div.movie-wrap .thumb{
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    z-index: 3;
}
.movie-container .container-inner div.movie-wrap .thumb:before{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background: url(../img/common/play.png) no-repeat center center rgba(0,0,0,.2);
    display: block;
    z-index: 3;
}
.movie-container .container-inner div.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}    
.movie-container .container-inner div.movie-wrap i.player {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
} 
.movie-container .container-inner div.movie-wrap .thumb img{
    max-width: 100%;
    height: auto;
}
.movie-container a.underline {
    font-size: 1.8rem;
    line-height: 2;
}
body#media .movie-container .container-fluid {
    padding:48px 0 0;
}
}/* --------------------------------------------- PC end */





/* -------------------------------------------------------------------
clinic-container
------------------------------------------------------------------- */
.clinic-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.clinic-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.clinic-container{
    margin:96px auto 0;
}
.clinic-container .title h3{
    height: 124px;
    font-size: 2.6rem;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}
.clinic-container .container-fluid{
    width: calc(100%);
    max-width: 1024px;
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}

.clinic-container .container-inner {
    width: 100%;
}

/*.clinic-container address{
    margin: 24px 0;
    font-size: 1.5rem;
    line-height: 1.7;
}
.clinic-container address p{
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.7;
}
.clinic-container .access,
.clinic-container .day{
    margin: 24px 0 0;
    position: relative;
}
.clinic-container .reserve{
    margin: 32px 0 48px;
}*/
.clinic-container h4{
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0.12em;
    display: inline-block;
}
.clinic-container dl{
    width: 100%;
    font-size: 1.4rem;
    line-height: 2;
    display:table;
}
.clinic-container dt{
    width: 265px;
    padding:8px 0;
    letter-spacing: .2em;
    text-align: right;
    display: table-cell;
    border-bottom:solid 1px #d9d9d9;
}
.clinic-container dd{
    padding:8px 0 8px 64px;
    letter-spacing: 0.1em;
    text-align: left;
    display: table-cell;
    border-bottom:solid 1px #d9d9d9;
}
/*.clinic-container .day dl{
    align-items: flex-start;
}
.clinic-container .day dt{
    letter-spacing: .1em;
}
.clinic-container .day a.underline{
    position: absolute;
    bottom:0;
    right: 0;
    line-height:1.4;
}
.clinic-container .reserve dt{
    margin: 0 16px 0 0;
}
.clinic-container .reserve dd a{
    font-size: 2.7rem;
    line-height:1.4;
}*/
.clinic-container .reserve .counseling{
    margin:16px auto 0;
    text-align: center;
}
.clinic-container .reserve .counseling a.underline{
    font-size: 2.3rem;
    line-height: 1.4;
}
.clinic-container .photo{
    margin:48px auto 0;
}
.clinic-container .photo img{
    margin:auto;
    display: block;
}
.clinic-container .photo p{
    font-size: 1.2rem;
    margin:14px auto 0;
}
#map_canvas{
    width:100%;
    height: 418px;
    margin:32px auto 0;
    position: relative;
    overflow: hidden;
    /*border: solid 5px #fff;*/
}
.clinic-container .container-inner ul{
    margin: 32px 0 48px;
    font-size: 1.4rem;
    line-height: 2;
    display: table;
}
.clinic-container .container-inner ul li {
    padding: 0 0 0 16px;
    display: table-cell;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px){
.clinic-container{
    margin-top:0;
}
.clinic-container .title h3{
    margin: 48px auto 0;
    font-size: 2.1rem;
    height: 98px;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}
.clinic-container .container-fluid{
    padding:36px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.clinic-container .container-inner {
    width: 100%;
}
.clinic-container h4{
    margin:0 auto;
    font-size: 2rem;
    line-height: 1;
    letter-spacing: 0.12em;
    text-align: center;
}
.clinic-container dl{
    width: calc(100% - 32px);
    margin:auto;
    font-size: 1.4rem;
    line-height: 2;
    display:table;
}
.clinic-container dt{
    width: 116px;
    padding:24px 0;
    letter-spacing: .2em;
    text-align: left;
    display: table-cell;
    border-bottom:solid 1px #d9d9d9;
}
.clinic-container dd{
    padding:24px 0;
    letter-spacing: 0.1em;
    text-align: left;
    display: table-cell;
    border-bottom:solid 1px #d9d9d9;
}
.clinic-container dl:first-child{
    margin: 0 auto 32px;
    display: block;
}
.clinic-container dl:first-child dt{
    width: 100%;
    padding:0;
    letter-spacing: .2em;
    text-align: center;
    display: block;
    border-bottom:none;
}
.clinic-container dl:first-child dd{
    display: none;
}
.clinic-container .photo{
    margin:0 auto;
}
.clinic-container .photo [class *= "pure-u"]{
    margin:32px auto 0;
}
.clinic-container .photo img{
    margin:auto;
    display: block;
}
.clinic-container .photo p{
    font-size: 1.2rem;
    margin:14px auto 0;
}
#map_canvas{
    width: 100%;
    height: 0;
    margin-top:32px;
    padding-top: 99.20212765957447%;
    position: relative;
    overflow: hidden;
}
#map_canvas>div {
}
#map_canvas>div>div.gm-style>div:first-child {
    //top: 34px!important;
}
.clinic-container .container-inner ul{
    margin: 24px 0 32px;
    font-size: 1.4rem;
    line-height: 2;
    display: table;
}
.clinic-container .container-inner ul li {
    padding: 0 0 0 8px;
    display: table-cell;
}
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------
doc-container
------------------------------------------------------------------- */
.doc-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.doc-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.doc-container{
    margin:96px auto 0;
}
.doc-container .title h3{
    height: 124px;
    font-size: 2.6rem;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}
.doc-container .container-fluid{
    width: calc(100%);
    max-width: 1024px;
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.doc-container .container-inner {
    width: 100%;
}
.doc-container .photo{
    max-width: 864px;
    margin:0 auto;
}
.doc-container .photo [class*=pure-u]{
    padding:0 48px;
    margin:auto;
    vertical-align: top;
}
.doc-container .photo img{
    margin:auto;
    display: block;
}
.doc-container .photo .caption{
    margin:32px auto 0;
}
.doc-container .photo .caption h4{
    font-size: 2rem;
}
.doc-container .photo .caption h4 small{
    font-size: 1.2rem;
}
.doc-container .photo .caption p{
    margin:24px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px){
.doc-container .title h3{
    margin: 64px auto 0;
    font-size: 2.1rem;
    height: 98px;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}
.doc-container .container-fluid{
    padding:0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.doc-container .container-inner {
    width: 100%;
}
.doc-container .photo{
    width: calc(100% - 96px);
    margin:0 auto;
}
.doc-container .photo [class*=pure-u]{
    margin:48px auto 0;
    vertical-align: top;
}
.doc-container .photo img{
    margin:auto;
    display: block;
}
.doc-container .photo .caption{
    margin:32px auto 0;
}
.doc-container .photo .caption h4{
    font-size: 2rem;
}
.doc-container .photo .caption h4 small{
    font-size: 1.2rem;
}
.doc-container .photo .caption p{
    margin:24px 0 16px;
    font-size: 1.4rem;
    line-height: 2;
}
.doc-container  a.baseBtnStyle.btn-solid {
    width: calc(100% - 64px);
}
}/* --------------------------------------------- SP end */






/* -------------------------------------------------------------------
doc-container
------------------------------------------------------------------- */
.doctor-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.doctor-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.doctor-container{
    margin:8px auto 0;
}
.doctor-container .container-fluid{
    width: calc(100%);
    max-width: 1024px;
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.doctor-container .container-inner {
    width: 100%;
    display: table;
}
.doctor-container .photo{
    width:352px;
    margin:0 auto;
    display: table-cell;
}
.doctor-container .photo img{
    margin:auto;
    display: block;
}
.doctor-container .caption{
    width:calc(100% - 352px);
    margin:0 auto;
    padding-left: 64px; 
    vertical-align: top;
    display: table-cell;
}
.doctor-container .caption h3{
    margin:0 0 64px;
    font-size: 2.8rem;
    line-height: 1.8;
    letter-spacing: 0.12em;
    color: #333;
}
.doctor-container .caption h3 small{
    font-size: 1.8rem;
    line-height: 1;
    letter-spacing: 0.36em;
    display: block;
}
.doctor-container .caption dl{
    margin:0;
    font-size: 1.4rem;
    line-height: 2;
    display: table;
}
.doctor-container .caption dt{
    width: 180px;
    margin:0;
    padding-bottom: 24px;
    display: table-cell;
}
.doctor-container .caption dd{
    margin:0;
    padding-bottom: 24px;
    display: table-cell;
}
.doctor-container .caption p{
    margin:24px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
.doctor-container .caption ul{
    margin:64px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px){
.doctor-container .container-fluid{
    width: calc(100% - 32px);
    padding:0;
    margin:64px auto 0;
    position: relative;
    display: block;
    z-index: 2;
}
.doctor-container h3{
    margin:0 0 32px;
    font-size: 2.4rem;
    line-height: 1.8;
    letter-spacing: 0.12em;
    color: #333;
}
.doctor-container h3 small{
    font-size: 1.5rem;
    line-height: 1;
    letter-spacing: 0.36em;
    display: block;
}
.doctor-container .photo{
    width:100%;
    margin:0 auto 24px;
    display: block;
}
.doctor-container .photo img{
    margin:auto;
    display: block;
}
.doctor-container .caption{
    width:100%;
    margin:0 auto;
    padding: 0; 
    display: block;
}
.doctor-container .caption dl{
    margin:0 0 32px;
    font-size: 1.4rem;
    line-height: 2;
    display: block;
}
.doctor-container .caption dl:last-child{
    margin:0;
}
.doctor-container .caption dt{
    margin:0;
    display: block;
}
.doctor-container .caption dd{
    margin:0;
    display: block;
}
.doctor-container .caption p{
    margin:24px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
.doctor-container .caption ul{
    margin:32px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
}/* --------------------------------------------- SP end */




/* -------------------------------------------------------------------
instagram-container
------------------------------------------------------------------- */
.instagram-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.instagram-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.instagram-container .container-fluid{
    max-width:1024px;
    padding:96px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.doctor-container+.instagram-container .container-fluid{
    padding:64px 0 0;
}
body#menu .instagram-container .container-fluid{
    padding:32px 0 0;
}
.instagram-container .container-fluid .title{
    margin:0 auto 48px;
}
.instagram-container .container-fluid .title h2 {
    font-size: 3.2rem;
    line-height: 1;
    letter-spacing: 0.36em;
}
.instagram-container .container-inner{
    width: 100%;
    margin:48px auto 0;
    white-space: nowrap;
}
.instagram-container .container-inner .contents{
    width: calc(50%);
    margin: 0;
    padding: 0 0 0 0;
    display: flex;
    float: left;
}
.instagram-container .container-inner .contents-wide{
    width: calc(100%);
    margin: 0;
    padding: 0 0 0 0;
    display: flex;
    justify-content: center;
    float: none;
}
.instagram-container .container-inner .contents:first-child{
    justify-content: flex-end;
}
.instagram-container .container-inner .contents:first-child iframe{
    margin-right: -3.1372549019607843%!important;
}
.instagram-container .container-inner .contents:last-child{
    justify-content: flex-start;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.instagram-container .container-fluid{
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
body#menu .instagram-container .container-fluid{
    padding:20px 0 0;
}
.instagram-container .container-fluid .title{
    margin:0 auto 24px;
}
.instagram-container .container-fluid .title h2 {
    font-size: 2.1rem;
    line-height: 1;
    letter-spacing: 0.36em;
}
.instagram-container .container-inner {
    /*width: calc(100% - 32px);*/
    margin:0 auto;
}
.instagram-container .container-inner .contents,
.instagram-container .container-inner .contents-wide{
    width: 100%;
    margin:auto;
    display: flex;
    justify-content: center;
}
.instagram-container .container-inner .contents iframe{
    height: auto!important;
    /*height: auto!important;
    margin-right: -8px!important;*/
}
.instagram-container .container-inner .contents-wide iframe{
    /*width:calc(100% - 16px)!important;
    height: auto!important;
    margin-right: -8px!important;*/
}
.instagram-container .container-inner .contents iframe .image-wrapper ,
.instagram-container .container-inner .contents-wide iframe .image-wrapper {
    margin: 0!important;
}
.image-box{
    margin:0!important;
}
}/* --------------------------------------------- PC end */





/* -------------------------------------------------------------------
contact-container
------------------------------------------------------------------- */
.contact-container {
    width: 100%;
    margin:auto;
    position: relative;
}

.contact-container.pure-g {
    white-space: normal;
}

.contact-container .container-fluid .title h2 span{
    letter-spacing: 0.36em;
}

/*752PX*/
@media screen and (min-width:768px) {
.contact-container .container-fluid{
    max-width: 1024px;
    padding:64px 0 0;
    margin:0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.contact-container .container-fluid .title{
    margin:0 auto 32px;
}
.contact-container .container-inner{
    width: 100%;
    margin:16px auto 0;
}
.contact-container .container-inner ul{
    width:calc(100% + 32px);
    padding:0;
    margin:0 -16px;
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    align-content: center;
    flex-flow: row wrap;
}
.contact-container .container-inner ul li{
    width:calc(50% - 32px);
    margin:16px;
    display: inline-block;
}
.contact-container .container-inner ul li.counseling{
    width: 100%;
    height: auto;
    margin-bottom:0;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid a{
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    text-decoration: none!important; 
}
/* IE10〜11 */
_:-ms-input-placeholder, :root .contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid a{
    justify-content: flex-start;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid {
    height: 184px;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid{
    height: 163px;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
    margin: 0;
    font-size: 2.3rem;
    line-height: 1.4;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid span{
    font-size: 3.2rem;
    line-height: 1.5;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid span{
    margin: -8px 0 0 0;
}
.contact-container .container-inner ul li.mail .baseBtnStyle.btn-solid i{
    width:100%;
    height: 26px;
    margin: 0 auto 24px;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.mail .baseBtnStyle.btn-solid i:before {
    content: url(../img/common/ic_mail.svg);
    width: 38px;
    height: 26px;
    margin: auto;
    display: block;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid i{
    width:100%;
    height: 41px;
    margin: 0 auto 6px;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid i:before {
    content: url(../img/common/ic_phone02.svg);
    width: 157px;
    height: 41px;
    margin: auto;
    display: block;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid i,
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i{
    width: 38px;
    height: 39px;
    margin: 0 16px 0;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i{
    width:100%;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid i:before,
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i:before{
    content: url(../img/common/ic_counseling.svg);
    width: 38px;
    height: 39px;
    line-height: 0;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.contact-container .container-fluid{
    padding:0;
    margin:32px auto 0;
    position: relative;
    display: block;
    z-index: 2;
}
.contact-container .container-fluid .title{
    margin:0 auto 24px;
}
.contact-container .container-inner{
    width:calc(100% - 32px);
    margin:auto;
}
.contact-container .container-inner ul{
    width:calc(100%);
    padding:0;
    margin:auto;
    display:flex;
    justify-content: space-between;
    align-items: flex-start;
    align-content: center;
    flex-flow: row wrap;
}
.contact-container .container-inner ul li{
    width:calc(50% - 8.51063829787234%);
    margin: 4.25531914893617%;
    display: inline-block;
}
.contact-container .container-inner ul li.counseling{
    width: 100%;
    height: auto;
    margin-bottom:0;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid {
    width: 100%;
    height: 144px;
    display: table;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid a{
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    text-decoration: none!important; 
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid a{
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    text-decoration: none!important; 
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid{
    height: 72px;
}
.contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
    width:-o-fit-content;
    width:-moz-fit-content;
    width:-webkit-fit-content;
    width:fit-content;
    margin: auto;
    font-size: 1.4rem;
    line-height: 1.4;
    display: block;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid span{
    margin: 0;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid span{
    font-size: 2.1rem;
}
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid span{
    font-size: 1.3rem;
}
.contact-container .container-inner ul li.mail .baseBtnStyle.btn-solid i{
    width:100%;
    height: 17px;
    margin: 0 auto 16px;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.mail .baseBtnStyle.btn-solid i:before {
    content:"";
    width: 26px;
    height: 17px;
    margin: auto;
    background: url(../img/common/ic_mail.svg);
    background-size: 100%;
    display: block;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid i{
    width:100%;
    height: 27px;
    margin: 0 auto 6px;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.phone .baseBtnStyle.btn-solid i:before {
    content:"";
    width:110px;
    height: 27px;
    margin: auto;
    background: url(../img/common/ic_phone02.svg);
    background-size: 100%;
    display: block;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid i,
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i{
    width: 24px;
    height: 25px;
    margin: 0 6px 0;
    line-height: 1;
    display: block;
}
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i{
    margin: auto;
}
.contact-container .container-inner ul li.counseling .baseBtnStyle.btn-solid i:before,
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid i:before {
    content:"";
    width: 24px;
    height: 25px;
    background: url(../img/common/ic_counseling.svg);
    background-size: 100%;
    display: block;
}

/* IE10〜11 */
_:-ms-input-placeholder, :root .contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
  width:auto;
}

/* Edge12〜14 */
@supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {
  .contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
    width:auto;
  }
}
}/* --------------------------------------------- PC end */

@supports (-ms-ime-align:auto) {
@media screen and (min-width:768px) {    
  .contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
    width:auto;
  }
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:320px) {
.contact-container .container-inner ul li .baseBtnStyle.btn-solid span{
    font-size: 1.2rem;
}
.contact-container .container-inner ul li.counseling02 .baseBtnStyle.btn-solid span{
    font-size: 1.2rem;
}
}/* --------------------------------------------- PC end */










/* ---------------------------------------------
Faq-container
--------------------------------------------- */
.faq-container {
    width: 100%;
    margin:auto;
}
.faq-container.pure-g {
    white-space: normal;
}
.faq-container .container-inner li{
  position: relative;
}
.faq-container a{
  width: 100%;
  height: 100%;
}
.faq-container a,
.faq-container a:hover{
    text-decoration: none;
}


/*752PX*/
@media screen and (min-width:768px) {
.faq-container {
    background: #fcfcfc;
}
.faq-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    padding-bottom:64px;
    margin:0 auto;
    overflow: hidden;
}
.faq-container .container-fluid .title{
    margin:0 auto 48px;
}
.faq-container .container-inner {
    width: 100%;
}
.faq-container .container-inner ul{
    margin: 0 auto;
    display: block;
}
.faq-container .container-inner li{
    margin: 0 0 24px;
    padding-bottom: 24px;
    width: 100%;
    box-sizing: border-box;
    display: block;
    //border-bottom: dotted 1px #222;
    background: url(../img/common/dotline.png) repeat-x left bottom;
}
.faq-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: table;
}
.faq-container dl dt{
    width: 100%;
    //height: 178px;
    margin: 0 auto 20px;
    padding: 0 0 0 32px;
    font-size: 16px;
    display: block;
    background:url(../img/common/q.svg) left 0 no-repeat;
    background-size: 20px 21px;
}
.faq-container dl dd{
    font-size: 14px;
    padding: 0 0 0 32px;
    background:url(../img/common/a.svg) left 0 no-repeat;
    background-size: 17px 18px;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.faq-container {
    background: #fcfcfc;
}
.faq-container .container-fluid{
    padding-top:48px;
    padding-bottom:24px;
    margin:0 auto;
    overflow: hidden;
}
.faq-container .container-fluid .title{
    margin:0 auto 32px;
}
.faq-container .container-fluid .title h2,
.faq-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.faq-container .container-inner {
    width: 100%;
}
.faq-container .container-inner ul{
    /* width: 100%; */
    margin: 0 auto;
    display: block;
}
.faq-container .container-inner li{
    margin: 0 0 24px;
    padding-bottom: 24px;
    width: 100%;
    box-sizing: border-box;
    display: block;
    //border-bottom: dotted 1px #222;
    background: url(../img/common/dotline.png) repeat-x left bottom;
}
.faq-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: table;
}
.faq-container dl dt{
    width: 100%;
    margin: 0 auto 16px;
    padding: 0 0 0 24px;
    font-size: 14px;
    display: block;
    background:url(../img/common/q.svg) left 0 no-repeat;
    background-size: 15px 15px;
}
.faq-container dl dd{
    font-size: 13px;
    padding: 0 0 0 24px;
    background:url(../img/common/a.svg) left 0 no-repeat;
    background-size: 13px 13px;
}
}/* --------------------------------------------- SP end */






/* ---------------------------------------------
flow-container
--------------------------------------------- */
.flow-container {
    width: 100%;
    margin:auto;
}
.flow-container.pure-g {
    white-space: normal;
}
.flow-container .container-inner li{
  position: relative;
}
.flow-container a{
  width: 100%;
  height: 100%;
}
.flow-container a,
.flow-container a:hover{
    text-decoration: none;
}


/*752PX*/
@media screen and (min-width:768px) {
.flow-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    margin:0 auto;
    overflow: hidden;
}
.flow-container .container-fluid .title{
    margin:0 auto 48px;
}
.flow-container .container-inner {
    width: 100%;
}
.flow-container .step {
    width: 100%;
    margin: 16px auto 32px;
    padding: 0;
    color: #231815;
    display: table;
    position: relative;
    border: solid 1px #cbcbcb;
}
.flow-container .step:last-child{
    margin-bottom: 0;
}
.flow-container .next-step {
    width: 40px;
    height: 20px;
    margin:32px auto;
    display: block;
    background: url(../img/common/arrow_under.png) center center no-repeat;
}
.flow-container .step .img{
    width: 192px;
    padding: 0;
    display: inline-block;
    background:#ccc;
    float: left;
}
.flow-container .step .ttl {
    margin: 24px 0 0 192px;
    padding: 0 32px;
    font-size: 1.7rem;
    line-height: 1.4;
    color: #231815;
    display: block;
}
.flow-container .step p {
    margin: 16px 0 24px 192px;
    padding: 0 32px;
    font-size: 1.4rem;
    line-height: 2;
    color: #231815;
    display: block;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.flow-container .container-fluid{
    width: calc(100% - 32px);
    padding:0;
    margin:48px auto 0;
    overflow: hidden;
}
.flow-container .container-fluid .title{
    margin:0 auto 48px;
}
.flow-container .container-inner {
    width: 100%;
}
.flow-container .step {
    width: 100%;
    margin: 16px auto 0;
    padding: 0;
    color: #231815;
    display: table;
    position: relative;
    border: solid 1px #cbcbcb;
}
.flow-container .step:last-child{
    margin-bottom: 0;
}
.flow-container .next-step {
    width: 40px;
    height: 20px;
    margin:16px auto;
    display: block;
    background: url(../img/common/arrow_under.png) center center no-repeat;
}
.flow-container .step .img{
    width: 112px;
    padding: 0;
    display: inline-block;
    background:#ccc;
    float: left;
}
.flow-container .step .ttl {
    margin: 24px 0 0 112px;
    padding: 0 16px;
    font-size: 1.6rem;
    line-height: 1.6;
    font-weight: bold;
    color: #231815;
    display: block;
}
.flow-container .step .txt {
    width: 100%;
    margin:0 auto;
    padding:16px 16px 0;
    display: block;
    clear: both;
}
.flow-container .step p {
    margin: 0 0 16px 0;
    padding: 0;
    font-size: 1.4rem;
    line-height: 2;
    color: #231815;
    display: block;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
Price-container
--------------------------------------------- */
.price-container {
    width: 100%;
    margin:auto;
}

/*752PX*/
@media screen and (min-width:768px) {
.price-container .container-fluid{
    width: calc(100% - 32px);
    max-width: 1024px;
    padding:80px 0 64px;
    margin:0 auto;
    overflow: hidden;
}
.price-container .title h3{
    height: 124px;
    margin: 96px auto 0;
    font-size: 2.6rem;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );3f3f3;
}
.price-container .container-fluid .title{
    margin:0 auto 48px;
}
.price-container .container-inner {
    width: 100%;
}

body#price .price-container .container-fluid{
    padding:0 0 16px;
}
body#price h4.heading{
    margin:48px 0 40px;
}
body#price .price-container .title {
    width: 100%;
    height: 124px;
    margin: 64px auto 0;
    font-size: 2.8rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    background: #f6f6f6;
}
body#price .price-container .title h3{
    width: calc(100% - 32px);
    max-width: 1024px;
    height: auto;
    margin: 0 auto;
    font-size: 2.8rem;
    letter-spacing: 0.12em;
    display: block;
    background: transparent;
}
body#price .price-container .title h3 small {
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: 0.16em;
    display: block;
}
body#price .price-container .title:after {
    content: "";
    width: 100%;
    max-width: 1280px;
    height: 100%;
    margin: auto;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
body#price .price-container .title#skin:after {
    background: url(../img/menu/bg_skin.png) right top no-repeat;
    background-size: contain;
}
body#price .price-container .title#cosmetic-surgery:after {
    background: url(../img/menu/bg_cosmetic.png) right top no-repeat;
    background-size: contain;
}
body#price .price-container .title#diet:after {
    background: url(../img/menu/bg_diet.png) right top no-repeat;
    background-size: contain;
}
body#price .price-container .title#other {
    margin-bottom: 48px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.price-container .container-fluid{
    width: calc(100% - 32px);
    padding:40px 0;
    margin:0 auto;
    overflow: hidden;
}
.price-container .title h3{
    height: 98px;
    margin: 64px auto 0;
    font-size: 2.1rem;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f3f3f3;
}
.price-container .container-fluid .title{
    margin:0 auto 40px;
}
.price-container .container-inner {
    width: 100%;
}
body#price .price-container .container-fluid{
    padding:0 0 16px;
}
body#price h4.heading{
    margin:40px 0 32px;
}
body#price .price-container .title{
    width: 100%;
    height: 122px;
    margin: 64px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f3f3f3;
}
body#price .price-container .title h3{
    height: auto;
    margin:0 auto;
    font-size: 2.4rem;
    text-align: center;
    display: block;
}
body#price .price-container .title h3 small{
    font-size: 1.5rem;
    line-height: 1.2;
    display: block;
}
body#price .price-container .title#other {
    margin-bottom: 40px;
}
}/* --------------------------------------------- SP end */







/* -------------------------------------------------------------------------
TABLE
------------------------------------------------------------------------- */
.table {
    width: 100%;
}
table a:hover{
    text-decoration:underline!important;
}
.table th,
.table td {
    padding:10px;
    font-size: 14px;
    color: #222;
    vertical-align: middle;
}
.table th {
    font-weight: 300;
    text-align: center;
}
.table thead th {
    /* background: #fbfbfb; */
    border: solid 1px #777;
}

.table tbody td {
    /* background: #FFF; */
    border: solid 1px #777;
}

.table tbody td{
    text-align: center;
}

.table-border-bottom tbody td{
    border-top: none;
    border-left:none;
    border-right: none;
    border-bottom: solid 1px #777;
}
.table-border-bottom tbody td.last{
    border-top: none;
    border-left:none;
    border-right: none;
    border-bottom: none;
}

@media only screen and (min-width: 751px) {
.table span{
    display: inline-block;
    text-align: right;
}
.table span.red {
    width: auto;
    text-align: left;
}
.table thead th:first-child {
    width: 20%;
}
.table tbody td {
   height: 55px;
}
.table tbody td.stuff{
   padding:0;
}
.comparison{
    margin-bottom: 64px;
}
}/* --------------------------------------------- PC end */


@media only screen and (max-width: 750px) {
table.table {
    display: block;
    position: relative;
    margin:auto;
}
table.table thead {
    width: 11.40625%;
}

.table tbody tr td:first-child{
    /*font-size: 0.6875rem;*/
    padding:0;
    height:36px;
}
.table tbody tr td.koumoku:first-child{
    height:auto;
}
.comparison{
    margin-bottom: 32px;
}
}/* --------------------------------------------- SP end */




/* -------------------------------------------------------------------------
TIME TABLE
------------------------------------------------------------------------- */

section.timetable img{margin:auto;}




@media only screen and (min-width: 751px) {
section.timetable {
    width: 100%;
    letter-spacing: normal;
    overflow:hidden;
    position: relative;
}
section.timetable .container{
    margin:0 auto;
    position: relative;
}
section.timetable .note{
    margin:20px auto 0;
    padding:0 4.6875%;
    line-height: 2.4;
}
section.timetable .note [class *= "pure-u"]:first-child{
    padding-right:7.6171875%;
    border-right: solid 1px #CCC;
}
section.timetable .note [class *= "pure-u"]:last-child{
    padding-left:7.6171875%;
}
section.timetable img {
    margin: 10px auto 0;
    display: block;
}
section.timetable p {
    display: inline-block;
}
}/* --------------------------------------------- PC end */


@media only screen and (max-width: 750px) {
section.timetable {
    /*padding-bottom:20%;*/
    overflow:hidden;
    box-sizing:border-box;
    position: relative;
}
section.timetable .container{
    margin:0 auto;
    position: relative;
}
div.timetable-table table {
    border-collapse: inherit;
    border-spacing: 0;
}
div.timetable-table table.table thead {
    width: 30.851063829787233%;
    display: block;
    float: left;
}
div.timetable-table table.table tbody {
    /*width: 83.59375%;*/
    display: block;
    position: relative;
    overflow: hidden;
    letter-spacing: -0.4em;
}
div.timetable-table .table tbody tr td:first-child{
    padding: 0;
    height:40px;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
    vertical-align: middle;
    box-sizing:border-box;
}
div.timetable-table table.table thead tr {
    display: block;
}
div.timetable-table .table thead th:first-child{
    height:40px;
    box-sizing:border-box;
}
div.timetable-table table.table tbody tr {
    width: 50%;
    display: block;
    font-size: 1em;
    vertical-align: middle;
    letter-spacing: normal;
    float: left;
}
div.timetable-table table.table tbody td {
    height: 40px;
    box-sizing:border-box;
    display: flex;
    align-items: center;
    justify-content: center; 
}
div.timetable-table .table thead th{
    height: 40px;
    box-sizing:border-box;
    display: flex;
    align-items: center;
    justify-content: center; 
}
section.timetable .note{
    margin:16px auto 0;
    padding:0%;
    font-size: 12px;
    line-height: 2;
}
section.timetable .note [class *= "pure-u"]:first-child{
    padding:0 2.6595744680851063% 16px;
    border-bottom: solid 1px #CCC;
}
section.timetable .note [class *= "pure-u"]:last-child{
    padding:16px 2.6595744680851063% 0;
    text-align: center;
}
section.timetable img {
    margin: 10px auto 0;
    display: block;
}
section.timetable p {
    display: inline-block;
}
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------------
ADD
------------------------------------------------------------------------- */
section.address .table th,
section.address .table td {
    color: #333;
    vertical-align: middle;
}
section.address .table th{
    letter-spacing: 0.2rem;
    background: #f7f7f7!important;
}
section.address .table tbody td {
    background: #FFF;
}

@media only screen and (min-width: 751px) {
section.address {
    width: 100%;
    margin:0 auto 48px;
    letter-spacing: normal;
    overflow:hidden;
    position: relative;
}
section.address .container{
    margin:0 auto;
    position: relative;
}
section.address .table th{
    width: 190px!important;
}
section.address .table tbody td {
    width : -webkit-calc(100% - 190px);
    width: calc(100% - 190px);
    padding: 7px 0;
    overflow: hidden;
}
section.address .table tbody td div.first {
    height: 100%;
    text-align: left;
    padding:0 16px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    float: left;
}
section.address .table tbody td div.first span{
    text-align: left;
}
section.address .table tbody td div.link {
    height: 100%;
    font-size: 14px;
    text-align: center;
    border-left:solid 1px #CCC;
    display: inline-block;
    float: left;
}
section.address .table-bordered .link a.pure-button {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
}
section.address .table-bordered .link a.pure-button:before {
    content: "";
    width: 16px;
    height: 15px;
    margin: auto;
    padding: 0 0 0 7em;
    background: url(../img/common/arrow_16px.png) no-repeat 0 0;
    position: absolute;
    top: 0;
    left:0;
    right: 0;
    bottom: 0;
    display: block;
}
}/* --------------------------------------------- PC end */


@media only screen and (min-width: 751px) and (max-width: 1023px) {
section.address .table tbody td div.first {
    width : -webkit-calc(100% / 7 * 4);
    width: calc(100% / 7 * 4);
    font-size: 15px;
}
section.address .table tbody td div.link {
    width : -webkit-calc(100% / 7 * 3);
    width: calc(100% / 7 * 3);
}
}/* --------------------------------------------- PC end */


@media only screen and (min-width: 1024px) {
section.address .table tbody td div.first {
    width : -webkit-calc(100% / 7 * 5);
    width: calc(100% / 7 * 5);
    font-size: 18px;
}
section.address .table tbody td div.link {
    width : -webkit-calc(100% / 7 * 2);

}
}/* --------------------------------------------- PC end */


@media only screen and (max-width: 750px) {
section.address {
    padding-bottom:32px;
    overflow:hidden;
    box-sizing:border-box;
    position: relative;
}
section.address .container{
    margin:0 auto;
    position: relative;
}
div.timetable-table table {
    border-collapse: inherit;
    border-spacing: 0;
}
div.address-table table.table tbody {
    display: block;
    position: relative;
    letter-spacing: -0.4em;
}
div.address-table table.table tbody tr {
    width: 100%;
    display: block;
    vertical-align: middle;
    letter-spacing: normal;
}
div.address-table table.table tbody th,
div.address-table table.table tbody td{
    width: 100%;
    font-size: 14px;
    display: block;
}
div.address-table table.table tbody th{
    height:40px;
    box-sizing:border-box;
    display: flex;
    align-items: center;
    justify-content: center; 
    box-sizing:border-box;
}
div.address-table table.table tbody td{
    padding: 25px 25px 0;
}
section.address .table tbody td div.first {
    width: 100%;
    text-align: left;
    padding:0 0 25px;
    text-align: center;
    border-bottom: solid 1px #CCC;
    display: block;
}
section.address .table tbody td div.link {
    width: 100%;
    font-size: 14px;
    text-align: center;
    display: block;
}
section.address .table-bordered .link a.pure-button {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding:25px 0;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
}
section.address .table-bordered .link a.pure-button:before {
    content: "";
    width: 16px;
    height: 15px;
    margin: auto;
    padding: 0 0 0 7.5em;
    background: url(../img/common/arrow_16px.png) no-repeat 0 0;
    position: absolute;
    top: 0;
    left:0;
    right: 0;
    bottom: 0;
    display: block;
}
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------------
Fee
------------------------------------------------------------------------- */
.firstvisit-container div.pricelist-table{
    border:solid 1px #CCC;
}
div.pricelist-table .table th,
div.pricelist-table .table td {
    vertical-align: middle;
}


@media only screen and (min-width: 751px) {
section.pricelist {
    max-width: 1024px;
    width: 100%;
    margin:0 auto;
    letter-spacing: normal;
    overflow:hidden;
    position: relative;
}
section.pricelist .container{
    margin:0 auto;
    position: relative;
}
div.pricelist-table .table{
    table-layout: fixed;
}
div.pricelist-table .table th{
    height: 44px;
    padding: 8px 16px;
    font-size: 1.6rem;
    color: #231815;
    text-align: left;
    background: #e9e7e7;
    border: solid 1px #e0e0e0;
}
div.pricelist-table .table tbody th{
    font-weight: bold;
    background: #f0f0f0;
}
div.pricelist-table .table thead th:first-child,
div.pricelist-table .table td:first-child{
    /*width: calc(((100% - 57.6171875%) / 3) * 2);
    width: calc(50%);*/
    width: calc(100% - (14.127604166666666% * 3));
}
div.pricelist-table .table.col-2 thead th:nth-of-type(2),
div.pricelist-table .table.col-2 td:nth-of-type(2){
    width: calc(14.127604166666666% * 2);
}
div.pricelist-table .table thead th:last-child,
div.pricelist-table .table td:last-child{
    width: calc(14.127604166666666%);
}
div.pricelist-table .table thead th.auto,
div.pricelist-table .table td.auto{
    width: auto;
}
div.pricelist-table .table tbody td{
    height: 44px;
    padding: 8px 16px;
    font-size: 1.4rem;
    color: #231815;
    overflow: hidden;
    text-align: left;
    border: solid 1px #e0e0e0;
    background: transparent;
}
div.pricelist-table .table tbody td:last-child{
    text-align: right;
}
div.pricelist-table .table tr:nth-child(even) td{
    background: #f8f8f8;
}

div.pricelist-table .table tbody td.havechild {
    width : -webkit-calc(100% / 4 * 3);
    width: calc(100% / 4 * 3);
    padding:0;
}
div.pricelist-table .table tbody td.havechild> .table td{
    border-top: none;
    border-left: none;
    font-size: 13px;
    border: solid 1px #777777;
    border-bottom: none;
}
div.pricelist-table.campaign .table th:last-child,
div.pricelist-table.campaign .table tr:nth-child(odd) td:last-child,
div.pricelist-table.campaign .table tr:nth-child(even) td:last-child{
    color:#c44130;
    background: #f4e6e5;
}
.firstvisit-container div.pricelist-table .table th{
    width: 208px;
    font-size: 16px;
    color: #6c6c6c;
    background: #e9e7e7;
}
.firstvisit-container div.pricelist-table .table tbody td {
    width: 33.33333333%!important;
    padding: 7px 32px;
    font-size: 16px;
    color: #6c6c6c;
    text-align: left;
    overflow: hidden;
    border: solid 1px #FFF;
    background: #FFF!important;
}
section.pricelist p {
    margin:16px;
}

.details-container div.pricelist-table{
    margin-top:48px;
}
}/* --------------------------------------------- PC end */


@media only screen and (max-width: 750px) {
section.pricelist {
    padding-bottom:32px;
    overflow:hidden;
    box-sizing:border-box;
    position: relative;
}
section.pricelist p{
    margin:16px auto 0;
    text-align: center;
}
div.pricelist-table table.table {
    display: block;
    position: relative;
    margin: auto;
    width: 100%;
}
div.pricelist-table table.table thead {
    width: 100%;
    display: block;
}
div.pricelist-table table.table thead tr {
    width: 100%;
    display: block;
}
div.pricelist-table table.table thead th {
    width: 100%;
    height:48px;
    padding: 16px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: #e9e7e7;
    border: solid 1px #e0e0e0;
}
div.pricelist-table table.table th:not(:first-child) {
    display: none;
}

section.pricelist .container{
    margin:0 auto;
    position: relative;
}
div.timetable-table table.table {
    border-collapse: inherit;
    border-spacing: 0;
}
div.pricelist-table table.table tbody {
    width: calc(100%);
    display: inline-block;
    position: relative;
}
div.pricelist-table table.table tbody tr {
    width: calc(100%);
    vertical-align: middle;
    letter-spacing: normal;
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}
div.pricelist-table .table.col-3 tbody tr {
    width: 33.33333%;
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
}
div.pricelist-table .table.col-1 tbody tr {
    width: 100%;
}
div.pricelist-table table.table tbody th {
    width: 100%;
    min-height: 48px;
    padding:0 8px;
    font-size: 1.4rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-right: none;
    border-bottom: none;
    background:#e9e7e7;
}
div.pricelist-table table.table tbody td {
    width: 100%;
    min-height: 48px;
    padding:0 8px;
    font-size: 1.4rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border: none;
    background: transparent;
    border-right: solid 1px #e0e0e0;
    border-left: solid 1px #e0e0e0;
    border-bottom: solid 1px #e0e0e0;
}
div.pricelist-table table.table.col-2 tbody td:not(:first-child) {
    width: 50%;
}
div.pricelist-table table.table.col-2 tbody td:nth-of-type(2) {
    justify-content: flex-start;
    border-right:none;
}
div.pricelist-table table.table.col-2 tbody td:last-child {
    justify-content: flex-end;
    border-left:none;
}
div.pricelist-table .table tr:nth-child(even) td{
    background: #f8f8f8;
}
body#price div.pricelist-table table.table tbody tr {
    /*margin-bottom: 16px;*/
}
body#price div.pricelist-table table.table tbody td:first-child {
    /*border-top: solid 1px #e0e0e0;*/
}
.details-container div.pricelist-table{
    margin-top:40px;
}
}/* --------------------------------------------- SP end */



/* -------------------------------------------------------------------
inquiries/Faq
------------------------------------------------------------------- */
#accordion-menu {
    color: #787878;
}
#accordion-menu .container-inner>ul {
    margin: 0;
    padding: 0!important;
}
#accordion-menu .accordion dl,
#accordion-menu .accordion {
    padding: 0;
}
#accordion-menu .accordion dl dt.trigger {
    margin: 0;
    cursor: pointer;
    position: relative;
    background: #f3f3f3;
}
#accordion-menu .accordion dl dt.trigger:after{
    content: "+";
    width: 36px;
    height: 38px;
    margin: auto;
    font-size: 1rem;
    line-height: 1;
    text-align: center;
    vertical-align: middle;
    color: #FFF;
    background: #cbcbcb;
    position: absolute;
    top: 1px;
    right: 1px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#accordion-menu .accordion dl dt.trigger.open:after{
    content: "-";
}
#accordion-menu .accordion dl dd {
    display: none;
    position: relative;
}
#accordion-menu .accordion dl dd ul {
    padding: 0;
    margin:0;
}
#accordion-menu .accordion dl dd li {
    padding-left: 16px;
    position: relative;
}



@media screen and (min-width:768px) {
#accordion-body {
    width: 100%;
    margin: auto;
    position: relative;
}
.accordion-container {
    width: 100%;
    margin:auto;
    padding: 0;
}
#accordion-menu {
    width: 100%;
    margin: 0 auto;
}
#accordion-menu .container-inner {
    max-width: 1024px;
    margin: 0 auto 96px;
}
#accordion-menu .container-inner.last{
    margin: 0 auto;
}
#accordion-menu .container-inner>ul {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
}
#accordion-menu .accordion dl dt.trigger {
    height: 42px;
    font-size: 1rem;
    color: #6c6c6c;
    border-bottom: 1px solid #CCC;
}
#accordion-menu .accordion dl dt.trigger.open {
    height: 42px;
    font-size: 1rem;
    color: #6c6c6c;
    background: #fafafa;
    border-bottom: 1px solid #e5e5e5;
}
#accordion-menu .accordion dl dt.trigger span{
    width: 100%;
    height: 100%;
    padding: 9px 16px 10px 32px;
    border:solid 1px #FFF;
    display: block;
}
#accordion-menu .accordion dl dd {
    padding: 14px 32px;
    border-bottom: 1px solid #CCC;
}
#accordion-menu .accordion dl dd.nopad {
    padding: 0 0 24px;
}
#accordion-menu .accordion dl dd li{
    width: 24%;
    margin:16px auto;
    display: inline-block;
}
#accordion-menu .accordion dl dd li:before {
    content: "";
    width: 5px;
    height: 9px;
    margin: auto;
    background: url(../img/common/arrow.svg) no-repeat 0 0;
    background-size: 5px 9px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
}
#accordion-menu .accordion dl dd p{
    margin:24px 24px 0;
    color: #6c6c6c;
    line-height: 2;
}
#accordion-menu .accordion dl dd p.padbottom{
    margin:24px;
}
#accordion-menu .accordion dl dd h4{
    margin:24px 24px 8px;
    font-size: 14px;
    color: #6c6c6c;
    line-height: 2;
    font-weight: bold;
}
}/* ---------------------------- PC end */


@media screen and (max-width:767px) {
#accordion-body {
    position: relative;
}
#accordion-body.container-fluid {
    padding: 0;
}
.accordion-container{
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
#accordion-menu {
    width: 100%;
    margin: 0 auto;
}
#accordion-menu .container-inner {
    margin: 0 auto 78px;
}
#accordion-menu .container-inner.last{
    margin: 0 auto;
}
#accordion-menu .container-inner>ul {
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
}
#accordion-menu .accordion dl dt.trigger {
    height: 48px;
    padding: 16px;
    font-size: 14px;
    color: #6c6c6c;
    border-bottom: 1px solid #CCC;
}
#accordion-menu .accordion dl dt.trigger.open {
    background: #fafafa;
    border-bottom: 1px solid transparent;
}
#accordion-menu .accordion dl dd {
    border-bottom: 1px solid #CCC;
}
#accordion-menu .accordion dl dt.trigger:after{
    content: "+";
    width: 46px;
    height: 45px;
}
#accordion-menu .accordion dl dd li{
    width: 100%;
    padding:16px;
    border-top: 1px solid #e5e5e5;
    display: block;
}
#accordion-menu .accordion dl dd li a{
    position: relative;
    padding-left: 16px;
}
#accordion-menu .accordion dl dd li a:before {
    content: "";
    width: 5px;
    height: 9px;
    margin: auto;
    background: url(../img/common/arrow.svg) no-repeat 0 0;
    background-size: 5px 9px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
}
}/* ---------------------------- SP end */





/* -------------------------------------------------------------------
inquiries/Faq
------------------------------------------------------------------- */
main article .container-inner.col-2>.inner h2{
    font-size: 18px;
    margin: 48px 0 24px;
    padding-bottom: 16px;
    border-bottom: solid 1px #CCC;
}
main article .container-inner.col-2>.inner h2:first-child{
    font-size: 18px;
    margin: 0 0 24px;
}
main article .container-inner.col-2>.inner p{
    margin: 0 0 24px;
    font-size: 15px;
    line-height: 2;
}
main article .container-inner.col-2>.inner img.aligncenter{
    margin: auto;
    display: block;
}
main article .container-inner.col-2>.inner .post_date{
    margin-top:48px;
    padding:0 0 16px;
    font-size: 10px;
    text-align: right;
}
main article .container-inner.col-2>.inner .post_tags{
    padding:16px 0 0 3em;
    text-indent: -3em;
    font-size: 12px;
    border-top: solid 1px #CCC;
}
main article .container-inner.col-2>.inner .post_tags a{
    padding:7px 12px;
    margin:0 5px 8px;
    text-indent: 0;
    font-size: 12px;
    background: #e2e2e2;
    display: inline-block;
}
.page_navigation{
    padding:16px 0 0;
    margin:16px 0 0;
    border-top: solid 1px #CCC;
}
.page_navigation_left{
    float: left;
}
.page_navigation_right{
    float: right;
}

main article .container-inner.col-2 aside ul{
    margin: 0;
    padding:10px 0 0;
}
main article .container-inner.col-2 aside ul li {
    padding: 11px 0 0 16px;
    line-height: 1.2;
    font-size: 12px;
    position: relative;
}
main article .container-inner.col-2 aside ul li:before {
    content: "";
    width: 5px;
    height: 9px;
    margin: 0 auto;
    background: url(../img/common/arrow.svg) no-repeat 0 0;
    background-size: 5px 9px;
    position: absolute;
    top: 14px;
    left: 0;
    display: block;
}


@media screen and (min-width:768px) {
main article .container-inner.col-2 aside h2:first-child{
    margin: 0;
}
main article .container-inner.col-2 aside h2{
    font-size: 16px;
    margin: 32px 0 0;
    padding-bottom: 16px;
    border-bottom: solid 1px #CCC;
}
main article .container-inner.col-2 aside h3{
    font-size: 16px;
    margin: 20px 0 0;
    padding: 0;
}
main article .container-inner.col-2 aside h4{
    font-size: 15px;
    margin: 20px 0 0;
    padding: 0 16px;
}
main article .container-inner.col-2 aside ul{
    margin: 0 0 56px;
    padding:0;
}
main article .container-inner.col-2 aside .child ul li {
    /*padding: 11px 0 0 32px;*/
    padding: 17px 0 0 20px;
    line-height: 1.2;
    font-size: 12px;
    position: relative;
}
main article .container-inner.col-2 aside ul li > ul{
    margin: 0 0 0 -20px;
    padding:0;
}
main article .container-inner.col-2 aside .child ul li:before {
    /*top: 14px;
    left: 17px;*/
    top: 20px;
    left: 6px;
}
}/* ---------------------------- PC end */

@media screen and (max-width:767px) {
main article .container-inner.col-2.blog-container aside {
    background: transparent;
}
main article .container-inner.col-2 aside *{
    white-space: normal;
}
main article aside .catlist_unit{
    width: 50%;
    display: inline-block;
    border-right: 1px solid #FFF;
    vertical-align: top;
    float: left;
}
main article aside .catlist_unit:last-child{
    border-right: none;
}

main article .container-inner.col-2>.inner h2{
    font-size: 15px;
    margin: 32px 0 20px;
    padding-bottom: 16px;
    border-bottom: solid 1px #CCC;
}
main article .container-inner.col-2>.inner p{
    margin: 0 0 20px;
    font-size: 14px;
    line-height: 1.9;
}
main article .container-inner.col-2 aside h2,
main article .container-inner.col-2 aside h3,
main article .container-inner.col-2 aside h4{
    font-size: 14px;
    padding: 12px 6.382978723404255%;
    border-bottom: solid 1px #FFF;
    position: relative;
    cursor: pointer; 
}

main article .container-inner.col-2 aside .catlist_unit h2,
main article .container-inner.col-2 aside .catlist_unit h3,
main article .container-inner.col-2 aside .catlist_unit h4{
    border-bottom: none;
    background: #ebebec;
}

main article .container-inner.col-2 aside h3{
    background: #f1f1f1;
}
main article .container-inner.col-2 aside h4{
    background: #f8f8f8;
}
main article .container-inner.col-2 aside h3 a{
    width: 100%;
    height: 100%;
    display: block;
}
main article .container-inner.col-2 aside ul,
main article .container-inner.col-2 aside .child{
    display: none;
}

main article .container-inner.col-2 aside .catlist_unit .child{
    border:solid 1px #ebebec;
}

main article .container-inner.col-2 aside ul.catlist,
main article .container-inner.col-2 aside ul.catlist .child{
    display: block;
}
main article .container-inner.col-2 aside ul{
    margin: 0;
    padding:4px 6.382978723404255% 16px;
    background: #FFF;
}
main article .container-inner.col-2 aside h2:before,
main article .container-inner.col-2 aside h3:before,
main article .container-inner.col-2 aside h4:before {
    content: "";
    width: 8px;
    height: 16px;
    margin: auto;
    background: url(../img/common/arrow.svg) no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 15px;
    right: 6.382978723404255%;
    display: block;
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
main article .container-inner.col-2 aside h2.open:before,
main article .container-inner.col-2 aside h3.open:before,
main article .container-inner.col-2 aside h4.open:before {
    content: "";
    -moz-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
}
}/* ---------------------------- SP end */



/* -------------------------------------------------------------------
main .section.navBox
------------------------------------------------------------------- */

@media screen and (min-width: 751px){
main .section.navBox {
    width: calc(100% - 32px);
    max-width: 1024px;
    padding-top:5px;
    margin: 0 auto;
    overflow: hidden;
}
main .section.navBox .pure-g {
    width: 100%;
    margin: 0;
    justify-content: center;
    align-content: center;
}
main .section.navBox p {
    margin: 8px 0 0;
    font-size: 1.5rem;
    line-height: 1.8;
}
main .section.navBox .pure-g::after {
  content: '';
  width: 100%;
}
main .section.navBox div[class*=pure-u-] {
    margin:0 0 16px;
    padding: 8px;
    display: inline-block;
}
main .section.navBox div[class*=pure-u-]:last-child{
    margin:0;
}
body#skin main .section.navBox div[class*=pure-u-]:nth-child(n+4) {
  order: 1;
}
body#wrinkle main .section.navBox div[class*=pure-u-]:nth-child(n+4) {
  order: 1;
}
main .section.navBox a{
    width: 100%;
    height: 64px;
    font-size: 1.4rem;
    line-height: 1.6;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-flow: row wrap;
    background-color: #f5f5f5;
    border: solid 1px #dbdbdb;
}
main .section.navBox a span{
    width: 100%;
    display: block;
}
main .section.navBox div[class*=pure-u-]:after{
    content: "";
    width: 15px;
    height: 8px;
    margin:8px auto 0;
    display:block;
    background: url(../img/common/arrow_under.svg) center center no-repeat;
    background-size: 15px 8px;
}
main .section.navBox h4.trigger{
    display: none;
}
/*menu top*/
body#menu main .section.navBox a,
body#price main .section.navBox a{
    height: 96px;
    padding: 10px 24px;
    justify-content: flex-start;
}
body#menu main .section.navBox .skin a,
body#price main .section.navBox .skin a{
    background:url(../img/menu/bt_skin.png) right top no-repeat #f5f5f5;
}
body#menu main .section.navBox .cosmetic-surgery a,
body#price main .section.navBox .cosmetic-surgery a{
    background: url(../img/menu/bt_cosmetic.png) right top no-repeat #f5f5f5;
}
body#menu main .section.navBox .diet a,
body#price main .section.navBox .diet a{
    background: url(../img/menu/bt_diet.png) right top no-repeat #f5f5f5;
 }

 /*cosmetic-surgery*/
body#cosmetic-surgery main .section.navBox .pure-u-1 {
    padding:16px 16px 0;
    border: solid 1px #dbdbdb;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl dt{
    width: 100%;
    padding: 8px 16px 16px;
    font-size: 1.8rem;
    text-align: center;
    border-bottom: solid 1px #dbdbdb;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul{
    padding: 16px;
    display: block;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li{
    margin: 0 0 8px;
    display: inline-block;
    font-size: 1.4rem;
    vertical-align: top;
    background:transparent;
    border: none; 
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul ul{
    max-width: calc(100% - 3em);
    padding: 0;
    display: inline-block;
    float: right;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li a {
    width: auto;
    height: auto;
    padding: 0 16px 8px;
    display: inline-block;
    background:transparent;
    border: none;
    position: relative;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li a:after{
    content: "";
    width: 1px;
    height: 16px;
    margin:0;
    position: absolute;
    top:4px;
    right:0;
    background: #e0e0e0;
    display: inline-block;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li.last{
    display: block; 
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li.last a{
    padding: 0 0 8px;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dl ul li.last a:after{
    content:none;
}
body#cosmetic-surgery main .section.navBox div[class*=pure-u-]:after {
    content: none;
}
}/* ---------------------------- PC end */


@media screen and (min-width: 751px) and (max-width: 980px){
main .section.navBox div.pure-u-sm-1-4 {
    width: 33.333333%;
}
}/* ---------------------------- PC end */



@media screen and (max-width: 750px){
main .section.navBox {
    width: calc(100% - 32px);
    margin: 48px auto 0;
    position: relative;
}
main .section.navBox .trigger{
    cursor: pointer;
}
main .section.navBox p {
    margin: 32px 0 0;
    font-size: 1.4rem;
    line-height: 2;
}
main .section.navBox .pure-g {
    width: calc(100%);
    display: none;
    position: absolute;
    top: 54px;
    left: 0;
    background: #f5f5f5;
    border: solid 1px #dbdbdb;
    z-index: 100;
}
main .section.navBox div.pure-u-sm-1-4 {
    width: 100%;
    margin:0;
    padding: 0;
    font-size: 1.3rem;
    display: block;
    position: relative;
}
main .section.navBox a span{
    width: 100%;
    font-size: 1.1rem;
    display: block;
}
main .section.navBox a{
    height: 56px;
    padding: 0 16px 0 32px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-flow: row wrap;
    background: url(../img/common/arrow_under.svg) 16px center no-repeat;
    background-size: 9px 5px;
    border-bottom: solid 1px #CCC;
}
main .section.navBox .diet a{
    border-bottom:none;
}
main .section.navBox h4.trigger{
    height: 56px;
    font-size: 1.4rem;
    line-height: 1;
    color: #8a8a8a;
    text-align: center;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-flow: row wrap;
    background:url(../img/common/arrow-select.png) right 16px center no-repeat;
    background-size: 14px;
    background-color: #f5f5f5;
    border: solid 1px #dbdbdb;
}
main .section.navBox h4.trigger div,
.aside h4.trigger div {
    width: 17px;
    height: 12px;
    margin:2px 10px 0;
    position: relative;
}
main .section.navBox h4.trigger div,
main .section.navBox h4.trigger div span,
.aside h4.trigger div,
.aside h4.trigger div span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}
main .section.navBox h4.trigger div span,
.aside h4.trigger div span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #CCC;
}
main .section.navBox h4.trigger div span:nth-of-type(1),
.aside h4.trigger div span:nth-of-type(1){
  top: 0;
}
main .section.navBox h4.trigger div span:nth-of-type(2),
.aside h4.trigger div span:nth-of-type(2){
  top: 5px;
}
main .section.navBox h4.trigger div span:nth-of-type(3),
.aside h4.trigger div span:nth-of-type(3){
  bottom: 0;
}



/*Anim*/
main .section.navBox h4.trigger div span:nth-of-type(1){
  -webkit-animation: menu-bar01 .25s forwards;
  animation: menu-bar01 .25s forwards;
}
main .section.navBox h4.trigger div span:nth-of-type(2){
  transition: all .25s .25s;
  opacity: 1;
}
main .section.navBox h4.trigger div span:nth-of-type(3){
  -webkit-animation: menu-bar02 .25s forwards;
  animation: menu-bar02 .25s forwards;
}

main .section.navBox h4.trigger.open div span:nth-of-type(1){
  -webkit-animation: active-menu-bar01 .25s forwards;
  animation: active-menu-bar01 .25s forwards;
  //opacity: 0;
}
main .section.navBox h4.trigger.open div span:nth-of-type(2) {
  opacity: 1;
}
main .section.navBox h4.trigger.open div span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .25s forwards;
  animation: active-menu-bar03 .25s forwards;
  //opacity: 0;
}

body#cosmetic-surgery main .section.navBox .pure-u-1 dt {
    width: 100%;
    height: 56px;
    padding: 16px 16px 0;
    display: block;
    border-bottom: solid 1px #CCC;
    background-image: url(../img/common/plus.svg);
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: auto 19px;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dt.open{
    background-image: url(../img/common/minus.svg);
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dd {
    display: none;
    background-color: #eeeeee;
    /*width: calc(100% - 48px);
    margin: 0 0 0 48px;
    border-top: solid 1px #CCC;
    border-left: solid 1px #CCC;
    border-bottom: solid 1px #CCC;*/
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dd ul li.md span {
    width: 100%;
    padding: 16px;
    display: block;
    background-image: url(../img/common/plus.svg);
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: auto 19px;
    border-bottom: solid 1px #CCC;
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dd ul li.md span.open{
    background-image: url(../img/common/minus.svg);
}
body#cosmetic-surgery main .section.navBox .pure-u-1 dd ul ul {
    display: none;
}
}/* ---------------------------- SP end */





/* -------------------------------------------------------------------
Info
------------------------------------------------------------------- */
.news_tit{
    margin:0 auto 14px;
    font-size: 14px;
    color:#c44130;
    text-align: center;
    display: block;
    position: relative;
}
.news_tit a:nth-of-type(2):before {
    content: "/";
}
.news_tit a{
    color:#c44130;
}
.news_tag{
    margin: 4px 6px 0 0;
    padding: 8px;
    line-height: 1;
    font-size: 12px;
    color: #222;
    text-align: center;
    background: #eeeeee;
    display: inline-block;
    //display: table;
    //table-layout: fixed;
}

@media screen and (min-width: 751px){
body.info .menu-container .container-inner li {
    margin: 16px 16px 48px;
    width: calc(33.333333% - 36px);
    /* border: solid; */
    box-sizing: border-box;
    display: inline-block;
}
body.info .menu-container dl dd {
    margin: 10px auto 0;
}
body.info .menu-container dl dd .md {
    margin: 0 auto 6px;
}
body.info .menu-container dl dt img {
    margin: auto;
    text-align: center;
    display: block;
}
}

@media screen and (min-width: 881px) {
body.info .menu-container dl dt img {
    width: auto;
    height: 207px;
}
}


@media screen and (min-width: 751px) and (max-width: 880px){
body.info .menu-container dl dt img {

}
}

@media screen and (max-width: 750px){
body.info .menu-container .container-inner ul {
    display: flex;
    flex-flow: row wrap;
}
body.info .menu-container .container-inner li {
    width: calc(50% - 16px);
    margin: 16px 8px 24px;
    box-sizing: border-box;
    display: inline-block;
}
.news_tit {
    font-size: 13px;
}
body.info .menu-container dl {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 16px;
    display: block;
    background: #FFF;
}
body.info .menu-container dl dt {
    width: auto;
    height: auto;
    margin: 0 auto;
    padding: 0;
    display: block;
    vertical-align: top;
}
body.info .menu-container dl dd {
    width: 100%;
    padding: 16px 0 0;
    margin: 10px auto 0;
    display: block;
}
body.info .menu-container dl dd .md {
    margin: 0 auto 6px;
}
body.info .menu-container dl dt img {
    width: 100%;
    height: auto;
    /* height: 207px; */
    margin: auto;
    text-align: center;
    display: block;
}
}



/* -------------------------------------------------------------------
Modal
------------------------------------------------------------------- */
.mfp-bg {
    background: #b3b3b3!important;
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    max-width: 1024px;
    height: 100%;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    box-sizing: border-box;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
    width: 100%;
}
.mfp-gallery .mfp-image-holder .mfp-figure {
    width: 100%;
    cursor: pointer;
    background: #FFF;
}
.mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: none;
    background: #FFF;
}
.mfp-figure figure {
    margin: 0;
    min-height: 200px;
    vertical-align: middle;
    display: block;
    //justify-content: center;
    //align-items: center;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    position: absolute;
    padding: 0!important;
    color: transparent!important;
    text-indent: -99999px;
    overflow: hidden;
    background: url(../img/common/close.png) no-repeat 0 0;
    background-size: contain;
}
.gallery-arrow {
    position: absolute;
    top: 50%;
    margin-top: -15px;
    display: block;
    text-align: center;
    cursor: pointer;
    z-index: 1100;
}
.gallery-arrow-left:before{
  content:"";
  display: block;
  background: url(../img/common/modal_prev.png) no-repeat 0 0;
  background-size: contain;
}
.gallery-arrow-right:before{
  content:"";
  display: block;
  background: url(../img/common/modal_next.png) no-repeat 0 0;
  background-size: contain;
}
.mfp-counter{
    display: none;
}

@media screen and (min-width: 751px){
.mfp-container {
    padding-left: 60px!important;
    padding-right: 60px!important;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    width: 37px!important;
    height: 37px;
    top: 32px!important;
    right: 32px!important;
}
span.gallery-arrow.gallery-arrow-right.mfp-prevent-close {
    right: 10%;
}
span.gallery-arrow.gallery-arrow-left.mfp-prevent-close {
    left: 10%;
}
.gallery-arrow,
.gallery-arrow-left:before,
.gallery-arrow-right:before{
  width: 19px;
  height: 37px;
}
}

@media screen and (max-width: 750px){
.mfp-container {
    padding-left: 16px!important;
    padding-right: 16px!important;
}
.mfp-gallery .mfp-image-holder .mfp-figure {
    padding: 0 32px;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    width: 19px!important;
    height: 19px;
    top: 16px!important;
    right: 20px!important;
}
span.gallery-arrow.gallery-arrow-right.mfp-prevent-close {
    right: 24px;
}
span.gallery-arrow.gallery-arrow-left.mfp-prevent-close {
    left: 24px;
}
.gallery-arrow,
.gallery-arrow-left:before,
.gallery-arrow-right:before{
    width: 15px;
    height: 33px;
}
}



/* ---------------------------------------------
Campaign
--------------------------------------------- */

.campaign-container {
    width: 100%;
    margin:auto;
    /* background: #f3f3f3; */
}
.campaign-container.pure-g {
    white-space: normal;
}
.campaign-container .container-inner {
    width: 100%;
    background:#FFF; 
}

span.new {
    margin: 0px 8px 0 0;
    padding: 2px 5px 3px;
    font-size: 59%;
    font-weight: normal;
    color: #FFF;
    line-height: 1.4;
    text-align: center;
    position: relative;
    top: -2px;
    display: inline-block;
    background: #c44130;
}

.pink {
    color: #ee6c69;
}



/*752PX*/
@media screen and (min-width:768px) {
.campaign-container .container-fluid{
    max-width: 912px;
    width: calc(100% - 32px);
    padding-top:40px;
    margin:0 auto;
    overflow: hidden;
}
.campaign-container p.summary {
    margin:0 6px 40px;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.12em;
}
.campaign-container .container-fluid .title{
    margin:0 auto 48px;
    text-align: left;
}
.campaign-container .container-fluid .title h2 {
    font-size: 28px;
    color: #c44130;
    font-weight: 500;
    letter-spacing: 0;
    box-sizing: border-box;
}
.campaign-container .container-inner p {
    margin:0 0 32px;
    line-height: 2;
}
.campaign-container .container-inner p.large {
    //margin-bottom: 40px;
    font-size: 20px;
    line-height: 1.6;
}
.campaign-container .container-inner p.md {
    margin:48px 0 16px;
    font-size: 18px;
    line-height: 1.6;
}
.campaign-container dl {
    max-width: 906px;
    width: calc(100% - 6px);
    height: 100%;
    margin: 0 auto 32px;
    padding: 32px 30px 48px;
    display: table;
    table-layout: fixed;
    background: #fff;
    filter: drop-shadow(0px 0px 6px rgba(222,222,222,1));
    border: 1px solid #f2f2f2;
}
.campaign-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8px;
    position: relative;
    display: block;
}
.campaign-container dl dt span {
    width: 114px;
    height: 28px;
    margin: 10px 8px 0 0;
    font-size: 1.5rem;
    line-height: 1.7;
    text-align: center;
    letter-spacing: 0.12em;
    display: inline-block;
    border: solid 2px #f0807e;
}
.campaign-container dl dt span.date {
    color: #fff;
    background: #f0807e;
}
.campaign-container dl dt span.type {
    color: #f0807e;
}
.campaign-container dl dt h3{
    margin: 0 0 0 14px;
    font-size: 3.2rem;
    line-height: 1.5;
    font-weight: 500;
    color: #f0807e;
    vertical-align: top;
    display: inline-block;
}
.campaign-container dl dt h3 small{
    font-size: 15px;
    font-weight: 400;
}
.campaign-container dl dd{
    width: 100%;
    padding:0;
    margin: 0 auto;
    display: block;
    position: relative;
}
.campaign-container dl dd .ph{
    margin: 0 auto;
    position: absolute;
    top:0;
    right: 0;
    display: block;
    z-index: 1;
}
.campaign-container dl dd .md {
    font-size: 1.8rem;
    color: #222;
    font-weight: bold;
}
.campaign-container dl dd .md span {
    margin-right: 8px;
    color: #aaa;
}
.campaign-container dl dd div.price{
    width: 100%;
    margin: 14px 0 0;
    font-size: 3.6rem;
    /* font-weight: bold; */
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.campaign-container dl dd div.price>div{
    letter-spacing: .05em;
    display: inline-block;
    white-space: nowrap;
}
.campaign-container dl dd div.price>div.icon {
    width: 53px;
    height: 53px;
    margin:0 12px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    border-radius: 50%;
    background: #f0807e;
    display: flex;
    justify-content: center;
    align-items: center;
}
.campaign-container dl dd div.price .large {
    font-size: 4.9rem;
    margin: 0;
    font-weight: bold;
    display: inline-block;
}
.campaign-container dl dd div.price small{
    font-size: 3rem;
    font-weight: bold;
}
.campaign-container dl dd div.price>div.arrow{
    width: 48px;
    height: 17px;
    background:url(../img/common/arrow_price.svg) no-repeat center 0;
    background-size:28px 17px; 
}
.campaign-container dl dd p{
    margin-top:10px;
    font-size: 1.1rem;
    letter-spacing: 0.12em;
}
div.campaign-container a.baseBtnStyle.btn-solid {
    width: 304px;
    height: 54px;
    margin: 32px auto 0;
    font-size: 1.4rem;
    position: relative;
    background: #fff;
    z-index: 2;
}
.campaign-container .note{
    max-width: 906px;
    /* width:calc(100% - 32px); */
    margin: 96px auto 0;
    padding: 32px;
    border:solid 1px #cbcbcb;
    display: block;
}
.campaign-container .note h4{
    /* max-width: 906px; */
    /* width: 100%; */
    margin:auto;
    font-size: 1.7rem;
    line-height: 1;
    letter-spacing: 0.12em;
    padding:0 0 24px;
    border-bottom:solid 1px #cbcbcb;
    display: block;
}
.campaign-container .note p{
    margin:24px 0 0;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height: 2;
}
.campaign-container .note ul li{
    margin:12px 0 0;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height:1.4;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:767px) {
.campaign-container .container-fluid{
    padding-top:40px;
    margin:0 auto;
    overflow: hidden;
}
.campaign-container p.summary {
    margin:0 6px 40px;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.12em;
}
.campaign-container p.summary a.underline{
    font-size: 1.4rem;
}
.campaign-container .container-fluid .title{
    margin:0 auto 48px;
    text-align: left;
}
.campaign-container .container-fluid .title h2 {
    font-size: 28px;
    color: #c44130;
    font-weight: 500;
    letter-spacing: 0;
    box-sizing: border-box;
}
.campaign-container .container-inner p {
    margin:0 0 32px;
    line-height: 2;
}
.campaign-container .container-inner p.large {
    //margin-bottom: 40px;
    font-size: 20px;
    line-height: 1.6;
}
.campaign-container .container-inner p.md {
    margin:48px 0 16px;
    font-size: 18px;
    line-height: 1.6;
}
.campaign-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto 24px;
    padding: 20px 16px;
    display: table;
    table-layout: fixed;
    background: #fff;
    filter: drop-shadow(0px 0px 6px rgba(222,222,222,1));
    border: 1px solid #f2f2f2;
}
.campaign-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
    display: block;
}
.campaign-container dl dt span {
    width: 81px;
    height: 24px;
    margin: 0 8px 0 0;
    font-size: 1.2rem;
    line-height: 1.7;
    text-align: center;
    letter-spacing: 0.12em;
    display: inline-block;
    border: solid 2px #f0807e;
}
.campaign-container dl dt span.date {
    color: #fff;
    background: #f0807e;
}
.campaign-container dl dt span.type {
    color: #f0807e;
}
.campaign-container dl dt h3{
    margin: 10px 0 0;
    font-size: 2.2rem;
    line-height: 1.5;
    font-weight: 500;
    color: #f0807e;
    vertical-align: top;
    display: block;
}
.campaign-container dl dt h3 small{
    font-size: 15px;
    font-weight: 400;
}
.campaign-container dl dd{
    width: 100%;
    padding:0;
    margin: 0 auto;
    display: block;
    position: relative;
}
.campaign-container dl dd .ph{
    width: 130px;
    margin: 0 auto;
    position: absolute;
    top:0;
    right: 0;
    display: block;
    z-index: 1;
}
.campaign-container dl dd .md {
    margin: 6px 0 0 0;
    font-size: 1.3rem;
    color: #222;
    font-weight: bold;
}
.campaign-container dl dd .md span {
    margin-right: 8px;
    color: #aaa;
}
.campaign-container dl dd div.price{
    width: 100%;
    margin: 14px 0 0;
    font-size: 3.3rem;
    /* font-weight: bold; */
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-flow: row wrap;
}
.campaign-container dl dd div.price>div{
    /* width: 100%; */
    letter-spacing: .05em;
    display: inline-block;
    white-space: nowrap;
}
.campaign-container dl dd div.price>div.icon {
    width: 55px;
    height: 55px;
    margin:0 20px;
    font-size: 1.4rem;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    border-radius: 50%;
    background: #f0807e;
    display: flex;
    justify-content: center;
    align-items: center;
}
.campaign-container dl dd div.price>div.off {
    width: 100%;
    line-height: 1;
}
.campaign-container dl dd div.price .large {
    font-size: 4.6rem;
    margin: 0;
    font-weight: bold;
    display: inline-block;
}
.campaign-container dl dd div.price small{
    font-size: 3rem;
    font-weight: bold;
}
.campaign-container dl dd div.price>div.arrow{
    width: 48px;
    height: 17px;
    background:url(../img/common/arrow_price.svg) no-repeat center 0;
    background-size:28px 17px; 
}
.campaign-container dl dd p{
    margin-top:10px;
    font-size: 1.3rem;
    letter-spacing: 0.12em;
}
div.campaign-container a.baseBtnStyle.btn-solid {
    width: 152px;
    height: 39px;
    margin: 16px auto 0;
    font-size: 1.2rem;
    color:#fff;
    border:none;
    background:#a29d9c; 
    position: relative;
    z-index: 2;
}
.campaign-container .note{
    margin: 40px auto 0;
    padding: 24px 16px;
    border:solid 1px #cbcbcb;
    display: block;
}
.campaign-container .note h4{
    /* max-width: 906px; */
    /* width: 100%; */
    margin:auto;
    font-size: 1.4rem;
    line-height: 1;
    letter-spacing: 0.12em;
    padding:0 0 20px;
    border-bottom:solid 1px #cbcbcb;
    display: block;
}
.campaign-container .note p{
    margin:20px 0 0;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height: 2;
}
.campaign-container .note ul li{
    margin:12px 0 0;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.4rem;
    letter-spacing: 0;
    line-height:1.4;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
Report-container
--------------------------------------------- */
.report-container {
    width: 100%;
    margin:auto;
    position: relative;
    background: #f3f3f3;
}
.report-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.report-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.report-container .container-fluid .title{
    margin:0 auto 48px;
}
.report-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.report-container .container-inner p{
    line-height: 1.769;
    margin-bottom: 48px;
}
.report-container .container-inner .pure-g{
    margin:0 0 32px; 
    border-bottom: solid 1px #dfdfdf;
}
.report-container .container-inner .pure-g.last{
    border-bottom: none;
}
.report-container .container-inner .pure-g>.pure-g{
    margin:0 -16px 24px;
    border-bottom: none;
}
.report-container .container-inner .pure-g .ph{
    margin:0 0 24px;
}
.report-container .container-inner .pure-g .text{
    padding:16px 0 0 32px;
}
.report-container .container-inner .pure-g>.pure-g .ph{
    margin:0;
    padding:0 16px;
}

}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.report-container .container-fluid{
    padding-top: 48px;
    padding-bottom: 24px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.report-container .container-fluid .title{
    margin:0 auto 32px;
}
.report-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.report-container .container-inner .pure-g{
    margin:0 0 24px;
    padding: 0 0 24px;
    font-size: 14px;
    border-bottom: solid 1px #dfdfdf;
}
.report-container .container-inner .pure-g.last{
    padding: 0;
    border-bottom: none;
}
.report-container .container-inner .pure-g>.pure-g{
    margin: 0 -8px 16px;
    padding: 0;
    border-bottom: none;
}
.report-container .container-inner .pure-g .text{
    padding:8px 0 0 16px;
}
.report-container .container-inner .pure-g>.pure-g .ph{
    margin:0;
    padding:0 8px;
}

}/* --------------------------------------------- SP end */




/* -------------------------------------------------------------------
sitemap
------------------------------------------------------------------- */
.sitemap__table-cell dl dt a small{
    width: 100%;
    display: block;
}


/*752PX*/
@media screen and (min-width:768px) {
.sitemap__table-cell{
    width: 100%;
    margin: 0 -16px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
}
.sitemap__table-cell dl{
    width:calc(33.333333% - 32px);
    display: inline-block;
    margin: 0 16px 48px;
    padding: 0;
}
.sitemap__table-cell dl dt a {
    width: 100%;
    margin: 0;
    font-size: 1.4rem;
    color: #222;
    line-height: 1.6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    flex-flow: row wrap;
    float: none;
}
.sitemap__table-cell dl dt {
    width: 100%;
    padding: 0 0 16px;
    margin: 0 0 16px;
    font-size: 14px;
    line-height: 1;
    border-bottom: solid 1px #d6d6d6;
}
.sitemap__table-cell dl dt dd {
    width: 100%;
    padding: 0;
    margin: 0;
    color: #222;
    line-height: 1;
}
.sitemap__table-cell ul li{
    padding:0 0 0 1rem;
    margin:0 0 8px;
}
.sitemap__table-cell ul li a {
    font-size: 1.2rem;
    margin: 0 0 16px;
    padding: 0 0 0 1rem;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:767px) {
.sitemap__table-cell{
    margin: 0 -16px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
}
.sitemap__table-cell dl{
    width: calc(50% - 32px);
    display: inline-block;
    margin: 0 16px 32px;
    padding: 0;
}
.sitemap__table-cell dl dt a {
    width: 100%;
    margin: 0;
    font-size: 1.4rem;
    color: #222;
    line-height: 1.6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    flex-flow: row wrap;
    float: none;
}
.sitemap__table-cell dl dt {
    width: 100%;
    padding: 0 0 16px;
    margin: 0 0 16px;
    font-size: 1.4rem;
    line-height: 1;
    border-bottom: solid 1px #d6d6d6;
}
.sitemap__table-cell dl dt dd {
    width: 100%;
    padding: 0;
    margin: 0;
    color: #222;
    line-height: 1;
}
.sitemap__table-cell ul li{
    padding:0;
    margin:0 0 8px;
}
.sitemap__table-cell ul li a {
    font-size: 1.2rem;
    margin: 0 0 16px;
    padding: 0 0 0 1rem;
}
}/* --------------------------------------------- SP end */




/* -------------------------------------------------------------------
Privacy
------------------------------------------------------------------- */
/* feature-container */
.privacy-container {
    width: 100%;
    margin:auto;
    position: relative;
}
.privacy-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:768px) {
.privacy-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.privacy-container .container-fluid .title{
    margin:0 auto;
}
.privacy-container .container-fluid .title h3{
    margin:0 auto 32px;
    letter-spacing: 0.09em;
    line-height: 1.5;
}
.privacy-container .container-fluid .title h2:after, 
.privacy-container .container-fluid .title h3:after {
    content: none;
}
.privacy-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.privacy-container p {
    margin: 0 0 48px;
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 1.929em;
}
.privacy-container h4{
    margin:0 0 16px;
    padding:0 0 16px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    position: relative;
    border-bottom: solid 1px #777
}
}/* --------------------------------------------- PC end */

@media screen and (max-width:767px) {
.privacy-container .container-fluid{
    padding-top: 48px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.privacy-container .container-fluid .title{
    margin:0 auto;
}
.privacy-container .container-fluid .title h3 {
    margin:0 auto 32px;
    //letter-spacing: 0.09em;
    line-height: 1.5;
}
.privacy-container .container-fluid .title h2:after, 
.privacy-container .container-fluid .title h3:after {
    content: none;
}
.privacy-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.privacy-container p {
    margin: 0 0 24px;
    font-size: 13px;
    letter-spacing: 0.01em;
    line-height: 1.929em;
}
.privacy-container h4{
    margin:0 0 16px;
    padding:0 0 16px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    position: relative;
    border-bottom: solid 1px #777
}
}/* --------------------------------------------- SP end */






/* -------------------------------------------------------------------
photo
------------------------------------------------------------------- */
/* feature-container */
.photo-container {
    width: 100%;
    margin:auto;
    position: relative;
}
.photo-container.pure-g {
    white-space: normal;
}
.price-container .title h3 {
    height: 124px;
    margin: 96px auto 0;
    font-size: 2.6rem;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}

ul.before-after {
    width: 100%;
    display: flex;
    justify-content: center;
}
ul.before-after li{
    position: relative;
}
ul.before-after li.before, ul.before-after li.after {
    width: calc(50% - 16px);
    margin: 0px auto;
    border: 1px solid #dcdcdc;
    display: flex;
    align-items: center;
    vertical-align: middle;
    background: #FFF;
}
ul.before-after li.arrow{
    width: 32px;
}
ul.before-after li.arrow:after {
    content: "";
    margin: auto;
    position: absolute;
    top: calc(50% - 4px);
    left: calc(50% - 4px);
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 8px solid #222;
    display: block;
}
ul.before-after li img {
    max-width: calc(100% - 32px);
    height: auto;
    margin: 0px auto;
}



/*752PX*/
@media screen and (min-width:768px) {
.photo-container .container-fluid{
    max-width: 1024px;
    padding: 48px 0;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}

.photo-container .title {
    width: 100%;
    height: 124px;
    margin: 0 auto 0;
    font-size: 2.8rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    background: #f6f6f6;
}

.catContainer+.photo-container .title {
    margin: 64px auto 0;
}
.photo-container .title h3 {
    width: calc(100% - 32px);
    max-width: 1024px;
    height: auto;
    margin: 0 auto;
    font-size: 2.6rem;
    text-align: center;
    letter-spacing: 0.12em;
    display: block;
    background: transparent;
}

.photo-container .container-fluid .title{
    margin:0 auto;
}
.photo-container .container-fluid .title h3{
    margin:0 auto 32px;
    letter-spacing: 0.09em;
    line-height: 1.5;
}
.photo-container .container-fluid .title h2:after, 
.photo-container .container-fluid .title h3:after {
    content: none;
}
.photo-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.photo-container p {
    margin: 0 0 48px;
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 1.929em;
}
.flex-wrapper {
    margin: 0 -16px;
    display: flex;
    justify-content: flex-start;
    flex-flow: row wrap;
}
.photo-inner {
    padding: 24px;
    border: solid 1px #d5d5d5;
}
.photo-title {
    font-size: 1.6rem;
    line-height: 1.4;
    margin:0 0 16px;
}
.photo-container [class *= "pure-u"]{
    width: calc(33.3333% - 32px);
    margin: 16px;
}

/*関連リンク*/
.related_link{
    margin: 48px 0 0;
    font-size: 1.4rem;
    line-height: 1.4;
}
.related_link dl{
    display: block;
}
.related_link dt,dd{
    display: block;
}
.related_link dd a{
    padding-right: 8px;
    display: inline-block;
}
.related_link dd {
    padding: 16px 16px 12px;
    font-size: 1.4rem;
    border-bottom: solid 2px #f0f0f0;
}
.related_link dt {
    font-weight: bold;
    font-size: 2rem;
}
/*関連リンク（一覧）*/
.photo-list-container .related_link{
    margin:24px 0 0;
}
.photo-list-container .related_link dl{
    width: 100%;
    display: table;
    border-bottom: solid 2px #f0f0f0;
    table-layout: fixed;
}
.photo-list-container .related_link dt{
    /* width: 3em; */
    font-weight: bold;
    font-size: 1.1rem;
    border-bottom:none;
    display: block;
}
.photo-list-container .related_link dd{
    padding: 8px 0;
    font-size: 1.2rem;
    line-height:1.6;
    border-bottom:none;
    display: block;
}

/*リスク*/
.photo-container .risks {
    padding: 16px 0;
    margin: 48px auto 0;
    font-size: 1.1rem;
    line-height: 2;
    border: solid 1px #e5e5e5;
}
.photo-container .risks .container-fluid {
    width: 100%;
    padding: 0;
    display: table;
}
.photo-container .risks .sectionTitle {
    width: 180px;
    height: 100%;
    margin: 0;
    font-size: 1.2rem;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;
    border-right: solid 1px #cfcfcf;
    display: table-cell;
}
.photo-container .risks ul {
    width: auto;
    padding: 8px 32px;
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.65;
    display: table-cell;
}
/*リスク（一覧）*/
.photo-container .photo-list-container .risks {
    padding:0;
    margin: 24px auto 0;
    border: none;
}
.photo-list-container p {
    margin: 0;
    font-size: 1.2rem;
    line-height:1.6;
}


div.photo-list-container a.baseBtnStyle.btn-solid {
    width: 100%;
    height: 48px;
    margin: 32px auto 0;
    font-size: 1.4rem;
}
div.photo-list-container a.baseBtnStyle.btn-solid i.angle-left {
    top: -7px;
}
#summary-header{
    margin: 0 0 32px;
}
#summary-header h1{
    font-size: 2rem;
    font-weight: bold;
}
.photo-container .case-reports p {
    margin: 48px 0 0;
    font-size: 1.4rem;
    letter-spacing: 0.01em;
    line-height: 2em;
}
.product-links{
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}
.photo-container .product-links a.baseBtnStyle.btn-solid {
    margin: 48px 16px 0;
}
}/* --------------------------------------------- PC end */






@media screen and (max-width:767px) {
.photo-container .title {
    width: 100%;
    margin: 0 auto 0;
}
.catContainer+.photo-container .title {
    margin: 48px auto 0;
}
.photo-container .title h3 {
    margin:0 auto;
    height: 98px;
    font-size: 2.1rem;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.12em;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background: #f6f6f6;
    background: -moz-linear-gradient(top, #f6f6f6 0%, #f1f1f1 100%);
    background: -webkit-linear-gradient(top, #f6f6f6 0%,#f1f1f1 100%);
    background: linear-gradient(to bottom, #f6f6f6 0%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#f1f1f1',GradientType=0 );
}
.photo-container .container-fluid{
    width: calc(100% - 32px);
    padding: 32px 0 0;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.photo-container .container-fluid .title{
    margin:0 auto;
}
.photo-container .container-fluid .title h3{
    margin:0 auto 32px;
    letter-spacing: 0.09em;
    line-height: 1.5;
}
.photo-container .container-fluid .title h2:after, 
.photo-container .container-fluid .title h3:after {
    content: none;
}
.photo-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.photo-container p {
    margin: 0 0 48px;
    font-size: 14px;
    letter-spacing: 0.01em;
    line-height: 1.929em;
}
.flex-wrapper {
    /* margin: 0 -16px; */
    display: flex;
    justify-content: flex-start;
    flex-flow: row wrap;
}
.photo-inner {
    padding: 16px;
    border: solid 1px #d5d5d5;
}
.photo-title {
    font-size: 1.6rem;
    line-height: 1.4;
    margin:0 0 16px;
}
.photo-container .pure-u-1 {
    margin: 0 0 16px;
}

/*関連リンク*/
.related_link{
    margin: 32px 0 0;
    font-size: 1.4rem;
    line-height: 1.4;
}
.related_link dl{
    display: block;
}
.related_link dt,dd{
    display: block;
}
.related_link dd a{
    padding-right: 8px;
    display: inline-block;
}
.related_link dd {
    padding: 12px 16px 12px;
    font-size: 1.4rem;
    border-bottom: solid 2px #f0f0f0;
}
.related_link dt {
    font-weight: bold;
    font-size: 1.4rem;
}
/*関連リンク（一覧）*/
.photo-list-container .related_link{
    margin:24px 0 0;
}
.photo-list-container .related_link dl{
    width: 100%;
    display: table;
    border-bottom: solid 2px #f0f0f0;
    table-layout: fixed;
}
.photo-list-container .related_link dt{
    /* width: 3em; */
    font-weight: bold;
    font-size: 1.1rem;
    border-bottom:none;
    display: block;
}
.photo-list-container .related_link dd{
    padding: 8px 0;
    font-size: 1.2rem;
    line-height:1.6;
    border-bottom:none;
    display: block;
}

/*リスク*/
.photo-container .risks {
    /* padding: 16px 0; */
    /* margin: 24px auto 0; */
    /* font-size: 1.1rem; */
    /* line-height: 2; */
    /* border: solid 1px #e5e5e5; */
    padding: 20px 0;
    margin: 40px auto 0;
    font-size: 1.4rem;
    line-height: 2;
    border: solid 2px #e5e5e5;
}
.photo-container .risks .container-fluid {
    /* width: 100%; */
    /* padding: 0; */
    /* display: table; */
    padding: 0;
    display: block;
}
.photo-container .risks .sectionTitle {
    /* width: 180px; */
    /* height: 100%; */
    /* margin: 0; */
    /* font-size: 1.2rem; */
    /* line-height: 1.25; */
    /* text-align: center; */
    /* vertical-align: middle; */
    /* border-right: solid 1px #cfcfcf; */
    /* display: table-cell; */
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0 0 20px;
    font-size: 1.4rem;
    line-height: 1.6;
    text-align: center;
    vertical-align: middle;
    border-bottom: solid 1px #cfcfcf;
    display: block;
}
.photo-container .risks ul {
    /* width: auto; */
    /* padding: 8px 32px; */
    /* margin: 0; */
    /* font-size: 1.1rem; */
    /* line-height: 1.65; */
    /* display: table-cell; */
    width: auto;
    padding: 16px 0 0;
    margin: 0;
    font-size: 1.4rem;
    line-height: 2;
    display: block;
}
/*リスク（一覧）*/
.photo-container .photo-list-container .risks {
    padding:0;
    margin: 24px auto 0;
    border: none;
}
.photo-list-container p {
    margin: 0;
    font-size: 1.2rem;
    line-height:1.6;
}


div.photo-list-container a.baseBtnStyle.btn-solid {
    width: 100%;
    height: 48px;
    margin: 32px auto 0;
    font-size: 1.4rem;
}
div.photo-list-container a.baseBtnStyle.btn-solid i.angle-left {
    top: -7px;
}
#summary-header{
    margin: 0 0 24px;
}
#summary-header h1{
    font-size: 1.8rem;
    font-weight: bold;
}
.photo-container .case-reports p {
    margin: 32px 0 0;
    font-size: 1.4rem;
    letter-spacing: 0.01em;
    line-height: 2;
}
.product-links{
    margin: 16px auto;
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
}
.photo-container .product-links a.baseBtnStyle.btn-solid {
    margin: 16px 0 0;
}
}/* --------------------------------------------- SP end */





/* -------------------------------------------------------------------
MEDIA
------------------------------------------------------------------- */
section#pickup {
    background: #f8f8f8;
}
section#pickup div.movie-wrap {
    position: relative;
    padding-bottom:75%;
    height: 0;
    overflow: hidden;
}
section#pickup div.movie-wrap .thumb {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}
section#pickup div.movie-wrap .thumb:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/common/play.png) no-repeat center center rgba(0,0,0,.2);
    display: block;
    z-index: 3;
}
section#pickup div.movie-wrap .thumb img {
    max-width: 100%;
    height: auto;
}

section#pickup div.movie-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*752PX*/
@media screen and (min-width:768px) {
section#pickup {
    margin: 5px auto 16px;
    padding: 80px 0 96px;
}

main article #pickup .container-fluid {
    width: 720px;
    margin:0 auto;
}

section#pickup .title {
    margin: 0 auto 48px;
}

section#pickup .title h2 {
    font-size: 3.2rem;
    letter-spacing: 0.36em;
}

section#pickup h3.title {
    margin: 32px auto 0;
    font-size: 2rem;
    letter-spacing: 0.1em;
    text-align: left;
}

section#pickup p {
    margin: 24px auto 0;
    font-size: 1.4rem;
    line-height: 2;
}
}/* --------------------------------------------- PC end */


/*767PX*/
@media screen and (max-width:767px) {
section#pickup {
    margin: 48px auto 0;
    padding: 40px 0 48px;
}

main article #pickup .container-fluid {
    width: calc(100% - 48px);
    margin:0 auto;
    padding:0;
}

section#pickup .title {
    margin: 0 auto 32px;
}

section#pickup .title h2 {
    font-size: 2.1rem;
    letter-spacing: 0.36em;
}

section#pickup h3.title {
    margin: 24px auto 0;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: left;
}

section#pickup p {
    margin: 16px auto 0;
    font-size: 1.4rem;
    line-height: 2;
}
}/* --------------------------------------------- SP end */




/* -------------------------------------------------------------------
Pagination
------------------------------------------------------------------- */
.pagination h2.screen-reader-text {
    display: none;
}

.nav-links {
    font-size: 1.4rem;
    color: #231815;
    line-height: 1.7;
    display: flex;
    justify-content: center;
}

.nav-links a {
    width: 23px;
    height: 23px;
    margin: 0 8px;
    text-align: center;
    display: inline-block;
}

.nav-links a.prev{
    margin: 0 8px 0 0;
}

.nav-links a.next{
    margin: 0 0 0 8px;
}

.nav-links span.current {
    width: 23px;
    height: 23px;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    background: #d7d7d7;
}

span.nav-next-text,
span.nav-prev-text {
    width: 23px;
    height: 23px;
    text-indent: -99999px;
    overflow: hidden;
    background: url(../img/common/arrow.svg) center center no-repeat;
    background-size: 8px 15px;
    display: inline-block;
    vertical-align: top;
}

span.nav-prev-text {
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
}