@charset "UTF-8";

/* -----------------------------
structure
----------------------------- */
#all_Wrap {
  background: #000;
  color: #fff;
}

figure {
  position: relative;
}
/*

.tab_content ul li a {
  background-image: url(../images/common_floor/gold_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #1e2c39;
}

.tab_content ul li a.here {
  color: #1e2c39;
  background: #fff;
}

.tab_content ul li a:hover {
  color: #1e2c39;
  background: #fff;
}

.tab_content ul li a.here:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0);
  background-image: url(../images/common_floor/gold_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
*/

/* common */
#content_Wrap figure {
  position: relative;
}

.copy {
  text-align: center;
  font-size: 26px;
  color: #f9d297;
  padding-bottom: 20px;
  line-height: 1.8;
  letter-spacing: 0.08em;
}
.copy:not(:first-of-type) {
  font-size: 22px;
  margin: 
}

.sub_copy {
  text-align: center;
  font-size: 16px;
  line-height: 1.8;
  padding-bottom: 60px;
  letter-spacing: 0.08em;
}

.in-box {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  text-align: left;
  box-sizing: border-box;
}

.con_box h4 {
  font-size: 20px;
  color: #f9d297;
  padding-bottom: 14px;
  letter-spacing: 0.09em;
  line-height: 1.4;
  font-feature-settings: "palt";
}
.con_box h4.not {
    padding-bottom: 0;
line-height: 1.6;
}

.con_box h4 span {
  font-size: 12px;
  color: #000;
  padding-left: 20px;
}

.con_box h4 span a {
  color: #053345;
}

.con_box h4 span.sub {
  font-size: 13px;
  color: #fff;
  margin-right: 0.5em;
  padding: 4px 4px 3px;
  background: #595757;
  vertical-align: text-bottom;
}

.con_box h5 {
  font-size: 18px;
  margin-bottom: 10px;
}

.column2 ul li .notes_list li {
  width: 100% !important;
  font-size: 12px;
  line-height: 1.5;
  margin-right: 0 !important;
}

@media only screen and (max-width: 767px) {
  .column2 ul li .notes_list li {
    margin-bottom: 0 !important;
  }
}


.con_box p {
  font-size: 14px !important;
  padding-bottom: 15px;
  letter-spacing: 0.06em;
  font-feature-settings: "palt";
  line-height: 1.8;
}

.con_box p.line-h {
  line-height: 1.2 !important;
  text-indent: 1em;
  padding-left: -1em;
}

.con_box p.ta_j {
  text-align: justify;
}

.sm_txt {
  font-size: 12px !important;
  padding-left: 0 !important;
}

.con_box p.sm_txt {
  font-size: 12px !important;
  padding-left: 0 !important;
}

.under_P {
  padding: 8px 0 0;
}

.cap_L_top {
  left: 5px;
  text-align: left;
  bottom: auto;
  top: 10px;
  font-size: 13px;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
}

.cap_L_top02 {
  left: 0px;
  text-align: left;
  bottom: auto;
  top: -13px;
  font-size: 13px;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
}

.column .in-box {
  z-index: 1;
}

.column{
  margin-bottom: 60px;
}

.column0 {
  margin-top: -2%;
  margin-bottom: 60px;
}

.column1 {
  margin-bottom: 60px;
}

.column1.cat_last {
  margin-bottom: 100px;
}

.column1 .notes_list {
  margin-top: 10px;
}

.column1 .notes_list li {
  width: 100%;
  font-size: 12px;
  line-height: 1.5;
}

.column1 .in-box.bg02 {
  background: #f7efe3;
  padding: 1.666666666666667%;
}

.column2 {
  margin-bottom: 60px;
}

.column2.moving {
  margin-bottom: 20px;
}

.column2.cat_last {
  margin-bottom: 100px;
}

.column2 ul.flex {
  justify-content: space-between;
}

.column2 ul li {
  width: calc((100% - 4%) / 2);
  max-width: 480px;
}

.column2 ul li p.Txt_p {
  font-size: 14px !important;
  letter-spacing: 0.05em;
  padding-top: 6px;
}

.column2 p.Txt_p {
  font-size: 14px !important;
  letter-spacing: 0.05em;
  padding-top: 6px;
}

.column2.moving ul li:nth-child(1) {
  width: 100%;
  max-width: 760px;
  margin-right: 3.90625%;
}

.column2.moving ul li:nth-child(2) {
  width: 100%;
  max-width: 228px;
}

.column3 {
  margin-bottom: 60px;
}

.column3 ul.flex {
  justify-content: space-between;
}

.column3 ul li {
  width: calc((100% - 4%) / 3);
  max-width: 324px;
}

.column3.restroom ul li {
  width: 100%;
  max-width: 324px;
}

.column3 ul li p.Txt_p {
  font-size: 13px !important;
  letter-spacing: 0.05em;
  padding-top: 6px;
}

.column3.restroom ul li p sup {
  vertical-align: super;
  font-size: 10px;
}

.column3 ul li h4 {
  letter-spacing: 0.05em;
  padding-top: 20px;
}

.column4 {
  margin-bottom: 60px;
}

.column4 ul.flex {
  justify-content: space-between;
}

.column4 ul li {
  width: calc((100% - 6.4%) / 4);
  max-width: 234px;
}

.column4 ul li p.Txt_p {
  font-size: 13px !important;
  letter-spacing: 0.05em;
  padding-top: 6px;
}

.column4 ul li h4 {
  letter-spacing: 0.05em;
  padding-top: 20px;
}

.layout04.camera ul.flex li .column3 {
  margin-bottom: 0;
}

.layout04.camera ul.flex li .column3 ul {
  justify-content: space-between;
}

.layout04.camera ul.flex li .column3 ul li {
  width: calc((100% - 4%) / 3);
  margin-right: 0;
}

/* 個別 */

.sec01 .flex .flex01 figure {
  max-width: 320px;
  /*    margin-bottom: 20px;*/
}

.sec01 .flex .flex01 h4:nth-of-type(2) {
  margin-top: 30px;
}

.sec01 .flex .flex01 h5 {
  font-size: 15px;
}

.column2 .flex .flex01 h5 {
  font-size: 15px;
  padding-top: 14px;
  margin-bottom: 6px;
}

.sec01 .flex .flex02 .sm_txt {
  margin-top: 10px;
  letter-spacing: 0rem;
}


.sec02 .flex li p {
  min-height: 6.2rem;
}

.flex.algn-spe {
  justify-content: flex-start;
  flex-direction: column;
}

.flex.algn-spe div {
  min-height: 183px;
}

.flex-style {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}


.icon.flex {
  justify-content: space-between;
}

.icon.flex figure {
  width: 70%;
  padding-left: 4%;
margin: 0 0 40px;
}
.security_img02{
margin: 0 auto 40px;
}

@media only screen and (max-width: 767px) {
  .sec02 .flex li p {
    min-height: auto;
  }

  .flex.algn-spe div {
    min-height: 0;
  }
}

/*
.sec03 ul.flex li:nth-child(1) {
  width: 35%;
  margin-right: 3%;
}

.sec03 ul.flex li:nth-child(2) {
  width: 62%;
  max-width: none;
}

@media only screen and (max-width: 767px) {
  .sec03 ul.flex li:nth-child(1) {
      width: 100%;
      margin-right: 0;
  }

  .sec03 ul.flex li:nth-child(2) {
      width: 100%;
      max-width: none;
  }
}
*/

.sec04 .txt_n {
  min-height: 3.2rem;
}

.sec04 .sm_txt {
  min-height: 4.3rem;
}

.sec04 .flex li:first-child .sm_txt {
  min-height: 8.2rem;
}

.sec05 .sm_txt {
  min-height: 3rem;
}

/*
.sec05 .flex li:first-of-type p {
  min-height: 7.1rem;
}
*/

@media only screen and (max-width: 768px) {
  .sec04 .txt_n {
    min-height: auto;
  }

  .sec04 .sm_txt {
    min-height: auto;
  }

  .sec04 .flex li:first-child .sm_txt {
    min-height: auto;
  }

  .sec05 .sm_txt {
    min-height: auto;
  }

  /*
  .sec05 .flex li:first-of-type p {
      min-height: 2.6rem;
  }
*/
}

.pt45 {
  padding-top: 45px;
}

.pt90 {
  padding-top: 90px;
}

.em8 {
  padding-top: 8em;
}

.mark {
  font-size: 10px;
  position: relative;
  top: -5px;
}


.layout04 ul.flex li:nth-child(1) {
  width: 66%;
  margin-right: 3%;
  max-width: none;
}


@media only screen and (min-width: 768px) {
  .layout04 ul.flex li:nth-child(1) p:not(.sm_txt) {
    min-height: 4.9rem;
  }

  .layout04.camera ul.flex li:nth-child(1) p:not(.sm_txt) {
    min-height: 0;
  }
}

.layout04 ul.flex li:nth-child(2) {
  width: 31%;
}

@media only screen and (max-width: 767px) {
  .layout04 ul.flex li:nth-child(1) {
    width: 100%;
    margin-right: 0;
    max-width: none;
  }

  .layout04 ul.flex li:nth-child(2) {
    width: 100%;
  }

  .layout04 ul.flex li:nth-child(2) figure {
    width: 75%;
    margin: 0 auto;
  }

  .layout04.camera ul.flex li .column3 ul li:nth-child(2) figure {
    width: 100%;
  }
}



.bouhan_sensor ul li.txt {
  width: 64%;
  max-width: 64%;
}

.bouhan_sensor ul li h4 {
  padding-top: 0;
}

.sec_btm h4 {
  margin-bottom: 20px;

}

.sec_btm .flex01 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.sec_btm .flex01_1 {
  margin-bottom: 20px;
}

.ttl_flex {
  display: flex;
  align-items: center;
  margin-bottom: 7px;
}

.sec_btm p {
  padding-bottom: 0;
}

.sec_btm .ttl_flex .ttl_flex01 p {
  padding-bottom: 0;
  color: #0b3957;
  font-size: 18px;
  margin-right: 10px;
  line-height: 1.5;

}

.sec_btm .ttl_flex .ttl_flex02 h5 {
  color: #0b3957;
  font-size: 18px;
  margin-bottom: 0;
  line-height: 1.3;
  padding-top: 0;
}

.sec_btm .ttl_flex .ttl_flex02 span {
  color: #000;
  font-size: 14px;
  margin-bottom: 10px;
}

.sec_btm .flex01_1 .subttl {
  color: #231815;
  background-color: #f9d297;
  padding: 8px 10px;
  margin-bottom: 10px;
  margin-top: 10px;
}

/* .sec_btm .flex01_2 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0px;
} */

/* .sec_btm .flex01_2 .flex01_2_txt {
  width: 66%;
} */

/* .sec_btm .flex01_2 figure {
  width: 29%;
} */



.sec_btm .flex01_2 {
  margin-bottom: 20px;
}

.sec_btm .flex01_3 {
  margin-bottom: 20px;
}

.sec_btm .flex01_4 {
  margin-bottom: 0;
}

.sec_btm .flex02_2 {
  padding-top: 20px;
}
.door_Img figure {
    width: 90%;
    margin: 0px auto 0px;
}

/*=========================================================================================================
tab
=========================================================================================================*/
@media screen and (max-width: 1024px) {}


/*=========================================================================================================
sp
=========================================================================================================*/
@media screen and (max-width: 767px) {
  #content_Wrap .cap_Txt_fontS {
    position: absolute;
    font-size: 9px;
    bottom: 10px;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    transform: rotate(0.028deg);
  }

  .cap_L_top {
    top: 5px;
    font-size: 12px;

  }

  .lower_ttl {
    padding-top: 30%;
    margin-bottom: 30px;
  }

  /* tab_Area */
  .tab_Area {
    width: 98%;
    justify-content: space-between;
    margin: 0 auto 30px;
  }

  .tab_Area:nth-of-type(2) {
    margin: 70px auto 0;
  }

  .tab_Area li {
    position: relative;
    font-size: 12px;
    font-feature-settings: "palt";
    width: 48%;
    max-width: 100%;
    margin: 0;
  }

  /*
  .tab_Area li:not(:last-child){
      margin: 0 0 25px;
  }
*/
  .tab_Area li:last-child {
    margin: 0;
  }

  .tab_Area li a {
    line-height: 1.2;
  }

  /*.tab_Area li:first-child a{
      padding: 21.5px 0;
  }*/
  .tab_Area li.here.f1::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 13px 0;
    border-color: #053345 transparent transparent;
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
  }

  .tab_Area li.here.s2::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 13px 0;
    border-color: #053345 transparent transparent;
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
  }

  .tab_Area.lower li.here::after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 13px 8px;
    border-color: transparent transparent #053345;
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
  }

  .tab_content ul li:nth-of-type(1) a {
    padding: 15px 0;
}


  .copy {
    font-size: 22px;
    padding-bottom: 30px;
    line-height: 1.5;
  }

  .sub_copy {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    font-size: 16px;
    line-height: 1.5;
    padding-bottom: 50px;
  }
  


  .con_box h4 {
    font-size: 16px;
    padding-bottom: 4px;
    line-height: 1.4;
  }

  .con_box h4.font_s17 {
    font-size: 16px;
  }

  .con_box h4.font_s14 {
    font-size: 15.6px;
  }

  .con_box h4 span {
    padding-left: 0px;
  }

  .con_box p {
    letter-spacing: 0;
    line-height: 1.6;
  }

  .con_box.camera {
    margin: 0 auto 40px;
  }
.column{
  margin-bottom: 40px;
}

  .column0 {
    margin-top: -2%;
    margin-bottom: 40px;
  }

  .column1 {
    margin-bottom: 40px;
  }

  .column1.cat_last {
    margin-bottom: 60px;
  }

  .column2 {
    margin-bottom: 40px;
  }

  .column2.cat_last {
    margin-bottom: 60px;
  }

  .column2.cat_last>ul>li:not(:last-child) {
    margin-bottom: 0;
  }

  .column2 ul.flex {
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .column2 ul li {
    width: 100%;
    max-width: none;
  }

  .column2 ul.line1 li {
    width: 49%;
    max-width: 490px;
  }

/*
  .column2 ul li:not(:last-child) {
    margin-bottom: 40px;
  }
*/

  .column2 ul.line1 li:not(:last-child) {
    margin-bottom: 0;
  }

  .column2.mg li:not(:last-child) {
    margin-bottom: 40px;
  }

  .column2.secblock ul li:not(:last-child) {
    margin-bottom: 10px;
  }

  .column2.secblock ul li.flex01 {
    margin-bottom: 20px;
  }

  .column2.secblock ul li.flex01.mg20 {
    margin-bottom: 20px !important;
  }

  .column2.secblock ul li.flex01.mg10 {
    margin-bottom: 10px;
  }

  .column2.secblock ul li#greening:not(:last-child) {
    margin-bottom: 20px;
  }

  .column2 ul li p.Txt_p {
    font-size: 14px !important;
    letter-spacing: 0.05em;
    padding-top: 6px;
  }

  .column2 p.Txt_p {
    font-size: 14px !important;
    letter-spacing: 0.05em;
    padding-top: 6px;
  }

  .column2.moving ul li:nth-child(1) {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }

  .column2.moving ul li:nth-child(2) {
    width: 100%;
    max-width: 100%;
  }

  .column3 {
    margin-bottom: 40px;
  }

  .column3 ul.flex {
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .column3 ul li {
    width: 100%;
    max-width: 100%;
  }

  .column3 ul.line1 li {
    margin: 14px auto;
  }

  .column3.restroom ul li {
    width: 100%;
    max-width: 100%;
  }

  .column3 ul.line1 li {
    width: calc((100% - 3%) / 3);
  }

  .column3 ul li:not(:last-child) {
    margin-bottom: 30px;
  }

  .column3 ul.line1 li:not(:last-child) {
    margin-bottom: 10px;
  }

  .column4 {
    margin-bottom: 40px;
  }

  .column4 ul.flex {
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .column4 ul.line1 {
    justify-content: space-between;
    /* align-items: flex-start; */
    flex-wrap: wrap;
  }

  .column4 ul li {
    width: 100%;
    max-width: 100%;
  }

  .column4 ul.line1 li {
    width: 49%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
  }

  .column4 ul.line1 li p {
    letter-spacing: 0.1em;
  }

  .column4 ul.line1 li figure {
    margin-top: auto;
  }

  .bouhan_sensor.column3 ul.line1 li {
    width: 46%;
    margin: 0;
  }

  .bouhan_sensor.column3 ul.line1 li.txt {
    width: 50%;
  }


  .sec_btm .ttl_flex .ttl_flex02 h5 {
    font-size: 16px;
  }

  .sec_btm .ttl_flex .ttl_flex02 h5 span {
    font-size: 12px;
  }

  .cap_L_top02 {
    position: absolute;
    left: 0px;
    text-align: left;
    bottom: auto;
    top: -13px;
    font-size: 10px;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
  }

  .column0 .in-box.bg01 {
    padding: 9px;
    border: 1px solid #00375f;
  }

  .column1 .in-box.bg02 {
    padding: 10px;
  }

  .sec_btm figure.sp:nth-of-type(1) {
  width: 60%;
    margin: 0 auto 20px;
  }
    .sec_btm figure.sp:nth-of-type(2) {
  width: 34%;
    margin: 0 auto 20px;
  }
  .sec_btm figure figcaption {
    font-size: 11px;
    line-height: 1.2;
}
}

@media only screen and (max-width: 499px) {
  .flex.algn-spe div {
    min-height: unset;
  }

  #content .cap_L_top {
    left: 0;
    text-align: left;
    bottom: auto;
    top: -10px;
    font-size: 10px;
    letter-spacing: 0;
    color: #000;
    font-feature-settings: "palt";
  }

  .sec_btm .flex01_1 {
    margin-bottom: 30px;
  }

  .sec_btm .flex01_2 {
    /* display: flex;
    justify-content: space-between; */
    margin-bottom: 30px;
  }

  .sec_btm .flex01_2 .flex01_2_txt {
    width: 60%;
  }

  .sec_btm .flex01_2 figure {
    width: 35%;
  }

  .sec_btm .flex01_3 {
    margin-bottom: 30px;
  }

  .sec_btm .flex02_1 {
    margin-bottom: 0;
  }

  .sec_btm .flex02_2 {
    padding-top: 0px;
  }

  .sp_mb0 {
    margin-bottom: 0 !important;
  }

  .sp_pb0 {
    padding-bottom: 0 !important;
  }

}

/* 上書き追加 */
.con_box h4 span.sub {
  font-size: 11px;
  line-height: 1.3;
}
.copy {
  margin-top: 100px;
}
.copy.not{
  margin-top: 0;
}

.white_box {
  background: #fff;
  padding: 30px 30px;
  box-sizing: border-box;
}

.tebra_face h4 {
  color: #00375f;
}

.tebra_face p {
  color: #231815;
  padding-top: 0.8em;
}

/* 顔認証セキュリティーシステム */
.security_img01 {
  margin-bottom: 30px;
}

/* 玄関扉 */
.door_box {
  margin-top: 60px;
}

.door_box>ul.flex {
  padding: 30px;
  color: #000;
  background-color: #fff;
  box-sizing: border-box;
}

.door_box.column2 .flex .flex01 h5 {
  color: #0b3957;
}

.door_box.column2 .flex .flex01 h5 span {
  color: #000;
}

.door_box.column2 .flex .subttl {
  color: #fff;
  background: #0b3957;
}

.door_box .flex01_4 {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
      margin-bottom: 20px;
}

.door_box .flex01_4>div {
  width: 100%;
/*  margin-right: 20px;*/
}

.door_box .flex01_4>figure {
  width: calc(100% - (60% + 20px));
}

.door_box .flex01_4>figure figcaption {
  font-size: 12px;
  line-height: 1.2;
}
.door_box .flex01_5 {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.door_box .flex01_5>div {
  width: 100%;
  margin-right: 20px;
}

.door_box .flex01_5>figure {
  width: calc(100% - (50% + 20px));
}

.door_box .flex01_5>figure figcaption {
  font-size: 12px;
  line-height: 1.2;
    width: fit-content;
    margin: 0 auto;
}

.door_box .flex02_2 {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.door_box .flex02_2>div {
  width: 54%;
  margin-right: 10px;
}

.door_box .flex02_2>figure {
/*  width: calc(100% - (60% + 20px));*/
width:40%;
margin: 0 auto 0;
}

.door_box .flex02_2>figure figcaption {
  font-size: 12px;
  line-height: 1.2;
  width: fit-content;
    margin: 0 auto;
}

/* 防犯カメラ・インターホン */
.sec_Box001 div.flex.column2>p {
  width: calc(100% - (35% + 20px));
}

.sec_Box001 div.flex.column2>figure {
  width: 35%;
  margin-left: 20px;
}

/* 24時間遠隔監視システム */
.sec_Box002 h4,
.sec_Box002 p {
  color: #000;
}

@media screen and (max-width: 767px) {
  .white_box {
    padding: 15px 10px;
  }

  .tebra_face {
    position: relative;
  }
  .security_img02 {
    margin: 0 auto 30px;
}
.icon.flex {
flex-wrap:wrap; 
}
.icon.flex figure {
    width: 80%;
    padding-left: unset;
    margin:20px auto 10px;
}
  .tebra_face h4 {
  position: relative;
    font-size: 15px;
    width: 64%;
  }
     .icon.flex .flex {
align-items: center;
  }
   .icon.flex .flex figure {
    width: 36%;
    margin: 0;
  }

  /* 顔認証セキュリティーシステム */
  .security_img01 {
    margin-bottom: 0;
  }

  .door_box>ul.flex {
    padding: 15px 10px;
  }

  .door_box .flex01_4 {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }

.door_box .flex01_4>div {
    width: 100%;
    margin: 0;
}

  .door_box .flex01_4>figure {
    width: calc(100% - (55% + 20px));
  }

  .door_box .flex02_2>div {
    width: 55%;
  }

  .door_box .flex02_2>figure {
    width: calc(100% - (55% + 20px));
  }

}

@media screen and (max-width: 450px) {
  .copy {
  margin-top: 60px;
}

}