@charset "utf-8";
/*------------------------------------------------------------
	project
------------------------------------------------------------*/
body{
    background-color: #A1A1A1;
}
#main .sp{
	display: none;
}
#main img{
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
#main .mainImg img{
    width: 100%;
}
#main .top-visual{
    margin-top: 80px;
}
#main .img {
	margin: 0 auto;
	padding-left: 56px;
	width: 1147px;
}
#main .content {
	max-width: 1094px;
}
#main .content h2 {
	margin: -70px 0 73px;
}
#main .content h3 {
	margin-bottom: 32px;
	font-weight: 600;
}
#main .content h3 .jp {
	margin-bottom: 23px;
	display: block;
	font-size: 6.5rem;
    line-height: 1.3;
	letter-spacing: 0.1em;
}
#main .content h3 .en {
	font-size: 4.8rem;
}
#main .content .txt {
	line-height: 1.8;
	letter-spacing: 0.05em;
}
#main .content .txt + .txt {
	margin-top: 44px;
}
#main .content .txt.sml {
	font-size: 1.8rem;
	line-height: 1.43;
	letter-spacing: 0;
	margin-bottom: 86px;
}
#main .content .imgList {
	margin: 115px 0 40px;
}
#main .content .imgList li {
	margin-bottom: 74px;
	width: calc(50% - 61px);
}
#main .content .imgList li:nth-child(2n) {
	width: calc(50% - 40px);
}
#main .content .imgList .textBox {
	display: flex;
	align-items: center;
}
#main .content .imgList .textBox .num {
	margin-right: 16px;
	padding: 3px;
	min-width: 41px;
	height: 66px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 5.5rem;
	box-sizing: border-box;
	background-color: #826800;
	font-family: MS PGothic, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3" , sans-serif;
}
#main .content .imgList .textBox h4 {
	flex: 1;
	font-weight: 400;
	font-size: 2.5rem;
}
#main .content .imgBox h4 {
	margin-bottom: 57px;
	margin-top: 103px;
	padding: 35px 0 43px;
	font-size: 4rem;
	text-align: center;
	letter-spacing: 0.1em;
	background-color: #826800;
}
#main .content .imgBox .photoBox {
	margin: 0 auto;
	width: 780px;
}
#main .content .imgBox .photoBox + .photoBox {
	margin-top: 115px;
}
#main .content .imgBox {
	margin-bottom: 57px;
}
#main .content h3.sml {
	margin-top: 278px;
	margin-bottom: 40px;
	font-size: 4.8rem;
	letter-spacing: 0.05em;
}
#main .content h3 .sub_title{
	font-size: 4.3rem;
}
#main .content .img_width_100 {
	width: 100%;
	display: block;
}
#main .content .img_width_100 img{
	width: 100%;
}
#main .content .img_width_flex {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
#main .content .img_width_flex img{
	width: 49%;
	display: block;
}
#main .content .cidre_sub{
	margin: 40px 0 0px 0;
}
#main .content h3.sml ~ p {
	line-height: 1.8;
}
#main .content h3.sml ~ p + p {
	margin-top: 45px;
}
#main .content .imgBox01,
#main .content .imgBox02 {
	font-size: 25px;
	letter-spacing: 0.05em;
}
#main .content .imgBox01 .imgList,
#main .content .imgBox02 .imgList {
	margin: 0 68px 0 0;
	width: 450px;
}
#main .content .imgBox01 .imgList li,
#main .content .imgBox02 .imgList li {
	width: 100%;
	margin-bottom: 19px;
}
#main .content .imgBox01 .img,
#main .content .imgBox02 .img {
	width: 100%;
	padding-left: 0;
}
#main .content .imgBox01 {
	/* margin-top: 78px; */
}
#main .content .imgBox01 p,
#main .content .imgBox02 p {
	margin-top: 8px;
}
#main .content .imgBox01 .photoBox,
#main .content .imgBox02 .photoBox {
	flex: 1;
	margin-top: 160px;
}
#main .content .imgBox02 {
	margin-top: -92px;
}
#main .content .imgBox03 {
	margin-top: 33px;
}
#main .content .imgBox03 .photoBox {
	text-align: center;
}
#main .content .imgBox03 + .imgBox03 {
	margin: 50px 0;
}
#main .arrow{
	width: 250px;
	margin: 50px auto;
	display: block;
}
#main .material {
	width: 100%;
}
#main .material .imgBox03 img{
	width: 100%;
	margin: 0 auto;
}
#main .material .yoccatta_link img{
	display: block;
	width: 500px;
	margin: 80px auto;
}
#main .material h3 .en{
	font-size: 2rem;
}
hr{
	height: 1px;
	background-color: #fff;
}
#main .amaoto h4{
	font-size: 6rem;
	margin-top: 50px;
}
#main .amaoto span{
	font-size: 5rem;
}
#main .amaoto p{
	font-size: 2.5rem;
	margin: 20px 0;
}
#main .airbag .flex{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-top: -300px;
}
#main .airbag .flex h3{
	font-size: 6rem;
}
#main .airbag .flex img{
	width: 250px;
	margin-top: 40px;
}
#main .airbag p{
	font-size: 2.5rem;
}
#main .airbag a{
	color: #000 !important;
}
#main .airbag .flex p a:hover{
	text-decoration: none;
}
#main .airbag .imgflex{
	display: flex;
	justify-content: space-between;
	margin: 50px auto;
	width: 90%;
}
#main .airbag .imgflex img{
	width: 48%;
}
#main .airbag .width90{
	width: 90%;
	margin: 0 auto;
	display: block;
}
#main .recycledetail{
	margin: 50px 0;
}
#main .recycledetail p{
	font-size: 3rem;
}
#main .recycledetail .photoBox{
	width: 100%;
}
@media all and (min-width: 897px) {
	#main .content a:hover {
		text-decoration: underline;
	}
}
@media all and (max-width: 896px) {
	#main .sp{
		display: block;
	}
	#main .mainImg {
		margin-bottom: 59px;
	}
	#main .img {
		width: 100%;
		padding-left: 0;
	}
	#main .img + .img {
		margin-top: 36px;
	}
	#main .content {
		padding: 0 27px;
		max-width: inherit;
	}
	#main .content h2 {
		margin: 0 auto 40px;
		padding-right: 178px;
		padding-bottom: 9px;
		position: relative;
		width: 245px;
	}
	#main .content h3 {
		margin: 48px 0 8px;
	}
	#main .content .cidre_sub{
		margin: 30px 0 10px 0;
	}
	#main .content h3 .jp {
		margin-bottom: 0;
		font-size: 4.4rem;
		letter-spacing: 0.05em;
	}
	#main .content h3 .en {
		font-size: 3.88rem;
	}
	#main .content h3 .sub_title{
		font-size: 2.3rem;
	}
	#main .content .txt {
		margin-right: -9px;
		line-height: 1.818;
	}
	#main .content .txt + .txt {
		margin-top: 42px;
	}
	#main .content .txt.sml {
		margin-right: -2px;
		font-size: 1.5rem;
		line-height: 1.667;
		letter-spacing: 0.05em;
	}
	#main .content .imgList {
		margin: 85px 0 58px;
		display: block;
	}
	#main .content .imgList li {
		margin: 0 auto 28px;
		width: 77.4%;
	}
	#main .content .imgList li:nth-child(2n) {
		width: 77.4%;
	}
	#main .content .imgList .textBox .num {
		margin-right: 8px;
		font-size: 3.535rem;
		min-width: 27px;
		height: 42px;
	}
	#main .content .imgList .textBox h4 {
		font-size: 1.5rem;
		letter-spacing: 0.05em;
	}
	#main .content .imgBox h4 {
		margin: 76px 11px 85px;
		padding: 2px 0 8px;
		font-size: 2.2rem;
		line-height: 1.441;
		letter-spacing: 0.05em;
	}
	#main .content .imgBox {
		margin-bottom: 80px;
	}
	#main .content .imgBox .photoBox {
		width: 77.2%;
	}
	#main .content .imgBox .photoBox + .photoBox {
		margin-top: 46px;
	}
	#main .content h3.sml {
		margin: 105px 0 48px 10px;
		font-size: 2.2rem;
	}
	#main .content h3.sml ~ p {
		margin-left: 10px;
		font-size: 1.5rem;
		line-height: 1.667;
		letter-spacing: 0.05em;
	}
	#main .content h3.sml ~ p + p {
		margin-top: 25px;
	}
	#main .content .imgBox01, #main .content .imgBox02 {
		margin-top: 60px;
		display: block;
		font-size: 1.5rem;
		line-height: 1.3;
	}
	#main .content .imgBox01 p, #main .content .imgBox02 p {
		margin-top: 2px;
	}
	#main .content .imgBox01 .imgList, #main .content .imgBox02 .imgList {
		margin: 20px auto;
		width: 90%;
	}
	#main .recycledetail img{
		width: 100%;
		margin: 20px auto;
	}
	#main .content .imgBox01 .photoBox{
		width: 90%;
		margin: 0 auto;
	}
	#main .airbag .flex{
		margin-top: 0;
		flex-direction: column-reverse;
		align-items: center;
	}
	#main .airbag .flex img {
		width: 150px;
	}
	#main .airbag .flex h3{
		font-size: 3.6rem;
		width: 100%;
		margin-bottom: 20px;
	}
	#main .airbag .imgflex{
		flex-direction: column;
		justify-content: center;
		align-items: center;
		margin: 50px auto 20px auto;
	}
	#main .airbag .width90{
		width: 100%;
	}
	#main .airbag .imgflex img{
		width: 90%;
		margin: 10px 0;
	}
	#main .amaoto h4{
		font-size: 3.5rem;
		margin-top: 30px;
	}
	#main .content .imgBox01 .imgList li, #main .content .imgBox02 .imgList li {
		margin-bottom: 10px;

	}
	#main .content .imgBox01 .imgList li:nth-child(2n),
	#main .content .imgBox02 .imgList li:nth-child(2n) {
		width: 100%;
	}
	#main .content .imgBox01 .photoBox, #main .content .imgBox02 .photoBox {
		margin-top: 53px;
	}
	#main .content .imgBox03 {
		margin-top: 71px;
	}
	#main .content .imgBox03 p {
		font-size: 1.5rem;
	}
	#main .content .img_width_flex {
		flex-direction: column;
		margin-top: 0px;
	}
	#main .content .img_width_flex img{
		width: 100%;
		display: block;
		margin-top: 20px;
	}
}
@media all and (max-width: 459px) {
	#main .content h2 {
		padding-right: 158px;
		width: 170px;
	}
	#main .content h3 .jp {
		font-size: 4rem;
	}
	#main .content .txt {
		font-size: 1.7rem;
	}
	#main .content .imgList .textBox h4 {
		font-size: 1.3rem;
	}
	#main .content h3 .en {
		font-size: 2.5rem;
	}
	#main .arrow{
		width: 25%;
		margin: 25px auto;
	}
}
@media all and (max-width: 320px) {
	#main .content h2 {
		padding-right: 135px;
		width: 150px;
	}
}