@charset "utf-8";

/***********************************************************
  common.css [the NEW base.css]

  - Modified: 2015-09-01 hover時の transition を削除
  - Modified: 2015-08-25 .list-unstyled, .list-inline を追加
  - Modified: 2015-08-18 .btn:hover の初期値を削除
  - Modified: 2015-07-06 .text-center と .text-right を追加
  - Modified: 2015-02-16 select要素を font-size:99%; から除外
  - Modified: 2014-12-12 .nowrap を overflow:auto → hidden に変更
  - Modified: 2014-11-20 .alignleft と .alignright の margin を修正
  - Modified: 2014-11-11 .anchor-with-layered-icon を追加
  - Modified: 2014-10-20 .input-small を追加
  - Modified: 2014-09-09 マルチサイズ グリッドレイアウトを改良（nogutter 1行レイアウトならレガシーブラウザでもOK）
  - Modified: 2014-08-27 .btn要素に border: none; を追加
  - Modified: 2014-08-22 ラベル要素のデフォルト色を変更
  - Modified: 2014-07-03 マルチサイズ グリッドレイアウト nomargin → nogutter に改名
  - Modified: 2014-06-25 フォーム、ボタン、ラベル要素を追加
  - Modified: 2014-06-25 .textaligncenter, .textalignright を追加
  - Modified: 2014-06-16 マルチサイズ グリッドレイアウトを追加
  - Modified: 2014-04-10 .list-horizontal>dt/dd の margin を修正
  - Modified: 2014-02-19 .photobox, .parent と同等のclass名に .row を追加
  - Modified: 2014-02-05 margin, padding の値を em表記に変更
  - Modified: 2014-02-05 img の vertical-align を text-bottom から bottom に変更
  - Modified: 2014-02-05 dtタグの margin を設定
  - Modified: 2014-02-05 .list-horizontal>li の margin を修正
  - Modified: 2014-01-29 .list-horizontal>dd の margin を修正
  - Modified: 2014-01-27 pタグ・dtタグの margin を削除
  - Modified: 2013-10-09 text-align: justify; と text-justify を廃止
  - Modified: 2013-10-08 .photobox を class名「.parent」でも使用できるよう変更
  - Modified: 2013-10-08 micro clearfix を追加
  - Modified: 2013-06-06 ol,ul の margin-left, margin-right を0に（IE7向け）
  - Modified: 2013-05-10 .markを追加（◎○△×などの記号が小さく表示される箇所に使用）
  - Modified: 2013-05-02 pタグ・dtタグの margin を調整
  - Modified: 2013-03-18 .icon を追加
  - Modified: 2013-03-14 hover時の transition を追加（a img opacity .25s, a color .1s）
  - Modified: 2013-02-25 .list-horizontal, .alignleft, .alignright の inline-blockを最適化
  - Modified: 2013-01-23 .photoboxにIE6対策を追加
  - Modified: 2012-12-18 font-family から Helvetica を削除
  - Modified: 2012-11-27 table関連を追加・修正
***********************************************************/

/***********************************************************
  FONTS
  - based on "YUI CSS" and "Twitter Bootstrap"
***********************************************************/

html {
  font-size: 100%;
}

body {
  font-size: 1rem;
  line-height: 1.6;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Arial, Meiryo, 'メイリオ', sans-serif;
}

input, button, textarea {
  font-size: 99%;
}

table {
  font-size: inherit;
  font: 100%;
}

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%;
}

/***********************************************************
  CLEARFIX
***********************************************************/

.clearfix:after {content: ".";display: block;clear: both;height: 0;visibility: hidden;}
.clearfix {min-height: 1px;}
* html .clearfix {height: 1px; /*\*//*/height: auto;overflow: hidden;/**/}

/***********************************************************
  micro clearfix
***********************************************************/
.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1; /* For IE 6/7 only */
}

/***********************************************************
  GENERAL
***********************************************************/
html, body {
  margin: 0;
  padding: 0;
}

/* DEL 2013-10-09
body {
  text-align: justify;
  text-justify: inter-ideograph;
}
*/

#wrap {
  width: 100%;
}
/**************************************/

address {
  font-style: normal;
}

em {
  font-style: normal;
  font-weight: bold;
}

strong {
  font-weight: bold;
}

small {
  font-size: 85%;
}

/**************************************/

.ref {
  padding-left: 1em;
  text-indent: -1em;
}

.red {
  color: #e50000;
}

.inner {
  padding: 10px;
}

.mark {
  font-family: "ＭＳ Ｐゴシック, sans-serif";
}

/**************************************/
/* TABLE - default, .table-bordered, .table-unbordered */
/**************************************/

table {
  margin: 1em 0;
  border-collapse: collapse;
}

th,td {
  padding: 0.5em 1em;
  border-bottom: 1px dotted #ddd;
  text-align: left;
}

thead th, thead td {
  border-bottom: 1px solid #ddd;
}

.table-full {
  width: 100%;
}

.table-aligncenter th,
.table-aligncenter td {
  text-align: center;
}

.table-bordered {
  border: 1px solid #ddd;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #ddd;
}

.table-unbordered th,
.table-unbordered td {
  border: none;
}

table .text {
  text-align: left;
}

table .value {
  text-align: right;
}

/**************************************/

img {
  vertical-align: bottom;
}

.icon {
  vertical-align: middle;
}

/**************************************/

a img {
/*  -webkit-transition: opacity .25s ease-in-out;
     -moz-transition: opacity .25s ease-in-out;
      transition: opacity .25s ease-in-out;
*/}

a {
/*  -webkit-transition: color .1s ease-in-out;
     -moz-transition: color .1s ease-in-out;
      transition: color .1s ease-in-out;
*/}

ol, ul {
  margin-right: 0;
  margin-left: 0;
  padding-left: 2em;
}

ol.unstyled,
ul.unstyled,
ol.list-unstyled,
ul.list-unstyled {
  list-style-type: none;
  padding: 0;
}

li {
  margin: 0.5em 0;
}

dt {
  margin-top: 0.5em;
  font-weight: bold;
}

dd {
  margin-left: 1em;
}

.list-horizontal {
  overflow: hidden;
  padding-left: 0;
}

ol.list-horizontal,
ul.list-horizontal {
  letter-spacing: -0.4em; /* <li>間の隙間を削除 */
}

.list-horizontal>li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin: 0;
  letter-spacing: normal; /* <li>間の隙間を削除 */
  vertical-align: top;
}

.list-horizontal > dt {
  clear: left;
  float: left;
  margin: 0 0 1em;
}

.list-horizontal>dd {
  overflow: hidden;
  *zoom: 1;
  margin: 0 0 1em;
}

.list-inline {
    list-style: outside none none;
    margin-left: -5px;
    padding-left: 0;
}

.list-inline > li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
}

/**************************************/

.photobox, .parent, .row {
  /* 文字と画像を横並びにするときに使用。clearfixと同等の効果 */
  overflow: hidden;
  *zoom: 1;
}

.aligncenter {
  display: block;
  margin: 0.5em auto;
}

.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 0.5em;
}

.alignright {
  float: right;
  margin-bottom: 0.5em;
  margin-left: 20px;
}

.no-wrap, .nowrap {
  /* floatされた要素の下に回り込みさせない */
  overflow: hidden;
  *zoom: 1;
}
/**************************************/

.textaligncenter,
.text-center {
  text-align: center;
}

.textalignright,
.text-right {
  text-align: right;
}

/* ----------------------------------------
  マルチサイズ グリッドレイアウト
  - 親要素に .grid + .grid-Nin1 を指定
    * .grid-nogutter も指定すると左右に余白を作らないレイアウトで整列。
    * 1行レイアウトならレガシーブラウザでもOK、複数行対応は IE9以上
  - 子要素には .col を指定
---------------------------------------- */

.grid {
  overflow: hidden;
}

.grid > .col {
  float: left;
}

.grid > .col img {
  max-width: 100%;
  height: auto;
}

.grid-2in1 > .col {width: 47.916666%;  margin: 1.041666%;}
.grid-3in1 > .col {width: 31.25%;      margin: 1.041666%;}
.grid-4in1 > .col {width: 22.916666%;  margin: 1.041666%;}

.grid-2in1.grid-nogutter > .col {width: 48.936170%; margin: 1.063829% 0 1.063829% 2.127659%;}
.grid-2in1.grid-nogutter > .col:first-child {margin-left: 0;}
.grid-2in1.grid-nogutter > .col:nth-child(2n+1) {margin-left: 0;}

.grid-3in1.grid-nogutter > .col {width: 31.914893%; margin: 1.063829% 0 1.063829% 2.127659%;}
.grid-3in1.grid-nogutter > .col:first-child {margin-left: 0;}
.grid-3in1.grid-nogutter > .col:nth-child(3n+1) {margin-left: 0;}

.grid-4in1.grid-nogutter > .col {width: 23.404255%; margin: 1.063829% 0 1.063829% 2.127659%;}
.grid-4in1.grid-nogutter > .col:first-child {margin-left: 0;}
.grid-4in1.grid-nogutter > .col:nth-child(4n+1) {margin-left: 0;}

/* ----------------------------------------
  フォーム関連
---------------------------------------- */
select,
textarea,
input[type="text"],
input[type="password"],
input[type="tel"],
input[type="email"] {
  display: inline-block;
  margin: 5px 0;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 2px;
  color: #555;
  vertical-align: middle;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
  /*transition: border 0.2s linear 0s, box-shadow 0.2s linear 0s;*/
}

select {
  padding: 0.25em;
}

.input-xxlarge { width: 30em; }
.input-xlarge { width: 24em; }
.input-large { width: 16em; }
.input-medium { width: 12em; }
.input-small { width: 8em; }
.input-mini { width: 4em; }

::-webkit-input-placeholder {color: #999;}
::-moz-placeholder {color: #999;}
:-moz-placeholder {color: #999;}
:-ms-input-placeholder {color: #999 !important;}

.ime-disabled {
  ime-mode: disabled;
}

/* ----------------------------------------
  ボタン（.btn）
---------------------------------------- */
.btn {
  position: relative;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  padding: 0.5em 2em;
  border: none;
  border-radius: 4px;
  background-color: #808080;
  color: #fff;
  text-align: center;
  text-decoration: none;
  font-size: 125%;
  vertical-align: middle;
  cursor: pointer;
  /*transition: background 0.1s linear;*/
}

.btn:hover {
  /*background-color: #c5cccc;*/
}

.btn:active {
  top: 1px;
}

.btn-primary {
  color: #fff;
  background-color: #aa0a0a;
}

.btn-primary:hover {
  background-color: #900;
}

.btn-mini {
  padding: 0.25em 1em;
  font-size: 100%;
}

/* ----------------------------------------
  ラベル（.label）
---------------------------------------- */
.label {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin: 3px 5px;
  padding: 3px 10px;
  border-radius: 3px;
  background-color: #999;
  color: #fff;
  font-size: 0.83em;
}

/* ----------------------------------------
  画像リンクの右下にアイコンを付与
  （.anchor-with-layered-icon / Font-Awesomeを使用）
---------------------------------------- */
.anchor-with-layered-icon {
  position: relative;
  display: inline-block;
}

.anchor-with-layered-icon i {
  position: absolute;
  right: 0.25em;
  bottom: 0.5em;
  padding: 0.25em;
  border: 1px solid #ccc;
  border-radius: 3px;
  background-color: #fff;
  font-size: 150%;
}