.mailsecurity_contents{
    color: #313234;
    -webkit-text-size-adjust: none;
    position: relative;
    font-size: 1rem;
    line-height: 1.65;
}

.mailsecurity_contents img {
/*  max-width: 100%;*/
  vertical-align: top; }

  .f30{
      margin: 10px 0 0 0;
      font-size: 30px;
      line-height: 1.5;
      font-feature-settings: "palt";
      }

  .f40{
          margin: 10px 0 0 0;
          font-size: 40px;
          line-height: 1.5;
          }
  .kaikaku{
    line-height: 2.5;
    font-size: 20px;
  }

  .fSml{
  font-size: 0.8em;
  }
  .fxSml{
  font-size: 0.7em;
  }
  .fBig{
  font-size: 1.7em;
  }

.fcRed{
  color: #ea4c4e;
  font-weight: bold;
}
.fcBlue{
  color: #2f75b7;
  font-weight: bold;
}
  .fcOrange{
    color: #ff6112;
  }

  .wkOrange{
    border: #ff6112 6px solid;
    background-color: #ffffff;
    padding: 20px;
  }

  .bg_cnv{
    background: #fdf3dc !important;
  }

.mailsecurity_contents [data-sec-bg] {
  background-color: #f3f3f3;
  background-position: 50% 60%;
  background-repeat: no-repeat;
  background-size: cover;
}
  @media only screen and (min-width: 1366px) {
    .mailsecurity_contents [data-sec-bg] {
      background-size: 1366px auto; } }


.mailsecurity_contents .overview .overview_text_layer {
  z-index: 10;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  box-sizing: border-box;
  min-height: auto;
  height: 500px;
  display: flex;
  align-items: center;
  padding: 0 10px; }
.mailsecurity_contents .overview .mark {
  display: block;
  width: 80px; }
.mailsecurity_contents .overview .text_group {
  color: #000;
  margin-top: -90px;
  margin-left: 110px;
  margin-bottom: 70px; }
.mailsecurity_contents .overview .subtitle {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.15;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
.mailsecurity_contents .overview .title {
  font-size: 48px;
  font-weight: bold;
/*   margin-top: 0.1em; */
    font-feature-settings: "palt";
}

.mailsecurity_contents .overview .read {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.15;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
/*    margin-top: 0.6em; */
}

@media only screen and (max-width: 768px) {
  .mailsecurity_contents .overview .overview_text_layer {
    height: auto;
    padding: 30px 5% 20px; }
  .mailsecurity_contents .overview .mark {
    width: 32px;
    top: 6%;
    left: 6%; }
  .mailsecurity_contents .overview .mark img{
    max-width: 100%;
     }
  .mailsecurity_contents .overview .text_group {
    margin-top: 0px;
    margin-left: 0px;
    margin-bottom: 70px;}
  .mailsecurity_contents .overview .subtitle {
    font-size: 2.5vw; }
  .mailsecurity_contents .overview .title {
    font-size: 5.2vw; }
  .mailsecurity_contents .overview .read {
    font-size: 3.5vw; }


.f30{
              margin: 10px 0 0 0;
              font-size: 6.2vw;
              line-height: 1.5;

              }




    .kaikaku{
      line-height: 2.5;
      font-size: 2.5vw; }
      .fSml{
      font-size: 0.8em;
      }
      .fxSml{
      font-size: 0.7em;
      }

  }


    .dp_sp{
    	display: none;
    }
    .dp_pc{
    	display: block;
    }

@media (max-width: 640px){
    .dp_sp{
    		display: block;
    	}
      .dp_pc{
      	display: none;
      }
    }


    /*----------------------------------------------- sct_main_bg*/

    .sct_main{
      width: 100%;

    }
    .sct_main_bg{
      width: 100%;
      background-color: #f3f3f3;
      background-position: 50% 50%;
      background-repeat: no-repeat;
      background-size: cover;
    }
    .sct_main_bg .main_max{
      position: relative;
      display: flex;
      align-items: center;
      margin: 0 auto;
      padding: 0 8px;
      max-width: 1024px;
      height: 500px;
      box-sizing: border-box;
    }
    .sct_main .catch_sp{
      display: none;
    }

    @media (min-width: 1366px){
      .sct_main_bg{
        background-size: 1366px auto;
      }
    }
    @media (max-width: 768px){
      .sct_main_bg .main_max{
        padding: 40px 30px;
        height: auto;
      }
    }
    @media (max-width: 640px){
      .sct_main_bg{
        background-position: 50% 40%;
      }
      .sct_main .catch{
        display: none;
      }
      .sct_main .catch_sp{
        display: block;
        padding: 16px 16px 40px 16px;
      }
      .sct_main_bg .main_max{
        padding: 40px 20px 40px 20px;
      }
    }

    .sct_main_bg .ttl_set.ttl_set_w{
      color: #fff;
    }

    @media (min-width: 641px){
      .sct_main_bg .ttl_set{
        display: table;
        width: 100%;
        box-sizing: border-box;
          background: rgba(250,0,200, 0);
      }
      .sct_main_bg .ttl_set .catch,
      .sct_main_bg .ttl_set .ttl_text{
        display: table-cell;
        vertical-align: top;
      }
      .sct_main_bg .catch{
        max-width: 290px;
        width: 28.8%;
      }
      .sct_main_bg .catch a{
        opacity: 1;
        transition: opacity 0.25s ease-out;
      }
      .sct_main_bg .catch a:hover{
        opacity: 0.88;
      }
      .sct_main_bg .ttl_set .ttl_text{
        position: relative;
        padding: 40px 20px 50px 112px;
        width: 71.2%;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
      }
      .sct_main_bg .ttl_set .mark{
        position: absolute;
        left: 0;
        top: 0;
        width: 80px;
      }
      .sct_main_bg .ttl_set .ttl_text .sub{
        font-weight: bold;
        font-size: 26px;
        letter-spacing: 0.02em
      }
      .sct_main_bg .ttl_set .ttl_text h2{
        margin: 0;
        font-weight: bold;
        font-size: 39px;
        line-height: 1.15;
      }
    }

    @media (max-width: 768px){
      /*
      .sct_main_bg .ttl_set,
      .sct_main_bg .ttl_set .catch,
      .sct_main_bg .ttl_set .ttl_text{
        display: block;
        width: 100%;
      }
      */
      .sct_main_bg .ttl_set .ttl_text{
        padding: 40px 0 40px 112px;
      }

      .sct_main_bg .ttl_set .catch{
        display: none;
      }
      .sct_main .catch_sp{
        display: block;
        padding: 32px 16px 32px 16px;
        text-align: center;
      }
      .sct_main .catch_sp img{
        max-width: 100%;
      }

      .sct_main_bg .main_max{
        padding: 40px 20px 40px 20px;
      }
    }

    @media (max-width: 640px){
      .sct_main_bg{
        width: 100%;
        background-color: transparent;
      }
      .sct_main_bg .ttl_set .mark,
      .sct_main_bg .ttl_set .ttl_text{
        display: block;
        padding: 0;
      }
      .sct_main_bg .ttl_set .mark,
      .sct_main_bg .ttl_set.ver .mark{
        padding-right: 0;
        width: 32px;
      }
      .sct_main_bg .ttl_set .ttl_text .sub{
        margin-top: 8px;
        font-size: 17px;
      }
      .sct_main_bg .ttl_set .ttl_text h2{
        margin-top: 2px;
        font-size: 26px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-weight: bold;
      }
      .sct_main_bg .ttl_set.ver .ttl_text{
        padding-top: 0;
      }

      .sct_main .catch_sp{
        padding: 24px 16px 24px 16px ;
        /*
        background-color: #ff6112;
        */
      }
      .sct_main .catch_sp img{
        max-width: 710px;
      }
    }



.bg_brown{
background-color: #d8cbba;
padding: 20px 10px;
border-radius: 4px;
}
.mFilter{
background-color: #ffffff;
padding: 20px 20px;
border-radius: 4px;
margin: 10px auto;
min-height: 40px;
height: auto;
}
.wleft{
display: block;
float: left;
width: 25%;
padding: 0 0 0 3%;
}

.wleft img{
margin: 10px 0 0 0;
}
.wright{
  display: block;
  float: left;
  width: 70%;
}

.sName{
display: block;
float: left;
width: 23%;
padding: 0;
font-weight: bold;
}

.sCat_cloud{
display: block;
float: left;
width: 12%;
background-color: #7dbcc5;
color: #ffffff;
text-align: center;
padding: 10px 2%;
}

.sCat_client{
display: block;
float: left;
width: 12%;
background-color: #5b98c8;
color: #ffffff;
text-align: center;
padding: 10px 2%;
}

.sDetail{
display: block;
float: left;
width: 58%;
padding: 0 0 0 3% ;
}

@media (max-width: 640px){

  .bg_brown{
  background-color: #d8cbba;
  padding: 20px 10px;
  border-radius: 4px;
  width: 96%;
  margin: 0 2%;
  }
  .mFilter{
  background-color: #ffffff;
  padding: 20px 10px;
  border-radius: 4px;
  width: 96%;
  margin: 10px 2%;
  }

.wleft{
display: block;
float: none;
width: 100%;
padding: 0 0 0 3%;
}
.wright{
  display: block;
  float: none;
  width: 100%;
}

.sName{
display: block;
float: none;
width: 100%;
padding: 0;
font-weight: bold;
}

.sCat_cloud{
display: block;
float: none;
width: 100%;
background-color: #7dbcc5;
color: #ffffff;
text-align: center;
padding: 10px 2%;
}

.sCat_client{
display: block;
float: none;
width: 100%;
background-color: #5b98c8;
color: #ffffff;
text-align: center;
padding: 10px 2%;
}

.sDetail{
display: block;
float: none;
width: 100%;
padding: 0 3% ;
}
}

h2{
  font-feature-settings: "palt";
}
h2.recomend{
  margin: 20px 0 0 0;
font-size: 30px;
font-weight: bold;
color: #4e92ab;
line-height: 1.5;

}

.hd02_l,
.hd02_l_g{
  padding-bottom: 0;
  font-weight: bold;
  font-size: 30px;
  line-height: 1.3;
}

h3.recomend{
  margin: 20px 0 0 0;
font-size: 24px;
font-weight: bold;
line-height: 1.5;
font-feature-settings: "palt";
}



h4.system{
  margin: 40px 0 0 0;
font-size: 1.2em;
font-weight: bold;
line-height: 1.5;
}

h4.example{
    margin: 20px 0 0 0;
  display: block;
  width: 100px;
  text-align: center;;
  background-color: #4e92ab;
  color: #ffffff;
padding: 4px 10px;
}


@media (max-width: 640px){
h2.recomend{
  margin: 20px 0 0 0;
font-size: 5.2vw;
font-weight: bold;
color: #4e92ab;
line-height: 1.5;
font-feature-settings: "palt";
}
.hd02_l,
.hd02_l_g{
  font-size: 22px;
}
h3.recomend{
  margin: 20px 0 0 0;
font-size: 3.8vw;
font-weight: bold;
line-height: 1.5;
}

h4.system{
  margin: 40px 0 0 0;
font-size: 3.2vw;
font-weight: bold;
line-height: 1.5;
}
}



ul.checklist {
padding:  10px 20px 10px 60px;
background-color: #ffffff;
}
ul.checklist li {
  margin: 10px 0;
  list-style: square url(../img/check.png) outside;
  padding: 0 0 0 0px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.0;
}
@media (max-width: 640px){
ul.checklist {
padding:  10px 20px 10px 60px;
background-color: #ffffff;
margin: 20px 0 0 0;
}
ul.checklist li {
  margin: 10px 0;
  list-style: square url(../img/check.png) outside;
  padding: 10px 0 0 0px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}
}

.ph_bg01{
  position: relative;
  display: block;
  margin: 0 auto;
  width: 100%;
  min-height: 419px;
  padding: 0;
  background: url("../img/bgimg01.jpg") right top no-repeat;
   clear: both;
}

.ph_bg02{
  position: relative;
  display: block;
  margin: 0 auto;
  width: 100%;
  min-height: 419px;
  padding: 0;
  background: url("../img/bgimg02.jpg") left top no-repeat;
   clear: both;
}

.ph_bg03{
  position: relative;
  display: block;
  margin: 0 auto;
  width: 100%;
  min-height: 419px;
  padding: 0;
  background: url("../img/bgimg03.jpg") right top no-repeat;
   clear: both;
}

.ph_bg01 p.read,
.ph_bg03 p.read{
padding-right: 56px !important;
}

.pleft56{
padding-left: 56px !important;
}
.ptop240{
padding-top: 0px !important;
}

@media (max-width: 640px){
  .ph_bg01{
    position: relative;
  display: inline-block;
    margin: 0 auto;
    width: 100%;
    padding: 0 0 0 0;
   background : none;
   clear: both;
  }

  .ph_bg02{
    position: relative;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    padding: 0 0 0 0;
    background : none;
    clear: both;
  }

  .ph_bg03{
    position: relative;
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    padding: 0 0 0 0;
    background : none;
    clear: both;
  }
  .ph_bg01 p.read,
  .ph_bg03 p.read{
  padding-right: 0px !important;
  }

  .pleft56{
  padding-left: 8px !important;
  }
  .mtop240{
  margin-top: 140px !important;
  }
}

p.navy_tl{
  margin: 20px 0 0 0;
  display: block;
  width: 180px;
  text-align: center;
  background-color: #144a6e;
  color: #ffffff;
padding: 4px 10px;
font-size: 18px;
font-weight: bold;
}


.under_red {
  border-bottom: solid 2px #d94356;
}

.cicle_ph{
display: block;
float: left;
width: 15%;
padding: 0 20px 0 0;
}
.cicle_tx{
  display: block;
  float: left;
  width: 80%;
}

@media (max-width: 640px){
  .cicle_ph{
  display: none;
  }
  .cicle_tx{
    display: block;
    float: none;
    width: 100%;
  }

  p.navy_tl{
    margin: 20px auto 0 0;
    display: block;
    width: 96%;
    text-align: center;
    background-color: #144a6e;
    color: #ffffff;
  padding: 4px 10px;
  font-size: 18px;
  font-weight: bold;
  }

}


.sct_jirei{
background-color: #0055ad;
padding: 40px 0 40px 0;
line-height: 1.6;
color: #ffffff;
}
.jirei{
display: block;
float: left;
vertical-align: middle;
margin: 0 0 0 0;
line-height: 1.5;
}
.category{
display: block;
float: right;
vertical-align: middle;
margin: 0 20px;
font-size: 20px;
width: 100px;
text-align: center;
border: 1px solid #ffffff;
line-height: 2.8;
}
.items{
display: block;
float: left;
vertical-align: middle;
margin: 0 0 0 0;
line-height: 2.0;
}

@media (max-width: 640px){
  .jirei{
  display: block;
  float: left;
  vertical-align: middle;
  margin: 0 0 15px 0;
  font-size: 6.2vw;
  }
  .category{
  display: block;
  float: right;
  vertical-align: middle;
  margin: 0 20px;
  font-size: 18px;
  width: 100px;
  text-align: center;
  border: 1px solid #ffffff;

  }
  .items{
  display: block;
  float: left;
  vertical-align: middle;
  margin: 0 0 0 0;
  }

}

.intro_before,
.intro_after{
background-color: #ffffff;
padding: 25px;
margin: 5px 8px;
border-radius: 4px;
}

.intro_before ul li,
.intro_after ul li{
padding: 10px 0 0 40px;
}

.intro_before ul li:before {
    content: "●";
    padding:0 8px 0 0;
    color: #666666;
    margin: 0 0 0 -20px;
}

.intro_after ul li:before {
  content: "●";
  padding:0 8px 0 0;
    color: #0055ad;
    margin: 0 0 0 -20px;
}

@media (max-width: 640px){
  .intro_before,
  .intro_after{
  background-color: #ffffff;
  padding: 25px;
/*  margin: 5px auto;*/
  border-radius: 4px;
  width: 97%;
  }
  .intro_before ul li,
  .intro_after ul li{
  padding: 10px 0 0 10px;
  }

  .intro_before ul li:before {
      content: "●";
      padding:0 8px 0 0;
      color: #666666;
      margin: 0 0 0 0px;
  }

  .intro_after ul li:before {
    content: "●";
    padding:0 8px 0 0;
      color: #0055ad;
      margin: 0 0 0 0px;
  }
}

.circle_before,
.circle_after{

display: none;
}

@media (max-width: 640px){
.circle_before{
  background-color: #666666;
  padding: 15px;
  margin: 5px 0;
  border-radius: 0px;
  color: #ffffff;
  text-align: center;
  display: block;
  }
.circle_after{
background-color: #0055ad;
padding: 15px;
margin: 5px 0;
border-radius: 0px;
color: #ffffff;
text-align: center;
display: block;
}
}

/*--------------- Table*/

table.nml thead th,
table.nml thead td,
table.nml th,
table.nml td{
  padding: 14px 16px;
  font-size: 16px;
  vertical-align:middle;
  line-height: 1.5;
}

@media (max-width: 640px){
  table.nml.nml_w800{
    width: 800px;
  }
  table.nml.nml_w700{
    width: 400px;
  }
  table.nml.nml_w600{
    width: 600px;
  }
  table.nml.nml_w500{
    width: 400px;
  }
  table.nml.nml_w400{
    width: 400px;
  }
  table.nml thead th,
  table.nml thead td,
  table.nml th,
  table.nml td{
    padding: 12px 10px;
    font-size: 15px;
  }
  table.nml_scroll th{
      white-space: normal;
  }
}

/*Conversion Set*/
.cnv_set{
  text-align: center;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.cnv_set .cnv_set_lead{
  margin-top: 8px;
  font-weight: bold;
  font-size: 20px;
}
.cnv_set .button{
  margin-top: 32px;
  max-width: 660px;
  width: 100%;
  padding: 25px 25px 20px 25px;
}
.cnv_set .button span.sub{
  margin-bottom: 4px;
  display: block;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size: 17px;
}
.cnv_set .button span.sname{
  font-size:28px;
  line-height: 1.6;
  margin-bottom: 4px;
  display: block;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.cnv_set .button span.main{
  font-size:24px;
  padding-left: 36px;
}
.cnv_set .button .ico_nml_l {
  padding: 2px 0 4px 32px;
}

@media (max-width: 640px){
  .cnv_set{
  }
  .cnv_set .cnv_set_lead{
    text-align: left;
    font-size: 18px;
  }
  .cnv_set .button{
    margin-top: 24px;
    padding: 20px 16px 16px 16px;
    max-width: 400px;
  }
  .cnv_set .button span.sub{
    font-size: 16px;
  }
  .cnv_set .button span.sname{
    font-size:22px;
  }
  .cnv_set .button span.main{
    padding-left: 26px;
    font-size:20px;
  }
  .cnv_set .button .ico_nml_l{
      padding: 0 0 0 0px;
      background-position: -4px -4px;
  }
}

.cnv_set_s{
  text-align: center;
}
.cnv_set_s p{
  display: inline-block;
  padding: 0 8px;
}
.cnv_set_s p a{
  padding: 16px 16px;
  width: 320px;
}

@media (max-width: 768px){
  .cnv_set_s p{
    display: block;
    padding: 0;
  }
  .cnv_set_s p:last-child{
    margin-top: 40px;
  }
}
@media (max-width: 640px){
  .cnv_set_s p a{
    max-width: 360px;
    width: 100%;
  }
}
