@charset 'Shift_JIS';
.clearfix:after {
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
  content: '.';
}
/* --------------------------------------- */
/* 女の子から探す-フェチGALLERY */
/* --------------------------------------- */
.photo_gallery .gallery_main {
  margin-bottom: 0;
  padding: 0 0 0 1px;
  background-color: #000;
  box-sizing: border-box;
  box-shadow: none;
}
.box_list-base {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
.box_list-parts a {
  display: block;
}
/* 三分割枠 */
.box_list-base .box_list-parts {
  float: left;
  width: 30%;
  width: calc(34% - 11px);
  margin-bottom: 16px;
  margin-left: 10px;
  box-sizing: border-box;
}

@media screen and (max-width: 320px) {
  .box_list-base .box_list-parts {
    width: calc(34% - 5px);
  }
  .box_list-base .box_list-parts {
    margin-left: 4px;
  }
}

@media (min-width: 375px) and (max-width: 414px) {
  .box_list-base .box_list-parts {
    margin-left: 12px;
  }
}

@media screen and (min-width: 415px) {
  .box_list-base .box_list-parts {
    margin-left: 11px;
  }
}

@media screen and (min-width: 570px) {
  .box_list-base .box_list-parts {
    margin-left: 10px;
  }
}

@media screen and (min-width: 700px) {
  .box_list-base {
    width: 650px;
  }
}
.box_list-base .box_list-parts:nth-child(3n-2) {
  margin-left: 0;
}
/* 店舗情報 */
.box_list-base .shop_data {
  width: 100%;
  font-size: 12px;
  color: #444;
  text-align: left;
  margin-top: 4px;
}
.box_list-base .shop_data [class^='txt_'] {
  padding-left: 16px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.box_list-base .txt_item {
  font-weight: bold;
  margin-top: 1px;
}
/* 画像用正方形枠 */
.box_list-base .thumb_frame {
  position: relative;
  width: 100%;
  height: auto;
  border: 1px solid #ccc;
  overflow: hidden;
  box-sizing: border-box;
}
.box_list-base .thumb_frame:before {
  display: block;
  padding-top: 100%;
  content: '';
}
.box_list-base .thumb_frame-inner {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
.box_list-base .thumb_h-center {
  display: table;
  width: 100%;
  height: 100%;
  text-align: center;
}
.box_list-base .thumb_v-center {
  display: table-cell;
  vertical-align: middle;
}
.box_list-base .thumb_photo {
  width: 100%;
  width: calc(100% + 1px);
  height: auto;
}
/* 横長画像 */
.thumb_h-center.landscape {
  position: relative;
}
.thumb_h-center.landscape,
.thumb_h-center.landscape .thumb_v-center {
  display: block;
}
.thumb_h-center.landscape .thumb_v-center .thumb_photo {
  position: absolute;
  width: auto;
  height: 100%;
}
.photo_gallery .box_list-base .box_list-parts {
  width: 33%;
  width: calc(33.3% - 1px);
  margin: 0;
  padding-bottom: 10px;
  background-color: #111;
  border-right: 1px solid #444;
  box-sizing: content-box;
}
.photo_gallery .box_list-base .box_list-parts:nth-child(3n) {
  border-right: 0 none;
}
.photo_gallery .box_list-base .thumb_frame {
  border: 0 none;
}
/* 写真センタリング */
.photo_gallery .box_list-base .thumb_photo {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
/* 名前と店名 */
.photo_gallery .box_list-base .shop_data [class^='txt_'] {
  text-align: center;
  padding-left: 0;
}
.photo_gallery .gallery_main .txt_shop {
  color: #fff;
}
.photo_gallery .gallery_main .box_list-parts:nth-child(odd) {
  background-color: #222;
}
/* 続きを表示ボタン */
.photo_gallery .btn_more {
  font-size: 1em;
  text-align: center;
  padding: 10px;
  background-color: #444;
  letter-spacing: 2px;
}
/* --------------------------------------- */
/* フェチ写真拡大表示 */
.sub_c-blog {
  background-color: #222;
}
.sub_c-blog .box_photo-nav {
  height: 52px;
  padding: 0 2px;
  background-color: transparent;
  box-sizing: border-box;
}
.box_photo-nav .fl_inner {
  padding: 0 2px;
}
.box_photo-nav .fl_inner:first-child {
  width: 76%;
  width: calc(100% - 68px);
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
}
.box_photo-nav [class*='link_'] {
  display: block;
  height: 48px;
  color: #fff;
  background-color: rgba(0,0,0,0.8);
  border-radius: 6px;
  box-sizing: border-box;
}
/* 女の子プロフへのリンク */
.box_photo-nav .link_item {
  position: relative;
  text-align: center;
  padding: 6px 20px 0 10px;
}
.box_photo-nav .txt_item {
  font-size: 14px;
  font-weight: bold;
  color: #ff5790;
  padding-bottom: 2px;
}
.box_photo-nav .txt_item,
.box_photo-nav .txt_shop {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.box_photo-nav .txt_shop {
  font-size: 12px;
}
.yoasobicon_arrow-right {
  position: absolute;
  top: 0;
  right: 4%;
  bottom: 0;
  height: 20px;
  font-size: 18px;
  margin: auto;
}
/* カテゴリー名の表示 */
.box_photo-nav + .category_name {
  position: fixed;
  top: 6px;
  left: 6px;
  font-size: 12px;
  color: #dfdfdf;
  padding: 4px 8px;
  background-color: rgba(0,0,0,0.8);
  border-radius: 6px;
}
/* --------------------------------------- */
/* 絞り込み：フェチGALLERYカテゴリ */
/* --------------------------------------- */
/* カテゴリ選択ボタン */
.photo_gallery .search-btn {
  margin-bottom: 4px;
  padding: 4px;
  background-color: #000;
  box-sizing: border-box;
}
.photo_gallery .btn_dropdown {
  position: relative;
  display: block;
  height: 48px;
  font-size: 18px;
  font-weight: bold;
  line-height: 48px;
  color: #ff5126;
  text-align: left;
  padding-right: 36px;
  padding-left: 10px;
  background-color: #ffd;
  border-radius: 4px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-shadow: 0 1px 0 #fff;
}
.photo_gallery .btn_dropdown {
  z-index: 1001;
}
.photo_gallery .btn_dropdown [class^='yoasobicon_'] {
  position: absolute;
  top: 14px;
  right: 10px;
  display: block;
  font-size: 20px;
}
.photo_gallery .btn_dropdown {
  box-shadow: 0 3px 0 #5c484d, 0 1px 0 rgba(255,255,255,0.9) inset;
}
/* 見出し用 */
.photo_gallery .btn_dropdown .category_name {
  padding-left: 42px;
}
/* --------------------------------------- */
/* カテゴリ選択メニュー表示 */
.category_menu {
  position: absolute;
  top: 0;
  z-index: 2;
  display: none;
  width: 100%;
  padding: 4px;
  background-color: #000;
  box-sizing: border-box;
}
/* カテゴリ選択ボタン枠 */
.photo_gallery .search-btn.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  margin-bottom: 0;
}
/* カテゴリ選択ボタン枠 */
.category_menu .btn_dropdown {
  margin-bottom: 0;
  box-shadow: none;
}
.category_menu .btn_dropdown [class^='yoasobicon_'] {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
/* カテゴリメニュー枠 */
.category_menu .theme-select {
  margin-top: 56px;
  border: 1px solid #ffa500;
  border-radius: 2px;
}
/* カテゴリメニュー中身 */
.category_menu .theme-select .elm {
  line-height: 50px;
  background-color: #fff;
  border-bottom: 1px solid #ffd1e2;
  box-sizing: border-box;
}
.category_menu .theme-select .elm:last-child {
  border-bottom: 0 none;
}
.category_menu .theme-select .arrow_gp {
  position: relative;
  font-size: 1.2em;
  font-weight: bold;
  color: #563238;
  text-align: left;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 50px;
  background-image: url(../st_img/cur_orange.png);
}
.category_menu .theme-select .category_name {
  color: #ff5126;
}
.photo_gallery .category_icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  z-index: 0;
  width: 36px;
  height: 36px;
  margin: auto;
  background-color: #ffa426;
  border: 1px solid #ffa426;
  border-radius: 36px;
}
/* --------------------------------------- */
/* 白背景用フェチGALLERY */
/* --------------------------------------- */
.pg_white.photo_gallery .search-btn {
  padding-bottom: 6px;
  background-color: #fff;
}
.pg_white.photo_gallery .gallery_main {
  background-color: #fff;
}
.pg_white.photo_gallery .box_list-base .box_list-parts {
  width: 33%;
  width: calc(33.3% - 1px);
  margin: 0;
  padding-bottom: 10px;
  background-color: #fff;
  border-right: 1px solid #fff;
  box-sizing: content-box;
}
.pg_white.photo_gallery .box_list-parts:nth-child(odd) {
  background-color: #eee;
}
.pg_white.photo_gallery .box_list-base .box_list-parts:nth-child(3n) {
  border-right: 0 none;
}
.pg_white.photo_gallery .box_list-base .thumb_frame {
  border: 0 none;
}
/* センタリング */
.pg_white.photo_gallery .box_list-base .thumb_photo {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
/* 名前と店名 */
.pg_white .box_list-base .shop_data [class^='txt_'] {
  text-align: center;
  padding-left: 0;
}
.pg_white.photo_gallery .gallery_main .txt_item {
  color: #ff5790;
}
.pg_white.photo_gallery .gallery_main .txt_shop {
  color: #4f3335;
}
/* 続きを表示ボタン */
.pg_white.photo_gallery .btn_more {
  color: #fff;
  background-color: #f98289;
}
.pg_white.photo_gallery .btn_dropdown {
  border: 1px solid #dada6a;
}
/* カテゴリメニュー */
.szok .category_menu .theme-select {
  margin-top: 54px;
  border-color: #87cefa;
}
.szok .category_menu .theme-select .category_name {
  color: #076cab;
}
.szok .photo_gallery .category_icon {
  background-color: #b5e0fb;
  border-color: #53b8f7;
}
.szok .category_menu .theme-select .arrow_gp {
  background-image: url(../st_img/cur_blue_next.png);
}
.szok .category_menu .theme-select .elm {
  border-bottom-color: #53b8f7;
}
/* 背景色 */
.pg_white.category_menu {
  background-color: #fff;
}
.pg_white .hl_list {
  height: 38px;
  font-size: 18px;
  font-weight: bold;
  line-height: 38px;
  color: #fff;
  margin: 0;
  padding: 0 10px;
  background-color: #ff4141;
  border: none;
  vertical-align: top;
}
.pg_white .category_menu {
  background: #fff;
}
/* 文字サイズ小 */
.photo_gallery .category_name .small {
  font-size: 0.8em;
  margin-left: 1px;
}

@media screen and (max-width: 320px) {
  .photo_gallery .category_name .small {
    font-size: 0.76em;
  }
}
/* --------------------------------------- */
/* 追加カテゴリNEWマーク */
/* --------------------------------------- */
.new .category_name::after {
  font-size: 12px;
  color: #fff;
  margin-left: 4px;
  padding: 1px 6px;
  background-color: #f22c5a;
  content: 'new';
  vertical-align: top;
  text-shadow: none;
}
/* --------------------------------------- */
/* 絞り込み分岐用の追記 */
/* --------------------------------------- */
.list_info.include_btn {
  position: relative;
  height: 36px;
  font-size: 14px;
  line-height: 36px;
  text-align: left;
  padding: 0 14px;
  background-color: #eee;
  border-width: 1px 0;
  border-style: solid;
  border-color: #a0a0a0;
}
.list_info.include_btn .box_refine {
  position: absolute;
  top: 0;
  right: 4px;
  bottom: 0;
  height: 28px;
  font-size: 14px;
  line-height: 28px;
  margin: auto;
  border-radius: 20px;
  vertical-align: bottom;
}
.list_info.include_btn .constant {
  display: inline-block;
  color: #3469e5;
  padding: 0 10px;
}
/* モーダル コンテンツエリア */
.modal_main {
  position: fixed;
  z-index: 9999;
  display: none;
  width: auto;
  color: #333;
  margin: 20px;
  padding: 5px;
  background: #fff;
  background-color: #fff;
  border-radius: 4px;
}
/* モーダル 背景エリア */
.modal_bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.5);
}
.dialog_title {
  font-weight: bold;
  line-height: 1.8em;
  padding-left: 10px;
}
.modal_close-btn {
  float: right;
  font-size: 13px;
  font-weight: normal;
  color: #606060;
  margin-right: 10px;
  padding: 4px 20px 4px 5px;
  background: url(../st_img/icon_close.png) no-repeat right center, -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dedede));
  background: url(../st_img/icon_close.png) no-repeat right center, linear-gradient(to bottom, #fff, #dedede);
  border: 1px solid #a0a0a0;
}
.shibori_head_box {
  margin-top: 8px;
  clear: both;
  overflow: hidden;
}
.panelShiborikomi select {
  min-width: 15em;
  margin: 0 0 5px;
  padding: 4px 4px 8px;
  border: 1px solid #a0a0a0;
  border-radius: 4px;
}
.refine_txt {
  line-height: 1.5em;
  text-align: left;
  margin-left: 20px;
}
