/***************************** webフォントcss */
/*Noto Sans*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,600,700,900&display=swap&subset=japanese');

/*icon*/
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');


/*ベースカラー*/

/*キーカラー

グリーン：#8EC926
ライトブルー：#51C0EF
ブルー：#0E67AB

*/

/* -------------------------------- 

common

-------------------------------- */
body{
font-size: 16px;
color: #333;
background-image: url("../img/fv_bg.png");
background-repeat: repeat;
}

.wrapper{
          overflow: hidden;
          }
p{
line-height: 1.5em;
font-size: 18px;
line-height: 27px;
}
.copyright{
            font-size: 14px;
            }

@media screen and (max-width : 933px ){
body{
font-size: 14px;
}

p{
font-size: 14px;
line-height: 25px;
margin-bottom: 20px;
padding: 0 5px;
}
}

@media screen and (max-width: 520px) {
body{
font-size: 12px;
}
}
h1 img{
        margin: 0 auto;
        text-align: center;
        padding: 30px 30px 0;
        }
h2 img{
        margin: 0 auto;
        text-align: center;
        padding: 30px 30px 0;
        display: block;
        }
#sec-feature h3 img{
        margin: 0 auto;
        text-align: center;
        padding: 50px 30px 30px;
        width: 60%;
        display: block;
        }
@media screen and (max-width : 760px){
#sec-feature h3 img{
        margin: 0 auto;
        text-align: center;
        padding: 30px 0px 0px;
        width: 90%;
        display: block;
        }
        }
/* -------------------------------- レイアウト -- */
*{
box-sizing: border-box;
}

.img{
text-align: center;
margin-bottom: 0px;
}

.img img{
width: 100%;
height: auto;
}
.inner{
width: 100%;
max-width: 1260px;
margin: auto;
padding: 0 50px;
}
.inner-w{
width: 100%;
max-width: 1260px;
margin: auto;
padding: 0 50px;
background-color: #ffffff;
padding-bottom: 30px;
}
@media screen and (max-width : 760px){
.inner{
width: 100%;
max-width: 1260px;
margin: auto;
padding: 0px;
}

.inner-w{
width: 100%;
max-width: 1260px;
margin: auto;
padding: 20px;
background-color: #ffffff;
}
}

.column{
display: flex;
/*align-items: center;*/
flex-wrap: wrap;
}

.col2{
width: 50%;
}
@media screen and (max-width : 760px){
.col2{
width: 50%;
}
}
@media screen and (max-width : 660px){
.col2{
width: 100%;
}
}

.col3{
width: 33%;
padding: 5px;
margin-bottom: 30px;
}

.mgb10{
margin-bottom: 10px;
}

.mgb20{
margin-bottom: 20px;
}

.mgb30{
margin-bottom: 30px;
}

.mgb40{
margin-bottom: 40px;
}

.mgb50{
margin-bottom: 50px;
}

.mgb80{
margin-bottom: 80px;
}

.mgb100{
margin: 50px 0 100px 0;
}
@media screen and (max-width : 760px){
.mgb100{
margin: 50px 0;
}
}

.mgt10{
padding-top: 10px;
}

.mgt20{
margin-top: 20px;
}

.mgt30{
padding-top: 30px;
}

.mgt40{
padding-top: 40px;
}

.mgt50{
padding-top: 50px;
}

.mgt80{
padding-top: 80px;
}

.mgt100{
padding-top: 100px;
}

.mgt150{
padding-top: 150px;
}

.mgt200{
padding-top: 200px;
}

@media screen and (max-width: 520px) {
.col3{
width: 100%;
margin: 15px;
}
.mgt100{
padding-top: 50px;
}
}

/* -------------------------------- タイトル -- */

.ttl-01{
color: #555;
font-size: 240%;
text-align: center;
font-weight: 600;
line-height: 40px;
}

.ttl-02{
color: #666;
text-align: center;
font-size: 130%;
font-weight: 600;
line-height: 27px;
margin:10px 15px 15px;
}

.ttl-03{
text-align: center;
font-size: 250%;
font-weight: 600;
background-image: url("../img/ttl_bg_01.png");
background-repeat: no-repeat;
background-size: 100% 5px;
background-position: bottom;
padding-bottom: 30px;
line-height: 43px;
color: #555555;
margin-bottom: 50px;
}
.ttl-03-w{
text-align: center;
font-size: 250%;
font-weight: 600;
background-image: url("../img/ttl_bg_01.png");
background-repeat: no-repeat;
background-size: 100% 5px;
background-position: bottom;
padding-bottom: 30px;
line-height: 43px;
color: #ffffff;
}
@media screen and (max-width: 768px) {
.ttl-03{
text-align: center;
font-size: 200%;
font-weight: 600;
background-image: url("../img/ttl_bg_01.png");
background-repeat: no-repeat;
background-size: 100% 5px;
background-position: bottom;
padding-bottom: 30px;
line-height: 27px;
color: #555555;
}


.ttl-03-w{
text-align: center;
font-size: 200%;
font-weight: 600;
background-image: url("../img/ttl_bg_01.png");
background-repeat: no-repeat;
background-size: 100% 5px;
background-position: bottom;
padding-bottom: 30px;
line-height: 30px;
color: #ffffff;
}
}

.ttl-04{
font-size: 200%;
line-height: 36px;
}

.ttl-05{
font-size: 180%;
text-align: center;
line-height: 1.5em;
}

.ttl-06{
font-size: 200%;
text-align: center;
line-height: 1.2em;
font-weight: 600;
color: #666;
}

.ttl-06-2{
font-size: 200%;
text-align: center;
line-height: 1.2em;
font-weight: 600;
color: #666;
background-image: url("../img/ttl_bg_01.png");
background-repeat: no-repeat;
background-size: 100% 5px;
background-position: bottom;
padding-bottom: 30px;
}

.ttl-07{
font-size: 140%;
text-align: center;
line-height: 1.3em;
font-weight: 600;
color: #666;
}

.ttl-08{
font-size: 100%;
line-height: 1.2em;
font-weight: 600;
color: #666;
display: block;
text-align: center;
}
.ttl-09{
font-size: 250%;
text-align: center;
font-weight: 500;
color: #ffffff;
margin: 30px 10px;
line-height: 40px;
}
@media screen and (max-width: 768px) {
.ttl-09{
font-size: 200%;
text-align: center;
font-weight: 500;
color: #ffffff;
margin: 10px 10px 30px 10px;
line-height: 32px;
}
.ttl-10{
font-size: 24px;
    color: #fff;
    text-align: center;
    font-weight: 600;
    line-height: 30px;
}
}

.ttl-10{
font-size: 30px;
    color: #fff;
    text-align: center;
    font-weight: 600;
    line-height: 30px;
    margin-bottom: 30px;
}

.ttl-11{
color: #666;
text-align: center;
font-size: 150%;
font-weight: 600;
}

h2 i{
font-size: 70%;
}

@media screen and (max-width: 520px) {
h2 i{
font-size:80%;
}
.ttl-07{
font-size: 150%;
text-align: center;
line-height: 1.3em;
font-weight: 600;
color: #666;
}
.ttl-08{
font-size: 150%;
line-height: 1.2em;
font-weight: 600;
color: #666;
display: block;
text-align: center;
margin-bottom: 5px;
}

.ttl-07{
font-size: 170%;
text-align: center;
line-height: 1.3em;
font-weight: 600;
color: #666;
margin-top: 20px;
}
}


/* -------------------------------- 段落・テキスト -- */

.mgl1{
padding-left: 0em;
}

small{
font-size: 90%;
line-height: 1.5em!important;
}

.small-text{
font-size: 60%;
}

.spec{
    font-size: 110%;
    line-height: 32px;
    list-style: circle;
    padding-left: 40px;
    }
@media screen and (max-width: 760px) {
.spec{
    font-size: 120%;
    line-height: 25px;
    list-style: circle;
    padding-left: 40px;
    
    }
    }

/* -------------------------------- sec -- */

.pb100{
padding-bottom: 100px;
}
@media screen and (max-width: 520px) {
.pb100{
padding-bottom: 20px;
}
}

.triangle-01{
background-image: url("../img/icon_triangle01.png");
background-repeat: no-repeat;
background-position: center top;
}

.triangle-02{
background-image: url("../img/icon_triangle02.png");
background-repeat: no-repeat;
background-position: center top;
}

.triangle-03{
background-image: url("../img/icon_triangle03.png");
background-repeat: no-repeat;
background-position: center top;
}

.triangle-04{
background-image: url("../img/icon_triangle04.png");
background-repeat: no-repeat;
background-position: center top;
}

/* -------------------------------- issue -- */

#lp01 #sec01 .introduction{
background-color: #0E67AB;
text-align: center;
color: #fff;
padding: 20px;
font-size: 250%;
}

#lp01 #sec01 .introduction i{
font-size: 18px;
line-height: 0em!important;
display: block;
margin-top: 10px;
margin-bottom: 10px;
}

#lp01 #sec01 .issue{
background-color: #eee;
text-align: center;
color: #666;
padding: 40px;
font-weight: 500;
}

#lp01 #sec01 .issue p{
line-height: 1.4em!important;
text-align: center;
font-size: 18px;
}
@media screen and (max-width : 520px ){
#lp01 #sec01 .issue p{
line-height: 1.4em!important;
font-size: 14px;
padding: 10px;
}
}

#lp02 #sec01 .issue{
background-color: #0E67AB;
text-align: center;
color: #fff;
padding: 20px;
font-size: 180%;
}

#sec-feature .issue{
background-color: #0E67AB;
text-align: center;
color: #fff;
padding: 50px 20px;
font-size: 150%;
}

#sec-voice .issue{
background-color: #0E67AB;
text-align: center;
color: #fff;
padding: 50px 8px;
font-size: 150%;
}

#sec-voice .issue .btn-set {
justify-content: center!important;
}

#sec-voice .issue .btn-set li{
margin: 0 10px 10px 0;
}

@media screen and (max-width: 520px) {

#lp01 #sec01 .issue{
background-color: #eee;
text-align: center;
color: #666;
padding: 20px;
font-size: 130%;
font-weight: 500;
margin-top: -20px;
}

}

/* -------------------------------- ボタン -- */

.btn-dl{
display: block;
background-color: #8EC926;
color: #fff;
padding: 10px 20px 10px 48px;
border-radius: 4px;
background-image: url("../img/icon_download.png");
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 20px center;
}

.btn{
display: block;
background-color: #8EC926;
color: #fff;
padding: 15px 20px;
border-radius: 40px;
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 20px center;
font-size: 140%;
width: 30%;
transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}
.btn:hover{
   background-color: #1D82C5;
   transform: translateY(-5px);
   }

.btn-contact{
display: block;
background-color: #51C0EF;
color: #fff;
padding: 10px 20px 10px 48px;
border-radius: 4px;
background-image: url("../img/icon_mail.png");
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 20px center;
}

.btn-contact-r{
display: block;
background-color: #51C0EF;
color: #fff;
padding: 10px 20px 10px 70px;
border-radius: 40px;
background-image: url("../img/icon_mail.png");
background-repeat: no-repeat;
background-size: auto 60%;
background-position: 70px center;
max-width: 300px;
font-size: 150%;
margin:30px;
transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}

.btn-contact-r:hover{
   background-color: #1D82C5;
   transform: translateY(-5px);
   }

.btn-return{
display: block;
background-color: #51C0EF;
color: #fff;
padding: 10px;
border-radius: 40px;
background-repeat: no-repeat;
background-size: auto 60%;
background-position: 70px center;
max-width: 300px;
font-size: 150%;
margin:30px;
transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}
.btn-return:hover{
   background-color: #1D82C5;
   transform: translateY(-5px);
   }

.btn-contact-L{
display: block;
background-color: #51C0EF;
color: #fff;
padding: 10px 20px 10px 60px;
border-radius: 40px;
background-image: url("../img/icon_mail.png");
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 20px center;
font-size: 150%;
max-width: 200px;
margin: auto;
text-align: center;
transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}
.btn-contact-L:hover{
   background-color: #1D82C5;
   transform: translateY(-5px);
   }


@media screen and (max-width: 520px) {

.btn-dl{
display: block;
background-color: #8EC926;
color: #fff;
padding: 10px 10px 10px 40px;
border-radius: 4px;
background-image: url("../img/icon_download.png");
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 10px center;
}

.btn{
display: block;
background-color: #8EC926;
color: #fff;
padding: 10px 10px 10px 40px;
border-radius: 40px;
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 10px center;
}

.btn-contact{
display: block;
background-color: #51C0EF;
color: #fff;
padding: 10px 10px 10px 40px;
border-radius: 40px;
background-image: url("../img/icon_mail.png");
background-repeat: no-repeat;
background-size: auto 50%;
background-position: 10px center;
}

.btn-dl-L{
width: 100%;
min-width: 100%;
}

}

/* -------------------------------- header -- */

header{
height: 80px;
position: relative;
background: #ffffff;
}

header .site-logo{
position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

header .site-logo img{
height: 60px;
}

header .btn-set{
position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

header .btn-set li{
margin-left: 20px;
}

@media screen and (max-width: 520px) {

header .column{
display: block;
}

header .btn-set li:first-child{
margin-bottom: 4px;
}
}

/* -------------------------------- footer -- */

footer{
background-color: #333C44;
color: #fff;
font-size: 90%;
text-align: center;
padding: 20px;
}

/* -------------------------------- page-top -- */


 
#page-top {
 z-index: 300;
 text-align: center;
 display: block;
 position: fixed;
 right: 10px;
 bottom: 10px;
}

 #page-top a{
  background-color: #91CA26;
  color: #fff;
  width: 50px;
 height: 50px;
 display: block;
color: #91CA26;
  padding: 10px;
  background-image: url("../img/icon_pagetop.png");
  background-position: center center;
  background-repeat: no-repeat;
  text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
	border-radius: 10px;
	border: 2px solid #fff;
}

.green-title{
font-size: 130%;
    text-align: center;
    line-height: 1.3em;
    font-weight: 600;
    color: #ffffff;
    background-color: #91CA26;
    padding:10px;
    border-radius:50px;
}

/* -------------------------------- sec-case -- */
.main-spe{
overflow: hidden
}

#sec-case{
}

#sec-case .list-set{
justify-content: center;
}

#sec-case .list-set table{
margin: 10px;
table-layout: fixed;
}

#sec-case .list-set table th{
background: linear-gradient(to right,#1278C4,#113D97);
color: #fff;
padding: 10px;
width: 10%;
vertical-align: middle;
}
@media screen and (max-width: 520px) {
#sec-case .list-set table th{
background: linear-gradient(to right,#1278C4,#113D97);
color: #fff;
padding: 3px;
width: 15%;
vertical-align: middle;
}
}

#sec-case .list-set table td{
padding: 10px 3px;
text-align: center;
vertical-align: middle;
}

#sec-case .fa-circle::before{
content: "\ef4a";
font-family: 'Material Icons';
}

.table-gray{
background-color: #eee;
border: thin solid #ccc;
border-left: none;
border-right: none;
}
@media screen and (max-width: 520px) {
#sec-case .icon-set  li{
width: 50%;
}
}

/* -------------------------------- sec-download -- */

#sec-download{
background-color: #eee;
}

#sec-download .right{
background-color: rgba(255,255,255,0.50);
position: relative;
overflow-y: hidden;
padding: 20px;
}

/*#sec-download .form-area{
overflow-y: scroll;
height: 500px;
}*/

#sec-download .right h2{
color: #000;
text-align: center;
font-size: 150%;
font-weight: bold;
margin-bottom: 1em;
}

@media screen and (max-width: 767px) {

#sec-download .right{
width: 100%;
height: auto!important;
overflow-y: visible;
}

#sec-download .form-area{
overflow-y: scroll;
height: auto!important;
}

}
/* -------------------------------- sec-contact -- */

#sec-contact {
background-color: #0E67AB;
padding: 30px 30px 0px 30px;
}

#sec-contact-2 {
background-color: #0E67AB;
padding: 30px;
}


/* -------------------------------- 

LP-01

-------------------------------- */



/* -------------------------------- FV -- */


#lp01 #fv {
background-image: url("../img/fv_bg0.png");
background-repeat: no-repeat;
background-position: center bottom;
height: 600px;
position: relative;
/*background: #d0e9f7;*/
margin: 0 auto;
text-align: center;
background-size:cover;
}

#lp01 #fv .column{
align-items: flex-start!important;
}

#lp01 #fv .left{
width: 50%;
padding: 10px;
height: 100%;
}

#lp01 #fv .right{
flex: 1;
}

#lp01 #fv .column{
justify-content: space-between;
}

#lp01 #fv .catch-01,
#lp01 #fv .catch-02,
#lp01 #fv .catch-03{
color: #fff;
}

#lp01 #fv .catch-01 {
    margin: 30px 0 10px 0;
    font-size: 25px;
    font-weight: 700;
    color: #ffffff;
    background-color: #8EC926;
    padding: 10px;
    border-radius: 10px;
    text-align: center;
}

#lp01 #fv .catch-01 img {
max-width: 474px;
width: 100%;
}

#lp01 #fv .catch-02 {
margin: 20px 0;
font-size: 25px;
font-weight: 600;
text-align: center;
color: #000000;
line-height: 40px;
}
#lp01 #fv .catch-03 {
margin: 0 0 10px 0;
    font-size: 70px;
    font-weight: 500;
    line-height: 1.1em;
    text-align: center;
}
#lp01 #fv .catch-03 span{
font-size: 40%;
line-height: 1;
display:block;
color: #666666;
}

#lp01 #fv .right{
height: 100%;
padding: 20px 20px 0 20px;
}



#lp01 #fv .img img{
max-width: 480px;
width: 100%;
}
#lp01 #fv .catch-02 {
margin:3px;
font-size: 24px;
line-height: 35px;
background: #000000;
color: #ffffff;
padding: 10px;
display: inline-block;
}

@media screen and (max-width : 933px ){

#lp01 #fv {
height: auto;
}

#lp01 #fv .catch-02 {
margin: 0px 20px;
font-size: 16px;
line-height: 25px;
padding: 10px;
}

#lp01 #fv .catch-03 {
margin: 0 0 10px 0;
font-size: 40px;
font-weight: 500;
line-height: 1.2em;
text-align: center;
}
}

@media screen and (max-width: 767px) {
#lp01 #fv .catch-01 {
    margin: 30px 0 10px 0;
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    background-color: #8EC926;
    padding: 10px;
    border-radius: 10px;
    text-align: center;
}

#lp01 #fv .catch-03 span{
display: block;
padding-left: 0em;
}

#lp01 #fv .catch-03 {
margin: 0 0 10px 0;
font-size: 30px;
font-weight: 500;
line-height: 1.2em;
}
}


@media screen and (max-width: 520px) {

#lp01 #fv {
height: auto;
background-position: center top;
background-image: url(../img/fv_bg0-s.png);
}

#lp01 #fv .column{
display: block;
}

#lp01 #fv .left{
width: 100%;
height: auto;
}

#lp01 #fv .right{
max-width: 100%;
width: 100%;
height: auto;
margin-top: -50px;
}

#lp01 #fv .catch-03 {
margin: 0 0 10px 0;
font-size: 50px;
font-weight: 500;
line-height: 1.2em;
}

#lp01 #fv .img img{
max-width: 300px;
width: 100%;
}
}

/* -------------------------------- sec01 -- */

#lp01 #sec01 .column{
justify-content: space-around;
}

#lp01 #sec01 .column .img img{
max-width: 200px;
width: 100%;
}

@media screen and (max-width : 933px ){

#lp01 #sec01 .column .img img{
max-width: 150px;
width: 100%;
}
}

@media screen and (max-width: 520px) {

#lp01 #sec01 .column li{
margin-bottom: 1em;
}
}

/* -------------------------------- sec02 -- */

#lp01 #sec02 .icon-set{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 30px;
justify-content:space-around;
flex-wrap: nowrap;
}

#lp01 #sec02 .icon-set li{
margin: 0 10px;
}

@media screen and (max-width: 520px) {
#lp01 #sec02 .column {
display: block;
}

#lp01 #sec02 .icon-set{
display: flex!important;
flex-wrap: wrap;
}
#lp01 #sec02 .icon-set li{
width: 40%;
margin-bottom: 1em;
}
}

/* -------------------------------- sec03 -- */
#lp01 #sec03{
background-color: #1D82C5;
color: #fff;
padding-bottom: 50px;
}
@media screen and (max-width: 520px) {
#lp01 #sec03{
background-color: #1D82C5;
color: #fff;
padding-bottom: 10px;
}
}
.icon-set{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 30px;
justify-content:space-around;
flex-wrap: nowrap;
margin:30px 0;
}

.icon-set2{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 30px;
justify-content:start;
flex-wrap: nowrap;
margin:30px 0;
}
@media screen and (max-width: 768px) {
.icon-set{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 10px;
justify-content:space-around;
flex-wrap: nowrap;
margin:30px 0;
}
.icon-set2{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 10px;
justify-content:start;
flex-wrap: nowrap;
margin:30px 0;
}
}

/*.icon-set li{
margin: 0 10px;
}*/

#lp01 #sec03 .icon-set2{
justify-content:center;
}

#lp01 #sec03 .icon-set2 li{
width: 25%;
text-align: center;
margin-bottom: 30px;
}

#lp01 #sec03 .icon-set2 li h3{
font-weight: 700;
}

#lp01 #sec03 .icon-set2 .img img{
max-width: 200px;
}

#lp01 #sec03 .icon-set2 li p:last-child{
/*font-size: 110%;*/
padding: 1em;
line-height: 27px;
}
@media screen and (max-width: 767px) {
#lp01 #sec03 .icon-set2 li p:last-child{
/*font-size: 110%;*/
padding: 1em;
line-height: 20px;
}
}

#lp01 #sec03 .summary li{
padding: 20px;
}

#lp01 #sec03 .summary li:nth-child(2){
border: dotted 0px #fff;
border-top:none;
border-bottom: none;
}


#lp01 #sec03 .summary li img{
}

@media screen and (max-width : 933px ){

#lp01 #sec03 .icon-set2 .img img{
max-width: 150px;
}
}

@media screen and (max-width: 767px) {

#lp01 #sec03 .icon-set{
background-color: #fff;
border: 5px solid #ccc;
border-radius: 10px;
padding: 5px;
justify-content:space-around;
flex-wrap: nowrap;
}

#lp01 #sec03 .icon-set2 li{
width: 50%;
}

#lp01 #sec03 .summary{
display: block;
}

#lp01 #sec03 .summary .col3{
width: 100%!important
}

#lp01 #sec03 .summary li:nth-child(2){
border-left: none;
border-right: none;
border-top:dotted 2px #fff;
border-bottom: dotted 2px #fff;
}
}


@media screen and (max-width: 520px) {

#lp01 #sec03 .column {
display: block;
}
#lp01 #sec03 .column .right{
width: 100%;
}
#lp01 #sec03 .icon-set{
display: flex!important;
flex-wrap: wrap;
margin:0 20px;
}
#lp01 #sec03 .icon-set li{
width: 40%;
margin-bottom: 1em;
}

#lp01 #sec03 .icon-set2 li{
min-width: 100%;
}
}

/* ---------------------------------- */

.lead{
       font-size: 28px;
       color: #ffffff;
       line-height: 37px;
       padding:30px 0;
       font-weight: 500;
       }
       
.spe-text{
            line-height: 32px;
            font-size: 18px;
            color: #666666;
            text-align: left;
            margin-top: 10px;
                        }
@media screen and (max-width: 760px) {
.spe-text{
line-height: 25px;
            font-size: 14px;
            color: #666666;
            padding:20px;
            }
            }
@media screen and (max-width: 520px) {
.lead{
       font-size: 24px;
       color: #ffffff;
       line-height: 27px;
       padding:30px 0;
       }
       
.spe-text{
            line-height: 25px;
            font-size: 14px;
            padding:0 5px;
            color: #666666;
            padding-bottom: 30px;
            }
            }

.container {
  display: flex;
  flex-wrap: wrap;
}

.container2 {
  flex-wrap: wrap;
}

.column--l,
.column--r {
  width: 100%;
}

@media (min-width: 768px) {
  .column--l {
    width: 50%;
    padding: 30px;
  }
#words  .column--l {
    width: 50%;
    padding: 20px;
    color: #6d6d6d;
  }
  .column--r {
    width: 50%;
    color: #6d6d6d;
    padding: 30px;
  }
#words  .column--r {
    width: 50%;
    color: #6d6d6d;
    padding: 20px;
  }
.container2 {
  flex-wrap: wrap;
  padding: 30px;
}
}
/* 改行*/
@media screen and (min-width: 768px){   
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 768px){   
  .pc { display:none; }
  .sp { display:block; }
}

/*3カラム*/
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    /*max-width: 960px;*/
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    margin-bottom: 0px;
}
@media screen and (max-width: 768px){   
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    /*max-width: 960px;*/
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    padding-bottom: 100px;
    padding:0 15px;
}
}

#cardlayout-wrap img {
    display: block;
    max-width: 100%;
    height: auto;
}

.card-figure {
    margin: 0;
    padding: 0;
}

.card-title {
    margin: 10px;
    color: #333;
    text-align: center;
    font-size: 1.8em;
}

.card-text-tax {
    margin: 0;
    padding: 20px;
    color: #000000;
    text-align: center!important;
    line-height: 27px;
}

.card-list {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
    background: #ffffff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

@media all and (min-width: 470px) {
    .card-list {
        margin: 0.5em 0;
        width: calc(96% / 2);
    }
}

@media all and (min-width: 992px) {
    .card-list {
        width: calc(96% / 3);
        transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
    }
.card-list:hover {
  transform: translateY(-5px);
}
    
    #cardlayout-wrap::after{
        content: "";
        display: block;
        width: calc(96% / 3);
    }
}
.indent-r {
    padding-left: 1em;
    text-indent: -1em;
    font-size: 12px;
    text-align: right;
}
@media all and (min-width: 768px) {
.indent-r {
        padding-left: 1em;
        text-indent: -1em;
        font-size: 12px;
        text-align: right;
    }
}  

/* -------------------------------- 
改行
-------------------------------- */
@media screen and (min-width: 768px){   
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 768px){   
  .pc { display:none; }
  .sp { display:block; }
}

/* -------------------------------- 
マーカー＋太字
-------------------------------- */

.hightlight-text{
            text-align: left;
            font-weight: 600;
            margin-bottom:20px;
            line-height: 27px;
            background: linear-gradient(transparent 50%, #ffff66 0%);
            }

@media only screen and (min-width: 768px)  {
.hightlight-text{
            font-weight: 600;
            font-size:18px;
            background: linear-gradient(transparent 50%, #ffff66 0%);
            margin-bottom:33px;
            }
            }
            
/* -------------------------------- 
太字
-------------------------------- */

.text-bold{
            font-weight: 600;
            }
            
/*--------------------------------------
  カード型_02
--------------------------------------*/
.l-wrapper_02 {
  margin: 1rem auto;
  width: 100%;
}
@media all and (min-width: 470px) {
.l-wrapper_02 {
  margin: 1rem auto;
  width: calc(95% / 2);
}
}
@media only screen and (min-width: 992px)  {
.l-wrapper_02 {
  margin: 1rem auto;
  width: calc(95% / 3);
}
}
.card-radius_02{
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0,0,0,.2);
  background: #ffffff;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  min-height: auto;
}
@media only screen and (min-width: 768px)  {
.card-radius_02{
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0,0,0,.2);
  background: #ffffff;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  min-height: 490px;
}
}

.card-radius_02:hover {
  transform: translateY(-5px);
}

.card_02 {
  background-color: #fff;
  box-shadow: 0 0 0px rgba(0, 0, 0, .16);
  color: #212121;
  text-decoration: none;
}

.card__header_02 {
  display: flex;
  flex-wrap: wrap;
}
.card__title_02 {
  padding: 20px 20px 15px;
  font-size: 22px;
  order: 1;
  font-weight: bold;
  text-decoration: none;
  /*線の種類（実線） 太さ 色*/
  border-bottom: solid 3px black;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px){   
.card__title_02 {
  padding: 10px 10px 10px;
  font-size: 18px;
  order: 1;
  font-weight: bold;
  text-decoration: none;
  /*線の種類（実線） 太さ 色*/
  border-bottom: solid 3px black;
  margin-bottom: 20px;
}
}

.card__thumbnail_02 {
  margin: 0;
  order: 0;
}

.card__image_02 {
  width: 100%;
}
.card__body_02 {
  padding: 0 20px;
}
@media screen and (max-width: 768px){   
.card__body_02 {
  padding: 0 10px;
}
}

.card__text_02 {
  font-size: .8rem;
  text-align:center;
  text-decoration: none;
}

.card__text2_02 {
  margin-top: 0;
  margin-bottom: 30px;
}

.simplefilter li {
    background-color: #ffffff;
    padding: 8px;
    font-size: 18px;
}

.simplefilter li{
    color: #0E67AB;
    cursor: pointer;
    display: inline-block;
    padding: 2rem 2rem;
    margin: 0px 3px 10px;
    border-radius: 3px;
    border: solid 2px #0E67AB;
    font-weight: 600;
}

.simplefilter li a{
                 display: block;
                 color: #0E67AB;
                 position:rerative;
                 margin:-30px;
                 padding:30px;
                 }
.simplefilter li a:hover{
                       color: #ffffff;
                        }                
@media screen and (max-width: 768px){   
.simplefilter li{
    color: #0E67AB;
    cursor: pointer;
    display: inline-block;
    padding: 1.5rem;
    margin: 0px 2px 10px;
    border-radius: 3px;
    border: solid 2px #0E67AB;
    font-weight: 600;
    font-size: 120%;
}
}
.simplefilter li:hover{
   background:#0E67AB;
   color: #ffffff;
   }
   
#others .col3 img{
transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
    }
#others .col3 img:hover {
  transform: translateY(-5px);
}
              
.footer-list{
              text-align: left;
              font-size: 16px;
              line-height: 30px;
              color: #ffffff;
              }
.footer-list li{
              border-bottom: 1px dotted #ffffff;
              padding: 20px;
              }
.footer-list li a{
                   color: #ffffff;
                   }
.footer-list li a:hover{
                         color:#cccccc;
                         }
/*用語集*/
.words-title{
              color: #0E67AB;
              font-size: 50px;
              line-height: 60px;
              font-weight: 600;
              }
.words-text{
              color: #0E67AB;
              font-size: 20px;
              margin-top: 10px;
              line-height: 32px;
              padding-bottom: 10px;
              border-bottom:1px solid;
              margin-bottom: 20px;
              }
.words-text-2{
              color: #0E67AB;
              font-size: 20px;
              line-height: 32px;
              padding-bottom: 10px;
              border-bottom:1px solid;
              margin: 30px 0;
              font-weight: 600;
              }
@media screen and (max-width: 768px){
.words-text-2{
              color: #0E67AB;
              font-size: 20px;
              line-height: 32px;
              padding-bottom: 10px;
              border-bottom:1px solid;
              margin-bottom: 30px;
              font-weight: 600;
              margin-top: 0px;
              }
              }
.benefits{
           background: #0E67AB;
           color: #ffffff;
           border-radius:30px;
           font-weight: 600;
           font-size: 20px;
           padding: 10px 30px;
           margin: 20px 0;
           width: auto;
           text-align: center;
           }
.demerit{
           background: #666666;
           color: #ffffff;
           border-radius:30px;
           font-weight: 600;
           font-size: 20px;
           padding: 10px 30px;
           margin: 20px 0;
           width: auto;
           text-align: center;
           }
.icon-set2 ul li{
                 line-height: 27px;
                 list-style: circle;
                 margin-left: 20px;
                 padding-bottom: 10px;
                 font-size: 18px;
                 }
@media screen and (max-width: 768px){
.icon-set2 ul li{
                 line-height: 25px;
                 list-style: circle;
                 margin-left: 20px;
                 padding-bottom: 10px;
                 font-size: 14px;
                 }
.words-title{
              color: #0E67AB;
              font-size: 40px;
              line-height: 45px;
              font-weight: 600;
              }
.words-text{
              color: #0E67AB;
              font-size: 16px;
              margin-bottom: 20px;
              }
.benefits{
           background: #0E67AB;
           color: #ffffff;
           border-radius:50px;
           font-weight: 600;
           font-size: 18px;
           padding: 5px 20px;
           margin: 20px 0;
           width: auto;
           text-align: center;
           line-height: 25px;
           }
.icon-set ul li{
                 line-height: 25px;
                 list-style: circle;
                 margin-left: 20px;
                 padding-bottom: 10px!important;
                 font-size: 14px;
                 }
                 }
#words .icon-set2 p{
                 margin-bottom: 10px;
                 font-size: 18px;
                 line-height: 27px;
                 }
@media screen and (max-width: 768px){
#words .icon-set2 p{
                 margin-bottom: 10px;
                 font-size: 14px;
                 }
                 }

#words .icon-set2{
                  background-color: #fff;
    border: 5px solid #ccc;
    border-radius: 10px;
    padding: 30px;
    justify-content: start;
    flex-wrap: nowrap;
    margin: 30px 0;
     }
.badge-group{
  margin: 5px 0px 20px 0px;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.badge-item a{
  margin-bottom:5px;
  margin-right: 5px;
  border-radius: 4px;
  background-color:  #5ca536;
  padding: 10px 20px;
  overflow: hidden;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  line-height: 15px;
}
@media screen and (max-width: 768px){
.badge-group{
  margin: 5px 0px 30px 0px;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.badge-item a{
  margin-bottom:5px;
  margin-right: 5px;
  border-radius: 4px;
  background-color:  #5ca536;
  padding: 5px 10px;
  overflow: hidden;
  color: #ecf0f1;
  font-size: 12px;
  font-weight: bold;
  line-height: 15px;
}}