/*
Theme Name: best app
Theme URI: 
Description: 
Version: 1
Author: 
Author URI: 
*/
html {
	font-family: "MS Pゴシック",sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

span.slider_name {
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 auto;
  display: inline-block;
}

table.info {
	margin: 16px auto 0 auto;
	text-align: center;
	border-collapse:collapse;
	width: 100%;
	font-size: 12px;
}

table.info th {
	background-color: #8EB8FF;
	color: #FFF;
}

table.info th,td {
	border: 1px solid #75A9FF;
	padding: 4px;
}

@keyframes blink {
  0% { opacity: 1; }
  50% { opacity: 0.5; }
  100% { opacity: 1; }
}

.ext_ranking_top {
	width: 100%;
	margin: 0 -16px;
	padding: 16px 16px 8px 16px;
	background-color: #FFF;
}

.ext_ranking_top img {
	width: 100%;
}

.banner_ranking_top {
	width: 100vw;
	background-color: #FFF;
	margin: 0 -16px;
	padding-bottom: 8px;
}

.banner_ranking_top img {
	width: 100vw;
	display: block;
}

.banner_summary_top {
	width: 100%;
	background-color: #FFF;
	padding-top: 18px;
    margin-top: -18px;
}

.banner_summary_top img {
	width: 100%;
	display: block;
}

.banner_thumbnail {
	width: 100%;
	background-color: #FFF;
	padding-bottom: 8px;
	padding-top: 4px;
}

.banner_thumbnail img {
	width: 100%;
	display: block;
	margin-top: -10px;
}

span.icon_slider_h2 {
  animation: blink 1s infinite;
}

.arrow-round {
	position: relative;
	display: inline-block;
	top: 10px;
	float: right;
}

.arrow-round::before {
  content: '';
  width: 8px;
  height: 8px;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  left: 5px;
  top: 5px;
}

.arrow-round.arrow-top::before {
  transform: rotate(-45deg);
  top: 7px;
}

.back-to-top-btn {
 	width: 100%;
 	text-align: center;
	margin: 0 auto 16px auto;
	display: grid;
 }

#back-to-top-btn {
  padding: 8px 40px;
  background-color: #333;
  color: #fff;
  text-align: center;
  line-height: 40px;
  border-radius: 5px;
  font-size: 14px;
}

.recommend_content {
	padding: 12px 8px;
	border-bottom: 1px solid #DDD;
}

.recommend_pc h2 {
	padding: 8px 0 !important;
}

.recommend_pc li {
	margin: 0 !important;
}

.viewthrough {
	margin: 8px 0 16px 0;
}

.viewthrough video {
	border: none;
	margin-bottom: 30px;
}

.arrow{
	position: relative;
	display: block;
	padding: 0 0 0 22px;
	vertical-align: middle;
	margin: 8px auto;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 2.5px;
	bottom: 0;
	left: 0;
	content: "";
	vertical-align: middle;
}

.arrow_point::before{
	width: 18px;
	height: 18px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #ff6a6a;
	margin-top: 0;
}
.arrow_point::after{
    top: 8px;
	left: 4px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.balloon {
	font-size: 14px;
	position: relative;
	width: 1.0em;
	height: 0.8em;
	background-color: #5ab9ff;
	border-radius: 1.0em / 0.8em;
	float: left;
    top: 3px;
    margin-right: 4px;
}

.summary .balloon {
	font-size: 12px;
  top: 1px;
	margin-right: 2px;
}


.balloon::before {
	content: "";
	position: absolute;
	top: 0.5em;
	left: 0.2em;
	width: 0;
	height: 0;
	border-right: 0.2em solid transparent;
	border-left: 0.2em solid transparent;
	border-top: 0.6em solid #5ab9ff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

h2.ranking_other {
	color:#333;
	text-decoration: none;
	padding: 0 0 8px 16px;
	background-color: #FFF;
	margin-top: 16px;
}

h2.ranking_other_top {
	color:#333;
	text-decoration: none;
	padding: 0 0 8px 16px;
	background-color: #FFF;
	margin-top: 16px;
}

li.ranking_other {
	padding: 0;
}

table.appseek_price_table {
	margin: 0 0 20px 0;
	width: 100%;
	border-collapse: collapse;
	text-align: center;
}

table.appseek_price_table th {
	padding: 4px 0;
	border: 1px solid #BBBBBB;
}

table.appseek_price_table td {
	padding: 4px 0;
	background-color: #FFFFF0;
	border: 1px solid #BBBBBB;
	height: 32px;
	line-height: 1.3;
	font-size: 12px;
}

tr.appseek_price_table_th_top {
	background-color: #ffa337;
	color: #FFF;
	border: 1px solid #BBBBBB;
	font-size: 15px;
}

tr.appseek_price_table_th_main {
	background-color: #F0FFFF;
	font-size: 12px;
	border: 1px solid #BBBBBB;
}

td.appseek_price_table_td_1 {
	width: 20%;
}

td.appseek_price_table_td_2 {
	width: 50%;
}

td.appseek_price_table_td_3 {
	width: 30%;
}

span.appseek_price_table {
	font-size: 11px;
	color: red;
}

div.cta_upper {
	font-weight: 600;
	font-size: 18px;
	text-align: center;
	margin-bottom: 4px;
}

div.grad-wrap {
	min-height: 160px;
	margin-top: -20px;
}

img.attachment-thumbnail, size-thumbnail, wp-post-image {
	width: 100%;
	height: auto;
}

img.img_article_list {
	width: 30%;
	height: auto;
	float: left;
	margin-right: 8px;
}

div.recommend {
	background-color: #FFF;
	padding: 1px 8px 16px 8px;
}

div.top_list {
	margin: 16px 16px;
	background-color: #fff;
}

div.top_list_ranking {
	background-color: #fff;
	border-bottom: 1px solid #CCCCCC;
	height: 60px;
	padding-bottom: 12px;
}

div.app_categories {
	margin: 0 16px;
}

div.app_genre {
	margin-bottom: 8px;
	font-weight: 600;
}

label {
line-height: 1.6;
margin-right: 4px;
}

label.search {

}

div.search {
	width: 100%;
	text-align: center;
	background-color: #FFF;
	margin-bottom: 16px;
	padding: 2px 0 2px 0;
}

table.search {
	text-align: left;
	border-collapse: collapse;
	font-size: 11px;
	table-layout: fixed;
	width: 96%;
	margin: 8px;
}

table.search tr {

}

table.search td {
	padding: 6px 4px;
	word-break: break-all;
}

div.search_h2 {
	text-align: left;
	color: #333;
	font-weight: 600;
	margin-left: 12px;
	margin-bottom: -8px;

}

input.search {
	width: 80%;
	height: 28px;
	background-color: #2C7CFF;
	color: #FFF;
	border: none;
	font-size: 13px;
	display: block;
	margin: 4px auto 16px auto;
	border-radius: 20px;
}


div.icon_slider {
    overflow-x: auto;
    text-align: center;
    margin: -4px 0 -2px 0;
}

table.icon_slider {
	width: 100%;
	height: 112px;
  border-collapse: collapse !important;
  table-layout: fixed;
  display: block;
  background-color: #FFF;
  overflow-x: auto;
  padding: 0 8px;
}

table.icon_slider td {
    padding: 0 6px;
    background: #FFF;
    border: none;
    vertical-align: top;
    text-align: center;
}

table.icon_slider li {
	padding: 12px 0;
}

img.wp_img_icon_slider {
    width: 74px;
    height: 74px;
    float: left;
    border-radius: 16px;
}

ol.targets {
	padding: 0;
	list-style: none;
	counter-reset: li;
}

ol.targets_top {
	padding: 0;
	list-style: none;
	counter-reset: li;
	margin: 0 -16px;
}

ol.targets_icon_slider {
	padding: 0;
	list-style: none;
	counter-reset: li;
	margin: 0 -16px;
	height: 120px;
}

ul.nth_type {
	padding-left: 0;
}

li.target {
	padding: 0;
	margin: 0 -16px;
	position: relative;
}

li.target_noranks {
	padding: 0;
	position: relative;
}

li.target:before {
	counter-increment: li;
	content: counter(li);
	position: absolute;
	left: 5px;
	top: 5px;
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: #AFDFE4;
	font-size: 17px;
	color: #fff;
	line-height: 1.8;
	text-align: center;
	z-index: 99;
}

li.target_matome {
	padding: 0;
	position: relative;
}

li.target_matome:before {
	counter-increment: li;
	content: counter(li);
	position: absolute;
	left: 5px;
	top: 5px;
	display: block;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background-color: #FF9933;
	font-size: 14px;
	color: #fff;
	line-height: 1.8;
	text-align: center;
	z-index: 99;
}

li.target_matome_top {
	padding: 0;
	position: relative;
	border-bottom: 1px solid #DDD;
	padding-bottom: 12px;
  background: #FFF;
}

li.target_matome_top:last-child {
	padding: 0;
	position: relative;
	border-bottom: none;
	padding-bottom: 12px;
  background: #FFF;
}

li.target_related_service {
	padding: 0;
	position: relative;
}

.nth_type li:nth-of-type(1)::before{
	background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
}

.nth_type li:nth-of-type(2)::before{
	background: linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%);
}

.nth_type li:nth-of-type(3)::before{
	background: linear-gradient(45deg, #815a2b 0%, #815a2b 45%, #CC6600 70%, #993300 85%, #815a2b 90% 100%);
}

span.input {
	color: #424242;
	font-size: 13px;
}

.button_left{
	width: 50%;
	height: 40px;
	float: left;
	font-size: 13px;
	border: none;
	font-weight: 600;
	background-color: #EEEEEE;
	color: #333;
}

.button_right{
	width: 50%;
	height: 40px;
	font-size: 13px;
	border: 1px solid;
	border: none;
	font-weight: 600;
	background-color: #EEEEEE;
	color: #333;
}

div.genre {
	margin-left: 26px;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 8px;
}

div.select_box {
	width: 100%;
    position: relative;
}

.select_box:after {
	content: "";
    position: absolute;
    right: 20px;
    top: 15px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ccc;
    border-left: 2px solid #ccc;
    transform: translateY(-50%) rotate(
-135deg
);
  font-size: 20px;
  pointer-events: none;
  margin-right: 30px;
}

.select_box {
	width: 90%;
	height: 40px;
	display: block;
	margin: 0 auto 12px auto;
	border: none;
	font-size: 13px;
	border-radius: 20px;
	text-align: center;
}

.submit {
	width: 90%;
	height: 40px;
	background-color: #2C7CFF;
	color: #FFF;
	border: none;
	font-size: 13px;
	display: block;
	margin: 4px auto 16px auto;
	border-radius: 20px;
}

.grad-item {
  position: relative;
  overflow: hidden;
  height: 120px;
  padding-bottom: 16px;
}

.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
}

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

.grad-trigger {
  display: none;
}
.grad-trigger:checked + .grad-btn {
  display: none;
}
.grad-trigger:checked ~ .grad-item {
  height: auto;
}
.grad-trigger:checked ~ .grad-item::before {
  display: none;
}
.grad-trigger:checked ~ .grad-item_dating {
  height: auto;
}
.grad-trigger:checked ~ .grad-item_dating::before {
  display: none;
}

.grad-btn {
    z-index: 2;
    position: absolute;
    right: 0;
    left: 0;
    width: 140px;
    margin: auto;
    padding: 0.5em 0;
    border-radius: 2px;
    background: #444444;
    color: #fff;
    font-size: 13px;
    text-align: center;
    cursor: pointer;
    transition: .2s ease;
    box-shadow: 0 0 3px rgb(0 0 0 / 30%);
    margin-top: 100px;
    border-radius: 20px;
}

body {
	color: #333;
    font-size: 15px;
    background-color: #F3F3F3;
	margin: 0;
    padding: 0;
    line-height: 1.5;
}

h1 {
	margin-top: 0;
	font-weight: bold;
    font-size: 22px;
    color: #424242;
    padding: 0 16px;
    text-align: left;
    padding-top: 24px;
}

h1.post {
	text-align: left;
    font-size: 20px;
    background-color: #FFF;
	margin-bottom: 0px;
}

h1.tags {
	text-align: left;
}

h1.tags a {
	text-decoration: none;
	pointer-events: none;
	color: #7B7B7B;
}

h1.category {
	text-align: left;
}

h2 {
	margin: 0;
	text-decoration: underline;
	color: #1E90FF;
	counter-reset:li;
}

h2.matome {
	font-size: 14px;
	display: flex;
	height: 70px;
}

h2.matome_top {
	font-size: 16px;
	display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

h2 p {
	font-size: 24px !important;
	margin: 0;
}

h2.related {
	font-size: 25px;
	font-weight: bold;
	margin: 20px 0 10px 0;
	padding: 0 16px;
	background-color: #fff;
	border: none;
	text-align: center;
	color: #7B7B7B;
}

h2.article_h2 {
	font-size: 22px;
	color: #333;
	text-decoration: none;
	padding-left: 12px;
	border-left: 4px solid #FF3333;
	margin-bottom: 16px;
	margin-top: 24px;
}

.icon_slider_h2 {
	background-color: #5AB9C1;
	width: 100%;
	text-align: center;
	color: #FFF;
	font-weight: 600;
    padding: 2px 0;
}

h3 {
	font-size: 16.5px;
	font-weight: bold;
	color: #494949;
	text-align: left;
	margin-top: 56px;
	margin-bottom: 0;
	counter-reset:li;
}

h3.article_h3 {
	font-size: 18px;
	font-weight: bold;
	color: #333;
	text-align: left;
	margin-top: 36px;
	margin-bottom: 0;
}

h4 {
	position: relative;
	padding-left: 1.2em;
	margin: 4px 0 0 0px;
	font-size: 14px;
}

img.wp_img_related {
	width: 100%;
}

img.wp_img_icon {
width: 80px;
height: 80px;
float: left;
margin-right: 8px;
margin-bottom: 16px;
border-radius: 19px;
}

img.wp_img_icon_matome {
	width: 54px;
	height: 54px;
	float: left;
	margin-right: 8px;
	margin-bottom: 16px;
	border-radius: 12px;
}

img.wp_img_icon_matome_top {
    width: 74px;
    height: 74px;
    float: left;
    border-radius: 16px;
    margin: 2px 12px 16px 0;
}

img.wp_img_rec {
	width: 100%;
	margin-bottom: -8px;
	margin-top: 8px;
}

img.wp_img_main {
	width: 100%;
	margin-bottom: 8px;
	margin-top: 8px;
	max-width: 600px;
}

img.wp_img_inread {
	width: 100%;
	margin: 16px auto;
	max-width: 600px;
	display: block;
}

img.wp_img_inread_bottom {
	width: 100%;
	margin: 8px auto 16px auto;
	max-width: 600px;
	display: block;
}

img.wp_img_bottom {
	width: 100%;
	margin-bottom: 16px;
	max-width: 600px;
}

img.wp_img_ranking {
	width: 45px;
	float: left;
	padding-right: 8px;
}

img.header_sp {
	width: 177.46px;
    height: 32px;
    padding: 0;
    margin: -4px 0;
}

img.thumbnail-img {
	width: 100%;
	height: auto;
	padding: 24px 0;
}

a {
    position: relative;
    color: #4773BA;
    text-decoration: none;
    word-break: break-word; /* break-all だと不自然になるので変更 */
}

/* ボタンのスタイル */
.cta, .cta_1 {
    font-size: 20px;
    display: block;
    text-align: center;
    font-weight: bold;
    width: 100%; /* 幅を画面いっぱいに */
    max-width: none; /* 必要なら制限 */
    padding: 14px 0;
    text-decoration: none;
    position: relative;
    background: #007bff;
    border-radius: 40px;
    overflow: hidden;
    margin: 0 auto;
    box-shadow: 0 10px 16px rgba(0, 0, 0, 0.3);
    border-bottom: 2px solid #007bff;
    color: white;
    line-height: 1.4;
    cursor: pointer;
    opacity: 1;
}

/* 光るアニメーション（位置調整） */
.cta::before, .cta_1::before {
    content: '';
    position: absolute;
    top: -50%;  /* ボタンの上部からスタート */
    left: -120px; /* ボタンの外から開始 */
    width: 80px; /* 光の幅を少し広めに */
    height: 200%; /* 光がボタン全体をカバーするように */
    background: rgba(255, 255, 255, 0.6); /* 半透明の白 */
    transform: rotate(30deg);
    transition: left 0.6s ease-in-out;
}

/* ホバー時に光が右へ動く */
.cta:hover::before, .cta_1:hover::before {
    left: 120%;
    transition: left 0.6s ease-in-out;
}

/* クリック時の色変更 */
.cta:active, .cta_1:active {
    background: #0056b3;
    color: white;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
}

li {
	list-style: none;
}

/*
li a {
	letter-spacing: 1.0px;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
}
*/

div.header {
	text-align: center;
	width: 100%;
	background-color: #FFF;
}

div.header_container {
	display: inline-block;
	width: 100%;
	margin-bottom: -6px;
}

div.container {
	text-align: center;
	width: 93%;
	margin: 0 auto;
}

div.main {
	position: relative;
	display: inline-block;
	vertical-align: top;
	color: #444;
	width: 100%;
}

div.article_main {
	padding: 0 16px 16px 16px;
	background-color: #FFF;
}

p.description {
	color: #666 !important;
	margin-top: 12px;
	font-size: 13.5px !important;
}

ol.page-contents {
	padding: 16px;
	background-color: #F3F3F3;
	display: inline-block;
}

ol.page-contents a {
	color: #333;
	font-size: 14px;
	text-decoration: underline;
}

p.page-contents {
	margin: 0 0 8px 0;
	font-weight: 600;
}

li.page-contents {
	padding: 0;
}

div.content_related {
	margin-top: 28px;
	margin-bottom: 16px;
  font-size: 17px; 
  font-weight: 300;
  text-align: left;
}

div.content_related p {
    text-align: left;
    color: #333;
	margin-bottom: 30px;
}

div.content_post {
    font-size: 14px;
    text-align: left;
    line-height: 1.6;
    color: #262626;
}

div.content_post p {
    font-size: 14.5px;
    text-align: left;
    color: #262626;
    letter-spacing: 0.2px;
    line-height: 1.65;
}

div.grad-item p {
    line-height: 1.8;
}

div.grad-item_dating p {
    line-height: 1.8;
}

div.content_ranking_icon_slider {
	height: 60px;
	width: 72px;
}

a.content_ranking_icon_slider {
	width: 74px;
}

div.content_ranking_icon_slider {
	float: left;
}

div.circle_1 {
width: 30px;
height: 30px; 
background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
border-radius: 50%; 
margin: 0 auto;
text-align: center;
line-height: 30px;
color: #FFF;
margin-right: 10px;
margin-left: -10px;
margin-top: -10px;
z-index: 99;
position: absolute;
}

div.circle_2 {
    width: 26px;
    height: 26px; 
	background: linear-gradient(45deg, #757575 0%, #9E9E9E 45%, #E8E8E8 70%, #9E9E9E 85%, #757575 90% 100%);
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center;
    line-height: 26px;
    color: #FFF;
    margin-right: 10px;
    margin-left: -10px;
    margin-top: -10px;
    z-index: 99;
    position: absolute;
}

div.circle_3 {
    width: 26px;
    height: 26px; 
	background: linear-gradient(45deg, #815a2b 0%, #815a2b 45%, #CC6600 70%, #993300 85%, #815a2b 90% 100%);
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center;
    line-height: 26px;
    color: #FFF;
    margin-right: 10px;
    margin-left: -10px;
    margin-top: -10px;
    z-index: 99;
    position: absolute;
}

div.div.circle_4, div.circle_5, div.circle_6, div.circle_7, div.circle_8, div.circle_9, div.circle_10, div.circle_11, div.circle_12, div.circle_13, div.circle_14, div.circle_15, div.circle_16, div.circle_17, div.circle_18, div.circle_19, div.circle_20, div.circle_21, div.circle_22, div.circle_23, div.circle_24, div.circle_25, div.circle_26, div.circle_27, div.circle_28, div.circle_29, div.circle_30 {
    width: 26px;
    height: 26px; 
	background: #008CAF;
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center;
    line-height: 26px;
    color: #FFF;
    margin-right: 10px;
    margin-left: -10px;
    margin-top: -10px;
    z-index: 99;
    position: absolute;
}

div.app_info_matome {
	height: 90px;
}

div.download {
width: 50%;
min-width: 80px;
max-width: 300px;
white-space:nowrap;
text-align: center;
background-color: #007bff;
width: 72px;
float: right;
color: #FFF;
border-radius: 10px;
margin-top: 12px;
font-size: 25px;
padding: 6px 14px;
font-weight: bold;
letter-spacing: 1.0px;
overflow: hidden;
position: relative;
margin:0 0 0 auto;
}
/*
div.download {
	margin: 0 0 10px 0;
    display: block;
    font-weight: bold;
    background: #007bff;
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.3) 0%, transparent 50%, transparent 50%, rgba(0, 0, 0, 0.1) 100%);
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.3)), color-stop(50%, transparent), color-stop(50%, transparent), to(rgba(0, 0, 0, 0.1)));
    background-image: linear-gradient(rgba(255, 255, 255, 0.3) 0%, transparent 50%, transparent 50%, rgba(0, 0, 0, 0.1) 100%);
    -webkit-box-shadow: 0 2px 2px 0 rgba(255, 255, 255, 0.1) inset, 0 2px 10px 0 rgba(255, 255, 255, 0.2) inset, 0 -2px 2px 0 rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0 2px 2px 0 rgba(255, 255, 255, 0.1) inset, 0 2px 10px 0 rgba(255, 255, 255, 0.2) inset, 0 -2px 2px 0 rgba(0, 0, 0, 0.1) inset;
    border: 1px solid rgba(0, 0, 0, 0.2);
    height: 50px;
    line-height: 50px;
    border-radius: 6px;
    font-size: 16px;
    color: #fff !important;
    text-align: center;
    cursor: pointer;
}
*/
div.download_matome {
width: 50%;
min-width: 70px;
max-width: 300px;
white-space:nowrap;
text-align: center;
background-color: #FF3333;
width: 46px;
float: right;
color: #FFF;
border-radius: 20px;
margin-top: 12px;
font-size: 12px;
padding: 6px 14px;
font-weight: bold;
letter-spacing: 1.0px;
overflow: hidden;
position: relative;
top: -52px;
}

div.download_matome_top {
    text-align: center;
    background-color: #08ce5b;
    width: 40px;
    float: right;
    color: #FFF;
    border-radius: 20px;
    margin-top: 12px;
    font-size: 10px;
    padding: 4px 10px;
    font-weight: bold;
    letter-spacing: 1.0px;
    overflow: hidden;
}

div.download_matome_top_jump {
    text-align: center;
    background-color: #3399FF;
    width: 72px;
    float: right;
    color: #FFF;
    border-radius: 20px;
    font-size: 10px;
    padding: 4px 10px;
    font-weight: bold;
    letter-spacing: 1.0px;
    margin-top: -6px;
}

div.ranking_icon {
	float: left;
	margin: 0 8px 0 0;
	width: 50px;
	text-align: center;
}

div.ranking_icon_jump {
	float: left;
	margin: 16px 8px 0 0;
	width: 50px;
	text-align: center;
}

img.rank {
	width: 50px;
	height: 50px;
	margin: 0 0 -16px -10px;
}

div.summary {
	margin: -8px 0 0 128px;
}

div.summary p {
	font-size: 11px;
	color: #666;
	line-height: 1.2;
}

div.point {
	position: relative;
	border: solid 2px #5AB9C1;
	line-height: 1.6;
	padding: 0.4em 0.5em;
	margin-bottom: 16px;
	text-align: center;
	letter-spacing: 1.0px;
	border-bottom-left-radius: 12px;
	border-bottom-right-radius: 12px;
}

div.point_h3 {
	position: relative;
	font-size: 16px;
	font-weight: 600;
	color: #FFF;
	text-align: center;
	height: 32px;
	display: table;
	width: 100%;
	margin-top: 16px;
}

div.point_p {
	position: relative;
	color: #FFF;
	text-align: center;
    background-color: #5AB9C1;
	vertical-align: center;
    border: solid 2px #5AB9C1;
	border-top-left-radius: 12px;
	border-top-right-radius: 12px;
}

div.point_inline {
	text-align: left;
}

div.point_inline p {
	font-weight: 600;
	font-size: 14px;
}

div.app_img_rec {
	text-align: center;
	margin-bottom: -16px;
}

div.app_img_rec_bottom {
	text-align: center;
  	margin-bottom: 16px;
}

div.tag {
display: inline-block;
font-size: 10.5px;
margin-left: 2px;
margin-top: 8px;
margin-bottom: -2px;
color: #333;
background-color: #E6FFE9;
padding: 5px 6px;
}

div.star {
font-size: 16px;
color: #ffb800;
margin-left: 92px;
margin-top: 4px;
}

div.content_ranking {
text-align: center;
background-color: #FFF;
padding: 16px 16px 0 16px;
margin-bottom: 16px;
}

div.content_ranking_matome {
background-color: #FFF;
padding: 16px 16px 0 16px;
}

div.content_ranking_matome_2 {
	margin: 0 4px;
}

div.wrapper_game {
	margin-bottom: 12px;
	padding-bottom: 8px;
}

div.review {
  padding: 0.5em;
  margin-bottom: 16px;
  padding: 10px 42px 2px 42px;
}

div.review_game {
  padding: 0px 16px;
}

div.review_h {
  position: relative;
  background: #f1f8ff;
  padding: 4px 12px;
  border-left: solid 3em #5c9ee7;
  font-weight: bold;
  font-size: 15px;
  border-bottom: 1px solid #DDD;
}

div.review_h_game {
  position: relative;
  background: #f1f8ff;
  padding: 4px 12px;
  border-left: solid 0.5em #5c9ee7;
  font-weight: bold;
  font-size: 15px;
  border-bottom: 1px solid #DDD;
  margin-bottom: 12px;
}

div.sponsored {
	text-align: center;
	color: #999999;
	font-weight: 300;
	font-size: 12px;
	padding: 8px 0 16px 0;
}

div.footer {
	background-color: #FFF;
	text-align: center;
	width: 100%;
}

p.header {
	float: left;
	margin-top: 12px;
	margin-left: 32px;
}

p.point {
font-weight: bold;
margin: 4px 0;
line-height: 1.4 !important;
}

p.point:before {
  font-family: "Font Awesome 5 Free",'Quicksand','Avenir','Arial',sans-serif;
  font-weight: 900;
  content: '\f138\ ';
  font-size: 1.4em;
  left: 0.25em;
  top: 0.5em;
  color: #ff6a6a;
}

p.review {
	margin-top: 4px;
	font-size: 13px !important;
}

p.time {
	font-size: 13px;
	margin-top: 0px;
	text-align: left;
	padding-left: 16px;
}

p.time_post {
	font-size: 13px;
	text-align: right;
	margin-bottom: 0;
	padding:0 16px 8px 16px;
	background-color: #FFF;
	margin-top: 0;
}

p.cat_related {
	font-size: 13px;
	padding-right: 16px;
	margin-top: -34px;
	float: right;
}

p.cat_related a {
	text-decoration: none;
}

span.star {
	font-size: 16px;
	color: #ffb800;
}

span.red {
color: red;
font-weight: bold;
}

span.black {
	color: #333;
	font-size: 14px;
	margin-left: 4px;
}

span.underline {
  background: linear-gradient(transparent 70%, #FFFF00 70%);
  font-weight: bold;
  font-size: 16px;
}

.twitter-share-button {
	float: right;
	padding-right: 16px;
	margin-top: -41px;
}

footer {
	font-size: 12px;
	display: block;
	clear: both;
	background: #222;
	color: #fff;
	position: relative;
	text-align: center;
	padding: 16px 0;
	line-height: 24px;
}

footer a{
	text-decoration: underline;
}

/* Media Queries */

@-ms-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}

@media screen and (max-width: 743px) {

/* 小さい画面用の調整 */
div.container {
	max-width: 100%; /* 必要に応じて調整 */
	margin: 0 auto; /* 中央揃えが必要な場合 */
}

li.target_matome {
	margin: 0 -16px;
}

li.target_related_service {
	margin: 0 -16px;
}

li.target_noranks {
	margin: 0 -16px;
}

h1 {
	margin-top: 0;
	font-weight: bold;
	font-size: 18px;
	color: #424242;
	padding: 0 16px;
	text-align: left;
	padding-top: 8px;
	background-color: #FFF;
}

h1.post {
	text-align: left;
  font-size: 17px;
  padding-top: 12px;
  padding-bottom: 2px;
	background-color: #FFF;
	margin-bottom: 0px;
}

h2 {
	font-size: 17px;
}

h2 p {
	font-size: 20px !important;
	margin: 0;
}

h2.ranking_other {
	margin: 16px -16px 0 -16px;
}

h2.ranking_other_top {
	margin: 16px 0 -10px -16px;
}

li.ranking_other {
	margin: 0 -16px;
}

div.header_container {
	padding: 10px 0 10px 0;
	box-shadow: 0px 2px 6px #00000029;
    margin-bottom: 6px;
}

img.header {
	display: none;
}

p.header {
	display: none;
}

div.nav-menu {
	display: none;
}

div.recommend {
	margin: 0 -16px;
}

ul {
	padding-left: 0;
}
ne
li {
	padding: 16px 8px;
}

div.picks {
	padding: 30px 0 0 0;
}

div.wrap {
	margin-bottom: 10px;
	padding: 0 8px 30px 8px;
}

div.wrap_picks {
	margin-bottom: 30px;
	padding: 0 8px 30px 8px;
}

a.permalink {
	font-size: 14px;
}

p.time {
	font-size: 14px;
}

div.content_related {
	padding: 0 16px;
    line-height: 1.8;
}

div.content_post {
    font-size: 16px;
}

div.related {
	padding-bottom: 16px;
}

div.search_border {
    margin-left: 16px;
}

div.footer {

}

div.footer_about {
	padding: 8px 16px;
}

div.footer_portfolio {
	padding: 8px 16px;
}

div.footer_twitter {
	padding: 8px 16px;
}

div.footer_border {
    margin: 30px auto -20px 0;
}

img.wp_img_related {
	width: 90%;
	height: auto;
	margin-top: 16px;
	float: none;
	padding: 0;
	padding-left: 4px;
}

div.content_related {
	margin-top: 0;
}

ol.page-contents {
	padding: 16px;
	background-color: #F3F3F3;
	display: block;
}

}

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

.banner_thumbnail img {
	margin-top: -4px;
}

h2.ranking_other_top {
	padding-left: 0;
}

.banner_ranking_top {
	width: 100%;
	margin: 0;
}

.banner_ranking_top img {
	width: 100%;
}


.ext_ranking_top {
	width: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

ol.targets_top {
	margin: 0;
}

/*
TODO あとでけす
div.container {
	max-width: 540px;
	margin: 0 auto;
}
*/

div.top_list_ranking {
	background-color: #fff;
	border-bottom: 1px solid #CCCCCC;
	height: 60px;
	padding-bottom: 28px;
}

div.app_categories {
	margin: 0;
}

div.header {
	background-color: #FFF;
}

div.top_main {
	width: 800px;
	margin: 0 auto;
}

div.top_main_recommend {
	width: 100%;
	margin: 0 auto;
}

li.target {
	padding: 0;
	margin: 0;
	position: relative;
}

div.header_container {
	padding: 8px 0;
	margin-top: 4px;
}


img.header {
	height: 36px;
	float: left;
	margin-left: 30px;
}

img.header_sp {
	display: none;
}

div#nav-drawer {
	display: none;
}

ul {
	margin: 0 auto;
}

li {
	padding: 20px 32px;
	width: 100%;
}


h2.picks {
	padding: 0 16px;
}

div.picks {
	width: 100%;
	padding: 30px 0 30px 0;
}

div.wrap {
	margin: 0 1%;
}

div.wrap_picks {
	width: 28.7%;
	margin: 0 1%;
	vertical-align: top;
}

div.main {
	width: 84%;
}


div.content_related {
	padding: 0 20px;
    line-height: 2.0;
}

div.related {
	padding-bottom: 16px;
}

div.sub {
	width: 28.7%;
	margin-left: 22px;
}

div.footer {
	float: left;
}

div.footer_about {
	width: 28.7%;
	padding: 30px 0 30px 0;
	display: inline-block;
	vertical-align: top;
}

div.footer_portfolio {
	width: 28.7%;
	padding: 30px 0 30px 30px;
	display: inline-block;
	vertical-align: top;
}

div.footer_twitter {
	width: 28.7%;
	padding: 30px 0 30px 30px;
	display: inline-block;
	vertical-align: top;
}

div.footer_border {
    margin-top: 30px;
}

div.footer_img_description {
    padding-right: 20px;
}
}

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

div.container {
	max-width: 540px;
	margin: 0 auto;
}

div.header {
	padding-left: 0;
	text-align: center;
}

div.header_container {
	width: 1140px;
}


img.header {
	padding-left: 0;
	margin-left: 0;
}

img.header_sp {
	display: none;
}

div.nav-menu {
	padding-left: 0;
	text-align: center;
}

div.nav-menu_container {
	width: 1140px;
}

div.img_description {
    font-size: 13px;
}

div.footer_img_description {
    font-size: 14px;
}

div.wrap_picks {
	width: 370px;
	margin: 0 12px;
}

div.main {
	width: 540px;
}

div.sub {
	width: 370px;
	margin-left: 24px;
}


img.attachment-thumbnail, size-thumbnail, wp-post-image {
	width: 100%;
	height: auto;
}

div.top_list {
	margin: 16px 16px;
	background-color: #fff;
	width: 800px;
	height: auto;
	margin: 0 auto;
}

li.target {
	width: 540px;
}

div.app_img_rec {
	text-align: center;
	margin-bottom: -16px;
}

p.ranking {
	width: 300px;
}

div.footer_about {
	width: 360px;
}

div.footer_portfolio {
	width: 360px;
}

div.footer_twitter {
	width: 360px;
}
}

.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.alignright{
	float: right;
	margin-left: 1.5em;
}
.alignleft{
	float: left;
	margin-right: 1.5em;
}
@media (max-width: 480px){
	.alignright{
		float: none;
		margin-left: 0;
	}
	.alignleft{
		float: none;
		margin-right: 0;
	}
}