/* 住まいの 企業一覧、コラム、クライアント別 共通 */
.ta_c {
  text-align: center;
}

DIV#contents {
  color: #333;
  padding-bottom: 80px;
  font-size: 15px;
}

DIV#contents p {
  font-size: 15px;
}

A,
A:visited {
  color: #5cac87;
}

#contents h1 {
  margin: 0 0 20px;
  padding: 5px 0 5px 10px;
  background: none;
  font-size: 24px;
  font-weight: bold;
  color: #333;
  border-left: 5px solid #5cac87;
  border-bottom: none;
  line-height: 1.2;
}

.image_wrap {
  text-align: center;
}

.image_wrap img {
  max-width: 100%;
  height: auto;
  margin-bottom: 5px;
}

.main_contents {
  margin-bottom: 40px;
}

DIV#contents h2.title_l {
  margin: 0 0 20px;
  padding: 5px 0 5px 10px;
  background: none;
  font-size: 24px;
  font-weight: bold;
  color: #333;
  border-left: 5px solid #5cac87;
  border-bottom: none;
}

DIV#contents h2.title_m,
DIV#contents h3.title_m,
.title_m {
  background: none;
  font-size: 20px;
  margin: 0 0 20px;
  padding: 0px 3px 5px 0px;
  color: #5cac87;
  border-bottom: 1px solid #CCCCCC;
  font-weight: bold;
  line-height: 150%;
}

DIV#contents h3.title_s,
DIV#contents h2.title_s,
.title_s {
  background: none;
  border: none;
  border-bottom: 3px solid #5cac87;
  padding: 0 0 5px;
  color: #333;
}

DIV#contents h3.title_ss,
.title_ss {
  background: none;
  font-size: 16px;
  color: #333;
  font-weight: bold;
  padding: 0;
  border: none;
  margin-bottom: 5px;
}

.btn_typeA {
  text-decoration: none;
  font-weight: bold;
  display: inline-block;
  border-radius: 7px;
  padding: 8px;
  width: 50%;
  background-color: #5cac87;
  color: #fff;
  font-size: 15px;
  text-align: center;
}

.btn_typeA:visited {
  color: #fff;
}

/* スライダー */
ul.houseSlider {
  position: relative;
  margin-left: 30px;
  margin-right: 30px;
}

.houseSlider img {
  max-height: 600px;
  max-width: 100%;
  height: auto;
  width: auto;
  display: block;
  margin: 0 auto 5px;
}

.houseSlider li {
  text-align: center;
}

.houseSlider .img_wrap {
  display: inline-block;
  margin-bottom: 10px;
}

.houseSlider .slick-dots li button:before {
  font-family: 'slick';
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 8px;
  content: '';
  background: #333;
  border-radius: 30px;
  text-align: center;
  opacity: .25;
  color: #333;
}

.houseSlider {
  position: relative;
  margin-bottom: 60px;
}

.houseSlider .slick-dots li {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 6px;
  padding: 0;
  cursor: pointer;
}

.houseSlider .slick-prev,
.houseSlider .slick-next {
  width: 40px;
  height: 100px;
  top: 44%;
}

.houseSlider .slick-prev:hover,
.houseSlider .slick-next:hover {
  opacity: 0.75;
}

.houseSlider .slick-next {
  right: -10px;
  z-index: 10;
}

.houseSlider .slick-prev {
  left: -10px;
  z-index: 10;
}

.houseSlider .slick-next:before,
.houseSlider .slick-prev:before,
.houseSlider .slick-next:after,
.houseSlider .slick-prev:after {
  opacity: 1;
  content: '';
}

.houseSlider .slick-prev:before,
.houseSlider .slick-next:before,
.houseSlider .slick-prev:after,
.houseSlider .slick-next:after {
  font-family: 'slick';
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 40px;
  height: 2px;
  background-color: #5cac87;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}

.houseSlider .slick-prev:before,
.houseSlider .slick-prev:after {
  transform-origin: 0 50%;
}

.houseSlider .slick-prev:after,
.houseSlider .slick-next:after {
  transform: rotate(-45deg);
}

.houseSlider .slick-dots {
  margin-bottom: 30px;
}

/* ハウスメーカー */
.houseCompanyList_cont {
  margin-bottom: 40px;
}

.houseCompanyList_detail_cont {
  margin-bottom: 20px;
}

/*  オススメ記事　*/
.recommend_contents {
  margin-bottom: 20px;
}

.recommend_contents a {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
  padding: 16px 0;
  text-decoration: none;
  width: calc(50% - 10px);
}

.recommend_contents a:hover {
  opacity: 0.75;
}

.recommend_contents_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.recommend_image_wrap {
  width: 120px;
  padding-top: 90px;
  position: relative;
}

.recommend_image_wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.recommend_title {
  padding-top: 0px;
  width: calc(100% - 134px);
  color: #333;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  display: -webkit-box;
  display: box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
  line-height: 1.5;
}

DIV#contents .ac_area {
  padding: 20px;
  background: #f5f5f5;
  margin: 30px 0;
}

DIV#contents .ac_area h3 {
  background: none;
  border-bottom: none;
  border-left: 5px solid #5cac87;
  padding: 1px 0 0 15px;
  font-size: 18px;
  color: #333;
  margin-bottom: 15px;
}

DIV#contents .ac_area ul {
  list-style: decimal;
  font-size: 14px;
  margin-left: 2em;
}

DIV#contents .ac_area li {
  margin-bottom: 0.5em;
  line-height: 150%;
}

DIV#contents .ac_area li a,
DIV#contents .ac_area li a:visited {
  color: #333;
}