/** == 画面全般 == **/
html {
	height:100%;
}
/* 画面の背景（グラデーション） */
body {
	margin: 0px;
	font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', sans-serif;
}
table {
	padding: 0px;
}

/** フォント */
font.size-n {
	font-size: 12pt; /** 通常のフォントサイズ */
}
font.size-l {
	font-size: 14pt; /** 大きめのフォントサイズ */
}

/** エラーメッセージのlist-style-type 対策 */
font[color='red'] ul {
	padding: 0px;
	list-style-type: none; /* 赤字指定時のみタイプ無し */
}

/** 画像背景 */
#nmsys-logo-01 {
	background-image: url(../img/benireifoot.jpg);
	background-repeat: no-repeat;
	background-size: 380px 59px;
}
#nmsys-logo-02 {
	background-image: url(../img/logo_02.png);
	background-repeat: no-repeat;
	background-size: 310px 48px;
}

#keyvisual {
	padding: 0px;
}
#keyvisual div {
	overflow: hidden;
    width: 100%;        /* トリミングしたい枠の幅 */
    height: 300px;      /* トリミングしたい枠の高さ */
    position: relative;
	background-image: url(../img/keyvisual.jpg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: 0 -210px;
}

#contact {
	padding: 0px;
}
#contact div {
	overflow: hidden;
    width: 100%;        /* トリミングしたい枠の幅 */
                        /* トリミングしたい枠の高さは後から設定 */
    position: relative;
	background-image: url(../img/contact_bg_img.jpg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: 0 100%;
}

#kamotsu-ico {
	background-image: url(../img/kamotsu.png);
	background-repeat: no-repeat;
	background-size: 55px 55px;
}
#sendfile-ico {
	background-image: url(../img/sendfile.png);
	background-repeat: no-repeat;
	background-size: 55px 55px;
}

/** ボタン：フラットデザイン */
button.flat-btn {
	display: inline-block;
	font-size: 12pt;                             /* 文字サイズ */
	height: 34px;                                /* ボタンの高さ*/
	padding: 0px;                                /* 余白無し */
	color: #fff;                                 /* 文字色 */
	border-style: none;                          /* ボーダーなくす */
												 /* ボタン背景色：自由に決められるようあえて指定なし */
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;                          /* 角丸の指定 */
	text-align: center;                          /* 文字は左右中央 */
	vertical-align: middle;                      /* 文字は上下中央 */
}
/* オンマウス時はボタン中の「i」要素は回転する仕様 */
button.flat-btn.red-btn i,
button.flat-btn.gray-btn i,
button.flat-btn.green-btn i,
button.flat-btn.orange-btn i {
	font-size: 12pt;
	position: relative;
	transition: .5s;
}
button.flat-btn.red-btn:hover,
button.flat-btn.gray-btn:hover,
button.flat-btn.green-btn:hover,
button.flat-btn.orange-btn:hover {
	opacity: 0.8; /* 透明度を20%に指定 */
}
button.flat-btn.red-btn:hover i,
button.flat-btn.gray-btn:hover i,
button.flat-btn.green-btn:hover i,
button.flat-btn.orange-btn:hover i {
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg);
}
button.red-btn {     /** 決定ボタン用 */
	background-color: #d70c24;
}
button.gray-btn {    /** キャンセル系ボタン用 */
	background-color: #3f3f3f;
}
button.green-btn {    /** キャンセル系ボタン用 */
	background-color: green;
}
button.orange-btn {  /** その他ボタン用 */
	background-color: #f39700;
}
button.disable-btn { /** 非活性ボタン用 */
	background-color: #cccccc;
	color: #aaa;
}

/* クリック可能な地点でホバーした時の設定 */
.click-p:hover {
	cursor: pointer; /* 指矢印のカーソルに変更 */
}

/** テーブル関連 */
table.input-table td {
	padding-bottom: 10px;
}
table.input-table td:nth-child(1) {
	text-align: right;
	padding-right: 5px;
}
table.input-table td.left {
	text-align: left;
	padding-right: 5px;
	font-size:12pt;
}

table.insidetable {
	border-collapse: collapse;
	vertical-align: top;
}

table.insidetable th {
	color: #000000;
	background-color:#99cccc;
	border-width: 1px;
	border-color: #000000;
	border-style: solid;
	text-align: center;
}

table.insidetable td {
	color: #000000;
	background-color:#ffffff;
	border-width: 1px;
	border-color: #000000;
	border-style: solid;
}

table.insidetable2 {
	background-color: #666666;
}

ul#designTab {
	list-style:none;
	margin: 0px 0px 0px 40px;
}

ul#designTab li {
	position: relative;
	top: 1px;
	z-index: 1;
	float: left;
	padding:5px 10px 10px 10px;
	border: 1px #000 solid;
	height:15px;
	line-height:19px;
	margin: 0px;
	cursor:pointer;
	border-radius: 6px 6px 0px 0px;
	background-color: #D3D3D3;
	background: linear-gradient(#ffffff, #cccccc);
	width: 6.5em;
	text-align:center;
}

ul#designTab li.selected {
	color: #000;
	height: 16.5px;
	margin: 0px 0px 0px 0px;
	cursor:default;
	background-color: #ffffff;
	background: linear-gradient(#ffffff, #ffffff);
}

#textArea {
	position: relative;
	top:-1px;
	clear:left;
	margin:0px 10px 10px 10px;
	border: 1px #000 solid;
	height: 330px;
}

.readonly {
	color: #808080;
	background-color: #EEEEEE;
	border: solid thin #BBBBBB;
}

/** 要素を中央揃え */
.align-center {
	 margin: 0 auto;
}

/** ヘッダー：ナビゲーション */
.nav {
	position: fixed;
	width: 100%;
	min-width: 1300px;
	z-index: 1;
}
.nav > div {
	position: relative;
	background: #d70c24;
	height: 40px;
	text-align: right;
	z-index: 2;
}
.nav ul {
	margin: 0;
	padding: 0;
	display: inline-block;
}
.nav ul li {
	list-style: none;
	width: 130px;
	height: 40px;
	line-height: 40px;
	color: white;
	text-align: center;
}
.nav ul li:hover {
	cursor: pointer;
}
.nav ul li div {
	position: relative;
}
.nav ul li div i {
	position: absolute;
	top: 27%;
	left: 6px;
	font-size: 12pt;
}
.nav ul.sub {
	display: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 1;
}
.nav ul.main li {
	background: #d70c24;
}
.nav ul.sub li {
	background: rgba(215, 12, 36, 0.8);
	box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.5);
}
.nav ul.sub li:hover {
	background: #e24d77;
}
.nav ul.sub li div i {
	transition: .5s;
}
.nav ul.sub li:hover div i {
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg);
}
.nav > div.main > div.logo {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 54px;
	height: 40px;
	background: #ffffff;
}
.nav > div.main > div.logo > div {
	position: relative;
	top: 3px;
	left: 4px;
	width: 48px;
	height: 35px;
	background-image: url(../img/benireihead.jpg);
	background-repeat: no-repeat;
	background-size: 47px 34px;
}
.nav > div.main > div.service {
	position: absolute;
	top: 10px;
	left: 52px;
	width: 70px;
	height: 40px;
	background: rgba(0, 0, 0, 0);
}
.nav > div.main > div.service > div {
	position: absolute;
	top: 2px;
	left: 10px;
	width: 70px;
	height: 16px;
	/* background-image: url(../img/logo_04.png); */
	background-repeat: no-repeat;
	background-size: 186px 13px;
	border-right: 1px solid #666666;
}
.nav > div.main > div.company {
	position: absolute;
	top: 10px;
	left: 140px;
	width: 230px;
	height: 40px;
	background: rgba(0, 0, 0, 0);
}
.nav > div.main > div.company > div {
	position: relative;
	top: 5px;
	left: 11px;
	width: 125px;
	height: 30px;
	background-image: url(../img/logo_06.jpg);
	background-repeat: no-repeat;
	background-size: 125px 30px;
}
.nav > div.main > div.goto-name-change-determine-number,
.nav > div.main > div.goto-product-receipts-and-payments,
.nav > div.main > div.clear,
.nav > div.main > div.download,
.nav > div.main > div.goto-menu {
	display: inline-block;
	width: auto;
	color: #ffffff;
	text-align: center;
	height: 40px;
	margin: 0;
	padding:10px 5px 0px 5px;
}
.nav > div.main > div.goto-name-change-de
termine-number i,
.nav > div.main > div.goto-product-receipts-and-payments i,
.nav > div.main > div.clear i,
.nav > div.main > div.download i,
.nav > div.main > div.goto-menu i {
	position: relative;
	transition: .5s;
}
.nav > div.main > div.goto-name-change-determine-number:hover,
.nav > div.main > div.goto-product-receipts-and-payments:hover,
.nav > div.main > div.clear:hover,
.nav > div.main > div.download:hover,
.nav > div.main > div.goto-menu:hover {
	cursor: pointer;
	background: #e24d77;
}
.nav > div.main > div.goto-name-change-determine-number:hover i,
.nav > div.main > div.goto-product-receipts-and-payments:hover i,
.nav > div.main > div.clear:hover i,
.nav > div.main > div.download:hover i,
.nav > div.main > div.goto-menu:hover i {
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg);
}
.nav > div.main > div.goto-name-change-determine-number-disabled,
.nav > div.main > div.goto-product-receipts-and-payments-disabled,
.nav > div.main > div.clear-disabled,
.nav > div.main > div.download-disabled,
.nav > div.main > div.goto-menu-disabled {
	display: none;
	width: auto;
	margin: 0 5px;
	color: #444444;
	text-align: center;
}

/** ヘッダー：ユーザー情報 */
.nav > div.main > div.login-user {
	display: inline-block;
	margin: 4px 0 0 10px;
}
.nav > div.main > div.login-user div#nm:before {  /** ユーザーアイコン */
	content: '';
	display: inline-block;
	width: 33px;
	height: 26px;
	background-image: url(../img/user.png);
	background-repeat: no-repeat;
	background-size: 30px 23px;
	vertical-align: middle;
}
.nav > div.main > div.login-user div#nm {    /** ユーザー名 */
	display: inline-block;
	/* width: 160px; */
	color: #ffffff;
	text-align: left;
}

/** コンテンツ */
div.mimerit-contents {
	min-height: calc(100vh - 210px); /* ヘッダー＋フッターの高さを引く */
	/* min-width: 600px; */
	text-align: center;
	background: #e9e9e9;
}

/* コンテンツ > メニュー */
div.mimerit-contents table.menu {
	/* display: inline-block; */
	border-collapse: collapse;
}
div.mimerit-contents table.menu tr td {
	padding: 0;
}
div.mimerit-contents table.menu > tbody > tr:first-child > td > div.headline { /** 見出し */
	color: #ffffff;
	text-align: left;
	padding: 7px 0px 7px 14px;
	font-size: 12pt;
	background: #d70c24;
}
div.mimerit-contents table.menu tbody > tr > td {
	width: 100%;
	/* min-width: 600px; */
}
div.mimerit-contents table.menu > tbody > tr > td > table {
	padding: 0;
	border-collapse: collapse;
	background: #ffffff;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td {
	/* height: 90px; */
	padding: 2% 1%;
	border: 1px solid #c0c0c0;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td > div {
	position: relative;
	height: 100%;
	border-left: 3px solid #d70c24;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td > div div.function-nm {
	/* position: absolute; */
	/* top: 7px;
	left: 12px; */
	margin-left: 1%;
	text-align: left;
	width: 90%;
	font-size: 14pt;
	font-weight: bold;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td > div div.description {
	/* position: absolute; */
	/* top: 42px;
	left: 12px; */
	margin-top: 2%;
	margin-left: 1%;
	text-align: left;
	width: 90%;
	font-size: 11pt;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td > div > i.icon {
	position: absolute;
	top: 20px;
	right: 5px;
	text-align: left;
	font-size: 12pt;
	color: #cccccc;
	transition: .5s;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td:hover {
	cursor: pointer;
}
div.mimerit-contents table.menu > tbody > tr > td > table > tbody > tr > td:hover > div > i.icon {
	-webkit-transform: rotateX(360deg);
	-ms-transform: rotateX(360deg);
	transform: rotateX(360deg);
}

/* コンテンツ > 見出し */
div.mimerit-contents div#headline {
	background: #cccccc;
	padding: 20px;
	text-align: left;
	width: 100%;
	/* min-height: 60px;
	min-width: 600px; */
}
div.mimerit-contents div#headline > div.caption {
	font-size: 12pt;
	font-weight: bold;
	line-height: 1.5em;
	width: 600px;
	min-width: 600px;
	margin: 40px 0 0 0;
}
div.mimerit-contents div#headline > div.description {
	font-size: 12pt;
	line-height: 2.1em;
	width: 800px;
	min-width: 800px;
}

/* コンテンツ > メイン */
div.mimerit-contents div.main {
	background: #ffffff;
	width: 100%;
	text-align: center;
	display: inline-block;
	min-width: 600px;
}
div.mimerit-contents div.main div.info {
	padding: 20px 0px;
	background: #e9e9e9;
	min-height: 90px;
	height: auto;
}
div.mimerit-contents div.main div.info span {
	display: block;
	width: 100%;
	text-align: left;
	padding: 12px 20px;
	border-bottom: 1px solid #d70c24;
	font-size: 12pt;
	font-weight: bold;
}
div.mimerit-contents div.main div.command {
	background: #e9e9e9;
	text-align: right;
	padding: 40px;
	height: 120px;
}

/** フッター：コピーライト */
footer {
	position: relative;
	width: 100%;
	bottom: 0;
	/* height: 110px; */
	background: #ffffff;
	border-top: 1px solid #cccccc;
	text-align: center;
}
footer div.logo {
	position: absolute;
	display: inline-block;
	left: 50%;
	margin-top: 7px;
	-webkit-transform: translate(-50%, 0%);
	-ms-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
}
footer div.copyright {
	position: relative;
	display: inline-block;
	top: 75px;
	color: #000000;
	font-family: 'Century Gothic', 'Verdana', 'Tahoma', sans-serif;
	width: 100%;
	font-size: 15pt;
}

/** jQuery：datepicker用設定 */
.holiday > .ui-state-default {
	background: #ffc;
	color: red;
}
.sunday > .ui-state-default {
	background: #fcc;
	color: red;
}
.saturday > .ui-state-default {
	background: #ccf;
	color: blue;
}
.datechooser {
	width: 110px;
}

/* 文字の装飾 */
/* 縁取り ぼかし無し */
.str-shadow1 {
	text-shadow: 0px 1px 1px white, 0px 0px 1px white,
				 1px 0px 1px white, 0px -1px 1px white,
				 -1px -1px 1px white, -1px 0px 1px white;
}
/* 縁取り ぼかし有り */
.str-shadow2 {
	text-shadow: 0px 1px 14px white, 0px 0px 14px white,
				 1px 0px 14px white, 0px -1px 14px white,
				 -1px -1px 14px white, -1px 0px 14px white;
}

/** == バースマスタ画面 == **/
/* 種別、備考は左インデントを付与 */
table.berth-master td:nth-child(2),
table.berth-master td:nth-child(3) {
	padding-left: 5px;
}

/** == バース使用計画画面 == **/
div.gb-wr { /** ワインレッド */
	height: 10px;
	width: 100%;
	background-color: #e24d77;
}
div.gb-or { /** オレンジ */
	height: 10px;
	width: 100%;
	background-color: #f39700;
}
.bg-blue {  /** 青 */
	background-color: #bbdefb !important;
}
.bg-lightyellow { /** 薄黄 */
	background-color: #fff096 !important;
}

/** == 標準テーブル == **/
table.standard-table {
	border-collapse: collapse;
	z-index: auto; /* 初期値 */
}
table.standard-table tr > th,
table.standard-table tr > td { /* th, td 共通 */
	border-style: solid;   /* 枠線：単線 */
	border-color: #cccccc; /* 枠色：薄グレー */
}
table.standard-table tr:first-child > th:nth-of-type(1) {
	border-width: 1px 1px 1px 1px;
}
table.standard-table tr:first-child > th {
	border-width: 1px 1px 1px 0px;
}
table.standard-table tr > th:first-child {
	border-width: 1px 1px 0px 1px;
}
table.standard-table tr > th {
	border-width: 1px 1px 0px 0px;
}
table.standard-table tr:last-child > td:nth-of-type(1) {
	border-width: 1px 1px 1px 1px;
}
table.standard-table tr:last-child > td {
	border-width: 1px 1px 1px 0px;
}
table.standard-table tr > td:nth-of-type(1) {
	border-width: 1px 1px 0px 1px;
}
table.standard-table tr > td {
	border-width: 1px 1px 0px 0px;
	height: 50px;
	word-break: break-all; /* 幅以上の文字列は折り返す */
}
table.standard-table tr > th { /* th */
	padding-left: 1.4%;
	background-color: #e9e9e9;  /* 背景色：薄グレー */
	color: #000000;             /* 文字色：黒 */
	height: 50px;
}
table.standard-table tr {
	background-color: #fff; /* th以外の背景色：白 */
	page-break-inside: avoid;
}
table.standard-table th.minute {
	padding-left: 1px !important;
	padding-right: 1px !important;
	text-align: center;
	min-width: 25px;
	max-width: 25px;
}
table.standard-table th.berth-no {
	min-width: 30px;
}
table.standard-table th.berth-div {
	min-width: 80px;
}
table.standard-table th.berth-remark {
	min-width: 100px;
}
table.standard-table th.jigyosha-select,
table.standard-table td.jigyosha-select {
	min-width: 75px;
}
table.standard-table th.jigyosha-nm {
	min-width: 400px;
}
table.standard-table td.jigyosha-nm1,
table.standard-table td.jigyosha-nm2 {
	min-width: 200px;
	text-align: left;
}
table.standard-table th.jigyosha-nm-mini,
table.standard-table td.jigyosha-nm-mini {
	min-width: 175px;
	text-align: left;
	padding-left: 10px;
}

/* ポップアップのキャプション */
.pop-caption {
	font-size: 12pt;
}
/* 必須項目 */
i.required {
	color: #ff0000;
}

/** == 受付処理画面 == **/
/* 選択行の着色 */
table.uketsuke tr.selected {
	background: #e24d77;
	color: #fff;
}

/** == 各テーブル 共通設定 == */
/* 縦書き */
table.standard-table th.v-write {
	white-space: nowrap;
	text-align: center;
}
table.standard-table th.v-write > span {
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	margin: 8px;
}
table.standard-table th.left {
	text-align: left;
	padding-left: 5px;
	font-size:12pt;
	font-weight: normal;
}
table.standard-table th.center {
	text-align: center;
	font-size:12pt;
	font-weight: normal;
	padding-left:0;
}
table.standard-table th.right {
	text-align: right;
	padding-right: 5px;
	font-size:12pt;
	font-weight: normal;
}
table.standard-table td.left {
	text-align: left;
	padding-left: 5px;
	font-size:12pt;
	font-weight: normal;
}
table.standard-table td.center {
	text-align: center;
	font-size:12pt;
	font-weight: normal;
}
table.standard-table td.right {
	text-align: right;
	padding-right: 5px;
	font-size:12pt;
	font-weight: normal;
}

/** == 確認表示用 == */
div.chk-disp {
	padding: 10px;
	text-align: left;
	background: #fff096;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;                          /* 角丸の指定 */
	border: 1px solid #f39700;
	word-wrap: break-word;                       /* 半角英数字も折り返す */
}

/** == データ部のみスクロールするテーブル == */
table.scroll-table {
	outline: none;
}
table.scroll-table > thead,
table.scroll-table > tbody {
	display: block;
}
table.scroll-table > tbody {
	overflow: auto;
}

/** == 標準テーブルα（乗せ用の透過テーブル） == **/
table.standard-table-alpha {
	border-collapse: collapse;
	z-index: 1;			  /* 初期値より一つ上 */
	pointer-events: none; /* クリックイベントの透過 */
}
table.standard-table-alpha tr > th,
table.standard-table-alpha tr > td {
	background-color: rgba(0, 0, 0, 0); // 背景色透過
}
table.standard-table-alpha tr > th {
	padding-left: 5px;
}
/* テーブルの枠線は単線 */
table.standard-table-alpha tr:first-child > th:nth-of-type(1) {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 1px;
}
table.standard-table-alpha tr:first-child > th {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 0px;
}
table.standard-table-alpha tr > th:first-child {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 1px;
}
table.standard-table-alpha tr > th {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 0px;
}
table.standard-table-alpha tr:last-child > td:nth-of-type(1) {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 1px 1px;
}
table.standard-table-alpha tr:last-child > td {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 1px 0px;
}
table.standard-table-alpha tr > td:nth-of-type(1) {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 1px;
}
table.standard-table-alpha tr > td {
	border-style: solid;
	border-color: rgba(0, 0, 0, 0);
	border-width: 1px 1px 0px 0px;
	height: 50px;
	word-break: break-all; /* 幅以上の文字列は折り返す */
}

/* プログレスバー */
table.standard-table-alpha div.progress {
	background: #f39700;
	color: #fff;
	border-radius: 6px 6px 6px 6px;
	width: calc(100% - 10px);
	height: 18px;
	text-align: left;
	padding-left: 5px;
	margin-left: 5px;
	margin-top: auto;
	margin-bottom: auto;
	pointer-events: auto; /* クリックイベントを有効にする */
}

/** == FontAwesome用 == */
.fa-green:before {
	color: #2E7D32;
}
.fa-red:before {
	color: #D50000;
}

/** == エラー画面用 == */
div.error-layout {
	width: 400px;
	display: inline-block;
	text-align: center;
	padding: 30px;
	background-color: rgba(32, 192, 96, 0.2);
	border-radius: 18px;         // 角丸：IE
	-webkit-border-radius: 18px; // 角丸：Safari、Google Chrome
	-moz-border-radius: 18px;    // 角丸：Firefox
}

/** == ソートテーブル用 == */
.sortable-table tbody tr:hover {
	cursor: pointer; /* 指矢印のカーソルに変更 */
}

/** == bootstrap対応 == */
input.form-control {
	display: inline-block; !important;
	font-size:12pt;
}

/** リンク用ブロック
	<a>タグを含めた<div>タグ全体をリンク対象にする
**/
.link-box {
	position: relative;
}

.link-box a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}