body {
  font-family: "Helvetica Neue", "Meiryo UI";
  font-size: 10.5pt;
  width: 80%;
  padding: 0% 5% 0% 5%;
  margin: 5% 5% 5% 5%;
}

.side-right {
  margin-left: auto;
  text-align: right;
}

.side-right a {
  text-decoration: none;
  /*
  font-weight:bold;
  */
}

.side-right a:after {
  /* pre: ソース中の連続する半角スペース、タグ、改行をそのまま表示する。
  ** \A は改行

  content: "\A";
  white-space: pre;
  */
}

/* http://un-tech.jp/css-border-triangle/
*/
.icon-arrow-left {
  /* display: inline;　 divで改行させない */
  position: relative;
  padding-left: 10px;
}

.icon-arrow-left:before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  /* left: 0; */
  margin-left: -10px;
  width: 0;
  height: 0;
  margin-top: -5px;
  border-top: 5px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 6px solid #ee4f16;
}

.title {
  clear: both;
  border: 1px solid #888888;
  display: block;
  background-image: url("../images/title.jpg");
}

p.bigtitle {
  z-index: 2;
  line-height: 1em;
  text-align: center;
  font-size: 76pt; /* 96pt */
  color: transparent;
  text-shadow : rgba(255,255,255,0.5) 0 5px 6px, rgba(255,255,255,0.2) 1px 3px 3px;
  -webkit-background-clip : text;
  font-weight: 900;
  background-color : #404040;
}

input[type="radio"]{
  -webkit-appearance: none;
  width:15px;
  height:15px;
  border:2px solid #19283C;
  border-radius:15px;
  background:transparent;
  opacity:0.5;
  /*
  width:100%;
  */
  float: left;
}

input[type="radio"]:checked{
  background:#19283C;
  opacity:1;
  float: left;
}

p.preamble {
  text-align: right;
  margin: 0px 0px 0px 0px;
}

.footer {
  text-align: right;
  margin: 0px 0px 0px 0px;
}

.menubar {
  clear: both;
  /*
  margin: 0% 10% 0% 10%;
  background: red;
  */
}

.menuitem {
  float: left;
  width: calc(100% / 5);
  background: black;
  line-height: 3em;
  text-align: center;
}

.bg-orange {
  background: orange;
}

.bg-coral {
  background: coral;
}

.bg-turquoise {
  background: turquoise;
}

.bg-royalblue {
  background: royalblue;
}

.endmenu {
  clear: both;
}

.menuitem a {
  color: white;
  text-decoration: none;
}

/*
*, *:before, *:after {
  box-sizing: border-box;
}
*/

.board {
  clear: both;
  padding: 0px 5px 0px 5px;
  background: #a0a0a0;
  overflow: auto; /* floatが配置される場合は、height=0になるのを防ぐ */
  box-sizing: border-box;
  display: block;
}

.card {
  margin: 1px;
  border: 1px solid 0x808080;
  float: left;
  width: calc(99% / 4);
  height: 200%;
  overflow: hidden;
  display: block;
  background: white;
  color: black;
  padding: 0px 1px 0px 0px;
  box-sizing: border-box;
  position: relative;
}

.board a {
  width:80px;
  height: 1em;
  font-family: "Calibri";
  font-size:12x;
  /*
  font-weight:bold;
  position: absolute;
  bottom: 0px;
  right: 0px;
  */
  text-decoration:none;
  display:block;
  text-align:center;
  padding:8px 0 10px;
  color:#fff;
  background-color:#49a9d4;
  /* margin: 2px; */
  margin-left: auto;
}

.columns {
  clear: both;
}

.column1 {
  display: inline-block;
  width: 15%;
  height: 100%;
  float: left;
  padding: 0.5em;
}

.column2 {
  display: inline-block;
  border-left: 1px solid #808080;
  width: 80%;
  height: 100%;
  float: left;
  padding: 0.5em;
  color: #202020;
}

.column2 h2 {
  color: slategray;
  border-bottom: 1px solid dodgerblue;
}

.column2 a {
  text-decoration: none;
  color: dodgerblue;
}

.footer {
  clear: both;
}

.box1 {
  background: #eeeeee;
  border: 1px solid; #cccccc;
  padding: 0.5em;
}

.box2 {
  background: #eeeeee;
  box-shadow: 5px 5px 5px 5px rgba(0,0,0,0.4) inset;
}
