@charset "utf-8";

/*---------------------------------------------

works_indexスタイル

-----------------------------------------------*/

@media print, screen and (min-width: 768px) {

/* ▼WORKS PC */
#works_area {
	padding: 90px 0 100px 0;
	background: #e5e5e5;
}

#works_area h2 {
	color: #dc9200;
	font-size: 35px; font-size: 3.5rem;
	font-feature-settings: "palt" 1;
	text-align: left;
	letter-spacing: 0.5rem;
	line-height: 1.8;
	margin-bottom: 50px;
	font-weight: normal;
	transition: opacity 1s ease 0.4s, transform 0.7s ease 0.4s;
	transform: translateX(-30px);
	opacity: 0;
}

#works_area h3 {
	color: #3f3a3a;
	font-size: 22px; font-size: 2.2rem;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.5rem;
	line-height: 2;
	margin-bottom: 60px;
	font-weight: normal;
	transition: opacity 1s ease 0.6s, transform 0.7s ease 0.6s;
	transform: translateY(30px);
	opacity: 0;
}

#works_area h2.active,
#works_area h3.active {
	transform: translate(0);
	opacity: 1;
}

.photolist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.photolist > li {
	width: 220px;
	margin-bottom: 50px;
}

.photolist > li a {color: #3f3a3a;}

.photolist::after {
	content: "";
	display: block;
	width: 220px;
}

.photolist::before {
	content: "";
	display: block;
	width: 220px;
	order: 1;
}

.p_tn {margin-bottom: 5px;}

.p_tn img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.p_txt {
	font-size: 18px; font-size: 1.8rem;
	font-feature-settings: "palt" 1;
	line-height: 2;
	text-align: center;
}

p.upbtn a {
	display: block;
	width: 140px;
	color: #3e3a3a;
	text-decoration: none;
	text-align: center;
	font-size: 12px; font-size: 1.2rem;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.2rem;
	line-height: 2;
	margin: 60px 0 0 auto;
	padding: 2px 0;
	background: #fff;
	border: solid 1px #3e3a3a;
	box-sizing: border-box;
	position: relative;
}

p.upbtn a::before {
	position: absolute;
	content: "";
	top: -9px;
	left: calc(50% - 5px);
	background: url("../img/btnarrow_01.png") no-repeat;
	background-size: 10px;
	width: 10px;
	height: 9px;
}

}

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

/* ▼WORKS SP */
#works_area {
	padding: 9vw 0 14vw 0;
	background: #e5e5e5;
}

#works_area h2 {
	color: #dc9200;
	font-size: 8vw;
	font-feature-settings: "palt" 1;
	text-align: left;
	letter-spacing: 0.5rem;
	line-height: 1.8;
	margin-bottom: 6vw;
	font-weight: normal;
	transition: opacity 1s ease 0.4s, transform 0.7s ease 0.4s;
	transform: translateX(-30px);
	opacity: 0;
}

#works_area h3 {
	color: #3f3a3a;
	font-size: 5vw;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.2rem;
	line-height: 1.6;
	margin-bottom: 8vw;
	font-weight: normal;
	transition: opacity 1s ease 0.6s, transform 0.7s ease 0.6s;
	transform: translateY(30px);
	opacity: 0;
}

#works_area h2.active,
#works_area h3.active {
	transform: translate(0);
	opacity: 1;
}

.photolist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.photolist > li {
	width: 47.5%;
	margin-bottom: 10vw;
}

.photolist > li a {color: #3f3a3a;}

.p_tn {margin-bottom: 1vw;}

.p_tn img {
	width: 100%;
	image-rendering: -webkit-optimize-contrast;
}

.p_txt {
	font-size: 3.6vw;
	font-feature-settings: "palt" 1;
	line-height: 2;
	text-align: center;
}

p.upbtn a {
	display: block;
	width: 30%;
	color: #3e3a3a;
	text-decoration: none;
	text-align: center;
	font-size: 3.2vw;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.2rem;
	line-height: 2;
	margin: 6vw 0 0 auto;
	padding: 0.5vw 0;
	background: #fff;
	border: solid 1px #3e3a3a;
	box-sizing: border-box;
	position: relative;
}

p.upbtn a::before {
	position: absolute;
	content: "";
	top: -2vw;
	left: calc(50% - 1.5vw);
	background: url("../img/btnarrow_01.png") no-repeat;
	background-size: 100%;
	width: 3vw;
	height: 2vw;
}

}
