@charset "UTF-8";
.description, .subpoints {
  font-weight: 400;
  font-size: 1em;
  color: #333;
  line-height: 1.5; }
  .description a, .description a:visited, .subpoints a, .subpoints a:visited {
    color: #2684e2;
    text-decoration: underline; }

.point {
  font-size: 1em;
  margin-top: 20px; }
  .point .titlebox {
    display: flex;
    align-items: center;
    margin: 80px 0 20px; }
    .point .titlebox .g-box {
      margin-right: .5em;
      padding: 6px 8px; }
    .point .titlebox .subtitle {
      font-weight: 700;
      font-size: 18px;
      line-height: 1.2; }
  .point .description, .point .subpoints li {
    line-height: 1.5; }
  .point:first-child {
    margin-top: 24px !important; }

@media screen and (min-width: 64em) {
  .point {
    margin-bottom: 0; } }
.problems ul.column_pointlist, .solution ul.column_pointlist {
  font-size: 1em;
  margin: 30px 0 40px; }
  .problems ul.column_pointlist li, .solution ul.column_pointlist li {
    text-indent: 0;
    padding-left: 0; }
    .problems ul.column_pointlist li .subtitle, .solution ul.column_pointlist li .subtitle {
      display: inline-block;
      font-weight: 700; }
    .problems ul.column_pointlist li .description, .solution ul.column_pointlist li .description {
      display: block;
      margin-top: 8px;
      margin-left: 2.5em; }
.problems > p.title, .solution > p.title {
  font-size: 1.125em;
  /*18px*/
  position: relative;
  margin: 0 0 20px 0;
  padding: 10px 72px; }
  .problems > p.title:before, .solution > p.title:before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(-50%, 0%) scale(0.75);
    top: -32px;
    left: 32px; }

ul.subpoints {
  margin-left: 2.5em; }
  ul.subpoints > li {
    list-style: disc;
    /*list-style-position: inside;
    padding-left: 1.5em;
    text-indent: -1.5em;*/
    position: relative; }
    ul.subpoints > li .subtitle {
      font-weight: bold; }
    ul.subpoints > li > span {
      font-weight: bold; }

@media screen and (min-width: 48em) {
  ul.subpoints {
    margin-left: 3.75em; } }
.problems > p.title {
  background: #ccc;
  color: #333; }
  .problems > p.title:before {
    content: url(/web/jp/case/images/emp/icon-trouble.svg); }
.problems .column_pointlist li .g-box {
  background: #ccc; }

.solution > p.title {
  background-color: #71B024;
  color: white; }
  .solution > p.title:before {
    content: url(/web/jp/case/images/emp/icon-solution.svg);
    left: 30px; }
.solution .column_pointlist li .g-box {
  background-color: #71B024; }

@media screen and (min-width: 48em) {
  .problems > p.title:before, .solution > p.title:before {
    transform: translate(-50%, 0%) scale(1) !important;
    top: -24px !important;
    left: 40px !important; } }
@media screen and (min-width: 64em) {
  .read_tx {
    margin-bottom: 62px; }

  .problems > p.title, .solution > p.title {
    padding: 10px 86px; }
    .problems > p.title:before, .solution > p.title:before {
      left: 28px; } }
@media screen and (min-width: 75em) {
  .problems > p.title, .solution > p.title {
    padding: 10px 80px; }
    .problems > p.title:before, .solution > p.title:before {
      left: 36px; }

  .problems > p.title:before {
    left: 30px; } }
.whattodo {
  margin-bottom: 40px; }
  .whattodo > .title {
    color: #71B024;
    font-size: 20px;
    font-weight: bold;
    border-bottom: 3px solid #71B024;
    line-height: 1.5em;
    margin-bottom: 24px; }
  .whattodo .point-whattodo .point {
    display: flex;
    flex-direction: column;
    gap: 16px;
    justify-content: flex-start;
    margin-top: 0;
    margin-bottom: 20px; }
    .whattodo .point-whattodo .point .titlebox {
      margin: 0 0 8px 0; }
    .whattodo .point-whattodo .point .subimg {
      text-align: center; }
      .whattodo .point-whattodo .point .subimg > img {
        width: 70%; }

@media screen and (min-width: 48em) {
  .whattodo .point-whattodo .point {
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 24px; }
  .whattodo .point-whattodo .subimg {
    text-align: initial; }
    .whattodo .point-whattodo .subimg > img {
      width: auto !important; } }
.results, .pointofsuccess {
  border: 2px solid #71B024;
  border-radius: 32px;
  padding: 40px 24px 32px;
  margin-bottom: 58px;
  position: relative; }
  .results .column_pointlist, .pointofsuccess .column_pointlist {
    margin-top: -24px; }
  .results p.title, .pointofsuccess p.title {
    background-color: #71B024;
    margin-top: -60px;
    display: inline-block;
    padding: 8px 16px;
    color: white;
    font-weight: 700;
    position: absolute;
    font-size: 20px;
    line-height: 1.25; }
  .results .column_pointlist li.point > .titlebox, .pointofsuccess .column_pointlist li.point > .titlebox {
    margin: 0px; }
  .results .column_pointlist li.point:fist-fhild, .pointofsuccess .column_pointlist li.point:fist-fhild {
    margin-top: 20px; }
  .results .column_pointlist li.point > ul.subpoints, .pointofsuccess .column_pointlist li.point > ul.subpoints {
    /*margin-left: 0.75em;
    > li{
        list-style: disc;
        list-style-position: inside;
        padding-left: 1.5em;
        text-indent: -1.5em;
        position:relative;
        .subtitle{
            font-weight:bold;
        }
        > span{
            font-weight:bold;
        }*/
    margin-top: 8px; }
    .results .column_pointlist li.point > ul.subpoints ol, .pointofsuccess .column_pointlist li.point > ul.subpoints ol {
      counter-reset: number;
      /*数字をリセット*/
      list-style-type: none !important;
      /*数字を一旦消す*/
      padding: .5em .5em .5em 0; }
      .results .column_pointlist li.point > ul.subpoints ol li, .pointofsuccess .column_pointlist li.point > ul.subpoints ol li {
        display: flex;
        flex-direction: row;
        gap: 5px;
        line-height: 1.25em;
        padding: 0;
        margin: 0 0 .5em 0; }
        .results .column_pointlist li.point > ul.subpoints ol li:before, .pointofsuccess .column_pointlist li.point > ul.subpoints ol li:before {
          display: block;
          counter-increment: number;
          content: counter(number);
          background-color: #FFFDE5;
          border: solid 1px #333;
          font-weight: 400;
          font-size: 15px;
          border-radius: 50%;
          width: auto;
          height: 17px;
          line-height: 19px;
          text-align: center;
          color: #333;
          text-indent: 0;
          padding: 0 .25em; }
        .results .column_pointlist li.point > ul.subpoints ol li span, .pointofsuccess .column_pointlist li.point > ul.subpoints ol li span {
          margin: 0;
          padding: 0;
          text-indent: 0; }

@media screen and (min-width: 48em) {
  .results .column_pointlist li.point > ul.subpoints,
  .pointofsuccess .column_pointlist li.point > ul.subpoints,
  ul.subpoints {
    margin-left: 2.5em; }

  .results, .pointofsuccess {
    padding: 40px 32px 32px; } }
.pointofsuccess {
  background-color: #FFFDE5; }
  .pointofsuccess .column_pointlist li.point > ol.subpoints > li > span {
    position: absolute;
    left: 2.3em; }

@media screen and (min-width: 64em) {
  .cv.singlebtn {
    float: none;
    width: 100%;
    margin-right: 0; } }
