/* CSS Document */
*, *::after, *::before {
  box-sizing: inherit;
}
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, hr {
  margin: 0;
  padding: 0;
  border: 0;
}
html, body {
  box-sizing: border-box;
  line-height: 1.7;
  letter-spacing: 0.1rem;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
  color: var(--text);
  font-size: 16px;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main, form legend {
  display: block;
}
ol, ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
img, video, svg {
  max-width: 100%;
}

:root {
  --primary:#254e7a ;
  --accent: #38abdb;
  --sub: #cbe3ef;
  --title: #38abdb;
  --text: #223344;
  --gray: #393F47;
  --mdgray: #dfeaf5;
  --lightgray: rgba(240,240,240,0.7);
  --base: #f2f2f2;
	--base2: #f7f3ea;
  --space-unit: 1em;
  --space: calc(1.25*var(--space-unit));
  --component-padding: var(--space);
}

.padding-md {
  padding: calc(var(--space) * 1.8);
}
.padding-ss {
  padding: 0.5rem;
}
.bg_primary {
  background: var(--primary);
}
.bg_white {
  background: #FFF;
}
.bg_gray {
  background: var(--gray);
}
.bg_50gray{background: var(--base);}

.bg_lightgray {
  background: var(--lightgray);
}
.bg_title {
  background: var(--title);
}
.bg_sub {
  background: var(--sub);
}
.txt_primary {
  color: var(--primary);
}
.txt_accent {
  color: var(--accent);
}

.txt_white{
	color: #FFF!important;
}
.txt_text {
  color: var(--text);
}
.txt_center {
  text-align: center;
}
.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}