/* ====================================
  sub-page /common
  ==================================== */
section.content{
	padding: 100px 0;
}

/* MV setting */
.page .sub__page-mv {
	width:100%;
	height: 380px;
	padding: 0;
	overflow: hidden;
}
.page .sub__page-mv .mv-top {
	position: relative;
	max-width: 1000px;
	height: 380px;
	padding: 0;
	margin: 0 auto;
}
.page .sub__page-mv .mv-top .mv__text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 300px;
}
.page .sub__page-mv .mv-top .mv__text h1{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #FFF;
	font-size: 60px;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-shadow: 5px 5px 5px rgba(0, 0, 0, 0.5);
}
.page .sub__page-mv .mv-top .mv__text h1 strong{
	font-size: 75px;
}

@media screen and (max-width: 1024px) {
	.page .sub__page-mv .mv-top .mv__text h1{
		padding-left: 3vw;
		font-size: 5.324vw;
	}
	.page .sub__page-mv .mv-top .mv__text h1 strong{
		font-size: 7.324vw;
	}
}

@media screen and (max-width: 768px) {
	.page .sub__page-mv {
		height: 53.4vw;
	}
	.page .sub__page-mv .mv-top {
		height: 53.4vw;
	}
	.page .sub__page-mv .mv-top .mv__text {
		height: 42.984vw;
	}
	.page .sub__page-mv .mv-top .mv__text h1{
		padding-left: 3vw;
		font-size: 6.1614vw;
		line-height: 1.4;
	}
	.page .sub__page-mv .mv-top .mv__text h1 strong{
		font-size: 8.1614vw;
	}
}


/* no Image MV setting */
.page .sub__page__noimg-mv {
	width:100%;
	height: 250px;
	padding: 0;
	overflow: hidden;
}
.page .sub__page__noimg-mv .mv-top {
	position: relative;
	max-width: 1000px;
	height: 250px;
	padding: 0;
	margin: 0 auto;
}
.page .sub__page__noimg-mv .mv-top .mv__text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 150px;
}
.page .sub__page__noimg-mv .mv-top .mv__text h1{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #66000C;
	font-size: 45px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-align: center;
}

@media screen and (max-width: 1024px) {
	.page .sub__page__noimg-mv .mv-top .mv__text h1{
		font-size: 4.3945vw;
	}
}

@media screen and (max-width: 768px) {
	.page .sub__page__noimg-mv {
		height: 32vw;
	}
	.page .sub__page__noimg-mv .mv-top {
		height: 32vw;
	}
	.page .sub__page__noimg-mv .mv-top .mv__text {
		height: 18vw;
	}
	.page .sub__page__noimg-mv .mv-top .mv__text h1{
		font-size: 5.8593vw;
	}
}
/* Category List & Item setting */
.category__list {
	margin: 85px auto;
}
.category__list h2 {
	position: relative;
	margin-bottom: 30px;
	padding-left: 35px;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.4;
	letter-spacing: 0.02em;
}
.category__list h2::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 25px;
	height: 25px;
	margin: auto;
	background-color: #007D50;
}
.category__list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 0 auto 25px;
}
.category__list ul li.list__item{
	width: calc( (100% - 40px) / 3);
	min-height: 150px;
	margin-right: 20px;
	margin-bottom: 20px;
	border-radius: 18px;
	border: 2px solid #007D50;
}
.category__list ul li.list__item a{
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 20px 10px;
	color: #010101;
}
.category__list ul li.list__item:nth-child(3n){
	margin-right: 0;
}
.category__list ul li.list__item .item__image{
	width:30%;
	margin-right: 10px;
}
.category__list ul li.list__item .item__image img{
	display: block;
	width: 100%;
	object-fit: contain;
}
.category__list ul li.list__item .item__text{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	flex: 1;
}
.category__list ul li.list__item .item__text h3.item_title{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 20px;
}
.category__list ul li.list__item .item__text p.item_excerpt {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.3;
}
.category__list ul li.list__item-steel{
	border: 2px solid #007D50;
}
.category__list ul li.list__item-concrete{
	border: 2px solid #00AC97;
}
.category__list ul li.list__item-housing{
	border: 2px solid #006782;
}

@media screen and (max-width: 1024px) {
	.category__list ul{
		width: calc( 37.5vw + 37.5vw + 20px);
	}
	.category__list ul li.list__item{
		width: 37.5vw;
		min-height: 17.5781vw;
	}
	.category__list ul li.list__item a{
		align-items: flex-start;
	}
	.category__list ul li.list__item:nth-child(3n){
		margin-right: 20px;
	}
	.category__list ul li.list__item:nth-child(2n){
		margin-right: 0;
	}
	.category__list ul li.list__item .item__text h3.item_title{
		font-size: 2.6vw;
	}
	.category__list ul li.list__item .item__text p.item_excerpt {
		font-size: 1.757vw;
	}
}

@media screen and (max-width: 768px) {
	.category__list {
		margin: 7.8125vw auto;
	}
	.category__list .inner{
		width: 85vw;
		padding: 0;
	}
	.category__list h2 {
		margin-bottom: 2vw;
		padding-left: 6vw;
		font-size: 4.6875vw;
	}
	.category__list h2::before {
		top: 1.8vw;
		bottom: auto;
		left: 0;
		margin: auto;
		width: 3.5vw;
		height: 3.5vw;
	}
	.category__list ul {
		flex-flow: column;
		width: 100%;
		margin: 0 auto 3vw;
	}
	.category__list ul:last-of-type {
		margin: 0 auto;
	}
	.category__list ul li.list__item{
		width: 100%;
		min-height: auto;
		margin-right: 0;
		margin-bottom: 2.4vw;
		border-radius: 2.4vw;
	}
	.category__list ul li.list__item a{
		display: flex;
		align-items: stretch;
		padding: 3.2vw 5.2vw;
	}
	.category__list ul li.list__item:nth-child(3n){
		margin-right: 0;
	}
	.category__list ul li.list__item .item__image{
		width: 25%;
		margin-right: 3.2vw;
		display: flex;
		align-items: center;
	}
	.category__list ul li.list__item .item__image img{
		max-height: calc( 30vw - 6.4vw);
	}
	.category__list ul li.list__item .item__text{
	}
	.category__list ul li.list__item .item__text h3.item_title{
		font-size: 5.2vw;
		margin-bottom: 2vw;
	}
	.category__list ul li.list__item .item__text p.item_excerpt {
		font-size: 4.166vw;
	}
}


/* ====================================
  About Page
  ==================================== */
.page.page-about .sub__page-mv {
	height: 700px;
	background: url(../img/about/mv__bg.jpg) no-repeat top center #963A42;
	background-size: auto 100%;
}
.page.page-about .sub__page-mv .mv-top {
	height: 700px;
}
.page.page-about .sub__page-mv .mv-top .mv__text {
	height: 620px;
}
.page.page-about .sub__page-mv .mv-top .mv__text p{
	position: absolute;
	bottom: 65px;
	left: 0;
	width: 820px;
	font-size: 24px;
	line-height: 1.8;
	letter-spacing: 0.04rem;
	color: #fff;
}

.about__content {
	padding: 100px 0 80px;
}
.about__content-red {
	padding: 50px 0 80px;
}
.about__content.about__content-design {
	background: url(../img/about/about-design__bg.png) no-repeat;
	background-position: 0 38%;
	background-size: auto 100%;
}
@media screen and (max-width: 1200px) {
	.about__content.about__content-design {
		background: url(../img/about/about-design__bg.png) no-repeat;
		background-position: center;
		background-size: cover;
	}
}
.about__content.about__content-mold {
	background: url(../img/about/about-mold__bg.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.about__content.about__content-forging {
	background: url(../img/about/about-forging__bg.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.about__content.about__content-processing {
	background: url(../img/about/about-processing__bg.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.about__content.about__content-quality {
	background: url(../img/about/about-quality__bg.png) no-repeat;
	background-position: center;
	background-size: 1600px;
}

.about__content .flex .content-left {
	width: 61%;
}
.about__content .flex .content-right {
	width: 36%;
	padding: 3%;
	background-color: #6E0014;
	border-radius: 10px;
}
.about__content-red .flex .content-right {
	background-color: #F8CCD0;
}

.about__content .inner {
	position: relative;
	width: 100%;
	max-width: 1080px;
	padding: 0 40px;
}
.about__content .inner::after {
	position: absolute;
	content: "";
	height: 185px;
	width: 6px;
	background-color: #6E0014;
	left: 20px;
	top: -100px;
}
.about__content-red .inner::after {
	position: absolute;
	content: "";
	height: 140px;
	width: 6px;
	background-color: #FFF;
	left: 20px;
	top: -55px;
}

.about__content h2.content__title {
	margin-bottom: 30px;
	font-size: 80px;
	color: #000;
}
.about__content-red h2.content__title {
	color: #FFF;
}
.about__content h3.content__outline {
	margin-bottom: 25px;
	font-size: 40px;
	line-height: 1.5;
	color: #000;
}
.about__content-red h3.content__outline {
	color: #FFF;
}
.about__content .content-right h3 {
	margin-top: 15px;
	font-size: 26px;
	line-height: 1.2;
	color: #FFF;
}
.about__content .content-right h3 .small{
	font-size: 20px;
}
.about__content-red .content-right h3 {
	color: #000;
}
.about__content .content-left p {
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.02rem;
	color: #000;
	text-align: left;
}
.about__content .content-left .content__movie {
	margin-top: 45px;
}
.about__content-red .content-left p {
	color: #FFF;
}
.about__content .content-right p {
	margin-top: 20px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.015rem;
	text-align: left;
	color: #FFF;
}
.about__content-red .content-right p {
	color: #000;
}

@media screen and (max-width: 1024px){
	.page.page-about .sub__page-mv {
		height: 68.3593vw;
	}
	.page.page-about .sub__page-mv .mv-top {
		height: 68.3593vw;
	}
	.page.page-about .sub__page-mv .mv-top .mv__text {
		height: calc( 68.3593vw - 80px );
	}
	.page.page-about .sub__page-mv .mv-top .mv__text p{
		bottom: 5.5vw;
		left: 0;
		width: 100%;
		padding-left: 4vw;
		font-size: 2.3437vw;
	}
	.about__content {
		padding: 7.5vw 0 5.8vw;
	}
	.about__content-red {
		padding: 3.8vw 0 5.8vw;
	}
	.about__content .flex .content-left {
		width: 56%;
	}
	.about__content .flex .content-right {
		width: 38%;
		padding: 3%;
	}
	.about__content .inner::after {
		height: 18.4vw;
		left: 3vw;
		top: -7.5vw;
	}
	.about__content-red .inner::after {
		height: 14vw;
		left: 3vw;
		top: -3.9vw;
	}
	.about__content h2.content__title {
		margin-bottom: 3vw;
		font-size: 10vw;
	}
	.about__content h3.content__outline {
		margin-bottom: 2.5vw;
		font-size: 4vw;
	}
}

@media screen and (max-width: 768px) {
	.page.page-about .sub__page-mv {
		height: 70.3125vw;
		background: url(../img/about/mv__bg-sp.jpg) no-repeat top center #963A42;
		background-size: cover;
	}
	.page.page-about .sub__page-mv .mv-top {
		height: 70.3125vw;
	}
	.page.page-about .sub__page-mv .mv-top .mv__text {
		height: 59.8965vw;
		bottom: 0;
		left: 5vw;
	}
	.page.page-about .sub__page-mv .mv-top .mv__text h1{
		padding-top: 4vw;
		align-items: flex-start;
		line-height: 1.1;
	}
	.page.page-about .sub__page-mv .mv-top .mv__text p{
		bottom: 3vw;
		left: 0;
		width: calc( 100% - 8vw );
		font-size: 3.6vw;
		line-height: 1.6;
	}

	.about__content {
		padding: 9vw 0 7vw;
	}
	.about__content-red {
		padding: 5vw 0 8vw;
	}
	.about__content.about__content-design {
		background: url(../img/about/about-design__bg-sp.png) no-repeat;
		background-position: left top;
		background-size: cover;
	}
	.about__content.about__content-mold {
		background: url(../img/about/about-mold__bg-sp.jpg) no-repeat #E60014;
		background-position: center top;
		background-size: contain;
	}
	.about__content.about__content-forging {
		background: url(../img/about/about-forging__bg-sp.jpg) no-repeat #CECDCD;
		background-position: center top;
		background-size: contain;
	}
	.about__content.about__content-processing {
		background: url(../img/about/about-processing__bg-sp.jpg) no-repeat #E60014;
		background-position: center top;
		background-size: contain;
	}

	.about__content.about__content-quality {
		background: url(../img/about/about-quality__bg-sp.png) no-repeat;
		background-position: left top;
		background-size: 100% auto;
	}
	.about__content .inner {
		padding: 0 6.5vw;
	}
	.about__content .inner::after {
		height: 20vw;
		width: 5px;
		left: 4vw;
		top: -9vw;
	}
	.about__content-red .inner::after {
		position: absolute;
		content: "";
		height: 140px;
		width: 6px;
		background-color: #FFF;
		left: 20px;
		top: -55px;
	}

	.about__content .flex .content-left {
		width: 100%;
	}
	.about__content .flex .content-right {
		display: flex;
		flex-flow: wrap;
		width: 100%;
		padding: 4vw;
		margin-top: 5.8vw;
		border-radius: 3vw 2vw;
	}
	.about__content h2.content__title {
		margin-bottom: 2.5vw;
		font-size: 10.4vw;
	}
	.about__content h3.content__outline {
		margin-bottom: 2.5vw;
		font-size: 5.2vw;
		line-height: 1.5;
	}
	.about__content .content-left p {
		margin-bottom: 2vw;
		font-size: 4.1666vw;
		line-height: 1.4;
	}
	.about__content .content-left .content__movie {
		margin-top: 5.8vw;
	}

	.about__content .flex .content-right img{
		display: block;
		width: 60%;
	}
	.about__content .content-right h3 {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 40%;
		margin-top: 0;
		padding: 0 3vw;
		font-size: 4.1666vw;
	}
	.about__content .content-right h3 .small{
		font-size: 3vw;
	}
	.about__content .content-right p {
		margin-top: 4vw;
		font-size: 4.1666vw;
		font-weight: 400;
		line-height: 1.4;
		letter-spacing: 0.03rem;
	}
}


/* ====================================
  Support Page
  ==================================== */
.page.page-faq .sub__page__noimg-mv {
	height: 350px;
}
.page.page-faq .sub__page__noimg-mv .mv__underText{
	position: absolute;
	bottom: -100px;
	left: 0;
	width: 100%;
	height: 100px;
	padding: 0;
	overflow: hidden;
}
.page.page-faq .sub__page__noimg-mv .mv__underText p{
	display: block;
	width: 760px;
	margin: 0 auto;
	padding: 0;
	font-size: 21px;
	line-height: 1.6;
	letter-spacing: 0.06em;
	text-align: left;
}

.page-faq .support__faq{
	margin-top: 0;
}
.page-faq .support__faq .inner .support__faq__wrap,
.page-faq .support__contact .inner .support__contact__wrap {
	background-color: #FFE6E6;
}
.page-faq .support__faq .inner .support__faq__wrap {
	padding: 0 40px 55px 40px;
}
.page-faq .support__contact .inner .support__contact__wrap {
	padding: 0 40px 40px 40px;
}
.page-faq .support__faq .support__faq__wrap h2,
.page-faq .support__contact .support__contact__wrap h2{
	position: relative;
	padding-top: 20px;
	margin-bottom: 25px;
	font-size: 30px;
	font-weight: bold;
	text-align: left;
	color: #6E0014;
}
.page-faq .support__faq .support__faq__wrap  h2::after,
.support__contact .support__contact__wrap  h2::after {
	content: "";
	position: absolute;
	top: 0;
	left: -15px;
	width: 5px;
	height: 50px;
	background-color: #6E0014;
}

.page-faq .support__faq__box {
	position: relative;
	margin-bottom: 20px;
	padding: 0 40px;
	background: #FFF;
	box-shadow: 3px 3px 5px rgb(181, 181, 181);
}
.page-faq .support__faq__box:last-of-type {
	margin-bottom: 0;
}
.page-faq .support__faq__box .ac {
	padding: 20px 0;
	cursor: pointer;
}
.page-faq .support__faq__box .ac p{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 0;
	font-size: 25px;
	font-weight: 500;
	line-height: 1.6;
	text-align: left;
	color: #6E0014;
}
.page-faq .support__faq__box .ac p::after {
	display: block;
	content: "";
	width: 32px;
	min-width: 32px;
	height: 32px;
	background: url(../img/faq/ac__arrow.svg) no-repeat;
	background-size: 32px;
	transition: 0.4s;
	transform: rotate(180deg);
}
.page-faq .support__faq__box.active .ac p::after {
	display: block;
	content: "";
	width: 32px;
	min-width: 32px;
	height: 32px;
	background: url(../img/faq/ac__arrow.svg) no-repeat;
	background-size: 32px;
	transition: 0.4s;
	transform: rotate(0deg);
}
.page-faq .support__faq__box .close {
	padding: 0;
	overflow: hidden;
	max-height: 0;
	height: 0;
	transition: 0.4s;
}
.page-faq .support__faq__box .close.active {
	border-top: #000000 solid 1px;
	max-height: 1000px;
	height: auto;
	padding: 10px 0 20px;
}
.page-faq .support__faq__box .close p {
	font-size: 18px;
	text-align: left;
	color: #000;
	line-height: 1.5;
}
.page-faq .support__faq__box .close p strong{
	font-weight: 600;
}

.page-faq .support__contact{
	margin: 40px auto 50px;
}
.page-faq .support__contact .contact__wrap{
	padding: 20px 3% 35px;
	background-color: #FFF;
}
.page-faq .support__contact .contact__wrap h3 {
	position: relative;
	padding-left: 15px;
	font-size: 25px;
	font-weight: 500;
	color: #6E0014;
}
.page-faq .support__contact .contact__wrap h3::after {
	position: absolute;
	content: "";
	width: 10px;
	height: 50px;
	top: -20px;
	left: -5px;
	background-color: #FFE6E6;
}
.page-faq .support__contact .contact__wrap a {
	position: relative;
	display: block;
	width: 100%;
	max-width: 600px;
	padding: 22px 0;
	margin: 20px auto 0;
	font-size: 26px;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0.1rem;
	color: #FFF;
	text-align: center;
	border-radius: 50px;
	background: rgb(230, 0, 20);
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
	z-index: 1;
}
.page-faq .support__contact .contact__wrap a::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 46px;
	width: 46px;
	height: 46px;
	margin-top: -23px;
	background: url(../img/faq/contact_icon.svg) no-repeat;
	background-size: 100%;
	z-index: -1;
}

@media screen and (max-width: 1024px) {
	.page.page-faq .sub__page__noimg-mv .mv__underText p{
		width: 80%;
		max-width: 760px;
		font-size: 2.4vw;
	}
}


@media screen and (max-width: 768px) {
	.page.page-faq .sub__page__noimg-mv {
		height: 60vw;
	}
	.page.page-faq .sub__page__noimg-mv .mv-top {
		height: 36vw;
	}
	.page.page-faq .sub__page__noimg-mv .mv-top .mv__text {
		height: 18vw;
	}
	.page.page-faq .sub__page__noimg-mv .mv-top .mv__text h1{
		font-size: 5.8593vw;
	}
	.page.page-faq .sub__page__noimg-mv .mv__underText{
		bottom: -20vw;
		left: 0;
		width: 100%;
		height: 20vw;
	}
	.page.page-faq .sub__page__noimg-mv .mv__underText p{
		font-size: 4.1666vw;
	}

	.page-faq .support__faq .inner,
	.page-faq .support__contact .inner {
		padding: 0 6.5vw;
	}
	.page-faq .support__faq .inner .support__faq__wrap {
		padding: 0 3.2552vw 5.2083vw;
	}
	.page-faq .support__contact .inner .support__contact__wrap {
		padding: 0 3.2552vw 3.2552vw;
	}
	.page-faq .support__faq .support__faq__wrap h2,
	.page-faq .support__contact .support__contact__wrap h2{
		padding-top: 5.2083vw;
		margin-bottom: 5.2083vw;
		margin-left:  3.2552vw;
		font-size: 4.6875vw;
	}
	.page-faq .support__faq .support__faq__wrap  h2::after,
	.support__contact .support__contact__wrap  h2::after {
		height: 9.8vw;
	}
	.page-faq .support__faq__box {
		margin-bottom: 2.6vw;
		padding: 0 4.5vw;
	}
	.page-faq .support__faq__box:last-of-type {
		margin-bottom: 0;
	}
	.page-faq .support__faq__box .ac {
		padding: 2.86vw 0;
	}
	.page-faq .support__faq__box .ac p{
		font-size: 4.1666vw;
	}
	.page-faq .support__faq__box .ac p::after {
		width: 4.1666vw;
		min-width: 4.1666vw;
		height: 4.1666vw;
		background: url(../img/faq/ac__arrow.svg) no-repeat;
		background-size: 4.1666vw;
	}
	.page-faq .support__faq__box.active .ac p::after {
		width: 4.1666vw;
		min-width: 4.1666vw;
		height: 4.1666vw;
		background: url(../img/faq/ac__arrow.svg) no-repeat;
		background-size: 4.1666vw;
	}
	.page-faq .support__faq__box .close.active {
		padding: 1.4vw 0 2.86vw;
	}
	.page-faq .support__faq__box .close p {
		font-size: 4.1666vw;
	}

	.page-faq .support__contact{
		margin: 4.5572vw auto 7.8125vw;
	}
	.page-faq .support__contact .contact__wrap{
		padding: 2.6vw 3% 3.9vw;
	}
	.page-faq .support__contact .contact__wrap h3 {
		padding-left: 5.2vw;
		font-size: 4.1666vw;
	}
	.page-faq .support__contact .contact__wrap h3::after {
		width: 1.3vw;
		height: 9vw;
		top: -5vw;
		left: 1.3vw;
	}
	.page-faq .support__contact .contact__wrap a {
		width: 95%;
		padding: 3.66vw 0;
		margin: 3.9vw auto 0;
		font-size: 4.1666vw;
		border-radius: 3.5vw;
	}
	.page-faq .support__contact .contact__wrap a::after {
		top: 50%;
		left: 4vw;
		width: 5vw;
		height: 5vw;
		margin-top: -2.5vw;
	}
}


/* ====================================
  Products LineUP Page
  ==================================== */
.page.page-productsList .sub__page-mv {
	background: url(../img/products/mv__bg.jpg) no-repeat top center #E60014;
	background-size: auto 100%;
}
.page-productsList .products__index {
	margin: 60px 0 60px;
}
.page-productsList .products__index ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 980px;
	margin: 0 auto;
}
.page-productsList .products__index ul li {
	width: 480px;
	min-height: 200px;
	margin-bottom: 20px;
	margin-right: 20px;
}
.page-productsList .products__index ul li:nth-child(2n) {
	margin-right: 0;
}
.page-productsList .products__index ul li:last-child {
	margin-bottom: 0;
}
.page-productsList .products__index ul li a{
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 20px 0;
}
.page-productsList .products__index ul li a picture{
	position: absolute;
	top: 0;
}
.page-productsList .products__index ul li a h2{
	display: block;
	padding: 0 25px;
	font-size: 30px;
	font-weight: 500;
	line-height: 1.2;
	color: #FFF;
	text-align: left;
	z-index: 2;
}
.page-productsList .products__index ul li a h2 strong{
	display: block;
	margin-top: 15px;
	font-size: 40px;
	font-weight: 600;
}
.page-productsList .lineup{
	margin-bottom: 80px;
}

@media screen and (max-width: 1024px) {
	.page-productsList .products__index .inner {
		padding: 0;
	}
	.page-productsList .products__index ul {
		width: calc( 93.75vw + 20px );
	}
	.page-productsList .products__index ul li {
		width: 46.875vw;
		min-height: 19.53125vw;
	}
	.page-productsList .products__index ul li a h2{
		padding: 0 2.4414vw;
		font-size: 2.9296vw;
	}
	.page-productsList .products__index ul li a h2 strong{
		margin-top: 1.4648vw;
		font-size: 3.9062vw;
	}
}

@media screen and (max-width: 768px) {
	.page.page-productsList .sub__page-mv {
		background: url(../img/products/mv__bg-sp.jpg) no-repeat top center;
		background-size: auto 100%;
	}
	.page-productsList .products__index {
		margin: 9.89vw 0 7.16vw;
	}
	.page-productsList .products__index .inner,
	.page-productsList .lineup .inner,
	{
		padding: 0 3.255vw;
	}
	.page-productsList .products__index ul {
		width: 100%;
		justify-content: center;
	}
	.page-productsList .products__index ul li {
		width: 84.6354vw;
		min-height: 35.15625vw;
		margin-bottom: 3.90vw;
		margin-right: 0;
	}
	.page-productsList .products__index ul li:last-child {
		margin-bottom: 0;
	}
	.page-productsList .products__index ul li a{
		padding: 4.5572vw 0;
	}
	.page-productsList .products__index ul li a h2{
		padding: 0 4.5572vw;
		font-size: 6.1197vw;
	}
	.page-productsList .products__index ul li a h2 strong{
		margin-top: 1.9531vw;
		font-size: 8.7239vw;
	}
	.page-productsList .lineup{
		margin-bottom: 8.8541vw;
	}
	.page-productsList .lineup .search{
		width: 84.6354vw;
	}
	.page-productsList .lineup .search .flex {
		width: 100%;
	}
	.page-productsList .lineup .search .flex a {
		width: 11.2336vw;
	}
}


/* ====================================
  Item List Page
  ==================================== */
.page.page-list-steel .sub__page-mv {
	background: url(../img/products/steel-mv__bg.jpg) no-repeat top center #00503F;
	background-size: auto 100%;
}

@media screen and (max-width: 768px) {
	.page.page-list-steel .sub__page-mv {
		background: url(../img/products/steel-mv__bg-sp.jpg) no-repeat top center #00503F;
		background-size: auto 100%;
	}
}

.page.page-list-concrete .sub__page-mv {
	background: url(../img/products/concrete-mv__bg.jpg) no-repeat top center #00AB98;
	background-size: auto 100%;
}

@media screen and (max-width: 768px) {
	.page.page-list-concrete .sub__page-mv {
		background: url(../img/products/concrete-mv__bg-sp.jpg) no-repeat top center #00AB98;
		background-size: auto 100%;
	}
}

.page.page-list-housing .sub__page-mv {
	background: url(../img/products/housing-mv__bg.jpg) no-repeat top center #006782;
	background-size: auto 100%;
}

@media screen and (max-width: 768px) {
	.page.page-list-housing .sub__page-mv {
		background: url(../img/products/housing-mv__bg-sp.jpg) no-repeat top center #006782;
		background-size: auto 100%;
	}
}


/* ====================================
  Search Page
  ==================================== */
.page-search .search {
	margin: 0 auto;
}
.page-search .search .inner{
	width: 900px;
	margin: 0 auto;
	padding: 0;
}
.page-search .search .flex {
	flex-wrap: nowrap;
	border-top: #818181 solid 2px;
	padding-top: 5px;
}
.page-search .search .flex a {
	display: block;
	flex: 1;
	margin-right: 1%;
	text-align: center;
	font-size: 30px;
	font-weight: 900;
	line-height: 2;
	background-color: #E5E5E5;
	color: #000;
}
.page-search .search .flex a.active {
	background-color: #E60014;
	color: #fff;
}
.page-search .search .flex a:last-of-type{
	margin-right: 0;
}

@media screen and (max-width: 1024px) {
	.page-search .search .inner{
		width: 88%;
		padding: 0;
	}
	.page-search .search .flex a {
		font-size: 2.9296vw;
	}
}

@media screen and (max-width: 768px) {
	.page-search .search .inner{
		width: 84.2vw;
		padding: 0;
	}
	.page-search .search .flex {
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.page-search .search .flex a {
		flex: none;
		width: 9.8vw;
		margin-right: 2.6vw;
		margin-bottom: 2.6vw;
		font-size: 5.4vw;
		line-height: 2;
	}
	.page-search .search .flex a:last-of-type{
		margin-right: 2.6vw;
	}
	.page-search .search .flex a:nth-of-type(7n){
		margin-right: 0;
	}
}


/* ====================================
  Item Detail Page
  ==================================== */
.page-item .sub__page__item-mv {
	padding: 0;
	height: 88px;
	background-color: #007D50;
}

.item-detail-content .item__header{
	margin: 40px auto 0;
}
.item-detail-content .item__header .flex{
	justify-content: flex-start;
	flex-wrap: nowrap;
}
.item-detail-content .item__header .flex p.tag {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 140px;
	min-width: 140px;
	padding: 0;
	color: #FFF;
	text-align: center;
	font-size: 20px;
	line-height: 1.2;
	background-color: #007D50;
}
.item-detail-content .item__header .flex h1 {
	margin-left: 2%;
	font-size: 20px;
	line-height: 1.3;
	color: #007D50;
}
.item-detail-content .item__header .flex h1 strong {
	display: block;
	margin-top: 5px;
	font-size: 40px;
	color: #000;
}
.item-detail-content .item__header h2 {
	padding: 13px 0;
	margin-top: 15px;
	font-size: 25px;
	color: #007D50;
	text-align: center;
	line-height: 1.4;
	border-bottom: #007D50 1px solid;
	border-top: #007D50 1px solid;
}
.page-item.page-item-steel .sub__page__item-mv {
	background-color: #007D50;
}
.page-item.page-item-steel .item-detail-content .item__header .flex p.tag {
	background-color: #007D50;
}
.page-item.page-item-steel .item-detail-content .item__header .flex h1 {
	color: #007D50;
}
.page-item.page-item-steel .item-detail-content .item__header h2 {
	color: #007D50;
	border-bottom: #007D50 1px solid;
	border-top: #007D50 1px solid;
}
.page-item.page-item-concrete .sub__page__item-mv {
	background-color: #00AC97;
}
.page-item.page-item-concrete .item-detail-content .item__header .flex p.tag {
	background-color: #00AC97;
}
.page-item.page-item-concrete .item-detail-content .item__header .flex h1 {
	color: #00AC97;
}
.page-item.page-item-concrete .item-detail-content .item__header h2 {
	color: #00AC97;
	border-bottom: #00AC97 1px solid;
	border-top: #00AC97 1px solid;
}
.page-item.page-item-housing .sub__page__item-mv {
	background-color: #006782;
}
.page-item.page-item-housing .item-detail-content .item__header .flex p.tag {
	background-color: #006782;
}
.page-item.page-item-housing .item-detail-content .item__header .flex h1 {
	color: #006782;
}
.page-item.page-item-housing .item-detail-content .item__header h2 {
	color: #006782;
	border-bottom: #006782 1px solid;
	border-top: #006782 1px solid;
}

.item-detail-content .item__body {
	padding: 15px 0 50px;
}
.item-detail-content .item__body .item__option {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	margin-top: 60px;
}
.item-detail-content .item__body .item__option .item__option__item {
	width: 160px;
	height: 100px;
	margin-right: 10px;
	background-color: #F7F7C6;
	border-radius: 10px;
}
.item-detail-content .item__body .item__option .item__option__item:last-of-type {
	margin-right: 0;
}
.item-detail-content .item__body .item__option .item__option__item a{
	display: flex;
	flex-flow: column;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	text-align: center;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.1rem;
}
.item-detail-content .item__body .item__option .item__option__item a img{
	width: auto;
	height: 31px;
	margin: 0 auto 15px;
}


.item-detail-content .item__body .item__body-left {
	width: 50%;
}
.item-detail-content .item__body .item__body-left ul.item__slick {
	width: 75%;
	margin: 20px auto 0;
}
.item-detail-content .item__body .item__body-left ul.item__slick-thumb {
	width: 75%;
	margin: 20px auto 0;
}
.item-detail-content .item__body .item__body-left ul.item__slick-thumb img.slick-slide {
	margin: 0 2%;
	border: 1px solid #808080;
}

.item-detail-content .item__body .item__body-right {
	width: 45%;
}
.item-detail-content .item__body .item__body-right h3 {
	font-size: 30px;
	font-weight: 100;
	text-align: center;
}
.item-detail-content .item__body .item__body-right .item__ex .flex{
	flex-flow: nowrap;
	margin-top: 10px;
	justify-content: flex-start;
}
.item-detail-content .item__body .item__body-right .item__ex img{
	display: block;
	width: calc( 100% / 3 );
}
.item-detail-content .item__body .item__body-right .item__feature,
.item-detail-content .item__body .item__body-right .item__spec {
	margin-top: 30px;
	padding: 20px;
	background-color: #E9ECE6;
}
.item-detail-content .item__body .item__body-right .item__feature h3,
.item-detail-content .item__body .item__body-right .item__spec h3 {
	position: relative;
	padding-bottom: 25px;
	margin-bottom: 10px;
}
.item-detail-content .item__body .item__body-right .item__feature h3:after,
.item-detail-content .item__body .item__body-right .item__spec h3:after {
	position: absolute;
	content: "";
	margin: auto;
	left: 0;
	right: 0;
	bottom: -1px;
	width: 18px;
	height: 18px;
	border-radius: 18px;
	background-color: #FFF;
}
.item-detail-content .item__body .item__body-right .item__feature ul.item__feature__list li,
.item-detail-content .item__body .item__body-right .item__spec p {
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.06rem;
}
.item-detail-content .item__body .item__body-right .item__feature ul.item__feature__list li{
	position: relative;
	padding-left: 25px;
}
.item-detail-content .item__body .item__body-right .item__feature ul.item__feature__list li::before{
	position: absolute;
	content: "●";
	top: 0;
	left: 0;
}


.item-detail-content .item__footer {
	border-top: 1px solid #000;
	padding: 30px 0 80px;
}
.item-detail-content .item__footer .item__movie{
	width: 650px;
	margin: 0 auto;
}

@media screen and (max-width: 1024px) {
	.item-detail-content .item__body .item__body-left ul.item__slick {
		width: 95%;
		margin: 20px auto 0 0;
	}
	.item-detail-content .item__body .item__body-left ul.item__slick-thumb {
		width: 95%;
		margin: 20px auto 0 0;
	}
	.item-detail-content .item__body .item__option {
		width: 95%;
		margin: 60px auto 0 0;
	}
	.item-detail-content .item__body .item__option .item__option__item {
		width: 33%;
		height: auto;
		padding: 10px 0;
		margin-right: 1.5%;
		border-radius: 10px;
	}
	.item-detail-content .item__body .item__option .item__option__item a img{
		height: 3.027vw;
		margin: 0 auto 1vw;
	}
	.item-detail-content .item__body .item__body-right {
		width: 50%;
	}
}

@media screen and (max-width: 768px) {
	.page-item .sub__page__item-mv {
		height: 11.416vw;
	}
	.page-item .inner {
		padding: 0 6.5vw;
	}
	.item-detail-content{
		margin-bottom: 7.16vw;
	}
	.item-detail-content .item__header{
		margin: 9.11vw auto 0;
	}
	.item-detail-content .item__header .flex p.tag {
		width: 19.5vw;
		min-width: 19.5vw;
		font-size: 4.1666vw;
	}
	.item-detail-content .item__header .flex h1 {
		flex: 1;
		font-size: 4.1666vw;
	}
	.item-detail-content .item__header .flex h1 strong {
		margin-top: 1vw;
		font-size: 6.7708vw;
	}
	.item-detail-content .item__header h2 {
		padding: 3.2vw 0;
		margin-top: 2.6vw;
		font-size: 4.1666vw;
		text-align: left;
	}

	.item-detail-content .item__body {
		padding: 0 0 7.2vw;
	}
	.item-detail-content .item__body .item__option {
		width: 100%;
		margin: 7.2vw 0 0 0;
	}
	.item-detail-content .item__body .item__option .item__option__item {
		width: 33%;
		height: auto;
		padding: 5vw 0;
		margin-right: 1.5%;
		background-color: #F7F7C6;
		border-radius: 10px;
	}
	.item-detail-content .item__body .item__option .item__option__item:last-of-type {
		margin-right: 0;
	}
	.item-detail-content .item__body .item__option .item__option__item a{
		font-size: 4.1666vw;
	}
	.item-detail-content .item__body .item__option .item__option__item a img{
		width: auto;
		height: 9.2vw;
		margin: 0 auto 2vw;
	}

	.item-detail-content .item__body .item__body-left {
		width: 100%;
		padding: 5.2vw 0 0;
	}
	.item-detail-content .item__body .item__body-left ul.item__slick {
		width: 100%;
		margin: 0 auto;
	}
	.item-detail-content .item__body .item__body-left ul.item__slick-thumb {
		width: 100%;
		margin: 4vw auto 0;
	}

	.item-detail-content .item__body .item__body-right {
		width: 100%;
		padding: 8vw 0 0;
	}
	.item-detail-content .item__body .item__body-right h3 {
		font-size: 5.4687vw;
	}
	.item-detail-content .item__body .item__body-right .item__ex .flex{
		margin-top: 3vw;
	}

	.item-detail-content .item__body .item__body-right .item__feature,
	.item-detail-content .item__body .item__body-right .item__spec {
		margin-top: 5.2083vw;
		padding: 4.55vw;
	}
	.item-detail-content .item__body .item__body-right .item__feature h3,
	.item-detail-content .item__body .item__body-right .item__spec h3 {
		padding-bottom: 4.5vw;
		margin-bottom: 1.5vw;
	}
	.item-detail-content .item__body .item__body-right .item__feature h3:after,
	.item-detail-content .item__body .item__body-right .item__spec h3:after {
		width: 3.6458vw;
		height: 3.6458vw;
		border-radius: 3.6458vw;
	}
	.item-detail-content .item__body .item__body-right .item__feature p,
	.item-detail-content .item__body .item__body-right .item__spec p {
		font-size: 4.1666vw;
	}

	.item-detail-content .item__footer {
		border-top: 1px solid #000;
		padding: 3.9vw 0 0;
	}
	.item-detail-content .item__footer .item__movie{
		width: 100%;
		margin: 0 auto;
	}
}


/* ====================================
  Catalogue Page
  ==================================== */
.page.page-catalogue .sub__page-mv {
	background: url(../img/catalogue/mv__bg.png) no-repeat top center #E60014;
	background-size: auto 100%;
}
.page-catalogue .catalogue-list {
	margin: 60px 0 80px;
}
.page-catalogue .catalogue-list .box {
	width: 49%;
	padding: 30px 20px;
	margin-bottom: 20px;
	background-color: #FFE6E6;
	border-radius: 10px;
}
.page-catalogue .catalogue-list .box img {
	display: block;
	width: 60%;
	margin: 0 auto;
}
.page-catalogue .catalogue-list .box h2 {
	color: #6E0014;
	font-size: 25px;
	text-align: center;
	line-height: 1.8;
}

@media screen and (max-width: 1024px) {
	.page-catalogue .catalogue-list .box h2 {
		font-size: 2.44vw;
		line-height: 1.8;
	}
}

@media screen and (max-width: 768px) {
	.page.page-catalogue .sub__page-mv {
		background: url(../img/catalogue/mv__bg-sp.png) no-repeat top center;
		background-size: auto 100%;
	}
	.page-catalogue .catalogue-list {
		margin: 9.89vw 0 7.16vw;
	}
	.page-catalogue .catalogue-list .inner {
		padding: 0 3.255vw;
	}
	.page-catalogue .catalogue-list .inner.flex {
		justify-content: center;
	}
	.page-catalogue .catalogue-list .box {
		width: 64vw;
		margin-bottom: 3.90vw;
	}
	.page-catalogue .catalogue-list .box:last-of-type {
		margin-bottom: 0;
	}
	.page-catalogue .catalogue-list .box img {
		display: block;
		width: 60%;
		margin: 0 auto;
	}
	.page-catalogue .catalogue-list .box h2 {
		font-size: 4.166vw;
	}
}
