@charset "UTF-8";

/* -------------- Resetting Again Base CSS Start -------------- */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

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, main,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, main, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* -------------- Resetting Again Base CSS End -------------- */

.clearfix {
	overflow: hidden;
}

* html .clearfix {
	zoom: 1;
}

/* -------------------- 共通：ボディ -------------------- */

body {
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	background: #eef8ee;
	color: #333;
	position: relative;
	font-size: 14px;
}

div#wrapper {
}

main {
	margin-top: 100px;
	margin-bottom: 100px;
}

/* 直納先が指定された場合はマージン追加 */
div.delivery-info + main {
	margin-top: 110px;
}

a { text-decoration: none; }
a:hover {
	opacity: 0.8;
}

a.disabled {
	pointer-events: none;
}

/* -------------------- 共通：ヘッダー -------------------- */

header {
	background: #0e6a23;
	overflow: hidden;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 9;
	width: 100%;
	height: 65px;
//	box-shadow: 0px 2px 2px rgba(0,0,0,0.5);
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

header h1 {
	color: #fff;
	width: 30%;
	float: left;
	font-size: 14px;
	line-height: 20px;
	padding-left: 5px;
}

header h1 a {
	color: #fff;
}

header h1 span {
	font-size: 20px;
	font-weight: bold;
	color: #ffff00;
}

header a.pc-layout {
	display: none;
}

header nav {
	float: right;
}

header nav ul {
}

header nav ul li {
	color: #fff;
	display: inline-block;
	font-size: 14px;
	line-height: 20px;
}

header nav ul li:before {
	content: "｜";
}

header nav ul li:first-child:before {
	content: "";
}

header nav ul li a {
	color: #ffffaa;
	padding-left: 10px;
	margin-right: 10px;
}

header p.school-info {
	clear: both;
	color: #fff;
	line-height: 20px;
	font-size: 14px;
	padding-left: 5px;
	width: 49%;
	float: left;
}

header p.school-info strong {
	font-size: 16px;
	font-weight: bold;
}

header p.school-info a {
	color: #ffffaa;
	font-size: 14px;
	font-weight: normal;
}

header p.login-info {
	color: #fff;
	line-height: 20px;
	font-size: 14px;
	padding-right: 5px;
	text-align: right;
	width: 49%;
	float: right;
}

header p.login-info strong {
	font-size: 16px;
	font-weight: bold;
}

header p.retail-info {
	clear: both;
	color: #fff;
	line-height: 20px;
	font-size: 14px;
	padding-left: 5px;
	text-align: left;
	width: 49%;
	float: left;
}

header p.retail-info strong {
	font-size: 16px;
	font-weight: bold;
}

header p.retail-info a {
	color: #ffffaa;
	font-size: 14px;
	font-weight: normal;
}

header p.delivery-info {
	color: #fff;
	line-height: 20px;
	font-size: 14px;
	padding-right: 5px;
	text-align: right;
	width: 49%;
	float: right;
}

header p.delivery-info strong {
	font-size: 16px;
	font-weight: bold;
}

header p.delivery-info a {
	color: #ffffaa;
	font-size: 14px;
	font-weight: normal;
}

header p a.dpn {
	display: none;
}

/* カートでheaderの上に上書きするボタン */
div.cart-school-btn {
	position: fixed;
	top: 22px;
	left: 3px;
	z-index: 10;
}

div.cart-school-btn button {
	height: 16px;
	line-height: 16px;
	padding: 0 2px;
	border-radius: 0;
	color: #ffffaa;
	background: #0e6a23;
}

div.cart-retail-btn {
	position: fixed;
	top: 43px;
	left: 3px;
	z-index: 10;
}

div.cart-retail-btn button {
	height: 16px;
	line-height: 16px;
	padding: 0 2px;
	border-radius: 0;
	color: #ffffaa;
	background: #0e6a23;
}

div.cart-delivery-btn {
	position: fixed;
	top: 43px;
	right: 3px;
	z-index: 10;
}

div.cart-delivery-btn button {
	height: 16px;
	line-height: 16px;
	padding: 0 2px;
	border-radius: 0;
	color: #ffffaa;
	background: #0e6a23;
}

/* -------------------- 共通：フッター -------------------- */

footer {
	background: #0e6a23;
	width: 100%;
	height: 25px;
	position: fixed;
	bottom: 0px;
	left: 0px;
	z-index: 9;
	box-shadow: 0px -2px 2px rgba(0,0,0,0.2);
}

footer nav {

}

footer nav ul {
	overflow: hidden;
}

footer nav ul li {
	color: #fff;
	padding: 5px;
}

footer nav ul li a {
	color: #ffffaa;
	font-size: 12px;
}

footer nav ul li.category-info {
	width: 30%;
	float: left;
}

footer nav ul li.user-info {
	width: 30%;
	text-align: right;
	float: right;
}

footer nav ul li.ap-info {
	color: #fff;
	text-align: center;
}

footer nav ul li.ap-info span.mode {
	display: inline-block;
	line-height: 14px;
	font-size: 12px;
	font-weight: bold;
	background: #ff8;
	border-radius: 2px;
	padding: 0 5px;
	color: #0e6a23;
	margin-left: 5px;
}

/* -------------------- 共通：フロー -------------------- */

nav.flow {
	margin: -20px 10px 0 10px;
}

nav.flow ul {

}

nav.flow ul li {
	width: 100px;
	font-size: 14px;
	font-weight: bold;
	line-height: 24px;
	background: #eaeaea;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
	border-radius: 0 10px 10px 0;
	display: inline-block;
	margin: 0 7px 5px 7px;
	text-align: center;
	position: relative;
	color: #aaa;
}

nav.flow ul.t li {
	width: 180px;
}

nav.flow ul li:not(:last-child):after {
	font-family: "Font Awesome 5 Free";
	content: '\f054';
	position: absolute;
	font-size: 16px;
	left: 105px;
	z-index: 2;
	color: #aaa;
}

nav.flow ul.t li:not(:last-child):after {
	left: 185px;
}

nav.flow ul li a {
	display: inline-block;
	width: 100px;
	color: #aaa;
	line-height: 24px;
}

nav.flow ul li.cnt {
	background: #ffa;
	color: #333;
}

nav.flow ul li.cnt a {
	color: #333;
}

div.guide {
	background: #fff;
	margin: -15px 10px 0 10px;
	padding: 10px 10px 0 10px;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
	line-height: 1.4;
}

/* -------------------- 共通：汎用部品 -------------------- */

h2.mds {
	background: #585;
//	border-top: 2px solid #ccc;
//	border-bottom: 1px solid #ccc;
	border-radius: 5px;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 10px;
	padding: 10px 20px 10px 10px;
	position: absolute;
	top: -20px;
	left: -5px;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

h2.mds:before {
	content: "■";
	color: #ffa;
}

h2.mds-pr {
	font-size: 16px;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}

ul.mds-tab {
	position: absolute;
	top: -10px;
	right: 10px;
}

ul.mds-tab li {
	display: inline-block;
	font-weight: normal;
	border-radius: 3px;
	padding: 5px 10px;
	margin-left: 1em;
	background: #cfc;
	text-align: center;
	box-shadow: 0px 0px 2px rgba(0,0,0,0.2);
}

ul.jump {
}

ul.jump li {
	display: inline-block;
	padding: 5px 10px;
}

ul.jump li:before {
	content: "▼";
}

div.main-box {
	background: #fff;
	margin: 40px 10px 0 10px;
	padding: 20px 10px;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
	position: relative;
}

div.full-width {
	margin-left: 0;
	margin-right: 0;
	background: #fff;
	width: 120%;
}

body.bgnone div.main-box {
	box-shadow: none;
}

span.chu {
	color: #ff0000;
	font-weight: bold;
}

p.read {
	padding: 10px 0;
	line-height: 1.4;
}

p.read strong {
	color: #0000bb;
	font-weight: bold;
	font-size: 18px;
}

p.read i {

	color: #598956;
	font-size: 20px;
	margin-right: 0.5em;
}

p.comment {
	padding: 10px 0;
	line-height: 1.4;
}

p.comment-r {
	padding: 10px 0;
	text-align: right;
	line-height: 1.4;
}

p.error {
	padding: 10px 0;
	line-height: 1.4;
	color: #ff0000;
}

p.memo {
	padding: 0 0;
	line-height: 1.4;
}

ul.memo {
	padding: 10px 0;
}

ul.memo li {
	line-height: 1.4;
}

ul.memo li:before {
	content: "※";
}

ul.memo li ul li {
	display: inline-block;
	padding-left: 1em;
}

ul.memo li ul li:before {
	content: "";
}

a.btn {
	display: inline-block;
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	border-radius: 5px;
	background: #f7982d;
	color: #fff;
}

button.return,
a.return {
	background: #3384d0;
}

button.regist {
	background: #ff4500;
}

th.ar,td.ar { text-align: right; }
th.ac,td.ac { text-align: center; }
th.al,td.al { text-align: left; }

th.at,td.at { vertical-align: top; }
th.am,td.am { vertical-align: middle; }
th.ab,td.ab { vertical-align: bottom; }

th.nw,td.nw { white-space: nowrap; }

strong {
	font-weight: bold;
}

.em2 { width: 2em; }
.em3 { width: 3em; }
.em4 { width: 4em; }
.em5 { width: 5em; }
.em6 { width: 6em; }
.em7 { width: 7em; }
.em8 { width: 8em; }
.em10 { width: 10em; }
.em11 { width: 11em; }
.em12 { width: 12em; }
.em13 { width: 13em; }
.em15 { width: 15em; }
.em20 { width: 20em; }
.em25 { width: 25em; }
.em30 { width: 30em; }
.em50 { width: 50em; }
.em100 { width: 100em; }
.p90 { width: 90%; }
.p100 { width: 100%; }

.em3h { height: 2.9em }
.em4h { height: 3.9em }

span.kubun {
	font-size: 10px;
	display: inline-block;
	padding: 1px 5px;
	background: #888;
	color: #fff;
	border-radius: 3px;
}

span.kubun-採用 { background: #79a976; }
span.kubun-巡回 { background: #ff8c00; }
span.kubun-巡回 { background: #ff8c00; }
span.kubun-小教科本 { background: #008cff; }
span.kubun-中教科本 { background: #8c00ff; }
span.kubun-75 { background: #ff1493; }
span.kubun-z { background: #ff8888; color: #ffffcc; }

span.nendo {
	font-size: 10px;
	display: inline-block;
	padding: 1px;
}

span.tokki {
	font-size: 12px;
	display: inline-block;
	padding: 1px 10px 0 10px;
	background: #f55;
	color: #fff;
	border-radius: 3px;
}

span.c-code {
	font-size: 12px;
	display: inline-block;
	padding: 1px 10px 0 10px;
	background: #eee;
	color: #555;
	border-radius: 3px;
	font-weight: normal;
}

span.c-code-bunko {
	background: #bbf;
}

span.c-code-comics {
	background: #8f8;
}

em.set {
	font-size: 10px;
	display: inline-block;
	padding: 1px 5px;
	background: #888;
	color: #fff;
	border-radius: 3px;
}

em.set-0 { background: #ff0000; }
em.set-1 { background: #0000ff; }

span.information {
	font-size: 10px;
	display: inline-block;
	padding: 1px 5px;
	background: #888;
	color: #fff;
	border-radius: 3px;
}

span.information-1 { background: #79a976; }
span.information-2 { background: #ff8c00; }
span.information-3 { background: #008cff; }
span.information-9 { background: #ff1493; }

/* -------------------- 共通：カテゴリー別配色 -------------------- */

body.saiyo { background: #ddffee; }
body.saiyo header { background: #0e6a23; }
body.saiyo footer { background: #0e6a23; }
body.saiyo h2.mds { background: #585; }
body.saiyo div.delivery-info { background: #0e6a23; }

body.junkai { background: #ffefe8; }
body.junkai header { background: #b36b2e; }
body.junkai footer { background: #b36b2e; }
body.junkai h2.mds { background: #b36b2e; }
body.junkai div.delivery-info { background: #b36b2e; }

body.etc { background: #eeeef8; }
body.etc header { background: #203166; }
body.etc footer { background: #203166; }
body.etc h2.mds { background: #203166; }
body.etc div.delivery-info { background: #203166; }

body.niji { background: #eeeef8; }
body.niji header { background: #6071a6; }
body.niji footer { background: #6071a6; }
body.niji h2.mds { background: #6071a6; }
body.niji div.delivery-info { background: #6071a6; }
body.niji div.cart-school-btn button { background: #6071a6; }
body.niji div.cart-retail-btn button { background: #6071a6; }
body.niji div.cart-delivery-btn button { background: #6071a6; }

body.office { background: #f8eeee; }
body.office header { background: #800000; }
body.office footer { background: #800000; }
body.office h2.mds { background: #800000; }
body.office div.delivery-info { background: #800000; }
body.office div.cart-school-btn button { background: #800000; }
body.office div.cart-retail-btn button { background: #800000; }
body.office div.cart-delivery-btn button { background: #800000; }


body.toku { background: #f8eeee; }
body.toku header { background: #800000; }
body.toku footer { background: #800000; }
body.toku h2.mds { background: #800000; }
body.toku div.delivery-info { background: #800000; }
body.toku div.cart-school-btn button { background: #800000; }
body.toku div.cart-retail-btn button { background: #800000; }
body.toku div.cart-delivery-btn button { background: #800000; }

body.test h1 a {
	color: #aaaaff;
}

body.bgnone {
	background: #fff;
}

/* -------------------- 共通：カテゴリー別部品オンオフ -------------------- */

body.junkai .saiyo-d {
	display: none;
}

body.etc .saiyo-d {
	display: none;
}

/* -------------------- 共通：汎用フォーム部品リセット -------------------- */

/* カンマでまとめて指定しても効かない */
::-webkit-input-placeholder { color: #ccc; }
::-moz-placeholder { color: #ccc; }
:-moz-placeholder { color: #ccc; }
:-ms-input-placeholder { color: #ccc; }

input,select,button {
	vertical-align:middle;
}

input[type=text],
input[type=password],
input[type=tel],
input[type=email],
input[type=number],
input[type=date],
input[type=time],
input[type=submit],
input[type=submit],
input[type=reset],
button,
textarea, 
select {
	margin: 0;
	padding: 0;
/*	background: none; */
	border: none;
	box-sizing: border-box;
	border-radius: 0;
	outline: none;
}

input[type=text],
input[type=password],
input[type=tel],
input[type=email],
input[type=number],
input[type=date],
input[type=time] {
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	border: solid 1px #ccc;
	border-radius: 3px;
	transition: all 300ms 0s ease;
}

input[type=number] {
	text-align: right;
}

select {
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	border: solid 1px #ccc;
	border-radius: 3px;
}

input[type=submit],
input[type=reset],
button,
span.submit-btn {
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	padding: 0 10px;
	border-radius: 5px;
	background: #f7982d;
	cursor: pointer;
	color: #fff;
//	font-weight: bold;
}

span.submit-btn {
	display: inline-block;
}

input[type=submit]:hover,
input[type=reset]:hover,
button:hover {
	opacity: 0.7;
}

textarea {
	font-size: 14px;
	padding: 5px;
	border: solid 1px #ccc;
	width: 30em;
	height: 5em;
	border-radius: 3px;
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
}

textarea:focus,
input:focus {
	border: solid 1px #f8c180;
}

input[type=radio],
input[type=checkbox] {
	display: inline-block;
	transform: scale(1.4);
	border-radius: 3px;
	margin-right: 0.5em;
}

/* -------------------- 共通：汎用フォーム部品カスタム -------------------- */

input.cb-custom[type="checkbox"] {
	position: relative;
	height: 14px;
	width: 14px;
	display: inline-block;
	border-radius: 2px;
	border: 1px solid #ccc;
	background: #fff;
	-webkit-appearance: none;
	appearance: none;
}

input.cb-touroku[type="checkbox"] {
	background-image: url("/nikkyohan/checklist/imgs/cb_touroku_nocheck.svg");
	background-repeat: no-repeat;
	background-size: cover;
}

input.cb-touroku[type="checkbox"]:checked {
	background-image: url("/nikkyohan/checklist/imgs/cb_touroku.svg");
}

input.cb-chokuso[type="checkbox"] {
	background-image: url("/nikkyohan/checklist/imgs/cb_chokuso_nocheck.svg");
	background-repeat: no-repeat;
	background-size: cover;
}

input.cb-chokuso[type="checkbox"]:checked {
	background-image: url("/nikkyohan/checklist/imgs/cb_chokuso.svg");
}

input.cb-shudo[type="checkbox"] {
	background-image: url("/nikkyohan/checklist/imgs/cb_shudo_nocheck.svg");
	background-repeat: no-repeat;
	background-size: cover;
}

input.cb-shudo[type="checkbox"]:checked {
	background-image: url("/nikkyohan/checklist/imgs/cb_shudo.svg");
}

span.check-btn {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px solid #ccc;
	border-radius: 3px;
	font-size: 16px;
	line-height: 20px;
	vertical-align: middle;
	text-align: center;
}

/* -------------------- 共通：フォームレイアウト dl -------------------- */

dl.search-form {
	overflow: hidden;
}

dl.search-form dt {
	clear: both;
	text-align: right;
	padding: 5px;
	width: 150px;
	float: left;
	vertical-align: top;
	line-height: 2.2;
}

dl.search-form dt span {
	color: #ff0000;
	font-size: 0.7em;
}

dl.search-form dt span:before {
	content: "【";
}

dl.search-form dt span:after {
	content: "】";
}

dl.search-form dd {
	margin-left: 150px;
	line-height: 2.2;
	padding: 5px;
}

dl.search-form dd span {
	display: inline-block;
	font-size: 14px;
	text-indent: 0.5em;
}

dl.search-form dd span:before {
	content: "※";
}

dl.search-form dd strong {
	color: #ff0000;
}

dl.search-form dd label {
	display: inline-block;
	margin-right: 1em;
}

dl.search-form dd p {
	display: inline-block;
	font-size: 12px;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
	background: #ddd;
}

/* -------------------- 共通：ページナビ -------------------- */

nav.page-nav {
	overflow: hidden;
	font-size: 14px;
	line-height: 16px;
}

nav.page-nav p.prev {
	width: 130px;
	padding: 5px 5px 10px 5px;
	float: left;
	vertical-align: middle;
}

nav.page-nav p.dpn {
	visibility:hidden;
}

nav.page-nav p.next {
	width: 130px;
	padding: 5px 5px 10px 5px;
	float: right;
	vertical-align: middle;
	text-align: right;
}

nav.page-nav ul {
	text-align: center;
	padding: 5px 5px 10px 5px;
}
nav.page-nav ul li {
	display: inline-block;
	margin-right: 1.4em;
}

nav.page-nav ul li.cnt {
	font-weight: bold;
}

/* -------------------- お知らせ画面 -------------------- */

dl.information-list {
	margin-top: 1em;
	margin-bottom: 1em;
}

dl.information-list dt {
	font-weight: bold;
	line-height: 1.6;
	border-top: 1px solid #ddd;
	padding-top: 1em;
	margin-bottom: 0.5em;
}

dl.information-list dt:before {
	font-family: "Font Awesome 5 Free";
	content: '\f4ad';
	font-size: 20px;
	padding-right: 10px;
}

dl.information-list dt em.date {
	font-weight: normal;
	display: inline-block;
	margin-right: 1em;
}

dl.information-list dt span.end {
	color: #ff0000;
	display: inline-block;
	padding-left: 1em;
}

dl.information-list dd {
	padding-left: 2em;
	margin-bottom: 2em;
	line-height: 1.6;
}

/* -------------------- カテゴリ選択画面 -------------------- */

div#category-select {
	margin-top: 20px;
	overflow: hidden;
}

div#category-link {
	width: 550px;
	float:left;
}

a.category-btn {
	display: block;
	padding: 20px 10px;
	width: 550px;
	height: 150px;
	border-radius: 5px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
	color: #fff;
	margin-bottom: 20px;
}

a.category-btn h2 {
	color: #ffffee;
	font-weight: bold;
	font-size: 24px;
}

a.saiyo {
	background: #0e6a23;
}

a.saiyo h2:before {
	font-family: "Font Awesome 5 Free";
	content: '\f518';
	padding-right: 10px;
}

a.junkai {
	background: #b36b2e;
}

a.junkai h2:before {
	font-family: "Font Awesome 5 Free";
	content: '\f549';
	padding-right: 10px;
}

a.etc {
	background: #203166;
}

a.etc h2:before {
	font-family: "Font Awesome 5 Free";
	content: '\f54f';
	padding-right: 10px;
}

a.tokuyaku {
	background: #800000;
	height: auto;
	min-height: 100px;
}

a.tokuyaku h2:before {
	font-family: "Font Awesome 5 Free";
	content: '\f54f';
	padding-right: 10px;
}

a.category-btn p {
	padding: 10px;
	font-size: 18px;
	line-height: 1.4;
}

a.category-btn ul {
	padding-left: 20px;
	font-size: 18px;
}

a.category-btn ul li {
	line-height: 1.6;
}

div.shipping-info {
	width: auto;
	margin-left: 600px;
	margin-bottom: 20px;
	padding: 10px 20px;
	color: #ff3;
	font-size: 18px;
	font-weight: bold;
	background: #ffc;
	border-radius: 5px;
	z-index: 9;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

div.shipping-info table {
	margin-bottom: 5px;
}

div.shipping-info table td {
	font-size: 12px;
	font-weight: normal;
	color: #000;
	text-align: left;
	padding: 2px 6px;
}

div.shipping-info table td a {
	color: #0000ff;
}

div.shipping-info table td span {
	display: inline-block;
	background: #0000ff;
	color: #fff;
	padding: 0 3px;
	border-radius: 2px;
	font-size: 10px;
	line-height: 12px;
	height: 12px;
	vertical-align: bottom;
	white-space: nowrap;
}

div.shipping-info table td span.takuhai {
	background: #ff0000;
}

div.shipping-info table th.mds {
	color: #ff1919;
	text-align: left;
	font-size: 12px;
	white-space: nowrap;
	padding-top: 1em;
	padding-bottom: 0.5em;
}

div.shipping-info table th.horyu {
	color: #a55;
}

div.shipping-info table td.num {
	text-align: right;
}

/* -------------------- 検索結果一覧 -------------------- */

main#result dl.search-form dt,
main#result dl.search-form dd {
	display: inline-block;
	float: none;
	width: auto;
	margin: 0;
}

table.result-table {
	width: 100%;
	border-top: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
	position: relative;
}

table.result-table th,
table.result-table td {
	padding: 5px;
	border-top: 1px dashed #ddd;
	border-left: 1px dashed #ddd;
	border-right: 1px dashed #ddd;
	font-size: 12px;
	line-height: 1.2;
}

table.result-table tr.bt-solid th,
table.result-table tr.bt-solid td {
	border-top: 2px solid #ccc;
}

table.result-table th {
	white-space: nowrap;
	vertical-align: bottom;
}


table.result-table tbody tr:hover {
	background: #ffffdd;
}

table.result-table caption {
	text-align: left;
	line-height: 1.4;
	font-weight: bold;
}

table.result-table caption:before {
	content: "▼";
}

table.result-table tr.err-b {
	background: #ffeeee;
}

table.result-table tr.err {
	background: #ffeeee;
	color: #ff0000;
	font-weight: bold;
}

table.result-table td.err {
	background: #ffeeee;
	color: #ff0000;
	font-weight: bold;
}

table.result-table tr.warn {
	background: #ffeeff;
	color: #008800;
	font-weight: bold;
}

table.result-table tr.hit {
	background: #ffffee;
	color: #0000ff;
	font-weight: bold;
}

table.result-table tr.warn table.book-select td {
	font-weight: normal;
}

/* -------------------- 出荷明細 -------------------- */

.sticky_table thead th {
	position: -webkit-sticky;
	position: sticky;
	top: 49px;
	z-index: 1;
	background: #fff;
}

table.sticky_table td.memo {
	color: #ff0000;
	font-weight: bold;
}

table.sticky_table td.memo input {
	border-radius: 0;
	border: none;
	height: 20px;
	line-height: 20px;
	color: #888;
}

table.sticky_table td.memo input {
	color: #ff0000;
	font-weight: bold;
}

table.sticky_table td.memo button {
	border-radius: 0;
	height: 20px;
	line-height: 20px;
}

table.sticky_table tbody tr:hover {

}

table.sticky_table tbody:hover {
	background: #ffffdd;
}

table.sticky_table tbody:hover td.memo input {
	background: #ffffdd;
}

table.sticky_table tbody:hover td.memo input:focus {
	background: #fff;
}


/* -------------------- 商品詳細 -------------------- */

h3.book-title {
	margin-top: 1em;
	font-size: 16px;
	font-weight: bold;
}

table.info-table {
}

table.info-table th {
	padding: 4px;
	text-align: right;
	vertical-align: top;
	white-space: nowrap;
	line-height: 30px;
}

table.info-table th:after {
	content: '：';
}

table.info-table th span.required {
	color: #ff0000;
}

table.info-table th span.required:before {
	content: "【";
}

table.info-table th span.required:after {
	content: "】";
}

table.info-table td {
	padding: 4px;
	line-height: 30px;
}

table.info-table td span.memo {
	display: inline-block;
	font-size: 12px;
	text-indent: -1em;
	padding-left: 2em;
	color: #99a;
	line-height: 1.4;
}

table.info-table td span.memo:before {
	content: "※";
}

table.info-table td p.memo {
	font-size: 12px;
	text-indent: -1em;
	padding-left: 2em;
	color: #99a;
	line-height: 1.4;
}

table.info-table td p.memo:before {
	content: "※";
}

table.info-table td span.data-type {
	display: inline-blcok;
}

table.info-table td span.data-type:before {
	content: "【";
}

table.info-table td span.data-type:after {
	content: "】";
}

table.info-table td p.empty {
	display: inline-block;
	font-size: 12px;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
	background: #ddd;
	vertical-align: middle;
}

table.info-table td strong {
	color: #ff0000;
}

table.info-table td label {
	display: inline-block;
	margin-right: 1em;
	line-height: 30px;
}

dl.book-info {
	overflow: hidden;
	margin: 10px auto;
}

dl.book-info dt {
	width: 100px;
	padding: 5px;
	text-align: right;
	line-height: 1.6;
	float: left;
}

dl.book-info dt:after {
	content: "：";
}

dl.book-info dd {
	margin-left: 100px;
	padding: 5px;
	line-height: 1.6;
}

/* -------------------- 送品履歴フォーム -------------------- */

ul.history-form {
	margin: 10px 0;
}

ul.history-form li {
	padding: 5px 0;
	display: inline-block;
}

/* -------------------- トレース -------------------- */

table.trace-list {
	margin-bottom: 20px;
}

table.trace-list th,
table.trace-list td {
	padding: 5px;
}

table.trace-list th {
	white-space: nowrao;
	text-align: right;
	min-width: 150px;
}

table.trace-list td span.memo {
	font-size: 12px;
	color: #888;
	text-indent: -1em;
}

table.trace-list td span.memo:before {
	content: "※";
}

table.trace-list td input {
	field-sizing: content;
}

table.trace-list td input::disabled {
	background: #eee;
}

table.trace-list td input[readonly] {
	background: #eee;
}

table.trace-list td select.disabled {
	background: #eee;
}

table.koguchi-list {
	margin-left: 50px;
	margin-bottom: 20px;
}

table.koguchi-list caption {
	text-align: left;
	font-weight: bold;
}

table.koguchi-list caption:before {
	content: "▼";
}

table.koguchi-list th,
table.koguchi-list td {
	padding: 5px;
	border: 1px solid #aaa;
}

table.koguchi-list th {
	white-space: nowrao;
}

p.cancel-btn {
	display: none;
}

ul.detail-btn {
	display: flex;
	justify-content: space-between;
}

ul.detail-btn li {
	padding: 0 1em;
}

ul.detail-btn li:last-child {

}

/* -------------------- 単品発注モード -------------------- */

table.hikiate-table {
	border-top: 2px solid #888;
	border-bottom: 2px solid #888;
	background:#fff;
}

table.hikiate-table td,
table.hikiate-table th {
	border: 1px solid #ddd;
	padding: 10px 5px;
	line-height: 1.2;
}

table.hikiate-table th {
	white-space: nowrap;
	background: #eee;
}

table.hikiate-table tr.futokei td {
	border-top:2px solid #888;
}

table.hikiate-table tr.bgy td {
	background: #ffffdd;
}

table.hikiate-table td.nw {
	white-space: nowrap;
}

table.hikiate-table td.ar {
	text-align: right;
}

table.hikiate-table td.bt {
	text-align: center;
}

table.hikiate-table td.bt input {
	width: 5em;
}

table.hikiate-table td.bt input.cancel {
	margin-top: 1em;
}

/* -------------------- 一括発注モード -------------------- */

span.inport-btn {
	display: block;
	width: 100%;
	heidht: 40px;
	line-height: 40px;
	padding: 0 5px;
	background: #eee;
	position: fixed;
	right: 0;
	bottom: 25px;
	text-align: right;
	z-index: 9;
	box-shadow: 0px -5px 5px rgba(0,0,0,0.2);
}

ul.inport-list {
	margin-bottom: 30px;
}

ul.inport-list li {
	padding: 1px 0;
}

/* -------------------- カートページ以降 -------------------- */

/* カート追加ボタンはabsoluteで配置*/

div.table-scroll { /* 特約モード用：テーブル内スクロール */
	overflow-x: scroll;
	overflow-y: scroll;
	white-space: nowrap;
	height: 40vh;
	padding: 0;
}

dl.caption {
	overflow: hidden;
	margin-bottom: 10px;
	border-top: 2px solid #eee;
	width: 650px;
}

dl.caption dt {
	width: 70px;
	float: left;
	font-weight: bold;
	line-height: 2;
}

dl.caption dd.code {
	width: 70px;
	float: left;
	text-align: right;
	font-weight: bold;
	line-height: 2;
}

dl.caption dd.name {
	text-indent: 1em;
	font-weight: bold;
	line-height: 2;
}

dl.caption dt,
dl.caption dd {
	border-bottom: 1px solid #eee;
	font-size: 14px;
}

dl.caption dd input {
	border: none;
	font-weight: bold;
	height: 20px;
	line-height: 20px;
	padding: 0;
}

dl.caption dd.code input {
	width: 70px;
	padding: 0;
	border-radius: 0;
	text-align: right;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

dl.caption dd.name input {
	width: 400px;
}

dl.caption dd button {
	line-height: 24px;
	height: 24px;
}

table.checklist-head {
	border-top: 2px solid #eee;
	width: 800px;
	margin-bottom: 10px;
}

table.checklist-head tr {
	border-bottom: 1px solid #eee;
	font-size: 14px;
	font-weight: bold;
	line-height: 2;
}

table.checklist-head th {
	width: 80px;
	text-align: left;
	text-indent: 1em;
}

table.checklist-head input {
	border: none;
	font-weight: bold;
	height: 20px;
	line-height: 20px;
	padding: 0;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

table.checklist-head select {
	height: 22px;
}

table.checklist-head td.code {
	width: 80px;
}

table.checklist-head td.code input {
	width: 60px;
}

table.checklist-head td.name input {
	width: auto;
}

table.checklist-head td.name button {
	line-height: 24px;
	height: 24px;
}

table.checklist-head td.name span.error {
	display: inline-block;
	text-indent: 1em;
	color: #ff0000;
	font-weight: bold;
}

.saiyo-seikyu-balloon {
	position: absolute;
	top: 100px;
	left: 500px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 5px;
	min-width: 200px;
	max-width: 100%;
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
	background: #55f;
	border-radius: 5px;
	z-index: 2;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}
.saiyo-seikyu-balloon:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 100%; /*吹き出しの矢印の左右位置（left、right）*/
	margin-top: -5px; /*吹き出しの矢印の上下位置*/
	border: 5px solid transparent; /*吹き出しの矢印の太さ*/
	border-right: 120px solid #55f; /*吹き出しの向き（left、right）と長さ*/
}
.saiyo-seikyu-balloon strong {
	color: #ff3;
}

ul.all-change {
	text-align: right;
}

ul.all-change li {
	display: inline-block;
	font-size: 12px;
}

ul.all-change li input[type=text],
ul.all-change li input[type=password],
ul.all-change li input[type=tel],
ul.all-change li input[type=email],
ul.all-change li input[type=number],
ul.all-change li input[type=date],
ul.all-change li input[type=time] {
	height: 24px;
	line-height: 24px;
	font-size: 12px;
}

ul.all-change li select {
	height: 24px;
	line-height: 24px;
	font-size: 12px;
}

table.cart-table {
	width: 100%;
	border-top: 1px solid #ddd;
	border-right: 1px dashed #ddd;
	position: relative;
	border-collapse: separate; //position:stickyで枠線を消さない
}

table.cart-table caption {
	text-align: left;
	line-height: 2;
	font-weight: bold;
}

table.cart-table caption span {
	display: inline-block;
	padding-right: 3em;
}

table.cart-table caption span.update {
	color: #ff0000;
}

table.cart-table caption input {
	border: none;
	font-weight: bold;
	color: #ff0000;
}

table.cart-table caption input.code {
	text-align: right;
}

table.cart-table thead th {
	position: -webkit-sticky;
	position: sticky;
	top: 64px;
	z-index: 1;
	background: #fff;
}

table.cart-table td,
table.cart-table th {
	padding: 3px 1px;
	border-bottom: 1px solid #ddd;
	border-left: 1px dashed #ddd;
	font-size: 12px;
	line-height: 1.2;
	vertical-align: top;
}

table.cart-table td input[type=text],
table.cart-table td input[type=password],
table.cart-table td input[type=tel],
table.cart-table td input[type=email],
table.cart-table td input[type=number],
table.cart-table td input[type=date],
table.cart-table td input[type=time] {
	height: 24px;
	line-height: 24px;
}

table.cart-table td input[type=text].nendo {
	padding:0 3px;
	line-height:14px;
	height:14px;
	font-size:12px
}

table.cart-table td select {
	height: 24px;
	line-height: 24px;
}

table.cart-table td.barcode,
table.cart-table th.barcode {
	display: none;
}

table.cart-table th {
	vertical-align: middle;
	white-space: nowrap;
}

table.cart-table td.ar {
	text-align: right;
}

table.cart-table td.rank,
table.cart-table th.rank {
	display: table-cell;
}

table.cart-table td.mgn {
	padding: 20px;

	border-left: none;
	border-right: none;
}

table.cart-table td.caption {
	padding: 10px;
	background: #eee;
}

table.cart-table td.caption:before {
	content: "▼";
}



table.cart-table td p {
	margin-bottom: 2px;
}

table.cart-table td p.title {
	font-weight: bold;
}

table.cart-table td p.title-pr {
	font-weight: bold;
	display: none;
}

table.cart-table td p.c-title {
	font-size: 14px;
	margin-top: 5px;
	margin-bottom: 5px;
}

table.cart-table td p.c-print {
	font-size: 12px;
	margin-top: 5px;
	margin-bottom: 5px;
	opacity: 0.5;
}

table.cart-table td p.c-pub {
	font-weight: bold;
	margin-bottom: 5px;
}

table.cart-table td p.bt1 {
	border-top:1px dashed #ccc;
}

table.cart-table td p span {
	display: inline-block;
	padding-right: 1em;
}

table.cart-table .cart-in {
	background: #ffffcc;
}

table.cart-table td i {
	color: #0000ff;
	font-size: 20px;
}

table.cart-table tr.bgg {
	background: #f8f8f8;
}

table.cart-table tr.bgg .cart-in::disabled {
	background: #eee;
}

table.cart-table input:disabled {
	background-color: #eee;
}

table.cart-table td input::placeholder {
	font-size: 12px;
}

table.cart-table td select {
	font-size: 12px;
	padding: 0;
}

table.cart-table td select.select-s {
	font-size: 12px;
	padding: 0;
}

table.cart-table td p span::target-text {
	background: #ffff00;
}

button.pub-search-btn {
	position: absolute;
	top: 137px;
	left: 170px;
}

body.junkai button.pub-search-btn {
	top: 115px;
}

form.cart-next {
	text-align: right;
}

p.order-type {
	padding: 10px 0;
	line-height: 1.4;
	text-align: right;
}

p.option label {
	display: inline-block;
	margin-right: 20px;
}

p.option em {
	font-weight: bold;
	color: #fff;
	display: inline-block;
	padding: 5px 10px;
	border-radius: 2px;
	background: #00f;
	text-align: center;
}

p.total-num {
	width: 200px;
	margin: 10px 0 10px auto;
	padding: 5px;
	font-size: 14px;
	border-bottom: 1px solid #a9a9a9;
	text-align: right;
	line-height: 100%;
}

p.total-num span {
	color: #ff0000;
	font-weight: bold;
	font-size: 18px;
}

p.cart-date {
	text-align: right;
	font-size: 12px;
	padding: 5px;
}

div.cart-info {
	overflow: hidden;
}

p.cart-school,
p.cart-retail,
p.cart-login,
p.cart-delivery {
	width: 45%;
	font-size: 14px;
	line-height: 30px;
	border-bottom: 1px solid #ddd;
}

p.cart-school button,
p.cart-retail button,
p.cart-login button,
p.cart-delivery button {
	padding: 0 5px;
	line-height: 24px;
	height: 24px;
	font-size: 14px;
}

p.cart-delivery button.dpn {
	display: none;
}

p.cart-school,
p.cart-retail {
	text-align: left;
	float: left;
}

p.cart-login,
p.cart-delivery {
	text-align: right;
	float: right;
	position: relative;
}

.delivery-balloon {
	position: absolute;
	top: 60px;
	right: 0px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 10px;
	min-width: 120px;
	max-width: 100%;
	color: #ff3;
	font-size: 16px;
	font-weight: bold;
	line-height;
	background: #55f;
	border-radius: 5px;
	z-index: 9;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

.delivery-balloon-check {
	position: fixed;
	top: 60px;
}

.delivery-balloon:before {
	content: "";
	position: absolute;
	top: 0;
	right: 1%;
	margin-top: -25px;
	border: 10px solid transparent;
	border-bottom: 15px solid #55f;
}

.retail-balloon {
	position: fixed;
	top: 65px;
	left: 10px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 10px 20px;
	min-width: 120px;
	max-width: 100%;
	color: #ff3;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	background: #f33;
	border-radius: 5px;
	z-index: 9;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

.retail-balloon:before {
	content: "";
	position: absolute;
	top: 0;
	left: 1%;
	margin-top: -50px;
	border: 10px solid transparent;
	border-bottom: 40px solid #f33;
	opacity: 0.9;
}

.information-balloon {
	position: fixed;
	top: 65px;
	right: 0px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 25px;
	min-width: 120px;
	max-width: 100%;
	color: #ff3;
	font-size: 18px;
	font-weight: bold;
	background: #ffc;
	border-radius: 5px;
	z-index: 9;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

.information-balloon ul li {
	line-height: 1.6;
	color: #f00;
}

.information-balloon h2 {
	color: #f00;
	line-height: 2;
}

.information-balloon td {
	color: #f00;
	padding: 0 10px;
	line-height: 2.4;
}

.transparent-bt {
	opacity: 0;
	width: 1px;
	height: 1px;
	padding: 0;
	line-height: 1px;
	font-size: 1px;
	position: fixed;
	bottom: 0;
	left: 0;
}

.transparent-bt:hover {
	opacity: 0;
}

nav.footer-navi {
	background: #aeeac3;
	width: 100%;
	height: 35px;
	position: fixed;
	bottom: 25px;
	left: 0px;
	z-index: 9;
	box-shadow: 0px -2px 2px rgba(0,0,0,0.2);
}

nav.footer-navi-l {
	height: 70px;
}

nav.footer-navi ul {
	display: flex;
	justify-content: space-between;
}

nav.footer-navi ul li {
	padding: 2px 5px;
	line-height: 30px;
}

nav.footer-navi ul li.al { text-align: left; }
nav.footer-navi ul li.ar { text-align: right; }
nav.footer-navi ul li.ac { text-align: center; }

nav.footer-navi ul li label {
	padding-left: 1em;
}

nav.footer-navi ul li em.order-type {
	font-size: 12px;
	line-height: 16px;
	font-weight: bold;
	color: #fff;
	display: inline-block;
	padding: 5px 10px;
	border-radius: 2px;
	background: #00f;
	text-align: center;
}

nav.footer-navi ul li em.error {
	font-size: 14px;
	font-weight: bold;
	color: #ff0000;
}

ul.cart-navi {
	margin-top: 40px;
	overflow: hidden;
}

ul.cart-navi li {
	padding: 5px;
}

ul.cart-navi li.cart-prev {
	box-sizing: border-box;
	width: 30%;
	float: left;
}

ul.cart-navi li.cart-center {
	box-sizing: border-box;
	text-align: center;
}

ul.cart-navi li.cart-next {
	box-sizing: border-box;
	width: 30%;
	float: right;
	text-align: right;
}

ul.fixed-btn {
	display: block;
	width: 100%;
	heidht: 40px;
	line-height: 40px;
	padding: 0;
	background: #eee;
	position: fixed;
	right: 0;
	bottom: 25px;
	z-index: 9;
	box-shadow: 0px -2px 2px rgba(0,0,0,0.2);
}

ul.fixed-btn li button {
	margin: 0 40px;
}

h3.order-regist {
	font-size: 20px;
	font-weight: bold;
	padding: 20px;
	background: #ffc753;
	margin-top: 20px;
}

h3.order-regist-error {
	font-size: 20px;
	font-weight: bold;
	padding: 20px;
	background: #ff8888;
	margin-top: 20px;
}

/* -------------------- 注文明細 -------------------- */

p.date {
	width: 20em;
	text-align: right;
	float: right;
}

p.store {
	margin-top: 20px;
	font-size: 18px;
	font-weight: bold;
}

p.store2 {
	margin-top: 5px;
	font-size: 18px;
	text-indent: 1em;
}

h1.title {
	margin: 40px 0;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}

/* -------------------- ログイン画面 -------------------- */

ul.nk-info {
	margin: 5px 0;
}

ul.nk-info li {
	padding: 5px 0;
	line-height: 1.4;
}

.s-tokuyakucode-c {
	display: none;
}

.s-csv-c {
	display: none;
}

.s-csv-c2 {
	display: none;
}

div.login-form {
	width: 520px;
	float:left;
}

div.login-alert {
	width: auto;
	margin-bottom: 20px;
	padding: 10px 20px;
	color: #ff3;
	font-size: 18px;
	font-weight: bold;
	background: #ffc;
	border-radius: 5px;
	z-index: 9;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
	float: right;
}

div.login-alert h2 {
	font-size: 16px;
	color: #ff0000;
	margin-bottom: 10px;
}

div.login-alert table {
	margin-bottom: 5px;
}

div.login-alert table td {
	font-size: 16px;
	font-weight: bold;
	color: #f00;
	text-align: left;
	padding: 2px 6px;
}

div.login-alert table td a {
	color: #0000ff;
}

div.login-alert table td span {
	display: inline-block;
	background: #0000ff;
	color: #fff;
	padding: 0 3px;
	border-radius: 2px;
	font-size: 10px;
	line-height: 12px;
	height: 12px;
	vertical-align: bottom;
	white-space: nowrap;
}

/* -------------------- データ一括入力モード -------------------- */

dl.global-info {
	border-bottom: 1px solid #ddd;
	width: 300px;
	margin-top: 2em;
	margin-bottom: 3em;
	overflow: hidden;
}

dl.global-info dt {
	border-top: 1px solid #ddd;
	width: 150px;
	float: left;
	line-height: 2;
	text-align: right;
}

dl.global-info dt:after {
	content: '：';
}

dl.global-info dd {
	border-top: 1px solid #ddd;
	line-height: 2;
}

/* -------------------- 特約メニュー -------------------- */

dl.tokuyaku-menu {
	overflow: hidden;
	margin-bottom: 10px;
}

dl.tokuyaku-menu dt {
	width: 330px;
	height: 40px;
	float: left;
}

dl.tokuyaku-menu dd {
	margin-left: 330px;
	height: 40px;
	line-height: 40px;
	vertical-align: middle;
}

dl.tokuyaku-menu dd:before {
	content: '・・・';
}

dl.tokuyaku-menu dt a {
	display: block;
	padding: 10px;
	width: 300px;
	height: 1em;
	border-radius: 5px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
	color: #fff;
	background: #f7982d;
	font-size: 16px;
	font-weight: bold;
}

/* -------------------- 受注チェック -------------------- */

p.warn {
	font-weight: bold;
	color: #ff0000;
	position: relative;
}

.warn-balloon {
	position: absolute;
	top: 10px;
	left: -120px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 5px;
	min-width: 180px;
	max-width: 100%;
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
	color: #ffff00;
	background: #f00;
	border-radius: 5px;
	z-index: 2;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}
.warn-balloon:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 10%; /*吹き出しの矢印の左右位置（left、right）*/
	margin-top: -35px; /*吹き出しの矢印の上下位置*/
	border: 5px solid transparent; /*吹き出しの矢印の太さ*/
	border-bottom: 20px solid #f00; /*吹き出しの向き（left、right）と長さ*/
}

td.memo-code {
	background: #ffdddd;
}

td.memo-code span {
	display: inline-block;
	padding: 0 1em;
	border-right: 1px dashed #888;
	position: relative;
}

td.memo-code span:first-child {
	border-left: none;
}

td.memo-code span:hover .memo-code-balloon {
	display: inline;
}

.memo-code-balloon {
	display: none;                        /* 要素を非表示 */
	position: absolute;                   /* 親要素を基準 */
	padding: 10px;                         /* テキストの前後の余白 */
	background-color: rgba(255, 255, 127, 0.9);  /* 背景色（透明度） */
	width: auto;                          /* 吹き出し全体の幅 */
	left: 30%;                           /* 表示位置 */
	top: 100%;                           /* 表示位置 */
	margin-top: 12px;                    /* 表示位置 */
	font-size: 12px;                       /* 文字サイズ */
	font-weight: bold;
	line-height: 1.6;
	color: #ff0000;
	white-space: nowrap;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
	z-index: 9;
}

.memo-code-balloon:after {
	border-bottom: 12px solid rgba(255, 255, 127, 0.9);  /* 吹き出し口の高さ・色 */
	border-left: 10px solid transparent;   /* 吹き出し口の幅１／２ */
	border-right: 10px solid transparent;  /* 吹き出し口の幅１／２ */
	top: -12px;                            /* 吹き出し口の位置調整 */
	left: 5%;                         /* 吹き出し口の横位置 */
	content: "";                       /* コンテンツの挿入 */
	position: absolute;                /* 親要素を基準 */
}

p.memo-code-check {
	padding: 2px;
	background: #fcc;
}

button.book-upd {
	color: #00f;
	padding: 0;
	margin: 0;
	background: none;
	line-height: 1;
	height: 12px;
	font-size: 12px;
}

/* -------------------- MIS取り込みの警告 -------------------- */

p.mis-warn {
	font-weight: bold;
	color: #ff0000;
	position: relative;
}

.mis-warn-balloon {
	position: absolute;
	top: -22px;
	left: 67px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 2px 5px;
	min-width: 250px;
	max-width: 100%;
	color: #fff;
	font-size: 12px;
	line-height: 1.2;
	color: #ffff00;
	background: #f00;
	border-radius: 5px;
	z-index: 2;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}

.mis-warn-balloon:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -9%; /*吹き出しの矢印の左右位置（left、right）*/
	margin-top: -3px; /*吹き出しの矢印の上下位置*/
	border: 5px solid transparent; /*吹き出しの矢印の太さ*/
	border-right: 20px solid #f00; /*吹き出しの向き（left、right）と長さ*/
}

.mis-warn-inquiry {
	font-weight: bold;
	color: #ff0000;
	position: relative;
}

.mis-warn-balloon-inquiry {
	position: absolute;
	top: -25px;
	right: 50px;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 1px 5px;
	min-width: 120px;
	max-width: 100%;
	color: #fff;
	font-size: 12px;
	line-height: 1.2;
	color: #ffff00;
	background: #f00;
	border-radius: 5px;
	z-index: 2;
	opacity: 0.9;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.2);
}
.mis-warn-balloon-inquiry:before {
	content: "";
	position: absolute;
	top: 50%;
	right: -19%; /*吹き出しの矢印の左右位置（left、right）*/
	margin-top: -4px; /*吹き出しの矢印の上下位置*/
	border: 5px solid transparent; /*吹き出しの矢印の太さ*/
	border-left: 20px solid #f00; /*吹き出しの向き（left、right）と長さ*/
}