@charset "Shift-JIS";

html { /* IE6のCSSバグによるギルダーレビンのちらつき防止 */
filter: expression(document.execCommand("BackgroundImageCache", false, true));
}

.cf:before,
.cf:after {
	content:"";
	display:table;
}

.cf:after {
	clear:both;
}

.cf {
	zoom:1;
}

/*----------------------------------------------------------------------------*/
/*----- 全体構造 -------------------------------------------------------------*/
body {
	margin:0px;
	padding:0px;
	color:#333333;
	background-image:url(../images/bg.gif);
	font-family:-apple-system,"Lucida Grande","Helvetica Neue","メイリオ", meiryo,"Hiragino Kaku Gothic ProN", sans-serif;
	font-size:0.75em;
	line-height:1.4em;
}

#mainContents p {
	margin:0 0 25px;
	line-height:1.75;
}

#mainContents ol {
	margin:0 0 39px;
}

#mainContents li {
	line-height:1.75;
}

/*----------------------------------------------------------------------------*/
/*----- ヘッダー部 -----------------------------------------------------------*/
#headArea {
	width:100%;
	height:111px;
	margin:0px;
	padding:0px;
	background:#005DB1;
}

.pageLeadBox {
	background:#000;
	border-bottom:1px solid #FFFFFF;
}

.pageLead {
	width:810px;
	margin:0px auto;
	line-height:1;
	padding:9px 0;
	color:#fff;
}

#headContents {
	width:810px;
	margin:0px auto 1px;
	padding:0px;
	border-left:1px solid #FFFFFF;
	border-right:1px solid #FFFFFF;
}

#headContents > h1 {
	background:url(../images/headbg.png) repeat-x;
	height:78px;
	float:left;
	margin-top:1px;
	margin-left:1px;
	margin-right:1px;
	padding-left:7px;
	width:565px;
}

#headContents > h1 a {
	border-left:1px solid #005DB1;
	display:inline-block;
	padding:20px 22px 23px;
}

.headTelBox {
	background:url(../images/headbg.png) repeat-x;
	display:block;
	float:right;
	margin-top:1px;
	margin-right:1px;
	padding:16px 17px 18px;
}

/*----------------------------------------------------------------------------*/
/*----- メイン構造 -----------------------------------------------------------*/
#container {
	width:810px;
	margin:0px auto;
	padding:0px;
	background-color:#FFFFFF;
	border-left:1px solid #5681AC;
	border-right:1px solid #5681AC;
	background-image:url(../images/leftMenuBG.gif);
	background-repeat:repeat-y;
}

#mainContents{
	float:right;
	width:600px;
	margin:0px;
	padding:0px 10px 0px 0px;
	text-align:left;
}



/*----------------------------------------------------------------------------*/
/*----- 左メニュー -----------------------------------------------------------*/
#leftMenu{
	float:left;
	width:184px;
	margin:0px;
	padding:0px;
	text-align:left;
}

#leftMenuBox{
	width:182px;
	margin:20px 0px 0px 4px;
	padding:0px;
	background-image:url(../images/leftMenuButtonBG.gif);
	background-repeat:repeat-y;
	border:1px solid #8FABE4;
}
#leftMenuBox ul{
	margin:0px;
	padding:6px 0px;
	list-style-type: none;
}
#leftMenuBox li{
	margin:3px 0px 0px 4px;
	padding:0px;
}

#leftMenuBox a{
	display:block;
	width:148px;
	height:27px;
	margin:0px;
	padding:10px 0px 0px 26px;
	background-image:url(../images/leftMenuButton.png);
	color:#000099;
	text-decoration:none;
}
#leftMenuBox a:hover   { background-position: 0px -37px; }


/*----------------------------------------------------------------------------*/
/*----- フッター部 -----------------------------------------------------------*/
#footerInfo {
	background:#005DB1;
	color:#fff;
	padding-top:10px;
	padding-bottom:21px;
	line-height:1.625;
}

#footerInfo p {
	margin:0;
	display:inline-block;
	padding-right:0.25em;
}

#footerInfo01 {
	width:810px;
	margin:0px auto;
}

#footerInfo02 {
	width:810px;
	margin:0px auto;
}

.compName {
	font-size:16px;
}

.compNotes,
.compNotesLink {
	font-size:14px;
	color:#FFEEBF;
}

.compNotesLink a,
.compNotesLink a:link,
.compNotesLink a:visited {
	color:#FFEEBF;
}

.compNotesLink a:hover {
	color:#FFFFDF;
}

.place {
	font-size:14px;
}

.tel,
.fax {
	font-size:14px;
}

.telNumber {
	font-size:18px;
}

#copyright {
	margin:0;
	font-size:10px;
	line-height:1;
	padding-top:19px;
	padding-bottom:94px;
	background:#000;
	text-align:center;
	color:#ccc;
}

/*----------------------------------------------------------------------------*/
/*----- ブロック構造 ---------------------------------------------------------*/
.box600Line{
	clear:both;
	width:584px;
	margin-bottom:12px;
	padding:8px;
	border:1px solid #B6C8ED;
}
.box580{
	width:580px;
	margin:10px 10px 40px;
	padding:0px;
}
.box580Line{
	width:538px;
	margin:0px auto;
	padding:20px;
	border:1px solid #003399;
}
.box500{
	width:500px;
	margin:10px auto;
	padding:0px;
	text-align:left;
}

.box295Left{
	clear:both;
	float:left;
	width:279px;
	margin-bottom:12px;
	padding:8px;
	border:1px solid #B6C8ED;
}
.box295Right{
	float:right;
	width:279px;
	margin-bottom:12px;
	padding:8px;
	border:1px solid #B6C8ED;
}

.box295Right{
	float:right;
	width:279px;
	margin-bottom:12px;
	padding:8px;
	border:1px solid #B6C8ED;
}

.row:before,
.row:after {
	content:"";
	display:table;
}

.row:after {
	clear:both;
}

.row {
	zoom:1;
}

#mainContents .box3_4 {
	width:280px;
	padding-bottom:20px;
	margin-bottom:0;
}

#mainContents .box4_3 {
	width:280px;
	padding-bottom:20px;
	margin-bottom:0;
}

#mainContents .box5_5 {
	width:280px;
	padding-bottom:20px;
	margin-bottom:0;
}

.fleft {
	float:left;
}

.fright {
	float:right;
}

#mainContents .box3c01 {
	width: 202px;
}

#mainContents .box3c02 {
	width: 358px;
}

#mainContents .box3c02 img {
	padding-bottom: 10px;
}




.topMainTitle {
	width:100%;
	display:table;
	margin-bottom: 18px;
}

h3.topMainTitleHeadline {
	display:table-cell;
	width:28.33333333333333%;
	height:auto;
	overflow:auto;
	margin:0;
	padding:16px 15px 3px;
	background:none #005DB1;
	font-size:16px;
	font-weight:bold;
	line-height:1.4;
	color:#fff;
	vertical-align:top;
}

h3.topMainTitleHeadline:before {
	content:"";
	display:none;
}

.topMainTitleBody {
	display:table-cell;
	width:71.66666666666666%;
	font-size:14px;
	line-height:1.8;
	color:#000;
	padding:13px 16px 12px;
	background:#D9E7F2;
	vertical-align:top;
}

.topMainContent {
	padding-bottom:13px;
}

.boxTop2_1 {
	width:285px;
}

.boxTop2_1_left {
	float:left;
}

.boxTop2_1_right {
	float:right;
}


h4 {
	border-bottom:1px solid #005DB1;
	color:#005DB1;
	font-weight:bold;
	font-size:18px;
	padding:6px 16px;
	position:relative;
}

h4:before {
	content:"";
	display:block;
	position:absolute;
	top:2px;
	bottom:2px;
	left:0;
	right:0;
	border-left:8px solid #005DB1;
}


h4.contentLink {
	border-bottom:none;
	padding:0;
	position:relative;
	margin:0 0 9px;
}

h4.contentLink:before {
	display:none;
}

h4.contentLink a {
	text-decoration:none;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	opacity:1.0;
	-webkit-transition:all 0.2s linear;
	-moz-transition:all 0.2s linear;
	-ms-transition:all 0.2s linear;
	-o-transition:all 0.2s linear;
	transition:all 0.2s linear;
}

h4.contentLink a:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	opacity:0.7;
}

.topLinkTitle {
	display:block;
	position:absolute;
	left:0;
	right:0;
	bottom:-1px;
	font-size:14px;
	font-weight:bold;
	font-weight:900;
	color:#111;
	margin:0;
	padding:13px 15px 14px;
	background-color:#fff;
	background-image:url(../images/right_arrow.png);
	background-repeat:no-repeat;
	background-position:right 15px center;
	background:rgba(255,255,255,0.75) url(../images/right_arrow.png) no-repeat right 15px center;
}

h4.contentLink a img {
	width:100%;
}

.footerBnr {
	position:relative;
	width:100%;
	height:140px;
	background:url(../images/footer_bnr_bg.png) no-repeat center center;
	margin-bottom:13px;
}

#footGuide {
	font-size:14px;
	line-height:1.5;
	color:#666;
}

#footGuide p {
	margin:0 0 6px;
}

#footGuide p a {
	color:#666;
	text-decoration:none;
}

#footGuide p a:hover {
	color:#aaa;
	text-decoration:underline;
}

#footGuide p {
	margin:0 0 6px;
}

h4.footerBnrTitle {
	font-size:20px;
	color:#fff;
	text-align:right;
	padding:13px 24px 6px;
	border-bottom:none;
	margin:0;
}

h4.footerBnrTitle:before {
	display:none;
}

.footerBnrBtn {
	display:block;
	width:202px;
	position:absolute;
	bottom:19px;
	right:12px;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	opacity:1.0;
	-webkit-transition:all 0.2s linear;
	-moz-transition:all 0.2s linear;
	-ms-transition:all 0.2s linear;
	-o-transition:all 0.2s linear;
	transition:all 0.2s linear;
}

.footerBnrBtn:hover {
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	opacity:0.7;
}

/*----------------------------------------------------------------------------*/
/*----- 余白制御（各タグ共通） -----------------------------------------------*/
.mgnEco{ margin:8px; text-align:right; }
.mgnL4{ margin-left:4px; }
.mgnL8{ margin-left:8px; }
.mgnL18{ margin-left:18px; }
.mgnR4{ margin-right:4px; }
.mgnR8{ margin-right:8px; }
.mgnTB0{ margin-top:0px; margin-bottom:0px; }
.mgnTB8{ margin:8px 0px; }
.mgnTB12{ margin:12px 0px; }
.mgnTB20{ margin:20px 0px; }
.mgnB8{ margin-bottom:8px; }
.mgnB12{ margin-bottom:12px; }
.mgnB19{ margin-bottom:19px; }
.mgnB39{ margin-bottom:39px; }

/*----------------------------------------------------------------------------*/
/*----- Image -----*/
img{ border-style:none; }
.imgRight{ float:right; }


/*----------------------------------------------------------------------------*/
/*----- Paragraph -----*/
p.pClear{
	clear:both;
	margin:0px;
	padding:0px;
	display:none;
}

p.pTopText{
	width:580px;
	margin:0px;
	padding:2px 10px;
	text-align:right;
	font-size:80%;
}

.pUnderBarBold{
	width:580px;
	margin:0px;
	padding:0px;
	font-size:136%;
	line-height:140%;
	color:#003399;
	font-weight:bold;
	border-bottom:3px solid #003399;
}

.pGrayBox{
	clear:both;
	width:564px;
	padding:8px;
	border:1px solid #CCCCCC;
}

.pOtoiawaseBox{
	clear:both;
	width:560px;
	padding:12px;
	border:1px solid #85A3E0;
	font-size:1.2em;
	font-weight:bold;
}

.pAnchorBox{
	width:255px;
	padding:6px 12px;
	border:1px solid #85A3E0;
	background-color:#E9EDFB;
	
}

/*----------------------------------------------------------------------------*/
/*----- Tables -----*/
table.tblType1 {
	margin:2px 0px;
	padding:0px;
	border-collapse: collapse;
	font-size:14px;
	width:100%;
	margin-bottom:19px;
}
table.tblType1 th {
	margin:0px;

	padding: 16px 20px;
	border: 1px solid #778899;
	background-color: #F9FFFF;
	font-weight: normal;
	width: 25%;
	
	white-space:nowrap;
}
table.tblType1 td {
	margin:0px;
	padding: 16px 20px;
	border: 1px solid #778899;
}


table.tblType2 {
	margin:2px 0px;
	padding:0px;
	border-collapse: collapse;
	font-size:14px;
}
table.tblType2 th {
	margin:0px;
	padding: 16px 20px;
	border: 1px solid #778899;
	background-color: #F9FFFF;
	font-weight: normal;
}
table.tblType2 td {
	margin:0px;
	padding:4px 8px;
	border: 1px solid #778899;
}


table.tblType3 {
	margin:2px 0px;
	padding:0px;
	border-collapse: collapse;
}
table.tblType3 th {
	margin:0px;
	padding:8px 8px 2px 8px;
	border-bottom:1px dotted #336699;
	font-weight:normal;
	width:1%;
	white-space:nowrap;
}
table.tblType3 td {
	margin:0px;
	padding:12px 8px 3px 8px;
	border-bottom:1px dotted #336699;
}


table.tblFAQ {
	margin:12px 0px 24px 0px;
	padding:0px;
	border-collapse: collapse;
	border-top:3px solid #336699;
	border-bottom:1px solid #8FABE4;
}
table.tblFAQ td {
	margin:0px;
	padding:5px 0px;
	border-top:1px solid #8FABE4;
	border-bottom:1px solid #8FABE4;
}



/*----------------------------------------------------------------------------*/
/*----- Fonts -----*/
/* 0.625=10px 0.75em=12px 0.875=14px */
#fontRinen,
.fontRinen {
	margin:15px;
	padding:0px;
	color:#005DB1;
	font-size:15px;
	line-height:1.5em;
}
.fontBlue{ color:#3366CC; }
.fontRed{ color:#CC0000; }
.fontOrangeBold{ color:#FF6600; font-weight:bold; }


/*----------------------------------------------------------------------------*/
/*----- Links -----*/
a:link    {
	color: #0033CC;
	text-decoration: underline;
}
a:visited {
	color: #0033CC;
	text-decoration: underline;
}
a:hover   {
	color: #FF6600;
	text-decoration: underline;
}

a.aBox{
	padding:6px 12px;
	border:1px solid #85A3E0;
	background-color:#E9EDFB;
	
}

/*----------------------------------------------------------------------------*/
/*----- 入力フォーム用 -----*/
.formShortText { width:180px; }
.formMidText { width:260px; }
.formLongText { width:380px; }


/*----------------------------------------------------------------------------*/
/*----- Heading -----*/
h1{
	width:512px;
	margin:0px;
	padding:0px;
}

h2{
	width:540px;
	padding:30px;
	margin:0 0 10px;
	background:#808080;
}

h2 > strong {
	padding: 15px 26px 13px;
	background-color:#fff;
	background-color:rgba(255,255,255,0.8);
	display:inline-block;
	font-weight:bold;
	font-size:18px;
	letter-spacing:0.25em;
}

#h2Top{
	width:600px;
	height:220px;
	padding:20px 0px 12px 0px;
	margin:0;
	background:transparent;
}

#h2Corp{ padding: 20px 30px 18px; background:url(../images/titlebgcorp.jpg) no-repeat; }
#h2Dry{ padding: 20px 30px 18px; background:url(../images/titlebgdry.jpg) no-repeat; }
#h2Sample{ padding: 20px 30px 18px; background:url(../images/titlebgsample.jpg) no-repeat; }
#h2Film{ padding: 20px 30px 18px; background:url(../images/titlebgfilm.jpg) no-repeat; }
#h2Factory{ padding: 20px 30px 18px; background:url(../images/titlebgfactory.jpg) no-repeat; }
#h2Recruit{ padding: 20px 30px 18px; background:url(../images/titlebgrecruit.jpg) no-repeat; }
#h2Otoiawase{ padding: 20px 30px 18px; background:url(../images/titlebgotoiawase.jpg) no-repeat; }
#h2countermeasure{ padding: 20px 30px 18px; background:url(../images/title_boutyu.jpg) no-repeat; }

h3 {
	background:#005DB1;
	color:#fff;
	font-weight:bold;
	font-size:18px;
	padding:16px 12px 11px;
	position:relative;
	margin:0 0 15px;
}

h3:before {
	content:"";
	display:block;
	position:absolute;
	top:2px;
	bottom:2px;
	left:0;
	right:0;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
}

h4 {
	border-bottom:1px solid #005DB1;
	color:#005DB1;
	font-weight:bold;
	font-size:18px;
	padding:6px 16px;
	position:relative;
}

h4:before {
	content:"";
	display:block;
	position:absolute;
	top:2px;
	bottom:2px;
	left:0;
	right:0;
	border-left:8px solid #005DB1;
}

.h3noBar{
	width:580px;
	overflow:visible;
	margin:0px auto;
	padding:0px;
	background:none;
}


/* #iten */
#iten {
	width:803px;
	background-color:#FFFFFF;
	border-left:1px solid #5681AC;
	border-right:1px solid #5681AC;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 20px;
	padding-left: 7px;
}
#iten p {
	font-size: 1.13em;
	line-height: 175%;
}

#iten .midashi {
	text-align: center;
	font-size: 1.56em;
	font-weight: bold;
	color: #FFFFFF;
	margin-bottom: 5px;
	width: 796px;
}
#iten .annai {
	width: 766px;
	border: 1px solid #FF6633;
	padding-right: 15px;
	padding-bottom: 5px;
	padding-left: 15px;
	margin-top: 10px;
}
	
#iten .m_top0 {
	margin-top: 0px;
}
#iten #map {
	margin-bottom: 0px;
	padding-bottom: 0px;
	border: 1px none #999999;
}
#iten .annai #map a {
	text-align: right;
	display: block;
	margin-right: 7px;
	font-size: 1.13em;
}
#iten .annai .f_size18 {
	font-size: 1.50em;
	font-weight: bold;
}
#iten .annai .map_link {
	text-align: right;
	padding-top: 0px;
	float: right;
	width: 200px;
}
#map_text .koutuu {
	float: left;
	width: 500px;
}
.clr {
	clear: both;
	margin: 0px;
	padding: 0px;
}

.notes {
	font-size:11px;
	color:#999;
	padding:10px 0 20px;
	display:inline-block;
}

.recruit_marker {
	margin:0;
	padding:0 0 19px;
}

.recruit_marker li {
	list-style:none;
	display:inline-block;
	background:#B6C8ED;
	font-size:12px;
	border:1px solid #f8f8f8;
	margin-right:0.25em;
	margin-bottom:0.25em;
	padding:3px 10px;
}


/*3S活動 */

.s_txt01 {
	padding: 0 102px;
}

.s_txt02 {
	padding: 0 122px;
}


/* 経営理念 リスト */
.c-list01 {
	display: flex;
	flex-direction: column;
	font-size: 15px;
	font-weight: bold;
	color: #005DB1;
}

.c-list01__item {
	position: relative;
}

.c-list01__item:after {
	position: absolute;
	left: 0;
	top: 3px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #005DB1;
}

/* 右揃えテキスト */
.c-paragraph01 {
	padding-right: 15px;
	font-size: 13px;
	font-weight: bold;
	text-align: right;
}

/* サイドバー ロゴ */
.p-logo01 {
	display: flex;
	flex-wrap: wrap;
	column-gap: 8px;
	row-gap: 8px;
	justify-content: center;
	align-items: flex-start;

	margin-left: 4px;
	margin-bottom: 5px;
	padding: 12px;

	width: 148px;

	background-color: #fff;
	border: 1px solid #8FABE4;
}

.p-logo01__image {
	margin: 0;
	width: calc(50% - 4px);
}

.p-logo01__image.vari01 .p-logo01__photo {
	margin-left: 4px;
	margin-right: 4px;
	width: calc(100% - 8px);
}

.p-logo01__image.vari02 {
	padding-top: 3px;
}

.p-logo01__image.vari03 .p-logo01__photo {
	margin-left: 6px;
	margin-right: 6px;
	width: calc(100% - 12px);
}

.p-logo01__image.vari04 {
	padding-top: 10px;
}

.p-logo01__photo {
	object-fit: contain;
	width: 100%;
	height: 100%;
}

/* マージン */
.u-margin-parts {
	margin-bottom: 10px;
}
.u-margin-paragraph {
	margin-bottom: 20px;
}