.lp {
  background: #eeeeee;
  padding: 60px 70px;
  }

.lp__inner {
    width: 860px;
    margin: 0 auto;
    display: flex;
    display: -webkit-flex;
    justify-content: flex-start;
    align-items: stretch;
  }
.lp__main {
  width: 100%;
  }

.lp__body {
  background: #fff;
  padding: 40px 40px 40px;
  }
.lp__body img{
    width: 80%;
    height: auto;
    max-width: 500px;
    margin: 10px;
  }
.lp__body .header_box{
  text-align: center;
}
  
.lp__body h1{
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  font-size: 30px;
  font-weight: bold;
  margin: 10px;
}
.lp__body h1:before, h1:after { 
  content:'';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

.lp__body h1:before {
  border-left: solid 3px #000000;
  border-top: solid 3px #000000;
  top:0;
  left: 0;
}

.lp__body h1:after {
  border-right: solid 3px #000000;
  border-bottom: solid 3px #000000;
  bottom:0;
  right: 0;
}

.h_line{
  position: relative;
  display: inline-block;
  font-size: 20px;
  padding: 0 33px;
  margin: 5px;
}
.h_line:before,.h_line:after{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 20px;
  height: 1px;
  background-color: #000000;
 }
 .h_line:before {
  left:0;
}
.h_line:after {
  right: 0;
}
.lp__body h2 {
  padding: 0.8rem 0;
  margin-bottom: 0.2rem;
  background-image: linear-gradient(301deg, #10F2BC 41.27%, #1E62FB 115.34%);
  background-repeat: no-repeat;
  background-size: 100% 2px;
  background-position: bottom;
  font-size: 23px;
  font-weight: bold;
}
.lp__body h2:after {
  position: absolute;
  content: " ";
  display: block;
  bottom: -3px;
  left: 0;
  width: 20%;
}
.lp__body h3 {
  padding: 0.25em 0.5em;
  background: transparent;
  font-weight: bold;
  font-size: 20px;
  border-left: solid 5px #000000;
  margin-top: 20px;
}
.text_policy{
  padding:7px 20px 0 20px;
}
.text_policy p{
  margin: 0 0 20px ;
}

.tree ul {
  list-style-type: none;
  margin: 0 0 0 15px;
  padding: 0;
  position: relative;
}
.tree ul li {
  position: relative;
  margin: 0;
  padding: 7px 20px;
}
.tree ul li:before {
  content: "";
  display: block;
  position: absolute;
  top: 18px;
  left: 0;
  width: 13px;
  height: 0;
  border-top: 1px solid #262626;
}
.tree ul li:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 100%;
  border-left: 1px solid #262626;
}
.tree ul li:last-child:after {
  height: 18px;
}

.tree > ul > li:before,
.tree > ul > li:after {
  /* 譛荳贋ｽ阪ｂ邱壹ｒ陦ｨ遉ｺ縺吶ｋ譎ゅ�繧ｳ繝｡繝ｳ繝亥喧 */
  border: none;
}
.lp__body table { 
  margin: 20px auto;
}
.tbl th {
  background: #ebebeb;
  border: solid 1px #d5d5d5;
  font-weight: bold;
  padding: 10px;
}
.tbl td {
  border: solid 1px #d5d5d5;
  padding: 10px;
}
.cl_1{
  width: 120px;
}

@media screen and (min-width: 960px) {
  .sp_only{
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .lp__body h1 {
    font-size: 20px;
}
  .lp {

      padding:0;
      min-width: 300px;
   }
  .lp__inner {
      width: 100%;
      margin: 0;
      flex-direction: column
  }
  .lp__main {
      max-width: 100%
  }
  .lp__body {
      box-sizing: border-box;
      width: 100%;
      margin: 0 auto
  }
  .lp__body h2 {
    font-size: 23px;
    font-weight: bold;
  }

  .lp__body h2:after {
    width: 15%;
  }
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl {
    width: 90%;
  }
  .tbl th,
  .tbl td {
    display: block;
  }
  .tbl_clr{
    visibility:hidden;
    height: 0px;
  }
  .text_policy{
    padding:5px 15px 0 15px;
  }
  .text_policy p{
    margin: 0 0 20px ;
  }
  .h_line{
    font-size: 12px;
  }
}