@charset "UTF-8";
/* CSS Document */

/*----- header-pc -----*/
.main-header{ 
  position: relative;
  z-index: 999;
}
.header-flex{
  width: 90%;
  height: 80px;
  display: flex; 
  justify-content: space-between; /*- flexの中で左右両端に配置 -*/
  align-items: center; /*- 上下中央 -*/
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
h1{
  font-family: 'Klee One', cursive;
  font-size: 3.0rem;
  color:#fff;
 }

/*- header-nav-pc -*/
.main-nav{
  display: flex;
  align-items: center;
}
.main-nav-li{
  margin-left:3vw;
  font-size:1.4rem;
  font-weight: bold;
  color:#fff;
}
.nav-botton{
  background-color: #4782af;
  padding:10px 15px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  transition: .4s;
}
.nav-botton:hover{
  background-color: #66a8d0;
}
.open-button, .close-button {
  display: none;
}

/*- 追従ナビゲーション-pc -*/
.main-header-fixed{
  width: 100%;
  height: 60px;
  background-color: #fff;
  position: fixed;
}
.header-flex-fixed{
  position: fixed;
  height: 60px;
}
.h1-fixed{
  color:#75726d;
}
.main-nav-li-fixed{
  color:#75726d;
}
.nav-botton-fixed{
  color:#fff;
}
/*- インスタ -*/
.scroll-after{
  display: none;
}
.scroll-after{
  display: none;
}
.scroll-after-fixed{
  display: block;
}
.scroll-before-fixed{
  display: none;
}

/*----- header-sp -----*/
@media(max-width:950px){
  .header-flex{
    height: 50px;
  }
  .main-nav-li{
    display: none;
  }
  h1{
    font-size:1.8rem;
  }
  .hyozi{
    display: block;
    position: relative;
  }
  .nav-img-box{
    position: absolute;
    right: 50px;
    top:-12px;
  }
  
/*- header-sp-ハンバーガー -*/

  .open-button {
    display: block;
    position: absolute;
    cursor: pointer;
    right: 0;
    width:25px;
    height: 25px;
      
  }
  .open-button span{
    position: absolute;
    height: 3px;
    width: 25px;
    display: block;
    content: "";
  }
   .open-button span::before{
    position: absolute;
    height: 3px;
    width: 25px;
    top:1px;
    background: #FFF;
    display: block;
    content: "";
    transition: all .5s;
  }
  .open-button span::after{
    position: absolute;
    height: 3px;
    width: 25px;
    top:10px;
    background: #FFF;
    display: block;
    content: "";
    transition: all .5s;
  }
  .open-button::after {
    content: "menu";
    color:#fff;
    font-size:1.0rem;
    bottom: 0;
    position: absolute;
    opacity: 1;
    transition: all .5s;
  }
  .open-button::before {
    content: "close";
    color:#fff;
    font-size:1.0rem;
    bottom: 0;
    position: absolute;
    opacity: 0;
  }
  
  
  /*- header-sp-追従ナビゲーション -*/
 .open-button-fixed span::before ,.open-button-fixed span::after{
    background: #75726d;
  }
  .open-button-fixed::after{
     color: #75726d;
  }
  
  
  /*- ハンバーガーナビゲーション -*/
  .main-header-show{
    width:100%;
    height: 100%;
    z-index: 9999;
    background-color: #75726d;
    position: fixed;
    opacity: 0.9;
  }
  .header-flex-show{
    display: block;
  }
  .h1-fixed-show{
    color:#fff;
    position:absolute;
    top:15px;
  }
  .open-button-fixed-show{
    top:12px;
  }
  
  .nav-show{
    display: block;
    margin-top:100px;
  }
  .main-nav-show{
    display: block;
  }
  .main-nav-li-show{
    display: block;
    color: #fff;
    margin-left: 0;
    margin-bottom:50px;
  }
  .main-nav-li-show a{
    padding:10px 10px 10px 0;
  }
  
  .main-nav-li-show::after{
    content: ">";
    color:#fff;
    position:absolute;
    right: 0;
  }
  .main-nav-li-show:last-child::after{
    content:none;
  }
  .open-button-fixed-show span::before{
    transform: translateY(4px) rotate(25deg);
    background:#fff;
  }
  .open-button-fixed-show span::after{
    transform: translateY(-5px) rotate(-25deg);
    background:#fff;
  }  
  .open-button-fixed-show::after{
    opacity: 0
  }
  .open-button-fixed-show::before{
    color:#fff;
    opacity: 1;
  }
  .nav-img-box-show{
    display: none;
  }

  

}

/*-----------------*/
/*----- fv-pc -----*/
.fv-section h2{
  font-family: 'Klee One', cursive;
  font-size: 3.0vw;
  color:#fff;
  position: absolute;
  top: 25vw;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 999;
}
.fv-img-box{
   position: relative;
   width: 100%;
   height: 50vw;
   overflow: hidden;
   margin: 0 auto;
}

/*- fv-slide-animation-pc -*/
.img-01, .img-02, .img-03{
   position: absolute;
   top:0;
   left:0;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
}
.img-01{
   background-image: url("../img/top/top_fv1_pc.jpg");
   animation: slide-animation-01 24s infinite;
}
.img-02{
   background-image: url("../img/top/top_fv2_pc.jpg");
   animation: slide-animation-02 24s infinite;
}
.img-03{
   background-image: url("../img/top/top_fv3_pc.jpg");
   animation: slide-animation-03 24s infinite;
}
@keyframes slide-animation-01 {
   0% {opacity: 1; transform: scale(1.05);}
   30% {opacity: 1;}
   40% {opacity: 0; transform: scale(1.0);}
   90% {opacity: 0}
   100% {opacity: 1; transform: scale(1.05);}
 }
 @keyframes slide-animation-02 {
   0% {opacity: 0;}
   30% {opacity: 0; transform: scale(1.05);}
   40% {opacity: 1;}
   60% {opacity: 1;}
   70% {opacity: 0; transform: scale(1.0);}
   100% {opacity: 0;}
 }
 @keyframes slide-animation-03 {
   0% {opacity: 0;}
   60% {opacity: 0;  transform: scale(1.05);}
   70% {opacity: 1;}
   90% {opacity: 1;}
   100% {opacity: 0; transform: scale(1.0);}
 }

/*----- fv-sp -----*/
@media(max-width:650px){
  .fv-section{
    position:relative;
    
  }
  .fv-section h2{
    font-size: 2.4rem;
    position: absolute;
    top: 50%;
    left:50%;
    transform: translate(-50%,-50%);
    letter-spacing: -2px;
    line-height: 1.5;
  }
  
  .fv-img-box{
   width: 100%;
   height: 500px;
  }
  
  .img-01{
   background-image: url("../img/top/top_fv1_sp@2x.jpg");
  }
.img-02{
   background-image: url("../img/top/top_fv2_sp@2x.jpg");
  }
.img-03{
   background-image: url("../img/top/top_fv3_sp@2x.jpg");
  }
  .sp-span{
    display: block;
  }
}


/*-----------------*/
/*----- lead-pc -----*/
.lead-section{
  background-color: #f6f3ee;
  background-image: url("../img/top/top_wood.png");
  background-repeat: no-repeat;
  background-position: 15%;
}
.lead-section h2{
  font-size: 3.0rem;
  font-family: 'Klee One', cursive;
  text-align: center;
  padding:100px 0 40px;
  line-height: 1.5;
}
.sp-br{
  /* pcの段落を削除 */
  display: none;
}
.lead-section p{
  text-align: center;
  line-height: 2.5;
  padding-bottom:40px;
}
.lead-botton{
  text-align: center;
  padding-bottom: 100px;
}
.lead-botton a{
  font-size: 2.0rem;
  display: inline-block;
  color: #fff;
  background-color: #4782af;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  padding:20px 30px;
  transition: .4s;
}
.lead-botton a::after{
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  content: "\f144";
  padding-left: 20px;
}
.lead-botton a:hover{
  background-color: #66a8d0;
}

/*----- lead-sp -----*/
@media(max-width:650px){
  .lead-section{
    background-color: #f6f3ee;
    background-size:90%;
    background-repeat: no-repeat;
    background-position: 50% 30%;
  }
  .lead-section h2{
    font-size: 2.4rem;
    padding: 80px 0 30px;
    letter-spacing:-1px;
  }
  .sp-br{
    display: block;
  }
  .sp-br-none{
    display: none;
  }
  .lead-section p{
    line-height: 1.8;
    text-align: left;
  }
  .lead-botton{
     padding-bottom: 80px;
  }
  
  .lead-botton a{
    font-size: 1.6rem;
    padding:20px 20px;
    letter-spacing:-1px;
  }
}




/*-----------------------*/
/*----- business-pc -----*/
.business-section{
  background-image: url("../img/top/top_business_bg_pc.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.business-content p{
  padding-bottom:30px; 
}
.business-link{
  display: flex;
  justify-content: space-between;
  padding-bottom:100px;
  gap:20px;
}
.business-link-botton{
  position: relative;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  transition: .4s;
}
.business-link-botton::before{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transition: .4s;
}
.business-link-botton:hover::before{
   opacity: 0.3;
}
.business-img-box{
  max-width:500px; 
}
.business-link h3{
  padding:20px;
  background-color:#fff;
}
.business-link h3::after{
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  content: "\f144";
  position:absolute;
  right: 4%;
}

/*----- business-sp -----*/
@media(max-width:700px){
  .business-section{
  background-image: url("../img/top/top_business_bg_sp@2x.jpg");
}
  .business-link{
    display: block;
  }
  .business-img-box{
    max-width:none; 
 }
  .business-link{
    padding-bottom:50px;
  }
  .business-link h3{
    margin-bottom:30px;
  }
}



/*-------------------*/


