#content {
  max-width: 1120px;
  margin: 0 auto 40px;
  padding: 40px;
  background-color: #fff;
  box-sizing: border-box;
}
#content table.compartments {
  width: 100%;
  border: 1px solid #ccc;
  border-collapse: separate;
  border-spacing: 0;
}
@media (max-width: 768px) {
  #content table.compartments {
    border-right: none;
    border-left: none;
  }
  #content table.compartments tr,
  #content table.compartments th,
  #content table.compartments td {
    white-space: nowrap;
    border-right: none;
    border-left: none;
    font-size: 1.0rem;
  }
  #content table.compartments .num {
    font-size: 1.6rem !important;
  }
  #content table.compartments td {
    padding: 2px;
  }
}
#content table.conditions {
  display: table;
  width: 100%;
  border: none;
}
@media (max-width: 768px) {
  #content table.conditions {
    display: none;
  }
}
#content table.conditions td {
  padding: 15px;
}
#content table.conditions td.condition {
  width: 400px;
  box-sizing: border-box;
  text-align: left;
}
#content table th,
#content table td {
  text-align: center;
  padding: 4px;
  border-top: 1px solid #ddd;
  vertical-align: middle;
}
#content table th {
  color: #555;
  padding: 5px 10px;
  background: #f5f5f5;
}
#content table td.btns {
  width: 100px;
  white-space: nowrap;
  vertical-align: middle;
  text-align: center;
}
#content table td .btn_detail {
  display: inline-block;
  width: 100px;
  height: 40px;
  line-height: 40px;
  border-radius: 4px;
  background: url(../images/common/icon_search.png) no-repeat 10px center #555555;
  color: #fff !important;
  font-size: 1.3rem;
  text-decoration: none;
  padding-left: 20px;
}
#content table td .btn_delete {
  display: inline-block;
  width: 100px;
  height: 40px;
  line-height: 40px;
  border-radius: 4px;
  background: url(../images/common/icon_delete.png) no-repeat 10px center #eeeeee;
  color: #555 !important;
  font-size: 1.3rem;
  text-decoration: none;
  padding-left: 20px;
}
#content table td.pc-block {
  display: table-cell;
}
#content table tr:first-child th,
#content table tr:first-child td {
  border-top: none;
}
#content table .red {
  color: #d0111b;
}
#content table .red .num {
  font-weight: bold;
  font-size: 2rem;
}
#preserve {
  margin-bottom: 3px;
  padding-bottom: 35px;
  font-size: 13px;
}
#preserve .title {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1;
}
#preserve .title span {
  font-size: 2.4rem;
}
#preserve .notes {
  text-indent: -1em;
  margin-left: 1em;
}
#preserve .red {
  color: #d0111b !important;
}
#preserve .number {
  background: #eee;
  margin: 20px 0;
  padding: 15px 20px;
  font-size: 1.6rem;
  line-height: 1;
}
#preserve .number span {
  font-size: 2.4rem;
  color: #d0111b;
  font-weight: bold;
  margin: 0 .2em;
  vertical-align: -2px;
}
#preserve .btnwrap {
  display: block;
  margin-bottom: 0;
  text-align: center;
  overflow: hidden;
}
#preserve .btnwrap a {
  box-sizing: border-box;
  line-height: 1;
  float: left;
  margin-right: 10px;
}
#preserve .btnwrap a.select {
  height: 50px;
  box-sizing: border-box;
  font-size: 1.6rem;
  text-align: center;
  line-height: 50px;
  width: 170px;
  background: #555;
}
#preserve .btnwrap a.select::before {
  background-image: url(../images/common/icon_check.png);
}
#preserve .btnwrap a.select::after {
  display: none;
}
#preserve .btnwrap a.delete {
  height: 50px;
  box-sizing: border-box;
  font-size: 1.6rem;
  text-align: center;
  line-height: 50px;
  width: 200px;
  background: #eee;
  color: #555;
}
#preserve .btnwrap a.delete::before {
  background-image: url(../images/common/icon_delete.png);
}
#preserve .btnwrap a.delete::after {
  display: none;
}
#preserve .btnwrap a:last-child {
  margin-bottom: 0;
  margin-right: 0;
}
#preserve .contact_check {
  margin: 10px 0;
  overflow: hidden;
}
#preserve .contact_check ul {
  float: left;
  padding: .6em 0;
}
#preserve .contact_check select {
  float: right;
  appearance: none;
  border-radius: 0;
  border: 1px solid #e1e1e1;
  background: #fff;
  padding: .6em;
  font-size: 1.3rem;
  vertical-align: middle;
  background: url(../images/common/icon_arrow5.gif) right 4px top 50% no-repeat;
  width: 10em;
}
@media all and (-ms-high-contrast: none){
  #preserve .contact_check select {
  background: none;
  }
}

#preserve .contact_tbl {
  border: #ccc 3px solid;
  display: flex;
  margin-bottom: 20px;
  justify-content: stretch;
}
#preserve .contact_tbl .property_chk {
  display: inline-flex;
  background: #ccc;
  position: relative;
  width: 4em;
}
#preserve .contact_tbl .property_chk div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#preserve .contact_tbl .property_chk label,
#preserve .contact_tbl .property_chk input {
  display: block;
}
#preserve .contact_tbl .property_chk input {
  width: 20px;
}
#preserve .contact_tbl .property_chk + div {
  display: inline-flex;
  flex-direction: column;
  flex-grow: 1;
}
#preserve .contact_tbl .property_chk + div .property_name {
  display: block;
  width: 100%;
  overflow: hidden;
  background: #f5f5f5;
  padding: 10px;
  box-sizing: border-box;
}
#preserve .contact_tbl .property_chk + div .property_name h2 {
  float: left;
  font-size: 1.6rem;
  font-weight: bold;
}
#preserve .contact_tbl .property_chk + div .property_name p {
  float: right;
}
#preserve .contact_tbl .property_chk + div .property_detail {
  box-sizing: border-box;
  display: table;
  width: 100%;
  text-align: center;
}
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview {
  font-size: 1.3rem;
  line-height: 1.32;
  margin-bottom: 10px;
}
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview th,
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview td {
  padding: 1px 0;
}
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview td {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-top: none;
}
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview .lbl {
  display: inline-block;
  padding: 3px 10px;
  margin-right: 10px;
  background: #eee;
  border-radius: 2px;
  font-size: 1.1rem;
  width: 4em;
}
#preserve .contact_tbl .property_chk + div .property_detail table.shortoverview .txt {
  margin-right: 10px;
}
#contact {
  flex-basis: 69.64285714%;
  margin-bottom: 40px;
  padding: 30px 40px;
  border: 3px solid #D0111B;
  box-sizing: border-box;
  background-color: #fff;
}
#contact section {
  display: flex;
  justify-content: space-between;
  margin-top: 35px;
  padding-top: 35px;
  border-top: 2px solid #D0111B;
}
#contact section:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
#contact section .texts {
  flex-basis: 56.48414986%;
}
#contact section .texts .title {
  font-size: 2.2rem;
  font-weight: bold;
}
#contact section .texts p {
  margin-top: 15px;
}
#contact section .texts p:first-child {
  margin-top: 0;
}
#contact section .images {
  flex-basis: 37.46397695%;
  text-align: center;
}
#contact .web .title {
  padding-left: 45px;
  background-image: url(../images/top/icon_title6.gif);
  background-position: 0 0;
  background-repeat: no-repeat;
}
#contact .web .info {
  margin-bottom: 10px;
  font-size: 1.2rem;
  text-align: center;
}
#contact .web .info .tel {
  color: #555;
  font-size: 2.6rem;
  font-weight: bold;
}
#contact .web .info .tel span {
  display: inline-block;
  padding-left: 45px;
  background-image: url(../images/common/icon_tel2.gif);
  background-position: 0 6px;
  background-repeat: no-repeat;
}
#contact .office .title {
  padding-left: 45px;
  background-image: url(../images/top/icon_title7.gif);
  background-position: 0 3px;
  background-repeat: no-repeat;
}
#contact .office .note {
  /*padding-left: 1em;
  color: #D0111B;
  text-indent: -1em;*/
	padding-left: 1em;
	margin-top:15px;
  color: #D0111B;
  text-indent: -1em;
	font-size: 85%;
	text-align: left;
}
@media (max-width: 768px) {
  #content {
    padding: 20px 10px;
  }
  #content table td .btn_detail {
    width: 50px;
    height: 35px;
    background: url(../images/common/icon_search.png) no-repeat center 10px #555555;
    font-size: 1.1rem;
    padding-left: 0;
    padding-top: 20px;
    text-align: center;
  }
  #content table td .btn_delete {
    width: 50px;
    height: 35px;
    background: url(../images/common/icon_delete.png) no-repeat center 10px #eeeeee;
    font-size: 1.1rem;
    padding-left: 0;
    padding-top: 20px;
    text-align: center;
  }
  #content table td.pc-block {
    display: none;
  }
  #content table.conditions-smp {
    display: table;
    width: 100%;
  }
  #content table.conditions-smp th {
    text-align: center;
    white-space: nowrap;
    padding: 10px;
    border-top: 1px solid #ddd;
  }
  #content table.conditions-smp tr:first-child th {
    border-top: none;
  }
  #content table.conditions-smp td.condition {
    width: 290px;
    padding: 10px;
    box-sizing: border-box;
    text-align: left;
    white-space: normal;
  }
  #preserve .title {
    font-size: 2.2rem;
    line-height: 1.3;
  }
  #preserve .title span {
    display: block;
    font-size: 1.6rem;
  }
  #preserve .number {
    margin: 15px 0;
    padding: 15px;
    font-size: 1.3rem;
  }
  #preserve .number span {
    font-size: 2rem;
    color: #d0111b;
    font-weight: bold;
  }
  #preserve .btnwrap {
    position: relative;
    display: block;
    margin-bottom: 0;
    overflow: hidden;
    text-align: center;
  }
  #preserve .btnwrap a {
    box-sizing: border-box;
    line-height: 1;
    float: left;
  }
  #preserve .btnwrap a.select {
    height: 40px;
    box-sizing: border-box;
    font-size: 1.3rem;
    text-align: center;
    line-height: 40px;
    width: calc(45%);
    margin-right: 10px;
    padding-left: 20px;
  }
  #preserve .btnwrap a.select::before {
    background-position: 10px center;
    background-size: 40%;
    width: 30px;
  }
  #preserve .btnwrap a.select::after {
    display: none;
  }
  #preserve .btnwrap a.mail {
    height: 40px;
    box-sizing: border-box;
    font-size: 1.3rem;
    line-height: 40px;
    margin-bottom: 0;
    margin-top: 10px;
    width: 100%;
  }
  #preserve .btnwrap a.mail span > span {
    font-size: 1.2rem;
  }
  #preserve .btnwrap a.mail::before {
    background-position: 10px center;
    width: 30px;
  }
  #preserve .btnwrap a.mail:after {
    border-width: 20px 0 20px 8px;
    left: 30px;
  }
  #preserve .btnwrap a.delete {
    position: absolute;
    top: 0;
    right: 0;
    height: 40px;
    box-sizing: border-box;
    font-size: 1.2rem;
    text-align: center;
    line-height: 40px;
    width: calc(45%);
    margin-right: 0;
    padding-left: 20px;
  }
  #preserve .btnwrap a.delete::before {
    background-position: 10px center;
    background-size: 40%;
    width: 30px;
  }
  #preserve .btnwrap a.delete::after {
    display: none;
  }
  #preserve select {
    width: 100% !important;
  }
  #preserve .contact_tbl {
    position: relative;
  }
  #preserve .contact_tbl .property_chk {
    display: block;
    width: 5em;
  }
  #preserve .contact_tbl .property_chk div {
    text-align: center;
  }
  #preserve .contact_tbl .property_chk input {
    width: 20px;
    display: inline-block;
  }
  #preserve .contact_tbl .property_chk + div {
    display: block;
  }
  #preserve .contact_tbl .property_chk + div .property_name {
    display: block;
    width: 100%;
    height: 50px;
    overflow: hidden;
    background: #f5f5f5;
    padding: 10px 10px 10px 60px;
    box-sizing: border-box;
  }
  #preserve .contact_tbl .property_chk + div .property_name h2 {
    font-size: 1.4rem;
    line-height: 30px;
  }
  #preserve .contact_tbl .property_chk + div .property_name p {
    float: right;
    line-height: 30px;
  }
  #preserve .contact_tbl .property_chk + div .property_detail {
    display: block;
    height: auto;
    overflow: hidden;
    padding: 0;
  }
  #preserve .contact_tbl .property_chk + div .property_detail div:nth-child(1) {
    display: block;
    box-sizing: border-box;
  }
  #preserve .contact_tbl .property_chk + div .property_detail div:nth-child(2) {
    display: block;
    height: auto;
    box-sizing: border-box;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview {
    display: block;
    font-size: 1.3rem;
    line-height: 1.32;
    margin: 10px;
    overflow: hidden;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview tbody,
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview tr {
    display: block;
    width: 100%;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview th,
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview td {
    padding: 1px 0;
    text-align: left;
    width: 100%;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview td {
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview .lbl {
    display: inline-block;
    padding: 3px 0;
    margin-right: 10px;
    font-size: 1.1rem;
    width: 6em;
    white-space: nowrap;
    text-align: center;
  }
  #preserve .contact_tbl .property_chk + div .property_detail table.shortoverview .txt {
    margin-right: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: calc(50%);
  }
  #contact {
    margin-bottom: 20px;
    padding: 20px;
  }
  #contact section {
    display: block;
    margin-top: 20px;
    padding-top: 20px;
  }
  #contact section .texts .title {
    font-size: 1.8rem;
  }
  #contact section .texts p {
    font-size: 1.3rem;
  }
  #contact section .images {
    margin-top: 15px;
  }
  #contact .web .title {
    padding: 2px 0 2px 45px;
    background-position: 0 0;
  }
  #contact .web .info {
    font-size: 1.2rem;
  }
  #contact .web .info .tel {
    font-size: 2.6rem;
  }
  #contact .web .info .tel span {
    background-position: 0 6px;
  }
  #contact .office .title {
    padding-left: 45px;
    background-position: 0 1px;
  }
}
