
#mv {
  width: 100%;
  position: relative;
  top: 0;
  left: 0;
  overflow: hidden;
}

.mv-bg {
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  animation: anime 20s 0s infinite;
}
#mv01 {
  z-index: 20;
}
#mv02 {
  z-index: 18;
  animation-delay: 5s;
}
#mv03 {
  z-index: 16;
  animation-delay: 10s;
}
#mv04 {
  z-index: 14;
  animation-delay: 15s;
}

@keyframes anime {
  0% { opacity: 0; }
  20% { opacity: 1; }
  50% { opacity: 0; }
  /*100% { transform: scale(1.2); }*/
}
#concept ul li{
  border-bottom:dashed 1px #ccc;
  line-height: 2em;
}
.concept_img div{
  width: 100%;
  height: 25vw;
  background-size: cover;
  background-position: center center;
}
#concept h1{
  line-height: 1.5;
  background: linear-gradient(transparent 80%, rgb(40,167,69,25%)80%);
}
#concept p{
  line-height: 1.8;
}
#concept .positon{
  position: relative;
  height: 60vw;
}
#concept .concept_txt{
  position:absolute;
  top:0;
  left:0;
  background-color:rgb(40,167,69,10%);
}
#concept .concept_img{
  position:absolute;
  top:7vw;
  right:0;
}
#greeting{ 
  background-color:rgb(40,167,69,10%);
}
/*.greeting_img div {
  position: relative;
  height: 25vw;
  background-size: cover;
}*/
#greeting h3{
  color:#28a745;
  border-bottom: solid 3px #28a745;
}
#greeting h3{
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 1.4;/*行高*/
  color:#28a745;
}

#greeting h3:before {
  font-family: "Font Awesome 5 Free";/*忘れずに*/
  content: "\f0a4";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;
  font-size: 1em;
  left: 0.25em;
  top: 0.5em;
  color:#28a745;
}
#flow h3{
  background-color: #28a745;
  border-radius: 10px;
}
#flow h4{
  background: linear-gradient(transparent 60%, rgb(40, 167, 69, 25%) 60%);
}
#flow h5{
  color:#28a745;
  background-color:rgb(40,167,69,10%);
}
#flow ul li i{
  color: #28a745;
}
.flow_contents_bg{
  background-size: cover;
  background-position: center;
  height: 25vw;
}
.flow_contents_bg2{
  background-size: cover;
  background-position: center;
  height: 15vw;
}
#correspondence_area{
  background-size: cover;
  background-position: bottom;
}
#correspondence_area .bg-area{
  background-color:rgb(255,255,255,75%);
}
#correspondence_area p{
  line-height: 1.8;
}
header.midashi {
  position: relative;
  /*text-align: center;*/
}
header.midashi h3{
  font-size: 18px;
  font-size: 1.8rem;
  display: block;
}
header.midashi h3:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background:#28a745;
}
#greeting header.midashi h3:before{
    left: calc(7% - 30px);
}
#banner h1{
  position: relative;
}
#banner h1:before{
  position: absolute;
  width: 100%;
  content: " ";
  display: block;
  bottom: -3px;
  border-bottom: solid 3px #ffc778;
}
#banner h1:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #28a745;
  bottom: -3px;
  width: 50%;
}
.bnr-group{
  border:solid 1px #ccc;
}
.bnr-link{
  position: relative;
}
.bnr-link a{
  color: #6f532a;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 24vw;
}

#banner h1,
#banner h2 {
  /*position: absolute;
  width: 100%;
  left: 0;*/
}
#banner h1 {
  font-size: 160%;
  /*top: -1.5vw;*/
  transition: 0.2s ease-out;
}
#banner h1 span {
  border-radius: .3vw;
  /*color: #fff;*/
  transition: 0.2s ease-out;
}
#banner h2 {
  font-size: 100%;
  bottom: 0;
  text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF,
              -2px 2px 0 #FFF, 2px -2px 0 #FFF,
              0px 2px 0 #FFF,  0 -2px 0 #FFF,
              -2px 0 0 #FFF, 2px 0 0 #FFF;
  transition: 0.2s ease-out;
}
#banner a:hover h1 {
  top: -1.3vw;
  color: #FFDD01;
}
#banner a:hover h1 span {
  color: #FFDD01;
}
#banner a:hover h2 {
  bottom: .5vw;
}
.btn-fullhouse{
  color: #fff;
  border: solid 1px #fff;
  background-color: #6f532a;
  width: 25vw;
  margin: 0 auto;
}
a.btn-fullhouse:hover{
  color: #fff;
}
/*#news ul {
  height: 20vw;
  overflow: auto;
}*/

@media (max-width: 1199px){
  
}

@media (max-width: 991px){
  #banner h2{
    font-size:80%;
  }
  #concept .positon{
    position: relative;
    height: 68vw;
  }
  .flow_contents_bg{
    height: 28vw;
  }
  .flow_contents_bg2{
    height: 15vw;
  }
}

@media (max-width: 767px){
  #concept header {
      font-size: 2vw;
  }
  #gconcept ul li,
  #gconcept p{
    font-size: 2.6vw;
  }
  #concept .positon{
    position: relative;
    height: auto;
  }
  #concept .concept_txt{
    position: relative;
    top:0;
    left:0;
    margin: auto 1rem;
    background-color:rgb(40,167,69,10%);
  }
  #concept .concept_img{
    position: relative;
    top:5vw;
    right:0;
  }
  #greeting h3{
    font-size:160%;
  }
  #banner > div {
    margin-bottom: 10vw;
  }
  #banner img {
    height: 55vw;
  }
  #banner h1 {
    top: -3.5vw;
  }
  .btn-fullhouse {
    width: 60vw;
  }
  #news ul {
    
  }
  .concept_img div{
    height: 30vh;
  }
  .bnr-link a{
    height: 30vh;
  }
  a.cat_style{
    width:70px;
    border-radius: 5px;
  }
}

@media (max-width: 575px){
  #concept header{
    font-size:2.8vw;
  }
  #concept ul li,
  #concept p{
    font-size: 3.5vw;
  }
}


