@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : common.css
 author     : Ability Consultant
 style info : 基本・共通設定
=================================================================== */
#footer .box_footer:after {
	content: "";
	display: table;
	clear: both;
}

@-moz-keyframes mainimg {
	0% {
		-moz-transform: scale(1.2, 1.2);
		transform: scale(1.2, 1.2);
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	100% {
		-moz-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-webkit-keyframes mainimg {
	0% {
		-webkit-transform: scale(1.2, 1.2);
		transform: scale(1.2, 1.2);
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	100% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@keyframes mainimg {
	0% {
		-moz-transform: scale(1.2, 1.2);
		-ms-transform: scale(1.2, 1.2);
		-webkit-transform: scale(1.2, 1.2);
		transform: scale(1.2, 1.2);
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	100% {
		-moz-transform: scale(1, 1);
		-ms-transform: scale(1, 1);
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
	}
}
@-moz-keyframes logo {
	0% {
		opacity: 0;
		-moz-transform: translateY(5%);
		transform: translateY(5%);
	}
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
		transform: translateY(0);
	}
}
@-webkit-keyframes logo {
	0% {
		opacity: 0;
		-webkit-transform: translateY(5%);
		transform: translateY(5%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes logo {
	0% {
		opacity: 0;
		-moz-transform: translateY(5%);
		-ms-transform: translateY(5%);
		-webkit-transform: translateY(5%);
		transform: translateY(5%);
	}
	100% {
		opacity: 1;
		-moz-transform: translateY(0);
		-ms-transform: translateY(0);
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-moz-keyframes scroll {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		-moz-transform: translateY(35%);
		transform: translateY(35%);
	}
}
@-webkit-keyframes scroll {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		-webkit-transform: translateY(35%);
		transform: translateY(35%);
	}
}
@keyframes scroll {
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		-moz-transform: translateY(35%);
		-ms-transform: translateY(35%);
		-webkit-transform: translateY(35%);
		transform: translateY(35%);
	}
}
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
html {
	font-size: small;
	line-height: 1.5;
}

body {
	color: #000;
	background: #fff;
	-webkit-text-size-adjust: none;
	font-size: 131%;
}
.ie body {
	font-size: 127%;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  body {
		font-size: 108%;
  }
}
@media only screen and (max-width: 640px) {
  body {
		font-size: 100%;
  }
}
body a {
	color: #1a1a1a;
	text-decoration: underline;
}
.mouse body a:hover, .touch body a.touchstart {
	text-decoration: none;
	color: #333333;
}
body img {
	max-width: 100%;
	-webkit-touch-callout: none;
}

body, pre, input, textarea, select {
	font-family: "宋体", Arial, Microsoft Yahei, Verdana, sans-serif, Helvetica;
}

input, select, textarea {
	font-size: 100%;
}

html.ie8 .view_tab,
html.ie8 .view_tab_sp,
html.ie8 .view_sp {
	display: none !important;
}
html.ie8 #page {
	min-width: 1000px !important;
	margin: auto;
	font-size: 100% !important;
}

@media only screen and (min-width: 1041px) {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
@media print {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
.ie8 body .view_tab-sp, .ie8 body .view_tab {
	display: none !important;
}
@media only screen and (min-width: 641px) {
  body .view_sp {
		display: none !important;
  }
}
@media print {
  body .view_sp {
		display: none !important;
  }
}
.ie8 body .view_sp {
	display: none !important;
}
@media only screen and (max-width: 1040px) {
  body .view_pc {
		display: none !important;
  }
}
@media only screen and (max-width: 640px) {
  body .view_pc-tab, body .view_tab {
		display: none !important;
  }
}

.mouse .over {
	-moz-transition: opacity 200ms ease-in;
	-o-transition: opacity 200ms ease-in;
	-webkit-transition: opacity 200ms ease-in;
	transition: opacity 200ms ease-in;
}
.mouse .over:hover, .touch .over.touchstart {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
}
.touch .over {
	-webkit-tap-highlight-color: transparent;
}
.touch .over.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}

/* -----------------------------------------------------------
	#page
----------------------------------------------------------- */
#page {
	position: relative;
	z-index: 0;
}
@media only screen and (min-width: 641px) {
  #page {
		font-size: 100% !important;
  }
}
@media print {
  #page {
		font-size: 100% !important;
  }
}
.ie8 #page {
	font-size: 100% !important;
}
.lower #page {
	padding-top: 300px;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  .lower #page {
		padding-top: 15%;
  }
}
@media only screen and (max-width: 640px) {
  .lower #page {
		padding-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  #page {
		padding-bottom: 50px;
  }
}

/* -----------------------------------------------------------
	#header
----------------------------------------------------------- */
@media only screen and (min-width: 641px) {
  #header {
		position: fixed;
		z-index: -1;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
  }
}
@media print {
  #header {
		position: fixed;
		z-index: -1;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
  }
}
.ie8 #header {
	position: fixed;
	z-index: -1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
@media only screen and (min-width: 641px) {
  .lower #header {
		height: 0;
		padding-top: 300px;
  }
}
@media only screen and (min-width: 641px) and (min-width: 641px) and (max-width: 1040px) {
  .lower #header {
		padding-top: 15%;
  }
}
@media only screen and (min-width: 641px) and (max-width: 640px) {
  .lower #header {
		padding-top: 0;
  }
}

@media print {
  .lower #header {
		height: 0;
		padding-top: 300px;
  }
}
.ie8 .lower #header {
	height: 0;
	padding-top: 300px;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  .ie8 .lower #header {
		padding-top: 15%;
  }
}
@media only screen and (max-width: 640px) {
  .ie8 .lower #header {
		padding-top: 0;
  }
}
@media only screen and (max-width: 640px) {
  #header {
		padding-bottom: 50%;
		position: relative;
  }
  .lower #header {
		border-top: 3em solid transparent;
  }
}
#header:before {
	content: '';
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: no-repeat center;
	background-size: cover !important;
}
#homepage #header:before {
	background-image: url(../images/home/img_mainimg.jpg);
}
#about #header:before {
	background-image: url(../about/images/title.jpg);
}
#access #header:before {
	background-image: url(../access/images/title.jpg);
}
@media only screen and (min-width: 641px) {
  #header:before {
		-webkit-animation: mainimg 28000ms linear;
		-moz-animation: mainimg 28000ms linear;
		animation: mainimg 28000ms linear;
		-webkit-animation-fill-mode: both;
		-moz-animation-fill-mode: both;
		animation-fill-mode: both;
  }
}
@media print {
  #header:before {
		-webkit-animation: mainimg 28000ms linear;
		-moz-animation: mainimg 28000ms linear;
		animation: mainimg 28000ms linear;
		-webkit-animation-fill-mode: both;
		-moz-animation-fill-mode: both;
		animation-fill-mode: both;
  }
}
.ie8 #header:before {
	-webkit-animation: mainimg 28000ms linear;
	-moz-animation: mainimg 28000ms linear;
	animation: mainimg 28000ms linear;
	-webkit-animation-fill-mode: both;
	-moz-animation-fill-mode: both;
	animation-fill-mode: both;
}
#homepage #header .box_logo {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	margin-top: -100px;
	text-align: center;
	-webkit-animation: logo 1200ms 2000ms;
	-moz-animation: logo 1200ms 2000ms;
	animation: logo 1200ms 2000ms;
	-webkit-animation-fill-mode: both;
	-moz-animation-fill-mode: both;
	animation-fill-mode: both;
}
@media only screen and (max-width: 640px) {
  #homepage #header .box_logo {
		margin-top: -3em;
  }
}
#homepage #header .box_logo h1 {
	font-size: 353%;
	line-height: .98;
	font-weight: 800;
}
@media only screen and (max-width: 640px) {
  #homepage #header .box_logo h1 {
		font-size: 177%;
  }
}
#homepage #header .box_logo h1 a {
	text-decoration: none;
}
#homepage #header .box_logo h1 em {
	display: block;
	font-size: 122%;
}
#homepage #header .box_logo .txt {
	margin-top: .2em;
	font-size: 142%;
}
@media only screen and (max-width: 640px) {
  #homepage #header .box_logo .txt {
		font-size: 83%;
  }
}
#homepage #header .box_logo .btn_scroll {
	margin-top: 1em;
	-webkit-animation: scroll 1600ms 3800ms;
	-moz-animation: scroll 1600ms 3800ms;
	animation: scroll 1600ms 3800ms;
	-webkit-animation-fill-mode: both;
	-moz-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}
.lower #header .box_logo {
	position: absolute;
	left: .3%;
	top: 0;
	text-align: center;
	background: #fff;
	padding: 1.7em .3em;
}
@media only screen and (max-width: 640px) {
  .lower #header .box_logo {
		left: 0;
		top: auto;
		bottom: 100%;
		width: 100%;
		padding: 0;
  }
}
.lower #header .box_logo h1 {
	font-size: 83%;
	line-height: .98;
	font-weight: 800;
}
@media only screen and (max-width: 640px) {
  .lower #header .box_logo h1 {
		font-size: 118%;
		padding: .8em .3em;
  }
}
@media only screen and (min-width: 641px) {
  .lower #header .box_logo h1 em {
		display: block;
		font-size: 122%;
  }
}
@media print {
  .lower #header .box_logo h1 em {
		display: block;
		font-size: 122%;
  }
}
.ie8 .lower #header .box_logo h1 em {
	display: block;
	font-size: 122%;
}
#header #gnav {
	position: absolute;
	right: 1em;
	top: 1em;
}
#header #gnav li {
	display: inline-block;
	vertical-align: middle;
	*vertical-align: auto;
	*zoom: 1;
	*display: inline;
}
#header #gnav li:not(:first-child) {
	margin-left: 1em;
}
#header #gnav li a {
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 0.5);
	text-decoration: none !important;
}
.mouse #header #gnav li a:hover, .touch #header #gnav li a.touchstart {
	text-decoration: underline !important;
}
.touch #header #gnav li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #header #gnav li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
@media only screen and (max-width: 640px) {
  #page #header #gnav {
		position: fixed;
		left: 0;
		top: auto;
		bottom: 0;
		width: 100%;
		z-index: 100;
		font-size: small;
		background: #cce8ff;
  }
  #page #header #gnav li {
		margin-left: 0 !important;
		float: left;
		width: 30%;
  }
  #page #header #gnav li:nth-child(2) {
		width: 40%;
  }
  #page #header #gnav li:nth-child(1) a:before {
		content: "";
  }
  #page #header #gnav li:nth-child(2) a:before {
		content: "";
  }
  #page #header #gnav li:nth-child(3) a:before {
		content: "";
  }
  #page #header #gnav li a {
		display: block;
		text-align: center;
		text-decoration: none !important;
		padding-top: 5px;
  }
  #page #header #gnav li a:before {
		content: "";
		font-family: FontAwesome;
		vertical-align: middle;
		margin-right: .3em;
		display: block;
		text-align: center;
		font-size: 206%;
		line-height: 1;
		margin-right: 0;
  }
}

/* -----------------------------------------------------------
	#contents
----------------------------------------------------------- */
#contents {
	background: #fff;
}

/* -----------------------------------------------------------
	#footer
----------------------------------------------------------- */
#footer {
	background: #f5f5f5;
}
#footer .btn_ptop {
	position: absolute;
	top: -35px;
	right: 10%;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  #footer .btn_ptop {
		right: 2.5%;
  }
}
@media only screen and (max-width: 640px) {
  #footer .btn_ptop {
		width: 10%;
		left: 50%;
		right: auto;
		margin-left: -5%;
		top: 0;
		margin-top: -5%;
  }
}
#footer .box_footer {
	position: relative;
	background: #e7e7e7;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	padding: 2em 10%;
	padding: 2em 10%;
	box-shadow: inset 0 1em 2em -1em #dfdfdf;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  #footer .box_footer {
		padding: 2em 2.5%;
  }
}
@media only screen and (max-width: 640px) {
  #footer .box_footer {
		padding: 3em 2.5% 2em;
  }
}
#footer .box_footer .box_logo {
	text-align: center;
}
@media only screen and (min-width: 641px) {
  #footer .box_footer .box_logo {
		float: left;
  }
}
@media print {
  #footer .box_footer .box_logo {
		float: left;
  }
}
.ie8 #footer .box_footer .box_logo {
	float: left;
}
#footer .box_footer .box_logo .logo {
	font-size: 177%;
	line-height: .98;
	font-weight: 800;
}
#footer .box_footer .box_logo .logo em {
	display: block;
	font-size: 122%;
}
#footer .box_footer .box_logo .txt {
	margin-top: .2em;
	font-size: 83%;
}
#footer .box_footer .box_logo #language {
	margin-top: 1em;
	overflow: hidden;
	display: inline-block;
	font-size: .8em;
}
#footer .box_footer .box_logo #language li {
	float: left;
}
#footer .box_footer .box_logo #language li:not(:first-child):before {
	content: '/';
	margin: 0 .5em;
}
#footer .box_footer .box_logo #language li a {
	color: #2fb5b5;
	text-decoration: none !important;
}
.mouse #footer .box_footer .box_logo #language li a:hover, .touch #footer .box_footer .box_logo #language li a.touchstart {
	text-decoration: underline !important;
}
.touch #footer .box_footer .box_logo #language li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_footer .box_logo #language li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_footer .box_logo #language li span {
	color: #aaa;
}
@media only screen and (min-width: 641px) {
  #footer .box_footer .box_nav {
		float: right;
  }
}
@media print {
  #footer .box_footer .box_nav {
		float: right;
  }
}
.ie8 #footer .box_footer .box_nav {
	float: right;
}
@media only screen and (max-width: 640px) {
  #footer .box_footer .box_nav {
		overflow: hidden;
		margin-top: 2em;
  }
}
#footer .box_footer .box_nav dl {
	display: inline-block;
	vertical-align: top;
	margin-right: 3em;
	text-align: center;
}
@media only screen and (max-width: 1040px) {
  #footer .box_footer .box_nav dl:nth-child(2) {
		margin-right: 0;
  }
}
@media only screen and (max-width: 640px) {
  #footer .box_footer .box_nav dl {
		float: left;
		width: 50%;
		margin: 0;
  }
}
#footer .box_footer .box_nav dl dt {
	font-size: 106%;
	margin-bottom: 1em;
	line-height: 1;
	font-weight: bold;
}
@media only screen and (max-width: 640px) {
  #footer .box_footer .box_nav dl dt {
		margin-bottom: 0.3em;
  }
}
#footer .box_footer .box_nav dl dd {
	font-size: 71%;
	line-height: 1.8;
}
#footer .box_footer .box_nav dl a {
	text-decoration: none !important;
}
.mouse #footer .box_footer .box_nav dl a:hover, .touch #footer .box_footer .box_nav dl a.touchstart {
	text-decoration: underline !important;
}
.touch #footer .box_footer .box_nav dl a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_footer .box_nav dl a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_sns {
	text-align: center;
	padding: 90px 0 60px;
}
@media only screen and (min-width: 641px) and (max-width: 1040px) {
  #footer .box_sns {
		padding: 60px 0;
  }
}
@media only screen and (max-width: 640px) {
  #footer .box_sns {
		padding: 16.66667% 0;
  }
}
#footer .box_sns ul li {
	display: inline-block;
	vertical-align: middle;
	*vertical-align: auto;
	*zoom: 1;
	*display: inline;
	font-size: 142%;
}
#footer .box_sns ul li:not(:first-child) {
	margin-left: 1em;
}
.mouse #footer .box_sns ul li:nth-child(1) a:hover, .touch #footer .box_sns ul li:nth-child(1) a.touchstart {
	background: #3B5998;
	border-color: #3B5998;
}
.touch #footer .box_sns ul li:nth-child(1) a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li:nth-child(1) a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
.mouse #footer .box_sns ul li:nth-child(2) a:hover, .touch #footer .box_sns ul li:nth-child(2) a.touchstart {
	background: #55acee;
	border-color: #55acee;
}
.touch #footer .box_sns ul li:nth-child(2) a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li:nth-child(2) a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
.mouse #footer .box_sns ul li:nth-child(3) a:hover, .touch #footer .box_sns ul li:nth-child(3) a.touchstart {
	background: #3f729b;
	border-color: #3f729b;
}
.touch #footer .box_sns ul li:nth-child(3) a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li:nth-child(3) a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_sns ul li a {
	display: table;
	width: 1.4em;
	height: 1.4em;
	margin: auto;
	border-radius: 50%;
	text-align: center;
	line-height: 1;
	text-decoration: none;
	border: 3px solid #c0c0c0;
	background: transparent;
	color: #c0c0c0;
	-moz-transition-property: background, border;
	-o-transition-property: background, border;
	-webkit-transition-property: background, border;
	transition-property: background border;
	-moz-transition-duration: 300ms;
	-o-transition-duration: 300ms;
	-webkit-transition-duration: 300ms;
	transition-duration: 300ms;
	-moz-transition-timing-function: #tim;
	-o-transition-timing-function: #tim;
	-webkit-transition-timing-function: #tim;
	transition-timing-function: #tim;
	-moz-transition-delay: 100ms;
	-o-transition-delay: 100ms;
	-webkit-transition-delay: 100ms;
	transition-delay: 100ms;
}
.mouse #footer .box_sns ul li a:hover, .touch #footer .box_sns ul li a.touchstart {
	-moz-transition-delay: 0ms;
	-o-transition-delay: 0ms;
	-webkit-transition-delay: 0ms;
	transition-delay: 0ms;
}
.touch #footer .box_sns ul li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
.mouse #footer .box_sns ul li a:hover i, .touch #footer .box_sns ul li a.touchstart i {
	color: #fff;
}
.touch #footer .box_sns ul li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_sns ul li a i {
	display: table-cell;
	vertical-align: middle;
	color: #c0c0c0;
	-moz-transition-property: color;
	-o-transition-property: color;
	-webkit-transition-property: color;
	transition-property: color;
	-moz-transition-duration: 500ms;
	-o-transition-duration: 500ms;
	-webkit-transition-duration: 500ms;
	transition-duration: 500ms;
	-moz-transition-timing-function: #tim;
	-o-transition-timing-function: #tim;
	-webkit-transition-timing-function: #tim;
	transition-timing-function: #tim;
	-moz-transition-delay: 100ms;
	-o-transition-delay: 100ms;
	-webkit-transition-delay: 100ms;
	transition-delay: 100ms;
}
.mouse #footer .box_sns ul li a i:hover, .touch #footer .box_sns ul li a i.touchstart {
	-moz-transition-delay: 0ms;
	-o-transition-delay: 0ms;
	-webkit-transition-delay: 0ms;
	transition-delay: 0ms;
}
.touch #footer .box_sns ul li a i {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_sns ul li a i.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_sns .fb-like {
	margin-top: 20px;
	display: block;
}
@media only screen and (max-width: 640px) {
  #footer .box_sns .fb-like {
		margin-top: 5%;
  }
}
#footer .box_copyright {
	padding: 20px 0;
	text-align: center;
}
@media only screen and (max-width: 640px) {
  #footer .box_copyright {
		padding: 5% 0;
  }
}
#footer .box_copyright .st {
	font-size: 142%;
}
@media only screen and (max-width: 640px) {
  #footer .box_copyright .st {
		font-size: 106%;
  }
}
#footer .box_copyright #copyright {
	font-size: 65%;
}
@media only screen and (max-width: 640px) {
  #footer .box_copyright #copyright {
		font-size: 53%;
  }
}

/* -----------------------------------------------------------
	下層共通スタイル
----------------------------------------------------------- */
/* -----------------------------------------------------------
	テーブル
----------------------------------------------------------- */
table.tbl_basic1 caption {
	padding-bottom: .3em;
	font-size: 95%;
	color: #5c4029;
}
@media only screen and (max-width: 640px) {
  table.tbl_basic1 caption {
		font-size: 83%;
  }
}
table.tbl_basic1 caption span {
	display: inline-block;
	vertical-align: middle;
	*vertical-align: auto;
	*zoom: 1;
	*display: inline;
	font-size: 113%;
}
table.tbl_basic1 tr th, table.tbl_basic1 tr td {
	padding: .5em 1em;
	border-bottom: 1px solid #b6d8df;
	border-top: 1px solid #b6d8df;
}
table.tbl_basic1 tr th {
	text-align: center;
	width: 100px;
	font-weight: normal;
	background: #f4f9fa;
}
@media only screen and (max-width: 640px) {
  table.tbl_basic1 tr th {
		width: 3em;
  }
}

.tmp_btn {
	text-align: center;
}
.tmp_btn a {
	display: inline-block;
	background: #000;
	color: #fff;
	border-radius: 4px;
	border: 1px solid #000;
	padding: .4em 3em;
	font-size: 95%;
	text-decoration: none;
	-moz-transition-property: background, color;
	-o-transition-property: background, color;
	-webkit-transition-property: background, color;
	transition-property: background color;
	-moz-transition-duration: 300ms;
	-o-transition-duration: 300ms;
	-webkit-transition-duration: 300ms;
	transition-duration: 300ms;
	-moz-transition-timing-function: #tim;
	-o-transition-timing-function: #tim;
	-webkit-transition-timing-function: #tim;
	transition-timing-function: #tim;
	-moz-transition-delay: 100ms;
	-o-transition-delay: 100ms;
	-webkit-transition-delay: 100ms;
	transition-delay: 100ms;
}
.mouse .tmp_btn a:hover, .touch .tmp_btn a.touchstart {
	background: #2baacc;
	color: #fff;
}
.touch .tmp_btn a {
	-webkit-tap-highlight-color: transparent;
}
.touch .tmp_btn a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
.mouse .tmp_btn a:hover, .touch .tmp_btn a.touchstart {
	-moz-transition-delay: 0ms;
	-o-transition-delay: 0ms;
	-webkit-transition-delay: 0ms;
	transition-delay: 0ms;
}
.touch .tmp_btn a {
	-webkit-tap-highlight-color: transparent;
}
.touch .tmp_btn a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
@media only screen and (max-width: 640px) {
  .tmp_btn a {
		display: block;
		padding: .7em .5em;
		font-size: 83%;
  }
}
