@charset "UTF-8"; 
@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&lang=en");

/* --------------------------------------------------------------------------- 変数の設定 ----- */
/* --------------------------------------------------------------------------------- Font ----- */
			@font-face {
			font-family: 'shingopro-light';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Light.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'shingopro-regular';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Regular.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'shingopro-medium';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Medium.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'shingopro-bold';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Bold.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'shingopro-heavy';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Heavy.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'shingopro-ultra';
			src: url('/fonts/A-OTF-ShinGoPro/A-OTF-ShinGoPro-Ultra.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
				@font-face {
			font-family: 'ryuminpro-light';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Light.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'ryuminpro-regular';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Regular.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'ryuminpro-medium';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Medium.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'ryuminpro-bold';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Bold.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'ryuminpro-heavy';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Heavy.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
			@font-face {
			font-family: 'ryuminpro-ultra';
			src: url('/fonts/A-OTF-RyuminPro/A-OTF-RyuminPro-Ultra.otf') format('opentype');
			font-weight: normal;
			font-style: normal;
		}
				@font-face {
			font-family: 'din1451alt-regular';
			src: url('/fonts/Alte-DIN-1451-Mittelschrift/din1451alt_G.ttf') format('truetype');
			font-weight: normal;
			font-style: normal;
		}
	/* ------------------------------------------------------------------------------ Generic ----- */
html, body {
	height: 100%;
	font-size: 13px;
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, '游ゴシック', YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	color: #666666;
	line-height: 1.8em;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

.text-bold, b, strong {
	font-weight: 700;
}

i.fa {
	width: 1.5em;
	text-align: center;
}

a {
	-webkit-transition: all 0.2s linear;
}

dd, dt {
	line-height: 2em;
}

.nowrap {
	white-space: nowrap;
}

/* --------------------------------------------------------------------------------- Text ----- */
.text-primary { color: #1AB394; }
.text-success { color: #1C84C6; }
.text-info { color: #23C6C8; }
.text-warning { color: #F8AC59; }
.text-danger { color: #ED5565; }

/* ------------------------------------------------------------------------------- Button ----- */
.btn {
	transition: all 0.3s linear;
}
.btn:focus {
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
	outline: 0 none;
}
.btn.btn-default {
	background-color: #C2C2C2;
	border-color: #C2C2C2;
	color: #FFF;
}
.btn.btn-default:hover {
	background-color: #9b9b9b;
	border-color: #9b9b9b;
}
.btn.btn-default.btn-white {
	color: #C2C2C2;
	border: #C2C2C2 1px solid;
	background-color: #FFF;
}
.btn.btn-default.btn-white:hover {
	background-color: #C2C2C2;
	color: #FFF;
}
.btn.btn-primary {
	background-color: #1AB394;
	border-color: #1AB394;
	color: #FFF;
}
.btn.btn-primary:hover {
	background-color: #148f76;
	border-color: #148f76;
}
.btn.btn-success {
	background-color: #1C84C6;
	border-color: #1C84C6;
	color: #FFF;
}
.btn.btn-success:hover {
	background-color: #16699e;
	border-color: #16699e;
}
.btn.btn-info {
	background-color: #23C6C8;
	border-color: #23C6C8;
	color: #FFF;
}
.btn.btn-info:hover {
	background-color: #1c9ea0;
	border-color: #1c9ea0;
}
.btn.btn-warning {
	background-color: #F8AC59;
	border-color: #F8AC59;
	color: #FFF;
}
.btn.btn-warning:hover {
	background-color: #c68947;
	border-color: #c68947;
}
.btn.btn-danger {
	background-color: #ED5565;
	border-color: #ED5565;
	color: #FFF;
}
.btn.btn-danger:hover {
	background-color: #bd4450;
	border-color: #bd4450;
}

/* -------------------------------------------------------------------------------- Alert ----- */
.alert-info {
	background-color: #bdedee !important;
	color: #1c9ea0 !important;
}
/* -------------------------------------------------------------------------------- Label ----- */
.label.label-default {
	background-color: #C2C2C2;
	color: #FFF;
}
.label.label-primary {
	background-color: #1AB394;
	color: #FFF;
}
.label.label-info {
	background-color: #23C6C8;
	color: #FFF;
}
.label.label-success {
	background-color: #1C84C6;
	color: #FFF;
}
.label.label-warning {
	background-color: #F8AC59;
	color: #FFF;
}
.label.label-danger {
	background-color: #ED5565;
	color: #FFF;
}
.label.label-default.label-white {
	color: #C2C2C2;
	border: #C2C2C2 1px solid;
	background-color: #FFF;
}
.label.label-primary.label-white {
	color: #1AB394;
	border: #1AB394 1px solid;
	background-color: #FFF;
}
.label.label-info.label-white {
	color: #23C6C8;
	border: #23C6C8 1px solid;
	background-color: #FFF;
}
.label.label-success.label-white {
	color: #1C84C6;
	border: #1C84C6 1px solid;
	background-color: #FFF;
}
.label.label-warning.label-white {
	color: #F8AC59;
	border: #F8AC59 1px solid;
	background-color: #FFF;
}
.label.label-danger.label-white {
	color: #ED5565;
	border: #ED5565 1px solid;
	background-color: #FFF;
}

/* --------------------------------------------------------------------------------- Form ----- */
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
	border-color: #1AB394;
	outline: 0 none;
}
.has-error label {
	color: #ED5565 !important;
}
.has-error .form-control {
	border-color: #ED5565 !important;
}
.has-error input, .has-error textarea {
	border-color: #ED5565 !important;
}
.form-group label:after {
	content: '\f069  必須';
	font-family: FontAwesome;
	padding-left: 4px;
	vertical-align: super;
	font-size: 0.8em;
	font-weight: normal;
	color: #ED5565;
	opacity: 0;
}
.form-group.required label:after {
	opacity: 0.8;
}
.form-group legend {
	font-size: 1.2em;
	font-weight: 600;
	color: #666666;
	padding: 5px 0;
	margin-bottom: 10px;
}
.form-group legend:before {
	font-family: FontAwesome;
	content: '\f02b';
	padding-right: 5px;
	font-weight: normal;
}
.form-group fieldset {
	margin-bottom: 10px;
}
.form-group fieldset label {
	padding-right: 15px;
	font-weight: normal !important;
	margin-bottom: 10px;
}
.form-control[readonly], .form-control-static {
	padding: 6px 12px;
	background-color: #F4F4F4;
	border: 1px #CCC solid;
	border-radius: 4px;
	font-weight: 600;
	color: #999;
	font-size: 1em;
	box-shadow: none;
}
.form-group.icheckbox span {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 7px 0;
	background-color: #FFF;
	border: 1px #E4E4E4 solid;
	position: relative;
	transition: all 0.2s;
	cursor: pointer;
}
.form-group.icheckbox span .fa {
	color: #FFF;
	width: 100%;
	height: 100%;
	vertical-align: text-bottom;
}
.form-group.icheckbox span:hover, .form-group.icheckbox span.hover {
	border: 1px #1C84C6 solid;
}
.form-group.icheckbox span.checked {
	border: 1px #1C84C6 solid;
	background-color: #1C84C6;
}
.form-group.icheckbox span.checked:hover, .form-group.icheckbox span.checked.hover {
	border: 1px #C2C2C2 solid;
	background-color: #C2C2C2;
}
.form-group.icheckbox input[type=checkbox] {
	display: none;
}
.form-group.icheckbox label[for] {
	cursor: pointer;
	display: inline-block;
	padding: 6px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.form-group.iradio input[type=radio] {
	display: none;
}
.form-group.iradio .radio, .form-group.iradio .radio-inline {
	margin: 0;
	padding: 0 10px 0 0;
}
.form-group.iradio .radio:before, .form-group.iradio .radio-inline:before {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px #E4E4E4 solid;
	border-radius: 50%;
	text-align: center;
	background: #FFF;
	color: #FFF;
	vertical-align: text-bottom;
	font-size: 10px;
	line-height: 20px;
	font-family: FontAwesome;
	content: '\f00c';
	transition: all 0.2s;
}
.form-group.iradio .radio.checked:before, .form-group.iradio .radio-inline.checked:before {
	background-color: #1C84C6;
	border-color: #1C84C6;
}
.form-group.iradio .radio.hover:before, .form-group.iradio .radio-inline.hover:before {
	border-color: #1C84C6;
}

.form-control.code {
	font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
}

/* -------------------------------------------------------------------------------- Toast ----- */
.jq-toast-wrap {
	z-index: 200;
	width: 300px;
}
.jq-toast-single {
	padding-top: 20px;
	padding-bottom: 20px;
	border-radius: 0;
}
/* -------------------------------------------------------------------------------- Modal ----- */
.modal-content {
	border-radius: 0;
}

/* --------------------------------------------------------------------------------- Link ----- */
.link {
	display: inline-block;
	margin-left: 5px;
}
.link:before {
	font-family: FontAwesome;
	padding-right: 3px;
}
.link.add:before			{ content: '\f055'; }
.link.filter:before			{ content: '\f0b0'; }
.link.edit:before			{ content: '\f040'; }
.link.back:before			{ content: '\f0e2'; }
.link.view:before			{ content: '\f06e'; }
.link.delete:before			{ content: '\f056'; }
.link.password:before		{ content: '\f084'; }
.link.copy:before			{ content: '\f055'; }
.link.prev:before			{ content: '\f060'; }
.link.next:before			{ content: '\f061'; }
.link.up:before				{ content: '\f062'; }
.link.down:before			{ content: '\f063'; }
.link.closeup:before		{ content: '\f00d'; }
.link.setting:before		{ content: '\f013'; }
.link.authorize:before		{ content: '\f164'; }
.link.disauthorize:before	{ content: '\f108'; }
.link.activate:before		{ content: '\f13e'; }
.link.deactivate:before		{ content: '\f023'; }
.link.share:before			{ content: '\f1e0'; }
.link.download:before		{ content: '\f019'; }
.link.upload:before			{ content: '\f093'; }

.link.filtering:after {
	content: 'あり';
	display: inline-block;
	background-color: #1AB394;
	color: #FFF;
	font-size: 0.7em;
	border-radius: 1em;
	padding: 0px 4px;
	margin-left: 3px;
	line-height: 2em;
	vertical-align: super;
}

/* --------------------------------------------------------------------------- Pagination ----- */
.pagination {
	margin: 0;
	line-height: 1.4em;
}
.pagination > li > a,
.pagination > li > span {
	padding: 4px 10px;
}
.pagination > li.active > a,
.pagination > li.active > span {
	background-color: #eee;
	border-color: #E4E4E4;
	color: inherit;
}
.pagination > li.active > a:hover {
	background-color: #eee;
	border-color: #E4E4E4;
	color: inherit;
}
/* -------------------------------------------------------------------------------- Table ----- */
.table .sorting:after {
	font-family: FontAwesome;
	float: right;
	content: '\f0dc';
	opacity: 0.3;
}
.table .sorting.asc:after {
	content: '\f0de';
	opacity: 0.9;
}
.table .sorting.desc:after {
	content: '\f0dd';
	opacity: 0.9;
}
/* ----------------------------------------------------------------------------- Dropdown ----- */
[data-toggle=dropdown]:after {
	font-family: FontAwesome;
	content: '\f0d7';
	padding-left: 5px;
	font-size: 0.9em;
}

/* --------------------------------------------------------------------- Header Container ----- */
#header-container {
	height: 25px;
	line-height: 25px;
	background-color: #2f4050;
}
#header-container.navbar-admin {
	background-color: #336633;
}
#header-container a:hover,
#header-container a:focus {
	text-decoration: none;
}
#header-container.navbar-admin a {
	color: #CCC;
}
#header-container .list-inline {
	margin: 0;
}
#header-container .list-inline > li {
	float: left;
	padding: 0;
	margin: 0;
}
#header-container .list-inline > li:first-child {
	border-left: 1px rgba(255, 255, 255, 0.1) solid;
}
#header-container .list-inline > li > a {
	display: block;
	padding: 0 5px;
	border-right: 1px rgba(255, 255, 255, 0.1) solid;
	border-left: 1px rgba(0, 0, 0, 0.1) solid;
}
#header-container .list-inline > li > a:hover {
	background-color: rgba(255, 255, 255, 0.1);
}

/* ----------------------------------------------------------------------- Menu Container ----- */
#menu-container {
	height: 50px;
}
#menu-container .navbar-toggle {
	display: none;
}
#menu-container .collapse {
	display: block;
	border: 0;
	padding-right: 0;
	padding-left: 0;
}
#menu-container .navbar-nav {
	float: left;
	margin: 0;
}
#menu-container .navbar-nav > li {
	float: left;
}
#menu-container .navbar-nav > li > a {
	padding-top: 15px;
	padding-bottom: 15px;
}

/* -------------------------------------------------------------------- Content Container ----- */
#content-container {
	padding-top: 75px;
	padding-bottom: 20px;
	background-color: #F4F4F4;
}

#content-container .content-title {
	padding: 30px 15px;
	background-color: #FFF;
	border-width: 0 0 1px 0;
	border-color: #E4E4E4;
	border-style: solid;
}

#content-container .content-title h1,
#content-container .content-title h2,
#content-container .content-title h3,
#content-container .content-title h4,
#content-container .content-title h5,
#content-container .content-title h6 {
	margin: 0;
}
#content-container .content-title a {
	display: inline-block;
	padding-top: 5px;
}

#content-container .content-breadcrumbs {
	padding: 10px 15px;
	background-color: #F8F8F8;
	border-width: 0 0 1px 0;
	border-color: #E4E4E4;
	border-style: solid;
}
#content-container .content-breadcrumbs ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#content-container .content-breadcrumbs ul li {
	float: left;
}
#content-container .content-breadcrumbs ul li:before {
	content: '>';
	padding: 0 10px;
}
#content-container .content-breadcrumbs ul li:first-child:before {
	content: '';
	padding: 0;
}

#content-container .content-body {
	padding: 20px 15px;
}

/* --------------------------------------------------------------------- Footer Container ----- */
#footer-container {
	height: 50px;
	line-height: 50px;
	border-width: 1px 0 0 0;
	border-color: #E4E4E4;
	border-style: solid;
	padding: 0 15px;
	font-size: 0.9em;
}

/* ---------------------------------------------------------------------- Login Container ----- */
#login-container {
	max-width: 400px;
	margin: 0 auto;
}
#login-container h1, #login-container h2, #login-container h3,
#login-container h4, #login-container h5, #login-container h6 {
	text-align: center;
	font-size: 1em;
	font-weight: 700;
	padding-bottom: 50px;
	margin: 0;
}

/* -------------------------------------------------------------------- Loading Container ----- */
.loading-container {
	opacity: 0.4;
	display: none;
	width: 10000px;
	border: 3px dashed rgba(0,0,0,0.1);
	border-radius: 8px;
	vertical-align: middle;
}

/* ----------------------------------------------------------------------- Tabs Container ----- */
.tabs-container {
	border-bottom: 2px solid rgba(0,0,0,0.1);
	margin-bottom: 20px;
}
.tabs-container .nav-tabs {
	border-bottom: 1px solid rgba(0,0,0,0.1);
}
.tabs-container .nav-tabs > li {
	background: none;
	border: none;
}
.tabs-container .nav-tabs > li > a {
	font-weight: 700;
	padding: 10px 20px;
	color: #a7b1c2;
}
.tabs-container .nav-tabs > li.active > a {
	color: #555;
	cursor: default;
}
.tabs-container .panel-header {
	border-width: 0 1px 1px 1px;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);
	padding: 10px 20px;
	position: releative;
	background-color: #FFF;
}
.tabs-container .panel-body {
	border-width: 0 1px 1px 1px;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);
	padding: 20px;
	position: releative;
	background-color: #FFF;
}
.tabs-container .panel-footer {
	border-width: 0 1px 1px 1px;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);
	border-radius: 0;
	padding: 20px;
	position: releative;
	background: #F4F4F4;
}
.tabs-container .panel-body {
	padding-bottom: 0;
}
.tabs-container .panel-body .box {
	padding-bottom: 20px;
}
.tabs-container.notab .panel-header:first-child,
.tabs-container.notab .panel-body:first-child {
	border-top-width: 1px;
}
.tabs-container.notab .ajax-error:first-child {
	border-top-width: 1px;
}

/* ---------------------------------------------------------------------------------- Box ----- */
.box pre {
	margin: 5px 0;
	-o-tab-size: 4;
	-moz-tab-size: 4;
	tab-size: 4;
}
/* --------------------------------------------------------------------------------- Ajax ----- */
.ajax-error {
	padding: 100px 0;
	opacity: 0.7;
	text-align: center;
	font-weight: 700;
	border-width: 0 1px 1px 1px;
	border-style: solid;
	border-color: rgba(0,0,0,0.1);
	background-color: #FFF;
	color: #ED5565;
}
.ajax-error p {
	font-weight: normal;
}

/* --------------------------------------------------------------------------- Help Block ----- */
.help-block {
	color: #ED5565 !important;
	font-weight: 600;
}
.help-block:before {
	font-family: FontAwesome;
	content: '\f071';
	padding-right: 3px;
	font-size: 0.9em;
}

/* ------------------------------------------------------------------------- Color Picker ----- */
.colorpicker-2x .colorpicker-saturation {
	width: 200px;
	height: 200px;
}
.colorpicker-2x .colorpicker-hue,
.colorpicker-2x .colorpicker-alpha {
	width: 30px;
	height: 200px;
}
.colorpicker-2x .colorpicker-color,
.colorpicker-2x .colorpicker-color div {
	height: 30px;
}

/* ------------------------------------------------------------------------------- Upload ----- */
.upload .drop-area {
	border: 2px dashed #E4E4E4;
	padding: 20px 10px;
	border-radius: 6px;
	background-color: ;
	text-align: center;
	color: #666666;
	line-height: 2em;
}
.upload .drop-area.focus {
	border-color: #1AB394;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
.upload .drop-area i {
	display: block;
	font-size: 5em;
	margin: 0 auto;
}
.upload .drop-area .help-block {
	color: #ED5565;
	font-size: 0.9em;
	margin: 10px 0 0 0;
	font-weight: bold;
}
.upload .drop-area .help-block:before {
	font-family: FontAwesome;
	content: '\f071';
	padding-right: 3px;
	font-size: 0.9em;
}
.upload .thumbnail-area .ajax-error {
	padding: 80px 0;
}
.upload .fileinfo-area {
	text-align: center;
}
.upload .fileinfo-area > .filename:before {
	font-family: FontAwesome;
	content: '\f056';
	opacity: 1;
	transition: all 0.3s;
}
.upload .fileinfo-area > .filename:after {
	content: '削除';
	padding-left: 3px;
	opacity: 1;
	transition: all 0.3s;
}
.upload .fileinfo-area > .filename:hover {
	color: #ED5565;
}
.upload .fileinfo-area > .filename:hover:before,
.upload .fileinfo-area > .filename:hover:after {
	opacity: 1;
	color: #ED5565;
}

/* -------------------------------------------------------------------------------- Debug ----- */
.cake-sql-log {
	border-right: 0;
	clear: both;
	color: #FFF;
	width: 100%;
	background: #003d4c;
}
.cake-sql-log td {
	padding: 4px 8px;
	padding: 6px;
	text-align: left;
	vertical-align: top;
	border-bottom:1px solid #ddd;
	text-align: left;
	font-family: Monaco, Consolas, "Courier New", monospaced;
}
.cake-sql-log caption {
	background: #003d4c;
	color: #FFF;
	text-align: center;
}
