@charset "UTF-8";
/* CSS Document */
html {
  font-size: 62.5%; /* 16px * 62.5% = 10px */
  width: 100%;
  box-sizing: border-box;
}
body { 
  color: #1f1d1c; /* RGB */
  font-family: 'Zen Maru Gothic', sans-serif,YuGothic, "游ゴシック", "Yu Gothic", "メイリオ";
  font-weight: 400;
  font-size: 1.6em;
}
img{
  vertical-align: bottom;
  max-width:100%;
  height:auto;
}
.wrapper{
  max-width: 1040px;
  margin:0 auto;
  position:relative;
  width: 90%;
}
.none{
  display: none;
}
p{
  line-height: 1.8;
}


/*----- sub-header-pc -----*/
.sub-header{ 
  width: 100%;
  height: 60px;
  background-color: #fff;
  position: fixed;
  z-index: 999;
}
.sub-header-flex{
  width: 90vw;
  height: 60px;
  display: flex; 
  justify-content: space-between;
  align-items: center; /*- 上下中央 -*/
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
}
.sub-header-h1{
  font-family: 'Klee One', cursive;
  font-size: 3.0rem;
  color:#75726d;
}
.sub-nav{
  display: flex;
  align-items: center;
}
.sub-nav-li{
  margin-left:3vw;
  font-size:1.4rem;
  font-weight: bold;
  color:#75726d;
}
.sub-nav-botton{
  background-color: #4782af;
  padding:10px 15px;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  color:#fff;
  transition: .4s;

}
.sub-nav-botton:hover{
  background-color: #66a8d0;
}

/*- インスタアイコンの大きさ -*/
.sub-nav-img-box ,.nav-img-box,.footer-nav-img-box{
  width:24px;
}
.sub-open-button, .sub-close-button {
  display: none;
}


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

/*----------------------*/
/*----- midashi-pc -----*/
.midashi{
  font-size:3.0rem;
  padding:100px 0 40px;
  margin-left:30px;
}
 .midashi::before{
  content: "";
  display: block;
  position:absolute;
  width: 6px;
  height: 40px;
  background: #4782af;
  left:0;
  top:95px;
}
.color{
  color:#4782af;
}
/*----- midashi-sp -----*/
@media(max-width:950px){
  .midashi{
    font-size:2.4rem;
    padding-top:80px;
  }
  .midashi::before{
  height: 35px;
  top:75px;
  }
}

/*----------------------*/
/*----- works-pc -----*/
.works-section{
  position: relative;
}
.works-img{
  background-image: url("../img/top/top_works_bg_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height:334px;
  position: absolute;
  bottom: 0;
  z-index: -1;
}
.works-content p{
  padding-bottom:30px;
}
.works-link{
  display: flex;
  justify-content: space-between;
  padding-bottom:100px;
  gap:20px;
}
.works-link a{
  position: relative;
}
.works-link a::before{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transition: .4s;
}
.works-link a:hover::before{
  opacity: 0.3;
}

.works-img-box{
  max-width:240px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
}
.works-link h3{
  padding:20px;
  background-color:#FFF;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
}
.works-link h3::after{
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  content: "\f144";
  position:absolute;
  right: 10%;
}

/*----- works-sp -----*/
@media(max-width:850px){
  .works-img{
  background-image: url("../img/top/top_works_bg_sp@2x.jpg");
  }
  .works-link{
  display: flex;
  justify-content: center;
  padding-bottom:80px;
  gap:30px;
  flex-wrap: wrap;
  }
  .works-img-box{
  max-width:335px;
  }
}


/*----------------------*/
/*----- contact-pc -----*/
.contact-section{
  background-color: #f6f3ee;
}
.contact-content p{
  padding-bottom:50px;
}
.contact-content ul{
  display: flex;
  justify-content: center;
  padding-bottom:100px;
  gap:40px;
}
.phone-botton,.form-botton{
  font-size: 2.0rem;
  display: inline-block;
  width: 250px;
  height: 70px;
  background-color: #4782af;
  color: #fff;
  line-height: 70px;
  text-align: center;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
}
.line-botton{
  font-size: 2.0rem;
  display: inline-block;
  width: 250px;
  height: 70px;
  background-color: #06c755;
  color: #fff;
  line-height: 70px;
  text-align: center;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  position:relative;
  padding-left: 45px;
}

.form-botton, .line-botton{
  transition: .4s
}
.form-botton:hover{
  background-color: #66a8d0;
}

.line-botton::after{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transition: .4s;
}

.line-botton:hover::after{
  opacity: 0.3;
}


.phone-botton::before{
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  content: "\f095";
  padding-right: 10px;
}
.form-botton::before{
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font: var(--fa-font-solid);
  content: "\f0e0";
  padding-right: 10px;
}
.line-botton::before{
    content: "";
    background: url("../img/others/line_icon.png");
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 30px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 40px;
    height: 40px; 
}

/*----- contact-sp -----*/
@media(max-width:950px){
  .contact-content p{
  padding-bottom:40px;
}
  .contact-content ul{
    display: block;
    padding-bottom:60px;
  }
  .contact-content li{
    margin-bottom:20px;
    text-align: center;
  }
  .phone-botton,.form-botton{
    font-size: 1.6rem;
    width: 300px;
    height: 54px;
    line-height: 54px;
}
  .line-botton{
    font-size: 1.6rem;
    width: 300px;
    height: 54px;
    line-height: 54px;
    padding-left: 33px;
  }
  .line-botton::before{
    left: 70px;
    width: 35px;
    height: 35px;
  }
}

@media(min-width:500px){
  .phone-botton[href^="tel:09082058915"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}  
}
@media(max-width:500px){
   .phone-botton{
    transition: .4s
  }
  .phone-botton:hover{
    background-color: #66a8d0;
  }   
}


/*---------------------*/
/*----- footer-pc -----*/
.footer{
  text-align: center;
}
.footer h2{
  font-family: 'Klee One', cursive;
  font-size:3.0rem;
  padding-top:100px;
}
.footer p{
  font-size:2.0rem;
  padding:10px 0 100px 0;
}
.footer-flex{
  display: flex;
  justify-content: center;
  gap: 0 40px;
  margin-bottom:100px;
  align-items: center;
}

/*----- footer-sp -----*/
@media(max-width:850px){
  .footer h2{
    font-size: 2.2rem;
    padding-top: 80px
  }
  .footer p{
    font-size: 1.4rem;
    padding-bottom:80px;
  }
  .footer-flex{
    margin-bottom: 80px;
  }
  
  .footer-flex li{
    margin-bottom:30px;
  }
  .footer-flex a{
    font-size: 1.4rem;
  }
  .footer-nav-img-box{
    width: 30px;
    margin: 0 auto;
  }
  .footer-flex{
    display: block;
  }
  
}


/*------------------------*/
/*----- animation-pc -----*/
.shinchiku-section,
.reform-section,
.greeting-section ,
.form-section ,
.flow-section ,
.works-section-1,
.works-section-2,
.works-section-3,
.works-section-4,
.works-section-5{
 animation-name:fadeUpAnime;
animation-duration:2.0s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(10px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.about-fv-section h2 ,.business-fv-section h2 ,.contact-fv-section h2 ,.flow-fv-section h2 ,.flow-fv-section p ,.works-fv-section h2{
  animation-name:fadeInAnime;
animation-duration:2s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


/*----- days-pc -----*/
.days-content{
  display: flex;
  justify-content: space-between;
  padding-bottom:100px;
}
.days-description p{
  padding: 0 130px 50px 0;
}
.days-img{
  max-width: 357px;
  margin-top:100px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
}
.days-botton{
  display: inline-block;
  color: #fff;
  background-color: #4782af;
  border-radius: 5px;
  box-shadow: 5px 5px 10px rgb(117 114 109 / 20%);
  padding:20px;
  position: relative;
  transition: .4s;
}
.days-botton:hover{
  background-color: #66a8d0;
}
.days-botton a{
  font-size:2.0rem;
  margin-left: 42px;
  margin-right: 10px;
  padding:10px 0; 
}
.days-botton a::before{
  content: "";
  background: url("../img/others/Instagram_icon.png");
  background-repeat: no-repeat;
  background-size: cover; 
  position: absolute;
  left:32px;
  top:0;
  bottom:0;
  margin: auto 0;
  width:20px;
  height: 20px;
}

/*----- days-sp -----*/
@media(max-width:700px){
  .days-content{
    display: block;
    padding-bottom:80px;
  }
  .sp-center{
    text-align: center;
  }
  .days-botton a{
    font-size:1.6rem;
  }
  .days-description p{
    padding: 0 0 30px 0;
    text-align: left;
  }
  .days-img{
  margin:30px auto 0;
  }
}

/* サンクスページ */
.thanks-page{
  margin-top:100px;
  margin-bottom:100px;
}


/*
白	#f6f3ee
青	#4782af
茶	#75726d
黒	#1f1d1c

transition: .4s;
background-color: #66a8d0;
*/
