@charset "UTF-8";

/**********************************************************
*
* PC共通汎用クラス
*
**********************************************************/

/* SMT用コンテンツ（非表示）
-------------------------------------------*/
.only-smt,
body.tb .link-smt {
  display: none !important;
}


/* リンク
-------------------------------------------*/
a { color: #093475; }
a:visited { color: #7600b3;}
a:hover,
a:focus {
  text-decoration: none;
  color: #3374da;
}



/**********************************************************
 * PC共通レイアウト
 **********************************************************/

/* body
-------------------------------------------*/
body {
  line-height: 1.5;
}



/* ラッパー（ヘッダー／コンテンツ／フッター)
-------------------------------------------*/
.wrapper {
  position: relative;
  min-width: 960px;
}



/* コンテンツエリア
-------------------------------------------*/
.contents {
  margin: 60px auto 0;
  padding-bottom: 100px;
  width: 940px;
/*  zoom: 1;*/
}
.contents:before {
  content: "";
  display: table;
}
.contents:after {
  content: "";
  display: table;
  clear: both;
}
.tb .contents,
.smt .contents {
  overflow: hidden;
}

  /* メインコンテンツ */
  .contents-main {
    float: left;
    width: 700px;
  }
  .contents-main.full {
    float: none;
    width: 100%;
  }

  /* サイドカラム */
  .contents-sub {
    float: right;
    width: 200px;
  }



/* パンくず
-------------------------------------------*/
.nav-breadcrumb {
  margin: 20px auto 0;
  width: 940px;
/*  zoom: 1;*/
}
.nav-breadcrumb:before {
  content: "";
  display: table;
}
.nav-breadcrumb:after {
  content: "";
  display: table;
  clear: both;
}
  .nav-breadcrumb li {
    float: left;
    margin-left: 10px;
    font-size: 78.57143%;
  }
  .nav-breadcrumb li:first-child {
    margin-left: 0;
  }
  .nav-breadcrumb li:before {
    display: inline-block;
    content: ">";
    padding-right: 10px;
  }
  .nav-breadcrumb li:first-child:before {
    display: none;
  }



  /* ローカルナビ
  -------------------------------------------*/
.nav-local {
  /*border-bottom: 1px solid #ddd;*/
  word-break: break-all;
}
  /* 見出し部分 */
  .nav-local .tit {
    font-size: 142.85714%;
    font-weight: bold;
    line-height: 1.3;
    border-bottom: 2px solid #ddd;
  }
    .nav-local .tit a {
      color: #000;
    }

  /* メニュー部分 */
  .nav-local .menu-item {
    /*border-top: 2px solid #ddd;*/
    border-bottom: 1px solid #ddd;
  }

    /* リンク・アイコン */
    .nav-local a {
      display: block;
      padding: 11px 10px 9px 22px;
      border-left: 4px solid transparent;
      text-indent: -16px;
      text-decoration: none;
    }
    .nav-local a:before {
      position: relative;
      top: -2px;
      display: inline-block;
      content: "";
      margin-right: 10px;
      width: 6px;
      height: 8px;
      background: url("/upload/content/docomo/images/ico_arrow_r01.png") no-repeat left top;
      background-size: contain;
      vertical-align: middle;
    }

    /* カレント・ロールオーバー */
    .nav-local a:hover {
      color: #c03;
    }
    .nav-local .is-current a {
      border-left-color: #c03;
      color: #c03;
    }
    .nav-local .is-current em { font-weight: bold; }
    .nav-local .is-current a:before,
    .nav-local a:hover:before {
      width: 6px;
      height: 8px;
      background-image: url("/upload/content/docomo/images/ico_arrow_r01_cr.png");
    }

  /* リンクリスト部分 */
  .nav-local .menu-lv1 {
  }
      .nav-local .menu-lv1 > .menu-item:not(:last-child) {
          border-bottom-width: 2px;
      }

  .nav-local .menu-lv2 {
  }
    .nav-local a + .btn-toggle + .js-accordion-body .menu-item:first-child {
        border-top: 2px solid #ddd;
    }
    .nav-local .menu-lv2 .menu-item:last-child { border-bottom: none; }

      .nav-local .menu-lv2 a {
        padding-left: 36px;
      }

  /* SMT用アコーディオン開閉ボタン */
  .nav-local .btn-toggle {
    display: none;
  }

/* おすすめコンテンツ 共通
-------------------------------------------*/
/* title */
.tit-recommend-contents {
	margin-bottom: 0.6em;
	line-height: 1.4;
	font-size: 115%;
	font-weight: bold;
}
.txt-description { font-size: 86%;}
.tit-recommend-contents + .txt-description { margin-top: -0.3em;}

/* mod-recommend-contents */
.mod-recommend-contents {	overflow: hidden;}
.mod-recommend-contents .txt-description { margin-bottom: 0.8em;}

/* slick slider 共通
-------------------------------------------*/
/* list-recommend-contents */
.list-recommend-contents .slick-list { margin-right: -4px; }

.list-recommend-contents { overflow: hidden;}
.list-recommend-contents > li,
.list-recommend-contents > .item,
.list-recommend-contents li.slick-slide {
	float: left;
	width: 232px;
	margin-right: 4px;
}
.list-recommend-contents > li:last-child,
.list-recommend-contents > .item:last-child,
.list-recommend-contents li.slick-slide:last-child { margin-right: 0;}

/* slider */
.list-recommend-contents .slick-slide { padding: 0;}

/* slick-dots */
.slick-dots li { position: relative; display: inline-block; width: 24px; height: 4px; margin: 0 6px; padding: 0; cursor: pointer;}
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 24px; height: 4px; padding: 0;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before,
.slick-dots li.slick-active button:before { background-color: #cc0033;}
.slick-dots li button:before { font-size: 0; line-height: 4px; position: absolute; top: 1px; left: 0; width: 24px; height: 4px; background: #aaa; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;}
/* slick-dots active */
.slick-dots li.slick-active button:before { line-height: 6px; top: 0; width: 29px; height: 6px; margin-left: -2.5px; }
