@charset "utf-8";
/* -----------------------------------------------------------
 =reset and default css
----------------------------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, code, del, em, img, q, small, strong, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figcaption, figure, footer, header, menu, nav, section, summary, time, mark { 
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	outline:0;
	vertical-align:baseline;
	background:transparent;
	box-sizing:border-box;
}
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; }

/* link --------------- */
a { 
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	box-sizing:border-box;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
 }

/* list --------------- */
ul { list-style:none; }
ul li { vertical-align:top; }
article ul, article ol, article dl { line-height:1.5; }
article ol { margin-left: 1.5em;}
article ol li { margin-bottom: 0.8em;}

/* table --------------- */
table { border-collapse:collapse; border-spacing:0; line-height:1.5; }
.tblScroll {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.tblScroll::-webkit-scrollbar {
 height: 5px;
}
.tblScroll::-webkit-scrollbar-track {
 background: #f1f1f1;
}
.tblScroll::-webkit-scrollbar-thumb {
 background: #bcbcbc;
}

/* alignment --------------- */
.tCenter { text-align:center; }
.tLeft { text-align:left !important; }
.tRight { text-align:right;	}
.vTop { vertical-align:top; }
.vMid { vertical-align:middle; }
.vBtm { vertical-align:bottom; }

@media print, screen and (min-width: 768px){
    .tCenterPc { text-align:center; }    
}

.fRight {
	float: right;
	padding-left: 1em;
}
/* break --------------- */
.pcNone { }
.spNone { display:none; }
@media print, screen and (min-width: 768px){
.pcNone  { display:none; }
.spNone { display:block; }
}

.nowrap { white-space:nowrap; }

/* image --------------- */
img { max-width:100%; height:auto; vertical-align:top; }

/* space --------------- */
.mgT1em { margin-top: 1em; }

.mgR1em { margin-right: 1em; }
@media print, screen and (min-width: 768px){
.mgR2emPc { margin-right: 2em; }
.mgB0Pc { margin-bottom: 0 !important; }
}

.mgB0 { margin-bottom:0 !important; }
.mgB05 { margin-bottom:5px; }
.mgB10 { margin-bottom:10px; }

.mgB0-5em { margin-bottom: 0.5em !important;}
.mgB1em { margin-bottom: 1em !important;}
.mgB1-5em { margin-bottom: 1.5em !important;}
.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 { line-height:1.3; }
.txtS { font-size: 0.933em; }
.txt2S { font-size: 0.866em; }
.txtL { font-size: 1.066em;}
.txt2L { font-size: 1.133em;}
.txt3L { font-size: 1.2em;}

address { font-style:normal; }

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

.lh15 {line-height: 1.5;}

figure { text-align: center; }
figcaption { margin-top: 5px; font-size: 1.2rem ; line-height: 1.4; text-align: center ; }

@media print, screen and (min-width: 768px){
    figcaption { font-size: 1.4rem ;}
}

/* form --------------- */
input[type="text"], input[type="image"], input[type="email"], button, textarea {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
}

button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type="radio"], input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}