
.mv{
	position: relative;
}

.mv:before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 150px;
    /* background: red; */
    width: 100%;
    /* height: 82%; */
    height: 412px;
    z-index: -1;
}

.mv__img{
	width: 72%;
	margin-left: auto;
}

.mv__img img{
	height: 560px;
	object-fit:  cover;
}

.mv__catch{
	display: inline-block;
	position: absolute;
	top: 55%;
}

.mv__catch p{
	font-size: 30px;
    background: linear-gradient(transparent 2%, #FF2525 3%);
    padding-bottom: 5px;
    color: #ffffff;
    margin-bottom: 10px;
    padding: 10px 20px;
    line-height: 1.2;
    color: #ff2525;
    color: #ffffff;
    /* background: linear-gradient(transparent 2%, #ffffff 3%); */
}

.mv__projectName{
    color: #ffffff;
	font-size: 62px;
    font-weight: bold;
    font-family: "Futura";
    position: absolute;
    /* left: 0; */
    color: #FF2525;
    top: 130px;
    line-height: 1.2;
	/* margin-left: auto; */
}

.concept__catch{
    /* width: 77%; */
	margin: 0 auto;
    padding-left: 13%;
    font-size: 42px;
    line-height: 1.8;
    position: relative;
    color: black;
}

.concept__img{
	/* width: 48%; */
	width: 50%;
    margin-top: 70px;
    margin: 70px auto;
}

.concept__img img{
    object-fit: cover;
    height: 400px;
}

.concept__catch span{
	margin-bottom: 30px;
}

.concept .item-text__desc{
	line-height: 2;
    font-size: 20px;
	font-weight: bold;
}

.concept .item-text__headline{
	margin-bottom: 24px;
	font-size: 30px;
	font-weight: bold;
}

.concept:before{
    content: "";
    display: block;
    background: #F5F6F8;
    position: absolute;
    right: 0;
    width: 520px;
    top: 58%;
    z-index: -1;
}

.concept__catch:before{
    content: "";
    display: block;
    position: absolute;
    width: 50px;
    background: #FF2525;
    height: 3px;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.service .common-inner{
	max-width: 1040px;
	display: flex;
}

.service-box:nth-of-type(odd) .common-inner{
	justify-content: space-between;
	justify-content: flex-end;
}

.service-box:nth-of-type(even) .common-inner{
    justify-content: start;
}


.service .section-headline{
	width: 90%;
    max-width: 1150px;
    margin: 0 auto;
}

.service .box{
    margin: 40px 0 70px;
	position: relative;
	overflow: hidden;
}

.service .item-text__headline:before{
	content: "";
    display: block;
    background: #f3f3f3;
    background: #f5f5f5;
    position: absolute;
    width: 380px;
    top: 20px;
    /* left: 60px; */
    height: 250px;
    z-index: -1;
    height: 250px;
    width: 120px;
    height: 120px;
    right: 0;
}

.service .box:nth-of-type(odd):before{
    left: 0;
}

.service .box:nth-of-type(even):before{
    right: 0;
}

.serivce-box:nth-of-type(even) .item-img:before{
	top: 10px;
    left: -60px;
}

.service .item-text{
	/* width: 550px; */
	/* width: 51%; */
	max-width: 550px;
}

.concept{
	position: relative;
}

.concept__projectName{
	font-size: 80px;
    font-weight: bold;
    margin-left: auto;
    text-align: right;
    line-height: 1.2;
}

.service .item-text__desc span{
	font-size: 18px;
	font-weight: bold;
}

.concept .box{
	/* position: relative; */
	margin-top: 80px;
    justify-content: space-around;
    justify-content: space-evenly;
    align-items: center;
}

.concept .item-img{
	width: 80%;
	max-width: 330px;
}

.service .item-img{
	position: relative;
}

.company{
	position: relative;
}

.company:before{
	content: "";
    display: block;
    left: 0;
    top: 5%;
    background: #f8f8f8;
    position: absolute;
    width: 55%;
    height: 44%;
    height: 1370px;
    z-index: -1;
}

/*
.company:after{
	content: "";
    display: block;
    left: 0;
    top: 67.5%;
    position: absolute;
    height: 10%;
    width: 41.5%;
    z-index: -1;
    background: #b90000;
    height: 14%;
    width: 41.5%;
    top: 72%;
}
*/

.company-msg p{
    margin-bottom: 20px;
    line-height: 2;
    font-size: 22px;
    font-weight: bold;
}

.company-msg__ceo{
	margin-top: 30px;
	font-size: 30px;
    font-weight: bold;
    /* font-weight: lighter; */
    text-align: right;
}

.company-msg__ceo span{
	display: block;
    font-size: 14px;
    font-weight: lighter;
    line-height: 1;
}

.company-kasou{
	width: 90%;
    max-width: 850px;
    margin: 0 auto;
    /* padding: 32px 40px; */
    box-shadow: 0px 0px 24px 2px rgba(0,0,0,.04);
    background: #ffffff;
    position: relative;
    cursor: pointer;
}

.company-kasou:nth-of-type(3){
    margin-bottom: 30px;
    border-bottom: none !important;
}

.company-kasou:nth-of-type(3) .job-item{
	border-bottom: none !important;
}

.company-kasou:not(.company-kasou--notAccordion){
    border-bottom: 1px solid #eeecec;
}

.company-kasou:not(.company-kasou--notAccordion):hover .company-kasou__headline{
	margin-left: 30px;
}

.company-kasou__head:not(.company-kasou--notAccordion):before{
	content: "";
	display: block;
	width: 20px;
	height: 2px;
	background: #FF2525;
	margin: auto;
	position: absolute;
	top: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
    left: 0;
}

.company-kasou__head:not(.company-kasou--notAccordion):hover:before{
	opacity: 1;
	left: 30px;
}

.company-msg{
	width: 90%;
	max-width: 850px;
	position: relative;
    margin: 0 auto 80px;
}

.company-msg__msgText{
	position: absolute;
	right: 0;
	bottom: 74px;
	font-weight: bold;
	font-size: 150px !important;
	writing-mode: vertical-lr;
	opacity: .08;
    letter-spacing: 0;
    font-family: "Futura";
    transform: translateX(8%);
    line-height: 1 !important;
}

.company-kasou__head{
	position: relative;
}

.company-kasou__head:hover{
    box-shadow: 10px 10px 34px 2px rgba(0,0,0,.06);
}

.company-kasou__head:not(.company-kasou--notAccordion):hover{
	box-shadow: none;
}

.company-kasou__head.active .company-kasou__toggle{
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.company-kasou:not(.company-kasou--notAccordion) .company-kasou__head{
    padding: 32px 40px;
}

.company-kasou__body{
	display: none;
    margin-top: 30px;
    padding-left: 100px;
    padding-bottom: 40px;
}

.company-kasou__toggle{
    width: 30px;
    height: 30px;
    position: absolute;
    right: 40px;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
}

.company-kasou__toggle:before,
.company-kasou__toggle:after
{
	content: "";
	display: block;
	background: #FF2525;
	margin: auto;
	position: absolute;
}

.company-kasou__toggle:before{
    width: 2px;
    height: 30px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.company-kasou__toggle:after{
	width: 30px;
    height: 2px;
    top: 0;
    bottom: 0;
    margin: auto;
}

.company-kasou--notAccordion{
    /* margin-top: 128px; */
   	padding-bottom: 0;
	box-shadow: none;
	cursor: default;
	margin-right: 0;
    width: 50%;
    padding-top: 15%;
    /* margin-top: 90px; */
    /*transform: translateY(-46px);
    -webkit-transform: translateY(-46px);
    -ms-transform: translateY(-46px);
    -o-transform: translateY(-46px);
    transform: translateY(-46px);*/
}

.company-kasou--notAccordion a{
	color: #FF2525;
}

.company-kasou--notAccordion .company-kasou__headline{
	margin-bottom: 30px;
	/*-webkit-transform: translateY(248px) translateX(-40px) rotate(180deg);
	-ms-transform: translateY(248px) translateX(-40px) rotate(180deg);
	-o-transform: translateY(248px) translateX(-40px) rotate(180deg);
	transform: translateY(248px) translateX(-40px) rotate(180deg);
	opacity: .1;
    font-size: 100px;
    transform: translateY(248px) translateX(-40px) rotate(180deg);*/
	/* writing-mode: vertical-lr; */
	font-family: "Futura";
}

.company-kasou__headline{
    padding: 10px 0;
	/* margin-bottom: 60px; */
	font-size: 24px;
	font-weight: bold;
	-webkit-transition: .3s all ease-in-out;
	-o-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
	font-family: "Futura";
}

.company-kasou__catch{
	margin-bottom: 34px;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
}

.company-kasou__topic{
	margin-bottom: 14px;
	font-size: 18px;
	font-weight: bold;
}

.job-item__name{
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 40px;
	position: relative;
	line-height: 1.4;
}

/*
.job-item__name:before{
    content: "";
    display: block;
    width: 20px;
    height: 3px;
    background: #FF2525;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: -40px;
}
*/

.job-koumokus{
	/* margin-left: 15%; */
}

.job-koumoku{
	margin-bottom: 30px;
}

.job-koumoku__smallItem{
	margin-bottom: 20px;
}

.job-item{
	margin: 50px auto;
    border-bottom: 1px solid #e2e2e2;
    /* padding-top: 50px; */
}

.company .info-item__detail{
	width: calc(100% - 130px);
}

.job-koumoku__name{
	margin-bottom: 12px;
	font-weight: bold;
	font-size: 18px;
}

.company .info-items{
    max-width: 590px;
    /* padding-left: 60px; */
}

.company .info-item{
    display: flex;
    justify-content: end;
    margin-bottom: 20px;
    align-items: baseline;
}

.company .info-item__koumoku{
    font-weight: bold;
    margin-right: 40px;
    width: 130px;
}

.company__img{
    /* width: 80%; */
    width: 48%;
    max-width: 600px;
    /* margin-left: auto; */
    text-align: right;
    position: absolute;
    left: 0;
    margin-top: 40px;
}

.company__img img{
	height: 330px;
    object-fit: cover;
}

.contact__btn{
    display: block;
    margin: 50px auto 150px;
    padding: 46px 0;
    font-weight: bold;
    font-size: 22px;
    border: 2px solid #FF2525;
    text-align: center;
}


@media screen and (min-width: 980px){

	.concept{
		padding-top: 100px;
	}

	.mv__img{
		margin-top: 112px;
		margin-top: 78px;
	}

	.concept:before{
		height: 530px;
		top: 44%;
	}

	.company-msg{
		padding-top: 70px;
	}

	.service .item-img{
		max-width: 390px;
		max-width: 330px;
	    margin: 150px 60px 0;
	}

	.service .item-img{
		padding-top: 60px;
	}

/*
	.concept .item-img{
		-webkit-transform: translateY(300px);
		-ms-transform: translateY(300px);
		-o-transform: translateY(300px);
		transform: translateY(300px);
	}
*/

	.concept__catch{
	    width: 68%;
	}

	.concept__img{
	    padding-left: 20%;
	}

}

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

	.pc-only{
		display: none;
	}

	.mv__img{
		width: 72%;
	    margin-top: 80px;
	}

	.mv__img img{
	    height: 180px;
	    object-fit: cover;
	}

	.mv:before{
	    top: 87px;
	    height: 68%;
	}

	.mv__catch p{
		margin-bottom: 6px;
		font-size: 15px;
	    padding: 6px 12px;
	}

	.mv__catch{
	    top: 56%;
	}

	.mv__projectName{
	    margin-top: 20px;
	    font-size: 22px;
	    top: 10%;
	}

	.section-headline{
		margin-bottom: 50px;
		font-size: 22px;
	}

	.concept{
		margin-top: 60px;
	}

	.concept .section-headline{
		margin-bottom: 40px;
	}

	.concept__img{
		width: 100%;
	}

	.company-kasou{
		margin-bottom: 20px;
	    padding: 4px 20px;
	    width: 84%;
	    margin-top: 0;
	}

	.company .info-item{
		flex-wrap: wrap;
	}

	.company .info-item__detail{
		width: 100%;
	}

	.company-msg p{
		font-size: 18px;
	}

	.contact__btn{
		margin-bottom: 20%;
	    padding: 26px 0;
		font-size: 18px;
	}

	.company-msg{
	    width: 100%;
	    margin-left: 0;
	}

	.company__img{
		width: 80%;
		-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	    -o-transform: translateY(0);
	    transform: translateY(0);
	    position: absolute;
    	left: 0;
	}

	.company-msg__msgText{
		font-size: 90px !important;
		/*-webkit-transform: translateX(146px);
		-ms-transform: translateX(146px);
		-o-transform: translateX(146px);
		transform: translateX(146px);*/
	}

	.item-text__headline{
		font-size: 24px;
	}

	.concept .item-text__headline{
		font-size: 22px;
	}

	.item-text__overview{
		font-size: 18px;
	}

	.concept .box{
		display: block;
		margin-top: 60px;
	}

	.concept__catch:before{
		width: 26px;
	}

	.concept__catch{
		padding-left: 13%;
		font-size: 24px;
	}

	.concept .item-text__desc{
		font-size: 16px;
	}

	.concept .item-img{
		width: 74%;
    	margin: 0 auto 30px;
	}

	.item-text__headline{
		font-size: 20px;
	}

	.service .common-inner{
		flex-wrap: wrap;
	}

	.service .box:before{
		width: 86%;
	}

	.service .box:nth-of-type(even) .item-img{
		order: 1;
	    -webkit-box-ordinal-group: 1;
	    -ms-flex-order: 1;
	    -webkit-order: 1;
	    margin-left: auto;
	    margin-right: 0;
	}

	.service .box:nth-of-type(even) .item-text{
		order: 2;
	    -webkit-box-ordinal-group: 2;
	    -ms-flex-order: 2;
	    -webkit-order: 2;
	}

	.service .item-img{
		width: 80%;
		margin-bottom: 20px;
	}

	.service .box:nth-of-type(odd):before{
		top: 11.5%;
		height: 22%;
	}

	.service .box:nth-of-type(even):before{
	    right: 0;
	    height: 25.5%;
	    top: 12%;
	}

	.company:after{
	    width: 94.5%;
	    height: 4%;
	    top: 91.5%;
	}

	.company-kasou--notAccordion .company-kasou__headline{
		padding: 10px;
	}

	.company .info-items{
	    padding-left: 20px;
	}

	.company-kasou:not(.company-kasou--notAccordion) .company-kasou__head{
		padding: 10px 0;
	}

	.company-kasou__head:not(.company-kasou--notAccordion):before,
	.company-kasou__head:not(.company-kasou--notAccordion):after
	{
		display: none;
	}

	.company-kasou:not(.company-kasou--notAccordion):hover .company-kasou__headline{
		margin-left: 0;
	}

	.company-kasou__body{
		padding-left: 0;
	}

	.company-kasou__toggle{
		right: 0;
	}

	.company-kasou__catch{
		font-size: 20px;
	}

	.company-kasou--notAccordion{
	    margin-top: 230px;
        padding-top: 20px;
		/*-webkit-transform: translateX(10px) translateY(156px);
		-ms-transform: translateX(10px) translateY(156px);
		-o-transform: translateX(10px) translateY(156px);
		transform: translateX(10px) translateY(156px);*/
	}

	.company-kasou__headline{
		font-size: 18px;
	}

	.job-item__name{
		font-size: 20px;
	}

	.concept__img img{
		height: 230px;
	}

	.service .item-img:before{
		display: none;
	}

	.service .item-text__headline:before{
		width: 80px;
		height: 80px;
	}

	.company__img img{
		height: 220px;
	}





}








