@charset "UTF-8";
/* CSS Document */
/*---------------------------------

  導入

---------------------------------*/
.indroduction_wrapper{
    margin-bottom: 80px;
}
.indroduction_inner{
    width: 80%;
    max-width: 800px;
    margin: 0 auto;
}
.indroduction_inner h3{
    text-align: center;
    margin-bottom: 20px;
    font-size: 22px;
    line-height: 1.6em;
    font-weight: 500;
}
.indroduction_inner h3 span {
    color: #1dc765;
}


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

  流れ

---------------------------------*/
.flow_wrapper h3{
    text-align: center;
    margin-bottom: 40px;
    font-size: 20px;
    line-height: 1.6em;
    font-weight: 500;
}
.flow_wrapper h3 span {
    color: #1dc765;
}
.flow_wrapper{
    margin-bottom: 80px;
}
.flow_inner{
    width: 90%;
    max-width: 1100px;
    margin: 0 auto;
}
.flow_column{
    display: flex;
    flex-wrap: wrap;
}
.flow_box{
    border: solid 2px #1dc765;
    border-radius: 10px;
    width: calc(33.333% - 6%);
    margin: 0 3% 4% 3%;
    position: relative;
    min-height: 240px;
}
.flow_box::after{
    content: '';
    position: absolute;
    top: 50%;
    right: -14%;
    transform: translateY(-50%);
    background-image: url("../img/contract-renewal/triangle.png");
    background-repeat: no-repeat;
    background-size: 14px auto;
    background-position: center;
    width: 14px;
    height: 24px;
}
.flow_box:last-of-type::after{
    display: none;
}
.flow_box .icon{
    position: absolute;
    left: -5%;
    top: -5%;
    color: #fff;
    font-size: 26px;
    text-align: center;
    font-family: 'Montserrat', 'Century Gothic', sans-serif;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background-color: #1dc765;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1em;
}
.flow_box .icon span{
    font-size: 14px;
    display: block;
    line-height: 1em;
}
.flow_heading{
    padding: 35px 35px 15px;
    font-size: 18px;
    text-align: center;
    font-weight: 500;
}
.flow_heading p{
    text-align: left;
	display: inline-block;
}
.flow_text{
    padding: 0 25px 25px;
    font-size: 14px;
    line-height: 1.6em;
}
.flow_text p{
    margin-bottom: 10px;
}
.flow_text p:last-of-type{
    margin-bottom: 0;
}
.circle{
    padding-left: 14px;
    position: relative;
}
.circle::before{
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #1dc765;
}
.pdf{
    text-align: center;
    font-weight: 500;
}
.pdf a{
    font-weight: 500;
    color: #3ccb9c;
    border-bottom: solid 1px #3ccb9c;
    display: inline-block;
    padding-right: 4px;
    line-height: 1.6em;
    transition: .35s;
}
.pdf a:hover{
    opacity: .7;
}


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

  ご利用にあたって

---------------------------------*/
.guide_wrapper{
    background-color: #f8f8f8;
    padding: 45px 0;
    margin-bottom: 100px;
}
.guide_inner{
    width: 80%;
    max-width: 700px;
    margin: 0 auto;
}
.guide_inner h3{
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    padding-bottom: 30px;
}
.guide_inner dl{
    padding-bottom: 20px;
    font-size: 15px;
    line-height: 1.6em;
}
.guide_inner dl dt{
    padding-left: 30px;
    position: relative;
}
.guide_inner dl dt::before {
    content: '';
    position: absolute;
    left: 0;
    top: 3px;
    width: 20px;
    height: 20px;
    background: url(../img/customer-policy/check.png) center / 20px auto no-repeat;
    transition: .35s;
}
.guide_inner dl dd{
    padding-left: 30px;
}
.guide_inner dl:last-of-type dt span{
    font-weight: 500;
    border-bottom: solid 2px #1dc765;
    font-size: 16px;
    line-height: 1.8em;
}
.guide_inner dl dd table{
    width: 100%;
    margin-top: 10px;
}
.guide_inner dl dd table tr th{
    background-color: #3ccb9c;
    border-bottom: solid 1px #f8f8f8;
    border-right: solid 8px #f8f8f8;
    padding: 10px;
    color: #fff;
    font-weight: 500;
    text-align: left;
}
.guide_inner dl dd table tr td{
    background-color: #fff;
    padding: 10px;
    border-right: solid 8px #f8f8f8;
}
.guide_inner dl dd table tr th:last-of-type, .guide_inner dl dd table tr td:last-of-type{
    border-right: none;
}


@media print, screen and (max-width: 900px) {
    .flow_box {
        width: calc(50% - 6%);
        margin: 0 3% 4% 3%;
    }
    .flow_box::after {
        right: -10%;
    }
}


@media print, screen and (max-width: 750px) {
    .indroduction_inner {
        width: 100%;
        max-width: 600px;
        padding: 0 20px;
    }
    .indroduction_inner h3 {
        margin-bottom: 15px;
        font-size: 18px;
        text-align: left;
    }
    .indroduction_inner h3 br{
        display: none;
    }
    .indroduction_wrapper {
        margin-bottom: 40px;
    }
    .explain_wrapper {
        width: 100%;
        max-width: 600px;
        padding: 0 20px;
        display: block;
        margin-bottom: 40px;
    }
    .flow_inner {
        width: 100%;
        max-width: 600px;
        padding: 0 20px;
    }
    .flow_wrapper h3 {
        margin-bottom: 30px;
    }
    .flow_box {
        width: calc(100%);
        margin: 0 0 40px 0;
        min-height: inherit;
    }
    .flow_box:last-of-type{
        margin: 0 0 20px 0;
    }
    .flow_box::after {
        right: -10%;
    }
    .flow_box::after {
        content: '';
        position: absolute;
        top: auto;
        bottom: -35px;
        right: auto;
        left: 50%;
        transform: translateX(-50%) rotate(90deg);
    }
    .flow_box .icon {
        left: -10px;
        top: -30px;
    }
    .flow_heading {
        padding: 30px 20px 15px;
        font-size: 16px;
        line-height: 1.6em;
    }
    .flow_text {
        padding: 0 20px 25px;
        font-size: 14px;
        line-height: 1.6em;
    }
    .flow_text p {
        margin-bottom: 6px;
    }
    .pdf {
        text-align: left;
    }
    .flow_wrapper {
        margin-bottom: 40px;
    }




























    .guide_wrapper {
        padding: 40px 0;
        margin-bottom: 60px;
    }
    .guide_inner {
        width: 100%;
        max-width: 600px;
        padding: 0 20px;
    }
    .guide_inner h3 {
        padding-bottom: 15px;
    }
    .guide_inner dl dt {
        padding-left: 26px;
    }
    .guide_inner dl dd {
        padding-left: 26px;
    }
    .guide_inner dl:last-of-type dt span{
        font-size: 15px;
        line-height: 1.6em;
    }
    .guide_inner dl:last-of-type dt span br{
        display: none;
    }
    .guide_inner dl {
        padding-bottom: 15px;
    }
    .guide_inner dl:last-of-type{
        padding-bottom: 0;
    }
    .guide_inner dl dd table caption{
        display: block;
        font-weight: 600;
        color: #3ccb9c;
        padding-bottom: 5px;
        text-align: left;
    }
    .guide_inner dl dd table {
        margin-top: 0px;
    }
    .guide_inner dl dd table tbody{
        display: table;
        width: 100%;
    }
    .guide_inner dl dd table tr th{
        display: block;
        width: 100%;
    }
    .guide_inner dl dd table tr td{
        display: block;
        width: 100%;
    }










}
