/************************************************************
 * reset
 ************************************************************/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

a, img {
  border: none;
  vertical-align: top;
}

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

th {
  text-align: left;
  font-weight: normal;
}

th, td {
    padding: 1px 5px;
}

body {
  line-height: 1.2;
  -webkit-text-size-adjust: none;
}

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

li {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
  margin: 0;
  padding: 0;
}

input, select, textarea {
  font-size: 105%;
}

ul, ol, li {
  list-style-position: outside;
  vertical-align: bottom;
}

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

p {
    margin: 10px;
}


/************************************************************
 * common style
 ************************************************************/
body, select, textarea, th, td, li, a, input {
  font-family: 'メイリオ','meiryo','ＭＳ Ｐゴシック','MS P Gothic','ヒラギノ角ゴ Pro','Hiragino Kaku Gothic Pro','Helvetica','sans-serif';
}


/************************************************************
 * site header
 ************************************************************/

.site_header_container {
    background-size: 100%;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(86%, #ffffff), color-stop(87%, #fdfdfd), color-stop(100%, #e2e8dd));
    background-image: -moz-linear-gradient(top, #ffffff, #ffffff 86%, #fdfdfd 87%, #e2e8dd);
    background-image: -webkit-linear-gradient(top, #ffffff, #ffffff 86%, #fdfdfd 87%, #e2e8dd);
    background-image: linear-gradient(to bottom, #ffffff, #ffffff 86%, #fdfdfd 87%, #e2e8dd);
    border-bottom: 1px solid #e2e8dd;
}

.site_header {
    width: 950px;
    margin: auto;
    padding: 15px 0 10px;
}

@media screen and (max-width:949px) {
    .site_header {
        width: 100%;
        overflow: hidden;
    }
}

/************************************************************
 * body
 ************************************************************/

.contents {
    width: 950px;
    margin: 0 auto;
    text-align: left;
}

@media screen and (max-width:949px) {
    .contents {
        width: 100%;
        overflow: hidden;
        padding:0 10px;
        box-sizing: border-box;
    }
}

/************************************************************
 * site footer
 ************************************************************/

.site_footer_container {
    line-height: 1.6;
    background-color: #6BA439;
    border-top: 20px solid #48890F;
}

.site_footer {
    width: 950px;
    margin: 0 auto;
    padding: 30px 0;
}
@media screen and (max-width:949px) {
    .site_footer {
        width: 100%;
        overflow: hidden;
    }
}

/************************************************************
 * title
 ************************************************************/

h1 {
    margin: 10px 0;
    padding-left: 10px;
    font-size: 18px;
    font-weight: bold;
}

h2 {
    margin: 10px 0;
    padding: 8px 0 5px 8px;
    line-height: 1;
    border-left: 5px solid #6FBA2C;
    font-size: 16px;
    font-weight: bold;
    color: #358D23;
}

.section-header01 {
    postion: relative;
    margin: 10px 0;
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: 2px solid #DDDDDD;
    background-size: 100%;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(2%, #ffffff), color-stop(3%, #eeeeee), color-stop(40%, #ffffff));
    background-image: -moz-linear-gradient(top, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
    background-image: -webkit-linear-gradient(top, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
    background-image: linear-gradient(to bottom, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
}

.section-header02 {
    line-height: 1;
    border-top: 4px solid #6FBA2C;
    background-size: 100%;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(2%, #ffffff), color-stop(3%, #eeeeee), color-stop(40%, #ffffff));
    background-image: -moz-linear-gradient(top, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
    background-image: -webkit-linear-gradient(top, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
    background-image: linear-gradient(to bottom, #ffffff, #ffffff 2%, #eeeeee 3%, #ffffff 40%);
    margin: 10px 0;
    padding: 13px 10px;
    font-size: 13px;
    font-weight: bold;
    color: #666666;
    border: 1px solid #FFFFFF;
}

.section-header03 {
    position: relative;
    border-top: 3px solid #6FBA2C;
    margin: 10px 0;
    padding: 15px 0;
    -moz-box-shadow: 0 3px 10px #D9D9D9;
    -webkit-box-shadow: 0 3px 10px #D9D9D9;
    box-shadow: 0 3px 10px #D9D9D9;
}


/************************************************************
 * margin
 ************************************************************/

.margin_top10 {
    margin-top: 10px;
}

.margin_right10 {
    margin-right: 10px;
}

.margin_bottom10 {
    margin-bottom: 10px;
}

.margin_left10 {
    margin-left: 10px;
}

.margin_left_right10 {
    margin: 0 10px;
}

.margin_left_right20 {
    margin: 0 20px;
}

/************************************************************
 * padding
 ************************************************************/

.padding_box10 {
    padding: 10px;
}

.padding_box_top_bottom10 {
    padding: 10px 0;
}

.padding_box_left_right10 {
    padding: 0 10px;
}

.padding_box20 {
    padding: 20px;
}

.padding_box_top_bottom20 {
    padding: 20px 0;
}

.padding_box_left_right20 {
    padding: 0 20px;
}

/************************************************************
 * partition
 ************************************************************/

.height_block10 {
    height: 10px;
}

.height_block20 {
    height: 20px;
}

.border_height1 {
    background-color: #EFEFEF;
    height: 1px;
}

/************************************************************
 * button
 ************************************************************/

.btn_base {
    display: block;
}
.btn_base:hover {
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}
.btn_base a {
    display: block;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
}

.button01 {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: #dddddd 0 -4px 0 inset;
    -webkit-box-shadow: #dddddd 0 -4px 0 inset;
    box-shadow: #dddddd 0 -4px 0 inset;
    border: 1px solid #999999;
    margin: 10px 0;
    height: 46px;
}
.button01 a {
    color: #263C2A;
    font-size: 14px;
    line-height: 1;
    padding: 15px 0;
}

.button02 {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: #dddddd 0 -4px 0 inset;
    -webkit-box-shadow: #dddddd 0 -4px 0 inset;
    box-shadow: #dddddd 0 -4px 0 inset;
    border: 1px solid #999999;
    margin: 10px 0;
    height: 30px;
}
.button02 a {
    font-size: 14px;
    color: #263C2A;
    padding-top: 8px;
}

.button03 {
    background-color: #61aa12;
    height: 56px;
    box-sizing: border-box;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    border-bottom: 4px solid #509407;
    margin: 10px 0;
}
.button03 a {
    color: #ffffff;
    font-size: 14px;
    padding-top: 18px;
}

.button04 {
    display: block;
    margin: 10px 0;
    padding: 0;
    border: 1px solid #61aa12;
    border-radius: 4px;
}
.button04 a {
    display: block;
    padding: 10px;
    color: #61aa12;
    text-align: center;
    font-weight: bold;
    text-decoration: none;
}
.button04 a:hover {
    background-color: #e2ffc4;
    border-radius: 4px;
}
.link_bar {
    display: flex;
    justify-content: space-between;
}
.link_bar div {
    width: 100px;
}


/************************************************************
 * form
 ************************************************************/
select {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    -webkit-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    border: 1px solid #DADADA;
    padding: 5px;
    font-size: 14px;
}

textarea {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    -webkit-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    border: 1px solid #DADADA;
    padding: 5px;
    font-size: 14px;
    width: 100%;
}

input {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    -webkit-box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    box-shadow: rgba(210, 217, 202, 0.8) 1px 1px 1px, rgba(235, 235, 235, 0.7) 0 -2px 0 inset;
    border: 1px solid #DADADA;
    padding: 5px;
    font-size: 14px;
}

/************************************************************
 * list
 ************************************************************/

.list_container01 {
    width: 200px;
    height: 400px;
    border: 1px solid #E6E6E6;
    -moz-box-shadow: 0 0 2px #CCCCCC, inset 1px 0 0 #FFFFFF;
    -webkit-box-shadow: 0 0 2px #CCCCCC, inset 1px 0 0 #FFFFFF;
    box-shadow: 0 0 2px #CCCCCC, inset 1px 0 0 #FFFFFF;
}

.thumbnail_conainer {
    margin-right: 10px;
    float: left;
}

.list_body {
    font-size: 0.75rem;
    word-break: break-all;
}




/************************************************************
 * table
 ************************************************************/
table.prnt_table_width_blue {
    border: solid 1px #FFFFFF;
    border-collapse: separate;
    border-spacing: 2px;
    table-layout: fixed;
    width: 100%;
    font-size: small;
}
table.prnt_table_width_blue th {
    background-color: #afedff;
    color: #000000;
}
table.prnt_table_width_blue tr {
    background-color: #f2fcff;
}
table.prnt_table_width_blue tr.even {
    background-color: #dbf7ff;
}

table.prnt_table_width_green {
    border: solid 1px #FFFFFF;
    border-collapse: separate;
    border-spacing: 2px;
    table-layout: fixed;
    width: 100%;
    font-size: small;
}
table.prnt_table_width_green th {
    background-color: #afffdc;
    color: #000000;
}
table.prnt_table_width_green tr {
    background-color: #f2fff9;
}
table.prnt_table_width_green tr.even {
    background-color: #e5fff3;
}

table.prnt_table_width_pink {
    border: solid 1px #FFFFFF;
    border-collapse: separate;
    border-spacing: 2px;
    table-layout: fixed;
    width: 100%;
    font-size: small;
}
table.prnt_table_width_pink th {
    background-color: #ffafdb;
    color: #000000;
}
table.prnt_table_width_pink tr {
    background-color: #fff4fa;
}
table.prnt_table_width_pink tr.even {
    background-color: #ffe5f3;
}

table.prnt_table_width_yellow {
    border: solid 1px #FFFFFF;
    border-collapse: separate;
    border-spacing: 2px;
    table-layout: fixed;
    width: 100%;
    font-size: small;
}
table.prnt_table_width_yellow th {
    background-color: #fdffaf;
    color: #000000;
}
table.prnt_table_width_yellow tr {
    background-color: #fefff2;
}
table.prnt_table_width_yellow tr.even {
    background-color: #fcffe0;
}

/* task_table */
table.task_table {
    margin: 5px;
    font-size: 0.8rem;
}
table.task_table th {
    background-color: #EEEEEE;
    padding: 10px 3px;
    color: #666666;
}
table.task_table td {
    padding: 10px 3px;
}


/*
 * section
 */
section {
    margin: 5px;
    font-size: 11px;
    text-align: center;
    color: #666666;
}
section .time0000, section .time0030,
section .time0100, section .time0130,
section .time0200, section .time0230,
section .time0300, section .time0330,
section .time0400, section .time0430,
section .time0500, section .time0530,
section .time0600, section .time0630,
section .time0700, section .time0730,
section .time0800, section .time0830 {
    display: none;
}
section ul {
    padding: 10px 3px;
    display: block;
    position: relative;
    width: 100%;
    list-style: none;
    overflow: hidden;
    box-sizing: border-box;
}
section ul.task_table_header {
    background-color: #EEEEEE;
}
section ul.saturday, section ul.sunday {
    background-color: #FFCCCC;
}
section li {
    float: left;
    display: block;
    padding: 10px 3px;
    height: 3em;
    width: 3em;
    margin: 0.2em;
    background: #f5f4f2;
    -webkit-box-shadow: 0 0.05em 0.2em 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.05em 0.2em 0 rgba(0, 0, 0, 0.1);
    border-radius: 0.15em;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    cursor: pointer;
}
section li.selected {
    background: #7febc2;
}
section ul.task_table_header li {
    height: 1.5em;
}

/************************************************************
 * font
 ************************************************************/
font.saturday {
    color: #1E90FF;
}
font.sunday {
    color: #FF0000;
}

pre {
    overflow: auto;
    white-space: pre-wrap;
    max-width: 100%;
    line-height: 1.7;
    margin: 0px 0px 16px;
    margin: 0px 0px 1rem;
    padding: 16px;
    padding: 1rem;
    font-size: 0.8rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    background-color: rgb(248, 249, 249);
    font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;
}
pre.white {
    background-color: #FFF;
}

/************************************************************
 * modal window
 ************************************************************/
.modal_main {
    display: none;
    width: 500px;
    height: 200px;
    margin: 0;
    padding: 20px;
    background-color: #ffffff;
    color: #666666;
    position: fixed;
    z-index: 10;
    border-radius: 5px;
    border: solid 1px #DADADA;
}
.modal_bg {
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
}
.chart-container {
  width: 100%;
  height: 400px;
  position:relative;
}

/************************************************************
 * toggle menu
 ************************************************************/
.toggle_bar {
    position: relative;
    padding: 10px 10px 10px 30px;
    background-color: #DADADA;
}
.toggle_up::before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #AAAAAA;
    border-right: solid 2px #AAAAAA;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 40%;
    left: 10px;
}
.toggle_down::before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #AAAAAA;
    border-right: solid 2px #AAAAAA;
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(135deg);
    top: 40%;
    left: 10px;
}
.invisible {
    display: none;
}