@charset "utf-8";
/* -- YUI -- */

/*
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.7.0
*/

/**
 * YUI Fonts
 * @module fonts
 * @namespace yui-
 * @requires
 */

@media screen and (min-width: 760px) {

	/**
 * Percents could work for IE, but for backCompat purposes, we are using keywords.
 * x-small is for IE6/7 quirks mode.
 */
	body {
		font: 13px/1.231 arial, helvetica, clean, sans-serif;
		/* for IE6/7 */
		*font-size: small;
		/* for IE Quirks Mode */
		*font: x-small;
	}

	/* for IE8 */
	html>

	/**/
	body {
		font-size: small\9;
	}


	/**
 * Nudge down to get to 13px equivalent for these form elements
 */
	select,
	input,
	button,
	textarea,
	button {
		font: 99% arial, helvetica, clean, sans-serif;
	}

	/**
 * To help tables remember to inherit
 */
	table {
		font-size: inherit;
		font: 100%;
	}

	/**
 * Bump up IE to get to 13px equivalent for these fixed-width elements
 */
	pre,
	code,
	kbd,
	samp,
	tt {
		font-family: monospace;
		*font-size: 108%;
		line-height: 100%;
	}

	/* -- END YUI -- */
	.no_pc {
		display: none;
	}

	body {
		padding: 0;
		margin: 0;
		color: #464646;
		background: #ffffff;
		background-attachment: fixed;
		text-align: center;
		line-height: 1;
		letter-spacing: 1px;
		font-family:"ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,verdana,arial,clean,sans-serif;
	}

	a:link {
		color: #464646;
		text-decoration: none;
		outline: none;
	}

	a:visited,
	a:active {
		color: #464646;
		text-decoration: none;
		outline: none;
	}

	a:hover {
		color: #8f8e8e;
		text-decoration: underline;
		outline: none;
	}

	img {
		border: 0;
		outline: none;
	}

	hr {
		display: none;
	}

	.f_clear {
		clear: both;
	}

	.clearfix:after {
		content: ".";
		display: block;
		height: 0px;
		clear: both;
		line-height: 0;
		visibility: hidden;
	}

	.clearfix {
		zoom: 1;
	}

	.ta_l {
		text-align: left;
	}

	.ta_c {
		text-align: center;
	}

	.ta_r {
		text-align: right;
	}

	.f_left {
		float: left;
	}

	.f_right {
		float: right;
	}

	.red {
		color: #d60000;
	}

	.fw_bold {
		font-weight: bolder;
	}

	.td_ul {
		text-decoration: underline;
	}

	.noWrap {
		white-space: nowrap;
	}

	#page_top {
		clear: both;
		padding-right: 59px;
		text-align: right;
		background: url(../cmn_img/line_solid.gif) left bottom repeat-x transparent;
	}

	#container {
		width: 918px;
		margin: 0 auto;
		text-align: center;
	}

	#left_frame {
		width: 297px;
		padding: 0 0 50px 0;
		float: left;
		text-align: left;
	}

	#right_frame,
	#right_frame_irtop {
		width: 562px;
		padding: 33px 0 50px 0;
		float: left;
		text-align: left;
	}

	#single_frame {
		width: 800px;
		margin: 0 auto;
		padding: 33px 0 30px 0;
		text-align: left;
	}

	/* ヘッダ共通 */
	#header {
		margin: 0;
		height: 130px;
		text-align: center;
	}

	#header p {
		width: 800px;
		margin: 0 auto;
		text-align: left;
		padding: 25px 0 22px 0;
	}

	#head_menu {
		width: 800px;
		margin: 0 auto;
	}

	#head_menu ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	#head_menu ul li {
		float: left;
		padding-right: 33px;
	}

	#head_menu ul li.last {
		padding-right: 0;
	}

	.megadrop {
		letter-spacing: 0;
	}

	/* ヘッダタイトルTOP */
	#head_title {
		text-align: left;
		padding: 0 0 33px 65px;
	}

	#head_title h1 {
		margin: 0;
	}

	#head_title #pan {
		font-size: 12px;
		line-height: 1.2;
		color: #989898;
		margin: 14px 0 10px 0;
	}

	#english {
		float: right;
		padding: 0 66px 0 0;
	}

	.english_s {
		float: right;
	}

	/* 中面タイトル1 */
	#head_title_s {
		padding: 0 0 0 65px;
		height: 66px;
		background: url(../cmn_img/line_solid.gif) left bottom repeat-x transparent;
	}

	#head_title_s h1 {
		margin: 0;
		padding: 7px 63px 0 0;
		float: right;
	}

	#head_title_s #pan {
		font-size: 12px;
		line-height: 1.2;
		color: #8f8e8e;
		padding: 14px 0 10px 0;
		float: left;
	}

	/* 中面ベース */
	h2#subtitle {
		padding: 2px 0 20px 0;
		background: url(../cmn_img/line_dot.gif) left bottom repeat-x transparent;
		margin: 0 0 20px 0;
	}

	h2#cnt_subtitle {
		padding: 2px 0 12px 2px;
		margin: 0;
	}

	h2#cnt_subtitle span {
		font-size: 90%;
		color: #646464;
	}

	#cnt_body {
		margin: 20px 0 30px 0px;
	}

	/* ライン */
	.line_dot {
		display: block;
		clear: both;
		height: 1px;
		background: url(../cmn_img/line_dot.gif) left bottom repeat-x transparent;
	}

	.line_solid {
		clear: both;
		height: 1px;
	}

	/* バナー */
	#banner_box {
		width: 184px;
		margin: 0px 0 0 65px;
		text-align: center;
	}

	#banner_list {
		list-style: none;
		margin: 15px 0 0 0;
		padding: 0;
	}

	#banner_list li img {
		vertical-align: top;
	}

	#banner_list li {
		margin: 0 0 10px 0;
	}

	/* コメント文 */
	.cm_txt1 {
		font-size: 93%;
		line-height: 1.6;
		text-indent: -1.6em;
		padding-left: 1.6em;
		margin-bottom: 20px;
	}

	.cm_txt1 a,
	.cm_txt1 a:visited {
		text-decoration: underline;
	}

	/* ニュースリスト */
	.news_title {
		font-size: 13px;
		line-height: 26px;
		font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Osaka,verdana,arial,clean,sans-serif;
		font-weight: bold;
		color: #ce0000;
		padding: 0 0 2px 0;
		background: url(../cmn_img/news_line.gif) left bottom no-repeat transparent;
	}

	#rss {
		padding: 3px 0 0 0;
		text-align: right;
		float: right;
	}

	.news_title span {
		padding: 0 0 0 2px;
		letter-spacing: 3px;
	}

	.news_title span.ir_news {
		padding: 0 0 0 2px;
		letter-spacing: 2px;
	}

	.news_list {
		zoom: 1;
		margin: 0 0 30px 0;
		padding: 10px 0 0 0;
	}

	.news {
		padding: 10px 0;
	}

	.news .date {
		width: 100px;
		line-height: 1.3;
		font-weight: bold;
		float: left;
		padding: 10px 0 0 5px;
	}

	.news .article {
		width: 450px;
		float: right;
		line-height: 1.3;
		color: #787878;
		padding: 5px 0 20px 0;
	}

	.news .article p.page {
		zoom: 1;
		min-height: 14px;
		background: url(../cmn_img/news_li.gif) left 7px no-repeat transparent;
		margin: 0 0 10px 0;
		padding: 5px 0 0 33px;
	}

	.news .article p.pdf {
		zoom: 1;
		min-height: 14px;
		background: url(../cmn_img/news_pdf.gif) left 6px no-repeat transparent;
		margin: 0 0 10px 0;
		padding: 5px 0 0 33px;
	}

	.news .article p.sublink {
		zoom: 1;
		background: url(../cmn_img/news_sublink.gif) 38px 0px no-repeat transparent;
		margin: -5px 0 15px 0;
		padding: 0 0 0 56px;
	}

	.news_list_end {
		clear: both;
		height: 10px;
	}

}




@media screen and (max-width: 759px) {

	html,
	body,
	div,
	span,
	applet,
	object,
	iframe,
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	p,
	blockquote,
	pre,
	a,
	abbr,
	acronym,
	address,
	big,
	cite,
	code,
	del,
	dfn,
	em,
	img,
	ins,
	kbd,
	q,
	s,
	samp,
	small,
	strike,
	strong,
	sub,
	sup,
	tt,
	var,
	b,
	u,
	i,
	center,
	dl,
	dt,
	dd,
	ol,
	ul,
	li,
	fieldset,
	form,
	label,
	legend,
	table,
	caption,
	tbody,
	tfoot,
	thead,
	tr,
	th,
	td,
	article,
	aside,
	canvas,
	details,
	embed,
	figure,
	figcaption,
	footer,
	header,
	hgroup,
	menu,
	nav,
	output,
	ruby,
	section,
	summary,
	time,
	mark,
	audio,
	video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	html {
		-webkit-text-size-adjust: 100%;
		height: 100%;
	}

	/* ==========================================================================
   Base
============================================================================= */

	body {
		color: #5e5e5e;
		font-size: 14px;
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		line-height: 1.6;
		background-color: #fff;
		height: 100%;
		overflow-y: scroll;
		-webkit-text-size-adjust: 100%;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	img {
		max-width: 100%;
		height: auto;
		border: 0;
		outline: none;
	}

	ul,
	ol {
		list-style-type: none;
	}

	hr {
		display: none;
	}

	.f_clear {
		clear: both;
	}

	.clearfix:after {
		content: ".";
		display: block;
		height: 0px;
		clear: both;
		line-height: 0;
		visibility: hidden;
	}

	.clearfix {
		zoom: 1;
	}

	.ta_l {
		text-align: left;
	}

	.ta_c {
		text-align: center;
	}

	.ta_r {
		text-align: right;
	}

	.f_left {
		float: left;
	}

	.f_right {
		float: right;
	}

	.red {
		color: #d60000;
	}

	.fw_bold {
		font-weight: bolder;
	}

	.td_ul {
		text-decoration: underline;
	}

	.no_sp {
		display: none;
	}

	a:link,
	a:hover,
	a:active,
	a:visited {
		color: #464646;
		text-decoration: none;
		outline: none;
	}

	#container {
		width: 100%;
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		position: absolute;
		/* top: 64px; */
		left: 0;
	}

	#container a:link,
	#container a:hover,
	#container a:active,
	#container a:visited {
		color: #464646;
		text-decoration: none;
		outline: none;
	}

	#header,
	#head_title,
	#ex-header {
		display: none;
	}

	/* ライン */
	.line_dot {
		border-bottom: dotted 1px #afafaf;
	}

	.line_solid {
		border-bottom: solid 1px #afafaf;
	}

	/* SP NAVI */
	#sp_navi_bg {
		display: none;
		position: fixed;
		top: 64px;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #8f8f8f;
		z-index: 90;
	}

	#sp_navi_close {
		padding: 10px 0;
		text-align: center;
		cursor: pointer;
	}

	#sp_navi_close span {
		color: #fff;
		font-size: 16px;
		font-weight: bold;
		padding: 0 0 0 25px;
		background: url(../img_sp/icon_close.png) 0 center no-repeat;
		background-size: 13px 13px;
	}

	#sp_navi {
		display: none;
		position: absolute;
		top: -600px;
		left: 0;
		z-index: 90;
		width: 100%;
		background-color: #8f8f8f;
	}

	ul#sp_navi0 {
		background-color: #fff;
	}

	ul#sp_navi0>li>a {
		font-size: 15px;
		display: block;
		height: 70px;
		line-height: 70px;
		padding: 0 0 0 42px;
		border-bottom: solid 1px #cdcdcd;
		background: url(../img_sp/icon_home.png) 16px 28px no-repeat;
		background-size: 16px 14px;
	}

	ul#sp_navi1 {
		background-color: #fff;
	}

	ul#sp_navi1>li>a {
		font-size: 15px;
		display: block;
		height: 48px;
		line-height: 48px;
		padding: 0 0 0 20px;
		border-bottom: solid 1px #cdcdcd;
		background: url(../img_sp/navi_arrow3.png) right center no-repeat;
		background-size: 20px 12px;
	}

	ul#sp_navi1 li span.mm_s {
		font-size: 12px;
	}

	ul#sp_navi2 {
		background-color: #fff;
		padding: 20px;
	}

	ul#sp_navi2>li>a {
		font-size: 14px;
		display: block;
		padding: 5px 0 5px 14px;
		background: url(../img_sp/navi_arrow4.png) left center no-repeat;
		background-size: 6px 10px;
	}

	ul#sp_navi_sub1 {
		padding: 0;
		margin: 0;
	}

	.toggle {
		font-size: 15px;
		display: block;
		height: 48px;
		line-height: 48px;
		padding: 0 0 0 20px;
		color: #464646;
		border-bottom: solid 1px #cdcdcd;
		background: url(../img_sp/navi_arrow3.png) right center no-repeat #fff;
		background-size: 20px 12px;
		cursor: pointer;
	}

	.open {
		color: #fff;
		background: url(../img_sp/navi_arrow7.png) right center no-repeat #d00;
		background-size: 23px 12px;
	}

	.hide {
		display: none;
	}

	li.sp_navi_sub1_1>a {
		display: block;
		padding: 6px 10px 6px 36px;
		border-bottom: solid 1px #cdcdcd;
		color: #fff;
		background: url(../img_sp/navi_arrow5.png) 22px center no-repeat #989898;
		background-size: 6px 10px;
	}

	li.sp_navi_sub1_1>span {
		display: block;
		padding: 6px 10px 6px 36px;
		border-bottom: solid 1px #cdcdcd;
		color: #fff;
		background: url(../img_sp/navi_arrow6.png) 20px center no-repeat #989898;
		background-size: 10px 6px;
	}

	li.sp_navi_sub1_2>a {
		color: #000;
		display: block;
		width: 100%;
		border-bottom: solid 1px #cdcdcd;
		background: url(../img_sp/navi_arrow2.png) 30px center no-repeat #efefef;
		background-size: 6px 10px;
	}

	li.sp_navi_sub1_2.nolink {
		background: #989898;
		padding: 6px 10px 6px 30px;
		color: #fff;
	}

	li.sp_navi_sub1_1>ul>li.lower>a {
		padding-left: 15px;
		background: url(../img_sp/navi_arrow2.png) 45px center no-repeat #efefef;
		background-size: 6px 10px;
	}

	li.sp_navi_sub1_1>ul>li.lower--2>a {
		padding-left: 35px;
		background: url(../img_sp/navi_arrow2.png) 65px center no-repeat #efefef;
		background-size: 6px 10px;
	}

	li.sp_navi_sub1_2>a:hover {
		color: #000;
	}

	li.sp_navi_sub1_2>a>span {
		display: block;
		padding: 6px 10px 6px 45px;
	}

	/* SP HEADER */
	#sp_header {
		position: fixed;
		top: 0;
		left: 0;
		height: 60px;
		width: 100%;
		z-index: 900;
	}

	#sp_header_inner {
		position: relative;
		height: 60px;
		width: 100%;
		background-color: #fff;
		border-bottom: solid 4px #cdcdcd;
		z-index: 100;
	}

	#sp_header_left {
		position: absolute;
		top: 0;
		left: 0;
		width: 60px;
		height: 60px;
		border-right: solid 1px #dedede;
	}

	#sp_header_left a {
		display: table-cell;
		vertical-align: middle;
		width: 60px;
		height: 60px;
		text-align: center;
		background-color: #fff;
	}

	#sp_header_left a img {
		width: 50px;
		height: auto;
	}

	#sp_header_center {
		text-align: center;
	}

	#sp_header_center a {
		display: inline-block;
		line-height: 60px;
		letter-spacing: 1px;
		font-size: 15px;
		padding: 0 14px 0 22px;
		background: url(../img_sp/mario1.gif) 0 center no-repeat;
		background-size: 15px 20px;
	}

	#sp_header_right {
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
		height: 60px;
		border-left: solid 1px #dedede;
	}

	#sp_header_right p {
		display: table-cell;
		vertical-align: middle;
		width: 60px;
		height: 60px;
		text-align: center;
		background-color: #fff;
	}

	#sp_header_right p img {
		width: 34px;
		height: auto;
	}

	#page_top {
		text-align: right;
	}

	#page_top span#sp_pagetop {
		font-size: 12px;
		display: inline-block;
		height: 40px;
		line-height: 40px;
		padding: 0 30px 0 0;
		margin: 5px 15px 20px 0;
		background: url(../img_sp/pagetop.png) right center no-repeat;
		background-size: 25px 25px;
	}

	/* 中面タイトル1 */
	#head_title_s h1 {
		display: none;
	}

	#head_title_s #pan {
		font-size: 11px;
		padding: 10px;
	}

	/* 中面ベース */
	h2#cnt_subtitle {
		font-size: 20px;
		letter-spacing: 1px;
		text-align: center;
		font-weight: bold;
		padding: 10px 0 10px 0;
	}

	#jobs_menubt {
		display: none;
	}

	#sp_foot_menu {
		margin: 0px 0 0 0;
		padding: 5px 10px 15px 10px;
		background-color: #afafaf;
	}

	#sp_foot_menu p {
		color: #fff;
		font-size: 15px;
		font-weight: bold;
		text-align: center;
		padding: 0 0 3px 0;
	}

	#sp_foot_menu>ul {
		border-top: solid 1px #afafaf;
	}

	#sp_foot_menu>ul>li>a {
		display: block;
		font-size: 14px;
		color: #000 !important;
		padding: 10px 5px 10px 30px;
		background: url(../img_sp/navi_arrow8.png) 10px center no-repeat #efefef;
		background-size: 6px 10px;
		border-bottom: solid 1px #787878;
	}

	#sp_foot_menu>ul>li>ol>li>a {
		display: block;
		font-size: 14px;
		color: #000 !important;
		padding: 10px 5px 10px 30px;
		background-color: #fff;
		border-bottom: solid 1px #787878;
	}

	#sp_foot_menu>ul>li>span {
		display: block;
		font-size: 14px;
		color: #000 !important;
		padding: 10px 5px 10px 30px;
		background: url(../img_sp/navi_arrow8.png) 10px center no-repeat #efefef;
		background-size: 6px 10px;
		border-bottom: solid 1px #787878;
	}

	.contact {
		font-size: 15px;
		margin: 30px 10px 0px 10px;
		padding: 15px 15px 10px 15px;
		border: solid 1px #bebebe;
		border-radius: 5px;
	}

	.contact table td {
		display: inline;
	}

	.contact table td span {
		display: block;
		font-size: 14px;
		color: #787878;
		line-height: 1.2;
		font-weight: bold;
		border-left: solid 4px #d10000;
		padding: 0 0 0 7px;
		margin: 0 0 10px 0;
	}

	.contact p.fwb {
		font-size: 13px !important;
		font-weight: bold !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.contact p.fwn {
		font-size: 15px !important;
		font-weight: normal;
		padding: 0 !important;
		margin: 7px 0 0 0 !important;
	}

	.contact p.form {
		margin: 7px 0 0 0 !important;
		padding: 0 !important;
	}

	.contact p.form a {
		font-size: 13px;
		padding: 0 0 0 22px;
		margin: 0 !important;
		background: url(../img_sp/navi_arrow9.png) 0 center no-repeat;
		background-size: 17px 10px;
	}

}