@charset "UTF-8";
/* Reset Rules
-------------------------------*/
/* Initialize
-------------------------------*/
body, h1, h2, h3, h4, h5, h6,
p, div, ul, ol, li, dl, dt, dd,
blockquote, span, address, hr, pre, dl dt, dl dd {
	margin: 0;
	padding: 0;
}

p, th, td, li, dl dt, dl dd, address {
	font-size: 100%;
	font-weight: normal;
	line-height: 1.5;
}

li {
	list-style-type: none;
}

/* table */
table {
	/*
		margin:0;
		padding:0;
	*/
	border-collapse: separate;
	border-spacing: 0;
}

table, th, td {
	vertical-align: middle;
}

caption, th, td {
	text-align: left;
}

caption {
	display: none;
}

hr {
	display: none;
}

/* image */
img {
	border: medium none;
	vertical-align: top;
}

/* inline */
em {
	font-style: normal;
}

address {
	font-style: normal;
}

/* form */
form, fieldset, legend, label, input, button, select, textarea {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

fieldset {
	border: medium none;
}

legend {
	display: none;
}

#Outline h1 {
	text-indent: -9999px;
	font-size: 1px;
	line-height: 0.1;
}

hr {
	display: none;
	clear: both;
}

ul, ol, dl {
	list-style-type: none;
}

br {
	font-size: 1px;
	line-height: 0.1px;
	clear: both;
}

img {
	max-width: none;
}

/* Clearfix
-------------------------------*/
.clearfix:after,
.wrapper:after,
#ContentsWrapper:after {
	clear: both;
	content: ".";
	display: block;
	font-size: 0.1px;
	height: 0.1em;
	line-height: 0;
	visibility: hidden;
}

.clearfix,
.wrapper,
#ContentsWrapper {
	_height: 1px;
	min-height: 1px;
	/*\*/ /*/
height: auto;
overflow: hidden;
/**/
}

/* Base style
-------------------------------*/
html,
body {
	font-size: 12px;
}

body {
	color: #fff;
	line-height: 1.3;
	/* font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif; */
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS PGothic, sans-serif, Helvetica;
	overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
	font-family: inherit;
}

div.site-logo, div.footer-logo {
	font-family: inherit;
}

input[type=text],
input[type=password],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=email],
input[type=number],
input[type=search],
input[type=tel],
input[type=time],
input[type=url],
input[type=color],
textarea,
select {
	margin: 0;
	padding: 6px 6px;
	background-color: #FFF;
	border: 1px solid #A5A5A5;
	-webkit-box-shadow: 0;
	        box-shadow: 0;
}

label.inline {
	margin: 0 0 0.3rem 0;
	padding: 0.4rem;
}

.prefix,
.postfix {
	height: 1.8rem;
	line-height: 1.8rem;
}

input[type=radio],
input[type=checkbox] {
	display: none !important;
}

input[type=radio] + label,
input[type=checkbox] + label {
	display: inline-block;
	position: relative;
	padding-left: 30px;
}

input[type=radio] + label:before,
input[type=radio] + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	border-radius: 50%;
}

input[type=checkbox] + label:before,
input[type=checkbox] + label:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
}

input[type=checkbox] + label:before {
	background-color: #222;
}

input[type=radio] + label:before,
input[type=checkbox] + label:before {
	border: 1px solid #A5A5A5;
	top: 2px;
}

input[type=radio]:checked + label:after {
	top: 4px;
	left: 3px;
	height: 10px;
	width: 10px;
	background: #A5A5A5;
}

input[type=checkbox]:checked + label:after {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: 5px;
	display: block;
	margin-top: -7px;
	width: 5px;
	height: 9px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(../img/icon-arrow-down.svg) no-repeat right 5px center/20px;
}

select:disabled {
	opacity: 0.3;
}

table,
table tr,
table tr th,
table tr td,
table thead tr th, table thead tr td,
table tbody tr th, table tbody tr td,
table tr.even, table tr.alt, table tr:nth-of-type(even) {
	margin: 0;
	border: none;
	background: none;
	font-weight: normal;
}

.inputColError input[type=text],
.inputColError input[type=password],
.inputColError input[type=date],
.inputColError input[type=datetime],
.inputColError input[type=datetime-local],
.inputColError input[type=month],
.inputColError input[type=week],
.inputColError input[type=email],
.inputColError input[type=number],
.inputColError input[type=search],
.inputColError input[type=tel],
.inputColError input[type=time],
.inputColError input[type=url],
.inputColError input[type=color],
.inputColError textarea,
.inputColError select {
	background-color: #f2c2c2;
}

/* link style
-------------------------------*/
a {
	color: #fff;
	text-decoration: none;
}

a:link {
	color: #fff;
	text-decoration: none;
}

a:visited {
	color: #fff;
	text-decoration: none;
}

a:hover {
	color: #fff;
	text-decoration: none;
}

a img {
	border-style: none;
}

.topContents #mainImg .flexslider .slides li .txt-area .slide-link a {
	color: #000;
}

a:hover, button:hover, input.button:hover, input.buttonImage:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	/* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";
	/* ie 8 */
	-moz-opacity: 0.7;
	/* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;
	/* Safari 1.x */
}

a.nofade:hover, button.nofade:hover, input.button.nofade:hover, input.buttonImage.nofade:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	/* ie lt 8 */
	-ms-filter: "alpha(opacity=100)";
	/* ie 8 */
	-moz-opacity: 1;
	/* FF lt 1.5, Netscape */
	-khtml-opacity: 1;
	/* Safari 1.x */
}

/* button style
-------------------------------*/
.button {
	color: #fff;
	height: 30px;
	display: block;
	background-color: #000;
	font-family: "Oswald", "ヒラギノ角ゴシックW3", "メイリオ";
	font-size: 12px;
	padding: 6px 0 0 0;
	border: 1px solid #A5A5A5;
}

.button.hide {
	display: none;
}

button.button,
input.button {
	padding-top: 0px;
}

.button.large,
.button.tiny,
.button.small {
	height: auto;
}

.button:focus,
.button:hover,
.button:visited,
.button:active,
.button:link {
	background-color: #000;
}

a.button:link,
a.button:visited {
	color: #fff;
}

.button.tiny {
	padding: 8px 15px 7px 15px;
	margin-bottom: 0;
	background-color: #666;
}

.button.small {
	padding: 10px 20px;
	font-size: 0.9rem;
}

.button.buttonWhite,
a.button.buttonWhite,
.buttonWhite:visited,
.buttonWhite:active,
.buttonWhite:link {
	color: inherit;
	border: 1px solid #A5A5A5;
	background: #A5A5A5;
}

.button.buttonGray,
a.button.buttonGray,
.buttonGray:visited,
.buttonGray:active,
.buttonGray:link {
	background-color: #a0a0a0;
}

.buttonBlack,
.button.tiny.buttonBlack {
	color: #fff;
	background-color: #000;
}

/* Font size
-------------------------------*/
.px10 {
	font-size: 10px;
}

.px11 {
	font-size: 11px;
}

.px12 {
	font-size: 12px;
}

.red {
	color: #f00;
}

.blue {
	color: #00f;
}

/* Align style
-------------------------------*/
.alignCenter {
	text-align: center;
}

.alignLeft {
	text-align: left;
}

.alignRight {
	text-align: right;
}

/* Vertical-align style
-------------------------------*/
.verticalT {
	vertical-align: top;
}

.verticalM {
	vertical-align: middle;
}

.verticalB {
	vertical-align: bottom;
}

/* Float style
-------------------------------*/
.fLeft {
	float: left;
}

.fRight {
	float: right;
}

/* Position style
-------------------------------*/
.Relative {
	position: relative;
}

.Absolute {
	position: absolute;
}

/* reveal-modal style
-------------------------------*/
@media only screen and (max-width: 40.063em) {
	.reveal-modal {
		margin-left: 5%;
		width: 90%;
		top: 3rem;
		min-height: 0;
		padding: 0;
	}
}
.ajaxLoad:not(.done) {
	text-align: center;
}

.ajaxLoad:not(.done):after {
	display: inline-block;
	padding: 15px 0 15px 30px;
	background-image: url("/assets/front/img/icon_loading.gif");
	background-position: left center;
	background-repeat: no-repeat;
	font-size: 16px;
	text-align: center;
	content: "Loading…";
}

.ajaxLoad.failed {
	text-align: center;
}

.ajaxLoad.failed:after {
	display: inline-block;
	padding: 15px 0 15px 30px;
	font-size: 16px;
	text-align: center;
	content: "読み込みに失敗しました";
}

.ajaxLoad > * {
	-webkit-transition: all 1s;
	transition: all 1s;
	opacity: 0;
}

.ajaxLoad.done > * {
	opacity: 1;
}

.site-logo, .footer-logo {
	margin: 0;
	padding: 0;
	font-size: 2.125rem;
}/*# sourceMappingURL=base.css.map */