@charset "UTF-8";
/* 古い 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-friend-media, .c-guide-event-card, .c-incentive-card, .c-pickup-message, .c-mini-media, .c-mission-induction, .c-mission-board, .c-pickup-board, .c-pre-entry-media, .c-ranking-top-card__l-inner, .c-ranking-card, .c-thumb {
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 0 1px 2px rgba(34, 34, 34, 0.2);
}

/**
 * シャドウ
 */
.c-friend-media, .c-guide-event-card, .c-incentive-card, .c-pickup-message, .c-mini-media, .c-mission-induction, .c-mission-board, .c-pickup-board, .c-pre-entry-media, .c-ranking-top-card__l-inner, .c-ranking-card, .c-thumb {
  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;
}

#top_footer {
  background-color: #fff;
}

#top_footer #gmogroupfooter {
  width: 1000px;
  margin: 0 auto;
}

/* 旧レイアウト補足（_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;
  font-size: 14px;
  display: block;
  padding: 12px 20px 12px 4px;
  color: #222;
}

.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::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 {
  display: block;
  height: 100%;
  padding: 14px 0;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  color: #0086e5;
  text-align: center;
  line-height: 1.4;
}

.l-reward-nav-sub:hover {
  background-color: #eaf5fb;
}

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

.l-text-link a {
  color: #0086e5;
}

.l-text-link a:hover {
  color: #0086e5;
  text-decoration: underline;
}

.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;
}

/* 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: "";
}

/**
 * ログイン・登録フロー
 * _old-components.scssより移管
 */
/* @group 登録・ログイン */
.login_fb,
.login_tw {
  display: block;
  height: 30px;
  font-weight: bold;
  line-height: 30px;
}

/* @group Social plugins */
#social_login h3 {
  padding: 0 0 5px 0;
}

#social_login a {
  display: block;
}

#social_login .login_tw,
#social_login .login_fb {
  width: 110px;
  margin: 0 0 8px 0;
  font-size: 85%;
}

/* *******register******* */
/* register_game_flow01 */
#register_flow #wrapper {
  padding: 14px 0 40px;
  text-align: center;
}

.register_logoarea {
  width: 960px;
  margin: 0 auto;
  padding: 14px 0 0 0;
}

#register_flow .register_inner {
  width: 960px;
  margin: 0 auto 14px;
  padding: 35px 19px;
  border: 1px solid #ddd;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background-color: #fff;
}

.register-step-main img {
  width: 255px;
  margin: 0 auto;
}

.register-step-01 .register-step-main img,
.register-step-02 .register-step-main img,
.register-step-03 .register-step-main img {
  height: 95px;
  background: url("//static.gesoten.com/img/register_use.png?v=202504021600") no-repeat 0 0;
  vertical-align: -25px;
}

.register_logoarea h1 {
  width: 960px;
  text-align: center;
  font-weight: 900;
  line-height: 1;
}

.regist_welcome {
  font-size: 300%;
}

.progress_area {
  width: 900px;
  margin: 0 auto 20px;
  font-weight: bold;
}

.progress_area ul {
  overflow: hidden;
  margin: 0 0 0 42px;
  letter-spacing: 1px;
  font-size: 15px;
}

.progress_area ul li {
  float: left;
}

.step_show {
  height: 45px;
  background: url("//static.gesoten.com/img/register_use.png?v=202504021600") no-repeat 0 -97px;
}

.step_hide {
  height: 45px;
  background: url("//static.gesoten.com/img/register_use.png?v=202504021600") no-repeat 0 -146px;
}

.progress_step {
  width: 255px;
  margin: 0 4px 0 2px;
  color: #fff;
}

.progress_step span {
  margin: 0 0 0 18px;
}

.progress_step > .fa-envelope-o {
  margin: 16px 6px 0 32px;
}

.progress_step > .fa-pencil,
.progress_step > .fa-check-circle-o {
  margin: 16px 2px 0 60px;
}

.progress_arrow {
  margin: 12px 0 0 0;
  color: #ccc;
}

.anime_chara_lobo {
  position: absolute;
  width: 28px;
  height: 47px;
  background: url("//static.gesoten.com/img/register_use.png?v=202504021600") no-repeat 0 -211px;
}

.lobo_step_f {
  margin: -35px 0 0 30px;
  -webkit-animation: translate 3s;
  -moz-animation: translate 4s;
  animation: translate 4s;
  animation-iteration-count: 1;
  /* Safari & Chrome */
  -webkit-animation-iteration-count: 1;
  /* Safari & Chrome */
  -moz-animation-iteration-count: 1;
}

@keyframes translate {
  0% {
    -webkit-transform: translate(0, -100px);
            transform: translate(0, -100px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@-webkit-keyframes translate {
  0% {
    -webkit-transform: translate(0, -100px);
            transform: translate(0, -100px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@-moz-keyframes translate {
  0% {
    transform: translate(0, -100px);
  }
  100% {
    transform: translate(0, 0);
  }
}

.lobo_step_s {
  margin: -35px 0 0 278px;
}

.lobo_step_t {
  margin: -35px 0 0 312px;
}

.lobo_step_fo {
  margin: -35px 0 0 596px;
}

.fa-twitter {
  color: #00abf0;
}

.fa-facebook-square {
  color: #37589a;
}

.fa-google-plus-square {
  color: #dd4b39;
}

.register_mailbtn {
  display: block;
  width: 451px !important;
  margin: 0 auto;
  padding: 16px 12px 12px;
  border: none;
  border-bottom: 3px solid #ed5722;
  background: #ff9d49;
  background: -moz-linear-gradient(top, #ff9d49, #ff622b);
  background: -webkit-gradient(linear, left top, left bottom, from(#ff9d49), to(#ff622b));
  box-shadow: 0 2px 3px 0 #adadad !important;
  /* filter: progid:DXImageTransform.Microsoft
  .gradient(GradientType=0,startColorstr='#ff9d49', endColorstr='#ff622b'); */
  color: #fff;
  font-weight: bold;
  font-size: 18px;
}

.register_mailbtn:hover {
  opacity: 0.9;
}

#register_flow .register_sub {
  font-size: 116%;
}

#register_flow .id_toku_p {
  margin: 0 20px 0 0;
  padding: 10px;
  border: 1px solid #ddd;
  background: #f4f4f4;
}

#register_flow .about_toku_p {
  margin: 10px auto 60px;
  color: #888;
  text-align: center;
  font-size: 85%;
}

.sended_progress_area {
  margin: 25px auto 0 auto;
}

.register-step-02 > #wrapper > .progress_area > ul > .progress_step {
  width: 255px;
  color: #fff;
}

.register-step-02 > #wrapper > .progress_area > ul > .progress_step > span {
  margin: 0 0 0 -35px;
}

.register-step-02 > #wrapper > .progress_area > ul > .first_step > span {
  margin: 0 0 0 -8px;
}

/* *********************inut********************* */
/* register_game_flow03 */
.register_input {
  width: 870px;
  margin: 35px auto 0 auto;
  padding: 0 0 18px 0;
  border: solid 1px #eee;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #fbfcfd;
  text-align: center;
}

#register_flow .register_input table {
  width: 755px;
  margin: 30px auto;
  font-size: 116%;
}

#register_flow .register_input table th,
#register_flow .register_input table td {
  padding: 6px 10px;
  border: 1px solid #ccc;
  vertical-align: middle;
  text-align: left;
}

#register_flow .register_input table th {
  width: 220px;
  height: 44px;
  background: #eee;
}

#register_flow .register_input table .public_flag {
  width: 100px;
}

.register_input > form > p {
  margin: 5px 0 0;
  color: #888;
  font-size: 12px;
}

.register_mailbtn_final {
  display: block;
  width: 330px !important;
  margin: 0 auto;
  padding: 12px 12px;
  border: none;
  color: #fff;
  font-weight: bold;
  font-size: 19px;
}

.register_mailbtn_final:hover {
  opacity: 0.9;
  cursor: pointer;
}

.back_btn {
  background: #c8c8c8;
  background: -moz-linear-gradient(top, #c8c8c8, #838180);
  background: -webkit-gradient(linear, left top, left bottom, from(#c8c8c8), to(#838180));
  /* filter: progid:DXImageTransform.Microsoft
  .gradient(GradientType=0,startColorstr='#C8C8C8', endColorstr='#838180'); */
}

.agree_btn {
  /* filter: progid:DXImageTransform.Microsoft
  .gradient(GradientType=0,startColorstr='#ff9d49', endColorstr='#ff622b'); */
  float: right;
  margin-right: 72px;
  background: #ff9d49;
  background: -moz-linear-gradient(top, #ff9d49, #ff622b);
  background: -webkit-gradient(linear, left top, left bottom, from(#ff9d49), to(#ff622b));
}

#register_flow #agreement {
  overflow-y: scroll;
  width: 726px;
  height: 300px;
  margin: 30px auto;
  padding: 10px;
  border: 4px solid #ccc;
  text-align: left;
}

#register_flow #agreement p {
  padding: 0 0 14px 8px;
}

#register_flow #agreement h2,
#register_flow #agreement h3 {
  font-weight: bold;
}

.register_input > div {
  margin: 30px 0 0 0;
}

.register_input > .error_box {
  margin: 12px 0 -17px 0;
}

.register_input .warn_text {
  display: block;
  margin: 1px 0 0 0;
  padding: 8px;
  background: #ffefef;
  color: #fa3e3e;
  text-align: center;
  font-weight: bold;
}

/**
 * 静的ページ（利用規約・プライバシー・特商法）
 * _old-components.scssより移管
 */
/* @group 利用規約、プライバシーステートメント、特商法 */
#privacy,
#asct {
  padding: 10px;
  background-color: #fff;
  line-height: 150%;
}

#agreement .inner,
#privacy .inner {
  padding: 10px;
}

#agreement h3,
#privacy h3 {
  padding: 10px 0;
}

#agreement p,
#privacy p {
  padding: 5px;
}

#agreement ul,
#privacy ul {
  padding: 10px;
}

#agreement ul li,
#privacy ul li {
  padding: 0 0 5px 0;
}

#asct dl {
  overflow: hidden;
  margin: 20px 10px 10px 10px;
  border-bottom: 1px solid #ccc;
}

#asct dt {
  float: left;
  clear: both;
  width: 200px;
  padding: 10px;
  border-top: 1px solid #ccc;
  font-weight: bold;
}

#asct dd {
  float: left;
  width: 718px;
  padding: 10px;
  border-top: 1px solid #ccc;
}

#asct dd ul {
  padding: 10px;
}

#asct dd strong {
  padding: 3px;
  border-left: 3px solid #ccc;
  background: #eee;
}

/* @end */
/**
 * おまけ・特典ページ
 * _old-components.scssより移管
 */
/** omake privilege */
.omake_side p {
  margin: 1px 0 14px;
  padding: 8px 0;
  background: #004c9c;
  color: #fff;
  text-align: center;
  font-size: 85%;
}

.omake_side span {
  display: block;
  margin: 0 0 8px;
  padding: 0 0 2px 0;
  border-bottom: 1px solid #ccc;
  font-size: 131%;
}

.omake_group {
  display: none;
}

.omake_tab li {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  margin: 0 0 4px;
  padding: 14px 6px 14px 10px;
  border: 1px solid #ddd;
  background-color: #f4f4f4;
  font-size: 116%;
  cursor: pointer;
}

.omake_tab li.select {
  border: 1px solid #aaa;
  background-color: #e1faff;
  font-weight: bold;
}

.omake_tab li:hover {
  border: 1px solid #ccc;
  background-color: #e1faff;
}

.omake_tit_box {
  width: 640px;
  margin: 0 0 14px;
  padding: 2px 8px;
  border-left: 4px solid #004c9c;
}

.omake_tit_box h1 {
  color: #004c9c;
  font-size: 189%;
}

.omake_list li {
  float: left;
  position: relative;
  width: 204px;
  margin: 0 9px 14px 0;
  padding: 4px;
  border: 1px solid #e60000;
  background-color: #ffb4b4;
}

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

.omake_list li dl {
  background: url("//static.gesoten.com/img/geso/omake/omake_list_bg.png?v=202504021600") repeat;
}

.omake_list li dt {
  text-align: center;
  line-height: 1.4;
}

.omake_list li dt img {
  display: block;
  width: 194px;
  margin: 0 auto;
  padding: 32px 0 4px;
}

.omake_list li dd {
  padding: 2px 0 8px 6px;
}

.omake_btn {
  padding: 10px 0 0;
}

.omake_btn a,
.omake_btn span {
  display: block;
  width: 176px;
  height: 46px;
  margin: 0 auto;
  border-radius: 6px;
  text-align: center;
  font-size: 131%;
  line-height: 46px;
}

.omake_btn a {
  border-bottom: 4px solid #966400;
  background: #faa000;
  color: #fff;
}

.omake_btn a:hover {
  margin: 2px auto 0;
  border-bottom: 2px solid #966400;
  background: #ffaa1e;
  text-decoration: none;
}

.omake_btn span {
  border-bottom: 4px solid #aaa;
  background: #ccc;
  color: #888;
}

.omake_group_grant_list table {
  width: 660px;
  border: 1px solid #ccc;
}

.omake_group_grant_list th,
.omake_group_grant_list td {
  padding: 10px;
  border: 1px solid #ddd;
}

.omake_group_grant_list th {
  background: #f4f4f4;
}

/* 汎用ページャーデザイン */
.pager,
.pagination {
  padding: 10px 0;
  text-align: center;
}

.pager li {
  display: inline-block;
  margin: 0 3px;
  border: 1px solid #ccc;
}

.pager li a {
  display: block;
  padding: 3px 5px;
  background: #eee;
  color: #666;
}

.pagination a {
  display: inline;
  padding: 0 0 0 4px;
  padding: 3px 5px;
  border: 0;
  border: 1px solid #aaa;
  background-color: transparent;
  background-color: #eee;
  color: #666;
}

.pagination .active a {
  margin: 0 4px 0;
  padding: 3px 8px;
  border: 1px solid #888;
  background-color: #fff;
  color: #333;
  font-weight: bold;
}

.pager li a:hover,
.pagination a:hover {
  color: #333;
  text-decoration: none;
}

.pager li:hover,
.pagination a:hover {
  border: 1px solid #888;
  color: #333;
}

.pager .current {
  margin: 0 4px 0 0;
  padding: 3px 4px;
  border: 1px solid #888;
  background-color: #fff;
  color: #333;
  font-weight: bold;
}

/* 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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  height: 16px;
}

.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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  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 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  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-announce-border {
  padding: 12px;
  border-radius: 2px;
  text-align: center;
}

.c-announce-border--alert {
  font-size: 14px;
  border: 1px solid #ff5a5f;
  background-color: #fff3f3;
  color: #222;
}

/**
 * /site コーナー
 */
.c-associate-corner {
  margin-right: auto;
  margin-left: auto;
  width: 980px;
  padding-bottom: 24px;
}

.c-associate-corner__title {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 15px;
  padding-bottom: 5px;
  border-bottom: 2px #ececec solid;
}

/**
 * /site リスト
 */
.c-associate-list::after {
  display: block;
  clear: both;
  content: "";
}

.c-associate-list > li {
  float: left;
  width: 480px;
  max-height: 130px;
  padding-bottom: 20px;
}

.c-associate-list > li:nth-child(2n) {
  float: right;
}

.c-associate-list__banner img {
  width: 480px;
  max-height: 130px;
}

.c-associate-list__banner iframe {
  position: relative;
  top: -32px;
  left: -136px;
  height: 200px;
  -webkit-transform: scale(0.64);
          transform: scale(0.64);
}

/**
 * ゲソコイン購入 アフィリエイト訴求
 */
.c-associate-media-content {
  position: relative;
  padding: 12px;
  border: 1px solid #e4e4e4;
}

.c-associate-media {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.c-associate-media__thumb {
  display: table-cell;
  width: 100px;
}

.c-associate-media__thumb > img {
  width: 100%;
}

.c-associate-media__content {
  font-size: 14px;
  display: table-cell;
  padding-left: 16px;
  vertical-align: top;
}

.c-associate-media__content > em {
  display: inline-block;
  margin-bottom: 4px;
  color: #ff9600;
  font-style: normal;
}

.c-associate-media__content > p {
  color: #222;
}

.c-associate-media__content strong {
  font-weight: bold;
  font-size: 28px;
  margin: 0 4px;
  color: #f33;
}

.c-associate-media__action {
  position: absolute;
  right: 12px;
  bottom: 12px;
}

/* 古いc-card-list。最新のc-card-listはcard.scssにあります */
.c-card-list::after {
  display: block;
  clear: both;
  content: "";
}

.c-card-list__item {
  display: inline-block;
  float: left;
  box-sizing: border-box;
  position: relative;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 2px;
}

.c-card-list__item:hover {
  border: 1px solid #bbb;
  background-color: #e1faff;
}

.c-card-list__item .loading {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 32px;
  height: 32px;
  margin: auto;
}

.c-card-list--geso-recommend-game .c-card-list__item {
  width: 313px;
  background-color: #ffffc8;
}

.c-card-list--geso-recommend-game .c-card-list__item:not(:nth-child(3n)) {
  margin-right: 16px;
}

.c-card-list--geso-recommend-game .c-card-list__item:hover {
  opacity: 0.75;
}

.c-card-list--geso-recommend-game .c-game-unit__image img {
  width: 100px;
  height: 100px;
  margin-right: 10px;
}

.c-card-list--geso-recommend-game .c-game-unit__title {
  font-weight: bold;
  font-size: 16px;
  width: 183px;
}

/* 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%);
  width: 712px;
  min-height: 320px;
  padding: 0 0 32px;
}

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__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%);
  width: 712px;
  min-height: 320px;
  padding: 0 0 32px;
}

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__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%);
  top: 30%;
  width: 750px;
  min-height: 320px;
  padding: 0 0 32px;
}

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-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-error-box {
  padding: 50px 0;
  background-color: #fff;
  text-align: center;
}

.c-error-box__title {
  font-weight: bold;
  font-size: 40px;
  margin-bottom: 30px;
  color: #999;
  letter-spacing: 12px;
}

.c-error-box__main-text {
  font-size: 14px;
  margin-bottom: 40px;
}

.c-error-box__btn-area {
  margin-bottom: 50px;
}

.c-error-box__img {
  width: 200px;
  margin: 0 auto;
}

.c-error-box__img > img {
  width: 100%;
}

/**
 * メンテナンス画面で使用
 */
.c-error-bg {
  background-color: #f4f4f4;
}

.c-error-sec {
  width: 800px;
  margin: 80px auto;
  text-align: center;
}

.c-error-sec__message {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 16px;
  line-height: 36px;
}

.c-error-sec__link {
  font-weight: bold;
  font-size: 20px;
  color: #0086e5;
  line-height: 36px;
}

.c-error-sec__l-bottom {
  margin-bottom: 40px;
}

/**
 * 旧エラーページ（_old-components.scssより移管）
 */
#wrapper404,
#wrapper_error {
  padding: 100px 0;
  background-color: #ffcc01;
}

#wrapper404 h1 {
  width: 300px;
  height: 275px;
  margin: 0 auto;
  background: url("//static.gesoten.com/img/robo_404.png?v=202504021600");
}

#wrapper_error h1 {
  width: 185px;
  height: 85px;
  margin: 0 auto;
  background: url("//static.gesoten.com/img/error_title.png?v=202504021600") no-repeat 50%;
}

#wrapper404 h1 span {
  display: none;
}

#wrapper_error h1 span {
  display: none;
}

#wrapper_error .inner {
  width: 290px;
  margin: 0 auto;
  padding: 0 0 240px 0;
  background: url("//static.gesoten.com/img/error_robo.png?v=202504021600") no-repeat 50% bottom;
  text-align: center;
}

#wrapper_error .inner p {
  padding: 20px 0;
  font-size: 116%;
}

.c-camp-error__title {
  width: 185px;
  height: 85px;
  margin: 0 auto 10px;
  background: url("//static.gesoten.com/img/error_title_sorry.png?v=202504021600") no-repeat 50%;
}

.c-camp-error__title span {
  display: none;
}

/* ゲームページヘッダー */
.c-game-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 1000px;
  height: 40px;
  margin: 0 auto;
}

.c-game-header__main {
  display: flex;
  align-items: center;
  padding-left: 8px;
}

.c-game-header__plays {
  padding-right: 8px;
}

.c-game-header__plays ul {
  display: flex;
  align-items: center;
}

.c-game-header__plays li {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  max-width: 120px;
  margin-left: 12px;
  color: #fff;
}

.c-game-header__plays li a {
  color: #fff;
  text-decoration: underline;
}

.c-game-header-item {
  margin-right: 12px;
}

.c-game-header-item__app-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 14px;
  max-width: 200px;
  color: #fff;
}

.c-game-header-item__reload {
  max-width: 64px;
}

.c-game-header-item__reload input[type="button"] {
  font-size: 10px;
  color: #fff;
  text-decoration: underline;
  cursor: pointer;
}

.c-game-header-item__support {
  max-width: 64px;
}

.c-game-header-item__support span,
.c-game-header-item__support a {
  font-size: 10px;
  color: #fff;
  text-decoration: underline;
  cursor: pointer;
}

.c-game-header-item__privilege {
  max-width: 64px;
}

.c-game-header-item__privilege a {
  font-size: 10px;
  color: #ff0;
  text-decoration: underline;
  cursor: pointer;
}

/* ゲームページ サイドカラム */
#game_side_col #game_timeline_wrap {
  position: relative;
  margin: 0;
  background-color: #fff;
}

#game_side_col #game_timeline_wrap .btn_group {
  width: 126px;
}

#game_side_col #game_timeline_wrap .post_box_menu ul.right {
  width: 180px;
}

#game_side_col #game_timeline_wrap .post_box_menu ul.right a {
  display: block;
}

#game_side_col #game_timeline_wrap .post_box_menu ul a img {
  margin: 0 3px;
}

#game_side_col.drag, #game_side_col.slide {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
}

#game_side_col.drag .drag_me {
  margin: 0 0 5px 0;
  padding: 3px 0 3px 20px;
  border: 1px solid #ccc;
  background-color: #eee;
  color: #666;
  cursor: move;
}

#game_side_col.slide .hide_me,
#game_side_col.slide .show_me {
  margin: 0 0 5px 0;
  padding: 3px;
  border: 1px solid #ccc;
  background-color: #eee;
  color: #666;
  text-align: center;
  cursor: pointer;
}

#game_side_col.drag .drag_me:hover {
  border: 1px solid #999;
  color: #333;
}

#game_side_col.slide .show_me:hover,
#game_side_col.slide .hide_me:hover {
  border: 1px solid #999;
  color: #333;
}

#game_side_col .post_box {
  position: relative;
}

#game_side_col .game_timeline_banner {
  padding: 4px 9px 0;
  background-color: #eee;
}

#game_side_col .post_box textarea {
  display: block;
  width: 198px;
  height: 50px;
  margin: 0 auto;
  padding: 5px;
  resize: none;
}

#game_side_col .post_box_menu {
  position: relative;
  padding: 0 0 5px 0;
}

#game_side_col .game_timeline {
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  height: 520px;
}

#game_side_col.drag .game_timeline,
#game_side_col.slide .game_timeline {
  overflow-x: hidden;
  overflow-y: auto;
}

#game_side_col .game_timeline .indivi {
  position: relative;
  width: 194px;
  margin: 8px;
  padding: 0 0 8px 0;
  border-bottom: 1px solid #ddd;
}

#game_side_col .game_timeline .indivi:last-child {
  border-bottom: 0;
}

#game_side_col .game_timeline .user_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  padding: 0;
  font-weight: bold;
  font-size: 85%;
}

#game_side_col .game_timeline .stamp_timeline {
  text-align: center;
}

#game_side_col .game_timeline .stamp_timeline img {
  width: 80px;
  height: 80px;
}

#game_side_col .game_timeline .go_farm {
  position: absolute;
  top: 38px;
  left: 0;
  height: 16px;
  padding: 0 0 0 16px;
  background: url("//static.gesoten.com/img/icon_tomachi_1616.png?v=202504021600") no-repeat -1px 50%;
  font-size: 79%;
  line-height: 16px;
}

#game_side_col .game_timeline .content {
  position: relative;
  width: 140px;
  padding: 3px 3px 0;
  border: 3px solid #ccc;
  word-break: break-all;
  font-size: 93%;
  line-height: 150%;
}

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

#game_side_col .game_timeline .content::after {
  top: 7px;
  margin-top: -3px;
  border-width: 3px;
  border-right-color: #fff;
}

#game_side_col .game_timeline .content::before {
  top: 7px;
  margin-top: -7px;
  border-width: 7px;
  border-right-color: #ccc;
}

#game_side_col .game_timeline .content small {
  display: block;
  padding: 5px 0 0 0;
  text-align: right;
  font-size: 85%;
}

#game_side_col .game_timeline .content .post_data {
  margin-right: 4px;
}

#game_side_col .game_timeline li .user_img img {
  width: 35px;
  height: 35px;
}

.fa-ban,
.fa-frown-o {
  color: #ccc;
}

.fa-ban:hover,
.fa-frown-o:hover {
  color: #aaa;
}

#game_side_col .game_timeline li .fa-ban,
#game_side_col .game_timeline li .fa-frown-o {
  position: absolute;
  bottom: 6px;
}

#game_side_col .game_timeline li .fa-ban {
  left: 0;
}

#game_side_col .game_timeline li .fa-frown-o {
  left: 20px;
}

#show_block .clearfix,
#show_report .clearfix {
  width: 400px;
  margin: 40px auto 0;
}

#show_block .btn_light_blue,
#show_report .btn_light_blue,
#show_block .btn_light_gray,
#show_report .btn_light_gray {
  height: 34px;
  font-size: 100%;
  line-height: 34px;
}

.btn_tweet-refresh {
  width: 30px;
  height: 30px;
  border-radius: 3px;
  background-color: #666;
  color: #fff;
  text-align: center;
  font-size: 18px;
  line-height: 1.8;
}

.btn_tweet-refresh:hover {
  color: #999;
}

.add_stamp_timeline.selected,
#game_side_col .add_stamp_timeline.selected,
.tweet_list .your_reply .add_stamp_timeline.selected {
  width: 86px;
  background: none #ddd;
  font-weight: bold;
  line-height: 30px;
}

.add_stamp_timeline.selected img {
  vertical-align: -8px;
}

#game_side_col .game_timeline .indivi_footer {
  clear: both;
  padding: 3px 0 0 0;
  font-size: 85%;
}

#game_side_col .game_timeline .indivi_footer .post_topic {
  border-left: 1px solid #ccc;
}

#game_side_col .game_timeline .indivi_footer .post_category,
#game_side_col .game_timeline .indivi_footer .post_topic {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  float: left;
  width: 80px;
  padding: 0 2px;
}

#game_side_col ul.right {
  width: 140px;
}

#game_side_col ul.right li {
  height: 26px;
  line-height: 26px;
}

#game_side_col .post_gesoten {
  clear: both;
  padding: 0;
}

#game_side_col .post_gesoten .btn_orange {
  display: block;
  width: 184px;
  height: 30px;
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-size: 116%;
  line-height: 30px;
}

#game_side_col .go_to_community {
  padding: 0 0 5px 0;
}

#game_side_col .go_to_community .btn_gray {
  display: block;
  height: 30px;
  margin: 0 auto;
  padding: 0;
  font-weight: bold;
  font-size: 116%;
  line-height: 30px;
}

#game_side_col .add_img,
#game_side_col .add_emoji,
#game_side_col .add_stamp_timeline {
  width: 40px;
  padding: 0;
  border: none;
  cursor: pointer;
}

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

#game_side_col .add_emoji_box::after, #game_side_col .add_emoji_box::before {
  left: 18px;
}

#game_side_col .add_stamp_timeline_box::after, #game_side_col .add_stamp_timeline_box::before {
  left: 60px;
}

#game_side_col .post_twitter,
#game_side_col .post_facebook {
  min-width: 40px;
  margin: 0 5px 0 0;
}

#game_side_col .post_twitter a,
#game_side_col .post_facebook a {
  width: 85px;
}

/* カジュアルゲーム用のレイアウト調整 既存のスタイルを上書きする */
/* stylelint-disable selector-max-id */
#wrapper.game-casual {
  min-height: 800px;
  background-color: #000;
}

#wrapper.game-casual #game_wrap {
  width: 600px;
  height: 600px;
  padding: 24px 0 0 80px;
}

#wrapper.game-casual #remote_iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

#wrapper.game-casual #game_side_col {
  top: 0;
}

/* stylelint-enable selector-max-id */
/* gamepage */
.game_info {
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 2px;
}

/* ゲームお試し */
.notice_notlogin {
  overflow: hidden;
  width: 1000px;
  height: 32px;
  margin: 0 auto;
  background-color: #b8e8ff;
  color: #000;
  font-size: 116%;
  line-height: 32px;
}

.notice_notlogin p {
  float: left;
  padding: 0 0 0 10px;
}

.notice_notlogin a {
  display: block;
  float: right;
  padding: 0 16px;
  border-left: 1px solid #fff;
  background: rgba(255, 255, 255, 0.3);
  transition: background 0.3s;
}

.notice_notlogin a:hover {
  background: rgba(255, 255, 255, 0.7);
  text-decoration: none;
}

.notice_otameshi {
  overflow: hidden;
  width: 980px;
  margin: 0 auto;
  padding: 6px 10px;
  background-color: #ff46b4;
  color: #ffbee6;
}

.notice_otameshi .fa-hand-o-right {
  display: block;
  float: left;
  width: 26px;
  padding: 13px 0 0;
  font-size: 131%;
}

.notice_otameshi dl {
  float: left;
  width: 690px;
}

.notice_otameshi dl dt {
  padding: 2px 0 0;
  color: #fff;
  font-size: 146.5%;
}

.notice_otameshi a {
  display: block;
  float: right;
  position: relative;
  width: 180px;
  height: 50px;
  border: 2px solid #fff;
  border-radius: 26px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 146.5%;
  line-height: 50px;
  transition: background 0.3s;
}

.notice_otameshi a:hover {
  background: rgba(255, 255, 255, 0.3);
  text-decoration: none;
}

.notice_otameshi a i {
  position: absolute;
  top: 0;
  right: 10px;
}

/* 白ツイ掲示板 */
#game_side_tab {
  position: relative;
  width: 230px;
}

#game_side_tab .selected {
  background-color: #eee;
  color: #000;
  font-weight: bold;
  cursor: default;
}

#game_side_tab ul {
  overflow: hidden;
  width: 228px;
  border: 1px solid #bbb;
  border-bottom: 0;
}

#game_side_tab li {
  float: left;
  position: relative;
  width: 100px;
  height: 34px;
  border-right: 1px solid #bbb;
  background-color: #ddd;
  text-align: center;
  line-height: 35px;
  cursor: pointer;
}

#game_side_tab li .game_side_tab_more {
  display: block;
  position: absolute;
  top: 7px;
  right: 0;
  width: 16px;
  height: 22px;
  color: #888;
  text-align: center;
  font-size: 85%;
  line-height: 22px;
}

#game_side_tab li .game_side_tab_more:hover {
  color: #000;
  text-decoration: none;
}

#game_side_tab .game_side_col_close {
  position: absolute;
  top: 1px;
  right: 1px;
  width: 26px;
  height: 34px;
  background-color: #ddd;
  text-align: center;
  line-height: 35px;
  cursor: pointer;
}

#game_side_tab .game_side_col_close::after {
  font-weight: bold;
  font-size: 16px;
  color: #555;
  content: "×";
}

#game_side_tab .game_side_col_close.tweet-closed {
  background-color: #eee;
  color: #000;
  font-weight: bold;
  cursor: pointer;
}

#game_side_tab .game_side_col_close.tweet-closed::after {
  font-size: 14px;
  color: #666;
  content: "▼";
}

#game_side_detail {
  width: 230px;
}

#game_side_detail article {
  display: none;
  position: relative;
  height: 761px;
  border: 1px solid #ccc;
  border-top: 0;
  background-color: #fff;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.2);
}

#game_side_detail .selected {
  display: block;
}

/* 旧ゲームコミュニティ（_old-components.scssより移管） */
#side_col #game_timeline_wrap {
  margin: 0 0 12px 0;
  padding: 9px;
  border-radius: 5px;
  background-color: #fff;
}

#side_col .game_timeline {
  overflow-y: auto;
  height: 590px;
  padding: 5px 0 0 0;
}

#side_col .game_timeline .indivi {
  padding: 0 0 3px 0;
}

#side_col .game_timeline .user_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  padding: 0 0 3px 0;
  font-size: 85%;
}

#side_col .game_timeline .content {
  position: relative;
  width: 205px;
  margin: 0 5px 0 0;
  padding: 3px;
  border: 3px solid #ccc;
  word-break: break-all;
}

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

#side_col .game_timeline .content::after {
  top: 7px;
  margin-top: -3px;
  border-width: 3px;
  border-right-color: #fff;
}

#side_col .game_timeline .content::before {
  top: 7px;
  margin-top: -7px;
  border-width: 7px;
  border-right-color: #ccc;
}

#game_community_wrap .alart_new_topic a {
  display: block;
  margin: 0 2px;
  padding: 6px 0;
  background: #fdeef2;
  color: #f00;
  text-align: center;
}

#game_community_wrap li {
  position: relative;
  width: 212px;
  margin: 0 8px 4px;
  padding: 4px 0 8px;
  border-bottom: 1px dashed #ddd;
}

#game_community_wrap li:last-child {
  border-bottom: 0;
}

#game_community_wrap .topic_parent dt {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 108%;
}

#game_community_wrap .topic_parent p {
  width: 212px;
  word-break: break-all;
  font-size: 93%;
  line-height: 150%;
}

#game_community_wrap .topic_child {
  margin: 4px 0 0 8px;
  padding: 4px;
  border: 2px solid #ccc;
}

#game_community_wrap .topic_child p {
  width: 212px;
  word-break: break-all;
  font-size: 93%;
  line-height: 150%;
}

#game_community_wrap .topic_child dt {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  margin: 2px 0;
  font-size: 85%;
}

#game_community_wrap .topic_child dt img {
  width: 16px;
  margin-right: 2px;
  vertical-align: -4px;
}

#game_community_wrap .topic_child p {
  width: 192px;
}

.game_community_wrap_more {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30px;
  background: #eee;
  color: #444;
  text-align: center;
  font-size: 85%;
  line-height: 30px;
}

.c-game-product {
  width: 210px;
}

.c-game-product__img-wrap {
  overflow: hidden;
  max-height: 100px;
  margin-bottom: 8px;
}

.c-game-product__img-wrap img {
  width: 210px;
}

.c-game-product__title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 5px;
  color: #333;
  line-height: 1.5;
}

.c-game-product__desc {
  display: -webkit-box;
  overflow: hidden;
  height: 70px;
  color: #333;
  text-overflow: ellipsis;
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.c-game-product__game {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  bottom: 0;
  left: 0;
  width: 222px;
  height: 24px;
  padding-left: 8px;
  background-color: #eee;
  line-height: 26px;
}

.c-game-product__tag {
  width: 64px;
  background-color: #888;
}

.c-game-product__new {
  width: 40px;
  background-color: #f33;
  font-weight: bold;
}

.c-game-product__tag, .c-game-product__new {
  top: 0;
  right: 0;
  height: 20px;
  color: #fff;
  text-align: center;
  line-height: 21px;
}

.c-game-product__game, .c-game-product__tag, .c-game-product__new {
  display: block;
  position: absolute;
}

/* マイページ マイゲームのリスト */
.c-game-unit {
  display: table;
  table-layout: fixed;
}

.c-game-unit__image {
  display: table-cell;
  vertical-align: middle;
}

.c-game-unit__image img {
  width: 40px;
  height: 40px;
  margin-right: 8px;
}

.c-game-unit__content {
  display: table-cell;
  vertical-align: middle;
}

.c-game-unit__title {
  font-weight: bold;
  font-size: 14px;
  display: -webkit-box;
  overflow: hidden;
  width: 165px;
  max-height: 36px;
  color: #333;
  vertical-align: middle;
  text-overflow: ellipsis;
  line-height: 18px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* 事前登録受付中ゲームのリスト */
.c-game-wide {
  display: table;
  position: relative;
  table-layout: fixed;
}

.c-game-wide__image {
  display: table-cell;
  vertical-align: top;
}

.c-game-wide__image img {
  width: 100px;
  height: 100px;
  margin-right: 10px;
}

.c-game-wide__content {
  display: table-cell;
  vertical-align: top;
}

.c-game-wide__title {
  font-weight: bold;
  font-size: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: inline-block;
  width: 346px;
  margin-bottom: 4px;
  color: #333;
  line-height: 20px;
}

.c-game-wide__desc {
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden;
  width: 346px;
  height: 32px;
  color: #333;
  vertical-align: middle;
  text-overflow: ellipsis;
  line-height: 16px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.c-game-wide__action {
  font-weight: bold;
  font-size: 14px;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 32px;
  padding: 0 10px;
  border-radius: 2px;
  background-color: #ff821e;
  color: #fff;
  line-height: 34px;
}

/* ゲソ10市 訴求レイアウト */
.c-gesoichi {
  margin-right: auto;
  margin-left: auto;
  font-family: "Noto Sans JP", sans-serif;
}

.c-gesoichi__inner {
  display: flex;
  background-color: #ff5a5f;
}

.c-gesoichi__timer {
  font-weight: bold;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 2px;
  background-color: #333;
  color: #fff;
  text-align: center;
}

.c-gesoichi__timer span {
  color: #ffeb00;
}

.c-gesoichi--header-container {
  width: 1000px;
}

.c-gesoichi--header-container .c-gesoichi__inner {
  align-items: flex-start;
  justify-content: space-between;
  height: auto;
  padding: 8px;
}

.c-gesoichi--header-container .c-gesoichi__title {
  width: 270px;
}

.c-gesoichi--header-container .c-gesoichi__copy {
  font-weight: bold;
  font-size: 24px;
  display: flex;
  align-items: center;
  height: 36px;
  color: #fff;
}

.c-gesoichi--header-container .c-gesoichi__copy > em {
  font-weight: bold;
  font-size: 40px;
  margin: 0 4px 0 10px;
  color: #ffeb00;
}

.c-gesoichi--header-container .c-gesoichi__copy > b {
  font-weight: bold;
  font-size: 36px;
  margin-right: 10px;
  color: #ffeb00;
}

.c-gesoichi--header-container .c-gesoichi__copy > span {
  font-weight: bold;
  font-size: 30px;
}

.c-gesoichi--header-container .c-gesoichi__timer {
  width: 230px;
  height: 36px;
  padding: 0 16px;
}

.c-gesoichi--header-container .c-gesoichi__timer span {
  font-weight: bold;
  font-size: 18px;
}

/* 受け取りページ */
.c-gift-code {
  width: 1000px;
  margin: 24px auto;
  padding: 48px;
  border: 1px solid #ddd;
  background-color: #fff;
  text-align: center;
}

.c-gift-code img {
  width: 400px;
}

.c-gift-code p {
  font-weight: bold;
  font-size: 24px;
  margin-right: auto;
  margin-left: auto;
  width: 640px;
  margin-bottom: 16px;
  text-align: center;
}

.c-gift-code span {
  font-size: 16px;
  display: block;
  margin-top: 16px;
  color: #666;
}

.c-gift-code input {
  box-sizing: border-box;
  width: 500px;
  height: 48px;
  padding: 8px;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
}

.c-gift-code__action {
  margin-right: auto;
  margin-left: auto;
  width: 265px;
  height: 50px;
  margin-top: 32px;
}

.c-gift-code .btn-gift-code {
  margin-right: auto;
  margin-left: auto;
  width: 265px;
  margin-top: 32px;
  border: 0;
  border-radius: 25px;
  background-color: #0096ff;
  color: #fff;
}

.c-gift-code a {
  font-weight: bold;
  font-size: 16px;
  color: #fff;
  line-height: 50px;
}

.c-gift-code__reward {
  margin-right: auto;
  margin-left: auto;
  width: 640px;
  padding: 10px 0;
  background-color: #eee;
}

.c-gift-code__reward img {
  display: inline;
  width: 32px;
  height: 32px;
}

.c-gift-code__reward p {
  display: inline;
  vertical-align: middle;
  line-height: 32px;
}

.c-gift-code-game {
  width: 920px;
  margin-top: 40px;
  padding: 40px 36px;
  background-color: #fff4c8;
}

.c-gift-code-game ul {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
}

.c-gift-code-media {
  background-color: #fff;
}

.c-gift-code-media a {
  color: #222;
}

.c-gift-code-media a p {
  font-weight: bold;
  font-size: 16px;
  width: 100%;
  height: 44px;
  margin-bottom: 4px;
  text-align: left;
  line-height: 1.4;
}

.c-gift-code-media a span {
  font-size: 12px;
  width: 120px;
  height: 12px;
  margin-top: 0;
  padding: 8px;
  background-color: #f6f6f6;
  line-height: 12px;
}

.c-gift-code-media img {
  width: 104px;
  height: 104px;
  margin-bottom: 12px;
}

.c-gift-code-media__content {
  width: 157px;
  padding: 12px 8px;
  box-shadow: 0 1px 6px rgba(51, 51, 51, 0.15);
}

.c-header-user-info__l-item-btn {
  width: 64px;
}

/* クイックチャージ */
.quick-charge {
  float: left;
  position: relative;
  margin: 3px 0 0 3px;
}

.quick-charge__point {
  position: absolute;
  top: -2px;
  right: 23px;
  height: 13px;
  padding: 0 5px;
  border-radius: 6px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #ff0;
  font-size: 85%;
  line-height: 13px;
}

.quick-charge .quick-charge__trigger {
  display: block;
  height: 36px;
  padding: 0 22px 0 6px;
  border: 1px solid #ddd;
  background-color: #fff;
  color: #666;
  line-height: 37px;
}

.quick-charge .quick-charge__trigger .icon_coin {
  width: 26px;
  height: 26px;
  vertical-align: -8px;
}

.quick-charge .quick-charge__trigger i {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 16px;
  height: 34px;
  background-color: #ff7d00;
  color: #fff;
  text-align: center;
  line-height: 34px;
}

.quick-charge .quick-charge__trigger:hover {
  border: 1px solid #ccc;
}

.quick-charge .quick-charge__trigger.active {
  border: 1px solid #888;
  color: #000;
}

.quick-charge .quick-charge__trigger:hover i {
  background-color: #ff821e;
}

.quick-charge .quick-charge__trigger.active i {
  background-color: #ff7d00;
}

.quick-charge .quick-charge__menu {
  z-index: 99999;
  display: none;
  position: absolute;
  top: 39px;
  left: 0;
  width: 460px;
  height: 420px;
  border: 4px solid #ff821e;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.4);
}

.quick-charge .quick-charge__menu iframe {
  display: block;
  width: 460px;
  height: 400px;
  background-color: #fff;
}

#game_wrap.game_wrap-hidden {
  visibility: hidden;
}

.quick-charge__menu__close {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 30px;
  height: 30px;
  border-radius: 2px;
  background-color: #444;
  color: #fff;
  text-align: center;
  font-size: 131%;
  line-height: 29px;
  cursor: pointer;
}

.quick-charge__footer {
  height: 20px;
  padding: 0 2px;
  background-color: #ff821e;
  color: #fff;
  text-align: right;
  font-size: 77%;
  line-height: 24px;
}

.quick-charge__footer a {
  margin: 0 0 0 10px;
  color: #fff;
  text-decoration: underline;
}

.quick-charge-present {
  float: left;
  position: relative;
  width: 214px;
  height: 38px;
  margin: 3px 0 0 16px;
  padding: 0 6px 0 0;
  background-color: #946400;
  color: #fff078;
  text-align: right;
  font-size: 85%;
}

.quick-charge-present::after {
  position: absolute;
  top: 0;
  left: -16px;
  width: 0;
  height: 0;
  border-top: 19px solid transparent;
  border-right: 16px solid #946400;
  border-bottom: 19px solid transparent;
  content: "";
}

.quick-charge-present span {
  display: block;
  padding: 2px 0 0;
}

.quick-charge-present a {
  color: #fff;
}

/* クイックチャージ(2017.09.27) */
.quick-charge-btn {
  position: absolute;
  top: -3px;
  right: 180px;
}

/* クイックチャージ */
.quick-charge-open {
  z-index: 10;
  position: absolute;
  left: 0;
}

.quick-charge-open a {
  display: block;
  float: left;
  position: absolute;
  width: 140px;
  height: 36px;
  margin: 3px 0 0 3px;
  padding: 0 28px 0 5px;
  border: solid #444 1px;
  background-color: #fff;
  color: #666;
  line-height: 40px;
}

.quick-charge-open a:hover {
  border: solid #444 1px;
  background: #fcf5d5;
}

.quick-charge-open a:hover .fa-angle-down {
  background-color: #ff821e;
}

.quick-charge-open__badge {
  font-size: 11px;
  z-index: 2;
  display: block;
  position: absolute;
  top: -4px;
  right: 30px;
  padding: 3px 5px;
  border-radius: 10px;
  background-color: #f33;
  color: #fff;
  line-height: 10px;
}

.quick-charge-open__coin {
  width: 24px;
  height: 24px;
  padding-right: 5px;
}

.quick-charge-open .fa-angle-down {
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  top: 2px;
  right: 2px;
  width: 18px;
  height: 32px;
  background-color: #ff7d00;
  color: #fff;
  text-align: center;
  line-height: 32px;
}

/* ゲームに戻る */
.quick-charge-close {
  z-index: 1;
  position: absolute;
  left: 0;
  opacity: 0;
}

.quick-charge-close a {
  display: block;
  float: left;
  position: absolute;
  width: 140px;
  height: 36px;
  margin: 3px 0 0 3px;
  padding: 0 28px 0 5px;
  border: solid #999 1px;
  background-color: #999;
  color: #0086e5;
  line-height: 36px;
}

.quick-charge-close .fa-reply {
  margin-right: 10px;
  padding: 5px;
  border-radius: 40px;
  background-color: #333;
}

.quick-charge-close .fa-angle-up {
  font-weight: bold;
  font-size: 18px;
  position: absolute;
  top: 2px;
  right: 2px;
  width: 18px;
  height: 32px;
  background-color: #333;
  color: #fff;
  text-align: center;
  line-height: 30px;
}

.quick-charge-content {
  position: relative;
  opacity: 0;
}

/* 早押しキャンペーン訴求レイアウト */
.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-notification-list > li {
  padding-top: 2px;
}

/* 旧通知（_old-components.scssより移管） */
/* お知らせ枠 */
#notification {
  z-index: 10;
  position: relative;
  width: 972px;
  margin: 0 auto 6px;
}

#notification li {
  position: relative;
}

#notification li a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  height: 34px;
  margin: 0 0 4px 0;
  border: 1px solid #ffbe00;
  background: #fff4c8;
  color: #333;
  font-weight: bold;
  font-size: 116%;
  line-height: 34px;
}

#notification li a:hover {
  border: 1px solid #d28200;
  text-decoration: none;
}

#notification li a img {
  height: 24px;
  margin: 0 6px 0 8px;
  vertical-align: -7px;
}

#coupon_display {
  position: relative;
}

#notification li .notify_close {
  display: block;
  position: absolute;
  top: 6px;
  right: 6px;
  width: 24px;
  height: 24px;
  background: rgba(255, 255, 255, 0.8);
  color: #444;
  text-align: center;
  line-height: 26px;
  cursor: pointer;
}

#notification .coupon_display_close {
  z-index: 1;
  display: block;
  position: absolute;
  top: 6px;
  right: 6px;
  width: 110px;
  height: 24px;
  background: rgba(255, 255, 255, 0.8);
  color: #444;
  text-align: center;
  font-size: 85%;
  line-height: 26px;
  cursor: pointer;
}

#notification li .notify_close:hover {
  background-color: #fff;
}

#notification .notify_pink a {
  border: 1px solid #e696fa;
  background: #ffe6fa;
}

#notification .notify_pink a:hover {
  border: 1px solid #dc50f0;
}

#notification .notify_blue a {
  border: 1px solid #8cbeff;
  background: #e6fafa;
}

#notification .notify_blue a:hover {
  border: 1px solid #2682ff;
}

#notification .notify_message a img {
  width: 86px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -24px;
}

#notification .notify_game a img {
  width: 88px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -48px;
}

#notification .notify_friend a img {
  width: 88px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -72px;
}

#notification .notify_coupon a img {
  width: 85px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -96px;
}

#notification .notify_gesoinfo a img {
  width: 79px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -144px;
}

#notification .notify_gesocamp a img {
  width: 92px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -168px;
}

#notification #super_sale a img {
  width: 106px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -216px;
}

#notification #gamer_time a img {
  width: 104px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -264px;
}

#notification .notify_gesoten_ichi a img {
  width: 75px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -120px;
}

#notification .notify_first_credit a img {
  padding-top: 6px;
}

#notification #geso_bingo a img {
  width: 82px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -192px;
}

#notification .notify_vegemon_ichi a img {
  width: 101px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -350px -240px;
}

#notification .notify_super_sale a {
  padding: 0 0 0 50px;
  background: url("//static.gesoten.com/img/icon_super_sale.png?v=202504021600") no-repeat 6px center #ff7800;
}

#notification .notify_vc_reward_double a:hover,
#notification .notify_reward_double a:hover,
#notification .notify_reward_100 a:hover,
#notification .notify_super_sale a:hover {
  border: 1px solid #444;
}

/* タウンからゲソてんへ連携部分 */
.c-permission {
  width: 980px;
  margin: 0 auto 10px;
  padding: 30px 0;
  border: 1px solid #ddd;
  border-radius: 5px;
  background-color: #fff;
  text-align: center;
}

.c-permission p {
  font-size: 12px;
  color: #555;
  line-height: 18px;
}

.c-permission__lead {
  width: 320px;
  margin: 0 auto 15px;
}

.c-permission__lead img {
  width: 100%;
}

.c-permission__action {
  font-weight: bold;
  font-size: 24px;
  display: block;
  width: 420px;
  height: 70px;
  margin: 0 auto 24px;
  border-radius: 5px;
  background-color: #ff7d00;
  box-shadow: 0 4px 0 #e65f00;
  color: #fff;
  line-height: 75px;
}

.c-permission__action:hover {
  box-shadow: none;
  color: #fff;
  text-decoration: none;
  -webkit-transform: translate3d(0, 4px, 0);
          transform: translate3d(0, 4px, 0);
}

.c-permission__regulation {
  font-size: 16px;
  margin-bottom: 20px;
  color: #555;
}

.prof-setting-frame {
  margin-bottom: 20px;
  border: 1px #bce8f1 solid;
  background-color: #d9edf7;
  text-align: center;
}

.prof-setting-frame::after {
  display: block;
  clear: both;
  content: "";
}

.prof-setting-frame__btn-regist {
  font-size: 14px;
  width: 200px;
  margin: 10px auto;
  padding: 8px;
  border: none;
  border-radius: 5px;
  background-color: #ff7d00;
  color: #fff;
  float: left;
  margin-left: 160px;
}

.prof-setting-frame__btn-login {
  font-size: 14px;
  width: 200px;
  margin: 10px auto;
  padding: 8px;
  border: none;
  border-radius: 5px;
  background-color: #0096ff;
  color: #fff;
  float: right;
  margin-right: 160px;
}

.prof-setting-frame__btn-line {
  font-size: 14px;
  width: 200px;
  margin: 10px auto;
  padding: 8px;
  border: none;
  border-radius: 5px;
  background-color: #ff7d00;
  color: #fff;
  display: inline-block;
  text-align: center;
}

/* 旧プロフィール（_old-components.scssより移管） */
#prof_wrap {
  border-radius: 5px;
  background-color: #fff;
}

#prof_wrap .prof {
  min-width: 30px;
}

#profile_edit,
#profile_menu {
  width: 180px;
  padding: 5px 10px 40px;
}

#profile_edit li,
#profile_menu li {
  padding: 10px 0 10px 16px;
  border-bottom: 1px dotted #ccc;
  background: url("//static.gesoten.com/img/icon_arrow_ccc.png?v=202504021600") no-repeat 0 50%;
}

#profile_edit li.current a,
#profile_menu li.current a {
  color: #333;
  font-weight: bold;
}

#profile_edit li:last-child,
#profile_menu li:last-child {
  border: none;
}

#profile_edit .c-prof-edit-avatar > li,
#profile_menu .c-prof-edit-avatar > li {
  padding: 0;
  border-bottom: none;
  background: none;
}

.c-prof-nav-egg {
  padding-top: 20px;
}

.c-prof-nav-egg a {
  display: block;
  padding: 10px 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.c-prof-nav-egg a img {
  width: 32px;
  margin-right: 5px;
  vertical-align: -6px;
}

.icon_yarman .more_btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 100px;
  height: 23px;
  font-size: 77%;
  line-height: 24px;
}

#user_gallery {
  width: 750px;
  margin: 0;
  padding: 20px 9px 9px;
}

.user_gallery_inner {
  margin: 0 0 20px;
  padding: 10px;
  background-color: #eee;
}

.user_gallery_inner ul {
  overflow: hidden;
}

.user_gallery_inner ul li {
  float: left;
  width: 60px;
  height: 60px;
  margin: 0 6px 20px;
  padding: 8px;
  border: 1px solid #ddd;
  background-color: #fff;
  text-align: center;
}

.user_gallery_inner ul li a {
  display: table-cell;
  width: 60px;
  height: 60px;
  vertical-align: middle;
}

.user_gallery_input {
  text-align: center;
}

.user_gallery_input .btn_light_blue {
  width: 180px;
  height: 50px;
  margin: 14px auto 0;
  line-height: 50px;
}

/* 他人プロフィール表示  */
#user_profile #your_info {
  width: 436px;
}

/* mypageお知らせとゲームリスト */
.user_info_gallery {
  z-index: 2;
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 822px;
  text-align: right;
}

.user_info_gallery span {
  display: block;
  float: right;
  width: 84px;
  height: 22px;
  padding: 0 12px 0 6px;
  background-color: #ddd;
  background-color: rgba(0, 0, 0, 0.3);
  color: #fff;
  font-weight: bold;
  font-size: 85%;
  line-height: 22px;
}

.user_info_gallery div {
  float: right;
  width: 806px;
  padding: 4px 8px;
  background-color: #ddd;
  background-color: rgba(0, 0, 0, 0.3);
}

.user_info_gallery div ul {
  overflow: hidden;
}

.user_info_gallery div ul li {
  float: right;
  width: 60px;
  height: 60px;
  margin: 0 3px 0 0;
  padding: 2px;
  background-color: #fff;
  text-align: center;
}

.user_info_gallery div ul li a {
  display: table-cell;
  width: 60px;
  height: 60px;
  vertical-align: middle;
}

#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;
}

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

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

/* 旧プロフィール追加分（_old-components.scssより移管） */
/* 以下から各ページごとのスタイル */
#blocked_users_list ul {
  margin: 5px 0 0 0;
}

#blocked_users_list li {
  float: left;
  position: relative;
  width: 170px;
  height: 40px;
  margin: 0 5px 5px 0;
  padding: 5px;
  border: 1px solid #ccc;
  background-color: #fff;
}

#blocked_users_list li .btn_gray {
  display: block;
  margin: 0;
  padding: 2px;
}

#blocked_users_list li:hover {
  border-color: #999;
}

#blocked_users_list li .user_name {
  display: block;
  width: 170px;
}

#blocked_users_list li .user_name img {
  float: left;
}

#blocked_users_list li .user_name strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  float: right;
  width: 130px;
}

#blocked_users_list li .cancel_block {
  position: absolute;
  right: 5px;
  bottom: 5px;
  font-size: 85%;
}

#user_info_others_prof {
  overflow-x: none;
  overflow-y: auto;
  max-height: 379px;
  font-size: 116%;
}

#user_info_others_prof li {
  margin: 0 0 8px;
  padding: 0 0 2px;
  border-bottom: 1px dashed #ddd;
}

#user_info_others_prof .twitter iframe {
  vertical-align: -9px;
}

#user_info_others_prof small {
  font-weight: bold;
}

#user_info_game {
  overflow: hidden;
}

#history_header {
  position: relative;
  height: 34px;
  padding: 0 0;
}

#history_header #history_month {
  position: absolute;
  top: 0;
  right: 0;
}

#history_month {
  margin-bottom: 8px;
  text-align: right;
}

#block_user_form {
  width: 600px;
  margin: 0 0 10px 0;
  padding: 5px;
  border: 1px solid #ccc;
  background-color: #eee;
}

#block_user_form #block_user_address {
  display: block;
  float: left;
  width: 480px;
  height: 20px;
  padding: 4px;
}

#profile_edit,
#user_info_edit,
#block_list,
#coin_history,
#medal_history {
  width: 750px;
  margin: 0;
  padding: 9px;
}

#user_info_edit h1,
#block_list h1 {
  padding: 0 0 10px 0;
  background: none;
}

#profile_edit table,
#user_info_edit table {
  clear: both;
  width: 100%;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #ccc;
}

#profile_edit table th {
  padding: 10px;
  background-color: #eee;
  vertical-align: top;
  text-align: left;
  font-weight: bold;
  line-height: 100%;
}

#user_info_edit table th {
  padding: 10px;
  background-color: #eee;
  vertical-align: top;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
  line-height: 100%;
}

#profile_edit table td {
  width: 550px;
  padding: 8px;
  background-color: #fff;
  vertical-align: middle;
}

#user_info_edit table td {
  width: 550px;
  padding: 8px;
  background-color: #fff;
  vertical-align: middle;
}

#user_info_edit table td .btn_gray {
  padding: 3px;
}

#profile_edit table td small {
  font-size: 85%;
}

#profile_edit table td.p_0 {
  padding: 0;
}

#profile_edit table td .left {
  width: 475px;
  padding: 5px;
  border-bottom: 1px solid #ccc;
}

#profile_edit table td .right {
  width: 70px;
  padding: 5px;
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

#profile_edit table td .fixed_height {
  height: 28px;
  line-height: 28px;
}

#profile_edit table #your_site input {
  width: 300px;
}

#profile_edit table #about_you {
  display: block;
  position: relative;
}

#profile_edit table #about_you textarea {
  overflow-y: auto;
  width: 490px;
  height: 100px;
  resize: none;
}

#profile_edit table .privacy_setting select {
  display: block;
}

#user_info_edit .align_right {
  font-size: 85%;
}

#user_info_edit.wanna_quit p {
  padding: 0 0 10px 0;
}

#user_info_edit.wanna_quit p.warn {
  margin: 0 0 10px 0;
  padding: 5px;
  border: 1px solid #f2abab;
  background-color: #fee6e6;
  color: #a80000;
}

#user_info_edit.wanna_quit input[type="password"] {
  width: 140px;
  padding: 5px;
}

#user_info_edit .taikai_now p {
  padding: 5px;
}

#user_info_edit ul li {
  padding: 0 0 5px 0;
}

#user_info_edit ul li:last-child {
  padding: 0;
}

#user_info_edit.mail_setting ul {
  margin: 10px;
  padding: 10px;
  background-color: #fff;
}

#user_info_edit.mail_setting ul li {
  float: left;
  padding: 0 9px;
  border-right: 1px solid #ccc;
}

#user_info_edit.mail_setting ul li:last-child {
  border: none;
}

#user_info_edit .table_medium th {
  width: 200px;
}

#user_info_edit .table_medium ul li {
  padding: 5px;
  border-bottom: 1px solid #ccc;
  font-size: 93%;
}

#user_info_edit .table_medium ul li input {
  margin: 0 5px 0 0;
}

#user_info_edit .table_medium ul li:last-child {
  padding: 5px;
  border: none;
}

#user_info_edit .table_medium textarea {
  display: block;
  width: 500px;
  height: 100px;
  resize: none;
}

#user_info_edit #edit_msg_option {
  width: 500px;
  margin: 0 auto;
}

#user_info_edit #edit_msg_option th {
  width: 200px;
}

#block_list #block_user_form #block_user_btn {
  display: block;
  float: right;
  height: 30px;
  padding: 0 10px;
}

#block_list p {
  padding: 0 0 10px 0;
}

#block_list p .warn {
  color: #ff0303;
  font-weight: bold;
}

#coin_history table {
  clear: both;
  width: 100%;
  margin: 0 0 10px 0;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #ccc;
}

#coin_history table.star_limit {
  width: 50%;
}

#coin_history table th {
  padding: 5px;
  background-color: #eee;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
}

#coin_history table.star_limit .th_charge {
  width: 50%;
}

#coin_history table td {
  padding: 5px;
  background-color: #fff;
}

#coin_history table .game-title {
  display: -webkit-box;
  overflow: hidden;
  width: 90px;
  height: 38px;
  text-align: left;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

#coin_history table .spent_date {
  width: 95px;
  text-align: center;
}

#coin_history table .charge,
#coin_history table .spent,
#coin_history table .status {
  width: 80px;
  text-align: right;
  font-weight: bold;
}

#coin_history table#medal_balance_table .charge,
#coin_history table#medal_balance_table .spent {
  width: 150px;
}

#coin_history table .charge {
  color: #547800;
}

#coin_history table .spent {
  color: #e35656;
}

#user_information {
  float: left;
  position: relative;
  width: 456px;
  margin: 0 0 0 13px;
}

#user_information #information li {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 456px;
  margin-bottom: 4px;
}

#coin_history .coin_balance {
  position: absolute;
  top: 0;
  right: 130px;
  width: 370px;
  height: 27px;
  margin-right: 10px;
  padding: 0 6px;
  border: 1px solid #ccc;
  background-color: #fff;
  text-align: center;
  line-height: 27px;
}

#coin_history .coin_balance span {
  padding-left: 10px;
  border-left: 1px solid #ccc;
  color: #e35656;
  font-size: 85%;
}

#coin_history .coin_balance strong {
  font-weight: bold;
}

/* SMS認証追加 */
.gallery_list li .cancel {
  display: none;
  position: absolute;
  top: 4px;
  right: 4px;
}

.c-induction-banner-2col {
  width: 476px;
  margin-bottom: 10px;
}

.c-induction-banner-bottom a,
.c-induction-banner-2col a {
  display: block;
}

.c-induction-banner-bottom img,
.c-induction-banner-2col img {
  width: 100%;
}

.c-induction-banner a {
  display: block;
}

.c-induction-banner img {
  width: 100%;
}

.c-induction-banner--big {
  width: 972px;
  margin: 0 auto 10px;
}

.c-induction-banner--sales {
  width: 1000px;
  margin-bottom: 0;
}

.c-induction-hayaoshi {
  position: relative;
}

.c-induction-hayaoshi a {
  display: block;
}

.c-induction-hayaoshi__remain {
  font-weight: bold;
  font-size: 28px;
  position: absolute;
  top: 25px;
  left: 420px;
  color: #333;
}

.c-induction-hayaoshi__remain > span {
  font-weight: bold;
  font-size: 40px;
  padding: 0 10px;
  color: #f33;
}

.c-bigbnr-counter {
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  height: auto;
  border: 1px solid #fac658;
}

.c-bigbnr-counter__title {
  width: 562px;
}

.c-bigbnr-counter__title img {
  width: 100%;
}

.c-bigbnr-counter__count {
  width: 166px;
  height: 88px;
  background-color: #fef1d6;
  text-align: center;
}

.c-bigbnr-counter__count > img {
  width: 100%;
}

.c-bigbnr-counter__count-container {
  margin: 2px auto;
  color: #1d3e71;
  font-weight: bold;
}

.c-bigbnr-counter__count-number {
  display: inline-block;
  width: 85px;
  border: 1px solid #1d3e71;
  border-radius: 20px;
  background-color: #fff;
  text-align: center;
  letter-spacing: 0.3em;
  font-size: 17px;
  line-height: 30px;
}

.c-bigbnr-counter__count-number span {
  color: #ee6400;
}

.c-bigbnr-counter__count-text {
  display: inline;
  font-size: 13px;
}

/* カルーセルの上部に表示されるお知らせ用共通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;
}

/* 島のアニメーション */
.island_s {
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-animation: float linear infinite;
          animation: float linear infinite;
}

.island_s:nth-child(1) {
  -webkit-animation-duration: 2.7s;
          animation-duration: 2.7s;
}

.island_s:nth-child(2) {
  -webkit-animation-duration: 2.9s;
          animation-duration: 2.9s;
}

.island_s:nth-child(3) {
  -webkit-animation-duration: 2.8s;
          animation-duration: 2.8s;
}

.island_s:nth-child(4) {
  -webkit-animation-duration: 2.5s;
          animation-duration: 2.5s;
}

.island_s:nth-child(5) {
  -webkit-animation-duration: 2.6s;
          animation-duration: 2.6s;
}

@-webkit-keyframes float {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  33% {
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
  99% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes float {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  33% {
    -webkit-transform: translateY(15px);
            transform: translateY(15px);
  }
  99% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

#island_world .island_admin {
  -webkit-animation-duration: 3s;
          animation-duration: 3s;
}

/* くじ固有の色 */
/* 2020 ゲソてんおみくじ用 */
/* くじ */
.c-lottery {
  overflow: hidden;
  width: 1000px;
  margin: 0 auto;
  background-color: #fff;
}

.c-lottery img {
  width: 100%;
}

.c-lottery__inner {
  margin-bottom: 30px;
  padding: 20px 0 30px;
  background: repeating-linear-gradient(135deg, transparent, transparent 12px, rgba(255, 255, 255, 0.5) 12px, rgba(255, 255, 255, 0.5) 24px);
  background-color: #ffffc8;
  background-size: auto auto;
}

.c-lottery__content {
  margin-bottom: 40px;
}

.c-lottery__loto-box {
  width: 400px;
  margin: 20px auto 40px;
  text-align: center;
}

.c-lottery__action {
  margin-bottom: 30px;
  text-align: center;
}

.c-lottery__action input[type="submit"] {
  width: 400px;
  height: 72px;
  box-shadow: 0 2px 8px 0 rgba(51, 51, 51, 0.3);
  color: #fff;
}

.c-lottery__action-btn {
  font-weight: bold;
  font-size: 24px;
  display: inline-block;
  width: 400px;
  height: 72px;
  border: 0;
  border-radius: 5px;
  background-color: #f33;
  color: #fff;
  vertical-align: middle;
  text-align: center;
  line-height: 72px;
}

.c-lottery__action-btn:hover {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

.c-lottery__action-btn--done {
  background-color: #999;
}

.c-lottery__action-btn--done:hover {
  opacity: 1;
}

.c-lottery__action-btn--twitter {
  background: #00abe9;
}

.c-lottery__more-action {
  padding: 0 16px;
  text-align: center;
}

.c-lottery__more-action-text {
  font-size: 12px;
  margin-bottom: 8px;
  padding-top: 8px;
  color: #727272;
}

.c-lottery__extend-link {
  font-weight: bold;
  font-size: 20px;
}

.c-lottery__bnr {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  box-shadow: 0 2px 8px 0 rgba(51, 51, 51, 0.3);
}

.c-lottery--newyear .c-lottery__inner {
  background-color: #f0f0aa;
}

.c-lottery--newyear .c-lottery__action input[type="submit"] {
  background-color: #333;
  color: #fff532;
}

.c-lottery-header {
  box-sizing: border-box;
  position: relative;
  width: 600px;
  margin: 60px auto 30px;
  padding: 16px;
  border-radius: 10px;
  background-color: #fff;
  box-shadow: 0 2px 8px 0 rgba(51, 51, 51, 0.3);
  text-align: center;
}

.c-lottery-header__inner {
  padding-top: 30px;
  border: 4px dashed #14aa00;
  border-radius: 8px;
}

.c-lottery-header__logo {
  position: relative;
  margin-bottom: 40px;
}

.c-lottery-header__egg-left {
  position: absolute;
  top: 0;
  left: -90px;
  width: 130px;
}

.c-lottery-header__egg-right {
  position: absolute;
  top: 0;
  right: -90px;
  width: 130px;
}

.c-lottery-header__schedule {
  font-weight: bold;
  font-size: 24px;
  margin: 0 20px 16px;
  padding: 8px 0;
  border-radius: 5px;
  background-color: #ffb428;
  color: #fff;
}

.c-lottery-header__text {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 16px;
  color: #333;
}

.c-lottery-header__ribbon {
  position: absolute;
  top: 0;
  right: 50%;
  left: 50%;
  width: 720px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.c-lottery-header--new .c-lottery-header__inner {
  padding-top: 30px;
  border: 4px dashed #00aae6;
}

.c-lottery-header--new .c-lottery-header__egg-left {
  top: 40px;
}

.c-lottery-header--new .c-lottery-header__egg-right {
  top: 40px;
}

.c-lottery-header--newyear .c-lottery-header__schedule {
  background: #dcb428;
}

.c-lottery-header--newyear .c-lottery-header__inner {
  border: 4px dashed #ff3c28;
}

.c-lottery-counter__wrap {
  display: table;
  width: 600px;
  margin: 0 auto;
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 2px 8px 0 rgba(51, 51, 51, 0.3);
  text-align: center;
}

.c-lottery-counter__title {
  font-weight: bold;
  font-size: 24px;
  display: table-cell;
  width: 58%;
  padding: 16px 8px;
  border-radius: 5px 0 0 5px;
  background-color: #14aa00;
  color: #fff;
  vertical-align: middle;
}

.c-lottery-counter__count {
  font-weight: bold;
  font-size: 24px;
  display: table-cell;
  color: #333;
  vertical-align: middle;
}

.c-lottery-counter__count-number {
  font-weight: bold;
  font-size: 40px;
  margin-right: 4px;
}

.c-lottery-counter--new .c-lottery-counter__title {
  background-color: #00aae6;
}

.c-lottery-counter--newyear .c-lottery-counter__title {
  background-color: #ff3c28;
}

.c-lottery-prize {
  width: 600px;
  margin: 0 auto;
  border: 4px solid #14aa00;
  border-radius: 5px;
  background-color: #fff;
}

.c-lottery-prize header {
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 16px;
  padding: 8px 0;
  background-color: #14aa00;
  color: #fff;
  text-align: center;
}

.c-lottery-prize--new {
  border: 4px solid #00aae6;
}

.c-lottery-prize--new header {
  background-color: #00aae6;
}

.c-lottery-prize--newyear {
  border: 4px solid #ff3c28;
}

.c-lottery-prize--newyear header {
  background-color: #ff3c28;
}

.c-lottery-list {
  padding: 0 16px;
  text-align: center;
}

.c-lottery-list__item {
  padding-bottom: 16px;
}

.c-lottery-list__item:not(:last-child) {
  margin-bottom: 16px;
  border-bottom: 4px dashed #14aa00;
}

.c-lottery-list__content {
  display: table;
  width: 100%;
}

.c-lottery-list__caption {
  font-weight: bold;
  font-size: 24px;
  display: table-cell;
  width: 40%;
  color: #333;
}

.c-lottery-list__prize {
  font-weight: bold;
  font-size: 24px;
  display: table-cell;
  color: #f33;
}

.c-lottery-list__prize-unit {
  font-weight: bold;
  font-size: 24px;
  margin-left: 2px;
}

.c-lottery-list--new .c-lottery-list__item:not(:last-child) {
  margin-bottom: 16px;
  border-bottom: 4px dashed #00aae6;
}

.c-lottery-list--newyear .c-lottery-list__item:not(:last-child) {
  margin-bottom: 16px;
  border-bottom: 2px dashed #ccc;
}

.c-lottery-footer {
  width: 800px;
  margin: 0 auto;
  padding-bottom: 40px;
}

.c-lottery-footer table {
  border-collapse: separate;
}

.c-lottery-notes th {
  font-size: 20px;
  padding: 16px 0 10px;
  border: 4px #999 solid;
  border-radius: 10px 10px 0 0;
  background-color: #999;
  color: #fff;
  vertical-align: middle;
  text-align: center;
}

.c-lottery-notes td {
  font-size: 16px;
  padding: 30px;
  border: 4px #999 solid;
  border-radius: 0 0 10px 10px;
  background-color: #fff;
  color: #333;
  text-align: left;
  line-height: 26px;
}

.c-lottery-draw__ticket {
  position: relative;
  width: 480px;
  margin: 0 auto 8px;
  text-align: center;
}

.c-lottery-draw__content {
  position: absolute;
  top: 49%;
  right: 50%;
  left: 50%;
  width: 100%;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.c-lottery-draw__caption {
  font-weight: bold;
  font-size: 28px;
  margin-bottom: 4px;
  color: #333;
}

.c-lottery-draw__prize {
  margin-bottom: 8px;
  color: #f33;
  font-weight: bold;
  font-size: 48px;
}

.c-lottery-draw__prize-unit {
  font-weight: bold;
  font-size: 20px;
}

.c-lottery-draw__comment {
  font-weight: bold;
  font-size: 28px;
  color: #333;
}

.c-lottery-recommend {
  margin: 0 14px 40px;
}

.c-lottery-recommend__lead {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 8px;
  color: #333;
  text-align: center;
}

.c-lottery-recommend__lead span {
  color: #f33;
}

.c-lottery-conductor {
  margin-right: auto;
  margin-left: auto;
  width: 972px;
  margin-bottom: 8px;
  background: repeating-linear-gradient(135deg, transparent, transparent 8px, rgba(255, 255, 255, 0.5) 8px, rgba(255, 255, 255, 0.5) 16px);
  background-color: #ffffc8;
  background-size: auto auto;
}

.c-lottery-conductor::after {
  display: block;
  clear: both;
  content: "";
}

.c-lottery-conductor__image {
  float: left;
  width: 370px;
  margin-right: 20px;
}

.c-lottery-conductor__image img {
  width: 100%;
}

.c-lottery-conductor__schedule {
  float: left;
  box-sizing: border-box;
  width: 305px;
  margin: 10px 20px 0 0;
  border: 2px #ffb428 solid;
  border-radius: 5px;
  background-color: #fff;
  color: #333;
  text-align: center;
}

.c-lottery-conductor__schedule table {
  width: 100%;
}

.c-lottery-conductor__schedule span {
  font-weight: bold;
  font-size: 14px;
  display: inline-block;
  padding: 10px 0;
  color: #f33;
}

.c-lottery-conductor__schedule th {
  font-weight: bold;
  font-size: 12px;
  padding: 4px 0;
  background-color: #ffb428;
  color: #fff;
  text-align: center;
}

.c-lottery-conductor__schedule td {
  font-weight: bold;
  font-size: 12px;
  padding-bottom: 8px;
  text-align: center;
}

.c-lottery-conductor__action {
  float: left;
  width: 240px;
  margin-top: 18px;
  text-align: center;
}

.c-lottery-conductor__action p {
  font-weight: bold;
  font-size: 11px;
  color: #333;
}

.c-lottery-conductor__action-btn {
  font-weight: bold;
  font-size: 14px;
  display: inline-block;
  width: 240px;
  height: 45px;
  margin-bottom: 10px;
  border-radius: 23px;
  background-color: #f33;
  box-shadow: 0 2px 8px 0 rgba(51, 51, 51, 0.3);
  color: #fff;
  line-height: 45px;
}

.c-lottery-conductor__action-btn:hover {
  color: #fff;
  text-decoration: none;
  opacity: 0.8;
}

.c-lottery-conductor__action-btn--done {
  background-color: #999;
  box-shadow: none;
}

.c-lottery-conductor__action-btn--done:hover {
  opacity: 1;
}

/* ミニゲームコーナー(ゲームページ) */
.minigame {
  margin: 40px 15px 0;
}

.minigame__inner {
  overflow: hidden;
  margin: 0 -8px 0 0;
}

.minigame__inner::after {
  display: block;
  clear: both;
  content: "";
}

.minigame__inner li {
  float: left;
  width: 137px;
  margin: 0 10px 10px 0;
  padding: 8px;
  background-color: #f4f4f4;
}

.minigame__inner a {
  font-size: 15px;
  color: #333;
}

.minigame__inner .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  margin: 5px 0 0;
}

/* ミニゲームコーナー(ゲームページ) */
.reco-minigame {
  position: absolute;
  top: -35px;
  right: -180px;
  width: 150px;
  padding: 10px;
  border-radius: 6px;
  background-color: #fff;
}

.reco-minigame li {
  float: left;
  width: 70px;
  margin: 0 10px 10px 0;
}

.reco-minigame__title {
  font-weight: bold;
  font-size: 15px;
  margin: 0 0 10px;
  border-bottom: 1px solid #eee;
  text-align: center;
}

.reco-minigame__inner {
  overflow: hidden;
  margin: 0 -10px 0 0;
}

.reco-minigame__inner a {
  font-size: 10px;
  color: #333;
}

.reco-minigame__inner .txt {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  margin: 5px 0 0;
}

.reco-minigame--greeting {
  top: 10px;
  left: -180px;
}

.c-friend-card {
  display: flex;
  position: relative;
  width: 210px;
  height: 85px;
  margin-bottom: 8px;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.c-friend-card:hover {
  background-color: #f4f4f4;
}

.c-friend-card:not(:nth-child(3n)) {
  margin-right: 9px;
}

.c-friend-card--greeted-done {
  background-color: #fff7ff;
}

.c-friend-card--no-one {
  padding: 20px 0;
}

.c-friend-card__info {
  float: left;
  width: 126px;
}

.c-friend-card__img {
  display: block;
  float: left;
  width: 60px;
  margin-right: 6px;
}

.c-friend-card__img:hover {
  opacity: 0.75;
}

.c-friend-card__img img {
  width: 100%;
}

.c-friend-card__user-name {
  font-size: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  line-height: 18px;
  cursor: pointer;
}

.c-friend-card__date {
  font-size: 12px;
  display: block;
  margin-bottom: 6px;
}

.c-friend-card__friend-cancel {
  display: none;
  position: absolute;
  top: -5px;
  right: -5px;
}

.c-friend-card__other-link {
  font-size: 11px;
}

.c-friend-card__other-link a {
  margin: 0 12px 0 0;
}

.c-friend-card__other-link img {
  height: 17px;
  margin-right: 2px;
  vertical-align: -3px;
}

.c-friend-card__link-vegemon img {
  width: 16px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") -57px -282px;
}

.c-friend-card__link-vegemon-off img {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") -73px -282px;
}

.c-friend-card__link-kizuna {
  color: #dd5193;
  font-weight: bold;
  font-size: 131%;
}

.c-friend-card__link-kizuna img {
  width: 26px;
  height: 17px;
  margin: 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") 0 -282px;
  vertical-align: -2px;
}

.c-friend-card__tag-online {
  font-size: 11px;
  position: absolute;
  bottom: 10px;
  left: 76px;
  padding: 3px 6px 0;
  border-radius: 2px;
  background-color: #6ec81e;
  color: #fff;
}

/* 旧友達システム（_old-components.scssより移管） */
/* @group 友達申請、友達リスト、友達検索、あいさつ一覧ページの友達リスト */
#friend_application {
  margin: 20px;
  padding: 10px 0 0 10px;
  border-radius: 5px;
  background: #fff;
}

#your_friend {
  position: relative;
}

#your_friend .friend_option {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 270px;
}

#your_friend .friend_option a {
  display: block;
  width: 120px;
}

.friend_list {
  overflow: hidden;
  width: 658px;
  margin: 0 -10px 0 0;
}

.friend_list li.indivi {
  position: relative;
  width: 200px;
  margin: 0 8px 10px 0;
  padding: 4px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.friend_list li.no_one {
  padding: 20px 0;
}

.friend_list li.indivi:hover {
  border-color: #666;
  background: #eee;
}

.friend_list li .user_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 160px;
  height: 35px;
  padding: 0;
  line-height: 35px;
  cursor: pointer;
}

.friend_application_list .user_img img {
  width: 35px;
  height: 35px;
}

.friend_list li .btn_group .btn_gray,
.friend_list li .btn_group .btn_orange {
  display: block;
  margin: 0;
  padding: 3px;
}

.friend_list li .cancel {
  display: none;
  position: absolute;
  top: -5px;
  right: -5px;
}

.friend_list li .cancel input {
  display: block;
  margin: 0;
  padding: 1px;
  border: 1px solid #666;
  background-color: #fff;
  color: #666;
  font-weight: bold;
}

.friend_list li .cancel input:hover {
  background: #eee;
  color: #333;
}

table td.play_time_zone ul {
  overflow: hidden;
}

table td.play_time_zone ul li {
  float: left;
  width: 94px;
}

#friend_search #InterestsBox {
  display: none;
  padding: 6px 8px;
  background: #eee;
}

.search_result_list {
  overflow: hidden;
  padding: 4px 0 24px;
}

.search_result_list li {
  float: left;
  width: 486px;
}

.search_result_list li .search_result_list_right {
  position: absolute;
  top: 10px;
  right: 0;
}

.search_result_list li .inner {
  overflow: hidden;
  position: relative;
  padding: 6px;
  border-bottom: 1px dashed #ddd;
}

.search_result_list li .inner:hover {
  background-color: #e1faff;
}

.search_result_list li a {
  display: block;
}

.search_result_list li .user_img {
  width: 48px;
  height: 48px;
  margin: 0 4px 0 0;
  vertical-align: -18px;
}

.search_result_list li .intro_text {
  display: block;
  padding: 4px 0 0;
  color: #333;
}

.search_result_list .robo_comment {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 174px;
  height: 26px;
  margin: 11px 0 0;
  padding: 5px 60px 0 8px;
  background: url("//static.gesoten.com/img/sprite_pfg.png?v=202504021600") no-repeat -170px -308px;
  color: #333;
  text-align: center;
  font-size: 85%;
}

.search_result_list .robo_set {
  position: relative;
}

.search_result_list .robo_set img {
  position: absolute;
  right: 0;
  bottom: -2px;
}

/* game_inviteで追加 */
.game_invite_list {
  padding: 10px;
}

.game_invite_list img {
  display: block;
  width: 160px;
  margin-right: 6px;
}

.game_invite_list p {
  margin-top: 18px;
}

/* 友だちゲーム招待 新レイアウト */
.c-content-single {
  position: relative;
  width: 700px;
  margin: 40px auto;
  background-color: #fff;
}

.c-friend-invite {
  padding: 30px;
}

.c-friend-invite .info_box {
  width: 638px;
}

.c-friend-invite h2.has_yarman {
  margin-bottom: 10px;
}

.c-friend-invite__text {
  margin-bottom: 20px;
  font-size: 14px;
}

.c-friend-invite-inner {
  position: relative;
  width: 598px;
  padding: 20px;
  border: 1px solid #aaa;
}

.c-friend-invite-inner p {
  margin-bottom: 10px;
  font-size: 14px;
}

.c-friend-invite-inner textarea {
  width: 586px;
  margin-bottom: 20px;
  padding: 5px;
  font-size: 14px;
}

.c-friend-invite-inner__title {
  margin-bottom: 10px;
  font-size: 18px;
}

.c-friend-invite-inner__follower-list {
  overflow-y: auto;
  min-height: 52px;
  max-height: 320px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  background-color: #fff;
}

.c-friend-invite-inner__follower-list .warn_text {
  margin: 8px 4px;
}

.c-follower-list__item {
  display: block;
  float: left;
  border-bottom: 1px dotted #ccc;
}

.c-follower-list__item:last-child, .c-follower-list__item:nth-last-child(2) {
  border-bottom: 1px solid #fff;
}

.c-follower-list__item label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: 286px;
  padding: 8px 6px;
  font-weight: bold;
  line-height: 35px;
  cursor: pointer;
}

.c-follower-list__item label:hover {
  background-color: #e1faff;
}

.c-follower-list__item input {
  display: inline;
  vertical-align: -3px;
}

.c-follower-list__item img {
  margin: 0 5px;
}

.c-follower-list__item-more a {
  display: block;
  padding: 16px 0;
  background: #eee;
  text-align: center;
}

.c-follower-list__item-more a:hover {
  background-color: #e1faff;
}

.kizuna_icon img {
  width: 26px;
  height: 17px;
  margin: 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") 0 -282px;
  vertical-align: -2px;
}

/* 白ツイとかicon */
.wrap_friend_action {
  padding: 0 0 6px;
}

.open_talk img {
  width: 31px;
  height: 17px;
  margin: 0 2px 4px 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -26px -282px;
}

.open_gift img {
  width: 17px;
  height: 17px;
  margin: 0 4px 0 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -89px -282px;
  vertical-align: -2px;
}

.gift_count {
  font-weight: bold;
}

/* kizuna gift panel */
#tweet_parent .present_btn {
  position: absolute;
  right: 5px;
  bottom: 5px;
}

#link_items {
  z-index: 2;
  display: none;
  position: absolute;
  top: auto;
  left: -8px;
  width: 100%;
  padding: 8px 0 0 6px;
  border: 1px solid #ccc;
  background-color: #fff;
  -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);
}

.kizuna_status_detail #link_items {
  left: -75px;
  width: 300px;
}

.kizuna_status_detail #link_items li {
  border: none;
}

/* kizuna gift history */
.kizuna_history_head {
  margin-top: 12px;
  margin-bottom: 12px;
  border-bottom: 1px #aaa solid;
}

.kizuna_history_head::after {
  display: block;
  clear: both;
  content: "";
}

.kizuna_history_head ul {
  width: 528px;
  margin: 0 auto;
  text-align: center;
}

.kizuna_history_head li {
  float: left;
  width: 250px;
  margin: 0 5px;
}

.kizuna_history_head ul li a,
.kizuna_history_head ul li span {
  display: block;
  padding: 12px 20px 10px;
  border-radius: 8px 8px 0 0;
  color: #666;
  font-size: 16px;
}

.kizuna_history_head ul li a {
  background: #eee;
}

.kizuna_history_head ul li span {
  position: relative;
  bottom: -1px;
  border: 1px #ccc solid;
  border-bottom: 1px #fff solid;
  color: #666;
  font-weight: bold;
}

.kizuna_history_table .th_date {
  width: 180px;
}

.kizuna_history_table .th_location {
  width: 80px;
}

.kizuna_history_table .kizuna_history_table_gift {
  width: 40px;
}

.kizuna_history_friend {
  overflow-y: auto;
  max-height: 150px;
  margin: 0 0 4px;
  padding: 8px 8px 4px 8px;
  background: #eee;
}

.kizuna_history_friend li {
  float: left;
  position: relative;
  margin: 0 6px 4px 0;
}

.kizuna_history_friend li span {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0 2px;
  background: #333;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 85%;
}

.kizuna_history_friend li span img {
  vertical-align: -3px;
}

/* 旧友達システム追加分（_old-components.scssより移管） */
#your_friend,
#friend_invite,
#friend_application_text {
  margin: 0 20px 20px;
  padding: 10px 0 0 10px;
  border-radius: 5px;
  background-color: #fff;
}

.friend_list li .user_img img {
  width: 35px;
  height: 35px;
}

.friend_list .action_date {
  display: block;
  position: absolute;
  right: 4px;
  bottom: 4px;
  text-align: right;
  font-size: 85%;
}

#friend_application .indivi {
  width: 648px;
  margin: 0 0;
  padding: 10px 0;
  border-bottom: 1px solid #ccc;
}

#friend_application .indivi:last-child {
  border: none;
}

#friend_application li span.right {
  display: block;
}

#friend_application .msg_wrap {
  position: relative;
  width: 595px;
  border: 3px solid #ccc;
}

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

#friend_application .msg_wrap::after {
  top: 18px;
  margin-top: -6px;
  border-width: 6px;
  border-right-color: #fff;
}

#friend_application .msg_wrap::before {
  top: 18px;
  margin-top: -10px;
  border-width: 10px;
  border-right-color: #ccc;
}

#friend_application .indivi .user_name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  padding: 10px;
}

#friend_application .indivi .user_name .time {
  margin-left: 10px;
}

#friend_application .indivi .msg {
  display: block;
  margin: 0;
  padding: 0 10px 10px;
  border-bottom: 1px solid #ccc;
  line-height: 170%;
}

#friend_application .indivi .btn_group {
  width: 585px;
  margin: 0 0;
  padding: 5px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #bbb;
  background: #eee;
}

#friend_application .indivi .btn_group .btn_orange,
#friend_application .indivi .btn_group .btn_gray {
  margin: 0 0 0 5px;
  padding: 5px;
  font-size: 108%;
}

#friend_application .friend_list li .btn_group {
  position: absolute;
  right: 2px;
  bottom: 2px;
  width: 70px;
  font-size: 93%;
}

#friend_invite_inner #invite_mail table th {
  width: 120px;
  padding: 10px;
  border-bottom: 1px dotted #ccc;
  vertical-align: top;
  text-align: left;
  font-weight: bold;
}

#friend_invite_inner #invite_twitter h3 {
  padding: 14px 0 0 0;
  font-size: 138.5%;
  line-height: 1;
}

#friend_invite_inner #invite_mail table {
  margin: 0 0 10px 0;
}

#friend_invite_inner #invite_mail table small {
  display: block;
  padding: 3px 0;
  color: #666;
  font-weight: normal;
  font-size: 85%;
}

#friend_invite_inner #invite_mail table td {
  padding: 10px 5px;
  border-bottom: 1px dotted #ccc;
}

#friend_invite_inner #invite_mail table td textarea,
#friend_invite_inner #invite_mail table td input {
  width: 380px;
  margin: 0;
  resize: none;
}

#friend_invite_inner #invite_twitter textarea {
  width: 614px;
  resize: none;
}

#friend_invite_inner #invite_mail table #emails textarea {
  height: 48px;
  resize: none;
}

#friend_invite_inner #invite_mail table #invite_msg textarea {
  height: 100px;
  resize: none;
}

#friend_search h3 {
  margin: 0;
}

#friend_search .friend_list {
  margin: 0 0 20px 0;
}

#friend_search table {
  width: 100%;
  border: 1px solid #ccc;
  border-spacing: 1px;
  border-collapse: collapse;
}

#friend_search table th {
  width: 130px;
  padding: 6px;
  border: 1px solid #ccc;
  background: #eee;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
}

#friend_search table td {
  width: 230px;
  padding: 6px;
  border: 1px solid #ccc;
  vertical-align: middle;
}

#profile_edit table td dl,
#friend_search table td dl {
  overflow: hidden;
}

#profile_edit table td dt,
#friend_search table td dt {
  width: 100%;
  font-weight: bold;
}

#profile_edit table td dd {
  float: left;
  width: 180px;
  margin: 0 0 6px 0;
}

#friend_search table td dd {
  float: left;
  width: 180px;
  margin: 0 0 6px 0;
}

#friend_search table td.user_name input,
#friend_search table td.user_intro input {
  width: 90%;
}

#friend_search .pager {
  margin: 0 0 20px 0;
}

#friend_search #btn_search {
  padding: 14px 0 0;
}

#friend_search #btn_search .btn_light_gray {
  width: 160px;
  height: 30px;
  margin: 0 auto 10px;
  border-radius: 4px;
  font-weight: normal;
  font-size: 100%;
  line-height: 30px;
  cursor: pointer;
}

#friend_search #btn_search .btn_light_blue {
  width: 360px;
  height: 48px;
  margin: 0 auto 10px;
  border-radius: 6px;
  line-height: 48px;
}

/* search friend */
#friend_application_text {
  padding: 10px;
}

#friend_application_text .btn_gray {
  margin: 0 0 10px 0;
}

#friend_application_text p {
  padding: 0 0 10px 0;
}

#friend_application_text textarea {
  width: 380px;
  height: 90px;
  resize: none;
}

#friend_application_text .btn_orange {
  padding: 3px 5px;
  font-size: 123.1%;
}

#your_friend {
  position: relative;
  margin: 8px 10px 60px;
  padding: 0;
}

#game_timeline_wrap #link_items {
  top: 80px;
  left: -50px;
  width: 200px;
  padding: 4px 0 0 2px;
}

#game_timeline_wrap #link_items p {
  text-align: center;
}

#game_timeline_wrap #link_items li {
  width: 40px;
  padding: 4px 6px 6px 4px;
}

#game_timeline_wrap #link_items li img {
  width: 40px;
  border-radius: 6px;
}

.talk_group_member_regist_list li .cancel {
  display: none;
  position: absolute;
  top: 4px;
  top: 14px;
  right: 4px;
}

.user_list_l li .cancel input,
.gallery_list li .cancel input,
.talk_group_member_regist_list li .cancel input {
  display: block;
  margin: 0;
  padding: 1px 2px 0;
  border: 1px solid #999;
  border-radius: 0;
  background-color: #fff;
  color: #666;
  font-weight: bold;
}

.user_list_l li .cancel input:hover,
.gallery_list li .cancel input:hover,
.talk_group_member_regist_list li .cancel input:hover {
  background: #eee;
  color: #333;
}

.sp-game {
  z-index: 100;
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 265px;
  padding: 8px 12px;
  border-radius: 8px;
  background-color: #fff;
  box-shadow: 0 0 5px 1px #ccc;
}

.sp-game::after {
  display: block;
  clear: both;
  content: "";
}

.sp-game__inner {
  position: relative;
}

.sp-game__txt {
  font-weight: bold;
  font-size: 14px;
  padding-bottom: 8px;
}

.sp-game__qr-code {
  float: left;
}

.sp-game__thumb {
  float: right;
  margin-left: 15px;
}

.sp-game__close {
  font-weight: bold;
  font-size: 16px;
  position: absolute;
  top: -8px;
  right: -5px;
  padding: 5px;
  cursor: pointer;
}

.l-item-list {
  padding: 16px 10px;
}

.l-item-list__item:not(:nth-child(4)) {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #888;
}

.c-game-media {
  display: table;
  width: 100%;
}

.c-game-media__img {
  display: table-cell;
  padding-right: 10px;
}

.c-game-media__img > img {
  width: 90px;
}

.c-game-media__disc {
  display: table-cell;
  width: 180px;
  vertical-align: top;
}

.c-game-media__title {
  font-weight: bold;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 180px;
  padding-bottom: 6px;
  color: #0086e5;
}

.c-game-media__genre-tag {
  font-size: 10px;
  display: inline-block;
  margin-bottom: 10px;
  padding: 2px 6px 0;
  border: 1px solid #888;
  border-radius: 3px;
  color: #888;
}

.c-game-media:hover {
  opacity: 0.7;
}

/* 旧レコメンド（_old-components.scssより移管） */
/* recommedn_box*/
.recommend_box {
  z-index: 201;
  position: absolute;
  top: -500px;
  left: 50%;
  width: 646px;
  margin: 0 0 0 -323px;
  border: 5px solid #333 !important;
  background-color: #fff;
  -o-box-shadow: 2px 2px 5px;
  -moz-box-shadow: 2px 2px 5px;
  box-shadow: 2px 2px 5px;
}

.recommend_box p {
  padding: 0 6px 4px;
  background: #333;
  color: #fff;
  font-weight: bold;
  font-size: 116%;
}

.recommend_box img.icon_island {
  width: 24px;
  height: 21px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -24px -77px;
}

.recommend_box img.icon_jikkuri {
  width: 20px;
  height: 21px;
  background: url("//static.gesoten.com/img/geso/common/icon_kari_jikkuri_on.png?v=202504021600") no-repeat 0 0;
}

.recommend_box p img {
  width: 22px;
  height: 21px;
  margin: 0 4px 0 0;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -48px -77px;
}

.recommend_box li.game {
  float: left;
  width: 202px;
  margin: 5px;
}

.recommend_box ul {
  overflow: hidden;
  padding: 5px;
}

.recommend_box li.game > div {
  overflow: hidden;
  height: 202px;
  margin: 2px 0 4px;
  padding: 6px;
  background-color: #eee;
}

.recommend_box li.game > div:hover {
  outline: 1px solid #ccc;
}

.recommend_box li.game dt {
  text-align: center;
  font-weight: bold;
  font-size: 116%;
}

.recommend_box li.game dd {
  color: #333;
}

.recommend_box li.game div.genre {
  color: #666;
  white-space: nowrap;
}

.recommend_box li.game img {
  width: 190px;
}

.recommend_box li.game a {
  display: block;
  text-decoration: none;
  font-size: 85%;
}

.recommend_box strong {
  display: block;
  padding: 4px 0;
  background: #666;
  color: #fff;
  text-align: center;
}

.recommend_box .align_right {
  margin: 0 8px 8px;
}

.recommend_box .arrow_right {
  display: inline-block;
  top: 5px;
  margin-left: 10px;
  border-width: 10px;
}

.recommend_box .arrow_right::after {
  top: -5px;
  left: -20px;
  width: 10px;
  height: 10px;
}

/* 通報ページ */
.c-report {
  width: 90%;
  margin: 20px auto;
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background-color: #fff;
  text-align: center;
}

/* ゲソ得セットのレイアウト */
.l-set-sales {
  margin-right: auto;
  margin-left: auto;
  width: 1000px;
}

.c-set-sales {
  text-align: center;
}

.c-set-sales__header {
  margin-bottom: 20px;
}

.c-set-sales__period {
  font-weight: bold;
  font-size: 24px;
  padding-top: 12px;
  padding-bottom: 12px;
  background-color: #000;
  color: #fff;
}

.c-set-sales__ttl {
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 8px;
  color: #de172c;
}

.c-set-sales__lead {
  font-size: 16px;
  margin-bottom: 40px;
}

.l-set-sales-list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 64px;
}

.l-set-sales-list__item {
  width: 24%;
  box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.1);
}

/* ゲソ得セットの1アイテム */
.c-set-sales-item {
  padding: 12px;
}

.c-set-sales-item__thumb {
  margin-bottom: 12px;
}

.c-set-sales-item__thumb > img {
  width: 120px;
  height: 120px;
}

.c-set-sales-item__title {
  font-weight: bold;
  font-size: 16px;
}

.c-set-sales-item__coin {
  font-weight: bold;
  font-size: 14px;
  color: #de172c;
}

.c-set-sales-item__coin > img {
  width: 28px;
  height: 28px;
  margin-right: 4px;
  vertical-align: -3px;
}

.c-set-sales-item__coin > span {
  font-weight: bold;
  font-size: 28px;
  line-height: 1.4;
}

.c-set-sales-item__price {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 24px;
}

.c-set-sales-item__limit {
  font-weight: bold;
  font-size: 16px;
  display: inline-block;
  margin-bottom: 8px;
  padding: 4px 8px;
  border: 2px solid #de172c;
  color: #de172c;
}

.c-set-sales-bonus {
  position: relative;
  margin-bottom: 16px;
  padding-top: 16px;
  padding-right: 8px;
  padding-bottom: 12px;
  padding-left: 8px;
  background-color: #f7f7f7;
}

.c-set-sales-bonus__plus {
  font-weight: bold;
  font-size: 20px;
  position: absolute;
  top: -14px;
  left: 50%;
  width: 28px;
  height: 28px;
  border-radius: 30px;
  background-color: #f7f7f7;
  content: "";
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.c-set-sales-bonus__caption {
  font-weight: bold;
  font-size: 14px;
}

.c-set-sales-bonus__list-item {
  font-size: 10px;
}

.c-set-sales-bonus__list-item > img {
  width: 20px;
  height: 20px;
  margin-right: 2px;
  vertical-align: -3px;
}

.c-set-sales-bonus__list-item > span {
  font-weight: bold;
  font-size: 20px;
}

/* 注意事項 */
.c-set-sales-desc {
  margin-bottom: 64px;
  padding: 24px 40px;
  background-color: #eee;
}

.c-set-sales-desc__ttl {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 24px;
}

.c-set-sales-desc__txt {
  font-size: 14px;
  text-align: left;
}

.c-set-sales-desc__txt > a {
  color: #0086e5;
}

.c-set-sales-desc__txt > strong {
  font-weight: bold;
}

/* ポイントタウン連携エリア */
.c-set-sales-pointtown {
  display: inline-block;
  margin-bottom: 40px;
  padding: 40px;
  border-radius: 4px;
  background-color: #f7f7f7;
}

.c-set-sales-pointtown__desc {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 20px;
}

/* イイネ！友達一覧ページメニュー */
.c-status-menu-area {
  padding: 16px 9px 24px;
}

.c-status-menu-list {
  display: table;
  width: 100%;
}

.c-status-menu-list__item {
  display: table-cell;
  width: 194px;
  text-align: center;
}

.c-status-menu-list__item > a {
  display: inline-block;
  width: 100%;
  padding: 8px 0;
}

.c-status-menu-list__item:not(:first-child) {
  position: relative;
}

.c-status-menu-list__item:not(:first-child)::after {
  display: inline-block;
  position: absolute;
  bottom: 8px;
  left: 0;
  width: 1px;
  height: 27px;
  background-color: #888;
  content: "";
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.c-status-menu-list__item:hover {
  position: relative;
}

.c-status-menu-list__item:hover::before {
  position: absolute;
  bottom: 0;
  left: 25%;
  width: 50%;
  height: 3px;
  background-color: #ff7d00;
  content: "";
}

.c-status-menu-list__item--active {
  position: relative;
}

.c-status-menu-list__item--active::before {
  position: absolute;
  bottom: 0;
  left: 25%;
  width: 50%;
  height: 3px;
  background-color: #ff7d00;
  content: "";
}

.c-status-menu-list-item {
  text-align: center;
}

.c-status-menu-list-item img {
  width: 27px;
  vertical-align: middle;
}

.c-status-menu-list-item > p {
  font-size: 14px;
  display: inline-block;
  margin: 0;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
}

/* 最近のつぶやき（_old-components.scssより移管） */
/* マイページリアルタイムコメント枠 */
#recent_tweet {
  position: relative;
  width: 972px;
  margin: 1px auto 0;
  line-height: 26px;
}

#recent_tweet .recent_tweet_open,
#recent_tweet .recent_tweet_close {
  position: absolute;
  width: 26px;
  text-align: center;
  cursor: pointer;
}

#recent_tweet .recent_tweet_open {
  display: none;
  top: -27px;
  right: 0;
  background: #444;
  color: #888;
}

#recent_tweet .recent_tweet_close {
  z-index: 1;
  top: 0;
  right: 0;
  border-left: 1px solid #b8e8ff;
  background: #aaa;
  color: #fff;
}

.realtime_comment {
  display: none;
  overflow: hidden;
  position: relative;
  height: 26px;
  padding: 0 10px;
  background: #b8e8ff;
  color: #444;
}

.realtime_comment dt,
.realtime_comment dd {
  display: inline;
}

.icon_recent_tweet,
.icon_recent_bbspost,
.icon_recent_photo {
  width: 16px;
  height: 14px;
  vertical-align: -2px;
}

.icon_recent_tweet {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -254px;
}

.icon_recent_photo {
  margin: 0 0 0 4px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -32px -254px;
}

.realtime_comment dd a {
  color: #000;
  text-decoration: underline;
}

.realtime_comment dd a:hover {
  color: #005580;
}

.realtime_comment dd .posttime {
  margin: 0 0 0 10px;
  font-size: 85%;
}

.goto_geso_bbs {
  z-index: 1;
  display: block;
  position: absolute;
  top: 0;
  right: 27px;
  padding: 0 10px;
  background: #0088d0;
  color: #fff;
  font-size: 85%;
}

.goto_geso_bbs:hover {
  background: #1a94d6;
  color: #fff;
}

.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;
}

.c-bnr-section-list:not(:last-child) {
  margin-bottom: 8px;
}

.c-bnr-section-list > li {
  overflow: hidden;
}

.l-main__l-aside .c-bnr-section-list > li iframe {
  margin-bottom: -53px;
  -webkit-transform: scale(0.79);
          transform: scale(0.79);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}

/*
主にトップで使うステータスとボタン付きのバナー いずれ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-category-media {
  position: relative;
  display: flex;
  padding: 12px;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
}

.c-category-media:hover {
  opacity: 0.7;
}

.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__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-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-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 {
  display: none;
  margin-top: 8px;
  color: #0086e5;
  text-align: center;
  cursor: pointer;
}

.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.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 {
  display: block;
  color: inherit;
}

.c-coupon > a:hover {
  opacity: 0.7;
}

.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;
}

.c-draw {
  width: 840px;
  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;
}

.c-draw--2col {
  display: flex;
  gap: 40px;
}

.c-draw-sec__head {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  margin-bottom: 16px;
  gap: 8px;
}

.c-draw-sec__head > i {
  width: 22px;
}

.c-draw-sec__lead {
  font-size: 14px;
  margin-bottom: 24px;
}

.c-draw-table {
  font-size: 14px;
  text-align: left;
}

.c-draw-table table {
  width: 100%;
  table-layout: fixed;
}

.c-draw-table tbody::before {
  display: block;
  height: 5px;
  content: "";
}

.c-draw-table th {
  padding: 4px 0 4px;
  background-color: #ececec;
}

.c-draw-table th:first-child {
  padding-left: 20px;
}

.c-draw-table__grade {
  width: 100px;
}

.c-draw-table td {
  padding: 4px 0 4px;
}

.c-draw-table td:first-child {
  padding-left: 20px;
}

.c-draw-notice {
  width: 840px;
  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;
  padding: 16px;
  border: 1px solid #d1d1d1;
  border-radius: 4px;
}

.c-draw-notice__ttl {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #d1d1d1;
  text-align: center;
}

.c-draw-notice__text {
  font-size: 14px;
  line-height: 1.6;
}

/*
ヘッダー下に表示する汎用的なイベントバー
コインバックタイムで使用
*/
.c-eventbar {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  border: 1px solid #ff9600;
  background-color: #ff9600;
}

.c-eventbar-main {
  width: 180px;
  border-right: 1px solid #fff;
}

.c-eventbar-main__img {
  display: block;
  width: 148px;
  margin: 0 auto;
}

.c-eventbar-info {
  width: 180px;
  text-align: center;
}

.c-eventbar-info__status {
  font-weight: bold;
  font-size: 16px;
  color: #fff;
}

.c-eventbar-info__date {
  font-size: 12px;
  color: #fff;
  font-weight: normal;
}

.c-eventbar-content {
  position: relative;
  width: calc(100% - 360px);
  padding: 8px 12px;
  background-color: #fff;
}

.c-eventbar-content__lead {
  font-weight: bold;
  font-size: 16px;
  padding-bottom: 4px;
}

.c-eventbar-content__text {
  font-weight: bold;
  font-size: 20px;
  line-height: 1;
}

.c-eventbar-content__em {
  color: #f00;
}

.c-eventbar-content__note {
  font-size: 12px;
  display: inline-block;
  font-weight: normal;
}

.c-eventbar-coinback {
  border: 1px solid #666;
  background-color: #666;
}

.c-eventbar-coinback--active {
  border: 1px solid #f33;
  background-color: #f33;
}

.c-eventbar-coinback--super {
  border: 1px solid #000;
  background-color: #000;
}

.c-eventbar-coinback--super .c-eventbar-content__lead {
  color: #f00;
  text-decoration: underline;
}

.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;
  width: 360px;
  margin-bottom: 24px;
}

.c-footer-bnr:hover {
  opacity: 0.7;
}

.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;
}

.c-friend-media {
  position: relative;
  display: flex;
  padding: 8px 8px 32px 8px;
}

.c-friend-media__l-thumb {
  flex: 1;
  width: 45px;
}

.c-friend-media__l-thumb > img {
  display: block;
  width: 100%;
}

.c-friend-media__l-content {
  width: calc(100% - 45px);
  padding: 8px;
}

.c-friend-media__title {
  word-break: break-all;
}

.c-friend-media:hover {
  opacity: 0.7;
}

.c-friend-media__status-label {
  font-size: 10px;
  margin-top: 4px;
  padding: 3px 0;
  border: 1px solid #b9e66e;
  border-radius: 2px;
  background-color: white;
  color: #666;
  text-align: center;
}

.c-friend-media__l-content > time {
  display: block;
  margin-bottom: 8px;
  color: #666;
}

.c-friend-media__name {
  font-weight: bold;
  font-size: 16px;
}

.c-friend-media__name > a {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  color: #333;
  word-break: break-all;
  line-height: 1.2;
}

.c-friend-media__l-friends-menu {
  margin-top: 12px;
}

.c-friend-media__l-btn {
  position: absolute;
  right: 8px;
  bottom: 8px;
}

.c-friend-media__l-btn > .badge-greeted-done,
.c-friend-media__l-btn > .btn-greeted {
  position: relative;
  right: 0;
  bottom: 0;
  line-height: 24px;
}

.c-friend-media__l-btn > .badge-greeted-done {
  display: block;
  border-radius: 20px;
  background-color: #fff3f3;
  cursor: pointer;
  padding-inline: 12px;
}

.c-friend-media__l-thumb {
  overflow: hidden;
  height: 45px;
  border-radius: 50%;
}

/* ガチャ 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 {
  display: block;
  padding: 8px 0;
  color: #ff9600;
}

.c-gacha-section__btn > a:hover {
  background-color: #faf5cd;
}

/* ガチャページ 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;
}

.game-appeal {
  z-index: 100;
  position: relative;
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 275px;
  padding: 8px;
  border-radius: 8px;
  background-color: #fff;
  box-shadow: 0 0 5px 1px #ccc;
  -webkit-animation: slideLeftPc 3s 0s linear 1 forwards;
          animation: slideLeftPc 3s 0s linear 1 forwards;
}

.game-appeal__inner {
  position: relative;
}

.game-appeal__thumb {
  margin-bottom: 8px;
}

.game-appeal__txt {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 8px;
  color: #222;
}

.game-appeal__btn {
  font-weight: bold;
  font-size: 12px;
  display: inline-block;
  width: 100%;
  padding-top: 12px;
  padding-bottom: 12px;
  border: 1.5px solid #fff;
  border-radius: 80px;
  background-color: #53a6df;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  color: #fff;
  text-align: center;
}

.game-appeal__close {
  font-weight: bold;
  font-size: 24px;
  position: absolute;
  top: -16px;
  right: -16px;
  width: 32px;
  height: 32px;
  border-radius: 24px;
  background-color: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  color: #666;
  text-align: center;
  line-height: 1.4;
  cursor: pointer;
}

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

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

/* ゲームカルーセルのレイアウト */
.c-game-carousel__area[aria-hidden="true"] {
  display: none;
}

.c-game-carousel__area > a {
  display: block;
}

.c-game-carousel__area > a > img {
  display: block;
  width: 100%;
}

.c-game-carousel-list {
  display: flex;
  justify-content: space-between;
}

.c-game-carousel-list__item {
  position: relative;
}

.c-game-carousel-list__item[aria-selected="true"]::before {
  display: none;
}

.c-game-carousel-list__item[aria-selected="false"]::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  content: "";
  opacity: 0.4;
}

.c-game-carousel-list__item + .c-game-carousel-list__item {
  margin-left: 4px;
}

.c-game-carousel-list__item > a {
  display: block;
}

.c-game-carousel-list__item > a > img {
  display: block;
  max-width: 100%;
}

/**
 * メディア型ゲームコンポーネント
 */
.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-genre-list {
  display: flex;
  padding: 16px 8px;
  border-radius: 4px;
  background-color: #f7f7f7;
}

.c-genre-list__item {
  width: 25%;
  text-align: center;
}

.c-genre-list__item--selected .c-genre-list__item-img {
  border: 1px solid #00b4d8;
}

.c-genre-list__item--selected .c-genre-list__item-img .icon-geso-genre svg {
  stroke: #00b4d8;
}

.c-genre-list__item--selected .c-genre-list__item-text {
  color: #00b4d8;
}

.c-genre-list__item-img {
  width: 40px;
  height: 40px;
  margin-right: auto;
  margin-bottom: 2px;
  margin-left: auto;
  border: 1px solid #d1d1d1;
  border-radius: 20px;
  background-color: #fff;
}

.c-genre-list__item-img .icon-geso-genre {
  width: 24px;
  margin-top: 8px;
  margin-right: auto;
  margin-left: auto;
}

.c-genre-list__item-text {
  font-weight: bold;
  font-size: 10px;
  color: #8b8b8b;
  line-height: 1.2;
}

.genrelist img {
  width: 100%;
  height: auto;
}

.genrelist__game {
  margin: 8px;
}

.genrelist__game-ttl {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 4px;
  color: #333;
}

.genrelist__discription {
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden;
  height: 91px;
  padding: 8px 4px;
  background-color: #f7f7f7;
  color: #333;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.icon-geso-genre svg {
  width: 24px;
  fill: none;
  stroke: #999;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

/* ゲソてん市のレイアウト */
.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-guide > header {
  margin-bottom: 28px;
}

.c-guide img {
  width: 100%;
}

.c-guide .c-section {
  margin-bottom: 24px;
}

.c-guide .c-section__l-body {
  position: relative;
}

.c-guide .c-section__l-label {
  margin-bottom: 10px;
  line-height: 2;
}

.c-guide-container {
  /* ログインしていない時に覆う */
}

.c-guide-container__action {
  padding: 0 20px 20px;
  text-align: center;
}

.c-guide-container__in-active {
  z-index: 1;
  position: absolute;
  width: 100%;
  height: calc(100% - 16px);
  background-color: rgba(0, 0, 0, 0.5);
  content: "";
  font-size: 0;
}

.c-guide-container .btn-guide {
  width: 400px;
}

/* 複数レイアウトがあり横並びになる場合 */
.c-guide-list {
  display: flex;
  flex-wrap: wrap;
}

.c-guide-list li {
  justify-content: center;
  width: calc((99.9999% - 16px) / 2);
}

.c-guide-list li:nth-child(odd) {
  margin-right: 16px;
}

.c-guide-list .c-section__title {
  margin-bottom: 16px;
}

.c-guide-list .c-section__title-option {
  margin-left: 0;
}

.c-guide-list .btn-guide {
  width: 100%;
}

/* イベントのカード */
.c-guide-event-card {
  position: relative;
  margin-bottom: 16px;
}

.c-guide-event-card__l-thumb > img {
  display: block;
  width: 100%;
  max-height: auto;
}

.c-guide-event-card__l-content {
  padding: 12px;
}

.c-guide-event-card__title {
  word-break: break-all;
}

.c-guide-event-card:hover {
  opacity: 0.7;
}

.c-guide-event-card__l-content {
  padding: 12px;
}

.c-guide-event-card__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 8px;
}

.c-guide-event-card__title > a {
  color: #222;
}

.c-guide-event-card__lead {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  font-size: 12px;
  margin-bottom: 8px;
  text-align: center;
}

/* このページ限定のアイテムなの一旦記載する */
.btn-guide {
  font-weight: bold;
  font-size: 16px;
  margin: 0 auto;
  padding: 16px 0;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
  line-height: 1;
}

/* エッグがもらえるカード */
.c-incentive-card {
  position: relative;
  box-shadow: 0 0 4px #d1d1d1;
  margin-bottom: 8px;
  padding: 12px;
  border-radius: 4px;
  text-align: center;
}

.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 > 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;
}

.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;
  display: inline-block;
  position: relative;
  padding: 2px 4px;
}

.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__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;
  display: block;
  position: absolute;
  bottom: -22px;
  width: 100px;
  padding: 2px 0;
  text-align: center;
}

.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--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;
  display: block;
  position: absolute;
  top: -20px;
  left: -20px;
  width: 94px;
  padding: 2px 0;
  text-align: center;
}

.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__menu {
  position: relative;
  width: 20px;
  height: 16px;
  margin-left: 4px;
  padding: 8px 0;
}

.c-header-contents__menu:hover {
  opacity: 0.7;
}

.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 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  border-radius: 2px;
  background-color: #c0e1f2;
}

.c-header-contents__item-bingo:hover {
  opacity: 0.7;
}

.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 {
  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:hover {
  opacity: 0.7;
}

.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);
  }
}

/**
 * ROCKET実装前の簡易版をここに書く
 */
.c-history {
  width: 750px;
  line-height: 27px;
}

.c-history table {
  clear: both;
  width: 100%;
  margin-bottom: 8px;
  border-spacing: 1px;
  border-collapse: separate;
  background-color: #ccc;
}

.c-history table th {
  padding: 4px;
  background-color: #eee;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
}

.c-history table .th_status {
  min-width: 140px;
}

.c-history table .th_limit {
  min-width: 127px;
}

.c-history table td {
  padding: 8px;
  vertical-align: middle;
}

.c-history__notes {
  font-size: 12px;
  margin-bottom: 10px;
}

.c-history__attention {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 12px;
  padding: 12px;
  border: solid 1px #ff3232;
  background-color: #ffebee;
  color: #ff3232;
  text-align: center;
}

.c-history__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.c-history__highlight {
  font-weight: bold;
  font-size: 14px;
  color: #ff3232;
}

.c-history__empty {
  font-size: 16px;
  padding: 16px;
  text-align: center;
}

.c-history__active {
  background-color: #fff;
}

.c-history__disable {
  background-color: #f7f7f7;
  color: #acacac;
}

.history-btn {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 80px;
  border-radius: 8px;
  background-color: #0086e5;
}

.history-btn a {
  color: #fff;
}

.history-btn:hover {
  background-color: #0074d2;
}

.history-btn--disable {
  background-color: #acacac;
  color: #fff;
}

.history-btn--disable:hover {
  background-color: #acacac;
  color: #fff;
  pointer-events: none;
}

/**
 * 遊び方ガイド
 */
.c-howto {
  width: 800px;
  margin-top: 24px;
  margin-right: auto;
  margin-bottom: 24px;
  margin-left: auto;
  text-align: center;
}

.c-howto-head {
  margin-bottom: 24px;
}

.c-howto-head__ttl {
  font-weight: bold;
  font-size: 28px;
  margin-bottom: 12px;
}

.c-howto-head__ttl > img {
  display: block;
  width: 240px;
  margin-right: auto;
  margin-left: auto;
}

.c-howto-head__lead {
  font-weight: bold;
  font-size: 16px;
}

.c-howto-head__lead strong {
  color: #de172c;
}

.c-howto-sec {
  display: flex;
  flex-direction: column;
  margin-bottom: 12px;
  padding: 40px;
  border-radius: 16px;
  color: #fff;
  gap: 24px;
}

.c-howto-sec__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.c-howto-sec__label {
  font-weight: bold;
  font-size: 14px;
  position: relative;
  padding: 4px 8px;
  background-color: #fff;
}

.c-howto-sec__label::after {
  position: absolute;
  top: 0;
  right: -10px;
  border-width: 20px 10px 0 0;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  content: "";
}

.c-howto-sec__label::before {
  position: absolute;
  right: -10px;
  bottom: 0;
  border-width: 0 10px 20px 0;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  content: "";
}

.c-howto-sec__ttl {
  font-weight: bold;
  font-size: 24px;
  font-weight: bolder;
}

.c-howto-sec__lead {
  font-size: 14px;
}

.c-howto-sec__l-row {
  display: flex;
  justify-content: center;
}

.c-howto-sec__btn {
  font-weight: bold;
  font-size: 16px;
  display: inline-block;
  position: relative;
  padding: 16px;
  border: solid 2px #333;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0 4px 0 0 #333;
  color: #333;
}

.c-howto-sec__btn > span::after {
  display: inline-block;
  box-sizing: border-box;
  width: 12px;
  height: 12px;
  margin-left: 8px;
  border: 2px solid currentColor;
  border-right: 0;
  border-bottom: 0;
  color: #333;
  content: "";
  vertical-align: middle;
  -webkit-transform: translateY(-25%) rotate(135deg);
          transform: translateY(-25%) rotate(135deg);
}

.c-howto-sec__btn:hover {
  top: 4px;
  box-shadow: 0 0 #333;
}

.c-howto-sec__foot > img {
  width: 100%;
}

.c-howto-sec--point {
  background-color: #ff3232;
}

.c-howto-sec--point .c-howto-sec__label {
  color: #ff3232;
}

.c-howto-sec--game {
  background-color: #44d2b8;
}

.c-howto-sec--game .c-howto-sec__label {
  color: #44d2b8;
}

.c-howto-sec--game .c-howto-sec__l-inner {
  gap: 12px;
}

.c-howto-sec--game .c-howto-sec__l-inner li {
  width: 100%;
}

.c-howto-sec--game .c-howto-desc {
  background-color: #00bd9b;
}

.c-howto-sec--game .c-howto-desc__l-img > img {
  width: 43px;
}

.c-howto-sec--game .c-howto-desc__game-list {
  display: flex;
  justify-content: center;
  margin-top: 16px;
  gap: 8px;
}

.c-howto-sec--game .c-howto-desc__game-list > li {
  border: 2px solid #fff;
  border-radius: 4px;
}

.c-howto-sec--game .c-howto-desc__game-icon > img {
  width: 60px;
}

.c-howto-sec--coin {
  background-color: #22bfdf;
}

.c-howto-sec--coin .c-howto-sec__label {
  color: #00a4c5;
}

.c-howto-sec--coin .c-howto-desc {
  background-color: #00a4c5;
}

.c-howto-sec--coin .c-howto-desc__balloon {
  display: flex;
  align-items: center;
  position: relative;
  width: -webkit-fit-content;
  width: fit-content;
  margin-bottom: 16px;
  padding: 4px 8px;
  border-radius: 8px;
  background-color: #fff;
  gap: 4px;
}

.c-howto-sec--coin .c-howto-desc__balloon > p {
  font-weight: bold;
  font-size: 14px;
  color: #00a4c5;
}

.c-howto-sec--coin .c-howto-desc__balloon > i {
  content: url("/gesolite/pc/img/core/howto/point-icon-check.svg?v=202504021600");
}

.c-howto-sec--coin .c-howto-desc__balloon::after {
  position: absolute;
  bottom: -16px;
  left: 50%;
  border-width: 10px 10px 10px 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  content: "";
  -webkit-transform: translateY(0%) translateX(-50%);
          transform: translateY(0%) translateX(-50%);
}

.c-howto-sec--coin .c-howto-desc__l-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 8px;
}

.c-howto-sec--coin .c-howto-desc__l-row {
  align-items: center;
}

.c-howto-sec--coin .c-howto-desc__l-img > img {
  height: 112px;
}

.c-howto-sec--coin .c-howto-desc__arrow-icon > img {
  min-width: 50px;
}

.c-howto-sec--coin .c-howto-desc__inner-list {
  display: flex;
  margin-top: 16px;
  gap: 12px;
}

.c-howto-sec--coin .c-howto-desc__inner-list > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 12px;
  border-radius: 8px;
  background-color: #22bfdf;
  gap: 4px;
}

.c-howto-sec--coin .c-howto-desc__inner-list > li > img {
  width: 150px;
  margin-bottom: 8px;
}

.c-howto-desc {
  position: relative;
  margin-bottom: 12px;
  padding: 24px;
  border: dashed 2px #fff;
  border-radius: 8px;
}

.c-howto-desc__ttl {
  font-weight: bold;
  font-size: 20px;
}

.c-howto-desc__lead {
  font-weight: bold;
  font-size: 16px;
}

.c-howto-desc__sub-ttl {
  font-weight: bold;
  font-size: 18px;
}

.c-howto-desc__sub-lead {
  font-size: 14px;
}

.c-howto-desc__l-row {
  display: flex;
}

.c-howto-desc__note {
  font-size: 12px;
}

.c-howto-desc--point {
  background-color: #de172c;
}

.c-howto-desc--point .c-howto-desc__note {
  position: absolute;
  right: 8px;
  text-align: end;
}

.c-howto-desc--point .c-howto-desc__l-img > img {
  height: 124px;
  margin-right: 24px;
}

.c-howto-desc--point .c-howto-desc__balloon-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.c-howto-desc--point .c-howto-desc__balloon-list > li {
  display: flex;
  align-items: center;
  gap: 8px;
}

.c-howto-desc--point .c-howto-desc__balloon-list > li > p {
  font-weight: bold;
  font-size: 14px;
}

.c-howto-desc--point .c-howto-desc__balloon {
  display: flex;
  align-items: center;
  position: relative;
  width: -webkit-fit-content;
  width: fit-content;
  padding: 4px 8px;
  border-radius: 8px;
  background-color: #fff;
  gap: 4px;
}

.c-howto-desc--point .c-howto-desc__balloon > p {
  font-weight: bold;
  font-size: 14px;
  color: #de172c;
}

.c-howto-desc--point .c-howto-desc__balloon > i {
  content: url("/gesolite/pc/img/core/howto/point-icon-check.svg?v=202504021600");
}

.c-howto-desc--point .c-howto-desc__balloon::before {
  position: absolute;
  top: auto;
  left: -8px;
  border-width: 8px 10px 8px 0;
  border-style: solid;
  border-color: transparent #fff transparent transparent;
  content: "";
}

.c-howto-desc--point .c-howto-desc__l-row {
  justify-content: center;
}

.c-notice {
  margin-bottom: 16px;
  padding: 16px 0;
  border: 1px solid #ff9600;
  border-radius: 2px;
  background-color: #faf5cd;
  text-align: center;
}

.c-notice__text {
  font-weight: bold;
  font-size: 14px;
  color: #222;
}

/* 大切なお知らせ */
.c-pickup-message {
  position: relative;
  font-size: 14px;
  padding: 12px 8px;
}

.c-pickup-message:hover {
  opacity: 0.7;
}

.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;
}

/**
 * 目安箱（_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;
  display: block;
  color: inherit;
  line-height: 1.3;
}

.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::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 {
  display: block;
  color: #222;
}

.c-message > a:hover {
  opacity: 0.7;
}

.c-message__title {
  margin-right: 8px;
  font-weight: bold;
}

.c-message--emergency {
  border-color: #ff5a5f;
  background-color: #fff3f3;
}

.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 */
.c-mtp-head {
  display: flex;
  justify-content: space-between;
}

.c-mtp-head__l-content {
  display: flex;
  align-items: center;
  gap: 8px;
}

.c-mtp-head__l-link-content {
  display: flex;
  align-items: center;
  cursor: pointer;
  gap: 8px;
}

.c-mtp-head__plan-icon {
  width: 28px;
}

.c-mtp-head__plan-icon img {
  width: 100%;
}

.c-mtp-head__plan-name {
  font-weight: bold;
  font-size: 14px;
}

.c-mtp-head__text-link {
  font-size: 14px;
  color: #666;
  text-decoration: underline;
}

.c-mtp-head__question-icon {
  font-size: 16px;
  width: 22px;
  height: 22px;
  border: 1px solid #999;
  border-radius: 24px;
  background-color: #fff;
  text-align: center;
  line-height: 23px;
}

.c-mtp-head__question-icon > p {
  display: block;
  color: #666;
}

.c-mtp-head__question-icon:hover {
  background-color: #ccc;
}

.c-mtp-sec {
  width: 750px;
  margin-bottom: 24px;
}

.c-mtp-sec__ttl {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 12px;
}

.c-mtp-sec__warp {
  padding: 16px;
  border-radius: 8px;
  background-color: #f7f7f7;
}

.c-mtp-sec__btm-border:not(:last-child) {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ddd;
}

.c-mtp-sec__notes {
  font-size: 14px;
}

.c-mtp-sec__notes li {
  list-style: disc;
}

.c-mtp-sec__bnr {
  margin-right: auto;
  margin-left: auto;
}

.c-mtp-sec__bnr img {
  width: 100%;
}

.c-mtp-summary li {
  display: flex;
  justify-content: space-between;
  width: 500px;
}

.c-mtp-summary li:not(:last-child) {
  margin-bottom: 8px;
}

.c-mtp-summary__ttl--alert-taxt {
  font-size: 12px;
  margin-top: 8px;
  padding: 4px;
  border: 1px solid #f00;
  color: #f00;
}

.c-mtp-summary__text {
  font-size: 14px;
}

.c-mtp-summary__text-link {
  font-size: 14px;
  color: #0086e5;
  cursor: pointer;
}

.c-mtp-summary__gesocoin {
  display: flex;
  gap: 8px;
}

.c-mtp-plan {
  display: flex;
  justify-content: space-between;
}

.c-mtp-plan__l-ttl {
  display: flex;
  flex-direction: column;
}

.c-mtp-plan__ttl {
  font-weight: bold;
  font-size: 14px;
}

.c-icon-gesocoin {
  width: 20px;
}

.c-mtp-modal {
  padding: 24px;
}

.c-mtp-modal__img {
  margin-bottom: 12px;
}

.c-mtp-modal__img img {
  width: 700px;
}

.c-mtp-modal__text {
  font-size: 14px;
  text-align: center;
}

.c-mtp-enquete-box {
  display: block;
  position: relative;
}

.c-mtp-enquete-box > dotlottie-player {
  position: absolute;
  top: 670px;
}

.c-mtp-status {
  font-weight: bold;
  font-size: 12px;
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  gap: 4px;
}

.c-mtp-status a {
  color: #0086e5;
}

/* titleのみのメディア型 */
.c-mini-media {
  position: relative;
  display: flex;
}

.c-mini-media__l-thumb {
  flex: 1;
  width: 56px;
}

.c-mini-media__l-thumb > img {
  display: block;
  width: 100%;
}

.c-mini-media__l-content {
  width: calc(100% - 56px);
  padding: 8px;
}

.c-mini-media__title {
  word-break: break-all;
}

.c-mini-media:hover {
  opacity: 0.7;
}

.c-mini-media__l-content {
  display: flex;
  align-items: center;
}

.c-mini-media__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-weight: bold;
  line-height: 1.2;
}

.c-mini-media__title > a {
  color: #222;
}

/* マンスリーミッション */
.c-mission-container {
  padding-top: 30px;
}

.c-mission-container .l-item-list {
  padding: 0;
}

.c-mission-container .l-item-list__item:not(:last-child) {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #999;
}

.c-mission-container .l-item-list a {
  color: #333;
}

.c-mission-container .c-game-media {
  display: table;
  width: 100%;
}

.c-mission-container .c-game-media__image {
  display: table-cell;
  position: relative;
  width: 150px;
  vertical-align: top;
}

.c-mission-container .c-game-media__image img {
  width: 100%;
  border-radius: 8px;
}

.c-mission-container .c-game-media__content {
  display: table-cell;
  overflow: hidden;
  padding-left: 10px;
}

.c-mission-container .c-game-media__desc {
  font-size: 20px;
  display: -webkit-box;
  line-height: 33px;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.c-mission {
  width: 640px;
  margin: 0 auto 16px;
  padding-bottom: 16px;
  /* 月ごとに背景の色を変える このページのみなので変数化させない */
}

.c-mission i {
  display: inline-block;
  overflow: hidden;
  vertical-align: middle;
  text-indent: 100%;
  white-space: nowrap;
}

.c-mission .icon-point-l {
  width: 20px;
  height: 20px;
  background-image: url("/gesolite/sp/img/ap-gesoten/core/payment/pointtown-l.png?v=202504021600");
  background-size: auto 20px;
}

.c-mission .icon-town-coin-l {
  width: 20px;
  height: 20px;
  background-image: url("/gesolite/sp/img/ap-gesoten/core/svg/towncoin.svg?v=202504021600");
  background-size: auto 20px;
}

.c-mission .icon-egg {
  width: 20px;
  height: 24px;
  background-image: url("/gesolite/sp/img/ap-gesoten/core/svg/egg.svg?v=202504021600");
  background-size: auto 24px;
}

.c-mission__date {
  font-size: 16px;
  margin: 16px;
  padding: 10px;
  border-radius: 8px;
  background-color: #fff;
  text-align: center;
  font-weight: bold;
}

.c-mission header {
  margin-bottom: 20px;
}

.c-mission--month-1 {
  background-color: #fbf5e9;
}

.c-mission--month-2 {
  background-color: #6a3906;
}

.c-mission--month-3 {
  background-color: #b4c5f5;
}

.c-mission--month-4 {
  background-color: #bed43f;
}

.c-mission--month-5 {
  background-color: #ffdc40;
}

.c-mission--month-6 {
  background-color: #8873f8;
}

.c-mission--month-7 {
  background-color: #d8fe95;
}

.c-mission--month-8 {
  background-color: #f6af00;
}

.c-mission--month-9 {
  background-color: #4768a1;
}

.c-mission--month-10 {
  background-color: #cfd2d7;
}

.c-mission--month-11 {
  background-color: #c8151d;
}

.c-mission--month-12 {
  background-color: #dff5f8;
}

.c-mission-qr {
  font-size: 14px;
  margin: 16px;
  padding: 10px;
  border-radius: 8px;
  background-color: #fff;
  text-align: center;
}

.c-mission-qr__title {
  width: 90%;
  margin: 0 auto 10px;
}

.c-mission-qr__title img {
  width: 100%;
}

.c-mission-qr__img {
  width: 150px;
  margin: 0 auto;
}

.c-mission-qr__img img {
  width: 100%;
}

.c-mission-qr__desc {
  margin: 10px;
  text-align: center;
}

.c-mission-contents {
  position: relative;
  padding: 0 16px 16px;
}

.c-mission-contents::after {
  display: block;
  clear: both;
  content: "";
}

.c-mission-item {
  display: block;
  position: relative;
  margin-bottom: 16px;
  padding: 16px;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0 0 4px 0 #ccc;
}

.c-mission-item::after {
  display: block;
  clear: both;
  content: "";
}

.c-mission-item__title {
  width: 90%;
  margin: 0 auto;
}

.c-mission-item__title img {
  width: 100%;
}

.c-mission-item--present {
  box-shadow: none;
}

.c-mission-item__thumb {
  float: left;
  position: relative;
  width: 80px;
  height: 80px;
  margin-right: 10px;
}

.c-mission-item__thumb > img {
  width: 100%;
  border-radius: 8px;
}

.c-mission-item__content {
  font-size: 18px;
  float: right;
  position: relative;
  top: 30px;
  width: calc(100% - 90px);
}

.c-mission-item__present-ttl {
  margin-bottom: 16px;
}

.c-mission-item__present-point {
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 12px;
  color: #f33;
}

.c-mission-item__present-point .icon-point-m {
  margin-bottom: 2px;
}

.c-mission-list__item:not(:last-child) {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 4px dotted #fa0;
}

.c-mission-list__content {
  display: table;
  position: relative;
  width: 100%;
  table-layout: fixed;
}

.c-mission-list__caption {
  display: table-cell;
  position: relative;
  width: 260px;
  vertical-align: top;
}

.c-mission-list__caption img {
  width: 100%;
}

.c-mission-list__label {
  font-weight: bold;
  font-size: 14px;
  max-width: 150px;
  padding: 4px 12px;
  border-radius: 4px;
  background-color: #44d2b8;
  color: #fff;
  text-align: center;
}

.c-mission-list__label > span {
  font-weight: bold;
  font-size: 28px;
  line-height: normal;
}

.c-mission-list__label--clear {
  background-color: #ee6e72;
}

.c-mission-list__label--clear > span {
  font-weight: bold;
  font-size: 16px;
}

.c-mission-list__present {
  display: table-cell;
  position: relative;
  width: 100%;
  padding-left: 16px;
  vertical-align: middle;
}

.c-mission-list__present .icon-point-l {
  margin-right: 4px;
  margin-bottom: 4px;
}

.c-mission-list__present .icon-egg {
  margin-bottom: 4px;
}

.c-mission-list__present-point {
  font-weight: bold;
  font-size: 24px;
  color: #f33;
  text-align: right;
  overflow-wrap: break-word;
}

.c-mission-condition {
  width: 90%;
  margin: 40px auto;
}

.c-mission-condition__title {
  width: 90%;
  margin: 0 auto 16px;
}

.c-mission-condition__title img {
  width: 100%;
}

.c-mission-notes {
  margin: 0 16px 16px;
  border: 1px solid #999;
  border-radius: 6px;
  background-color: #fff;
}

.c-mission-notes header {
  font-size: 16px;
  padding: 8px 0;
  border-radius: 4px 4px 0 0;
  background-color: #999;
  color: #fff;
  text-align: center;
}

.c-mission-notes ul {
  margin: 16px;
}

.c-mission-notes ul + ul {
  margin-top: 24px;
}

.c-mission-notes li {
  font-size: 12px;
  margin-bottom: 8px;
  color: #999;
}

/* ゲームミッション・ポイントタウンへの誘導枠 */
.c-mission-wrap {
  box-sizing: border-box;
  margin-top: 8px;
  margin-bottom: 16px;
}

/* ポイントタウンへの誘導枠 */
.c-mission-induction {
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  position: relative;
  width: 928px;
  margin-top: 6px;
  margin-bottom: 12px;
  padding: 16px;
  border-radius: 2px;
  background-color: #fff;
}

.c-mission-induction__img {
  width: 180px;
  margin-right: 16px;
}

.c-mission-induction__img img {
  width: 100%;
}

.c-mission-induction__read {
  flex-grow: 3;
  margin-right: 16px;
}

/**
 * /site ページのミッションでポイントのページ
 */
.c-mission-board {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: 928px;
}

.c-mission-board__wrap {
  position: relative;
  padding: 16px;
}

.c-mission-board:not(:last-child) {
  margin-bottom: 16px;
}

.c-mission-board__l-label {
  margin-bottom: 16px;
  line-height: 2;
}

.c-mission-board__point {
  margin: 0 2px;
  color: #ff5a5f;
}

.c-mission-board__point::before {
  background-image: url("/gesolite/sp/img/ap-gesoten/core/svg/towncoin.svg?v=202504021600");
  display: inline-block;
  width: 16px;
  height: 20px;
  background-size: 100%;
  background-repeat: no-repeat;
  content: "";
  margin-right: 2px;
  vertical-align: middle;
}

.c-mission-board__action {
  position: absolute;
  top: 20px;
  right: 20px;
}

.c-mission-board__help {
  font-size: 12px;
  position: absolute;
  top: 16px;
  right: 16px;
  padding: 2px 8px;
  border-radius: 11px;
  background-color: #ccc;
  color: #fff;
  cursor: pointer;
}

.c-mission-board__help:hover {
  opacity: 0.7;
}

.c-mission-board__help a {
  color: #fff;
}

.c-mission-board__no-entry {
  font-weight: bold;
  font-size: 14px;
  padding: 10px;
  background-color: #ff5a5f;
  color: #fff;
  text-align: center;
}

.c-mission-board__no-entry span {
  padding: 2px 8px;
  border-radius: 20px;
  background-color: #fff;
}

.c-mission-media {
  display: flex;
  color: #222;
}

.c-mission-media__title {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 16px;
}

.c-mission-media__title > span {
  margin-left: 16px;
}

.c-mission-media__l-thumb {
  width: 120px;
}

.c-mission-media__l-thumb img {
  width: 100%;
}

.c-mission-media__l-content {
  width: calc(100% - (120px + 16px));
  padding-left: 16px;
}

.c-mission-media__simple-desc {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 12px;
  color: #666;
}

.c-mission-media--large {
  margin-bottom: 16px;
}

.c-mission-stamp-list {
  display: flex;
}

.c-mission-stamp-list__item {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90px;
  border: 1px solid #ddd;
  border-radius: 2px;
  color: #ccc;
  vertical-align: middle;
}

.c-mission-stamp-list__item--clear {
  background-color: #faf5cd;
  color: #222;
}

.c-mission-stamp-list__item:not(:last-child) {
  width: 90px;
  margin-right: 8px;
}

.c-mission-stamp-list__item:last-child {
  width: 326px;
}

.c-mission-stamp-list--game-header .c-mission-stamp-list__item {
  height: 70px;
}

.c-mission-stamp-list--game-header .c-mission-stamp-list__item:not(:last-child) {
  width: 70px;
  margin-right: 8px;
}

.c-mission-stamp-list--game-header .c-mission-stamp-list__item:last-child {
  width: 292px;
}

.c-mission-stamp-list-wrap {
  position: relative;
  margin-bottom: 16px;
}

.c-cover {
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(34, 34, 34, 0.6);
}

.c-cover__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-cover__lead > a {
  color: inherit;
  text-decoration: underline;
}

.c-cover__lead > a:hover {
  text-decoration: none;
}

.c-mission-not-held {
  font-weight: bold;
  font-size: 16px;
  padding: 46px 0;
  text-align: center;
}

.c-mission-recommend {
  padding: 16px;
}

.c-mission-recommend__title {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 16px;
  padding-bottom: 5px;
  border-bottom: 1px #ddd solid;
}

.c-mission-recommend__action {
  text-align: center;
}

.c-mission-recommend__action a {
  display: inline-block;
  color: #ccc;
}

.c-mission-recommend-list {
  display: flex;
  width: 920px;
  margin: 0 auto 75px;
}

.c-mission-recommend-list li:not(:last-child) {
  margin-right: 10px;
}

.c-mission-recommend-list__thumb {
  position: relative;
  width: 176px;
  height: 176px;
  margin-bottom: 10px;
}

.c-mission-recommend-list__thumb span {
  position: absolute;
  top: 0;
}

.c-mission-recommend-list__thumb img {
  width: 100%;
}

.c-mission-recommend-list__game-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 176px;
  text-align: center;
}

/**
 * マイページ マイゲーム一覧（_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;
  background-color: #fff;
  box-shadow: 0 0 4px rgba(51, 51, 51, 0.3);
}

.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__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;
}

/* 旧マイページ（_old-components.scssより移管） */
.lv_up_icon {
  display: block;
  position: absolute;
  right: 6px;
  bottom: 30px;
  height: 12px;
  padding: 0 1px;
  background: #32728c;
  color: #fff;
  font-weight: normal;
  font-size: 85%;
  line-height: 12px;
}

/* index */
.icon_yarman {
  margin: 0 0 10px;
  padding: 0 0 2px 26px;
  border-bottom: 1px solid #eee;
  background: url("//static.gesoten.com/img/geso/common/icon_yarman.png?v=202504021600") no-repeat 0 0;
  font-weight: normal;
  font-size: 18px;
  line-height: 26px;
}

.more {
  position: absolute;
  top: 6px;
  right: 0;
  font-size: 85%;
}

/* 左カラム ゲームで繋がる掲示板 */
.c-pickup-board {
  position: relative;
  padding: 8px;
}

.c-pickup-board:hover {
  opacity: 0.7;
}

.c-pickup-board__l-media {
  margin-bottom: 8px;
}

.c-pickup-board__lead {
  color: #666;
  line-height: 1.4;
}

.c-pickup-board-media {
  display: flex;
  align-items: center;
}

.c-pickup-board-media__l-thumb {
  flex: 1;
  width: 56px;
}

.c-pickup-board-media__l-thumb > img {
  display: block;
  width: 100%;
}

.c-pickup-board-media__l-content {
  width: calc(100% - 56px);
  padding: 6px;
}

.c-pickup-board-media__title {
  word-break: break-all;
}

.c-pickup-board-media__title {
  color: #333;
  font-weight: bold;
}

.c-pickup-board-media__title > a {
  color: inherit;
}

/* 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-pre-entry-media {
  position: relative;
  display: flex;
  padding: 8px;
}

.c-pre-entry-media__l-thumb {
  flex: 1;
  width: 100px;
}

.c-pre-entry-media__l-thumb > img {
  display: block;
  width: 100%;
}

.c-pre-entry-media__l-content {
  width: calc(100% - 100px);
  padding: 8px;
}

.c-pre-entry-media__title {
  word-break: break-all;
}

.c-pre-entry-media:hover {
  opacity: 0.7;
}

.c-pre-entry-media__title {
  font-size: 14px;
  margin-bottom: 8px;
  font-weight: bold;
}

.c-pre-entry-media__title > a {
  color: #222;
}

.c-pre-entry-media__lead {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 12px;
  color: #666;
  line-height: 1.4;
}

.c-pre-entry-media__l-btn {
  position: absolute;
  right: 8px;
  bottom: 8px;
}

.c-pre-entry-media__btn {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
}

.c-pre-entry-media__btn:hover {
  color: #fff;
}

/**
 * プロフィール編集画面 ライトから必要なものだけ移植中
 */
button {
  padding: 0;
  outline: none;
  border: none;
  background-color: transparent;
  cursor: pointer;
  -webkit-appearance: none;
          appearance: none;
}

.c-prof-edit-avatar {
  display: flex;
  justify-content: center;
  gap: 24px;
}

.c-prof-edit-avatar > li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.c-prof-edit-avatar > li > img {
  width: 140px;
  border-radius: 80px;
}

.c-prof-edit-avatar > li > p {
  font-size: 12px;
  text-align: center;
}

.c-prof-edit-avatar > a {
  color: #0086e5;
}

.c-prof-edit-avatar__l-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.c-prof-edit-avatar__l-btn .btn-primary-round__small,
.c-prof-edit-avatar__l-btn .btn-secondary-round__small {
  width: 160px;
}

.input-file-hidden {
  display: none;
}

/*
* rank設定ページ用カラー
*/
.l-rank {
  float: right;
  width: 764px;
  margin: 12px;
}

.l-rank * {
  box-sizing: border-box;
}

.rank-status {
  margin-bottom: 24px;
  padding: 16px;
  background-color: #f6f6f6;
  text-align: center;
}

.rank-status__img {
  width: 100px;
}

.rank-status__text {
  font-weight: bold;
  font-size: 16px;
}

.rank-status__text span {
  color: #f00;
}

.rank-status__progress img {
  width: 580px;
}

.c-rank-section {
  padding-bottom: 40px;
}

.c-rank-section__ttl {
  font-weight: bold;
  font-size: 20px;
  padding-bottom: 4px;
}

.c-rank-section__lead {
  font-size: 14px;
  padding-bottom: 24px;
}

.rank-table img {
  width: 100%;
}

.rank-table table {
  width: 100%;
  text-align: center;
}

.rank-table th,
.rank-table td {
  font-weight: bold;
  font-size: 14px;
  padding: 8px 4px;
  border: 1px solid #ddd;
  vertical-align: middle;
}

.rank-table th {
  background-color: #444;
  color: #fff;
}

.rank-table th span {
  font-weight: normal;
}

.rank-table td {
  width: 124px;
}

.rank-table td img {
  width: 48px;
}

.rank-table__bg-regular {
  background-color: #f2fcf6;
}

.rank-table__bg-bronze {
  background-color: #f2f0ec;
}

.rank-table__bg-silver {
  background-color: #f4f6f6;
}

.rank-table__bg-gold {
  background-color: #f8f6ea;
}

.rank-table__bg-platina {
  background-color: #f4eeff;
}

.rank-about dl:not(:last-child) {
  padding-bottom: 28px;
}

.rank-about dt {
  font-weight: bold;
  font-size: 16px;
  padding-bottom: 8px;
}

.rank-about img {
  width: 96%;
}

.rank-history {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  text-align: center;
}

.rank-history li {
  width: calc(100% / 6);
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
}

.rank-history li:nth-child(6n) {
  border-right: 1px solid #ddd;
}

.rank-history li:nth-child(n+7) {
  border-bottom: 1px solid #ddd;
}

.rank-history__ttl {
  font-weight: bold;
  font-size: 14px;
  padding: 8px;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}

.rank-history__img {
  padding: 8px;
  line-height: 64px;
}

.rank-history__img img {
  width: 48px;
}

.rank-history__bg-white {
  background-color: #f6f6f6;
}

.rank-history__bg-regular {
  background-color: #f2fcf6;
}

.rank-history__bg-bronze {
  background-color: #f2f0ec;
}

.rank-history__bg-silver {
  background-color: #f4f6f6;
}

.rank-history__bg-gold {
  background-color: #f8f6ea;
}

.rank-history__bg-platina {
  background-color: #f4eeff;
}

.rank-note {
  font-size: 14px;
}

.rank-note li {
  padding-bottom: 12px;
}

.c-rank-status-link-name {
  text-align: center;
}

.c-rank-status-link-name img {
  width: 32px;
}

/* 旧ランキング（_old-components.scssより移管） */
.btn_more a {
  display: block;
  height: 26px;
  margin-top: 4px;
  background: #ddd;
  text-align: center;
  line-height: 26px;
}

.btn_more a img {
  width: 21px;
  height: 12px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -151px;
}

.icon_rankup,
.icon_rankstay,
.icon_rankdown,
.icon_ranknone {
  width: 10px;
  height: 10px;
  margin: 0 4px 0 0;
  vertical-align: 1px;
}

.icon_rankup {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -141px;
}

.icon_rankstay {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -10px -141px;
}

.icon_rankdown {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -20px -141px;
}

.icon_ranknone {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -30px -141px;
}

.icon_rankup_l,
.icon_rankstay_l,
.icon_rankdown_l,
.icon_ranknone_l {
  width: 20px;
  height: 20px;
  margin: 0 4px 0 0;
  vertical-align: 0;
}

.icon_rankup_l {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -201px;
}

.icon_rankstay_l {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -20px -201px;
}

.icon_rankdown_l {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -40px -201px;
}

.icon_ranknone_l {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -60px -201px;
}

/* ゲーム左ランキング */
#game_left_ranking {
  position: absolute;
  top: 4px;
  left: -126px;
  width: 120px;
  padding: 4px 0 4px 4px;
  border-top: 1px solid #ddd;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-radius: 6px 0 0 6px / 6px 0 0 6px;
  background-color: #fff;
}

#game_left_ranking .user_highscore {
  float: none;
  width: auto;
  height: auto;
  margin: 0 auto 4px;
  padding: 4px 0 3px 4px;
  line-height: 1.2;
}

#game_left_ranking h3 {
  font-weight: bold;
}

#game_left_ranking li {
  padding: 2px 0;
  border-bottom: 1px solid #ccc;
}

#game_left_ranking li a {
  display: block;
  overflow: hidden;
  margin: 2px 0;
}

#game_left_ranking li img {
  display: block;
  float: left;
  width: 30px;
  height: 30px;
  margin: 0 4px 0 0;
}

#game_left_ranking dl {
  float: left;
  width: 86px;
  font-size: 85%;
}

#game_left_ranking dd {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

#game_left_ranking .friend_highscore {
  float: left;
  width: 110px;
  padding: 4px 0 3px 4px;
  border: 1px solid #ccc;
  color: #000;
  font-weight: bold;
  font-size: 85%;
  line-height: 1.2;
}

#game_left_ranking .game_left_ranking_more {
  padding: 4px 2px 0;
  text-align: right;
  font-size: 85%;
}

img.icon_star {
  width: 20px;
  height: 20px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -76px -57px;
}

/* ゲーム毎ランキングページ */
#ranking_head {
  overflow: hidden;
  position: relative;
  margin: 6px 13px 30px;
}

#ranking_head_game {
  float: left;
  width: 644px;
}

#ranking_head_game #ranking_head_game_inner {
  overflow: hidden;
}

#ranking_head_game img {
  float: left;
  width: 150px;
  margin: 0 10px 0 0;
}

#ranking_head_game dl {
  float: left;
  width: 484px;
}

#ranking_head_game dl dt {
  font-weight: bold;
  font-size: 146.5%;
}

#ranking_head_game dl dd .btn_light_blue {
  width: 170px;
  height: 38px;
  margin: 6px 0 12px;
  line-height: 38px;
}

#ranking_head_game .king_info {
  overflow: hidden;
  background: #fadcdc;
  color: #000;
}

#ranking_head_game .king_info img {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 4px 0 0;
  padding: 2px;
}

#ranking_head_game .king_info .king_info_name img {
  background: #000;
}

#ranking_head_game .king_info .king_info_item img {
  border-radius: 8px;
  background: #c80028;
}

#ranking_head_game .king_info p {
  height: 42px;
  padding: 4px 0 0;
}

#ranking_head_game .king_info a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
}

#ranking_head_game .king_info strong {
  display: block;
  font-weight: bold;
}

#ranking_head_game .king_info .king_info_name,
#ranking_head_game .king_info .king_info_item {
  float: left;
  overflow: hidden;
  padding: 8px 0 8px 8px;
}

#ranking_head_game .king_info .king_info_name {
  width: 175px;
}

#ranking_head_game .king_info .king_info_item {
  width: 292px;
  border-left: 1px dashed #fff;
}

#ranking_head_game .king_info .king_info_item span {
  font-size: 85%;
}

#ranking_head_score {
  float: right;
  width: 293px;
  padding: 12px;
  border-radius: 10px;
  background: #eee;
}

#ranking_head_score dt {
  font-weight: bold;
  font-size: 116%;
}

#ranking_head_score dd {
  font-size: 116%;
}

#ranking_head_score dd strong {
  font-weight: bold;
  font-size: 161.6%;
}

#ranking_head_score dd .user_highscore {
  float: none;
  width: 283px;
  height: 46px;
  margin: 0;
  padding: 0 0 0 10px;
  font-size: 116%;
  line-height: 47px;
}

#ranking_main {
  overflow: hidden;
  margin: 0 0 0 13px;
}

.ranking_main_wrap {
  float: left;
  width: 317px;
  margin: 0 10px 0 0;
}

.ranking_main_wrap h2 {
  font-weight: bold;
  font-size: 116%;
}

.ranking_main_inner {
  padding: 10px 10px 0;
  background: #eee;
}

.ranking_main_inner li {
  overflow: hidden;
  position: relative;
  margin: 0 0 8px;
  padding: 0 0 8px;
  border-bottom: 1px solid #ccc;
}

.ranking_main_inner li:last-child {
  margin: 0;
  padding: 0 0 10px;
  border-bottom: 0;
}

.ranking_main_inner .ranking_main_user_icon {
  display: block;
  float: left;
  width: 60px;
  margin: 0 8px 0 0;
}

.ranking_main_inner .rank1 .ranking_main_user_icon,
.ranking_main_inner .rank2 .ranking_main_user_icon,
.ranking_main_inner .rank3 .ranking_main_user_icon {
  width: 90px;
}

.ranking_main_inner dl {
  float: left;
  width: 229px;
}

.ranking_main_inner .rank1 dl,
.ranking_main_inner .rank2 dl,
.ranking_main_inner .rank3 dl {
  width: 199px;
}

.ranking_main_inner dt {
  color: #333;
  font-weight: bold;
}

#game_left_ranking dt {
  color: #333;
  font-weight: bold;
}

.ranking_main_inner .rank1 dt,
.ranking_main_inner .rank2 dt,
.ranking_main_inner .rank3 dt {
  font-size: 131%;
}

.ranking_main_inner .rank1 dt {
  color: #946418;
}

#game_left_ranking .rank1 dt {
  color: #946418;
}

.ranking_main_inner .rank2 dt,
#game_left_ranking .rank2 dt {
  color: #426478;
}

.ranking_main_inner .rank3 dt,
#game_left_ranking .rank3 dt {
  color: #643c18;
}

.ranking_main_inner .rank1 dt img,
.ranking_main_inner .rank2 dt img,
.ranking_main_inner .rank3 dt img {
  width: 40px;
  height: 33px;
  margin: 0 4px 0 0;
  vertical-align: -4px;
}

.ranking_main_inner .rank1 dt img {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -221px;
}

.ranking_main_inner .rank2 dt img {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -40px -221px;
}

.ranking_main_inner .rank3 dt img {
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -80px -221px;
}

.ranking_main_inner dd a {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 229px;
}

.ranking_main_inner .rank1 dd a,
.ranking_main_inner .rank2 dd a,
.ranking_main_inner .rank3 dd a {
  width: 199px;
}

.ranking_main_inner .user_highscore {
  width: 221px;
  margin: 0;
  border: 1px solid #ccc;
  background-color: #fff;
  color: #333;
}

.ranking_main_inner .rank1 .user_highscore,
.ranking_main_inner .rank2 .user_highscore,
.ranking_main_inner .rank3 .user_highscore {
  width: 191px;
  height: 26px;
  margin: 6px 0 0;
  line-height: 27px;
}

.c-ranking-top-card {
  position: relative;
}

.c-ranking-top-card__l-thumb > img {
  display: block;
  width: 100%;
  max-height: auto;
}

.c-ranking-top-card__l-content {
  padding: 16px 12px;
}

.c-ranking-top-card__title {
  word-break: break-all;
}

.c-ranking-top-card:hover {
  opacity: 0.7;
}

.c-ranking-top-card__l-inner {
  overflow: hidden;
  border-radius: 2px;
}

.c-ranking-top-card__l-badge {
  position: absolute;
  top: -55px;
  width: 100%;
  text-align: center;
}

.c-ranking-top-card__l-badge > img {
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: 66px;
}

.c-ranking-top-card__title {
  font-weight: bold;
  font-size: 14px;
  line-height: 1.4;
}

.c-ranking-top-card__title > a {
  color: #222;
}

.c-ranking-card {
  position: relative;
}

.c-ranking-card__l-thumb > img {
  display: block;
  width: 100%;
  max-height: 120px;
}

.c-ranking-card__l-content {
  padding: 12px 8px;
}

.c-ranking-card__title {
  word-break: break-all;
}

.c-ranking-card:hover {
  opacity: 0.7;
}

.c-ranking-card__title {
  font-weight: bold;
  font-size: 12px;
  line-height: 1.4;
}

.c-ranking-card__title > a {
  color: #222;
}

.c-ranking-card .c-ranking-card-badge {
  display: inline-block;
  margin-right: 4px;
  padding: 2px 8px;
  border-radius: 2px;
  background-color: #666;
  color: #fff;
  line-height: 1;
}

.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 {
  display: block;
  padding: 14px 0;
  border: 1px solid #e4e4e4;
  background-color: #fff;
  color: #0086e5;
  text-align: center;
}

.c-reward-aside__btn:hover {
  opacity: 0.7;
}

.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;
  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;
}

.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: "";
}

.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 {
  font-weight: bold;
  font-size: 16px;
  display: block;
  padding: 20px 0;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}

.c-reward-login__btn:hover {
  opacity: 0.7;
}

.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;
  width: 100px;
  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%;
}

.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 {
  display: inline-block;
  color: #0094f3;
}

.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__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, #e0f6fc 0%, #b1e8f6 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;
  /* 3ステップリストページ c-section背景なし */
}

.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--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;
}

.c-section__more {
  font-size: 14px;
  color: #0086e5;
}

.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__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 {
  display: inline-block;
  padding: 8px;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  background-color: #fff;
  color: #0086e5;
}

.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-text-link {
  position: absolute;
  top: calc(50% - 8px);
  right: 16px;
}

.c-section__title-text-link > a {
  display: inline-block;
  color: #0086e5;
}

.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-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 {
  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::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:hover {
  background-color: #eaf5fb;
}

.c-section__nest-section .c-section__title {
  font-size: 20px;
  font-weight: normal;
}

/**
 * ライトに合わせてサイドのスタイルをこれに変えていく
 * c-user-gadgedとc-sectionはやめる
 */
/**
 * 左サイドのコンテンツ
 * コンテンツブロックごとに c-side-content__body で囲む
 */
.c-side-content {
  font-size: 12px;
  margin-bottom: 12px;
  border: 1px solid #ddd;
}

.c-side-content__body--sub {
  padding: 12px;
}

.c-side-content__body--dl {
  padding: 12px;
}

.c-side-content__body--dl:not(:last-child) {
  border-bottom: 1px solid #ddd;
}

.c-side-content__body--dl dd {
  font-size: 14px;
}

.c-side-content__body--dl dd strong {
  font-weight: bold;
  font-size: 14px;
}

.c-side-content__title {
  font-weight: bold;
  font-size: 16px;
  color: #333;
  line-height: 40px;
}

.c-side-content__title--icon {
  margin-bottom: 4px;
}

.c-side-content__title--icon img {
  width: 32px;
  margin-right: 4px;
  vertical-align: -8px;
}

/**
 * サイドメニュー：ガチャチケット数
 */
.c-gacha-top {
  font-size: 14px;
  padding: 16px;
  text-align: center;
}

.c-gacha-top__img {
  margin-right: auto;
  margin-left: auto;
  width: 80px;
  margin-bottom: 8px;
}

.c-gacha-top__content {
  margin-bottom: 8px;
}

.c-gacha-top__content ul {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.c-gacha-top__title {
  font-weight: bold;
  font-size: 14px;
}

.c-gacha-top__count {
  font-weight: bold;
  font-size: 14px;
}

.c-gacha-top__count > img {
  margin-right: auto;
  margin-left: auto;
  display: block;
  width: 48px;
}

.c-gacha-top__count > span {
  font-weight: bold;
  font-size: 20px;
  color: #f9484e;
}

.c-gacha-top__action {
  font-weight: bold;
  font-size: 14px;
  width: 100%;
  margin-bottom: 10px;
  padding-top: 12px;
  padding-bottom: 12px;
  border-radius: 4px;
  background-color: #d1d1d1;
  color: #fff;
  text-align: center;
}

.c-gacha-top__action span {
  color: #fff;
}

.c-gacha-top__action--sub {
  background-color: #0086e5;
}

.c-gacha-top__action--sub a {
  color: #fff;
}

/**
 * サイドメニュー：汎用ゲームリスト
 */
.c-aside-sec {
  margin-bottom: 12px;
}

.c-side-shelf {
  border: 1px solid #ddd;
}

.c-side-shelf__ttl {
  font-weight: bold;
  font-size: 16px;
  padding: 16px 12px;
}

.c-side-shelf__list > li {
  padding: 8px 12px;
}

.c-side-shelf__list > li:hover {
  background-color: #f4f4f4;
}

.c-side-shelf__item {
  display: flex;
  align-items: center;
}

.c-side-shelf__item > figure {
  margin-right: 8px;
}

.c-side-shelf__item > figure > img {
  width: 36px;
}

.c-side-shelf__item > p {
  font-weight: bold;
  font-size: 12px;
  flex: 1;
  color: #333;
  line-height: 1.4;
}

.c-side-shelf__arrow {
  position: relative;
}

.c-side-shelf__arrow::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.c-side-shelf__close-btn {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
  border: solid 1px #e3e3e3;
  border-radius: 4px;
  background-color: #fff;
}

.c-side-shelf__close-btn > svg {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.c-side-shelf__close-btn:hover {
  background-color: #f7f7f7;
}

.c-side-shelf__l-footer {
  padding-top: 8px;
  padding-bottom: 16px;
  text-align: center;
}

.c-side-shelf__more {
  font-size: 12px;
}

/* 旧サイドカラム（_old-components.scssより移管） */
/* @group Right coloumn */
.ad300250 {
  margin: 0 0 10px 0;
}

/* 非ログインユーザーがソーシャルから訪れたときのバッチリスト */
#side_col #user_badge_list {
  margin: 0 0 10px 0;
  padding: 10px;
  border-radius: 5px;
  background-color: #fff;
}

#side_col #user_badge_list img {
  width: 35px;
  height: 35px;
  margin-right: 5px;
}

#side_col #user_badge_list .user_name {
  display: block;
  width: 238px;
  height: 35px;
}

#side_col #user_badge_list .badge_name {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  width: 226px;
  height: 35px;
  line-height: 35px;
}

#side_col #user_badge_list li {
  width: 266px;
  margin-bottom: 4px;
  padding: 6px;
  background: #eee;
}

/* スター通帳をみる */
.c-star-holding__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-star-holding__prosession::before {
  display: inline-block;
  width: 16px;
  height: 20px;
  margin-right: 4px;
  background: url("/gesolite/pc/img/ap-gesoten/core/icon/star-20.png?v=202504021600") no-repeat;
  background-size: 100%;
  content: "";
  vertical-align: middle;
}

.c-star-holding__l-btn {
  margin-top: 8px;
}

.c-star-holding__btn {
  display: block;
  padding: 14px 0;
  border: 1px solid #e4e4e4;
  border-radius: 2px;
  background-color: #fff;
  color: #0086e5;
  text-align: center;
}

.c-star-holding__btn:hover {
  opacity: 0.7;
}

/* 汎用テーブル */
.table-common {
  padding-bottom: 24px;
}

.table-common table {
  width: 100%;
  border-collapse: collapse;
}

.table-common th,
.table-common td {
  font-size: 14px;
  padding: 12px;
  border: 1px solid #e3e3e3;
  vertical-align: middle;
  text-align: left;
}

.table-common th {
  background-color: #e0f6fc;
}

.table-common__em {
  font-weight: bold;
  font-size: 14px;
}

.table-common__outer-btn-right {
  display: flex;
  justify-content: flex-end;
  padding-bottom: 12px;
}

.table-common__outer-btn-right > a {
  min-width: 120px;
}

.c-tab-common {
  font-weight: bold;
  font-size: 14px;
  display: flex;
}

.c-tab-common a {
  flex: 1;
  padding: 12px;
  border-bottom: solid 2px #acacac;
  color: #acacac;
  text-align: center;
}

.c-tab-common a[aria-selected="true"] {
  border-bottom: solid 2px #0086e5;
  color: #0086e5;
}

.c-tab-common--primary a[aria-selected="true"] {
  border-bottom: solid 2px #00b4d8;
  color: #00b4d8;
}

/* ゲームアイコンのみの型 マイゲームに使用 */
.c-thumb {
  position: relative;
  display: flex;
}

.c-thumb__l-thumb {
  flex: 1;
  width: 98px;
}

.c-thumb__l-thumb > img {
  display: block;
  width: 100%;
}

.c-thumb__l-content {
  width: calc(100% - 98px);
  padding: 0;
}

.c-thumb__title {
  word-break: break-all;
}

.c-thumb:hover {
  opacity: 0.7;
}

.c-thumb > a {
  outline-offset: unset;
}

.c-thumb__thumbnail > img {
  width: 100%;
}

.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%;
}

/* 左カラムユーザーのステータス表示 */
.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 {
  /* レトロゲームページでバナーが二連の場合に使用 */
  /* バナー貼付用（マル得パス導線等で使用） */
}

.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 {
  color: #222;
}

.c-user-gadged-proflie__nickname > a:hover {
  color: #0086e5;
  text-decoration: underline;
}

.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__induction {
  margin-bottom: 12px;
}

.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 {
  border: 1px solid #ddd;
  background-color: #fff;
  text-align: center;
}

.c-user-gadged-alert:hover {
  opacity: 0.7;
}

.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 {
  color: #222;
}

.c-user-gadged-proflie-list__item > a:hover {
  color: #0086e5;
  text-decoration: underline;
}

.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 {
  display: inline-block;
  color: #0086e5;
  vertical-align: sub;
}

.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-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;
}

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 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  gap: 4px;
}

.c-user-status-item-list > li > a:hover {
  opacity: 0.7;
}

.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;
  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:hover {
  opacity: 0.7;
}

.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;
}

.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;
}

/* 古いフォントサイズ指定 */
.size10 {
  font-size: 77%;
}

.size11 {
  font-size: 85%;
}

.size12 {
  font-size: 93%;
}

.size13 {
  font-size: 100%;
}

.size14 {
  font-size: 108%;
}

.size15 {
  font-size: 116%;
}

.size16 {
  font-size: 123.1%;
}

.size17 {
  font-size: 131%;
}

.size18 {
  font-size: 138.5%;
}

.size19 {
  font-size: 146.5%;
}

.size20 {
  font-size: 153.9%;
}

.size21 {
  font-size: 161.6%;
}

.size22 {
  font-size: 167%;
}

.size23 {
  font-size: 174%;
}

.size24 {
  font-size: 182%;
}

.size25 {
  font-size: 189%;
}

.size26 {
  font-size: 197%;
}

.radius4 {
  border-radius: 4px;
}

.radius6 {
  border-radius: 6px;
}

.radius8 {
  border-radius: 8px;
}

.radius10 {
  border-radius: 10px;
}

.radius12 {
  border-radius: 12px;
}

/**
 * バッジ ライトと共通のスタイル
 */
.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により可変させる */
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  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 {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  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 {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  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 {
  font-size: 14px;
  display: block;
  padding: 16px 0;
  border-radius: 2px;
  background-color: #ff9600;
  color: #fff;
  text-align: center;
}

.btn-action:hover {
  opacity: 0.7;
}

.btn-action:hover {
  color: #fff;
}

.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 {
  opacity: 0.7;
}

.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;
  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;
}

/* ガイドページ以外でも使われるので分離 */
.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;
}

.c-friend-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.c-friend-list.is-empty {
  display: block;
  /* 空の場合はグリッド無効化 */
}

.c-friend-list__item {
  box-shadow: 0 0 4px #d1d1d1;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  overflow: hidden;
  position: relative;
  min-width: 0;
  padding: 8px;
  border-radius: 4px;
  background-color: #fff;
}

.c-friend-list__item:hover .c-friend-list__delete, .c-friend-list__item:focus-within .c-friend-list__delete {
  opacity: 1;
}

.c-friend-list__delete {
  position: absolute;
  top: 4px;
  right: 4px;
  opacity: 0;
  transition: opacity 0.15s;
}

.c-friend-list__delete > button {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: solid 1px #d1d1d1;
  border-radius: 50%;
  background-color: #fff;
  color: #646464;
  cursor: pointer;
}

.c-friend-list__delete > button:hover, .c-friend-list__delete > button:focus-visible {
  border-color: #ee6e72;
  background-color: #ffebee;
  color: #f02532;
}

.c-friend-list__delete > button:focus-visible {
  outline: 2px solid #0086e5;
  outline-offset: 2px;
}

.c-friend-list__l-text {
  display: flex;
  flex: 1;
  flex-direction: column;
  overflow: hidden;
  gap: 4px;
}

.c-friend-list__l-content {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 8px;
}

.c-friend-list__thumbnail {
  overflow: hidden;
  width: 45px;
  height: 45px;
  border-radius: 50%;
}

.c-friend-list__thumbnail > img {
  width: 100%;
  height: 100%;
}

.c-friend-list__time {
  font-size: 10px;
  color: #646464;
}

.c-friend-list__name {
  font-weight: bold;
  font-size: 16px;
  overflow: hidden;
  color: #333;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.c-friend-list__none {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f7f7f7;
  padding-block: 8px;
  grid-column: 1 / -1;
  /* 全てのカラムを占領 */
}

.c-user-profile-btn {
  font-weight: bold;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  border: solid 1px #d1d1d1;
  border-radius: 30px;
  color: #333;
  cursor: pointer;
}

.c-user-profile-btn > i {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 4px;
  background-size: cover;
  content: "";
  vertical-align: middle;
}

.c-user-profile-btn--like > i {
  background: url("/gesolite/sp/img/ap-gesoten/core/icon/icon-like.svg?v=202504021600");
  background-size: 16px 16px;
}

.c-user-profile-btn--liked {
  border: solid 1px #ee6e72;
  color: #ee6e72;
}

.c-user-profile-btn--liked > i {
  background: url("/gesolite/sp/img/ap-gesoten/core/icon/icon-liked.svg?v=202504021600");
  background-size: 16px 16px;
}

/* @group コミュニティ */
#topics {
  position: relative;
}

#topics .tab {
  position: absolute;
  top: 0;
  padding: 0 0 0 10px;
}

#topics .tab li {
  width: 110px;
}

#topics section {
  display: none;
  padding: 0 8px;
  background-color: #fff;
}

.topics_inner_box {
  height: 150px;
  margin: 23px 0 10px;
  padding: 10px 14px;
  background: #eee;
}

.topics_inner_box img {
  float: left;
  width: 150px;
  margin: 0 10px 0 0;
}

.topics_inner_box dl {
  position: relative;
}

.topics_inner_box .com_text {
  color: #333;
}

.topics_inner_box .topic_date {
  position: absolute;
  top: 10px;
  right: 0;
  color: #888;
  font-size: 85%;
}

.topics_inner_box .topic_parent {
  padding: 26px 0 0;
}

.topics_inner_box .topic_child {
  width: 92%;
  margin: 0 0 0 24px;
  padding: 6px 10px 4px;
  border-bottom: 1px solid #eee;
  background-color: #fff;
}

#topics h3 {
  position: relative;
  font-weight: bold;
  font-size: 131%;
}

#topics section h4,
#topics section h2 {
  border-bottom: 1px solid #ccc;
  font-size: 123.1%;
}

#topics section ul li a strong {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  float: left;
  width: 250px;
  font-size: 108%;
}

#topics section ul li .topic_cmts {
  position: absolute;
  right: 10px;
  font-weight: bold;
}

#tweet_parent {
  margin: 0 0 10px 0;
  background: #f4f4f4;
}

#tweet_parent h2#topic_title,
#tweet_parent h1#topic_title {
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 20px;
}

/* トピック用の新しいstyle ここから */
.c-topic-contents__image {
  display: block;
  float: left;
  overflow: hidden;
  width: 100px;
  margin-right: 10px;
  padding: 3px;
  border: 1px solid #bbb;
  background-color: #fff;
  vertical-align: top;
}

.c-topic-contents__image img {
  width: 100%;
}

.c-topic-contents__desc {
  float: left;
  width: 397px;
}

/* トピック用の新しいstyle ここまで */
#feed_form {
  position: relative;
  width: 612px;
  height: auto;
  margin: 0 auto;
  padding: 10px;
  background-color: #fff;
}

#feed_form dl {
  padding-bottom: 10px;
}

#feed_form dl dt {
  width: 100px;
}

#feed_form dl dt img {
  width: 100px;
}

#feed_form dl dd {
  width: 502px;
}

#feed_form dl dd h2 {
  font-size: 153.9%;
}

#feed_form .feed_form_bold {
  font-weight: bold;
  font-size: 123.1%;
}

#feed_form .feed_form_bold span {
  font-weight: normal;
  font-size: 77%;
}

#make_topic h2 {
  margin: 0 0 20px 0;
}

#make_topic h3 {
  margin: 0 0 5px 0;
}

.topic #colorbox,
.topic #cboxWrapper,
.topic #cboxContent,
.topic #cboxLoadedContent {
  overflow: visible !important;
}

#make_topic p {
  padding: 10px 0;
}

#make_topic .select_category {
  padding: 5px 0;
}

#make_topic .post_box {
  padding: 0;
  background-color: #fff;
}

#make_topic .topic_title {
  width: 602px;
}

#feed_form textarea,
#make_topic .post_box textarea {
  display: block;
  width: 602px;
  height: 100px;
  margin: 0;
  resize: none;
}

#feed_form .post_box_menu,
#make_topic .post_box_menu {
  position: relative;
  margin: 3px 0 0 0;
  padding: 0;
  border: 1px solid #ccc;
  background: #eee;
}

#feed_form .post_box_menu ul {
  width: 400px;
}

#make_topic .post_box_menu dl.right {
  width: 460px;
}

#side_col #btn_make_topic {
  padding: 0 0 10px 0;
}

#side_col #btn_make_topic .btn_gray {
  display: block;
  padding: 5px;
  font-weight: bold;
  font-size: 123.1%;
}

/* トピックの画像投稿 */
#make_topic .add_img_box {
  display: block;
  position: absolute;
  top: -2px;
  left: 90px;
  width: 214px;
  height: 21px;
}

#make_topic .add_img_box input[type="file"] {
  position: relative;
  line-height: 0;
}

/* @end */
/* mypage_renew20130304 */
#timeline_top {
  z-index: 10;
  position: relative;
  width: 972px;
  height: 40px;
  margin: 1px auto 0;
  background: #eee;
}

#timeline_top #timeline {
  z-index: 1;
  width: 513px;
  margin: 0;
  padding: 0;
  background: transparent;
}

#timeline_top #all_tweets,
#timeline_top #your_tweets,
#timeline_top #reply_tweets {
  padding: 4px;
  border: 1px solid #ccc;
  background-color: #fff;
  -moz-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
}

#timeline_top #all_tweets {
  padding-top: 28px;
}

#timeline_top .tweet_list .posted_tweet {
  float: right;
  position: relative;
  width: 392px;
  padding: 6px 4px 2px;
  border: 3px solid #ccc;
  background-color: #fff;
}

#timeline_top .each_tweet_header .user_name {
  width: 200px;
}

#timeline_top .tweet_list {
  width: 478px;
  padding: 4px;
}

.timeline_append_span {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: 500px;
}

#timeline_tab {
  overflow: hidden;
}

#timeline_tab li {
  float: left;
  width: 171px;
}

#timeline_tab li a {
  display: block;
  position: relative;
  width: 170px;
  height: 40px;
  border-right: 1px solid #ddd;
  background: url("//static.gesoten.com/img/geso/common/list_arrow_down.png?v=202504021600") no-repeat 150px center;
  color: #333;
  text-align: center;
  line-height: 40px;
}

#timeline_tab li a:hover {
  background: url("//static.gesoten.com/img/geso/common/list_arrow_down.png?v=202504021600") no-repeat 150px center #e6e6e6;
  text-decoration: none;
}

#timeline_tab li.current a {
  background: url("//static.gesoten.com/img/geso/common/list_arrow_up.png?v=202504021600") no-repeat 150px center #eee;
}

#timeline_tab li a strong {
  display: block;
  position: absolute;
  top: 10px;
  right: 22px;
  height: 16px;
  padding: 0 4px;
  border: 1px solid #fff;
  background: #f00;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 85%;
  line-height: 17px;
}

#timeline_tab li img {
  height: 19px;
  margin: 0 4px 0 0;
  vertical-align: -4px;
}

#timeline_tab #tab_reply_tweets img {
  width: 21px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat 0 -122px;
}

#timeline_tab #tab_all_tweets img {
  width: 20px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -21px -122px;
}

#timeline_tab #tab_your_tweets img {
  width: 18px;
  background: url("//static.gesoten.com/img/common/sprite.png?v=202504021600") no-repeat -41px -122px;
}

#topics h3 {
  display: inline;
  margin: 0;
  padding: 0;
}

/* 汎用的なバナー設置用 余白によってbottomを使う */
.c-induction-banner {
  width: 972px;
  margin: 0 auto 16px;
}

.c-induction-banner a {
  display: block;
}

.c-induction-banner img {
  width: 100%;
}

.c-community-img {
  display: block;
  float: left;
  overflow: hidden;
  width: 100px;
  margin-right: 10px;
  padding: 3px;
  border: 1px solid #bbb;
  background-color: #fff;
}

.c-community-img img {
  display: block;
  width: 100%;
}

/* 掲示板 */
#bbs_tit_common {
  position: relative;
  padding: 0 13px 10px;
}

#bbs_tit_common #social_login {
  margin: 10px 0 0;
  padding: 6px 10px;
  background: #eee;
}

#bbs_tit_common #social_login dt {
  font-weight: bold;
}

#bbs_tit_common #social_login .login_tw,
#bbs_tit_common #social_login .login_fb {
  float: left;
  width: 160px;
  height: 34px;
  margin: 0 8px 0 0;
  line-height: 36px;
}

#ranking_head .show_make_topic_modal {
  position: absolute;
  top: 0;
  right: 0;
  width: 170px;
}

#bbs_tit_common .show_make_topic_modal {
  position: absolute;
  top: 0;
  right: 0;
  right: 13px;
  width: 170px;
  width: 170px;
  height: 35px;
  line-height: 35px;
}

#bbs_tit_common img {
  width: 35px;
  height: 35px;
  vertical-align: -8px;
}

#bbs_tit_common h1 {
  display: inline;
  font-weight: bold;
  font-size: 146.5%;
}

#topics_category {
  margin: 0 13px 16px;
  padding: 12px;
  background: #f4f4f4;
  font-size: 116%;
}

#topics_category dt {
  display: inline;
}

#topics_category dd {
  display: inline;
  margin: 0 6px 0 0;
}

#topics_category dd a {
  padding: 6px 8px;
  border: 1px solid #ddd;
  background-color: #fff;
}

#topics_category dd a:hover {
  border: 1px solid #bbb;
  text-decoration: none;
}

#topics_category dd.current a {
  border: 1px solid #aaa;
  background-color: #e1faff;
}

#wrapper_topics {
  overflow: hidden;
}

#wrapper_topics_inner {
  position: relative;
  margin: 0 13px;
}

#wrapper_topics_inner .topic_none {
  padding: 30px 0;
  background: #ffc;
  text-align: center;
}

#wrapper_topics_inner .topic_none_txt {
  padding-bottom: 20px;
  font-size: 14px;
  line-height: 1.5;
}

#wrapper_topics_inner .topic_none_link {
  font-size: 18px;
}

#wrapper_topics #main_basic #wrapper_topics_inner {
  margin: 0 0 0 13px;
}

#search_set_box {
  z-index: 1;
  overflow: hidden;
  position: absolute;
  top: 60px;
  right: 13px;
  width: 340px;
}

#search_set_box .search_box {
  overflow: hidden;
  width: 340px;
}

#search_set_box .search_box select {
  width: 70px;
  height: 24px;
  margin: 0 4px 0 0;
}

#search_set_box .search_box input[type="text"] {
  width: 181px;
  margin: 0 4px 0 0;
}

#search_set_box .search_box input[type="submit"] {
  float: right;
  width: 63px;
  height: 24px;
  font-weight: normal;
  font-size: 100%;
  line-height: 23px;
}

.topic-item {
  position: relative;
  padding: 8px 110px 8px 0;
  border-bottom: 1px solid #eee;
}

.topic-item div {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
}

.topic-item .topic_tit {
  font-size: 131%;
}

.topic-item .topic_tit_total {
  max-width: 350px;
}

.topic-item .topic_tit_category {
  max-width: 800px;
}

.topic-item .topic_tit img {
  width: 24px;
  margin: 0 4px 0 0;
  vertical-align: -6px;
}

.topic-item .topic_category {
  padding: 1px 6px;
  background: #ddd;
  color: #666;
  font-size: 85%;
}

.topic-item .topic_date {
  position: absolute;
  top: 0;
  right: 0;
  color: #aaa;
  font-size: 12px;
}

#wrapper_topics_inner dl {
  padding: 6px;
  border-bottom: 1px solid #eee;
}

#wrapper_topics_inner dt {
  position: relative;
  padding: 0 110px 0 0;
}

#wrapper_topics_inner dt .topic_tit {
  font-size: 131%;
}

#wrapper_topics_inner dt div {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
}

#wrapper_topics_inner dt .topic_tit_total {
  max-width: 350px;
}

#wrapper_topics_inner dt .topic_tit_category {
  max-width: 800px;
}

#wrapper_topics_inner dt .topic_tit img {
  width: 24px;
  margin: 0 4px 0 0;
  vertical-align: -6px;
}

#wrapper_topics_inner dt .topic_category {
  padding: 1px 6px;
  background: #ddd;
  color: #666;
  font-size: 85%;
}

#wrapper_topics_inner dt .topic_date {
  position: absolute;
  top: 0;
  right: 0;
  color: #aaa;
  font-size: 12px;
}

#bbs_topic_detail .post_td {
  position: absolute;
  top: 0;
  right: 0;
  color: #aaa;
  font-size: 12px;
}

#wrapper_topics_inner dd {
  padding: 4px 0 0;
}

#search_box {
  overflow: hidden;
}

#wrapper_topics #aside_basic {
  margin: 0 13px 0 0;
}

.aside_box {
  margin: 0 0 12px;
  padding: 8px 10px;
  border: 1px solid #ddd;
}

.aside_box h3 {
  margin: 0 0 4px;
  border-bottom: 1px solid #eee;
  font-weight: bold;
  font-size: 116%;
}

#wrapper_topics .aside_box li {
  padding: 0 0 4px;
  word-break: break-all;
}

#wrapper_topics .aside_box li:last-child {
  padding: 0;
}

#wrapper_topics .aside_box img {
  width: 30px;
  height: 30px;
}

#wrapper_topics .aside_box a img {
  width: auto;
  height: auto;
}

/* 掲示板topic_detail */
#bbs_topic_detail #main_col {
  width: 660px;
  margin: 8px 0 0 13px;
}

#bbs_topic_detail #bbs_tit_common {
  height: 37px;
  margin: 0 0 4px;
  padding: 0;
  line-height: 37px;
}

#bbs_topic_detail #bbs_tit_common .show_make_topic_modal {
  right: 0;
}

#bbs_topic_detail #timeline {
  position: relative;
  width: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
}

#wrapper_topics #timeline {
  position: relative;
  width: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
}

#wrapper_topics #timeline .post_box {
  width: 658px;
  margin: 0 0 0 13px;
}

#wrapper_topics .tweet_list {
  width: 660px;
  padding: 10px 13px;
}

#bbs_topic_detail #timeline #tweet_parent {
  position: relative;
  padding: 15px;
}

#bbs_topic_detail #timeline .tweet_list form {
  display: inline;
}

#bbs_topic_detail #timeline #tweet_parent form .btn_light_gray,
#bbs_topic_detail #timeline .tweet_list form .btn_light_gray {
  display: inline;
  height: 24px;
  font-weight: normal;
  font-size: 85%;
  line-height: 22px;
}

#bbs_topic_detail #timeline #tweet_parent .posted_tweet {
  border: 0;
}

#bbs_topic_detail #timeline #tweet_parent .posted_tweet::before, #bbs_topic_detail #timeline #tweet_parent .posted_tweet::after {
  border: 0;
}

#bbs_topic_detail #timeline #tweet_parent dl {
  overflow: hidden;
}

#bbs_topic_detail #timeline #tweet_parent .posted_tweet {
  width: 515px;
  padding: 0;
}

#bbs_topic_detail #timeline .tweet_list .post_td {
  top: 8px;
  right: 8px;
}

#bbs_topic_detail #timeline .tweet_list .posted_tweet_body,
#bbs_topic_detail #timeline .tweet_list .your_reply {
  margin: 6px 0 2px;
  /*  overflow:hidden;*/
}

.bbs_user_name {
  font-weight: bold;
}

#bbs_topic_detail #timeline .tweet_list {
  width: auto;
  padding: 0;
  border: 0;
}

/* aima移行用ページのスタイル */
.c-geso-migrate {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 800px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 24px;
  padding-bottom: 40px;
  text-align: center;
  gap: 24px;
}

.c-geso-migrate__head > img {
  width: 100%;
}

.c-geso-migrate__ttl {
  font-weight: bold;
  font-size: 20px;
}

.c-geso-migrate__text {
  font-size: 14px;
}

.c-geso-migrate__days {
  font-weight: bold;
  font-size: 16px;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  border: solid 2px #f07a23;
  color: #f07a23;
}

.c-geso-migrate__l-desc {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 24px;
}

.c-geso-migrate__desc {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 24px;
  border-radius: 4px;
  background-color: #fffce8;
  gap: 16px;
}

.c-geso-migrate__arrow > img {
  width: 34px;
}

.c-geso-migrate__l-btn {
  width: 300px;
  margin-right: auto;
  margin-left: auto;
}

.c-geso-migrate__code {
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70%;
  padding: 16px;
  border-radius: 8px;
  background-color: #fff6c5;
  gap: 12px;
}

.c-geso-migrate__code > input {
  font-size: 16px;
  padding: 4px 8px;
}

.c-geso-migrate__code > button {
  width: 100px;
  background-color: transparent;
}

.c-geso-migrate-faq {
  padding: 24px;
  background-color: #f07a23;
  text-align: center;
}

.c-geso-migrate-faq__ttl {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 24px;
  color: #fff;
}

.c-geso-migrate-faq__inner {
  box-sizing: border-box;
  max-width: 1000px;
  margin-right: auto;
  margin-bottom: 24px;
  margin-left: auto;
  padding: 24px;
  border-radius: 16px;
  background-color: #fff;
}

.c-geso-migrate-faq__list {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 24px;
}

.c-geso-migrate-faq__list > li > span {
  font-weight: bold;
  font-size: 14px;
  display: flex;
  flex-direction: row;
  margin-bottom: 12px;
  padding: 12px;
  border-radius: 4px;
  background-color: #fff6c5;
  color: #f07a23;
  gap: 4px;
}

.c-geso-migrate-faq__list > li > p {
  font-size: 14px;
  padding-left: 32px;
  text-align: start;
}

.c-geso-migrate-faq__icon {
  box-sizing: border-box;
  min-width: 24px;
  background-image: url("/gesolite/pc/img/ap-gesoten/migrate/icon-question.svg?v=1");
  background-position: 50% 10%;
  background-size: contain;
  background-repeat: no-repeat;
}

.c-geso-migrate-label {
  font-weight: bold;
  font-size: 20px;
  padding: 4px 24px;
  border: 2px solid #f07a23;
  border-radius: 4px;
  color: #f07a23;
}

.c-geso-migrate-label--active {
  background-color: #f07a23;
  color: #fff;
}
