*, *:after, *:before {
  -webkit-box-sizing: border-box; /* Safari,Google Chrome用 */
  -moz-box-sizing: border-box; /* Firefox用 */
  box-sizing: border-box; /* 通常用 */
}


/* トグルバー */
.animenu__toggle {
  display: none;
  cursor: pointer;
  background-color: #cc99ff;
  border: 0;
  padding: 10px;
  height: 40px;
  width: 100%;
}



.animenu__toggle:hover {
  background-color: #99ccff;
}

.animenu__toggle__bar {
  display: block;
  width: 20px;
  height: 2px;
  background-color: #fff;
  -webkit-transition: 0.15s cubic-bezier(0.75, -0.55, 0.25, 1.55);
  transition: 0.15s cubic-bezier(0.75, -0.55, 0.25, 1.55); /* 0.15sは速さ */
}

.animenu__toggle__bar + .animenu__toggle__bar {
  margin-top: 4px;
}

.animenu__toggle--active .animenu__toggle__bar {
  margin: 0;
  position: absolute; /* 絶対位置 */
}

.animenu__toggle--active .animenu__toggle__bar:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); /* 要素を回転表示 時計回りに45度 */
}

.animenu__toggle--active .animenu__toggle__bar:nth-child(2) {
  opacity: 0; /* 不透明度 */
}

.animenu__toggle--active .animenu__toggle__bar:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.animenu {
  display: block;
}

.animenu ul {
  padding: 0;
  list-style: none;
  font: 0px 'Open Sans', Arial, Helvetica;
}

.animenu li, .animenu a {
/*  display: inline-block; */
	padding: 8pt;
	font-size: 15px;
	display: block;
}

.animenu a {
  color: #aaaaaa;
  text-decoration: none;
}

/* メニュー大枠 */
.animenu__nav {
  background-color: #cc99ff; /* violet */
}

.animenu__nav > li {
  position: relative; /* 相対位置 */
/*  border-right: 1px solid #cc9999; */
}

.animenu__nav > li > a {
  padding: 10px 10px;
  /* text-transform: uppercase; 全てを大文字に */
}

.animenu__nav > li > a:first-child:nth-last-child(2):before {
  content: "";
  position: absolute; /* 絶対位置 */
  /*  border: 4px solid transparent;CSSで三角 */
  border-bottom: 0;
  border-top-color: currentColor;
  top: 50%;
  margin-top: -2px;
  right: 10px;
}

.animenu__nav > li:hover > ul {
  opacity: 1; /* 不透明度 */
  visibility: visible; /* ボックスを表示 */
  margin: 0;
}

/* メニューの親カテゴリー */
.animenu__nav > li:hover > a {
  color: #fff;
  background: #9966ff; /* violet */
}

/* メニューの子カテゴリー */
.animenu__nav > li ul li a {
  color: #fff;
  background-color: #ccccff; /* light violet */
}

.animenu__nav > li ul li a:hover {
  color: #fff;
  background-color: #ccffcc; /* light green */
}


.animenu__nav__child {
  min-width: 80%;
  position: absolute; /* 絶対位置 */
  top: 100%; /* 親リストの重なり位置。100で真下＋余白ありくらい */
  left: 0;
  z-index: 1; /* 重なりの順序を整数で指定。0を基準として、値が大きいものほど上に */
  opacity: 0;
  visibility: hidden; /* ボックスを非表示 */
  margin: 20px 0 0 0;
  background-color: #99ccff;
  -webkit-transition: margin .15s, opacity .15s;
  transition: margin .15s, opacity .15s;
}

.animenu__nav__child > li {
  width: 100%;
  border-bottom: 1px solid #99ccff;
}

.animenu__nav__child > li:first-child > a:after {
  content: '';
  position: absolute; /* 絶対位置 */
  height: 0;
  width: 0;
  left: 1em;
  top: -6px;
  border: 6px solid transparent; /* CSSで三角 */
  border-top: 0;
  border-bottom-color: inherit;
}

.animenu__nav__child > li:last-child {
  border: 0;
}

.animenu__nav__child a {
  padding: 10px;
  width: 100%;
  border-color: #999988; /* deep violet */
}

.animenu__nav__child a:hover {
  background-color: #0186ba;
  border-color: #996699;
  color: #fff;
}


@media screen and (max-width: 2000px) {
  .animenu__nav,
  .animenu__nav__child {
    float: left;
  }

/* リンクの一方・区切り線 */
  .animenu__nav > li {
    width: 100%;
    border-bottom: 1px solid #9966ff;
  }


/* 本体 */
#document { 
	width: 100%;
	margin: 0px auto;
	padding: 0px 0px 0px 0px;
	text-align: center;
}

/* メニュー */
#menu { 
	width: 180px;
	margin: 0px auto;
	padding: 0px 0px 0px 0px;
	white-space: nowrap;
	text-align: left;
	float: left;

	background-color: #cc99ff; /* light violet */
	font-size: 10pt;
}

/* メイン */
#main { 
	margin: 0 0 0 200px;
	padding: 5px 0px 5px 0px;
	text-align: left;
}

/* フッター */
#footer { 
	margin: 0px;
	padding: 10px 10px 10px 10px;
	text-align: left;
	clear: both;
	border-top: solid 1px;
	font-size: 10pt;
}




}





@media screen and (max-width: 680px) {
  .animenu__toggle {
    display: inline-block;
  }

  .animenu__nav,
  .animenu__nav__child {
    display: none;
    width: 100%;
  }

  .animenu__nav {
    margin: 10px 0;
  }



/* リンクの一方・区切り線 */
  .animenu__nav > li {
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid #9966ff;
  }

  .animenu__nav > li:last-child {
    border: 0;
  }

  .animenu__nav > li:first-child > a:after {
    content: '';
    position: absolute; /* 絶対位置 */
    height: 0;
    width: 0;
    left: 1em;
    top: -6px;
    /* border: 6px solid transparent; /* CSSで三角
    border-top: 0;
    border-bottom-color: inherit; */
  }

  .animenu__nav > li > a {
    width: 100%;
    padding: 10px;
    border-color: #110088;
    position: relative; /* 相対位置 */
  }

/* 子リンクの背景色 */
  .animenu__nav a:hover {
    background-color: #0186ba;
    border-color: #0186ba;
    color: #fff;
  }

  .animenu__nav__child {
    position: static; /* 配置方法を指定しない */
    background-color: #373737;
    margin: 0;
    -webkit-transition: none;
    transition: none;
    visibility: visible; /* ボックスを表示 */
    opacity: 1;
  }

  .animenu__nav__child > li:first-child > a:after {
    content: none;  /*  ::before 疑似要素及び :after 疑似要素を生成しない */
  }

  .animenu__nav__child a {
    padding-left: 20px;
    width: 100%;
  }



#menu , #main, #footer {
	width: auto;
	float: none;
	margin: 0px;
}



}



.animenu__nav--open {
  display: block !important;
}

.animenu__nav--open .animenu__nav__child {
  display: block;
}



/* 全体 */

body {
 font-family: "Verdana","Chicago","Arial","Helvetica","ＭＳ Ｐゴシック", "Osaka" ; 
 line-height: 160%; cursor:ne-resize;
 background-color: #ffffff;
}

/* リンク */
a:link    { color: #000000; } /* 下記のテキストリンク部分 */
a:visited { color: #990066; }
a:active  { color: #cc6699; }
a:hover   { color: #cc6699; }
a         { cursor:ne-resize; }

#short-menu a:link    { color: #000000; } /* 各ページ上部の目次リンク */
#short-menu a:visited { color: #cc6699; }
#short-menu a:active  { color: #cc6699; }
#short-menu a:hover   { color: #cc6699; }


#main a:hover {position: relative;top:1px; left:1px;}


hr { display: none; }


/* 画像 */
img { 
	border: none;
	margin: 0;
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}



/* その他の設定 */
/* メニュー
#menu li {
	margin: 0px 0px 0px -30px;
	list-style-type: none;
	background: url(../menu/cube.gif) no-repeat;
	background-position: 0px 6px;
	padding-left: 20px;
}

#menu ul li ul li {
	margin: 0px 0px 0px -20px;
	list-style-type: none;
	background: url(../menu/arrow10.gif) no-repeat;
	background-position: 0px 5px;
	padding-left: 15px;
}
 */

/* メイン */
#main .top {
	text-align: right;
	list-style-type: none;
}


/* リンク案内 */

h1 {
	padding: 0px 0px 0px 10px;
	font-size: 13pt;
	border-left: solid 8px #000000;
	border-bottom: solid 1px;
	text-align: left;
}

h2 {
	padding: 2px 2px 2px 10px;
	font-size: 13pt;
	background-color: #990066;
	color: #ffffff;
}

.caption3 {
	padding: 5px 5px 5px 10px;
	list-style-type: none;
	background: url("../menu/st.gif") ; /* ストライプ */
	background-color: #ffcccc;
	margin: 0px auto;
	font-size: 12pt;
	color: #000000;
}


#link dl,dt,dd {
	text-align: left;
}

#link dt { font-weight: bold; }
 

#link dd {

}

#link p  { text-align: left; }


#link .top  { 
	text-align: right;
	list-style-type: none;
}


/* バナー */
#bana p  { text-align: left; }

#bana ul {
	margin: 0px 0px 10px 0px;
	padding: 5px 5px 5px 5px;
	text-align: left;
}

#bana li {
	margin: 0px 5px 60px 0px;
	padding: 20px 0px 0px 0px;
	display: inline;
}

#bana img { margin: 5px 5px 0px 0px; }

#bana .top  { 
	text-align: right;
	list-style-type: none;
}


/* テキストブックマーク */
#text-bookmark ul {
	list-style-type: none;
}

#text-bookmark li {
	list-style-type: none;
	display: inline;
}


#text-bookmark .top  { 
	text-align: right;
}

/* ブックマーク */
#bookmark dl,dt,dd {
	text-align: left;
}

/*
#bookmark dd {
	margin: -40px 0px 0px 110px;
	padding: 0px 0px 20px 0px;
}
*/

#bookmark .none {
	font-weight: bold;
}

#bookmark .none2 {
	margin: 0px 20px 0px 30px;
}

#bookmark .long {
	margin: -40px 0px 0px 130px;

}



#bookmark .nomal {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 20px;

}


#bookmark p   { text-align: left; }


#short-menu li {
	list-style-type: none;
	background: url(../menu/arrow5.gif) no-repeat;
	background-position: 0px 6px;
	padding-left: 25px;
}

#bookmark .top  { 
	text-align: right;
	list-style-type: none ;
}

.ps { color: #999999; }

.caution { 
	color: #660000;
	font-weight: bold;
}

.waku {
	padding: 5px;
	border: 1px dashed #999999;
}


/* フッター */
#footer ul {
	margin: 0px auto;
}

#footer li {
	list-style-type: none;
	display: inline;
}


.hide { display: none; }
.ue { 
	border: none;
	margin: 0px 0px 5px 0px;
	padding: 0px 0px 0px 0px;
}

.caution-1a { color: #990066; font-weight: bold; }




