﻿@charset "utf-8";
/* =============================================================================
▼ 設定
==============================================================================*/
html, body, h1, h2, h3, h4,
ul, ol, dl, li, dt, dd, p, div, span,
img, a, table, tr, th, td, figure {
    margin: 0;
    padding: 0;
    border: 0;
    font-weight: normal;
    font-size: 100%;
    vertical-align: baseline;
}

*,*:before,*:after{
	-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
			-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
			box-sizing: border-box;
}
 
header, footer, figure, figcaption, nav, section {
    display: block;
}
 
body {
    line-height: 1;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
 
ol, ul {
    list-style: none;
    list-style-type: none;
}

fieldset { border:0; }

/* =============================================================================
▼ 設定
==============================================================================*/

/* 初期フォントサイズ設定 */
html{ font-size: 16px; }
html, body{ min-height: 100%; }
body { overflow-y: scroll; }

@media screen and (max-width: 480px){
  html{ font-size: 11px !important; }
}
@media screen and (min-width: 481px) and (max-width: 640px){
  html{ font-size: 12px !important; }
}

@media screen and (max-width: 640px) {
	.table:not(.non_responsive),
	.table:not(.non_responsive) > .row,
	.table:not(.non_responsive) > .row > .cell,
	.table:not(.non_responsive) > .cell{ display: block !important; width: 100% !important; }
	.table:not(.non_responsive) > .cell+.cell{ margin-top: 1rem; }
}

@media screen and (min-width: 641px){
  html{ font-size: 16px !important; }
}

#wrapper a{
	width:100%;
	height:100%;
	zoom: 1;	/* IE6以前に対応 */
}

html body{ font-size: 1rem;line-height: 1.5; }