@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: 'adobe-garamond-pro',"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;*/
  font-family: "adobe-garamond-pro", "ヒラギノ明朝 W3 JIS2004",
    "Hiragino Mincho W3 JIS2004", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Arial,
    Verdana, sans-serif;
  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;
  height: 30px !important;
}

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;

  padding-top: 5px;
}

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: 0px;
  left: 0;
  width: 16px;
  height: 16px;
}

input[type="checkbox"]+label#drawer-icon {
  position: absolute;
  top: 0;
  /* left: 10%; */
  margin: 0;
  width: 45px;
  height: 45px;
  cursor: pointer;
  display: block;
}

input[type="checkbox"]+label#drawer-icon::before {
  display: none;
}

input[type="checkbox"]+label#drawer-icon::after {
  display: none;
}

input[type="checkbox"]+label#drawer-icon-sp {
  width: 100%;
  height: 100%;
  z-index: 10001;
  cursor: pointer;
  display: block;
}

input[type="checkbox"]+label#drawer-icon-sp::before {
  display: none;
}

input[type="checkbox"]+label#drawer-icon-sp::after {
  display: none;
}

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:hover {
  color: #000;
  text-decoration: none;
}

a img {
  border-style: none;
}

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-size: 12px;
  padding: 6px 0 0 0;
  border: 1px solid #000;
}

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;
  font-family: "HelveticaNeueLTPro-Md", "FP-ヒラギノ角ゴ ProN W4", sans-serif;
}

.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;
}

/* ハンバーガーメニュー　ページリロード時非表示 */
.drawer{
  display: none;
}