@charset "utf-8";
/*////////////////////////////////////////////////////////

common

////////////////////////////////////////////////////////*/
section {
  margin-bottom: 20px;
}
aside {
  padding: 0 10px 20px;
}
/* 汎用box
------------------------- */
.flex-box {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.flex-box.col2 {
  padding: 5px 10px;
  justify-content: space-between;
}
.flex-box.col2 > div:nth-child(1) {
  width: 28%;
}
.flex-box.col2 > div:nth-child(2) {
  width: 68%;
  text-align: left;
}
.flex-pack {
  display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  flex-wrap: wrap;
}
.box {
  position: relative;
  clear: both;
}
/* 注釈 */
.box_notice {
  width: 92%;
  margin: 10px auto 15px;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 12px;
}
/* 【削除禁止】display
------------------------- */
/*----- 新規2日間出し分け -----*/
.new_member_off, .new_member_on {
  display: none;
}
.new_member-0 .new_member_off, .new_member-1 .new_member_on {
  display: block;
}
/*----- 従量未購入出し分け -----*/
.unpaido_off, .unpaido_on, .new_member-0 .unpaido_off, .new_member-0 .unpaido_on {
  display: none;
}
/*----- COIPO以外 新規2日間出し分け -----*/
.join_member_off, .join_member_on {
  display: none;
  position: relative;
}
.join_member-0 .join_member_off, .join_member-1 .join_member_on {
  display: block;
}
.unpaido-0 .unpaido_off, .unpaido-1 .unpaido_on {
  display: block;
}
/*----- バナー出し分け -----*/
.bnr .open-0, .bnr .close-1 {
  display: none;
}
.bnr.open-0, .bnr.open-2 {
  display: none;
}
.bnr {
  margin: 0 auto 15px;
  padding: 0 10px;
}
.bnr li {
  margin: 5px 0 10px;
}
.bnr li:first-child {
  margin-top: 0;
}
.bnr li:last-child {
  margin-bottom: 0;
}
.bnr a {
  display: inline-block;
  position: relative;
}
.bnrlink-0 a {
  pointer-events: none;
}
.bnrlink-2 {
  display: none;
}
/* 1月・福袋・タロット応募出し分け */
.dispjan-0, .dispfukubukuro-0, .disptit-0-0, .disptarot-0 {
  display: none;
}
.nondisptarot-1 {
  display: none;
}
/*----- docomo出し分け -----*/
.disp-docomo .common, .disp-common .docomo {
  display: none;
}
.disp-docomo .docomo, .disp-common .common {
  display: block;
}
/*----- 注釈出し分け -----*/
.notice-0 {
  display: none;
}
/* animation
------------------------- */
.tenmetsu {
  -webkit-animation: tenmetsu 1.2s ease-in-out infinite alternate;
  -moz-animation: tenmetsu 1.2s ease-in-out infinite alternate;
  animation: tenmetsu 1.2s ease-in-out infinite alternate;
}
@-webkit-keyframes tenmetsu {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes tenmetsu {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes tenmetsu {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.float {
  -webkit-animation: float 2.5s ease-in-out infinite alternate;
  animation: float 2.5s ease-in-out infinite alternate;
  transform-origin: 50% 50%;
  position: relative;
  z-index: 2;
}
@-webkit-keyframes float {
  0% {
    transform: translate3d(0, -3px, 0)
  }
  50% {
    transform: translate3d(0, 3px, 0)
  }
  100% {
    transform: translate3d(0, -3px, 0)
  }
}
@keyframes float {
  0% {
    transform: translate3d(0, -3px, 0)
  }
  50% {
    transform: translate3d(0, 3px, 0)
  }
  100% {
    transform: translate3d(0, -3px, 0)
  }
}
/*////////////////////////////////////////////////////////

共通パーツ

////////////////////////////////////////////////////////*/
/* list_menu
------------------------- */
/*----- デフォルト -----*/
.list_menu {
  margin: 0 0 5px;
  padding: 15px 5px 18px;
  position: relative;
  background-image: url("../images/menulist/pink/line.png"), url("../images/menulist/pink/line.png");
  background-repeat: no-repeat;
  background-position: top, bottom;
  background-size: 100%;
  background-color: #ff6baf;
}
.list_menu li {
  margin: 0 0 4px;
  position: relative;
  text-align: left;
  font-weight: bold;
  color: #000;
  background: url("../images/menulist/bg_top.jpg") no-repeat top, url("../images/menulist/bg_btm.jpg") no-repeat bottom, url("../images/menulist/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.list_menu li:last-child {
  margin: 0;
}
.list_menu li a {
  padding: 10px 20px 10px 15px;
}
.list_menu a {
  display: block;
  position: relative;
  line-height: 1.4;
  text-decoration: none;
  color: #000;
}
.list_menu li a:after, .btn_more a:after {
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-color: transparent transparent transparent #1f1f1f;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3%;
}
.list_menu .tit_sub {
  height: auto;
  margin: 0 0 4px;
  padding: 12px 8px;
  border-radius: 3px;
  letter-spacing: 1px;
  text-shadow: 0 0 3px #ff0076, 0 0 5px #ff0076, 0 0 8px #ff0076;
  font-size: 17px;
  background-image: url("../images/line/02.png"), url("../images/line/02.png");
  background-repeat: no-repeat;
  background-position: top, bottom;
  background-size: 100%;
  background-color: #b70055;
}
.list_menu .tit_sub span {
  color: yellow;
}
/* purple */
.list_menu.purple {
  background-color: #c985ff;
  background-image: url("../images/menulist/purple/line.png"), url("../images/menulist/purple/line.png");
}
.purple .tit_sub {
  background-color: #7d00e6;
}
.purple .tit_sub {
  text-shadow: 0 0 3px #bc6cff, 0 0 5px #bc6cff, 0 0 8px #bc6cff;
}
/* red */
.list_menu.red {
  background-color: #ff003e;
  background-image: url("../images/menulist/red/line.png"), url("../images/menulist/red/line.png");
}
/* blue */
.list_menu.blue {
  background-color: #396aff;
  background-image: url("../images/menulist/blue/line.png"), url("../images/menulist/blue/line.png");
}
.blue .tit_sub {
  background-color: #001fa9;
}
.blue .tit_sub {
  text-shadow: 0 0 3px #00a8ff, 0 0 5px #00a8ff, 0 0 8px #00a8ff;
}
/* mix */
.list_menu.mix {
  background: url("../images/menulist/mix/line.png") no-repeat top, url("../images/menulist/mix/line.png") no-repeat bottom, url("../images/menulist/mix/bg_mid.jpg") repeat-y #c985ff;
  background-size: 100%;
}
.mix .tit_sub {
  background-color: #3b0081;
}
.mix .tit_sub {
  text-shadow: 0 0 3px #bc6cff, 0 0 5px #bc6cff, 0 0 8px #bc6cff;
}
.mix .btn_more a {
  color: #000 !important;
}
/* もっと見る */
.btn_more {
  margin: 7px 0 0;
  text-align: right;
}
.btn_more a {
  display: inline-block;
  padding: 0 18px 0 15px;
  border-radius: 20px;
  border: 1px solid #000;
  line-height: 22px;
  font-size: 11px;
  color: #000;
  background: #fff;
}
.btn_more a:after {
  transform: translateY(-55%) scale(.9, .9);
}
[class*="free_"] .btn_more a {
  padding: 0;
  pointer-events: none;
  border: 0;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
  background: none;
}
[class*="free_"] .btn_more a:after {
  content: none;
}
/*----- 新着 -----*/
.list_menu.new {
  padding: 0 8px 20px;
  background: url("../images/pay/tab/line.jpg") no-repeat bottom #7b00bc;
  background-size: 100%;
}
.list_menu.new li {
  background: url("../images/menulist/new/bg_top.jpg") no-repeat top, url("../images/menulist/new/bg_btm.jpg") no-repeat bottom, url("../images/menulist/new/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.list_menu.new li.new {
  background: url("../images/menulist/new/new/bg_top.jpg") no-repeat top, url("../images/menulist/new/new/bg_btm.jpg") no-repeat bottom, url("../images/menulist/new/new/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.list_menu.new li:not(:last-child) {
  margin: 0 0 4px;
}
.list_menu.new li a {
  min-height: 90px;
  padding: 15px 20px 17px 15px;
}
.list_menu.new li a:after {
  right: 5%;
}
.btn_more_img {
  margin: 7px 0 0;
  text-align: right;
}
.btn_more_img a {
  display: inline-block;
  width: 160px;
}
.btn_more_img a:after {
  content: none;
}
/* ppv icon */
.icon-ppv {
  display: flex;
  align-items: center;
  height: 20px;
  margin: 0 0 4px;
  padding: 0 2px 3px;
  font-size: 12px;
  border-bottom: 1px dashed #ba962f;
}
.icon-ppv .days {
  order: 2;
}
.icon-ppv:before, .icon-ppv:after {
  content: '';
  order: 1;
}
.icon-ppv:before {
  width: 50px;
  height: 100%;
  margin-right: 5px;
  background: url(../images/icon/icon-ppv.png) no-repeat center;
  background-size: 100%;
}
.icon-ppv:after {
  width: 24px;
  height: 100%;
  margin-right: 8px;
}
.icon-ppv.one:after {
  width: 12px;
  background: url(../images/icon/icon-person.png) no-repeat left center;
  background-size: 24px;
}
.icon-ppv.two:after {
  background: url(../images/icon/icon-person.png) no-repeat center;
  background-size: 100%;
}
li.new .icon-ppv:before {
  width: 88px;
  background: url(../images/icon/icon-new.png) no-repeat left center, url(../images/icon/icon-ppv.png) no-repeat right center;
  background-size: 36px, 50px;
}
/*----- ランキング -----*/
.list_menu.ranking {
  padding: 0 4px 20px;
  background: url(../images/pay/tab/line.jpg) no-repeat bottom #7b00bc;
  background-size: 100%;
}
.list_menu.ranking li {
  padding: 5px;
}
.list_menu.ranking li:nth-child(1) {
  background: #fff839;
}
.list_menu.ranking li:nth-child(2) {
  background: #e3f0f0;
}
.list_menu.ranking li:nth-child(3) {
  background: #edb863;
}
.list_menu.ranking li:nth-child(4), .list_menu.ranking li:nth-child(5) {
  background: #be69ff;
}
.list_menu.ranking li a {
  padding: 15px 25px 18px 15px;
  background: url("../images/menulist/ranking/bg_top.jpg") no-repeat top, url("../images/menulist/ranking/bg_btm.jpg") no-repeat bottom, url("../images/menulist/ranking/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.list_menu.ranking li:nth-child(1) a {
  background: url("../images/menulist/ranking/bg_top1.jpg") no-repeat top, url("../images/menulist/ranking/bg_btm1.jpg") no-repeat bottom, url("../images/menulist/ranking/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.list_menu.ranking li a:after {
  right: 5%;
}
.list_menu.ranking .rankingicon {
  display: block;
  width: 170px;
  margin: 0 auto -10px;
  position: relative;
  z-index: 1;
}
.list_menu.ranking .text-right {
  padding: 5px 5px 0;
  font-size: 11px;
  font-weight: bold;
}
/*----- weekend -----*/
.list_menu.weekend {
  padding: 15px 8px 20px;
  background: url(../images/pay/tab/line2.jpg) no-repeat top, url(../images/pay/tab/line.jpg) no-repeat bottom #7b00bc;
  background-size: 100%;
}
.list_menu.weekend li {
  overflow: hidden;
}
.list_menu.weekend li a {
  padding-left: 32px;
  font-size: 13px;
}
/*----- メニュー更新 -----*/
.list_menu.update {
  padding: 15px 8px 20px;
  background: url(../images/pay/tab/line2.jpg) no-repeat top, url(../images/pay/tab/line.jpg) no-repeat bottom #7b00bc;
  background-size: 100%;
}
.update .btn_more a {
  padding: 0 25px 0 20px;
  border-radius: 50px;
  border: 1px solid #703f00;
  text-decoration: none;
  color: #000;
  background: #fff;
}
.update .btn_more a:after {
  border-color: transparent transparent transparent #000 !important;
}
.new .list_menu.new {
  padding-top: 10px;
}
/*----- ppv -----*/
.ppv_top .list_menu:not(.new) {
  padding: 0 10px 20px;
}
.ppv_top .list_menu:not(.new) ul {
  padding: 15px 15px 20px;
  background: url("../images/ppv/bg_top.jpg") no-repeat top, url("../images/ppv/bg_btm.jpg") no-repeat center bottom -1px, url("../images/ppv/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.ppv_top .list_menu:not(.new) li {
  background: none;
}
.ppv_top .list_menu:not(.new) li:not(:last-child) {
  border-bottom: 1px dotted #bd9649;
}
.ppv_top .list_menu:not(.new) li a {
  padding: 5px 0;
}
.ppv_top .list_menu li a:after {
  content: none;
}
.list_menu.love {
  background: url("../images/ppv/line1.jpg") no-repeat center bottom -1px #bc0057;
  background-size: 100%;
}
.list_menu.fukuzatsu {
  background: url("../images/ppv/line2.jpg") no-repeat center bottom -1px #bc0095;
  background-size: 100%;
}
.list_menu.kekkon {
  background: url("../images/ppv/line3.jpg") no-repeat center bottom -1px #9000dc;
  background-size: 100%;
}
.list_menu.jinsei {
  background: url("../images/ppv/line4.jpg") no-repeat center bottom -1px #0047b5;
  background-size: 100%;
}
/*----- loopD -----*/
.list_menu.loopD {
  padding: 15px 5px 18px;
  background: url("../images/menulist/pink/line.png") no-repeat top, url("../images/menulist/pink/line.png") no-repeat bottom #de0067;
  background-size: 100%;
}
.list_menu.loopD .btn_ppv {
  margin: 8px auto 0;
}
.list_menu.loopD li a {
  min-height: 60px;
  padding: 20px 20px 20px 28px;
}
/*----- チュートリアル -----*/
.list_menu.tutorial li a:after {
  transform: translateY(-50%) rotate(90deg);
}
/*----- deli -----*/
.list_menu.deli, .list_menu.deli li {
  margin: 0;
  padding: 0;
  background: none;
}
.list_menu.deli li a {
  padding: 15px 35px 20px 25px;
}
.list_menu.deli li a:after {
  right: 8%;
}
/*----- nolink -----*/
.list_menu li.nolink {
  padding: 10px 20px 10px 15px;
  position: relative;
  overflow: hidden;
  color: #aaa;
}
.list_menu li.nolink a {
  opacity: .85;
  padding: 0 0 5px !important;
  pointer-events: none;
}
.list_menu li.nolink .ppvtitle {
  color: #333;
  text-decoration: none;
}
.list_menu li.nolink .ppvtitle font {
  color: brown;
}
.list_menu li.nolink[class*="label"]:after {
  display: inline-block;
  min-width: 155px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
  position: absolute;
  top: 5px;
  left: -45px;
  z-index: 1;
  transform: rotate(-17deg);
  line-height: 17px;
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  color: #000033;
  background: #ffff0a;
}
.list_menu li.nolink.label5:after {
  content: '500円OFF';
}
.list_menu li.nolink.label10:after {
  content: '1000円OFF';
}
/* 特別鑑定ボタン
------------------------- */
/* 画像 */
.btn_ppv {
  width: 85%;
  margin: 13px auto 20px;
}
/* 背景テキスト */
.btn_ppvmenu a {
  display: table-cell;
  vertical-align: middle;
  width: 320px;
  height: 128px;
  padding: 20px 35px 0 25px;
  position: relative;
  line-height: 1.4;
  text-decoration: underline;
  font-weight: bold;
  font-size: 15px;
  color: #000;
  background: url("../images/btn/btn_bg_ppv.png") no-repeat center;
  background-size: 95%;
}
.btn_ppvmenu span {
  font-size: 1.05em;
  color: red;
}
.btn_ppvmenu li:not(:first-child) {
  margin-top: 5px;
}
/* ラベル
------------------------- */
.obi {
  display: block;
  padding: 0 35px 0 30px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-transform: rotate(-35deg);
  -moz-transform: rotate(-35deg);
  transform: rotate(-35deg);
  line-height: 17px;
  font-weight: bold;
  font-size: 10px;
  font-style: italic;
  color: #d30000;
  position: absolute;
  top: 4px;
  left: -32px;
  background: #FFE900;
}
.obi.one {
  color: #007e6a;
}
/* lead
------------------------- */
.lead {
  text-align: left;
  position: relative;
}
/* popup
------------------------- */
.box_notice_popup {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  text-align: left;
  background: rgba(0, 0, 0, .5);
}
.box_notice_popup .inner {
  width: 250px;
  margin: auto;
  padding: 10px 15px;
  border: 2px solid #cead6f;
  border-radius: 5px;
  position: relative;
  top: 50%;
  transform: translateY(-55%);
  overflow-y: scroll;
  color: #444;
  background: #fff;
}
.box_notice_popup .btn-close {
  width: 25px;
  height: 25px;
  position: absolute;
  top: 3px;
  right: 3px;
  z-index: 100;
  cursor: pointer;
  background: url(../images/coipo/icon-close.png) no-repeat;
  background-size: 100%;
}
.box_notice_cap {
  padding: 0 0 5px;
  border-bottom: 1px solid #fa91ba;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
}
.box_notice_popup dt {
  padding: 8px 0 3px;
  font-size: 12px;
  font-weight: bold;
}
.box_notice_popup li {
  margin: 0 0 3px;
  font-size: 11px;
}
.box_notice_popup .icon_share {
  width: 15px;
  margin: 0 1px;
  vertical-align: -3px;
}
/*----- movie -----*/
.year_move_cautionTXT {
  background: #460082;
  font-size: 9px;
  text-align: left;
  padding: 0 20px 10px 61px;
}
.popup-content {
  display: none;
}
.popup-content.active {
  display: block;
}
.box_notice_popup img {
  display: block !important;
}
.movieMD.popup-content {
  background: url(../images/free/popup/movie_mid.png) repeat-y center;
  background-size: 100%;
  border-radius: 16px;
  transform: perspective(0);
}
.md_year_move_cautionTXT {
  font-size: 9px;
  text-align: left;
  padding: 10px 20px;
}
/*////////////////////////////////////////////////////////

無料TOP

////////////////////////////////////////////////////////*/
[class*="free_top"] {
  padding: 0 0 40px;
}
[class*="free_top"] section, [class*="free_top"] p {
  margin-bottom: 0;
}
[class*="free_top"] .main_obi {
  padding: 5px;
  font-weight: bold;
  font-size: 15px;
  color: #fff;
  background: #ff0066;
}
[class*="free_top"] .main_obi span {
  color: yellow;
}
/*----- 無料占いbtn -----*/
.box_ff .ff_fuki {
  width: 85%;
  margin: 0 auto -15px;
}
.btn_free {
  margin: 0 auto 5px;
  padding: 0 10px;
  justify-content: space-between;
}
.btn_free li {
  width: 49%;
  height: 100%;
}
.btn_free li:nth-child(2) {
  animation-delay: .5s;
}
.btn_free a {
  display: block;
  height: 100%;
  width: 100%;
}
/* 会員登録btn */
.btn-regist {
  margin: 13px auto 15px;
  position: relative;
  z-index: 1;
}
.free_view .btn-regist {
  margin-bottom: 20px;
}
.btn-regist a {
  display: block;
  width: 80%;
  height: 65px;
  margin: auto;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  background: url(../images/btn/btn_regist.png) no-repeat center;
  background-size: 100%;
}
.btn-regist02 {
  width: 90%;
  margin: 0 auto;
}
.box_history_free {
  margin: -1px 0 0;
  padding: 5px 30px 15px;
  text-align: left;
  line-height: 1.8;
  font-size: 11px;
  color: #240000;
  background: url("../images/free/history/bg_btm.jpg") no-repeat bottom, url("../images/free/history/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
/*----- count -----*/
/* movie */
.box_movie_wrap.open-0 {
  display: none;
}
.box_movie_count {
  position: relative;
}
.box_movie_count div {
  width: 100%;
  position: absolute;
  top: 153px;
  left: 0;
  font-size: 30px;
  font-weight: bold;
  color: #000;
}
/* tarot */
.box_tarot_count {
  position: relative;
}
.box_tarot_count div {
  width: 100%;
  position: absolute;
  top: 353px;
  left: 0;
  font-size: 16px;
  font-weight: bold;
  color: #000;
}
.box_tarot_count span {
  font-size: 30px;
}
/*----- scroll -----*/
.box_icon_scroll {
  margin: 15px 0;
  padding: 0 0 10px;
  border-top: 1px solid #7c01e9;
  border-bottom: 1px solid #7c01e9;
  background: #43007f;
}
.box_icon_scroll ul {
  flex-wrap: nowrap;
  align-items: flex-end;
  overflow-y: scroll;
  padding: 10px 10px 0;
}
.box_icon_scroll li {
  flex-shrink: 0;
  width: 30%;
  cursor: pointer;
}
/*----- 福袋チャンス -----*/
.fukubukuro .bnr {
  width: 290px;
  margin: auto;
  padding: 0;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}
.fukubukuro .bnr img {
  display: block;
}
/*----- 特典 -----*/
.otoku {
  position: relative;
}
.otoku .menu_link {
  height: 35px;
  top: 280px;
}
/*////////////////////////////////////////////////////////

free fortune

////////////////////////////////////////////////////////*/
.free_index p {
  margin-bottom: 0;
}
.fuki_img {
  margin: 0 0 -15px;
  padding: 0 10px;
  position: relative;
  z-index: 1;
}
.ff_tit {
  position: relative;
  z-index: 1;
}
.ff_tit h2 {
  width: 100%;
  padding-left: 40px;
  position: absolute;
  left: 0;
  bottom: 17px;
  line-height: 1.2;
  font-size: 13px;
  font-weight: bold;
  color: #252525;
}
/*----- form -----*/
.form_wrap {
  margin: -1px 0 0; /*線消し*/
  padding: 10px 25px 45px;
  background: url("../images/free/bg_btm.jpg") no-repeat center bottom -1px, url("../images/free/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
[class^="ff_name"] {
  width: 98%;
  margin: 0 auto 12px;
}
.ff_name2 {
  width: 100%;
}
.form_wrap > .flex-box:not(.select_wrap) {
  justify-content: space-between;
}
.form_wrap > .flex-box dl {
  display: flex;
  align-items: center;
  width: 49%;
}
.form_wrap dt {
  flex-shrink: 0;
  width: 25%;
  height: 100%;
  margin: 0 2px 0 0;
  padding: 0 4px 0 2px;
  border-radius: 5px;
  line-height: 30px;
  font-weight: bold;
  font-size: 12px;
  color: #fff;
  background: #740edd;
}
.form_wrap input[type="text"], .form_wrap select {
  width: 100%;
  height: 30px;
  margin: 0;
  border: 1px solid #a0a0a0;
  line-height: 1.4;
  font-size: 13px;
  font-weight: bold;
}
.form_wrap input[type="text"] {
  padding: 0 7px;
}
.form_wrap select {
  width: 55px;
  padding: 0 8px 0 5px;
  background: url(../images/icon/arrow_select.png) no-repeat 94% center #fff;
  background-size: 7px;
}
/* 注意文言 */
.form_wrap .att {
  margin: 7px 0 12px;
  line-height: 1;
  font-size: 10px;
  color: #1a0202;
}
.form_wrap .error-message {
  padding-bottom: 5px;
}
/* 性別 */
.select_wrap {
  flex-wrap: nowrap;
}
.select_wrap:not(:last-child) {
  margin: 0 0 15px;
}
.select_wrap dt {
  width: 70px;
  letter-spacing: 1px;
}
/* 生年月日 */
.select_wrap.birthday dt {
  letter-spacing: 0;
}
.select_wrap [name='birthmonth'], .select_wrap [name='birthday'], .select_wrap [name='birthmonth2'], .select_wrap [name='birthday2'] {
  width: 40px;
}
.select_wrap span {
  padding: 12px 2px 0 2px;
  float: left;
  font-weight: bold;
  font-size: 10px;
  color: #000;
}
/* 占うボタン */
.btn_wrap {
  width: 230px;
  height: 50px;
  margin: 10px auto 0;
  position: relative;
  z-index: 1;
}
/* popup
------------------------- */
.box_icon_scroll .inner {
  overflow: visible;
  padding: 0;
  border: 0;
}
[class*="_popup"] .btn-close {
  width: 30px;
  height: 30px;
  top: -8px;
  right: -8px;
  background: url("../images/free/popup/close.png") no-repeat;
  background-size: 100%;
}
.box_notice_popup img {
  display: none;
}
.box_notice_popup img.active {
  display: block;
}
/*////////////////////////////////////////////////////////

オーダーメイド鑑定

////////////////////////////////////////////////////////*/
.ordermade .form_wrap {
  padding: 30px 25px 35px;
  position: relative;
}
.ordermade .form_wrap:after {
  content: '';
  width: 100%;
  height: 30px;
  position: absolute;
  top: -1px;
  left: 0;
  transform: scale(1,-1);
  background: url("../images/free/bg_btm.jpg") no-repeat;
  background-size: 100%;
}
/*////////////////////////////////////////////////////////

月額TOP

////////////////////////////////////////////////////////*/
/*----- menu_link -----*/
.menu_link {
  width: 92%;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 5;
}
.menu_link li {
  background: none;
}
.menu_link a {
  display: block;
  height: 100%;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
/*----- メインメニュー -----*/
.menu .main_visual {
  margin: 0 0 15px;
}
.main_visual .box_teller {
  padding: 0 25px;
}
.main_visual .box_teller .serif {
  width: 160px;
}
.menu .main_visual .box_teller {
  min-height: 200px;
  background: url("../images/menu/teller.jpg") no-repeat;
  background-size: 100%;
}
.btn_today {
  display: block;
  margin: 3px -5px -3px;
}
.today {
  height: 25px;
  line-height: 26px;
  letter-spacing: 1px;
  font-size: 12px;
  color: #fff;
  background: #6200c9;
}
.box_menu {
  height: 320px;
  padding: 16px 8px 0;
  background: url(../images/menu/bg_box_menu.jpg) no-repeat;
  background-size: 100%;
}
.box_menu li {
  height: 46px;
  margin: 0 0 4px;
}
.box_menu li:not(.w-100) {
  width: 50%;
}
.box_menu li:nth-last-child(-n+2) {
  margin: 0;
  height: 47px;
}
.box_menu li a {
  display: block;
  height: 100%;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
/* 更新バッジ */
.box_menu .icon-1:after {
  content: "";
  position: absolute;
  z-index: 1;
}
.box_menu .icon-1:after {
  width: 20px;
  height: 20px;
  top: -5px;
  right: -4px;
  background: url(../images/icon/icon-mark.png) no-repeat;
  background-size: 100%;
}
/* 検索 */
.box_search {
  height: 110px;
  padding: 40px 20px 0;
  background: url(../images/menu/bg_box_search.jpg) no-repeat;
  background-size: 100%;
}
.pulldown_menu {
  position: relative;
}
.pulldown_menu select {
  width: 100%;
  height: 34px;
  padding: 0 22px 0 10px;
  line-height: 30px;
  font-size: 13px;
  background: #fff;
}
.pulldown_menu:after {
  content: "\025bc";
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  font-size: 10px;
  color: #2b2b2b;
}
.box_search_btn {
  width: 67px;
  height: 35px;
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  -webkit-appearance: none;
  appearance: none;
  vertical-align: 1px;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  background: url(../images/pay/btn_search.png) no-repeat;
  background-size: 100%;
}
.fortune_search {
  margin: 50px auto 30px;
}
.fortuneSearch .fortune_search {
  margin: 0 auto 30px;
}
/*----- menu -----*/
/* 005 */
.menu005 .box p {
  width: 145px;
  position: absolute;
  top: 33px;
  left: 23px;
  text-align: left;
  font-weight: bold;
  font-size: 13px;
  color: #000;
}
/* 013 */
.menu013 .tit_sub {
  display: none;
}
/* プレゼント8種 */
.box_pre8 {
  position: relative;
}
.box_pre8 .menu_link {
  top: 145px;
  left: 0;
}
.box_pre8 .menu_link li {
  height: 70px;
  margin: 10px 0 0;
}
.box_pre8 .menu_link li:last-child {
  height: 30px;
  margin: 3px 0 0;
}
.box_pre8 .btn_ppvmenu {
  margin: -1px 0 0; /*線消し*/
  padding: 0 0 22px;
  background: url("../images/menu/pre8/line.jpg") no-repeat bottom #fff500;
  background-size: 100%;
}
/* 012 */
.menu012 .box p {
  position: absolute;
  top: 60px;
  left: 40px;
  transform: rotate(-5deg);
  text-align: left;
  text-shadow: 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046, 0 0 5px #f70046;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
}
.menu012 .fuki {
  width: 80%;
  margin: 0 auto -20px;
}
/* 014 */
.menu014 .teller {
  margin: -35px 0 0;
}
.buruburu {
  padding: 0 20px;
}
/*////////////////////////////////////////////////////////

有料TOP

////////////////////////////////////////////////////////*/
.pay_top p {
  margin-bottom: 0;
}
/*----- mv -----*/
.pay_top .main_visual .box_teller {
  min-height: 185px;
  margin: 0 0 5px;
  background: url("../images/pay/teller.jpg") no-repeat;
  background-size: 100%;
}
/*----- レコメンドbigバナー -----*/
.reco_banner {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1002;
  width: 100%;
  height: 120vh;
  background: rgba(0, 0, 0, 0.8);
  display: none;
}
.pay_top .reco-1 {
  display: block;
}
.pay_top .reco-0 {
  display: none;
}
.reco_bigbnr {
  width: 92%;
  margin: 10px auto 0;
  padding: 0 0 0;
  position: relative;
  border-radius: 5px;
  border: 2px solid #ab8449;
  background: #fafafa;
  min-height: 290px;
}
.reco_bigbnr img {
  border-radius: 3px 3px 0 0;
}
.btn_reco_close {
  width: 30px;
  height: 30px;
  position: absolute;
  right: -10px;
  top: -10px;
  z-index: 2000;
  cursor: pointer;
  background: url(../images/icon/icon_close.png) no-repeat;
  background-size: 100%;
}
/*--- 新メニュー ---*/
[class*="new_notice"] {
  display: none;
  width: 300px;
  margin: 5px auto 0;
}
.new_notice-1 {
  display: block;
}
/*--- 緊急メッセージ THEATER ---*/
.box_emergency {
  width: 300px;
  height: 75px;
  margin: 0 auto;
}
.emergency_mes {
  width: 22%;
  height: 100%;
  position: relative;
  background: url("../images/pay/emergency/emergency.png") no-repeat center bottom -3px;
  background-size: 105%;
}
.emergency_mes a {
  display: block;
  height: 100%;
}
/*.emergency_mes a {
  display: table-cell;
  width: 300px;
  height: 72px;
  padding: 26px 40px 0;
  vertical-align: middle;
  line-height: 1.25;
  text-decoration: underline;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
}*/
.emergency_mes .float {
  width: 100%;
  position: absolute;
  top: 4px;
  left: 0;
}
.emergency_mes.icon-1:after {
  content: "";
  width: 13px;
  height: 13px;
  margin: auto;
  position: absolute;
  top: 30px;
  right: 10px;
  /*-webkit-animation: tenmetsu 1s ease-in-out infinite alternate;
  -moz-animation: tenmetsu 1s ease-in-out infinite alternate;
  animation: tenmetsu 1s ease-in-out infinite alternate;*/
  background: url("../images/icon/icon-mark2.png") no-repeat;
  background-size: 100%;
}
/*--- ランダム訴求1 RANDOM_WEEK_VIEW ---*/
[class^="random_week_view"] {
  display: table;
  width: 77%;
  height: 100%;
  margin-left: auto;
}
[class^="random_week_view"] a {
  display: table-cell;
  vertical-align: middle;
  padding: 0 25px 0 15px;
  position: relative;
  line-height: 1.3;
  text-align: left;
  font-size: 11px;
  font-weight: bold;
  color: #000;
}
/*[class^="random_week_view"] a:after {
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-color: transparent transparent transparent #1f1f1f;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3%;
}*/
.random_week_view-1 {
  background: url("../images/pay/randam/bg_random_week_view1.png") no-repeat center;
  background-size: 100%;
}
.random_week_view-2 {
  background: url("../images/pay/randam/bg_random_week_view2.png") no-repeat center;
  background-size: 100%;
}
.random_week_view-3 {
  background: url("../images/pay/randam/bg_random_week_view3.png") no-repeat center;
  background-size: 100%;
}
.random_week_view-3 a {
  color: #fff;
}
/*--- ランダム訴求2 RANDOM_WEEK_TEXT ---*/
[class^="random_week_text"] {
  display: table;
  width: 310px;
  height: 102px;
  margin: 5px auto 0;
  background: url("../images/pay/randam/bg_random_week_text.png") no-repeat center;
  background-size: 100%;
}
[class^="random_week_text"] a {
  display: table-cell;
  vertical-align: middle;
  padding: 0 35px 0 25px;
  position: relative;
  font-weight: bold;
  color: #000;
}
[class^="random_week_text"] a:after {
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-color: transparent transparent transparent #1f1f1f;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8%;
}
/*.random_week_text-1 {
  box-shadow: 0 0 5px inset #eef616;
  border: 1px solid #817619;
}
.random_week_text-2 {
  box-shadow: 0 0 5px inset #f36bff;
  border: 1px solid #570871;
}
.random_week_text-3 {
  box-shadow: 0 0 5px inset #16f6b4;
  border: 1px solid #007c57;
}*/
/*----- 2ボタン -----*/
.btn_info_ppv {
  width: 300px;
  margin: 20px auto;
  position: relative;
  background-size: 100%;
}
.btn_info_ppv ul {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.btn_info_ppv li {
  width: 50%;
  height: 45px;
}
.btn_info_ppv li a {
  display: block;
  width: 100%;
  height: 100%;
}
.pay_top .btn_notice.icon-1:after {
  content: "";
  width: 15px;
  height: 15px;
  position: absolute;
  top: -3px;
  left: -3px;
  z-index: 1;
  background: url(../images/icon/icon-mark.png) no-repeat;
  background-size: 100%;
  -webkit-animation: tenmetsu 1s ease-in-out infinite alternate;
  -moz-animation: tenmetsu 1s ease-in-out infinite alternate;
  animation: tenmetsu 1s ease-in-out infinite alternate;
}
/*----- tab・panel common -----*/
/* tab */
.tab li {
  cursor: pointer;
}
/* panel */
[class^="panel"] {
  display: none;
  position: relative;
}
[class^="panel"].active {
  display: block;
}
/*--- 無料占いの続き ---*/
.btn_free_more {
  margin: 15px 0;
  height: 75px;
  cursor: pointer;
  background: url("../images/btn/btn_free_more.png") no-repeat center;
  background-size: 92%;
}
.box_free_more {
  display: none;
  padding: 0 0 15px;
  background: #5e09ab;
}
.box_free_more.opn {
  display: block;
}
.box_free_more .tab {
  display: flex;
  justify-content: space-around;
  align-items: center;
  height: 38px;
  margin: 0 0 -3px;
  position: relative;
  z-index: 1;
  background: url("../images/pay/freemore/tab1.jpg") no-repeat;
  background-size: 100%;
}
.box_free_more .tab.on2 {
  background: url("../images/pay/freemore/tab2.jpg") no-repeat;
  background-size: 100%;
}
.box_free_more .panel {
  margin: 0 15px 0 15.5px;
  padding: 15px;
  border-radius: 3px;
  border: 2px solid #fff;
}
.box_free_more .panel:nth-child(1) {
  background: #8a00ff;
}
.box_free_more .panel:nth-child(2) {
  background: #ff1a80;
}
.box_free_more .panel li {
  margin: 0 0 7px;
  padding-left: 18px;
  text-align: left;
  line-height: 1.2;
  background: url("../images/icon/01.png") no-repeat left 1px;
  background-size: 15px;
}
.box_free_more .panel a {
  font-weight: bold;
  font-size: 13px;
  color: #fff;
}
.box_free_more .panel .icon_ppv {
  padding-left: 50px;
  font-weight: bold;
  background: url("../images/icon/icon-ppv.png") no-repeat left 1px;
  background-size: 45px;
}
.box_free_more .panel .icon_ppv a {
  color: #fcff00;
}
/*----- タブメニュー -----*/
/* tab */
.tab_menu {
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 0 8px;
  height: 58px;
  margin: 0 0 -1px;
  background: url("../images/pay/tab/tab1.jpg") no-repeat;
  background-size: 100%;
}
.tab_menu.on1 {
  background: url("../images/pay/tab/tab1.jpg") no-repeat;
  background-size: 100%;
}
.tab_menu.on2 {
  background: url("../images/pay/tab/tab2.jpg") no-repeat;
  background-size: 100%;
}
.tab_menu.on3 {
  background: url("../images/pay/tab/tab3.jpg") no-repeat;
  background-size: 100%;
}
.tab_menu li {
  width: 31%;
  height: 100%;
  position: relative;
  cursor: pointer;
}
.tab_menu li.active {
  width: 35%;
}
.tab_menu li.icon-1:after {
  content: '';
  width: 55px;
  height: 16px;
  margin: auto;
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  background: url("../images/pay/tab/icon-new.png") no-repeat;
  background-size: 100%;
}
/* panel */
.tab_menu_item h2 {
  margin: 0 0 5px;
}
.tab_menu_item .panel1 h2 {
  margin: 0 -8px 4px;
}
.tab_menu_item .panel3 h2 {
  margin: 0 -4px 4px;
}
.tab_menu_item h3 {
  margin: 0 0 5px;
  font-size: 14px;
}
.tab_menu_item .bnr {
  margin: 0 auto 10px;
}
/*----- レコメンド -----*/
.sec_auto_segment_ppv {
  padding: 0 0 15px;
  background: url("../images/pay/deli/bg_top.jpg") no-repeat top, url("../images/pay/deli/bg_btm.jpg") no-repeat bottom, url("../images/pay/deli/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.tit_deli {
  display: table-cell;
  vertical-align: middle;
  width: 320px;
  height: 120px;
  padding: 25px 115px 0 22px;
  text-align: left;
  line-height: 1.3;
  font-size: 15px;
  font-weight: bold;
  color: #000;
}
.deli2-read {
  display: none;
}
/*----- weekend -----*/
.weekend h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  margin: 0 -5px 5px;
  text-shadow: 0 0 5px #0084ff, 0 0 8px #0084ff;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: url("../images/pay/update/title.png") no-repeat;
  background-size: 100%;
}
/*----- メニュー更新 -----*/
.update h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  margin: 0 -5px 5px;
  text-shadow: 0 0 5px #0084ff, 0 0 8px #0084ff;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: url("../images/pay/update/title.png") no-repeat;
  background-size: 100%;
}
/*----- 開運動画 -----*/
.movie .title, .movie .menu_title {
  display: block;
  line-height: 1.5;
}
.movie .title {
  width: 320px;
  display: table-cell;
  vertical-align: middle;
  font-size: 13px;
}
.movie .menu_title {
  font-size: 12px;
}
.movie .menu_title p {
  margin: 0;
  text-align: center;
}
.movie .menu_title p:nth-child(2) {
  margin: 0;
  text-align: center;
  font-size: 16px;
}
.movie .menu_title span {
  color: yellow;
}
.movie .close-1, .movie .open-0 {
  display: none;
}
/*--- movie ---*/
#movie {
  border: 2px solid #975bf3;
}
[class^="box_movie-"] {
  width: 290px;
  height: 165px;
  margin: 0 auto 20px;
  position: relative;
}
.box_movie-0 video, .box_movie-0 .vjs-big-play-button {
  display: none !important;
}
.box_movie-0:after {
  content: 'VIP会員になって\A開運動画を視聴しましょう！';
  white-space: pre;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-shadow: 0 2px 3px #000;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, .7);
}
[class^="box_movie-"] .video-js {
  margin: auto;
  background: #9f51ff;
}
[class^="box_movie-"] .vjs-poster {
  background-size: 100%;
}
[class^="box_movie-"] .vjs-big-play-button {
  line-height: 1.38;
  position: relative;
}
[class^="box_movie-"] .vjs-big-play-button {
  border-radius: 50px !important;
}
[class^="box_movie-"] .video-js:hover .vjs-big-play-button {
  background: #333;
}
[class^="box_movie-"] .vjs-big-play-button:after, [class^="btn_play"]:after {
  width: 50px;
  content: 'タップして動画を再生';
  font-size: 10px;
  color: #fff;
  position: absolute;
  top: 9px;
  left: 12px;
  line-height: 1.2;
}
[class^="box_movie-"] .vjs-icon-placeholder:before {
  width: auto !important;
  left: auto !important;
  top: -2px !important;
  right: 5px !important;
  font-size: 0.6em;
}
[class^="btn_play"] {
  display: inline-block;
  width: 90px;
  height: 47px;
  margin: auto;
  border: 2px solid #fff;
  border-radius: 80px;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 1;
  transform: translateY(-40%);
  line-height: 1.5em;
  color: #fff;
  background-color: rgba(43, 51, 63, 0.7);
}
[class^="btn_play"]:before {
  content: '▶︎';
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%) scaleY(1.3);
  font-size: 0.6em;
}
.playActive .btn_play {
  display: none;
}
/*----- nextopen -----*/
.text_nextopen {
  margin: 0 0 3px;
  text-shadow: 0 0 5px #ffcc00, 0 0 5px #ffcc00, 0 0 10px #ffae00;
  font-size: 18px;
  font-weight: bold;
  background: url("../images/pay/tab/deco.png") no-repeat center;
  background-size: 75%;
}
.text_nextopen span {
  display: none;
}
.nextopen-0 .close, .nextopen-1 .open {
  display: block;
}
.nextopen-0 a {
  pointer-events: none;
}
/*----- 滞在特典 -----*/
.box_special {
  padding: 0 10px 20px;
  background: url("../images/line/04.jpg") no-repeat bottom #7800da;
  background-size: 100%;
  color: #222;
}
.box_special h2 {
  margin: 0 -10px 10px;
}
.box_special .inner {
  padding: 10px;
  border-radius: 5px;
  background: #fff;
}
.box_special .text-bold {
  padding: 5px 0;
  line-height: 1.3;
}
.box_special ul {
  padding: 5px 0 20px;
}
.box_special li:not(:last-child) {
  margin: 0 0 5px;
  padding: 0 0 20px;
  background: url("../images/line/01.png") no-repeat bottom;
  background-size: 100%;
}
.box_special h3 {
  font-size: 13px;
  font-weight: bold;
}
.box_special .float {
  margin: 0 auto -5px;
}
.btn-pre-link {
  display: block;
  width: 260px;
  margin: auto;
  line-height: 25px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
}
/*----- おすすめサイト -----*/
.promotion {
  position: relative;
}
.promotion .inner {
  padding: 10px;
  position: relative;
  z-index: 1;
}
.promotion li {
  margin-top: 10px;
}
.promotion .officialLink {
  padding: 0 10px;
}
.box_recc .inner {
  margin: 5px 5px 0;
  padding: 0 20px 25px;
  border: 1px solid #d8a5f6;
  border-radius: 7px;
  background: #714d71;
}
/*----- 20241214 実装　一周記念従量表示 -----*/
.ppv_automation_opener ul {
	background: url(../images/pay/ppv_automation_opener/default/bg_main_btm.jpg)no-repeat bottom, url(../images/pay/ppv_automation_opener/default/bg_main_mid.jpg) repeat-y center;
	background-size: 100%;
}
.ppv_automation_opener.iventStyle-2gatu ul {
	background: url(../images/pay/ppv_automation_opener/default/bg_main_btm.jpg)no-repeat bottom;
	background-size: 100%;
  background-color: #ff5d92;
}
.newInfo .tab_menu_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/* justify-content: center; */
	/* gap: 0 5px; */
	margin-top: -5px;
	padding:0px 15px;
  }
  
  .newInfo .tab_menu_list li {
	width: 143px;
	background: none;
	background-color: #fff;
	border: 1px solid #ac8d4a;
	border-radius: 8px;
	box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
  }
  
  .newInfo .tab_menu_list .ppv_info {
	margin-bottom: 10px;
	background-color: #fff;
	border-radius: 6px;
	border: 1px solid #ac8d4a;
	position: relative;
	box-sizing: border-box;
  }
  
  .newInfo .tab_menu_list li.new.ppv_info:before {
    content: "NEW";
    display: block;
    font-size: 9px;
    text-align: center;
    letter-spacing: 0.7px;
    line-height: 1.8;
    width: 44px;
    height: 14px;
    position: absolute;
    top: -2px;
    left: 1px;
    border-radius: 20px;
    z-index: 2;
    font-weight: bold;
    background: red;
    box-shadow: 0px 0px 0px 2px rgb(255 255 255);
  }

  .newInfo .tab_menu_list .ppv_info a {
	padding: 9px;
	display: block;
  text-decoration: none;
  }
  

  .newInfo .icon-ppv-area{
	text-align: left;
  }
  
  .newInfo .new .icon-ppv.one:after,
  .newInfo .new .icon-ppv.two:after {
	left: 47px;
	top: 1px;
  }
  
  .newInfo .ppvtitle {
	color: #000;
	text-decoration: underline;
	float: none;
	width: 230px;
	display: table-cell;
	vertical-align: middle;
  }

  .newInfo .update_date{
	font-size: 9px;
	text-align: center;
  }
  
/*占いの日際
再リニューアルBNRの帯*/
.pay_top .return_sale_belt {
  padding: 8px;
  color: red;
  text-align: center;
  background: yellow;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: -0.6px;
border-bottom: 3px solid #000;
}
/*<!-- ~20241231made HAPPY_TYPE_ICON-->*/
.happy_new_year_bar.OPdisp-0 {
  display: none;
}
/*<!-- ~20241231made HAPPY_TYPE_ICON-->*/

/*////////////////////////////////////////////////////////

お知らせ・プレゼントBOX

////////////////////////////////////////////////////////*/
.notice .list_menu dt {
  margin-bottom: 7px;
  padding-bottom: 3px;
  border-bottom: 1px solid #ccc;
  font-size: 12px;
}
.notice .icon_1 {
  background: url(../images/icon/icon-mark.png) no-repeat right top;
  background-size: 15px;
}
.tit_komi_yesno, .tit_komi_kao, .tit_komi_jiki {
  height: 111px;
}
/*////////////////////////////////////////////////////////

menulist / menu.do

////////////////////////////////////////////////////////*/
/*----- common -----*/
/* title */
.menuList .title, .menudo .title {
  min-height: 120px;
  background: url("../images/bar/pink_long.jpg") no-repeat;
  background-size: 100%;
}
.menuList .title, .menudo.index .title {
  margin: 0;
}
.menuList .title {
  flex-direction: column;
  margin: 0;
}
.menuList .title span {
  font-size: 1.3em;
}
/* lead */
.menuList .lead {
  padding: 0 10px 10px;
}
.menudo .lead {
  padding: 10px;
  overflow: hidden;
}
.menudo .tit_sub + .lead {
  padding-top: 0;
}
/* text */
.menudo .serif a {
  font-size: 1.1em;
  color: #f00;
}
.menudo .icon-hart {
  margin-top: 50px;
}
.text-rotate {
  padding: 0 20px;
  transform: rotate(-5deg);
  text-align: left;
  font-weight: bold;
}
/* img */
[class^="yudo_img"] {
  position: relative;
  z-index: -1;
}
.yudo_img {
  margin: 0 auto -10px;
}
/* 占者画像 */
.result-picture {
  width: 90px;
  float: left;
  margin: 0 8px 0 0;
}
.result-picture.right {
  float: right;
  margin: 0 0 0 8px;
}
.result-picture.right img {
  transform: scale(-1, 1);
}
/*----- result_kao -----*/
.bokashi.noimg [class^="btn"] {
  position: static;
  transform: none;
}
.bokashi.noimg > img {
  display: none;
}
/*----- result_tarot -----*/
.menudo.tarot .form-btn input {
  width: 300px;
  height: 170px;
  padding: 0;
  border: 0;
  box-shadow: none;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0;
  background: url("../images/result/komi_common/back_select.png") no-repeat;
  background-size: 100%;
}
.box_image {
  width: 50%;
  margin: 20px auto;
}
/*----- yudo -----*/
[class*="box_yudo"] {
  position: relative;
}
[class*="box_yudo"] ul {
  width: 90%;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  font-weight: bold;
}
/* 2 */
.box_yudo02 {
  margin: 0 0 60px;
}
.box_yudo02 ul {
  top: 50px;
}
.box_yudo02 li {
  width: 65%;
}
.box_yudo02 a {
  font-size: 13px;
}
.box_yudo02 li:nth-child(2) {
  margin: 10px 0 10px 35%;
}
/* 6 */
.box_yudo06 ul {
  top: 25px;
}
.box_yudo06 li {
  width: 60%;
}
.box_yudo06 li a {
  text-align: left;
}
/* 8 */
.box_yudo08 ul {
  top: 15px;
  text-align: left;
}
.box_yudo08 li {
  display: inline-block;
  width: auto;
}
.box_yudo08 li:nth-child(2) {
  display: block;
  width: 50%;
}
/* 11 */
.box_yudo11 ul {
  width: 98%;
  top: 30px;
  justify-content: space-between;
}
.box_yudo11 li {
  width: 48%;
}
.box_yudo11 li:nth-child(n+3) {
  margin-top: 40px;
}
.box_yudo11 a {
  font-size: 12px;
}
/* 13 */
.box_yudo13 ul {
  top: 70px;
}
.box_yudo13 li {
  width: 63%;
}
.box_yudo13 li:nth-child(1) {
  margin: 0 0 80px 35%;
}
.box_yudo13 a {
  font-size: 13px;
}
/* 15 */
.box_yudo15 ul {
  top: 20px;
}
.box_yudo15 li {
  width: 75%;
  margin-left: 25%;
}
.box_yudo15 a {
  font-size: 13px;
}
/* 17 */
.komi_dokusuri .obi_wrap {
  position: relative;
  overflow: hidden;
}
.komi_dokusuri .obi {
  transform: rotate(-35deg) scale(1.6);
  top: 15px;
  left: -15px;
}
.komi_dokusuri .btn_ppv {
  margin: 10px auto 0;
}
/* 18 */
.box_yudo18 {
  padding: 10px 20px;
  justify-content: space-between;
}
.box_yudo18 li {
  width: 31%;
}
.box_yudo18 li:nth-child(n+4) {
  margin-top: 10px;
}
/*////////////////////////////////////////////////////////

従量TOP

////////////////////////////////////////////////////////*/
/*----- navi -----*/
.ppvnavi {
  height: 125px;
  margin: 0 10px;
  background: url(../images/ppv/bg_btn.png) no-repeat;
  background-size: 100%;
}
.ppvnavi li {
  width: 50%;
  height: 47px;
}
.ppvnavi a {
  display: block;
  height: 100%;
}
.ppvnavi li:last-child {
  width: 100%;
  height: 30px;
}
/*----- 絞り込み/並び順ボタン -----*/
.btn_sort_wrap {
  margin: 0 0 5px;
  padding: 5px 15px;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 10;
  background: #1b0037;
}
.btn_sort_wrap > ul {
  margin-left: 60%;
  background: url("../images/ppv/btn_sort_wrap.png") no-repeat right;
  background-size: 100%;
}
.btn_sort_wrap > ul > li {
  width: 50%;
  height: 25px;
  position: relative;
}
.btn_sort_wrap > ul > li > [class^="btn_"] {
  height: 100%;
  cursor: pointer;
}
/*----- popup -----*/
.pop_sort {
  display: none;
  min-height: 100px;
  position: absolute;
  z-index: 10;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .6);
  border-radius: 8px;
  border: 1px solid #ababab;
  line-height: 1.2;
  font-size: 10px;
  color: #343434;
  background: #fff;
}
.pop_sort:after {
  content: '';
  width: 6px;
  height: 6px;
  position: absolute;
  transform: rotate(45deg);
  background: #fff;
}
.filter .pop_sort {
  width: 175px;
  padding: 10px 5px 15px;
  top: -125px;
  left: -180px;
}
.sort .pop_sort {
  width: 120px;
  padding: 5px 10px;
  bottom: -110px;
  right: -5px;
}
.filter .pop_sort:after {
  top: 43%;
  right: -3px;
}
.sort .pop_sort:after {
  top: -3px;
  right: 22%;
}
.sticky .filter .pop_sort {
  top: 0;
}
.sticky .filter .pop_sort:after {
  top: 10px;
}
.pop_sort .btn_close {
  width: 20px;
  height: 20px;
  position: absolute;
  background: url("../images/icon/icon_close.png") no-repeat;
  background-size: 100%;
}
.filter .pop_sort .btn_close {
  top: -3px;
  left: -3px;
}
.sort .pop_sort .btn_close {
  bottom: -3px;
  right: -3px;
}
/*--- list ---*/
/* 絞り込み */
.pop_ttl {
  margin: 0 0 5px;
  font-size: 12px;
}
.pop_ttl span {
  display: inline-block;
  font-size: 0.7em;
}
.pop_sort dl {
  margin: 0 0 10px;
}
.pop_sort dd ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-left: 3px;
}
.pop_sort dd li {
  display: inline-block;
  margin: 5px 2px 0 0;
  padding: 0 5px;
  border-radius: 18px;
  border: 1px solid #757575;
  line-height: 17px;
  text-align: center;
  cursor: pointer;
  position: relative;
  background: #fff;
}
.pop_sort dd li:last-child {
  margin-right: 0;
}
.pop_sort dd li.active {
  font-weight: bold;
  background: #ffff00;
}
[class^="cat_ttl"] {
  line-height: 17px;
  font-weight: bold;
  color: #fff;
}
.cat_ttl1 {
  background: #ff96c2;
}
.cat_ttl2 {
  background: #f69aff;
}
.cat_ttl3 {
  background: #c78eff;
}
.cat_ttl4 {
  background: #73b9ff;
}
/* 決定 */
.btn_done_wrap {
  justify-content: space-between;
  margin: 20px 5px 0;
  line-height: 18px;
  font-weight: bold;
}
.btn_reset {
  text-decoration: underline;
  color: #ff0000;
  cursor: pointer;
}
.btn_done {
  flex-shrink: 0;
  padding: 0 20px;
  border-radius: 5px;
  color: #fff;
  pointer-events: none;
  background: #aaa;
}
.btn_done.active {
  pointer-events: auto;
  cursor: pointer;
  background: #f81d4e;
}
/* 並び替え */
.sort-list li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 15px;
  text-align: left;
}
.sort-list li:not(:last-child) {
  margin: 0 0 2px;
  padding: 0 0 2px;
  border-bottom: 1px solid #d0d0d0;
}
.sort-list li * {
  cursor: pointer;
}
.sort-list input {
  width: 14px;
  height: 14px;
  margin: 0 4px 0 0;
  border-radius: 14px;
  background: url("../images/icon/icon-radio.png") no-repeat #fff;
  background-size: 100%;
}
.sort-list input:checked {
  background: url("../images/icon/icon-radio_on.png") no-repeat;
  background-size: 100%;
}
/*----- menu -----*/
.ppvicon, .ppvtitle {
  display: table-cell;
  vertical-align: middle;
}
.ppvicon {
  width: 21%;
  padding: 0 7px 0 0;
}
.ppvtitle {
  text-decoration: underline;
  text-align: left;
  font-size: 13px;
  font-weight: bold;
  color: #000;
}
.ppv_top .price {
  margin: 5px 0 0;
  text-align: right;
  font-size: 12px;
  font-weight: normal;
  color: #000;
}
/* history */
.box_history .list-menu01 a span, .ppvhistory .list-menu01 a span {
  display: block;
  text-align: right;
  font-size: 11px;
  margin-right: 5px;
}
/*////////////////////////////////////////////////////////

ppv.do

////////////////////////////////////////////////////////*/
/*----- confirm -----*/
.ppvdo.confirm .box_teller {
  margin: 10px 0;
}
.ppvdo.confirm .box_teller .serif {
  font-size: 11px;
}
.ppvdo .box_pre a {
  display: block;
  text-align: center;
  font-weight: bold;
  color: yellow;
}
.ppv_price {
  padding: 20px 0 0;
  text-shadow: 0 1px 1px #010101;
  font-size: 16px;
}
.ppvdo .subtitle {
  font-size: 12px;
}
.ppvdo .list-menu {
  margin: 5px auto 20px;
}
.ppvdo .tit_sub01 {
  margin: 20px 0 10px;
}
/* アイコン */
.icon-person {
  width: 100%;
  margin: 5px 0 0 auto;
  padding: 0 8px;
  line-height: 20px;
  text-align: right;
  font-weight: bold;
  font-size: 11px;
  color: #fff;
}
.icon-person p {
  display: inline-block;
}
.icon-person .icon {
  color: #fff;
}
.icon-person.一人用 .icon {
  padding-left: 15px;
  background: url(../images/icon/icon-person_wh.png) no-repeat -9px;
  background-size: 9px;
}
.menu_title .icon-person.一人用 .icon {
  background: url(../images/icon/icon-person_wh.png) no-repeat -9px;
  background-size: 17px;
}
.icon-person.二人用 .icon {
  padding-left: 22px;
  background: url(../images/icon/icon-person_wh.png) no-repeat left;
  background-size: 16px;
}
.menu_title .icon-person.二人用 .icon {
  background: url(../images/icon/icon-person_wh.png) no-repeat 0;
  background-size: 17px;
}
/* menu_list */
.menu_list {
  margin: 0 auto 20px;
  padding: 15px 20px 20px;
  background: url("../images/menulist/yudo/bg_top.jpg") no-repeat top, url("../images/menulist/yudo/bg_btm.jpg") no-repeat center bottom -1px, url("../images/menulist/yudo/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.menu_list .list_wrap {
  padding: 10px 5px 0;
}
.menu_list li {
  margin: 0 0 8px;
  padding: 0 0 0 22px;
  line-height: 1.4;
  text-align: left;
  font-size: 13px;
}
.menu_list li:last-child {
  margin-bottom: 0;
}
.menu_list .ic_com_indent {
  display: flex;
  margin: -4px 0 10px;
  font-weight: bold;
  font-size: 0.85em;
}
.ic_com_indent + .ic_com_indent {
  margin-top: -7px;
}
.ic_com_indent:before {
  content: '∟';
  margin: -2px 3px 0 0;
  font-size: 0.8em;
}
.menu_list .icon01 {
  margin: 0 0 7px;
  font-size: 14px;
  font-weight: bold;
  background: url(../images/icon/01.png) no-repeat 1px 1px;
  background-size: 17px;
}
.menu_list .icon02 {
  background: url(../images/icon/02.png) no-repeat 1px 1px;
  background-size: 16px;
}
.menu_list .icon03 {
  background: url(../images/icon/03.png) no-repeat left 1px;
  background-size: 16px;
}
.menu_list .icon04 {
  background: url(../images/icon/00.png) no-repeat 1px 1px;
  background-size: 16px;
}
.menu_list [class^="ic_com"], .menu_list [class^="ic_com"] a, .menu_list .icon01 a, .ic_com_indent {
  color: #fa4bb2;
}
.menu_list .icon02, .menu_list .icon02 a, .menu_list .icon04, .menu_list .icon04 a {
  font-size: 13px;
  color: #fff;
}
.menu_list .icon03, .menu_list .icon03 a {
  font-weight: bold;
  color: yellow;
}
.menu_list .icon04, .menu_list .icon04 a {
  color: #01f9fc;
}
/* パック用文言エリア */
.ppvdo.confirm .text_pack {
  display: block;
  margin: 10px;
  padding: 10px 15px;
  border: 1px solid #ba8787;
  border-radius: 7px;
  text-align: left;
  font-size: 13px;
  background: #fff;
  color: #000;
}
.ppvdo.confirm .text_pack font {
  color: #f92771;
  font-weight: bold;
}
/* 承諾事項 */
.box_approval {
  padding: 0 0 30px;
  text-align: left;
  font-size: 12px;
  color: #000;
  background: rgba(255, 255, 255, 1);
}
.box_approval #approval {
  margin-bottom: 15px;
  line-height: 30px;
  text-align: center;
  color: #fff;
  background: #675e71;
}
.box_approval li {
  margin-bottom: 5px;
}
.box_approval a {
  color: #f92771;
  font-weight: bold;
}
.box_approval .text-canter {
  text-align: center;
}
/*////////////////////////////////////////////////////////

LOOPD

////////////////////////////////////////////////////////*/
.loopD .tenmetsu {
  width: 90%;
  margin: auto;
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
}
.loopD .box_teller {
  min-height: 190px;
  padding-right: 10px;
  background: url("../images/pay/loop/D/teller.jpg") no-repeat;
  background-size: 100%;
}
.loopD .box_teller .serif {
  width: 175px;
  font-size: 13px;
}
/*////////////////////////////////////////////////////////

占者紹介

////////////////////////////////////////////////////////*/
.tellerProfile {
  background: #5900af;
}
.tellerProfile .lead {
  padding: 0 20px 10px;
  text-align: left;
  font-size: 13px;
}
.tellerProfile dt {
  padding: 10px 0 3px 3px;
  font-weight: bold;
  color: #fceb9d;
}
.tellerProfile dl li {
  margin: 0 0 3px;
}
.tellerProfile .tit_sub {
  height: 47px;
  margin: 10px 0 0;
}
/*////////////////////////////////////////////////////////

mypage

////////////////////////////////////////////////////////*/
/* メニュー */
.list-icon li.tutorial {
  background: url(../images/mypage/icon01.png) no-repeat 10px center;
  background-size: 30px;
}
.list-icon li.history {
  background: url(../images/mypage/icon02.png) no-repeat 10px center;
  background-size: 30px;
}
.list-icon li.bookmark {
  background: url(../images/mypage/icon03.png) no-repeat 10px center;
  background-size: 30px;
}
.list-icon li.stamp {
  background: url(../images/mypage/icon04.png) no-repeat 10px center;
  background-size: 30px;
}
.list-icon a {
  padding-left: 45px;
}
#pref {
  margin-bottom: 30px
}
#pref .btn-menu {
  margin: 15px auto;
}
/* プレミアムコード */
.mypage .box_special {
  text-align: left;
}
.mypage .box_special h3 {
  margin: 0 0 10px;
  height: 40px;
  background: #8805fa;
}
.mypage .box_special a {
  font-weight: bold;
  color: deeppink;
}
/*////////////////////////////////////////////////////////

bookmark

////////////////////////////////////////////////////////*/
.bookmark p {
  padding: 0 10px;
}
.bookmark .list-menu02 {
  margin-bottom: 30px;
  text-align: left;
}
.bookmark .list-menu02 li {
  display: flex;
  align-items: center;
  padding-left: 10px;
  color: #fff;
}
.bookmark .list-menu02 a {
  width: 100%;
  margin: auto;
  padding: 10px 20px 10px 10px;
}
.bookmark input[type="checkbox"] {
  display: none;
}
.bookmark input[type="checkbox"] + label {
  flex-shrink: 0;
  position: static;
}
/*////////////////////////////////////////////////////////

tutorial

////////////////////////////////////////////////////////*/
.tutorial p {
  margin-bottom: 0;
}
.tutorial .box_txt {
  padding: 13px 13px 55px 13px;
  text-align: left;
  font-size: 13px;
}
.site_cap {
  margin: 0 20px 40px 20px;
  position: relative;
}
.site_cap span {
  display: inline-block;
  position: absolute;
  bottom: -18px;
  width: 105px;
}
#link01 .site_cap span {
  left: 65px;
}
#link02 .site_cap span {
  left: 123px;
}
#link03 .site_cap span {
  left: 9px;
}
#link04 .site_cap span {
  left: 178px;
}
/*////////////////////////////////////////////////////////

unregist

////////////////////////////////////////////////////////*/
/*----- index -----*/
.box_unregist_notice p {
  padding: 0 10px;
  text-align: left;
}
.box_unregist_notice .icon-hart {
  width: 12px !important;
  margin: 0 5px 0 0;
}
/*----- done -----*/
.unregist .list-icon .line_me {
  background: url(../images/common/icon-line.png) no-repeat 8px center;
  background-size: 33px;
}
.unregist .list-icon .uranavi {
  background: url(../images/common/icon-navi.png) no-repeat 8px center;
  background-size: 33px;
}
.unregist .list-icon .mag {
  background: url(../images/common/icon-mag.png) no-repeat 8px center;
  background-size: 33px;
}
.unregist .list-icon .kantei {
  background: url(../images/common/icon-kantei.png) no-repeat 8px center;
  background-size: 33px;
}
.unregist .list-icon a {
  padding-left: 50px;
}
.unregist .list-icon span {
  font-size: 0.9em;
}
/*////////////////////////////////////////////////////////

プレゼントキャンペーン

////////////////////////////////////////////////////////*/
.present_entry .menu_title {
  justify-content: center;
  margin: 0 0 10px;
  text-align: center;
}
.present_entry .detail {
  padding: 0 10px;
  text-align: left;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.present_entry .detail dt {
  margin: 20px 0 5px;
  padding-left: 25px;
  font-weight: bold;
  font-size: 13px;
  background: url(../images/icon/02.png) no-repeat left;
  background-size: 18px;
}
.present_entry .txt_notice {
  margin: 0;
  padding: 0 0 5px 10px;
  text-indent: -11px;
  font-size: 11px;
}
.present_entry .box_notice li:not(:last-child) {
  margin: 0 0 5px;
}
.present_banner {
  margin: 5px 0 15px;
  padding: 0 10px;
}
.present_banner.open-0, .present_banner.open-2, .present_banner02.open-0, .present_banner02.open-2 {
  display: none;
}
.present_banner.open-1, .present_banner02.open-1 {
  display: block;
}
.present_entry h2 span {
  font-size: 13px;
}
.present_entry .box_flow {
  background: #fff;
}
.present_entry .box_flow .inner {
  padding: 20px 0;
}
.present_entry .tit {
  text-align: left;
  font-size: 14px;
  font-weight: bold;
  position: relative;
  margin: 0 0 0 0;
  padding: 10px 10px 10px 30px;
  font: bold;
  color: #666;
  background: #ccc;
  border-top: #ccc solid 1px;
  border-right: #999 solid 1px;
  border-bottom: #999 solid 1px;
  border-left: #ccc solid 1px;
  text-shadow: 1px 1px 0 rgb(255 255 255);
  box-shadow: 0 0 0 1px rgb(255 255 255 / 50%) inset;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(220, 220, 220, 1.0)), color-stop(0.25, rgba(240, 240, 240, 1.0)), color-stop(0.30, rgba(235, 235, 235, 1.0)), color-stop(0.36, rgba(240, 240, 240, 1.0)), color-stop(0.50, rgba(235, 235, 235, 1.0)), color-stop(0.80, rgba(215, 215, 215, 1.0)), to(rgba(210, 210, 210, 1.0)));
  background-image: -webkit-linear-gradient(top, rgba(220, 220, 220, 1.0), rgba(240, 240, 240, 1.0) 25%, rgba(235, 235, 235, 1.0) 30%, rgba(240, 240, 240, 1.0) 36%, rgba(235, 235, 235, 1.0) 50%, rgba(215, 215, 215, 1.0) 80%, rgba(210, 210, 210, 1.0));
  background-image: -moz-linear-gradient(top, rgba(220, 220, 220, 1.0), rgba(240, 240, 240, 1.0) 25%, rgba(235, 235, 235, 1.0) 30%, rgba(240, 240, 240, 1.0) 36%, rgba(235, 235, 235, 1.0) 50%, rgba(215, 215, 215, 1.0) 80%, rgba(210, 210, 210, 1.0));
  background-image: -o-linear-gradient(top, rgba(220, 220, 220, 1.0), rgba(240, 240, 240, 1.0) 25%, rgba(235, 235, 235, 1.0) 30%, rgba(240, 240, 240, 1.0) 36%, rgba(235, 235, 235, 1.0) 50%, rgba(215, 215, 215, 1.0) 80%, rgba(210, 210, 210, 1.0));
  background-image: linear-gradient(to bottom, rgba(220, 220, 220, 1.0), rgba(240, 240, 240, 1.0) 25%, rgba(235, 235, 235, 1.0) 30%, rgba(240, 240, 240, 1.0) 36%, rgba(235, 235, 235, 1.0) 50%, rgba(215, 215, 215, 1.0) 80%, rgba(210, 210, 210, 1.0));
}
.present_entry .tit:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 15px;
  width: 0;
  height: 100%;
  border-left: #ccc solid 1px;
}
.present_entry .tit:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 16px;
  width: 0;
  height: 100%;
  border-right: #eee solid 1px;
}
.present_entry .na {
  width: 94%;
  margin: 0 auto;
  font-size: 13px;
  font-weight: bold;
  color: #592b30;
  letter-spacing: 0;
  border: 1px solid #f49b7a;
  border-radius: 6px;
  text-decoration: none;
  padding: 15px 25px;
  background-color: #f5b5a0;
  line-height: 1.4;
  text-align: left;
}
.present_entry .box_flow img {
  width: 32px !important;
}
.present_entry .entry_require {
  line-height: 1.4;
  text-align: left;
  font-size: 13px;
  margin: 0 7px 20px 7px;
  font-weight: bold;
}
.present_entry .entry_require span {
  font-size: 12px;
  font-weight: normal;
}
.present_entry .entry_kome {
  text-align: left;
  font-size: 11px;
  padding: 12px 10px 15px 10px;
  background: #6921a0;
  margin-bottom: 0;
  color: #fff;
}
.present_entry .entry_arrow {
  text-align: center;
  margin: 10px auto;
  width: 32px;
}
.present_entry .box_t {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  font-size: 80%;
  line-height: 1.4;
}
.box-entry {
  background: #fff;
  color: #333631;
  text-align: left;
}
.present_entry form {
  width: 90% !important;
  margin: 20px auto 0 auto;
}
.box-entry .pink {
  color: #ff0066;
}
.box-entry label.label_txt {
  border-bottom: dotted 1px #ff0066;
  border-left: solid 3px #ff0066;
  padding: 5px;
  width: 90%;
  margin: 0 10px 10px 10px;
  display: block;
  font-weight: bold;
  line-height: 1;
  font-size: 13px;
}
.input-layout {
  width: 88%;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  border: 1px solid #ccc;
  outline: none;
  border-radius: 5px;
  margin-left: 10px;
  margin-bottom: 15px;
}
.box-entry .title3 {
  color: hsl(0, 50%, 50%);
  padding-left: 5px;
  border-left: 10px solid hsl(0, 50%, 50%);
  text-align: left;
  font-weight: bold;
  font-size: 13px;
}
.box-entry .box_t2 {
  width: 100%;
  margin: 10px auto 5px auto;
  font-size: 80%;
  line-height: 1.4;
}
.box-entry .privacy {
  background: #f5b5a0;
  padding: 10px;
  font-size: 80%;
  line-height: 1.4;
  margin-bottom: 15px;
}
.box-entry .dou {
  margin: 20px auto 0;
  font-size: 15px;
  font-weight: bold;
}
.box-entry .dou label {
  display: flex;
  align-items: center;
  justify-content: center;
}
.box-entry .dou input {
  width: 18px;
  height: 18px;
  margin-right: 5px;
  -webkit-appearance: auto;
}
#disableButton {
  margin: auto;
  width: 100%;
  height: 80px;
  border: 0 !important;
  background: url(../images/pay/present_entry/btn01.png) no-repeat center;
  background-size: 90%;
  background-position: 50%;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  margin-bottom: 15px;
}
.present_entry .bg_box {
  background: #fff;
  font-size: 24px;
  padding: 20px 0 35px 0;
  color: red;
  font-weight: bold;
}
.present_entry .bg_box span {
  display: block;
  border-radius: 3px;
  border: 2px solid #fd0807;
  padding: 15px 0;
  margin: 0 20px;
}
.present_entry .bg_box a {
  color: red;
}
.present_entry p.des {
  margin-right: auto;
  margin-left: auto;
  font-size: 12px;
  line-height: 1.4;
  padding: 10px 0 0 0;
  width: 88%;
  margin-bottom: 0;
}
.present_entry p.des span {
  font-size: 87%;
  display: block;
  padding: 8px;
  background: #f5b5a0;
  border-radius: 4px;
  margin-top: 5px;
}
.present_entry .confirm_entry {
  text-align: center;
  margin: 20px 0 0 0;
  padding-bottom: 15px;
}
.present_entry .confirm_entry input {
  padding: 10px 20px;
  margin: 5px;
  border: 1px solid #7f7f7f;
  background: #efefef;
  color: #2c2c2c;
  border-radius: 2px;
  font-size: 12px;
  line-height: 1;
}
.present_entry .txt_entry_mail {
  padding: 0 18px;
}
.present_entry .fin_txt {
  padding: 10px;
  text-align: left;
  font-size: 13px;
}
.present_entry .entry_title_box {
  padding: 15px 0 20px 0;
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 20px;
  background: url(../images/line/01.png) no-repeat left bottom #663399;
  background-size: 100% auto;
  text-shadow: 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0, 0 0 6px #8537f0;
}
.present_entry .entry_title_box span {
  color: #f6f200;
}
.present_entry .c_txt {
  background: url(../images/line/02.png) no-repeat left bottom, url(../images/line/02.png) no-repeat left top #7d47a7;
  background-size: 100% auto;
  font-weight: bold;
  padding: 20px 0;
  margin-bottom: 15px;
  font-size: 15px;
}
.present_entry .kome {
  margin: 0 13px 20px 13px;
  font-weight: normal;
}
.present_entry .kome li {
  padding-left: 1em;
  text-indent: -1em;
}
/*////////////////////////////////////////////////////////

キャンペーン施策

////////////////////////////////////////////////////////*/
.pay_top .campaign.open-1 {
  display: block;
}
.pay_top .campaign.open-0, .pay_top .campaign.open-2 {
  display: none;
}
.pay_top .campaign {
  color: #000;
  border: 7px solid red;
  padding: 15px;
  background-color: #fff;
  margin: 25px 10px 25px;
  border-radius: 20px;
}
.pay_top .campaign p {
  font-size: 15px;
}
.pay_top .campaign p a {
  color: red;
}
.pre_campaign {
  word-break: break-all;
}
.pre_campaign .title_bg {
  background: #e8e8f0;
  padding: 15px;
  font-size: 17px;
  font-weight: bold;
}
.pre_campaign .title_bg span {
  color: red;
}
.pre_campaign .text {
  margin: 15px 15px 25px;
  text-align: left;
  font-size: 12px;
}
.pre_campaign .text.indent {
  text-indent: -1em;
  padding-left: 1em;
}
.pre_campaign .text-cam {
  margin: 15px 15px 25px;
  text-align: left;
  font-size: 13px;
  font-weight: bold;
}
.pre_campaign .box_ticket_menu {
  width: 95%;
  margin: 0 auto;
}
.pre_campaign .box_ticket_menu li {
  padding: 10px 5px;
}
.campaign_tokuten {
  margin: 0 8px 25px 8px;
}
.campaign_tokuten dt {
  text-align: left;
  background: #8117e1;
  font-weight: bold;
  padding: 5px 5px 5px 7px;
  margin-bottom: 15px;
  color: #fff;
}
.campaign .ticket_use .inner_box {
  position: relative;
}
.campaign .ticket_use .inner_box input[type="reset"].btn_cancel {
  position: absolute;
  top: 5px;
  right: 5px;
}
.site-btn a {
  display: block;
  text-decoration: none;
  font-size: 15px;
  padding: 15px 0;
  border-radius: 20px;
  margin: 0 10px;
  line-height: 1.4;
  font-weight: bold;
  border: 2px solid #ecca7d;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ffffff), color-stop(1, #f6eba6));
  background-image: -moz-linear-gradient(top, #ffffff 0%, #f6eba6 100%);
  background-image: linear-gradient(to bottom, #ffffff 0%, #f6eba6 100%);
  color: #000;
  text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}
.site-btn.l a {
  font-size: 19px;
}
.campaign .em {
  background: #e117b5;
  color: #fff;
  margin: 0 15px;
  font-weight: bold;
  padding: 8px 0;
  line-height: 1;
  font-size: 16px;
}
.kaikin.open-1 .before, .kaikin.open-0 .after {
  display: none;
}
.kaikin.open-1 .after, .kaikin.open-0 .before {
  display: block;
}
.cam-step {
  margin-bottom: 30px;
}
.cam-step h3 {
  text-align: left;
  background: #8117e1;
  font-weight: bold;
  padding: 5px 5px 5px 7px;
  margin-bottom: 10px;
  color: #fff;
}
.cam-step p.txt {
  font-weight: bold;
  padding: 0 5px;
}
.cam-step p.txt.text-left {
  padding: 0 5px 0 10px;
}
.campaign.index img {
  width: 100%;
}
.download {
  width: 150px;
  margin: 0 auto;
}
/*////////////////////////////////////////////////////////

割引キャンペーンsale

////////////////////////////////////////////////////////*/
.sale-box.disp-0, .sale-box.disp-2, .sale-anchor.disp-0, .sale-anchor.disp-2 {
	display: none;
}
.sale-box.disp-1, .sale-anchor.disp-1 {
	display: block;
}
.sale-box .sale-tit {
	line-height: 1;
	padding: 8px 0;
	font-weight: bold;
	margin-bottom: 5px;
	font-size: 16px;
	color: #fff;
	background: yellow;
	color: #ff4b1b;
}
.sale-box .sale-here {
	font-size: 17px;
	font-weight: bold;
	background: #9576e7;
	padding: 30px 0;
	margin-bottom: 5px;
}
.sale-box .sale-here a {
	color: #ffff00!important;
}
.sale-site {
	background: red;
	color: #ffff00;
	padding: 7px 0;
	font-weight: bold;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #ffff00;
	border-bottom: 1px solid #ffff00;
}
.sale-box ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5px 0;
  padding: 10px 5px;
  background: 
    radial-gradient(#c7c7c7 22%, transparent 22%) 0 0 / 6px 6px,
    radial-gradient(#c7c7c7 22%, #f2f2f2 22%) 3px 3px / 6px 6px;  
}
.sale-box li {
  width: 153px;
  border-radius: 8px;
  border: 1px solid #ccc;
  box-shadow: 0 2px 0 0 rgba(0,0,0,0.1);
  background: #fff;
  box-sizing: border-box;
  padding: 10px;
}
.sale-box li p {
  font-weight: bold;
  font-size: 11px;
  margin: 0;
}
.sale-box li p:nth-child(1) {
  margin-bottom: 6px;
}
.sale-box li p:nth-child(2) {
  position: relative;
  margin: 0 76px 5px 0;
}
/* 1カラム表示 */
.sale-box li.one-column {
  width: 310px;
}
.sale-box li.one-column p {
  font-size: 13px;
}
.sale-box li.one-column p:nth-child(2) {
  margin: 0 236px 5px 0;
}
.sale-box li p:nth-child(2)::before {
  content: "";
  position: absolute;
  left: 60px;
  top: 2px;
  width: 26px;
  height: 15px;
}
.sale-box li p:nth-child(2).two::before {
  background: url(../images/icon/icon-person.png) top / 100% no-repeat;
}
.sale-box li p:nth-child(2).one::before {
  background: url(../images/icon/icon-person.png) top / 100% no-repeat;
  background-position: -13px
}
.sale-box li a {
	display: block;
	color: #000;
	text-align: left;
	line-height: 1.4;
  width: 100%;
  height: 100%;
}
.sale-em {
	color: #f00;
	font-weight: bold;
	font-size: 15px;
}
.sale-menu {
	text-decoration: underline;
}
.sale-box .open-0, .sale-box .open-2 {
	display: none;
}
.sale-box .open-1 {
	display: block;
}
.sale-box .open-1.time-0, 
.sale-box .open-1.time-2{
	display: none;
}
.sale-box .open-1.time-1{
	display: block;
}
/*タイマー*/
.sale-wrap {
	position: relative;
	/* min-height: 225px; */
	padding-bottom: 1px;
  background: #333;
}
.sale-box .sale_box-count {
  background: url(../images/pay/bg_count2.png) no-repeat top;
  background-size: 100% auto;
	width: 300px;
	height: 40px;
	line-height: 40px;
	color: red;
	margin: 0 auto;
	position: absolute;
	bottom: 6px;
	left: 0;
	right: 0;
}

.sale-box .sale_box-count .sale-menu font {
	font-size: 14px;
}

.sale-box .sale_box-count .inner {
	text-align: center;
	/*color: #fa3011;*/
	font-size: 16px;
	font-weight: bold;
}

.sale-box .sale_box-count .inner span#sale_countdown, .sale-box .sale_box-count .inner span#sale_countdown2, 
.sale-box .sale_box-count .inner span#sale_countdown3, .sale-box .sale_box-count .inner span#sale_countdown4,
.sale-box .sale_box-count .inner span#sale_countdown5{
	color: #000;
}

.sale-box .sale_box-count.switch-0 .second,.sale-box .sale_box-count.switch-1 .first{
	display: none;
}

/* 800番台 */
.ppv_num_check.disp-0 {
	display: none;
}
.ppv_num_check.disp-1 {
	display: none;
}

/* 占いの日クーポン */
.sale_coupon_box {
  border: 10px solid #c00; /* フレームの色（クリスマスらしい赤） */
  border-radius: 10px;
	margin: 10px 10px 20px;
  padding: 10px; 
  background: #00953f;
  position: relative;
}

.sale_coupon_box:before {
  content: '';
  position: absolute;
  top: -10px;
  left: -10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff;
  border: 5px solid #c00;
  z-index: 1;
}

.sale_coupon_box:after {
  content: '';
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #fff; 
  border: 5px solid #c00;
  z-index: 1;
}

.sale_coupon_box h4{
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
}

.sale_coupon_box p.text{
	color: red;
	font-size: 16px;
	font-weight: bold;
	text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}
.sale_coupon_box p.period{
	color: yellow;
	font-size: 13px;
	margin: 5px 0 10px;
}
.sale_coupon_box form {
	width: 90%;
	margin: 0 auto;
	position: relative;
	margin-top: 1px;
}
.sale_coupon_box input {
	width: 100%;
	border: 1px solid #977c0f;
	background-color: #fff;
	color: #350000;
	padding: 5px;
	text-align: center;
	border-radius: 5px;
	box-sizing: border-box;
}
.sale_coupon_box input.use_btn {
	width: 65px;
	min-height: 18px;
	padding: 0;
	display: block;
	background: url(../images/pay/stamp/stamprally/btn_get.png) no-repeat;
	background-size: 100%;
	border: none;
	position: absolute;
	top: 5px;
	right: 15px;
}


/*////////////////////////////////////////////////////////

相互送客

////////////////////////////////////////////////////////*/
.banner_mutual {
  margin-bottom: 30px;
}
.banner_mutual.open-0, .banner_mutual.open-2 {
  display: none;
}
.banner_mutual.open-1 {
  display: block;
}
.banner_mutual .txt {
  font-weight: bold;
  font-size: 13px;
}
.banner_mutual .txt span {
  font-size: 16px;
}