@charset "UTF-8";

.slick-prev,
.slick-next {
  width: 34px;
  height: 63px;
  top: calc(50% - 17px);
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0); 
}
.slick-prev::before, 
.slick-next::before {
  content: '';
}
.slick-prev,
.slick-prev:focus,
.slick-prev:hover {
  background: url(../../common/imgs/btn_prev.png) no-repeat center center / 100% 100%;
  left: -50px;
  z-index: 9;
}
.slick-next,
.slick-next:focus,
.slick-next:hover {
  background: url(../../common/imgs/btn_next.png) no-repeat center center / 100% 100%;
  right: -50px;
  z-index: 9;
}
.slick-next:hover,
.slick-prev:hover {
  opacity: 0.8;
}

.container {
  max-width: 1350px;
  width: calc(100% - 40px);
  margin: 0 auto;
}

#hero {
  background: url(../imgs/mv.jpg) no-repeat center center / cover;
}

/*
.box {
	margin-bottom: 10%;
	background-repeat: no-repeat;
	background-position: top left / auto auto, url(../imgs/bg2.png) no-repeat bottom right / auto auto;
	background-image: url(../imgs/bg1.png);
}
*/
.box {
	margin-bottom: 10%;

}

.box .boxTxt {
  margin: 0 0 70px;
  line-height: 1.6;
}

.box .boxTxt h2 {
  margin-bottom: 30px;
}

.box .boxTxt h3 {
  font-size: 24px;
  margin-bottom: 20px;
}
.box .boxTxt h3 sup{font-size: 12px;}
.box .boxTxt .txt {
  font-size: 14px;
  line-height: 2.5;
  margin-bottom: 20px;
}

.box .boxTxt .cap p {
  font-size: 10px;
  line-height: 1.6;
}

.box .boxImg {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 70px;
}


.box .boxImg .left {
  width: 27.4%;
}

.box .boxImg .left .capIn {
  text-align: right;
}

.box .boxImg .right {
  width: 67.2%;
}

.box .boxSlider {
  max-width: 1200px;
  width: calc(100% - 100px);
  margin: 0 auto;
}

.box .boxSlider .item p {
  text-align: right;
/*  margin-top: 10px;*/
  font-size: 10px;
}


.box .column {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.box .column .boxImg {
  width: 58.5%;
}

.box .column .boxTxt {
  width: 30%;
}

#wordClass {
  padding: 8% 0 0;
}

#wordClass .boxTxt {
  text-align: center;
  margin-bottom: 70px;
}

#wordClass .boxTxt h2 {
  margin-bottom: 60px;
}

#wordClass .boxTxt h3 {
  margin-bottom: 50px;

}


#energish .container {
  max-width: 1550px;
}


#energish .boxTxt {
  order: 2;
}

#energish .boxTxt .cap p {
  position: relative;
  padding-left: 60px;
}

#energish .boxTxt .cap p span {
  position: absolute;
  top: 0;
  left: 0;
}

#energish .boxImg {
  order: 1;
}


#edge {
/*  background: url(../imgs/bg1.png) no-repeat center left / auto auto;*/
}

#city {
  margin-bottom: 0;
/*  background: url(../imgs/bg2.png) no-repeat top right / auto auto;*/
}


#city .container {
  max-width: 1100px;
}


#city .boxTxt {
  width: 43.3%;
}

/*
#city .boxTxt h3 {
  margin-bottom: 40px;
}
*/

/*
#city .boxTxt .txt {
  font-size: 24px;
  line-height: 1.6;
}
*/

#city .boxImg {
  width: 54.7%;
}

#city .boxImg .photo .caption {
  text-align: right;
}


.imgKusatsuColor{max-width: 350px;padding-top: 20px; margin: auto;}
.imgKusatsuColor .caption{text-align: right;}


#shotengai{background-color: #333; padding: 40px;}
#shotengai .container {
  max-width: 1100px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap}
#shotengai.box .container .boxTxt{width: 46%;margin-bottom: 0;}
#shotengai.box .container .boxImg{width: 52%;margin-bottom: 0;}
#shotengai.box .container .boxImg .photo{position: relative;}
#shotengai.box .container .boxImg .photo figcaption{position: absolute; font-size: 10px; bottom: 5px; right:5px;}
#shotengai.box .container .boxTxt .cap{font-size: 10px;}
#shotengai.box .container .boxTxt .cap a{color: white; text-decoration: underline;font-size: 9px;}

@media screen and (max-width: 768px) {
#shotengai.box .container .boxTxt{width: 100%;margin-bottom: 25px; order: 2}
#shotengai.box .container .boxImg{width: 100%;margin-bottom: 0; order: 1;display:inherit}
}





/* MEDIA */


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

  .box .column .boxTxt {
    width: 40%;
  }

}



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

#hero {
  background: url(../imgs/mv-sp.jpg) no-repeat center center / cover;
}	
	
	
  .slick-prev,
  .slick-next {
    width: 16px;
    height: 30px;
    top: calc(50% - 17px);
  }

  .slick-prev,
  .slick-prev:focus,
  .slick-prev:hover {
    left: 10px;
  }
  .slick-next,
  .slick-next:focus,
  .slick-next:hover {
    right: 10px;
  }

  .container {
    width: 100%;
  }

  .box {
    margin-bottom: 15%;
  }

  .box .boxImg {
    display: none;
  }

  .box .boxTxt {
    order: 1 !important;
    width: 100% !important;
    margin-bottom: 8%;
  }

  .box .boxTxt h2 {
    padding: 0 20px;
  }

  .box .boxTxt h3 {
    padding: 0 20px;    
  }

  .box .boxTxt figure {
    margin-bottom: 70px;
  }

  .box .boxTxt figure img {
    width: 100%;
  }

  .box .boxTxt .txt {
    padding: 0 20px;    
  }

  .box .cap {
    padding: 0 20px;
  }

  .box .boxSlider {
    width: calc(100% - 40px);
  }

  #wordClass {
    padding: 12% 0 0;
/*    background: url(../imgs/bg1.png) no-repeat top right / 80% auto, url(../imgs/bg2.png) no-repeat center right / 80% auto, url(../imgs/bg2.png) no-repeat bottom -10% right 0 / auto auto;*/
  }


/*
  #wordClass .boxTxt {
    background: ;
  }
*/

  #wordClass .boxTxt h2 {
    width: 70%;
  }

  #wordClass .boxTxt {
    text-align: left;
    margin-bottom: 10%;
  }

  #wordClass .boxSlider {
    margin-bottom: 70px;
  }

  #wordClass .mapSp {
    padding: 0 20px;
    margin: 0 auto 70px;
  }

  #wordClass .mapSp figure {
    max-width: 369px;
    width: 100%;
    margin: 0 auto;
  }

  #wordClass .mapSp {
    
  }

  #wordClass .mapSp .capIn{
    text-align: right;
  }





  #energish {
/*    background: url(../imgs/bg1.png) no-repeat top right / 80% auto, url(../imgs/bg2.png) no-repeat bottom 10% right / auto auto;*/
  }

  #energish .boxTxt h2 {
    width: 46.7%;
  }


  #edge {
/*    background: url(../imgs/bg1.png) no-repeat top right / 80% auto, url(../imgs/bg2.png) no-repeat bottom right / 90% auto;*/
  }


  #edge .boxTxt h2 {
    width: 74.3%;
  }

  
  #city {
    background: none;
  }
  
/*
  #city .boxTxt h3 {
    margin-bottom: ;
  }
*/
  #city .boxTxt figure {
    margin-bottom: 20px;
  }
  #city .boxTxt figure figcaption {
    text-align: right;
    padding: 5px 5px 0;
  }

}




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

  .box .boxTxt h2 {
    margin-bottom: 8% !important;
  }

  .box .boxTxt h3 {
    font-size: 5.5vw !important;
    margin-bottom: 8% !important;
  }

  .box .boxTxt figure {
    margin-bottom: 8%;
  }

  .box .boxTxt .txt {
    font-size: 3.5vw;
    margin-bottom: 8%;
  }  


  #city .boxTxt .txt {
    font-size: 3.5vw;
  }

}