@charset "utf-8";
/* reset __________________________________ */
@media print {
  .spNav {
    display: none;
  }
}
ul {
  list-style: none;
}

/* common __________________________________ */
.pc_only {
  display: block !important;
}
.sp_only {
  display: none !important;
}
.note {
  text-indent: -1em;
  padding-left: 1em;
}
.note strong{
  color: #1e228b;
}
.flex{
    display: flex;
}
#main {
    width: 100% !important;
    float: none;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    -webkit-font-smoothing: antialiased;
    line-height: 1.5;
    font-size: 14px;
}
#main a{
    color: #1e228b;
    transition: 0.2s;
    word-break: break-all;
    text-decoration: underline;
}
#main a:hover{
    opacity: 0.6;
}
#main a img:hover{
        opacity: 0.8;
}
#main a img{
    transition: 0.2s;
    word-break: break-all;
}
.sec01 section, .sec02 section, .sec03 section{
    width: 1080px;
    margin: 0 auto;
    padding: 4rem 0;
}
.sec01 h2, .sec02 h2, .sec03 h2{
    font-size: 30px;
    text-align: center;
    position: relative;
    color: #444;
    margin: 0 0 4rem;
}
.sec01 h2:before, .sec02 h2:before, .sec03 h2:before{
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #ccc;
}
.btn-area{
    width: 800px;
    margin: 2rem auto 0;
}

/* mv __________________________________ */
.mv {
    background: url("/corporate/meisai/img/mv-bg.jpg") center;
    padding: 6rem 0;
    color: #fff;
    text-align: center;
    text-shadow: 1px 1px 2px #000;
}
.mv h1 {
    font-size: 35px;
}
.mv p{
    display: block;
    width: 640px;
    margin: 1rem auto 0;
    background: rgba(0,0,0,0.3);
    padding: 20px;
    font-size: 16px;
}

/* sec01 __________________________________ */
.sec01 .flex{
    justify-content: center;
}
.sec01 .about{
    width: 30%;
    text-align: center;
    padding: 0 40px;
}
.sec01 .about h3{
    font-size: 20px;
    line-height: 1.3;
    margin: .5rem 0;
    color: #1e228b;
}
.sec01 .about p{
     padding: 0 15px;
     text-align: left;
}
/* sec02 __________________________________ */
.sec02{
    background-color: #dff2ff;
}
.sec02 ul.step-area{
    width: 880px;
    margin: 0 auto;
}
.sec02 ul.step-area li{
    background: #fff;
    border-radius: 6px;
    border: 3px solid #1e228b;
    margin: 0 0 20px;
    position: relative;
}
.sec02 ul.step-area li:after{
    content: url("/corporate/meisai/img/sec02-arrow.png");
    position: absolute;
    bottom: -25px;
    left: 12%;
}
.sec02 ul.step-area li:last-child::after{
    content: none;
}
.sec02 ul.step-area li.flex{
    align-items: center;
}
.sec02 ul.step-area .step-txt{
    font-size: 18px;
    padding: 0 20px 0;
}
.sec02 ul.step-area .step-txt2{
    padding: 10px;
}
.sec02 ul.step-area .step-nbr{
    background: #1e228b;
    text-align: center;
    width: 220px;
    display: flex;
    justify-content: center;
    padding: 12px 0;
}
.sec02 ul.step-area .nbrpadding{
    padding: 26px 0;
}
.sec02 ul.step-area .step-txt2 li{
    border: none;
    margin: 0;
}
.sec02 .btn-area p {
    text-align: center;
    margin-top: 25px;
}
ul.important-area{
    width: 880px;
    margin: 0 auto;
    margin-top: 2rem;
}
ul.important-area li{
    background: #fff;
    border-radius: 6px;
    border: 3px solid #4282b8;
    margin: 0 0 20px;
    position: relative;
}
ul.important-area li.flex{
    align-items: center;
}
ul.important-area .step-txt{
    font-size: 15px;
    padding: 13px 0 13px 20px;
    width: 73%;
}
ul.important-area .step-nbr{
    background: #4282b8;
    text-align: center;
    width: 25%;
    display: flex;
    justify-content: center;
    padding: 23px 0;
    color: #fff;
    font-weight: bold;
    font-size: 17px;
}

/* sec03 __________________________________ */
.sec3-content{
    padding: 3rem 0 0;
}
.sec3-content dl{
    display:flex;
    flex-wrap: wrap;
    border: 3px solid #1e228b;
    border-radius: 6px;
    margin: 0 0 20px;
}
.sec3-content dt{
    background: #1e228b;
    width: 25%;
    box-sizing: border-box;
    color: #fff;
    font-size: 18px;
    text-align: center;
    line-height: 1.3;
}
.sec3-content dt.flex{
    justify-content: center;
    align-items: center;
}
.sec3-content dd{
    padding: 25px 30px;
    margin: 0;
    border-left: 3px solid #1e228b;
    width: 75%;
    box-sizing: border-box;
}
ul.list_dot > li {
    position: relative;
    padding-left: 1rem;
    border: none;
}
ul.list_dot > li::before {
    content: "●";
    color: #1e228b;
    font-size: 14px;
    line-height: 1;
    position: absolute;
    left: 0;
    top: 0.3em;
}
.sec3-content dd > ul li{
    margin: 0 0 5px;
}


@media screen and (min-width:1px) and (max-width:767px) {
  /* common __________________________________ */
    .pc_only {
        display: none !important;
    }
    .sp_only {
        display: block !important;
    }
    #main {
        width: 100% !important;
        line-height: 1.5;
        font-size: 14px;
        box-sizing: border-box;
    }
    .sec01 section, .sec02 section, .sec03 section{
        width: 94%;
        padding: 3rem 0;
    }
    .sec01 h2, .sec02 h2, .sec03 h2{
        font-size: 20px;
        margin: 0 0 4rem;
    }
    .sec01 h2:before, .sec02 h2:before, .sec03 h2:before{
        width: 60px;
    }
    .btn-area{
        width: 100%;
        margin: 2rem auto 0;
    }
    .btn-area a img{
        width: 100%;
    }

    /* mv __________________________________ */
    .mv {
        background: url("/corporate/meisai/img/mv-bg.jpg");
        background-position: center;
        padding: 3rem 0;
    }
    .mv h1 {
        font-size: 24px;
        line-height: 1.5;
    }
    .mv p{
        display: block;
        width: 85%;
        margin: 1rem auto 0;
        padding: 10px;
        font-size: 14px;
    }  
    /* sec01 __________________________________ */
    .sec01 .flex{
        flex-direction: column;
    }
    .sec01 .about{
        box-sizing: border-box;
        width: 100%;
        padding: 0 20px 20px;
    }
    .sec01 .about:last-child{
        padding: 0 20px 0;
    }
    .sec01 .about img{
        width: 35%;
    }
    .sec01 .about h3{
        margin: .5rem 0 .5rem;
    }
    .sec01 .about p{
         padding: 0;
    }
    /* sec02 __________________________________ */
    .sec02 ul.step-area{
        width: 100%;
    }
    .sec02 ul.step-area li{
        margin: 0 0 20px;
        position: relative;
    }
    .sec02 ul.step-area li:after{
        content: url("/corporate/meisai/img/sec02-arrow.png");
        position: absolute;
        bottom: -25px;
        left: 46%;
    }
    .sec02 ul.step-area li:last-child::after{
        content: none;
    }
    .sec02 ul.step-area li.flex{
        align-items: center;
        flex-wrap: wrap;
    }
    .sec02 ul.step-area .step-nbr{
        background: #1e228b;
        width: 100%;
        display: flex;
        justify-content: center;
        padding: 6px 0;
    }
    .sec02 ul.step-area .step-txt{
        width: 100%;
        font-size: 16px;
        line-height: 1.4;
        padding: 12px;
    }
    .sec02 ul.step-area .step-txt2{
        padding: 0 10px 10px;
        margin: -6px 0 0 0;
        width: 100%;
    }
    .sec02 ul.step-area .step-txt2 li{
        border: none;
        margin: 0;
    }
    .sec02 .btn-area p {
        text-align: left;
    }
    ul.important-area{
        width: 100%;
    }
    ul.important-area li{
        margin: 0 0 20px;
        position: relative;
    }
    ul.important-area li.flex{
        align-items: center;
        flex-wrap: wrap;
    }
    ul.important-area .step-nbr{
        background: #4282b8;
        width: 100%;
        display: flex;
        justify-content: center;
        padding: 6px 0;
    }
    ul.important-area .step-txt{
        width: 100%;
        font-size: 16px;
        line-height: 1.4;
        padding: 12px;
    }

    /* sec03 __________________________________ */
    .sec3-content{
        padding: 2rem 0 0;
    }
    .sec3-content dl{
        margin: 0 0 10px;
        display: flex;
        flex-direction: column;
    }
    .sec3-content dt{
        width: 100%;
        font-size: 16px;
        font-weight: bold;
        text-align: left;
        padding: 10px;
    }
    .sec3-content dt.flex{
        justify-content: center;
        align-items: center;
    }
    .sec3-content dd{
        padding: 12px;
        border-left: none;
        width: 100%;
    }
    ul.list_dot > li {
        position: relative;
        padding-left: 1.4rem;
        border: none;
    }
    ul.list_dot > li::before {
      content: "●";
      color: #1e228b;
      font-size: 14px;
      line-height: 1;
      position: absolute;
      left: 0;
      top: 0.2em;
    }
    .sec3-content dd > ul li{
        margin: 0 0 5px;
    }
    
}
