@charset "UTF-8";
@import "housing.css";

/*---------------------------------
catch
---------------------------------*/

.catchBox {
  max-width: 1500px;
  margin: 0 100px 150px auto;
  position: relative;
}

.sliderContainer {
    max-width: 1300px;
    margin: 0 0 0 auto;
    position: relative;
}

.sliderContainer::before{
  content: "";
  position: absolute;
  height: 100vh;
  width: 280px;
  background: url(../img/index/bg_introBox.png) repeat-y left top;
  background-size: 280px auto;
  z-index: 1;
}




 .slide {
 	  height: calc( 100vh - 100px ) !important;
    background-size: cover;
    background-position: center;
 }


 .introBox {
  position: absolute;
  left: 2%;
  top: 0;
  color: #253f77;
  line-height: 1.5;
  /*
  background: url(../img/index/bg_introBox.png) repeat-y right top;
  background-size: 280px auto;
  */
  height: calc( 100vh - 100px );
  z-index: 2;
  width: 480px;
  padding-top: calc( (100vh - 370px) / 2);
}

 .introBox .boxTtl{
 	font-size: 4.8rem;
 	display: block;
 	margin-bottom: 30px;
 	font-weight: bold;
 }


/*---------------------------------
bussinessBox
---------------------------------*/
#bussinessBox{
  padding :100px 0 0;
  margin-bottom:  150px;
  position: relative;
  background:#f1f4f6; 
}

#bussinessBox .innerLayout{
  padding-bottom: 100px;
}
 
.bussinessCont{
  position:relative;
  margin-bottom:160px
}

.bussinessContTtlImg{
  text-align:right;
}

.bussinessCont.odd .bussinessContTtlImg{
  text-align:left;
}

.bussinessContInner{
  background:#253f77;
  padding:30px;
  color: #fff;
  position:absolute;
  bottom:-50px;
  left:0;
  width :360px;
}


.bussinessCont.odd .bussinessContInner{
  right:0;
  left: auto;
}  


.bussinessContInner .innerTtl{
  font-size:3.6rem;
  padding-bottom:24px;
  display :block;
  line-height: 1.4;
}

.bussinessContInner .innerSub{
  font-size:2.6rem;
  padding-bottom:30px;
  display :block;
  line-height: 1.5;
}


/*---------------------------------
news
---------------------------------*/

.newsList{
  margin-top:50px;
}

.newsList li{
  position  :relative;
  background:#f1f4f6;
  padding :30px 20px;
  margin-bottom:50px;   
}

.newsList li:last-child{
  margin-bottom: 0;
}  


.newsList li .date {
  background: #253f77;
  color: #fff;
  position: absolute;
  top: -20px;
  left: 10px;
  padding: 10px 30px;
  line-height: 1;
}


.newsList li .title{
  color: #253f77;
  font-size :1.8rem;
  font-weight :bold;
}

.newsList li a{
  text-decoration: underline;
}


/*---------------------------------
company
---------------------------------*/

#companyBox {
  background: url('../img/index/bg_company.jpg') no-repeat center 170px;
}

.companyBoxInner{
  background:#fff;
  padding:100px 0;
  margin-top: 100px;
  text-align:center;
  box-shadow: 2px 1px 5px #f4f4f4;
  margin-top: 100px; 
}

#companyLogo{
  width :124px;
  display: block;
  margin:0 auto 30px;
}     

.companyBoxInner .boxTtl{
  font-size :3.6rem;
  padding-bottom:50px;
  color: #253f77;
  display: block;  
}

.companyBoxInner .boxIntro{
  padding-bottom:100px;
  width :740px;
  margin:0 auto;  
}


.contentTtl{
  padding-bottom: 90px;
}

.contentTtl::before{
  content: "";
  position: absolute;
  width: 72px;
  height: 2px;
  background: #253f77;
  left: 0;
  right: 0;
  bottom: 60px;
  margin:auto ;
}


/* Media Queries ================================================== */
/*1100*/
@media screen and (max-width: 1100px) {

  .catchBox {
    margin: 0 0 150px 2%;
  }

  .newsList {
    width: 96%;
    margin:50px auto ;
  }

}  





/* Media Queries ================================================== */
/*896*/
@media screen and (max-width: 896px) {

   .catchBox {
    width: 100%;
    margin: 0 auto;
    height: calc(550px + 20vh );
  }


  .sliderContainer {
      width: 100%;
      margin: 0 auto;
  }

  .sliderContainer::before{
    display: none;
  }


 .slide {
    height: 550px!important;
    background-repeat: no-repeat;
    /*background-size: 100% auto;*/
    background-position: top ;
 }


  .introBox {
    position: absolute;
    top: calc(550px - 88px)!important;
    left: 0;
    bottom: 0;
    background: none;
    height: auto;
    width: 100vw;
    padding: 0;
  }




  .introBox .boxTtl {
    font-size: 3rem;
    margin-bottom: 10px;
    line-height: 1.4;
    display: block;
    background: url(../img/index/bg_introBox_sp.png) repeat left bottom;
      background-size: auto;
    background-size: 100% auto;
    padding: 0 4vw 1vw;
  }

  .introBox .intro{
    padding: 0 4vw;
  }

  .contentTtl {
    padding-bottom: 40px;
    line-height: 1.4;
    letter-spacing: 4px;
  }

  .contentTtl::before {
    bottom: 22px;
    width: 40px;
  } 

  #bussinessBox {
    padding: 30px 0 50px;
    margin-bottom: 50px;
  }

  #bussinessBox .innerLayout {
    width: 100%;
    padding: 0;
    max-width: 100vw;
  }

  .bussinessContTtlImg img{
    max-width: 80%;
    margin-bottom: 10px;
  } 



  .bussinessContInner {
    padding: 2% 2% 4%;
    position: static;
    width: 88vw;
  }

  .bussinessContInner .innerTtl {
    font-size: 2.8rem;
    padding-bottom: 10px;
  }

  .bussinessContInner .innerSub {
    font-size: 2rem;
    padding-bottom: 10px;
  }

  .bussinessCont {
    margin-bottom: 50px;
  }

  .bussinessCont.odd .bussinessContInner {
    float: right;
  }

  #companyBox {
    background: url('../img/index/bg_company.jpg') no-repeat left 140px;
    background-size: auto 60%;
  }

  .companyBoxInner {
    padding: 30px 0 60px;
    margin-top: 70px;
  }

  .companyBoxInner .boxTtl {
    width: 92%;
    margin: 0 auto;
    font-size: 2.4rem;
    text-align: left;
    padding-bottom: 14px;
  }

  .companyBoxInner .boxIntro {
    padding-bottom: 40px;
    width: 92%;
    text-align: left;
  }


  #companyLogo {
    width: 70px;
  }

}

@media screen and (max-width: 414px){
   .catchBox {
    width: 100%;
    margin: 0 auto;
    height: calc(550px + 30vh );
  }
}  