/*TOP*/
.home_concept_wrap{
  padding: 57px 20px;
}
.home_concept_img{
  text-align: center;
  position: relative;
  margin-top: 45px;
}
.home_concept_img img{
}
.home_concept_img:after{
  content: "";
  display: block;
  height: 85%;
  width: 77px;
  background-image:url("/img/top/stoppi.png") ;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -10px;
  right: 241px;
}
.home_concept_items {
  display: flex;
  flex-wrap: wrap;
  margin: 35px -20px 0;
}
.home_concept_items .item{
  width: 33.333%;
}
.home_concept_items .item:first-child{
  border-left: 1px solid #7d7d7d;
}
.home_concept_items .item:last-child{
  border-right: 1px solid #7d7d7d;
}
.home_concept_items .item .inner{
  text-align: center;
  padding: 10px 10px;
  height: 100%;
}
.home_concept_items .item .icon{
  text-align: center;
  height: 85px;
}
.home_concept_items .item .inner .title{
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5em;
}
.home_concept_items .item .icon img{

}
.home_concept_items .item .text{
  font-size: 20px;
  font-weight: 700;
}
.home_concept_items .item .text{
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.home_concept_items .item:not(:first-child) {
  border-left: 1px solid #7d7d7d;
}
.home_product_wrap{
  position: relative;
  padding: 48px 0;
}
/*.home_product_wrap:after{
  content: "";
  background: rgba(0,0,0,0.7);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}*/


.home_slider_wrap{
  margin-top: 25px;
}

/* 商品スライダー */
.product_slider{
  padding: 0 55px;
  position: relative;
}
.product_slider .btn_prev,
.product_slider .btn_next{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  color: #FFF;
  font-size: 18px;
  position: absolute;
  top: 0;
  bottom: 0;
  background: #ed840f;
  cursor: pointer;
}
.product_slider .btn_prev{
  left: 0;
  border-radius: 10px 0 0 10px;
}
.product_slider .btn_next{
  right: 0;
  border-radius: 0 10px 10px 0;
}

/* 商品スライダー要素 */
.slider_product_item{
  
}
.slider_product_item .img{
  display: block;
  border: 10px solid #dcdcdc;
  
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.slider_product_item .img:before{
  content: "";
  display: block;
  padding-top: 71.2222%;
}



/*
.service_slider_item{
  
}
.service_slider_item .img{
  position: relative;
  overflow: hidden;
  border: 10px solid #dcdcdc;
}
.service_slider_item .img .inner{
  
}
.service_slider_item .img:before{
  content: "";
  display: block;
  padding-top: 71.2222%;
}
.service_slider_item .img span{
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("/img/top/seko_img3.jpg");
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  transition: 0.2s all;
}
*/

.home_works_wrap{
  padding: 85px 0;
}
.home_works_items{
  display: flex;
  flex-wrap: wrap;
  position: relative;
  margin-top: 30px;
}
.home_works_items:before{
  display: block;
  content: "";
  width: 295px;
  height: 124px;
  background-image:url("/img/top/stopi_icon.png") ;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -141px;
  left: 120px;
}
.home_works_items .item{
  width: 33.33333%;
  overflow: hidden;
  position: relative;
}
.home_works_items .item .mask{
  width:100%;
  height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  vertical-align: bottom;
  position:absolute;	
  top:0;
  left:0;
  opacity:0;	
  background-color:	rgba(0,0,0,0.4);	
  -webkit-transition:all 0.2s ease;
  transition:all 0.2s ease;
}
.home_works_items .item .mask .inner{
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.home_works_items .item .mask .title{
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #ffffff;

}
.home_works_items .item:hover .mask {
  opacity:1;	
}
.home_works_items .item .img_box{
  width: 100%;
  background: #e5e5e5;
}
.home_works_items .item .img_box .img{
  width: 100%;
  display: block;
  background-image: url("/img/top/seko_img3.jpg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.home_works_items .item .img_box .img:before{
  display: block;
  content: "";
  padding-top: 71.11%;
}
.home_info_wrap{
  padding: 60px 0;
}
.home_info_items{
  display: flex;
  justify-content: space-between;
}
.home_info_items .box1,
.home_info_items .box2{
  width: 47%;
  text-align: center;
}
.home_info_items .box1 .inner{
  padding: 10px 0;
}
.home_info_items .box2 .inner{
  
}
.home_info_items .box1 .top{
  margin-right: -37px;
}
.home_info_items .box1 .top,
.home_info_items .box2 .top{
  height: 500px;
}
.action_contact_wrap .box1 .bottom{
  text-align: center;
  margin-top: 120px;
}

.action_contact_wrap .item.right .bottom .info_contact{
  display: flex;
  justify-content: flex-end;
  margin-right: 50px;
}
.action_contact_wrap .item.right .info_contact .t1{
  position: relative;
}
.action_contact_wrap .item.right .info_contact .t1 fa-envelope:before{
  position: absolute;
  left: -39px;
  top: 4px;
}
.action_contact_wrap .box1{
  width: 100%;
  margin: 0 auto;
  background: #ed840f;
  padding: 25px 0;
  position: relative;
  max-width: 520px;
}
.action_contact_wrap .box1:before{
  content: "";
  display: block;
  height: 120px;
  width: 87px;
  background-image: url("/img/top/danro_icon.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -32px;;
  left: 3px;
}
.action_contact_wrap .item.right .box1:before{
  content: "";
  display: block;
  height: 120px;
  width: 89px;
  background-image: url("/img/top/tree_icon.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -33px;
  left:11px;
}

.action_contact_wrap .item .box1 .text{
  font-size: 27px;
  font-weight: normal;
  font-family: "Corporate-Mincho";
  color: #ffffff;
  line-height: 1.2em;
  margin-right: 20px;
}
.action_contact_wrap .item .text span{
  display: block;
  font-size:25px; 
  font-weight: normal;
  font-family:'Noto Sans JP';
}
.action_contact_wrap .item .text span.t1,
.action_contact_wrap .item .text span.t2{
  font-family: "Corporate-Mincho";
}
.action_contact_wrap .item.right .text{
  margin-right: 77px;
}
.action_contact_wrap .item .text .ttt1{
  position: relative;
}
.action_contact_wrap .item .text .ttt1 .fa-envelope:before{
  font-size: 35px;
  color: #ffffff;
  position: absolute;
  bottom: -3px;
  left: -41px;
}
.action_contact_wrap .bottom .box1 .text span:before{

}
.action_contact_wrap .item .box1 .number{
  font-size: 42px;
  font-family: "AvenirLTStd";
  font-weight: normal;
  color: #ffffff;
  margin-right: 32px;
}

.home_info_items .item .info_contact .t2{
  letter-spacing: 0.2em;
}
.home_news_wrap{
  padding-top: 47px;
}
.home_news_items{
  margin-top: 7px
}
.home_news_items .item{
  display: flex;
  align-items: center;
  border-bottom: 1px dotted;
  padding:12px 0;
}
.home_news_items .item .date{
  width: 85px;
  font-size: 16px;
  font-weight: normal;
}
.home_news_items .item .title {
  font-weight: normal;
  text-align: left;
  width: calc(100% - 80px);
  margin-left: 25px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home_banner_items .item{
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.home_banner_items .item:nth-child(n+2){
  margin-top: 10px;
}
.home_banner_items .item.show{
  display: flex;
  justify-content: center;
  align-items: center;
}
.home_banner_items .item.show .inner span{
  display: block;
  color: #ffffff;
  font-size: 42px;
}
.home_banner_items .item.blog{
  background-image: url("/img/top/nlog_img.jpg");
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
}
.home_banner_items .item.blog .inner {
  width: 100%;
  border: 1px solid #ed840f;
  padding: 10px;
}
.home_banner_items .item.blog .inner .title{
  font-size: 42px;
  font-weight: normal;
  line-height: 0.714em;
}
.home_banner_items .item.blog .inner .kana a,
.home_banner_items .item.blog .inner .title a{
  text-decoration: none;
  font-family: "Corporate-Mincho";
}
.home_banner_items .item.blog .inner .kana{
  display: block;
  font-size: 24px;
  line-height: 1.25em;
}

.home_banner_items .item.insta .inner{
  padding: 0;
}

.action_contact_wrap  .item.right .box1{
  background: #32b16c;
  position: relative;
  padding: 44px 0;
}
.home_info_wrap .box2.right .item .box1 .info_contact .text{
  margin-right: 75px;
}
.action_contact_wrap .items{
  display: flex;
  justify-content: space-between;
}
.action_contact_wrap .items .item{
  width: 47%;
  text-align: center;
}
.action_contact_wrap .items .item .info_contact{
  width: 520px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  text-decoration: none;
}

/* **********************************
 *  お知らせ詳細
 * ********************************* */
.pg_single_news .section#sec1{
  margin-top: 78px;
  margin-bottom: 197px;
}

.post_items .item.single_item {
  padding: 35px;
}
.post_items .item.single_item .date{
  font-size: 15px;
  font-weight: normal;
  letter-spacing: 0.065em;
  width: 100%;
  color:#a5a5a5; 
}
.post_items .item.single_item .title{
  font-weight: 500;
  letter-spacing: 0.065em;
  line-height: 1.584em;
  margin-left:0;
}
.post_items .item.single_item .post_content{
  font-size: 16.41px;
  font-weight: normal;
  letter-spacing: 0.065em;
  line-height: 1.875em;
  color: #000000;
  margin-top: 18px;
}

/* **********************************
 *  施工・工事
 * ********************************* */
.pg_construction{
  margin-bottom: 232px;
}
.pg_construction .section#sec1{
  margin-top: 175px;
}
.pg_construction .section#sec2{
  margin-top: 60px;
}
.pg_construction .section#sec3{
  margin-top: 110px;
}
.construction_message_wrap .text{
  text-align: center;
  font-weight: normal;
  line-height: 1.875em;
  color:#000000;
  margin-top: 24px;
}
.construction_image_wrap .items{
  display: flex;
  margin: 0 -5px;
}
.construction_image_wrap .items .box1{
  width: 54.19%;
  padding: 0 5px;
}
.construction_image_wrap .items .box1 .inner{
  display: flex;
}
.construction_image_wrap .items .box1 .img1{
  width: 52%;
}
.construction_image_wrap .items .box1 .img2{
  width: calc(100% - 52%);
  overflow: hidden;
}
.construction_image_wrap .items .box1 .img1 img,
.construction_image_wrap .items .box1 .img2 img{
  display: block;
  height: 605px;
  width: 100%;
  object-fit: cover;
}

.construction_image_wrap .items .box1 .img2 .inner{
  padding-left: 5px;
}

.construction_image_wrap .items .box2{
  width: calc(100%-54.19%)
}
.construction_image_wrap .items .box2 .inner{
  
}
.construction_image_wrap .items .box2 .img2 .inner{
  padding-top: 5px
}

.construction_self_wrap{
  position: relative;
}
.construction_self_wrap:before{
  content: "";
  display: block;
  height: 86px;
  width: 49px;
  background-image: url("/img/construction/construction_danro.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -37px;
  left: 28%;
  z-index: 2;
}
.construction_self_wrap .items{
  display: flex;
  margin-top: 42px;
}
.construction_self_wrap .items .box1{
  width: 53.57%;
}
.construction_self_wrap .items .box1 .text{
  font-size: 18px;
  font-weight: normal;
  line-height: 2.2222em;
  padding-right: 20px;
}
.construction_self_wrap .items .box2{
  width: calc(100% - 53.57%);
}
.construction_self_wrap .items .box2 .img{
  width: 100%;
  text-align: right;
  padding-top: 10px;
}
.construction_self_wrap .items .box2　.img img{
  width: 100%;
  object-fit: cover;
}
/* **********************************
 *  暖楽舎について
 * ********************************* */
.pg_company .section#sec2{
  height: 200px;
  width: 100%;
  background-image: url("/img/about/about_label_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  margin-top: 80px;
}
.pg_company .section#sec3{
  margin-top: 50px;
}
.company_mge_wrap{
  border-top: 1px solid #000000;
  position: relative;
  margin-top: 180px;
}
.company_mge_wrap:before{
  content: "";
  display: block;
  height: 73px;
  width: 68px;
  background-image: url("/img/about/company_house.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -103px;
  left: 47%;
}
.company_mge_wrap .company_items{
  display: flex;
  padding-top: 27px;
}
.company_mge_wrap .company_items .box1{
  width: 34%;
}
.company_mge_wrap .company_items .box1 .inner{
  position: relative;
  padding-top: 8px;
}
.company_mge_wrap .company_items .box1 .txt {
  font-size: 14px;
  font-weight: 500;
  display: inline-block;
  position: absolute;
  right: 50px;
  bottom: -94px;
}
.company_mge_wrap .company_items .box1 .greeting_img{
  position: relative;
}
/*  .company_mge_wrap .company_items .box1 .greeting_img img{
    background-image: url("/img/about/daihyo.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
  }*/
.company_mge_wrap .company_items .box1 .greeting_img img:before{
  display: block;
  content: "";
  padding-top: 123%;
}
.company_mge_wrap .company_items .box1 .greeting_img span{
  text-shadow: 1px 1px 2px black;
  font-size: 26px;
  font-weight: normal;
  color: #ffffff;
  position: absolute;
  top: 43%;
  left: 17%;
}
.company_mge_wrap .company_items .box1 .daihyo {
  width: 53%;
  background-image: url("/img/about/daihyo.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  border: 3px solid #ffffff;
  position: absolute;
  bottom: -68px;
  right: -2px;
}
.company_mge_wrap .company_items .box1 .daihyo:after{
  display: block;
  content: "";
  padding-top: 123%;
}
.company_mge_wrap .company_items .box2{
  width: calc(100% - 34%);
}
.company_mge_wrap .company_items .box2 .inner{
  padding-left: 26px;
}
.company_mge_wrap .company_items .box2 .text{
  color: #181818;
  font-weight: 500;
  line-height: 2.06em;
}
.company_about_wrap{
  margin-top: 38px;
}
.company_about_wrap .company_tbl th{
  width: 300px;
  font-weight: normal;
  text-align: center;
  color:#181818;
  background: #e2dcd4;
}
.company_about_wrap .company_tbl th,
.company_about_wrap .company_tbl td{
  border: 1px solid #898989;
  padding: 20px;
}
.company_about_wrap .company_tbl td{
  color:#181818;
  font-weight: normal;
  text-align: left;
  padding-left: 35px
}
.company_mge_wrap{

}
.about_info_wrap{
  text-align: center;
  margin-top: 15px;
}
.about_info_wrap .title{
  font-size: 20px;
  font-weight:500;
  line-height: 1.65em;
}
.about_info_wrap .title span{
  color:#ed820e; 
}
.about_info_wrap .info_room_wrap{
  background: #e2dcd4;
  border: 3px dashed #59493f;
  margin-top: 38px;
}
.show_info_tbl{
 line-height: 2em;
  margin: 11px 20px 11px 290px;
}
.show_info_tbl th,
.show_info_tbl td{
  font-size: 18px;
  padding: 0;

}
.show_info_tbl th{
  width: 110px;
  font-weight: bold;
  text-align: justify;
  text-align-last: justify;
  text-justify: inter-character;
}
.show_info_tbl td{
  font-weight: normal;
  text-align: left;
  padding-left: 18px;
  position: relative;
}
.show_info_tbl td:before{
  content: ":";
  position: absolute;
  left: 10px;
}
.about_room_items{
  display: flex;
  margin-top: 45px;
}
.about_room_items .box1,
.about_room_items .box2{
  width: 50%;
}
.about_room_items .box1 .img{
  width: 100%;
  background-image: url("/img/about/show_image1.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.about_room_items .box1 .img:before{
  content: "";
  display: block;
  padding-top: 82.142%;
}
.about_room_items .box2 .img{
  width: 100%;
  background-image: url("/img/about/show_image2.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.about_room_items .box2 .img{
  width: 100%;
  background-image: url("/img/about/show_image3.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.about_room_items .box2 .img:before{
  content: "";
  display: block;
  padding-top: 40.90%;
}
.about_room_items .box2 .item .inner {
  padding: 0 0 5px 5px;
}
.about_room_items .box2 .item.bt .inner{
  padding: 0 0 0 5px;
}
/*  .about_room_items .box2 .inner{
   
  }*/
.about_room_items .box2 {

}
.about_info_wrap .g_map{
  margin-top: 60px;
}
.about_addres_wrap{
  text-align: left;
  margin-top: 30px;
}
.about_addres_wrap .addres{
  font-weight: 700;
}
.about_addres_wrap .box{
  margin-top: 36px;
}
.about_addres_wrap .box li{
  font-weight: normal;
  line-height: 1.875em;
}
/* **********************************
 *  メンテナンスについて
 * ********************************* */
.pg_maintenance {
  margin-bottom: 190px;
}
.pg_maintenance .section#sec1{
  margin-top: 180px;
}
.pg_maintenance .section#sec2{
  background: #d1c0a5;
  padding: 0 0 36px;
  margin-top: 40px;
}
.pg_maintenance .section#sec3{
  margin-top: 40px;
}
.pg_maintenance .section#sec4{
  margin-top: 52px;
}
.maintenance_mge_wrap {
  position: relative;
}
.maintenance_mge_wrap .tt4.ora,
.maintenance_desc_wrap .tt4.ora2{
  color: #ed840f;
}
.maintenance_mge_wrap:before{
  content: "";
  display: block;
  height: 73px;
  width: 114px;
  background-image: url("/img/top/danro_img.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -91px;
  left: 45%;
}
.maintenance_mge_wrap span{
  display: block;
  text-align: center;
  font-weight: normal;
  line-height: 1.875em;
  margin: 0 auto;
}
.maintenance_mge_wrap span.desc1{
  margin-top: 20px;
}
.maintenance_label_img{
  margin-top: 50px;
}
.maintenance_desc_wrap{
  margin-top: 43px;
}
.maintenance_mge_wrap span.desc2{
  margin-top: 20px;
}
.maintenance_change_wrap{
  padding-top: 50px;
  background: url("/img/maintenance/arrow.png") no-repeat center;
}
.maintenance_change_wrap .items{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
}
/*.maintenance_change_wrap .items .item.left:after{
  content: "";
  display: block;
  height: 55px;
  width: 79px;
  
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  right: -127px;
  bottom: 105px;
}*/
.maintenance_change_wrap .items .item{
  max-width: 300px;
  margin: 0 80px;
}
.maintenance_change_wrap .items .item.right{
  text-align: left;
}
.maintenance_change_wrap .items .item.left span,
.maintenance_change_wrap .items .item.right span{
  font-weight: normal;
  display: block;
}
.maintenance_change_wrap .items .item.left span{
  margin-top: 5px;
}
.maintenance_change_wrap .items .item.right span{
  margin-top: 5px;
}
.maintenance_change_wrap .items .inner {
  text-align: center;
}
.maintenance_image_wrap .items{
  margin: 0 -10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.maintenance_image_wrap .items .item{
  width: 50%;
  padding: 0 10px;
}
.maintenance_image_wrap .text{
  margin-top: 15px;
  text-align: center;
}
.maintenance_image_wrap + .maintenance_image_wrap{
  margin-top: 15px;
}
.pg_maintenance .section#sec2 .center{
  margin-top: 30px;
  text-align: center;
}
/*.maintenance_image_wrap .items .item .inner{
  padding: 8px;
}*/
.maintenance_qa_wrap .items{
  display: flex;
  justify-content: space-between;
}
.maintenance_qa_wrap .items .item{
  width: 49.10%;
  background-image: url("/img/maintenance/box_bg.jpg");

}
.maintenance_qa_wrap .items .item.left{
  padding-right: 5px;
}
.maintenance_qa_wrap .items .item.right{

}
.maintenance_qa_wrap .items .item .flex{
  display: flex;
}
.maintenance_qa_wrap .items .item .flex .box1{
  width: 67.63%;
  padding-bottom: 50px;
}
.maintenance_qa_wrap .items .item .flex .box1 .title{
  font-size: 17px;
  font-weight: bold;
  color: #ffffff;
  background: #1e1b1a;
  padding: 10px 19px;
  margin-top: 25px;
  position: relative;
}
.maintenance_qa_wrap .items .item .flex .box1 .title:after{
  content: "";
  display: block;
  height: 71px;
  width: 50px;
  background-image: url("/img/maintenance/stoppi.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  right: 5px;
  top: -28px;
}
.maintenance_qa_wrap .items .item .flex .box1 .text{
  font-weight: 500;
  line-height: 1.875em;
  color: #ffffff;
  position: relative;
  padding: 13px 16px;
}
.maintenance_qa_wrap .items .item .flex .box1 .text:after{
  content: "";
  display: block;
  height: 50px;
  width: 56px;
  background-image: url("/img/maintenance/under_arrow.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  left: 42%;
  bottom: -38px;
}
.maintenance_qa_wrap .items .item .flex .box1 .title2{
  font-weight: 700;
  color: #181818;
  background: #a99b87;
  padding:10px 16px;
  margin-top: 48px;
}
.maintenance_qa_wrap .items .item .flex .box1 .txt1{
  display: block;
  font-weight: 500;
  color: #ffffff;
  padding-top: 23px;
  padding-left: 16px;
  padding-right: 10px;
}
.maintenance_qa_wrap .items .item .flex .box2{
  width: calc(100%-67.63%);
}
.maintenance_qa_wrap .items .item .flex .box2 .inner{
  padding: 8px 5px 5px 0;
} 
.maintenance_qa_wrap .item.right .inner{
  padding: 14px 10px;
}
.maintenance_qa_wrap .item.right .title{
  font-size: 18px;
  font-weight: bold;
  color: #181818;
  background: #a1937f;
  padding: 10px 15px;
  position: relative;
}
.maintenance_qa_wrap .item.right .title:after{
  content: "";
  display: block;
  height: 71px;
  width: 50px;
  background-image: url("/img/maintenance/stoppi.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  right: 10px;
  top: -23px;
}
.maintenance_qa_wrap .item.right .txt1{
  display: block;
  font-weight: 500;
  color: #ffffff;
  background: rgba(0,0,0,0.4);
  padding: 16px 17px;
}
.maintenance_qa_wrap .item.right .img{
  margin-top: 15px;
}
/* **********************************
 *  初めての方へ
 * ********************************* */
.pg_beginners{
  margin-bottom: 195px;
}
.pg_beginners .section#sec1{

}
.pg_beginners .section#sec2{
  margin-top: 80px;
}
.pg_beginners .section#sec3{
  margin-top: 100px;
}
.pg_beginners .section#sec4{

}
.pg_beginners .description{
  font-weight: 500;
  line-height: 1.875em;
  text-align: center;
  margin-top: 80px;
}

.beginners_howto_wrap{
  margin-top: 100px;
}
.beginners_howto_wrap .tt5.title {
  border-bottom: 3px solid #362e2b;
  padding-bottom: 23px;
  margin-left: 88px;
  padding-left: 12px;
  position: relative;
}
.beginners_howto_wrap .tt5.title:before{
  content: "";
  display: block;
  height: 109px;
  width: 72px;
  background-image: url("/img/maintenance/stoppi.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  left: -88px;
  bottom: 0;
}
.beginners_howto_wrap .items{

}
.beginners_howto_wrap .items .item{
  display: flex;
  justify-content: space-between;
}
.beginners_howto_wrap .box1{
  width: 66.96%;
}
.beginners_howto_wrap .box1 .title{
  font-size: 18px;
  font-weight: 900;
  color: #ffffff;
  background-image: url("/img/beginners/beginners.title_bg.png");
  padding: 10px 32px;
  margin-top: 40px;
}
.beginners_howto_wrap .box1 .txt,
.beginners_howto_wrap .box2 .txt{
  color: #181818;
  font-weight: normal;
  line-height: 1.875em;
  padding-top: 17px;
}
.beginners_howto_wrap .box2{
  width:calc(100% - 66.96% -70px);
  margin-top: 40px;
}
.beginners_howto_wrap .box2 .inner{
  padding-left: 70px;
}
.beginners_howto_wrap .box1.plus .title{
  margin-top: 30px;
}
.beginners_howto_wrap .box2.plus{
  margin-top: 30px;
}
.beginners_howto_wrap .item:nth-child(n+2){

}
.beginners_bg_title {
  font-size: 24px;
  font-weight: 500;
  color: #ffffff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 60px 30px;
}
.beginners_bg_title.flow{
  background-image: url("/img/beginners/beginners_label_flow.png");
}
.beginners_bg_title.faq{
  background-image: url("/img/beginners/beginners_label_faq.png");
}
.beginners_flow_wrap{
  margin-top: 50px;
}
.beginners_flow_wrap .beginners_flow_items{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px
}
.beginners_flow_items .item{
  width: 33.3333%;
}
.beginners_flow_items .item:nth-child(n+4){
  margin-top: 32px;
}
.beginners_flow_items .item .inner{
  padding: 0 10px
}
.beginners_flow_items .item .img{
  width: 100%;
  margin-top: 5px;
}
.beginners_flow_items .item.border .img{
  border: 1px solid #d1c0a5;
}
.beginners_flow_items .item .img img{
  display: block;
  object-fit: cover;
}



.beginners_flow_items .item .step_number{
  font-size: 24px;
  text-align: center;
  color: #ffffff;
  background: #ed840f;
  position: relative;
}
.beginners_flow_items .item .title{
  font-size: 18px;
  font-weight: 700;
  color: #b80000;
  padding-left: 65px;
  position: relative;
}
.beginners_flow_items .item .step_number:not(.step_number.not):before {
  height: 0;
  display: block;
  position: absolute;
  right: 0px;
  content: "";
  border-top: solid 59px #fff;
  border-left: solid 35px transparent;
  top: -20px;
  z-index: 2;
}
.beginners_flow_items .item .step_number:after {
  height: 0;
  display: block;
  position: absolute;
  right: -10px;
  content: "";
  border-top: solid -25px rgb(28, 24, 196);
  border-left: solid -3px transparent;
  top: -7px;
}
.beginners_flow_items .item .title:before{
  content: "";
  display: block;
  height: 65px;
  width: 39px;
  background-image: url("/img/maintenance/stoppi.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  left:10px;
  bottom: 0;
}
.beginners_flow_items .item .txt{
  font-weight: normal;
  line-height: 1.5625em;
  margin-top: 8px;
}
.beginners_flow_items .item .txt span{
  font-weight: 700;
}

.beginners_faq_wrap {

}
.beginners_faq_wrap {
  margin-top: 50px;
}
.beginners_faq_wrap .items .item{
  margin-top: 20px;
}
.beginners_faq_wrap .items .item .meta_title{
  display: flex;
  align-items: center;
  position: relative;
  padding: 10px 0;
}
.beginners_faq_wrap .items .item .item_q{
  font-size: 24px;
  font-family: "Arial Rounded MT Bold";
  position: relative;
}
.beginners_faq_wrap .items .item .item_q:before{
  content: "";
  display: block;
  width: 20px ;
  height: 10px;
  background-image: url("/img/beginners/beginners_q&a_item.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  left: 20px;
  
}
.beginners_faq_wrap .items .item .meta_title:after{
  content: "";
  display: block;
  height: 16px;
  width: 100%;;
  background-image: url("/img/beginners/under_wave_img.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  bottom: -10px;
}
.beginners_faq_wrap .items .item .meta_title .item_q{
  width:105px;
  text-align: center;
}
.beginners_faq_wrap .items .item .meta_title .title_q{
  width: calc(100%-105px);
  font-weight: 700;
  color:#181818;
}
.beginners_faq_wrap .items .item .meta_title .title_q a{
  text-decoration: none;
}
.beginners_faq_wrap .items .item .meta_title .title_q:after{
  content: "\f13a";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 24px;
  color: #ed840f;
  position: absolute;
  right: 34px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 0.0065em;
}

.beginners_faq_wrap .items .item .item_a span{
  display:none;
}

/* 開いたときの表示 */
.beginners_faq_wrap .items .item.on .item_a span{
  display: block;
  font-weight: normal;
  line-height: 1.875em;
  border-bottom: 1px dashed #181818;
  padding-left: 106px;
  padding-top: 35px;
  padding-bottom: 50px;
}
.beginners_faq_wrap .items .item.on .meta_title .title_q:after{
  content: "\f139";
}

/* **********************************
 *  施工事例
 * ********************************* */
.pg_archive_case {
  margin-bottom: 190px;
}
.pg_archive_case .section#sec1{
  margin-top: 100px;
}
.pg_archive_case .section#sec2{

}
.pg_archive_case .section#sec3{

}

.archive_case_wrap .case_items{
  display: flex;
  flex-wrap: wrap;
}
.archive_case_wrap .case_items .item{
  width: 33.33333%;
}
.archive_case_wrap .case_items .item:nth-child(n+4){
  margin-top: 13px;
}
.archive_case_wrap .case_items .item .inner{

}
.archive_case_wrap .case_items .item a{
  display: block;
  width: 100%;
  margin-top: 3px;
}
.archive_case_wrap .case_items .item .box{
  background: #e5e5e5;
}
.archive_case_wrap .case_items .item .img{
  /*   background-image: url("/img/case/case1.png");*/
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

}
.archive_case_wrap .case_items .item .img:before{
  display: block;
  content: "";
  padding-top: 71.04%;
}
.archive_case_wrap .case_items .item span{
  font-weight: 500;
  letter-spacing: 0.20em;
  text-align: center;
}
/* **********************************
   *  施工事例　詳細
   * ********************************* */
.pg_single_case {
  margin-bottom: 198px;
}
.pg_single_case .section#sec1{
  margin-top: 70px;
}
.pg_single_case {

}
.pg_single_case {

}
.case_items .item{

}
.case_items .item .meta{
  border-bottom: 5px solid #59493f;
  padding-bottom: 15px;
}
.case_items .item .title{
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.200em;
  color: #181818;
} 
.case_items .item .text_content{
  font-weight: normal;
  letter-spacing: 0.200em;
  line-height: 1.875em;
  margin:20px 0 30px;
}
.case_items .item .box1,
.case_items .item .box2{
  background: #e2dcd4;
  margin-top: 30px;
  padding: 18px 0;
}
.case_items .item .box1 .img{
  width: 32%;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  margin: 0 auto;
}
.case_items .item .box2 .img{
  width: 53.57%;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  margin: 0 auto;
}
.case_items .item .box1 .img{
  background-image: url("/img/case/case_single1.jpg");
}
.case_items .item .box1 .img:before{
  display: block;
  content: "";
  padding-top:117%; 
}
.case_items .item .box2 .img{
  background-image: url("/img/case/case_single2.jpg");
}
.case_items .item .box2 .img:before{
  display: block;
  content: "";
  padding-top:70.2%; 
}

/* **********************************
*  取扱商品
* ********************************* */
.pg_handling {
  margin-bottom: 203px;
}
.pg_handling .section#sec1{
  margin-top: 88px;
}
.pg_handling .section#sec2{
  margin-top: 92px;
}

.pg_handling .section#sec3{
  margin-top: 100px;
}

.handling_cat_items {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 46px;
}
.handling_cat_items .item{
  width: 50%;
  position: relative;
}
.handling_cat_items .item:nth-child(n+2) .inner{
  padding: 0 0 40px;
}
.handling_cat_items .item:nth-child(n+2) .name{
  left: 13px;
}
.handling_cat_items .item .inner{
  padding: 0 10px 40px;
  border-bottom: 1px solid #59493f;
}
.handling_cat_items .item .img{
  text-align: right;
}
.handling_cat_items .item .name{
  width: 330px;
  background: #FFFFFF;
  border: 1px solid #cdcccc;
  box-shadow: 1px 1px 2px #cdcccc;
  padding: 24px 25px;
  position: absolute;
  top: 21%;
  left: 0;
}
.handling_cat_items .item .name a{
  text-decoration: none;
}
.handling_cat_items .item .name:after{
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 18px;
  top: 50%;
  font-size: 13px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 0.0065em;
}
.handling_cat_items .item .name span{
  display: block;
  font-size: 20px;
  font-weight: 700;
  line-height:1.8em;
  color: #181818;
}

/* ブランド一覧 */
.product_brand_items{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -4px;
}
.product_brand_items li{
  width: 33.33333%;
  padding: 4px 4px;
}
.product_brand_items li{
  
}
.product_brand_items li a{
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #5b493b;
  padding: 20px 0;
}

/* 関連グッズのカテゴリ一覧 */
.product_goods_items{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
}
.product_goods_items li{
  width: 25%;
  padding: 5px 10px;
}
.product_goods_items li a{
  display: block;
  border: 1px solid #CCC;
  padding: 10px 5px;
  text-align: center;
  text-decoration: none;
}
.product_goods_items li a:hover,
.product_goods_items li a.on{
  background: #f5f5dc;
}

@media (max-width:1023px){
  .product_goods_items{
    margin: 0 -5px;
  }
  .product_goods_items li{
    width: 25%;
    padding: 5px 5px;
  }
  .product_goods_items li a{
    font-size: 13px;
  }
}
@media (max-width:767px){
  .product_goods_items li{
    width: 50%;
    padding: 5px 5px;
  }
}



/*
.handling_bland_items{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
}
.handling_bland_items .item{
  width: 33.3333%;

}
.handling_bland_items .item:nth-child(n+4){
  margin-top: 10px;
}
.handling_bland_items .item .inner{
  padding: 0 10px;
}
.handling_bland_items .item .img{
  border: 1px solid #59493f;
  padding: 40px 0;
}
.handling_bland_items .item .img img{
  display: block;
  margin: 0 auto;
}
*/

/* 商品一覧 */
.handling_product_items{

}
.handling_product_items .item{
  background-image: url("/img/handling/handling_product_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 35px 40px;
}
.handling_product_items .item + .item{
  margin-top: 38px;
}

.handling_product_items .item .inner{

}
.handling_product_items .item .box1{

}

.product_info_items {
  display: flex;
}
.product_info_items .left{
  width: 38.46%;
  margin: 0 auto;
}
.product_info_items .left .img{
  width: 100%;
  background-image: url("/img/handling/product_item1.jpg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #ffffff;
}
.product_info_items .left .img:before{
  display: block;
  content: "";
  padding-top: 80%;
}
.product_info_items .right{
  width: calc(100% - 38.46%);
  padding-left: 70px; 
}
.handling_product_items .box2 {
  margin-top: 30px;
}
.handling_product_items .box2 .txt{
  font-weight: 500;
  line-height: 1.875em;
  color: #ffffff;
}
.handling_product_items .contact_button {
  position: relative;
  margin-top: 52px;
}
.handling_product_items .contact_button .read_more a{
  background-image: url("/img/handling/stoppi_coment.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  border-radius: 0;
  width: 200px;
  color: #181818;
  text-align: right;
  letter-spacing: 0.015em;
  padding: 12px 26px 12px 6px;
  margin-right: 0;
  position: absolute;
  right: 0;
  bottom: -24px;
}
.handling_product_items .contact_button .read_more a:before{
  display: block;
  content: "";
  height: 85px;
  width: 58px;
  background-image: url("/img/maintenance/stoppi.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  left: -58px;
  bottom: -18px;
}
.handling_product_items .contact_button .read_more a:after{
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 13px;
  top: 53%;
  font-size: 13px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 0.0065em;
}
.product_info_items .right th,
.product_info_items .right td{
  background: #ffffff;
  border: 1px solid #898989;
  padding: 13px 10px;
}
.product_info_items .right th{
  width: 220px;
  font-weight: 500;
  background: #e1d9ce;
  color: #181818;
}
.product_info_items .right td{
  padding-left: 29px;
}
/*.product_info_items .right td span:before{
  display: block;
  color: #ed840f;
  content: "\f005";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}*/

.product_info_items .star{
  color: #ed840f;
}

.handling_product_items.type-b{
  padding: 30px 15px;
  margin-top: 88px;
  display: flex;
  flex-wrap: wrap;
  background-image: url("/img/handling/handling_product_bg.jpg");
}
.handling_product_items.type-b .item{
  width: 33.33%;
  padding: 0 25px;
  background-image: none;
}
.handling_product_items.type-b .item + .item {
  margin-top: 0;
}
.handling_product_items.type-b .item:nth-child(n+4) {
  margin-top: 58px;
}
.handling_product_items.type-b .product_info_items {
  display: block;
}
.handling_product_items.type-b .product_info_items .left {
  width: 100%;
}
.handling_product_items.type-b .product_info_items .right {
  width: 100%;
  padding-left: 0;
}
.handling_product_items.type-b .product_info_items .right th {
  width: 110px;
}
.handling_product_items.type-b .product_info_items .right th, 
.handling_product_items.type-b .product_info_items .right td{
  font-size: 14px;
}
.handling_product_items.type-b .box2{
  margin: 5px 0;
}
.detail_ttl{
  font-size: 18px;
  margin-top: 10px;
  padding: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  background: #ffffff;
  text-align: center;
  position: relative;
  cursor: pointer;
}
.detail_ttl:after{
  content: "▼";
  font-size: 16px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.detail_ttl.active:after{
  content: "▲";
}

.works_link {
  font-size: 18px;
  max-width: 400px;
  padding: 12px;
  margin: 10px auto 0;
  display: block;
  background: #ffffff;
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.08em;
}


/* **********************************
*  サイトマップ
* ********************************* */
.pg_sitemap{
  margin-bottom: 196px;
}
.sitemap_items{
  display: flex;
  flex-wrap: wrap;
  margin-top: 80px;
}
.sitemap_items .item{
  width: 25%;
  padding: 0 10px;
  position: relative;
}
.sitemap_items .item:nth-child(n+5){
  margin-top: 59px;
}
.sitemap_items .item .inner{
  padding: 14px 20px;
  border-top: 1px solid #d3d3d3;
  border-left: 1px solid #d3d3d3;
  border-right: 1px solid #d3d3d3;
  border-bottom: 5px solid #d1c0a5;
}
.sitemap_items .item a{
  font-weight: 500;
  letter-spacing: 0.045em;
  color: #000000;

}
.sitemap_items .item a:after{
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 23px;
  top: 48%;
  font-size: 14px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 0.0065em;
}



/* **********************************
*  お見積もり
* ********************************* */
.pg_quote{
  margin-bottom: 190px;
}
.pg_quote .section#sec1{
  margin-top: 80px;
}
.pg_quote .contact_form{
  margin-top: 48px;
}
.pg_quote .contact_form.sec3{
  margin-top:30px;
}
.pg_quote .contact_tab_wrap .tab_items .box1{
  height: 50px;
  margin-top: 30px;
  border-right: none;
}
.pg_quote .contact_tab_wrap .tab_items .box2{
  height: 80px;
  margin-top: 0;
   border-bottom: 5px solid #362e2b;
}
.quote_desc_wrap{
  margin-top: 50px;
  text-align: center;
}
.quote_desc_wrap .tt4{
  font-size: 18px;
  font-weight: 700;
  color: #323232;
}
.quote_desc_wrap .description{
  font-weight: normal;
  line-height: 1.875em;
  color: #323232;
  margin-top: 20px;
}
.quote_desc_wrap .description .text1{
  display: block;
  margin: 15px auto 0;
  text-align: center;
}
.quote_desc_wrap .description .text2{
  display: block;
  margin: 30px auto 0;
  text-align: center
}
.quote_title{
  font-size: 15px;
  font-weight: normal;
  letter-spacing: 0.160em;
  border-bottom: 1px solid #898989;
  padding: 10px 7px;
  margin-top: 13px;
}
.quote_title span{
  color: #b80000;
  padding-left: 10px;
}
.pg_quote .contact_form.sec2 td.file{
  align-items: center;
}
.pg_quote .contact_form.sec2 td.file input{
  width: 275px;
  font-size: 15px;
}
.pg_quote .contact_form.sec2 .file_block th,
.pg_quote .contact_form.sec2 .file_block td{
  padding: 5px;
}
.quote_notes {
  font-size: 15px;
  font-weight: normal;
  border-bottom: 1px solid #898989;
  letter-spacing: 0.1em;
  padding: 10px 7px;
}
.quote_notes span{
  color: #b80000;
  padding-left: 3px;
  letter-spacing: 0.15em;
}
.quote_txt{
  font-size: 15px;
  font-weight: normal;
  letter-spacing: 0.160em;
  line-height: 1.9333em;
  margin-top: 11px;
  padding-left: 9px;
}
/* **********************************
 *  お問い合わせ
 * ********************************* */
.contact_info .box2 .tel .slash{
  margin: 0 50px;
}
.contact_tab {
  margin-top: 90px;
}
.contact_tab_wrap .tab_items{
  display: flex;
}
.contact_tab_wrap .tab_items .box1,
.contact_tab_wrap .tab_items .box2{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 50%;
  border: 1px solid #362e2b;
}
.contact_tab_wrap .tab_items .box1 a,
.contact_tab_wrap .tab_items .box2 a{
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.160em;
  line-height: 1.33333em;
  padding-right: 19px;
}
.pg_contact .contact_tab_wrap .tab_items .box1{
  height: 80px;
  border-bottom: 5px solid #362e2b;
}
.pg_contact .contact_tab_wrap .tab_items .box2{
  height: 50px;
  border-left: none;
  margin-top: 30px;
}

.contact_title{
  display: block;
  font-size: 15px;
  font-weight: normal;
  border-bottom: 1px solid #898989;
  letter-spacing: 0.160em;
  padding-left: 5px;
  margin-top: 17px;
  padding-bottom: 9px;
}
.contact_notes{
  display: block;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.100em;
  margin-left: 20px;
  padding-top: 10px;
}
.contact_form.sec2 td.file{
  display: flex;
  border: none;
}
.contact_form.sec2 td.file input{
  border: none;
  line-height: 1;
}

.txt_c{
  margin: 200px auto;
  font-size: 20px;
}
.txt_c a{
  font-size: 18px;
}

