
/* -------------------------------------------------------------------
container-fluid
------------------------------------------------------------------- */
main {
    background: #f3f3f3
}
@media screen and (min-width: 751px) { 
main .container-fluid-inner {
    width: -webkit-calc(100% - 240px);
    width: calc(100% - 240px);
    margin-left: 240px;
    position: relative;
    display: block;
    z-index: 100;
}

#ContentsWrap {
    /* max-width: 1024px; */
    width: 100%;
    margin: 0 auto;
    position: relative;
}

/*aside*/
aside, .aside{
    max-width: 1024px;
    width: 100%;
    height: 100%;
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    overflow: hidden;
    pointer-events: none;
}
aside nav, .aside nav {
    width: 208px;
    transition: .3s;
    pointer-events: visible;
    display: block;
    z-index: 100;
    position: absolute;
    top: 32px;
    left: auto;
}
aside .aside_detail__table a:hover{
    color:#222;
}
aside .aside_detail__table-cell {
    background-color: #f5f5f5;
}
aside .aside_detail__table-cell dl {
    width: 100%;
    display: block;
}
aside .aside_detail__table-cell dl dt {
    background: #FFF;
    border-bottom:solid 1px #f5f5f5;
}
aside .aside_detail__table-cell dl dt:last-child {
    border: none;
}
aside .aside_detail__table-cell dl dt.open {
    background: #f5f5f5;
}
aside .aside_detail__table-cell dl dt.hav_child a{
    width: 100%;
    width: 100%;
    padding: 10px 16px;
    /* height: 46px; */
    background-image: url(../img/common/plus.svg);
    background-repeat: no-repeat;
    background-position: 184px center;
    background-size: 9px 9px;
    display: block;
}
aside .aside_detail__table-cell dl dt:not(.hav_child) a{
    width: 100%;
    width: 100%;
    padding: 10px 16px;
    /* height: 46px; */
    background-image: url(../img/common/arrow_line.svg);
    background-repeat: no-repeat;
    background-position: 186px center;
    background-size: 5px 9px;
    display: block;
}
aside .aside_detail__table-cell dl dt:not(.hav_child) a:hover{
    background-color: #EEE;
}
aside .aside_detail__table-cell dl dt.position:not(.hav_child) a{
    background-color: #c44130;
    background-image: url(../img/common/arrow_line_wh.svg);
    background-repeat: no-repeat;
    background-position: 186px center;
    color: #FFF;
}
aside .aside_detail__table-cell dl dt.open a,
aside .aside_detail__table-cell dl dt.close a{
    background-image:url(../img/common/minus.svg);
    background-repeat: no-repeat;
    background-position: 184px center;
    background-size: 9px 9px;
}
aside .aside_detail__table-cell dl dd {
    margin-left: 16px;
    background: #eeeeee;
    display: none;
}
aside .aside_detail__table-cell dl dt.position + dd {
    display: block;
}
aside .aside_detail__table-cell dl dd a{
    min-height: 38px;
    display: block;
}
aside .aside_detail__table-cell dl dd ul li a {
    color:#222;
    padding: 10px 32px 10px 16px;
    background-image: url(../img/common/arrow_line.svg);
    background-repeat: no-repeat;
    background-position: 169px center;
    background-size: 5px 9px;
    display: block;
}
aside .aside_detail__table-cell dl dd ul li a.position {
    background-color: #c44130;
    background-image: url(../img/common/arrow_line_wh.svg);
    background-repeat: no-repeat;
    background-position: 169px center;
    color: #FFF;
}
aside h4, .aside ul li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}
aside h4 {
    height: 38px;
}
aside h4 a, .aside ul li a {
    margin: 0;
    display: flex;
    align-items: center;
    color: #222;
    background-image: url(../img/common/arrow_line.svg);
    background-repeat: no-repeat;
    background-position: 186px center;
    background-size: 5px 9px;
    background-color: #FFF;
    border-bottom: solid 1px #f5f5f5;
}
 aside h4.position a{
    background-color: #c44130;
    background-image: url(../img/common/arrow_line_wh.svg);
    background-repeat: no-repeat;
    background-position: 186px center;
    color: #FFF;
}
aside h4 a {
    height: 38px;
    padding: 0 16px;
}
.aside ul li a {
    padding: 7px 16px;
}
aside h4 a:hover, .aside ul li a:hover {
    //border: none;
    margin: 0;
    color: #222;
}
aside h4 a:hover {
    height: 38px;
    padding: 0 16px;
}
.aside ul li a:hover {
    padding: 7px 16px;
}
aside h4 a:hover, .aside ul li a:hover {
    background-color:#eeeeee;
}
}/* ---------------------------- pc end */



/*751〜1024px*/
@media screen and (min-width:751px) and (max-width:1024px) {
aside, .aside {
    padding: 0 16px;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
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;
}

/*aside*/
aside{
    display: none;
}
}/* ---------------------------- sp end */




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

@media screen and (min-width: 751px) { 
#breadCrumbs {
    width: 100%;
    margin: auto;
    background: #f3f3f3;
}
#breadCrumbs .inner{
    max-width: 1024px;
    margin: auto;
    padding:16px 0;
}
#breadCrumbs a {
    text-decoration: none;
    font-size: 14px;
    color: #c44130;
    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:751px) and (max-width:1024px) {
#breadCrumbs .inner{
    max-width: 1024px;
    margin: auto;
    padding:16px;
}
}/* --------------------------------------------- PC end */


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





/* -------------------------------------------------------------------
KV
------------------------------------------------------------------- */
#kv {
    width: 100%;
    position: relative;
    overflow: hidden;
    /*display: -ms-flexbox!important;
    display: -webkit-flex!important;
    display: flex!important;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;*/
    background-color: #e4e4e7;
}

#kv h2, #kv p {
    //text-shadow: 0 0 0.5em rgba(233,233,233,1);
    text-shadow:0px 2px 2px rgba(233,233,233,.85),0px 0px 2px rgba(233,233,233,.85),2px 0px 2px rgba(233,233,233,.85),0px -2px 2px rgba(233,233,233,.85),-2px -2px 2px rgba(233,233,233,.85),-2px 0px 2px rgba(233,233,233,.85);
}


/*752PX*/
@media screen and (min-width:751px) {
#kv .inner {
    max-width: 1024px;
    width: 100%;
    height: 268px;
    margin: auto;
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    z-index: 2;
}
#kv .txt {
    width: 100%;
    max-width: 1024px;
    /* height: 268px; */
    margin: 0;
    /* padding: 90px 0 0; */
    font-size: 20px;
    color: #222;
    letter-spacing: -0.05em;
    vertical-align: middle;
    /* text-align: center; */
    display: block;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column nowrap;
    z-index: 3;
}
body.operation #kv .txt h2{
    letter-spacing: .1em;
}

#kv h2 {
    font-size: 48px;
    line-height: 1;
    margin-top: 22px;
}
body:not(.menu) #kv h2,
body.menu.operation #kv h2 {
    margin-top: 0;
}
#kv h2 small{
    font-size: 32px;
}
#kv p.small {
    margin-top: 32px;
    font-size: 14px;
}
#kv:after {
    content: "";
    max-width: 1024px;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

body.operation #kv:after {
    background: url(../img/pc/operation/sub/kv.png) no-repeat right 0;
}
body.tarumi #kv:after {
    background: url(../img/pc/operation/tarumi/kv.png) no-repeat right 0;
}
body.shimi #kv:after {
    background: url(../img/pc/operation/shimi/kv.png) no-repeat right 0;
}
body.shiwa #kv:after {
    background: url(../img/pc/operation/shiwa/kv.png) no-repeat right 0;
}
body.keana #kv:after {
    background: url(../img/pc/operation/keana/kv.png) no-repeat right 0;
}
body.diet #kv:after {
    background: url(../img/pc/operation/diet/kv.png) no-repeat right 0;
}
body.datsumou #kv:after {
    background: url(../img/pc/operation/datsumou/kv.png) no-repeat right 0;
}

body.therma_c #kv:after {
    background: url(../img/pc/operation/tarumi/therma_c/kv.png) no-repeat right 0;
}
body.ultherma #kv:after {
    background: url(../img/pc/operation/tarumi/ultherma/kv.png) no-repeat right 0;
}
body.ulthera #kv:after {
    background: url(../img/pc/operation/tarumi/ulthera/kv.png) no-repeat right 0;
}
body.hifushower #kv:after {
    background: url(../img/pc/operation/tarumi/hifushower/kv.png) no-repeat right 0;
}
body.hari #kv:after {
    background: url(../img/pc/operation/tarumi/hari/kv.png) no-repeat right 0;
}
body.hiaruron #kv:after {
    background: url(../img/pc/operation/shiwa/hiaruron/kv.png) no-repeat right 0;
}
body.botox #kv:after {
    background: url(../img/pc/operation/shiwa/botox/kv.png) no-repeat right 0;
}
body.bbl #kv:after {
    background: url(../img/pc/operation/shimi/bbl/kv.png) no-repeat right 0;
}
body.picofacial #kv:after {
    background: url(../img/pc/operation/shimi/picofacial/kv.png) no-repeat right 0;
}
body.coolsculpting #kv:after {
    background: url(../img/pc/operation/diet/coolsculpting/kv.png) no-repeat right 0;
}
body.lipocel #kv:after {
    background: url(../img/pc/operation/diet/lipocel/kv.png) no-repeat right 0;
}
body.revlite #kv:after {
    background: url(../img/pc/operation/shimi/revlite/kv.png) no-repeat right 0;
}
body.halo #kv:after {
    background: url(../img/pc/operation/keana/halo/kv.png) no-repeat right 0;
}
body.madonna #kv:after {
    background: url(../img/pc/operation/keana/madonna/kv.png) no-repeat right 0;
}
body.ematrix #kv:after {
    background: url(../img/pc/operation/keana/ematrix/kv.png) no-repeat right 0;
}
body.doublo #kv:after {
    background: url(../img/pc/operation/tarumi/doublo/kv.png) no-repeat right 0;
}
body.skintight #kv:after {
    background: url(../img/pc/operation/tarumi/skintight/kv.png) no-repeat right 0;
}
body.sculpsure #kv:after {
    background: url(../img/pc/operation/diet/sculpsure/kv.png) no-repeat right 0;
}
body.prp #kv:after {
    background: url(../img/pc/operation/shiwa/prp/kv.png) no-repeat right 0;
}

body.info #kv:after {
    background: url(../img/pc/info/kv.png) no-repeat right 0;
}
body.form #kv:after {
    background: url(../img/pc/form/kv.png) no-repeat right 0;
}
body.campaign #kv:after {
    background: url(../img/pc/campaign/kv.png) no-repeat right 0;
}
body.price #kv:after {
    background: url(../img/pc/sub/price/kv.png) no-repeat right 0;
}
}/* --------------------------------------------- PC end */




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





/*751PX*/
@media screen and (max-width:750px) {
#kv {
    width: 100%;
    padding-top: 54.12234042553191%;
    margin: 56px auto 0;
    position: relative;
    overflow: hidden;
    background: #e9e9e9;
}
#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;
}
#kv .txt {
    width: 100%;
    margin: auto;
    padding: 0 5.319148936170213% 0;
    font-size: 13px;
    color: #222;
    letter-spacing: -0.05em;
    vertical-align: middle;
    /* text-align: center; */
    display: block;
    justify-content: flex-start;
    align-items: center;
    flex-flow: column nowrap;
    z-index: 3;
}
#kv h2 {
    margin-top: 15px;
    font-size: 30px;
    line-height: 1;
    letter-spacing: -0.05em;
}
body:not(.menu) #kv h2,
body.menu.operation #kv h2 {
    margin-top: 0;
}
#kv h2 small{
    font-size: 20px;
}
#kv p.small {
    margin-top: 32px;
    font-size: 12px;
}
#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.operation #kv:after {
    background: url(../img/sp/operation/sub/kv.png) no-repeat right 0;
    background-size: contain;
}
body.tarumi #kv:after {
    background: url(../img/sp/operation/tarumi/kv.png) no-repeat right 0;
    background-size: contain;
}
body.shimi #kv:after {
    background: url(../img/sp/operation/shimi/kv.png) no-repeat right 0;
    background-size: contain;
}
body.shiwa #kv:after {
    background: url(../img/sp/operation/shiwa/kv.png) no-repeat right 0;
    background-size: contain;
}
body.keana #kv:after {
    background: url(../img/sp/operation/keana/kv.png) no-repeat right 0;
    background-size: contain;
}
body.diet #kv:after {
    background: url(../img/sp/operation/diet/kv.png) no-repeat right 0;
    background-size: contain;
}
body.datsumou #kv:after {
    background: url(../img/sp/operation/datsumou/kv.png) no-repeat right 0;
    background-size: contain;
}

body.therma_c #kv:after {
    background: url(../img/sp/operation/tarumi/therma_c/kv.png) no-repeat right 0;
    background-size: contain;
}
body.ultherma #kv:after {
    background: url(../img/sp/operation/tarumi/ultherma/kv.png) no-repeat right 0;
    background-size: contain;
}
body.ulthera #kv:after {
    background: url(../img/sp/operation/tarumi/ulthera/kv.png) no-repeat right 0;
    background-size: contain;
}
body.hifushower #kv:after {
    background: url(../img/sp/operation/tarumi/hifushower/kv.png) no-repeat right 0;
    background-size: contain;
}
body.hari #kv:after {
    background: url(../img/sp/operation/tarumi/hari/kv.png) no-repeat right 0;
    background-size: contain;
}
body.hiaruron #kv:after {
    background: url(../img/sp/operation/shiwa/hiaruron/kv.png) no-repeat right 0;
    background-size: contain;
}
body.botox #kv:after {
    background: url(../img/sp/operation/shiwa/botox/kv.png) no-repeat right 0;
    background-size: contain;
}
body.bbl #kv:after {
    background: url(../img/sp/operation/shimi/bbl/kv.png) no-repeat right 0;
    background-size: contain;
}
body.picofacial #kv:after {
    background: url(../img/sp/operation/shimi/picofacial/kv.png) no-repeat right 0;
    background-size: contain;
}
body.coolsculpting #kv:after {
    background: url(../img/sp/operation/diet/coolsculpting/kv.png) no-repeat right 0;
    background-size: contain;
}
body.lipocel #kv:after {
    background: url(../img/sp/operation/diet/lipocel/kv.png) no-repeat right 0;
    background-size: contain;
}
body.revlite #kv:after {
    background: url(../img/sp/operation/shimi/revlite/kv.png) no-repeat right 0;
    background-size: contain;
}
body.halo #kv:after {
    background: url(../img/sp/operation/keana/halo/kv.png) no-repeat right 0;
    background-size: contain;
}
body.madonna #kv:after {
    background: url(../img/sp/operation/keana/madonna/kv.png) no-repeat right 0;
    background-size: contain;
}
body.ematrix #kv:after {
    background: url(../img/sp/operation/keana/ematrix/kv.png) no-repeat right 0;
    background-size: contain;
}
body.doublo #kv:after {
    background: url(../img/sp/operation/tarumi/doublo/kv.png) no-repeat right 0;
    background-size: contain;
}
body.skintight #kv:after {
    background: url(../img/sp/operation/tarumi/skintight/kv.png) no-repeat right 0;
   background-size: contain;
}
body.sculpsure #kv:after {
    background: url(../img/sp/operation/diet/sculpsure/kv.png) no-repeat right 0;
    background-size: contain;
}
body.prp #kv:after {
    background: url(../img/sp/operation/shiwa/prp/kv.png) no-repeat right 0;
    background-size: contain;
}



body.info #kv:after {
    background: url(../img/sp/info/kv.png) no-repeat right 0;
    background-size: contain;
}
body.form #kv:after {
    background: url(../img/sp/form/kv.png) no-repeat right 0;
    background-size: contain;
}
body.campaign #kv:after {
    background: url(../img/sp/campaign/kv.png) no-repeat right 0;
    background-size: contain;
}
body.price #kv:after {
    background: url(../img/sp/sub/price/kv.png) no-repeat right 0;
    background-size: contain;
}
}
/* --------------------------------------------- SP end */





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

@media screen and (min-width:751px) {
    h4.heading{
        margin-bottom: 40px!important;
        padding-bottom: 24px!important;
        border-bottom: solid 1px #777;
    }
}/* --------------------------------------------- PC end */
@media screen and (max-width:750px) {
    h4.heading{
        margin-bottom: 32px!important;
        padding-bottom: 16px!important;
        border-bottom: solid 1px #777;
    }
}/* --------------------------------------------- SP end */





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

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


/*752PX*/
@media screen and (min-width:751px) {
.feature-container {
    background: #f3f3f3;
}
.feature-container .container-fluid{
    max-width: 1024px;
    padding-top: 40px;
    padding-bottom: 64px;
    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.diet .container-inner,
.feature-container.datsumou .container-inner,
.feature-container.tarumi .container-inner {
    padding-left:37.244897959183675%;/*292px*/
}
.feature-container.shiwa .container-inner{
    padding-left:50%;/*292px*/
}
.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 (min-width:751px) and (max-width:1023px) {
.feature-container.shiwa .container-inner:after,
.feature-container.diet .container-inner:after,
.feature-container.datsumou .container-inner:after,
.feature-container.tarumi .container-inner:after {
    content: "";
    height: 100%;
    /* padding: 100% 0 0; */
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    clear: both;
    z-index: -1;
}
.feature-container.diet .container-inner:after,
.feature-container.tarumi .container-inner:after {
    width: 816px;
    right: 0;
    background: url(../img/pc/operation/tarumi/feature_ph.png) no-repeat 0 0;
}
.feature-container.datsumou .container-inner:after {
    width: 424px;
    left: -32px;
    background: url(../img/pc/operation/datsumou/feature_ph.png) no-repeat 0 0;
}
.feature-container.shiwa .container-inner:after {
    width: 472px;
    left: -32px;
    background: url(../img/pc/operation/shiwa/feature_ph.png) no-repeat 0 0;
}
}/* --------------------------------------------- PC end */

@media screen and (min-width:1024px) {
.feature-container.shiwa .container-inner:after,
.feature-container.diet .container-inner:after,
.feature-container.datsumou .container-inner:after,
.feature-container.tarumi .container-inner:after {
    content: "";
    height: 100%;
    /* padding: 100% 0 0; */
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    clear: both;
    z-index: -1;
}
.feature-container.diet .container-inner:after,
.feature-container.tarumi .container-inner:after {
    width: 816px;
    right: 0;
    background: url(../img/pc/operation/tarumi/feature_ph.png) no-repeat 0 0;
}
.feature-container.datsumou .container-inner:after {
    width: 424px;
    left: -32px;
    background: url(../img/pc/operation/datsumou/feature_ph.png) no-repeat 0 0;
}
.feature-container.shiwa .container-inner:after {
    width: 472px;
    left: -32px;
    background: url(../img/pc/operation/shiwa/feature_ph.png) no-repeat 0 0;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.feature-container {
    background: #f3f3f3;
}
.feature-container .container-fluid{
    padding-top: 48px;
    padding-bottom: 32px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
body.ultherma .feature-container .container-fluid{
    padding-top: 24px;
}
body.ultherma .feature-container .container-fluid p.alignright{
    margin:0 auto 48px;
}
.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:751px) {
.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:750px) {
.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;
}
}


/* ---------------------------------------------
文章左寄せ
--------------------------------------------- */
@media screen and (min-width:751px) {
.txt-left p {
    width: 50%;
    padding: 0 16px 0 0;
    margin: 0 0 40px;
    float: left;
}
.txt-left ul{
    width: 50%;
    max-width: 368px;
    margin: 0 0 40px!important;
    float: right;
}
.txt-left ul img{
    margin:auto;
    text-align: center;
    display: block;
}
body.madonna .txt-left p {
    width: 70%;
}
body.madonna .details-container .container-inner .txt-left ul{
    width: 30%;
}

/* 文章右寄せ */
.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:750px) {
.txt-left p {
    width: 100%;
    margin: 0 0 24px!important;
    /* float: left; */
}
.txt-left ul{
    //max-width: 368px;
    margin-bottom:32px!important;
}
.txt-left ul img{
    margin:auto;
    text-align: center;
    display: block;
}
body.madonna .details-container .container-inner .txt-left ul li{
    display: block!important;
}

/* 文章右寄せ */
.txt-right p,.txt-right02 div {
    height: 100%;
    padding-top: 24px;
    margin: 0;
}
.txt-right ul,.txt-right02 ul {
    margin: 0!important;
}
.txt-left ul li,.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:751px) {
.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:750px) {
.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:751px) {
.container-inner .movie{
    width: 480px;
    padding-top:270px;
    margin: 0 auto 64px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.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:751px) {
.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:750px) {
.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 */






/* ---------------------------------------------
.highlight
--------------------------------------------- */

.container-inner .highlight{
    width: 100%;
    margin: 0;
    border: solid 1px #777;
    display:table;
}

/*752PX*/
@media screen and (min-width:751px) {
.container-inner .highlight{
    margin-bottom: 32px;
    padding:16px; 
    font-size: 16px;
    line-height: 1.6;
}
body.sculpsure .container-inner .highlight{
    margin-bottom: 64px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.container-inner .highlight{
    margin-bottom: 24px;
    padding:14px; 
    font-size: 16px;
    line-height: 1.6;
}
body.sculpsure .container-inner .highlight{
    margin-bottom: 48px;
}
body.sculpsure .container-inner .highlight ul li{
    margin-bottom: 8px;
    font-size: 13px!important;
}
}/* --------------------------------------------- SP end */



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

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

/*752PX*/
@media screen and (min-width:751px) {
.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:750px) {
.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:751px) {
.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:750px) {

.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:751px) {
.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:750px) {
.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:751px) {
.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:750px) {
.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 */





/* ---------------------------------------------
Reason-container
--------------------------------------------- */
.reason-container {
    width: 100%;
    margin:auto;
    position: relative;
    background: #fafaf9;
}
.reason-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:751px) {
.reason-container {
    background: #f3f3f3;
}
.reason-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
.reason-container .container-fluid .title{
    margin:0 auto 48px;
}
.reason-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.reason-container .container-inner p{
    line-height: 1.769;
    margin-bottom: 48px;
}
.reason-container h4 {
    margin: 80px auto 32px;
    padding:0;
    font-size: 20px;
    line-height: 1.6;
    text-align: left;
    position: relative;
}
.reason-container h4.paragraphs-2 {
    margin: 64px auto 32px;
}
.reason-container .container-inner div.left ul.feature{
    width:100%;
    max-width: auto;
    display:table;
    float: none;
}
.reason-container .container-inner div.left ul.feature.mt30.mb30{
    margin:24px 0;
}
.reason-container .container-inner ul.feature{
    width:73.46938775510205%;
    max-width: 576px;
    margin:0;
    display:table;
    float: left;
}
body.lipocel .reason-container .container-inner ul.feature{
    width:100%;
    max-width: none;
    margin:16px 0 0;
    display:table;
    float: none;
}
.reason-container .container-inner .img {
    float: right;
}
body.bbl .reason-container .container-inner .img,
body.picofacial .reason-container .container-inner .img,
body.ulthera .reason-container .container-inner .img {
    float: right;
    width: 23%;
}
body.bbl .reason-container .container-inner .img img{
    margin:0 auto 16px;
}
.reason-container .container-inner p.left,
.reason-container .container-inner div.left{
    width:73.46938775510205%;
    max-width: 576px;
    margin:0;
    display:table;
    float: left;
}
.reason-container .container-inner p.left.whats-picoway{
    margin-top:32px;
}
body.halo .reason-container .container-inner .pure-u-sm-1-2 p {
    margin:  24px auto 0;
}
body.revlite .reason-container .pure-g>[class *= "pure-u"] {
    margin: 0 auto 24px;
}
body.revlite .reason-container .pure-g>[class *= "pure-u"] p{
    padding-left:16px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.reason-container {
    background: #f3f3f3;
}
.reason-container .container-fluid{
    padding-bottom: 30px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
}
body.coolsculpting .reason-container .container-fluid,
body.bbl .reason-container .container-fluid{
    padding-top: 58px;
}
.reason-container .container-fluid .title{
    margin:0 auto 32px;
}
.reason-container .container-inner {
    width: 100%;
    display: block;
    position: relative;
}
.reason-container .container-inner ul.feature{
    width:53.191489361702125%;
    margin:0;
    display:table;
    float: left;
}
body.bbl .reason-container .container-inner ul.feature{
    width:100%;
    margin:40px 0 16px;
    float: none;
}
.reason-container .container-inner .img {
    float: right;
}
body.bbl .reason-container .container-inner .img,
body.picofacial .reason-container .container-inner .img,
body.ulthera .reason-container .container-inner .img {
    float: right;
    width: 46%;
    padding-left: 16px;
}
.reason-container .container-inner p{
    margin-bottom: 16px;
}
.reason-container .container-inner p.left{
    width:53.191489361702125%;
    max-width: 576px;
    margin:0;
    display:table;
    float: left;
}
.reason-container h4 {
    margin: 48px auto 24px;
    padding:0;
    font-size: 18px;
    line-height: 1.6;
    position: relative;
}
.reason-container p {
    line-height: 1.769;
}
.reason-container .container-inner p.left,
.reason-container .container-inner div.left{
    width:53.191489361702125%;
    margin:0;
    display:table;
    float: left;
}
body.halo .reason-container .container-inner .pure-u-sm-1-2 {
    margin:  24px auto;
}
body.halo .reason-container .container-inner .pure-u-sm-1-2 p {
    margin:  24px auto 0
}
body.revlite .reason-container .pure-g>[class *= "pure-u"] {
    margin: 0 auto 16px;
}
body.revlite .reason-container .pure-g>[class *= "pure-u"] p{
    padding-left:8px;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
Reason-container02, About-treatment
--------------------------------------------- */
.about-treatment{
    background: #f3f3f3;
}
.reason02-container {
    background: #e7e8ec;
}
.about-treatment,
.reason02-container {
    width: 100%;
    margin:auto;
    position: relative;
}
.about-treatment.pure-g,
.reason02-container.pure-g {
    white-space: normal;
}


/*752PX*/
@media screen and (min-width:751px) {
.about-treatment .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    padding-bottom: 48px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.reason02-container .container-fluid{
    max-width: 1024px;
    padding-top: 48px;
    padding-bottom: 64px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.reason02-container .container-fluid .container-fluid-inner {
    padding: 48px 28px 40px;
    background: #FFF;
    border: solid 4px #dadada;
}
.about-treatment .container-fluid .title,
.reason02-container .container-fluid .title{
    margin:0 auto 48px;
}
.about-treatment .container-fluid .title h2,
.about-treatment .container-fluid .title h3,
.reason02-container .container-fluid .title h2,
.reason02-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.about-treatment .container-inner,
.reason02-container .container-inner {
    width: 100%;
    position: relative;
}
.about-treatment .container-inner ul{
    width: 100%;
    margin:0 0 32px;
    display: table;
    table-layout: fixed;
}
.about-treatment .container-inner .txt-right ul{
    width: 50%;
}
.reason02-container .container-inner ul{
    width: 100%;
    margin:0 0 80px;
    display: table;
    table-layout: fixed;
    //border:solid green;
}
.about-treatment .container-inner .txt-left ul,
.reason02-container .container-inner .txt-left ul{
    width: 50%;
}
.about-treatment .container-inner ul.stuff,
.reason02-container .container-inner ul.stuff{
    margin:0 0 16px;
}
.about-treatment .container-inner ul li,
.reason02-container .container-inner ul li{
    padding:5px;
    font-size: 11px;
    line-height: 1.7;
    display: table-cell;
}
.about-treatment h4,
.reason02-container h4 {
    margin: 0 auto 24px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    position: relative;
}
.reason02-container h4 {
    padding: 0 0 0 2em;
    text-indent: -2em;
}
.about-treatment p,
.reason02-container p {
    margin: 0 0 80px;
    font-size: 14px;
    line-height: 1.769;
}
.about-treatment p .large {
    font-size: 16px;
}
.about-treatment p.stuff,
.reason02-container p.stuff {
    margin: 0 0 32px;
}
.about-treatment .container-inner .phRight,
.reason02-container .container-inner .phRight {
   margin: 0;
}
body.hari .about-treatment .container-inner .left,
body.hari .reason02-container .container-inner .left {
    padding-right: 16px;
}
body.ultherma .reason02-container .container-inner .table_blk {
    table-layout: auto;
}
body.ultherma .reason02-container .container-inner .table_blk .table-cell{
    padding:0 8px;
}
body.revlite .about-treatment .container-fluid{
    padding-top: 80px;
}
body.revlite .about-treatment p.md{
    margin-bottom: 24px;
}
body.revlite .about-treatment .md{
    margin: 0 auto 24px;
    padding:0;
    font-size: 18px;
}
body.revlite .about-treatment h3.heading {
    margin: 32px auto 24px;
    padding:0;
    font-size: 22px;
    line-height: 1.6;
    text-align: left;
    position: relative;
}
body.revlite .about-treatment .type p{
    padding:0 16px;
}
body.revlite .about-treatment .point p.md {
    font-size: 16px;
}
body.revlite .about-treatment .point p .large {
    font-size: 18px;
}
body.revlite .about-treatment .machineImg{
    max-width: 640px;
    padding: 16px;
    margin: 0 auto 80px;
    display: flex;
    justify-content: center;
    border: solid 1px #dfdfdf;
}
body.revlite .about-treatment .machineImg .arrow{
    max-width: 8em;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-flow: row wrap;
    font-size: 19px;
    color: #c44130;
}
body.revlite .about-treatment .excellent [class *= "pure-u"]:last-child{
    padding-left:32px;
}
body.revlite .txt-right p {
    padding: 16px 0 0 16px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.about-treatment .container-fluid,
.reason02-container .container-fluid{
    max-width: 1024px;
    padding-top: 58px;
    padding-bottom: 64px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.reason02-container .container-fluid .container-fluid-inner {
    padding: 24px 16px;
    background: #FFF;
    border: solid 4px #dadada;
}
.about-treatment .container-fluid .title,
.reason02-container .container-fluid .title{
    margin:0 auto 56px;
}
.about-treatment .container-fluid .title h2,
.about-treatment .container-fluid .title h3,
.reason02-container .container-fluid .title h2,
.reason02-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.about-treatment .container-inner,
.reason02-container .container-inner {
    width: 100%;
    position: relative;
}
.about-treatment .container-inner ul,
.reason02-container .container-inner ul {
    width: 100%;
    margin: 0 0 32px;
    vertical-align: top;
    display: table;
    table-layout: fixed;
}
.about-treatment .container-inner ul.lower
.reason02-container .container-inner ul.lower{
    margin: 0 0 52px;
}
.about-treatment .container-inner ul li,
.reason02-container .container-inner ul li{
    width: 33.3333333%;
    padding: 24px 8px 0;
    font-size: 10px;
    line-height: 1.7;
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
}
.about-treatment .container-inner ul.lower li, 
.reason02-container .container-inner ul.lower li {
    padding:16px 8px 0;
}
.about-treatment .container-inner ul li.pure-u-1-2,
.reason02-container .container-inner ul li.pure-u-1-2{
    width: 50%;
}
.about-treatment h4,
.reason02-container h4 {
    margin: 0 auto 16px;
    padding: 0 0 0 2em;
    font-size: 18px;
    font-weight: 500;
    text-indent: -2em;
    line-height: 1.6;
    position: relative;
}
body.hari .about-treatment h4,
body.hari .reason02-container h4 {
    margin: 48px auto 24px;
}
.about-treatment p,
.reason02-container p {
    margin: 0 0 48px;
    font-size: 13px;
    line-height: 1.769;
}
.about-treatment p .large {
    font-size: 16px;
}
.about-treatment p.stuff,
.reason02-container p.stuff {
    margin: 0 0 24px;
}
body.ultherma .reason02-container .container-inner .table_blk {
    table-layout: auto;
}
body.ultherma .reason02-container .container-inner .table_blk .table-cell{
    padding:0 8px;
}

body.doublo .about-treatment .container-inner .txt-left ul.stuff{
    margin:0 0 24px;
}

body.revlite .about-treatment .type p{
    padding:0 0 0 16px;
}
body.revlite .about-treatment p.md{
    margin-bottom: 16px;
}

body.revlite .about-treatment h3.heading {
    margin: 16px auto;
    padding:0;
    font-size: 18px;
    line-height: 1.6;
    text-align: left;
    position: relative;
}
body.revlite .about-treatment .type p{
    padding:0 16px;
}
body.revlite .about-treatment .machineImg{
    padding: 16px 24px;
    margin: 0 auto 48px;
    display: flex;
    justify-content: center;
    border: solid 1px #dfdfdf;
}
body.revlite .about-treatment .machineImg .arrow{
    max-width: 8em;
    padding: 0 16px;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-flow: row wrap;
    color: #c44130;
    text-align: center;
}
}/* --------------------------------------------- SP end */







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

.details-container {
width: 100%;
margin:auto;
position: relative;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f9f9f9+0,f3f3f3+100 */
background: rgb(249,249,249); /* Old browsers */
background: -moz-linear-gradient(top, rgba(249,249,249,1) 0%, rgba(243,243,243,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(249,249,249,1) 0%,rgba(243,243,243,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(249,249,249,1) 0%,rgba(243,243,243,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#f3f3f3',GradientType=0 ); /* IE6-9 */
}

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


/*752PX*/
@media screen and (min-width:751px) {
.details-container .container-fluid{
    max-width: 1024px;
    padding-top: 58px;
    padding-bottom: 32px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.details-container .container-fluid .title{
    margin:0 auto 48px;
}
.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 ul{
    width: 100%;
    margin:0 0 80px;
    display: table;
    table-layout: fixed;
}
.details-container .container-inner .txt-left ul{
    width: 50%;
}
.details-container .container-inner ul.stuff{
    margin:0 0 40px;
}
.details-container .container-inner ul li{
    padding:5px 0;
    font-size: 11px;
    line-height: 1.7;
    display: table-cell;
}
.details-container h4 {
    margin: 0 auto 24px;
    padding:0;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    position: relative;
}
.details-container h5 {
    margin: 0 0 32px;
    font-size: 16px;
    line-height: 1;
}
.details-container p {
    margin: 0 0 64px;
    font-size: 14px;
    line-height: 1.769;
}
body.therma_c .details-container .container-inner .phRight.lg p{
    margin: 0 0 64px;
}
body.therma_c .details-container .container-inner .phRight.lg .list-txt p{
    margin: 0 0 8px;
}
.details-container p.stuff {
    margin: 0 0 32px;
}
.details-container#about-hyaluronic .txt-right p {
    padding:0;
}
.details-container#about-hyaluronic .txt-right ul{
    width: auto;
    max-width:188px;
    margin: 0 0 40px!important;
    float: left;
}
.details-container#about-hyaluronic .txt-right ul li {
    padding: 5px 0;
    font-size: 11px;
    line-height: 1.7;
    display: block;
}
.details-container#about-hyaluronic .txt-right p {
    width:calc(100% - 188px);
}

.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;
}
body.ulthera .details-container .container-inner .link {
    margin: 32px 0 48px;
}
body.hari .details-container .container-inner .left{
    padding-right: 16px;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
    
.details-container .container-fluid{
    padding-top: 64px;
    padding-bottom: 20px;
    margin: 0 auto;
    position: relative;
    display: block;
    z-index: 2;
    overflow: hidden;
}
.details-container .container-fluid .title{
    margin:0 auto 56px;
}
.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 ul{
    margin:0 0 40px;
}
.details-container .container-inner ul.stuff{
    margin:0 0 30px;
}
.details-container .container-inner ul li{
    font-size: 13px;
    line-height: 1.769;
}
body.ulthera .details-container .container-inner ul li{
    margin:8px auto;
}
.details-container h4 {
    margin: 0 auto 16px;
    padding:0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
    position: relative;
}
.details-container h5 {
    margin: 0 0 14px;
    font-size: 14px;
    line-height: 1.769;
}
.details-container p {
    margin: 0 0 44px;
    font-size: 13px;
    line-height: 1.769;
}

.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#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;
}
.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;
}
body.ulthera .details-container .container-inner .link {
    margin: 24px 0;
}
body.hari .details-container .container-inner .img.pure-u-1{
    margin: 0 0 32px;
}
}/* --------------------------------------------- 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:751px) {

.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:750px) {

.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:751px) {
    
.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: http://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.shimi 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:751px) 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:750px) {
    
.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: http://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.shimi 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 */







/* ---------------------------------------------
Menu-container
--------------------------------------------- */
.menu-container {
    width: 100%;
    margin:auto;
}
.menu-container.pure-g {
    white-space: normal;
}
.menu-container .container-inner li{
  position: relative;
}
.menu-container a{
  width: 100%;
  height: 100%;
}
.menu-container a,
.menu-container a:hover{
    text-decoration: none;
}
.menu-container.laser dl dt a.img{
    border: solid 1px #e7e8ec;
}


/*752PX*/
@media screen and (min-width:751px) {
.menu-container {
    background: #fcfcfc;
}
body.info .menu-container {
    background: #f3f3f3;
}
.menu-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    padding-bottom:64px;
    margin:0 auto;
    overflow: hidden;
}
.menu-container#menu-other .container-fluid{
    padding-top:32px;
}
body.operation .menu-container .container-fluid{
    padding-top:32px;
}
.menu-container .container-fluid .title{
    margin:0 auto 48px;
}
.menu-container .container-inner {
    width: 100%;
}
.menu-container .container-inner p {
    margin-top: 24px;
}
.menu-container .container-inner ul{
    margin: 0 -16px;
    display: block;
}
.menu-container .container-inner li{
    margin: 16px;
    width: calc(33.333333% - 36px);
    /* border: solid; */
    box-sizing: border-box;
    display: inline-block;
}
.menu-container.laser .container-inner li{
    margin: 16px;
    width: calc(50% - 36px);
}
.menu-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    display: table;
    table-layout: fixed;
    background: #FFF;
}
.menu-container.laser dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding:16px;
    display: block;
    background: #FFF;
}
.menu-container dl dt{
    width: 100%;
    //height: 178px;
    margin: 0 auto;
    padding: 16px 16px 0;
    display: block;
    border: none;
}
.menu-container dl dd .md{
    width: 100%;
    height: 100%;
    font-size: 16px;
    margin: 0 auto 0;
    text-align: left;
    display: block;
}
.menu-container dl dt .img{
    width: 100%;
    height: 125px;
    margin: 0 auto;
    overflow:hidden; 
    display: block;
}

.menu-container dl dt img{
    max-width: 100%;
    height: auto;
}
.menu-container dl dt img{
    width: auto;
    max-width: none;
    height: 125px;
}
.menu-container.laser dl dt img{
    width: auto;
    max-width: none;
    height: 175px;
}
body.keana .menu-container.laser dl dt img{
    margin-left: -18%;
}

.menu-container dl dd{
    width: 100%;
    padding:16px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    display: block;
    box-sizing: border-box;
}

.menu-container.laser dl dt{
    width: 128px;
    height: 178px;
    margin: 0 auto;
    padding: 0;
    display: table-cell;
    vertical-align: top;
}
.menu-container.laser dl dt .img{
    width: 128px;
    height: auto;
}
.menu-container.laser dl dd{
    width: calc(100% - 128px);
    padding:0 16px 0 32px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    display: table-cell;
}
.menu-container.laser dl dd a.md,
.menu-container.laser dl dd span.md{
    width: 100%;
    margin: 0 auto;
    padding:8px 0;
    font-size: 18px;
    display: block;
}
.menu-container.laser dl dd.link{
    width:100%;
    padding:16px 16px 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    text-align: center;
    display: block;
}
.menu-container.laser dl dd.link a.pure-button {
    width: 172px;
    min-width: 172px;
    margin: 0 auto;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}
.menu-container.laser dl dd.txt{
    width:100%;
    padding:16px 0 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    text-align: left;
    display: block;
}

body.menu.shiwa .menu-container .container-inner div.pure-g{
    margin-top: 48px;
    margin-bottom: 16px;
}
body.menu.shiwa .menu-container .container-inner div.pure-g>div{
    padding:0 5px;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
.menu-container {
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fcfcfc+0,f3f3f3+50 */
background: rgb(252,252,252); /* Old browsers */
background: -moz-linear-gradient(top, rgba(252,252,252,1) 0%, rgba(243,243,243,1) 50%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(252,252,252,1) 0%,rgba(243,243,243,1) 50%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(252,252,252,1) 0%,rgba(243,243,243,1) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfcfc', endColorstr='#f3f3f3',GradientType=0 ); /* IE6-9 */
}
.menu-container .container-fluid{
    padding-top:48px;
    padding-bottom:24px;
    margin:0 auto;
    overflow: hidden;
}
body.datsumou .menu-container .container-fluid{
    padding-bottom:48px;
}
body.operation .menu-container .container-fluid{
    padding-top:48px;
}
.menu-container .container-fluid .title{
    margin:0 auto 40px;
}
.menu-container .container-fluid .title h2,
.menu-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.menu-container .container-inner {
    width: 100%;
}
.menu-container .container-inner p {
    margin-top: 24px;
    line-height: 1.571;
}
.menu-container .container-inner ul{
    width: 100%;
    margin: 0 auto;
    display: block;
}
.menu-container .container-inner li{
    width: 100%;
    margin: 0 0 24px;
    box-sizing: border-box;
    display: inline-block;
}
.menu-container.laser .container-inner li{
    width: 100%;
    margin: 0 0 24px;
}
.menu-container dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding:16px;
    display: block;
    background: #FFF;
}
.menu-container dl dt{
    width: 96px;
    height: 105px;
    margin: 0 auto;
    padding: 0;
    display: table-cell;
    table-layout: fixed;
    vertical-align: top;
}
.menu-container dl dt .img{
    width: 96px;
    height: auto;
    display: block;
}
.menu-container.laser dl dt a.img {
    display: block;
}
.menu-container dl dd{
    width: calc(100% - 96px);
    padding:0 16px;
    margin: 0 auto;
    font-size: 13px;
    vertical-align: middle;
    line-height:1.571;
    display: table-cell;
}
.menu-container.laser dl dd{
    vertical-align: top;
}
.menu-container dl dd a.md,
.menu-container dl dd span.md{
    width: 100%;
    margin: 0 auto;
    padding:8px 0;
    font-size: 15px;
    display: block;
}
.menu-container dl dd.link{
    width:100%;
    padding:16px 16px 0;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.571;
    text-align: center;
    display: block;
}
.menu-container dl dd.link a.pure-button {
    width: 167px;
    min-width: 167px;
    margin: 0 auto;
    font-size: 13px;
    display: inline-block;
    box-sizing: border-box;
}
.menu-container.laser dl dd.txt{
    width:100%;
    padding:16px 0 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    text-align: left;
    display: block;
}
body.menu.shiwa .menu-container .container-inner div.pure-g{
    margin-top: 19px;
    margin-bottom: 11px;
}
body.menu.shiwa .menu-container .container-inner div.pure-g>div{
    padding:5px;
}
}/* --------------------------------------------- SP end */





/* ---------------------------------------------
Menu-container Index
--------------------------------------------- */
.menu-container.operation {
    background: #f3f3f3;
}

/*752PX*/
@media screen and (min-width:751px) {
.menu-container.operation .container-inner li{
    width: calc(100% - 32px);
    margin: 0 16px 16px;
    padding: 32px 24px;
    background-color: #FFF;
}
.menu-container.operation .container-fluid .title {
    margin: 0 auto 24px;
    text-align: left;
}
.menu-container.operation .container-fluid .title h3 {
    font-size: 24px;
    letter-spacing: 0;
    box-sizing: border-box;
}
.menu-container.operation .title h3:after {
    content: "";
    width: 100%;
    height: 1px;
    margin: 24px 0 0;
    background: #797979;
    display: block;
}
.menu-container.operation .container-fluid p {
    margin-bottom: 32px;
    font-size: 14px;
    line-height: 1.769;
}
.menu-container.operation dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    //padding:16px;
    display: table;
    table-layout:auto;
    //background: #FFF;
}
.menu-container.operation dl dt{
    width:260px;
    //height: 178px;
    margin: 0 auto;
    padding: 0;
    display: table-cell;
    vertical-align: top;
}
.menu-container.operation dl dt img{
    width: 260px;
    height: auto;
}
.menu-container.operation dl dd{
    width: calc(100% - 260px);
    padding: 0 0 0 40px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    display: table-cell;
}
.menu-container.operation dl dd .link{
    width: 100%;
    padding:16px 0 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    text-align: right;
    display: block;
}
.menu-container.operation dl dd .link a.pure-button {
    width: 172px;
    min-width: 172px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.3;
    display: inline-block;
    box-sizing: border-box;
}
.menu-container.operation ul.feature{
    width: auto;
    margin: 0;
    padding-right: 40px;
    display: inline-block;
    vertical-align: top;
}
.menu-container.operation ul.feature li {
    width: 100%;
    margin: 0 0 6px;
    font-size: 15px!important;
    background: url(../img/common/ic_li.svg) no-repeat 0 center;
    background-size: 9px 10px;
}
.menu-container.operation ul.feature li a:hover{
    text-decoration: underline;
}
.clinical_policy{
    margin: 32px auto 0;
    padding: 32px 0;
    font-size: 24px;
    line-height: 1.6;
    text-align: center;
    position: relative;
}
.clinical_policy:after, .clinical_policy:before {
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    clear: both;
    display: block;
    background: -moz-linear-gradient(left, rgba(0,2,34,0) 0%, rgba(0,2,34,1) 50%, rgba(0,2,34,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%);
    background: linear-gradient(to right, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000222', endColorstr='#00000222',GradientType=1 );
}
.clinical_policy:before {
    top: 0;
}
.clinical_policy:after {
    bottom: 0;
}
.menu-container.operation .clinical_policy dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding:32px 32px 0;
    background-color: transparent;
}
.menu-container.operation .clinical_policy dl dt,
.menu-container.operation .clinical_policy dl dt img{
    width: 200px;
}
.menu-container.operation .clinical_policy dl dd {
    width: calc(100% - 228px);
    text-align: left;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
.menu-container.operation .container-inner li{
    padding: 24px 16px;
    background-color: #FFF;
}
.menu-container.operation .container-fluid .title {
    margin: 0 auto;
    text-align: left;
}
.menu-container.operation .container-fluid .title h3 {
    font-size: 20px;
    letter-spacing: 0;
    box-sizing: border-box;
}
.menu-container.operation .title h3:after {
    content: "";
    width: 100%;
    height: 1px;
    margin: 16px 0 0;
    background: #797979;
    display: block;
}
.menu-container.operation .container-fluid p {
    margin-bottom: 16px;
    font-size: 13px;
    line-height: 1.769;
}
.menu-container.operation dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
    display: block;
}
.menu-container.operation dl dt {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    display: block;
}
.menu-container.operation dl dt img{
    max-width: 80%;
}
.menu-container.operation dl dd{
    width: 100%;
    padding: 24px 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    display: block;
}
.menu-container.operation dl dd .link{
    width: 100%;
    padding:16px 0 0;
    margin: 0 auto;
    font-size: 13px;
    line-height: 1.769;
    display: block;
}

.menu-container.operation ul.feature{
    width: auto;
    margin: 0;
    vertical-align: top;
}
.menu-container.operation ul.feature li {
    margin: 0 0 6px;
    font-size: 14px!important;
    background: url(../img/common/ic_li.svg) no-repeat 0 center;
    background-size: 9px 10px;
}
.menu-container.operation ul.feature li a:hover{
    text-decoration: underline;
}
.clinical_policy{
    margin: 48px auto 0;
    padding: 32px 0 16px;
    font-size: 18px;
    line-height: 1.6;
    text-align: center;
    position: relative;
}
.clinical_policy:after, .clinical_policy:before {
    content: "";
    width: 100%;
    height: 1px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    clear: both;
    display: block;
    background: -moz-linear-gradient(left, rgba(0,2,34,0) 0%, rgba(0,2,34,1) 50%, rgba(0,2,34,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%);
    background: linear-gradient(to right, rgba(0,2,34,0) 0%,rgba(0,2,34,1) 50%,rgba(0,2,34,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000222', endColorstr='#00000222',GradientType=1 );
}
.clinical_policy:before {
    top: 0;
}
.clinical_policy:after {
    bottom: 0;
}
.menu-container.operation .clinical_policy dl {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 24px 16px 0;
    background-color: transparent;
}
.menu-container.operation .clinical_policy dl dd {
    padding: 0;
    text-align: left;
}
}/* --------------------------------------------- SP 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:751px) {
.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:750px) {
.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:751px) {
.flow-container {
    background: #fcfcfc;
}
.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 0 32px;
    color: #333;
    font-size: 1rem;
    display: table;
    position: relative;
    //border-bottom: dotted 1px #777;
    background: url(../img/common/dotline.png) repeat-x left bottom;
}
.flow-container .step:last-child,
.flow-container .step.last {
    border-bottom:none;
    background:none;
}
.flow-container .step .step_inner {
    padding: 0 32px 0 0;
    display: table-cell;
    vertical-align: top;
    position: relative;
}
.flow-container .step .img{
    width: 280px;
    padding: 0 32px 0 0;
    display: table-cell;
    position: relative;
}
.flow-container .step p {
    padding:16px 0 24px;
    font-size: 14px;
    display: block;
}
.flow-container .step .flow {
    width: 100%;
    min-height: 100px;
    display: table;
    position: relative;
}
.flow-container .step .svg polygon {
    fill: #dfdfdf;
}
.flow-container .step .line:after {
    content: "";
    width: 80px;
    height: 64px;
    margin: auto;
    background: url(/assets/img/pc/common/arrow.svg) no-repeat center 0;
    background-size: contain;
    display: block;
    position: absolute;
    top: 38px;
    left: 0;
    z-index: 1;
}
.flow-container .step:last-child .line:after,
.flow-container .step.last .line:after {
    content: none;
}
/*.flow-container .step:after {
    content: "";
    width: 50px;
    height: 32px;
    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;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.flow-container .step:last-child:after {
    content: none;
}*/
.flow-container .step .line {
    width: 100%;
    color: #58170f;
    vertical-align: top;
    //white-space: nowrap;
    position: relative;
    display: block;
}
.flow-container .step .txt {
    vertical-align: top;
    padding: 0 0 0 100px;
    display: block;
}
.flow-container .step .ttl {
    width: calc(100% - 6.5em);
    margin: auto;
    padding: 4px 0 0;
    color: #58170f;
    //white-space: normal;
    vertical-align: top;
    display: inline-block;
}
.flow-container .step .state {
    width: 5em;
    padding: 4px 0;
    /* height: 48px; */
    margin: 0 16px 0 0;
    color: #FFF;
    display: inline-block;
    text-align: center;
    vertical-align: top;
    background: #58170f;
}
.flow-container .step .txt p {
    padding: 24px 0 0 0;
    font-size: 14px;
    line-height: 2;
}


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



@media screen and (max-width:750px) {
.flow-container {
    background: #fcfcfc;
}
.flow-container .container-fluid{
    padding-top:48px;
    padding-bottom:24px;
    margin:0 auto;
    overflow: hidden;
}
.flow-container .container-fluid .title{
    margin:0 auto 32px;
}
.flow-container .container-fluid .title h2,
.flow-container .container-fluid .title h3 {
    letter-spacing: 0em;
}
.flow-container .container-inner {
    width: 100%;
}
.flow-container .step {
    width: 100%;
    margin: 16px auto 24px;
    padding: 0 0 16px;
    color: #333;
    font-size: 14px;
    display: table;
    position: relative;
    //border-bottom: dotted 1px #777;
    background: url(../img/common/dotline.png) repeat-x left bottom;   
}
.flow-container .step:last-child {
    border-bottom:none;
    background:none;
}
.flow-container .step .step_inner {
    padding: 0;
    font-size: 14px;
    display: table-cell;
    vertical-align: top;
    position: relative;
}
.flow-container .step .img{
    display: inline-block;
    margin-top: 14px;
    position: relative;
    width: 40.42553191489361%;
    float: right;
}
.flow-container .step p {
    padding:16px 0 24px;
    font-size: 14px;
    display: block;
}
.flow-container .step .flow {
    width: 100%;
    min-height: 100px;
    padding-bottom: 40px;
    display: block;
    position: relative;
}
.flow-container .step:last-child .flow {
    padding-bottom: 0;
}
.flow-container .step .svg polygon {
    fill: #dfdfdf;
}
.flow-container .step .flow:after {
    content: "";
    width: 32px;
    height: 32px;
    margin: auto;
    background: url(/assets/img/sp/common/arrow.svg) no-repeat center 0;
    background-size: contain;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.flow-container .step.last .flow:after,
.flow-container .step:last-child .flow:after {
    content: none;
}
.flow-container .step .line {
    width: 100%;
    color: #58170f;
    vertical-align: top;
    position: relative;
    display: block;
}
.flow-container .step .txt {
    width: 55%;
    vertical-align: top;
    padding: 0;
    display: inline-block;
}
.flow-container .step .txt.no-img {
    width: 100%;
}
.flow-container .step .ttl {
    /* width: 100%; */
    /* height: 48px; */
    margin: auto;
    padding: 4px 0 0;
    color: #58170f;
    vertical-align: top;
    display: inline-block;
}
.flow-container .step .state {
    width: 4.5em;
    padding: 4px 0;
    margin: 0 8px 0 0;
    color: #FFF;
    //display: -ms-flexbox!important;
    display: inline-block;
    vertical-align: top;
    text-align: center;
    background: #58170f;
}
.flow-container .step .txt p {
    padding: 16px 0 0 0;
    font-size: 14px;
    line-height: 1.6;
}
}/* --------------------------------------------- SP end */





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

/*752PX*/
@media screen and (min-width:751px) {
.price-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    padding-bottom:64px;
    margin:0 auto;
    overflow: hidden;
}
.price-container .container-fluid .title{
    margin:0 auto 48px;
}
.price-container .container-inner {
    width: 100%;
}
.price-container .container-inner .link{
    width: 100%;
    margin:32px 0;
    display: table;
    text-align: right;
}
.price-container .container-inner .link a.pure-button{
    width: 162px;
    min-width: 162px;
    margin:0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}
.price-container .md {
    margin: 0 auto 16px;
    padding:0;
    font-size:18px;
    line-height: 1.6;
    text-align: left;
    position: relative;
}
.price-container .md:not(.first) {
    margin: 64px auto 16px;
}
body.menu.ulthera .price-container .md a,
body.menu.hari .price-container .md a{
    pointer-events:none;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
.price-container .container-fluid{
    padding-top:48px;
    padding-bottom:40px;
    margin:0 auto;
    overflow: hidden;
}
.price-container .container-fluid .title{
    margin:0 auto 32px;
}
.price-container .container-fluid .title h2,
.price-container .container-fluid .title h3{
    letter-spacing: 0em;
}
.price-container .container-inner {
    width: 100%;
}
.price-container .container-inner li{
    width: 100%;
    margin: 16px 0;
    box-sizing: border-box;
    display: inline-block;
}
.price-container .container-inner .link{
    width: 100%;
    padding: 24px 0;
    display: table;
    text-align: center;
}
.price-container .container-inner .link a.pure-button{
    width: 197px;
    min-width: 197px;
    margin:0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}
.price-container .md{
    margin: 0 auto 16px;
    padding:0;
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
    position: relative;
}
.price-container .md:not(.first) {
    margin: 48px auto 16px;
}
body.menu.ulthera .price-container .md a,
body.menu.hari .price-container .md a{
    pointer-events:none;
}
}/* --------------------------------------------- SP end */




/* ---------------------------------------------
Price-container(/sub/m_price.html)
--------------------------------------------- */
/*752PX*/
@media screen and (min-width:751px) {
body.price .price-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    padding-bottom:64px;
    margin:0 auto;
    overflow: hidden;
}
body.price .price-container .container-fluid .title{
}
body.price .price-container .container-inner {
}
body.price .price-container .container-fluid-inner h3.heading{
    margin-top:64px;
    padding-bottom: 24px;
    font-size: 20px;
    border-bottom: solid 1px #777;
}
body.price .price-container .container-fluid-inner h3.heading:first-child{
    margin-top:0;
}
body.price .price-container .container-fluid-inner h4.heading{
    margin:0 0 16px!important;
    padding:40px 0 0!important;
    font-size:18px;
    border-bottom: none;
}
body.price .price-container .container-inner .link{
    width: 100%;
    margin:32px 0;
    display: table;
    text-align: right;
}
body.price .price-container .container-inner .link a.pure-button{
    width: 162px;
    min-width: 162px;
    margin:0;
    font-size: 12px;
    display: inline-block;
    box-sizing: border-box;
}
body.price .price-container .p_ulthera .md.first {
    display: none;
}
body.price .price-container .md:not(.first) {
    margin-top:40px;
}
body.price .price-container .md.small{
    font-size: 16px;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
body.price .price-container .container-fluid{

}
body.price .price-container .container-fluid .title{
}
body.price .price-container .container-fluid-inner h3.heading{
    margin-top:40px;
    padding-bottom: 16px;
    font-size: 18px;
    border-bottom: solid 1px #777;
}
body.price .price-container .container-fluid-inner h3.heading:first-child{
    margin-top:0;
}
body.price .price-container .container-fluid-inner h4.heading{
    margin:0 0 16px!important;
    padding:32px 0 0!important;
    font-size:16px;
    border-bottom: none;
}
body.price .price-container .container-inner {
    width: 100%;
}
body.price .price-container .container-inner li{
}

body.price .price-container .p_ulthera .md.first {
    display: none;
}
body.price .price-container .md:not(.first) {
    text-align: left;
}
}/* --------------------------------------------- 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 th{
    width: 25%;
    color: #222;
    letter-spacing: 0;
    border: solid 1px #777777;
}
div.pricelist-table .table tbody td{
    /*width : -webkit-calc(100% / 4);
    width: calc(100% / 4);*/
    width: 25%;
    padding: 10px;
    color: #222;
    text-align: center;
    overflow: hidden;
    border: solid 1px #777777;
    background: transparent;
}
div.pricelist-table table.table.col-3,
div.pricelist-table table.table.col-2,
div.pricelist-table table.table.col-1 {
    //border-bottom: solid 1px #777777;
}
div.pricelist-table .table.col-3 tbody td,
div.pricelist-table .table.col-2 tbody td,
div.pricelist-table .table.col-1 tbody td{
    border-top: none;
}

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 : -webkit-calc(100% / 4 * 1);
    width: calc(100% / 4 * 1);*/
    width: 25%;
    font-size: 16px;
    color: #6c6c6c;
    background: #eee!important;
}
.firstvisit-container div.pricelist-table .table tbody td {
    /*width : -webkit-calc(100% / 3);
    width: calc(100% / 3)!important;*/
    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;
}
}/* --------------------------------------------- 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.col-3,
div.pricelist-table .table.col-2,
div.pricelist-table .table.col-1 {
    margin-bottom: 16px;
}
div.pricelist-table table.table thead {
    width: 16.545718432510885%;
    //max-width: 56px;
    display: inline-block;
    float: left;
    border-left: solid 1px #777;
    border-bottom: solid 1px #777;
}
div.pricelist-table .table.col-3 thead.first,
div.pricelist-table .table.col-2 thead.first,
div.pricelist-table .table.col-1 thead.first {
    width: 100%!important;
    max-width: 100%;
    display: block!important;
    float: none!important;
    border-right: solid 1px #777;
    border-bottom: none;
}

div.pricelist-table table.table thead tr {
    width: 100%;
    display: block;
}
div.pricelist-table table.table thead th {
    width: 100%;
    height: 64px;
    //min-height: 64px;
    padding: 16px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-align: center;
    border-top: solid 1px #777;
    border-right: none;
    border-left: none;
    border-bottom: none;
}
div.pricelist-table .table.col-3 thead.first th,
div.pricelist-table .table.col-2 thead.first th,
div.pricelist-table .table.col-1 thead.first th {
    padding: 10px 20px!important;
    //writing-mode: tb-rl;
    -o-writing-mode: lr-tb!important;
    -webkit-writing-mode: lr-tb!important;
    writing-mode: lr-tb!important;
    height: auto!important;
    min-height: auto!important;
}
div.pricelist-table .table.col-3 thead.first th:last-child,
div.pricelist-table .table.col-2 thead.first th:last-child,
div.pricelist-table .table.col-1 thead.first th:last-child{
    color: #222;
    background: transparent;
}
div.pricelist-table table.table th.long:first-child{
    width: 100%;
    //height: 200px;
}
div.pricelist-table table.table th:last-child {
   width: 100%;
    height: 130px;
}

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% - 16.545718432510885%);
    display: inline-block;
    float: left;
    position: relative;
    letter-spacing: -0.4em;
    border-right: solid 1px #777;
    border-bottom: solid 1px #777;
}
div.pricelist-table table.table tbody tr {
    width: 50%;
    display: inline-block;
    vertical-align: middle;
    letter-spacing: normal;
}
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%;
    display: inline-block;
    vertical-align: top;
    letter-spacing: normal;
}
div.pricelist-table table.table tbody td {
    width: 100%;
    min-height: 64px;
    padding: 16px 8px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-top: solid 1px #777;
    border-left: solid 1px #777;
    border-right: none;
    border-bottom: none;
    background: transparent;
}
div.pricelist-table table.table tbody td.long:first-child {
   width: 100%;
   //height: 200px;
}
div.pricelist-table .table.col-3 tbody td:first-child,
div.pricelist-table .table.col-2 tbody td:first-child,
div.pricelist-table .table.col-1 tbody td:first-child {
   width: 100%;
   height: auto;
}
div.pricelist-table table.table tbody td:last-child {
   width: 100%;
    height: 130px;
}
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;
}
}/* --------------------------------------------- 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:751px) {
#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:750px) {
#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:751px) {
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:750px) {
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: 100%;
    max-width: 1024px;
    padding-top: 24px;
    padding-bottom: 40px;
    margin: 0 auto 0 auto;
    overflow: hidden;
}
main .section.navBox .pure-g {
    width: 100%;
    margin: 0 0 0 -8px;
}
main .section.navBox div.pure-u-sm-1-4 {
    //width: 25%;
    //min-width: 184px;
    padding: 8px;
    display: inline-block;
    //margin: 16px 0;
    //padding: 0 16px 0 18px;
    //font-size: 13px;
    //display: block;
    //position: relative;
    //background: url(../img/common/arrow_line_blk.svg) left 8px no-repeat;
    //background-size: 9px 5px;
}

main .section.navBox a{
display: block;
    width: 100%;
    height: 56px;
    /* margin: 8px; */
    padding: 10px 30px;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row wrap;
    background: url(../img/common/arrow_line_blk.svg) 16px center no-repeat;
    background-size: 9px 5px;
    border: solid 1px #acacac;
}
main .section.navBox .trigger{
    display: 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: 100%;
    margin:0 auto;
    overflow: hidden;
    background: #FFF;
}
main .section.navBox .pure-g {
    width: 100%;
    display: none;
    border-top:solid 1px #CCC;
}
main .section.navBox div.pure-u-sm-1-4 {
    width: 100%;
    margin:0;
    padding: 0;
    font-size: 13px;
    display: block;
    position: relative;
}
main .section.navBox a{
    padding:16px 16px 16px 32px;
    display: block;
    background: url(../img/common/arrow_line_blk.svg) 16px center no-repeat;
    background-size: 9px 5px;
    border-bottom:solid 1px #CCC;
}
main .section.navBox h4.trigger,
.aside h4.trigger{
    padding:16px 16px 16px 32px;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    vertical-align: top;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}
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),
.aside 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),
.aside 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),
.aside 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),
.aside 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),
.aside h4.trigger.open div span:nth-of-type(2) {
  opacity: 1;
}
main .section.navBox h4.trigger.open div span:nth-of-type(3),
.aside h4.trigger.open div span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .25s forwards;
  animation: active-menu-bar03 .25s forwards;
  //opacity: 0;
}

}/* ---------------------------- 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;
}
body.info .aside h4.trigger {
    display: none;
}
}

@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;
}


body.info .aside{
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    background: #FFF;
    display: block!important;
}
body.info .aside nav {
    width: 100%;
    position: relative!important;
    top:0!important;
    left:0!important;
}
body.info .aside nav .inner{
    display: none;
    border-top: solid 1px #CCC;
}
body.info .aside .aside_menu ul li {
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 13px;
    display: block;
    position: relative;
}
body.info .aside .aside_menu ul li a {
    padding: 16px 16px 16px 32px;
    display: block;
    background: url(../img/common/arrow_line_blk.svg) 16px center no-repeat;
    background-size: 9px 5px;
    border-bottom: solid 1px #CCC;
}
body.info .aside h4.trigger {
    padding: 16px 16px 16px 32px;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    vertical-align: top;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}
}



/* -------------------------------------------------------------------
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; 
}
.campaign-container .title h2:after {
    content: none;
    //width: 100%;
    //height: 1px;
    //margin: 24px 0 0;
    //background: #797979;
    //display: block;
}
.campaign-container a{
  width: 100%;
  height: 100%;
}
.campaign-container a,
.campaign-container a:hover{
    text-decoration: none;
}

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;
}



/*752PX*/
@media screen and (min-width:751px) {
.campaign-container .container-fluid{
    max-width: 1024px;
    padding-top:80px;
    padding-bottom:64px;
    margin:0 auto;
    overflow: hidden;
}
.campaign-container .container-inner {
    margin:0 auto 48px;
    padding:32px 24px;
}
.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: calc(100% - 32px);
    height: 100%;
    margin: 0 16px 16px;
    padding:16px 32px 24px 24px;
    display: table;
    table-layout: fixed;
    background: #f8f8f8;
}
.campaign-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8px;
    position: relative;
    display: block;
}
.campaign-container dl dt h3{
    font-size: 19px;
    line-height: 1.769;
    font-weight: 500;
}
.campaign-container dl dt h3 small{
    font-size: 15px;
    font-weight: 400;
}
.campaign-container dl dd{
    width: 100%;
    padding:0;
    margin: 0 auto;
    display: flex;
    position: relative;
    justify-content: flex-end;
}
.campaign-container dl dd div.price{
    //margin-top:16px;
    display: block;
}
.campaign-container dl dd div.price>div{
    letter-spacing: .05em;
    display: inline-block;
}
.campaign-container dl dd div.price>div.normal{
    font-size: 20px;
    font-weight: 700;
}
.campaign-container dl dd div.price>div.normal small{
    font-size: 14px;
    font-weight: 400;
}
.campaign-container dl dd div.price>div.large{
    font-size: 24px;
    font-weight: 700;
    color:#c44130;
}
.campaign-container dl dd div.price>div.large small{
    font-size: 18px;
    font-weight: 400;
}
.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 h4.heading {
    margin-top: 48px;
    margin-bottom: 32px!important;
    padding-bottom: 20px!important;
    /* border-bottom: none; */
    font-size: 22px;
    font-weight: 500;
}

.campaign-container ul {
    margin: 24px 0 16px;
    padding:0 0 0 40px;
    display: block;
}
.campaign-container ul li{
    line-height: 2;
}

.campaign-container .blk {
    width: calc(100% - 32px);
    height: 100%;
    margin: 32px 16px 16px;
    padding:16px 32px 24px 24px;
    display: block;
    background: #FFF;
    border:solid 1px #dedede;
}
.campaign-container .blk p{
    line-height: 1.714em;
    margin:8px 0 0;
}
.campaign-container .blk h4{
    font-weight: 700;
}
}/* --------------------------------------------- PC end */



@media screen and (max-width:750px) {
.campaign-container .container-fluid{
    padding-top:48px;
    padding-bottom:24px;
    margin:0 auto;
    overflow: hidden;
}
.campaign-container .container-inner {
    margin:0 auto 32px;
    padding:24px 16px;
}
.campaign-container .container-fluid .title{
    margin:0 auto 32px;
    text-align: left
}

.campaign-container .container-fluid .title h2 {
    font-size: 18px;
    color: #c44130;
    font-weight: 500;
    letter-spacing: 0;
    box-sizing: border-box;
}

.campaign-container .container-inner p {
    margin:0 0 16px;
    font-size: 13px;
    line-height:1.714;
}
.campaign-container .container-inner p.large {
    font-size: 16px;
    font-weight: 500;
}
.campaign-container .container-inner p.md {
    margin:32px 0 8px;
    font-size: 14px;
}
.campaign-container dl {
    width: 100%;
    height: 100%;
    margin: 0 0 8px;
    padding:16px 16px 0;
    display: table;
    table-layout: fixed;
    background: #f8f8f8;
}
.campaign-container dl dt{
    width: 100%;
    margin: 0 auto;
    padding: 0 0 8px;
    display: block;
}
.campaign-container dl dt h3{
    font-size: 14px;
    line-height:1.3;
    font-weight: 500;
}
.campaign-container dl dt h3 small{
    font-size: 12px;
    font-weight: 400;
}
.campaign-container dl dd div.price{
    width: 100%;
    padding:0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-flow: row wrap;
}
.campaign-container dl dd{
    width: 100%;
    padding:0;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
}
.campaign-container dl dd div.price{
    margin-bottom:16px;
    //display: block;
}
.campaign-container dl dd div.price>div{
    display: inline-block;
}
.campaign-container dl dd div.price>div.normal{
    font-size: 16px;
    font-weight: 700;
}
.campaign-container dl dd div.price>div.normal small{
    font-size: 12px;
    font-weight: 400;
}
.campaign-container dl dd div.price>div.large{
    font-size: 20px;
    font-weight: 700;
    color:#c44130;
}
.campaign-container dl dd div.price>div.large small{
    font-size: 14px;
    font-weight: 400;
}
.campaign-container dl dd div.price>div.arrow{
    width: 32px;
    height: 17px;
    background:url(../img/common/arrow_price.svg) no-repeat center center;
    background-size:24px; 
}
.campaign-container h4.heading {
    margin-top: 40px;
    margin-bottom: 16px!important;
    font-size: 17px;
    font-weight: 500;
}

.campaign-container ul {
    margin: 16px 0 8px;
    padding:0 ;
    font-size: 13px;
    display: block;
}
.campaign-container ul li{
    line-height: 1.714;
}

.campaign-container .blk {
    width: 100%;
    height: 100%;
    margin: 24px 0 16px;
    padding:16px;
    display: block;
    background: #FFF;
    border:solid 1px #dedede;
}
.campaign-container .blk p{
    line-height: 1.714;
    font-size: 13px;
    margin:8px 0 0;
}
.campaign-container .blk h4{
    font-weight: 700;
}
}/* --------------------------------------------- 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:751px) {
.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;
}
body.halo .report-container .container-fluid{
    padding-top: 80px;
}
body.halo .report-container .container-inner .pure-g .ph{
    margin:0;
    padding:0 16px;
}
body.halo .report-container .container-inner .pure-g .ph img{
    margin:0 auto 24px;
}
}/* --------------------------------------------- PC end */


@media screen and (max-width:750px) {
.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;
}

body.halo .report-container .container-inner .pure-g{
    margin: 0 -8px 24px;
}
body.halo .report-container .container-inner .pure-g .ph{
    margin:24px 0 0;
    padding:0 8px;
}
body.halo .report-container .container-inner .pure-g .ph img{
    margin:0 0 16px;
}
body.halo .report-container .container-inner .pure-g p.pure-u-1{
    padding:0 8px;
}
}/* --------------------------------------------- SP end */
