/*.keyvisual_sub .keytxt {
    top: 40%;
    left: 50%;
    transform:translateX(-50%);
}*/
h5.detail_title{
    position: relative;
    width: 100%;
    margin: 0 auto 50px;
    padding: 0 0 30px;
    border-bottom:1px solid #CFCFCF;
    text-align: center;
    font-weight: bold;
}
h5.detail_title:after{
    position: absolute;
    content: "";
    left: 50%;
    bottom: -2px;
    width: 80px;
    margin: 0 0 0 -40px;
    border-bottom: 2px solid #234575;
}
p{
    font-size:18px;
    line-height:2;
    margin-bottom:0.5em;
}
p.detail_sub_title{
    font-size:18px;
    line-height:2;
    margin:2em 0 0.5em 0;
    font-weight:600;
}
@media screen and (max-width: 769px){
    p{
        font-size:16px;
        line-height:1.8;
    }
    p.detail_sub_title{
        font-size:16px;
        line-height:1.8;
    }
}
@media screen and (max-width: 471px){
    p{
        line-height:1.6;
        margin-bottom:0.3em;
    }
    p.detail_sub_title{
        line-height:1.6;
        margin:2em 0 0.3em 0;
    }
}

.keyvisual_sub .keyimg:after {
    background-color: rgba(0, 0, 0, 0.3);
    height: 100%;
    width: 100%;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
}
.keyvisual_sub .keytxt {
    z-index:2;
}

.details{
    margin:100px auto;
}
@media screen and (max-width: 769px){
    .details{
        margin:60px auto;
    }
}

.lead h4{
    font-weight:600;
    text-align:center;
    padding:0 50px;
    box-sizing: border-box;
    margin-bottom:50px;
}
@media screen and (max-width: 769px){
    .lead h4{
        padding:0 15px;
    }
}
@media screen and (max-width: 471px){
    .lead h4{
        padding:0;
    }
}

.detail_table{
    margin:60px auto;
    width:100%;
    border-collapse:collapse;
}
.detail_table th{
    border-top:1px solid #CFCFCF;
    text-align:left;
    vertical-align:top;
    padding:30px 0 30px 50px;
    font-size:18px;
    line-height:2;
}
.detail_table td{
    border-top:1px solid #CFCFCF;
    padding:30px 50px;
    font-size:18px;
    line-height:2;
}
@media screen and (max-width: 961px){
    .detail_table th{
        padding:25px 0 25px 15px;
        font-size:16px;
        line-height:1.8;
    }
    .detail_table td{
        padding:25px 15px;
        font-size:16px;
        line-height:1.8;
    }
}
@media screen and (max-width: 471px){
    .detail_table th{
        line-height:1.6;
    }
    .detail_table td{
        line-height:1.6;
    }
}



.detail_box{
    margin:0 auto 100px;
}
.txtBox{
    padding:0 50px;
    box-sizing: border-box;
}
.txtBox>p:first-child{
    margin:80px 0;
}
.detail_sub_box{
    margin-bottom:80px;
    border-top:1px solid #CFCFCF;
}
.txtBox>.detail_sub_box:first-child{
    border-top:none;
}

@media screen and (max-width: 769px){
    .detail_box{
        margin:0 auto 50px;
    }
    .txtBox{
        padding:0;
        width:92%;
        margin:0 auto;
    }
    .txtBox>p:first-child{
        margin:50px 0;
    }
    .detail_sub_box{
        margin-bottom:50px;
    }
}


.list{
    margin:1.5em auto 80px;
}
.list li{
    margin:0 0 30px;
}
.list li p{
    margin-left:1.5em;
}
.list li p:first-child{
    border-bottom:1px solid #CFCFCF;
    margin-left:0;
}
@media screen and (max-width: 769px){
    .list{
        margin:1.5em auto 60px;
    }
    .list li p{
        margin-left:0.5em;
    }
}

.indent{
    padding-left:1em;
    text-indent:-1em;
}
.indent2{
    padding-left:2em;
    text-indent:-2em;
}
.indent3{
    padding-left:2em;
}

.detail_revision{
    text-align: right;
    display: block;
    margin-bottom: 25px;
}