@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&family=Zen+Maru+Gothic:wght@500;700&display=swap');
/*////////////////////////////////////////////////////////

common

////////////////////////////////////////////////////////*/
/*=======================================
Base Setting
========================================*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-family: inherit;
}
img {
  width: 100%;
  margin: 0;
  border: none;
  vertical-align: bottom;
}
p {
  margin-bottom: 10px;
}
ul, li {
  list-style: none;
}
a {
  text-underline-offset: 2px;
  cursor: pointer;
  color: yellow;
}
a:hover {
  text-decoration: none;
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.palt {
  font-feature-settings: "palt";
  letter-spacing: -1px;
}
/* clearfix
------------------------- */
.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.clear {
  clear: both;
}
/*=======================================
utility
========================================*/
/* display
------------------------- */
.d-none, .none {
  display: none;
}
/* キャリア出し分け */
.sp_on, .career-sp .sp_off {
  display: none;
}
.career-sp .sp_on {
  display: block;
}
/* space
------------------------- */
.mt-0 {
  margin-top: 0 !important;
}
.mt-5 {
  margin-top: 5px !important;
}
.mt-10 {
  margin-top: 10px !important;
}
.mt-15 {
  margin-top: 15px !important;
}
.mt-20 {
  margin-top: 20px !important;
}
.mt-25 {
  margin-top: 25px !important;
}
.mt-30 {
  margin-top: 30px !important;
}
.mt-35 {
  margin-top: 35px !important;
}
.mt-40 {
  margin-top: 40px !important;
}
.mt-45 {
  margin-top: 45px !important;
}
.mt-50 {
  margin-top: 45px !important;
}
.mr-10 {
  margin-right: 10px !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
.mb-5 {
  margin-bottom: 5px !important;
}
.mb-10 {
  margin-bottom: 10px !important;
}
.mb-15 {
  margin-bottom: 15px !important;
}
.mb-20 {
  margin-bottom: 20px !important;
}
.mb-25 {
  margin-bottom: 25px !important;
}
.mb-30 {
  margin-bottom: 30px !important;
}
.mb-35 {
  margin-bottom: 35px !important;
}
.mb-40 {
  margin-bottom: 40px !important;
}
.mb-45 {
  margin-bottom: 45px !important;
}
.mb-50 {
  margin-bottom: 50px !important;
}
.mb-60 {
  margin-bottom: 60px !important;
}
.mb-70 {
  margin-bottom: 70px !important;
}
.mb-80 {
  margin-bottom: 80px !important;
}
.mb-m30 {
  margin-bottom: -30px !important;
}
.p-0 {
  padding: 0 !important;
}
.p-10 {
  padding: 0 10px !important;
}
.ptb-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.ptb-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.pt-0 {
  padding-top: 0 !important;
}
.pt-10 {
  padding-top: 10px !important;
}
.pt-15 {
  padding-top: 15px !important;
}
.pt-20 {
  padding-top: 20px !important;
}
.pt-80 {
  padding-top: 80px !important;
}
.pb-0 {
  padding-bottom: 0 !important;
}
.pb-20 {
  padding-bottom: 20px !important;
}
.pl-20 {
  padding-left: 20px !important;
}
/* width
------------------------- */
[class*="w-"] {
  margin-left: auto;
  margin-right: auto;
}
.w-50 {
  width: 50% !important;
}
.w-60 {
  width: 60% !important;
}
.w-65 {
  width: 65% !important;
}
.w-70 {
  width: 70% !important;
}
.w-80 {
  width: 80% !important;
}
.w-90 {
  width: 90% !important;
}
.w-100 {
  width: 100% !important;
}
/* text
------------------------- */
.to {
  overflow: hidden;
  white-space: nowrap;
  text-indent: 200%;
  font-size: 0;
}
/* weight */
.text-bold, .bold {
  font-weight: bold !important;
}
.text-normal {
  font-weight: normal !important;
}
/* align */
.text-center {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}
.text-left {
  text-align: left !important;
}
/* size */
.text-small {
  font-size: 0.8em !important;
}
.text-small02 {
  line-height: 1.4;
  font-size: 0.9em !important;
}
.text-default {
  font-size: 1em !important;
}
.text-medium {
  font-size: 1.1em !important;
}
.text-medium02 {
  font-size: 1.2em !important;
}
.text-large {
  font-size: 1.3em !important;
}
.text-large02 {
  font-size: 1.5em !important;
}
.text-bigger {
  font-size: 1.8em !important;
}
.text-bigger02 {
  font-size: 2em !important;
}
/* style */
.text-mincho {
  font-family: "Sawarabi Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight: bold;
}
.text-gothic {
  font-family: 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Quicksand, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.text-italic {
  font-style: italic;
}
/* color */
.text-white {
  color: #fff !important;
}
.text-black {
  color: #000 !important;
}
.text-red {
  color: #fc431f !important;
  font-weight: bold;
}
.text-pink {
  color: #ff2b88 !important;
  font-weight: bold;
}
.text-pink02 {
  color: #fc4abb !important;
  font-weight: bold;
}
.text-blue {
  color: #00fff6 !important;
  font-weight: bold;
}
.text-blue02 {
  color: #0050f4 !important;
  font-weight: bold;
}
.text-brown {
  color: #b14b00 !important;
}
.text-purple {
  color: #5b01b6 !important;
  font-weight: bold;
}
.text-purple02 {
  color: #a85cff !important;
}
.text-violet {
  color: #6300c0 !important;
}
.text-violet02 {
  color: #330099 !important;
}
.text-green {
  color: #41c818 !important;
}
.text-green02 {
  color: #008e00 !important;
}
[class*='text-yellow'] {
  font-weight: bold;
}
.text-yellow {
  color: yellow !important;
}
.text-yellow02 {
  color: #ead378 !important;
}
.text-yellow03 {
  color: #ffcb41 !important;
}
.text-orange {
  color: #f28904 !important;
}
/* shadow */
[class*="text-shadow"] {
  font-weight: bold;
  color: #fff;
}
[class*="text-shadow"] a {
  text-underline-offset: 4px;
  color: yellow;
}
.text-shadow {
  text-shadow: 0 1px 2px #000, 0 1px 2px #000, 0 1px 2px #000, 0 2px 2px #000;
}
.text-shadow_white {
  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;
}
.text-shadow_purple {
  text-shadow: 0 0 5px #d4a7fe, 0 0 8px #d4a7fe, 0 0 10px #7e00ff, 0 0 10px #7e00ff, 0 0 10px #7e00ff, 0 0 10px #7e00ff;
}
.text-shadow_purple01 {
  text-shadow: 0 0 5px #c923fb, 0 0 15px #c923fb, 0 0 15px #c923fb, 0 0 15px #c923fb;
}
.text-shadow_pink {
  text-shadow: 0 0 3px #b01598, 0 0 3px #b01598, 0 0 5px #b01598, 0 0 8px #d416b7, 0 0 8px #d416b7, 0 0 8px #f003e2;
}
.text-shadow_pink01 {
  text-shadow: 0 0 5px #fb23b7, 0 0 15px #fb23b7, 0 0 15px #fb23b7, 0 0 15px #fb23b7;
}
.text-shadow_blue {
  text-shadow: 0 1px 10px #008aff, 0 3px 10px #008aff, 0 0 10px #008aff, 0 0 10px #008aff;
}
.text-shadow_red {
  text-shadow: 0 0 3px #ff1f1f, 0 0 5px #ff1f1f, 0 0 5px #ff1f1f, 0 0 5px #ff1f1f, 0 0 5px #ff1f1f, 0 0 5px #ff1f1f, 0 0 8px #ff1f1f;
}
.text-shadow_red01 {
  text-shadow: 0 0 2px #67000c, 0 0 2px #67000c, 0 0 2px #67000c, 0 0 2px #67000c, 0 0 2px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c, 0 0 4px #67000c;
}
.text-shadow_yellow {
  text-shadow: 0 0 5px rgba(255,216,0,.5), 0 0 10px #ffd800;
}
/* marker */
.text-marker {
  background: linear-gradient(transparent 60%, #ffff0a 60%);
}
.text-light {
  margin-bottom: 10px;
  font-size: 1.2em;
  line-height: 140%;
  text-align: center !important;
  color: #fff799;
  text-shadow: 0 0 10px #ffff00;
}
.txt_notice {
  padding: 0 10px 5px;
  line-height: 17px;
  text-align: left;
  font-size: 11px;
}
.txt_guide {
  margin-bottom: 0;
  padding: 10px 10px 10px 22px;
  line-height: 1.1;
  text-align: left !important;
  font-size: 12px;
  color: yellow;
  background: url("../images/icon/01.png") no-repeat 5px center;
  background-size: 14px;
  font-weight: bold;
}
/*=======================================
form
========================================*/
.form-box {
  padding-bottom: 25px;
}
.form-box .form-title {
  margin: 20px 0 8px;
  padding-bottom: 5px;
  font-weight: bold;
  border-bottom: 1px solid #fbd746;
}
.form-title .text-red {
  font-size: 10px;
}
.form-title .form-caution {
  color: #fbd746;
}
.form-caution {
  margin-bottom: 8px;
  font-size: 10px;
  font-weight: bold;
}
input, select, textarea, button {
  outline: none;
  box-shadow: none;
  border: 0;
  -webkit-appearance: none;
  appearance: none;
  font-size: 13px;
}
input, select, textarea {
  padding: 7px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  color: #000;
}
input[type="text"], input[type="email"], input[name="sendemail"], select, textarea {
  border: 1px solid #aaa;
}
input[type="image"] {
  width: 100%;
  padding: 0;
  border: 0;
}
select {
  display: inline-block;
  height: 30px;
  margin-right: 2px;
  padding: 0 20px 0 5px;
  background: url(../images/icon/arrow_select.png) no-repeat 95% center #fff;
  background-size: 8px;
}
textarea {
  width: 100%;
  height: 10em;
  margin: 0 auto;
  background: #fff;
}
.box_form select {
  width: 90%;
  margin: 0 auto 10px;
  padding: 8px 5px;
  background: #fff;
}
/* radio */
.form-box input[type="radio"] {
  display: none;
}
.form-box label.radio-on, .form-box label.radio-off {
  display: inline-block;
  margin: 5px 10px 10px 0;
  padding-left: 25px;
  position: relative;
}
.form-box label.radio-off:before, .form-box label.radio-on:before, .form-box label.radio-on:after {
  content: "";
  position: absolute;
}
.form-box label.radio-off:before, .form-box label.radio-on:before {
  width: 18px;
  height: 18px;
  border: 2px solid #a38a24;
  border-radius: 18px;
  left: 0;
  background: #fff;
}
.form-box label.radio-on:after {
  width: 12px;
  height: 12px;
  display: block;
  border-radius: 12px;
  top: 5px;
  left: 5px;
  background: #a38a24;
}
/* checkbox */
.form-box input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
  outline: none;
  vertical-align: -5px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  position: relative;
  z-index: 10;
}
.form-box input[type="checkbox"] + label {
  width: 20px;
  height: 20px;
  margin: 0;
  background: url(../images/icon/icon-chkbox.png) no-repeat left;
  background-size: 20px;
  position: absolute;
  top: 5px;
  left: 0;
  z-index: 1;
}
.form-box input[type="checkbox"]:checked + label {
  background: url(../images/icon/icon-chkbox_on.png) no-repeat left;
  background-size: 20px;
}
.form-box label.chkbox-on, .form-box label.chkbox-off {
  display: inline-block;
  margin: 5px 10px 20px 0;
  padding-left: 25px;
  position: relative;
}
.form-box label.chkbox-off:before, .form-box label.chkbox-on:before, .form-box label.chkbox-on:after {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  left: 0;
}
.form-box label.chkbox-off:before, .form-box label.chkbox-on:before {
  background: url(../images/icon/icon-chkbox.png) no-repeat left;
  background-size: 20px;
}
.form-box label.chkbox-on:after {
  background: url(../images/icon/icon-chkbox_on.png) no-repeat left;
  background-size: 20px;
}
.error-message {
  margin: 5px 0;
  padding: 0 10px;
  font-size: 10px;
  font-weight: bold;
  color: red;
}
br + .error-message {
  margin-top: 10px;
}
::placeholder {
  color: #ccc;
}
/*=======================================
Base layout
========================================*/
html, body {
  width: 100%;
  height: 100%;
  margin: auto;
}
html {
  scroll-behavior: smooth;
  background: url("../images/common/bg.jpg") repeat-y #1f6378;
  background-size: 100%;
}
body {
  line-height: 1.5;
  font-family: 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", Quicksand, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 13px;
  color: #fff;
}
#container {
  min-height: 100%;
  margin: 0 auto -100px;
  text-align: center;
  position: relative;
}
/* contents
------------------------- */
.contents {
  margin-bottom: 20px;
  padding: 0 10px;
  text-align: left;
}
.contents02 {
  margin-bottom: 10px;
  padding: 0 20px;
  text-align: left;
}
/* header
------------------------- */
h1.logo img {
  width: 100%;
}
h1.logo a {
  display: block;
}
/* fix-nav
------------------------- */
[class^="fix-nav"] {
  width: 320px;
  margin: auto;
  padding: 5px;
  border-top: 1px solid #5a5a5a;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3000;
  text-align: center;
  background: rgba(0, 0, 0, 0.8);
}
[class^="fix-nav"] ul {
  align-items: stretch;
  justify-content: space-between;
  height: 40px;
}
[class^="fix-nav"] a {
  display: block;
  height: 100%;
  padding-top: 4px;
  border-radius: 5px;
  text-decoration: none;
  line-height: 1.2;
  font-weight: bold;
  color: #fff !important;
}
[class^="fix-nav"] span {
  font-size: 10px;
  font-weight: normal;
}
.fix-nav li {
  width: 49%;
}
.fix-nav .login a, .fix-nav .free1 a {
  background: #03b1d0;
}
.fix-nav .regist a, .fix-nav .free2 a {
  background: #da037c;
}
/* footer
------------------------- */
#footer-space {
  height: 190px;
  text-indent: -9999px;
  overflow: hidden;
}
.footer {
  width: 100%;
  padding: 20px;
  text-align: center;
  background: #163143;
}
.footer * {
  color: #eddd96;
}
#free .footer {
  padding-bottom: 70px;
}
.footer ul {
  padding: 0 5px;
  overflow: hidden;
  text-align: center;
}
.footer li {
  width: 49%;
  float: left;
  margin-bottom: 8px;
}
.footer li:nth-child(even) {
  float: right;
}
.footer li a, [class*="pagetop"] a {
  text-decoration: none;
}
.footer li a {
  padding: 5px 0;
  text-align: left;
}
.footer li a {
  display: flex;
  align-items: center;
  font-size: 11px;
}
.copy {
  margin: 20px 0 0;
  clear: both;
  font-size: 10px;
}
/* フッターナビ */
.footer_nav {
  width: 100%;
  background: url(../images/common/footer/footer_nav.jpg) no-repeat center;
  background-size: 100%;
}
/* ウィンドウ固定用 */
.footer_nav.fixed {
  width: 320px;
  margin: auto;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1001;
}
.footer_nav ul {
  overflow: hidden;
}
.footer_nav li {
  width: 20%;
  height: 40px;
  float: left;
  display: block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.footer_nav li a {
  display: block;
  width: 100%;
  height: 100%;
}
/* current 
.current_paytop {
  background-image: url("../images/common/footer/footer_nav_top.jpg");
}
.current_search {
  background-image: url("../images/common/footer/footer_nav_search.jpg");
}
.current_menu {
  background-image: url("../images/common/footer/footer_nav_menu.jpg");
}
.current_ppvtop {
  background-image: url("../images/common/footer/footer_nav_ppv.jpg");
}
.current_mypage {
  background-image: url("../images/common/footer/footer_nav_mypage.jpg");
}*/
/* coipo未連携&スタンプバッジ */
.footer_nav .no_connect {
  position: relative;
}
.footer_nav .no_connect:after {
  content: "";
  width: 15px;
  height: 15px;
  position: absolute;
  top: 3px;
  right: 2px;
  background: url(../images/coipo/icon-mark.png) no-repeat;
  background-size: 100%;
}
.footer_nav .connect:after {
  content: none;
}
/* pagetop */
.btn-pagetop {
  margin: 0 auto 10px;
  text-align: center;
}
.btn-pagetop a {
  display: block;
  border-radius: 2px;
  letter-spacing: .05em;
  line-height: 35px;
  text-align: center;
  background: #fff;
}
/*.pagetop a,*/
.btn-pagetop span {
  font-size: 11px;
  color: #6a6039;
  background: url("../images/icon/arrow_top_bk.png") no-repeat left center;
  background-size: 11px;
}
.btn-pagetop span {
  padding: 3px 0 3px 20px;
}
.pagetop {
  display: flex;
  justify-content: flex-end;
}
/*.pagetop a {
  display: inline-block;
  margin: 10px 0 0;
  padding: 0 10px 0 15px;
  line-height: 1.3;
}*/
.pagetop a {
  display: inline-block;
  width: 110px;
}
/*=======================================
Common parts
========================================*/
/* carrier login
------------------------- */
.carrier-btn {
  margin: 15px 0;
  padding: 10px;
  position: relative;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.5);
}
.carrier-btn img:first-child {
  margin-bottom: 5px;
}
.carrier-btn ul {
  position: relative;
  overflow: hidden;
}
.carrier-btn ul li {
  width: 50%;
  margin: 20px auto 0;
}
.box-login {
  margin: 15px 0;
  padding: 10px 0;
  border-top: 2px solid rgba(255, 255, 255, 0.5);
  border-bottom: 2px solid rgba(255, 255, 255, 0.5);
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
}
.box-login ul li {
  width: 30%;
  display: inline-block;
}
.box-login ul li a {
  line-height: 100%;
  display: block;
  padding: 12px 0;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  -webkit-box-shadow: 0 1px 2px #FFFFFF inset, 0 -1px 2px #000000 inset;
  box-shadow: 0 1px 2px #FFFFFF inset, 0 -1px 2px #000000 inset;
  text-decoration: none;
  color: #fff;
  text-shadow: 0 -1px #000000;
}
.box-login ul li.sp a {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FD7D7D), color-stop(1, #A80006));
  background-image: -moz-linear-gradient(top, #FD7D7D 0%, #A80006 100%);
  background-image: linear-gradient(to bottom, #FD7D7D 0%, #A80006 100%);
}
.box-login ul li.spau a {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #FDA015), color-stop(1, #BE3C00));
  background-image: -moz-linear-gradient(top, #FDA015 0%, #BE3C00 100%);
  background-image: linear-gradient(to bottom, #FDA015 0%, #BE3C00 100%);
}
.box-login ul li.spsb a {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #BDBDBD), color-stop(1, #4A4A4A));
  background-image: -moz-linear-gradient(bottom, #BDBDBD 0%, #4A4A4A 100%);
  background-image: linear-gradient(to bottom, #BDBDBD 0%, #4A4A4A 100%);
}
.space-master {
  padding-top: 85px !important;
}
/* confirm-box
------------------------- */
.confirm-box {
  width: 100%;
}
.confirm-box:after {
  content: "";
  display: block;
  clear: both;
}
.confirm-box .buy-btn, .partRelease-btn, .confirm-box center {
  margin-top: 10px;
}
/* checkbox */
.list-chk input[type="checkbox"] {
  display: none;
  background: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.list-chk label {
  display: block;
  margin: 0 10px;
  padding: 5px 10px 5px 30px;
  border-radius: 0;
  /*color: #fff;*/
}
.list-chk label a {
  color: #fff;
}
.list-chk label.checked {
  background: url(../images/icon/icon-chkbox_on.png) no-repeat left;
  background-size: 20px;
}
.list-chk label.unchecked {
  background: url(../images/icon/icon-chkbox.png) no-repeat left;
  background-size: 20px;
}
/* advertisement
------------------------- */
.ad-box, .pointBox {
  margin: 0 10px 15px;
  padding: 10px;
  border-radius: 5px;
  color: #fff;
  background: rgba(101, 79, 33, 0.8);
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 0 3px #ffcc00 inset, 0 0 10px #fbd45c inset, 0 0 5px rgba(0, 0, 0, 1) inset;
  box-shadow: 0 0 3px rgba(255, 204, 0, 0.7) inset, 0 0 10px rgba(251, 212, 92, 0.5) inset, 0 0 5px rgba(0, 0, 0, 1) inset;
}
.ad-box a, .pointBox a {
  color: #FFBC00;
}
/*=======================================
parts
========================================*/
/* title
------------------------- */
.title, .tit_sub, .subtitle {
  margin-top: 3px;
  margin-bottom: 10px;
  padding: 27px 25px 30px;
  position: relative;
  line-height: 1.3;
  letter-spacing: .03em;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0,0,0,.15);
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  background-image: url("../images/bar/pink.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}
.title {
  font-size: 16px;
}
.title.purple, .tit_sub.purple, .purple .tit_sub, .subtitle {
  background-image: url("../images/bar/purple.png");
}
.title.blue, .tit_sub.blue, .blue .tit_sub {
  background-image: url("../images/bar/blue.png");
}
.title.red, .tit_sub.red, .red .tit_sub {
  background-image: url("../images/bar/red.png");
}
.title.yellow, .tit_sub.yellow, .yellow .tit_sub {
  background-image: url("../images/bar/yellow.png");
}
.tit_sub01 {
  margin-bottom: 12px;
  padding: 7px;
  border-top: 1.5px solid #d7bf55;
  border-bottom: 1.5px solid #d7bf55;
  line-height: 1.3;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
}
.tit_sub .icon {
  width: 35px;
  margin: 0 10px 0 -10px;
}
.tit_sub.flex-box {
  justify-content: center;
}
h2 > img {
  vertical-align: top;
}
/* menu_title
------------------------- */
.menu_title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  min-height: 50px;
  padding: 20px 20px 20px 17px;
  text-align: left;
  font-weight: bold;
  color: #333;
  position: relative;
  background: url("../images/result/parts/bg_top.jpg") no-repeat top, url("../images/result/parts/bg_btm.jpg") no-repeat bottom, url("../images/result/parts/bg_mid.jpg") repeat-y;
  background-size: 100%;
}
.menu_title a {
  color: #333;
}
.menu_title .menu_icon {
  width: 20%;
  margin: 0;
}
.menu_title h2, .menu_title h3 {
  width: 77%;
}
.menu_title h2, .menu_title h3, .menu_title > li {
  line-height: 1.2;
  font-size: 14px;
}
.menu_title font {
  text-shadow: none;
}
/* button
------------------------- */
[class*="btn"] {
  cursor: pointer;
}
[class*="btn"] a, [class*="btn"] input {
  display: block;
  margin: 0 auto;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
}
/* main */
.btn-main {
  margin: 40px auto 20px;
  position: relative;
}
.btn-main a, .btn-main input, .btn-submit a, input.btn-submit, .btn-menu li, .list-menu li {
  border: 1px solid #ab50e0;
  box-shadow: 0 2px 3px rgba(0, 0, 0, .2);
  background: #8c41b7;
}
.btn-main a, .btn-main input, .btn-submit a, input.btn-submit, .btn-menu a, .list-menu a {
  width: 270px;
  padding: 10px;
  color: #fff;
}
.btn-main input {
  width: 100%;
  font-size: 1.2em;
}
/* form */
.form-box .form-btn {
  margin-top: 20px;
  text-align: center;
  position: relative;
}
.form-box .form-btn p {
  margin-bottom: 10px;
  font-size: 0.9em;
}
.form-btn input, .form-btn a {
  width: 250px;
  box-shadow: 1px 2px #f8a2c9 inset, 0 -3px #b64f7d inset, 0 1px 3px rgba(0,0,0,.15);
  border-radius: 8px;
  letter-spacing: 1px;
  text-shadow: 0 1px 3px rgba(0,0,0,.2);
  font-size: 15px;
  color: #fff;
  position: relative;
  background: #d06494;
}
.form-btn input {
  padding: 10px 10px 11px;
}
.form-btn a {
  padding: 10px 10px 12px;
}
.input-btn {
  width: 90%;
  text-align: center !important;
}
.input-btn li {
  display: inline-block !important;
  width: 42% !important;
  margin: 0 2% !important;
}
.input-btn li input {
  width: 100% !important;
}
.input-btn li:first-child input {
  background: -webkit-gradient(linear, left top, left bottom, from(#DDD), to(#666));
  background: -moz-linear-gradient(top, #DDD, #666);
}
/* pointer */
@keyframes decrease {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(.9, .9);
  }
  100% {
    transform: scale(1, 1);
  }
}
.pointer {
  width: 30px;
  position: absolute;
  right: 20px;
  bottom: -5px;
  z-index: 3;
  transform: scale(1, 1);
  animation: decrease 2s linear infinite;
}
.bnr .pointer {
  width: 30px;
  right: 0;
  top: 60%;
}
/* menu */
.btn-menu {
  width: 92%;
  margin: 30px auto;
  overflow: hidden;
}
.btn-menu li {
  margin: 3px 3px 10px;
  border-radius: 4px;
}
/* flex */
.btn-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 15px;
}
.btn-flex > ul, .btn-flex > li, .btn-flex > div {
  flex-shrink: 0;
  width: 49%;
  margin: 0 0 7px;
}
/* link */
.btn-link {
  margin: 0 10px 20px 0;
  text-align: right;
}
.btn-link li:not(:last-child) {
  margin: 0 0 10px;
}
.btn-link.center {
  margin: auto;
  text-align: center;
}
.btn-link.left {
  margin: 0 0 15px 10px;
  text-align: left;
}
.btn-link a,
.btn-link button {
  display: inline-block;
  padding: 8px 25px 10px 18px;
  border: 1px solid #812dc1;
  border-radius: 5px;
  box-shadow: 0 1px inset #fff, 0 -3px inset #812dc1;
  position: relative;
  color: #fff !important;
  background: #9c36ea;
}
.btn-link a:after,
.btn-link button:after {
  content: "\025b6";
  position: absolute;
  top: 48%;
  right: 5px;
  transform: translateY(-50%) scale(.5);
}
.btn-link.left a {
  padding: 5px 18px 5px 30px;
}
.btn-link.left a:after {
  right: auto;
  left: 6%;
  transform: translateY(-50%) rotate(-180deg) scale(.5);
}
/* color */
[class^="btn-color-"] {
  width: 92%;
  margin: auto;
  position: relative;
}
li[class^="btn-color-"], [class^="btn-color-"] li {
  margin-bottom: 7px;
  position: relative;
}
[class^="btn-color-"] .arrow:after {
  border-color: transparent transparent transparent #fff;
}
[class^="btn-color-"] a {
  padding: 10px;
  border-radius: 5px;
  line-height: 1.4;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
  font-size: 15px;
  color: #fff;
}
[class^="btn-color-"] .text-small {
  padding: 8px 10px;
  line-height: 1.3;
}
[class^="btn-color-"] a span {
  line-height: 1.2;
  font-size: 1.15em;
}
.btn-color-red a {
  box-shadow: 0 1px inset #fff, 0 3px #a21e41;
  background: #cf2853;
}
.btn-color-red.trans a {
  box-shadow: 0 1px inset rgba(255, 255, 255, .75), 0 -2px inset rgba(175, 1, 47, .75);
  background: rgba(226, 0, 59, .75);
}
.btn-color-pink a {
  box-shadow: 0 1px inset #fff, 0 3px #af3f88;
  background: #d14da4;
}
.btn-color-pink.trans a {
  box-shadow: 0 1px inset rgba(255, 255, 255, .75), 0 -2px inset rgba(189, 2, 152, .75);
  background: rgba(249, 3, 200, .75);
}
.btn-color-purple a {
  box-shadow: 0 1px inset #fff, 0 3px #7c2196;
  background: #9528b4;
}
.btn-color-purple.trans a {
  box-shadow: 0 1px inset rgba(255, 255, 255, .75), 0 -2px inset rgba(137, 0, 162, .75);
  background: rgba(180, 0, 213, .75);
}
.btn-color-blue a {
  box-shadow: 0 1px inset #fff, 0 3px #1c5183;
  background: #2567a4;
}
.btn-color-blue.trans a {
  background: rgba(90, 235, 242, 0.8);
  background: -moz-linear-gradient(top, rgba(90, 235, 242, 0.8) 0%, rgba(21, 147, 214, 0.8) 95%, rgba(20, 117, 171, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(90, 235, 242, 0.8) 0%, rgba(21, 147, 214, 0.8) 95%, rgba(20, 117, 171, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(90, 235, 242, 0.8) 0%, rgba(21, 147, 214, 0.8) 95%, rgba(20, 117, 171, 0.8) 100%);
}
.btn-color-yellow a {
  box-shadow: 0 1px inset #fff, 0 3px #817001;
  background: #ceb402;
}
.btn-color-green a {
  box-shadow: 0 1px inset #fff, 0 3px #319101;
  background: #40bf02;
}
.btn-color-green.trans a {
  box-shadow: 0 1px inset rgba(255, 255, 255, .75), 0 -2px inset rgba(49, 145, 1, .75);
  background: rgba(64, 191, 2, .75);
}
.btn-color-brown a {
  text-shadow: none;
  color: #000;
  box-shadow: 0 0 2px #926b01 inset, 0 0 5px #926b01 inset, 0 0 5px #926b01 inset, 0 0 5px #926b01 inset, 0 0 5px #926b01 inset, 0 0 8px #926b01 inset;
  background: #d49c03;
}
.btn-color-brown .arrow:after {
  border-color: transparent transparent transparent #000;
}
/* yudo */
.btn-yudo {
  width: 95%;
  margin: 0 auto;
}
.btn-yudo li {
  width: 100%;
}
.btn-yudo a {
  margin: 3px 3px 5px;
  padding: 8px 10px;
  border: 1px solid #ffd54b;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.7);
  line-height: 1.4;
  font-size: 14px;
  color: #fff;
}
.btn-yudo.red a, .btn-yudo .red a {
  background: rgb(207, 13, 13);
  background: -moz-linear-gradient(top, rgba(207, 13, 13, 0.8) 0%, rgba(141, 1, 1, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(207, 13, 13, 0.8) 0%, rgba(141, 1, 1, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(207, 13, 13, 0.8) 0%, rgba(141, 1, 1, 0.8) 100%);
}
.btn-yudo.pink a, .btn-yudo .pink a {
  background: rgb(214, 6, 148);
  background: -moz-linear-gradient(top, rgba(214, 6, 148, 0.8) 0%, rgba(132, 3, 72, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(214, 6, 148, 0.8) 0%, rgba(132, 3, 72, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(214, 6, 148, 0.8) 0%, rgba(132, 3, 72, 0.8) 100%);
}
.btn-yudo.blue a, .btn-yudo .blue a {
  background: rgb(13, 159, 207);
  background: -moz-linear-gradient(top, rgba(13, 159, 207, 0.8) 0%, rgba(21, 50, 77, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(13, 159, 207, 0.8) 0%, rgba(21, 50, 77, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(13, 159, 207, 0.8) 0%, rgba(21, 50, 77, 0.8) 100%);
}
.btn-yudo.purple a, .btn-yudo .purple a {
  background: rgb(197, 24, 234);
  background: -moz-linear-gradient(top, rgba(197, 24, 234, 0.8) 0%, rgba(54, 1, 141, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(197, 24, 234, 0.8) 0%, rgba(54, 1, 141, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(197, 24, 234, 0.8) 0%, rgba(54, 1, 141, 0.8) 100%);
}
.btn-yudo.green a, .btn-yudo .green a {
  background: rgb(45, 239, 205);
  background: -moz-linear-gradient(top, #1cb728 0%, #08520b 100%);
  background: -webkit-linear-gradient(top, #1cb728 0%, #08520b 100%);
  background: linear-gradient(to bottom, #1cb728 0%, #08520b 100%);
}
.btn-yudo.yellow a, .btn-yudo .yellow a {
  background: rgb(207, 132, 13);
  background: -moz-linear-gradient(top, rgba(207, 132, 13, 0.8) 0%, rgba(124, 54, 11, 0.8) 100%);
  background: -webkit-linear-gradient(top, rgba(207, 132, 13, 0.8) 0%, rgba(124, 54, 11, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(207, 132, 13, 0.8) 0%, rgba(124, 54, 11, 0.8) 100%);
}
/* decobtn */
.decobtn-color01 {
  width: 90%;
  margin: 5px auto 10px auto;
  padding: 3px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  background-image: -moz-linear-gradient(left, rgba(100, 66, 2, 1) 0%, rgba(247, 201, 114, 1) 25%, rgba(254, 238, 208, 1) 45%, rgba(247, 201, 114, 1) 65%, rgba(100, 66, 2, 1) 100%);
  background-image: -webkit-linear-gradient(left, rgba(100, 66, 2, 1) 0%, rgba(247, 201, 114, 1) 25%, rgba(254, 238, 208, 1) 45%, rgba(247, 201, 114, 1) 65%, rgba(100, 66, 2, 1) 100%);
  position: relative;
  overflow: hidden;
}
.decobtn-color01 a {
  padding: 8px 10px;
  color: #fff;
  box-shadow: 0 1px 3px #333 inset;
  text-shadow: 0 1px 1px #19052a, 0 0 10px #19052a;
}
/* red */
.decobtn-color01 .btn-red {
  background: -moz-linear-gradient(left, #760033 0%, #ff0042 53%, #760033 100%);
  background: -webkit-linear-gradient(left, #760033 0%, #ff0042 53%, #760033 100%);
  background: near-gradient(to right, #760033 0%, #ff0042 53%, #760033 100%);
}
/* pink */
.decobtn-color01 .btn-pink {
  background: -moz-linear-gradient(left, #880c58 0%, #f818bb 53%, #880c58 100%);
  background: -webkit-linear-gradient(left, #880c58 0%, #f818bb 53%, #880c58 100%);
  background: near-gradient(to right, #880c58 0%, #f818bb 53%, #880c58 100%);
}
/* blue */
.decobtn-color01 .btn-blue, .decobtn-color01-2 .btn-blue {
  background: rgb(42, 67, 221);
  background: -moz-linear-gradient(top, rgba(42, 67, 221, 1) 0%, rgba(22, 35, 92, 1) 100%);
  background: -webkit-linear-gradient(top, rgba(42, 67, 221, 1) 0%, rgba(22, 35, 92, 1) 100%);
  background: near-gradient(to bottom, rgba(42, 67, 221, 1) 0%, rgba(22, 35, 92, 1) 100%);
}
/* green */
.decobtn-color01 .btn-green {
  background: rgb(34, 170, 66);
  background: -moz-linear-gradient(top, rgba(34, 170, 66, 1) 0%, rgba(11, 51, 14, 1) 100%);
  background: -webkit-linear-gradient(top, rgba(34, 170, 66, 1) 0%, rgba(11, 51, 14, 1) 100%);
  background: near-gradient(to bottom, rgba(34, 170, 66, 1) 0%, rgba(11, 51, 14, 1) 100%);
}
/* purple */
.decobtn-color01 .btn-purple {
  box-shadow: 0 -1px 5px #a331cd inset, 0 -2px 5px #a331cd inset;
  background: rgb(138, 1, 30);
  background: -moz-linear-gradient(left, rgba(97, 1, 139, 1) 0%, rgba(139, 1, 190, 1) 10%, rgba(139, 1, 190, 1) 50%, rgba(139, 1, 190, 1) 90%, rgba(97, 1, 139, 1) 100%);
  background: -webkit-linear-gradient(left, rgba(97, 1, 139, 1) 0%, rgba(139, 1, 190, 1) 10%, rgba(139, 1, 190, 1) 50%, rgba(139, 1, 190, 1) 90%, rgba(97, 1, 139, 1) 100%);
  background: near-gradient(to right, rgba(97, 1, 139, 1) 0%, rgba(139, 1, 190, 1) 10%, rgba(139, 1, 190, 1) 50%, rgba(139, 1, 190, 1) 90%, rgba(97, 1, 139, 1) 100%);
}
/* yellow */
.decobtn-color01 .btn-yellow {
  box-shadow: 0 -1px 5px #d0b83d inset, 0 -2px 5px #d0b83d inset;
  background: rgb(138, 1, 30);
  background: -moz-linear-gradient(left, rgba(97, 1, 139, 1) 0%, rgba(139, 1, 190, 1) 10%, rgba(139, 1, 190, 1) 50%, rgba(139, 1, 190, 1) 90%, rgba(97, 1, 139, 1) 100%);
  background: -webkit-linear-gradient(left, rgba(97, 1, 139, 1) 0%, rgba(139, 1, 190, 1) 10%, rgba(139, 1, 190, 1) 50%, rgba(139, 1, 190, 1) 90%, rgba(97, 1, 139, 1) 100%);
  background: near-gradient(to right, rgba(150, 120, 3, 1) 0%, rgba(195, 169, 4, 1) 10%, rgba(195, 169, 4, 1) 50%, rgba(195, 169, 4, 1) 90%, rgba(150, 120, 3, 1) 100%);
}
/* brown */
.decobtn-color01 .btn-brown {
  background: rgba(211, 203, 41, 0.8);
  -webkit-box-shadow: 0 0 3px rgba(211, 203, 41, 0.8) inset, 0 0 3px rgba(211, 203, 41, 0.8) inset, 0 0 3px rgba(211, 203, 41, 0.8) inset, 1px 1px 20px rgba(211, 203, 41, 0.8) inset, 1px 1px 20px rgba(211, 203, 41, 0.8) inset, 1px 1px 50px rgba(211, 203, 41, 0.8) inset;
  box-shadow: 0 0 3px rgba(211, 203, 41, 0.8) inset, 0 0 3px rgba(211, 203, 41, 0.8) inset, 0 0 3px rgba(211, 203, 41, 0.8) inset, 1px 1px 20px rgba(211, 203, 41, 0.8) inset, 1px 1px 20px rgba(211, 203, 41, 0.8) inset, 1px 1px 50px rgba(211, 203, 41, 0.8) inset;
}
/* list
------------------------- */
.list {
  padding: 0 10px 20px 10px;
  margin-bottom: 10px;
}
.list li {
  width: 100%;
  position: relative;
  display: table;
  margin-bottom: 4px;
  height: 55px;
}
.list li a {
  display: table-cell;
  width: 100%;
  text-align: left;
  vertical-align: middle;
  padding: 2px 30px 0 15px;
  line-height: 1.3;
}
.list a {
  text-decoration: none;
}
/* nolink, arrow */
.list .nolink a {
  display: block;
  padding: 5px;
  text-align: left;
  background: none;
}
.list li.nolink {
  display: block;
  padding: 5px;
  text-align: left;
  text-decoration: none;
  border: 1px solid #ccc;
  color: #eee;
  background: #999;
}
.list.no-arrow a:after {
  content: none;
}
.list font {
  padding: 0 10px;
  font-size: 11px !important;
}
/* list-menu
------------------------- */
[class^="list-menu"] li, [class^="list-menu"] dl {
  line-height: 1.4;
  text-align: left;
  color: #fff;
}
[class^="list-menu"] li.nolink, [class^="list-menu"] dl.nolink {
  padding: 8px 10px;
  color: #ddd;
}
[class^="list-menu"] li.nolink span, [class^="list-menu"] dl.nolink dt {
  display: block;
  font-size: 0.85em;
  color: #e4b22b;
}
[class^="list-menu"] a {
  display: block;
  width: 100%;
  padding: 10px;
  text-decoration: none;
  color: #fff;
}
[class^="list-menu0"] a {
  padding-right: 20px;
  background: url(../images/icon/arrow_wh.png) no-repeat 99%;
  background-size: 10px;
}
.list-menu {
  width: 92%;
  margin: auto;
}
/* 01 */
.list-menu01 {
  border-top: 1px solid #285965;
  background: #133f4c;
}
.list-menu01 li {
  border-bottom: 1px solid #285965;
}
.list-menu01 .guide {
  display: block;
  font-size: 0.85em;
  color: yellow;
}
.list-menu01 a > font[color="red"] {
  color: yellow !important;
}
/* 02 */
.list-menu02 {
  border-top: 1px solid #fff;
  background: #6d609a;
}
.list-menu02 li {
  border-bottom: 1px solid #fff;
}
.list-menu02 li.all {
  background: #4c3895;
}
.ppvhistory .nolink, .box_history .nolink {
  padding: 10px;
}
/* caution and dot */
.list-caution, .list-dot {
  opacity: .9;
  margin-bottom: 10px;
  padding: 0 10px;
  text-align: left;
}
.list-caution li, .list-dot li {
  margin-bottom: 10px;
  padding-left: 1.2em;
  position: relative;
  line-height: 1.2;
  font-size: 10px;
}
.list-caution li li, .list-dot li li {
  margin-bottom: 5px;
}
.list-caution p, .list-dot p {
  margin-bottom: 5px;
}
.accordion .list-caution li {
  padding-left: 2em;
}
.list-caution li span:not([class]), .list-dot li span:not([class]) {
  position: absolute;
  top: 0;
  left: 0;
}
/* table
------------------------- */
.table {
  width: 100%;
  margin-bottom: 10px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  border-top: 1px solid #999;
  border-left: 1px solid #999;
}
.table th, .table td {
  padding: 10px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  background-color: #FFF;
  color: #000;
}
.table th {
  background-color: #111;
  color: #FFF;
}
.table tr:first-child th:first-child, .table tr:first-child td:first-child {
  border-top-left-radius: 5px;
}
.table tr:first-child th:last-child, .table tr:first-child td:last-child {
  border-top-right-radius: 5px;
}
.table tr:last-child th:first-child, .table tr:last-child td:first-child {
  border-bottom-left-radius: 5px;
}
.table tr:last-child th:last-child, .table tr:last-child td:last-child {
  border-bottom-right-radius: 5px;
}
.table-caption {
  margin-bottom: 0;
  padding-right: 10px;
  font-size: 0.9em;
  text-align: right;
}
/* accordion menu
------------------------- */
.accordion {
  margin-bottom: 30px;
  color: #333;
}
.accordion dt {
  padding: 15px 35px 15px 10px;
  border-bottom: 1px solid #999;
  background: url(../images/icon/accordion_b.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#EEE), to(#D5D5D5));
  background: url(../images/icon/accordion_b.png) no-repeat right, -moz-linear-gradient(top, #EEE, #D5D5D5);
  background-size: auto 20px, 100% auto;
  -webkit-box-shadow: 1px 1px 1px #FFF inset;
  box-shadow: 1px 1px 1px #FFF inset;
}
.accordion dt.close {
  background: url(../images/icon/accordion_t.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#D5D5D5));
  background: url(../images/icon/accordion_t.png) no-repeat right, -moz-linear-gradient(top, #FFF, #D5D5D5);
  background-size: auto 20px, 100% auto;
}
.single dt {
  background: url(../images/icon/accordion_b.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#917917));
  background: url(../images/icon/accordion_b.png) no-repeat right, -moz-linear-gradient(top, #FFF, #917917);
  background-size: auto 20px, 100% auto;
}
.single dt.close {
  background: url(../images/icon/accordion_t.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#917917));
  background: url(../images/icon/accordion_t.png) no-repeat right, -moz-linear-gradient(top, #FFF, #917917);
  background-size: auto 20px, 100% auto;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.accordion dt:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.accordion dt.last, .single dt {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  border-bottom: none;
}
.accordion dd {
  display: none;
  padding: 8px 10px;
  background: #FFF;
  border-bottom: 1px solid #999;
}
.accordion dd a {
  color: #C00;
}
.accordion dd:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.accordion-btn {
  padding-top: 5px;
}
.accordion-btn li {
  margin-bottom: 5px;
  text-align: right;
}
.accordion-btn li a {
  display: inline-block;
  padding: 5px 30px 5px 15px;
  color: #333;
  border: 1px solid #999;
  -webkit-box-shadow: 1px 1px 1px #FFF inset, -1px -1px 1px #333 inset;
  box-shadow: 1px 1px 1px #FFF inset, -1px -1px 1px #333 inset;
  background: url(../images/icon/arrow_gr.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#D5D5D5));
  background: url(../images/icon/arrow_gr.png) no-repeat right, -moz-linear-gradient(top, #FFF, #D5D5D5);
  background-size: 18px auto, 100% auto;
}
/* arrow
------------------------- */
.down {
  position: relative;
  top: -10px;
  left: 50%;
  width: 0;
  height: 0;
  margin: 0 0 -30px -16px;
  border: 16px solid transparent;
  border-top-color: #FFEE78;
  z-index: 9;
}
.down:after {
  position: absolute;
  content: "";
  top: -30px;
  left: -8px;
  width: 16px;
  height: 16px;
  background: #FFEE78;
}
/* box-image img
------------------------- */
.box-image {
  margin: 0 0 15px;
}
.box-image-s img {
  display: block;
  width: 50%;
  margin: 10px auto;
}
/* pager
------------------------- */
.btn-page {
  width: 100%;
  padding: 10px;
  position: relative;
  overflow: hidden;
}
.btn-page li:first-child {
  float: left;
  text-align: right;
}
.btn-page li:last-child {
  float: right;
}
.btn-page li a {
  padding: 5px 20px;
  font-size: 12px;
  font-weight: normal;
  color: #555 !important;
}
.btn-page font {
  font-size: 0.9em;
}
.btn-page li:first-child a {
  background: url(../images/icon/arrow_gr2.png) no-repeat left, -webkit-gradient(linear, left top, left bottom, from(#EEE), to(#AAA));
  background: url(../images/icon/arrow_gr2.png) no-repeat left, -moz-linear-gradient(top, #EEE, #AAA);
  -webkit-background-size: 10px, 100%;
  background-size: 10px, 100%;
}
.btn-page li:last-child a {
  background: url(../images/icon/arrow_gr.png) no-repeat right, -webkit-gradient(linear, left top, left bottom, from(#EEE), to(#AAA));
  background: url(../images/icon/arrow_gr.png) no-repeat right, -moz-linear-gradient(top, #EEE, #AAA);
  -webkit-background-size: 10px, 100%;
  background-size: 10px, 100%;
}
.pager li {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 5px;
  overflow: hidden;
  border: 1px solid #a162cb;
  border-radius: 30px;
  line-height: 28px;
  font-size: 10px;
  background: #a162cb;
}
.pager a, .pager em {
  display: block;
  height: 100%;
  text-decoration: none;
  color: #fff;
}
.pager em {
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: #8433ba;
}
/*=======================================
fortuneSearch
========================================*/
.fortuneSearch .fortune_search {
  margin: 0 auto;
}
.fortuneSearch .box_teller {
  margin: 0 0 15px;
}
/* カテゴリ */
.search-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
  width: 96%;
  margin: 15px auto 20px;
  padding: 0;
}
.search-nav li {
  width: 24%;
  padding: 0;
  margin: 0 0 5px;
}
.search-nav li a {
  display: block;
  box-shadow: 0 3px #843461;
  line-height: 35px;
  text-align: center;
  text-decoration: none;
  color: #b5b5b5;
  background: #a7437c;
}
.search-nav li.active a {
  box-shadow: 0 3px #a7437c;
  font-weight: bold;
  color: #fff;
  background: #c95295;
}
/*.search-nav li:nth-child(3) a, .search-nav li:nth-child(5) a, .search-nav li:nth-child(6) a {
  box-shadow: 0 3px #940058;
  background: #b50059;
}
.search-nav li:nth-child(3).active a, .search-nav li:nth-child(5).active a, .search-nav li:nth-child(6).active a {
  box-shadow: 0 3px #d1007c;
  background: #ff007e;
}
.search-nav li:nth-child(7) a, .search-nav li:nth-child(8) a {
  box-shadow: 0 3px #323a8f;
  background: #1061b5;
}
.search-nav li:nth-child(7).active a, .search-nav li:nth-child(8).active a {
  box-shadow: 0 3px #4652ca;
  background: #1788ff;
}*/
/* タブ/パネル共通 */
#tab li, .tab li, .panel1 {
  background: #8c41b7;
}
#tab li:nth-child(2), .tab li:nth-child(2), .panel2 {
  background: #bc47a2;
}
/* タブ */
#tab, .tab {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin: 0 8px;
}
#tab li, .tab li {
  width: 49.5%;
  padding-top: 10px;
  border-radius: 10px 10px 0 0;
  border-bottom: 0;
  position: relative;
  line-height: 1.1;
  cursor: pointer;
  color: #fff;
}
#tab li {
  height: 45px;
}
#tab [class^="select"], .tab .active {
  margin-bottom: -1px;
  font-size: 1.05em;
  font-weight: bold;
}
#tab [class^="select"] {
  height: 50px;
}
#tab [class^="noselect"] {
  padding: 0;
}
#tab a {
  display: block;
  height: 100%;
  padding-top: 10px;
  text-decoration: none;
  color: #fff;
}
#tab li span {
  font-size: .8em;
}
.tab li {
  height: 35px;
}
.tab .active {
  height: 40px;
}
/* パネル */
[class*="panel"] {
  display: none;
  padding: 5px 10px 12px;
  border-radius: 0 0 10px 10px;
  line-height: 1.2;
  text-align: left;
  color: #fff;
}
[class*="panel"].active, .content_wrap[class*="panel"] {
  display: block;
}
.content_wrap {
  margin: 0 8px 20px;
}
.content_wrap a {
  display: block;
  padding: 8px 20px 8px 5px;
  text-decoration: none;
  color: #fff;
  background: url("../images/icon/arrow_wh.png") no-repeat 98%;
  background-size: 10px;
}
.content_wrap a:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, .3);
}
.content_wrap dt {
  padding: 0 0 3px;
  font-size: 10px;
  font-weight: bold;
  color: yellow;
}
.panel3 dt {
  color: purple;
}
/*=======================================
jiki
========================================*/
.jikiBox {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  height: 205px;
  background: url("../images/jiki/bg.png") no-repeat;
  background-size: 100%;
}
.jikiBox > div {
  width: 100%;
  margin: 5px 0;
}
.jikiBox li {
  position: relative;
  display: inline-block;
}
.jikiBox img {
  height: 50px;
  width: auto;
  margin-left: 2px;
}
.jikiBox [class*="ymd"]:not(.goro) {
  height: 24px;
  margin: 0 5px 0 2px;
}
.jikiBox .goro, .jikiBox .koro {
  height: 20px;
  margin-left: -3px;
}
.jikiBox img[src*="spacer"] {
  width: 0;
  height: 0;
}
.jikiBox .disp-1 {
  display: inline !important;
}
/*=======================================
teller
========================================*/
.box_teller {
  display: flex;
  align-items: center;
  min-height: 140px;
  padding: 10px 13px;
  background-repeat: no-repeat;
  background-size: 40%;
}
.box_teller[class*="left"] {
  justify-content: flex-end;
  background-position: 2% center;
}
.box_teller[class*="right"] {
  background-position: 98% center;
}
.box_teller.right,
.box_teller.left {
  background-image: url("../images/teller/01.png");
}
.box_teller.right2 {
  background-image: url("../images/teller/04.png");
}
.box_teller.right3 {
  background-image: url("../images/teller/03.png");
}
.box_teller.left2 {
  background-image: url("../images/teller/02.png");
}
.box_teller.left4,
.box_teller.right4 {
  background-image: url("../images/teller/06.png");
  background-size: 45%;
}
.box_teller.left5,
.box_teller.right5 {
  background-image: url("../images/teller/05.png");
}
/*----- serif -----*/
.box_teller [class*="serif"] {
  width: 180px;
  margin: 0;
  padding: 12px 10px;
  border: 2px solid #c7ae49;
  border-radius: 10px;
  outline: 1px solid #26251e;
  outline-offset: -2px;
  text-align: left;
  font-size: 12px;
  color: #26251e;
  background: #fff;
}
.box_teller .serif_none {
  border: 0;
  outline: none;
  background: none;
}
/*=======================================
notice close
========================================*/
.close_notice {
  padding: 5px;
  color: #fff;
  background-color: #D40000;
}
.close_notice .tit {
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 10px;
}
.close_notice .link {
  text-align: right;
}
.close_notice .link a {
  color: #fff;
}
.link {
  margin: 0 10px;
  text-align: right;
  font-weight: bold;
  font-size: 12px;
}
.link a {
  text-decoration: none;
}
/*=======================================
payment
========================================*/
input[type="submit"]:-webkit-search-decoration, input[type="button"]:-webkit-search-decoration {
  display: none;
}
input[type="submit"]:focus, input[type="button"]:focus {
  outline-offset: -2px;
}
.btn-link.btn-link_c {
  margin: 0 0 20px 0;
  text-align: center !important;
}
.btn-link.btn-link_c a {
  width: 60%;
}
/*=======================================
ログイン
========================================*/
/* common
--------------------------------------- */
.bg_mkb_box {
  padding-top: 1px !important;
}
.career_box .inner {
  padding: 5px 10px;
}
.button_submit a {
  -webkit-appearance: none;
  display: block;
  width: 80%;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  margin: 8px auto 8px auto;
  font-weight: bold;
  line-height: 1;
  cursor: pointer;
  background: #f21212 none;
  padding: 15px 0;
  color: #fff;
  border: 1px solid #b3b1b1;
  text-decoration: none;
}
.btn_prev,
.btn_next {
  display: inline-block;
  padding: 8px 10px;
  border: 1px solid #d2d6d8;
  border-radius: 3px;
  text-decoration: none;
  color: #393e42 !important;
  font-size: 11px;
  background: #fff;
}
.btn_prev {
  margin: 0 0 30px 10px;
}
.btn_next {
  margin: 0 10px 30px auto;
}
.txt_mkb {
  margin: 0 0 7px 0;
  font-size: 11px;
  font-weight: bold;
  text-align: left;
  line-height: 1.2;
}
.career_box .text-large {
  font-size: 14px !important;
  font-weight: bold;
}
.career_box .text-kome {
  font-size: 10px;
  color: #ff0000;
}
.career_box h1 {
  display: block;
  padding: 10px 10px 10px 10px;
  font-size: 17px;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 0 10px 0;
  background: #14c1b8;
  text-align: center;
  color: #fff;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}
.career_box h1.noice {
  background: #44546a;
}
.career_box .paymentBox ul {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.career_box .paymentBox li {
  width: 32%;
}
.career_box .paymentBox li:last-child {
  margin-right: 0;
}
.career_box .paymentBox a,
.career_box .paymentBox button {
  width: 100%;
  height: 100%;
  position: relative;
  padding: 7px 0;
  box-shadow: 0 2px #aaa, 0 1px 1px #ddd;
  border: 1px solid #ddd;
  line-height: 1.5;
  text-shadow: 0 1px 1px #fff, 1px 1px 1px #fff;  
  font-size: 10px;
  color: #707070;
  background: rgb(237, 242, 244);
  background: linear-gradient(to bottom, rgba(237, 242, 244, 1) 0%, rgba(255, 255, 255, 1) 25%, rgba(197, 201, 208, 1) 100%);
}
.career_box .paymentBox a,
.career_box .paymentBox button {
  display: block;
  border-radius: 4px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
}
.paymentBox img {
  display: block;
  width: auto;
  height: 20px;
  margin: 0 auto 2px;
}
/* 無料TOP（上部：SNSログイン状態） */
.login_status {
  background: #666666;
  text-align: right;
  padding: 3px 3px;
}
.login_status p {
  font-size: 10px;
  color: #ffffff;
  line-height: 1.2;
  margin-bottom: 0;
}
.login_status p a {
  color: yellow;
}
/* マイページ（上部：SNSログイン状態） */
.login_status_pref {
  margin: 0 5px 5px 0;
  text-align: right;
  font-size: 10px;
  font-weight: bold;
  position: relative;
}
/* お問い合わせ（contact） */
.card_noice {
  margin: -15px 0 15px 0;
  font-size: 16px;
  line-height: 1.4;
}
.card_noice a {
  color: yellow;
  font-weight: bold;
}
/* SNSログイン */
.sns_login {
  margin: 15px 0 0;
}
.sns_login li {
  background: #FFF;
  -webkit-border-radius: 7px;
  border-radius: 7px;
  width: 100%;
  margin-bottom: 7px;
}
.sns_login li a {
  display: flex;
  align-items: center;
  height: 43px;
  padding: 0 8px;
  line-height: 43px;
  text-align: left;
  text-decoration: none;
  font-weight: bold;
  color: #333;
  border: 1px solid #b3b1b1;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  background: linear-gradient(to bottom, #eff0f0, #eff0f0);
  background: -moz-linear-gradient(to bottom, #FFF, #eff0f0);
  background: -webkit-gradient(linear, left top, left bottom, from(#eff0f0), to(#eff0f0));
  background: -webkit-linear-gradient(top, #FFF 0%, #FFF 100%);
}
.sns_login li a img {
  width: 27px;
  margin-right: 10px;
  vertical-align: -9px;
}
.text-caution {
  padding: 0 10px;
  text-align: left;
  font-size: 12px;
}
.box_noice {
  color: #333;
}
/*=======================================
メルマガ(LINE＠)ページ
========================================*/
.text_step {
  margin: 10px 15px 20px;
  padding: 7px 10px;
  border-radius: 5px;
  text-align: left;
  font-size: 12px;
  color: #fff;
  background: #202b40;
}
/*=======================================
myinfo
========================================*/
/* アンケート
------------------------- */
.qa_disp-0 {
  display: none;
}
.qa_disp-1 {
  display: block;
}
.form-box .questionnaire_box .form-title {
  margin: 0 0 10px;
  padding: 5px 8px;
  border-bottom: 0;
  border-radius: 3px;
  background: #a38a24;
  line-height: 1.4;
  color: #fff;
}
.form-box .questionnaire_box label {
  width: auto;
  display: block;
  margin: 0 10px 10px;
}
.form-box .questionnaire_box .questionnaire_list {
  display: none;
}
.form-box .questionnaire_box .questionnaire_list.selected {
  display: block;
}
.form-box .questionnaire_box #qa_result {
  display: none;
  background: rgba(153, 51, 51, 0.5);
  padding: 15px;
  font-size: 15px;
  border-top: 2px solid #a38a24;
  border-bottom: 2px solid #a38a24;
  color: #fff;
}
.form-box .questionnaire_box #qa_result span {
  display: inline-block;
  color: #fbe703;
}
.form-box .questionnaire_box #qa_result.selected {
  display: block;
}
.form-box .questionnaire_box .form-title {
  font-weight: normal;
  font-size: 95%;
}
.form-box .questionnaire_box input {
  margin-left: -22px;
}
.form-box .question_noice {
  padding: 10px;
  margin: 10px 0 15px;
  font-size: 12px;
  border: 2px solid #c09822;
  line-height: 1.7;
  color: #fff;
  border-radius: 3px;
  background: rgba(101, 79, 33, 0.5);
}
.form-box .question_noice.dis_none {
  display: none;
}
.form-box #qa_result {
  background: rgba(153, 51, 51, 0.5);
  padding: 10px;
  border-top: 1px solid #bfa569;
  border-bottom: 1px solid #bfa569;
}
.form-box #textarea_open {
  padding: 10px;
  width: 100%;
  resize: vertical;
  overflow: auto;
  height: 75px;
  font-size: 12px;
}
/* 姓名の入力について
------------------------- */
.name_help {
  margin: 20px 10px;
}
.name_help * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  -o-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
}
.name_help #NameTit {
  width: auto;
  height: auto;
  padding-top: 0;
  text-indent: 0;
  padding-bottom: 20px;
  font-size: 1.5em;
  color: #fc0;
  text-align: center;
  background-image: none;
}
.name_help .alert-list {
  text-align: left;
  margin-bottom: 25px;
  padding-left: 25px;
}
.name_help li {
  margin-bottom: 10px;
  float: none;
  list-style-type: disc !important;
  text-align: left;
}
.name_help p.tit {
  color: #FC0;
  font-size: 1.1em;
  text-align: left;
  margin-bottom: 5px;
  margin-left: 5px;
}
.name_help table {
  width: 100%;
  margin: 0 auto 30px auto;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  font-size: 1.1em;
}
.name_help table th, .name_help table td {
  padding: 5px;
  color: #CCC;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.name_help table tr th {
  color: #000;
  background: #99CCFF;
}
.name_help table tr td {
  color: #000;
  background: #CCC;
  text-align: center;
}
.name_help table tr:first-child th {
  color: #FFF;
  background: #003399;
}
.name_help table tr:first-child td {
  color: #FFF;
  background: #666666;
}
.name_help li.Circle {
  list-style-type: circle !important;
}
.name_help #More {
  padding-left: 20px;
}
.name_help #More li {
  margin-bottom: 3px;
}
/*=======================================
addressBook
========================================*/
.addressBook .list-menu {
  margin-top: 10px;
  text-align: left;
}
/*=======================================
bookmark
========================================*/
.icon-hart {
  margin: 10px;
  text-align: right;
}
.icon-hart a {
  display: inline-block;
  padding: 5px 0 5px 20px;
  text-decoration: none;
  text-align: right;
  font-weight: bold;
  font-size: 12px;
  background: url(../images/icon/icon-hart.png) no-repeat left center;
  background-size: 15px;
}
/*=======================================
利用規約
========================================*/
#agreement_box dl {
  margin-bottom: 30px;
}
#agreement_box dt {
  margin-bottom: 10px;
  padding: 5px 0;
  border-bottom: 1px solid #ddd;
}
#agreement_box dt + dt {
  border-bottom: 0;
}
#agreement_box dd {
  padding-left: 1.2em;
  text-indent: -1.2em;
  margin-bottom: 10px;
}
#agreement_box dd.ind {
  margin-left: 15px;
  padding-left: 1.5em;
  text-indent: -1.7em;
}
#agreement_box dd.ind02 {
  margin-left: 15px;
  padding-left: 1.5em;
  text-indent: -2.3em;
}
#agreement_box dd.ind03 {
  padding-left: 1.2em;
  text-indent: -1.8em;
}
#agreement_box dd.no_ind {
  padding-left: 0;
  text-indent: 0;
}
/*=======================================
privacy policy
========================================*/
#privacy dt {
  margin-bottom: 10px;
  padding: 5px 0;
  border-bottom: 1px solid #fff;
}
#privacy dd {
  margin-bottom: 15px;
  padding-left: 1em;
}
/*=======================================
ppv confirm
========================================*/
.ppvdo.confirm .form-box {
  padding: 0;
}
.paymentBox select {
  width: 250px;
  height: 35px;
  margin: 0 auto 15px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  line-height: 33px;
  background: url(../images/icon/arrow_select.png) no-repeat 96% center #fff;
  background-size: 10px;
}
.paymentBox br {
  display: none;
}
.confirmBox {
  width: 250px;
  margin: 0 auto;
}
.confirmBox li {
  margin-bottom: 15px;
}
.confirmBox button, .confirmBox2 button {
  width: 100%;
  height: 65px;
  cursor: pointer;
}
.confirmBox .text-small {
  line-height: 15px;
}
/* 一部無料 */
.confirmBox .btn-ichibu, .confirmBox .partRelease-btn {
  height: auto;
  padding: 6px 10px 8px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .15);
  border-radius: 45px;
  border: 1.5px solid #c7a4f6;
  letter-spacing: 1px;
  text-shadow: 0 1px 3px rgba(0,0,0,.2);
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  position: relative;
  background: #9a6adc;
}
.confirmBox .partRelease-btn {
  margin-bottom: 20px;
}
/* 購入する */
.confirmBox .btn-pay {
  background: url(../images/common/btn-pay.png) no-repeat center;
  background-size: 100%;
}
/* クレカ */
.confirmBox .btn-credit {
  background: url(../images/common/btn-credit.png) no-repeat center;
  background-size: 100%;
}
/* webマネー */
.confirmBox .btn-web {
  background: url(../images/common/btn-web.png) no-repeat center;
  background-size: 100%;
}
/* paypay */
.confirmBox .btn-paypay {
  background: url(../images/common/btn-paypay.png) no-repeat center;
  background-size: 100%;
}
/* Amazon */
.confirmBox .ppvDoAmazonPayArea {
  margin-bottom: 20px;
}
.confirmBox #AmazonPayButton {
  margin: 0;
  border-radius: 3px; 
}
.ppvDoAmazonPayBtnLink a {
  display: block;
  padding: 5px;
  box-shadow: 0 2px 2px rgba(0, 0, 0, .16);
  border-radius: 3px;
  border: 1px solid #ccc;
  text-decoration: none;
  font-weight: bold;
  color: #333;
  background: linear-gradient(to bottom, #F7F8FA, #E7E9EC);
}
/* atone対応
------------------------------------------------------- */
.pay_method_btn_atone {
  display: none;
  overflow: hidden;
  padding: 5px 0;
}
.box_payment_select .pay_method_btn_atone {
  padding: 0;
}
.career_box .pay_method_btn_atone > a {
  margin: 8px 0 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  background: none;
}
.career_box .pay_method_btn_atone > a > img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.ppvdo .pay_method_btn_atone li a {
  width: 100%;
  padding: 7px 0 3px;
  position: relative;
  box-shadow: 0 2px #aaa, 0 1px 1px #ddd;
  border: 1px solid #ddd;
  text-shadow: 0 1px 1px #fff, 1px 1px 1px #fff;
  font-size: 10px;
  color: #707070;
  background: linear-gradient(to bottom, rgba(237, 242, 244, 1) 0%, rgba(255, 255, 255, 1) 25%, rgba(197, 201, 208, 1) 100%);
}
.ppv_view .pay_method_btn_atone img {
  display: block;
  max-height: 16px !important;
  width: auto;
  margin: auto;
}
/* ドコモ対応
------------------------------------------------------- */
/* ドコモ表示 */
.docomo-branch-docomo .is-docomo {
  display: inline;
}
.docomo-branch-docomo .no-docomo {
  display: none;
}
/* ausb表示 */
.docomo-branch-common .no-docomo {
  display: inline;
}
.docomo-branch-common .is-docomo {
  display: none;
}


/*
  背景が明るいサイトの時に追加するcss
  (普段はコメントアウトしておく)
------------------------------------------------------- */
/*.text-yellow {
  color: #ac983c !important;
}
.form-box .form-title {
  border-bottom: 1px solid #ac983c;
}
.form-title .form-caution {
  color: #ac983c;
}
.form-box .question_noice {
  background: rgba(101, 79, 33, 0.8);
}
.card_noice a {
  color: #ff2b88;
}*/








