@charset "utf-8";

/* -------------------------------------
テーマカラーこの色なので全置換でイメージ変わるよ
#471A7B
----------------------------------------*/


/* ----------------------------------------------
     共通
---------------------------------------------- */

html{
     height:100%;
     font-size:10px;     /* 1rem = 10px */
}
body{
     height:100%;
     font-size:14px;
     font-size:1.4rem;
     color:#505050;
     line-height:1;
}

a{
     color:#20418c;
     text-decoration:none;
}

a:hover{
     color:#aadcf0;
     text-decoration:underline;
}

a.rollover:hover img , .rollover:hover{
     -ms-filter: "alpha( opacity=70 )";
     filter: alpha( opacity=70 );
     opacity: 0.7;
}

button,input,textarea,
body{
     font-family:"メイリオ", Meiryo, "Arimo", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, sans-serif;
/*     font-family:"Arimo", "メイリオ", Meiryo, sans-serif;*/
}

/* -------------------------------------
     各要素の初期設定
---------------------------------------- */
input , select{
     vertical-align:middle;
     border:solid 1px #e4e4e4;
}

input[type=text] ,
input[type=password] ,
 select {
	width:100%;
	padding:2px 5px;
}

textarea{
     resize:vertical;   
     border:solid 1px #e4e4e4;
     width:100%;
     min-height:12rem;
     padding:2px 5px;
}

label{
     display:inline-block;
     margin:0 0 0 0.2em;
     vertical-align:middle;
}
strong{
     font-weight:bold;   
}
del{
     text-decoration:line-through;   
}
img {
     max-width:100%;
}

p,ul,ol,table,dl {
     letter-spacing     : 0.02em;
     line-height:1.5em;
}

/* -------------------------------------
     汎用パーツ
---------------------------------------- */
.mincho{
     /* 明朝体 */   
     font-family: 'Libre Baskerville',"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
     transform: rotate(0.001deg);
     -o-transform: rotate(0.001deg);
     -ms-transform: rotate(0.001deg);
     -moz-transform: rotate(0.001deg);
     -webkit-transform: rotate(0.001deg);
}
.font_l{
     font-size:24px;
     font-size:2.4rem;   
}
.font_ll{
     font-size:28px;
     font-size:2.8rem;   
}
.font_m{
     font-size:14px;
     font-size:1.4rem;   
}
.font_s{
     font-size:12px;
     font-size:1.2rem;   
}
.pc{
     display:block!important;
}
.pc_inline{
     display:inline!important;
}
.sp{
     display:none!important;   
}
.sp_inline{
     display:none!important;   
}
.sp_list {
	 display:none!important;   
}

.tal {
     text-align:left!important;
}
.tar {
     text-align:right!important;
}
.tac {
     text-align:center!important;
}


tr.tal td,
tr.tal th {
     text-align:left!important;
}
tr.tar td ,
tr.tar th{
     text-align:right!important;
}
tr.tac td ,
tr.tac th {
     text-align:center!important;
}

a.line {
	text-decoration : underline;
}

/* -------------------------------------
     レイアウト初期設定
---------------------------------------- */
.header_inner,
.global_nav_inner,
.footer_inner,
.content_inner{
	margin:auto;
	min-width:980px;
	width:90%;
	padding:0 30px;
}


/* -------------------------------------
	header
---------------------------------------- */

.header_wrap {
	position: fixed;
	width:100%;
	z-index:999;
}	

.header{
	background:#471A7B;
}


.header_inner{
	position: relative;
}

.header_logo {
	padding:18px 0;
	font-size : 1.8rem;
}

.header_logo a {
	color:#fff;
}

.global_nav {
	background:#fff;
	border-bottom:solid 1px #e4e4e4;
}

.global_nav_inner {
	margin:auto;
	min-width:980px;
	position: relative;	
}

.global_nav ul {

}

.global_nav li {
	float:left;
	margin:0 50px 0 0;
	font-size:13px;
	font-size:1.3rem;
}

.global_nav li a {
	display: block;
	padding:12px 0;
	font-weight:900;
}



.global_nav li.search_box span.cancel_switch {
	position: absolute;
	right:14px;
	top:14px;
	cursor:pointer;
	font-size:20px;
	font-size:2rem;

}


.global_nav li.logout_link {
	float:right;
	margin: 0;
}




/* -------------------------------------
	footer
---------------------------------------- */
.footer{
	margin:60px 0 0 0 ;
	border-top:solid 20px #471A7B;
	padding:25px 0;
}



/* -------------------------------------
	content
---------------------------------------- */
.content{
	padding:100px 0 0 0 ;
	min-height:calc(100vh - 144px);
}



.one_column{
	
}

.one_column .main{
	
}

.success_mes{
	padding : 10px;
	border : 1px solid #42a7f0;
	background :#b5ddf9;
	border-radius : 10px;
	margin-bottom : 1em;
}


/* -------------------------------------
	err
---------------------------------------- */
.err_box{
	padding : 10px;
	border : 1px solid #ff9d9d;
	background : #ffeded;
	border-radius : 10px;
	margin-bottom : 1em;
}


.error_area {
	background:#fcecec;
	padding:20px;
	margin:20px 0;
}

.error_area li {
	color:#da0000;
	font-size:1.2rem;
}

.error , 
.input_err {
	color:#da0000;
	font-size:1.2rem;
	margin:10px 0 20px 0;
}


/* -------------------------------------
     item
---------------------------------------- */




.notice {
	color:#da0000;
	font-size:1.2rem;
}

.require:after {
	background:#da0000;
	content:"必須";
	font-size: 1.0rem;
	font-weight: 700;
	color:#fff;
	vertical-align: middle;
	padding:2px 5px;
	margin:0 0 0 5px;
}

.col01_block {
     line-height:0;
}

.col01_block li{
     display:inline-block;
     width:96%;
     margin:0 2% 0 0;
	vertical-align: top;
}


.col02_block{
     letter-spacing:-0.40em;
     line-height:0;
}
.col02_block li{
     display:inline-block;
     letter-spacing:normal;
     width:46%;
     margin:0 2%;
	vertical-align: top;
}

.col02_block li:first-child {
	margin:0;
}

.col03_block{
     letter-spacing:-0.40em;
     line-height:0;
}
.col03_block li {
     display:inline-block;
     letter-spacing:normal;
     width:29.3%;
     margin-left:2%;
	vertical-align: top;
}

.col03_block li:first-child {
	margin-left : 0;
}







.col02_btn {
     letter-spacing:-0.40em;
     line-height:0;
}

.col02_btn li{
     display:inline-block;
     letter-spacing:normal;
     width:40%;
     margin:0 5%;
}

.pagetop {
	font-family: 'FontAwesome';
	display:none;
	position:fixed;
	right:50px;
	bottom:30px;
	opacity: 0.7;
	z-index:99;
}
.pagetop a {
	color:#471A7B;
	font-size:50px;
	font-size:5rem;
	display:block;
	text-align:center;
	z-index:99;
	text-decoration: none;
}

.main_title {
	position: relative;
	color:#471A7B;
	font-weight: 700;
	font-size:2.0rem;
	border-bottom:solid 1px #e4e4e4;
	padding:0 0 20px 0;
	margin:20px 0;
}

.inline_title {
	background:#471A7B;
	color:#fff;
	width:auto;
	display:inline-block;
	padding:5px 10px;
	border-radius:4px 4px 0 0 ;
}

.search_area ,.login_area{
	border:solid 1px #471A7B;
	padding:20px;
	margin:0 0 20px 0;

}

.base_area {
}

.base_area .caption {
	background:#bbb;
	color:#fff;
	padding:0.78125% 1.5625%;
	font-weight: 700;
}

.base_area .caption .note {
	font-size:1.2rem;
	float:right;
}

.base_area dl {
	color:#2c67a5;
	margin:0 0 10px 0;
}

.base_area dt {
	margin:0 0 10px 0 ;
}

.base_area dd {
	/*background:#eee;*/
}
.base_area p.note001 {
	margin:0 0 1.5625% 2% ;
}


.base_table {
	width:100%;
	color:#2c67a5;
}

.base_table caption {
	background:#bbb;
	color:#fff;
	padding:0.78125% 1.5625%;
	font-weight: 700;
}

.base_table tr.changerow {
	background:#b5ddf9;
}

.base_table th , 
.base_table td {
	background:#eeeeee;
	padding:10px 20px;
	border:solid 1px #fff;
}

.base_table th {
	width:25%;
	vertical-align: middle;
	background:#dfdfdf;
	position:relative;
}

.base_table td {
	width:75%;
}

.base_table td p {
	margin:5px 0;
	font-size:1.2rem;

}



.base_table_horizon {
	width:100%;
	color:#2c67a5;
}

.base_table_horizon caption {
	background:#bbb;
	color:#fff;
	padding:0.78125% 1.5625%;
	font-weight: 700;
}

.base_table_horizon tr.changerow td {
	background:#b5ddf9;
}

.base_table_horizon th , 
.base_table_horizon td {
	background:#eeeeee;
	padding:10px;
	border:solid 1px #fff;
}

.base_table_horizon th {
	width:auto;
	vertical-align: middle;
	background:#dfdfdf;
	position:relative;
}

.base_table_horizon td {
	width:auto;
}

.base_table_horizon .res_icon_cell {
	width:40px;
}

.base_table_horizon .res_mini_cell {
	width:80px;
}

.base_table_horizon .res_middle_cell {
	width:120px;
}
.base_table_horizon .res_fix_cell {
	width:200px;
}


td input[type=text].mini_cell ,
td input[type=password].mini_cell ,
td select.mini_cell {
	width:20%;
}

td input[type=text].short_cell ,
td input[type=password].short_cell ,
td select.short_cell {
	width:30%;
}

td input[type=text].middle_cell ,
td input[type=password].middle_cell ,
td select.middle_cell {
	width:45%;
}

td input[type=text].long_cell ,
td input[type=password].long_cell ,
td select.long_cell {
	width:90%;
}

td input[type=text].auto ,
td input[type=password].auto ,
td select.auto {
	width:auto;
}


.base_btn {
	display: block;
	background:#555;
	width:50%;
	text-align:center;
	border-radius:4px;
	color:#fff;
	margin:0 auto;
	line-height: 50px;
	cursor: pointer;
	font-weight: 700;
}

.base_btn a {
	display: block;
	color:#fff;

}

.base_btn.inline {
	display: inline;
	line-height: 1.5;
	padding:2px 10px;
}

input.base_btn.inline02 {
	display: inline;
	width:49%;
}


.return_btn {
	display: block;
	background:#2c67a5;
	width:160px;
	text-align:center;
	border-radius:4px;
	color:#fff;
	margin:20px 0 ;
	line-height: 30px;
	cursor: pointer;
	position: relative;
}

.return_btn:before {
	content:"\f0d9";
	font-family: "FontAwesome";
	position: absolute;
	top:0;
	left:12px;
	font-size:1.7rem;
	color:#fff;

}

.return_btn a {
	color:#fff;
}

.base_btn:hover , 
.return_btn:hover {
	-ms-filter: "alpha( opacity=70 )";
	filter: alpha( opacity=70 );
	opacity: 0.7;	
}

.base_btn.full {
	width:100%;
}

.regist_btn {
	background:#e69833;
}

.edit_btn {
	background:#5cc451;
}

.delete_btn {
	background:#555;
}

.search_btn {
	background:#3cbce6;
}

.clear_btn {
	background:#999;
}


.edit_btn_area {
	width : 100%;
}
.edit_btn_area li {
	display : inline-block;
}
.edit_btn_area li.del_area {
	width : 20%;
}
.edit_btn_area li.del_area input.base_btn.inline02.delete_small {
	width : 80%;
	min-width : 70px;
}
.edit_btn_area li.edit_area {
	width : 78%;
	text-align : right;
}

.edit_btn_area li.edit_area input {
	width : 50%;
}



/* -------------------------------------
	pager
---------------------------------------- */

.pager {
	width:50%;
	position: relative;
	left:50%;
	margin:30px 0;
}

.pager ul {
	margin:0 auto;
	position: relative;
	left:-50%;
	text-align: center;
}

.pager li {
	position: relative;
	
	display:inline-block;
	text-align:center;
	min-width:34px;
	margin:0 0 0 5px;
	line-height:30px;
	border:solid 1px #e4e4e4;
}

.pager li.current {
	background:#471A7B;
	color:#fff;
}


.pager li a {
	display:block;
	border:solid 1px #471A7B;

}

.pager .prev {
	float:left;

}

.pager .next {
	float:right;
	margin:0 0 0 1px;
}

.pager li a:hover , 
.pager .prev:hover , 
.pager .next:hover {
	-ms-filter: "alpha( opacity=70 )";
	filter: alpha( opacity=70 );
	opacity: 0.7;
}





/* -------------------------------------
     login
---------------------------------------- */


.login .content_inner{
	 margin:auto;
	 width:40%;
	 min-width : 500px;
}

.login .gnav_switch:before {
	display: none;
}



/* -------------------------------------
     history
---------------------------------------- */

.history_table {
	table-layout: fixed;
	position: relative;
}



.history_table tbody , 
.history_table thead {
	display: block;

}

.history_table tbody {
	max-height:260px;
	overflow-y:scroll;
}

.history_table th , 
.history_table td {
	width:193px;
} 

.history_table th:nth-child(1),  
.history_table td:nth-child(1) {
	width:40px;
	font-size :10px;
	padding-left : 2px;
	padding-right : 2px;
} 
.history_table td:nth-child(1) .base_btn.inline {
	padding : 6px 2px;
}

.history_table th:nth-child(2),  
.history_table td:nth-child(2) {
	width:130px;
} 

.history_table th:nth-child(3),  
.history_table td:nth-child(3) {
	width:130px;
} 

.history_table th:nth-child(4),  
.history_table td:nth-child(4) {
	width:130px;
} 

.history_table th:nth-child(5),  
.history_table td:nth-child(5) {
	width:130px;
} 
.history_table th:nth-child(6),  
.history_table td:nth-child(6) {
	width:calc(1024px - 600px);
} 


/* -------------------------------------
     
---------------------------------------- */

.sort_desc:after ,
.sort_asc:after {
	content:"";
	font-family: "FontAwesome";
	float:right;

}

.sort_desc:after {
	content:"\f0d7";

}

.sort_asc:after {
	content:"\f0d8";

}


.external:after {
	content:"\f08e";
	font-family: "FontAwesome";
}



/* -------------------------------------
     jQuery
---------------------------------------- */

.icon_font {
	font-family: 'FontAwesome';
}

input[type=text].datepicker {
	width:80%;
	margin:0 10px 0 0;
}

.ui-datepicker-trigger {
	font-size:2.4rem;
	background:transparent;
	color:#471A7B;
	vertical-align: middle;
	cursor: pointer;
}

.loadingLayer {
       position:fixed;
       top:0;
       left:0;
       width:100%;
       height:100%;
       background:#000;
       opacity:0.5;
       z-index:9999;
}

.loader {
     position: absolute;
     top:-webkit-calc(100% - 39px) ;
     top:calc(50% - 39px);
     left:-webkit-calc(100% - 39px) ;
     left:calc(50% - 39px);
     z-index:10000;
     border: 11px solid rgba(255, 255, 255, 0.2);
     border-right: 11px solid rgba(255, 255, 255, 0.2);
     border-bottom: 11px solid rgba(255, 255, 255, 0.2);
     border-left: 11px solid #ffffff;
     -webkit-transform: translateZ(0);
     -ms-transform: translateZ(0);
     transform: translateZ(0);
     -webkit-animation: load 1.1s infinite linear;
     animation: load 1.1s infinite linear;
}
.loader,
.loader:after {
  border-radius: 50%;
  width: 78px;
  height: 78px;
}
@-webkit-keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


/* -------------------------------------
     ellipsis
---------------------------------------- */
.ellipsis {
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
}

/* -------------------------------------
     clearfix
---------------------------------------- */
.cf:before,.cf:after,
div:before,div:after,
dl:before,dl:after,
nav:before,nav:after,
section:before,section:after,
header:before,header:after,
footer:before,footer:after,
ul:before,ul:after{
     content:"";
     display:table;
}
.cf:after,
nav:after,section:after,
header:after,footer:after,
ul:after,dl:after,div:after {
     clear:both;
}

.cf,
section,header,footer,nav,
dl,ul,div {
     zoom:1;
}