@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;
}
h1, h2, h3, h4, h5, h6, td li, td p, dd li, dd p, li li{
}
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: #000;
	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;
}

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;
	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="radio"] + label:before, 
input[type="checkbox"] + label:before {
	border:1px solid #A5A5A5;
}
input[type="radio"]:checked + label:after{
	top:3px;
	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 #A5A5A5;
	border-bottom: 2px solid #A5A5A5;
	content: '';
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(../img/item-list/ac_arrow.png) no-repeat right 5px center;
}
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: #000;
	text-decoration: none;
}
a:link {
	color: #000;
	text-decoration: none;
}
a:visited {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #000;
	text-decoration: none;
}
a img {
	border-style: none;
}

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.0;
  filter: alpha(opacity=100);
  /* ie lt 8 */
  -ms-filter: "alpha(opacity=100)";
  /* ie 8 */
  -moz-opacity: 1.0;
  /* FF lt 1.5, Netscape */
  -khtml-opacity: 1.0;
  /* 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 #000;
}
.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: none;
	background-color: #fff;
}

.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;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
	opacity: 0;
}
.ajaxLoad.done > * {
	opacity: 1;
}