@charset "utf-8";
/* CSS Document */

/**************************************************
		common
**************************************************/
.main_wrap { padding-top: 60px; }

/* 中ページ　共通設定事項など */
#works_list,
#health{
	width:80%;
	max-width:960px;
	margin: 0 auto;
	font-size:1.5rem;
	font-weight:normal;
	line-height:2.1;
    letter-spacing:0.1em;
}
@media screen and (min-width: 2200px){
	#works_list,
	#works,
	#about,
	#recruit,
	#contact_page{
		max-width:1384px;
	}
}
@media screen and (max-width:1400px) and (min-width: 768px){
	#works_list,
	#about,
	#health{
		font-size:13px;/*文字小さくなりすぎないよう*/
	}
}
@media screen and (max-width:480px) {
	#works,
	#contact_page,
	#recruit,
	#works_list,
	#errorpage{
		width:73%;
	}
}

h2{
	background: url(../images/subpage_boxCorner-sp.png) no-repeat;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 100;
	letter-spacing: 0.3rem;
	font-size:4.6rem;
	line-height:1;
	margin:0;
	padding:2.5rem 0 0.5rem;
}
h3{
	font-weight: 100;
	font-size:1.7rem;
	line-height:1.4;
	margin-bottom: 4.167%;
    letter-spacing: 0.1em
}
h4 {
	font-size:2.2rem;
	line-height:1.4;
	background-image: url(../images/h4Corner.png), url(../images/h4Corner.png);
    background-repeat: no-repeat, no-repeat;
    background-position: center left, center right;
	display:inline-block;
	padding: 0 23px;
	letter-spacing: .1rem;
}
h5 {
	font-size:1.7rem;
	line-height:1.4;
	letter-spacing: .1rem;
	margin-bottom: 11px;
}
h6 {
	font-size:1.5rem;
	line-height:1.4;
    letter-spacing: 0.1em;
    margin-bottom: 0.5rem;
}

h5.ttl-mark{
	line-height:2rem;
}
h5.ttl-mark:before {
	content: "";
	display: inline-block;
	background: #f7b60a;
	width: 4px;
	height:2rem;
	margin-right:8px;
	float:left;
}

@media screen and (max-width:1400px) and (min-width:768px){
	h3{
		font-size:14px;/*文字小さくなりすぎないよう*/
	}
	h4{
		font-size:18px;/*文字小さくなりすぎないよう*/
	}
	h5{
		font-size:16px;/*文字小さくなりすぎないよう*/
	}
	h6{
		font-size:13px;/*文字小さくなりすぎないよう*/
	}
}
@media screen and (max-width:480px) {
	h2 {
		line-height: 1;
		padding: 2rem 0 1rem;
	}
	h4 {
		line-height: 2.6rem;
		padding: 0 19px;
	}
	h5 {
		line-height: 2.3rem;
		margin-bottom: 17px;
	}
}

.empty {
	display: inline-block;
	margin-top: 30px;
}
@media screen and (max-width:480px) {
	.empty {
		display: inline-block;
    	margin-top: 50px;
	}
}

.text-link, .text-link a {
	font-weight: bold;
	color: #f2660f;
}
.table {
	width: auto;
}
.table-row {
	width: 100%;
}
.table-row, .table-caption, .table-cell, .paragraph, #works, #works .page-nav li, #recruit {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 2.1em;
	letter-spacing: 0.1em;
}
.table-caption { display: table-caption; }
.table-caption, .table-cell { padding-top: 30px; }
#about .table-row:nth-child(3) .table-caption, #about .table-row:nth-child(3) .table-cell { padding-top: 20px; }
.table-row:first-child .table-caption, .table-row:first-child .table-cell { padding-top: 0; }
.table-cell {
	vertical-align: top;
	width: 100%;
}
@media screen and (max-width:480px) {
	.table-caption, .table-cell { padding-top: 24px; }
	div.page-top-wrap_narrow { padding-top: 80px !important; }
}

a.box-button span:hover {
	color: #fff;
	background: rgb(220,220,220);
}
#last { margin-top: 8.408%; } /* 160px */

.ethna-error {
	color: #e62117;
}

.ma-auto {
	margin-top: auto !important;
	margin-right: auto !important;
	margin-bottom: auto !important;
	margin-left: auto !important;
}
.my-auto {
	margin-top: auto !important;
	margin-bottom: auto !important;
}
.mx-auto {
	margin-left: auto !important;
	margin-right: auto !important;
}
.mt-auto {
	margin-top: auto !important;
}
.mr-auto {
	margin-right: auto !important;
}
.mb-auto {
	margin-bottom: auto !important;
}
.ml-auto {
	margin-left: auto !important;
}
.ma-0 {
	margin: 0 0 !important;
}
.my-0 {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.mx-0 {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.mt-0 {
	margin-top: 0 !important;
}
.mr-0 {
	margin-right: 0 !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}
.ml-0 {
	margin-left: 0 !important;
}
.pa-0 {
	padding: 0 0 !important;
}
.py-0 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.px-0 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.pt-0 {
	padding-top: 0 !important;
}
.pr-0 {
	padding-right: 0 !important;
}
.pb-0 {
	padding-bottom: 0 !important;
}
.pl-0 {
	padding-left: 0 !important;
}
.ma-1 {
	margin: 4px 4px !important;
}
.my-1 {
	margin-top: 4px !important;
	margin-bottom: 4px !important;
}
.mx-1 {
	margin-left: 4px !important;
	margin-right: 4px !important;
}
.mt-1 {
	margin-top: 4px !important;
}
.mr-1 {
	margin-right: 4px !important;
}
.mb-1 {
	margin-bottom: 4px !important;
}
.ml-1 {
	margin-left: 4px !important;
}
.pa-1 {
	padding: 4px 4px !important;
}
.py-1 {
	padding-top: 4px !important;
	padding-bottom: 4px !important;
}
.px-1 {
	padding-left: 4px !important;
	padding-right: 4px !important;
}
.pt-1 {
	padding-top: 4px !important;
}
.pr-1 {
	padding-right: 4px !important;
}
.pb-1 {
	padding-bottom: 4px !important;
}
.pl-1 {
	padding-left: 4px !important;
}
.ma-2 {
	margin: 8px 8px !important;
}
.my-2 {
	margin-top: 8px !important;
	margin-bottom: 8px !important;
}
.mx-2 {
	margin-left: 8px !important;
	margin-right: 8px !important;
}
.mt-2 {
	margin-top: 8px !important;
}
.mr-2 {
	margin-right: 8px !important;
}
.mb-2 {
	margin-bottom: 8px !important;
}
.ml-2 {
	margin-left: 8px !important;
}
.pa-2 {
	padding: 8px 8px !important;
}
.py-2 {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}
.px-2 {
	padding-left: 8px !important;
	padding-right: 8px !important;
}
.pt-2 {
	padding-top: 8px !important;
}
.pr-2 {
	padding-right: 8px !important;
}
.pb-2 {
	padding-bottom: 8px !important;
}
.pl-2 {
	padding-left: 8px !important;
}
.ma-3 {
	margin: 16px 16px !important;
}
.my-3 {
	margin-top: 16px !important;
	margin-bottom: 16px !important;
}
.mx-3 {
	margin-left: 16px !important;
	margin-right: 16px !important;
}
.mt-3 {
	margin-top: 16px !important;
}
.mr-3 {
	margin-right: 16px !important;
}
.mb-3 {
	margin-bottom: 16px !important;
}
.ml-3 {
	margin-left: 16px !important;
}
.pa-3 {
	padding: 16px 16px !important;
}
.py-3 {
	padding-top: 16px !important;
	padding-bottom: 16px !important;
}
.px-3 {
	padding-left: 16px !important;
	padding-right: 16px !important;
}
.pt-3 {
	padding-top: 16px !important;
}
.pr-3 {
	padding-right: 16px !important;
}
.pb-3 {
	padding-bottom: 16px !important;
}
.pl-3 {
	padding-left: 16px !important;
}
.ma-4 {
	margin: 24px 24px !important;
}
.my-4 {
	margin-top: 24px !important;
	margin-bottom: 24px !important;
}
.mx-4 {
	margin-left: 24px !important;
	margin-right: 24px !important;
}
.mt-4 {
	margin-top: 24px !important;
}
.mr-4 {
	margin-right: 24px !important;
}
.mb-4 {
	margin-bottom: 24px !important;
}
.ml-4 {
	margin-left: 24px !important;
}
.pa-4 {
	padding: 24px 24px !important;
}
.py-4 {
	padding-top: 24px !important;
	padding-bottom: 24px !important;
}
.px-4 {
	padding-left: 24px !important;
	padding-right: 24px !important;
}
.pt-4 {
	padding-top: 24px !important;
}
.pr-4 {
	padding-right: 24px !important;
}
.pb-4 {
	padding-bottom: 24px !important;
}
.pl-4 {
	padding-left: 24px !important;
}
.ma-5 {
	margin: 48px 48px !important;
}
.my-5 {
	margin-top: 48px !important;
	margin-bottom: 48px !important;
}
.mx-5 {
	margin-left: 48px !important;
	margin-right: 48px !important;
}
.mt-5 {
	margin-top: 48px !important;
}
.mr-5 {
	margin-right: 48px !important;
}
.mb-5 {
	margin-bottom: 48px !important;
}
.ml-5 {
	margin-left: 48px !important;
}
.pa-5 {
	padding: 48px 48px !important;
}
.py-5 {
	padding-top: 48px !important;
	padding-bottom: 48px !important;
}
.px-5 {
	padding-left: 48px !important;
	padding-right: 48px !important;
}
.pt-5 {
	padding-top: 48px !important;
}
.pr-5 {
	padding-right: 48px !important;
}
.pb-5 {
	padding-bottom: 48px !important;
}
.pl-5 {
	padding-left: 48px !important;
}

@media all and (min-width: 0) {
	.flex.xs1 {
		flex-basis: 8.333333333333332%;
		flex-grow: 0;
		max-width: 8.333333333333332%;
	}
	.flex.order-xs1 {
		order: 1;
	}
	.flex.xs2 {
		flex-basis: 16.666666666666664%;
		flex-grow: 0;
		max-width: 16.666666666666664%;
	}
	.flex.order-xs2 {
		order: 2;
	}
	.flex.xs3 {
		flex-basis: 25%;
		flex-grow: 0;
		max-width: 25%;
	}
	.flex.order-xs3 {
		order: 3;
	}
	.flex.xs4 {
		flex-basis: 33.33333333333333%;
		flex-grow: 0;
		max-width: 33.33333333333333%;
	}
	.flex.order-xs4 {
		order: 4;
	}
	.flex.xs5 {
		flex-basis: 41.66666666666667%;
		flex-grow: 0;
		max-width: 41.66666666666667%;
	}
	.flex.order-xs5 {
		order: 5;
	}
	.flex.xs6 {
		flex-basis: 50%;
		flex-grow: 0;
		max-width: 50%;
	}
	.flex.order-xs6 {
		order: 6;
	}
	.flex.xs7 {
		flex-basis: 58.333333333333336%;
		flex-grow: 0;
		max-width: 58.333333333333336%;
	}
	.flex.order-xs7 {
		order: 7;
	}
	.flex.xs8 {
		flex-basis: 66.66666666666666%;
		flex-grow: 0;
		max-width: 66.66666666666666%;
	}
	.flex.order-xs8 {
		order: 8;
	}
	.flex.xs9 {
		flex-basis: 75%;
		flex-grow: 0;
		max-width: 75%;
	}
	.flex.order-xs9 {
		order: 9;
	}
	.flex.xs10 {
		flex-basis: 83.33333333333334%;
		flex-grow: 0;
		max-width: 83.33333333333334%;
	}
	.flex.order-xs10 {
		order: 10;
	}
	.flex.xs11 {
		flex-basis: 91.66666666666666%;
		flex-grow: 0;
		max-width: 91.66666666666666%;
	}
	.flex.order-xs11 {
		order: 11;
	}
	.flex.xs12 {
		flex-basis: 100%;
		flex-grow: 0;
		max-width: 100%;
	}
	.flex.order-xs12 {
		order: 12;
	}
	.flex.offset-xs0 {
		margin-left: 0%;
	}
	.flex.offset-xs1 {
		margin-left: 8.333333333333332%;
	}
	.flex.offset-xs2 {
		margin-left: 16.666666666666664%;
	}
	.flex.offset-xs3 {
		margin-left: 25%;
	}
	.flex.offset-xs4 {
		margin-left: 33.33333333333333%;
	}
	.flex.offset-xs5 {
		margin-left: 41.66666666666667%;
	}
	.flex.offset-xs6 {
		margin-left: 50%;
	}
	.flex.offset-xs7 {
		margin-left: 58.333333333333336%;
	}
	.flex.offset-xs8 {
		margin-left: 66.66666666666666%;
	}
	.flex.offset-xs9 {
		margin-left: 75%;
	}
	.flex.offset-xs10 {
		margin-left: 83.33333333333334%;
	}
	.flex.offset-xs11 {
		margin-left: 91.66666666666666%;
	}
	.flex.offset-xs12 {
		margin-left: 100%;
	}
}
@media all and (min-width: 600px) {
	.flex.sm1 {
		flex-basis: 8.333333333333332%;
		flex-grow: 0;
		max-width: 8.333333333333332%;
	}
	.flex.order-sm1 {
		order: 1;
	}
	.flex.sm2 {
		flex-basis: 16.666666666666664%;
		flex-grow: 0;
		max-width: 16.666666666666664%;
	}
	.flex.order-sm2 {
		order: 2;
	}
	.flex.sm3 {
		flex-basis: 25%;
		flex-grow: 0;
		max-width: 25%;
	}
	.flex.order-sm3 {
		order: 3;
	}
	.flex.sm4 {
		flex-basis: 33.33333333333333%;
		flex-grow: 0;
		max-width: 33.33333333333333%;
	}
	.flex.order-sm4 {
		order: 4;
	}
	.flex.sm5 {
		flex-basis: 41.66666666666667%;
		flex-grow: 0;
		max-width: 41.66666666666667%;
	}
	.flex.order-sm5 {
		order: 5;
	}
	.flex.sm6 {
		flex-basis: 50%;
		flex-grow: 0;
		max-width: 50%;
	}
	.flex.order-sm6 {
		order: 6;
	}
	.flex.sm7 {
		flex-basis: 58.333333333333336%;
		flex-grow: 0;
		max-width: 58.333333333333336%;
	}
	.flex.order-sm7 {
		order: 7;
	}
	.flex.sm8 {
		flex-basis: 66.66666666666666%;
		flex-grow: 0;
		max-width: 66.66666666666666%;
	}
	.flex.order-sm8 {
		order: 8;
	}
	.flex.sm9 {
		flex-basis: 75%;
		flex-grow: 0;
		max-width: 75%;
	}
	.flex.order-sm9 {
		order: 9;
	}
	.flex.sm10 {
		flex-basis: 83.33333333333334%;
		flex-grow: 0;
		max-width: 83.33333333333334%;
	}
	.flex.order-sm10 {
		order: 10;
	}
	.flex.sm11 {
		flex-basis: 91.66666666666666%;
		flex-grow: 0;
		max-width: 91.66666666666666%;
	}
	.flex.order-sm11 {
		order: 11;
	}
	.flex.sm12 {
		flex-basis: 100%;
		flex-grow: 0;
		max-width: 100%;
	}
	.flex.order-sm12 {
		order: 12;
	}
	.flex.offset-sm0 {
		margin-left: 0%;
	}
	.flex.offset-sm1 {
		margin-left: 8.333333333333332%;
	}
	.flex.offset-sm2 {
		margin-left: 16.666666666666664%;
	}
	.flex.offset-sm3 {
		margin-left: 25%;
	}
	.flex.offset-sm4 {
		margin-left: 33.33333333333333%;
	}
	.flex.offset-sm5 {
		margin-left: 41.66666666666667%;
	}
	.flex.offset-sm6 {
		margin-left: 50%;
	}
	.flex.offset-sm7 {
		margin-left: 58.333333333333336%;
	}
	.flex.offset-sm8 {
		margin-left: 66.66666666666666%;
	}
	.flex.offset-sm9 {
		margin-left: 75%;
	}
	.flex.offset-sm10 {
		margin-left: 83.33333333333334%;
	}
	.flex.offset-sm11 {
		margin-left: 91.66666666666666%;
	}
	.flex.offset-sm12 {
		margin-left: 100%;
	}
}
@media all and (min-width: 960px) {
	.flex.md1 {
		flex-basis: 8.333333333333332%;
		flex-grow: 0;
		max-width: 8.333333333333332%;
	}
	.flex.order-md1 {
		order: 1;
	}
	.flex.md2 {
		flex-basis: 16.666666666666664%;
		flex-grow: 0;
		max-width: 16.666666666666664%;
	}
	.flex.order-md2 {
		order: 2;
	}
	.flex.md3 {
		flex-basis: 25%;
		flex-grow: 0;
		max-width: 25%;
	}
	.flex.order-md3 {
		order: 3;
	}
	.flex.md4 {
		flex-basis: 33.33333333333333%;
		flex-grow: 0;
		max-width: 33.33333333333333%;
	}
	.flex.order-md4 {
		order: 4;
	}
	.flex.md5 {
		flex-basis: 41.66666666666667%;
		flex-grow: 0;
		max-width: 41.66666666666667%;
	}
	.flex.order-md5 {
		order: 5;
	}
	.flex.md6 {
		flex-basis: 50%;
		flex-grow: 0;
		max-width: 50%;
	}
	.flex.order-md6 {
		order: 6;
	}
	.flex.md7 {
		flex-basis: 58.333333333333336%;
		flex-grow: 0;
		max-width: 58.333333333333336%;
	}
	.flex.order-md7 {
		order: 7;
	}
	.flex.md8 {
		flex-basis: 66.66666666666666%;
		flex-grow: 0;
		max-width: 66.66666666666666%;
	}
	.flex.order-md8 {
		order: 8;
	}
	.flex.md9 {
		flex-basis: 75%;
		flex-grow: 0;
		max-width: 75%;
	}
	.flex.order-md9 {
		order: 9;
	}
	.flex.md10 {
		flex-basis: 83.33333333333334%;
		flex-grow: 0;
		max-width: 83.33333333333334%;
	}
	.flex.order-md10 {
		order: 10;
	}
	.flex.md11 {
		flex-basis: 91.66666666666666%;
		flex-grow: 0;
		max-width: 91.66666666666666%;
	}
	.flex.order-md11 {
		order: 11;
	}
	.flex.md12 {
		flex-basis: 100%;
		flex-grow: 0;
		max-width: 100%;
	}
	.flex.order-md12 {
		order: 12;
	}
	.flex.offset-md0 {
		margin-left: 0%;
	}
	.flex.offset-md1 {
		margin-left: 8.333333333333332%;
	}
	.flex.offset-md2 {
		margin-left: 16.666666666666664%;
	}
	.flex.offset-md3 {
		margin-left: 25%;
	}
	.flex.offset-md4 {
		margin-left: 33.33333333333333%;
	}
	.flex.offset-md5 {
		margin-left: 41.66666666666667%;
	}
	.flex.offset-md6 {
		margin-left: 50%;
	}
	.flex.offset-md7 {
		margin-left: 58.333333333333336%;
	}
	.flex.offset-md8 {
		margin-left: 66.66666666666666%;
	}
	.flex.offset-md9 {
		margin-left: 75%;
	}
	.flex.offset-md10 {
		margin-left: 83.33333333333334%;
	}
	.flex.offset-md11 {
		margin-left: 91.66666666666666%;
	}
	.flex.offset-md12 {
		margin-left: 100%;
	}
}
@media all and (min-width: 1264px) {
	.flex.lg1 {
		flex-basis: 8.333333333333332%;
		flex-grow: 0;
		max-width: 8.333333333333332%;
	}
	.flex.order-lg1 {
		order: 1;
	}
	.flex.lg2 {
		flex-basis: 16.666666666666664%;
		flex-grow: 0;
		max-width: 16.666666666666664%;
	}
	.flex.order-lg2 {
		order: 2;
	}
	.flex.lg3 {
		flex-basis: 25%;
		flex-grow: 0;
		max-width: 25%;
	}
	.flex.order-lg3 {
		order: 3;
	}
	.flex.lg4 {
		flex-basis: 33.33333333333333%;
		flex-grow: 0;
		max-width: 33.33333333333333%;
	}
	.flex.order-lg4 {
		order: 4;
	}
	.flex.lg5 {
		flex-basis: 41.66666666666667%;
		flex-grow: 0;
		max-width: 41.66666666666667%;
	}
	.flex.order-lg5 {
		order: 5;
	}
	.flex.lg6 {
		flex-basis: 50%;
		flex-grow: 0;
		max-width: 50%;
	}
	.flex.order-lg6 {
		order: 6;
	}
	.flex.lg7 {
		flex-basis: 58.333333333333336%;
		flex-grow: 0;
		max-width: 58.333333333333336%;
	}
	.flex.order-lg7 {
		order: 7;
	}
	.flex.lg8 {
		flex-basis: 66.66666666666666%;
		flex-grow: 0;
		max-width: 66.66666666666666%;
	}
	.flex.order-lg8 {
		order: 8;
	}
	.flex.lg9 {
		flex-basis: 75%;
		flex-grow: 0;
		max-width: 75%;
	}
	.flex.order-lg9 {
		order: 9;
	}
	.flex.lg10 {
		flex-basis: 83.33333333333334%;
		flex-grow: 0;
		max-width: 83.33333333333334%;
	}
	.flex.order-lg10 {
		order: 10;
	}
	.flex.lg11 {
		flex-basis: 91.66666666666666%;
		flex-grow: 0;
		max-width: 91.66666666666666%;
	}
	.flex.order-lg11 {
		order: 11;
	}
	.flex.lg12 {
		flex-basis: 100%;
		flex-grow: 0;
		max-width: 100%;
	}
	.flex.order-lg12 {
		order: 12;
	}
	.flex.offset-lg0 {
		margin-left: 0%;
	}
	.flex.offset-lg1 {
		margin-left: 8.333333333333332%;
	}
	.flex.offset-lg2 {
		margin-left: 16.666666666666664%;
	}
	.flex.offset-lg3 {
		margin-left: 25%;
	}
	.flex.offset-lg4 {
		margin-left: 33.33333333333333%;
	}
	.flex.offset-lg5 {
		margin-left: 41.66666666666667%;
	}
	.flex.offset-lg6 {
		margin-left: 50%;
	}
	.flex.offset-lg7 {
		margin-left: 58.333333333333336%;
	}
	.flex.offset-lg8 {
		margin-left: 66.66666666666666%;
	}
	.flex.offset-lg9 {
		margin-left: 75%;
	}
	.flex.offset-lg10 {
		margin-left: 83.33333333333334%;
	}
	.flex.offset-lg11 {
		margin-left: 91.66666666666666%;
	}
	.flex.offset-lg12 {
		margin-left: 100%;
	}
}
@media all and (min-width: 1904px) {
	.flex.xl1 {
		flex-basis: 8.333333333333332%;
		flex-grow: 0;
		max-width: 8.333333333333332%;
	}
	.flex.order-xl1 {
		order: 1;
	}
	.flex.xl2 {
		flex-basis: 16.666666666666664%;
		flex-grow: 0;
		max-width: 16.666666666666664%;
	}
	.flex.order-xl2 {
		order: 2;
	}
	.flex.xl3 {
		flex-basis: 25%;
		flex-grow: 0;
		max-width: 25%;
	}
	.flex.order-xl3 {
		order: 3;
	}
	.flex.xl4 {
		flex-basis: 33.33333333333333%;
		flex-grow: 0;
		max-width: 33.33333333333333%;
	}
	.flex.order-xl4 {
		order: 4;
	}
	.flex.xl5 {
		flex-basis: 41.66666666666667%;
		flex-grow: 0;
		max-width: 41.66666666666667%;
	}
	.flex.order-xl5 {
		order: 5;
	}
	.flex.xl6 {
		flex-basis: 50%;
		flex-grow: 0;
		max-width: 50%;
	}
	.flex.order-xl6 {
		order: 6;
	}
	.flex.xl7 {
		flex-basis: 58.333333333333336%;
		flex-grow: 0;
		max-width: 58.333333333333336%;
	}
	.flex.order-xl7 {
		order: 7;
	}
	.flex.xl8 {
		flex-basis: 66.66666666666666%;
		flex-grow: 0;
		max-width: 66.66666666666666%;
	}
	.flex.order-xl8 {
		order: 8;
	}
	.flex.xl9 {
		flex-basis: 75%;
		flex-grow: 0;
		max-width: 75%;
	}
	.flex.order-xl9 {
		order: 9;
	}
	.flex.xl10 {
		flex-basis: 83.33333333333334%;
		flex-grow: 0;
		max-width: 83.33333333333334%;
	}
	.flex.order-xl10 {
		order: 10;
	}
	.flex.xl11 {
		flex-basis: 91.66666666666666%;
		flex-grow: 0;
		max-width: 91.66666666666666%;
	}
	.flex.order-xl11 {
		order: 11;
	}
	.flex.xl12 {
		flex-basis: 100%;
		flex-grow: 0;
		max-width: 100%;
	}
	.flex.order-xl12 {
		order: 12;
	}
	.flex.offset-xl0 {
		margin-left: 0%;
	}
	.flex.offset-xl1 {
		margin-left: 8.333333333333332%;
	}
	.flex.offset-xl2 {
		margin-left: 16.666666666666664%;
	}
	.flex.offset-xl3 {
		margin-left: 25%;
	}
	.flex.offset-xl4 {
		margin-left: 33.33333333333333%;
	}
	.flex.offset-xl5 {
		margin-left: 41.66666666666667%;
	}
	.flex.offset-xl6 {
		margin-left: 50%;
	}
	.flex.offset-xl7 {
		margin-left: 58.333333333333336%;
	}
	.flex.offset-xl8 {
		margin-left: 66.66666666666666%;
	}
	.flex.offset-xl9 {
		margin-left: 75%;
	}
	.flex.offset-xl10 {
		margin-left: 83.33333333333334%;
	}
	.flex.offset-xl11 {
		margin-left: 91.66666666666666%;
	}
	.flex.offset-xl12 {
		margin-left: 100%;
	}
}

.layout {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: nowrap;
	min-width: 0;
}

.layout.wrap {
	flex-wrap: wrap;
}

.layout.row {
	flex-direction: row;
}

.d-block {
	display: block !important;
}

@media (max-width: 959px) {
	.p-custom-sm {
		padding-right: 0px!important;
		padding-left: 0px!important;
	}
}


/* 基本の表スタイルtable */
table.table_style-type01 {
	border-collapse: collapse;
    width: 100%;
    border-top: 1px solid #EDEDED;
    border-bottom: 1px solid #EDEDED;
}
table.table_style-type01 th {
	background: #FAFAFA;
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #fff;
    letter-spacing: 0.1em;
    width:15rem;
}
table.table_style-type01 tr:last-child th { border: none; }
table.table_style-type01 td {
	padding: 1rem;
    border-bottom: 1px solid #EDEDED;
    letter-spacing: 0.1em;
}

/*「・」が付くリスト*/
#container ul.list_style-disc li{
	list-style:disc;
    list-style-position:inside;
	text-indent:-1.4em;
}
/*数字が付くリスト*/
#container ul.list_style-decimal li{
	list-style:decimal;
    list-style-position:outside;
	text-indent:-1.4em;
	margin-left: 3.5em;
	padding-left: 2em;
}
/*カッコ数字が付くリスト*/
#container dl.list_style-num-kakko{
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	margin-left:0.5rem;
}
#container dl.list_style-num-kakko dt{
	flex-basis:3em;
	text-align:right;
}
#container dl.list_style-num-kakko dd{
	flex-basis:calc(100% - 3em);
	padding-left:1rem;
}


/**************************************************
		会社概要
**************************************************/
#about {
	font-weight: normal;
	padding-top: 0;
}
@media print, screen and (min-width: 768px) {
	#about {
		width: calc(100vw - 10rem);
	}
}
#about p#side_logo {
	width: 25.6rem;
	float: left;
	margin-right: 16rem;
}
#about p#side_logo img {
	width: 100%;
}
#about .table {
	display: table;
}
#about .table-row {
	display: table-row;
	width: 100%;
}
#about .table-caption {
	width: 10.4rem;
	float: left;
	font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
	#about .table-caption {
		width: 17.6rem;
		font-size: 1.8rem;
	}
}
#about .table-row .location {
	display: block;
	padding-bottom:18px;
}
#about .table-row .location dd,
#about .table-row .access dd {
	display: block;
}
#about .table-row .access {
	display: block;
	padding-top: 5px;
}
#about .table-row .access dt {
	display: block;
	font-weight: bold;
}
#about .line p { padding-bottom: 3.2rem; }
@media print, screen and (min-width: 768px) {
	#about .line p {
		padding-bottom: 60px;
	}
}
#about .table-cell {
	display: table-cell;
	font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
	#about .table-cell {
		font-size: 1.8rem;
	}
}
#about .table-cell dl {
    display: table;
    width: 100%;
}
#about .table-cell dl dt {
    width: 6em;
    padding-right: 1em;
	white-space: nowrap;
}
#about .table-cell dl dt,
#about .table-cell dl dd {
    display: table-cell;
}
#about .table-cell span.button a {
	width: 30.6548%;
	max-width: 206px;
}
#about .paragraph {
	border-top: 1px dashed #D9D9D9;
	padding-top: 60px
}
#about .paragraph > p{
	margin: 0 0 24px;
	padding: 6px 12px 5px;
	background: #111;
	color: #fff;
	display: inline-block;
	line-height: 1.4;
	font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
	#about .paragraph >p {
		font-size: 1.8rem;
	}
}
#about .table-cell span.button span,
#recruit .table-cell span.button span {
	letter-spacing: .1rem;
	padding: 7.04% 0;
}
#about #last { margin-top: 7.834%; }

#about #link-menu_wrap{
	padding:1.5rem 0;
    margin-bottom: 3rem;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}
#about #link-menu_wrap #link-menu{
    display: grid;
    grid-template-columns:repeat(4,minmax(7rem,1fr));
    grid-gap:7px;
    justify-content:space-around;
}
#about #link-menu li{
    background: #fff;
	border: 1px solid #8C8C8C;
    text-align: center;
    float: left;
    border-radius: 50px;
}
#about #link-menu li:first-of-type {
	border: 1px solid #D82416;
	background: #fff;
}
#about #link-menu li:first-of-type a{ color: #D82416; }
#about #link-menu li a{
	color: #8C8C8C;
    font-weight: bold;
    font-size: 1.4rem;
    padding: 0.8rem 1rem;
    display: block;
	line-height: 1.7;
	letter-spacing: 0;
}
#about #link-menu li:first-of-type:hover {
	background: #D82416;
	border-color: #D82416;
}
#about #link-menu li:hover a { color: #fff; }
#about #link-menu li:hover {
	background: #484848;
	border-color: #484848;
	transition: 0.05s linear;
    -webkit-transition: all 0.05s linear;
    -moz-transition: all 0.05s linear;
    -o-transition: all 0.05s linear;
    -ms-transition: all 0.05s linear;
}

#about #link-menu_wrap .table-cell {
	display: table-cell;
    white-space: nowrap;
    width: auto;
	padding-top: 0;
}

#about #box-health { position: relative; }
#about #box-health a {
	padding: 2rem 3rem;
    margin-bottom: 4rem;
    background: #F7F7F7;
    display: flex;
    align-items: center;
    justify-content: center;
}
#about #box-health dt {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
    font-size: 1.8rem;
    font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	#about #box-health dt {
		font-size: 2rem;
	}
}
#about #box-health dt i {
	width: 23px;
    margin-right: 0.8rem;
}
#about #box-health dt i img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
#about #box-health dd {
	font-size: 1.6rem;
}
#about #box-health a:after {
    display: block;
    position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    border-right: 2px solid #111;
    border-top: 2px solid #111;
    -webkit-transform: inherit;
    right: 1.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}
#about #box-health:hover {
	transition: .3s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
    -ms-transition: all .2s linear;
	opacity: 0.5;
}
#about a {
	font-weight: normal;
}
#about .button {
	position: relative;
	padding: 0 2rem;
}
#about .button a {
	display: inline;
}
#about .button::before {
	position: absolute;
	content: "[";
	left: 1rem;
}
#about .button::after {
	position: absolute;
	content: "]";
	right: 1rem;
}
#about .button .m-iconFonts.is-window {
	padding: 0 2.4rem 0 0;
}
#about .m-iconFonts.is-window::after {
	content: "\e89e";
	font-size: 2rem;
	color: #D82016;
}

/* 健康経営宣言 */
#health {
	font-size: 1.6rem;
	padding: 0;
	margin: auto;
	width: 100%;
	max-width: unset;
}
@media print, screen and (min-width: 768px) {
	#health {
		font-size: 1.8rem;
	}
}
#health #health-handling .box{
	background: #F7F7F7;
    padding: 4rem;
    text-align: center;
    margin-top: 1rem;
    border: 1px solid rgba(0,0,0,.06);
    margin-bottom: 3rem;
}
#health #health-handling h3 {
	margin-bottom: 2.4rem;
    font-size: 2rem;
    line-height: 2;
    font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	#health #health-handling h3 {
		font-size: 2.4rem;
	}
}
#health #health-handling #signature {
	display: inline-block;
    float: right;
    text-align: right;
    margin-top: 4rem;
}
#health #health-handling h5 {
	font-size: 2rem;
	line-height: 1.6;
	text-align: center;
}
@media print, screen and (min-width: 768px) {
	#health #health-handling h5 {
		margin-top: 6.4rem;
		margin-bottom: 3.2rem;
	}
}
#health a {
	font-weight: normal;
}

/**************************************************
		プライバシーポリシー　個人情報の取り扱いについて
**************************************************/
#privacy{
	font-weight: 400;
	line-height: 2;
}
#privacy #title { margin-bottom: 3.125%; }
#privacy #title span { float: left; }

#privacy #signature {
	float: right;
}
@media screen and (max-width:480px){
	#privacy #signature {
		float: none;
	}
}

#privacy h2 {
	background: none;
	font-size: 3rem;
	font-weight: 700;
	padding: unset;
	margin-bottom: 2.4rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#privacy h2 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#privacy h3 {
	font-weight: 700;
	font-size: 2.4rem;
	margin-bottom: 1.6rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#privacy h3 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#privacy h4 {
	font-weight: 700;
	font-size: 1.8rem;
	margin-bottom: 1rem;
	background: none;
	padding: unset;
}
/* #privacy h2:first-child { margin-bottom: 3.125%; } */
#privacy p,
#privacy .m-listNotes {
	margin-bottom: 6.4rem;
}
#privacy #privacy-11_p { margin-bottom: 0.625%; }

#privacy #third-party,
#privacy .contact {
	border: 1px solid #111;
	padding: 2.4rem;
	margin-bottom: 6.25%;
}
@media screen and (min-width: 768px){
	#privacy #third-party {
		display: inline-block;
		/* width: 45%;
		min-width:430px; */
	}
}
#privacy-13_p { margin-bottom: 1.564% !important; }
#privacy ul { margin-bottom: 1.564%; }
#privacy ul li {
	padding-left: 1em;
}
/* #privacy #contact { margin: 2.084% 0; } */
#privacy #p-content_wrap { position: relative; }
#privacy .contact {
	display:inline-block;
	margin-bottom: 0;
}
#privacy .contact a { display: inline-block; }
#privacy #p-mark {
	display:inline-block;
	margin-bottom: 0;
	position: absolute;
	bottom: 0;
	right: 0;
}
#privacy #p-mark:hover {
	transition: 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: “alpha( opacity=50 )”;
}
#privacy #p-mark a {
	display: inline-block;
	width:110px;
}
#privacy #p-mark img { display: block; }

h3.privacy-disclosure { margin-bottom: 6.042%; } /* 58px */
#privacy-disclosure .ul_before { margin-bottom: 1.667%; } /* 16px */
#privacy-disclosure ul { margin-bottom: 5.314%; } /* 51px */
/* #privacy-disclosure ul li {
	padding-left: 2em;
    text-indent: -1em;
} */
#privacy-disclosure ul.index-3 li {
	padding-left: 3em;
    text-indent: -1em;
}
/* #privacy-disclosure span { padding-left: 2em; } */
/* #privacy-disclosure .contact { display: block; } */

@media screen and (max-width:767px){
	.tel-pc { display: none; }
	#privacy #p-mark {
		position:static;
		width:100%;
		margin-top:4rem;
		text-align:center;
	}
	#privacy #p-mark a{
		width:10rem;
		max-width:200px;
		min-width:100px;
	}
	#privacy #p-mark img { margin: 0 auto; }
}
@media screen and (max-width:480px){
	#privacy{
		line-height:1.8;
		font-size: 1.6rem;
	}
	#privacy #title {
		margin-bottom: 4rem;
	} /* 40px */
	#privacy #title span {
		float: none;
		display: block;
	}
	#privacy #title span h3 {/* margin-bottom: 8.565%;*/ } /* 20px */

	#privacy h2:first-child {
		margin-bottom: 1.6rem;
		font-size: 2.4rem;
		line-height: 1.6;
	}
	#privacy h3 {
		padding-left: 1.5em;
    	text-indent: -1.5em;
	}
	#privacy h3#privacy-11 {
		padding-left: 3.2em;
    	text-indent: -3.2em;
	}
	#privacy p {
		margin-bottom: 4rem;
	}
	#privacy #third-party, #privacy .contact {
		padding: 6.425%; /* 15px */
		width: 100%;
		box-sizing: border-box;
	}
	#privacy #privacy-11_p { margin-bottom: 5.995%; } /* 14px */
	#privacy-13_p { margin-bottom: 10.28% !important; } /* 24px */
	#privacy ul { margin-bottom: 10.28%; } /* 24px */
	/* #privacy ul li { padding-left: 2em; } */
	#privacy #contact{ margin:5.57% 0 7.28%; } /* 13px 0 17px */

	/* プライバシー　開示について */
	h3.privacy-disclosure { margin-bottom: 18.84%; }
	#privacy-disclosure .ul_before { margin-bottom: 7.28%; }
	#privacy-disclosure ul { margin-bottom: 18.84%; }
	/* #privacy-disclosure ul li {
		padding-left: 1em;
		text-indent: -1em;
	} */
	#privacy-disclosure ul span { padding-left: 0; }
}

/**************************************************
		情報セキュリティ
**************************************************/
#security{
	font-weight: 400;
	line-height: 2;
}
#security #title { margin-bottom: 3.125%; }
#security #title span { float: left; }
#security #title span h2 {/*
	margin-top: 0;
	padding: 13.46% 0 6.73%;
*/}
#security #signature {
	text-align: right;
	margin-bottom: 6.4rem;
}
#security p {
	margin-bottom: 6.4rem;
}
@media screen and (max-width: 480px) {
	#security p {
		margin-bottom: 4rem;
	}
}
#security li:last-child { margin-bottom: 3rem; }
@media screen and (max-width: 480px){
	#security {
		line-height: 1.8;
		font-size: 1.6rem;
	}
	#security #title {
		margin-bottom: 17.125%;
	}
	#security #signature {
		padding-top: 0;
		float: none;
		line-height: 2.5rem;
		text-align: left;
		margin-bottom: 4rem;
	}
	#security #title span {
		float: none;
		display: block;
	}
	/* #security #title span h2 {
		padding: 9.85% 0 5.57%;
	} */
	#security ul, #security li:last-child {
		margin-bottom: 2.5rem;
	}
}

#security table{
	border-collapse: collapse;
    width: 100%;
    border-top: 1px solid #EDEDED;
    border-bottom: 1px solid #EDEDED;
}
#security table th {
	background: #FAFAFA;
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #fff;
    letter-spacing: 0.1em;
	width: 22rem;
}
#security table tr:last-child th { border: none; }
#security table td {
	padding: 1rem;
    border-bottom: 1px solid #EDEDED;
    letter-spacing: 0.1em;
}
#security table td span {
	margin-bottom: 1.5rem;
	display: block;
}
@media screen and (max-width:767px){
	#security table{
		table-layout: fixed;
		width: 100%;
		word-wrap: break-word;
    	line-height:1.5;
	}
	#security table th,
	#security table td{
		width:auto;
		display:block;
	}
	#security table td{
		padding-bottom:2rem;
	}
	#security #title span h3{
		margin-bottom: 8.565%;
	}
}


#security h2 {
	background: none;
	font-size: 3rem;
	font-weight: 700;
	padding: unset;
	margin-bottom: 2.4rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#security h2 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#security h3 {
	font-weight: 700;
	font-size: 2.4rem;
	margin-bottom: 1.6rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#security h3 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}

/* #security h4 { margin: 2.084% 0; }
#security h4#isms { margin-top: 5rem; }
@media screen and (max-width: 480px){
	#security h4:first-child {
		margin-bottom: 12.845%;
	}
	#security h4#isms { margin-top: 6rem; }
} */
/* @media screen and (max-width: 480px){
	#security #isms{
		margin: 5.57% 0 7.28%;
	}
} */

#security #i-mark{
	text-align: center;
	margin-top: 5rem;
}
@media screen and (max-width:767px) {
	#security #i-mark {
		margin-top: 3rem;
	}
}
#security #i-mark .img_wrap {
	display: inline-flex;
	grid-gap:3rem;
	align-items:center;
	justify-content:center;
	border: 1px solid #111;
	padding: .1rem;
}
#security #i-mark .img_wrap p{
	margin:0;
}
#security #i-mark p.number{
	font-size:2rem;
	margin-top:1.5rem;
}
@media screen and (max-width:767px){
	#security #i-mark p.number{
		font-size:1.4rem;
	}
}


/**************************************************
		実ウェブサイト・SNS利用規約
**************************************************/
#website {
	font-weight: 400;
	line-height: 2;
}
@media screen and (max-width: 480px) {
	#website {
		line-height: 1.8;
		font-size: 1.6rem;
	}
}
#website h2 {
	background: none;
	font-size: 3rem;
	font-weight: 700;
	padding: unset;
	margin-bottom: 2.4rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#website h2 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#website h2:last-of-type {
	margin-top: 8rem;
}
@media screen and (max-width:480px) {
	#website h2:last-of-type {
		margin-top: 4rem;
	}
}
#website h3 {
	font-weight: 700;
	font-size: 2.4rem;
	margin-bottom: 1.6rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#website h3 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#website h4 {
	font-weight: 700;
	font-size: 1.8rem;
	margin-bottom: 1rem;
	background: none;
	padding: unset;
}

#website #website-handling div {
	margin-bottom: 6.4rem;
}
@media screen and (max-width: 480px) {
	#website #website-handling div {
		margin-bottom: 4rem;
	}
}
#website #website-handling div:last-of-type{
	margin-bottom:0;
}

/* #website #website-handling div h4{
	margin-bottom:5rem;
	margin-top:5rem;
}
#website #website-handling div h4:first-of-type{
	margin-top:0;
} */

/* #website #website-handling div h5{
	margin-top:6.5rem;
} */
/* #website #website-handling div h5:first-of-type{
	margin-top:0;
} */

/* #website #website-handling div h6{
	margin-top:2rem;
	font-weight:normal;
} */
/* #website #website-handling div h6:first-of-type{
	margin-top:0;
} */
#website #website-handling div p{
	margin-bottom:1rem;
}
#website #website-handling div p:last-child{
	margin-bottom:0;
}

@media screen and (min-width:768px) {
	#website ul li {
		padding-left:1.7em;
	}
}

#website #title{
	min-height:112px;
	margin-bottom:4rem;/*3.125%*/
}
#website #title span { float: left; }
@media screen and (max-width:768px) and (min-width:481px){
  #website #title span h2{
	line-height:1;
  }
}

/* #website #signature {
	float: right;
	padding-top: 2.5%;
} */


/**************************************************
		実績一覧
**************************************************/
#works_list{
}
@media screen and (max-width:480px) {
	#works_list { margin: 0 auto; }
}

#works_list #title{
	padding-bottom:2rem;
}
#works_list #title span {
	float: left;
	display:block;
}
@media screen and (max-width:1100px){
	#works_list #title span{
		float:none;
	}
	#works_list #title h3{
		margin-bottom:0.5rem;
	}
}
@media screen and (max-width:480px) {
	#works_list #title,
	#filterlist{
		width: 100%;
	}
}

#filter {
	margin: 0 auto;
	padding-top: 8.125%;
	text-align: center;
/*	font-size: 0;*/
	display: inline-block;
	float: right;
}
@media screen and (max-width:1100px){
	#filter{
		padding-top:1rem;
	}
}
@media screen and (max-width: 830px){
	#filter{
		float:none;
	}
	#works_list #works_menu-sp .sbHolder{
		margin-bottom:2rem;
	}
}
@media screen and (max-width:480px) {
	#filter {
		margin-bottom: 10.6%;
	}
}

#filter li {
	display: inline-block;
	margin-left: 10px;
}
#filter li:first-child { margin-left: 0; }
#filter li a,
div#filterlist ul li > span,
.category-kantyo,
.category-service,
.category-websystem,
#recruit .programmer {
	text-align: center;
    display: inline-block;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	padding: 2px 10px;
	cursor: pointer;
}
div#filterlist ul li a > span {
	display: inline-block;
    float: left;
	padding: 2px 5px;
	margin-bottom: 3px;
}
div#filterlist ul li a > span:first-of-type { margin-right: 5px; }
#filter li a.allitem {
	background: #fff;
	border: 1px solid #d82016;
	color: #d82016;
}
#filter li a.active.allitem, #filter li a.allitem:hover, #recruit .programmer{
	background: #d82016;
	border: 1px solid #d82016;
	color: #fff;
}
#filter li a.kantyo {
	background: #fff;
	border: 1px solid #e45a0e;
	color: #e45a0e;
}
#filter li a.active.kantyo, #filter li a.kantyo:hover,
div#filterlist ul li span.category-kantyo, .category-kantyo {
	background: #e45a0e;
	border: 1px solid #e45a0e;
	color: #fff;
}
#filter li a.service {
	background: #fff;
	border: 1px solid #ed8508;
	color: #ed8508;
}
#filter li a.active.service, #filter li a.service:hover,
div#filterlist ul li span.category-service, .category-service {
	background: #ed8508;
    border: 1px solid #ed8508;
    color: #fff;
}
#filter li a.websystem {
	background: #fff;
	border: 1px solid #f6b001;
	color: #f6b001;
}
#filter li a.active.websystem, #filter li a.websystem:hover,
div#filterlist ul li span.category-websystem, .category-websystem {
	background: #f6b001;
	border: 1px solid #f6b001;
	color: #fff;
}
@media screen and (max-width:480px) {
  #filter li { width: 100%; }
}

#filterlist{
	width:100%;
    max-width: 990px;
    margin: 0 auto
}
@media screen and (max-width:767px){
	#works_list div#filterlist ul.inner li{
		height:22rem;
	}
	#works_list div#filterlist ul.inner li span{
		font-size:9px;
		font-size:0.9rem;
		text-align: left;
		padding: 0.5rem;
		line-height: 1.4;
		margin-top: 0.2rem;
	}
}
@media screen and (max-width:767px) and (min-width:481px){
	#filterlist{
		width:100%;
	}
	#works_list #title { margin-bottom: 0; }
	#works_list a.box-button span { width: 100%; }
	div#filterlist ul li {
		margin:1rem 10px 1rem 10px;
	}

	#works_list div.button a.box-button,
	#works a.box-button{
		width: 280px;
	}
}
@media screen and (max-width:480px) {
	#filterlist { min-height: 30px; }
}

#filterlist ul.inner{
	margin: 0 auto;
	padding: 0;
	width: 100%;
	text-align: left;
	clear: both;
	overflow: hidden;
}
@media screen and (max-width:767px){
	#filterlist ul.inner{
	    display: grid;
	    grid-template-columns: repeat(2,minmax(1rem,1fr));
	    grid-gap:1rem;
	    justify-content: space-around;
	}
}
@media screen and (max-width:480px){
	#filterlist ul.inner{
	    grid-template-columns: repeat(1,minmax(1rem,1fr));
	}
}

div#filterlist ul.inner li {
    margin: 0 15px 3.7rem 15px;
}
@media screen and (max-width: 999px) and (min-width: 481px) {
  div#filterlist ul.inner li { height: 38rem; }
}
@media screen and (min-width:768px){
	div#filterlist ul.inner li {
		width: calc(33.333% - 30px);
		text-align: left;
	    float: left;
	    display: inline;
	}
}
@media screen and (max-width:480px) {
	#works_list div#filterlist ul.inner li{
		width: 100%;
		margin: 0 0 3rem 0;
		height: auto;
	}
}

div#filterlist ul.inner li div {
    position: relative;
    display: flex;
    padding: 2px;
	display:-webkit-box;
    display:-ms-flexbox;
    display: -webkit-flex;
}
div#filterlist ul.inner li div span {
	border: 1px dashed #dadada;
    display: inline-block;
	width: 100%;
	background: #fff;
}
div#filterlist ul.inner li > a > div > span:before {
	content: "";
    display: block;
    background: url(../images/boxCorner.png), url(../images/boxCorner.png), url(../images/boxCorner.png), url(../images/boxCorner.png);
    background-position: top left, top right, bottom left, bottom right;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	z-index: 1;
}
div#filterlist ul.inner li a {
	width: 100%;
	display: block;
}
div#filterlist ul.inner li span.panel_image { border: none; }
#filter .inner li a {
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: 0.1s linear;
}
#filterlist ul.inner li canvas {
    opacity: 1;
    position: absolute;
    top: 3px;
    left: 4px;
    -webkit-transition: opacity .2s;
    -moz-transition: opacity .2s;
    -o-transition: opacity .2s;
    -ms-transition: opacity .2s;
    transition: opacity .2s;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
}
#filterlist ul.inner li:hover canvas {
    opacity: 0;
}
.disabled .iradio_minimal { background-position: -200px 0; }
.disabled .iradio_minimal.checked { background-position: -220px 0; }
.disabled label { opacity: 0.3; }
#filterlist ul.inner li.kantyo div span:after,
#filterlist ul.inner li.websystem div span:after{
	background: url(../images/works/i-arrow.png);
	content: "";
	display: inline-block;
	right: 14px;
	bottom: 14px;
	width: 50px;
	height: 50px;
	position: absolute;
	opacity: 0;
	background-size: contain;
}
#filterlist ul.inner li.service div span:after {
	background: url(../images/works/window.png);
	content: "";
	display: inline-block;
	right: 14px;
	bottom: 14px;
	width: 50px;
	height: 50px;
	position: absolute;
	opacity: 0;
	background-size: contain;
}
#filterlist ul.inner li:hover div span:after {
	opacity: 1;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-ms-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: 0.2s linear;
}
#filterlist ul.inner li img {
	vertical-align: bottom;
	width: 100%;
    height: auto;
}
div#filterlist ul.inner li p{
	font-weight: bold;
	margin: 3.335% 0 1%;
	line-height:1.7;
}
div#filterlist ul.inner li span{
	font-size: 11px;
	font-size: 1.1rem;
}
div#filterlist ul.inner li div > span{
	padding-right: 0;
	padding-left: 0;
}
div#filterlist ul.inner li div span .panel_image, div#filterlist ul.inner li div span a{
	display: block;
	width: 100%;
	max-width: 294px;
	height: 0;
	padding-bottom: 100%;
	background-size: contain !important;
}
div#filterlist ul.inner li div span a > span {
	background: rgba(255,255,255,0.8);
	width: 48px;
	height: 48px;
	position: absolute;
	bottom: 10px;
	right: 10px;
	/*display: none;*/
	padding-bottom: 0;
}
div#filterlist ul.inner li div span:hover a > span {
	display: inherit;
}
div#filterlist ul.inner li div span a > span img {
	width: 48px;
	height: 48px;
}

#works_list div.button {
	width: 284px;
	margin: 3.031% auto 0;
}
#works_list div.button a.box-button,
#works a.box-button{
	width: 284px;
}
@media screen and (max-width:480px) {
	#works_list div.button,
	#works_list div.button a.box-button
	{
		width: 100%;
	}
	#works_list div.button {
		text-align: center;
	}
}

#filterlist ul li canvas:not(:target) {
	width: calc(100% - 2px)\9; /* IE9, 10 */
	height: calc(100% - 4px)\9;
}
div#filterlist ul.inner li div span:not(:target) { display: run-in; }

#filter_wrap {
	border-top: 1px solid #e5e5e5;
	padding-top: 2rem;
	margin-bottom: 5rem;
}
#filter_wrap .ttl{
    background: url(../images/works/bg-st.png) repeat;
    padding: 5px 10px;
    width:9em;
    text-align:center;
    font-weight:bold;
	white-space:nowrap;
}
@media screen and (max-width:767px){
	#filter_wrap{
		margin-bottom:4rem;
	}
	#filter_wrap .ttl{
		display: block;
		margin-bottom: 1.5rem;
		width:auto;
	}
}

#filter_wrap dl { display: table; }
#filter_wrap dl:first-of-type { margin-bottom: 1rem; }
#filter_wrap dt {
	display: table-cell;
	vertical-align: middle;
}
#filter_wrap dd{
	display: table-cell;
	vertical-align: middle;
}
@media screen and (max-width:767px){
	#filter_wrap dl{
		display:block;
	}
	#filter_wrap dl:first-of-type {
		margin-bottom:2rem;
	}
	#filter_wrap dd { display: table; }
}

#filter_wrap ul li{
    display:inline-block;
	padding-left:20px;
}
#filter_wrap .webtype dd ul li.service-parents { display: none; }
@media screen and (max-width: 880px) {
  #filter_wrap dd ul li{
	display: inline-block;
	float: left;
	width:auto;
	margin: 5px 0 5px 15px;
	padding: 0;
  }
  #filter_wrap dd ul li:first-of-type{
	padding-left:0;
  }
}
@media screen and (max-width:767px){
	#filterlist #filter_wrap ul li{
		margin: 0.3rem 0.5rem;
	}
}
@media screen and (max-width:480px) {
	#filter_wrap ul{
	    display: grid;
	    grid-gap:0.5rem;
	    justify-content: space-around;
	    grid-template-columns: repeat(2,minmax(1rem,1fr));
	    font-size:1.4rem;
	    line-height:1.5;
	}
	#filter_wrap dl#radio-system ul{/*使用システム*/
	    grid-template-columns: repeat(1,minmax(1rem,1fr));
	}
	#filter_wrap .systemtype dd ul li { width: 100%; }
	#filter_wrap .systemtype dd ul li:first-of-type { padding-left: 0; }
	#filter_wrap .webtype dd ul li:nth-of-type(odd), #filter_wrap .webtype dd ul li.service-parents2, #filter_wrap .systemtype dd ul li:nth-of-type(odd) { margin-left: 0; }
	#filter_wrap .webtype dd ul li.other-parents { margin-left: 15px; }
	#filterlist ul li,
	#filter_wrap .webtype dd ul li
	{
		margin-bottom: 1.5rem;
	}
	#filter_wrap .systemtype dd ul li {
		display: inline-block;
		float: left;
		padding: 0;
	}
}

#filterlist .hidden { display: none !important ; }
.type-special { display: block; }
.type { display: none; }
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, #filterlist ul.inner li canvas {
		width: calc(100% - 6px) !important;
		height: calc(100% - 6px) !important;
	} /* IE11 */
}
_:-ms-lang(x), _::-webkit-meter-bar,#filterlist ul.inner li canvas {
	width: calc(100% - 6px) !important;
	height: calc(100% - 6px) !important;
} /* Edge */
_::-webkit-full-page-media, _:future, :root #filterlist ul.inner li canvas {
    width: calc(100% - 8px) !important;
	height: calc(100% - 8px) !important;
	left: 3px;
} /* Safari */

/**************************************************
		実績詳細
**************************************************/
#works {
	width: 80%;
	max-width:960px;
	margin: 0 auto;
}
#works #main { text-align: center; }
#works #main > div {
	clear: both;
	overflow: hidden;
	text-align: left;
}
#works #title { margin-bottom: 3.125%; }
#works #title span { float: left; }
#works #title span h2 {
	margin-top: 0;
	padding: 15.895% 0 6.73%;
}
#works .page-nav {
	font-size: 0;
	display: block;
	text-align: center;
}
#works .page-nav .next { float: left; }
#works .page-nav .prev { float: right; }
#works #title  ul.page-nav {
	margin-top: 8.125%;
	float: right;
	display: inline-block;
	width: 212px;
}
#works .page-nav li {
	display: inline-block;
	line-height: 1.4rem;
	font-weight: bold;
}
#works .page-nav li.prev a:after, #works .page-nav li.prev_none a:after, #works .page-nav li.next a:before, #works .page-nav li.next_none a:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}
#works .page-nav li.prev a:after, #works .page-nav li.prev_none a:after {
	margin-left: 8px;
	cursor: pointer;
}
#works .page-nav li.next a:before, #works .page-nav li.next_none a:before {
	margin-right: 8px;
	cursor: pointer;
}
#works .page-nav li.next a:before{
	background: url(../images/works/pagenav_pre.png);
}
#works .page-nav li.next a:hover:before{
	background: url(../images/works/pagenav_pre_over.png);
}
#works .page-nav li.next_none a:before, #works .page-nav li.next_none a:hover:before{
	background: url(../images/works/pagenav_pre_none.png);
}
#works .page-nav li.prev a:after{
	background: url(../images/works/pagenav_nex.png);
}
#works .page-nav li.prev a:hover:after{
	background: url(../images/works/pagenav_nex_over.png);
}
#works .page-nav li.prev_none a:after, #works .page-nav li.prev_none a:hover:after{
	background: url(../images/works/pagenav_nex_none.png);
}
#works .page-nav li.prev_none a, #works .page-nav li.next_none a,
#works .page-nav li.prev_none a:before, #works .page-nav li.next_none a:after{
	color: #dad9d9;
	cursor: default;
}
#works .page-nav li a {
	vertical-align: middle;
	color: #f2660f;
}
#works .page-nav li:nth-child(2) {
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	padding: 0 8.334%; /* 0 80px */
	margin: 0 auto;
}
#works #title  ul.page-nav li:nth-child(2) {
	padding: 0 10px;
	margin: 0 auto;
}
#works #main ul.page-nav {
	padding-bottom: 3.022%;
	width: 100%;
	margin: 0 auto;
}

#works .category-kantyo,
#works .category-service,
#works .category-websystem{
	float: right;
	cursor: inherit;
	width: 190px;
	white-space: nowrap;
}
@media screen and (max-width:768px){
	#works .category-kantyo,
	#works .category-service,
	#works .category-websystem { float: none; }
	#works #btn_wrap {
		width: 100%;
		text-align: center;
	}
	#works #btn_wrap li { width: 100%; }
	#works #btn_wrap li:first-child {
		margin-bottom: 4.285%; /* 10px */
		margin-right: 0;
	}
}

#works #description{
	margin-top: 4.584%;
	text-align: left;
}
#works #btn_wrap{
	font-size: 0;
	margin: 5.417% 0 10.417%;
	text-align: center;
}
#works #btn_wrap li { display: inline-block; }
#works #btn_wrap li:first-child { margin-right: 6.58%; }

@media screen and (max-width:830px) {
	.works_menu-pc { display: none !important; }
	#filter {
		padding-top: 0;
		margin-bottom: 8.14%;
	}
	#filter li {
		width: 60%;
		margin: 10px 0 0 0;
	}
	#filter li:first-child {
		margin-top: 0;
	}
	#filter li a {
		width: 100%;
		box-sizing: border-box;
	}
	div#filterlist ul li span.category-websystem,
	.category-websystem {
		text-align: left;
	}
}

@media screen and (min-width:831px){
	#works_menu-sp { display: none; }
}
@media screen and (max-width:830px){
	#works_menu-sp{
		margin-top: 5rem;
	}
	#works_menu-sp label {
		line-height: 2.1em;
		letter-spacing: 0.1em;
	}
	#works_menu-sp .sbSelector{
		line-height:1;
		padding:1rem;
	}
	#works_menu-sp .sbHolder{
  		font-size:inherit;
	}
}
@media screen and (max-width:767px){
	#works_menu-sp{
		font-size:1.5rem;
	}
	#works_menu-sp .sbHolder{
		min-height:2em;
	}
	#works_menu-sp .sbSelector{
		height: auto;
		padding: 0.5rem;
		line-height:1.3;
	}
}
@media screen and (max-width:480px) {
	#works_menu-sp{
		margin-top: 3rem;
		font-size: 1.5rem;
	}
	#works_menu-sp .sbSelector{
	line-height:1.2;
	}
}

/**************************************************

**************************************************/
#capture {
	max-width: 960px;
	margin: 3.23% auto 0;
}
@media screen and (max-width:767px) and (min-width:481px){
	#capture { margin-top: 4.404%; }
}

section.column-1 {
    width: 69.0625%;
    margin: 0 auto;
}
#capture #cap-pc {
	width: 69.0625%;
	display: table-cell;
	position: relative;
}
#capture #cap-pc:before {
	content: "";
	background:url(../images/works/bg-pc_top.png) no-repeat;
	display: block;
	background-size: 100% auto;
	max-width: 663px;
	padding-bottom: 4.3%;
}
#capture #cap-pc .img_wrap {
	background: url(../images/works/bg-pc_middle.png);
	background-repeat: repeat-y;
	background-size: 100% auto;
	max-width: 663px;
	display: block;
	width: 100%;
}
#capture #cap-pc .img_wrap img {
	width: 90.5%;
	max-width: 600px;
	margin: 0 auto;
	max-height: 330px;
	vertical-align: bottom;
	margin-left: 4.8%;
}
#capture #cap-pc:after {
	content: "";
	background: url(../images/works/bg-pc_bottom.png) no-repeat;
	display: block;
	background-size: 100% auto;
	padding-bottom: 22.475%;
	max-width: 663px;
}
#capture #cap-sp {
	width: 30.9375%;
	display: table-cell;
	text-align: center;
	vertical-align: bottom;
}
#capture #cap-sp_content {
	width:57.24%;
	margin: 0 auto;
}
#capture #cap-sp_content:before {
	content: "";
	background:url(../images/works/bg-sp_top.png) no-repeat;
	display: block;
	background-size: 100% auto;
	max-width: 170px;
	padding-bottom: 16%;
}
#capture #cap-sp .img_wrap {
	background: url(../images/works/bg-sp_middle.png);
	background-repeat: repeat-y;
	background-size: 100% auto;
	max-width: 170px;
	display: block;
}
#capture #cap-sp .img_wrap img {
	width: 90.5%;
	max-width: 142px;
	margin: 0 auto;
	max-height: 240px;
	vertical-align: bottom;
}
#capture #cap-sp_content:after {
	content: "";
	background: url(../images/works/bg-sp_bottom.png) no-repeat;
	display: block;
	background-size: 100% auto;
	padding-bottom: 25.89%;
	max-width: 170px;
}


/**************************************************
		採用情報
**************************************************/
#recruit {
	width: 80%;
	max-width:960px;
	margin: 0 auto;
}
#recruit p#side_logo {
	width: 15.41666%;
	max-width: 148px;
	float: left;
	margin-right: 8.334%;
}
#recruit p#side_logo img {
	width: 100%;
}
#recruit .type {
	display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	margin: 1.146% 0 0.939%;
}
#recruit .type span { cursor: default; }
#recruit .table { margin-bottom: 2.084%; }
#recruit .table-row {
	width: 100%;
}
#recruit .table-cell ul { margin-bottom: 13px; }
#recruit .table-cell ul.ul-1 { margin-bottom: 0; }
#recruit .table-cell li,
#recruit .flow p{
    padding-left: 1em;
    text-indent: -1em;
}
#recruit .table-cell img.step-pc {
	margin-top: 0.974%;
	width: 100%;
	max-width: 583px;
}
#recruit .table-caption { width: 115px; }
#recruit .flow {
	width: 76.25%;
	float: right;
	margin-top: 8.334%;
}
#recruit .btn-enter a{
	width: 46.03%;
	max-width: 284px;
	margin-top: 3.23%;
}
#recruit .flow img {
	margin-top: 2.734%;
	width: 100%;
	max-width: 732px;
}
#recruit .table-row .location {
	display: block;
	padding-bottom:18px;
}
#recruit .table-row .access {
	display: block;
	padding-top: 5px;
}
#recruit .table-cell span.button a {
	width: 33.388%;
	max-width: 206px;
}
#recruit .btn-enter {
	text-align: center;
	clear: both;
	overflow: hidden;
}

/**************************************************
		お問い合わせ
**************************************************/
#contact_page {
	width: 80%;
	max-width:960px;
	margin: 0 auto;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 2.1em;
    letter-spacing: 0.1em;
}
#contact_page h3 { margin-bottom: 2.084%; }
#contact_page .phone {
	border: 1px solid #111;
	width: 48.958%;
	margin: 0 auto;
	padding: 1.564% 0 1.667% 7.814%;
	box-sizing: border-box;
}
#contact_page section#tel-pc {
    position: relative;
	text-align: center;
	padding-left: 0;
}
#contact_page .phone img {
    position: absolute;
    top: 25%;
    left: 14.5%;
	width: auto;
}
#contact_page .phone p {
	display: inline-block;
	text-align: left;
}
#contact_page .phone p span {
	font-weight: bold;
	font-size: 22px;
	font-size: 2.2rem;
	letter-spacing: 0.1rem;
	line-height: 1.8em;
}
#contact_form h4 { margin: 6.25% 0 1.564% 0; }
#contact_form .contact-caution {
	font-size: 1.4rem;
    margin-bottom: 2.5rem;
    color: #D82016;
    text-indent: -1em;
    margin-left: 1em;
	margin-top: 0;
}
#contact_form form > div {
	clear:both;
	overflow: hidden;
}
#contact_form p.caution-1, #contact_form p.caution-2 {
	font-size: 14px;
	font-size: 1.4rem;
    font-weight: bold;
    color: #e62117;
    letter-spacing: .1em;
}
#contact_form p.caution-1 {
	margin: 1.042% 0 2.605%;
	text-align: center;
	margin-bottom: 1.09%;
}
#contact_form div.content_left,#contact_form ul.content_right {
	width: 47.916%;
	float: left;
}
#contact_form div.content_left { margin-right: 4.167%; }
#contact_form .rec {
	background: #d82016;
	color: #fff;
	border-radius: 17px;
	-webkit-border-radius: 17px;
	-moz-border-radius: 17px;
	padding: 2px 8px;
	font-size: 11px;
	font-size: 1.1rem;
	margin-right: 1rem;
}
#contact_form .ex {
	font-size: 12px;
	font-size: 1.2rem;
	margin-left: 2rem;
}
#contact_form li.price .ex, #contact_form li.department .ex{
	display: block;
	margin-left: 0;
}
#contact_form select, #contact_form form ul li label, #contact_form form ul li input, #contact_form form ul li textarea, #request_textarea textarea {
	width: 100%;
	box-sizing: border-box;
}
#contact_form select, #contact_form form ul li input, #request_textarea textarea {
	margin: 2.175% 0 6.525%;
	border: 1px solid #dad9d9;
}
#contact_form form ul li input:hover, #contact_form form ul li textarea:hover, #request_textarea textarea:hover, #contact_form form ul li input:focus, #contact_form form ul li textarea:focus, #request_textarea textarea:focus { border: 1px solid #111; }
#contact_form select, #contact_form select option, #contact_form form ul li input, #contact_form form ul li textarea, #request_textarea textarea, .recruit-form-wrap textarea {
    font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
    font-size: 13px;
	font-size: 1.3rem;
    line-height: 2.1em;
    letter-spacing: 0.1em;
	outline: none;
	background: #fff;
}
#contact_form form ul li input, #contact_form form ul li textarea, #request_textarea textarea {
	-o-box-shadow: none;
	-ms-box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	-o-border-radius: 0;
	-ms-border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
}
#contact_form .important { background: #E3625B; }
#contact_form form ul li input { padding: 0.874% 2.394%; } /* 3px 11px */
#contact_form form ul li textarea, #request_textarea textarea  { padding: .9rem 1.4rem; } /* 9px 19px */
#request_textarea textarea  {
	min-height: 175px;
	height: auto;
}
#contact_form form ul#contact_right li textarea, #contact_form form ul#coverage_right li textarea {
	min-height: 583px;
	height: auto;
	margin-top: 2.175% ;
	border: 1px solid #dad9d9;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
::i-block-chrome, #contact_form form ul#contact_right li textarea, #contact_form form ul#coverage_right li textarea {
	min-height: 573px;}
}
@-moz-document url-prefix() {
#contact_form form ul#contact_right li textarea, #contact_form form ul#coverage_right li textarea  {
	min-height: 588px;
}
}
#contact_form form ul li#radio label:first-child {
	display: inline-block;
}
#contact_form form p.radio_title {
	line-height: 2.1rem;
    margin-top: 6.2%;
	margin-bottom: 2%;
}
#contact_form form p.title-1 { margin-top: 1.7%; }
#contact_form form li#radio p.service_title {
	margin-bottom: 1.09%;
	display: block;
	margin-left: 1rem;
}
#contact_form form p.radio_title:before {
	content: "";
	width: 2px;
	height: 15px;
	background: #111;
	display: inline-block;
    vertical-align: top;
    margin: 0.435% 2.175% 0 0 ; /* 2px 10px 0 0 */
}
#contact_form form ul li#radio { margin-bottom: 12%; }
#contact_form form ul li#radio label,
#contact_form div#agree_wrap label,
#works_list #filter_wrap label {
	margin-left: .5rem;
	cursor: pointer;
}
#contact_form form ul li#radio label:first-child {
	margin-left: 0;
	cursor: default;
}
#contact_form form ul li#radio div label[for="sp_service"] { margin-right: 7.5rem; }
#contact_left input[type="tel"]{ margin-bottom: 4.35%; }
#contact_form form ul#request_right li:first-child label:first-child:before { display: none; }
#request_textarea {
	clear: both;
	overflow: hidden;
}
#request_textarea textarea {
	margin-top: 1.043%;
	margin-bottom: 0;
}
#contact_form .agree_p {
	margin-top: 5.625%;
	text-align: center;
}
#agree_wrap {
	text-align: center;
	margin-top: 0.73%;
}
#contact_form .submit_p {
	margin-top: 8.064%;
	text-align: center;
}
#contact_form .contact_footer{
	width: 100%;
	text-align: center;
}
#contact_form button {
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	width: 29.584%;
    margin: 1.459% auto 0;
	background: #fff;
    border: none;
    padding: 0;
	outline: none;
	position: relative;
}
#contact_form button span {
	display: block;
    margin: 2px;
    border: 1px dashed #dadada;
    letter-spacing: 0.4rem;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.1em;
    text-align: center;
    padding: 7.22%;
    cursor: pointer;
}

#contact_form button span:hover {
  background: rgb(220,220,220,0.3);
}

.box-button span:after {
    content: "";
    display: block;
    background: url(../images/boxCorner.png),url(../images/boxCorner.png),url(../images/boxCorner.png),url(../images/boxCorner.png);
    background-position: top right, top left, bottom right, bottom left;
    background-repeat: no-repeat;
    width: 100%;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    position: absolute;
}

#contact_form button .box-button  { padding: 7.22%; }
#inline {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 2.1em;
    letter-spacing: 0.1em;
	padding: 30px 20px 30px 40px !important;
	min-height: 200px;
	max-height: 650px !important;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	width: auto !important;
}
#inline ul { margin-bottom: 5.314%; }
#inline ul li {
	padding-left: 2em;
    text-indent: -1em;
}
#inline .ul_before { margin-bottom: 1.667%; }
#inline p { margin-bottom: 5.314%; }
#inline .contact {
	border: 1px solid #111;
    padding: 1.25% 2.084%;
    width: 54.484%;
	max-width: 474px;
}
.mCSB_inside > .mCSB_container > div { margin: 10px 0; }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	#contact_form form ul li input {
		height: 36px;
		padding-left: 2.39%;
	}
}/* IE10 */

/* thanksページ */
.thanks_page #contact_form > p {
	margin: 12.5% 0 37.418% !important;
	text-align: center;
}

/* 採用フォーム */
#recruit-wrap {
	width: 100%;
}

#recruit-wrap .text-wrap {
	text-align: center;
}

@media screen and (max-width: 768px) {
	#recruit-wrap .text-wrap {
		text-align: left;
	}
}

#recruit-wrap .btn-wrap {
	text-align: center;
}

#recruit-wrap a {
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	width: 29.584%;
	margin: 1.459% auto 0;
	background: #fff;
	border: none;
	padding: 0;
	outline: none;
	position: relative;
	color: #111;
}

#recruit-wrap a span {
	display: block;
	margin: 2px;
	border: 1px dashed #dadada;
	letter-spacing: 0.4rem;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.1em;
	text-align: center;
	padding: 7.22%;
	cursor: pointer;
}

.recruit-form-wrap {
	flex: 1 1 auto;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	display: flex;
	flex-direction: column;
	max-width: 100%;
	position: relative;
}

.recruit-form-wrap input.form-control,
.recruit-form-wrap .job-select-wrap.form-control,
.recruit-form-wrap textarea.form-control {
	display: block;
	width: 100%;
	min-height: 54px!important;
	box-sizing: border-box;
	padding: 1.375rem 0.75rem;
	margin: 0px!important;
	font-size: 16px!important;
	line-height: 20px;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	border: 2px solid rgba(0,0,0,.54)!important;
	border-radius: 4px;
	transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.recruit-form-wrap input.form-control:hover,
.recruit-form-wrap .job-select-wrap.form-control:hover,
.recruit-form-wrap textarea.form-control:hover {
	border: 2px solid rgba(0,0,0,.87)!important;
}

.recruit-form-wrap .job-select-wrap.form-control:hover {
	cursor: pointer;
}

.recruit-form-wrap input.form-control:focus,
.recruit-form-wrap .job-select-wrap.form-control:focus,
.recruit-form-wrap textarea.form-control:focus{
	color: #495057;
	background-color: #fff;
	outline: 0;
	box-shadow: none;
	border: 2px solid #1976d2!important;
}

.recruit-form-wrap input.form-control::placeholder,
.recruit-form-wrap .job-select-wrap.form-control::placeholder,
.recruit-form-wrap textarea.form-control::placeholder{
	color: #9e9e9e;
}

@media (max-width: 959px) {
	.recruit-form-wrap input.form-control::placeholder,
	.recruit-form-wrap .job-select-wrap.form-control::placeholder,
	.recruit-form-wrap textarea.form-control::placeholder{
		font-size: 14px;
	}
}

.recruit-form-wrap dl dt {
	padding-top: 16px!important;
	padding-bottom: 16px!important;
}

.recruit-form-wrap dl dt span.any {
	color: #fff;
	border-radius: 17px;
	-webkit-border-radius: 17px;
	-moz-border-radius: 17px;
	padding: 2px 8px;
	margin-right: 1rem;
	background: #5264AE;
}

.recruit-form-wrap dd .file-wrap {
	background-color: #f4f4f4;
	padding: 10px 20px;
}

.recruit-form-wrap .text-helper p {
	color: rgba(0,0,0,.54);
	font-size: 12px;
	margin: 6px 0 0 0;
}

#recruit-wrap a span:hover {
	background: rgb(220,220,220,0.3);
	color: #111;
}

.select-toggle {
	position: relative;
}

.select-toggle:after {
	content: "";
	width: 0;
	position: absolute;
	height: 0;
	border: 5px solid transparent;
	border-top: 7px solid #9e9e9e;
	right: 1.6%;
	bottom: 0%;
}

.job-list-wrap {
	position: relative;
}

ul.job-list {
	position: absolute;
	width: 100%;
	box-sizing: border-box;
	top: -54px;
	background-color: #fff;
	border: 2px solid rgba(0,0,0,.54)!important;
	border-radius: 4px;
}

ul.job-list li {
	padding: 10px 10px;
	font-size: 16px;
}

ul.job-list li:hover {
	background-color: #f6f6f6;
}

@media screen and (max-width: 768px) and (min-width: 481px){
	#recruit-wrap a.box-button {
		width: 47.273% !important;
	}
}

/**************************************************
		コンプライアンス相談窓口
**************************************************/
#compliance {
	font-weight: 400;
	line-height: 2;
}
@media screen and (max-width:480px) {
	#compliance {
		line-height: 1.8;
		font-size: 1.6rem;
	}
}
#compliance h2 {
	background: none;
	font-size: 3rem;
	font-weight: 700;
	padding: unset;
	margin-bottom: 2.4rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#compliance h2 {
		font-size: 2rem;
		margin-bottom: .8rem;
	}
}
#compliance h3 {
	font-weight: 700;
	font-size: 2.4rem;
	margin-bottom: 1.6rem;
	line-height: 1.8;
}
@media screen and (max-width:480px) {
	#compliance h3 {
		font-size: 2rem;
		margin-bottom: 1.3rem;
	}
}
#compliance-content .txt { margin-bottom: 6rem; }
#compliance-content .ex {
	margin-top: 1rem;
	font-size:0.9em;
	display: block;
}
/* #compliance-content .block {
	margin: 3rem 0 5rem;
} */
#compliance-content #target ul { list-style: disc; }
#compliance-content #target ul li { margin-left: 1em; }
#compliance-content .box {
	text-align: center;
	display: flex;
	flex-direction: column;
	padding: 2rem 1.5rem;
}
@media screen and (min-width: 768px) {
	#compliance-content .box {
		width: 50%;
		padding: 1rem 2rem;
	}
}
#compliance-content .box:first-child {
	border-bottom: 1px solid #191919;
}
@media screen and (min-width: 768px) {
	#compliance-content .box:first-child {
		border-right: 1px solid #191919;
		border-bottom: none;
	}
}
#compliance #consultation {
	background: #F7F7F7;
	padding: 2rem;
	margin: 3rem 0 5rem;
}
@media screen and (min-width: 768px) {
	#compliance #consultation {
		display: flex;
		padding: 3rem;
	}
}
#compliance-content .txt-box {
	font-weight: bold;
	/* font-size:1.2em; */
	line-height: 1.8;
	text-align: left;
	margin: 0 auto;
	display: inline-block;
}
/* #compliance-content .txt-box .address { margin-bottom: 1rem; } */
#compliance-content .button {
	height: 100%;
	display: flex;
	justify-content: center;
}
#compliance-content .button a {
    width: 100%;
    max-width: 284px;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
@media screen and (min-width: 768px) {
	#compliance-content .txt { text-align: center; }
	/* #compliance-content .button a {
		margin-top: 3.23%;
	} */
}
@media screen and (max-width:767px) {
	#compliance-content .txt-box {
		font-size:1.6rem;
		line-height:1.6;
	}
}
#compliance-content .button a:hover span {
	background: #fff;
	color: #111;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s linear;
}

#contact_wrap {
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
	margin: 6.25% 0 1.564% 0;
}

#contact_wrap .inquiry_content,
#contact_wrap .recruit_content {
	width: 45%;
	text-align: center;
	margin: 10px;
	position: relative;
}

#contact_wrap .inquiry_content a,
#contact_wrap .recruit_content a {
	display: block;
	margin: 2px;
	border: 1px dashed #dadada;
	letter-spacing: 0.4rem;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.1em;
	text-align: center;
	padding: 60px 0 50px 0;
}

#contact_wrap .inquiry_content a:hover,
#contact_wrap .recruit_content a:hover {
	background: rgb(220,220,220,0.3);
}

/* #contact_wrap .inquiry_content a .inquiry_wrap h3,
#contact_wrap .recruit_content a .recruit_wrap h3 {
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 10px;
} */

/* #contact_wrap a:after {
	content: "";
	display: block;
	background: url(../images/boxCorner.png),url(../images/boxCorner.png),url(../images/boxCorner.png),url(../images/boxCorner.png);
	background-position: top right, top left, bottom right, bottom left;
	background-repeat: no-repeat;
	width: 100%;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	position: absolute;
} */

@media screen and (max-width: 960px) {
	#contact_wrap .inquiry_content,
	#contact_wrap .recruit_content {
		width: 100%;
	}
	#contact_wrap .inquiry_content a .inquiry_wrap h3,
	#contact_wrap .recruit_content a .recruit_wrap h3 {
		font-size: 18px!important;
		margin-bottom: 0!important;
	}
	#contact_wrap .inquiry_content a .inquiry_wrap p,
	#contact_wrap .recruit_content a .recruit_wrap p {
		font-size: 10px!important;
	}
	#contact_wrap .inquiry_content a,
	#contact_wrap .recruit_content a {
		padding: 20px 0 10px 0;
	}
}

#compliance a.box-button p {
	border: 1px solid #D71518;
	border-radius: 3rem;
	background: #D71518;
	margin: 0;
	width: 100%;
}
#compliance a.box-button span {
	line-height: 1.8;
	padding: 1.6rem 2.4rem;
	border-radius: 3rem;
	width: 100%;
}
#compliance a.box-button {
	color: #fff;
}
#compliance a.box-button:before,
#compliance .box-button span:after {
	display: none;
}

/*-------------------------------------------------------------------------------------------
	 mediaquery
-------------------------------------------------------------------------------------------*/
@media screen and (min-height:2070px) { /* 高さ2070px以上 */
	.last_fix #last{
		position: absolute;
		bottom: 0;
		width: 100%;
	}
}
@media screen and (min-width: 2200px){
	/* 会社概要 */
	#about .paragraph {
		width: auto;
		max-width: 1120px;
	}

	/* 採用情報 */
	#recruit .flow { width: 80.925%; }

	/* 実績一覧 */
	#capture #cap-sp_content:before { padding-bottom: 12%; }
}
@media screen and (min-device-height: 1201px) {
	.thanks_page #contact_form > p { margin: 12.5% 0 47.418% !important; }
}
@media screen and (max-device-height: 1200px) and (min-device-height: 1081px) {
	.thanks_page #contact_form > p { margin: 15.5% 0 59.418% !important; }
}
@media screen and (max-device-height: 1080px) and (min-device-height: 1051px) {
	.thanks_page #contact_form > p { margin: 12.5% 0 49.418% !important; }
}
@media screen and (max-device-height: 1050px) and (min-device-height: 1025px) {
	.thanks_page #contact_form > p { margin: 11.5% 0 47.418% !important; }
}
@media screen and (max-device-height: 1024px) and (min-device-height: 901px) {
	.thanks_page #contact_form > p { margin: 10.5% 0 45.418% !important; }
}
@media screen and (max-device-height: 900px) and (min-device-height: 801px) {
	.thanks_page #contact_form > p { margin: 8.5% 0 35.418% !important; }
}
@media screen and (max-device-height: 800px) and (min-device-height: 769px) {
	.thanks_page #contact_form > p { margin: 7.5% 0 25.418% !important; }
}
@media screen and (max-device-height: 768px) and (max-width: 1366px) and (min-width: 769px) {
	.thanks_page #contact_form > p { margin: 5.5% 0 24.418% !important; }
}
@media screen and (max-device-height: 768px) and (max-width: 1024px) and (min-width: 769px) {
	.thanks_page #contact_form > p { margin: 8.5% 0 31.418% !important; }
}
@media screen and (max-width:1049px) and (min-width:481px){
/*	#filter { padding-top: 0; }*/
}
@media screen and (max-device-height:1024px) and (max-width:768px)and (min-device-height:901px) and (min-width:481px){
	.thanks_page #contact_form > p { margin:17.5% 0 51.418% !important }
}

@media screen and (max-width:1066px) and (min-width:831px) {
	/* 実績一覧 */
/*	#filter {
		float: none;
		margin-top: 0.7%;
		padding-top: 0;
	}
*/
}
@media screen and (min-width: 1000px) {
	/* 実績一覧 */
	#filter_wrap { padding-left: 15px; }
	div#filterlist ul.inner li{ height: 37.9rem; }
}
@media screen and (min-width: 1200px) {
	div#filterlist ul.inner li{ height: 45rem; }
}

@media screen and (max-width: 999px) {
	/* 健康経営宣言 */
	#health #health-handling .box p { text-align: left; }
	#health #health-handling .box br.pc { display: none; }
}

@media screen and (max-width:814px){ /* 814px以下 */
	#contact_form .ex {
		font-size: 12px;
		font-size: 1.2rem;
		display: block;
	}
	#contact_form input[type="tel"] { margin-top: 0; }
}

/* ipad+スマホレイアウト用 ******************************************/
@media screen and (min-width:769px){
	/* 会社概要 */
	#about #about_wrap {
		width: calc(100% - 41.6rem);
		float: left;
	}

	/*　お問い合わせ */
	#contact_page .phone { min-width: 470px; }
	#contact_page #tel-sp { display: none; }

	/* プライバシーポリシー　*/
	.tel-sp { display: none; }
}
@media screen and (max-width:768px) {
	/* common ***********************/
	.main_wrap { padding-top: 10rem; }/*padding-top: 95px;*/
	#page-top-wrap-sp {
		background: #fff;
		padding-top: 21.875%;
	}
	/* Last */
	#last { margin-top: 0; }

	/* 会社概要 */
	p#side_logo { display: none; }
	#about .paragraph {
		width: 100%;
		padding-top: 4rem;
	}
	#about #link-menu_wrap #link-menu{grid-template-columns: repeat(2,minmax(7rem,1fr));}

	/* 採用情報 */
	#recruit .flow { width: 100%; }
	#recruit .table-cell span.button a { width: 34.132% ; }
	#recruit .btn-enter a { width: 100%; }

	/* お問い合わせ */
	#contact_form .submit_p,#contact_form .agree_p { text-align: left; }
	#contact_form div.content_left, #contact_form ul.content_right {
		width: 100%;
		margin-right: 0;
	}
	#contact_form .ex { margin-left: 0; }
	#contact_form form ul li#radio {
		position: relative;
		z-index: 1;
	}
	#contact_form p.caution-1 {
		text-align: left;
		margin-bottom: 8.565%;
	    line-height: 2.1rem;
	}
	#contact_form p.caution-2 {
		line-height: 2.1rem;
		margin-bottom: 4.285%;
	}
	#inline {
	/*	width: 80% !important; */
		margin: 0 auto;
		padding: 20px 10px 20px 30px !important;
		max-height: 530px !important;
		font-size: 12px;
		font-size: 1.2rem;
		line-height:2rem;
	}
	.lity-close {
		top: -37px !important;
		right: -10px !important;
	}

	/* コンプライアンス相談窓口 */
	/* #compliance-content .box { padding: 4rem 2.4rem ; } */
}

/* ipad用 *******************************************************/
@media screen and (max-width:768px) and (min-width:768px) {
	/* 実績詳細 */
	#works #btn_wrap li { width: auto; }
	#works #btn_wrap li:first-child { margin-right: 6.58%; }
}
@media screen and (max-width:768px) and (min-width:481px){
	div#page-top-wrap-sp p span a { padding: 3.03% 0; }
	div#page-top-wrap-sp { padding-top: 10.875%; }

	/* 採用情報 */
	#recruit .table-caption { float: left; }

	/* お問い合わせ */
	#contact_page .phone { min-width: 470px; }
	#contact_page #tel-sp { display: none; }
	#contact_page h3 { margin-bottom: 5.625%; }
	#contact_form button.box-button { width: 47.273% !important; }
	#contact_form button.box-button span { padding: 7.89%; }
}
/* table用 *******************************************************/
@media screen and (min-width: 481px) { /*480px以下は無効*/
	/* 実績詳細 */
	#capture {
		width: 100%;
		display: table;
	}
	#capture #cap-sp {
		width: 30.9375%;
		display: table-cell;
		text-align: center;
		vertical-align: bottom;
		margin-left: 3.125%;
		position: relative;
		box-sizing: border-box;
	}
	#capture #cap-sp_content {
		width: 57.24%;
		margin: 0 auto;
		position: absolute;
		bottom: 0;
		left: 26.8%;
	}
	#capture #cap-pc { margin: 0 auto; }
	#capture.column-1 #cap-pc { display: block; }

	/* 採用情報 */
	#recruit .table { display: table; }
	#recruit .table-row { display: table-row ; }
	#recruit .table-cell { display: table-cell; }
	#recruit .table-cell img.step-sp, #recruit img.flow-sp { display: none; }
	#recruit .table-caption { float: left; }

	/* お問い合わせ　*/
	#inline .contact-sp { display: none; }
}

/* スマホレイアウト用 ******************************************/
@media screen and (max-width:480px) {
	/* 会社概要 */
	#about .table-cell span.button a { width: 100% !important; }
	#about .table-row .location { padding-bottom: 8.675%; }
	#about .table-row:nth-child(3) .table-caption, #about .table-row:nth-child(3) .table-cell { padding-top: 17px; }
	#about #page-top-wrap-sp { padding-top: 21.875%; }
	#about .line p { margin-bottom: 44px; }
	#about .paragraph > p { margin-top: 30px; }
	/* #about .table-cell span.button span { padding: 1.65rem 0 !important; } */
	#about #link-menu li:nth-of-type(odd) { margin-left: 0; }

	/* 健康経営宣言 */
	#health #health-handling .box { padding: 2rem; }
	#health #health-handling h3 { margin-bottom: 1rem; }
	#health h2 {
		font-size: 41px;
		font-size: 4.1rem;
		letter-spacing: -0.1rem;
	}

	/* 実績詳細 */
	#works #title h3 { margin-bottom: 12.72%; }
	#works #title {
		margin-bottom: 18.84%; }
	#works ul.page-nav {
		position: relative;
		z-index: 1;
	}
	#works #title ul.page-nav {
		width: 100%;
		margin: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#works #main { text-align: center; }
	#works h4 { text-align: left; }
	#works #title ul.page-nav li:nth-child(2) { padding: 0 7.71%; } /* 0 18px */
	#works .category-kantyo, #works .category-service, #works .category-websystem {
		float: none;
		margin-top: 2.57%;
	}
	section.column-1 { width: 100%; }
	#capture {
		clear: both;
		overflow: hidden;
		margin-top: 12.845%;
	}
	#capture #cap-pc, #capture #cap-sp { display: block; }
	#capture #cap-pc { width: 100%; }
	#capture #cap-sp {
		width: 62%;
		margin: 0 auto;
		margin-top: 24px;
	}
	#works #description {
		margin-top: 10.28%;
		text-align: left;
	}
	#works #btn_wrap {
		margin-top: 14.13%; /* 33px */
		margin-bottom: 25.69%; /* 60px */
	}
	#works #btn_wrap li a { width: 100%;}
	#works #main ul.page-nav {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-bottom: 0;
	}
	#works .page-nav li.prev a:before, #works .page-nav li.prev_none a:before { margin-right: 6px; }
	#works .page-nav li.next a:after, #works .page-nav li.next_none a:after { margin-left: 6px; }
	#works .page-nav li:nth-child(2) { padding: 0 5.334%; }

	/* 採用情報 */
	#recruit .type { margin: 6.425% 0 0; } /* 15px 0 0 */
	#recruit .table { margin-top: 5.57%; }
	#recruit .table-row {
		padding-top: 23px;
		margin-bottom: 33px;
		margin-top: 0;
		border-top: 1px dashed #D9D9D9;
	}
	#recruit .table-row:last-child {
		margin-bottom: 23px;
	}
	#recruit .table-row:first-child {
		border: none;
		padding-top: 0;
	}
	#recruit .table-row:nth-child(2) {
		margin-bottom: 30px;
	}
	#recruit .table-caption {
		width: auto;
		display: flex;
		display: -webkit-box;
		display: -ms-flexbox;
	}
	#recruit .table-caption:before {
		content: "■";
		font-size: 14px;
		font-size: 1.4rem;
	}
	#recruit .table-caption {
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.2em;
	}
	#recruit .table-caption, #recruit .table-cell { padding: 0; }
	#recruit .table-cell ul { margin-bottom: 17px; }
	#recruit .image_wrap {
		display: flex;
		display: -webkit-box;
		display: -ms-flexbox;
	}
	#recruit .table-cell img.step-pc, #recruit img.flow-pc { display: none; }
	#recruit .table-cell img.step-sp, #recruit img.flow-sp {
		width: 100%;
		height: 100%;
		max-width:304px;
		margin: 9px auto 0;
	}
	#recruit img.flow-sp { margin-bottom: 4px; }
	#recruit .table-row .location { padding-bottom: 16px; }
	#recruit .table-row .access { padding-top: 4px; }
	#recruit .flow { margin: 27.83% 0 9.85%; } /* 65px 0 23px */
	#recruit .table-cell span.button {
		display: block;
		text-align: center;
	}
	#recruit .table-cell span.button a,
	#recruit .btn-enter a { width: 80%; }


	/* お問い合わせ　*/
	#contact_page h3 { margin-bottom: 18.84%; }
	#contact_page section#tel-sp {
		margin-bottom: 18.84%;
		position: relative;
	}
	#contact_page #tel-pc { display: none; }
	#contact_page #tel-sp {
		clear: both;
		overflow: hidden;
		padding: 5.14% 6.425% 3.43%;
	}
	#contact_page .phone p span {
		font-size: 18px;
		font-size: 1.8rem;
    	line-height: 1.2em;
		letter-spacing: 0.05em;
	}
	#contact_page .phone p {
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 2rem;
		margin: 0 auto;
		display: inline-block;
		margin-left: 23%;
	}
	#contact_page .phone {
		width: 100% ;
	}
	#contact_page .phone img {
		width: 16.37%;
		top: 21%;
		left: 6%;
	}
	#contact_page .tel-sp {
		margin-bottom: 4.69%;
		display: inline-block;
	}
	#contact_form h4 { margin: 0 0 1rem; }
	#contact_form form ul li#radio { margin-bottom: 10.28%; }
	#request_textarea textarea {
		margin-top: 3.43%;
		margin-bottom: 0px;
	}
	#contact_form > p { margin-top: 10.28%; }
	#contact_form button {
	    width: 80% !important;
    	margin-top: 1.565%;
	 }
	#contact_form button span{
		font-size: 12px;
		font-size: 1.2rem;
		line-height: .8em;
		letter-spacing: .1em;
		padding: 8.69% 0 !important;
	}
	#agree_wrap { margin-top: 1.73%; }
	#inline {
		max-height: 350px !important;
	/*	width: 80% !important; */
		margin: 0 auto;
		padding: 10px 5px 10px 20px !important;
	}
	#inline .contact-sp {
	    padding: 6.425%;
		width: 100%;
		box-sizing: border-box
	}
	#inline .contact-pc { display: none; }
	.mCSB_inside > .mCSB_container { margin-right: 20px !important; }

	/* コンプライアンス相談窓口 */
	/* #compliance h2 {
		font-size: 42px;
		font-size: 4.2rem;
		letter-spacing: -0.1rem;
	} */

	/* thanksページ*/
	.thanks_page #contact_form > p { text-align: left; }
}
@media screen and (min-width: 344px) {
	/* 採用情報 */
	#recruit #type-ip5 { display: none; }
}
@media screen and (max-width: 343px) {
	/* 採用情報 */
	#recruit #type-pc { display: none; }
}
@media screen and (max-width: 320px) { /* 320px以下 (iphone5より幅が小さい) */
	/* お問い合わせ */
	.lity-close {
		top: -37px !important;
		right: -10px !important;
	}
}

/* 高さ調整 ********************************************************************************/
@media screen and (min-device-height:1441px) {/* 高さ1441px以上 */
	/* 会社概要 */
	#about { margin-bottom: 13.408%; }
	#about .line p { margin-bottom: 100px; }
	#about .paragraph > p { margin-top: 60px; }
}
@media screen and (max-device-height:1440px) and (min-device-height:1201px) { /* 高さ1440以下 1201以上 */
	/* common */
	#last { margin-top: 9.408%; }

	/* 採用情報 */
	#recruit .flow { width: 80.925%; }

	/* お問い合わせ */
	#contact_page .phone img {
    position: absolute;
    top: 27%;
    left: 21.5%;
	}
}

/* スマホ横向き ********************************************************************/
@media only screen and (max-device-width:480px) and (min-width: 321px) and (orientation:landscape) {
	#inline { max-height: 250px !important; }
	.lity-close {
		top: -35px !important;
		right: -10px !important;
	}
}
@media only screen and (max-device-width:320px) and (orientation:landscape) {
	#inline { max-height: 200px !important; }
	.lity-close {
		top: -32px !important;
		right: -10px !important;
	}
}

/* error */
#errorpage {
	width: 80%;
	max-width:960px;
	margin: 0 auto;
}

/* リクルートフォーム 微調整 */
.css-cancel{
	display: inline-block;
	position: relative;
	margin: 0 5px 0 5px;
	padding: 0;
	width: 4px;
	height: 16px;
	background: #757575;
	transform: rotate(45deg);
	top: 4px;
}
.css-cancel:before{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: -6px;
	width: 16px;
	height: 4px;
	margin-top: -2px;
	background: #757575;
}

.d-inline-block {
	display: inline-block;
}

.f-clear {
	display: none;
	cursor: pointer;
}


/* 2020.11 ǋL @common */
@media screen and (max-width: 767px) {
	.button a  {
		width: 100% !important;
		max-width: none !important;
	}
}
