@charset "UTF-8";
/*==============
    concept
================*/
#p_concept{
}
body{
}
@media screen and (min-width: 769px) {

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

/* ------------------------------
    
------------------------------ */
.{
}
/*---- --------------------*/
@media screen and (min-width: 769px) {
	.{
	}

}
@media screen and (max-width: 768px) {
	.{
	}
}


/* ------------------------------
    concept_lead
------------------------------ */
.concept_lead{
	position: relative;
	z-index: 1;
	padding-top: 130px;
	padding-bottom: 124px;
}
.concept_lead .flex_pc{
	align-items: center;
}

.concept_lead .txt{
	width: 58.9%;
	position: relative;
	z-index: 1;
	padding: 28px 180px 45px 0;
	margin-bottom: 0px;
}
.concept_lead .txt:before{
	content: "";
	display: block;
	position: absolute;
	background: #F5F3ED;
	height: 100%;
	width: 50%;
	left: 0;
	top: 0;
	z-index:-1;
}

.concept_lead .ttl{
/*	font-size: 2.2rem;
	letter-spacing: 0.2em;*/
	font-size: 2.8rem;
	margin-bottom: 30px;
	line-height: 1.8;
}
.concept_lead p{
	line-height: 2.5;
	letter-spacing: 0.03em;
}
.concept_lead .ph{
	width: 40%;
}
.concept_lead .linebox{
	position: absolute;
	left: 0;
	top:0;
	height:calc(100% - 55px);
	width: calc(50% - 380px);
	min-width: 250px;
	z-index: -1;
}

/*---- --------------------*/
@media screen and (min-width: 769px) {
	.concept_lead .txt{
		margin-right: -64px;
		margin-left: 60px;
	}

}
@media screen and (max-width: 768px) {
	.concept_lead{
		padding-top: 12vw;
		padding-bottom: 12vw;
	}
	.concept_lead .txt{
		width: 95%;
		padding: 2vw 0;
		margin-bottom: 4vw;
	}
	.concept_lead .txt:before{
		width: 100%;
	}

	.concept_lead .ttl{
		font-size: 5vw;
		letter-spacing: 0.2em;
		margin-bottom: 4vw;
		line-height: 1.8;
	}
	.concept_lead p{
		line-height: 2;
	}
	.concept_lead .ph{
		width: 90%;
		margin: 0 0 0 auto;
	}
	.concept_lead .linebox{
		height:calc(100% - 7vw);
		width: 90%;
		min-width: auto;
	}

}


/* ------------------------------
    manifest
------------------------------ */
.manifest{
	background: #fff;
	padding-bottom: 213px;
	padding-top: 100px;
}
.manifest_wrap{
	padding-bottom: 44px;
}
.manifest_wrap+ .manifest_wrap{
	margin-top: 104px;
}
.manifest_wrap .num{
	font-size: 2.8rem;
	line-height: 1;
	margin-bottom: 55px;
}
.manifest_wrap2 .num{
	text-align: right;
}
.manifestbox{
	position: relative;
	z-index:1;
}
.manifestbox{

}
.manifestbox .inner{
	justify-content: flex-start;
}


.manifestbox .txt{
	padding-top: 130px;
	color: #fff;
	padding-left: 70px;
	width: 530px;
}
.manifestbox .ttl{
	font-size: 2.2rem;
	letter-spacing: 0.25em;
	margin-bottom: 24px;
	font-weight: 300;
}

.manifest_bg{
	position: absolute;
	width: calc(50% + 352px);
	height: calc(100% - 10px);
	bottom: -54px;
	right: 0;
	background: #C89EA0;
	z-index:-1;
}
@media screen and (min-width: 769px) {
	.manifest_wrap2{

	}
	.manifest_wrap2 .manifestbox .inner{
		flex-flow: row-reverse;
		justify-content: space-between;
	}
	.manifest_wrap2 .ph{
		margin-right: -85px;
	}
	.manifest_wrap2 .manifestbox .txt{
		padding-right: 15px;
		padding-left: 88px;
		width: 50%;
	}
	.manifest_wrap2 .manifest_bg{
		width: calc(50% + 440px);
		right: auto;
		left: 0;
		z-index:-1;
	}

}
@media screen and (min-width: 769px) and (max-width: 1279px) {
	.manifest_wrap2{
		overflow: hidden;
	}
	.manifest_wrap2 .ph{
		margin-right: -6.6vw;
	}
}

@media screen and (max-width: 768px) {
	.manifest{
		padding-bottom: 16vw;
		padding-top: 12vw;
	}
	.manifest_wrap{
		padding-bottom: 6vw;
	}
	.manifest_wrap+ .manifest_wrap{
		margin-top: 8vw;
	}
	.manifest_wrap .num{
		font-size: 4.2vw;
		line-height: 1;
		margin-bottom: 3vw;
	}
	.manifestbox .ph{
		width: 95vw;
		padding-left: 5vw;
	}
	.manifest_wrap2 .manifestbox .ph{
		padding-left: 0;
		padding-right: 5vw;
		margin-left: -5vw;
	}
	.manifestbox .txt{
		padding-top: 3vw;
		padding-left: 5vw;
		padding-right: 0;
		width: 100%;
	}
	.manifest_wrap2 .txt{
		padding-left: 0;
		padding-right: 5vw;
	}
	.manifestbox .ttl{
		font-size: 4.6vw;
		margin-bottom: 3vw;
	}
	.manifest_bg{
		width: 95vw;
		height: 100%;
		bottom: -6vw
	}
}





/* ------------------------------
    greet
------------------------------ */
.greet .wrap{
	align-items: center;
}
.greet .ph{
	margin-top: -26px;
	width: 443px;
	height: 344px;
}
.greet .txt{
	padding-left: 23px;
	padding-right: 35px;
	padding-top: 10px;
	width: calc(100% - 443px);
}
.greet .name{
	font-size: 1.8rem;
	margin-top: 20px;
	font-weight: 400;
	letter-spacing: 0.1em;
}

@media screen and (min-width: 769px) {
	.greet .wrap{
		flex-flow: row-reverse;
	}
}
@media screen and (max-width: 768px) {
	.greet .wrap{
		width: 100%;
	}
	.greet .ph{
		margin-top: 0vw;
		width: 100%;
		height: auto;
	}
	.greet .txt{
		width: 100%;
		padding: 8vw 5vw 0;
	}
	.greet .name{
		font-size: 4.2vw;
		margin-top: 3vw;
		text-align: right;
	}
}

