@charset "utf-8";
/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;/*font-size:100%;*/vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}


/* ===全体共通=== */
header {
    width: 100%; /* 幅いっぱいを指定 */
    height: 180px; /* 高さを50pxに指定 */
    background: #fff; /* 背景色にグレーを指定 */
    /*padding: 20px 50px; /* ヘッダーに上下左右それぞれ余白を指定 */
    /*box-sizing: border-box; /* padding分を含んで幅を100%にするため */
    position: fixed; /* ウィンドウを基準に画面に固定 */
    top: 0; /* 上下の固定位置を上から0pxにする */
    left: 0; /* 左右の固定位置を左から0pxにする */
    /*display: flex; /* 中の要素を横並びにする */
    align-items: center; /* 中の要素を上下中央に並べる */
	z-index: 2;
}
body {
	font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
	font-size:16px;
	font-weight:normal;
	color:#000;
	padding-top: 180px; /* ヘッダーの後ろに要素が隠れないようにするため */
}
a {color:#000; text-decoration:none;}
a:hover {
	text-decoration:none;
	color:#000458;
	opacity:0.8;
}
/*float*/
.float_r{float:right;}
.float_l{float:left;}
/*---フロート解除---*/
.clearfix{display:block;}
.clearfix::after {content: " ";display: block; clear: both;}
/*寄せ*/
.t_r{text-align: right;}
.center{text-align:center;}
/*マップレスポンシブ*/
.mapbox {
position: relative;
padding-bottom: 75.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.mapbox iframe,
.mapbox object,
.mapbox embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
#wrapper {width:100%; position:relative;}
img{margin:0; padding:0; vertical-align:bottom; max-width:100%;}


/*===明朝フォント指定===*/
#h_logo-wrap a,
#top_img .catchcopy .box,
.sec-business h2,
.sec-setsubi h2,
.sec-recruit h2,
.sec-recruit h3,
.sec-sdgs h2,
.sec-sdgs h3,
.sec-pbc h2,
.sec-pbc h3,
.sec-security h2,
#sec-info h2,
.sec-business .item-txt p,
.sec-setsubi ul li a span,
#page #top_img h1{
	 font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	 font-weight:500;
}

/*＝＝＝フォントサイズ＝＝＝*/
.sec-business h2,
.sec-setsubi h2,
.sec-recruit h2{font-size:2.8rem;}
#sec-info h2,
.sec-recruit h3{font-size:1.3rem;}
.sec-sdgs h3{font-size:0.8rem;}
.sec-sdgs h2{font-size:2.0rem;}
.sec-pbc h3{font-size:0.8rem;}
.sec-pbc h2{font-size:2.0rem;}
.sec-security h2{font-size:2.0rem;}

/*===幅===*/
#h-inner,
.h_nav,
#f-inner{max-width:1160px;}

#main{max-width:1100px;}


/*===header===*/
.sp{display:none;}
#h-inner{
	margin:0 auto;
	padding:15px 0 20px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content: space-between;
}

#h_logo-wrap span{margin:0 0 15px 0; display:block; font-size:1rem;}
#h_logo-wrap a{
	display:flex;
	align-items:center;
	font-size:35px;
	margin:5px;
}
#h_toiawase {
	font-size:16px; 
	text-align:right;
}
#h_toiawase p{margin:0 0 15px 0;}
#h_toiawase p span{color:#f7931e;}

#h_toiawase .to-toiawase a{
	background:rgb(238,75,68);
	color:#fff;
	display:inline-block;
	padding:12px 35px 12px 25px;
	font-size:18px;
}
#h_toiawase .to-toiawase a img{margin:0 25px 0 0;}

/*h_nav*/
nav{	background:rgb(31,112,189);}
.h_nav{
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 2px;
}
.h_nav>li{
	margin:0;
	padding:0;
	width:calc((100%) / 7);
	
	
}
.h_nav>li a{
	display:block;
	color:#fff;
	font-size:18px;
	margin:0;
	padding:1rem 0;
	border-right:solid 2px #fff;
	text-align:center;
	height: 1em;
	padding-bottom: 1.8rem;
}
.h_nav>li:first-child a{border-left:solid 2px #fff;}
.h_nav>li.sp{display: none;}
#top_img{
	margin:0 auto 3rem;
	position:relative;
}
#top_img img{width:100%;}
#top_img .catchcopy{
	position: absolute;
	color: #fff;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content:center;
	top:0;
	left:0;
}

#top_img .catchcopy .box{
	width:1100px;
	margin:0 auto;
	text-align:left;
	font-size:2.2rem;
	line-height:3.5rem;
}
/*main*/
#main {
	margin:0 auto 6rem;
}


/*2カラム*/
#main .col2{display:flex; flex-wrap:wrap;}
#main .col2>li{width:calc((100% - 30px) / 2); margin:0 30px 30px 0;}
#main .col2>li:nth-child(2n){margin:0 0 30px 0;}
/*3カラム*/
#main .col3{display:flex; flex-wrap:wrap;}
#main .col3>li{width:calc((100% - 60px) / 3); margin:0 30px 30px 0;}
#main .col3>li:nth-child(3n){margin:0 0 30px 0;}
/*4カラム*/
#main .col4{display:flex; flex-wrap:wrap;}
#main .col4>li{width:calc((100% - 90px) / 4); margin:0 30px 30px 0;}
#main .col4>li:nth-child(4n){margin:0 0 30px 0;}
/*5カラム*/
#main .col5{display:flex; flex-wrap:wrap;}
#main .col5>li{width:calc((100% - 80px) / 5); margin:0 20px 30px 0;}
#main .col5>li:nth-child(5n){margin:0 0 30px 0;}

/*===table共通===*/
.tb{
		display:none;
	}
.tbl100{
	width:100%;
	margin:0 auto 2rem;
	border-collapse: separate;
	border-spacing: 0 2px;
}
.tbl100 th,
.tbl100 td{
	padding:.5rem;
	line-height:1.5rem;
	font-size:1.1rem;
}
.tbl100 th{
	vertical-align:middle;
}
.tbl100 td{background:#fff;}
.tbl100 td span.r_t{display:block; text-align:right;}


/*==リスト共通==*/

/*普通のリスト*/
.list01 {margin:0 0 2rem 0;}
.list01>li{
	margin:0 0 1rem 0;
	line-height:1.5rem;
}

.in-list {margin:0 0 2rem 0;}
.in-list>li{
	display:inline-block;
	margin:0 1rem 1rem 0;
}




/*フッター*/
footer {
	background:rgb(68,145,221);
}
footer #f-inner{
	padding:2rem 0;
	margin:0 auto;
	color:#fff;
	display:flex;
}
footer #f-inner .f_nav-wrap{
	flex:1;
}
footer #f-inner .to_top{
	position:fixed;
	right:0;
	bottom:5rem;
	background:#333;
	z-index:99;
}
footer .f_nav {margin:0;}
footer .f_nav li{
	display:inline-block;
	margin:0 0 .5rem 0;
}
footer .f_nav li a{
	display:inline-block;
	padding:0 5px;
	border-left:solid 1px #fff;
	color:#fff;
}

footer address{
	font-style:unset;
	text-align:center;
	font-size:1rem;
	padding:1rem;
	color:#fff;
}

footer #f-inner .f_inq{width:300px;}
footer #f-inner .f_logo{font-size:26px;margin:0 0 1rem 0;}
footer #f-inner .f_logo img{display:block;width:140px;margin:0 0 1rem 0;}
footer #f-inner .f_add{line-height:1.25rem;}

/* ===全体共通end=== */

/* ===section別=== */

/*インデックスのsec01*/
#sec01 {margin:0 0 3rem 0;}
#sec01 p.txt{font-size:18px; line-height:2rem;}

/*事業紹介リンク*/
.sec-business{margin:0 auto 3rem;}

.sec-business h2{margin:0 0 1rem 0;}
.sec-business .item-txt p{font-size:21px;}
.sec-business ul{display:flex;justify-content:space-between;}
.sec-business ul>li{
	position:relative;
	color:#fff;
	margin:0 0 3rem 0;
}
.sec-business .item-txt{
	position:absolute;
	left:0;
	top:0;
	width:calc( 100% - 4rem);
	padding:2rem;
}
.sec-business ul>li:nth-child(2n) .item-txt{text-align:right;}
	/*リンク用三角*/
	.sec-business ul li a{
		color:#fff;
		position:relative;
		display:block;
		z-index: 1;
	}
	.sec-business ul li a:before{
		content:"";
		position: absolute;
		z-index:999;
		bottom: 1px;
		right: 1px;
		border-left: 40px solid transparent;
		border-bottom: 40px solid #fff;
	}

/*工場のご紹介リンク*/
.sec-setsubi{
	background:rgb(31,112,189);
	margin:0 auto 3rem;
	padding:15px 15px 15px 0;
	display:flex;
	justify-content:space-between;
	align-items:center;
	min-height:100px;
}
.sec-setsubi h2{color:#fff; flex:1; padding-left:80px;}
.sec-setsubi h2:after{
	content:" ";
	display:inline-block;
	width:48px;
	height:40px;
	background:url(images/icon-arrow001.png) no-repeat;
	background-size: contain;
  vertical-align: middle;
	margin:0 0 0 15px;
}
.sec-setsubi ul{display:flex; max-width:575px;}
.sec-setsubi ul li a{display:block; position:relative;margin:0 10px;}
.sec-setsubi ul li a span{
	position:absolute;
	font-size:24px;
	background: rgba(255,255,255,0.8);
	bottom:5px;
	left:0;
	width:100%;
	padding:5px 0;
	text-align:center;
}
.sec-setsubi ul li a span:after{display:inline-block;content:url(images/icon-arrow002.png);margin: 0 0 0 15px;}

/*求人情報*/
.sec-recruit{
	background:url(images/top/recruit.png) no-repeat right top ;
	background-size: auto 100%;
	border:solid 3px rgb(27,20,100);
	margin:0 auto 3rem;
}
.sec-recruit a{	display:flex; align-items:center;	min-height:124px;}
.sec-recruit h2{padding-left:80px;}
.sec-recruit h2:after{
		content:" ";
	display:inline-block;
	width:48px;
	height:40px;
	background:url(images/icon-arrow001.png) no-repeat;
	background-size: contain;
  vertical-align: middle;
	margin:0 0 5px 15px;
}
.sec-recruit h3{display:flex; align-items:center; line-height:2rem;}
.sec-recruit h3:before{
			content:" ";
	display:inline-block;
	width:55px;
	height:86px;
	background:url(images/icon-wakaba.png) no-repeat;
	background-size: contain;
  vertical-align: middle;
	margin:0 15px;
}
/*事業継続力強化計画認定*/
.sec-pbc{
	background:url(images/top/pbc_logo.jpg) no-repeat;
	background-size: auto 100%;
	background-position: 95% 50%;
	border:solid 3px rgb(27,20,100);
	margin:0 auto 3rem;
	/*background-color:#CFEDF8;*/
}
.sec-pbc a{	display:block; align-items:center;	min-height:124px;}
.sec-pbc h2{padding:20px 0 0 50px;}
.sec-pbc p{
	display:flex;
	align-items:center;
	line-height:1.2rem;
}
.sec-pbc p:before{
	content:" ";
	display:inline-block;
	width:50px;
	height:86px;
	vertical-align: middle;
	margin:0;
}
/*SDGsリンクバナー*/
.sec-sdgs{
	background:url(images/top/sdgs02.png) no-repeat;
	background-color:aliceblue;
	background-size: auto 100%;
	background-position: 95% 50%;
	border:solid 3px rgb(0,161,220);
	margin:0 auto 3rem;
	padding: 10px;
	height: 160px;
}
.sec-sdgs a{	
	display:block; 
	align-items:center;	
	min-height:160px;
}
.sec-sdgs h2{padding:20px 0 0 50px;}
/*.sec-sdgs h2:after{
		content:" ";
	display:inline-block;
	float: none;
	width:48px;
	height:40px;
	background:url(images/icon-arrow003.png) no-repeat;
	background-size: contain;
  vertical-align: middle;
	margin:0 0 5px 30px;
}*/
.sec-sdgs p{
	display:flex;
	align-items:center;
	line-height:1.2rem;
}
.sec-sdgs p:before{
	content:" ";
	display:inline-block;
	width:50px;
	height:86px;
	vertical-align: middle;
	margin:0;
}
/*情報セキュリティ*/
.sec-security{
	background:url(images/top/security.jpg) no-repeat;
	background-size: auto 100%;
	background-position: 95% 50%;
	border:solid 3px rgb(27,20,100);
	margin:0 auto 3rem;
	/*background-color:#CFEDF8;*/
}
.sec-security a{	display:block; align-items:center;	min-height:124px;}
.sec-security h2{padding:20px 0 0 50px;}
.sec-security p{
	display:flex;
	align-items:center;
	line-height:1.2rem;
}
.sec-security p:before{
	content:" ";
	display:inline-block;
	width:50px;
	height:86px;
	vertical-align: middle;
	margin:0;
}
/*お知らせ*/
#sec-info{
	margin:0 0 3rem 0;
	display:flex;
}
#sec-info .item-info{flex:1;}
#sec-info .item-img{margin:0 0 0 90px;}
#sec-info h2{
	border:solid 2px rgb(27,20,100);
	padding:1rem 1rem 1rem 2rem;
	margin:0;
}
#sec-info h2 span{
	color:#b0c4e0;
	margin:0 0 0 1rem;
}
#sec-info ul>li{
	font-size:18px;
	line-height:1.8rem;
	padding:10px 10px 10px 8rem;
	border-bottom: dotted 2px rgba(27,20,100);
	position:relative;
	min-height:28px;
}
#sec-info ul>li:after{content: " ";display: block; clear: both;}
#sec-info ul>li span{
	position:absolute;
	left:10px;
	top:10px;
}



/*===ページ共通===*/

/*パンくず*/
.breadcrumb {display: flex; margin:0 0 3rem 0}
.breadcrumb li a:after{
	content:">";
	display: inline-block;
	margin:0 1rem;
}

/*見出し*/
#page #top_img{margin:0 0 1rem 0;}
#page #top_img h1{
	position: absolute;
	bottom:18px;
	left:0;
	width: 100%;
	font-size:2rem;
	padding: 2rem 0;
	text-align: center;
	background:rgba(88,121,141,0.5);
	color:#fff;
}

#page-content .sec h2{
	font-size:1.3rem;
	padding:.8rem 0 .8rem 1rem;
	border-left:solid 12px rgb(31,112,189);
	font-weight:700;
	margin:0 0 3rem 0
}
#page-content .sec h3{
	font-size:1.35rem;
	font-weight: 700;
	color:#fff;
	background:rgb(31,112,189);
	padding: 1rem 1rem 1rem 2rem;
	margin:0 0 3rem 0;
}
#page-content .sec h4{
	font-size:1.2rem;
	font-weight: 700;
	color:rgb(27,20,100);
	border:solid 2px rgb(31,112,189);
	padding: .5rem 0;
	margin:0 0 2rem 0;
}
#page-content .sec p{font-size:18px; line-height:2rem; margin:0 0 1.5rem 0;}

#page-content #sec01 h2{border-left:none;padding: 0;font-size:2rem;}
#page-content #sec01 p{font-size:18px; line-height:2rem;}
#page-content .sec{max-width:1100px; margin:0 auto 6rem;}

#page-content .sec .txt-box{margin:0 auto 4rem;}
#page-content .sec .name{text-align:right;}


/*テーブル内のマージン調整*/
#page-content .sec table p,
#page-content .sec table .list01,
#page-content .sec table .list01 li,
#page-content .sec table .in-list ,
#page-content .sec table .col2 li{margin:0;}
#page-content .sec table .in-list li{margin:0 1rem 0 0;}

/*--br--*/
	.tb{
		display:none;
	}
	.sp{
		display:none;
	}
	.pc{
		display:block;
	}

/*===ページ別===*/


/*事業紹介*/
#page-content .flow-list li{margin:0 0 2rem 0;}
#page-content .business2-list h4{
	text-align: center;
}
/*設備紹介*/
#page-content .tbl_faci {
	border-left:solid 1px #ddefff;
	border-right:solid 1px #ddefff;
}
#page-content .tbl_faci thead{
	background:#ddefff;
}
#page-content .tbl_faci th,
#page-content .tbl_faci td{
	border-bottom:solid 1px #ddefff;
	font-size:18px;
}
#page-content .tbl_faci td:last-child{min-width:3rem;text-align:center;}

#main .factory-box .col2>li:nth-child(1){max-width:450px; flex:1;}
#main .factory-box .col2>li:nth-child(2){flex:1;}


#main .factory-box .col4>li,
#main .factory-box .col2>li.col-h>.fac-item>li{
	position:relative;
}
#main .factory-box .col4>li p,
#main .factory-box .col2>li.col-h>.fac-item>li p{
	font-size:18px;
	padding:8px 0;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	color:#fff;
	background:rgba(0,0,0,0.5);
	text-align:center;
	margin:0;
}
#main .factory-box .col2>li.col-h>.fac-item>li p{font-size:14px;}
#main .factory-box .col2>li.col-h{
	display:flex;
	flex-wrap:wrap;
	flex-direction: column;
	flex-flow: column-reverse;
}
#main .factory-box .col2>li.col-h>.fac-item {
	display:flex;
	flex-wrap:wrap;
}


#main .factory-box .col2>li.col-h>.fac-item li{width:calc((100% - 30px) / 2); margin:0 30px 30px 0;}
#main .factory-box .col2>li.col-h>.fac-item li:nth-child(2n){margin:0 0 30px 0;}


/*品質管理*/
#main .quality-box{
	max-width:1000px;
	margin:0 auto 4rem;
}
#main .quality-box .col2>li{
	text-align:center;
}

/*企業紹介*/
#com01 .item01 figcaption{font-size:20px; margin:0 0 1rem 0;}
#com01 .item02 figcaption{font-size:18px; margin:1rem 0; text-align:center;}
.tbl-cjk{list-style-type:cjk-ideographic;margin:0 0 3rem 0;}
.tbl-cjk li{font-size:1.15rem;margin:0 0 .5rem 1.5rem; line-height:1.5rem;}
#com01 .col2 .item01{flex:1;}
#com01 .col2 .item02{width:45%;max-width:500px; margin:0 0 0 20px;}

#com02 .col2 .item01{flex:1;}
#com02 .col2 .item02{max-width:265px; margin:0 50px 0 80px;}
#com02 .col2 .item03-2{max-width:550px; margin:0 50px 0 80px;}

#com03 .tbl100,#com04 .tbl100 {max-width:1000px;}

#com03 .tbl100 th,
#com03 .tbl100 td,
#com04 .tbl100 th,
#com04 .tbl100 td{
	border-bottom:dotted 1px #666;
	text-align:left;
	vertical-align:top;
}
#com03 .tbl100 th,
#com04 .tbl100 th{
	width:200px;
}
/*読点用*/
ul.touten li:after{content:"、";}
ul.touten li:last-child:after{content:"";}
#page-content #com05 p{font-size:1rem;}
#com05 .col2{justify-content:space-between;}
#com05 .col2 .item{
	width:calc((100% - 50px) /2);
	max-width:460px;
	margin:0 50px 2rem 0;
	display:flex;
	flex-direction: column;
}
#com05 .col2 .item:nth-child(2n){margin:0 0 2rem 0;}
#com05 .col2 .item .mapbox{
	margin-top:auto;
}

/*求人情報*/
#page-content #rec01{
	max-width:1100px;
}
#page-content #rec01 h2{text-align:center; border-left:none;}
#rec02 .tbl100{max-width:1000px; 	border-top:dotted 1px #666; margin:0 auto 4rem;}
#rec02 .tbl100 th,
#rec02 .tbl100 td{
	border-bottom:dotted 1px #666;
	text-align:left;
	vertical-align:top;
}
#rec02 .tbl100 th{
	width:200px;
}
#rec02 caption{
	font-size:20px;
	text-align:left;
	margin:0 0 1.5rem 0;
}
#rec02 caption:before{
	content:"■";
	font-size:28px;
	margin:0 1rem 0 0;
	display:inline-block;
}

#rec03 .col2 li{
	width:calc((100% - 158px) /2);
}
#rec03 .voice-list li{
	background:#fafafa;
	border:dashed 2px #969696;
	padding:30px;
	border-radius:25px;
}
#rec03 .voice-list li::after {content: " ";display: block; clear: both;}
#rec03 .voice-list li dt,
#rec03 .voice-list li dd{font-size:1.1rem; line-height:1.5rem;}
#rec03 .voice-list li dt{margin:0 0 1rem 0;color:#0000d4;}
#rec03 .voice-list li dd{margin:0 0 2rem 0; padding:0 0 0 .5rem;}


/*プライバシーポリシー*/
#page-content #privacy.sec h3{
	background:none;
	padding:0;
	color:#000;
	margin:4rem 0 1rem 0;
}

#privacy ul.list-pri li{font-size:1.1rem; margin:0 0 1rem 0;}
#privacy ul.list-pri li:before{
	content:"・";
	display:inline-block;
	margin:0 5px 0 0;
}
/*SDGs*/
#page-content #sdgs.sec h3{
	background:none;
	padding:0;
	color:#000;
	margin:4rem 0 1rem 0;
}

#sdgs ul.list-pri li{font-size:1.1rem; margin:0 0 1rem 0;}
#sdgs ul.list-pri li:before{
	content:"・";
	display:inline-block;
	margin:0 5px 0 0;
}
#sdgs .item01 figcaption{font-size:20px; margin:0 0 1rem 0;}
#sdgs .item02 figcaption{font-size:18px; margin:1rem 0; text-align:center;}
.tbl-cjk{list-style-type:cjk-ideographic;margin:0 0 3rem 0;}
.tbl-cjk li{font-size:1.15rem;margin:0 0 .5rem 1.5rem; line-height:1.5rem;}
#sdgs .col2 .item01{flex:1;}
#sdgs .col2 .item02{
	width:55%;
	max-width:600px;
	margin:0 0 0 20px;
	display: inline;
	position: relative;
}
	
/*===幅調整===*/
@media screen and (max-width:1160px){
#h-inner,
.h_nav,
#f-inner,
#main{width:96%;}
#top_img .catchcopy .box{width:calc(100% - 40px); padding:0 20px;}

#page #top_img{height:250px; position:relative; overflow: hidden;}
#page #top_img #parent:before {
  content: "";
  display: block;
  padding-top: 75%;
}
#page #top_img img{
	 position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
	max-width:unset;
}

}
@media screen and (max-width:1060px){
	#h_logo-wrap a {font-size:32px;}
	#h_logo-wrap a img{width:200px;}
	.sec-setsubi h2,
	.sec-recruit h2,
	.sec-sdgs h2,
	.sec-pbc h2{
	font-size:38px;
	padding-left:15px;
	}
	#page #top_img h1{font-size:1.8rem; padding:1.6rem 0;}
}

@media screen and (max-width:960px){
	#h_toiawase p{font-size:14px;}
	.sec-setsubi ul{width:500px;}
	#sec-info .item-img{margin:0 0 0 25px;}
	#page-content .tbl_faci th,#page-content .tbl_faci td{font-size:15px;}
	/*--br--*/
	.tb{
		display:block;
	}
	.sp{
		display:none;
	}
	.pc{
		display:none;
	}

}

/* 追加20201120 */
.error_blank{color:#ff0000; display: block;}
.optional{display: none !important;}
/*お問い合わせ*/
#form-wrap .dl100{
display: flex;
display:-webkit-flex;
flex-wrap:wrap;
-webkit-flex-wrap:wrap;
}
#form-wrap .dl100{border-top:solid 1px #ccc; margin:0 auto 2rem;}
#form-wrap .dl100 dt,
#form-wrap .dl100 dd{
	border-bottom:solid 1px #ccc;
	line-height:1.85rem;
}
#form-wrap .dl100 dt{
	width:27%;
	padding:.5rem .5rem .5rem .5rem;
	box-sizing: border-box;
}
#form-wrap .dl100 dt.opt{
	padding:.5rem .5rem .5rem 7rem;
}
#form-wrap .dl100 dt span{
	min-width:2rem;
	padding:.5rem 2rem;
	margin:0 .5rem 0 0;
	color:#fff;
	background:rgb(121,166,255);
}
#form-wrap .dl100 dd{
	padding:0.5rem;
	width:71%;
}
#form-wrap .dl100 dd input,
#form-wrap .dl100 dd textarea{
	box-sizing: border-box;
	border:solid 1px #ccc;
	width:100%;
	padding:5px;
	font-size:1.1rem;
}
#form-wrap .sousin{text-align:center;}
#form-wrap .sousin input[type="reset"],
#form-wrap .sousin input[type="button"],
#form-wrap .sousin input[type="submit"]{ 
	cursor:pointer;
	border:solid 1px #ccc;
	padding:.5rem 2rem;
	margin:0 1rem 1rem 0;
	font-size:1.1rem;
	background:#fff;
}
#form-wrap .sousin input[type="reset"]:hover{
	background:#f8f8f8;
}
#form-wrap .sousin input[type="button"]:hover,
#form-wrap .sousin input[type="submit"]:hover{
	background:rgb(121,166,255);
	color:#fff;
}
@media screen and (max-width:960px){
#form-wrap .dl100 dt{
	width:31%;
	padding:.5rem .5rem .5rem .5rem;
	box-sizing: border-box;
}
#form-wrap .dl100 dd{
	padding:0.5rem;
	width:66%;
}

}

@media screen and (max-width:767px){
#form-wrap .dl100 dt,
#form-wrap .dl100 dd{
	width:100%;
}
}
#page #wrapper #content #main #page-content #rec01 p {
	display: block;
	width: 65%;
	margin-right: auto;
	margin-left: auto;
}
#page-content #rec01 .orange {
	font-size: 1.3em;
	font-weight: bold;
	color: #F90 !important;
	text-align: center;
	background-color:#FFFFFF !important;
	line-height: 1.5em;
}
/*--吹き出し--*/
.balloon1 {
	position: relative;
	display: inline-block;
	margin: 0 0 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	color: #555;
	font-size: 16px;
	background-color: #FFCC99;
	border-radius: 15px;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FFCC99;
}

.balloon1 p {
	margin:0 !important;
	padding:0;
  font-weight:bold;
  color:#003366;
}
b {
	font-weight:bold;
}#page #wrapper #content #main #page-content #rec02 .tbl100.sp-tbl tbody tr td ul .rec-list {
	list-style-position: outside;
	list-style-type: disc !important;
}
/*---スライドショー--*/

.slide {
  position: relative;
  width: 100%;
  padding-top: 32%;
  overflow: hidden;
  background-color: #c6c6c6;
}

@keyframes slideshow {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  28% {
    opacity: 1
  }

  38% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

.slide img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  opacity: 0;
  animation: slideshow 32s linear infinite;
}
.slide img:nth-child(3) {
  animation-delay: 8s;
}
.slide img:nth-child(2) {
  animation-delay: 16s;
}

.slide img:last-child {
  animation-delay: 24s;
}
#page #wrapper #content #main #page-content #rec02 .orange {
	font-size: 1.5em;
	color: #F90;
	text-align: center;
	background-color: #FFF;
	line-height: 1.5em;
}
.rec_box{
	display: block;
	width:90%;
	margin:5%;
}
.rec_box .box01 {
	width: 55%;
	margin: 5% auto;
	float: left;
}
.rec_box .box02 {
	display: block;
	margin: 2%;
	width: 35%;
	float: left;
}

.rec_box .box02 img {
	height: auto;
	width: 100%;
}

#page #wrapper #content #main #page-content #rec02 .center_b {
	margin-bottom: 50px;
	padding-bottom: 10px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: dotted;
	border-top-color: #CCC;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
	border-left-color: #CCC;
	border-left-style: none;
	text-align: center;
}

#photo img {
	float: left;
	height: auto;
	width: 33%;
	margin-top: 1.8em;
	margin-bottom: 5.0em;
}

.justify{
	text-align-last: justify;       /* Chrome・Firefox用 */
	text-justify: inter-ideograph;  /* IE・Edge用 */
	width: 120px;
	font-size: 1.1rem !important;
}
#page #wrapper #content #main #page-content #rec02 #photo {
	display: block;
}
.right {
	text-align: right;
}
#sdgs .col2 .item02 {
	/*コレ*/display: flex;
	/*コレ*/align-items: flex-end;
}
#sdgs .col2 .item02 img{
    float: left;
    width: 19%;
    margin: 1%;
}
#sdgs .col2 .item01 figure .tbl-cjk li {
	list-style-position: outside;
	list-style-type: disc;
}
.qr{
	padding: 20px;
}
.br-pc {display: none; }
@media screen and (min-width: 1000px){
.br-pc {display: block; }
}
@media screen and (max-width:960px){
#com02 .col2 .item03-2{
	max-width:100%;
	margin:0 50px 0 80px;
	}
#com02 .col2 .item03-2 img{
	width: 80%;
	margin: 0 auto;
}
}
@media screen and (max-width:600px){
#com02 .col2 .item03-2{
	max-width:100%;
	margin:0 10px;
	}
#com02 .col2 .item03-2 img{
	width: 100%;
	margin: 0 auto;
}
}

#f01.sec,
#f02.sec {
	padding-top: 200px;
	margin-top: -200px;
}
.blue a{
	color: #66A1D7;
}
/*--情報セキュリティ方針--*/
#security ul.list-pri li{font-size:1.1rem; margin:0 0 1rem 0;}
#security ul.list-pri li:before{
	content:"・";
	display:inline-block;
	margin:0 5px 0 0;
}