@charset "UTF-8";
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
/* ボタンカラー */
/* フォント系 */
/*
	Noto Sans使用する場合
	'Noto Sans JP', 'Open Sans', Verdana, Roboto, 'Droid Sans'
*/
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
/* ボタンカラー */
/* フォント系 */
/*
	Noto Sans使用する場合
	'Noto Sans JP', 'Open Sans', Verdana, Roboto, 'Droid Sans'
*/
body {
  /*================================= <共通> =================================*/
  /**
  * 使用時に親要素に
  * counter-increment: order-title-cm;
  * を設定してください
  */
  /**
  * 使用時に親要素に
  * counter-increment: index-cm;
  * を設定してください
  */
}
body .border-title-cm {
  position: relative;
  margin-top: 40px;
  margin-bottom: 10px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cdd5d7;
  color: #00A352;
  font-size: 18rem;
  font-weight: bold;
  line-height: 1.5;
}
body .border-title-cm::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 40px;
  border-bottom: 1px solid #00A352;
}
body .card-list-cm {
  margin-top: 70px;
}
body .card-list-cm .card-list-cm__item {
  width: 47%;
  padding: 30px 32px 40px;
  background: #fff;
  box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.05);
}
body .card-list-cm .card-list-cm__item p {
  margin-bottom: 0;
}
body .card-list-cm .card-list-cm__item .circle__text {
  margin-bottom: 25px;
  font-size: 14rem;
  letter-spacing: 0;
}
body .card-list-cm .card-list-cm__item .circle__text::before {
  top: 2px;
}
body .card-list-cm .card-list-cm__item .item__icon {
  margin-bottom: 20px;
  text-align: center;
}
body .card-list-cm .card-list-cm__item .item__title {
  margin-bottom: 20px;
  color: #00A352;
  font-size: 23rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}
body .order_title-cm {
  position: relative;
  padding-left: 2em;
}
body .order_title-cm:before {
  content: counter(order-title-cm, decimal-leading-zero) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: #00A352;
  letter-spacing: 0.04em;
}
body .index-cm:after {
  content: counter(index-cm, decimal-leading-zero);
}
body .white-box-cm {
  background-color: #fff;
  box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.05);
}
body .flexbox-cm {
  margin-bottom: 60px;
}
body .flexbox-cm.flexbox-cm--rev {
  flex-direction: row-reverse;
}
body .flexbox-cm.flexbox-cm--rev .flexbox-cm__item-pic {
  text-align: left;
}
body .flexbox-cm .flexbox-cm__item {
  flex-basis: 50%;
}
body .flexbox-cm .flexbox-cm__item .flexbox-cm__title {
  font-size: 30px;
  color: #000;
  margin-bottom: 0;
  margin-top: 0;
}
body .flexbox-cm .flexbox-cm__item .flexbox-cm__subtitle {
  font-size: 20px;
  color: #00A352;
  margin: 30px 0 30px 0;
  line-height: 1.9em;
}
body .flexbox-cm .flexbox-cm__item .flexbox-cm__pic {
  width: 450px;
}
body .flexbox-cm .flexbox-cm__item-pic {
  text-align: right;
}
body .flex-title-cm {
  display: flex;
  align-items: flex-start;
  font-weight: bold;
}
body .flex-title-cm .flex-title-cm__main {
  font-size: 30px;
  color: #000;
}
body .flex-title-cm .flex-title-cm__sub {
  font-size: 22px;
  color: #00A352;
  line-height: 1.9;
}

/*================================= </共通> =================================*/
@media screen and (max-width: 768px) {
  body {
    /*================================= </共通> =================================*/
  }
  body .flexbox-cm {
    margin-bottom: 50px;
    flex-direction: column;
  }
  body .flexbox-cm.flexbox-cm--rev {
    flex-direction: column;
  }
  body .flexbox-cm.flexbox-cm--rev .flexbox-cm__item-pic {
    text-align: center;
  }
  body .flexbox-cm .flexbox-cm__item {
    flex-basis: 100%;
  }
  body .flexbox-cm .flexbox-cm__item .flexbox-cm__title {
    font-size: 25px;
    color: #333;
    margin-bottom: 10px;
  }
  body .flexbox-cm .flexbox-cm__item .flexbox-cm__subtitle {
    font-size: 18px;
    color: #00A352;
    margin: 0.5em 0;
  }
  body .flexbox-cm .flexbox-cm__item .flexbox-cm__pic {
    width: 100%;
  }
  body .flexbox-cm .flexbox-cm__item-pic {
    text-align: center;
  }
  body .flex-title-cm {
    flex-direction: column;
    padding-bottom: 20px;
  }
  body .flex-title-cm .flex-title-cm__main {
    font-size: 25px;
  }
  body .flex-title-cm .flex-title-cm__sub {
    font-size: 18px;
  }
}
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
body#index #product .product__about {
  margin-bottom: 50px;
}
body#index #product .product__list {
  list-style: none;
}
body#index #product .product__list .list__item {
  width: 46%;
  background: #fff;
  margin-bottom: 45px;
}
body#index #product .product__list .list__item:nth-child(2n) {
  position: relative;
  top: 30px;
}
body#index #product .product__list .list__item .item__image {
  background: #eee;
}
body#index #product .product__list .list__item .item__about {
  padding: 20px 20px;
}
body#index #product .product__list .list__item .item__title {
  font-weight: bold;
  color: #00A352;
}
body#index #product .product__list .list__item .sub-list {
  list-style: none;
}
body#index #product .product__list .list__item .sub-list .sub-item {
  display: inline-block;
}
body#index #product .product__list .list__item .sub-list .sub-item::before {
  content: "●";
  display: inline-block;
  margin-right: 6px;
  font-size: 10rem;
  vertical-align: text-top;
  color: #00A352;
}
body#index #material .material__catch {
  position: relative;
  margin-bottom: 90px;
}
body#index #material .material__catch img {
  width: 100%;
}
body#index #material .material__about {
  margin-bottom: 50px;
}
body#index #material .material__about .about__text {
  margin-bottom: 20px;
}
body#index #material .catch .catch__content {
  background: #fff;
  padding: 30px 30px;
  line-height: 1.7em;
  margin-bottom: 70px;
}
body#index #material .catch .catch__content .catch__title {
  font-weight: bold;
  margin-bottom: 10px;
  font-size: 46rem;
  line-height: 1.4em;
}
body#index #material .catch .catch__content .catch__title::first-letter {
  color: #00A352;
}
body#index #material .material__list {
  list-style: none;
  margin-bottom: 50px;
}
body#index #material .material__list .list__item {
  width: 46%;
  background: #fff;
  margin-bottom: 45px;
}
body#index #material .material__list .list__item:nth-child(2n) {
  position: relative;
  top: 30px;
}
body#index #material .material__list .list__item .item__text {
  color: #00A352;
  padding: 10px 20px;
}
body#index #material .material__works .works__title {
  font-size: 20rem;
  margin-bottom: 50px;
}
body#index #material .material__works .works__list {
  list-style: none;
}
body#index #material .material__works .works__list .list__item {
  width: 46%;
  background: #fff;
  margin-bottom: 45px;
}
body#index #material .material__works .works__list .list__item:nth-child(2n) {
  position: relative;
  top: 30px;
}
body#index #material .material__works .works__list .list__item .item__text {
  padding: 20px 20px;
}
body#index #material .material__works .works__list .list__item .item__text .item__location {
  font-weight: bold;
  color: #00A352;
}
body#index #hisense .hisense__catch {
  position: relative;
  margin-bottom: 90px;
}
body#index #hisense .hisense__about {
  margin-bottom: 50px;
}
body#index #hisense .hisense__list .list__item {
  width: 46%;
  background: #fff;
  margin-bottom: 45px;
}
body#index #hisense .hisense__list .list__item:nth-child(2n) {
  position: relative;
  top: 30px;
}
body#index #hisense .hisense__list .list__item .item__text {
  padding: 20px 20px;
}
body#index #hisense .hisense__works .works__title {
  font-size: 20rem;
  margin-bottom: 50px;
}
body#index #hisense .hisense__works .works__list {
  list-style: none;
}
body#index #hisense .hisense__works .works__list .list__item {
  width: 46%;
  background: #fff;
  margin-bottom: 45px;
}
body#index #hisense .hisense__works .works__list .list__item:nth-child(2n) {
  position: relative;
  top: 30px;
}
body#index #hisense .hisense__works .works__list .list__item .item__text {
  padding: 20px 20px;
}
body#index #hisense .hisense__works .works__list .list__item .item__text .item__location {
  font-weight: bold;
  color: #00A352;
}
body#index #maker .maker__list ul {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px 30px;
}
body#index #maker .maker__list ul li .list__img {
  padding: 20px;
  margin-bottom: 10px;
}
body#index #maker .maker__list ul li .list__img img {
  width: 100%;
}
body#index #maker .maker__list ul li .list__name {
  font-weight: bold;
  color: #00A352;
  line-height: 1.5em;
}
body#index #maker .maker__list ul li .list__links a {
  font-weight: normal;
  padding: 10px 30px 10px 0;
  margin-right: 15px;
}
body#index #maker .maker__list ul li .list__links a::before {
  margin-top: -12px;
  width: 25px;
  height: 25px;
}
body#index #maker .maker__list ul li .list__links a::after {
  right: 11px;
}
body#baumhaus .baumhaus.section_bg:not(:last-of-type) {
  margin-bottom: 60px;
}
body#baumhaus .baumhaus.section_bg--middle::before {
  height: 82%;
  transform: translateY(22%);
}
body#baumhaus .baumhaus.section_bg--long {
  padding-top: 195px;
}
body#baumhaus .baumhaus .baumhaus__performance-bg {
  position: relative;
}
body#baumhaus .baumhaus .baumhaus__performance-bg::after {
  content: url(../images/product/baumhaus/baumhaus_bg01.svg);
  display: block;
  width: 11%;
  z-index: -999;
  position: absolute;
}
body#baumhaus .baumhaus__mv {
  margin-bottom: 145px;
}
body#baumhaus .baumhaus__mv img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
body#baumhaus .baumhaus__intro {
  margin-bottom: 170px;
  font-weight: bold;
  position: relative;
}
body#baumhaus .baumhaus__intro .intro__catch {
  flex-basis: 39%;
}
body#baumhaus .baumhaus__intro .intro__catch .catch__title {
  font-size: 49px;
  line-height: 1.75;
  margin-bottom: 30px;
  color: #00A352;
}
body#baumhaus .baumhaus__intro .intro__catch .catch__text {
  font-size: 24px;
  line-height: 2.25;
}
body#baumhaus .baumhaus__intro .intro__content {
  flex-basis: 44%;
}
body#baumhaus .baumhaus__intro .intro__content .content__text {
  margin-bottom: 45px;
  line-height: 2.7;
}
body#baumhaus .baumhaus__intro .intro__content .content__text:last-child {
  margin-bottom: 0;
}
body#baumhaus .baumhaus__intro-bg::after {
  content: url(../images/product/baumhaus/baumhaus_bg02.svg);
  width: 100%;
  display: block;
  z-index: -999;
  transform: translateY(-130%);
  position: absolute;
}
body#baumhaus .baumhaus__slide {
  margin-bottom: 40px;
}
body#baumhaus .baumhaus__slide .slide__item {
  padding-right: 20px;
}
body#baumhaus .baumhaus__performance {
  margin-bottom: 75px;
}
body#baumhaus .baumhaus__performance .performance__title {
  gap: 160px;
  margin: 0;
  margin-bottom: 40px;
  padding-bottom: 35px;
}
body#baumhaus .baumhaus__performance .performance__figure {
  margin-bottom: 55px;
  padding: 30px 70px 20px 60px;
}
body#baumhaus .baumhaus__performance .performance__figure img {
  width: 100%;
}
body#baumhaus .baumhaus__performance .performance__card-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card {
  counter-increment: index-cm;
  padding: 40px 30px;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head {
  display: flex;
  justify-content: space-between;
  gap: 8%;
  margin-bottom: 30px;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__icon {
  flex-basis: 31%;
  height: 130px;
  border-radius: 50%;
  background-color: #F2F5F9;
  display: flex;
  justify-content: center;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__icon img {
  width: 60%;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content {
  flex-basis: 61%;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__index {
  font-weight: bold;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__index::after {
  content: counter(index-cm, decimal-leading-zero);
  color: #00A352;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__title {
  margin: 0;
  padding-bottom: 13px;
  font-size: 20px;
  margin-bottom: 13px;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__sub {
  font-size: 19px;
  line-height: 2;
}
body#baumhaus .baumhaus__performance .performance__card-list .performance__card--bottom {
  transform: translateY(40px);
}
body#baumhaus .baumhaus__desc {
  margin-bottom: 70px;
}
body#baumhaus .baumhaus__desc .desc__title {
  gap: 40px;
  padding-bottom: 30px;
  margin: 0;
  margin-bottom: 40px;
}
body#baumhaus .baumhaus__desc .desc__title .desc__title-main {
  width: 280px;
}
body#baumhaus .baumhaus__desc .desc__list {
  position: relative;
  padding-top: 57%;
}
body#baumhaus .baumhaus__desc .desc__list iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
body#baumhaus .baumhaus__access {
  margin-bottom: 100px;
}
body#baumhaus .baumhaus__access .access__title {
  margin: 0;
  margin-bottom: 30px;
  font-size: 25px;
}
body#baumhaus .baumhaus__access .access__box {
  gap: 9%;
}
body#baumhaus .baumhaus__access .access__box .box__img {
  width: 43%;
}
body#baumhaus .baumhaus__access .access__box .box__content {
  flex-basis: 48%;
}
body#baumhaus .baumhaus__access .access__box .box__content .content__title {
  font-size: 18px;
}
body#baumhaus .baumhaus__access .access__box .box__content .content__lead {
  font-size: 15px;
  margin-bottom: 50px;
}
body#baumhaus .baumhaus__access .access__box .box__content .cotent__text {
  font-size: 15px;
}

@media screen and (max-width: 768px) {
  body#index #product .product__list .list__item {
    width: 100%;
  }
  body#index #product .product__list .list__item:nth-child(2n) {
    top: 0;
  }
  body#index #material .catch .catch__content .catch__about {
    margin-bottom: 20px;
  }
  body#index #material .material__list .list__item {
    width: 100%;
  }
  body#index #material .material__list .list__item:nth-child(2n) {
    top: 0;
  }
  body#index #material .material__works .works__list .list__item {
    width: 100%;
  }
  body#index #material .material__works .works__list .list__item:nth-child(2n) {
    top: 0;
  }
  body#index #hisense .hisense__list .list__item {
    width: 100%;
  }
  body#index #hisense .hisense__list .list__item:nth-child(2n) {
    top: 0;
  }
  body#index #hisense .hisense__works .works__list .list__item {
    width: 100%;
  }
  body#index #hisense .hisense__works .works__list .list__item:nth-child(2n) {
    top: 0;
  }
  body#index #maker .maker__list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 10px;
  }
  body#index #maker .maker__list ul li .list__links a {
    width: 65%;
    display: inline-block;
  }
  body#baumhaus .baumhaus.section_bg .baumhaus__performance-bg::after {
    width: 20%;
  }
  body#baumhaus .baumhaus.section_bg--long {
    padding-top: 50px;
  }
  body#baumhaus .baumhaus__mv {
    margin-bottom: 65px;
  }
  body#baumhaus .baumhaus__intro {
    flex-direction: column;
    margin-bottom: 50px;
  }
  body#baumhaus .baumhaus__intro .intro__catch {
    margin-bottom: 30px;
  }
  body#baumhaus .baumhaus__intro .intro__catch .catch__title {
    font-size: 30px;
    margin-bottom: 10px;
  }
  body#baumhaus .baumhaus__intro .intro__catch .catch__text {
    font-size: 20px;
    margin: 0;
  }
  body#baumhaus .baumhaus__intro .intro__content .content__text {
    margin-bottom: 20px;
    line-height: 2.2;
    font-size: 13px;
  }
  body#baumhaus .baumhaus__intro-bg::after {
    transform: translateY(-180%);
  }
  body#baumhaus .baumhaus__slide .slide__item {
    padding-right: 20px;
  }
  body#baumhaus .baumhaus__performance-bg::after {
    width: 20%;
  }
  body#baumhaus .baumhaus__performance {
    margin: 0;
  }
  body#baumhaus .baumhaus__performance .performance__title {
    gap: 10px;
  }
  body#baumhaus .baumhaus__performance .performance__figure {
    padding: 20px 0;
    margin-bottom: 30px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card {
    padding: 25px 15px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head {
    margin-bottom: 10px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__icon {
    height: 100px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__title {
    font-size: 18px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card .card__head .head__content .content__sub {
    font-size: 17px;
  }
  body#baumhaus .baumhaus__performance .performance__card-list .performance__card--bottom {
    transform: translateY(0);
  }
  body#baumhaus .baumhaus__desc {
    margin-bottom: 35px;
  }
  body#baumhaus .baumhaus__desc .desc__title {
    gap: 10px;
  }
  body#baumhaus .baumhaus__desc .desc__list .list__item--huge {
    margin-bottom: 25px;
  }
  body#baumhaus .baumhaus__desc .desc__list .list__item .item__caption {
    font-size: 14px;
  }
  body#baumhaus .baumhaus__desc .desc__list .list__grid {
    gap: 25px 15px;
  }
  body#baumhaus .baumhaus__access {
    margin-bottom: 50px;
  }
  body#baumhaus .baumhaus__access .access__title {
    font-size: 22px;
  }
  body#baumhaus .baumhaus__access .access__box {
    flex-direction: column;
    gap: 20px;
  }
  body#baumhaus .baumhaus__access .access__box .box__img {
    width: 100%;
  }
  body#baumhaus .baumhaus__access .access__box .box__content .content__lead {
    margin-bottom: 15px;
  }
}