/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
/* ◇　イメージ表現　　　　　　　　　　　　　　　　　　　　　　　　　　　　◇ */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
body { margin: 0; padding: 0; background-color:ivory; font-size: 40pt;  text-align: center;  }
div { display: none; }
hr {  display: none; }
p    { margin: 1px; padding: 1px; }
p.md { background-color: green; }

/* ▼リスト表記属性 */
li.lct { padding: 0px; background-color: gray;  }     /* 表題   */
li.lm0 { padding: 2px; background-color: azure;     }     /* 有効M0 */
li.lm1 { padding: 2px; background-color: linen; font-size: 16pt; }     /* 有効M1 */
li.lm2 { padding: 2px; background-color: beige; font-size: 12pt; }     /* 有効M2 */
li.ls1 { padding: 1px; background-color: ivory;     } /* 有効S1 */
li.ls2 { padding: 1px; background-color: white;     } /* 有効S2 */
li.lx0 { padding: 0px; background-color: blue; }      /* 無効X0 */
li.lx1 { padding: 0px; background-color: lightgray; } /* 無効X1 */
li.lx2 { padding: 0px; background-color: gainsboro; } /* 無効X2 */
li.lx3 { padding: 0px; background-color: gainsboro; } /* 無効X3 */
/* ▼リスト表記属性(以前) */
li    { padding: 30px; }
li.l1 { padding: 6px; background-color: plum; }
li.l2 { padding: 4px; background-color: linen; font-size: 16pt; }
li.l3 { padding: 4px; background-color: ivory; font-size: 12pt; }
li.l4 { padding: 4px; background-color: beige; }
li.l5 { padding: 2px; background-color: lightcyan ; }
li.l6 { padding: 2px; background-color: aliceblue ; }
li.l7 { padding: 0px; background-color: wheat; font-size: 3pt; }
li.l8 { padding: 0px; background-color: khaki; font-size: 3pt; }
li.l9 { padding: 0px; background-color: olive; font-size: 3pt; }


p.cap { background-color: gray ; margin: 0px; padding: 0px;  font-size: 5pt; }


dt { margin: 0; padding: 0px; background-color: black; color: green;  }
/* dd { margin: 0; padding: 0px; background-color: brown; font-size: 100pt; color: red;    } */


a.hd { text-decoration: none; }
a.dm { font-size: 1pt; }
form { margin: 0; padding: 2; background-color:peru; }
#mnu { margin: 0px; padding: 0px; background-color:black; }
#lst { margin: 1px; padding: 1px; background-color:pink; }
table { width: 170px; margin: 0; padding: 0; background-color: silver; font-size: 8pt; }
td    { margin: 0; padding: 0; }
td.it { width: 32px; }

.hrx { margin: 2px; padding: 0px; width: 90%; display: block; }
.divp { background-color: black; display: block; width: 100%; }

.divt {
 border: none thin red;
 margin:  0px;
 padding: 1px;
 background-color: teal;
 color: black;
 font-size: 6pt;
 text-align: left;
 width: 99%; 
 height: 14px;
 display: block;
}

.divb {
 text-align: center;
 margin:  1px;
 padding: 1px;
 border: darkgray thin outset;
 background-color: silver;
 color: black;
 font-size: 8pt;
 width: 95%; 
 display: block;
}
.divx {
 margin:  1px;
 padding: 0px;
 font-size: 5pt;
 display: block;
}
.divm {
 display: block;
}
.dive {
 background-color: black;
 color: silver;
 display: block;
}

.divkari {
 background-color : yellow;
 color            : red;
 width            : 100%;
 height           : 1080px;
 display          : block;
}				/* 仮ブロック */
.divsoko {
 background-color : gold;
 color            : green;
 width            : 100%;
 height           : 80px;
 display          : block;
}				/* 底ブロック */


   /* ▼タブ機能の掲載領域の装飾(※必須ではありません) */
   .tabbox { margin: 0px; padding: 1em; background-color: gray; font-size: 10px; display: block; width: 98%;　  }

   /* ▼タブ機能を制御するラジオボタン(非表示にする) */
   .tabbox input { display: none; }

   /* ▼タブ(共通装飾＋非選択状態の装飾) */
   .tab {
      display: inline-block;
      border-width: 1px 1px 0px 1px;
      border-style: solid;
      border-color: black;
      border-radius: 0.50em 0.50em 0px 0px;
      padding: 0.50em 0.25em;
      color: black;
      background-color: darkgray;
      height: 14px;
   }

   /* ▼タブにマウスポインタが載った際の装飾 */
   .tab:hover {
      background-color: green;
      color:                yellow;
      cursor:              pointer;
   }

   /* ▼チェックが入っているラジオボタンの隣にあるタブの装飾(＝選択状態のタブ) */
   input:checked + .tab {
      color: red;
      background-color: ivory;
      position: relative;
      z-index: 10;
   }

   /* ▼タブの中身(共通装飾＋非選択状態の装飾) */
   .tabcontent {
      display: none;
      border: black thin outset;
      margin-top: -1px;
      padding: 4px;
      position: relative;
      z-index: 0;
      background-color: snow;
      text-align: left;
   }

   /* ▼チェックが入っているラジオボタンに対応するタブの中身を表示する */
   #tabcheck1:checked ~ #tabcontent1 { display: block; }
   #tabcheck2:checked ~ #tabcontent2 { display: block; }
   #tabcheck3:checked ~ #tabcontent3 { display: block; }
   #tabcheck4:checked ~ #tabcontent4 { display: block; }
   #tabcheck5:checked ~ #tabcontent5 { display: block; }
   #tabcheck6:checked ~ #tabcontent6 { display: block; }
   #tabcheck7:checked ~ #tabcontent7 { display: block; }
   #tabcheck8:checked ~ #tabcontent8 { display: block; }
   #tabcheck9:checked ~ #tabcontent9 { display: block; }
   #tabcheck0:checked ~ #tabcontent0 { display: block; }

.ul_link li       { border: 1px solid silver; }
.ul_link li:hover { background-color: grey; }
.ul_link li a     { display: block; font-size: 16px; }

.ttlt {
 border: green thin outset;
 margin:  0px 0px;
 padding: 8px 4px;
 background-color: white;
 text-align: center;
 color: black;
 font-size: 12pt;

}

.mnub {
 text-align: center;
 color: black;
 margin:  0px;
 padding: 0px;
 font-size: 8pt;
 width: 100%;
 display: block;
}

.menu-link {
  background-color: silver;
  text-align: center;
  display: inline-block;
  *display: inline; /*for IE*/
  *zoom: 1; /*for IE*/
  text-decoration: none;
  border: darkgray thin outset;
  margin: 1px 1px 1px 1px;
  padding: 4px 2px;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  width: 120px;
}
.mfvt-btn {
 background-color: silver;
 text-align      : center;
 display         : inline-block;
 *display        : inline; /*for IE*/
 *zoom           : 1; /*for IE*/
 text-decoration : none;
 border          : darkgray thin outset;
 margin          : 1px 1px 1px 1px;
 padding         : 2px 2px;
 border-radius   : 2px;
 -moz-border-radius: 2px;
 -webkit-border-radius: 2px;
 height          : 36px;
 width           : 280px;
 font-size       : 16pt;
}

.txtb {
display: block;
 padding 10px;
 padding-left: 10px; 
 text-align: left;
}
divd { display: block; background-color: pink; } 
.txtc {
 display: block; 
 border-left:   5px solid blue;
 border-bottom: 1px solid blue;
 padding-left: 10px; 
 font-weight: bold; 
 text-align: left;
}
.txtd {
display: block;
 color: black;
 width: 360px;
}
.spnw { color: red;  font-weight: bold; }
.spnm { color: blue; font-weight: bold; }

li.bk1 { background-color: ivory; }
li.bk2 { background-color: beige; }
li.bks { background-color: white; }


/*ボタン装飾*/
.tabcontent label {
    border: solid 1px gray;
    cursor :pointer;
}

/*中身を非表示にしておく*/
.tabcontent .hidden_show {
    display: block;
    visibility:hidden;
    height: 0;
}

/*クリックで中身表示*/
.tabcontent input:checked ~ .hidden_show {
    visibility:visible;
    height: auto;
}

/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
/* ◇　アコーディオン表現　　　　　　　　　　　　　　　　　　　　　　　　　◇ */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
.accbox {
 display:   block;
 margin:    0px;
 padding:   0px;
 max-width: 100%;			/* 最大幅 */
 background-color: darkgray;
}					/*   ボックス全体 */
.acclbl {
 margin:           0px;
 padding:          1px 16px;
 line-height:      1.4;
 font-size:        12pt;
 background-color: snow;
 color           : navy;
 cursor:           pointer;
 transition:       all 0.5s; 
}					/*   ラベル       */

/* アイコンを表示 */
.acclbl:before {
 content: "▼";
 padding-right: 4px;
}
/* ラベルホバー時 */
.acclbl:hover {
 background-color: lime;
 color           : navy;
}
/* チェックは隠す */
.accbox input {
    display: none;
}
/* 中身を非表示にしておく */
.accbox .accshow {
 display:    block;
 overflow:   hidden;
 height:     0px;
 background-color: black;
 opacity:    0;
 transition: 0.8s;
}
/* クリックで中身表示 */
.cssacc:checked + label + .accshow {
 height: auto;
 opacity: 1;
}
.cssacc:checked + label {
 background-color: navy;
 color           : gold;
}                              /* 選択済ラベル */
/* アイコンを入れ替える */
.cssacc:checked + label:before {
    content: "▲";
}

.accbox .accshow p.pnvltxt {
 margin:      0.5em 4px;
 padding:     1px 1px;
 line-height: 1.4;
 font-size:   8pt;
 font-weight: normal;
 text-align: left;
}                 /* 内部段落基本書式 */
.accbox .accshow p.pnvlimg {
 margin:      0.5em 4px;
 padding:     1px 1px;
 line-height: 1.4;
 font-size:   0pt;
 font-weight: normal;
 text-align: center;
 background-color: black;
 float: left;
}                 /* 内部段落基本書式 */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */

/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
/* ◇　作文表現　　　　　　　　　　　　　　　　　　　　　　　　　　　　    ◇ */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
.nvldiv {
 display:    block;
 margin:  0;
 padding: 0;
}

.nvldiv p {
 margin:      0.5em 4px;
 padding:     1px 1px;
 line-height: 1.4;
 font-size:   10pt;
 font-weight: normal;
 text-align: left;
}		/* 内部段落基本書式 */
.nvldiv p.nvlfoot {
 color:            gold;
 background-color: navy;
 line-height:      1.0;
 text-align:       right;
}		/* 内部段落基本書式 */
.nvldiv p.nvlinfo {
 color:       lime;
 font-size:   0pt;
 line-height: 0.2;
 text-align:  left;
}		/* 情報 */
p.nvlarea {
 line-height: 0;
 font-size:   0pt;
 background-color: navy;
 clear: both;
}		/* 情報 */

/*==============*/
.zpimg { text-align: center; background-color: black; float: left; }
[nvltxn] { color: snow; }                   /* 通常 */
[nvltxw] { color: plum; }                   /* 女性 */
[nvltxm] { color: cyan; }                   /* 男性 */
[nvltxi] { color: lime; }  		/* 情報 */
[nvltxs] { color: gray; }                   /* 物音 */
[nvltxc] { color: gold; background-color: navy; text-align: center; }  /* 表題 */
[ztxtc] { color: gold; font-size: 12pt; font-weight: bold;   background-color: navy; text-align: center; }  /* 表題 */

/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
/* ◇　イメージ表現　　　　　　　　　　　　　　　　　　　　　　　　　　　　◇ */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
.divimg {
 display: block;
 opacity: 0.8;
 transition:  0.8s;
}
[zlblimg] { background-color: transparent; }
[zmgnimg] { margin: 88px; }
[znvpimg] { margin:  2px; }
.inpimg { }
.imgokn input { display: none; }
.imgokt input         + img { width: 224px; }
.imgok1 input         + img { width: 128px; }
.imgok2 input         + img { width:  99px;  opacity: 0.6;  transition:  0.8s; }
.imgokc input         + img { cursor: pointer; }
.imgokc input:checked + img { width: auto; opacity: 1.0;  transition:  1.8s; }/* クリックで中身表示 */
.inpimg:checked + label { background-color: pink; }
.inpimg:checked + label + .divimg { width: auto; opacity: 1; } /* クリックで中身表示 */

.rt-text { display: flex; flex-wrap: wrap;  }
.mr20    { margin-right: 20px; }




.lb_title{
	margin:10px;
}

.divlists {
 background-color : ivory;
 display          : block;
}
.acclists {
 background-color : red;
}
.acctoggle {
 display: none;
}

.Label {
 margin      : 0px;
 padding     : 1px;
 border      : 1px solid lightblue;
 display     : block;
 color       : black;
 background  : azure;
 font-weight : bold;
 font-size   : 120%;
 line-height : 120%;
 word-break  : break-all;
 word-wrap   : break-word;
 overflow    : hidden;
}
.Label::before {
 content      : "";
 width        : 6px;
 height       : 6px;
 border-top   : 2px solid black;
 border-right : 2px solid black;
 -webkit-transform : rotate(45deg);
 position          : absolute;
 top               : calc(50% - 3px);
 right             : 20px;
 transform : rotete(135deg);
}
.Label,
.content {
 -webkit-backface-visibility : hidden;
 backface-visibility         : hidden;
 transform                   : translateZ(0);
 transition                  : all 0.2s;
}
.content {
 height        : 0px;
 margin        : 0px;
 padding       : 0px;
 overflow      : hidden;
}

.content ul {
 margin : 0px;
 padding-inline-start : 32px;
 list-style-position  : inside;
}
.content ul a {
 display: block;
 /* height : 100%; */
 /* width  : 100%; */
}

.acctoggle:checked + .Label + .content {
 height     : auto;
 padding    : 1px;
 transition : all 0.2s;
}

.acctoggle:checked + .Label::before {
 transform : rotate(-45deg) !important;
}

.imgSub1 {
 margin     : 1px 4px 1px 1px;
 width      : 30px;
 height     : 30px;
 object-fit : none;
}

.lim1 {
 list-style : none;
 background-color : ivory;
 margin : 1px;
}

.tblwbdy {
 background-color : black;
 color            : yellow;
 width            : 100%;
 font-size        : 4px;
 border           : 1px solid gray;
}
.tblwtrn {
 background-color : silver;
 color            : green;
 text-align       : left;
 font-size        : 16px;
}
.tblwtdm {
 background-color : cyan;
 color            : white;
 width            : 24px;
 text-align       : left;
 font-size        : 10px;
}
.tblwtds {
 background-color : ivory;
 width            : 16px;
 text-align       : center;
 font-size        : 8px;
}


/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
/* ◇　イメージ表現　　　　　　　　　　　　　　　　　　　　　　　　　　　　◇ */
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */
.mtbldl {
 display : flex;
 flex-wrap : wrap;
 border : 1px solid red;
 border-top : none;
 taxt-align : left;
 padding : 50px;
 font-size : 10px;
}
.mtbldt {
 background : pink;
 width : 360px;
 padding : 10px;
 box-sizing : border-box;
 border : 1px solid green;
}
.mtbldd1 {
 padding : 10px;
 margin : 0px;
 border : 1px solid blue;
 width : 40px;
 box-sizing : border-box;
}
.mtbldd2 {
 padding : 10px;
 margin : 0px;
 border : 1px solid yellow;
 width : 16px;
 box-sizing : border-box;
}
/* ◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇ */