html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

.bold{font-weight:bold;}

body{
  line-height:1.5em;
  font-size:14px;
  font-family:'Hiragino Kaku Gothic ProN',Meiryo, sans-serif;
}

#container{
  width:908px;
  background-color:#FFF;
  border:solid #aaa 1px;
  margin:20px auto;
  box-shadow: 0px 1px 5px 1px #aaa;
  -moz-box-shadow: 0px 1px 5px 1px #aaa;
  -webkit-box-shadow: 0px 1px 5px 1px #aaa;
  position:relative;
  z-index:10;
}

#header{
  background: #d6035d;
  width:870px;
  margin:20px auto 40px;
}

#header img{
  display: block;
  width: 100%;
}

#toptext{
  padding: 1px 20px 20px;
}

#toptext .wrapper{
  background: #fff;
  border-radius: 5px;
  color: #000;
  padding: 20px;
}

#toptext .caption{
  font-size: 130%;
  font-weight: bold;
  line-height: 1.5em;
  margin: 20px 0 0;
}

#toptext .bigfont{
  font-size: 120%;
  line-height: 1.5em;
}

#toptext .caption:first-of-type{
  margin: 0;
}

#header ul{
  margin-left: 20px;
}

.list_wrapper{
  background: #d6035d;
  border-radius:6px;
  width:860px;
  margin:0px auto 40px;
  padding: 5px;
}

table{
  background: #fff;
  border-radius:6px;
  box-sizing: border-box;
  width:100%;
}

th{
  width:220px;
  padding:10px;
}

td{
  vertical-align:top;
  padding: 10px 20px;
}

.comment .caption{
  color: #d6035d;
  font-weight:bold;
  margin-top:1em;
}

.comment .caption:first-of-type{
  margin-top:0;
}

.thumbnail{
  background-image:url(img/thumbnail.png);
  background-size: cover;
  border:solid #000 1px;
  box-sizing: border-box;
  display: block;
  margin: 0 auto;
  width:120px;
  height:90px;
}

.thumbnail:hover{
  opacity: 0.8;
}

.mail{
  background: #000;
  border-radius: 5px;
  box-sizing: border-box;
  color: #fff;
  display:block;
  font-size: 12px;
  line-height:25px;
  margin: 10px;
  padding-left: 20px;
  position: relative;
  text-decoration: none;
}

.mail:hover{
  opacity: 0.7;
}

.mail:before{
  background:url(../../img/imgset.png) -220px -15px no-repeat;
  content:"";
  display:block;
  height:15px;
  position: absolute;
  top: 5px;
  left: 15px;
  width:17px;
}

#copyright{
  font-size: 10px;
  padding:5px;
  color:#FFF;
  background:#000;
  text-align:center;
  margin:0px 10px 40px;
}

#back-top{
  display:block;
  width:80px;
  height:80px;
  position:fixed;
  bottom:50px;
  left:50%;
  margin-left:470px;
}
#back-top a{
  display:block;
  width:80px;
  height:80px;
  border-radius:10px;
  background:#999;
  border:solid #999 1px;
  position:relative;
}
#back-top a:hover{
  background:#aaa;
}
#back-top a span{
  display:block;
  width: 20px;
  height: 20px;
  border-top: 3px solid #fff;
  border-left: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin:35px auto;
}
#close{
  background-color:#DDD;
  padding:3px;
  border:solid #aaa 2px;
  display:block;
  font-size: 12px;
  margin:0px auto 20px;
  width:70px;
  text-align:center;
  color:#333;
  text-decoration:none;
}
#close:hover{
  opacity: 0.75;
}