@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Roboto');
/* CSS Document */

BODY {
  background: #fff;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
BODY, H1, H2, H3, H4, H5, H6, P, TD, TH, DIV, INPUT, TEXTAREA, OL, UL, LI, PRE{
  font-weight: 500;
  font-family: "游ゴシック", YuGothic,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
}
H1,
H2,
H3,
H4,
H5,
H6{
    font-weight: bold;
}
P,
TD,
TH,
LI,
DIV,
INPUT,
TEXTAREA{
  font-size: small;
  line-height: 180%;
  max-height: 100%;
}
a,
a:visited {
  color: #000;
  text-decoration: none;
  transition: opacity 0.5s;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  border: none;
}

#wrapper {
  min-width: 1100px;
  overflow: hidden;
  position: relative;
}

/* rank icon */
.rank {
  display: inline-block;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  line-height: 38px;
  text-align: center;
  font-size: 20px;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  color: #4e6aa6;
  border: 1px solid #4e6aa6;
  background: #fff;
}
.rank1 {
  border: none;
  color: #fff;
  background: #ff8a60;
  background: -moz-linear-gradient(-45deg,  #ff8a60 0%, #ffda60 100%);
  background: -webkit-linear-gradient(-45deg,  #ff8a60 0%,#ffda60 100%);
  background: linear-gradient(135deg,  #ff8a60 0%,#ffda60 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff8a60', endColorstr='#ffda60',GradientType=1 );
}
.rank2 {
  border: none;
  color: #fff;
  background: #ff6260;
  background: -moz-linear-gradient(-45deg,  #ff6260 0%, #ff93ad 100%);
  background: -webkit-linear-gradient(-45deg,  #ff6260 0%,#ff93ad 100%);
  background: linear-gradient(135deg,  #ff6260 0%,#ff93ad 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff6260', endColorstr='#ff93ad',GradientType=1 );
}
.rank3 {
  border: none;
  color: #fff;
  background: #60aeff;
  background: -moz-linear-gradient(-45deg,  #60aeff 0%, #60feff 100%);
  background: -webkit-linear-gradient(-45deg,  #60aeff 0%,#60feff 100%);
  background: linear-gradient(135deg,  #60aeff 0%,#60feff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#60aeff', endColorstr='#60feff',GradientType=1 );
}

/* btn */
.btn a,
.btn_s a,
.btn_m a {
  text-decoration: none;
  text-align: center;
  color: #fff;
  margin-bottom: 10px;
}
.btn a {
  display: block;
  font-size: 15px;
  padding: 15px;
  font-weight: 600;
}
.btn_s a {
  display: inline-block;
  font-size: 13px;
  padding: 5px 20px;
  font-weight: 500;
}
.btn_m a {
  display: inline-block;
  font-size: 15px;
  padding: 15px;
  font-weight: 600;
  min-width: 260px;
}
.btn a:hover,
.btn_s a:hover,
.btn_m a:hover {
  text-decoration: none;
}
.btn a i {
  margin-right: 1em;
}
.btn_style01 a {
  background: #ffb260;
}
.btn_style02 a {
  background: #5c7fca;
}
.btn_style03 a {
  background: #ff8a60;
}
.btn_style04 a {
  background: #3ca1b7;
}
.btn_style05 a {
  border: 1px solid #000;
  color: #000;
}
.btn_style06 a {
  border: 1px solid #e7e9eb;
  background: #f7f8fa;
  color: #000;
}
.btn_tw a {
  background: #6eb6e3;
}
.btn_fb a {
  background: #6180c1;
}
.btn_line a {
  background: #84cc61;
}
.btn_login a {
  background: #ffb260;
}
.btn_new a {
  background: #5c7fca;
}
.btn_next a {
  background: #ff8a60;
}
.btn_back a {
  background: #e7e9eb;
  color: #999;
}

/* link */
.a_line {
  text-decoration: underline;
}

/* box */
.box {
  box-sizing: border-box;
  padding: 20px;
  margin-bottom: 20px;
  overflow: hidden;
}
.box_style01 {
  border: 1px solid #e7e9eb;
}
.box_style02 {
  background: #f7f8fa;
}
.box_buy {
  border: 1px solid #ff8a60;
}

/* txt */
.txt_attention {
  color: #cc0000;
}
.txt_bold {
  font-weight: bold;
}

/* ul */
.ul_style01,
.ul_style02 {
  margin: 0 0 20px;
}
.ul_style01 li,
.ul_style02 li {
  position: relative;
  margin: 0 0 5px;
  padding: 0 0 0 1em;
}
.ul_style01 li::before {
  content: "\f105";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #d6d7d9;
  position: absolute;
  top: 0;
  left: 0;
}
.ul_style02 li::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4e6aa6;
  position: absolute;
  top: 0.9em;
  left: 2px;
  margin-top: -3px;
}

/* ----------------------------------------------------------------------
   header
---------------------------------------------------------------------- */

#header {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999999;
}
#header_inner {
  max-width: 1080px;
  height: 56px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
#header_inner > * {
}
#header_logo {
  width: 180px;
  order: 1;
  line-height: 100%;
  margin: 0 15px;
}
#header_logo img {
  vertical-align: middle;
}
/* search */
#header_search {
  flex: auto;
  position: relative;
  margin: 0 20px;
  order: 2;
  box-sizing: border-box;
}
#header_search input[type=text] {
  width: 100%;
  height: 30px;
  border: 1px solid #c0c3c6;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 0 10px;
  margin: 0 auto;
}
#header_search button[type=submit] {
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  font-size: 18px;
  line-height: 100%;
  position: absolute;
  top: 6px;
  right: 10px;
}
#search_word {
  display: none;
  position: fixed;
  z-index: 100;
  width: 100%;
}
#search_word_inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 1080px;
  background: #fff;
  border: 1px solid #e7e9eb;
  margin: 0 auto;
  padding: 20px 0 10px;
  position: relative;
}
#search_word_btn {
  overflow: hidden;
  border: 1px solid #e7e9eb;
  border-left: none;
  background: #fff;
  margin: 0 50px 0 20px;
}
#search_word_btn li {
  box-sizing: border-box;
  float: left;
  text-align: center;
  width: 50%;
  background: #f7f8fa;
  padding: 10px;
  cursor: pointer;
  border-left: 1px solid #e7e9eb;
}
#search_word_btn li.active {
  background: #fff;
}
.search_word_list > div {
  display: none;
  padding: 10px;
}
.search_word_list > div.active {
  display: block;
}
.search_word_list ul {
  overflow: hidden;
}
.search_word_list li {
  float: left;
  width: 50%;
}
.search_word_list li a {
  display: block;
  margin: 0 10px;
  padding: 5px 10px;
  border-bottom: 1px solid #e7e9eb;
}
.search_word_list .rank {
  width: 30px;
  height: 30px;
  line-height: 28px;
  margin-right: 10px;
  font-size: 16px;
}
#search_word_cancel01,
#search_word_cancel02 {
  position: absolute;
  right: 15px;
  top: 20px;
  font-size: 25px;
  cursor: pointer;
}
#search_word_cancel02 {
  display: none;
}

/* event */
/* icon */
#header_event {
  overflow: hidden;
  order: 3;
  width: 100px;
}
#header_icon {
  overflow: hidden;
  order: 4;
  width: 150px;
}
#header_event li {
  width: 50%;
  display: inline-block;
  font-size: 20px;
  text-align: center;
  line-height: 100%;
  margin-top: 10px;
}
#header_icon li {
  width: 33.333333%;
  display: inline-block;
  font-size: 20px;
  text-align: center;
  line-height: 100%;
  margin-top: 10px;
}
#header_event li span,
#header_icon li span {
  display: block;
  font-size: 9px;
  line-height: 100%;
  margin-top: 3px;
}
#header_event a,
#header_icon a,
#header_icon #icon_search {
  text-decoration: none;
  display: block;
  padding: 0;
  color: #333;
  cursor: pointer;
}
#header_icon #icon_search {
  display: none;
}
#header_icon #icon_cart {
  position: relative;
}
#header_icon #icon_cart .num {
  position: absolute;
  top: -10px;
  right: 0;
  background: #ff8a60;
  color: #fff;
  line-height: 16px;
  border-radius: 8px;
  padding: 0 5px;
}
#header_event #icon_event a {
  color: #4e6aa6;
}
#header_event #icon_fair a {
  color: #3ca1b7;
}

#g_nav_btn::before,
#g_nav_btn_sp::before,
#header_event a::before,
#header_icon a::before,
#header_icon #icon_search::before {
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
}
#g_nav_btn::before,
#g_nav_btn_sp::before {
  content: "\f0c9";
}
#icon_event a::before {
  content: "\f005";
}
#icon_fair a::before {
  content: "\f54e";
}
#icon_login a::before {
  /*content: "\f2f6";*/
  content: "\f2c2";

}
#icon_shop a::before {
  content: "\f1ad";
}
#icon_cart a::before {
  content: "\f07a";
}
#icon_search::before {
  content: "\f002";
}


/* nav */
.g_nav_btn{
  text-align: center;
  width: 50px;
  font-size: 20px;
  line-height: 120%;
}
.g_nav_btn span{
  line-height: 1;
  font-size: 8px;
  text-align: center;
  display: block;
  line-height: 100%;
}
.g_nav{
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 300px;
  opacity: 0;
  visibility: hidden;
  transition: 0.1s;
  -webkit-transition: 0.1s;
  -ms-transition: 0.1s;
}
.g_nav_wrapper{
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  max-width: 1080px;
  background: #fff;
  border: 1px solid #e7e9eb;
  margin: 0 auto;
  padding: 20px 0;
  position: relative;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
.g_nav_active{
  opacity: 1;
  visibility: visible;
}
.g_nav_btn_sp{
  display: none;
  margin: 0 0 0 -6px;
  text-align: center;
  width: 40px;
  font-size: 18px;
  line-height: 120%;
}
.g_nav_btn_sp span{
  line-height: 1;
  font-size: 8px;
  text-align: center;
  display: block;
  line-height: 100%;
}
.g_nav_sp_wrapper{
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
.g_nav_sp_close{
  height: 50px;
  line-height: 50px;
  padding: 0 12px;
  color: #fff;
  background: #ff8a60;
}
.sp_nav_open {
  overflow-x: hidden;
}

.g_nav_wrapper {
  display: flex;
}
.g_nav_wrapper > div:first-child {
  border-left: none;
}
.g_nav_box {
  box-sizing: border-box;
  width: 20%;
  border-left: 1px solid #e7e9eb;
  padding: 0 20px;
}
.g_nav_box .ttl {
  font-size: 16px;
  margin-bottom: 10px;
}
.g_nav_box ul {
  margin: 0 0 0 10px;
}
.g_nav_box li {
  padding: 0 0 5px 15px;
  position: relative;
}
.g_nav_box li:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\f105";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #d6d7d9;
}
.g_nav_box .separate {
  margin-top: 20px;
}

/* ----------------------------------------------------------------------
   footer
---------------------------------------------------------------------- */

#pagetop {
  position: fixed;
  left:50%;
  bottom: 40px;
  margin-left: 500px;
  background: #f57141;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 20;
}
#pagetop::after {
  content: "\f106";
  font-family: "Font Awesome 5 Free";
  font-size: 30px;
  font-weight: bold;
  line-height: 40px;
  text-indent: 0;
  text-align: center;
  color: #fff;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
#pagetop span {
  visibility: hidden;
}

#footer {
  border-top: 1px solid #e7e9eb;
  overflow: hidden;
}
#footer_menu {
  width: 1080px;
  margin: 0 auto;
  padding: 50px 0;
  display: flex;
}
#footer_menu .ttl {
  font-size: 16px;
  font-weight: bold;
  color: #f57141;
  margin-bottom: 10px;
}
#footer_menu li {
  font-weight: bold;
  margin-bottom: 10px;
}
#footer_menu .li_arrow {
  font-weight: normal;
  position: relative;
  margin-bottom: 0;
  padding-left: 15px;
}
#footer_menu .li_arrow:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\f105";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #d6d7d9;
}
#footer_menu .separate {
  margin-top: 20px;
}
.footer_menu_box {
  flex: auto;
  margin-left: 50px;
}

.footer_link {
  border-top: 1px solid #e7e9eb;
  overflow: hidden;
  width: 1080px;
  margin: 0 auto;
  padding: 30px 0;
  display: flex;
  justify-content: center;
}
.footer_link li {
  padding: 0 20px;
}

#copyright {
  text-align: center;
  color: #fff;
  background: #262626;
  font-size: 12px;
  padding: 20px 0;
}
#copyright br {
  display: none;
}

/* ----------------------------------------------------------------------
   outside
---------------------------------------------------------------------- */

#outside {
  position:relative;
}
#outside > div {
  position: absolute;
  /*top: 56px;*/
  /*top: 116px;*/
  width: 240px;
  padding-top: 5px;
}
#outside .left {
  right: 50%;
  margin-right: 560px;
  z-index: 1050;
}
#outside .right {
  left: 50%;
  margin-left: 560px;
  z-index: 1050;
}


/* ----------------------------------------------------------------------
   contents
---------------------------------------------------------------------- */

#contents {
  padding: 5px 0 20px;
}
.contents_wrap {
  width: 1080px;
  margin: 0 auto;
}


/* ----------------------------------------------------------------------
   main
---------------------------------------------------------------------- */

#main {
  overflow: hidden;
  margin-bottom: 20px;
  position: relative;
}
#main > div {
  float: left;
}
.main_img_thumb {
  position: relative;
}
.main_img_thumb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 3px solid #ff8a60;
  opacity: 0;
  transition: opacity 0.5s;
}
.main_img_thumb:hover::before,
.main_img_thumb.select::before {
  opacity: 1;
}


[id^="main_img"] {
  cursor: pointer;
}
.main_popup{
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(-45deg,  rgba(255,138,96,0.95) 50%, rgba(255,218,96,0.95) 100%);
  background: -webkit-linear-gradient(-45deg,  rgba(255,138,96,0.95) 50%,rgba(255,218,96,0.95) 100%);
  background: linear-gradient(135deg,  rgba(255,138,96,0.95) 50%,rgba(255,218,96,0.95) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2ff8a60', endColorstr='#f2ffda60',GradientType=1 );
  position: absolute;
  top: 0;
  left: 0;
  float: none;
  visibility: hidden;
  opacity: 0;
  transition: 0.2s;
  -webkit-transition: 0.2s;
  -ms-transition: 0.2s;
}
.main_on{
  transition-delay: 0s;
  opacity: 1;
  visibility: visible;
}
.main_popup_img{
  float: left;
  cursor: pointer;
}
.main_popup_inner {
  float: right;
  margin: 40px 40px 0 0;
  width: 730px;
}
.main_popup_bnr {
  overflow: hidden;
  margin-right: -30px;
}
.main_popup_bnr li {
  float: left;
  margin: 0 30px 0 0;
}
.main_popup_ttl {
  margin: 30px 0 20px;
  border-bottom: 1px solid #fff;
  overflow: hidden;
}
.main_popup_ttl span {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.main_popup_ttl a {
  float: right;
  display: block;
  background: #fff;
  border-radius: 15px;
  padding: 4px 20px;
  margin-bottom:13px;
}
.main_popup_news li {
  position: relative;
  padding: 0 0 5px 20px;
}
.main_popup_news li:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\f105";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #fff;
}
.main_popup .main_popup_close {
  color: #fff;
  font-size: 30px;
  font-weight: normal;
  position: absolute;
  top: 8px;
  right: 8px;
  cursor: pointer;
}


/* ----------------------------------------------------------------------
   side
---------------------------------------------------------------------- */

#side {
  float: left;
  width: 240px;
}
#side .bnr {
  margin-bottom: 30px;
}
#side .bnr li {
  margin-bottom: 10px;
}

.parts {
  background: #f7f8fa;
  position: relative;
  margin-bottom: 30px;
  overflow: hidden;
}
.parts:before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: #1e5799;
  background: -moz-linear-gradient(left,  #5c7fca 0%, #ffc2ad 100%);
  background: -webkit-linear-gradient(left,  #5c7fca 0%,#ffc2ad 100%);
  background: linear-gradient(to right,  #5c7fca 0%,#ffc2ad 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c7fca', endColorstr='#ffc2ad',GradientType=1 );
}
.parts .ttl {
  font-size: 16px;
  font-weight: bold;
  color: #4e6aa6;
  padding: 20px;
}

.parts.news ul {
  margin: 0;
  padding: 0 10px 0 20px;
  overflow-y: auto;
  height: 200px;
}
.parts.news li {
  margin-bottom: 20px;
}
.parts.news .date {
  color: #4e6aa6;
}

#side .ranking .item {
  margin: 0 15px 15px;
  padding: 15px;
  border: 1px solid #e7e9eb;
  background: #fff;
  position: relative;
  text-align: center;
}
#side .ranking .item a {
  display: block;
}
#side .ranking .item_list_thumb {
  margin-bottom: 10px;
}
#side .ranking .item_list_ttl {
  margin-bottom: 0px;
  text-align: left;
}
#side .ranking .rank {
  position: absolute;
  z-index: 10;
  left: 0;
  top: 0;
}

#side .fairevent_bnr {
  margin-bottom: 30px;
  overflow: hidden;
}

/* ----------------------------------------------------------------------
   main_contents
---------------------------------------------------------------------- */

.main_contents {
  float: right;
  width: 810px;
}
.ttl_style01 {
  font-size: 22px;
  font-weight: 500;
  padding: 20px 0;
  margin-bottom: 30px;
  border-bottom: 3px solid #ff8a60;
}
.ttl_style02 {
  font-size: 18px;
  color: #4e6aa6;
  border-left: 5px solid #4e6aa6;
  padding-left: 10px;
  margin-bottom: 20px;
  line-height: 1;
}
.ttl_style03 {
  font-size: 20px;
  font-weight: 500;
  padding: 15px 0;
  margin-bottom: 30px;
  border-bottom: 3px solid #c0c3c6;
}
.ttl_style04 {
  font-size: 15px;
  color: #3ca1b7;
  border-left: 3px solid #3ca1b7;
  padding-left: 10px;
  margin-bottom: 20px;
  line-height: 1;
}
.ttl_class {
  font-size: 20px;
  font-weight: 500;
  padding: 15px 0;
  margin-bottom: 30px;
  border-bottom: 3px solid #f57141;
  color: #f57141;
}

/* breadcrumb */
#breadcrumb {
  margin: 10px 0 20px 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#breadcrumb li {
  display: inline;
  padding-left: 30px;
  position: relative;
  color: #00234f;
  font-size: 12px;
}
#breadcrumb li::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 13px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #9a9a9a;
  border-right: 1px solid #9a9a9a;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#breadcrumb li:first-child {
  padding-left: 0;
}
#breadcrumb li:first-child::before {
  display: none;
}
#breadcrumb a {
  text-decoration: underline;
}

/* attention */
#attention_area {
  box-sizing: border-box;
  border: 1px solid #4e6aa6;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  padding: 10px;
  margin: 0 0 20px;
}

#attention_area li.attention_area{
    font-weight: bold;
    font-size: 16px;
    border: 1px solid #4e6aa6;
    padding: 10px;
    margin-bottom: 10px;
}

#attention_area a {
  color: #4e6aa6;
  text-decoration: underline;
}

/* item */
.item_list ul {
  overflow: hidden;
  margin: 0 -15px;
}
.item_list li {
  float: left;
  width: 180px;
  margin: 0 15px 40px;
}
.item_list li a {
  display: block;
  padding-top: 30px;
  position: relative;
}
.item_list li a:hover {
  text-decoration: none;
}
.item_list li:nth-child(4n + 1) {
  clear: both;
}
.item_list_class p {
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #f57141;
  color: #f57141;
  font-size: 10px;
  text-align: center;
  margin: 0;
  padding: 0 20px;
  position: absolute;
  top: 0;
  left: 0;
}
.item_list_thumb {
  margin-bottom: 20px;
  text-align: center;
  width: 100%;
  padding-top: 100%;
  position: relative;
  border: 1px solid #e7e9eb;
}
.item_list_thumb img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.item_list_ttl {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 130%;
}
.item_list_detail {
}
.item_list_detail .price {
  color: #3ca1b7;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 5px;
}
.item_list_detail .release,
.item_list_detail .sell,
.item_list_detail .stock {
  font-size: 14px;
}
.item_list_detail .sell span {
    color: #3ca1b7;
}
.item_list_detail .prize_point,
.item_list_detail .item {
  font-size: 14px;
  margin-bottom: 5px;
}
.item_list_detail .prize_point span {
  font-size: 16px;
  color: #3ca1b7;
  font-weight: bold;
}
.item_list_detail .item a {
  text-align: left;
  padding: 5px 10px;
  margin-bottom: 5px;
  line-height: 130%;
}

/* bnr_ad */
.bnr_ad {
  overflow: hidden;
  margin: 0 -15px;
}
.bnr_ad_s,
.bnr_ad_l {
  float: left;
  margin: 0 15px 30px;
}
.bnr_ad_s {
  width: 390px;
}
.bnr_ad_l {
  width: 810px;
}

/* ----------------------------------------------------------------------
   search
---------------------------------------------------------------------- */

#search_main {
}

.txt_search_word {
  color: #ff8a60;
}

#search_main_btn {
  border-bottom: 1px solid #e7e9eb;
  display: flex;
  justify-content: space-between;
}
#search_main_btn li {
  cursor: pointer;
  border: 1px solid #e7e9eb;
  background: #f7f8fa;
  margin-bottom: -1px;
  padding: 10px 0;
  width: 48%;
  text-align: center;
  font-size: 18px;
  border-radius: 5px 5px 0 0;
}
#search_main_btn li.active {
  border-bottom: 1px solid #fff;
  background: #fff;
}
#search_main_body > div {
  display: none;
}
#search_main_body > div.active {
  display: block;
}
.search_item_list li {
  border-bottom: 1px solid #e7e9eb;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 30px 0;
}
.search_item_list li > a {
  flex: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
}
.search_item_list .item_list_thumb {
  width: 180px;
  padding-top: 180px;
  margin: 0;
}
.search_item_list .item_list_inner {
  width: 880px;
}
.search_item_list .item_list_class {
  overflow: hidden;
}
.search_item_list .item_list_class p {
  display: inline-block;
  margin-bottom: 20px;
  position: initial;
  width: auto;
}
.search_item_list .item_list_ttl {
  font-size: 16px;
  line-height: 150%;
}
.search_item_list .item_list_detail {
}
.search_item_list .item_list_detail .price {
  font-size: 16px;
}
.search_item_list .item_list_detail .release,
.search_item_list .item_list_detail .sell,
.search_item_list .item_list_detail .stock {
  font-size: 15px;
}

.pager {
  margin: 30px 0;
  text-align: center;
  display: flex;
  justify-content: center;
}
.pager ul {
  overflow: hidden;
  display: flex;
  justify-content: center;
  margin: 0 10px;
}
.pager a {
  box-sizing: border-box;
  display: block;
  margin: 0 5px;
  background: #f7f8fa;
  padding: 5px 15px;
  text-decoration: none;
}
.pager .current a {
  font-weight: bold;
  border: 1px solid #e7e9eb;
  background: #fff;
}

/* 条件 */
#search_box {
  background: #F7F8FA;
  margin: 30px 0 0;
}
.search_box_btn {
  border: 1px solid #4e6aa6;
  padding: 10px;
  text-align: center;
  font-size: 16px;
  cursor: pointer;
  color: #4e6aa6;
}
.search_box_btn i {
  margin-left: 10px;
}
.search_box_btn .close,
.search_btn_on .open {
  display: none;
}
.search_btn_on .close {
  display: block;
}

.search_box_select {
  padding: 30px;
  overflow: hidden;
  display: none;
}
.search_box_inner {
  float: left;
  width: 510px;
  overflow: hidden;
  margin-bottom: 20px;
}
.search_other {
  width: 100%;
}
.search_box_ttl {
  float: left;
  font-weight: bold;
  padding: 5px 0;
}
.search_box_detail {
  margin-left: 100px;
}
.search_box_detail label {
  margin-right: 15px;
  padding: 5px 0;
  display: inline-block;
}
.search_box_detail input[type=checkbox] {
  margin-right: 8px;
}
.search_box_detail input[type=text] {
  border: 1px solid #e7e9eb;
  border-radius: 5px;
  padding: 5px;
}
.select_wrap {
  display: inline-block;
  position: relative;
}
.select_wrap select {
  outline: none;
  border: 1px solid #e7e9eb;
  border-radius: 5px;
  padding: 5px 30px 5px 10px;
  text-indent: 0.01px;
  text-overflow: '';
  background: #fff;
  vertical-align: middle;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
}
.select_wrap::before {
  z-index: 1;
  position: absolute;
  right: 10px;
  top: 5px;
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  color: #000;
  pointer-events: none;
}

.search_box_submit {
  text-align: center;
}
.search_box_submit a {
  display: inline-block;
  border: 1px solid #4e6aa6;
  background: #fff;
  color: #4e6aa6;
  padding: 5px 50px;
  text-decoration: none;
}
.clear {
  clear: both;
}

/* ----------------------------------------------------------------------
   shop - index
---------------------------------------------------------------------- */

.shop_list_main {
  margin-bottom: 30px;
}

.shop_list {
  background: #f7f8fa;
  margin-bottom: 30px;
}
.shop_list_inner {
  border-bottom: 1px solid #e7e9eb;
  overflow: hidden;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.shop_list_name {
  width: 100px;
  color: #f57141;
  font-size: 18px;
  font-weight: bold;
}
.shop_list_name a {
  color: #f57141;
  text-decoration: none;
}
.shop_list_info {
  width: 510px;
}
.shop_list_info li {
  font-size: 14px;
  line-height: 130%;
  padding: 5px 0 5px 1.5em;
  position: relative;
}
.shop_list_info li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  color: #4e6aa6;
  margin-right: 10px;
  position: absolute;
  left: 0;
  top: 5px;
}
.shop_list_info li.address:before {
  content: "\f3c5";
}
.shop_list_info li.time:before {
  content: "\f017";
}
.shop_list_info li.tel:before {
  content: "\f095";
}

.shop_list_map a {
  display: inline-block;
  border: 1px solid #e7e9eb;
  background: #fff;
  margin-left: 10px;
  padding: 3px 10px;
  font-size: 10px;
  line-height: 1;
}
.shop_list_map a:hover {
  text-decoration: none;
}
.shop_list_map i {
  font-size: 13px;
}

.shop_list_btn {
  width: 120px;
}
.shop_list_btn a {
  font-size: 11px;
  border-radius: 20px;
  padding: 2px;
}

.event_list_wrap {
  margin-bottom: 20px;
}
.event_list {
  margin: 0 0 20px;
  padding: 0;
  background: #f7f8fa;
}
.event_list li {
  padding: 15px 20px;
  border-bottom: 1px solid #e7e9eb;
}
.event_list .store a {
  display: inline-block;
  margin: 0 5px 5px 0;
  padding: 0 10px;
  border: 1px solid #e7e9eb;
  background: #fff;
  font-size: 11px;
  line-height: 180%;
  text-decoration: none;
}


/* ----------------------------------------------------------------------
   shop - detail
---------------------------------------------------------------------- */

#shop_detail_img {
  margin-bottom: 30px;
}

#shop_detail_txt {
  margin-bottom: 30px;
}
#shop_detail_txt p {
  font-size: 14px;
}

#shop_detail_btn {
  border-top: 1px solid #e7e9eb;
  margin-bottom: 30px;
  padding: 30px 0 0;
}
#shop_detail_btn ul {
  margin: 0 -15px;
  overflow: hidden;
}
#shop_detail_btn li {
  float: left;
  width: 390px;
  margin: 0 15px;
}
#shop_detail_btn .btn a {
  padding: 9px 0;
  border-radius: 20px;
}

#shop_detail_info {
  background: #f7f8fa;
  padding: 30px;
  margin-bottom: 30px;
  overflow: hidden;
}
#shop_detail_info .map {
  float: left;
  width: 375px;
}
#shop_detail_info .map iframe {
  width: 100%;
  height: 440px;
}
#shop_detail_info .info,
#shop_detail_info .access {
  float: right;
  width: 345px;
  box-sizing: border-box;
}
#shop_detail_info .info {
  margin-bottom: 30px;
}
#shop_detail_info .info dt {
  padding: 10px 10px 0;
  line-height: 150%;
  color: #4e6aa6;
}
#shop_detail_info .info dd {
  padding: 0 10px 10px;
  line-height: 150%;
  border-bottom: 1px solid #e7e9eb;
}
#shop_detail_info .access {
  border: 1px solid #e7e9eb;
  background: #fff;
  padding: 15px 20px;
}
#shop_detail_info .access .ttl {
  font-size: 15px;
  font-weight: bold;
  color: #000;
}
#shop_detail_info .access li {
  margin: 0;
  padding: 5px 0 0 20px;
  position: relative;
}
#shop_detail_info .access li:before {
  position: absolute;
  left: 0;
  top: 5px;
  content: "\f3c5";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #d6d7d9;
}

#shop_detail_map {
  margin-top: -90px;
  padding-top: 90px;
}

.twitter_area {
  border: 1px solid #e7e9eb;
  margin-bottom: 40px;
}
.twitter_area iframe {
  margin: 0;
  vertical-align: bottom;
}

/* ----------------------------------------------------------------------
   login
---------------------------------------------------------------------- */

.login_wrap {
  width: 750px;
  margin: 0 auto;
  padding: 50px 0;
  overflow: hidden;
}
.login_wrap .box {
  width: 360px;
  padding: 30px;
}
.login_wrap .item {
  margin-bottom: 15px;
}
.login_wrap input[type=text],
.login_wrap input[type=password] {
  box-sizing: border-box;
  width: 100%;
  padding: 5px;
  border: 1px solid #c0c3c6;
}
.login_wrap .btn {
  margin-top: 30px;
}

/* ----------------------------------------------------------------------
   cart
---------------------------------------------------------------------- */

#cart_flow {
  overflow: hidden;
  margin-bottom: 20px;
}
#cart_flow li {
  box-sizing: border-box;
  float: left;
  margin: 0 50px 0 0;
  font-size: 16px;
  font-weight: bold;
  padding: 20px 0 5px;
  color: #e7e9eb;
  border-bottom: 2px solid #fff;
}
#cart_flow li.current {
  color: #000;
  border-bottom: 2px solid #3ca1b7;
}

/* side */
.cart_contents #side .box {
  padding: 15px 10px 10px;
}
.cart_contents #side .box p {
  margin-bottom: 15px;
}
#cart_box {
  width: 300px;
}
.box_buy dl {
  overflow: hidden;
  margin-bottom: 15px;
}
.box_buy dt {
  float: left;
}
.box_buy dd {
  float: right;
  font-weight: bold;
}
.box_buy .price {
  color: #ff8a60;
}
.buy_total dd {
  font-size: 18px;
}
.buy_all {
  border-top: 1px solid #e7e9eb;
  padding-top: 20px;
  font-weight: bold;
}
.buy_all dt {
  font-size: 16px;
}
.buy_all dd {
  font-size: 20px;
}
.total_num {
  font-size: 16px;
  font-weight: bold;
  color: #ff8a60;
  padding: 0 5px;
}

/* contents */
#cart {
  margin-bottom: 40px;
}
#cart .btn {
  text-align: center;
}
#cart .btn a {
  display: inline-block;
  width: 260px;
}

.cart_item {
  margin-bottom: 40px;
}
.cart_item table {
  width: 100%;
  border: 1px solid #e7e9eb;
}
.cart_item th,
.cart_item td {
  border-bottom: 1px solid #e7e9eb;
  padding: 15px 0;
  vertical-align: middle;
}
.cart_item thead th {
  background: #f7f8fa;
  padding: 10px 0;
}
.cart_item_delete,
.cart_item_num {
  width: 60px;
  text-align: center;
}
.cart_item_price {
  width: 110px;
  text-align: center;
  font-weight: bold;
  color: #000;
}
.cart_item_delete a,
.cart_item_num a {
  padding: 0 5px;
  font-size: 11px;
  line-height: 20px;
  text-decoration: none;
  background-color: #f5f5f5;
  border: 1px solid #dedede;
  border-radius: 2px;
  display: inline-block;
  min-width: 0.8em;
}
.cart_item_num .num {
  display: block;
  font-size: 14px;
}
.cart_item_num a {
  font-size: 14px;
}

.cart_item_detail > div {
  display: inline-block;
  vertical-align: middle;
}
.cart_item_image {
  width: 130px;
  margin: 0 10px;
}
.cart_item_info {
  width: 350px;
}

.cart_select {
  margin-bottom: 40px;
}
.cart_select label {
  display: block;
  overflow: hidden;
}
.cart_select label > span {
  display: block;
  float: left;
}
.cart_select .cart_rb_btn {
  width: 30px;
  text-align: left;
}
.cart_select .cart_rb_txt {
  font-size: 15px;
}
.cart_select textarea {
  box-sizing: border-box;
  width: 100%;
}

.cart_has_point {
  font-size: 16px;
  margin-bottom: 20px;
}
.cart_has_point .point {
  margin: 0 5px;
  font-weight: bold;
  color: #cc0000;
}
.use_point {
  width: 120px;
  margin-right: 5px;
}

#cart_pay .cart_rb_txt {
  width: 290px;
}
#cart_pay .cart_rb_img {
  width: 360px;
}
.cart_pay_btn {
  display: block;
  text-decoration: none;
  text-align: center;
  font-size: 15px;
  margin: 0 auto;
  padding: 15px;
  color: #000;
  font-weight: 600;
  margin-bottom: 10px;
  border: 1px solid #000;
  cursor: pointer;
  width: 260px;
}

#cart_coupon .btn {
  display: inline-block;
  margin: 10px 10px 0 0;
}
#cart_coupon .btn a {
  font-size: 13px;
  font-weight: 500;
  padding: 5px 50px;
  width: auto;
}

.cart_order {
  margin-bottom: 40px;
}
.cart_order_address,
.cart_order_right {
  float: left;
  width: 50%;
}
.cart_order_address p,
.cart_order_right p {
  font-size: 15px;
}

.sub_total {
  background: #f7f8fa;
  overflow: hidden;
  padding: 10px 20px 20px;
}
.sub_total table {
  float: right;
  width: auto;
  min-width: 50%;
  border: none;
}
.sub_total th,
.sub_total td {
  padding: 5px 20px;
}
.sub_total th {
  text-align: left;
  font-weight: bold;
}
.sub_total td {
  text-align: right;
}
.sub_total .def {
  font-weight: bold;
  color: #cc0000;
}

/* ----------------------------------------------------------------------
   item detail
---------------------------------------------------------------------- */

.item_detail .ttl_style01 {
  font-weight: bold;
}

#item_detail_main {
  margin-bottom: 40px;
}

.item_detail_img {
  float: left;
  width: 570px;
}
.item_img_main {
  box-sizing: border-box;
  border: 1px solid #e7e9eb;
  height: 570px;
  overflow: hidden;
  background: #fff;
  margin-bottom: 20px;
}
.item_img_main .slick-slide li {
  width: 568px;
  height: 568px;
  text-align: center;
}
.item_img_main .slick-slide li span {
  width: inherit;
  height: inherit;
  display: block;
  font-size: 0;
  text-align: center;
  vertical-align: middle;
  position: relative;
}
.item_img_main .slick-slide li span::before {
  content: "";
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}
.item_img_main .slick-prev,
.item_img_main .slick-next {
  position: absolute;
  top: 50%;
  padding: 0 10px;
  margin: -0.5em 0 0 0;
  border: 0;
  background: none;
  font-size: 30px;
  line-height: 100%;
  color: #e7e9eb;
  z-index: 10;
  outline: none;
}
.slick-prev {
  left: 0;
}
.slick-next {
  right: 0;
}
.item_img_thumb {
  margin-bottom: 30px;
}
.item_img_thumb .slick-slide {
  box-sizing: border-box;
  border: 1px solid #e7e9eb;
  background: #f7f8fa;
  width: 50px;
  height: 50px;
  position: relative;
  margin: 0 3.5px;
}
.item_img_thumb .slick-current {
  border: 1px solid #c0c3c6;
}
.slick-slide img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  vertical-align: middle;
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.item_detail_info {
  float: right;
  width: 480px;
}
#item_detail_main .class a,
#item_detail_main .class span {
  display: block;
  border: 1px solid #f57141;
  color: #f57141;
  background: #fef8f5;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  padding: 10px 20px;
  position: relative;
  text-decoration: none;
}
#item_detail_main .class a img,
#item_detail_main .class span img {
  position: absolute;
  right: 5px;
  bottom: 0;
  width: 70px;
}
.item_detail_release {
  overflow: hidden;
  margin-bottom: 20px;
  padding: 0;
}
.item_detail_release .release {
  float: left;
  font-size: 15px;
}
.item_detail_release .sell {
  float: right;
  font-size: 15px;
  font-weight: bold;
}
.item_detail_release .sell span {
  color: #3ca1b7;
}
.item_detail_price {
  overflow: hidden;
  margin-bottom: 10px;
  padding: 30px 0 0;
}
.item_detail_price .price {
  float: left;
  color: #cc0000;
  font-weight: bold;
}
.item_detail_price .price span {
  font-size: 26px;
}
.item_detail_price .point {
  float: right;
  color: #ff8a60;
  padding-top: 5px;
}
.item_detail_price .point span {
  font-size: 18px;
  font-weight: bold;
}
.item_detail_price .prize_point {
  float: left;
  color: #ff8a60;
  padding-top: 5px;
}
.item_detail_price .prize_point span {
  font-size: 20px;
}
.item_detail_btn {
  overflow: hidden;
  margin: 0 0 30px;
  padding: 0 0 20px;
  border-bottom: 1px solid #e7e9eb;
}
.item_detail_btn > div {
  display: inline-block;
  box-sizing: border-box;
  width: 50%;
}
.item_detail_btn .num {
  text-align: right;
  padding: 0 20px;
}
.item_detail_btn .btn {
}

.item_detail_txt {
  margin: 0 0 30px;
}

.item_detail_content,
.item_detail_class {
  margin-bottom: 40px;
}

.item_detail_content {
  position: relative;
}
.item_detail_content_btn {
  width: 260px;
  margin: 0 auto;
  display: block;
  text-decoration: none;
  text-align: center;
  font-size: 15px;
  padding: 15px;
  color: #fff;
  font-weight: 600;
  margin-bottom: 10px;
  border: 1px solid #000;
  color: #000;
  cursor: pointer;
}
.item_detail_content_btn i {
  margin-right: 1em;
}

.item_detail_content_inner {
  position: relative;
  overflow: hidden;
  padding-bottom: 40px;
}
.item_detail_content_inner::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 40px;
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
}

.item_detail_class {
  border: 1px solid #e7e9eb;
  padding: 10px 20px 0;
}
.item_detail_class .inner {
  margin-bottom: 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #e7e9eb;
}
.item_detail_class > div:last-child {
  margin-bottom: 0;
  border-bottom: none;
}
.item_detail_class .inner .img {
  float: left;
  width: 240px;
  text-align: center;
}
.item_detail_class .inner .txt_box {
  float: right;
  width: 775px;
}

.item_detail_sns {
}
.item_detail_sns .item_copyright {
  text-align: center;
  font-size: 12px;
  margin-bottom: 20px;
}
.item_detail_sns .sns {
  overflow: hidden;
}
.item_detail_sns .sns li {
  float: left;
  width: 33.333333%;
}
.item_detail_sns .btn a {
  font-size: 12px;
  font-weight: normal;
  padding: 7px 0;
}

#tocart {
  position: fixed;
  left:50%;
  bottom: 100px;
  margin-left: 500px;
  background: #3ca1b7;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 20;
}
#tocart::after {
  content: "\f07a";
  font-family: "Font Awesome 5 Free";
  font-size: 20px;
  font-weight: bold;
  line-height: 40px;
  text-indent: 0;
  text-align: center;
  color: #fff;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
#tocart span {
  visibility: hidden;
}

/* ----------------------------------------------------------------------
   my page
---------------------------------------------------------------------- */

.form_wrap {
  margin-bottom: 40px;
}

.form_table {
  width: 100%;
  border: 1px solid #e7e9eb;
  margin-bottom: 20px;
}
.form_table th,
.form_table td {
  border-bottom: 1px solid #e7e9eb;
  padding: 15px;
  vertical-align: middle;
}
.form_table th {
  background: #f7f8fa;
  text-align: right;
  width: 12em;
}
.form_table .require::after {
  content: "*";
  color: #cc0000;
  font-size: 18px;
  display: inline;
}
.form_table .form_data input[type=text],
.form_table .form_data input[type=password],
.form_table .form_data textarea,
.form_parts {
  box-sizing: border-box;
  padding: 5px;
  border: 1px solid #c0c3c6;
}

.input_s {
  width: 10%;
}
.input_m {
  width: 40%;
}
.input_l {
  width: 70%;
}
.textarea {
  width: 100%;
  height: 200px;
}
.pulldown {
  display: inline-block;
  position: relative;
}
.pulldown::after {
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.5em;
  content: "\f107";
  line-height: 1;
  font-size: 15px;
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #c0c3c6;
  z-index: 0;
}
.pulldown select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  margin: 0;
  padding: 5px 35px 5px 5px;
  background: transparent;
  border: 1px solid #c0c3c6;
  position: relative;
  z-index: 1;
}
.pulldown select::-ms-expand {
  display: none;
}

.form_table thead {
}

.form_note {
  display: inline-block;
  margin: 0 0 0 10px;
}
.form_btn {
  text-align: center;
  margin-bottom: 40px;
}
.form_btn .btn a {
  display: inline-block;
  width: 260px;
  margin: 0 5px 10px;
}

.form_card01,
.form_card02,
.form_card03 {
  text-align: center;
}

/* history */
.history_search {
  float: right;
  position: relative;
  width: 300px;
  margin-bottom: 30px;
}
.history_search input[type=text] {
  width: 100%;
  border: 1px solid #c0c3c6;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 5px 10px;
  margin: 0 auto;
}
.history_search button[type=submit] {
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  font-size: 18px;
  line-height: 1.2em;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -0.6em;
}

#history_tab {
  float: left;
  width: 760px;
  border-bottom: 1px solid #e7e9eb;
  margin-bottom: 30px;
  overflow: hidden;
}
#history_tab li {
  float: left;
  margin: 0 0 0 40px;
}
#history_tab li a {
  display: block;
  box-sizing: border-box;
  font-size: 16px;
  padding: 5px 0;
  color: #000;
  border-bottom: 2px solid #e7e9eb;
}
#history_tab li.current a {
  color: #000;
  border-bottom: 2px solid #3ca1b7;
  font-weight: bold;
}

.history_contents {
  clear: both;
  margin-bottom: 40px;
}

.sort_box {
  margin-bottom: 20px;
}
.sort_box span {
  margin-right: 10px;
  color: #999;
}
/*.sort_box select {
  padding: 5px;
  line-height: 100%;
}*/

.order_histories {
  border: 1px solid #e7e9eb;
  margin-bottom: 20px;
}
.order_status {
  background: #f7f8fa;
  border-bottom: 1px solid #e7e9eb;
  padding: 10px 20px;
}
.order_status p {
  display: inline-block;
  margin-right: 30px;
}
.order_status p span {
  font-weight: bold;
}

.order_inner {
}
.order_item {
  padding: 20px;
}
.order_item_img {
  float: left;
  width: 130px;
}
.order_item_info {
  float: right;
  width: 890px;
}
.order_item_info h3 {
  font-size: 16px;
  line-height: 130%;
  margin-bottom: 10px;
}
.order_item_info .num,
.order_item_info .price {
  font-size: 15px;
}
.order_footer {
  border-top: 1px solid #e7e9eb;
  margin: 0 20px;
  padding: 15px 0;
}
.order_footer p {
  display: inline-block;
  margin-right: 30px;
  padding: 5px 0;
  font-size: 12px;
}
.order_footer p.order_footer_btn {
  float: right;
  border: 1px solid #000;
  padding: 5px 30px;
  margin: 0;
  cursor: pointer;
}

.order_detail_wrap {
  display: none;
  border-top: 1px solid #e7e9eb;
}
.order_detail_info {
  background: #f7f8fa;
  padding: 20px;
}
.order_detail_info .f_l {
  width: 33.3333%;
}
.order_detail_info .ttl {
  font-size: 15px;
  font-weight: bold;
}
.order_detail_info .txt {
  margin: 0 0 30px 10px;
  font-size: 14px;
}
.order_detail_info table {
  width: 100%;
}
.order_detail_info th,
.order_detail_info td {
  padding: 5px 10px;
  vertical-align: middle;
  font-size: 14px;
  border-bottom: 1px solid #e7e9eb;
}
.order_detail_info th {
  text-align: left;
}
.order_detail_info td {
  text-align: right;
  color: #cc0000;
}
.order_detail_info tr.total th,
.order_detail_info tr.total td {
  font-weight: bold;
  font-size: 15px;
  padding-top: 5px;
}

.order_detail_mail {
  border-top: 1px solid #e7e9eb;
  padding: 20px 20px 0;
}
.order_detail_mail .ttl {
  font-size: 15px;
  font-weight: bold;
}
.order_detail_mail ul {
  margin-bottom: 20px;
}
.order_detail_mail li {
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 130%;
}
.order_detail_mail li .date {
  margin-right: 20px;
  color: #666;
}

/* ----------------------------------------------------------------------
   fair/event
---------------------------------------------------------------------- */

.fiarevent_contents {
  clear: both;
  margin-bottom: 40px;
}

.fairevent_list li:first-child {
  border-top: 1px solid #e7e9eb;
}
.fairevent_list li {
  border-bottom: 1px solid #e7e9eb;
  overflow: hidden;
  padding: 30px 0;
}
.fairevent_list .fairevent_list_thumb {
  float: left;
  text-align: center;
  width: 180px;
  margin-right: 20px;
  padding-top: 180px;
  position: relative;
}
.fairevent_list .fairevent_list_thumb img {
  max-width: 100%;
  max-height: 100%;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.fairevent_list .fairevent_list_ttl {
  float: right;
  width: 610px;
  font-size: 16px;
  line-height: 150%;
  margin-bottom: 20px;
}
.fairevent_list_detail dl {
  width: 610px;
  overflow: hidden;
  margin-bottom: 5px;
}
.fairevent_list_detail dt {
  float: left;
  width: 5em;
  line-height: 150%;
}
.fairevent_list_detail dd {
  margin-left: 5em;
  line-height: 150%;
}
.fairevent_list_detail .shop dd a {
  margin-right: 10px;
  padding: 0px 10px;
}
.fairevent_list_detail .tokuten dd {
  color: #3ca1b7;
}
.fairevent_btn {
  display: inline-block;
  margin-top: 10px;
  width: 200px;
}
.fairevent_btn a {
  padding: 7px;
}

#fair_detail .ttl_style01 {
  font-weight: bold;
}
.fairevent_img {
  box-sizing: border-box;
  border: 1px solid #e7e9eb;
  text-align: center;
  margin-bottom: 20px;
}
.fairevent_detail_content {
  margin-bottom: 40px;
}
.fairevent_detail_content p {
  font-size: 14px;
}

/* ----------------------------------------------------------------------
   category
---------------------------------------------------------------------- */

.category_link {
  margin: 0 -5px 20px;
  display: flex;
  flex-wrap: wrap;
}
.category_link li {
  flex: auto;
}
.category_link a {
  display: block;
  text-align: center;
  color: #4e6aa6;
  background: #fff;
  border: 1px solid #4e6aa6;
  font-weight: bold;
  margin: 0 5px 10px;
  padding: 5px 30px;
}
.category_link a:hover {
  text-decoration: none;
}
.category_link .active a {
  color: #fff;
  background: #4e6aa6;
}
.cat_visual a,
.g_nav_box .cat_visual:before {
  color: #e46214;
  border-color: #e46214;
}
.cat_visual.active a {
  background: rgba(228,98,20,0.3);
}
.cat_music a,
.g_nav_box .cat_music:before {
  color: #99d02c;
  border-color: #99d02c;
}
.cat_music.active a {
  background: rgba(153,208,44,0.3);
}
.cat_book a,
.g_nav_box .cat_book:before {
  color: #e8b820;
  border-color: #e8b820;
}
.cat_book.active a {
  background: rgba(232,184,32,0.3);
}
.cat_game a,
.g_nav_box .cat_game:before {
  color: #aba418;
  border-color: #aba418;
}
.cat_game.active a {
  background: rgba(171,164,24,0.3);
}
.cat_goods a,
.g_nav_box .cat_goods:before {
  color: #dd4da4;
  border-color: #dd4da4;
}
.cat_goods.active a {
  background: rgba(221,77,164,0.3);
}
.cat_figure a,
.g_nav_box .cat_figure:before {
  color: #6357a3;
  border-color: #6357a3;
}
.cat_figure.active a {
  background: rgba(99,87,163,0.3);
}
.cat_ticket a,
.g_nav_box .cat_ticket:before {
  color: #0096e0;
  border-color: #0096e0;
}
.cat_ticket.active a {
  background: rgba(0,150,224,0.3);
}

.main_bnr_wrap {
  margin-top: 30px;
}

/* ----------------------------------------------------------------------
   ranking
---------------------------------------------------------------------- */

#ranking .search_item_list {
  margin-bottom: 40px;
}
#ranking .search_item_list li:first-child {
  border-top: 1px solid #e7e9eb;
}
#ranking .search_item_list a {
  position: relative;
  padding-left: 30px;
}
#ranking .search_item_list .rank {
  position: absolute;
  top: -30px;
  left: 0;
  z-index: 1;
}
#ranking .search_item_list .item_list_inner {
  width: 850px;
}

/* ----------------------------------------------------------------------
   special
---------------------------------------------------------------------- */

.special_link {
  margin: 0 -5px 20px;
  display: flex;
  flex-wrap: wrap;
}
.special_link li {
  width: 25%;
  display: flex;
}
.special_link a {
  display: block;
  width: 100%;
  text-align: center;
  color: #4e6aa6;
  background: #fff;
  border: 1px solid #4e6aa6;
  font-weight: bold;
  margin: 0 5px 10px;
  padding: 5px 0;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.special_list_wrap {
  margin-bottom: 30px;
}
.special_list_wrap h3 {
  background: #ff8a60;
  color: #fff;
  font-size: 16px;
  margin-bottom: 20px;
  padding: 5px 10px;
}
.special_list_wrap ul {
  overflow: hidden;
}
.special_list_wrap li {
  box-sizing: border-box;
  float: left;
  width: calc(100% / 3);
  margin: 0 0 20px;
  padding: 0 0 0 30px;
  line-height: 130%;
}
.special_list_wrap li a {
  text-decoration: none;
  font-size: 15px;
}
.special_list_wrap li img {
  margin-bottom: 5px;
}

/* ----------------------------------------------------------------------
   faq
---------------------------------------------------------------------- */

.faq_search {
  position: relative;
  width: 300px;
  margin-bottom: 30px;
}
.faq_search input[type=text] {
  width: 100%;
  border: 1px solid #c0c3c6;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 5px 10px;
  margin: 0 auto;
}
.faq_search button[type=submit] {
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  font-size: 18px;
  line-height: 100%;
  position: absolute;
  top: 7px;
  right: 10px;
}

.faq_wrap {
}
.faq_list {
  margin-bottom: 30px;
}
.faq_list_ttl {
  display: inline-block;
  font-size: 14px;
  margin-bottom: 10px;
  padding: 0 0 0 1.5em;
  text-decoration: none;
  position: relative;
}
.faq_list_ttl::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\f138";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  color: #c0c3c6;
  z-index: 0;
}
.faq_list_inner {
  background: #f7f8fa;
  margin-bottom: 20px;
  padding: 15px 20px;
}

/* ----------------------------------------------------------------------
   mypage
---------------------------------------------------------------------- */

.mypage_wrap {
  border-top: 1px solid #e7e9eb;
  overflow: hidden;
  padding: 50px 0;
}
.mypage_inner {
  float: left;
  width: 50%;
}
.mypage_inner .ul_style01 li {
  font-size: 15px;
}

.point_blance {
  border: 1px solid #e7e9eb;
  padding: 30px 60px;
  margin-bottom: 10px;
  overflow: hidden;
}
.point_blance .point {
  float: left;
  font-weight: bold;
  color: #ff8a60;
}
.point_blance .point .num {
  font-size: 28px;
  margin-right: 10px;
}
.point_blance .term {
  float: right;
  padding-top: 5px;
}

.mypage_fair {
  border: 1px solid #3ca1b7;
  margin-bottom: 30px;
  padding: 30px;
}
.mypage_fair .fairevent_list li {
  padding: 15px 0;
}
.mypage_fair .fairevent_list .fairevent_list_thumb {
  width: 110px;
  padding-top: 110px;
}
.mypage_fair .fairevent_list .fairevent_list_ttl {
  width: 888px;
  margin-bottom: 5px;
}
.mypage_fair .fairevent_list_detail dl {
  width: 888px;
}
.mypage_fair .fairevent_list_detail dt {
  width: 7em;
}
.mypage_fair .fairevent_list_detail dd {
  margin-left: 7em;
}
.mypage_fair .btn_s a {
  margin-bottom: 0;
}
.mypage_inner .gamers_cards {
  text-align: center;
  width:70%;
  padding:15px 0;
  border-radius: 5px;
}
.mypage_inner .gamers_cards span {
  display: block;
  background: #ff8a60;
  border-radius: 10px;
}
.mypage_inner .gamers_cards p.logo{
  padding: 20px;
}
.mypage_inner .gamers_cards p.barcode img{
  border-radius: 5px;
  margin-bottom: 5px;
  padding: 0 5px;
  background-color:#fff;
}


/* ----------------------------------------------------------------------
   tokuten - index
---------------------------------------------------------------------- */

.tokuten_search_list {
  display: flex;
  justify-content: space-between;
}
.tokuten_search_list > * {
  flex: auto;
  margin: 0 20px 0 0;
}
.tokuten_search_list .calendar {
  background: #f7f8fa;
  margin: 0 0 10px;
  padding: 10px 10px 0;
  overflow: hidden;
  text-align: center;
}
.tokuten_search_list .calendar input[type=text] {
  border: 1px solid #c0c3c6;
  padding: 5px;
  width: 160px;
}
.tokuten_search_list .calendar i {
  background: #4e6aa6;
  color: #fff;
  font-size: 18px;
  line-height: 35px;
  padding: 0 10px;
  vertical-align: top;
}
.tokuten_search_list .calendar .btn_s a {
  margin-left: 10px;
}

.active p.calendar_error {
    color:red;
    font-weight:bold;
    text-align:center;
}

/* ----------------------------------------------------------------------
   tokuten - detail
---------------------------------------------------------------------- */

.tokuten_detail .item_detail_img {
  float: left;
  width: 400px;
}
.tokuten_detail .item_detail_info {
  float: right;
  width: 650px;
}
.tokuten_detail .item_img_main {
  height: 400px;
}
.tokuten_detail .item_img_main .slick-slide li {
  height: 398px;
}
.tokuten_ttl_icon_list,
.tokuten_ttl_icon {
  display: inline-block;
  background: #ff8a60;
  color: #fff;
  font-size: 14px;
  line-height: 100%;
  margin: 0 15px 0 0;
  padding: 8px 15px;
  border-radius: 0 8px 8px 0;
}
.tokuten_ttl_icon_list::before,
.tokuten_ttl_icon::before {
  content: "\f005";
  font-weight: bold;
  font-family: "Font Awesome 5 Free";
  margin-right: 10px;
}

/* ======================================================================
   pc
====================================================================== */

@media screen and (min-width: 711px) {

  a:hover {
    text-decoration: underline;
    opacity:0.5;
    filter:alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
  }

  .col_one .main_contents {
    float: none;
    width: 1080px;
  }

  .pc {
    display: block;
  }
  .sp {
    display: none;
  }

  /* language */
  #language_box {
    position: fixed;
    top: 13px;
    left: 50%;
    margin-left: 560px;
    z-index: 999999;
  }

  .wrap {
    max-width: 1080px;
    margin-bottom: 30px;
  }

  /* ----------------------------------------------------------------------
     cart
  ---------------------------------------------------------------------- */

  .cart_contents #side {
    float: right;
    width: 300px;
  }
  .cart_contents .main_contents {
    float: left;
    width: 750px;
  }

  /* recommend */
  #cart_recommend .item_list li {
    width: 174px;
    margin-left: 9px;
    margin-right: 9px;
  }

  /* ----------------------------------------------------------------------
     item detail
  ---------------------------------------------------------------------- */

  .item_detail_other .item_list ul {
    margin: 0 -20px;
  }
  .item_detail_other .item_list li {
    width: 240px;
    margin-left: 20px;
    margin-right: 20px;
  }

}

/* ======================================================================
   sp
====================================================================== */

@media screen and (max-width: 710px) {
  body{
    min-width:100%;
  }

  #wrapper {
    min-width: auto; /* for ie*/
    min-width: initial;
  }

  input[type=text],
  input[type=password],
  select,
  textarea {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    font-size: 16px;
    border-radius: 0;
    /*transform: scale(0.8);*/
  }

  .btn a {
    font-size: 13px;
  }
  .box {
    margin: 0 10px 20px;
    padding: 15px;
  }

  .pc {
    display: none;
  }
  .sp {
    display: block;
  }

  .wrap {
    margin: 0 10px 20px;
  }

  /* language */
  #language_box {
    text-align: center;
    background: #f7f8fa;
    padding: 10px;
  }

  /* ----------------------------------------------------------------------
     header
  ---------------------------------------------------------------------- */

  #header {
    position: fixed;
  }
  #header_inner {
    flex-wrap: wrap;
    margin: 0 10px;
    height: auto;
  }
  #header_logo {
    width: calc(100% - 265px);
    margin: 0;
  }
  #header_logo img {
    max-height: 25px;
  }
  /* search */
  #header_search {
    display: none;
    flex: none;
    order: 4;
    margin: 0;
    padding: 0 10px 10px;
    width: 100%;
    background: #fff;
    position: fixed;
    left: 0;
  }
  #header_search button[type=submit] {
    right: 20px;
    top: 5px;
    line-height: 130%;
  }
  #search_word {
    box-sizing: border-box;
    top: 0;
    height: 100%;
    background: #fff;
  }
  #search_word_inner {
    padding: 0;
    border: none;
    border-bottom: 1px solid #e7e9eb;
    overflow-y: scroll;
  }
  #search_word_btn {
    margin: 0 40px 0 10px;
  }
  .search_word_list {
    background: #fff;
  }
  .search_word_list > div {
    display: none;
    padding: 0;
  }
  .search_word_list > div.active {
    display: block;
  }
  .search_word_list ul {
    overflow: hidden;
  }
  .search_word_list li {
    float: none;
    width: 100%;
  }
  .search_word_list li a {
    display: block;
    margin: 0;
    padding: 10px;
    border-bottom: 1px solid #e7e9eb;
  }
  .search_word_list .rank {
    width: 30px;
    height: 30px;
    line-height: 28px;
    margin-right: 10px;
    font-size: 16px;
  }
  #search_word_cancel01 {
    display: none;
  }
  #search_word_cancel02 {
    display: block;
    top: 0;
    right: 10px;
  }

  /* icon */
  #header_event {
    order: 2;
    width: 75px;
  }
  #header_event li {
    font-size: 18px;
  }
  #header_icon {
    order: 3;
  }
  #header_icon li {
    width: 25%;
    font-size: 18px;
  }
  #g_nav_btn_sp span,
  #header_event li span,
  #header_icon li span {
    font-size: 8px;
    letter-spacing: -1px;
  }
  #header_icon a,
  #header_icon #icon_search {
    text-decoration: none;
    display: block;
  }
  #header_icon #icon_search {
    display: inline-block;
  }
  #header_icon #icon_cart .num {
    letter-spacing: 0;
  }

  /* nav */
  .g_nav{
    display: none;
  }
  .g_nav_btn{
    display: none;
  }
  .g_nav_btn_sp{
    display: block;
  }

  .g_nav_sp_wrapper {
    display: block;
    box-sizing: border-box;
    height: calc(100% - 50px);
    padding: 10px;
  }
  .g_nav_box {
    flex: none;
    width: 100%;
    border-left: none;
    margin: 0 0 20px;
    padding: 0;
  }
  .g_nav_box .ttl {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .g_nav_box ul {
    margin: 0;
    padding: 0;
  }
  .g_nav_box li {
    padding: 0;
    border-top: 1px solid #e7e9eb;
    background: #F7F8FA;
  }
  .g_nav_box li:before {
    left: auto;
    right: 10px;
    top: 50%;
    line-height: 100%;
    margin-top: -0.5em;
  }
  .g_nav_box li:first-child {
    border-top: none;
  }
  .g_nav_box li a {
    display: block;
    padding: 10px;
  }
  .g_nav_box li a:hover {
    background: none;
  }
  .g_nav_box .separate {
    margin-top: 10px;
    border-top: none;
  }

  /* ----------------------------------------------------------------------
     footer
  ---------------------------------------------------------------------- */

  #pagetop {
    left: auto;
    right: 10px;
    bottom: 10px;
    margin-left: 0;
  }

  #footer {
    position: relative;
    overflow: initial;
  }
  #footer_menu {
    width: auto;
    padding: 20px 15px;
    display: block;
  }
  #footer_menu .ttl {
    margin-bottom: 5px;
  }
  #footer_menu ul {
    margin-bottom: 10px;
  }
  #footer_menu li {
    font-weight: bold;
    margin: 0;
  }
  #footer_menu .li_arrow {
    padding-left: 0;
    display: inline-block;
    font-size: 12px;
  }
  #footer_menu .li_arrow:before {
    display: none;
  }
  #footer_menu .li_arrow:after,
  .footer_link li:after {
    display: inline-block;
    position: relative;
    content: "/";
    font-weight: normal;
    color: #333;
    margin-left: 5px;
  }
  #footer_menu li:last-child:after,
  .footer_link li:last-child:after {
    display: none;
  }
  #footer_menu .separate {
    margin-top: 0;
  }
  .footer_menu_box {
    margin-left: 0;
  }

  .footer_link {
    width: auto;
    padding: 20px 15px;
    display: block;
  }
  .footer_link li {
    display: inline-block;
    margin: 0;
    padding: 0;
    font-size: 12px;
  }

  #copyright {
    font-size: 10px;
    padding: 10px 0;
    line-height: 120%;
  }
  #copyright br {
    display: inline;
  }

  /* ----------------------------------------------------------------------
     outside
  ---------------------------------------------------------------------- */

  #outside {
    display: none;
  }


  /* ----------------------------------------------------------------------
     contents
  ---------------------------------------------------------------------- */

  #contents {
    padding: 0;
  }
  .contents_wrap {
    width: auto;
    margin: 0 auto;
  }


  /* ----------------------------------------------------------------------
     main
  ---------------------------------------------------------------------- */

  #main {
  }
  #main > div {
    float: left;
    width: 50%;
  }
  #main > div img {
    width: 100%;
  }


  /* ----------------------------------------------------------------------
     side
  ---------------------------------------------------------------------- */

  #side {
    float: none;
    width: auto;
  }
  #side .bnr {
    display: none;
    overflow: hidden;
    flex-wrap: wrap;
    margin: 0 5px 10px;
  }
  #side .bnr li {
    float: left;
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
  #side .bnr li img {
    width: 100%;
  }
  #toppage #side .bnr {
    display: flex;
  }
  #side > * {
    margin: 0 10px 20px;
  }

  .parts.news {
    margin: 0 10px 20px;
  }

  #side .ranking .item_list_thumb {
    float: none;
    width: 60%;
    padding-top: 60%;
    margin: 0 auto 10px;
  }
  #side .ranking .item_list_ttl {
    margin-left: 0;
    text-align: left;
  }

  #side .fairevent_bnr {
    margin: 0 5px 20px;
    overflow: hidden;
  }
  #side .fairevent_bnr li {
    float: left;
    width: calc(100% / 3);
    margin: 0;
  }
  #side .fairevent_bnr a {
    display: block;
    margin: 0 5px;
  }

  /* ----------------------------------------------------------------------
     main_contents
  ---------------------------------------------------------------------- */

  .main_contents {
    float: none;
    width: auto;
  }
  .ttl_style01 {
    font-size: 18px;
    padding: 10px 0;
    margin: 0 10px 20px;
  }
  .ttl_style02 {
    font-size: 16px;
  }
  .ttl_style03 {
    font-size: 16px;
    padding: 10px 0;
    margin: 0 10px 20px;
  }
  .ttl_class {
    font-size: 18px;
    padding: 10px 0;
    margin: 0 10px 20px;
  }

  /* breadcrumb */
  #breadcrumb {
    margin: 0 0 10px;
    padding: 5px 10px;
    background: #f7f8fa;
  }
  #breadcrumb li {
    font-size: 10px;
    padding-left: 20px;
  }
  #breadcrumb li::before {
    top: 2px;
    left: 5px;
  }

  /* attention */

  #attention_area {
    text-align: left;
    font-size: 14px;
    padding: 10px;
    margin: 0 10px 20px;
  }

  /* item */
  .item_list ul {
    margin: 0 10px;
  }
  .item_list li {
    float: none;
    width: auto;
    margin: 0 0 20px;
    padding: 0 0 20px;
    overflow: hidden;
    border-bottom: 1px solid #e7e9eb;
  }
  .item_list li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
  }
  .item_list_class {
      margin-top: -1px;
  }
  .item_list_class p {
    display: inline-block;
    position: static;
    position: initial;
    width: auto;
    margin-bottom: 10px;
  }
  .item_list_thumb {
    width: 150px;
    padding-top: 150px;
    margin-bottom: 0;
  }
  .item_list_inner {
    width: calc(100% - 160px);
    height: 156px;
  }
  .item_list_ttl {
    margin-bottom: 5px;
  }
  .item_list_detail {
  }
  .item_list_detail .price {
    line-height: 130%;
    font-size: 13px;
    margin-bottom: 5px;
  }
  .item_list_detail .release,
  .item_list_detail .sell,
  .item_list_detail .stock {
    font-size: 13px;
    line-height: 130%;
  }
  .item_list_detail .prize_point {
    line-height: 130%;
    font-size: 13px;
  }
  .item_list_detail .prize_point span {
    font-size: 15px;
  }

  /* bnr_ad */
  .bnr_ad {
    margin: 0 10px;
  }
  .bnr_ad_s,
  .bnr_ad_l {
    float: none;
    margin: 0 0 20px;
    width: 100%;
    text-align: center;
  }
  .bnr_ad_s img,
  .bnr_ad_l img {
    width: 100%;
  }


  /* ----------------------------------------------------------------------
     search
  ---------------------------------------------------------------------- */

  #search_main {
  }

  #search_main_btn {
    padding: 0 10px;
  }
  #search_main_btn li {
    font-size: 13px;
  }
  .search_item_list li {
    margin: 0 10px;
    padding: 20px 0;
  }
  .search_item_list li a {
  }
  .search_item_list .item_list_thumb {
    width: 150px;
    padding-top: 150px;
    margin: 0 10px 0 0;
  }
  .search_item_list .item_list_inner {
    width: calc(100% - 160px);
  }
  .search_item_list .item_list_class p {
    margin-bottom: 10px;
  }
  .search_item_list .item_list_ttl {
    font-size: 14px;
    line-height: 130%;
  }
  .search_item_list .item_list_detail {
  }
  .search_item_list .item_list_detail .price {
    font-size: 15px;
  }
  .search_item_list .item_list_detail .release,
  .search_item_list .item_list_detail .sell,
  .search_item_list .item_list_detail .stock {
    font-size: 13px;
    line-height: 150%;
  }

  .pager {
    margin: 20px 0;
  }
  .pager ul {
  }
  .pager a {
    padding: 2px 10px;
    font-size: 12px;
  }

  /* 条件 */
  #search_box {
    margin: 20px 10px 0;
  }
  .search_box_btn {
    font-size: 13px;
  }

  .search_box_select {
    padding: 15px;
    overflow: hidden;
    display: none;
  }
  .search_box_inner {
    float: none;
    width: auto;
    overflow: hidden;
    margin-bottom: 10px;
  }

  /* ----------------------------------------------------------------------
     shop - index
  ---------------------------------------------------------------------- */

  .shop_list_main {
    margin: 0 10px 20px;
  }

  .shop_list {
    margin: 0 10px 20px;
  }
  .shop_list_inner {
    padding: 15px;
    display: block;
  }
  .shop_list_name {
    width: auto;
    font-size: 16px;
    margin-bottom: 10px;
  }
  .shop_list_name a {
    color: #f57141;
    text-decoration: none;
  }
  .shop_list_info {
    width: auto;
    margin-bottom: 10px;
  }
  .shop_list_info li {
    font-size: 13px;
  }

  .shop_list_btn {
    width: auto;
    margin: 0 -5px;
    overflow: hidden;
  }
  .shop_list_btn li {
    float: left;
    width: calc(50% - 10px);
    margin: 0 5px;
  }

  .event_list_wrap {
    margin-bottom: 10px;
  }
  .event_list {
    margin: 0 10px 20px;
  }
  .event_list li {
    padding: 15px 10px;
  }

  /* ----------------------------------------------------------------------
     shop - detail
  ---------------------------------------------------------------------- */

  #shop_detail_img {
    margin: 0 10px 20px;
  }

  #shop_detail_txt {
    margin: 0 10px 20px;
  }
  #shop_detail_txt p {
    font-size: 13px;
  }

  #shop_detail_btn {
    margin: 0 10px 10px;
    padding: 20px 0 0;
  }
  #shop_detail_btn ul {
    margin: 0 -5px;
    overflow: hidden;
  }
  #shop_detail_btn li {
    float: left;
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
  #shop_detail_btn .btn a {
    font-size: 13px;
    padding: 5px 0;
  }

  #shop_detail_info {
    padding: 10px;
    margin: 0 10px 20px;
  }
  #shop_detail_info .map {
    float: none;
    width: 100%;
    margin-bottom: 10px;
  }
  #shop_detail_info .map iframe {
    height: 280px;
  }
  #shop_detail_info .info,
  #shop_detail_info .access {
    float: none;
    width: 100%;
  }
  #shop_detail_info .info {
    margin-bottom: 20px;
  }
  #shop_detail_info .access {
  }

  #shop_detail_map {
    margin-top: -60px;
    padding-top: 60px;
  }

  .twitter_area {
    margin: 0 10px 20px;
  }

  /* ----------------------------------------------------------------------
     login
  ---------------------------------------------------------------------- */

  .login_wrap {
    width: auto;
    margin: 0 auto;
    padding: 10px 10px 0;
    overflow: hidden;
  }

  .login_wrap .box {
    width: 100%;
    padding: 20px;
    margin: 0 0 20px;
  }


  /* ----------------------------------------------------------------------
     cart
  ---------------------------------------------------------------------- */

  #cart_flow {
    overflow: hidden;
    margin: 0 10px 20px;
  }
  #cart_flow li {
    float: left;
    margin: 0 20px 0 0;
    font-size: 12px;
    font-weight: bold;
    padding: 20px 0 0px;
    color: #e7e9eb;
  }
  #cart_flow li.current {
    color: #000;
  }

  /* side */
  #cart_box {
    width: auto;
  }

  /* contents */
  #cart {
    margin-bottom: 40px;
  }
  #cart .btn {
    text-align: center;
  }
  #cart .btn a {
    display: inline-block;
    width: 260px;
  }

  .cart_item {
    margin: 0 10px;
  }
  .cart_item th,
  .cart_item td {
    padding: 10px 0;
  }
  .cart_item thead th {
    font-size: 12px;
  }

  .cart_item_detail > div {
    display: block;
  }
  .cart_item_image {
    width: auto;
    max-width: 100px;
    margin: 0 auto 10px;
    padding: 0 10px;
  }
  .cart_item_info {
    width: 100%;
  }
  .cart_item_info h3 {
    font-size: 13px;
    font-weight: 500;
    line-height: 130%;
    padding: 0 10px;
  }

  .cart_select {
    margin: 0 10px 20px;
  }
  .cart_select .cart_rb_txt {
    font-size: 13px;
  }

  .cart_has_point {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .cart_has_point .point {
    margin: 0 5px;
    font-weight: bold;
    color: #cc0000;
  }
  .use_point {
    width: 120px;
    margin-right: 5px;
  }

  #cart_pay .cart_rb_txt {
    width: auto;
  }
  #cart_pay .cart_rb_img {
    width: 100%;
  }

  #cart_coupon .btn {
    display: inline-block;
    margin: 10px 10px 0 0;
  }
  #cart_coupon .btn a {
    font-size: 13px;
    font-weight: 500;
    padding: 5px 50px;
    width: auto;
  }
  #coupon_code {
    box-sizing: border-box;
    width: 100%;
  }

  .cart_order {
    margin-bottom: 20px;
  }
  .cart_order_address,
  .cart_order_right {
    float: none;
    width: 100%;
  }
  .cart_order_address {
    margin-bottom: 30px;
  }
  .cart_order_address p,
  .cart_order_right p {
    font-size: 13px;
  }

  .sub_total {
    padding: 0;
    margin-bottom: 20px;
  }
  .sub_total table {
    float: none;
    width: 100%;
  }
  .sub_total th,
  .sub_total td {
    padding: 5px 10px;
  }
  .sub_total th {
    text-align: left;
    font-weight: bold;
  }
  .sub_total td {
    text-align: right;
  }
  .sub_total .def {
    font-weight: bold;
    color: #cc0000;
  }

  /* ----------------------------------------------------------------------
     item detail
  ---------------------------------------------------------------------- */

  #item_detail_main {
    margin-bottom: 0px;
  }

  .item_detail_img {
    float: none;
    width: auto;
    margin: 0 10px 20px;
  }
  .item_img_main {
    height: calc(100vw - 20px);
    overflow: hidden;
    background: #fff;
    margin-bottom: 20px;
  }
  .item_img_main .slick-slide li {
    width: 100%;
    height: calc(100vw - 20px);
    text-align: center;
  }
/*  .item_img_thumb.slick-slider {
    display: none;
  }*/


  .item_detail_info {
    float: none;
    width: auto;
    margin: 0 10px 20px;
  }
  #item_detail_main .class {
    margin: 0 10px;
  }
  #item_detail_main .class a,
  #item_detail_main .class span {
    font-size: 14px;
    margin-bottom: 20px;
  }
  .item_detail_release {
    overflow: hidden;
    margin-bottom: 0;
    padding: 0 5px 10px;
  }
  .item_detail_release .release {
    font-size: 13px;
  }
  .item_detail_release .sell {
    font-size: 13px;
  }
  .item_detail_price {
    overflow: hidden;
    margin-bottom: 10px;
    padding: 0 5px;
  }
  .item_detail_price .price {
    float: left;
    color: #cc0000;
  }
  .item_detail_price .price span {
    font-size: 20px;
  }
  .item_detail_price .point {
    float: right;
    color: #ff8a60;
    padding-top: 5px;
  }
  .item_detail_price .point span {
    font-size: 15px;
  }
  .item_detail_price .prize_point {
    padding-top: 5px;
  }
  .item_detail_price .prize_point span {
    font-size: 18px;
  }
  .item_detail_btn {
    overflow: hidden;
    margin-bottom: 20px;
    padding: 0 0 10px;
  }
  .item_detail_btn > div {
    display: inline-block;
    box-sizing: border-box;
    width: 50%;
  }
  .item_detail_btn .num {
    text-align: right;
    padding: 0 20px;
  }
  .item_detail_btn .btn {
  }

  .item_detail_txt {
    margin: 0 0 20px;
  }

  .item_detail_content,
  .item_detail_class {
    margin: 0 10px 20px;
  }
  .item_detail_class {
    padding: 10px 15px 0;
  }
  .item_detail_class .ttl_class {
    margin: 0 0 20px;
  }
  .item_detail_class .inner .img {
    float: none;
    margin: 0 auto 10px;
  }
  .item_detail_class .inner .txt_box {
    float: none;
    width: 100%;
  }

  .item_detail_sns {
    border-bottom: 1px solid #e7e9eb;
    margin: 0 0 20px;
    padding: 0 0 10px;
  }
  .item_detail_sns .item_copyright {
    font-size: 11px;
  }
  .item_detail_sns .sns .btn a {
    padding: 2px;
    font-size: 11px;
  }
  .item_detail_sns .sns .btn a i {
    margin-right: 0.5em;
  }

  #tocart {
    left: auto;
    right: 10px;
    bottom: 60px;
    margin-left: 0;
  }

  /* ----------------------------------------------------------------------
     my page
  ---------------------------------------------------------------------- */

  .form_wrap {
    margin: 0 10px 20px;
  }
  .form_table tr {
    display: block;
    border-bottom: 1px solid #e7e9eb;
  }
  .form_table tr:last-child {
    border-bottom: none;
  }
  .form_table th,
  .form_table td {
    border-bottom: none;
    display: block;
    padding: 10px;
    vertical-align: middle;
  }
  .form_table th {
    text-align: left;
    padding: 5px 10px;
    width: auto;
  }
  .form_table .form_data input[type=text],
  .form_table .form_data input[type=password] {
    box-sizing: border-box;
  }
  .form_name {
    display: block;
    padding: 3px 0;
  }
  .input_s {
    width: 20%;
  }
  .input_m {
    width: 60%;
  }
  .input_l {
    width: 100%;
  }
  .form_note {
    margin: 0;
  }

  .form_table thead {
    display: none;
  }
  .form_card01,
  .form_card02,
  .form_card03
  .form_card04 {
    text-align: left;
  }
  .form_table .form_card02,
  .form_table .form_card03,
  .form_table .form_card04 {

    padding-top: 0;
  }
  .form_card01::before {
    content: "カード番号：";
  }
  .form_card02::before {
    content: "有効期限：";
  }
  .form_card03::before {
    content: "カード名義：";
  }
  .form_card04::before {
    content: "共通化手続き実施日：";
  }

  /* history */
  .history_search {
    float: none;
    width: auto;
    margin: 0px 10px 20px;
  }

  #history_tab {
    float: none;
    width: auto;
    border-bottom: 1px solid #e7e9eb;
    margin-bottom: 20px;
  }
  #history_tab li {
    float: left;
    margin: 0 10px;
  }
  #history_tab li a {
    font-size: 13px;
  }

  .history_contents {
    margin: 0 10px 20px;
  }

  .order_status {
    padding: 5px 10px;
  }
  .order_status p {
    display: block;
    margin-right: 0;
    font-size: 12px;
  }

  .order_inner {
  }
  .order_item {
    padding: 10px;
  }
  .order_item_img {
    float: none;
    width: 130px;
    margin: 0 auto 10px;
  }
  .order_item_info {
    float: none;
    width: auto;
  }
  .order_item_info h3 {
    font-size: 13px;
  }
  .order_item_info .num,
  .order_item_info .price {
    font-size: 13px;
  }
  .order_footer {
    margin: 0 10px;
    padding: 10px 0;
  }
  .order_footer p {
    display: inline-block;
    margin-right: 30px;
    padding: 0;
    font-size: 12px;
  }
  .order_footer p.order_footer_btn {
    float: none;
    display: block;
    text-align: center;
    margin: 10px 0 0;
    cursor: pointer;
  }

  .order_detail_info {
    padding: 10px;
  }
  .order_detail_info .f_l {
    float: none;
    width: auto;
  }
  .order_detail_info .ttl {
    font-size: 13px;
  }
  .order_detail_info .txt {
    margin-bottom: 10px;
    font-size: 13px;
  }
  .order_detail_info th,
  .order_detail_info td {
    padding: 5px 10px;
    font-size: 13px;
  }
  .order_detail_info tr.total th,
  .order_detail_info tr.total td {
    font-size: 14px;
  }

  .order_detail_mail {
    padding: 10px 10px 0;
  }
  .order_detail_mail .ttl {
    font-size: 13px;
    font-weight: bold;
  }
  .order_detail_mail ul {
    margin-bottom: 10px;
  }
  .order_detail_mail li {
    padding: 0 0 5px 10px;
    font-size: 12px;
  }
  .order_detail_mail li .date {
    display: block;
    margin-right: 0;
  }

  /* ----------------------------------------------------------------------
     fair/event
  ---------------------------------------------------------------------- */
  .fiarevent_contents {
    margin: 0 10px 20px;
  }

  .fairevent_list li {
    margin: 0;
    padding: 20px 10px;
  }
  .fairevent_list .fairevent_list_thumb {
    float: none;
    width: 60%;
    padding-top: 60%;
    margin: 0 auto 10px;
    overflow: hidden;
    text-align: center;
  }
  .fairevent_list .fairevent_list_ttl {
    font-size: 14px;
    line-height: 130%;
    margin: 0 0 10px;
    width: 100%;
  }
  .fairevent_list_detail dl {
    width: 100%;
  }
  .fairevent_list_detail dt {
    font-size: 12px;
  }
  .fairevent_list_detail .shop dd a {
    font-size: 10px;
  }
  .fairevent_btn {
    display: block;
    width: auto;
  }
  .fairevent_btn a {
    margin-bottom: 0;
  }

  .fairevent_img {
    margin: 0 10px 20px;
  }
  .fairevent_detail_content {
    margin: 0 10px 20px;
  }
  .fairevent_detail_content p {
    font-size: 13px;
  }

  /* ----------------------------------------------------------------------
     category
  ---------------------------------------------------------------------- */

  .category_link {
    margin: 0 8px 16px;
  }
  .category_link li {
    flex: initial;
    width: calc(100% / 4);
    font-size: 12px;
  }
  .category_link li a {
    margin: 0 2px 4px;
    padding: 5px;
  }

  .main_bnr_wrap {
    margin: 20px 10px 0;
  }

  /* ----------------------------------------------------------------------
     ranking
  ---------------------------------------------------------------------- */

  #ranking .search_item_list {
    margin-bottom: 20px;
  }
  #ranking .search_item_list a {
    padding-left: 20px;
  }
  #ranking .search_item_list .rank {
    top: -20px;
  }
  #ranking .search_item_list .item_list_inner {
    width: calc(100% - 110px);
  }

  /* ----------------------------------------------------------------------
     special
  ---------------------------------------------------------------------- */

  .special_link {
    margin: 0 8px 16px;
  }
  .special_link li {
    flex: initial;
    width: calc(100% / 2);
    font-size: 12px;
  }
  .special_link a {
    margin: 0 2px 4px;
  }

  .special_list_wrap {
    margin: 0 10px 20px;
  }
  .special_list_wrap ul {
    overflow: hidden;
    margin: 0 -5px;
  }
  .special_list_wrap li {
    box-sizing: border-box;
    float: left;
    width: calc(50% - 10px);
    margin: 0 5px 10px;
    padding: 0;
  }
  .special_list_wrap li a {
    font-size: 13px;
  }

  /* ----------------------------------------------------------------------
     faq
  ---------------------------------------------------------------------- */

  .faq_search {
    position: relative;
    width: auto;
    margin: 0 10px 20px;
  }
  .faq_search button[type=submit] {
    top: 10px;
  }

  .faq_wrap {
    margin: 0 10px 20px;
  }
  .faq_list {
    margin-bottom: 20px;
  }
  .faq_list_ttl {
    font-size: 13px;
  }
  .faq_list_inner {
    background: #f7f8fa;
    margin-bottom: 20px;
    padding: 10px 15px;
  }

  /* ----------------------------------------------------------------------
     mypage
  ---------------------------------------------------------------------- */

  .mypage_wrap {
    border-top: none;
    padding: 0;
    margin: 0 10px 20px;
  }
  .mypage_inner {
    border-top: 1px solid #e7e9eb;
    float: none;
    box-sizing: border-box;
    width: 100%;
    padding: 30px 10px 0;
  }
  .mypage_inner .ul_style01 li {
    font-size: 13px;
  }

  .point_blance {
    text-align: center;
  }
  .point_blance .point {
    float: none;
  }
  .point_blance .term {
    float: none;
  }

  .mypage_fair {
    border: 1px solid #3ca1b7;
    margin: 0 10px 20px;
    padding: 20px;
  }
  .mypage_fair .fairevent_list .fairevent_list_ttl {
    width: 100%;
  }
  .mypage_fair .fairevent_list_detail dl {
    width: auto;
  }
  .mypage_fair .btn_s a {
    display: block;
  }

  .mypage_inner .gamers_cards {
    text-align: center;
    width: 100%;
    padding:15px 0;
    border-radius: 5px;
  }
  .mypage_inner .gamers_cards span {
    display: block;
    background: #ff8a60;
    border-radius: 10px;
    margin :0 2%;
  }
  .mypage_inner .gamers_cards p.logo{
    padding: 20px;
  }
  .mypage_inner .gamers_cards p.barcode img{
    border-radius: 5px;
    margin-bottom: 5px;
    padding: 0 5px;
    background-color:#fff;
  }

  /* ----------------------------------------------------------------------
     tokuten - index
  ---------------------------------------------------------------------- */

  .tokuten_search_list {
    flex-wrap: wrap;
    margin: 0 5px;
  }
  .tokuten_search_list > * {
    flex: auto;
    margin: 0 5px 10px;
    width: calc(33.3333% - 10px);
  }
  .tokuten_search_list .btn a {
    padding: 5px;
  }
  .tokuten_search_list .calendar {
    width: 100%;
    margin: 0 10px 10px;
    padding: 10px 10px 0;
    overflow: hidden;
    text-align: left;
  }
  .tokuten_search_list .calendar label {
    display: inline-block;
    margin-bottom: 10px;
  }
  .tokuten_search_list .calendar input[type=text] {
    width: 100px;
  }
  .tokuten_search_list .calendar i {
    line-height: 41px;
  }
  .tokuten_search_list .calendar .btn_s a {
    margin-right: 10px;
    float: right;
  }

  /* ----------------------------------------------------------------------
     tokuten - detail
  ---------------------------------------------------------------------- */

  .tokuten_detail .item_detail_img {
    float: none;
    width: auto;
  }
  .tokuten_detail .item_detail_info {
    float: none;
    width: auto;
  }
  .tokuten_detail .item_img_main {
    height: calc(100vw - 20px);
  }
  .tokuten_detail .item_img_main .slick-slide li {
    height: calc(100vw - 20px);
  }

  .tokuten_ttl_icon {
    display: table;
    background: #ff8a60;
    color: #fff;
    font-size: 12px;
    line-height: 100%;
    margin: 0 10px 5px 0;
    padding: 5px 10px;
    border-radius: 0 8px 8px 0;
  }

}





/* ==================== clearfix ==================== */
/* clearfix */
.cf:after{ content: ""; display: block; clear: both; height: 0; visibility: hidden; }
.cf { min-height: 1px; _height: 1px; }


/* ==================== レイアウト ==================== */
/* ------ margin ------ */
.mtA { margin: 0 auto; }
.mt0 { margin-top: 0; }
.mt3 { margin-top: 3px; }
.mt5 { margin-top: 5px; }
.mt8 { margin-top: 8px; }
.mt10 { margin-top: 10px; }
.mt13 { margin-top: 13px; }
.mt15 { margin-top: 15px; }
.mt18 { margin-top: 18px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt35 { margin-top: 35px; }
.mt40 { margin-top: 40px; }
.mt45 { margin-top: 45px; }
.mt50 { margin-top: 50px; }
.mt55 { margin-top: 55px; }
.mt60 { margin-top: 60px; }
.mt65 { margin-top: 65px; }
.mt70 { margin-top: 70px; }
.mt75 { margin-top: 75px; }
.mt80 { margin-top: 80px; }
.mt85 { margin-top: 85px; }
.mt90 { margin-top: 90px; }
.mt95 { margin-top: 95px; }
.mt100 { margin-top: 100px; }
.mr0 { margin-right: 0; }
.mr5 { margin-right: 5px; }
.mr10 { margin-right: 10px; }
.mr15 { margin-right: 15px; }
.mr20 { margin-right: 20px; }
.mr25 { margin-right: 25px; }
.mr30 { margin-right: 30px; }
.mr35 { margin-right: 35px; }
.mr40 { margin-right: 40px; }
.mr45 { margin-right: 45px; }
.mr50 { margin-right: 50px; }
.mr55 { margin-right: 55px; }
.mr60 { margin-right: 60px; }
.mb0 { margin-bottom: 0; }
.mb3 { margin-bottom: 3px; }
.mb5 { margin-bottom: 5px; }
.mb8 { margin-bottom: 8px; }
.mb10 { margin-bottom: 10px; }
.mb13 { margin-bottom: 13px; }
.mb15 { margin-bottom: 15px; }
.mb18 { margin-bottom: 18px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb35 { margin-bottom: 35px; }
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb55 { margin-bottom: 55px; }
.mb60 { margin-bottom: 60px; }
.mb65 { margin-bottom: 65px; }
.mb70 { margin-bottom: 70px; }
.mb75 { margin-bottom: 75px; }
.mb80 { margin-bottom: 80px; }
.mb85 { margin-bottom: 85px; }
.mb90 { margin-bottom: 90px; }
.mb95 { margin-bottom: 95px; }
.mb100 { margin-bottom: 100px; }
.ml0 { margin-left: 0; }
.ml5 { margin-left: 5px; }
.ml10 { margin-left: 10px; }
.ml15 { margin-left: 15px; }
.ml20 { margin-left: 20px; }
.ml25 { margin-left: 25px; }
.ml30 { margin-left: 30px; }
.ml35 { margin-left: 35px; }
.ml40 { margin-left: 40px; }
.ml45 { margin-left: 45px; }
.ml50 { margin-left: 50px; }
.ml55 { margin-left: 55px; }
.ml60 { margin-left: 60px; }
.w270 { width: 270px !important; }

/* ------ float ------ */
.f_l { float: left; }
.f_r { float: right; }

/* ------ テキスト系 ------ */
.ta_c {
  text-align: center;
}
.ta_l {
  text-align: left;
}
.ta_r {
  text-align: right;
}


