@charset "utf-8"; 


.K22__sub { margin-bottom:5rem }
.K22__sub:last-child { margin-bottom:0 } 
.K22__line , .K22__p { font-size:1.8rem ; line-height:3rem } 
.K22__lead { margin-bottom:5rem }
.K22__p { margin-bottom:2rem ; text-align:justify }
.K22__p:last-child { margin-bottom:0 }
.K22__line { text-align:center ; padding:4rem 0 } 
.K22__line > p { position:relative }
.K22__line > p::before {
    display:block ; content:"" ; width:100% ; height:1px ;
    background-color:#444444 ;
    position:absolute ; left:0 ; top:1.5rem ; z-index:-1 ;    
}
.K22__line span { 
    display:inline-block ; background-color:#444444 ; 
    font-weight:500 ; color:#ffffff ;
    padding:0rem 2rem 0.2rem ; border-radius:2rem ;
}
.K22__line b {
    display:block ; text-align:center ; word-break:keep-all ;
    padding-top:0.5rem ;
}
.K22__sub__title {
    font-size:2.4rem ; line-height:3.4rem ; font-weight:600 ; color:#111111 ;
    margin-bottom:1.5rem ;
}
.K22__item { 
    padding-left:1.5rem ; margin-bottom:2rem ;
    position:relative }
.K22__item:last-child { margin-bottom:0 }
.K22__item::before {
    display:block ; content:"" ; width:0.9rem ; height:0.9rem ;
    box-sizing:border-box ; border:solid 0.3rem rgba(0,0,0,0.2) ;
    position:absolute ; left:0 ; top:1.2rem
}

.no .K22__item { padding-left:0 }
.no .K22__item::before { display:none }

.K22__tag {
    display:inline-block ; padding:0 1.5rem 0.2rem ; border-radius:3rem ;
    background-color:#111111 ; margin-right:0.5rem ;
    color:#ffffff ; font-size:1.4rem ; line-height:2.8rem ; font-weight:500 ;
}



/* IMAGE */
.K22__imgs { text-align:center ; font-size:0 ; padding-top:1rem }
.K22__img , .K22__img img { width:100% }
.K22__img { 
    margin:0.5rem 0.3rem ; display:inline-block ; overflow:hidden ; border-radius:0.6rem ;
    background-color:#111111 ;
}  
.K22__caption , .K22__img__unit { font-size:1.4rem ; line-height:2rem }
.K22__caption { 
    display:block ; padding:0.5rem 0.5rem 0.7rem ;
    color:#ffffff ; text-align:center ; font-weight:400  
}

#K22__img1 { max-width:24rem }
#K22__img2 { max-width:40rem }
#K22__img3 { max-width:30rem } 
#K22__img4 { max-width:90rem } 



/* ADD
#item6 .K22__lead , #item8 .K22__lead  { margin-bottom:3rem }  
#item7 .K22__lead , #item12 .K22__lead , #item14 .K22__lead , #item15 .K22__lead { margin-bottom:5rem }  
 */


/* TABLE */
#K22__table1 { padding:0 ; margin:0 }
#K22__table1 td:nth-child(2) { text-align:left }
#K22__table1 li { margin-bottom:1rem }
#K22__table1 li:last-child { margin-bottom:0 }
#K22__table1 li {
    box-sizing:border-box ; padding-left:1rem ;
    position:relative 
}
#K22__table1 li::before { 
    display:block ; content:"" ; width:0.3rem ; height:0.3rem ;
    background-color:rgba(0,0,0,0.3) ;
    position:absolute ; left:0 ; top:1.3rem
}




 
/* PC **********/
@media all and (min-width:1100px){

    .K22__line { position:relative ; padding:5rem 0 }
    .K22__line::before , .K22__line::after { 
        display:block ; content:"" ;
        width:30% ; height:1px ; background-color:rgba(0,0,0,0.1) ;
        position:absolute ; top:50% ; z-index:-1 ;
    }
    .K22__line::after { right:0 }
    .K22__line > p::before { display:none }
    .K22__line > p {
        display:inline-block ;  background-color:#ffffff ;
        border:solid 1px rgba(0,0,0,0.1) ; box-sizing:border-box ;
        border-radius:3rem ; padding:0 1rem 0 8.5rem
    }
    .K22__line span , .K22__line b {
        display:inline-block ;
        font-size:1.8rem ; line-height:2.2rem ;
        padding:0.6rem 1.5rem 0.8rem ;

    }
    .K22__line span {  
        position:absolute ; left:-2px ; top:0 ;
        background-color:#111111
    }



    /* ADD */ 
    #item3 .K22__line::before , #item3 .K22__line::after { width:9% }
    #item15 .K22__line::before , #item15 .K22__line::after { width:20% }

    #item14 .K22__line > p  { padding:0 ; border-radius:0.6rem ; overflow:hidden ; }
    #item14 .K22__line span , #item14 .K22__line b { display:block }
    #item14 .K22__line span { position:static ; margin:0 ; border-radius:0 }
    #item14 .K22__line b    { box-sizing:border-box ; padding:0.8rem 1.5rem 1rem }
    #item14 .K22__line::before , #item14 .K22__line::after { top:8.6rem }



    /* TABLE */
    #K22__table1 td:first-child { width:10% }
    #K22__table1 ul { margin:0 1rem }
 
} 
 