body {
  /*全体のフォントサイズ・色*/
  font-size: 10pt;
  color: #464646;
  background-color: #ffffff;
  overflow: auto;
}
div,
td {
  /*全体のフォントサイズ*/
  font-size: 10pt;
}
a:link {
  /*リンク色*/
  color: #554966;
  text-decoration: none;
}
a:visited {
  /*訪問済みリンク色*/
  color: #554966;
  text-decoration: none;
}
a:hover,
a:active {
  /*アクティブリンク色*/
  color: #553866;
}
.menu {
  /*メニュー部分の枠設定*/
  width: 200px; /*幅*/
  height: 1800px; /*高さ*/
  padding: 1em 0px 1em 0px;
  border: solid 1px #f9dadb; /*枠色*/
  background-color: #f9faff; /*背景色*/
}
.main {
  /*右側部分の設定*/
  width: 560px; /*幅*/
  height: 1800px; /*↑の高さと同じに*/
  padding: 1em 0px 1em 0px;
  border-top: solid 1px #f8dadb;
  border-right: solid 1px #f8dadb;
  border-bottom: solid 1px #f8dadb;
  background-color: #fbfcff;
}
.head {
  /*最上部の飾り設定*/
  width: 780px; /*幅*/
  height: 3em;
  padding: 6px;
}
.mark {
  width: 10px;
  height: 10px;
  background-color: #cac6f5; /*赤色部分*/
}
.midhead {
  width: 740px;
  height: 10px;
}
.headhr {
  height: 1px;
  margin: -1px 15px -1px 15px;
  color: #f4dadb; /*横線*/
}
h1#top {
  /*SiteTitle部分の設定*/
  font-size: 15px; /*文字サイズ*/
  font-family: Verdana, Arial, sans-serif;
  font-weight: normal;
  letter-spacing: 0.3em;
  text-align: left;
  position: relative;
  z-index: 2;
  width: 740px;
  height: 1.5em;
  margin: 0.1em 1em -0.5em 1em;
  padding: 1px 2em 1px 3em;
  border: solid 1px #f4dadb; /*枠色*/
  color: #212121; /*文字色*/
  background-color: #fefeff;
}
h2 {
  /*About,Diary,Union部分の設定*/
  font-size: 13px;
  font-family: Arial, sans-serif;
  font-weight: normal;
  letter-spacing: 0.3em;
  text-align: left;
  margin: 2em 1.5em 0.5em 1.5em;
  padding: 1px 2em 1px 1em;
  border: solid 1px #f5dada;
  color: #343434;
  background-color: #fffcfd;
}
ul {
  /*メニュー部分の設定*/
  margin: 3em 0px 1em 0px; /*上下余白*/
  padding: 0.5em 0px 0.5em 0px;
  border-top: double 3px #d4c4c9; /*上下の二重線*/
  border-bottom: double 3px #d4c4c9;
}
li {
  /*個別メニューの設定*/
  font-size: 9pt;
  font-family: Arial, Verdana, Tahoma, sans-serif;
  letter-spacing: 0.5em; /*字の間隔*/
  padding: 0.2em 1.2em;
  margin: 1.5em 0px; /*上下間隔の設定*/
  border-top: dashed 1px #dadadd; /*上下の破線*/
  border-bottom: dashed 1px #dadadd;
  list-style: none;
  background-color: #f0f0fc;
}
li.overm {
  /*マウスを乗せたときの枠色・背景色*/
  border-color: #dfdadc;
  background-color: #fcf1f3;
}
p.top {
  /*文章記述部分の設定*/
  font-size: 10pt; /*文字サイズ*/
  margin: 0.4em 2em 1em 2em;
  padding: 0.1em 0.8em 0.5em 0.5em;
}
div.diary {
  /*スクロール可能の部分の設定*/
  height: 9em; /*高さ*/
  overflow: auto;
  font-size: 10pt;
  margin: 0.4em 2em 1em 2em;
  padding: 0.1em 0.8em 0.5em 0.5em;
}
address {
  /*最下部のCopyright部分*/
  margin: -1em 0px 1em 0px;
  position: relative;
  z-index: 2;
  width: 740px;
  padding: 2px;
  font-size: 8pt;
  font-style: normal;
  font-family: Arial, sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  border: solid 1px #f4dadb;
  background-color: #fefeff;
}
tr {
  margin: 10px 0;
}

.form-group {
  margin-bottom: 1em;
  margin-left: 20px;
}

.form-group label {
  display: block;
  margin-bottom: 0.5em;
}

.form-group input,
.form-group textarea {
  width: 90%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.required {
  color: red;
}

.form-buttons {
  text-align: center;
  margin-top: 1.5em;
}

button {
  padding: 0.5em 1em;
  border: none;
  background-color: #007bff;
  color: white;
  border-radius: 4px;
  cursor: pointer;
}

button:hover {
  background-color: #0056b3;
}
