@charset "utf-8";
@font-face {
  font-family: 'DS-DIGI';
  src: url("fonts/DS-DIGI.TTF") format('truetype');
}
/*////////////////////////////////////////////////////////

common

////////////////////////////////////////////////////////*/
section {
  margin-bottom: 20px;
}
section section:last-child {
  margin-bottom: 0;
}
aside {
  padding: 0 10px 20px;
}
/* 汎用box
------------------------- */
.flex-box {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.flex-box.col2 {
  justify-content: space-between;
}
.flex-box.col2 > li,
.flex-box.col2 > div,
.flex-box.col2 > img {
  width: 49%;
}
.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;
}
[class^="box_"] {
  position: relative;
  clear: both;
}
/* 注釈 */
.box_notice {
  width: 92%;
  margin: 10px auto 15px;
  padding: 10px;
  border: 1.5px solid #d5c163;
  border-radius: 8px;
  font-size: 11px;
  font-weight: bold;
}
/* 【削除禁止】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, .join_member_on_48 {
  display: none;
  position: relative;
}
.join_member-0 .join_member_off, .join_member-1 .join_member_on, .join_member-1 .join_member_on_48 {
  display: block;
}
.unpaido-0 .unpaido_off, .unpaido-1 .unpaido_on {
  display: block;
}
/*----- バナー出し分け -----*/
.bnr .open-0, .bnr .close-1,
.slider .open-0 {
  display: none;
}
.bnr.open-0, .bnr.open-2,
.bnropen-0,
.bnrlink-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;
}
/*----- docomo出し分け -----*/
.disp-docomo .common, .disp-common .docomo {
  display: none;
}
.disp-docomo .docomo, .disp-common .common {
  display: block;
}
.disp-docomo .lead .docomo, .disp-common .lead .common {
  display: inline;
}
/*----- 注釈出し分け -----*/
.notice-0 {
  display: none;
}
/*----- 1人用/2人用経由入会出し分け -----*/
[class^="join_member_pr"] {
  display: none;
}
.join_member_pr1-1, .join_member_pr2-2 {
  display: block;
}
/* 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.2;
  }
}
@-moz-keyframes tenmetsu {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
@keyframes tenmetsu {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0.2;
  }
}
.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);
  }
}
.float.fuki {
  margin: -10px auto -5px;
  padding: 0 15px;
}
.float.fuki2 {
  margin: -5px auto -60px;
  padding: 0 15px;
}
.float2 {
  -webkit-animation: float2 3s ease-in infinite alternate;
  animation: float2 3s ease-in infinite alternate;
  transform-origin: 50% 50%;
}
@-webkit-keyframes float2 {
  0% {
    transform: translate3d(0, -3px, 0) rotate(-5deg);
  }
  50% {
    transform: translate3d(-2px, 3px, 0) rotate(2deg);
  }
  100% {
    transform: translate3d(0, -3px, 0) rotate(0deg);
  }
}
@keyframes float2 {
  0% {
    transform: translate3d(0, -3px, 0) rotate(-5deg);
  }
  50% {
    transform: translate3d(-2px, 3px, 0) rotate(2deg);
  }
  100% {
    transform: translate3d(0, -3px, 0) rotate(0deg);
  }
}
/*////////////////////////////////////////////////////////

共通パーツ

////////////////////////////////////////////////////////*/
/* 共通背景
------------------------- */
/*--- default ---*/
._bg {
  padding: 13px 13px 15px;
  color: #fff;
  background: url(../images/common/bg1.jpg) repeat-y;
  background-size: 100%;
}
._bg h2 {
  margin: -5px -10px 5px;
}
[class*="_bg"] .list_menu {
  padding: 0;
}
/* list_menu
------------------------- */
/*----- デフォルト -----*/
.list_menu {
  padding: 8px;
}
.list_menu li {
  margin: 0 0 5px;
  position: relative;
  border-radius: 5px;
  text-align: left;
  font-weight: bold;
  color: #333;
  background: #fff;
}
.list_menu li:last-child {
  margin: 0;
}
.list_menu li.new {
  background: #fff;
}
.list_menu li a {
  padding: 8px 20px 8px 10px;
}
.list_menu a {
  display: block;
  position: relative;
  line-height: 1.3;
  text-decoration: none;
  color: #4b2b00;
}
.list_menu li a:after, .btn_more a:after, .arrow:after {
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 8px;
}
.list_menu li a:after, .arrow:after {
  border-color: transparent transparent transparent #000;
}
.arrow {
  position: relative;
}
.arrow.white:after {
  border-color: transparent transparent transparent #fff;
}
/*--- もっと見る ---*/
.btn_more {
  margin: 8px 0 0;
  text-align: right;
}
.btn_more a {
  display: inline-block;
  padding: 0 18px 0 15px;
  border-radius: 20px;
  line-height: 22px;
  font-size: 11px;
  color: #fff;
  position: relative;
  background: #c52ee5;
}
.btn_more a:after {
  border-color: transparent transparent transparent #fff;
  transform: translateY(-55%) scale(.9, .9);
}
.list_menu .btn_more a {
  color: #333;
  background: #fff;
}
.list_menu .btn_more a:after {
  border-color: transparent transparent transparent #000;
}
/*[class*="free_"] .btn_more a {
  padding: 0;
  border: 0;
  pointer-events: none;
  text-decoration: none;
  text-indent: 0;
  font-weight: bold;
  color: #281605;
  background: none !important;
}
[class*="free_"] .btn_more a:after {
  content: none;
}
/* img */
.btn_more_img {
  margin: 5px 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 -5px 4px 0;
  padding: 0 2px 2px;
  font-size: 10px;
  border-bottom: 1px solid #575757;
}
.icon-ppv .days {
  order: 2;
  padding: 1px 0 0 2px;
}
.icon-ppv:before, .icon-ppv:after {
  content: '';
  order: 1;
  height: 100%;
  margin-right: 5px;
}
.icon-ppv:before {
  width: 45px;
  background: url(../images/icon/icon-ppv.png) no-repeat center;
  background-size: 100%;
}
.icon-ppv:after {
  width: 20px;
}
.icon-ppv.one:after {
  width: 10px;
  background: url(../images/icon/icon-person.png) no-repeat left center;
  background-size: 20px;
}
.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: 43px;
}
/*----- 新着サムネイル -----*/
.list_menu.thumbnail ul {
  align-items: stretch;
  padding: 0;
}
.list_menu.thumbnail li {
  border-radius: 3px;
}
.list_menu.thumbnail li:nth-last-of-type(-n+2) {
  margin-bottom: 0;
}
.list_menu.thumbnail li a {
  padding: 7px;
}
.list_menu.thumbnail li a:after {
  content: none;
}
.list_menu.thumbnail li.new:after,
.list_menu.thumbnail .icon-ppv {
  margin: 0;
  transform: scale(.8, .8);
  transform-origin: left bottom;
}
.list_menu.thumbnail li.new:after {
  top: -6px;
  left: -2px;
}
.list_menu.thumbnail .icon-ppv {
  border-bottom: 0;
  font-size: 10px;
}
.list_menu.thumbnail .ppvtitle {
  font-size: 11px;
}
/*----- ランキング -----*/
/*--- アイコン ---*/
.list_menu .rankingicon {
  display: inline-block;
  margin-right: 2px;
  padding: 0 10px;
  border-radius: 2px;
  line-height: 15px;
  font-size: 10px;
  font-weight: bold;
  color: #fff;
}
.list_menu li.new,
.list_menu.ranking li:nth-child(1) {
  background: linear-gradient(to right, #f1d767 0%, #fff 50%, #f1d767 100%);
}
.list_menu.ranking li:nth-child(1) .rankingicon {
  background-color: #948100;
}
.list_menu.ranking li:nth-child(2) .rankingicon {
  background-color: #4599d4;
}
.list_menu.ranking li:nth-child(3) .rankingicon {
  background-color: #d3721b;
}
.list_menu.ranking li:nth-child(4) .rankingicon,
.list_menu.ranking li:nth-child(5) .rankingicon {
  background-color: #00a475;
}
.list_menu.ranking .text-right {
  margin: 0;
  padding: 7px 5px 0;
  font-size: 11px;
}
/*----- deliレコメンド -----*/
.list_menu.deli li {
  margin-top: -25px;
  box-shadow: 0 0 8px #bc00ff inset, 0 0 8px #bc00ff inset, 0 0 12px #bc00ff inset;
}
.list_menu.deli li a {
  padding-bottom: 15px;
}
/*----- アンケート別レコメンド -----*/
.list_menu.recommend {
  padding: 0 20px 40px;
  background: url("../images/result/parts/bg_btm_red.jpg") no-repeat bottom, url("../images/result/parts/bg_mid_red.jpg") repeat-y;
  background-size: 100%;
}
.list_menu.recommend li {
  margin-top: -10px;
  text-align: center;
  font-size: 24px;
  background: url("../images/jiki/bg.png") no-repeat;
  background-size: 100% 100%;
}
.list_menu.recommend li a {
  padding: 20px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-shadow: 0 0 2px #000, 0 0 2px #000, 0 0 2px #000, 0 0 2px #000, 0 0 3px #000, 0 0 5px #000;
  color: #fff;
}
.list_menu.recommend li a:after {
  border-color: transparent transparent transparent #fff;
}
/*----- ppv -----*/
.list_menu.ppv {
  position: relative;
  margin-top: -1px;/*線消し*/
  padding-bottom: 15px;
  background-image: url("../images/common/bg_pattern.png");
  background-repeat: repeat;
  background-size: 32px;
}
.list_menu.ppv:after {
  content: '';
  width: 100%;
  height: 40px;
  position: absolute;
  bottom: -13px;
  left: 0;
  background: url("../images/line/02.png") no-repeat bottom;
  background-size: 100%;
}
.list_menu.ppv.red {
  background-color: #df2f50;
}
.list_menu.ppv.pink {
  background-color: #c73484;
}
.list_menu.ppv.orange {
  background-color: #cb431f;
}
.list_menu.ppv.violet {
  background-color: #36005f;
}
.list_menu.ppv.purple {
  background-color: #b64bcd;
}
.list_menu.ppv.blue {
  background-color: #118ba1;
}
.list_menu.ppv.yellow {
  background-color: #c1b41f;
}
.list_menu.ppv ul {
  margin-bottom: 10px;
  padding: 5px;
  box-shadow: 0 0 5px #dbd0ce inset, 1px 1px 2px #97845a;
  border: 1px solid #c7ae49;
  border-radius: 3px;
  background: #faf9f5;
}
.list_menu.ppv li {
  margin: 0;
  border-bottom: 1px solid #c7ae49;
  border-radius: 0;
  background: none;
}
.list_menu.ppv li:last-child {
  border: 0;
}
.list_menu.ppv li a {
  padding-left: 5px;
}
/*----- チュートリアル -----*/
.list_menu.tutorial li {
  border-radius: 3px;
  background: #fff;
}
.list_menu.tutorial li a:after {
  transform: translateY(-50%) rotate(90deg);
}
/*----- 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: 15px auto 20px;
}
/* 背景テキスト */
.btn_ppvmenu {
  display: table;
  clear: both;
}
.btn_ppvmenu a {
  display: table-cell;
  vertical-align: middle;
  width: 320px;
  height: 150px;
  padding: 45px 40px 35px;
  position: relative;
  line-height: 1.3;
  text-decoration: underline;
  text-align: left;
  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;
  font-size: 14px;
  font-weight: bold;
  color: #3a1b06;
  background: url("../images/btn/btn_bg_ppv.png") no-repeat center;
  background-size: 92%;
}
.btn_ppvmenu:last-of-type a {
  margin-bottom: 0;
}
.btn_ppvmenu span {
  font-size: 1.05em;
  color: red;
}
/* margin調整 */
.list_menu + .btn_ppv,
.btn_ppvmenu + .btn_ppv {
  margin-top: 10px;
}
.btn_ppvmenu li + li {
  margin-top: 5px;
}
.list_menu + .btn_ppvmenu {
  margin-top: 8px;
}
/* ラベル
------------------------- */
.obi {
  display: inline-block;
  padding: 4px 10px;
  box-shadow: 1px 1px 2px rgba(0, 0, 0, .3);
  position: absolute;
  top: -2px;
  left: -10px;
  transform: scale(.8, .8) rotate(-10deg);
  transform-origin: left top;
  line-height: 1;
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  background: #f601e2;
}
.obi.two {
  background: #4f20ff;
}
/* lead
------------------------- */
.lead {
  padding: 5px 10px;
  text-align: left;
  position: relative;
  overflow: hidden;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.lead p:last-of-type {
  margin-bottom: 0;
}
/* popup
------------------------- */
.box_notice_popup {
  display: none;
  width: 100%;
  height: 100%;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  text-align: left;
  background: rgba(0, 0, 0, .5);
}
.box_notice_popup.disp-1 {
  display: block;
}
.box_notice_popup .inner {
  width: 250px;
  margin: auto;
  padding: 10px 15px;
  border: 2px solid #7800FF;
  border-radius: 10px;
  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: -8px;
  right: -8px;
  z-index: 100;
  background: url(../images/icon/icon_close_purple.png) no-repeat;
  background-size: 100%;
}
.box_notice_cap {
  margin: 0 0 8px;
  padding: 0 0 4px;
  border-bottom: 1px solid #7800FF;
  line-height: 1.3;
  text-align: center;
  color: #7800FF;
}
.box_notice_popup dl {
  font-weight: bold;
}
.box_notice_popup dd {
  font-size: .9em;
}
.box_notice_popup li {
  margin: 0 0 3px;
  font-size: 11px;
}
.box_notice_popup a {
  color: deeppink;
}
.box_notice_popup .icon_share {
  width: 15px;
  margin: 0 1px;
  vertical-align: -3px;
}
.box_notice_popup input {
  width: 100%;
  border: 0;
  text-align: center;
}
/*////////////////////////////////////////////////////////

無料TOP

////////////////////////////////////////////////////////*/
[class*="free_top"],
[class*="free_index"] {
  padding: 0 0 40px;
}
[class*="free_top"] section,
[class*="free_top"] p {
  margin-bottom: 0;
}
/*----- 帯 -----*/
[class*="free_top"] .main_obi {
  padding: 5px;
  line-height: 1.3;
  font-weight: bold;
  font-size: 15px;
  color: #fff;
  background: #ff0066;
}
[class*="free_top"] .main_obi span {
  color: yellow;
}
[class*="free_top"] .main_visual {
  position: relative;
}
/*----- btn -----*/
/* 無料占い */
.box_ff {
  height: 350px;
  padding: 100px 0 0;
  background: url("../images/free/03.jpg") no-repeat;
  background-size: 100%;
}
.btn_free {
  justify-content: space-between;
  padding: 0 8px;
  position: absolute;
  bottom: 5px;
  left: 0;
}
.btn_free li {
  width: 49%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.btn_free a {
  display: block;
  height: 100%;
  width: 100%;
}
.btn_free .pointer {
  right: 0;
  bottom: 0;
}
/* 会員登録ボタン */
.btn-regist {
  margin: 12px auto 15px;
  position: relative;
  z-index: 1;
}
.btn-regist a {
  display: block;
  width: 80%;
  height: 70px;
  margin: auto;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  background: url(../images/btn/btn_regist.png) no-repeat;
  background-size: 100%;
}
/*----- slider -----*/
[class*="free_top"] .bxslider_wrap {
  background: url("../images/common/bg3.jpg") no-repeat center -410px;
  background-size: 100%;
}
/*////////////////////////////////////////////////////////

free fortune

////////////////////////////////////////////////////////*/
.free_top .free_fortune {
  background: url("../images/free/form/bg.jpg") no-repeat top;
  background-size: 100%;
}
[class*="free_top"] .ff_fuki {
  margin: -40px 5px;
}
.ff_fuki {
  margin: 5px 0 -40px;
}
.tit_ff {
  margin: 0 -15px;
  position: relative;
}
.tit_ff span {
  display: block;
  width: 100%;
  padding: 0 20px;
  text-shadow: 0 1px 2px #000, 0 0 3px #000, 0 0 3px #000;
  font-size: 12px;
  font-weight: bold;
  color: #f1ea9f;
  position: absolute;
  left: 0;
  bottom: 20px;
}
.ff_name {
  margin: 5px -10px 8px;
  text-align: center;
}
/*----- form -----*/
.form_wrap {
  padding: 30px 20px;
  color: #000;
  background: url("../images/line/03.png") no-repeat top, url("../images/line/03.png") no-repeat bottom, url("../images/free/form/bg_mid.jpg") repeat-y;
  background-size: 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%;
  margin: 0 -3px 0 0;
  position: relative;
  border-radius: 4px 0 0 4px;
  line-height: 33px;
  font-weight: bold;
  font-size: 12px;
  color: #fff;
  background: #216377;
}
.form_wrap input[type="text"], .form_wrap select {
  width: 100%;
  height: 33px;
  margin: 0;
  padding: 0;
  border: 1px solid #555;
  line-height: 33px;
  font-weight: bold;
}
.form_wrap input[type="text"] {
  padding: 0 7px;
}
.form_wrap select {
  width: 60px;
  padding: 0 8px;
  background: url(../images/icon/arrow_select.png) no-repeat 94% center #fff;
  background-size: 7px;
}
/* 性別 */
.select_wrap {
  flex-wrap: nowrap;
  position: relative;
}
.select_wrap:not(:last-child) {
  margin: 0 0 20px;
}
.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: 45px;
}
.select_wrap span {
  padding: 14px 2px 0 2px;
  font-size: 10px;
  font-weight: bold;
}
/* 注意文言 */
.form_wrap .att {
  margin: 7px 0 12px;
  line-height: 1;
  font-size: 10px;
  color: #333;
}
/*--- 占うボタン ---*/
.btn_ff {
  width: 70%;
  margin: 15px auto 0;
}
/*////////////////////////////////////////////////////////

月額TOP

////////////////////////////////////////////////////////*/
.menu > h2 {
  margin-bottom: -100px;
  position: relative;
  z-index: 1;
}
/*----- 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;
}
/*----- main_visual -----*/
.main_visual {
  margin-bottom: 0;
}
/* メッセージ */
.main_visual .box_ p {
  width: 100%;
  margin: 0;
  padding: 0 35px;
  font-size: 12px;
  font-weight: bold;
  color: #2b2518;
  position: absolute;
  bottom: 90px;
  left: 0;
}
.btn_today_msg {
  display: block;
  width: 70%;
  height: 40px;
  margin: auto;
  position: absolute;
  bottom: 25px;
  left: 0;
  right: 0;
}
/* メインメニュー */
/*.box_menu {
  padding: 10px;
  background: #7222aa;
}
.box_menu ul {
  justify-content: space-between;
}
.box_menu li {
  border-radius: 5px;
}
.box_menu li:not(.w-100) {
  width: 49.33%;
  font-size: 12px;
}
.box_menu li:nth-last-child(-n+2) {
  margin: 0;
}
.box_menu li a {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  min-height: 42px;
  padding: 7px 13px 7px 7px;
  line-height: 1.2;
  text-align: left;
  color: #3e1646;
}
.box_menu .pink {
 background: #ffbee7; 
}
.box_menu .ppv {
  box-shadow: none;
  background: none;
}
.box_menu .ppv a {
  padding: 0;
}
.box_menu li a:after {
  border-color: transparent transparent transparent #000;
}*/
/* 更新バッジ */
/*.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 {
  margin-bottom: 25px;
}
.pulldown_menu {
  height: 110px;
  padding: 52px 25px 0 25px;
  position: relative;
  color: #fff;
  background: url("../images/menu/bg_pulldown_menu.jpg") no-repeat;
  background-size: 100%;
}
.pulldown_menu select {
  width: 100%;
  padding: 0 22px 0 10px;
  border: 0;
  line-height: 32px;
  background: none;
}
.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;
}
/*----- お悩み別無料占い -----*/
.box_menu .menu_link {
  width: 95%;
  top: 115px;
}
.box_menu li {
  width: 25%;
  height: 83px;
}
.box_menu a {
  display: block;
  height: 100%;
}
/*----- bg -----*/
.menu [class^="bg_"] {
  padding: 20px 0 25px;
  position: relative;
  background-image: url(../images/common/bg_pattern.png);
  background-repeat: repeat;
  background-size: 32px;
}
.menu [class^="bg_"]:before,
.menu [class^="bg_"]:after {
  content: '';
  width: 100%;
  height: 17px;
  position: absolute;
  left: 0;
  background: url("../images/line/04.png") no-repeat;
  background-size: 100%;
}
.menu [class^="bg_"]:before {
  top: 0;
}
.menu [class^="bg_"]:after {
  bottom: 0;
}
[class^="bg_"] .box_teller + .list_menu {
  padding-top: 0;
}
.bg_pink {
  background-color: #c73484;
}
.bg_red {
  background-color: #df2f50;
}
.bg_orange {
  background-color: #cb431f;
}
.bg_purple {
  background-color: #ba4dd1;
}
.bg_violet {
  background-color: #36005f;
}
.bg_green {
  background-color: #389da1;
}
.bg_yellow-green {
  background-color: #63a138;
}
.bg_yellow {
  background-color: #d1bd4d;
}
.bg_light-pink {
  background-color: #e380b6;
}
.bg_blue {
  background-color: #0c6bb4;
}
.bg_gray {
  background-color: #545a5a;
}
/* 悩んでいることは？ */
.bg_deeppink {
  padding: 0 8px 10px;
  position: relative;
  background: #921d51;
}
.bg_deeppink:before,
.bg_deeppink:after {
  content: '';
  width: 100%;
  height: 6px;
  position: absolute;
  left: 0;
  background: url("../images/line/06.png") no-repeat;
  background-size: 100%;
}
.bg_deeppink:before {
  top: -6px;
}
.bg_deeppink:after {
  bottom: -6px;
}
/*----- title -----*/
.list_menu .tit_sub {
  margin: 0 0 5px;
  padding: 15px;
}
.bg_red .tit_sub {
  background: #780a17;
}
.bg_pink .tit_sub {
  background: #730d4f;
}
.bg_purple .tit_sub {
  background: #4c1066;
}
.bg_violet .tit_sub {
  background: #391045;
}
.bg_orange .tit_sub {
  background: #a74707;
}
.bg_blue .tit_sub {
  background: #0c184c;
}
.bg_green .tit_sub {
  background: #003c29;
}
.bg_gray .tit_sub {
  background: #444545;
}
.bg_light-pink .tit_sub,
.bg_yellow .tit_sub,
.bg_yellow-green .tit_sub {
  background-image: url(../images/bar/white.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  color: #4b2b00;
  text-shadow: 0 0 5px #ffffff, 0 0 5px #ffffff, 0 0 10px #ffffff, 0 0 10px #ffffff, 0 0 15px #ffffff, 0 0 15px #ffffff, 0 0 15px #ffffff;
}
/*----- 7days -----*/
.days7 li:nth-child(n+4) {
  display: none;  
}
/*----- midnight -----*/
.box_midnight-0 .count {
  width: 100%;
  position: absolute;
  top: 80px;
  left: 0;
  text-shadow: 0 0 10px yellow, 0 0 20px yellow;
  font-size: 22px;
  font-weight: bold;
  color: yellow;
}
.box_midnight-1 .count {
  display: none;
}
.box_midnight-1 a {
  display: block;
}
.box_midnight-0 a {
  pointer-events: none;
}
/*----- 対人マニュアル -----*/
.box_manual .menu_link {
  width: 80%;
  top: 180px;
}
.box_manual .menu_link li {
  width: 50%;
}
.box_manual .menu_link a {
  height: 75px;
}
/*////////////////////////////////////////////////////////

有料TOP

////////////////////////////////////////////////////////*/
.pay_top p {
  margin-bottom: 0;
}
/*----- レコメンドbigバナー -----*/
.reco_banner {
  display: none;
  height: 120vh;
  margin: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1002;
  background: rgba(0, 0, 0, 0.8);
}
.pay_top .reco-1 {
  display: block;
}
.pay_top .reco-0 {
  display: none;
}
.reco_bigbnr {
  width: 300px;
  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;
  background: url(../images/icon/icon_close.png) no-repeat;
  background-size: 100%;
}
/*----- 新規クーポンプレゼントバナー -----*/
/*.bnr_regist_coupon {
  width: 92%;
  margin: 0 auto 20px;
  position: relative;
}
.bnr_regist_coupon p {
  width: 100%;
  margin: 0;
  line-height: 1.5;
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  color: yellow;
  position: absolute;
  bottom: 8px;
  left: 0;
}*/
/*----- main_visual -----*/
/* 日付 */
.today {
  height: 25px;
  line-height: 25px;
  font-size: 12px;
  color: #483315;
  background: url("../images/pay/main/bg_today.png") no-repeat;
  background-size: 100%;
}
.today > p {
  letter-spacing: 1px;
}
/* teller */
.main_visual .box_teller.right {
  min-height: 225px;
  margin-top: -5px;
  padding: 20px 0 0 38px;
  background: url("../images/pay/main/teller.png") no-repeat;
  background-size: 100%;
}
.main_visual .box_teller.right .serif {
  width: 140px;
  font-size: 11px;
  font-weight: bold;
  border: 0;
  outline: none;
  background: none;
}
/* 日運ボタン */
.btn_today {
  display: block;
  margin: 5px -4px 0;
}
/*--- 新メニュー ---*/
[class*="new_notice"] {
  display: none;
  width: 300px;
  margin: 3px auto;
}
.new_notice-1 {
  display: block;
}
/*--- お悩み別レコメンド ---*/
.reco_main {
  width: 100%;
  margin-bottom: 5px;
  padding: 0 30px;
  text-align: center;
  font-weight: bold;
  color: #483315;
}
.reco_main a {
  color: #483315;
}
/*----- 緊急メッセージ THEATER -----*/
.box_emergency {
  width: 100%;
  align-items: flex-end;
  flex-wrap: nowrap;
}
.emergency_mes {
  flex-shrink: 0;
  width: 22%;
  height: 100%;
  margin-right: 10px;
  position: relative;
  background: url("../images/pay/emergency/bg.png") no-repeat bottom;
  background-size: 100%;
}
.emergency_mes a {
  display: block;
  height: 100%;
}
.emergency_mes .float {
  width: 108%;
  position: absolute;
  top: 4px;
  left: -4%;
}
/*---
ランダム訴求1 RANDOM_WEEK_VIEW
ランダム訴求2 RANDOM_WEEK_TEXT
---*/
.random {
  padding: 5px 10px;
}
[class^="random_week_"] {
  width: 100%;
  border-radius: 3px;
  box-shadow: 0 0 0 1px #967271 inset, 0 0 0 3px inset #fff;
  border: 1px solid #ffdd7f;
  text-align: center;
}
[class*="random_week_text"] {
  margin-top: 5px;
  background: #fff;
}
[class^="random_week_"] a {
  display: block;
  padding: 10px 15px 10px 10px;
  position: relative;
  text-decoration: underline;
  font-weight: bold;
  color: #000;
}
[class^="random_week_"] a:after {
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3%;
}
.random_week_view-1,
.random_week_text-1 {
  background: #fccee3;
}
.random_week_view-2,
.random_week_text-2 {
  background: #e6cefc;
}
.random_week_view-3,
.random_week_text-3 {
  background: #f7cbc1;
}
/*----- 2ボタン -----*/
.btn_info_ppv {
  margin-bottom: 20px;
  padding: 0 15px;
  position: relative;
}
.btn_info_ppv ul {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.btn_info_ppv li {
  width: 50%;
  height: 48px;
  position: relative;
}
.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: -5px;
  left: 15px;
  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;
}
/*----- タブメニュー -----*/
.sec_tab_menu {
  margin-top: 10px;
}
/* 出しわけ */
.tab_menu_item .open-0, .tab_menu_item .close-1 {
  display: none;
}
/* tab */
.sec_tab_menu .tab,
.box_free_more .tab {
  position: relative;
  background-repeat: no-repeat;
  background-position: bottom;
}
.sec_tab_menu .tab {
  padding: 0 7px 0 11px;
}
.sec_tab_menu .tab {
  margin-bottom: -0.5px;
  background-image: url("../images/pay/tab/1.png"), url("../images/pay/tab/2.png"), url("../images/pay/tab/3.png");
  background-size: 100%, 0, 0;
}
.sec_tab_menu .tab.on2 {
  background-size: 0, 100%, 0;
}
.sec_tab_menu .tab.on3 {
  background-size: 0, 0, 100%;
}
.sec_tab_menu .tab li {
  width: 33.333%;
  height: 53px;
  padding: 0;
  background: none;
}
.tab li.icon-1:after,
.list_menu.thumbnail li.new:after {
  content: '';
  width: 60px;
  height: 20px;
  margin: auto;
  position: absolute;
  background: url("../images/icon/icon-new.png") no-repeat;
  background-size: 100%;
}
.tab li.icon-1:after {
  left: 50%;
  top: -7px;
  transform: translateX(-50%);
}
/* panel */
.tab_menu_item [class^="panel"] {
  border-radius: 0;
}
.tab_menu_item [class^="panel"] h2 {
  margin-bottom: 0;
}
[class^="panel"] .bnr {
  margin: 0;
  padding: 0;
}
/*----- 無料占いの続き -----*/
.btn_free_more {
  width: 75%;
  margin: 10px auto 15px;
  height: 65px;
  background-repeat: no-repeat;
  background: url("../images/btn/btn_free_more.png") no-repeat;
  background-size: 100%;
}
.btn_free_more.active {
  margin-bottom: 10px;
}
/* tab */
.box_free_more .tab li {
  border-radius: 10px 10px 0 0;
}
.box_free_more .tab li:nth-child(1),
.box_free_more .panel1 li:before,
.box_free_more .panel1 a {
  color: #58356b;
}
.box_free_more li.tab1,
.box_free_more .panel1 {
  background: #d6b3e9;
}
.box_free_more li.tab2,
.box_free_more .panel2 {
  background: #a05acc;
}
/* panel */
.box_free_more [class^="panel"] {
  padding: 10px 10px 15px 5px;
}
.box_free_more .content_wrap li {
  display: flex;
}
.box_free_more .content_wrap li:before {
  content: '・';
  width: 18px;
  height: 18px;
  line-height: 1;
  font-size: 23px;
}
.box_free_more .content_wrap a {
  display: inline-block;
  padding: 4px;
  text-decoration: underline;
  font-size: 12px;
  background: none;
}
/*----- nextopen -----*/
[class^="nextopen-"] .fuki_caption span {
  display: none;
}
.nextopen-0 .close, .nextopen-1 .open {
  display: block !important;
}
[class^="nextopen-"] a {
  position: relative;
}
.next_month {  
  text-shadow: 0 0 3px #9e0000, 0 0 3px #9e0000;
  font-style: italic;
  font-size: 18px;
  color: #fff;
  position: absolute;
  top: 14.5px;
  right: 115px;
}
.panel3 .next_month {
  top: 16px;
  right: 108px;
}
.nextopen-0 a {
  pointer-events: none;
}
.nextopen-0 a:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/pay/nextopen/soon.png") no-repeat;
  background-size: 100%;
}
/*----- deliレコメンド -----*/
.tit_deli {
  margin: -20px 0 0 -15px;
  position: relative;
}
.tit_deli span {
  position: absolute;
  top: 27px;
  left: 100px;
  font-size: 15px;
  font-weight: bold;
  color: #000;
}
.deli2-read {
  display: none;
}
/*----- 本日追加 -----*/
.box_update h2 {
  position: relative;
}
.box_update .date {
  position: absolute;
  top: 50%;
  right: 200px;
  text-shadow: 0 0 5px #ebcd57, 0 0 8px #ebcd57;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  transform: translateY(-55%);
}
/*----- 滞在特典 -----*/
.box_special {
  padding: 5px 12px 10px;
}
.box_special h2 {
  margin: 0 -10px 5px;
}
.box_special li + li {
  margin-top: 15px;
}
.fuki_caption {
  margin: auto;
  height: 45px;
  line-height: 35px;
  letter-spacing: .03em;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  color: #57356b;
  background: url("../images/pay/special/fuki_caption.png") no-repeat;
  background-size: 100%;
}
.fuki_caption.float {
  margin: -3px auto -5px;
}
/* 翌月プレゼント */
.btn-pre-link {
  display: block;
  line-height: 23px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
}
/* スペシャルプレゼント */
.box_special #premium_link {
  margin: 0;
  border-radius: 3px;
  padding: 10px;
  color: #1a1a1a;
  background: #fff;
}
.box_special .premium_btn {
  width: 100% !important;
}
/*----- おすすめサイト -----*/
.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;
}
/*////////////////////////////////////////////////////////

beginner

////////////////////////////////////////////////////////*/
.beginner_day {
  margin: 5px;
  background: #ff0055;
}
.beginner .tab {
  background-image: url(../images/pay/beginner/tab/1.png), url(../images/pay/beginner/tab/2.png), url(../images/pay/beginner/tab/3.png);
}
.box_count {
  margin: 10px;
  padding: 5px;
  border-radius: 3px;
  text-align: center;
  font-weight: bold;
  color: red;
  background: #fefefe;
}
/* free_connect
------------------------- */
.free_connect-0 {
  display: none !important;
}
.free_connect-1 {
  margin: -10px 0 25px;
}
.btn_free_connect {
  width: 60%;
  margin: auto;
  cursor: pointer;
}
/* 相手未登録時 */
.disabled-1 .btn_free_connect {
  opacity: .5;
  pointer-events: none;
}
.disabled-1 .btn-color-purple {
  display: block;
  width: 80%;
  margin: 0 auto 13px;
}
.disabled-0 .btn-color-purple {
  display: none;
}
/*--- modal ---*/
.modal_free_connect {
  display: none;
  width: 100%;
  height: 120vh;
  margin: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1002;
  background: rgba(0, 0, 0, .7);
}
.modal_free_connect .modal_inner {
  height: 90vh;
  position: fixed;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  text-align: center;
  color: #fff;
}
.modal_free_connect .btn_close2 {
  width: 60%;
  margin: 10px auto;
}
.modal_free_connect > .modal_inner > section {
  margin-bottom: 0;
}
.modal_free_connect .modal_inner .list_menu {
  padding: 15px 5px;
}
/*////////////////////////////////////////////////////////

お知らせ・プレゼントBOX

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

menulist / menu.do

////////////////////////////////////////////////////////*/
/*----- common -----*/
/* title */
.menuList .title, .menuList .tit_sub, .menudo.index .title {
  margin: 5px 0 0;
}
.menuList .title span {
  font-size: 1.3em;
}
/* lead */
.menudo:not(.index),
.menudo .lead {
  color: #fff;
}
/* text */
.menudo .serif a {
  font-size: 1.05em;
  font-weight: bold;
  color: #ff2b88;
}
.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;
}
.yudo_img2 {
  margin: 0 auto -20px;
}
/* 占者画像 */
.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);
}
/* btn */
.menuList .btn_ppv,
.menudo .btn_ppv{
 margin-top: 25px; 
}
/*----- yudo -----*/
[class*="box_yudo"] ul {
  width: 90%;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  font-weight: bold;
}
/* 01 */
.box_yudo01 ul {
  top: 0;
}
.box_yudo01 li {
  width: 40%;
  margin: 0 0 0 55%;
}
.box_yudo01 li:nth-child(2) {
  margin: 10px 50% 30px 5%;
}
.box_yudo01 li:nth-child(3) {
  margin-left: 40%;
}
/* 04 */
.box_yudo04 ul {
  width: 70%;
  top: 15px;
  left: 25%;
}
/* 01 */
.box_yudo08 ul {
  width: 80%;
  top: 30px;
}
.box_yudo08 li {
  width: 65%;
}
.box_yudo08 li:nth-child(even) {
  margin: 20px 0 20px 35%;
}
.box_yudo01 li:nth-child(odd) {
  margin-right: 35%;
}
/*////////////////////////////////////////////////////////

従量TOP

////////////////////////////////////////////////////////*/
/*----- ナビ -----*/
.fuki_navi {
  display: block;
  width: 80%;
  margin: 0 auto -5px;
}
.box_navi {
  margin: 0;
  background: url("../images/ppv/bg_navi.jpg") no-repeat top;
  background-size: 100%;
}
.box_navi ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  height: 97px;
  padding: 30px 0 5px;
}
.box_navi li {
  height: 25px;
  margin: 0 1px;
}
.box_navi a,
.box_navi img {
  display: block;
  width: auto;
  height: 100%;
}
/*----- 検索 -----*/
.ppv_top .box_search {
  height: 70px;
  margin: 0;
  background: url("../images/ppv/bg_search.jpg") no-repeat center;
  background-size: 100%;
}
.box_input {
  display: flex;
  align-items: flex-start;
  padding: 37px 25px 0;
}
.box_input input, .box_input button {
  border: 0;
}
#input_word {
  width: 100%;
  margin: 0;
  padding: 0 10px;
  line-height: 22px;
  border: 0;
  color: #000;
  background: none;
}
#btn_search {
  opacity: 0;
  flex-shrink: 0;
  width: 43px;
  height: 22px;
  padding: 0;
  cursor: pointer;
}
::-webkit-calendar-picker-indicator {
  width: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
}
#not_found {
  font-size: 10px;
  font-weight: bold;
  color: red;
}
/* 検索結果modal */
.result_modal .modal_inner h2 {
  height: 37px;
  border-bottom: 2px solid #e3c02f;
}
.result_modal .modal_inner h2 span {
  line-height: 1.15 !important;
}
.result_modal .ppv_box {
  margin: 0;
}
.result_modal [id*="_pack"], .result_modal .icon-ppv, .result_modal .icon-ppv + br {
  display: none;
}
/*----- menu -----*/
.ppvicon, .ppvtitle {
  display: table-cell;
  vertical-align: middle;
}
.ppvicon {
  width: 55px;
  padding: 0 7px 0 0;
}
.ppvtitle {
  text-decoration: underline;
  text-align: left;
  font-size: 13px;
  font-weight: bold;
  color: #000;
}
.ppv_top .price,
.list_menu .price {
  margin: 7px 0 0;
  text-align: right;
  font-size: 10px;
  font-weight: normal;
  color: #fe0054;
}
/* history */
.ppvhistory .list-menu01 a span:last-of-type {
  display: block;
  text-align: right;
  font-size: 10px;
  margin-top: 5px;
}
/*////////////////////////////////////////////////////////

ppv.do

////////////////////////////////////////////////////////*/
/*----- confirm -----*/
.ppvdo.confirm .box_teller {
  margin: 10px 0;
}
.ppvdo .box_pre a {
  display: block;
  text-align: center;
  font-weight: bold;
}
.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: 10px 10px 15px;
  color: #fff;
}
/* アイコン */
.icon-person {
  width: 100%;
  margin: 5px 0 0 auto;
  padding: 0 3px;
  line-height: 20px;
  text-align: right;
  font-weight: bold;
  font-size: 10px;
}
.icon-person p {
  display: inline-block;
  margin: 0;
}
.icon-person .icon {
  background-image: url(../images/icon/icon-person.png);
  background-repeat: no-repeat;
  background-size: 17px;
}
.icon-person.一人用 .icon {
  padding-left: 15px;
  background-position: -9px;
}
.icon-person.二人用 .icon {
  padding-left: 22px;
  background-position: left;
}
/* menu_list */
.menu_list {
  margin: 0 9px 20px;
  padding: 0 10px 30px;
  font-size: 12px;
  position: relative;
  background-image: url(../images/common/bg_pattern.png);
  background-repeat: repeat;
  background-size: 32px;
  background-color: #0f303a;
}
.menu_list:after {
  content: '';
  width: 100%;
  height: 20px;
  position: absolute;
  bottom: -3px;
  left: 0;
  background: url("../images/line/02.png") no-repeat;
  background-size: 100%;
}
.list_wrap {
  padding: 0 8px;
}
.menu_list h4 {
  margin: 0 -10px 10px;
}
.menu_list li {
  margin: 0 0 8px;
  padding: 0 0 0 20px;
  line-height: 1.4;
  text-align: left;
  color: #4b2b00;
  background-repeat: no-repeat;
  background-position: 2px 3px;
  background-size: 12px;
}
.menu_list li:last-child {
  margin-bottom: 0;
}
.menu_list .ic_com_indent {
  display: flex;
  margin: -4px 0 10px;
  font-size: 0.85em;
  background: none;
}
.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 {
  background-image: url(../images/icon/01.png);
  background-position: -1px -4px;
  background-size: 18px;
}
.menu_list .icon02 {
  background-image: url(../images/icon/02.png);
  background-position: 2px -1.5px;
  background-size: 14px;
}
.menu_list .icon03 {
  margin: 0 0 7px;
  background-image: url(../images/icon/03.png);
  background-position: 0 1px;
  background-size: 14px; 
}
.menu_list .icon01,
.menu_list .icon01 a,
.menu_list .ic_com_indent,
.menu_list .ic_com_indent a {
  font-weight: bold;
  color: yellow;
}
.menu_list .icon02,
.menu_list .icon02 a {
  font-weight: bold;
  color: #fff;
}
.menu_list .icon03,
.menu_list .icon03 a {
  font-weight: bold;
  color: #affffc;
}
/* パック用文言エリア */
.ppvdo.confirm .text_pack {
  display: block;
  margin: 10px;
  padding: 10px 15px;
  border: 1px solid #ba8787;
  border-radius: 7px;
  text-align: left;
  background: #fff;
  color: #000;
}
.ppvdo.confirm .text_pack + br {
  display: none;
}
.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;
}
/*////////////////////////////////////////////////////////

占者紹介

////////////////////////////////////////////////////////*/
.tellerProfile {
  padding-bottom: 10px;
  text-align: left;
  background:  url("../images/tellerProfile/bg_btm.jpg") no-repeat bottom, url("../images/tellerProfile/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.tellerProfile .lead {
  margin-top: -15px;
  padding: 1px 35px 50px;
  color: #333;
}
.tellerProfile ul {
  padding: 0 5px;
}
.tellerProfile li {
  padding-left: 5px;
  text-indent: -10px;
  font-size: .9em;
}
.tellerProfile li + li {
  margin-top: 5px;
}
.tellerProfile dl + dl {
  margin-top: 15px;
}
.tellerProfile dt {
  margin-bottom: 5px;
  font-weight: bold;
}
.tellerProfile dd {
  padding-left: 10px;
  font-size: .9em;
}
/*////////////////////////////////////////////////////////

mypage

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

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 .box_txt {
  padding: 5px 10px 40px;
  text-align: left;
}
.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;
}
/*----- modal -----*/
.unregist .modal_inner section {
  margin: 0;
}
.unregist .modal_inner .tit_sub {
  margin: 0 -5px 10px;
  font-size: 13px;
}
.unregist .open-1 .btn-link {
  margin: 0;
}
.reserve_Button {
  display: block;
  width: 80%;
  margin: 10px auto 20px;
  padding: 0;
  box-shadow: 0 1px inset #fff, 0 3px #9c8e1c;
  border-radius: 5px;
  line-height: 35px;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
  font-weight: bold;
  color: #fff;
  background: #beae24;
}
#overlay.mail_modal.open-1 {
  display: block;
}
/*----- 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: 22px;
  font-weight: bold;
  color: #fa04b2;
  background: url(../images/icon/03.png) no-repeat left;
  background-size: 18px;
}
.present_entry .detail dd {
  font-size: .9em;
}
.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: 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-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;
}
.present_entry .entry_require {
  line-height: 1.4;
  text-align: left;
  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;
}
.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;
  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 .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-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 {
  margin-bottom: 5px;
  padding: 8px 0;
  line-height: 1;
  font-size: 16px;
  color: #ff4b1b;
  font-weight: bold;
  background: yellow;
}
.sale-box .sale-here {
  margin-bottom: 5px;
  background: #333;
}
.sale-box .sale-here a {
  display: block;
  padding: 30px 20px;
  font-size: 17px;
  font-weight: bold;
  color: yellow;
}
.sale-site {
  background: red;
  color: #ffff00;
  padding: 7px 0;
  font-weight: bold;
  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;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 8px;
  box-sizing: border-box;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
  background: #fff;
}
.sale-box li p, .sale-box li font {
  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: 50px;
}
.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 {
  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: 0 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 5px 5px 30px;
  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;
}
.banner_mutual .txt span {
  font-size: 16px;
}