@charset "UTF-8";

/* for-company */

/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@
@	[ 共通設定 ]
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/

.t-section {
    padding: 50px 0;
    @media screen and ( max-width: 767px ) {
        padding: 20px 0;
    }
    .box:last-child {
        margin-bottom: 0;
    }
}

.t-cta {
    padding: 40px;
    background-color: #51A700;
    color: #fff;
    @media screen and ( max-width: 767px ) {
        padding: 40px 10px;
    }
    .t-khd {
        margin-bottom: 20px;
    }
    ul {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        @media screen and ( max-width: 767px ) {
            display: block;
        }
        li {
            flex-basis: calc((100% - 20px) / 2);
            @media screen and ( max-width: 767px ) {
                margin-bottom: 20px;
            }
            a {
                padding: 20px;
                display: block;
                text-align: center;
                border: 1px solid #fff;
                border-radius: 10px;
                color: #fff;
                text-decoration: none;
                font-size: 2.0rem;
                transition: all 0.8s ease;
                -webkit-transition: all 0.8s ease;
                -moz-transition: all 0.8s ease;
                -o-transition: all 0.8s ease;
                z-index: 100;
                &:hover {
                    background-color: #fff;
                    color: #51A700;
                }
            }
        }
    }
}

.t-khd {
    font-size: 26px;
    color: #51A700;
    text-align: center;
    @media screen and ( max-width: 767px ) {
        font-size: 20px;
    }

    span {
        padding: 0 40px;
        display: inline-block;
        font-weight: bold;
        position: relative;
        line-height: 1.2;
        @media screen and ( max-width: 767px ) {
            padding: 0 30px;
        }
        &:before,
        &:after {
            content: '';
            width: 26px;
            height: 26px;
            border-top: 1px solid #51A700;
            width: 36px;
            transform: rotate(45deg);
            transform-origin: 0% 0%;
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            margin: auto;
            @media screen and ( max-width: 767px ) {
                width: 20px;
                height: 20px;
                width: 28px;
            }
        }
        &:after {
            transform: rotate(-45deg);
            left: auto;
            right: 0;
            transform-origin: top right;
        }
    }

    &.-white {
        color: #fff;
        span {
            &:before,
            &:after {
                border-color: #fff;
            }
        }
    }
}

.t-frame {
    padding: 20px;
    border: 2px dotted #51A700;
    border-radius: 10px;
    @media screen and ( max-width: 767px ) {
        padding: 10px;
    }
    p.text {
        margin-bottom: 0;
    }
}

.t-clm {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    @media screen and ( max-width: 767px ) {
        display: block;
    }
    li {
        width: calc((100% - 20px) / 2);
        @media screen and ( max-width: 767px ) {
            margin-bottom: 14px;
            width: 100%;
        }
    }
}

.t-point {
    padding: 30px;
    background-color: #fafafa;
    border-radius: 10px;
    ._num {
        display: block;
        margin-bottom: 8px;
        font-family: 'Poppins', sans-serif;
        color: #51A700;
        opacity: 0.5;
    }
}

.t-ttl_1 {
    padding: 0 0 10px 0;
    border-bottom: 1px solid #51A700;
    color: #51A700;
}

.t-menu {
    padding: 30px;
    border: 2px dotted #51A700;
    border-radius: 10px;
    @media screen and ( max-width: 767px ) {
        padding: 15px;
        margin: 0 10px 20px 10px;
    }
    .t-ttl_1 {
        margin-bottom: 20px;
        text-align: center;
        span {
            display: flex;
            justify-content: center;
            align-items: center;
            i {
                margin: 0 10px 0 0;
                display: inline-block;
                width: 40px;
                height: 40px;
                background-color: #51A700;
                color: #fff;
                font-family: 'Poppins', sans-serif;
                display: flex;
                justify-content: center;
                align-items: center;
                border-radius: 50%;
            }
        }
    }
    ._table {
        text-align: center;
        th {
            width: 50%;
        }
        &.-auto {
            th {
                width: auto;
            }
        }
        @media screen and ( max-width: 767px ) {
            table.table01 {
                th, td {
                    display: table-cell;
                    border: 1px solid #ddd !important;
                }
            }
        }
    }
    .left_right {
        .left_cont, .right_cont {
            @media screen and ( max-width: 767px ) {
                float: none;
                width: 100%;
            }
        }
        .left_cont {
            @media screen and ( max-width: 767px ) {
                margin-bottom: 20px;
            }
        }
    }

}

.t-flow {
    @media screen and ( max-width: 767px ) {
        padding: 0 10px;
    }
    ._item {
        margin-bottom: 10px;
        padding-bottom: 20px;
        background: url('../../_images/for-company/triangle.svg') bottom center no-repeat;
        &:last-child {
            padding-bottom: 0;
            margin-bottom: 0;
            background: none;
        }
    }
    dl {
        padding: 20px;
        border: 2px solid #51A700;
        border-radius: 10px;
        display: flex;
        align-items: center;
        font-size: 18px;
        @media screen and ( max-width: 767px ) {
            font-size: 14px;
        }

        dt {
            padding: 0 2.0rem 0 0;
            margin: 0 2.0rem 0 0;
            border-right: 1px solid #51A700;
            font-family: 'Poppins', sans-serif;
            color: #51A700;
            white-space: nowrap;
        }
        dd {
            p {
                line-height: 1.4;
                span {
                    display: inline-block;
                    padding: 0 0 0 7px;
                    margin: 0 0 0 7px;
                    font-size: 82%;
                    position: relative;
                    &:before {
                        content: '';
                        width: 4px;
                        height: 1px;
                        background-color: #51A700;
                        position: absolute;
                        top: 0;
                        bottom: 0;
                        left: 0;
                        margin: auto;
                    }
                }
            }
        }
    }
}

.t-narrow {
    margin: 0 auto;
    width: 600px;
    @media screen and ( max-width: 767px ) {
        width: 100%;
    }
}

.faq_block {
	padding-bottom: 20px;
	margin-bottom: 30px;
	border-bottom: 1px solid #ddd;
}
.faq_heading {
	padding: 10px 0 10px 50px;
	margin-bottom: 20px;
	background: url(../../_images/_common/icons/ico_qa_q.png) left center no-repeat;
	color: #57A31E;
	font-size: 1.6em;
    @media screen and ( max-width: 767px ) {
        font-size: 18px;
        padding-left: 40px;
        background-size: 30px 30px;
    }
}
.faq_block p {
    padding-top: 8px;
	padding-left: 50px;
	background: url(../../_images/_common/icons/ico_qa_a.png) 0px 0px no-repeat;
	min-height: 50px;
    @media screen and ( max-width: 767px ) {
        padding-left: 40px;
        background-size: 30px 30px;
    }
}

#contact {
    .form_set02 {
        input[type=text],
        input[type=tel],
        textarea {
            width: 100%;
        }

        ._note {
            margin-bottom: 10px;
            margin-top: 5px;
        }
    }
}

@media screen and ( max-width: 767px ) {
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@
@	[ モバイル用設定 ]
@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/

/*==================================================
	$sp_
==================================================*/



/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
}

/*==================================================

	[ utility ] $clearfix

==================================================*/

.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}