@charset "UTF-8";

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	index
-----------------------------------------------------------------------*/
.pageIndex {
	/* mainTitle */
	/* pageList */
	/* news */
	/* recruit */
	/* access */
}

.pageIndex#contents {
	padding-top: 0;
}

.pageIndex .ttlStyle02 {
	margin-bottom: 15px;
}

.pageIndex .mainTitle {
	margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
	.pageIndex .mainTitle {
		margin-bottom: 30px;
	}
}

.pageIndex .mainTitle .image {
	max-height: 546px;
	margin-bottom: 30px;
	overflow: hidden;
}

.pageIndex .mainTitle .image img {
	width: 100%;
}

@media print, screen and (min-width: 1440px) {
	.pageIndex .mainTitle .image img {
		-webkit-transform: translateY(calc(-1 * calc((100% - 546px) / 2)));
		        transform: translateY(calc(-1 * calc((100% - 546px) / 2)));
	}
}

.pageIndex .mainTitle .title {
	text-align: center;
}

@media screen and (max-width: 768px) {
	.pageIndex .mainTitle .title img {
		max-width: 60%;
	}
}

.pageIndex .mainTitle .title .main {
	padding-bottom: 5px;
	border-bottom: 4px solid #2d2869;
}

.pageIndex .pages {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageIndex .pages {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		margin-top: -15px;
	}
}

.pageIndex .pages > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

@media screen and (max-width: 768px) {
	.pageIndex .pages > .item {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 50%;
		        flex: 0 0 50%;
		margin-top: 15px;
		padding: 0 5px;
		max-width: 50%;
		min-width: 177px;
	}
}

.pageIndex .pages > .item.blu .en::after,
.pageIndex .pages > .item.blu .ja::before {
	background: #008cd6;
}

.pageIndex .pages > .item.brn .en::after,
.pageIndex .pages > .item.brn .ja::before {
	background: #946134;
}

.pageIndex .pages > .item.org .en::after,
.pageIndex .pages > .item.org .ja::before {
	background: #f29600;
}

.pageIndex .pages > .item.grn .en::after,
.pageIndex .pages > .item.grn .ja::before {
	background: #1eaa39;
}

.pageIndex .pages > .item + .item {
	margin-left: 55px;
}

@media screen and (max-width: 768px) {
	.pageIndex .pages > .item + .item {
		margin-left: 0;
	}
}

.pageIndex .pages a {
	width: 177px;
	max-width: 100%;
}

@media screen and (max-width: 768px) {
	.pageIndex .pages a {
		display: block;
		margin: 0 auto;
	}
}

.pageIndex .pages .en {
	position: relative;
	height: 110px;
	padding: 10px 12px;
	background: #2d2869;
	color: #fff;
	font-size: 22px;
	line-height: 1.14;
	letter-spacing: 0.12em;
}

.pageIndex .pages .en::after {
	content: "";
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 50px;
	height: 50px;
}

.pageIndex .pages .ja {
	position: relative;
	margin-top: 27px;
	text-align: center;
	line-height: 1.35;
}

.pageIndex .pages .ja::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: calc(100% + 10px);
	width: 100%;
	height: 4px;
}

.pageIndex .newsList {
	font-size: 12px;
}

.pageIndex .newsList > .item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pageIndex .newsList > .item + .item {
	margin-top: 0.5em;
}

.pageIndex .newsList .date {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

.pageIndex .newsList .detail {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
	margin-left: 1.5em;
}

@media screen and (max-width: 768px) {
	.pageIndex .recruit {
		text-align: center;
	}
	.pageIndex .recruit a {
		display: block;
	}
}

.pageIndex .access .info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (max-width: 768px) {
	.pageIndex .access .info {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
}

.pageIndex .access .info > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

.pageIndex .access .info > .item + .item {
	margin-left: 0.5em;
}

@media screen and (max-width: 768px) {
	.pageIndex .access .info > .item + .item {
		margin-left: 0;
		margin-top: 5px;
	}
}

.pageIndex .access iframe {
	width: 100%;
	height: 330px;
	margin-top: 10px;
}

.pageIndex .mapList > .item + .item {
	margin-top: 20px;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	about
-----------------------------------------------------------------------*/
.pageAbout {
	/* message */
	/* ideology */
	/* profile */
	/* history */
}

.pageAbout .message .container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

@media screen and (max-width: 768px) {
	.pageAbout .message .container {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
}

.pageAbout .message .textArea {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
	margin-right: 30px;
}

@media screen and (max-width: 768px) {
	.pageAbout .message .textArea {
		margin-right: 0;
		margin-top: 15px;
	}
}

.pageAbout .message .portrait {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 282px;
	        flex: 0 0 282px;
}

@media screen and (max-width: 768px) {
	.pageAbout .message .portrait {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 55%;
		        flex: 0 0 55%;
		-webkit-box-ordinal-group: 0;
		    -ms-flex-order: -1;
		        order: -1;
		min-width: 175px;
		text-align: center;
	}
}

.pageAbout .message p + p {
	margin-top: 20px;
}

@media screen and (max-width: 768px) {
	.pageAbout .message p + p {
		margin-top: 15px;
	}
}

.pageAbout .message .signature {
	text-align: right;
}

@media screen and (max-width: 768px) {
	.pageAbout .message .signature > img {
		width: 202px;
	}
}

.pageAbout .ideology .ideology {
	margin-bottom: 10px;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageAbout .ideology .ideology {
		font-size: 18px;
	}
}

.pageAbout .ideology .ideology::before, .pageAbout .ideology .ideology::after {
	content: "\0ff5e";
}

.ideologyOl01 {
	counter-reset: Ol01-counter;
}

.ideologyOl01 > li {
	padding-left: 2em;
	position: relative;
}

.ideologyOl01 > li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: counter(Ol01-counter, cjk-ideographic)'、';
	counter-increment:Ol01-counter;
}

.ideologyOl01 > li + li {
	margin-top: 1em;
}

.ideologyOl02 {
	margin-top: 1em;
	counter-reset: Ol02-counter;
}

.ideologyOl02 > li {
	padding-left: 3em;
	position: relative;
}

.ideologyOl02 > li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '（'counter(Ol02-counter)'）';
	counter-increment:Ol02-counter;
}

.ideologyOl02 > li + li {
	margin-top: 1em;
}

.ideologydl01 {
	margin-top: 1em;
}

.ideologydl01 dt {
	padding: 0 1em;
	float: left;
	position: relative;
}

.ideologydl01 dt::after {
	position: absolute;
	top: 0;
	right: 0;
	content: "：";
}

.ideologyOl01 + p {
	margin-top: 1em;
	text-align: right;
}

.pageAbout .profile dt {
	text-indent: -0.5em;
}

.pageAbout .profile dt::before {
	content: "【";
}

.pageAbout .profile dt::after {
	content: "】";
}

.pageAbout .history .ISO .container {
	display: inline-block;
	position: relative;
	vertical-align: top;
}

.pageAbout .history .ISOLogo {
	position: absolute;
	left: calc(100% + 55px);
	bottom: 0;
	width: 192px;
}

@media screen and (max-width: 768px) {
	.pageAbout .history .ISOLogo {
		position: static;
		width: 150px;
		margin-top: 10px;
	}
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	industrialWaste
-----------------------------------------------------------------------*/
.pageIndustrialWaste {
	/* dispose */
}

.pageIndustrialWaste .dispose {
	/* example */
	/* flow */
}

.pageIndustrialWaste .dispose > p + p {
	margin-top: 1.5em;
}

.pageIndustrialWaste .dispose .exampleList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .exampleList {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-ms-flex-pack: distribute;
		    justify-content: space-around;
		font-size: 16px;
	}
}

.pageIndustrialWaste .dispose .exampleList > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 220px;
	        flex: 0 0 220px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	max-width: 220px;
	padding: 25px 10px;
	background: #2d2869;
	border-radius: 5px;
	color: #fff;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .exampleList > .item {
		max-width: 48%;
		min-width: 34%;
		padding: 15px 10px;
	}
	.pageIndustrialWaste .dispose .exampleList > .item:nth-of-type(n+3) {
		margin-top: 15px;
	}
}

.pageIndustrialWaste .dispose .flow .after {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: relative;
	margin-top: 85px;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .flow .after {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		margin-top: 60px;
		font-size: 16px;
	}
}

.pageIndustrialWaste .dispose .flow .after::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: calc(100% + 30px);
	width: 0;
	height: 0;
	margin-left: -50px;
	border-style: solid solid none solid;
	border-color: #008cd6 transparent transparent transparent;
	border-width: 30px 50px 0 50px;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .flow .after::before {
		bottom: calc(100% + 15px);
	}
}

.pageIndustrialWaste .dispose .flow .after > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 367px;
	        flex: 0 0 367px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 25px 10px;
	border: 3px solid #008cd6;
	border-radius: 5px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .flow .after > .item {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 49%;
		        flex: 0 0 49%;
		max-width: 49%;
		padding: 15px 5px;
	}
}

.pageIndustrialWaste .dispose .flow .after > .item + .item {
	margin-left: 25px;
}

@media screen and (max-width: 768px) {
	.pageIndustrialWaste .dispose .flow .after > .item + .item {
		margin-left: 0;
	}
}

.pageIndustrialWaste .dispose .flow .after .ok {
	background: rgba(242, 150, 0, 0.2);
}

.pageIndustrialWaste .dispose .flow .after .ng {
	background: rgba(159, 160, 160, 0.2);
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	ironScrap
-----------------------------------------------------------------------*/
.pageIronScrap {
	/* ironScrap */
	/* result */
}

.pageIronScrap .ironScrap {
	/* flow */
	/* sort */
}

.pageIronScrap .ironScrap > p + p {
	margin-top: 1.5em;
}

.pageIronScrap .ironScrap .flowList > .item > .ttl {
	padding: 10px 30px 5px;
	background: #946134;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .flowList > .item > .ttl {
		padding: 5px 20px 2px;
		font-size: 18px;
	}
}

.pageIronScrap .ironScrap .flowList > .item > .contents {
	padding: 15px 30px 10px;
	background: rgba(148, 97, 52, 0.1);
	border: 2px solid #946134;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .flowList > .item > .contents {
		padding: 10px 20px;
	}
}

.pageIronScrap .ironScrap .flowList > .item .contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .flowList > .item .contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
}

.pageIronScrap .ironScrap .flowList > .item .text {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}

.pageIronScrap .ironScrap .flowList > .item .image {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 386px;
	        flex: 0 0 386px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: -45px -15px 0 35px;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .flowList > .item .image {
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 10px 0 0 0;
	}
}

.pageIronScrap .ironScrap .flowList > .item .image > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .flowList > .item .image > .item {
		-webkit-box-flex: 0;
		    -ms-flex: 0 1 auto;
		        flex: 0 1 auto;
	}
}

.pageIronScrap .ironScrap .flowList > .item .image > .item + .item {
	margin-left: 10px;
}

.pageIronScrap .ironScrap .flowList > .item + .item {
	margin-top: 25px;
}

.pageIronScrap .ironScrap .sort {
	margin-top: 55px;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .ironScrap .sort {
		margin-top: 30px;
	}
}

.pageIronScrap .result .layout01 > .ttl {
	padding: 10px 30px 5px;
	background: #946134;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .result .layout01 > .ttl {
		padding: 5px 20px 2px;
		font-size: 18px;
	}
}

.pageIronScrap .result .layout01 > .contents {
	padding: 15px 30px 10px;
	background: rgba(148, 97, 52, 0.1);
	border: 2px solid #946134;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .result .layout01 > .contents {
		padding: 10px 20px;
	}
}

.pageIronScrap .result .layout01 .contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .result .layout01 .contents {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
}

.pageIronScrap .result .layout01 .text {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}

.pageIronScrap .result .layout01 .image {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 386px;
	        flex: 0 0 386px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: -45px -15px 0 35px;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .result .layout01 .image {
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 10px 0 0 0;
	}
}

.pageIronScrap .result .layout01 .image > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

@media screen and (max-width: 768px) {
	.pageIronScrap .result .layout01 .image > .item {
		-webkit-box-flex: 0;
		    -ms-flex: 0 1 auto;
		        flex: 0 1 auto;
	}
}

.pageIronScrap .result .layout01 .image > .item + .item {
	margin-left: 10px;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	demolition
-----------------------------------------------------------------------*/
.pageDemolition {
	/* available */
}
.pageDemolition .emphasis {
	margin: 0 0.15em;
	font-size: 20px;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.pageDemolition .emphasis {
		font-size: 16px;
	}
}

.pageDemolition .available .types {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

@media screen and (max-width: 768px) {
	.pageDemolition .available .types {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
}

.pageDemolition .available .types > .item {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 48.5%;
	        flex: 0 0 48.5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.pageDemolition .available .types > .item > .ttl {
	padding: 10px 30px 5px;
	background: #f29600;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.pageDemolition .available .types > .item > .ttl {
		padding: 5px 20px 2px;
		font-size: 18px;
	}
}

.pageDemolition .available .types > .item > .contents {
	padding: 15px 30px 10px;
	background: rgba(242, 150, 0, 0.1);
	border: 2px solid #f29600;
}

@media screen and (max-width: 768px) {
	.pageDemolition .available .types > .item > .contents {
		padding: 10px 20px;
	}
}

.pageDemolition .available .types > .item:nth-of-type(n+3) {
	margin-top: 25px;
}

@media screen and (max-width: 768px) {
	.pageDemolition .available .types > .item {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 auto;
		        flex: 0 0 auto;
	}
	.pageDemolition .available .types > .item:nth-of-type(n+2) {
		margin-top: 20px;
	}
}

.pageDemolition .available .types > .item > .ttl {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}

.pageDemolition .available .types > .item > .contents {
	-webkit-box-flex: 1;
	    -ms-flex: 1 1 auto;
	        flex: 1 1 auto;
}

.pageDemolition .available .works {
	counter-reset: works;
}

.pageDemolition .available .works > .item {
	counter-increment: works;
	position: relative;
	padding-left: 1.5em;
}

.pageDemolition .available .works > .item::before {
	content: counter(works) "．";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Regular KL"), local("リュウミン R-KL");
	font-weight: normal;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Medium KL"), local("リュウミン M-KL");
	font-weight: 500;
}

@font-face {
	font-family: 'Ryumin';
	src: local("Ryumin Bold KL"), local("リュウミン B-KL");
	font-weight: bold;
}

/* 文字装飾
	最初に赤い四角をつける
*/
/* ボックス
	タイトルをベタ塗り白文字、内容を同色の線で囲う
*/
/*-----------------------------------------------------------------------
	recycle
-----------------------------------------------------------------------*/
.pageRecycle {
	/* recycle */
}

.pageRecycle .recycle > p + p {
	margin-top: 1.5em;
}

/*-----------------------------------------------------------------------
	contact
-----------------------------------------------------------------------*/
.contactForm .caution {
	line-height: 1.5;
	margin-bottom: 25px;
	font-size: 15px;
	font-weight: 500;
	color: #e50012;
}
.tblForm {
	width: 676px;
	margin: 0 auto;
}
.tblForm tbody {
	border: solid 1px #9fa0a0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
.tblForm tr {
	border-top: 1px solid #9fa0a0;
	font-size: 15px;
}
.tblForm th {
	width: 164px;
	padding: 20px 0 20px 20px;
	vertical-align: middle;
	font-size: 12px;
	background: #efefef;
}
.tblForm th span {
	color: #e50012;
}
.tblForm td {
	max-width: 511px;
	padding: 10px;
	vertical-align: middle;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "游ゴシック", "Yu Gothic Medium", YuGothic, sans-serif;
	font-size: 12px;
}
.tblForm td input, .tblForm td textarea {
	width: 100%;
	height: 27px;
	padding: 0 5px;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "游ゴシック", "Yu Gothic Medium", YuGothic, sans-serif;
	line-height: 1.5;
	border: solid 1px #9fa0a0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.tblForm td textarea {
	min-height: 127px;
	padding: 5px;
	resize: vertical;
}
.tblForm td .inputMail01 {
	width: 180px;
}
.tblForm td .inputMail02 {
	width: 280px;
}
.tblForm td .splitItem {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.tblForm td .splitItem li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 36.7%;
}
.tblForm td .splitItem .item02 {
	width: 63.3%;
}
.tblForm td .splitItem .item02::before {
	display: block;
	width: 30px;
    content: "@";
	text-align: center;
    font-weight: normal;
}
.tblForm td .splitItem input {
	width: 100%;
	line-height: 1.5;
}
.tblForm td .splitItem .item02 input {
	width: calc(100% - 30px);
}
.tblForm td .splitItem .item02 .error:not(input) {
	padding-left: 30px;
}
.formBtnArea {
	margin-top: 28px;
	text-align: center;
}
.formBtnArea [class*="formBtn"] {
	letter-spacing: 0.2em;
	line-height: 0.75;
	padding: 12px 50px;
	cursor: pointer;
	font-size: 20px;
	color: #fff;
	background: #e50012;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "游ゴシック", "Yu Gothic Medium", YuGothic, sans-serif;
}
.formBtnArea [class*="formBtn"] + [class*="formBtn"] {
	margin-left: 28px;
}
.formBtnArea .formBtn02 {
	line-height: 1;
	font-size: 15px;
	background: #9fa0a0;
}
.formBtnArea input:hover {
	opacity: 0.7;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.tblForm .error:not(input) {
	margin-top: 0.5em;
	color: #e50012;
	font-size: 11px;
}

@media screen and (max-width: 768px) {
	.tblForm {
		width: 100%;
	}
	.tblForm th {
		width: 30%;
		min-width: 110px;
		padding: 10px 0 10px 8px;
	}
	.tblForm td .splitItem li {
		width: 100%;
		float: none;
	}
	.tblForm td .splitItem .item02 input {
		width: 100%;
	}
	.formBtnArea [class*="formBtn"] {
		width: 50%;
		padding: 15px;
		vertical-align: top;
	}
	.formBtnArea .formBtn02 {
		width: 35%;
	}
	input[type="button"], input[type="text"], input[type="submit"] {
	   -webkit-appearance: none;
	   border-radius: 0;
	}
}

/*-----------------------------------------------------------------------
	confirm
-----------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
	.formBtnArea.confirm input:first-of-type {
		width: 35%;
	}
}

/*-----------------------------------------------------------------------
	complete
-----------------------------------------------------------------------*/
.btnBackTop {
	margin: 50px 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
@media screen and (max-width: 768px) {
	.formBtnArea .formBtn.btnBackTop {
		width: 60%;
	}
}

/*-----------------------------------------------------------------------
	recruit
-----------------------------------------------------------------------*/
.careers {
	text-align: center;
}
.careers p {
	line-height: 1.5;
	font-size: 20px;
	font-weight: 500;
}
.careers p + p {
	margin-top: 9px;
	font-size: 26px;
	color: #e50012;
}
@media screen and (max-width: 768px) {
	.careers p {
		font-size: 16px;
	}
	.careers p + p {
		font-size: 22px;
	}

}

/*-----------------------------------------------------------------------
	facility
-----------------------------------------------------------------------*/
.pageFacility .ttlStyle01:nth-child(n+2) {
	margin-top: 80px;
}
.pageFacility .ttlStyle02 span {
	font-size: 14px;
}
.pageFacility .secImg {
	margin-bottom: 25px;
}
.facilityTblWrap {
	overflow: hidden;
}

@media screen and (max-width: 768px) {
	.pageFacility .ttlStyle02 span {
		display: block;
		font-size: 12px;
	}
	.pageFacility .secImg {
		margin-bottom: 20px;
	}
}

/* facilityTbl01 */
.facilityTblWrap .facilityTbl01 {
	width: 450px;
	float: left;
}
.facilityTblWrap .facilityTbl01:nth-child(even) {
	float: right;
}
.facilityTbl01 td {
	width: 3em;
	text-align: right;
}

@media screen and (max-width: 768px) {
	.facilityTblWrap .facilityTbl01:nth-child(1n+0) {
		width: 100%;
		float: none;
	}
}

/* facilityTbl02 */
.facilityTbl02 {
	width: 100%;
	border: solid #231815;
	border-width: 1px 0 0 1px;
	text-align: center;
	line-height: 1.2;
}
.facilityTbl02 tr > * {
	vertical-align: middle;
	padding: 2px 0.5em 1px;
	border: solid #231815;
	border-width: 0 1px 1px 0;
}
.facilityTbl02 th {
	width: 190px;
	background: #efefef;
	text-align: center;
}
.facilityTbl02 th:nth-child(2) {
	width: 145px;
}
.facilityTbl02 th:nth-child(3) {
	width: 625px;
}
.facilityTbl02 td:nth-child(3) {
	padding: 2px 1em 1px;
	text-align: left;
}

@media screen and (max-width: 768px) {
	.facilityTbl02 {
		font-size: 12px;
	}
	.facilityTbl02 tr > *:nth-child(1n+0) {
		padding: 4px 0.5em 3px;
	}
	.facilityTbl02 th {
		width: 25%;
	}
	.facilityTbl02 th:nth-child(2) {
		width: 25%;
	}
	.facilityTbl02 th:nth-child(3) {
		width: 50%;
	}
}

/* facilityTbl03 */
.facilityTbl03 {
	width: 100%;
	border: solid #231815;
	border-width: 0 1px 1px 0;
	margin-top: 25px;
	text-align: center;
	line-height: 1.2;
}
.facilityTbl03 tr > * {
	width: 12%;
	vertical-align: middle;
	padding: 2px 0.5em 1px;
	border: solid #231815;
	border-width: 1px 0 0 1px;
}
.facilityTbl03 thead th {
	background: #efefef;
	text-align: center;
}
.facilityTbl03 thead .spaceCell {
	border: none;
	background: none;
	text-indent: -9999px;
}
.facilityTbl03 tbody th {
	width: 16%;
	text-align: center;
}
.facilityTbl03 tbody td {
	width: 12%;
}

@media screen and (max-width: 768px) {
	.facilityTbl03 {
		font-size: 12px;
	}
}

/* facilityTbl04 */
.facilityTbl04 {
	width: 100%;
}
.facilityTbl04 > tbody > tr + tr {
	border-top: solid 25px transparent;
}
.facilityTbl04 > tbody > tr > * {
	vertical-align: top;
}
.facilityTbl04 > tbody > tr > th {
	width: 280px;
	padding-right: 1em;
	text-align: left;
}
.facilityTbl04 > tbody > tr > th::before {
	content: "■";
}

@media screen and (max-width: 768px) {
	.facilityTbl04,
	.facilityTbl04 > tbody,
	.facilityTbl04 > tbody > tr,
	.facilityTbl04 > tbody > tr > * {
		display: block;
	}
	.facilityTbl04 > tbody > tr > th {
		width: auto;
		margin-bottom: 0.5em;
	}
}

/* facilityTbl05 */
.facilityTbl05 > tbody > tr > * {
	vertical-align: top;
}
.facilityTbl05 > tbody > tr > * + * {
	border-left: solid 12px transparent;
}
.facilityTbl05 > tbody > tr > td:first-child {
	width: 70px;
}

@media screen and (max-width: 768px) {
	.facilityTbl05 > tbody > tr > td:nth-child(2) {
		width: 70px;
	}
	.facilityTbl05 > tbody > tr > td:nth-child(3) {
		width: calc(100% - 140px);
	}
}

/* manifest */
.facilityTbl04 .manifest td > * {
	float: left;
}

@media screen and (max-width: 768px) {
	.facilityTbl04 .manifest td > * {
		float: none;
	}
}

.facilityTbl04 .manifest .subTitle {
	clear: both;
	width: 7.0em;
}

@media screen and (max-width: 768px) {
	.manifest .facilityTbl05 {
		margin-top: 3px;
	}
	.manifest .facilityTbl05 > tbody > tr > td:nth-child(2) {
		width: 9.0em;
	}
	.manifest .facilityTbl05 + .subTitle {
		margin-top: 10px;
	}
}

.facilityTbl04 .manifest .eReverse {
	clear: both;
	margin-top: 1.0em;
}
