@charset "UTF-8";

html{
  background: #e2e9f2;
  font-weight: 500 100% "Yu Gothic", YuGothic, meiryo, sans-serif ;
  margin: 0;
  padding: 0;
  height: 100%;
  font-size:14px;
  }
body{
  background: #FFF;
  min-height: calc( 100% - 2.5rem) ;
  margin: 1rem;
  padding: 1rem 2rem 3rem 2rem;
  word-break: break-all;
  min-width:860px;
  }

ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0;
}
/*layout*/
h1:first-of-type{
  width:95%;
  color: #057FD7;
  font-size: 1.5rem;
  padding: 1rem 0;
  }
h3{
  color:#356;
  padding:0 10px;
//  border-right:5px solid #356;
  border-left:5px solid #356;
  border-radius: 25px;
}

label input{
  display:none;
  margin-bottom:10px;
}
label {
color: #333; /* ラベルテキストの色を指定する */
background-color: #DDD;/* ラベルの背景色を指定する */
padding: 5px; /* ラベルとテキスト間の余白を指定する */
border: 1px solid #AAAAAA;
}
p#file_uploaded{
  font-size:1rem;
  margin:5px 0;
}

header{
  width:95%;
  margin: .5rem auto;
  }
header nav{
  width:100%;
}
header nav ul{
  margin: .1rem 0;
  list-style-type: none;
  padding-left: 0;
  display:flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap:wrap;
  }
header nav li{
  width:90%;
  display: inline-block;
  margin-right: .5rem;
  margin-bottom: .3rem;
  }
header nav li a{
  width:100%;
  background: #FFF;
  border: 1px solid #057FD7;
  color: #057FD7;
  display: inline-block;
  font-size: 0.9rem;
  padding: .45rem 1rem .3rem 1.5rem;
  position: relative;
  text-decoration: none;
  }
  header nav li:last-child a{
    background:#636363;
    border: 1px solid #333333;
    color: #ffffff;
  }
header nav li a:before{
  content: "";
  position: absolute;
  border: 7px solid transparent;
  border-left: 7px solid #184a7f;
  left: .65rem;
  top: calc(50% - 6px);
  }

  header nav li:last-child a:before{
    border-left: 7px solid #ffffff;
  }

/*login*/
.loginBox{
  width:50%;
  display: block;
  margin:0 auto;
  border:1px solid #aaf;
  padding:5%;
  }
.loginBox label{
  display: inline-block;
  width: 6rem;
  }
.loginBox div{
  width:50%;
  margin: .5rem auto;
  }
.loginBox div:last-of-type{
  text-align: center;
  }
.loginBox label{
  background-color:#FFF;
  border:0;
  }


/*common*/

h2{
  width:95%;
  min-width:860px;
  border-left: 5px solid #057FD7;
  color: #057FD7;
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0.5rem auto;
  padding-left: 5px;
  }
h4{
  margin:0;
  font-size:0.7rem;
}
a{
  color:#057FD7;
}

a:hover{
  opacity: .7;
  }

p{
  font-size: .8rem;
  margin: 0 0 0 .75rem;
}
p.attention{
  color: firebrick;
}

table{
	border-collapse: collapse;
  margin: .75rem 0;
  font-size: .8rem;
}
table.scroll{
  display: flex;
  flex-wrap: wrap;
  overflow: auto;
  position:relative;
  max-height: 460px;
}
th,td{
	border: solid 1px #333;
  padding: .25rem;
}
th{
  background: #4d7298;
  color: #ffffff;
  min-width:70px;
  }

table.requester_list th,
table.requester_list td{
  padding:3px;
  font-size: .7rem;
  }
/*  重複注意のtr黄色い背景も消してしまっていたのでとりあえずコメントアウト
  td{
  background: #ffffff;
    }*/
th.sticky{
  position: sticky;
  top: 0;
}
th.sticky:before{
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
    border: 1px solid #ccc;
  }
  .delete_th{
    min-width: initial;
    width:20px !important;
  }
th.long_th{
  min-width:240px;
}
th.name{
	min-width: 80px;
}
th.school{
	min-width: 100px;
}
th.course{
	min-width: 150px;
}
th.shiryo{
	min-width: 100px;
}
th.gender{
  min-width:20px;
}
.nav{
  width:95%;
  min-width:860px;
  margin:0 auto;
	font-size: .8rem;
}

.head_ttl{
  background: #e2e9f2;
  color: #184a7f;
}
/* common */
.w5{
  width:5%;
}
.w10{
  width:9%;
}
.w15{
  width:14%;
}
.w20{
  width:18%;
}
.w30{
  width:28%;
}
.w35{
  width:30%;
}
.w40{
  width:39%;
}
.w50{
  width:49%;
}
.w60{
  width:59%;
}
.w70{
  width:69%;
}
.w80{
  width:79%;
}
.w90{
  width:89%;
}
.w100{
  width:98%;
}
.txtclr_bl{
	color:#057FD7;
}
.txtclr_yllw{
	color:#FFC000;
}
.txtclr_rd{
	color:#FF0000;
}

.uline{
  border-bottom:1px dotted #AAA;
  padding-bottom:1%;
}
.menu{
  width:20%;
  display:inline-block;
  vertical-align: top;
  padding-right:5%;
}
.mainpanel{
  width:70%;
  display:inline-block;
  margin:0 auto;
/*  padding-left:5%; */
}
.entrypanel{
  width:100%;
  min-width:600px;
  border:1px solid #CCC;
  padding:1%;
}
.entrypanel ul{
  width: 100%;
}
.entrypanel ul li{
  width: 25%;
  display:inline-block;
  padding:1%;
  vertical-align: top;
}
.entrypanel ul li:nth-child(2n){
  width: 70%;
  display:inline-block;
}
.entrypanel ul li input{
  width:100%;
  height:25px;
  border:1px solid #AAA;
}
.entrypanel ul li select{
  width:25%;
  height:27px;
  border:1px solid #AAA;
}
.entrypanel ul li textarea{
  width:100%;
  height:500px;
  border:1px solid #AAA;
}
.entrypanel ul li img.newsimg{
  width:100%;
}

.btn{
    width:30%;
}
.sbmtbtn{
  width:100%;
  text-align:center;
  min-width:6rem;
}
.divbtn{
  padding:3px;
  background-color:#DDD;
  border:1px solid #BBB;
  text-align: center;
}
.fixedbtns{
  width:99%;
  border:1px solid #666;
  background-color:#FFF;
  position: fixed;  
  bottom:0.5%;
  left:0.5%;
  z-index:9999;
  box-shadow: 20px 20px 20px 20px rgba(0, 0, 0, .2);
}
.fixedbtns ul{
  width:100%;
}
.fixedbtns ul li{
  display:inline-block;
  padding:1%;
}
.fixedbtns ul li button{
  width:150px;
  height:25px;
  background-color: #EEE;
  border:1px solid #666;
}
.fixedbtns ul li:nth-child(1){
  width:48%;
  text-align:right;
}
.fixedbtns ul li:nth-child(1) button{
  width:150px;
}
.fixedbtns ul li:nth-child(2){
  width:22%;
  text-align:left;
}
.fixedbtns ul li:nth-child(2) button{
  width:150px;
  background-color: #CCC;
}
.fixedbtns ul li:nth-child(3){
  width:22%;
  text-align:center;
}
.prvwbtn{
  width:150px;
  height:25px;
  display:inline-block;
  border:1px solid #AAA;
  text-align:center;
}
.newslst{
  width:100%;
}
.newslst ul{
  width:100%;
}
.newslst ul li{
  padding:1%;
}
.newslst ul li.lstdate{
  width:15%;
  display:inline-block;
}
.newslst ul li.lstttl{
  width:35%;
}
.newslst ul li.lstbtn{
  width:12%;
}
.entrypanel ul li .categorybox{
  width:100%;
}
.entrypanel ul li .categorybox li:nth-child(1){
  width:70%;
  display:inline-block;
}
.entrypanel ul li .categorybox li:nth-child(2){
  width:25%;
  display:inline-block;
}
.entrypanel ul li .categorybox li button{
  width:100%;
  display:inline-block;
}
.entrypanel ul li .categorybox li select{
  width:100%;
}

/* 以下モーダルCSS */
/*モーダルを開くボタン*/
.modal-open{
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 50%;
  left: 50%;
  width: 300px;
  height: 50px;
  font-weight: bold;
  color: #fff;
  background: #000;
  margin: auto;
  cursor: pointer;
  transform: translate(-50%,-50%);
}
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index:9998;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
  opacity: 1;
  visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 250px;
  width: 90%;
  right:-30%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: -40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.category-title{
  width:100%;
  height:2rem;
  border:0px solid #F00;
  background-color: #CCC;
  text-align: center;
  vertical-align: middle;
  padding-top:0.8rem;
}
.modal-content{
  background: #fff;
  text-align: left;
  padding: 30px;
  height:250px;

}
#category-list{
  widdth:100%;
  margin-bottom:1rem;
}
#category-list li{
  width:60%;
  display:inline-block;
  border:1px solid #CCC;
  border-right:0;
  padding:1%;
}
#category-list li:nth-child(2n){
  width:30%;
  display:inline-block;
  text-align:right;
  border-left:0;
  border-right:1px solid #CCC;
  padding-right:5%;
}
.ctgrybtns{
  width:80%;
  margin:0;
  margin-top:2rem;
  position:absolute;
  bottom:1rem;

}
.ctgrybtns div{
  width:42%;
  height:1.5rem;
  display:inline-block;
  margin-top:1rem;
  margin-right:5%;
  padding-top:0.2rem;
  text-align:center;
  border:1px solid #CCC;

}
.ctgrybtns div:nth-child(2){
  border:1px solid #666;
}
#categorybox_input{
  width:96%;
  height:1.5rem;
  border:1px solid #CCC;
}
#ctgry_delbtns{
  width:80%;
  margin:0;
  margin-top:5rem;
  position:absolute;
  bottom:1rem;

}
#category_delmsg{
  margin-top:30%;
}
#ctgry_delbtns div{
  width:44%;
  height:1.5rem;
  display:inline-block;
  margin-top:1rem;
  margin-right:5%;
  padding-top:0.2rem;
  text-align:center;
  border:1px solid #CCC;
}
#ctgry_delbtns div:nth-child(2){
  border:1px solid #666;
}



