@charset "utf-8";
/* -----------------------------------------------------------
 =reset and default css
----------------------------------------------------------- */
html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, /*sup,*/
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
canvas, iframe,
details, summary,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { 
	margin:0;
	padding:0;
	border:0;
	outline:0;
	vertical-align:baseline;
	background:transparent;
}
html {
	font-size:62.5%;/* 10px */
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust:100%;
}
article, header, footer, nav, aside, section, figure, figcaption { display:block; }

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

a {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}
table { border-collapse:collapse; border-spacing:0; line-height:1.5; }
.scroll {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 2em;
}
.scroll::-webkit-scrollbar {
  height: 5px;
}
.scroll::-webkit-scrollbar-track {
  background: #f1f1f1;
}
.scroll::-webkit-scrollbar-thumb {
  background: #bcbcbc;
}
table th {
	font-weight: 700;
}
img, video { max-width:100%; height:auto; vertical-align:top; }

address { font-style:normal; }

ul { list-style: none; }
ul li { vertical-align:top; }
article ul, article ol, article dl { line-height:1.5; }
article ol {
	margin-left: 1.2em;
}
article ol li {
	margin-bottom: 1em;
}
article ol.narrowL li, ul.narrowL li {
	margin-bottom: 0.5em;
}
article ol.narrow li, ul.narrow li {
	margin-bottom: 0.3em;
}
/* alignment --------------- */
.tCenter { text-align:center; }
.tLeft { text-align:left !important; }
.tRight { text-align:right;	}

/* flexbox --------------- */
.imgLFlexPc { margin: 0 auto 1.5em; text-align: center; }
@media print, screen and (min-width: 768px) {
.imgLFlexPc { margin: 0 40px 0 0; }
.flex1 { flex: 1; }
}

/* break --------------- */
.spNone { display:none !important; }
.spBlock { display: block; padding-top: 6px; }
@media print, screen and (min-width: 768px){
    .pcNone  { display:none !important; }
    .spNone { display:block !important; }
    .spBlock { display: inline; padding-top: 0; }
}

/* space --------------- */
.mgB0 { margin-bottom: 0 !important; }
.mgB0-5em { margin-bottom: 0.5em !important; }
.mgB0-8em { margin-bottom: 0.8em !important; }
.mgB1em { margin-bottom: 1em !important; }
.mgB1-5em { margin-bottom: 1.5em !important; }
.mgB2em { margin-bottom: 1.7em !important; }
.mgB2-5em { margin-bottom: 2em !important; }
.mgB3em { margin-bottom: 2.5em !important; }
.mgB4em { margin-bottom: 2.5em !important; }
.mgB5em { margin-bottom: 3em !important; }

.mgT0-5em { margin-top: 0.5em;}
@media print, screen and (min-width: 768px) {
.mgB2em { margin-bottom: 2em !important; }
.mgB2-5em { margin-bottom: 2.5em !important; }
.mgB3em { margin-bottom: 3em !important; }
.mgB4em { margin-bottom: 4em !important; }
.mgB5em { margin-bottom: 5em !important; }
}

/* text --------------- */
h1, h2, h3, h4, h5, h6 { font-weight: 700; line-height:1.3; }
strong { font-weight: 700; }
.txt4S { font-size: 11px;}
.txt3S { font-size: 12px;}
.txt2S { font-size: 13px;}
.txtS { font-size: 14px;}
.txtL { font-size: 16px;}
.txt2L { font-size: 18px;}
@media print, screen and (min-width: 768px) {
    .txt4S { font-size: 12px;}
    .txt3S { font-size: 13px;}
    .txt2S { font-size: 14px;}
    .txtS { font-size: 15px;}
    .txtL { font-size: 18px;}
    .txt2L { font-size: 20px;}
}

.lh15 { line-height: 1.5;}
.notes { padding-left:1em; line-height:1.5; text-indent:-1em; }

strong { font-weight: 700; }
