@charset "utf-8";

/* CSS information ===================================================

	 file name : basic.css
	style info : テンプレートスタイルシート

=================================================================== */

/*----------------------------------------------------------
/* body サイト全体
----------------------------------------------------------*/
html {
	overflow-y:scroll;
}
body {
	margin:0;
	padding:0;
	color:#000;
	-webkit-text-size-adjust:100%;
}
* {
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
}
legend{
	margin:0px;
}
fieldset{
	margin:10px 0px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* フォント設定
------------------------------------------------*/
body {
    font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}
input, textarea, button {
    font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}

/* リンク設定
------------------------------------------------*/
a:link, 
a:visited {
	#color:#000;
	#text-decoration:underline;
}
a:hover, 
a:active {
	#color:#FF8000;
	#text-decoration:underline;
}

/* ホバー設定
------------------------------------------------*/
.opacity:hover {
	opacity:0.8;
	-moz-opacity:0.8;
	-khtml-opacity:0.8;
	-ms-filter:"alpha(opacity=80)";
	filter:alpha(opacity=80);
	zoom:1;
}

/* CLEARFIX
------------------------------------------------*/
.clearfix:after {
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
.clearfix {
	min-height:1px;
}
* html .clearfix {
	height:1px; /*\*//*/
	height:auto;
	overflow:hidden; /**/
}

/*----------------------------------------------------------
/* bootstrap拡張
----------------------------------------------------------*/
.btn-tag{
	color: #428bca;
	background-color: #ededed;
	border-color: #dddddd;
}

.btn-shadow{
	box-shadow:rgba(0, 0, 0, 0.3) 1px 1px 2px 1px;
}

.btn-default .badge {
  background-color: #999;
}
input[type=radio], input[type=checkbox] {
  margin: inherit;
}
label {
  margin-bottom: inherit;
}
legend {
	  font-size: 16px;
}

.list-group-item-primary{
  color: #fff;
  background-color: #428bca;
}

.list-group-item-success-r{
  color: #dff0d8;
  background-color: #6FB536;
}
.list-group-item-info-r{
  color: #d9edf7;
  background-color: #31708f;
}
.list-group-item-warning-r{
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.list-group-item-danger-r{
  color: #f2dede;
  background-color: #a94442;
}

.list-flow{
	-webkit-box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	-moz-box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	border-radius: 10px;
}
.list-group-item:first-child {
    border-top-right-radius: 10px;
    border-top-left-radius: 10px;
}
.list-group-item:last-child {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}
.list-flow .list-group-item-req:before {
	content:"▼";
	color: red;
	margin-right: 5px;
}
.list-flow .list-group-item-heading{
	font-weight: 500;
	margin:0 -10px 10px -10px;
	padding:2px;
	border-bottom:1px #ddd dotted;
	font-size: 16px;
}

.panel-flow{
	-webkit-box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	-moz-box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	box-shadow: rgba(0,0,0,0.1) 1px 1px 4px 3px;
	border-radius: 10px;
}

/*----------------------------------------------------------
/* .page
----------------------------------------------------------*/
#page {
}

.common-list .list-group-item{
	background: linear-gradient(to bottom,  #ffffff 0%,#f3f3f3 50%,#ededed 51%,#ffffff 100%);
	font-weight: bold;
	color: #FF6600;
	font-size:18px;
}

span.link-icon{
	position:absolute;
	width: 20px;
	height: 20px;
	top:16px;
	right: 10px;
	background:url(../images/arrow_circle.png) no-repeat;
}
/*----------------------------------------------------------
/* .header ヘッダー
----------------------------------------------------------*/
.header {
	width:100%;
}
.header.logoff .menu-left {
	width:65%;
}
.header.logoff2 .menu-left,
.header.logon .menu-left {
	width:45%;
}
.header .menu-left .header-logo {
	padding-top:0px;
	display:block;
	width:100%;
}
.header.logoff .menu-left .header-logo {
	padding-top:18px;
}
.header.logoff .menu-left  h1{
	position:absolute;
	font-size: 85%;
	margin: 0px;
	padding: 2px;
	display:block;
}
.header .menu-left .header-logo img{
	width:100%;
}
.header .menu-right {
	display:block;
	float:right;
	width:55%;
	text-align:right;
	padding-right:3px;
	padding-top:0px;
}
.header.logoff .menu-right{
	width:35%;
	padding-top:0px;
}
.header .menu-right .clearfix{
	#padding-top:10px;
}
.header .menu-right .top-img{
	width:30%;
	display:inline-block;
	margin-right: 10px;
}
.header .count {
	width:100%;
	display:inherit;
	padding: 1px 0 0 3px;
	font-size:75%;
}
.header.logoff .menu-right .menu{
	text-align:right;
	width:100%;
	margin-top: -1px;
}
.header.logoff .menu-right .menu img{
	width:80%;
}
.header.logoff2 .menu-right .menu{
	display:inline-block;
	text-align:right;
	width:45%;
}
.header.logon .menu-right .menu{
	display:inline-block;
	text-align:right;
	width:40%;
}
.header.logoff2 .menu-right .menu img,
.header.logon .menu-right .menu img{
	width:100%;
}

.header .menu-right .save{
	display:inline-block;
	text-align:right;
	width:45%;
}
.header .menu-right .save img{
	width:100%;
}
.header .menu-right .mypage{
	display:inline-block;
	text-align:right;
	width:45%;
}
.header .menu-right .mypage img{
	width:100%;
}
.header .menu-right .logout{
	display:inline-block;
	text-align:right;
	width:40%;
}
.header .menu-right .logout img{
	width:100%;
}

#navi{
	background:url(../images/menu_bg.png) repeat #F0F0F0;
	border-top:1px #CCC solid;
	border-bottom:1px #CCC solid;
	width:100%;
}
#navi .navigation{
	margin:0 auto;
}
#navi .navigation li{
	float:left;
	border-right:1px #CCC solid;
	width:25%;
	position:relative;
}
#navi .navigation li img{
	width:100%;
}

#navi .navigation li .count_circle{
	display:none;
	position:absolute;
	background-color: red;
	border-radius: 10px;
	padding: 0 5px;
	color: white;
	font-size: 9pt;
	font-weight: bold;
	top: -webkit-calc(100% - 22px);
	top: calc(100% - 22px);
	left: -webkit-calc(100% - 22px);
	left: calc(100% - 22px);
}





.error{
	color:red;
	font-weight:bold;
}

.full{
	width:100%;
}

.half{
	width:50%;
}

.ellipsis{
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*----------------------------------------------------------
/* .footer
------------------------------------------------*/
.footer-link{
	background-color: #F0F0F0;
	margin: 10px 0 0 0;
}
.footer-link a{
	display:block;
	padding:5px 20px;
	border-top:1px #CCC solid;
	background:url(../images/arrow.gif) no-repeat  95% center;
}

#footer-area-link{
	background-color: #FFFFFF;
	padding:20px;
}
#footer-area-link a{
	margin: 1px;
	display:inline-block;
	padding:5px 20px 5px 5px;
	border:1px #CCC solid;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
}
#footer-area-link a.area{
	background-color: #F0F0F0;
	width:100%;
	font-weight:bold;
}

footer{
	padding:5px;
	color: #fff;
	background-color: #428bca;
	text-align:center;
}

/*----------------------------------------------------------
/* .js-menu スマホメニュー
------------------------------------------------*/
.js-menu {
	display:none;
	position:absolute;
	top:50px;
	right:5%;
	width:50%;
	margin:0;
	background-color:rgba(255,248,237,1);
	box-shadow:0px 0px 10px rgba(0,0,0,0.6);
	border:2px solid #ff9900;
	border-radius:10px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	z-index:1000;
	overflow:visible;
	#font-size:120%;
}
#index .js-menu {
	top:100px;
}
.js-menu ul {
	padding:0;
	margin:0;
}
.js-menu li {
	padding:10px 15px;
	list-style-type:none;
	border-top: 2px dashed #ff9900;
}
.js-menu li:first-child {
	border-top: none;
}
.js-menu li a {
	margin:0 auto;
	color:#333;
	text-decoration:none;
	font-weight:bold;
}
.sp_menu .menu_close_btn {
	clear:both;
	width:100%;
	font-weight:bold;
	color:#FFF;
	background-color:#555;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	cursor:pointer;
	text-align:center;
}
.js-menu .arrow {
	width: 0;
	height: 0;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	border-bottom: 11px solid rgba(255,248,237,1);
	position:absolute;
	top:-10px;
	right:28px;
	z-index:1001;
}
.js-menu .arrow_border {
	width:0;
	height:0;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	border-bottom: 11px solid #ff9900;
	position:absolute;
	top:-12px;
	right:28px;
	z-index:1000;
}
.sp_menu li span.badge {
	background-color:red;
	display:none;
}


/*----------------------------------------------------------
/* #main メイン
----------------------------------------------------------*/
#main {
	margin:10px auto;
}

#main .page-title{
	font-size:18px;
	border-top:2px solid #3276b1;
	margin: 0 0 5px 0;
	padding:5px ;
}

/*----------------------------------------------------------
/* .navbar
----------------------------------------------------------*/
.navbar{
	min-height: initial;
	padding:5px;
	margin-bottom:5px;
}
.navbar h2{
	font-weight:bold;
	font-size:120%;
	margin:0;
	padding:6px 0 0 0;
	text-align: center;
	line-height: 1.42857143;
}
.navbar .well{
	background-color:white;
	margin-bottom:0;
	padding: 5px 9px;
	border-radius: 3px;
}

/*----------------------------------------------------------
/* .login_modal このページの先頭へ
------------------------------------------------*/
#lean_overlay {
	position: fixed;
	z-index:2000;
	top: 0px;
	left: 0px;
	height:100%;
	width:100%;
	background: #000;
	display: none;
}

#login_modal {
	width: 90%;
	margin-left: 5%;
	padding-bottom: 2px;
	display:none;
    background: #FFF;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	box-shadow: 0px 0px 4px rgba(0,0,0,0.7);
	-webkit-box-shadow: 0 0 4px rgba(0,0,0,0.7);
	-moz-box-shadow: 0 0px 4px rgba(0,0,0,0.7);
}

#login_modal .header { 
	padding: 10px;
	border-bottom: 1px solid #CCC;
	border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-webkit-border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-moz-border-radius-topright: 5px;
	-webkit-border-top-right-radius: 5px;
}

#login_modal .header .title {
	color: #444;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 3px;
}

#login_modal .header p {
	color: #444;
	font-size: 12px;
	margin: 0;
	text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
	text-shadow: none;
}

#login_modal .txt-fld {
	position: relative;
	width: 100%;
	padding: 5px 10px;
	border-bottom: 1px solid #EEE;
	text-align: right;
}

#login_modal .txt-fld label {
	display: block;
	padding-top: 8px;
	padding-bottom: 3px;
	color: #222;
	font-size: 14px;
	text-align: left;
}

#login_modal .txt-fld input {
	width: 100%;
	padding: 8px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	font-size: 14px;
	color: #222;
	background: #F7F7F7;
	outline: none;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
	border-right: 1px solid #E7E6E6;
	border-bottom: 1px solid #E7E6E6;
}

#login_modal .btn {
	background: #FF8844;
	border: none;
	width: auto;
	overflow: visible;
	font-size: 16px;
	color: #FFF;
	padding: 7px 10px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	font-weight: bold;
}

#login_modal .modal_close {
	color: #fff;
	background-color: #d9534f;
	border-color: #d43f3a;	border: none;
	display: inline-block;
	margin-bottom: 0;
	font-weight: 400;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	white-space: nowrap;
	-webkit-user-select: none;
	padding: 1px 5px;
	font-size: 12px;
	line-height: 1.5;
	border-radius: 3px;
}

/*----------------------------------------------------------
/* .tbl
------------------------------------------------*/
#main .tbl .row{
	margin: 5px inherit;
}

#main .tbl .th,
#main .tbl .td{
	margin: 0;
	padding:10px 15px;
	font-size:85%;
}

#main .tbl .th{
	border: 1px #CCCCCC solid;
	font-weight:bold;
	background-color:#F0F0F0;
}

#main .tbl .td{
	border-top: 1px #CCCCCC solid;
	padding-bottom:10px;
}
