@charset "UTF-8";
/**
 * 2025年4Q
 * サイトスコア改善対策
 * /index.tpl 用のSCSSを作成
 * 非ログイン状態だけで適用
 */
/* 古い settingを読み込む このファイルは削除対象なのでこれ以上変数を増やさない */
/*
* 以下はリニューアル前の変数
* o-がつくものに関しては使用せず _settingのものを使ってください。
* また、o-がつく変数があっても新規でレイアウト作成時に出来たものは新規で作成してください。
* style guide は下記参照のこと
* https://www.figma.com/file/PrZ9uCouuhUyxAyc00wfRYum/%E3%82%B2%E3%82%BD%E3%81%A6%E3%82%93-PC?node-id=5382%3A1443
*/
/**
 * カラー
 */
/**
 * 余白
 */
/**
 * 旧レイアウトで使用している角丸のレイアウト
 */
/**
 * フォントサイズ・ウェイト
 * mixin だが用意したものしか使わないという設定的な用途のため settings におく
 */
/**
 * scss内で記述している imgのクエリストリングを一括で変更
 * YYYYMMDDhhmm で記述すること
 */
/*
* 以下はリニューアル後の変数
* o-がつくものに関しては使用せず
* 下記から使用してください。
* また、o-がつく変数があっても新規でレイアウト作成時に出来たものは新規で作成してください。
* style guide は下記参照のこと
* https://www.figma.com/file/PrZ9uCouuhUyxAyc00wfRYum/%E3%82%B2%E3%82%BD%E3%81%A6%E3%82%93-PC?node-id=5382%3A1443
*/
/* 追加のグローバル変数 */
/**
 * カラー
 */
/* アクセントカラー */
/* テキスト */
/* border */
/* 背景の指定 */
/* リンクの色 */
/* shadowの色 */
/* クイックチャージ */
/* クーポン */
/* コインバック */
/* pr 広告枠 */
/* その他 */
/**
 * 余白
 */
/* 角丸 */
/**
 * フォントサイズ・ウェイト
 * mixin だが用意したものしか使わないという設定的な用途のため settings におく
 */
/* baseのプレースホルダークラス　置く場所悩み中 */
.c-pickup-message, .c-incentive-card {
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(34, 34, 34, 0.2);
}

/**
 * シャドウ
 */
.c-pickup-message, .c-incentive-card {
  background-color: #fff;
}

/**
 * WAI-ARIA
 */
[role=tab] {
  cursor: pointer;
}
[role=tab][aria-selected=true] {
  cursor: default;
}

[aria-hidden=true] {
  display: none;
}

/* フォーム・基本スタイル（_old-components.scssより移管） */
input,
textarea,
select {
  display: inline-block;
  border: 1px solid #bbb;
  border-radius: 3px;
  background-color: #fff;
  color: #555;
}

label input,
label textarea,
label select {
  display: block;
}

input[type=image], input[type=checkbox], input[type=radio] {
  display: inline;
  width: auto;
  height: auto;
  margin: 3px 0;
  /* margin-top: 0; */
  padding: 0;
  border: 0 \9 ;
  /* IE9 and down */
  border-radius: 0;
  background-color: transparent;
  /* IE7 */
  line-height: normal;
  cursor: pointer;
}
input[type=image] {
  border: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
input[type=file] {
  width: auto;
  height: 28px;
  padding: initial;
  border: initial;
  background-color: #fff;
  background-color: initial;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  line-height: initial;
  /* In IE7, the height of the select element cannot be changed by height, only font-size
  *margin-top: 4px; */
  /* For IE7, add top margin to align select with labels */
  line-height: 28px;
  line-height: 18px \9 ;
}
input[type=button], input[type=reset], input[type=submit] {
  width: auto;
  height: auto;
}
input[type=text], input[type=password] {
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
  -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
  -o-transition: border linear 0.2s, box-shadow linear 0.2s;
  transition: border linear 0.2s, box-shadow linear 0.2s;
}
input[type=hidden] {
  display: none;
}
input[type=submit] {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
input:focus {
  outline: thin dotted \9 ;
  border-color: rgba(82, 168, 236, 0.8);
  /* IE6-9 */
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}
input[type=file]:focus, input[type=radio]:focus, input[type=checkbox]:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
input[type=radio][disabled], input[type=checkbox][disabled], input[type=radio][readonly], input[type=checkbox][readonly] {
  background-color: transparent;
}
input:focus:required:invalid {
  border-color: #ee5f5b;
  color: #b94a48;
}

select {
  height: 28px;
  background-color: #fff;
  /* In IE7, the height of the select element cannot be changed by height, only font-size
  *margin-top: 4px; */
  /* For IE7, add top margin to align select with labels */
  line-height: 28px;
}
select[multiple], select[size] {
  height: auto;
}

textarea {
  height: auto;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
  -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
  -o-transition: border linear 0.2s, box-shadow linear 0.2s;
  transition: border linear 0.2s, box-shadow linear 0.2s;
}

textarea:focus {
  outline: 0;
  outline: thin dotted \9 ;
  border-color: rgba(82, 168, 236, 0.8);
  /* IE6-9 */
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

select:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}

input,
textarea {
  margin-left: 0;
}

input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
  border-color: #ddd;
  background-color: #eee;
  cursor: not-allowed;
}

textarea:focus:required:invalid,
select:focus:required:invalid {
  border-color: #ee5f5b;
  color: #b94a48;
}

input:focus:required:invalid:focus,
textarea:focus:required:invalid:focus,
select:focus:required:invalid:focus {
  border-color: #e9322d;
  -webkit-box-shadow: 0 0 6px #f8b9b7;
  -moz-box-shadow: 0 0 6px #f8b9b7;
  box-shadow: 0 0 6px #f8b9b7;
}

:-moz-placeholder,
::-webkit-input-placeholder {
  color: #999;
}

/* basic */
textarea,
input,
select {
  font: 13px/1.5 Meiryo, "MS PGothic", arial, sans-serif;
}

a {
  color: #0086e5;
  text-decoration: none;
}
a:hover {
  color: #005580;
  text-decoration: none;
}

img {
  border: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

.ellipsis {
  overflow: hidden;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.red {
  color: #f33;
}

.bold {
  font-weight: bold;
}

/* @group Titles */
h2#topic_game_title {
  padding: 0 0 8px 6px;
  font-size: 123.1%;
}

.has_image img {
  margin: 0 5px 0 0;
}

h2,
h3,
h4,
h5 {
  position: relative;
}

h1 .more,
h2 .more,
h3 .more,
h4 .more,
h5 .more {
  position: absolute;
  top: 0;
  right: 0;
  font-weight: normal;
}

h1.has_yarman,
h2.has_yarman,
h3.has_yarman,
h4.has_yarman,
h5.has_yarman {
  font-size: 18px;
  height: 22px;
  margin: 0 0 4px;
  padding: 3px 0 0 25px;
  background: url("//static.gesoten.com/img/yarman_gray_mini.png?v=202504021600") no-repeat 0 50%;
  color: #000;
  word-break: break-all;
  line-height: 22px;
}

/**
 * ゲソで特定のところに使われている リセット
 */
/**
 * 1行でのテキストをカットする
 * 横幅を指定しないと省略できないので気をつけて
 */
/**
 * 複数行のテキストをカットする
 */
/**
 * ブロック要素をセンターに寄せる
 */
/* #l-old-setting-layout と #l-bingo-wrapper は
* 古いレイアウトのものになります。
* こちらは削除対象なので、こちらは使用しないでください。
*/
/**
 * 以下、リニューアル後に追加 20200811
 */
/* missionページで使用するボタン 共通パーツが多いので mixiin化する */
/* ここは mixinを統合と同時に移植する */
.u-expand-link::after {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  content: "";
  pointer-events: auto;
}

.u-over-expand-link {
  z-index: 2;
  position: relative;
}

/* 旧ユーティリティ（_old-components.scssより移管） */
/* @group Misc */
#saved,
.info_box {
  width: 970px;
  height: 34px;
  margin: 0 auto 6px;
  border: 1px solid #a0c790;
  background: #dff0d8;
  color: #549154;
  font-weight: bold;
  font-size: 116%;
  line-height: 34px;
}

#saved {
  width: 100%;
}

#inner_basic #saved {
  width: 970px;
}

#saved p,
.info_box p {
  padding: 0 10px;
}

#msg_col #saved {
  margin: 0 0 30px 0;
}

.tab li {
  float: left;
  width: 90px;
  height: 25px;
  margin: 0 5px 0 0;
  padding: 0;
  border: 1px solid #aaa;
  border-bottom: none;
  background: -webkit-linear-gradient(top, #fcfcfc, #cecece);
  background: -moz-linear-gradient(top, #fcfcfc, #cecece);
  background: -ms-linear-gradient(top, #fcfcfc, #cecece);
  background: -o-linear-gradient(top, #fcfcfc, #cecece);
  background: linear-gradient(to bottom, #fcfcfc, #cecece);
  background-color: #ddd;
  text-align: center;
  font-weight: bold;
  line-height: 25px;
  cursor: pointer;
}
.tab li a {
  display: block;
  color: #333;
}
.tab li a:hover {
  color: #000;
  text-decoration: underline;
}
.tab li:hover {
  background: #eee;
  color: #000;
}

.tab li.current {
  border-bottom: 1px solid #fff !important;
  background: #fff !important;
  color: #000;
}

.has_shadow {
  border: 1px solid #ccc;
}

.p_0 {
  padding: 0;
}

.p_t_5 {
  padding-top: 5px;
}

.p_t_10 {
  padding-top: 10px;
}

.p_tb_20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.p_b_5 {
  padding-bottom: 5px;
}

.p_b_10 {
  padding-bottom: 10px;
}

.m_b_10 {
  margin-bottom: 10px;
}

.m_b_20 {
  margin-bottom: 20px;
}

.m_t_10 {
  margin-top: 10px;
}

.warn_wrap {
  margin: 0 0 10px 0;
  padding: 5px;
  border: 1px solid #f27a7a;
  background-color: #f8e6e6;
}

.warn_text {
  color: #dc0000;
  font-weight: bold;
}

.border_b_none {
  border-bottom: none !important;
}

.small {
  font-size: 85%;
}

.align_left {
  text-align: left;
}

.align_right {
  text-align: right;
}

.middle {
  padding: 5px 0;
  text-align: center;
}
.middle input {
  padding: 5px 20px;
  font-size: 123.1%;
}

.v_middle {
  vertical-align: middle !important;
}

.h_middle {
  display: block;
  margin: 0 auto;
}

.back {
  width: 50px;
  padding: 3px;
}

.section_bottom {
  position: relative;
  padding: 12px 0;
}
.section_bottom .more {
  top: 0;
  right: 10px;
}

.display_none {
  display: none;
}

.display_block {
  display: block;
}

input.display_block,
textarea.display_block {
  display: block;
  padding: 5px;
  font-size: 108%;
  resize: none;
}

.counter {
  display: none;
  position: absolute;
  color: #ccc;
  font-weight: bold;
  font-size: 116%;
}
.counter.warning {
  color: #ba5500;
  font-weight: bold;
}
.counter.exceeded {
  color: #b60000;
  font-weight: bold;
}

#about_you .counter {
  display: block;
  right: 13px;
  bottom: 8px;
  padding: 3px;
}

.post_box .counter {
  z-index: 1;
  display: none;
  top: 66px;
  right: 108px;
}

#make_topic .counter {
  top: 108px;
  right: 10px;
}

.your_reply .counter {
  top: 70px;
  right: 8px;
  padding: 1px 5px;
  background-color: #fff;
}

#game_timeline_wrap .counter {
  top: 50px;
  right: 18px;
  background-color: #fff;
  font-size: 85%;
}

.loader {
  background: #fff url("//static.gesoten.com/img/loader.gif") no-repeat 50% 50% !important;
}

/* @end */
.c-content {
  position: relative;
  margin: 10px;
  padding: 0;
}

/* アルファベット順ではなく、優先度順にしています */
/* ゲソてんの全体を指定するレイアウト 読み込み順はこれを一番最初にしてください */
#l-global {
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
}
#l-global * {
  box-sizing: border-box;
}

/* #l-old-setting-layout と #l-bingo-wrapper は
* 古いレイアウトのものになります。
* リニューアルする際こちらも変更してください。
* #l-globalより読み込みの優先度をあげてください。
*/
#l-old-setting-layout {
  box-sizing: content-box;
  line-height: 1.4;
}
#l-old-setting-layout * {
  box-sizing: inherit;
}

#l-bingo-wrapper {
  box-sizing: content-box;
  line-height: 1.5;
}
#l-bingo-wrapper * {
  box-sizing: inherit;
}

/* 旧レイアウト（_old-components.scssより移管） */
#wrapper {
  position: relative;
  width: 1000px;
  min-height: 640px;
  margin: 0 auto;
  padding: 0 0 40px;
  background-color: #fff;
}

#main_col {
  float: left;
  width: 670px;
}

#game_main_col {
  position: relative;
  margin: 0;
}
#game_main_col iframe {
  position: relative;
}
#game_main_col iframe.medal {
  width: 760px !important;
}
#game_main_col.large {
  width: 1000px;
}
#game_main_col.large #game_wrap {
  float: none;
  width: 950px;
  margin: 0 auto;
}

.game_wrap__outer.game_wrap__outer-bg {
  background-color: #333;
}

#badge_col {
  float: left;
  width: 800px;
}

#side_col {
  float: right;
  width: 300px;
}

#game_side_col {
  position: absolute;
  top: 0;
  right: -1px;
  width: 232px;
  height: 1020px;
}
#game_side_col.community {
  top: -34px;
}
#game_side_col .show_tm,
#game_side_col .hide_tm {
  margin: 0 0 -1px 0;
  padding: 4px;
  border: 1px solid #aaa;
  border-radius: 4px 4px 0 0/4px 4px 0 0;
  font-size: 85%;
}

#badge_side_col {
  float: right;
  width: 180px;
  margin: 8px 9px 0 0;
}

.left {
  float: left;
}

.right {
  float: right;
}

.normal_red {
  color: #f33;
  font-weight: normal;
  font-size: 12px;
}

/* 旧レイアウト補足（_old-components.scssより移管） */
/* @group Main layouts */
.pankuzu {
  width: 100%;
  margin: 0 auto;
  background: #f2f2f2;
  background-color: #fff;
  color: #666;
  font-size: 85%;
}
.pankuzu .inner {
  width: 982px;
  height: 26px;
  margin: 0 auto;
  line-height: 26px;
}

#main_basic {
  float: left;
  width: 660px;
}

#aside_basic {
  float: right;
  width: 300px;
}

/* mypage */
#inner_basic {
  padding: 6px 0 20px;
  background-color: #fff;
}

/* マージンリセット（_old-components.scssより移管） */
/* reset */
#main_col {
  margin: 0 0 0 9px;
}

#side_col {
  margin: 0 9px 0 0;
}

.more_br {
  margin: 6px 0 0;
  text-align: right;
}

.l-wrapper[data-login-status=false] {
  background-position: 50% 29px;
}
.l-wrapper--pagejack {
  overflow: hidden;
  position: relative;
  min-height: 800px;
  background-attachment: fixed;
  background-position: 50% 0;
  background-repeat: no-repeat;
}

/* ゲソてん ヘッダーのレイアウト */
.l-header {
  height: 80px;
  background-color: #fff;
}

/* ゲソてんメインコンテンツのレイアウト */
.l-main {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex: 1;
  justify-content: space-between;
  box-sizing: border-box;
  padding: 16px 16px 40px;
  background-color: #fff;
}
.l-main--reward {
  width: 1237px;
  margin-right: auto;
  margin-left: auto;
  padding: 16px 0 40px;
}
.l-main--sub {
  padding: 16px 16px 28px;
}
.l-main--middle {
  padding: 16px 16px 0;
}
.l-main__l-single-col {
  width: 968px;
  margin-right: auto;
  margin-left: auto;
}
.l-main__l-aside, .l-main__l-contents {
  background-color: #fff;
}
.l-main__l-aside {
  display: flex;
  flex-direction: column;
  width: 236px;
  gap: 12px;
}
.l-main__l-contents {
  width: 712px;
}
.l-main--reward .l-main__l-contents {
  width: 970px;
}

/* 島や広告枠などのイレギュラーなものを囲う用 1カラム */
.l-cover {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 16px;
  background-color: #fff;
}
.l-cover--community {
  padding-bottom: 0;
  padding-inline: 16px;
}
.l-cover--bg-none {
  background-color: transparent;
}

/* ページジャックのレイアウト */
.l-pagejack-link > a {
  display: block;
  position: absolute;
  width: 300px;
  height: 100%;
}
.l-pagejack-link__l-left {
  left: calc(50% - (500px + 300px));
}
.l-pagejack-link__l-right {
  right: calc(50% - (500px + 300px));
}

/* ゲームカルーセル */
.l-game-carousel {
  margin-bottom: 28px;
}
.l-game-carousel__l-main {
  margin-bottom: 10px;
}

/* 大切なお知らせ */
.l-pickup-message-list li:not(:last-child) {
  margin-bottom: 8px;
}

/* 運営からのお知らせのリスト */
.l-manage-message-list > li {
  border-top: 1px dashed #ddd;
}
.l-manage-message-list > li:last-child {
  border-bottom: 1px dashed #ddd;
}
.l-manage-message-list > li > a {
  padding: 12px 0;
  padding-right: 20px;
}

/* 要素を縦並びにさせる */
.l-stack-list > li:not(:last-child) {
  margin-bottom: 8px;
}

/* ゲームランキング */
.l-ranking-card-list {
  display: flex;
  flex-flow: row wrap;
  padding-top: 50px;
}
.l-ranking-card-list li {
  margin-bottom: 16px;
}
.l-ranking-card-list li:not(:nth-child(3)) {
  margin-right: 16px;
}
.l-ranking-card-list li:nth-child(5n+3) {
  margin-right: 0;
}
.l-ranking-card-list > .c-ranking-top-card {
  width: calc((99.9999% - 32px) / 3);
  max-width: calc((99.9999% - 32px) / 3);
}
.l-ranking-card-list > .c-ranking-card {
  width: calc((99.9999% - 64px) / 5);
}

/* 左カラムのmedia型のレイアウトを縦並びにさせる */
.l-media-stack-list li > a {
  color: #000;
}
.l-media-stack-list li:not(:last-child) {
  margin-bottom: 12px;
}

/* ゲームリストジャンルなど定期ストのみ羅列させる場合に使用 */
.l-casualgame-list .list_ranking_user {
  position: relative;
  height: 500px;
  margin: 0;
  margin-bottom: 16px;
  background-color: #fff;
  line-height: 1.4;
}
.l-casualgame-list .list_ranking_user:not(:nth-child(3n)) {
  margin-right: 10px;
}
.l-casualgame-list .list_ranking_user .detail {
  width: 135px;
}

/* ゲームリストジャンルなど定期ストのみ羅列させる場合に使用 */
.l-txt-link-list {
  border-top: 1px dashed #ddd;
}
.l-txt-link-list__item {
  border-bottom: 1px dashed #ddd;
}
.l-txt-link-list__item > a {
  position: relative;
}
.l-txt-link-list__item > a::after {
  position: absolute;
  top: calc(50% - 4px);
}
.l-txt-link-list__item > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.l-txt-link-list__item > a {
  font-size: 14px;
  display: block;
  padding: 12px 20px 12px 4px;
  color: #222;
}
.l-txt-link-list__item > a::after {
  right: 4px;
}
.l-txt-link-list__item > a:hover {
  background-color: #e4e4e4;
  color: #0086e5;
  text-decoration: underline;
}
.l-txt-link-list__item--active > a {
  background-color: #e4e4e4;
}

/**
 * キャンペーンバナーを羅列させる
 */
.l-campaign-bnr-list li {
  margin-bottom: 8px;
}
.l-campaign-bnr-list li iframe {
  -webkit-transform: scale(0.978);
          transform: scale(0.978);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}
.l-campaign-bnr-list li img {
  width: 100%;
}

/**
 * ミッションでポイントの
 * 条件などを羅列する
 */
.l-mission-list > li {
  font-weight: bold;
  font-size: 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e4e4e4;
}
.l-mission-list > li:not(:last-child) {
  margin-bottom: 8px;
}

/* カードコンポーネント */
.l-card-alignment.cols3 {
  display: flex;
  flex-wrap: wrap;
}
.l-card-alignment.cols3 > .c-card {
  width: calc((99.9999% - 2 * 16px) / 3);
  margin-bottom: 16px;
}
.l-card-alignment.cols3 > .c-card:not(:nth-child(3n)) {
  margin-right: 16px;
}
.l-card-alignment.cols3 > .c-card:nth-child(3n+1):nth-last-child(-n+3), .l-card-alignment.cols3 > .c-card:nth-child(3n+1):nth-last-child(-n+3) ~ .c-card {
  margin-bottom: 0;
}
.l-card-alignment.cols4 {
  display: flex;
  flex-wrap: wrap;
}
.l-card-alignment.cols4 > .c-card {
  width: calc((99.9999% - 3 * 16px) / 4);
  margin-bottom: 16px;
}
.l-card-alignment.cols4 > .c-card:not(:nth-child(4n)) {
  margin-right: 16px;
}
.l-card-alignment.cols4 > .c-card:nth-child(4n+1):nth-last-child(-n+4), .l-card-alignment.cols4 > .c-card:nth-child(4n+1):nth-last-child(-n+4) ~ .c-card {
  margin-bottom: 0;
}
.l-card-alignment.cols5 {
  display: flex;
  flex-wrap: wrap;
}
.l-card-alignment.cols5 > .c-card {
  width: calc((99.9999% - 4 * 16px) / 5);
  margin-bottom: 16px;
}
.l-card-alignment.cols5 > .c-card:not(:nth-child(5n)) {
  margin-right: 16px;
}
.l-card-alignment.cols5 > .c-card:nth-child(5n+1):nth-last-child(-n+5), .l-card-alignment.cols5 > .c-card:nth-child(5n+1):nth-last-child(-n+5) ~ .c-card {
  margin-bottom: 0;
}
.l-card-alignment.cols6 {
  display: flex;
  flex-wrap: wrap;
}
.l-card-alignment.cols6 > .c-thumb {
  width: calc((99.9999% - 5 * 16px) / 6);
  margin-bottom: 16px;
}
.l-card-alignment.cols6 > .c-thumb:not(:nth-child(6n)) {
  margin-right: 16px;
}
.l-card-alignment.cols6 > .c-thumb:nth-child(6n+1):nth-last-child(-n+6), .l-card-alignment.cols6 > .c-thumb:nth-child(6n+1):nth-last-child(-n+6) ~ .c-thumb {
  margin-bottom: 0;
}

/* エッグ・ポイント インセンティブがもらえるカードを横並びにする */
.l-incentive-card-alignment {
  display: flex;
  flex-wrap: wrap;
}
.l-incentive-card-alignment > .c-incentive-card {
  width: calc((99.9999% - 2 * 16px) / 3);
  margin-bottom: 16px;
}
.l-incentive-card-alignment > .c-incentive-card:not(:nth-child(3n)) {
  margin-right: 16px;
}
.l-incentive-card-alignment > .c-incentive-card:nth-child(3n+1):nth-last-child(-n+3), .l-incentive-card-alignment > .c-incentive-card:nth-child(3n+1):nth-last-child(-n+3) ~ .c-incentive-card {
  margin-bottom: 0;
}
.l-incentive-card-alignment.cols4 {
  display: flex;
  flex-wrap: wrap;
}
.l-incentive-card-alignment.cols4 > .c-incentive-card {
  width: calc((99.9999% - 3 * 16px) / 4);
  margin-bottom: 16px;
}
.l-incentive-card-alignment.cols4 > .c-incentive-card:not(:nth-child(4n)) {
  margin-right: 16px;
}
.l-incentive-card-alignment.cols4 > .c-incentive-card:nth-child(4n+1):nth-last-child(-n+4), .l-incentive-card-alignment.cols4 > .c-incentive-card:nth-child(4n+1):nth-last-child(-n+4) ~ .c-incentive-card {
  margin-bottom: 0;
}
.l-incentive-card-alignment.cols4 .c-incentive-card:nth-child(4n) {
  margin-right: 0;
  margin-bottom: 16px;
}

/* ジャンルをみる 横並びにさせるレイアウト */
.l-category-media-alignment {
  display: flex;
  flex-wrap: wrap;
}
.l-category-media-alignment > .c-category-media {
  width: calc((99.9999% - 2 * 16px) / 3);
  margin-bottom: 16px;
}
.l-category-media-alignment > .c-category-media:not(:nth-child(3n)) {
  margin-right: 16px;
}
.l-category-media-alignment > .c-category-media:nth-child(3n+1):nth-last-child(-n+3), .l-category-media-alignment > .c-category-media:nth-child(3n+1):nth-last-child(-n+3) ~ .c-category-media {
  margin-bottom: 0;
}

/* 事前登録のレイアウトを横並びにさせる */
.l-pre-entry-media-alignment {
  display: flex;
  flex-wrap: wrap;
}
.l-pre-entry-media-alignment > .c-pre-entry-media {
  width: calc((99.9999% - 1 * 16px) / 2);
  margin-bottom: 16px;
}
.l-pre-entry-media-alignment > .c-pre-entry-media:not(:nth-child(2n)) {
  margin-right: 16px;
}
.l-pre-entry-media-alignment > .c-pre-entry-media:nth-child(2n+1):nth-last-child(-n+2), .l-pre-entry-media-alignment > .c-pre-entry-media:nth-child(2n+1):nth-last-child(-n+2) ~ .c-pre-entry-media {
  margin-bottom: 0;
}

/**
 * ボタン横並びのリスト
 * ボタンの間 8px でいったん作成
 */
.l-btn-alignment {
  font-size: 0;
}
.l-btn-alignment > li {
  display: inline-block;
}
.l-btn-alignment > li:first-child {
  margin-right: 8px;
}

/* ゲームページ カルーセル下カテゴリへのリンクのボタン */
.l-game-local-nav {
  display: flex;
  justify-content: space-between;
  margin-bottom: 28px;
}
.l-game-local-nav > li {
  width: calc((100% - 32px) / 3);
}
.l-game-local-nav > li:not(:last-child) {
  margin-right: 16px;
}
.l-game-local-nav a {
  display: block;
}

/**
 * 貯まるゲーム
 * ビンゴ・ガチャ・毎日コツコツのナビゲーション
 */
.l-reward-nav {
  display: flex;
  justify-content: space-between;
  margin-bottom: 28px;
}
.l-reward-nav__main {
  width: 788px;
}
.l-reward-nav__sub {
  width: 164px;
}

/**
 * 貯まるゲーム
 * ポイントタウンゲームへの誘導枠
 */
.l-reward-nav-sub:hover {
  background-color: #eaf5fb;
}
.l-reward-nav-sub {
  display: block;
  height: 100%;
  padding: 14px 0;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  color: #0086e5;
  text-align: center;
  line-height: 1.4;
}

/* テキストのみのリンクを縦並びにするレイアウト */
.l-text-link li:not(:last-child) {
  margin-bottom: 12px;
}
.l-text-link a:hover {
  color: #0086e5;
  text-decoration: underline;
}
.l-text-link a {
  color: #0086e5;
}

.l-contents-list {
  display: flex;
  flex-wrap: wrap;
}
.l-contents-list > li {
  margin-bottom: 16px;
}
.l-contents-list > li > a {
  display: block;
}
.l-contents-list--2col > li {
  width: calc((100% - 16px) / 2);
}
.l-contents-list--2col > li:not(:nth-child(2n)) {
  margin-right: 16px;
}

.l-media-list {
  display: flex;
  flex-wrap: wrap;
}
.l-media-list > li {
  box-shadow: 0 0 4px #d1d1d1;
  margin-bottom: 16px;
  border-radius: 4px;
  background-color: #fff;
}
.l-media-list--2col > li {
  width: calc((100% - 16px) / 2);
}
.l-media-list--2col > li:not(:nth-child(2n)) {
  margin-right: 16px;
}

.l-card-list {
  display: flex;
  flex-wrap: wrap;
}
.l-card-list > li {
  box-shadow: 0 0 4px #d1d1d1;
  margin-bottom: 16px;
  border-radius: 4px;
  background-color: #fff;
}
.l-card-list > li > a {
  display: block;
  height: 100%;
}
.l-card-list--col2 > li {
  width: calc((100% - 16px) / 2);
}
.l-card-list--col2 > li:not(:nth-child(2n)) {
  margin-right: 16px;
}
.l-card-list--col3 > li {
  width: calc((100% - 32px) / 3);
}
.l-card-list--col3 > li:not(:nth-child(3n)) {
  margin-right: 16px;
}
.l-card-list--col4 > li {
  width: calc((100% - 48px) / 4);
}
.l-card-list--col4 > li:not(:nth-child(4n)) {
  margin-right: 16px;
}
.l-card-list--col5 > li {
  width: calc((100% - 64px) / 5);
}
.l-card-list--col5 > li:not(:nth-child(5n)) {
  margin-right: 16px;
}

.l-btn-list {
  display: flex;
  flex-wrap: wrap;
  padding-right: 8px;
  padding-left: 8px;
}
.l-btn-list > li {
  width: 100%;
  margin-bottom: 8px;
}
.l-btn-list > li > a {
  display: block;
  height: 100%;
}
.l-btn-list--2col > li {
  width: calc((100% - 8px) / 2);
}
.l-btn-list--2col > li:not(:nth-child(2n)) {
  margin-right: 8px;
}

/**
 * バッジ ライトと共通のスタイル
 */
.badge {
  font-weight: bold;
  font-size: 14px;
  margin-left: 10px;
  padding: 3px 8px 1px;
  border-radius: 2px;
}
.badge--new {
  background-color: #f33;
  color: #fff;
  -webkit-animation: fadeIn 2.5s ease 0s infinite normal;
  animation: fade 2.5s ease 0s infinite normal;
}
.badge--appeal {
  background-color: #f33;
  color: #fff;
}
.badge--normal {
  background-color: #999;
  color: #fff;
}

@-webkit-keyframes fade {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/**
 * バッジの共通スタイル
 */
.badge-new {
  display: inline-block;
  max-width: 100%;
  color: #fff;
  text-align: center;
  line-height: 40px;
  font-size: 12px;
  z-index: 1;
  position: absolute;
  width: 40px;
  height: 40px;
  background-color: #f9484e;
  font-weight: bold;
}

/**
 * リボン ライトと共通
 */
.badge-ribbon {
  display: inline-block;
  max-width: 100%;
  color: #fff;
  text-align: center;
  line-height: 40px;
  font-weight: bold;
  font-size: 20px;
  z-index: 1;
  position: absolute;
  width: 40px;
  background-color: #8b8b8b;
}

.badge-ribbon--1 {
  background-color: #d39805;
}
.badge-ribbon--1::before, .badge-ribbon--1::after {
  border-color: #d39805;
}
.badge-ribbon--1::before {
  left: -22px;
  border-left-color: transparent;
}
.badge-ribbon--1::after {
  right: -22px;
  border-right-color: transparent;
}

.badge-ribbon--2 {
  background-color: #89a1ad;
}
.badge-ribbon--2::before, .badge-ribbon--2::after {
  border-color: #89a1ad;
}
.badge-ribbon--2::before {
  left: -22px;
  border-left-color: transparent;
}
.badge-ribbon--2::after {
  right: -22px;
  border-right-color: transparent;
}

.badge-ribbon--3 {
  background-color: #8f6b45;
}
.badge-ribbon--3::before, .badge-ribbon--3::after {
  border-color: #8f6b45;
}
.badge-ribbon--3::before {
  left: -22px;
  border-left-color: transparent;
}
.badge-ribbon--3::after {
  right: -22px;
  border-right-color: transparent;
}

.badge-ribbon--4 {
  background-color: #999;
}
.badge-ribbon--4::before, .badge-ribbon--4::after {
  border-color: #999;
}
.badge-ribbon--4::before {
  left: -22px;
  border-left-color: transparent;
}
.badge-ribbon--4::after {
  right: -22px;
  border-right-color: transparent;
}

/* 旧バッジ（_old-components.scssより移管） */
/* @group バッジ、レベル */
#about_badge #badge_img {
  width: 150px;
}
#about_badge #badge_img img {
  width: 150px;
}
#about_badge #badge_img .badge_kind {
  display: block;
  padding: 5px;
  background: #333;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
#about_badge .breadcrumb {
  padding: 0 0 15px 0;
}
#about_badge .breadcrumb li {
  float: left;
  padding: 0 20px 0 0;
  background: url("//static.gesoten.com/img/icon_arrow_ccc.png?v=202504021600") no-repeat right 50%;
}
#about_badge .breadcrumb li.last-child {
  padding: 0;
  background: none;
}
#about_badge #desc {
  width: 500px;
}

#about_badge #desc .btn_gray {
  display: inline-block;
  margin-right: 4px;
  font-weight: bold;
}

#about_badge #desc h2,
#about_badge #desc h3,
#about_badge h2 {
  padding: 0 0 0 40px;
}

#about_badge #desc p,
#badge {
  position: relative;
  margin: 0 0 20px 0;
  padding: 9px 9px 0 9px;
  border-radius: 5px;
  background-color: #fff;
}
#about_badge #desc p .refine_category,
#badge .refine_category {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px;
  background-color: #fff;
}

#about_badge .get_when {
  padding: 0 0 10px 0;
}
#about_badge .get_when .right {
  width: 460px;
}

#about_badge .get_when .right .user_name,
.badge_list_wrap {
  padding: 20px 0 10px 0;
}

.badge_list {
  position: relative;
}
.badge_list .indivi {
  float: left;
  overflow: hidden;
  position: relative;
  width: 130px;
  height: 144px;
  font-size: 85%;
}
.badge_list .indivi .icon_new {
  position: absolute;
  top: 0;
  left: 26px;
  padding: 2px 4px;
  background: #e00;
  color: #fff;
  text-shadow: 0 1px 0 #c00;
  font-weight: bold;
  font-size: 93%;
  font-family: Verdana, arial, helvetica, sans-serif;
}
.badge_list .indivi img {
  display: block;
  width: 100px;
  height: 100px;
  margin: 0 auto;
}
.badge_list .indivi.not_get img {
  -moz-opacity: 0.2;
  opacity: 0.2;
}

.indivi.not_get {
  position: relative;
}

.badge_list .indivi a {
  display: block;
  color: #666;
  text-align: center;
}
.badge_list .indivi .get {
  display: block;
  background: #333;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.badge_list .indivi .get span {
  display: block;
  background: #333;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

#badge_side_col dl {
  width: 178px;
  margin: 0 0 10px 0;
  border: 1px solid #ccc;
  border-top: none;
  background-color: #fff;
}
#badge_side_col dt {
  /* 各dlにより可変させる */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  float: left;
  clear: both;
  width: 108px;
  height: 20px;
  padding: 5px;
  border-top: 1px solid #ccc;
  font-size: 85%;
  line-height: 20px;
}
#badge_side_col dd {
  float: right;
  overflow: hidden;
  position: relative;
  width: 50px;
  padding: 5px;
  border-top: 1px solid #ccc;
}
#badge_side_col #badge_kind dd strong,
#badge_side_col #badge_where dd strong {
  font-weight: bold;
  font-size: 123.1%;
}
#badge_side_col dd strong {
  display: block;
}
#badge_side_col dd span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 70px;
}
#badge_side_col #badge_status .badge_count_title {
  width: 60px;
  height: 35px;
  padding: 0 0 0 40px;
  background: url("//static.gesoten.com/img/badge.png?v=202504021600") no-repeat 5px 50%;
  text-align: right;
  font-weight: bold;
  line-height: 35px;
}
#badge_side_col #badge_status dd.badge_count {
  width: 68px;
  height: 35px;
  padding: 0;
  padding: 0 0 0 10px;
  font-weight: bold;
  font-size: 167%;
  line-height: 35px;
}
#badge_side_col #badge_status .lv_count_title {
  width: 178px;
  height: 20px;
  padding: 0;
  font-weight: bold;
  line-height: 20px;
}
#badge_side_col #badge_status .lv_count_title span {
  display: block;
  width: 100px;
  text-align: right;
}
#badge_side_col #badge_status .lv_count_title strong {
  display: block;
  width: 68px;
  padding: 0 0 0 10px;
  font-size: 123.1%;
}
#badge_side_col #badge_status .lv_count {
  width: 178px;
  padding: 0;
  border: none;
}
#badge_side_col #badge_status .lv_count .clearfix {
  width: 154px;
  margin: 0 auto 5px auto;
  padding: 5px;
  border: 1px solid #ccc;
}
#badge_side_col #badge_status .lv_count strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 115px;
  height: 35px;
  font-weight: bold;
  font-size: 123.1%;
  line-height: 35px;
}
#badge_side_col #badge_status dd img {
  width: 35px;
  height: 35px;
}

#user_has_same_badge {
  margin-top: 10px;
  padding: 10px 0 0 10px;
  border-radius: 5px;
}
#user_has_same_badge .user_not_login .btn_green {
  display: block;
  width: 500px;
  margin: 16px auto 26px;
  padding: 22px 0;
  border-radius: 8px;
  font-size: 138.5%;
}

/* バッジページデザイン崩れを修正 */
#badge_side_col #badge_status .badge_count_title {
  box-sizing: content-box;
  width: 68px;
}

#badge_side_col #badge_status .lv_count strong {
  width: 100px;
}

#badge_side_col dt {
  width: 126px;
  height: 30px;
}

/**
 * 汎用バルーン
 */
.c-tips-balloon {
  z-index: 1;
  position: absolute;
  margin-bottom: 4px;
  animation: yureyure 2s ease-in-out infinite alternate-reverse;
}
.c-tips-balloon__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: -webkit-max-content;
  width: max-content;
  padding: 2px 8px;
  border-radius: 2px;
  background-color: #ff3232;
  -webkit-transform: translate(24px, -16px);
          transform: translate(24px, -16px);
  margin-inline: auto;
  gap: 8px;
}
.c-tips-balloon__inner::after {
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  width: 1px;
  border: 5px solid transparent;
  border-top: 5px solid #ff3232;
  content: "";
  margin-inline: auto;
}
.c-tips-balloon__text {
  font-weight: bold;
  font-size: 12px;
  display: inline-block;
  color: #fff;
  line-height: 1.2;
}
.c-tips-balloon__text > span {
  font-weight: bold;
  font-size: 28px;
  margin-inline: 2px;
}
.c-tips-balloon__img {
  width: 32px;
}

/**
 * バブルアニメーション
 */
@-webkit-keyframes yureyure {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -3px);
            transform: translate(0, -3px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@keyframes yureyure {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -3px);
            transform: translate(0, -3px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/* btn */
.btn-forward {
  display: inline-block;
  width: 400px;
  height: 50px;
  border: 1px solid #0088d0;
  border-radius: 6px;
  background: #0088d0;
  color: #fff;
  vertical-align: middle;
  text-align: center;
  font-size: 16px;
  line-height: 50px;
}
.btn-forward:hover {
  border: 1px solid #005eaa;
  background-color: #1a94d6;
  color: #fff;
  text-decoration: none;
}

.btn-important {
  font-size: 16px;
  display: inline-block;
  width: 400px;
  height: 50px;
  border-radius: 6px;
  background-color: #ff821e;
  color: #fff;
  vertical-align: middle;
  text-align: center;
  line-height: 50px;
}
.btn-important:hover {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

/**
 * PC リニューアル後のボタン 今後はこちらを参考にしてください。
 */
.btn-action:hover {
  opacity: 0.7;
}
.btn-action {
  font-size: 14px;
  display: block;
  padding: 16px 0;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}
.btn-action:hover {
  color: #fff;
}

.btn-default:hover {
  opacity: 0.7;
}
.btn-default {
  font-size: 14px;
  display: block;
  padding: 16px 0;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #fff;
  color: #ff9600;
  text-align: center;
}
.btn-default:hover {
  color: #ff9600;
}

.btn-mission {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 204px;
  height: 46px;
  border-radius: 2px;
  background-color: #fff;
  border: none;
  cursor: pointer;
}
.btn-mission--challenge {
  background-color: #ff9600;
  color: #fff;
}
.btn-mission--clear {
  background-color: #f4f4f4;
  color: #666;
}

.btn-mission-moresee {
  font-weight: bold;
  font-size: 20px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 380px;
  height: 60px;
  border-radius: 5px;
  background-color: #fff;
  border: 1px solid #ccc;
  background-color: #fff;
  color: #ccc;
  cursor: pointer;
}

/* ガイドページ専用のボタン */
.btn-guide {
  font-weight: bold;
  font-size: 16px;
  margin-right: auto;
  margin-left: auto;
  padding: 16px 0;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
  line-height: 1;
}

.btn-primary__large {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 300px;
  border: none;
  border-radius: 8px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary__large:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary__large--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary__large--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary__large--em {
  background-color: #ff3232;
}
.btn-primary__large--em:hover {
  background-color: #f02532;
}
.btn-primary__medium {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 96px;
  border-radius: 8px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary__medium:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary__medium--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary__medium--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary__medium--em {
  background-color: #ff3232;
}
.btn-primary__medium--em:hover {
  background-color: #f02532;
}
.btn-primary__small {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  border-radius: 4px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary__small:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary__small--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary__small--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary__small--em {
  background-color: #ff3232;
}
.btn-primary__small--em:hover {
  background-color: #f02532;
}

.btn-secondary__large {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 300px;
  border: 1px solid #0086e5;
  border-radius: 8px;
  color: #0086e5;
}
.btn-secondary__large:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary__large--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary__large--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}
.btn-secondary__medium {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 96px;
  border: 1px solid #0086e5;
  border-radius: 8px;
  color: #0086e5;
}
.btn-secondary__medium:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary__medium--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary__medium--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}
.btn-secondary__small {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  border: 1px solid #0086e5;
  border-radius: 4px;
  color: #0086e5;
}
.btn-secondary__small:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary__small--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary__small--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}

.btn-tertiary__large {
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 136px;
  color: #0086e5;
}
.btn-tertiary__large:hover {
  color: #0074d2;
  text-decoration: underline;
}
.btn-tertiary__large--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-tertiary__large--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-tertiary__medium {
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 96px;
  color: #0086e5;
}
.btn-tertiary__medium:hover {
  color: #0074d2;
  text-decoration: underline;
}
.btn-tertiary__medium--disable {
  color: #acacac;
}
.btn-tertiary__medium--disable:hover {
  color: #acacac;
  pointer-events: none;
}
.btn-tertiary__small {
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  color: #0086e5;
}
.btn-tertiary__small:hover {
  color: #0074d2;
  text-decoration: underline;
}
.btn-tertiary__small--disable {
  color: #acacac;
}
.btn-tertiary__small--disable:hover {
  color: #acacac;
  pointer-events: none;
}

.btn-primary-round__large {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 56px;
  min-width: 136px;
  border: none;
  border-radius: 100px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary-round__large:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary-round__large--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary-round__large--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary-round__large--em {
  background-color: #ff3232;
}
.btn-primary-round__large--em:hover {
  background-color: #f02532;
}
.btn-primary-round__medium {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 96px;
  border-radius: 100px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary-round__medium:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary-round__medium--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary-round__medium--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary-round__medium--em {
  background-color: #ff3232;
}
.btn-primary-round__medium--em:hover {
  background-color: #f02532;
}
.btn-primary-round__small {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  border-radius: 100px;
  background-color: #0086e5;
  color: #fff;
}
.btn-primary-round__small:hover {
  background-color: #0074d2;
  color: #fff;
}
.btn-primary-round__small--disable {
  background-color: #acacac;
  color: #fff;
}
.btn-primary-round__small--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}
.btn-primary-round__small--em {
  background-color: #ff3232;
}
.btn-primary-round__small--em:hover {
  background-color: #f02532;
}

.btn-secondary-round__large {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 136px;
  border: 1px solid #0086e5;
  border-radius: 100px;
  color: #0086e5;
}
.btn-secondary-round__large:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary-round__large--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary-round__large--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}
.btn-secondary-round__large--em {
  border: 1px solid #ff3232;
  color: #ff3232;
}
.btn-secondary-round__large--em:hover {
  border: 1px solid #f02532;
  color: #f02532;
}
.btn-secondary-round__medium {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 96px;
  border: 1px solid #0086e5;
  border-radius: 100px;
  color: #0086e5;
}
.btn-secondary-round__medium:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary-round__medium--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary-round__medium--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}
.btn-secondary-round__medium--em {
  border: 1px solid #ff3232;
  color: #ff3232;
}
.btn-secondary-round__medium--em:hover {
  border: 1px solid #f02532;
  color: #f02532;
}
.btn-secondary-round__small {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  border: 1px solid #0086e5;
  border-radius: 100px;
  color: #0086e5;
}
.btn-secondary-round__small:hover {
  border: 1px solid #0074d2;
  color: #0074d2;
}
.btn-secondary-round__small--disable {
  border: 1px solid #acacac;
  color: #acacac;
}
.btn-secondary-round__small--disable:hover {
  border: 1px solid #acacac;
  color: #acacac;
  pointer-events: none;
}
.btn-secondary-round__small--em {
  border: 1px solid #ff3232;
  color: #ff3232;
}
.btn-secondary-round__small--em:hover {
  border: 1px solid #f02532;
  color: #f02532;
}

/* 旧ボタン（_old-components.scssより移管） */
/* btn 個別のstyle 色のstyleなどはこちらに別で書く */
/* ここから下は元common.css分 2014 02 03 */
/* btn style */
.btn_light_blue,
.btn_light_green,
.btn_light_gray {
  display: block;
  width: 148px;
  height: 50px;
  border-radius: 8px;
  color: #fff;
  text-align: center;
  font-size: 131%;
  line-height: 50px;
}

.btn_light_blue:hover,
.btn_light_green:hover,
.btn_light_gray:hover {
  color: #fff;
  text-decoration: none;
}

.btn_light_blue {
  border: 1px solid #0088d0;
  background: #0088d0;
}
.btn_light_blue:hover {
  border: 1px solid #005eaa;
  background: #1a94d6;
}

.btn_light_green {
  border: 1px solid #50b464;
  background: #50b464;
}
.btn_light_green:hover {
  border: 1px solid #00921e;
  background: #5cba6e;
}

.btn_light_gray {
  border: 1px solid #ccc;
  background: #eee;
  color: #888;
}
.btn_light_gray:hover {
  border: 1px solid #aaa;
  color: #444;
}

/* リワード機能 2014 02 26 */
.btn_red_gold {
  background: #c86e16;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #c93), color-stop(100%, #c86e16));
  background: -webkit-linear-gradient(top, #c93, #c86e16);
  background: -moz-linear-gradient(top, #c93, #c86e16);
  background: -o-linear-gradient(top, #c93, #c86e16);
  background: linear-gradient(to bottom, #c93, #c86e16);
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  font-weight: bold;
}
.btn_red_gold:hover {
  background: #b45a03;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #c87c36), color-stop(100%, #b45a03));
  background: -webkit-linear-gradient(top, #c87c36, #b45a03);
  background: -moz-linear-gradient(top, #c87c36, #b45a03);
  background: -o-linear-gradient(top, #c87c36, #b45a03);
  background: linear-gradient(to bottom, #c87c36, #b45a03);
  color: #fff;
  text-decoration: none;
}

.btn_vivid_orange {
  background: #ff3c00;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ff7800), color-stop(100%, #ff3c00));
  background: -webkit-linear-gradient(top, #ff7800, #ff3c00);
  background: -moz-linear-gradient(top, #ff7800, #ff3c00);
  background: -o-linear-gradient(top, #ff7800, #ff3c00);
  background: linear-gradient(to bottom, #ff7800, #ff3c00);
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  font-weight: bold;
}
.btn_vivid_orange:hover {
  background: #eb2900;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eb6200), color-stop(100%, #eb2900));
  background: -webkit-linear-gradient(top, #eb6200, #eb2900);
  background: -moz-linear-gradient(top, #eb6200, #eb2900);
  background: -o-linear-gradient(top, #eb6200, #eb2900);
  background: linear-gradient(to bottom, #eb6200, #eb2900);
  color: #fff;
  text-decoration: none;
}

.btn_vivid_orange_off {
  background: #aaa;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ccc), color-stop(100%, #aaa));
  background: -webkit-linear-gradient(top, #ccc, #aaa);
  background: -moz-linear-gradient(top, #ccc, #aaa);
  background: -o-linear-gradient(top, #ccc, #aaa);
  background: linear-gradient(to bottom, #ccc, #aaa);
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  font-weight: bold;
}

.btn_green {
  /* Standard */
  border: 1px solid #547800;
  background: -webkit-linear-gradient(top, #aac800, #689500);
  /* Chrome 10+, Safari 5.1+ */
  background: -moz-linear-gradient(top, #aac800, #689500);
  /* 3.6+ */
  background: -ms-linear-gradient(top, #aac800, #689500);
  /* 10+ */
  background: -o-linear-gradient(top, #aac800, #689500);
  /* 11.1+ */
  background: linear-gradient(to bottom, #aac800, #689500);
  background-color: #689500;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 0 #374f00;
  font-weight: bold;
  cursor: pointer;
}
.btn_green:active {
  background: -webkit-linear-gradient(top, #689500, #aac800);
  background: -moz-linear-gradient(top, #689500, #aac800);
  background: -ms-linear-gradient(top, #689500, #aac800);
  background: -o-linear-gradient(top, #689500, #aac800);
  background: linear-gradient(to bottom, #689500, #aac800);
  background-color: #aac800;
}
.btn_green:hover {
  border: 1px solid #293a00;
  color: #fff;
  text-decoration: none;
}

.btn_orange {
  padding: 5px;
  border: 1px solid #b36c04;
  background: -webkit-linear-gradient(top, #ffd24f, #ffa800);
  background: -moz-linear-gradient(top, #ffd24f, #ffa800);
  background: -ms-linear-gradient(top, #ffd24f, #ffa800);
  background: -o-linear-gradient(top, #ffd24f, #ffa800);
  background: linear-gradient(to bottom, #ffd24f, #ffa800);
  background-color: #ffa800;
  color: #4a2c00;
  text-align: center;
  text-shadow: 0 1px 0 #ffe697;
  font-weight: bold;
}
.btn_orange:active {
  background: -webkit-linear-gradient(top, #ffa800, #ffd24f);
  background: -moz-linear-gradient(top, #ffa800, #ffd24f);
  background: -ms-linear-gradient(top, #ffa800, #ffd24f);
  background: -o-linear-gradient(top, #ffa800, #ffd24f);
  background: linear-gradient(to bottom, #ffa800, #ffd24f);
  background-color: #ffd24f;
}
.btn_orange:hover {
  border: 1px solid #663d00;
  color: #4a2c00;
  text-decoration: none;
}
.btn_orange.mini {
  color: #4b2d00;
  text-shadow: 0 1px 0 #fff;
}

.btn_gray {
  padding: 5px;
  border: 1px solid #aaa;
  background: -webkit-linear-gradient(top, #fcfcfc, #cecece);
  background: -moz-linear-gradient(top, #fcfcfc, #cecece);
  background: -ms-linear-gradient(top, #fcfcfc, #cecece);
  background: -o-linear-gradient(top, #fcfcfc, #cecece);
  background: linear-gradient(to bottom, #fcfcfc, #cecece);
  background-color: #ddd;
  color: #666;
  text-align: center;
  cursor: pointer;
}
.btn_gray:hover {
  border: 1px solid #666;
  color: #333;
  text-decoration: none;
}
.btn_gray:active {
  background: -webkit-linear-gradient(top, #cecece, #fcfcfc);
  background: -moz-linear-gradient(top, #cecece, #fcfcfc);
  background: -ms-linear-gradient(top, #cecece, #fcfcfc);
  background: -o-linear-gradient(top, #cecece, #fcfcfc);
  background: linear-gradient(to bottom, #cecece, #fcfcfc);
  background-color: #fcfcfc;
}

/* ガイドページ以外でも使われるので分離 */
.label-exclusive {
  font-size: 14px;
  box-sizing: border-box;
  padding: 3px 8px;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #fff;
  color: #ff9600;
  font-weight: normal;
}
.label-exclusive + .label-device-exclusive {
  margin-left: 8px;
}

.label-device-exclusive {
  font-size: 14px;
  box-sizing: border-box;
  padding: 3px 8px;
  border: 1px solid #666;
  border-radius: 2px;
  background-color: #fff;
  color: #666;
  font-weight: normal;
}

.label-target {
  font-size: 14px;
  box-sizing: border-box;
  padding: 3px 8px;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #fff;
  color: #ff9600;
  font-weight: normal;
}
.label-target + span {
  margin-left: 8px;
}

/* ミッションでポイントに使用しているラベル */
.label-mission-media {
  font-weight: bold;
  font-size: 14px;
  display: inline-block;
  margin-right: 16px;
  padding: 8px 20px;
  border-radius: 3px;
  background-color: #e4e4e4;
  color: #222;
  line-height: 1;
}

/**
 * ライトと共通のラベルstyle
 */
.c-label {
  font-size: 10px;
  display: inline-block;
  width: -webkit-fit-content;
  width: fit-content;
  padding: 4px 8px;
  border: 1px solid #646464;
  border-radius: 4px;
  font-weight: bold;
}
.c-label--em {
  border: none;
  background-color: #ff3232;
  color: #fff;
}
.c-label--red {
  border: 1px solid #ff3232;
  color: #ff3232;
}

.c-media {
  display: flex;
  align-items: center;
  position: relative;
  padding: 8px;
  background-color: #fff;
  color: #333;
  line-height: 1.6;
  gap: 8px;
}
.c-media__thumbnail {
  width: 92px;
}
.c-media__thumbnail > img {
  width: 100%;
  height: auto;
}
.c-media__ttl {
  font-weight: bold;
  font-size: 14px;
}
.c-media__desc {
  font-size: 12px;
  margin-top: 4px;
}
.c-media__label {
  margin-bottom: 4px;
}
.c-media__reward {
  font-weight: bold;
  font-size: 16px;
  color: #ff3232;
}
.c-media__reward > span {
  font-weight: bold;
  font-size: 20px;
  color: #ee6e72;
}
.c-media__reward > img {
  width: 32px;
  vertical-align: -3px;
}

/* reset */
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,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font: inherit;
  font-size: 100%;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

html {
  height: 100%;
}

/* stylelint-disable */
body {
  position: relative;
  top: 29px;
  height: 100%;
  color: #333;
  font: 13px/1.5 Meiryo, "MS PGothic", arial, sans-serif;
  *font: x-small;
  /* for IE */
  *font-size: small;
  line-height: 1.5;
}
body.game_body {
  top: 0;
  background: #000;
}
body.infoq {
  top: 0;
  background: transparent;
}

/* stylelint-enable */
ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}
blockquote::before, blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

.clearfix {
  width: 100%;
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.c-amazonpay-1st-buy {
  padding: 12px;
  background-color: #faf5cd;
  text-align: center;
}
.c-amazonpay-1st-buy__ttl {
  width: 100%;
  height: auto;
  margin-bottom: 16px;
}
.c-amazonpay-1st-buy__amapay {
  margin-bottom: 12px;
  padding: 8px 4px;
  border: 1px solid #bbb;
  border-radius: 2px;
  background-color: #fff;
}
.c-amazonpay-1st-buy__amapay .lead-amapay {
  font-size: 12px;
  margin-bottom: 8px;
}
.c-amazonpay-1st-buy__text-link {
  font-size: 12px;
  color: #0086e5;
}

/*
主にトップで使うステータスとボタン付きのバナー いずれcampaign.scssに移動する
*/
.c-bnr-btn-gadget {
  margin-bottom: 8px;
  padding: 8px;
  background-color: #b9ddfb;
}
.c-bnr-btn-gadget--scratch {
  background-color: #8dc9f9;
}
.c-bnr-btn-gadget--red {
  background-color: #f5979a;
}
.c-bnr-btn-gadget__head {
  overflow: hidden;
}
.c-bnr-btn-gadget__head > img {
  width: 100%;
  height: auto;
  border-radius: 8px;
}
.c-bnr-btn-gadget__l-inner {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.c-bnr-btn-gadget__foot {
  display: flex;
  align-items: center;
  min-height: 50px;
  padding-right: 12px;
  gap: 16px;
}
.c-bnr-btn-gadget__announce {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 12px;
  background-color: #fff;
  gap: 8px;
}
.c-bnr-btn-gadget__announce span {
  margin-right: 4px;
  margin-left: 4px;
  color: #d10924;
}
.c-bnr-btn-gadget__statusimg {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 8px;
  border-radius: 4px;
  background-color: #fff;
}
.c-bnr-btn-gadget__statusimg > img {
  width: 100%;
  height: auto;
}
.c-bnr-btn-gadget__btn {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 220px;
  padding: 12px;
  border: solid 2px #000;
  border-radius: 50px;
  background: linear-gradient(#5eb3f6, #0086e5);
  box-shadow: 0 2px 0 #000;
  color: #fff;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
  font-weight: bold;
  cursor: pointer;
}
.c-bnr-btn-gadget__btn > a {
  color: #fff;
}
.c-bnr-btn-gadget__btn > button {
  font-weight: bold;
  font-size: 16px;
  padding: 0;
  outline: none;
  border: none;
  background-color: transparent;
  color: #fff;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
  cursor: pointer;
  -webkit-appearance: none;
          appearance: none;
}
.c-bnr-btn-gadget__btn:hover {
  position: relative;
  top: 2px;
  box-shadow: none;
  color: #fff;
  transition: 0.1s;
}

/** 新ログインボーナス LP 202006~
 * 注意！！
 * コード簡素化のため、loginbonus を lb と略しています！！
 */
/* 限定的変数 */
/* mixin */
.c-lb202006 {
  position: relative;
  margin-bottom: 28px;
  padding: 48px 0 20px;
  background-color: #ffffe6;
}

.c-lb202006-header {
  position: relative;
  margin-bottom: 48px;
  text-align: center;
}
.c-lb202006-header__title {
  font-weight: bold;
  font-size: 36px;
  margin-bottom: 32px;
  color: #222;
}
.c-lb202006-header__lead {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 48px;
  color: #222;
  line-height: 24px;
}
.c-lb202006-header__badge {
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  top: -28px;
  right: 20px;
  width: 140px;
  height: 140px;
  border-radius: 70px;
  background-color: #ffe17d;
  color: #222;
  line-height: 22px;
}
.c-lb202006-header__badge p {
  margin-top: 48px;
}

.c-lb202006-reward {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 48px;
  text-align: center;
}
.c-lb202006-reward__balloon {
  font-weight: bold;
  font-size: 16px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: 560px;
  margin-bottom: 20px;
  padding: 20px 0;
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
}
.c-lb202006-reward__balloon::after {
  position: absolute;
  top: 96%;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -10px;
  border: solid transparent;
  border-width: 10px;
  border-color: rgba(255, 90, 95, 0);
  border-top-color: #ff5a5f;
  content: "";
  pointer-events: none;
}
.c-lb202006-reward .btn-reward-important {
  font-weight: bold;
  font-size: 16px;
  width: 360px;
  height: 56px;
  border: 0;
  border-radius: 2px;
  text-align: center;
  line-height: 56px;
  margin-right: auto;
  margin-bottom: 20px;
  margin-left: auto;
  background-color: #ff9600;
  color: #fff;
}
.c-lb202006-reward .btn-reward-important:hover {
  opacity: 0.8;
}
.c-lb202006-reward .btn-reward-disabled {
  font-weight: bold;
  font-size: 16px;
  width: 360px;
  height: 56px;
  border: 0;
  border-radius: 2px;
  text-align: center;
  line-height: 56px;
  margin-right: auto;
  margin-left: auto;
  background-color: #ccc;
  color: #333;
}
.c-lb202006-reward__alert {
  margin-right: auto;
  margin-left: auto;
  width: 440px;
  -webkit-animation: fade-in 5s ease 0s 1 forwards;
          animation: fade-in 5s ease 0s 1 forwards;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.c-lb202006-ad {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: 400px;
  height: 400px;
  border-radius: 2px;
  background-color: #000;
  text-align: center;
}
.c-lb202006-ad__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-lb202006-ad__content-element {
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.c-lb202006-ad__container {
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-lb202006-ad__container > div {
  width: 400px;
  height: 400px;
}
.c-lb202006-ad__container-ad {
  z-index: 99999;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-lb202006-ad__loading {
  display: flex;
  align-items: center;
  height: 100%;
  color: #fff;
}
.c-lb202006-ad__loading p {
  font-weight: bold;
  font-size: 16px;
  position: absolute;
  right: 20px;
  bottom: 20px;
  color: #ccc;
}
.c-lb202006-ad__loading span {
  display: inline-block;
  position: relative;
  bottom: 0;
  padding: 2px 1px;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-animation: loadingAni 2s ease-out infinite;
          animation: loadingAni 2s ease-out infinite;
}
.c-lb202006-ad__loading span:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.c-lb202006-ad__loading span:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.c-lb202006-ad__loading span:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.c-lb202006-ad__forward {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.c-lb202006-ad__forward p {
  font-size: 14px;
  color: #999;
  line-height: 18px;
}

@-webkit-keyframes loadingAni {
  0% {
    bottom: 0;
  }
  15% {
    bottom: 0;
  }
  30% {
    bottom: 7px;
  }
  45% {
    bottom: 0;
  }
}

@keyframes loadingAni {
  0% {
    bottom: 0;
  }
  15% {
    bottom: 0;
  }
  30% {
    bottom: 7px;
  }
  45% {
    bottom: 0;
  }
}
.c-lb202006-counter {
  font-weight: bold;
  font-size: 16px;
  margin-right: auto;
  margin-left: auto;
  display: table;
  width: 400px;
  padding: 24px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: 0 1px 4px 0 rgba(51, 51, 51, 0.3);
  color: #222;
}
.c-lb202006-counter__title {
  display: table-cell;
  position: relative;
  vertical-align: middle;
  text-align: left;
}
.c-lb202006-counter__count {
  display: table-cell;
  vertical-align: middle;
  text-align: right;
}
.c-lb202006-counter__count > strong {
  font-weight: bold;
  font-size: 36px;
  margin-right: 4px;
}

.c-lb202006-content {
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 48px;
}
.c-lb202006-content__title {
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 32px;
  color: #222;
  text-align: center;
}

.c-lb202006-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-lb202006-list > li {
  position: relative;
  width: 400px;
  margin-bottom: 8px;
  border: 1px solid #ccc;
  border-radius: 2px;
}
.c-lb202006-list > li:not(:nth-child(2n)) {
  margin-right: 8px;
}
.c-lb202006-list__item-cover::before {
  z-index: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.5);
  content: "";
}

.c-lb202006-media {
  display: table;
  width: 100%;
  padding: 8px;
  border-radius: 2px;
  background-color: #fff;
  table-layout: fixed;
}
.c-lb202006-media__thumb {
  display: table-cell;
  width: 90px;
  height: 90px;
  border-radius: 2px;
  background-color: #ddd;
  vertical-align: middle;
  text-align: center;
}
.c-lb202006-media__thumb-text {
  font-weight: bold;
  font-size: 16px;
  color: #222;
  line-height: 22px;
}
.c-lb202006-media__thumb-text-highlight {
  font-weight: bold;
  font-size: 20px;
}
.c-lb202006-media__content {
  display: table-cell;
  padding-left: 16px;
  vertical-align: middle;
}
.c-lb202006-media__present-item {
  font-weight: bold;
  font-size: 16px;
  margin-top: 8px;
  color: #ff5a5f;
}
.c-lb202006-media__present-item .icon-egg {
  display: inline-block;
  width: 22px;
  margin-right: 6px;
}
.c-lb202006-media__present-item img {
  position: relative;
  top: -4px;
  width: 100%;
}
.c-lb202006-media__present-item-highlight {
  font-weight: bold;
  font-size: 24px;
  margin-right: 2px;
}
.c-lb202006-media__stamp-get, .c-lb202006-media__stamp-none {
  z-index: 2;
  position: absolute;
  top: 8px;
  right: 8px;
  width: 70px;
}
.c-lb202006-media__stamp-get > img, .c-lb202006-media__stamp-none > img {
  width: 100%;
}
.c-lb202006-media__progress {
  position: relative;
  padding-top: 24px;
}
.c-lb202006-media__progress > progress {
  width: 100%;
  height: 4px;
  background-color: #eee;
}
.c-lb202006-media__progress > progress[value] {
  border-radius: 2px;
}
.c-lb202006-media__progress > progress[value]::-webkit-progress-bar {
  border-radius: 2px;
  background-color: #eee;
}
.c-lb202006-media__progress > progress[value]::-webkit-progress-value {
  border-radius: 2px;
  background-color: #999;
}
.c-lb202006-media__progress-text {
  font-weight: bold;
  font-size: 14px;
  position: absolute;
  bottom: 12px;
  color: #222;
}

.c-lb202006-history {
  margin-right: auto;
  margin-left: auto;
  width: 400px;
}
.c-lb202006-history__inner {
  overflow-y: scroll;
  max-height: 280px;
  padding: 0 16px;
  border: 1px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
}
.c-lb202006-history table {
  width: 100%;
  border-collapse: collapse;
  color: #222;
  text-align: center;
}
.c-lb202006-history table tr {
  font-size: 14px;
}
.c-lb202006-history table tr:not(:last-child) {
  border-bottom: 1px solid #ccc;
}
.c-lb202006-history table th,
.c-lb202006-history table td {
  width: 50%;
  padding: 16px 0;
}
.c-lb202006-history table td:last-child {
  font-weight: bold;
}
.c-lb202006-history table th {
  position: sticky;
  top: 0;
  border-bottom: 1px solid #ccc;
  background-color: rgba(255, 255, 255, 0.9);
  font-weight: bold;
}

/* ログインボーナス LP 注意事項 新旧共通 */
.c-lb-notes {
  margin-right: auto;
  margin-left: auto;
  width: 670px;
  border: 2px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
}
.c-lb-notes header {
  font-weight: bold;
  font-size: 16px;
  padding: 14px 0;
  border-radius: 2px 2px 0 0;
  background-color: #ccc;
  color: #444;
  text-align: center;
}
.c-lb-notes ul {
  padding: 32px;
}
.c-lb-notes li {
  font-size: 14px;
  margin-bottom: 6px;
  color: #444;
  line-height: 18px;
}
.c-lb-notes li a {
  color: #0086e5;
}

.c-lb202006-login {
  z-index: 1000000;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.6);
}
.c-lb202006-login__lead {
  font-weight: bold;
  font-size: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  color: #fff;
  text-align: center;
  line-height: 28px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-lb202006-login__lead > a {
  color: inherit;
  text-decoration: underline;
}
.c-lb202006-login__lead > a:hover {
  text-decoration: none;
}

/* ログインボーナス コーナー表示用 202006~ */
.c-lb-container {
  display: table;
  width: 100%;
  padding: 8px;
  border: 2px solid #666;
  background-color: #fff;
}
.c-lb-container__title {
  font-weight: bold;
  font-size: 12px;
  display: table-cell;
  vertical-align: middle;
}
.c-lb-container__counter {
  font-weight: bold;
  font-size: 14px;
  display: table-cell;
  margin-right: 2px;
  text-align: right;
}
.c-lb-container__counter em {
  font-weight: bold;
  font-size: 16px;
}

/* ログインボーナス モーダル 202006~ */
.c-lb202006-modal {
  z-index: 2147483100;
  display: block;
  position: fixed;
  right: 20px;
  bottom: 170px;
  width: 320px;
  height: 400px;
  border-radius: 2px;
  box-shadow: 0 1px 12px rgba(51, 51, 51, 0.6);
  font-family: "Noto Sans JP", sans-serif;
}
.c-lb202006-modal__close {
  font-weight: bold;
  font-size: 24px;
  position: absolute;
  top: -45px;
  right: 0;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 1px 12px rgba(51, 51, 51, 0.6);
  color: #333;
  text-align: center;
  line-height: 38px;
}
.c-lb202006-modal__close:hover {
  color: #333;
  opacity: 0.8;
}
.c-lb202006-modal__inner {
  overflow: hidden;
  box-sizing: border-box;
  height: 400px;
  padding: 16px;
  border-radius: 2px;
  background-color: #ffffe6;
  color: #222;
}
.c-lb202006-modal__header {
  margin-bottom: 10px;
  text-align: center;
}
.c-lb202006-modal__header h1 {
  font-weight: bold;
  font-size: 20px;
  position: relative;
  padding-bottom: 4px;
}
.c-lb202006-modal__header span {
  font-weight: bold;
  font-size: 14px;
  position: relative;
  top: -2px;
  margin-right: 4px;
  padding: 2px 6px;
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
}
.c-lb202006-modal__header-lead {
  font-weight: bold;
  font-size: 12px;
  color: #555;
}
.c-lb202006-modal__content {
  margin-bottom: 8px;
}
.c-lb202006-modal__action {
  text-align: center;
}
.c-lb202006-modal__action-btn {
  font-weight: bold;
  font-size: 14px;
  box-sizing: border-box;
  width: 100%;
  height: 46px;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
  line-height: 46px;
}
.c-lb202006-modal__action-btn:hover {
  opacity: 0.8;
}
.c-lb202006-modal .c-modal-counter {
  font-weight: bold;
  font-size: 14px;
  display: table;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 16px;
  padding: 4px 16px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: 0 1px 4px 0 rgba(51, 51, 51, 0.3);
  color: #222;
}
.c-lb202006-modal .c-modal-counter__title {
  display: table-cell;
  vertical-align: middle;
}
.c-lb202006-modal .c-modal-counter__count {
  display: table-cell;
  vertical-align: middle;
  text-align: right;
}
.c-lb202006-modal .c-modal-counter__count > strong {
  font-weight: bold;
  font-size: 24px;
  margin-right: 2px;
}
.c-lb202006-modal .c-modal-list {
  overflow-y: scroll;
  max-height: 216px;
  padding-right: 8px;
  font-size: 0;
}
.c-lb202006-modal .c-modal-list::-webkit-scrollbar {
  width: 8px;
}
.c-lb202006-modal .c-modal-list::-webkit-scrollbar-track {
  border-radius: 4px;
  background-color: #eee;
}
.c-lb202006-modal .c-modal-list::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: #999;
}
.c-lb202006-modal .c-modal-list > li {
  display: inline-block;
  position: relative;
  width: calc((99.9999% - 16px) / 3);
  margin-bottom: 8px;
}
.c-lb202006-modal .c-modal-list > li:not(:nth-child(3n)) {
  margin-right: 8px;
}
.c-lb202006-modal .c-modal-list > li:nth-child(3n+1):nth-last-child(-n+3), .c-lb202006-modal .c-modal-list > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
  margin-bottom: 0;
}
.c-lb202006-modal .c-modal-list > li:last-child .c-modal-media {
  border: 2px solid #ff5a5f;
}
.c-lb202006-modal .c-modal-list > li:last-child .c-modal-media__terms {
  background-color: #ff5a5f;
}
.c-lb202006-modal .c-modal-list > li:last-child .c-modal-media__terms-text {
  color: #fff;
}
.c-lb202006-modal .c-modal-list__item-cover::before {
  z-index: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.5);
  content: "";
}
.c-lb202006-modal .c-modal-media {
  box-sizing: border-box;
  width: 100%;
  border: 2px solid #ccc;
  border-radius: 2px;
  background-color: #fff;
  text-align: center;
}
.c-lb202006-modal .c-modal-media__terms {
  border-radius: 1px 0 0 1px;
  background-color: #ccc;
  vertical-align: middle;
  text-align: center;
}
.c-lb202006-modal .c-modal-media__terms-text {
  font-weight: bold;
  font-size: 14px;
  color: #333;
}
.c-lb202006-modal .c-modal-media__terms-text-highlight {
  font-weight: bold;
  font-size: 20px;
  margin-right: 2px;
}
.c-lb202006-modal .c-modal-media__content {
  padding: 6px 0;
  vertical-align: middle;
}
.c-lb202006-modal .c-modal-media__present-item {
  font-weight: bold;
  font-size: 14px;
  position: relative;
  color: #ff5a5f;
  line-height: 14px;
}
.c-lb202006-modal .c-modal-media__present-item span {
  display: inline-block;
  position: relative;
  top: -4px;
  width: 16px;
  margin: 0 4px 4px 0;
}
.c-lb202006-modal .c-modal-media__present-item img {
  width: 100%;
}
.c-lb202006-modal .c-modal-media__present-item-highlight {
  font-weight: bold;
  font-size: 32px;
  line-height: 32px;
}
.c-lb202006-modal .c-modal-media__stamp-get {
  z-index: 2;
  position: absolute;
  bottom: -27px;
  left: 50%;
  width: 61px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-lb202006-modal .c-modal-media__stamp-get img {
  width: 100%;
}

/* カード型とそれに関連するリストなど */
.c-card-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.c-card-list > li {
  box-shadow: 0 0 4px #d1d1d1;
  width: calc((100% - 40px) / 5);
  margin-bottom: 8px;
  padding: 12px;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
}
.c-card-list > li > a {
  display: block;
  height: 100%;
}
.c-card-list--col4 > li {
  width: calc((100% - 24px) / 4);
}

.c-card {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 12px;
  color: #222;
  line-height: 1.4;
}
.c-card__ttl {
  font-weight: bold;
  font-size: 14px;
  margin-top: 8px;
  color: #333;
}
.c-card__label {
  margin-top: 8px;
}
.c-card__thumbnail > img {
  width: 100%;
  height: auto;
}

/* ===以下キャンペーンバナーリスト用=== */
.c-campaign-bnr-list {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.c-campaign-bnr-list > li {
  box-shadow: 0 0 4px #d1d1d1;
  position: relative;
  padding: 12px;
  border-radius: 4px;
  background-color: #fff;
}
.c-campaign-bnr-list > li > a {
  display: block;
  height: 100%;
}
.c-campaign-bnr-list__badge {
  font-weight: bold;
  font-size: 14px;
  position: absolute;
  top: 0;
  left: 0;
  padding: 4px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  color: #fff;
}
.c-campaign-bnr-list__badge--new {
  background-color: #f07a23;
}
.c-campaign-bnr-list__badge--end {
  background-color: #ff3232;
}
.c-campaign-bnr-list[data-campaign-count=over] {
  flex-wrap: nowrap;
  overflow-x: auto;
  gap: 8px;
  scroll-behavior: smooth;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.c-campaign-bnr-list[data-campaign-count=over]::-webkit-scrollbar {
  display: none;
}
.c-campaign-bnr-list[data-campaign-count=over] > li {
  display: block;
  flex: 0 0 calc((100% - 24px) / 4);
  flex-shrink: 0;
  scroll-snap-align: start; /* 要素の先頭でスナップ */
}
.c-campaign-bnr-list[data-campaign-count=over] .c-campaign-bnr-card {
  flex-direction: column;
}
.c-campaign-bnr-list[data-campaign-count="4"] > li {
  flex: 0 0 calc((100% - 24px) / 4);
}
.c-campaign-bnr-list[data-campaign-count="4"] > li .c-campaign-bnr-card {
  flex-direction: column;
}
.c-campaign-bnr-list[data-campaign-count="3"] > li {
  flex: 0 0 calc((100% - 16px) / 3);
}
.c-campaign-bnr-list[data-campaign-count="3"] > li .c-campaign-bnr-card {
  flex-direction: column;
}
.c-campaign-bnr-list[data-campaign-count="2"] > li {
  flex: 0 0 calc((100% - 8px) / 2);
}
.c-campaign-bnr-list[data-campaign-count="2"] > li .c-campaign-bnr-card {
  flex-direction: row;
}
.c-campaign-bnr-list[data-campaign-count="2"] > li .c-campaign-bnr-card__l-desc {
  width: 50%;
}
.c-campaign-bnr-list[data-campaign-count="1"] > li {
  flex: 0 0 100%;
}
.c-campaign-bnr-list[data-campaign-count="1"] > li .c-campaign-bnr-card {
  flex-direction: row;
}
.c-campaign-bnr-list[data-campaign-count="1"] > li .c-campaign-bnr-card__l-desc {
  width: 50%;
}

.c-campaign-bnr-scroll {
  position: relative;
}
.c-campaign-bnr-scroll__btn {
  box-shadow: 0 0 4px #d1d1d1;
  z-index: 1;
  position: absolute;
  top: 70px;
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 30px;
  background-color: #fff;
}
.c-campaign-bnr-scroll__btn--left {
  left: -10px;
}
.c-campaign-bnr-scroll__btn--left::before {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  top: 43%;
  left: 38%;
  width: 12px;
  height: 12px;
  border: 2px solid currentColor;
  border-top: 0;
  border-left: 0;
  border-radius: 2px;
  color: #00b4d8;
  content: "";
  vertical-align: middle;
  line-height: 1;
  -webkit-transform: translateY(-25%) rotate(135deg);
          transform: translateY(-25%) rotate(135deg);
}
.c-campaign-bnr-scroll__btn--right {
  right: -10px;
}
.c-campaign-bnr-scroll__btn--right::before {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  top: 43%;
  right: 38%;
  width: 12px;
  height: 12px;
  border: 2px solid currentColor;
  border-right: 0;
  border-bottom: 0;
  border-radius: 2px;
  color: #00b4d8;
  content: "";
  vertical-align: middle;
  line-height: 1;
  -webkit-transform: translateY(-25%) rotate(135deg);
          transform: translateY(-25%) rotate(135deg);
}

.c-campaign-bnr-card {
  display: flex;
  align-items: center;
  gap: 12px;
}
.c-campaign-bnr-card__thumbnail > img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 140px;
}
.c-campaign-bnr-card__label > span {
  font-size: 12px;
  padding-right: 2px;
  padding-left: 2px;
  border: solid 1px #00b4d8;
  border-radius: 2px;
  color: #00b4d8;
}
.c-campaign-bnr-card__ttl {
  font-weight: bold;
  font-size: 14px;
  display: -webkit-box;
  overflow: hidden;
  color: #333;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.c-campaign-bnr-card__note {
  font-size: 12px;
  color: #646464;
}
.c-campaign-bnr-card__l-desc {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
}

.c-carousel-wrapper {
  position: relative;
}

.c-carousel {
  z-index: 0;
  overflow: hidden;
  position: relative;
  max-height: 250px;
  margin-bottom: 8px;
}
.c-carousel__slider img {
  width: 100%;
  height: auto;
}
.c-carousel__item {
  margin-right: 4px;
}
.c-carousel__dots {
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 8px;
  width: 100%;
  height: 4px;
}
.c-carousel__dots li {
  padding: 0 3px;
}
.c-carousel__dots button {
  width: 16px;
  height: 4px;
  border: 0;
  border-radius: 1px;
  background-color: #fff;
  text-indent: -9999px;
}
.c-carousel__dots button[aria-selected=true] {
  background-color: #ff5a5f;
}

.c-carousel-control {
  display: flex;
  justify-content: space-between;
  position: absolute;
  right: 8px;
  bottom: 8px;
  width: 56px;
}
.c-carousel-control button {
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: none;
          appearance: none;
}
.c-carousel-control img {
  width: 24px;
  height: auto;
}

/* ジャンルをみる のレイアウト */
.c-category-media:hover {
  opacity: 0.7;
}
.c-category-media {
  position: relative;
  display: flex;
}
.c-category-media__l-thumb {
  flex: 1;
  width: 24px;
}
.c-category-media__l-thumb > img {
  display: block;
  width: 100%;
}
.c-category-media__l-content {
  width: calc(100% - 24px);
  padding: 0 0 0 8px;
}
.c-category-media__title {
  word-break: break-all;
}
.c-category-media {
  padding: 12px;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
}
.c-category-media__l-content {
  display: flex;
  align-items: center;
}
.c-category-media__title {
  font-size: 14px;
  line-height: 1.2;
}
.c-category-media__title > a {
  color: #222;
}
.c-category-media__l-thumb > img {
  height: auto;
}

.c-coupon-list {
  position: relative;
  padding-bottom: 12px;
}
.c-coupon-list .c-coupon-list__trigger {
  display: none;
}
.c-coupon-list__item + .c-coupon-list__item {
  margin-top: 4px;
}
.c-coupon-list__item:nth-of-type(n + 4) {
  visibility: hidden;
  height: 0;
  margin: 0;
  opacity: 0;
  transition: 0.5s;
}
.c-coupon-list__trigger:checked ~ .c-coupon-list__item:nth-of-type(n + 4) {
  visibility: visible;
  height: auto;
  margin: 8px 0;
  opacity: 1;
}
.c-coupon-list__more::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-coupon-list__more {
  display: none;
  margin-top: 8px;
  color: #0086e5;
  text-align: center;
  cursor: pointer;
}
.c-coupon-list__more.active {
  display: block;
}
.c-coupon-list__more::before {
  margin-right: 4px;
  content: "クーポンを全て表示させる";
  vertical-align: sub;
}
.c-coupon-list__more--toggle::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.c-coupon-list__more--toggle::before {
  content: "非表示にする";
  vertical-align: bottom;
}

/* クーポン本体のコンポーネント */
.c-coupon {
  border-radius: 2px;
  background-color: #faf5cd;
  color: #222;
}
.c-coupon > a:hover {
  opacity: 0.7;
}
.c-coupon > a {
  display: block;
  color: inherit;
}
.c-coupon__l-header {
  position: relative;
}
.c-coupon__l-header::before, .c-coupon__l-header::after {
  display: block;
  position: absolute;
  bottom: -2px;
  width: 6px;
  height: 6px;
  border-radius: 50px;
  background-color: #fff;
  content: "";
}
.c-coupon__l-header::before {
  left: -3px;
}
.c-coupon__l-header::after {
  right: -3px;
}
.c-coupon__header-title {
  font-weight: bold;
  font-size: 14px;
  margin: 0 6px;
  padding: 8px 0;
  border-bottom: 2px dashed #fff;
  text-align: center;
}
.c-coupon__l-body {
  display: flex;
  justify-content: space-between;
  padding: 8px;
}
.c-coupon__credit {
  font-size: 14px;
  line-height: 1.2;
}
.c-coupon__credit-coin::before {
  display: inline-block;
  position: relative;
  top: 2px;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/gesocoin-20.png?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: sub;
}
.c-coupon__credit-coin::after {
  display: inline-block;
  margin: 0 4px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #222;
  content: "";
}
.c-coupon__date {
  width: 72px;
  padding: 2px 0;
  border-radius: 2px;
  background-color: #fff;
  vertical-align: sub;
  text-align: center;
}

/* 1〜299 までは昔のレイアウトで使用しているので、300を基準として足し算していく */
/* モーダルのデフォルト */
/* PC 新しいmodalのレイアウト */
body:not(#mediaOverwrite) #cboxOverlay {
  z-index: 300;
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

.gmoGroupHeader {
  z-index: 299;
}

/* フォーカス時のアウトラインを消す colorboxの優先度を上げる */
body:not(#mediaOverwrite) #colorbox {
  z-index: 301;
  outline: none;
}

body:not(#mediaOverwrite) #cboxWrapper {
  overflow: auto;
}

/**
 * colorboxのカスタマイズ
 */
.c-dialog-container {
  z-index: 301;
}
.c-dialog-container #cboxContent,
.c-dialog-container #cboxLoadedContent,
.c-dialog-container #cboxLoadingOverlay {
  background-color: transparent;
}
.c-dialog-container #cboxLoadedContent {
  border-radius: 10px;
}
.c-dialog-container--close-top #cboxWrapper {
  overflow: auto;
}
.c-dialog-container--close-top #cboxContent {
  overflow: auto;
  margin-top: 37px;
}
.c-dialog-container--close-top #cboxClose {
  top: -10px;
}

/* 共通に使えるようなモーダル */
.c-dialog-basic {
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  border-radius: 5px;
  background-color: #fff;
  min-height: 312px;
  padding: 10px 20px 20px;
}

/* ゲームレコメンドのモーダル */
.c-dialog-game-recommend {
  overflow: hidden;
  box-sizing: border-box;
  width: 540px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 312px;
  padding: 10px 20px 20px;
}
.c-dialog-game-recommend__content {
  width: 230px;
}
.c-dialog-game-recommend__wrap {
  display: flex;
  min-height: 250px;
}
.c-dialog-game-recommend__title {
  font-weight: bold;
  font-size: 14px;
  box-sizing: border-box;
  width: 100%;
  margin: 10px auto 20px;
  padding: 10px;
  background-color: #ffc800;
  color: #fff;
  text-align: center;
  -webkit-animation: pyon 3s infinite;
          animation: pyon 3s infinite;
}
.c-dialog-game-recommend__img-wrap {
  margin: 0 auto;
}
.c-dialog-game-recommend__img-wrap img {
  width: 100%;
  height: auto;
}
.c-dialog-game-recommend__game-title {
  font-weight: bold;
  font-size: 14px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-height: 42px;
  margin-bottom: 10px;
  color: #333;
}
.c-dialog-game-recommend__desc {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  max-height: 114px;
  color: #333;
}
.c-dialog-game-recommend__action {
  position: absolute;
  bottom: 20px;
  background-color: #fff;
  text-align: center;
}
.c-dialog-game-recommend__btn {
  font-size: 18px;
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 10px 15px;
  border-radius: 4px;
  background-color: #ff821e;
  color: #fff;
  text-align: center;
}

@-webkit-keyframes pyon {
  20% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  25% {
    -webkit-transform: translate(0, -6px);
            transform: translate(0, -6px);
  }
  30% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  35% {
    -webkit-transform: translate(0, -3px);
            transform: translate(0, -3px);
  }
  40% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes pyon {
  20% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  25% {
    -webkit-transform: translate(0, -6px);
            transform: translate(0, -6px);
  }
  30% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  35% {
    -webkit-transform: translate(0, -3px);
            transform: translate(0, -3px);
  }
  40% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/* ゲソ10市のモーダル */
.c-dialog-gesoichi {
  z-index: 2147483300;
  background-color: #fff;
}
.c-dialog-gesoichi__thumb {
  width: 544px;
  min-height: 466px;
}
.c-dialog-gesoichi__btn-payment {
  height: 40px;
  background-color: #fff;
  text-align: center;
  line-height: 40px;
  padding: 20px 10px 10px;
}
.c-dialog-gesoichi__btn-payment span {
  font-size: 18px;
  padding: 10px 48px;
  border-radius: 4px;
  background-color: #ff821e;
  color: #fff;
  text-align: center;
}
.c-dialog-gesoichi__close {
  font-size: 20px;
  position: absolute;
  top: 0;
  right: 0;
  padding: 3px 8px;
  background-color: #fff;
  color: #000;
}

/* 掲示板のトピック作成のモーダル */
.c-dialog-topic {
  z-index: 301;
  box-sizing: border-box;
  position: relative;
  padding: 20px;
  border-radius: 5px;
  background-color: #fff;
}
.c-dialog-topic__wrap {
  margin: auto;
  text-align: center;
}
.c-dialog-topic--make-topic {
  width: 654px;
  min-height: 390px;
}
.c-dialog-topic--report {
  width: 700px;
  min-height: 274px;
}
.c-dialog-topic--report .c-dialog-topic__wrap {
  width: 500px;
}

/* 友達申請のモーダル */
.c-dialog-friend-application {
  overflow: hidden;
  box-sizing: border-box;
  width: 470px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 200px;
  padding: 10px 20px 20px;
}

/* 目安箱のモーダル */
.c-dialog-meyasu {
  overflow: hidden;
  box-sizing: border-box;
  width: 760px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 420px;
  padding: 20px;
}
.c-dialog-meyasu input {
  cursor: pointer;
}

/* モーダルの作りによっては c-dialog-containerが使えないので closeボタンだけ分離させる */
#cboxClose {
  z-index: 301;
  position: absolute;
  top: -50px;
  right: 0;
  width: 38px;
  height: 38px;
  border: none;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 1px 12px rgba(51, 51, 51, 0.6);
  text-align: center;
  font-size: 0;
  line-height: 47px;
  cursor: pointer;
}
#cboxClose:hover {
  color: #333;
}
#cboxClose::before, #cboxClose::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
#cboxClose::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#cboxClose::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/**
 * リニューアル時に作られたモーダルレイアウト
 * ここから
 */
/* モーダルが閉じるスピード */
.c-modal-overlay {
  z-index: 10;
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: all 0.25s;
}
body[data-modal-overlay=open] .c-modal-overlay {
  visibility: visible;
  opacity: 1;
}

.c-modal-model {
  z-index: 20;
  position: absolute;
  background-color: #fff;
}

/* 貯まるゲームページ エッグモーダル */
.c-dialog-howto-egg {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal=egg-dialog] .c-dialog-howto-egg {
  visibility: visible;
  opacity: 1;
}
.c-dialog-howto-egg__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-howto-egg__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-howto-egg__close-btn::before, .c-dialog-howto-egg__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-howto-egg__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-howto-egg__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* 貯まるゲームページ ポイントタウンポイントとは？モーダル */
.c-dialog-howto-pt {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal=pt-dialog] .c-dialog-howto-pt {
  visibility: visible;
  opacity: 1;
}
.c-dialog-howto-pt__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-howto-pt__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-howto-pt__close-btn::before, .c-dialog-howto-pt__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-howto-pt__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-howto-pt__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* ゲームページ ミッションでポイントとは？モーダル */
.c-dialog-howto-mission-pt {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal=mission-pt-dialog] .c-dialog-howto-mission-pt {
  visibility: visible;
  opacity: 1;
}
.c-dialog-howto-mission-pt__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-howto-mission-pt__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-howto-mission-pt__close-btn::before, .c-dialog-howto-mission-pt__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-howto-mission-pt__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-howto-mission-pt__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* マイページ、トップ ミッションでポイントとは？モーダル */
.c-dialog-howto-3step {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal="3step-dialog"] .c-dialog-howto-3step {
  visibility: visible;
  opacity: 1;
}
.c-dialog-howto-3step__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-howto-3step__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-howto-3step__close-btn::before, .c-dialog-howto-3step__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-howto-3step__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-howto-3step__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-dialog-howto-3step {
  width: 712px;
  min-height: 320px;
  padding: 0 0 32px;
}
.c-dialog-howto-3step__title {
  font-weight: bold;
  font-size: 20px;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 20px;
  padding: 16px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}

/* ミッションでポイントとは？ flowモーダル */
.c-dialog-howto-3step-flow {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal="3step-flow-dialog"] .c-dialog-howto-3step-flow {
  visibility: visible;
  opacity: 1;
}
.c-dialog-howto-3step-flow__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-howto-3step-flow__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-howto-3step-flow__close-btn::before, .c-dialog-howto-3step-flow__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-howto-3step-flow__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-howto-3step-flow__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-dialog-howto-3step-flow {
  width: 712px;
  min-height: 320px;
  padding: 0 0 32px;
}
.c-dialog-howto-3step-flow__title {
  font-weight: bold;
  font-size: 20px;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 20px;
  padding: 16px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}
.c-dialog-howto-3step-flow__text {
  font-size: 16px;
  padding: 0 20px 24px;
  line-height: 1.6;
}
.c-dialog-howto-3step-flow__img {
  padding: 0 20px;
}
.c-dialog-howto-3step-flow__img img {
  width: 100%;
  height: auto;
}

/**
 * リニューアル時に作られたモーダルレイアウト
 * ここまで
 */
/**
 * フローティングバナー
 */
.c-dialog-floating {
  display: none;
  position: fixed;
  right: -270px;
  bottom: 170px;
  width: 250px;
  height: 250px;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.3);
}
.c-dialog-floating--active {
  -webkit-animation: SlideLeftPc 2s 0s linear 1 forwards;
          animation: SlideLeftPc 2s 0s linear 1 forwards;
}
.c-dialog-floating__wrap {
  position: relative;
}
.c-dialog-floating__wrap img {
  width: 100%;
  height: auto;
}
.c-dialog-floating__close {
  position: absolute;
  top: -44px;
  right: 0;
  width: 40px;
  height: 40px;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}
.c-dialog-floating__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.3);
  cursor: pointer;
}
.c-dialog-floating__close-btn::before, .c-dialog-floating__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-floating__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-floating__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-dialog-floating:hover {
  opacity: 0.7;
}

@-webkit-keyframes SlideLeftPc {
  0%, 75% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  85% {
    -webkit-transform: translateX(-320px);
            transform: translateX(-320px);
  }
  100% {
    -webkit-transform: translateX(-290px);
            transform: translateX(-290px);
  }
}

@keyframes SlideLeftPc {
  0%, 75% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  85% {
    -webkit-transform: translateX(-320px);
            transform: translateX(-320px);
  }
  100% {
    -webkit-transform: translateX(-290px);
            transform: translateX(-290px);
  }
}
/* anniversary-camp　ダブルジャンボ感謝祭のモーダル */
.c-dialog-double-jumbo {
  overflow: hidden;
  box-sizing: border-box;
  width: 540px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 372px;
  padding: 16px 16px 24px;
  text-align: center;
}
.c-dialog-double-jumbo__img {
  padding-bottom: 12px;
}
.c-dialog-double-jumbo__img img {
  width: 100%;
  height: auto;
}
.c-dialog-double-jumbo dt {
  font-weight: bold;
  font-size: 24px;
  padding-bottom: 4px;
}
.c-dialog-double-jumbo dd {
  font-weight: bold;
  font-size: 14px;
  padding-bottom: 32px;
}
.c-dialog-double-jumbo dd span {
  color: #f00;
}
.c-dialog-double-jumbo__btn {
  margin-right: auto;
  margin-left: auto;
  font-weight: bold;
  font-size: 16px;
  display: inline-block;
  width: 52%;
  height: 52px;
  border: 1px solid #fff;
  border-radius: 26px;
  background-color: #28a8e4;
  box-shadow: 0 2px 12px 2px rgba(0, 0, 0, 0.2);
  color: #fff;
  line-height: 52px;
}
.c-dialog-double-jumbo__btn:hover {
  background-color: #188bc1;
}

/* modal-freecoin-pc freecoin サプライズプレゼントのモーダル */
.c-dialog-freecoin {
  overflow: hidden;
  box-sizing: border-box;
  width: 540px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 160px;
  padding: 16px 16px 24px;
  text-align: center;
}
.c-dialog-freecoin--receive {
  z-index: 10;
  position: fixed;
  height: 160px;
  margin: auto;
  background-color: #fff;
  box-shadow: 0 0 40px 4px rgba(0, 0, 0, 0.2);
  inset: 0;
}
.c-dialog-freecoin__img {
  padding-bottom: 12px;
}
.c-dialog-freecoin__img img {
  width: 100%;
  height: auto;
}
.c-dialog-freecoin__txt {
  font-weight: bold;
  font-size: 24px;
  padding-bottom: 32px;
}
.c-dialog-freecoin__action button {
  margin-right: auto;
  margin-left: auto;
  font-weight: bold;
  font-size: 16px;
  display: inline-block;
  width: 52%;
  height: 52px;
  border: 1px solid #fff;
  border-radius: 26px;
  background-color: #28a8e4;
  box-shadow: 0 2px 12px 2px rgba(0, 0, 0, 0.2);
  color: #fff;
  line-height: 52px;
}
.c-dialog-freecoin__action button:hover {
  background-color: #188bc1;
}

/* マル得パス利用状況ページ・申し込みLP　契約期間説明モーダル */
.c-dialog-mtp {
  visibility: hidden;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 460px;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  border-radius: 4px;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
body[data-modal=mtp-dialog] .c-dialog-mtp {
  visibility: visible;
  opacity: 1;
}
.c-dialog-mtp__img > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-dialog-mtp__close-btn {
  position: absolute;
  top: -44px;
  right: -2px;
  width: 36px;
  height: 36px;
  outline: none;
  border: 0;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.c-dialog-mtp__close-btn::before, .c-dialog-mtp__close-btn::after {
  position: absolute;
  top: 50%;
  width: 2px;
  height: 14px;
  margin-top: -7px;
  background-color: #444;
  content: "";
}
.c-dialog-mtp__close-btn::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-dialog-mtp__close-btn::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-dialog-mtp {
  top: 30%;
  width: 750px;
  min-height: 320px;
  padding: 0 0 32px;
}

/* マル得パスゲームページ　受取サーバー確認モーダル（ぼくと恐竜） */
.c-dialog-mtp-check {
  overflow: hidden;
  box-sizing: border-box;
  width: 600px;
  border-radius: 5px;
  background-color: #fff;
  min-height: 292px;
  border: 4px solid #ff3232;
  border-radius: 8px;
  text-align: center;
}
.c-dialog-mtp-check__ttl {
  font-weight: bold;
  font-size: 20px;
  height: 44px;
  margin-bottom: 24px;
  background-color: #ff3232;
  color: #fff;
  line-height: 42px;
}
.c-dialog-mtp-check__ttl img {
  width: 24px;
  height: auto;
  margin-top: -6px;
  margin-right: 8px;
  margin-left: 8px;
}
.c-dialog-mtp-check__img {
  display: block;
  padding-bottom: 12px;
}
.c-dialog-mtp-check__img img {
  width: 266px;
  height: auto;
}
.c-dialog-mtp-check__txt {
  font-weight: bold;
  font-size: 16px;
  padding-bottom: 12px;
  line-height: 1.6;
}
.c-dialog-mtp-check__txt strong {
  background-color: #fff0a0;
}
.c-dialog-mtp-check__note {
  font-size: 12px;
}

/* liteから持ってきた汎用性のあるモーダル ※使うクラスだけ移行してきた */
.c-dialog-common {
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  border-radius: 5px;
  background-color: #fff;
  width: 540px;
  min-height: 500px;
  padding: 24px;
  text-align: center;
}
.c-dialog-common__img {
  padding-bottom: 16px;
}
.c-dialog-common__img > img {
  height: auto;
  max-width: 400px;
}
.c-dialog-common__ttl {
  font-weight: bold;
  font-size: 28px;
  padding-bottom: 16px;
}
.c-dialog-common__ttl > span {
  color: #ff3232;
}
.c-dialog-common .btn-forward {
  cursor: pointer;
}

/* ログインボーナス・スタンプ関連モーダル */
.c-modal-media__stamp-get img {
  width: 61px;
  height: auto;
}

/* マイページとグローバルのtips */
#tips {
  z-index: 2000;
  bottom: 0;
  width: 980px;
  height: 26px;
  margin: 0 auto;
  padding: 0 10px;
  background: #222;
  color: #fff;
  line-height: 26px;
}

body.game_body #tips {
  background: #444;
}

#tips a {
  color: #fff;
  text-decoration: underline;
}
#tips.mypage {
  width: 952px;
  margin: 1px auto 0;
}

.c-footer {
  font-size: 14px;
  padding-top: 24px;
  padding-bottom: 24px;
  background-color: #222;
  color: #fff;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
}
.c-footer__l-inner {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
.c-footer__l-logo {
  margin-bottom: 40px;
}
.c-footer__l-item {
  display: flex;
  margin-bottom: 64px;
}
.c-footer__l-copyright {
  text-align: center;
}
.c-footer__l-share {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
  gap: 16px;
}
.c-footer__l-share p {
  font-weight: bold;
  font-size: 14px;
}

.c-footer-logo {
  display: flex;
  align-items: flex-end;
}
.c-footer-logo__img {
  width: 100px;
  margin-right: 16px;
}
.c-footer-logo__img > img {
  width: 100%;
  height: auto;
}

.c-footer-item--genre {
  width: 330px;
  margin-right: 30px;
}
.c-footer-item--help {
  width: 220px;
}
.c-footer-item--company {
  width: 150px;
}
.c-footer-item--mobile {
  width: 230px;
}
.c-footer-item__l-header {
  margin-bottom: 20px;
}
.c-footer-item__title {
  font-weight: bold;
  font-size: 16px;
}

.c-footer-item-list.cols2 {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.c-footer-item-list.cols2 > li:nth-child(odd) {
  width: 60%;
}
.c-footer-item-list.cols2 > li:nth-child(even) {
  width: 40%;
}
.c-footer-item-list li {
  margin-bottom: 10px;
}
.c-footer-item-list li > a {
  color: #fff;
}
.c-footer-item-list li > a:hover {
  color: #ffaf00;
  text-decoration: underline;
}

.c-footer-mobile > img {
  display: block;
  width: 100%;
  height: auto;
}

.c-footer-bnr {
  margin-right: auto;
  margin-left: auto;
}
.c-footer-bnr:hover {
  opacity: 0.7;
}
.c-footer-bnr {
  width: 360px;
  margin-bottom: 24px;
}
.c-footer-bnr img {
  width: 100%;
  height: auto;
}

.c-footer-seal {
  display: flex;
  justify-content: center;
  margin-bottom: 64px;
  gap: 130px;
}
.c-footer-seal__l-content {
  display: flex;
  gap: 16px;
}

.c-footer-share {
  display: flex;
  gap: 16px;
}
.c-footer-share__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: transparent;
  cursor: pointer;
  transition: opacity 0.2s;
}
.c-footer-share__item:hover {
  opacity: 0.7;
}
.c-footer-share__item:focus-visible {
  outline: 2px solid #0086e5;
  outline-offset: 2px;
}
.c-footer-share__item img {
  display: block;
  width: 32px;
  height: 32px;
}
.c-footer-share__item--x, .c-footer-share__item--link {
  background-color: #fff;
}
.c-footer-share__item--link img {
  width: 18px;
  height: 18px;
}
.c-footer-share__item--x img {
  width: 16px;
  height: 16px;
}

/* ガチャ TOPサイドにあるコンテンツ */
.c-gacha-section__bnr {
  margin-bottom: 8px;
}
.c-gacha-section__bnr img {
  display: block;
  width: 100%;
  height: auto;
}
.c-gacha-section__btn {
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #fff;
  text-align: center;
}
.c-gacha-section__btn > a:hover {
  background-color: #faf5cd;
}
.c-gacha-section__btn > a {
  display: block;
  padding: 8px 0;
  color: #ff9600;
}

/* ガチャページ site */
.c-gacha {
  width: 980px;
  margin: 10px auto;
  padding: 10px 0;
  background-color: #fff;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
  text-align: center;
}
.c-gacha__iframe {
  display: block;
  width: 100%;
  height: 1600px;
}
.c-gacha__permission-wrap {
  margin: 15px 0;
}

/**
 * メディア型ゲームコンポーネント
 */
.c-game-media {
  display: flex;
  position: relative;
}
.c-game-media__image > img {
  width: 100px;
}
.c-game-media__content {
  width: calc(100% - 100px);
  padding-bottom: 40px;
  padding-left: 8px;
  text-align: left;
}
.c-game-media__title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 4px;
  color: #333;
}
.c-game-media__desc {
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden;
  margin-top: 4px;
  margin-bottom: 8px;
  color: #333;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.c-game-media__l-btn {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 150px;
}

/**
 * ライトから持ってきたメディア型用ゲームコンポーネント
 */
.r-l-item-list {
  display: flex;
  flex-wrap: wrap;
}
.r-l-item-list__item {
  margin-bottom: 4px;
  padding: 8px;
  border: 1px solid #e3e3e3;
}
.r-l-item-list--2col > li {
  width: calc((100% - 16px) / 2);
  margin-right: 16px;
}
.r-l-item-list--2col > li:nth-child(2n) {
  margin-right: 0;
}
.r-l-item-list--3col > li {
  width: calc((100% - 16px) / 3);
  margin-right: 16px;
}
.r-l-item-list--3col > li:nth-child(3n) {
  margin-right: 0;
}

/* 旧ゲームリスト（_old-components.scssより移管） */
/* @group じっくりゲーム */
#game_list_large_wrap h2 {
  padding: 0 0 5px 0;
}

.game_list_large {
  width: 690px;
  margin: 0 -20px 0 0;
}

#game_list_wrap .game_list_large {
  width: 656px;
  margin: 0 -9px 0 0;
}
#game_list_wrap .game_list_large .indivi {
  position: relative;
  margin: 0 8px 15px 0;
}

.game_list_large .indivi a {
  margin-top: 2px;
  background-color: #e1faff;
  text-align: center;
  line-height: 24px;
}
.game_list_large .indivi a:hover {
  background-color: #ddd;
  text-decoration: none;
}

#more_game .game_list_large {
  width: 920px;
}
#more_game .game_list_large .btn_orange {
  width: 198px;
}

.game_list_large .indivi {
  float: left;
  overflow: hidden;
  width: 210px;
  min-height: 124px;
  margin: 0 20px 20px 0;
}
.game_list_large .indivi img {
  display: block;
  width: 210px;
  max-height: 100px;
}
.game_list_large .indivi__title {
  height: 24px;
}
.game_list_large .indivi__title a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  position: relative;
}

#top_games .indivi a .icon_new {
  position: absolute;
  top: 0;
  left: 0;
  padding: 2px 4px;
  background-color: #e00;
  color: #fff;
  text-shadow: 0 1px 0 #c00;
  font-weight: bold;
  font-size: 93%;
  font-family: Verdana, arial, helvetica, sans-serif;
}

.game_list_large .indivi a .icon_new,
.game_list_large .indivi_f a .icon_new {
  position: absolute;
  top: 0;
  left: 0;
  padding: 2px 4px;
  background-color: #e00;
  color: #fff;
  text-shadow: 0 1px 0 #c00;
  font-weight: bold;
  font-size: 93%;
  font-family: Verdana, arial, helvetica, sans-serif;
}
.game_list_large .indivi .btn_gray,
.game_list_large .indivi .btn_orange {
  display: block;
  width: 90px;
  margin: 5px 0 0 0;
}

#game_main_col .game_list_large {
  width: 770px;
  margin: 0 -10px 0 0;
}
#game_main_col .game_list_large .indivi {
  float: left;
  overflow: hidden;
  width: 180px;
  margin: 0 0 10px 0;
  padding: 5px;
}
#game_main_col .game_list_large img {
  width: 180px;
  max-height: 86px;
}
#game_main_col .game_list_large .btn_orange {
  width: 168px;
  font-size: 123.1%;
}

/* @group ゲームリスト */
#game_list_wrap {
  margin: 0 0 12px 0;
  padding: 6px 10px 0;
  border-radius: 5px;
  background-color: #fff;
}

.game_list {
  overflow: hidden;
  width: 658px;
  margin: 0 -10px 0 0;
  padding: 10px 0 0 0;
}
.game_list .indivi {
  float: left;
  position: relative;
  width: 307px;
  margin: 0 10px 10px 0;
  padding: 5px;
  border: 1px solid #aaa;
}
.game_list .indivi:hover {
  border: 1px solid #666;
}
.game_list .indivi .game_name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 232px;
  height: 40px;
  font-weight: bold;
  line-height: 40px;
  cursor: pointer;
}
.game_list .indivi .btn_group {
  position: absolute;
  right: 5px;
  bottom: 5px;
  width: 232px;
}
.game_list .indivi .btn_group a {
  display: block;
  width: 101px;
  height: 25px;
  padding: 0 5px;
  line-height: 25px;
}
.game_list .indivi .btn_group .btn_gray {
  margin: 0;
}
.game_list .indivi .btn_group .quit_game {
  display: block;
  display: none;
  position: absolute;
  top: -55px;
  right: -10px;
  padding: 2px 5px;
  border: 1px solid #ccc;
  background-color: #eee;
  font-size: 85%;
  cursor: pointer;
}
.game_list .indivi .btn_group .quit_game:hover {
  border: 1px solid #333;
  color: #333;
}

#more_game {
  overflow: hidden;
  margin: 0 auto;
}

.add_game {
  background-color: #fff;
}
.add_game img {
  background: url("//static.gesoten.com/img/sprite_mypage_icons.png?v=202504021600") no-repeat 0 -232px;
}

.game_list .indivi.mini {
  width: 224px;
}
.game_list .indivi.mini .game_name,
.game_list .indivi.mini .btn_group {
  width: 150px;
}
.game_list .indivi.mini .game_name {
  padding: 15px 0 0 0;
}
.game_list .indivi.mini .btn_group a {
  margin: 0;
  padding: 2px 6px;
}

#genre_list {
  margin: 0 0 10px;
  padding: 9px;
}

#camp_game_list,
#random_game_list {
  margin: 0 0 26px 10px;
}

#genre_list h2 {
  height: 24px;
  margin-top: 4px;
  margin-bottom: 1px;
  padding: 0 6px;
  background: #ddd;
  font-weight: normal;
  font-size: 85%;
  line-height: 24px;
}
#genre_list h2 a {
  color: #333;
}
#genre_list .genre_list_title {
  margin-top: 16px;
  padding-left: 4px;
  background-color: #fff;
  font-weight: bold;
  font-size: 120%;
}
#genre_list .genre_list_block li a {
  display: block;
  float: left;
  overflow: hidden;
  width: 236px;
  height: 30px;
  margin: 0 1px 1px 0;
  padding: 4px;
  background: #eee;
}
#genre_list .genre_list_block li a:hover {
  background: #c8e6ff;
  text-decoration: none;
}
#genre_list .genre_list_block li a img {
  display: block;
  float: left;
  width: 30px;
  height: 30px;
  margin-right: 4px;
}
#genre_list .genre_list_block li a h3 {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  float: left;
  width: 186px;
  padding: 0 16px 0 0;
  background: url("//static.gesoten.com/img/icon_arrow_ccc.png?v=202504021600") no-repeat right 50%;
  line-height: 30px;
}

#game_list_wrap .game_description {
  overflow: hidden;
  height: 90px;
  margin-top: 1px;
  padding: 2px 6px;
  background: #eee;
  line-height: 1.4;
}
#game_list_wrap .game_genre {
  font-size: 85%;
}

/* ジャンル一覧 */
#genre_tit_list {
  padding: 12px;
}
#genre_tit_list li {
  display: inline-block;
  padding: 14px 6px 12px 0;
}
#genre_tit_list li a {
  padding: 6px 14px 5px;
  border: 1px solid #ccc;
}

#comu_genre_list {
  width: 974px;
  margin: 0 auto;
}
#comu_genre_list h2 {
  margin-top: 16px;
  padding-left: 4px;
  font-weight: bold;
}
#comu_genre_list h2 a {
  color: #333;
}
#comu_genre_list .genre_list_block {
  min-height: 40px;
}
#comu_genre_list .genre_list_block li {
  float: left;
}
#comu_genre_list .genre_list_block li a {
  display: block;
  overflow: hidden;
  width: 234px;
  height: 30px;
  margin: 0 1px 1px 0;
  padding: 4px;
  background: #eee;
}
#comu_genre_list .genre_list_block li a:hover {
  background: #c8e6ff;
  text-decoration: none;
}
#comu_genre_list .genre_list_block li a img {
  display: block;
  float: left;
  width: 30px;
  height: 30px;
  margin-right: 4px;
}
#comu_genre_list .genre_list_block li a h3 {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  float: left;
  width: 184px;
  padding: 0 16px 0 0;
  background: url("//static.gesoten.com/img/icon_arrow_ccc.png?v=202504021600") no-repeat right 50%;
  line-height: 30px;
}

.go_island_link img {
  width: 22px;
  background: url("//static.gesoten.com/img/sprite_mypage_icons.png?v=202504021600") -233px -545px;
}

/* ゲソてん市のレイアウト */
.c-geso-ichi {
  position: absolute;
  top: 88px;
  right: calc(50% - (500px + 164px));
  width: 135px;
  height: 170px;
  padding-top: 60px;
  background-image: url("/gesolite/pc/img/ap-gesoten/core/gesoichi/banner_mypage_gesoichi_timer.png?v=202504021600-force");
  background-size: 135px 170px;
  background-repeat: no-repeat;
  font-weight: bold;
  font-size: 15px;
}
.c-geso-ichi[data-login-status=false] {
  top: 120px;
}
.c-geso-ichi__txt {
  display: block;
  margin-bottom: 10px;
  color: #fff;
  text-align: center;
  line-height: 1.4;
}
.c-geso-ichi__timer {
  width: 100px;
  margin-left: 16px;
  padding: 6px 0;
  border-radius: 4px;
  background-color: #000;
  color: #ebff3c;
  text-align: center;
}

/* 早押しキャンペーン訴求レイアウト */
.c-hayaoshi {
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
}
.c-hayaoshi__inner {
  display: flex;
  background-color: #d2f0ff;
}
.c-hayaoshi__title {
  margin-right: 10px;
}
.c-hayaoshi__remain {
  font-weight: bold;
  font-size: 14px;
  margin-right: 10px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: inset 0 0 4px rgba(34, 34, 34, 0.2);
  color: #222;
  text-align: center;
}
.c-hayaoshi__remain span {
  display: inline-block;
  color: #ff5a5f;
}
.c-hayaoshi--header-container {
  width: 1000px;
}
.c-hayaoshi--header-container .c-hayaoshi__inner {
  align-items: flex-start;
  height: auto;
  padding: 8px;
}
.c-hayaoshi--header-container .c-hayaoshi__title {
  width: 474px;
}
.c-hayaoshi--header-container .c-hayaoshi__robo {
  width: 246px;
}
.c-hayaoshi--header-container .c-hayaoshi__remain {
  width: 240px;
  line-height: 28px;
}
.c-hayaoshi--header-container .c-hayaoshi__remain span {
  font-weight: bold;
  font-size: 20px;
  margin: 8px 4px;
}
.c-hayaoshi--big-bnr {
  display: flex;
  align-items: flex-start;
  height: auto;
  padding: 10px;
  background-color: #d2f0ff;
}
.c-hayaoshi--big-bnr .c-hayaoshi__title {
  width: 246px;
}
.c-hayaoshi--big-bnr .c-hayaoshi__robo {
  width: 141px;
}
.c-hayaoshi--big-bnr .c-hayaoshi__remain {
  width: 286px;
  height: 68px;
  line-height: 68px;
}
.c-hayaoshi--big-bnr .c-hayaoshi__remain span {
  font-weight: bold;
  font-size: 32px;
}

/* エッグがもらえるカード */
.c-incentive-card {
  position: relative;
}
.c-incentive-card__l-thumb > img {
  display: block;
  width: 100%;
  max-height: auto;
}
.c-incentive-card__l-content {
  padding: 12px;
}
.c-incentive-card__title {
  word-break: break-all;
}
.c-incentive-card:hover {
  opacity: 0.7;
}
.c-incentive-card {
  box-shadow: 0 0 4px #d1d1d1;
  margin-bottom: 8px;
  padding: 12px;
  border-radius: 4px;
  text-align: center;
}
.c-incentive-card > a {
  display: block;
  height: 100%;
  color: #000;
}
.c-incentive-card__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 12px;
}
.c-incentive-card__title > a {
  color: #222;
}
.c-incentive-card__lead {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  font-size: 12px;
  margin-bottom: 8px;
  color: #666;
}
.c-incentive-card__incentive {
  color: #ff3232;
  font-weight: bold;
}
.c-incentive-card__incentive::before {
  display: inline-block;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/egg-20.png?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: middle;
}
.c-incentive-card__point {
  color: #ff3232;
  font-weight: bold;
}
.c-incentive-card__point::before {
  display: inline-block;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/point-20.png?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: middle;
}

/* カルーセルの上部に表示されるお知らせ用共通style */
.r-c-info-list {
  margin-bottom: 24px;
}

.r-c-info {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
  padding: 8px;
  border: 1px solid #f07a23;
  border-radius: 4px;
  background-color: #fff6c5;
  gap: 4px;
}
.r-c-info--mail {
  border: 1px solid #0094f3;
  background-color: #e0f6fc;
}
.r-c-info--warn {
  border: 1px solid #ff3232;
  background-color: #ffebee;
}
.r-c-info--done {
  border: 1px solid #009b74;
  background-color: #d7f4ef;
}
.r-c-info__icon {
  width: 24px;
}
.r-c-info__text {
  font-weight: bold;
  font-size: 14px;
  flex: 1;
  color: #333;
}

/**
 * 目安箱（_old-components.scssより移管）
 */
.meyasu {
  padding: 60px 0 0;
  text-align: center;
}
.meyasu span {
  display: none;
  color: #f00;
  font-size: 85%;
}
.meyasu .btn_light_green {
  width: 100%;
  height: 34px;
  margin: 8px 0 4px;
  font-size: 100%;
  line-height: 34px;
}

#show_meyasu dl {
  padding: 4px 12px 0;
}
#show_meyasu dt {
  font-weight: bold;
  font-size: 116%;
}
#show_meyasu textarea {
  display: block;
  width: 672px;
  height: 160px;
  margin: 10px auto;
  padding: 6px;
}
#show_meyasu input {
  width: 300px;
  margin: 0 auto;
  border-radius: 8px;
}

#meyasu_error {
  padding: 0 12px;
  color: #f00;
}

/* 運営から表示されるメッセージ */
.c-manage-message {
  color: #444;
}
.c-manage-message > a {
  position: relative;
}
.c-manage-message > a::after {
  position: absolute;
  top: calc(50% - 4px);
}
.c-manage-message > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #666;
  border-bottom: 1px solid #666;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-manage-message > a:hover {
  color: #0086e5;
  text-decoration: underline;
}
.c-manage-message > a {
  display: block;
  color: inherit;
  line-height: 1.3;
}
.c-manage-message > a::after {
  right: 0;
}

/* カルーセルの上部に表示されるメッセージ */
.c-message {
  position: relative;
  font-size: 14px;
  margin-bottom: 8px;
  padding: 10px 8px;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  background-color: #f6f6f6;
}
.c-message > a:hover {
  opacity: 0.7;
}
.c-message > a {
  display: block;
  color: #222;
}
.c-message__title {
  margin-right: 8px;
  font-weight: bold;
}
.c-message--emergency {
  border-color: #ff5a5f;
  background-color: rgb(255, 243, 243.3636363636);
}
.c-message--emergency .c-message-badge {
  font-size: 12px;
  display: inline-block;
  margin-right: 8px;
  padding: 4px 6px;
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  vertical-align: baseline;
}
.c-message--success {
  border-color: #b9e66e;
  background-color: white;
}

/* 旧メッセージ（_old-components.scssより移管） */
/* @group メッセージ */
#msg_wrap {
  border-radius: 5px;
  background-color: #fff;
}

#msg_col {
  float: right;
  width: 820px;
  padding: 10px;
}

#msg_menu {
  float: left;
  width: 130px;
  margin-top: 34px;
  padding: 5px 10px 40px;
}
#msg_menu ul li {
  padding: 5px 0 5px 16px;
  border-bottom: 1px dotted #ccc;
  background: url("//static.gesoten.com/img/icon_arrow_ccc.png?v=202504021600") no-repeat 0 50%;
}
#msg_menu ul li.current {
  font-weight: bold;
}
#msg_menu ul li .badge {
  margin: 0 0 0 5px;
  padding: 1px 3px;
  border: 1px solid #d94d00;
  background-color: #ff5f06;
  color: #fff;
  font-weight: bold;
}

#msg_col h2 {
  width: 670px;
  height: auto;
}

#msg_count {
  float: right;
  padding: 0;
}
#msg_count a {
  cursor: pointer;
}

#msg_table {
  clear: both;
  width: 100%;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #ccc;
}
#msg_table th {
  padding: 5px;
  background-color: #eee;
  text-align: center;
  font-weight: bold;
}
#msg_table td {
  padding: 5px;
  background-color: #fff;
}
#msg_table #select_all {
  width: 20px;
}
#msg_table .select_this {
  width: 20px;
  text-align: center;
}
#msg_table .msg_title a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 370px;
  padding: 0 0 0 20px;
  background: url("//static.gesoten.com/img/icon_unread.png?v=202504021600") no-repeat 0 50%;
  font-weight: bold;
}
#msg_table.trash_table .msg_title a {
  width: 290px;
}
#msg_table .msg_title a.read, #msg_table .msg_title a.sent, #msg_table .msg_title a.draft {
  padding: 0;
  background: none;
  color: #666;
  font-weight: normal;
}
#msg_table .msg_title a.replied {
  background: url("//static.gesoten.com/img/icon_reply2.png?v=202504021600") no-repeat 0 50%;
  color: #666;
  font-weight: normal;
}
#msg_table .msg_from,
#msg_table .msg_to {
  width: 250px;
}
#msg_table .msg_from a,
#msg_table .msg_to a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  width: 250px;
}
#msg_table .msg_date {
  width: 110px;
  text-align: center;
}
#msg_table .msg_undo_move {
  width: 70px;
  vertical-align: middle;
  text-align: center;
  font-size: 85%;
}
#msg_table .msg_undo_move a {
  cursor: pointer;
}

.move_to_trash {
  display: none;
  position: relative;
  width: 240px;
  margin: 2px 0;
}
.move_to_trash a {
  position: absolute;
  top: 5px;
  left: 0;
}

#msg_write_box {
  width: 95%;
  margin: 0 auto;
}
#msg_write_box th {
  width: 150px;
  padding: 10px 0;
  border-bottom: 1px dotted #ccc;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
}
#msg_write_box td {
  padding: 10px 0;
  border-bottom: 1px dotted #ccc;
}
#msg_write_box td#write_text {
  line-height: 170%;
}
#msg_write_box #select_to select {
  margin: 0;
}
#msg_write_box td input {
  width: 598px;
}
#msg_write_box td textarea {
  width: 598px;
  height: 100px;
  resize: vertical;
}

#msg_footer {
  margin: -1px 0 0 0;
  padding: 10px 0 0 0;
  border-top: 1px solid #ccc;
}
#msg_footer li {
  float: right;
  margin: 0 0 0 5px;
}
#msg_footer li input {
  font-size: 123.1%;
}
#msg_footer .btn_orange {
  padding: 5px 10px;
}

#msg_header {
  display: block;
  padding: 5px 0;
}
#msg_header #msg_from {
  display: block;
  float: left;
  height: 16px;
  line-height: 16px;
}
#msg_header #msg_from img {
  display: block;
  float: left;
  width: 16px;
  margin: 0 2px 0 0;
}
#msg_header #msg_from span {
  float: left;
  margin: 0 5px 0 0;
}
#msg_header #msg_date {
  float: right;
  height: 16px;
  line-height: 16px;
}
#msg_header #msg_date span {
  float: left;
  margin: 0 5px 0 0;
}
#msg_header li a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  float: right;
  max-width: 600px;
}

#msg_text {
  padding: 20px 10px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  line-height: 170%;
}
#msg_text strong {
  font-weight: bold;
}

#trash_option {
  padding: 20px 0;
}
#trash_option li {
  padding: 0 5px;
}
#trash_option li:first-child {
  border-right: 1px solid #ccc;
}
#trash_option li strong {
  font-weight: bold;
}

.c-message-box__empty {
  margin: 50px auto 20px;
  text-align: center;
}

.c-message-box__empty-text {
  margin-bottom: 20px;
  font-size: 14px;
}

#user_info_edit .login_tw,
#user_info_edit .login_fb {
  border: none;
}

/* @end */
/**
 * マイページ マイゲーム一覧（_old-components.scssより移管）
 */
.c-mypage-mygame {
  overflow: hidden;
  width: 952px;
  margin: 0 auto 10px;
  padding: 10px;
  background: #f4f4f4;
}
.c-mypage-mygame h2 {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 8px;
  text-align: left;
}
.c-mypage-mygame h2 span {
  font-size: 14px;
  margin: 0 10px;
  font-weight: normal;
}
.c-mypage-mygame h2 a {
  font-size: 14px;
  font-weight: normal;
}
.c-mypage-mygame__list::after {
  display: block;
  clear: both;
  content: "";
}
.c-mypage-mygame__list-item {
  display: inline-block;
  float: left;
  box-sizing: border-box;
  width: 230px;
  border-radius: 2px;
  box-shadow: 0 1px 3px rgba(51, 51, 51, 0.3);
  line-height: 0;
}
.c-mypage-mygame__list-item:not(:nth-child(4n)) {
  margin-right: 10px;
}
.c-mypage-mygame__list-item a {
  display: inline-block;
  padding: 8px;
  background-color: #fff;
}
.c-mypage-mygame__list-item a:hover {
  background-color: #e1faff;
}
.c-mypage-mygame__item-none {
  display: none;
}

/* 左カラム マイゲーム用のmedia型のレイアウト */
.c-mygame-media {
  position: relative;
  display: flex;
}
.c-mygame-media__l-thumb {
  flex: 1;
  width: 56px;
}
.c-mygame-media__l-thumb > img {
  display: block;
  width: 100%;
}
.c-mygame-media__l-content {
  width: calc(100% - 56px);
  padding: 8px;
}
.c-mygame-media__title {
  word-break: break-all;
}
.c-mygame-media:hover {
  opacity: 0.7;
}
.c-mygame-media {
  background-color: #fff;
  box-shadow: 0 0 4px rgba(51, 51, 51, 0.3);
}
.c-mygame-media__l-content {
  display: flex;
  align-items: center;
}
.c-mygame-media__title {
  font-weight: bold;
  font-size: 12px;
  line-height: 1.2;
}
.c-mygame-media__title > a {
  color: #222;
}
.c-mygame-media__l-thumb > img {
  height: auto;
}

/* stylelint-disable */
/* talk */
#show_talk,
#show_talk_ie {
  position: absolute;
  right: 24px;
  bottom: 6px;
}

#header_talk_help {
  position: absolute;
  right: 0;
  bottom: 6px;
}

#header_talk_help img {
  width: 29px;
  height: 30px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") 0 -375px;
}

#show_talk a,
#show_talk_ie a {
  display: block;
  width: 70px;
  height: 28px;
  border: 1px solid #52be36;
  background: #aafa64;
  text-align: center;
  line-height: 28px;
}

#show_talk a:hover,
#show_talk_ie a:hover {
  border: 1px solid #229a00;
  text-decoration: none;
}

#show_talk img,
#show_talk_ie img {
  width: 31px;
  height: 17px;
  margin-right: 2px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") -26px -282px;
  vertical-align: -4px;
}

#show_talk span,
#show_talk_ie span {
  padding: 1px 3px 0;
  border: 1px solid #fff;
  background: #f00;
  color: #fff;
  font-weight: bold;
  font-size: 85%;
}

#talk_wrap {
  z-index: 300;
  position: absolute;
  top: 194px;
  right: 0;
  width: 504px;
  height: 606px;
  padding: 8px;
  border-radius: 8px;
  background: #666;
  -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.6);
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.6);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.6);
}

#talk_win #talk_wrap {
  position: static;
  border-radius: 0;
  box-shadow: none;
}

#talk_delta {
  position: absolute;
  top: -14px;
  right: 48px;
  width: 0;
  height: 0;
  border-right: 10px solid transparent;
  border-bottom: 14px solid #666;
  border-left: 10px solid transparent;
}

#talk_win #talk_delta {
  display: none;
}

#talk_inner {
  overflow: hidden;
  position: relative;
  width: 504px;
  height: 606px;
  background: #fff;
}

.panel {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 504px;
  height: 606px;
  background: #fff;
}

#talk_wrap .active {
  display: block;
}

.talk_content,
.talk_content_detail,
#talk_group_regist_box {
  overflow-x: hidden;
  overflow-y: auto;
  width: 504px;
  height: 567px;
}

.talk_content_detail {
  height: 490px;
}

.talk_first_guide {
  position: relative;
  width: 504px;
  height: 567px;
  background: url("//static.gesoten.com/img/geso/common/talk_first_guide.png?v=202504021600") no-repeat 0 0;
}

.talk_first_guide a {
  position: absolute;
  top: 230px;
  right: 18px;
  color: #f00;
  font-weight: bold;
  font-size: 131%;
}

.talk_head {
  overflow: hidden;
  padding: 6px;
  background: #222;
  color: #fff;
}

.talk_head .listTab,
.talk_head .talk_head_tit {
  float: left;
  width: 110px;
  padding: 4px 0 0;
  font-weight: bold;
  font-size: 116%;
}

.talk_head .listTab:first-child {
  width: 90px;
}

.talk_head .talk_head_tit {
  overflow: hidden;
  width: 220px;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.talk_head .listTab a {
  color: #888;
}

.talk_head .listTab.selected a {
  color: #fff;
}

.talk_head .listTab a.notification {
  color: #fc7e7e;
}

.talk_head .listTab img {
  height: 17px;
  margin: 0 2px 2px 0;
}

.talk_head .listTab.selected .talk_head_talk img {
  width: 24px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -106px -282px;
}

.talk_head .listTab .talk_head_talk img {
  width: 24px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -130px -282px;
}

.talk_head .listTab .talk_head_talk.notification img {
  width: 24px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -204px -282px;
}

.talk_head .listTab.selected .talk_head_friend img {
  width: 25px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -154px -282px;
}

.talk_head .listTab .talk_head_friend img {
  width: 25px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -179px -282px;
}

.talk_head .listTab.selected .talk_head_group img {
  width: 26px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -263px -282px;
}

.talk_head .listTab .talk_head_group img {
  width: 26px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -289px -282px;
}

.talk_head_mode,
.talk_head_close,
.talk_head_read,
.talk_head_back,
.talk_head_edit,
.talk_head_invite {
  float: right;
  height: 25px;
  border: 1px solid #666;
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 85%;
  line-height: 25px;
  cursor: pointer;
}

.talk_head_mode:hover,
.talk_head_close:hover,
.talk_head_read:hover,
.talk_head_back:hover,
.talk_head_edit:hover,
.talk_head_invite:hover {
  border: 1px solid #999;
  color: #fff;
  text-decoration: none;
}

.talk_head_mode {
  width: 106px;
  margin: 0 0 0 4px;
}

.talk_head_read {
  width: 116px;
}

.talk_head_close,
.talk_head_edit {
  width: 25px;
  margin: 0 0 0 4px;
}

.talk_head i {
  margin: 0;
  font-size: 116%;
}

.talk_head_invite {
  width: 60px;
}

#talk_detail_reload {
  position: absolute;
  top: 4px;
  right: 10px;
}

#talk_detail_reload img {
  display: block;
  width: 22px;
  height: 22px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -353px;
  cursor: pointer;
}

.talk_head_back {
  float: left;
  width: 40px;
  margin: 0 6px 0 0;
  color: #fff;
}

.talk_head_back:hover {
  color: #fff;
  text-decoration: none;
}

.talk_see_more {
  height: 30px;
  padding: 8px;
  border-bottom: 1px solid #ccc;
  background: #fff;
}

.talk_see_more a {
  display: block;
  height: 30px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #ddd;
  color: #333;
  text-align: center;
  font-size: 116%;
  line-height: 30px;
}

.talk_see_more a:hover {
  border: 1px solid #aaa;
  text-decoration: none;
}

#talk_index .talk_content li {
  position: relative;
  padding: 8px;
  border-bottom: 1px solid #ccc;
  background: url("//static.gesoten.com/img/geso/common/talk_list_arrow.png?v=202504021600") no-repeat center right #f4f4f4;
}

#talk_index .talk_content li:hover {
  background: url("//static.gesoten.com/img/geso/common/talk_list_arrow.png?v=202504021600") no-repeat center right #dcf4ff;
}

#talk_index .talk_content li a {
  display: block;
  overflow: hidden;
  color: #333;
}

#talk_index .talk_content li img.talk_inner_user,
.talk_group_regist_box_main img.talk_inner_user {
  display: block;
  float: left;
  width: 64px;
  max-height: 64px;
  margin: 0 6px 0 0;
  border: 1px solid #ccc;
}

#talk_index .talk_content li dl {
  float: left;
  width: 370px;
  padding: 12px 0 0;
}

#talk_index .talk_content li dl.talk_history_group {
  padding: 0;
}

#talk_index #listB .talk_content li dl {
  padding: 20px 0 0;
}

#talk_index .talk_content li dl dt .talk_inner_name {
  float: left;
  overflow: hidden;
  width: 250px;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 131%;
}

#talk_index .talk_content li dl dt .talk_inner_online {
  display: block;
  float: right;
  margin: 3px 0 0;
  padding: 1px 4px;
  background: #6ec81e;
  color: #fff;
  font-size: 85%;
}

#talk_index .talk_content li dl dt .talk_inner_kizuna {
  display: block;
  float: left;
  width: 56px;
  margin: 3px 0 0;
  font-weight: bold;
}

#talk_index .talk_content li dl dt .talk_inner_kizuna img {
  width: 26px;
  height: 17px;
  margin-right: 2px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") 0 -282px;
  vertical-align: -3px;
}

#talk_index .talk_content li dl dt {
  overflow: hidden;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#talk_index .talk_content li dl dd {
  overflow: hidden;
  color: #666;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#talk_index .talk_content li dl.talk_history_group dd img,
#talk_index #list_talk_group .talk_content li dl dd img {
  width: 16px;
  max-height: 16px;
  margin: 0 2px 0 0;
}

#talk_index .talk_robo .robo_set {
  float: left;
  position: relative;
  width: 24px;
  height: 24px;
}

#talk_index .talk_robo .robo_set img {
  position: absolute;
  top: 2px;
  left: 0;
  width: 24px;
  height: 24px;
}

#talk_index .talk_robo .robo_comment {
  float: left;
  overflow: hidden;
  width: 168px;
  height: 26px;
  padding: 5px 14px 0 14px;
  background: url("//static.gesoten.com/img/sprite_pfg.png?v=202504021600") no-repeat 0 -637px;
  color: #333;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 85%;
}

#talk_index .talk_content li dl dd .talk_inner_time {
  font-weight: bold;
}

#talk_index .talk_content li .talk_inner_count {
  position: absolute;
  top: 29px;
  right: 30px;
  padding: 1px 4px 0;
  border: 1px solid #fff;
  background: #f00;
  color: #fff;
  font-weight: bold;
}

.talk_detail {
  padding: 0 0 10px;
}

.talk_detail ul {
  overflow: hidden;
}

.talk_detail li {
  min-width: 298px;
}

.talk_detail li.talk_other {
  float: left;
}

.talk_detail li.talk_myself {
  float: right;
}

.talk_li_inner {
  overflow: hidden;
  padding: 4px 12px;
}

.talk_detail_user {
  float: left;
  width: 70px;
}

.talk_detail_user img {
  display: block;
  width: 64px;
  max-height: 64px;
}

.talk_li_inner dl {
  float: left;
  max-width: 398px;
}

.talk_detail li.talk_other .talk_li_inner dl {
  max-width: 334px;
}

.talk_myself .talk_li_inner dl {
  float: right;
}

.talk_detail li .talk_detail_sub {
  padding: 4px 0;
  color: #666;
  text-align: right;
  font-size: 85%;
}

.talk_detail li .talk_detail_main {
  position: relative;
  padding: 8px 10px;
  border: 1px solid #aaa;
  border-radius: 8px;
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  color: #000;
  word-break: break-all;
  font-size: 116%;
}

.talk_detail .talk_detail_gift {
  color: #f00;
  text-align: center;
  font-weight: bold;
  font-size: 85%;
}

.talk_detail li.talk_other .talk_detail_main {
  background: #eee;
}

.talk_detail li.talk_myself .talk_detail_main {
  background: #d0f0ff;
  word-break: break-all;
}

.talk_detail li .talk_detail_main:after,
.talk_detail li .talk_detail_main:before {
  position: absolute;
  right: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}

.talk_detail li .talk_detail_main:after {
  top: 7px;
  margin-top: 4px;
  border-width: 8px;
  border-right-color: #eee;
}

.talk_detail li .talk_detail_main:before {
  top: 9px;
  margin-top: 0;
  border-width: 10px;
  border-right-color: #aaa;
}

.talk_detail li.talk_myself .talk_detail_main:after,
.talk_detail li.talk_myself .talk_detail_main:before {
  right: 0%;
  left: 100%;
}

.talk_detail li.talk_myself .talk_detail_main:after {
  top: 7px;
  margin-top: 4px;
  border-width: 8px;
  border-right-color: transparent;
  border-left-color: #d0f0ff;
}

.talk_detail li.talk_myself .talk_detail_main:before {
  top: 9px;
  margin-top: 0;
  border-width: 10px;
  border-right-color: transparent;
  border-left-color: #aaa;
}

.talk_foot {
  height: 76px;
  border-top: 1px solid #aaa;
  background: #eee;
}

.talk_foot .post_box {
  padding: 0 10px;
}

.talk_foot .post_box_menu {
  position: relative;
}

.talk_foot .post_box .talk_post {
  overflow: hidden;
  position: relative;
}

.talk_foot .post_box textarea {
  float: left;
  width: 396px;
  height: 34px;
}

.talk_foot .post_box input {
  float: right;
  width: 80px;
  height: 36px;
  margin: 1px 0 0;
  border-radius: 4px;
  font-weight: normal;
  font-size: 116%;
  line-height: 36px;
  cursor: pointer;
}

.talk_foot .post_box input[disabled] {
  border: 1px solid #aaa;
  background: #ccc;
  color: #666;
  cursor: default;
}

.talk_foot .post_box_menu .btn_group {
  width: 200px; /*test カワムラ*/
}

.talk_foot .post_box_menu .error {
  padding: 0 22px 0 0;
  color: #f00;
  text-align: right;
  line-height: 30px;
}

.talk_foot .post_box_menu .add_emoji_box {
  top: auto;
  bottom: 70px;
  left: 1px;
}

.add_gift_box {
  z-index: 9999;
  position: absolute;
  top: -230px;
  left: 21px;
  width: 344px;
  height: 216px;
  padding: 5px;
  border: 1px solid #666;
  border-radius: 4px;
  background: #fff;
}

#stamp_slide {
  clear: both;
  position: relative;
  width: 360px;
  margin: 0 auto;
}

.stamp_contents {
  overflow: hidden;
  position: relative;
  width: 360px;
  height: 70px;
}

.slides {
  position: absolute;
  top: 0;
  left: 0;
}

.stamp_contents .slides ul {
  display: none;
  position: absolute;
  top: 0;
  width: 360px;
}

.stamp_contents .previous,
.stamp_contents .next {
  top: 28px;
}

a.previous {
  position: absolute;
  left: 2px;
  color: rgba(0, 0, 0, 0.2);
  text-decoration: none;
  font-size: 19px;
  cursor: pointer;
}

a.previous span {
  display: block;
  margin: 0 16px;
}

a.next {
  position: absolute;
  right: 2px;
  color: rgba(0, 0, 0, 0.2);
  text-decoration: none;
  font-size: 19px;
}

a.next span {
  display: block;
  margin: 0 18px;
}

a.previous:hover {
  color: rgba(0, 0, 0, 0.9);
}

a.next:hover {
  color: rgba(0, 0, 0, 0.9);
}

:not(#talk_detail) .add_stamp_box,
:not(#talk_detail) .add_stamp_timeline_box {
  z-index: 9999;
  position: absolute;
  top: 99px;
  left: -22px;
  width: 200px;
  height: 360px;
  padding: 5px;
  border: 1px solid #666;
  border-radius: 4px;
  background: #fff;
}

#talk_detail .add_stamp_box,
#talk_detail .add_stamp_timeline_box {
  z-index: 9999;
  position: absolute;
  top: -374px;
  left: 42px;
  width: 360px;
  height: 360px;
  padding: 5px;
  border: 1px solid #666;
  border-radius: 4px;
  background: #fff;
}

#game_side_col .post_box_menu .add_stamp_timeline_box {
  top: 32px;
  left: 0;
}

.your_reply .add_stamp_timeline_box {
  top: 98px;
  left: -69px;
}

.talk_foot .add_emoji_box .close,
.talk_foot .add_gift_box .close,
.talk_foot .add_stamp_box .close {
  right: -12px;
  left: auto;
}

.talk_foot .add_gift_box ul {
  overflow: hidden;
}

.talk_foot .add_gift_box ul li,
#link_items li {
  float: left;
  position: relative;
  width: 80px;
  padding: 2px 4px 6px 2px;
  text-align: center;
  font-size: 85%;
}

.talk_foot .add_gift_box ul li span,
#link_items li div {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 4px;
  background: #222;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

.talk_foot .add_gift_box ul li img,
#link_items img {
  display: block;
  width: 80px;
  border: 1px solid #ff8cc3;
  border-radius: 10px;
  background: #fdeef2;
  cursor: pointer;
}

.talk_foot .add_gift_box ul li.gift_none img {
  opacity: 0.7;
  cursor: default;
}

.talk_foot .add_gift_box ul li img:hover,
#link_items img:hover {
  border: 1px solid #ff2e92;
}

:not(#talk_detail) .add_stamp_item li,
:not(#talk_detail) .add_stamp_timeline_item li {
  float: left;
  position: relative;
  width: 60px;
  padding: 3px 0 5px 4px;
  text-align: center;
  font-size: 85%;
}

#talk_detail .add_stamp_item li,
#talk_detail .add_stamp_timeline_item li {
  float: left;
  position: relative;
  width: 80px;
  padding: 3px 0 5px 4px;
  text-align: center;
  font-size: 85%;
}

.slides ul li {
  float: left;
  position: relative;
  width: 40px;
  padding: 18px 0 0 40px;
  text-align: center;
  font-size: 85%;
}

.add_stamp_box ul li span,
.add_stamp_timeline_box ul li span,
#link_items li div {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 4px;
  background: #222;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

:not(#talk_detail) .add_stamp_box li img,
:not(#talk_detail) .add_stamp_timeline_box li img {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  cursor: pointer;
}

#talk_detail .add_stamp_box li img,
#talk_detail .add_stamp_timeline_box li img {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  cursor: pointer;
}

.add_stamp_item,
.add_stamp_timeline_item {
  overflow: auto;
  height: 280px;
}

.add_stamp_item .stamp_list_box p,
.add_stamp_timeline_item .stamp_timeline_list_box p {
  text-align: center;
}

:not(#talk_detail) .add_stamp_item li img,
:not(#talk_detail) .add_stamp_timeline_item li img {
  display: block;
  width: 60px;
  height: 60px;
  border-radius: 10px;
  cursor: pointer;
}

#talk_detail .add_stamp_item li img,
#talk_detail .add_stamp_timeline_item li img {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 10px;
  cursor: pointer;
}

.add_stamp_box ul li.gift_none img,
.add_stamp_timeline_box ul li.gift_none img {
  opacity: 0.7;
  cursor: default;
}

.stamp_list_box > li > img:hover,
.stamp_timeline_list_box > li > img:hover {
  margin: -1px;
  border: solid 1px #ccc;
}

:not(#talk_detail) #carouselwrap,
:not(#talk_detail) .stamp_timeline_carouselwrap {
  position: relative;
  width: 170px;
  height: 30px;
  margin: 8px 0 0 14px;
}

#talk_detail #carouselwrap,
#talk_detail .stamp_timeline_carouselwrap {
  position: relative;
  width: 320px;
  height: 40px;
  margin: 8px 0 0 14px;
}

#carouselwrap #carousel,
.stamp_timeline_carouselwrap .stamp_timeline_carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
}

#carouselwrap ul,
.stamp_timeline_carouselwrap ul {
  list-style-type: none;
}

:not(#talk_detail) #carouselwrap ul li,
:not(#talk_detail) .stamp_timeline_carouselwrap ul li {
  display: inline;
  float: left;
  width: 30px;
  height: 100%;
  padding-left: 10px;
}

#talk_detail #carouselwrap ul li,
#talk_detail .stamp_timeline_carouselwrap ul li {
  display: inline;
  float: left;
  width: 40px;
  height: 100%;
  padding-left: 23px;
}

#carouselwrap ul li img,
.stamp_timeline_carouselwrap ul li img {
  border: none;
}

#carouselwrap ul li.selected img,
.stamp_timeline_carouselwrap ul li.selected img {
  background: #dcf4ff;
}

#carouselwrap #prev,
#carouselwrap #next,
.stamp_timeline_carouselwrap .stamp_timeline_prev,
.stamp_timeline_carouselwrap .stamp_timeline_next {
  position: absolute;
  top: 0;
  width: 20px;
  height: 100%;
  font-size: 18px;
}

#carouselwrap #prev,
.stamp_timeline_carouselwrap .stamp_timeline_prev {
  left: -20px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

#carouselwrap #next,
.stamp_timeline_carouselwrap .stamp_timeline_next {
  right: -28px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

#carouselwrap .show,
.stamp_timeline_carouselwrap .show {
  color: #000;
  cursor: pointer;
}

#carouselwrap .hide,
.stamp_timeline_carouselwrap .hide {
  color: #eee;
  cursor: pointer;
}

#carouselwrap .show:hover,
.stamp_timeline_carouselwrap .show:hover,
.hide:hover {
  color: #eee;
  cursor: pointer;
}

.stamp_arrow {
  display: block;
  margin-top: 8px;
  font-weight: bold;
}

.talk_foot .add_emoji_box:after,
.talk_foot .add_emoji_box:before,
.talk_foot .add_gift_box:after,
.talk_foot .add_gift_box:before,
.talk_foot .add_stamp_box:after,
.talk_foot .add_stamp_box:before {
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}

.talk_foot .add_emoji_box:after,
.talk_foot .add_gift_box:after {
  bottom: -18px;
  margin-left: -9px;
  border-width: 9px;
  border-top-color: #fff;
  border-bottom-color: transparent;
}

.talk_foot .add_stamp_box:after {
  bottom: -18px;
  left: 70px;
  margin-left: -9px;
  border-width: 9px;
  border-top-color: #fff;
  border-bottom-color: transparent;
}

.talk_foot .add_emoji_box:before,
.talk_foot .add_gift_box:before {
  bottom: -21px;
  margin-left: -10px;
  border-width: 10px;
  border-top-color: #666;
  border-bottom-color: transparent;
}

.talk_foot .add_emoji_box:before,
.talk_foot .add_emoji_box:after {
  left: 82px;
}

.talk_foot .add_gift_box:before,
.talk_foot .add_gift_box:after {
  left: 132px;
}

.talk_foot .add_stamp_box:before {
  bottom: -21px;
  left: 70px;
  margin-left: -10px;
  border-width: 10px;
  border-top-color: #666;
  border-bottom-color: transparent;
}

.talk_foot .post_box .counter {
  z-index: 1;
  display: none;
  top: 18px;
  right: 104px;
  font-size: 100%;
}

/* group talk */
.talk_friend_search {
  overflow: hidden;
  padding: 6px 8px 6px 0;
  background: #ddd;
}

.talk_friend_search input,
.talk_friend_search a {
  display: block;
  float: right;
}

.talk_friend_search input {
  width: 200px;
  margin: 0 4px 0 0;
  padding: 4px 6px;
}

.talk_friend_search a {
  width: 44px;
  height: 28px;
  font-weight: normal;
  line-height: 26px;
}

.talk_group_create_box {
  padding: 10px 0;
  background: #ddd;
}

.talk_group_create_box .btn_light_blue {
  width: 280px;
  height: 50px;
  margin: 0 auto;
}

.talk_group_create_box input[disabled] {
  border: 1px solid #aaa;
  background: #ccc;
  color: #666;
  cursor: default;
}

#talk_index .talk_content li a.talk_group_regist {
  position: absolute;
  right: 26px;
  bottom: 4px;
  height: 30px;
  padding: 0 8px;
  color: #aaa;
  font-size: 161.6%;
  line-height: 30px;
}

#talk_index .talk_content li a.talk_group_regist:hover {
  color: #333;
  text-decoration: none;
}

.talk_group_regist_box_main {
  overflow: hidden;
  padding: 8px 20px 0;
  background: #ddd;
}

.talk_group_regist_box_main input[type=text] {
  width: 360px;
  margin: 4px 0 0;
  padding: 4px 6px 2px;
  color: #000;
  font-weight: bold;
  font-size: 131%;
}

.talk_group_regist_box_main .btn_light_gray {
  float: right;
  width: 110px;
  height: 28px;
  margin: 0 0 12px 4px;
  font-weight: normal;
  font-size: 85%;
  line-height: 29px;
}

#talk_group_member_add_btn_box a,
.talk_add_member_box a {
  display: block;
  height: 42px;
  margin: 0 auto;
  border-bottom: 1px solid #ccc;
  background: #f4f4f4;
  color: #333;
  text-align: center;
  font-size: 100%;
  line-height: 43px;
}

#talk_group_member_add_btn_box a:hover,
.talk_add_member_box a:hover {
  background: #dcf4ff;
  text-decoration: none;
}

#list_talk_group_member .talk_content li {
  overflow: hidden;
  padding: 0 8px;
  border-bottom: 1px solid #ccc;
  background: #f4f4f4;
}

#list_talk_group_member .talk_content li:hover {
  background: #dcf4ff;
}

#list_talk_group_member .talk_content li input[type=checkbox] {
  display: block;
  float: left;
  width: 26px;
  margin: 20px 0 0 0;
}

#list_talk_group_member .talk_content li label {
  display: block;
  float: left;
  overflow: hidden;
  width: 440px;
  padding: 10px 0;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 116%;
}

#list_talk_group_member .talk_content li .talk_inner_user,
#talk_group_regist_box ul li .talk_inner_user {
  width: 32px;
  max-height: 32px;
  margin: 0 6px 0 0;
}

#talk_group_regist_box .error {
  padding: 6px 8px;
  border-bottom: 1px solid #ccc;
  background: #ffd8ee;
  color: #d20078;
  text-align: center;
}

#talk_group_regist_box ul li {
  overflow: hidden;
  position: relative;
  padding: 10px 8px;
  border-bottom: 1px solid #ccc;
  background: #f4f4f4;
  -webkit-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 116%;
}

/* トークのアップロード */
#talk_inner .add_img_box {
  position: absolute;
  left: 174px;
  width: 270px;
  height: 25px;
  padding: 2px 3px;
}

/* 画像ファイルアップロードボタン */
#talk_form_img_file {
  width: 270px;
  height: 25px;
  line-height: 0;
}

/* タイムラインの画像の横幅を指定する */
.stamp_timeline {
  width: 160px;
}
.stamp_timeline img {
  max-width: 100%;
}

/* @group タイムライン */
#timeline {
  width: 650px;
  margin: 6px 0 0 0;
  padding: 9px;
  border-radius: 5px;
  background-color: #fff;
}

#topics_timeline #timeline {
  margin: 0;
  padding: 0;
}

.comment-detail-section #timeline {
  margin: 0;
}

#timeline.has_tab {
  position: relative;
  margin: 37px 0 0 0;
}

.post_box {
  z-index: 1;
  position: relative;
}

#game_timeline_wrap .post_box {
  padding: 8px 4px 2px;
  background-color: #eee;
}

#your_info .post_box {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 432px;
  border: 1px solid #aaa;
  background-color: #eee;
}

#timeline .post_box {
  margin: 0 0 10px 0;
  border: 1px solid #999;
  background-color: #eee;
}
#timeline .post_box textarea {
  display: block;
  overflow-y: auto;
  width: 648px;
  height: 50px;
  margin: 0;
  padding: 5px;
  border: none;
  border-radius: 0;
  font-size: 116%;
  resize: none;
}

#your_info .post_box textarea {
  display: block;
  width: 422px;
  height: 20px;
  margin: 0;
  padding: 5px;
  border: none;
  border-radius: 0;
  font-size: 116%;
  resize: none;
}
#your_info .post_box .post_box_menu {
  display: none;
  position: relative;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ccc;
}

#timeline .post_box_menu {
  display: none;
  position: relative;
  margin: 0;
  padding: 0;
  border-top: 1px solid #999;
}

.post_box_menu .btn_group {
  float: left;
  width: 130px;
}

#your_info .post_box_menu .btn_group {
  float: left;
  width: 130px;
  width: 100px;
}

.post_box_menu .add_emoji_box,
#your_info .post_box_menu .add_img_box {
  z-index: 999;
  top: 32px;
  left: -1px;
  background-color: #fff;
}

.post_box_menu .add_stamp_timeline_box {
  z-index: 999;
  top: 32px;
  left: -1px;
  background-color: #fff;
}
.post_box_menu dl {
  width: 460px;
  height: 30px;
  line-height: 30px;
}

#your_info .post_box_menu dl {
  width: 330px;
  margin: 0;
}
#your_info .post_box_menu dl dt {
  padding: 0 10px;
}
#your_info .post_box_menu dl dd {
  height: 30px;
  line-height: 30px;
}
#your_info .post_box .counter {
  top: 36px;
}
#your_info .post_box_menu dl .post_twitter,
#your_info .post_box_menu dl .post_facebook {
  width: 45px;
}

#timeline .post_box_menu dl .post_twitter,
#timeline .post_box_menu dl .post_facebook {
  width: 45px;
}

.post_twitter input,
.post_facebook input {
  display: inline;
}

.add_img,
#your_info .add_img,
.add_emoji,
#your_info .add_emoji,
.add_gift,
.add_stamp,
.add_stamp_timeline {
  display: block;
  float: left;
  width: 40px;
  height: 30px;
  border-right: 1px solid #ccc;
  cursor: pointer;
}

.add_img,
#your_info .add_img {
  background: transparent url("//static.gesoten.com/img/icon_camera.png?v=202504021600") no-repeat 50%;
}

.add_emoji,
#your_info .add_emoji {
  background: url("//static.gesoten.com/img/icon_emoji.png?v=202504021600") no-repeat 50%;
}

.add_gift {
  background: url("//static.gesoten.com/img/geso/common/icon_gift.png?v=202504021600") no-repeat 50%;
}

.add_stamp,
.add_stamp_timeline {
  background: url("//static.gesoten.com/img/geso/common/icon_stamp.png?v=202504021600") no-repeat 50%;
}

.add_img span,
.add_emoji span,
.add_gift span,
.add_stamp span,
.add_stamp_timeline span {
  display: none;
}

#your_info .add_img span,
#your_info .add_emoji span {
  display: none;
}

.add_img_box,
#your_info .add_img_box {
  clear: both;
  padding: 5px;
}

.add_img_box,
.add_emoji_box {
  display: none;
}

#your_info .add_img_box,
#your_info .add_emoji_box {
  display: none;
}

.add_gift_box,
.add_stamp_box,
.add_stamp_timeline_box {
  display: none;
}

:not(.talk_foot) .add_emoji_box,
#your_info .add_emoji_box {
  z-index: 9999;
  position: absolute;
  top: 100px;
  bottom: -250px;
  width: 200px;
  height: 520px;
  padding: 5px;
  border: 1px solid #666;
  border-radius: 4px;
  background-color: #fff;
}

.talk_foot .add_emoji_box {
  z-index: 9999;
  position: absolute;
  bottom: -250px;
  width: 400px;
  height: 240px;
  padding: 5px;
  border: 1px solid #666;
  border-radius: 4px;
  background-color: #fff;
}

.your_reply .add_emoji_box {
  top: 98px;
  left: 25px;
}

#timeline .your_reply .add_img_box {
  margin: 0 0 0 42px;
}
#timeline .post_box_menu .add_img_box {
  border-top: 1px solid #999;
  background-color: #fff;
}

.add_emoji_box::after, .add_emoji_box::before {
  position: absolute;
  bottom: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}

.add_stamp_timeline_box::after, .add_stamp_timeline_box::before {
  position: absolute;
  bottom: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}

.add_emoji_box::after,
.add_stamp_timeline_box::after {
  left: 72px;
  margin-left: -8px;
  border-width: 8px;
  border-bottom-color: #fff;
}

.add_emoji_box:before,
.add_stamp_timeline_box::before {
  left: 72px;
  margin-left: -9px;
  border-width: 9px;
  border-bottom-color: #666;
}

.post_box_menu .add_stamp_timeline_box::after, .post_box_menu .add_stamp_timeline_box::before {
  left: 124px;
}

.your_reply .add_stamp_timeline_box::after, .your_reply .add_stamp_timeline_box::before {
  left: 203px;
}

:not(#talk_detail) .add_emoji_box ul {
  display: block;
  width: 180px;
  height: 520px;
  margin: 0 auto;
  padding: 0;
  background: url("//static.gesoten.com/img/geso/emoji/emoji_all.png?v=202504021600") no-repeat;
}

#talk_detail .add_emoji_box ul {
  display: block;
  width: 400px;
  height: 240px;
  margin: 0;
  padding: 0;
  background: url("//static.gesoten.com/img/geso/emoji/emoji_all.gif?v=202504021600") no-repeat;
}

.add_emoji_box li {
  float: left;
  width: 16px;
  height: 16px;
  padding: 2px;
}
.add_emoji_box li:hover {
  padding: 1px;
  border: 1px solid #000;
}

:not(#talk_detail) .add_emoji_box .close,
:not(#talk_detail) .add_gift_box .close,
:not(#talk_detail) .add_stamp_box .close,
:not(#talk_detail) .add_stamp_timeline_box .close {
  z-index: 1;
  position: absolute;
  top: -14px;
  right: -8px;
  width: 17px;
  padding: 1px 3px;
  border: 1px solid #333;
  background: #666;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 138.5%;
  line-height: 100%;
  cursor: pointer;
}

#talk_detail .add_emoji_box .close,
#talk_detail .add_gift_box .close,
#talk_detail .add_stamp_box .close,
#talk_detail .add_stamp_timeline_box .close {
  z-index: 1;
  position: absolute;
  top: -15px;
  left: -12px;
  width: 17px;
  padding: 1px 3px;
  border: 1px solid #333;
  background: #666;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 138.5%;
  line-height: 100%;
  cursor: pointer;
}

.add_emoji_box .close:hover,
.add_gift_box .close:hover,
.add_stamp_box .close:hover,
.add_stamp_timeline_box .close:hover {
  border: 1px solid #000;
  background: #333;
}

.post_twitter img,
.post_facebook img {
  margin: 0 0 0 5px;
}

.post_box_menu .post_gesoten {
  padding: 2px 5px 0;
}
.post_box_menu .login_fb,
.post_box_menu .login_tw {
  border: none;
}
.post_box_menu .post_gesoten .btn_orange {
  display: block;
  height: 24px;
  padding: 0 18px;
}

#your_info .post_box_menu .post_gesoten .btn_orange {
  display: block;
  height: 24px;
  padding: 0 18px;
}

.post_box_menu a span,
#your_info .post_box_menu a span {
  display: none;
}

.tweet_list {
  width: 630px;
  padding: 5px 10px;
  border-bottom: 1px solid #fff;
}

.activity_setting {
  z-index: 3;
  position: absolute;
  top: 44px;
  right: 4px;
  width: 200px;
  padding: 0 6px;
  border: 1px solid #ccc;
  background: #eee;
}
.activity_setting a {
  display: block;
  height: 20px;
  color: #333;
  text-align: center;
  font-size: 85%;
  line-height: 20px;
}
.activity_setting #ActivitySetting li {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 200px;
  padding-bottom: 4px;
}
.activity_setting #ActivitySetting input[type=checkbox] {
  vertical-align: -2px;
}
.activity_setting #ActivitySetting .btn_gray {
  display: block;
  width: 80px;
  margin: 2px auto 6px;
  padding: 3px 0;
}

.tweet_list.timeline_tweet {
  background-color: #e1faff;
}
.tweet_list.timeline_activity {
  background: #ffe8f0;
}
.tweet_list .posted_user_img {
  float: left;
  clear: both;
  position: relative;
  width: 60px;
  text-align: center;
}
.tweet_list .posted_user_img img {
  width: 60px;
  border: 1px solid #fff;
}

.timeline_contents {
  padding-top: 4px;
}
.timeline_contents .timeline_contents_img {
  float: left;
  margin-right: 10px;
}
.timeline_contents .timeline_contents_img img {
  width: 70px;
}
.timeline_contents p {
  font-weight: bold;
  font-size: 100%;
}
.timeline_contents span {
  font-size: 85%;
}

.tweet_list .posted_tweet {
  float: right;
  position: relative;
  width: 566px;
  margin: 0 0 10px 0;
  padding: 8px;
  border: 3px solid #ccc;
  background-color: #fff;
}

.lt-ie8 .tweet_list .posted_tweet {
  position: static;
}

.tweet_list .posted_tweet:last-child {
  margin: 0;
}
.tweet_list .posted_tweet::after, .tweet_list .posted_tweet::before {
  position: absolute;
  right: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}
.tweet_list .posted_tweet::after {
  top: 18px;
  margin-top: 4px;
  border-width: 6px;
  border-right-color: #fff;
}
.tweet_list .posted_tweet::before {
  top: 18px;
  margin-top: 0;
  border-width: 10px;
  border-right-color: #ccc;
}
.tweet_list .replies_list .replies {
  width: 546px;
  margin: 0 0 2px;
  padding: 10px;
  background: #f4f4f4;
  font-size: 85%;
}
.tweet_list .replies_list dt {
  float: left;
  clear: both;
  width: 126px;
}
.tweet_list .replies_list dt a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  height: auto;
}
.tweet_list .replies_list dt a img {
  margin: 0 3px 0 0;
}
.tweet_list .replies_list dd {
  float: right;
  width: 420px;
  min-height: 16px;
}
.tweet_list .your_reply {
  position: relative;
  width: 556px;
  margin-bottom: 5px;
  padding: 5px;
  background: #f4f4f4;
}
.tweet_list .your_reply .user_img {
  display: block;
  display: none;
  float: left;
}
.tweet_list .your_reply .user_img img {
  width: 35px;
  height: 35px;
}
.tweet_list .your_reply textarea {
  float: right;
  overflow-y: auto;
  width: 508px !important;
  height: 15px;
  padding: 3px;
  font-size: 93%;
  resize: none;
}
.tweet_list .your_reply .btn_group {
  display: none;
  position: absolute;
  top: 65px;
  left: 50px;
  width: 320px;
}
.tweet_list .your_reply .btn_group li {
  float: left;
  margin: 0 5px 0 0;
  border: none;
}
.tweet_list .your_reply .btn_group input {
  display: block;
  margin: 2px 0 0 0;
  padding: 0 4px;
  cursor: pointer;
}
.tweet_list .your_reply .btn_group .btn_gray {
  background: #eee;
}
.tweet_list .your_reply .add_img,
.tweet_list .your_reply .add_emoji,
.tweet_list .your_reply .add_stamp_timeline {
  width: 30px;
}

.btn_group li,
#your_info .post_box .btn_group li {
  padding: 0;
}

.each_tweet_header ul.inner {
  right: 0;
}
.each_tweet_header .game_name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 140px;
  height: 16px;
}
.each_tweet_header .game_name img {
  width: 16px;
  height: 16px;
  margin: 0 2px 0 0;
}
.each_tweet_header ul li {
  display: block;
  float: left;
  height: 18px;
  line-height: 18px;
}
.each_tweet_header ul li.detail {
  float: right;
  font-size: 85%;
}
.each_tweet_header ul li.detail li {
  margin: 0 0 0 5px;
}

.each_tweet_footer {
  clear: both;
  padding: 3px 0;
  font-size: 85%;
}
.each_tweet_footer ul li {
  float: left;
  position: relative;
  height: 20px;
  padding: 0 4px 0 0;
  line-height: 20px;
}
.each_tweet_footer ul li::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 10px;
  margin: -5px 0 0 0;
  border-right: 1px solid #ccc;
  content: "";
}
.each_tweet_footer ul .game_name,
.each_tweet_footer ul .topic_name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 120px;
}
.each_tweet_footer ul .delete_option {
  float: right;
  margin: 0 !important;
  padding: 0 0;
  border: none;
}

#tweet_parent ul .delete_option {
  float: right;
  margin: 0 !important;
  padding: 0 0;
  border: none;
}

.each_tweet_footer ul .delete_option::after,
#tweet_parent ul .delete_option::after {
  display: none;
}

.each_tweet_footer ul .delete_option input,
#tweet_parent ul .delete_option input {
  display: block;
  height: 20px;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  box-shadow: none;
  color: #08c;
  font-size: 100%;
  font-family: Meiryo, "MS PGothic", arial, sans-serif;
  line-height: 20px;
}

.each_tweet_footer .game_name img {
  display: block;
  float: left;
  width: 16px;
  height: 16px;
  margin: 2px 3px 0 0;
}
.each_tweet_footer .go_farm {
  margin: 0 !important;
}
.each_tweet_footer .go_farm a {
  padding: 0 0 0 18px;
  background: url("//static.gesoten.com/img/icon_tomachi_1616.png?v=202504021600") no-repeat 0 50%;
  font-weight: bold;
}
.each_tweet_footer ul li:first-child {
  margin: 0 5px 0 0;
}
.each_tweet_footer ul li:last-child {
  border: none;
}

.each_tweet_header .user_name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  float: left;
  width: 250px;
  font-weight: bold;
}

#tweet_parent .each_tweet_header .user_name {
  width: 488px;
}

.each_tweet_header .more_cmts {
  width: 130px;
  margin: 0 0 0 5px;
  padding: 0 0 0 6px;
  background: url("//static.gesoten.com/img/icon_arrow_mini.png?v=202504021600") no-repeat 0 50%;
}
.each_tweet_header .post_td {
  padding: 0 0 0 0;
  border: none;
}
.each_tweet_header .reply_to {
  padding: 0 0 0 16px;
  border: none;
  background: url("//static.gesoten.com/img/icon_reply.png?v=202504021600") no-repeat 0 50%;
}
.each_tweet_header .reply_to a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  max-width: 120px;
}

.posted_tweet p {
  word-break: break-all;
  font-size: 14px;
  line-height: 20px;
}

#tweet_parent dt {
  float: left;
}
#tweet_parent .posted_user_img {
  float: left;
  width: 100px;
}
#tweet_parent .posted_user_img img {
  display: block;
  width: 100px;
}
#tweet_parent .posted_tweet {
  float: right;
  position: relative;
  width: 510px;
  margin: 0 0 10px 0;
  padding: 10px 10px 2px;
  border: 3px solid #ccc;
}
#tweet_parent .posted_tweet:last-child {
  margin: 0;
}
#tweet_parent .posted_tweet::after, #tweet_parent .posted_tweet::before {
  position: absolute;
  right: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  content: " ";
  pointer-events: none;
}
#tweet_parent .posted_tweet::after {
  top: 18px;
  margin-top: -6px;
  border-width: 6px;
  border-right-color: #fff;
}
#tweet_parent .posted_tweet::before {
  top: 18px;
  margin-top: -10px;
  border-width: 10px;
  border-right-color: #ccc;
}

.clicked {
  font-weight: bold !important;
}

#timeline .tab {
  position: absolute;
  top: -27px;
  left: 0;
  padding: 0 0 0 10px;
}
#timeline .tab li {
  width: 120px;
}

#friend_tweets,
#your_tweets,
#reply_tweets {
  display: none;
}

.c-tl-container__empty {
  margin: 20px auto 20px;
  text-align: center;
}

.c-tl-container__empty-text {
  margin-bottom: 20px;
}

#reply_tweets .posted_tweet .show_large {
  width: 60px;
}

.posted_tweet .show_large {
  display: block;
  float: left;
  overflow: hidden;
  width: 100px;
  padding: 3px;
  border: 1px solid #bbb;
  background-color: #fff;
}
.posted_tweet .show_large:hover {
  border: 1px solid #666;
}
.posted_tweet .show_large img {
  display: block;
  width: 100%;
}

/* @end */
/* 大切なお知らせ */
.c-pickup-message {
  position: relative;
}
.c-pickup-message:hover {
  opacity: 0.7;
}
.c-pickup-message {
  font-size: 14px;
  padding: 12px 8px;
}
.c-pickup-message > a {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  color: #222;
}
.c-pickup-message .pickup-badge {
  font-size: 12px;
  display: inline-block;
  margin-right: 8px;
  padding: 4px 6px;
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  vertical-align: baseline;
}

.c-header {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  position: relative;
  height: 100%;
  background-color: #fff;
}
.c-header #talk_wrap {
  top: 80px;
  right: 2px;
}
.c-header__l-left {
  display: flex;
  align-items: center;
  width: 456px;
  height: 100%;
}
.c-header__l-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 540px;
  height: 100%;
}
.c-header__logo {
  height: 100%;
  margin-right: 16px;
}
.c-header__logo > a {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 92px;
  height: 100%;
}
.c-header__logo > a > img {
  display: block;
  width: 100%;
}
.c-header__l-menu {
  height: 100%;
}
.c-header__l-user-info {
  margin-right: 16px;
}
.c-header__netcafe {
  position: absolute;
  top: 20px;
  right: -104px;
  line-height: 1.2;
}

.c-header-menu {
  display: flex;
  flex: 1;
  width: 348px;
}
.c-header-menu li {
  position: relative;
  width: 116px;
  height: 100%;
  padding: 16px 4px;
}

.c-header-menu-item {
  display: block;
  position: relative;
  padding: 16px 12px;
  border-radius: 3px;
  text-align: center;
  line-height: 1;
}
.c-header-menu-item__title {
  font-weight: bold;
  font-size: 14px;
  color: #333;
  line-height: 1.6;
}
.c-header-menu-item__selected {
  background-color: #eee;
}
.c-header-menu-item:hover {
  background-color: #eee;
}
.c-header-menu-item .balloon-odekake-time {
  display: none;
  position: absolute;
  top: -10px;
  left: -16px;
  width: 140px;
}
.c-header-menu-item .balloon-odekake-time__item {
  font-size: 10px;
  position: relative;
  padding-top: 3px;
  padding-bottom: 3px;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(34, 34, 34, 0.2);
  color: #222;
  text-align: center;
}
.c-header-menu-item .balloon-odekake-time__item::before, .c-header-menu-item .balloon-odekake-time__item::after {
  background-color: #fff;
}
.c-header-menu-item .balloon-odekake-time__item::before {
  z-index: 1;
  display: block;
  position: absolute;
  bottom: -2px;
  left: 50%; /* 位置 */
  width: 12px;
  height: 12px;
  box-shadow: 0 1px 2px rgba(34, 34, 34, 0.2);
  content: "";
  -webkit-transform: translateX(-50%) rotate(45deg) skew(10deg, 10deg);
          transform: translateX(-50%) rotate(45deg) skew(10deg, 10deg); /* 傾斜角(skew) */
}
.c-header-menu-item .balloon-odekake-time__item::after {
  z-index: 2;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  content: "";
}
.c-header-menu-item .balloon-odekake-time__item > span {
  z-index: 3;
  display: block;
  position: relative;
}
.c-header-menu-item:hover .balloon-odekake-time {
  display: block;
}

.c-header-user-info {
  display: flex;
  flex: 1;
  position: relative;
  padding: 6px 0;
  border-radius: 2px;
  box-shadow: inset 0 0 2px rgba(51, 51, 51, 0.3);
}
.c-header-user-info__l-balloon {
  position: absolute;
  top: -20px;
  width: 100%;
}
.c-header-user-info__l-balloon .balloon {
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  font-size: 10px;
}
.c-header-user-info__l-balloon .balloon::before {
  display: block;
  position: absolute;
  bottom: -6px;
  left: calc(50% - 3.6px);
  border-top: 6px solid #ff5a5f;
  border-right: 3.6px solid transparent;
  border-left: 3.6px solid transparent;
  content: "";
}
.c-header-user-info__l-balloon .balloon {
  display: inline-block;
  position: relative;
  padding: 2px 4px;
}
.c-header-user-info__item {
  display: flex;
  margin-right: 8px;
}
.c-header-user-info__item-owned {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 8px;
}
.c-header-user-info__item-owned > a {
  font-size: 14px;
  color: #333;
}
.c-header-user-info__item-owned--coin, .c-header-user-info__item-owned--egg {
  min-width: 80px;
}
.c-header-user-info__item-owned--coin > a::before, .c-header-user-info__item-owned--egg > a::before {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 6px;
  background-size: 100%;
  background-repeat: no-repeat;
  content: "";
  vertical-align: sub;
}
.c-header-user-info__item-owned--coin > a::before {
  background-image: url("/gesolite/pc/img/ap-gesoten/core/icon/gesocoin-20.png?v=202504021600");
}
.c-header-user-info__item-owned--egg > a::before {
  background-image: url("/gesolite/pc/img/ap-gesoten/core/icon/egg-20.png?v=202504021600");
}
.c-header-user-info__l-item-btn {
  position: relative;
}
.c-header-user-info__l-item-btn--coin {
  width: 64px;
}
.c-header-user-info__l-item-btn--egg {
  width: 40px;
  margin-left: 2px;
}
.c-header-user-info__l-item-btn .balloon-badge-limited {
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  font-size: 10px;
}
.c-header-user-info__l-item-btn .balloon-badge-limited::before {
  display: block;
  position: absolute;
  top: -6px;
  left: calc(50% - 3.6px);
  border-right: 3.6px solid transparent;
  border-bottom: 6px solid #ff5a5f;
  border-left: 3.6px solid transparent;
  content: "";
}
.c-header-user-info__l-item-btn .balloon-badge-limited {
  display: block;
  position: absolute;
  bottom: -22px;
  width: 100px;
  padding: 2px 0;
  text-align: center;
}
.c-header-user-info__l-item-btn .balloon-badge-limited--coin {
  left: -16px;
}
.c-header-user-info__l-item-btn .balloon-badge-limited--egg {
  left: -29px;
}
.c-header-user-info__item-btn {
  font-size: 12px;
  display: table;
  width: 100%;
  height: 26px;
  border-radius: 3px;
  text-align: center;
  line-height: 24px;
}
.c-header-user-info__item-btn--coin {
  position: absolute;
  background-color: #ff9600;
  color: #fff;
}
.c-header-user-info__item-btn--coin:hover {
  background-color: #ffb542;
  color: #fff;
}
.c-header-user-info__item-btn--return {
  position: absolute;
  background-color: #f2f2f2;
  color: #222;
}
.c-header-user-info__item-btn--return:hover {
  background-color: #ececec;
  color: #222;
}
.c-header-user-info__item-btn--egg {
  background-color: #f2f2f2;
  color: #222;
}
.c-header-user-info__item-btn--egg:hover {
  color: #222;
  opacity: 0.7;
}

.c-header-contents {
  display: flex;
  justify-content: space-between;
  width: 156px;
}
.c-header-contents__item {
  position: relative;
  width: 60px;
  height: 36px;
}
.c-header-contents__item #show_talk,
.c-header-contents__item #show_talk_ie {
  position: relative;
  top: 0;
  left: 0;
}
.c-header-contents__item .balloon-badge-bingo {
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  font-size: 10px;
}
.c-header-contents__item .balloon-badge-bingo::before {
  display: block;
  position: absolute;
  bottom: -6px;
  left: calc(50% - 3.6px);
  border-top: 6px solid #ff5a5f;
  border-right: 3.6px solid transparent;
  border-left: 3.6px solid transparent;
  content: "";
}
.c-header-contents__item .balloon-badge-bingo {
  display: block;
  position: absolute;
  top: -20px;
  left: -20px;
  width: 94px;
  padding: 2px 0;
  text-align: center;
}
.c-header-contents__menu:hover {
  opacity: 0.7;
}
.c-header-contents__menu {
  position: relative;
  width: 20px;
  height: 16px;
  margin-left: 4px;
  padding: 8px 0;
}
.c-header-contents__menu-icon, .c-header-contents__menu-close-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-bottom: 8px;
}
.c-header-contents__menu-icon > img, .c-header-contents__menu-close-icon > img {
  display: inline-block;
  width: 100%;
  height: auto;
}
.c-header-contents__menu-close-icon {
  display: none;
}
.c-header-contents__menu-list {
  z-index: 501;
  display: none;
  position: absolute;
  top: 64px;
  right: 0;
  padding: 8px;
  border-radius: block-align-center;
  background-color: #fff;
  box-shadow: 0 1px 2px rgba(34, 34, 34, 0.2);
}
.c-header-contents__menu-list li {
  font-size: 14px;
  display: block;
  width: 120px;
  height: 30px;
  padding: 0 10px;
  color: #222;
  text-align: center;
  line-height: 30px;
}
.c-header-contents__menu-list li:not(:last-child) {
  border-bottom: 1px dashed #ddd;
}
.c-header-contents__menu-list li a:hover {
  color: #0086e5;
  text-decoration: underline;
}
.c-header-contents__item-bingo:hover {
  opacity: 0.7;
}
.c-header-contents__item-bingo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  border-radius: 2px;
  background-color: #c0e1f2;
}
.c-header-contents__item-bingo > img {
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: 42px;
  height: auto;
}
.c-header-contents__item-talk:hover {
  opacity: 0.7;
}
.c-header-contents__item-talk#show_talk {
  width: 100%;
  height: 100%;
}
.c-header-contents__item-talk#show_talk > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 100%;
  border: 0;
  border-radius: 2px;
  background-color: #ceed99;
  line-height: 1;
}
.c-header-contents__item-talk#show_talk > a > img {
  width: 42px;
  height: auto;
  background-image: none;
}
.c-header-contents__item-talk#show_talk > a > span {
  font-weight: bold;
  font-size: 12px;
  position: absolute;
  top: -8px;
  right: -4px;
  padding: 3px 6px;
  border: none;
  border-radius: 9px;
  background-color: #ff5a5f;
  color: #fff;
}

.c-header-netcafe:hover {
  opacity: 0.7;
}
.c-header-netcafe {
  display: block;
  height: 38px;
  padding: 0 4px;
  border: 1px solid #ddd;
  border-radius: 2px;
  background-color: #fff;
  color: #0086e5;
  text-align: center;
}
.c-header-netcafe__caption {
  font-size: 10px;
  display: inline-block;
  margin-bottom: 2px;
}
.c-header-netcafe__title {
  font-size: 16px;
}

.c-header-login-area {
  display: flex;
  justify-content: space-between;
  width: 248px;
}
.c-header-login-area__item {
  width: 116px;
}
.c-header-login-area__item .btn-action,
.c-header-login-area__item .btn-default {
  padding: 10px 0;
}

/* エッグ獲得通知 汎用的にしておく */
.c-header-notice {
  z-index: 1;
  display: table;
  overflow: hidden;
  position: absolute;
  top: 20px;
  right: 20px;
  padding: 16px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(51, 51, 51, 0.3);
  -webkit-animation: slideLeft 7s 0s ease-in-out 1 forwards;
  animation: slideLeft 7s 0s ease-in-out 1 forwards;
}
.c-header-notice[data-animation=finished] {
  display: none;
}
.c-header-notice__image {
  display: table-cell;
  vertical-align: middle;
}
.c-header-notice__image img {
  width: 36px;
  height: 36px;
  margin-right: 8px;
}
.c-header-notice__content {
  display: table-cell;
  vertical-align: middle;
}
.c-header-notice__desc {
  font-size: 14px;
  color: #333;
}
.c-header-notice__desc strong {
  font-weight: bold;
  font-size: 16px;
}
.c-header-notice__close {
  font-size: 11px;
  position: absolute;
  top: 6px;
  right: 6px;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background-color: #ddd;
  color: #666;
  text-align: center;
  line-height: 14px;
  cursor: pointer;
}

@keyframes slideLeft {
  0%, 100% {
    -webkit-transform: translateX(304px);
            transform: translateX(304px);
  }
  10%, 90% {
    -webkit-transform: translateX(-10px);
            transform: translateX(-10px);
  }
}
@-webkit-keyframes slideLeft {
  0%, 100% {
    -webkit-transform: translateX(304px);
  }
  10%, 90% {
    -webkit-transform: translateX(-10px);
  }
}
/* PR枠 */
.pr-frame {
  margin: 20px auto 0;
  text-align: center;
}
.pr-frame p {
  width: 730px;
  margin: 0 auto 5px;
  padding: 3px 0;
  background-color: #f0f0f0;
}

/* リニューアル後の広告枠 */
.c-pr-widesuper {
  margin-right: auto;
  margin-left: auto;
  display: flex;
  width: 748px;
  height: 90px;
  text-align: center;
}
.c-pr-widesuper__contents {
  width: calc(748px - 20px);
  height: 90px;
  background-color: #f6f6f6;
}
.c-pr-widesuper__notice {
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 90px;
  background-color: #f6f6f6;
  color: #666;
  text-align: center;
}
.c-pr-widesuper--reward {
  margin-right: auto;
  margin-left: auto;
  height: 106px;
  padding-top: 16px;
}
.c-pr-widesuper--top {
  height: 138px;
  padding-bottom: 48px;
}

.c-pr-wrap {
  margin-right: auto;
  margin-left: auto;
  width: 1000px;
  background-color: #fff;
}

.c-pr {
  display: block;
  text-align: center;
}
.c-pr__contents {
  background-color: #f6f6f6;
}
.c-pr__notice {
  font-size: 12px;
  background-color: #f6f6f6;
  color: #666;
  text-align: center;
}
.c-pr--rectangle {
  margin-right: auto;
  margin-left: auto;
  width: 300px;
  margin-bottom: 16px;
}
.c-pr--rectangle .c-pr__contents {
  width: 300px;
  height: 250px;
}
.c-pr--rectangle .c-pr__notice {
  width: 300px;
  height: 20px;
  padding-top: 4px;
}
.c-pr--wideskyscraper {
  margin-right: auto;
  margin-left: auto;
  width: 300px;
  margin-bottom: 32px;
}
.c-pr--wideskyscraper .c-pr__contents {
  width: 300px;
  height: 600px;
}
.c-pr--wideskyscraper .c-pr__notice {
  width: 300px;
  height: 20px;
  padding-top: 4px;
}

.c-reward-aside-wrapper {
  position: relative;
  margin-bottom: 16px;
}

.c-reward-aside-login {
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(34, 34, 34, 0.6);
}
.c-reward-aside-login__lead {
  font-weight: bold;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  color: #fff;
  text-align: center;
  line-height: 1.4;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-reward-aside-login__lead > a {
  color: inherit;
  text-decoration: underline;
}
.c-reward-aside-login__lead > a:hover {
  text-decoration: none;
}

.c-reward-aside {
  background-color: #f6f6f6;
}
.c-reward-aside__l-header {
  padding: 16px;
}
.c-reward-aside__title {
  display: inline-block;
  vertical-align: top;
  font-weight: bold;
  font-size: 16px;
}
.c-reward-aside__help {
  display: inline-block;
  top: 8px;
  right: 8px;
  width: 18px;
  height: 18px;
  margin-left: 4px;
  border-radius: 50px;
  background-color: #ccc;
  color: #fff;
  text-align: center;
  line-height: 18px;
  cursor: pointer;
}
.c-reward-aside__l-body {
  margin: 0 16px;
  padding-bottom: 16px;
}
.c-reward-aside__l-inner-color {
  padding: 16px;
  background-color: #e4e4e4;
}
.c-reward-aside__l-inner-color a {
  color: #222;
  text-decoration: underline;
}
.c-reward-aside__l-inner-color a:hover {
  text-decoration: none;
}
.c-reward-aside__lead {
  font-size: 14px;
  line-height: 1.4;
}
.c-reward-aside__lead--center {
  text-align: center;
}
.c-reward-aside__prosession {
  font-weight: bold;
  font-size: 16px;
  padding: 14px 32px 14px 14px;
  border-radius: 2px;
  background-color: #fff;
  box-shadow: inset 0 0 2px rgba(34, 34, 34, 0.3);
}
.c-reward-aside__prosession--egg::before {
  display: inline-block;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/egg-20.png?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: middle;
}
.c-reward-aside__prosession--point::before {
  display: inline-block;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/sp/img/ap-gesoten/core/svg/towncoin.svg?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: middle;
}
.c-reward-aside + .c-reward-aside {
  border-top: 1px solid #e4e4e4;
}
.c-reward-aside__l-btn {
  padding: 0 16px 16px;
}
.c-reward-aside__l-btn.cols2 {
  display: flex;
  flex-wrap: wrap;
}
.c-reward-aside__l-btn.cols2 > .c-reward-aside__btn {
  width: calc((99.9999% - 1 * 8px) / 2);
  margin-bottom: 8px;
}
.c-reward-aside__l-btn.cols2 > .c-reward-aside__btn:not(:nth-child(2n)) {
  margin-right: 8px;
}
.c-reward-aside__l-btn.cols2 > .c-reward-aside__btn:nth-child(2n+1):nth-last-child(-n+2), .c-reward-aside__l-btn.cols2 > .c-reward-aside__btn:nth-child(2n+1):nth-last-child(-n+2) ~ .c-reward-aside__btn {
  margin-bottom: 0;
}
.c-reward-aside__btn:hover {
  opacity: 0.7;
}
.c-reward-aside__btn {
  display: block;
  padding: 14px 0;
  border: 1px solid #e4e4e4;
  background-color: #fff;
  color: #0086e5;
  text-align: center;
}

.c-reward-nav-main {
  display: flex;
  flex-wrap: wrap;
}
.c-reward-nav-main > .c-reward-nav-main__item {
  width: calc((99.9999% - 3 * 2px) / 4);
  margin-bottom: 2px;
}
.c-reward-nav-main > .c-reward-nav-main__item:not(:nth-child(4n)) {
  margin-right: 2px;
}
.c-reward-nav-main > .c-reward-nav-main__item:nth-child(4n+1):nth-last-child(-n+4), .c-reward-nav-main > .c-reward-nav-main__item:nth-child(4n+1):nth-last-child(-n+4) ~ .c-reward-nav-main__item {
  margin-bottom: 0;
}
.c-reward-nav-main__item {
  position: relative;
}
.c-reward-nav-main__item:first-child {
  border-radius: 2px 0 0 2px;
}
.c-reward-nav-main__item:last-child {
  border-radius: 0 2px 2px 0;
}
.c-reward-nav-main__item > a {
  font-weight: bold;
  font-size: 16px;
  display: block;
  width: 100%;
  height: 100%;
  padding: 24px 0;
  background-color: #e4e4e4;
  color: #222;
  text-align: center;
}
.c-reward-nav-main__item > a:hover {
  background-color: #ff9600;
  color: #fff;
}
.c-reward-nav-main__item--active > a {
  background-color: #ff9600;
  color: #fff;
}

.balloon-badge-entry {
  border-radius: 2px;
  background-color: #ff5a5f;
  color: #fff;
  font-size: 10px;
}
.balloon-badge-entry::before {
  display: block;
  position: absolute;
  bottom: -6px;
  left: calc(50% - 3.6px);
  border-top: 6px solid #ff5a5f;
  border-right: 3.6px solid transparent;
  border-left: 3.6px solid transparent;
  content: "";
}
.balloon-badge-entry {
  margin-right: auto;
  margin-left: auto;
  font-weight: bold;
  font-size: 12px;
  display: block;
  position: absolute;
  top: -15px;
  right: 0;
  left: 0;
  width: 120px;
  padding: 4px 8px;
  text-align: center;
  line-height: 1.2;
}

.c-reward-login {
  padding: 36px 0;
  background-color: #f6f6f6;
  text-align: center;
}
.c-reward-login__title {
  padding-bottom: 16px;
}
.c-reward-login__img {
  padding-bottom: 36px;
}
.c-reward-login__l-btn {
  margin-right: auto;
  margin-left: auto;
  width: 400px;
}
.c-reward-login__btn:hover {
  opacity: 0.7;
}
.c-reward-login__btn {
  font-weight: bold;
  font-size: 16px;
  display: block;
  padding: 20px 0;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}
.c-reward-login__btn:hover {
  color: #fff;
}

.c-egg-bnr {
  display: block;
}
.c-egg-bnr img {
  width: 100%;
  height: auto;
}

/* 旧リワード（_old-components.scssより移管） */
/* kizuna status */
#reward #wrapper {
  margin: 0 auto;
  padding: 12px 0 40px;
}
#reward i {
  font-weight: normal;
}

#reward_inner {
  width: 972px;
  margin: 0 13px;
  background: url("//static.gesoten.com/img/reward/bg_reward.png?v=202504021600") repeat-y;
}

.header_reward_s a:hover {
  text-decoration: none;
}

.header_reward_s .backto_reward_top {
  display: block;
  float: right;
  margin: 35px 5px 0 0;
  color: #fff;
  text-align: center;
}
.header_reward_s .backto_reward_top:hover {
  background: #60220e;
}

#reward_content_05 {
  position: relative;
  width: 956px;
  height: auto;
  min-height: 400px;
  margin: 0 0 0 8px;
  padding: 40px 0;
  background: #f6ead2;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  text-align: center;
}

#reward h2 {
  width: 210px;
  height: 33px;
  padding: 23px 0 0 70px;
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  font-weight: bold;
  font-size: 131%;
}

.header_reward_s {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 10px 8px 0;
}
.header_reward_s .reward_balance {
  overflow: hidden;
  width: 630px;
  height: 60px;
  margin: 0 0 10px;
  border: 1px solid #000;
  border-radius: 4px;
  background: #3c0a00;
}
.header_reward_s .egg_count {
  float: left;
  width: 369px;
  padding: 6px 0 0 6px;
  color: #fff;
  font-weight: bold;
  font-size: 239%;
}
.header_reward_s .egg_count img {
  width: 40px;
  height: 47px;
  margin: 0 4px 0 0;
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat 0 -478px;
  vertical-align: -11px;
}

.reward_egg-get {
  width: 304px;
}
.reward_egg-get img {
  width: 100%;
  border-radius: 8px;
}

.error_notice {
  margin: 0 8px 10px;
  padding: 4px 6px;
  border: 1px solid #f07878;
  background: #fff0f0;
  color: #f00;
  font-weight: bold;
  font-size: 116%;
}

.reward_exchange_nav {
  margin: 0 8px 10px;
  padding: 8px;
  border: 1px solid #6e3624;
  background: rgba(255, 255, 255, 0.9);
  background-color: #fff;
  font-weight: bold;
  font-size: 116%;
}
.reward_exchange_nav span,
.reward_exchange_nav a {
  margin: 0 20px 0 0;
}

.reward_exchange {
  overflow: hidden;
  width: 966px;
  margin: 0 0 0 8px;
  padding: 0 0 20px;
}
.reward_exchange a:hover {
  text-decoration: none;
}

.reward_notice {
  margin: 0 8px;
  padding: 10px 12px;
  background-color: #fff;
}

.reward_exchange_wm_requirement {
  margin: 0 0 8px 0;
  padding: 10px 12px;
  background-color: #fff;
}
.reward_exchange_wm_requirement p {
  padding: 0 0 4px;
}
.reward_exchange_wm_requirement .left,
.reward_exchange_wm_requirement .right {
  width: 134px;
}
.reward_exchange_wm_requirement .btn_red_gold {
  display: block;
  height: 28px;
  border-radius: 2px;
  text-align: center;
  line-height: 28px;
}

.reward_exchange_tit {
  width: 300px;
  height: 70px;
  margin: 0 auto;
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  font-weight: bold;
  font-size: 146.5%;
  line-height: 71px;
}

.reward_exchange_tit img {
  width: 50px;
  height: 50px;
  margin: 0 6px 0 20px;
  vertical-align: -18px;
}

.reward_exchange_tit_bottom {
  width: 300px;
  height: 0;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
}

.reward_exchange ul {
  box-shadow: 0 10px 6px rgba(0, 0, 0, 0.3);
}
.reward_exchange li {
  padding: 8px 10px;
}
.reward_exchange li:last-child {
  border-bottom: 0;
}
.reward_exchange li a {
  color: #333;
}

.reward_exchange table {
  width: 100%;
}
.reward_exchange table th,
.reward_exchange table td {
  vertical-align: middle;
}

.reward_exchange table th {
  width: 69px;
  background-color: #fff;
}
.reward_exchange table td {
  height: 20px;
  padding: 8px 4px;
  line-height: 20px;
}

.reward_exchange_amount {
  width: 88px;
  background-color: #fff;
  color: #000;
  text-align: right;
  font-weight: bold;
  font-size: 131%;
}

.icon_reward_egg,
.icon_reward_wm,
.icon_reward_gc,
.icon_reward_vc,
.icon_reward_vp {
  width: 26px;
  height: 26px;
  margin: 0 4px 0 0;
  vertical-align: -6px;
}

.reward_exchange table .icon_reward_egg,
.reward_exchange table .icon_reward_wm,
.reward_exchange table .icon_reward_gc,
.reward_exchange table .icon_reward_vc,
.reward_exchange table .icon_reward_vp {
  margin: 0 0 0 4px;
}

.icon_reward_egg {
  width: 22px;
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -40px -478px;
}

.icon_reward_wm {
  width: 29px;
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -62px -478px;
}

.icon_reward_gc {
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -91px -478px;
}

.icon_reward_vc {
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -117px -478px;
}

.icon_reward_vp {
  width: 69px;
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -143px -478px;
}

.reward_exchange .btn_vivid_orange,
.reward_exchange .btn_vivid_orange_off {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
  letter-spacing: -0.3em;
  line-height: 40px;
}

.reward_exchange_bonus {
  padding: 4px 0 3px;
  border: 2px dashed #f07878;
  background: #fff0f0;
  color: #f00;
  text-align: center;
  font-weight: bold;
  font-size: 131%;
}

.reward_exchange_bonus_camp {
  margin: 4px 0 0;
  padding: 4px 0 3px;
  border: 2px solid #f07878;
  background: #f00;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 131%;
}

.reward_other {
  padding: 20px 0 40px;
}
.reward_other h3 {
  padding: 0 0 20px;
  font-weight: bold;
  font-size: 131%;
}
.reward_other p {
  width: 660px;
  margin: 0 auto 14px;
  padding: 20px;
  background-color: #fff;
  line-height: 2.4;
}
.reward_other p span {
  margin: 0 6px 0 0;
  color: #000;
  font-weight: bold;
  font-size: 131%;
}
.reward_other .btn_vivid_orange {
  display: block;
  width: 200px;
  margin: 0 auto;
  padding: 12px 0;
  border-radius: 4px;
  font-size: 131%;
}

/* エッグ交換カテゴリ列（reward.css より移管） */
.reward_exchange_02,
.reward_exchange_04 {
  float: left;
  width: 312px;
  margin: 0 10px 40px 0;
}

.reward_exchange_02 .reward_exchange_tit {
  background: #38b4cc;
}
.reward_exchange_02 .reward_exchange_tit img {
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -50px -428px;
}
.reward_exchange_02 .reward_exchange_tit_bottom {
  border-bottom: 8px solid #6ec8da;
}
.reward_exchange_02 li {
  border-bottom: 1px solid #9dbac0;
  background: #c4e9f0;
}
.reward_exchange_02 table th,
.reward_exchange_02 table td {
  border-top: 4px solid #c4e9f0;
  border-bottom: 4px solid #c4e9f0;
}

.reward_exchange_04 .reward_exchange_tit {
  background: #fa5078;
}
.reward_exchange_04 .reward_exchange_tit img {
  width: 114px;
  margin: 0 6px 0 10px;
  background: url("//static.gesoten.com/img/reward/sprite_reward.png?v=202504021600") no-repeat -150px -428px;
}
.reward_exchange_04 .reward_exchange_tit_bottom {
  border-bottom: 8px solid #ff90aa;
}
.reward_exchange_04 li {
  border-bottom: 1px solid #ccb0b5;
  background: #ffdce2;
}
.reward_exchange_04 table th,
.reward_exchange_04 table td {
  border-top: 4px solid #ffdce2;
  border-bottom: 4px solid #ffdce2;
}

.c-sec:not(:last-child) {
  margin-bottom: 40px;
}
.c-sec__l-header {
  margin-bottom: 16px;
}
.c-sec__l-body {
  margin-bottom: 16px;
}
.c-sec__l-bottom {
  padding-bottom: 12px;
}
.c-sec__l-inner {
  padding: 12px;
}
.c-sec__l-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.c-sec__ttl {
  font-weight: bold;
  font-size: 20px;
  padding: 16px 8px;
  border-left: 4px solid #00b4d8;
  background-color: #f6f6f6;
  vertical-align: baseline;
  line-height: 1.4;
}
.c-sec__sub-ttl {
  font-weight: bold;
  font-size: 16px;
}
.c-sec__lead {
  font-size: 14px;
  padding-bottom: 4px;
}
.c-sec__lead > span {
  color: #ff3232;
}
.c-sec__text-link {
  font-size: 16px;
  margin-top: 16px;
  text-align: center;
}
.c-sec__sub-text-link {
  font-size: 14px;
}
.c-sec__sub-text-link > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-sec__sub-text-link > a {
  display: inline-block;
  color: #0094f3;
}
.c-sec__l-img > img {
  width: 100%;
}
.c-sec__ttl-icon {
  display: inline-block;
  margin-right: 8px;
}
.c-sec__ttl-icon > img {
  width: 20px;
  height: auto;
}

.c-sec-2 {
  color: #333;
}
.c-sec-2--mb40 {
  margin-bottom: 40px;
}
.c-sec-2__container {
  display: flex;
  flex-direction: column;
  border-radius: 8px;
  gap: 8px;
}
.c-sec-2__container--campaign {
  padding: 16px;
  background: linear-gradient(180deg, rgb(224, 246, 252) 0%, rgb(177, 232, 246) 100%);
}
.c-sec-2__l-header {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
.c-sec-2__l-innner--fill {
  padding: 12px;
  border-radius: 8px;
  background-color: #e0f6fc;
}
.c-sec-2__l-block--mb16 {
  margin-bottom: 16px;
}
.c-sec-2__l-ttl--horizontal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.c-sec-2__l-ttl > a {
  display: flex;
  align-items: center;
  gap: 4px;
}
.c-sec-2__l-ttl > img {
  width: 18px;
}
.c-sec-2__ttl {
  font-weight: bold;
  font-size: 20px;
}
.c-sec-2__sub-ttl {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 4px;
}
.c-sec-2__ttl-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-right: 8px;
  border-radius: 30px;
  background-color: #fff;
}
.c-sec-2__ttl-icon > img {
  width: 30px;
  height: auto;
}
.c-sec-2__ttl-icon--fill {
  background-color: #e0f6fc;
}
.c-sec-2__more-link {
  font-weight: bold;
  font-size: 16px;
  color: #00b4d8;
}
.c-sec-2__more-link:hover {
  color: #00b4d8;
  opacity: 0.8;
}
.c-sec-2__l-body {
  display: flex;
  flex-wrap: wrap;
  padding-top: 16px;
  gap: 10px;
}

.c-side-mtp-link {
  padding-top: 12px;
}
.c-side-mtp-link img {
  max-width: 100%;
}
.c-side-mtp-link p {
  font-size: 12px;
  padding-top: 4px;
  line-height: 1.4;
}

/*
今後c-secに移行
c-sectionは解体していく 202307
*/
/* ゲソPCのメインとなるレイアウト
  いろんなページに影響するので変更する際は注意してください。
*/
.c-section {
  background-color: #f6f6f6;
}
.c-section--relative {
  position: relative;
}
.c-section--bnr-list {
  background-color: #fff;
}
.c-section--site-mission {
  padding-bottom: 20px;
}
.c-section--site-mission + .c-section--site-recommend {
  margin-top: 28px;
}
.c-section--site-game {
  width: 980px;
  margin-right: auto;
  margin-left: auto;
  margin-right: auto;
  margin-left: auto;
  margin-top: 20px;
}
.c-section {
  /* 3ステップリストページ c-section背景なし */
}
.c-section--no-bg {
  background-color: transparent;
}
.l-main__l-aside > .c-section + .c-section--top-border {
  margin-top: 0;
  border-top: 1px solid #e4e4e4;
}
.l-main__l-contents > .c-section + .c-section {
  margin-top: 24px;
}
.c-section__l-header {
  position: relative;
}
.l-main__l-aside .c-section__l-header {
  padding: 12px;
}
.l-main__l-contents .c-section__l-header, .l-main__l-single-col .c-section__l-header {
  padding: 16px 16px 12px;
}
.c-section__l-body {
  margin: 0 12px;
  padding-bottom: 12px;
}
.c-section__l-inner-color {
  padding: 16px;
  background-color: #e4e4e4;
}
.c-section__l-inner-color a {
  color: #222;
  text-decoration: underline;
}
.c-section__l-inner-color a:hover {
  text-decoration: none;
}
.c-section__l-footer {
  padding: 0 0 16px;
  border: 0;
  background: inherit;
  text-align: center;
}
.c-section__more::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-section__more:hover {
  opacity: 0.7;
}
.c-section__more {
  font-size: 14px;
  color: #0086e5;
}
.c-section__title {
  display: inline-block;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.4;
}
.l-main__l-aside .c-section__title {
  font-size: 16px;
}
.c-section__title--clamp {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.c-section__title-icon {
  display: inline-block;
  margin-right: 8px;
}
.c-section__title-icon > img {
  display: inline-block;
  width: 20px;
  height: auto;
}
.c-section__title-icon--help {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 4px;
  border-radius: 50px;
  background-color: #ccc;
  color: #fff;
  vertical-align: top;
  text-align: center;
  line-height: 18px;
}
.c-section__title-btn-link {
  position: absolute;
  top: calc(50% - 12px);
  right: 16px;
}
.c-section__title-btn-link > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-section__title-btn-link > a:hover {
  background-color: #eaf5fb;
}
.c-section__title-btn-link > a {
  display: inline-block;
  padding: 8px;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  background-color: #fff;
  color: #0086e5;
}
.c-section__title-text-link {
  position: absolute;
  top: calc(50% - 8px);
  right: 16px;
}
.c-section__title-text-link > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-section__title-text-link > a:hover {
  opacity: 0.7;
}
.c-section__title-text-link > a {
  display: inline-block;
  color: #0086e5;
}
.c-section__title-option {
  display: inline-block;
  margin-left: 8px;
  color: #666;
}
.c-section__lead {
  font-size: 14px;
  line-height: 1.4;
}
.c-section__lead--center {
  text-align: center;
}
.c-section__lead--left {
  text-align: left;
}
.c-section__bnr {
  text-align: center;
}
.c-section__bnr a,
.c-section__bnr img {
  display: block;
}
.c-section__bnr img {
  margin-right: auto;
  margin-left: auto;
  max-width: 100%;
}
.c-section__more-button {
  padding-bottom: 24px;
}
.c-section__more-button > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-section__more-button > a {
  margin-right: auto;
  margin-left: auto;
  display: block;
  max-width: 360px;
  padding: 16px 0;
  border: 1px solid #ddd;
  border-radius: 2px;
  background-color: #fff;
  color: #0086e5;
  text-align: center;
  line-height: 1;
}
.c-section__more-button > a:hover {
  background-color: #eaf5fb;
}
.c-section__nest-section .c-section__title {
  font-size: 20px;
  font-weight: normal;
}

.c-top-nav__content {
  padding: 8px;
}
.c-top-nav__content ul {
  display: flex;
  justify-content: space-between;
}
.c-top-nav__content li {
  width: calc((100% - 8px) / 3);
}
.c-top-nav__content--2 li {
  width: calc((100% - 8px) / 2);
}
.c-top-nav__item {
  font-weight: bold;
  font-size: 16px;
  padding: 8px 8px 12px;
  border-bottom: 2px solid #00b4d8;
  color: #00b4d8;
  text-align: center;
}
.c-top-nav__l-img {
  width: 100%;
}

button {
  padding: 0;
  outline: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: none;
          appearance: none;
}

.c-user-status {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-right: 12px;
  padding-left: 12px;
  border: solid 1px #d1d1d1;
  background-color: #fff;
  color: #333;
  gap: 12px;
}
.c-user-status__thumbnail > a > img {
  width: 60px;
  height: auto;
  border-radius: 30px;
}
.c-user-status__profile {
  display: flex;
  align-items: center;
  width: 100%;
  padding-top: 16px;
  gap: 8px;
}
.c-user-status__l-name {
  width: 110px;
}
.c-user-status__l-name > button {
  width: 100%;
  background-color: #fff;
}
.c-user-status__l-name > button > i {
  width: 16px;
  height: 16px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/btn/icon-edit-fill.svg?v=202504021600");
  background-size: cover;
}
.c-user-status__name {
  font-weight: bold;
  font-size: 14px;
  overflow: hidden;
  margin-bottom: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.c-user-status__link-icon > img {
  width: 30px;
  height: auto;
}
.c-user-status__coin {
  display: flex;
  flex: 1;
  align-items: center;
  overflow: hidden;
  border-radius: 4px;
}
.c-user-status__coin > button {
  font-weight: bold;
  font-size: 12px;
  flex-shrink: 0;
  padding: 8px;
  background-color: #0086e5;
  color: #fff;
}
.c-user-status__l-list > li:not(:last-child) {
  border-bottom: solid 1px #b1e8f6;
}
.c-user-status--profile {
  border: none;
  background-color: #e0f6fc;
}

.c-user-property {
  width: 100%;
  padding-right: 12px;
  padding-left: 12px;
  border-radius: 8px;
  background-color: #fff;
}
.c-user-property > li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
  padding-bottom: 12px;
}
.c-user-property > li:not(:last-child) {
  border-bottom: solid 1px #eee;
}
.c-user-property > li > a {
  color: #333;
}
.c-user-property > li > button {
  font-weight: bold;
  font-size: 12px;
  min-width: 50px;
}
.c-user-property__sub-ttl {
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 4px;
}
.c-user-property__ttl {
  font-weight: bold;
  font-size: 20px;
  display: flex;
}
.c-user-property__ttl > img {
  width: 22px;
  height: auto;
  margin-right: 4px;
}

.c-user-status-item-list {
  font-weight: bold;
  font-size: 12px;
  display: grid;
  width: 100%;
  margin-bottom: 12px;
  gap: 12px;
  justify-items: start;
  grid-template-columns: repeat(2, 1fr);
}
.c-user-status-item-list > li > a:hover {
  opacity: 0.7;
}
.c-user-status-item-list > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  gap: 4px;
}
.c-user-status-item-list > li > a > img {
  width: 18px;
  height: auto;
}
.c-user-status-item-list > li > a > p {
  align-items: center;
  color: #333;
}
.c-user-status-item-list > li > a > p > span {
  color: #ff3232;
}
.c-user-status-item-list > li:last-child {
  grid-column: span 2;
}

.c-user-status-content__l-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: 12px;
  gap: 8px;
}
.c-user-status-content__l-inner img {
  width: 100%;
  height: auto;
}
.c-user-status-content__l-inner a:hover {
  opacity: 0.7;
}
.c-user-status-content__l-row {
  flex-direction: row;
  gap: 8px;
}
.c-user-status-content__ttl {
  font-weight: bold;
  font-size: 16px;
}
.c-user-status-content__btn {
  font-weight: bold;
  font-size: 14px;
}
.c-user-status-content__btn:hover {
  opacity: 0.7;
}
.c-user-status-content__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 16px;
  border: solid 1px #d1d1d1;
  border-radius: 4px;
  background-color: #fff;
  color: #333;
  gap: 4px;
}
.c-user-status-content__btn > img {
  width: 20px;
  height: auto;
}
.c-user-status-content__btn--town {
  background-color: #fffce8;
}

.c-user-status-bnr {
  display: inline-grid;
  box-sizing: border-box;
  width: 100%;
  vertical-align: top;
  place-items: center;
  aspect-ratio: 212/85;
}
.c-user-status-bnr--myrobot {
  overflow: hidden;
  cursor: pointer;
}
.c-user-status-bnr--myrobot img {
  width: 100%;
  height: 100%;
  transition: opacity 0.2s ease;
  grid-area: 1/1;
  object-fit: cover;
}

/* ホバー時に上位画像を透明化し、下位画像を表示 */
.c-user-status-bnr:hover .c-user-status-bnr__img--hover {
  opacity: 0;
}

/* 旧ユーザー情報（_old-components.scssより移管） */
/* つぶやき 返信部分の新しいstyle ここから */
.c-replies {
  width: 566px;
  margin: 0 0 2px;
}

.c-replies-item {
  padding: 10px;
  background: #f4f4f4;
}
.c-replies-item:not(:last-child) {
  margin-bottom: 5px;
}

.c-replies-inner {
  font-size: 14px;
}

.c-replies__user {
  float: left;
  clear: both;
  width: 126px;
}
.c-replies__user a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  height: 16px;
}
.c-replies__user img {
  width: 16px;
  height: 16px;
  margin: 0 3px 0 0;
}

.c-replies__desc {
  float: right;
  width: 420px;
  min-height: 16px;
}

.c-replies__desc-text {
  word-break: break-all;
  font-size: 14px;
  line-height: 20px;
}

.c-replies__desc-img,
.c-replies__desc-stamp {
  width: 160px;
  margin: 10px 0 0;
}
.c-replies__desc-img a,
.c-replies__desc-stamp a {
  display: block;
}
.c-replies__desc-img img,
.c-replies__desc-stamp img {
  max-width: 100%;
}

/* つぶやき 返信部分の新しいstyle ここまで */
.kizuna_status {
  position: relative;
  width: 972px;
  margin: 1px auto 0;
  padding: 6px 0;
  background: #b8e8ff;
}

.kizuna_status_level {
  float: left;
  width: 426px;
  padding: 0 0 0 15px;
}
.kizuna_status_level dl {
  overflow: hidden;
}
.kizuna_status_level dt {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  font-weight: bold;
}
.kizuna_status_level dd {
  overflow: hidden;
}
.kizuna_status_level dd p {
  float: left;
  margin: 0 10px 0 0;
  font-weight: bold;
  font-size: 174%;
}
.kizuna_status_level dd p img {
  width: 52px;
  height: 30px;
  margin: 0 2px 0 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -323px;
  vertical-align: -6px;
}
.kizuna_status_level dd span {
  display: block;
  float: left;
  padding: 10px 0 0;
  color: #dd5193;
}
.kizuna_status_level dd a {
  display: block;
  float: right;
  width: 29px;
  margin: 0 8px 0 0;
  opacity: 0.7;
}
.kizuna_status_level dd a img {
  width: 29px;
  height: 30px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") 0 -375px;
}

.kizuna_status_detail {
  float: right;
  width: 531px;
  padding: 6px 0 0;
}
.kizuna_status_detail ul {
  text-align: center;
  /*  overflow:hidden;*/
}
.kizuna_status_detail ul li {
  float: left;
  position: relative;
  width: 176px;
  border-left: 1px solid #82b4cc;
}
.kizuna_status_detail ul li p {
  font-size: 85%;
}
.kizuna_status_detail ul li span {
  font-weight: bold;
  font-size: 131%;
}
.kizuna_status_detail ul li p img {
  height: 17px;
  margin: 0 2px 0 0;
  vertical-align: -4px;
}
.kizuna_status_detail ul li.kizuna_status_detail_gift p img {
  width: 17px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -406px;
}
.kizuna_status_detail ul li.kizuna_status_detail_greeting p img {
  width: 18px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -17px -406px;
}
.kizuna_status_detail ul li.kizuna_status_detail_outing p img {
  width: 12px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -35px -406px;
}

/* 左カラムユーザーのステータス表示 */
.c-user-gadged-login {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(34, 34, 34, 0.6);
}
.c-user-gadged-login__lead {
  font-weight: bold;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  color: #fff;
  text-align: center;
  line-height: 1.4;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-user-gadged-login__lead > a {
  color: inherit;
  text-decoration: underline;
}
.c-user-gadged-login__lead > a:hover {
  text-decoration: none;
}

/* ユーザーの島サマリー */
.c-user-gadged__content {
  padding: 12px;
}
.c-user-gadged__content:not(:last-child) {
  border-bottom: 1px solid #e4e4e4;
}
.c-user-gadged__l-login {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.c-user-gadged-proflie__l-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.c-user-gadged-proflie__set {
  display: flex;
  align-items: center;
}
.c-user-gadged-proflie__thumb {
  width: 52px;
  min-width: 52px;
  padding-right: 4px;
}
.c-user-gadged-proflie__thumb > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-user-gadged-proflie__nickname {
  font-weight: bold;
  font-size: 14px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-height: 1.6;
}
.c-user-gadged-proflie__nickname > a:hover {
  color: #0086e5;
  text-decoration: underline;
}
.c-user-gadged-proflie__nickname > a {
  color: #222;
}
.c-user-gadged-proflie__gesocoin {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  padding: 8px 4px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
}
.c-user-gadged-proflie__gesocoin > p {
  font-weight: bold;
  font-size: 20px;
  display: flex;
  align-items: center;
}
.c-user-gadged-proflie__gesocoin > p > img {
  display: block;
  width: 24px;
  height: auto;
  margin-right: 4px;
}
.c-user-gadged-proflie__gesocoin > a {
  display: block;
  padding: 4px;
}
.c-user-gadged-proflie__l-bnr {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.c-user-gadged-proflie__l-bnr > a > img {
  box-shadow: 0 0 4px #d1d1d1;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.c-user-gadged-proflie__l-bnr > a:hover {
  opacity: 0.7;
}
.c-user-gadged-proflie__l-alert {
  padding-bottom: 12px;
}
.c-user-gadged-proflie {
  /* レトロゲームページでバナーが二連の場合に使用 */
}
.c-user-gadged-proflie__induction {
  margin-bottom: 12px;
}
.c-user-gadged-proflie {
  /* バナー貼付用（マル得パス導線等で使用） */
}
.c-user-gadged-proflie__bnr > img {
  width: 100%;
  height: auto;
}
.c-user-gadged-proflie__bnr > img:hover {
  opacity: 0.7;
}
.c-user-gadged-proflie__bnr--layout {
  margin-top: 12px;
  margin-bottom: 12px;
}

.c-user-gadged-alert:hover {
  opacity: 0.7;
}
.c-user-gadged-alert {
  border: 1px solid #ddd;
  background-color: #fff;
  text-align: center;
}
.c-user-gadged-alert + .c-user-gadged-alert {
  margin-top: 8px;
}
.c-user-gadged-alert > a {
  display: block;
  padding: 8px;
  color: inherit;
}
.c-user-gadged-alert--primary {
  border: 1px solid #b9e66e;
  background-color: white;
  color: #4f4f4f;
}

.c-user-gadged-proflie-list {
  display: flex;
  flex-wrap: wrap;
  align-content: space-around;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e4e4e4;
}
.c-user-gadged-proflie-list__item {
  font-size: 12px;
  display: flex;
  align-items: center;
  width: 50%;
  padding-bottom: 12px;
}
.c-user-gadged-proflie-list__item > img {
  width: 16px;
  height: auto;
  margin-right: 2px;
}
.c-user-gadged-proflie-list__item > a:hover {
  color: #0086e5;
  text-decoration: underline;
}
.c-user-gadged-proflie-list__item > a {
  color: #222;
}
.c-user-gadged-proflie-list__item > a > span {
  font-weight: bold;
  font-size: 12px;
  color: #ff5a5f;
}
.c-user-gadged-proflie-list--border-none {
  margin: 0;
  padding: 0;
  border: none;
}

.c-user-gadged-community__l-alert {
  margin-bottom: 8px;
}
.c-user-gadged-community__more {
  text-align: center;
}
.c-user-gadged-community__more > a::after {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-right: 1px solid #0086e5;
  border-bottom: 1px solid #0086e5;
  color: inherit;
  content: "";
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-user-gadged-community__more > a:hover {
  opacity: 0.7;
}
.c-user-gadged-community__more > a {
  display: inline-block;
  color: #0086e5;
  vertical-align: sub;
}

.c-user-gadged-settings {
  position: relative;
  display: flex;
}
.c-user-gadged-settings__item {
  position: relative;
  width: 50%;
  padding: 12px 0;
  text-align: center;
}
.c-user-gadged-settings__item:hover {
  background-color: #f2f2f2;
}
.c-user-gadged-settings__item:first-child {
  border-right: 1px solid #e4e4e4;
}
.c-user-gadged-settings__item .badge-gadged-question {
  display: block;
  position: absolute;
  top: 8px;
  right: 8px;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  border-radius: 50px;
  background-color: #ccc;
  color: #fff;
  font-weight: bold;
  line-height: 18px;
}
.c-user-gadged-settings__item-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-bottom: 8px;
}
.c-user-gadged-settings__item-icon > img {
  display: inline-block;
  width: 100%;
  height: auto;
}
.c-user-gadged-settings__item-ttl a {
  color: #222;
}