@charset "shift_jis";

/**********************************************************
 *
 * PC共通ヘッダー
 *
 **********************************************************/

/**********************************************************
* ヘッダー
**********************************************************/

/* レイアウト
-------------------------------------------*/
html {
  font-size: 62.5%;
}

.header {
  display: block;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-size: 100%;
  line-height: 1.5;
}

  /* ヘッダー内リンク共通 */
  .header a {
    color: #093475;
    text-decoration: none;
  }
  .header a:visited {
    color: #7600b3;
  }
  .header a:hover,
  .header a:focus {
    text-decoration: underline;
    color: #3374da;
  }

  /* ヘッダー内コンテンツ */
  .header-in {
    margin: 0 auto;
				padding-top:12px;
    width: 940px;
    zoom: 1;
  }
  /* clearfix */
  .header-in:before {
    content: "";
    display: table;
  }
  .header-in:after {
    content: "";
    display: table;
    clear: both;
  }


/* ロゴ
-------------------------------------------*/
.header-logo {
  float: left;
  padding-top: 18px;
  width: 145px;
  height: 30px;
}

  .header-logo a {
    display: block;
  }

  .header-logo img {
    width: 100%;
    height: auto;
  }


/* ユーティリティ
-------------------------------------------*/
.header-pc {
  float: right;
}


/* フォントサイズ切替えエリア
-------------------------------------------*/
.header-fontsize {
  float: right;
  margin: 4px 0 0 15px;
}

  /* タイトル部分 */
  .header-fontsize .ttl {
    float: left;
    font-size: 71.42857%;
  }

  /* ボタン部分 */
  .header-fontsize .btn-box {
    float: left;
    margin-left: 5px;
  }

    /* 各ボタン */
    .header-fontsize .btn {
      float: left;
      margin-left: 2px;
    }
      .header-fontsize .btn a {
        position: relative;
        display: block;
        width: 15px;
        height: 15px;
        box-sizing: border-box;
        overflow: hidden;
      }

      .header-fontsize .btn img {
        position: absolute;
        top: 0;
        left: 0;
      }

      /* アクティブ時 */
      .header-fontsize .is-active img {
        top: auto;
        bottom: 0;
      }

      /* マウスオーバー時 */
      .header-fontsize .btn a:focus:after,
      .header-fontsize .btn a:hover:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        background-color: rgba(0,0,0,0.14);
      }


/* 検索エリア
-------------------------------------------*/
.header-search {
  float: right;
  position: relative;
  width: 202px;
  height: 23px;
}

  /* 検索ボックス */
  .header-search .osp_searchBox {
    position: absolute;
    left: 0;
    top: 0;
    padding: 5px;
    width: 150px;
    height: 100%;
    border: 1px solid #ddd;
    background-color: #f6f6f6;
    line-height: normal;
    font-size: 71.42857%;
  }
  ::-webkit-input-placeholder {
      color: #333; }
  :-moz-placeholder {
      color: #333; opacity: 1; }
  ::-moz-placeholder {
      color: #333; opacity: 1; }
  :-ms-input-placeholder {
      color: #333; }

  /* 検索ボタン */
  .header-search .submit {
    width: 52px;
    height: 23px;
    position: absolute;
    right: 0;
    top: 0;
  }
  .header-search .submit:hover::after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
    background-color: rgba(0,0,0,0.14);
  }


/* 前回ログイン日時
-------------------------------------------*/
/* clearfix */
.mod-last-loggedin:before {
  content: "";
  display: table;
}
.mod-last-loggedin:after {
  content: "";
  display: table;
  clear: both;
}
.mod-last-loggedin {
  float: right;
  margin: 4px 18px 0 0;
  color: #666;
  font-size: 78.57%;
}
  .mod-last-loggedin .label {
    float: left;
  }
  .mod-last-loggedin .label:after {
    content: "：";
  }
  .mod-last-loggedin .date {
    float: left;
  }

/* バナー
-------------------------------------------*/
.header-bnrs {
  float: right;
  clear: right;
  margin-top: 12px;
  border: 1px solid #d6d6d6;
}
  .header-bnrs a {
    display: block;
    position: relative;
  }
  .header-bnrs a:hover::after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
    background-color: rgba(0,0,0,0.14);
  }


/* リンク
-------------------------------------------*/
.header-links {
  float: right;
  margin-top: 20px;
}
  .header-links .link {
    float: left;
    margin-right: 22px;
    padding-left: 11px;
    text-indent: -11px;
    font-size: 85.71%;
  }
  .header-links .link:before {
    display: inline-block;
    content: "";
    margin-right: 5px;
    width: 6px;
    height: 8px;
    background: url("/images_osp/common/ico/ico_arrow_r01.png") no-repeat left top;
    background-size: contain;
  }


/* グローバルナビ
-------------------------------------------*/
.nav-global {
  margin-top: 15px;
  height: 34px;
  border-bottom: 2px solid #c03;
}

  .nav-global-in {
    position: relative;
    bottom: -2px;
    height: 34px;
    margin: 0 auto;
    width: 940px;
    zoom: 1;
  }
  .nav-global-in:before {
    content: "";
    display: table;
  }
  .nav-global-in:after {
    content: "";
    display: table;
    clear: both;
  }

  /* 各ボタン */
  .nav-global .nav-item {
    float: left;
    width: 141px;
    height: 100%;
  }
  .nav-global .nav-item:last-child { width: 235px;}

    .nav-global .nav-item a {
      overflow: hidden;
      display: block;
      width: 100%;
      height: 100%;
    }

    /* 画像 */
    .nav-global .nav-item img { margin-left: 0; }
    .nav-global .nav-item.nav02 img { margin-left: -141px; }
    .nav-global .nav-item.nav03 img { margin-left: -282px; }
    .nav-global .nav-item.nav04 img { margin-left: -423px; }
    .nav-global .nav-item.nav05 img { margin-left: -564px; }
    .nav-global .nav-item.nav06 img { margin-left: -705px; }
    /* マウスオーバー時 */
    .nav-global .nav-item:hover img,
    .nav-global .nav-item:focus img { margin-top: -34px; }
    /* カレント時 */
    .nav-global .nav-item.is-current img { margin-top: -68px; }


/* 注意メッセージ エリア
-------------------------------------------*/
.area-attention {
  border-bottom: 1px solid #ddd;
  background-color: #f6f6f6;
}

/* コンテンツ部分 */
.mod-attention {
  margin: 0 auto;
  padding: 14px 0 11px;
  width: 940px;
  font-size: 85.71429%;
}
.txt-attention {
  margin-left: 30px;
  text-indent: -30px;
}
  .txt-attention .img {
    margin-right: 5px;
    vertical-align: middle;
  }
  .txt-attention a {
    text-decoration: underline;
  }
  .txt-attention a:hover {
    text-decoration: none;
  }


/* エラー表示 エリア
-------------------------------------------*/
.area-error {
  border-top: 1px solid #ffaab0;
  border-bottom: 1px solid #ffaab0;
  background-color: #ffeef0;
}
.mod-error {
  margin: 0 auto;
  width: 940px;
}
.txt-error {
  padding: 14px 10px 11px;
  text-align: right;
  font-size: 85.71429%;
}
.txt-error a {
  text-decoration: underline;
}
.txt-error a:hover {
  text-decoration: none;
}



/* 1to1 エリア
-------------------------------------------*/
/* エリア */
.area-o2o {
  border-bottom: 1px solid #ddd;
  background-color: #f6f6f6;
}

/* コンテンツ部分 */
.mod-o2o {
  margin: 0 auto;
  padding: 14px 0 11px;
  width: 940px;
  font-size: 85.71429%;
  position: relative;
}
.mod-o2o.logged-in {
  padding: 12px 0 9px;
}


/* テキスト部分 */
.txt-o2o {
  overflow: hidden;
  margin-left: -4px;
  padding-right: 90px;
}

/* 各項目 */
.item-o2o  {
  display: inline-block;
  margin-left: 4px;
  vertical-align: middle;
}

.item-o2o > * {
  display: inline-block;
}

/* ポイントエリア */
.item-o2o .point-area:not(:first-child) {
  margin-left: 4px;
}

/* ポイントロゴ */
.item-o2o .logo {
  margin: 0 0 2px 2px;
  vertical-align: middle;
}
.item-o2o .logo:first-child { margin-left: 0; }

/* XX：XXの部分 */
.item-o2o .label:after {
  content: ":";
  padding-right: 2px;
}
.item-o2o .logo + .label {
  margin-left: 4px;
}

/* ログインボタン */
.btn-o2o {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -11px;
}
.btn-o2o:hover a:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  background-color: rgba(0,0,0,0.14);
}

/* ログイン時 */
.mod-o2o.logged-in {
  font-size: 78.57143%;
}

/* 太字設定*/
.item-o2o .username,
.item-o2o .point {
  font-weight: bold;
}



/**********************************************************
 * ヘッダー共通アイコン
 **********************************************************/

/* アイコン
-------------------------------------------*/
.ico-header {
  display: inline-block;
}

/* 矢印アイコン */
.ico-header-arrow {
  position: relative;
  margin-left: 6px;
  padding-left: 1em;
  text-decoration: none;
}
.ico-header-arrow:before {
  content: '';
  display: inline-block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -4px;
  width: 6px;
  height: 8px;
  background: url("/images_osp/common/ico/ico_arrow_r01.png") no-repeat left top;
  background-size: contain;
}

/* 別窓アイコン */
.ico-header-link {
  position: relative;
  margin-left: 6px;
  padding-left: 1em;
  text-decoration: none;
}
.ico-header-link:hover {
  text-decoration: underline;
}
.ico-header-link .ico-header {
  position: absolute;
  left: 0;
  top: 0;
}
.ico-header img {
  margin-top: -3px;
  vertical-align: middle;
}



/**********************************************************
 * SMT用コンテンツ（非表示）
 **********************************************************/
.header-smt,
.area-sidemenu {
  display: none;
}

.only-smt {
  display: none !important;
}
