




/* ====================

Base CSS

==================== */

html{
  font-size:62.5%;
}
body{
  color:#000;
  font-family:'Noto Sans JP', sans-serif;
  font-size:1.6rem;
  font-weight:300;letter-spacing:.035em;
  line-height:1.5;
  min-width:90rem;
  overflow:auto;
}
a{
  color:#1e40d8;
  text-decoration:none;
}
th{
  font-weight:400;
}
.flex{
  display:flex;
}
.container{
  overflow:hidden;
}
.inner-l{
  margin:0 auto;
  max-width:108.8rem;
  padding:0 2.4rem;
}
.inner-s{
  margin:0 auto;
  max-width:81.6rem;
  padding:0 2.4rem;
}
.inner-xs{
  margin:0 auto;
  max-width:68.8rem;
  padding:0 2.4rem;
}



/* Break Point Fpr Media Query */
.pc-1279{
  display:block;
}
.sp-1279{
  display:none;
}
.pc-767{
  display:block;
}
.sp-767{
  display:none;
}
.pc-520{
  display:block;
}
.sp-520{
  display:none;
}
.inline-pc-767{
  display:inline-block;
}
.inline-sp-767{
  display:none;
}
@media screen and (max-width:1279px){
  .pc-1279{
    display:none;
  }
  .sp-1279{
    display:block;
  }
}
@media screen and (max-width:767px){
  .pc-767{
    display:none;
  }
  .sp-767{
    display:block;
  }
  .inline-pc-767{
    display:none;
  }
  .inline-sp-767{
    display:inline-block;
  }
}
@media screen and (max-width:519px){
  .pc-520{
    display:none;
  }
  .sp-520{
    display:block;
  }
}



/* Fadein Animation */
.fadein{
	opacity:0;
	transform:translate(0, 120px);
	transition:.7s ease-in-out;
}
.fadein.scrollin{
	opacity:1;
	transform:translate(0, 0);
}



/* Spacer */
.spacer{
  display:block;
  padding:1em 0 0;
}



/* Ancher Target */
.page-anchor-wrap{
  position:relative;
}
.page-anchor{
  margin:-16rem 0 0;
  padding:16rem 0 0;
  position:absolute;
}
.page-anchor2{
  margin:-6rem 0 0;
  padding:6rem 0 0;
}
@media screen and (max-width:767px){
  .page-anchor{
    margin:-12rem 0 0;
    padding:12rem 0 0;
  }
  .page-anchor2{
    margin:-4rem 0 0;
    padding:4rem 0 0;
  }
}



@media screen and (max-width:767px){
  body{
    font-size:1.4rem;
    min-width:0%;
    overflow:auto;
  }
  .inner-l,
  .inner-s,
  .inner-xs{
    max-width:48rem;
    padding:0 2rem;
  }

}



/* Conversion Button */
.cv-btn{
  margin:6rem 0 0;
}
.cv-btn a{
  background-color:#db0550;
  border-radius:.8rem;
  color:#fff;
  display:block;
  font-size:2.8rem;
  font-weight:700;
  letter-spacing:.1em;
  line-height:1;
  margin:0 auto;
  max-width:56rem;
  padding:3rem 1.6rem 3.2rem;
  text-align:center;
}

.cv-tel p{
  font-size:2.4rem;
  font-weight:700;
  margin:2.4rem 0;
  text-align:center;
}
.cv-tel a,
.cv-tel span{
  color:#009fb9;
  display:block;
  font-size:3.6rem;
  font-weight:700;
  margin:1.6rem auto;
  text-align:center;
  width:32rem;
}
.cv-tel span{
  color:#000;
}
@media screen and (max-width:767px){
  .cv-btn{
    margin:3.6rem 0 0;
  }
  .cv-btn a{
    border-radius:.8rem;
    font-size:1.8rem;
    max-width:30rem;
    padding:1.8rem 1rem 2rem;
  }
  .cv-tel p{
    font-size:1.8rem;
  }
  .cv-tel a,
  .cv-tel span{
    font-size:2.8rem;
  }
}



/* Login State Style */
.admin-bar .header-fixed{
  margin:3.2rem 0 0;
}
@media screen and (max-width:782px){
  .admin-bar .header-fixed{
    margin:4.6rem 0 0;
  }
}





/* ====================

Header

==================== */

.header{
  background-color:#fff;
  box-shadow:0 .1rem .8rem rgba(0, 0 ,0 ,.2);
  left:0;
  position:fixed;
  top:0;
  width:100%;
  z-index:8;
}
.header-inner{
  align-items:center;
  justify-content:space-between;
  padding:2.4rem 0;
}

.site-title{
  line-height:1;
  width:18rem;
}
.site-title a,
.site-title img{
  display:block;
}

.global-nav{
  align-items:center;
}
.global-nav-ul a{
  color:#000;
  font-size:1.4rem;
  font-weight:500;
  margin:0 0 0 1.6rem;
}
.global-nav-btn{
  margin:0 0 0 1.6rem;
}
.global-nav-btn a{
  background-color:#db0550;
  border-radius:.4rem;
  color:#fff;
  display:block;
  font-size:1.4rem;
  font-weight:700;
  line-height:1;
  padding:.8rem 1.2rem 1rem;
}
@media screen and (max-width:767px){
  .header-inner{
    padding:1.2rem 0;
  }
  .site-title{
    line-height:1;
    width:12rem;
  }
  .site-title a,
  .site-title img{
    display:block;
  }
  .global-nav-ul{
    display:none;
  }
}



/* ====================

Footer

==================== */

.footer{
  background-color:#000;
  color:#fff;
}
.footer-address{
  margin:0 auto;
  max-width:28rem;
  padding:6.4rem 0 2.4rem;
}
.footer-address dt{
  display:block;
  font-size:2.4rem;
  font-weight:700;
  margin:0 0 1.6rem;
  text-align:center;
}
.footer-address dd{
  font-weight:500;
  margin:1rem 0 0;
}
.footer-address dd a{
  color:#fff;
}
.privacy-policy{
  font-size:1.2rem;
  font-weight:700;
  padding:2.4rem 0;
  text-align:center;
}
.privacy-policy a{
  color:#fff;
}
.copyright{
  font-size:1.2rem;
  padding:1.6rem 0;
  text-align:center;
}
.copyright small{
  font-size:1.2rem;
}
@media screen and (max-width:767px){
  .footer-address{
    max-width:24rem;
  }
  .footer-address dt{
    margin:0 0 2rem;
  }
}


/* ====================

Contents

==================== */

.sc{
  margin:-16rem 0 0;
  padding:24rem 0 0;
}
.sc:last-child{
  margin:20rem 0 0;
}
.sc-headline{
  font-size:4.8rem;
  font-weight:900;
  letter-spacing:.125em;
  margin:0 0 12rem;
  text-align:center;
}
.sc-headline span span{
  color:#009fb9;
}

@media screen and (max-width:767px){
  .sc{
    margin:-8rem 0 0;
    padding:12rem 0 0;
  }
  .sc:last-child{
    margin:8rem 0 0;
  }
  .sc-headline{
    font-size:2.2rem;
    margin:0 0 4.8rem;
  }
}



/* Conversion */
.sc-conversion{
  background-color:rgba(0, 159, 185, .15);
  margin:16rem 0;
  padding:16rem 0;
}
.sc-conversion:last-of-type{
  margin:16rem 0 0;
}
.sc-conversion-headline{
  font-size:3.2rem;
  margin:0 0 3.6rem;
  text-align:center;
}
@media screen and (max-width:767px){
  .sc-conversion{
    margin:9.6rem 0;
    padding:9.6rem 0;
  }
  .sc-conversion:last-of-type{
    margin:9.6rem 0 0;
  }
  .sc-conversion-headline{
    font-size:2rem;
    margin:0 0 2.4rem;
  }
}




/* Hero */
.sc1-hero{
  background-image:linear-gradient(120deg, #c6c6c6, #666);
  height:100dvh;
  margin:0 0 16rem;
  overflow:hidden;
  position:relative;
  width:100%;
}
.sc1-contents{
  left:50%;
  padding:0 3.6rem;
  position:absolute;
  top:50%;
  transform:translate(-50%, calc(-50% + 3.75rem));
  width:100%;
  z-index:2;
}
.lead-text{
  letter-spacing:.5em;
  margin:0 0 6rem;
  text-align:center;
}
.lead-text strong{
  color:#fff;
  font-size:4.8rem;
  font-weight:700;
}
.sc1-hero video{
  height:auto;
  left:50%;
  min-height:100%;
  min-width:100%;
  opacity:.35;
  position:absolute;
  top:50%;
  transform:translate(-50%, -50%);
  width:auto;
  z-index:1;
}
@media screen and (max-width:767px){
  .sc1-hero{
    height:85vh;
    margin:0 0 6.4rem;
  }
  .sc1-contents{
    transform:translate(-50%, calc(-50% + 2.25rem));
  }
  .lead-text{
    margin:0 0 3.6rem;
  }
  .lead-text strong{
    font-size:2rem;
  }
}



/* Worries */
.sc2-dl dt{
  color:#009fb9;
  font-size:4rem;
  font-weight:900;
  letter-spacing:.25em;
  text-align:center;
  margin:0 0 8rem;
}
.sc2-dl-list{
  font-size:2.4rem;
  font-weight:700;
  margin:0 auto;
  max-width:60rem;
}
.sc2-dl-list li{
  margin:4.8rem 0;
  padding:0 0 0 6.4rem;
  position:relative;
}
.sc2-dl-list li::before{
  background-color:#009fb9;
  border-radius:2.5rem;
  color:#fff;
  display:block;
  font-size:3.2rem;
  font-weight:700;
  left:0;
  line-height:1;
  padding:.7rem 0 1.1rem;
  position:absolute;
  text-align:center;
  top:-.6rem;
  width:5rem;
  z-index:1;
}
.sc2-dl-list li:nth-of-type(1)::before{
  content:'1';
}
.sc2-dl-list li:nth-of-type(2)::before{
  content:'2';
}
.sc2-dl-list li:nth-of-type(3)::before{
  content:'3';
}
.sc2-dl-list li:nth-of-type(4)::before{
  content:'4';
}
.sc2-dl-list li:nth-of-type(5)::before{
  content:'5';
}
.sc2-text{
  color:#009fb9;
  font-size:3.6rem;
  font-weight:700;
  letter-spacing:.1em;
  margin:24rem 0;
  position:relative;
  text-align:center;
}
.sc2-text::after{
  background-image:url(../media/img/sc2-arrow@2x.png);
  background-size:3.9rem 3.7rem;
  content:'';
  height:3.7rem;
  left:50%;
  position:absolute;
  top:calc(100% + 2rem);
  transform:translate(-50%, 0);
  width:3.9rem;
  z-index:1;
}
@media screen and (max-width:767px){
  .sc2-dl dt{
    font-size:2rem;
    margin:0 0 2.4rem;
  }
  .sc2-dl-list{
    font-size:1.6rem;
    max-width:60rem;
  }
  .sc2-dl-list li{
    margin:3.2rem 0;
    padding:0 0 0 4.8rem;
  }
  .sc2-dl-list li::before{
    border-radius:1.7rem;
    font-size:1.8rem;
    padding:.7rem 0 .9rem;
    top:-.4rem;
    width:3.4rem;
  }
  .sc2-text{
    font-size:2rem;
    margin:10rem 0;
  }
  .sc2-text::after{
    background-size:2.5rem 2.4rem;
    height:2.4rem;
    top:calc(100% + 1.4rem);
    width:2.5rem;
  }
}



/* Points */
.sc3-2col-box{
  margin:12rem 0;
  position:relative;
}
.sc3-2col-box-text{
  align-items:center;
  left:50%;
  min-height:48rem;
  position:absolute;
  top:0;
  transform:translate(-50%, 0);
  width:100%;
  z-index:1;
}
.sc3-2col-box-text-item dt{
  border-bottom:solid .1rem #000;
  margin:0 0 2.8rem;
  padding:0 0 2.8rem;
  white-space:nowrap;
}
.sc3-2col-box-text-item dt{
  font-size:2.4rem;
  font-weight:900;
}
.sc3-2col-box-text-item dt span,
.sc3-2col-box-text-item dd span{
  display:block;
  margin:0 0 0 auto;
  width:50%;
}
.sc3-2col-box:nth-of-type(2) .sc3-2col-box-text-item dt span,
.sc3-2col-box:nth-of-type(2) .sc3-2col-box-text-item dd span{
  margin:0;
}
.sc3-2col-box-img{
  background-size:cover;
  margin:0;
  min-height:48rem;
  position:relative;
  width:calc(50% - 4.8rem);
  z-index:2;
}
.sc3-2col-box:nth-of-type(1) .sc3-2col-box-img{
  background-image:url(../media/img/point01.jpg);
  background-position:center center;
}
.sc3-2col-box:nth-of-type(2) .sc3-2col-box-img{
  background-image:url(../media/img/point02.jpg);
  background-position:top left;
  margin:0 0 0 auto;
}
.sc3-2col-box:nth-of-type(3) .sc3-2col-box-img{
  background-image:url(../media/img/point03.jpg);
  background-position:bottom right;
}
@media screen and (max-width:767px){
  .sc3-2col-box{
    flex-direction:column-reverse;
    margin:6.4rem 0;
  }
  .sc3-2col-box-text{
    min-height:0%;
    position:static;
    transform:translate(0, 0);
    width:100%;
  }
  .sc3-2col-box-text-item dt{
    border-bottom:none;
    margin:2rem 0;
    padding:0;
  }
  .sc3-2col-box-text-item dt{
    font-size:1.8rem;
  }
  .sc3-2col-box-text-item dt span,
  .sc3-2col-box-text-item dd span{
    display:block;
    margin:0;
    width:100%;
  }
  .sc3-2col-box-img{
    margin:0;
    min-height:0%;
    padding:0 0 50%;
    width:100%;
    z-index:2;
  }
  .sc3-2col-box:nth-of-type(1) .sc3-2col-box-img,
  .sc3-2col-box:nth-of-type(2) .sc3-2col-box-img,
  .sc3-2col-box:nth-of-type(3) .sc3-2col-box-img{
    background-position:center center;
    margin:0;
  }
}



/* Case */
.sc4-2col-box{
  flex-wrap:wrap;
  margin:-4.8rem -1.6rem 0;
}
.sc4-2col-box li{
  margin:4.8rem 0 0;
  padding:0 1.6rem;
  width:50%;
}
.sc4-2col-item{
  flex-direction:column-reverse;
}
.sc4-2col-item dt{
  display:block;
  font-size:1.8rem;
  font-weight:500;
  margin:1.6rem 0 0;
  text-align:center;
}
@media screen and (max-width:767px){
  .sc4-2col-box{
    display:block;
    margin:-2rem 0 0;
  }
  .sc4-2col-box li{
    margin:2rem 0 0;
    padding:0;
    width:100%;
  }
  .sc4-2col-item dt{
    font-size:1.6rem;
    margin:1.4rem 0 0;
  }
}



/* Works */
.sc5-3col-box{
  flex-wrap:wrap;
  margin:-4.8rem -1.6rem 0;
}
.sc5-3col-box li{
  margin:4.8rem 0 0;
  padding:0 1.6rem;
  width:33.3333%;
}
.sc5-3col-item{
  flex-direction:column-reverse;
}
.sc5-3col-text{
  display:block;
  font-size:1.4rem;
  font-weight:700;
  margin:.8rem 0 0;
}
.sc5-3col-text em{
  display:block;
  font-style:normal;
}
.sc5-3col-img a{
  background-image:linear-gradient(120deg, #c6c6c6, #666);
  display:block;
  overflow:hidden;
}
.sc5-3col-img a img{
  transition:.4s ease-in;
}
.sc5-3col-img a:hover img{
  opacity:.5;
  transform:scale(1.15);
}

/* Pop Up Movie */
.movie-wrap{
  padding:0 0 56.25%;
  position:relative;
}
.movie-wrap a{
  display:block;
  left:50%;
  position:absolute;
  top:50%;
  transform:translate(-50%, -50%);
  width:100%;
  z-index:4;
}
.lity{
  background-color:rgba(0,0,0,.75)!important;
}

@media screen and (max-width:767px){
  .sc5-3col-box{
    flex-wrap:wrap;
    margin:-3.6rem -1rem 0;
  }
  .sc5-3col-box li{
    margin:3.6rem 0 0;
    padding:0 1rem;
    width:50%;
  }
  .sc5-3col-text{
    font-size:1.2rem;
    margin:.8rem 0 0;
  }
  .sc5-3col-img a img{
    transition:0s;
  }
  .sc5-3col-img a:hover img{
    opacity:1;
    transform:scale(1);
  }
}



/* Price */

.sc6-contents p{
  font-size:2rem;
  font-weight:700;
  line-height:2;
  margin:6rem auto 2.4rem;
  width:84%;
}
@media screen and (max-width:767px){
  .sc6-contents p{
    font-size:1.6rem;
  }
}

/* FAQ */
.sc8-item:not(:last-child){
  border-bottom:solid .1rem #000;
  margin:0 0 4.8rem;
  padding:0 0 4.8rem;
}
.sc8-item dt{
  display:block;
  font-size:2rem;
  font-weight:700;
  margin:0 0 2.4rem;
  padding:0 0 0 3.2rem;
  position:relative;
}
.sc8-item dt::before{
  content:'Q.';
  font-size:2.4rem;
  left:0;
  position:absolute;
  top:-.5rem;
}
.sc8-item dd{
  display:block;
  padding:0 0 0 3.2rem;
  position:relative;
}
.sc8-item dd::before{
  color:#009fb9;
  content:'A.';
  font-size:2.4rem;
  font-weight:700;
  left:0;
  position:absolute;
  top:-.6rem;
}
@media screen and (max-width:767px){
  .sc8-item:not(:last-child){
    margin:0 0 3.6rem;
    padding:0 0 3.6rem;
  }
  .sc8-item dt{
    font-size:1.6rem;
    margin:0 0 2rem;
    padding:0 0 0 2.8rem;
  }
  .sc8-item dt::before{
    font-size:2rem;
    top:-.5rem;
  }
  .sc8-item dd{
    padding:0 0 0 2.8rem;
  }
  .sc8-item dd::before{
    font-size:2rem;
    top:-.5rem;
  }
}











.page-content{
  margin:0 auto;
  max-width:60rem;
  padding:10rem 3rem;
}
.page-content h1{
  margin:0 0 5.6rem;
  text-align:center;
}

.contact-items div dt{
  font-weight:700;
  margin:0 0 .8rem;
}
.contact-items div:not(:last-child) dd{
  margin:0 0 3rem;
}
.contact-items div dd input,
.contact-items div dd textarea{
  border:solid .2rem #707070;
  border-radius:.4rem;
  padding:.6rem;
  transition:.3s ease;
  width:100%;
}
.contact-items div dd input:focus,
.contact-items div dd textarea:focus{
  background-color:#f6f6f6;
  border:solid .2rem #464646;
}

.contact-items div .contact_req{
  color:#db0550;
  display:inline-block;
}

.wpcf7 .wpcf7-submit{
  background-color:#009fb9;
  border-radius:8px;
  color:#fff;
  display:block;
  line-height:1;
  margin:3.2rem auto;
  padding:1.6rem;
  width:18rem;
}
.wpcf7 .wpcf7-spinner{
  display:none!important;
}