/* LP New Fitness
==================================*/
.pc {
  display:none !important;
}
main {
  padding: 0;
}
main img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

main .grad {
  padding: 30px 20px;
  background: linear-gradient(-90deg, #ad0583, #4205B1);
}


/* Title */
main .titleArea {
  background: url(/images/fukuroi/sp/new_fitness/bg1.webp) no-repeat center top;
  background-size: cover;
  height: auto;
  padding: 26px 0 0;
  margin-bottom: 0;
  position: relative;
}

main .titleArea .logo {
  width: 149px;
  height: 20px;
  position: absolute;
  left: 20px;
  top: 15px;
  z-index: 10;
}



/* Sub */
main .sub {
  background: url(/images/fukuroi/sp/new_fitness/bg2.webp) no-repeat center top;
  background-size: cover;
  padding: 30px 0 25px;
}

main .sub h2 {
  height: 87px;
  text-indent: -9999px;
  background: url(/images/fukuroi/sp/new_fitness/sub.webp) no-repeat center top;
  background-size: 205px 87px;
}
main .sub p {
  text-align: center;
  color: #FFFFFF;
  font-size: 16px;
  font-weight: 700;
  font-style: italic;
  margin-top: 27px;
}



/* Section */
main section .inner {
  background: #FFFFFF;
  padding: 30px 15px;
  margin-bottom: 30px;
}
main section .inner p {
  font-size: 16px;
  line-height: 26px;
}
main section .inner p.title {
  font-size: 20px;
  font-style: italic;
  font-weight: 700;
  margin: 30px 0 34px;
}

main section .inner .texts .photo {
  max-width: 610px;
  position: relative;
}

main section .inner .movie {
  position: relative;
  padding-top: 56.25%;
  margin-top: 30px;
}
main section .inner .movie video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}



/* Kurayami */
main section#Kurayami .inner .texts h2 {
  margin: 10px -15px 31px;
  height: 35px;
  text-indent: -9999px;
  background: url(/images/fukuroi/sp/new_fitness/title01.webp) no-repeat center top;
  background-size: 255px 35px;
}

main section#Kurayami .inner .photo p.ph1 {
  width: 43.77%;
  max-width: 267px;
  margin-left: 7.7%;
}
main section#Kurayami .inner .photo p.ph2 {
  width: 44.1%;
  max-width: 269px;
  position: absolute;
  right: 0;
  top: 10.66%;
}
main section#Kurayami .inner .photo p.ph3 {
  width: 50.82%;
  max-width: 310px;
  margin: 12.37% 0 0 0;
}
main section#Kurayami .inner .photo p.te {
  position: absolute;
  z-index: 2;
  left: 4.26%;
  top: 39.02%;
  width: 57.54%;
  max-width: 351px;
}


main section#Kurayami .program {
  background: linear-gradient(45deg, #3a048b, #8a046a);
  padding: 20px 9px;
  margin-top: 20px;
}

main section#Kurayami .program h3 {
  font-size: 22px;
  color: #fff;
  letter-spacing: 0.05em;
  position: relative;
}
main section#Kurayami .program h3::after {
  content: "";
  display: block;
  width: 27px;
  height: 3px;
  background: #FFFFFF;
  position: absolute;
  left: 125px;
  top: 50%;
}

main section#Kurayami .program p {
  line-height: 1.5;
  font-style: italic;
  letter-spacing: 0.03em;
  margin-top: 10px;
  color: #fff;
}
@media screen and (min-width: 480px){
  main section#Kurayami .inner p.title br {
    display: none;
  }
}


/* UBOUND */
main section#UBOUND .inner p.title small {
  font-size: 14px;
}

main section#UBOUND .inner .texts h2 {
  margin-bottom: 36px;
  height: 97px;
  text-indent: -9999px;
  background: url(/images/fukuroi/new_fitness/title02.webp) no-repeat center top;
  background-size: 188px 97px;
}

main section#UBOUND .inner .photo p.te {
  position: absolute;
  z-index: 3;
  left: 3.28%;
  top: 3.77%;
  width: 65.74%;
  max-width: 401px;
}
main section#UBOUND .inner .photo p.ph1 {
  width: 48.03%;
  max-width: 293px;
  position: absolute;
  left: 0;
  top: 50.25%;
}
main section#UBOUND .inner .photo p.ph2 {
  width: 47.7%;
  max-width: 291px;
  padding: 0 0 0 52.3%;
}

/* 追加ページ */

@media only screen and (min-width:320px) and (max-width:1024px) {
  .contentInner {
    width: auto;
    margin: 0;
    padding: 0 25px;
  }
  
  /* -------------------------- */
  /* title */
  /* -------------------------- */
  
  .h3Title {
    margin-bottom: 30px;
    font-size: 2.6em;
    line-height: 1.4em;
  }
    .h3Title span {
      padding-bottom: 4px;
      font-size: 0.8em;
    }
    
  
  /* -------------------------- */
  /* txt */
  /* -------------------------- */
  
  .normalTxt {
    font-size: 1.4em;
    line-height: 1.6em;
  }
  
  
  /* -------------------------- */
  /* link */
  /* -------------------------- */
  
  .tbrBorder {
  }
    .tbrBorder th ,
    .tbrBorder td {
      display: block;
      padding: 10px 0;
      font-size: 1.4em;
    }
    .tbrBorder th {
      width: auto;
      border-bottom: 1px dashed #dbd8cd;
    }

   
}
@media only screen and (max-width:799px){
  #pageHeader .contentInner img {
display: none;
  }
  #about .aboutInner figure img {
    /* max-width: 539px; */
    width: 100%;
}
#solution .txtRight {
  padding-right: 30px;
}
.txtRight {
  text-align: right;
}

}

@media only screen and (min-width:441px) and (max-width:799px){
  #about .contentInner h3{
    text-align: center;
     }
  #about .contentInner img{
 width: 441px;
  }
}

@media only screen and (min-width:460px) and (max-width:799px){
  #solution .contentInner h3{
    text-align: center;
     }
     #solution .img1 {
 width: 460px;
  }
}

@media only screen and (min-width:508px) and (max-width:799px){
  #solution .contentInner h3{
    text-align: center;
     }
     #solution .img2 {
 width: 508px;
  }
}

@media only screen and (min-width:413px) and (max-width:799px){
  #solution .contentInner h3{
    text-align: center;
     }
     #solution .img3 {
 width: 413px;
  }
}
  

/* max-800 */
@media only screen and (min-width:480) and (max-width:799px) {
  
  .contentInner {
    padding: 0 15px;
  }
  
  /* -------------------------- */
  /* title */
  /* -------------------------- */
  
  .h3Title {
    margin-bottom: 25px;
    font-size: 2.2em;
    line-height: 1.3em;
  }
          
	
  /* -------------------------- */
  /* pageHeader */
  /* -------------------------- */
  
  #pageHeader {
    min-height: auto;
    margin-bottom: 0;
    padding: 0;
    background: none;
  }
    #pageHeader .headerInner {
      float: none;
      height: auto;
      margin: 0;
      padding: 10px 0;
    }
      #pageHeader .headerInner h1 {
        margin: 0;
        text-align: center;
        font-size: 1.0em;
      }
      #pageHeader .headerInner .logo {
        width: 100px;
    margin: 7px auto 0;
      }
        #pageHeader .headerInner .logo a {
          width: 100px;
    height: 40px;
    background-size: 100px auto;
        }
  
    #pageHeader .contentInner {
      display: none;
    }
    #pageHeader .smpMainImg {
      display: block;
      margin: 0;
      padding: 0;
      line-height: 0;
    }
      #pageHeader .smpMainImg h2 img {
        width: 100%;
        height: auto;
      }
    }
  /* ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  /* max-480 */
  /* ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  
  @media only screen and (min-width:320px) and (max-width:480px) {
  
  .contentInner {
    padding: 0 15px;
  }
  
  /* -------------------------- */
  /* title */
  /* -------------------------- */
  
  .h3Title {
    margin-bottom: 25px;
    font-size: 2.2em;
    line-height: 1.3em;
  }
          
	
  /* -------------------------- */
  /* pageHeader */
  /* -------------------------- */
  
  #pageHeader {
    min-height: auto;
    margin-bottom: 0;
    padding: 0;
    background: none;
  }
    #pageHeader .headerInner {
      float: none;
      height: auto;
      margin: 0;
      padding: 10px 0;
    }
      #pageHeader .headerInner h1 {
        margin: 0;
        text-align: center;
        font-size: 1.0em;
      }
      #pageHeader .headerInner .logo {
        width: 100px;
    margin: 7px auto 0;
      }
        #pageHeader .headerInner .logo a {
          width: 100px;
    height: 40px;
    background-size: 100px auto;
        }
  
    #pageHeader .contentInner {
      display: none;
    }
    #pageHeader .smpMainImg {
      display: block;
      margin: 0;
      padding: 0;
      line-height: 0;
    }
      #pageHeader .smpMainImg h2 img {
        width: 100%;
        height: auto;
      }
    }

   
    #about {
      background-color: #fff;
      padding-top: 70px;
      padding-bottom: 30px;
  }

    #about {
      margin-bottom: 20px;
    }
      #about .aboutInner {
        display: block;
        margin-bottom: 15px;
        padding-bottom: 20px;
      }
        #about .aboutInner .title {
          display: block;
          width: auto;
          margin-bottom: 25px;
          padding-right: 0;
        }
          #about .aboutInner .title h4 {
            text-align: center;
          }
            #about .aboutInner .title h4 img {
              width: auto;
              height: 65px;
            }
          #about .aboutInner .title .normalTxt {
            text-align: center;
          }
          #about .aboutInner figure {
            display: block;
            width: 100%;
            margin: 20px auto 0;
            text-align: center;
          }
          #about .aboutInner figure img {
            max-width: 539px;
            width: 100%;
          }
        #about .aboutInner .txtWrap {
          display: block;
          width: 100%;
        }
        #about .aboutInner .txtWrap p {
          display: table;
          margin-bottom: 1.3em;
          font-size: 16px;
          line-height: 2em;
      }
          #about .aboutInner .txtWrap p {
            width: 100%;
          }

          em {
            background: rgba(0, 0, 0, 0) linear-gradient(transparent 40%, #ff9 40%) repeat scroll 0 0;
          }

          #about .aboutInner .txtWrap p.txtImg img {
            width: 138px;
        }

          #about .aboutInner .txtWrap p.txtImg {
            text-align: center;
        }
  
  /* お悩み解決 */				

  #solution {
    padding-bottom: 40px;
    background: #fefcda url(/images/fukuroi/new_fitness//bg_solution.webp) center top repeat-x;
}

#solution .txtWrap h4 {
  margin: 10px 0;
  padding-left: 44px;
  background: url(/images/fukuroi/new_fitness/ico_01.webp) left top no-repeat;
  color: #eb6100;
  font-size: 26px;
  line-height: 1.2em;
  font-weight: 700;
}

#solution .txtWrap p {
  margin: 10px 0 30px;
  font-size: 18px;
  width: 100%;
  line-height: 2em;
}




    #solution {
      margin-bottom: 0;
    }
      #solution .solutionInner {
        display: block;
        margin-bottom: 0px;
        padding-bottom: 0;
      }
        #solution .solutionInner {
          display: block;
          width: auto;
          margin-bottom: 20px;
          padding-right: 0;
        }
          #solution .solutionInner h4 {
          }
          #solution .solutionInner h4 img {
            width: auto;
            height: 65px;
          }
        #solution .solutionInner .txtWrap {
          display: block;
          width: 100%;
          background: url(/images/fukuroi/new_fitness/img_03.webp) center top no-repeat;
          padding-top: 500px;
        }
          #solution .solutionInner .txtWrap p {
            width: 100%;
          }

          @media only screen and (min-width:320px) and (max-width:562px) {

            /* お悩み解決 */				
                  #solution .solutionInner .txtWrap {
                    padding-top: 100%;
                    background-size: contain;
                  }
            
            }




/* LP Footer
==================================*/
footer {
  background: url(/images/fukuroi/new_fitness/bg3.webp) repeat-y center top;
  background-size: contain;
}


/* EntryBox */
footer .espo_entrybox {
  padding: 5px;
  background: #fff;
}

footer .espo_entry {
  border-top: #481cba 2px solid;
  border-bottom: #ad0583 2px solid;
  padding: 23px 13px 25px;
  position: relative;
}
footer .espo_entry::before {
  content:"";
  display:block;
  height:100%;
  width:2px;
  background:-webkit-gradient(linear, left top, right bottom, from(#481cba), to(#ad0583));
  background:-moz-linear-gradient(left, #481cba, #ad0583);
  background:linear-gradient(left, #481cba, #ad0583);
  position: absolute;
  left: 0;
  top: 0;
}
footer .espo_entry::after {
  content:"";
  display:block;
  height:100%;
  width:2px;
	background:-webkit-gradient(linear, left top, right bottom, from(#481cba), to(#ad0583));
	background:-moz-linear-gradient(left, #481cba, #ad0583);
  background:linear-gradient(left, #481cba, #ad0583);
  position: absolute;
  right: 0;
  top: 0;
}

footer .espo_entry .espo_left {
  padding:0 15px 20px;
}
footer .espo_entry .espo_left h2 {
  margin-bottom: 12px;
  font-style: italic;
  min-height: 35px;
  font-size: 19px;
  line-height: 35px;
  font-weight: 700;
  background: url(/images/common/logo_color.svg) no-repeat left top;
  background-size: 121px 35px;
  padding-left: 131px;
}
@media screen and (max-width: 450px){
  footer .espo_entry .espo_left h2 {
    line-height: 1;
  }
}
footer .espo_entry .espo_left p {
  line-height: 26px;
  font-size: 16px;
}

footer .espo_entry ul li a {
  text-align: center;
  display: block;
  width: 100%;
  height: 51px;
  font-size: 16px;
  font-weight: 700;
  color: #FFFFFF;
}
footer .espo_entry ul li a span {
  display: inline-block;
  padding: 16px 0 19px 37px;
}

footer .espo_entry ul li.nav01 {
	margin-bottom:10px;
}
footer .espo_entry ul li.nav01 a span {
  background: url(/images/common/icon_calendar.svg) no-repeat 0 11px;
  background-size: 23px 23px;
}
footer .espo_entry ul li.nav02 a span {
  background: url(/images/common/icon_mail.svg) no-repeat 0 16px;
  background-size: 23px 17px;
}
footer .espo_entry ul li.nav01 a{	background: #ea1dc2; }
footer .espo_entry ul li.nav02 a{	background: #195ec5; }


footer .footer_links {
  display: block;
  width: 280px;
  margin: 40px auto 54px;
}

footer .footer_links h2 {
  width: 63px;
  margin-bottom: 20px;
}
footer .footer_links h2 img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

footer .footer_links ul li a {
  line-height: 35px;
  font-weight: 700;
  color: #fff;
  display: block;
  position: relative;
}
footer .footer_links ul li a::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6px;
  content: "";
  background: url(/images/fukuroi/common/icon_arrow.svg) no-repeat;
  background-size: contain;
  width: 8px;
  height: 5px;
}

footer .footer_inner .copy {
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 10px;
  padding-bottom: 20px;
}



/* Animation
==================================*/
.c-anim-up,
.c-anim-up02,
.c-anim-up03 {
  transform: translate(0, 30px);
  opacity: 0;
  transition: .3s ease;
}

.ue {
  transform: translate(0, -30px);
}
.hidari {
  transform: translate(30px, 0);
}
.migi {
  transform: translate(-30px, 0);
}

.move {
  transform: translate(0, 0);
  opacity: 1;
}

.delay1 {
  -moz-transition-delay: 300ms;
  -webkit-transition-delay: 300ms;
  -o-transition-delay: 300ms;
  -ms-transition-delay: 300ms;
}

.delay2 {
  -moz-transition-delay: 600ms;
  -webkit-transition-delay: 600ms;
  -o-transition-delay: 600ms;
  -ms-transition-delay: 600ms;
}

.delay3 {
  -moz-transition-delay: 900ms;
  -webkit-transition-delay: 900ms;
  -o-transition-delay: 900ms;
  -ms-transition-delay: 900ms;
}

.delay4 {
  -moz-transition-delay: 1200ms;
  -webkit-transition-delay: 1200ms;
  -o-transition-delay: 1200ms;
  -ms-transition-delay: 1200ms;
}

.delay5 {
  -moz-transition-delay: 1500ms;
  -webkit-transition-delay: 1500ms;
  -o-transition-delay: 1500ms;
  -ms-transition-delay: 1500ms;
}

.delay6 {
  -moz-transition-delay: 1800ms;
  -webkit-transition-delay: 1800ms;
  -o-transition-delay: 1800ms;
  -ms-transition-delay: 1800ms;
}

.delay7 {
  -moz-transition-delay: 2100ms;
  -webkit-transition-delay: 2100ms;
  -o-transition-delay: 2100ms;
  -ms-transition-delay: 2100ms;
}
