@charset "utf-8";
/*----------------------------------------
   #bgPhoto
-----------------------------------------*/
#linkAbout { padding: 49px 0 0; margin: -49px 0 0; }

/*----------------------------------------
   #home1
-----------------------------------------*/

#home1 { width: 100%; height: 100vh; min-height: 100%; position: relative; overflow: hidden; z-index: 0; display: block;}
#home1 .coverImg { min-height: 100%; width: 100%; background-size: cover !important;  }
.coverSlider { height: 100%; }
.slick-list,
.slick-track { height: 100%; }



/* ----- .bg ----- */
#home1 .bg1 { background: url(../images/top/01.jpg) bottom center no-repeat; background-attachment: fixed; }
#home1 .bg2 { background: url(../images/top/02.jpg) center center no-repeat; background-attachment: fixed; }
#home1 .bg3 { background: url(../images/top/03.jpg) center center no-repeat; background-attachment: fixed; }
/* ----- .overlay ----- */
#home1 .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: block; background: #000; z-index: 3; opacity: .2; opacity: .1; }
/* ----- .catchArea ----- */
#home1 .catchArea { width: 99%; text-align: center; z-index: 500; }
#home1 .catchArea img{
    max-width: 250px;
    width:50%;
    margin-bottom:10px;
}

#home1 .catchArea h2.catch {
  color: #fff;
  font-size: 2.2rem;/*120px*/
  line-height: 1.1;
  font-weight: 200;/*700*/
  text-shadow: 0 0 1px rgba(0,0,0,0.8),
  0 1px 1px rgba(0,0,0,0.8), 0 -1px 1px rgba(255,255,255,0.2);
  /*transform: rotate(-10deg);
  -moz-transform: rotate(-10deg);
  -webkit-transform: rotate(-10deg);*/
  padding-bottom:25px;
}
#home1 .catchArea h2.catch span { font-size: .8em; letter-spacing: .05em; vertical-align:0; }


/* ----- .scrollDown ----- */
#home1 .scrollDown {
   position: absolute;
   bottom: 30px;
   left: 50%;
   display: block;
   width: 50px;
   height: 50px;
   margin-left: -25px;
   z-index: 300;
   text-align: center;
   -webkit-animation: scrollTop 1s linear infinite alternate;
   -moz-animation: scrollTop 1s linear infinite alternate;
   -ms-animation: scrollTop 1s linear infinite alternate;
   -o-animation: scrollTop 1s linear infinite alternate;
   animation: scrollTop 1s linear infinite alternate;
   line-height: 50px;
   /*background: #898072;
   -webkit-border-radius: 30px;
   -moz-border-radius: 30px;
   border-radius: 30px; */
 }
#home1 .scrollDown::before {
  color: #fff;
  font-size: 4rem;
  position: absolute;
  width: 50px;
  height: 50px;
  display: block;
  text-align: center;
  font-family: 'themify';
  content: "\e663";
}
/*#home1 .scrollDown:hover { background: #222; }*/
/* ----- .slick-prev / .slick-next ----- */
#home1 .slick-prev {
  bottom: 30px;
  right: 79px;
  color: #fff;
  border: #fff 1px solid;
  background:none;
}
#home1 .slick-next {
  bottom: 30px;
  right: 30px;
  color: #fff;
  border: #fff 1px solid;
  background:none;
}
#home1 .slick-prev:hover,
#home1 .slick-next:hover{
  outline: none;
  color: #fff;
  background:#898072;
  border: #86e5d1 1px solid;
}

@-webkit-keyframes scrollTop{0%{-webkit-transform:translate(0,0)}100%{-webkit-transform:translate(0,10px)}}@-moz-keyframes scrollTop{0%{-moz-transform:translate(0,0)}100%{-moz-transform:translate(0,10px)}}@-ms-keyframes scrollTop{0%{-ms-transform:translate(0,0)}100%{-ms-transform:translate(0,10px)}}@-o-keyframes scrollTop{0%{-o-transform:translate(0,0)}100%{-o-transform:translate(0,10px)}}@keyframes scrollTop{0%{transform:translate(0,0)}100%{transform:translate(0,10px)}}


/*----------------------------------------
    #home2
-----------------------------------------*/
#home2 { margin: 0; padding: 60px 7.5%; position: relative; background: #fff; border-bottom: 1px solid #f0f0f0;}

/* ----- .catchArea ----- */
#home2 .catchArea { margin: 0; padding: 0 0 40px; width: 100%; text-align: center; position: relative; background:none; }
#home2 .catchArea h2 { font-size: 3rem; letter-spacing: .15em; line-height: 1.9; font-weight: 700;}

/* ----- .about ----- */
#home2 .about { max-width:700px; margin: 0 auto; text-align:center; }
#home2 .about p { font-size:1.8rem; line-height: 2.5; letter-spacing: .2em; }
#home2 .spBlock { display: none; }
#home2 .pcBlock { display: block; }
.about .sign { padding-top: 50px; text-align: center; }


/* .linkArea */
#home2 .linkArea { margin-top: 40px; }




/*----------------------------------------
   #home3
-----------------------------------------*/

#home3 {
  margin: 0 auto;
  padding: 60px 20%;
  position:relative;
  background:#fff;
  border-bottom:#f0f0f0 1px solid;
}

#home3 .catchArea {
    margin: 0;
    padding: 0 0 40px;
    position: relative;
    text-align: center;
    width: 100%;
}
#home3 .catchArea h2 {
    font-size: 3rem;
    letter-spacing: 0.15em;
    line-height: 1.9;
    font-weight: 700;

}



/* .headline */
#home3 .headline { margin: 0 0 35px; padding: 100px 0 0; text-align: center; position: relative; background: url(../images/top/iconMenuB.png) top center no-repeat; }


/* ----- .inner ----- */
#home3 .inner { margin:auto; width:90%;}
.twheight{height:500px;}



@media screen and (max-width: 1024px) {
#linkAbout { padding: 50px 0 0; margin: -50px 0 0; }
#home1 .bg1 { background: url(../images/top/01.jpg) bottom center no-repeat; background-attachment: scroll; }
#home1 .bg2 { background: url(../images/top/02.jpg) center center no-repeat; background-attachment: scroll; }
#home1 .bg3 { background: url(../images/top/03.jpg) center center no-repeat; background-attachment: scroll; }
#home1 .catchArea h2.catch {
  font-size: 1.8rem;
  padding-bottom:25px;
 }
#home1 .catchArea img{margin-top:40px;max-width: 200px;
width:40%;}



#home2 { padding: 80px 7.5%;}
#home2 .catchArea { margin: 0; padding: 0 0 30px; }
#home2 .catchArea h2 { font-size: 3rem; line-height: 1.9; }
#home2 .about { text-align:center; }
#home2 .about p { font-size:15px; line-height: 2.3; letter-spacing: .15em; }


}


@media screen and (max-width: 950px) {
#home2 .catchArea { margin: 0; padding: 0 0 30px; }
#home2 .catchArea h2 { font-size: 2.8rem; line-height: 1.9; }
#home2 .about { text-align:center; }
#home2 .about p { font-size:15px; line-height: 2.3; letter-spacing: .15em; }

}

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

#home1 { min-height: 600px;height:80%;}
#home1 .coverImg { min-height: 100%;}
.coverSlider { height: 600px; }
.coverSlider .slick-list,.coverSlider .slick-track { height: 600px; }
/*#home1 .catchArea h2.catch { font-size: 90px; }*/
#home1 .catchArea h2.catch span { font-size: .85em; }
#home1 .address,
#home1 .scrollDown { display:none; }


#home2 .catchArea h2 { font-size:2.4rem; letter-spacing: .125em; line-height: 2; }




#home2 .about { text-align:center; }
#home2 .about p { font-size:14px; line-height: 2.2; letter-spacing: .15em; }




/* .headline */
#home3 .headline { margin: 0 0 35px; padding: 80px 0 0; text-align: center; position: relative; background: url(../images/top/iconMenuBSp.png) top center no-repeat; background-size:100px 65px; }



}

@media screen and (max-width: 738px) {
#home1 { min-height: 500px; }
.coverSlider { height: 500px; }
.coverSlider .slick-list,.coverSlider .slick-track { height: 500px; }
#home1 .catchArea h2.catch { font-size: 1.8rem; /*font-weight:bold;*/ padding-bottom:25px; }


#home2 { padding: 50px 7.5%; }



/*----------------------------------------
   #home3
-----------------------------------------*/

#home3 { margin: 0 auto; padding: 60px 0%;position:relative; background:#fff; border-bottom:#f0f0f0 1px solid;}
#home3 .catchArea h2 { font-size:2.4rem; letter-spacing: .125em; line-height: 2; }


/* .headline */
#home3 .headline { margin: 0 0 35px;}


/* ----- .inner ----- */
#home3 .inner { }




/* .leftContent / .rightContent */
#home3 .leftContent { float: none; text-align:justify; width: 100%; }
#home3 .rightContent { float: none; text-align:justify; width: 100%; margin-top:35px; padding-top:35px; border-top:#f0f0f0 1px dashed; }
#home3 .inner p { font-size:13px; text-align:justify;}




}



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


#home2 .catchArea { margin: 0; padding: 0 0 30px; }
#home2 .catchArea h2 { font-size:2.8rem; letter-spacing: .1em; line-height: 2; }
#home2 .catchArea h2 br { display:none; }
#home2 .about { text-align: justify; }
#home2 .about p { font-size:13px; line-height: 2.2; letter-spacing: .1em; }
#home2 .about p br { display:none; }

#home3 h3.catch { font-size: 16px; letter-spacing: .1em; line-height: 2; margin-bottom:15px; text-align: justify; }
#home3 h3.catch br { display:none; }
}

@media screen and (max-width: 600px) {
#home1 .catchArea h2.catch { font-size: 1.4rem; padding-bottom:25px; }
#home2 .catchArea h2 br { display:none; }

}


@media screen and (max-width: 414px) {
#home1 { min-height: 400px; }
.coverSlider { height: 400px; }
.coverSlider .slick-list,.coverSlider .slick-track { height: 400px; }


#home2 { padding: 30px 5%;}
#home2 .catchArea { padding: 0 0 25px; }
#home2 .catchArea h2 { font-size:2rem; letter-spacing: .1em; line-height: 2;  }

#home3 { padding: 40px 0;}
#home3 .catchArea{ padding: 0 0 30px;}
#home3 .catchArea h2 { font-size:2rem; letter-spacing: .1em; line-height: 2;  }
#home3 .inner { }


}
