/*! normalize.css v2.1.2 | MIT License | git.io/normalize */

/* ==========================================================================
 HTML5 display definitions
 ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
 display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
 display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
 display: none;
 height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

[hidden] {
 display: none;
}

/* ==========================================================================
 Base
 ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 * user zoom.
 */

html {
 font-family: sans-serif; /* 1 */
 -ms-text-size-adjust: 100%; /* 2 */
 -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
 margin: 0;
}

/* ==========================================================================
 Links
 ========================================================================== */

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
 outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
 outline: 0;
}

/* ==========================================================================
 Typography
 ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1 {
 font-size: 2em;
 margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
 border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
 font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn {
 font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
 -moz-box-sizing: content-box;
 box-sizing: content-box;
 height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
 background: #ff0;
 color: #000;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
 font-family: monospace, serif;
 font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre {
 white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q {
 quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
 font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
 font-size: 75%;
 line-height: 0;
 position: relative;
 vertical-align: baseline;
}

sup {
 top: -0.5em;
}

sub {
 bottom: -0.25em;
}

/* ==========================================================================
 Embedded content
 ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img {
 border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root) {
 overflow: hidden;
}

/* ==========================================================================
 Figures
 ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure {
 margin: 0;
}

/* ==========================================================================
 Forms
 ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
 border: 1px solid #c0c0c0;
 margin: 0 2px;
 padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
 border: 0; /* 1 */
 padding: 0; /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
select,
textarea {
 font-family: inherit; /* 1 */
 font-size: 100%; /* 2 */
 margin: 0; /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
 line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
 text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 * and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 * `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
 -webkit-appearance: button; /* 2 */
 cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
 cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */

input[type="checkbox"],
input[type="radio"] {
 box-sizing: border-box; /* 1 */
 padding: 0; /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 * (include `-moz` to future-proof).
 */

input[type="search"] {
 -webkit-appearance: textfield; /* 1 */
 -moz-box-sizing: content-box;
 -webkit-box-sizing: content-box; /* 2 */
 box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
 -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
 border: 0;
 padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
 overflow: auto; /* 1 */
 vertical-align: top; /* 2 */
}

/* ==========================================================================
 Tables
 ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
 border-collapse: collapse;
 border-spacing: 0;
}

/* ==========================================================================
 Base
 ========================================================================== */

* {
 /* padding と border の幅を要素の幅と高さに含める */
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 /* Safari 初期スタイルをリセット */
 -webkit-appearance: none;
}

html {
 /* 日本語のfont-familyへの対応 */
 font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "Yu Gothic", "Meiryo", sans-serif;
 font-weight: 300;
}

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

/*上方向のmarginを0にします */
h1,h2,h3,h4,h5,h6,p,ul,ol,dl,table,pre {
 margin-top: 0;
 margin-bottom: 0;
}

/* ==========================================================================
 Typography
 ========================================================================== */

/* 禁則処理の追加 */
p,li,dt,dd,th,td,pre{
 -ms-line-break: strict;
 line-break: strict;
 -ms-word-break: break-strict;
 word-break: break-strict;
}

/* ==========================================================================
 Embedded content
 ========================================================================== */

img {
 /* フルードイメージへの対応 */
 max-width :100%;
 /* 追加箇所 */
 vertical-align: middle;
}

/* ==========================================================================
 Forms
 ========================================================================== */

fieldset {
border: none;
 margin: 0;
 padding: 0;
}

/**
 * タイプ セッティング
 */
h1, h2, h3, h4, h5, h6 {
 font-size : 1em; /* 16px */
 line-height : 1.5; /* 24px */
}

/* レスポンシブ タイプセッティングへの対応 */
html { font-size: 87.5% }

/*1024px*/
@media screen and (min-width : 1024px) {
 /*レスポンシブタイプセッティングの指定*/
 html { font-size : 100% }
}

/**
 * 基本スタイル
 */
a {
 text-decoration: none;
}

a:hover {
 text-decoration: underline;
}

dl, dt, dd, ol, ul, li {
 list-style: none;
 padding: 0;
 margin: 0;
}

b, em, strong {
 font-style: normal;
 font-weight: 300;
}

table {
 border-collapse: collapse;
 border-spacing: 0;
 empty-cells: show;
}

/**
 * 全体
 */
html, body {
 height: 100%;
}

body {
 padding-bottom: 10px;
 background-color: #f7f6f5;
}

a {
 color: #0066ff;
}

/**
 * フッター
 */
footer {
 display: table;
 width: 100%;
 height: 10px;
 position: fixed;
 z-index: 10;
 left: 0;
 bottom: 0;
 background-color: #999;
 color: #fff;
}

footer small {
 display: table-cell;
 vertical-align: middle;
 text-align: center;
 font-size: 10px;
 font-weight: 500;
}

/**
 * ヘッダー
 */
header {
 display: table;
 width: 100%;
 height: 40px;
 padding: 2px 10px;
 overflow: hidden;
 background-color: #999;
 border-bottom: solid 1px #ccc;
 color: #fff;
}

 header::after {
 content: "";
 display: table;
 clear: both;
 }

header #logo {
 display: table-cell;
 vertical-align: middle;
 font-size: 17px;
 text-align: left;
}

 header #logo a {
 color: #fff;
 }

header #status {
 display: table-cell;
 vertical-align: bottom;
 font-size: 12px;
 text-align: right;
}

/**
 * コンテンツ
 */
article {
 display: table;
 width: 100%;
 height: 100%;
}

 article::after {
 content: "";
 display: table;
 clear: both;
 }

#body {
 display: table-cell;
 vertical-align: top;
 padding: 10px 15px 100px 20px;
 font-size: 13px;
}

#body h1 {
 display: inline-block;
 min-width: 320px;
 padding: 4px 10px;
 margin-bottom: 20px;
 background: -moz-linear-gradient(left, #fff, #d3edfb);
 background: -webkit-linear-gradient(left, #fff, #d3edfb);
 background: linear-gradient(to right, #fff, #d3edfb);
 border-radius: 4px;
 font-size: 15px;
}

/**
 * メニュー
 */
#menu {
 display: table-cell;
 vertical-align: top;
 width: 240px;
 padding: 10px 5px 10px 15px;
}

.menu {
 background-color: #fff;
 padding: 10px;
 margin-bottom: 10px;
 border: 1px solid #000;
 border-radius: 4px;
 font-size: 13px;
}

.menu h2 {
 font-size: 15px;
 margin-bottom: 5px;
}

.menu li {
 position: relative;
}

.menu a {
 display: inline-block;
 width: 100%;
 padding: 4px 16px 4px 24px;
 font-size: 13px;
 color: #000;
}

 .menu li::before {
 position: absolute;
 z-index: 2;
 top: 6px;
 left: 10px;
 content: "▶︎";
 font-size: 10px;
 }

/**
 * 箱
 */
.box {
 background-color: #fff;
 border: 1px solid #999;
 border-radius: 0.3rem;
 padding: 1rem;
}

/*
//
// Tip: to integrate this plugin seamlessly into your application, use these styles as a starting
// point to build your own stylish alerts and confirmations!
//
*/

/* Modal */
.alertable {
 position: fixed;
 z-index: 9999;
 top: 38vh;
 left: calc(50% - 150px);
 width: 300px;
 background: white;
 border-radius: 4px;
 padding: 20px;
 margin: 0 auto;
}

/* Overlay */
.alertable-overlay {
 position: fixed;
 z-index: 9998;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 background: rgba(0, 0, 0, .5);
}

/* Message */
.alertable-message {
 margin-bottom: 20px;
}

/* Prompt */
.alertable-prompt {
 margin-bottom: 20px;
}

.alertable-input {
 width: 100%;
 border-radius: 4px;
 box-shadow: none;
 border: solid 1px #ccc;
 font-family: inherit;
 font-size: inherit;
 color: inherit;
 padding: 6px 12px;
 display: block;
 box-sizing: border-box;
 margin-bottom: 10px;
}

/* Button group */
.alertable-buttons {
 text-align: right;
}

/* OK button */
.alertable-ok {
 background: #09d;
 border: solid 1px #09d;
 font-family: inherit;
 font-size: inherit;
 color: white;
 border-radius: 4px;
 padding: 6px 12px;
 margin-left: 4px;
 cursor: pointer;
}

.alertable-ok:hover,
.alertable-ok:focus,
.alertable-ok:active {
 background-color: #08c;
}

/* Cancel button */
.alertable-cancel {
 border: solid 1px #ddd;
 background: white;
 font-family: inherit;
 font-size: inherit;
 color: #888;
 border-radius: 4px;
 padding: 6px 12px;
 margin-left: 4px;
 cursor: pointer;
}

.alertable-cancel:hover,
.alertable-cancel:focus,
.alertable-cancel:active {
 background-color: #f2f2f2;
}
/**
 * 入力フォーム
 */
 input, select, textarea {
 border: 1px solid #999;
 font-weight: 400;
 font-size: 16px;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
textarea {
 background-color: #fff;
 padding: 0.3rem;
 line-height: 1.4;
 box-shadow: none;
 border-radius: 0.3rem;
}

input[type="checkbox"],
input[type="radio"] {
 width: 1rem;
 height: 1rem;
 vertical-align: middle;
}

textarea {
 line-height: 1.5;
}

/**
 * チェックボックス
 */
input[type="checkbox"] {
 display: inline-block;
 position: relative;
 background-color: #fff;
 border: 1px solid #999;
 font-size: 1.25rem;
 margin-right: 0.2rem;
 border-radius: 0.3rem;
}

 input[type="checkbox"]:checked::after {
 position: absolute;
 content: "";
 top: -0.1em;
 left: 0.2em;
 width: 0.4em;
 height: 0.6em;
 border-right: 0.2em solid #007fff;
 border-bottom: 0.2em solid #007fff;
 -webkit-transform: rotate(45deg);
 -moz-transform: rotate(45deg);
 -ms-transform: rotate(45deg);
 -o-transform: rotate(45deg);
 transform: rotate(45deg);
 }

/**
 * ラジオボタン
 */
input[type="radio"] {
 display: inline-block;
 position: relative;
 background-color: #fff;
 border: 1px solid #999;
 margin-right: 0.3em;
 appearance: none;
 border-radius: 1em;
 font-size: 16px;
}

 input[type="radio"]:checked::after {
 position: absolute;
 content: "●";
 font-size: 16px;
 color: #007fff;
 top: -6px;
 left: -1px;
 width: 1em;
 height: 1em;
 }

label {
 font-size: 16px;
}

/**
 * 選択リスト
 */
select {
 -moz-appearance: none;
 appearance: none;
 background: none transparent;
 text-indent: .01px; /*Firefox用*/
 text-overflow: ''; /*Firefox用*/
 cursor: pointer;
 margin: 0;
 padding: 0.1em 0.6em;
 vertical-align: middle;
 font-size: inherit;
 color: inherit;
 box-shadow: none;
 border-radius: 0.3em;
}

input:focus, select:focus, textarea:focus {
 outline: none;
}

::-webkit-input-placeholder {
 color: #ccc;
}

:-moz-placeholder {
 color: #ccc;
}

/**
 * ボタン
 */
input[type="button"] {
 background-color: #f5f5f5;
 border-radius: 0.3em;
}

/**
 * 数字入力ボックス
 */
input.number, input.comma {
 text-align: right;
}

input.zip1 {
 width: 4em;
}

input.zip2, input.tel {
 width: 5em;
}

input.date {
 width: 7.2em;
}

/**
 * 入力ボックス サイズ
 */
input.full, textarea.full {
 width: 100%;
}

input.half, textarea.half {
 width: 50%;
}

input.third, textarea.third {
 width: 33%;
}

input.quarter, textarea.quarter {
 width: 25%;
}

/**
 * レスポンシブ
 */
@media screen and (max-width: 768px) {
 input.half, textarea.half {
 width: 80%;
 }

 input.third, textarea.third {
 width: 60%;
 }

 input.quarter, textarea.quarter {
 width: 40%;
 }
}

/**
 * ボタン
 */

/* 送信ボタン */
button {
 background-color: #fff;
 color: #000;
 border: 1px solid #999;
 border-radius: 0.3em;
}

.button {
 font-size: 13px;
}

.button a,
.button button,
.button input,
.button-left a,
.button-left button,
.button-left input,
.button-right a,
.button-right button,
.button-right input,
.buttons a,
.buttons button,
.buttons input {
 display: inline-block;
 cursor: pointer;
 padding: .3em .5em;
 line-height: 1.4;
 border-radius: .3em;
 white-space: nowrap;
 text-decoration: none;
}

.btn-new {
 background-color: #0085cc;
 color: #fff;
}

.btn-edit {
 background-color: #0085cc;
 color: #fff;
}

.btn-del {
 background-color: #cc001f;
 color: #fff;
}

.btn-copy {
 background-color: #fffffc;
 border: 1px solid #aaa;
 color: #000;
}

.btn-detail {
 background-color: #fffffc;
 border: 1px solid #aaa;
 color: #000;
}

.btn-sort {
 background-color: #fff;
 border: 1px solid #aaa;
 color: #000;
}

.btn-pub {
 background-color: #e48e00;
 color: #fff;
}

.btn-sus {
 background-color: #669179;
 color: #fff;
}

.btn-save {
 background-color: #00a95f;
 color: #fff;
}

.csv-upload, .csv-download {
 border: 1px solid #aaa;
 color: #000;
}

.btn-publish {
 background-color: #ffffcc;
 border: 1px solid #aaa;
 color: #000;
}

.btn-prev {
 background-color: #fff;
 border: 1px solid #aaa;
 color: #000;
}

/**
 * 入力チェック メッセージ
 */
.notice, .message {
 position: relative;
 z-index: inherit;
 margin: 0;
 padding: 0;
 color: #ff0000;
 text-align: left;
}

 .notice em, .message em {
 display: block;
 position: absolute;
 min-height: 1.3em;
 bottom: 0;
 left: 0;
 z-index: 99;
 padding: .2em 1em;
 background-color: #fff;
 border: 1px solid #ff0000;
 -moz-border-radius: .3em;
 -webkit-border-radius: .3em;
 -o-border-radius: .3em;
 -ms-border-radius: .3em;
 border-radius: .3em;
 cursor: pointer;
 font-size: .928em;
 font-style: normal;
 line-height: 1.3;
 }

/**
 * ページ
 */
.page {
 font-size: .875rem;
 margin-bottom: .5em;
 text-align: center;
}

 .page::after {
 display: block;
 clear: both;
 height: 0px;
 visibility: hidden;
 content: ".";
 }

.page-left {
 float: left;
 text-align: left;
 line-height: 1.5;
}

.page-right {
 float: right;
 text-align: right;
 line-height: 1.5;
}

 .page ul {
 display: inline-block;
 color: #999;
 }

 .page li {
 display: inline-block;
 margin: 0 .1em;
 }

 .page i {
 text-decoration: none;
 }

 .page .listup a, .page .listup b {
 display: inline-block;
 border: 1px solid #ddd;
 width: 1.6em;
 font-size: 1em;
 font-family: arial;
 text-align: center;
 line-height: 1.3;
 }

 .page .listup a {
 text-decoration: none;
 }

 .page .listup a:hover, .page .listup a:active {
 background-color: #ffffcc;
 }

 .page .listup b {
 background-color: #ffa500;
 color: #fff;
 font-weight: normal;
 font-style: normal;
 }

 .page .next, .page .back {
 padding: 0;
 font-size: 1em;
 }

 .page .next {
 padding-left: .2em;
 }

 .next i {
 margin-left: .3em;
 }

 .page .back {
 padding-right: .2em;
 }

 .back i {
 margin-right: .3em;
 }

/**
 * 並び順
 */
.order select {
 position: relative;
 z-index: 10;
 border: 1px solid #ccc;
 padding-right: 1em;
}

.order i {
 position: relative;
 z-index: 5;
 margin-left: -1em;
}

/* 掲載期日前 */
table.list tbody .date-wait, .color-guide .date-wait {
 background-color: #f0e68c;
}

/* 掲載終了 */
table.list tbody .date-close, .color-guide .date-close {
 background-color: #a9a9a9;
}

/* 保留 */
table.list tbody .publish-false, table.list tbody .display-false, .color-guide .publish-false, .color-guide .display-false {
 background-color: #8fbc8f;
}

/**
 * 掲載カラー説明
 */
.color-guide {
 padding-top: 4px;
 float: left;
}

 .color-guide li {
 float: left;
 margin-right: 20px;
 }

 .color-guide li span {
 padding: 0 12px;
 margin-right: 6px;
 }

/**
 * ガイド
 */
.guide {
 margin-top: .1em;
 margin-bottom: .1em;
}

 .guide::after {
 display: block;
 clear: both;
 height: 0px;
 visibility: hidden;
 content: ".";
 }

.guide-left {
 float: left;
}

ul.guide-right {
 float: right;
 display: table;
}

 ul.guide-right li {
 display: table-cell;
 }

 ul.guide-right li.button {
 padding-right: 1em;
 }

 ul.guide-right li.button:last-child {
 padding-right: 0;
 }

/**
 * ファイル
 */
.file-size {
 margin-left: .5em;
 font-size: .8125em;
}

.file-type {
 font-size: 1.5em;
 margin-left: .2em;
}

.file-pdf {
 color: #ff0000;
}

.file-image {
 color: #0000ff;
}

.file-doc {
 color: #1e90ff;
}

.file-xls {
 color: #008000;
}

.file-ppt {
 color: #ff0000;
}

/**
 * ファイル アップロード
 */
input[type="file"] {
 border: none;
 -moz-appearance: none;
 appearance: none;
 filter: alpha(opacity=0);
 -moz-opacity: 0;
 opacity: 0;
 margin: 0;
 padding: 0;
}

.upload-image, .upload-document {
 display: block;
 position: relative;
 width: 10em;
 height: 5em;
}

.upload-loading,
.image-file, .image-note, .image-display,
.document-input, .document-file, .document-note {
 position: absolute;
 width: 10rem;
 height: 5rem;
 top: 0;
 left: 0;
}

.upload-image .image-file,
.upload-document, .document-file {
 z-index: 20;
}

.document-input {
 z-index: 10;
}

.image-note, .image-display,
.document-note {
 font-size: .875em;
 line-height: 1.5;
 color: #666;
 background-color: #fff;
 border: 1px solid #aaa;
 border-radius: .3em;
}

.image-note,
.document-note {
 z-index: 10;
 padding: .6em .4em;
}

.image-display {
 z-index: 30;
 padding: 0;
 text-align: center;
 display: none;
}

.image-display img {
 width: auto;
 height: 100%;
}

.image-delete {
 z-index: 40;
 position: absolute;
 top: .1em;
 right: -2.2em;
 color: #ff0000;
 width: 1.5em;
 height: 1.5em;
 line-height: 1;
 cursor: pointer;
 display: none;
}

.image-delete i,
.document-delete i {
 font-size: 1.5em;
}

/**
 * 書類
 */
.document-display {
 position: absolute;
 z-index: 40;
 top: 0;
 left: 0;
 padding-top: 1em;
 padding-right: 2em;
 width: 22em;
 height: 5rem;
}

.document-delete {
 float: right;
 color: #ff0000;
 width: 1.5em;
 height: 1.5em;
 line-height: 1;
 cursor: pointer;
}

/**
 * アップロード
 */
.upload-loading {
 z-index: 50;
 background-color: #fff;
 text-align: center;
}

.upload-loading i {
 font-size: 3em;
 margin-top: 1rem;
}

/**
 * ポップアップ
 */
#popup {
 display: none;
 background-color: #fff;
 border: 1px solid #aaa;
 position: absolute;
 z-index: 98;
 border-radius: .3em;
 overflow: hidden;
 width: 480px;
}

#popup-bg {
 display: none;
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 97;
 background-color: #000;
 filter: alpha(opacity=50);
 -moz-opacity: .5;
 opacity: .5;
}

#popup-title {
 position: relative;
 cursor: move;
 text-align: center;
 padding: .4em;
}

#popup-title #close {
 display: block;
 position: absolute;
 z-index: 99;
 top: 6px;
 right: 6px;
 text-align: center;
 cursor: pointer;
 font-size: 22px;
 color: #ff0000;
 width: 22px;
 height: 22px;
 line-height: 17px;
}

#popup-body {
 position: relative;
}

#popup-list {
 overflow: scroll;
 -webkit-overflow-scrolling: touch;
}

/* ローディング */
#loading {
 position: absolute;
 z-index: 9998;
 top: 0;
 left: 0;
 background: rgb(0, 0, 0, 0.3);
 width: 100%;
 height: 100%;
}

.loading {
 position: fixed;
 z-index: 9999;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 text-align: center;
 padding-top: 100px;
}

/**
 * 矢印
 */
.arrow-right, .arrow-up {
 display: none;
 width: 100%;
 height: 1px;
 margin-bottom: 0;
 position: relative;
}

 .arrow-right i {
 display: block;
 position: absolute;
 z-index: 10;
 }

 .arrow-right i {
 top: .1em;
 right: 0;
 }

 .arrow-head i {
 top: -.8em;
 }

 .arrow-foot i {
 top: .1em;
 }

/**
 * 一覧
 */
#list {
 margin-top: 1rem;
}

#list div.button {
 margin-bottom: 0.5em;
}

.list {
 width: 100%;
 background-color: #fff;
 border: solid 1px #ccc;
 margin-bottom: 1rem;
 font-size: 13px;
}

.list th, .list td {
 border-right: 1px solid #ccc;
 border-bottom: 1px solid #ccc;
 vertical-align: top;
 padding: 0.5em;
 text-overflow: '';
}

.list th {
 color: #fff;
 background-color: #666;
 font-weight: normal;
 text-align: center;
}

 .list th a {
 color: #fff;
 }

.list td {
 text-align: left;
 /* 禁則処理 */
 word-break: normal;
 word-wrap: break-word;
 overflow-wrap: break-word;
}

 .list th.left, .list td.left {
 text-align: left;
 }

 .list th.center, .list td.center {
 text-align: center;
 }

 .list th.right, .list td.right {
 text-align: right;
 }

 .list td.bold {
 font-weight: bold;
 }

/* 行背景色 */
.line-zebra tr:nth-child(2n+1) {
 background-color: #fff;
}

.line-zebra tr:nth-child(2n+0), .line {
 background-color: #ecead8;
}

.line-main {
 background-color: #ffffcc;
}

/* オーバーしたテキストを隠す */
.list .hide-over {
 white-space: nowrap;
 overflow: hidden;
 -o-text-overflow: ellipsis;
 text-overflow: ellipsis;
}

 .list .hide-over br {
 display: none;
 }

/**
 * テーブル列
 */

/* テキスト */
.list th.text, .list td.text {
 min-width: 6em;
}

.list th.text {
 white-space: nowrap;
}

/* 日付 */
.list th.date, .list td.date {
 width: 6em;
 padding-left: 0;
 padding-right: 0;
}

/* 日時 */
.list th.datetime, .list td.datetime {
 width: 9em;
 text-align: center;
 padding-left: 0;
 padding-right: 0;
}

/* ボタン */
.list th.btn1, .list td.btn1 {
 width: 5em;
 text-align: center;
}

/* カウント */
.list th.count, .list td.count {
 min-width: 6em;
}

.list td.count {
 text-align: right;
}

/* チェックボックス */
.list th.check, .list td.check {
 width: 2em;
 text-align: center;
}

/* ナンバー */
.list .number {
 width: 6em;
}

 .list td.number {
 text-align: right;
 }

/* 画像 */
.list th.image, .list td.image {
 width: 100px;
 text-align: center;
 padding-left: 0;
 padding-right: 0;
}

/**
 * フォーム
 */
.form {
 width: 100%;
 border: solid 1px #ccc;
 margin-bottom: 1rem;
 background-color: #fff;
}

.continue {
 margin-bottom: 2rem;
}

 .form th, .form td {
 border-right: 1px solid #ccc;
 border-bottom: 1px solid #ccc;
 padding: 1em;
 text-align: left;
 vertical-align: middle;
 line-height: 1.5;
 /* 禁則処理 */
 word-break: normal;
 overflow-wrap: break-word;
 }

 .form th {
 background-color: #d3edfb;
 width: 16em;
 font-size: 14px;
 font-weight: 400;
 }

 .form td {
 position: relative;
 font-size: 15px;
 }

 .form .cell {
 margin-bottom: 0.5em;
 }

 .form .cell:last-child {
 margin-bottom: 0;
 }

label {
 display: inline-block;
}

/* 文字数カウント */
.form em.count {
 display: block;
 position: absolute;
 top: 0.2em;
 right: 0.8em;
 font-size: 11px;
 color: #666;
}

.form em.caution {
 color: #ff0000;
}

/* 必須項目 */
i.required {
 color: #ff0000;
 font-style: normal;
 font-weight: bold;
 font-size: 12px;
 margin-right: 0.5em;
}

.required th::after {
 float: right;
 content: "必須";
 color: #ff0000;
 font-size: 12px;
 position: relative;
 right: -0.5em;
}

.any th::after {
 float: right;
 content: "任意";
 color: #aaa;
 font-size: .875em;
 position: relative;
 right: -.5em;
}

/* グーグルマップ */
#google-map {
 border: 1px solid #ccc;
 width: 100%;
 height: 25em;
}

 #google-map img {
 /* レスポンシブデザインでグーグルマップのコントローラーが表示されない不具合を解消する */
 max-width: none;
 }

 .get-location {
 width: 10em;
 margin-right: 0;
 margin-left: auto;
 }

/* Datepicker */
.ui-datepicker .ui-datepicker-title {
 font-weight: normal;
}

.ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
 margin-right: .2em;
 width: 4.4em;
 border: 1px solid #fff;
 line-height: 1.3;
}

.ui-datepicker .ui-datepicker-title select.ui-datepicker-month {
 margin-left: .3em;
 width: 4em;
 border: 1px solid #fff;
 line-height: 1.3;
}

/* 注意事項 例 */
.note {
 line-height: 2.0;
}

em.note {
 display: block;
 font-style: normal;
}

span.note, b.note {
 margin-left: .5em;
}

p.note {
 margin-top: .2em;
}

/* 年月日チェックリスト */
span.date, span.checklist {
 display: inline-block;
 white-space: nowrap;
}

b.year, .month, b.day {
 padding-left: .1em;
}

b.year, b.month {
 padding-right: .3em;
}

/* キャプション */
.filename, .caption {
 clear: both;
 padding-top: .3em;
}

/* リスト表示 */
ul.cols {
 display: inline-block;
}

ul.cols li {
 display: inline-block;
 margin-right: 1em;
}

/* チェックリスト */
ul.checklist li {
 display: inline-block;
 margin-right: 1rem;
}

/* 注意書き */
.form td em {
 font-size: 12px;
}

/**
 * 編集
 */
#form {
 max-width: 960px;
}

/* 注意事項 */
#note {
 margin-bottom: 1em;
}

/* ボタン */
nav.button {
 margin-top: 1rem;
 text-align: center;
}

nav.button .confirm,
nav.button .post,
.btn-upload,
.btn-download {
 background-color: #00a95f;
 color: #fff;
 font-size: 16px;
}

/* 完了 */
#complete {
 margin-bottom: 2em;
 background-color: #f5f5f5;
 border: 1px solid #ccc;
 padding: 1em 1.5em;
 border-radius: 0.5em;
 font-size: 15px;
}

 #complete h2 {
 margin-bottom: 1em;
 color: #ff0000;
 }

 #complete p {
 font-size: 1em;
 }

/* 次の項目へ */
.next-button {
 float: right;
}

 .next-button::after {
 display: block;
 clear: both;
 height: 0px;
 visibility: hidden;
 content: ".";
 }

 .next-button li {
 margin-bottom: .2em;
 padding-left: 1em;
 color: #6699ff;
 text-align: left;
 line-height: 2.0;
 list-style: none;
 white-space: nowrap;
 }

 .next-button i {
 color: #00a95f;
 }

/* 一覧へ戻る */
.back-button {
 margin-bottom: 1em;
}

 .back-button i {
 color: #00a95f;
 }

/**
 * 検索ボックス
 */
.search {
 margin-bottom: 2em;
 padding: .5em 1em;
 text-align: left;
 border: 1px solid #aaa;
 background-color: #fffffc;
 border-radius: .3em;
}

 .search::after {
 content: "";
 display: table;
 clear: both;
 }

 .search li {
 display: inline-block;
 }

/**
 * 検索ボタン
 */
.search-button {
 float: right;
 margin-top: .5em;
 margin-left: 1em;
 margin-bottom: 1.5em;
}

.btn-search {
 background-color: #00a95f;
 border: none;
 color: #fff;
}

 .button .btn-search {
 padding-left: 1em;
 padding-right: 1em;
 }

.btn-reset {
 background-color: #fff;
}

 .search .button .btn-reset {
 font-size: .75em;
 }

.search dl {
 float: left;
 display: table;
}

.search dt, .search dd {
 display: table-cell;
 vertical-align: middle;
}

 .search dt {
 font-weight: bold;
 white-space: nowrap;
 text-align: right;
 height: 3.4em;
 }

 .search dd {
 text-align: left;
 padding-top: .5em;
 padding-left: .5em;
 padding-right: 2em;
 padding-bottom: .5em;
 height: 3.4em;
 }

 .search dd li {
 white-space: nowrap;
 }

/**
 * アップロード
 */
.upload {
 position: relative;
 min-height: 48px;
 margin-bottom: 1em;
 padding-left: 64px;
}

.upload .upload-file {
 display: block;
 position: absolute;
 width: 48px;
 height: 48px;
 top: 0;
 left: 0;
}

.upload input.upload-file {
 z-index: 100;
}

.upload i.upload-file {
 z-index: 99;
 color: #333;
 font-size: 32px;
 padding: 8px;
 border: 1px solid #aaa;
 border-radius: .2em;
}

.file {
 margin-bottom: 1em;
}

.file-display {
 display: table;
 width: 100%;
 margin-bottom: .5em;
 vertical-align: top;
}

.file-display .file-type {
 display: table-cell;
 magrin: 0;
 padding-right: 10px;
 width: 60px;
 vertical-align: top;
 text-align: center;
}

.file-display .file-type i {
 font-size: 3em;
}

.file-display .file-type i.pdf {
 color: #ff0000;
}

.file-display .file-name {
 display: table-cell;
 vertical-align: top;
}

.file-display .file-delete-button {
 display: table-cell;
 width: 4em;
 text-align: right;
 vertical-align: top;
 padding-top: .2em;
 padding-right: .2em;
}

.file-display .file-delete-button .file-delete {
 color: #ff0000;
 font-weight: normal !important;
 cursor: pointer;
}

.file-note {
 display: table;
 width: 100%;
}

.file-note .file-note-textarea {
 display: table-cell;
}

.file-note .file-note-button {
 display: table-cell;
 width: 4em;
 text-align: right;
 vertical-align: top;
 padding-top: .2em;
}

/**
 * ローディング
 */
#upload-loading {
 position: absolute;
 z-inde: 110;
 top: 20px;
 left: 196px;
}

#upload-loading i {
 font-size: 40px;
}

/**
 * ディスプレイ
 */
.display {
 width: 1000px;
 margin: 10px auto;
 padding: 10px;
 border: 1px solid #ddd;
 color: #666;
 font-size: 14px;
 background-color: #f0f0f0;
 font-family: "Noto Sans Japanese",serif;
}

/*
.display ul, .display ol {
 margin-left: 2em;
}

.display ul li, .display ol li {
 line-height: 1.5;
}

.display ul li {
 list-style-type: disc;
}

.display ol li {
 list-style-type: decimal;
}


.display b {
 font-weight: bold;
}

.display i {
 font-style: italic;
}

.display u {
 text-decoration: underline;
}

.display strike {
 text-decoration: line-through;
}
*/

/**
 * ログイン
 */
.login {
 width: 400px;
 margin: 4rem auto;
 font-size: 13px;
}

.login .title {
 margin-bottom: 1rem;
 text-align: center;
 font-size: 16px;
}

.login .box {
 margin-bottom: 1rem;
 background-color: #d3edfb;
}

.login dl {
 margin-bottom: 1rem;
 text-align: left;
}

.login dt {
 margin-bottom: 0.2rem;
 font-size: 14px;
 font-weight: 400;
}

.login dd {
 margin-bottom: 0.5rem;
}

.login dd input {
 width: 100%;
}

.login .button {
 text-align: center;
}

.login .button input {
 background-color: #00a95f;
 color: #fff;
}

.login .navi {
 text-align: right;
}

 .navi li i {
 color: #00a95f;
 }

/**
 * スタイル
 */
#form {
 max-width: 960px;
}

/**
 * カラー
 */
input, select, textarea,
label.file {
 border-color: #999;
}

.menu {
 border-color: #187AD2;
}

header,
footer,
address,
.list th {
 background-color: #187AD2;
 color: #fff;
}

.form th,
#complete {
 background-color: #d3edfb;
}

.menu a {
 color: #000;
}

/**
 * サイズ
 */
#body,
.list,
.button,
.menu,
.menu a {
 font-size: 13px;
}

#body h1,
.menu h2 {
 font-size: 15px;
}

@charset "UTF-8";
/* ログイン管理 */
.list .auth {
 width: 80px;
 text-align: center;
}

/* 対象サーバー */
.list .server-name {
 width: 200px;
}

 .list td.server-name {
 font-weight: 400;
 }

.list .ssh-host {
 width: 150px;
}

.list .ssh-port {
 width: 80px;
}

.list .ssh-user {
 width: 160px;
}

/* 更新サイト */
.list .update-name {
 width: 200px;
}

 .list td.update-name {
 font-weight: 400;
 }

.list .update-type {
 width: 80px;
}

.list .update-url {
 width: 320px;
}

.list .current-branch {
 width: 120px;
}

/* 実行 */
.btn-exec {
 background-color: #00a95f;
 color: #fff;
}

/* 履歴 */
.list .executor {
 width: 10em;
}

.list .git-branch {
 width: 10em;
}

@charset "UTF-8";
/**
 * フォーム
 */
ul.radio li {
 display: inline-block;
 margin-right: 2em;
}

/**
 * アラート
 */
.form td p.notice {
 margin: none;
}

.form td p.notice em {
 bottom: -1.4em;
}

/**
 * 更新実行
 */
 .wrapper::after {
 content: "";
 display: table;
 clear: both;
 }

.sideA {
 float: left;
 width: 50%;
 padding-right: 20px;
}

.sideB {
 float: right;
 width: 50%;
 padding-left: 20px;
}

