@charset "UTF-8";
.main_view{
    background:url(../images/mv.png);
    background-size:cover;
    background-position:center;
    width:100%;
    margin:0 auto 3%;
    padding:20% 0 20%;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
}
.main_view h1{
    background:rgba(34,34,34,0.6);
    color:#fff;
    font-size:1.8em;
    text-align:center;
    padding:2% 2%;
    margin:0 auto;
}
.main_content_inner {
    margin: 0 auto 8%;
}
.main_content_inner p{
    line-height:1.6em;
    padding:0 2%;
}
.main_content_inner dl{
    display:flex;
    flex-wrap:wrap;
}
.main_content_inner dl dt{
    border-bottom: 2px solid #333;
    width:25%;
    padding:10px 10px 10px 10px;
    margin:0 0 10px;
}
.main_content_inner dl dd{
    border-bottom: 1px solid #333;
    width:75%;
    padding:10px 10px 10px 10px;
    margin:0 0 10px;
}
.main_content_inner h2{
    border-bottom:4px solid #f95706;
    font-size:1.6em;
    font-weight:500;
    text-align:center;
    margin: 0 auto 3%;
    padding: 0 0 1% 0;
    width:100%;
    position:relative;
}
.main_content_inner h2 span{
    max-width:140px;
    width:27%;
    display:block;
    color:#fff;
    font-size:0.6em;
    text-align:center;
    position:absolute;
    top:50%;
    left:0;
    transform:translate(0,-50%);
    background:url(/images/common/bg_title_orange.svg);
    background-size:100%;
    background-repeat:no-repeat;
    background-position:center;
}
.main_content_inner h3{
    background: #262626;
    color: #fff;
    font-size: 1.1em;
    font-weight: 500;
    text-align: left;
    margin: 0 auto 3%;
    padding: 2% 20px;
    width: 100%;
}
.main_content_inner h3 span{
    background: #fff;
    color: #333;
    font-size: 0.7em;
    font-weight: 600;
    padding: 2px 10px;
    margin: 0 20px 0 0;
}
.main_content_inner ul.case_link{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    margin: 0 auto 5%;
    padding:0;
    width:100%;
}
.main_content_inner ul.case_link li{
    width:48%;
    margin: 0 auto 2%;
}
.main_content_inner ul.case_link li a{
    display:block;
    width:100%;
    text-align:center;
    padding: 25% 0;
    position:relative;
}
.main_content_inner ul.case_link li a b{
    background:rgba(0,0,0,0.6);
    color:#fff;
    padding:7px 0;
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    transform:translate(0,-50%);
}
.main_content_inner ul.case_link li:nth-child(1) a{
    background:url(../images/top01.jpg);
    background-size:cover;
    background-repeat:no-repeat;
}
.main_content_inner ul.case_link li:nth-child(2) a{
    background:url(../images/top02.jpg);
    background-size:cover;
    background-repeat:no-repeat;
}
.main_content_inner ul.case_link li:nth-child(3) a{
    background:url(../images/top03.jpg);
    background-size:cover;
    background-repeat:no-repeat;
}
.main_content_inner ul.case_link li:nth-child(4) a{
    background:url(../images/top04.jpg);
    background-size:cover;
    background-repeat:no-repeat;
}

.main_content_inner#reformpromise h2{
    border-bottom:none;
    position:relative;
    margin: 0 auto 5%;
    padding: 5% 0 0;
}
.main_content_inner#reformpromise h2:before,
.main_content_inner#reformpromise h2:after{
    content:"";
    background:#f95706;
    width:100%;
    height:4px;
    position:absolute;
    z-index:-1;
}
.main_content_inner#reformpromise h2:before{
    top:10px;
    left:0;
}
.main_content_inner#reformpromise h2:after{
    bottom:15px;
    left:0;
}
.main_content_inner#reformpromise h2 span{
    color:#333;
    font-size:1.1em;
    font-weight:500;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    width:fit-content;
    margin:0 auto;
    padding: 0 0 0 50px;
    position: relative;
    max-width:unset;
    background:unset;
}
.main_content_inner#reformpromise h2 span:before{
    content:"";
    background:url(/images/common/icon_title01.svg);
    background-repeat:no-repeat;
    background-size:100%;
    width:40px;
    height:72px;
    position:absolute;
    top:50%;
    left:0;
    transform:translate(0,-50%);
}
.main_content_inner#reformpromise p{
    margin: 0 auto 3%;
    padding:0;
    width:100%;
}
.main_content_inner#reformpromise img{
    display:block;
    margin: 0 auto 3%;
    padding:0;
    width:80%;
}
@media screen and (min-width:769px){}

@media screen and (max-width:768px){
    .main_content_inner#reformpromise h2 span{
        font-size: 1.0em;
    }
    .main_content_inner#reformpromise h2:before{
        top: -5px;
    }
}
