@charset "UTF-8";

/* -------------------------------------------------- */
/*  全体リセット */
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;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

/* -------------------------------------------------- */
/*  基本設定 */
body {
  color: #222;
  background-color: #fdfdfd;
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
  -webkit-text-size-adjust: 100%;
  font-family: 'Aptos', 'M PLUS 1', 'Kosugi Maru', 'UD Digi Kyokasho NP-R',
    'Noto Sans JP', -apple-system, BlinkMacSystemFont,
    "Arial Nova", Roboto, "Helvetica Neue",
    "Hiragino Kaku Gothic ProN", sans-serif;
  background-image: url(../img/back_green.jpg);
  background-size: cover;
  background-attachment: fixed;
}

/* -------------------------------------------------- */
/*  リンク */
a {
  color: #002d8b;
  text-decoration: underline;
}
a:visited {
  color: #002d8b;
}
a:hover {
  color: #f7250c;
  text-decoration: underline;
}

/* -------------------------------------------------- */
/*  ページレイアウト */
#wrapper {
  margin: 1em auto 0;
  text-align: left;
  width: 90%;
  max-width: 900px;
  background-color: #fff;
  padding: 1em 2em;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

/* -------------------------------------------------- */
/*  ヘッダー */
#header {
  padding: 20px 20px 10px;
  border-bottom: 2px solid #427d3a;
}
h1 {
  font-size: 1.5em;
  text-align: right;
  font-weight: normal;
  color: #2e5c24;
}
.logo {
  color: #2e5c24;
  font-size: 2.2em;
  margin-bottom: 0.3em;
}
.logo a {
  text-decoration: none;
  color: inherit;
}
.description {
  font-size: 0.9em;
  color: #333;
}

/* -------------------------------------------------- */
/*  ナビゲーション */
#globalnavi {
  width: 100%;
  margin-top: 0.5em;
}
#globalnavi ul {
  list-style-type: none;
  display: flex;
  justify-content: space-between;
  background-color: #427d3a;
  border-radius: 4px;
  overflow: hidden;
}
#globalnavi li {
  flex: 1;
  border-right: 1px solid #ccc;
}
#globalnavi li:last-child {
  border-right: none;
}
#globalnavi li a {
  text-decoration: none;
  display: block;
  padding: 0.6em 0;
  color: #ffffff;
  text-align: center;
  font-weight: 500;
}
#globalnavi li a:hover {
  background-color: #649f5c;
}

/* -------------------------------------------------- */
/*  コンテンツ */
#container {
  padding-top: 2em;
  width: 100%;
}
#contents {
  padding: 0 10px 2em;
}
#contents p {
  line-height: 1.7;
  margin-bottom: 0.8em;
}
#contents ul, #contents ol {
  margin: 1em 0 1em 2em;
}
#contents li {
  margin-bottom: 0.6em;
  line-height: 1.6;
}

/* -------------------------------------------------- */
/*  見出し */
h2 {
  font-size: 1.6em;
  margin: 1em 0 0.5em;
  padding: 6px 0 6px 12px;
  border-left: 8px solid #427d3a;
  border-bottom: 2px solid #2e5c24;
  color: #2e5c24;
  background-color: #f0f7f1;
  border-radius: 4px 4px 0 0;
}
h3 {
  font-size: 1.4em;
  margin: 1em 0 0.5em;
  padding: 4px 0 4px 8px;
  border-bottom: 1px solid #333;
  color: #333;
}
h4 {
  font-size: 1.2em;
  margin: 1em 0 0.5em;
  padding: 4px 0 4px 8px;
  color: #444;
}
h5, h6 {
  font-size: 1.0em;
  margin: 0.8em 0 0.5em;
  padding: 3px 0 3px 6px;
  color: #555;
}

/* -------------------------------------------------- */
/*  囲み枠 */
#contents .kakomi {
  border: 1px solid #C0C0C0;
  padding: 10px;
  background: #ffffff;
  border-radius: 4px;
}

/* -------------------------------------------------- */
/*  論文リスト */
#contents .paper {
  margin-left: 20pt;
  text-indent: -20pt;
}

/* -------------------------------------------------- */
/*  フッター */
#footer {
  padding: 1.2em 0 1.5em;
  clear: both;
  text-align: center;
  border-top: 1px solid #ccc;
  color: #555;
  font-size: 0.85em;
}
