@charset "utf-8";
#main{
  overflow: hidden;
}
.secEstate {
  padding: 125px 0 0;
}
.wrapper {
  width: 92%;
  min-width: 1180px;
  text-align: center;
  margin: 0 auto;
}
.secEstate .tit {
  font-size: 32px;
  line-height: 160%;
  display: block;
  letter-spacing: 0px;
}
.secEstate .txt {
  font-size: 15px;
  line-height: 32px;
  padding-bottom: 27px;
  margin-top: -6px;
  display: block;
  letter-spacing: 2px;
  position: relative;
}
.secEstate  .txt::after {
  position: absolute;
  content: "";
  bottom: 5px;
  left: calc(50% - 21px);
  width: 40px;
  height: 1px;
  margin-top: -12px;
  background: #479C23;
}
.secEstate .ValueBox{
  font-size: 20px;
  margin-top: 48px;
  width: 925px;
  margin: 0 auto;
  text-align: left;
  padding: 23px 0 0;
}
.secEstate .ValueItem{
  position: relative;
  padding-left: 68px;
  font-weight: bold;
  letter-spacing: 3px;
  line-height:2.4;
  font-family: "Noto Sans CJK JP";
}
.secEstate .ValueItem::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 19px;
  top: 9px;
  z-index: 1;
  left: calc(50% - 420px);
  transform: rotate(50deg);
  border-right: 4px solid #d44137;
  border-bottom: 4px solid #d44137;
}
@media only screen and (max-width: 767px){
  .secEstate {
    padding: 43px 0 0;
  }
  .wrapper {
    min-width: auto;
    width: 100%;
  }
  .secEstate .tit {
    font-size: 36px;
    line-height: 160%;
    display: block;
    letter-spacing: 0px;
  }
  .secEstate .txt {
    font-size: 12px;
    line-height: 196%;
    margin-top: -8px;
    display: block;
    letter-spacing: 0px;
  }
  .secEstate  .txt::after {
     display: none;
  }
  .secEstate .ValueBox{
    font-size: 13px;
    width: calc((335 / 375) * 100%);
    margin: 0 auto;
    font-size: 12px;
    line-height: 2;
    padding: 3px 0 0;
    letter-spacing: 0.5px;
  }
  .secEstate .ValueItem{
    position: relative;
    padding-left: 35px;
    font-weight: bold;
    letter-spacing: 2.5px;
    line-height: 1.4;
    font-family: "Noto Sans JP", sans-serif;
  }
	.secEstate .ValueItem:nth-child(n+2){
    margin-top: 9px;
  }
  .secEstate .ValueItem:nth-child(4){
    padding-bottom: 0px;
  }
  .secEstate .ValueItem:nth-child(5){
  }

  .secEstate .ValueItem::before {
    content: "";
    position: absolute;
    width: 14px;
    height: 19px;
    top: calc(50% - 8px);
    z-index: 1;
    left: 9px;
    transform: rotate(46deg);
    border-right: 4px solid #d44137;
    border-bottom: 4px solid #d44137;
  }
}
.secSite{
  margin-top: 129px;
}
.secSite .wrapper01 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 35px 0 50px;
}
.secSite .photo {
  float: left;
}
.secSite .txtDetails{
  float: right;
  width: 640px;
}
.secSite .titIn03{
  font-size: 20px;
  line-height: 40px;
  font-weight: bold;
  margin-top: -10px;
  color: #00B5D6;
}
.secSite .txtIn {
  padding-top: 10px;
  font-size: 13px;
  line-height: 28px;
}
.secSite .wrapper02 {
  max-width: 1200px;
  margin: 0 auto;
}
.secSite .box {
  width: 590px;
  float: left;
  margin-right: 20px;
}
.secSite .box:nth-child(2n){
	margin-right:0px;
}
.secSite .boxTit{
	background:#00B5D6;
	color:#fff;
	font-size:16px;
	padding:20px 0 24px 40px;
}
.secSite .boxTxt{
	background:#F6F6F6;
	color:#211A18;
	font-size:15px;
	line-height:32px;
	padding:34px 35px;
	height:230px;
}
.secSite .btnEstate{
	background:#00B5D6;
	color:#FFF;
	display:block;
	text-align:center;
	margin:80px auto 90px;
	width:340px;
	font-size:16px;
	line-height:32px;
	padding:24px 0;
	border-radius: 50px;
	text-decoration:none;
}
@media only screen and (max-width:767px){
	.secSite{
		padding-bottom:0px;
    margin-top: 78px;
	}
	.secSite .bgTop,
	.secSite .bgTop02{
		padding:13% 0 ;
	}
	.secSite .titIn{
		font-size:16px;
		padding: 3%;
		line-height:170%;
	}
	.secSite .titTopIn{
		font-size:16px;
		line-height:170%;
		letter-spacing:0px;
	}
	.secSite .titIn02{
		font-size:13px;
	}
	.secSite  .wrapper01{
		padding:30px 0;
		width:94%;
	}
	.secSite  .boxSub,
	.secSite  .boxSub.tab03{
		width:100%;
		margin:0 auto;
		padding:15% 0 5%;
	}
	.secSite  .titBox{
		padding-bottom:5%;
	}
	.secSite  .boxSub.tab03 .boxPoint,
	.secSite  .boxSub.tab03 .boxPoint.tab02,
	.secSite  .boxPoint,
	.secSite  .boxPoint.tab02{
		width:90%;
		margin:0 auto;
		float:none;
	}
	.secSite  .txtPoint{
		font-size:13px;
		line-height:140%;
		padding-left:32px;
		margin-bottom:10px;
	}	
	.secSite  .wrapper02{
		width:91%;
	}
	.secSite .photo{
		float:none;
	}
	.secSite .txtDetails{
		float:none;
		width:100%;
		margin:0 auto;
	}
	.secSite .titIn03{
		font-size:15px;
    line-height: 1.6;
		margin-top:20px;
	}
	.secSite .txtIn{
		font-size:12px;
		line-height:200%;
    padding-top: 6px;
	}
	.secSite .box{
		width:100%;
		margin:0 auto 30px;
		float:none;
	}
	.secSite .boxTit{
		font-size:15px;
		padding:15px;
	}
	.secSite .boxTxt{
		font-size:12px;
		line-height:2;
		padding:15px;
		height:auto;
	}
	.secSite .box:nth-child(2n) {
		margin: 0 auto;
	}
	.secSite .btnEstate{
		margin:5% auto 0;
		width:90%;
		padding:5% 0;
	}
}	
.secSite .tit {
  font-size: 32px;
  line-height: 160%;
  display: block;
  letter-spacing: 0px;
}
.secSite .txt {
  font-size: 15px;
  line-height: 32px;
  padding-bottom: 27px;
  margin-top: -6px;
  display: block;
  letter-spacing: 1px;
  position: relative;
}
.secSite .txt::after {
  position: absolute;
  content: "";
  bottom: 5px;
  left: calc(50% - 20px);
  width: 40px;
  height: 1px;
  margin-top: -12px;
  background: #479C23;
}
@media only screen and (max-width:767px){
  .secSite .tit {
    font-size: 36px;
    line-height: 160%;
    display: block;
    letter-spacing: 0px;
  }
  .secSite .txt {
    font-size: 13px;
    line-height: 24px;
    padding-bottom: 6px;
    margin-top: 0px;
    display: block;
    letter-spacing: -1px;
    position: relative;
  }
  .secSite .txt::after {
    display: none;
  }
}

/* secProducts */
  .secProducts{
    text-align:center;
    color:#2C2C2C;
    background:url(../img/common/tp.gif) center bottom no-repeat;
    background-size:contain;
    margin-top: 142px;
    position: relative;
  }
  .secProducts .wrapper{
  width:94%;
  max-width:1275px;
  margin:0 auto;
  }
  .secProducts .tit{
    font-size: 32px;
    line-height: 160%;
    display: block;
    letter-spacing: 0px;
  }
  .secProducts .txtService{
    font-size: 15px;
    line-height: 32px;
    padding-bottom: 48px;
    margin-top: -6px;
    display: block;
    letter-spacing: 1px;
    position: relative;
  }
  .secProducts .txtService::after{
    position: absolute;
    content: "";
    bottom: 37px;
    left: calc(50% - 21px);
    width: 40px;
    height: 1px;
    margin-top: -12px;
    background: #479C23;
  }

  .secProducts .boxList{
    font-size:0;
    text-align:left;
    padding:0 0 97px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .secProducts .boxList .slide{
    display:inline-block;
    vertical-align:top;
    text-align:center;
    /* width:23.5%; */
    width: calc(100%/3 - 8%);
    margin:0 2% 35px 0;
    font-size:12px;
    background:#fff;
    border:solid 1px #E1E1E1;	
    border-radius:3px;
    height: auto !important;
  }
  .secProducts .boxList .slide:nth-child(3n),
  .secProducts .boxList .slide:last-child{
  margin-right:0;
  }
  .secProducts .boxList .slide a:not(.cmnBtn),
  .secProducts .boxList .slide .doubleBtn{
  display:block;
  padding:40px 8% 29px;
  text-decoration:none;
  color:#333;
    height: 100%;
  }
  .secProducts .boxList .img{
  padding:0 0 21px;
  }
  .secProducts .boxList .tit{
  font-size:16px;
  font-weight:bold;
  letter-spacing:1.5px;
  padding:0 0 13px;
  color:#2C2C2C;
  }
  .secProducts .boxList .txt{
  letter-spacing:1px;
  line-height:21px;
  padding:0 0 25px;
  }
  .secProducts .boxList .icon{
  display:inline-block;
  vertical-align:top;
  min-width:160px;
  padding:13px;
  text-align:center;
  letter-spacing:0.8px;
  background:#F8F8F8;
  }
  .secProducts .boxList .btnMore{
  width:150px;
  height:50px;
  font-size:13px;
  letter-spacing:1px;
  padding-top:18px;
  margin:20px auto 0;
  background:#479C23;
  }
  .secProducts .boxList .linkIntro + .btnMore{
  margin: 10px auto 0;
  }
  .secProducts .boxList .linkIntro{
    background: dodgerblue;
  margin: 20px auto 0;
  }
  .secProducts .boxList .slide.noEvent{
  pointer-events: none;
  }
  @media only screen and (max-width:767px){
    .secProducts {
      margin-top: 79px;
  }
  .secProducts.lazyloaded{
    background:none;
  }
  .secProducts .wrapper{
    width:100%;
  }
  .secProducts .tit{
    font-size: 36px;
    line-height: 160%;
    display: block;
    letter-spacing: 0px;
  }
  .secProducts .txtService{
    font-size: 15px;
    line-height: 32px;
    padding-bottom: 29px;
    margin-top: -12px;
    display: block;
    letter-spacing: 1px;
    position: relative;
  }
  .secProducts .txtService::after{
    display: none;
  }
  .secProducts .boxList{
    padding:0 0 70px;
  }
  .secProducts .boxList .slick-track{
    display: flex;
  }
  .secProducts .boxList .slide{
    display:block;
    width:267px;
    margin:0 20px 0 0;
  }
  .secProducts .boxList .slide:nth-child(3n),
  .secProducts .boxList .slide:last-child{
    margin-right:20px;
  }
  .secProducts .boxList .slide a:not(.cmnBtn),
  .secProducts .boxList .slide .doubleBtn{
    padding:40px 8% 29px;
    min-height: 430px;
  }
  .secProducts .slick-dots{
    text-align:center;
    padding:30px 3% 0;
    font-size:0;
  }
  .secProducts .slick-dots li{
    display:inline-block;
    vertical-align:top;
    width:10px;
    margin:0 5px;
  }
  
  .secProducts .slick-dots button{
    background-color:transparent;
    border:none;
    cursor:pointer;
    outline:none;
    padding:0;
    appearance:none;
    display:block;
    width:10px;
    height:10px;
    background:#D6D6D6;
    border-radius:50%;
    font-size:0;
  }
  .secProducts .slick-dots .slick-active button{
    background:#999999;
  }
  .secProducts .boxList .txt{
    line-height:2;
  }
  }


/* secIndexList */
.secIndexList{
  padding: 15px 0 200px;
}
.secIndexList .tit01{
	font-size:32px;
	line-height:1.5;
	letter-spacing:0px;
}
.secIndexList .txt01{
  font-size: 15px;
  line-height: 32px;
  padding-bottom: 60px;
  margin-top: -3px;
  display: block;
  letter-spacing: 2px;
  position: relative;
}

.secIndexList .txt01::after{
	position: absolute;
	content: "";
  top: 55px;
  left: calc(50% - 20px);
	width: 40px;
	height: 1px;
	margin-top: -12px;
	background: #479C23;
}
.secIndexList .boxList{
	font-size:0;
	padding: 0 0 0px;
}
.secIndexList .boxList > li{
	display:inline-block;
	vertical-align:top;
	width:370px;
	margin:0 45px 60px 0;
	position:relative;
}
.secIndexList .boxList > li:nth-child(3n){
	margin-right:0;
}
.secIndexList .boxList .boxDetail{
	display:block;
	text-decoration:none;
	color:#333;
	background:#F8F8F8;
}
.secIndexList .img{
  height: auto;
	border:solid 1px #479C23;
	position:relative;
}
.secIndexList .iconNew{
    width:55px;
    height:43px;
    text-align:center;
    padding:9px 3px 0 0;
    font-size:15px;
    color:#222;
    position:absolute;
    top:-10px;
    left:10px;
    z-index:10;
    background:url(../img/common/tp.gif) left top no-repeat;
}
.secIndexList.lazyloaded .iconNew{
	background:url(../img/common/iconNew.png) left top no-repeat;
}
.secIndexList .img img{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
}
.secIndexList .boxTxt{
	min-height:230px;
	padding:31px 35px 56px;
}
.secIndexList .tit{
	font-size:16px;
	line-height:1.5;
	letter-spacing:2px;
	padding:0 0 27px;
}
.secIndexList .tit::after{
	content:"";
	display:block;
	width:25px;
	height:1px;
	background:#479C23;
	margin:25px 0 0;
}
.secIndexList .boxTag{
    padding:0 0 0 23px;
    background:url(../img/common/tp.gif) left 3px no-repeat;
	background-size:16px;
}
.secIndexList.lazyloaded .boxTag{
	background:url(../img/common/iconTag.png) left 3px no-repeat;
	background-size:16px;
}
.secIndexList .boxTag li{
	font-size:13px;
	letter-spacing:1px;
	line-height:22px;
	color:#666;
  text-align: left;
}
.secIndexList .btnFav{
    display:block;
    font-size:0;
    position:absolute;
    bottom:35px;
    right:35px;
    z-index:10;
    border-radius:50%;
    width:50px;
    height:50px;
    background:url(../img/common/tp.gif) #ccc center center no-repeat;
	background-size:27px;
}
.secIndexList.lazyloaded .btnFav{
	background:url(../img/common/iconFav.gif) #ccc center center no-repeat;
	background-size:27px;
}
.secIndexList.lazyloaded .btnFav.on{
	background:url(../img/common/iconFav_on.gif) #479C23 center center no-repeat;
	background-size:27px;
}
.secIndexList .boxBalloon,
.secDetailTop .boxBalloon{
    display:none;
    width:180px;
    padding:48px 0 25px;
    font-size:12px;
    text-align:center;
    color:#fff;
    position:absolute;
    bottom:0;
    right:-30px;
    z-index:20;
    opacity:0;
    background:url(../img/common/tp.gif) #479C23 center 19px no-repeat;
	background-size:27px;
}
.secIndexList.lazyloaded .boxBalloon,
.secDetailTop.lazyloaded .boxBalloon{
	background:url(../img/common/iconFav_on.gif) #479C23 center 19px no-repeat;
	background-size:27px;
}
.secIndexList .boxBalloon::before,
.secDetailTop .boxBalloon::before{
	content:"";
	display:block;
	width:0;
	height:0;
	border-style:solid;
	border-width:9px 5px 0 5px;
	border-color:#479C23 transparent transparent transparent;
	position:absolute;
	bottom:-9px;
	left:0;
	right:0;
	margin:0 auto;
}
.secIndexList .txtBalloon,
.secDetailTop .txtBalloon{
	font-size:15px;
	letter-spacing:0.8px;
	line-height:24px;
	padding:0 0 7px;
	color:#FFFF00;
}
.secIndexList .txtBalloon02,
.secDetailTop .txtBalloon02{
	letter-spacing:1px;
}
.secIndexList .boxBalloon .btnClose,
.secDetailTop .boxBalloon .btnClose{
    width:26px;
    height:26px;
    font-size:0;
    position:absolute;
    top:-13px;
    right:-13px;
    cursor:pointer;
    background:url(../img/common/tp.gif) left top no-repeat;
	background-size:26px;
}
.secIndexList.lazyloaded .boxBalloon .btnClose,
.secDetailTop.lazyloaded .boxBalloon .btnClose{
	background:url(../img/common/btnClose.png) left top no-repeat;
	background-size:26px;
}
.secCmnLoad{
  margin-top: -18px;
  margin-right: 21px;
}
.secCmnLoad .rinkBTn01{
  text-decoration: none;
  width: 100%;
  display: block;
}
@media only screen and (max-width:1450px){
  .secIndexList .boxList > li {
    display: inline-block;
    vertical-align: top;
    width: 31%;
    margin: 0 40px 60px 0;
    position: relative;
}
}
@media only screen and (max-width:767px){
	.secIndexList{
		padding: 0 0% 100px;
	}
  .secIndexList .tit01{
    font-size:36px;
    line-height:1.5;
    letter-spacing:1px;
  }
  .secIndexList .txt01{
    font-size: 13px;
    line-height: 32px;
    padding-bottom: 27px;
    margin-top: -8px;
    display: block;
    letter-spacing: 3px;
    position: relative;
  }
  
  .secIndexList .txt01::after{
    display: none;
  }
	.secIndexList .boxList{
		padding: 0 0 51px;
	}
	.secIndexList .boxList > li{
		display:block;
		width:100%;
		margin:0 0 30px 0;
	}
	.secIndexList .img{
		height:auto;
	}
	.secIndexList .img img{
    width: 100%;
    height: auto;
	}
	.secIndexList .boxTxt{
		min-height:0;
		padding:20px;
	}
	.secIndexList .tit{
		padding:0 0 20px;
		letter-spacing:0.5px;
	}
	.secIndexList .tit::after{
		margin:15px 0 0;
	}
	.secIndexList .boxTag li{
		letter-spacing:0.5px;
	}
	.secIndexList .btnFav{
		bottom:20px;
		right:20px;
	}
	.secIndexList .boxBalloon,
	.secDetailTop .boxBalloon{
		padding:48px 0 25px;
		bottom:85px;
		right:10px;
	}
	.secIndexList .boxBalloon::before,
	.secDetailTop .boxBalloon::before{
		left:auto;
		right:30px;
		margin:0;
	}
	.secIndexList .txtBalloon,
	.secDetailTop .txtBalloon{
		letter-spacing:0.5px;
	}
	.secIndexList .txtBalloon02,
	.secDetailTop .txtBalloon02{
		letter-spacing:0.5px;
	}
  .secCmnLoad {
    margin-top: -18px;
    margin-right: -6px;
}
.secCmnLoad .cmnBtn{
  width: 65%;
  min-width: 250px;
  letter-spacing: 0px;
}
    .secIndexList .boxList .slide {
      display:inline-block;
      font-size: 14px;
      width: 261px;
      margin: 0 32px 0 0;
      height: auto;
  }
  .secIndexList  img{
      width: 95%;
      height: auto;
    }
    .secIndexList   .slick-dots .slick-active button {
        background: #999999;
    }
    .secIndexList  .slick-dots {
      text-align: center;
      padding: 30px 3% 0;
      font-size: 0;
  }
  .secIndexList  .slick-dots li {
      display: inline-block;
      vertical-align: top;
      width: 10px;
      margin: 5px 5px;
      text-align: center;
  }
  .secIndexList  .slick-dots li:nth-child(4) {
     display: none;
  }
  .secIndexList  .slick-dots button {
      background-color: transparent;
      border: none;
      cursor: pointer;
      outline: none;
      padding: 0;
      appearance: none;
      display: block;
      width: 10px;
      height: 10px;
      background: #D6D6D6;
      border-radius: 50%;
      font-size: 0;
    }
    .secIndexList .slick-track {
      position: relative;
      top: 0;
      left: 0;
      display: block;
      margin-left: auto;
      margin-right: auto;
      height: 240px;
    } 
    .secIndexList .slick-list {
      position: relative;
      display: block;
      overflow: hidden;
      margin: 0;
      padding: 0;
      height: 184px !important;
  }
}
