/* ===================================================================
toppage-css
=================================================================== */

/*	maincolumn
----------------------------------------------------*/

.navi li {
margin:0 0 5px 20px;
font-size:14px;
}

.navi li a {
color:#80331a;
text-decoration:underline;
}

.section01 {
margin:10px 0 20px 0;
}

.section01 p {
margin:10px 0 10px 20px;
font-size:12px;
}

.section01 p span {
color:#e83356;
font-weight:bold;
}

.section01 figure {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: space-between;
margin: 16px;
}

.section02 p {
margin:10px 0 10px 20px;
font-size:12px;
}

.section02 p span {
color:#e83356;
}

.section02 .img {
margin:20px 0;
}

.section02 table {
width:95%;
margin:0 auto;
border:1px solid #894A83;
}

.section02 th {
padding:10px;
width:175px;
text-align:center;
color:#fff;
font-size:14px;
background:#894A83;
border-left:1px solid #fff;
}

.section02 td {
padding:10px;
text-align:center;
font-size:13px;
border-left:1px solid #894A83;
border-bottom:1px solid #894A83;
}

.section02 .red {
color:#FF0000;
font-weight:bold;
}

.section02 .bg01 {
position:relative;
width:616px;
height:88px;
background:url(images/section02_bg01.png) no-repeat;
}

.section02 .bg01 .txt01 {
position:absolute;
top:15px;
left:185px;
width:160px;
}

.section02 .bg01 .txt02 {
position:absolute;
top:15px;
left:415px;
width:170px;
}

.section02 .bg01 .txt02 span {
color:#FF0000;
}


.section02 .bg02 {
position:relative;
width:616px;
height:91px;
background:url(images/section02_bg02.png) no-repeat;
}

.section02 .bg02 .txt01 {
position:absolute;
top:15px;
left:185px;
width:160px;
}

.section02 .bg02 .txt02 {
position:absolute;
top:0;
left:415px;
width:170px;
}

.section02 .bg02 .txt02 span {
color:#FF0000;
}


.section02 .bg03 {
position:relative;
width:616px;
height:89px;
border-bottom:1px solid #e83356;
background:url(images/section02_bg03.png) no-repeat;
}

.section02 .bg03 .txt01 {
position:absolute;
top:15px;
left:185px;
width:160px;
}

.section02 .bg03 .txt02 {
position:absolute;
top:5px;
left:415px;
width:170px;
}

.section02 .bg03 .txt02 span {
color:#FF0000;
}

.section02 .pc-module{
text-align: center;
margin-bottom: 0;
}

.section03 p {
font-size:13px;
margin-bottom:10px;
}

.section03 .bg {
position:relative;
width:616px;
height:563px;
margin:10px 0;
background:url(images/section03_bg01_v2.png) no-repeat;
}

.section03 .bg .txt01 {
position:absolute;
top:40px;
left:8px;
width:274px;
}

.section03 .bg .txt02 {
position:absolute;
top:40px;
left:315px;
width:274px;
}

.section03 .bg .txt03 {
position:absolute;
top:216px;
left:8px;
width:340px;
}

@media screen and (max-width: 768px) {
    .section01 p {
        margin: 0 0 20px;
        padding: 10px;
    }
    .section01 figure {
        -webkit-flex-direction: column !important; /* Safari */
        flex-direction:         column !important;
    }
    .section02 p {
        margin: 0;
        padding: 10px;
    }
    .section02__title {
        margin: 0 !important;
        padding:  0 0 0 5px !important;
        color: #fff;
        font-size: 17px !important;
        line-height: 30px;
        background-image: url(images/h2_02_bg.png);
    }
    .section02 table {
        width: 100%;
        margin: 0 auto 20px;
    }
    .section02 .sp-module img{
    width: 100%;
    }
    .section02 .sp-module{
        margin-bottom: 30px !important;
        padding: 0 20px;
        text-align: center;
    }
    .section02-before,
    .section02-arrow,
    .section02-after {
        display: block;
        margin: 0 auto;
    }
    .section02-before,
    .section02-after { max-width: 360px; }
    .is-red { color: #f00;}
    .section02__comparison-table {
        border-spacing: 0;
    }
    .section02__comparison-table tr > th:nth-child(odd) {
        border-left: none;
    }
    .section02__comparison-table tr > td:nth-child(odd) {
        border-left: none;
    }
    .section02__comparison-table tr:last-child > td { border-bottom: none; }
    .section03__flow__area {
        margin-bottom: 20px;
    }
    .section03__flow__index {
        font-size: 20px !important;
        color: #e83356;
    }
    .section03__flow__img-list {
        text-align: center;
    }
    .section03__flow__img-list__item {
        width: 100%;
        margin-bottom: 10px;
    }
}