.maincontent input[type="text"], .maincontent input[type="password"], .maincontent select, .maincontent textarea
{
    border: 1px solid #999;
    padding: 5px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}


/* Styles for validation helpers
-----------------------------------------------------------*/
.field-validation-error
{
    color: #ff0000;
    display: block;
    text-align: left;
    font-weight: bold;
}

.field-validation-valid
{
    display: none;
}

.input-validation-error
{
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}

.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}

.validation-summary-valid
{
    display: none;
}

.red
{
    color: red;
}

.bold
{
    font-weight: bold;
}

.clear
{
    clear: both;
}

/*
.title
{
    display: block;
    float: left;
    text-align: left;
    width: auto;
    border: 2px solid #FF9900;
    padding: 10px;
    border-radius: 10px;
    font-size: 14px;
    background-color: #FFFF99;
}
*/
.title
{
    display: block;
    float: left;
    text-align: left;
    width: auto;
}

.loginDisplay
{
    font-size: 1.0em;
    display: block;
    text-align: right;
    padding: 10px;
    color: black;
}

.loginDisplay a:link
{
    color: black;
}

.loginDisplay a:visited
{
    color: black;
}

.loginDisplay a:hover
{
    color: black;
}

.page
{
    width: 100%;
    margin: 0px;
}

.pagetitle
{
    padding: 10px 10px 10px 10px;
    margin: 5px 5px 5px 5px; /*    background-color: #CCFFFF;*/
    border-radius: 10px; /* CSS3 */
    -moz-border-radius: 10px; /* Firefox */
    -webkit-border-radius: 10px; /* Safari,Chrome */
    border: 2px green solid; /* 枠線の装飾 */
    text-align: center;
    background-color: #FFFF99;
    font-size: X-Large;
}

#page-top
{
    position: fixed;
    bottom: 4px;
    right: 4px;
    padding: 0px;
    margin: 0px;
    z-index: 500;
}

#page-top a
{
    background-color: #666;
    text-decoration: none;
    color: #fff;
    width: 30px;
    text-align: center;
    display: block;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}

#page-top a:hover
{
    text-decoration: none;
    background-color: #999;
}

.footer
{
    color: #4e5766;
    padding: 8px 0px 0px 0px;
    margin: 0px auto;
    text-align: center;
    line-height: normal;
}

*
{
    padding: 0px;
    margin: 0px;
}

.page-box
{
    width: 960px; /*           border: 1px solid #FF9900;*/
    margin: 5px auto;
}

.header-box
{
    border-bottom: 1px solid #FF9900;
    padding: 5px;
}

.left-box
{
    float: left;
    width: 240px;
    font-size: 14px; /*           border-right: 1px solid #FF9900;*/
    border: 1px solid #FF9900;
}

.category
{
    font-size: 14px;
    color: #FFFFFF;
    background-color: #FF9900;
    padding: 5px 5px 5px 5px;
    margin: 4px 2px 4px 2px;
    text-align: center;
}

.top-box
{
    float: left;
    margin: 0 2px 0 2px;
    width: 556px;
    height: 100%; /*           border-left: 1px solid #FF9900;*/
    border: 1px solid #FF9900;
}



.frame
{
    overflow: hidden;
    overflow-x: hidden;
    overflow-y: hidden;
    height: 100%;
    width: 100%;
    position: relative;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
}

.footer-box
{
    clear: both;
    width: 100%;
    background-color: #FFFF99;
    font-size: 12px;
    margin: 0px;
    margin-top: 4px;
    padding: 5px 0px 5px 0px;
    text-align: center;
    border-top: 1px solid #FF9900;
}

.wrapper
{
    float: left;
    margin: 0;
    width: 100%;
    margin-right: -260px;
}

.right-box
{
    float: left;
    width: 240px;
    font-size: 12px;
    border: 1px solid #FF9900;
}

.content-box2
{
    position: relative;
    margin: 0 240px 0 240px;
    border: 2px solid #000;
}
/* 
@media (max-width: 1000px) {
     .wrapper, .content, .content-box2, .right-box {
          float: none;
          margin: 0;
          width: auto;
     }
}
 
@media (max-width: 500px) {
     .wrapper, .content, .content-box2, .left-box {
          float: none;
          margin: 0;
          width: auto;
     }
     .right-box {
          display: none;
     }
}
*/
/*
#footer
{
    color: #999;
    padding: 10px 0;
    text-align: center;
    line-height: normal;
    margin: 0;
    font-size: .9em;
}
*/

.t tr:nth-child(even)
{
    background-color: #F7F7DE;
}
.t tr:nth-child(odd)
{
    background-color: white;
}

.tt
{
    border-collapse: collapse;
    border-spacing: 0;
    border-style: hidden;
    color: black;
    background-color: white;
    border-color: #DEDFDE;
    width: 100%;
}

.tt tr:nth-child(even)
{
    background-color: #F7F7DE;
}
.tt tr:nth-child(odd)
{
    background-color: white;
}

/*
.tt tr
{
    border-style: hidden; 
}
*/
.tt tr td
{
    padding: 4px;
    border-width: 1px;
    border-style: none solid;
}

.tt tr:first-child
{
    border-top: none;
}

.tt tr:last-child
{
    border-bottom: none;
}

.tt td:first-child
{
    border-left: none;
}

.tt td:last-child
{
    border-right: none;
}

.mybutton
{
    text-decoration: none; /* ハイパーリンク時下線を表示しない */
    word-wrap: break-word; /* 文字列を折り返し表示する */
    font-size: x-large; /* 文字サイズ */
    font-family: ＭＳ ゴシック;
    text-align: left; /* 文字配置 */
    font-weight: bold; /* 文字の太さ */
    padding: 5px 5px 5px 5px; /* 余白 */
    color: #fff; /* 文字色を白色 */
    border: 3px solid #FFF; /* 白のボーダー */
    box-shadow: 2px 2px 3px 1px #666; /* ボタンの影 色を#666（グレー） */
    -moz-box-shadow: 2px 2px 3px 1px #666;
    -webkit-box-shadow: 2px 2px 3px 1px #666;
    text-shadow: 1px 1px 2px #000; /* テキストの影 色を#000（黒） */
    background-color: #4f81bd; /* グラデーションの指定 */ /*      background: -moz-linear-gradient(bottom, #36d, #248 50%, #36d);      background: -webkit-gradient(linear, left bottom, left top, from(#36d), color-stop(0.5, #248), to(#36d));     */
    -moz-border-radius: 5px; /* 角丸 */
    -webkit-border-radius: 5px; /* 角丸 */
    border-radius: 5px; /* 角丸 */
}

.mybutton:hover
{
    /* 透明度を20%に指定 */
    opacity: 0.8;
}

.btn
{
    display: inline-block;
    text-align: center;
    text-decoration: none;
    outline: none;
    padding: 10px;
}
.btn::before, .btn::after
{
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}
.btn, .btn::before, .btn::after
{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.btn
{
    position: relative;
    border-radius: 4px;
    color: blue;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-transition: none;
    transition: none;
    text-shadow: 0px 1px 0px #f56778;
}

.btn, .btn:hover
{
    border-bottom: 4px solid #cb5462;
    background-color: #f56778;
    background-image: -webkit-linear-gradient(top, #f997b0, #f56778);
    background-image: linear-gradient(to bottom, #f997b0, #f56778);
    box-shadow: inset 1px 1px 0 #fbc1d0;
}
.btn::before, .btn::after
{
    bottom: -1px;
    left: -1px;
    border: 1px solid #ee8090;
    border-bottom: 1px solid #b84d5a;
    border-radius: 4px;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-transition: none;
    transition: none;
}
.btn::before
{
    bottom: -4px;
    border-top: 0;
    border-radius: 0 0 4px 4px;
    box-shadow: 0 1px 1px 0px #bfbfbf;
}
.btn:hover
{
    background: #f56778;
    background-image: -webkit-linear-gradient(top, #f56778, #f997b0);
    background-image: linear-gradient(to bottom, #f56778, #f997b0);
    color: #913944;
    text-shadow: 0px 1px 0px #f9a0ad;
}
.btn:active
{
    bottom: -4px;
    margin-bottom: 4px;
    border: none;
    box-shadow: 1px 1px 0 #fff, inset 0 1px 1px rgba(0, 0, 0, .3);
}
.btn:active::before, .btn:active::after
{
    border: none;
    box-shadow: none;
}

input.nihongo
{
    ime-mode: active;
}
input.hankaku-eisuu
{
    ime-mode: disabled;
}
textarea.nihongo
{
    ime-mode: active;
}
.telField
{
    ime-mode: disabled;
}
.zipField
{
    ime-mode: disabled;
}
.unitField
{
    ime-mode: disabled;
}
.numberField
{
    ime-mode: disabled;
}

.date-holiday .ui-state-default
{
    background-image: none;
    background-color: #FF9999;
}
.date-saturday .ui-state-default
{
    background-image: none;
    background-color: #66CCFF;
}

#menu ul
{
    margin: 0;
    padding: 0;
    list-style: none;
}

#menu li
{
    display: inline;
    padding: 0;
    margin: 0;
    float: left;
}

#menu li a
{
    display: block;
    border: 1px solid #666;
    background-color: #ccc;
    padding: 3px;
    text-decoration: none;
    color: #333;
    width: 150px;
    margin: 1px;
    text-align: center;
    font-size: 14px;
}
#menu li a:hover
{
    background-color: #2d56be;
    color: #fff;
}

body
{
    background-color: transparent;
}
.data-edit
{
    width: 100%;
    table-layout: fixed;
    box-sizing: border-box;
    border: 1px solid #000;
}

.data-edit > tbody > tr > th
{
    box-sizing: border-box;
    border: 1px solid #000;
    text-align: right;
    background-color: #FFFF99;
    padding: 5px;
    vertical-align: top;
}
.data-edit > tbody > tr > td
{
    box-sizing: border-box;
    border: 1px solid #000;
    text-align: left;
    padding: 5px;
    vertical-align: top;
}
.table-title
{
    width: 100%;
    background: #f4f9fe;
    margin: 4px 0px;
    font-weight: bold;
    font-size: 1.2em;
}
.table-title > tbody > tr > td:nth-child(1)
{
    border-left: 8px solid #d2e9fd;
    text-align: left;
    padding-left: 10px;
}
