@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap');
html,body{
  font-family: sans-serif;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #2D2D2D;
  line-height: 1.7;
  letter-spacing: 0.03em;
}
header,footer,div,section,article,nav,a,p,span,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,img,dl,dt,dd,form,input,textarea{ box-sizing: border-box; }
::selection { background: #ddd; }
::-moz-selection { background: #ddd; }
a{ color: #777;transition: 0.3s;text-decoration: none; }
a:hover{ opacity: 0.7;cursor: pointer; }
img{
  max-width: 100%;
  display: inline-block;
}
.clear{ clear: both; }


.times{
  font-family: 'Poppins', sans-serif;
  font-weight: bold;
}
.mincho{
font-weight: bold;
}
.gochic{
  font-family: sans-serif;
}
.f14{ font-size: 87.5%; }
.f18{ font-size: 112.5%; }
.f20{ font-size: 125%; }
.f21{ font-size: 131.2%; }
.f22{ font-size: 137.5%; }
.f24{ font-size: 150%; }
.f28{ font-size: 175%; }
.f32{ font-size: 200%; }

.marker{ background: linear-gradient(transparent 60%, #fff25f 60%); }
.gold{ color: #002c6e; }
.pink{ color: #E20045; }
.red{ color: #C10416; }
.blue{ color: #12B5CB; }

.mb2em{ margin-bottom: 2em; }
.mt2em{ margin-top: 2em; }
.mt0{ margin-top: 0 !important; }
.pb0{ padding-bottom: 0 !important; }

.center{ text-align: center; }



header{
  width: 100%;
  position: relative;
}
nav{
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  transition: 0.6s;

  padding: 0.81em 0.94em;
  border-bottom: 1px solid rgba(255,255,255,0.5);
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

header h1.logo{
  width: 17.18em;
  margin-right: 5.25em;
  transition: 0.6s;
}
header img{ display: block; }
header ul.nav-01{
  position: relative;
  display: flex;
  justify-content: flex-start;
}
header ul.nav-01 li{
  display: block;
}
header ul.nav-01 a{
  display: inline-block;
  font-size: 94%;
  text-decoration: none;
  line-height: 3.75em;
  font-weight: bold;
  padding: 0 1.25em;
  color: #fff;
}

header ul.nav-01 li.nav-02-wrap,
header ul.nav-01 li.nav-02-wrap a{
  position: relative;
}
header ul.nav-01 li.nav-02-wrap a{
  padding-right: 2.7em;
}
header ul.nav-01 li.nav-02-wrap a:after{
  font-family: "Font Awesome 5 Free";
  content: '\f078';
  line-height: 3.75em;
  font-weight: bold;
  position: absolute;
  right: 1.25em;
  top: 0;
}
header ul.nav-01 ul.nav-02{
  opacity: 0;
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 3.5em;
  transition: 0.4s;
  box-shadow: 0 0 20px #0000001A;
}
header ul.nav-01 ul.nav-02 a:after{
  content: none;
}
header ul.nav-01 ul.nav-02 li a{
  display: block;
  width: 14.5em;
  line-height: 1.5em;
  background-color: #fff;
  color: #2D2D2D;
  border-bottom: 2px solid #ccc;
  padding: 1em;
}
header ul.nav-01 ul.nav-02 li:last-child a{
  border-bottom: 0;
}
header ul.nav-01 .nav-02-wrap:hover ul.nav-02{
  opacity: 1;
  pointer-events: inherit;
}

header .nav-right{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-left: auto;
}
header .nav-tel{
  width: 14em;
  margin-right: 1.44em;
}
header a.nav-btn{
  display: block;
  width: 15.63em;
}
header nav .bk{
  display: none;
}

/* ナビ付加クラス　*/
.transform{
  position: fixed;
  animation: nav-anime 0.3s;
  background: #fff;
  box-shadow: 0 0 20px #0000001A;
  border-bottom: 0;
}
@keyframes nav-anime {
  from {
    transform: translateY(-50px);
    opacity: 1;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
header nav.transform ul.nav-01 a{
  color: #2D2D2D;
}

header nav.transform .bk{
  display: inherit;
}
header nav.transform .wh{
  display: none;
}


header.header-2{
  height: 5.34em;
}
header.header-2 nav{
  background: #fff;
  box-shadow: 0 0 20px #0000001A;
  border-bottom: 0;
}
header.header-2 nav ul.nav-01 a{
  color: #2D2D2D;
}
header.header-2 nav .bk{
  display: inherit;
}
header.header-2 nav .wh{
  display: none;
}


/* nav1500px以下の場合　*/
@media (max-width: 1500px){
header nav{ font-size: 1.08vw; }
header h1.logo{ margin-right: 2.5em; }
header.header-2{ height: 5.67vw; }
}



.title-wrap{
  width: 100%;
  height: 18.75em;
  text-align: center;
  padding-top: 8.7em;
}
title{
  display: block;
  font-size: 275%;
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
}
.title-btm{
  font-size: 112.5%;
  font-family: 'Poppins', sans-serif;
  color: #fff;
}


.title-wrap.glp-1{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/glp-1/header_glp-1_pc.jpg) center center;
  background-size: cover;
}
.title-wrap.emsculpt{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/emsculpt/header_ems_pc.jpg) center center;
  background-size: cover;
}
.title-wrap.doctor{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/doctor/header_doctor_pc.jpg) center center;
  background-size: cover;
}
.title-wrap.price{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/price/header_price_pc.jpg) center center;
  background-size: cover;
}
.title-wrap.access{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/access/header_access_pc.jpg) center center;
  background-size: cover;
}



section{
  padding: 6em 0;
  overflow-x: hidden;
  background-color: #fff;
}
section.first{
  padding-top: 3.75em;
}

h2.h2-01{
  font-size: 275%;
}
.h2-btm{
  font-size: 112.5%;
  font-family: 'Poppins', sans-serif;
  color: #002c6e;
  margin-bottom: 3.27em;
}
h2.h2-03{
  display: block;
  font-size: 275%;
  text-align: center;
  padding: 0.5em 0;
  margin-bottom: 1em;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
h2.h2-04{
  font-family: 'Poppins', sans-serif;
  color: #002c6e;
  font-weight: bold;
  font-size: 312%;
  margin-bottom: 0.5em;
}
h2.h2-04 span{
  color: #2D2D2D;
  font-size: 32%;
  margin-left: 1em;
}



.modal{
    display: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    z-index: 9999;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    width: 100%;
    height: 100vh;
    position: absolute;
}
.modal__content{
    width: 90%;
    max-width: 1200px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.icon-close{
  display: block;
  background: #002c6e;
  width: 3em;
  height: 3px;
  transform: rotate(45deg);
  margin-top: 1.5em;
}
.icon-close:after{
  content: '';
  display: block;
  background: #002c6e;
  width: 3em;
  height: 3px;
  transform: rotate(-90deg);
  position: absolute;
  top: 0;
  left: 0;
}
a.js-modal-close{
  display: block;
  width: 3em;
  height: 3em;
  position: fixed;
  right: 0em;
  top: -4em;
}
.modal iframe.movie{
  width: 100%;
  height: 42em;
  padding: 0;
}
@media (max-width: 768px){
.icon-close{
  width: 2em;
}
.icon-close:after{
  width: 2em;
}
a.js-modal-close{
  width: 2em;
  height: 2em;
  top: -3em;
}
.modal iframe.movie{
  height: 18em;
}
}


.movie .content{
  position: relative;
}
.movie .content:before{
  content: '';
  width: 92%;
  height: 23.5em;
  background-color: #C8B38D;
  position: absolute;
  top: 1.7em;
  left: 4%;
  z-index: -1;
}
.movie img{
  display: block;
  width: 66em;
  margin: 0 auto;
}
.movie a{
  display: block;
  overflow: hidden;
}
.movie a:hover{
  opacity: 1;
}
.movie a:before{
  content: '';
  display: block;
  width: 66em;
  height: 100%;
  background-color: rgba(0,0,0,0.4);
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -33em;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 1;
}
.movie a:hover:before{
  background-color: rgba(0,0,0,0);
}
.movie a:after{
  content: '';
  display: block;
  width: 5.5em;
  height: 5.5em;
  background: url(../images/common/icon_play.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
}



.cta{
  width: 100%;
  color: #fff;
  text-align: center;
  font-weight: bold;
  background: linear-gradient(to bottom,rgba(5,17,31,0.5),rgba(5,17,31,0.5)), url(../images/common/bg_cta_pc.jpg) center center;
  background-size: cover;
}
.cta .h2-01{
  font-size: 387.5%;
  margin-bottom: 0.3em;
}
.cta .cta-text-01{
  font-size: 175%;
  margin-bottom: 0.8em;
  line-height: 1.5;
}
.cta p{
  display: block;
  max-width: 49em;
  margin: 0 auto 4.5em;
}
.cta ul li{
  display: block;
  width: 48%;
  float: left;
  margin: 0 1%;
  padding: 2em 3.4em;
  border-radius: 0.5em;
  border: 3px solid #fff;
}
.cta ul li.li-01{
  background: linear-gradient(to bottom,rgba(0,0,0,0.4),rgba(0,0,0,0.4)), url(../images/common/cta_1.jpg) center center;
  background-size: cover;
}
.cta ul li.li-02{
  background: linear-gradient(to bottom,rgba(0,0,0,0.4),rgba(0,0,0,0.4)), url(../images/common/cta_2.jpg) center center;
  background-size: cover;
}
.cta h3{
  font-size: 212.5%;
  margin-bottom: 0.5em;
}
.cta ul li p{
  text-align: left;
  margin-bottom: 1.5em;
}


.cta.cta-02 h2.text-01{
  font-size: 175%;
  margin-bottom: 1.5em;
}
.cta.cta-02 h2.text-01 span.span-01{
  display: inline-block;
  background-color: #002c6e;
  color: #fff;
  padding-left: 0.2em;
  margin-right: 0.3em;
}
.cta.cta-02{
  background: linear-gradient(to bottom,rgba(5,17,31,0.6),rgba(5,17,31,0.6)), url(../images/emsculpt/bg_cta_ems_pc.jpg) center center;
  background-size: cover;
}
.cta.cta-02 ul li.li-01{
  background: linear-gradient(to bottom,rgba(0,0,0,0.4),rgba(0,0,0,0.4)), url(../images/emsculpt/cta_ems_1.jpg) center center;
  background-size: cover;
}
.cta.cta-02 ul li.li-02{
  background: linear-gradient(to bottom,rgba(0,0,0,0.4),rgba(0,0,0,0.4)), url(../images/emsculpt/cta_ems_2.jpg) center center;
  background-size: cover;
}



footer{
  background-color: #151515;
  color: #F5F5F5;
  font-size: 68.75%;
  padding: 2.2em 0;
}
footer .logo_footer{
  display: block;
  width: 16.8em;
  margin-bottom: 0.8em;
}
footer ul.footer-li-01{
  font-size: 127%;
}
footer ul li{
  display: block;
  float: left;
  margin-right: 1.8em;
  line-height: 2.5em;
}
footer ul li a{
  color: #F5F5F5;
  text-decoration: none;
}
.footer-left,
.footer-right{
  float: left;
}
.footer-left{
  padding-right: 3.2em;
  border-right: 1px solid #707070;
}
.footer-right{
  padding-left: 3.2em;
}



/* スクロールしてふわっと表示 */
.fadein {
    opacity: 0;
    transition: all 1s;
}
.fadeinleft {
    opacity: 0;
    transform: translateX(30px);
    transition: all 1s;
}
.fadeinright {
    opacity: 0;
    transform: translateX(-30px);
    transition: all 1s;
}
.fadeinbottom {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1s;
}
.fadeinbig{
  opacity: 0;
  transform: scale3d(1.05, 1.05, 1.05);
  transition: all 1s;
}

.fadein.scrollin,.fadeinleft.scrollin,.fadeinright.scrollin,.fadeinbottom.scrollin,.fadeinbig.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}
.count2.scrollin {
    -moz-transition-delay: 200ms !important;
    -webkit-transition-delay: 200ms !important;
    -o-transition-delay: 200ms !important;
    -ms-transition-delay: 200ms !important;
}
.count3.scrollin {
    -moz-transition-delay: 400ms !important;
    -webkit-transition-delay: 400ms !important;
    -o-transition-delay: 400ms !important;
    -ms-transition-delay: 400ms !important;
}


/* ページトップ */
#pagetop {
  position: fixed;
  bottom: 1em;
  right: 1em;
  z-index: 998;
  font-size: 16px;
}
#pagetop i {
  padding-top: 11px;
}
#pagetop a {
  display: block;
  z-index: 999;
  border-radius: 30px;
  width: 40px;
  height: 40px;
  background-color: #002c6e;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  box-sizing: border-box;
}
#pagetop a:hover {
  text-decoration: none;
  opacity: 0.7;
}


/* フローティングボタン */
#floating-btn{
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 998;
  padding: 0.1em;
}
#floating-btn a{
  display: block;
  width: 50%;
  float: left;
}
#floating-btn a img{ display: block; }



.step{
  background: #F5F5F5;
  padding-top: 0;
}
.step .content{
  background: #fff;
  padding: 3em 2.5em 4em;
  margin-top: -4em;
  text-align: center;
  position: relative;
  z-index: 1;
}
.step .text-01{
  margin-bottom: 0.5em;
}
.step ul{
  margin: 3em 0;
  text-align: left;
}
.step ul li{
  display: block;
  width: 100%;
  background: #F5F5F5;
  padding: 1.5em 2.5em 1.5em 14em;
  margin-bottom: 1.5em;
  position: relative;
  min-height: 12em;
  display: table;
}
.step ul li:before{
  content: '';
  display: block;
  width: 9em;
  height: 9em;
  position: absolute;
  top: 1.5em;
  left: 2.5em;
}
.step.glp-1 ul li.li-01:before{
  background: url(../images/glp-1/step_1.png) center center no-repeat;
  background-size: contain;
}
.step.glp-1 ul li.li-02:before{
  background: url(../images/glp-1/step_2.png) center center no-repeat;
  background-size: contain;
}
.step.glp-1 ul li.li-03:before{
  background: url(../images/glp-1/step_3.png) center center no-repeat;
  background-size: contain;
}
.step.glp-1 ul li.li-04:before{
  background: url(../images/glp-1/step_4.png) center center no-repeat;
  background-size: contain;
}

.step.ems ul li.li-01:before{
  background: url(../images/emsculpt/step_1.png) center center no-repeat;
  background-size: contain;
}
.step.ems ul li.li-02:before{
  background: url(../images/emsculpt/step_2.png) center center no-repeat;
  background-size: contain;
}
.step.ems ul li.li-03:before{
  background: url(../images/emsculpt/step_3.png) center center no-repeat;
  background-size: contain;
}

.step ul li .table-cell{
  display: table-cell;
  vertical-align: middle;
}
.step ul li .text-02{
  display: inline-block;
  background: #002c6e;
  color: #fff;
  width: 1.5em;
  line-height: 1.5em;
  text-align: center;
  font-size: 131.2%;
  margin-right: 0.5em;
  transform: translateY(-0.1em);
}
.step ul li h3{
  display: inline-block;
  font-size: 150%;
  padding-top: 0.2em;
  margin-bottom: 0.5em;
}
.step .text-02{
  font-size: 150%;
}



.question dl dt{
  display: block;
  font-size: 150%;
  font-weight: bold;
  padding-left: 2em;
  position: relative;
  margin-bottom: 0.8em;
}
.question dl dt:before{
  content: 'Q';
  display: block;
  background: #2D2D2D;
  color: #fff;
  width: 1.5em;
  line-height: 1.5em;
  text-align: center;
  font-size: 87.5%;
  position: absolute;
  left: 0;
  top: 0.3em;
}
.question dl dd{
  margin-bottom: 3em;
}
.question .tele_flow{
  margin-bottom: 2em;
}



.question-02{
  padding-top: 0;
}
.question-02 dl{
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;

  border-top: 1px solid #ccc;
}
.question-02 dl dt,
.question-02 dl dd{
  float: left;
  display: flex;
  align-items: center;
  padding: 1em;
}
.question-02 dl dt{
  width: 18%;
  background-color: #F5F5F5;
  border-bottom: 1px solid #ccc;
}
.question-02 dl dd{
  width: 82%;
  border-bottom: 1px solid #ccc;
}




/*　PC
------------------------------------------------------------------------------------------------*/
@media (min-width: 769px){

.sp{ display: none !important; }

body{ font-size: 16px; }

.content{
  width: 100%;
  max-width: 1240px;
  padding: 0 50px;
  margin: 0 auto;
}


/*　タブレット
------------------------------------------------------------------------------------------------*/
@media (max-width: 1240px){

body{ font-size: 1.29vw; }

.content{
  padding: 0 4%;
}


}/*　タブレットここまで */
}/*　PCここまで */


/*　スマホ
------------------------------------------------------------------------------------------------*/
@media (max-width: 768px){

.pc{ display: none !important; }

body{ font-size: 3.7vw; }

.content{
  width: 100%;
  padding: 0 4%;
}
.contentsp100{
  padding: 0;
}

.f14{ font-size: 80%; }
.f18{ font-size: 100%; }
.f20{ font-size: 100%; }
.f21,
.f22,
.f24{ font-size: 120%; }
.f28,
.f32{ font-size: 160%; }

.sp-f16{ font-size: 106%; }
.sp-f20{ font-size: 133%; }

.spleft{ text-align: left; }
.spcenter{ text-align: center; }

.left-box,
.left-box-01,
.left-box-02,
.right-box{
  width: 100% !important;
  float: inherit !important;
}



header nav{
  font-size: 100%;
  padding: 0;
  height: 4em;
}
header h1.logo {
    width: 13em;
    margin-left: 1em;
}


header.header-2 {
    height: 4em;
}



#nav-drawer {
  position: relative;
  margin-left: auto;
}
.nav-unshown {
  display:none;
}
#nav-open {
  display: inline-block;
  width: 4em;
  height: 4em;
  background: #002c6e;
  vertical-align: middle;
  position: relative;
  cursor: pointer;
  z-index: 9999;
}
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 2px;
  width: 1.6em;
  background: #fff;
  display: block;
  content: '';
  transition: .3s ease-in-out;
}
#nav-open span{
  top: 50%;
  left: 50%;
  margin-left: -0.8em;
}
#nav-open span:before {
  bottom: 0.5em;
}
#nav-open span:after {
  bottom: -0.5em;
}
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9998;
  width: 100%;
  height: 100%;
  background: #fff;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(105%);
  transform: translateX(105%);/*左に隠しておく*/
}
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}
#nav-input:checked ~ #nav-open span {
  background: #002c6e;
}
#nav-input:checked ~ #nav-open span:before {
  background: #fff;
  transform: rotate(-45deg);
  bottom: 0;
}
#nav-input:checked ~ #nav-open span:after {
  background: #fff;
  transform: rotate(45deg);
  bottom: 0;
}
#nav-input:checked ~ #nav-open{
  position: fixed;
  top: 0;
  right: 0;
}



#nav-content .nav-head{
  width: 100%;
  height: 4em;
  border-bottom: 1px solid rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
}
#nav-content .nav-head img{
  width: 13em;
  margin-left: 1em;
}
#nav-content ul.nav-03{
  width: 100%;
  padding-left: 5%;
  margin-bottom: 1.5em;
}
#nav-content ul.nav-03 li{
  display: block;
  border-bottom: 1px solid rgba(0,0,0,0.3);
}
#nav-content ul.nav-03 li a{
  font-size: 125%;
  display: block;
  text-decoration: none;
  color: #000;
  font-weight: bold;
  line-height: 1.5;
  padding: 0.6em 0 0.6em 2.6em;
  position: relative;
}
#nav-content ul.nav-03 li a:hover{
  opacity: 1;
}
#nav-content ul.nav-03 li a:before{
  content: '';
  display: block;
  width: 1.8em;
  height: 3.6em;
  position: absolute;
  top: 0;
  left: 0;
}
#nav-content ul.nav-03 li.li-01 a:before{
  background: url(../images/common/icon_home.svg) no-repeat center center;
  background-size: contain;
}
#nav-content ul.nav-03 li.li-02 a:before{
  background: url(../images/common/icon_menu.svg) no-repeat center center;
  background-size: contain;
}
#nav-content ul.nav-03 li.li-03 a:before{
  background: url(../images/common/icon_price.svg) no-repeat center center;
  background-size: contain;
}
#nav-content ul.nav-03 li.li-04 a:before{
  background: url(../images/common/icon_access.svg) no-repeat center center;
  background-size: contain;
}
#nav-content ul.nav-03 li a span{
  display: block;
  font-size: 60%;
  color: #ccc;
}
#nav-content ul.nav-03 li ul.nav-04{
  margin-bottom: 0.5em;
}
#nav-content ul.nav-03 li ul.nav-04 li{
  border-bottom: 0;
}
#nav-content ul.nav-03 li ul.nav-04 li a{
  font-size: 90%;
  border-bottom: 0;
  padding: 0 0 0.5em 3.6em;
  font-weight: normal;
}
#nav-content ul.nav-03 li ul.nav-04 li a:before{
  content: none;
}
#nav-content a.nav-btn-02{
  display: block;
  width: 90%;
  margin: 0 auto 0.6em;
}




.title-wrap{
  height: 12.5em;
  padding-top: 6em;
}
title{
  font-size: 160%;
}
.title-btm{
  font-size: 80%;
}


.title-wrap.glp-1{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/glp-1/header_glp-1_sp.jpg) center center;
  background-size: cover;
}
.title-wrap.emsculpt{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/emsculpt/header_ems_sp.jpg) center center;
  background-size: cover;
}
.title-wrap.doctor{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/doctor/header_doctor_sp.jpg) center center;
  background-size: cover;
}
.title-wrap.price{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/price/header_price_sp.jpg) center center;
  background-size: cover;
}
.title-wrap.access{
  background: linear-gradient(to bottom,rgba(45,45,45,0.5),rgba(45,45,45,0.5)), url(../images/access/header_access_sp.jpg) center center;
  background-size: cover;
}



section{
  padding: 3em 0;
}
section.first{
  padding-top: 2.7em;
}
.top-concept,.movie,.top-menu,.top-service,.top-price,.cta,.top-doctor{
  padding: 4.6em 0 0;
}
h2.h2-01{
  font-size: 187%;
  text-align: center;
}
.h2-btm{
  font-size: 100%;
  text-align: center;
  margin-bottom: 2.4em;
}
h2.h2-03{
  font-size: 186%;
}



.movie .content::before{
  width: 100%;
  height: 12.3em;
  top: 1em;
  left: 0;
}
.movie a::before {
  width: 92%;
  left: 4%;
  margin-left: 0;
}
.movie a::after{
  width: 4em;
  height: 4em;
}



.cta{
  padding: 2.5em 0;
  text-align: left;
  background: linear-gradient(to bottom,rgba(5,17,31,0.5),rgba(5,17,31,0.5)), url(../images/common/bg_cta_sp.jpg) center center;
  background-size: cover;
}
.cta .h2-01{
  font-size: 213%;
  margin-bottom: 0.6em;
  text-align: center;
}
.cta .cta-text-01{
  font-size: 106%;
  margin-bottom: 1.4em;
  text-align: center;
}
.cta p{
  max-width: 100%;
  margin: 0 auto 2.5em;
}
.cta ul li{
  width: 100%;
  float: inherit;
  padding: 1.5em 1em 1em;
  margin-bottom: 1.2em;
}
.cta h3 {
    font-size: 160%;
    margin-bottom: 0.3em;
    text-align: center;
}


.cta.cta-02{
  background: linear-gradient(to bottom,rgba(5,17,31,0.5),rgba(5,17,31,0.5)), url(../images/emsculpt/bg_cta_ems_sp.jpg) center center;
  background-size: cover;
}
.cta.cta-02 h2.text-01 {
  font-size: 120%;
  text-align: center;
}




footer{
  background-color: #292929;
  font-size: 73%;
  text-align: center;
  padding: 2.2em 0 11em;
}
.footer-right{
  float: inherit;
  padding-left: 0;
  padding-bottom: 3em;
  margin-bottom: 3em;
  border-bottom: 1px solid #666;
}
footer ul li{
  margin-right: 0;
  line-height: 2.2em;
  width: 50%;
  text-align: left;
}
footer ul.footer-li-02{
  margin-top: 2em;
}
footer ul.footer-li-02 li{
  width: 100%;
}
footer .logo_footer {
    width: 70%;
    margin: 0 auto 1em;
}


#pagetop {
  bottom: 25vw;
}
#pagetop.pagetop-2 {
  bottom: 1em;
}


.step{
  padding-bottom: 0;
}
.step .content{
  padding: 3em 4%;
  margin-top: 0;
}
.step .text-01 {
    font-size: 120%;
}
.step ul li{
  padding: 10.5em 1.5em 1.5em;
}
.step ul li::before {
    width: 100%;
    height: 7.5em;
    top: 1.5em;
    left: 0;
}
.step ul li h3 {
    font-size: 120%;
}
.step .text-02 {
    font-size: 120%;
}


.question dl dt {
    font-size: 120%;
}
.question dl dd {
    margin-bottom: 2em;
}


.question-02 dl {
    border-top: none;
    display: inherit;
}
.question-02 dl dt {
    width: 100%;
    float: inherit;
    border-bottom: none;
    padding: 0.2em 0.8em;
    display: inherit;
}
.question-02 dl dd {
    width: 100%;
    float: inherit;
    border-bottom: none;
    padding: 1em 0;
    font-size: 93%;
    display: inherit;
}




}/*　スマホここまで */