﻿@charset "UTF-8";

html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, em, img, small, strong, var, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}
html {
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-direction: column;
}

article, aside, figcaption, figure, footer, header,  menu, nav, section {
	display: block;
}
ul {
	list-style: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input, select, textarea {
	vertical-align: middle;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 16px;
}
select::-ms-expand {
    display: none;
}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: middle;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body {
	min-height: 100vh;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-direction: column;
	background: #f3f3f3;
	font-size: 16px;
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	line-height: 1.6;
	color: #333;
}
@media all and (-ms-high-contrast:none) {
body {
	font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
}
@media only screen and (max-width: 800px) {
body{
	min-width: 0px;
}
}
/************************************ リンク*/
a:link,a:visited {
	color: #333;
	text-decoration: none;
}
a:hover,a:active {
	text-decoration: none;
}
/************************************** ログイン*/
.base_wrap {
	min-height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
 	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	background: url('../images/base_ninow.png') 50% 50% no-repeat;
	background-size: cover;
}
.inner_login {
	width: 600px;
	background:  rgba(255, 255, 255, .6);
	border-radius: 10px;
	padding: 50px;
	margin: 0 auto;
}
.inner_login img {
	width: 450px;
	height: 54px;
}
/*--------------------------------------
　フォーム
--------------------------------------*/
.login input[type="text"],
.login input[type="password"] {
	width: 100%;
	border: solid 1px #fff;
	border-radius: 3px;
	background: rgba(255, 255, 255, .5);
	padding: 15px;
}
.login input[type=checkbox] {
	display: none;
}
.check_type01{
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
	position: relative;
	display: inline-block;
	color: #08521d;
	font-weight: bold;
	padding-left: 30px;
	vertical-align: middle;
	cursor: pointer;
}
.check_type01:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	display: inline-block;
	width: 26px;
	height: 26px;
	border: solid 3px #08521d;
	border-radius: 50%;
	content: '';
}
.check_type01:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: -2px;
	left: 10px;
	bottom: 0;
	margin: auto;
	display: inline-block;
	width: 6px;
	height: 12px;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	content: '';
	opacity: 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 100;
}
.login input[type=checkbox]:checked + .check_type01::before {
	opacity: 1;
}
.login input[type=checkbox]:checked + .check_type01::after {
	background: #08521d;
}
/*ラジオボタン*/
.radio_type01 {
	display: none;
}
.radio-parts01 {
	padding-left: 30px;
	position: relative;
	margin-right: 30px;
}
.radio-parts01::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	background: #e8e8e8;
	border-radius: 50%;
}
.radio_type01:checked + .radio-parts01::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 2px;
	left: 6px;
	bottom: 0;
	margin: auto;
	width: 13px;
	height: 13px;
	background: #2ac278;
	border-radius: 50%;
}
.label_required {
	position: absolute;
	top: 7px;
	right: 30px;
	margin: auto;
	display: block;
	width: 50px;
	height: 22px;
	background: rgba(237, 105, 124, .4);
	border: solid 1px #ed697c;
	border-radius: 22px;
	font-size: 12px;
	color: #ed697c;
	text-align: center;
}
/*セレクトボックス*/
.select_status select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	width: 200px;
	border: solid 1px #ccc;
	border-radius: 3px;
	padding: 8px 10px;
}
.select_status label {
	position: relative;
}
.select_status label::after {
	position: absolute;
	top: 0;
	right: 15px;
	bottom: 0;
	margin: auto;
	display: inline-block;
	font-family: FontAwesome;
	content: "\f107";
	pointer-events: none;
}
/************************************** ヘッダー*/
header {
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
 	-webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	background: #08521d;
	border-bottom: solid 4px #b99b35;
	padding: 20px 30px;
}
header > div:last-of-type {
	color: #fff;
}
header img {
	width: 325px;
	height: 39px;
}
/*--------------------------------------
　ドロップダウン
--------------------------------------*/
.droplist li {
	cursor: pointer;
}

.droplist li.drop {
	position: relative;
}
.droplist li.drop::before {
	content: '';
	display: inline-block;
	width: 26px;
	height: 26px;
	background-image: url('../images/ico_user.png');
	background-size: contain;
	position: relative;
	top: 6px;
}
.droplist > li {
	display: inline-block;
}
.droplist li a {
	padding: 10px 0;
	color: #fff;
	transition: .1s;
}
.droplist li a:hover {
	color: #eee;
}
.dropdownContain {
	width: 180px;
	position: absolute;
	z-index: 2;
	left: 50%;
	margin-left: -80px;
	top: -400px;
}
.dropOut {
	width: 180px;
	background: #fff;
	position: relative;
	margin-top: 0px;
	opacity: 0;
	border-radius: 4px;
	-webkit-box-shadow: 0 1px 6px rgba(0,0,0,.15);
	-moz-box-shadow: 0 1px 6px rgba(0,0,0,.15);
	box-shadow: 0 1px 6px rgba(0,0,0,.15);
	transition: .3s;
}

.dropOut ul {
	padding: 10px;
}
.dropOut ul::before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 8px solid white;
	top: -8px;
	left: 50%;
	margin-left: -8px;
}
.dropOut ul li {
	width: 100%;
}
.dropOut ul li a {
	display: block;
	padding: 5px;
	color: #333;
	transition: .3s;
}
.dropOut ul li a::before {
	display: inline-block;
	width: 15px;
	content: '';
	font-family: FontAwesome;
	margin-right: 5px;
}
.dropOut ul li:nth-of-type(1) a::before {
	content: '\f13e';
}
.dropOut ul li:nth-of-type(2) a::before {
	content: '\f08b';
}
.dropOut ul li a:hover {
	color: #b99b35;
}
.droplist li:hover .dropdownContain {
	top: 40px;
}
.droplist li:hover .dropOut {
	opacity: 1; margin-top: 8px;
}
/************************************** コンテンツ*/
.contents {
	position: relative;
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	flex-grow: 1;
}
.sidebar .inner {
	display: table;
	height: 100%;
	background: #1c6a32;
}
.sidebar .inner > nav,
.sidebar .inner > div {
	display: table-cell;
	vertical-align: top;
	height: 100%;
}
.sidebar .inner > nav {
	display: none;
}
#SlideOpen {
	background: #08521d;
	color: #fff;
	font-size: 10px;
	padding: 15px 10px;
	text-align: center;
	cursor: pointer;
}
#SlideOpen .menu-bar {
	position: relative;
	width: 20px;
	height: 20px;
	margin: 0 auto 5px auto;
}
#SlideOpen .menu-bar span {
	position: absolute;
	display: inline-block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	transition: .6s;
}

#SlideOpen .menu-bar span:nth-of-type(1) {
	top: 0px;
	left: 0px;
	background: #ed697c;
}
#SlideOpen .menu-bar span:nth-of-type(2) {
	top: 0px;
	right: 0px;
	background: #decd15;
}
#SlideOpen .menu-bar span:nth-of-type(3) {
	bottom: 0px;
	left: 0px;
	background: #2ac278;
}
#SlideOpen .menu-bar span:nth-of-type(4) {
	bottom: 0px;
	right: 0px;
	background: #15bbde;
}

#SlideOpen .active span {
	position: absolute;
	display: block;
	width: 12px;
	height: 2px;
	border-radius: 2px;
}
#SlideOpen .active span:nth-of-type(1) {
	top: 5px;
	transform: rotate(225deg);
}
#SlideOpen .active span:nth-of-type(2) {
	top: 5px;
	transform: rotate(-225deg);
}
#SlideOpen .active span:nth-of-type(3) {
	bottom: 5px;
	transform: rotate(-225deg);
}
#SlideOpen .active span:nth-of-type(4) {
	bottom: 5px;
	transform: rotate(225deg);
}
.container {
	width: 100%;
	box-shadow:8px 9px 19px -11px #333333 inset;
	-moz-box-shadow:8px 9px 19px -11px #333333 inset;
	-webkit-box-shadow:8px 9px 19px -11px #333333 inset;
}
.area_bread-rumb {
	background: #fff;
	border-radius: 5px;
	box-shadow:0px 0px 8px 1px #cccccc;
	-moz-box-shadow:0px 0px 8px 1px #cccccc;
	-webkit-box-shadow:0px 0px 8px 1px #cccccc;
	padding: 10px 20px;
}
.inner_common {
	background: #fff;
	border-radius: 5px;
	padding: 30px 20px;
}
.area_sub_header {
	display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
/*Placeholder*/
input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: #aaa;
	font-size: 14px;
}
input::-moz-placeholder { /* Firefox 19+ */
	color: #aaa;
	font-size: 14px;
}
input:-ms-input-placeholder { /* IE 10+ */
	color: #aaa;
	font-size: 14px;
}
input:-moz-placeholder { /* Firefox 18- */
	color: #aaa;
	font-size: 14px;
}

.floatbox_type01 {
	display: table;
	width: 100%;
}
.floatbox_type01 dt,
.floatbox_type01 dd {
	display: table-cell;
}
.floatbox_type01 dt {
	width: 15%;
	min-width: 230px;
}
.floatbox_type01 dd {
	width: 85%;
}
.floatbox_type01 dd input,
.floatbox_type01 dd textarea {
	width: 100%;
	padding: 8px 10px;
	border-radius: 3px;
	border: solid 1px #ccc;
}
/************************************** ナビゲーション*/
.accordion_menu {
	width: 280px;
	display: block;
	font-size: 16px;
}
.accordion_menu > li {
 	border-bottom: solid 1px #08521d;
}
.accordion_menu > li:hover {
	background: #08521d;
}
.accordion_menu > li > div > p {
	position: relative; 
	padding: 20px;
	color: #fff;
	cursor: pointer;  
}
.accordion_menu > li > p a {
	display: block;
	padding: 20px;
	color: #fff;
	cursor: pointer;  
}
.accordion_menu > li > div > p > span,
.accordion_menu > li > div > li > span {
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto;
}
.accordion_menu > li > div > p > span::before {
	display: block;
	content: '';
	width: 10px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: .3s;
}
.accordion_menu > li > div > p.active {
	background: #08521d;
	color: #f6d150;
}
.accordion_menu > li > div > p.active > span::before {
	border-top: 2px solid #f6d150;
	border-right: 2px solid #f6d150;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.accordion_menu > li > div > ul {
	background: #08521d;
	padding: 10px 25px;
}
.accordion_menu > li > div > ul > li a {
	display: block;
	width: 100%;
	color: #ededed;
	margin-bottom: 10px;
	transition: .3s;
}
.accordion_menu > li > div > ul > li a:hover {
	opacity: .5;
}
/************************************** タブメニュー*/
label.panel_label {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	display: block;
	width: 100%;
	color: #08521d;
	cursor: pointer;
}
#panels section main {
	display: none;
	box-sizing: border-box;
	max-height: 0;
	opacity: 0;
	overflow-y: hidden;
}
#panel_ctrl01:checked ~ #panels #panel_inner01 main,
#panel_ctrl02:checked ~ #panels #panel_inner02 main,
#panel_ctrl03:checked ~ #panels #panel_inner03 main
 {
	display: inline;
	max-height: initial;
	opacity: 1;
}

#panel_ctrl01:checked ~ .tabs_list #li-for-panel_inner01 label.panel_label,
#panel_ctrl02:checked ~ .tabs_list #li-for-panel_inner02 label.panel_label,
#panel_ctrl03:checked ~ .tabs_list #li-for-panel_inner03 label.panel_label {
	background-color: #08521d;
	color: #fff;
}

.tabs_list {
	display: table;
	width: 100%;
	list-style: none;
	font-size: 0;
	margin: 0;
	padding: 0;
	text-align: center;
	margin-bottom: 30px;
}
.tabs_list li {
	display: inline-table;
	width: 150px;
	height: 40px;
	line-height: 40px;
	border: solid #08521d;
	background: #fff;
	border-width: 2px 0 2px 2px;
	font-size: 18px;
	text-align: center;
}
.tabs_list li:first-of-type {
	border-radius: 5px 0 0 5px;
}
.tabs_list li:last-of-type {
	border-radius: 0 5px 5px 0;
	border-width: 2px;
}
.panel-radios {
	display: none;
}
/************************************** フッター*/
footer {
	background: #08521d;
	font-size: 12px;
	color: #fff;
	padding: 10px 0;
}
/************************************** 見出し*/
h2, h3, h4, h5 {
	font-family: "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	font-weight: bold;
}
.bottom_line {
	border-bottom: solid 1px #ccc;
	font-size: 30px;
	padding-bottom: 8px;
}
.ttl_belt {
	font-size: 22px;
	background: #e0e0e0;
	border-radius: 5px;
	color: #666;
	padding: 8px 15px;
}
@media all and (-ms-high-contrast:none) {
h2, h3, h4, h5 {
	font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
}
/*--------------------------------------
　アイコン（一覧用）
--------------------------------------*/
.ico_font {
	font-size: 26px;
}
.ico_font::before {
	content: '';
	font-family: FontAwesome;
	width: 40px;
	height: 40px;
	line-height: 40px;
	display: inline-block;
	background: #b99b35;
	border-radius: 50%;
	font-size: 20px;
	font-weight: normal;
	color: #fff;
	text-align: center;
	margin-right: 10px;
	position: relative;
	top: -4px;
}
.ico_list::before {
	content: '\f0ca';
}
.ico_id::before {
	content: '\f2c2';
}
.ico_user::before {
	content: '\f007';
}
/************************************** ボタン*/
.btn_common a,
.btn_common input[type="submit"] {
	display: inline-block;
	background: #666;
	border: solid 2px #acacac;
	border-radius: 50px;
	font-family: "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	color: #fff;
	font-weight: bold;
	padding: 5px 30px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
}
.btn_detail a {
	display: inline-block;
	vertical-align: middle;
	background: #f6d150;
	border: solid 2px #b99b35;
	border-radius: 30px;
	font-size: 14px;
	color: #b99b35;
	padding: 3px 18px;
	text-align: center;
}
.btn_login {
	position: relative;
	display: inline-block;
	background: #f6d150;
	border: solid 3px #b99b35;
	border-radius: 60px;
}
.btn_login::before {
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	content: '';
	display: block;
	width: 16px;
	height: 20px;
	background: url('../images/ico-login-close.png');
	background-size: contain;
	transition: .6s;
}
.btn_login:hover::before {
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	content: '';
	display: block;
	width: 16px;
	height: 20px;
	background: url('../images/ico-login-open.png');
	background-size: contain;
}
.btn_login input[type="submit"] {
	color: #b99b35;
	font-weight: bold;
	padding: 10px 50px;
	cursor: pointer;
}
@media all and (-ms-high-contrast:none) {
.btn_common a,
.btn_common input[type="submit"] {
	font-family: "メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
}
/************************************** ページネーション*/
.pagination {
	position: relative;
	font-size: 16px;
	line-height: 1 !important;
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	float: left;
	margin-right: 10px; 
	padding: 12px 15px 12px 15px;
	text-decoration: none;
	width: auto;
	color: #909090;
	background: #e0e0e0;
	border-radius: 3px;
}
.pagination span.page-of {
	background: none;
	color: #333;
}
.pagination a:hover {
	color: #fff;
	background: #666;
}
.pagination .current {
	padding: 12px 15px 12px 15px;
	background: #666;
	color: #fff;
	border-radius: 3px;
}
/************************************ テーブル*/ 
.table_type01 {
	border-collapse: collapse;
	width: 100%;
	border: solid #d9d9d9;
	border-width: 0 1px 1px 1px;
}
.table_type01 tr:not(:last-of-type) {
	border-bottom: solid 1px #e1e1e1;
}
.table_type01 th, .table_type01 td {
	text-align: left;
	padding: 10px 20px;
	vertical-align: middle;
}
.table_type01 th {
	background: #106528;
	border-right: solid 1px #fff;
	color: #fff;
}
.table_type01 th a {
	color: #fff;
} 
.table_type01 td {
	background: #fff;
	border-right: solid 1px #d9d9d9;
}
.table_type01 tr th:first-child {
	border-left: solid 1px #39436a;
}
.table_type01 tr th:last-child {
	border-right: solid 1px #39436a;
}
.table_type01 tr:nth-child(even) td {
	background: #ededed;
}
.table_type01 .last-col01 {
	width: 115px;
}
.table_type02 {
	border-collapse: separate;
    border-spacing: 0 15px;
	width: 100%;
	text-align: left;
}
.table_type02 th {
	position: relative;
	width: 15%;
	min-width: 170px;
	background: #e0e0e0;
	color: #666;
	padding: 15px;
}
.table_type02 td {
	background: #f3f3f3;
	padding: 15px 30px;
}
/*開発用************************************************************/

header > div:first-of-type > a {
	display: inline-block;
	vertical-align: middle;
}
header > div:first-of-type > a:not(:first-of-type) {
	background: #f6d150;
	border-bottom: solid 2px #b99b35;
	border-radius: 5px;
	color: #666;
	padding: 3px 10px;
}
header > div:first-of-type > a:not(:first-of-type):active {
	border-bottom: none;
	
}
header > div:first-of-type > a:nth-of-type(2) {
	margin-left: 30px;
	margin-right: 5px
}
