/* DEFAULT CSS */
header div.logo a{/* ヘッダーロゴの文字色 */
	color:#333;
}
footer{
	background-color:#666;
}
footer div.logo{
	color:#FFF;
}
section.slider::before{/* スライダー下のSCROLLの文字色 */
	color:#FFF;
}
section.slider::after{/* スライダー下のSCROLLの矢印の色 */
	border-color:transparent transparent #FFF #FFF;
}
/* formの設定
----------------------------------------------- */
input[type='date'],
input[type='time'],
input[type="button"],
input[type="submit"],
input[type="text"],
input[type="password"],
input[type="number"]{
	-webkit-appearance:none;
	border-radius:0;/* CSS3草案 */
	transition:all 0.3s ease;
	box-sizing:border-box;
	font-size:16px;
	font-weight:400;
	width:100%;
	vertical-align:middle;
}
input[type="submit"],
input[type="button"]{
	border:none;
	cursor:pointer;
	color:#333;
	height:50px;
}
input[type='date'],
input[type='time'],
input[type="text"],
input[type="password"],
input[type="number"]{
	height:40px;
	text-align:left;
	background-color:#FFF;
	border:solid 1px rgba(153,153,153,0.5);
	color:#999;
	text-indent:15px;
	font-size:12px;
}
input[type='date']:hover,
input[type='time']:hover,
input[type="text"]:hover,
input[type="password"]:hover,
input[type="number"]:hover{
	border:solid 1px rgba(153,153,153,0.5);
	color:#666;
}
input[type='date']:focus,
input[type='time']:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="number"]:focus{
	color:#39D;
	background-color:#FFF;
}
input:disabled{
	background-color:#EEE;
}
label.file{
	width:100%;
	position:relative;
	z-index:1;
	background-color:#FFF;
	display:block;
	height:40px;
}
label.file input[type='file']{
	position:absolute;
	z-index:2;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	cursor:pointer;
}
label.file input[type='text']{
	position:absolute;
	z-index:1;
	top:0;
	right:0;
	bottom:0;
	left:0;
}	/*textareaの設定
	------------------------------------*/
textarea{
	font-size:95%;
	background-color:#fff;
	border:solid 1px rgba(153,153,153,0.5);
	color:#999;
	margin:0;
	padding:10px;
	resize:vertical;
	width:100%;
	min-height:120px;
	resize:none;
}
textarea.textarea01:hover{
	color:#39D;
	background-color:#FFF;
}
@media only screen and (max-width:999px){
	/* SPの設定
	----------------------------------------------- */
	header section div.menubtn{/* ヘッダーのメニューボタンの色 */
		border-color:#333;
	}
	header div.menubtn span{/* ヘッダーのメニューボタンの色 */
		background-color:#333;
	}
	header nav{/* ヘッダーのメニューの背景色 */
		background-color:rgba(255,255,255,0.75);
	}
	header nav ul li div a{/* ヘッダーのグローバルナビの色 */
		border-color:#333;
		background-color:rgba(255,255,255,0.5);
		color:#333;
	}
	footer nav ul{/* フッターのグローバルナビのライン色 */
		border-color:#FFF;
	}
	footer nav ul li{/* フッターのグローバルナビのライン色 */
		border-color:#FFF;
	}
	footer nav ul li a{/* フッターのグローバルナビの文字色 */
		color:#FFF;
	}
	footer nav ul li a::after{
		border-color:#FFF #FFF transparent transparent;
	}
	/*改行*/
	br.pc{
		display: none;
	}
	/*トップページ　一番上の文章
	---------------------------------------------*/
	section.company_adout{
		padding:50px 0 60px 0;
	}
	section.company_inner dl.message{
	}
	section.company_inner dl.message dt{
		font-size:24px;
		width:100%;
		text-align:center;
		color:#333;
	}
	section.company_inner dl.message dd{
		font-size:12px;
		color:#333;
		width:100%;
		text-align:center;
		padding:30px 20px 0 20px;
		box-sizing:border-box;
		line-height:1.8em;
	}
	section.top_inner{
		width:100%;
		background-color:#fff;
	}
	br.pc{
		display:none;
	}
	/*トップページお知らせ
	----------------------------------------------*/
	section.news{
		width:100%;
		padding:50px 0;
	}
	.newstitle{
		width:100%;
		font-size:24px;
		color:#333;
		text-align:center;
	}
	section.newsinner{
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}
	section.newsinner ul{
		list-style:none;
		list-style-position:outside;
		margin:30px 0 0 0;
	}
	section.newsinner ul li{
		width:100%;
		padding:0 10px;
		box-sizing:border-box;
		border-bottom:1px dotted #333;
		height:50px;
	}
	section.newsinner ul li:nth-child(1){
		border-top:1px dotted #333;
		box-sizing:border-box;
		height:50px;
	}
	section.newsinner ul li a{
		display:block;
	}
	section.newsinner ul a dl{
		display:table;
		font-size:12px;
		width:100%;
	}
	section.newsinner ul a dl dt{
		display:table-cell;
		width:25%;
		vertical-align:middle;
		height:50px;
		color:#333;
	}
	section.newsinner ul a dl dd{
		display:table-cell;
		vertical-align:middle;
		height:50px;
		overflow:hidden;
		white-space:nowrap;
		text-overflow:ellipsis;
		width:100%;
		max-width:1px;
		color:#333;
		padding:0 0 0 5px;
		box-sizing:border-box;
	}
	.newsb_btn{
		width:200px;
		margin:30px auto 0 auto;
	}
	.newsb_btn a{
		display:table;
		width:100%;
		text-align:center;
	}
	.newsb_btn a p{
		display:table-cell;
		height:50px;
		vertical-align:middle;
		color:#333;
		border:solid 1px #333;
		box-sizing:border-box;
	}
	div.topproduct_list{
		width:100%;
		padding:0 10px;
		box-sizing:border-box;
		margin:40px 0 0 0;
	}
	div.topproduct_list ul{
		list-style:none;
		list-style-position:outside;
	}
	div.topproduct_list ul li{
		width:250px;
		margin:0 auto 20px auto;
	}
	div.topproduct_list ul li a{
		display:block;
		width:100%;
	}
	div.topproduct_list ul li a div.topproduct_pict figure{
		width:100%;
		padding:100% 0 0 0;
		background-size:contain;
		background-position:center center;
		background-repeat:no-repeat;
	}
	div.topproduct_list ul li a h3{
		color:#333;
    font-size: 1.5em;
	}
	div.topproduct_list ul li a dl dt{
		font-size:15px;
		color:#333;
	}
	div.topproduct_list ul li a dl dd{
		width:100%;
		font-size:12px;
		line-height:1.8em;
		color:#333;
		height:50px;
		overflow:hidden;
		padding:5px 0 0 0;
		box-sizing:border-box;
	}
	.topproduct_btn{
		width:200px;
		margin:0 auto;
	}
	.topproduct_btn a{
		display:table;
		width:100%;
	}
	.topproduct_btn a p{
		display:table-cell;
		height:50px;
		vertical-align:middle;
		text-align:center;
		color:#333;
		border:solid 1px #333;
		box-sizing:border-box;
	}
		/*子ページ
	-------------------------------------*/
	/*ページタイトル*/
	section.pagetitle{
		width:100%;
		display:table;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
  section.pagetitle.job{
    background-position:center bottom;
  }
	section.pagetitle div{
		display:table-cell;
		height:200px;
		padding:60px 0 0 0;
		box-sizing:border-box;
		vertical-align:middle;
		text-align:center;
		color:#fff;
		font-size:24px;
    background-image:url(../img/bg/dot_01.png);
		background-repeat:repeat !important;
	}
	/*ページポジション*/
	section.pageposition{
		width:100%;
		white-space:nowrap;
		overflow-x:auto;
		overflow-y:hidden;
		-webkit-overflow-scrolling:touch;
		position:relative;
		z-index:1;
	}
	section.pageposition ul{
		list-style:none;
		list-style-position:outside;
		display:table;
		position:relative;
		z-index:1;
	}
	section.pageposition ul li{
		display:table-cell;
		vertical-align:middle;
		height:35px;
		font-size:10px;
		color:#333;
	}
	section.pageposition ul li:nth-child(1){
		width:35px;
	}
	section.pageposition ul li:nth-child(1) a{
		display:block;
		width:100%;
	}
	section.pageposition ul li:nth-child(1) a img{
		width:100%;
	}
	section.pageposition ul li:nth-child(n+2){
		position:relative;
		z-index:1;
		padding:0 15px;
	}
	section.pageposition ul li:nth-child(n+2) a{
		display:block;
		width:100%;
		line-height:35px;
		color:#333;
	}
	section.pageposition ul li:nth-child(n+2)::before{
		content:"";
		position:absolute;
		top:50%;
		left:0;
		width:10px;
		height:10px;
		border-top:solid 1px #333;
		border-right:1px solid #333;
		transform:translate(-50%,-50%) rotate(45deg);
		transform:translateY() rotate(45deg);
	}
	/*会社概要*/
	section.message{
		width:100%;
		margin:0 auto;
		padding:40px 0 0 0;
	}
	div.message_title{
		width:100%;
		text-align:center;
		font-size:24px;
		padding:0 0 35px 0;
		color:#333;
	}
	div.inmessage div figure{
		width:100%;
		height:200px;
		background-color:#666;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
	div.inmessage dl{
		width:100%;
		padding:0 10px;
		box-sizing:border-box;
	}
	div.inmessage dl dt{
		font-size:18px;
		width:100%;
		text-align:center;
		margin:35px 0 35px 0;
	}
	div.inmessage dl dd{
		font-size:12px;
		line-height:2em;
		padding:0 0 50px 0;
	}
	section.company_information{
		width:100%;
		background-color:#999;
		padding:0 0 30px 0;
	}
	section.company_information h3{
		padding:30px 0 20px 0;
		font-size:24px;
		color:#fff;
		text-align:center;
	}
	div.in_information{
		width:100%;
		padding:0 1px;
		box-sizing:border-box;
	}
	div.in_information dl{
		width:100%;
		display:table;
		padding:0 0 1px 0;
		font-size:10px;
	}
	div.in_information dl dt{
		display:table-cell;
		vertical-align:middle;
		width:25.5%;
		height:40px;
		background-color:rgba(255,255,255,0.5);
		text-align:center;
	}
	div.in_information dl dd{
		display:table-cell;
		width:auto;
		height:40px;
		vertical-align:middle;
		padding:0 0 0 1px;
		background-color:#fff;
		box-sizing:border-box;
	}
	div.in_information dl dd div{
		width:100%;
		background-color:#fff;
		padding:0 0 0 10px;
		box-sizing:border-box;
	}
	div.in_information dl dd p{
		line-height:40px;
	}
	div.in_information dl:nth-child(9) dd p{
		line-height:1.4em;
	}
	div.in_information dl:nth-child(9) dd p:nth-child(1){
		padding:10px 0 0 0;
	}
	div.in_information dl:nth-child(9) dd p:nth-child(2){
		padding:0 0 10px 0;
	}
	div.in_information dl dd div ul{
		list-style:none;
		list-style-position:outside;
		padding:10px 0;
	}
	section.map{
		width:100%;
		height:200px;
		background-color:#0FF;
	}
	/*事業内容*/
	section.childpage_title{
		width:100%;
		height:200px;
		position:relative;
		z-index:1;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
	section.childpage_title p{
		position:absolute;
		top:50%;
		left:50%;
		color:#fff;
		font-size:24px;
		transform:translate(-50%,-50%);
	}
	section.childpage_title p::after{
		content:"事業内容";
		color:#fff;
		position:absolute;
		top:100%;
		left:50%;
		font-size:18px;
		width:100%;
		transform:translate(-50%,-50%);
		margin:5px 0 0 0;
		text-align:center;
	}
	section.child_inner{
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}
	.title_text{
		font-size:24px;
		color:#333;
		margin:50px 0 30px 0;
		text-align:center;
	}
	.title_text02{
		font-size:12px;
		color:#333;
		text-align:center;
		line-height:1.8em;
	}
	section.product_list{
		margin:30px 0 30px 0;
	}
  section.product_list > h2{
    font-size: 22px;
    color: #333;
    display: table;
    margin: 0 auto;
    margin-bottom: 0px;
    margin-bottom: 1rem;
    padding: 0 1rem;
    border-bottom: solid 1px #333;
  }
 section.product_list ul{
		list-style:none;
		list-style-position:outside;
	}
	section.product_list ul li{
		width:100%;
		margin:0 0 40px 0;
	}
	section.product_list ul li div figure{
		width:100%;
		padding:70% 0 0 0;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:contain;
	}
	section.product_list ul li dl{
		padding:5px 0;
	}
	section.product_list ul li dl dt{
		font-size:18px;
		color:#333;
	}
	section.product_list ul li dl dd{
		font-size:11px;
		color:#333;
		line-height:1.8em;
	}
  section.product_list ul li dl dd span.text_title{
    font-size: 14px;
  }
	section.product_list ul li > dl > dd div.btn a{
		border:solid 1px #333;
		line-height:50px;
		height:50px;
		text-align:center;
		color:#333;
		display:block;
		transition: all 0.3s ease;
		width:200px;
		margin:2em auto 0 auto;
		font-size:16px;
	}
	/*お問い合わせ*/
	section.contact_box{
	}
	section.contact_box dl{
		display:table;
		width:100%;
		border-bottom:1px solid #333;
		border-left:1px solid #333;
		border-right:1px solid #333;
		box-sizing: border-box;
	}
	section.contact_box dl:nth-child(1){
		border-top:solid 1px #333;
	}
	section.contact_box dl dt{
		display:table-cell;
		width:30%;
		padding:10px;
		vertical-align:middle;
		height:40px;
		font-size:10px;
		box-sizing: border-box;
		border-right:dotted 1px #333;
	}
	section.contact_box dl dd{
		display:table-cell;
		width:70%;
		padding:10px;
		box-sizing: border-box;
		vertical-align:middle;
		height:40px;
		text-align:center;
	}
	section.contact_box dl.tel div.tel_number div{
		width:100%;
	}
	section.contact_box dl.address dd div.place_number div{
		display:table-cell;
		vertical-align:middle;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1){
		padding:0 7.5px 0 0;
		box-sizing: border-box;
		position:relative;
		z-index:1;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1)::before{
		content:"";
		position:absolute;
		top:50%;
		right:-3px;
		width:5px;
		height:1px;
		background-color:#ccc;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(2){
		padding:0 0 0 7.5px;
		box-sizing: border-box;
	}
	div.sent{
		width:200px;
		margin:30px auto 0 auto;
	}
			/*お問い合わせ*/
	section.contact_box{
		padding:30px 10px;
		box-sizing: border-box;
	}
	section.contact_box dl{
		display:table;
		width:100%;
		border-bottom:1px solid #333;
		border-left:1px solid #333;
		border-right:1px solid #333;
		box-sizing: border-box;
	}
	section.contact_box dl:nth-child(1){
		border-top:solid 1px #333;
	}
	section.contact_box dl dt{
		display:table-cell;
		width:30%;
		padding:10px;
		vertical-align:middle;
		height:40px;
		font-size:10px;
		box-sizing: border-box;
		border-right:dotted 1px #333;
	}
	section.contact_box dl dd{
		display:table-cell;
		width:70%;
		padding:10px;
		box-sizing: border-box;
		vertical-align:middle;
		height:40px;
		text-align:center;
	}
	section.contact_box dl.address dd div.place_number{
		display:table;
		padding:0 0 10px 20px;
		box-sizing:border-box;
		position:relative;
		z-index:1;
	}
	section.contact_box dl.address dd div.place_number::before{
		content:"〒";
		position:absolute;
		top:50%;
		left:0;
		color:#333;
		transform:translate(0%,-50%);
	}
	section.contact_box dl.address dd div.place_number div{
		display:table-cell;
		vertical-align:middle;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1){
		padding:0 7.5px 0 0;
		box-sizing: border-box;
		position:relative;
		z-index:1;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1)::before{
		content:"";
		position:absolute;
		top:50%;
		right:-3px;
		width:5px;
		height:1px;
		background-color:#ccc;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(2){
		padding:0 0 0 7.5px;
		box-sizing:border-box; 
	}
	div.sent{
		width:200px;
		margin:30px auto 0 auto;
	}
	/*採用情報*/
	section.recruit_text{
		padding: 60px 10px;
		box-sizing: border-box;
	}
	section.recruit_text h2,
	section.recruit_list h2,
	section.recruit_text02 > h2{
		text-align: center;
		font-size: 24px;
		margin-bottom: 30px;
	}
	section.recruit_text p{
		line-height: 2.5em;
		font-size: 12px;
	}
	section.recruit_text p span{
		font-size: 16px;
		color: #468bca;
	}
	section.recruit_text02{
		margin-bottom: 60px;
		padding: 0 10px;
		box-sizing: border-box;
	}
	section.recruit_text02 div.flex_box{
		width: 100%;
	}
	section.recruit_text02 div.flex_box > div{
		width: 100%;
		background-color: #2C639B;
		padding-top: 70px;
		background-image: url("../img/icon/megane.webp");
		background-size: 50px;	
		background-position: top 1.5em center;
		background-repeat: no-repeat;
		padding-bottom: 1rem;
		border-radius: 10px;
		box-sizing: border-box;
		margin-bottom: 1rem;
	}
	section.recruit_text02 div.flex_box > div dl{
		padding: 2rem 1rem 0 1rem;
		box-sizing: border-box;
	}
	section.recruit_text02 div.flex_box > div dl dt{
		color: #fff;
		font-size: 24px;
		text-align: center;
		margin-bottom: 1rem;
	}
	section.recruit_text02 div.flex_box > div dl dd{
		color: #fff;
		line-height: 2em;
		font-size: 12px;
	}
	section.recruit_list{
		width: 100%;
		padding-bottom: calc(60px - 0.5rem);
	}
	section.recruit_list div.flex_box{
		display: flex;
		margin-bottom: 0.5rem;
		padding: 0 10px;
		box-sizing: border-box;
	}
	section.recruit_list div.flex_box:first-child{
	}
	section.recruit_list div.flex_box > div{
		padding: 1rem;
		min-height: 50px;
		box-sizing: border-box;
		font-size: 12px;
	}
	section.recruit_list div.flex_box > div:nth-of-type(1){
		width: 100px;
		background-color: #ddd;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2){
		width: calc(100% - 100px);
		background-color: #efefef;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl{
		margin-bottom: 1rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl dt{
		display: table;
		border-bottom: 1px solid #000;
		padding: 0 0.5rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl dd{
		padding: 0.5rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) ul{
		padding-left: 1rem;
		list-style: disc;
	}
		/*ボタンの設定
	--------------------------------------------*/
	input[type="submit"],
	input[type="button"]{
		border:none;
		cursor:pointer;
		color:#333;
		height:50px;
		line-height:50px;
		font-size:20px;
		border:solid 1px #333;
		background-color:#fff;
		-webkit-transition:all 0.3s ease;
		-moz-transition:all 0.3s ease;
		-o-transition:all 0.3s ease;
		transition:all 0.3s ease;
	}
}
@media screen and (orientation: landscape){
	/* SP 横の設定
	----------------------------------------------- */
}
@media only screen and (min-width:1000px){
	/* PCの設定
	----------------------------------------------- */
	header section.header,
	section.inner,
	section.footertop,
	section.footerbottom{
		width:1000px;
		margin:0 auto;
		color:#FFF;
	}
	header nav ul li div a:hover{/* グローバルナビマウスオーバー時の背景色 */
		background-color:rgba(255,255,255,0.5);
	}
	header nav ul li.acbtn div.acbtn + ul{/* グローバルナビプルダウン時の背景色 */
		background-color:rgba(255,255,255,0.5);
	}
	header nav ul li div a{/* グローバルナビの文字色 */
		color:#333;
	}
	header nav ul li.acbtn div.acbtn a span.icon span.wrap span{/* グローバルナビプルダウンのプラスアイコン色 */
		background-color:#333;
	}
	footer nav ul li div a:hover{/* グローバルナビマウスオーバー時の背景色 */
		background-color:rgba(0,0,0,0.5);
	}
	footer nav ul li.acbtn div.acbtn + ul{/* グローバルナビプルダウン時の背景色 */
		background-color:rgba(0,0,0,0.5);
	}
	footer nav ul li div a{/* グローバルナビの文字色 */
		color:#FFF;
	}
	footer nav ul li.acbtn div.acbtn a span.icon span.wrap span{/* グローバルナビプルダウンのプラスアイコン色 */
		background-color:#FFF;
	}
	/*トップページ文章・商品*/
	section.company_about{
		width:100%;
		background-color:#fff;
	}
	section.company_inner{
		width:1000px;
		margin:0 auto 0 auto;
		padding:80px 0 0 0;
	}
	section.company_inner dl.message{
		color:#333;
	}
	section.company_inner dl.message dt{
		font-size:36px;
		width:100%;
		text-align:center;
		font-weight:300;
		margin:0 0 30px 0;
	}
	section.company_inner dl.message dd{
		width:100%;
		text-align:center;
		line-height:2.5em;
	}
	section.top_inner{
		width:100%;
		background-color:#fff;
	}
	/*トップページ改行*/
	br.sp{
		display:none;
	}
	/*トップページ商品*/
	div.topproduct_list{
		z-index:1;
		margin:80px 0 80px 0;
	}
	div.topproduct_list ul{
		list-style:none;
		list-style-position:outside;
	}
	div.topproduct_list ul li{
		width:300px;
		float:left;
	}
	div.topproduct_list ul li:nth-child(2){
		margin:0 50px;
	}
	div.topproduct_list ul li a div.topproduct_pict figure{
		width:100%;
		padding:100% 0 0 0;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:contain;
	}
  div.topproduct_list ul li h3{
    text-align: center;
    font-size: 1.5em;
    color:#333 ;
    padding-top: 1rem;
	}
	div.topproduct_list ul li a{
		transition:all 0.3s ease;
	}
	div.topproduct_list ul li a:hover{
		filter:alpha(opacity=75);
		-moz-opacity:0.75;
		opacity:0.75;
	}
	div.topproduct_list ul li a dl dd p{
		height:45px;
		vertical-align:middle;
		color:#333;
		overflow:hidden;
	}
	.topproduct_btn{
		width:200px;
		margin:30px auto 0 auto;
	}
	.topproduct_btn a{
		display:table;
		width:100%;
		background-color:#fff;
		transition:all 0.3s ease;
	}
	.topproduct_btn a p{
		display:table-cell;
		height:50px;
		vertical-align:middle;
		text-align:center;
		color:#333;
		border:solid 1px #333;
		box-sizing:border-box; 
		transition:all 0.3s ease;
	}
	.topproduct_btn a p:hover{
		background-color:#333;
		color:#fff;
		border:none;
	}
	/*トップページお知らせ*/
	section.news{
		width:1000px;
		margin:70px auto 0 auto;
		padding:0 0 70px 0;
	}
	.newstitle{
		width:100%;
		text-align:center;
		font-size:36px;
		color:#333;
		margin:0 0 50px 0;
	}
	section.news ul{
		list-style:none;
		list-style-position:outside;
	}
	section.news ul li a{
		display:block;
		width:100%;
		padding:0 20px;
		box-sizing:border-box; 
	}
	section.news ul li{
		border-bottom:1px dotted #333;
		box-sizing:border-box; 
		color:#666;
	}
	section.news ul li:nth-child(1){
		border-top:1px dotted #333;
		box-sizing:border-box; 
	}
	section.news ul li a{
		transition:all 0.3s ease
	}
  section.news ul li a:hover{
		opacity:0.75;
	}
	section.news ul li a dl{
		display:table;
		width:100%;
		text-overflow:ellipsis;
	}
	section.news ul li a dl p{
		color:#333;
	}
	section.news ul li a dl dt{
		display:table-cell;
		width:90px;
		vertical-align:middle;
		height:50px;
	}
	section.news ul li a dl dd{
		display:table-cell;
		height:50px;
		vertical-align:middle;
		padding:0 0 0 5px;
	  box-sizing:border-box; 
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		width:100%;
		max-width:1px;
		color:#333;
	}
	.newsb_btn{
		width:200px;
		margin:50px auto 0 auto;
	}
	.newsb_btn a{
		display:table;
		width:100%;
	}
	.newsb_btn a p{
		display:table-cell;
		height:50px;
		vertical-align:middle;
		text-align:center;
		color:#333;
		border:solid 1px #333;
		box-sizing:border-box;
		transition:all 0.3s ease;
	}
	.newsb_btn a p:hover{
		background-color:#333;
		color:#fff;
		border:none;
	}
	/*子ページ
	--------------------------------------*/
	/*子ページ共通
	-------------------------------------------------*/
	section.pagetitle{
		width:100%;
		display:table;
		background-repeat:no-repeat;
		background-position:left center;	
		background-size:cover;
		text-align:center;
	}
  section.pagetitle.job{
   background-position:left bottom;
  }
	section.pagetitle div{
		display:table-cell;
		height:400px;
		padding:100px 0 0 0;
		box-sizing:border-box; 
		color:#fff;
		vertical-align:middle;
		background-image:url(../img/bg/dot_01.png);
		background-repeat:repeat !important;
		font-size:36px;
	}
	/*ページポジション*/
	section.pageposition{
		width:100%;
		white-space:nowrap;
		overflow-x:auto;
		overflow-y:hidden;
		-webkit-overflow-scrolling:touch;
		position:relative;
		z-index:1;
	}
	section.pageposition ul{
		list-style:none;
		list-style-position:outside;
		display:table;
		position:relative;
		z-index:1;
	}
	section.pageposition ul li{
		display:table-cell;
		vertical-align:middle;
		font-size:14px;
		height:40px;
		color:#333;
	}
	section.pageposition ul li:nth-child(1){
		width:40px;
	}
	section.pageposition ul li:nth-child(1) a{
		display:block;
		width:100%;
	}
	section.pageposition ul li:nth-child(1) a img{
		width:100%;
	}
	section.pageposition ul li:nth-child(n+2){
		position:relative;
		z-index:1;
		padding:0 15px;
	}
	section.pageposition ul li:nth-child(n+2) a{
		display:block;
		width:100%;
		line-height:40px;
		color:#333;
	}
	section.pageposition ul li:nth-child(n+2)::before{
		content:"";
		position:absolute;
		top:50%;
		left:0;
		width:10px;
		height:10px;
		border-top:solid 1px #333;
		border-right:1px solid #333;
		transform:translate(-50%,-50%) rotate(45deg);
		transform:translateY() rotate(45deg);
	}
	/*会社概要*/
	section.message{
		width:1000px;
		margin:0 auto;
		padding:75px 0 100px 0;
	}
	div.message_title{
		width:100%;
		text-align:center;
		font-size:36px;
		padding:45px 0;
		color:#333;
	}
	section.message div.inmessage{
		width:100%;
		display:table;
	}
	section.message div.inmessage div{
		display:table-cell;
		width:300px;
		vertical-align:middlel
	}
	section.message div.inmessage div figure{
		width:100%;
		padding:100% 0 0 0;
		background-color:#666;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
	section.message div.inmessage dl{
		display:table-cell;
		width:700px;
		vertical-align:top;
		padding:0 0 0 20px;
		color:#333;
		box-sizing:border-box; 
	}
	section.message div.inmessage dl dt{
		font-size:24px;
		color:#333;
		padding:0 0 30px 0;
	}
	section.message div.inmessage dl dd{
		line-height:2em;
		color:#333;
		font-size:14px;
	}
	section.company_information{
		width:100%;
		background-color:#999;
		padding:0 0 50px 0;
	}
	section.company_information h3{
		padding:50px 0;
		font-size:36px;
		color:#fff;
		text-align:center;
	}
	div.in_information{
		width:800px;
		margin:0 auto;
	}
	div.in_information dl{
		width:100%;
		display:table;
		padding:0 0 1px 0;
	}
	div.in_information dl dt{
		display:table-cell;
		vertical-align:middle;
		width:260px;
		height:60px;
		background-color:rgba(255,255,255,0.5);
		text-align:center;
	}
	div.in_information dl dd{
		display:table-cell;
		width:auto;
		height:60px;
		vertical-align:middle;
		padding:0 0 0 1px;
		background-color:#fff;
		box-sizing:border-box;
	}
	div.in_information dl dd div{
		width:100%;
		background-color:#fff;
		padding:0 0 0 10px;
		box-sizing:border-box; 
	}
	div.in_information dl dd p{
		line-height:60px;
	}
	div.in_information dl:nth-child(9) dd p{
		line-height:1.4em;
	}
	div.in_information dl:nth-child(9) dd p:nth-child(1){
		padding:10px 0 0 0;
	}
	div.in_information dl:nth-child(9) dd p:nth-child(2){
		padding:0 0 10px 0;
	}
	div.in_information dl dd div ul{
		list-style:none;
		list-style-position:outside;
		padding:10px 0;
	}
	section.map{
		width:100%;
		height:600px;
	}
	/*事業内容*/
	section.child_wrap{
		width:100%;
		background-color:#fff;
	}
	section.child_inner{
		width:1000px;
		margin:0 auto;
	}
	section.childpage_title{
		width:100%;
		height:400px;
		position:relative;
		z-index:1;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
	section.childpage_title p{
		position:absolute;
		top:50%;
		left:50%;
		color:#fff;
		font-size:48px;
		transform:translate(-50%,-50%);
	}
	section.childpage_title p::after{
		content:"事業内容";
		color:#fff;
		font-size:24px;
		position:absolute;
		top:90%;
		left:50%;
		transform:translate(-50%,5%);
	}
	section.prucuct_page{
		width:100%;
		background-color:#fff;
	}
	section.prucuct_page div.title_text{
		width:100%;
	}
	.title_text{
		font-size:36px;
		width:100%;
		text-align:center;
		margin:50px 0;
	}
	.title_text02{
		font-size:14px;
		color:#333;
		text-align:center;
		width:100%;
		margin:0 0 80px 0;
		line-height:1.8em;
	}
	section.product_list{
		margin:0 0 70px 0;
	}
  section.product_list > h2{
    font-size: 28px;
    color: #333;
    display: table;
    margin: 0 auto;
    margin-bottom: 1rem;
    padding: 0 1rem;
    border-bottom: 1px solid #333;
  }
	section.product_list ul{
		list-style:none;
		list-style-position:outside;
	}
	section.product_list ul li{
		width:100%;
		margin:0 0 100px 0;
	}
	section.product_list ul li dl{
		width:50%;
		float:left;
		padding:10px;
		box-sizing:border-box; 
	}
	section.product_list ul li dl dt{
		width:100%;
		text-align:center;
		color:#333;
		font-size:24px;
		margin:0 0 15px 0;
	}
	section.product_list ul li dl dd{
		line-height:1.8em;
		font-size:14px;
    color: #333;
	}
  section.product_list ul li dl dd span.text_title{
    font-size: 1.4em;
    padding-bottom: 0.5rem;
    display: inline-block;
  }
	section.product_list ul li > div{
		width:50%;
		float:right;
		height:335px;
	}
	section.product_list ul li:nth-child(even) dl{
		float:right;
		width:50%;
	}
	section.product_list ul li:nth-child(even) > div{
		float:left;
	}
	section.product_list ul li div figure{
		width:100%;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:contain;
		height:335px;
	}
	section.product_list ul li > dl > dd div.btn{
	}
	section.product_list ul li > dl > dd div.btn a{
		border:solid 1px #333;
		line-height:50px;
		height:50px;
		text-align:center;
		color:#333;
		display:block;
		transition: all 0.3s ease;
		width:200px;
		margin:2em auto 0 auto;
		font-size:16px;
	}
	section.product_list ul li > dl > dd div.btn a:hover{
		background-color:#333;
		color:#fff;
	}
	/*お問い合わせ*/
	section.contact_box{
		padding:50px 0 50px 0;
	}
	section.contact_box dl{
		display:table;
		width:100%;
		border-right:1px solid #333;
		border-left:1px solid #333;
		border-bottom:1px solid #333;
		box-sizing:border-box; 
	}
	section.contact_box dl:nth-child(1){
		border-top:solid 1px #333;
	}
	section.contact_box dl dt{
		display:table-cell;
		width:30%;
		vertical-align:middle;
		height:50px;
		color:#333;
		text-align:center;
		border-right:1px dotted #333;
		box-sizing:border-box; 
	}
	section.contact_box dl dd{
		display:table-cell;
		width:70%;
		vertical-align:middle;
		padding:10px;
		box-sizing:border-box; 
	}
	section.contact_box dl.address dd div.place_number{
		display:table;
		position:relative;
		z-index:1;
		padding:0 0 10px 20px;
	}
	section.contact_box dl.address dd div.place_number::before{
		content:"〒";
		position:absolute;
		top:50%;
		left:0;
		color:#333;
		transform:translate(0%,-60%);
	}
	section.contact_box dl.address dd div.place_number div{
		display:table-cell;
		vertical-align:middle;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1){
		padding:0 20px 0 0;
		position:relative;
		z-index:1;
	}
	section.contact_box dl.address dd div.place_number div:nth-child(1)::before{
		content:"";
		position:absolute;
		top:50%;
		right:5px;
		width:10px;
		height:1px;
		background-color:#ccc;
	}
	div.sent{
		width:200px;
		height:50px;
		margin:30px auto 0 auto;
	}
	/*採用情報*/
	section.recruit_text{
		padding: 100px 0;
	}
	section.recruit_text h2,
	section.recruit_list h2,
	section.recruit_text02 > h2{
		text-align: center;
		font-size: 36px;
		margin-bottom: 30px;
	}
	section.recruit_text p{
		line-height: 2.5em;
		text-align: center;
	}
	section.recruit_text p span{
		font-size: 24px;
		color: #468bca;
	}
	section.recruit_text02{
		margin-bottom: 100px;
	}
	section.recruit_text02 div.flex_box{
		width: 1000px;
		margin: 0 auto;
		display: flex;
		border-radius: 5px;
	}
	section.recruit_text02 div.flex_box > div{
		width: calc((100% / 3) - 20px);
		background-color: #2C639B;
		padding-top: 150px;
		background-image: url("../img/icon/megane.webp");
		background-size: 100px;
		background-position:top 2.5em center;
		background-repeat: no-repeat;
		padding-bottom: 2.5rem;
		border-radius: 10px;
	}
	section.recruit_text02 div.flex_box > div:nth-of-type(2){
		margin: 0 30px;
	}
	section.recruit_text02 div.flex_box > div dl{
		padding: 2rem 1rem 0 1rem;
		box-sizing: border-box;
	}
	section.recruit_text02 div.flex_box > div dl dt{
		color: #fff;
		font-size: 24px;
		text-align: center;
		margin-bottom: 1rem;
	}
	section.recruit_text02 div.flex_box > div dl dd{
		color: #fff;
		line-height: 2em;
	}
	section.recruit_list{
		width: 1000px;
		margin:0 auto; 
		padding-bottom: calc(100px - 0.5rem);
	}
	section.recruit_list div.flex_box{
		display: flex;
		margin-bottom: 0.5rem;
	}
	section.recruit_list div.flex_box:first-child{
	}
	section.recruit_list div.flex_box > div{
		padding: 1rem;
		min-height: 50px;
		box-sizing: border-box;
	}
	section.recruit_list div.flex_box > div:nth-of-type(1){
		width: 200px;
		background-color: #ddd;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2){
		width: 800px;
		background-color: #efefef;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl{
		margin-bottom: 1rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl dt{
		display: table;
		border-bottom: 1px solid #000;
		padding: 0 0.5rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) dl dd{
		padding: 0.5rem;
	}
	section.recruit_list div.flex_box > div:nth-of-type(2) ul{
		padding-left: 1rem;
		list-style: disc;
	}
	/*ボタンの設定
	--------------------------------------------*/
	input[type="submit"],
	input[type="button"]{
		border:none;
		cursor:pointer;
		color:#333;
		height:50px;
		line-height:50px;
		font-size:20px;
		border:solid 1px #333;
		background-color:#fff;
		transition:all 0.3s ease;
	}
	input[type="submit"]:hover{
		background-color:#333;
		color:#fff;
		height:50px;
	}

}