@charset "utf-8";


/* -----------------------------------------------------------
    法人のお客様
-------------------------------------------------------------- */
#corporation{}

#corporation .h1-area,
#corporation .breadcrumblist{
    top: 690px;
}

#corporation .section-title{
    text-align: center;
}

/* slick */
#corporation .slick-prev,
#corporation .slick-next {
    z-index: 5;
}

#corporation .slick-prev:before,
#corporation .slick-next:before {
    color: #fff;
}

@media screen and (max-width: 667px){
	
    #corporation .section-title{
        text-align: left;
    }
}


/* -----------------------------------------------------------
    mv-area
-------------------------------------------------------------- */
.mv-block{
    width: 100%;
    height: 650px !important;
}

.mv-block a{
    display: block;
}

/* slick */
.mv-area .slick-prev{
    left: 40px;
}
.mv-area .slick-next{
    right: 40px;
}

/* 各スライド */
.mv-block.mv01{
    background: url("../img/lp_mv.jpg") no-repeat center left / cover;
}
.mv-block.mv02{
    background: url("../img/lp_mv.jpg") no-repeat center left / cover;
}
.mv-block.mv03{
    background: url("../img/lp_mv.jpg") no-repeat center left / cover;
}
.mv-block.mv04{
    background: url("../img/lp_mv.jpg") no-repeat center left / cover;
}
.mv-block.mv05{
    background: url("../img/lp_mv.jpg") no-repeat center left / cover;
}
.mv-area .sp-img{
    display: none;
}

@media screen and (max-width:667px){
	
	.mv-block{
        height: auto!important;
    }

    /* slick */
    .mv-area .slick-prev{
        left: 20px;
    }
    .mv-area .slick-next{
        right: 20px;
    }
    .mv-area .slick-prev,
	.mv-area .slick-next{
        display: none!important;
    }
	
    .mv-txt{
        display: none;
    }

	.mv-area .sp-img{
		display: block;
		text-align: center;
	}
    	
	.mv-block.mv01,
	.mv-block.mv02,
	.mv-block.mv03,
	.mv-block.mv04,
	.mv-block.mv05{
		background: none;
	}


}
/*    topics-area
-------------------------------------------------------------- */
.topics-area{
    position: relative;
    margin-bottom: 80px;
}
.topics-area::before{
    content: '';
    display: block;
    width: 100%;
    height: 900px;
    position: absolute;
    top: 105px;
    left: 0;
    z-index: -1;
}

.topics-wrap{
    display: flex;
    width: 100%;
    justify-content: center;
    margin: 30px auto 0;
	max-width: 1460px;
    justify-content: space-between;
}
.topics-wrap > li{
    margin: 0 20px 0 0;
}
.topics-wrap > li:last-of-type{
    margin: 0;
}

.topics-wrap a{
    display: block;
}

.topics-wrap img{
	width: 280px;
}

@media screen and (max-width: 667px){

    .topics-area{
        padding: 0 20px;
    }
    .topics-area::before{
        height: 770px;
        top: 10px;
    }
    
    .topics-area .scroll-wrap{
        margin: 0 -20px 0 0;
    }

    .topics-wrap{
        flex: 1;
        justify-content: flex-start;
        margin: 20px 0;
		max-width: inherit;
    }
    .topics-wrap > li{
        margin: 0 15px 0 0;
    }

    .topics-wrap img{
        width: 295px;
    }
}


/*    point-area
-------------------------------------------------------------- */
.point-area{
    padding: 50px 0 0;
}

/* point-wrap */
.point-wrap{
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: 40px 0 0;
}

.point-wrap > li{
    width: 350px;
    text-align: center;
}

.point-title{
    font: 500 1.8rem / 1.5 'Noto Sans JP', sans-serif;
    margin: 25px 0 15px;
}

.point-wrap .basic-txt{
    text-align: left;
}

/* point-link-wrap */
.point-link-wrap{
    display: flex;
    justify-content: space-between;
	padding: 0 0 80px;
}

.point-link-wrap > li{
    width: 500px;
}

.point-link-wrap a{
    display: flex;
    width: 100%;
    align-items: center;
    border-bottom: 1px solid #000;
    padding: 0 0 10px;
    position: relative;
}
.point-link-wrap a::after{
    display: block;
    content: "\f107";
    color: #666;
    font: 900 1.6rem / 1 "Font Awesome 5 Free";
    position: absolute;
    top: calc((100% - 1em) / 2);
    right: 20px;
}

.point-link-icon img{
    width: auto;
    height: 57px;
}

.point-link-title{
    font: 500 1.8rem / 1 'Noto Sans JP', sans-serif;
    margin: 0 0 0 20px;
}

@media screen and (max-width: 667px){

    .point-area{
        padding: 20px 20px 0;
    }

    /* point-wrap */
    .point-wrap{
        display: block;
        margin: 20px 0;
    }

    .point-wrap > li{
        width: 100%;
        text-align: left;
        margin: 0 0 20px;
		/*
        position: relative;
		*/
    }
    .point-wrap > li:last-of-type{
        margin: 0;
    }
    
	.point-wrap .sp-wrap{
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 0 15px;
	}
    .point-img{
		/*
        position: absolute;
        top: 0;
        left: 0;
		*/
    }
    .point-img img{
        width: 120px;
    }

    .point-title{
        font-size: 1.7rem;
        padding: 0;
		line-height: 1.5;
        margin: 0;
		width: calc(100% - 130px);
    }
    .point-wrap > li:first-of-type .point-title{
        padding: 0;
    }
	.point-wrap .basic-txt{
		font-size: 1.5rem;
	}
	
    /* point-link-wrap */
    .point-link-wrap{
        display: block;
		padding: 0 0 40px;
    }

    .point-link-wrap > li{
        width: 100%;
        margin: 0 0 10px;
    }
    .point-link-wrap > li:last-of-type{
        margin: 0;
    }

    .point-link-icon{
        width: 53px;
        text-align: center;
    }
    .point-link-icon img{
        height: 45px;
    }

    .point-link-title{
        font-size: 1.6rem;
    }
}


/*    products-area
-------------------------------------------------------------- */
.products-area{
	padding: 80px 0 0;
}

/* style */
#corporation .style-area{
    background: #fff;
    padding: 0;
}


@media screen and (max-width: 667px){

	.products-area{
		padding: 20px 20px 0;
	}

	.products-area .section-title {
		margin: 0 0 -20px;
	}
	
	/* style */
	#corporation .style-area{
		padding: 0 20px;
	}

}


/*    service-area
-------------------------------------------------------------- */
.service-area{
    padding: 90px 0 0;
}

.service-area .section-title{
    position: relative;
    top: 20px;
    z-index: 2;
}

/* ikekomi-block */
.ikekomi-block{
    width: 100%;
    background: #f9f9f9;
    padding: 70px 0 210px;
    position: relative;
}

.ikekomi-img{
    width: calc(100% - (95px * 2));
    max-width: 1415px;
    margin: 0 auto;
}

.ikekomi-txt-block{
    width: 825px;
    background: #fff;
    padding: 55px 65px;
    position: absolute;
    bottom: 55px;
    left: calc((100% - 1600px) / 2 + 205px);
    z-index: 2;
}

.service-title{
    font: 500 2.8rem / 1 'Noto Sans JP', sans-serif;
    margin: 0 0 30px;
}

/* service-wrap */
.service-wrap{
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}

.service-wrap > li{
    width: 50%;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: cover;
    padding: 110px 40px 110px;
}
.service-wrap > li.oiwai{
    color: #fff;
    background-image: url("../img/corporation-oiwai.jpg");
}
.service-wrap > li.okuyami{
    background-image: url("../img/corporation-okuyami.jpg");
}
.service-wrap > li.kanyo{
    background-image: url("../img/corporation-kanyo.jpg");
}
.service-wrap > li.other{
    color: #fff;
    background-image: url("../img/corporation-other.jpg");
}

.service-wrap .service-title{
    font-size: 2.4rem;
    margin: 0 0 40px;
}

.service-wrap .basic-txt{
    width: 320px;
}

.service-wrap .sp-img{
	display: none;
}

@media screen and (max-width: 667px){

    .service-area{
        padding: 0;
    }

    .service-area .section-title{
        top: 15px;
        left: 20px;
    }

    /* ikekomi-block */
    .ikekomi-block{
        width: 100%;
        background: #f5f5f5;
        padding: 30px 10px 20px;
        position: relative;
    }

    .ikekomi-img{
        width: 100%;
		padding: 0 10px;
		max-width: inherit;
		/*
        max-width: none;
		*/
    }

    .ikekomi-txt-block{
        width: 100%;
        padding: 25px 10px 5px;
        position: static;
        bottom: 0;
        left: 0;
		background: none;
    }

    .service-title,
    .service-wrap .service-title{
        font-size: 2rem;
        margin: 0 0 15px;
    }

    /* service-wrap */
    .service-wrap{
        display: block;
    }

    .service-wrap > li{
        width: 100%;
        padding: 30px 20px;
    }

	.service-wrap > li.oiwai,
	.service-wrap > li.okuyami,
	.service-wrap > li.kanyo,
	.service-wrap > li.other{
		color: #333;
		background-image: none;
	}
	
	.service-wrap > li.okuyami,
	.service-wrap > li.other{
		background: #f5f5f5;
	}
	
    .service-wrap .basic-txt{
        width: 100%;
		font-size: 1.5rem;
    }
	
	.service-wrap .sp-img{
		display: block;
		text-align: center;
		padding: 0 0 25px;
	}
	
}


/*    voice-area
-------------------------------------------------------------- */
.voice-area{
    width: 100%;
    background: url("../img/corporation-voice-bg.jpg") no-repeat center / cover;
    padding: 85px 0 100px;
    margin: 100px 0 0;
    position: relative;
}

.voice-area .section-title{
    position: absolute;
    top: -15px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 2;
}

/* voice-block */
.voice-block > li{
    min-height: 590px;
    background: #fff;
    box-shadow: 0 0 20px 0 rgba(213, 209, 208, 0.6);
    padding: 45px 45px 50px;
    margin: 0 0 70px;
    position: relative;
}
.voice-block > li:last-of-type{
    margin: 0;
}

.voice-cate{
    display: inline-block;
    color: #fff;
    font-weight: bold;
    padding: 12px 20px;
    position: absolute;
    top: -20px;
    left: 50px;
    z-index: 2;
}

.voice-cate.blue{
    background: #5c98db;
}

.voice-cate.green{
    background: #98db5c;
}

.voice-cate.orange{
    background: #db7a5c;
}

.voice-cate.purple{
    background: #ad81c4;
}

.voice-cate.pink{
    background: #db5c71;
}

.voice-cate.yellow{
    background: #cdc72c;
}

.voice-title{
    font: bold 2.6rem / 1.3 'Noto Sans JP', sans-serif;
}

.voice-name{
    margin: 20px 0 40px;
}

/* voice-slick */
.voice-slick{
    width: 550px !important;
    position: absolute !important;
    top: 45px;
    right: 45px;
}

.voice-slick .slick-prev{
    left: 20px;
}
.voice-slick .slick-next{
    right: 20px;
}

/* voice-dl */
.voice-dl{
    width: 500px;
    margin: 0 0 25px;
}
.voice-dl:last-of-type{
    margin: 0;
}

 .voice-dl dt{
    font: 500 1.8rem / 1 'Noto Sans JP', sans-serif;
    border-bottom: 1px solid #000;
    padding: 0 0 10px;
    margin: 0 0 10px;
}
.voice-dl dt::before{
    content: '―';
    color: #afafaf;
    padding: 0 5px 0 0;
}

@media screen and (max-width: 667px){


    
    .voice-area{
        background: #e1e1e1;
        padding: 40px 10px;
        margin: 0;
    }

    .voice-area .section-title{
        position: static;
        padding: 0 0 30px 10px;
    }

    /* voice-block */
    .voice-block > li{
        min-height: 100%;
        box-shadow: none;
        padding: 30px 20px 20px;
        margin: 0 0 30px;
    }

    .voice-cate{
        font-size: 1.4rem;
        padding: 8px 13px 5px;
        top: -12px;
        left: 10px;
    }

    .voice-title{
        font-size: 1.8rem;
		line-height: 1.5;
    }

    .voice-name{
        margin: 5px 0 20px;
		font-size: 1.4rem;
		line-height: 1.5;
    }

    /* voice-slick */
    .voice-slick{
        width: 100% !important;
        position: relative !important;
        top: 0;
        right: 0;
        margin: 0 auto 20px;
    }

    .voice-slick .slick-prev{
        left: 10px;
    }
    .voice-slick .slick-next{
        right: 10px;
    }

    /* voice-dl */
    .voice-dl{
        width: 100%;
        margin: 0 0 20px;
    }
	
	.voice-dl dt{
		font-size: 1.6rem;
	}
	.voice-dl dd.basic-txt{
		font-size: 1.5rem;
	}
	
}


/*    flow-area
-------------------------------------------------------------- */
.flow-area{
    padding: 80px 0 0;
}

.flow-wrap{
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: 50px 0 0;
}

.flow-wrap > li{
    width: 250px;
    text-align: center;
}

.flow-num{
    width: 40px;
    height: 40px;
    font-size: 2rem;
    line-height: 40px;
    border: 2px solid #000;
    margin: 0 auto 20px;
}

.flow-title{
    font: 500 2rem / 1 'Noto Sans JP', sans-serif;
    margin: 20px 0 15px;
}

.flow-wrap .basic-txt{
    text-align: left;
	font-size: 1.5rem;
}

@media screen and (max-width: 667px){

    .flow-area{
        padding: 40px 20px 0;
    }

    .flow-wrap{
        display: block;
        margin: 25px 0 0;
    }

    .flow-wrap > li{
        display: flex;
        width: 100%;
        margin: 0 0 20px;
        position: relative;
    }
    .flow-wrap > li:last-of-type{
        margin: 0;
    }

    .flow-num{
        width: 35px;
        height: 35px;
        font-size: 2rem;
        line-height: 35px;
        background: #fff;
        margin: 0;
        position: absolute;
        top: -10px;
        left: -10px;
        z-index: 2;
    }
    
    .flow-img{
        flex-shrink: 0;
        width: 125px;
        margin: 0 10px 0 0;
    }

    .flow-title{
        font-size: 1.7rem;
        text-align: left;
        margin: 0 0 15px;
    }
	.flow-wrap .basic-txt{
		font-size: 1.5rem;
	}

	

}


/*    form
-------------------------------------------------------------- */
.corporation-form{
    padding: 40px 0 60px;
}
.corporation-form .section-title {
	padding: 0 0 40px;
}


.corporation-form #corporation_contact_corporation_contact_type label{
	display: inline-block;
	width: calc(100% - 50px);
}

.corporation-form .ec-errorMessage,
.corporation-form .ec-errorMessage{
    margin-bottom: 0;
	margin: 10px 0 0;
    font-size: 12px;
	color: #DE5D50;
	font-weight: bold;
}

.contact-cap-area {
    margin: 30px 0 0 0;
}

.contact-cap-area .cap-wrap {
    background: #f8f8f8;
    padding: 25px 40px;
}

.contact-cap-area .cap-wrap dt {
    border-bottom: 2px solid #333;
    font-size: 1.8rem;
    margin: 0 0 15px 0;
}

.contact-cap-area .cap-wrap dd {
    line-height: 1.8;
}

.contact-cap-area .cap-wrap dd a {
    color: #3fa6b1;
    text-decoration: underline;
}

.contact-cap-area .cap-wrap dd a:hover {
    text-decoration: none;
}

@media screen and (max-width: 667px){

	.corporation-form{
		padding: 20px 0 40px;
	}
	.corporation-form .section-title {
		padding: 0 0 20px 20px;
	}

    .contact-cap-area {
        margin: 0;
        padding: 0 20px;
    }

    .contact-cap-area .cap-wrap {
        padding: 20px;
        margin: 0 0 30px 0;
    }

    .contact-cap-area .cap-wrap dt {
        font-size: 1.6rem;
        margin: 0 0 10px 0;
        padding: 0 0 5px 0;
    }

    .contact-cap-area .cap-wrap dd {
        font-size: 1.5rem;
    }

	
}




