
@charset "UTF-8";

*{
    margin:0;
    padding:0;
}

body{
    /*font-family: Arial, Helvetica, sans-serif;*/
    font-family: HGMaruGothicMPRO, Arial, Helvetica, sans-serif;
    background-color:#ffffff;
    /*font-size:13px;*/
    font-size:12px;
}

table.container{
    text-align:left;
    background-color:white;
    /* margin:0 30px; */
    border:0;
    width:95%;
}
table.container td{
    border:0;
    vertical-align:top;
}

.require{
    color:red;
}

.small{
    font-size: 11px;
}

em {
    font-size:13px;
    font-weight:bold;
    color:#333399;
    font-style:normal;
}

strong{
    font-size:15px;
    font-weight:bold;
    color:#ff00ff;
}

hr{
    border: 1px solid #4a4252;
    margin:15px 0;
}

.lfloat{
    float:left;
}

.clear{
    clear:both;
}
.right{
    text-align:right;
}
.button{
    margin-top:5px;
    margin-left:300px;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
}

div.lfloat img{
    margin-bottom:3px;
}


/* for navi */


.sidemenu{
    font-size:14px;
    width:150px;
}
.sidemenu-title{
    margin:10px 2pt 0 2pt;
    width:144px;
    height:20px;
    background:url(img/side-title.png) no-repeat;
}

h5{
    margin:2px auto 0 15px;

    color:#eeeeee;
    font-size:13px;
}
.side-cate{
    width:142px;
    margin:5px 2pt 20px 2pt;
    background-color:#F5F5F5;
    /*border:1px solid #cccccc;*/
    border:1px solid #87B500;
}
.sidemenu ul {
    margin-left: 15px;
}
.sidemenu li{
    margin:5px;
    list-style-image: url(img/arrow.png);
    /* border-bottom: 1px dashed gray; */
}
.sidemenu li a{
    color: #555555;
    text-decoration: none;
}
.sidemenu li a:hover{
    color:#FF9900;
    text-decoration: underline;
}

td.main{
    width: 100%;
    color: #443322;
    padding-bottom:15px;
    text-align:left;
}
.main p{
    margin:5px 5px 10px 15px;
    line-height: 1.3em;
}

.main ul{
    margin-left:25px;
    margin-right:5px;
}
.main ul li{
    list-style-type: disc;
    list-style-position: inside;
}
.main ol{
    margin-left:40px;
    margin-right:5px;
}
.main ol li{
    list-style-position: inside;
    margin: 0 0 15px 0;
}
.main a {
    color: #3D6614; /*#115;*/
    text-decoration: none;
}
.main a:hover {
    color: #FF9900; /*#633;*/
    text-decoration: underline;
}
.main a:visited {
    color: #c97700;
}

.main .mini_menu{
    margin-bottom:5px;
    margin-left:50px;
}

h1{
    color:#334455;
    font-size:15px;
    /* background:url(img/h1.png) no-repeat; */
    height:20px;
    padding:7px 0 0 5px;
    margin-top:5px;
    margin-left:10px;
    border-left: 13px solid #3d5435;/*#4a4252;*/
    /*margin:10px;*/
}

h2{
    margin:10px 0 15px 10px;
    font-size:14px;
    color:#666;
    border-bottom:1px dotted #aaa;
    width:300px;
}

h3 {
    margin: 5px 0 5px 10px;
    padding-left: 0.5em;
    font-size: small;
    color: #444;
    border-left: 10px solid #66a;
}	

h4{
    color:#699669;
    font-size:13px;
    margin:10px 0 5px 20px;
}




img{
    border:0;
}

.main table{
    margin-left:25px;
    font-size:12px;
    background-color:#fff;
    /*border:1px solid #ccccff;*/
    border: none;
}

.main table th, .main table td {
    border: 2px solid #99cc00;
}

.main table th{
    padding:0.2em;
    background-color: #339933;/*#eee;*//*#f0f0c8;*//*#EEE5ED;*/
    color: #efefef;/*#777777;*//*#8B7D6B;*/
    /*border:1px dotted #ccccff;*/
    text-align:center;
}

.main table td{
    padding:0.2em;
    /*border:1px dotted #ccccff;*/
    background-color:#fafafa;
}
.main table td.remark{
    font-size:11px;   
}
.main table th.none, .main table td.none {
    background-color: transparent;
    border: none;
}
table td.h{
    padding:0.2em;
    background-color:#EEEEEE;
    color:#777777;
    font-weight:bold;
}


/* header */
table.container td.header{
    border-bottom:2px solid #3d5435;/*#4a4252;*/
    color:#aaaaaa;
    height:60px;
}

.header a {
    color:#aaaaaa;
}
.header a:hover {
    color:#333333;
    text-decoration: underline;
}
.header .logo{
    height:105px;width:300px;float:left;
}
.header .sub_menu{
    text-align:right;
    height: 105px;
    position: relative;
    margin-left: 370px;/* ロゴ画像に合わせる */
}
.header .sub_menu .banner {
    position: absolute;
    right: 0;
    bottom: 0;
}



/* footer */	
td.footer{
    /*background-color:#d0d0d0;*/
    background-color: #c9ceaa;
    text-align:right;
    font-size: 11px;
    height:30px;
}

td.footer a {
    color: #666666;
    text-decoration: none;
}
td.footer a:hover {
    text-decoration: underline;
}

div.ads{
    margin: auto;
    width:120px;
}

/* width */
.wmax550{
    max-width:550px;
}
.w750 {
    width: 750px;
}
.w670 {
    width: 670px;
}
.w650 {
    width: 650px;
}
.w550 {
    width: 550px;
}
.w500 {
    width: 500px;
}
.w450{
    width:450px;
}
.w400{
    width:400px;
}
.w350{
    width:350px;
}
.w300{
    width:300px;
}
.w250{
    width:250px;
}
.w200{
    width:200px;
}
.w160 {
    width: 160px;
}
.w150{
    width:150px;
}
.w110 {
    width: 110px;
}
.w100{
    width:100px;
}
.w90 {
    width: 90px;
}
.w75 {
    width: 75px;
}
.w50{
    width:50px;
}
.w30{
    width:30px;
}
.w15 {
    width: 15px;
}
.w90p{
    /*width:90%;*/
    width:95%;
}
.w50p{
    width:50%;
}
.w100p{
    width:100%;
}



.notice{
    border-left:5px solid red;
    padding-left:10px;
}
.error {
    border-left: 5px solid red;
    padding-left: 10px;
    color: red;
    font-weight: bold;
}


/* for item.state */
.main td.act00{
    background-color:#aaaaff;
}
.main td.act01{
    background-color:#aaffaa;
}

.main tr.auto td{
    border-top: 2px solid #ffaaaa;
    border-bottom: 2px solid #ffaaaa;
}
.main tr.auto td.check{
    background-color:#ffaaaa;
}

/* for scaffold form  TODO:if change :check sample new*/

.main form p{
    margin:2px;
    padding: 3px;
    zoom: 100%;
}
.main form p:after {
    content: " ";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}


.main form p label, .fieldWithErrors label {
    cursor: pointer;
    display:block;
    width:170px;
    background-color: #eef;
    float:left;
    padding:2px;
    margin-right:2px;
    border:1px solid #87b500;/*#99a;*/
}
.fieldWithErrors label{
    background-color:red;
}
.fieldWithErrors, .main .fieldWithErrors .public {
    /*padding: 2px;*/
    background-color: red;
    display:inline;
    /* display: table; */
}
.formError {
    color:red;
    font-weight:bold;
    display:inline;
}

.main .public {
    background-color: #bfff00;
}

tr.state_class100 td{
    background-color:#aaaaff;
}
tr.state_class200 td{
    background-color:#aaffaa;
}
tr.state_class700 td{
    background-color:#ffaaaa;
}
tr.state_class800 td{
    background-color:#ffffaa;
}
tr.state_class900 td{
    background-color:#dddddd;
}

/* 公開用ページ & ログインページ */
#head {
    width: 920px;
    height: 310px;
    background-image: url("../images/push.jpg");
    background-repeat: no-repeat; /* 背景画像繰り返しなし */
    position: relative;
}
#head #right {
    width: 310px;
    height: 100%;
    right: 15px;
    position: absolute;
    text-align: center;
}
#head #form {
    background-color: #ffffff;
    border: 5px solid #99cc00;
    margin: 5px;
    padding: 5px;
    height: 230px;
}
#head .search select, #head .search input {
    width: 87px;
    background-color: #ccff99;
    font-size: 130%;
}
#head .submit input {
    width: 90px;
    /*height: 30px;*/
    font-size: 130%;
    font-weight: bold;
    background-color: #99cc00;
}
#head #form .message {
    color: #339564;
    font-size: 130%;
    font-weight: bold;
}
#head #form #numberOfStudents {
    margin: 0 auto;
    margin-bottom: 5px;
    width: 180px;
    padding: 3px;
    font-size: 110%;
    border-top: 2px solid #808080;
    border-left: 2px solid #808080;
    border-right: 1px solid #bababa;
    border-bottom: 1px solid #bababa;
}
#head #form p.comment {
    text-align: left;
    padding: 5px 0px;
    margin-bottom: 5px;
    /*  font-size: 95%;*/
    font-size: 100%;
}

#pl_main {
    width: 920px
}
#pl_main .flash {
    border: 4px solid #99cc00;
    margin: 5px;
    padding: 5px;
    font-weight: bold;
}
#pl_main .login {
    width: 300px;
    height: 155px;
    float: left;
    background-color: #ffffff;
    border: 5px solid #99cc00;
    margin: 0px 0px 0px 5px;
    padding: 5px;
}
#pl_main .login form {
    margin: 5px;
}
#pl_main .login label {
    font-weight: bold;
    padding-left: 10px;
}
#pl_main .login input {
    background-color: #ccff99;
    width: 200px;
    font-size: 130%;
}
#pl_main .login .input {
    width: 100%;
    text-align: center;
}
#pl_main .submit {
    width: 100%;
    text-align: right;
}
#pl_main .submit a {
    /*color: gray;*/
    /*text-decoration: none;*/
    font-size: 75%;
}
#pl_main .submit input {
    width: 90px;
    font-size: 120%;
    font-weight: bold;
    background-color: #99cc00;
}
#pl_main .submit .forgetIdPass {
    font-size:140%;
    font-weight:bold;
    color:#21603f;
}
#pl_main .public {
    width: 230px;
    height: 155px;
    float: left;
    background-color: #ffffff;
    border: 5px solid #99cc00;
    margin: 0px 0px 0px 5px;
    padding: 5px;
}
#pl_main .message {
    color: #339564;
    font-size: 110%;
    font-weight: bold;
    text-align: center;
}
#pl_main #rules {
    background-color: #ffffff;
    border: 5px solid #99cc00;
    margin: 5px 5px 0px 5px;
    padding: 5px;
}
#pl_main #rules .title {
    font-size: 160%;
    font-weight: bold;
    color: #339933;
}
#pl_main #rules .attention {
    padding: 0 1em;
}
#pl_main #rules .description {
    padding: 0 1em 0 3em;
}

#lmain{
    /*float:left;*/
    /*width:270px;*/
    clear:both;
    width:910px;
}
#lmain #flash {
    border: 4px solid #99cc00;
    margin: 5px;
    padding: 5px;
    font-size: 130%;
    font-weight: bold;
}
#lmain table {
    /*border:1px dotted #ccccff;*/
    width:100%;
    text-align: center;
    empty-cells: show;
}
#lmain th, #lmain td {
    border: 4px solid #99cc00;
    padding: 8px 5px;
    /*font-size: 110%;*/
    vertical-align: middle;
}
#lmain th {
    background-color: #ccff99;
}
#lmain td {
    font-weight: 600;
}
#lmain .detail { /* 開催詳細セル */
    text-align: left;
    width: 300px;
}
#lmain .date { /* 開催日時セル */
    width: 120px;
}
#lmain .place, #lmain .address {
    width: 130px;
}
#lmain .instructor { /* インストラクターセル */
    width: 110px;
}
#rlinks {
    float: right;
}

/* 公開中の講習会一覧 */
#lmain-part{
    clear:both;
    width:560px;
}
#lmain-part #flash {
    border: 4px solid #99cc00;
    margin: 5px;
    padding: 5px;
    font-size: 130%;
    font-weight: bold;
}
#lmain-part table {
    width:100%;
    text-align: center;
    empty-cells: show;
}
#lmain-part th, #lmain-part td {
    border: 4px solid #99cc00;
    padding: 8px 5px;
    /*font-size: 110%;*/
    vertical-align: middle;
}
#lmain-part th {
    background-color: #ccff99;
}
#lmain-part td {
    font-weight: 600;
}
#lmain-part .date,#lmain-part .place {
    width: 30%;
}

#lmain-part .address {
    width: 40%;
}