/* ---------- PC ---------- */
html {
    overflow-y: scroll;
}
body {
	margin: auto;
	padding: 10px;
	width: auto;
	color: #000;
	background: #fff;
	font-family: Calibri, Verdana, Arial, sans-serif;
	font-weight: normal;
	font-size: medium;
}
img {
	border-style: none;
}
h1, h2 {
	color: #000;
	padding: 3px;
	font-size: medium;
}
h1 {
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
	border-top: solid 1px #000;
	border-bottom: solid 1px #000;
}
h2 {
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
	border-top: solid 1px #000;
	border-bottom: solid 1px #ccc;
}
h3, h4 {
	color: #000;
	margin: 0;
	padding: 0;
	font-size: large;
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}
h4 {
	font-size: x-large;
}
p.current, p.title {
	margin: 0;
	padding: 0;
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}
.header {
	display: table; 
	width: 100%;
	background-color: #000;
	color: #fff;
	font-size: small;
}
.logo, .sns { display: table-cell; }
.logo { padding-top: 5px; padding-bottom: 2px; padding-left: 5px; text-align: left; }
.sns { padding-top: 6px; padding-bottom: 2px; padding-right: 5px; text-align: right; }

.nav {
	background: #000;
}
.gnav, .snav {
	display: table;
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
	margin: 0;
	list-style-type: none;
}
.gnav li, .snav li {
	float: none;
	display: table-cell;
	border: 0.1px solid #000;
	text-align: center;
	background: #ff0;
	height: 20px;
	line-height: 20px;
	box-sizing: border-box;
}
.gnav li a, .snav li a {
	text-decoration: none;
	color: #000;
}
.gnav li:hover, .snav li:hover {
	color: #f00;
	background-color: #fc0;
}
.gnav a:hover, .snav a:hover {
	color: #f00;
	text-decoration: underline;
}
.snav li {
	border-top: none;
	text-align: center;
}

.container{
	display: table;
	table-layout: fixed;
	width:100%;
}
.sub {
	display: table-row;
	width    : 100%;
	background: #fc0;
	vertical-align: top;
	text-align: center;
}
.menu {
	list-style:none;
	margin: 0;
	padding: 5px;
}
.menu li {
	display: inline;
	text-align: center;
	margin: 10px;
	height: 30px;
	line-height: 30px;
}
.menu li  a {
	text-decoration: none;
	color: #000;
}
.menu a:hover {
  color: #f00;
  background: #ff0;
  text-decoration: underline;
}
.main {
	display: table-row;
	width: 100%;
	min-height: 450px;
	height: auto;
	height: 450px;
	background: #fff;
	vertical-align: top;
}
.main_bk {
	display: table-row;
	width: 100%;
	min-height: 340px;
	height: auto;
	height: 340px;
	background: #000;
	vertical-align: top;
}
.main_pic {
	padding: 20px;
	text-align: center;
}
.normal_pic {
	margin: 0;
	padding: 0;
	text-align: center;
}
.main_slide {
	margin: auto;
	padding: auto;
	width: 563px; 
	text-align: center;
}
.main_text {
	padding: 0px;
	text-align: center;
}
.under {
	font-size: x-large;
	font-weight: bold;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
	background: linear-gradient(transparent 60%, #fc0 60%);
}
.main_table {
	display: table;
	width: 100%;
	padding: 10px;
	text-align: left;
	box-sizing: border-box;
}
.c2_row, .c2_row-prd {
    display: table;
	margin: auto;
    width:  65%;
}
.c2_row-rim {
    display: table;
	margin: auto;
    width:  50%;
	text-align: center;
}
.c2_cell-1 {
    display: table-cell;
    padding: 10px;
    width: 20%;
}
.c2_cell-2 {
    display: table-cell;
    width: auto;
}
.c2_cell-a {
    display: table-cell;
    padding: 10px;
    width: 40%;
	min-height: 80px;
	height: auto;
	height: 80px;
	vertical-align: middle;
	text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}
.c2_cell-b {
    display: table-cell;
    vertical-align: middle;
    width: auto;
}
.c2_cell-rim, .c2_cell-prd, .c2_cell-op {
    display: table-cell;
    padding: 0;
    width: 25%;
	vertical-align: middle;
}
.c2_cell-prd {
    width: 32.5%;
}
.c2_cell-op {
    width: 32.5%;
    text-align: center;
}

.main_map {
	padding: 0px;
	text-align: center;
}
.main_title-1, .main_title-2, .main_title-3, .main_title-4, .main_title-1r, .main_title-4r {
	display: table;
	width: 65%;
	margin: auto;
	padding: auto;
	text-align: left;
}
.main_title-1 {
	background: #fc0;
	font-weight: normal;
}
.main_title-2 {
	background: #ff0;
	font-weight: bold;
}
.main_title-3 {
	font-weight: normal;
}
.main_title-1r {
	background: #fc0;
	color: #f00;
	font-weight: bold;
}
.main_title-4r {
	color: #f00;
}
.main_title-center {
	display: inline;
	margin: auto;
	padding: auto;
	text-align: center;
}
.c4_row{
    display: table;
	margin: auto;
    width:  60%;
    text-align: center;
}
.c4_cell-1, .c4_cell-2, .c4_cell-3, .c4_cell-4 {
    display: table-cell;
    padding: 3px;
    width: 10%;
    vertical-align: middle;
}
.c3_row{
    display: table;
	margin: auto;
    width:  65%;
}
.c3_cell-1, .c3_cell-2 {
    display: table-cell;
    width: 40px;
    background: #ff0;
    border-bottom: solid 1px #fff;
    border-right: solid 1px #fff;
}
.c3_cell-1 {
    font-weight: bold;
}
.c3_cell-3 {
    display: table-cell;
    width: auto;
}
.footer {
	display: table; 
	width    : 100%;
	background: #000;
	color: #666;
	font-size: small;
}
.copyright, .update { display: table-cell; }
.copyright { padding-left 5px; text-align: left; } 
.update { padding-right 5px; text-align: right; }

/* ---------- Tablet ---------- */
@media only screen and ( min-width: 760px ) and ( max-width: 1100px ) {
	.main_title-1, .main_title-2, .main_title-3, .main_title-4, .main_title-1r, .main_title-4r {
		width: 80%;
	}
	.c2_row {
	    width: 80%;
	}
	.c2_row-rim {
	    width:  80%;
	}
	.c2_row-prd {
	    width: 100%;
	}
	.c2_cell-1 {
	    width: 30%;
	}
	.c2_cell-a {
	    width: 50%;
	}
	.c2_cell-rim, .c2_cell-prd, .c2_cell-op {
	    width: 40%;
	}
	.c4_row{
	    width:  80%;
	}
	.c4_cell-1, .c4_cell-2, .c4_cell-3, .c4_cell-4 {
	    width: 20%;
	}
	.c3_row{
	    display: table;
		margin: auto;
	    width:  80%;
	}
}

/* ---------- Mobile, Smart phone ---------- */
@media only screen and ( max-width: 759px ) {
	body {
		margin: 0px;
		padding: 0px;
		width: auto;
	}
	.header {
		width: 100%;
	}
	.nav {
		width: 100%;
	}
	.gnav {
		display: initial;
		margin: 0 0 30px;
		padding: 0;
		list-style-type: none;
	}
	clearfix
	.gnav:after {
		content: "";
		clear: both;
		display: block;
	}
	.gnav li {
		display: initial;
		float: left;
		width: 49.8%;
		height: 30px;
		line-height: 30px;
		box-sizing: border-box;
	}
	.gnav li:nth-child(odd) {
		margin-left: 0.2%;
	}
	.gnav a {
		display: block;
		line-height: 30px;
		color: #000;
		text-decoration: none;
	}
	.snav {
		display: none;
	}
	.container{
		width: 100%;
		min-height: none;
	}
	.sub {
		display: table-row;
		width: 100%;
	}
	.menu { 
		margin-left: 20px; 
		margin-bottom: 10px;
		padding: 0; 
		list-style: none; 
	}
	.menu li {
		display: inline;
		text-align: left;
		margin: 0px;
		padding: 0;
	}
	.menu li a {
		display: block; 
		text-align: left;
	}
	.main, .main_bk {
		display: table-row;
		width: 100%;
		min-height: 0px;
		height: auto;
	}
	.main_pic {
		padding: 0px;
		text-align: center;
	}
	p.resizeimage img {
		margin: 0px;
		max-width: 100%;
	}
	.main_slide {
		margin: auto;
		padding: auto;
		width: 95%; 
		text-align: center;
	}
	.under {
		font-size: medium;
	}
	.main_table {
		display: table;
		width: 100%;
		padding: 5px;
		text-align: left;
		box-sizing: border-box;
	}
	.c2_row, .c2_row-rim, .c2_row-prd {
	    display: table;
		margin: 0;
	    width:  100%;
	    table-layout: none;
	}
	.c2_cell-1, .c2_cell-2 {
	    display: table-row;
	    padding: 0;
	    width: 100%;
	}
	.c2_cell-a {
	    display: table-row;
	    padding: 0;
	    width: 100%;
	    min-height: 20px;
	    height: auto;
	    height: 20px;
	}
	.c2_cell-b {
	    display: table-row;
	    padding: 0;
	    width: 100%;
	}
	.c2_cell-rim, .c2_cell-prd, .c2_cell-op {
	    display: table-row;
	    padding: 0;
	    width: 100%;
	}

	.main_map {
		pointer-events : none;
	}
	.main_title-1, .main_title-2, .main_title-3, .main_title-4, .main_title-1r, .main_title-4r {
		width: 100%;
	}
	.c4_row {
	    display: table;
		margin: 0;
	    width:  100%;
	    table-layout: none;
	}
	.c4_cell-1, .c4_cell-2, .c4_cell-3, .c4_cell-4 {
	    display: table-row;
	    padding: 0;
	    width: auto;
	}
	.c3_row{
	    width:  100%;
	}
	.c3_cell-1, .c3_cell-2, .c3_cell-3 {
		display: table-row;
	}
	.footer {
		display: table; 
		width: 100%;
	}
	.copyright { display: table-row; text-align: left; } 
	.update { display: table-row; text-align: right; }
}
}
