@charset "UTF-8";

html {
}

body, div, p,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre,
form, input, textarea,
table, th, td{  
margin:0px; 
padding:0px; 
}

ul, ol{
list-style-type: none;
}

img{
border:0px;
vertical-align:bottom;
}

table{
border-collapse:collapse;
border-spacing:0px;
width: 100%;
}

th, td {
padding: 10px;
border: 1px solid #999999;
vertical-align: top;
}

th {
background-color: #eee;
}


/* common
------------------------------------*/

a:link { color: #003399; }
a:visited { color: #003399; }
a:hover { color: #FF3B37; }
a:active { color: #FF3B37; }

body{
background: url(../img/bg01.jpg) repeat-x left top;
font-size: 80%;
text-align: center;
line-height: 1;
color: #221E1F;
background-color: #fff;
font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
}

#header {
width: 960px;
margin: 0px auto;
}

#header h1 {
float: left;
width: 367px;
padding: 3px 0 0;
}

#header .columnRight {
float: right;
width: 330px;
text-align: right;
}

#header .columnRight ul li {
float: left;
}

#header .columnRight > ul > li:nth-child(1) {
	pointer-events: none;
}

#gNavi {
text-align: left;
width: 960px;
margin: 0 auto;
}

#gNavi ul li {
display: inline;
float: left;
}

#container {
width: 960px;
margin: 12px auto 0;
text-align: left;
}

h2 {
margin: 0 0 30px;
}

#contents {
}

#main {
width: 650px;
float: left;
}

#main h3 {
margin: 0 0 30px;
}

.cassette {
padding: 0 20px;
margin: 0 0 30px
}

.cassetteIn {
border-bottom: #CCCCCC 1px solid;
}

#main h4 {
background: url(../img/hl_bg01.gif) no-repeat left top;
padding: 7px 0 0 15px;
height: 53px;
color: #043D88;
font-size: 160%;
}

#main h5 {
background: url(../img/icon01.gif) no-repeat left 18px;
padding: 15px 0 5px 15px;
color: #043D88;
font-size: 130%;
font-weight: normal;
border-top: #CCCCCC 1px dotted;
}

#main h5.first {
border: none;
background: url(../img/icon01.gif) no-repeat left 3px;
padding: 0 0 5px 15px;
}

#main .textBox {
padding: 0 0 0 15px;
}

#main .cassette p,
#main .cassette ul,
#main .cassette dl	,
#main .cassette table {
margin: 0 0 15px;
line-height: 1.5;
text-align: left;
}

#menu {
width: 270px;
float: right;
}

#menu h2 {
margin: 0;
}

#menu ul,
#menu p {
margin: 0 0 30px;
}

#footer {
background: url(../img/footer_bg01.gif) repeat-x left top;
height: 50px;
text-align: right;
}

#pankuzu {
padding: 0 0 20px;
}

.pageTopLink {
text-align: right;
}

#main .cassette .pageTopLink {
text-align: right;
padding: 10px 0 0;
margin: 0;
}

#main .cassette .pageTopLink img {
vertical-align: top;
}

.columnRight {
display: block;
float: right;
}

.columnLeft {
display: block;
float: left;
}

.textRed {
color: #CC0000;
}


/* aLayout
------------------------------------*/

.aLayout {
}

.aLayout #main .cassette {
}


/* indexLayout
/* newsLayout
------------------------------------*/

.indexLayout #contents {
margin: 13px 0;
}

.indexLayout #main {
	width: 100%;
}

.indexLayout #main h3,
.newsLayout #main h3 {
margin: 0 0 20px;
}
/*.indexLayout #main h3 {
	border-bottom: 1px dotted #CCCCCC;
}*/
.indexLayout #main .cassette,
.newsLayout #main .cassette {
padding: 0;
}
.indexLayout #main .cassette {
	display: flex;
	flex-wrap: wrap;
}
.indexLayout #main h3 {
	margin-bottom: 0;
}
.indexLayout #main .cassette .cassetteNews {
	width: 960px;
	padding-top: 20px;
	border-top: 1px dotted #CCC;
}
.indexLayout #main .cassette .cassetteBnr {
	width: 290px;
	margin-left: 20px;
}
.indexLayout #main .cassette .cassetteBnr img {
	width: 100%;
}

.indexLayout #main ul {
margin: 0;
}

.indexLayout #main ul li,
.newsLayout #main ul li {
background-image: url(../img/icon02.gif);
background-position: 0px 4px;
background-repeat: no-repeat;
line-height: 1;
font-size: 120%;
border-bottom: 1px dotted #CCCCCC;
padding: 0 20px 20px;
margin: 0 0 20px;
}

.indexLayout #main .cassette ul li span.columnLeft,
.newsLayout #main .cassette ul li span.columnLeft {
float: left;
/*width: 160px;*/
width: 110px;
}

.indexLayout #main .cassette ul li span.columnRight {
float: right;
width: 800px;
/*width: 500px;*/
}

.newsLayout #main .cassette ul li span.columnRight {
float: right;
width: 450px;
}

.indexLayout #main p {
float: right;
line-height: 0;
}

.indexLayout #menu {
	display: none;
}

.indexLayout #menu p {
margin: 0 0 10px;
}

/* newsLayout
------------------------------------*/

.newsLayout #main .entry-title span.columnLeft {
float: left;
width: 460px;
}

.newsLayout #main .entry-title span.columnRight {
float: right;
width: 130px;
font-size: 80%;
color: #999999;
padding: 3px 0 0;
font-weight: normal;
}

.newsLayout #main .newsSingle {
padding: 0 20px;
}

/* companyIndexLayout
------------------------------------*/

.companyIndexLayout #main {
	width: 100%;
}
.companyIndexLayout #main h4 {
	background: url(../img/hl_bg01-L.gif) no-repeat left top;
}
.companyIndexLayout #menu {
	display: none;
}

.companyIndexLayout #main .cassette .columnLeft {
width: 580px;
}

.companyIndexLayout #main .cassette .columnLeft table {
margin: 0;
}

.companyIndexLayout #main .cassette .columnRight {
width: 295px;
}

.companyIndexLayout #main .cassette table,
.companyIndexLayout #main .cassette table tr,
.companyIndexLayout #main .cassette table th,
.companyIndexLayout #main .cassette table td  {
border: none;
}

.companyIndexLayout #main .cassette table tr {
border-bottom: 1px dotted #CCCCCC;
}

.companyIndexLayout #main .cassette table th {
width: 80px;
color: #043D87;
background-color: #FFF;
}

.companyIndexLayout #main .cassette .cassetteIn h5 {
border: none;
}

.companyIndexLayout #main .cassette .last {
border: none;
}


/* popupLayout
------------------------------------*/

.popupLayout {
background: url(../../company/img/popup_headerbg.jpg) repeat-x left top;
}

.popupLayout #header {
width: 540px;
height: 85px;
}

.popupLayout #header h1 {
padding: 10px 20px 0;
float: none;
width: auto;
text-align: left;
}

.popupLayout #header h1 img {
	width: 240px;
}

.popupLayout div {
margin: 0 auto;
}

.popupLayout .infobox {
width: 285px;
}

.popupLayout .infobox .columnLeft {
width: 85px;
}

.popupLayout .infobox .columnRight {
width: 180px;
text-align: left;
line-height: 1.6;
}

.popupLayout .infobox .columnRight h2 {
font-size: 110%;
font-weight: bold;
margin: 0;
}

.popupLayout p.btn {
margin: 20px 0;
}

.popupLayout p.btn img {
vertical-align: top;
}

.popupLayout #footer {
text-align: center;
line-height: 50px;
height: 50px;
}


/* companyOfficeLayout
------------------------------------*/

.companyOfficeLayout {
}

.companyOfficeLayout #main {
	width: 100%;
}
.companyOfficeLayout #main h4 {
	background: url(../img/hl_bg01-L.gif) no-repeat left top;
}
.companyOfficeLayout #menu {
	display: none;
}

.companyOfficeLayout #main .cassette .columnLeft {
width: 205px;
}

.companyOfficeLayout #main .cassette .columnRight {
width: 385px;
}

.companyOfficeLayout #main .cassette .columnRight .columnLeft {
width: 185px;
}

.companyOfficeLayout #main .cassette .columnRight .columnRight {
width: 185px;
}

.companyOfficeLayout #main .cassette .columnRight .columnRight div {
background: url(../../company/img/office_bg01.jpg) no-repeat left top;
padding: 5px 10px 10px 5px;
margin: 0 0 10px;
}

.companyOfficeLayout #main .cassette .columnRight .columnRight p {
text-align: right;
padding: 0 5px 0 0;
margin: 0 0 30px;
}

.companyOfficeLayout #main .cassette .columnRight .columnRight p a img {
vertical-align: top;
}


/* productLayout
------------------------------------*/

.productLayout #main {
	width: 100%;
}
.productLayout #main h4 {
	background: url(../img/hl_bg01-L.gif) no-repeat left top;
}
.productLayout #menu {
	display: none;
}

.productLayout #main .cassette .columnLeft {
width: 330px;
}

.productLayout #main .cassette .columnRight {
width: 200px;
}

.productLayout #main .cassette ul {
padding: 0 0 0 20px;
}

.productLayout #main .cassette ul li {
list-style-type: disc;
}

.productLayout #main .cassette .cassetteIn {
border: none;
}

.productLayout #main .cassette .cassetteIn .columnLeft {
width: 445px;
}

.productLayout #main .cassette .cassetteIn .columnRight {
width: 445px;
}

.productLayout #main .cassette .cassetteIn .columnLeft .columnLeft,
.productLayout #main .cassette .cassetteIn .columnLeft .columnRight,
.productLayout #main .cassette .cassetteIn .columnRight .columnLeft,
.productLayout #main .cassette .cassetteIn .columnRight .columnRight {
width: 140px;
}

.productLayout #main .cassette .cassetteIn .columnLeft .columnLeft,
.productLayout #main .cassette .cassetteIn .columnRight .columnLeft {
	width: 240px;
}

.productLayout .cassetteIn img {
	margin: 0 auto;
	display: block;
}

/* sitemapLayout
------------------------------------*/

.sitemapLayout {
}

.sitemapLayout #main .cassette .columnLeft,
.sitemapLayout #main .cassette .columnRight {
width: 295px
}

.sitemapLayout #main .cassette li {
background: url(../img/icon01.gif) no-repeat left 7px;
padding: 0 0 10px 15px;
font-size: 110%;
}

.sitemapLayout #main .cassette li ul {
margin: 0 0 0 15px;
}

.sitemapLayout #main .cassette li ul li {
list-style: disc;
background: none;
font-size: 100%;
padding: 0;
}

.sitemapLayout #main .cassette .cassetteIn {
border: none;
}


/* csrEffortsLayout
------------------------------------*/

.csrEffortsLayout {
}

.csrEffortsLayout #main .cassette p {
margin: 0 0 30px;
}

.csrEffortsLayout #main .cassette h4 {
background: url(../img/icon01.gif) no-repeat left 8px;
padding: 0 0 0 15px;
color: #043D88;
font-size: 120%;
font-weight: normal;
height: auto;
}

.csrEffortsLayout #main .cassette li {
float: left;
margin: 0 15px 15px 0;
}

.csrEffortsLayout #main .cassette li.last {
margin: 0;
}

.csrEffortsLayout #main .cassette li p {
margin: 0;
}

.csrEffortsLayout #main .cassette div.last {
border: none;
}


/* csrContributionLayout
------------------------------------*/

.csrContributionLayout #main .cassette p {
margin: 0 0 30px;
}

.csrContributionLayout #main .cassette .columnLeft {
width: 361px;
}

.csrContributionLayout #main .cassette .columnRight {
width: 219px;
}

.csrContributionLayout #main .cassette .last {
border: none;
}


/* csrIndexLayout
------------------------------------*/

.csrIndexLayout {
}

.csrIndexLayout #main .cassette .columnLeft {
width: 375px;
}

.csrIndexLayout #main .cassette .columnRight {
width: 200px;
}



/* recruitInfoLayout
------------------------------------*/

.recruitInfoLayout #main .cassetteIn {
border: none;
}

.recruitInfoLayout #main .cassette table,
.recruitInfoLayout #main .cassette table tr,
.recruitInfoLayout #main .cassette table th,
.recruitInfoLayout #main .cassette table td  {
border: none;
}

.recruitInfoLayout #main .cassette table tr {
border-bottom: 1px dotted #CCCCCC;
}

.recruitInfoLayout #main .cassette table th {
width: 100px;
color: #043D87;
background-color: #FFF;
}

.recruitInfoLayout #main .cassette table td ul {
list-style-type: disc;
padding: 0 0 0 15px;
margin: 0;
}

.recruitInfoLayout #main .cassette #bosyu {
background: #CC0000;
font-weight: bold;
font-size: 120%;
color: #FFFFFF;
padding: 5px;
text-align: center;
}


/* recruitJobLayout
------------------------------------*/

.recruitJobLayout #main .cassette .cassetteIn {
border: none;
}

.recruitJobLayout #main .cassette .cassetteIn .columnLeft {
width: 390px;
}

.recruitJobLayout #main .cassette .cassetteIn .columnRight {
width: 200px;
}

.recruitJobLayout #main .cassette .cassetteIn p {
margin: 0 0 30px;
}


/* recruitTrainingLayout
------------------------------------*/

.recruitTrainingLayout #main .cassette .cassetteIn {
border: none;
}

.recruitTrainingLayout #main .cassette .cassetteIn .columnLeft {
width: 375px;
}

.recruitTrainingLayout #main .cassette .cassetteIn .columnRight {
width: 200px;
}


/* recruitMessageLayout
------------------------------------*/

.recruitMessageLayout #main .cassette ul {
margin: 0 0 30px;
}

.recruitMessageLayout #main .cassette ul li {
float: left;
margin: 0 20px 0 0;
}

.recruitMessageLayout #main .cassette ul li.last {
margin: 0;
}

.recruitMessageLayout #main .cassette .last {
border: none;
}


/* recruitIndexLayout
------------------------------------*/

.recruitIndexLayout #main .cassette p {
margin: 0 0 30px;
text-align: center;
}

.recruitIndexLayout #main .cassette ul {
margin: 0;
}

.recruitIndexLayout #main .cassette ul li {
float: left;
margin: 0 20px 30px 0;
}

.recruitIndexLayout #main .cassette ul li.last {
margin: 0 0 30px 0;
}


/* missionIndexLayout
------------------------------------*/

.missionIndexLayout {
}

.missionIndexLayout #main {
	width: 100%;
}
.missionIndexLayout #main h4 {
	background: url(../img/hl_bg01-L.gif) no-repeat left top;
}
.missionIndexLayout #menu {
	display: none;
}

.missionIndexLayout #main .cassette .cassetteIn .columnLeft {
width: 675px;
/*width: 375px;*/
}

.missionIndexLayout #main .cassette .cassetteIn .columnRight {
width: 200px;
}

.missionIndexLayout #main .cassette .last {
border: none;
}

.missionIndexLayout #main .cassette .cassetteIn p {
margin: 0 0 30px;
}


/*indexLayout
------------------------------------*/

.indexLayout #gNavi {
margin: 0 auto 10px;
}

.indexLayout #container {
margin: 0 auto;
}

#mainvisual {
overflow: hidden;
position: relative;
height: 412px;
background-position: center top;
background-repeat: no-repeat;
}

/* sdsLayout
------------------------------------*/

.sdsIndexLayout #container {
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - 138px);
}
.sdsIndexLayout .pageTopLink {
	margin-top: auto;
	padding-top: 30px;
}

.sdsIndexLayout #main {
	width: 100%;
}
.sdsIndexLayout #menu {
	display: none;
}
.sdsIndexLayout .cassette {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.sdsIndexLayout .cassette div {
	width: 30%;
	margin: 0 1.666% 10px;
}
.sdsIndexLayout .cassette div img {
	width: 100%;
	border: 1px solid #ddd;
}
.sdsIndexLayout #main .cassette div p.link-cap, .sdsIndexLayout .cassette div p.link-cap {
	text-align: center;
	margin-top: 6px;
}

.sdsIndexLayout #search_condition_tbl td {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	flex-wrap: wrap;
}
.sdsIndexLayout .search_caption {
	width: 100%;
	margin: 0 120px 10px 0;
	font-size: .9rem;
}
.sdsIndexLayout .parts_title {
	font-size: 20px;
	color: #888;
}
.sdsIndexLayout #parts_no {
	font-size: 20px;
	padding: 5px 10px;
	height: 26px;
	margin: 0 10px;
}
.sdsIndexLayout #parts_no::placeholder {
	font-size: 14px;
	color: #f00;
}
input#parts_no:focus::placeholder {
	color: transparent;
}

#search_cnt {
	font-size: 150%;
	padding: 0 6px;
}
.sds-hr {
	margin: 0 0 15px;
}
#search_result_tbl th {
	color: #777;
	font-weight: 500;
}

/* contactLayout
------------------------------------*/

.contactLayout #main {
	width: 100%;
}

.contactLayout #main h4 {
	background: url(../img/hl_bg01-L.gif) no-repeat left top;
}

.contactLayout #main .cassette .box01 {
	display: inline-block;
	width: 5em;
}

.contactLayout #main .errs ul {
border: 3px double #f00;
padding: 10px 0;
}

.contactLayout #main .errs ul li {
border-bottom: 0;
padding: 3px 20px;
}

.contactLayout #main .cassette .cassetteIn {
border: none;
}

.contactLayout #main .cassette .space {
	display: inline-block;
	width: 15px;
}


/* indexLayout 20200324レスポンシブ
------------------------------------*/

.indexLayout #mainImgWrap {
	background: url(/img/main_bg.jpg) no-repeat center center / cover;
}

.indexLayout #mainImg {
	width: 960px;
	margin: 5px auto 10px;
}

.indexLayout #spBtnArea {
	display: none;
}

/* 【タブレット用のスタイル記述】 */
@media screen and (max-width: 960px) {
	body.indexLayout {
		background: url(../img/bg02.jpg) repeat-x left top;
	}
	.indexLayout #header {
		width: 96%;
		margin: 0 auto;
	}
	.indexLayout #header h1 {
		float: none;
		text-align: left;
		padding: 10px 0 8px;
	}
	.indexLayout #header h1 img {
		width: 75%;
	}
	.indexLayout #header .columnRight {
		display: none;
	}
	.indexLayout #gNavi {
		display: none;
	}
	.indexLayout #mainImg {
		width: 96%;
		margin: 0 auto 10px;
	}
	.indexLayout #container {
		width: 96%;
		margin: 0 auto;
	}
	.indexLayout #main {
		float: none;
		width: 100%;
	}
	.indexLayout #main h3 {
		overflow-x: hidden;
	}
	.indexLayout #menu {
		float: none;
		width: 100%;
	}
	.indexLayout #menu div {
		display: flex;
	}
	.indexLayout #menu div p {
		margin: 0 20px 20px 0;
	}
}
/* 【スマホ用のスタイル記述】 */
@media screen and (max-width: 760px) {
	.indexLayout #main .cassette ul li {
		line-height: 1.4;
	}
	.indexLayout #main .cassette ul li span.columnLeft {
		float: none;
		width: 100%;
	}
	.indexLayout #main .cassette ul li span.columnRight {
		float: none;
		width: 100%;
	}
.indexLayout #main .cassette .cassetteBnr {
	width: 100%;
	margin: 20px;
}
	.indexLayout #menu {
		display: none;
	}
	.indexLayout #spBtnArea {
		display: block;
	}
	.indexLayout #spBtnArea ul li {
		margin: 0 0 20px;
	}
	.indexLayout #spBtnArea ul li a img {
		width: 100%;
		;
	}
}


/* tab sp menu
------------------------------------*/

.menu-btn {
	position: absolute;
    cursor: pointer;
    z-index: 1499;
    margin: 0 10px 0 0;
    right: 2%;
    top: 20px;
}

.menu-btn-close {
	position: absolute;
    cursor: pointer;
    z-index: 1501;
    top: 20px;
    right: 20px;
}

.menu-btn span:after {
	display: block;
	content: '';
	width: 32px;
	height: 26px;
	background: url(../img/menu_icon.png) no-repeat center center;
	background-size: 32px 26px;
}

/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu-btn-close span:after {
	display: block;
	content: '';
	width: 27px;
	height: 27px;
	background: url(../img/menu_close.png) no-repeat center center;
	background-size: 27px 27px;
}

.menu {
	position: fixed;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition: all .5s;
    transition: all .5s;
    box-sizing: border-box;
    z-index: 1500;
}

.menu div {
	height: 100%;
	margin: 0 auto;
    overflow: auto;
    box-sizing: border-box;
    position: relative;
    padding: 67px 4% 0;
	font-size: 15px;
	color: #000;
	font-weight: bold;
}

.menu div > ul {
	margin: 0 0 67px;
}

.menu div > ul > li {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.menu div ul li a {
    display: block;
    padding: 20px 0;
}

.menu div ul li a:link,
.menu div ul li a:visited {
	color: #000;
	text-decoration: none;
}

.menu div ul li.box {
	display: flex;
	padding: 8px 0;
}

.menu div ul li.box a {
	padding: 12px 0;
}

.menu div ul li.box p span {
	display: block;
	white-space: nowrap;
	width: 88px;
}

.menu div ul li.box ul {
	font-weight: normal;
}


/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu {
    -webkit-transition: all .5s;
    transition: all .5s;
    left: 0%;
}

.menu div ul li a {
	position: relative;
}

.menu div > ul {
	border-top: 1px solid #565656;
}

.menu div > ul > li {
	border-bottom: 1px solid #565656;
}

body.open {
	position: fixed;
	left: 0;
	top: 0;
}

			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1081px) {
				.menu-btn {
					display: none;
				}
				.menu {
					display: none;
				}
			}


/* clearfix
------------------------------------*/

.newsLayout #main ul li:after,
.indexLayout #main ul li:after,
#header:after,
#gNavi:after,
#container:after,
#contents:after,
#footer:after,
#main .cassette div:after,
#main .cassette ul:after,
#main .cassette p:after,
.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
}

.newsLayout #main ul li,
.indexLayout #main ul li,
#header,
#gNavi,
#container,
#contents,
#footer,
#main .cassette div,
#main .cassette ul,
#main .cassette p,
.clearfix {
display: inline-block;
}

/* exlude MacIE5 \*/
* html .newsLayout #main ul li,
* html .indexLayout #main ul li,
* html #header,
* html #gNavi,
* html #container,
* html #contents,
* html #footer,
* html #main .cassette div,
* html #main .cassette ul,
* html #main .cassette p,
* html .clearfix {
height: 1%
}

.newsLayout #main ul li,
.indexLayout #main ul li,
#header,
#gNavi,
#container,
#contents,
#footer,
#main .cassette div,
#main .cassette ul,
#main .cassette p,
.clearfix {
display:block;
}
/* end MacIE5 */
