:root {
	--ritsu: 1.0;
	--bgimg: #005090;
}

/* format
------------------------------------------------------------ */

body{
	background:#FFFFFF url("../img/common/bgBody1.jpg") top left repeat-x;
	text-align:center;
	/*font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;*/
	font-size:12px;
	color:#333333;
	line-height:150%;
}


h1{
	padding:10px 0 10px 0;
	margin:0px;
}


h3{
	padding:10px 0 10px 15px;
	margin:10px 0px 10px 0;
	border-bottom:1px dotted #aaaaaa;
	border-top:1px dotted #aaaaaa;
	background-color:#f9f9f9;
}

h4{
	font-size:100%;
	font-weight:normal;
	padding:0 0 5px 0;
	margin:0px;
}


h2,h5{
	font-size:100%;
	font-weight:normal;
	padding:0px;
	margin:0px;
}

ul,li{
	padding:0px;
	margin:0px;
}
li{
	list-style:none;
}



th{
	vertical-align:top;
	text-align:left;
	font-weight:normal;
	line-height:160%;
	font-size:100%;
}

td{
	vertical-align:top;
	font-weight:normal;
	line-height:160%;
	font-size:100%;
}

img{
	vertical-align:top;
	border:none;
}
.clr{
	clear:both;
	height:0;
	margin:0;
	padding:0;
	line-height:100%;
	font-size:0;
}
.boxL{
	float:left;
}
.boxR{
	float:right;
}
.pagetop{ /*2024/3 ウェブアクセスビリティ対応のためページ先頭への戻りボタンを施す */
	padding:1px 0px 1px 0px;
	height:23px;
	text-align:right;
}
/* table
------------------------------------------------------------ */

table.table-office{
	border-top:dotted 1px #cccccc;
	margin:8px 0 0 0;
	font-size:13px;/*2024/03 ウエブアクセシビリティ対応のため12px→13pxに変更*/
	width:100%;/*2024/03 ウエブアクセシビリティ対応のためcssにて表幅指定*/
}
td.txt90 {	/*2024/03 ウエブアクセシビリティ対応のためcssにてフォントサイズ指定*/
	font-size:90%;
}

table.table-office th{
	border-bottom:dotted 1px #cccccc;
	background-color:#fafafa;
	text-align:left;
	padding:10px;
	width:100px;
}
table.table-office td{border-bottom:dotted 1px #aaaaaa;padding:5px;}

table.table-office tr td table td{
	border:none;
	padding:0px 9px 2px 0px;
}

.formCaution{
	color:#DD0000;
}

/* link
------------------------------------------------------------ */
a{
	color:#01498E;
	text-decoration:underline;
}
a:visited{
	color:#01498E;
	text-decoration:underline;
}
a:active{
	color:#01498E;
	text-decoration:underline;
}
a:hover{
	color:#2279CA;
	text-decoration:none;
}

/* layout
------------------------------------------------------------ */
#wrap{
	width:950px;
	margin:0px auto;
	text-align:center;
}
#contentsArea{
	width:950px;
	text-align:left;
	padding:12px 0px 0px 0px;
}
#headArea{
	width:950px;
}
#footArea{
	background:#333333;
}
.footer{
	width:950px;
	margin:0px auto;
	text-align:center;
}
.footer p{
	padding:24px 24px 24px 0px;
	float:right;
}

/* navi 2024/03 Webアクセスビリティ対応のため文字色と太さ変更
------------------------------------------------------------ */

.navi{
	width:950px;
	font-size:10px;
	font-weight:bold;
	color:#FFFFFF;
	height:30px;
	padding:15px 0px 0px 0px;
	text-align:left;
}

.navi a{font-weight: normal; COLOR: #FFFFFF; TEXT-DECORATION: none
}

.navi a:hover{font-weight: normal; COLOR: #FFFFFF; TEXT-DECORATION: underline
}

#title_misc {
	font-size: 0.3em;
	font-weight: 100;
	font-style: normal;
	padding: 0 0 0 0px;
}




/* common
------------------------------------------------------------ */
.sideMenu {
	width:180px;
	padding:0;
	position:relative;
	top: -3px;
	z-index:1;
}
.sideMenu li {
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	border: 1px solid #eeeeee;
	background-color: white;
}
.sideMenu li h3 {
	background-color: transparent;
}
.sideMenu li:hover {
	background-color: whitesmoke;
}

.sideMenu li a {
	text-decoration: none;
	color: black;
	font-size: 1.1em;
	letter-spacing: 0.1em;
	cursor: pointer;
}
.sideMenu li#side_l1:hover:before,
.sideMenu li#side_l2:hover::before,
.sideMenu li#side_l3:hover::before,
.sideMenu li#side_l4:hover::before,
.sideMenu li#side_l5:hover::before {
	content: '';
	position: absolute;
	bottom: 5px;
	left: 5px;
	height: 27px;
	width: 8px;
	background-color: #2396c3;
}
.sideMenu h3 {
	height: 23px;
	padding: 4px 0 0 10px;
	margin: 5px 1px 5px 5px;
	background-color: white;
	border: none;
	border-left: lightgray 8px solid;
}

.sideMenu .localBana ul li {
	padding-top:10px;
	float:left;
	border: none;
}

.content{
	width:760px;
	float:right;
}

.contentTop{
	width:690px;
	float:left;
}

.contWrap{
	border:1px solid #E5E5E5;
	padding:12px 12px 8px 12px;
	height:100%;
}
/* header
------------------------------------------------------------ */
#headArea ul li{
	float:left;
}
#headArea .boxL{
	padding:10px 0px 0px 0px;
}
#headArea .boxL a{
	/*background:#FFFFFF url("../img/common/logo.jpg") top left no-repeat;*/
	width:370px;
	height:90px;
	display:block;
	outline:none;
}
#headArea .boxL h1{
	text-indent:-1000em;
}
#headArea .boxR{
	padding:33px 0px 0px 0px;
}
#headArea .boxR ul.headMenu01{
	padding:0px 0px 0px 162px;
}
#headArea .boxR ul.headMenu02{
	padding:14px 0px 11px 65px;
}
#headArea .boxR ul.headMenu01 li,
#headArea .boxR ul.headMenu02 li{
	padding:0px;
	line-height:100%;
}
/* footer
------------------------------------------------------------ */
#copyright {
  width:940px;
  padding: 24px 10px 24px 0;
  text-align: right;
  font-size:1.2em;
  color:#fff;
  font-family: Arial, Helvetica, sans-serif;
  margin:0 auto ;
}


/* top
------------------------------------------------------------ */
.top{
	padding:0px 0px 30px 0px;
}
.contentTop{
	width:690px;
	float:left;
}
.contentTop h2{
	padding:0px 0px 18px 0px;
}
.localNavi{
	width:240px;
	float:right;
}

.banaArea{
	padding:10px 0px 0px 24px;
	margin-bottom:24px;
}
.banaArea ul li{
	float:left;
	padding:0px 0px 0px 13px;
}
.topContent{
	padding:0px 0px 0px 13px;
}



/* banaArea
------------------------------------------------------------ */

.banaArea2{
	padding:10px 0px 0px 0px;
}
.banaArea2 ul li{
	float:left;
	padding:0px 0px 0px 8px;
}


.banaArea3{
	padding:10px 0px 0px 0px;
}
.banaArea3 ul li{
	float:left;
	padding:0px 12px 0px 0px;
}

/* etc
------------------------------------------------------------ */

.clearfix:after,
#wrap:after,
#contentsArea:after,
#headArea:after,
#footArea:after
{
	/*content: url("../img/pixel.gif");*/
	display: block;
	clear: both;
	height: 0;
}

.clearfix,
#wrap,
#contentsArea,
#headArea,
#footArea
{
	position:relative;
	display: inline-table;
	min-height: 1%;
}

/* Hides from IE-mac \*/
* html .clearfix,
* html #wrap,
* html #contentsArea,
* html #headArea,
* html #footArea
{
	height: 1%;
}

.clearfix,
#wrap,
#contentsArea,
#headArea,
#footArea
{
	position:relative;
	display: inline-table;
	min-height: 1%;
}

/* End hide from IE-mac */

/*細かい設定*/
.cw {
    color: white;
}
.cb {
    color: black;
}
.cdb {
    color: darkblue;
}
.cdg {
    color: dimgray;
}
.cm {
    color: #005090;
}
.cylw {
    color: yellow;
}
.crd {
    color: red;
}
.bgws {
    background-color: whitesmoke;
}
.bgw {
    background-color: white;
}
.bgrd {
    background-color: red;
}
.bgdr {
    background-color: darkred;
}
.bgdb {
    background-color: darkblue;
}
.bgg {
    background-color: darkgreen;
}
.bgg2 {
    background-color: #448800;
}
.bgdg {
    background-color: dimgray;
}
.bgm {
    background-color: #5574AB;
}
.bgimg {
    background-color: #005090;
}
.bgimg2 {
    background-color: #0060A0;
}
.rgt {
    text-align: right;
}
.lft {
    text-align: left;
}
.ctr {
    text-align: center;
}
.vmdl {
    vertical-align: middle;
}
.vbtm {
    vertical-align: bottom;
}
.fsiz {
    font-size: 140%;
}
.fsiz115 {
    font-size: 115%;
}
.fsiz110 {
    font-size: 110%;
}
.fsiz95 {
    font-size: 95%;
}
.bld {
    font-weight: 500;
}
.bldr {
    font-weight: 900;
}

/* cert */
table.cert_tbl {
	width: 100%;
	/*border: 1px solid lightgray;*/
	border-collapse: collapse;
	background-color: white;
	font-size: inherit;
}
table.cert_tbl th {
	font-weight: 600;
	text-align: center;
	vertical-align: middle;
}
table.cert_tbl th div.jrm1 {
	width: 100%;
	height: 40px;
	padding-top: 25px;
	padding-bottom: 25px;
	cursor: pointer;
}

table.cert_tbl th, td {
	border: 1px solid lightgray;
	padding: 3px;
}
table.cert_tbl img {
	margin: 5px;
	object-fit: contain;
	max-width: 190px;
	max-height: 130px;
}

table.cert_tbl th:nth-child(1) {
	width: 130px;
}
table.cert_tbl td:nth-child(2) {
	width: 100px;
	text-align: center;
	vertical-align: middle;
}
table.cert_tbl td:nth-child(3) {
	width: 150px;
	text-align: center;
	vertical-align: middle;
}
table.cert_tbl td:nth-child(4) {
	width: 108px;
	text-align: center;
	vertical-align: middle;
}
table.cert_tbl td:nth-child(5) {
	width: 220px;
	text-align: center;
	vertical-align: middle;
}

table.table-office td {
	border-left: none;
	border-right: none;
	border-top: none;
}

/* 詳細はこちら */
.kochira {
	text-decoration: none;
	color: white;
}
.kochira h4 {
	text-decoration: none;
	text-align: right;
	color: white;
	background: linear-gradient(180deg, rgb(32, 32, 32), rgb(127, 127, 127));
	height: 18px;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 100%;
	padding: 6px 9px 0px 0px;
	margin-left: calc(100% - 98px);
	border: gray 1px solid; /*境界線の指定*/
}

/*------------------------------------------------------------ */
/* 分割画面 */
/*------------------------------------------------------------ */
.grid-1 {
    display: grid;
    height: 330px; /* grid全体の高さを設定 */
    grid-template-rows: 30px auto; /* gridの割合を設定し2行用意 */
    grid-template-columns: 100%; /* 横幅いっぱいに1列用意 */
    overflow-y: auto;
}
.top-1 {
    grid-row: 1;
    padding: 10px 3px 3px 3px;
	text-align: center;
	vertical-align: middle;
	font-weight: 600;
}

.bottom-1 {
    grid-row: 2;
    overflow-y: auto;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 0px 5px 0px 5px;
	text-align: center;
}


/*------------------------------------------------------------ */
/* popup0 */
/*------------------------------------------------------------ */
/* ポップアップwindow部分 */
.overlay {
    visibility: hidden;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 70;
    width: 100%;
    height: 100%;
    text-align: left;
}
/* オーバーレイの背景部分（背景透過） */
.bg_gray {
    background: rgba(0,0,0,0.2);
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 80;
}
/* ウィンドウ部分 */
.window {
    padding: 0px;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background: #fff;
    border-radius: 5px;
    box-shadow: 0px 0px 20px -6px rgba(0,0,0,0.6);
    z-index: 90;
    opacity: 0;
}
/* 閉じるボタン */
.btn_cloth {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 28px;
    height: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0px 5px 0px 0px;
    z-index: 100;
    cursor: pointer;
    background-color: #2396c3;
}
    .btn_cloth:hover {
        background-color: red;
    }
    .btn_cloth span,
    .btn_cloth span::before {
        display: block;
        height: 2px;
        width: 14px;
        border-radius: 0px;
        background: #fff;
    }
    .btn_cloth span {
        transform: rotate(45deg);
    }
        .btn_cloth span::before {
            content: "";
            position: absolute;
            bottom: 0;
            transform: rotate(-90deg);
        }
.popup {
    display: none;
}
/* クリックで表示 */
.popup:checked ~ .overlay {
    visibility: visible;
}
    .popup:checked ~ .overlay .window {
        animation: fadein 100ms forwards;
        animation-timing-function: ease-in-out;
    }
@keyframes fadein {
    100% {
        opacity: 1;
    }
}

.window table {
	width: 100%;
	height: 100%;
}
.window table td {
	border: none;
}

label.lbl_jrm {
	color: #0060A0;
	text-decoration: underline;
	cursor: pointer;
}
label.lbl_jrm:hover {
	text-decoration: none;
	color: #2279CA;
}

