/*clearfix*/
/*flex*/
/*flex*/
.pc {
  display: block;
}
@media screen and (max-width: 600px) {
  .pc {
    display: none;
  }
}

.pc_inline {
  display: inline-block;
}
@media screen and (max-width: 600px) {
  .pc_inline {
    display: none;
  }
}

.sp {
  display: none;
}
@media screen and (max-width: 600px) {
  .sp {
    display: block;
  }
}

.sp_inline {
  display: none;
}
@media screen and (max-width: 600px) {
  .sp_inline {
    display: inline-block;
  }
}

@media screen and (max-width: 600px) {
  .none_pad section:nth-child(n+2) {
    padding: 40px 6vw;
  }
}

.equipment_tab {
  position: relative;
}
.equipment_tab::before {
  z-index: 0;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  transform: translate(-50%);
  background-color: #d7d2cb;
  content: "";
}
.equipment_tab ul {
  position: relative;
  z-index: 1;
}
.equipment_tab ul li .tab_btn {
  padding: 13px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .equipment_tab ul li .tab_btn {
    padding: 20px 0px;
  }
}
.equipment_tab ul li .tab_btn.soon {
  align-items: center;
}
.equipment_tab ul li .tab_btn.soon span {
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .equipment_tab ul li:nth-child(n+3) .tab_btn {
    padding: 13px 0px;
  }
}

.tpl-tab-content {
  background: #e5e1dc;
}

#equipment .main_img img {
  height: 100%;
}
#equipment .bathroom_imgbox01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#equipment .bathroom_imgbox01 .img01 {
  width: 56.08%;
}
#equipment .bathroom_imgbox01 .img02 {
  width: 42.37%;
}

#zeh .zeh_tit01 {
  margin-bottom: 0px;
}

#structure .structure_tit02 {
  background: #E5E1DC;
  color: #3f2021;
}
#structure .tpl-card__copy {
  padding-top: 0;
}
#structure .structure_flex {
  gap: 0;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex {
    gap: 3vw;
  }
}
#structure .structure_flex .txt_box01 {
  width: 39.55%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .txt_box01 {
    width: 100%;
  }
}
#structure .structure_flex .img_box01 {
  width: 56.17%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box01 {
    width: 100%;
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
  }
}
#structure .structure_flex .txt_box02 {
  width: 37.97%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .txt_box02 {
    width: 100%;
  }
}
#structure .structure_flex .img_box02 {
  width: 57.97%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box02 {
    width: 100%;
    max-width: 258px;
    margin-left: auto;
    margin-right: auto;
  }
}
#structure .structure_flex .txt_box03 {
  width: 48.47%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .txt_box03 {
    width: 100%;
  }
}
#structure .structure_flex .img_box03 {
  width: 47.39%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box03 {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box03 .img03 {
    width: 100%;
    max-width: 218px;
    margin-left: auto;
    margin-right: auto;
  }
}
#structure .structure_flex .txt_box04 {
  width: 54.83%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .txt_box04 {
    width: 100%;
  }
}
#structure .structure_flex .img_box04 {
  width: 39.77%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box04 {
    width: 100%;
    max-width: 177px;
    margin-left: auto;
    margin-right: auto;
  }
}
#structure .structure_flex .txt_box05 {
  width: 48.53%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .txt_box05 {
    width: 100%;
  }
}
#structure .structure_flex .img_box05 {
  width: 47.19%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box05 {
    width: 100%;
    max-width: 210px;
    margin-left: auto;
    margin-right: auto;
  }
}
#structure .structure_flex .img_box06 {
  width: 20%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box06 {
    width: 100%;
    max-width: 184px;
  }
}
#structure .structure_flex .img_box07 {
  width: 76.73%;
}
@media screen and (max-width: 768px) {
  #structure .structure_flex .img_box07 {
    width: 100%;
  }
}
#structure .cap02 {
  left: 50%;
  width: 50%;
}
#structure .img08 {
  width: 63.14%;
  margin-left: auto;
  margin-right: auto;
}

#security .security_tit01 + .tpl-card__copy {
  padding-top: 0;
}
#security .security_flex {
  gap: 0;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #security .security_flex {
    gap: 3vw;
  }
}
#security .security_flex .txt_box01 {
  width: 46.29%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .txt_box01 {
    width: 100%;
  }
}
#security .security_flex .txt_box01 .tpl-card__copy {
  padding-top: 0;
}
#security .security_flex .img_box01 {
  width: 52.8%;
  align-self: flex-start;
}
@media screen and (max-width: 768px) {
  #security .security_flex .img_box01 {
    width: 100%;
  }
}
#security .security_flex .txt_box02 {
  width: 68.08%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .txt_box02 {
    width: 100%;
  }
}
#security .security_flex .img_box02 {
  width: 27.64%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .img_box02 {
    width: 100%;
    max-width: 123px;
    margin-left: auto;
    margin-right: auto;
  }
}
#security .security_flex .txt_box03 {
  width: 29.45%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .txt_box03 {
    width: 100%;
  }
}
#security .security_flex .txt_box03 .tpl-card__copy {
  padding-top: 0;
}
#security .security_flex .img_box03 {
  width: 31.08%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .img_box03 {
    width: 100%;
    max-width: 286px;
    margin-left: auto;
    margin-right: auto;
  }
}
#security .security_flex .img_box04 {
  width: 30.76%;
}
@media screen and (max-width: 768px) {
  #security .security_flex .img_box04 {
    width: 100%;
    max-width: 283px;
    margin-left: auto;
    margin-right: auto;
  }
}
#security .security_flex .img_box04 .inner {
  border: solid 2px #E5E1DC;
}
#security .security_flex .img_box04 .tit01 {
  background: #E5E1DC;
  text-align: center;
  padding: 4px 0px;
}
#security .security_flex .img_box04 .img10 {
  padding: 15px 20px;
}
#security .img_flex {
  width: 100%;
  max-width: 387px;
  margin-left: auto;
  margin-right: auto;
  justify-content: space-between;
  gap: 0;
}
@media screen and (max-width: 768px) {
  #security .img_flex {
    flex-direction: row;
  }
}
#security .img_flex .img_box01 {
  width: 50.12%;
  text-align: center;
}
#security .img_flex .img_box02 {
  width: 41.34%;
  text-align: center;
}
#security .img_flex .security_tit02 {
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 3em;
}
#security .security_article {
  gap: 10px;
}
@media screen and (max-width: 768px) {
  #security .security_article {
    row-gap: 6vw;
  }
}
@media screen and (max-width: 600px) {
  #security .security_article .body01 .txt01_pc {
    display: none;
  }
}
#security .security_article .body01 .txt01_sp {
  display: none;
}
@media screen and (max-width: 600px) {
  #security .security_article .body01 .txt01_sp {
    display: block;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
}
#security .security_article .aside01 {
  width: 14.13%;
}
@media screen and (max-width: 768px) {
  #security .security_article .aside01 {
    width: 100%;
    max-width: 130px;
    margin-left: auto;
    margin-right: auto;
  }
}
#security .security_article .aside01 .img04 {
  width: 100%;
  max-width: 90px;
  margin-left: auto;
  margin-right: auto;
}

#after .disaster_sec01 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  position: relative;
}
@media screen and (max-width: 768px) {
  #after .disaster_sec01 {
    flex-direction: column;
    gap: 6vw;
  }
}
#after .disaster_sec01 .txt_box {
  flex: 1;
}
#after .disaster_sec01 .img_box {
  width: 38.04%;
}
@media screen and (max-width: 768px) {
  #after .disaster_sec01 .img_box {
    width: 100%;
  }
}
#after .disaster_sec01 .logo01 {
  display: inline-block;
  width: 5.58em;
  vertical-align: 0.2em;
}
#after .disaster_article01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #after .disaster_article01 {
    display: block;
  }
}
#after .disaster_article01 .disaster_tit01 {
  width: 100%;
}
#after .disaster_article01 .box01 {
  width: 42.39%;
}
@media screen and (max-width: 768px) {
  #after .disaster_article01 .box01 {
    width: 100%;
    margin-bottom: 6vw;
  }
}
#after .disaster_article01 .box02 {
  width: 53.8%;
}
@media screen and (max-width: 768px) {
  #after .disaster_article01 .box02 {
    width: 100%;
  }
}
#after .disaster_article01 .box01_article {
  gap: 0;
}
#after .disaster_article01 .box01_article .box01_aside {
  width: 38.97%;
}
@media screen and (max-width: 768px) {
  #after .disaster_article01 .box01_article .box01_aside {
    width: 100%;
    max-width: 152px;
    margin-left: auto;
    margin-right: 0;
  }
}
#after .disaster_article01 .box01_card .img01 {
  width: 100%;
  max-width: 148px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  #after .disaster_article01 .box01_card .img01 {
    margin-bottom: 10px;
  }
}
#after .disaster_article01 .box01_card .tit01 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  min-height: 4.5em;
}
#after .disaster_flex01 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
@media screen and (max-width: 768px) {
  #after .disaster_flex01 {
    flex-direction: column;
    gap: 6vw;
  }
}
#after .disaster_flex01 .tpl-card__copy {
  padding-top: 0;
}
#after .disaster_article02 {
  flex: 1.54;
}
@media screen and (max-width: 768px) {
  #after .disaster_article02 {
    flex: auto;
  }
}
#after .disaster_article02 .stack01 {
  gap: 15px;
}
@media screen and (max-width: 768px) {
  #after .disaster_article02 .stack01 {
    gap: 10px;
  }
}
#after .disaster_article02 .stack01 .tpl-card__body {
  padding-top: 5px;
}
#after .disaster_article03 {
  flex: 1;
}
#after .disaster_article03 .img13 {
  height: auto;
  margin-top: 20px;
  width: 100%;
  max-width: 304px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  #after .disaster_article03 .img13 {
    margin-top: 10px;
  }
}
#after .disaster_flex02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#after .disaster_flex02 .copy01 {
  width: 64.81%;
}
#after .disaster_flex02 .img06 {
  width: 31.48%;
}
#after .service_sec02 .service_tit01 {
  margin-bottom: 0px;
}
#after .service_sec02 .flex01 {
  gap: 15px;
}
@media screen and (max-width: 768px) {
  #after .service_sec02 .flex01 {
    gap: 3vw;
    flex-direction: row;
  }
}
#after .service_sec02 .flex01 .tpl-figure {
  height: auto;
}
#after .service_sec02 .list01 {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#after .service_sec02 .list01 li {
  flex: 1;
  border-radius: 5px;
  font-size: 15px;
  text-align: center;
  font-weight: 700;
  background: #d7d2cb;
  padding: 15px 10px;
}
@media screen and (max-width: 768px) {
  #after .service_sec02 .list01 li {
    font-size: 14px;
  }
}

.mb40 {
  margin-bottom: 40px;
}

@media screen and (max-width: 600px) {
  .js-scrollable .tpl-figure {
    width: 200%;
  }
}

.tpl-footer__body .tpl-footer__notes {
  display: none;
}
.tpl-footer__body .tpl-footer__notes.on {
  display: block;
}