@charset "utf-8";

/** ------------------------------------------------------------
 * html body
 */
html {
  overflow-y: scroll;
  background-color: #fff;
}

body {
  line-height: 1.6;
  color: #222;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
  word-wrap: break-word;
}

/** ------------------------------------------------------------
 * ハイパーテキスト
 */
a:link {
  color: #222;
  outline: none;
  text-decoration: none;
}

a:visited {
  color: #222;
  text-decoration: none;
}

a:hover,
a:active {
  text-decoration: none;
}

a img {
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

a:hover img {
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
}

/** ------------------------------------------------------------
 * 共通
 */
*[class$="__wrap"],
#container {
  margin: 0 auto;
  width: 1000px;
  display: block;
}

*[class$="__wrap"]:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

/** --------------------------------------------------------------------------------
 * フォント
 */
@font-face {
  font-family: headerIcon;
  src: url('/fonts/headerIcon.eot'); /* IE9 Compat Modes */
  src: url('/fonts/headerIcon.eot?#iefix') format('embedded-opentype'), /* eof - IE6-IE8 */
       url('/fonts/headerIcon.woff') format('woff'), /* woff - Modern Browsers */
       url('/fonts/headerIcon.ttf')  format('truetype'), /* ttf - Safari, Android, iOS */
       url('/fonts/headerIcon.svg#svgFontName') format('svg'); /* svg - Legacy iOS */
}

@font-face {
  font-family: pagerIcon;
  src: url('/fonts/pagerIcon.eot');
  src: url('/fonts/pagerIcon.eot?#iefix') format('embedded-opentype'),
       url('/fonts/pagerIcon.woff') format('woff'),
       url('/fonts/pagerIcon.ttf')  format('truetype'),
       url('/fonts/pagerIcon.svg#svgFontName') format('svg');
}

@font-face {
  font-family: icon;
  src: url('/fonts/icon.eot');
  src: url('/fonts/icon.eot?#iefix') format('embedded-opentype'),
       url('/fonts/icon.woff') format('woff'),
       url('/fonts/icon.ttf')  format('truetype');
}

@font-face {
  font-family: term;
  src: url('/fonts/term.eot');
  src: url('/fonts/term.eot?#iefix') format('embedded-opentype'),
       url('/fonts/term.woff') format('woff'),
       url('/fonts/term.ttf')  format('truetype');
}

@font-face {
  font-family: coolIcon;
  src: url('/fonts/coolIcon.eot');
  src: url('/fonts/coolIcon.eot?#iefix') format('embedded-opentype'),
       url('/fonts/coolIcon.woff') format('woff'),
       url('/fonts/coolIcon.ttf')  format('truetype');
}

/*
.icon-home3:before {
  content: "\e600";
}
.icon-camera:before {
  content: "\e601";
}
.icon-file-text2:before {
  content: "\e602";
}
.icon-folder-open:before {
  content: "\e603";
}
.icon-phone:before {
  content: "\e604";
}
.icon-location:before {
  content: "\e605";
}
.icon-compass2:before {
  content: "\e606";
}
.icon-clock:before {
  content: "\e607";
}
.icon-clock2:before {
  content: "\e608";
}
.icon-sphere:before {
  content: "\e609";
}
.icon-attachment:before {
  content: "\e60a";
}
.icon-star-full:before {
  content: "\e60b";
}
.icon-plus:before {
  content: "\e60c";
}
.icon-minus:before {
  content: "\e60d";
}
.icon-cross:before {
  content: "\e60e";
}
.icon-checkmark:before {
  content: "\e60f";
}
.icon-play3:before {
  content: "\e610";
}
.icon-backward2:before {
  content: "\e611";
}
.icon-forward3:before {
  content: "\e612";
}
.icon-arrow-up2:before {
  content: "\e613";
}
.icon-arrow-right2:before {
  content: "\e614";
}
.icon-arrow-down2:before {
  content: "\e615";
}
.icon-arrow-left2:before {
  content: "\e616";
}
*/

/*
.icon-hatena:before {
  content: "\e604";
}
.icon-search:before {
  content: "\e600";
}
.icon-facebook:before {
  content: "\e601";
}
.icon-twitter:before {
  content: "\e602";
}
.icon-line2:before {
  content: "\e603";
}
.icon-googleplus2:before {
  content: "\e680";
}
*/

@font-face {
  font-family: instaIcon;
  src: url('/fonts/instaIcon.eot');
  src: url('/fonts/instaIcon.eot?#iefix') format('embedded-opentype'),
       url('/fonts/instaIcon.woff') format('woff'),
       url('/fonts/instaIcon.ttf')  format('truetype');
}

@font-face {
  font-family: snsIcon;
  src: url('/fonts/snsIcon.eot');
  src: url('/fonts/snsIcon.eot?#iefix') format('embedded-opentype'),
       url('/fonts/snsIcon.woff') format('woff'),
       url('/fonts/snsIcon.ttf')  format('truetype');
}

/** ------------------------------------------------------------
 * header
 */
#header {
  color: #fff;
  background-color: #222;
  min-width: 1000px;
}

/** ------------------------------
 * 左
 */
.logo {
  float: left;
}

/** ------------------------------
 * 右
 */
.headerMenu {
  margin-top: 5px;
  float: right;
  text-align: center;
}

.headerSearch,
.headerSearch > input {
  float: left;
}

.headerSearch {
  color: #fff;
  background: #595959\9; /* IE8 */
  background: rgba(255,255,255,0.25);
}

.headerSearch > input,
.headerSearch > button {
  margin: 0;
  padding: 0;
  border: none;
  display: block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  float :left;
  height: 26px;
  line-height: 26px;
  color: #fff;
  background: transparent;
  outline: none;
}

.headerSearch > button {
  width: 26px;
  font-family: headerIcon;
}

.headerSearch > input {
  width: 214px;
  color: #fff;
}

.headerSns {
  float: left;
}

.headerSns__item,
.headerSns__item a {
  display: block;
}

.headerSns__item {
  margin-left: 4px;
  float: left;
}

.headerSns__item a {
  border: 1px solid transparent;
  width: 26px;
  height: 26px;
  line-height: 24px;
  color: #fff;
  font-family: headerIcon;
  text-decoration: none;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.headerSns__item a[title="twitter"] {
  background-color: #55acee;
}

.headerSns__item a[title="facebook"] {
  background-color: #3b5998;
}

.headerSns__item a[title="google"] {
  background-color: #db4437;
}

.headerSns__item a[title="hatena"] {
  background-color: #00a4de;
}

.headerSns__item a[title="instagram"] {
  background-color: #125688;
  font-family: instaIcon;
}

.headerSns__item a:hover {
  background-color: transparent !important;
}

.headerSns__item a[title="twitter"]:hover {
  border-color: #55acee;
  color: #55acee;
}

.headerSns__item a[title="facebook"]:hover {
  border-color: #5784e1;
  color: #5784e1;
}

.headerSns__item a[title="google"]:hover {
  border-color: #db4437;
  color: #db4437;
}

.headerSns__item a[title="hatena"]:hover {
  border-color: #00a4de;
  color: #00a4de;
}

.headerSns__item a[title="instagram"]:hover {
  border-color: #125688;
  color: #125688;
}

/** ------------------------------
 * globalNav
 */
.globalNav {
  padding-top: 4px;
  min-width: 1000px;
  border-bottom: 1px solid #222;
  font-family: 'Raleway', sans-serif;
  font-weight: 700;
}

.globalNav__item {
  position: relative;
  float: left;
  width: 20%;
  text-align: center;
  line-height: 18px;
}

.globalNav__item__japaneseText {
  font-size: 12px;
}

.globalNav__item__text {
  font-size: 20px;
}
/* リンク区切り線
.globalNav__item + .globalNav__item:before {
  margin: auto;
  content: "";
  position: absolute;
  top: 0;
  left: -7px;
  bottom: 0;
  display: block;
  width: 13px;
  height: 13px;
  background: url("/images/pc/header/nav/line.png") no-repeat 50% 50%;
}
*/

.globalNav__item a {
  padding: 10px 0;
  position: relative;
  display: block;
  background: url("/images/pc/header/nav/hover.png") no-repeat 50% 130%;
  -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
       -o-transition: all 0.3s ease;
          transition: all 0.3s ease;
  cursor: pointer;
}

.globalNav__item a:hover,
.globalNav__item--current a {
  background-position: 50% 100%;
}

.globalNav__item__temporarily a {
  background-position: 50% 130%;
}

/** ------------------------------
 * 検索ウィンドウ
 */
.globalSearch {
  position: absolute;
  z-index: 1000;
  display: none;
  width: 100%;
  min-width: 1000px;
  color: #fff;
  background: url("/images/pc/bg.png") repeat 0 0;
  font-size: 12px;
}

.globalSearch__wrap {
  padding: 33px 0 0 38px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  height: 282px;
  background: url("/images/pc/header/nav/search/map.png") no-repeat 143px -27px;
}

.globalSearch__title {
  position: absolute;
}

/* 都道府県 */
.globalSearch__link {
  position: absolute;
  left: 510px;
  width: 490px;
}

.globalSearch__area {
  border: 1px solid #fff;
  margin-bottom: 15px;
  clear: both;
  float: left;
  width: 90px;
  color: #fff;
  background: url("/images/pc/bg.png") repeat 0 0;
  text-align: center;
  line-height: 16px;
}

.globalSearch__body {
  padding-left: 17px;
  margin-bottom: 10px;
  overflow: hidden;
  line-height: 23px;
}

.globalSearch__body:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.globalSearch__item {
  display: inline-block;
}

.globalSearch__item + .globalSearch__item:before {
  margin-right: 0.4em;
  content: "/";
}

.globalSearch__item a {
  color: #fff;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.globalSearch__item a:hover {
  opacity: 0.7;
  -ms-filter: alpha(opacity=70);
}

/** ------------------------------------------------------------
 * container
 */
#container {
  margin-bottom: 50px;
  font-size: 75%;
}

#container:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

/** ------------------------------
 * パンくずリスト
 */
.path {
  border-bottom: 1px solid #222;
  position: relative;
  min-width: 1000px;
  font-size: 68.8%;
  line-height: 22px;
  letter-spacing: 1px;
}

.path__wrap {
  overflow: hidden;
}

.path__item {
  position: relative;
  float: left;
}

.path__item:before {/* 区切り線の中心の隙間を埋める */
  margin: auto;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 30;
  width: 1px;
  height: 2px;
  left: 0px;
  display: block;
  background-color: #888;
}

.path__item--top:before {
  display: none;
}

.path__item > * {
  position: relative;
  display: block;
}

.path__item > a {
  background-color: #eee;
  cursor: pointer;
}

.path__item > a:hover {
  background-color: #ddd;
}

.path__item > a:hover:before {
  border-top-color: #ddd;
  border-bottom-color: #ddd;
}

.path__item--top > a {
  color: #fff;
  background-color: #222 !important;
}

.path__item > *:not(meta):before {
  margin-left: -9px;
  margin-right: 20px;
  content: "";
  border-top: 11px solid #eee;
  border-bottom: 11px solid #eee;
  border-left: 10px solid transparent;
  display: inline-block;
  float: left;
  vertical-align: top;
}

.path__item--top > *:before {
  margin-left: -10px;
}

.path__item > span:before {
  border-top-color: #fff;
  border-bottom-color: #fff;
}

.path__item > a:after {
  margin-left: 20px;
  content: "";
  border-top: 11px solid #222;
  border-bottom: 11px solid #222;
  border-left: 10px solid transparent;
  display: inline-block;
  vertical-align: top;
}

.path__item.last span + span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.path__item.last span + span:before {
  content: none;
}

/** ------------------------------
 * billboard
 */
.billboard {
  padding: 20px 0;
  position: relative;
  min-width: 1000px;
  background: #404040 url("/images/pc/contents/common/slashBg3.png") no-repeat 100% 100%;
  background-image: none\9;/* IE8用 */
  font-size: 75%;
}

@media only screen and (max-width: 1198px) {
  .billboard {
    background-position: 50% 100%;
  }
}

/*
.billboard--column {
  background-color: #360101;
}

.billboard--shop {
  background-color: #392c03;
}

.billboard--snap {
  background-color: #06373c;
}
*/

.billboard__wrap {
  position: relative;
}

.billboard__item {
  float: left;
  width: 300px;
}

.billboard__item + .billboard__item {
  margin-left: 50px;
}

.billboard__item + .billboard__item:before {
  margin-left: -24px;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  border-left: 1px dotted #666;
}

.billboard__sub {
  position: relative;
  background-color: #fff;
}

.billboard__image {
  width: 100%;
}

/*
.billboard__image {
  border-bottom: 4px solid #222;}

.categoryIcon--column + .billboard__image {
  border-bottom-color: #6c0202;
}

.categoryIcon--shop + .billboard__image {
  border-bottom-color: #91730e;
}

.categoryIcon--snap + .billboard__image {
  border-bottom-color: #0c6f78;
}
*/

.billboard__title {
  margin: 8px 0 0;
  position: relative;
  color: #fff;
  line-height: 1.35;
  font-size: medium;
}

a:hover .billboard__title {
  text-decoration: underline;
}

.billboard__message {
  margin-top: 6px;
  color: #fff;
}

/** ------------------------------
 * mainImage
 */
.mainImage {
  height: 520px;
}

/** ------------------------------------------------------------
 * contents
 */
#contents {
  margin-right: 0px;
}

#contents.hasSidebar {
  padding-right: 14px;
  border-right: solid 1px #ddd;
  float: left;
  width: 670px;
}

.contents {
  min-width: 1000px;
  font-size: 75%;
}

.contents--Tspace {
  padding-top: 1px;
}

.contents--gray {
  background-color: #eee;
}

.contents--fix {
  padding-top: 1px;
}

.contents--topLine {
  border-top: 1px solid #222;
}

.contents--head {
  margin-top: 30px;
  width: 670px !important;
  min-width: 670px  !important;
}

/** ------------------------------
 * タイトル
 */
/* 画像 */
.basicTitle {
  margin-top: 30px;
  margin-bottom: 20px;
  padding: 0 20px;
  color: #fff;
  background-color: #222;
  position: relative;
  font-family: 'Raleway', sans-serif;
  font-size: 250%;
  font-weight: 300;
  letter-spacing: 2px;
}

.basicTitle:before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
  display: block;
  width: 6px;
  background-color: #999;
}

.basicTitle--red:before {
  background-color: #6c0202;
}

.basicTitle--blue:before {
  background-color: #0c6f78;
}

.basicTitle--gold:before {
  background-color: #91730e;
}

.basicTitle--green:before {
  background-color: #51780c;
}

.basicTitle__wrap {
  text-align: center;
}

.basicTitle__text {
  margin-left: 5px;
  display: inline-block;
  font-size: 11px;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
  vertical-align: middle;
}

.basicTitle__wrap .basicTitle__text,
.basicTitle--simple .basicTitle__text {
  font-size: 24px;
}

/* 吹き出し調 */
.balloonTitle {
  margin: 30px auto 0;
  max-width: 1000px;
  font-size: 30px;
  line-height: 30px;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  letter-spacing: 4px;
}

.balloonTitle__inner {
  padding: 30px 5px;
  border-bottom: 1px solid #222;
  display: inline-block;
  position: relative;
}

.balloonTitle__inner:before {
  content: "";
  margin: auto;
  border: 11px solid transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-top-color: #222;
}

.balloonTitle__inner:after {
  content: "";
  margin: auto;
  border: 10px solid transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  border-top-color: #fff;
}

.contents--gray .balloonTitle__inner:after {
  border-top-color: #eee;
}

/* エリア検索画面タイトル */
.areaSearchTitle,
.areaTitle {
  padding-bottom: 13px;
  position: relative;
  font-size: 28px;
  line-height: 28px;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
  text-align: center;
}

/* もっと見る */
.more {
  margin: 20px 0 40px;
  font-size: 11px;
  text-align: right;
}

.more a {
  padding: 3px 30px;
  display: inline-block;
  position: relative;
  width: 90px;
  color: #fff;
  background-color: #222;
  text-align: center;
  letter-spacing: 1px;
}

.more a:after {
  margin: auto;
  content: "";
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
}

/* */
.lightTitle {
  margin: 15px 0;
  padding: 8px 15px;
  background-color: #eee;
  font-weight: bold;
  font-size: 108%;
}

/** ------------------------------
 * カテゴリアイコン
 */
.categoryIcon {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 1;
}

.categoryIcon--column {
  background-color: #6c0202;
}

.categoryIcon--shop {
  background-color: #91730e;
}

.categoryIcon--snap {
  background-color: #0c6f78;
}

a:hover .categoryIcon {
  opacity: 1;
  -ms-filter: "alpha(opacity=100";
}

/** ------------------------------
 * index-ピックアップ
 */
.pickupList {
}

.pickupList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.pickupList__item {
  float: left;
  width: 325px;
  margin-bottom: 20px;
}

.pickupList__item:nth-child(2n+1),
.pickupList__item:last-child {
  margin-bottom: 0;
}

.pickupList__item:nth-child(even) {
  margin-left: 20px;
}

.pickupList__item a {
  display: block;
}

.pickupList__sub {
  position: relative;
}

.pickupList__image {
  width: 100%;
}

.pickupList__main {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.pickupList__title {
  position: relative;
  padding: 16px 20px 16px 20px;
  color: #fff;
  font-size: 15px;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.pickupList__title--column {
  background-color: #6c0202;
}

.pickupList__title--column:before {
  content: url("/images/pc/contents/index/pickup/column.png");
  display: block;
  text-align: center;
  height: 14px;
  line-height: 8px;
}

.pickupList__title--snap {
  background-color: #0c6f78;
}

.pickupList__item a:hover .pickupList__title--snap {
  background-color: #4267b2;
}

.pickupList__title--snap:before {
  content: url("/images/pc/contents/index/pickup/snap.png");
  display: block;
  text-align: center;
  height: 14px;
  line-height: 8px;
}

.pickupList__title--shop {
  background-color: #91730e;
}

.pickupList__item a:hover .pickupList__title--shop {
  background-color: rgba(145,115,14,0.85);
}

.pickupList__title--shop:before {
  content: url("/images/pc/contents/index/pickup/shop.png");
  display: block;
  text-align: center;
  height: 14px;
  line-height: 8px;
}

.pickupList__title:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 14px;
  height: 14px;
  background: url("/images/pc/contents/index/pickup/bg.png") no-repeat 0 0;
}

.pickupList__message {
  margin-top: 6px;
  font-size: 80%;
}

/** ------------------------------
 * index-用語集
 */
.glossaryList {
}

.glossaryList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.glossaryList__item {
  float: left;
  width: 325px;
  margin-bottom: 20px;
}

.glossaryList__item:nth-child(2n+1),
.glossaryList__item:last-child {
  margin-bottom: 0;
}

.glossaryList__item:nth-child(even) {
  margin-left: 20px;
}

.glossaryList__item a {
  display: block;
}

.glossaryList__sub {
  position: relative;
}

.glossaryList__image {
  width: 100%;
}

.glossaryList__main {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.glossaryList__title {
  position: relative;
  padding: 16px 20px 16px 20px;
  color: #000;
  font-size: 15px;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
  font-weight: bold;
}

.glossaryList__title:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 14px;
  height: 14px;
}

.glossaryList__message {
  margin-top: 6px;
  font-size: 12px;
  font-weight: normal;
}

/** ------------------------------
 * index-search
 */
.searchMap {
  margin-top: 50px;
  margin-bottom: 40px;
  border: 1px solid #222;
  border-right-style: none;
  border-left-style: none;
  height: 337px;
  position: relative;
  font-size: 12px;
  line-height: 21px;
}

.searchMap__title {
  position: absolute;
  top: 22px;
}

.searchMap:before {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  width: 396px;
  height: 441px;
  background: url("/images/pc/contents/index/search/map.png") no-repeat 0 0;
}

.searchMap__link {
  position: absolute;
  top: 24px;
  left: 325px;
}

.searchMap__area {
  margin-bottom: 1px;
  width: 90px;
  color: #fff;
  background-color: #222;
  text-align: center;
  line-height: 20px;
}

.searchMap__body:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.searchMap__item {
  display: inline-block;
}

.searchMap__item + .searchMap__item:before {
  margin-right: 0.4em;
  content: "/";
}

.searchMap__item a {
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.searchMap__item a:hover {
  opacity: 0.7;
  -ms-filter: alpha(opacity=70);
}

/** ------------------------------
 * セル型リスト
 */
.cellList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.cellList--wide {
  margin: 0 auto;
  padding: 40px 0;
  width: 1000px;
}

.cellList__item {
  margin-bottom: 25px;
  clear: both;
  float: left;
  width: 325px;
}

/* IE8用・偶数 */
.cellList__item:first-child + *,
.cellList__item:first-child + * + * + *,
.cellList__item:first-child + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.cellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * {
  clear: none\9;
  margin-left: 20px\9;
}

/* IE8以外用・偶数 */
.cellList__item:nth-of-type(even) {
  margin-left: 20px;
  clear: none;
}

.cellList__item--narrow {
  clear: none;
  margin-left: 7px !important;
}

.cellList__item--narrow:first-child + * + * + *,
.cellList__item--narrow:first-child + * + * + * + * + * + *,
.cellList__item--narrow:first-child + * + * + * + * + * + * + * + * + *,
.cellList__item--narrow:first-child + * + * + * + * + * + * + * + * + * + * + * + * {
  clear: both;
  margin-left: 0px !important;
}

.cellList__item a {
  display: block;
}

.cellList__item a:hover .cellList__title {
  text-decoration: underline;
}

.cellList__sub {
  position: relative;
}

.cellList__image {
  width: 100%;
  border-bottom: 4px solid #222;
}

.clerkIcon {
  width: 36px;
  position: absolute;
  top: 0;
  right: 0;
}

.cellList__message {
  position: relative;
  height: 57px;
  overflow: hidden;
}

.contents--gray .cellList__message:before {
  background: #eee;
}

.contents--gray .cellList__message:after {
  background: #eee;
}

.categoryIcon--column + .cellList__image {
  border-bottom-color: #6c0202;
}

.categoryIcon--shop + .cellList__image {
  border-bottom-color: #91730e;
}

.categoryIcon--snap + .cellList__image {
  border-bottom-color: #0c6f78;
}

.snapIndex .cellList__message {
  margin-bottom: 10px;
  height: auto;
}

.clerkInfo {
  padding: 5px 10px 5px 36px;
  position: relative;
  background-color: #eee;
  line-height: 18px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.clerkInfo::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 28px;
  height: 28px;
  vertical-align: middle;
  background: url("/images/pc/contents/snap/clerkIcon36.png") no-repeat 0 0;
  -webkit-background-size: cover;
     -moz-background-size: cover;
          background-size: cover;
}

.cellList__title {
  margin: 12px 0 10px;
  padding-left: 1.2em;
  position: relative;
  line-height: 1.35;
  font-size: medium;
}

.cellList__title:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "―";
}

.cellList__date {
  font-size: 100%;
  margin-top: 10px;
  margin-bottom: -5px;
}
/** ------------------------------
 * 検索結果リスト
 */
.searchCellList {
  padding-top: 25px;
  background-color: #fff;
}

.searchCellList__wrap:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.searchCellList__item {
  margin-bottom: 25px;
  margin-left: 20px;
  float: left;
  width: 320px;
}

.searchCellList__item:first-child {
  margin-left: 0;
}

/* IE8用・偶数 */
.searchCellList__item:first-child + * + * + *,
.searchCellList__item:first-child + * + * + * + * + * + *,
.searchCellList__item:first-child + * + * + * + * + * + * + * + * + * {
  margin-left: 0;
  clear: both;
}

/* IE8以外用・偶数 */
.searchCellList__item:nth-of-type(3n+1) {
  margin-left: 0;
  clear: both;
}

.searchCellList__item a {
  position: relative;
  display: block;
}

.searchCellList__sub {
  position: relative;
}

.searchCellList__image {
  position: relative;
  width: 100%;
}

.searchCellList__title {
  margin: 12px 0 10px;
  padding-left: 1.2em;
  position: relative;
  line-height: 1.35;
  font-size: medium;
}

.searchCellList__title--gold {
  color: #91730e;
}

.searchCellList__title--red {
  color: #6c0202;
}

.searchCellList__title--blue {
  color: #0c6f78;
}

.searchCellList__title:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "―";
}

a:hover .searchCellList__title {
  text-decoration: underline;
}

.searchCellList__icon {
  background-color: rgba(0,0,0,0.8);
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
}

/**/
.searchHead {
  border-bottom: 1px solid #222;
}

.searchHead:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.searchHead__wrap {
  position: relative;
}

.searchHead__title {
  margin: 0 auto;
  padding: 15px 0;
  width: 1000px;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 2px;
}

.searchType {
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  height: 1.6em;
  line-height: 1.6em;
  font-size: 15px;
}

.searchType__item {
  margin-right: 15px;
  float: left;
}

.searchType__item a {
  color: #2882a1;
}

.searchType__item + .searchType__item:before {
  margin: 0 1.5em 0 0;
  content: "／";
}

.searchType__item a:hover {
  text-decoration: underline;
}

/* もっと見る */
.contents__more {
  clear: both;
  padding: 30px 0;
  background-color: #222;
  text-align: center;
}

.contents__more a {
  padding: 0 30px;
  border: 1px solid #fff;
  display: inline-block;
  min-width: 400px;
  line-height: 3em;
  color: #fff;
  background-color: transparent;
  font-size: 14px;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}


.contents__more a:hover {
  background-color: rgba(255,255,255,0.1);
}

.contents__more--purple {
  background-color: #3b2284;
}

.contents__more--red {
  background-color: #6c0202;
}

.contents__more--blue {
  background-color: #0c6f78;
}

.contents__more--gold {
  background-color: #91730e;
}

*[class*="contents__more--"] a {
}

/** ------------------------------
 * 一般型リスト
 */
.basicList__item {
  margin-bottom: 20px;
}

.basicList__item a {
  display: table;
  table-layout: fixed;
  width: 100%;
  unicode-bidi: embed;
  direction: rtl;
}

.basicList__sub,
.basicList__main {
  display: table-cell;
  vertical-align: middle;
  direction: ltr;
}

.basicList__sub {
  position: relative;
  width: 325px;
}

.basicList__main {
  padding-left: 20px;
}

.basicList__title {
  margin-bottom: 13px;
  padding-left: 1.1em;
  position: relative;
  line-height: 1.35;
  background: url("/images/pc/contents/common/diamondIcon.png") no-repeat 0 0.25em;
  font-size: medium;
}

.basicList__item a:hover .basicList__title {
  text-decoration: underline;
}

/** ------------------------------
 * index-スナップ
 */
.snapList {
  margin-left: 1px;
}

.snapList::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.snapList__item {
  position: relative;
  float: left;
  width: 111px;
}

.snapList--glossary .snapList__item {
  width: 20%;
}

.snapList__item > a{
  display: block;
}

.snapList__item img {
  width: 100%;
}

.snapList__item .clerkIcon {
  top: 0;
  right: 0;
  width: 26px;
  height: 26px;
}

/* いいね */
.coolButton {
  padding: 2px 5px;
  -webkit-border-radius: 2px;
     -moz-border-radius: 2px;
          border-radius: 2px;
  position: absolute;
  right: 2px;
  bottom: 6px;
  display: block;
  color: #fff;
  background-color: #4267b2;
  font-size: 16px;
  letter-spacing: -0.001em;
}

.coolButton::before {
  content: "\e900";
  font-family: coolIcon;
  vertical-align: middle;
}

.snapList .coolButton {
  right: 0;
  bottom: 0;
}

/** ------------------------------------------------------------
 * 下層-記事詳細
 */
/** ------------------------------
 * 記事header
 */
.articleHeader {
  margin: 0;
  padding: 30px 0 0;
  position: relative;
}

.articleHeader__title {
  margin: 0 0 10px;
  position: relative;
  font-size: 220%;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: 2px;
}

.articleHeader__titleCategory {
  margin-right: 20px;
  margin-bottom: 13px;
  position: static;
  display: block;
  float: left;
}

.articleHeader__message {
  margin-top: 20px;
  padding-top: 10px;
  border-top: 1px solid #ccc;
  line-height: 1.9;
  color: #555;
  font-size: medium;
  letter-spacing: 2px;
}

.articleHeader__date {
  font-size: 13px;
  margin: 0 0 13px 6px;
}
/** ------------------------------
 * 記事メイン
 */
.articleMainImage {
  text-align: center;
  margin: 20px 0 30px 0;
}

.articleMainImage img {
  width: 60%;
}

.articleBody {
  border-bottom: 1px solid #ccc;
  margin-bottom: 30px;
  padding-bottom: 16px;
  line-height: 1.9;
  letter-spacing: 1px;
  font-size: 14px;
}

/*
.articleBody__image {
  margin-bottom: 20px;
  text-align: center;
}

.articleBody__image img {
  max-width: 670px;
}

.articleBody__title {
  margin-top: 30px;
  margin-bottom: 20px;
  border-bottom: 1px solid #222;
  position: relative;
  letter-spacing: 2px;
}

.articleBody__titleInner {
  margin-bottom: -1px;
  padding-bottom: 7px;
  border-bottom: 3px solid #222;
  display: inline-block;
  font-size: 200%;
  line-height: 28px;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
}

.articleBody--red .articleBody__titleInner {
  border-bottom-color: #6c0202;
}

.articleBody--blue .articleBody__titleInner {
  border-bottom-color: #0c6f78;
}

.articleBody--gold .articleBody__titleInner {
  border-bottom-color: #91730e;
}

.articleBody__text {
  margin-top: 12px;
  margin-bottom: 40px;
  color: #555;
  font-size: 117%;
  letter-spacing: 1px;
}
*/

.articleBody a {
  border-bottom: 1px dashed transparent;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.articleBody--blue a {
  color: #00b5c5;
}

.articleBody--blue a:hover {
  border-bottom-color: #00b5c5;
}

.articleBody--red a {
  color: #e8387e;
}

.articleBody--red a:hover {
  border-bottom-color: #e8387e;
}

.articleBody--gold a {
  color: #cea417;
}

.articleBody--gold a:hover {
  border-bottom-color: #cea417;
}

.articleBody table tr td {
  border: 1px solid #222;
}

.articleBody table tr:first-child td {
  text-align: center;
  background-color: #ddd;
}

/** ------------------------------
 * 関連店舗
 */
.relatedShop {
  margin: 20px 0;
  border-bottom: 2px solid #a22229;
}

.relatedShop .basicTitle {
  margin: 0;
}

.relatedShop .searchList__item {
  padding-top: 10px;
}

.relatedShop .searchList__wrap {
  padding: 10px 0 20px;
}

.relatedShop .searchList__item:hover .searchList__wrap:before,
.relatedShop .searchList__item:hover .searchList__wrap:after {
  border-color: transparent;
}

/** ------------------------------
 * 下層-スナップ
 */
.snapHeader {
  padding: 5px 10px;
  color: #ccc;
  background-color: #404040;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: -0.001em;
}

.snapHeader__inner {
  margin: 0 auto;
  width: 1000px;
}

.snapHeader__inner * {
  margin-right: 5px;
  display: inline;
}

.snap__nav {
  width: 100%;
  height: 40px;
  margin-top: 10px;
}

.snap__prev,
.snap__next {
  background: #222222;
  padding: 6px 10px 5px;
  border-radius: 5px;
  margin: 10px auto 10px;
  letter-spacing: 1px;
}

.snap__prev {
  float: left;
  margin-left: 20px;
  padding-right: 15px;
}

.snap__next {
  float: right;
  margin-right: 20px;
  padding-left: 15px;
}

.snap__nav a {
  color: #fff;
  font: bold;
  font-size: 14px;
  font-weight: 700;
}
/** ------------------------------------------------------------
 * 自由入力部分
 */
/** ------------------------------
 * タイトル
 */
.articleBody .title {
  margin-top: 30px;
  margin-bottom: -16px;
  padding-bottom: 3px;
  border-bottom: 1px solid #ccc;
  position: relative;
  line-height: 26px;
  font-size: 22px;
  font-weight: bold;
}

/**/
.articleBody .line {
  height: 0;
  margin-top: 14px;
  margin-bottom: -10px;
  border-top: 1px solid #ccc;
}

.articleBody .line.red {
  border-top-color: #a22229
}

.articleBody .line.wide {
  border-top-width: 2px;
}

.articleBody .line.margin-small {
  height: 0;
  margin: 8px 0 -12px 0;
}

/**/
.articleBody .subTitle {
  margin: 5px 0 -10px;
  padding-left: 0.7em;
  position: relative;
  line-height: 1.3;
  font-size: 18px;
  font-weight: bold;
}

.articleBody .subTitle:before {
  position: absolute;
  top: 0.2em;
  left: 0;
  display: block;
  content: "";
  width: 3px;
  height: 0.85em;
  background-color: #6c0202;
}

.articleBody--blue .subTitle:before {
  background-color: #0c6f78;
}

/**/
.articleBody .center {
  text-align: center;
}

/**/
.articleBody .leftImage,
.articleBody .rightImage {
  width: 100%;
  display: table;
  table-layout: fixed;
  text-align: left;
}

.articleBody .rightImage {
  direction: rtl;
  unicode-bidi: embed;
}

.articleBody .leftImage > div,
.articleBody .rightImage > div {
  margin: 0;
  width: 50%;
  display: table-cell;
  vertical-align: middle;
  direction: ltr;
}

.articleBody .leftImage > div {
  padding-right: 30px;
}

.articleBody .rightImage > div {
  padding-left: 30px;
}

.articleBody .leftImage > div + div,
.articleBody .rightImage > div + div {
  padding-right: 0;
  padding-left: 0;
  width: auto;
}

.articleBody .leftImage > div img,
.articleBody .rightImage > div img {
  margin: 0 auto;
  display: block;
  width: auto;
  max-width: 100%;
}

/**/
.articleBody .imageBlock2,
.articleBody .imageBlock3 {
  font-size: 0;
}

.articleBody .imageBlock2 img,
.articleBody .imageBlock3 img {
  font-size: 12px;
  vertical-align: middle;
}

.articleBody .imageBlock2 img {
  width: 50%;
}

.articleBody .imageBlock3 {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.articleBody .imageBlock3 span {
  display: table-cell;
  vertical-align: middlem;
}

.articleBody .imageBlock3 img {
  width: 100%;
}

/**/
.articleBody .list {
  margin: 10px 0;
}

.articleBody .list li {
  margin: 5px 0 5px 1em;
  position: relative;
}

.articleBody .list li:before {
  position: absolute;
  top: 0.7em;
  left: -1em;
  display: block;
  content: "";
  width: 0.5em;
  height: 0.5em;
  background-color: #6c0202;
}

.articleBody--blue .list li:before {
  background-color: #0c6f78;
}

/**/
.articleBody table {
  margin: 0 auto;
  table-layout: auto;
  width: 100%;
}

.articleBody table th,
.articleBody table td {
  padding: 8px 20px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  vertical-align: middle;
}

.articleBody table th {
  min-width: 100px;
  background-color: #eee;
  text-align: center;
}

.articleBody pre {
  margin: 20px;
  padding: 20px;
  display: block;
  border: 1px dotted #222;
  font-size: medium;
  color: #666;
}

.articleBody img {
  margin: 0 auto;
  display: block;
  max-width: 100%;
}

/** ------------------------------
 * SNSボタンリンク
 */
.SNS {
  margin-top: 5px;
  display: table;
  table-layout: fixed;
  width: 100%;
  line-height: 3em;
  font-size: 14px;
  text-align: center;
  letter-spacing: 0.2em;
}

.SNS--min {
  width: auto;
  line-height: 2em;
}

.SNS a span,
.SNS--min a span {
  display: inline-block;
  width: 0;
  height: 0;
  overflow: hidden;
  white-space: nowrap;
}

.SNS__item {
  display: table-cell;
  width: 110px;
}

.SNS__item a {
  position: relative;
  color: #fff;
  display: block;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.SNS__item--twitter a {
  background-color: #55acee;
}

.SNS__item--facebook a {
  background-color: #3b5998;
}

.SNS__item--google a {
  background-color: #db4437;
}

.SNS__item--hatena a {
  background-color: #00a4de;
}

.SNS__item a:before {
  content: "";
  margin: 0 auto;
  position: absolute;
  z-index: 5;
  top: 0;
  bottom: 0;
  left: 50%;
  display: block;
  height: 17px;
  font-size: 16px;
  font-family: headerIcon;
  vertical-align: middle;
  margin-left: -8px;
}

.SNS__item--twitter a:before {
  content: "\e602";
}

.SNS__item--facebook a:before {
  content: "\e601";
}

.SNS__item--google a:before {
  content: "\e680";
}

.SNS__item--hatena a:before {
  content: "\e604";
}

.SNS__item a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  bottom: 0;
  left: 0;
  display: block;
  background-color: rgba(255,255,255,0.5);
}

.SNS__item a:hover:after {
  right: 0;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.SNS__item a:hover:after {
  background-color: inherit;
}

.SNS__item a span {
  font-size: 60%;
  position: relative;
  z-index: 5;
}

/** ------------------------------
 * スナップ詳細
 */
/* .slideShow
------------------------- */
.slideShow {
  margin-top: 20px;
}

.slideShow__icon {
  background-color: rgba(0,0,0,0.8);
  width: 36px;
}

.slideShow__comment {
  font-size: 14px;
  width: 400px;
  margin: 30px auto 20px;
  padding: 2px 10px 0 14px;
  color: #000;
  border: 3px solid rgba(230,200,40,1);
  background-color: #f0f0f0;
  z-index: 10;
  min-height: 54px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.slideShow__comment p:first-child {
  padding: 5px;
  font-size: 16px;
}

.slideShow__comment > div {
  margin-left: 50px;
}

.slideShow__comment a {
  position: relative;
  font-size: 20px;
  bottom: 0;
  color: #222;
  text-decoration: underline;
}

/* .mainView
------------------------- */
.mainView,
.mainView ul {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.mainView ul li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

.mainView a {
  position: relative;
  display: inline-block;
}

.mainView ul li img {
  width: 100%;
}

/*
.slideShow__icon {
  background-color: rgba(0,0,0,0.8);
  position: absolute;
  top: 0;
  right: 0;
  width: auto !important;
}

.slideShow__comment {
  margin-top: -2.4em;
  padding: 0 10px;
  color: #fff;
  background-color: rgba(0,0,0,0.8);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  width: 100%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 2.4;
}
*/

/* .thumbNail
------------------------- */
.thumbNailTitle {
  margin: 25px 5px 0;
  font-weight: bold;
  font-size: 18px;
  text-transform: uppercase;
}

.thumbNail {
  position: relative;
  overflow: hidden;
}

.thumbNail ul li {
  float: left;
  overflow: hidden;
  cursor: pointer;
  text-align: center;
}

.thumbNail ul li img {
  padding: 10px 0px;
  width: 70%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.thumbNail ul li.active {
  filter: alpha(opacity=100)!important;
  -moz-opacity: 1!important;
       opacity: 1!important;
}

/* sideNavi
------------------------- */
.mainView .btnPrev,
.mainView .btnNext {
  top: 10px;
  bottom: 0;
  width: 46px;
  position: absolute;
  z-index: 100;
}

.mainView .btnPrev {
  left: 0;
}

.mainView .btnNext {
  right: 0;
}

.mainView .btnPrev:before {
  content: "";
  margin: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 25px;
  bottom: 0;
  width: 30px;
  height: 30px;
  border-bottom: 2px solid #222;
  border-left: 2px solid #222;
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.mainView .btnNext:before {
  content: "";
  margin: auto;
  display: block;
  position: absolute;
  top: 0;
  right: 25px;
  bottom: 0;
  width: 30px;
  height: 30px;
  border-top: 2px solid #222;
  border-right: 2px solid #222;
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

/**/
.mainView ul:after,
.thumbNail ul:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;
}

.mainView ul,
.thumbNail ul {
  display: inline-block;
  overflow: hidden;
}

/**/
.snapBody {
  padding: 20px 0;
  border: 1px solid #222;
  border-style: solid none;
}

.snapBody a {
  border-bottom: 1px dashed transparent;
  color: #e8387e;
}

/** ------------------------------
 * profile
 */
.profile {
  margin: 30px 0;
  position: relative;
  border: 4px solid #eee;
}

.profile h2 {
  padding: 5px 15px;
  color: #fff;
  background-color: #222;
  font-weight: bold;
}

.profile dl {
  position: relative;
  line-height: 1.6;
}

.profile dl:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.profile dl:before {
  content: "";
  border-left: 1px solid #eee;
  position: absolute;
  top: 0;
  left: 13em;
  bottom: 0;
}

.profile dt,
.profile dd {
  padding-top: 7px;
  padding-bottom: 7px;
  border-top: 1px solid #eee;
  min-height: 1.6em;
}

.profile dt {
  padding-right: 1em;
  padding-left: 1em;
  clear: both;
  float: left;
  width: 10em;
  text-align: center;
  font-weight: bold;
}

.profile dd {
  margin-left: -14em;
  padding-left: 14em;
  float: right;
  width: 100%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

/** ------------------------------
 * photoList
 */
.photoListTitle {
  margin: 25px 0 5px;
  font-weight: bold;
  font-size: 18px;
  text-transform: uppercase;
}

.photoList {
  margin: 0 -5px;
}

.photoList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.photoList li {
  padding: 0 5px 10px;
  float: left;
  width: 33.333%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.photoList li > div {
  position: relative;
}

.photoList li img {
  width: 100%;
}

.photoList li img.clerkIcon {
  width: 36px;
}

/** ------------------------------
 * エリア選択
 */
.areaSelect {
  margin-top: 6em;
  border: 1px solid #222;
  border-top: none;
  letter-spacing: 2px;
  position: relative;
}

.areaSelect a {
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.cityListButton {
  margin-top: 30px;
  text-align: right;
}

.cityListButton a {
  padding: 4px 30px;
  -webkit-border-radius: 5px 5px 0 0;
     -moz-border-radius: 5px 5px 0 0;
          border-radius: 5px 5px 0 0;
  display: inline-block;
  color: #fff;
  background-color: #222;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.cityListButton a span {
  text-decoration: underline;
}

.cityListButton a:before {
  margin-right: 0.5em;
  content: "\e600";
  font-family: headerIcon;
}

.cityListButton a:hover {
  background-color: #0c6f78;
}

#cityList {
  padding: 0 15px;
  position: relative;
  color: #fff;
  background-color: #222;
  line-height: 3.8;
  font-weight: bold;
}

#cityList:before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
  display: block;
  width: 6px;
  background-color: #0c6f78;
}

.areaSelect__title {
  padding: 0 15px 0 4.2em;
  position: relative;
  line-height: 3em;
  background: #eee url("/images/pc/contents/common/slashBg.png") no-repeat 100% 0;
  font-size: 113%;
}

.areaSelect__title:before {
  content: "\e605";
  padding-left: 0.1em;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3.2em;
  color: #fff;
  background-color: #0c6f78;
  text-align: center;
  font-family: icon;
}

.areaSelect__body {
  padding: 13px 6px;
  color: #aaa;
  line-height: 2;
}

.areaSelect__body:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.areaSelect__body > * {
  padding: 0 15px;
}

.areaSelect__all {
  margin-top: -4px;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px dotted #222;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: normal;
  font-size: 91%;
  line-height: 2;
  text-align: right;
}

.areaSelect__all a {
  padding: 0 10px;
  position: relative;
  display: inline-block;
  min-width: 25%;
  color: #fff !important;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}

.areaSelect__all a:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #222;
}

.areaSelect__all a:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(255,255,255,0.7);
}

.areaSelect__all a:hover:before {
  right: 0;
  background-color: #222;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.areaSelect__item {
  position: relative;
  float: left;
  width: 25%;
}

.areaSelect__item a {
  margin-right: 5px;
  position: relative;
  display: inline-block;
}

.areaSelect__item a:before {
  margin: auto;
  content: "\e614";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -15px;
  width: 1em;
  height: 1em;
  line-height: 1em;
  color: #fff;
  font-family: icon;
  font-size: 10px;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.areaSelect__item a:hover:before {
  color: #aaa;
}

.areaSelect__item a:after {
  content: "";
  position: absolute;
  bottom: 0.1em;
  left: 0;
  right: 100%;
  border-bottom: 1px solid #222;
  -webkit-transition: all 0.3s ease 0.15s;
     -moz-transition: all 0.3s ease 0.15s;
      -ms-transition: all 0.3s ease 0.15s;
       -o-transition: all 0.3s ease 0.15s;
          transition: all 0.3s ease 0.15s;
}

.areaSelect__item a:hover:after {
  right: 0;
}

/** ------------------------------
 * 検索対象・セル型リスト
.objectCellList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.objectCellList--PR {
  border-bottom: 1px solid #222;
  padding: 20px 15px 0;
  background-color: #eee;
}

.basicTitle + .objectCellList--PR {
  margin-top: -20px;
}

.objectCellList__item {
  margin-bottom: 20px;
  float: left;
  width: 325px;
}

.objectCellList--PR .objectCellList__item {
  width: 310px;
}

.objectCellList__item:first-child + *,
.objectCellList__item:first-child + * + * + *,
.objectCellList__item:first-child + * + * + * + * + *,
.objectCellList__item:first-child + * + * + * + * + * + * + *,
.objectCellList__item:first-child + * + * + * + * + * + * + * + * + *,
.objectCellList__item:first-child + * + * + * + * + * + * + * + * + * + * + * {
  margin-left: 20px;
}

.objectCellList__item a {
  display: block;
}

.objectCellList__sub {
  position: relative;
}

.objectCellList__area {
  padding: 0 13px;
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 1;
  height: 18px;
  line-height: 18px;
  color: #fff;
  background-color: #91730e;
  text-align: left;
}

.objectCellList__image {
  width: 100%;
}

.objectCellList__title {
  font-size: medium;
  line-height: 1.35;
  margin: 12px 0 10px;
  padding-left: 1.2em;
  position: relative;
}

.objectCellList__title:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "―";
}
 */

/** ------------------------------
 * 
 */
.areaRecommend {
  margin-top: 30px;
  margin-left: -20px;
  font-size: 0;
}

.areaRecommend:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.areaRecommend__item {
  padding: 15px;
  margin-bottom: 20px;
  margin-left: 20px;
  position: relative;
  float: left;
  width: 295px;
  font-size: small;
}

.areaRecommend__item:before,
.areaRecommend__item:after {
  content: "";
  border: 1px solid #222;
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.areaRecommend__item:before {
  left: 0;
  right: 310px;
  border-style: solid none solid solid;
}

.areaRecommend__item:after {
  right: 0;
  left: 310px;
  border-style: solid solid solid none;
}

.areaRecommend__item:hover:before,
.areaRecommend__item:hover:after {
  border-color: #51780c;
}

.areaRecommend__item:hover:before {
  right: 0;
}

.areaRecommend__item:hover:after {
  left: 0;
}

/* タイトル */
.areaRecommend__areaTitle {
  line-height: 1.3;
  color: #222;
  background: #eee url("/images/pc/contents/common/slashBg2.png") no-repeat 100% 100%;
  font-size: x-large;
  text-align: center;
}

.areaRecommend__areaTitle:before,
.areaRecommend__areaTitle:after {
  z-index: 5;
}

.areaRecommend__areaTitle:hover:before {
  right: 310px;
}

.areaRecommend__areaTitle:hover:after {
  left: 310px;
}

.areaRecommend__areaTitleInner {
  margin-top: -1.6em;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
}

.areaRecommend__areaTitleMain {
  margin-right: 1px;
  font-size: 160%;
  letter-spacing: 4px;
}

.areaRecommend__sub {
  position: relative;
}

.areaRecommend__image {
  width: 100%;
}

a:hover .areaRecommend__image {
  opacity: 1;
  -ms-filter: "alpha(opacity=100)";
}

.areaRecommend__area {
  margin-top: 8px;
  padding: 0 13px;
  line-height: 1.8;
  min-width: 5em;
  display: inline-block;
  color: #fff;
  font-size: x-small;
  background-color: #51780c;
  text-align: center;
}

.areaRecommend__title {
  margin-top: 6px;
}

/** ------------------------------
 * 検索対象・一般型リスト
 */
.objectList__item {
  margin-bottom: 20px;
}

.objectList--divide .objectList__item  {
  padding-bottom: 20px;
  border-bottom: 1px solid #222;
}

.objectList__item a {
  display: table;
  table-layout: fixed;
  width: 100%;
  unicode-bidi: embed;
  direction: rtl;
}

.objectList__sub,
.objectList__main {
  display: table-cell;
  vertical-align: middle;
  direction: ltr;
}

.objectList__sub {
  position: relative;
  width: 325px;
}

.objectList__main {
  padding-left: 20px;
}

.objectList__title {
  margin-bottom: 13px;
  position: relative;
  line-height: 1.35;
  font-size: medium;
}

.objectList__area {
  margin-bottom: 10px;
  padding: 0 13px;
  line-height: 1.8;
  min-width: 5em;
  display: inline-block;
  color: #fff;
  background-color: #91730e;
  text-align: center;
}

/** ------------------------------
 * 駅名で検索リスト
 */
.stationList {
  margin-top: -20px;
  padding: 20px 0 40px 0;
  background-color :#eee;
  line-height: 2.4;
  font-size: 0;
}

.stationList__item {
  margin: 0 5px 5px 0;
  display: inline-block;
  font-size: small;
}

.stationList__item a {
  padding: 0 18px 0 13px;
  border: 1px solid #ccc;
  position: relative;
  display: inline-block;
  background-color: #fff;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.stationList__item a:before {
  margin-right: -0.2em;
  content: "\e605";
  font-family: icon;
}

.stationList__item a:after {
  content: "";
  display: block;
  position: absolute;
  right: 100%;
  left: -1px;
  bottom: -1px;
  border-bottom: 2px solid #ccc;
  -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
       -o-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

.stationList__item a:hover:after {
  right: -1px;
  border-color: #222;
}

/** ------------------------------
 * 検索条件
 */
.basicTitle + .condition {
  margin-top: -21px;
}

.condition__contents {
  position: relative;
}

.condition__contents:before {
  content: "";
  border-right: 5px solid #fff;
  position: absolute;
  top: 0;
  left: 150px;
  bottom: 1px;
  display: block;
}

.condition__head {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: 400px;
  color: #fff;
  background-color: #222;
  line-height: 2.2;
  text-align: center;
  font-size: medium;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
       -o-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

.condition__head:hover {
  background-color: #0c6f78;
}


.condition__head--active {
  width: 100%;
}

.condition__head:before {
  margin-right: 7px;
  content: "\e600";
  font-family: headerIcon;
  font-size: 80%;
}

.condition__head:after {
  position: absolute;
  top: 7px;
  right: 7px;
  bottom: 7px;
  display: block;
  width: 1.6em;
  line-height: 1.7;
  content: "\e60e";
  font-family: icon;
  font-size: 80%;
  color: transparent;
  background-color: transparent;
  text-align: center;
  -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
       -o-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

.condition__head--active:after {
  color: #222;
  background-color: #fff;
}

.condition__head--active:hover:after {
  color: #0c6f78;
}

.condition__item {
  border-bottom: 1px solid #222;
  display: table;
  table-layout: fixed;
  width: 100%;
}

.condition__title,
.condition__body {
  display: table-cell;
  vertical-align: middle;
}

.condition__title {
  width: 150px;
  background-color: #eee;
  text-align: center;
}

.condition__title--bg {
  background-image: url("/images/pc/contents/common/slashBg2.png");
  background-repeat: no-repeat;
  background-position: 100% 100%;
}

.condition__body {
  padding: 11px 0 11px 15px;
  line-height: 2.4;
}

.condition__body label {
  margin-right: 32px;
  display: inline-block;
}

.condition__body dl {
  margin-bottom: -1px;
  overflow: hidden;
}

.condition__body dt {
  margin-bottom: 6px;
  margin-left: 10px;
  position: relative;
  width: 160px;
  color: #fff;
  background-color: #222;
  text-align: center;
  height: 20px;
  line-height: 20px;
  font-weight: bold;
}

.condition__body dt:before {
  content: "";
  position: absolute;
  left: -20px;
  bottom: 0;
  border: 10px solid;
  border-color: transparent #222 transparent transparent;
}

.condition__body dt:after {
  content: "";
  position: absolute;
  right: -20px;
  bottom: 0;
  border: 10px solid;
  border-color: transparent transparent transparent #222;
}

.condition__body dt + dd {
  padding-bottom: 20px;
  border-bottom: 1px dotted #999;
  margin-bottom: -0.9em;
}

.condition__button {
  margin: 10px 0 30px;
  text-align: center;
}

.condition__button button {
  margin: 0;
  padding: 0 30px;
  border: none;
  min-width: 250px;
  line-height: 2.8;
  -webkit-appearance: none;
     -moz-appearance: none;
      -ms-appearance: none;
          appearance: none;
  color: #fff;
  background-color: #222;
  font-size: 15px;
  font-family: "メイリオ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",sans-serif;
  outline: none;
  cursor: pointer;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.condition__button button:before {
  margin-right: 10px;
  content: "\e600";
  font-family: headerIcon;
  vertical-align: middle;
}

.condition__button button:hover {
  background-color: #0c6f78;
}

/** ------------------------------
 * エリア検索結果
 */
.areaSearchTitle,
.areaTitle {
  margin: 0 0 20px;
  padding-top: 20px;
  text-align: center;
  letter-spacing: 2px;
}

.areaTitle {
  border-top: 1px solid #222;
}

.areaTitle__main {
  display: inline-block;
  font-size: x-large;
  line-height: 1.2;
}

.areaTitle__area {
  padding-left: 2px;
  position: relative;
  z-index: 1;
  display: inline-block;
  font-size: 160%;
}

.areaTitle__area:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  right: 0;
  left: 0;
  bottom: 2px;
  height: 30%;
  background: url("/images/pc/contents/common/underLine.png") repeat-x 0 0;
}

.areaTitle__count {
  margin-top: 5px;
  padding: 0 40px;
  position: relative;
  display: inline-block;
  line-height: 1.8;
  font-size: small;
  color: #fff;
  background-color: #0c6f78;
}

.areaTitle__count:after {
  margin: auto;
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  border-width: 10px 7px;
  border-style: solid;
  border-color: #0c6f78 transparent transparent transparent;
}

/**/
.areaTitle__search {
  margin: 10px 0;
}

.areaTitle__search input {
  margin: 0;
  padding: 0 8px;
  border: 1px solid #222;
  display: inline-block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  height: 36px;
  line-height: 36px;
  background: #fff;
  outline: none;
  vertical-align: top;
  width: 55%;
}

.areaTitle__search button {
  margin: 0;
  padding: 0 10px;
  border: 1px solid #222;
  display: inline-block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  height: 36px;
  line-height: 36px;
  color: #fff;
  background: #222;
  outline: none;
  font-family: headerIcon;
  vertical-align: top;
  cursor: pointer;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.areaTitle__search button:hover {
  color: #0c6f78;
}

/** ------------------------------
 * 検索結果
 */
.searchTitle {
  padding: 40px 0 30px;
  line-height: 1.2;
  text-align: center;
}

.searchTitle img {
  padding-bottom: 11px;
  border-bottom: 3px solid #6c0202;
}

.searchTitle--blue img,
.searchTitle--blue .searchTitle__text {
  border-bottom-color: #0c6f78;
}

.searchTitle--gold img,
.searchTitle--gold .searchTitle__text {
  border-bottom-color: #91730e;
}

.searchTitle__text {
  padding-bottom: 10px;
  border-bottom: 3px solid #6c0202;
  display: inline-block;
  font-size: 28px;
  line-height: 28px;
  letter-spacing: 2px;
}

.searchTextTitle {
  margin-bottom: 34px;
  padding: 40px 0 6px;
  position: relative;
  line-height: 1.2;
  text-align: center;
  font-family: 'Raleway', sans-serif;
  font-size: 38px;
  font-weight: bold;
}

.searchTextTitle::before {
  content: "";
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 4em;
  height: 0;
  border-bottom: 5px solid #6c0202;
}

.searchTextTitle--purple::before {
  border-bottom-color: #3b2284;
}

.searchTextTitle--blue::before {
  border-bottom-color: #0c6f78;
}

.searchTextTitle--gold::before {
  border-bottom-color: #91730e;
}

/** ------------------------------
 * 検索結果
 */
.searchList {
  background-color: #fff;
}

.searchList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.searchList__item:first-child + *,
.searchList__item:first-child + * + * + *,
.searchList__item:first-child + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * {
  /* background-color: #f6f6f6; */
}

.searchList__wrap {
  padding: 30px 0;
  position: relative;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.searchList__wrap:before,
.searchList__wrap:after {
  content: "";
  border: 1px solid transparent;
  display: block;
  position: absolute;
  z-index: 10;
  top: 20px;
  bottom: 20px;
  width: 15px;
  -webkit-transition: all 1s ease;
     -moz-transition: all 1s ease;
      -ms-transition: all 1s ease;
       -o-transition: all 1s ease;
          transition: all 1s ease;
}

.searchList__item .searchList__wrap:before {
  left: -25px;
}

.searchList__item .searchList__wrap:after {
  right: -25px;
  visibility: visible;
  height: auto;
}

.searchList__item:hover .searchList__wrap:before {
  border-color: #222 transparent #222 #222;
}

.searchList__item:hover .searchList__wrap:after {
  border-color: #222 #222 #222 transparent;
}

.searchList__inner:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

/* 各項目 */
.searchList {
  letter-spacing: 2px;
}

.searchList--column {
  margin: 5px 0 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}

.searchList__title {
  margin-bottom: 15px;
  font-size: 200%;
  line-height: 1.4;
}

.searchList__title a {
  border-bottom: 1px solid #222;
  position: relative;
  display: inline-block;
  min-width: 325px;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.searchList__title a:hover {
  color: #91730e;
  border-bottom-color: #91730e;
}

.searchList__title a:before {
  margin: auto;
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 162px;
  width: 0;
  height: 0;
  border-width: 10px 7px;
  border-style: solid;
  border-color: #222 transparent transparent transparent;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.searchList__title a:hover:before {
  border-top-color: #91730e;
}

.searchList__title a:after {
  margin: -1px auto auto auto;
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 162px;
  width: 0;
  height: 0;
  border-width: 10px 7px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

.searchList__item:first-child + * .searchList__title a:after,
.searchList__item:first-child + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * .searchList__title a:after,
.searchList__item:first-child + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * .searchList__title a:after {
  border-top-color: #f6f6f6;
}

.searchList__sub {
  margin-right: 20px;
  float: left;
  width: 325px;
}

.searchList__image {
  margin-bottom: 12px;
  min-height: 160px;
  background-color: #909090;
}

.searchList__message {
  line-height: 2;
}

.searchList__main .searchList__message {
  margin: 0 0 15px;
}

.searchList__main {
  float: right;
  width: 645px;
}

.hasSidebar .searchList__main {
  width: 320px;
}

/*
.searchListData {
  margin-bottom: 15px;
  position: relative; 
}

.searchListData:after {
  content: "";
  border: 1px solid #222;
  position: absolute;
  bottom: 0;
  left: 211px;
  width: 3px;
  height: 3px;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
  display: block;
  background-color: #fff;
}

.searchListData__title {
  padding: 12px 0;
  position: absolute;
  width: 213px;
  text-align: center;
}

.searchListData__body {
  margin-left: 213px;
  padding: 12px 25px;
  position: relative;
}

.searchListData__body:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: block;
  border-left: 1px solid #222;
}

.searchListData:before {
  content: "";
  border-top: 1px solid #222;
  position: absolute;
  bottom: 2px;
  left: 200px;
  width: 25px;
  display: block;
}

.searchListData__body:after {
  content: "";
  border: 1px solid #222;
  position: absolute;
  top: 0;
  left: -2px;
  width: 3px;
  height: 3px;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
  display: block;
  background-color: #fff;
}

.searchListData__title:after {
  content: "";
  border-top: 1px solid #222;
  position: absolute;
  top: 2px;
  right: -12px;
  width: 25px;
  display: block;
}
*/
.searchListData__title,
.searchListData__body {
  padding: 8px;
  font-size: 12px;
}

.searchListData__title {
  margin-right: 5px;
  position: absolute;
  z-index: 1;
  width: 90px;
  text-align: center;
}

.searchListData__body {
  margin-left: 100px;
  margin-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  border: 1px solid #ddd;
  position: relative;
  min-height: 1.6em;
  background-color: #fff;
}

.searchListData__body:before {
  margin-left: 116px;
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -217px;
  display: block;
  width: 100px;
  background-color: #ddd;
}

/* もっと見る */
.searchList__more {
  border: 1px solid #222;
  border-style: solid none;
  padding: 30px 0;
  background-color: #fff !important;
  text-align: center;
}

.searchList__more a {
  padding: 0 30px;
  display: inline-block;
  min-width: 300px;
  line-height: 3em;
  color: #fff;
  background-color: #222;
  font-size: 14px;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

/* 検索結果無し */
.no__contents {
  font-size: 22px;
  padding: 120px 0;
  text-align: center;
  background-color: #fff;
}

.no__contents > a {
  text-decoration: none;
  border-bottom: 2px solid black;
}


.no__contents > a:hover {
  color: #2882a1;
  border-bottom: 2px solid #2882a1;
}

.no__contents > a:active {
  color: #dd0000;
  border-bottom: 2px solid #dd0000;
}

/* お問い合わせ・来店予約リンク */
.actionLink {
  margin-top: 17px;
  position: relative;
  width: 100%;
}

.shopDetail,
.contactLink {
  position: relative;
  z-index: 0;
}

.shopDetail:after,
.contactLink:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.shopDetail,
.contactLink__item {
  display: block;
  float: left;
  vertical-align: top;
}

.shopDetail,
.contactLink__item {
  position: relative;
  width: 103px;
}

.shopDetail {
  padding-right: 6px;
}

.shopDetail--column {
  margin: 0 auto;
  float: none;
}

.contactLink__item + .contactLink__item {
  padding-left: 5px;
}
 
.shopDetail button,
.shopDetail a.contact,
.contactLink__item button {
  margin: 0;
  padding: 0;
  border: none;
  position: relative;
  display: inline-block;
  width: 100%;
  height: 40px;
  line-height: 40px;
  color: #fff;
  background-color: #0c6f78;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
  font-size: small;
  outline: none;
  cursor: pointer;
  text-align: center;
}

.shopDetail {
  z-index: 1;
}

.shopDetail button,
.shopDetail a.contact {
  background-color: #91730e;
}

.contactLink__item + .contactLink__item button {
  background-color: #222;
}

.contactLink__item:hover:after {
  bottom: 100%;
}

.contactLink__item + .contactLink__item:after {
  border-color: transparent transparent #222;
}

.contactLink__item:after {
  -webkit-transition: all 0.3s ease;
     -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
       -o-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

/** ------------------------------
 * 
 */
.localSearch {
  padding: 10px 0;
  border-bottom: 1px solid #222;
  background-color: #eee;
}

.localSearch input,
.localSearch button {
  margin: 0;
  padding: 0 10px;
  border: 1px solid #222;
  display: block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  float :left;
  height: 30px;
  line-height: 30px;
  background: #fff;
  outline: none;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
}

.localSearch button {
  padding: 0 18px;
  color: #fff;
  background: #222;
}

.localSearch input {
  width: 50%;
}

/** ------------------------------
 * 該当なし
 */
.na {
  padding: 120px 0;
  text-align: center;
  font-size: 230%;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
  background-color: #fff;
  text-transform: uppercase;
}

/** ------------------------------------------------------------
 * ショップ詳細
 */
.objectHeader {
  margin-bottom: 30px;
  position: relative;
  min-width: 1000px;
  /* min-height: 400px; */
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

.objectHeader__inner {
  padding: 20px 0;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  color: #fff;
  background: url("/images/pc/bg.png") repeat 0 0;
}

.objectHeader__title {
  margin: 0 auto;
  width: 1000px;
  position: relative;
  line-height: 1.2;
  font-size: 28px;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
  text-align: center;
  letter-spacing: 1px;
}

.objectHeader__title:before {
  content: "";
  margin-top: 0.6em;
  margin-right: 8px;
  display: inline-block;
  border-top: 1px solid #fff;
  width: 2.5em;
  vertical-align: top;
}

.objectHeader__title:after {
  content: "";
  margin-top: 0.6em;
  margin-left: 8px;
  display: inline-block;
  border-top: 1px solid #fff;
  width: 2.5em;
  vertical-align: top;
}

.objectHeader__message {
  margin: 15px auto 0;
  width: 1000px;
  font-size: 15px;
}

.objectHeader__message a {
  border-bottom: 1px solid #ddd;
}

.objectHeader__message a:link {
  color: #fff;
}

.objectHeader__message a:visited {
  color: #fff;
}

.streetviewHeader iframe {
  width: 100%;
  margin-bottom: -7px;
}

/* 店舗情報 */
.objectInfo {
  margin-bottom: 70px;
  line-height: 1.8;
  float: left;
}

.objectInfo:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

#google_map {
  border: 1px solid #222;
  width: 540px;
  height: 540px;
  margin-bottom: 30px;
}

.objectInfo__inner {
  padding-top: 0.6em;
  width: 480px;
  letter-spacing: 1px;
  font-size: small;
}

.objectInfo__title {
  margin-top: -0.6em;
  padding: 0 12px;
  position: absolute;
  background-color: #fff;
  line-height: 1.2;
  font-weight: bold;
}

.objectInfo__title:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  border: 1px solid #222;
  border-right: none;
  width: 5px;
}

.objectInfo__title:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: 1px solid #222;
  border-left: none;
  width: 5px;
}

.objectInfo__body {
  margin-bottom: 1.6em;
  padding: 20px 0 20px 2em;
  border-top: 1px solid #222;
  color: #555;
}

.homepageButton {
  margin: 0 auto;
  padding: 0.8em 27px;
  border-bottom: 4px solid #755c07;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
  position: relative;
  max-width: 60%;
  line-height: 1.2;
  display: block;
  color: #fff !important;
  background-color: #91730e;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
  text-align: center;
  font-family: icon;
}

.homepageButton span {
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  display: block;
  width: 1em;
  height: 1.2em;
  text-align: center;
}

.homepageButton:hover {
  opacity: 0.8;
}

#google_map {
  background-color: #ccc;
}

/** ------------------------------
 * 記事ブロック
 */
.objectBlock {
  padding: 20px;
  font-size: 117%;
  letter-spacing: 1px;
  line-height: 1.8;
}

.objectBlock:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.objectBlock + .objectBlock {
  border-top: 1px solid #222;
}

.objectBlock img {
  float: left;
}

/* ボタン */
.objectBlockLink {
  margin: 25px auto 50px;
  display: table;
}

.objectBlockLink .contactLink__item {
  width: 497px;
}

.objectBlock p.body a {
  border-bottom: 1px solid #888;
}

/** ------------------------------------------------------------
 * 近くの店を探す
 */
.nearShop {
  padding-bottom: 30px;
}

.nearShopList:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.nearShopList__item {
  float: left;
  width: 316px;
}

.nearShopList__item {
  margin-left: 26px;
}

.nearShopList__item:nth-of-type(3n+1) {
  margin-left: 0px;
}

.nearShopList a {
  display: block;
}

.nearShopList__item img {
  padding-bottom: 8px;
  width: 100%;
}

.nearShopList__city {
  padding: 0 13px;
  line-height: 1.8;
  min-width: 5em;
  display: inline-block;
  color: #fff;
  font-size: x-small;
  background-color: #0c6f78;
  text-align: center;
}

.nearShopList__name {
  margin-top: 6px;
}

a:hover .nearShopList__name {
  text-decoration: underline;
}

/** ------------------------------------------------------------
 * 関連記事
 */
.relatedArticle {
  padding-bottom: 30px;
}

.relatedArticle:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.relatedArticle__item {
  margin-bottom: 20px;
  float: left;
  width: 325px;
}

.relatedArticle__item:nth-of-type(even) {
  margin-left: 20px;
}

.relatedArticle__item:nth-of-type(odd) {
  clear: both;
}

.relatedArticle a {
  display: block;
}

.relatedArticle__item .cellList__image {
  margin-bottom: 8px;
  width: 100%;
}

.relatedArticle__title {
  font-size: 120%;
}

a:hover .relatedArticle__title {
  text-decoration: underline;
}

/** ------------------------------------------------------------
 * basicForm
 */
.basicForm {
  margin: 0 auto 40px;
  position: relative;
  width: 1000px;
}

.basicForm__title,
.basicForm__body {
  line-height: 32px;
}

.basicForm__title {
  margin-top: 30px;
  margin-left: 25px;
  padding: 0 10px;
  position: absolute;
  line-height: 1.2;
  font-weight: bold;
}

.basicForm__title:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  border: 1px solid #222;
  border-right: none;
  width: 5px;
}

.basicForm__title:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: 1px solid #222;
  border-left: none;
  width: 5px;
}

.basicForm__body {
  padding: 20px 0 20px 225px;
  position: relative;
}

.basicForm__bodyInner {
  margin-bottom: 10px;
}

.basicForm input[type="text"],
.basicForm textarea,
.customSelect {
  margin: 0;
  padding: 0 8px;
  border: 1px solid #222;
  display: block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  width: 600px;
  height: 32px;
  line-height: 32px;
  background: #fff;
  outline: none;
}

.basicForm select {
  width: 80px;
  position: relative;
  z-index: 2;
}

.basicForm select[name="prefecture_id"] {
  width: 200px;
}

.customSelect {
  width: auto;
  position: relative;
  vertical-align: top;
}

.customSelect:before {
  content: "";
  border-left: 1px solid #222;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 1.6em;
  text-align: center;
}

.customSelect:after {
  content: "";
  border-width: 10px 5px;
  border-style: solid;
  border-color: #222 transparent transparent transparent; 
  display: block;
  position: absolute;
  top: 0.8em;
  right: 0.4em;
  width: 0;
  height: 0;
  text-align: center;
}

.basicForm input[name="visit_time"] {
  margin-right: 6px;
  width: 180px;
  display: inline-block;
  vertical-align: top;
}

.basicForm input[name="postal_code"] {
  margin: 0 6px;
  width: 120px;
  display: inline-block;
  vertical-align: top;
}

.basicForm input[name="city"] {
  margin-right: 6px;
  width: 300px;
  display: inline-block;
  vertical-align: top;
}

#autoInput {
  margin: 0;
  padding: 0 20px;
  border: 1px solid #222;
  display: block;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  height: 32px;
  color: #fff;
  background: #222;
  outline: none;
  vertical-align: top;
  cursor: pointer;
}

.basicForm textarea {
  padding-top: 5px;
  padding-bottom: 5px;
  height: 10em;
}

.requiredIcon {
  margin-left: 5px;
  padding: 0 10px;
  color: #6c0202;
  border: 1px solid #6c0202;
  font-size: x-small;
  font-weight: normal;
  line-height: 1.1;
}

.basicForm__title--text {
  margin-top: 22px;
}

.basicForm__body--text {
  padding: 20px 20px 20px 245px;
  border: 1px solid #222;
  font-size: 14px;
  line-height: 1.4;
}

.basicForm__body--text:before {
  content: "";
  position: absolute;
  top: 15px;
  bottom: 15px;
  left: 225px;
  border-left: 1px solid #222;
}

@font-face {
  font-family: check;
  src: url('/fonts/check.eot');
  src: url('/fonts/check.eot?#iefix') format('embedded-opentype'),
       url('/fonts/check.woff') format('woff'),
       url('/fonts/check.ttf')  format('truetype');
}

.basicForm__check {
  margin-top: 15px;
  border-top: 1px dotted #999;
}

.basicForm__check label {
  margin: 15px 5px 0 0;
  padding: 10px 30px 10px 45px;
  display: inline-block;
  position: relative;
  background-color: #fff;
  cursor: pointer;
}

.basicForm__check input[type="radio"] {
  position: relative;
  width: 0;
  z-index: -50;
}

.basicForm__check label:before {
  margin: auto;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 25px;
  bottom: 0;
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  font-size: 12px;
  line-height: 12px;
  color: #fff;
  content: "\e600";
  font-family: check;
  text-align: center;
}

.basicForm__check label.check:before {
  z-index: 2;
  color: #f00;
}

.basicForm__check input[type="radio"]:checked + label:before {
  z-index: 2;
  color: #f00;
}

.basicForm__check input[type="radio"] + label:after {
  margin: auto;
  border: 1px solid #222;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 25px;
  bottom: 0;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
}

.formNotes {
  padding: 40px 0;
  position: relative;
  color: #fff;
  background-color: #6c0202;
  text-align: center;
}

.formNotes:before {
  margin: auto;
  content: "";
  padding: 40px 0;
  border: 10px solid transparent;
  border-bottom-color: #6c0202;
  display: block;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 100%;
  width: 0;
  height: 0;
}

/* */
.formButton {
  margin: 25px 0 0;
  padding-bottom: 25px;
  text-align: center;
}

.formButton * {
  display: inline-block;
}

.formButton button {
  margin: 0;
  padding: 0 40px;
  border: none;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  height: 40px;
  line-height: 40px;
  color: #fff;
  background-color: #222;
  outline: none;
  font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif;
  cursor: pointer;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.formButton button:hover {
  background-color: #6c0202;
}

/**/
.formConfirm {
  margin:0 auto;
  width: 1000px;
  
}
.formConfirm__title,
.formConfirm__body {
  line-height: 32px;
}

.formConfirm__title {
  margin-top: 20px;
  margin-left: 25px;
  padding: 0 10px;
  position: absolute;
  line-height: 1.2;
  font-weight: bold;
}

.formConfirm__body {
  margin-bottom: 25px;
  padding: 10px 25px 10px 225px;
  position: relative;
  min-height: 32px;
}

.formConfirm__body:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  border: 1px solid #222;
  border-right: none;
  width: 5px;
}

.formConfirm__body:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: 1px solid #222;
  border-left: none;
  width: 5px;
}


/** ------------------------------
 * 送信完了
 */
.finishMessage {
  margin-top: -20px;
  border-bottom: 1px solid #222;
  padding: 100px 0;
  background-color: #fff;
  font-size: large;
  text-align: center;
}

/** ------------------------------------------------------------
 * errorPage
 */
.errorPage {
   padding: 80px 0 0;
   text-align: center;
 }

.errorPage__title {
  font-size: 70px;
  font-family: "ＭＳ 明朝", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", serif;
}

.errorPage__message {
  margin-top: 30px;
  margin-bottom: 100px;
  line-height: 2;
  font-size: small;
  letter-spacing: 0.2em;
}

.serverErrorMessage {
  padding: 40px 0;
  border: 1px #222;
  border-style: solid none;
  background-color: #eee;
  line-height: 2;
  font-size: small;
  text-align: left;
}

/** ------------------------------------------------------------
 * 入力エラー
 */
.errorMessage {
  margin: 25px 200px;
  padding: 20px 30px;
  border: 1px solid #6c0202;
  position: relative;
  color: #6c0202;
  background-color: #fff;
  font-size: 108%;
}

.errorMessage:before {
  margin: auto;
  content: "";
  border: 11px solid transparent;
  border-top-color: #6c0202;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  display: block;
  width: 0;
  height: 0;
}

.errorMessage:after {
  margin: auto;
  content: "";
  border: 10px solid transparent;
  border-top-color: #fff;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  display: block;
  width: 0;
  height: 0;
}

.errorMessage__inner {
  margin: 0 auto;
  display: table;
}

.errorMessage__list {
  margin-bottom: 5px;
  list-style-type: square;
}

/** ------------------------------------------------------------
 * privacyPolicy
 */
.privacyPolicy {
  margin: 20px 0;
  padding: 10px;
  height: 260px;
  border: 1px solid #222;
  overflow: auto;
  font-size: 117%;
  line-height: 1.8;
}

.privacyBox .privacyPolicy {
  padding: 25px;
  font-size: small;
}

.numberList {
  margin: 1em 0 1em 2em;
  list-style-type: decimal;
}

.numberList a {
  color: #299ac1;
}

.numberList > li + li {
  margin-top: 1em;
}

.numberList--LRSpace > li {
  margin-left: 3em;
  margin-right: 3em;
}

.numberList > li span {
  display: block;
  font-weight: bold;
}

.numberList > li > ul {
  list-style-type: square;
}

.numberList > li > ul > li {
  margin-top: 0.5em;
  margin-left: 1.2em;
}

/*
.helpDesk {
  margin: 1em 0 30px auto;
  display: table;
}

.helpDesk__inner {
  padding: 15px 30px;
  display: table-cell;
  background-color: #eee;
}
 */

.bracketList li {
  padding-left: 2.2em;
  position: relative;
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
}

.bracketList li + li {
  margin-top: 0.3em;
}

.bracketList li:before {
  position: absolute;
  left: 0;
  display: marker;
  content: "(" counter(cnt) ") ";
}

.compactList::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.compactList dt {
  float: left;
  font-weight: bold;
}

.compactList dt::after {
  content: ":";
}

.compactList dd {
  overflow: hidden;
}

.signature {
  margin: 20px 0;
  text-align: right;
}

.sign {
  margin: 30px 0 60px;
  text-align: right;
}

.sign dl{
  display: inline-block;
}

.sign > * {
  text-align: left;
}

.sign dt {
  font-size: 120%;
  font-weight: bold;
}

/** ------------------------------------------------------------
 * 標準table
 */
.basicTitle + .basicTable {
  margin-top: -20px;
}

.basicTable {
  margin: 0 auto;
  width: 100%;
  font-size: 117%;
  line-height: 1.8;
}

.basicTable tr > * {
  padding: 15px;
  border-bottom: 1px solid #222;
}

.basicTable tr th:first-child {
  width:250px;
  background-color: #ddd;
  font-weight: bold;
}

.basicTable a {
  color: #299ac1;
}

.basicList {
  list-style-type: square;
}

.basicList > li {
  margin-top: 0.3em;
  margin-left: 1.2em;
}

/**/
.areaSelectTitle {
  margin-top: 30px;
  margin-bottom: 20px;
  padding: 10px 3em 10px 10px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #222;
  position: relative;
  font-size: 125%;
  letter-spacing: 2px;
  text-transform: capitalize;
  line-height: 1.8;
  font-weight: bold;
  cursor: pointer;
}

.areaSelectTitle:after {
  content: "▼";
  padding: 10px 1em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  color: #fff;
  background-color: #222;
}


/** ------------------------------------------------------------
 * sidebar
 */
#sidebar {
  margin-left: -1px;
  border-left: solid 1px #ddd;
  padding-left: 15px;
  float: right;
  width: 300px;
}

/** ------------------------------
 * バナー
 */
.sideBanner {
  margin: 30px 0;
}

/** ------------------------------
 * タイトル
 */
.sidebarTitle {
  margin-top: 30px;
  margin-bottom: 10px;
  border-bottom: 1px solid #222;
  position: relative;
  line-height: 1.0;
}

.sidebarTitle img {
  margin-bottom: -1px;
  padding-bottom: 1px;
  border-bottom: 3px solid #222;
}

.sidebarTitle__text {
  margin-bottom: -1px;
  padding-bottom: 3px;
  display: inline-block;
  font-size: 14px;
  line-height: 16px;
  border-bottom: 3px solid #222;
  letter-spacing: 1px;
}

.sidebarTitle--red .sidebarTitle__text {
  border-bottom-color: #6c0202;
}

.sidebarTitle--gold .sidebarTitle__text {
  border-bottom-color: #91730e;
}

.sidebarTitle--blue .sidebarTitle__text {
  border-bottom-color: #0c6f78;
}

.sidebarTitle--green .sidebarTitle__text {
  border-bottom-color: #51780c;
}

.sidebarTitle__appeal {
  margin-right: 1px;
  font-size: 20px;
}

/** ------------------------------
 * ランキング
 */
.sideRanking__item {
  margin-bottom: 20px;
  counter-increment: sideRankCount;
}

.sideRanking__item a {
  display: block;
}

.sideRanking__item a:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.sideRanking__sub {
  margin-bottom: 8px;
  position: relative;
}

.sideRanking__image {
  width: 100%;
}

.sideRanking__main {
  margin-left: 3em;
  padding-left: 1em;
  border: 1px solid #222;
  border-style: none none none solid;
  position: relative;
}

a:hover .sideRanking__main {
  text-decoration: underline;
}

.sideRanking__main:before {
  content: counter(sideRankCount);
  margin: auto;
  position: absolute;
  top: -0.2em;
  bottom: 0;
  left: -1.5em;
  display: block;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5;
  vertical-align: middle;
  font-family: Georgia, serif;
  font-size: 200%;
  font-weight: bold;
  text-align: center;
}

/* IE8用・6番目以降 */
.sideRanking__item:first-child + * + * + * + * + * .sideRanking__sub,
.sideRanking__item:first-child + * + * + * + * + * + * .sideRanking__sub,
.sideRanking__item:first-child + * + * + * + * + * + * + * .sideRanking__sub,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * .sideRanking__sub,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * + * .sideRanking__sub {
  float: left\9;
  width: 150px\9;
}

.sideRanking__item:nth-of-type(n+6) .sideRanking__sub {
  float: left;
  width: 150px;
}

/* IE8用・6番目以降 */
.sideRanking__item:first-child + * + * + * + * + * .sideRanking__main,
.sideRanking__item:first-child + * + * + * + * + * + * .sideRanking__main,
.sideRanking__item:first-child + * + * + * + * + * + * + * .sideRanking__main,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * .sideRanking__main,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * + * .sideRanking__main {
  margin-top: 0.5em\9;
  margin-left: 0\9;
  padding-top: 1em\9;
  padding-left: 0\9;
  border-style: solid none none none\9;
  float: right\9;
  width: 140px\9;
}

.sideRanking__item:nth-of-type(n+6) .sideRanking__main {
  margin-top: 0.5em;
  margin-left: 0;
  padding-top: 1em;
  padding-left: 0;
  border-style: solid none none none;
  float: right;
  width: 140px;
}

/* IE8用・6番目以降 */
.sideRanking__item:first-child + * + * + * + * + * .sideRanking__main:before,
.sideRanking__item:first-child + * + * + * + * + * + * .sideRanking__main:before,
.sideRanking__item:first-child + * + * + * + * + * + * + * .sideRanking__main:before,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * .sideRanking__main:before,
.sideRanking__item:first-child + * + * + * + * + * + * + * + * + * .sideRanking__main:before {
  top: -0.55em\9;
  left: 0\9;
  bottom: auto\9;
  height: 1em\9;
  line-height: 1\9;
  background-color: #fff\9;
  font-size: large\9;
  text-align: left\9;
}

.sideRanking__item:nth-of-type(n+6) .sideRanking__main:before {
  top: -0.55em;
  left: 0;
  bottom: auto;
  height: 1em;
  line-height: 1;
  background-color: #fff;
  font-size: large;
  text-align: left;
}

/** ------------------------------
 * 地域ごとのオススメ
 */
.sideObject__item {
  margin-bottom: 20px;
}

.sideObject__main {
  position: relative;
}

.sideObject__main a {
  display: block;
}

.sideObject__title {
  padding: 7px 12px;
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
}

.sideObject__title:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: url("/images/pc/bg.png") repeat 0 0;
}

.sideObject__title:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(255,255,255,0.4);
}

a:hover .sideObject__title:before {
  right: 0;
  background-color: #000;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.sideObject__image {
  width: 100%;
}

a:hover .sideObject__image {
  opacity: 1;
  -ms-filter: "alpha(opacity=100)";
}

.sideObject__sub {
  margin-top: 8px;
  text-align: center;
}

/** ------------------------------
 * Twitter
 */
.sideTwitter {
  border: 1px solid #e9ebee;
}

/** ------------------------------
 * facebook
 */
.sideFacebook {
  border-style: solid none;
  text-align: center;
}

.sideFacebook .fb_iframe_widget {
  vertical-align: top;
}

.sideFacebook.top {
  margin-top: 60px;
}

/** ------------------------------------------------------------
 * pager
 */
.bottomPager {
  margin-bottom: 30px;
}

.pager {
  background-color: #fff;
  font-size: 0;
  text-align: center;
}

.pager__wrap {
  border: 1px #222;
  border-style: solid none;
  width: auto;
  max-width: 1000px;
}

.pager__wrap:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.pager__wrap > * {
  font-size: 12px;
  display: inline-block;
  line-height: 28px;
  vertical-align: top;
}

.pager__wrap > *:first-child + * * {
  border-left: 1px solid #222;
}

.pager__wrap > * > * {
  padding: 0 12px;
  border-right: 1px solid #222;
  display: inline-block;
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

.pager a:hover {
  color: #fff;
  background-color: #222;
}

.pager__first,
.pager__last {
  font-size: 10px;
  font-family: pagerIcon;
}

.pager__first {
  float: left;
}

.pager__first a {
  border-right: 1px solid #222;
}

.pager__last {
  float: right;
}

.pager__last a {
  border-left: 1px solid #222;
  border-right: none;
}

.pager__first a,
.pager__last a {
  padding: 0 24px;
  color: #fff;
  background-color: #222;
}

.pager__first a {
  float: left;
}

.pager__last a {
  float: right;
}


.pager__first a:hover,
.pager__last a:hover {
  color: #222;
  background-color: #ddd;
}

.pager__current {
  background-color: #eee;
}

/* タブ付き */
.searchTab {
  border-bottom: 1px solid #222;
  line-height: 30px;
}

.searchTab__wrap {
  margin-bottom: -1px;
}

.searchTab__inner > li {
  float: left;
}

.searchTab__inner > li + li {
  margin-left: 5px;
}

.searchTab__inner > li a {
  padding: 0 30px;
  border: 1px solid #222;
  position: relative;
  z-index: 1;
  display: block;
  color: #fff;
  font-size: 13px;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.searchTab__inner > li a:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #222;
}

.searchTab__inner > li a:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(255,255,255,0.7);
}

.searchTab__inner > li a:hover:after {
  right: 0;
  background-color: #222;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.searchTab__inner > li.searchTab__current a {
  color: #222;
  border-bottom-color: #fff;
}

.searchTab__inner > li.searchTab__current a:before,
.searchTab__inner > li.searchTab__current a:after {
  background-color: #fff;
}

/* pager */
.tabPager {
  float: right;
  font-size: x-small;
}

.tabPager__item {
  position: relative;
  float: left;
}

.tabPager__item + .tabPager__item + .tabPager__item:before {
  position: absolute;
  top: 0.5em;
  bottom: 0.5em;
  content: "";
  border-left: 1px solid #222;
}

.tabPager__item--last:before {
  content: none !important;
}

.tabPager__item--first a,
.tabPager__item--last a {

  border: 1px solid #222;
  border-bottom: none;
  background-color: #fff;
  font-family: pagerIcon;
  font-size: x-small;
}

.tabPager__item--first a,
.tabPager__item--last a {
  font-family: pagerIcon;
  font-size: x-small;
}

.tabPager__item > * {
  padding: 0 13px;
  display: inline-block;
}

.tabPager__item span {
  color: #0c6f78;
}


/** ------------------------------------------------------------
 * whats
 */
#whats {
  padding: 10px 0 22px;
  line-height: 2.4;
  color: #fff;
  background-color: #034156;
  font-size: 68.75%;
  letter-spacing: 0.2em;
}

#whats > * {
  margin-right: auto;
  margin-left: auto;
  width: 1000px;
}

.whats__title {
  margin-bottom: 12px;
  text-align: center;
}

#whats p {
  text-align: center;
}

/** ------------------------------------------------------------
 * footer
 */
#footer {
  padding: 20px 0;
  min-width: 1000px;
  color: #ccc;
  background-color: #222;
  font-size: 68.75%;
  letter-spacing: 0.2em;
}

#footer a {
  -webkit-transition: all 0.7s ease;
     -moz-transition: all 0.7s ease;
      -ms-transition: all 0.7s ease;
       -o-transition: all 0.7s ease;
          transition: all 0.7s ease;
}

#footer a:hover {
  opacity: 0.7;
  -ms-filter: alpha(opacity=70);
}

#footer a:link,
#footer a:visited {
  color: #ccc;
}

#footer [class$="__title"] {
  padding: 0 10px;
  background-color: #393939;
}

#footer [class$="__body"] {
  padding: 10px 10px 0;
  line-height: 2.2;
}

/** ------------------------------
 * 検索
 */
.footerSearch {
  float: left;
  width: 670px;
}

.footerSearch__item {
  display: inline-block;
}

.footerSearch__item:after {
  content: "/";
}

.footerSearch__item:last-of-type:after {
  content: none;
}

/** ------------------------------
 * インフォメーション
 */
.footerInfo {
  float: right;
  width: 300px;
}

.footerInfo__item a:before {
  margin-right: 1px;
  content: "◆";
  font-size: 8px;
}

/** ------------------------------
 * 著作権
 */
.copyright {
  clear: both;
  padding: 0 10px;

  margin-left: -110px;
  font-size: 10px;
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
  letter-spacing: 0.5px;
  color: #999;
}

.objectBlock img {
  max-width: 50%;
}

/* 動画
#mainImage {
  position: relative;
}

#mainImage:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

#mainImage video {
 width: 100%;
 vertical-align: bottom;
}

#mainImage .text {
  position: absolute;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 46px;
  color: white;
  margin-top: -32px;
}
*/

/** ------------------------------
 * TOP用コラム
 */
.topColumn:first-of-type::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.topColumn__item {
  float: left;
  width: 210px;
}

.topColumn__item a {
  display: block;
}

.topColumn__item:nth-of-type(1) {
  width: 460px;
}

.topColumn__item:nth-of-type(1) a {
  margin-right: 20px;
}

.topColumn img {
  margin-bottom: 10px;
  width: 100%;
}

.topColumn__title {
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
}

.topColumn__date {
  font-size: 100%;
}

.topColumn__item:nth-child(n+2) .topColumn__title {
  font-size: 14px;
}

.topColumn__message {
  line-height: 1.6;
  min-height: 4.8em;
}

.topColumn__item:nth-child(n+2) .topColumn__message {
  display: none;
}

.topColumn__item:nth-child(n+4) {
  padding-top: 26px;
}

.topColumn__item:nth-of-type(4) {
  clear: both;
}

.topColumn__item:nth-of-type(4),
.topColumn__item:nth-of-type(5) {
  margin-right: 20px;
}

/* タイトルアイコン */
.rankTitle,
.tabTitle,
.sideTwitterTitle,
.sideFacebookTitle,
.sideInstagramTitle {
  margin: 28px 0 4px 1px;
  font-weight: bold;
  line-height: 1.2;
}

.rankTitle::before {
  margin-right: 10px;
  content: "\e900";
  color: #b6a701;
  font-family: snsIcon;
  font-size: 250%;
  vertical-align: middle;
}

.tagTitle .text {
  font-size: 14px; vertical-align: middle;
}

.tagTitle::before {
  margin-right: 5px;
  content: "\e904";
  color: #c80f5d;
  font-family: snsIcon;
  font-size: 250%;
  vertical-align: middle;
}

.sideTwitterTitle::before {
  margin-right: 10px;
  content: "\e903";
  color: #55acee;
  font-family: snsIcon;
  font-size: 250%;
  vertical-align: middle;
}

.sideFacebookTitle::before {
  margin-right: 10px;
  content: "\e902";
  color: #315096;
  font-family: snsIcon;
  font-size: 250%;
  vertical-align: middle;
}

.sideInstagramTitle::before {
  margin-right: 10px;
  content: "\e901";
  color: #3f729b;
  font-family: snsIcon;
  font-size: 250%;
  vertical-align: middle;
}

.sideInstagram {
  height: 340px;
  overflow: auto;
}

.sideTwitter ul,
.sideFacebook ul,
.sideInstagram ul {
  margin: 10px;
}

.sideTwitter ul li,
.sideFacebook ul li,
.sideInstagram ul li {
  margin-bottom: 10px;
}

.sideTwitter ul li img,
.sideFacebook ul li img,
.sideInstagram ul li img {
  max-width: 100%;
}

.sideTwitter li .text,
.sideFacebook li .text,
.sideInstagram li .text {
  border: 1px solid rgba(15, 70, 100, 0.117647);;
  margin-bottom: 4px;
  padding: 10px;
  font-size: 12px;
}

/** ------------------------------
 * ランキング
 */
.rankTab {
  margin-bottom: -1px;
  position: relative;
  z-index: 10;
  display: table;
  table-layout: fixed;
  width: 100%;
  text-transform: uppercase;
}

.rankTab__item {
  display: table-cell;
}

.rankTab__item + .rankTab__item a {
  border-left: none;
}

.rankTab__item > * {
  border: 1px solid #e9ebee;
  padding: 2px 0;
  display: block;
  background-color: #f6f6f6;
  text-align: center;
  font-weight: bold;
}

.tabActive > * {
  border-bottom-color: #fff;
  background-color: #fff;
}

.rankTab__item--column.tabActive > * {
  color: #6c0202;
}

.rankTab__item--snap.tabActive > * {
  color: #0c6f78;
}

.rankTab__item--shop.tabActive > * {
  color: #91730e;
}

/**/
[id^="rankTabBody"] {
  display: none;
}

.rankTabBodyWrap {
  padding: 10px;
  border: 1px solid #e9ebee
}

.rankList__item + .rankList__item {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e9ebee;
}

.rankList__item::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.rankList--snap .rankList__item {
  float: left;
  width: 33.33%;
}

.rankList__item img {
  width: 80px;
  float: left;
}

.rankList__main {
  width: 190px;
  float: right;
  line-height: 1.4;
}

.rankNo {
  margin-top: 3px;
  margin-bottom: 5px;
  padding: 1px 5px;
  display: block;
  width: 6em;
  color: #fff;
  background-color: #aaa;
  text-align: center;
  font-size: 10px;
}

.rankList--column .rankNo {
  background-color: #6c0202;
}

.rankSnap--snap .rankNo {
  width: auto !important;
  background-color: #0c6f78;
}

.rankList--shop .rankNo {
  background-color: #91730e;
}

.rankSnap {
  margin: 0 -2px;
  text-align: center;
}

.rankSnap::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.rankSnap__item {
  padding: 0 2px;
  float: left;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  width: 33.33%;
}

.rankSnap__item:nth-of-type(3n+1) {
  clear: both;
}

.rankSnap__item img {
  width: 100%;
}

/** ------------------------------
 * tag
 */
.tag {
  padding: 10px 5px 5px 10px;
  border: 1px solid #e9ebee;
  background-color: #f6f6f6;
}

.tag li,
.tag li a {
  display: inline-block;
}

.tag li {
  margin: 0 5px 5px 0;
}

.tag li a {
  padding: 2px 10px;
  border: 1px solid #e9ebee;
  -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
          border-radius: 3px;
  background-color: #fff;
}

.tag div {
  margin: 2px 5px 5px 5px;
}

/* ページTOPに戻る */
.goToTop {
  margin-top: 15px;
  text-align: right;
}

.goToTop a {
  padding: 2px 20px;
  display: inline-block;
  color: #fff;
  background-color: #222;
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.goToTop a:after {
  content: "▲";
}

.goToTop a:hover {
  background-color: #666;
}

.contentsList {
  margin: 10px 0 40px;;
  padding: 10px;
  border-top: 2px solid #a22229;
  border-bottom: 2px solid #a22229;
}

.contentsList__level2 {
  margin-top: 10px;
}

.contentsList__level2:first-child {
  margin-top: 0;
}

.contentsList__level3 {
  margin-left: 10px;
}

.contentsList__level3:before {
  content: '・';
  display: block;
  color: #e8387e;
  float: left;
}

.contentsList__level3 a {
  display: block;
  margin-left: 16px;
}


/** ------------------------------
 * 用語集
 */
.termTitle {
  margin: 20px 0;
  padding: 0.5em;
  line-height: 1.3;
  font-size: 18px;
  font-weight: bold;
  background-color: #f6f6f6;
}

.cameraIcon,
.playIcon {
  color: #ddd;
  font-family: term;
}

.cameraIcon--on,
.playIcon--on {
  color: #222;
}

.termList {
  margin-bottom: 30px;
  font-size: 14px;
}

.termList::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.termList__item {
  margin-bottom: 5px;
  padding-left: 1.4em;
  position: relative;
  float: left;
  width: 33.33%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.termList__item:nth-of-type(3n+1) {
  clear: both;
}

.termList__item a::before {
  position: absolute;
  top: 0.2em;
  left: 0;
  font-family: term;
  content: "\e935";
  color: #999;
}

.termBody {
  margin-bottom: 50px;
  font-size: 16px;
  line-height: 2;
}

.backLink {
  margin-top: 40px;
  text-align: center;
  font-size: 16px;
}

.backLink a {
  padding: 10px 80px;
  position: relative;
  display: inline-block;
  color: #fff;
  background-color: #000;
  text-decoration: none;
}

.backLink a:after {
  margin: auto;
  content: "";
  border-style: solid;
  border-width: 3px 0 3px 7px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  display: block;
  width: 0;
  height: 0;
}

.blockarea .objectBlock:first-of-type {
  padding-top: 0;
}

.blockarea .image {
  display: inline-block;
  width: 45%;
}

.blockarea img {
  float: none;
  width: 100%;
  max-width: 100%;
}

.blockarea .body {
  display: inline-block;
  width: 48%;
  vertical-align: top;
  margin-left: 20px;
}

/** ------------------------------------------------------------
 * タグ一覧
 */
.tagList {
  margin: 10px auto 30px;
  font-size: 14px;
}

.tagList::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.tagList__item {
  margin-top: 10px;
  margin-bottom: 20px;
  padding-left: 1.4em;
  position: relative;
  float: left;
  width: 25%;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.tagList__item:nth-of-type(4n+1) {
  clear: both;
}

.tagList__item a::before {
  position: absolute;
  top: 0.2em;
  left: 0;
  font-family: term;
  content: "\e935";
  color: #999;
}

/** ------------------------------------------------------------
 * snapTab
 */
.titleLink {
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  height: 2em;
  line-height: 2;
  font-size: 11px;
  letter-spacing: 1px;
}

.titleLink::after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.titleLink__item {
  margin-left: 5px;
  float: left;
}

.titleLink__item > * {
  padding: 0 1em;
  -webkit-border-radius: 2px;
     -moz-border-radius: 2px;
          border-radius: 2px;
  position: relative;
  display: block;
  color: #000 !important;
  background-color: #fff;
}

.titleLink__item.active > * {
  color: #fff !important;
  background-color: #0c6f78;
}

.titleLink__item.active > *::after {
  content: "";
  margin: auto;
  border-style: solid;
  border-width: 6px 5px 0 5px;
  border-color: #0c6f78 transparent transparent transparent;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  display: block;
  width: 0;
  height: 0;
}

.titleLink__item > a {
  -webkit-transition: all 0.5s ease;
     -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
       -o-transition: all 0.5s ease;
          transition: all 0.5s ease;
}

.titleLink__item > a:hover {
  opacity: 0.8;
}

/** ------------------------------------------------------------
 * 用語特集
 */
.glossaryHeader {
  margin: 30px 0;
  position: relative;
  font-size: 17px;
}

.glossaryHeader__main {
  padding: 0 30px 26px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  width: 100%;
  color: #fff;
  text-shadow: 0 1px 2px #000;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.glossaryHeader__title {
  font-weight: bold;
  font-size: 140%;
}

.glossaryHeader__outline {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.8;
  font-weight: normal;
}

.glossaryHeader__sub {
  background-color: #222;
}

.glossaryHeader__sub img {
  opacity: 0.3;
  width: 100%;
  height: 370px;
}

.glossaryBody p,
.glossaryBody p span {
    font-size: 15px !important;
    font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", sans-serif !important;
}

.glossaryBody img {
    max-width: 100%;
}

.bootstrap.glossaryBody {
  margin: 36px 0;
  font-size: 15px;
}

.bootstrap.glossaryBody h2 {
  margin: 10px 0 15px;
  padding-bottom: 3px;
  border-bottom: 1px solid #ccc;
  position: relative;
  line-height: 26px;
  font-size: 22px;
  font-weight: bold;
}

.bootstrap.glossaryBody h3 {
  margin: 5px 0 15px;
  padding-left: 0.7em;
  position: relative;
  line-height: 1.3;
  font-size: 18px;
  font-weight: bold;
}

.bootstrap.glossaryBody h3:before {
  position: absolute;
  top: 0.2em;
  left: 0;
  display: block;
  content: "";
  width: 3px;
  height: 0.85em;
  background-color: #6c0202;
}

.bootstrap.glossaryBody p {
  margin: 0;
  line-height: 1.9;
}

/**/
.relatedSnap {
  margin: -10px 0 0;
}

.relatedSnap:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0;
  line-height: 0;
  font-size: 0;
  clear: both;
}

.relatedSnap__item {
  float: left;
  width: 33.33%;
}

.relatedSnap__item:nth-of-type(3n+1) {
  clear: both;
}

a.sns {
  text-decoration: underline;
}

.facebookLikeWrapper {
  position: relative;
  padding-top: 20px;
  text-align: center;
}

.fb-like span {
  transform:scale(1.3);
  -webkit-transform:scale(1.3);
  -moz-transform:scale(1.3);
}

.author p:first-child {
    font-weight: bold;
}
