/* base.css - reset / base typography / default elements */
@charset "UTF-8";

/* Optimized for DANNER CAMP. Legacy year-based selectors normalized. */
@font-face {
  font-family: 'DINOT';
  src: url('../font/DINOT-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

.dinot-font {
  font-family: 'DINOT', sans-serif;
}

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

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: "Noto Sans JP", "メイリオ", Meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  border: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

a {
  color: inherit;
}

body {
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro W3", "ヒラギノ角ゴ Pro W3", "Osaka", "ＭＳ Ｐゴシック";
  font-size: 11px !important;
  *font-size: small;
  *font: x-small;
  line-height: 1.6 !important;
  ;

  -webkit-text-size-adjust: 100%;
}

html>body {
  font-size: small\	;
}

article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
hNav,
section {
  display: block;
}

a:link {
  color: #000;
  text-decoration: underline;
}

a:visited {
  color: #000;
  text-decoration: underline;
}

a:hover {
  color: #000;
  text-decoration: none;
}

a:active {
  color: #000;
  text-decoration: none;
}

a:focus {
  text-decoration: none;
}

a:hover img {
  -moz-opacity: 0.40;
  opacity: 0.40;
  filter: alpha(opacity=40);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
}

body,
div,
h1,
h2,
h3,
h4,
h5,
h6,
form,
ul,
li,
ol,
dl,
dt,
dd,
fieldset,
pre,
code,
legend,
blockquote {
  margin: 0;
  padding: 0;
}

p {
  margin: 0;
}

li {
  list-style: none;
}

img {
  border: none;
}

ul,
ol,
ul ul,
ol ol,
ul ol,
ol ul {
  margin: 0 0 0 0;
}

#main {
  clear: both;
}

a img {
  transition: opacity 0.2s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

a:hover img {
  opacity: 0.7;
}

.topic-year a,
span {
  color: #666;
}

iframe {
  width: 100% !important;
}

@media (max-width: 570px) {
  #main {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 320px) {

  ul,
  ol,
  ul ul,
  ol ol,
  ul ol,
  ol ul {
    margin: 0 0 0 0 !important;
  }

  #main {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  #main img {
    max-width: 100%;
    height: auto;
    width: auto\	;

  }

  a img,
  th img,
  td img {
    width: 100%;
  }
}

@media only screen and (min-width: 321px) and (max-width: 568px) {

  a img,
  th img,
  td img {
    vertical-align: top;
    width: 100%;
  }
}

html,
body,
div,
span,
object,
iframe,
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,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-style: normal;
}

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

img,
object,
embed,
video,
iframe {
  width: auto;
  max-width: 100%;
}

img,
video,
iframe {
  height: auto;
}

blockquote p:before,
blockquote p:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th,
td {
  text-align: left;
  vertical-align: top;
  font-weight: normal;
}

thead th,
thead td {
  font-weight: bold;
  vertical-align: bottom;
}

a img,
th img,
td img {
  vertical-align: top;
}

button,
input,
select,
textarea {
  margin: 0;
}

button {
  width: auto;
  overflow: visible;
}

input[type=button],
input[type=submit],
button {
  cursor: pointer;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
}

body {
  background: #ffffff;
  color: #000000;
  font-size: 11px;
  line-height: 1.6em;
  font-family: Helvetica, Arial, Tahoma, sans-serif;
}

a {
  color: #336699;
}

a:hover {
  color: #19334d;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
  margin-bottom: 0.5em;
}

h1 {
  font-size: 2.5714285714285716em;
  line-height: 1em;
}

h2 {
  font-size: 2.142857142857143em;
  line-height: 1.1em;
}

h3 {
  font-size: 1.7142857142857142em;
  line-height: 1.3em;
}

h4 {
  font-size: 1.2857142857142858em;
  line-height: 1.3em;
}

h5 {
  font-size: 1.1428571428571428em;
  line-height: 1.3em;
}

h6 {
  font-size: 1em;
  line-height: 1.3em;
  text-transform: uppercase;
}

hgroup h1,
hgroup h2,
hgroup h3,
hgroup h4 {
  margin-bottom: .1em;
}

p,
ul,
ol,
dl,
dd,
dt,
blockquote,
td,
th {
  line-height: 1.8em;
}

ul,
ol,
ul ul,
ol ol,
ul ol,
ol ul {
  margin: 0 0 0 0;
}

ol ol li {
  list-style-type: lower-alpha;
}

ol ol ol li {
  list-style-type: lower-roman;
}

p,
ul,
ol,
dl,
blockquote,
hr,
pre,
hgroup,
table,
form,
fieldset {
  margin-bottom: 0em;
}

blockquote p {
  margin-bottom: 1em;
  font-style: italic;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

tfoot th,
tfoot td {
  background-color: #f2f2f2;
}

th,
td {
  border-bottom: 1px solid #eeeeee;
  padding: 0.75em 0.5em;
}

table caption {
  text-transform: uppercase;
  font-weight: bold;
  padding-left: 0.5em;
  color: #666;
}

@-moz-document url-prefix("https://") {

  input[type=submit].btn::-moz-focus-inner,
  button.btn::-moz-focus-inner {
    border: 0;
    padding: 0;
  }
}

.bold {
  font-weight: bold;
}