@charset "utf-8";
/*------------------------------------------------------------
	project
------------------------------------------------------------*/
#main {
	padding-top: 45px;
}
#main::before {
	width: 380px;
	height: 673px;
	position: absolute;
	right: 0;
	top: -185px;
	background: url("../images/project/bg01.png") no-repeat right top / 100%;
	content: '';
}
#main p {
	letter-spacing: 0.1em;
	line-height: 1.93;
}
#main .top-box {
	margin: 0 23px 106px;
}
#main .top-box p {
	font-size: 1.7rem;
	line-height: 2.235;
}
#main .headline01 {
	margin-bottom: 52px;
}
#main .headline02 {
	margin-bottom: 80px;
}
#main .headline02::before {
	bottom: -54px;
}
#main .headline02::after {
	bottom: -64px;
}
#main .sec-box {
	position: relative;
	z-index: 1;
}
#main .sec-box .photo01 {
	margin-bottom: 23px;
	position: relative;
	z-index: 1;
}
#main .sec-box .photo01 img {
	width: 100%;
}
#main .sec-box .sub-sec01 {
	margin-bottom: 50px;
}
#main .sec-box .sub-sec01 p {
	margin-bottom: 29px;
	position: relative;
	z-index: 1;
}
#main .sec-box .sub-sec01 p:last-child {
	margin-bottom: 0;
}
#main .sec-box .sub-sec01 .text01 {
	margin-bottom: 46px;
}
#main .sec-box .sub-sec01 .photo02 {
	margin: 0 -20px 47px auto;
	width: 92%;
	position: relative;
}
#main .sec-box .sub-sec01 .photo02 img {
	width: 100%;
}
#main .sec-box .sub-sec01 .photo02::before {
	content: '';
	width: 262px;
	height: 338px;
	position: absolute;
	right: 0;
	bottom: -397px;
	background: url("../images/project/bg02.png") no-repeat right top / 100%;
}
#main .sec-box .sub-sec02 {
	margin-bottom: 33px;
	padding: 64px 0 17px;
	background: #F7F7F7;
}
#main .sec-box .sub-sec02 .photo03 {
	margin-bottom: 16px;
}
#main .sec-box .sub-sec02 .photo03 img {
	width: 100%;
	border-radius: 5px;
}
#main .sec-box .sub-sec02 .sub {
	margin-bottom: 30px;
}
#main .sec-box .sub-sec02 .sub:last-child {
	margin-bottom: 0;
}
#main .sec-box .sub-sec02 .sub01 {
	margin-bottom: 15px;
}
#main .sec-box .sub-sec02 .photo04 img {
	width: 100%;
}
#main .sec-box .sub-sec02 p {
	margin-bottom: 30px;
	line-height: 2.067;
}
#main .sec-box .sub-sec02 p:last-child {
	margin-bottom: 0;
}
#g-footer::before {
	height: 425px;
	background-image: url("../images/common/f_bg02.png");
}
@media all and (max-width: 359px) {
	.headline02 {
		letter-spacing: 0;
	}
}
@media all and (min-width: 415px) and (max-width: 767px) {
	#g-footer::before {
		background-position: center top 40%;
	}
}