@media screen and (max-width:979px){
html{
	font-size: 14px;
}
input[type="button"],input[type="submit"]{
	-webkit-appearance:none;
	border-radius:0;
}
.br-sp { display:none; }

/* ------------------------------------------------------------
    ヘッダー部分
------------------------------------------------------------ */
header{
	width: 100%;
	height: 40px;
	padding: 0 0 0 5vw;
	display:-webkit-flex;
	display:flex;
	-webkit-align-items: center;
	align-items: center;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99; }
	header.fixed{
		background: rgba(0,0,0,0.22); }
	header .logo{
		height: 20px; }
		header .logo img{
			height: 20px; }
	header .btnMenu{
		width: 40px;
		margin-left: auto; }
	header #gnav{
		background: rgba(0,0,0,0.4);
		position: fixed;
		width: 100%;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: 11;
		display: none;
		overflow: hidden;
		opacity: 0; }
		header #gnav .btnClose{
			width: 40px;
			margin: 0 0 0 auto; }
		header #gnav ul{
			/*background: #e60020;*/
			width: 240px;
			/*height: 100%;*/
			padding: 5vw;
			box-sizing: border-box;
			position: absolute;
			top: 40px;
			right: -240px;
			display: -webkit-flex;
			display: flex;
			-webkit-flex-wrap: wrap;
			flex-wrap: wrap; }
			header #gnav ul::before {
				content: "";
				background: #e60020;
				width: 240px;
				height: 100vh;
				position: absolute;
				top: 0;
				bottom: 0;
				right: 0;
				z-index: -1;
			}
			header #gnav ul li:not(.header__sns__item){
				width: 100%; }
			header #gnav ul li:not(.header__sns__item){
				margin-bottom: 20px; }
			header #gnav ul li:not(.header__sns__item) a{
				font-size: 1.2rem;
				line-height: 40px;
				font-weight: bold;
				color: #fff;
				letter-spacing: 0.1em;
				display: block;
				position: relative; }
				/*header #gnav ul li:not(.header__sns__item) a:after{
					background :url(../images/arw_white.png) no-repeat center;
					background-size: 5px auto;
					-webkit-background-size: 5px auto;
					-moz-background-size: 5px auto;
					content: "";
					width: 5px;
					height: 40px;
					display:inline-block;
					position: absolute;
					right: 0; }*/
					
			.header__sns__item {
				width: 20px; }
			.header__sns__item {
				margin-top: 20px; }
			.header__sns__item:not(:last-of-type) {
				margin-right: 20px; }
/*		header #gnav ul{
			display:-webkit-flex;
			display:flex; }
			header #gnav ul li:not(.contact){
				margin-right: 40px; }
			header #gnav ul li a{
				color: #fff;
				line-height: 35px; }
				header #gnav ul li:not(.contact) a{
					text-shadow: 0 0 5px #000; }
			header #gnav ul li.contact a{
				background: #e60020;
				display: block;
				padding: 0 10px; }
*/

/* ------------------------------------------------------------
    フッター部分
------------------------------------------------------------ */
.contactArea{
	background: #e60020;
	padding: 50px 0 40px;
	position: relative;
	z-index: 0;
	color: #fff;
	text-align: center; }
	.contactArea:before{
		content: "";
		border-top: 2.5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1; }
	.contactArea .heading{
		font-size: 1.6rem; }
	.contactArea .heading:after{
		background: #fff; }
	.contactArea .btnMore a{
		color: #fff;
		border: #fff solid 2px; }
		.contactArea .btnMore a:hover{
			background: #fff;
			color: #e60020; }
	.contactArea .tel a{
		font-size: 2.4rem;
		line-height: 45px;
		font-weight: bold;
		color: #fff;
		letter-spacing: 0.1rem; }
	.contactArea .tel:before{
		background: url(../images/common/icon_tel.png) center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		background-size: cover;
		content: "";
		width: 45px;
		height: 45px;
		display: inline-block;
		vertical-align: top;
		margin: 0 20px 0 0; }
	.contactArea .time{
		margin: 15px 0 0;
		font-size: 1.4rem; }
	.contactArea .holiday{
		margin: 15px 0 0;
		font-size: 1.4rem; }

/* ------------------------------------------------------------
    フッター部分
------------------------------------------------------------ */
footer{
	padding: 40px 0 0;
	position: relative; }
	footer .information{
		text-align: center; }
		footer .information dl{
			margin: 30px 0 40px;
			line-height: 1.0; }
		footer .information dl dt{
			font-size: 1.4rem;
			font-weight: bold;
			margin: 0 0 20px; }
		footer .information dl dd:not(:last-of-type){
			margin: 0 0 15px; }
	footer nav ul{
		margin: 40px 5vw 0;
		display:-webkit-flex;
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap; }
		footer nav ul li{
			width: 50%;
			margin: 0 0 15px; }
	footer .sns{
		display:-webkit-flex;
		display:flex;
		position: absolute;
		right: 5vw;
		bottom: 15px; }
		footer .sns li{
			width: 20px; }
			footer .sns li:not(:last-of-type){
				margin-right: 20px; }
	footer small{
		background: #e60020;
		display: block;
		margin: 25px 0 0;
		padding: 0 5vw;
		font-size: 1rem;
		color: #fff;
		line-height: 50px; }

/* ------------------------------------------------------------
    共有クラス部分
------------------------------------------------------------ */
.pagetitle{
	width: 100%;
	height: 280px;
	position: relative;
	display: table;
	z-index: 0; }
	.pagetitle:before{
		content: "";
		background: rgba(0,0,0,0.3);
		width: 100%;
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: -1; }
	.pagetitle:after{
		content: "";
		border-bottom: 2.5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		bottom: 0;
		left: 0; }
	.pagetitle hgroup{
		display: table-cell;
		line-height: 1.0;
		color: #fff;
		text-shadow: 0 0 5px #000;
		text-align: center;
		vertical-align: middle; }
		.pagetitle hgroup h1{
			font-size: 2.5rem;
			margin: 0 0 30px;
			padding: 0 0 35px;
			position: relative; }
			.pagetitle hgroup h1:after{
				content: "";
				background: #fff;
				width: 90px;
				height: 5px;
				margin: auto;
				display: block;
				position: absolute;
				right: 0;
				left: 0;
				bottom: 0; }
		.pagetitle hgroup small{
			display: block;
			font-size: 2rem; }
.heading{
	margin: 0 0 30px;
	padding: 0 0 33px;
	font-size: 2rem;
	line-height: 1.0;
	letter-spacing: 0.1rem;
	text-align: center;
	position: relative; }
	.heading:after{
		content: "";
		background: #e60020;
		width: 45px;
		height: 3px;
		margin: auto;
		display: block;
		position: absolute;
		right: 0;
		left: 0;
		bottom: 0; }
.btnMore{
	width: 240px;
	margin: 40px auto 0; }
	.btnMore a{
		width: auto;
		display: block;
		padding: 15px 0;
		color: #e60020;
		font-size: 1rem;
		text-align: center;
		line-height: 1.0;
		border-radius: 50px;
		border: #e60020 solid 2px; }
		.btnMore a:hover{
			background: #e60020;
			color: #fff; }
.btnList{
	margin: 40px 5vw 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center; }
	.btnList li{
		width: 40vw; }
		.btnList li.prev,
		.btnList li.next{
			width: 20vw }
		.btnList li:not(:first-of-type){
			margin-left: 20px; }
		.btnList li a{
			width: auto;
			display: block;
			padding: 15px 0;
			color: #e60020;
			font-size: 1rem;
			text-align: center;
			line-height: 1.0;
			border-radius: 50px;
			border: #e60020 solid 2px; }
			.btnList li a:hover{
				background: #e60020;
				color: #fff; }
.pager ul{
	margin: 0 0 80px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center; }
	.pager ul li:not(:last-of-type){
		margin-right: 20px; }
		.pager ul li span,
		.pager ul li a{
			display: block;
			padding: 0 10px;
			line-height: 35px; }
		.pager ul li a{
			background: #eee;
			color: #1a1a1a; }
			.pager ul li a:hover,
			.pager ul .active{
				background: #e60020;
				color: #fff; }
.table{
	margin: 0 auto;
	display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	border-bottom: #ddd solid 1px; }
	.table > dt{
		background: #f5f5f5;
		width: 25%;
		padding: 5vw 10px;
		border-top: #ddd solid 1px;
		box-sizing: border-box; }
	.table > dd{
		width: 75%;
		padding: 5vw 10px;
		border-top: #ddd solid 1px;
		box-sizing: border-box; }
		.table > dd dt:not(:first-of-type){
			margin: 30px 0 0; }

	.table > dd a{
		text-decoration: none;
		color: #33a0b8;	}
	.table > dd a:hover{
		text-decoration: none;
		color: #1FA19B;	}
	.table > dd a[href^="http"] {
                 background:url(../images/common/linkico.png) no-repeat right center;
                 padding-right:18px;
                 margin-right:5px; }
	.table > dd a[href^="https://fukushi.e-conne.site/"] {
                 background:none;
                 padding-right:0px;
                 margin-right:0px; }
	.table > dd a[href$=".pdf"]:after {
	    content:" ";
	    display: inline-block;
	    width: 24px;
	    height: 24px;
        padding-right:10px;
	    background: url(../images/common/pdfico.png) no-repeat center;
	}
/**　追加テールブルリスト　**/
	.table > dd .businesslist{
				margin: 0 0; }
	.table > dd .businesslist li{
				padding: 0 0 0 20px;
				position: relative;
				list-style: none; }
	.table > dd .businesslist li:before{
				content: "・";
				position: absolute;
				top: 0;
				left: 0; }
	.table > dd .businesslist li:not(:last-of-type){
				margin: 0 0 5px; }
	.table > dd .timelist{
				margin: 0 0; }
	.table > dd .timelist li{
				padding: 0 0 0 10px;
				position: relative;
				list-style: none; }
	.table > dd .timelist li:before{
				content: " ";
				position: absolute;
				top: 0;
				left: 0; }
	.table > dd .timelist li:not(:last-of-type){
				margin: 0 0 5px; }
	.table > dd .welfarelist{
				margin: 0 0; }
	.table > dd .welfarelist li{
				padding: 0 0 0 20px;
				position: relative;
				list-style: none!important; }
	.table > dd .welfarelist li:before{
				font-family: "Font Awesome 5 Free";
				content: "\f005";
				font-weight: 400;
				position: absolute;
				left: 0;
				top: 0.25em;
				color: #494949; }
	.table > dd .welfarelist li:not(:last-of-type){
				margin: 0 0 5px; }
	.table > dd .welfare2list{
				margin: 0 0; }
	.table > dd .welfare2list li{
				padding: 0 0 0 20px;
				position: relative;
				list-style: none!important; }
	.table > dd .welfare2list li:before{
				font-family: "Font Awesome 5 Free";
				content: "\f005";
				font-weight: 900;
				position: absolute;
				left: 0;
				top: 0.25em;
				color: #494949; }
	.table > dd .welfare2list li:not(:last-of-type){
				margin: 0 0 5px; }

/* ------------------------------------------------------------
    トップページ部分
------------------------------------------------------------ */
.mainimage{
	background: url(../images/mainimage.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	width: 100%;
	height: 100vh;
	position: relative;
	display: table;
	z-index: 0; }
	.mainimage:after{
		content: "";
		border-bottom: 5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		bottom: -1px;
		left: 0; }
	.mainimage hgroup{
		display: table-cell;
		vertical-align: middle;
		line-height: 1.4;
		text-align: center;
		color: #fff;
		text-shadow: 0 0 5px #000; }
		.mainimage hgroup h2{
			font-size: 2.0rem;
			margin: 0 5vw 30px;
			padding: 0 0 35px;
			position: relative; }
			.mainimage hgroup h2:after{
				content: "";
				background: #fff;
				width: 180px;
				height: 5px;
				margin: auto;
				display: block;
				position: absolute;
				right: 0;
				left: 0;
				bottom: 0; }
		.mainimage hgroup h3{
			font-size: 1.5rem;
			margin: 0 5px; }
		.mainimage .swiper-slide{
			width: 100%;
			height: 100vh;
			position: absolute;
			top: 0;
			left: 0;
			overflow: hidden;
			z-index: -1; }
			.mainimage .swiper-slide:after{
				content: "";
				background: rgba(0,0,0,0.3);
				width: 100%;
				display: block;
				position: absolute;
				top: 0;
				bottom: 0;
				left: 0;
				z-index: 10; }
			.mainimage .swiper-slide li{
				background: #fff;
				width: 100%;
				height: 100vh;
				position: absolute;
				top: 0;
				left: -0%; }
				.mainimage .swiper-slide li img{
					width: 100%;
					height: 100%;
					object-fit: cover; }
				.mainimage .swiper-slide li.active{
					z-index:9; }
				.mainimage .swiper-slide li.last-active{
					z-index:8; }
.aboutTop{
	padding: 40px 5vw;
	position: relative; }
	.aboutTop:after{
		content: "";
		border-right: 100vw solid transparent;
		border-bottom: 2.5vh solid #f5f5f5;
		position: absolute;
		bottom: 0;
		left: 0; }
	.aboutTop p{
		font-size: 1.4rem;
		line-height: 2.0;
		text-align: center; }
.serviceTop{
	background: #f5f5f5;
	padding: 40px 5vw;
	position: relative;
	z-index: 0; }
	.serviceTop:before{
		content: "";
		background: #ebebeb;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		bottom: 0;
		left: 0;
		z-index: -1; }
	.serviceTop:after{
		content: "";
		border-bottom: 2.5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		bottom: 0;
		left: 0; }
	.serviceTop .servicelist{
		margin: 0 auto; }
		.serviceTop .servicelist li{
			box-shadow: 0 10px 20px 0 rgba(0,0,0,0.1);
			position: relative;
			overflow: hidden; }
			.serviceTop .servicelist li:not(:first-of-type){
				margin-top: 30px; }
			.serviceTop .servicelist li:before{
				content: "";
				position: absolute;
				display: block;
				width: 43vw;
				height: 64.5vw;
				top: 0;
				left: 0;
				z-index: -1; }
				.serviceTop .servicelist li:nth-of-type(1):before{
					background: url(../images/top/bg_service01.jpg) center;
					background-size: cover;
					-webkit-background-size: cover;
					-moz-background-size: cover;
				    z-index: 2; }
				.serviceTop .servicelist li:nth-of-type(2):before{
					background: url(../images/top/bg_service02.jpg) center;
					background-size: cover;
					-webkit-background-size: cover;
					-moz-background-size: cover;
					z-index: 2; }
				.serviceTop .servicelist li:nth-of-type(3):before{
					background: url(../images/top/bg_service03.jpg) center;
					background-size: cover;
					-webkit-background-size: cover;
					-moz-background-size: cover;
				    z-index: 2; }
			.serviceTop .servicelist li a{
				/*background: rgba(0,0,0,0.22);*/
				background:#fff;
				min-height: 64.5vw;
				padding: 5vw 5vw 5vw 48vw;
				display: block;
				color: #1a1a1a;
				box-sizing: border-box; }
				.serviceTop .servicelist li a h3{
					margin: 0 0 15px;
					font-size: 1.5rem;
					text-align: center; }
.menuTop{
	padding: 40px 0;
	position: relative;
	z-index: 1; }
	.menuTop:before{
		content: "";
		background: #f5f5f5;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		bottom: 0;
		left: 0;
		z-index: -1; }
	.menuTop:after{
		content: "";
		border-left: 100vw solid transparent;
		border-top: 2.5vh solid #f5f5f5;
		position: absolute;
		bottom: -2.4vh;
		left: 0;
		z-index: -1; }
	.menuTop .menulist li:nth-of-type(3){
		display: none; }
	.menulist{
		width: 90vw;
		margin: 0 auto;
		display:-webkit-flex;
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap; }
		.menulist li{
			background: #fff;
			width: 43vw;
			padding: 0 0 30px;
			box-shadow: 0 10px 20px 0 rgba(0,0,0,0.1);
			position: relative; }
			.menulist li:not(:nth-of-type(2n+1)){
				margin-left: auto; }
			.menulist li:not(:first-of-type):not(:nth-of-type(2)){
				margin-top: 30px; }
			.menulist li a{
				color: #1a1a1a; }
				.menulist li a figure{
					height: 43vw;
					margin: 0 0 5vw;
					position: relative;
					overflow: hidden; }
					.menulist li a figure:after{
						background: rgba(0,0,0,0.22);
						content: "";
						width: 100%;
						height: 100%;
						display: block;
						position: absolute;
						top: 0;
						left: 0; }
					.menulist li a figure div{
						position: absolute;
						display: block;
						width: 100%;
						height: 100%;
						top: 0; }
				.menulist li a .tag{
					background: #e60020;
					min-width: 110px;
					line-height: 40px;
					font-size: 1.2rem;
					padding: 0 5vw;
					color: #fff;
					text-align: center;
					position: absolute;
					top: 30vw;
					left: -10px; }
					.menulist li a .tag:before{
						content: "";
						border-left: 10px solid transparent;
						border-bottom: 10px solid #e60020;
						position: absolute;
						bottom: 40px;
						left: 0; }
				.menulist li a .time{
					line-height: 40px;
					color: #fff;
					position: absolute;
					top: 0;
					right: 5vw;
					text-shadow: 0 0 5px #000; }
				.menulist li a h3{
					margin: 0 5vw 5vw;
					font-size: 1.4rem;
					text-align: center; }
				.menulist li a p{
					margin: 0 5vw; }
.recruitTop{
	background: url(../images/top/bg_recruit.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	padding: 40px 5vw;
	position: relative;
	z-index: 0;
	color: #fff; }
	.recruitTop:before{
		content: "";
		background: rgba(230,0,32,0.22);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1; }
	.recruitTop:after{
		content: "";
		border-bottom: 2.5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		bottom: -1px;
		left: 0; }
	.recruitTop .heading:after{
		background: #fff; }
	.recruitTop .heading{
		text-shadow: 0 0 5px #000; }
	.recruitTop p{
		font-size: 1.4rem;
		line-height: 2.0;
		text-align: center;
		margin: 0 auto;
		text-shadow: 0 0 5px #000; }
	.recruitTop .btnMore a{
		color: #fff;
		border: #fff solid 2px; }
		.recruitTop .btnMore a:hover{
			border: #e60020 solid 2px; }
.newsTop{
	padding: 40px 5vw;
	position: relative;
	z-index: 0; }
	.newslist{
		margin: 0 auto;
		border-top: #ddd solid 1px; }
		.newslist li a{
			padding: 30px 30px 30px 0;
			display: block;
			color: #1a1a1a;
			border-bottom: #ddd solid 1px;
			position: relative; }
			.newslist li a:after{
				content: "";
				width: 5px;
				height: 5px;
				display: block;
				border-top: #ddd solid 2px;
				border-right: #ddd solid 2px;
				position: absolute;
				top: 0;
				right: 0;
				bottom: 0;
				margin: auto;
				-webkit-transform: rotate(45deg);
				-ms-transform: rotate(45deg);
				transform: rotate(45deg); }
			.newslist li a dl{
				display: -webkit-flex;
				display: flex;
				-webkit-flex-wrap: wrap;
				flex-wrap: wrap; }
				.newslist li a dl dt{
					width: 48%;
					margin-left: 2%;
					line-height: 35px; }
				.newslist li a dl dd.label{
					width: 50%;
					margin: 0 0 15px;
					color: #fff;
					text-align: center;
					line-height: 35px;
					border-radius: 35px;
					-webkit-order: -1;
					order: -1; }

/* ------------------------------------------------------------
    新着情報部分
------------------------------------------------------------ */
.news .pagetitle{
	background: url(../images/news/ttl_news.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.news .newslist{
	margin: 40px 5vw; }
.news .entries{
	margin: 40px 5vw; }
	.news .entries .heading{
		line-height: 1.5; }
	.news .entries .deta{
		margin: 0 auto 30px;
		text-align: right; }
	.news .entries .commentArea{
			line-height: 1.8; }
	.news .entries .commentArea h2 {
	  padding: 0.1em 0.5em;/*上下 左右の余白*/
	  color: #1a1a1a;/*文字色*/
	  background: transparent;/*背景透明に*/
	  border-left: solid 5px #E60020;/*左線*/
	  margin-bottom: 1rem;
	}
	.news .entries .commentArea p a{
			color: #33a0b8; }
	.news .entries .commentArea p a:hover{
			text-decoration: none;
			color: #e60020; }
	.news .entries .commentArea strong{
		font-weight: bold; }
	.news .entries .commentArea img{
		max-width: 100%; }
	/*.news .entries .commentArea iframe {
	vertical-align: top;
	max-width: 100% !important;
	height: 56.25% !important; }*/
	.news .entries .commentArea .video {
	    position: relative;
	    padding-bottom: 56.25%;
	    height: 0;
	}
	.news .entries .commentArea .video iframe {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	}
/* ------------------------------------------------------------
    事業内容部分
------------------------------------------------------------ */
.service .pagetitle{
	background: url(../images/service/ttl_service.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.service .type{
	padding: 40px 5vw; }
	.service .type:nth-of-type(2n){
		background: #f5f5f5;
		position: relative; }
		.service .type:nth-of-type(2n):before{
			content: "";
			border-top: 2.5vh solid #fff;
			border-left: 100vw solid transparent;
			position: absolute;
			top: 0;
			left: 0; }
		.service .type:nth-of-type(2n):after{
			content: "";
			border-bottom: 2.5vh solid #fff;
			border-left: 100vw solid transparent;
			position: absolute;
			bottom: 0;
			left: 0; }
	.service .type p{
		font-size: 1.4rem;
		line-height: 2.0; }
	.service .servicelist{
		margin: 30px auto 0; }
		.service .servicelist li{
			}
			.service .servicelist li:not(:last-of-type){
				margin-bottom: 30px; }
			.service .servicelist li figure{
				margin: 0 0 15px; }
				.service .servicelist li figure img{
					max-width: 100%;
					border: #ddd solid 1px;
					box-shadow: 0 10px 20px 0 rgba(0,0,0,0.1); }
			.service .servicelist li .commentArea dt{
				font-size: 1.4rem;
				font-weight: bold;
				margin: 0 0 15px;
				position: relative; }

/* ------------------------------------------------------------
    施工事例部分
------------------------------------------------------------ */
.menu .pagetitle{
	background: url(../images/menu/ttl_menu.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.menu .menulist{
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	margin: 40px auto; }
	.menu .menulist li:not(:first-of-type):not(:nth-of-type(2)){
		margin-top: 30px; }
.menu .entries{
	padding: 40px 0;
	position: relative; }
	.menu .entries .tag{
		background: #e60020;
		width: 90vw;
		display: inline-block;
		line-height: 40px;
		font-size: 1.2rem;
		text-align: center;
		margin: 0 auto;
		color: #fff;
		border-radius: 40px;
		position: absolute;
		top: -25px;
		right: 0;
		left: 0; }
.menu .entries .imageslider{
	background: #f5f5f5;
	margin: 0 auto 40px;
	padding: 30px 0; }
	.menu .entries .imageslider .slideframe{
		width: 90vw;
		margin: 0 auto 30px;
		overflow: hidden;
		position: relative; }
		.menu .entries .imageslider .slideframe .slide{
			display: -webkit-flex;
			display: flex; }
			.menu .entries .imageslider .slideframe .slide li{
				width: 90vw;
				text-align: center; }
				.menu .entries .imageslider .slideframe .slide li img{
					max-width: 100%; }
		.menu .entries .imageslider .slideframe nav{
			width: 85vw;
			height: 20px;
			position: absolute;
			margin: auto;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0; }
			.menu .entries .imageslider .slideframe nav ul{
				display: -webkit-flex;
				display: flex; }
				.menu .entries .imageslider .slideframe nav ul li{
					width: 20px; }
				.menu .entries .imageslider .slideframe nav ul li a{
					width: 20px;
					height: 20px;
					display: block;
					position: relative; }
					.menu .entries .imageslider .slideframe nav ul li.prev a:before{
						content: "";
						width: 5px;
						height: 5px;
						display: block;
						border-bottom: #e60020 solid 2px;
						border-left: #e60020 solid 2px;
						position: absolute;
						top: 0;
						left: 0;
						bottom: 0;
						margin: auto;
						-webkit-transform: rotate(45deg);
						-ms-transform: rotate(45deg);
						transform: rotate(45deg); }
					.menu .entries .imageslider .slideframe nav ul li.next a:before{
						content: "";
						width: 5px;
						height: 5px;
						display: block;
						border-top: #e60020 solid 2px;
						border-right: #e60020 solid 2px;
						position: absolute;
						top: 0;
						right: 0;
						bottom: 0;
						margin: auto;
						-webkit-transform: rotate(45deg);
						-ms-transform: rotate(45deg);
						transform: rotate(45deg); }
					.menu .entries .imageslider .slideframe nav ul li.next{
						margin-left: auto; }
	.menu .entries .imageslider nav ol{
		margin: 0 5vw;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center; }
	.menu .entries .imageslider nav ol li{
		width: 19%;
		box-shadow: 0 10px 20px 0 rgba(0,0,0,0.1); }
	.menu .entries .imageslider nav ol li:not(:first-of-type){
		margin-left: auto; }
	.menu .entries .imageslider nav ol li img{
		max-width: 100%; }
	.menu .entries .commentArea{
		line-height: 1.8;
		margin: 0 5vw; }
		.menu .entries .commentArea h1,
		.menu .entries .commentArea h2,
		.menu .entries .commentArea h3,
		.menu .entries .commentArea h4,
		.menu .entries .commentArea h6{
		  padding: 0.5em;/*文字周りの余白*/
		  color: #494949;/*文字色*/
		  /*/background: #ffe8ee;/*背景色*/
		  border-left: solid 5px #E60020;/*左線（実線 太さ 色）*/
		  	font-size: 1.5rem;
			font-weight: bold;
			margin: 0 0 1rem;
		}
		.menu .entries .commentArea h5{
			border-bottom: dashed 2px #F5CD25;
			color: #494949;
			font-size: 1.2rem;
			font-weight: bold;
			margin: 0 0 1rem;
			}
		.menu .entries .commentArea p + p{
			margin-top: 1rem; }
		.menu .entries .commentArea p + h1,
		.menu .entries .commentArea p + h2,
		.menu .entries .commentArea p + h3,
		.menu .entries .commentArea p + h4,
		.menu .entries .commentArea p + h5,
		.menu .entries .commentArea p + h6{
			margin-top: 2rem; }
	.menu .entries .commentArea .pointbox {
	    position: relative;
	    margin: 2em 0;
	    padding: 0.5em 1em;
	    border: solid 3px #F5CD25;
	    border-radius: 8px;
	}
	.menu .entries .commentArea .pointbox .box-title {
	    position: absolute;
	    display: inline-block;
	    top: -13px;
	    left: 10px;
	    padding: 0 9px;
	    line-height: 1;
	    font-size: 19px;
	    background: #FFF;
	    color: #F5CD25;
	    font-weight: bold;
	}
	.menu .entries .commentArea .pointbox p {
	    margin: 0; 
	    padding: 0;
	}

	/*===テーブル===*/
	.menu .entries .commentArea .type2 {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

	.menu .entries .commentArea .type2 tr {
  background-color: #fff;
  border: 1px solid #ddd;
  padding: .35em;
  font-family: 'Roboto', sans-serif;
}
	.menu .entries .commentArea .type2 th,
	.menu .entries .commentArea .type2 td {
  padding: 1em 10px 1em 1em;
  border-right: 1px solid #ddd;
}
	.menu .entries .commentArea .type2 th {
  /*font-size: .85em;*/
}
	.menu .entries .commentArea .type2 thead tr{
  background-color: #eee;
}
	.menu .entries .commentArea .txt{
   text-align: left;
   font-size: .85em;
}
	.menu .entries .commentArea .price{
	font-family: 'Roboto', sans-serif;
   text-align: right;
}
	.menu .entries .commentArea .price2{
	font-family: 'Roboto', sans-serif;
   text-align: right;
   font-weight: bold;
}
@media screen and (max-width: 670px) {
  	.menu .entries .commentArea .type2 {
    border: 0;
    width:100%
  }
  	.menu .entries .commentArea .type2 th{
    background-color: #eee;
    display: block;
    border-right: none;
  }
  	.menu .entries .commentArea .type2 thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  } 
  	.menu .entries .commentArea .type2 tr {
    display: block;
    margin-bottom: 1em;  /*.625em*/
  }
  	.menu .entries .commentArea .type2 td {
    border-bottom: 1px solid #ddd;
    display: block;
    /*font-size: .8em;*/
    text-align: right;
    position: relative;
    padding: 1em 1em 1em 4em;
    border-right: none;
  }
  
  	.menu .entries .commentArea .type2 td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  
  	.menu .entries .commentArea .type2 td:last-child {
    border-bottom: 0;
  }

}


	/*===スクロールテーブル===*/
	.menu .entries .commentArea .type1 {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

	.menu .entries .commentArea .type1 tr {
  background-color: #fff;
  border: 1px solid #ddd;
  padding: .35em;
  font-family: 'Roboto', sans-serif;
}
	.menu .entries .commentArea .type1 th,
	.menu .entries .commentArea .type1 td {
  padding: 1em 10px 1em 1em;
  border-right: 1px solid #ddd;
}
	.menu .entries .commentArea .type1 th {
  /*font-size: .85em;*/
}
	.menu .entries .commentArea .type1 thead tr{
  background-color: #eee;
}
	.menu .entries .commentArea .txt{
   text-align: left;
   font-size: .85em;
}
	.menu .entries .commentArea .price{
	font-family: 'Roboto', sans-serif;
   text-align: right;
}
	.menu .entries .commentArea .price2{
	font-family: 'Roboto', sans-serif;
   text-align: right;
   font-weight: bold;
}
@media screen and (max-width: 670px) {
  	.menu .entries .commentArea .type1 {
    border: 0;
    width:100%
  }
   	.menu .entries .commentArea .scroll{
	overflow: auto;
	white-space: nowrap;
	}
}
/* ------------------------------------------------------------
    会社案内部分
------------------------------------------------------------ */
.about .pagetitle{
	background: url(../images/about/ttl_about.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.about .message{
	padding: 40px 5vw; }
	.about .message .inner figure{
		margin: 0 0 30px; }
	.about .message .inner .commentArea{
		}
		.about .message .inner .commentArea p:not(:firast-of-type){
			margin: 1rem 0 0; }
		.about .message .inner .commentArea .name{
			margin: 30px 0 0;
			text-align: right; }			
.about .information{
	padding: 40px 5vw;
	position: relative; }
	.about .information:after{
		content: "";
		border-right: 100vw solid transparent;
		border-bottom: 2.5vh solid #f5f5f5;
		position: absolute;
		bottom: 0;
		left: 0; }
.about .access{
	background: #f5f5f5;
	padding: 40px 5vw;
	position: relative; }
	.about .access:after{
		content: "";
		border-bottom: 2.5vh solid #fff;
		border-left: 100vw solid transparent;
		position: absolute;
		bottom: 0;
		left: 0; }
	.about .access .map{
		margin: 0 auto 30px; }
	.about .access .map2{
		margin: 60px auto 30px; }
	.about .access dl{
		margin: 0 auto;
		line-height: 1.0; }
		.about .access dl dt{
			font-size: 1.4rem;
			font-weight: bold;
			margin: 0 0 20px; }
		.about .access dl dd:not(:last-of-type){
			margin: 0 0 15px; }
.about .history{
	padding: 40px 5vw; }
.about .history .table{
	margin: 0 auto;
	display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	border-bottom: #ddd solid 1px; }
.about .history .table > dt{
	background: #f5f5f5;
	width: 30%;
	padding: 5vw 10px;
	border-top: #ddd solid 1px;
	box-sizing: border-box; }
.about .history .table > dd{
	width: 70%;
	padding: 5vw 10px;
	border-top: #ddd solid 1px;
	box-sizing: border-box; }
.about .history .table > dd dt:not(:first-of-type){
	margin: 30px 0 0; }
	
/* ------------------------------------------------------------
    採用情報部分
------------------------------------------------------------ */
.recruit .pagetitle{
	background: url(../images/recruit/ttl_recruit.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.recruit .requirementslist > li{
	padding: 40px 5vw; }
	.recruit .requirementslist > li .inner{
		margin: 0 auto 30px; }
		.recruit .requirementslist > li .inner figure img{
			width: 100%;
		}
		.recruit .requirementslist > li .inner .commentArea{
			background: #f5f5f5;
			padding: 5vw; }
			.recruit .requirementslist > li .inner .commentArea p:not(:first-of-type){
				margin: 1rem 0 0; }

/* ------------------------------------------------------------
    FAQ部分
------------------------------------------------------------ */
.faq .pagetitle{
	background: url(../images/faq/ttl_faq.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.faq .faqlist{
	padding: 40px 5vw; }
	.faq .faqlist p{
		font-size: 1.4rem;
		line-height: 2.0; }
	.faq .faqlist dl{
		margin: 30px auto 0; }
		.faq .faqlist dl dt{
			font-size: 1.2rem;
			font-weight: bold;
			margin: 0 0 15px;
			padding: 0 0 0 70px;
			position: relative;
			box-sizing: border-box; }
			.faq .faqlist dl dt:before{
				content: "Q";
				background: #e60020;
				width: 60px;
				padding: 5px 0;
				color: #fff;
				display: block;
				font-family: 'Roboto', sans-serif;
				text-align: center;
				border-radius: 30px;
				position: absolute;
				top: 0;
				left: 0; }
		.faq .faqlist dl dd{
			background: #f5f5f5;
			padding: 15px 15px 15px 85px;
			position: relative; }
			.faq .faqlist dl dd:before{
				content: "A";
				background: #000;
				width: 60px;
				padding: 5px 0;
				color: #fff;
				display: block;
				font-family: 'Roboto', sans-serif;
				text-align: center;
				border-radius: 30px;
				position: absolute;
				top: 15px;
				left: 15px; }
			.faq .faqlist dl dd:not(:last-of-type){
				margin-bottom: 30px; }

/* ------------------------------------------------------------
    FAQ2部分
------------------------------------------------------------ */
.faq2 .pagetitle{
	background: url(../images/faq/ttl_faq2.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.faq2 .faqlist{
	padding: 40px 5vw; }
	.faq2 .faqlist p{
		font-size: 1.4rem;
		line-height: 2.0; }
	.faq2 .faqlist dl{
		margin: 30px auto 0; }
		.faq2 .faqlist dl dt{
			font-size: 1.2rem;
			font-weight: bold;
			margin: 0 0 15px;
			padding: 0 0 0 70px;
			position: relative;
			box-sizing: border-box; }
			.faq2 .faqlist dl dt:before{
				content: "Q";
				background: #e60020;
				width: 60px;
				padding: 5px 0;
				color: #fff;
				display: block;
				font-family: 'Roboto', sans-serif;
				text-align: center;
				border-radius: 30px;
				position: absolute;
				top: 0;
				left: 0; }
		.faq2 .faqlist dl dd{
			background: #f5f5f5;
			padding: 15px 15px 15px 15px;
			position: relative; }
			/*.faq2 .faqlist dl dd:before{
				content: "A";
				background: #000;
				width: 60px;
				padding: 5px 0;
				color: #fff;
				display: block;
				font-family: 'Roboto', sans-serif;
				text-align: center;
				border-radius: 30px;
				position: absolute;
				top: 15px;
				left: 15px; }*/
			.faq2 .faqlist dl dd:not(:last-of-type){
				margin-bottom: 30px; }

/* ------------------------------------------------------------
    お問合せ部分
------------------------------------------------------------ */
.contact .pagetitle{
	background: url(../images/contact/ttl_contact.jpg) center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover; }
.contact .mailform{
	padding: 40px 5vw; }
	.contact .mailform p{
		line-height: 1.8;
		margin: 0 auto 40px; }
	.contact .mailform .telArea{
		margin: 0 auto 40px;
		border: #ddd solid 1px;
		box-sizing: border-box; }
		.contact .mailform .telArea dt{
			background: #f5f5f5;
			padding: 5vw;
			font-size: 1.4rem;
			font-weight: bold;
			box-sizing: border-box; }
			.contact .mailform .telArea dt small{
				font-size: 1rem;
				margin: 1rem 0 0;
				display: block; }
		.contact .mailform .telArea dd{
			padding: 5vw;
			box-sizing: border-box; }
			.contact .mailform .telArea dd a{
				font-family: 'Roboto', sans-serif;
				font-size: 2.8rem;
				font-weight: bold;
				letter-spacing: 0.1rem; }
/***contactテーブル **/
.contact .table2{
	margin: 0 auto;
	border-bottom: #ddd solid 1px; }
	.contact .table2 > dt{
		padding: 4vh 0 1vh;
		border-top: #ddd solid 1px;
		font-weight: bold;
		box-sizing: border-box; }
	.contact .table2 > dd{
		padding: 1vh 0 4vh;
		box-sizing: border-box; }
	.contact .table2 > dd dt:not(:first-of-type){
		margin: 30px 0 0; }
	.contact .mailform form dl dt.must:after {
		background: #000;
		content: "必須";
		margin: 0 0 0 10px;
		display: inline-block;
		padding: 5px 15px;
		font-size: 0.8rem;
		color: #fff;
		border-radius: 15px; }
	.contact .mailform form dd input[type="text"]{
		width: 100%;
		padding: 5vw;
		font-size: 16px;
		border: #ddd solid 1px;
		box-sizing: border-box; }
	.contact .mailform form dd ul{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap; }
	.contact .mailform form dd ul li:not(:last-of-type){
		margin-right: 20px; }
	.contact .mailform form dd textarea{
		width: 100%;
		height: 20rem;
		padding: 5vw;
		font-size: 16px;
		border: #ddd solid 1px;
		box-sizing: border-box; }
.btnSubmit{
	width: 240px;
	margin: 30px auto 0;
	display: flex;
	flex-flow: column-reverse;
	justify-content: space-between; }
	.btnSubmit li:not(:last-of-type){
		margin-top: 20px; }
	.btnSubmit li input[type="submit"]{
		width: 240px;
		cursor: pointer;
		padding: 15px 0;
		text-align: center;
		font-size: 1rem;
		line-height: 1.0;
		border-radius: 50px; }
	.btnSubmit li .submit{
		background: #25C04A;
		color: #fff;
		font-weight: bold;
		border: #25C04A solid 2px; }
	.btnSubmit li .send{
		background: #25C04A;
		color: #fff;
		font-weight: bold;
		border: #25C04A solid 2px; }
	.btnSubmit li .back{
		background: #9D9D9D;
		color: #fff;
		font-weight: bold;
		border: #9D9D9D solid 2px; }
			
}