@import url("../fonts/css/ibm-plex-sans-jp.min.css");

body {
    color:              #000000;
	background:		    var(--body-background);
	font-family:		'IBM Plex Sans JP',
                        -apple-system,
				    	BlinkMacSystemFont,
					    'Hiragino Sans',
			    		'Hiragino Kaku Gothic ProN',
				    	'游ゴシック  Medium',
					    meiryo,
					    sans-serif;
    -webkit-user-select:            none;
    -webkit-tap-highlight-color:    transparent;
    -webkit-touch-callout:          none;
}

a {
    color:              #000000;
	text-decoration:	none;
}

.header-table {
    border-style:       solid none;
    border-width:       1px;
    border-color:       #aaaaaa;
    margin-bottom:      10px;
    width:              100%;
}

.header-cell {
    width:              120px;
    text-align:         right;
    padding-right:      20px;
    font-size:          medium;
    vertical-align:     bottom;
}

.header-title {
    width:              auto;
    font-size:          x-large;
    vertical-align:     center;
}

.header-logo {
    height:             32px;
    margin:             5px;
    margin-right:       20px;
    vertical-align:    middle;
}

.link {
    color:              var(--link-color);
    text-decoration:    underline;
}

.logout {
    color:              var(--link-color);
    text-decoration:    underline;
}

.password {
    color:              var(--link-color);
    text-decoration:    underline;
}

.tab-table {
    border:             none;
    width:              100%;
}

.tab-cell {
    border:             none;
    border-right:       solid 1px #dddddd;
    border-bottom:      solid 1px #aaaaaa;
    padding:            2px 0px;
    background:         #e0e0e0;
    text-align:         center;
    font-size:          medium;
    width:              100px;
}

.tab-cell a {
    display:            block;
    width:              100%;
    color:              #777777;
}

.tab-cell:hover {
    background:         #cccccc;
}

.tab-cell:active {
    background:         #cccccc;
}

.action-table {
    border:             none;
}

.action-cell {
    border:             none;
    padding:            0px 5px;
}

.footer-panel {
    margin-top:         50px;
}

.footer-table {
	position:		    fixed;
    z-index: -1;
	left:		        5px;
	bottom:		        5px;
}

.footer-table {
    width:              80%;
}

.footer-cell {
    border:             none;
    padding:            0px;
    width:              80%;
}

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

.list-row {
	font-weight:		normal;
}

.list-button, .detail-button {
    display:            block;
    min-width:          80px;
    padding:            5px 10px;
    margin:             0px;
    text-align:         center;
    border:             none;
    background:         var(--ibm-blue);
    color:              #ffffff;
	font-weight:		bold;
    border-radius:      5px;
    cursor: pointer;
}

.list-button:hover, .detail-button:hover {
    background:         var(--ibm-blue-hover);
}

.list-button:active, .detail-button:active {
    background:         var(--ibm-blue-hover);
}

.list-button-away {
    display:            block;
    pointer-events:     auto;
    min-width:          80px;
    padding:            5px 10px;
    margin:             0px;
    text-align:         center;
    border:             none;
    background:         #888888;
    color:              #ffffff;
	font-weight:		bold;
    border-radius:      5px;
}

.list-button-active {
    display:            block;
    pointer-events:     auto;
    min-width:          80px;
    padding:            5px 10px;
    margin:             0px;
    text-align:         center;
    border:             none;
    background:         var(--ibm-blue);
    color:              #ffffff;
	font-weight:		bold;
    border-radius:      5px;
}

.list-button-active:hover {
    background:         var(--ibm-blue-hover);
}

.list-button-active:active {
    background:         var(--ibm-blue-hover);
}

.list-button-away:hover {
    background:         #444444;
}

.list-button-away:active {
    background:         #444444;
}

.detail-button-cancel {
    display:            block;
    min-width:          80px;
    padding:            5px 10px;
    margin:             0px;
    text-align:         center;
    border:             none;
    background:         #888888;
    color:              #ffffff;
	font-weight:		bold;
    border-radius:      5px;
}

.detail-button-cancel:hover {
    background:         #444444;
}

.detail-button-cancel:active {
    background:         #444444;
}

.list-table {
    border-collapse:    collapse;
}

th.list-row {
    padding:            5px 20px 5px 0px;
    margin:             0px;
	background:	    	#ffffff;
    border:             none;
	border-bottom:      solid 2px #888888;
	text-align:         left;
 	font-weight:		bold;
}

tr.list-row:nth-child(2n of :not(.hidden)) {
	background:		    #ffffff;
}

tr.list-row:nth-child(2n+1 of :not(.hidden)) {
	background:		    #dddddd;
	border:             none;
}

.hidden {
    display: none;
}

tr.list-row:hover {
	background:	    	#aaaaaa;
    border:             none;
}

td.list-row {
    padding:            15px 20px 15px 0px;
    margin:             0px;
    border:             none;
	text-align:         left;
 	font-weight:		normal;
}

.list-column0 {
    width:              32px;
}

.list-column1 {
    width:              6%;
}

.list-column2 {
    width:              12%;
}

.list-column3 {
    width:              18%;
}

.list-column4 {
    width:              24%;
}

.list-column5 {
    width:              30%;
}

.list-column6 {
    width:              36%;
}

.list-column7 {
    width:              42%;
}

.list-column8 {
    width:              48%;
}

.list-column16 {
    width:              96%;
}

.list-date {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              100px;
    height:             32px;
    margin:             20px;
    font-size:          medium;
}

a.list-page {
    margin-left:       20px;
    color:              #000088;
    text-decoration:	underline;
}

.detail-table {
    width:              80%;
}

.detail-label {
	font-weight:		bold;
	margin-top:         10px;
	margin-bottom:      0px;
}

.detail-cell {
    border:             none;
    padding:            0px 5px;
    width:              80%;
}

.detail-text {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              100%;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-date {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              200px;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-time {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              200px;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-select {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              auto;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-radio {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              100%;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-textarea {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              100%;
    height:             160px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-disp {
    border:             none;
    background:         #ffffff;
    width:              100%;
    height:             32px;
    margin-bottom:      10px;
    font-size:          larger;
}

.detail-read {
    display:            block;
    margin-top:         0px;
    margin-bottom:      10px;
}

.detail-link {
    color:              #000077;
}

.detail-file {
    border:             solid 1px #888888;
    background:         #eeeeee;
    width:              300px;
    height:             32px;
    margin-bottom:      10px;
}

.msg-error {
    border:             solid 1px #ff0000;
    background:         #ffaaaa;
    color:              #aa0000;
    width:              400px;
    padding:            10px;
}

.msg-warn {
    border:             solid 1px #ff00ff;
    background:         #ffaaff;
    color:              #aa00aa;
    width:              400px;
    padding:            10px;
}

.msg-info {
    border:             solid 1px #aaaaaa;
    background:         #ffffff;
    color:              #aaaaaa;
    width:              400px;
    padding:            10px;
}

.status-active {
    width:              12px !important;
    height:             12px !important;
    border-radius: 50%;
    border: var(--ibm-blue) 5px solid;
    margin:             auto;
    display:            block;
}

.status-mute {
    width:              24px;
    height:             24px;
    margin:             auto;
    display:            block;
    background-image:   url("/images/mute.png");
    background-size:    24px 24px;
}

.status-away {
    width: 12px !important;
    height: 12px !important;
    border-radius: 50%;
    border: var(--ibm-red) 5px solid;
    margin:             auto;
    display:            block;
    position: relative;
}

.status-away::after {
    content: ' ';
    position: absolute;
    transform: translate(-3px, 2.5px) rotate(45deg);
    border-top: var(--ibm-red) 5px solid;
    width: 16px;
}

.result {
    margin:             auto;
    display:            block;
}


/* ==== for mobile ==== */
.login-mobile {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    align-items: stretch;
}

.login-mobile .top-panel-mobile {
    background-color: var(--ibm-black);
    color: var(--ibm-white);
    height: 10rem;
    vertical-align: middle;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    padding-right: 1em;
    padding-bottom: 0.4em;
}

.login-mobile .top-panel-mobile h2 {
    margin: 0 0 0 1em;
    font-weight: normal;
}

.login-mobile .input-area {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 1em 0.5em 5em 0.5em;
    background-color: var(--ibm-white);
}

.login-mobile .input-area .msg-error, .msg-warn, .msg-info {
    width: auto;
}

.login-mobile .input-area .input-title {
    color: #515151;
    margin-top: 1em;
}

.login-mobile .input-area .detail-text {
    border-style: none none solid none;
    width: auto;
    height: 2.5rem;
    font-size: 0.875rem;
    padding: 0 1rem;
    margin-top: 0.5em;
    margin-bottom: 0.5rem;
    border-radius: 0;
}

.login-mobile .input-area .detail-button {
    height: 2.5rem;
    font-size: medium;
    border-radius: 0;
    -webkit-appearance: none;
}

.login-mobile .input-area .space {
    flex-grow: 1;
}

.login-mobile .input-area .password-area {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: space-between;
    justify-content: space-between;
    align-items: center;
}

.login-mobile .input-area .password-area input {
    flex-grow: 1;
}

.login-mobile .input-area .password-area .eye-container {
    position: absolute;
    right: 1.5rem;
}

.eye {
    width: 13px;
    height: 13px;
    border: solid 1px #000;
    border-radius:  75% 15%;
    transform: rotate(45deg);
}
.eye:before {
    content: '';
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    border: solid 1px #000;
    border-radius: 50%;
    left: 3px;
    top: 3px;
}
.hide-eye:after {
    content: '';
    position: absolute;
    width: 0px;
    height: 21px;
    left: 6px;
    top: -4px;
    border-left: solid 1px #000;
    transform: rotate(90deg);
}
.version {
    font-size: 70%;
    color: #777777;
}