@charset "UTF-8";

.sm{font-size:.7em}
/* a:hover{
  opacity: 0.8;
} */
.sp{display:none}
.pc{display:inline-block}
.bold{font-weight:bold}
.txt_blue{color:#3188E9}
#pagetop {
    display: none;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 9;
    margin: 0;
}
.footer__spNav{
  display: none;
}
.footer__link{margin:15px 0 20px;padding:10px;display:flex;flex-wrap:wrap;justify-content:center;box-sizing:border-box}
.footer__link p{margin:0 10px}
.footer__link a{display:block;color:#39dbdb;font-size:.9em;padding:7px 15px 6px;background:#fff;border-radius:3px;line-height:1.4em;border:1px solid #fff}
.footer__link a:hover{background:#39dbdb;color:#fff}
.trademark{padding:1em 1.5em;font-size:.7em;line-height:1.3em}
br.sp2{display:none}
@media screen and (min-width: 1400px) {
.trademark{text-align:center;}
#pagetop {
  right: calc(calc(100% - 1400px) / 2 );
}

}
@media screen and (max-width: 768px) {
h1>br.sp2{display:inline-block}
.sp{display:inline-block}
.pc{display:none}
.space{margin-left:0!important}
.footer__link{flex-direction:column;padding:1em 2em 0}
#pagetop {
    width: 50px;
}
.back{margin-bottom:14.8vw!important}
.footer__spNav.fixed{
        display: flex;
        position: fixed;
        bottom: -1px;
        z-index: 10;
				left: 0;
    		width: 100%;
      }
.footer__spNav a{
      width: 100%;
      }
.footer__spNav img{
        width: 100%;
      }
#pagetop img {
    width: 100%;
}
}
.body_size{
  max-width: 1400px;
  margin: 0 auto;
}
#gNavi {
	max-width: 1400px;
  margin: 0 auto;
	position: fixed;
	top: 0;
	z-index: 800;
}
.topHeader {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-width: 1100px;
}
.subHeader {
  margin: 80px 0 0 0;
  padding: 40px 0;
  text-align: center;
  font-size: 28px;
  color:#fff;
  background-color: #3188e9;
}
.breadcrumb{
  font-size: 12px;
  border-bottom: solid 1px #dddddd;
  padding: 20px 0;
}
.breadcrumb span{
  padding: 0 15px;
}
.topHeader video {
  width: 100%;
  z-index: 1;
}
.topHeader:before {
    display: block;
    content: "";
    width: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}
.overlay {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  background-image: linear-gradient(45deg, rgba(0,0,0,.3) 50%, rgba(0,0,0,.7) 50%);
  background-size: 4px 4px;
  z-index: 2;
}
.head__box{
  position: absolute;
  width:100%;
  text-align: center;
  z-index: 3;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}
.head__box img{
  max-width: 90%;
}
.head_text{
  position: absolute;
  line-height: 60px;
  font-size: 30px;
  text-align: left;
  top:70%;
  left: 10%;
  color:#39dbdb;
  z-index: 3;
}
.head_text span{
  padding:5px 5px 0 5px;
  background-color: #fff;
}

@media all and (max-width: 1079px) {
.subHeader{margin-top:50px;padding:30px 20px;font-size:24px;line-height:1.4em}
}
@media all and (max-width: 768px) {
  .topHeader {
    min-width: unset;
}
  .breadcrumb{
    font-size: 12px;
    border-bottom: solid 1px #dddddd;
    padding: 20px 10px;
  }
  .head_text{
    line-height: 35px;
    font-size: 20px;
    text-align: left;
    left: 20px;
    padding:0 20px 0 0;
    text-shadow:1px 0 5px black;
  }
  .head_text span{
    padding:0 5px;
    background-color: transparent;
  }
  .head__box{
      top: 40%;
    }
  .head_text{
    top:60%;
  }
}
/* ----------------------------------------
	gNavi
---------------------------------------- */
.nav-wrap{
  position: relative;
}
.nav__logo{
  position: absolute;
  top:0;
  left: 0;
  padding: 30px 10px;
  display: none;
}
.sub__pagenav .nav__logo,
.fixnav + .nav__logo{
  display: block;
}
#gNavi {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 800;
}
#nav {
	margin: 0;
  color: #39dbdb;
}
.sub__pagenav #nav {
	color:#000;
}
#nav li a {
	text-decoration: none;
}
#nav li {
	position: relative;
}
#nav li:after {
	content: "";
  width: calc(100% - 40px);
  position: absolute;
  background: #39dbdb;
  height: 2px;
  bottom: -10px;
  left: 20px;
  padding:0 20px;
  box-sizing: border-box;
  opacity: 0;
/* transition: all  0.3s ease; */
}
#nav .select__page:after {
  opacity: 1;
  bottom:0;
}
#nav li:hover:after {
	opacity: 1;
  bottom:0;
}
#nav.fixnav{
  background-color: #fff;
  color:#000;
}
.nav-wrap {
	padding: 0!important;
}
.head__bookingBtn a{
  font-size:16px;
  text-align:right;
  position:absolute;
  top:0;
  right:0;
  padding: 15px;
  height:80px;
  background-color: #39dbdb;
  color:#fff;
}
.head__bookingBtn i{
  padding: 0 5px;
}
.head__bookingBtn a:hover{
     opacity: 0.8;
 }
@media all and (min-width:1080px) {
#nav {
    display: flex!important;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    height: 80px;
    font-size: 0;
    margin: 0 auto;
    text-align: right;
    padding: 0;
    box-sizing: border-box;
}
}
 @keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-moz-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

    @-webkit-keyframes fade-in {
      0% {
        display: none;
        opacity: 0;
      }

      1% {
        display: block;
        opacity: 0;
      }

      100% {
        display: block;
        opacity: 1;
      }
    }

		#nav > li {
			display: inline-block;
			/* height: 52px; */
			font-size: 16px;
			box-sizing: border-box;
			position: relative;
			z-index: 2;
		}
    #nav > li a{
      padding: 10px 20px;
      display: block;
    }
    	#nav > li:hover{
        opacity: 0.8;
      }

	@media all and (max-width: 1079px) {
    .nav__logo{
      position: absolute;
      top:0;
      left: 0;
      padding: 12px 10px;
      display: block;
      z-index: 999;
    }
    .topHeader{
      padding-top: 50px;
    }
		.nav-wrap {
			width: 100%;
			height: 50px;
			position: absolute;
			top: 0;
		}
		#gNavi {
			padding: 0;
			top: 0;
      border-top:none;
      height: 50px;
      background-color: #fff;
		}

		#btn {
			display: block;
			width: 50px;
			height: 50px;
			position: fixed;
			top: 0;
			right: 0;
			z-index: 900;
			text-align: center;
			background-color:  #39dbdb;
		}
		#btn.open {
			background-color:  #39dbdb;
		}
		#btn a {
			display: flex;
			position: relative;
			width: 50px;
			height: 50px;
			align-items: center;
			flex-direction: column;
			padding-top: 8px;
		}

		#btn span {
			background-color: #fff;
			display: block;
			width: 30px;
			height: 2px;
			margin: 5px;
			transition: 0.3s ease;
      border-radius: 2px;

		}
		#btn a span:nth-of-type(1) {
			top: 11px;
		}

		#btn a span:nth-of-type(2) {
			top: 18.5px;
		}

		#btn a span:nth-of-type(3) {
			top: 27px;
		}
		#btn.open a span:nth-of-type(1) {
			transform: translateY(8px) rotate(45deg);
			margin: 7px;
			background: #fff;
		}

		#btn.open a span:nth-of-type(2) {
			transform: scale(0);

		}

		#btn.open a span:nth-of-type(3) {
			transform: translateY(-11px) rotate(-45deg);
			margin: -2px;
			background: #fff;
		}

 .head__bookingBtn a{
      font-size:16px;
      text-align:left;
      display: block;
      position:unset;
      margin: 15px 0 0 0;
      background-color: #39dbdb;
      color:#fff;
	}

		#nav {
			display: none;
			width: 100%;
			max-height: 100%;
			overflow: scroll;
			position: fixed;
			background:  #fff;
			padding: 60px 0 20px 0;
			z-index: 800;
			top: -1px;
			color:#000;
		}

		#nav > li {
			text-align: left;
			font-weight: bold;
			line-height: 1.5;
      padding-left: 20px;
      display: block;
		}

    #nav .select__page:after {
      opacity: 0;
    }
		#nav li a {
			display: block;
			font-size: 13px;
			padding: 14px 0;
      color:#000;
		}


	}
  	@media all and (max-width: 360px) {
      .nav__logo img{
        width: 200px;
      }
    }
/*  共通　 */
.inner{
  width: 1100px;
  margin: 0 auto;
}
.inner02{
  width: 1120px;
  margin: 0 auto;
}
.inner03{
  width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .inner,
  .inner02,
  .inner03{
    width: auto;
    margin: 0 auto;
	  line-height:1.6
  }
}
/* section01　*/
.section01{
    padding: 70px 0 0 0;
    position: relative;
    background-image: url(../img/top/section01__bg.png);
    /*background-size: 100% 100%;*/
	background-size: 100% 50%;
	z-index:-3;
    min-width: 1100px;
}
.section01__ttl{
  color:#3188e9;
  font-size: 36px;
  line-height: 50px;
  text-align: center;
  font-weight: bold;
}
.section01_box1{
  padding:30px 10px;
  text-align: center;
}
.section01_box1 img{
  width: auto;
  max-width:
}
.section01_box2{
 font-size: 18px;
 line-height: 36px;
 text-align: center;
 padding: 20px 0;
}
.section01_box3{
 text-align: center;
 font-size: 24px;
 line-height: 42px;
 font-weight: bold;
 color: #3188e9;
}
.section01__group01{
  padding: 50px 0 0 0;
  margin: 50px 0;
  position: relative;
}
.section01__subttl01{
  width: 58%;
  padding: 30px;
  font-size: 38px;
  line-height: 54px;
  background-color: #39dbdb;
  color:#fff;
  box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.3);
}
.section01__text01{
  width: 45%;
  padding: 45px 0 45px 0 ;
  font-size: 16px;
  line-height: 28px;
}
.section01__img01{
  position: absolute;
  top:0;
  left: 50%;
  width: 50%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}
.section01__img01 img{
  width: 100%;
  min-height: 100%;
  object-fit: cover;
}
.section01__group02{
  padding: 50px 0 0 0;
  margin: 50px 0;
  position: relative;
}
.section01__subttl02{
  width: 55%;
  padding: 30px;
  font-size: 38px;
  line-height: 54px;
  margin: 0 0 0 auto;
  background-color: #39dbdb;
  color:#fff;
  box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.3);
}
.section01__text02{
  width: 45%;
  padding: 45px 0 45px 0 ;
  font-size: 16px;
  line-height: 28px;
  margin: 0 0 0 auto;
}
.section01__img02{
  position: absolute;
  top:0;
  right: 50%;
  width: 50%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}
.section01__img02 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .section01{
      padding: 30px 20px 50px 20px;
      position: relative;
      min-width: unset;
  }
  .section01__ttl{
    font-size: 20px;
    line-height: 40px;
    text-align: center;
  }
  .section01_box1{
  padding:5px 0;
  }
  .section01_box1 img{
    width: 100%;
    object-fit: cover;

  }
  .section01_box2{
   font-size: 16px;
   line-height: 30px;
   padding: 20px 5px;
  }
  .section01__subttl01{
    width: 100%;
    padding: 15px;
    font-size: 20px;
    line-height: 35px;
  }
  .section01__text01{
    width: 100%;
    padding: 15px 5px;
  }
  .section01__img01{
    position: unset;
    width: 100%;
    height: 100%;
    overflow: auto;
    z-index: 0;
    padding: 15px 0 0 0;
  }
  .section01__subttl02{
    width: 100%;
    padding: 15px;
    font-size: 20px;
    line-height: 35px;
  }
  .section01__text02{
    width: 100%;
    padding: 15px 5px;
  }
  .section01__img02{
    position: unset;
    width: 100%;
    height: 100%;
    overflow: auto;
    z-index: 0;
    padding: 15px 0 0 0;
  }
  .section01__group01{
  padding: 30px 0 0 0;
  margin: 30px 0;
	}
	
	.section01__group02{
  padding: 30px 0 0 0;
  margin: 30px 0;
	}
}

/* section02　*/
.section02{
    padding: 70px 0 90px 0;
    position: relative;
    background-image: url(../img/top/section02__bg.jpg);
    background-size:  cover;
    min-width: 1100px;
}
.section02__ttl{
  text-align: center;
}
.section02__box{
  display: flex;
  padding: 30px 0;
}
.section02__img{
  width: 45%;
}
.section02__img img{
  width: 100%;
  object-fit: cover;
}
.section02__textbox{
  width: 55%;
  padding:0 0 0 50px;
}
.section02__subttl{
 color:#fff;
 line-height: 54px;
 font-size: 38px;
 padding-bottom: 40px;
}
.section02__text{
  font-size: 16px;
  line-height: 28px;
  padding-bottom: 40px;
}
.section02__btn a{
  padding: 15px 70px;
  font-size: 10px;
  border: solid 1px #000;
	transition: all 1s ease;
}
.section02__btn a:hover {
  border: solid 1px #fff;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .section02{
      min-width: unset;
      padding: 30px 20px 80px;
  }
  .section02__box{
    display: block;
  }
  .section02__img{
    width: 100%;
  }
  .section02__textbox{
    width: 100%;
    padding: 0 5px 0 5px;
  }
  .section02__subttl{
   color:#fff;
   line-height: 30px;
   font-size: 24px;
   padding: 10px 0;
  }
  .section02__btn {
    text-align: center;
  }
}
/* section03　*/
#section03 {
    padding-top: 80px;
    margin-top: -80px;
}
.section03{
    padding: 70px 0 90px 0;
    position: relative;
    background:#000;
    min-width: 1100px;
}
.section03__ttl{
  text-align: center;
}
.section03__box{
  display: flex;
  padding: 30px 0  60px 0;
}
.section03__movie{
  width: 45%;
}
.section03__textbox{
  width: 55%;
  padding:0 50px 0 0;
}
.section03__subttl{
 color:#fff;
 line-height: 54px;
 font-size: 38px;
 text-align: center;
 padding-bottom: 40px;
}
.section03__subttl02{
 color:#fff;
 line-height: 54px;
 font-size: 38px;
 padding-bottom: 40px;
 text-align: center;
}
.section03__text{
  font-size: 16px;
  line-height: 28px;
  padding-bottom: 40px;
   color:#fff;
}
.section03__img{
  text-align: center;
}
.section03__img img{
  width: 100%;
  object-fit: cover;
}




.section03__box02{
  padding: 30px 0  60px 0;
}

.section03__textbox02{
  padding:0 0 0 0;
}

.section03__movie02{
  padding:0 10% 20px 10%;
}


@media screen and (max-width: 768px) {
  .section03{
      min-width: unset;
      padding: 30px 20px;
  }
  .section03__box{
    display: block;
  }
  .section03__img{
    width: 100%;
  }
  .section03__textbox{
    width: 100%;
    padding:0;
  }
  .section03__subttl{
   line-height: 30px;
   font-size: 24px;
   padding: 10px 0;
  }
  .section03__subttl02{
   line-height: 30px;
   font-size: 24px;
   padding: 10px 0;
  }
  .section03__btn {
    text-align: center;
  }
	.section03__textbox02{
	padding:0 5px 0 5px;
	}
  .section03__movie02{
  padding:0 0 0 0;
}
}

/* section04　*/
.section04{
    padding: 70px 0 90px 0;
    position: relative;
    min-width: 1100px;
}
.section04__group01{
  padding: 50px 0 50px 0;
  position: relative;
}
.section04__subttl01{
  width: 55%;
  padding: 30px;
  font-size: 38px;
  line-height: 54px;
  background-color: #31e880;
  color:#fff;
  box-shadow: 20px 20px 20px rgba(0,0,0,0.3);
}
.section04__text01{
  width: 45%;
  padding: 45px 0 0 ;
  font-size: 16px;
  line-height: 28px;
}
.section04__img01{
  position: absolute;
  top:0;
  left: 50%;
  width: 50%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}
.section04__img01 img{
  width: 100%;
  min-height: 100%;
  object-fit: cover;
}
.section04__btn {
  text-align: center;
    padding: 50px 0;
}
.section04__btn a{
  padding: 15px 70px;
  font-size: 10px;
  border: solid 1px #000;
  text-align: center;
	transition: all 1s ease;
}
.section04__btn a:hover {
  border: solid 1px #31e880;
  background: #31e880;
}
@media screen and (max-width: 768px) {
  .section04{
      min-width: unset;
      padding: 30px 20px;
  }
  .section04__group01{
  padding: 50px 0 20px 0;
	}
.section04__subttl01{
  width: 100%;
  padding: 15px;
  font-size: 20px;
  line-height: 35px;
}
.section04__text01{
  width: 100%;
  padding: 15px 5px;
}
.section04__img01{
  position: unset;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 0;
  padding: 15px 0 0 0;
	}
	
	.section04__btn {
	text-align: center;
	padding: 30px 0 10px 0;
	}
}

/* section05　*/
.section05{
    padding: 70px 0 90px 0;
    position: relative;
    min-width: 1100px;
}
.section05__ttl{
  text-align: center;
  font-size: 36px;
  padding: 15px;
  width:100%;
  background-color: #3188e9;
  color:#fff;
  font-weight: bold;
}
.section05__box{
  display: flex;
  padding: 30px 0;
  flex-wrap: wrap;
}
.section05__img {
  width:25%;
  padding: 10px;
}
.section05__img img{
  width:100%;
}
.section05__box{
  display: flex;
  padding: 30px 0;
}
.section05__subttl{
 color:#fff;
 text-align: center;
}
.section05__subttl img{
  max-width: 100%;
}
.section05__text{
  font-size: 18px;
  line-height: 28px;
  padding: 40px;
   text-align: center;
}
@media screen and (max-width: 768px) {
  .section05__ttl{
   line-height: 30px;
   font-size: 24px;
 }
  .section05{
      min-width: unset;
      padding: 30px 20px;
  }
  .section05__img{
    width: 50%;
  }
  .section05__textbox{
    width: 100%;
    padding:0;
  }
  .section05__text {
    padding: 30px 5px;
  }
  .section05__subttl{
   line-height: 30px;
   font-size: 24px;
   padding: 10px 0;
  }
  .section05__subttl02{
   line-height: 30px;
   font-size: 24px;
   padding: 10px 0;
  }
  .section05__btn {
    text-align: center;
  }
}

/* section06　*/
.section06{
    padding: 30px 0;
    min-width: 1100px;
}
.section06__ttl{
  color:#3188E9;
  line-height: 1.2em;
  font-size: 38px;
  font-weight:bold;
  padding-bottom: 20px;
  text-align: center;
}
.section06__box{
  display: flex;
  padding: 30px 0;
}
.section06__img{
  width: 45%;
}
.section06__img img{
  width: 100%;
  object-fit: cover;
}
.section06__textbox{
  width: 55%;
  padding:0 0 0 50px;
}
.section06__text{
  font-size: 16px;
  line-height: 28px;
  padding-bottom: 40px;
}
.section06__btn a{
  padding: 15px 70px;
  font-size: 10px;
  border: solid 1px #000;
	transition: all 1s ease;
}
.section06__btn a:hover {
  color:#fff;
  border: solid 1px #3188E9;
  background: #3188E9;
}

@media screen and (max-width: 768px) {
  .section06{
      min-width: unset;
      padding: 30px 20px;
  }
  .section06__ttl{
      font-size: 30px;
      padding-bottom: 10px;
  }
  .section06__box{
    display: block;
  }
  .section06__img{
    width: 100%;
	margin-bottom:15px;
  }
  .section06__textbox{
    width: 100%;
    padding: 0 5px 0 5px;
  }
  .section06__btn {
    text-align: center;
  }
}

/* section_feature　*/
.section_feature{padding:100px 0 0 0;width:1100px;margin: 0 auto;}
.section_feature h2{color:#fff;line-height:1.0em;font-size:2.4em;font-weight:bold;margin-bottom:45px;text-align:center;}
.section_feature h2 span{background:#39DBDB;padding:24px 40px 21px;border-radius:60px;}
.section_feature p.section_feature_lead{font-size:1.3em;text-align:center;line-height:2.0em;margin-bottom:30px;}
.section_feature_content{display:flex;align-items:center;margin-bottom:25px;}
.section_feature_content:last-child{margin-bottom:0;}
.section_feature_content h3{width:150px;height:150px;background:#39DBDB;border-radius:50%;box-sizing:border-box;padding:50px 5px;color:#fff;text-align:center;line-height:1.3em;font-size:1.25em;font-weight:bold;margin-right:20px;}
.section_feature_content h3 span.feature_number{display:inline-block;font-size:1.2em; margin-bottom:5px;}
.section_feature_content p{width:920px;font-size:1.1em;text-align:justify;line-height:1.5em;}
@media screen and (max-width: 768px) {
	.section_feature{width:100%;box-sizing:border-box;padding: 40px 0 0 0;}
	.section_feature h2{font-size:1.4em;margin-bottom:30px;}
	.section_feature h2 span{background:#39DBDB;padding:15px 30px 12px;border-radius:30px;}
	.section_feature p.section_feature_lead{font-size:1.1em;text-align:justify;line-height:1.5em;margin-bottom:20px;}
	.section_feature_content{display:block;margin-bottom:20px;}
	.section_feature_content h3{width:100%;height:auto;border-radius:0px;padding:10px 15px 8px;text-align:left;line-height:1.2em;font-size:1.1em;font-weight:500;margin-right:0;margin-bottom:5px;}
	.section_feature_content h3 span.feature_number{font-size:1.1em;font-weight:bold;margin-bottom:0;margin-right:5px;}
	.section_feature_content h3 span.feature_title{font-size:1.1em;}
	.section_feature_content p{width:100%;font-size:1.0em;}
	.section-test{
      padding: 30px 20px 50px 20px;
      position: relative;
      min-width: unset;
  }
}
.section-test{
    padding: 70px 0 0 0;
    position: relative;
    background-image: url(../img/top/section01__bg.png);
    background-size: 100% 50%;
    z-index: -3;
    min-width: 1100px;
}
@media screen and (max-width: 768px) {
	.section-test{
      padding: 30px 20px 50px 20px;
      position: relative;
      min-width: unset;
  }
}

/*　 背景用の動画　設定　*/
#bg-video{
 position: fixed;
 right: 0;
 bottom: 0;
 min-width: 100%;
 min-height: 100%;
 width: auto;
 height: auto;
 z-index: -100;
 background: url('poster.jpg') no-repeat;
 background-size: cover;
}

/* footer */

footer{
   background-color: #39dbdb;
   color: #fff;
   min-width: 1100px;

max-width:1400px;
margin:0 auto;
}
.footer__box{
  display: flex;
  max-width: 800px;
  margin: 0 auto;
  padding: 20px 0;
}
.footer__logo{
  width: 40%;
  padding: 30px 70px 0 70px;
  text-align: center;
}
.footer__logo img{
  width: 100%;
  max-width: 250px;
}
.sns__box{
  display: flex;
justify-content:center;
  width: 60%;
  padding: 65px 50px 0 50px;
}
.sns{
  width: 25%;
  text-align: center;
}
footer ul{margin:0 2em}
footer ul li{margin:1em 0}
.footer__info{
  text-align: center;
  padding: 1em;
  line-height: 25px;
}
.copy{text-align:center;padding:2em 0 3em;font-size:.7em}
.footer__nav{display:flex;justify-content:center;margin:2em 0}

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

  footer{
     min-width: unset;
  }
  .footer__box{
    display: block;
  }
  .footer__logo{
    width: 100%;
    padding: 30px 70px 0 70px;
  }
  .sns__box{
    display: flex;
    width: 100%;
    padding: 65px 10px 0 10px;
  }
footer ul{/* display: block; */max-width:100%;margin:0}
footer ul li{display:block;margin:20px 0;padding:0;font-size:1em;font-weight:700;box-sizing:border-box}
.shop_list ul li{margin:7px 0 7px 15px!important;padding:0}
  .copy{
    padding: 10px 0 100px 0;
  }

.footer__link a{padding:0;margin:10px 0;border:none;background:none;color:#fff;font-size:1em;font-weight:700}
.footer__link a:before{content:"\f0da";font-family:"Font Awesome 5 Free";font-weight:900;margin-right:5px;color:#ff0}
.footer__link p{margin:0}
}

@media screen and (max-width: 320px) {
footer ul li{font-size:.8em}
}

/*-------------------------------
fade
---------------------------------*/
.js-fadein {
	opacity: 0;
	visibility: hidden;
	transform: translateY(40px);
	transition: all 1s;
}
.js-fadein.is-show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}

/* スクロール*/
.scroll-btn {
	position: absolute;
	right: 50px;
	z-index: 2;
	top: calc( 100vh - 151px );
	top: calc(var(--vh, 1vh) * 100 - 151px);
}
.scroll-btn:after {
	content: "";
	display: block;
	height: 73px;
	width: 2px;
	margin-top: 8px;
	margin-left: 5px;
	background-color: #fff;
	animation: scrollbar 1.5s ease 1s infinite normal;
}

.scroll-btn.before-open {
	opacity: 0;
	margin-top: -50px;
}

.scroll-btn.open {
	opacity: 1;
	margin-top: 0;
	transition: all 1s ease;
}

@keyframes scrollbar {
  0% {
		height: 73px;
		margin-top: 8px;
  }
  50% {
		height: 0px;
		margin-top: 81px;
  }
  51% {
		height: 0px;
		margin-top: 8px;
  }
  100% {
		height: 73px;
		margin-top: 8px;
  }
}
@media screen and (max-width: 768px) {
  .scroll-btn {
  	right: 20px;
  	top: calc( 100vh - 110px );
  	top: calc(var(--vh, 1vh) * 100 - 110px);
  }
  .scroll-btn:after {
  	height: 53px;
  	margin-left: 2px;
  }
  .scroll-btn img{
     width: 8px;
    }
  .scroll-btn.before-open {
  	opacity: 0;
  	margin-top: -30px;
  }
  @keyframes scrollbar {
    0% {
  		height: 53px;
  		margin-top: 8px;
    }
    50% {
  		height: 0px;
  		margin-top: 61px;
    }
    51% {
  		height: 0px;
  		margin-top: 8px;
    }
    100% {
  		height: 53px;
  		margin-top: 8px;
    }
  }
}

/* 　　動画　設定　*/
.section03__movie {
	padding: 0 10px;
}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%;
     height: 0;
     overflow: hidden;
		 margin: 30px auto;
}

.movie-wrap video {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

@media screen and (max-width: 768px) {
  .section03__movie {
  	width: 100%;
  }
}

.media{margin:20px 0 40px}
.media_tv{width:93%;margin:20px auto 30px;text-align:center;padding-bottom:30px;border-bottom:solid 1px #3188E9;}

/* トップページ */
.section01_box2 span,
.section01__text01 span,
.section01__text02 span,
.section02__text span,
.section04__text01 span{background:#39dbdb;color:#fff;font-weight:bold}

/* 店舗情報 */
.ttl_shop{border-bottom:2px solid #fff;margin:50px 70px 0;padding:0 0 15px;font-size:2em;font-weight:700;line-height:1.3em;text-align:center}
a.blue:hover{color:#39dbdb}
.info{margin:0 0 30px;padding:1em 2em;background:#fff;color:#000}
table.shop{width:100%}
table.shop tr{margin:5px 0;padding:5px 0 10px;display:block;border-bottom:1px dashed #ccc}
table.shop tr:last-child{border:none}
table.shop tr th{width:85px;text-align:right;padding-right:5px}
table.shop p:not(:last-child){margin-bottom:15px}
table.shop a{color:#3188e9}
.shop_info{width:100%;padding:50px 70px;display:flex;justify-content:space-between}
.shop_info a{color:#ffff00}
.shop_info a:hover{text-decoration:underline}
.shop_txt,.shop_image{width:48%}
.page__flexcotent02-2 iframe{width:100%;height:350px}
.shop_image p{margin-bottom:2em}
.shop_image img{max-width:100%;height:auto}
.oshirase{font-size:1.6em;line-height;normal;font-weight:700;margin:10px 0;background:#39dbdb;color:#fff;display:inline-block;padding:10px 20px 8px}
td.access{font-size:.9em;line-height:1.4em}
.page__flex02:not(:last-child){margin:0 0 60px}
.gmap{padding:0 70px}
.information{display:flex;justify-content:space-between;align-items:stretch;width:100%;margin:10px 0;border:1px solid #000;font-size:.9em;line-height:1.4em}
.info_icon{width:10%;display:flex;justify-content:center;align-items:center;border-right:1px solid #000;background:#000;padding:0}
.info_icon:before{content:"\f05a";font-family:"Font Awesome 5 Free";font-size:1.3em;font-weight:900;color:#fff}
.information div{padding:.5em 1em}

/* 料金比較表 */
.page__ttl01 img{max-width:100%}
.price_comparison{width:100%}
table.table{width:100%;margin:0 auto 15px;border:5px solid #39dbdb}
table.table tr th,table.table tr td{padding:15px 10px;text-align:center;vertical-align:middle;line-height:1.2em;border:1px solid #39dbdb;font-weight:400}
table.table tr th.column-2{background:#39dbdb;color:#fff}
table.table span{font-size:.7em}
.price_comparison p{line-height:1.6em;font-size:.8em;margin:5px 0}
.price_comparison p:last-child{margin:0}
.column-2{font-weight:700!important;font-size:1.2em}
table.table tr th{background:#eee}
th.column-1,th.column-5{width:20%}
th.column-2{width:30%}
th.column-3,th.column-4{width:15%}
table.table tr.row-5 td.column-2,table.table tr.row-5 td.column-3{background:#ffff00}
table.table tr.row-5 td.column-1,table.table tr.row-5 td.column-4,table.table tr.row-5 td.column-5{background:#f66;color:#fff}
table.table tr.row-3 td.column-5{font-weight:bold}

.security{border:1px solid #3188e9;margin:30px 0 0;padding:1em 1.5em;line-height:1.5em;background:#f9f9f9}
.security p{margin:0 0 10px}
.security p:last-child{margin:0}
.security a{color:#3188e9;text-decoration:underline}
.security a:hover{text-decoration:none}
.security p span{font-size:.8em;margin:5px 0 0;display:inline-block;line-height:1.4em}

/* 料金ページ */
.service__listContent{border:none!important;background:none!important;line-height:1.4em}
.service__listContent p{margin-bottom:10px}
.service__listContent p:last-child{margin-bottom:0}
.service__listContent span{font-size:1.6em;font-weight:700}
.service__listBox01{border-right:solid 0.5px #fff}
.service__listBox02{border-left:solid 0.5px #fff}
.service__listTtl{border:none!important;border-bottom:solid 2px #fff!important}
.gray{background:#efefef}
.sec p{margin: 1em 0}
.in{margin:0 0 30px}
.in:last-child{margin:0}
p.ttl{margin-bottom:1em;font-size:1.2em;font-weight:700}
.sec{border:3px solid #3188e9;width:800px;margin:1em auto;padding:.5em 1.5em;box-sizing:border-box;line-height:1.4em}
.discount{margin-top:40px}
.flex{display:flex;flex-wrap:wrap;justify-content:space-between}
.flex table td p{width:100%}
table.off{width:49%;background:#efefef;margin:0}
table.off td{text-align:center;padding:1em;vertical-align:middle}
tr.off_ttl{text-align:center;color:#fff;background:#3188e9}
table.off tr:not(:last-child){border-bottom:2px solid #fff}
table.off td:nth-child(2n){text-align:left;border-left:2px solid #fff;background:#f9f9f9;font-weight:700;color:#3188e9}
table.off tr span{font-size:.8em}
table.off tr:first-child{height:55px}
p.indent{font-size:.8em;margin-bottom:5px;text-align:left;padding-left:1em;text-indent:-1em}
p.indent:last-child{margin-bottom:0}
.mb20{margin-bottom:20px}
.mb30{margin-bottom:30px}
.notice{background:#f9f9f9;margin:0 0 40px;padding:1em 1.5em;line-height:1.6}

/* 店舗ページ */
.btn_section{margin:70px 0;text-align:center;line-height:1.1em}
.btn_section a{line-height:1.1em}
a.btn_shop{width:50%;background:#39dbdb;color:#fff;border-radius:5px;padding:1em .5em 1em 1em;font-size:2em;font-weight:700;display:inline-block}
a.btn_shop:after{content:'\f054';font-family:FontAwesome;font-weight:900;margin-left:1em}
a.btn_shop:hover{background:#fff;color:#39dbdb}
.bg{border:3px solid #39dbdb;padding:2em;background:#fff}
p.title{margin:30px 0;padding:15px 20px 13px;font-size:1.4em;background:#39dbdb}
.marker{background:linear-gradient(transparent 70%,#eee 70%);font-size:1.1em;font-weight:700;letter-spacing:1px}
.block{display:inline-block;font-size:.8em;margin-top:10px}
.mb0{margin-bottom:0!important}
.mb5{margin-bottom:5px!important}
.pb0{padding-bottom:0!important}
#shop_contents{width:100%;max-width:840px;margin:80px auto 120px;box-sizing:border-box}
#shop_contents img{max-width:100%;height:auto}
.shop_wrapper{width:100%;box-sizing:border-box}
#shop_contents h2{font-size:2.2em;line-height:1.3;text-align:center;margin:3em 0 2em;position:relative}
#shop_contents h2:before{content:'';position:absolute;bottom:-25px;display:inline-block;width:45px;height:5px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:#39dbdb;border-radius:3px}
.shop_inner p{line-height:1.6}
table.summary{width:100%;border:3px solid #39dbdb;line-height:1.4;background:#fff}
.summary tr:not(:last-child){border-bottom:1px solid #39dbdb}
.summary th{border-right:1px solid #39dbdb;background:#f6ffff;font-weight:normal;vertical-align:middle;text-align:center}
.summary th,.summary td{padding:20px}
.summary td.mb p:not(:last-of-type){margin-bottom:10px}
.summary td p:not(:last-of-type){margin-bottom:15px}
.summary a{color:#39dbdb;font-weight:700}
.summary a:hover{text-decoration:underline}
table.price{width:100%;border:3px solid #39dbdb;border-top:0;line-height:1.4;background:#fff}
.price tr:not(:last-child){border-bottom:1px solid #39dbdb}
.price tr:first-child{border-bottom:1px solid #39dbdb}
.price th{border-right:1px solid #fff;background:#39dbdb;vertical-align:middle;font-size:1.2em;font-weight:400;padding:20px 15px!important}
.price th,.price td{padding:40px 15px;text-align:center}
.price td:first-of-type{width:30%;border-right:1px solid #39dbdb;font-weight:normal;background:#f6ffff}
.price td{font-size:1.4em;letter-spacing:1px;vertical-align:middle;font-weight:bold}
.price td:nth-child(2){font-size:1.6em;color:red}
tr.col td{background:#fff!important;font-weight:normal!important;font-size:.9em;text-align:left;padding:1em 1.5em;letter-spacing:normal}
tr.col td p:not(:last-of-type){margin-bottom:5px}
tr.col{border-top:1px solid #39dbdb}
.list{margin:0 auto 40px}
.list ul{display:flex;flex-wrap:wrap;justify-content:flex-start}
.list li{flex:0 0 calc(14.64% - 2px);box-sizing:border-box;border:1px solid #39dbdb;margin-right:-1px;margin-bottom:-1px;padding:20px 0;background:#fff}
.list li p{display:block;margin:15px 5px 0;text-align:center;font-size:.9em;line-height:1.2;word-break:break-word}
.list img{width:70%;height:auto;display:block;margin:0 auto}
.layout-half{display:flex;justify-content:space-between;width:100%}
.image{width:32%}
.image img{max-width:100%;height:auto}
.text{width:64%}
.text p{line-height:1.6}
.text p:not(:last-of-type){margin-bottom:1em}
.memo{display:inline-block;position:relative;background-color:#fcfcfc;margin:0 0 20px;padding:15px;border:1px solid #ccc}
.memo p{font-size:.9em;line-height:1.2}
.memo p:not(:last-of-type){margin:0 0 10px;padding-bottom:10px;border-bottom:1px dashed #ccc}
.nav-wrap{display:flex;justify-content:center}
.main{position:relative;overflow:hidden}
#header{max-width:1400px;margin-left:auto;margin-right:auto}
.breadcrumb{max-width:1400px;margin:0 auto}
.intro{margin:2em 0 0;padding:0;font-size:1.4em;line-height:1.4}
.intro p:not(:last-child){margin-bottom:1em}

/* CTA */
.cta{padding:4rem 0 5rem;margin:105px calc(50% - 50vw);width:100vw;background:#39dbdb}
.cta-inner{margin:0 auto;max-width:840px}
.cta-info{text-align:center;margin:0 0 2em;color:#fff}
.cta-info p:not(:last-of-type){margin-bottom:1rem}
p.cta-title{font-size:3rem;font-weight:700}
p.address,p.hours{font-size:1.1rem;font-weight:bold}
p.address:before{content:'\f276';font-family:"FontAwesome";font-weight:600;margin-right:.5em}
p.hours:before{content:'\f017';font-family:"FontAwesome";margin-right:.5em}
.btn-copy{font-size:1.5rem;font-weight:700;position:relative;margin-bottom:1em;text-align:center;color:#fff;letter-spacing:2px}
.btn-copy:before{margin-right:1rem;content:'＼'}
.btn-copy:after{margin-left:1rem;content:'／'}
a.btn{font-size:1.6rem;font-weight:700;line-height:1.4;position:relative;display:inline-block;padding:1rem 4rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .3s;transition:all .3s;text-align:center;vertical-align:middle;text-decoration:none;letter-spacing:.1em;color:#212529;border-radius:.5rem}
a.btn--tel{display:block;padding:1rem 0 1rem 1rem;color:#39dbdb;border-radius:100vh;background:#fff;-webkit-box-shadow:0 5px 0 #33c3c3;box-shadow:0 5px 0 #33c3c3;width:75%;margin:0 auto}
a.btn--tel:hover{-webkit-transform:translate(0,3px);transform:translate(0,3px);-webkit-box-shadow:0 2px 0 #33c3c3;box-shadow:0 2px 0 #33c3c3}
a.btn--tel .number{line-height:1;display:inline-block;margin-top:.2rem;margin-bottom:.4rem;padding:.5rem 1.5rem .4rem;letter-spacing:0;color:#fff;border-radius:.5rem;background:#39dbdb;font-size:1.1em}
a.btn--tel i{font-size:2rem}
a.btn--tel i.fa-position-left{font-size:3rem;left:2.5rem}
.fa-position-left{position:absolute;top:calc(50% - 0.5em);left:1rem}
.fa-position-right{position:absolute;top:calc(50% - 0.5em);right:2rem}
.btn-wide{width:100%!important;letter-spacing:0!important;display:flex!important;justify-content:center;align-items:center}

/*特定商取引法について*/
.table_law{padding-bottom:80px;}
.table_law table{width:100%;}
.table_law table th{background:#eee;border:solid 1px #333;width:30%;box-sizing:border-box;padding:20px;line-height:1.5em;}
.table_law table td{border:solid 1px #333;box-sizing:border-box;padding:20px;vertical-align:center;line-height:1.5em;}
@media (max-width: 768px) {
	.table_law table th,.table_law table td{padding:10px;}
}

/* フッター */
.capacity{margin:0 0 1em}
.capacity img{max-width:100%}
.capacity p{font-size:.7em;line-height:1.4em}
.footer__nav a:before{content:"\f0da";font-family:"Font Awesome 5 Free";font-weight:900;margin-right:5px;color:#ff0;display:inline-block}
.footer__nav a:hover{text-decoration:underline}
.footer__nav a.external_link:after{content:'\f35d';font-family:"Font Awesome 5 Free";font-weight:600;display:inline-block;margin-left:5px}
.shop_list a{font-size:.9em}
.shop_list ul li{margin:.7em 0}
span.phonenumber{font-size:1.9em;margin-left:35px}
span.phonenumber:before{content:'\f2a0';font-family:FontAwesome;font-weight:400;margin-right:15px}
.fixed-section{display:none}
.fixed-section.fixed{position:fixed;bottom:0;left:0}
.space{display:inline-block;margin-left:1em}

@media (max-width: 1279px) {
.btn_section{margin:30px 0;padding:0 0.5em}
a.btn_shop{width:100%;padding:1em .5em;font-size:1em}
a.btn_shop:after{margin-left:5px}
}

@media (min-width: 1024px) {
.list.eight li{flex: 0 0 calc(12.85% - 2px)}
}

@media (max-width: 1025px) {
#shop_contents{padding:10px}
.list li{flex:0 0 calc(17% - 2px)}
.cta{margin:20px calc(50% - 50vw) 0;padding:2rem 1.2rem 2.5rem}
.btn-copy{font-size:1rem;letter-spacing:1px}
.btn-wide{flex-flow:column}
span.phonenumber{margin-top:2px;margin-left:0;font-size:1.8em}
span.phonenumber:before{margin-right:5px}
p.cta-title{font-size:2rem}
p.address,p.hours{font-size:1rem}
a.btn--tel{width:100%;max-width:500px;font-size:1rem;padding:.8rem .7rem .7rem;letter-spacing:0}
a.btn--tel .number{font-size:.8em;padding:.5rem 1rem .4rem}
a.btn--tel i.fa-position-left{font-size:2rem;left:1.5rem}
.fa-position-right{right:1.5rem}
.cta-none{display:none}
.fixed-section{display:block;width:100%;height:70px;background-color:#39dbdb;border-top:1px solid #3188e9}
.fixed-button{color:#fff;border:none;text-decoration:none;font-weight:700;display:block;height:100%}
.fixed-button2{display:flex;align-items:center;justify-content:center;height:70px}
.btn_link{font-size:28px;font-weight:700}
.btn_link:before{content:'\f54f';font-family:FontAwesome;margin-right:20px}
.btn_link:after{content:'\f105';font-family:'FontAwesome';margin-left:20px}
.btn_top{height:25px;font-size:13px;display:flex;justify-content:center;align-items:flex-end;color:#ffff00}
.btn_top:before{margin-right:.5rem;content:'＼'}
.btn_top:after{margin-left:.5rem;content:'／'}
.btn_bottom{display:flex;justify-content:center;align-items:center;height:45px}
.shopname{margin-right:15px;text-align:left;font-size:13px;line-height:1.3}
.phonenum{font-size:24px}
.phonenum:before{content:'\f2a0';font-family:'FontAwesome';font-weight:400;margin-right:5px}
#pagetop{bottom:70px}
.intro{margin:1em .5em 0;font-size:1em}
}

@media (max-width: 768px) {
p.title{font-size:1.2em;margin:20px 0}
.list li{flex:0 0 calc(20.4% - 2px);padding:10px 0;}
#shop_contents{margin:0 0 2em}
#shop_contents h2{margin:2em 0;font-size:1.6em}
#shop_contents h2:before{bottom:-22px;width:33px}
.summary th,.summary td{padding:10px;font-size:.9em}
.summary iframe{max-height:250px}
.price th,.price td{padding:20px 10px;font-size:1em}
.price td:nth-child(2){font-size:1.2em}
tr.col td{padding:1em}
tr.col td p{font-size:.8em}
.bg{padding:1.5em}
.layout-half{flex-flow:column}
.reverse{flex-flow:column-reverse}
.image img{margin:0 auto;display:block;max-height:200px;width:auto}
.text{font-size:.9em;width:100%}
.image{width:100%;margin:0 0 1.5em}
.shop_info{flex-flow:column;flex-wrap:wrap;padding:0 .5em}
.shop_txt,.shop_image{width:100%}
.info{padding:0.5em 1em}
.ttl_shop{margin:0 .5em 30px;padding:0 0 10px;font-size:1.3em}
.gmap{padding:0 .5em}
.information{flex-wrap:wrap}
.info_icon{width:100%;padding:.1em!important;border:0}
.info_icon:before{font-size:1em}
.footer__nav{display:block;margin:2em}
}

@media screen and (max-width:480px) {
table.off{width:100%}
.sec{width:100%;padding:0;border:none}
table.table{border:2px solid #39dbdb}
table.table tr th, table.table tr td{font-size:.7em;padding:5px}
table.table span{font-size:.8em;line-height:1.2em;margin-top:2px;display:inline-block}
.price_comparison p{line-height:1.2em;font-size:.7em}
.security{padding:1em}

.page__flexcotent02-2 iframe{height:250px}
.oshirase{font-size:1.2em;display:block;text-align:center;padding:10px}
.list li{flex:0 0 calc(20.75% - 2px)}
.list li p{font-size:.7em;margin:10px 0 0}
}

/* CO2削減 */
.wrap_co2{width:920px;margin:0 auto;}
.wrap_co2 p{line-height:1.5em!important;margin-bottom:1em;}
.mt20{margin-top:20px;}
.margin_section{margin-bottom:4rem;}
.margin_section .gmap{padding:0;}
.pc_center{text-align:center;}
.txt-right{text-align:right;margin: 0.5em 0 2em;font-size:0.8em;}
.box_mt{display:flex;background:#ffffff;padding:25px;border-radius:15px;}
.box_mt p:last-child{margin-bottom:0;}
.logo_mt{margin:0 20px 0 0;}
.logo_mt img{width:120px;}
.txt_green{font-size:2.4em;font-weight:bold;color:#68C152;line-height:1.5em;}
.txt_small{font-size:0.9em;}
.gray_band{font-size:2.0em;background: linear-gradient(transparent 0% ,50%, #EEEEEE 50%);line-height:1.5em;}
.txt_gray{color:#999999!important;}
.lh1{line-height:1.0;}
.br_sp{display:none;}
@media only screen and (max-width: 768px){
.wrap_co2,.wrap_co2_reduction{width:100%;margin:0 0 4rem;padding:0 20px;}
.page__box03 .wrap_co2{padding:0;}
.pc_center img{width:100%;}
.box_mt{display:block;}
.logo_mt{margin:0 auto 10px;text-align:center;}
.logo_mt img{width:90px;}
.txt_green{font-size:2.0em;}
.gray_band{font-size:1.6em;}
.br_sp{display:block;}
}