@charset "utf-8";

/*
 * 2017.09.15 内部サイトPC版CSS新規作成
 * 2017.12.28 PC版共通スタイル調整
 * 2018.02.12 PC版ヘッダースタイル調整
 * 2018.06.15 PC版のメインメニューが２行になってしまった不具合の対応
 * 2019.02.21 システムメッセージ行スタイル追加
 * 2019.06.27 テンプレート改造のためのCSS調整
 * 2019.07.30 管理画面の登録画面で画像ファイルアップロード時のレイアウト崩れの対応
 * 2019.11.11 ヘッダ部のロゴサイズを調整
 * 2019.12.23 エラー画面のヘッダーレイアウト崩れの対応
 */

@media all and (min-width: 768px) {
    .sp {
        display: none;
    }
}

/* 共通 */
* {
	margin: 0;
	padding: 0;
}
body{
	background: #fff url(../../user_data/packages/default/img/common/bg.jpg);
	background-repeat: repeat-x;
}
p {
	margin: 1em 0 0;
	line-height: 1.4em;
}
ul, ol {
	padding-left: 40px;
	margin: 16px 0;
}
table th,
table td {
	padding: 5px;
}
table th {
	text-align: center;
	font-weight: bold;
}
.mainbg{
	background: url("../../user_data/packages/default/img/contents/main_bg.jpg") repeat-x center top #fff;
}
.f-left{
    float: left;
}
.f-right{
    float: right;
}
.f-center{
    text-align: center;
    margin: 0 auto;
}
.clear{
    clear: both;
}
.wrapper {
	margin: 0 auto;
	width:1053px;
	background-color:#fff;
}
.wrapper-inner {
	width: 1019px;
	display: inline-block !important;
	line-height: 1.2em;
}
.wrapper-content {
	overflow: hidden;
}
.container-fluid {
    width: 100%;
}
.container {
    margin: 0 auto;
    max-width: 912px;
}
.clearfix{*zoom:1;}
.clearfix:before,.clearfix:after{display:table;content:"";line-height:0;}
.clearfix:after,.clear{clear:both;}
a:hover img,
input[type="image"]:hover{
	opacity: 0.7;
	filter: alpha(opacity = 70);
	-ms-filter: "alpha( opacity=70 )";
}

/* ヘッダー */
.header-border-left,
.header-border-right {
	width: 17px;
	height: 82px;
}
.header-border-left {
	background: url("../../user_data/packages/default/img/header/header_left.jpg") repeat-y left top #efefef;
}
.header-border-right {
	background: url("../../user_data/packages/default/img/header/header_right.jpg") repeat-y right top #efefef;
}
#header {
	width: 100%;
	background: #efefef;
}
#header .col-1 {
	padding: 5px 0 5px 10px;
	white-space:nowrap;
	float: left;
	min-width: 25%;
	height: 40px;
}
.error #header .col-1 {
	height: 40px;
}
#header .col-1 img {
	max-width: 275px;
	max-height: 40px;
}
#header .col-1 a {
	display:inline-block;
}
#header .col-2 {
	text-align: center;
	font-weight:bold;
	font-size:20px;
	float: none;
	/* max-width: 50%; */
	height: 35px;
	padding-top: 15px;
	white-space:nowrap;
}
#header .col-3 {
	text-align: center;
	float: right;
	min-width: 25%;
	height: 45px;
	white-space:nowrap;
	padding-top: 5px;
}
#header .col-4 {
	text-align: right;
	padding-right: 10px;
	float: right;
	height: 45px;
	white-space:nowrap;
	padding-top: 5px;
}
#header-navi{
	background: url("../../user_data/packages/default/img/title/bar.gif") repeat center bottom #fff;
	background-size:1019px 9px;
	width: 100%;
	line-height: 0;
}

/* ナビー */
#navigation{
    width: 1019px;
    background-color:#ccc;
}

#navigation .menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#navigation .menu li{
    float: left;
    height: 32px;
    text-align: center;
    width: 112.3px;
    cursor: pointer;
    border-right: 1px solid black;
    background: gray; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(gray, white, gray); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(gray, white, gray); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(gray, white, gray); /* For Firefox 3.6 to 15 */
    background: linear-gradient(gray, white, gray); /* Standard syntax */
}
#navigation .menu li:last-child{
    border-right: none;
}

#navigation .menu li:hover, #navigation .menu li.active{
    background: orange; /* For browsers that do not support gradients */
    background: -webkit-linear-gradient(orange, yellow, orange); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(orange, yellow, orange); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(orange, yellow, orange); /* For Firefox 3.6 to 15 */
    background: linear-gradient(orange, yellow, orange); /* Standard syntax */
}

#navigation .menu li a{
    color: black;
    font-weight: bold;
    font-size: 12px;
    display: block;
    line-height: 32px;
    text-decoration: none;
}

#menu_navi ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#menu_navi .navi a,
#menu_navi .navi-on a{
	display:block;
	padding:10px 5px;
	color:#fff;
	background: url("../../user_data/packages/default/img/contents/navi_line.gif") repeat-x left bottom #636469;
	line-height: 1.2em;
}
#menu_navi .navi a:hover,
#menu_navi .navi-on a{
	background-color:#a5a5a5;
}
.ic-menu,
.collapse{
	display:none;
}

/* コンテンツ */
.content-border-left,
.content-border-right {
	width: 17px;
	height: 100%;
	top: 0;
	padding-bottom: 32768px;
	margin-bottom: -32768px;
}
.content-border-left {
	background: url("../../user_data/packages/default/img/common/left_bg.jpg") repeat-y left top transparent;
	left: 0;
}
.content-border-right {
	background: url("../../user_data/packages/default/img/common/right_bg.jpg") repeat-y right top transparent;
	right: 0;
}
.content-border-left-top,
.content-border-right-top {
	width: 17px;
	height: 443px;
	top: 0;
}
.content-border-left-top {
	background: url("../../user_data/packages/default/img/common/left.jpg") no-repeat left top transparent;
	left: 0;
}
.content-border-right-top {
	background: url("../../user_data/packages/default/img/common/right.jpg") no-repeat right top transparent;
	right: 0;
}
#content {
	width: 100%;
	/* position: relative; */
	overflow: hidden;
	line-height: 0;
}
.content-inner {
	padding-top: 9px;
	background: url("../../user_data/packages/default/img/title/bar.gif") repeat-x left top transparent;
}
.menulv3-wrapper{
    padding: 14px;
}
.menu-row{
    margin-bottom: 10px;
}
.menu-name{
    float: left;
    width: 200px;
    height: 32px;
    background: gray;
    border: 1px solid black;
    margin-right: 14px;
    overflow:hidden;
}
.menu-name .navi_text {
    font-size: 90%;
}

.menu-name a{
    text-decoration: none;
    display: block;
    line-height: 32px;
    text-align: left;
    color: white;
    background-color:#636469;
}

.menu-comment{
    text-align: left;
    padding-top:7px;
    margin-left:216px;
    font-size: 80%;
}

.tb-main-img {
    width: 850px;
    margin-top: 14px;
    display: inline-block;
}
.section-info{
    width: 850px;
    margin-top: 14px;
    display: inline-block;
}
.section-info span.section-description{
    padding: 14px;
    display: block;
    line-height: 1.5;
    border: 1px solid gray;
    text-align: left;
}
.tb-main-content {
    width: 850px;
    margin-top: 14px;
    margin-left: 14px;
    margin-right: 14px;
    margin-bottom: 30px;
    display: inline-block;
    line-height: 0;
    overflow: hidden;
}
.tb-main-content .img-top {
	background: url("../../user_data/packages/default/img/contents/main_top.jpg") no-repeat center bottom transparent;
	height: 14px;
	width: 100%;
	background-size: 100% 14px;
}
.tb-main-content .img-left {
	background: url("../../user_data/packages/default/img/contents/main_left.jpg") repeat-y left top transparent;
	width: 14px;
	float: left;
	padding-bottom: 32768px;
	margin-bottom: -32768px;
}
.tb-main-content .img-right {
	background: url("../../user_data/packages/default/img/contents/main_right.jpg") repeat-y right top transparent;
	width: 14px;
	float: right;
	padding-bottom: 32768px;
	margin-bottom: -32768px;
}
.tb-main-content .img-bottom {
	background: url("../../user_data/packages/default/img/contents/main_bottom.jpg") no-repeat center top transparent;
	height: 14px;
	width: 100%;
	background-size: 100% 14px;
}
.tb-main-content .main-content {
	background: #cccccc;
	line-height: 1.2em;
	display: inline-block;
	text-align: left;
	width: 822px;
	line-height: 0;
}
.tb-main-content .main-content .main-content-title {
	border-radius: 5px;
	background: url("../../user_data/packages/default/img/contents/contents_title_left.gif") no-repeat -4px center #636469;
	border-left: 4px solid #636469;
	/* background: #636469; */
	color: #fff;
	font-size: 110%;
	margin-bottom: 10px;
	height: 40px;
	line-height: 40px;
	padding: 0 20px;
}
.tb-main-content .main-content .main-content-title span {
	float: right;
}
.tb-main-content .main-content .main-content-title a,
.tb-main-content .main-content .main-content-title a:hover {
	text-decoration: none;
}
.tb-main-content .main-content td {
	padding: 10px;
	line-height: 1.4em;
}
.button-container {
	font-size: 100%;
	background: #e9e7de;
	text-align: center;
	padding: 10px;
	border: 1px solid #ccc;
}
.button-container a,
.button-container input {
	margin-left: 20px;
	margin-right: 20px;
}
.main-container {
	padding: 10px;
	border: 1px solid #ccc;
	border-bottom: 0 none;
}
.result-pager {
	background: url("../../user_data/packages/default/img/contents/search_line.jpg") repeat-x center top #cbcbcb;
	padding: 20px 20px 12px;
	text-align: center;
}
.result-pager .result-hit {
	background: url("../../user_data/packages/default/img/contents/reselt_left_middle.gif") no-repeat -1px center #393a48;
	border-radius: 5px;
	color: #fff;
	font-size: 62.5%;
	height: 28px;
	line-height: 28px;
	padding: 0 20px;
	border: 1px solid #818181;
}
.result-pager .result-info {
	padding-top: 5px;
	padding-left: 20px;
}
.pager {
	background: #393a48;
	border: 1px solid #818181;
	border-radius: 5px;
	height: 17px;
	line-height: 17px;
	list-style-type: none;
	padding: 2px 0;
	margin: 0;
}
.pager li {
	float: left;
}
.pager li a,
.pager li a:hover {
	display: block;
	line-height: 17px;
}
.pager .pager_prev {
	background: url("../../user_data/packages/default/img/contents/arrow_left_bg.jpg") no-repeat center center transparent;
	width: 35px;
	overflow: hidden;
}
.pager .pager_prev a {
	margin-left: -1px;
}
.pager .pager_next {
	background: url("../../user_data/packages/default/img/contents/arrow_right_bg.jpg") no-repeat center center transparent;
	width: 35px;
	overflow: hidden;
}
.left_navi {
	float: left;
	min-height: 434px;
	padding-bottom: 32768px;
	margin-bottom: -32768px;
	width: 141px;
	background: url("../../user_data/packages/default/img/contents/navi_bg.gif") repeat-y left top transparent;
	line-height: 0;
}
@media all and (min-width: 0px) {
	.left_navi {
		padding-bottom: 0 !important;
		margin-bottom: 0 !important;
	}
	.left_navi:before {
		content: '';
		height: 0;
		display: block;
		padding-bottom: 32768px !important;
		margin-bottom: -32768px !important;
		background: url("../../user_data/packages/default/img/contents/navi_bg.gif") repeat-y left top transparent;
	}
}
.left_navi ~ .mainbg{
	overflow: auto;
}

/* フッター */
.footer-border-left,
.footer-border-right {
	width: 17px;
	height: 85px;
	top: 0;
}
.footer-border-left {
	background: url("../../user_data/packages/default/img/common/left_bg.jpg") repeat-y left top #fff;
	float: left;
	left: 0;
}
.footer-border-right {
	background: url("../../user_data/packages/default/img/common/right_bg.jpg") repeat-y right top #fff;
	float: right;
	right: 0;
}
.footer-border-bottom {
	background: url("../../user_data/packages/default/img/common/footer2.jpg") no-repeat center top #fff;
	top: 0;
	height: 19px;
	width: 100%;
}
#footer {
	overflow: hidden;
	width: 100%;
	position: relative;
	line-height: 0;
	background: #636469;
}
#footer a{
	color:#b6b7ba;
}
#footer .copyright {
	line-height: 40px;
	height: 40px;
	padding: 0 10px;
}
#footer .pagetop {
	height: 31px;
	background: #f0f0f0;
	padding: 14px 10px 0;
	text-align: right;
}

/* エラー画面 */
.error #header{
	padding: 16px 0;
}
.error div#under02column{
	width:700px;
	margin:30px auto 0 auto;
}
.error div#under02column_error .messagearea{
	width:600px;
	margin: 15px auto 0 auto;
	padding: 10px 5px;
	border: 5px solid #bbb;
	text-align: center;
}
.error div#under02column_error .messagearea .error{
	padding: 120px 0;
}
.error div.tblareabtn{
	clear: both;
	margin: 15px 0 30px 0;
	text-align: center;
}

/* システムメッセージ */
body.has_sys_msg{margin:0}
body.has_sys_msg .sys_msg,
body.has_sys_msg .sys_msg_under{
	color:red;
	border:2px solid red;
	border-left:0 none;
	border-right:0 none;
	background:#fff;
	text-align:center;
	padding:10px 0;
	font-weight:bold;
}
body.has_sys_msg .sys_msg{
	width:100%;
	position:fixed;
	z-index:9998;
}
