/*-------------------------*/
/* +RESETS                 */
/*-------------------------*/
*, *:before, *:after { 
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
   box-sizing: border-box;
   margin: 0;padding: 0;
}

body {  font-family: Arial, Helvetica, Sans-serif;  color: #000;  background: #fff; }
html, body {  margin: 0;  padding: 0; }
a img {  border: none; }
blockquote p, button, input, li h1, li h2, li h3, li h4, li h5, li h6, li li, li p, select, td p, th p {  font-size: 100%; }

/*-------------------------*/
/* +NORMALIZE              */
/*-------------------------*/
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  font-size: 0.98rem;color:#454545}

footer,header,main,menu,nav,section,summary {  display: block; }

a {  background-color: transparent; }
a:active,a:hover {  outline: 0; }
img {  border: 0; }
table {  border-collapse: collapse;  border-spacing: 0; }
td,th {  padding: 0; }
ul {list-style-type: none;}

/*---------*/

html, body {  height: 100%;  }

a {text-decoration: none;color:#0072a8}
a:hover {color: #ff8000;position: relative;top:1px}

#wrapper {
  min-height: 100%;
  background-color:#ffffff;
}

#header {}

#header h1 {max-width:1080px;
  margin:0 auto 0.5em auto;
  font-size: 1.6em;text-shadow:#cccccc 1px 1px 3px;height: 3em;line-height: 3em;}
  
#header h1::before {content:url(../../images/logo.gif);position: relative;top:0.4em;margin-right: 0.5em;}

#add {
  clear: both;
  display: block;
  overflow: hidden;
  background-color: #00A3EF;
  background-image: -ms-linear-gradient(left, #FFFFFF 0%, #00A3EF 100%);
  background-image: -moz-linear-gradient(left, #FFFFFF 0%, #00A3EF 100%);
  background-image: -o-linear-gradient(left, #FFFFFF 0%, #00A3EF 100%);
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #FFFFFF), color-stop(1, #00A3EF));
  background-image: -webkit-linear-gradient(left, #FFFFFF 0%, #00A3EF 100%);
  background-image: linear-gradient(to right, #FFFFFF 0%, #00A3EF 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFF', endColorstr='#00A3EF', GradientType=1)";
}

/*グローバルナビゲーション*/
#header nav {  max-width:1080px;
  margin:1em auto;
}
#header nav ul {-webkit-display: flex;display: flex;-webkit-justify-content: flex-end;justify-content:flex-end;}
#header nav a {margin-left: 1em;}
#header nav a::before {content:"\00bb\0020"}



#contents {
  max-width:1080px;
  margin:0 auto 3em auto;
  padding-bottom: 50px;
  line-height: 1.4;
  position: relative;
  display: -webkit-flex;
  display: flex;
}

.list h2,.list h3 {margin: 1em 0 0.8em 0;font-size:1.1em}
.list h2 {
  position:relative;
  padding:5px 25px;
  border-bottom:3px solid #006699;
}
.list h2:before{
  content:"";
  display:block;
  width:10px;
  height:10px;
  border:2px solid #006699;
  position:absolute;
  top:11px;
  left:3px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.list h3 {
  position:relative;
  padding:5px 25px;
  border-bottom:2px solid #006699;
}
.list h3:before{
  content:"";
  display:block;
  width:10px;
  height:10px;
  border:1px solid #006699;
  position:absolute;
  top:11px;
  left:3px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

#contents img {vertical-align: middle;}


/*pdfアイコン*/
.pdf::after {content: "PDF";
 margin-left: 0.5em;
 color: red;
 border:1px solid red;
 padding: 2px;
 font-size:xx-small;
 position: relative;top:-0.5em}


/*左メニュー*/
.navi {-webkit-flex:1;flex:1;margin-right: 1em;background-color: #ffffff;position: relative;}
.navi ul {margin: 1em 1em 2em 0;}
.navi li {margin-bottom: 0.5em;padding: 0.2em;  border-bottom:1px dashed #81c2fa;font-size: 0.98em;}
.navi li a::before{content:"\025fd";margin-right: 0.1em;}

#menu {
}
#menu h3 {margin: 0;color:#006699}

#menu p {padding-bottom: 4em;}


.txt {padding: 0.5em;}
.txt ul {margin-top: 0.5em;}
.txt li {list-style-type: square;margin:0 1em 0.2em 1.5em}
.txt span {border-bottom: 1px #006699 dashed;}


.index {margin: 1em 0;padding:1.5em;border: 1px #cccccc dashed;}

/*掲載リスト*/

.list {-webkit-flex:3;flex:3;}
.list dl {margin-top: 1.5em;border-bottom: 3px #cccccc double;}
.list dt {padding: 0.4em 0.5em 0.3em 0.8em;font-weight: bold;letter-spacing: 0.08em;/*text-shadow:#ffffff 1px 1px 1px;*/}
.list dt a {color:#000000}
.list dt a:hover {text-shadow:#ffffff 1px 1px 2px}
.list dt a::before {content:"\025b6\0020"}
.list dd {padding: 0.5em 0 1.2em 1.5em;}
.list dd p {margin: 1em 0;text-align: right;}

.ja {background-color:#cae445;}
.jb {background-color:#cabaeb}
.jc {background-color:#f8c3bd}
.jd {background-color:#decf52}
.je {background-color:#f6b050}
.jf {background-color:#d4a4b2}
.jg {background-color:#a1bee6}
.jh {background-color:#bfcdfc}
.jje {background-color:#87b062}


.jstage::after {content:"JSTAGE";font-size:0.8em;border:1px #006699 solid;padding:0 0.5em;margin-left: 0.4em;}
.jstage:hover::after {border:1px #ff8000 solid;background-color: #fff4f4;}



/**/
#faq {padding-bottom: 3em;}
#faq ul {margin-top: 0.5em;}
#faq li a::before {content:"\00bb\0020"}
#faq dd {padding: 1em 0 1.5em 1.5em;}


.back {text-align: right;margin: 2em 1em 4em 1em;}

#footer {
  height: 50px;
  margin-top: -50px;
  background-color:#5ea9da;
  color:#ffffff;
  text-align:center;
}
#footer p {
  padding-top:15px
}


@media screen and (max-width: 1080px) {
#contents { width: 98%;margin: 0 auto; }
.navi {font-size: 0.9em;}
}