﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification\ 
for details on configuring this project to bundle and minify static web assets. */
body {
    padding-top: 0px;
    padding-bottom: 0px;
    padding-left: 3px;
    padding-right: 3px;
    background-color: #ffffff;
}

/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}

/* Carousel */
.carousel-caption p {
    font-size: 20px;
    line-height: 1.4;
}

/* Make .svg files in the carousel display properly in older browsers */
.carousel-inner .item img[src$=".svg"] {
    width: 100%;
}

/* AboutLogo */
.aboutlogo {
    width: 40px;
}

/* ナビゲーションバーの余白 */
.container-fluid {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 20px;
    padding-right: 20px;
}

/* 非表示用 */
.unshown {
    display: none;
}

/* スクロールバー付き要素 */
.scrollable {
    overflow: auto;
}

/* 地味なリンク用 */
.soberlinq {
    color: dimgray;
}

/* ヘッダ */
.header-background {
    height: 50px;
    width: 100%;
    background-color: #b0dff9;
    background-image: url(../images/frame_header.png);
    background-repeat: repeat-x;
    background-size: contain;
}

/* フッタ */
.footer-background {
    height: 100px;
    width: 100%;
    background-color: #b0dff9;
    background-image: url(../images/frame_header.png);
    background-repeat: repeat-x;
    background-size: contain;
}

/* ヘッダ・フッタの基本色と補色 */
.basic-color {
    background-color: #9ed8f6;
}
.complementary-color {
    background-color: #f6bc9e;
}

/* 本部ID */
.id-area {
    text-align: right;
    padding: 10px 10px 10px 10px;
}

/* メニュー(大) */
.menu-large ul {
    display: table;
    margin: 0 auto;
    padding: 0;
    width: 80%;
    text-align: center;
    vertical-align: bottom;
    height: 45px;
}
.menu-large li {
    padding-top:10px;
    display: table-cell;
    min-width: 50px;
}
.menu-large a {
    display: block;
    width: 100%;
    text-decoration: none;
    color: black;
}
.menu-large li:hover {
    color: #E7DA66;
    border-bottom: 3px solid #000000;
}

/* メニュー(小) ハンバーガー */
#ham-open {
    display: inline-block;
    width: 30px;
    height: 30px;
    padding: 10px 0 0 0;
    vertical-align: middle;
}
/* メニュー(小) ハンバーガーの線 */
#ham-open span, #ham-open span:before, #ham-open span:after {
    position: absolute;
    height: 3px;
    width: 25px;
    background: #555;
    content: '';
}
#ham-open span:before {
    bottom: -8px;
}
#ham-open span:after {
    bottom: -16px;
}

/* メニュー(小) 閉じるための薄墨 */
#ham-close {
    display: none;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out;
}

/* メニュー(小) 中身 */
#ham-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    padding: 0;
    background: #fff;
    transition: 0.3s ease-in-out;
    transform: translateY(-100%);
    transform: translateY(-100%);
}
#ham-content ul {
    list-style: none;
margin: 0px;
padding: 0;
}
#ham-content li {
    background: #fff;
    border-bottom: 1px solid #ccc;
    padding: 20px;
}
#ham-content a {
    display: block;
    text-decoration: none;
    color: #000;
}

/* メニュー(小) チェックがついたら表示 */
#ham-input:checked ~ #ham-close {
    display: block;
    opacity: 0.5;
}
#ham-input:checked ~ #ham-content {
    transform: translateX(0%);
    transform: translateX(0%);
}

/* 画面サイズでメニューの表示切替 */
.menu-small {
    display: none !important;
}
.menu-large {
    display: inherit !important;
}
@media screen and (max-width : 768px) {
.menu-small {
    display: inherit !important;
}
.menu-large {
    display: none !important;
}
}

/* メイン */
.main-container {
    min-height: 500px; /* 中身が少ない時の最小高さ */
}

/* 円 */
.circle {
    width: 35px;
    height: 35px;
    border-radius: 20%;
    background: #f8fcfe;
}

/* 明細(共通) */
.tbl-base {
    border-collapse: collapse;
    width: 100%;
}
.tbl-base th, .tbl-base td {
    padding: 0.5em;
}
.tbl-base tr:nth-child(2n+1) {
}
.tbl-base th:first-child {
    font-size: x-large;
    color: white;
}

/* 明細(合計) */
.tbl-summary {
    border-color: #8C3836;
}
.tbl-summary tr:first-child, .tbl-summary th:first-child {
    background: #8C3836;
}
.tbl-summary tr:nth-child(2n+1) {
    background: #F6E5E4;
}
.tbl-summary tr:nth-child(2n) {
    background: #F9EDED;
}

/* 明細(勤怠) */
.tbl-attendance {
    border-color: #B66D31;
}
.tbl-attendance tr:first-child, .tbl-attendance th:first-child {
    background: #B66D31;
}
.tbl-attendance tr:nth-child(2n+1) {
    background: #FEEFE3;
}
.tbl-attendance tr:nth-child(2n) {
    background: #FEF4EC;
}

/* 明細(支給) */
.tbl-pay {
    border-color: #71893F;
}
.tbl-pay tr:first-child, .tbl-pay th:first-child {
    background: #71893F;
}
.tbl-pay tr:nth-child(2n+1) {
    background: #F0F5E6;
}
.tbl-pay tr:nth-child(2n) {
    background: #FAFCF7;
}

/* 明細(控除) */
.tbl-deduction {
    border-color: #357D91;
}
.tbl-deduction tr:first-child, .tbl-deduction th:first-child {
    background: #357D91;
}
.tbl-deduction tr:nth-child(2n+1) {
    background: #E4F3F7;
}
.tbl-deduction tr:nth-child(2n) {
    background: #F6FBFC;
}

/* お知らせ */
.div-letter {
    background: #CBDDFF;
}
.row-letter {
    margin-top: 0px;
    margin-bottom: 0px;
}
.tbl-letter {
    max-width: 600px; /* 幅が広すぎるとキーと値が離れて見にくい */
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 0px;
    margin-bottom: 0px;
}

/* お知らせプレビュー */
.modal {
    position: fixed;
    top: 10%;
    left: 10%;
    transform: translate(-5%,-5%);
    z-index: 2;
    text-align: left;
    background: #fff;
    padding: 30px;
}
.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.65);
    z-index: 1;
}
.modal-open,
.modal-close {
    cursor: pointer;
}
.modal-close {
    margin: 10px;
    color: #00f;
    text-decoration: underline;
}
