/*//////////////////////////////////////////////////////////////////
[ 余白 ]*/

/* margin - 要素の外側の余白 */
.m0 { margin: 0 !important; }

/* margin 0px を指定するクラス */
.mt0 { margin-top: 0 !important; }

/* margin-top0px を指定するクラス */
.mr0 { margin-right: 0 !important; }

/* margin-right0px を指定するクラス*/
.mb0 { margin-bottom: 0 !important; }

/* margin-bottom0px を指定するクラス*/
.ml0 { margin-left: 0 !important; }

/* margin-left0px を指定するクラス*/
.m5 { margin: 5px !important; }

.mt5 { margin-top: 5px !important; }

.mr5 { margin-right: 5px !important; }

.mb5 { margin-bottom: 5px !important; }

.ml5 { margin-left: 5px !important; }

.m10 { margin: 10px !important; }

.mt10 { margin-top: 10px !important; }

.mr10 { margin-right: 10px !important; }

.mb10 { margin-bottom: 10px !important; }

.ml10 { margin-left: 10px !important; }

.m15 { margin: 15px !important; }

.mt15 { margin-top: 15px !important; }

.mr15 { margin-right: 15px !important; }

.mb15 { margin-bottom: 15px !important; }

.ml15 { margin-left: 15px !important; }

.m20 { margin: 20px !important; }

.mt20 { margin-top: 20px !important; }

.mr20 { margin-right: 20px !important; }

.mb20 { margin-bottom: 20px !important; }

.ml20 { margin-left: 20px !important; }

.m25 { margin: 25px !important; }

.mt25 { margin-top: 25px !important; }

.mr25 { margin-right: 25px !important; }

.mb25 { margin-bottom: 25px !important; }

.ml25 { margin-left: 25px !important; }

.m30 { margin: 30px !important; }

.mt30 { margin-top: 30px !important; }

.mr30 { margin-right: 30px !important; }

.mb30 { margin-bottom: 30px !important; }

.ml30 { margin-left: 30px !important; }

.m35 { margin: 35px !important; }

.mt35 { margin-top: 35px !important; }

.mr35 { margin-right: 35px !important; }

.mb35 { margin-bottom: 35px !important; }

.ml35 { margin-left: 35px !important; }

.m40 { margin: 40px !important; }

.mt40 { margin-top: 40px !important; }

.mr40 { margin-right: 40px !important; }

.mb40 { margin-bottom: 40px !important; }

.ml40 { margin-left: 40px !important; }

.m45 { margin: 45px !important; }

.mt45 { margin-top: 45px !important; }

.mr45 { margin-right: 45px !important; }

.mb45 { margin-bottom: 45px !important; }

.ml45 { margin-left: 45px !important; }

.m50 { margin: 50px !important; }

.mt50 { margin-top: 50px !important; }

.mr50 { margin-right: 50px !important; }

.mb50 { margin-bottom: 50px !important; }

.ml50 { margin-left: 50px !important; }

.m55 { margin: 55px !important; }

.mt55 { margin-top: 55px !important; }

.mr55 { margin-right: 55px !important; }

.mb55 { margin-bottom: 55px !important; }

.ml55 { margin-left: 55px !important; }

.m60 { margin: 60px !important; }

.mt60 { margin-top: 60px !important; }

.mr60 { margin-right: 60px !important; }

.mb60 { margin-bottom: 60px !important; }

.ml60 { margin-left: 60px !important; }

.m65 { margin: 65px !important; }

.mt65 { margin-top: 65px !important; }

.mr65 { margin-right: 65px !important; }

.mb65 { margin-bottom: 65px !important; }

.ml65 { margin-left: 65px !important; }

.m70 { margin: 70px !important; }

.mt70 { margin-top: 70px !important; }

.mr70 { margin-right: 70px !important; }

.mb70 { margin-bottom: 70px !important; }

.ml70 { margin-left: 70px !important; }

.m75 { margin: 75px !important; }

.mt75 { margin-top: 75px !important; }

.mr75 { margin-right: 75px !important; }

.mb75 { margin-bottom: 75px !important; }

.ml75 { margin-left: 75px !important; }

.m80 { margin: 80px !important; }

.mt80 { margin-top: 80px !important; }

.mr80 { margin-right: 80px !important; }

.mb80 { margin-bottom: 80px !important; }

.ml80 { margin-left: 80px !important; }

.mt100 { margin-top: 100px !important; }

/* padding - 要素の内側の余白 */
.p0 { padding: 0 !important; }

.pt0 { padding-top: 0 !important; }

.pr0 { padding-right: 0 !important; }

.pb0 { padding-bottom: 0 !important; }

.pl0 { padding-left: 0 !important; }

.p5 { padding: 5px !important; }

.pt5 { padding-top: 5px !important; }

.pr5 { padding-right: 5px !important; }

.pb5 { padding-bottom: 5px !important; }

.pl5 { padding-left: 5px !important; }

.p10 { padding: 10px !important; }

.pt10 { padding-top: 10px !important; }

.pr10 { padding-right: 10px !important; }

.pb10 { padding-bottom: 10px !important; }

.pl10 { padding-left: 10px !important; }

.p15 { padding: 15px !important; }

.pt15 { padding-top: 15px !important; }

.pr15 { padding-right: 15px !important; }

.pb15 { padding-bottom: 15px !important; }

.pl15 { padding-left: 15px !important; }

.p20 { padding: 20px !important; }

.pt20 { padding-top: 20px !important; }

.pr20 { padding-right: 20px !important; }

.pb20 { padding-bottom: 20px !important; }

.pl20 { padding-left: 20px !important; }

.p25 { padding: 25px !important; }

.pt25 { padding-top: 25px !important; }

.pr25 { padding-right: 25px !important; }

.pb25 { padding-bottom: 25px !important; }

.pl25 { padding-left: 25px !important; }

.p30 { padding: 30px !important; }

.pt30 { padding-top: 30px !important; }

.pr30 { padding-right: 30px !important; }

.pb30 { padding-bottom: 30px !important; }

.pl30 { padding-left: 30px !important; }

.p35 { padding: 35px !important; }

.pt35 { padding-top: 35px !important; }

.pr35 { padding-right: 35px !important; }

.pb35 { padding-bottom: 35px !important; }

.pl35 { padding-left: 35px !important; }

.p40 { padding: 40px !important; }

.pt40 { padding-top: 40px !important; }

.pr40 { padding-right: 40px !important; }

.pb40 { padding-bottom: 40px !important; }

.pl40 { padding-left: 40px !important; }

.p45 { padding: 45px !important; }

.pt45 { padding-top: 45px !important; }

.pr45 { padding-right: 45px !important; }

.pb45 { padding-bottom: 45px !important; }

.pl45 { padding-left: 45px !important; }

.p50 { padding: 50px !important; }

.pt50 { padding-top: 50px !important; }

.pr50 { padding-right: 50px !important; }

.pb50 { padding-bottom: 50px !important; }

.pl50 { padding-left: 50px !important; }

.p55 { padding: 55px !important; }

.pt55 { padding-top: 55px !important; }

.pr55 { padding-right: 55px !important; }

.pb55 { padding-bottom: 55px !important; }

.pl55 { padding-left: 55px !important; }

.p60 { padding: 60px !important; }

.pt60 { padding-top: 60px !important; }

.pr60 { padding-right: 60px !important; }

.pb60 { padding-bottom: 60px !important; }

.pl60 { padding-left: 60px !important; }

.p65 { padding: 65px !important; }

.pt65 { padding-top: 65px !important; }

.pr65 { padding-right: 65px !important; }

.pb65 { padding-bottom: 65px !important; }

.pl65 { padding-left: 65px !important; }

.p70 { padding: 70px !important; }

.pt70 { padding-top: 70px !important; }

.pr70 { padding-right: 70px !important; }

.pb70 { padding-bottom: 70px !important; }

.pl70 { padding-left: 70px !important; }

.p75 { padding: 75px !important; }

.pt75 { padding-top: 75px !important; }

.pr75 { padding-right: 75px !important; }

.pb75 { padding-bottom: 75px !important; }

.pl75 { padding-left: 75px !important; }

.p80 { padding: 80px !important; }

.pt80 { padding-top: 80px !important; }

.pr80 { padding-right: 80px !important; }

.pb80 { padding-bottom: 80px !important; }

.pl80 { padding-left: 80px !important; }


/*//////////////////////////////////////////////////////////////////
[ 文字色 ]*/

.red {
	color:red;
}

.blue {
	color:blue;
}

a.blue {
	color:blue;
	font-weight:800;
	border-bottom:1px solid #000;
}

/* ----------------------------------------------------------------------
 文字装飾
 ---------------------------------------------------------------------- */
/* headline */
.headline { border-bottom:1px solid #80e371; padding:0; margin:0 0 25px 0; font-size:18px; }
.headline span { border-bottom:4px solid #44d62f; padding:0 0 10px 0; margin:0; display:inline-block; }
.headline small { padding:0 0 10px 0; margin:0 20px; font-size:14px; color:#aaa;}

h3.headline span {font-size:24px;}


/* ボタン */
a.button{
	display:inline-block;
	background:#d13415;
	padding:10px 30px;
	text-align:center;
	color:#FFF;
	margin:5px;
	border:1px solid;
	cursor:pointer;
	font-size:21px;
}
a:hover.button{
	background:#000;
	color:#FFF;
}
/*------------------------------------------------------------------
	Gallery
	-------------------------------------------------------------------*/

.gallery-box{
	padding: 70px 0px;
}
.tz-gallery{
	margin-top: 30px;
}
.tz-gallery .lightbox img {
	width: 100%;
	margin-bottom: 30px;
	transition: 0.2s ease-in-out;
	box-shadow: 0 2px 3px rgba(0,0,0,0.2);
}
.tz-gallery .lightbox img:hover {
	transform: scale(1.05);
	box-shadow: 0 8px 15px rgba(0,0,0,0.3);
}


/*//////////////////////////////////////////////////////////////////
[ アンカーリンク ]*/

html{
	scroll-behavior: smooth;
}

.smooth {
	scroll-behavior: smooth;
	
}
.anchor {
	display: block;
	padding-top: 100px;
	margin-top: -100px;
}
/*リンク画像*/
.cover a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}


/*//////////////////////////////////////////////////////////////////
[ Table company ]*/

.wrap-table-company {
	overflow: auto;
}

.table-company {
	border-collapse: collapse;
	width: 100%;
	min-width: 680px;
}

.table-company tr {
	border-top: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
}

.table-company .column-1 {
	width: 133px;
	padding-left: 50px;
	vertical-align:top;
}

.table-company .column-2 {
	width: 220px;
	font-size: 15px;
}

.table-company .column-3 {
	width: 120px;
	font-size: 16px;
}

.table-company .column-4 {
	width: 145px;
	text-align: right;
}

.table-company .column-5 {
	width: 172px;
	padding-right: 50px;
	text-align: right;
	font-size: 16px;
}

.table-company .table_row {
	height: 185px;
}

.table-company .table_row td {
	padding-bottom: 20px;
}

.table-company .table_row td.column-1 {
	padding-bottom: 30px;
}

.table-company .table_head th {
	font-family: Poppins-Bold;
	font-size: ;
	color: #555;
	text-transform: uppercase;
	line-height: 1.6;
	padding-top: 15px;
	padding-bottom: 15px;
	background:#f7f7f7;
}

.table-company td {
	font-family: Poppins-Regular;
	color: #555;
	line-height: 1.6;
	padding:15px;
}


@media (max-width: 575px) {
	.table-company .column-1 {
		width: auto;
	}
	
	.table-company .column-2 {
		width: auto;
	}
}
}


/*//////////////////////////////////////////////////////////////////
[ Table recruit ]*/

.wrap-table-recruit {
	overflow: auto;
}

.table-recruit {
	border-collapse: collapse;
	width: 100%;
	min-width: 680px;
}

.table-recruit tr {
	border-top: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
}

.table-recruit .column-1 {
	width: 133px;
	padding-left: 50px;
	vertical-align:top;
}

.table-recruit .column-2 {
	width: 220px;
	font-size: 15px;
}

.table-recruit .column-3 {
	width: 120px;
	font-size: 16px;
}

.table-recruit .column-4 {
	width: 145px;
	text-align: right;
}

.table-recruit .column-5 {
	width: 172px;
	padding-right: 50px;
	text-align: right;
	font-size: 16px;
}

.table-recruit .table_row {
	height: 185px;
}

.table-recruit .table_row td {
	padding-bottom: 20px;
}

.table-recruit .table_row td.column-1 {
	padding-bottom: 30px;
}

.table-recruit .table_head th {
	font-family: Poppins-Bold;
	font-size: ;
	color: #555;
	text-transform: uppercase;
	line-height: 1.6;
	padding-top: 30px;
	padding-bottom: 30px;
}

.table-recruit td {
	font-family: Poppins-Regular;
	color: #555;
	line-height: 1.6;
	padding:30px;
}


@media (max-width: 575px) {
	.table-recruit th {
		width: auto;
	}
	.table-recruit .column-1 {
		width: auto;
	}
	
	.table-recruit .column-2 {
		width: auto;
	}
}
}

/*//////////////////////////////////////////////////////////////////
[ お問い合わせ ]*/

.contact {
	padding:20px;
	border:1px solid #ccc
}

.wrap-table-contact {
		overflow: auto;
		text-align:left;
}

.table-contact {
	border-collapse: collapse;
	width: 100%;
	min-width: 680px;
}

.table-contact tr {
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
}

.table-contact .column-1 {
	width: 280px;
	padding-left: 50px;
	vertical-align:top;
}

.table-contact .column-2 {
	width: auto;
	font-size: 15px;
}

.table-contact .column-3 {
	width: 120px;
	font-size: 16px;
}

.table-contact .column-4 {
	width: 145px;
	text-align: right;
}

.table-contact .column-5 {
	width: 172px;
	padding-right: 50px;
	text-align: right;
	font-size: 16px;
}

.table-contact .table_row {
	height: 185px;
}

.table-contact .table_row td {
	padding-bottom: 20px;
}

.table-contact .table_row td.column-1 {
	padding-bottom: 30px;
}

.table-contact .table_head th {
	font-family: Poppins-Bold;
	font-size: ;
	color: #555;
	text-transform: uppercase;
	line-height: 1.6;
	padding-top: 30px;
		padding-bottom: 30px;
		background:#ebebeb;
}

.table-contact td {
	font-family: Poppins-Regular;
	color: #555;
	line-height: 1.6;
	padding:30px;
}


@media (max-width: 575px) {
	.table-contact th {
		width: auto;
	}
	.table-contact .column-1 {
		width: auto;
	}
	
	.table-contact .column-2 {
		width: auto;
	}
}







/*//////////////////////////////////////////////////////////////////
[ 採用情報 ]*/
div.recruit-box {
	padding:20px;
}

div.recruit-box > .plan-action {
	padding-top:20px;
	padding-bottom:20px;
	}
	div.recruit-box > .recruit-title {
		font-size:26px;
	}
	
	#schedule {
		text-indent:2rem;
	}
	
	p.time {
		background:#dcf2e5;
			color:#000;
		padding:10px;
		text-indent:1rem;
			border-radius:36px;
	}
	
	/* カテゴリー */
	.item {
		display:block;
		font-size:12px;
	}
	
	.category {
		display:inline-block;
		position:absolute;
		top:0px;
		left:0px;
		z-index:3;
		background:#15b151;
	}
	
	.category a {
		font-size:12px;
		color:#fff;
		display:block;
		height:40px;
		line-height:40px;
		padding:0 22px;
		text-decoration:none;
	}
	.category a:hover {
		background:#333 !important;
		color:#fff;
	}
	@media (max-width: 575px) {
		.item {margin-top:20px}
		}
		
		.category1 {
			display:inline-block;
			position:absolute;
			top:0px;
			left:0px;
			z-index:3;
			background:#15b151;
			font-size:12px;
			color:#fff;
			display:block;
			height:40px;
			line-height:40px;
			padding:0 12px;
			text-decoration:none;
		}
		
		
		h3.voice {
			font-family: 'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ＭＳ 明朝', 'MS Mincho',sans-serif;
			color:#28992d;
			border-bottom:1px solid green;
			padding-bottom:5px;
			
		}
		
		.voicebox {
			margin-top:70px;
		}
		
		@media (max-width: 575px) {
			.voicebox {
				margin-top:20px;
			}
			}