@charset "UTF-8";
/*
Theme Name: willto

*/
/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */



a {
  word-break: break-all; }

body {
  font-size: 16px;
  line-height: 1.7;
  color: #2b2b2b;
  font-family: "Noto Sans JP",Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo,sans-serif; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.alignleft {
  float: left;
  margin: 0px 15px 15px 0; }

.alignright {
  float: right;
  margin: 0px 0px 15px 15px; }

.aligncenter {
  display: block;
  margin: auto; }

p {
  font-size: 16px;
  line-height: 1.7; }

li {
  list-style: none; }

h2, h3 {
  clear: both; }

.bold {
  font-weight: bold; }

caption {
font-size: 1.3em;
font-weight: bold;
caption-side: top;
}




/*********** パーツ*******************/
/*********** グーグルマップのIFLAME*******************/
.google_map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; }

.google_map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.scroll-table {
  overflow: auto;
  white-space: nowrap; }

/*********** パーツ*******************/
.note_list {
  padding-left: 1rem; }

.note_list li {
  padding: 5px 0px 5px 5px;
  position: relative; }

.note_list li:before {
  position: absolute;
  top: 15px;
  left: -10px;
  content: "";
  width: 7px;
  height: 7px;
  background: #B0938A;
  border-radius: 7px;
  background-size: 10%; }

.line {
  border-bottom: solid 1px #BC8F8F; }

a.links {
  position: relative;
  padding-right: 13px; }

a.links:after {
  position: absolute;
  content: '\f24d';
  font-family: 'Font Awesome 5 Free';
  font-weight: 400;
  top: 5px;
  right: 1px;
  font-size: 0.5em; }

.scroll-table {
  overflow: auto;
  white-space: nowrap; }

/*********** ヘッダー*******************/
header{
  
 }



/*********** ナビゲーション*******************/

#navi{
 
  position: fixed;
  z-index: 999;
}
#navi nav{
   /* background: rgba(255,255,255,0.6); */
/*background-color: #fff;
border-radius: 5px;*/
  }

.text-green{
  color: #7bb203;
}


#navmenu1 ul li a{
  font-size: 0.9em;
  color: #fff;
  font-family: 'Lato', sans-serif;
   padding: .5em 3em;
  font-size: 1rem;
 
}


#navmenu1 ul li:last-child a{
  background-color: #92c120;
  border-radius: 25px;
  color:#fff;
 
 
}


#navmenu1 ul li span{
  display: block;
  font-size: .5em;
  text-align: center;
  color: #d8d8d8;
}

#navmenu1 .dropdown-menu{
  top:35px;
}

.contact a{
background-color: rgba(113, 113, 113,0.5);
} 


/*********** メインイメージ*******************/

#main {
  position:relative;
  padding:10em 0 10em;
  background: url(images/bg-main.jpg) no-repeat center 0px;
  background-size:100%; 
}


#main p{
  color: #fff;
}


#main h1 span{
  display:block;
     
}

.text-shadow-white{
 text-shadow    : 
        2px  2px 5px rgba(255, 255, 255, 0.83),
      -2px  2px 5px rgba(255, 255, 255, 0.83),
       2px -2px 5px rgba(255, 255, 255, 0.83),
      -2px -2px 5px rgba(255, 255, 255, 0.83),
       2px  0px 5px rgba(255, 255, 255, 0.83),
       0px  2px 5px rgba(255, 255, 255, 0.83),
      -2px  0px 5px rgba(255, 255, 255, 0.83),
       0px -2px 5px rgba(255, 255, 255, 0.83);      /* 文字の影 */ 
}






/*********** アイコンエリア色*******************/

/***********font*******************/

#top h2{
  font-weight: bold;
  font-size: 3rem;
  position: relative;
  font-family: 'Lato', sans-serif;
  padding-bottom: .6rem;
}

#top h2 span{
  font-size: 30%;
}



/*********** visionArea*******************/
#visionArea {
background: url(images/bg_vision.jpg) no-repeat top center /cover;
}

@media (min-width:756px){
  #visionArea{
    padding:100px 0 150px;
  }


  #visionArea .left{
    position:relative;
  }
  .vision_img1{
    position: absolute;
    left:-10px;
    bottom:-250px;
    width:90%;

  }

}






/*****************news*********************/

table.news tr{
  border-bottom:1px solid #ccc;
}

table.news tr a{
  text-decoration: none;
}

a.btn-more{
display: inline-block;
position: relative;
border:1px solid #c2c2c2;;
padding:.5em 4em;
font-family: 'Lato', sans-serif;
font-size: 18px;
color: #c2c2c2;
font-weight: bold;
border-radius:30px;
transition: all .6s ease-in-out;
}

a.btn-more:hover{
background:#92c120;
color:#fff;
text-decoration: none;
}

a.btn-more.bk{
display: inline-block;
position: relative;
border:1px solid #000;
padding:.5em 4em;
font-family: 'Montserrat', sans-serif;
font-size: 18px;
background: #000;
color:#fff;
font-weight: bold; 
}

a.btn-more.bk:hover{
background: transparent;
color:#000;
text-decoration: none;
}

.bg-opa{
  background: rgba(255,255,255,0.6);
}




/*****************business*********************/
#business{
  background: rgb(2,0,36);
  background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(232,232,232,1) 0%, rgba(231,231,231,0.548103909532563) 84%, rgba(255,255,255,1) 84%, rgba(255,255,255,1) 100%, rgba(255,255,255,1) 100%);
}

#business .bg-dark{
background-color:#92c120 !important;

}
#business  h3.bg-dark{
  font-size: 1.5rem !important;
}


#business .img{
  background: rgba(20, 20, 20);
  display: inline-block;
}

#business .img img{
  opacity:0.6;
  display: block;
  
}

#business p.position-absolute{
  bottom:0;
}

/*****************about*********************/
#about{
  background: url(images/bg-about.jpg) no-repeat 400px;
}
@media (max-width:740px){
  #about{
    background:none;
  }
}



/*****************contact*********************/

a.btntel {
  font-family: 'Lato', sans-serif;
    display:block;

    text-decoration: none;
    color: #fff;
    position: relative;
    box-sizing: border-box;
    text-align: center;
    padding: 1.2em 2.5em;
}

.tel{
   background: #7ea524;
}

.mail{
  background: #5c8600ef;
} 


a.tellink {
}


#contact{
  background: linear-gradient(180deg, #ffffff 0%, #ffffff 69%, #92c120 69%, #92c120 100%);
}





form table input[type='text'],form table input[type='tel'],form table input[type='email']{
  width:90%;
}

textarea{
 width:90%;
}

@media (min-width: 992px)  {
#top  #allArea .heading.text-center.mb-4{
  margin-bottom: 50px !important;
 }

#allArea .textarea{
      width:70%;
    }
}







/**************footer************************/

#footerMenu li{
  display: inline-block;
}

#footer{
  background: #92c120;
  padding-bottom: 2em;
}


#company p{
  color:#fff;
  margin-bottom: .7em;

}


#footer li a{
  color:#fff;
}


#footer ul li a {
    display: block;
    margin: 5px;
    padding-left:15px;
    text-decoration: none;
    color: #fff;
    position: relative;
}

#footer ul li a:before {
    position: absolute;
    left: -5px;
    content: "";
    width: 5px;
    height: 15px;
    border-right: 1px solid #fff;
    top:7px;    
}




/****************下層ページ**********************/



.bg-opacity6{
  background:rgba(255,255,255,0.8);
}


.headerBg{
background: url(images/bg_header.jpg) no-repeat center/cover;
padding:100px 0 100px;
position: relative;
}

@media (max-width:740px) {
  
#main .h1{
  font-size: 2rem;
}

#navmenu1 ul li a{
  color: #92c120;
}

}


.headerBg h1{
padding-top: 70px;
 padding-bottom: 10px;
 font-family: 'Lato', sans-serif;
}

.kasou h2{
  padding:0  0 0 .7em;
  border-left: 4px solid #92c120;
  color:#92c120;
}


#sidebar h3{
  border-bottom: 2px solid #92c120;
  color:#92c120;
  padding-bottom: .5em;

}


/***************下層ページのレイアウト***********************/




/***********パンくず調整***************************/
.post.post-page,.post.post-post{
  padding:0; 
}





/**************************************/
/*********** 下層ページ*******************/
/**************************************/
/*************下層テンプレート****************/





/*************form****************/
.form {
  width: 70%;
  margin: 2em auto; }

.form input[type="submit"] {
  padding: 0.5em 1rem; }

form table th span{
  font-size:70%;
  color: red; 
}


/***********pagenation*******************/


ul.page-numbers{
  border:none;
}

ul.page-numbers li{
   margin-right: 10px;
  display: inline-block;

}

ul.page-numbers li .page-numbers {
    padding: 1px 10px;
    color: #000;
    font-size: 1.19em;
    border: 1px solid #000;
    display: inline-block;
  }



ul.page-numbers li .page-numbers.current {
    padding: 1px 10px;
    color: #ffffff;
    font-size: 1.19em;
    background-color: #000;
    border: 1px solid #000;
    display: inline-block;
  }


.screen-reader-text{
  display: none;
}




@media(min-width:992px){
.headerBg h1{
  font-size:48px; 
}

} 






/***********スマホ*******************/
@media (max-width: 575.98px) {

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}



.navbar-light .navbar-toggler {
  color: rgba(255, 255, 255, 1);
  border-color: rgba(255, 255, 255, 1);
}
/*トップページ*/

img{
  max-width: 100%;
  height:auto;
}

 #main h1 {
    font-weight: bold;
    font-size: 5vw;
}

#main h1 span {
    display: block;
    font-size: 6vw;
}

#navmenu1 ul{
  background:#fff;
}


#navmenu1 ul li{
  text-align: center;

}

#navmenu1 ul li a {
   display: block;
  
}


#main {
      padding: 5em 0 5em;
      background-size: cover;
}




 #top h3{
  font-size: 1.5rem;

 }

#top .heading h2{
  font-size: 1.7em;
}
#top .heading span{
  font-size: .7em;
}


.kasou .post {
     padding:.5em .5em; 
}


.kasou h1 {
     font-size: 1.5rem;
    }
.kasou h1:before {
   top: 7px;
}






/*タイポの調整*/
.kasou h2 {
    font-size: 1.2rem;
   padding-bottom: .5em;
}

.kasou h3 {
    font-size: 1.1rem;
}

.kasou h4 {
    font-size: 1rem;
}
/*ブログ調整*/

.blogcol h4{
  text-align: center;
}

form table.table th,form table.table td{
  display: block;
}


form table.table input[type="text"],form table.table input[type="email"],
form table.table input[type="tel"]{
width:90%;
padding: .4em;
}

textarea{
  width:90%;
}
.form {
     width: 100%;
 
}

.thumbnail img {
  height:auto;
} 

.arrow{
  transform: rotate(90deg);
}



}/*end*/






